I am trying to evaluate Intel's flow director technology on a system with a Xeon E5-2643 and 4x10G XL710 Adapter.
The traffic is generated with nuttcp from client1 to server1 and from client2 to server2 (See attached document).
I was expecting Flow Director to pin each flow (different 5 tuples) on a dedicated processor ... but it does not seems to be the case. The flow are always be handle by the same processor.
Am i missing something ? shouldn't the second flow be on a different queue (processor) ?
Thank you for contacting Intel.
Yes, the Intel® Ethernet Flow Director will assign the packets to the correct processor core. Can you provide more information on your test environment?
Here are some additional info on the setup:
Processor: Dual Xeon E5-2643
NIC: 4 x 10G SFP+ XL710
Driver: i40e-1.2.38 (downloaded from the Intel website)
Kernel: linux 3.14
NIC: 2 x 10G X540
Driver: in tree driver
Kernel: linux 3.2
The DUT is essentially acting as a switch; with a custom kernel module forwarding traffic between client1/server1(blue flow) and client2/server2 (green flow).
Client1/Server1 are in the subnet 192.168.1.0/24
Client2/Server2 are in the subnet 192.168.2.0/24
I've used the set_irq_affinity script (from the i40e package) to setup interrupt affinity on the NICs.
Traffic is generated with nuttcp from Client1/Client2 toward Server1/Server2 respectively.
I was hoping to achieve two simultaneous 10G flows (blue and green in the diagram).... and expecting flow director to assign each flow on a dedicated processor.
However, It seems that all traffic are handled on the same processor.
I'm sorry for the delay.
I would like to refer you to this online document. It has the switches and filter that you can configure to work with the Flow Director.
Please let us know if you have any questions on this.