Hi, PF_RING is great software, but I'm a little puzzled on how to use it. Suppose an application which has 6-8 CPU-intensive packet producer threads. Now we want to write the packets produced by these threads to some multiple 10G network interfaces...
What is the ideal architecture using PF_RING for high-throughput transmission? These are some options: 1- There is a consumer thread for each interface that reads the packets from a queue, and writes packets to the interface. Producer threads write packets to the queues of the consumer threads. 2- Each producer writes it packets to some ring of each network interface (without any consumer thread). I know Netmap supports that. PF_RING has a similar concept of rings, but I'm not sure that it really utilizes that network device rings. 3- Using a pf_ring cluster and multiple fan-in queues, and leaving the fan-out of the packets to pf_ring. This option is not ideal for me as pf_ring apparently doesn't support per flow fan-out. What architecture do you guys recommend? Please note the following in your answer: - What's the architecture? - Which of PF_RING ZC or PF_RING DNA you are recommending - Are you using non-blocking I/O or not? Thanks for your support. Best Regards _______________________________________________ Ntop-misc mailing list [email protected] http://listgateway.unipi.it/mailman/listinfo/ntop-misc
