TCP 协议特点
面向连接、可靠的、基于字节流传输的的传输层协议。
传输层在网络中的作用
接收应用层应用程序产生的数据,对其进行加工,保证对端接收到数据后能发送给指定的应用程序。
网络参考模型
三次握手交互过程
PC1:发送建立连接的 TCP 报文(Seq:X,SYN = 1)
PC2:收到 PC1 的 TCP 请求建立连接报文,给 PC1 回复一个 TCP 响应报文(Seq:Z,SYN = 1, ACK:X + 1)
PC1:收到 PC2 的响应报文,开始发送数据,同时给 PC2 回复确认信息(Seq:X + 1, ACK:Z + 1)
至此,三次握手建立成功。
四次挥手
1. PC1:发出一个 FIN = 1 的不带数据的TCP段;
2. PC2:收到 PC1 发来的 FIN置位 的TCP报文后,会回复一个 ACK置位 的TCP报文。
3. 若 PC2 也没有需要发送的数据,则直接发送 FIN = 1 的TCP报文。假设此时 PC2 还有数据要发送,那么当 PC2 发送完这些数据之后会发送一个FIN = 1 的TCP报文去关闭连接。
4. PC1收到 FIN置位 的 TCP 报文,回复 ACK报文,TCP双向连接断开。