跳转至

流量控制

来源:计算机网络 / 数据链路层/流量控制.md

什么是流量控制

流量控制是指由接收⽅控制发送⽅的发送速率,使接收⽅有⾜够的缓冲空间来接收每个帧。

数据链路层的流量控制

停止--等待协议

停⽌-等待流量控制是⼀种最简单的流量控制⽅法。接收⼀个帧都要反馈⼀个应答信号,表示可以接收下⼀帧,发送⽅每次只允许发送⼀个帧,接收⽅每发送⽅收到应答信号后才能发送下⼀帧。若发送⽅没有收到接收⽅反馈的应答信号,则需要⼀直等待。发送⽅每发送完⼀个帧,就进⼊等待接收⽅确认信息的过程中,因⽽传输效率很低。

异常

image.png

超时重传

发送方每次发送分组后设置一个超时计时器,略长于往返时间RTT,如果在超时计时器到期之前收到了接收方的确认,就撤销超时计时器

确认丢失

image.png

如果确认丢失,那么就会触发超时重传,接收方会在收到重复的分组之后丢弃,并发送确认

确认迟到

发送方收到重复的确认,什么也不做

信道利用率

image.png

忽略处理时延和排队时延 发送方发送分组的发送时延为\(T_D\),往返时间为RTT,接收方发送ACK的发送时延为\(T_A\),那么只有\(T_D\)时间是用于发送数据分组的,所以

\[ 信道利用率=\frac{T_D}{T_D+RTT+T_A} \]

使⽤上述的确认和重传机制,我们就可以在不可靠的传输⽹络上实现可靠的通信。像上述的这种可靠传输协议常称为==⾃动重传请求ARQ(Automatic Repeater Quest)==。意思是重传的请求是⾃动进⾏的,因此也可⻅到⾃动请求重传这样的译名。接收⽅不需要请求发送⽅重传某个出错的分组。

滑动窗口协议

相关笔记