大流负载均衡转发方法及装置的制造方法_2

文档序号:8265599阅读:来源:国知局

[0026]进一步的,在本实施方式中,若预估当前的传输端口即将发生拥塞时,所述flow自动查找符合切换条件的所述输出端口。本发明的优选实施方式中,在当前统计周期开始后,所述flow选择切换的传输端口为当前负载带宽最小、且未被锁定的所述传输端口。
[0027]进一步的,所述flow选择负载带宽最小的传输方式有多种,在本发明一【具体实施方式】中,在每个传输端口均设置一 byte counter计数器,用于记录每个统计周期结束后的传输端口的所述负载带宽。
[0028]本实施方式中,各个输出端口每进入一个所述flow时,其byte counter计数器的数值均相应递增。
[0029]进一步的,所述byte counter计数器在各个统计周期后循环扫描其对应的传输端口,并在每个扫描周期后,对byte counter计数器的数值按照预设的折扣配置阈值进行递减。
[0030]如此,所述byte counter计数器的数值 counter=last counter+packetLength- counter/X ;
其中,所述counter表示当前统计周期结束时,所述byte counter计数器的数值;所述packetLength表示当前统计周期开始后,进入该传输端口的flow的长度;所述lastcounter表示上一统计周期结束时,所述byte counter计数器的数值;所述X表示每个统计周期内,预设的折扣配置阈值。
[0031]当然,对所述counter可以配置粒度,比如counter每加I,表示实际对应byte数增加4,在此不做详细赘述,预设的折扣配置阈值也可以根据实际需要进行设定,例如可设定为64、128、256、512等数值。
[0032]进一步的,byte counter计数器的数值在经过η个统计周期后,会逐渐收敛成某个固定的数值,该固定的数值反映了各传输端口在η个统计周期内段的平均带宽,本实施方式中,将byte counter计数器在η个统计周期后的数值称之为历史评估带宽,并根据所述历史评估带宽计算所述输出端口的解锁周期。
[0033]进一步的,本实施方式中,在所述输出端口被锁定后,在至少一个统计周期后对所述输出端口进行解锁,恢复其选举权利;以在所述传输端口负载带宽信息准确的情况下,使该传输端口参与选举。如此,避免所述传输端口的负载带宽突然剧增,最终引起拥塞和丢包问题的产生。
[0034]相应的,所述解锁周期设置为所述统计周期的整数倍,其最小设置为一个统计周期。
[0035]在本发明的一优选实施方式方式中,根据所述历史评估带宽设定所述输出端口的解锁周期。
[0036]本发明的具体示例中,在所述交换机的各个传输端口均设置一解锁定时器,所述解锁定时器用于存储解锁周期;
所述传输端口被锁定后,即时触发所述解锁定时器,并在其被锁定后的每个统计周期后,对所述解锁周期的数值累加I ;
当所述解锁周期的数值等于所述系统预设解锁阈值时,对当前传输端口进行解锁,恢复其选举权利;同时,对所述解锁定时器的数值清零,以在该传输端口下一次被锁定时,精确记录解锁周期。
[0037]所述系统预设解锁阈值为一常规数值,其根据实际需要具体设定,本示例中,所述系统预设解锁阈值大于等于η倍的统计周期的数值,所述η为输出端口的负载带宽为评估历史带宽时的数值,在此不做详细赘述。
[0038]结合图3所示,本发明一示例中,将本申请的大流负载均衡转发方法与现有技术的大流负载均衡转发方法进行对比,以方便理解本发明。
[0039]本示例中,当前交换机有3100 Mbps的传输端口,所述传输端口以port表示,分别为portO、portl、port2,属于同一个ECMP组中,初始有两个flowl、flow2,带宽分别是1Mbps和20Mbps,且分别从成员portO和portl转发出去。如此,上一个统计周期结束后,portO、port 1、port2 的 byte counter 计数器的数值分别为 10Mbps,20Mbps,OMbps ;同时,在当前统计周期开始时,依次准备进入交换机的各个端口进行转发的flow分别为flow3、flow4,所述 flow3、f low4 的大小分别为:50Mbps、60Mbps。
[0040]图中虚箭头指示方向为按照现有技术进行转发,由于byte counter计数器的数值在一个统计周期后,才发生变化,故在同一个统计周期内,flow3、flow4在PortO-2中选则负载带宽最轻的传输端口进行转发,故,flow3、flow4均进入port2,且在所述f low4进入port2后,超出port2所在链路的最大带宽100Mbps,导致经过port2的flow发生拥塞丢包。
[0041]而本发明的【具体实施方式】中,当flow3进入到port2后,即时对port2进行锁定,停止其选举权利,如此,flow4到来时,所述flow4选择切换的port为当前负载带宽最小、且未被锁定的所述port。仅有portO满足条件,故,所述flow4进入到portO进行转发;进一步的,在至少一个统计周期后,随着锁定的port中flow的不断输出,被锁定的传输端口将被解锁,以恢复其选举权利,在此不做详细赘述。
[0042]结合图2所示,本发明一实施方式的大流负载均衡转发装置,所述装置包括:判断模块100、锁定模块200、解锁模块300。
[0043]多个flow顺序选择交换机的传输端口进行转发,并在每个统计周期开始后,判断模块100均依次判断当前的flow是否需要切换到交换机的其它的传输端口 ;
若是,查找符合切换条件的所述输出端口 ;所述flow切换到符合切换条件的输出端口后,通过锁定模块200即时锁定符合切换条件的所述输出端口,停止其选举权利;
并在至少一个统计周期后通过解锁模块300对所述输出端口进行解锁,恢复其选举权利;
若否,所述flow通过当前的传输端口进行转发。
[0044]本实施方式中,flow在经过所述交换机转发过程中,其携带相应的转发信息,包括:源地址、目的地址等;在源地址和目的地址之间存在多条转发路径,即对应交换机的各个传输端口均可以将所述flow从其源地址转发至目的地址。
[0045]进一步的,在通过判断模块100使所述flow选择交换机的传输端口时,为了防止转发路径拥塞,判断模块100通常会在所述flow进入交换机的各个传输端口之前,预先判断其进入相应输出端口后,是否会发生路径拥塞问题,若是,查找符合切换条件的所述输出端口进行转发,若否,通过当前的传输端口进行转发。
[0046]进一步的,在本实施方式中,判断模块100若预估当前的传输端口即将发生拥塞时,使所述flow自动查找符合切换条件的所述输出端口。本发明的优选实施方式中,在当前统计周期开始后,通过判断模块100使所述flow选择切换的传输端口为当前负载带宽最小、且未被锁定的所述传输端口。
[0047]进一步的,所述flow选择负载带宽最小的传输方式有多种,在本发明一【具体实施方式】中,所述装置还包括byte counter计数器400,在每个传输端口均设置byte counter计数器400,其用于记录每个统计周期结束后的传输端口的所述负载带宽。
[0048]本实施方式中,各个输出端口每进入一个所述flow时,其byte counter计数器400的数值均相应递增。
[0049]进一步的,byte counter计数器400在各个统计周期后循环扫描其对应的传输端口,并在每个扫描周期后,对byte counter计数器的数值按照预设的折扣配置阈值进行递减。
[0050]如此,byte counter计数器400的数值 counter=last counter+packetLength- counter/X ;
其中,所述counter表示当前统计周期结束时,byte counter计数器400的数值;所述packetLength表示当前统计周期开始后,进入该传输端口的flow的长度;所述lastcounter表示上一统计周期结束时,byte counter计数器400的数值;所述X表示每个统计周期内,预设的折扣配置阈值。
[0051]当然,对所述counter可以配置粒度,比如counter每加I,表示实际对应byte数增加4,在此不做详细赘述,预设的折扣配置阈值也可以根据实际需要进行设定,例如可设定为64、128、256、512等数值。
[0052]进一步的,byte counter计数器400的数值在经过η个统计周期后,会逐渐收敛成某个固定的数值,该固定的数值反映了各传输端口在η个统计周期内段的平均带宽,本实施方式中,将byte counter计数器400在η个统计周期后的数值称之为历史评估带宽,并根据所述历史评估带宽计算所述输出端口的解锁周期。
[0053]进一步的,本实施方式中,在所述输出端口被锁定模块200锁定后,在至少一个统计周期后通过解锁模块300对所述输出端口进行解锁,恢复其选举权利;以在所述传输端口负载带宽信息准确的情况下,使该传输端口参与选举。如此,避免所述传输端口的负载带宽突然剧增,最终引起拥塞和丢包问题的产生。
[0054]相应的,所述解锁周期设置为所述统计周期的整数倍,其最小设置
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1