vBNG系统多虚拟机负荷分担方法及vBNG系统设备技术方案

技术编号:18460766 阅读:24 留言:0更新日期:2018-07-18 13:30
本发明专利技术实施例提供了一种vBNG系统多虚拟机负荷分担方法,还提供了应用所述方法进行多虚拟器用户分担的vBNG系统设备。所述方法及设备依据各虚拟机上已处理的用户数及时调整后续用户处理的虚拟机,具体将各虚拟机的用户总容量分割为多个分段容量,将用户上线在各虚拟器中上线,并以分段容量为单位使上线用户在各虚拟器间尽量均匀分配。本发明专利技术技术方案可以有效的对多虚拟机vBNG系统中的多虚拟机处理的用户数进行分担,及时对后续用户报文处理所需的虚拟机进行调整,实现了资源的合理化利用;又可以有效减少因为频繁的切换虚拟机造成的系统不稳定问题。

VBNG system multi virtual machine load sharing method and vBNG system equipment

The embodiment of the invention provides a multi virtual machine load sharing method for vBNG system, and also provides the vBNG system equipment that is shared by the multi virtual device users by the method described in the application. The method and equipment can adjust the virtual machine processed by the users on the basis of the number of users on the virtual machine. The total capacity of each virtual machine is divided into multiple segment capacity, and the user is on-line in each virtual device, and the online users are distributed in each virtual machine as well as possible by the unit capacity. . The technical scheme of the invention can effectively share the number of users processed by multi virtual machine in the multi virtual machine vBNG system, adjust the virtual machine needed for the follow-up user message processing in time, and realize the rational utilization of the resources, and can effectively reduce the system instability caused by the frequent switching virtual machine.

