网络拥塞现象原因以及控制方法分享

合集下载

网络拥塞解决方案

网络拥塞解决方案

网络拥塞解决方案一、引言网络拥塞是指网络中的流量超过网络链路或者节点的处理能力,导致网络性能下降,延迟增加,甚至造成数据丢失的现象。

为了解决网络拥塞带来的问题,我们需要采取一系列的解决方案来提高网络的吞吐量和性能。

二、网络拥塞的原因1. 流量过载:当网络中的流量超过链路或者节点的处理能力时,会导致网络拥塞。

2. 网络瓶颈:网络中存在瓶颈链路或者节点,其处理能力有限,容易成为网络拥塞的瓶颈。

3. 网络设备故障:网络中的路由器、交换机等设备浮现故障时,可能引起网络拥塞。

4. 不合理的网络设计:网络拓扑结构不合理、链路带宽分配不均等因素也会导致网络拥塞。

三、网络拥塞解决方案1. 流量控制a. 使用流量控制算法:通过限制发送端的发送速率,控制流量的大小,防止过多的流量进入网络。

b. 配置流量优先级:为不同类型的流量设置优先级,确保重要的流量能够得到优先处理。

2. 拥塞控制a. 使用拥塞控制算法:如TCP的拥塞控制算法,通过动态调整发送速率、重传丢失的数据包等方式,控制网络中的拥塞程度。

b. 配置拥塞避免机制:设置合理的拥塞窗口大小、超时时间等参数,避免网络拥塞的发生。

3. 增加带宽a. 扩展网络链路:增加网络链路的带宽,提高网络的吞吐量。

b. 使用链路聚合技术:将多条低带宽的链路合并成一条高带宽的链路,提升网络的传输能力。

4. 优化网络拓扑结构a. 重新设计网络拓扑:根据实际需求,合理规划网络拓扑结构,避免瓶颈链路和节点的浮现。

b. 使用多路径路由技术:通过使用多条路径传输数据,减少单一路径上的拥塞,提高网络的负载均衡能力。

5. 配置QoS(Quality of Service)策略a. 根据应用需求,设置不同的服务质量等级,确保重要的应用能够获得足够的带宽和优先级。

b. 使用流量整形和流量调度技术,对不同类型的流量进行限制和调度,保证网络资源的合理利用。

6. 定期监测和优化网络性能a. 使用网络性能监测工具,定期对网络进行监测和诊断,及时发现和解决网络拥塞问题。

网络拥塞解决方案

网络拥塞解决方案

网络拥塞解决方案一、背景介绍随着互联网的迅猛发展,网络使用量不断增加,网络拥塞问题也日益突出。

网络拥塞会导致网络延迟增加、数据传输速度下降,给用户的网络体验带来负面影响。

因此,制定一套网络拥塞解决方案对于保障网络畅通和提高用户体验至关重要。

二、网络拥塞的原因1. 网络带宽不足:当网络带宽无法满足用户的需求时,网络拥塞就会发生。

2. 网络设备故障:网络设备的故障或者失效会导致网络拥塞,例如路由器故障、交换机故障等。

3. 网络流量突增:当某个特定时间段内网络流量蓦地增加,超过网络的处理能力时,就会导致网络拥塞。

4. 网络攻击:网络攻击(如DDoS攻击)会使网络资源被浪费在无用的请求上,从而导致网络拥塞。

三、网络拥塞解决方案1. 增加网络带宽:提升网络带宽是解决网络拥塞的有效方法。

可以通过升级网络设备、增加网络链路数量等方式来增加带宽。

同时,可以根据用户需求进行带宽分配,优先满足关键业务的网络需求。

2. 优化网络设备:对网络设备进行优化和升级,提高设备的处理能力和性能,以应对网络拥塞的挑战。

例如,使用高性能的路由器和交换机,增加缓存容量等。

3. 流量管理和优化:通过流量管理和优化技术,对网络流量进行合理分配和调度,以保证网络资源的有效利用。

