论文部分内容阅读
引言
在分析计算机网络性能时,经常用的参数是带宽延迟乘积(bandwidth-delayproduct)。它是由带宽(单位为b/s)与双向传输延迟时间(单位为s)的乘积得到的。该乘积就是往返于发送方和接受方之间的信道的容量(单位为比特)。
所有的通讯网络不论是分组交换还是电路交换都要有自建的保护措施以防止通讯流量超过网络的能力,当(一部分)通讯子网中有太多的分组时,其性能降低,这便是拥塞。在分组交换的网络中,当信元或分组所遇到的延迟开始迅速的增加,缓冲区溢出,丢弃的信元超出了某一特定的界限时,输出量开始下降,拥塞产生,严重时会导致危险的操作甚至导致死锁,在这种情况下所有的缓冲区都被填满,所有的流量停止流动。这可以形象地比喻成马路上发生的交通阻塞。这个现象也可用图a和图b来表示:
拥塞的问题讨论
可见对计算机网络性能的管理的一个重要方面便是对拥塞的控制。目前已有各种内建算法进行拥塞控制,它们可以分为两类:开环拥塞控制和闭环拥塞控制。开环的设计思想是在一开始就将发生拥塞的可能性降到最低,而不是任其发生,然后再对其进行反应。如在ATM中已用的许可控制和通讯量整形(trafficshaping)方法的漏桶算法和令牌桶算法。闭环系统建立自动控制的原理上的闭环反馈系统,它监视系统,检查何时何地发生了拥塞,将监测信息传送到可能采取行动的地方,调整系统以更正问题。现已广泛使用的有两种用于网络的反馈方法来减少流量以避免拥塞:①基于滑动窗口的反馈控制。在这种方法中,每一个源在接受到目的地的正确接信号之前都被给予一个它能传送的最大信元或分组数。来自目的地或拥塞点的信号用来减小发送源和接收端的滑动窗口,这样能减少流量。②基于速率的方法。在这种方法中,反馈机制控制网络中的传送率来控制流量。
虽然开环控制在计算机网络中广泛应用,但是我们很容易就可以认识到它的不足之处。
例如漏桶流量控制只有两个可以调整的参数:令牌到达速率和最大令牌缓冲池。但是实际的网络不是只有这两种状态这样简单。漏桶机制不能控制所有的流量也不能保证拥塞不发生。虽然最大载荷控制,分配高峰传输能力可能是一种方法来控制拥塞,但是这种高峰控制在大范围的网络中会很复杂,因此必将导致复杂昂贵的网络。
在高速网中问题会更严重,主要原因是基于ATM所设计的很宽的带宽和速度。高比特率导致非常短的信元,影响将在两个方面体现:信元的处理包括拥塞控制必须以很短的间隔时间进行。比特率增加的时候在广播通路中会有更多的信元在传送。下面将详细地进行分析。
为了简单,让我们来考虑典型的点到点的队列模型,见图c:
现在假设所有的连接能力是一样的,都是u信元/秒,所有的点到点的广播延迟不包括队列延迟是t1秒。他们的乘积是ut1,并且是远远大于1的。由于信元的长度是1/u秒,这表明如果发送源始终以全能力发送信元的话,当它发送了u个信元的时候,在同时就有ut1个信元在通路上。现在如果目的地的缓冲区发生了拥塞并且试图给信号源发送反馈信号以停止源的传送。那些已发送的ut1个信元就不能被控制而只能是被丢弃。另外假设由发生拥塞目的地所发送的反馈信号需要用t2秒才能到达源端,这样又会有ut2个信元已发送到通路上。(假设以反馈控制信号方式传送的信元或是来自前方的信源确认信号会走一条不同于图c的通路)这时在通路上的信元总数是u(t1+t2)。T=t1+t2便是环路广播延迟,uT便是延迟带宽乘积。对于高速网络来说这是一个很大的数字,并且导致了高速网络拥塞控制的复杂性。
现在让我们看一个具体的例子。假设传送率是150Mbps。现在相应的带宽乘积是ut=1800。若传送率是2.4Gbps,uT则是28000。(ATM信元长度1/u是177nsec)
ATM的拥塞及控制的讨论
由于在高速网中会有这样多的信元被发送。那么反馈或者说闭环控制是否还能有效的控制拥塞已成为了一个有争议的问题。我们都很清楚如果网络控制不好很容易导致不稳定的状态。许多在B-ISDN和ATM网络领域工作的人都提倡用我们前面所说的开环或流量整形来控制网络。他们提倡用开环控制和一种叫侵犯标签(violationtagging)技术的结合来控制拥塞(1990年)。在这种技术中信元被分成了两组。那些必须通过的信元和最大努力发送所需的。通路中的某一个节点有了拥塞,那些具有侵犯标签的信元将被丢弃。ATM的信元头CLP比特可完成这项功能。
ATM网络传送的数字语音就是这种技术的很好的举例。八比特的语音信号被分成了两组;四个最重要的比特和四个不太重要的比特。接连的最重要的比特组成了ATM的一组信元,接连不太重要信元组成了另一组ATM的信元,ATM的信源头CLP比特可以设置成标志信息。当网络中有拥塞发生时,这些信元将被丢弃。这种机制已被建议在图像流量控制中应用。图像信息按层分为不同的等级,比特按不同的等级分给了不同等级的组。当拥塞发生时可以将不太重要等级的组丢弃,如果有必要也可降低图像质量,丢弃重要级别较高的组。漏桶控制机制也被建议允许信元改变控制限制而不是将信元丢弃。但是这些丢弃的信元还会引起拥塞吗?这仍是一个有争议的问题。
尽管闭环控制被一些在ATM领域所工作的人所忽略,但是人们已普遍认识到了闭环控制在ATM网络中的应用。ATM论坛(一个有影响的旨在推广ATM应用的私人组织)提倡并大力支持基于可用比特率(ABRavailablebiterate)的闭环控制。ATM论坛作了一些模拟研究,并且证实闭环反馈的ABR拥塞控制将是一个用于基于ATM的广域高速宽带网的非常有用的技术。近些年对于ABR闭环控制的讨论一直是一个热门话题。
ATM区别于其他网络的最主要特征是它的复杂的流量管理。ATM网络现在可提供五种服务,他们是恒定比特率(CBR),实时可变比特率(RT-VBR),非实时可变比特率(NRT-VBR),可用比特率(ABR),为指定比特率(UBR)。对于数据传输ABR服务当然是理想的,使用这种服务避免了作长期的固定带宽的承诺,它是为有促发性的网络设计的,而计算机网络都具有促发性;在某一个时间网络可能没有数据流或者说很少,在某一时刻可能有许多源同时向网络中发送数据,致使流量超过了网络的能力导致拥塞。在这种服务中,交换机可以给发送源提供反馈信息,发送源根据反馈信息控制流量,交换机监视它自身的载荷并且公平地将可用带宽分配给运动的数据流。这就保证了竞争的数据源可以公平地分配可用带宽,并且保证了连接能充分有效地利用。ATM在1995年的二月提出了避免拥塞的显式反馈算法(ERICATheexplicitrateindicationforcongestionavoidancealgorithm)。自从那时起ATM论坛作了许多性能研究,提出了许多种模型。下面将简单介绍ERICA的工作方式。
在这种反馈控制中,交换机发送反馈控制信息在资源管理(RM,resourcemanagement)信元中指示。源周期地发送RM信元,通过交换机由交换机进行特殊处理然后发送到接收者,当接收者收到了RM信元后进行处理然后发回给源。RM信元包含源现在的信元速率(CCR),信元的一些位可被交换机使用来为发送源提供反馈信息。他们是显式速率(ER),拥塞指示(CI)旗,不增加(NI)指示旗。ER指示了某一个特定时间网络所能支持的速率。当它处在刚开始被发送的时候,它总是被设置最高值,CI和NI标志旗被清空。在通路上每一个交换机减小ER的值到它所能支持的速率,并且在有必要的时改变CI和NI标志旗位。发送端接到来自目的地的信元时候计算出所容许的当前速率(ACR,actualcurrentrate),CI,NI标志旗位和RM信元的ER位。
进行ERICA设计的主要目标是最大连接利用,最小队列延迟,公平分配,减小反应时间,达到稳定性和强壮性。下面分别进行解释:
1.利用率(Utilization):我们首先的目标是最大连接利用率。这通过尽可能的把可用能力分配给ABR流,更高级别的VBR和CBR服务所不用的连接能力都分配给ABR服务达到。
2.队列延迟(Queuingdelay):高的连接利用可以导致长的队列和延迟。为了使连接利用率达到最大,要保证队列延迟低于队列目的地的最大队列延迟。最大输出(利用)和最小延迟就是拥塞避免。当队列延迟高于其目的地延迟的时候,分配被减小以减小队列长度。
3.公平性(Fairness):常用的描述公平性的标准是最大最小分配。简单地讲就是公平地给每一个竞争的源分配可利用的资源。值得注意的是公平性只有在有效性得到之后才去争取的目标。
4.稳定性和暂时性(StabilityandTransientPerformance):具有稳定性的系统能在发生扰动之后恢复到稳定状态。暂时性决定了其恢复到稳定状态的时间,时间短则系统能在扰动发生之后很快地恢复到稳定状态。
5.强壮性(Robustness):强壮性是指系统在受到扰动的时候仍能稳定的工作。
ERICA算法实时检测每一个连接的载荷,计算ABR的能力,载荷参数,实际有效的连接个数。为了分别达到有效性,公平性,队列控制的目标,ABR控制机制利用算法所提供的参数。测量是如何进行的,参数是如何选取的直接决定了ERICA的性能。这些参数可以分为以下几种:(1)与测量和平均值有关的参数,如载荷参数,实际有效连接个数。(2)队列控制参数,如队列控制功能参数。(3)公平参数。在ABR反馈控制中,每一个交换机监视它的每一个连接的载荷,可用能力,队列长度,实际有效连接的个数。这些参数通过算法计算出为了达到性能要求所须的参数,利用这些参数进行控制以实现最大连接利用率、公平分配、稳定性和强壮性。
研究计算机网络的一种新方法
网络性能的研究始终是一个热门话题,要想控制网络使其达到所设计的性能不是一件容易的事,这主要是由于网络的实时性、促发性和不可预见性。网络参数的测量也不容易。在进行网络性能研究的时候我们发现,网络进行拥塞控制的时候利用了自动控制中的原理,其实自动控制理论在网络中的应用不仅限于此,当建立了网络模型之后可利用极点位置与稳定性的关系,通过观察极点的位置可判断网络的稳定性。问题在于是否能将实际的网络完全模型化,将一个实时变化的网络模型化不是一件容易的事,即使是模型化了其极点的位置也有可能随时间变化而变化。能不能有一种解决办法能使模型自动跟踪网络变化,自动配置极点,使网络具有稳定性和强壮性,并发挥最大效率提供服务?笔者认为这是可以实现的。下面给出了实现的原理图:
下面分别解释各部分的功能:
状态观测器:用计算机网络的输出和输入驱动的装置,使该装置的输出逼近计算机网络的状态输出量。这部分设计的目的是为反馈提供所须的状态信号。
伺服补偿器:实现扰动抑制和渐近调节,它是根据外作用而设计的。扰动抑制和渐近调节是指网络在受到扰动的时候,系统仍能稳定的工作。渐近调节是指网络在受到扰动的时候其输出仍能跟输入的参考信号保持一致。这部分设计的目的是为了使系统具有强壮性(Robustness)。
镇定补偿器:此部分是利用状态参数镇定系统,即使系统稳定。达到稳定性和暂时性(StabilityandTransientPerformance)的设计要求。由于系统是多输入多输出的因此反馈系数是矩阵的形式。
工作原理简述:输入的信号是系统设计者在进行网络设计时为网络所规定的参数,例如延时带宽乘积,网络的输出即实际带宽延时乘积要跟所规定的值一致以保证网络的性能符合设计者的要求。状态观测器得到网络的各种参数通过反馈控制矩阵使网络稳定。扰动可以是网络的参数变化。伺服补偿器根据网络的扰动计算出自身的极点和动态方程。当系统有扰动的时候伺服补偿器可用来保证网络的强壮性要求。系统中的各部分可用软件实现。
结束语
在这篇文章中,我们讨论了计算机网络的性能问题,然后介绍了拥塞问题和控制方法。主要是讨论了ATMABR的拥塞控制问题,ABR的闭环控制是目前讨论的热门话题,这种方法也是ATM论坛支持的拥塞控制方法,他的设计目标是网络的公平性、稳定性、强壮性。
这种控制方法要时时检测网络的每一个节点,计算它的载荷,可用能力,队列长度和实际的连接数,并且将控制的信息传送给发送源以形成闭环的反馈控制。计算机网络是一个复杂的多输入多输出的系统,这与现代控制理论中所研究的问题有很大的相似性,他们都具有稳定,强壮性和暂时性的问题。在这个基础上提出了应用自控理论的计算机网络设计和控制的一种方法。计算机网络参数的复杂性以及计算机网络的实时性和促发性给计算机网络的研究带来许多困难。因此这种方法是否有效可行,还需要进行大量的研究和模拟仿真,但是这种方法的大胆提出可能会给计算机网络的研究者提供一条新思路。