easychu
驱动牛犊
驱动牛犊
  • 注册日期2002-10-07
  • 最后登录2003-07-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1810回复:9

请教NDIS IMD的数据接收流程

楼主#
更多 发布于:2003-07-03 21:36
    各位开发过NDIS IMD的前辈,小弟看了好几天的passthru,却不知如何动手实现接收数据的截取,关键是这个流程没弄明白,下面是我的几点疑问,恳请指点,节省我几个晚上熬夜。
    玩过这个的都知道PtReceive是必须的,我的问题就只涉及它。PtReceive会面对两种数据接收情况:1).LookAheadBuffer里包含了完整的IP packet 2).没有包含全部packet
    对于1),我们可以很easily copy整个packet,进行一些自己的操作,然后NdisMIdicateReceivePacket交给上层协议驱动(其实对新手来讲,还有很多细节要抠--例如OOB之类的,我慢慢啃)。
    比较变态的是2),我不知道IMD什么时候将packet从底层NIC驱动接收好了(觉得在PtTransferDataComplete中),更不知道IMD是在哪儿Indicate上层Receive了,我还从哪儿下手来截取这个packet
呢?
    由此产生的问题是,按MS的DDK的说法,PtReceive要尽可能的快速返回,以免丢包,那么我要在交给交给上层之前对数据包的处理应该在哪儿进行?这岂不是难为人家?
    MS建议在PtReceiveComplete里进行postproccess,这可是post呀,都交给上层处理完了从上层返回来了,还有什么好处理的,是不是有点不可思议(肯定是我没理解人家的post)?
    急盼有过调试经历并且得出了可以合理解释的结果的大虾给以指点!这几天每坐到电脑前,想到这个问题都是一身汗呀!

最新喜欢:

ljmmaryljmmar...
antspower
驱动中牛
驱动中牛
  • 注册日期2002-10-17
  • 最后登录2010-08-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值2点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-07-04 08:26
想的挺深刻的。这是有人划的一个表
附件名称/大小 下载次数 最后更新
2003-07-04_passthru流程.doc (40KB)  39
放弃瘟草,现吃李草
easychu
驱动牛犊
驱动牛犊
  • 注册日期2002-10-07
  • 最后登录2003-07-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-07-04 16:59
你这厮,上班了吧?QQ上也不回我。:cool:你给的那份资料你感觉理解起来很正确么? 大家有看过这份资料的
\"请\"
做一下评论:按这个passthru的流程截取packet的话是不是可行?我及得好象老斑竹曾经说过这种方案实现起来比较费事,不知道大家意见如何?欢迎做过的高手给出实践经验,我一再强调这一点是因为好多人对这个的理解不是很充分,往往看一看例子就以为自己掌握了,所以众说纷纭,这给我们晚辈带来很多不必要的误解,如果调试过了,说话就会严谨很多,虽然不一定对,但是都是思考过的。
antspower
驱动中牛
驱动中牛
  • 注册日期2002-10-17
  • 最后登录2010-08-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值2点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-07-04 19:02
你这厮,上班了吧?QQ上也不回我。:cool:你给的那份资料你感觉理解起来很正确么? 大家有看过这份资料的
\"请\"
做一下评论:按这个passthru的流程截取packet的话是不是可行?我及得好象老斑竹曾经说过这种方案实现起来比较费事,不知道大家意见如何?欢迎做过的高手给出实践经验,我一再强调这一点是因为好多人对这个的理解不是很充分,往往看一看例子就以为自己掌握了,所以众说纷纭,这给我们晚辈带来很多不必要的误解,如果调试过了,说话就会严谨很多,虽然不一定对,但是都是思考过的。

我怎么没有会QQ,好象你和我很熟啊,我怎么不知道!!!
那份资料还可以,只是很多细节没说。
我感觉截取封报很简单,不过不与APP通讯的!!
高手说麻烦也不一定麻烦,只要你去做,做了才知道难不难!!!
关于收到包处理的4种情况已经说了N会了,
你自己找找。
至于实验的话,我想主要要靠自己吧。
古语有云“尽信书不如无书”
这是一个菜鸟给你的建议 :cool:
放弃瘟草,现吃李草
soloz
驱动牛犊
驱动牛犊
  • 注册日期2003-06-02
  • 最后登录2004-10-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-07-04 20:40
doc怎么看不到
easychu
驱动牛犊
驱动牛犊
  • 注册日期2002-10-07
  • 最后登录2003-07-08
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-07-05 10:48
soloz,我下载了呀!
antspower
难道出没于网络之间有两只蚂蚁?恰好都被我碰见了?呵呵
谢谢你的指点
可能着急了点,不想走太多弯路
所以在实现之前总想把这个完全弄明白了
实践当然要靠自己了。
学习ing...

soloz
驱动牛犊
驱动牛犊
  • 注册日期2003-06-02
  • 最后登录2004-10-13
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-07-06 14:56
easychu,我怎么下载不了?
能否Mail给我,soloz33@163.com
谢谢!!!
tu21cn
驱动牛犊
驱动牛犊
  • 注册日期2002-11-01
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分49分
  • 威望8点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-07-08 10:00
我也要。tu21cn@sohu.com
tu21cn
驱动牛犊
驱动牛犊
  • 注册日期2002-11-01
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分49分
  • 威望8点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-07-08 10:01
我也要。tu21cn@sohu.com :P
wywwwl
驱动大牛
驱动大牛
  • 注册日期2002-08-16
  • 最后登录2018-04-07
  • 粉丝1
  • 关注0
  • 积分-10分
  • 威望135点
  • 贡献值6点
  • 好评度76点
  • 原创分0分
  • 专家分0分
  • 社区居民
9楼#
发布于:2003-07-09 09:03
大家用flashget下啊
琢磨悟真知
游客

返回顶部