am receiving 5 Gigabit network traffic and I would like to process this traffic without data loss. I have tried to process this data with pf_ring in the Go programming language.
I have processed the network traffic with Go pf_ring on the nic card. While processing the data I also captured the traffic with tcpdump. Afterwhile I compared the differences between pf_ring and tcpdump. There were missing data at pf_ring pcap. So I have made some tests and I saw that while processing the network traffic with pf_ring, on average %70 data losses occuring. When I stopped the process at pf_ring data loss dropped to %0. Processing the network traffic even printing causes data loss.
I think this problem occurs due to the pf_ring ring buffer size. How can I increase the ring buffer size? If the cause is different how can I prevent the data loss?
am receiving 5 Gigabit network traffic and I would like to process this traffic without data loss. I have tried to process this data with pf_ring in the Go programming language. I have processed the network traffic with Go pf_ring on the nic card. While processing the data I also captured the traffic with tcpdump. Afterwhile I compared the differences between pf_ring and tcpdump. There were missing data at pf_ring pcap. So I have made some tests and I saw that while processing the network traffic with pf_ring, on average %70 data losses occuring. When I stopped the process at pf_ring data loss dropped to %0. Processing the network traffic even printing causes data loss. I think this problem occurs due to the pf_ring ring buffer size. How can I increase the ring buffer size? If the cause is different how can I prevent the data loss?
Case 1 0 drop
Case 2 A lot of drop packages