为什么我的计算机使用不同的端口与服务器进行 3 次 3 次握手 - Wireshark?

Why my computer doing 3 way handshake with a server 3 times with different ports - Wireshark?

我使用 Wireshark 捕获数据包,而我的计算机正在使用 TCP 连接到随机网站以进行分配。通常,在数据传输开始之前,应该有 3 个初始数据包(SYN、SYN-ACK、ACK)用于 3 次握手。

在我的例子中,有 9 个连接,3 个不同的 3 次握手;每个都是用我电脑的不同端口完成的。在每个端口都被接受后,数据传输将仅通过其中一个端口继续。

我不明白这背后的原因。谢谢!

浏览器打开多个到站点的连接是很常见的。这样做的原因是,使用 HTTP/1 时,单个 TCP 连接一次只能处理一个请求-响应,即多个请求彼此接续,而不是并行处理。要并行处理多个请求,浏览器需要打开多个 TCP 连接。由于连接设置需要一些时间,如果需要发送新请求,浏览器可能会打开多个到服务器的连接,以便已经建立一些连接。