[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