背景技术
现今的计算机网络最初被设计用于支持单一类型的服务,将各种业务都视为属于一个业务等级。然而,随着信息技术和电信的不断交叉渗透,新的应用不断发展,其产生出具有各种特性的业务并还要求不同的服务质量(QoS)标准。因此,现有的IP(因特网协议)网络结构需要被升级以用于支持多种服务,从非实时的业务,例如ftp和email,到实时的业务,如交互式话音和视频。
在过去几年中,多种技术和机制得到了发展,其使得启用QoS的多服务网络得以实现。这些类型的网络的一个基本先决条件是在不同业务流的分组之间进行区分、以及正确转发分组的能力,每个都具有所期望的服务质量。这需要针对各种业务流,在网络节点中建立不同的队列,随后这些队列依照特定的调度方案被服务。这样操作,每个业务流接收到可获得带宽中的特定份额,如果该份额不足会引起质量退化。由IETF(因特网工程任务组)所规定的两个最重要的服务质量框架-“集成服务”(IntServ)和“区分服务”(Diffserv)-依赖于分组区分的能力。在“集成服务”中,业务区分是在每个流(per-flow)的基础上提出的(也就是说,在很精细的基础上),而“区分服务”建议仅有几个业务等级被定义,其被不同地对待(也就是说,在业务集合的基础上的区分)。但是,所提出的机制仅能在提供了充足的带宽下获得良好的服务质量。
由IP话音(VoIP)源发送的业务流的特性由编码器的类型所决定,其用于将话音样本转换为IP分组。最常用的话音编码器为恒定比特率(CBR)编码器,其在每个恒定的时间间隔传送固定大小的IP分组。例如,G.711编码器可每20ms产生200字节的分组,导致80kbps的数据速率。
为使IP话音能够被广泛接受,必须提供与传统电话系统相当的质量水平。对于话音通信的感知质量,一个至关重要的因素是说话者和收听者之间话音样本的端到端延迟。在IP话音系统中,这一延迟主要包括编码和解码的延迟,还包括发送器和接收器之间的分组传送时间。此外,为了平衡网络中业务变化而引起的延迟抖动,在接收器中使用了重放缓冲器。输入的分组其到达的时间间隔可能会发生变化,这些分组被临时存储并按照等距的时间间隔播放,就像其由原始发送器发送的一样。该重放缓冲器的时间也计入到总延迟预算中。总而言之,对于交互式话音通信,单向的端到端延迟的值应小于150ms。
具有了相当恒定的编码器和重放缓冲器,就能够得出对于网络延迟的确定的最大阈值。因此,为使IP网络能够适宜地支持IP话音服务,网络等待时间必须保持小于该阈值。由于IP网络中等待时间的主要成份为排队延迟,其在拥塞阶段期间产生于网络节点上,该延迟成份随每个节点增长。因此,通过网络中最大节点数目的总延迟低于给定的阈值,我们能够得出确定的每节点延迟极限。基于每节点的延迟极限,网络的链路可被测定。
发明内容
所以,本发明涉及一种方法,用于测定网络节点的输出线的所需带宽。
一般说来,本方法包含下列步骤:
(a)计算对应于节点上不同最坏情况的最大等待时间,由此不同最坏情况的情形依赖于多个有效话音连接的分组到达的群集,
(b)针对最大等待时间定义延迟阈值,
(c)定义概率,以及
(d)测定网络节点的输出线的带宽,以便除了发生像所定义的概率一样罕见的情况外,均不超过延迟阈值。
使用该测定概念,在大多数情况下(一直到所定义的概率)没有任何分组需要等待超过预先定义的延迟阈值。仅在少数“不幸”的情况下,阈值被超过,这种情况发生当在网络节点缓冲器中存在的分组多于测定时所考虑的分组。这样的不幸情况发生的概率可基于模拟来估算。作为本发明测定概念的结果,如果所有时段上所有连接中仅有很少的百分比受到负面影响,则所需带宽的总量可被极大地减小(相比于很难保证的服务质量所需的带宽总量)。
简而言之,为应付罕见的情况,由于需要很高的带宽速率,因而为话音服务提供硬性能保证的代价是十分高昂的。通过忽略这些罕见的情况,所需的带宽总量可被显著减小。因此,基于该创造性测定策略的几乎可以保证的服务质量可以以非常低的代价获得。除IP网络的容量设计外,此测定策略可用于呼叫许可控制,以及计算在一个时刻可以由给定的服务质量支持的连接的总数目。
根据本发明的实施方案,针对不同的调度算法,不同的测定算法被定义,例如占先式和非占先式优先级队列(PQ)或基于等级的加权公平队列(CB-WFQ)。
根据本发明的另一实施方案,在话音专用网络或使用占先式优先级队列的网络中,带宽位于L/D(根据最好情况测定策略)和K·L/D(根据最坏情况测定策略)之间,其中L为IP话音分组的分组长度,D为延迟阈值,K为有效话音连接的数目。
通过下文的发明详述和附图,将描述本发明的其他的特征和优势,其并将变得更加显而易见。
具体实施方式
图1显示了具有数个节点N1,...,N4的网络IP-N,通过在每个输出端口上执行各自的队列Q1,Q2,Q3,每个节点支持一组业务等级。在本发明中,我们考虑所有的话音业务都被视为一个等级,赋予其一个单独的队列Q1而其他的队列Q2、Q3可包含其他任意类型的业务。为了说明具有各种网络拓扑结构的通用网络模型,每个节点N1,...,N4上的业务被假设独立于其它的节点N1,...,N4。
在本发明的该实例中,我门关注节点N1并分析多个输入线I1,...,IK到一个输出线O的多路复用过程。我们假设K个话音连接是有效的,并假设相应的VoIP分组需要被转发到具有容量C的相同输出线O。每个话音连接1,...,K的业务通过CBR编码器生成,且不进行静音抑制,也就是说,长度为L的分组以T秒的周期发送,使得平均速率为r=L/T。为简便起见,我们假设K个业务流经由不同的输入线I1,...,IK到达节点N1。因此,有可能K个输入的VoIP分组在几乎同一时刻到达节点N1,并立即被置入输出缓冲器。在任何情况下,每个节点N1,...,N4上的队列延迟的阈值D不应当被任何话音分组超出。穿过该路由器的其它业务等级的最大分组大小假设等于输出线O的最大传输单位(MTU)。
在节点N1,...,N4上所使用的调度算法为优先级队列(PQ)和基于等级的加权公平队列(CB-WFQ)。优先级队列为不同的队列Q1、Q2、Q3分配优先级级别。直到较高优先级队列Q1、Q2、Q3中的所有分组被服务且相应的输出缓冲器为空时,较低优先级队列Q1、Q2、Q3中的分组才被处理。占先型优先级队列在较高优先级的分组到达时中止较低优先级分组的传送,而非占先型优先级队列允许完成传送并首先结束对较低优先级分组的服务。优先级队列是作为加速转发每跳行为(EF-PHB)的适当调度算法被提出的,其对于在“区分服务”模型中定义的业务集合确保了优质的服务,并被引入用以支持实时的临界业务,例如话音。如同本发明所假设的,话音业务通常被给予最高的优先级。采用优先级队列时,有可能具有最高优先级的业务等级占据了全部带宽并将较低优先级的业务挤出。相对于优先级队列调度,另一种选择是基于等级的加权公平队列,其为每个等级或队列Q1、Q2、Q3分配权重,在忙的队列Q1、Q2、Q3中依照为其分配的权重按正比例共享链路容量。这样,没有任何业务等级能够在拥塞时段占有全部链路。
假设最多K个VoIP连接被转发至一个输出线O,我们需要找出输出线O所需要的能提供某种服务质量的带宽。在本发明中,服务质量直接涉及每个节点N1,...,N4上某个队列延迟阈值D。此外,假设所有的VoIP源执行相同的编码器,K个分组(属于K个连接)将在任意时间间隔T内到达。在网络运行期间,呼叫许可控制方案必须确保不超过K个连接在输出线O上被允许。否则,所要求的服务质量不能被提供。
第一种测定方法基于最坏情况考虑,其提供硬服务质量保证,也就是说,K个话音连接的所有分组在延迟阈值D之内得到明确的服务,而不考虑负载状况。在分组交换网络中确定性的队列延迟的上限对应于这种情况,即K个IP分组刚好在同一时刻全部到达。然后必须确保恰好被最后置入缓冲器且其等待时间最长的分组也能在时间D内被发送出去。因此,K·L个字节必须在D内被发送,要求速率为K·L/D。这一测定概念被称为最坏情况测定或硬保证测定。
作为确定性延迟界限的替换,可以考虑统计延迟值。考虑K个分组通常以分散在时间周期T内的方式到达,较小的带宽似乎是足够的。由此,给出了较软服务质量保证,测定策略被称为平均情况测定或统计保证测定。然而,必须明确在某些情况下,如果使用统计保证测定,不是所有的分组都能在时间阈值D内得到处理。
相对于最坏情况测定的极端为最好情况测定。这种方法对应这样一种情况,其中每个分组在前一分组刚被发送出去的时刻到达。基于这一情况,所需容量至少为L/D。在任何情况下,所需容量的最小值为K个连接的平均速率。
图2图示了两个极端,即最好情况测定和最坏情况测定之间的带宽范围,其中L=200字节,T=20ms,D=5ms。针对每种极端的期望值,假设网络仅支持话音服务或使用占先式优先级队列,示出了所需的链路容量。随着连接或有效用户的数目K的增加,此范围变得更宽。图中还显示了最坏情况测定需要的速率大大高于有效用户的平均速率,引起链路的利用率值非常低,例如,对于K=10,链路利用率为10·80/3200=0.25=25%。与之相反,最好情况测定开始稍稍高于平均速率,然后在K=4重合,导致100%的链路利用率。
尽管最好情况测定在大多数情况下显然不能获得满意的服务质量(过多的有效连接将超出其延迟预算),但最坏情况测定被认为是过于悲观的假设。由此产生一个问题,根据最坏情况情形的测定有多么必要,以及此种情况出现有多么频繁。
对于最坏情况情形,我们假设一时隙式时间间隔T,其中每个时隙与一个分组的服务时间相等。分组的到达发生在时隙的起始时刻,且在时间间隔T内均匀分布在所有可获得的时隙上。具有了周期性源,每个有效的连接仅有一个分组出现每个间隔T上。如果链路利用率为100%,也就是说,用户的数目K等于T内时隙的数目,最坏情况的概率是:
显而易见,对于较低的链路利用率,P最坏情况更低。设K=10个用户,P最坏情况≤10-9。因此我们将浪费75%的链路容量(参看图2),仅仅为了应对每109次中才发生一次的情况。比较而言,最好情况情形的概率以100%利用率计算为:
对于高的K值,其估算的大大高于P最坏情况。此外,对于较低的链路利用率,P最好情况甚至更高。设K=10,P最好情况≥3.6·10-4。然而,如果测定是依据最好情况完成的,则所需的服务质量在至多(1-3.6·10-4)的所有情况下不能获得。显然依据任一极端进行测定是不现实的。一种方法会浪费大量的带宽,而另一种方法会引起大多数话音连接服务的退化。实用的符合要求的测定策略应介于上述两者之间。
我们定义了(K-i)分组最坏情况,其中在周期T中,对于K个有效的话音连接,缓冲器中分组的最大数目为K-i,其中i=0,1,...,K-1。换言之,所有分组上的最大等待时间是单个服务时间的K-i倍。除了第i个分组本身的服务时间以外,最后一个分组一直等待到其前面的(K-i-1)个分组的服务完成。因此,最坏情况对应于i=0,而最好情况对应于i=K-1。
图3图示了在话音专用网络或假设所使用的调度算法为占先式优先级队列的网络IP-N中,对于(K-i)分组最坏情况所需的链路速度。如果测定是依据(K-2)分组最坏情况执行的,则相比最坏情况测定可节约20%的带宽,仅在(K-0)和(K-1)分组最坏情况下引起服务的退化,这些情况出现的概率非常低。在支持数个业务级别的网络IP-N中,(K-i)分组最坏情况测定依赖于所使用的调度方案。
图4显示了分别用于计算链路容量和带宽共享的公式表格,对于优先级队列(PQ)和基于等级的加权公平队列(CB-WFQ),使用(K-i)分组最坏情况测定,其需要满足某个确定的每个节点的延迟阈值D。K为有效话音连接的数目,L为分组的长度,MTU为最大传输单位,r为因特网协议层上话音编码器的速率,C为输出线的容量。
例如:如果占先式优先级队列被用作调度算法,则所需带宽为:
其中i=0,...,K-1
如果非占先式优先级队列被用作调度算法,则所需带宽为:
如果基于等级的加权公平队列被用作调度算法,则所需带宽为:
由此,依据最好情况测定策略,所需带宽为:
其中i=0,...,K-1