三次握手四次挥手面经

本文详细探讨了TCP协议的三次握手过程及其原因,包括为何不能两次握手、三次握手的可靠性问题、初始序列号seq的意义。此外,还深入解析了四次挥手的必要性,解释了为什么不能合并第二次和第三次挥手,以及客户端在第四次挥手后等待2MSL的原因。内容涵盖了TCP连接建立与断开的关键细节。
摘要由CSDN通过智能技术生成

TCP三次握手?

第一次:客户端发送连接请求,将syn置1,发出一个初始序列号seq给服务器(告诉server我想建立连接发数据)
第二次:服务器收到客户端的syn = 1后,将自己的syn置1,ACK置1,产生一个 ack = 客户端的seq+1 并生成自己的seq 发送给客户端(回应client,好的我准备好了,你发数据吧)
第三次:客户端收到服务器回应,检查服务器的ACK = 1 & ack = seq+1,检查正确后将自己的ACK置1,产生一个 ack = 服务器的seq+1 ,发送给服务器。
		服务器再检查客户端回应的ACK = 1 & ack = seq+1 ,检查正确后不再回应,至此三次握手完成,连接建立(告诉server,那我现在就开始发数据了)

在这里插入图片描述

追问1:TCP可以两次握手吗?

不可以。
1.可能会导致已失效的连接请求又传到了服务器
	client发出的第一个连接请求并没有丢失,只是在某个网络结点长时间的滞留了,等到很久之后的某个时间才到达server。本来这是一个早已失效的请求,但是server并不知道这个请求是 client新发的还是已经失效的,于是就向client发出确认的回应(第二次握手)&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值