This is to announce a new PF_RING release 8.2!
This new stable version adds support for a new family of ASIC-based adapters from Mellanox/NVIDIA, including ConnectX-5 and ConnectX-6 (please check the User’s Guide for the exact list of supported firmwares). This new driver/adapter combination delivers high performance (in our tests nProbe Cento was able to scale up to 100 Gbps with worst case traffic using a few CPU cores) and provides high flexibility, with support for hardware packet filtering, traffic duplication, load-balancing and nanosecond hardware timestamping as described in a previous post.
This release also adds support for the latest kernels for the ZC drivers for Intel adapters, including those shipped with RedHat/CentOS compatible Rocky Linux (8.5) and Ubuntu LTS (22) , and it is integrated with the latest SDKs for the FPGA capture modules (Accolade, Napatech, Silicom/Fiberblaze).
Please check the full changelog below for the whole list of enhancements. Enjoy!
Changelog
PF_RING Library
- New new pfring_get_caplen API
- New pfring_get_link_type API
- Add src_ip_mask and dst_ip_mask to generic_flow_rule
- Add priority to hw_filtering_rule
- Add module version to device info returned by pfring_findalldevs
- Refactor device name parsing
- Use sockaddr_ll in bind (to supports interface names longer than 14 chars)
ZC Library
- New Mellanox support for ConnectX 4/5/6 adapters, including hardware offloads for timestamp, filtering, RSS
- Fix pfring_zc_numa_get_cpu_node
FT Library
- Add native support for flow export over ZMQ
PF_RING Kernel Module
- Add support for VXLAN
- Add support for both sockaddr and sockaddr_ll in bind
- Refactor kernel locking
- Discard VLAN in hash cluster_per_flow_ip_with_dup_tuple calculation
- Detect when a process owning a PF_RING socket changes the PID (e.g. fork)
- Export process PID to userspace
- Fix compilation on latest kernels for Rocky Linux and RH 8.5, Debian 9, 10, 11, Ubuntu 18, 20, 22
- Fix net namespace handling
- Fix crash when renaming /proc entries
PF_RING Capture Modules
- Fix drop statistics on Napatech with HBA set
ZC Drivers
- New igb-zc driver v.5.10.2
- New i40e-zc driver v.2.17.4
- New ice-zc driver v.1.8.8
nBPF
- Fix double free
Application Examples
- New sample application pfsend_multichannel to send traffic using RSS
- New zdelay application to forward traffic between interfaces, adding a configurable delay
- pfcount_multichannel: remove limit on number of threads
- zbalance_ipc: improve hashing modes (e.g. add -Y to control eth type)
- pfcount:
- Add -0 to steer all traffic to RSS queueu 0
- Add -P to set rule priority
- ftflow_dpdk:
- Set RSS mode/hf (required on some adapters e.g. Mellanox)
- Use time from hardware timestamp when available
Misc
- Add support for Ubuntu 22
- Remove nBroker support (fm10k adapters are EOL)