一种负载均衡的实现方法及设备、系统技术方案

技术编号:12615304 阅读:77 留言:0更新日期:2015-12-30 13:07
本发明专利技术实施例公开了一种负载均衡的实现方法及设备、系统,该方法包括当不存在用于转发交换机接收到的流量的第一流表项时,交换机根据第二流表项和每个输出端口的计表项确定每个输出端口的实时流速率对应的写入值并向控制器发送写入值,以使控制器根据写入值确定每个输出端口的实时流速率,并创建用于转发该流量的转发流表项,之后,交换机接收控制器发送的转发流表项并利用转发流表项中的目标输出端口转发该流量。实施本发明专利技术实施例可以使控制器获取交换机输出端口的实时流速率的速率范围并根据获取到的实时流速率的速率范围分配转发路径,从而更好的实现负载均衡。

【技术实现步骤摘要】
【国外来华专利技术】一种负载均衡的实现方法及设备、系统
本专利技术涉及计算机网络
,具体涉及一种负载均衡的实现方法及设备、系统。
技术介绍
SDN(SoftwareDefinedNetwork,软件定义网络)是一种新型网络架构,其包括的技术OpenFlow通过将网络设备的控制面与转发面分离实现了对网络流量的灵活控制,这使得负载均衡的实现变得更加简单。其中,负载均衡的实现原理是控制面的控制器基于网络流量为不同的数据流分配不同的转发路径,而转发面的交换机则根据接收到的来自控制器的转发路径处理数据流,从而实现负载均衡。现有技术中,控制器是根据交换机上的流速率来分配转发路径的,最常用的统计流速率的方法是控制器周期性的向交换机发送用于查询任一条路径(即交换机的输出端口)上的流命中次数的请求消息,然后根据相邻两次查询结果的差值与该相邻两次查询的时间差计算出该路径的流速率,但是这种统计方法计算出的流速率不是实时流速率,这导致了控制器分配的转发路径不准确,进而不能很好的实现负载均衡。
技术实现思路
本专利技术实施例公开了一种负载均衡的实现方法及设备、系统,用于解决现有技术中由于获取到的流速率不是实时流速率而导致控制器分配的转发路径不准确,进而不能很好的实现负载均衡的问题。本专利技术实施例第一方面公开了一种负载均衡的实现方法,包括:当不存在用于转发交换机接收到的流量的第一流表项时,所述交换机根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值,其中,所述每个输出端口的计表项包括至少一个预设速率值以及每个所述预设速率值对应的写入值,所述第二流表项与所述流量所属的业务对应,且所述第二流表项包括执行所述每个输出端口的计表项的命令以及上报所述流量到控制器的命令;所述交换机向所述控制器发送所述流量的上报信息,所述上报信息包括所述每个输出端口的实时流速率对应的写入值,以使所述控制器根据所述写入值确定所述每个输出端口的实时流速率,并创建用于转发所述流量的转发流表项,所述转发流表项包括用于转发所述流量的目标输出端口的标识;所述交换机接收所述控制器发送的所述转发流表项;所述交换机利用所述转发流表项中的所述目标输出端口转发所述流量。在本专利技术实施例第一方面的第一种可能的实现方式中,所述交换机根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值之前,所述方法还包括:所述交换机接收所述控制器发送的所述第二流表项以及所述每个输出端口的计表项。结合本专利技术实施例第一方面或本专利技术实施例第一方面的第一种可能的实现方式,在本专利技术实施例第一方面的第二种可能的实现方式中,所述转发流表项还包括所述业务的标识信息以及所述目标输出端口对应的计表项的标识。结合本专利技术实施例第一方面的第二种可能的实现方式,在本专利技术实施例第一方面的第三种可能的实现方式中,所述交换机根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值包括:所述交换机根据所述第二流表项包括的所述每个输出端口的计表项的标识获取所述每个输出端口的计表项;所述交换机根据所述每个输出端口的实时流速率从所述每个输出端口的计表项的所述预设速率值中查询出小于所述实时流速率的最大速率值;所述交换机确定每个所述最大速率值对应的写入值,以作为所述每个输出端口的实时流速率对应的写入值。结合本专利技术实施例第一方面,在本专利技术实施例第一方面的第四种可能的实现方式中,所述交换机根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值之前,所述方法还包括:所述交换机接收到所述流量后查询是否存在用于转发所述流量的第一流表项,所述第一流表项包括用于转发所述流量的输出端口的标识。结合本专利技术实施例第一方面或本专利技术实施例第一方面的第一种可能的实现方式或第二种可能的实现方式或第三种可能的实现方式或第四种可能的实现方式,在本专利技术实施例第一方面的第五种可能的实现方式中,所述每个输出端口的计表项中的写入值采用写元数据的方式进行记录。本专利技术实施例第二方面公开了一种负载均衡的实现方法,包括:控制器接收交换机发送的写入值,所述写入值是所述交换机根据第二流表项和每个输出端口的计表项确定出的所述每个输出端口的实时流速率对应的写入值,其中,所述每个输出端口的计表项包括至少一个预设速率值以及每个所述预设速率值对应的写入值,所述第二流表项与所述交换机接收到的流量所属的业务对应,且所述第二流表项包括执行所述每个输出端口的计表项的命令以及上报所述流量到所述控制器的命令;所述控制器根据所述写入值确定所述每个输出端口的实时流速率,并创建用于转发所述流量的转发流表项,所述转发流表项包括用于转发所述流量的目标输出端口的标识;所述控制器向所述交换机发送所述转发流表项,以使所述交换机利用所述转发流表项中的所述目标输出端口转发所述流量。在本专利技术实施例第二方面的第一种可能的实现方式中,所述控制器接收交换机发送的写入值之前,所述方法还包括:控制器创建所述第二流表项以及所述每个输出端口的计表项;所述控制器向所述交换机发送所述第二流表项以及所述每个输出端口的计表项。结合本专利技术实施例第二方面或本专利技术实施例第二方面的第一种可能的实现方式,在本专利技术实施例第二方面的第二种可能的实现方式中,所述转发流表项还包括所述业务的标识信息以及所述目标输出端口对应的计表项的标识。本专利技术实施例第三方面公开了一种交换机,包括:确定模块,用于当不存在用于转发所述交换机接收到的流量的第一流表项时,根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值,其中,所述每个输出端口的计表项包括至少一个预设速率值以及每个所述预设速率值对应的写入值,所述第二流表项与所述流量所属的业务对应,且所述第二流表项包括执行所述每个输出端口的计表项的命令以及上报所述流量到控制器的命令;第一输出模块,用于向所述控制器发送所述流量的上报信息,所述上报信息包括所述每个输出端口的实时流速率对应的写入值,以使所述控制器根据所述写入值确定所述每个输出端口的实时流速率,并创建用于转发所述流量的转发流表项,所述转发流表项包括用于转发所述流量的目标输出端口的标识;输入模块,用于接收所述控制器发送的所述转发流表项;第二输出模块,用于利用所述转发流表项中的所述目标输出端口转发所述流量。在本专利技术实施例第三方面的第一种可能的实现方式中,所述输入模块,还用于接收所述控制器发送的所述第二流表项以及所述每个输出端口的计表项。结合本专利技术实施例第三方面或本专利技术实施例第三方面的第一种可能的实现方式,在本专利技术实施例第三方面的第二种可能的实现方式中,所述转发流表项还包括所述业务的标识信息以及所述目标输出端口对应的计表项的标识。结合本专利技术实施例第三方面的第二种可能的实现方式,在本专利技术实施例第三方面的第三种可能的实现方式中,所述确定模块包括:获取子模块,用于根据所述第二流表项包括的所述每个输出端口的计表项的标识获取所述每个输出端口的计表项;查询子模块,用于根据所述每个输出端口的实时流速率从所述每个输出端口的计表项的所述预设速率值中查询出小于所述实时流速率的最大速率值;确定子模块,用于确定每个所述最大速率值对应的写入值,以作为所述每个输出端口的实时流速率对应的写入值。结合本专利技术实施例第本文档来自技高网...

