[Click] Problem in click and madwifi interaction

Ian Rose ianrose at eecs.harvard.edu
Wed Oct 20 09:54:44 EDT 2010


I'm a bit confused by what you are trying to accomplish here.  It would 
help to simplify your script - keep stripping things out until the 
packet drops stop happening and that should help you pinpoint the 
problem.  Also keep an eye on your cpu usage - at very high traffic 
levels it _may_ not be unreasonable for your SBC to not be able to keep up.

You might even try some really basic configs like the following just to 
sanity check that packets won't be dropped in the very simplest of cases:

FromDevice(ath0) -> q::Queue(100) -> c1::Counter() -> Discard;
q[1] -> c2::Counter();

or

FromHost(fake0, 172.16.4.90/16, ETHER 00:0B:6B:57:BD:51) -> 
q::Queue(100) -> c1::Counter() -> Discard;
q[1] -> c2::Counter();

Also, is this at kernel level or userlevel?  It looks like kernel to me 
but I want to confirm.

- Ian

p.s. Sorry, I cannot comment on MadWifi specifically as I run click on 
FreeBSD.


Ramana wrote:
> Hi,
> 
> I am working with click and madwifi driver for a simple task of
> classifying the packets and sending them to either ath0 or host.
> (script is given below). I am running this script on soekris single
> board computers (operating at 233 MHz, 128 MB RAM etc.,).
> 
> There will be 3 flows going from a Station to an AP. In normal mode
> (i.e., without click enabled), there are no packet drops.
> 
> However, for the same configuration, there are many packets (about
> 2000-4000 packets) getting dropped at the sending station when I
> enabled click.
> 
> I could overcome this problem by increasing buffer limits in the
> driver  (i.e, changing the value of TAIL_DROP_COUNT from 50 to 400 in
> madwifi driver). However, we wanted it without increasing buffer
> limits as it is leading to another problem of increasing delays etc.
> 
> So, my question is why the packets are getting dropped with click?. Is
> there any solution?.
> 
> Also kindly share the details of how click (todevice) interacts with
> madwifi device driver.
> 
> Regards
> Ramana
> -------------------------------------------------------------------------------
> 
> tod0:: Queue(100) ->ToDevice(ath0);
> tohs::ToHost()
> 
> host :: FromHost(fake0, 172.16.4.90/16, ETHER 00:0B:6B:57:BD:51)
> fod0 :: FromDevice(ath0)
> 
> aq0 :: ARPQuerier(172.16.4.90, 00:0B:6B:57:BD:51);
> 
> 
> hs_cl :: Classifier(12/0806 20/0001, 12/0806 20/0002, 12/0800,-);
> f0_cl :: Classifier(12/0806 20/0001, 12/0806 20/0002, -);
> 
> host  ->  hs_cl;
> fod0  -> f0_cl;
> 
> hs_cl[0] -> ARPResponder(0.0.0.0/0 ff:ff:ff:ff:ff:ff) -> tohs;
> hs_cl[1] -> Discard;
> hs_cl[3] -> tod0;
> f0_cl[0] -> ARPResponder(172.16.4.90 00:0B:6B:57:BD:51) -> tod0;
> f0_cl[1] -> [1]aq0;
> f0_cl[2] -> tohs
> 
> rt :: RadixIPLookup(172.16.0.0/16 172.16.4.81 0, 0.0.0.0 1)
> ip::Strip(14) ->  CheckIPHeader(CHECKSUM false) -> [0]rt;
> hs_cl[2] -> ip
> rt[0] ->  [0]aq0;
> rt[1] ->  Discard;
> aq0[0] -> tod0;
> aq0[1] -> tod0;
> 
> 


More information about the click mailing list