public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* CBQ simply doesn't work
@ 2001-01-27 23:01 clock
  2001-01-27 23:35 ` patrick.mourlhon
  0 siblings, 1 reply; 3+ messages in thread
From: clock @ 2001-01-27 23:01 UTC (permalink / raw)
  To: linux-kernel

[-- Attachment #1: Type: text/plain, Size: 226 bytes --]

I can't get the CBQ running on 2.2.17. Alexey look like he doesn't reply to his
mails.  I made one more man to check it over me. We both can't find a problem.
The file with config info is attached.

Eager for any idea

Clock


[-- Attachment #2: qos --]
[-- Type: text/plain, Size: 5903 bytes --]

This is an excerpt from the kernel configuration:

        [*] QoS and/or fair queueing                      
        <M> CBQ packet scheduler                          
        < > CSZ packet scheduler                          
        <M> The simplest PRIO pseudoscheduler             
        <M> RED queue                                     
        <M> SFQ queue                                     
        <M> TEQL queue                                    
        <M> TBF queue                                     
        [*] QoS support                                   
        [*] Rate estimator                                
        [*] Packet classifier API                         
        <M> Routing table based classifier             
        <M> Firewall based classifier                  
        <M> U32 classifier                             
        <M> Special RSVP classifier                    
        < > Special RSVP classifier for IPv6           
        [*] Ingres traffic policing                    

...
	
        [*] IP: multicasting                 
	[*] IP: advanced router              

This is a script that sets up the qos:

#!/bin/bash
/sbin/insmod cls_fw
/sbin/insmod sch_prio
/sbin/insmod sch_cbq
/sbin/insmod cls__u32
/sbin/insmod cls_rsvp
/sbin/insmod sch_red

tc qdisc add dev ppp0 root handle 10: cbq bandwidth 28Kbit avpkt 1000

tc class add dev ppp0 parent 10:0 classid 10:1 cbq bandwidth 28Kbit rate 28Kbit
allot 1514 weight 28Kbit prio 8 maxburst 20 avpkt 1000

tc class add dev ppp0 parent 10:1 classid 10:100 cbq bandwidth 28Kbit rate 16Kbit allot 1514 weight 16Kbit prio 5 maxburst 20 avpkt 1000
tc class add dev ppp0 parent 10:1 classid 10:200 cbq bandwidth 28Kbit rate 9Kbit allot 1514 weight 9Kbit prio 5 maxburst 20 avpkt 1000
tc class add dev ppp0 parent 10:1 classid 10:300 cbq bandwidth 28Kbit rate 3Kbit allot 1514 weight 3Kbit prio 5 maxburst 20 avpkt 1000

tc qdisc add dev ppp0 parent 10:100 sfq quantum 1514b perturb 15
tc qdisc add dev ppp0 parent 10:200 sfq quantum 1514b perturb 15
tc qdisc add dev ppp0 parent 10:300 sfq quantum 1514b perturb 15

This is what the script says when run just before testing:

root@mspool:~# ./qos
Using /lib/modules/2.2.17/misc/cls_fw.o
insmod: a module named cls_fw already exists
Using /lib/modules/2.2.17/misc/sch_prio.o
insmod: a module named sch_prio already exists
Using /lib/modules/2.2.17/misc/sch_cbq.o
insmod: a module named sch_cbq already exists
insmod: cls__u32: no module by that name found
Using /lib/modules/2.2.17/misc/cls_rsvp.o
insmod: a module named cls_rsvp already exists
Using /lib/modules/2.2.17/misc/sch_red.o
insmod: a module named sch_red already exists


Config listings:

root@mspool:~# tc qdisc show
qdisc sfq 8036: dev ppp0 quantum 1514b perturb 15sec
qdisc sfq 8035: dev ppp0 quantum 1514b perturb 15sec
qdisc sfq 8034: dev ppp0 quantum 1514b perturb 15sec
qdisc cbq 10: dev ppp0 rate 28Kbit (bounded,isolated) prio no-transmit

root@mspool:~# tc class show dev ppp0
class cbq 10: root rate 28Kbit (bounded,isolated) prio no-transmit
class cbq 10:100 parent 10:1 leaf 8034: rate 16Kbit prio 5
class cbq 10:1 parent 10: rate 28Kbit prio no-transmit
class cbq 10:200 parent 10:1 leaf 8035: rate 9Kbit prio 5
class cbq 10:300 parent 10:1 leaf 8036: rate 3Kbit prio 5

root@mspool:~# tc filter show dev ppp0
filter parent 10: protocol ip pref 25 u32 
filter parent 10: protocol ip pref 25 u32 fh 802: ht divisor 1 
filter parent 10: protocol ip pref 25 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid 10:300 
  match 3e50554d/ffffffff at 16
filter parent 10: protocol ip pref 25 u32 fh 801: ht divisor 1 
filter parent 10: protocol ip pref 25 u32 fh 801::800 order 2048 key ht 801 bkt 0 flowid 10:200 
  match 3e50554c/ffffffff at 16
filter parent 10: protocol ip pref 25 u32 fh 800: ht divisor 1 
filter parent 10: protocol ip pref 25 u32 fh 800::800 order 2048 key ht 800 bkt 0 flowid 10:100 
  match 3e50554a/ffffffff at 16
filter parent 10: protocol ip pref 50 u32 
filter parent 10: protocol ip pref 50 u32 fh 802: ht divisor 1 
filter parent 10: protocol ip pref 50 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid 10:300 
  match 3e50554d/ffffffff at 16
filter parent 10: protocol ip pref 50 u32 fh 801: ht divisor 1 
filter parent 10: protocol ip pref 50 u32 fh 801::800 order 2048 key ht 801 bkt 0 flowid 10:200 
  match 3e50554c/ffffffff at 16
filter parent 10: protocol ip pref 50 u32 fh 800: ht divisor 1 
filter parent 10: protocol ip pref 50 u32 fh 800::800 order 2048 key ht 800 bkt 0 flowid 10:100 
  match 3e50554a/ffffffff at 16
filter parent 10: protocol ip pref 100 u32 
filter parent 10: protocol ip pref 100 u32 fh 802: ht divisor 1 
filter parent 10: protocol ip pref 100 u32 fh 802::800 order 2048 key ht 802 bkt 0 flowid 10:300 
  match 3e50554d/ffffffff at 16
filter parent 10: protocol ip pref 100 u32 fh 801: ht divisor 1 
filter parent 10: protocol ip pref 100 u32 fh 801::800 order 2048 key ht 801 bkt 0 flowid 10:200 
  match 3e50554c/ffffffff at 16
filter parent 10: protocol ip pref 100 u32 fh 800: ht divisor 1 
filter parent 10: protocol ip pref 100 u32 fh 800::800 order 2048 key ht 800 bkt 0 flowid 10:100 
  match 3e50554a/ffffffff at 16

Problem: I tested running two links browsers at 62.80.85.74 and 62.80.85.76
downloading both the same big file. They behaved just as without the packet
scheduling. Their behaviour was random and they shared the link statistically
about the same. Then I run donload on the .74 and ssh at .76 and usually I had
to wait about a minute to get a connection which showed also it simply didn't
work. Running these things separately indicated there were no other problems
in the way. The packet scheduling simply didn't work.

Kernel:

root@mspool:~# cat /proc/version
Linux version 2.2.17 (root@gam) (gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)) #1 Fri Nov 3 13:04:46 CET 2000


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

* Re: CBQ simply doesn't work
  2001-01-27 23:01 CBQ simply doesn't work clock
@ 2001-01-27 23:35 ` patrick.mourlhon
  0 siblings, 0 replies; 3+ messages in thread
