【问题标题】:Packet reassembly at Network Layer libpcap网络层 libpcap 的数据包重组
【发布时间】:2023-03-24 01:03:01
【问题描述】:

环境

据我了解Network layer负责重组碎片数据报,然后将重组后的数据提供给上层Transport layer

我已经使用libpcap 收集了数据包跟踪,我想自己在第 3 层重新组装分段数据包。

This link 说我需要片段标志、片段偏移量、标识号和缓冲区值来重组片段。

问题

在第一段到达时,如何知道要初始化的缓冲区大小以完成数据报的重组。

谢谢。

【问题讨论】:

    标签: c tcp wireless tcp-ip libpcap


    【解决方案1】:

    IP 标头仅提供片段的大小。所以你需要保留一个最大可能 IP 数据包大小的缓冲区,即 65535 字节。只有得到最后一个分片,才能确定完整数据包的长度。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-11
      • 2017-04-19
      • 2014-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-05
      • 2018-07-01
      相关资源
      最近更新 更多