Hi all, this is really not really very easy to understand, or, to get in. Well, I've the following configuration on the router box: LAN - interface: eth0 - network: 192.168.2.5/24 - bandwidth: 100Mbit/s INET interface - interface: ppp0 - network: .dynamic.ip./0 - bandwidth: DOWN=1536kbit/s and UP=256kbit/s the LAN interface is to serve 6 other clients with internet and local services. My goal NOW was, or is, to garrantie each client with a fair amount of bandwith for both, up and down. That is, each client inside the LAN should get garrantied - PER_CLIENT_DOWN=256kbit/s - and PER_CLIENT_UP=42kbit/s Each unused bandwith may be shared between them. The LAN clients have IP pool: 192.168.2.2-192.168.2.4, and 192.168.2.6-192.168.2.8 But how exactly do I now express my wish in TCNG syntax? Some kind of pseudo code like below... device ppp0 { input ( 1536kbit/s ) { // upstream class ( 256kbit/s; may borrow ) { catch ip 192.168.2.2; } class ( 256kbit/s; may borrow ) { catch ip 192.168.2.3; } class ( 256kbit/s; may borrow ) { catch ip 192.168.2.4; } class ( 256kbit/s; may borrow ) { catch ip 192.168.2.6; } class ( 256kbit/s; may borrow ) { catch ip 192.168.2.7; } class ( 256kbit/s; may borrow ) { catch ip 192.168.2.8; } } output ( 256kbit/s ) { // downstream class ( 42kbit/s; may borrow ) { catch ip 192.168.2.2; } class ( 42kbit/s; may borrow ) { catch ip 192.168.2.3; } class ( 42kbit/s; may borrow ) { catch ip 192.168.2.4; } class ( 42kbit/s; may borrow ) { catch ip 192.168.2.6; } class ( 42kbit/s; may borrow ) { catch ip 192.168.2.7; } class ( 42kbit/s; may borrow ) { catch ip 192.168.2.8; } } } The "device" object is meant to represent the device's configuration specific data. "input" as child of "device" represents the input bandwidth configuration - same goes for "output". class is just like tc/tcng, I guess. "catch ip IP" just tells, what IP packets should be queued in this class. The queuing discipline to be used is rarely unimportant, maybe htb, cbq, or tbf, what ever(?) best fits right here. Sorry, this is *my* brain-dead-pseudo-code to explain, what I want, with a syntax associated to the tcc(tcng) examples I have found on the net. Could someone *now* show me, how my goal should look in tcng syntax? Many thanks, Christian Parpart. _______________________________________________ LARTC mailing list / LARTC@xxxxxxxxxxxxxxx http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/