CN110865993A - 一种sdn控制器集群*** - Google Patents
一种sdn控制器集群*** Download PDFInfo
- Publication number
- CN110865993A CN110865993A CN201911066568.2A CN201911066568A CN110865993A CN 110865993 A CN110865993 A CN 110865993A CN 201911066568 A CN201911066568 A CN 201911066568A CN 110865993 A CN110865993 A CN 110865993A
- Authority
- CN
- China
- Prior art keywords
- sdn controller
- data
- sdn
- cluster
- database
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24552—Database cache management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0663—Performing the actions predefined by failover planning, e.g. switching to standby network elements
-
- 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
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明提供了一种SDN控制器集群***,包括SDN控制器集群和数据库服务器集群;所述SDN控制器集群中的每一个SDN控制器均包含本地缓存和Zookeeper数据库,所述SDN控制器集群中包括一个主SDN控制器和若干备用SDN控制器;所述数据库服务器集群包括若干本地DB;所述主SDN控制器的本地缓存与数据库服务器集群的本地DB进行数据通信,所述主SDN控制器的Zookeeper数据库与其他备用SDN控制器的Zookeeper数据库进行数据通讯实现数据同步。本发明采用数据库服务器集群代替所有SDN控制器的本地数据库,SDK控制器无需操作数据库,缓解SDN控制处理数据的压力;主备切换后,同步数据源发生变化,保证数据的一致性,避免由于数据的差异导致业务的中断。
Description
技术领域
本发明属于网络架构设计技术领域,尤其是涉及一种SDN控制器集群***。
背景技术
SDN(Software Defined Network,软件定义网络)网络是一种新型网络架构,集中化控制全网的资源,对改善网络资源交付有非常重要的意义。有些厂商采用单一的SDN控制器,它的优点是控制简单。但是存在致命的缺点,当前控制器宕机,导致整个网络处于无管理状态。有些厂商采用主备控制器技术,一定程度上缓解了单个SDN控制器的压力,但是主备容易产生脑裂的状况,导致环境中可能出现双leader控制器,引起网络控制风暴。
多数厂商采用集群SDN控制器解决控制器稳定性及控制效率不佳的问题。集群控制器的模型如图1所示。
SDN控制器的个数为基数,3,5,7...N。基数个控制器的目的是为了快速选举主控制器。SDN控制器数据同步的方式如下。对外提供数据的是本地缓存的数据,这样做的目的是提高控制器的性能。SDN控制器采用负载均衡的模式,不同的SDN控制器控制不同的设备。
通过Zookeeper(ZK)实现集群数据的同步。当接收到数据时,将数据存入到本地的缓存。本地的数据库(DB),以及ZK的数据库(DB)。ZK的数据库变化会通知其他控制器有数据的变化。其他的控制器处理这个数据的变化,将数据写入到本地缓存和本地的数据库。集群发生主备切换时,将ZK DB中的数据同步给其他的控制器。实现集群的数据同步。
此集群***存在如下缺点:
1.本地缓存提供对外的数据,虽然可以保证性能,但是集群之间的本地缓存数据很难保持一致,SDN主备服务器切换,则可能会引起某些业务的异常。
2.本地DB仅用于持久化数据,利用率低,而且每个控制器都会有一个本地数据库,数据库的数量与控制器的个数成正比,造成数据库数量的浪费。集群间数据库数据可能不一致,若从数据库恢复数据,可能造成某些业务的异常。
发明内容
有鉴于此,本发明旨在提出一种SDN控制器集群***,优化处理数据的过程,保证SDN控制器之间的一致性,避免由于数据的差异导致业务的中断。
为达到上述目的,本发明的技术方案是这样实现的:
一种SDN控制器集群***,包括SDN控制器集群和数据库服务器集群;
所述SDN控制器集群中的每一个SDN控制器均包含本地缓存和Zookeeper数据库,所述SDN控制器集群中包括一个主SDN控制器和若干备用SDN控制器;所述数据库服务器集群包括若干本地DB;
所述主SDN控制器的本地缓存与数据库服务器集群的本地DB进行数据通信,所述主SDN控制器的Zookeeper数据库与其他备用SDN控制器的Zookeeper数据库进行数据通讯实现数据同步。
进一步的,所述SDN控制器集群***处理数据变化的方法,包括如下步骤:
1)主SDN控制器接收数据的变化;
2)主SDN控制器对数据进行合法性校验;
3)主SDN控制器处理数据,将数据存入到其本地缓存及数据库服务器集群的本地DB;
4)主SDN控制器将数据存入其Zookeeper数据库,用于数据的同步;
5)每一个备用SDN控制器接收到所述主SDN控制器的Zookeeper数据库的数据变化后,首先将数据写入到Zookeeper数据库,然后将数据写入到其本地缓存中。
进一步的,所述SDN控制器集群***进行集群主备切换的方法,包括如下步骤:
1)新的主SDN控制器从所述数据库服务器集群中获取数据;
2)新的主SDN控制器将数据存入到本地缓存;
3)新的主SDN控制器将数据存入到Zookeeper数据库,Zookeeper数据库中的数据发生变化,并通知其他备用SDN控制器处理数据的变化;
4)备用SDN控制器将数据存入到Zookeeper数据库;
5)备用SDN控制器将数据存入到本地缓存。
相对于现有技术,本发明具有以下优势:
(1)本发明采用数据库服务器集群代替所有SDN控制器的本地数据库,SDK控制器无需操作数据库,缓解SDN控制处理数据的压力;
(2)优化SDN控制器处理数据的步骤,提高SDN控制器的性能,SDN控制器数据的迁移更加灵活;主备切换后,同步数据源发生变化,保证数据的一致性,避免由于数据的差异导致业务的中断;
(3)将SDN处理器处理数据的层面剥离出来,SDN控制器专注于控制层面,提高控制器的效率;
(4)本发明对于SDN控制器集群的扩展,数据库的数量不会增加,且获取数据的稳定性得以保证。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为现有的SDN控制器集群架构示意图;
图2为本发明实施例所述SDN控制器集群***的架构图;
图3为本发明实施例所述SDN控制器集群***处理数据变化的流程图;
图4为本发明实施例所述SDN控制器集群***主备切换的流程图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面将参考附图并结合实施例来详细说明本发明。
本发明实施例一种SDN控制器集群***,如图2所示,包括SDN控制器集群和数据库服务器集群;
所述SDN控制器集群中的每一个SDN控制器均包含本地缓存和Zookeeper数据库,所述SDN控制器集群中包括一个主SDN控制器和若干备用SDN控制器;所述数据库服务器集群包括若干本地DB;
所述主SDN控制器的本地缓存与数据库服务器集群的本地DB进行数据通信,所述主SDN控制器的Zookeeper数据库与其他备用SDN控制器的Zookeeper数据库进行数据通讯实现数据同步。
本发明增加新的数据库服务器,用于提供数据库的服务。数据库采用集群模式,增加数据库的稳定性。
如图3所示,所述SDN控制器集群***处理数据变化的方法,包括如下步骤:
1)主SDN控制器接收数据的变化;
2)主SDN控制器对数据进行合法性校验;
3)主SDN控制器处理数据,将数据存入到其本地缓存及数据库服务器集群的本地DB;
4)主SDN控制器将数据存入其Zookeeper数据库,用于数据的同步;
5)每一个备用SDN控制器接收到所述主SDN控制器的Zookeeper数据库的数据变化后,首先将数据写入到Zookeeper数据库,然后将数据写入到其本地缓存中。
如图4所示,所述SDN控制器集群***进行集群主备切换的方法,包括如下步骤:
1)新的主SDN控制器从所述数据库服务器集群中获取数据;
2)新的主SDN控制器将数据存入到本地缓存;
3)新的主SDN控制器将数据存入到Zookeeper数据库,Zookeeper数据库中的数据发生变化,并通知其他备用SDN控制器处理数据的变化;
4)备用SDN控制器将数据存入到Zookeeper数据库;
5)备用SDN控制器将数据存入到本地缓存。
本发明当SDN控制器集群发生主备切换时,通过本地数据库进行数据的同步,将本地的数据写入到本地缓存和ZK DB(Zookeeper数据库),保证数据的一致性,从而确保业务的持续性。新的主SDN控制器中的数据来源是数据库服务器中的数据,进而将此数据同步给其他的SDN控制器,保证了数据的一致性。因此,SDN控制器的数据同步得以保证,SDN控制器的性能可以提高。具体的,SDK控制器无需操作数据库,缓解SDN控制处理数据的压力;优化SDN控制器处理数据的步骤,提高SDN控制器的性能;保证SDN控制器之间的一致性,避免由于数据的差异导致业务的中断;对于SDN控制器集群的扩展,数据库的数量不会增加,且获取数据的稳定性得以保证;SDN控制器数据的迁移更加灵活。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种SDN控制器集群***,其特征在于:包括SDN控制器集群和数据库服务器集群;
所述SDN控制器集群中的每一个SDN控制器均包含本地缓存和Zookeeper数据库,所述SDN控制器集群中包括一个主SDN控制器和若干备用SDN控制器;所述数据库服务器集群包括若干本地DB;
所述主SDN控制器的本地缓存与数据库服务器集群的本地DB进行数据通信,所述主SDN控制器的Zookeeper数据库与其他备用SDN控制器的Zookeeper数据库进行数据通讯实现数据同步。
2.根据权利要求1所述的一种SDN控制器集群***,其特征在于:所述SDN控制器集群***处理数据变化的方法,包括如下步骤:
1)主SDN控制器接收数据的变化;
2)主SDN控制器对数据进行合法性校验;
3)主SDN控制器处理数据,将数据存入到其本地缓存及数据库服务器集群的本地DB;
4)主SDN控制器将数据存入其Zookeeper数据库,用于数据的同步;
5)每一个备用SDN控制器接收到所述主SDN控制器的Zookeeper数据库的数据变化后,首先将数据写入到Zookeeper数据库,然后将数据写入到其本地缓存中。
3.根据权利要求1所述的一种SDN控制器集群***,其特征在于:所述SDN控制器集群***进行集群主备切换的方法,包括如下步骤:
1)新的主SDN控制器从所述数据库服务器集群中获取数据;
2)新的主SDN控制器将数据存入到本地缓存;
3)新的主SDN控制器将数据存入到Zookeeper数据库,Zookeeper数据库中的数据发生变化,并通知其他备用SDN控制器处理数据的变化;
4)备用SDN控制器将数据存入到Zookeeper数据库;
5)备用SDN控制器将数据存入到本地缓存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911066568.2A CN110865993B (zh) | 2019-11-04 | 2019-11-04 | 一种sdn控制器集群*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911066568.2A CN110865993B (zh) | 2019-11-04 | 2019-11-04 | 一种sdn控制器集群*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110865993A true CN110865993A (zh) | 2020-03-06 |
CN110865993B CN110865993B (zh) | 2022-09-09 |
Family
ID=69654726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911066568.2A Active CN110865993B (zh) | 2019-11-04 | 2019-11-04 | 一种sdn控制器集群*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110865993B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113472891A (zh) * | 2021-07-15 | 2021-10-01 | 浪潮思科网络科技有限公司 | 一种sdn控制器集群数据处理方法、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015078498A1 (en) * | 2013-11-27 | 2015-06-04 | Huawei Technologies Co., Ltd. | Method and system for balancing load in a sdn network |
CN106210123A (zh) * | 2016-08-03 | 2016-12-07 | 付宏伟 | 一个多节点的软件定义网络控制器*** |
CN106953744A (zh) * | 2017-02-27 | 2017-07-14 | 浙江工商大学 | 一种sdn集群控制器高可用架构设计方法 |
CN107682411A (zh) * | 2017-09-14 | 2018-02-09 | 广州西麦科技股份有限公司 | 一种大规模sdn控制器集群及网络*** |
CN107769961A (zh) * | 2017-09-14 | 2018-03-06 | 广州西麦科技股份有限公司 | 一种sdn控制器集群及网络*** |
-
2019
- 2019-11-04 CN CN201911066568.2A patent/CN110865993B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015078498A1 (en) * | 2013-11-27 | 2015-06-04 | Huawei Technologies Co., Ltd. | Method and system for balancing load in a sdn network |
CN106210123A (zh) * | 2016-08-03 | 2016-12-07 | 付宏伟 | 一个多节点的软件定义网络控制器*** |
CN106953744A (zh) * | 2017-02-27 | 2017-07-14 | 浙江工商大学 | 一种sdn集群控制器高可用架构设计方法 |
CN107682411A (zh) * | 2017-09-14 | 2018-02-09 | 广州西麦科技股份有限公司 | 一种大规模sdn控制器集群及网络*** |
CN107769961A (zh) * | 2017-09-14 | 2018-03-06 | 广州西麦科技股份有限公司 | 一种sdn控制器集群及网络*** |
Non-Patent Citations (1)
Title |
---|
郭东东: "基于多控制器的SDN研究", 《中国优秀硕士学位论文全文数据库 (基础科学辑)》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113472891A (zh) * | 2021-07-15 | 2021-10-01 | 浪潮思科网络科技有限公司 | 一种sdn控制器集群数据处理方法、设备及介质 |
CN113472891B (zh) * | 2021-07-15 | 2024-04-26 | 浪潮思科网络科技有限公司 | 一种sdn控制器集群数据处理方法、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110865993B (zh) | 2022-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109729111A (zh) | 用于管理分布式***的方法、设备和计算机程序产品 | |
CN104199666A (zh) | 一种应用程序动态配置方法及装置 | |
US9680692B2 (en) | Method and system for using a recursive event listener on a node in hierarchical data structure | |
CN107404509B (zh) | 分布式服务配置***及信息管理方法 | |
CN110120961B (zh) | 一种分布式服务集群及其路由同步的方法 | |
CN109639773B (zh) | 一种动态构建的分布式数据集群控制***及其方法 | |
CN105471622A (zh) | 一种基于Galera的控制节点主备切换的高可用方法及*** | |
CN106656589A (zh) | 一种服务器双机热备份*** | |
CN107257295B (zh) | 一种分布式架构软件定义网络控制器的调度方法 | |
CN103561055A (zh) | 基于会话的云计算环境下Web应用自动弹性扩展方法 | |
US11228664B2 (en) | Method and apparatus for acquiring RPC member information, electronic device and storage medium | |
CN105306237A (zh) | 网管的分布式管理方法及装置 | |
CN110865993B (zh) | 一种sdn控制器集群*** | |
CN108737566B (zh) | 一种分布式的实时消息过滤*** | |
CN103312541A (zh) | 一种高可用互备集群的管理方法 | |
CN111049886A (zh) | 多区域sdn控制器数据同步方法、服务器及*** | |
CN109412828B (zh) | 用于软件定义网络中的网络拓扑发现的方法、设备和*** | |
CN112087506B (zh) | 一种集群节点管理方法、装置及计算机存储介质 | |
CN105302817A (zh) | 分布式文件***管理方法和装置 | |
CN114422427B (zh) | 一种流量均衡方法、装置、电子设备和存储介质 | |
CN111641564B (zh) | Sdn控制器的集群***及下发配置方法 | |
CN115964436A (zh) | 一种数据库集群管理的方法和装置 | |
CN111614702A (zh) | 一种边缘计算方法以及边缘计算*** | |
CN112118282B (zh) | 一种基于RabbitMQ集群的服务节点弹性伸缩方法 | |
CN108616597B (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 |