Hi Luigi, Have you guys released the driver for linux yet, or is it still a work in progress? How does the libpcap emulation compare performance wise with a native netmap driver?
Beyers On Fri, Jan 20, 2012 at 8:54 PM, Luigi Rizzo <[email protected]> wrote: > On Fri, Jan 20, 2012 at 09:19:43AM -0800, Roman Chertov wrote: > > > > > > Kinda wonder how prepared click is for the netmap work being done and > > > 10Gb performance, and if it will help > > > > I recall reading on the list that netmap maintains a TX ring and as such > > it is not friendly to Click configs that can hold on to some packets for > > a while. > > > > FromDevice(ethX) -> cl::Classifier(...)[0] > > -> Queue > > -> DelayShaper(DELAY) > > -> outQ; > > > > cl[1] -> outQ; > > > > Any clarifications from people familiar with netmap? > > Click uses the libpcap emulation to run on top of netmap, > so it doesn't know anything about the netmap rings. > Incoming frames are copied into Click's Packets in the callback > passed tp pcap_dispatch(), and they > can be stored for as long as you like provided there is > enough (userspace) memory. > When it is time to transmit, pcap_inject() copies the payload > from the Packet to the netmap ring and the packet goes out. > > The two copies are moderately expensive but we are still talking > 3-4Mpps for FromDevice -> EtherSwitch -> ToDevice . > > Anything that takes a timestamp is going to hurt much more > than the memory copies. > > cheers > luigi > _______________________________________________ > click mailing list > [email protected] > https://amsterdam.lcs.mit.edu/mailman/listinfo/click > _______________________________________________ click mailing list [email protected] https://amsterdam.lcs.mit.edu/mailman/listinfo/click
