一种聚合组流量均衡方法

文档序号:7900176阅读:380来源:国知局
专利名称:一种聚合组流量均衡方法
技术领域
本发明涉及一种流量均衡的方法,尤其涉及通讯领域中的聚合组中的快速流量均衡。
背景技术
目前流量均衡方法采用如下模式根据聚合组中的最多端口数的不同(2个、4个或8个等,以4个为例),取数据包目的地址和源地址等其它参数项的最后1位、2位或3位(以2位为例)做异或。如图1所示,取2位异或时将有四种异或结果,每一种异或结果对应映射表的一项索引。然后将异或结果作为索引查映射表,得到一个端口选择队列号,再根据端口选择队列号在端口选择表中找到端口选择顺序(即端口选择队列),然后在端口选择队列找到其中的第一个可用端口。端口选择表由系统配置。如图1所示取多个参数项的最后2位异或结果为01,则在映射表中查到端口选择表队列号4;在端口选择表队列4中,首先选择的是端口1,如果端口1流量拥塞,选择端口4,端口4应其他原因无法使用则选择端口3等。通过参数异或,映射,端口选择表是各个端口可能被选择的概率都相等,从而达到流量均衡的目的。但现有算法不仅复杂度高,需要查询多个表项,更给系统处理增加了时间负荷,对于特别是高速以太网系统的处理性能影响很大。

发明内容
本发明解决的技术问题是为了克服了现有流量均衡方法中端口选择需经过多级映射与检索,系统处理的时间较长,特别是在各个表项不再同一存储区,查找过程耗费的系统时间更将迅速增加,这给高速以太网的处理增加了沉重的负荷等缺点,提供一种简单快速的聚合组流量均衡方法。
本发明所述的聚合组流量均衡方法,包括以下处理步骤1)把聚合组中的2nn=1、2、3...个端口进行顺序编号;数据包多个参数中的n位异或后的每种异或结果对应一个端口编号;2)将数据包多个已知参数取需要异或的n位进行异或;3)根据步骤2)中的异或结果按照步骤1)的对应关系选择聚合组的一个对应端口;4)根据所述步骤3)的对应端口的流量状态决定是否可选择此端口,如果可以,则结束;如果该端口不可选,则转步骤5);5)将异或结果对应的端口编号按2n进制加法进行累加,从个位起取累加结果中小于2n的值作为替代步骤3)中的待选端口号,转步骤4);6)循环2n次后如果还没有找到可选择的端口,返回选择失败。
采用本发明所述流量均衡方法,与现有技术相比,在各个端口被选择的概率上相同,即流量均衡能力相同,并取得了减少多级查询表项的进步,达到了快速处理流量均衡的效果,节省了系统处理流量的时间,提高了系统处理性能等等


图1是现有技术的流量均衡方法原理图。
图2是本发明的流量均衡方法原理图。
图3是本发明的流量均衡方法处理流程图。
具体实施例方式
下面结合附图对技术方案的实施作进一步的详细描述以聚合组中有4个端口为例,端口从0开始编号;将数据包多个参数的最后2位进行异或;结果00先选端口0,如不行则选端口0++(=端口1),不行再++;01先选端口1,如不行则选端口1++(=端口2),不行再++;10先选端口2,如不行则选端口2++(=端口3),不行再++;11先选端口3,如不行则选端口3++(=端口0),不行再++;按四进制加法取个位,最多循环4次。
端口的选择顺序参考图2所示。
如图3所示,具体处理流程包括
1)把聚合组中的2nn=1、2、3...个端口进行顺序编号,本例中端口的编号分别为0、1、2、3;数据包多个参数中的2位异或后的每种异或结果对应一个端口编号,00对应端口号0,01对应端口号1,10对应端口号2,11对应端口号3;2)将数据包多个已知参数取需要异或的2位进行异或;3)根据步骤2)中的异或结果按照步骤1)的对应关系选择聚合组的一个对应端口;假设异或结果是11,则选择端口号为3的端口;4)根据所述步骤3)的对应端口(即端口号为3的端口)的流量状态决定是否可选择此端口,如果可以,则结束;如果该端口不可选,则转步骤5);5)将异或结果对应的端口编号按4进制加法进行累加(累加结果的个位为0),从个位起取累加结果中小于4的值作为替代步骤3)中的待选端口号即端口号为0的端口,转步骤4);6)循环4次后如果还没有找到可选择的端口,返回选择失败。
本发明的方法与现有技术相比在各端口的流量均衡方面具有相同的性能,即各个端口被选择的概率相同。同时本发明的方法方便快速,省去了多级检索表项的步骤,大大地减少了系统处理每个包的时间,从而显著地提高了系统处理能力。经验数据表明查表一次需要3个指令周期,一个包的整个处理周期大约为50个指令周期。则现有技术在查表时需要两次查表6个指令周期,而快速算法需要1个指令周期。那么快速算法对大约提高10%的系统效率。
虽然本发明的优选实施例和其他实施例已被说明和描述,但很明显本发明是不受限制的。在不偏离由附属权利要求书所确定的本发明的精神和范围的条件下,本领域的技术人员将会考虑到许多修正、更换、变化、替代和等效的内容。
权利要求
1.一种聚合组流量均衡方法,其特征在于,所述流量均衡方法包括以下处理步骤1)把聚合组中的2nn=1、2、3...个端口进行顺序编号;数据包多个参数中的n位异或后的每种异或结果对应一个端口编号;2)将数据包多个已知参数取需要异或的n位进行异或;3)根据步骤2)中的异或结果按照步骤1)的对应关系选择聚合组的一个对应端口;4)根据所述步骤3)的对应端口的流量状态决定是否可选择此端口,如果可以,则结束;如果该端口不可选,则转步骤5);5)将异或结果对应的端口编号按2n进制加法进行累加,从个位起取累加结果中小于2n的值作为替代步骤3)中的待选端口号,转步骤4);6)循环2n次后如果还没有找到可选择的端口,返回选择失败。
2.根据权利要求1所述的聚合组流量均衡方法,其特征在于,所述步骤1)中聚合组中的端口从0开始顺序编号,数据包多个参数中n位异或后的每种异或结果对应于与该异或结果值相等的端口号。
3.根据权利要求1或2所述的聚合组流量均衡方法,其特征在于,所述步骤2)中可选择多个已知参数的最后n位进行异或。
全文摘要
本发明涉及一种流量均衡的方法,尤其涉及通讯领域中的聚合组中的快速流量均衡,通过将端口号与参数的异或结果与端口号进行值的唯一对应,如果待选的端口流量拥塞,则选择下一个端口号的端口,这样减少多级查询表项达到了快速处理流量均衡的效果,节省了系统处理流量的时间,提高了系统处理性能。
文档编号H04L12/24GK1538665SQ0311326
公开日2004年10月20日 申请日期2003年4月18日 优先权日2003年4月18日
发明者马开, 俞杰, 李振刚, 马 开 申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1