netfilter.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Patrick McHardy <kaber@trash.net>
To: Ben Pfountz <netprince@vt.edu>
Cc: netfilter@vger.kernel.org
Subject: Re: SFQ flow classifier, works for imq0, not for eth1
Date: Mon, 15 Nov 2010 17:21:56 +0100	[thread overview]
Message-ID: <4CE15E24.9020409@trash.net> (raw)
In-Reply-To: <4CDD55DE.50003@vt.edu>

On 12.11.2010 15:57, Ben Pfountz wrote:
> Hey Everyone,
> 
> Any direction with this problem would be greatly appreciated.  For some
> reason when I add a SFQ flow classifier using tc filter, the sfq qdisc
> stops forwarding packets.  (strangely though, a few packets are
> forwarded before things stop working)
> 
> I am working with an openwrt based router, trying to add SFQ flow
> classifier support to openwrt's qos-scripts.  I have simplified the TC
> commands down to these to try to find the problem.
> 
> tc qdisc add dev eth1 root handle 1: htb default 7
> tc class add dev eth1 parent 1: classid 1:7 htb rate 500mbit ceil
> 1000mbit prio 3
> tc qdisc add dev eth1 parent 1:7 handle 10: sfq perturb 10
> tc filter add dev eth1 protocol ip parent 10: handle 2 flow hash keys
> src,dst divisor 1024
> 
> 
> 
> Without the last line, packets flow normally as shown by
> 
> # tc -s -d qdisc show dev eth1
> qdisc htb 1: root refcnt 2 r2q 10 default 7 direct_packets_stat 0 ver 3.17
>  Sent 856 bytes 11 pkt (dropped 0, overlimits 0 requeues 0)
>  rate 0bit 0pps backlog 0b 0p requeues 0
> qdisc sfq 10: parent 1:7 limit 127p quantum 1514b flows 127/1024 perturb
> 10sec
>  Sent 856 bytes 11 pkt (dropped 0, overlimits 0 requeues 0)
>  rate 0bit 0pps backlog 0b 0p requeues 0
> 
> 
> With the last line, I see this
> 
> tc -s -d qdisc show dev eth1
> qdisc htb 1: root refcnt 2 r2q 10 default 7 direct_packets_stat 0 ver 3.17
>  Sent 5019 bytes 53 pkt (dropped 40, overlimits 0 requeues 0)
>  rate 0bit 0pps backlog 0b 0p requeues 0
> qdisc sfq 10: parent 1:7 limit 127p quantum 1514b flows 127/1024 perturb
> 10sec
>  Sent 5019 bytes 53 pkt (dropped 40, overlimits 0 requeues 0)
>  rate 0bit 0pps backlog 0b 0p requeues 0
> 
> 
> I have tried every combination of hash keys and divisor I can think of,
> but the problem remains.
> 
> The system is linux 2.6.32.25, iproute 2.6.35, and cls_flow is loaded.
> 
> Does anyone have any suggestions?

IMQ hooks into the netfilter hooks and thus receives IP packets only.
On eth0 you have to take care of classifying ARP packets as well,
otherwise packet flow will stop eventually.

  reply	other threads:[~2010-11-15 16:21 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-12 14:57 SFQ flow classifier, works for imq0, not for eth1 Ben Pfountz
2010-11-15 16:21 ` Patrick McHardy [this message]
2010-11-16 15:31   ` Ben Pfountz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4CE15E24.9020409@trash.net \
    --to=kaber@trash.net \
    --cc=netfilter@vger.kernel.org \
    --cc=netprince@vt.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).