gpt4 book ai didi

c++ - libpcap (>1.0.0) 和 PF_RING 效率

转载 作者:太空狗 更新时间:2023-10-29 21:44:34 28 4
gpt4 key购买 nike

我正在使用 libpcap 1.4.0 来从/向设备捕获数据包(我正在使用 linux)。我正在遭受数据包丢失的困扰,经过研究,我发现了 PF_RING,现在我正在考虑使用它。

问题是,我真的不明白为什么使用 PF_RING 比使用 libpcap 的 PF_PACKET 更有效,当 libpcap 的默认数据包捕获方法是“零复制”(自 libpcap 1.0.0 起),以及 PF_RING 的.. .

有人能解释一下为什么在 libpcap 1.0.0 及更高版本中,使用 PF_RING 会比不使用它更有效(如果它实际上更有效的话)吗?

提前致谢! :)

最佳答案

根据 https://stackoverflow.com/a/8897187/288875从内核的套接字缓冲区(sk_buff)到您将要读取的内存仍然有一份拷贝。 PF_RING 似乎 执行此复制(据我所知 pfring bypass 处理从网卡接收的数据的正常内核机制)。

关于c++ - libpcap (>1.0.0) 和 PF_RING 效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19742654/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com