【技术保护点】
PCT国内申请,权利要求书已公开。

【技术特征摘要】
【国外来华专利技术】1.一种负载均衡的实现方法,其特征在于,包括:当不存在用于转发交换机接收到的流量的第一流表项时,所述交换机根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值,其中,所述每个输出端口的计表项包括至少一个预设速率值以及每个所述预设速率值对应的写入值,所述第二流表项与所述流量所属的业务对应,且所述第二流表项包括执行所述每个输出端口的计表项的命令以及上报所述流量到控制器的命令;所述交换机向所述控制器发送所述流量的上报信息,所述上报信息包括所述每个输出端口的实时流速率对应的写入值,以使所述控制器根据所述写入值确定所述每个输出端口的实时流速率,并创建用于转发所述流量的转发流表项,所述转发流表项包括用于转发所述流量的目标输出端口的标识;所述交换机接收所述控制器发送的所述转发流表项;所述交换机利用所述转发流表项中的所述目标输出端口转发所述流量。2.根据权利要求1所述的方法,其特征在于,所述交换机根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值之前,所述方法还包括:所述交换机接收所述控制器发送的所述第二流表项以及所述每个输出端口的计表项。3.根据权利要求1所述的方法,其特征在于,所述转发流表项还包括所述业务的标识信息以及所述目标输出端口对应的计表项的标识。4.根据权利要求2所述的方法,其特征在于,所述转发流表项还包括所述业务的标识信息以及所述目标输出端口对应的计表项的标识。5.根据权利要求3所述的方法,其特征在于,所述交换机根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值包括:所述交换机根据所述第二流表项包括的所述每个输出端口的计表项的标识获取所述每个输出端口的计表项;所述交换机根据所述每个输出端口的实时流速率从所述每个输出端口的计表项的所述预设速率值中查询出小于所述实时流速率的最大速率值;所述交换机确定每个所述最大速率值对应的写入值,以作为所述每个输出端口的实时流速率对应的写入值。6.根据权利要求4所述的方法,其特征在于,所述交换机根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值包括:所述交换机根据所述第二流表项包括的所述每个输出端口的计表项的标识获取所述每个输出端口的计表项;所述交换机根据所述每个输出端口的实时流速率从所述每个输出端口的计表项的所述预设速率值中查询出小于所述实时流速率的最大速率值;所述交换机确定每个所述最大速率值对应的写入值,以作为所述每个输出端口的实时流速率对应的写入值。7.根据权利要求1所述的方法,其特征在于,所述交换机根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值之前,所述方法还包括:所述交换机接收到所述流量后查询是否存在用于转发所述流量的第一流表项,所述第一流表项包括用于转发所述流量的输出端口的标识。8.根据权利要求1至7任一项所述的方法,其特征在于,所述每个输出端口的计表项中的写入值采用写元数据的方式进行记录。9.一种负载均衡的实现方法,其特征在于,包括:控制器接收交换机发送的写入值,所述写入值是所述交换机根据第二流表项和每个输出端口的计表项确定出的所述每个输出端口的实时流速率对应的写入值,其中,所述每个输出端口的计表项包括至少一个预设速率值以及每个所述预设速率值对应的写入值,所述第二流表项与所述交换机接收到的流量所属的业务对应,且所述第二流表项包括执行所述每个输出端口的计表项的命令以及上报所述流量到所述控制器的命令;所述控制器根据所述写入值确定所述每个输出端口的实时流速率,并创建用于转发所述流量的转发流表项,所述转发流表项包括用于转发所述流量的目标输出端口的标识;所述控制器向所述交换机发送所述转发流表项,以使所述交换机利用所述转发流表项中的所述目标输出端口转发所述流量。10.根据权利要求9所述的方法,其特征在于,所述控制器接收交换机发送的写入值之前,所述方法还包括:控制器创建所述第二流表项以及所述每个输出端口的计表项;所述控制器向所述交换机发送所述第二流表项以及所述每个输出端口的计表项。11.根据权利要求9或10所述的方法,其特征在于,所述转发流表项还包括所述业务的标识信息以及所述目标输出端口对应的计表项的标识。12.一种交换机,其特征在于,包括:确定模块,用于当不存在用于转发所述交换机接收到的流量的第一流表项时,根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值,其中,所述每个输出端口的计表项包括至少一个预设速率值以及每个所述预设速率值对应的写入值,所述第二流表项与所述流量所属的业务对应,且所述第二流表项包括执行所述每个输出端口的计表项的命令以及上报所述流量到控制器的命令;第一输出模块,用于向所述控制器发送所述流量的上报信息,所述上报信息包括所述每个输出端口的实时流速率对应的写入值,以使所述控制器根据所述写入值确定所述每个输出端口的实时流速率,并创建用于转发所述流量的转发流表项,所述转发流表项包括用于转发所述流量的目标输出端口的标识;输入模块,用于接收所述控制器发送的所述转发流表项;第二输出模块,用于利用所述转发流表项中的所述目标输出端口转发所述流量。13.根据权利要求12所述的交换机,其特征在于,所述输入模块,还用于接收所述控制器发送的所述第二流表项以及所述每个输出端口的计表项。14.根据权利要求12所述的交换机,其特征在于,所述转发流表项还包括所述业务的标识信息以及所述目标输出端口对应的计表项的标识。15.根据权利要求13所述的交换机,其特征在于,所述转发流表项还包括所述业务的标识信息以及所述目标输出端口对应的计表项的标识。16.根据权利要求14所述的交换机,其特征在于,所述确定模块包括:获取子模块,用于根据所述第二流表项包括的所述每个输出端口的计表项的标识获取所述每个输出端口的计表项;查询子模块,用于根据所述每个输出端口的实时流速率从所述每个输出端口的计表项的所述预设速率值中查询出小于所述实时流速率的最大速率值;确定子模块,用于确定每个所述最大速率值对应的写入值,以作为所述每个输出端口的实时流速率对应的写入值。17.根据权利要求15所述的交换机,其特征在于,所述确定模块包括:获取子模块,用于根据所述第二流表项包括的所述每个输出端口的计表项的标识获取所述每个输出端口的计表项;查询子模块,用于根据所述每个输出端口的实时流速率从所述每个输出端口的计表项的所述预设速率值中查询出小于所述实时流速率的最大速率值;确定子模块,用于确定每个所述最大速率值对应的写入值,以作为所述每个输出端口的实时流速率对应的写入值。18.根据权利要求12所述的交换机,其特征在于,所述交换机还包括:查询模块,用于在所述交换机接收到所述流量后查询是否存在用于转发所述流量的第一流表项,所述第一流表项包括用于转发所述流量的输出端口的标识。19.根据权利要求12至18任一项所述的交换机,其特征在于,所述每个输出端口的计表项中的写入值采用写元数据的方式进行记录。20.一种交换机,包括存储器和处理器,其特征在于,所述存储器中存储一组程序代码,且所述处理器用于调用所述存储器中存储的程序代码,用于执行以下操作:当不存在用于转发所述交换机接收到的流量的第一流表项时,根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值,其中,所述每个输出端口的计表项包括至少一个预设速率值以及每个所述预设速率值对应的写入值,所述第二流表项与所述流量所属的业务对应,且所述第二流表项包括执行所述每个输出端口的计表项的命令以及上报所述流量到控制器的命令;向所述控制器发送所述流量的上报信息,所述上报信息包括所述每个输出端口的实时流速率对应的写入值,以使所述控制器根据所述写入值确定所述每个输出端口的实时流速率,并创建用于转发所述流量的转发流表项,所述转发流表项包括用于转发所述流量的目标输出端口的标识;接收所述控制器发送的所述转发流表项;利用所述转发流表项中的所述目标输出端口转发所述流量。21.根据权利要求20所述的交换机,其特征在于,所述处理器根据第二流表项和每个输出端口的计表项确定所述每个输出端口的实时流速率对应的写入值之前,所述处理器调用所述存储器中存储的程序代码还执行以下操作:接收...

【专利技术属性】
技术研发人员:林科李泉材
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1