CN108566295B - 一种基于软件定义网络的平面式控制架构的一致性构建方法 - Google Patents
一种基于软件定义网络的平面式控制架构的一致性构建方法 Download PDFInfo
- Publication number
- CN108566295B CN108566295B CN201810241791.5A CN201810241791A CN108566295B CN 108566295 B CN108566295 B CN 108566295B CN 201810241791 A CN201810241791 A CN 201810241791A CN 108566295 B CN108566295 B CN 108566295B
- Authority
- CN
- China
- Prior art keywords
- controller
- controllers
- consistency
- network
- authoritative
- 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
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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种基于软件定义网络的平面式控制架构的一致性构建方法,特别是针对软件定义网络中的多协同控制器间网络拓扑视图等一致性问题,提出的一种一致性问题解决方案。本方案采用的是在平面式多控制器中选择出一个权威控制器进行全局的掌控,保障了所需信息的一致性;同时控制器间采用抢占式访问权机制进行数据修改权限的申请。
Description
技术领域
本发明属于软件定义网络技术领域,特别是针对软件定义网络中的多控制器协作的平面式架构下控制器网络拓扑视图等一致性问题,提出了一种基于软件定义网络的平面式控制架构的一致性构建方法。
背景技术
随着云计算、物联网、大数据等应用的数据时代兴起,传统网络的发展难以应对灵活的数据资源请求。相应的网络架构的更新方案相继出现,首先提出的可编程网络的研究,为软件定义网络(Software Defined Networking,SDN)的发展提供了理论基础;主动网络允许用户编写简单的程序,但是安全性面临了极大的威胁,且适用性比较差;4D架构是将决策平面从数据平面进行分离,使得控制逻辑集中化;面向企业安全管理的SANE架构,也是以4D架构为设计原则,将控制决策由中央服务器控制;Ethane是在SANE上进行的功能扩展,初步建立软件实现转发决策,硬件缓存决策只需进行报文转发;2008年研究人员基于Ethane的大部分功能的基础上,提出了OpenFlow技术,更加明确数控分离的基本概念;后基于OpenFlow给网络带来可编程的特性,进而使得SDN概念应运而生。
软件定义网络是一种在物理上分散、逻辑上集中的基于软件的新型控制网络架构,是网络虚拟化的一种实现方式。目前有两个应用非常广泛的SDN架构,分别是ForCES和OpenFlow。这两个架构都遵循控制平面和数据平面分离的原则,并且都对两平面之间的信息交换进行了了标准化。与传统网络不同点在于,它通过软件编程形式自定义的设置网络设备,使得原来分布式的控制平面逻辑上集中。当实现了数控分离之后,原来的分布式的控制平面集中化了,即随着网络规模的扩大,单个控制器节点的服务能力不足以满足庞大且复杂的网络状态,单控制器节点就很容易成为整个网络性能的瓶颈,因此可扩展性问题是SDN面临的最大问题。虽然SDN是建立一个逻辑上集中、物理上分散的控制平台,能有利于系统的可扩展性和稳定性。但是控制器本质上还是分布式和异步操作的,而逻辑的安装不具备原子性,存在配置有先后顺序或者执行有先后顺序,造成网络传输一致性问题。
目前扩展性的研究主要分为纵向扩展和横向扩展。纵向部署控制器也被称为垂直式控制平面,以Kandoo框架为例,他是一种新颖的分布式控制平面,他有两层控制器,底层是一组没有互联、没有全网状态信息的控制器,顶层是维护全网状态逻辑集中的控制器,主要用于校园和企业网络;横向部署控制器被称为平面式控制架构,是目前采用比较多的一种方式,即采用K个控制器对目标网络进行分布式部署,主要用于数据中心和广域网。
论文“Kandoo:A Framework for Efficient and Scalable Offloading ofControl Applications”,提出了一种SDN网络高效可升级的控制应用卸载框架Kandoo,是垂直控制的实例,他的优势是让网络管理员自由的去配置基于控制应用特性的控制平面函数的部署模型,底层控制器处理的大多数频繁事件,有效地向顶层屏蔽了大量本地消息,降低了顶层控制器的开销,架构中的负载问题主要指的是本地控制器在区域数据流控制事件分配处理时出现的调度不均衡现象。但是,该方案是在层次式架构下的部署,不仅需要硬件成本的增加,同时该架构下各个控制器只管控所属区域,跨域交互都会通过顶层控制器,造成该控制器负载过重。而平面式部署架构中,各个控制器相互协同工作,但是主要的是一致性问题。
发明内容
本发明的目的在于解决现有多控制器协同下的平面式部署架构下的控制器之间一致性问题,提供了一种基于软件定义网络的平面式控制架构的一致性构建方法。
为达到上述目的,本发明采用的技术方案是:在多控制器中选举一个权威控制器进行全局的掌控,由权威控制器向其余控制器收取局部修改信息,并向其余控制器下发全局信息,保障了所需信息的一致性。
所述权威控制器选举方法如下:
采用各个控制器管辖下交换机个数的比值作为衡量区域内网络拓扑可能发生变化的概率,用ω表示:
式(1)中,ωi表示的是控制器i的所管辖区域内网络拓扑可能发生变化的概率,Ni表示控制器i所管辖的交换机个数,N表示整个网络交换机的总数;
选取的权威控制器是控制平面的领导者,其余控制器发送保持一致性消息的概率并不是一样的,用拓扑发生变化的概率来衡量控制器间发送保持一致性消息的概率,同时各个控制器依然管控自身的区域,建立如下模型,目标函数是控制器到其他控制器时延与发送消息概率的乘积之和最小,目标函数表示为:
式(2)中,K表示控制器的个数;且0<ωj<1;
根据控制器部署方案中控制器间的时延值和各个控制器下管辖的交换机个数值来计算出目标函数值最小的控制器做权威控制器。
所有控制器处于同一个层次,权威控制器起主导作用,收集其余控制器的局部RIB信息和局部网络拓扑,整合成一个全局信息,下发给其余控制器。
各控制器之间的访问权是基于抢占式访问权机制。
本发明是基于平面式部署架构下,在K个控制器之中,选举出一个权威控制器作为全局的掌控,保障了所需信息的一致性。
由于平面式控制架构中,各个控制器之间处于平等的地位,每个控制器都保持着全网络的数据,如负载状态、局部视图、路由信息库(Routing Information Base,RIB)等数据。更重要的是为了维持整个网络数据传送的是最短路径,每个控制器内部都保持着一份全网视图,由于网络中交换机的变动,导致拓扑视图也会发生改变,因此维持视图的一致性显得尤为重要。控制器在获取自己所管辖区域的局部拓扑视图会传递给权威控制器,由权威控制器对自身保存的视图值进行修正,然后再传递给其余控制器进行存储,所有的本地控制器能够获得统一的全局网络视图。从功能实现来说,不仅仅只是对视图的维持一致性,同时也对数据保持一致性。因为在平面式控制架构下,传递信息的时间不是同时进行的,且各个信息的传递不是一致的,各时间内控制器的信息都不能同时保持一致性。因此通过权威控制器下发的RIB等数据和全局网络视图,能保证同一时间下所有控制器的全局网络视图和RIB数据的一致性,同时减少各个控制器之间互传RIB信息而带来的过多链路负载。
本发明利用权威控制器的加入,对各个控制器的RIB数据和网络拓扑视图信息的一致性起到一定的解决作用。
附图说明
图1是平面式控制器不一致性问题示意图;
图2是平面式权威控制部署示意图;
图3是控制器间信令交互示意图。
具体实施方式
下面结合附图和实施例对本发明做进一步的详细描述。
本发明的考虑了平面是架构中控制器都处于统一等级的地位,如图1所示,控制平面主要由四个控制器1~4组成,每个控制器管辖自己的区域。假设之前统一了数据,均为V值,但是在控制器1区域内网络发生了变化,生成了新的值叫做V+V’,为了使得控制平面每个控制器掌握全局的信息,因此控制器1将新值V+V’发送给剩余的三个控制器。与此同时,控制器4区域内的网络也发生变化,产生新值V+V”,也将新值发送给其余的三个控制器。这时容易造成数据混乱、控制平面信令数量庞大等问题,加大了控制器的负载,增加的数据层的信令数量。针对这样的问题,希望在控制器之间找出一个主导的控制器,称之为权威控制器,数据、视图的一致都以该控制器为标准,权威控制器和普通控制器虽然处于同一个层次,但是管理的能力不在同一个层级,如图2(a)、(b)所示可以看出,控制平面的网络并没有进行修改,仍属于平面式架构,只是从中推举出一个控制器,当某个控制器需要修改数据的时候,会直接告诉控制器3进行数据或视图的修改,再由权威控制器将修改后的数据发送给其他控制器,各个控制器之间依旧管控各自区域。
本方案的关键在于在控制平面部署方案研究中,根据计算得出的控制器部署方案中,选举出该权威控制器。从网络研究一开始就知道,时延做为整个网络最重要的性能指标,不仅影响着用户对数据的请求响应,更对网络系统密切相关,因此权威控制器其余控制器之间的响应快慢也极大的影响着网络。因此,时延做为选取权威控制器的衡量指标,定义delayi,j为控制器i和控制器j之间的时延值。
因为控制器管辖下的交换机节点用户数量对网络拓扑的修改并没什么影响,因此暂不考虑交换机节点的用户数量。因此,控制器中视图与数据的变化与网络拓扑变化息息相关,又由于K个控制器所管控区域发生网络拓扑变化的次数概率与交换机的个数呈现一定的关系,比如交换机个数多的区域,网络拓扑发生变化的概率会比交换机个数少的区域要大。因此采用控制器个数的比值作为衡量区域内网络拓扑可能发生变化的概率,用ω表示:
式(1)中,ωi表示的是控制器i的所管辖区域内网络拓扑可能发生变化的概率,Ni表示控制器i所管辖的交换机个数,N表示整个网络交换机的总数。
选取的权威控制器算是控制平面的一个领导者,需要对其余控制器的信息响应比较迅速,而其余控制器发送保持一致性消息的概率并不是一样的,因此用拓扑发生变化的概率来衡量控制器间发送保持一致性消息的概率,同时各个控制器依然管控自身的区域。基于上面的描述,可建立如下模型,目标函数是控制器到其他控制器时延与发送消息概率的乘积之和最小,目标函数表示为:
式(2)中,K表示控制器的个数;且0<ωj<1。
根据控制器部署方案中控制器间的时延值和各个控制器下管辖的交换机个数值来计算出目标函数值最小的控制器成为权威控制器。
结合图3的控制器间信令交互示意图,由于是单个权威控制器进行一致性维护,因此采用的是基于抢占式访问权机制对控制器间信令交互进行管理,一次只针对一处的进行修改。机制中的Proposer就是提出数据修改的控制器,发出的Prepare请求就是提出数据修改请求,Value表示的控制器要维持一致的数据,epoch值表示控制器对权威控制器的访问权,Acceptor表示的是权威控制器。如图3(a)所示,系统里面有Proposer1~3,当前Acceptor的Value和epoch值都是为空的,首先Proposer-1(后面简称P1~P3)发送Prepare请求,希望得到epoch1的访问权,因为Acceptor当前并没有发出任何的epoch访问权,所有接受P1的请求,并返回Acceptor当前的取值,此时P1的第一阶段结束。在P1阶段结束之后,开始准备运行第二个阶段,如图3(b)所示。而在P1这第二阶段开始之前,P2开始抢占epoch2的访问权,因为epoch2大于epoch1,则Acceptor接受epoch2,同时使得epoch1失效,并对P2返回Acceptor当前值,此时P2也完成了第一阶段。在图3(c)中,P2第一阶段完成后,准备开始运行第二阶段,同时P1也准备运行第二阶段,都向Acceptor发送请求提交自身的Value值。但是Acceptor发现epoch2是当前自己发出的最高权限,所有接收P2的数据,将P2的Value值赋于V2,向P2返回响应的结果,而P1由于epoch1的权限比较低,访问被抢占而失效,不在接收P1提交的Value值请求。在图3(d)中,此时的P3发出了epoch3的权限请求,希望得到epoch3的访问权,因为epoch3大于epoch2,则epoch2失效。然后向P3返回Acceptor已经设置成功的取值,而对P3来说发现系统内部已经生成明确的Value值V2,此时不再更改,直接返回V2这个结果给P3。
本发明具有以下优点:
1.不同于Kandoo的垂直式控制平面,是基于平面式部署架构下的一致性问题的解决方案,不仅能解决一致性问题,同时也能节省一定的成本;
2.不同于一般的平面式控制架构,通过权威控制器的加入,能很好的维护控制器信息和全局视图的一致性,同时减少控制器间为了保持数据信息的一致性而产生的大量数据流,从而减轻了整个网络链路的负载。
Claims (3)
1.一种基于软件定义网络的平面式控制架构的一致性构建方法,其在多控制器中选举一个权威控制器进行全局的掌控,由权威控制器向其余控制器收取局部修改信息,并向其余控制器下发全局信息,保障了所需信息的一致性,其特征在于:所述权威控制器选举方法如下:
采用各个控制器管辖下交换机个数的比值作为衡量区域内网络拓扑可能发生变化的概率,用ω表示:
式(1)中,ωi表示的是控制器i的所管辖区域内网络拓扑可能发生变化的概率,Ni表示控制器i所管辖的交换机个数,N表示整个网络交换机的总数;
选取的权威控制器是控制平面的领导者,其余控制器发送保持一致性消息的概率并不是一样的,用拓扑发生变化的概率来衡量控制器间发送保持一致性消息的概率,同时各个控制器依然管控自身的区域,建立如下模型,目标函数是控制器到其他控制器时延与发送消息概率的乘积之和最小,目标函数表示为:
式(2)中,K表示控制器的个数;且0<ωj<1;delayi,j为控制器i和控制器j之间的时延值;
根据控制器部署方案中控制器间的时延值和各个控制器下管辖的交换机个数值来计算出目标函数值最小的控制器做权威控制器。
2.根据权利要求1所述基于软件定义网络的平面式控制架构的一致性构建方法,其特征在于:所有控制器处于同一个层次,权威控制器起主导作用,收集其余控制器的局部RIB信息和局部网络拓扑,整合成一个全局信息,下发给其余控制器。
3.根据权利要求1所述一种基于软件定义网络的平面式控制架构的一致性构建方法,其特征在于:各控制器之间的访问权是基于抢占式访问权机制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810241791.5A CN108566295B (zh) | 2018-03-22 | 2018-03-22 | 一种基于软件定义网络的平面式控制架构的一致性构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810241791.5A CN108566295B (zh) | 2018-03-22 | 2018-03-22 | 一种基于软件定义网络的平面式控制架构的一致性构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108566295A CN108566295A (zh) | 2018-09-21 |
CN108566295B true CN108566295B (zh) | 2020-03-24 |
Family
ID=63532965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810241791.5A Active CN108566295B (zh) | 2018-03-22 | 2018-03-22 | 一种基于软件定义网络的平面式控制架构的一致性构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108566295B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113691606B (zh) * | 2021-08-19 | 2024-04-16 | 京东鲲鹏(江苏)科技有限公司 | 任务卸载方法、装置、电子设备、系统和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106254117A (zh) * | 2016-08-09 | 2016-12-21 | 西安交通大学 | 一种集中控制可编程的信息中心网络设计方法 |
CN107147507A (zh) * | 2016-03-01 | 2017-09-08 | 中卫大河云联网络技术有限公司 | 一种软件定义网络的控制平面构架以及控制方法 |
CN107196854A (zh) * | 2017-06-20 | 2017-09-22 | 西安交通大学 | 一种软件定义网络中数据平面异常处理方法 |
CN107276662A (zh) * | 2017-07-27 | 2017-10-20 | 大连大学 | 一种软件定义空间信息网络多控制器动态部署方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10091093B2 (en) * | 2016-06-30 | 2018-10-02 | Futurewei Technologies, Inc. | Multi-controller control traffic balancing in software defined networks |
-
2018
- 2018-03-22 CN CN201810241791.5A patent/CN108566295B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107147507A (zh) * | 2016-03-01 | 2017-09-08 | 中卫大河云联网络技术有限公司 | 一种软件定义网络的控制平面构架以及控制方法 |
CN106254117A (zh) * | 2016-08-09 | 2016-12-21 | 西安交通大学 | 一种集中控制可编程的信息中心网络设计方法 |
CN107196854A (zh) * | 2017-06-20 | 2017-09-22 | 西安交通大学 | 一种软件定义网络中数据平面异常处理方法 |
CN107276662A (zh) * | 2017-07-27 | 2017-10-20 | 大连大学 | 一种软件定义空间信息网络多控制器动态部署方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108566295A (zh) | 2018-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hu et al. | Multi-controller based software-defined networking: A survey | |
US10511524B2 (en) | Controller communications in access networks | |
Blial et al. | An overview on SDN architectures with multiple controllers | |
Hu et al. | EASM: Efficiency-aware switch migration for balancing controller loads in software-defined networking | |
Jimenez et al. | On the controller placement for designing a distributed SDN control layer | |
Fang et al. | Parallel stream processing against workload skewness and variance | |
Zhang et al. | Online load balancing for distributed control plane in software-defined data center network | |
KR20160105469A (ko) | 소프트웨어 정의 네트워크 내의 구획 시스템 및 방법 | |
CN111580930A (zh) | 一种面向国产平台的云原生应用架构支撑方法及系统 | |
CN103701916A (zh) | 分布式存储系统的动态负载均衡方法 | |
CN108900428A (zh) | 基于交换机动态迁移的控制器负载均衡方法 | |
Li et al. | Dynamic SDN controller association mechanism based on flow characteristics | |
Liu et al. | On optimal hierarchical SDN | |
Moens et al. | Design and evaluation of a hierarchical application placement algorithm in large scale clouds | |
CN108566295B (zh) | 一种基于软件定义网络的平面式控制架构的一致性构建方法 | |
Sapkota et al. | Multi-controller placement optimization using naked mole-rat algorithm over software-defined networking environment | |
Zheng et al. | Application of improved ant colony algorithm in load balancing of software-defined networks | |
Biswas et al. | Efficient Switch Migration for Controller Load Balancing in Software Defined Networking | |
Yuan et al. | Workload-aware request routing in cloud data center using software-defined networking | |
Oleiwi et al. | Design and Implementation of Distributed Controller Clustering for Solving the Issue of Single Failure in SDN Networks. | |
Medhi et al. | Openflow-based multi-controller model for fault-tolerant and reliable control plane | |
Togou et al. | A distributed control plane for path computation scalability in software-defined networks | |
Li et al. | Controller Cluster-Based Interconnecting for Multi-domain SDN Networks | |
Zou et al. | Active synchronization of multi‐domain controllers in software‐defined networks | |
Kushwah | A survey on load balancing techniques using ACO algorithm |
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 |