|
摘要:网络通信中,随着信息交换价值的提高,对可靠性的要求也越来越高。拥塞是由于网络中传送的信息分组数量过多而造成网络的传输性能下降的现象。本文首先介绍了拥塞产生的原因,然后详细介绍了几种控制拥塞的策略。
关键词:通信网络;拥塞现象;控制策略
中图分类号:TN929.11 文献标识码:A 文章编号:1001-9599(2011)23-0000-01
Congestion and Control Strategies Study of Communication Network
He Qiming
(China Tietong Telecommunications Corporatio,Shanghai Branch,Shanghai 200050,China)
Abstract:Network communication, information exchange with the increase in the value of the reliability requirements are also increasing. Network congestion is due to the number of packets in the transmission of information caused by excessive network transmission performance decline.This paper describes the causes of congestion,then details several congestion control strategies.
Keywords:Communication network;Congestion;Control strategy
拥塞是一种持续过载的网络状态,会导致网络传输性能下降,它可能只在一个小的局部区域产生影响,也可能使整个网络无法运行。拥塞控制可以保证要求传送的分组数不高于网络所能处理的分组数,从而保证网络的公平性和存活性的缓冲区分配控制。
一、拥塞产生的原因
产生拥塞的根本原因在于网络中被共享的资源有限,不能满足网络用户的要求。通过结点的存储转发的网络,其主要资源是链路的传输频带与结点中的缓存区。简单地说,由于无空缓冲区接收新的分组产生了拥塞,较详细地分析拥塞的原因有下面几种情况:①缓冲区容量有限。通常一个结点都连接有若干条物理链路,在链路级中为每条物理链路设置一组进程,并设置有一个公用缓冲池,通常为链路级上的诸进程所共享,此外,公用缓冲区有时还提供给分组中的进程使用。因此,在信息流量较大时,很容易发生因为无缓冲区接收新到达的分组而“拥挤”现象。②传输线路的频带有限。如果一个结点只具有一条输入和一条输出线,输入输出线又都具有相同的传输能力,此时不会出现什么问题。然而在单输入多输出时就会发生输入输出不匹配的情况,就可能会产生拥塞。③结点处理能力有限。当一个分组到达结点时,该结点要对它作一系列的处理。如果新分组到达的速度超过了处理机对所接收分组的处理速度时,结点中的分组就会越积越多,这同样会导致该结点的所有缓冲区装满,而无缓冲区来接收新到达的分组。此外,由于网络中某部分刚发生故障,也可能会导致拥塞。
二、控制拥塞的策略
控制拥塞的策略有很多种,下面介绍几种常见的控制拥塞的策略。
(一)缓冲区预分配。如果通信子网提供了虚电路服务,则在建立虚电路时,呼叫请求分组在路径子网中的各转接点上,边走边填表目,当它到达目的地时,那么后继的数据分组所要经过的路由也就确定了,并且所有的转接点的通信控制机(CCP)都在路由选择表中登记了该呼叫请求连接。我们修改分组交换的协议,让每个呼叫请求分组在它所经过的交换结点中预定一个或多个数据缓冲区。如果呼叫请求分组到达时,交换结点的缓冲区都被占用,则要么找另一条,要么返回一个忙信号给呼叫请求者。这样做的结果是,只要是呼叫请求连接成功了,就不会因无空缓冲区而产生拥塞。
如果给每个交换结点中的每条虚电路都分配一个永久性的缓冲,就不存在拥塞了。但是这种分配会造成了资源浪费。现在让我们考虑两个例子。首先是停止等待协议,对于单工电路,每条虚电路的每交换结点有一个缓冲区就够了;对于双工电路,每个方向上一个缓冲区也够了,当一帧信息到达时,交换结点把它转发出去之后才向发送端送回确认帧。确认意味着接收者已正确地收到了信息,并且已有空缓冲区,准备接收新的帧。其次是连续的ARQ协议,允许多个未处理的帧存在,所以在每个交换结点不得不为每条虚电路保留多个缓冲区。缓冲区的数目由连续发送的窗口大小数量而定,这样才能完全消除拥塞。(二)信息包丢弃法。第二种拥塞控制机制刚好与第一种相反。在第一种策略中,缓冲区是预先保留的。而在第二种方法中预先并不保留任何资源。如果信息包到来后,没有地方存放,则交换结点只是将其丢弃。如果子网为主机提供数据报服务,那么就只有采用丢掉信息包的办法来解决拥塞问题。如果子网提供虚电路服务,则必须在某处保存信息包的拷贝,以便以后能重新传输此信息包。一种可能性是让发送被弃信息包的交换结点不断检查超时并重发该信息包,直到它被收到。另一种可能性是让执行发送的交换结点在多次重发后即停止,要求超时的源端结点重新开始发送。随意丢弃信息包可能做得太过分。因为忽略从相邻结点来的含有确认的信息包,这显然是不合适的,该确认信息包或许会让结点放弃一个现已收到的信息包而释放一个缓冲区。然而,如果结点没有空余的缓冲区,则它不可能得到任何更多的信息包来查看它们是否含有确认。解决的办法是为每条输入线路永久性地保留一块缓冲区,以便能检查所有进来的信息包。这样做是合理的:让结点检查新到的信息包,在其内捎带确认后再丢掉。另一种做法是:携带了消息的信息包可以保存,用刚空出的缓冲区作为新输入缓冲区。(三)限制输出队的长度。由拥塞发生的原因可知,由于分组输出队列的长度没有限制,占用了全部可用的缓冲区,致使结点无缓冲来接收新到达的分组,因此我们可以通过限制输出队列长度的方法来避免网络拥挤的发生。此外,输出队列长度还将对传输时延产生十分重要的影响。在该方法中,由源主机向源结点提供的分组先送至输入缓冲区,然后根据该分组的目标地址,按照一定的路径选择算法来确定该分组的发送路径,并检查该路径的输出队列长度是否已达到规定的限制。若没有,则将输入缓冲区挂在输出队列上;否则,应阻塞源结点讲一步接收从源结点主机发来的分组。源结点中的监督程序将周期性地检查输出队列的长度。若发现其长度已小于限制值,则可将输入缓冲区挂在该输出队列上,并开放源结点使之能接收从源主机送来的分组。通过模拟实验表明,限制输出队列度的方法能使网络获得良好的传输性能,且成功地避免了拥塞的发生。(四)发放许可证。这是一种限制通信网信息分组总数的方法。在保持整个网络中信息分组总数为常量的情况下,开始时给每个结点都分配一定数量的“许可证”。有了许可证,结点才可以接受通信站输入的信息分组,并将信息分组和许可证一起转发出去。如果结点的许可证用完了,信息分组只有在通信站等待。当信息分组到达目的结点后,与信息分组一起传输的许可证就归该结点所有。
参考文献:
[1]吴建.基于多AGENT的网络拥塞控制的研究[J].黑龙江科技信息,2009,(02)
[2]丁振国,张莎莎.基于主动网络的拥塞控制策略[J].微计算机信息,2001,(21)
转载注明来源:http://www.ybaotk.com |
上一篇:浅谈高校无线网络发展下一篇:计算机控制技术在工业自动化生产线上的应用
|