段重组

Reassembly of segments

我正在开发一个拦截各种流量的应用程序。最近我收到了 out-of-order 段。此流量通过 TCP。 SIP header 在多个段中。我正在尝试了解要遵循的协议,以重新组装乱序到达的数据包,以便能够在我的应用程序中显示它们。为了澄清数据是由 TCP 分段的。通过乱序接收,我的意思是:

  1. SIP INVITE header 上半部分收到较晚,second-half 较早。
  2. TCP seq 和 ack 是这样的,后收到的报文段应该先收到。

我将不胜感激任何关于建立协议来实现这一点的线索。

我怀疑您可能需要更深入地了解您的体系结构,因为 TCP 旨在按顺序传送数据包。

特别要检查的一件事是您是否以某种方式使用多个 TCP 连接,可能是为了提高带宽 - 如果不同的数据包可以采用不同的 TCP 连接,但在 TCP 连接传递内,这可能会导致无序传递应该还是可以的。