[Click] ToDump

Eddie Kohler kohler at cs.ucla.edu
Tue Jul 5 15:53:37 EDT 2005


Hi Roman,

That's terrible!  Are you running on a Linux machine?  Modern  
versions of the pcap library can use shared memory to transfer  
packets to user level from the e1000 driver; I wonder if that's  
related.  Here are some things to try.

- Use the anonymous CVS version of Click, and supply the FromDevice  
element with "CAPTURE PCAP".  This will tell Click to use the pcap  
library to capture packets (rather than Linux packet sockets), which  
will perhaps help if my assumption about shared memory is correct.

- Supply a short SNAPLEN to the FromDevice element.

- Try running a "FromDevice(...) -> Counter -> Discard"  
configuration, and see how many packets are received.  Perhaps there  
is a bug with ToDump?

You cannot run ToDump in the kernel.

Please let us know whether this helps.

Eddie


On Jun 30, 2005, at 12:59 PM, rchertov at purdue.edu wrote:

> Hello,
>   I am interested in being able to capture 100Mbit flows with very  
> small
> packets.  If I just use tcpdump and the e1000-5.x click driver, I  
> can capture
> UDP packets with 10 byte payload with only 0.04% loss.  If I run  
> ToDump in user
> level then I can capture maybe 60~50% of the packets.  Out of  
> curiosity what
> would it take to make ToDump element run in kernel level space?  A  
> reasonable
> sized buffer could be used to transfer the captured packets to  
> disk.  I think
> right now ToDump uses a pipe to write the packets either to disk or  
> to stdout.
>
>
> Any input would be appreciated,
>
> Roman
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click
>



More information about the click mailing list