SharpShooter
驱动小牛
驱动小牛
  • 注册日期2002-04-07
  • 最后登录2013-07-05
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望40点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1627回复:13

关注:100分奉送,见者有份。

楼主#
更多 发布于:2003-02-27 14:35
加载一个NDIS中层驱动,对数据包进行处理,调用MPSend之前,IP CheckSum肯定是没有问题,但Sniffer抓包发现离开该机器的数据包
IP Checksum经常就变为0了!Ping包一般没有问题,访问网上邻居的SMB包总是有问题,导致无法搜索到目标机器。

不加载此驱动的情况下是好的。各位老大帮忙分析。

另外:很多机器中,仅此一台有问题!
写驱动不如买足彩!!
liuyan1
驱动老牛
驱动老牛
  • 注册日期2001-08-27
  • 最后登录2023-04-18
  • 粉丝0
  • 关注0
  • 积分1031分
  • 威望477点
  • 贡献值0点
  • 好评度187点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2003-02-27 20:00
不懂,顶顶!
楼上的客,楼下的客,听我老坎说明白,要苛屎有草纸,不要扯我的麦席子,要苛尿有夜壶,不要在床上划地图。
freducn2002
驱动小牛
驱动小牛
  • 注册日期2002-06-26
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望29点
  • 贡献值0点
  • 好评度7点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2003-02-28 09:13
关注
domore
驱动中牛
驱动中牛
  • 注册日期2002-04-06
  • 最后登录2008-04-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-02-28 20:40
顶一下。
lzwf4
驱动小牛
驱动小牛
  • 注册日期2002-10-10
  • 最后登录2006-06-09
  • 粉丝0
  • 关注0
  • 积分22分
  • 威望3点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-02-28 21:41
你是怎么处理的,能粘出代码看看吗?
SharpShooter
驱动小牛
驱动小牛
  • 注册日期2002-04-07
  • 最后登录2013-07-05
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望40点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-03-01 02:07
问题小弟已经解决了50%,情况是这样的:
大家都知道网卡的Task Offload功能,小弟也听说过,只是没有遇到过,这回终于遇到了,前面一句话可能对大家有误导:“另外:很多机器中,仅此一台有问题!”。事实是,该机器的网卡有Task Offload功能,且开启了Transimit TCP/IP Checksum的计算,但网卡的这种功能有些傻逼,它在计算校验和的时候,没有将checksum位置零,因此我们必须在数据包交给网卡驱动前将其置零,而我的驱动却没有考虑这件事,并在处理后更新了校验和,到了网卡再算一遍,当然每次都是零了。

对于这种情况,我想有两种做法:
1>  关闭Task Offload功能。
        这里要注意,DDK里所提到的:
HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Services\\TCPIP\\Paramters\\DisableTaskOffload
Setting this value to 0 disables all task offloads from the TCP/IP transport. Setting this value to 1 enables all task offloads.  
小弟试了是没有效果的,也不知是否试的方法不对,因为小弟没有在注册表里看到该项,于是就加了一个DWORD值。因此关闭Task Offload功能就只能借助于OID_TCP_TASK_OFFLOAD了,具体做法DDK里说的很详细了。另外,有些网卡驱动做的比较好,它会在网卡配置里显示各种Task的状态,你可以手动设置其是否启用。但手动改动和Driver里处理之间是个什么关系,小弟还不敢讲,因为晚上才刚刚装了一块。

2>  检查Tcp/Ip交过来的包,如果其IP Checksum为0,表明该功能已开启,则不重算;否则,处理之后重算。

上述两种方法都可以保证从网卡出去的数据包校验和是好的,只是小弟头一次遇到这个问题,目前还有些相关的现象不好解释,但问题还不明确,稍后再请各位分析。

希望遇到过、处理过相关问题的各位老大们不吝赐教,说的不对的地方,一定请予指正。

各位关注的老大,小弟有小分送上。

补:不是哥们不给分,谁能告诉我怎么给?哥们以前也不是没有给过分,可这回怎么折腾都说什么我不是起帖人或者已经给了分,kao!简直受不了。

[编辑 -  3/1/03 by  SharpShooter]
写驱动不如买足彩!!
w8zz
驱动小牛
驱动小牛
  • 注册日期2001-12-12
  • 最后登录2018-05-29
  • 粉丝0
  • 关注0
  • 积分9分
  • 威望23点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2003-03-01 09:43
你要给我的话~~~  估计给分动作就被允许了   :D
小熊和二申公豹 [img]http://www.driverdevelop.com/forum/upload/w8zz/2003-08-11_黑爸.jpg[/img] 二哥,三娃儿,快帮忙!
h_love
驱动牛犊
驱动牛犊
  • 注册日期2001-08-20
  • 最后登录2003-03-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-03-01 13:17
你用的什么网卡?
你的网卡,如果可以理解到IP层协议,那就可以内置ROUTER功能了。
别不是网卡驱动搞得鬼吧。不是网卡干的。
SharpShooter
驱动小牛
驱动小牛
  • 注册日期2002-04-07
  • 最后登录2013-07-05
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望40点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-03-01 14:57
你要给我的话~~~  估计给分动作就被允许了   :D

你老大也不是神人,本想100分都给了你,可系统不答应。我也没有法子了 :(
别不是网卡驱动搞得鬼吧。不是网卡干的。
我说的就是网卡驱动,DDK里有讲,Task Offload就是NIC Driver的事情。
写驱动不如买足彩!!
SharpShooter
驱动小牛
驱动小牛
  • 注册日期2002-04-07
  • 最后登录2013-07-05
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望40点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-03-01 17:14
我估摸着给不了分是因为当初新建此帖的时候分数设定为零的缘故,尽管后来改成了100分也不顶事了,改天重建一帖给各位放分吧。
写驱动不如买足彩!!
SharpShooter
驱动小牛
驱动小牛
  • 注册日期2002-04-07
  • 最后登录2013-07-05
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望40点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2003-03-02 00:46
终于搞定,我是说给分问题,感谢各位的关注。
写驱动不如买足彩!!
h_love
驱动牛犊
驱动牛犊
  • 注册日期2001-08-20
  • 最后登录2003-03-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2003-03-03 14:01
谢谢了,我只是没注意 RTL8139的卡是否有这个功能。如果有的话,做个ROUTER太方便了。 连 CRC都不用自己算了。
SharpShooter
驱动小牛
驱动小牛
  • 注册日期2002-04-07
  • 最后登录2013-07-05
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望40点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2003-03-03 18:26
谢谢了,我只是没注意 RTL8139的卡是否有这个功能。如果有的话,做个ROUTER太方便了。 连 CRC都不用自己算了。

我觉得凡是miniport driver都是网卡功能的扩展,因此如果厂商愿意做的话,网卡什么都可以做。
写驱动不如买足彩!!
SharpShooter
驱动小牛
驱动小牛
  • 注册日期2002-04-07
  • 最后登录2013-07-05
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望40点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2003-03-03 18:31
小弟在NDIS版中又发了一帖,请大家继续关注:
http://www.driverdevelop.com/forum/html_35549.html?1046686902
写驱动不如买足彩!!
游客

返回顶部