TCP 流量控制
为什么需要流量控制:在数据传输过程中,如果发送方发送数据的速度过快,接收方可能来不及接收,就会造成数据的丢失。流量控制的目的就是让发送方的发送速率不要太快,要让接收方来得及接收,从而保证数据传输的可靠性。
实现机制:滑动窗口:
基本原理:发送方和接收方在建立 TCP 连接时,接收方会告知发送方自己的接收窗口大小(rwnd),发送方根据这个值来调整自己的发送窗口大小(swnd),发送窗口内的是可以发送的数据。接收方在接收到数据后,会返回确认报文(ACK),告知发送方哪些数据已经成功接收,发送方根据这些确认信息来移动发送窗口,继续发送后续的数据。