TCP 特性
-
面向连接:
- 在数据传输开始之前,TCP需要建立连接。这通常是通过三次握手(Three-Way Handshake)来实现的。
-
可靠性:
- TCP保证数据的可靠传输。它使用序列号、确认应答、重传机制等确保数据的完整性和顺序。
-
流量控制:
- TCP使用流量控制机制来确保发送方不会以超过接收方处理能力的速度发送数据。接收方通过滑动窗口协议来管理接收缓冲区的容量。
-
拥塞控制:
- TCP具有拥塞控制机制,防止网络过载。它通过算法(如慢启动、拥塞避免、快速重传、快速恢复)动态调整数据发送速率。
-
数据传输:
- TCP流是字节流的形式,没有消息边界。应用程序发送的数据被分成适当大小的段进行传输,接收方负责将这些段重新组装成完整的数据流。
TCP 三次握手过程
-
SYN:
- 客户端发送一个SYN(同步)包到服务器,表示客户端希望建立连接。此包中包含一个初始序列号。
-
SYN-ACK:
- 服务器回应一个SYN-ACK(同步-确认)包,确认收到客户端的SYN包,并包含服务器的初始序列号。