All of lore.kernel.org
 help / color / mirror / Atom feed
* [LARTC] newbie: TC[NG] with (256kbit/s down and 768kbit/s up) on a router
@ 2004-04-24  1:23 trapni
  2004-04-24  5:27 ` Jason Boxman
                   ` (8 more replies)
  0 siblings, 9 replies; 10+ messages in thread
From: trapni @ 2004-04-24  1:23 UTC (permalink / raw)
  To: lartc

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\x1536kbit/s and UP%6kbit/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%6kbit/s
  - and PER_CLIENT_UPBkbit/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@mailman.ds9a.nl
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2004-05-05 12:33 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-04-24  1:23 [LARTC] newbie: TC[NG] with (256kbit/s down and 768kbit/s up) on a router trapni
2004-04-24  5:27 ` Jason Boxman
2004-04-25  7:06 ` [LARTC] newbie: TC[NG] with (256kbit/s down and 768kbit/s up) Andy Furniss
2004-04-25 17:43 ` [LARTC] newbie: TC[NG] with (256kbit/s down and 768kbit/s up) on a router Christian Parpart
2004-04-26  8:01 ` [LARTC] newbie: TC[NG] with (256kbit/s down and 768kbit/s up) Andy Furniss
2004-04-28  8:42 ` [LARTC] newbie: TC[NG] with (256kbit/s down and 768kbit/s up) on a router Christian Parpart
2004-05-02 23:44 ` Andreas Klauer
2004-05-05  8:34 ` [LARTC] newbie: TC[NG] with (256kbit/s down and 768kbit/s up) Andy Furniss
2004-05-05 10:39 ` [LARTC] newbie: TC[NG] with (256kbit/s down and 768kbit/s up) on a router Andreas Klauer
2004-05-05 12:33 ` [LARTC] newbie: TC[NG] with (256kbit/s down and 768kbit/s up) Andy Furniss

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.