support for L3/L4-filters in ixgbe

Alexander Fiveg pebu3op at googlemail.com
Tue Jul 20 19:54:25 UTC 2010


Hello hackers, 

I have a couple of questions about the support of multiple-queues in the ixgbe
driver. I am working on ringmap project in context of GSOC-2010. Currently I
am trying to integrate ringmap with ixgbe. The network controller on my
test-machine: 82599. 

My questions are: 
- Is there any interface to the user-space that allows the user-space process
(for example by using ioctl()) to assign one specific queue for packets 
matched by L3/L4 filter (IP's , L4-protocols, ports). Has anyone tried to
implement it for ixgbe? 
(If no, then I would try to implement this functionality and in this case any 
suggestions and advices would be very helpfull!)

- Which filter can be used for assigning the network packets to a specific 
queue based on MAC-address ? 
(As far as I know it from datasheet, L2-filer matches only Ethertype, not the 
MAC-address-bytes. probably it can be done only by "flow director filter")

Thanks, 
Alex

P.S. Some outputs on my machine: 
% uname -v  
FreeBSD 9.0-CURRENT #1

% sysctl kern.osreldate
kern.osreldate: 900014

% sysctl dev.ix.0
dev.ix.0.%desc: Intel(R) PRO/10GbE PCI-Express Network Driver, Version - 2.2.3
dev.ix.0.%driver: ix
dev.ix.0.%location: slot=0 function=0
dev.ix.0.%pnpinfo: vendor=0x8086 device=0x10fb subvendor=0x8086 
subdevice=0x0003 class=0x020000
dev.ix.0.%parent: pci1
dev.ix.0.stats: -1
dev.ix.0.debug: -1
dev.ix.0.flow_control: 3
dev.ix.0.advertise_gig: 0
dev.ix.0.enable_aim: 1
dev.ix.0.rx_processing_limit: 128

% cat /var/log/messages | grep ix
Jul 15 18:31:38 ringmap-2 kernel: ix0: <Intel(R) PRO/10GbE PCI-Express Network 
Driver, Version - 2.2.3> port 0xac00-0xac1f mem 
0xfe780000-0xfe7fffff,0xfe77c000-0xfe77ffff irq 16 at device 0.0 on pci1
Jul 15 18:31:38 ringmap-2 kernel: ix0: Using MSIX interrupts with 9 vectors
Jul 15 18:31:38 ringmap-2 kernel: ix0: [ITHREAD]
Jul 15 18:31:38 ringmap-2 kernel: ix0: Ethernet address: 00:1b:21:5a:67:70
Jul 15 18:31:38 ringmap-2 kernel: ix0: PCI Express Bus: Speed 2.5Gb/s Width x8
Jul 15 18:31:38 ringmap-2 kernel: ix1: <Intel(R) PRO/10GbE PCI-Express Network 
Driver, Version - 2.2.3> port 0xa800-0xa81f mem 
0xfe680000-0xfe6fffff,0xfe778000-0xfe77bfff irq 17 at device 0.1 on pci1
Jul 15 18:31:38 ringmap-2 kernel: ix1: Using MSIX interrupts with 9 vectors
Jul 15 18:31:38 ringmap-2 kernel: ix1: RX Descriptors exceed system mbuf max, 
using default instead!
Jul 15 18:31:38 ringmap-2 kernel: ix1: [ITHREAD]
Jul 15 18:31:38 ringmap-2 kernel: ix1: Ethernet address: 00:1b:21:5a:67:71
Jul 15 18:31:38 ringmap-2 kernel: ix1: PCI Express Bus: Speed 2.5Gb/s Width x8


More information about the freebsd-net mailing list