首页
社区
课程
招聘
[求助]winpcap 关于tcp分段重组问题
发表于: 2010-12-21 15:51 9197

[求助]winpcap 关于tcp分段重组问题

2010-12-21 15:51
9197
有谁做过协议还原这块么? 本人想通过winpcap抓取数据包的方式。 得到访问的网页内容。 由于大多数网页都比较大。 大于MTU. 所以会对TCP数据包进行分段处理。 请问如何对TCP包进行分段重组还原呢? 望大侠出手帮助。 谢谢!

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 75
活跃值: (688)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
2
tcpip卷2 + reactos源码 tcpip.sys中间的tcpReceive()
我更想说的是。。直接拿reactos源码中tcp分组拼装的代码应用到你的模块中,多爽阿
2010-12-21 16:11
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
reactos源码在哪有下载? 你有么? 有的话给一份看看先 tw2050@163.com   谢谢了。
2010-12-22 15:57
0
雪    币: 267
活跃值: (235)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
4
通过tcp的序列号来重组
2010-12-22 18:47
0
雪    币: 138
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
TCP/IP卷一详解过TCP协议对于重组的算法,对于先后IP包的判断,首部检验和,TCP序号,动态控制流量窗口等的,二卷也有代码
2010-12-23 08:53
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
对于tcp的序列号:

1.  对于tcp同一个数据流的序列号。   本次包的序列号= 上次包的序列号 + 上次tcp包数据大小。
如:  假设数据流的第一个包的序列号为10,  第一个包的tcp数据大小为100. 那么数据流的第二个包序列号就为110;

2.  数据流的序列号,最大为2的32次方。 如果到了最大值后, 又重新置零处理。

问题: 如果一个tcp包的序列号正好跨越2的32次方。 那么下个tcp序列号会是什么?
       如。tcp数据流的第一个包的序号为2的32次方减10. 每一个包的大小为100. 那么此tcp数据流下个数据包的序号是什么?  1 还是90?

对于光判断序列号还有个问题。 不知道此个数据流什么时候结束。 起初, 我的想法是判断tcp的FIN或RESET标示位。 但有的时候, 访问一个网站后获取网页内容后。 此tcp连接并不会马上断开。 所以并不会置FIN标示位
2010-12-23 09:35
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
lz的需求还是直接看wireshark源码更符合吧
2011-1-6 15:43
0
雪    币: 167
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
用libnids吧
2011-1-6 16:25
0
游客
登录 | 注册 方可回帖
返回
//