可以使用流量控制、流量整形、流量分流等技术手段来降低网络拥塞的发生概率。

4. 网络监测和预警:建立有效的网络监测系统,及时监测网络状态和流量变化,当网络拥塞发生时能够及时发出预警信号,以便采取相应措施。

可以使用网络流量分析工具、网络性能监测工具等来实现网络监测和预警功能。

5. 安全防护措施:加强网络安全防护,防止网络攻击对网络造成拥塞。

可以使用防火墙、入侵检测系统、DDoS防护系统等安全设备来提高网络的安全性和抵御网络攻击能力。

四、解决方案的效果评估为了评估解决方案的效果,可以进行以下指标的监测和评估:1. 网络延迟:通过测量网络延迟时间来评估解决方案的效果。

网络延迟时间越短,说明网络拥塞问题得到了有效解决。

网络拥塞解决方案

网络拥塞解决方案

网络拥塞解决方案一、背景介绍随着互联网的迅猛发展,人们对于网络的依赖程度也越来越高。

然而,由于网络用户数量的急剧增加以及网络应用的不断扩展,网络拥塞问题逐渐显现。

网络拥塞会导致网络延迟增加、数据传输速度下降、服务质量下降等一系列问题,严重影响用户体验和业务运行。

因此,寻找有效的网络拥塞解决方案成为当务之急。

二、问题分析1. 网络拥塞的原因网络拥塞的原因主要包括:网络带宽不足、网络流量过大、网络设备性能不足、网络协议不合理等。

这些原因导致网络资源无法满足用户的需求,从而造成拥塞。

2. 网络拥塞的影响网络拥塞会对用户体验和业务运行产生负面影响。

首先,网络拥塞会导致网络延迟增加,用户访问网页、观看视频等操作变得缓慢,影响用户体验。

其次,网络拥塞会导致数据传输速度下降,影响大规模数据传输和实时应用的正常运行。

最后,网络拥塞还可能引发网络故障,造成网络服务不可用,给企业和用户带来经济损失。

三、解决方案针对网络拥塞问题,可以采取以下解决方案:1. 提升网络带宽网络带宽是解决网络拥塞问题的关键。

通过增加网络带宽,可以提高网络资源的供给能力,减少网络拥塞的发生。

可以采用升级网络设备、增加网络链路、使用高速光纤等方式来提升网络带宽。

2. 流量控制与调度流量控制与调度是解决网络拥塞的重要手段。

通过合理控制和调度网络流量,可以避免网络流量过大而引发拥塞。

可以采用流量限制、流量优化、流量分流等策略来控制和调度网络流量。

3. 网络设备优化网络设备的性能直接影响网络的稳定性和流量处理能力。

通过优化网络设备的配置和参数设置,可以提高网络设备的性能,增强网络的抗拥塞能力。

可以采用设备升级、优化路由算法、增加缓存等方式来优化网络设备。

4. 协议优化网络协议是网络通信的基础,对网络拥塞有着重要影响。

通过优化网络协议,可以减少网络拥塞的发生。

可以采用拥塞控制算法、流量控制机制、分组调度策略等方式来优化网络协议。

5. 引入新技术随着科技的不断进步,新技术不断涌现,可以为解决网络拥塞问题提供新的思路和方法。

网络拥塞的原因、分类、检测方法及解决方案

网络拥塞的原因、分类、检测方法及解决方案

网络拥塞的原因、分类、检测方法及解决方案网络拥塞是计算机网络中的一种常见问题,它会导致网络性能下降、数据包丢失和延迟增加等问题。

因此,解决网络拥塞问题对于保障网络的稳定性和可靠性至关重要。

本文将详细介绍网络拥塞的原因、分类、检测方法以及解决方案。

一、网络拥塞的原因网络拥塞的原因主要有以下几个方面:1.带宽不足:当网络中的数据传输量超过了网络的带宽容量时,就会导致网络拥塞。

