CN111049886B - 多区域sdn控制器数据同步方法、服务器及系统 - Google Patents

多区域sdn控制器数据同步方法、服务器及系统 Download PDF

Info

Publication number
CN111049886B
CN111049886B CN201911198366.3A CN201911198366A CN111049886B CN 111049886 B CN111049886 B CN 111049886B CN 201911198366 A CN201911198366 A CN 201911198366A CN 111049886 B CN111049886 B CN 111049886B
Authority
CN
China
Prior art keywords
data
sdn controller
controller
sdn
main
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
CN201911198366.3A
Other languages
English (en)
Other versions
CN111049886A (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 Nanjing Digital Technology Co Ltd
Original Assignee
Unicloud Nanjing Digital 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 Nanjing Digital Technology Co Ltd filed Critical Unicloud Nanjing Digital Technology Co Ltd
Priority to CN201911198366.3A priority Critical patent/CN111049886B/zh
Publication of CN111049886A publication Critical patent/CN111049886A/zh
Application granted granted Critical
Publication of CN111049886B publication Critical patent/CN111049886B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Hardware Redundancy (AREA)

Abstract

一种多区域SDN控制器数据同步方法、服务器及数据同步系统。其中所述方法包括:接收SDN控制器发送的数据帧,其中所述SDN控制器包括一个主SDN控制器和至少一个备用SDN控制器,所述数据帧包括控制器的身份标识ID,备用服务器的个数,控制器的状态,携带数据,校验码;对所述数据进行合法性校验,并将合法的数据存入第一缓存队列;备份每一个区域SDN控制器的数据;对比所述备份的数据,当所述备份数据不一致时,根据主SDN控制器数据进行数据同步。通过该方案能够减轻主SDN控制器同步数据的压力,快速进行数据同步,保证SDN主备切换数据的一致性,避免业务发生中断。

Description

多区域SDN控制器数据同步方法、服务器及系统
技术领域
本发明属于计算机领域,具体涉及一种多区域SDN控制器数据同步方法、服务器及系统。
背景技术
软件定义网络即SDN网络是一种新型网络架构,核心思想是分离网络设备控制层与转发层面,对数据的鲁棒性以及高可用相对弱化。单控制器发生故障或灾难时,导致整个网络的瘫痪。SDN集群可以解决单点故障的问题。同一个区域的集群也可能遇到当前区域控制器不可用的情况。多区域的集群方案凸显重要。多区域的集群采用主备模式,同一时间,主设备对外提供服务。为了实现快速的无缝切换,主控制向备用控制器同步数据成为核心。
由主控制器负责数据的同步有如下缺点:增加服务器的压力,会导致控制器控制面服务能力减弱,消耗资源;每增加一个区域的控制器,数据就会复制一遍,数据量大的话,压力成风暴式增长。
发明内容
针对于上述现有技术的不足,本发明的目的之一是解决控制器数据同步压力过大的问题。
本发明实施例公开了一种方法,包括:一种多区域SDN控制器数据同步方法,其特征在于,包括:接收SDN控制器发送的数据帧,其中所述SDN控制器包括一个主SDN控制器和至少一个备用SDN控制器,所述数据帧包括控制器的身份标识ID,备用服务器的个数,控制器的状态,携带数据,校验码;对所述数据进行合法性校验,并将合法的数据存入第一缓存队列;备份每一个区域SDN控制器的数据;对比所述备份的数据,当所述备份数据不一致时,根据主SDN控制器数据进行数据同步。
在一个可能的实施例中,对所述数据进行合法性校验之后还包括:根据所述数据帧进行冲突检测,确定主SDN控制器。
在一个可能的实施例中,所述进行冲突检测,确定主SDN控制器包括:向每个SDN控制器发送请求信息,接收每个SDN控制器的响应信息;根据所述响应信息确定主SDN控制器,其中响应信息包括控制器的状态。
在一个可能的实施例中,根据主SDN控制器数据进行数据同步包括:根据主SDN控制器数据进行备用SDN控制器的数据同步。
一种服务器,其特征在于,包括:接收模块,用于接收SDN控制器发送的数据帧,其中所述SDN控制器包括一个主SDN控制器和至少一个备用SDN控制器,所述数据帧包括控制器的身份标识ID,备用服务器的个数,控制器的状态,携带数据,校验码; 校验模块,用于对所述数据进行合法性校验,并将合法的数据存入第一缓存队列;备份模块,用于备份每一个区域SDN控制器的数据;同步模块,用于对比所述备份的数据,当所述备份数据不一致时,根据主SDN控制器数据进行数据同步。
在一个可能的实施例中,还包括冲突检测模块,用于根据所述数据帧进行冲突检测,确定主SDN控制器。
在一个可能的实施例中,所述冲突检测模块包括:发送单元,用于向每个SDN控制器发送请求信息;接收单元,用于接收每个SDN控制器的响应信息;确定单元,用于根据所述响应信息确定主SDN控制器,其中响应信息包括控制器的状态。
在一个可能的实施例中,所述同步模块还用于根据主SDN控制器数据进行备用SDN控制器的数据同步。
在一个可能的实施例中,所述主SDN控制器包括第二缓存队列,用于当数据发生变化时,将所述数据加入第二缓存队列。
一种数据同步系统,包括主SDN控制器、备用SDN控制器以及前述所述的服务器,其中主SDN控制器、备用SDN控制器分别与所述服务器通信。
本发明的有益效果:通过该方案可以使SDN控制器完全专注于控制层面,数据的鲁棒性和高可用性可以得到保证。同时该方案还可以减轻SDN控制器同步数据的压力;增加新的SDN控制器,可以快速进行数据同步;保证SDN主备切换数据的一致性,避免业务发生中断。
附图说明
图1为本发明实施例的一种方法流程图;
图2为本发明实施例的一种具体实施方式的流程图;
图3为本发明实施例的服务器结构示意图;
图4为本发明实施例的一种系统结构示意图。
具体实施方式
为了便于本领域技术人员的理解,下面结合实施例与附图对本发明作进一步的说明,实施方式提及的内容并非对本发明的限定。
参照图1和图2,一种多区域SDN控制器数据同步方法,包括:
S101, 接收SDN控制器发送的数据帧,其中所述SDN控制器包括一个主SDN控制器和至少一个备用SDN控制器,所述数据帧包括控制器的身份标识ID,备用服务器的个数,控制器的状态,携带数据,校验码。
其中,可以定义SDN控制器发送的数据帧,格式如下:
Figure 209652DEST_PATH_IMAGE001
id表示当前控制器的的标识;nei表示备用服务器的个数;status表示当前控制器的状态,1是leader,2是slave;data表示携带数据,crc表示校验数据的准确性。
在一个实施例中,在多区域中包括多个SDN控制器,其中一个是主SDN控制器,用于对外提供服务以及与服务器通信;另外一些是备用SDN控制器,可以用于通过服务器接收主服务器的同步数据。
其中,SDN控制器包括缓存队列,可以用于缓存同步数据库数据。当SDN控制器中有数据发生变化时,将所述数据加入缓存队列。
S102,对所述数据进行合法性校验,并将合法的数据存入第一缓存队列。
服务器进行数据的合法性验证,可以通过比较数据帧中CRC字段确定数据的合法性,若数据不合法,通知SDN主控制器数据更新失败。
在一个实施例中,对所述数据进行合法性校验之后还包括:根据所述数据帧进行冲突检测,确定主SDN控制器。从而解决当发生数据异常时如何确定哪个SDN控制器是主SDN控制器。
在一个实施例中,进行冲突检测,确定主SDN控制器可以包括:向每个SDN控制器发送请求信息,接收每个SDN控制器的响应信息;根据所述响应信息确定主SDN控制器,其中响应信息包括控制器的状态。
具体地,为了避免异常数据,当接收到的数据帧的id与之前的id不同时,需要确定当前是否发生主备切换,需要重新确认身份。服务器可以主动请求每个SDN控制器,根据SDN控制器的响应信息,确定同步数据的主SDN控制器。主SDN控制器的判断依据可以如下:当响应信息中数据字段status是1时,确定该SDN控制器是主SDN控制器;否则,确定当前SDN控制器是备用SDN控制器。
在冲突检测完成后,将更新后的数据添加入缓存队列。
S103,备份每一个区域SDN控制器的数据,包括主SDN控制器的数据和备用SDN控制器的数据。
S104,对比所述备份的数据,当所述备份数据不一致时,根据主SDN控制器数据进行数据同步。具体的,对比每一个SDN控制器的备份数据,找到备份数据之间的差异。
在一个实施例中,除了对服务器进行数据同步,根据主SDN控制器数据进行数据同步还包括,根据主SDN控制器数据进行备用SDN控制器的数据同步。
通过上述方法,能够减轻主SDN控制器同步数据的压力,快速进行数据同步,保证SDN主备切换数据的一致性,避免业务发生中断。
如图3,本发明实施例还公开了一种服务器10,包括:接收模块101,用于接收SDN控制器发送的数据帧,其中所述SDN控制器包括一个主SDN控制器和至少一个备用SDN控制器,所述数据帧包括控制器的身份标识ID,备用服务器的个数,控制器的状态,携带数据,校验码;校验模块102,用于对所述数据进行合法性校验,并将合法的数据存入第一缓存队列;备份模块103,用于备份每一个区域SDN控制器的数据;同步模块104,用于对比所述备份的数据,当所述备份数据不一致时,根据主SDN控制器数据进行数据同步。
服务器10还包括冲突检测模块105,用于根据所述数据帧进行冲突检测,确定主SDN控制器。
所述冲突检测模块105包括:发送单元,用于向每个SDN控制器发送请求信息;接收单元,用于接收每个SDN控制器的响应信息;确定单元,用于根据所述响应信息确定主SDN控制器,其中响应信息包括控制器的状态。
所述同步模块104还用于根据主SDN控制器数据进行备用SDN控制器的数据同步。
所述主SDN控制器包括第二缓存队列,用于当数据发生变化时,将所述数据加入第二缓存队列。
该服务器具体实施方式对应于前述的方法实施例,具体可参考方法实施例的描述,不再赘述。
如图4,本发明实施例还公开了一种数据同步系统100,包括主SDN控制器20、备用SDN控制器30以及前述所述的服务器10,其中主SDN控制器20、备用SDN控制器30分别与所述服务器10通信。其中,主SDN控制器20和备用SDN控制器30都包括缓存队列,用于缓存同步数据库数据。具体的工作方式可以参照方法实施例。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统, 或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中, 也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
本发明具体应用途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进,这些改进也应视为本发明的保护范围。

Claims (3)

1.一种多区域SDN控制器数据同步方法,其特征在于,包括:
接收SDN控制器发送的数据帧,其中所述SDN控制器包括一个主SDN控制器和至少一个备用SDN控制器,所述数据帧包括控制器的身份标识ID,备用服务器的个数,控制器的状态,携带数据,校验码;
定义SDN控制器发送的数据帧,id表示当前控制器的标识;nei表示备用服务器的个数;status表示当前控制器的状态,1是leader,2是slave;data表示携带数据,crc表示校验数据的准确性;
在多区域中包括多个SDN控制器,其中一个是主SDN控制器,用于对外提供服务以及与服务器通信;另外一些是备用SDN控制器,可以用于通过服务器接收主服务器的同步数据;
其中,SDN控制器包括缓存队列,可以用于缓存同步数据库数据,当SDN控制器中有数据发生变化时,将所述数据加入缓存队列;
对所述数据进行合法性校验,根据所述数据帧进行冲突检测,确定主SDN控制器,向每个SDN控制器发送请求信息,接收每个SDN控制器的响应信息;根据所述响应信息确定主SDN控制器,其中响应信息包括控制器的状态,并将合法的数据存入第一缓存队列;服务器进行数据的合法性验证,通过比较数据帧中CRC字段确定数据的合法性,若数据不合法,通知SDN主控制器数据更新失败;
为了避免异常数据,当接收到的数据帧的id与之前的id不同时,需要确定当前是否发生主备切换,需要重新确认身份,主SDN控制器的判断依据如下:当响应信息中数据字段status是1时,确定该SDN控制器是主SDN控制器;否则,确定当前SDN控制器是备用SDN控制器;
在冲突检测完成后,将更新后的数据添加入缓存队列;
备份每一个区域SDN控制器的数据,包括主SDN控制器的数据和备用SDN控制器的数据;
对比所述备份的数据,对比每一个SDN控制器的备份数据,找到备份数据之间的差异,当所述备份数据不一致时,根据主SDN控制器数据进行数据同步,根据主SDN控制器数据进行备用SDN控制器的数据同步。
2.一种服务器,其特征在于,包括:接收模块,用于接收SDN控制器发送的数据帧,其中所述SDN控制器包括一个主SDN控制器和至少一个备用SDN控制器,所述数据帧包括控制器的身份标识ID,备用服务器的个数,控制器的状态,携带数据,校验码;
校验模块,用于对所述数据进行合法性校验,并将合法的数据存入第一缓存队列;
备份模块,用于备份每一个区域SDN控制器的数据;
同步模块,用于对比所述备份的数据,当所述备份数据不一致时,根据主SDN控制器数据进行数据同步,还用于根据主SDN控制器数据进行备用SDN控制器的数据同步;
冲突检测模块,用于根据所述数据帧进行冲突检测,确定主SDN控制器,包括:发送单元,用于向每个SDN控制器发送请求信息;接收单元,用于接收每个SDN控制器的响应信息;确定单元,用于根据所述响应信息确定主SDN控制器,其中响应信息包括控制器的状态;
所述主SDN控制器包括第二缓存队列,用于当数据发生变化时,将所述数据加入第二缓存队列。
3.一种数据同步系统,包括主SDN控制器、备用SDN控制器以及如权利要求2所述的服务器,其中主SDN控制器、备用SDN控制器分别与所述服务器通信。
CN201911198366.3A 2019-11-29 2019-11-29 多区域sdn控制器数据同步方法、服务器及系统 Active CN111049886B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911198366.3A CN111049886B (zh) 2019-11-29 2019-11-29 多区域sdn控制器数据同步方法、服务器及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911198366.3A CN111049886B (zh) 2019-11-29 2019-11-29 多区域sdn控制器数据同步方法、服务器及系统

Publications (2)

Publication Number Publication Date
CN111049886A CN111049886A (zh) 2020-04-21
CN111049886B true CN111049886B (zh) 2023-07-07

Family

ID=70233613

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911198366.3A Active CN111049886B (zh) 2019-11-29 2019-11-29 多区域sdn控制器数据同步方法、服务器及系统

Country Status (1)

Country Link
CN (1) CN111049886B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112099971B (zh) * 2020-09-04 2022-10-25 紫光云(南京)数字技术有限公司 一种sdn控制器平滑升级的方法
CN113038156B (zh) * 2021-03-04 2023-04-25 百果园技术(新加坡)有限公司 直播数据管理系统、方法、设备及存储介质
CN113830134B (zh) * 2021-08-25 2024-03-15 通号城市轨道交通技术有限公司 车载atp双系切换方法和车载atp的逻辑单元

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902617A (zh) * 2012-12-28 2014-07-02 华为技术有限公司 分布式数据库同步方法和系统
WO2017152754A1 (zh) * 2016-03-11 2017-09-14 中兴通讯股份有限公司 软件定义网路sdn安全通信的方法及装置
CN107579857A (zh) * 2017-09-29 2018-01-12 烽火通信科技股份有限公司 一种基于云的sdn控制器的冗余热备份保护的方法
WO2019192318A1 (zh) * 2018-04-04 2019-10-10 中兴通讯股份有限公司 流量平滑方法、服务器及转发设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101753618B (zh) * 2009-12-30 2012-12-19 中兴通讯股份有限公司 数据快同步方法及终端
CN105099647A (zh) * 2014-05-16 2015-11-25 中兴通讯股份有限公司 一种同步方法、控制器、同步节点及同步网络
CN105335443A (zh) * 2014-08-13 2016-02-17 阿里巴巴集团控股有限公司 一种用于数据同步中的异常检测的方法与设备
CN109561127A (zh) * 2017-09-27 2019-04-02 上海诺基亚贝尔股份有限公司 用于软件定义网络中的数据同步的方法、设备和计算机可读介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902617A (zh) * 2012-12-28 2014-07-02 华为技术有限公司 分布式数据库同步方法和系统
WO2017152754A1 (zh) * 2016-03-11 2017-09-14 中兴通讯股份有限公司 软件定义网路sdn安全通信的方法及装置
CN107181720A (zh) * 2016-03-11 2017-09-19 中兴通讯股份有限公司 一种软件定义网路sdn安全通信的方法及装置
CN107579857A (zh) * 2017-09-29 2018-01-12 烽火通信科技股份有限公司 一种基于云的sdn控制器的冗余热备份保护的方法
WO2019192318A1 (zh) * 2018-04-04 2019-10-10 中兴通讯股份有限公司 流量平滑方法、服务器及转发设备

Also Published As

Publication number Publication date
CN111049886A (zh) 2020-04-21

Similar Documents

Publication Publication Date Title
CN111049886B (zh) 多区域sdn控制器数据同步方法、服务器及系统
EP3620905B1 (en) Method and device for identifying osd sub-health, and data storage system
US9460183B2 (en) Split brain resistant failover in high availability clusters
EP3435604B1 (en) Service processing method, device, and system
US8909985B2 (en) Multiple hyperswap replication sessions
US20060212453A1 (en) System and method for preserving state for a cluster of data servers in the presence of load-balancing, failover, and fail-back events
CN110224871A (zh) 一种Redis集群的高可用方法及装置
US20100023564A1 (en) Synchronous replication for fault tolerance
CN109446169B (zh) 一种双控磁盘阵列共享文件系统
CN112955874A (zh) 在使用区块链的机器学习的去中心化模型构建中进行自修复的系统及方法
US20100217857A1 (en) Consolidating session information for a cluster of sessions in a coupled session environment
US20080082630A1 (en) System and method of fault tolerant reconciliation for control card redundancy
CN106919473A (zh) 一种数据灾备系统及业务处理方法
TW201824030A (zh) 主備資料庫的管理方法、系統及其設備
EP3648405B1 (en) System and method to create a highly available quorum for clustered solutions
CN114422331A (zh) 容灾切换方法、装置及系统
JP2016009219A (ja) 冗長システムおよび冗長化方法
CN112231399A (zh) 一种应用于图数据库的方法和装置
CN107590032A (zh) 存储集群故障转移的方法及存储集群系统
CN110839068B (zh) 业务请求处理方法、装置、电子设备及可读存储介质
US8601224B2 (en) Control unit for storage apparatus and method for controlling storage apparatus
CN115878696B (zh) 一种分布式数据处理集群高可用方法和装置
CN113568710B (zh) 一种虚拟机高可用实现方法、装置和设备
US11853099B2 (en) Recovery method of remote copy
CN115080661A (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