[Click] click optimize efficiency

Roman Chertov rchertov at cs.ucsb.edu
Tue Nov 24 21:46:03 EST 2009


When you run your original config on the gateway device, look at the
dmesg output.  If there are queue drops in any of the queues, you will
notice that.  If that is the case, you will have to modify your config.
 For example, you can play with the BURST parameter.

Yongheng Qi wrote:
> Thanks, Roman,
> 
> I have test the FromDevice(eth0) -> ctr :: AverageCounter -> Discard and
> FromDevice(br-lan)
> 
> both can get the 100Mbps throuthput, it is my etherlink limit.
> 
> 
> 
> 2009/11/25 Roman Chertov <rchertov at cs.ucsb.edu
> <mailto:rchertov at cs.ucsb.edu>>
> 
>     You can run Click on the receiver with the following config file.
> 
>     FromDevice(devX) -> ctr :: AverageCounter -> Discard;
> 
>     Then, you can look at the ctr stats to see what throughput you are
>     getting at the receiver.
> 
>     Yongheng Qi wrote:
>     > en, I am not sure, but I don't know how test the wireless
>     throughout put.
>     >
>     > but the wireless card on ap sta mode can get the 140Mbps. the monitor
>     > mode is
>     >
>     > our optimized. so it can get the same throughout put as ap sta mode.
>     >
>     > 2009/11/25 Roman Chertov <rchertov at cs.ucsb.edu
>     <mailto:rchertov at cs.ucsb.edu>
>     > <mailto:rchertov at cs.ucsb.edu <mailto:rchertov at cs.ucsb.edu>>>
>     >
>     >     Are you sure that your wireless link can transmit more than
>     90Mbps?  I
>     >     would try to test the base performance of your source and
>     >     destination first.
>     >
>     >     Roman
>     >
>     >     Yongheng Qi wrote:
>     >     > Thanks, you advise is very importent for me. I think it not
>     the TCP
>     >     > problem, because I test the UDP thoughout put. The same as
>     TCP. Cliff
>     >     > say about kernel will memcpy every packet. Have the way
>     solve the
>     >     > question? In the test, the kclick thread use more then 95%
>     CPU. The
>     >     > eth0 driver use the opewrt include and the ath2 use the
>     atheros sdk.
>     >     > These drivers may have problem?
>     >     >
>     >     > On 11/25/09, Roman Chertov <rchertov at cs.ucsb.edu
>     <mailto:rchertov at cs.ucsb.edu>
>     >     <mailto:rchertov at cs.ucsb.edu <mailto:rchertov at cs.ucsb.edu>>>
>     wrote:
>     >     >> I failed to notice the config file...
>     >     >>
>     >     >> In addition to what Cliff said, you can try a simple test
>     where you
>     >     >> configure Click as a transparent bridge to forward packets
>     >     between two
>     >     >> devices.  Then, you can look at the counters to see where
>     the packet
>     >     >> drops occur.
>     >     >>
>     >     >> FromDevice(eth0) -> Queue -> ToDevice(eth1);
>     >     >>
>     >     >> If the counters for FromDevice, Queue, and ToDevice are the
>     same, it
>     >     >> means that you are dropping packets at eth0 driver.  You
>     also need to
>     >     >> keep track of how many packets you sent from the source to
>     help you
>     >     >> diagnose the issue.
>     >     >>
>     >     >> Roman
>     >     >>
>     >     >> Cliff Frey wrote:
>     >     >>> Your config looks reasonable to me.
>     >     >>>
>     >     >>> How are you measuring performance?  I know if you are running
>     >     TCP on the
>     >     >>> devices as well (if you are testing tcp-to-the-device
>     rather than
>     >     >>> forwarding
>     >     >>> perfomance) that can slow things down (because of TCP
>     >     checksumming and
>     >     >>> because linux will keep a copy of every packet, causing
>     there to
>     >     be a lot
>     >     >>> more memcpy overhead).
>     >     >>>
>     >     >>> Also, often the drivers contribute a lot of the slowdown, even
>     >     though this
>     >     >>> is very hard to measure/see.
>     >     >>>
>     >     >>> It also seems as though you are using a br-lan device from
>     >     linux, perhaps
>     >     >>> the linux bridge code isn't very fast as well.
>     >     >>>
>     >     >>> You can benchmark click by loading the same config, but
>     with an
>     >     >>> InfiniteSource instead of a FromHost or FromDevice, and a
>     >     Discard instead
>     >     >>> of
>     >     >>> a ToHost/ToDevice, and seeing what performance you get there.
>     >      That can
>     >     >>> give
>     >     >>> you a benchmark for the maximum possible speeds that you will
>     >     see with
>     >     >>> click.  If that number is very high, then you need to be
>     >     optimizing your
>     >     >>> drivers or linux.  If the number is low, then the problem
>     >     probably is in
>     >     >>> click.
>     >     >>>
>     >     >>> I know from experience that it is possible to forward more
>     than
>     >     140Mbps
>     >     >>> using kernel click with linux on a mips board in the
>     600-800 MHz
>     >     range.
>     >     >>>
>     >     >>> Cliff
>     >     >>>
>     >     >>> On Tue, Nov 24, 2009 at 1:48 AM, Yongheng Qi
>     <jetever at gmail.com <mailto:jetever at gmail.com>
>     >     <mailto:jetever at gmail.com <mailto:jetever at gmail.com>>> wrote:
>     >     >>>
>     >     >>>> Click performance is so poor. I only use 3 classifier and 1
>     >     iprewrite and
>     >     >>>> other general packet process elements.
>     >     >>>>
>     >     >>>> At 680Mhz MIPS CPU, click actually can't process over 90Mbit
>     >     data per
>     >     >>>> second.
>     >     >>>>
>     >     >>>> The attachment is the click config file. anyone can tell
>     me how to
>     >     >>>> optimize
>     >     >>>> it.
>     >     >>>>
>     >     >>>> Thanks very much
>     >     >>>>
>     >     >>>>
>     >     >>>> 2009/11/20 Yongheng Qi <jetever at gmail.com
>     <mailto:jetever at gmail.com>
>     >     <mailto:jetever at gmail.com <mailto:jetever at gmail.com>>>
>     >     >>>>
>     >     >>>>> Dear everyone.
>     >     >>>>>
>     >     >>>>> I use click roofnet process the 802.11n packet. test it use
>     >     IxChariot.
>     >     >>>> find
>     >     >>>>> about 90Mbps, click use 100% cpu.
>     >     >>>>>
>     >     >>>>> I use routeros 433AH boardband.the cpu is MIPS 680Mhz.
>     >     >>>>>
>     >     >>>>> I don't know how to make click have more eiffciency.
>     >     >>>>>
>     >     >>>>> please help me, Thanks very much.
>     >     >>>>>
>     >     >>>>> --
>     >     >>>>> Yongheng Qi
>     >     >>>>>
>     >     >>>>> Mobile: +86 1390 119 7481
>     >     >>>>>
>     >     >>>>
>     >     >>>> --
>     >     >>>> Yongheng Qi
>     >     >>>>
>     >     >>>> Mobile: +86 1390 119 7481
>     >     >>>>
>     >     >>>> _______________________________________________
>     >     >>>> click mailing list
>     >     >>>> click at amsterdam.lcs.mit.edu
>     <mailto:click at amsterdam.lcs.mit.edu>
>     <mailto:click at amsterdam.lcs.mit.edu
>     <mailto:click at amsterdam.lcs.mit.edu>>
>     >     >>>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>     >     >>>>
>     >     >>>>
>     >     >>> _______________________________________________
>     >     >>> click mailing list
>     >     >>> click at amsterdam.lcs.mit.edu
>     <mailto:click at amsterdam.lcs.mit.edu>
>     <mailto:click at amsterdam.lcs.mit.edu
>     <mailto:click at amsterdam.lcs.mit.edu>>
>     >     >>> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>     >     >>>
>     >     >>
>     >     >
>     >
>     >
>     >
>     >
>     > --
>     > Yongheng Qi
>     >
>     > Mobile: +86 1390 119 7481
> 
> 
> 
> 
> -- 
> Yongheng Qi  
> 
> Mobile: +86 1390 119 7481



More information about the click mailing list