一种负载分担的方法、装置和系统的制作方法
【技术领域】
[0001] 本发明涉及通信技术领域,特别是涉及一种负载分担的方法、装置和系统。
【背景技术】
[0002] 在网络中,端点设备之间的通信可以通过点到点协议(Point-to-Point Protocol,简称PPP)来实现。两个端点设备之间需要通信时,可以先建立PPP会话,然后再 基于PPP会话进行数据通信。在网络接入技术中,同一网络内分布有多个用户设备和多个 用于接入用户设备的网络设备。当一个用户设备需要接入网络时,该用户设备可以选择网 络中的一个网络设备,与该网络设备建立PPP会话。基于该PPP会话,该用户设备与该网络 设备之间可以进行各项协商及数据传输,从而使得该用户设备可以通过该网络设备对网络 进行访问。
[0003] 发明人经过研究发现,现有技术中,网络中的大量的用户设备会集中到一部分网 络设备上实现网络接入,而另一部分网络设备却仅用于承载少量用户设备的接入,因此,在 网络中,往往一部分网络设备的负载过大而另一部分网络设备的负载控制,这种情况造成 了网络中各网络设备的负载不均衡。
【发明内容】
[0004] 本发明实施例所要解决的技术问题是,提供一种负载分担的方法、装置和系统,以 解决现有技术中网络中网络设备负载不均衡的技术问题。
[0005] 第一方面,本发明实施例提供了一种负载分担的方法,该方法包括:
[0006] 控制器获取目标网络设备的负载参数;
[0007] 所述控制器根据所述负载参数,确定所述目标网络设备是否处于负载超限的状 态;
[0008] 当所述目标网络设备处于负载超限的状态时,所述控制器向所述目标网络设备发 送第一配置信息;
[0009] 所述第一配置信息,用于将所述目标网络设备配置为第一状态;所述第一状态 指示所述目标网络设备接收到主动发现发起PADI报文时,延时或者不返回主动发现提供 PAD0报文。
[0010] 可选的,所述控制器获取目标网络设备的负载参数,包括:
[0011] 所述控制器向所述目标网络设备发送负载参数请求;
[0012] 所述控制器接收所述目标网络设备对所述负载参数请求而返回的负载参数。
[0013] 可选的,所述负载参数请求是开放流Openf low协议的扩展的多部分Multipart请 求消息,所述负载参数通过Openflow协议的扩展的Multipart应答消息进行发送。
[0014] 可选的,
[0015] 所述Mulipart请求消息包括类型Type字段和请求主体Body字段,所述Type字 段携带指示负载均衡信息的类型值,所述请求Body字段为空或者携带所述设备标识;
[0016] 相应的,所述Mulipart应答消息包括所述Type字段和应答主体Body字段,所述 应答Body字段携带所述目标网络设备的负载参数。
[0017] 可选的,所述控制器获取目标目标网络设备的负载参数,具体为:
[0018] 接收所述目标网络设备主动发送的负载参数。
[0019] 可选的,所述控制器根据所述负载参数,确定所述目标网络设备是否处于负载超 限的状态,包括:
[0020] 所述控制器查找至少两个网络设备的负载参数中的最小值,作为最小负载值;所 述至少两个网络设备中包括所述目标网络设备;
[0021] 所述控制器计算所述负载参数与所述最小负载值之间的差值,作为负载差值;
[0022] 所述控制器确定所述负载差值是否超过预设的负载阈值;
[0023] 当所述负载差值超过所述负载阈值时,所述控制器确定所述目标网络设备处于负 载超限的状态;
[0024] 当所述负载差值未超过所述负载阈值时,所述控制器确定所述目标网络设备未处 于负载超限的状态。
[0025] 可选的,所述方法还包括:
[0026] 当所述目标网络设备未处于负载超限的状态时,所述控制器向所述目标网络设备 发送第二配置信息;
[0027] 所述第二配置信息,用于将所述目标网络设备配置为第二状态;所述第二状态指 示所述目标网络设备接收到PADI报文时,即时返回PAD0报文。
[0028] 可选的,所述方法还包括:
[0029] 所述控制器向所述目标网络设备发送第一配置信息之后,将所述目标网络设备记 录为过载设备;
[0030] 所述控制器向所述目标网络设备发送第二配置信息之后,删除所述目标网络设备 作为过载设备的记录。
[0031] 可选的,所述方法还包括:
[0032] 所述控制器确定所述目标网络设备是否为已记录的过载设备;
[0033] 所述当所述目标网络设备处于负载超限的状态时,所述控制器向所述目标网络设 备发送第一配置信息,具体为:当所述目标网络设备处于负载超限的状态且所述目标网络 设备不为已记录的过载设备时,所述控制器向所述目标网络设备发送第一配置信息;
[0034] 所述当所述目标网络设备未处于负载超限的状态时,所述控制器向所述目标网络 设备发送第二配置信息,具体为:当所述目标网络设备未处于负载超限的状态且所述目标 网络设备为已记录的过载设备时,所述控制器向所述目标网络设备发送第二配置信息。
[0035] 可选的,所述负载参数包括所述目标网络设备的用户比例、带宽利用率、CPU利用 率或剩余CPU处理能力。
[0036] 可选的,所述目标网络设备为宽带接入网关BNG。
[0037] 第二方面,本发明实施例提供了另一种负载分担的方法,该方法包括:
[0038] 目标网络设备接收控制器发送的第一配置信息;
[0039] 所述目标网络设备根据所述第一配置信息,配置第一状态;
[0040] 所述第一状态指示所述目标网络设备接收到PADI报文时,延时或者不返回PAD0 报文;
[0041] 其中,所述第一配置信息是当所述控制器根据所述目标网络设备的负载参数确定 所述目标网络设备处于负载超限的状态时所述控制器向所述目标网络设备发送的。
[0042] 可选的,所述方法还包括:
[0043] 所述目标网络设备接收用户设备发送的PADI报文;
[0044] 当处于第一状态时,所述目标网络设备延时或者不向所述用户设备返回PAD0报 文。
[0045] 可选的,所述方法还包括:
[0046] 所述目标网络设备接收所述控制器发送的负载参数请求;
[0047] 所述目标网络设备向所述控制器返回所述负载参数。
[0048] 可选的,所述负载参数请求是Openflow协议的扩展的Multipart请求消息,所述 负载参数通过Openflow协议的的扩展的Multipart应答消息进行发送。
[0049] 可选的,
[0050] 所述Mulipart请求消息包括类型Type字段和请求主体Body字段,所述Type字 段携带指示负载均衡信息的类型值,所述请求Body字段为空或者携带所述设备标识;
[0051] 相应的,所述Mulipart应答消息包括所述Type字段和应答主体Body字段,所述 应答Body字段携带所述目标网络设备的负载参数。
[0052] 可选的,所述方法还包括:
[0053] 所述目标网络设备主动向所述控制器发送所述负载参数。
[0054] 可选的,所述方法还包括:
[0055] 所述目标网络设备接收所述控制器发送的第二配置信息;
[0056] 所述目标网络设备根据所述第二配置信息,配置第二状态;
[0057] 所述第二状态指示所述目标网络设备接收到PADI报文时,即时返回PAD0报文;
[0058] 其中,所述第二配置信息是当所述控制器根据所述目标网络设备的负载参数确定 所述目标网络设备未处于负载超限的状态时所述控制器向所述目标网络设备发送的。
[0059] 第三方面,本发明实施例提供了一种负载分担的装置,所述装置包括:
[0060] 获取模块,用于获取目标网络设备的负载参数;
[0061] 第一确定模块,用于根据所述负载参数,确定所述目标网络设备是否处于负载超 限的状态;
[0062] 第一发送模块,用于当所述目标网络设备处于负载超限的状态时,向所述目标网 络设备发送第一配置信息;
[0063] 所述第一配置信息,用于将所述目标网络设备配置为第一状态;所述第一状态 指示所述目标网络设备接收到主动发现发起PADI报文时,延时或者不返回主动发现提供 PAD0报文。
[0064] 可选的,所述获取模块包括:
[0065] 发送子模块,用于向所述目标网络设备发送负载参数请求;
[0066] 接收子模块,用于接收所述目标网络设备对所述负载参数请求而返回的负载参 数。
[0067] 可选的,所述负载参数请求是开放流Openflow协议的扩展的多部分Multipart请 求消息,所述负载参数通过Openflow协议的扩展的Multipart应答消息进行发送。
[0068] 可选的,所述Mulipart请求消息包括类型Type字段和请求主体Body字段,所述 Type字段携带指示负载均衡信息的类型值,所述请求Body字段为空或者携带所述设备标 识;
[0069] 相应的,所述Mulipart应答消息包括所述Type字段和应答主体Body字段,所述 应答Body字段携带所述目标网络设备的负载参数。
[0070] 可选的,所述获取模块,具体用于接收所述目标网络设备主动发送的负载参数。
[0071] 可选的,所述第一确定模块包括:
[0072] 查找子模块,用于查找至少两个网络设备的负载参数中的最小值,作为最小负载 值;所述至少两个网络设备中包括所述目标网络设备;
[0073] 计算子模块,用于计算所述负载参数与所述最小负载值之间的差值,作为负载差 值;
[0074] 第一确定子模块,用于确定所述负载差值是否超过预设的负载阈值;
[0075] 第二确定子模块,用于当所述负载差值超过所述负载阈值时,确定所述目标网络 设备处于负载超限的状态
[0076] 第三确定子模块,用于当所述负载差值未超过所述负载阈值时,确定所述目标网 络设备未处于负载超限的状态。
[0077] 可选的,所述装置还包括:
[0078] 第二发送模块,用于当所述所述目标网络设备未处于负载超限的状态时,向所述 目标网络设备发送第二配置信息;
[0079] 所述第二配置信息,用于将所述目标网络设备配置为第二状态;所述第二状态指 示所述目标网络设备接收到PADI报文时,即时返回PAD0报文。
[0080] 可选的,所述装置还包括:
[0081] 记录模块,用于向所述目标网络设备发送第一配置信息之后,将所述目标网络设 备记录为过载设备;
[0082] 删除模块,用于向所述目标网络设备发送第二配置信息之后,删除所述目标网络 设备作为过载设备的记录。
[0083] 可选的,所述装置还包括:
[0084] 第二确定模块,用于确定所述目标网络设备是否为已记录的过载设备;
[0085] 所述第一发送模块,具体用于当所述目标网络设备处于负载超限的状态且所述目 标网络设备不为已记录的过载设备时,向所述目标网络设备发送第一配置信息;
[0086] 所述第二发送模块,具体用于当所述目标网络设备未处于负载超限的状态且所述 目标网络设备为已记录的过载设备时,所述控制器向所述目标网络设备发送第二配置信 息。
[0087] 可选的,所述负载参数包括所述目标网络设备的用户比例、带宽利用率、CPU利用 率或剩余CPU处理能力。
[0088] 可选的,所述目标网络设备为宽带接入网关BNG。
[0089] 第四方面,本发明实施例提供了另一种负载分担的装置,所述装置包括:
[0090] 第一接收模块,用于接收控制器发送的第一配置信息;
[0091] 第一配置模块,用于根据所述第一配置信息,配置第一状态;
[0092] 所述第一状态指示所述目标网络设备接收到PADI报文时,延时或者不返回PAD0 报文;
[0093] 其中,所述第一配置信息是当所述控制器根据所述目标网络设备的负载参数确定 所述目标网络设备处于负载超限的状态时所述控制器向所述目标网络设备发送的。
[0094] 可选的,所述装置还包括:
[0095] 第二接收模块,用于接收主机发送的PADI报文;
[0096] 返回控制模块,用于当处于第一状态时,所述目标网络设备延时或者不向所述主 机返回PAD0报文。
[0097] 可选的,所述装置还包括:
[0098] 第三接收模块,用于接收所述控制器发送的负载参数请求;
[0099] 返回模块,用于向所述控制器返回所述负载参数。
[0100] 可选的,所述负载参数请求是Openflow协议的扩展的Multipart请求消息,所述 负载参数通过Openflow协议的的扩展的Multipart应答消息进行发送。
[0101] 可选的,
[0102] 所述Mulipart请求消息包括类型Type字段和请求主体Body字段,所述Type字 段携带指示负载均衡信息的类型值,所述请求Body字段为空或者携带所述设备标识;
[0103] 相应的,所述Mulipart应答消息包括所述Type字段和应答主体Body字段,所述 应答Body字段携带所述目标网络设备的负载参数。
[0104] 可选的,所述装置还包括:
[0105] 发送模块,用于主动向所述控制器发送所述负载参数。
[0106] 可选的,所述装置还包括:
[0107] 第四接收模块,用于接收所述控制器发送的第二配置信