处于TIME_WAIT状态下收到syn包(臆想篇,望指正)

处于TIME_WAIT状态下收到syn包

首先分析之前的四次挥手的过程:
服务端主动关闭链接,假设挥手的最后一个ack=301(表明期望这个socket的下一个报的seq为301),然后服务端处于TIME_WAIT状态

  1. 假设突然这个socket收到syn报seq刚刚好为301,那么被认为能够建立链接接收后面的报,完成三次握手
  2. 假设收到的syn报的seq位200小于301,tcp协议认为这个报,我已经收到过,然后直接丢弃掉
  3. 加入收到的syn报的seq为400大于301,tcp协议认为中间缺少301~400之间的报,可能是乱序或者丢包,需要等待,当然这个部分的数据肯定是一直等不到的,客户端收到每一个ack报中的ack都是301,而客户端却认为seq=301的报就没发过,应该会报错,从而终止链接

看我下面这篇文章
https://blog.youkuaiyun.com/qq_34827674/article/details/123227502
他又是画图,又是分析代码的,而我只有臆想,相当的不自信,希望大家指正

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值