这种情况通常发生在高流量的网络环境中,例如视频流媒体服务、在线游戏等。

2.路由器瓶颈:当路由器的处理能力不足以处理大量的数据包时,就会导致网络拥塞。

这种情况通常发生在路由器硬件老化或者配置不当的情况下。

3.网络拓扑结构不合理:当网络中的拓扑结构不合理时,就会导致数据包传输路径过长,从而增加了数据包的传输延迟和丢包率。

4.恶意攻击:当网络遭受到恶意攻击时,就会导致网络拥塞。

例如DDoS攻击会向目标服务器发送大量的请求,导致服务器无法正常响应其他用户的请求。

二、网络拥塞的分类根据网络拥塞发生的位置和原因,可以将网络拥塞分为以下几个类型:1.链路拥塞:当网络中的某个链路的带宽不足以满足数据传输的需求时,就会导致链路拥塞。

链路拥塞通常发生在局域网内部或者广域网连接中。

2.节点拥塞:当网络中的某个节点的处理能力不足以处理大量的数据包时,就会导致节点拥塞。

节点拥塞通常发生在路由器、交换机等设备上。

3.全局拥塞:当整个网络的带宽都不足以满足数据传输的需求时,就会导致全局拥塞。

全局拥塞通常发生在大规模的互联网环境中。

三、网络拥塞的检测方法为了及时发现和解决网络拥塞问题,需要采用一些检测方法来监测网络的状态。

常用的网络拥塞检测方法包括以下几种:1.带宽利用率监测:通过监测网络中的带宽利用率来判断是否存在拥塞现象。

如果带宽利用率超过了一定的阈值,就说明网络出现了拥塞。

2.丢包率监测:通过监测网络中的丢包率来判断是否存在拥塞现象。

如果丢包率超过了一定的阈值,就说明网络出现了拥塞。

网络拥塞解决方案

网络拥塞解决方案

网络拥塞解决方案一、引言网络拥塞是指在网络传输过程中,由于网络流量过大或网络资源不足等原因,导致网络传输速度变慢、延迟增加或丢包率上升的现象。

网络拥塞的出现会影响用户体验,降低网络性能,甚至导致网络服务不可用。

因此,制定有效的网络拥塞解决方案对于保障网络畅通和提升用户体验至关重要。

二、网络拥塞原因分析1. 网络流量过大:随着互联网的快速发展,用户对于网络资源的需求也越来越大,网络流量不断增加,超出了网络设备的处理能力。

2. 网络资源不足:网络设备、带宽等网络资源有限,无法满足大量用户同时访问的需求。

3. 网络设备故障:网络设备出现故障或配置错误,导致网络传输效率低下。

4. 网络协议问题:某些网络协议设计不合理,导致网络传输过程中出现拥塞。

三、网络拥塞解决方案1. 增加网络带宽增加网络带宽是解决网络拥塞最直接有效的方法之一。

通过扩容网络带宽,可以提高网络传输速度,减少拥塞的发生。

可以采取以下措施:- 与网络服务提供商协商,增加带宽的供应量。

- 使用负载均衡技术,将网络流量分散到多个网络链路上,提高整体网络传输能力。

2. 优化网络设备优化网络设备的配置和性能可以提高网络的传输效率,减少拥塞的发生。

可以采取以下措施:- 对网络设备进行定期维护,确保设备的正常运行。

- 更新网络设备的固件和驱动程序,提升设备的性能和稳定性。

- 配置合理的缓存和队列参数,优化网络传输的流程和效率。

3. 网络流量管理通过对网络流量进行管理和控制,可以有效减少网络拥塞的发生。

可以采取以下措施:- 使用流量控制技术,对网络流量进行限制,防止某些应用或用户占用过多的网络资源。

- 使用流量分析工具,对网络流量进行实时监测和分析,及时发现拥塞的迹象并采取措施解决。

