CN103703727B - 用于分体式架构系统中控制业务的弹性路由的方法和设备 - Google Patents
用于分体式架构系统中控制业务的弹性路由的方法和设备 Download PDFInfo
- Publication number
- CN103703727B CN103703727B CN201280038098.9A CN201280038098A CN103703727B CN 103703727 B CN103703727 B CN 103703727B CN 201280038098 A CN201280038098 A CN 201280038098A CN 103703727 B CN103703727 B CN 103703727B
- Authority
- CN
- China
- Prior art keywords
- switch
- controller
- described controller
- shortest path
- tree
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/48—Routing tree calculation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
Abstract
本发明是最小化权重的路由算法特性,这意味着最小化在网络中有故障的情况下节点与控制器断开连接的概率。本发明中使用的第一算法是用于找到在网络中提供最大弹性的控制器路由树的近似算法。该算法在本文被称为最大弹性(MR)算法。启发式MR算法选择最短路径树作为起始点并修改该树以便改进弹性。MR算法的输出不一定是最短路径树,但相比初始树提供了更大弹性。RASP算法提供相比其它可能的最短路径树具有改进的网络弹性的最短路径树。
Description
相关申请的交叉参考
本申请涉及2011年9月19日提交的美国正规专利申请13/236,296,并且要求来自2011年7月29日提交的美国临时专利申请No.61/513,140的优先权。
技术领域
本发明实施例涉及网络的组织和设计。具体地说,本发明实施例涉及用于计算、生成、实现以及使用分体式架构网络中的控制业务路由树的方法和系统。本文公开的算法将距离因素和弹性因素考虑进去。本发明的目标是在网络拓扑内的每个交换机与控制器之间的连接中形成具有最短距离以及高弹性的控制器路由树。术语“边缘”和“链路”在本文可互换使用,并且是指互连节点的网络路径。
背景技术
在常规网络架构中,存在转发平面和控制平面的耦合,因为控制分组和数据分组在同一链路上传送,因而,当故障发生时,控制业务和数据业务同样受影响。为了简化,控制业务是在控制要如何处理和转发数据流的网络单元(在本文称为控制器)与转发单元(在本文称为交换机)之间的业务。数据业务是力图从网络中的一个节点传送到另一节点的数据有效载荷。在整个此申请中,转发单元被称为交换机。然而,术语交换机的使用不应被视为将此类转发单元限制于以太网交换机或层2交换机。
常规网络架构中转发平面和控制平面的此耦合通常导致过度复杂化的控制平面和复杂的网络管理。不利的是,已知这对新协议和技术开发产生了大负担和高屏障。尽管在线路速度、端口密度和性能上的快速改进,但相比转发平面机制,网络控制平面机制以慢得多的步调发展。为了克服所列举的缺点,已经开发了OpenFlow分体式架构协议。
分体式架构网络设计引入了网络的控制组件与转发组件之间的分离。在此类架构的使用情况之间的是运营商级网络、企业网络、因特网服务提供商(ISP)网络、移动回程网络、云计算、多层(L3&L2&L1、OTN、WDM)支持网络和数据中心的接入/聚集域,它们全都在网络架构的主构建块之间。因此,这些网络的正确设计、管理和性能优化是非常重要的。
不像将转发平面和控制平面合并在同一网络单元中的常规网络架构,分体式架构网络将这两个平面解耦,并在可能与转发单元处于不同物理位置的服务器上执行控制平面。网络中分体式架构的使用使实现转发平面的交换机能够简化,并将网络的智能移到监督交换机的若干控制器中。分体式架构网络中(例如作为流条目、分组、帧、分段、协议数据单元发送的)的控制业务可在与(例如作为分组、帧、分段、协议数据单元发送的)数据业务不同的路径上传送,或者甚至在分开的网络上传送。因此,这些网络中控制平面的可靠性不再与转发平面的可靠性直接联系在一起。然而,分体式架构中控制平面与转发平面之间的断开连接可能禁用转发平面;当交换机与其控制器断开时,它无法接收关于如何转发新流的任何指令,并且实际上变得离线了。
在分体式架构网络中,控制器收集来自交换机的信息,并计算适当的转发判定,并向这些交换机分发适当的转发判定。控制器和交换机使用协议来传递和交换信息。此类协议的示例是OpenFlow(见www.openflow.org),其提供用于在交换机与控制器之间通信的开放且标准的方法,并且它已经吸引了来自学术界和工业界的相当大兴趣。
图1是示出交换机109与控制器101之间OpenFlow接口概况的图解100。交换机109是网络单元105的组件。控制器101使用OpenFlow协议通过安全信道103与交换机109通信。OpenFlow交换机中的流或转发表107用来自控制器101的条目来填充,如图2中所见的,其包括:定义分组标题中用于字段的匹配的规则201、与流匹配204关联的动作203以及流206上的统计205的收集。
当进入的分组匹配具体规则时,在该分组上执行关联的动作。如图2中所见,规则201含有来自协议栈中多个标题的关键字段202,例如以太网MAC地址、IP地址、IP协议、TCP/UDP端口号以及进入端口号。为了定义流,可使用所有可用匹配字段。但也有可能的是,通过将通配符用于不想要的字段而将匹配规则约束到可用字段的子集。
分体式架构的解耦控制平台使修改网络控制逻辑的任务容易了,并且提供了程序接口,在该程序接口上开发人员可构建各种各样的新协议和管理应用。在此模型中,数据平面和控制平面可独立地演进和缩放,同时降低了数据平面单元的成本。
众所周知,链路故障和交换机故障可负面影响网络性能。例如,数毫秒的故障可容易导致高速边缘上的兆兆字节数据损耗。对网络弹性的研究已经在历史上采取了带内控制模型,这意味着控制平面和数据平面具有相同弹性性质。尽管分体式架构网络使用带外模型,但链路故障和交换机故障仍是个问题,这是因为单个控制器通过链路直接耦合到充当交换机的每个网络单元。在此类网络中,如果控制器与交换机之间的链路出故障,则交换机不能够更新其转发表,并且最终出故障。
在常规网络中(其中控制分组和数据分组都在同一链路上传送),当故障发生时,控制信息和数据信息同样受影响。当在分体式架构中使用时,控制器与转发平面之间的断开连接可禁用转发平面,这与当交换机与其控制器断开连接时一样,它不能接收关于如何转发新流的任何指令,并且实际上变得离线了。
在现有分体式架构网络设计提案和初步实现中,每个交换机都预先编程有到达控制器的路径。在有链路故障或节点故障时,交换机依赖于控制器而检测此类故障,并重新计算用于交换机的新路径。由控制器对交换机或链路中任何故障的检测必须基于某些隐式机制,诸如当控制器未从交换机接收到“Hello”消息时。这在网络中为了检测故障的精确位置并重新设立控制器-交换机连接而引入了大延迟。如果没有备份路径可配置用于交换机,则在到控制器的主要路径中有故障的情况下交换机到控制器的连接将被中断。
链路故障可发生在传输控制业务、数据业务或二者的链路上,并且它指示穿过链路的业务不再能够通过该链路来传递。故障可以是两个交换机之间链路或一个控制器与它连接到的交换机之间的链路中的任一链路的。在大多数情况下,这些链路独立地出故障。
交换机故障指示网络单元或转发单元不能够始发、响应或转发任何分组或其它协议数据单元。交换机故障可由软件漏洞、硬件故障、误配置以及类似问题引起。在大多数情况下,这些交换机独立地出故障。
特殊故障情况包含交换机与控制器之间的连接性丢失。交换机可由于沿交换机与其控制器之间路径的中间链路或节点上的故障而失去到该控制器的连接性。无论何时交换机不能与其指配的控制器通信,交换机都将丢弃由控制器所管理的转发平面上的所有分组,即使转发路径上的路径仍有效时也是如此。在其它实施例中,业务子集可在转发平面上转发,或者类似的受限制功能性可继续受限制的时间量,直到与指配的控制器或另一控制器的连接被重新设立。因此,这可被视为交换机故障的特殊情况。
对于大部分而言,控制器和交换机被分配有使用路由协议(诸如开放最短路径优先(OSPF))来最小化节点之间距离的任务。OSPF当前是最流行的内部网关路由协议。OSPF(见IETF RFC 2328)是链路状态协议,在所述链路状态协议中,路由器向路由域中的所有节点广播其邻居的链路状态信息。使用此信息,每个路由器都构造了该域中整个网络的拓扑图形。每个路由器保存反映整个网络拓扑的链路状态数据库。基于这个拓扑图形和链路成本量度,路由器使用Dijkstra算法来确定到所有其它路由器的最短路径。此信息又用于创建用于转发IP分组的路由表。
使用最短路径路由协议的首要缺点是:它未考虑网络弹性或保护。在评估网络设计时,网络弹性是重要因素,这是因为数毫秒的故障可容易导致高速链路上兆兆字节数据的损耗。本文所用的弹性是面对故障和对正常操作的挑战时提供并保持可接受等级服务的能力。相比具有较小复原性的转发单元的网络单元,具有较大弹性的网络单元或转发单元针对故障和对正常操作的挑战得到更好地保护。本文所用的故障概率是工程设计的系统或组件出故障的频率,表示为每小时的故障数量,或者在长时间中每个节点出故障的概率。
所期望的是基于弹性或保护因素来生成控制器路由树并在交换机与控制器之间提供备份链路的方法和设备。此类期望的控制器路由树将在控制器中基于在交换机与控制器之间传递的信息而生成,用于在交换机中配置辅助外出链路以充当交换机与控制器之间的备份路径,交换机可操作以检测链路或节点故障,并促使从交换机到控制器的备份路径被选择。
附图说明
在附图的各图中,作为示例而非作为限制例证了本发明,附图中相似的附图标记指示类似的单元。应该指出,本公开中对“一”或“一个”实施例的不同提法不一定针对同一实施例,并且这种提法意味着至少一个。进一步说,当结合一个实施例描述具体特征、结构或特性时,认为结合其它实施例来影响这种特征、结构或特性是在本领域技术人员的知识范围内的,而不管是否明确描述了。
图1是简单OpenFlow网络的图解;
图2是流表条目的内容的图解;
图3是例证使用开放最短路径优先算法生成的路由树的图;
图4是例证使用贪婪路由算法生成的路由树的图;
图5是本发明的第一路由算法的实施例的流程图;
图6是本发明的第二路由算法的实施例的流程图;
图7是可配置成实现本发明的MR路由算法的网络单元的框图;以及
图8是可配置成实现本发明的RASP路由算法的网络单元的框图。
具体实施方式
在如下描述中,阐述了许多特定细节。然而,要理解到,本发明的实施例可以在没有这些特定细节的情况下实施。在其它实例中,众所周知的电路、结构和技术未详细示出,以免模糊了对此描述的理解。然而,本领域技术人员将认识到,没有此类特定细节也可实施本发明。本领域普通技术人员用所包含的描述将能够实现适当功能性,而无需过多实验。
在附图和要求权利的网络拓扑设计系统中示出的技术可使用在一个或多个电子装置(例如终端站、网络单元、服务器或类似电子装置)上存储和执行的代码、指令和数据来实现。此类电子装置使用非暂态机器可读或计算机可读介质(诸如非暂态机器可读或计算机可读存储介质(例如磁盘、光盘、随机存取存储器、只读存储器、闪存装置和相变存储器))来存储代码和数据和(在内部和/或通过网络与其它电子装置)传递代码和数据。此外,此类电子装置通常包含耦合到一个或多个其它组件(诸如一个或多个存储装置、用户输入/输出装置(例如键盘、触摸屏和/或显示器)和网络连接)的一个或多个微处理器的集合。微处理器的该集合和其它组件的耦合通常通过一个或多个总线和桥(也称为总线控制器)。网络拓扑设计系统内的存储装置表示一个或多个非暂态机器可读或计算机可读存储介质以及非暂态机器可读或计算机可读通信介质。因而,给定电子装置或网络拓扑设计系统的非暂态机器可读或计算机可读存储介质通常存储代码、指令和/或数据,以便在那个电子装置的一个或多个处理器的集合上执行。当然,本发明实施例的一个或多个部分可使用软件、固件和/或硬件的不同组合来实现。
本文所用的网络单元或转发单元(例如路由器、交换机、桥或类似连网装置)是连网设备件,其包含以通信方式互连网络上其它设备(例如其它网络单元、终端站或类似连网装置)的硬件和软件。一些网络单元是为多个连网功能(例如路由、桥接、交换、层2聚集、会话边界控制、多播和/或订户管理)提供支持和/或为多个应用服务(例如数据收集)提供支持的“多服务网络单元”。
本发明包括用于使用所公开的算法之一来构造用于控制器与交换机之间通信的控制器路由树、从而确定用于在具有控制器和多个交换机的分体式架构系统中路由控制业务的控制器路由树的方法和设备。而为在分体式架构系统中使用而提出的常规路由算法仅具有最小化交换机与控制器之间距离的目标,本发明不仅考虑距离因素,而且考虑弹性因素。
更具体地说,本发明将所公开的算法之一用于由控制器确定控制器路由树,所述控制器路由树然后被传递到分体式架构系统的交换机。该控制器路由树表示每个交换机与该控制器之间的非载荷平衡的控制业务路径,所述控制业务表示从每个交换机到该控制器的双向信息并将判定信息从该控制器转发到交换机。该控制器在与交换机相同的物理网络中。也就是说,分体式架构网络的现有基础设施(现有链路和交换机)用于将该控制器连接到网络中的所有交换机,这与使用分开的基础设施来连接控制平面和转发平面形成对照。在其它实施例中,分开的网络基础设施用于通信或其任何组合。每个算法相对于弹性和距离具有不同目标。本发明的目标是生成在交换机与控制器之间的连接中具有弹性和距离的期望组合的控制器路由树。
本发明与申请人的同时待审的美国正规专利申请13/236,296中发明的不同之处在于:在同时待审的申请中公开的发明针对控制器放置并且采取对最短路径树路由的使用。本发明针对当固定控制器位置时使用所公开的算法来确定控制路由树。
本发明扩展了同时待审的美国正规专利申请13/236,296中本申请人的发明,该申请将分体式架构区域的控制器放置在如下位置,所述位置选择成优化那个区域中控制器与交换机之间的连接弹性。与在此类同时待审的申请中一样,没有进行关于如何划分分体式架构区域的假设。划分(如果有的话)可基于任何任意量度,诸如地理约束条件。
进一步说,在申请人的同时待审的美国正规专利申请13/236,296中,申请人公开了在每个交换机中备份路径的预先配置,使得如果到紧接的上游节点的主要外出链路未正确工作的话,则辅助外出链路可被用作备份路径。用此类保护方案,当交换机检测到其外出链路或其紧接的上游节点中的故障时,它即刻改变其到控制器的路由,并使用在交换机中预先编程的备份路径(即外出接口)来重新连接到控制器。此方面的发生无需涉及控制器,并且对网络中的其余路由以及对下游节点到控制器的连接没有任何影响。换句话说,在受影响的交换机的外出接口中将仅存在局部改变。网络中的所有其它连接都将保持完整无缺。如果没有备份路径存在,则在到控制器的主要路径中有故障的情况下交换机到控制器之间的连接将被中断。
用于确定用于控制分体式架构中业务的控制器路由树的所选路由算法显著影响控制器与交换机之间连接的弹性。弹性可参考图3和图4来例证。如图3中所见,在节点308作为控制器的情况下,基于最短路径的树具有3个未受保护的节点301、310和305,如本文进一步定义的。使用贪婪树算法的图4的经改进路由树具有2个未受保护的节点303和307。如可看到的,如果目标是最大化该弹性,则作为控制器路由树,如图3中所见的最短路径树并不总是最佳的选择。
在分体式架构系统中,弹性更大的网络将具有数量更大的、拥有备份路径的交换机,最大弹性网络是其中每个交换机都具有到控制器的已预先配置备份路径的网络。弹性量度或保护量度可描述为如下:用图形G=(V, E)来表示网络,其中V是网络中的节点集合,并且E是节点之间双向链路的集合。成本与网络中的每个链路关联。基于所指配的链路成本,计算网络中任两个节点之间的最短路径路由。假设,每个链路上的成本应用于链路的两个方向。用这个给定拓扑,假设其中一个节点是控制器,而其余节点是交换机。还假设,在交换机与控制器之间发送的控制业务上没有载荷平衡。因此,每个节点仅具有一个用于到达控制器的路径。换句话说,控制业务通过在控制器节点处生根的树向控制器发送以及从控制器发送。这个节点被称为控制器路由树。这个控制器路由树覆盖了网络中的所有节点,并且是链路的子集。进一步假设:同一路由树将用于控制器与交换机之间在两个方向上的通信。
具有网络内的给定的固定控制器位置,不同的路由算法可用于形成不同的路由树,借此,每个节点向控制器发送控制业务。在控制器路由树T中,如果在T中存在从节点v到节点u朝向控制器的路径,则节点u是节点v的上游节点。如果在T中存在从节点u到节点v朝向控制器的路径,则节点u被称为节点v的下游节点。在控制器路由树中,节点的母节点是其紧接的上游节点,而节点的子节点是其紧接的下游节点,上游和下游是在生成初始控制器路由树之后确定的。
具有给定的固定控制器位置和控制器路由树T,考虑节点a及其紧接的上游节点b。如果存在节点(读作节点c是V的元素但不包含节点a和b),则针对其外出链路(a,b)的故障来保护节点a,其满足如下条件:
条件1:G中的链路(a,c)(即在网络中存在节点a与节点c之间的链路)。
条件2:节点c在T中不是节点a的下游节点。
第二个条件保证了不会由于将节点a连接到节点c而创建环。
如果以上条件满足了,则链路(a,c)可被指配为链路(a,b)的备份链路,并且这个备份链路可在控制器中生成,并传递给节点a,并在节点a中预先配置。节点a一检测到链路(a,b)中的故障,它就将通过将主要外出链路(a,b)改变到辅助外出链路(a,c)来即刻改变其到控制器的路由。
如果节点c除了满足以上两个条件还满足如下第三个条件,则也针对其紧接的上游节点的故障来保护节点a:
条件3:在T中,节点c不是节点b的下游节点。
第三个条件保证了节点c朝向控制器的控制业务将不通过被假设已经出故障的节点b。同样,节点a一检测到节点b中的故障,它就将其外出链路从(a,b)切换到(a,c)。
根据网络中关键链路故障或频繁链路故障与节点故障相比如何,网络运营商可给这两类故障指配不同成本,例如成本α用于节点故障,而成本β用于链路故障。例如,α=β可被解释并用于链路故障和节点故障同样可能的情形,或者当针对两类故障保护网络同样重要时。这样,如果节点根本未受保护,则在该节点处没有保护的成本可评估为α+β,如果仅针对其外出链路故障保护它,则评估为α,并且如果也针对上游节点故障来保护它,则评估为0。当然,对于直接连接到控制器的交换机,上游节点保护未定义,这是因为紧接的上游节点是控制器。因而,对于直接连接到控制器的节点,如果针对它们的外出链路故障而保护它们,则指配的成本为0,并且否则为α+β。
从而,本发明是由网络拓扑设计系统实现的方法,网络拓扑设计系统例如在控制器中可操作以确定供分体式架构网络内使用的控制器路由树T’,对于G,其由网络拓扑设计系统将V中的节点之一设立为控制器,并且由网络拓扑设计系统将其余的节点设立为交换机。网络拓扑设计系统然后绘制从每个交换机到控制器的所有可能距离的图形,并对所有的可能距离进行过滤以确定每个此类交换机到控制器的最短路径,从每个交换机到控制器的累计最短路径是控制器的最短路径树T。最短路径树T被存储在非暂态机器可读介质或计算机可读存储介质中。基于每个交换机到控制器的最短路径,将此类交换机的所有紧接的邻居节点指定为上游或者下游。然后,以作为控制器的邻居的交换机开始并遍历到每个紧接的下游交换机,直到处理了G中的所有交换机,该网络拓扑设计系统确定并指配用于每个交换机的权重。基于每个交换机的权重,最短路径树T被修改以获得具有经改进弹性的经修改最短路径树T’,并且被存储在非暂态机器可读存储介质或计算机可读存储介质中。路径(包含备份路径(如果有的话))然后从控制器传递到它与之相关的每个交换机。倘若控制器与交换机之间有链路故障或节点故障,则交换机可将其外出链路从主要外出链路移到辅助外出链路。
如果在分体式架构网络中部署了常规管理工具,意味着没有用于节点将故障通知其下游节点的扩展信令机制,则如果交换机与控制器断开连接,即如果没有在交换机中编程的备份路径,则所有其下游节点也都将断开连接,即使在下游节点针对它们的外出链路或紧接的上游节点中的故障得到局部保护时也是如此。这意味着,在评估网络弹性时,除了基于替换链路的范围向节点提供权重,还应该给更靠近控制器的节点指配更大的权重。回想起,控制器是控制器路由树的根。更准确地说,每个节点的权重应该与其下游节点的数量成比例。
因而,节点的权重基于通过与该节点的保护状况关联的成本因子来缩放的其下游节点的数量,如果针对其外出链路及其紧接的上游节点故障来保护该节点,则成本因子是0;如果仅针对其外出链路故障来保护该节点,则成本因子是α;否则是α+β。
进一步说,路由树的权重可被定义为所有其节点的权重之和。这个权重用于度量网络的“未受保护性”。对于给定路由树T,这个权重表示为Γ(Τ)。
本发明的目标是提供高度网络保护。因而,在实施例中期望的是最小化权重的路由算法特性,这意味着最小化在网络中有故障的情况下节点与控制器断开连接的概率。
本文公开的两个算法(MR,RASP)中的任一算法在本发明中都可根据目标用于构造分体式架构系统中控制业务的路由树。MR算法产生具有更高弹性的控制器路由树,这是因为它未被仅限定到最短路径树集合,而是不提供最短路径树。当期望控制器与交换机之间的最短主要路径时,RASP算法可被用作替换算法。比较MR算法与RASP算法,相比RASP算法,MR算法产生更好的弹性,这是因为MR算法未将它自己仅限定到最短路径树集合。然而,RASP算法产生交换机与控制器之间更短的路径。
本发明中使用的第一算法是用于找到如下控制器路由树的近似算法,所述控制器路由树在网络中提供最大弹性。该算法在本文被称为最大弹性(MR)算法。如本文所描述的,计算最大化保护的最优树是NP难题。因此,启发式MR算法是近似算法,其选择最短路径树作为起始点并修改该树以便改进弹性。MR算法的输出不一定是最短路径树,但相比初始树提供了更大弹性。
参考MR算法,对于给定控制器位置,找到最大化网络保护的最佳路由树(也就是最小化Γ(Τ)的路由树)可被显示为NP难题,这意味着没有已知的多项式时间算法在所有可能树之间找到最佳树。因此,对于次最优解必须使用近似算法。
假设网络中没有链路故障或节点故障的可能性,仅需要主要路径用于路由,并且在那种境况下,最短路径树提供了最佳性能。然而,因为总是存在故障的概率,因此所期望的是保护改进的路由算法策略。MR算法是用于构建控制器路由树的启发式算法,其开始于最短路径树并收敛到向网络提供弹性的路由树。经过若干次迭代,MR算法通过改变控制器路由树的边缘改进了弹性,直到没有进一步改进可获得为止。在表1中提供的伪代码中,使用MR算法构造的控制器路由树被称为最大弹性RT树。
此MR算法结合图5的流程图来描述。在执行该算法之前,在G中,具有控制器功能性的节点被指配为控制器,而其它节点被指配为交换机。MR算法由网络拓扑设计系统中的控制器路由树模块响应于从拓扑绘图模块接收到分体式架构网络的拓扑图形G而发起(块501)。该过程然后开始于迭代通过该图形中的每一个交换机(块502)。
对于该图形中的每个交换机,用充当树根的控制器来生成控制器路由树(块502)。然后对于这些控制器路由树中的每个控制器路由树,遍历这些树内的交换机,从作为控制器的邻居的交换机开始(块503)。每个节点基于其距控制器的距离被赋予初始权重。这充当用于计算总体路由树权重的权重。对于每个路由树中的每个交换机,然后通过确定从其紧接的上游邻居到控制器的若干外出路径的距离来确定用于交换机的保护或弹性(块505、506)。
通过随着算法进展来检查每个交换机的迭代过程,正在被检查的交换机的每个交换机上游也被检查,以确定此类上游交换机具有多个外出边缘,并且因而相比具有单个或更少外出边缘的交换机弹性更大。执行此算法,直到该图形中的所有节点都已经被遍历并检查为止(块507)。作为紧接的上游并且具有更大弹性的交换机被选作该交换机的主要外出链路(块508)。如果在那个主要外出链路上检测到节点故障或链路故障,则该交换机将改变到辅助外出链路(块509)。
实现MR算法的伪代码在表1中阐述了:
表1:MR算法的伪代码
如表1中所见,v.distance是距离,是指T中节点v与控制器之间的若干边缘。MR算法开始于控制器的邻居,并确定通过向它们中的任一个指配不同上游节点是否可实现任何改进。这通过检验网络中的所有其它节点来继续。注意,因为在MR算法的每次迭代中,算法都远离控制器移动一步,因此在路由树中没有形成环。
MR算法的优点是它提供了用于弹性优化的局部最优解。然而,然而,该优点具有较少随之发生的折衷,因为表1行10中的更新可产生更长的路径。因此,最终的路由树可能不是最短路径树。
在本发明中使用的第二个算法是弹性感知最短路径路由算法。此算法在本文被称为弹性感知最短路径(RASP)算法。RASP算法具有如下目标:构造最短路径树,然而,如果存在多个等长度的最短路径树,则该算法确定哪个最短路径树相比其它最短路径树具有最大弹性。RASP算法首先使用常规Bellman-Ford算法来确定所有可能的最短路径树。在收敛到最终的控制器路由树时,如果存在多个等长度最短路径树,则该算法考虑弹性因素,作为提供更高弹性的控制器路由树是有利的。
RASP算法提供相比其它可能的最短路径树具有改进的网络弹性的最短路径树。然而RASP算法不一定产生弹性最优的网络。
在执行RASP算法之前,在G中,具有控制器功能性的节点被指配为控制器,而其它节点被指配为交换机。如在图6的流程图中所见,RASP算法最初使用Bellman-Ford算法来获得初始路由树,并且然后迭代地修改控制器路由树。RASP算法由控制器路由树模块响应于从拓扑绘图模块接收到分体式架构网络的拓扑图形而发起(块601)。然后,例如基于Bellman-Ford算法为每个交换机开发最短路径树(块602和603)。RASP算法确定是否存在到控制器的多个等长度路径(块604)。如果否,这意味着从每个交换机到控制器存在单个最短路径,则RASP算法选择那个最短路径供构造控制器路由树时使用(块605)。如果存在多个等长度最短路径,则RASP算法选择具有更大弹性的最短路径作为控制器路由树的每个路径(块606-608)。
为了确定哪个最短路径控制器路由树具有更大弹性,从作为控制器邻居的交换机开始遍历这些交换机(块606)。对于每个路由树中的每个交换机,通过查看从其紧接的上游邻居到控制器的若干外出路径的距离来确定用于交换机的保护或弹性(块607)。每个节点被赋予外出路径权重(度)。
通过随着算法进展检查每个交换机的迭代过程,所有交换机都被检查,以确定所有此类上游交换机具有多个外出链路(边缘)的范围,并且因而包括弹性更大的路径。弹性更大的路径上的交换机被选为到控制器的主要链路,并且备份路径被存储在交换机中作为备份链路(块609)。如果在到控制器的主要路径上的交换机与控制器之间存在节点故障或链路故障,则交换机从主要外出链路改变到辅助外出链路(块610)。
在表2中阐述实现RASP算法的伪代码:
表2:RASP算法的伪代码
如在表2中所见,v.distance是节点v与控制器之间的路径长度,v.parent是v沿该路径到控制器的母节点,并且edge.(u,v)是节点u与节点v之间边缘的权重。在正常情况下,edge.(u,v)=1。图形G中的节点总数表示为n。RASP算法首先初始化该距离和每个节点的母节点,如在行2到行9中所见。该算法然后迭代n次。每次它迭代,它都对于每一个节点u检验通过将这个节点连接到其邻居v是否存在距离上的改进,如在行15中所见。如果存在改进,则RASP算法更新该节点的母节点及其到控制器的距离,如在行18和行19所见。注意,该算法通过添加新数据结构:每个节点v的子节点来修改,所述子节点表示为v.children。在每次迭代中,除了母字段和距离字段,该算法还更新子字段。为了改进弹性,对于具有相同距离的所有可能母节点(也就是,当存在联系时),选择具有最高弹性的路径。如果节点具有多个边缘,并且它们中的少数在所选择的路由树中,则这个节点被估计可能受更多的保护—也就是,它具有更高弹性。这个信息被编码到距离中,如在表2的行20中所示的。母节点的距离相比其实际长度增加了1/v.degree。注意,由于1/v.degree总是小于1,因此,不管v.distance增加多少倍,总增加都将总是小于1。因为节点的邻居中的至少一个将估计可能是母节点,所以这意味着,如果存在其路径长1个跳的另一节点v',则它仍将比v'的距离加上所有人为增加更长。因此,所得到的路由树仍是最短路径树,但每当在具有等距离的路径之间存在联系时,所选择的路由树将是具有弹性最大的路径的路由树。
图7是耦合到网络的控制器内设计系统的MR实施例的图解。该图解提供了用于执行网络设计系统工具的示例网络设计系统701的例证。网络设计系统701包含至少一个非暂态计算机可读存储器702以存储由至少一个微处理器703执行的指令,微处理器703协调包含拓扑绘图模块705、控制器路由树模块707以及类似组件的网络设计系统工具的组件的运行。在其它实施例中,这些模块中的任何模块或所有模块可实现为硬件模块或装置的集合。微处理器703还可执行网络管理模块709以与分体式架构网络通信和/或管理分体式架构网络。
拓扑绘图模块705可将网络拓扑转换成代表性图形,并在代表性图形上执行绘图功能以支持控制器路由树模块707。控制器路由树模块707在由拓扑绘图模块705生成的图形上操作,并指导其绘图操作以根据MR算法来实现控制器路由树。
网络管理模块709可与控制器路由树模块707和/或拓扑绘图模块705通信,以发现用于自动化过程的网络拓扑,和/或在自动化过程中实现路由树算法。
所例证的分体式架构网络是用MR算法或者RASP算法的示例实现。在该示例中,存在控制器715以控制由交换机717组成的域或分体式架构区域。交换机717由控制器715使用MR控制器路由树来管理。
图8是控制器815内设计系统的RASP实施例的图解,控制器815耦合到交换机817的网络。交换机817的布置和控制器815的组件类似地对应于图7的布置和组件,然而,控制器路由树模块807在由拓扑绘图模块805生成的图形上操作,并指导其绘图操作以根据RASP算法来实现控制器路由树。
在实现由MR算法或RASP算法所确定的控制器路由树之后,当交换机检测到其外出链路或其紧接的上游节点中的故障时,它即刻改变其到控制器的路由,并使用在该交换机中预先编程的备份路径(即外出接口)来重新连接到该控制器。此方面的发生无需涉及控制器,并且对网络中的其余路由以及对下游节点到控制器的连接没有任何影响。换句话说,在受影响的交换机的外出接口中将仅存在局部改变。该网络中的所有其它连接都将保持完整无缺。
要理解到,以上描述意图是例证性的而非约束性的。在阅读并理解了以上描述后,许多其它实施例对于本领域技术人员将是显而易见的。因此,本发明的范围应该参考所附的权利要求书连同赋予了这种权利要求权利的等效方案的整个范围确定。
Claims (20)
1.一种由网络拓扑设计系统实现的方法,所述网络拓扑设计系统包含控制器,所述控制器具有耦合到非暂态机器可读存储介质或计算机可读存储介质并可作为控制器路由树模块操作的微处理器,所述方法用于确定用于在由网络图形G表示的分体式架构网络内使用的控制器路由树T’,其中控制平面组件由所述控制器与由多个交换机执行的数据平面组件分开执行,G=(V, E),其中V是所述网络中的节点集合,并且E是节点之间遍历每个交换机到所述控制器的双向边缘集合,所述控制器路由树T’表示交换机与所述控制器之间的非载荷平衡的控制业务路径,所述控制业务表示从每个交换机到所述控制器的双向信息并将判定信息从所述控制器转发到所述交换机,所述方法包括如下步骤:
由所述网络拓扑设计系统绘制从G中每个交换机到所述控制器的所有可能距离的图形,每个此类所述距离由E的子集组成;
基于所有可能距离,确定每个此类交换机到所述控制器的最短路径,从每个交换机到所述控制器的所有最短路径包括用于所述控制器的最短路径树T;
将所述最短路径树T存储在所述非暂态机器可读存储介质或计算机可读存储介质中;
基于每个交换机到所述控制器的最短路径,将G中此类交换机的所有紧接的邻居节点指定为上游或者下游;
从作为所述控制器邻居的交换机开始并遍历到每个紧接的下游交换机直到处理了G中的所有交换机,由所述网络拓扑设计系统确定并指配用于G中每个交换机的权重,其中每个交换机的权重基于通过与所述交换机的保护状况关联的成本因子来缩放的其下游交换机的数量;
基于指配给每个交换机的权重,修改所述最短路径树T以获得具有改进的弹性的控制器路由树T’;以及
将所述控制器路由树T’存储在所述非暂态机器可读存储介质或计算机可读存储介质中。
2.如权利要求1所述的方法,进一步包括:将从每个交换机到紧接的上游交换机的外出主要链路以及如果有的话作为备份的至少一个外出辅助链路传递到该交换机中的非暂态机器可读存储介质或计算机可读存储介质并存储在该交换机中的非暂态机器可读存储介质或计算机可读存储介质中,其基于所述控制器路由树T’中从所述交换机到所述控制器的路径。
3.如权利要求2所述的方法,进一步包括如下步骤:
由交换机检测上游链路或节点中的故障;
如果有充当备份的外出辅助链路的话,由所述交换机通过将所述外出主要链路改变到所述外出辅助链路来改变其到所述控制器的路由。
4.如权利要求1所述的方法,其中绘图的步骤由管理员输入、自动化的发现过程或它们的任何组合来实现。
5.如权利要求1所述的方法,其中由所述网络拓扑设计系统计算并指配G中每个交换机的权重的步骤进一步包括如下步骤:
通过确定在至少一个外出辅助链路上存在到所述控制器的至少一个不同路径的范围,基于是否保护V中每个交换机免受上游节点故障和链路故障的影响,来计算权重并向此类交换机指配权重;
如果存在使用至少一个外出辅助链路的至少一个不同路径,则从所述控制器向此类交换机传递所述至少一个外出辅助链路的存在;以及
在此类交换机中将所述至少一个外出辅助链路配置为备份。
6.如权利要求1所述的方法,其中修改所述最短路径树T的步骤进一步包括如下步骤:
在将从第一交换机到所述控制器遍历的每个其它交换机的权重考虑进去的情况下,在第一交换机处确定通过使用到所述控制器的不同路径是否能获得对所述分体式架构网络的弹性的任何改进;
在将到所述控制器遍历的每个交换机的权重考虑进去的情况下,在从第一交换机是紧接下游的第二交换机处确定通过而使用从此类第二交换机到所述控制器的不同路径是否能获得对弹性的任何改进;以及
在G中的每个交换机处执行前述确定步骤,直到G中的所有交换机都已经被处理。
7.如权利要求1所述的方法,其中,作为更靠近所述控制器的交换机具有更大数量下游交换机的结果,给更靠近所述控制器的交换机指配更大的权重。
8.如权利要求1所述的方法,其中给交换机指配的权重与其下游交换机的数量成比例或是其分数。
9.如权利要求1所述的方法,其中交换机的权重基于通过由用户所指配的成本因子来缩放的其下游交换机的数量。
10.如权利要求9所述的方法,其中如果针对其外出链路故障及其紧接的上游节点故障来保护所述交换机,则所述成本因子为0;如果仅针对外出链路故障来保护所述交换机,则所述成本因子为α;如果仅针对紧接的上游节点故障来保护所述交换机,则所述成本因子为β,否则为α+β。
11.如权利要求10所述的方法,进一步包括如下步骤:选择具有最小累计权重的路由树作为控制器路由树T’,因而最小化在所述网络中有链路故障或节点故障的情况下交换机与所述控制器断开连接的概率。
12.一种在具有分体式架构的网络中的控制器,所述控制器包括:
微处理器,耦合到非暂态机器可读存储介质或计算机可读存储介质,并可作为控制器路由树模块操作以确定控制器路由树T’,所述控制器可操作以:
绘制从G中的每个交换机到所述控制器的所有可能距离的图形,每个此类所述距离由E的子集组成,其中G=(V,E),其中V是所述网络中的节点集合,并且E是节点之间遍历每个交换机到所述控制器的双向边缘集合,
基于所有可能距离,确定所述网络中每个交换机到所述控制器的最短路径,从每个交换机到所述控制器的所有最短路径包括用于所述控制器的最短路径树T;
将所述最短路径树T存储在所述非暂态机器可读存储介质或计算机可读存储介质中;
基于每个交换机到所述控制器的所述最短路径,将G中此类交换机的所有紧接的邻居节点指定为上游或者下游;
从作为所述控制器邻居的交换机开始、遍历每个紧接的下游交换机直到处理G中的所有交换机,以便由所述网络拓扑设计系统确定并指配用于G中每个交换机的权重,其中每个交换机的权重基于通过与所述交换机的保护状况关联的成本因子来缩放的其下游交换机的数量;
基于每个交换机的所述权重,修改所述最短路径树T以获得具有改进的弹性的控制器路由树T’;以及
将所述控制器路由树T’存储在所述非暂态机器可读存储介质或计算机可读存储介质中。
13.如权利要求12所述的控制器,其与交换机组合,其中所述控制器将从所述交换机到紧接的上游交换机的外出主要链路以及如果有的话作为备份的至少一个外出辅助链路传递到并且所述交换机将其存储在非暂态机器可读存储介质或计算机可读存储介质中,其基于由所述控制器路由树模块所确定的控制器路由树T’中从所述交换机到所述控制器的路径。
14.如权利要求13所述的控制器和交换机组合,其中所述交换机配置成检测上游链路或节点中的故障,并且由所述交换机通过将所述外出主要链路改变到如果有的话充当备份的外出辅助链路来改变其到所述控制器的路由。
15.一种由网络拓扑设计系统实现的方法,所述网络拓扑设计系统包含控制器,所述控制器具有耦合到非暂态机器可读存储介质或计算机可读存储介质并可作为控制器路由树模块操作的微处理器,所述方法用于确定用于在由网络图形G表示的分体式架构网络内使用的控制器路由树T’,其中控制平面组件由所述控制器与由多个交换机执行的数据平面组件分开执行,G=(V,E),其中V是所述网络中的节点集合,并且E是节点之间遍历每个交换机到所述控制器的双向边缘集合,所述控制器路由树T’表示每个交换机与所述控制器之间的非载荷平衡的控制业务路径,所述控制业务表示从每个交换机到所述控制器的双向信息并将判定信息从所述控制器转发到所述交换机,所述方法包括如下步骤:
由所述网络拓扑设计系统绘制从G中每个交换机到所述控制器的所有可能距离的图形,每个此类所述距离由E的子集组成;
基于所有可能距离,确定每个此类交换机到所述控制器的最短路径,从每个交换机到所述控制器的所有最短路径包括用于所述控制器的最短路径树T;
将所述最短路径树T存储在所述非暂态机器可读存储介质或计算机可读存储介质中;
基于每个交换机到所述控制器的最短路径,将G中此类交换机的所有紧接的邻居节点指定为上游或者下游;
为每个交换机与沿到所述控制器的每个路径遍历的每一个所述交换机之间的每个链路设立外出路径权重;
确定在所述控制器与所述交换机之间是否存在多于一个等长度的最短路径;
如果在所述控制器与所述交换机之间不存在多于一个等长度的最短路径,则选择此类最短路径并将它存储在所述非暂态机器可读存储介质或计算机可读存储介质中;以及
如果从所述交换机到所述控制器存在多于一个等长度的最短路径,则基于所述外出路径权重选择相比其它最短路径具有最大弹性的路径作为所述最短路径,并将所选择的最短路径存储在所述非暂态机器可读存储介质或计算机可读存储介质中。
16.如权利要求15所述的方法,进一步包括:使用Bellman-Ford算法来计算初始最短路径树。
17.一种在具有分体式架构的网络中的控制器,所述控制器包括:
微处理器,耦合到非暂态机器可读存储介质或计算机可读存储介质,并可作为控制器路由树模块操作以确定控制器路由树T’,所述控制器可操作以:
绘制从G中每个交换机到所述控制器的所有可能距离的图形,每个此类所述距离由E的子集组成,其中G=(V,E),其中V是所述网络中的节点集合,并且E是节点之间遍历每个交换机到所述控制器的双向边缘集合,
基于所有可能距离,确定所述网络中每个交换机到所述控制器的初始最短路径,从每个交换机到所述控制器的所有最短路径包括用于所述控制器的最短路径树T;
将所述最短路径树T存储在所述非暂态机器可读存储介质或计算机可读存储介质中;
基于每个交换机到所述控制器的所述最短路径,将G中此类交换机的所有紧接的邻居节点指定为上游或者下游;
为每个交换机与沿到所述控制器的每个路径遍历的每一个所述交换机之间的每个链路设立外出路径权重;
确定在所述控制器与所述交换机之间是否存在多于一个等长度的最短路径;
如果在所述控制器与所述交换机之间不存在多于一个等长度的最短路径,则选择此类最短路径并将它存储在所述非暂态机器可读存储介质或计算机可读存储介质中;以及
如果从所述交换机到所述控制器存在多于一个等长度的最短路径,则基于所述外出路径权重选择相比其它最短路径具有最大弹性的路径作为所述最短路径;以及
将所选择的最短路径存储在所述非暂态机器可读存储介质或计算机可读存储介质中。
18.如权利要求17所述的控制器,其与交换机组合,其中所述控制器将从所述交换机到紧接的上游交换机的外出主要链路以及如果有的话作为备份的至少一个外出辅助链路传递到并且所述交换机将其存储在非暂态机器可读存储介质或计算机可读存储介质中,其基于由所述控制器路由树模块所确定的最短路径树中从所述交换机到所述控制器的路径。
19.如权利要求18所述的控制器和交换机组合,其中所述交换机配置成检测上游链路或节点中的故障;以及
如果有充当备份的外出辅助链路的话由所述交换机通过将所述外出主要链路改变到所述外出辅助链路来改变其到所述控制器的路由。
20.如权利要求17所述的控制器,其中使用Bellman-Ford算法来计算初始最短路径树。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161513140P | 2011-07-29 | 2011-07-29 | |
US61/513140 | 2011-07-29 | ||
US13/294,559 US9185027B2 (en) | 2011-07-29 | 2011-11-11 | Method and apparatus for resilient routing of control traffic in a split-architecture system |
US13/294559 | 2011-11-11 | ||
PCT/IB2012/053665 WO2013017979A1 (en) | 2011-07-29 | 2012-07-18 | Method and apparatus for resilient routing of control traffic in a split-architecture system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103703727A CN103703727A (zh) | 2014-04-02 |
CN103703727B true CN103703727B (zh) | 2016-12-07 |
Family
ID=47597127
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280037431.4A Active CN103718521B (zh) | 2011-07-29 | 2012-07-18 | 分离式架构系统中控制器‑交换机连接性的弹性感知混合设计 |
CN201280038098.9A Active CN103703727B (zh) | 2011-07-29 | 2012-07-18 | 用于分体式架构系统中控制业务的弹性路由的方法和设备 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280037431.4A Active CN103718521B (zh) | 2011-07-29 | 2012-07-18 | 分离式架构系统中控制器‑交换机连接性的弹性感知混合设计 |
Country Status (9)
Country | Link |
---|---|
US (2) | US9185027B2 (zh) |
EP (2) | EP2737671B1 (zh) |
JP (2) | JP6062939B2 (zh) |
KR (2) | KR102002189B1 (zh) |
CN (2) | CN103718521B (zh) |
BR (2) | BR112014001456A2 (zh) |
CA (2) | CA2843366C (zh) |
IL (1) | IL230202A (zh) |
WO (2) | WO2013017979A1 (zh) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8422379B2 (en) * | 2009-12-15 | 2013-04-16 | At&T Intellectual Property I, Lp | Method of simple and efficient failure resilient load balancing |
US9185027B2 (en) * | 2011-07-29 | 2015-11-10 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for resilient routing of control traffic in a split-architecture system |
US8804490B2 (en) * | 2011-07-29 | 2014-08-12 | Telefonaktiebolaget L M Ericsson (Publ) | Controller placement for fast failover in the split architecture |
US8811212B2 (en) | 2012-02-22 | 2014-08-19 | Telefonaktiebolaget L M Ericsson (Publ) | Controller placement for fast failover in the split architecture |
US8520533B1 (en) * | 2011-09-30 | 2013-08-27 | Emc Corporation | Storage path management bus view |
JP5978384B2 (ja) * | 2012-04-12 | 2016-08-24 | ▲ホア▼▲ウェイ▼技術有限公司Huawei Technologies Co.,Ltd. | 情報を受信するための方法、情報を送信するための方法及びそれらの装置 |
US9264301B1 (en) * | 2012-09-20 | 2016-02-16 | Wiretap Ventures, LLC | High availability for software defined networks |
US8989194B1 (en) * | 2012-12-18 | 2015-03-24 | Google Inc. | Systems and methods for improving network redundancy and for facile initialization in a centrally-controlled network |
US9253117B1 (en) | 2012-12-18 | 2016-02-02 | Google Inc. | Systems and methods for reducing network hardware of a centrally-controlled network using in-band network connections |
US9906445B2 (en) * | 2013-02-01 | 2018-02-27 | Texas Instruments Incorporated | Packet processing match and action pipeline structure with dependency calculation removing false dependencies |
WO2014143118A1 (en) | 2013-03-15 | 2014-09-18 | Hewlett-Packard Development Company, L.P. | Loop-free hybrid network |
US9374308B2 (en) * | 2013-08-30 | 2016-06-21 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Openflow switch mode transition processing |
WO2015094388A1 (en) | 2013-12-21 | 2015-06-25 | Hewlett-Packard Development Company, L.P. | Network programming |
US9906494B2 (en) * | 2014-03-31 | 2018-02-27 | Nicira, Inc. | Configuring interactions with a firewall service virtual machine |
JP6287518B2 (ja) * | 2014-04-14 | 2018-03-07 | 富士通株式会社 | オープンフロースイッチおよびオープンフローネットワークの障害復旧方法 |
US20150304164A1 (en) * | 2014-04-17 | 2015-10-22 | Accton Technology Corporation | Data center auto provisioning |
US10142220B2 (en) | 2014-04-29 | 2018-11-27 | Hewlett Packard Enterprise Development Lp | Efficient routing in software defined networks |
US9407534B2 (en) * | 2014-05-27 | 2016-08-02 | Telefonaktiebolaget L M Ericsson (Publ) | Enhanced procedure to compute LFAs with IGP max metric |
US9680588B2 (en) | 2014-06-11 | 2017-06-13 | Ciena Corporation | OTN switching systems and methods using an SDN controller and match/action rules |
US10355984B2 (en) | 2014-06-18 | 2019-07-16 | Hewlett Packard Enterprise Development Lp | Automatic re-routing of network traffic in a software-defined network |
JP6520362B2 (ja) * | 2014-08-25 | 2019-05-29 | 富士通株式会社 | 生成方法、装置、及びプログラム |
CN104301146A (zh) * | 2014-10-23 | 2015-01-21 | 杭州华三通信技术有限公司 | 软件定义网络中的链路切换方法和装置 |
CN105743731B (zh) | 2014-12-11 | 2019-03-29 | 国际商业机器公司 | 用于存储系统中的故障检测的方法和装置 |
CN104703243B (zh) * | 2015-03-14 | 2018-05-04 | 西安电子科技大学 | 无线分布式网络中基于辅助链路的多播路由方法 |
US9807019B2 (en) * | 2015-03-30 | 2017-10-31 | Alcatel Lucent | Offline optimization for traffic engineering with segment routing |
US9923811B2 (en) | 2015-06-27 | 2018-03-20 | Nicira, Inc. | Logical routers and switches in a multi-datacenter environment |
FR3044849A1 (fr) * | 2015-12-07 | 2017-06-09 | Orange | Procede anti-micro-boucle pendant la convergence de tables de commutation |
CN105916108A (zh) * | 2016-04-14 | 2016-08-31 | 上海河广信息科技有限公司 | 基于mr的用户移动路线确定系统及方法 |
US10225751B1 (en) * | 2016-11-16 | 2019-03-05 | Google Llc | Systems and methods for hybrid control of computer networks |
US10812371B2 (en) | 2018-10-12 | 2020-10-20 | At&T Intellectual Property I, L.P. | Methods, devices and systems for determining a target path in a network |
US11563670B2 (en) | 2018-10-12 | 2023-01-24 | At&T Intellectual Property I, L.P. | Methods, devices and systems for determining a target path |
KR102101419B1 (ko) * | 2019-03-04 | 2020-04-16 | 서강대학교 산학협력단 | 라우팅 테이블 검색 방법 및 이를 구현하는 메모리 시스템 |
US11799726B2 (en) | 2020-04-06 | 2023-10-24 | Vmware, Inc. | Multi-site security groups |
US11212212B2 (en) * | 2020-04-15 | 2021-12-28 | Hewlett Packard Enterprise Development Lp | Non-isolated topologies in computing network environments |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6928484B1 (en) * | 2000-01-18 | 2005-08-09 | Cisco Technology, Inc. | Method and apparatus for discovering edge-disjoint shortest path pairs during shortest path tree computation |
CN101465793B (zh) * | 2007-12-18 | 2011-02-16 | 中国科学院计算技术研究所 | 一种获取网络中两点间最短路由路径的方法及装置 |
Family Cites Families (79)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5898843A (en) | 1997-10-08 | 1999-04-27 | International Business Machines Corporation | System and method for controlling device which is present in media console and system unit of a split computer system |
AU5448500A (en) | 1999-05-26 | 2000-12-28 | Alok Batra | Network element management system |
US6865609B1 (en) | 1999-08-17 | 2005-03-08 | Sharewave, Inc. | Multimedia extensions for wireless local area network |
CA2310872A1 (en) * | 1999-12-22 | 2001-06-22 | Nortel Networks Corporation | Automatic protection switching using link-level redundancy supporting multi-protocol label switching |
JP2001292161A (ja) * | 2000-04-06 | 2001-10-19 | Nippon Telegr & Teleph Corp <Ntt> | 2点間の重み付けを反映する経路選択方法 |
US6996065B2 (en) | 2000-07-06 | 2006-02-07 | Lucent Technologies Inc. | Dynamic backup routing of network tunnel paths for local restoration in a packet network |
CA2463479A1 (en) | 2000-10-10 | 2002-04-18 | Radiant Networks Plc | Communications meshes |
US7075892B2 (en) | 2000-11-03 | 2006-07-11 | Telecommunications Research Laboratories | Topological design of survivable mesh-based transport networks |
US20040179471A1 (en) | 2001-03-07 | 2004-09-16 | Adisak Mekkittikul | Bi-directional flow-switched ring |
US20030009598A1 (en) | 2001-04-12 | 2003-01-09 | Gunluk Oktay Necip | Method for designing demand-sensitive rings |
US7035937B2 (en) * | 2001-04-25 | 2006-04-25 | Cornell Research Foundation, Inc. | Independent-tree ad hoc multicast routing |
US20040105136A1 (en) | 2001-05-08 | 2004-06-03 | Corvis Corporation | Interconnections and protection between optical communications networks |
EP1915024B1 (en) * | 2001-09-27 | 2011-11-02 | Alcatel Canada Inc. | Method and apparatus for optimization of redundant link usage using time sensitive paths |
US7046634B2 (en) * | 2002-04-15 | 2006-05-16 | Tropic Networks Inc. | Method and apparatus for selecting maximally disjoint shortest paths in a network |
US7315517B2 (en) | 2002-05-22 | 2008-01-01 | Board Of Supervisors Of Louisiana State University And Agricultural And Mechanical College | Non-blocking WDM optical networks |
US20050060319A1 (en) | 2002-08-02 | 2005-03-17 | Cisco Technology, Inc. | Method for central planning and distributed control of client roaming and reassociation |
US7366113B1 (en) * | 2002-12-27 | 2008-04-29 | At & T Corp. | Adaptive topology discovery in communication networks |
US8018860B1 (en) | 2003-03-12 | 2011-09-13 | Sprint Communications Company L.P. | Network maintenance simulator with path re-route prediction |
US7453864B2 (en) * | 2003-04-30 | 2008-11-18 | Harris Corporation | Predictive route maintenance in a mobile ad hoc network |
KR100964102B1 (ko) * | 2003-06-24 | 2010-06-16 | 주식회사 케이티 | 멀티프로토콜 라벨 스위칭 망에서의 우회 경로 설정 방법 |
US7355968B2 (en) * | 2003-09-30 | 2008-04-08 | International Business Machines Corporation | Method of stateless group communication and repair of data packets transmission to nodes in a distribution tree |
US6956820B2 (en) * | 2003-10-01 | 2005-10-18 | Santera Systems, Inc. | Methods, systems, and computer program products for voice over IP (VoIP) traffic engineering and path resilience using network-aware media gateway |
US7609624B2 (en) * | 2004-05-03 | 2009-10-27 | Alcatel-Lucent Usa Inc. | Method and apparatus for pre-provisioning networks to support fast restoration with minimum overbuild |
US7680952B1 (en) | 2004-06-16 | 2010-03-16 | Juniper Networks, Inc. | Protecting connection traffic using filters |
US8996722B2 (en) | 2004-11-01 | 2015-03-31 | Alcatel Lucent | Softrouter feature server |
US7616584B2 (en) | 2004-11-12 | 2009-11-10 | Cisco Technology, Inc. | Minimizing single points of failure in paths with mixed protection schemes |
US7440393B2 (en) * | 2004-12-09 | 2008-10-21 | Scalent Systems, Inc. | Method and system for managing communication in a data network |
US7512063B2 (en) | 2004-12-14 | 2009-03-31 | Cisco Technology, Inc. | Border router protection with backup tunnel stitching in a computer network |
KR20070095374A (ko) * | 2004-12-31 | 2007-09-28 | 브리티쉬 텔리커뮤니케이션즈 파블릭 리미티드 캄퍼니 | 비연결형 통신 트래픽을 위한 연결형 통신 방법 |
US20060215666A1 (en) | 2005-03-23 | 2006-09-28 | Shepherd Frederick B | Methods and devices for routing traffic using randomized load balancing |
US8228818B2 (en) | 2005-06-24 | 2012-07-24 | At&T Intellectual Property Ii, Lp | Systems, methods, and devices for monitoring networks |
GB0519648D0 (en) * | 2005-09-27 | 2005-11-02 | Roke Manor Research | Resilient path protocol |
US8139476B2 (en) | 2005-10-13 | 2012-03-20 | Vello Systems, Inc. | Optical ring networks using circulating optical probe in protection switching with automatic reversion |
CN101366244A (zh) * | 2005-11-16 | 2009-02-11 | 诺基亚西门子通信有限责任两合公司 | 用于在数据传输网络中建立无环路树形结构的方法及相应的网络元素 |
US8364515B1 (en) | 2005-12-30 | 2013-01-29 | At&T Intellectual Property Ii, L.P. | Method and system for facility location optimization |
US8274989B1 (en) | 2006-03-31 | 2012-09-25 | Rockstar Bidco, LP | Point-to-multipoint (P2MP) resilience for GMPLS control of ethernet |
US7808921B2 (en) | 2006-05-19 | 2010-10-05 | The Research Foundation Of State University Of New York | Bridging centrality: a concept and formula to identify bridging nodes in scale-free networks |
JP4536690B2 (ja) * | 2006-08-28 | 2010-09-01 | 日本電信電話株式会社 | 経路計算方法及び装置及びプログラム |
US7746796B2 (en) * | 2006-09-29 | 2010-06-29 | Cisco Technology, Inc. | Directed echo requests and reverse traceroute |
IL179026A (en) | 2006-11-02 | 2011-04-28 | Eci Telecom Ltd | Method for finding protected path in mesh networks |
US7961603B2 (en) * | 2006-12-14 | 2011-06-14 | Telefonaktiebolaget L M Ericsson (Publ) | Path management for enhanced protection |
US8006061B1 (en) | 2007-04-13 | 2011-08-23 | American Megatrends, Inc. | Data migration between multiple tiers in a storage system using pivot tables |
US20090013091A1 (en) | 2007-07-03 | 2009-01-08 | Microsoft Corporation | Customer based message routing |
US8705345B2 (en) * | 2007-11-26 | 2014-04-22 | Iowa State University Research Foundation, Inc. | Network protection using network coding |
US8761022B2 (en) | 2007-12-26 | 2014-06-24 | Rockstar Consortium Us Lp | Tie-breaking in shortest path determination |
US7911944B2 (en) | 2007-12-26 | 2011-03-22 | Nortel Networks Limited | Tie-breaking in shortest path determination |
US8045551B2 (en) * | 2008-02-18 | 2011-10-25 | Ciena Corporation | Systems and methods for private network-to-network interface out-of-band signaling and path blocking |
US7861110B2 (en) | 2008-04-30 | 2010-12-28 | Egenera, Inc. | System, method, and adapter for creating fault-tolerant communication busses from standard components |
US8175103B2 (en) | 2008-06-26 | 2012-05-08 | Rockstar Bidco, LP | Dynamic networking of virtual machines |
US8873960B2 (en) | 2008-12-30 | 2014-10-28 | Broadcom Corporation | Techniques for detecting optical faults in passive optical networks |
WO2010078506A1 (en) * | 2008-12-31 | 2010-07-08 | Paul Borrill | Self-healing communication trees |
WO2010081554A1 (en) | 2009-01-15 | 2010-07-22 | Telefonaktiebolaget Lm Ericsson (Publ) | PROXY MOBILE IPv6 SUPPORT IN RESIDENTIAL NETWORKS |
US8867507B2 (en) | 2009-05-14 | 2014-10-21 | Avaya Inc. | Split-plane wireless network architecture |
US8869035B2 (en) * | 2009-06-29 | 2014-10-21 | International Business Machines Corporation | Increasing resilience of a network service |
US8351456B2 (en) | 2009-06-29 | 2013-01-08 | Qualcomm Incorporated | Method and apparatus for radio filtering in a multi-radio device |
US9014156B2 (en) * | 2009-08-25 | 2015-04-21 | Aruba Networks, Inc. | Traffic forwarding in mesh networks |
KR101058208B1 (ko) * | 2009-10-16 | 2011-08-22 | 전자부품연구원 | 무선 센서네트워크에서 에너지 비용 분석방법 |
US8493971B2 (en) * | 2009-11-06 | 2013-07-23 | Nec Corporation | Path calculation system |
US8311014B2 (en) | 2009-11-06 | 2012-11-13 | Telefonaktiebolaget L M Ericsson (Publ) | Virtual care-of address for mobile IP (internet protocol) |
US8428006B2 (en) | 2010-05-04 | 2013-04-23 | Cisco Technology, Inc. | Hierarchical control signaling for mobile clients in distributed wireless controller system |
US8520595B2 (en) | 2010-05-04 | 2013-08-27 | Cisco Technology, Inc. | Routing to the access layer to support mobility of internet protocol devices |
US8675601B2 (en) | 2010-05-17 | 2014-03-18 | Cisco Technology, Inc. | Guest access support for wired and wireless clients in distributed wireless controller system |
US8301694B2 (en) * | 2010-05-20 | 2012-10-30 | Sandisk Il Ltd. | Host device and method for accessing a virtual file in a storage device by bypassing a cache in the host device |
EP2586157B1 (en) * | 2010-06-28 | 2019-08-07 | Telefonaktiebolaget LM Ericsson (publ) | Network management |
US20120096085A1 (en) * | 2010-10-14 | 2012-04-19 | Province of Ontario, Canada) | Communications system including instant message device control and related methods |
US8817593B2 (en) | 2010-11-01 | 2014-08-26 | Avaya Inc. | Method and apparatus providing failover for a point to point tunnel for wireless local area network split-plane environments |
US8787394B2 (en) | 2011-02-01 | 2014-07-22 | Ciena Corporation | Separate ethernet forwarding and control plane systems and methods with interior gateway route reflector for a link state routing system |
US8804748B2 (en) * | 2011-03-31 | 2014-08-12 | Nokia Siemens Networks Ethernet Solutions Ltd. | Hitless node insertion for Ethernet networks |
US8717875B2 (en) | 2011-04-15 | 2014-05-06 | Alcatel Lucent | Condensed core-energy-efficient architecture for WAN IP backbones |
US8873398B2 (en) | 2011-05-23 | 2014-10-28 | Telefonaktiebolaget L M Ericsson (Publ) | Implementing EPC in a cloud computer with openflow data plane |
US20120317058A1 (en) | 2011-06-13 | 2012-12-13 | Abhulimen Kingsley E | Design of computer based risk and safety management system of complex production and multifunctional process facilities-application to fpso's |
US9148223B2 (en) * | 2011-07-07 | 2015-09-29 | Ciena Corporation | Ethernet private local area network systems and methods |
US9185027B2 (en) * | 2011-07-29 | 2015-11-10 | Telefonaktiebolaget L M Ericsson (Publ) | Method and apparatus for resilient routing of control traffic in a split-architecture system |
US8804490B2 (en) * | 2011-07-29 | 2014-08-12 | Telefonaktiebolaget L M Ericsson (Publ) | Controller placement for fast failover in the split architecture |
US8559314B2 (en) * | 2011-08-11 | 2013-10-15 | Telefonaktiebolaget L M Ericsson (Publ) | Implementing OSPF in split-architecture networks |
US8593958B2 (en) * | 2011-09-14 | 2013-11-26 | Telefonaktiebologet L M Ericsson (Publ) | Network-wide flow monitoring in split architecture networks |
US8811212B2 (en) * | 2012-02-22 | 2014-08-19 | Telefonaktiebolaget L M Ericsson (Publ) | Controller placement for fast failover in the split architecture |
US8824323B2 (en) | 2012-01-10 | 2014-09-02 | Avaya Inc. | Wireless control plane failure handling in a split-plane deployment |
US20130346403A1 (en) | 2012-06-25 | 2013-12-26 | Google Inc. | Signal based recommender |
-
2011
- 2011-11-11 US US13/294,559 patent/US9185027B2/en active Active
-
2012
- 2012-01-10 US US13/347,592 patent/US9154410B2/en active Active
- 2012-07-18 JP JP2014522183A patent/JP6062939B2/ja active Active
- 2012-07-18 BR BR112014001456A patent/BR112014001456A2/pt not_active Application Discontinuation
- 2012-07-18 KR KR1020147005597A patent/KR102002189B1/ko active IP Right Grant
- 2012-07-18 BR BR112014002273A patent/BR112014002273A2/pt not_active Application Discontinuation
- 2012-07-18 WO PCT/IB2012/053665 patent/WO2013017979A1/en unknown
- 2012-07-18 EP EP12755911.0A patent/EP2737671B1/en active Active
- 2012-07-18 JP JP2014522182A patent/JP6165728B2/ja not_active Expired - Fee Related
- 2012-07-18 CN CN201280037431.4A patent/CN103718521B/zh active Active
- 2012-07-18 CN CN201280038098.9A patent/CN103703727B/zh active Active
- 2012-07-18 CA CA2843366A patent/CA2843366C/en active Active
- 2012-07-18 WO PCT/IB2012/053667 patent/WO2013017980A1/en unknown
- 2012-07-18 CA CA2843355A patent/CA2843355C/en not_active Expired - Fee Related
- 2012-07-18 KR KR1020147005150A patent/KR102006038B1/ko active IP Right Grant
- 2012-07-18 EP EP12755912.8A patent/EP2737672B1/en active Active
-
2013
- 2013-12-26 IL IL230202A patent/IL230202A/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6928484B1 (en) * | 2000-01-18 | 2005-08-09 | Cisco Technology, Inc. | Method and apparatus for discovering edge-disjoint shortest path pairs during shortest path tree computation |
CN101465793B (zh) * | 2007-12-18 | 2011-02-16 | 中国科学院计算技术研究所 | 一种获取网络中两点间最短路由路径的方法及装置 |
Non-Patent Citations (1)
Title |
---|
《Augmenting overlay trees for failure resiliency》;Silber,J et al.;《Global Telecommunications Conference, 2004. GLOBECOM "04. IEEE》;20041203;第3卷;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN103718521B (zh) | 2017-10-24 |
EP2737672A1 (en) | 2014-06-04 |
US9154410B2 (en) | 2015-10-06 |
JP2014526190A (ja) | 2014-10-02 |
BR112014001456A2 (pt) | 2017-02-21 |
CA2843366A1 (en) | 2013-02-07 |
EP2737672B1 (en) | 2019-03-06 |
CN103703727A (zh) | 2014-04-02 |
CA2843355C (en) | 2020-01-28 |
KR20140053265A (ko) | 2014-05-07 |
KR102002189B1 (ko) | 2019-07-19 |
CA2843355A1 (en) | 2013-02-07 |
EP2737671A1 (en) | 2014-06-04 |
US20130028142A1 (en) | 2013-01-31 |
JP6165728B2 (ja) | 2017-07-19 |
WO2013017980A1 (en) | 2013-02-07 |
US20130028070A1 (en) | 2013-01-31 |
CN103718521A (zh) | 2014-04-09 |
JP2014526189A (ja) | 2014-10-02 |
JP6062939B2 (ja) | 2017-01-18 |
KR102006038B1 (ko) | 2019-07-31 |
US9185027B2 (en) | 2015-11-10 |
WO2013017979A1 (en) | 2013-02-07 |
KR20140049577A (ko) | 2014-04-25 |
BR112014002273A2 (pt) | 2017-02-21 |
IL230202A (en) | 2016-05-31 |
CA2843366C (en) | 2021-03-23 |
EP2737671B1 (en) | 2019-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103703727B (zh) | 用于分体式架构系统中控制业务的弹性路由的方法和设备 | |
EP2552065B1 (en) | Controller placement for fast failover in the split architecture | |
Müller et al. | Survivor: An enhanced controller placement strategy for improving SDN survivability | |
CN104247344B (zh) | 用于拆分式体系结构中快速故障转移的控制器安排 | |
Abhashkumar et al. | Tiramisu: Fast multilayer network verification | |
JP2015533049A (ja) | ネットワークにおけるトポロジ及びパス検証のための方法及び装置 | |
JP2014103656A (ja) | ネットワークシステム及びルーティング方法 | |
CN103685035B (zh) | 路由更新方法、交换机及系统 | |
CN103078796A (zh) | 一种路由计算方法和设备 | |
US9197534B2 (en) | Network designing system, network designing method, data transfer path determination method and network designing program | |
US10924382B1 (en) | Rapid and verifiable network configuration repair | |
US11394638B2 (en) | Method and apparatus for forwarding network traffic on maximally disjoint paths | |
CN106656808A (zh) | 一种二级全连接互连网络的容错完全自适应路由方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |