flyhobo
驱动小牛
驱动小牛
  • 注册日期2004-03-05
  • 最后登录2005-05-18
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:949回复:1

IP包分片问题

楼主#
更多 发布于:2004-05-19 09:05
UDP包发送数据,我在miniport中更改了其源目的地址和目的地址,当不需要分片时传送正常,而需要分片时接受端接受不到数据,不知和原因?

不需要分片时:修改了其源目的地址和目的地址后重新计算了IP和UDP校验和。
需要分片时:对于第一分片修改了其源目的地址和目的地址后重新计算了IP和UDP校验和。其余分片修改了其源目的地址和目的地址后重新计算了IP校验和。可是还是手不到,不知道还要做那些工作?我看了TCP/IP协议IP分片部分,但没找到答案:(

我把包住下来看了看,发现第一个分片应该没问题,对于第二的分片(也是最后一个分片)的offset有疑问,这里是185,怎么会是185哪?应该是1472吧?(第一个分片的数据长度)


[编辑 -  5/19/04 by  flyhobo]
好好过日子
shuangsy
驱动牛犊
驱动牛犊
  • 注册日期2004-03-15
  • 最后登录2018-05-26
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望41点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2004-05-19 21:16
具体解决措施我不会,但我建议你看看《Tcp/Ip详解》的一卷和二卷,一卷中讲的原理比较详细,二卷中有在UNIX下的实现源程序和讲解,应该会对你的问题有帮助的。
你说的分片应该是1472,那是指在以太网的环境下,如果这些数据包经过了一些其它带宽比较窄的网络,分片会小很多的。
 :)
以德服人
游客

返回顶部