一种二层分布式多控制器架构及构建方法

文档序号:9508486阅读:472来源:国知局
一种二层分布式多控制器架构及构建方法
【技术领域】
[0001] 本发明涉及SDN (Software Defined Network,软件定义网络)控制器领域,具体 涉及一种二层分布式多控制器架构及构建方法。
【背景技术】
[0002] 用于SDN的分布式控制器已经被提出用于解决控制器中的可扩展性和可靠性问 题。这些分布式控制器将控制逻辑相关的数据包处理架构移动到外部控制器。然而,他们 的性能特点在很大程度上未得到研究。控制器(Controller)是整个SDN的核心,它负责对 底层转发设备进行监测与控制的同时,向上层应用提供接口,因此它是连接底层网络设备 与上层应用的桥梁。
[0003] Ethane和OpenFlow为互联网的创新提供了一个完全成熟的可编程平台。在SDN 中,逻辑上集中的控制器简化了网络控制逻辑的修改,并使得数据平台和控制平台可以独 立发展,与此同时,也带来了可扩展性和可靠性方面的问题。SDN多控制器能较好地解决 SDN集中化的网络控制平台中网络可扩展性和可靠性方面的问题。本发明研究集中在二层 结构控制器上,当前对于控制器的研究分为以下几类。
[0004] (1)根据多控制器研究中控制器是否具有全网视图,可以将控制器研究分为全网 视图控制器及局部网络视图控制器研究。全网视图控制器是指一个网络中的每个控制器 都具有整个网络的全局视图,如HyperFlow和D-ZENIC。HyperFlow中每个控制器中的应 用程序实例通过一个全局的发布或订阅系统,有选择地发布改变系统状态事件,其他控制 器复制已发布的事件来更新自身状态,这样HyperFlow中每个控制器都具有了全局网络视 图。局部网络视图控制器研究是指网络中控制器都不具有整个数据中心网络的完整信息, 如 Devolved。
[0005] (2)根据控制器之间管理的网络设备之间是否有交叉,可以将多控制器的研究分 为有交叉管理和无交叉管理。有交叉管理是指多控制器研究中,单个网络设备可以受到多 于一个的控制器管理,如DevolvecUElastiCon。无交叉管理是指每个控制器节点管理网络 的一部分,且单个网络设备仅受一个控制器管理,如HyperFlow。有交叉管理的多控制器之 间可以进行载荷均衡,且对于网络设备而言,具有更好的控制可靠性,但是会带来更多的通 信量。
[0006] (3)根据网络中控制器层级数可以将多控制器研究分为一级控制器和两级控制器 研究。两级控制器是指网络中有一个控制器作为控制器协调者来控制管理其他控制器的操 作,如Kandoo、D-ZENIC。Kandoo构建了两层的控制器:直接控制器和间接控制器。直接控 制器是一群既不互联又无全局网络状态的控制器,直接控制器尽可能地接近网络设备处理 本地应用。间接控制器是管理全局网络状态的逻辑上集中的控制器。间接控制器在负责 全网状态的应用的同时,负责直接控制器之间的协调工作。一级控制器是指,在网络中不 存在控制器的单一协调者,网络中所有控制器协同合作完成整个网络的控制,如Devolved、 HyperFlow。
[0007] (4)多控制器研究中还可以分为静态管理和动态管理等两类。静态管理是指在整 个网络运行中,网络设备与控制器之间的管理关系不再改变,如Onix、HyperFlow。动态管 理是指,在整个网络运行中,网络设备可以变更它的控制器,如ElastiCon。ElastiCon中网 络设备可以根据控制器负载量的变化,从一个负载量较多的控制器转移到一个负载量较少 的控制器。

【发明内容】

