CN108737125B - 一种sdn网络多控制域通信方法及系统 - Google Patents
一种sdn网络多控制域通信方法及系统 Download PDFInfo
- Publication number
- CN108737125B CN108737125B CN201710240518.6A CN201710240518A CN108737125B CN 108737125 B CN108737125 B CN 108737125B CN 201710240518 A CN201710240518 A CN 201710240518A CN 108737125 B CN108737125 B CN 108737125B
- Authority
- CN
- China
- Prior art keywords
- controller
- cluster
- switch
- control domain
- slave
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 47
- 238000000034 method Methods 0.000 title claims abstract description 43
- 241000854291 Dianthus carthusianorum Species 0.000 claims abstract description 117
- 230000002093 peripheral effect Effects 0.000 claims abstract description 30
- 230000005012 migration Effects 0.000 claims description 4
- 238000013508 migration Methods 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013341 scale-up Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/042—Network management architectures or arrangements comprising distributed management centres cooperatively managing the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种SDN网络多控制域通信方法及系统,所述系统包括多个控制器集群,每个控制器集群包含簇首控制器和多个控制器组成,所述每个控制器对应着一个由多台交换机组成的控制域,当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信;所述每个控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信。实现了面向广域互联的同构SDN网络控制器的互联互通,提高网络性能的目的。
Description
技术领域
本发明涉及软件定义网络技术领域,特别是涉及一种基于控制集群的SDN网络多控制域互联互通的通信方法及系统。
背景技术
软件定义网络(SDN)是一种建立在可编程技术上的新型网络架构,将控制平面和转发平面分离,实现控制器对数据平面的交换机进行集中式控制,为动态配置网络和控制网络提供了丰富的可编程性。但是,随着SDN网络规模扩大,当SDN网络内部具有成百上千台交换机时,传统单一控制器的集中式控制结构的处理能力受到了限制,且扩展困难。为解决规模扩大所带来的问题,出现了分层式的多控制器架构。通过对控制器进行垂直扩展,引入单域控制器和多域控制器的概念,将单域控制器部署在底层,负责其控制域下的多个交换设备,将多域控制器部署在单域控制器之上,管理全局网络状态,实现多控制域间的信息交互。
但分层式的控制器架构在解决上述问题的同时,也会出现一些不足,比如单域与多域的两层控制器结构增加了运行成本,其在进行全局数据交互时,流表需要层层下发,响应时间较长。此外,当某一单域控制器因负载过重出现控制失效的情况时,其控制域内的网络将会出现瘫痪。如何解决现有技术中SDN网络多控制域的互联互通问题,目前尚未出现有效的解决方案。
发明内容
针对于上述问题,本发明提供一种SDN网络多控制域通信方法及系统,实现面向广域互联的同构SDN网络控制器的互联互通,提高网络性能的目的。
为了实现上述目的,根据本发明的第一方面,提供了一种SDN网络多控制域通信方法,该方法适用于SDN网络多控制域通信系统,所述系统包括多个控制器集群,每个控制器集群包含簇首控制器和多个控制器组成,所述每个控制器对应着一个由多台交换机组成的控制域,所述每台交换机对应这一个主控制器和一个从控制器,并且所述主控制器拥有所述交换机的控制权,该方法包括:
当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信;
其中,所述核心控制域为以所述控制器为主控制器的交换机的集合,所述外围控制域为以所述控制器为从控制器的交换机的集合;
所述每个控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信,其中,所述簇首控制器为所在的控制器集群中负载最小的控制器。
优选的,所述每个控制域集群还包括分配模块,该方法还包括:
所述分配模块为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器。
优选的,所述分配模块为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器之后,该方法还包括:
在预设的情况下,所述交换机的从控制器对所述交换机进行控制;
其中,所述预设的情况包括当某一台交换机的主控制器失效时;
或者,当所述每个控制器集群中的某一控制器负载超过阈值时,将所述控制器对应的核心控制域中的下发流表最多的交换机的控制权交给所述交换机的从控制器;
或者,当所述每个控制器集群中的某一控制器出现故障时,将所述控制器对应的控制域中的所有交换机的控制权交由各自的从控制器。
优选的,所述每个控制器集群还包括选择模块,所述在预设的情况下,所述交换机的从控制器对所述交换机进行控制,包括:
所述选择模块为所述交换机选择新的从控制器;
其中,所述新的从控制器为所述控制器集群中负载最小的控制器。
优选的,所述每个控制器集群通过该控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信之前,该方法还包括:
所述每个控制器集群的簇首控制器,计算该控制器集群内的负载信息,并通过与相邻的控制器集群的簇首控制器进行连接,获得所述相邻的控制器集群的负载信息。
优选的,当所述第一控制器集群的负载超过阈值时,该方法还包括:
所述第一控制器集群中的第一簇首控制器向拥有最小负载的相邻的第二控制器集群的第二簇首控制器发送负载均衡请求。
优选的,当所述第一控制器集群中的第一簇首控制器向拥有最小负载的相邻的第二控制器集群的第二簇首控制器发送负载均衡请求时,该方法还包括:
所述第二簇首控制器接收到所述请求后,将所述第二控制器集群内负载最小的控制器的信息回复至所述第一簇首控制器,并将所述负载最小的控制器迁移到所述第一控制器集群内,并重新分配所述第一控制器集群内各个控制器的核心控制域。
根据本发明的第二方面,提供了一种SDN网络多控制域通信系统,该系统包括多个控制器集群,每个控制器集群包含簇首控制器和多个控制器组成,所述每个控制器对应着一个由多台交换机组成的控制域,所述每台交换机对应这一个主控制器和一个从控制器,并且所述主控制器拥有所述交换机的控制权;
当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器,用于通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信;
其中,所述核心控制域为以所述控制器为主控制器的交换机的集合,所述外围控制域为以所述控制器为从控制器的交换机的集合;
所述每个控制器集群的簇首控制器,用于与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信,其中所述簇首控制器为所在的控制器集群中负载最小的控制器。
优选的,所述每个控制域集群还包括分配模块,其中,
所述分配模块,用于为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器。
优选的,在所述分配模块为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器之后,
在预设的情况下,所述交换机的从控制器,用于对所述交换机进行控制;
其中,所述预设的情况包括当某一台交换机的主控制器失效时;
或者,当所述每个控制器集群中的某一控制器负载超过阈值时,将所述控制器对应的核心控制域中的下发流表最多的交换机的控制权交给所述交换机的从控制器;
或者,当所述每个控制器集群中的某一控制器出现故障时,将所述控制器对应的控制域中的所有交换机的控制权交由各自的从控制器。
优选的,所述每个控制器集群还包括选择模块,当在所述在预设的情况下,所述交换机的从控制器对所述交换机进行控制时,
所述选择模块,用于为所述交换机选择新的从控制器;
其中,所述新的从控制器为所述控制器集群中负载最小的控制器。
优选的,所述簇首控制器包括计算单元,其中,
所述计算单元,用于计算该控制器集群内的负载信息,并通过与相邻的控制器集群的簇首控制器进行连接,获得所述相邻的控制器集群的负载信息。
优选的,当所述第一控制器集群的负载超过阈值时,所述第一控制器集群中的第一簇首控制器包括发送单元,其中,
所述发送单元,用于向拥有最小负载的相邻的第二控制器集群的第二簇首控制器发送负载均衡请求。
优选的,其特征在于,所述第二簇首控制器包括回复单元、迁移单元和分配单元,其中,
所述回复单元,用于接收到所述请求后,将所述第二控制器集群内负载最小的控制器的信息回复至所述第一簇首控制器;
所述迁移单元,用于将所述负载最小的控制器迁移到所述第一控制器集群内;
所述分配单元,用于重新分配所述第一控制器集群内各个控制器的核心控制域。
相较于现有技术,本发明的SDN网络多控制域通信系统包括多个控制器集群,并且每个控制器集群包含簇首控制器和多个控制器组成,所述每个控制器对应着一个由多台交换机组成的控制域,所述每台交换机对应这一个主控制器和一个从控制器,并且所述主控制器拥有所述交换机的控制权。通过当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信,实现了整个控制器集群内的通信;通过所述每个控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信。在本发明中所有的控制器集群中所有控制器都部署在同一平面内,减小了运行成本,缩短了响应时间进而提高了网络性能,从而实现了面向广域互联的同构SDN网络控制器的互联互通。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例一提供的一种SDN网络多控制域通信方法的流程示意图;
图2为本发明实施例三中控制器集群内SDN从控制器优化选择示意图;
图3为本发明实施例三中控制器集群内SDN主从控制器切换示意图;
图4为本发明实施例三中控制器集群间SDN控制器互联互通示意图;
图5为本发明实施例四提供的SDN网络多控制域通信系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有设定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。
为了更清楚的理解本发明,首先对本发明中将会出现的一些技术用语做出解释如下:
主控制器:通过南向接口协议向交换机下发流表,处理其控制域下的资源;
从控制器:和主控制器的功能相同,但只有交换机的主控制器失效时,从控制器才起控制作用;
核心控制域:以某一控制器为主控制器的所有交换机组成的集合;
外围控制域:以某一控制器为从控制器的所有交换机组成的集合;
簇首控制器:一个控制器集群中负载最小的控制器,可通过它进行控制器集群间的通信;
并连控制域:整个控制器集群中所有交换机的集合;
同时为方便描述在实施例中可能会将控制器集群简称为集群。
实施例一
参见图1为本发明实施例一提供的一种SDN网络多控制域通信方法的流程示意图,所述SDN网络多控制域通信方法适用于SDN网络多控制域通信系统,所述系统包括多个控制器集群,每个控制器集群包含簇首控制器和多个控制器组成,所述每个控制器对应着一个由多台交换机组成的控制域,所述每台交换机对应这一个主控制器和一个从控制器,并且所述主控制器拥有所述交换机的控制权,该方法包括以下步骤:
S11、当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信;
其中,所述核心控制域为以所述控制器为主控制器的交换机的集合,所述外围控制域为以所述控制器为从控制器的交换机的集合;
具体的,由多个控制器组成一个控制器集群,每个控制器可对其控制域中多台交换机进行控制;为了在控制器失效时达到快速无缝切换的效果,每个交换机各有一个主控制器和一个从控制器,其中主控制器为当前控制器即拥有该交换机的控制权,从控制器为备用控制器,只有在主控制器失效时获得交换机的控制权。
S12、所述每个控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信;
其中,所述簇首控制器为所在的控制器集群中负载最小的控制器。
具体的,在每个控制器集群中选择当前负载最小的控制器作为该集群的簇首控制器,各个控制器集群间可以通过各自的簇首控制器实现互联互通。
通过本发明实施例一公开的技术方案,当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信,实现了控制器集群内的互联互通;所述每个控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信。在本实施例一中不仅实现了控制器集群内的通信也实现了控制器集群间的通信,进而实现了面向广域互联的同构SDN网络控制器的互联互通,提高网络性能的目的。
实施例二
参照本发明实施例一和图1中所描述的S11和S12步骤的具体过程,在本发明的实施例二中,所述每个控制域集群还包括分配模块,该方法还包括:
所述分配模块为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器。
其中,为了在控制器失效时达到快速无缝切换的效果,每个交换机各有一个主控制器和一个从控制器,其中主控制器为当前控制器,从控制器为备用控制器,只在主控制器失效时获得交换机的控制权。
进一步的,所述分配模块为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器之后,该方法还包括:
在预设的情况下,所述交换机的从控制器对所述交换机进行控制;
其中,所述预设的情况包括当某一台交换机的主控制器失效时;
或者,当所述每个控制器集群中的某一控制器负载超过阈值时,将所述控制器对应的核心控制域中的下发流表最多的交换机的控制权交给所述交换机的从控制器;
或者,当所述每个控制器集群中的某一控制器出现故障时,将所述控制器对应的控制域中的所有交换机的控制权交由各自的从控制器。
所述每个控制器集群还包括选择模块,所述在预设的情况下,所述交换机的从控制器对所述交换机进行控制,包括:
所述选择模块为所述交换机选择新的从控制器;
其中,所述新的从控制器为所述控制器集群中负载最小的控制器。
具体的,交换机的主控制器在正常工作时保持不变,从控制器则进行实时优化选择,根据当前网络状况选择负载最小的控制器作为它的从控制器;
若某一控制器的负载超过了阈值,此处的阈值可以根据实际情况进行设置,比如,所述控制器集群应用的场景有所不同,则控制器对应的负载可以有所不同,为该控制器减负,将其核心控制域中下发流表量最多的交换机的控制权交由从控制器,并在该控制器集群内其他控制器中选择负载最小的控制器作为该交换机新的从控制器;
若某一控制器出现故障,则将其控制域内所有交换机的控制权交由各自的从控制器,并依次在所述控制器集群内其他控制器中选择负载最小的控制器作为该交换机新的从控制器。
为了实现控制器集群间的通信,在所述每个控制器集群通过该控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信之前,所述SDN网络多控制域通信方法还包括:
所述每个控制器集群的簇首控制器,计算该控制器集群内的负载信息,并通过与相邻的控制器集群的簇首控制器进行连接,获得所述相邻的控制器集群的负载信息。
进一步的,当所述第一控制器集群的负载超过阈值时,该方法还包括:
所述第一控制集群中的第一簇首控制器向拥有最小负载的相邻的第二控制器集群的第二簇首控制器发送负载均衡请求。
优选的,当所述第一控制集群中的第一簇首控制器向拥有最小负载的相邻的第二控制集群的第二簇首控制器发送负载均衡请求时,该方法还包括:
所述第二簇首控制器接收到所述请求后,将所述第二控制器集群内负载最小的控制器的信息回复至所述第一簇首控制器,并将所述负载最小的控制器迁移到所述第一控制器集群内,并重新分配所述第一控制器集群内各个控制器的核心控制域。
具体的,从每个控制器集群中选择当前负载最小的控制器作为该集群的簇首控制器,各个控制器集群可以通过各自的簇首控制器实现互联互通;
所述簇首控制器计算本控制器集群的负载,与相邻控制器集群的簇首控制器通信,得到相邻控制器集群的负载信息;
当本控制器集群内控制器负载超过阈值时,簇首控制器向拥有最小负载的相邻控制器集群的簇首控制器发送请求;
相邻控制器集群的簇首控制器回复控制器集群中拥有最小负载的控制器,当多个控制器集群同时向这一控制器集群发出请求时,则簇首控制器向拥有最大负载的控制器集群回复;
将拥有最小负载的控制器从相邻集群迁移到并联控制域中,所述并联控制域在所述发出请求的控制器集群内,原控制器集群内的该控制器核心控制域内交换机的控制权交由从控制器,重新选择这一控制器集群中负载最小的控制器作为新的从控制器。为了防止控制器短时间在两个控制器集群间往返迁移,被迁移的控制器需在迁入的集群中工作一段时间后才能再次迁出;
在迁入控制器的控制器集群中,对控制器的核心控制域进行重新分配。新迁入的控制器为各个核心控制域中下发流表最多的交换机的主控制器。如果此时新迁入的控制器负载过大,则再进行集群内负载均衡策略。将核心控制域中下发流表最多的交换机的控制权交由从控制器,并在集群内其他控制器中选择负载最小的控制器作为该交换机的从控制器。
根据本发明实施例二公开的技术方案,具体描述了控制器集群内的控制域中的交换机的主控制器和从控制器的设置和选择,这样可以使得在主控制器出现故障时达到无缝快速切换至从控制器的目的,避免重新建立连接带来的时延。某一控制器通过其核心控制域和外围控制域中的同一个交换机,实现了控制器集群间的互联互通;并且各个控制器集群通过各自的簇首控制器实现了集群间的互联互通。进而实现了面向广域互联的同构SDN网络控制器的互联互通,提高网络性能的目的。
实施例三
与本发明实施例一和实施例二所公开的SDN网络多控制域通信方法相对应,本发明的实施例三还提供了在具体的应用场景中的一种SDN网络多控制域通信方法,其中,
Ci,j:控制器集群i中第j个控制器;
Si,j,k:控制器集群i的第j个控制器的核心控制域中第k个交换机。
具体的,由多个控制器组成一个控制器集群,每个控制器可对其控制域中多台交换机进行控制;
为了在控制器失效时达到快速无缝切换的效果,每个交换机各有一个主控制器和一个从控制器,其中主控制器为当前控制器,从控制器为备用控制器,只在主控制器失效时获得交换机的控制权;
具体来说,主控制器通过南向接口协议向交换机下发流表,处理其控制域下的资源。当主控制器出现故障时,从控制器切换为该交换机的主控制器,获得控制权,接替主控制的工作。参见图2,每个交换机与其主控制器用实线连接表示,与其从控制器用虚线连接表示。其目的为了设置从控制器可以在主控制器出现故障时达到无缝快速切换的效果,避免重新建立连接带来的时延。
交换机的主控制器在正常工作时保持不变,从控制器则进行实时优化选择,根据当前网络状况选择负载最小的控制器作为它的从控制器;
具体来说,主控制器在无故障时保持不变,从控制器会依据实时负载动态变化。参见图2,在集群1中,从控制器优化选择前,C1,3是S1,2,2的从控制器。但此时集群内C1,1的负载最小。因此,在优化选择后,C1,1是S1,2,2的从控制器。
其目的为了实时判断负载情况对从控制器进行优化选择可以让交换机的从控制器始终拥有最小负载,当主控制器出现故障时,从控制器切换为主控制器后可以有最优的性能。
若某一控制器的负载超出了阈值,则为其减负,将其核心控制域下发流表量最多的交换机的控制权交由从控制器,并在控制器集群内其他控制器中选择负载最小的控制器作为该交换机新的从控制器;
具体来说,参见图3,控制器集群1中C1,2的负载达到阈值时,C1,2检测到其核心控制域中下发流表最多的是S1,2,3,即S1,2,3带来的负载最大,此时进行主从控制器的切换。S1,2,3的从控制器是C1,3,所以C1,3切换为S1,2,3的主控制器。集群中选择除C1,3之外的负载最小的控制器是C1,1,因此C1,1是S1,2,3新的从控制器。
其目的为了断开主控制器与下发流表最多的交换机的连接可以最大化的避免由于主控制器负载过重继而失效影响网络性能。设置从控制器可以在主从转换时实现无缝快速切换,不必重新建立新的连接。
若某一控制器出现故障,则将其控制域内所有的交换机的控制权交由各自的从控制器,并依次在集群内其他控制器中选择负载最小控制器的作为该交换机新的从控制器;
不同控制器的核心控制域和外围控制域有交集,可以实现整个集群的互联互通。
实现控制器集群间的互联互通:
由多个集群组成广域互联的SDN网络,每个集群包含多个控制器;
从每个集群中选择当前负载最小的控制器作为该集群的簇首控制器;
具体来说,簇首控制器是根据集群负载实时变化选定的,它一直为集群中负载最小的控制器。参见图4,C1,1是控制器集群1的簇首控制器,C2,1是控制器集群2的簇首控制器。
其目的为了簇首控制器需要进行集群间的通信,还要对其核心控制域内的交换机下发流表,选择当前负载最小的控制器作为该集群的簇首控制器可以减缓簇首控制器负载过大现象发生。
各个集群间可以通过各自的簇首控制器实现互联互通;
具体来说,簇首控制器的功能包括集群间的通信,两个集群的簇首控制器可以通过控制器虚拟网络接口(CVNI)进行信息交互,由此实现集群之间的互联互通。参见图4,C1,1和C2,1分别为控制器集群1和控制器集群2的簇首控制器,它们可以进行两个集群间的互联互通。
簇首控制器计算本集群的负载,与相邻集群的簇首控制器通信,得到相邻集群的负载信息;
具体来说,簇首控制器的另一功能是计算本集群负载的总和。参见图4,在与相邻集群的簇首控制器通信的过程中,集群2的C2,1可以获取到相邻集群1的总负载情况。
本集群内控制器负载超过阈值时,簇首控制器向拥有最小负载的相邻集群的簇首控制器发送请求;
具体来说,参见图4,集群2的控制器负载超过了阈值,集群2的C2,1向拥有最小负载的相邻集群1发送请求,请求进行集群间负载均衡。
相邻集群的簇首控制器回复集群中拥有最小负载的控制器,当多个集群同时向这一集群发出请求时,簇首控制器向拥有最大负载的集群回复;
具体来说,参见图4,当与集群1相邻的多个集群同时因为负载过大向集群1发出请求,此时集群1的C1,1对所有的集群负载进行比较,向所有请求中负载最大的集群2的簇首控制器回复,回复内容为集群1中的C1,3负载最小。
其目的为,只回复负载最大的集群避免了同时从一个负载较轻的集群1中迁出多个控制器,使集群1的负载突然增大。
将拥有最小负载的控制器从相邻集群迁移到并联控制域中,原集群中该控制器核心控制域内交换机的控制权交由从控制器,重新选择这一集群中负载最小的控制器作为新的从控制器。为了防止控制器短时间内在两集群间往返迁移,被迁移的控制器需在迁入的集群中工作一段时间后才能再次迁移出;
具体来说,参见图4,将集群1中负载最小的C1,3迁移到集群2的并连控制域中。集群1中C1,3的核心控制域有S1,3,1。S1,3,1的从控制器C1,2切换为主控制器,重新选择集群1中负载最小的C1,1为从控制器。
其目的为了迁移控制器而不包括核心控制域的交换机可以更有效的缓解集群2中负载过重的情况。控制器需在集群一段时间后才能再次迁移出集群,避免某一控制器一直在两个集群间往返迁移。
在迁入控制器的集群中,对控制器的核心控制域进行重新分配。新迁入的控制器为各个核心控制域中下发流表最多的交换机的主控制器。如果此时新迁入的控制器负载过大,则再进行集群内负载均衡策略。将核心控制域中下发流表最多的交换机的控制权交由从控制器,并在集群内其他控制器中选择负载最小的控制器作为该交换机新的从控制器。
具体来说,参见图4,S2,1,2、S2,2,3、S2,3,3分别为C2,1、C2,2、C2,3中负载最大的交换机。他们的主控制器变更为集群2中新迁入C1,3,从控制器保持不变。
其目的为了新迁入的无负载的控制器用于均衡进群内的负载,缓解负载过大的压力。
在本发明的实施例三中,通过具体的例子描述集群内和集群间的互联互通技术,即通过控制器的核心控制域和外围控制域有同一个交换机实现了集群间的互联互通;通过各个集群的簇首控制器的连接实现了集群间的互联互通,并为了保证通信连接和负载均衡具体描述了交换机主从控制器的择优选择和集群间的负载均衡,进而实现了面向广域互联的同构SDN网络控制器的互联互通,并提高了网络性能的目的。
实施例四
与本发明实施例一和实施例二所对应一种SDN网络多控制域通信方法相对应,在本发明实施例四中提供了一种SDN网络多控制域通信系统,参见图5为本发明实施例四提供的SDN网络多控制域通信系统的结构示意图,该系统包括多个控制器集群,每个控制器集群包含簇首控制器和多个控制器组成,所述每个控制器对应着一个由多台交换机组成的控制域,所述每台交换机对应这一个主控制器和一个从控制器,并且所述主控制器拥有所述交换机的控制权;
当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器,用于通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信;
其中,所述核心控制域为以所述控制器为主控制器的交换机的集合,所述外围控制域为以所述控制器为从控制器的交换机的集合;
所述每个控制器集群的簇首控制器,用于与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信,其中所述簇首控制器为所在的控制器集群中负载最小的控制器。
优选的,所述每个控制域集群还包括分配模块,其中,
所述分配模块,用于为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器。
优选的,在所述分配模块为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器之后,
在预设的情况下,所述交换机的从控制器,用于对所述交换机进行控制;
其中,所述预设的情况包括当某一台交换机的主控制器失效时;
或者,当所述每个控制器集群中的某一控制器负载超过阈值时,将所述控制器对应的核心控制域中的下发流表最多的交换机的控制权交给所述交换机的从控制器;
或者,当所述每个控制器集群中的某一控制器出现故障时,将所述控制器对应的控制域中的所有交换机的控制权交由各自的从控制器。
优选的,所述每个控制器集群还包括选择模块,当在所述在预设的情况下,所述交换机的从控制器对所述交换机进行控制时,
所述选择模块,用于为所述交换机选择新的从控制器;
其中,所述新的从控制器为所述控制器集群中负载最小的控制器。
优选的,所述簇首控制器包括计算单元,其中,
所述计算单元,用于计算该控制器集群内的负载信息,并通过与相邻的控制器集群的簇首控制器进行连接,获得所述相邻的控制器集群的负载信息。
优选的,当所述第一控制器集群的负载超过阈值时,所述第一控制器集群中的第一簇首控制器包括发送单元,其中,
所述发送单元,用于向拥有最小负载的相邻的第二控制器集群的第二簇首控制器发送负载均衡请求。
优选的,其特征在于,所述第二簇首控制器包括回复单元、迁移单元和分配单元,其中,
所述回复单元,用于接收到所述请求后,将所述第二控制器集群内负载最小的控制器的信息回复至所述第一簇首控制器;
所述迁移单元,用于将所述负载最小的控制器迁移到所述第一控制器集群内;
所述分配单元,用于重新分配所述第一控制器集群内各个控制器的核心控制域。
在本发明实施例四中,SDN网络多控制域通信系统包括多个控制器集群,并且每个控制器集群包含簇首控制器和多个控制器组成,所述每个控制器对应着一个由多台交换机组成的控制域,所述每台交换机对应这一个主控制器和一个从控制器,并且所述主控制器拥有所述交换机的控制权。通过当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信,实现了整个控制器集群内的通信;通过所述每个控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信。在本发明中所有的控制器集群中所有控制器都部署在同一平面内,减小了运行成本,缩短了响应时间进而提高了网络性能,从而实现了面向广域互联的同构SDN网络控制器的互联互通。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (14)
1.一种SDN网络多控制域通信方法,其特征在于,该方法适用于SDN网络多控制域通信系统,所述系统包括多个控制器集群,每个控制器集群包含簇首控制器和多个控制器组成,所述每个控制器对应着一个由多台交换机组成的控制域,所述每台交换机对应这一个主控制器和一个从控制器,并且所述主控制器拥有所述交换机的控制权,该方法包括:
当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信;
其中,所述核心控制域为以所述控制器为主控制器的交换机的集合,所述外围控制域为以所述控制器为从控制器的交换机的集合;
所述每个控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信,其中,所述簇首控制器为所在的控制器集群中负载最小的控制器。
2.根据权利要求1所述的方法,其特征在于,所述每个控制域集群还包括分配模块,该方法还包括:
所述分配模块为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器。
3.根据权利要求2所述的方法,其特征在于,所述分配模块为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器之后,该方法还包括:
在预设的情况下,所述交换机的从控制器对所述交换机进行控制;
其中,所述预设的情况包括当某一台交换机的主控制器失效时;
或者,当所述每个控制器集群中的某一控制器负载超过阈值时,将所述控制器对应的核心控制域中的下发流表最多的交换机的控制权交给所述交换机的从控制器;
或者,当所述每个控制器集群中的某一控制器出现故障时,将所述控制器对应的控制域中的所有交换机的控制权交由各自的从控制器。
4.根据权利要求3所述的方法,其特征在于,所述每个控制器集群还包括选择模块,所述在预设的情况下,所述交换机的从控制器对所述交换机进行控制,包括:
所述选择模块为所述交换机选择新的从控制器;
其中,所述新的从控制器为所述控制器集群中负载最小的控制器。
5.根据权利要求1所述的方法,其特征在于,所述每个控制器集群通过该控制器集群的簇首控制器,与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信之前,该方法还包括:
所述每个控制器集群的簇首控制器,计算该控制器集群内的负载信息,并通过与相邻的控制器集群的簇首控制器进行连接,获得所述相邻的控制器集群的负载信息。
6.根据权利要求5所述的方法,其特征在于,当第一控制器集群的负载超过阈值时,该方法还包括:
所述第一控制器集群中的第一簇首控制器向拥有最小负载的相邻的第二控制器集群的第二簇首控制器发送负载均衡请求。
7.根据权利要求6所述的方法,其特征在于,当所述第一控制器集群中的第一簇首控制器向拥有最小负载的相邻的第二控制器集群的第二簇首控制器发送负载均衡请求时,该方法还包括:
所述第二簇首控制器接收到所述请求后,将所述第二控制器集群内负载最小的控制器的信息回复至所述第一簇首控制器,并将所述负载最小的控制器迁移到所述第一控制器集群内,并重新分配所述第一控制器集群内各个控制器的核心控制域。
8.一种SDN网络多控制域通信系统,其特征在于,该系统包括多个控制器集群,每个控制器集群包含簇首控制器和多个控制器组成,所述每个控制器对应着一个由多台交换机组成的控制域,所述每台交换机对应这一个主控制器和一个从控制器,并且所述主控制器拥有所述交换机的控制权;
当所述每个控制器集群中的某个控制器的核心控制域与其外围控制域中包含同一台交换机时,所述控制器,用于通过所述交换机与所述控制器在所述外围控制域对应的主控制器进行通信;
其中,所述核心控制域为以所述控制器为主控制器的交换机的集合,所述外围控制域为以所述控制器为从控制器的交换机的集合;
所述每个控制器集群的簇首控制器,用于与另一个控制器集群的簇首控制器进行连接,实现与另一控制器集群的通信,其中所述簇首控制器为所在的控制器集群中负载最小的控制器。
9.根据权利要求8所述的系统,其特征在于,所述每个控制域集群还包括分配模块,其中,
所述分配模块,用于为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器。
10.根据权利要求9所述的系统,其特征在于,在所述分配模块为所述每个控制域集群中的各个控制器所对应的控制域内的每台交换机设置与之对应的主控制器和从控制器之后,
在预设的情况下,所述交换机的从控制器,用于对所述交换机进行控制;
其中,所述预设的情况包括当某一台交换机的主控制器失效时;
或者,当所述每个控制器集群中的某一控制器负载超过阈值时,将所述控制器对应的核心控制域中的下发流表最多的交换机的控制权交给所述交换机的从控制器;
或者,当所述每个控制器集群中的某一控制器出现故障时,将所述控制器对应的控制域中的所有交换机的控制权交由各自的从控制器。
11.根据权利要求10所述的系统,其特征在于,所述每个控制器集群还包括选择模块,当在所述在预设的情况下,所述交换机的从控制器对所述交换机进行控制时,
所述选择模块,用于为所述交换机选择新的从控制器;
其中,所述新的从控制器为所述控制器集群中负载最小的控制器。
12.根据权利要求8所述的系统,其特征在于,所述簇首控制器包括计算单元,其中,
所述计算单元,用于计算该控制器集群内的负载信息,并通过与相邻的控制器集群的簇首控制器进行连接,获得所述相邻的控制器集群的负载信息。
13.根据权利要求12所述的系统,其特征在于,当第一控制器集群的负载超过阈值时,所述第一控制器集群中的第一簇首控制器包括发送单元,其中,
所述发送单元,用于向拥有最小负载的相邻的第二控制器集群的第二簇首控制器发送负载均衡请求。
14.根据权利要求13所述的系统,其特征在于,所述第二簇首控制器包括回复单元、迁移单元和分配单元,其中,
所述回复单元,用于接收到所述请求后,将所述第二控制器集群内负载最小的控制器的信息回复至所述第一簇首控制器;
所述迁移单元,用于将所述负载最小的控制器迁移到所述第一控制器集群内;
所述分配单元,用于重新分配所述第一控制器集群内各个控制器的核心控制域。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710240518.6A CN108737125B (zh) | 2017-04-13 | 2017-04-13 | 一种sdn网络多控制域通信方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710240518.6A CN108737125B (zh) | 2017-04-13 | 2017-04-13 | 一种sdn网络多控制域通信方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108737125A CN108737125A (zh) | 2018-11-02 |
CN108737125B true CN108737125B (zh) | 2021-06-29 |
Family
ID=63923817
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710240518.6A Active CN108737125B (zh) | 2017-04-13 | 2017-04-13 | 一种sdn网络多控制域通信方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108737125B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113098720A (zh) * | 2021-04-06 | 2021-07-09 | 辽宁大学 | 一种多重化的安全sdn控制系统及其控制方法 |
CN113630330B (zh) * | 2021-08-09 | 2023-07-28 | 北京邮电大学 | 软件定义网络多控制器负载均衡方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103618621A (zh) * | 2013-11-21 | 2014-03-05 | 华为技术有限公司 | 一种软件定义网络sdn的自动配置方法、设备及系统 |
WO2014198202A1 (en) * | 2013-06-09 | 2014-12-18 | Hangzhou H3C Technologies Co., Ltd | Load switch command including identification of source server cluster and target server cluster |
CN104468236A (zh) * | 2014-12-19 | 2015-03-25 | 上海斐讯数据通信技术有限公司 | Sdn控制器集群、sdn交换机及其连接控制方法 |
-
2017
- 2017-04-13 CN CN201710240518.6A patent/CN108737125B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014198202A1 (en) * | 2013-06-09 | 2014-12-18 | Hangzhou H3C Technologies Co., Ltd | Load switch command including identification of source server cluster and target server cluster |
CN103618621A (zh) * | 2013-11-21 | 2014-03-05 | 华为技术有限公司 | 一种软件定义网络sdn的自动配置方法、设备及系统 |
CN104468236A (zh) * | 2014-12-19 | 2015-03-25 | 上海斐讯数据通信技术有限公司 | Sdn控制器集群、sdn交换机及其连接控制方法 |
Non-Patent Citations (1)
Title |
---|
"一种多集群网格的负载均衡算法";潘向辉,张二虎,吴学毅,蔺广逢;《计算机工程与应用》;20091211;第45卷(第35期);第109页,图2 * |
Also Published As
Publication number | Publication date |
---|---|
CN108737125A (zh) | 2018-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6671468B2 (ja) | クラウドモニタリングに基づく負荷分散の最適化方法および装置 | |
CN104092774B (zh) | 软件定义网络连接建立控制方法及装置 | |
WO2017114017A1 (zh) | 实现负载均衡的计算机设备、系统和方法 | |
US10979285B2 (en) | Service transmission method, device, and system | |
CN109660466A (zh) | 一种面向云数据中心租户的多活负载均衡实现方法 | |
CN108737125B (zh) | 一种sdn网络多控制域通信方法及系统 | |
CN102970379A (zh) | 在多个服务器之间实现负载均衡的方法 | |
CN110958297B (zh) | 一种数据迁移方法及系统 | |
CN101707570A (zh) | 一种vrrp场景中的负载均衡方法和设备 | |
US11632329B2 (en) | Resource management system and resource management method | |
CN101345770A (zh) | 负载均衡实现方法、存储控制设备和存储系统 | |
WO2018233679A1 (zh) | 负荷均衡方法及装置 | |
CN101631083A (zh) | 设备接管方法和装置及双控系统 | |
CN107306230B (zh) | 一种网络资源部署的方法、装置、控制器及核心网设备 | |
CN113645146A (zh) | 基于新流密度的软件定义网络控制器负载均衡方法及系统 | |
EP2996382B1 (en) | Physical resource adjustment method, device and controller | |
CN103124436B (zh) | 一种无线通讯系统、云虚拟基站和资源调度方法 | |
CN103443771A (zh) | 一种数据中心间资源调度方法和设备 | |
JP7433312B2 (ja) | ロードバランシングの実現方法、集中型制御ノード及び基地局 | |
KR101877853B1 (ko) | 기지국장치 및 기지국장치의 동작 방법 | |
CN105207856A (zh) | 一种基于sdn虚拟交换机的负载均衡的系统及方法 | |
CN111209098A (zh) | 一种智能渲染调度方法、服务器、管理节点及存储介质 | |
WO1997012492A1 (en) | A method of allocating resources efficiently in a communication system which does not permit switching in real time | |
WO2011009326A1 (zh) | 业务控制方法、装置及宽带接入服务器 | |
CN106879022B (zh) | 无线接入网的基带单元池的资源分配方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |