一种控制器负载均衡的方法及装置的制造方法

文档序号:10660755阅读:376来源:国知局
一种控制器负载均衡的方法及装置的制造方法
【专利摘要】本发明实施例提供了一种控制器负载均衡的方法及装置,应用于SDN(Software Defined Network,软件定义网络)技术领域,其中所述控制器负载均衡的方法包括:控制器检测自身的负载信息;根据所述控制器的本地负载信息列表,所述控制器判断自身是最重过载控制器;在所述控制器判断自身是所述最重过载控制器时,所述控制器利用自身的负载均衡策略,向目标控制器发送负载迁移请求;所述控制器接收、由所述目标控制器根据所述负载迁移请求执行迁移交换机的响应;在判断所述响应为许可迁移时,所述控制器迁移自身的负载至所述目标控制器上。本发明缩短了实现控制器负载均衡的用时,提升了负载均衡的效率。
【专利说明】
一种控制器负载均衡的方法及装置
技术领域
[0001 ] 本发明涉及SDN(Software Defined Network,软件定义网络)技术领域,特别是涉 及一种控制器负载均衡的方法及装置。
【背景技术】
[0002] SDN是未来网络中一种重要的新型网络架构。该架构的核心思想是将网络设备控 制面与数据面分离并集中到一个中心化的控制器上,控制器一方面抽象底层网络设备的具 体细节,另一方面提供管理视图和编程接口来控制整个SDN网络。然而,单一集中式的控制 器可能成为SDN网络中的单点瓶颈,当网络规模变大时,控制器可能无法及时地处理数据面 交换机发来的所有请求,甚至致使数据包或流的丢失,所以需要多个控制器组成的控制面 来实现对整个网络的控制。
[0003] 在多控制器的SDN网络中,控制器各自控制着网络中部分交换机,通过协调和合作 完成整个网络的控制。如果某个或某些控制器所控交换机发来大量请求并超出了控制器的 处理能力,而其他控制器保持着较低的处理负载,这种控制器间负载分布不均状况除了造 成控制资源的浪费也会导致整个网络的性能下降。因此,在多控制器的SDN网络中,均衡控 制器之间负载分布是至关重要的。
[0004]在多控制器负载均衡中,涉及到的过程主要有收集其他控制器的负载信息、做出 负载均衡的决策、迀移交换机,从而动态地调整控制器与交换机之间的映射关系实现负载 均衡。在现有技术中,对于集中式负载均衡决策。在控制器负载均衡的过程中,主要包含两 个基本的过程:一是负载均衡器或协调节点需要周期性地收集所有控制器的负载信息,二 是当需要进行负载均衡时,均衡器或协调节点下发负载均衡命令给被均衡的控制器。这两 个过程将会影响负载均衡的时间效率。对于分布式负载均衡决策,每个控制器检测到自己 过载后再去收集其他所有控制器的负载信息,这样的收集过程将会增加控制器间负载均衡 的完成时间。

【发明内容】

