滑动窗口协议与慢启动

来源:互联网 发布:js 中什么是全局对象 编辑:程序博客网 时间:2024/06/08 04:55

滑动窗口协议:

滑动窗口协议(Sliding Window Protocol),属于TCP协议的一种应用,用于网络数据传输时的流量控制,以避免拥塞的发生。该协议允许发送方在停止并等待确认前发送多个数据分组。由于发送方不必每发一个分组就停下来等待确认,因此该协议可以加速数据的传输,提高网络吞吐量。

这里写图片描述

(1)发送方不必发送一个全窗口大小的数据。
(2)来自接收方的一个报文段确认数据并把窗口向右边滑动,这是因为窗口的大小是相对于确认序号的。
(3)窗口的大小可以减小,但是窗口的右边沿却不能够向左移动。
(4)接收方在发送一个ACK前不必等待窗口被填满。

慢启动:

定义:

慢启动是一种TCP拥塞控制机制,基本思想是TCP开始在一个网络中传输数据或发现数据丢失并开始重发时,首先慢慢的对网路实际容量进行试探,避免由于发送了过量的数据而导致阻塞。

过程:

慢启动为发送方的TCP增加了另一个窗口:拥塞窗口。TCP发送方在初始阶段不是线性地增加其发送速率,而是以指数的速度增加,即每过一个RTT将拥塞窗口值翻倍(初始值为1个报文段)。TCP发送方继续以指数速度增加其发送速率,直到发生一个丢包事件,此时拥塞窗口值将被降为一半。发送方取拥塞窗口与通告窗口的最小值为发送上限。拥塞窗口是发送方使用的流量控制,而通告窗口则是接收方使用的流量控制

这里写图片描述