TCP协议-滑动窗口

滑动窗口的出现是因为我们我们得确人确认应答机制致使数据的传输效率比较低下,所以们就引入了滑动窗口

 

首先滑动窗口的大小是我们无需等待ack确认应答即可直接发送的数据最大值

比如说此图

TCP协议-滑动窗口

 

我们首先将4000字节的数据全部发送给对端,在我们发送数据的同时,对端也会给我们发送ack,一旦我们接收到了0-1000数据的ack(下一条数据时1001),那么我们的窗口就会往后移动,就是这样的

 

TCP协议-滑动窗口

 

 

如果发生的丢包

丢ack:这个没关系,因为ack中是有我们之前发送的消息全部收到,下一条应该发送什么数据的含义

丢数据:首先如果一旦发生了丢数据的情况,服务器端就会一直给客户端发送ack(下一条是丢失的数据包),发送若干次之后,我们客户端就会进行数据重传

 

TCP协议-滑动窗口