第8章 传输层_流量控制

Posted 浅墨浓香

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第8章 传输层_流量控制相关的知识,希望对你有一定的参考价值。

5. 流量控制

(1)流量控制:就是让发送方的发送速率不要太快,要让接收方来得及接收

(2)流量控制原理

 

  ①在客户端向服务器发送TCP连接请求时TCP首部会包含客户端接收窗口的大小,服务器就会根据这个窗口调整自己发送窗口的大小。

  ②在传输过程中,客户端发送的确认数据包除了确认号还包含窗口信息,服务器收到确认数据包后,会根据窗口信息调整发送窗口。通过这种方法进行流量控制。

(3)流量控制过程

 

  ①在连接建立时,B告诉A“我的接收窗口(rwnd)为400字节”,这时A的发送窗口就被设置为400。(注意,ACK表示首部中的确认位,ack表示确认号)

  ②假设A发送第1~3分组出去,其中B收到1、2分组,但第3个分组丢失。这时A还没来得及发送第4个分组,就收到了B发送的的确认包(Ack=1,ack=201,rwnd=300,其中的rwnd是B根据自己当前的缓存情况给出的)

  ③A将自己的发送窗口调整为300第1次流量控制)并前移200字节,然后发送第4、5个分组。假设之后第3个分组超时重传时间到,就会接着发送第3个分组。

  ④B收到3、4、5分组以后发送确认,并根据自己缓存情况调用接收窗口(设为100)。

  ⑤A收到B的确认以后,调整发送窗口为100第2次流量控制),并发送第6个分组。

  ⑥B收到第6个分组后,缓存满就会发送(ACK=1,ack=601,rwnd=0)的确认包让A停止发送。

  ⑦A收到确认包以后将发送窗口调整为0第3次流量控制),然后停止发送。

  ⑧当B缓存有空间时,会调整接收窗口(400),并向A发送确认包(Ack=1,ack=601,rwnd=400)让A继续发送分组。如果B的这个确认包中途丢失,TCP为每一个连接设置了一个持续计时器只要一方收到零窗口通知,就启动计时器。计时器到时,就会发送一个零窗口探测报文要求对方给出窗口值,以避免A和B处于互相等待的死锁状态

以上是关于第8章 传输层_流量控制的主要内容,如果未能解决你的问题,请参考以下文章

计算机网络之数据链路层的流量控制可靠传输机制以及停止等待协议408_2

第8章 传输层_拥塞控制

流量控制发送窗口可靠传输

计网传输层(TCPUDP可靠传输流量控制......)

计网传输层(TCPUDP可靠传输流量控制......)

计网传输层(TCPUDP可靠传输流量控制......)