4. 网络协议优化优化网络协议设计和实现,可以提高网络传输的效率和稳定性,减少拥塞的发生。

可以采取以下措施:- 优化网络协议的算法和机制,减少网络传输的延迟和丢包率。

- 使用拥塞控制算法,及时调整网络传输的速率,避免拥塞的发生。

网络拥塞解决方案

网络拥塞解决方案

网络拥塞解决方案一、背景介绍在当今高度数字化的社会中,网络已经成为人们生活和工作中不可或缺的一部分。

然而,随着互联网的普及和使用量的不断增加,网络拥塞问题也逐渐凸显出来。

网络拥塞会导致网速变慢、延迟增加、数据丢失等问题,给用户的网络体验和工作效率带来了很大的困扰。

因此,寻找网络拥塞解决方案已经成为一个紧迫的问题。

二、原因分析网络拥塞的原因可以有很多,下面列举几个常见的原因:1. 网络带宽不足:当网络上的数据流量超过网络带宽的承载能力时,就会出现拥塞现象。

2. 网络设备性能不足:网络设备的处理能力无法满足大量数据的传输需求,导致网络拥塞。

3. 网络拓扑结构不合理:网络拓扑结构设计不合理,导致网络流量无法正常流动,从而造成拥塞。

4. 网络攻击:网络攻击如DDoS攻击等会导致网络拥塞,使合法用户无法正常访问网络资源。

三、网络拥塞解决方案针对以上原因,我们可以采取以下网络拥塞解决方案,以提高网络的性能和稳定性:1. 提升带宽通过增加网络带宽,可以提高网络的传输能力,降低网络拥塞的发生概率。

可以采取以下措施来提升带宽:- 升级网络设备:使用更高性能的交换机、路由器等网络设备,提高数据传输能力。

- 增加网络链路:增加网络链路的数量和带宽,扩大网络的传输能力。

- 使用负载均衡技术:通过负载均衡技术,将网络流量均匀地分配到多个链路上,提高网络的整体传输能力。

2. 优化网络设备性能网络设备的性能对网络的传输能力有着直接的影响,因此需要对网络设备进行优化,提高其性能。

可以采取以下措施来优化网络设备性能:- 更新设备固件:定期更新网络设备的固件,以获取最新的性能优化和功能改进。

- 配置硬件加速:启用网络设备的硬件加速功能,如硬件加速交换机等,可以提高数据传输速度和处理能力。

- 优化网络设备配置:合理配置网络设备的缓冲区、队列长度等参数,以提高网络设备的性能。

3. 优化网络拓扑结构合理的网络拓扑结构可以提高网络的传输效率和可靠性,减少网络拥塞的发生。

网络拥塞解决方案

网络拥塞解决方案

网络拥塞解决方案一、引言网络拥塞是指网络中的数据流量超过了网络设备的处理能力,导致网络传输速度变慢、延迟增加甚至丢包的现象。

网络拥塞对于用户体验和网络性能都有很大的影响,因此需要采取相应的解决方案来应对网络拥塞问题。

二、网络拥塞的原因1. 网络设备性能不足:网络设备的处理能力无法满足当前网络流量的需求,导致网络拥塞。

2. 网络链路带宽不足:网络链路的带宽限制了数据的传输速度,当数据流量超过链路带宽时,就会导致网络拥塞。

3. 网络协议设计不合理:某些网络协议设计存在缺陷,容易导致网络拥塞,例如TCP拥塞控制算法的不完善。

三、网络拥塞解决方案1. 增加带宽:增加网络链路的带宽可以提高网络传输速度,减少网络拥塞的可能性。

可以通过升级网络设备、购买更高带宽的网络链路等方式来实现。

2. 流量控制:通过对网络流量进行控制,限制网络中的数据流量,防止网络拥塞的发生。

可以使用流量控制算法,根据网络设备的处理能力和链路带宽来控制数据的传输速度。

