CN110865993B - 一种sdn控制器集群*** - Google Patents

一种sdn控制器集群*** Download PDF

Info

Publication number
CN110865993B
CN110865993B CN201911066568.2A CN201911066568A CN110865993B CN 110865993 B CN110865993 B CN 110865993B CN 201911066568 A CN201911066568 A CN 201911066568A CN 110865993 B CN110865993 B CN 110865993B
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.)
Active
Application number
CN201911066568.2A
Other languages
English (en)
Other versions
CN110865993A (zh
Inventor
刘立京
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Unicloud Technology Co Ltd
Original Assignee
Unicloud Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Unicloud Technology Co Ltd filed Critical Unicloud Technology Co Ltd
Priority to CN201911066568.2A priority Critical patent/CN110865993B/zh
Publication of CN110865993A publication Critical patent/CN110865993A/zh
Application granted granted Critical
Publication of CN110865993B publication Critical patent/CN110865993B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols 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控制器集群***。
背景技术
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控制器将数据存入到本地缓存。
CN201911066568.2A 2019-11-04 2019-11-04 一种sdn控制器集群*** Active CN110865993B (zh)

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 CN110865993A (zh) 2020-03-06
CN110865993B true 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)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113472891B (zh) * 2021-07-15 2024-04-26 浪潮思科网络科技有限公司 一种sdn控制器集群数据处理方法、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
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控制器集群及网络***

Patent Citations (5)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Title
基于多控制器的SDN研究;郭东东;《中国优秀硕士学位论文全文数据库 (基础科学辑)》;20170228;全文 *

Also Published As

Publication number Publication date
CN110865993A (zh) 2020-03-06

Similar Documents

Publication Publication Date Title
CN104199666A (zh) 一种应用程序动态配置方法及装置
WO2022037359A1 (zh) 配置数据访问方法、装置、设备、配置中心及存储介质
AU2014209697B2 (en) Method and system for using a recursive event listener on a node in hierarchical data structure
CN113067850B (zh) 一种多云场景下的集群编排***
US10069942B2 (en) Method and apparatus for changing configurations
CN107404509B (zh) 分布式服务配置***及信息管理方法
CN109639773B (zh) 一种动态构建的分布式数据集群控制***及其方法
CN105306237A (zh) 网管的分布式管理方法及装置
CN110865993B (zh) 一种sdn控制器集群***
CN103152416A (zh) 一种提高在线集群组高可用性能的动态管理方法
CN103312541A (zh) 一种高可用互备集群的管理方法
CN111049886A (zh) 多区域sdn控制器数据同步方法、服务器及***
CN109412828B (zh) 用于软件定义网络中的网络拓扑发现的方法、设备和***
CN113992695B (zh) 网元设备间业务协同的方法和网元设备
CN111064643B (zh) 一种节点服务器及其数据交互方法和相关装置
CN110071778B (zh) 一种对时方法、装置、设备及介质
CN105302817A (zh) 分布式文件***管理方法和装置
CN115964436A (zh) 一种数据库集群管理的方法和装置
CN111641564B (zh) Sdn控制器的集群***及下发配置方法
CN112118282B (zh) 一种基于RabbitMQ集群的服务节点弹性伸缩方法
CN108616597B (zh) 一种实现服务永不中断的分布式运行方法
CN113472891A (zh) 一种sdn控制器集群数据处理方法、设备及介质
CN109344192B (zh) 一种优化cimiss数据库***及其适配方法
CN108762780B (zh) 一种实现服务软件程序分离运行的方法
CN112751789A (zh) 一种非对称sdn控制器集群的实现方法及***

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