* Re: [Fwd: Re: [LARTC] Simple HTB setup with tcng]
@ 2004-05-05 11:54 Clement MOREAU
2004-05-05 16:27 ` lartc
0 siblings, 1 reply; 2+ messages in thread
From: Clement MOREAU @ 2004-05-05 11:54 UTC (permalink / raw)
To: lartc
Thank you for your help.
It generates this script :
tc qdisc add dev eth0 handle 1:0 root htb default 2
tc class add dev eth0 parent 1:0 classid 1:1 htb rate 75000bps ceil \
75000bps
tc class add dev eth0 parent 1:0 classid 1:2 htb rate 125000bps
tc filter add dev eth0 parent 1:0 protocol all prio 1 u32 match u32 \
0xa000001 0xffffffff at 12 classid 1:1
But I thought it was necessary to have a "root" htb class on the top of
the hierarchy to get it working as expected. Is that true ?
Thanks
Le mer 05/05/2004 à 13:41, lartc@manchotnetworks.net a écrit :
> ooops,
>
> j'ai oblier l'autre ligne:
> dev eth0 {
> htb () {
> class ( rate 600kbps, ceil 600kbps ) if ip_src = 10.0.0.1;
> class ( rate 1000kbps ) if 1;
> }
> }
>
>
> On Wed, 2004-05-05 at 10:15, Clement MOREAU wrote:
> > Thank you for your help.
> >
> > this setup is creating an additionnal qdisc (dsmark). For performance
> > reasons, I would prefer using filters directly attached to htb qdisc. I
> > think it is possible, at least it seems to be possible with tc (not
> > tcng).
> > It seems to me that tcc is doing something wrong with htb and indexes,
> > do I miss something ?
> >
> > Thank you.
> >
> > Le mer 05/05/2004 à 09:59, lartc@manchotnetworks.net a écrit :
> > > salut clemment
> > >
> > > try adapting the following to your needs ... it's been working for me.
> > > roughly similar to wondershaper excepting that it is in tcng:
> > >
> > > i have a ppp interface on an analog modem so in my firewall i mark
> > > packets coming in from this device as following:
> > >
> > > iptables --append PREROUTING --table mangle --in-interface ppp0 \
> > > --jump MARK --set-mark 0x7
> > >
> > >
> > > cheers
> > >
> > > charles
> > >
> > >
> > > /*
> > > * tc next generation script by
> > > * charles shick
> > > */
> > >
> > > #define LAN "eth0"
> > > #define LAN_INGRESS 700000
> > > #define LAN_EGRESS 700000
> > >
> > > dev LAN {
> > >
> > > # ingress {
> > > # $policer = SLB( cir LAN_INGRESS kbps );
> > > # class ( <> ) if SLB_ok( $policer );
> > > # drop if 1;
> > > # }
> > >
> > > egress {
> > > class ( <$ppp> ) if meta_nfmark = 0x7;
> > >
> > > class ( <$high> ) if ip_proto = IPPROTO_ICMP ||
> > > ip_tos = 0x10 ||
> > > tcp_sport = 80 ||
> > > tcp_sport = 110 ||
> > > udp_sport = 53 ||
> > > tcp_ack;
> > >
> > > class ( <$medium> ) if tcp_dport = 25;
> > >
> > > class ( <$low> ) if 1;
> > >
> > > htb () { class ( rate LAN_EGRESS kbps ) {
> > >
> > > $ppp = class ( prio 1, rate 56 kbps )
> > > { sfq ( perturb 10 sec ); };
> > >
> > > $high = class ( prio 1, rate ( 0.5 * LAN_EGRESS )kbps )
> > > { sfq ( perturb 10 sec ); };
> > >
> > > $medium = class (prio 2, rate ( 0.3 * LAN_EGRESS )kbps )
> > > { sfq ( perturb 10 sec ); };
> > >
> > > $low = class (prio 3, rate ( 0.2 * LAN_EGRESS )kbps )
> > > { sfq ( perturb 10 sec ); };
> > >
> > > }
> > > }
> > > }
> > > }
> > >
> > >
> > > On Wed, 2004-05-05 at 08:46, Clement MOREAU wrote:
> > > > Hello all,
> > > >
> > > > I am trying to set up a simple htb based system, where packets with
> > > > source ip 10.0.0.1 should have their own class.
> > > > I plan to use tcng to set it up easier.
> > > >
> > > > Is there something wrong in my tcng file ?
> > > >
> > > > ~/tcng$ cat htb
> > > > /*
> > > > */
> > > >
> > > > #include "fields.tc"
> > > > #include "ports.tc"
> > > >
> > > > dev eth0 {
> > > > htb ( ) {
> > > > class ( rate 600kbps, ceil 600kbps )
> > > > {
> > > > class () if ip_src = 10.0.0.1 ;
> > > > class (default) ;
> > > > }
> > > > }
> > > > }
> > > >
> > > >
> > > > When I compile it, I get :
> > > >
> > > > ~/tcng$ tcc htb
> > > >
> > > > # ================ Device eth0
> > > >
> > > > tc qdisc add dev eth0 handle 1:0 root htb default 3
> > > > tc class add dev eth0 parent 1:0 classid 1:1 htb rate 75000bps ceil
> > > > 75000bps
> > > > tc class add dev eth0 parent 1:1 classid 1:2 htb rate 75000bps ceil
> > > > 75000bps
> > > > tc class add dev eth0 parent 1:1 classid 1:3 htb rate 75000bps ceil
> > > > 75000bps
> > > > tc filter add dev eth0 parent 1:1 protocol all prio 1 u32 match u32
> > > > 0xa000001 0xffffffff at 12 classid 1:2
> > > >
> > > >
> > > > which is not working as expected.
> > > > Packets never get matched. From what I understand of tc (not too much),
> > > > the filter should have been :
> > > > tc filter add dev eth0 parent 1:0 protocol all prio 1 u32 match u32
> > > > 0xa000001 0xffffffff at 12 classid 1:2
> > > >
> > > > (I replaced parent 1:1 by parent 1:0).
> > > >
> > > > I tried this setup and it works as expected (at least : packets from the
> > > > server gets matched, other don't. I have used tc -s class show dev eth0
> > > > to see it).
> > > >
> > > > Do I miss something ?
> > > >
> > > > Thank you.
> > >
> > > _______________________________________________
> > > LARTC mailing list / LARTC@mailman.ds9a.nl
> > > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
--
Clement MOREAU <clement.moreau@inventel.fr>
Inventel -- http://www.inventel.fr
****************************************************************************
Ce message et ses pieces jointes contiennent des informations
confidentielles.
Il est etabli a l'intention exclusive de ses destinataires.
Si vous n'en etes pas destinataire, merci de le detruire et d'en avertir
immediatement l'expediteur.
L'integrite de ce message ne pouvant etre garantie sur Internet,
Inventel
ne peut etre tenue responsable de son contenu.
This e-mail and its attachments are confidential and intended solely for
the
addressees.
If you are not the intended recipient of this message, then please
delete it
and notify the sender.
Since the integrity of this message cannot be guaranteed on the
Internet, Inventel cannot therefore be considered responsible for
its content.
****************************************************************************
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [Fwd: Re: [LARTC] Simple HTB setup with tcng]
2004-05-05 11:54 [Fwd: Re: [LARTC] Simple HTB setup with tcng] Clement MOREAU
@ 2004-05-05 16:27 ` lartc
0 siblings, 0 replies; 2+ messages in thread
From: lartc @ 2004-05-05 16:27 UTC (permalink / raw)
To: lartc
hi clemment,
On Wed, 2004-05-05 at 13:54, Clement MOREAU wrote:
> Thank you for your help.
>
> It generates this script :
>
>
>
> tc qdisc add dev eth0 handle 1:0 root htb default 2
-----------------------------------^^^^-^^^
> tc class add dev eth0 parent 1:0 classid 1:1 htb rate 75000bps ceil \
> 75000bps
> tc class add dev eth0 parent 1:0 classid 1:2 htb rate 125000bps
> tc filter add dev eth0 parent 1:0 protocol all prio 1 u32 match u32 \
> 0xa000001 0xffffffff at 12 classid 1:1
>
>
> But I thought it was necessary to have a "root" htb class on the top of
> the hierarchy to get it working as expected. Is that true ?
yes and it does -- all packets matching the u32 filter (in this case 10.0.0.1) will go to the 1:1 class and be limited to the 75 kilobytes per second.
cheers
charles
_______________________________________________
LARTC mailing list / LARTC@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2004-05-05 16:27 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-05 11:54 [Fwd: Re: [LARTC] Simple HTB setup with tcng] Clement MOREAU
2004-05-05 16:27 ` lartc
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.