负载均衡的方法及装置的制造方法_6

文档序号:9814289阅读:来源:国知局
得出PpHi、PfHi和Pmhi,分别与通过 公式1-7、1-8和1-9计算得出的PpHy、P?、和Pmh,进行比较,根据比较的结果大小调整各个控 制器管控的交换机,实现负载均衡,该步骤通过W下子步骤来实现:
[0281] S7. 1,本实施例假设系数X = 0.5, y = 0.5,即同时根据每个交换机上报的 packet_in报文、每个交换机下发的流表和其它OF消息为依据,来调整管控的交换机个数;
[0282] S7. 2,要待调动交换机池设为空;通过获取到的5个时间戳的packet-in报文数计 算得到:PpHi、P?2和PPH3 ;通过获取到的5个时间戳的流表统计数计算得到;P?i、P?和P? ; 通过获取到的5个时间戳的其它OF消息统计计算得到;Pmhi、Pmh2和Pmh3 ;计算控制器总预估 接收到的packet-in报文数与总最大packet-in报文数之比为Pphv ;计算控制器总预估下 发的流表数与总最大下发流表数之比为P?、;计算控制器总预估的其它OF消息数与总最大 其它OF消息数之比为Pmh.;上述待调动交换机池装载送样的元素 EP:: = {转出控制器编 号,交换机编号,packet-in报文数,转入控制器编号} ;EF:: = {转出控制器编号,交换机 编号,流表数,转入控制器编号} ;EM:: = {转出控制器编号,交换机编号,其它OF消息数, 转入控制器编号};
[0283] S7. 3,根据公式1-10和1-11可得Pi和Py,参照Pi W降序对各个控制器执行S7. 4, 执行完毕后执行S7. 7。
[0284] S7. 4,对于各个控制器,当其Pi大于Py时,执行S7. 5,否则执行S7. 6 ;
[0285] S7. 5,计算应调出的交换机列表,该步骤通过W下子步骤来实现:
[0286] S7. 5. 1,本实施是同时按照控制器收到的各个交换机的packet_in报文、控制器 下发的流表数和其它OF消息数据为依据,来调整管控的交换机个数,根据公式1-12可得:
[0287] B。…e = (1-0. 5) * (0. 5地阳sue+0. 5地扣…e) +0. 5地眺側;
[028引 S7. 5. 2,然后根据公式1-13计算Bi。。,,,根据Bm。,,多对该控制器管控的交换机升序 排列,获得交换机队列;
[0289] S7. 5. 3,从上述队列中自上而下选择交换机;
[0290] S7. 5. 4,累计计算要移出交换机BiCMt总化若不大于Bmuc则继续执行S7. 5. 4,否 则执行S7. 5. 5 ;
[0291] S7. 5. 5,将送些待调动的交换机编号,连同控制器编号,BiCMt加入到待调动交换机 池,其中转入控制器编号为空;
[0292] S7. 6,计算应调入的交换机列表,该步骤通过W下子步骤来实现:
[0293] S7. 6. 1,本实施例是同时按照控制器收到的各个交换机上报的packet_in报文、 控制器下发的流表数和其它OF消息数据为依据,来调整管控的交换机个数,根据公式1-14 可得;
[0294] Buue = (1-0. 5) * (0. 5*Bp"…+0. 5*Bfisue) +0. 5地"加6 ;
[029引 S7. 6. 2,根据Buue大小对控制器做降序排列,然后依次根据控制器负载调入交换 机,具体由W下子步骤实现:
[0296] S7. 6. 2. 1,根据待调动交换机池 Bi。。,,大小对交换机做降序排列,获得交换机队 列;
[0297] S7. 6. 2. 2,针对每一个控制器,从上述队列中自上而下选择交换机,分别将Bmext与 Si…e进行比较,若Binext〉Buize,贝IJ选择下一个交换机,若Bmext<Buize,贝叫尋待调动交换机池中 与送个交换机对应的元素的转入控制器编号设为本控制器编号,同时Buu。= Buiw-BmMt, 然后检查下一个交换机,直到检查到最后一个交换机,具体步骤见流程图4所示。
[029引 S7. 7,重构对应交换机,实现负载均衡,该步骤通过W下子步骤来实现:
[0299] S7. 7. 1,超级节点对待调动交换机池中每一元素,若转入控制器编号不为空,则向 转出控制器编号对应的交换机和转入控制器编号转移交换机命令并执行S7. 7. 2,否则略过 此元素
[0300] S7. 7. 2,依据slave-master机制调换,实现交换机调度;所述slave-master机制 调换有化enFlow协议设定,用于改变多控制器控制时不同控制器的角色。
[0301] S8,本次调度结束,下一时间间隔重复执行S2。
[0302] 在另外一个实施例中,还提供了一种软件,该软件用于执行上述实施例及优选实 施例中描述的技术方案。
[0303] 在另外一个实施例中,还提供了一种存储介质,该存储介质中存储有上述软件,该 存储介质包括但不限于光盘、软盘、硬盘、可擦写存储器等。
[0304] 显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可W用通用 的计算装置来实现,它们可W集中在单个的计算装置上,或者分布在多个计算装置所组成 的网络上,可选地,它们可W用计算装置可执行的程序代码来实现,从而,可W将它们存储 在存储装置中由计算装置来执行,并且在某些情况下,可W W不同于此处的顺序执行所示 出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或 步骤制作成单个集成电路模块来实现。送样,本发明不限制于任何特定的硬件和软件结合。
[0305] W上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技 术人员来说,本发明可W有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修 改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种负载均衡的方法,其特征在于,包括: 收集集群软件定义网络SDN控制器的每个SDN控制器中管控的多个交换机的表征参数 的数据; 根据所述多个交换机的表征参数的数据,预估所述多个交换机的所述表征参数在下一 时刻的数据; 根据预估的所述多个交换机的所述表征参数在下一时刻的数据,对所述集群SDN控制 器的各个SDN控制器进行负载均衡。2. 根据权利要求1所述的方法,其特征在于,所述表征参数包括W下至少之一: packet-in报文、流表数和其他OF消息。3. 根据权利要求1所述的方法,其特征在于,预估所述多个交换机的所述表征参数在 下一时刻的数据包括: 使用最小二乘法预估所述多个交换机的所述表征参数在下一时刻的数据。4. 根据权利要求3所述的方法,其特征在于,使用最小二乘法预估所述多个交换机的 所述表征参数在下一时刻的数据包括: 对每个交换机,使用如下最小二乘法数学模型计算得出所述每个交换机的所述表征参 数在下一时刻的数据;y = α +目*χ,其中X为所述表征参数在当前时刻的数据,y为所述表 征参数在下一时刻的数据;参数α和目值按照如下公式计算:其中η为当前统计周期中的时刻个数,X为时刻对应的时间戳,Υ为每个交换机的所述 表征参数的值。5. 根据权利要求1所述的方法,其特征在于,所述表征参数的数据包括表征参数的样 本历史数据W及所述表征参数在当前统计周期中各个时刻的数据;根据所述多个交换机的 表征参数的数据,预估所述多个交换机的所述表征参数在下一时刻的数据包括: 根据所述多个交换机的表征参数的样本历史数据W及所述表征参数在当前统计周期 中各个时刻的数据,预估所述多个交换机的所述表征参数在下一时刻的数据。6. 根据权利要求5所述的方法,其特征在于,预估所述多个交换机的所述表征参数在 下一时刻的数据包括: 根据所述表征参数在当前统计周期中各个时刻的数据,预估所述多个交换机的所述表 征参数在下一时刻的数据; 将所述表征参数的样本历史数据与预估的所述表征参数在下一时刻的数据求和取平 均。7. 根据权利要求1所述的方法,其特征在于,根据预估的所述多个交换机的所述表征 参数在下一时刻的数据,对所述集群SDN控制器的各个SDN控制器进行负载均衡包括: 根据预估的所述多个交换机的所述表征参数在下一时刻的数据,计算每个控制器对于 所述表征参数的预估值与其对应的历史最大值的比值Ρ? : 计算整个控制器集群对于所述表征参数的总预估值与总最大值的比值Ρ?、: 将P?i与ΡγΗ、进行比较,并根据比较的结果调整控制器管控的交换机。8. 根据权利要求7所述的方法,其特征在于, P?通过W下公式计算:其中η为各个控制器管控的交换机个数,为控制器管理的各 个交换机对于所述表征参数的预估值,Hiym。、为控制器管理的各个交换机对于所述表征参数 的历史最大值;和/或, ΡγΗν通过W下公式计算:其中m表示控制器个数,η表示各个控制器管控的交换机个数,YmMt 为控制器管理的各个交换机对于所述表征参数的预估值,Hiym。、为控制器管理的各个交换机 对于所述表征参数的历史最大值。9. 根据权利要求7所述的方法,其特征在于,将P?与ΡγΗ、进行比较,并根据比较的结 果调整控制器管控的交换机包括: 对多个不同的表征参数设置比例系数,其中,所述比例系数用于表示各个表征参数在 比较过程中所占的比重。10. 根据权利要求7所述的方法,其特征在于,将与ΡγΗ、进行比较,并根据比较的结 果调整控制器管控的交换机包括: 对于各个控制器,当其大于Ρ?、时,计算应调出的交换机,并根据计算结果调出交 换机;和/或, 对于各个控制器,当其小于P?、时,计算应调入的交换机,并根据计算结果调入交 换机。11. 根据权利要求10所述的方法,其特征在于,计算应调出的交换机,并根据计算结果 调出交换机包括: 对于控制器计算设为ΒγΜΙ,。,并根据之前设置的比例系数得到 Bmu。,其中所述比例系数用于表示多个表征参数在比较过程中所占的比重; 根据对每个交换机的预估数据得出Bm。、,= Yi。。、,; 根据Bm。、,的值对该控制器管控的交换机升序排列,获得交换机队列; 从所述交换机队列中自上而下选择交换机,并累计计算要移出交换机的总和,若 不大于Βμιζ6则继续选择交换机; 将选择的待调动的交换机加入到待调动交换机池,其中所述待调动交换机池用于存储 待调动的交换机信息。12. 根据权利要求10所述的方法,其特征在于,计算应入的交换机,并根据计算结果调 入交换机包括: 对于控制器计算'设为Byuu。,并根据之前设置的比例系数得到 Buu。,其中所述比例系数用于表示多个表征参数在比较过程中所占的比重; 根据Buu。的值对控制器做降序排列,然后依次根据控制器负载调入交换机。13. 根据权利要求12所述的方法,其特征在于,依次根据控制器负载调入交换机包括: 根据待调动交换机池中各个待调动交换机的BmMt的值对交换机做降序排列,获得交换 机队列,其中所述待调动交换机池用于存储待调动的交换机信息; 针对每一个控制器,从上述队列中自上而下选择交换机,分别将Bi。。、,与Buu。进行比 较,若Biwxt〉Buue,则选择下一个交换机,若Biwxt<Buue,则将待调动交换机池中与送个交换 机对应的元素的转入控制器编号设为本控制器编号,同时Buu。= Bulw-Bi。。、,,然后检查下 一个交换机,直至最后一个交换机。14. 一种负载均衡的装置,其特征在于,包括: 收集模块,用于收集集群软件定义网络SDN控制器的每个SDN控制器中管控的多个交 换机的表征参数的数据; 预估模块,用于根据所述多个交换机的表征参数的数据,预估所述多个交换机的所述 表征参数在下一时刻的数据; 负载均衡模块,用于根据预估的所述多个交换机的所述表征参数在下一时刻的数据, 对所述集群SDN控制器的各个SDN控制器进行负载均衡。
【专利摘要】本发明公开了一种负载均衡的方法及装置,其中,该方法包括:收集集群软件定义网络SDN控制器的每个SDN控制器中管控的多个交换机的表征参数的数据;根据所述多个交换机的表征参数的数据,预估所述多个交换机的所述表征参数在下一时刻的数据;根据预估的所述多个交换机的所述表征参数在下一时刻的数据,对所述集群SDN控制器的各个SDN控制器进行负载均衡。通过本发明,解决了相关技术中集群SDN控制器负载不均的问题,通过预估的数据进行负载均衡,该方式可实现性强,提升了集群SDN控制器的资源使用效率。
【IPC分类】H04L29/08
【公开号】CN105577729
【申请号】CN201410555510
【发明人】喻敬海, 张道伟, 吴少勇
【申请人】中兴通讯股份有限公司
【公开日】2016年5月11日
【申请日】2014年10月17日
【公告号】WO2015131699A1
当前第6页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1