Print

收到三个重复确认

问:怎么判断是收到三个重复确认
  1. 答:可以打开TCP会话看一下,有可能是被SYN扫描了.当客户端发送 SYN包后,服务器端正常回应SYN ACK,但客户端不在发送后续的数据包,在一段时间后服务器端仍然没有收到客户端ACK数据包而再发两次SYN ACK包.
    不同的操作系统重传SYN ACK的时间和次数不尽相同,而且半连接状态的持续时间也有所不同。服务器端是Windows操作系统的话重复确认的间隔应该是3S,然后6S,然后21S发RST结束会话.
问:计算机网络中,tcp连接中快速重传为什么要三个重复ack,而不是两个或一个??
  1. 答:这就是协议了,明白吗?就像交通规则规定行人靠右行走一样。
  2. 答:3次ACK不是三次握手他娘的
  3. 答:大哥,这个就像现实中一样,有步骤的,比如你要找某个不认识的人一样:
    1先是举着大喇叭高呼一声:XXX,在吗?
    2XXX在的话,就会回应你:在,找我什么事?
    3 你就说:我要找你干神马神马。。。
    4XXX,答应或者不答应,但都会给你一个表示。。。
    呵呵 开开玩笑,不过道理是这样的,于是乎,为网络中一样的需要这样
  4. 答:说明接收方收到了比期待序号大的报文段,也就是产生了间隔,这个间隔产生可能是由于时延产生的,之所以发送3个ACK,是告诉发送方分组确实是丢了。
  5. 答:这是RFC 5681的规定, 收到连续三个重复ACK才触发快速重传。
    至于理由,大概是一次或两次重复ACK在多级多路由的复杂网络中很容易出现,所以协议制定方最终确定将这个系数取为3。实际上3次在某些情况下也是会被破坏的。
问:当发送方连续收到多个重复的TCP 确认报文,说明网络没有能力接受新的报文端这句话对吗?
  1. 答:不对 有可能是出现网络拥塞
  2. 答:确认号是本端期望收到的下一个序号,即为已成功收到的数据字节的序号加一。怎么设置要看你已经收到的数据的序号是什么。窗口是本端接收缓存还剩余的字节数,用来告诉对端发送数据的最大字节数,怎么设置要看本端的接收缓存剩余的空间大小。

本文来源: https://www.lw50.cn/article/4efa12a95b033324bf5f78ac.html