如果我有一个大的 HTTP 数据包,它已被拆分为多个 TCP 数据包,我如何将它们重新构建为单个 HTTP 数据包?基本上,我在数据包中的哪个位置查看 HTTP 数据包何时开始/结束?我似乎看不到 TCP 标头中表示 HTTP 数据包开始或结束的任何标志/字段。
编辑:跟进回复。如果 TCP 管理流,它如何知道流何时开始和结束?那是由插座打开和关闭决定的吗?某些协议在某种程度上必须能够知道 HTTP 流/数据包何时开始和结束。这就是我想知道的。
我所处的情况是我在 C# 中使用数据包嗅探器读取 TCP 数据包,并且我希望能够重建 HTTP 请求/响应/等。像wireshark和其他各种嗅探器一样通过界面。或者,是否有任何 C# 库可以让您在更高级别访问 HTTP 流,从而让我不必自己重建 HTTP 流/数据包?
谢谢。