网上没有明确的说明为什么三次握手中为什么确认号和序列号要加一,三次握手如下:

其中客户端的序列号在第二次握手中被服务端的确认号加一,而客户端在第三次握手将自己的序列号加一,在确认号中将服务端的序列号进行加一,那么这些序列号和确认号不加一行不行呢,答案肯定是不行的,这样设计肯定有他的道理。
先来看看实际数据收发的过程:

在图中可以看到序列号和确认号不一定加一,而是和发送和接收的数据有关。如果没有发送数据序列号是要加一的,但如果发送了数据则下一次发送的序列号就不是加一了而是加上发送的数据量,而如果没有接收到数据则确认号是要加一的,但如果收到了数据则下一次发送的确认号就不是加一而是加上收到的数据量。
同理,在四次挥手中也是如此,总结到这样应该就比较清楚了。
本文详细解析了TCP三次握手过程中序列号和确认号的作用原理。解释了它们如何根据数据的发送和接收情况变化,并且指出了在四次挥手过程中的相似规律。
5017

被折叠的 条评论
为什么被折叠?



