主机 A 向主机 B 连续发送了两个 TCP 报文段,其序号分包是 70 和 100 ,如果 A 发送的第一个报文段丢失了,但第二个报文段达到了 B ,B 在第二个报文段到达后向 A 发送确认,那么这个确认号是多少?
正确答案是70.
原因:
答案为70,收发两端各有两个字节流,TCP报文的序列号可以看作向对方发送字节流的起始位置,确认号可以看作他确认对方当前序号之前的字节已经全部接收。这道题是发端同时发送序号从70到99的字节流和从100到100+n的字节流,而收端只接受到了100到100+n的字节流,所以确认号是70,意思是我确认70之前的接收到了,而发端遇到这种情况会重发70到99的字节流(选择重传)或重发70到99以及100到100+n的字节流(退后n帧)。