Defines | |
| #define | SNF_F_PSHARED 0x1 |
| #define | SNF_F_RX_DUPLICATE 0x300 |
| #define | SNF_F_RX_PRIVATE 0x100 |
| #define SNF_F_PSHARED 0x1 |
Device can be process-sharable. This allows multiple indpendent processes to share rings on the capturing device. This option can be used to design a custom capture solution but is also used in libpcap when multiple rings are requested. In this scenario, each libpcap device sees a fraction of the traffic if multiple rings are used unless the SNF_F_RX_DUPLICATE option is used in which case each libpcap device sees the same incoming packets.
| #define SNF_F_RX_DUPLICATE 0x300 |
Device can duplicate packets to multiple rings as opposed to applying RSS in order to split incoming packets across rings. Users should be aware that with N rings opened, N times the link bandwidth is necessary to process incoming packets without drops. The duplication happens in the host rather than the NIC, so while only up to 10Gbits of traffic crosses the PCIe, N times that bandwidth is necessary on the host.
When duplication is enabled, RSS options are ignored since every packet is delivered to every ring.
| #define SNF_F_RX_PRIVATE 0x100 |
Each ring can have private references to a ring instead of shared references. This flag may yield better capture behavior when the consumption rate of each rings varies enough to cause an important number of packet drops.
![]()
26 October 2010 Sniffer10G 1.0.2_pcap1.1.1