使用仿真加权合理排队技术的带宽分割法的制作方法

文档序号:7963708阅读:246来源:国知局
专利名称:使用仿真加权合理排队技术的带宽分割法的制作方法
技术领域
本发明涉及电子数据传输领域,更具体而言,本发明涉及用于在数据传输网络的交换点、在数据信息流之间划分出口带宽的方法和装置。
为了提供服务质量(QoS)保证,一服务类(CoS)与每一PDU和数据信息流32相关。有同样的服务类并用于特定的输出口30的PDU被集合成一单一的数据流32。与单一的数据流32有关的PDU106在相应的出口队列Q(j)中排队,以传输过输出口30的物理媒体102。每个与输出口30有关的输出队列Q(j)可以由硬件或软件来实施,并且被给予至少一个传输带宽和相对于其它预定于输出口30的数据信息流32的优先权。这样,与音频连接有关的高优先级PDU可以在输出队列Q(m-1)中等待,所述输出队列有与其有关的高服务优先级,而与电子邮件传输部分有关的低优先级PDU可以等候在输出队列Q(0)中,所述输出队列有与其相关的低服务优先级。
用于传输通过物理媒体的PDU的选择由调度程序40做出。在提供服务质量保证中,通常要求高优先级PDU接受传输带宽的保证部分。因此高优先级PDU受益于其优选过程。
由于被传输的PDU的变化的长度110,所有的数据信息流32受到传输延迟或传输不稳定。一般认为低传输优先级输出排队接受带宽的保证部分是理想的,因为在高优先级PDU的数据通信实发阶段不会完全被停止。为了完成服务类并使传输延迟和不稳定较低,在输出队列Q(j)中的排队的PDU中使用一监视程序,以确保没有太多的高优先级PDU106排队等候在时间间隔内进行传输。
已经研究出一些理论模式来在实施加权合理排列(WFQ)技术的输出队列Q(j)中间,分割输出物理媒体102的传输带宽。在由Addison Wesley,1997,Reading MA,pp209-263公开的Srinivasan Keshav的“计算机联网技术,ATM网络,互联网和电话网络的工程方法(an engineering approach to computernetworkingATM networks,the Internet and the telephonenetwork)”中描述了这种技术。
WFQ技术提供了一种对带宽划分问题的解决方案,这种问题用硬件来解决是不切实际的。理论上的排队服务模式一般假定用于实施WFQ的计算时间是极小的,并因此被忽略。在实践中,计算时间是不能被忽略的。WFQ技术在顺序输出队列服务中利用反复的计算。这种反复的计算是时间密集的。WFQ顺序计算也要求除法操作,其表示硬件实施复杂性的来源。
因此需要开发以仿真加权合理排队技术来排序输出队列服务的方法,这种方法能克服上述缺陷。
此处给出的方法仿真加权合理队列服务技术,并使得硬件实施的计算最小。
下面参照附图以详细描述的优选实施例的形式来更好地理解本发明,其中

