I am new to Zeek and will be setting up a Zeek system which will use a 10G NIC. I am not sure what NIC/driver configuration to use, and have some questions about PF_RING and AF_Packet. At …
https://docs.zeek.org/en/current/cluster-setup.html#using-pf-ring
… it looks like PF_RING, also known as “Vanilla PF_RING” …
https://www.ntop.org/guides/pf_ring/vanilla.html#vanilla-pf-ring
… makes it possible to assign worker processes to CPU cores by using “packet clustering” …
https://www.ntop.org/guides/pf_ring/vanilla.html#packet-clustering
Is this essentially implementing symmetric Receive Side Scaling?
If so, can Vanilla PF_RING take advantage of a NIC which does symmetric hashing in hardware?
The Zeek docs reference PF_RING+DNA …
https://docs.zeek.org/en/current/cluster-setup.html#using-pf-ring
… although from looking at the ntop site, DNA/Libzero was replaced some time ago with PF_RING ZC (Zero Copy) …
https://www.ntop.org/guides/pf_ring/zc.html
Does Zeek support PF_RING ZC?
If so, in Zeek’s node.cfg, how does one know what options to use for …
interface=
lb_method=
It looks like the AF_Packet plugin …
https://github.com/J-Gras/zeek-af_packet-plugin
… does what Vanilla PF_RING does, in that it allows Zeek to have multiple worker processes which use different CPU cores. Can AF_Packet take advantage of a NIC which does symmetric hashing in hardware?
It looks like AF_Packet does not provide a “Zero Copy” type of functionality, found in PF_RING ZC. Is that correct?
I know this is a lot of questions. Any guidance is appreciated.
– Steve.