netfilter限速

时间:2012-06-26 20:00:19

标签: linux-kernel netlink

我在1Gbit / sec网络上测试netlink过滤器应用程序:我有用户空间函数向netlink socket发送判决;另一个用户空间例程执行从netlink套接字和一些自定义过滤器功能的标记数据包的异步读取。对于比特率> 300 Mbps,我看到netlink套接字读取错误“没有可用的缓冲区空间”。我把它作为netlink缓冲区溢出。 有人可以推荐一种方法来改善高速网络的netlink吞吐量吗?我的内核版本是2.6.38。

1 个答案:

答案 0 :(得分:0)

内核到用户空间之间有套接字。通过套接字数据包上传到用户空间。套接字缓冲区已满,因此您收到错误。 在c中你可以定义套接字缓冲区大小并增加它(这是由netlink完成的)