Menu

#5 timecheck problem

open
nobody
None
5
2003-01-29
2003-01-29
Anonymous
No

Hi,

timecheck works well when rule files was like:
cbq-0701.somth
cbq-2424.somth
etc...

but it wont checks files with names:
cbq-070C.somth
cbq-EEEE.somth
etc...
Rule initialization for this files works ok, but not
timecheck.

Sirijus

Discussion

  • Nobody/Anonymous

    Logged In: NO

    The timecheck procedure uses output from tc to verify
    changes on speed. The output of tc shows the classes in
    hexa, without caps.

    Change the classes names to caps down and the problem will
    be solved:

    cbq-070c.somth
    cbq-eeee.somth

     
  • Paulo Sedrez

    Paulo Sedrez - 2003-10-07

    Logged In: YES
    user_id=35269

    Just to sign the previous comment.
    --Sedrez

     
  • Nobody/Anonymous

    Logged In: NO

    Thank You for answer very much, but that is not this problem
    I think. My configs are like:
    cbq-0002.eth0_lan_lan
    cbq-0004.eth0_server_uro2
    cbq-0005.eth2_uro2_net
    cbq-0006.eth0_server_uro3
    cbq-0007.eth2_uro3_net
    etc...
    Why on kernel 2.4.18 script works fine with "timecheck", but
    on kernel 2.4.20, 2.4.21, 2.4.22 "timecheck" does not change
    the bandwidth, although works static bandwidth cut.
    Cbq service is compiled into above kernels.
    Artur Bialeta, Poland.

     
  • Paulo Sedrez

    Paulo Sedrez - 2003-11-08

    Logged In: YES
    user_id=35269

    Artur,

    Check the output of 'cbq list' after the 'cbq timecheck', to
    see if the nominal bandwidth has changed. If it has and it
    is not working, it is not a cbq problem, but a kernel issue.

    I checked here, and it is working fine.

    And please trash my previous answer. The cbq script is safe
    on upper case/lower case mix in file names.

    --Paulo Sedrez

     
  • Nobody/Anonymous

    Logged In: NO

    Hello Paulo.
    Have You tried cbq timecheck script on any of kernels 2.4.20,
    2.4.21, 2.4.22? Does it really work?
    Artur.

     
  • Paulo Sedrez

    Paulo Sedrez - 2003-11-10

    Logged In: YES
    user_id=35269

    Artur,

    I am using cbq with kernel 2.4.20. Check this out:

    [root@sedrez etc]# cbq start
    [root@sedrez etc]# cbq timecheck
    [root@sedrez etc]# env TZ=GMT-12 cbq timecheck
    **CBQ: 8:10: class 65 on eth2 changed rate (128Kbit -> 64Kbit)
    **CBQ: 8:10: class 6e on eth0 changed rate (128Kbit -> 64Kbit)
    [root@sedrez etc]# cbq timecheck
    **CBQ: 18:10: class 65 on eth2 changed rate (64Kbit -> 128Kbit)
    **CBQ: 18:10: class 6e on eth0 changed rate (64Kbit -> 128Kbit)
    [root@sedrez etc]# uname -a
    Linux sedrez 2.4.20-20.7 #1 Mon Aug 18 15:05:54 EDT 2003
    i686 unknown
    [root@sedrez etc]#

    (TZ is a good way to simulate changes in time).

    --Paulo Sedrez

     
  • Nobody/Anonymous

    Logged In: NO

    Paulo, I really know what You are talking about, thanks very
    much for advices, but we are still in the same point. My cbq
    configs are cool, they work on 2.4.18 with timecheck
    excellent, I do not use letters in head of cbq configs (eg: cbq-
    0022.eth0_server_uro2), so that`s not an upper/lower case
    letters. But when I load a higher kernel (on the same cbq and
    system configuration, nothing`s changed, like previously)
    timecheck fails, although "tc -s qdisc" works fine on higher
    kernels - it means that the kernel has QoS compiled in:
    [*] QoS and/or fair queueing
    <M> CBQ packet scheduler
    <M> CSZ packet scheduler
    <M> The simplest PRIO pseudoscheduler
    <M> RED queue
    <M> SFQ queue
    <M> TEQL queue
    <M> TBF queue
    <M> GRED queue
    <M> Diffserv field marker
    <M> Ingress Qdisc
    [*] QoS support
    [*] Rate estimator
    [*] Packet classifier API
    <M> TC index classifier
    <M> Routing table based classifier
    <M> Firewall based classifier
    <M> U32 classifier
    <M> Special RSVP classifier
    <M> Special RSVP classifier for IPv6
    [*] Traffic policing (needed for in/egress)
    So I think thats not the kernel configuration will, but...???
    And that`s the question, why only timecheck on 2.4.18 OK,
    but =>2.4.20 fail. Well, it`s not a critical problem, but I have
    to know just WHY?
    By the way, You like beer?
    Artur.

     
  • Nobody/Anonymous

    Logged In: NO

    I found solution! Change case of hex letters in CLASS
    parameter for tc command. Add the following changes to
    cbq.init script in timecheck procedure:
    # no changes in this line
    cbq_load_class $CBQ_PATH $classfile
    # insert new line here
    TMP_CLASS=`echo "$CLASS"|tr "[A-F]" "[a-f]"`
    # replace $CLASS to $TMP_CLASS
    RATE_NOW=`tc class show dev $DEVICE| sed -n \
    "/cbq 1:$TMP_CLASS / { s/.*rate //; s/ .*//; p; q; }"`

    Have a nice day.

    Ramunas Minkus
    ramunas.minkus@jonava.lt

     

Log in to post a comment.

MongoDB Logo MongoDB