【技术实现步骤摘要】
vBNG系统多虚拟机负荷分担方法及vBNG系统设备
本专利技术涉及数据通信
,尤其涉及虚拟宽带网络网关(virtualBroadbandNetworkGateway,vBNG)系统中多虚拟机负荷分担方法及vBNG系统设备。
技术介绍
对于传统的网络设备,其转发面与控制面是在同一个路由器上实现的,容易受制于硬件CPU处理能力,且配置不够灵活。针对传统网络设备的不足,提出了利用虚拟化技术实现由服务器来处理控制面的网络功能虚拟化(NetworkFunctionsVirtualization,NFV)技术,其基本原理是将原来需要多种设备类型、多个物理设备形态才能提供的网络业务功能,改为通过虚拟设备对外提供业务功能,可以实现一台物理设备支持多个虚拟设备,完成多种不同类型业务。NFV技术的一个重要应用,就是虚拟化宽带网络网关,即vBNG技术,其通常使用多个虚拟机(VirtualMachine,VM)来实现对用户协议报文的解析,由虚拟机构建用户表项后,再下发给传统网络设备,传统网络设备只需要负责对流量进行转发即可。vBNG设备是通过对传统宽带网络网关功能的虚拟化得到的虚拟设备,可以运行在通用服务器的硬件环境中,可实现传统宽带网络网关设备能够实现的相关功能,其可以包括一个主控单元和多个转发单元,主控单元和转发单元分别运行在不同的虚拟机中。处于用户侧的终端可以通过vBNG的转发单元实现与网络侧的数据交互。多个虚拟机可同时运行其在一台物理主机上,这些虚拟机相互隔离并共用底层物理资源。多虚拟机实现方式通常会面临多虚拟机之间分担的问题,目前一种解决方案是按虚拟机的能力来进行分担,即一个虚拟机满负荷时,才切换到另外一个虚拟机,但这种方案会造成虚拟机资源浪费,同时因为单个虚拟机负荷过高容易出现不稳定等问题;另外一种通用的方案是直接按用户来进行分担,即用户直接分担到各虚拟机,这种方案需要上送虚拟机表项时刻更新,也容易出现不稳定的情况。中国专利文献CN105577723A中,提供一种虚拟化网络中实现负载分担的方法,应用在所述虚拟化网络的控制器上,可将业务流量分发分散在多个虚拟化接入设备上进行,避免了性能瓶颈;上述技术虽然涉及了多虚拟机之间分担的问题,但其解决的是业务流量分发的分担问题,不涉及用户上线处理的分担。因此,如何在vBNG系统中实现多虚拟机负荷的分担,特别是对用户上线处理实现有效合理的分担,成为当前数据通信的NFV技术中亟待解决的技术问题。
技术实现思路
本专利技术要解决的是现有vBNG系统中多虚拟机用户上线处理负荷缺乏有效合理分担的技术问题,提供一种vBNG系统中实现虚拟机之间分担的方法及相应的vBNG系统设备,所述方法特别适应用于用户上线类的vBNG网络,可以依据各虚拟机上已处理的用户数及时调整后续用户报文处理的虚拟机,实现资源的合理化利用。本专利技术实施例提供的一种vBNG系统多虚拟机负荷分担方法,包括:一种vBNG系统多虚拟机负荷分担方法,用于用户上线类的vBNG网络,其特征在于,所述方法包括:接收用户协议报文;配置各虚拟机的上线用户容量,包括分别设定各虚拟机的最大用户数,将单一虚拟机的用户总容量分割为若干分段容量,设置单一虚拟机的各分段容量可容纳的上线用户数量总和与该虚拟机的最大用户数相等,设置各虚拟机的分段容量个数相等;配置各虚拟机分担用户上线,包括将所述用户协议报文送到相应虚拟机上处理,使单一虚拟机中的上线用户逐一填充该虚拟机的所述分段容量,保持各虚拟机中被所述上线用户填满的分段容量个数差不超过1。优选的,当现有的各虚拟机中的上线用户数量均达到最大用户数时,自动建立新的虚拟机。作为前述方法的优选,设置各虚拟机的最大用户数相等,同时设置所述分段容量大小相等。进一步优选的,所述配置各虚拟机的上线用户容量包括:将各虚拟机的最大用户数设定为m,初始化各虚拟机的负荷分担参数P的值为n,其中m、n均为自然数,每个所述分段容量可容纳的上线用户数为m/n。更进一步的,作为所述配置各虚拟机分担用户上线的优选,其步骤包括:在流表中将当前负荷分担参数P最大的一个虚拟机设置为用户协议报文的出接口,根据所述流表将所述用户协议报文送到该虚拟机上进行处理,该虚拟机的用户数量达到(n-P+1)·m/n时停止用户在该虚拟机上线,将该虚拟机负荷分担参数P的值减小1;重复执行该步骤直至全部虚拟机的负荷分担参数P为0或全部用户均已上线。作为上述选择虚拟机方式的优选,当多个虚拟机的所述负荷分担参数P同为最大值时,将用户在其中ip地址最大的一个虚拟机中上线。优选的,当全部虚拟机的负荷分担参数P为0时,自动建立新的虚拟机,将用户在新虚拟机中上线。本专利技术实施例还提供了一种vBNG系统设备,包括虚拟机模块、管理模块和负荷分担模块,所述虚拟机模块包括虚拟机,其中:所述管理模块用于生成用户分担转发所需的流表,以及记录所述虚拟机模块中各虚拟机的上线用户数并对流表进行更新;所述管理模块还用于配置各所述虚拟机的上线用户容量,包括分别设定各所述虚拟机的最大用户数,将单一虚拟机的用户总容量分割为若干分段容量,设置单一虚拟机的各所述分段容量可容纳的上线用户数量总和与该虚拟机的所述最大用户数相等,设置各所述虚拟机的分段容量个数相等;所述管理模块还用于配置用户上线策略,使单一虚拟机中的上线用户逐一填充该虚拟机的所述分段容量,并保持各所述虚拟机中被所述上线用户填满的分段容量的个数差不超过1;所述负荷分担模块用于根据所述流表和用户上线策略将用户协议报文分送至所述虚拟机模块。优选的,所述管理模块还用于在现有的各所述虚拟机中的上线用户数量均达到最大用户数时,自动建立新的虚拟机。作为前述技术方案的优选,所述管理模块设定的各所述虚拟机的最大用户数均相等,所述分段容量大小相等。进一步优选的,所述管理模块的所述配置各所述虚拟机的上线用户容量包括:将各所述虚拟机的最大用户数值设定为m,初始化各虚拟机的负荷分担参数P的值为n,其中m、n均为自然数,每个所述分段容量可容纳的上线用户数为m/n。更进一步优选的,所述管理模块的所述配置用户上线策略的步骤包括:在流表中将当前负荷分担参数P最大的一个虚拟机设置为用户协议报文的出接口,根据所述流表将用户在该虚拟机上线直至该虚拟机的上线用户数量达到(n-P+1)·m/n为止,此时将该虚拟机负荷分担参数P的值减小1;重复执行上述步骤直至全部虚拟机的负荷分担参数P为0或全部用户均已上线。作为优选,当多个所述虚拟机的所述负荷分担参数P同为最大值时,将其中ip地址最大的一个虚拟机设置为流表出接口,将用户在该虚拟机上线。作为优选,当全部所述虚拟机的负荷分担参数P为0时,自动在所述虚拟机模块中建立新的虚拟机,将用户在所述新的虚拟机中上线。前述实施例提供的vBNG系统中实现多虚拟机之间上线用户分担的方法及应用了该方法的vBNG系统设备,可依据各虚拟机上已处理的用户数,及时调整后续用户处理的虚拟机,其技术方案的有益效果为:可以有效的对多虚拟机vBNG系统中的多虚拟机处理的用户数进行分担,及时对后续用户报文处理所需的虚拟机进行调整,实现了资源的合理化利用;又可以有效减少因为频繁的切换虚拟机造成的系统不稳定问题。附图说明图1为本专利技术实施例提供的vBNG系统多虚拟机负荷分担方法基本本文档来自技高网
...