3. 拥塞控制:拥塞控制是指在网络拥塞发生时,通过采取一系列的措施来减少网络拥塞的程度。

可以使用拥塞控制算法,如TCP的拥塞控制算法,通过调整数据的传输速度和重传机制来减少网络拥塞。

4. 负载均衡:通过将网络流量分散到多个网络设备上,实现负载均衡,可以提高网络的处理能力,减少网络拥塞的可能性。

可以使用负载均衡设备或者软件来实现负载均衡。

5. 缓存技术:通过使用缓存技术,将常用的数据缓存在网络设备中,可以减少对网络的访问请求,提高网络的响应速度,减少网络拥塞的发生。

6. QoS(Quality of Service)技术:QoS技术可以对网络流量进行分类和优先级设置,保证重要数据的传输质量,减少网络拥塞对重要数据的影响。

7. 网络优化:通过对网络进行优化,如优化网络拓扑结构、调整网络设备的配置参数等方式,可以提高网络的性能,减少网络拥塞的可能性。

四、网络拥塞解决方案的实施步骤1. 分析网络拥塞的原因和程度:通过对网络流量、设备性能、链路带宽等进行分析,确定网络拥塞的原因和程度。

网络拥塞解决方案

网络拥塞解决方案

网络拥塞解决方案一、背景介绍随着互联网的快速发展,网络拥塞问题日益突出。

网络拥塞指的是网络中的数据流量超过了网络链路或节点的处理能力,导致网络传输速度变慢,延迟增加,甚至无法正常使用网络服务。

网络拥塞不仅影响用户体验,还会对企业的业务运营造成严重影响。

因此,寻找网络拥塞解决方案成为当下亟待解决的问题。

二、网络拥塞原因分析1. 网络流量激增:随着云计算、物联网、大数据等技术的广泛应用,网络流量呈现爆炸式增长,导致网络拥塞问题日益突出。

2. 网络设备性能瓶颈:网络设备的处理能力有限,无法满足高速、大容量的数据传输需求,容易导致网络拥塞。

3. 网络拓扑结构不合理:网络拓扑结构不合理、链路负载不均衡会导致数据传输瓶颈,从而引发网络拥塞。

4. 网络安全攻击:网络攻击(如DDoS攻击)会导致网络流量剧增,造成网络拥塞。

三、网络拥塞解决方案1. 增加带宽增加带宽是解决网络拥塞问题最直接有效的方式之一。

通过提升网络链路的传输能力,可以满足更大规模的数据传输需求。

可以与网络服务提供商合作,升级网络套餐,获得更高的带宽。

2. 网络优化网络优化可以通过多种方式实现,包括:- 使用负载均衡技术:将网络流量均匀分配到多个服务器上,避免单一服务器负载过高,提高网络传输效率。

- 优化网络拓扑结构:合理规划网络拓扑,减少链路的跳数和延迟,提高数据传输效率。

- 优化路由协议:选择合适的路由协议,提高数据传输的效率和稳定性。

- 使用缓存技术:通过缓存热门数据,减少对服务器的请求,提高网络传输速度。

3. 流量控制流量控制是一种有效的网络拥塞解决方案,可以通过以下方式实现:- 设置流量限制策略:对不同类型的数据流量进行分类,并设置不同的流量限制策略,保证网络带宽的合理利用。

- 使用流量调度算法:通过使用合适的流量调度算法,优化数据传输的顺序和优先级,提高网络传输效率。

- 实施流量整形:通过对网络流量进行整形,限制流量的峰值,避免网络拥塞。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

网络拥塞现象原因以及控制方法分享拥塞现象是指到达通信子网中某一部分的分组数量过多,使得该部分网络来不及处理,以致引起这部分乃至整个网络性能下降的现象,严重时甚至会导致网络通信业务陷入停顿,即出现死锁现象。

