网络资源均衡处理的方法和虚拟网络管理实体的制作方法
【技术领域】
[0001]本发明涉及通信领域,尤其涉及一种网络资源均衡处理的方法和虚拟网络管理实体。
【背景技术】
[0002]随着互联网的规模迅速膨胀,网络服务的多样性和复杂度也变得越来越高,现有的路由机制太过臃肿不能支持快速更新,薄弱的可控性严重约束了网络管理员对网络中出现问题的快速反应能力。而且,交换设备作为网络中的关键节点,在现有设备提供商的垄断之下开放的接口十分有限,网络中的很多开放想法和协议都无法进行测试与验证。
[0003]因此,一种新型网络交换模型OpenFlow作为一套开放接口、支持多控制的交换标准应运而生。OpenFlow交换机包括流表(Flow Table)、安全通道(Secure Channel)和OpenFlow协议。其中,流表存储最核心的信息,包括匹配域字段(match field)、计数器(counters)和指令集(instruct1ns),不同的厂商可以根据各自的需求设计功能各异的流表,流表能够实现查找、转发、统计和过滤等功能,OpenFlow交换机通过OpenFlow协议经过安全通道连接到外部控制器,该控制器用于对流表进行查询和管理。
[0004]目前,虚拟网络管理实体的技术(比如FlowVisor),在现有的OpenFlow架构的基础上提供了一种网络虚拟化的技术,虚拟网络管理实体通过采用网络分片的方式,在控制器和交换设备之间实现了网络虚拟化。虚拟网络管理实体是建立在OpenFlow之上的网络虚拟化平台,它可以将物理网络分成多个逻辑网络,从而实现开放软件定义网络(SDN,Software Defined Network)。它为管理员提供了广泛定义规则来管理网络,而不是通过调整路由器和交换机来管理网络。虚拟网络管理实体作为OpenFlow交换机和OpenFlow控制器之间的透明代理,OpenFlow交换机、控制器以及虚拟网络管理实体之间的网络结构可以如图1所示,虚拟网络管理实体分别与控制器I?n、交换机I?η连接,从控制器的角度来说,以为自己连接的是真实的交换设备;而对于交换设备而言,则以为自己连接的是真实的控制器。实际上,无论是控制器还是交换设备,连接的都是虚拟网络管理实体。虚拟网络管理实体在控制器和交换设备之间分别充当交换设备和控制器的功能,同时分析OpenFlow协议报文,并通过对流表进行分析,然后为这些OpenFlow协议控制报文连接不同的控制器和交换设备。
[0005]这样的好处是同一个交换设备实际上可以连接到多个不同的控制器上,也就是说多个控制器可以控制此交换设备上的报文。同时,一个控制设备也可以通过此虚拟网络管理实体来控制多个交换设备。使得底层的传输数据可以通过分片(Slicing)的方式来被控制器处理,实现网络虚拟化。但是,虚拟网络管理实体目前只是通过对网络数据分片来实现对网络的虚拟化,但是当前虚拟网络管理实体并没有资源管理功能,没有网络资源超负载的时的应对机制。
【发明内容】
[0006]本本发明的实施例提供一种网络资源均衡处理的方法和虚拟网络管理实体,提供了一种网络资源均衡处理的方法,解决了对资源进行有效管理的问题。
[0007]为达到上述目的,本发明的实施例采用如下技术方案:
[0008]第一方面,提供一种网络资源均衡处理的方法,所述方法包括:
[0009]获取已连接的所有交换机的网络分片信息,所述网络分片信息包括交换机中已有流表分片的信息和交换机的流量信息;
[0010]根据第一交换机的网络分片信息,对第一控制器发送的新的流表分片和/或所述第一交换机已有的流表分片进行重分配处理;所述第一控制器控制所述第一交换机。
[0011]结合第一方面,在第一种可能的实现方式中,在根据所述交换机的网络分片信息,对第一控制器发送的新的流表分片和/或所述第一交换机已有的流表分片进行重分配处理之前还包括:
[0012]接收所述第一控制器发送的流表修改报文,所述流表修改报文携带有所述新的流表分片。
[0013]结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,根据所述第一交换机的网络分片信息,对第一控制器发送的新的流表分片和/或所述第一交换机已有的流表分片进行重分配处理包括:
[0014]对所述第一交换机的网络分片信息中的流量信息进行分析,根据预设策略确定是否将所述新的流表分片分配到所述第一交换机;
[0015]若确定将所述新的流表分片分配到所述第一交换机,则直接将所述新的流表分片发送至所述第一交换机;或者
[0016]若确定不将所述新的流表分片分配到所述第一交换机,则将所述新的流表分片发送至第二交换机。
[0017]结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,若确定不将所述新的流表分片分配到所述第一交换机,则在将所述新的流表分片发送至第二交换机所述方法之前还包括:
[0018]向所述第一交换机发送流表删除消息,以便将所述第一交换机的已有的流表分片中的部分流表分片删除;
[0019]所述将所述新的流表分片发送至第二交换机包括:
[0020]将所述新的流表分片与所述第一交换机中已删除的流表分片结合起来发送至所述第二交换机。
[0021]结合第一方面的第二或第三种可能的实现方式,在第四种可能的实现方式中,所述对所述第一交换机的网络分片信息中的流量信息进行分析,根据预设策略确定是否将所述新的流表分片分配到所述第一交换机包括:
[0022]对所述第一交换机的网络分片信息中的流量信息进行分析,若所述第一交换机的已有流表分片所占用的流量大于或等于预设流量阈值,则确定不将所述新的流表分片分配到所述交换机;若所述第一交换机的已有流表分片所占用的流量小于所述预设流量阈值,则确定将所述新的流表分片分配到所述第一交换机;
[0023]所述第二交换机的已有流表分片所占用的流量小于所述预设流量阈值,所述预设流量阈值为流量百分比阈值,或者为总流量阈值。
[0024]结合第一方面,在第五种可能的实现方式中,根据所述第一交换机的网络分片信息,对所述第一交换机已有的流表分片进行重分配处理包括:
[0025]主动触发对所述第一交换机的网络分片信息中的流量信息进行分析,根据预设策略确定是否对所述第一交换机已有的流表分片进行重分配处理;
[0026]若确定对所述第一交换机已有的流表分片进行重分配处理,则向所述第一交换机发送流表删除消息,以便将所述第一交换机的已有的流表分片中的部分流表分片删除;
[0027]将第一交换机中已删除的流表分片发送至所述第二交换机。
[0028]结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述主动触发对所述第一交换机的网络分片信息中的流量信息进行分析,根据预设策略确定是否对所述第一交换机已有的流表分片进行重分配处理包括:
[0029]主动触发对所述第一交换机的网络分片信息中的流量信息进行分析,若所述第一交换机的已有流表分片所占用的流量大于或等于预设流量阈值,则确定对所述第一交换机已有的流表分片进行重分配处理;若所述第一交换机的已有流表分片所占用的流量小于所述预设流量阈值,则确定不对所述第一交换机已有的流表分片进行重分配处理;
[0030]所述第二交换机的已有流表分片所占用的流量小于所述预设流量阈值,所述预设流量阈值为流量百分比阈值,或者为总流量阈值。
[0031]结合第一方面,在第七种可能的实现方式中,所述获取已连接的所有交换机的网络分片信息包括:
[0032]周期性地获取已连接的所有交换机的网络分片信息。
[0033]第二方面,提供一种虚拟网络管理实体,所述虚拟网络管理实体包括:
[0034]信息获取单元,用于获取已连接的所有交换机的网络分片信息,所述网络分片信息包括交换机中已有流表分片的信息和交换机的流量信息,并将网络分片信息发送至分片处理单元;
[0035]流表处理单元,用于接收所述信息获取单元发送的网络分片信息,根据第一交换机的网络分片信息,对第一控制器发送的新的流表分片和/或所述第一交换机已有的流表分片进行重分配处理;所述第一控制器控制所述第一交换机。
[0036]结合第二方面,在第一种可能的实现方式中,所述虚拟网络管理实体还包括:
[0037]接收单元,用于接收所述第一控制器发送的流表修改报文,所述流表修改报文携带有所述新的流表分片。
[0038]结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述流表处理单元包括:
[0039]分析单元,用于对所述第一交换机的网络分片信息中的流量信息进行分析,根据预设策略确定是否将所述新的流表分片分配到所述第一交换机;
[0040]流表分配单元,用于若所述分析单元确定将所述新的流表分片分配到所述第一交换机,则直接将所述新的流表分片发送至所述第一交换机