Dear All, I have some doubt. 1) Is dynamic bandwidth allocation using tc is possible? 2) If yes, the how to implement it. 3) Is it possible to implement it with cbq.init script Thanks in advance regards shekhar _______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
On Thursday 07 November 2002 14:09, Chandrashekhar Rane wrote:> Dear All, > > I have some doubt. > > 1) Is dynamic bandwidth allocation using tc is possible? > 2) If yes, the how to implement it. > 3) Is it possible to implement it with cbq.init script > > > Thanks in advanceWhat do you mean with "dynamic bandwidth allocation"?? Can you give an example. Stef -- stef.coene@docum.org "Using Linux as bandwidth manager" http://www.docum.org/ #lartc @ irc.oftc.net _______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
Dear Mohan, Thanks for the reply. No, not time based. Consider a example, say i have a pipe of 10kbps. I am dividing this pipe in three classes with bandiwdth of 1kbps, 1.5kbps and 7.5kbps respectively. I am trying to implement this using CBQ with fw filter. 1kbps pipe i am allocating to fixed ip say 192.168.2.12 and 1.5kbps pipe i am allocating to another ip say 192.168.2.22 and remaining 7.5kbps pipe i am allocating to 192.168.2.0/24 network. If the person sitting on 192.168.2.12 or 192.168.2.22 is absent for the day, then the bandwidth allocated to them should be release for the other user. How to achieve this objective. Waiting for a kind response from your side. regards shekhar On Fri, 2002-11-08 at 08:09, S Mohan wrote:> Yes. I guess by Dynamic you mean time based. It is already available in > cbq.init. If you want it controlled by threshold values of traffic, > cbq.init does not have it. I think I saw something in > www.apconnectors.net on this line in this same list. > > Mohan > > -----Original Message----- > From: lartc-admin@mailman.ds9a.nl [mailto:lartc-admin@mailman.ds9a.nl] > On Behalf Of Chandrashekhar Rane > Sent: Thursday, November 07, 2002 6:40 PM > To: lartc@mailman.ds9a.nl > Subject: [LARTC] Dynamic bandwidth allocation ? > > > Dear All, > > I have some doubt. > > 1) Is dynamic bandwidth allocation using tc is possible? > 2) If yes, the how to implement it. > 3) Is it possible to implement it with cbq.init script > > > Thanks in advance > > regards > shekhar > > > > > _______________________________________________ > LARTC mailing list / LARTC@mailman.ds9a.nl > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/ >_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
Dear Michael, Thanks for the reply. By dynamic allocation of bandwidth i mean to say, it should get allocated according to the situation to the individual classes. Consider a example, say i have a pipe of 10kbps. I am dividing this pipe in three classes with bandwidth of 1kbps, 1.5kbps and 7.5kbps respectively. I am trying to implement this using CBQ with fw filter. 1kbps pipe i am allocating to fixed ip say 192.168.2.12 and 1.5kbps pipe i am allocating to another ip say 192.168.2.22 and remaining 7.5kbps pipe i am allocating to 192.168.2.0/24 network. If the person sitting on 192.168.2.12 or 192.168.2.22 is absent for the day, then the bandwidth allocated to them should be release for the other user. How to achieve this objective. Waiting for a kind response from your side. regards shekhar On Fri, 2002-11-08 at 00:58, Michael T. Babcock wrote:> Stef Coene wrote: > > >What do you mean with "dynamic bandwidth allocation"?? Can you give an > >example. > > > > > > I have a feeling one could implement what he''s requesting by using > priorities with unnecessarily high bandwidth values ... > > -- > Michael T. Babcock > C.T.O., FibreSpeed Ltd. > http://www.fibrespeed.net/~mbabcock > >_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
Dear Stef, Thanks for the reply. By dynamic allocation of bandwidth i mean to say, it should get allocated according to the situation to the individual classes. Consider a example, say i have a pipe of 10kbps. I am dividing this pipe in three classes with bandwidth of 1kbps, 1.5kbps and 7.5kbps respectively. I am trying to implement this using CBQ with fw filter. 1kbps pipe i am allocating to fixed ip say 192.168.2.12 and 1.5kbps pipe i am allocating to another ip say 192.168.2.22 and remaining 7.5kbps pipe i am allocating to 192.168.2.0/24 network. If the person sitting on 192.168.2.12 or 192.168.2.22 is absent for the day, then the bandwidth allocated to them should be release for the other user. How to achieve this objective. Waiting for a kind response from your side. regards shekhar On Fri, 2002-11-08 at 00:51, Stef Coene wrote:> On Thursday 07 November 2002 14:09, Chandrashekhar Rane wrote: > > Dear All, > > > > I have some doubt. > > > > 1) Is dynamic bandwidth allocation using tc is possible? > > 2) If yes, the how to implement it. > > 3) Is it possible to implement it with cbq.init script > > > > > > Thanks in advance > What do you mean with "dynamic bandwidth allocation"?? Can you give an > example. > > Stef > > -- > > stef.coene@docum.org > "Using Linux as bandwidth manager" > http://www.docum.org/ > #lartc @ irc.oftc.net >_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
Dear Mohan, Thanks for the reply. If you send the URL for Stef Coene site, then it will be helpful for me. One more thing. If i used dialup modem for internet connection, then i might not gate the same amount of bandwidth through out. How to overcome this situation. regards shekhar On Fri, 2002-11-08 at 11:57, S Mohan wrote:> You have to fix a ceiling for these classes to the max bandwidth and use sfq > for the children leaves. Thus the spare bandwidth of the parent unused by > nay child is allocated evenly to the other children. Stef Coene''s site has > examples of this > Mohan > > -----Original Message----- > From: lartc-admin@mailman.ds9a.nl [mailto:lartc-admin@mailman.ds9a.nl]On > Behalf Of Chandrashekhar Rane > Sent: 08 November 2002 09:42 > To: lartc@mailman.ds9a.nl > Subject: RE: [LARTC] Dynamic bandwidth allocation ? > > > Dear Mohan, > > Thanks for the reply. > > No, not time based. > Consider a example, say i have a pipe of 10kbps. I am dividing this > pipe in three classes with bandiwdth of 1kbps, 1.5kbps and 7.5kbps > respectively. > > I am trying to implement this using CBQ with fw filter. > > 1kbps pipe i am allocating to fixed ip say 192.168.2.12 and 1.5kbps pipe > i am allocating to another ip say 192.168.2.22 and remaining 7.5kbps > pipe i am allocating to 192.168.2.0/24 network. > > If the person sitting on 192.168.2.12 or 192.168.2.22 is absent for the > day, then the bandwidth allocated to them should be release for the > other user. > > How to achieve this objective. > > Waiting for a kind response from your side. > > regards > shekhar > > > On Fri, 2002-11-08 at 08:09, S Mohan wrote: > > Yes. I guess by Dynamic you mean time based. It is already available in > > cbq.init. If you want it controlled by threshold values of traffic, > > cbq.init does not have it. I think I saw something in > > www.apconnectors.net on this line in this same list. > > > > Mohan > > > > -----Original Message----- > > From: lartc-admin@mailman.ds9a.nl [mailto:lartc-admin@mailman.ds9a.nl] > > On Behalf Of Chandrashekhar Rane > > Sent: Thursday, November 07, 2002 6:40 PM > > To: lartc@mailman.ds9a.nl > > Subject: [LARTC] Dynamic bandwidth allocation ? > > > > > > Dear All, > > > > I have some doubt. > > > > 1) Is dynamic bandwidth allocation using tc is possible? > > 2) If yes, the how to implement it. > > 3) Is it possible to implement it with cbq.init script > > > > > > Thanks in advance > > > > regards > > shekhar > > > > > > > > > > _______________________________________________ > > LARTC mailing list / LARTC@mailman.ds9a.nl > > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/ > > > > > _______________________________________________ > LARTC mailing list / LARTC@mailman.ds9a.nl > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/ >_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
What do you mean "smart htb/cbq setup"? Please, can you detail with some examples? Thanks, R. --- Stef Coene <stef.coene@docum.org> wrote:> On Thursday 07 November 2002 20:34, SERBAN Rares > wrote: > > Hi Stef, > > > > Try to read this paper. > I tried but 15p was too much :) > It can be done. But it requires some external > scripting to implement it. But > I''m conviced about the benefits. Like Michael said, > I think a smart htb/cbq > setup can do the same. > > Stef > > -- > > stef.coene@docum.org > "Using Linux as bandwidth manager" > http://www.docum.org/ > #lartc @ irc.oftc.net >__________________________________________________ Do you Yahoo!? U2 on LAUNCH - Exclusive greatest hits videos http://launch.yahoo.com/u2 _______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
On Friday 08 November 2002 05:17, Chandrashekhar Rane wrote:> Dear Stef, > > Thanks for the reply. > > By dynamic allocation of bandwidth i mean to say, it should get > allocated according to the situation to the individual classes. > > Consider a example, say i have a pipe of 10kbps. I am dividing this > pipe in three classes with bandwidth of 1kbps, 1.5kbps and 7.5kbps > respectively. > > I am trying to implement this using CBQ with fw filter. > > 1kbps pipe i am allocating to fixed ip say 192.168.2.12 and 1.5kbps pipe > i am allocating to another ip say 192.168.2.22 and remaining 7.5kbps > pipe i am allocating to 192.168.2.0/24 network. > > If the person sitting on 192.168.2.12 or 192.168.2.22 is absent for the > day, then the bandwidth allocated to them should be release for the > other user. > > How to achieve this objective. > > Waiting for a kind response from your side.Very easy to do so. bounded class of 10kbps 3 child not-bounded classes : 1kbps 1.5 kbps 7.5 kbps 3 fiters : filter 1 pust all 192.168.2.12 in 1 kbps class filter 2 pust all 192.168.2.22 in 1.5 kbps class filter 3 pust all 192.168.2.0/24 in 7.5 kbps class And you are done. If 1kbps class is not used, the bandwidth is distributed to the other class. If you want this bandwidth allocated to the 1.5 kbps you can do this : bounded class of 10kbps 2 child not-bounded classes : 2.5 kbps 2 child not bounded classes : 1 kbps 1.5 kbps 7.5 kbps Stef -- stef.coene@docum.org "Using Linux as bandwidth manager" http://www.docum.org/ #lartc @ irc.oftc.net _______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
Dear Stef, Thanks for the reply. But i want to implement the same for the dialup modem. In which case i don''t have the fixed pipe of 10kbps. Because some times dialup modem gives me a bandwidth of 8kbps to 1kbps. In this situation of varing bandwidth how i implement the same. Waiting for your reply. regards shekhar On Fri, 2002-11-08 at 14:17, Stef Coene wrote:> On Friday 08 November 2002 05:17, Chandrashekhar Rane wrote: > > Dear Stef, > > > > Thanks for the reply. > > > > By dynamic allocation of bandwidth i mean to say, it should get > > allocated according to the situation to the individual classes. > > > > Consider a example, say i have a pipe of 10kbps. I am dividing this > > pipe in three classes with bandwidth of 1kbps, 1.5kbps and 7.5kbps > > respectively. > > > > I am trying to implement this using CBQ with fw filter. > > > > 1kbps pipe i am allocating to fixed ip say 192.168.2.12 and 1.5kbps pipe > > i am allocating to another ip say 192.168.2.22 and remaining 7.5kbps > > pipe i am allocating to 192.168.2.0/24 network. > > > > If the person sitting on 192.168.2.12 or 192.168.2.22 is absent for the > > day, then the bandwidth allocated to them should be release for the > > other user. > > > > How to achieve this objective. > > > > Waiting for a kind response from your side. > Very easy to do so. > > bounded class of 10kbps > 3 child not-bounded classes : > 1kbps > 1.5 kbps > 7.5 kbps > > 3 fiters : > filter 1 pust all 192.168.2.12 in 1 kbps class > filter 2 pust all 192.168.2.22 in 1.5 kbps class > filter 3 pust all 192.168.2.0/24 in 7.5 kbps class > > And you are done. > If 1kbps class is not used, the bandwidth is distributed to the other class. > If you want this bandwidth allocated to the 1.5 kbps you can do this : > > bounded class of 10kbps > 2 child not-bounded classes : > 2.5 kbps > 2 child not bounded classes : > 1 kbps > 1.5 kbps > 7.5 kbps > > Stef > > > -- > > stef.coene@docum.org > "Using Linux as bandwidth manager" > http://www.docum.org/ > #lartc @ irc.oftc.net >_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
Dear Serban, Following is my setup. I had a gateway machine with dialup modem and ethernet card. I am connected to local LAN using ethernet card. Now i want to implement a CBQ + fw filter base bandwidth management system. The problem i faced is 1) I had a modem which is connected with my ISP for browsing, downloading etc.., 2) The modem doesn''t give me fixed bandwidth. Now how i assume a fixed pipe, or how i play with the bandwidth available at particular moment so every user get a fair chance. Suppose i want to create a three class. say class A, class B, class C. Class A is for high priority traffic. class B is for low priority traffic. class C is for Some specific ports. Then how i implement this with dynamic bandwidth which i rev, using modem. Thanks in advance. shekhar On Thu, 2002-11-07 at 19:01, SERBAN Rares wrote:> Hi Shekhar, > > Please read the paper in attachment. Two things you > can do with the CBQ: to guarantee bandwidth and > sharing the excess bandwidth. May be, you need a > dynamic allocation for free bandwidth and you can use > CBQ link-sharing propreties or, may be, you need a > dynamic allocation of the guaranteed bandwidth. > Yes, you can do with tc dynamic allocation of > bandwidth! > No, it is not possible to implement with cbq.ini. > My, advise is to understand the CBQ implementation. > > Best regards, > > R. > --- Chandrashekhar Rane <chandrashekhar@netcore.co.in> > wrote: > > Dear All, > > > > I have some doubt. > > > > 1) Is dynamic bandwidth allocation using tc is > > possible? > > 2) If yes, the how to implement it. > > 3) Is it possible to implement it with cbq.init > > script > > > > > > Thanks in advance > > > > regards > > shekhar > > > > > > > > > > _______________________________________________ > > LARTC mailing list / LARTC@mailman.ds9a.nl > > http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: > http://lartc.org/ > > > > __________________________________________________ > Do you Yahoo!? > U2 on LAUNCH - Exclusive greatest hits videos > http://launch.yahoo.com/u2_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
Dear Rimas, I think you trying to remove any qdisc already present on your egress queue. If you have not created any qdisc before trying to remove it, then defn''t it will give such error. You need to redirect it to /dev/null. if you trying to do the same before creating the root qdisc. shekhar On Fri, 2002-11-08 at 18:38, Rimas wrote:> shekhar, > > >Make sure you had enable the HTB support in Kernel for Fair Queuing. > I did it. > > When I look to htb-start (debug file) I seethe error message only in one > place: > > # Fri Nov 8 10:56:35 GMT 2002 > > # ip link show > 1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue > link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 > 2: shaper0: <> mtu 1500 qdisc noop qlen 10 > link/ether > 3: eth0: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast qlen 100 > link/ether 00:50:04:6c:3c:5b brd ff:ff:ff:ff:ff:ff > 4: eth1: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast qlen 100 > link/ether 00:50:da:3c:d9:8b brd ff:ff:ff:ff:ff:ff > 5: eth2: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 100 > link/ether 00:04:e2:26:3d:80 brd ff:ff:ff:ff:ff:ff > > # tc qdisc del dev eth0 root > RTNETLINK answers: No such file or directory > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > # tc qdisc add dev eth0 root handle 1 htb default 30 r2q 100 > > # ip link show > 1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue > link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 > 2: shaper0: <> mtu 1500 qdisc noop qlen 10 > link/ether > 3: eth0: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc htb qlen 100 > link/ether 00:50:04:6c:3c:5b brd ff:ff:ff:ff:ff:ff > 4: eth1: <BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc pfifo_fast qlen 100 > link/ether 00:50:da:3c:d9:8b brd ff:ff:ff:ff:ff:ff > 5: eth2: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 100 > link/ether 00:04:e2:26:3d:80 brd ff:ff:ff:ff:ff:ff > > # tc class add dev eth0 parent 1: classid 1:2 htb rate 5Mbit burst 15k > > # tc class add dev eth0 parent 1:2 classid 1:10 htb rate 5Mbit burst 15k > > # tc qdisc add dev eth0 parent 1:10 handle 10 sfq perturb 10 > > # tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip sport > 80 0xffff classid 1:10 > > # tc class add dev eth0 parent 1:2 classid 1:20 htb rate 3Mbit ceil 5Mbit > burst 15k > > # tc qdisc add dev eth0 parent 1:20 handle 20 sfq perturb 10 > > # tc filter add dev eth0 parent 1:0 protocol ip prio 100 u32 match ip dport > 25 0xffff classid 1:20 > > # tc class add dev eth0 parent 1:2 classid 1:30 htb rate 1Kbit ceil 5Mbit > burst 15k > > # tc qdisc add dev eth0 parent 1:30 handle 30 sfq perturb 10 > > Any ideas? > > Thnak you > > Rimas >_______________________________________________ LARTC mailing list / LARTC@mailman.ds9a.nl http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/