ATM教程:网络层( 三 )


信元错误目的地比率CMR 信元提交至错误目的地的比例
七、通信量整形和控制
使用和增强服务质量参数的机制是基于(部分地)一种特定的算法,也即通用信元速率算法GCRA(generic cell rate algorithm) 。它的工作原理是检查每一个信元,看是否遵从了虚电路的参数 。
GCRA有两个参数,它们指定了最大的答应到达率(PCR)和其中可以忍受的到达时间变化量(CDVT) 。PCR的倒数,T=1/PCR是最小的信元到达间隔值 。
GCRA算法被称为虚拟调度算法(virtual scheduling algorithm),然而从另一种角度来看,它等同于一个漏桶算法 。可把一个合乎协定的信元想象成是倒入一个漏桶的T单位的流体 。这个桶以1单位/us的速度漏液体,因此Tus之后它就空了 。假如信元正好是以1信元/Tus的速度到达,那么每一个到达的信元都会发现桶刚刚空出来,该信元会把桶内重新装上T单位的液体 。因此当一个信元到达时,液体水位升至T,以后就线性递减直到为零 。
当一个信元提前Lus到达时,桶就应该溢出 。对于一给定的T,假如我们把L设置得很小,桶的容量将会很难超过T,因此所有的信元必须以一种非常规范的间隔顺序发送 。然而,假如我们现在增加L的值,使它远远大于T,桶将会容纳很多的信元,因为T L>>T 。这就意味着发送者可以以峰值速率一个接一个地发送一些突发性数据,而它们仍然能够被正确地接收 。
GCRA正常情况下是通过给定参数T和L来指定的 。T正好是PCR的倒数;L就是CDVT 。GCRA也用来保证在任何一段较长时间内平均信元传输速率不会超过SCR 。
除了提供了一条规则来看哪一个信元是合乎协定的,哪一个是不合乎协定的之外,GCRA也用于通信整形,以消除某些突发性传输 。CDVT越小就意味着越好的平滑效果,但也增大了因为不合乎协定而丢弃信元的机率 。在一些实现中把GCRA漏桶和一个令牌桶结合起来,以提供进一步的平滑 。
八、拥塞控制
ATM网络必须既要处理由于大于系统处理能力的通信量而引起的长期拥塞,又要处理由于通信中的突发性传输而引起的短期拥塞 。结果人们使用了几种不同的策略 。它们当中最重要的可分为3类:
1、许可证控制
很多ATM网络中有以固定速率产生数据的实时通信源 。告诉这一类的通信源减慢发送速率是行不通的(想象一种有一个红灯的新型数字电话 。当通知拥塞发生时,红灯就会亮,讲话者将被要求速率减慢25%) 。
因此,ATM网络把防止拥塞发生放在第一的位置 。然而,对于CBR、VBR、UBR类通信量,根本就没有动态拥塞控制,因此在这里预防拥塞发生将远远比拥塞发生后再去恢复强得多 。预防拥塞的一个主要工具是许可证控制 。当一台主机需要一条新的虚电路时,它必须描述出希望被提供的通信和服务,网络便作出检查来看是否有可能,在不对已存在连接造成有害的影响的前提下处理该连接 。可能需要检查多条可能的线路,从而发现哪一条将可以做此项工作 。
2、资源预订
同许可证控制密切相关的是事先预定资源的技巧,这通常是在呼叫建立时进行 。因为通信量描述符给出了信元发送峰值速率,网络就有可能沿通路预留足够的带宽来处理该峰值速率 。
3、基于速率的拥塞控制
在CBR和VBR通信中,因为信息源固有的实时和半实时的特性,所以即使在发生拥塞的情况下,一般也不可能让发送者减慢发送速率 。在VBR服务中,没有人会担心 。假如有太多的信元,把多出来的丢弃掉就是 。
在ABR通信中,网络去通知一个或多个发送者并且请求它们暂时减慢发送速率直到网络恢复,这是可能的也是合理的 。

推荐阅读