[Click] Traffic Shaping in Click

Beyers Cronje bcronje at gmail.com
Mon Feb 9 12:02:53 EST 2009


Hi,

Just a few notes from my side:

1) You are using a huge capacity argument on the Queue elements. I'm
surprised it actually loaded as Queue requests 'sizeof(Packet *) * (CAPACITY
+ 1)' memory on initialization. This large amount also results in click
calling vmalloc instead of kmalloc. I suggest to intially start your test
off with a more reasonable capacity, maybe use the default and work from
there.

2) Where are packets being dropped -  at the rx/tx NIC level, Queue or
ToDevice levels?

3) I recommend using the IGNORE argument of AverageCounter or reset handler
to ensure accurate measurements on AverageCounter. What is the byte_rate
value of ctr0/1 during the test?

4) To rule out any misbehaving multithreading components, run the test using
single threaded click. Also test it in only one direction.

Beyers



On Mon, Feb 9, 2009 at 5:59 PM, Latency Buster <latencybuster at gmail.com>wrote:

> <config>
> fd0::PollDevice(eth0,PROMISC true)
>  -> SetTimestamp
>  -> Queue(4294967295)
>  -> BandwidthShaper(5242880B/s) //
>  -> ctr0::AverageCounter
>  -> td0::ToDevice(eth1);
>
> fd1::PollDevice(eth1, PROMISC true)
>  -> SetTimestamp
>  -> Queue(4294967295)
>  -> BandwidthShaper(5242880B/s) //x Mb
>  -> ctr1::AverageCounter
>  -> td1::ToDevice(eth0);
>
> StaticThreadSched(fd0 0, td0 0, fd1 1, td1 1);
>
> </config>
>
> e1000 Driver used: e1000-7.6.15.5 (supplied by Roman: Thanks!)
> Click installation: ./click-uninstall; ./click-install -t 2 --cpu=0
> /home/click/configs/shaper.conf
>
> Both eth0 and eth1 are connected to Ixia traffic generator via gigabit
> ethernet links. Input Traffic rate: 100Mbps/ frame size: 128 bytes.
> RFC 2889 test. Desired output rate: 40Mbps
>
> Test: bi-directional
>
> Result: 80% frames are being dropped.
>
> Help greatly appreciated,
>
>
> Thanks,
>


More information about the click mailing list