软件定义网络SDN中的报文转发的方法和装置制造方法及图纸

技术编号:15794821 阅读:184 留言:0更新日期:2017-07-10 10:02
本发明专利技术实施例公开了一种软件定义网络SDN中的报文转发的方法和装置,该SDN包括至少一个控制器和多个服务器,该方法包括:获取该SDN中的链路状态信息;根据该链路状态信息和该多个服务器中的第一服务器的目的服务器的地址生成该第一服务器的负载分担表;将该负载分担表发送至该第一服务器上的软件交换机,以便于该第一服务器上的软件交换机根据该负载分担表进行报文转发。本发明专利技术实施例的软件定义网络SDN中的报文转发的方法,通过动态生成负载分担表,能够提高负载均衡数据的转发效率,降低负载均衡的运维复杂度。

【技术实现步骤摘要】
软件定义网络SDN中的报文转发的方法和装置
本专利技术涉及信息
,并且更具体地,涉及软件定义网络SDN中的报文转发的方法和装置。
技术介绍
随着大规模互联网在线应用、企业级基础服务和对云计算应用的需求的日益增长,十万量级、甚至百万量级服务器的数据中心诞生了。这种数据中心大多采用胖树网络(Fat-tree)拓扑结构,交换机的数量巨大,而且更有大量的OVS软交换机需要管理。随着软件定义网络(SoftwareDefinedNetwork,简称为“SDN”)技术在数据中心的应用,提高了大规模数据中心的配置管理工作效率、网络扩展性和业务部署的灵活性。SDN是开放网络基金会(OpenNetworkFoundation,ONF)定义的一种新的网络架构,旨在以个人计算机(PersonalComputer,PC)计算领域的架构和方法来重新定义网络计算,将转发面看成一个执行指令的中央处理器(CentralProcessingUnit,CPU),控制面看成集中的网络操作系统,网络计算通过在网络操作系统上编程来实现。但是由于SDN架构中南向协议即开放流(OpenFlow)协议发展的缓慢,对于电信传送网中业务的负载均衡功能支持不够,无法实现业务流在传输过程中的负载均衡。为了实现业务流在传输过程中的负载均衡,目前的现有技术主要有通过大量的人工配置IP地址,或者通过Hash算法计算负载均衡,这些方法主要存在的缺点是:运维的复杂度较高,负载均衡数据的转发效率很低。
技术实现思路
本专利技术实施例提供了一种软件定义网络SDN中的报文转发的方法和装置,能够提高负载均衡数据的转发效率。第一方面,提供了一种软件定义网络SDN中的报文转发的方法,该SDN包括至少一个控制器和多个服务器,该方法由该至少一个控制器执行,包括:获取该SDN中的链路状态信息;根据该链路状态信息和该多个服务器中的第一服务器的目的服务器的地址生成该第一服务器的负载分担表的负载分担表项;将该负载分担表及所述负载分担表项发送至该第一服务器,以便于该第一服务器根据该负载分担表进行报文转发。本专利技术实施例的软件定义网络SDN中的数据报文转发的方法,能够动态生成负载分担表,进行报文的转发,提高了负载均衡数据的转发效率,降低了负载均衡的运维复杂度。这里,链路状态信息包括核心交换机和汇聚交换机之间的故障链路信息,汇聚交换机与接入交换机之间的故障链路信息,接入交换机与服务器之间的故障链路信息。控制器根据故障链路信息,生成该负载分担表中的表项。在一些可能的实现方式中,该SDN还包括多个核心交换机和多个汇聚交换机,该多个核心交换机是该多个汇聚交换机的上层交换机,该链路状态信息包括无故障链路信息,根据该链路状态信息和该多个服务器中的第一服务器的目的服务器的地址生成该第一服务器的负载分担表,包括:根据该无故障链路信息和该目的服务器的地址生成该负载分担表中的负载分担表项,其中,该负载分担表项的核心交换机地址列表为该多个核心交换机地址列表,该负载分担表项的汇聚交换机地址列表为该第一服务器所处的节点集合中的多个汇聚交换机地址列表。结合第一方面,在第一种可能的实现方式中,该SDN还包括多个核心交换机和多个汇聚交换机,该多个核心交换机是该多个汇聚交换机的上层交换机,该链路状态信息包括第一故障链路信息,该第一故障链路信息为该多个核心交换机中的第一核心交换机和该多个汇聚交换机中的第一汇聚交换机之间链路故障的信息;其中,根据该链路状态信息和该多个服务器中的第一服务器的目的服务器的地址生成该第一服务器的负载分担表,包括:根据该第一故障链路信息和该目的服务器的地址生成该负载分担表中的负载分担表项。结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,在所述第一服务器为所述第一汇聚交换机的子孙服务器,所述第一汇聚交换机与所述目的服务器处于不同的节点集合时,所述负载分担表中表项的核心交换机地址列表为所述多个核心交换机地址去除所述第一核心交换机地址后的地址列表,其中,所述不同的节点集合间仅能通过核心交换机进行通信。结合第一方面的第一种可能的实现方式,在第三种可能的实现方式中,在所述第一服务器不是所述第一汇聚交换机的子孙服务器,所述目的服务器是所述第一汇聚交换机的子孙服务器时,若所述目的服务器的地址的第一部分与所述第一核心交换机地址的第一部分相同,且所述目的服务器的地址的第二部分与所述第一核心交换机地址的第三部分相同,则所述负载分担表中的核心交换机地址列表为所述多个核心交换机地址去除所述第一核心交换机地址后的地址列表;或,所述目的服务器的地址的第一部分与所述第一核心交换机地址的第一部分不同,或所述目的服务器的地址的第二部分与所述第一核心交换机地址的第三部分不同,则所述负载分担表中的核心交换机地址列表为所述多个核心交换机地址。结合第一方面的第一种可能的实现方式,在第四种可能的实现方式中,在所述第一服务器为所述第一汇聚交换机的子孙服务器,所述第一汇聚交换机与所述目的服务器同处于第一节点集合,所述第一汇聚交换机与第一接入交换机相连,所述目的服务器与第二接入交换机相连,所述第一接入交换机与所述第二接入交换机不同时,该负载分担表项的汇聚交换机地址列表部分为所述第一节点集合中的多个汇聚交换机地址列表。结合第一方面,在第五种可能的实现方式中,该SDN还包括多个核心交换机、多个汇聚交换机和多个接入交换机,该多个核心交换机是该多个汇聚交换机的上层交换机,该多个汇聚交换机是该多个接入交换机的上层交换机,该链路状态信息包括第二故障链路信息,该第二故障链路信息为该多个汇聚交换机中的第二汇聚交换机和该多个接入交换机中的第三接入交换机之间链路故障的信息;其中,该根据该链路状态信息和该多个服务器中的第一服务器的目的服务器的地址生成该第一服务器的负载分担表,包括:根据该第二故障链路信息和该目的服务器的地址生成该负载分担表中的负载分担表项。结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,在该第一服务器为该第三接入交换机的子孙服务器,该第三接入交换机与该目的服务器同处于第二节点集合,该目的服务器与该多个接入交换机中的第四接入交换机相连,该第三接入交换机与该第四接入交换机不同时,则该负载分担表中负载分担表项的汇聚交换机地址列表为该第二节点集合中的多个汇聚交换机地址去除该第二汇聚交换机地址后的地址列表。结合第一方面的第五种可能的实现方式,在第七种可能的实现方式中,在该第一服务器为该第三接入交换机的子孙服务器,该第三接入交换机与该目的服务器处于不同的节点集合,该负载分担表中的负载分担表项中的核心交换机地址列表为该多个核心交换机地址去除该第二汇聚交换机对应的祖先核心交换机地址后的地址列表,其中,该不同的节点集合间仅能通过核心交换机进行通信。结合第一方面的第五种可能的实现方式,在第八种可能的实现方式中,在所述第一服务器不是所述第三接入交换机的子孙服务器,所述第一服务器与所述第三接入交换机同处于第三节点集合,所述目的服务器为所述第三接入交换机的子孙服务器时,若所述目的服务器的地址的第一部分与所述第二汇聚交换机地址的第一部分相同,且所述目的服务器的地址的第二部分与所述第二汇聚交换机地址的第三部分相同,则所述负载分担表中的汇聚交换本文档来自技高网...
软件定义网络SDN中的报文转发的方法和装置