From: patrick.mourlhon @ 2001-01-27 23:35 UTC (permalink / raw)
  To: clock; +Cc: linux-kernel

> #!/bin/bash
> /sbin/insmod cls_fw
> /sbin/insmod sch_prio
> /sbin/insmod sch_cbq
> /sbin/insmod cls__u32

myne here is cls_u32

> insmod: a module named sch_cbq already exists
> insmod: cls__u32: no module by that name found

but i use 2.4... and i just feel your classifier
cannot work anymore... because of this module.

Well, this just intrigue me... i just feel
i could have done some similar mystake..

Regards,


patrick mourlhon

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

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

* RE: CBQ simply doesn't work
@ 2001-01-29 15:38 Jonathan Earle
  0 siblings, 0 replies; 3+ messages in thread
From: Jonathan Earle @ 2001-01-29 15:38 UTC (permalink / raw)
  To: 'clock@atrey.karlin.mff.cuni.cz', linux-kernel

Hi,

	/sbin/insmod cls__u32

	insmod: cls__u32: no module by that name found

I think you meant cls_u32, not cls__u32.  Your script output seems to
indicate that you've already got the modules loaded somewhere.

	tc class add dev ppp0 parent 10:1 classid 10:300 cbq bandwidth
28Kbit rate 3Kbit allot 1514 weight 3Kbit prio 5 maxburst 20 avpkt 1000

To get a 3kbit flow, you need the 'bounded' keyword in that line.  Without
it, it will borrow all available bandwidth.

Further, you didn't appear to include your filter definitions in your
script.  If the bounded keyword doesn't fix it, check what you are matching
in your filters.  Packets not matching will sail right between your queues
without a care in the world.

Jon

> I can't get the CBQ running on 2.2.17. Alexey look like he 
> doesn't reply to his
> mails.  I made one more man to check it over me. We both 
> can't find a problem.
> The file with config info is attached.
> 
> Eager for any idea
> 
> Clock
> 
> 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

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

end of thread, other threads:[~2001-01-29 16:27 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-01-27 23:01 CBQ simply doesn't work clock
2001-01-27 23:35 ` patrick.mourlhon
  -- strict thread matches above, loose matches on Subject: below --
2001-01-29 15:38 Jonathan Earle

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox