2.8 流量控制
2.8.1流量控制概述
2.8.2流量控制技术
第 2章 数据通信
2
2.8.1 流量控制概述
1,流量控制的含义
所谓 流量控制 就是调整发送信息的速率,接收结点能够及
时处理它们的一个过程。
2,流量控制的目的
? 流量控制是为了防止网络出现拥挤及死锁而采取的一
种措施 。当发至某一接收结点的信息速率超出该结点
的处理或转换报文的能力时,就会出现拥挤现象。因
此,防止拥挤的问题就简化为各结点提供一种能控制
来自其他结点的信息速率的方法问题。
第 2章 数据通信
3
2.8.1 流量控制概述
? 流量控制的另一目的是使业务量均匀地分配给
各个网络结点 。因此,即使在网路正常工作情况
下,流量控制也能减少信息的传递时延,并能防
止网络的任何部分(相对于其余部分来说)处于
过负荷状态。
第 2章 数据通信
4
2.8.2 流量控制技术
1,停止 -等待控制
停止 -等待控制方法 是最简单的一种流量控制技术,它采
用单工或半双工通信方式。当发送方发送完一数据帧后,便
等待接收方发回的反馈信号。若收到的是 肯定( ACK,
Acknowledgement ) 信息,则接着发送下一帧;若收到的是
否定( NAK,Negative AcKnowledgement ) 信息超时而没有
受到反馈信号,则重发刚刚发过的数据帧。
第 2章 数据通信
5
2.8.2 流量控制技术
下面我们以图 2.35为例,讨论停止 -等待控制方法的传输过程。
? 初始时,发送方当前发送的帧序号 N(s)=1,接收方将要接收的帧序
号 N(R)=1。
? 当发送方开始发送时,首先从缓冲区取出 0号帧发送出去。
? 当接收方收到发送方送来的 0号帧时,首先进行帧校验,如果校验正
确且帧序号一致,则向发送方返回一个肯定应答信号( ACK),然后
准备接收下一帧;如果帧校验有误或帧序号不一致,则向发送方返回
一个否定应答信号( NAK),要求发送方重新发送该数据帧。
? 发送方收到应答信号后,根据接收方返回的肯定或否定信号,确定
是发送下一数据还是重发原数据帧。
? 超时重发是指原数据帧,超时时间的设臵要适当,避免造成不必要
的浪费。
第 2章 数据通信
6
2.8.2 流量控制技术
停止 -等待流量控制的优点是控制简单,但也造成传输过
程中吞吐量的降低,从而使得传输线路的使用率不高。
图 2.35 停止 -等待方式
第 2章 数据通信
7
2.8.2 流量控制技术
2.滑动窗口流量控制
为了提高传输效率,使用滑动窗口控制方法是一种更为有
效的策略 。它采用全双工通信方式,发送方在窗口尺寸允许
的情况下,可连续不断的发送数据帧,这样就大大提高了信
道使用率。
第 2章 数据通信
8
2.8.2 流量控制技术
( 1) 发送窗口和接收窗口
?发送窗口 。 发送窗口是指发送方允许连续发送帧的序
号表 。 发送方在不等待应答而连续发送的最大帧数称
为发送窗口的尺寸 。
?接收窗口 。 接收窗口是指接收方允许接收帧的序号表 。
凡是发送到接收窗口内的帧, 才能被接收方所接收,
在窗口外的其它帧将被丢弃 。
?窗口滑动 。 发送方每发送一帧, 窗口便向前滑动一个
格, 直到发送帧数等于最大窗口数目时便停止发送 。
第 2章 数据通信
9
2.8.2 流量控制技术
( 2)窗口的滑动过程
发送窗口的大小(宽度)规定了发送方在未接到应答的情
况下,允许发送的数据单元数 。也就是说,窗口中能容纳的
逻辑数据单元数,就是该窗口的大小。
第 2章 数据通信
10
图 2.36 发送窗口的工作原理
2.8.2 流量控制技术
第 2章 数据通信
11
2.8.2 流量控制技术
图 2.37说明了接收窗口的移动窗口,其窗口大小为 4。
图 2.37 接收窗口的工作原理
第 2章 数据通信
12
2.8.2 流量控制技术
前面介绍了滑动窗口进行流量控制的基本原理, 具体实现时,
还有一些问题要处理, 如:
?窗口宽度的控制是预先固定化, 还是可适当调整 。
?窗口位臵的移动控制是整体移动, 还是顺次移动 。
?接收方的窗口宽度与发送方相同还是不同 。