30TCP的阻塞控制
拥塞控制的原理:
(1)在某段时间,若对网络中某资源的需求超过了该资源所能提供的可用部分,网络的性能就要变坏。这种现象称为拥塞 (congestion)。
(2)若网络中有许多资源同时产生拥塞,网络的性能就要明显变坏,整个网络的吞吐量将随输入负荷的增大而下降。
出现拥塞的原因:
∑对资源需求 > 可用资源
问题:增加资源能解决拥塞吗?
解析:
不能。这是因为网络拥塞是一个非常复杂的问题。简单地采用上述做法,在许多情况下,不但不能解决拥塞问题,而且还可能使网络的性能更坏。
网络拥塞往往是由许多因素引起的。例如:
a.增大缓存,但未提高输出链路的容量和处理机的速度,排队等待时间将会大大增加,引起大量超时重传,解决不了网络拥塞;
b.提高处理机处理的速率会会将瓶颈转移到其他地方。
注意点:
拥塞控制与流量控制的区别:
(1)拥塞控制就是防止过多的数据注入到网络中,使网络中的路由器或链路不致过载。
(2)拥塞控制所要做的都有一个前提,就是网络能够承受现有的网络负荷。
(3)拥塞控制是一个全局性的过程,涉及到所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素。
(4)流量控制往往指点对点通信量的控制,是个端到端的问题(接收端控制发送端)。
(5)流量控制所要做的就是抑制发送端发送数据的速率,以便使接收端来得及接收。
易错点:拥塞控制和流量控制之所以常常被弄混,是因为某些拥塞控制算法是向发送端发送控制报文,并告诉发送端,网络已出现麻烦,必须放慢发送速率。这点又和流量控制是很相似的。
开环控制和闭环控制
(1)开环控制方法就是在设计网络时事先将有关发生拥塞的因素考虑周到,力求网络在工作时不产生拥塞。
(2)闭环控制方法是基于反馈环路的概念。属于闭环控制的有以下几种措施:
a.监测网络系统以便检测到拥塞在何时、何处发生。
b.将拥塞发生的信息传送到可采取行动的地方。
c.调整网络系统的运行以解决出现的问题。
监测网络的拥塞的指标:
主要指标有:
a.由于缺少缓存空间而被丢弃的分组的百分数;
b.平均队列长度;
c.超时重传的分组数;
d.平均分组时延;
e.分组时延的标准差,等等。