【技术保护点】
1.一种vBNG系统多虚拟机负荷分担方法,用于用户上线类的vBNG网络,其特征在于,所述方法包括:接收用户协议报文;配置各虚拟机的上线用户容量,包括分别设定各虚拟机的最大用户数,将单一虚拟机的用户总容量分割为若干分段容量,设置单一虚拟机的各分段容量可容纳的上线用户数量总和与该虚拟机的最大用户数相等,设置各虚拟机的分段容量个数相等;配置各虚拟机分担用户上线,包括将所述用户协议报文送到相应虚拟机上处理,使单一虚拟机中的上线用户逐一填充该虚拟机的所述分段容量,保持各虚拟机中被所述上线用户填满的分段容量个数差不超过1。

【技术特征摘要】
1.一种vBNG系统多虚拟机负荷分担方法,用于用户上线类的vBNG网络,其特征在于,所述方法包括:接收用户协议报文;配置各虚拟机的上线用户容量,包括分别设定各虚拟机的最大用户数,将单一虚拟机的用户总容量分割为若干分段容量,设置单一虚拟机的各分段容量可容纳的上线用户数量总和与该虚拟机的最大用户数相等,设置各虚拟机的分段容量个数相等;配置各虚拟机分担用户上线,包括将所述用户协议报文送到相应虚拟机上处理,使单一虚拟机中的上线用户逐一填充该虚拟机的所述分段容量,保持各虚拟机中被所述上线用户填满的分段容量个数差不超过1。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:当现有的各虚拟机中的上线用户数量均达到最大用户数时,自动建立新的虚拟机。3.根据权利要求1或2所述的方法,其特征在于,设置所述各虚拟机的最大用户数均相等,所述分段容量大小相等。4.根据权利要求3所述的方法,其特征在于,所述配置各虚拟机的上线用户容量的步骤包括:将各虚拟机的最大用户数设定为m,初始化各虚拟机的负荷分担参数P的值为n,其中m、n均为自然数,每个所述分段容量可容纳的上线用户数为m/n。5.根据权利要求4所述的方法,其特征在于,所述配置各虚拟机分担用户上线的步骤包括:在流表中将当前负荷分担参数P最大的一个虚拟机设置为用户协议报文的出接口,根据所述流表将所述用户协议报文送到该虚拟机上进行处理,该虚拟机的用户数量达到(n-P+1)·m/n时停止用户在该虚拟机上线,将该虚拟机负荷分担参数P的值减小1;重复执行该步骤直至全部虚拟机的负荷分担参数P为0或全部用户均已上线。6.根据权利要求5所述的方法,其特征在于,当多个虚拟机的所述负荷分担参数P同为最大值时,将用户在其中ip地址最大的一个虚拟机中上线。7.根据权利要求5所述的方法,其特征在于,还包括如下步骤:当全部虚拟机的负荷分担参数P为0时,自动建立新的虚拟机,将用户在新虚拟机中上线。8.一种vBNG系统设备,包括虚拟机模块,所述虚拟机模块包括虚拟机,其特征在于,所述设备还包括管理模块和负荷分担模块,其中:所述管理模块用于生成用户分担转发所需的流表,以及记录所述虚拟...

【专利技术属性】
技术研发人员:赵佳博高亮王锋汤俊
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1