这种现象跟公路网中经常所见的交通拥挤一样,当节假日公路网中车辆大量增加时,各种走向的车流相互干扰,使每辆车到达目的地的时间都相对增加(即延迟增加),甚至有时在某段公路上车辆因堵塞而无法开动(即发生局部死锁)。

网络的吞吐量与通信子网负荷(即通信子网中正在传输的分组数)有着密切的关系。

当通信子网负荷比较小时,网络的吞吐量(分组数/秒)随网络负荷(每个节点中分组的平均数)的增加而线性增加。

当网络负荷增加到某一值后,若网络吞吐量反而下降,则表征网络中出现了拥塞现象。

在一个出现拥塞现象的网络中,到达某个节点的分组将会遇到无缓冲区可用的情况,从而使这些分组不得不由前一节点重传,或者需要由源节点或源端系统重传。

当拥塞比较严重时,通信子网中相当多的传输能力和节点缓冲器都用于这种无谓的重传,从而使通信子网的有效吞吐量下降。

由此引起恶性循环,使通信子网的局部甚至全部处于死锁状态,最终导致网络有效吞吐量接近为零。

造成拥塞的原因:(1) 多条流入线路有分组到达,并需要同一输出线路,此时,如果路由器没有足够的内存来存放所有这些分组,那么有的分组就会丢失。

(2) 路由器的慢带处理器的缘故,以至于难以完成必要的处理工作,如缓冲区排队、更新路由表等。

防止拥塞的方法:(1) 在传输层可采用:重传策略、乱序缓存策略、确认策略、流控制策略和确定超时策略。

(2) 在网络层可采用:子网内部的虚电路与数据报策略、分组排队和服务策略、分组丢弃策略、路由算法和分组生存管理。

(3) 在数据链路层可采用:重传策略、乱序缓存策略、确认策略和流控制策略。

拥塞控制方法(1) 缓冲区预分配法。

该法用于虚电路分组交换网中。

在建立虚电路时,让呼叫请求分组途经的节点为虚电路预先分配一个或多个数据缓冲区。

若某个节点缓冲器已被占满,则呼叫请求分组另择路由,或者返回一个"忙"信号给呼叫者。

这样,通过途经的各节点为每条虚电路开设的永久性缓冲区(直到虚电路拆除),就总能有空间来接纳并转送经过的分组。

此时的分组交换跟电路交换很相似。

当节点收到一个分组并将它转发出去之后,该节点向发送节点返回一个确认信息。

该确认一方面表示接收节点已正确收到分组,另一方面告诉发送节点,该节点已空出缓冲区以备接收下一个分组。

上面是"停一等"协议下的情况,若节点之间的协议允许多个未处理的分组存在,则为了完全消除拥塞的可能性,每个节点要为每条虚电路保留等价于窗口大小数量的缓冲区。

这种方法不管有没有通信量,都有可观的资源(线路容量或存储空间)被某个连接占有,因此网络资源的有效利用率不高。

这种控制方法主要用于要求高带宽和低延迟的场合,例如传送数字化语音信息的虚电路。

(2) 分组丢弃法。

该法不必预先保留缓冲区,当缓冲区占满时,将到来的分组丢弃。

若通信子网提供的是数据报服务,则用分组丢弃法来防止拥塞发生不会引起大的影响。

但若通信子网提供的是虚电路服务,则必须在某处保存被丢弃分组的备份,以便拥塞解决后能重新传送。

有两种解决被丢弃分组重发的方法,一种是让发送被丢弃分组的节点超时,并重新发送分组直至分组被收到;另一种是让发送被丢弃分组的节点在尝试一定次数后放弃发送,并迫使数据源节点超时而重新开始发送。

但是不加分辨地随意丢弃分组也不妥,因为一个包含确认信息的分组可以释放节点的缓冲区,若因节点元空余缓冲区来接收含确认信息的分组,这便使节点缓冲区失去了一次释放的机会。

