potato916305 发表于 2014-05-22 17:13

netfilter_queue处理数据包的问题

我已经实现把数据包从内核空间穿送到用户空间了

现在netfilter_queue在用户空间处理的过程是rec()接受一个数据包,调用nfq_handle_packet(),nfq_handle_packet()调用了nfq_create_queue(),数据包的处理是在nfq_create_queue()中,上面整个过程都是在一个一个数据包处理的。

现在我想实现网络延迟,例如等待1s后发送数据包,不是一个等待1s一个等待1s,而是一起等待1s。一个数据包等待1s,伤不起。。。

怎么解决。。。

potato916305 发表于 2014-05-23 14:10

:-L顶一下。

瀚海书香 发表于 2014-05-23 17:28

回复 1# potato916305
现在我想实现网络延迟,例如等待1s后发送数据包,不是一个等待1s一个等待1s,而是一起等待1s。一个数据包等待1s,伤不起。。。

这个就体现了内核不同的层做不同的事的思想。nfqueue是基于单个数据包来处理的,不好满足你的需求模型的。

你的需求应该放到traffic control层来实现,比如利用tc现有的流控算法,或者自己写一个模拟网络延迟的算法,都是比较容易实现这个需求的。

   

potato916305 发表于 2014-05-23 19:10

回复 3# 瀚海书香


    thank you! 浩瀚大大。。
页: [1]
查看完整版本: netfilter_queue处理数据包的问题