[0005] 本发明实施例的目的在于提供一种控制器负载均衡的方法及装置,以实现缩短负 载均衡的完成时间,提升负载均衡的效率。
[0006] 为达到上述目的,本发明实施例公开了一种控制器负载均衡的方法,包括:
[0007] 控制器检测自身的负载信息;
[0008] 根据所述控制器的本地负载信息列表,所述控制器判断自身是最重过载控制器, 其中,所述本地负载信息列表是根据所述控制器自身的负载信息、和除所述控制器之外的 其他控制器所通告的负载信息维持的;
[0009] 在所述控制器判断自身是所述最重过载控制器时,所述控制器利用自身的负载均 衡策略,向目标控制器发送负载迀移请求;
[0010] 所述控制器接收、由所述目标控制器根据所述负载迀移请求执行迀移交换机的响 应;
[0011] 在判断所述响应为许可迀移时,所述控制器迀移自身的负载至所述目标控制器 上。
[0012] 较佳的,所述控制器检测自身的负载信息之后,所述方法还包括:
[0013] 所述控制器获取自身的负载门限和所述负载信息中的负载测量值;
[0014] 在所述负载测量值小于所述负载门限时,所述控制器判断自身不是过载控制器, 将所述负载门限以零为起点划分为Μ个预设负载分段,且所述预设负载分段的长度呈递减 序列,其中,所述Μ为大于或等于7的奇数;
[0015]在所述控制器当前测量的负载测量值、与所述当前测量相邻的上一次测量的负载 测量值不在同一预设负载分段内时,所述控制器将所述自身的负载信息通告给所述其他控 制器;
[0016] 在所述负载测量值大于所述负载门限时,所述控制器判断自身是过载控制器,并 根据所述控制器的本地负载信息列表,所述控制器判断自身不是最重过载控制器,所述控 制器获取自身的负载信息,并将所述自身的负载信息通告给所述其他控制器。
[0017] 较佳的,所述控制器接收、由所述目标控制器根据所述负载迀移请求执行迀移交 换机的响应之后,所述方法还包括:
[0018] 在判断所述响应为限制迀移时,所述控制器不迀移自身的负载至所述目标控制器 上,并将所述自身的负载信息通告给所述其他控制器。
[0019] 较佳的,所述在判断所述响应为许可迀移时,所述控制器迀移自身的负载至所述 目标控制器上之后,所述方法还包括:
[0020] 在所述控制器为所述最重过载控制器时,所述控制器获取自身的负载信息,并将 所述自身的负载信息通告给所述其他控制器;
[0021 ]所述控制器获取由所述目标控制器通告的所述目标控制器的负载信息。
[0022]较佳的,所述控制器检测自身的负载信息,包括:
[0023]所述控制器获取负载均衡周期;
[0024] 所述控制器根据所述负载均衡周期,周期性的检测自身的负载信息。
[0025] 较佳的,所述根据所述控制器的本地负载信息列表,所述控制器判断自身是最重 过载控制器,包括:
[0026] 所述控制器获取自身的本地负载信息列表,在所述控制器自身的过载比例值、大 于所述本地负载信息列表中所述其他控制器的过载比例值时,所述控制器判断自身为所述 最重过载控制器。
[0027] 较佳的,所述在所述控制器判断自身是最重过载控制器时,所述控制器利用自身 的负载均衡策略,向目标控制器发送负载迀移请求,包括:
[0028] 在所述控制器判断自身是所述最重过载控制器时,所述控制器根据所述负载信息 中的、所述控制器控制的交换机、与所述控制器之间的平均信息到达量,将自身所控制的交 换机,按照所述平均信息到达量的数值,进行降序排列;
[0029] 所述控制器按照降序排列的顺序从第Ν个次序选择一个第一交换机,判断是否有 所述其他控制器、各自许可所述第一交换机迀移,其中,所述Ν为大于或等于1的自然数;
[0030] 如果是,则确定所述第一交换机作为待迀移交换机;
[0031] 如果否,根据降序排列的顺序从大于第N个次序的第N+1个次序,选择第二交换机, 判断是否有所述其他控制器许可所述第二交换机迀移,直到存在控制器许可交换机迀移, 将确定所述交换机作为所述待迀移交换机;
[0032] 按照确定所述待迀移交换机的降序排列的顺序,确定出所述待迀移交换机的数量 及与所述数量对应的各自待迀移交换机,其中,所述各自待迀移交换机给所述控制器带来 的负载总和、与所述控制器的剩余负载测量值之和,等于所述控制器的负载测量值,且所述 控制器的剩余负载测量值小于所述负载门限;
[0033] 所述控制器根据本地负载信息列表中、所述其他控制器的剩余负载值、和所述负 载信息中的所述交换机和连接所述交换机的各个控制器之间的信息往返时间,确定所述目 标控制器;
[0034] 所述控制器向所述目标控制器发送迀移请求。
[0035] 较佳的,所述控制器按照降序排列的顺序从第N个次序选择一个第一交换机,判断 是否有所述其他控制器、各自许可所述第一交换机迀移,包括:
[0036] 所述控制器获取所述平均信息到达量和所述其他控制器的剩余负载值;
[0037] 所述控制器根据所述其他控制器的剩余负载值,获取所述其他控制器的每个控制 器的迀移负载参数,在所述第一交换机的所述平均信息到达量小于第一控制器的迀移负载 参数时,所述控制器判定所述第一控制器许可所述第一交换机迀移;
[0038] 在所述第一交换机的所述平均信息到达量大于所述第一控制器的迀移负载参数 时,所述控制器判定所述第一控制器限制所述第一交换机迀移,其中,所述迀移负载参数 为:
[0040] 其中,所述LMlgrate表示所述迀移负载参数,所述ThrTarget表示所述第一控制器的负 载门限,所述LTarget表示所述第一控制器的负载测量值,所述ThrTarget-L Target表示所述第一 控制器的剩余负载值,所述α表示一个固定的参数,且所述α赋值为3。
[0041 ]较佳的,所述控制器根据本地负载信息列表中、所述其他控制器的剩余负载值、和 所述负载信息中的所述交换机和连接所述交换机的各个控制器之间的信息往返时间,确定 所述目标控制器,包括:
[0042] 所述控制器分别获取自身的本地负载信息列表中其他控制器的剩余负载值,和所 述信息往返时间;
[0043] 所述控制器根据自身的本地负载信息列表中所述其他控制器的剩余负载值,和所 述信息往返时间,确定目标优化参数;
[0044] 将最大目标优化参数对应的其他控制器作为所述目标控制器,其中,所述目标优 化参数为:
[0045 ] Clarget - W1 X ( ThiTarget-Llarget) -W2 X R
[0046]其中,所述CTarget表示所述目标优化参数,所述ThrTarget表示所述其他控制器的负 载门限,所述LTarget表示所述其他控制器的负载测量值,所述ThrTarget-LTarget表示所述其他 控制器的剩余负载值,所述R表示所述交换机和连接所述交换机的各个控制器之间的信息 往返时间,所述奶与《 2表示两个系数,且所述奶与《2的和为1。
[0047] 本发明实施例公开了一种控制器负载均衡的装置,包括:
[0048] 负载信息检测模块,用于检测控制器的负载信息;
[0049] 最重过载判断模块,用于根据所述控制器的本地负载信息列表,判断所述控制器 是最重过载控制器,其中,所述本地负载信息列表是根据所述控制器自身的负载信息、和除 所述控制器之外的其他控制器所通告的负载信息通告的负载信息维持的;
[0050] 迀移请求发送模块,用于在判断所述控制器是最重过载控制器时,利用所述控制 器的负载均衡策略,向目标控制器发送负载迀移请求;
[0051] 迀移响应获取模块,用于接收由所述目标控制器,根据所述负载迀移请求执行迀 移交换机的响应;
[0052] 负载迀移执行模块,用于在判断所述响应为许可迀移时,迀移所述控制器的负载 至所述目标控制器上。
[0053]本发明实施例提供的控制器负载均衡的方法,基于负载通告策略,所述控制器判 断自身为所述最重过载控制器后,不用再去逐一收集所述其他控制器负载信息,所述控制 器通过所述本地负载信息列表,直接做出负载均衡决策,减少了负载均衡的完成时间,提高 了负载均衡的效率。另外,本发明实施例规定了负载通告条件,减少了通告频率,降低了控 制层面网络的通信和处理负荷;基于所述负载信息,确定待迀移交换机和目标控制器,利用 所述负载迀移参数,有效防止所述目标控制器过载,利用所述目标优化参数,有效降低了所 述目标控制器与所述待迀移交换机之间的控制时延。当然,实施本发明的任一产品或方法 必不一定需要同时达到以上所述的所有优点。
【附图说明】
[0054]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0055] 图1为本发明实施例的控制器负载均衡的方法的一种流程示意图;
[0056] 图2为现有技术的交换机迀移的一种流程示意图;
[0057]图3为本发明实施例的控制器负载均衡的方法的另一种流程示意图;
[0058] 图4为本发明实施例的控制器负载均衡的装置的一种结构示意图;
[0059] 图5为本发明实施例的控制器负载均衡的装置的另一种结构示意图;
[0060] 图6为本发明实施例的实验场景的示意图;
[0061] 图7为本发明实施例的实验场景中负载处理能力对比测试图;
[0062] 图8为本发明实施例的实验场景中达成负载均衡时间测试图。
【具体实施方式】
[0063]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0064]如图1所示,图1为本发明实施例的控制器负载均衡的方法的一种流程示意图,其 步骤包括:
[0065]步骤101,控制器检测自身的负载信息;
[0066] 其中,所述负载信息至少包括:所述控制器控制的交换机、与所述控制器之间的平 均信息到达量,和所述交换机和连接所述交换机的各个控制器、之间的信息往返时间,所述 各个控制器至少包括所述控制器;
[0067] 步骤102,根据所述控制器的本地负载信息列表,所述控制器判断自身是最重过载 控制器,其中,所述本地负载信息列表是根据所述控制器自身的负载信息、和除所述控制器 之外的其他控制器所通告的负载信息维持的;
[0068] 步骤103,在所述控制器判断自身是所述最重过载控制器时,所述控制器利用自身 的负载均衡策略,向目标控制器发送负载迀移请求;
[0069] 步骤104,所述控制器接收、由所述目标控制器根据所述负载迀移请求执行迀移交 换机的响应;
[0070] 步骤105,在判断所述响应为许可迀移时,所述控制器迀移自身的负载至所述目标 控制器上;
[0071 ]通过本发明实施例所述的方法,基于负载通告策略,所述控制器判断自身为所述 最重过载控制器后,不用再去逐一收集所述其他控制器负载信息,所述控制器通过所述本 地负载信息列表,直接做出负载均衡决策,减少了负载均衡的完成时间,提高了负载均衡的 效率。
[0072]现有技术中,集中式负载均衡的主要特点是存在一个中心化的负载均衡决策模块 周期性地收集网络中所有控制器的负载信息,检测这些信息看是否需要均衡控制器间的负 载。如果需要,则选择被均衡控制器,选择待迀移交换机,选择目标控制器,随后下发负载均 衡决策给所述被均衡控制器,所述被均衡控制器再去执行负载均衡决策。分布式负载均衡 的主要特点是网络中每个控制器有一个负载均衡决策器,当某个控制器检测到自己过载 后,本地做出负载均衡决策,执行该决策。本发明实施例的目的是尽可能的缩短负载均衡的 完成时间,所以在决策方式上选择分布式,采用分布式负载均衡决策方式省略了均衡命令 下发过程,减少了负载均衡的完成时间,提高了负载均衡的效率。
[0073]在OpenFlowl.3协议及以上的版本中,交换机可与一个控制器建立连接,也可与多 个控制器建立连接。对于某个交换机,它所连接的控制器可分为主控制器MASTER角色, EQUAL角色和从控制器SLAVE角色。其中MASTER角色和EQUAL角色的控制器对交换机有完全 的访问权,接收交换机所有的异步处理信息(如Packet-In),不同的是MASTER角色的控制器 保证至多只有一个。SLAVE角色的控制器对交换机只有访问权限(Read-only),不接收除端 口状态(Port-status)消息以外的交换机异步信息。本发明方案中,交换机迀移的本质就是 控制器角色的切换,交换机的MASTER角色变为SLAVE角色,它其中的一个SLAVE角色变为 MASTER角色。以实现交换机与控制器间对应关系动态调整的目的。
[0074]本发明实施例的目的是尽可能的缩短负载均衡的完成时间,所以在决策方式上选 择分布式,即保证网络中每个控制器都有一个负载均衡决策模块而省略下发决策的过程, 同时提出负载通告策略来避免已有分布式方案在控制器过载后收集其他控制器负载信息 的方式而及时地做出负载均衡决策。
[0075] 优选的,在本发明实施例一个可能的实施方式中,所述控制器检测自身的负载信 息之后,所述方法还包括:
[0076] 所述控制器获取自身的负载门限和所述负载信息中的负载测量值;
[0077] 在所述负载测量值小于所述负载门限时,所述控制器判断自身不是过载控制器, 将所述负载门限以零为起点划分为Μ个预设负载分段,且所述预设负载分段的长度呈递减 序列,其中,所述Μ为大于或等于7的奇数;
[0078]在所述控制器当前测量的负载测量值、与所述当前测量相邻的上一次测量的负载 测量值不在同一预设负载分段内时,所述控制器将所述自身的负载信息通告给所述其他控 制器;
[0079] 在所述负载测量值大于所述负载门限时,所述控制器判断自身是过载控制器,并 根据所述控制器的本地负载信息列表,所述控制器判断自身不是最重过载控制器,所述控 制器获取自身的负载信息,并将所述自身的负载信息通告给所述其他控制器。
[0080] 在本实施方式中,首先,所述控制器获取所述负载测量值和所述负载门限,所述控 制器根据所述负载测量值和所述负载门限判断自身是否为所述过载控制器,若所述控制器 的所述负载测量值大于所述控制器的所述负载门限,则所述控制器判断自身是所述过载控 制器;若所述控制器的所述负载测量值小于或等于所述控制器的所述负载门限,则所述控 制器判断自身不是所述过载控制器。
[0081] 然后,在所述控制器不是所述过载控制器时,所述控制器通过比较所述控制器当 前测量的负载测量值、与所述当前测量相邻的上一次测量的负载测量值的变化情况,来判 断是否通告所述控制器的负载信息,变化大则通告,变化小则不通告。在判断所述控制器是 否需要将自己的负载信息通告给所述其他控制器时,要获取所述负载门限和所述负载测量 值。所述控制器将所述负载门限以零为起点划分为Μ个预设负载分段,其中Μ为大于等于7的 奇数,同时所述预设负载分段的长度呈递减序列。L Current表示所述控制器当前测量的负载 测量值,LFcxrmM·表示与所述当前测量相邻的上一次测量的负载测量值,若所述Lcumnt与所述 LFcirme3r在同一个所述预设负载分段内,所述控制器不将所述自身的负载信息通告给所述其 他控制器;若所述L Current与所述LFcirmer不在同一个所述预设负载分段内,所述控制器将所述 自身的负载信息通告给所述其他控制器。
[0082] 其次,在所述控制器是所述过载控制器时,所述控制器获取所述本地负载信息列 表,根据所述其他控制器的过载比例值,在所述控制器判断自身不是最重过载控制器时,所 述控制器获取自身的负载信息,并将所述自身的负载信息通告给所述其他控制器。
[0083] 通过本实施方式所述的负载通告的执行过程,在维持所述本地负载信息列表的基 础上,可以减少通告频率,降低了控制层面网络的通信和处理负荷。
[0084] 优选的,在本发明实施例一个可能的实施方式中,所述控制器接收、由所述目标控 制器根据所述负载迀移请求执行迀移交换机的响应之后,所述方法还包括:
[0085] 在判断所述响应为限制迀移时,所述控制器不迀移自身的负载至所述目标控制器 上,并将所述自身的负载信息通告给所述其他控制器。
[0086] 在多个控制器各自判定自身为所述最重过载控制器,并分别进行负载均衡决策 时,当所述多个控制器各自迀移自身的负载至同一个目标控制器上时,会出现导致所述目 标控制器过载的情况。因此所述目标控制器每负载均衡周期只接收一个负载迀移请求,若 接收了一个负载迀移请求,再接收第二个负载迀移请求时就响应为限制迀移。在所述控制 器获取所述限制迀移后,所述控制器不迀移自身的负载至所述目标控制器上,所述控制器 获取所述自身的负载信息,并将所述自身的负载信息通告给所述其他控制器。
[0087] 通过本实施方式,可以有效防止迀移完成后,所述目标控制器过载。
[0088] 优选的,在本发明实施例一个可能的实施方式中,所述在判断所述响应为许可迀 移时,所述控制器迀移自身的负载至所述目标控制器上之后,所述方法还包括:
[0089] 在所述控制器为所述最重过载控制器时,所述控制器获取自身的负载信息,并将 所述自身的负载信息通告给所述其他控制器;
[0090] 所述控制器获取由所述目标控制器通告的所述目标控制器的负载信息。
[0091 ]在所述控制器迀移自身的负载至所述目标控制器上之后,所述控制器的负载信息 和所述目标控制器的负载信息的变化量、足以对下一负载均衡周期的负载均衡决策产生影 响,为了消除这种影响,在所述控制器迀移所述待迀移交换机至所述目标控制器上之后,所 述控制器需要将所述自身的负载信息通告给所述其他控制器,并获取由所述目标控制器通 告的所述目标控制器的负载信息。
[0092]通过本实施方式,能够有效维持所述本地负载信息列表,提高下一负载均衡周期 控制器负载均衡的可靠性。
[0093]优选的,在本发明实施例一个可能的实施方式中,所述控制器检测自身的负载信 息,包括:
[0094]所述控制器获取负载均衡周期;
[0095] 所述控制器根据所述负载均衡周期,周期性的检测自身的负载信息。
[0096] 为了更加有效的执行控制器负载均衡,在本实施方式中,以单位时间为周期,每周 期执行一次控制器负载均衡。具体表现为所述控制器周期性的检测自身的负载信息。
[0097] 优选的,在本发明实施例一个可能的实施方式中,所述根据所述控制器的本地负 载信息列表,所述控制器判断自身是最重过载控制器,包括:
[0098] 所述控制器获取自身的本地负载信息列表,在所述控制器自身的过载比例值、大 于所述本地负载信息列表中所述其他控制器的过载比例值时,所述控制器判断自身为所述 最重过载控制器。
[0099] 所述控制器获取自身的所述本地负载信息列表,根据所述本地负载信息列表中的 所述其他控制器的过载比例值,判断自身是否为所述最重过载控制器。为此在本实施方式 中提供了过载比例值的一种计算方法:
[0101 ] 其中,所述Poverkd表示所述过载比例值,所述LCurrent表示所述控制器和所述其他 控制器的负载测量值,所述Thr表示所述控制器和所述其他控制器的负载门限,当所述控制 器的过载比例值、大于所述其他控制器的过载比例值时,所述控制器判断自身是所述最重 过载控制器。
[0102] 通过本实施方式,所述控制器可以准确的判断出自身是否为所述最重过载控制 器。
[0103] 优选的,在本发明实施例一个可能的实施方式中,所述在所述控制器判断自身是 最重过载控制器时,所述控制器利用自身的负载均衡策略,向目标控制器发送负载迀移请 求,包括:
[0104] 在所述控制器判断自身是所述最重过载控制器时,所述控制器根据所述负载信息 中的、所述控制器控制的交换机、与所述控制器之间的平均信息到达量,将自身所控制的交 换机,按照所述平均信息到达量的数值,进行降序排列;
[0105] 所述控制器按照降序排列的顺序从第N个次序选择一个第一交换机,判断是否有 所述其他控制器、各自许可所述第一交换机迀移,其中,所述N为大于或等于1的自然数;
[0106] 如果是,则确定所述第一交换机作为待迀移交换机;
[0107] 如果否,根据降序排列的顺序从大于第N个次序的第N+1个次序,选择第二交换机, 判断是否有所述其他控制器许可所述第二交换机迀移,直到存在控制器许可交换机迀移, 将确定所述交换机作为所述待迀移交换机;
[0108] 按照确定所述待迀移交换机的降序排列的顺序,确定出所述待迀移交换机的数量 及与所述数量对应的各自待迀移交换机,其中,所述各自待迀移交换机给所述控制器带来 的负载总和、与所述控制器的剩余负载测量值之和,等于所述控制器的负载测量值,且所述 控制器的剩余负载测量值小于所述负载门限;
[0109] 所述控制器根据本地负载信息列表中、所述其他控制器的剩余负载值、和所述负 载信息中的所述交换机和连接所述交换机的各个控制器之间的信息往返时间,确定所述目 标控制器;
[0110] 所述控制器向所述目标控制器发送迀移请求。
[0111] 为了有效的执行负载通告决策,在所述控制器判断自身为所述最重过载控制器 时,所述控制器要确定所述待迀移交换机和所述目标控制器。所述控制器获取所述平均信 息到达量,将自身所控制的交换机,按照所述平均信息到达量的大小进行降序排列。其中, 1^表示识别号码为ID的交换机的所述平均信息到达量,降序排序I ID,得到一个集合如下 Gswitch :
[0112] Gswitch = sort {I id}
[0113] 在所述控制器对自身控制的交换机进行降序排列后,根据序列顺序,选择顺序为N (N为正整数)的第一交换机,判断是否有所述其他控制器可以接收所述第一交换机,如果 是,则所述第一交换机为所述待迀移交换机;如果否,选择顺序为N+1的第二交换机,再去判 断,直到有所述其他控制器可以接收集合G Swlteh中的交换机。
[0114] 执行控制器负载均衡的目的在于减轻所述过载控制器的负载,因此,所述控制器 在选择所述待迀移交换机时要确保迀移完成后自身的负载测量值降到负载门限以下。所以 所述待迀移交换机的数目为一个或多个,当迀移一个所述待迀移交换机,就能使所述控制 器的剩余负载测量值降到负载门限以下时,所述待迀移交换机的数目为一;当迀移一个所 述待迀移交换机,不能使所述控制器的剩余负载测量值降到所述负载门限以下时,则需要 按照所述排序顺序,再次选择一个所述集合G Swlteh中的交换机作为所述待迀移交换机,直至 所述控制器的负载测量值降到所述负载门限以下,其中,各自待迀移交换机给所述控制器 带来的负载总和、与所述控制器的剩余负载测量值之和,等于所述控制器的负载测量值。
[0115] 所述控制器在确定所述待迀移交换机的同时,还要确定所述目标控制器。所述控 制器根据本地负载信息列表中、所述其他控制器的剩余负载值、和所述信息往返时间,确定 所述目标控制器,并向所述目标控制器发送迀移请求。
[0116]通过本实施方式,可以有效的确定所述待迀移交换机和所述目标控制器,在选择 目标控制器时考虑了交换机到目标控制器的往返时间,降低了控制器到交换机的控制时 延,为后续将所述待迀移交换机进行迀移提供了技术上的支持。
[0117] 优选的,在本发明实施例一个可能的实施方式中,所述控制器按照降序排列的顺 序从第N个次序选择一个第一交换机,判断是否有所述其他控制器、各自许可所述第一交换 机迀移,包括:
[0118] 所述控制器获取所述平均信息到达量和所述其他控制器的剩余负载值;
[0119] 所述控制器根据所述其他控制器的剩余负载值,获取所述其他控制器的每个控制 器的迀移负载参数,在所述第一交换机的所述平均信息到达量小于第一控制器的迀移负载 参数时,所述控制器判定所述第一控制器许可所述第一交换机迀移;
[0120] 在所述第一交换机的所述平均信息到达量大于所述第一控制器的迀移负载参数 时,所述控制器判定所述第一控制器限制所述第一交换机迀移,其中,所述迀移负载参数 为:
[0122] 其中,所述LMlgrate表示所述迀移负载参数,所述ThrTarget表示所述第一控制器的负 载门限,所述L Target表示所述第一控制器的负载测量值,所述ThrTarget-LTarget表示所述第一 控制器的剩余负载值,所述α表示一个固定的参数,且所述α赋值为3。
[0123] 执行控制器负载均衡的目的是减轻所述过载控制器的负载,为了避免迀移完成 后,所述待迀移交换机致使所述目标控制器过载,在确定所述目标交换机时,所述控制器要 获取所述其他控制器的所述剩余负载值,并由所述剩余负载值,获取所述其他控制器的所 述迀移负载参数。若所述第一交换机的所述平均信息到达量小于所述第一控制器的迀移负 载参数,则判定所述第一控制器许可所述第一交换机迀移,若所述第一交换机的所述平均 信息到达量大于所述第一控制器的迀移负载参数,则判定所述第一控制器限制所述第一交 换机迀移。其中,所述迀移负载参数如下:
[0125] 其中,所述LMlgrate表示所述迀移负载参数,所述ThrTarget表示所述第一控制器的负 载门限,所述L Target表示所述第一控制器的负载测量值,所述ThrTarget-LTarget表示所述第一 控制器的剩余负载值,所述α表示一个固定的参数,且所述α赋值为3。
[0126] 在本实施方式中,提出了所述待迀移交换机需要满足的条件,方便所述控制器确 定所述待迀移交换机。
[0127] 优选的,在本发明实施例一个可能的实施方式中,所述控制器根据本地负载信息 列表中、所述其他控制器的剩余负载值、和所述负载信息中的所述交换机和连接所述交换 机的各个控制器之间的信息往返时间,确定所述目标控制器,包括:
[0128] 所述控制器分别获取自身的本地负载信息列表中其他控制器的剩余负载值,和所 述信息往返时间;
[0129] 所述控制器根据自身的本地负载信息列表中所述其他控制器的剩余负载值,和所 述信息往返时间,确定目标优化参数;
[0130] 将最大目标优化参数对应的其他控制器作为所述目标控制器,其中,所述目标优 化参数为:
[01 31 ] Clarget - W1 X (ThiTarget-Llarget) -W2 X R
[0132] 其中,所述CTarget表示所述目标优化参数,所述ThrTarget表示所述其他控制器的负 载门限,所述LTarget表示所述其他控制器的负载测量值,所述ThrTarget-LTarget表示所述其他 控制器的剩余负载值,所述R表示所述交换机和连接所述交换机的各个控制器之间的信息 往返时间,所述奶与《 2表示两个系数,且所述奶与《2的和为1。
[0133] 一个交换机可以与一个MASTER控制器和几个SLAVE控制器相连接,假设在这些 SLAVE控制器中有多个可以作为所述目标控制器来接收所述待迀移交换机。当有多个所述 SLAVE控制器可以接收所述待迀移交换机时,选择所述目标控制器时,还要考虑到所述 SLAVE控制器的时延,从这些控制器选择所述目标控制器时,本实施方式依据两个参数:所 述目标控制器的所述剩余负载值和所述交换机和连接所述交换机的各个控制器、之间的信 息往返时间,来确定所述目标控制器。所述目标控制器根据所述剩余负载值、和所述交换机 和连接所述交换机的各个控制器、之间的信息往返时间,确定所述目标优化参数。将所述目 标优化参数最大的所述其他控制器作为所述目标控制器,其中,所述目标优化参数为:
[01 34] Clarget - W1 X (ThiTarget-Llarget) -W2 X R
[0135] 其中,所述CTarget表示所述目标优化参数,所述ThrTarget表示所述其他控制器的负 载门限,所述LTarget表示所述其他控制器的负载测量值,所述ThrTarget-LTarget表示所述其他 控制器的剩余负载值,所述R表示所述交换机和连接所述交换机的各个控制器之间的信息 往返时间,所述奶与《 2表示两个系数,且所述奶与《2的和为1。
[0136] 在本实施方式中,提出了所述目标控制器需要满足的条件,方便所述控制器确定 所述目标控制器,在选择所述目标控制器时考虑了所述信息往返时间,降低了控制器到交 换机的控制时延,为后续将所述待迀移交换机进行迀移提供了技术上的支持。
[0137] 参见图2,优选的,在本发明实施例一个可能的实施方式中,所述控制器迀移自身 的负载至所述目标控制器上,包含如下步骤:
[0138] 步骤201,所述最重过载控制器向所述目标控制器发送所述待迀移交换机的迀移 请求;
[0139] 步骤202,所述目标控制器收到所述迀移请求后,发送Equal角色请求到所述待迀 移交换机;
[0140]步骤203,所述待迀移交换机接收所述Equal角色请求后,发送Equal角色回应到所 述目标控制器;
[0141] 步骤204,所述目标控制器发送迀移回应信息给所述最重过载控制器;
[0142] 步骤205,所述待迀移交换机向所述最重过载控制器发送请求信息;
[0143] 步骤206,所述待迀移交换机向所述目标控制器发送异步信息;
[0144] 步骤207,所述最重过载控制器向所述待迀移交换机发送回应信息;
[0145] 步骤208,所述最重过载控制器给所述目标控制器发送结束迀移报文;
[0146] 步骤209,所述目标控制器获取所述结束迀移报文,向所述待迀移交换机发送主控 请求,请求改变自己的角色为MASTER;
[0147] 步骤210,所述待迀移交换机回复所述主控请求,设置所述最重过载控制器的角色 为SLAVE。
[0148] 通过本实施方式所述的方法,有效的实现了所述待迀移交换机的迀移,实现了控 制器负载均衡决策。
[0149] 如图3所示,图3为本发明实施例的控制器负载均衡的方法的另一种流程示意图, 包括:
[0150] 步骤301,控制器对自身的负载情况进行周期性的测量,获取自身的负载信息,其 中,所述负载信息至少包括:所述控制器控制的交换机、与所述控制器之间的平均信息到达 量,和所述交换机和连接所述交换机的各个控制器、之间的信息往返时间,所述各个控制器 至少包括所述控制器;
[0151] 步骤302,所述控制器判断自身的负载测量值是否超过负载门限,如果是,执行步 骤303,如果否,执行步骤308;
[0152] 步骤303,所述控制器根据过载比例值,判断自身是否为最重过载控制器,如果是, 执行步骤304,如果否,执行步骤309;
[0153] 步骤304,所述控制器确定待迀移交换机;
[0154] 步骤305,所述控制器确定目标控制器;
[0155] 步骤306,所述控制器确定所述目标控制器是否同意接收所述待迀移交换机,若同 意,执行步骤307,若不同意,执行步骤309;
[0156] 步骤307,所述控制器将所述待迀移交换机从所述控制器迀移到所述目标控制器;
[0157] 步骤308,所述控制器判断是否需要将自身的负载信息进行通告,若不需要,等待 下一负载均衡周期,若需要,执行步骤309;
[0158] 步骤309,所述控制器将自身的负载信息进行通告。
[0159] 通过本发明实施例所述的方法,采用分布式负载均衡决策方式省略了均衡命令下 发过程,基于负载通告策略,所述控制器判断自身为所述最重过载控制器后,不用再去逐一 收集所述其他控制器负载信息,所述控制器通过所述本地负载信息列表,直接做出负载均 衡决策,减少了负载均衡的完成时间,提高了负载均衡的效率。另外,本发明实施例规定了 负载通告条件,减少了通告频率,降低了控制层面网络的通信和处理负荷;基于所述负载信 息,确定待迀移交换机和目标控制器,利用所述负载迀移参数,有效防止所述目标控制器过 载,利用所述目标优化参数,有效降低了所述目标控制器与所述待迀移交换机之间的控制 时延。
[0160] 如图4所示,图4为本发明实施例的控制器负载均衡的装置的一种结构示意图,包 括:
[0161]负载信息检测模块401,用于检测控制器的负载信息;
[0162] 最重过载判断模块402,用于根据所述控制器的本地负载信息列表,判断所述控制 器是最重过载控制器,其中,所述本地负载信息列表是根据所述控制器自身的负载信息、和 除所述控制器之外的其他控制器所通告的负载信息通告的负载信息维持的;
[0163] 迀移请求发送模块403,用于在判断所述控制器是最重过载控制器时,利用所述控 制器的负载均衡策略,向目标控制器发送负载迀移请求;
[0164] 迀移响应获取模块404,用于接收由所述目标控制器,根据所述负载迀移请求执行 迀移交换机的响应;
[0165] 负载迀移执行模块405,用于在判断所述响应为许可迀移时,迀移所述控制器的负 载至所述目标控制器上。
[0166] 通过本发明实施例所述的装置,基于负载通告策略,所述控制器判断自身为所述 最重过载控制器后,不用再去逐一收集所述其他控制器负载信息,所述控制器通过所述本 地负载信息列表,直接做出负载均衡决策,减少了负载均衡的完成时间,提高了负载均衡的 效率。另外,本发明实施例规定了负载通告条件,减少了通告频率,降低了控制层面网络的 通信和处理负荷;基于所述负载信息,确定待迀移交换机和目标控制器,利用所述负载迀移 参数,有效防止所述目标控制器过载,利用所述目标优化参数,有效降低了所述目标控制器 与所述待迀移交换机之间的控制时延。
[0167] 需要说明的是,本发明实施例的装置是应用上述控制器负载均衡的方法的装置, 则上述控制器负载均衡的方法的所有实施例均适用于该装置,且均能达到相同或相似的有 ?效果。
[0168] 图5为本发明实施例的控制器负载均衡的装置的另一种结构示意图,包括:
[0169] 负载测量模块501,用于对自身控制器进行周期性的测量,获取所述自身控制器的 负载信息,判断所述自身控制器是否过载;
[0170] 均衡决策模块502,用于基于所述负载信息,进行均衡决策,确定最重过载控制器、 待迀移交换机和目标控制器,输出决策信息,其中,所述决策信息至少包括:负载信息通告 决策、迁移决策;
[0171]负载通告模块503,用于基于所述负载信息通告决策,将所述自身控制器的负载信 息进行通告,其中,通告的对象为系统中除所述自身控制器外的所有其他控制器;
[0172] 交换机迀移模块504,用于基于所述迀移决策,将所述待迀移交换机从所述最重过 载控制器迀移到所述目标控制器。
[0173] 在本发明实施例中,所述负载测量模块501对所述自身控制器进行周期性的测量, 获取所述自身控制器的负载信息,并基于所述自身控制器的负载信息判断自身控制器是否 过载,并将过载判断结果输出给所述均衡决策模块502。
[0174] 所述均衡决策模块502获取所述过载判断结果,在所述自身控制器未过载时,确定 是否需要将所述自身控制器的负载信息进行通告,若否,等待下一负载均衡周期;若是,所 述均衡决策模块502将所述负载信息通告决策输出给所述负载通告模块503,所述负载通告 模块503获取所述负载信息通告决策,将所述自身控制器的负载信息进行通告。在所述自身 控制器已过载时,所述均衡决策模块502基于所述负载信息,判断所述自身控制器是否为所 述最重过载控制器。
[0175] 若所述均衡决策模块502判断所述自身控制器是所述最重过载控制器,所述均衡 决策模块502确定所述待迀移交换机和所述目标控制器。若所述均衡决策模块502判断所述 自身控制器不是所述最重过载控制器,所述均衡决策模块502将所述负载信息通告决策输 出给所述负载通告模块503,所述负载通告模块503获取所述负载信息通告决策,将所述自 身控制器的负载信息进行通告。
[0176] 所述均衡决策模块502,确定所述目标控制器是否同意接收所述待迀移交换机,若 否,不进行所述待迀移交换机的迀移,所述均衡决策模块502将所述负载信息通告决策输出 给所述负载通告模块503,所述负载通告模块503获取所述负载信息通告决策,将所述自身 控制器的负载信息进行通告;若是,所述均衡决策模块502将所述迀移决策输出给所述交换 机迀移模块504。所述交换机迀移模块504获取所述迀移决策,将所述待迀移交换机从所述 自身控制器迀移到所述目标控制器。
[0177] 迀移完成后,所述负载测量模块501,获取迀移完成后自身控制器的负载信息、和 由所述目标控制器通告的所述目标控制器的负载信息。所述均衡决策模块502将所述负载 信息通告决策输出给所述负载通告模块503,所述负载通告模块503获取所述负载信息通告 决策,将所述迀移完成后自身控制器的负载信息进行通告。
[0178] 通过本发明实施例所述的装置,基于负载通告策略,所述控制器判断自身为所述 最重过载控制器后,不用再去逐一收集所述其他控制器负载信息,所述控制器通过所述本 地负载信息列表,直接做出负载均衡决策,减少了负载均衡的完成时间,提高了负载均衡的 效率。另外,本发明实施例规定了负载通告条件,减少了通告频率,降低了控制层面网络的 通信和处理负荷;基于所述负载信息,确定待迀移交换机和目标控制器,利用所述负载迀移 参数,有效防止所述目标控制器过载,利用所述目标优化参数,有效降低了所述目标控制器 与所述待迀移交换机之间的控制时延。
[0179] 如图6所示,本发明实施例提供了一种实验场景,利用开源项目Mininet和 Floodlight搭建了含有2个控制器(第一控制器601和第二控制器602)和8个交换机(第一交 换机611,第二交换机612,第三交换机613,第四交换机614,第五交换机615,第六交换机 616,第七交换机617,第八交换机618)的实验环境,其中4个交换机(第一交换机611,第二交 换机612,第三交换机613,第四交换机614)连接第一控制器601为MASTER角色,连接第二控 制器602为SLAVE角色;另外4个交换机(第五交换机615,第六交换机616,第七交换机617,第 八交换机618)连接第一控制器601为SLAVE角色,连接第二控制器602为MASTER角色。在评估 负载均衡效果时,本发明方案与交换机和控制器的映射关系为静态的进行的比较。实验首 先测量出控制器的单位时间内最大负载处理能力,每秒可处理12758个Packet-In报文 (12758PPS),在某一时刻给控制器601注入5000PPS,给控制器602注入16000PPS,随后一段 时间内,本发明方案下和静态下第一控制器601和第二控制器602单位时间内处理Packet-In的总和如图7所示,其中,横轴表示Run time(运行时间),单位为s (秒),纵轴表示 Throughput(吞吐量),单位为in kilo PPS(Packet_In包每秒);曲线701表示交换机和控制 器的映射关系为静态时第一控制器601和第二控制器602的总吞吐量的曲线,曲线702表示 应用本发明方案时第一控制器601和第二控制器602的总吞吐量的曲线,曲线703表示的是 实验中为第一控制器601和第二控制器602注入的Packet-In包每秒总和。
[0180]测量本发明实施例的完成时间,本发明设置第一控制器601和第二控制器602的负 载门限值分别为10000PPS和11000PPS。某一时刻致使第一控制器602过载,从而进行负载均 衡,从过载到所选交换机迀移至第一控制器601所完成的时间如图8所示,其中,横轴表示运 行时间Run time,单位为s(秒),纵轴表示Packet-In arrive rate(Packet_In包数到达), 单位为in kilo PPS(Packet-In包每秒);曲线801表示第一控制器601的曲线,曲线802表示 第二控制器602的曲线。
[0181]可见,通过本发明实施例,可以明确判断出本发明在实际负载均衡过程中的效果, 有效的实现控制器的负载均衡,降低了控制层面网络的通信和处理负荷,降低了控制器到 交换机的控制时延,减少了负载均衡的完成时间。
[0182] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实 体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存 在任何这种实际的关系或者顺序。而且,术语"包括"、"包含"或者其任何其他变体意在涵盖 非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要 素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备 所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排除在 包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0183] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部 分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实 施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例 的部分说明即可。
[0184] 以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在 本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围 内。
【主权项】
1. 一种控制器负载均衡的方法,其特征在于,包括: 控制器检测自身的负载信息; 根据所述控制器的本地负载信息列表,所述控制器判断自身是最重过载控制器,其中, 所述本地负载信息列表是根据所述控制器自身的负载信息、和除所述控制器之外的其他控 制器所通告的负载信息维持的; 在所述控制器判断自身是所述最重过载控制器时,所述控制器利用自身的负载均衡策 略,向目标控制器发送负载迀移请求; 所述控制器接收、由所述目标控制器根据所述负载迀移请求执行迀移交换机的响应; 在判断所述响应为许可迀移时,所述控制器迀移自身的负载至所述目标控制器上。2. 根据权利要求1所述的方法,其特征在于,所述控制器检测自身的负载信息之后,所 述方法还包括: 所述控制器获取自身的负载门限和所述负载信息中的负载测量值; 在所述负载测量值小于所述负载门限时,所述控制器判断自身不是过载控制器,将所 述负载门限以零为起点划分为M个预设负载分段,且所述预设负载分段的长度呈递减序列, 其中,所述M为大于或等于7的奇数; 在所述控制器当前测量的负载测量值、与所述当前测量相邻的上一次测量的负载测量 值不在同一预设负载分段内时,所述控制器将所述自身的负载信息通告给所述其他控制 器; 在所述负载测量值大于所述负载门限时,所述控制器判断自身是过载控制器,并根据 所述控制器的本地负载信息列表,所述控制器判断自身不是最重过载控制器,所述控制器 获取自身的负载信息,并将所述自身的负载信息通告给所述其他控制器。3. 根据权利要求1所述的方法,其特征在于,所述控制器接收、由所述目标控制器根据 所述负载迀移请求执行迀移交换机的响应之后,所述方法还包括: 在判断所述响应为限制迀移时,所述控制器不迀移自身的负载至所述目标控制器上, 并将所述自身的负载信息通告给所述其他控制器。4. 根据权利要求1所述的方法,其特征在于,所述在判断所述响应为许可迀移时,所述 控制器迀移自身的负载至所述目标控制器上之后,所述方法还包括: 在所述控制器为所述最重过载控制器时,所述控制器获取自身的负载信息,并将所述 自身的负载信息通告给所述其他控制器; 所述控制器获取由所述目标控制器通告的所述目标控制器的负载信息。5. 根据权利要求1所述的方法,其特征在于,所述控制器检测自身的负载信息,包括: 所述控制器获取负载均衡周期; 所述控制器根据所述负载均衡周期,周期性的检测自身的负载信息。6. 根据权利要求1所述的方法,其特征在于,所述根据所述控制器的本地负载信息列 表,所述控制器判断自身是最重过载控制器,包括: 所述控制器获取自身的本地负载信息列表,在所述控制器自身的过载比例值、大于所 述本地负载信息列表中所述其他控制器的过载比例值时,所述控制器判断自身为所述最重 过载控制器。7. 根据权利要求1所述的方法,其特征在于,所述在所述控制器判断自身是最重过载控 制器时,所述控制器利用自身的负载均衡策略,向目标控制器发送负载迀移请求,包括: 在所述控制器判断自身是所述最重过载控制器时,所述控制器根据所述负载信息中 的、所述控制器控制的交换机、与所述控制器之间的平均信息到达量,将自身所控制的交换 机,按照所述平均信息到达量的数值,进行降序排列; 所述控制器按照降序排列的顺序从第N个次序选择一个第一交换机,判断是否有所述 其他控制器、各自许可所述第一交换机迀移,其中,所述N为大于或等于1的自然数; 如果是,则确定所述第一交换机作为待迀移交换机; 如果否,根据降序排列的顺序从大于第N个次序的第N+1个次序,选择第二交换机,判断 是否有所述其他控制器许可所述第二交换机迀移,直到存在控制器许可交换机迀移,将确 定所述交换机作为所述待迀移交换机; 按照确定所述待迀移交换机的降序排列的顺序,确定出所述待迀移交换机的数量及与 所述数量对应的各自待迀移交换机,其中,所述各自待迀移交换机给所述控制器带来的负 载总和、与所述控制器的剩余负载测量值之和,等于所述控制器的负载测量值,且所述控制 器的剩余负载测量值小于所述负载门限; 所述控制器根据本地负载信息列表中、所述其他控制器的剩余负载值、和所述负载信 息中的所述交换机和连接所述交换机的各个控制器之间的信息往返时间,确定所述目标控 制器; 所述控制器向所述目标控制器发送迀移请求。8. 根据权利要求7所述的方法,其特征在于,所述控制器按照降序排列的顺序从第N个 次序选择一个第一交换机,判断是否有所述其他控制器、各自许可所述第一交换机迀移,包 括: 所述控制器获取所述平均信息到达量和所述其他控制器的剩余负载值; 所述控制器根据所述其他控制器的剩余负载值,获取所述其他控制器的每个控制器的 迀移负载参数,在所述第一交换机的所述平均信息到达量小于第一控制器的迀移负载参数 时,所述控制器判定所述第一控制器许可所述第一交换机迀移; 在所述第一交换机的所述平均信息到达量大于所述第一控制器的迀移负载参数时,所 述控制器判定所述第一控制器限制所述第一交换机迀移,其中,所述迀移负载参数为:其中,所述Uilgrate表示所述迀移负载参数,所述Ilmarget表示所述第一控制器的负载门 限,所述Uarget表示所述第一控制器的负载测量值,所述ThrTarget-LTarget表示所述第一控制 器的剩余负载值,所述α表示一个固定的参数,且所述α赋值为3。9. 根据权利要求7所述的方法,其特征在于,所述控制器根据本地负载信息列表中、所 述其他控制器的剩余负载值、和所述负载信息中的所述交换机和连接所述交换机的各个控 制器之间的信息往返时间,确定所述目标控制器,包括: 所述控制器分别获取自身的本地负载信息列表中其他控制器的剩余负载值,和所述信 息往返时间; 所述控制器根据自身的本地负载信息列表中所述其他控制器的剩余负载值,和所述信 息往返时间,确定目标优化参数; 将最大目标优化参数对应的其他控制器作为所述目标控制器,其中,所述目标优化参 数为: Clarget - WlX ( ThrTarget-Llarget)-W2 X R 其中,所述CTarget表示所述目标优化参数,所述ThrTarget表示所述其他控制器的负载门 限,所述Uarget表示所述其他控制器的负载测量值,所述ThrTarget-LTarget表示所述其他控制 器的剩余负载值,所述R表示所述交换机和连接所述交换机的各个控制器之间的信息往返 时间,所述奶与烈表示两个系数,且所述奶与烈的和为1。10. -种控制器负载均衡的装置,其特征在于,包括: 负载信息检测模块,用于检测控制器的负载信息; 最重过载判断模块,用于根据所述控制器的本地负载信息列表,判断所述控制器是最 重过载控制器,其中,所述本地负载信息列表是根据所述控制器自身的负载信息、和除所述 控制器之外的其他控制器所通告的负载信息通告的负载信息维持的; 迀移请求发送模块,用于在判断所述控制器是最重过载控制器时,利用所述控制器的 负载均衡策略,向目标控制器发送负载迀移请求; 迀移响应获取模块,用于接收由所述目标控制器,根据所述负载迀移请求执行迀移交 换机的响应; 负载迀移执行模块,用于在判断所述响应为许可迀移时,迀移所述控制器的负载至所 述目标控制器上。
【文档编号】H04L12/803GK106027410SQ201610609689
【公开日】2016年10月12日
【申请日】2016年7月28日
【发明人】王颖, 邱雪松, 余金科, 裴科科, 芮兰兰
【申请人】北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1