一种软件定义数据中心网络控制器的最小代价同步方法技术

技术编号:11452808 阅读:150 留言:0更新日期:2015-05-14 01:57
本发明专利技术公开了一种基于软件定义数据中心网络的控制器的最小代价同步方法,能够提出一套部署多个控制器的方案,使得我们能使用最小代价同步控制器之间的局部网络视图,进而形成一套逻辑中心物理分布多个控制器控制交换机平面的有效技术方案,使交换机控制平面免受单控制器的能力小、可靠性低以及可扩展性差等限制。

【技术实现步骤摘要】
一种软件定义数据中心网络控制器的最小代价同步方法
本专利技术涉及软件定义数据中心网络,特别地,涉及一种基于软件定义数据中心网络的控制器的最小代价同步方法。
技术介绍
当前,大规模的数据中心是云服务以及大型分布式计算的重要基础设施。数据中心网络成为了影响许多数据中心应用性能的主要资源。另一方面,软件定义网络使得更加自由地重构网络控制平面成为可能,并且进一步地提升了网络管理和应用的创新。软件定义网络的一个核心的好处是将控制平面与数据平面解耦。从而,这个控制逻辑被移到一个可编程的软件构件,也就是控制器,那些拥有全局网络视图的控制应用运行在控制器上。软件定义网络的原理已经引起了许多的关注,并且被用来设计软件定义的数据中心网络(Software-DefinedDataNetwork,下文中简称为SDDN)。SDDN与数据中心的网络拓扑密切相关。近来,为了改进传统的类似树形的拓扑,已经提出了许多新的扁平的数据中心拓扑。Jellyfish是一个具有代表性的扁平化的以交换机为中心的数据中心拓扑。它将大量同类的交换机组织起来构成一个随机正则图,且每一台交换机连接一些服务器。Jellyfish拓扑有许多好的性能,如可以渐进扩展、较高的性价比和较小的网络直径。然而,由于网络拓扑的非结构化设计,它也面临路由复杂和网络资源管理困难等问题。然而,软件定义网络可以在全局网络视图的支持下解决路由和网络管理的问题。传统地,SDDN的实现依赖于单个控制器来提供中心化的控制平面。控制器被部署在数据中心里一个给定的服务器上。已经有工作指出一个控制器面临能力、可靠性以及可扩展性等多方面的限制。因此,在大规模的数据中心里,一个控制器只能控制一部分的交换机。对于,每一个没有被控制的交换机,经过它的所有流将不能从控制平面获得路由路径。现有技术中缺乏部署多个控制器来形成一个逻辑中心物理分布的控制平面的有效技术方案,特别地,缺乏部署多个控制器的连通树来构筑软件定义数据中心网络的交换机形成最小代价同步的方法。针对现有技术中缺乏部署多个控制器的连通树来构筑软件定义数据中心网络的交换机形成最小代价同步的问题,目前尚未有有效的解决方案。
技术实现思路
针对现有技术中缺乏部署多个控制器的连通树来构筑软件定义数据中心网络的交换机形成最小代价同步的问题,本专利技术的目的在于提出一种基于软件定义数据中心网络的控制器的最小代价同步方法,能够使用最小代价同步控制器,形成一套逻辑中心物理分布多个控制器控制交换机平面的有效技术方案,使交换机控制平面免受单控制器的能力小、可靠性低以及可扩展性差等限制。根据本专利技术的一个方面,提供了一种基于软件定义数据中心网络的控制器的最小代价同步方法。根据本专利技术提供的基于软件定义数据中心网络的控制器的最小代价同步方法包括:在软件定义数据中心网络中构建Jellyfish拓扑,生成交换机的随机正则图,确定交换机之间的链接关系,获得随机正则图的1-覆盖与2-覆盖控制器的最小集合;根据1-覆盖控制器的最小集合,构造Jellyfish拓扑下的多段图;在1-覆盖控制器的最小集合中确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制;根据1-覆盖控制器的最小集合中确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制,与Jellyfish拓扑下的多段图,构造最小steiner树;当最小steiner树中的一个或多个1-覆盖控制器失效时,的失效1-覆盖控制器所覆盖的每个交换机由交换机对应的2-覆盖控制器中的对应控制器所覆盖。其中,构造Jellyfish拓扑下的多段图包括:建立检索队列,将所有节点加入检索队列;选择任意一个节点作为0等级的源节点并移出检索队列;将源节点设置为当前节点并依次检索队列中的所有节点,将源节点的所有相邻节点是设置为当前节点的子节点,节点等级为当前节点等级加一,并将新设置的子节点移出检索队列;将新设置的子节点设置为当前节点再次执行上一步操作,直到检索队列为空时终止。其中,确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制包括:获取软件定义数据中心网络中交换机的总数、软件定义数据中心网络中每个交换机的可用端口数、每个交换机用于与其它交换机互联的端口数,构建Jellyfish拓扑的随机正则图;根据数据中心里交换机的集合、随机正则图中交换机之间链路的集合,获得交换机之间的拓扑无向图、1-覆盖与2-覆盖控制器的最小集合;根据交换机之间的拓扑无向图、1-覆盖与2-覆盖控制器的最小集合,获得表示一个交换机是否是一个支配交换机的二元向量、表示一个交换机是否覆盖另一个交换机的二元向量、表示从一个交换机到另一个交换机的传播时延的时延矩阵、表示一秒内从一个交换机发往另一个交换机的平均流的数量的流量矩阵、每个交换机每秒能处理的流的最大数量、从一个交换机到支配交换机允许的传播时延、已部署了控制器的支配交换机集合、表示steiner树的矩阵、表示任何一对节点之间路径长度的可达矩阵;根据表示一个交换机是否是一个支配交换机的二元向量、表示一个交换机是否覆盖另一个交换机的二元向量、表示从一个交换机到另一个交换机的传播时延的时延矩阵、表示一秒内从一个交换机发往另一个交换机的平均流的数量的流量矩阵、每个交换机每秒能处理的流的最大数量、从一个交换机到支配交换机允许的传播时延、已部署了控制器的支配交换机集合、表示steiner树的矩阵、表示任何一对节点之间路径长度的可达矩阵,获得最小容错覆盖的限制条件。其中,根据1-覆盖控制器的最小集合中确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制,与Jellyfish拓扑下的多段图,构造最小steiner树包括:按照多段图中的节点等级降序,依次检索所有节点;若被检索节点关联到一个同步控制器,或被检索节点是中继节点,则选中该被检索节点;若被检索节点是中继节点,且被检索节点存在一个也是中继节点的父节点,则被检索节点和父节点之间的这条边将被选中;若被检索节点是中继节点,被检索节点不存在也是中继节点的父节点,且被检索节点存在一个也是中继节点的兄弟节点,则被检索节点和兄弟节点之间的这条边将被选中;若被检索节点是中继节点,被检索节点不存在也是中继节点的父节点或兄弟节点,则从被检索节点的父节点中随机挑选出一个父节点,并将该父节点设置为中继节点;依次检索所有节点,直到源节点被检查,所有选中的边构成最小steiner树。另外,获得所述随机正则图的1-覆盖控制器与2-覆盖控制器的最小集合包括:在软件定义数据中心网络中构建Jellyfish拓扑,生成交换机的随机正则图,确定交换机之间的链接关系,获得随机正则图的1-覆盖控制器的最小集合;确定每个控制器的能力限制、一个交换机到它的支配交换机的传播时延限制、交换机的2-覆盖限制、之前的控制器继续有效限制;根据交换机的总数目、交换机之间的链接关系、每个控制器的能力限制、一个交换机到它的支配交换机的传播时延限制、交换机的2-覆盖限制、1-覆盖控制器的最小集合,计算出最小容错覆盖的控制器集合。其中,确定每个控制器的能力限制、一个交换机到它的支配交换机的传播时延限制、交换机的2-覆盖限制、之前的控制器继本文档来自技高网
...
一种软件定义数据中心网络控制器的最小代价同步方法

