支持层次化队列调度和流量整形的方法及装置的制作方法

文档序号:7999966阅读:428来源:国知局
专利名称:支持层次化队列调度和流量整形的方法及装置的制作方法
技术领域
本发明涉及网络通信技术,尤其是网络交换设备中流量管理引擎中队列调度和流量整形的方法及装置。
背景技术
交换芯片分为上行方向报文处理引擎、流量管理引擎和下行方向报文处理引擎。 报文在上行方向处理引擎中根据报文头部携带的外部优先级字段(如802. lp、DSCP等)映射得到交换芯片内部处理优先级,并查找转发表得到下一跳出去的目的端口号。流量管理引擎接收到报文后,根据目的端口号和内部优先级计算缓存队列索引号。报文需要通过队列丢弃管理算法后才准许进入缓存队列等待调度。现有网络交换芯片中流量管理引擎在设计上只考虑了在端口级别安排调度器,并且端口级别调度器服务于业务队列之间的流量调度,不支持用户之间的流量按照比例共享端口带宽,不符合层次化流量调度的设计理念。现有技术中网络交换芯片的不足之处在于 (1)会产生混乱的带宽抢占结果,某个用户的带宽可能被其他用户高优先级业务抢占,不能保证每个用户的总体带宽;( 不能真实体现IP组网中接入-汇聚-核心三层网络拓扑结构。接入层为不同用户提供各种接入手段;汇聚层对接入层业务流汇聚;核心层保证快速转发。汇聚层交换设备要求集中配置H-Q0S功能,把下挂的各类通信设备、业务类型映射到汇聚点的不同层次节点上,进行层次化的QoS管理;(3)用户流量整形器和业务队列之间缺乏联动机制,某个业务队列未用完的带宽不能被其他业务队列所使用。

发明内容
本发明的目的在于提供一种支持层次化队列调度和流量整形的方法。该方法真实体现接入-汇聚-核心的层次化网络拓扑,结构灵活、硬件开销低,切合网络对H-QoS部署的实际需求。相应于所述方法,本发明还提供一种持层次化队列调度和流量整形的装置。为实现上述发明目的之一,本发明提供了一种支持层次化队列调度和流量整形的方法,包括如下步骤
51、接收报文并为所述报文映射内部优先级;
52、报文进入缓存队列管理单元,缓存队列WRED算法对响应性流和非响应性流进行区分,并针对响应性流和非响应性流配置不同的丢弃阈值,以保证在网络拥塞的状况下,提前丢弃非响应性流,保护响应性流;
53、将报文送进缓存队列并通过三层流量整形器进行流量整形,对缓存队列中的报文进行业务组调度和端口级调度后送出队列;
54、对报文进行编辑并将其从目的端口送出。作为本发明的进一步改进,所述步骤S2中“缓存队列WRED算法对响应性流和非响应性流进行区分,并针对响应性流和非响应性流配置不同的丢弃阈值”具体为对响应性流中符合流量规格中关于承诺速率约定的报文,即被标记为绿色的报文,设置第一丢弃阈值和第一丢弃概率;
对响应性流中超过承诺速率且低于峰值速率的报文,即被标记为黄色的报文,设置第二丢弃阈值和第二丢弃概率;
对响应性流中违犯流量规格中关于峰值速率限制的报文,即被标记为红色的报文,设置第三丢弃阈值和第三丢弃概率;
对非响应性流设置第四丢弃阈值和第四丢弃概率;
其中,所述第一丢弃阈值 > 第二丢弃阈值 > 第三丢弃阈值 > 第四丢弃阈值,相应地,所述第一丢弃概率 < 第二丢弃概率 < 第三丢弃概率 < 第四丢弃概率。作为本发明的进一步改进,所述三层流量整形器包括业务队列层流量整形器、业务组层流量整形器和端口流量整形器,在业务组内,设置多个硬件实现的流量整形器和两个虚拟的流量整形器,硬件实现的流量整形器包括一个MR流量整形器、若干CHR流量整形器和若干MR流量整形器;虚拟的流量整形器包括CIIipass流量整形器和CIIifail流量整形器。作为本发明的进一步改进,所有硬件实现的流量整形器采用令牌桶算法实现。作为本发明的进一步改进,在每个业务组内设置一个MR流量整形器、若干CHR流量整形器和若干E^流量整形器,所有业务队列必须经过P^流量整形器。作为本发明的进一步改进,所述CIR流量整形器与所述EIR流量整形器为可相互转换的,通过一标识位来标识当前流量整形器的类型。作为本发明的进一步改进,所有底层的CHR流量整形器中溢出的令牌可以共享到其他的CHR流量整形器中以供使用。作为本发明的进一步改进,所述步骤S3具体为
业务组调度采用SP和WFQ混合调度器,设置若干个调度优先级,在同一调度优先级中, 采用WFQ调度算法服务来自不同队列的报文;在不同调度优先级中,按照优先等级采用SP 调度算法调度报文;
端口级调度也采用SP和WFQ混合调度器,设置若干调度优先级。业务组调度器送出的报文进入端口调度器,报文在业务组调度器中的优先级传递到端口调度器。作为本发明的进一步改进,该方法还包括支持将两个或两个以上的业务组合并为一个超级业务组,其中,合并后的超级业务组只设有一个P^流量整形器,而CHR流量整形器或MR流量整形器的数量为合并前的2倍,合并后的逻辑业务组内CHR流量整形器或 EIR流量整形器的索引号进行重新编排。为实现本发明的另一发明目的,本发明的一种支持层次化队列调度和流量整形的装置,包括如下单元
报文接收单元、用于接收报文并为所述报文映射内部优先级; 缓存队列管理单元、用于利用缓存队列WRED算法对响应性流和非响应性流进行区分, 并针对响应性流和非响应性流配置不同的丢弃阈值,以保证在网络拥塞的状况下,提前丢弃非响应性流,保护响应性流;
流量整形单元、用于控制缓存队列中报文出队列的速率,并通过三层流量整形器进行流量整形;
队列调度单元、用于对缓存队列中的报文进行业务组调度和端口级调度后送出队列;
5报文输出单元、用于对报文进行编辑并将其从目的端口送出。与现有技术相比,本发明在业务队列配置WRED算法,针对TCP响应性流被标记为绿色、黄色和红色的报文分别配置丢弃阈值,针对UDP等非响应性流单独配置丢弃阈值,通过对非响应性流配置较小的丢弃阈值,在发生拥塞时提前惩罚非响应性流,从而使得响应性流和非响应性流带宽利用的公平性大大提高。本发明所设计的层次化流量整形和调度, 结构灵活,硬件开销小,真实体现接入-汇聚-核心的网络拓扑,切合网络对H-QoS部署的实际需求。


图1是本发明一实施方式中的支持层次化队列调度和流量整形的方法的工作流程图2是本发明一实施方式中网络交换芯片数据通道和处理引擎示意图3是本发明一实施方式中网络交换芯片流量管理引擎示意图4是本发明一实施方式中区分响应性流和非响应性流的WRED队列管理算法示意
图5是本发明一实施方式中层次化队列调度和流量整形示意图; 图6是本发明一实施方式中业务组内各个业务流CIR带宽共享机制实现方法示意图; 图7是本发明另一实施方式中业务组内各个业务流CIR带宽共享机制实现方法示意
图8是本发明一实施方式中队列组流量整形器合并方法示意图; 图9是本发明另一实施方式中支持层次化队列调度和流量整形的装置的模块示意图。
具体实施例方式以下将结合附图所示的具体实施方式
对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。首先参照图1和图2所示,在本发明一具体实施方式
中,一种支持层次化队列调度和流量整形的方法,其包括如下步骤
Si、接收报文并为所述报文映射内部优先级;其中,报文从入端口(101A101X表示若干个入端口)进入网络交换芯片100,在交换芯片上行方向报文处理引擎102中为报文映射内部优先级。该内部优先级标识了报文在网络交换芯片中被处理的优先级别。S2、报文进入缓存队列管理单元,缓存队列WRED算法对响应性流和非响应性流进行区分,并针对响应性流和非响应性流配置不同的丢弃阈值,以保证在网络拥塞的状况下, 提前丢弃非响应性流,保护响应性流;
所述步骤S2中“缓存队列WRED算法对响应性流和非响应性流进行区分,并针对响应性流和非响应性流配置不同的丢弃阈值”具体为
对响应性流中符合流量规格中关于承诺速率约定的报文,即被标记为绿色的报文,设置第一丢弃阈值和第一丢弃概率;
对响应性流中超过承诺速率且低于峰值速率的报文,即被标记为黄色的报文,设置第二丢弃阈值和第二丢弃概率;
对响应性流中违犯流量规格中关于峰值速率限制的报文,即被标记为红色的报文,设置第三丢弃阈值和第三丢弃概率;
对非响应性流设置第四丢弃阈值和第四丢弃概率;
其中,所述第一丢弃阈值 > 第二丢弃阈值 > 第三丢弃阈值 > 第四丢弃阈值,相应地,所述第一丢弃概率 < 第二丢弃概率 < 第三丢弃概率 < 第四丢弃概率。在本实施方式中,交换芯片上行方向报文处理引擎102对报文进行流量监管,对符合SLA中承诺带宽部分的报文标记为绿色、超出承诺带宽但低于峰值带宽部分的报文标记为黄色、超出峰值带宽部分的报文标记为红色。随后,根据报文目的地址查找转发表,获取报文下一跳的目的端口号,并将报文送达流量管理引擎103。流量管理引擎103接收到报文后,根据目的端口号和内部优先级计算缓存队列索引号,在其通过缓存资源管理约束检查后进入缓存队列。缓存队列采用FIFO排队规则。S3、将报文送进缓存队列并通过三层流量整形器进行流量整形,对缓存队列中的报文进行业务组调度和端口级调度后送出队列;其中,缓存队列中的报文需要经过业务组调度器和端口级调度器两层调度才能出队列。交换芯片内集成的所有缓存队列被划分到多个业务组中,每个业务组包含了若干个缓存队列。各业务组映射到不同的端口上,每个端口包含至少1个或若干个业务组。业务组调度器在其组中的缓存队列之间按照SP和WFQ的混合调度算法选择缓存队列。端口级调度器按照SP和WFQ的混合调度算法选择业务组调度器。被业务组调度器从缓存队列中选出的报文只有当该业务组调度器被端口级调度器选中后才能够真正出队列。S4、对报文进行编辑并将其从目的端口送出。报文出队列后被送往交换芯片下行方向报文处理引擎104,下行方向报文处理引擎104对报文进行编辑并将其从目的端口 (105A 105X表示出端口 0至出端口 N)送出。本发明提供流量管理引擎中队列管理、调度和流量整形的方法。结合图2和图3 所示,在本实施方式中,流量管理引擎103接收到报文后,根据缓存资源管理策略对报文进行接纳控制,如果报文被缓存资源管理策略所接纳,则将报文存储到MMU共享缓存;否则拒绝报文存储到MMU共享缓存并丢弃到达报文。在本实施方式中,缓存资源管理策略依据缓存队列长度和丢弃阈值对报文进行尾丢弃或者WRED丢弃。在尾丢弃算法中,当瞬时队列长度达到丢弃阈值后,即对到达报文进行丢弃。RED算法由一组参数描述,包括最大阈值maxth、最小阈值minth、最大丢弃概率maxp 和平均队列滑动加权系数W。WRED针对TCP等响应性流被标记为绿色、黄色和红色的报文分别配置RED丢弃参数,针对UDP等非响应性流单独配置RED丢弃参数(如图4所示)。通过对非响应性流配置较小的丢弃阈值minth和maxth,和较大的丢弃概率maxp,可以在拥塞情况下,达到提前丢弃非响应性流和加大对非响应性流的惩罚力度的目的。报文进入业务队列后,需要经过三层流量整形器和两层调度器之后,才从业务队列中发送到出端口。如图5所示,三层流量整形器包括业务队列层流量整形器、业务组层流量整形器和端口流量整形器。两层调度器包括业务组层调度器和端口层调度器。在本步骤中,每个业务队列被划分到某个业务组中,每个业务组包含若干个业务队列。在业务组内,设置多个硬件实现的流量整形器和两个虚拟的流量整形器。硬件实现的流量整形器包括一个P^流量整形器和若干个CHR和E^流量整形器;虚拟的流量整形器包括CIIipass和CIRfail两个逻辑流量整形器。所有硬件实现的流量整形器采用令牌桶算法实现。其中,CHR和MR流量整形器可以相互转换。也就是说,对于某个特定的流量整形器而言,不固定其作为CHR或E^流量整形器的功能,可以通过一个标志位来标识其功能是CHR流量整形器还是MR流量整形器。 这个标志位是可配置的。这种方法可以节省为分别设置CHR和E 流量整形器带来的硬件开销。虚拟的流量整形器中,CIIipass表示从其经过的业务队列的报文都被认为是符合流量规格中关于承诺带宽的约定,所以,只要MR流量整形器中令牌数足够时,报文总被标记为绿色;当P^流量整形器中令牌数不够时,报文被标记为红色。CIRfail表示从其经过的业务队列的报文都被认为是违犯流量规格中关于承诺带宽的约定,所以,当MR流量整形器中令牌足够时,报文被标记为黄色;当P^流量整形器中令牌数不够时,报文被标记为红色。虚拟的流量整形器不需要配备相关的硬件,只需要一些简单的逻辑便可实现,节省了硬件的开销,又能满足典型的应用需求。这些流量整形器在形式上分成两级流量整形器位于顶层,汇聚所有其他流量整形器中经过的流量;所有其他的流量整形器平行放置于底层。P^流量整形器用于限制该业务组所包含的所有业务队列的总体带宽,因此,所有业务队列都必须经过MR流量整形器。每个业务队列通过配置选择底层的某个流量整形器,其业务流量需要经过所选择的流量整形器和MR流量整形器。业务队列中的报文在经过业务组内两级流量整形器之后,可能被着色为绿色、黄色和红色。绿色表示报文符合流量规格中关于承诺速率的约定; 黄色表示报文在超过承诺速率之外低于关于峰值速率的限制;红色表示报文超出了关于峰值速率的限制。在本步骤中,所有底层的CHR流量整形器中溢出的令牌可以被送往其他的CHR流量整形器。这种机制可以达到某个业务流在未使用完分配给其业务队列的带宽时,可以将其剩余的带宽共享给其业务组内的其他业务流使用。本发明提供两种方法实现该CHR带宽共享机制。如图6所示,为本发明中CHR带宽共享机制的第一实施方式。其中,每个CHR流量整形器通过一个标志位SFi来表示其溢出的令牌是否可以共享给其他CHR流量整形器使用和其他CHR流量整形器溢出的令牌是否可以共享给该CHR流量整形器使用。当SFi标志位等于0时,表示该CHR流量整形器溢出的令牌不能被其他CHR流量整形器使用,所以溢出的令牌被直接丢弃。当SFi标志位等于1时,该CHR流量整形器溢出的令牌暂存到令牌分发器中。令牌分发器按照SP或者WRR原则在各个使能了 SFiW CHR流量整形器中分发令牌。每个CHR流量整形器能够接受令牌分发器溢出令牌的数量不能超过下列三个量值的最小值
(a)(CIRmax - CIRi)速率在一个更新周期内产生的令牌
(b)该CHR流量整形器令牌桶中能够容纳的令牌数,即CBSi与当前剩余令牌数之差
(c)令牌分发器剩余的令牌数
如图7所示,为本发明中CHR带宽共享机制的第二实施方式。其中,每个CHR流量整形器通过一个标志位SFi来表示是否需要到其他CHR令牌桶中取走相应数量的令牌。当SFi 标志位等于0时,表示报文经过该CHR流量整形器时,不会到其他CHR流量整形器中取走相
8应数量的令牌。当SFi标志位等于1时,由取令牌控制器到其他SFi等于1的CHR流量整形器中取走相应数量的令牌。这里,可以限制其他CIR流量整形器的范围,比如,当前的CHR 流量整形器索引号为i,可以限定到索引号比i大的CHR流量整形器中取令牌、或者索引号比i小的CHR流量整形器中取令牌、或者到所有索引号不等于i的CHR流量整形器中取令牌。这样,可以衍生出多种类型的带宽定制策略。这种CIR带宽共享机制实现方法需要经由配置层面的转换满足用户SLA的需求。比如,用户SLA要求,语音业务(HR = 10Mbps, PIR = IOMbps ;视频业务CIR = 30Mbps, PIR = IOOMbps ;数据业务CIR = 0Mbps, PIR = 100Mbps。那么配置层面应该配置为语音业务CIR = 10Mbps, PIR = IOMbps ;视频业务 CIR = 40Mbps, PIR = 100Mbps,数据业务(HR = 100Mbps, PIR = 100Mbps。所有语音业务的流量都会到视频和数据业务CHR令牌桶中取令牌;视频业务的流量会到数据业务CHR令牌桶中取令牌。当语音业务没有流量时,视频业务可保证40Mbps的带宽,当语音和视频业务都没有流量时,数据业务可保证IOOMbps的带宽。在本步骤中,实现了相邻两个业务组的合并,如图8所示,业务组合并后,对配置面仍然呈现一个逻辑的业务组。有相邻两个业务组合并后的逻辑业务组,拥有的业务队列和流量整形器在数量上都是单个业务组的两倍。这种实现在满足应用需求的前提下,降低了为设置包含有更多业务队列和流量整形器的超级业务组而带来的硬件开销。合并后的逻辑业务组中的流量整形器索引号重新编排索引号,由相邻两个物理业务组中的业务队列灵活选择使用。其中,合并后的超级业务组只设有一个MR流量整形器。报文经过业务组流量整形器后,根据其被标记的颜色被送入某个业务组调度器中。在本步骤中,业务组调度器采用SP和WFQ混合调度器,包含1个SP调度器和若干个WFQ调度器。每个WFQ调度器被赋予一个调度优先级,SP调度器按照优先级在这些WFQ 调度器之间选择业务队列。在WFQ调度器内,根据业务队列上配置的权重在链入到该WFQ 调度器的业务队列之间选择报文。每个业务队列分别就绿色、黄色和红色三种颜色配置报文在被标记成某种颜色时,该业务队列被链入到哪个WFQ调度器。由于业务队列在物理上是一个FIFO链表,其中缓存的报文需要按序出队列。所以,业务队列会根据当前进入流量整形器的报文被标记的颜色而动态地链入到某个WFQ调度器上。每个业务队列按三种颜色分别配置其对应的WFQ 调度器。对于红色状态,还可以将其配置到某个特定的虚拟调度器,被链入到这个虚拟调度器上的队列暂停发送报文,等待流量整形器中有足够令牌后才能继续发送。在本步骤中,为支持数据中心网络中ETS调度模型,在业务组SP调度器和WFQ调度器之间可插入一个ETS调度器。该ETS调度器也采用WFQ和SP混合调度器,包含IfWFQ 调度器和3个SP调度器。三个SP调度器分别对应LAN业务流调度器、SAN业务流调度器和IPC业务流调度器。IPC业务流调度器不参与WFQ调度,被赋予最高的调度优先级。WFQ 调度器在LAN业务流调度器和SAN业务流调度器之间按照权重进行比例带宽分配。当ETS 调度器被插入时,业务组中与业务队列各种颜色对应的若干WFQ调度器分别映射到ETS调度器中的三个SP调度器上,实现了 ETS调度器和业务组调度器的衔接。在此之后,报文被业务组调度器选取并送往端口调度器。端口调度器也采用SP和 WFQ混合调度器,包括1个SP调度器和若干个WFQ调度器。其调度原理和业务组混合调度器类似。在本步骤中,业务组中的WFQ调度器的优先级传递到端口层次,并通过配置可以映射到端口层次中某个WFQ调度器上。由于端口层次包含有多个业务组,被映射到同一个 WFQ调度器上的业务组,按照业务组上配置的权重进行业务组的选择,被选中的业务组,将业务组调度器选中的队列中的报文从缓存中取出,并送往下行方向报文处理引擎。参图9所示,在本发明一实施方式中,一种支持层次化队列调度和流量整形的装置,包括如下单元
报文接收单元10、用于接收报文并为所述报文映射内部优先级; 缓存队列管理单元20、用于利用缓存队列WRED算法对响应性流和非响应性流进行区分,并针对响应性流和非响应性流配置不同的丢弃阈值,以保证在网络拥塞的状况下,提前丢弃非响应性流,保护响应性流;
流量整形单元30、用于控制缓存队列中报文出队列的速率,并通过三层流量整形器进行流量整形;
队列调度单元40、用于对缓存队列中的报文进行业务组调度和端口级调度后送出队
列;
报文输出单元50、用于对报文进行编辑并将其从目的端口送出。值得一提的是,本发明的装置和方法是沿用了同样的技术方案,所以在描述方式时所提及的技术细节在本发明的装置中同样适用,两者在技术上是融为一体的。本发明所述的技术方案较现有技术方案存在如下优点
(1)在业务队列配置WRED算法,针对TCP响应性流被标记为绿色、黄色和红色的报文分别配置丢弃阈值,针对UDP等非响应性流单独配置丢弃阈值,可以通过对非响应性流配置较小的丢弃阈值,在发生拥塞时提前惩罚非响应性流,达到提高响应性流和非响应性流公平利用带宽的目的。(2)针对每个业务队列设置P^流量整形器,平滑业务队列发出的流量,限制业务队列送入业务组调度器的流量。流量整形器采用令牌桶算法实现,当且仅当令牌桶中有足够的令牌时,业务队列头部的报文才有资格参与业务调度器的调度。(3)对业务队列进行分组。在业务组内设置一个MR流量整形器限制整个业务组的带宽,所有业务队列必须经过P^流量整形器。另外设置若干个CHR或E^流量整形器, 每个队列还可以单独选择某个CIR或者E^流量整形器。CHR流量整形器提供业务队列的带宽保证,E^流量整形器提供在保证业务队列的带宽后,并存在剩余带宽的前提下,还可以利用一定的额外带宽,提高网络链路的利用率。(4)业务组内除PIR流量整形器外的其他整形器既可配置为CHR流量整形器,也可配置为EIR流量整形器,大大提高配置的灵活性,减少为单独设置CHR和E^流量整形器带来的硬件开销,满足更多的业务带宽定制要求。(5)实现了业务组CHR流量整形器之间的带宽共享。某个CHR流量整形器未使用完的带宽可以再分配给其他CHR流量整形器,保证了对整个业务组的承诺信息速率。(6)支持将两个或两个以上的业务组合并为一个超级业务组,合并后的超级业务组逻辑上被看成是一个业务组,但是这个超级业务组中包含了更多的流量整形器,可以配置出更复杂的带宽定制方案,满足日益复杂的QoS需求。
(7)业务组采用SP和WFQ混合调度器,设置若干个调度优先级,在同一调度优先级中,采用WFQ调度算法服务来自不同队列的报文;在不同调度优先级中,按照优先等级采用SP调度算法调度报文。满足了实时业务的低时延和时延抖动要求,同时又能在带宽密集型业务之间公平合理地分配带宽。(8)端口调度器也采用SP和WFQ混合调度器,设置若干调度优先级。业务组调度器送出的报文进入端口调度器,报文在业务组调度器中的优先级传递到端口调度器,可以保证实时业务在各个调度层次上的低时延特性,同时能够保证对用户的承诺带宽。为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备 (可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施方式或者实施方式的某些部分所述的方法。以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。本申请可用于众多通用或专用的计算系统环境或配置、或通讯系统环境或设备中。例如个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、 基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、 包括以上任何系统或设备的分布式计算环境等等,以及交换机、路由器、包括以上任何设备的通讯系统环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
权利要求
1.一种支持层次化队列调度和流量整形的方法,其特征在于,其包括如下步骤51、接收报文并为所述报文映射内部优先级;52、报文进入缓存队列管理单元,缓存队列WRED算法对响应性流和非响应性流进行区分,并针对响应性流和非响应性流配置不同的丢弃阈值,以保证在网络拥塞的状况下,提前丢弃非响应性流,保护响应性流;53、将报文送进缓存队列并通过三层流量整形器进行流量整形,对缓存队列中的报文进行业务组调度和端口级调度后送出队列;54、对报文进行编辑并将其从目的端口送出。
2.根据权利要求1所述的方法,其特征在于,所述步骤S2中“缓存队列WRED算法对响应性流和非响应性流进行区分,并针对响应性流和非响应性流配置不同的丢弃阈值”具体为对响应性流中符合流量规格中关于承诺速率约定的报文,即被标记为绿色的报文,设置第一丢弃阈值和第一丢弃概率;对响应性流中超过承诺速率且低于峰值速率的报文,即被标记为黄色的报文,设置第二丢弃阈值和第二丢弃概率;对响应性流中违犯流量规格中关于峰值速率限制的报文,即被标记为红色的报文,设置第三丢弃阈值和第三丢弃概率;对非响应性流设置第四丢弃阈值和第四丢弃概率;其中,所述第一丢弃阈值 > 第二丢弃阈值 > 第三丢弃阈值 > 第四丢弃阈值,相应地,所述第一丢弃概率 < 第二丢弃概率 < 第三丢弃概率 < 第四丢弃概率。
3.根据权利要求1所述的方法,其特征在于,所述三层流量整形器包括业务队列层流量整形器、业务组层流量整形器和端口流量整形器,在业务组内,设置多个硬件实现的流量整形器和两个虚拟的流量整形器,硬件实现的流量整形器包括一个MR流量整形器、若干 CHR流量整形器和若干MR流量整形器;虚拟的流量整形器包括CII^ass流量整形器和CIIifail 流量整形器。
4.根据权利要求2所述的方法,其特征在于,所有硬件实现的流量整形器采用令牌桶算法实现。
5.根据权利要求2所述的方法,其特征在于,在每个业务组内设置一个P^流量整形器、若干CHR流量整形器和若干E^流量整形器,所有业务队列必须经过P^流量整形器。
6.根据权利要求4所述的方法,其特征在于,所述CHR流量整形器与所述E^流量整形器为可相互转换的,通过一标识位来标识当前流量整形器的类型。
7.根据权利要求2至5中任意一项所述的方法,其特征在于,所有底层的CHR流量整形器中溢出的令牌可以共享到其他的CHR流量整形器中以供使用。
8.根据权利要求1所述的方法,其特征在于,所述步骤S3具体为业务组调度采用SP和WFQ混合调度器,设置若干个调度优先级,在同一调度优先级中, 采用WFQ调度算法服务来自不同队列的报文;在不同调度优先级中,按照优先等级采用SP 调度算法调度报文;端口级调度也采用SP和WFQ混合调度器,设置若干调度优先级,业务组调度器送出的报文进入端口调度器,报文在业务组调度器中的优先级传递到端口调度器。
9.根据权利要求1所述的方法,其特征在于,该方法还包括支持将两个或两个以上的业务组合并为一个超级业务组,其中,合并后的超级业务组只设有一个PIR流量整形器,而 CIR流量整形器或E^流量整形器的数量为合并前的2倍,合并后的逻辑业务组内CHR流量整形器或MR流量整形器的索引号进行重新编排。
10.一种支持层次化队列调度和流量整形的装置,其特征在于,其包括如下单元 报文接收单元、用于接收报文并为所述报文映射内部优先级;缓存队列管理单元、用于利用缓存队列WRED算法对响应性流和非响应性流进行区分, 并针对响应性流和非响应性流配置不同的丢弃阈值,以保证在网络拥塞的状况下,提前丢弃非响应性流,保护响应性流;流量整形单元、用于控制缓存队列中报文出队列的速率,并通过三层流量整形器进行流量整形;队列调度单元、用于对缓存队列中的报文进行业务组调度和端口级调度后送出队列; 报文输出单元、用于对报文进行编辑并将其从目的端口送出。
全文摘要
本发明揭示了一种支持层次化队列调度和流量整形的方法,包括如下步骤接收报文并为所述报文映射内部优先级;将报文送进缓存队列,缓存队列WRED算法对响应性流和非响应性流进行区分;针对响应性流和非响应性流配置不同的丢弃阈值,以达到在网络拥塞的状况下,提前丢弃非响应性,保护响应性流的目标;将报文送进缓存队列并通过三层流量整形器进行流量整形,对缓存队列中的报文进行业务组调度和端口级调度后送出队列;对报文进行编辑并将其从目的端口送出。本发明设计的层次化流量整形和队列调度实现方法,结构灵活,硬件开销低,真实体现接入-汇聚-核心的层次化网络拓扑,切合网络对H-QoS部署的实际需求。
文档编号H04L12/56GK102368741SQ20111039786
公开日2012年3月7日 申请日期2011年12月5日 优先权日2011年12月5日
发明者荣亮, 许俊, 郑晓阳, 龚源泉 申请人:盛科网络(苏州)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1