解决这个问题的方法可以为每条输入链路永久地保留一块缓冲区,以用于接纳并检测所有进入的分组,对于捎带确认信息的分组,在利用了所捎带的确认释放缓冲区后,再将该分组丢弃或将该捎带好消息的分组保存在刚空出的缓冲区中。

(3) 定额控制法。

这种方法在通信子网中设置适当数量的称做"许可证"的特殊信息,一部分许可证在通信子网开始工作前预先以某种策略分配给各个源节点,另一部分则在子网开始工作后在网中四处环游。

当源节点要发送来自源端系统的分组时,它必须首先拥有许可证,并且每发送一个分组注销一张许可证。

目的节点方则每收到一个分组并将其递交给目的端系统后,便生成一张许可证。

这样便可确保子网中分组数不会超过许可证的数量,从而防止了拥塞的发生。

死锁及其防止拥塞的极端后果是死锁。

死锁是网络中最容易发生的故障之一,即使在网络负荷不很重时也会发生。

死锁发生时,一组节点由于没有空闲缓冲区而元法接收和转发分组,节点之间相互等待,既不能接收分组也不能转发分组,并一直保持这一僵局,严重时甚至导致整个网络的瘫痪。

此时,只能靠人工干预来重新启动网络,解除死锁。

但重新启动后并未消除引起死锁的隐患,所以可能再次发生死锁。

死锁是由于控制技术方面的某些缺陷所引起的,起因通常难以捉摸、难以发现,即使发现,也常常不能立即修复。

因此,在各层协议中都必须考虑如何避免死锁的问题。

(1) 存储转发死锁及其防止。

最常见的死锁是发生在两个节点之间的直接存储转发死锁。

例如,A节点的所有缓冲区装满了等待输出到B节点的分组,而B节点的所有缓冲区也全部装满了等待输出到A节点的分组;此时,A节点不能从B节点接收分组,B节点也不能从A节点接收分组,从而造成两节点间的死锁。

这种情况也可能发生在一组节点之间,例如,A节点企图向B节点发送分组、B节点企图向C节点发送分组、而C节点又企图向A节点发送分组,但此时每个节点都无空闲缓冲区用于接收分组,这种情形称做间接存储转发死锁。

当一个节点处于死锁状态时,所有与之相连的链路将被完全拥塞。

一种防止存储转发死锁的方法是,每个节点设置M+1个缓冲区,并以0到M编号。

M 为通信子网的直径,即从任一源节点到任一目的节点间的最大链路段数。

每个源节点仅当其0号缓冲区空时才能接收源端系统来的分组,而此分组仅能转发给1号缓冲区空闲的相邻节点,再由该节点将分组转发给它的2号缓冲区空闲的相邻节点……最后,该分组或者顺利到达目的节点并被递交给目的端系统,或者到了某个节点编号为M的缓冲区中再也转发不下去,此时一定发生了循环,应该将该分组丢弃。

由于每个分组都是按照编号递增规则分配缓冲区,所以节点之间不会相互等待空闲缓冲区而发生死锁现象。

这种方法的不足之处在于,当某节点虽然有空闲缓冲区,但正巧没有所需要的特定编号的缓冲区时,分组仍要等待,从而造成了缓冲区和链路的浪费。

另一种防止存储转发死锁的方法是,使每个分组上都携带一个全局性的惟一的"时间戳",每个节点要为每条输入链路保留一个特殊的接收缓冲区,而其它缓冲区均可用于存放中转分组。

在每条输出链路的队列上分组按时间戳顺序排队。

例如,节点A要将分组送到节点B,若B节点没有空闲缓冲区,但正巧有要送到A节点的分组,此时A、B节点可通过特殊的接收缓冲区交换分组;若B节点既没有空闲缓冲区,也没有要送往A节点的分组,B节点只好强行将一个出路方向大致与A节点方向相同的分组与A节点互相交换分组,但此时A节点中的分组必须比B节点中的分组具有更早的时间戳,这样才能保证子网中某个最早的分组不受阻挡地转发到目的地。

