gx_kyw
驱动牛犊
驱动牛犊
  • 注册日期2003-01-23
  • 最后登录2011-04-13
  • 粉丝0
  • 关注0
  • 积分40分
  • 威望7点
  • 贡献值0点
  • 好评度5点
  • 原创分0分
  • 专家分0分
阅读:1379回复:0

NDIS Hook 转发数据包的问题

楼主#
更多 发布于:2007-08-03 13:49
我写了一个NDIS转发驱动,
把收到的包提交到应用层,然后再由应用层转发给驱动,

并提交给TCP, 现在发现走了这个流程以后,速度慢了很多。

原来一个文件传输只要4分钟,现在要40分钟。


如果我只中转发送的包, 速度差不多,

但是如果转发 ProtocolReceivePacket  的数据包,
速度就会变得相当慢了。


ProtocolReceivePacket  中处理的流程是:

1、将数据包放到一个链表的后面,并设置事件,通知应用层读取。
2、直接返回0。


然后上层收到这个事件后,将这个包读取,并转发给驱动,
驱动收到这个包以后, 调用 原来的 ProtcolReceive 将数据包往TCP驱动提交。
游客

返回顶部