阅读:2815回复:3
请教:如何在win7下实现流控,traffic shaping?
我想在win7写一个流控软件,在功能上能达到限制指定程序的下载速度。TDI从vista开始已经开始被遗弃了,Winsock Kernel好像也只是提供一个kernel-mode Network Programming Interface,通俗的说就是kernel-mode socket编程,无法用来拦截别的程序的数据包。Windows Filtering Platform只能用来过滤数据:丢弃还是接受,不能用来对数据包排队限制带宽。如果使用NDIS IM driver,在这里限制接受的带宽,也会有问题,这样网卡提交上来的包就被IM放进队列,安装指定带宽的形式再提交给os,这样如果IM把太多的rx NetBufferList放在队列里,就会导致网卡的rx buffer被用光,这样网卡就会发pause,所有的包都收不进来了。
我下载了Netlimiter,BMW等流控软件,反汇编过来也没看出什么名堂,驽钝。各位大侠有何建议,Thanks a lot in advance!!! |
|
沙发#
发布于:2010-06-30 12:59
水池容量有限,进来的水多,出去水少时,总会有满的时候,这是只有丢掉数据包。这和使用tdi还是ndis没有关系。
建议看看linux的Qos |
|
|
板凳#
发布于:2010-12-14 12:08
DNISHOOK可以吗?和LWF是一个样子。 In WFP , tcp need dpc list,so donot sleep.
|
|
|
地板#
发布于:2010-12-14 12:08
…………
|
|
|