Re: tc filter matches ip fileds inside pppoe frames

Linux Advanced Routing and Traffic Control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Ming-Ching Tiew
To: lartc@xxxxxxxxxxxxxxx
Sent: Monday, February 05, 2007 9:28 AM
Subject: tc filter matches ip fileds inside pppoe frames

> I have a requirement which I guess it is not too unusually, however I
haven't
> quite figured out how to do it and couldn't find any examples which handle
that.
>
> I have made myself a Linux-based bridge, eth0 bridged with
> eth1 to form br0.
>
> In this bridge, I run 'tc' script to handle QoS.
>
> So far nothing unusual.
>
> However, what's different is that this bridge is sitted in between a pppoe
client
> and pppoe server, ie pppoe frames are bridge between the Linux bridge, and
> I am interested to perform QoS on the pppoe frames, based on the ip tos
setting
> of the ppp packets ( encapsulated inside the pppoe frames ).
>
> For example, normal tc script :-
>
> tc filter add dev ppp0 parent 1:0 prio 10 u32 \
>     match ip tos 0x10 0xff \
>     flowid 1:4
>
> This will work on a ppp0 device because the ppp0 has ip packets flowing
through
> it. Now in my bridge, there is no such device, I only have access to eth0
or eth1,
> how could I perform the same thing on devices such as eth0 or eth1, but
matching
> the ip TOS setting inside the pppoe frame ?

Perhaps this will be one step closer to matching ip TOS inside the PPPOE
frame :-

 # tc filter add dev vlan0 parent 1:0 protocol 0x8864 prio 10 u32 \
     match u32 0x00100000 0x00ff0000 at  .... \
     flowid 1:4

Protocol 0x8864 refers to PPP_SES.

But the question where is the location of the TOS filed in the ip header
encapsulated inside the PPP frame ? What if the IP header is compressed
inside the ppp frame ?

Cheers



_______________________________________________
LARTC mailing list
LARTC@xxxxxxxxxxxxxxx
http://mailman.ds9a.nl/cgi-bin/mailman/listinfo/lartc

[Index of Archives]     [LARTC Home Page]     [Netfilter]     [Netfilter Development]     [Network Development]     [Bugtraq]     [GCC Help]     [Yosemite News]     [Linux Kernel]     [Fedora Users]
  Powered by Linux