每日一题:简述 TCP 三次握手、四次挥手的流程❓为什么需要三次握手❓为什么需要四次挥手❓

TCP(Transmission Control Protocol)是一种面向连接的协议,为了保证数据传输的可靠性,TCP 使用了三次握手和四次挥手的过程。

三次握手的过程如下🔽:

第一次握手🤝:小鱼🐟 想要与 小Y🐑 开始交流,于是 小鱼🐟 游到了 小Y🐑 面前,并向 小Y🐑 友好地挥动鱼鳍,表示他想要和 小Y🐑 开始交流,准备好了。(客户端向服务器发送 SYN 报文,请求建立连接)

第二次握手🤝:小Y 看到 小鱼🐟 的友好挥动,知道 小鱼🐟 想要和他交流。于是 小Y🐑 也跑过来,向 小鱼🐟 回应了一个友好的摆尾动作,表示他也准备好了,愿意和 小鱼🐟 开始交流。(服务器收到客户端的 SYN 报文,向客户端发送 SYN+ACK 报文,表示可以建立连接)

第三次握手🤝:小鱼🐟看到 小Y🐑 也友好地回应了摆尾动作,于是 小鱼🐟 也停下来,和 小Y🐑 一起用鱼鳍和尾巴进行握手,表示他确认 小Y🐑 也准备好了,现在他们可以开始正式交流了。(客户端收到服务器的 SYN+ACK 报文,向服务器发送 ACK 报文,表示连接已经建立)

为什么需要三次握手❓

三次握手的主要目的是确保双方的通信能力和参数都正常。这个过程可以防止已失效的连接请求报文段突然又传送到了服务器,导致资源浪费或混乱。

四次挥手的过程如下🔽:

第一次挥手👋:交流结束后,小鱼🐟 决定停止发送消息,他向 小Y🐑 挥动鱼鳍,表示他再发送消息了,但仍然愿意接收 小Y🐑 的消息。(客户端向服务器发送 FIN 报文,请求关闭连接)

第二次挥手👋:小Y🐑 看到 小鱼🐟 的挥鳍动作,知道 小鱼🐟 想要结束交流,于是 小Y🐑 也向 小鱼🐟 回应了一个摆尾动作,表示"好的,我知道了",并且停止发送消息,但仍然会接收 小鱼🐟 的消息。(服务器收到客户端的 FIN 报文,向客户端发送 ACK 报文,表示收到关闭请求)

第三次挥手👋:过了一会儿,小Y决定也停止发送消息了,于是 小Y🐑 向 小鱼🐟 摆动尾巴,表示他不再发送消息了,但仍然愿意接收 小鱼🐟 的消息。(服务器向客户端发送 FIN 报文,请求关闭连接)

第四次挥手👋:小鱼🐟 看到 小Y🐑 也不再发送消息,于是 小鱼🐟 也向 小Y🐑 回应了一个挥鳍动作,表示"好的,我们停止交流吧",并且停止发送消息。此时双方都知道不会再传输消息了,交流完全结束。(客户端收到服务器的 FIN 报文,向服务器发送 ACK 报文,表示收到关闭请求)

为什么需要四次挥手❓

四次挥手的目的是为了保证数据的完整性和可靠性。在关闭连接之前,双方需要确保所有数据都已经传输完毕,因此需要通过四次挥手的过程进行确认和处理。

总结💡:三次握手的本质是确认通信双方收发数据的能力 ,四次挥手的目的是关闭一个连接。

相关推荐
鲸屿19511 分钟前
Ansible之playbook
服务器·网络·ansible
绝世剑仙纪宁1 小时前
TCP 三次握手、四次挥手
网络·网络协议·tcp/ip
索迪迈科技1 小时前
HTTP中Payload的含义解析
网络·网络协议·http
小白学大数据2 小时前
构建企业级Selenium爬虫:基于隧道代理的IP管理架构
爬虫·tcp/ip·selenium
时空潮汐2 小时前
我用神卓 NAT 公网 IP 盒子搭建《我的世界》联机的经历
网络·网络协议·tcp/ip
liulilittle2 小时前
HTTP/3.0:网络通信的技术革新与性能飞跃
网络·网络协议·http·https·quic·流媒体·通信
岑梓铭2 小时前
计算机网络第四章(4)——网络层《ARP协议》
网络·笔记·tcp/ip·计算机网络·考研·408
Linux运维技术栈3 小时前
域名网页加载慢怎么解决:从测速到优化的全链路性能优化实战
运维·网络·nginx·性能优化·cloudflare
北极光SD-WAN组网3 小时前
基于智能组网设备的港口网络安全闭环管控方案设计与实践
网络·安全·web安全
妳人話3 小时前
TCP的三次握手和四次挥手
网络·网络协议·tcp/ip