genius_hb
驱动牛犊
驱动牛犊
  • 注册日期2010-02-07
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分3分
  • 威望21点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1691回复:0

关于NDIS几种驱动之间的绑定问题

楼主#
更多 发布于:2010-02-08 21:24
不知道哪有关于这方面的资料,有知道的 谢谢告诉一下

对于NDIS中的绑定概念和绑定过程理解不时很清楚,借用一个例子来表达的我疑问:
DDK中说 在没有中间层(IM)驱动的 时候 ,协议驱动(protocol driver)直接绑定到小端口驱动(miniport driver)。
假设有一个协议驱动,两个小端口驱动(每个驱动对应一个NIC),NDIS会调用协议驱动的ProtocolBindAdapter2次?每个驱动一次。假设两次绑定都成功了,那么这时有2个协议到小端口的绑定?  (插入另外一个问题,有2个绑定时,协议会选择哪个发送包呢?这好像是协议驱动内部实现的问题,还是会给2个绑定的miniport 均发送?)

如果以上的认知是正确的 ,此时我安装一个IM驱动,DDK说IM驱动会插入到所有的 协议到小端口的绑定之间。
那么,NDIS在插入IM时是不是先断开前面的2个绑定?
插入IM时,在DeveiceEntry结束后, 会针对每一个小端口均调用IM的 ProtocolBindAdapter吗?
假设实现一个 filter IM,这时 对每一次ProtocolBindAdapter调用,IM均会生成一个新的虚拟adapter,这样便会有2个新的adapter(虚拟的),然后NDIS会对协议驱动分别针对这2个虚拟apdater调用ProtocolBindAdapter 吗?

如果上述认知是正确的 。
那在插入一个IM驱动时会是什么情况?

如果上面的认知有错误,希望能给以指点,或告知参考资料~~~~ 谢谢各位大牛
游客

返回顶部