用Wireshark抓包是观察到某些tcp报文的info显示的是 [tcp segment of a reassembled PDU]
一开始百度搜索结果,一直没能理解到底是什么意思。
后来到google搜索,第一条搜索结果就足以解决了我的问题。。
首先,可以查看这条tcp报文的tcp协议字段
同时,我们查看这条报文的下一条报文的tcp协议字段
我们观察这两个tcp报文的sequence number,他们是紧接着的两个tcp报文。
那么,事实上tcp层会根据接收方的mss-------即最长报文大小(不含tcp头部),将超过大小的http报文,分片并封装到不同的tcp报文中。也就是http分片的长度要小于mss。
那么,为什么显示 [tcp segment of a reassembled PDU]的报文的协议是tcp,而它的下一条报文的协议是http?
不难理解,要收到最后一个http分片才能得到完整的http报文啊~
因此,在Wireshark中,选中最后一个分片所处的报文,就能看到重组后的http报文的完整信息。
参考链接:https://www.wireshark.org/lists/wireshark-users/200805/msg00206.html