【技术保护点】
一种软件定义网络SDN中的报文转发的方法,其特征在于,所述SDN包括至少一个控制器和多个服务器,所述方法由所述至少一个控制器执行,所述方法包括:获取所述SDN中的链路状态信息;根据所述链路状态信息和所述多个服务器中的第一服务器的目的服务器的地址生成所述第一服务器的负载分担表;将所述负载分担表发送至所述第一服务器上的软件交换机,以便于所述第一服务器上的软件交换机根据所述负载分担表进行报文转发。

【技术特征摘要】
1.一种软件定义网络SDN中的报文转发的方法,其特征在于,所述SDN包括至少一个控制器和多个服务器,所述方法由所述至少一个控制器执行,所述方法包括:获取所述SDN中的链路状态信息;根据所述链路状态信息和所述多个服务器中的第一服务器的目的服务器的地址生成所述第一服务器的负载分担表;将所述负载分担表发送至所述第一服务器上的软件交换机,以便于所述第一服务器上的软件交换机根据所述负载分担表进行报文转发。2.根据权利要求1所述的方法,其特征在于,所述SDN还包括多个核心交换机和多个汇聚交换机,所述多个核心交换机是所述多个汇聚交换机的上层交换机,所述链路状态信息包括无故障链路信息,所述根据所述链路状态信息和所述多个服务器中的第一服务器的目的服务器的地址生成所述第一服务器的负载分担表,包括:根据所述无故障链路信息和所述目的服务器的地址生成所述负载分担表中的负载分担表项,其中,所述负载分担表项的核心交换机地址列表为所述多个核心交换机地址列表,所述负载分担表项的汇聚交换机地址列表为所述第一服务器所处的节点集合中的多个汇聚交换机地址列表。3.根据权利要求1所述的方法,其特征在于,所述SDN还包括多个核心交换机和多个汇聚交换机,所述多个核心交换机是所述多个汇聚交换机的上层交换机,所述链路状态信息包括第一故障链路信息,所述第一故障链路信息为所述多个核心交换机中的第一核心交换机和所述多个汇聚交换机中的第一汇聚交换机之间链路故障的信息;其中,所述根据所述链路状态信息和所述多个服务器中的第一服务器的目的服务器的地址生成所述第一服务器的负载分担表,包括:根据所述第一故障链路信息和所述目的服务器的地址生成所述负载分担表中的负载分担表项。4.根据权利要求3所述的方法,其特征在于,在所述第一服务器为所述第一汇聚交换机的子孙服务器,所述第一汇聚交换机与所述目的服务器处于不同的节点集合时,所述负载分担表项的核心交换机地址列表为所述多个核心交换机地址去除所述第一核心交换机地址后的地址列表,其中,所述不同的节点集合间仅能通过核心交换机进行通信。5.根据权利要求3所述的方法,其特征在于,在所述第一服务器不是所述第一汇聚交换机的子孙服务器,所述目的服务器是所述第一汇聚交换机的子孙服务器时,若所述目的服务器的地址的第一部分与所述第一核心交换机地址的第一部分相同,且所述目的服务器的地址的第二部分与所述第一核心交换机地址的第三部分相同,则所述负载分担表项的核心交换机地址列表为所述多个核心交换机地址去除所述第一核心交换机地址后的地址列表;或,所述目的服务器的地址的第一部分与所述第一核心交换机地址的第一部分不同,或所述目的服务器的地址的第二部分与所述第一核心交换机地址的第三部分不同,则所述负载分担表项的核心交换机地址列表为所述多个核心交换机地址。6.根据权利要求3所述的方法,其特征在于,在所述第一服务器为所述第一汇聚交换机的子孙服务器,所述第一汇聚交换机与所述目的服务器同处于第一节点集合,所述第一汇聚交换机与第一接入交换机相连,所述目的服务器与第二接入交换机相连,所述第一接入交换机与所述第二接入交换机不同时,所述负载分担表项的汇聚交换机地址列表为所述第一节点集合中的多个汇聚交换机地址列表。7.根据权利要求1所述的方法,其特征在于,所述SDN还包括多个核心交换机、多个汇聚交换机和多个接入交换机,所述多个核心交换机是所述多个汇聚交换机的上层交换机,所述多个汇聚交换机是所述多个接入交换机的上层交换机,所述链路状态信息包括第二故障链路信息,所述第二故障链路信息为所述多个汇聚交换机中的第二汇聚交换机和所述多个接入交换机中的第三接入交换机之间链路故障的信息;其中,所述根据所述链路状态信息和所述多个服务器中的第一服务器的目的服务器的地址生成所述第一服务器的负载分担表,包括:根据所述第二故障链路信息和所述目的服务器的地址生成所述负载分担表中的负载分担表项。8.根据权利要求7所述的方法,其特征在于,在所述第一服务器为所述第三接入交换机的子孙服务器,所述第三接入交换机与所述目的服务器同处于第二节点集合,所述目的服务器与所述多个接入交换机中的第四接入交换机相连,所述第三接入交换机与所述第四接入交换机不同时,所述负载分担表项的汇聚交换机地址列表为所述第二节点集合中的多个汇聚交换机地址去除所述第二汇聚交换机地址后的地址列表。9.根据权利要求7所述的方法,其特征在于,在所述第一服务器为所述第三接入交换机的子孙服务器,所述第三接入交换机与所述目的服务器处于不同的节点集合,所述负载分担表项的核心交换机地址列表为所述多个核心交换机地址去除所述第二汇聚交换机对应的祖先核心交换机地址后的地址列表,其中,所述不同的节点集合间仅能通过核心交换机进行通信。10.根据权利要求7所述的方法,其特征在于,在所述第一服务器不是所述第三接入交换机的子孙服务器,所述第一服务器与所述第三接入交换机同处于第三节点集合,所述目的服务器为所述第三接入交换机的子孙服务器时,若所述目的服务器的地址的第一部分与所述第二汇聚交换机地址的第一部分相同,且所述目的服务器的地址的第二部分与所述第二汇聚交换机地址的第三部分相同,则所述负载分担表项的汇聚交换机地址列表为所述第三节点集合中的多个汇聚交换机地址去除所述第二汇聚交换机地址后的地址列表;或,若所述目的服务器的地址的第一部分与所述第二汇聚交换机地址的第一部分不同,或所述目的服务器的地址的第二部分与所述第二汇聚交换机地址的第三部分不同,则所述负载分担表项的汇聚交换机地址列表为所述第三节点集合中的多个汇聚交换机地址列表。11.根据权利要求7所述的方法,其特征在于,在所述第一服务器与所述第三接入交换机处于不同的节点集合,所述目的服务器为所述第三接入交换机的子孙服务器时,若所述目的服务器的地址的第一部分与所述第二汇聚交换机的祖先核心交换机地址的第二部分相同,且所述目的服务器的地址的第二部分与所述第二汇聚交换机的祖先核心交换机地址的第三部分相同,则所述负载分担表项的核心交换机地址列表为所述多个核心交换机地址去除所述第二汇聚交换机对应的祖先核心交换机地址后的地址列表,其中,所述不同的节点集合间仅能通过核心交换机进行通信;或,若所述目的服务器的地址的第一部分与所述第二汇聚交换机的祖先核心交换机地址的第二部分不同,或所述目的服务器的地址的第二部分与所述第二汇聚交换机的祖先核心交换机地址的第三部分不同,则所述负载分担表项的核心交换机地址列表为所述多个核心交换机地址列表,其中,所述不同的节点集合间仅能通过核心交换机进行通信。12.根据权利要求1所述的方法,其特征在于,所述SDN还包括多个接入交换机,所述多个接入交换机为所述多个服务器的上层交换机,所述链路状态信息包括第三故障链路信息,所述第三故障链路信息为所述多个接入交换机中的第五接入交换机和所述多个服务器中的第二服务器之间链路故障的信息;其中,所述根据所述链路状态信息和所述多个服务器中的第一服务器的目的服务器的地址生成所述第一服务器的负载分担表,包括:根据所述第三故障链路信息和所述目的服务器的地址生成所述负载分担表中的负载分担表项。13.根据权利要求12所述的方法,其特征在于,在所述第一服务器是所述第二服务器时,所述负载分担表项的汇聚交换机地址列表和核心交换机地址列表均为空。14.根据权利要求12所述的方法,其特征在于,在所述第一服务器不是所述第二服务器,所述目的服务器是所述第二服务器,所述目的服务器与所述第二服务器同处于第四节点集合,若所述目的服务器的地址与所述第二服务器的地址相同,则所述负载分担表项的汇聚交换机地址列表和核心交换机地址列表为空;或,若所述目的服务器的地址与所述第二服务器的地址不同,则所述负载分担表中的核心交换机地址为所述多个核心交换机地址,所述负载分担表中的汇聚交换机地址为所述第四节点集合内的多个汇聚交换机地址。15.一种软件定义网络SDN中的报文转发的方法,其特征在于,所述SDN包括至少一个控制器和多个服务器,所述方法由所述多个服务器中的第一服务器上的软件交换机执行,包括:接收所述至少一个控制器发送的负载分担表,所述负载分担表是所述至少一个控制器根据所述SDN的链路状态信息和所述第一服务器的目的服务器的地址生成的;根据所述负载分担表进行报文转发。16.根据权利要求15所述的方法,其特征在于,所述根据所述负载分担表进行报文转发包括:根据所述负载分担表选择下...

【专利技术属性】
技术研发人员:宋雪飞胡农达于德雷侯杰
申请(专利权)人:北京华为数字技术有限公司
类型:发明
国别省市:北京,11

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

1