浏览器如何知道哪个数据包是对特定请求的响应?

浏览器如何知道哪个数据包是对特定请求的响应?

我正在嗅探 TCP 上的输入/输出数据包。我有一些 GET 输出,但我想知道哪个数据包是输入?浏览器如何确定这一点?

更简单的解释:我正在嗅探并且获得了所有 GET 请求,但我不确定如何将它们与 HTTP 200 OK 请求连接起来。

答案1

为了更好地理解,看一下整个维基百科上的 Http 文章但是上面你可以看到GET的“句柄”是由传输层(TCP)协调的:

HTTP 会话是一系列网络请求-响应事务。HTTP 客户端通过与服务器上的特定端口(通常是端口 80;请参阅 TCP 和 UDP 端口号列表)建立传输控制协议 (TCP) 连接来发起请求。监听该端口的 HTTP 服务器会等待客户端的请求消息。收到请求后,服务器会发回一个状态行,例如“HTTP/1.1 200 OK”,以及一条自己的消息。此消息的正文通常是所请求的资源,但也可能返回错误消息或其他信息。

相关内容