Hi,

  I've been looking for the fastest way to receive packets at wire line speed.  
It looks like using the mmap with the packet socket interface in the kernel is 
the best way to save 1 data copy per packet.  I have a quad-port 82575GB Intel 
NIC.  Does the current igb driver (or whatever I should use) support the chip's 
capability to read/write directly to the NIC's memory from userspace?

  I'm developing an application to hairpin UDP packets from one host to 
another, and I need as quick operation as possible.  I've seen mention of 
PF_RING and DNA, but it appears the kernel already has the support I need (via 
mmap) minus direct access to the NIC's memory.

  Ideally, I want to have the ability to assign an IP address to, say, eth0 and 
read from eth0 only the UDP packets destined to my application's port.  With 
PF_RING DNA, I would have to process all the packets that arrived on that 
interface, including ARP, since the kernel is no longer in the loop.

  Is there a way to do this with the stock kernel and igb driver, or do I need 
to implement some sort of zero-copy logic in the kernel?  If there's a better 
way to do this, please let me know.  Thanks.

-Brian

Brian C. Wiles | Director of Software Development
O1 Communications
5190 Golden Foothill Pkwy,
El Dorado Hills, CA 95762
office: 916.235.2032
email: bwi...@o1.com<mailto:bwi...@o1.com> | web: www.o1.com<http://www.o1.com/>

------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent 
caught up. So what steps can you take to put your SQL databases under 
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to