2026 年 3 月 30 日(计算机网络)

学习资料:小林 coding:https://www.xiaolincoding.com/

计算机网络(三次握手和四次挥手)

三次握手第一次握手失败了怎么办

三次握手第一次是客户端发送 SYN 报文,报文中有一个序列号,如果第一次握手失败了,那么服务端就没有收到报文,也不会回 ACK 报文。客户端会重发几次 SYN 报文,还没有收到 ACK 的话就关闭连接。

三次握手第二次握手失败了怎么办

第二次握手是服务端给客户端返回一个 SYN + ACK,用来确认服务端收到了信息。如果第二次的握手没有成功,客户端会以为是自己发的 SYN 没有被收到,于是会重发 SYN,服务端发的 SYN + ACK 没有得到回复,也会继续重传。

三次握手第三次握手失败了怎么办

第三次是客户端返回给服务器端一个 ACK,这个不会重传。由于服务器端没有接受到 ACK,则会重发第二次的 SYN + ACK,重发几次之后还是失败,则关闭 TCP 连接。

三次握手能不能简化到两次

不可以,三次握手不能简化到两次。两次握手会导致历史 SYN 建立无效连接的问题。比如说有一个很久以前发的 SYN 包一直没到,有一次突然到了,结果服务器端就回了一个 SYN + ACK 报文,建立连接,那么就会浪费资源。如果有三次握手,客户端在收到这个 SYN + ACK 之后会发现序列号对不上,那么回一个 RST,服务器不建立连接,也不浪费资源。

四次挥手过程

第一次客户端发送一个 FIN 报文给服务器端的意思是客户端没有希望发送的数据了,但是仍然可以接受数据。服务器端接受到了 FIN 报文会回一个 ACK 报文代表它收到了。接下来的 Close_Wait 状态服务器给客户端发送数据。发送完成之后给客户端发送一个 FIN 报文。然后客户端再发一个 ACK 给服务器,之后断开连接。

四次挥手第一次失败了怎么办

第一次的 SYN 报文发送之后客户端会进入 FIN_WAIT 状态,如果 SYN 报文 服务器端一直没有收到的话,那么客户端再重发几次就会断开连接。

四次挥手第二次失败了怎么办

ACK 报文不会重传,由于第二次握手失败了,客户端会重传 FIN 报文,服务器端收到 FIN 报文再回一个 ACK 报文。

四次挥手第三次失败了怎么办

第三次握手是服务器端给客户端发 FIN 报文,通知客户端它的数据传输完了。如果丢失,服务器端收不到 ACK,则会启动重传。

四次挥手第四次失败了怎么办

第四次挥手是客户端回复一个 ACK 给服务器端,由于 ACK 不会重传,服务器端没有收到 ACK,就会一直重传 FIN。

四次挥手能不能变成三次

四次挥手可以变成三次。这个三次将第二次挥手和第三次挥手进行了合并,也就是将第二次 ACK 和 第三次 FIN 进行合并。当没有数据要发并且开启了 TCP 延迟确认之后就会将四次握手恢复成三次。

相关推荐
代码中介商9 小时前
DNS 完全指南:从域名解析到实战排查
计算机网络·dns
疯狂打码的少年21 小时前
【计算机网络】IPv6基础(特点、表示法、与IPv4对比)
网络·笔记·计算机网络
网安老伯1 天前
都2026年了,还在问网络安全怎么入门?看完这一篇你就懂了
运维·计算机网络·web安全·网络安全·wireshark·密码学·网络攻击模型
河北之花1 天前
计算机三级:BGQ
网络·tcp/ip·计算机网络·智能路由器
疯狂打码的少年1 天前
【计算机网络】网络互连设备(中继器 / 网桥 / 交换机 / 路由器 / 网关)
网络·笔记·计算机网络·智能路由器
shehuiyuelaiyuehao2 天前
1计算机是如何工作的
java·计算机网络
疯狂打码的少年2 天前
【计算机网络】子网掩码与子网划分计算(含CIDR表示法)
服务器·笔记·计算机网络·php
疯狂打码的少年2 天前
【计算机网络】UDP协议与TCP/UDP对比(面向连接vs无连接)
笔记·tcp/ip·计算机网络·udp
疯狂打码的少年2 天前
【计算机网络】IP地址与子网划分(IP地址分类与特殊地址)
网络·笔记·tcp/ip·计算机网络
疯狂打码的少年2 天前
【计算机网络】TCP协议(三次握手、可靠传输、流量控制)
网络·笔记·tcp/ip·计算机网络