TCP概述
- TCP 是一种面向连接的单播协议,在发送数据前,通信双方必须在彼此间建立一条连接。所谓的“连接”,其实是客户端和服务器的内存里保存的一份关于对方的信息,如 IP 地址、端口号等。
- TCP 可以看成是一种字节流,它会处理 IP 层或以下的层的丢包、重复以及错误问题。在连接的建立过程中,双方需要交换一些连接的参数。这些参数可以放在 TCP 头部。
- TCP 提供了一种可靠、面向连接、字节流、传输层的服务,采用三次握手建立一个连接。采用四次挥手来关闭一个连接。
TCP头部



TCP三次握手
TCP 三次握手
<aside>
💡 三次握手发生在客户端连接的时候,当客户端调用 connnect()
时,TCP协议会进行三次握手行为
</aside>
为什么两次握手不行?
两次握手是否可行?
<aside>
💡 两次握手时,客户端和服务端之间无法完全确认对方的状态,因此可能会导致半连接和老数据接收等问题
</aside>
三次握手的过程

TCP四次挥手
TCP 四次挥手
<aside>
💡
四次挥手发送在断开连接的时候,在程序中调用close()
时,会使用TCP协议进行四次挥手
</aside>