ntop / PF_RING

High-speed packet processing framework
http://www.ntop.org
GNU Lesser General Public License v2.1
2.71k stars 349 forks source link

Symmetric RSS question #844

Closed novaksam closed 1 year ago

novaksam commented 1 year ago

I have a setup where I have optical taps, two for TX from our core, and two for RX from our core. I'm sure this has been answered previously, but I want to verify, do the PF_RING ZC RSS tables account for this type of situation; in my head, if all of the RSS flow tables for the interfaces are using the same tuple (ex DST ip + dst port) then the interfaces would need inverted tables for RX and TX. Just wanting to make sure that I'm configuring things correctly so I'm not dropping flows.

If my hardware was more powerful I'd just do a cluster for the non-RSS NIC but alas, it is not.

enp5s0f0 and enp6s0f0 are TX Core -> Firewall enp5s0f1 and enp6s0f1 are TX Firewall -> Core

/etc/pf_ring/pf_ring.conf min_num_slots=65536

/etc/pf_ring/hugepages.conf node=0 hugepagenumber=2048

/etc/pf_ring/zc/i40e/i40e.conf RSS=2,2,2,2

/etc/cluster/cluster-10.conf

-i=zc:enp5s0f0@0,zc:enp5s0f1@0,zc:enp6s0f0@0,zc:enp6s0f1@0
-n=1
-m=1
-c=10
-g=2

/etc/cluster/cluster-11.conf

-i=zc:enp5s0f0@1,zc:enp5s0f1@1,zc:enp6s0f0@1,zc:enp6s0f1@1
-n=1
-m=1
-c=11
-g=3

And then those clusters feed nprobe, though I'm not sure how I'd set the input/output interfaces in the Nprobe configuration, but that's a question for the other repo.

PS, you folks are awesome

cardigliano commented 1 year ago

ZC configures symmetric RSS on the adapter, this is supported by most Intel adapter, but there are selected models/firmwares which are not supporting it. What is your adapter model?

novaksam commented 1 year ago

Num Description Ver.(hex) DevId S:B Status === ================================== ============ ===== ====== ============== 01) Intel(R) Ethernet Converged 9.16(9.10) 1572 00:005 Up to date
Network Adapter X710-2
02) Intel(R) Ethernet Converged 9.16(9.10) 1572 00:006 Up to date
Network Adapter X710-2

cardigliano commented 1 year ago

X710 supports symmetric RSS, depending on the fw version, if you load the i40e-zc driver, it prints a message in dmesg reporting it

novaksam commented 1 year ago
[602184.451959] i40e 0000:06:00.1: i40e_ptp_stop: removed PHC on enp6s0f1
[602184.631240] i40e 0000:06:00.0: i40e_ptp_stop: removed PHC on enp6s0f0
[602184.833452] i40e 0000:05:00.1: i40e_ptp_stop: removed PHC on enp5s0f1
[602185.036582] i40e 0000:05:00.0: i40e_ptp_stop: removed PHC on enp5s0f0
[602185.305209] i40e: Intel(R) 40-10 Gigabit Ethernet Connection Network Driver - version 2.17.4
[602185.305214] i40e: Copyright(c) 2013 - 2021 Intel Corporation.
[602185.319002] i40e 0000:05:00.0: fw 9.110.72185 api 1.15 nvm 9.10 0x8000d008 1.3179.0
[602185.551370] i40e 0000:05:00.0: MAC address: 3c:fd:fe:9c:c3:2c
[602185.555028] i40e 0000:05:00.0: Symmetric hash (HSYM) not supported
[602185.556473] i40e 0000:05:00.0 eth0: NIC Link is Up, 10 Gbps Full Duplex, Flow Control: None
[602185.558901] i40e 0000:05:00.0: PCI-Express: Speed 8.0GT/s Width x8
[602185.559828] i40e 0000:05:00.0: Features: PF-id[0] VFs: 64 VSIs: 66 QP: 2 RSS FD_ATR FD_SB NTUPLE CloudF VxLAN Gen                                                                                                                        eve NVGRE PTP VEPA

I noticed that Symmetric hash not supported...

cardigliano commented 1 year ago

@novaksam please try updating the firmware of your adapter

novaksam commented 1 year ago

I'm using the latest NVM 9.10: https://www.intel.com/content/www/us/en/download/18190/non-volatile-memory-nvm-update-utility-for-intel-ethernet-network-adapter-700-series.html