网络拥塞
计算机术语
网络拥塞(network congestion)是指在分组交换网络中传送分组的数目太多时,由于存储转发节点的资源有限而造成网络传输性能下降的情况。
定义
网络拥塞(congestion)是指在分组交换网络中传送分组的数目太多时,由于存储转发节点的资源有限而造成网络传输性能下降的情况。当网络发生拥塞时,一般会出现数据丢失,时延增加,吞吐量下降,严重时甚至会导致“拥塞崩溃”(congestion collapse)。通常情况下,当网络中负载过度增加致使网络性能下降时,就会发生网络拥塞。可由图 2.1 形象描述网络拥塞现象发生的过程。
网络拥塞形成的原因
因为在事先没有任何协商和请求许可机制的资源共享网络中,几个IP分组同时到达路由器,并期望经同一个输出端口转发的可能性是存在的,显然,不是所有分组可以同时接受处理,必须有一个服务顺序,中间节点上的缓存为等候服务的分组提供一定保护。然而,如果此状况具有一定的持续性,当缓存空间被耗尽时,路由器只有丢弃分组。在这种持续过载的状态下,网络性能会急剧下降。
存储空间限制
在每个输出端口有一定的存储空间,若一个输出端口被几个输入数据流共同使用,输入流的数据包就会在该存储空间内排队等待输出。当端口转发数据的速率低于数据包的到达速率时,会造成存储空间被占满的情形,后到达的数据包将被丢弃。突发数据流的此种现象更多。虽然从某种程度上来讲,存储空间的增加能够缓解输出端口的压力。但是存储空间无限制的增加,会导致数据包完成转发时,它们早已超时,源端认为这些数据包在传输过程中被丢弃而要求重发,不仅降低网络效率,而且使得网络拥塞情况更加严重。另外在实际应用中,存储容量不可能无限制的增加,不符合实际意义。
带宽容量的限制
通过实践证明低速链路难以应对高速数据流的输入,从而发生网络拥塞。依据香农理论,信源的发送速率必须小于或等于信道容量。因此,当源端带宽远大于链路带宽形成带宽瓶颈时,导致数据包在网络节点排队等待,造成网络拥塞。
处理器性能限制
路由器中的 CPU 主要执行缓存区排队、更新路由表、进行路由选择等功能,如果其工作效率不能满足高速链路的需求,就会造成网络拥塞。
在实际应用中,复杂的网络结构和不合理的路由原则也会造成网络拥塞现象的发生。
拥塞控制
解决网络拥塞的方法是拥塞控制(congestion control)。拥塞控制需要确保网络能够承载用户提交的通信量,是一个全局性问题,涉及主机、路由器等很多因素。衡量网络是否拥塞的参数主要有:缺乏缓冲区造成的分组丢失率、平均队列长度、超时重传的分组数目、平均分组延迟及分组延迟变化等。根据控制论,拥塞控制方法分为两类:第一类是开环控制,即通过设计一个好的算法来避免拥塞发生。在进行拥塞控制时,不考虑网络的当前状态。常用算法有:
1.源端拥塞控制算法
2.链路拥塞控制算法
第二类是闭环控制,即给予反馈机制,根据网络的当前状态来控制拥塞。反馈方法有以下几种:
1、向信息源发送一个告警数据报。
2、在数据包的结构中保留一个比特或一个域,用来表示发生拥塞。一旦发生拥塞,路由器对所有输出数据报中的相应比特进行设置,以此来向邻居告警。
3、主机或滤油器主动地、周期地发送探测数据报(probe),查询是否发生拥塞。
闭环拥塞控制的工作过程如下:
1、由监控系统来发现何时何地发生拥塞;
2、当发生拥塞时,将发生拥塞的消息传给能采取动作的站点;
3、调整系统操作,解决拥塞问题。
参考资料
最新修订时间:2023-02-07 17:17
目录
概述
定义
网络拥塞形成的原因
参考资料