Skip to content

TCP 分段与重组 ​

🧩 大数据被 TCP 拆成多个段传输,r0capture 各段分别抓到。

为什么分段 ​

  • TCP 段受 MSS(最大段长,常 1460 字节)限制
  • 大 HTTP 响应(如图片/JSON)被拆成多个 TCP 段
  • 每段对应一次 SSL_read(接收)或被切分写入(发送)

r0capture 的视角 ​

每段触发一次 SSL_read,r0capture 各抓一次,pcap 里是多个独立包。

重组方法 ​

工具方法
Wireshark右键 → Follow → TCP Stream
tsharktshark -r x.pcap -z follow,tcp,ascii,0
手动按 src/dst addr+port 配对,按 seq 排序拼接

重组的依据 ​

同一个 TCP 连接 = 相同四元组(src_ip, src_port, dst_ip, dst_port)。r0capture 的 message 含这四元组,pcap 里每个包带,Wireshark 据此分组。

注意 ​

  • TLS 加密的是整个明文流,r0capture 在 SSL 层抓,已经是解密后的——所以重组 r0capture 抓的多个 chunk = 直接拼明文,不用管 TLS record 边界
  • 但 HTTP 层的 chunked/Content-Length 仍需 App 或分析者自行解析

相关文档 ​

基于 VitePress 构建 · 教学用途