当两台主机采用 TCP 协议进行通信时,在交换数据前将建立连接
通信完成后,将关闭会话并终止连接
连接和会话机制保障了 TCP 的可靠性功能
请参见图中建立并终止 TCP 连接的步骤
主机将跟踪会话过程中的每个数据段,并使用 TCP 报头中的信息了解每台主机所接收到的数据
每个连接都代表两股单向通信数据流或者会话
若要建立连接,主机应执行三次握手
TCP 报头中的控制位指出了连接的进度和状态
三次握手: 1.确认目的设备存在于网络上; 2.确认目的设备有活动的服务,并且正在源客户端要使用的目的端口号上接受请求; 3.通知目的设备源客户端想要在该端口号上建立通信会话
在 TCP 连接中,充当客户端的主机将向服务器发起该会话
TCP 连接创建的过程分为三个步骤: 1
客户端向服务器发送包含初始序列值的数据段,开启通信会话; 2
服务器发送包含确认值的数据段,其值等于收到的序列值加 1,并加上其自身的同步序列值
该值比序列号大 1,因为 ACK 总是下一个预期字节或二进制八位数
通过此确认值,客户端可以将响应和上一次发送到服务器的数据段联接起来; 3
发送带确认值的客户端响应,其值等于接受的序列值加 1
这便完成了整个建立连接的过程
为了理解三次握手的过程,必须考察两台主机间交换的不同值
在 TCP 数据段报头中,有六个包含控制信息的 1 比特字段,用于管理 TCP 进程
这些字段分别是: URG — 紧急指针 ACK — 确认字段 PSH — 推送功能 RST — 重置连接 SYN — 同步序列号 FIN — 发送方已传输完所有数据 这些字段用作标志,由于它们都只有 1 比特大小,所以它们都只有两个值:1 或者 0
当值设为 1 时,表示数据段中包含控制信息
通过 4 步流程法,可以交换标志,以终止 TCP 连接
TCP三次握手 步骤 1: TCP 客户