由此可见,每个分组最终总会成为最早的分组,并总能被一步一步地发送到目的节点,从而避免了死锁现象的发生。

(2) 重装死锁及其防止。

死锁中比较严重的情况是重装死锁。

假设发给一个端系统的报文很长,被源节点拆成若干个分组发送,目的节点要将所有具有相同编号的分组重新装配成报文递交给目的端系统,若目的节点用于重装报文的缓冲区空间有限,而且它无法知道正在接收的报文究竟被拆成多少个分组,此时,就可能发生严重的问题:为了接收更多的分组,该目的节点用完了它的缓冲空间,但它又不能将尚未拼装完整的报文递送给目的端系统,而邻节点仍在不断地向它传送分组,但它却无法接收。

这样,经过多次尝试后,邻节点就会绕道从其它途径再向该目的节点传送分组,但该目的节点已被死锁,其周边区域也由此发生了拥塞。

下面几种方法可用以避免重装死锁的发生:①允许目的节点将不完整的报文递交给目的端系统;②一个不能完整重装的报文能被检测出来,并要求发送该报文的源端系统重新传送;③为每个节点配备一个后备缓冲空间,用以暂存不完整的报文。

①、②两种方法不能很满意地解决重装死锁,因为它们使端系统中的协议复杂化了。

一般的设计中,网络层应该对端系统透明,也即端系统不该考虑诸如报文拆、装之类的事。

③方法虽然不涉及端系统,但使每个节点增加了开销。

拥塞控制的当前标准端到端拥塞控制的IETF标准关注的方面包括集中在特定的协议(例如TCP协议[RFC2581],可靠的多点传送协议[RFC2357]);终端节点和路由器之间的拥塞信息(例如明确的拥塞通告[RFC2481])交换的句法和语义;不同服务的服务质量的期望值。

端到端的拥塞控制的作用也在一个关于“Internet中的队列管理和避免拥塞的建议”[参见RFC2309]的RFC报告中进行了讨论。

RFC2309提出了在路由器中活跃的队列管理机制的配置和对路由器机制设计的延续来处理对拥塞通告无回应的流。

我们能够轻松地从RFC2309中借用一些端到端的拥塞控制的概括性的讨论。

与上面提到的RFCs资料相比,本文档对拥塞控制的原理进行更一般性的讨论。

Internet 成功的一个关键因素就是TCP协议的避免拥塞机制。

当前TCP协议在Internet中仍然是占主导地位的传输协议,但它不是适用于任何地方,有越来越多的应用由于某种原因没有选择使用TCP协议。

通信不仅包括多点传送通信,而且包括单点传送通信,诸如不需要可靠性的流化的多媒体,以及包括象DNS(DomainNameServer域名服务器)或路由信息的通信,它们带有被认为对网络运行至关重要的短信息。

许多通信并不使用任何形式的预留带宽或端到端拥塞控制。

为了保持最优传输量,端到端的拥塞控制的继续使用对保持Internet的稳定至关重要。

完成拥塞控制时,确定拥塞窗口大小的过程确定拥塞窗口的大小的过程:在刚建立连接时,将拥塞窗口的大小初始化为该连接所需的最大连接数据段的长度值,并发送一个最大长度的数据段(当然必须是接收窗口允许的)。

如果在定时器超时前得到确认,将拥塞窗口的大小增加一个数据段的字节数,并发送两个数据段,如果每个数据段在定时器超时前都得到确认,就再在原基础上增加一倍,即为4个数据段的大小,如此反复,每次都在前一次的基础上加倍。

当定时器超时或达到发送窗口设定值,停止拥塞窗口尺寸的增加。

这种反复称为慢速启动,所有的TCP协议都支持这种方法。

目前拥塞控制的研究热点:拥塞控制不仅是网络稳定、高效运行的关键,同时又是实现各种服务质量的基础和前提。

相关文档
最新文档