计算机原理知识总结

TCP的连接与断开过程

2019-08-03  本文已影响0人  尤格萨隆

HTTP 是无连接的,所以作为下层的 TCP 协议也是无连接的,虽然看似 TCP 将两端连接了起来,但是其实只是两端共同维护了一个状态。

建立连接三次握手

在 TCP 协议中,主动发起请求的一端为客户端,被动连接的一端称为服务端。不管是客户端还是服务端,TCP 连接建立完后都能发送和接收数据,所以 TCP 也是一个全双工的协议。

起初,两端都为 CLOSED 状态。在通信开始前,双方都会创建 TCB。 服务器创建完 TCB 后遍进入 LISTEN 状态,此时开始等待客户端发送数据。

第三次握手可以包含数据,通过 TCP 快速打开(TFO)技术。其实只要涉及到握手的协议,都可以使用类似 TFO 的方式,客户端和服务端存储相同 cookie,下次握手时发出 cookie 达到减少 RTT 的目的。

断开链接四次挥手

TCP 是全双工的,在断开连接时两端都需要发送 FIN 和 ACK。

第三次挥手通过延迟确认的技术(通常有时间限制,否则对方会误认为需要重传),可以将第二次和第三次挥手合并,延迟 ACK 包的发送。

上一篇 下一篇

猜你喜欢

热点阅读