[0008] 为了克服现有技术的不足,为了提高SDN控制器控制效率并使其更具有现实可操 作性,本发明提供一种二层分布式多控制器架构及构建方法。
[0009] 本发明在多控制器交叉管理(即单网络可以受多控制器管理)的基础上,提出了控 制器松弛管理思想,以提高控制器与网络设备之间的通信效率和控制器的管理效率。本发 明的二层分布式多控制器架构,直接控制器与网络设备交互比较频繁,距离比较近,互动效 率比较高;间接控制器承担需要全网信息的控制任务,数量较少,在保证网络状态一致性上 效率较高。间接控制器下发全网命令,具体实施由不需要全网状态的直接控制器进行,这样 大大提高了布置网络的效率。
[0010] 本发明提出的二层结构与【背景技术】中的Kandoo不同,在Kandoo中,间接控制器与 网络设备是一对多的关系,而本发明中是多对多的关系,即一个网络设备的行为可能受多 个间接控制器影响。这样一来,各个间接控制器之间实现网络了资源共享,从而提高了整个 网络的可靠性。同时各个间接控制器容量约束的设定,使得每个间接控制器能工作在最佳 状态,最大化的利用了设备资源。
[0011] 技术方案如下所述。
[0012] -种二层分布式多控制器架构,在该架构中,控制器分为直接控制器和间接控制 器,其中: 1-1)直接控制器与网络设备直接通信,承担链路发现、拓扑管理、策略制定、表项下发 功能; 1-2)间接控制器具有全网的、实时的资源状态信息,根据网络应用要求构建虚拟网,然 后进行虚拟网络映射的计算,并通过直接控制器对网络设备进行虚拟网的部署; 1- 3)每个网络设备只受单个直接控制器控制,每个直接控制器受多个间接控制器控 制,从而每个网络设备受多个间接控制器的间接控制。
[0013] 所述每个网络设备受多个间接控制器的间接控制,其具体实现方法为: 2- 1)直接控制器定时向间接控制器发送其所直接控制的网络设备的实时资源状态信 息; 2-2)间接控制器根据全网实时资源状态信息以及网络应用需求进行虚拟网络映射的 计算并将结果下发到相关的直接控制器; 2-3)直接控制器进行虚拟网络部署,如果部署不成功,把当前的网络设备的实时资源 状态信息反馈给间接控制器并执行2-2); 2-4)直接控制器把网络资源使用状况反馈给所有间接控制器。
[0014] -种实现所述二层分布式多控制器架构的方法,每个直接控制器受多个间接控制 器控制,间接控制器通过以下的松散管理办法来管理直接控制器: 3-1)如果一个直接控制器执行某个间接控制器所下发的虚拟网络部署任务的不成功 次数累计达到一个预设阀值,该间接控制器将暂停与该直接控制器的通信,暂停通信期间, 该间接控制器不会向该直接控制器发送虚拟网部署任务; 3- 2)在预设的一定时间之后,该间接控制器恢复与该直接控制器的通信,失败次数被 重置为〇,该间接控制器可以继续向该直接控制器发送虚拟网部署任务。
[0015] -种实现所述二层分布式多控制器架构的方法,间接控制器的位置计算方法包 括: 4- 1)设定两个约束,分别是:每个间接控制器同时能管理的直接控制器个数的上限,每 个直接控制器能接受管理的间接控制器的个数; 4-2)设定一个目标:使拓扑总体时延最小,所述总体时延是指各间接控制器到所管理 的各直接控制器的数据包传输时延之和; 4-3)在给定直接控制器节点的拓扑结构和间接控制器个数的前提下,根据约束和目标 得出各间接控制器的最佳摆放位置。
[0016] 本发明中的一种二层分布式多控制器架构及构建方法,为构建一个新型的分布式 多控制器架构提出了一种可靠的方案,已经通过仿真验证是确实可行的。二层结构使得网 络设备接收的命令少了很多匹配表项,使得网络构建更加的便捷有效率,多控制器使得整 个网络的可靠性显著增强,在一个间接控制器宕机的情况下,网络设备仍能根据与之连接 的别的间接控制器发出的指令进行网络操作,此外,本发明考虑了控制器的容量,在保证每 个控制器都不会过载的情况下,网
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1