tcp连接和流流问题

网络工程 通讯协议 协议理论 线鲨 传输协议 转储
2021-08-02 01:07:58

任何人都可以在进行会话时解释 tcp 流的主要原理吗?

当我尝试浏览网站时,我进行了 tcp 转储。当我通过wireshark分析数据包时,我发现了许多用于一个站点浏览的三向握手过程。那是正常的吗?在流程下方:

1-[SYN], 2-[SYN,ACK],3-[ACK], 4-GET/HTTP/1.1, 5-HTTP/1.1 301 永久移动 (text/html), 6-[ACK],7- [ACK],8-[TCP DUP ACK6#1], 9-[SYN],10-[SYN,ACK], 11-[ACK], 12-Client Hello, 13-[ACK]

2个回答

你的问题的答案是肯定的,这很正常。现代网站使用多个 TCP 流来构建您在浏览器中看到的网页。文本和图像可以同时下载,使页面加载速度更快。此外,您可能会注意到,单个“页面”可能包含从许多不同服务器下载的组件。

浏览器可能会打开多个 TCP 连接,以便同时加载网页的不同部分。每个 TCP 连接都需要运行完整的 TCP 握手过程,因为它是一个单独的连接。

如果仔细观察,您会在每个连接上看到不同的源端口。连接由一对套接字(源和目标)标识,每个套接字由 IP 和 TCP 地址组成。如果您甚至更改了四个值(源或目标 IP 或 TCP 地址)中的一个,则它是不同的 TCP 连接,并且必须初始化该连接。