深度解读三次握手和四次断开

TCP和UDP协议

目录

  • TCP和UDP协议
    • TCP协议
    • UDP协议

TCP协议

TCP/P协议簇的传输层协议主要有两个:TCP(传输控制协议)和UDP(用户数据报协议)。TCP是面向连接的,可靠的进程到进程通信的协议。TCP提供全双工服务,即数据可在同一时间双向传输,每一个TCP都有发送缓存和接收缓存,用来临时存储数据。
TCP是面向连接的协议,它的源点和终点之间建立一个虚连接。在数据通信之前,发送端与接收端要先建立连接,等数据发送结束后,双方再断开连接。TCP连接的每一方都是由一个IP地址和一个端口号组成的。TCP建立连接的过程称为三次握手,TCP断开连接分四步,也称为四次断开。
控制位含义
ACK:只有当ACK=1时,确认序列号字段才有效;当ACK=0时,确认序列号字段无效
SYN:同步序列号,TCP需要建立连接时将这个值设为1
FIN:发送端完成发送任务位,当TCP完成数据传输需要断开连接时,提出断开连接的一方将这个值设为1
TCP三次握手
深度解读三次握手和四次断开_第1张图片
1.发送方发送SYN请求给接收方。
2.接收方接收此请求后回复一个ACK并且发送一个SYN请求给发送方。
3.发送方接收到SYN请求后回应一个ACK。
TCP四次断开
深度解读三次握手和四次断开_第2张图片
1.发送方发送FIN请求给接收方。
2.接收方接收到此请求后回复一个ACK。
3.接收方发送一个FIN请求给发送方。
4.发送方回复一个ACK给接收方。
在TCP断开连接过程中,有一个半关闭的概念。TCP一方(通常是客户端)可以终止发送数据,但仍然可以接受数据,称为半关闭。具体描述如下:
1.客户端发送FIN报文段,半关闭了这个连接,服务器发送ACK报文段接受半关闭。
2.服务器继续发送数据,而客户端只发送ACK确认,不再发送任何数据。
3.当服务器把所有数据都发送完毕时,就发送FIN报文段,客户再发送ACK报文段,这样就关闭了TCP连接。

UDP协议

UDP是一个无连接,不保证可靠性的传输层协议,但是UDP的首部结构简单,在数据传输时能实现最小的开销,如果进程想发送很短的报文而不关心可靠性,就可以使用UDP。使用UDP发送很短的报文时,在发送端和接收端之间的交互要比使用TCP时少很多。

TCP和UDP对比
深度解读三次握手和四次断开_第3张图片
TCP和UDP的协议端口号及其功能
深度解读三次握手和四次断开_第4张图片
深度解读三次握手和四次断开_第5张图片

你可能感兴趣的:(深度解读三次握手和四次断开)