【技术保护点】
一种基于软件定义数据中心网络的控制器的最小代价同步方法,其特征在于,包括:在所述软件定义数据中心网络中构建Jellyfish拓扑,生成交换机的随机正则图,确定交换机之间的链接关系;获得所述随机正则图的1‑覆盖控制器与2‑覆盖控制器的最小集合;根据1‑覆盖控制器的最小集合,构造Jellyfish拓扑下的多段图;在1‑覆盖控制器的最小集合中确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制;根据1‑覆盖控制器的最小集合中确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制,与Jellyfish拓扑下的多段图,构造最小steiner树;当最小steiner树中的一个或多个1‑覆盖控制器失效时,所述的失效1‑覆盖控制器所覆盖的每个交换机由所述交换机对应的2‑覆盖控制器中的对应控制器所覆盖。

【技术特征摘要】
1.一种基于软件定义数据中心网络的控制器的最小代价同步方法,其特征在于,包括:在所述软件定义数据中心网络中构建Jellyfish拓扑,生成交换机的随机正则图,确定交换机之间的链接关系;获得所述随机正则图的1-覆盖控制器与2-覆盖控制器的最小集合;根据1-覆盖控制器的最小集合,构造Jellyfish拓扑下的多段图;在1-覆盖控制器的最小集合中确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制;根据1-覆盖控制器的最小集合中确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制,与Jellyfish拓扑下的多段图,构造最小steiner树;当最小steiner树中的一个或多个1-覆盖控制器失效时,所述的失效1-覆盖控制器所覆盖的每个交换机由所述交换机对应的2-覆盖控制器中的对应控制器所覆盖;其中,所述根据1-覆盖控制器的最小集合中确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制,与Jellyfish拓扑下的多段图,构造最小steiner树包括:按照所述多段图中的节点等级降序,依次检索所有节点;若被检索节点关联到一个同步控制器,或被检索节点是中继节点,则选中该被检索节点;若被检索节点是中继节点,且所述被检索节点存在一个也是中继节点的父节点,则所述被检索节点和父节点之间的这条边将被选中;若被检索节点是中继节点,所述被检索节点不存在也是中继节点的父节点,且所述被检索节点存在一个也是中继节点的兄弟节点,则所述被检索节点和兄弟节点之间的这条边将被选中;若被检索节点是中继节点,所述被检索节点不存在也是中继节点的父节点或兄弟节点,则从所述被检索节点的父节点中随机挑选出一个父节点,并将该父节点设置为中继节点;依次检索所有节点,直到源节点被检查,所有选中的边构成最小steiner树。2.根据权利要求1所述的一种基于软件定义数据中心网络的控制器的最小代价同步方法,其特征在于,所述构造Jellyfish拓扑下的多段图包括:建立检索队列,将所有节点加入检索队列;选择任意一个节点作为0等级的源节点并移出检索队列;将源节点设置为当前节点并依次检索队列中的所有节点,将源节点的所有相邻节点设置为当前节点的子节点,节点等级为当前节点等级加一,并将新设置的子节点移出检索队列;将新设置的子节点设置为当前节点再次执行上一步操作,直到检索队列为空时终止。3.根据权利要求2所述的一种基于软件定义数据中心网络的控制器的最小代价同步方法,其特征在于,所述确定任意一对支配交换机之间的可达长度限制、数据中心已有的连接限制、控制器的连通限制包括:获取所述软件定义数据中心网络中交换机的总数、所述软件定义数据中心网络中每个交换机的可用端口数、每个所述交换机用于与其它交换机互联的端口数,构建Jellyfish拓扑的随机正则图;根据数据中心里交换机的集合、随机正则图中交换机之间链路的集合,获得交换机之间的拓扑无向图、1-覆盖与2-覆盖控制器的最小集合;根据交换机之间的拓扑无向图、1-覆盖与2-覆盖控制器的最小集合,获得表示一个交换机是否是一个支配交换机的二元向量、表示一个交换机是否覆盖另一个交换机的二元向量、表示从一个交换机到另一个交换机的传播时延的时延矩阵、表示一秒内从一个交换机发往另一个交换机的平均流的数量的流量矩阵、每个交换机每秒能处理的流的最大数量、从一个交换机到支配交换机允许的传播时延、已部署了控制器的支配交换机集合、表示steiner树的矩阵、表示任何一对节点之间路径长度的可达矩阵;根据表示一个交换机是否是一个支配交换机的二元向量、表示一个交换机是否覆盖另一个交换机的二元向量、表示从一个交换机到另一个交换机的传播时延的时延矩阵、表示一秒内从一个交换机发往另一个交换机的平均流的数量的流量矩阵、每个交换机每秒能处理的流的最大数量、从一个交换机到支配交换机允许的传播时延、已部署了控制器的支配交换机集合、表示steiner树的矩阵、表示任何一对节点之间路径长度的可达矩阵,获得最小容错覆盖的限制条件。4.根据权利要求1所述的一种基于软件定义数据中心网络的控制器的最小代价同步方法,其特征在于,所述获得所述随机正则图的1-覆盖控制器与2-覆盖控制器的最小集合包括:在所述软件定义数据中心网络中构建Jellyfish拓扑,生成交换机的随机正则图,确定交换机之间的链接关系,获得所述随机正则图的1-覆盖控制器的最小集合;确定每个控制器的能力限制、一个交换机到它的支配交换机的传播时延限制、交换机的2-覆盖限制、之前的控制器继续有效限制;根据交换机的总数目、交换机之间的链接关系、每个控制器的能力限制、一个交换机到它的支配交换机的传播时延限制、交换机的2-覆盖限制、1-覆盖控制器的最小集合,计算出最小容错覆盖的控制器集合。5.根据权利要求4所述的一种基于软件定义数据中心网络的控制器的最小代价同步方法,其特征在于,所述确定每个控制器的能力限制、一个交换机到它的支配交换机的传播时延限制、交换机的2-覆盖限制、之前的控制器继续有效限制包括:获取所述软件定义数据中心网络中交换机的总数、所述软件定义数据中心网络中每个交换机的可用端口数、每个所述交换机用于与其它交换机互联的端口数,构建Jellyfish拓扑的随机正则图;根据数据中心里交换机的集合、随机正则图中交换机之间链路的集合,获得交换机之间的拓扑无向图与1-覆盖控制器的最小集合...

【专利技术属性】
技术研发人员:郭得科谢俊杰罗来龙胡智尧周晓磊陈涛
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:湖南;43

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1