图1是示出PDU通过交换装置的示例性流动路线;图2是描述根据本发明的一个实施例使用仿真加权合理排队技术进行顺序队列服务过程的流程图;图3是描述根据本发明的一个实施例从有最低的信用值的输出队列来传输PDU的过程的流程图;图4是示出根据本发明的一个实施例、基于保存在信用计数器中的信用值找到可用的输出队列的大致过程的流程图,所述信用计数器与输出队列有关;图5是示出根据本发明的一个实施例修改信用计数器的过程的流程图;图6是示出根据本发明的示例性的实施例找出有最低信用值的可用输出队列的过程的流程图;图7是示出根据本发明的另一个示例性的实施例找出有最低信用值的可用输出队列的另一过程的流程图。
附图中,相同的技术特征有类似的标号。
由于每个PDU106在传输目的上被认为是不可分的,因此每个与分级服务无关的PDU以传输率T传输过物理传输媒体102,所述传输率示意性地用T表示。
数据通过输出物理媒体102的传输被分为按顺序的传输期间,每个传输期间有一个示意性地用108表示的整数持续时间K。
根据本发明,每个输出队列Q(j)有一所需的传输带宽分配A(j)。每个输出队列112的所需的带宽分配A(j)是对应于传输周期K的一部分的整数,这样服务整个传输带宽分配所需的处理时间合计达传输周期K。所述进行整数计算的选择保证了最快的实时处理。
虽然A(j)隐含地表示时间周期K的分数部分,其可以更有效地计算,以根据位,字节,八位字节,单元,帧等来确定A(j)值。本领域普通技术人员可以理解,不管所实施的设计选择,抵偿所使用的单元。为了便于理解此处所出现的概念,由A(j),C(j)和L存储的值可以理解为表示在字节中。
在顺序队列服务中所使用的第二参数是每个PDU106的长度L。当每个A(j)表示一部分时,在字节中所测得的如上述所表示的,是待用于与输出队列Q(j)有关的PDU的传输的传输周期K,每个PDU长度L表示在服务特定的输出队列中实际传输的数据量,因为每个PDU是从其中传输的。所述PDU的长度包括实际的PDU长度,并且可以额外地解决传输保护间隙,填充,当前首部,由较低的传输协议层增加的首部等。
根据本发明的一个优选实施例,一信用计数器C(j)与每一个输出队列Q(j)有关,如果并且只有如果有至少一个PDU等待以一种顺序的方式传输,每个输出队列Q(j)被服务,所述顺序方式首先服务有最低信用计数器C(j)的输出队列Q(j)。
最初所述信用计数器C(j)设定为0(零)。
在服务相应的输出队列Q(j)和从所述输出队列通过物理传输媒体102传输长度L的PDU106的情况下,每个信用计数器C(j)改变。
如果信用计数器C(j)大于或等于零,所述信用计数器C(j)被分配给刚刚传输的PDU106的长度L的数值。如果信用计数器C(j)小于零,那么信用计数器C(j)被分配给C(j)+L。因此,由于每个PDU106被传输,此处所描述的最简单的过程以最小的计算分配L和C(j)+L中较小的一个给相应的信用计数器C(j)。
每个传输周期K,检查所述输出队列Q(j)的PUD106未决传输。如果一个特定的输出队列Q(j)包含至少一个PDU106未决传输,然后相应的信用计数器C(j)被分配给数值C(j)-A(j)。如果发现一个特定的输出队列Q(j)是空的,相应的信用计数器保持不变。
在输出队列服务排序过程中,所述信用计数器C(j)可以包括负值。有负值的C(j)表示输出队列Q(j),所述输出队列Q(j)相对于PDU的传输改变。
图2是示出根据本发明的一个实施例的顺序输出队列服务的过程的流程图。这种输出排队服务排序过程是一连续的过程,本发明不限于仿真加权合理排队技术的顺序实施。下面参照图3,图4和图5,其中描述输出排队服务排序过程的示例性的并行实施方式。
输出排队服务的顺序过程在步骤200处开始。在第一传输阶段K开始之前,所有的信用计数器C(j)在步骤202装有数值0(零)。
在步骤204可以发现有最低的信用值C(j)的可用的输出队列Q(j)。在下面参照图6和图7可以看出找到可用输出队列的示例性过程,所述可用的输出队列有最低的信用值。
有最低的信用值的可用输出队列可以在步骤206中选择,并且通过在步骤208至少一个PDU传输过传输媒体102而被服务的。对应于服务输出队列Q(j)的信用计数器C(j)在步骤210设定为至少一个传输的PDU的长度L和C(j)+L两个数值中的最小值。
如果传输阶段K没有经过,则从步骤204继续进行此过程,在步骤212确定此事实。
如果在步骤212已经经过传输周期K,所述过程在步骤214选择第一输出队列Q(j),并且如果在步骤216中发现包含至少一个PDU未决传输,相关的信用计数器C(j)在步骤218被设定为C(j)一A(j)。
如果所选择的输出队列在步骤216不包括至少一个未决的PDU或在步骤218分配之后不包括至少一个未决的PDU,所述过程在步骤220中识别,所选择的输出队列Q(j)是否是最后要处理的输出队列。
如果所选择的输出队列Q(j)不是最后要处理的输出队列,那么所述过程在步骤222选择下一个输出队列,并从步骤216继续进行。
在步骤220识别最后一个要处理的输出队列之后,所述过程在步骤204寻找有最低的信用值的可用输出队列。
图2示出的过程是顺序队列服务排序过程。本领域普通技术人员可以理解,等同的队列服务排序过程也能实施,例如图3,图4,图5中所示出的平行过程,但不限于此。
更具体而言,图3,图4和图5所示出的优选的并行实施形式受益于图3的队列服务子程序未被图4和图5的子程序的执行而中断而实现的PDU106的连续传输。
理想地,所有的信用计数器C(j)在每次传输周期K经过之后,会有一零值。这就意味着,对每个传输周期K,相对于每个输出队列Q(j)传输的数据的量完全对应于为每个特定的输出队列Q(j)所分配的带宽。在实践中,PDU106有有效的长度,PDU是不可分的,并且数据通信可以是实发的。每个信用计数器C(j)的剩余值在一个传输周期K之后表示在数据传输中的暂时失衡。
根据本发明的优选实施例,通过选择服务于有最低相关的信用计数器值C(j)的输出队列Q(j),所产生的暂时的失衡在长时间后得到恢复。
图6是示出根据本发明的一个示例性实施例找到有最低的信用值的可用输出队列的示例过程的流程图。
在步骤602根据存储在相应的信用计数器C(j)中的信用值能获得与输出部分有关的输出队列的列表,并在步骤604中储存起来。在步骤606选择有最低信用值的输出队列,并在步骤608进行检查以确定PDU106未决传输。
如果所选择的输出队列有至少一个PDU未决传输,在步骤610设定指针指向当前的输出队列Q(j),所述输出队列已经找到有最低信用值的可用输出队列。在步骤206在选择有最低信用值的可用队列过程中检查所述指针。本领域中其它已知的方法包括,但不限于此,使一寄存器装有当前的输出队列Q(j)。
如果所选择的输出队列在步骤608没有至少一个PDU未决传输,在步骤612选择有下一个最低信用值的输出队列,并且从步骤608继续进行所述过程。
如果检查在列表中的最后一个输出队列,在步骤614确定所述事实,在步骤616设定指针为空值,并从步骤602继续进行。
图7是示出根据本发明的另一个实施例来找到有最低的信用值的有用输出队列的另一示例性过程的流程图。
在步骤702可以得到与输出口有关的输出队列的列表。
通过沿列表进行扫描可以删除没有未决PDU的最初的输出队列。在步骤704选择第一输出队列,并且在步骤706进行检查,以确定所选定的输出队列包括至少一个PDU未决传输。
如果当前所选择的输出队列不包括至少一个在步骤706中的PDU未决传输,当前选择的输出队列在步骤708从列表中除去。如果未到列表的端部,在步骤712选择下一个输出队列,在步骤710确定事实,并且所述过程从步骤706继续进行。
如果发现当前所选择的输出队列包括至少一个在步骤706中的PDU未决传输,并且如果还没到达列表的端部,通过在步骤712选择下一个输出队列,继续进行所述过程。
如果在步骤710没有到达列表的端部,则在步骤714检查列表。
如果在步骤714中检查列表,发现列表不包括任何输出队列,所述过程在步骤716设定指针到零值,并从步骤702开始继续执行。
如果在步骤714的检查列表过程中,发现列表包含至少一个输出队列,所述过程通过扫描剩余的列表继续进行,所述剩余的列表用于有最低相关信用值的输出队列。
目前发明的存储最低信用值的寄存器C在步骤718设定为最大机器可表示数值。在步骤720从剩余的列表中选择第一输出队列,并且在步骤722有关的信用值与在寄存器C中存储的数值进行比较。
如果与当前选择的输出队列有关的信用值低于在寄存器C中存储的数值,所述寄存器在步骤724被分配给所述信用值,并在步骤726将所述指针设定成指向当前的输出队列。在步骤730通过选择下一个输出队列,所述过程继续扫描列表的剩余部分,直至在步骤728到达列表的末端。
此处给出的方法仿真加权合理队列服务技术,其硬件实施的计算最小。
可以理解,上述的实施例仅仅是示例性的,在不脱离本发明的宗旨的前提下可以对其进行各种改动,本发明的保护范围由权利要求书来限定。
权利要求
1.一种用于服务多个与通信口有关的输出队列的调度方法,所述方法包括以下循环的步骤a.选择服务一个输出队列,所述输出队列存储至少一个来自多个输出队列的协议数据单元(PDU),所选择的输出队列有一个相关的存储一最低信用值C(j)的信用计数器;b.选择性地增加存储在所述信用计数器中的信用值C(j),以说明从所选择的输出队列传输至少一个长度为L的PDU;c.周期性地根据分配给每个输出队列的传输带宽分配A(j)使一分组多个相应的信用计数器的信用值递减,所述计数器与存储至少一个PDU未决传输的输出队列有关,通过选择服务有最低信用值的输出队列,在长期运行下以最小的计算实现仿真加权合理排队。
2.如权利要求1所述的方法,其中所述多个输出队列包括至少两个输出队列。
3.如权利要求1所述的方法,其中传输至少一个PDU,所述方法还包括仅仅传输一个PDU的方法。
4.如权利要求1所述的方法,其中选择性地增加与所选择的输出队列有关的信用计数器的信用值C(j),所述方法还包括,如果C(j)有一个正值,设定C(j)至L的步骤。
5.如权利要求1所述的方法,其中选择性地增加与所选择的输出队列有关的信用计数器的信用值C(j),所述方法还包括如果C(j)有一负值,设定C(j)至C(j)+L的步骤。
6.如权利要求1所述的方法,其中多个PDU的传输被分为传输周期,并且在每个传输周期过程中,多个信用计数器分组中的信用值C(j)周期性地递减一次。
7.如权利要求6所述的方法,其中,在每个传输周期的末端使多个信用计数器分组中的信用值C(j)递减。
8.如权利要求7所述的方法,其中使多个分组信用计数器分组的信用值C(j)递减,所述方法包括设定每个信用计数器的值至C(j)-A(j)的步骤。
9.如权利要求1所述的方法,其中所述方法还包括根据保留在相应的信用计数器中的信用值C(j)对保留至少一个PDU未决传输的输出队列进行分类的步骤。
10.如权利要求1所述的方法,其中,所述方法还包括扫描通过多个输出队列的信用计数器的步骤,所述输出队列有至少一个PDU未决传输用于保存在相应的信用计数器中的最低信用值。
11.一种调度程序,用于实施权利要求1所述的队列服务调度方法。
12.一种数据交换节点,用于实施权利要求1所述的队列服务调度方法。
全文摘要
提供一种在数据包交换环境下调度队列服务的方法。所述方法包括一系列循环的步骤。调度所述输出队列以在最小的信用值基础上服务。从一组与通信口有关的输出队列中选择输出队列。所选择的输出队列有至少一个PDU未决传输和一最低的信用值。从所选择的输出队列传输至少一个有一长度PDU,并且考虑所传输的PDU长度递增所述信用值。PDU的传输分为传输周期。在每个传输周期,根据分配给每个输出队列的传输分配递减所述信用值一次。所述方法以最小的计算进行硬件实施,来仿真加权合理队列服务。
文档编号H04L12/24GK1359219SQ0114146
公开日2002年7月17日 申请日期2001年9月24日 优先权日2000年9月29日
发明者王凌霄, 克雷格·巴兰克, 张荣峰 申请人:扎尔林克半导体V.N.股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1