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