CN105453496A - 分组网络中具有谨慎恢复的冗余路径的自动建立 - Google Patents
分组网络中具有谨慎恢复的冗余路径的自动建立 Download PDFInfo
- Publication number
- CN105453496A CN105453496A CN201480045171.4A CN201480045171A CN105453496A CN 105453496 A CN105453496 A CN 105453496A CN 201480045171 A CN201480045171 A CN 201480045171A CN 105453496 A CN105453496 A CN 105453496A
- Authority
- CN
- China
- Prior art keywords
- path
- network
- link
- module
- network diagram
- 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.)
- Granted
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/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- 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/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/18—Loop-free operations
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
由执行本地计算引擎和链路状态路由协议的网络设备实现的方法。本地计算引擎和链路状态协议支持分组网络中的冗余路径的自动建立和谨慎恢复。方法包括:经由链路状态路由协议接收显式路径(EP)类型长度值(TLV);执行最短路径算法以获得由EP?TLV所标识的路径的松散跳的最短路径,最短路径作为主路径;更新网络图以修剪主路径的链路或者偏置主路径的链路;以及在已更新网络图上使用最短路径算法计算备用路径。
Description
相关申请的交叉引用
本申请要求于2013年8月7日提交的美国临时专利申请第61/863,337号的优先权。
技术领域
本发明的实施例涉及用于在分组网络中提供路径建立和恢复的方法和装置。具体地,本发明的实施例涉及用于介质访问控制(MAC)桥接器和虚拟桥接局域网中的路径恢复的方法。
背景技术
网络内的转发路径通常由路径控制协议自动控制,其在所选择的端点之间提供单个种类的路径,例如最短路径。例如,传统上在以太网网络中使用生成树协议用于路径控制。在IP网络中使用链路状态控制协议(诸如中间系统到中间系统(IS-IS)或者开放式最短路径优先(OSPF)路由协议)用于路径控制。链路状态控制协议现今也可用于以太网网络,其由最短路径桥接(SPB)来提供,SPB为IS-IS的扩展。然而,所有这些协议仅基于默认约束来提供路径,即通常为最短路径或者生成树。在网络中偏离这一“默认路径”以及实现显式(explicit)路径非常困难。路径控制系统的操作可能受到成本参数的影响,然而,不同显式路径所需要的成本可能彼此矛盾。除了现今可用的分布式协议,在以太网网络中建立显式路径仅管理控制可用。流注册协议(SRP)或者多流注册协议(MSRP)能够在以太网网络中的生成树之上执行预留,但是这并不支持完整的路由自由,因为其在由生成树协议施加的约束内起作用。
发明内容
一种由执行本地计算引擎和链路状态路由协议的网络设备实现的方法。本地计算引擎和链路状态协议支持分组网络中的冗余路径的自动建立和谨慎恢复。方法包括:经由链路状态路由协议接收显式路径(EP)类型长度值(TLV);执行最短路径算法以获得由EPTLV所标识的路径的松散跳数的最短路径,最短路径作为主路径;以及安装(install)用于主路径的转发数据库条目。方法还包括:更新表示网络的拓扑结构视图的网络图以修剪(prune)主路径的链路或者偏置(bias)主路径的链路;在已更新网络图上使用最短路径算法计算备用路径;以及安装用于备用路径的转发数据库条目。
一种网络设备执行路径计算元件和链路状态路由协议,其中路径计算元件和链路状态协议支持分组网络中的冗余路径的自动建立和谨慎恢复。计算设备包括:用于接收和存储经由链路状态路由协议接收的显式路径(EP)类型长度值(TLV)的集合的非暂态机器可读存储介质;以及耦合到存储器设备的处理器。处理器被配置成执行本地计算引擎(LCE)模块以:处理EPTLV;执行最短路径算法以获得由EPTLV所标识的路径的松散跳的最短路径,最短路径作为主路径;以及安装用于主路径的转发数据库条目。处理器还被配置成:更新网络图以修剪主路径的链路或者偏置主路径的链路,在网络图上使用最短路径算法计算备用路径,以及安装用于备用路径的转发数据库条目。
一种控制平面设备执行路径计算元件和链路状态路由协议,其中路径计算元件和链路状态协议支持分组网络中的冗余路径的自动建立和谨慎恢复。控制平面设备包括:用于接收和存储经由链路状态路由协议接收的显式路径(EP)类型长度值(TLV)的集合的非暂态机器可读存储介质;以及耦合到存储器设备的网络处理器。网络处理器被配置成执行路径计算元件(PCE)模块以生成要向分组网络中的LCE模块发送以指示LCE模块进行以下操作的EPTLV:执行最短路径算法以获得由EPTLV所标识的路径的松散跳的最短路径,最短路径作为主路径;以及安装用于主路径的转发数据库条目。LCE模块还响应于EPTLV:更新网络图以修剪主路径的链路或者偏置主路径的链路,在已更新网络图上使用最短路径算法计算备用路径,以及安装用于备用路径的转发数据库条目。
一种计算设备实现多个虚拟机,多个虚拟机用于实现网络功能虚拟化(NFV)。来自多个虚拟机的至少一个虚拟机被配置成执行路径计算元件和链路状态路由协议。路径计算元件和链路状态协议支持分组网络中的冗余路径的自动建立和谨慎恢复。计算设备包括:用于接收和存储经由链路状态路由协议接收的显式路径(EP)类型长度值(TLV)的集合的非暂态机器可读存储介质;以及耦合到存储器设备的处理器。处理器被配置成执行实现本地计算引擎(LCE)模块的虚拟机,LCE模块处理EPTLV;执行最短路径算法以获得由EPTLV所标识的路径的松散跳的最短路径,最短路径作为主路径;以及安装用于主路径的转发数据库条目。LCE模块还被配置成:更新网络图以修剪主路径的链路或者偏置主路径的链路,在已更新网络图上使用最短路径算法计算备用路径,以及安装用于备用路径的转发数据库条目。
附图说明
在附图的图中以示例而非作为限制图示本发明,在附图中,相似的附图标记表示相似的元素。应当注意,本公开中对于“一个(an)”或者“一个(one)”实施例的不同引用不一定是指相同的实施例,并且这样的引用表示至少一个实施例。另外,在结合实施例描述特定的特征、结构或特性时,表示结合其他实施例产生这样的特征、结构或特性在本领域技术人员的知识范围内,而不管其是否被明确描述。
图1是示例分组网络的图。
图2是图示分组网络中与最短路径路由相比的显式路由的分组网络的图。
图3是包括外部路径计算元件的分组网络的一个实施例的图。
图4是具有由网络节点实现的多个路径计算元件的分组网络的一个实施例的图。
图5是用于提供路径和预留数据的描述的、协议的显式路径(EP)描述符的格式的图。
图6是与外部PCE通信的网络元件的一个实施例的图。
图7是包括PCE的网络元件的一个实施例的图。
图8是能够结合协议来维护的数据库的图。
图9是路径控制方法的一个实施例的流程图。
图10是协议的预留方法的流程图。
图11是连同标准协议一起在以太网网络中应用的拓扑结构的一个示例实施例的图,其中标准协议能够控制拓扑结构。
图12是使用DPECT算法的路径计算的一个实施例的流程图。
图13是谨慎恢复过程的一个实施例的流程图。
图14A图示根据本发明的一些实施例的示例性网络内的网络设备(ND)之间的连接性、以及ND的三个示例性实现。
图14B图示根据本发明的一些实施例的实现专用网络设备1402的示例性方式。
图14C图示根据本发明的一些实施例的能够将虚拟网络元件(NVE)耦合的各种示例性方式。
图14D图示根据本发明的一些实施例的具有图14A的ND中的每个ND上的单个网络元件(NE)的网络、以及在这一直接转发方法内将传统的分布式方法(通常由传统的路由器使用)对比用于维护可达性以及转发信息(也称为网络控制)的集中式方法。
图14E图示根据本发明的一些实施例的简单情形,其中每个ND1400A-H实现单个NE1470A-H(参见图14D)但是集中式控制平面1476将不同ND(NE1470A-C以及G-H)中的多个NE抽象成(表示)图14D的虚拟网络1492中的一个虚拟网络中的单个NE1470I。
图14F图示根据本发明的一些实施例的情形,其中多个VNE(VNE1470A.1和VNE1470H.1)在不同的ND(ND1400A和ND1400H)上实现并且彼此耦合,并且其中集中式控制平面1476将这些多个NVE抽象成使得它们呈现为图14D的虚拟网络1492中的一个虚拟网络内的单个VNE1470T。
图15图示根据本发明的一些实施例的包括硬件1440以及非暂态机器可读存储介质1448的通用控制平面设备1504,硬件1440包括一个或多个处理器1442(其通常为商用现成(COTS)处理器)以及网络接口控制器1444(NIC;也称为网络接口卡)(其包括物理NI1446)的集合,非暂态机器可读存储介质1448中存储有集中式控制平面(CCP)软件(1450)。
具体实施方式
在下面的描述中,给出了大量具体细节。然而,应当理解,可以在没有这些具体细节的情况下来实践本发明的实施例。在其他情况下,没有详细示出众所周知的电路、结构和技术以防模糊对本描述的理解。然而,本领域技术人员应当理解,可以在没有这样的具体细节的情况下来实践本发明。本领域普通技术人员通过所包括的描述将能够在没有过度的实验的情况下实现适当的功能。
将参考附图的示例性实施例来描述流程图的操作。然而,应当理解,流程图的操作可以由本发明的除了参考附图所讨论实施例之外的其他实施例来执行,并且参考附图所讨论的实施例可以执行与参考附图的流程图所讨论的操作不同的操作。其中一些附图提供图示其他附图的原理和结构的实现的示例拓扑结构和场景。
附图中所示的技术可以使用在一个或多个电子设备(诸如端站、网络元件等)上存储和执行的代码和数据来实现。这样的电子设备使用非暂态机器可读或计算机可读介质(诸如非暂态机器可读或计算机可读存储介质(例如磁盘、光盘、随机存取存储器、只读存储器、闪存存储器设备和相变存储器))来(内部地和/或通过网络与其他电子设备)存储和通信代码和数据。另外,这样的电子设备通常包括耦合到一个或多个其他部件(诸如一个或多个存储设备、用户输入/输出设备(例如键盘、触摸屏、和/或显示器)和网络连接)的一个或多个处理器的集合。处理器的集合与其他部件的耦合通常通过一个或多个总线和桥接器(也称为总线控制器)。存储设备表示一个或多个非暂态机器可读或者计算机可读存储介质以及非暂态机器可读或者计算机可读通信介质。因此,给定的电子设备的存储设备通常存储代码和/或数据用于在该电子设备的一个或多个处理器的集合上执行。当然,本发明的实施例的一个或多个部分可以使用软件、固件和/或硬件的不同组合来实现。
如本文中所使用的,网络元件(例如路由器、交换机、桥接器等)是可通信地互连网络上的其他设备(例如其他网络元件、终端站等)的、包括硬件和软件的联网设备。一些网络元件是提供对于多个联网功能(例如路由、桥接、交换、层2聚合、会话边界控制、多播、和/或用户管理)的支持和/或提供对多个应用服务(例如数据、语音和视频)的支持的“多服务网络元件”。用户终端站(例如服务器、工作站、笔记本电脑、掌上型电脑、移动电话、智能电话、多媒体电话、因特网语音协议(VOIP)电话、便携式媒体播放器、GPS单元、游戏系统、机顶盒(STB)等)访问通过因特网提供的内容/服务和/或在叠加在因特网上的虚拟专用网络(VPN)上提供的内容/服务。内容和/或服务通常由属于服务或内容提供商的一个或多个终端站(例如服务器终端站)或者参与对等(peertopeer)服务的终端站来提供,并且可以包括公共网页(免费内容、店面、搜索服务等)、私用网页(例如提供电子邮件服务的用户名/密码访问的网页等)、VPN上的企业网、IPTV等。通常,用户终端站(例如通过耦合到接入网的客户场所设备(有线地或者无线地)耦合到边缘网络元件,边缘网络元件(例如通过一个或多个核心网元件到其他边缘网络元件)耦合到其他终端站(例如服务器终端站)。
架构以及路径控制和预留的概述
任何协议都没有提供以太网网络中的显式路径控制。借助于管理控制沿着路径配置每个节点不可行,尤其是在大的网络中。以太网中RSVP-TE的应用也不可行,其具有巨大的实现负担,并且层3解决方案由于被绑定到IP而在以太网网络中不适用。另外,在某些联网场景中,不希望运行信令协议(例如MSRP或者RSVP-TE)。另外,MSRP不适用于显式路径控制,这不是MSRP的意图功能,MSRP的意图功能在于在已经建立的路径之上运行。使得单个协议控制默认路径和显式路径二者在因特网协议(IP)网络中也是有吸引力的。也不存在用于IP/MPLS网络的集成为单个协议的解决方案。
本发明的实施例建立在如下架构和协议之上:其中已经定义显式路径(EP)类型长度值(TLV)使得它们能够描述由IS-IS控制的任何网络(包括以太网网络)中的路径。另外,定义EPTLV使得它们能够被承载在除了IS-IS协议数据单元(PDU)之外的其他PDU中(例如在MSRPDU中)。EPTLV也可以称为拓扑结构子TLV(sub-TLV)。拓扑结构子TLV至少包括如本文中所描述的EPTLV的功能。拓扑结构子TLV可以传达显式树和/或显式路径。如本文中所使用的,“路径”和“树”可以与作为树的变型的路径以及作为显式树的变型的显式路径而可互换地使用。为了清楚,主要在用于定义显式路径的EPTLV方面讨论实施例,然而,本领域技术人员应当理解,所讨论的概念、过程和结构是等同的并且包括描述显式路径或显式树的拓扑结构子TLV。
另外,架构和协议引入被称为用于EPTLV的存储的显式路径数据库(EPDB)的数据库。并非所有网络节点都能够存储给定的EPTLV,沿着由EPTLV所确定的路径的网络节点除外。本协议中使用模块结构来规定用于路径控制和预留的方法,模块结构实现了组合不同的解决方案的灵活性,例如具有由MSRP在以太网的情况下提供的预留的路径控制方法。
这一架构和协议定义用于控制分组网络中的转发路径以及在分组转发路径之上执行预留的方法和装置。图1是一个示例分组网络101的图。构成分组网络101的网络节点分为两个种类:它们或者是边缘节点(EN),诸如节点102、103、104和105,它们或者是核心节点(CN),如节点106。分组网络101通常将主机(例如主机1107和主机2108)连接到彼此。分组网络101常用于连接另外的网络设备,例如另外的网络节点(例如节点1109和节点2110)。分组网络内的网络域通常由内部网关协议(IGP)(诸如中间系统到中间系统(IS-IS)或者开放式最短路径优先(OSPF)链路状态路由协议)来控制。分组网络通常要么应用层2机制要么应用层3机制作为用于分组转发的主要原理。也就是,转发可以基于层2地址(即MAC地址)或者在层3转发的情况下基于IP地址。注意,分组在层2的情况下通常称为帧。
分组网络中所应用的基本的路径控制机制为最短路径路由。基于IS-IS或OSPF路由协议的路由系统实现用于路径计算的Dijkstra算法,Dijkstra算法通常称为最短路径优先(SPF)算法,因为其从分组的源与目的地之间的可能的路径中选择最短路径。链路状态路由的核心在于,每个网络节点维护链路状态数据库(LSDB)的相同的副本,其包括节点向彼此泛洪(flood)的链路状态信息。LSDB提供例如表示网络拓扑结构的图,其为用于Dijkstra算法的输入。
为了能够在某种程度上偏离最短路径,已经引入了约束路由(CR)。CR使得要引入的不同参数(例如颜色、可用带宽、链路延迟或共享风险链路组(SRLG))能够与网络链路相关联,这些参数在链路状态操作期间在分组网络上连同其他链路状态数据一起被泛洪。网络节点因此能够维护包括网络部件的这些另外的特性的数据库,这一数据库称为流量工程数据库(TED)。在CBR的情况下,SPF算法在从LSDB得到的、但仅包括满足约束的链路(使用TED中的信息来检查)的修剪后的图上运行。因此,可以将约束最短路径优先(CSPF)算法应用于分组网络,其产生约束最短(CS)路径。
然而,存在某些业务类型、网络状况和/或操作者偏好,对其而言最短路径或CS路径都不符合要求。为了能够满足这些业务类型、网络状况和/或操作者偏好,网络必须还能够提供显式路径。
图2是图示分组网络201中与最短路径路由相比的显式路由的分组网络的图。路径2208提供ENC204与END205之间的最短路径。由于最短路径对于业务2210而言正合适,所以其被映射到路径2208。业务1209在ENA202与ENB203之间穿过分组网络201。然而,出于以上提及的原因中的任何一个原因,业务1209应当遵循完全不同于最短路径的路径。实际上,这就要求通过CNE206来发送业务1209,CNE206不在ENA202与ENB203之间的最短路径上。因此,网络必须能够安装和提供路径1207用于业务1209的分组。
图3是包括外部路径计算元件的分组网络的一个实施例的图。架构和协议使用路径计算元件(PCE)应用309,PCE应用309可以在设备(例如在网络域301外部的计算机)上运行。运行PCE应用309的外部设备连接到网络的EN之一,例如图3所示的示例中的ENA302。另外,PCE应用309接收由用于路由和预留的协议所使用的控制PDU。因此,PCE309能够通过在网络中应用的控制协议来维护与在网络节点(例如303-306)中所维护的完全相同的数据库(即LSDB和TED)。另外,PCE309能够借助于例如由PCE309发起的控制PDU来指令网络节点(特别是与其连接的EN302)执行某些动作。
另外,PCE309可以借助于例如控制PDU来影响网络控制协议的操作。因此,由PCE309来确定例如需要用于业务1的路径1307。PCE309然后指令ENA302执行适当的动作以使得显式路径即路径1307在网络中被安装。例如,ENA302可以向其他网络节点发送控制PDU,指令其他网络节点安装显式路径。注意,可以有单个中央外部PCE309用于网络于301,或者可以有多个PCE应用例如在网络外部的不同的设备上运行。
替选地,由实施例使用的架构和协议可以被实现为使得网络节点(例如边缘节点或者甚至网络中的每个节点)运行PCE应用。图4是具有由网络节点托管的路径计算元件的分组网络的一个实施例的图。图4图示PCE应用由网络节点而非外部实体来运行的情况。在图4所示的示例中,ENA402和ENB403每个运行一PCE应用,这是除了执行常规网络操作动作之外的操作,使得两个节点都能够执行与图3的外部设备相同的功能。PCE应用用网络节点中的小三角形来图示。也就是,PCE应用412由ENA402来运行,PCE应用413是由ENB403来运行的PCE应用。在网络节点上运行的PCE应用能够访问控制协议的数据库并且能够执行使得网络节点能够发出PCE所需要的控制PDU的动作。因此,PCE应用能够执行显式或约束路由的计算。
另外,每个PCE应用能够借助于例如向其他节点发出适当的控制PDU、执行配置其他网络节点安装显式路径所需要的动作。没有托管PCE应用的网络节点除了安装它们被指令安装的路径之外不能执行显式路径控制动作,因此,它们不知道外部和托管PCE应用的网络节点之间的任何差异。
在一些实施例中,可以实现桥接器本地计算引擎(BLCE)或者更一般地可以实现本地计算引擎(LCE),其在节点处(例如BLCE的情况下在桥接器处)执行路径和路由计算。LCE可以实现SPF、CSPF和/或不相交路径或最大冗余树算法。PCE和LCE可以是架构上不同的实体。LCE在每个节点(例如实现BLCE的每个桥接器)中实现,其中LCE起码实现SPF算法(即Dijkstra算法)并且还可以实现更复杂的路径计算算法,例如用于确定约束树或冗余树。除了SPF,LCE还可以实现所有对间最短路径算法。转发树可以由LCE来计算,除非它们被明确给出。相反,PCE可以实现更复杂的计算算法并且其主要任务是确定显式树;即使PCE驻留在桥接器中。本文中另外描述的实施例总体上讨论PCE的功能的实现,然而,本领域技术人员应当理解,所描述的实现的分割可以包括由LCE在每个相应节点处实现的一些功能或步骤,并且本文中作为由PCE来实现的方法和过程的描述包括其中LCE可以实现所描述的这些过程和方法的步骤或功能中的一些的实施例。
除了以上提及的针对PCE应用的位置的选项,还有两个用于实现所提出的方法的装置的选项。图6中示出用于外部PCE的装置。图7中示出在实现PCE应用的网络节点的情况下的装置。
图6是与外部PCE通信的网络元件的一个实施例的图。如图6所示,在PCE由外部设备来托管的情况下,网络元件601与路径控制元件612之间存在通信。图6中图示的网络元件601示例包括数据平面,数据平面包括交换结构607、若干数据卡(例如608和609)、至少一接收器(Rx)接口610和至少一传送器Tx接口611。Rx接口和Tx接口610和611与网络上的链路进行接口连接,数据卡608和609对通过接口610和611接收的数据执行功能,并且交换结构607在数据卡与类似的输入/输出(I/O)卡之间交换数据。
网络元件601还包括控制平面,控制平面包括一个或多个包含控制逻辑的处理器602,控制逻辑被配置成实现例如链路状态路由过程以控制基于最短路径的转发。也可以在控制逻辑中实现其他过程。
网络元件601还包括存储器603,存储器603存储用于控制协议的软件604、协议栈605、以及一个或多个数据库606。用于控制协议的软件604可以包含与链路状态路由过程相关联的数据和指令,例如实现SPF(即Dijkstra算法)的LCE。协议栈605存储由网络元件601实现的网络协议。数据库用于确定和存储转发路径。网络元件601可以包含使其能够执行用于路径控制和预留(PCR)方法(包括本文中下面所描述的路径恢复过程)的功能以及执行通常在通信网络上的网络元件中实现的其他功能的信息的软件、过程和库。
耦合到网络元件601的PCE612包括耦合到存储器614的一个或多个处理器613。处理器613包括用于执行路径计算操作以及用于网络元件601的指令的操作的逻辑。存储器614包括可适用于确定显式路径和预留数据以及本文中下面描述的路径恢复过程的路径计算软件615。存储器614还包括数据库616。数据库可以包括由网络元件601所存储的数据库的副本并且还包括例如用于路径计算的数据库。
图7是包括PCE的网络元件的一个实施例的图。如图7所图示的,网络元件701也可以托管PCE应用软件。因此,图7中图示的网络元件701示例包括数据平面,数据平面包括交换结构708、若干数据卡(例如709和710)、至少一接收器(Rx)接口711以及至少一传送器(Tx)接口712。Rx和Tx接口711和712与网络上的链路进行接口连接,数据卡709和710对通过接口711和712接收的数据执行功能,并且交换结构708在数据卡和/或其他I/O卡之间交换数据。网络元件701还包括控制平面,控制平面包括包含控制逻辑的一个或多个处理器701,控制逻辑被配置成实现例如用于控制基于最短路径的转发的链路状态路由过程。
另外,处理器702还实现用于路径计算和预留(包括本文中下面描述的路径恢复)的逻辑。也可以在控制逻辑中实现其他过程。网络元件701还包括存储器703,存储器703存储用于控制协议的软件704、协议栈705、一个或多个数据库706和路径计算软件707。用于控制协议的软件704可以包含与链路状态路由过程相关联的数据和指令,例如实现SPF(即Dijkstra算法)的LCE。协议栈705存储由网络元件701实现的网络协议。
数据库用于确定和存储转发路径。数据库还由路径计算逻辑来使用并且可以包括路径计算和预留所需要的部件。存储器703包括可适用于确定显式路径和预留数据的路径计算软件707。网络元件701还包含使其能够执行用于所提出的路径控制和预留方法的功能以及执行通常在通信网络上的网络元件中实现的其他功能的信息的其他软件、过程和库。
图9是路径控制方法的一个实施例的流程图。可能存在各种可能请求网络路径用于分组转发的实体,例如其可以是附接到网络节点的主机(例如107)、另一协议实体(例如SRP),或者其可以是用于新服务的建立的网络管理员等。另外,可能需要树而非路径例如用于多播业务的分发。因此,第一步骤为如图9中步骤901所示的对于路径或树的请求。然后在步骤902中检查现有的路径或树是否满足旨在要在路径上承载的业务的需要。如果是,则不进行任何其他操作而仅将业务与适当的现有路径或树相关联,如步骤903所示。如果不存在这样的路径,则一个或多个约束最短(CS)路径可能符合要求。因此,下一步骤为904,其中检查新的CS路径是否可能实现满足需要,例如业务需求。如果是,则在步骤905通过考虑适当的约束来发起一个或多个新的CS路径的建立。由于CR是分布式的,所以网络节点(例如经由LCE)然后在步骤906中自己计算和安装CS路径。注意,步骤904、905和906仅在网络实施CR的情况下执行,这就是这些步骤用虚线框图示的原因。如果不实施CR,则在步骤902之后直接是步骤907。
如果实施CR但是PCE得出结论(步骤907)CS路径不会提供具有所需要的特性的路径,则需要显式路径或者显式确定的树。在步骤908,PCE然后计算路径或树。如果网络中不存在这样的能够满足要求的路径,则不执行另外的步骤而PCE向网络管理报告错误。如果PCE能够确定适当的路径或树,则PCE指令在网络中应用的分布式控制协议以通过网络传播路径或树,如步骤909所示。指令可以取决于所应有的架构而采用不同的形式。如果PCE驻留在网络节点上,如图4和图7所示,则PCE应用仅需要指令控制协议应用的本地实例。如果PCE由外部设备托管,如图3和图6所示,则PCE需要指令与其连接的网络节点以便通过其控制协议应用执行适当的动作。
用于显式路径的分发的控制协议可以是例如用于控制最短路径的链路状态路由协议(例如IS-IS)。在步骤910,网络节点然后将路径或树存储在其本地数据库中。另外,网络节点还在其数据平面中安装路径或树从而提供采用该路径的分组流,如步骤911所示。
除了以上呈现的路径控制,协议还可以包括预留部件,因为存在要求沿着其路径的资源预留以便满足其需要的业务类型。可以沿着现有路径(例如沿着最短路径)执行预留,或者有可能除了预留还需要新的路径。图10是协议的预留方法的流程图。在收到步骤1001的预留请求时,PCE在步骤1002评估是否存在用于预留的路径。例如,预留请求可以包含路径的标识符或者预留仅需要沿着最短路径进行,不管怎样这由控制协议来维持。如果路径不存在,则调用图9中所描绘的路径控制方法的步骤901-908。注意,如果网络中没有这样的能够满足要求的路径,则在步骤908之后不进行任何操作而是PCE向网络管理报告错误。如果网络中已经存在路径,则需要在步骤1004中检查所请求的资源的预留沿着路径是否有可能。如果不可能,则在步骤1005向网络管理发送错误消息并且不采取另外步骤。如果网络中在适当的地方存在路径并且预留也是可能的,则到达步骤1006。因此,用于调用预留的控制协议然后在网络中传播预留数据,其可以是例如给定业务所需要的带宽。
用于这一数据的分发的控制协议可以是网络的路由协议,例如IS-IS,或者其可以是为预留而设计的协议,例如多流预留协议(MSRP)。有可能在网络中已经针对相同的资源发起多个预留动作,这是给定资源的竞态条件并且引起预留冲突。预留冲突必须通过明确的决胜(tie-breaking)来解决,例如预留将对于发起预留的设备中具有最小地址(例如MAC地址)的设备发生。如果存在冲突,则必须对失败者采用动作,如步骤1007所示。也就是,向失败者告知做出预留的失败,从而其能够重新开始预留过程,另外,必须释放在失败的预留期间所预留的资源,如步骤1008所示。如步骤1009所示,如果预留过程顺利进行,则每个网络节点将预留数据存储在其数据库中。当然,还安装预留,如步骤1010所示,即沿着路径预留网络资源用于给定业务。
如以上所提及的,对于显式路径和树,必须要在某种程度上描述预留数据以使得其遍及网络的分发成为可能。由于这一数据旨在由控制协议的PDU来分发,所以其必须是适合用于这些协议的形式。显式路径的描述符在本文中称为显式路径(EP)TLV。图5为用于提供路径和预留数据的描述的协议的EPTLV的格式的图。描述符包括类型501、长度502和值503TLV。所需要的数据的描述有如此多的可能性,因此在此仅在高层上给出几个替选。类型501字段可以指示其是否为显式路径,其是否也包含预留,或者其是否仅用于预留。注意,显式路径和显式树可以具有不同的类型字段。长度502字段指示描述符数据的大小。值503字段实际上是描述符数据,其可以包含子字段或子TLV。例如,值可以是可以作为节点标识符(例如地址)的列表的显式路径,该列表可以被排序。
对于协议的操作,数据库如何应用于控制协议以及它们如何被布置可能是至关重要的。在一些实施例中,使用新类型的数据库(即用于显式路径的数据库)的维护,其称为显式路径数据库(EPDB)或显式树数据库(ETDB)。如以上所提及的,现今用于网络域内的转发路径的控制的最普遍的协议为链路状态路由,即IS-IS或OSPF。
图8为能够结合协议来维护的数据库的图。图8图示使得数据库的集合801与由网络节点维护的链路状态路由数据库相关联,这些数据库也由外部PCE来维护。也就是,链路状态协议维护LSDB802。如果实施流量工程扩展,则链路状态协议还维护TED803。注意,LSDB和TED可以是共用数据库,即TED可以仅是扩展的LSDB。根据以上提出的方法,也由应用于PCR的控制协议来维护EPDB。
在一些实施例中,EPDB与LSDB和TED分离,然而,集成式实现也是可能的。具有单独的EPDB使得能够仅由参与路径的网络节点存储显式路径。因此,没有不必要地增加没有参与显式路径的节点的数据库的大小,从而没有由于不必要的数据而降低数据库的处理速度。仅显式路径存储在单独的EPDB中。所有预留数据存储在TED中。也就是,用于显式路径、最短路径和CS路径的预留数据被集成,从而数据通常示出与网络资源相关的值,这对进一步的预留或约束路由很重要。
如果在网络中使用例如IS-IS用于最短路径和约束路由,则在链路状态PDU(LSP)中承载用于显式路径的TLV。PCE接收与网络节点相同的LSP,因此PCE能够维护与网络节点同样的LSDB的副本,其由PCR用作路径计算的输入。在路径计算之后,如以上所描述的,PCE组装(步骤908)EPTLV。在外部PCE的情况下,向与PCE连接的网络节点发送EPTLV。网络节点然后泛洪承载EPTLV的LSP(步骤909),因此EPTLV到达网络的每个节点。沿着路径的网络节点(例如306、406)在其EPDB(804)中存储(步骤910)EPTLV。最后,沿着路径的网络节点(例如306、406)将EPTLV实现到其转发平面中(步骤911)。如果应用约束路由,则还通过泛洪EPTLV来请求新的路径(步骤905),EPTLV到达每个网络节点并且被存储在其EPDB(804)中。如果还需要针对显式路径执行预留,则最简单的方式可以是在与显式路径相同的EPTLV中承载预留参数,例如要在每个链路上预留的带宽值。然后沿着路径的网络节点(例如306、406)根据预留参数更新(步骤1009)其TED(803),例如减小显式路径中所涉及的链路上的可用带宽。沿着路径的网络节点(例如306、406)还将预留安装到其数据平面中(步骤1010)。
本申请中所描述的架构以及路径控制和预留协议例如可应用于层2(L2)以太网网络。图11是以太网网络中应用的拓扑结构连同可以控制其的标准协议的一个示例实施例的图。最短路径桥接(SPB)为IS-IS的扩展,即应用其原理在以上描述的IS-IS操作。路径控制和预留协议可以与SPB一起应用,因此如以上段落中所描述地操作,也就是,IS-IS用于路径控制和预留数据二者的分发。
SRP和MSRP现今已经用于以太网网络中的讲话者与倾听者之间的流预留的生成树之上。按照图11中图示的原理,可以将活动拓扑结构的控制(即转发路径的控制)从生成树取代为最短路径树或显式路径。MSRP然后可以像现今一样在其上运行。也就是,在应用SRP或MSRP的情况下,有可能仅使用图9中描绘的路径控制方法,而不使用图10的预留方法。然而,注意,在这种情况下也必须如以上针对正确操作所描述地处理数据库。也就是,必须将在MSRPDU中承载的预留数据也存储在TED中。使得MSRP在L2网络中运行,有人可能偏好在步骤909应用MSRP作为EPTLV的控制协议载体。这并非与图11的分层完全一致,但是这样的实现也是有可能的。图5的EPTLV可以在MSRPDU中承载,即现今的MSRP可以被增强以参与到路径控制中。在这样的操作模式下,EPDB基于在MRPDU中所接收的EPTLV如以上所描述地被单独地维护。也就是,这样的方法借助于用MSRP代替IS-IS作为用于EPTLV分发的控制协议仅影响所提出的方法的步骤909。图9的路径控制方法的所有其他步骤相同。
然后通过MSRP操作来执行预留。注意,尽管MSRP有其自己的预留过程,由于网络中有IS-IS控制的路径而非先前的生成树,所以图11中描绘的预留方法的集成对于例如冲突解决而言可能是有价值的。还应当注意,MSRP与IS-IS控制的网络域之间的交互也是可能的。也就是,除了LSP,PCE可以接收MSRPDU。例如,还向图3中的外部PCE(311)转发MSRPDU或者主机(例如107和108)连接到实现PCE应用的节点(例如407和403)。如果网络的每个边缘节点实现PCE应用,则PCE能够将预留数据合并到EPTLV中,EPTLV然后由IS-IS来传播和处理。因此,MSRPDU交换可以被保持在网络域外部,即其被保持在主机与边缘节点之间(在107与402之间;在108与403之间)并且域仅由IS-IS(例如由SPB)来控制。
基本的路径控制和预留协议的限制
本文中以上所描述的路径控制和预留协议在多个方面受到限制。显式路径一旦定义则不能更新。PCE计算期望路径并且IS-IS用于安装它们。然而,一旦被安装,它们不能再被修改或改变。路径控制和预留协议可以用于定义为点到点的显式路径。然而,在一些场景中,支持最大冗余树(MRT)或类似结构的使用可能是所期望的。实施例提供路径控制和预留协议的增强以支持用于协议的谨慎更新和自动操作以及将其能力扩展为规定不同的算法用于路径计算(其可以与分组网络中的特定虚拟局域网(VLAN)和类似的结构相关联)。本文中所使用的“自动”或“自动地”指代在没有管理员干预的情况下触发和执行的过程或功能。
动态显式路径控制算法的定义和标识
在一个实施例中,路径控制和预留协议被增强以使得能够定义和识别各种用于显式路径控制的方法(包括基于谨慎恢复的方法)。因此,每个显式路径控制方法具有其唯一的ID。在特定的显式路径控制方法的控制之下的业务因此与方法的ID相关联。在层2桥接网络中,提供这一关联的方式是使VLANID或I-SID与给定的显式路径控制方法的ID相关联。
如果想要实现各种显式路径控制方法的标识,则一个可能性是引入用于显式路径控制方法的新的等成本树(ECT)算法值,每个值用于一个方法。然后由SPB基本VLAN标识符子TLV中的特定VLAN的基本VID值被分配给其的ECT算法值来确定要用于该VLAN的恰当方法。下面在表格1中给出了能够向VLAN分配的ECT算法的示例表格。然而,本领域技术人员应当理解,可以定义任何数目或布置的可能的ECT算法用于与VLAN一起使用。
表I
这里所描述的ECT算法还定义要应用的恢复方法。没有任何恢复应用于结合表格的第一条目中所标识的算法,即用于提供严格的显式树的静态算法。相反,结合其他两个方法应用谨慎的恢复,即用于不相交路径以及用于冗余树。
冗余
无环替代(LoopFreeAlternative)路径
可以扩展路径控制和预留协议以支持各种类型的保护或恢复方案(也称为冗余方案)。这些冗余方案定义备用路径用于在基本SPF路径故障的情况下使用或者用于作为显式地定义的路径的替选来使用。
在一个实施例中,可以定义无环替代(LFA)作为冗余方案,其可以由IS-IS提供用于单播流。例如,可以由IS-ISSPB管理LFA用于SPBMVLAN的单播流或者用于SPBVVLAN。LFA为下游冗余方案,其中如果确保到目的地的距离沿着路径在每一跳处减小则单个目的地MAC地址在下游。下游路径通常关于单个MAC地址是彼此的无环替代。因此,下游替代路径可以安全地作为无环备用路径用于本地保护。
最大无交叉路径和冗余树
点到点保护方案通常要求最大无交叉路径,而多点保护方案通常基于最大冗余树。可以扩展路径和预留协议以支持这些路径和树的安装以及如本发明的实施例的方法所描述地在保护切换或者类似的事件之后支持这些路径和树的谨慎恢复。
静态路径和树
PCE可以使用任何规定算法来计算无交叉路径或者最大冗余树。如果单个PCE计算出两个最大无交叉路径,则这两个路径在两个单独的EPTLV中定义。在处理被自动化的情况下,EPTLV包括规定路径的两个端点的EP子TLV,路径的其余部分由分布的PCE来计算。因此可以独立于其他最大无交叉路径来安装每个静态最大无交叉路径。如果在最大无交叉路径的计算中涉及单个PCE,则可以在其相应EPTLV中完全地规定每个路径(即它们是完整的路径而没有任何未解析的“松散”跳)。在无交叉路径被自动操作的一个实施例中,可以向DPECT算法分配与无交叉路径中的每个相关联的VID,而在静态无交叉路径的情况下,VID与SEECT算法相关联。
类似地,如果由单个PCE计算出两个最大冗余树,则可以在相应的EPTLV中计算和描述两个完全规定的树。在一些实施例中,相同的TLV可以用于路径和树的规定,即EP子TLV也可以用于树。因此可以独立于其他最大冗余树来安装每个最大冗余静态树。如果在最大冗余树的计算中涉及单个PCE,则可以完全地规定两个树。在一个实施例中,不同的VID(即主VID和备用VID)与树中的每个相关联,在树静止的情况下可以向EPECT算法分配不同的VID,而在树被自动操作的情况下,每个EPTLV的VID可以与RTECT算法相关联。
计算包括任何子TLV的这些EPTLV的PCE将它们交给IS-IS,IS-IS通过网络域将它们泛洪。两个冗余路径或树独立地安装使得IS-IS不知道并且不需要管理路径或树之间的任何关系。
在一个实施例中,与SEECT算法相关联的路径或树就除了给定单个PCE没有任何其他实体能够更新它们这个意义而言是静止的。在拓扑结构变化的情况下,单个PCE的任务是根据需要更新这些静态冗余路径或树。单个PCE计算新的路径或树并且组装新的EPTLV以将其传递给IS-IS用于安装。属于EPECT算法的路径或树可能由于定期的IS-ISLSP老化(aging)而过期,除非其被PCE刷新。
路径恢复
约束路由也可以用于确定和维护最大无交叉路径。其中使用约束路由的最大无交叉路径的计算中可能涉及多个PCE。在一个实施例中,网络域中的每个桥接器可以具有单独的PCE用于使用CSPF的基于约束的修剪。然而,DPECT算法能够确定将最大无交叉以外的另外的约束考虑在内的两个最大无交叉路径。另外,DPECT算法支持在拓扑结构变化之后的谨慎路径恢复(如果需要的话),如本文中以下所描述的。
在要定义具有自动恢复的最大无交叉路径的情况下,向DPECT算法分配每个最大无交叉路径的基本VID。在一个示例中,可以在SPB基本VID子TLV中分配基本VID。基本VID可以是用于主路径的VID。备用VID与基本VID和DPECT算法相关联。例如,这可以在SPB实例子TLV的一个或多个VID元组中进行。在本示例中,备用VID在VLANID元组的SPVID字段中,然而,备用ID不是SPVID。如果使用多个VID元组,则不同的VID元组用于主VID和备用VID与基本VID的相关联,在这种情况下,主VID可以不同于基本VID。主VID也可以称为蓝色VID,而备用VID可以称为红色VID。主VID和备用VID二者可以分配给相同的MSTID,其可以是例如SPBM、SPBV或TEMSTID。
两个最大无交叉路径的安装通过EPTLV的泛洪而发起(每个步骤905),EPTLV例如可以包括EP子TLV。VLAN标签字段的基本VID可以包括指示DPECT算法的值。备用VID可以不承载在EP子TLV中。基本VID的关联根据如以上描述的SPB实例子TLV很清楚。两个最大无交叉路径被确定用于EP的松散(未定义)跳,因为严格跳不具有灵活性。可以将显式路径与约束组合以影响最大无交叉路径。
在接收对于具有EP子TLV的显式路径的请求的LCE中,可以如图12所示计算松散跳(即路径中的未解析链路)。图12是使用DPECT算法的路径计算的一个实施例的流程图。首先,步骤1201,响应于经由链路状态路由协议(诸如IS-IS)接收EPTLV来触发过程,EPTLV规定至少部分路径,其中部分路径可以仅是路径的端点。IS-IS消息可以包括影响在EP子TLV中定义的路径中的任何松散跳的约束。然后步骤1203,根据这些约束修剪由接收节点维护的网络图(即表示分组网络的拓扑结构)以移除不满足约束的链路。在一些情况下,这可能在网络图中引起分割。步骤1205,可以做出关于网络图中是否出现分割以及何处存在分割的检查,可以检查分割以确定由EPTLV规定的节点与目的地节点之间是否留下任何路径。如果约束分割图,那么可能不存在任何路径并且过程结束,步骤1207。
步骤1209,如果网络图没有被分割(或者分割没有阻碍节点之间的路由),则执行最短路径优先算法(例如Dijkstra算法)以确定最短路径并且确定规定路径的松散跳完成路径,其变为主最大无交叉路径。然后步骤1211,在转发数据库中更新相关联的转发条目以安装这一主路径。在网络中实现的路由系统可以要求所有节点在计算松散跳时生成相同的结果以实现不同的真实最大路径。在一些实施例中,诸如IP路由系统中,网络可能不具有这一属性并且在松散跳中在主路径与备用路径之间有可能存在公共部件。
步骤1213,通过从网络图移除主路径链路或者偏置链路,备用路径的计算然后继续进行。链路的移除可以在该移除没有分割网络图的情况下使用。也可以使用对链路度量的任何调节来偏置路径查找算法偏离选择主路径的链路。然后步骤1215,使用最短路径优先算法(Dijkstra算法)计算备用路径以找到备用路径,然后步骤1217,向备用路径分配备用VID。通常,主路径和备用路径具有不同的VID,然而,在一些实施例中,有可能使用相同的VID用于主路径和备用路径。然后将这一备用路径的转发信息添加到节点的转发信息基础,步骤1219。选择备用路径以使得主路径与备用路径之间的故障公共点最小化从而减小备用路径和主路径发生不能够向目标节点转发数据业务的任何故障的可能性。在这一过程期间修剪网络图确保在备用路径中不出现任何在工作路径中使用的链路,因为修剪的链路在计算备用路径时不是网络图的部分。在一些场景中,修剪可能导致不能够产生最大不同路径。在其他实施例中,使用偏置来选择备用路径,通过偏置该选择以防止使用主路径的链路而非阻止其可能的用户。在仅有一个可用于到达给定目的地的链路的情况下,将选择该链路用于主路径和备用路径二者,链路的其余部分不同。相反,如果使用修剪,则在这些条件下可能不会找到备用路径。
图13是谨慎恢复过程的一个实施例的流程图。步骤1301,可以响应于拓扑结构的变化来触发恢复过程,拓扑结构的变化可能已经引起保护切换或者影响最大无交叉链路。步骤1307,可以做出关于网络是否已经变得稳定的检查,例如确定用于网络图收敛的足够的时间已经过去。如果松散跳路径受到这一拓扑结构变化的影响,则谨慎地更新松散跳路径。不立刻更新任何无交叉路径。一旦网络稳定,则可以一次仅更新受影响的路径之一(即主路径或备用路径之一)。
可以按照任何顺序以及取决于哪个受到影响来更新路径。可以选择更新(即恢复)第一受影响路径,步骤1309。然后,如果两个路径都受到影响,则可以选择更新(即恢复)第二受影响路径,步骤1311。如果仅备用路径发生故障,则可以再次重复步骤1213-1219以更新备用路径。然后所应用的保护方案可以再次根据需要使用备用路径,例如在1+1保护的情况下。
如果仅主路径发生故障,则在这种情况下,仅备用路径由所应用的保护方案来使用。然后根据步骤1203-1211更新主路径。不进行任何另外的步骤,直到主路径再次启动。然后可以将保护方案复原到主路径并且可以根据步骤1213-1217更新备用路径。
在两个路径都发生故障的情况下,可以重新执行所有步骤1203-1217以更新主路径,然后更新备用路径,从而重新启用保护方案。
树恢复
已经参考最大无交叉路径给出了图12和13的以上示例。然而,本领域技术人员应当理解,这一过程也可以应用于最大冗余树。也可以由多个PCE以分布式方式来计算最大冗余树。也可以计算两个最大冗余树用于多点保护,例如如MRT低点算法所规定的,参见http://tools.ietf.org/html/draft-enyedi-rtgwg-mrt-frr-algorithm-02,其通过引用合并于此。
在一个示例实施例中,如果生成两个最大冗余树以使得它们在拓扑结构变化之后被谨慎地恢复来使用,则向RTECT算法分配基本VID。基本VID为用于主树的主VID。备用VID与基本VID和RTECT算法相关联。
类似于以上给出的无交叉路径集合的恢复,在网络图稳定之后恢复冗余树并且一次仅恢复其中的一个树。如果仅备用树发生故障,则仅需要恢复备用树并且数据业务可以使用主树而不中断。如果仅主树发生故障,则所有数据业务切换到备用树直到主树被恢复。如果主树和备用树都受到影响,则仅在主树被恢复之后恢复备用树。
恢复过程的扩展
在一些实施例中,可以将关于图12和13描述的用于路径和树的恢复过程与任何保护方案或类似过程组合。本领域技术人员应当理解,可以将关于路径和树恢复过程描述的原理和结构适配用于其他保护方案并且可以相应地变化。这可以包括其他ECT算法的引入,其他ECT算法可以在用于VID的SPB基本VLAN标识符子TLV中被标识并且可以被添加到以上描述的表格(即表格I)作为另外的ECT算法选项。
在一个实施例中,用于扩展恢复过程的一个选项是规定过程是可逆的还是不可逆的。本文中以上已经描述了可逆过程,其中业务回复到已恢复路径,然而有人可能偏好非可逆过程,其中业务不由于恢复而被移动。例如,如果存在对于故障的保护事件,则业务停留在保护路径/树上而非在路径/树被恢复时返回主路径。
在一些实施例中,有可能将以上描述的“路径恢复”和“树恢复”过程与无环替代(LFA)过程组合,这可以引入另外的选项到可以支持确定LFA的另外的ECT算法。在一些实施例中,有可能将以上描述的基于主树和备用树的“路径恢复”和“树恢复”过程与最短路径组合。
图14A图示根据本发明的一些实施例的示例性网络内的网络设备(ND)之间的连接以及ND的三个示例性实现。图14A示出ND1400A-H,并且用A-B、B-C、C-D、D-E、E-F、F-G和A-G之间以及H与A、C、D和G中的每个之间的线示出其连接。这些ND为物理设备,并且这些ND之间的连接可以是无线的或者有线的(通常称为链路)。从ND1400A、E和F延伸的另外的线图示这些ND用作网络的入口(ingress)和出口(egress)(并且因此这些ND有时称为边缘ND;而其他ND可以称为核心ND)。
图14A中的示例性ND实现中的两个为:1)使用客户专用集成电路(ASIC)和专有操作系统(OS)的专用网络设备1402;以及2)使用公共现成(COTS)处理器和标准OS的通用网络设备1404。
专用网络设备1402包括联网硬件1410,联网硬件1410包括计算资源1412(其通常包括一个或多个处理器的集合)、转发资源1414(其通常包括一个或多个ASIC和/或网络处理器)和物理网络接口(NI)1416(有时称为物理端口)以及其中存储有联网软件1420的非暂态机器可读存储介质1418。物理NI为ND中的硬件,网络连接(例如无线地通过无线网络接口控制器(WNIC)或者通过在线缆中插入到连接到网络接口控制器(NIC)的物理端口)通过其来实现,诸如由ND1400A-H之间的连接所示出的那些。在操作期间,联网软件1420可以由联网硬件1410来执行以实例化一个或多个联网软件实例的集合1422。联网软件实例1422中的每个以及执行该网络软件实例的联网硬件1410的部分(其为专用于该联网软件实例的硬件和/或由该联网软件实例与其他联网软件实例1422暂时共享的硬件的时间片)形成单独的虚拟网络元件1430A-R。每个虚拟网络元件(VNE)1430A-R包括控制通信和配置模块1432A-R(有时称为本地控制模块或控制通信模块)和转发表1434A-R,使得给定的虚拟网络元件(例如1430A)包括控制通信和配置模块(例如1432A)、一个或多个转发表(例如1434A)的集合、以及执行虚拟网络元件(例如1430A)的联网硬件1410的部分。PCE模块1433A实现本文中以上所描述的过程(包括主路径和备用路径计算恢复),而LCE1433B实现关于图12和13描述的功能作为控制通信和配置模块1432A的部分或者联网软件的类似方面,其可以被加载和存储在非暂态机器可读介质1418中或者类似的位置。
专用网络设备1402通常在物理上和/或在逻辑上被认为包括:1)包括执行控制通信和配置模块1432A-R的计算资源1412的ND控制平面1424(有时称为控制平面);以及2)包括使用转发表1434A-R的转发资源1414和物理NI1416的ND转发平面1426(有时称为转发平面、数据平面或介质平面)。作为示例,其中ND为路由器(或者实现路由功能),则ND控制平面1424(执行控制通信和配置模块1432A-R的计算资源1412)通常负责参与控制如何路由数据(例如分组)(例如数据的下一跳以及该数据的输出物理NI)以及将该路由信息存储在转发表1434A-R中,ND转发平面1426负责在物理NI1416上接收该数据并且基于转发表1434A-R将该数据转发出物理NI1416中的适当的一个物理NI。
图14B图示根据本发明的一些实施例的实现专用网络设备1402的示例性方式。图14B示出包括卡1438(通常为可热插)的专用网络设备。而在一些实施例中,卡1438为两个类型(一个或多个作为ND转发平面1426(有时称为线卡),同时一个或多个用于实现ND控制平面1424(有时称为控制卡)),替选实施例可以将功能组合到单个卡上和/或包括另外的卡类型(例如一个另外的类型的卡称为服务卡、资源卡或多应用卡)。服务卡可以提供专门化处理(例如层4到层7服务(例如防火墙、因特网协议安全(IPsec)(RFC4301和4309)、安全套接层(SSL)/传输层安全(TLS)、入侵检测系统(IDS)、点到点(P2P)、IP语音(VoIP)会话边界控制器、移动无线网关(网关通用分组无线电服务(GPRS)支持节点(GGSN)、演进的分组核心(EPC)网关))。作为示例,服务卡可以用于终止IPsec隧道并且执行服务者(attendant)认证和加密算法。这些卡通过被图示为背板1436的一个或多个互连机制耦合到一起(例如第一全连接耦合线卡以及第二全连接耦合所有的卡)。
返回图14A,通用网络设备1404包括硬件1440,硬件1440包括一个或多个处理器1442的集合(其通常为COTS处理器)和网络接口控制器1444(NIC;也称为网络接口卡)(其包括物理NI1446)以及其中存储有软件1450的非暂态机器可读存储介质1448。在操作期间,处理器1442执行软件1450以实例化超级管理器1454(有时称为虚拟机监视器(VMM))以及由超级管理器1454运行的一个或多个虚拟机1462A-R,其统称为软件实例1452。虚拟机为运行程序(好像程序在物理、非虚拟化的机器上执行)的物理机器的软件实现;并且与在“裸金属”主机电子设备上运行相反,应用通常不知道它们在虚拟机上运行,然而一些系统提供半虚拟化,其使得操作系统或应用能够出于优化目的而知道虚拟化的存在。每个虚拟机1462A-R以及执行该虚拟机的硬件1440的部分(其为专用于该虚拟机的硬件和/或由该虚拟机与其他虚拟机暂时共享的硬件的时间片)形成单独的虚拟网络元件1460A-R。在一个实施例中,虚拟机1432A-R可以执行所描述的PCE模块1463A、LCE模块1463B和本文中以上描述的相关软件。
虚拟网络元件1460A-R执行与虚拟网络元件1430A-R类似的功能。比如,超级管理器1454可以向虚拟机1462A呈现看起来像联网硬件1410的虚拟操作平台,并且虚拟机1462A可以用于实现与控制通信和配置模块1432A和转发表1434A类似的功能(硬件1440的这一虚拟化有时称为网络功能虚拟化(NFV))。因此,NFV可以用于将很多网络设备类型合并到工业标准、高容量服务器硬件、物理交换机、和物理存储装置上,其可以位于数据中心、ND和客户场所设备(CPE)中。然而,本发明的不同实施例可以不同地实现虚拟机1462A-R中的一个或多个。例如,虽然本发明的实施例通过每个虚拟机1462A-R对应于一个VNE1460A-R来说明,然而替选实施例可以以更细水平的粒度(例如线卡虚拟机虚拟化线卡、控制卡虚拟机虚拟化控制卡等)实现这一对应关系;应当理解,本文中参考虚拟机与VNE的对应关系所描述的技术也适用于使用这样的更细水平的粒度的实施例。
在某些实施例中,超级管理器1454包括如同物理以太网交换机提供类似的转发服务的虚拟交换机。具体地,这一虚拟交换机在虚拟机与NIC1444之间、以及可选地在虚拟机1462A-R之间转发业务;另外,这一虚拟机可以通过策略在不允许彼此通信的VNE1460A-R之间实施网络隔离(例如通过履行虚拟局域网(VLAN))。
图14A中的第三示例性ND实现为混合网络设备1406,其在单个ND或者ND内的单个卡中包括定制ASIC/专有OS和COTS处理器/标准OS二者。在这样的混合网络设备的某些实施例中,平台VM(即实现专用网络设备1402的功能的VM)可以向混合网络设备1406中存在的联网硬件提供半虚拟化。
不管ND的以上示例性实现,在考虑由ND实现的多个VNE中的单个VNE时(例如仅VNE之一为给定虚拟网络的部分)或者在当前仅单个VNE由ND来实现的情况下,简称术语网络元件(NE)有时用于指代该VNE。另外,在所有以上示例性实现中,每个VNE(例如VNE1430A-R、VNE1460A-R、以及混合网络设备1406中的VNE)在NI(例如1416、1446)上接收数据并且将该数据转发出物理NI中的适当的一个物理NI(例如1416、1446)。例如,实现IP路由器功能的VNE基于IP分组中IP首部的一些信息转发IP分组;其中IP首部信息包括源IP地址、目的地IP地址、源端口、目的地端口(其中“源端口”和“目的地端口”在本文中指代协议端口,与ND的物理端口不同)、传输协议(例如用户数据报协议(UDP)(RFC768、2460、2675、4113和5405)、传输控制协议(TCP)(RFC793和1180)、以及差异化服务(DSCP)值(RFC2474、2475、2597、2983、3086、3140、3246、3247、3260、4594、5865、3289、3290和3317))。
图14C图示根据本发明的一些实施例的可以耦合VNE的各种示例性方式。图14C示出在ND1400A中实现的VNE1470A.1-1470A.P(以及可选的VNE1470A.Q-1470A.R)以及在ND500H中实现的VNE1470H.1。在图14C中,VNE1470A.1-P就其能够从外部ND1400A接收分组并且向ND1400A外部转发分组意义上而言,它们是彼此分离的;VNE1470A.1与VNE1470H.1耦合,从而它们在其相应ND之间通信分组;VNE1470A.2-1470A.3可以可选地在其之间转发分组而没有在ND1400A外部转发分组;并且VNE1470A.P可以可选地为VNE链的第一个,该VNE链包括VNE1470A.Q及后面的VNE1470A.R(有时也称为动态服务链,其中VNE系列中的每个VNE提供不同的服务——例如,一个或多个层4-7网络服务)。而图14C图示VNE之间的各种示例性关系,替选实施例可以支持其他关系(例如更多/更少VNE,更多/更少动态服务链、具有一些公共VNE和一些不同VNE的多个不同动态服务链)。
图14A的ND例如可以形成因特网或专用网络的部分;并且其他电子设备(未示出;诸如端用户设备,包括工作站、膝上型电脑、上网本、平板、掌上型电脑、移动电话、智能电话、多媒体电话、因特网协议语音(VOIP)电话、终端、便携式媒体播放器、GPS单元、可穿戴设备、游戏系统、机顶盒、支持因特网的家用电器)可以耦合到网络(直接地或者通过其他网络,诸如接入网)以通过网络(例如因特网或覆盖(例如隧道穿透)因特网上的虚拟专用网(VPN))彼此通信(直接地或者通过服务器)和/或访问内容和/或服务。这样的内容和/或服务通常由属于服务/内容提供商的一个或多个服务器(未示出)或者参与点到点(P2P)服务的一个或多个端用户设备(未示出)来提供,并且可以包括例如公共网页(例如免费内容、店面、搜索服务)、私用网页(例如提供电子邮件服务的用户名/密码访问的页面)和/或通过VPN的公司网络。比如,端用户设备可以耦合(例如通过耦合到接入网的客户场所设备(有线地或者无线地))到边缘ND,边缘ND耦合(例如通过一个或多个核心ND)到其他边缘ND,这些其他边缘ND耦合到用作服务器的电子设备。然而,通过计算和存储虚拟化,图14A中用作ND的其中一个或多个电子设备还可以托管一个或多个这样的服务器(例如,在通用网络设备1404的情况下,其中一个或多个虚拟机1462A-R可以作为服务器;对于混合网络设备1406也可以是这样;在专用网络设备1402的情况下,一个或多个这样的服务器也可以在由计算资源1412执行的超级管理器上运行);在这种情况下,服务器被称为与该ND的VNE并置。
虚拟网络为提供网络服务(例如L2和/或L3服务)的物理网络(诸如图14A中的物理网络)的逻辑抽象。虚拟网络可以实现为在底层网络(underlaynetwork)(例如L3网络,诸如使用隧道(例如通用路由封装(GRE)、层2隧道协议(L2TP)、IPsec)来产生覆盖网络(overlaynetwork)的因特网协议(IP)网络)上提供网络服务(例如层2(L2,数据链路层)和/或层3(L3,网络层)服务)的覆盖网络(有时称为网络虚拟化覆盖)。
网络虚拟化边缘(NVE)位于底层网络的边缘并且参与实现网络虚拟化;NVE的网络面对侧使用底层网络向其他NVE隧道传输帧以及从其他NVE隧道接收帧;NVE的对外侧向网络外部的系统发送数据以及从网络外部的系统接收数据。虚拟网络实例(VNI)为NVE上的虚拟网络的具体实例(例如ND上的NE/VNE、ND上的NE/VNE的部分,其中NE/VNE通过仿真分为多个VNE);一个或多个VNI可以在NVE上实例化(例如作为ND上的不同VNE)。虚拟接入点(VAP)为VNE上用于将外部系统连接到虚拟网络的逻辑连接点;VAP可以是通过逻辑接口标识符(例如VLANID)标识的物理端口或虚拟端口。
网络服务的示例包括:1)以太网LAN仿真服务(类似于因特网工程任务组(IETF)多协议标记交换(MPLS)以太网VPN(EVPN)服务的基于以太网的多点服务),其中外部系统通过底层网络上的LAN环境跨网络互连(例如NVE提供单独的L2VNI(虚拟交换实例)用于不同的这样的虚拟网络,并且L3(例如IP/MPLS)跨底层网络隧道封装);以及2)虚拟化IP转发服务(从服务定义的角度来看类似于IETFIPVPN(例如边界网关协议(BGP)/MPLSIPVPNRFC4364)),其中外部系统通过底层网络上的L3环境跨网络互连(例如NVE提供单独的L3VNI(转发和路由实例)用于不同的这样的虚拟网络,并且L3跨交叠网络(例如IP/MPLS)隧道封装)。网络服务还可以包括服务质量能力(例如业务分类标记、业务调节和调度)、安全能力(例如保护客户场所免受网络源起的攻击以避免畸形路由发布的滤波器)和管理能力(例如完全检测和处理)。
图14D图示根据本发明的一些实施例的具有图14A的ND中的每个ND上的单个网络元件(NE)的网络、以及在这一直接转发方法内将传统的分布式方法(通常由传统的路由器使用)对比用于维护可达性以及转发信息(也称为网络控制)的集中式方法。具体地,图14D图示具有与图14A的ND1400A-H相同的连接的网络元件(NE)1470A-H。
图14D图示分布式方法1472分配用于生成可达性以及跨NE1470A-H转发信息的责任;换言之,分配邻居发现和拓扑结构发现的过程。
例如,如果使用专用网络设备1402,则ND控制平面1424的控制通信和配置模块1432A-R通常包括可达性和转发信息模块以实现与NE通信以交换路由的一个或多个路由协议(例如外部网关协议,诸如边界网关协议(BGP)(RFC4271),内部网关协议(IGP)(例如开放式最短路径优先(OSPF)(RFC2328和5340)、中间系统到中间系统(IS-IS)(RFC1142)、路由信息协议(RIP)(版本1RFC1058、版本2RFC2453和下一代RFC2080))、标记分发协议(LDP)(RFC5036)、资源预留协议(RSVP)(RFC2205、2210、2211、2212以及RSVP流量工程(TE):用于LSP隧道RFC3209的RSVP的扩展、通用多协议标记切换(GMPLS)信令RSVP-TERFC3473、RFC3936、4495和4558)),并且然后基于一个或多个路由度量选择这些路由。因此,NE570A-H(例如执行控制通信和配置模块1432A-R的计算资源1412)通过分配地确定网络内的可达性并且计算其相应转发信息来执行其用于参与控制如何路由数据(例如分组)(例如数据的下一跳以及该数据的输出物理NI)的责任。路由和邻接存储在ND控制平面1424上的一个或多个路由结构(例如路由信息基础(RIB)、标记信息基础(LIB)、一个或多个邻接结构)中。ND控制平面1424基于路由结构使用信息(例如邻接和路由信息)来编程ND转发平面1426。例如,ND控制平面1424将邻接和路由信息编程到ND转发平面1426上的一个或多个转发表1434A-R(例如转发信息基础(FIB)、标记转发信息基础(LFIB)、以及一个或多个邻接结构)中。对于层2转发,ND可以存储用于基于该数据中的层2信息来转发数据的一个或多个桥接表。虽然以上示例使用专用网络设备1402,然而相同的分布式方法1472可以在通用网络设备1404和混合网络设备1406上来实现。
图14D图示将作出关于在何处发出业务的决策的系统从向所选择的目的地转发业务的底层系统中去耦合的集中式方法1474(其在一些实施例中可以是软件定义网络(SDN)解决方案)。图示的集中式方法1474具有生成可达性并且转发集中式控制平面1476(有时称为SDN控制模块、控制器、网络控制器、开放流(OpenFlow)控制器、SDN控制器、控制平面节点、网络虚拟化机构或管理控制实体)中的信息的责任,并且从而邻居发现和拓扑结构发现的过程被集中化。集中化控制平面1476具有与包括NE1470A-H(有时称为交换机、转发元件、数据平面元件或节点)的数据平面1480(有时称为基础设施层、网络转发平面或转发平面(其不应当与ND转发平面混淆))的南向接口1482。集中式控制平面1476包括网络控制器1478,网络控制器1478包括集中式可达性和转发信息模块1479,集中式可达性和转发信息模块1479确定网络内的可达性并且通过南向接口1482(其可以使用开放流协议)向数据平面1480的NE570A-H分发转发信息。因此,网络智能被集中到在通常与ND分离的电子设备上执行的集中式控制平面1476中。在一个实施例中,集中式可达性和转发信息模块1479可以包括PCE模块1481和如本文中以上描述的相关软件。
例如,如果在数据平面1480中使用专用网络设备1402,则ND控制平面1424的控制通信和配置模块1432A-R中的每个通常包括提供南向接口1482的VNE侧的控制代理。在这种情况下,ND控制平面1424(执行控制通信和配置模块1432A-R的计算资源1412)执行其参与控制如何通过与集中式控制平面1476通信以从集中式可达性和转发信息模块1479接收转发信息(并且在一些情况下接收可达性信息)的控制代理路由数据(例如分组)(例如数据的下一跳以及该数据的输出物理NI)的责任(应当理解,在本发明的一些实施例中,控制通信和配置模块1432A-R除了与集中式控制平面1476通信还可以在确定可达性和/或计算转发信息中发挥作用——即使比在分布式方法的情况下少;这样的实施例通常被认为落在集中式方法1474之下,但是也可以被认为是混合方法)。
虽然以上示例使用专用网络设备1402,然而相同的集中式方法1474可以使用通用网络设备1404和混合网络设备1406来实现(例如,每个VNE1460A-R执行其控制如何通过与集中式控制平面1476通信以从集中式可达性和转发信息模块1479接收转发信息(并且在一些情况下接收可达性信息)来路由数据(例如分组)(例如数据的下一跳以及该数据的输出物理NI)的责任;应当理解,在本发明的一些实施例中,VNE1460A-R除了与集中式控制平面1476通信还可以在确定可达性和/或计算转发信息中发挥作用——即使比在分布式方法的情况下少)。实际上,SDN技术的使用可以增强通常在通用网络设备1404或混合网络设备1406实现中使用的NFV技术,因为NFV能够通过提供SDN软件可以在其上运行的基础设施来支持SDN,并且NFV和SDN都旨在利用商用服务器硬件或物理交换机。
图14D还示出集中式控制平面1476具有到应用1488驻留在其中的应用层1486的北向接口1484。集中式控制平面1476能够形成用于应用1488的虚拟网络1492(有时称为逻辑转发平面、网络服务或覆盖网络(其中数据平面1480的NE1470A-H为底层网络))。因此,集中式控制平面1476维护所有ND和配置的NE/VNE的全局视图并且其将虚拟网络高效地映射到底层ND(包括在物理网络通过硬件(ND、链路或ND部件)故障、添加或移除而变化时维护这些映射)。
虽然图14D示出与集中式方法1474分离的分布式方法1472,然而网络控制的努力可以被不同地分布或者这两者在本发明的某些实施例中组合。例如:1)实施例通常可以使用集中式方法(SDN)1474,但是向NE委任某些功能(例如分布式方法可以用于实现故障监控、性能监控、保护切换以及用于邻居和/或拓扑结构发现的基元中的一项或多项);或者2)本发明的实施例可以经由集中式控制平面和分布式协议二者执行邻居发现和拓扑结构发现,并且结果比较以增加它们未达成一致的例外情况。这样的实施例通常被认为落在集中式方法1474之下,但是也可以被认为是混合方法。
在一个示例混合方法中,网络中有集中式和分布式智能二者。这就SDN的集中式原理由PCE模块1481来实现而分布式方法被维持(即IS-IS)的意义而言是混合方法。因此,控制器处的PCE模块1481中有智能部件并且网络设备的节点中的LCE模块处遍及网络分布有智能部件。换言之,这一过程通过SDN控制器处的PCE模块1481的集中智能来起作用。另外,节点处也分布有智能,其必须运行IS-IS和本地计算引擎。在本示例实施例中,网络节点(即ND)不是非智能的,即经由LCE来实现本文中以上描述的功能。
虽然图14D图示ND1400A-H中的每个实现单个NE1470A-H的简单情形,然而应当理解,参考图14D描述的网络控制方法也用于其中ND1400A-H中的一个或多个实现多个VNE(例如VNE1430A-R、VNE1460A-R、混合网络设备1406中的VNE)的网络。替选地或者另外地,网络控制器1478还可以仿真单个ND中的多个VNE的实现。具体地,并非(或者除了)在单个ND中实现多个VNE,网络控制器1478可以将单个ND中的VNE/NE的实现呈现为虚拟网络1492中的多个VNE(所有的都在同一个虚拟网络1492中,每个在不同的虚拟网络1492中,或者某种组合)。例如,网络控制器1478可以引起ND在底层网络中实现单个VNE(NE),并且然后在逻辑上划分集中式控制平面1476内的该NE的资源以在虚拟网络1492中呈现不同VNE(其中覆盖网络中的这些不同VNE共享底层网络中ND上的单个VNE/NE实现的资源)。
另一方面,图14E和14F分别图示网络控制器1478可以呈现为不同虚拟网络1492的部分的NE和VNE的示例性抽象。图14E图示根据本发明的一些实施例的简单情形,其中每个ND1400A-H实现单个NE1470A-H(参见图14D)但是集中式控制平面1476将不同ND(NE1470A-C以及G-H)中的多个NE抽象成(表示)图14D的虚拟网络1492中的一个虚拟网络中的单个NE1470I。图14E示出在本虚拟网络中,NE1470I耦合到NE1470D和1470F,NE1470D和1470F二者仍然耦合到NE1470E。
图14F图示根据本发明的一些实施例的情形,其中多个VNE(VNE1470A.1和VNE1470H.1)在不同的ND(ND1400A和ND1400H)上实现并且彼此耦合,并且其中集中式控制平面1476将这些多个NVE抽象成使得它们呈现为图14D的虚拟网络1492中的一个虚拟网络内的单个VNE1470T。因此,NE或VNE的抽象可以跨越多个ND。
虽然本发明的一些实施例将集中式控制平面1476实现为单个实体(例如软件的单个实例在单个电子设备上运行),然而替选实施例可以出于冗余和/或可扩展性目的而在多个实体上扩散功能(例如软件的多个实例在不同电子设备上运行)。
类似于网络设备实现,运行集中式控制平面1476的电子设备以及从而包括集中式可达性和转发信息模块1479的网络控制器1478可以用各种方式来实现(例如专用设备、通用(例如COTS)设备、或者混合设备)。这些电子设备类似地包括计算资源、一个或多个物理NIC的集合以及其上存储有集中式控制平面软件的非暂态机器可读存储介质。比如,图15图示包括硬件1540以及非暂态机器可读存储介质1548的通用控制平面设备1504,硬件1540包括一个或多个处理器1542(其通常为商用现成(COTS)处理器)以及网络接口控制器1544(NIC;也称为网络接口卡)(其包括物理NI1546)的集合,非暂态机器可读存储介质1548中存储有集中式控制平面(CCP)软件(1550)。
在使用计算虚拟化的实施例中,处理器1542通常执行软件以实例化超级管理器1554(有时称为虚拟机监视器(VMM))以及由超级管理器1554运行的一个或多个虚拟机1562A-R;其统称为软件实例1552。虚拟机为运行程序(好像程序在物理非虚拟化机器上运行)的物理机器的软件实现;并且与在“裸金属”主机电子设备上运行相反,应用通常不知道它们在虚拟机上运行,然而一些系统提供半虚拟化,其使得操作系统或应用能够出于优化目的而知道虚拟化的存在。另外,在使用计算虚拟化的实施例中,在操作期间,操作系统1562A之上的CCP软件1550的实例(图示为CCP实例1576A)通常在虚拟机1562A内执行。在不使用计算虚拟化的实施例中,在操作系统1564A之上的CCP实例1576A在“裸金属”通用控制平面设备1504上执行。
操作系统1564A提供基本的处理、输入/输出(I/O)和联网能力。在一些实施例中,CCP实例1576A包括网络控制器实例1578。网络控制器实例1578包括集中式可达性和转发信息模块实例1579(其为向操作系统1564A提供网络控制器1578的上下文并且与各种NE通信的中间件层)、以及中间件层之上的CCP应用层1580(有时称为应用层)(提供各种网络操作所需要的智能,诸如协议、网络情况通知和用户接口)。在一个实施例中,集中式可达性和转发信息模块1579可以包括PCE模块1581、LCE模块1582和本文中以上所描述的相关软件。
在更抽象的水平,集中式控制平面1576内的这一CCP应用层1580与虚拟网络视图(网络的逻辑视图)一起工作并且中间件层提供从虚拟网络到物理视图的转换。
集中式控制平面1476基于CCP应用层1580计算和用于每个流的中间件层映射向数据平面580传输相关消息。流可以定义为首部(header)与给定的比特图案匹配的分组的集合;在这个意义上,传统的IP转发也是基于流的转发,其中流例如由目的地IP地址来定义;然而,在其他实现中,用于流定义的给定的比特图案可以在分组首部中包括更多字段(例如10个或更多)。数据平面1480的不同的ND/NE/VNE可以接收不同消息并且因此接收不同的转发信息。数据平面1480处理这些消息并且在适当的NE/VNE的转发表(有时称为流表)中编程适当的流信息和对应动作,并且然后NE/VNE将到来的分组映射成在转发表中所表示的流并且基于转发表中的匹配转发分组。
诸如开放流等标准定义用于消息的协议以及用于处理分组的模型。用于处理分组的模型包括首部解析、分组分类和做出转发决策。首部解析描述如何基于众所周知的协议集合来解释分组。一些协议字段用于建立将在分组分类中使用的匹配结构(或关键字)(例如第一关键字字段可以是源媒体访问控制(MAC)地址,第二关键字字段可以是目的地MAC地址)。
分组分类包括执行存储器中的查找以通过基于转发表条目的匹配结构或关键字确定转发表中的哪个条目(也称为转发表条目或流条目)最佳匹配分组而对分组分类。在转发表条目中所表示的很多流有可能可以对应/匹配于分组;在这种情况下,系统通常被配置成根据所定义的方案(例如选择匹配的第一转发表条目)从很多转发表条目中确定一个转发表条目。转发表条目包括匹配准则的特定集合(值或通配符的集合、或者应当将分组的哪些部分与特定值(或者多个值)/通配符相比较的指示,如由匹配能力所定义的——用于分组首部中的具体字段,或者用于某个其他分组内容)以及用于数据平面进行接收匹配分组的一个或多个动作的集合。例如,动作可以是将首部推送到分组上,对于使用特定端口的分组,泛洪分组或者简单地丢弃分组。因此,用于使用特定的传输控制协议(TCP)目的地端口的IPv4/IPv6分组的转发表条目可以包含规定应当丢弃这些分组的动作。
基于在分组分类期间识别的转发表条目,通过执行针对分组的匹配转发表条目中所标识的动作的集合,发生做出转发决策和执行动作。
然而,当未知分组(例如如开放流用语中所使用的“丢失的分组”或者“失配”)到达数据平面1480时,通常向集中式控制平面1476转发分组(或者分组首部和内容的子集)。集中式控制平面1476然后将转发表条目编程到数据平面580中以适应属于未知分组的流的分组。一旦已经通过集中式控制平面1476将具体的转发表条目编程到数据平面1480中,具有匹配认证信息(credentials)的下一分组将匹配该转发表条目并且进行与该匹配条目相关联的动作集合。
网络接口(NI)可以是物理的或者虚拟的;并且在IP情境中,接口地址为向NI分配的IP地址,其可以是物理NI或者虚拟NI。虚拟NI可以与物理NI相关联、与另一虚拟接口相关联,或者独立(例如环回(loopback)接口、点到点协议接口)。NI(物理或虚拟)可以被编号(具有IP地址的NI)或者不编号(没有IP地址的NI)。环回接口(及其环回地址)为通常用于管理目的的NE/VNE(物理或虚拟)的特定类型的虚拟NI(和IP地址);其中这样的IP地址称为节点环回地址。向ND的NI分配的IP地址称为该ND的IP地址;在更细粒度水平,向分配给在ND上实现的NE/VNE的NI分配的IP地址可以称为该NE/VNE的IP地址。
由路由系统为给定目的地选择下一跳可以分解为一个路径(也就是,路由协议可以生成最短路径上的一个下一跳);但是如果路由系统确定有多个可行的下一跳(也就是,路由协议所生成的转发方案提供最短路径上的多于一个的下一跳——多个等成本下一跳),则使用某个另外的准则——比如,在无连接网络中,可以使用等成本多路径(ECMP)(也称为等成本多路径、多路转发和IP多路径)(RFC2991和2992)(例如典型的实现使用特定首部字段作为准则以确保特定分组流的分组通常在相同的下一跳上被转发以保护分组流排序)。出于多路径转发的目的,定义分组流作为共享排序约束的分组的集合。作为示例,特定TCP传输序列中的分组的集合需要依次到达,否则TCP逻辑将无序递送解释为拥挤并且减缓TCP传输速率。
因此,已经描述了用于分组网络中的显式路径的恢复的方法、系统和装置。应当理解,以上描述意在是说明性而非限制性的。本领域技术人员在阅读和理解以上描述时很多其他实施例将是明显的。本发明的范围因此应当参考所附权利要求连同这样的权利要求给予权利的等同方案的整个范围来确定。
Claims (30)
1.一种由执行本地计算引擎和链路状态路由协议的网络设备实现的方法,其中所述本地计算引擎和所述链路状态协议支持分组网络中的冗余路径的自动建立和谨慎恢复,所述方法包括步骤:
经由链路状态路由协议接收(1201)显式路径(EP)类型长度值(TLV);
执行(1209)最短路径算法以获得由所述EPTLV所标识的路径的松散跳的最短路径,所述最短路径将作为主路径;
安装(1211)用于所述主路径的转发数据库条目;
更新(1213)网络图以修剪所述主路径的链路或者偏置所述主路径的链路;
在已更新网络图上使用所述最短路径算法计算(1215)备用路径;以及
安装(1219)用于所述备用路径的转发数据库条目。
2.根据权利要求1所述的方法,还包括步骤:
基于所述EPTLV中规定的约束来修剪(1203)所述分组网络的所述网络图。
3.根据权利要求2所述的方法,还包括步骤:
检查(1205)所述分组网络的所述网络图是否被所述分组网络的所述网络图的所述修剪所分割。
4.根据权利要求1所述的方法,其中偏置所述主路径的链路包括调节所述主路径的所述链路的度量以使所述最短路径算法偏离选择所述主路径的所述链路用于所述备用路径。
5.根据权利要求1所述的方法,还包括:
向所述备用路径分配(1217)备用虚拟局域网(VLAN)标识符(ID)。
6.根据权利要求1所述的方法,所述方法包括步骤:
检测(1301)所述网络图中的变化;
检查(1307)所述网络图是否稳定;以及
恢复(1309)所述主路径或者所述备用路径中受到对所述网络图的变化的影响的一个路径。
7.根据权利要求6所述的方法,还包括:
在所述主路径或者所述备用路径的所述恢复完成之后,恢复(1311)所述主路径或者所述备用路径中受到所述网络图中的变化的影响的另一路径。
8.一种执行本地计算引擎和链路状态路由协议的网络设备(1402),其中所述链路计算引擎和所述链路状态协议支持分组网络中的冗余路径的自动建立和谨慎恢复,所述计算设备包括:
非暂态机器可读存储介质(1418),用于接收和存储经由链路状态路由协议接收的显式路径(EP)类型长度值(TLV)的集合;以及
耦合到所述存储器设备的处理器(1410),所述处理器被配置成执行本地计算引擎(LCE)模块(1433B)以:
处理所述EPTLV,
执行最短路径算法以获得由所述EPTLV所标识的路径的松散跳的最短路径,所述最短路径将作为主路径,
安装用于所述主路径的转发数据库条目,
更新网络图以修剪所述主路径的链路或者偏置所述主路径的链路,
在已更新网络图上使用所述最短路径算法计算备用路径,以及
安装用于所述备用路径的转发数据库条目。
9.根据权利要求8所述的网络设备,其中所述处理器还被配置成执行所述LCE模块,所述LCE模块还被配置成基于所述EPTLV中规定的约束来修剪所述分组网络的所述网络图。
10.根据权利要求9所述的网络设备,其中所述处理器还被配置成执行所述LCE模块,所述LCE模块还被配置成检查所述分组网络的所述网络图是否被所述分组网络的所述网络图的所述修剪所分割。
11.根据权利要求8所述的网络设备,其中偏置所述主路径的链路包括调节所述主路径的所述链路的度量以使所述最短路径算法偏离选择所述主路径的所述链路用于所述备用路径。
12.根据权利要求8所述的网络设备,其中所述处理器还被配置成执行所述LCE模块,所述LCE模块还被配置成向所述备用路径分配备用虚拟局域网(VLAN)标识符(ID)。
14.根据权利要求8所述的网络设备,其中所述处理器还被配置成执行所述LCE模块,所述LCE模块还被配置成:
检测所述网络图中的变化;
检查所述网络图是否稳定;以及
恢复所述主路径或者所述备用路径中受到对所述网络图的变化的影响的一个路径。
15.根据权利要求8所述的网络设备,其中所述处理器还被配置成执行所述LCE模块,所述LCE模块还被配置成:在所述主路径或者所述备用路径的所述恢复完成之后,恢复所述主路径或者所述备用路径中受到所述网络图中的变化的影响的另一路径。
16.根据权利要求8所述的网络设备,其中所述LCE模块为路径计算元件(PCE)模块或者所述PCE模块的部分。
17.一种用于执行路径计算元件和链路状态路由协议的控制平面设备(1476),其中所述路径计算元件和所述链路状态协议支持分组网络中的冗余路径的自动建立和谨慎恢复,所述控制平面设备包括:
非暂态机器可读存储介质(1448),用于接收和存储经由链路状态路由协议接收的显式路径(EP)类型长度值(TLV)的集合;以及
耦合到所述存储器设备的网络处理器(1442),所述网络处理器被配置成执行路径计算元件(PCE)模块(1463A)以生成要向所述分组网络中的本地计算引擎(LCE)模块发送以指示所述LCE模块进行以下操作的EPTLV:
执行最短路径算法以获得由所述EPTLV所标识的路径的松散跳的最短路径,所述最短路径将作为主路径,
安装用于所述主路径的转发数据库条目,
更新网络图以修剪所述主路径的链路或者偏置所述主路径的链路,
在已更新网络图上使用所述最短路径算法计算备用路径,以及
安装用于所述备用路径的转发数据库条目。
18.根据权利要求17所述的控制平面设备,其中所述PCE生成的EPTLV引起所述LCE模块基于所述EPTLV中规定的约束来修剪所述分组网络的网络图。
19.根据权利要求18所述的控制平面设备,其中所述PCE生成的EPTLV引起所述LCE模块检查所述分组网络的所述网络图是否被所述分组网络的所述网络图的所述修剪所分割。
20.根据权利要求17所述的控制平面设备,其中偏置所述主路径的链路包括调节所述主路径的所述链路的度量以使所述最短路径算法偏离选择所述主路径的所述链路用于所述备用路径。
21.根据权利要求17所述的控制平面设备,其中所述PCE生成的EPTLV引起所述LCE模块向所述备用路径分配备用虚拟局域网(VLAN)标识符(ID)。
22.根据权利要求17所述的控制平面设备,所述PCE生成的EPTLV引起所述LCE模块:
检测所述网络图中的变化;
检查所述网络图是否稳定;以及
恢复所述主路径或者所述备用路径中受到对所述网络图的变化的影响的一个路径。
23.根据权利要求17所述的控制平面设备,所述PCE生成的EPTLV引起所述LCE模块:在所述主路径或者所述备用路径的所述恢复完成之后,恢复所述主路径或者所述备用路径中受到所述网络图中的变化的影响的另一路径。
24.一种实现多个虚拟机的计算设备(1404),所述多个虚拟机用于实现网络功能虚拟化(NFV),其中来自所述多个虚拟机的一虚拟机被配置成执行本地计算引擎和链路状态路由协议,其中所述本地计算引擎和所述链路状态协议支持分组网络中的冗余路径的自动建立和谨慎恢复,所述计算设备包括:
非暂态机器可读存储介质(1448),用于接收和存储经由链路状态路由协议接收的显式路径(EP)类型长度值(TLV)的集合;以及
耦合到所述存储器设备的处理器(1442),所述处理器被配置成执行实现本地计算引擎(LCE)模块(1452)的所述虚拟机,所述LCE模块:
处理所述EPTLV,
执行最短路径算法以获得由所述EPTLV所标识的路径的松散跳的最短路径,所述最短路径将作为主路径,
安装用于所述主路径的转发数据库条目,
更新网络图以修剪所述主路径的链路或者偏置所述主路径的链路,
在已更新网络图上使用所述最短路径算法计算备用路径,以及
安装用于所述备用路径的转发数据库条目。
25.根据权利要求24所述的计算设备,其中所述处理器还被配置成执行实现所述LCE模块的所述虚拟机,所述LCE模块还被配置成基于所述EPTLV中规定的约束来修剪所述分组网络的所述网络图。
26.根据权利要求25所述的计算设备,其中所述处理器还被配置成执行实现所述LCE模块的所述虚拟机,所述LCE模块还被配置成检查所述分组网络的所述网络图是否被所述分组网络的所述网络图的所述修剪所分割。
27.根据权利要求24所述的计算设备,其中偏置所述主路径的链路包括调节所述主路径的所述链路的度量以使所述最短路径算法偏离选择所述主路径的所述链路用于所述备用路径。
28.根据权利要求24所述的计算设备,其中所述处理器还被配置成执行实现所述LCE模块的所述虚拟机,所述LCE模块还被配置成向所述备用路径分配备用虚拟局域网(VLAN)标识符(ID)。
28.根据权利要求24所述的计算设备,其中所述处理器还被配置成执行实现所述LCE模块的所述虚拟机,所述LCE模块还被配置成:
检测所述网络图中的变化;
检查所述网络图是否稳定;以及
恢复所述主路径或者所述备用路径中受到对所述网络图的变化的影响的一个路径。
29.根据权利要求24所述的计算设备,其中所述处理器还被配置成执行实现所述LCE模块的所述虚拟机,所述LCE模块还被配置成:在所述主路径或者所述备用路径的所述恢复完成之后,恢复所述主路径或者所述备用路径中受到所述网络图中的变化的影响的另一路径。
30.根据权利要求24所述的计算设备,其中所述LCE模块为路径计算元件(PCE)模块或者所述PCE模块的部分。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361863337P | 2013-08-07 | 2013-08-07 | |
US61/863,337 | 2013-08-07 | ||
US14/453,430 US9832102B2 (en) | 2013-08-07 | 2014-08-06 | Automatic establishment of redundant paths with cautious restoration in a packet network |
US14/453,430 | 2014-08-06 | ||
PCT/IB2014/063754 WO2015019309A1 (en) | 2013-08-07 | 2014-08-07 | Automatic establishment of redundant paths with cautious restoration in a packet network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105453496A true CN105453496A (zh) | 2016-03-30 |
CN105453496B CN105453496B (zh) | 2018-12-07 |
Family
ID=52448592
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480045171.4A Active CN105453496B (zh) | 2013-08-07 | 2014-08-07 | 用于分组网络中具有谨慎恢复的冗余路径的自动建立的方法和设备 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9832102B2 (zh) |
EP (1) | EP3031180B1 (zh) |
CN (1) | CN105453496B (zh) |
BR (1) | BR112016002507B1 (zh) |
RU (1) | RU2636689C2 (zh) |
WO (1) | WO2015019309A1 (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109218159A (zh) * | 2017-07-07 | 2019-01-15 | 瞻博网络公司 | 向用于层2虚拟专用网络的冗余多宿主路由器发信号通知多播信息 |
CN110838965A (zh) * | 2019-09-25 | 2020-02-25 | 北京华为数字技术有限公司 | 一种隧道建立方法以及接收节点 |
CN111147373A (zh) * | 2018-11-02 | 2020-05-12 | 瞻博网络公司 | 实现非灵活算法路由器参与灵活算法路由协议 |
CN111642022A (zh) * | 2020-06-01 | 2020-09-08 | 重庆邮电大学 | 一种支持数据包聚合的工业无线网络确定性调度方法 |
CN112134724A (zh) * | 2016-06-16 | 2020-12-25 | 华为技术有限公司 | 一种路径确定方法、装置和系统 |
CN112565067A (zh) * | 2017-07-28 | 2021-03-26 | 瞻博网络公司 | 用于多播保护的到冗余多播源节点的最大冗余树 |
CN113411819A (zh) * | 2021-05-30 | 2021-09-17 | 西安电子科技大学 | 一种5g nfv切片重配方法、系统、无线通信系统 |
CN114846777A (zh) * | 2019-11-11 | 2022-08-02 | 西门子加拿大有限公司 | 用于在工业网络中提供冗余的网络设备 |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9467369B2 (en) | 2013-08-02 | 2016-10-11 | Time Warner Cable Enterprises Llc | Packetized content delivery apparatus and methods |
KR102139721B1 (ko) * | 2013-08-29 | 2020-07-30 | 삼성전자주식회사 | 다중 경로 프로토콜에서 이중으로 네트워크 코딩을 적용하는 방법 및 그 장치 |
KR101625297B1 (ko) * | 2013-10-24 | 2016-05-27 | 주식회사 케이티 | 언더레이 네트워크와 연동하여 오버레이 네트워크를 제공하는 방법 및 이를 수행하는 시스템 |
CN108183861B (zh) * | 2013-10-26 | 2021-09-07 | 华为技术有限公司 | Sdn交换机获取精确流表项方法及sdn交换机、控制器、系统 |
US9929939B2 (en) | 2013-12-26 | 2018-03-27 | Coriant Operations, Inc. | Systems, apparatuses, and methods for rerouting network traffic |
US9654381B2 (en) * | 2014-02-12 | 2017-05-16 | Level 3 Communications, Llc | Differentiated routing system and method |
WO2016056445A1 (ja) * | 2014-10-06 | 2016-04-14 | 株式会社Nttドコモ | ドメイン制御方法及びドメイン制御装置 |
CN105610708B (zh) * | 2014-10-31 | 2019-11-12 | 新华三技术有限公司 | 一种trill网络中组播frr的实现方法和rb设备 |
US10070155B2 (en) * | 2014-11-10 | 2018-09-04 | Time Warner Cable Enterprises Llc | Packetized content delivery apparatus and methods |
US9985843B2 (en) * | 2015-02-27 | 2018-05-29 | International Business Machines Corporation | Efficient parallel processing of a network with conflict constraints between nodes |
KR101965402B1 (ko) * | 2015-03-02 | 2019-04-03 | 한국전자통신연구원 | 소프트웨어 정의 네트워크를 위한 컨트롤러 기반 보호 장치 및 방법 |
US20160261456A1 (en) * | 2015-03-02 | 2016-09-08 | Electronics And Telecommunications Research Institute | Controller based protection method and apparatus for software defined network |
US20170237654A1 (en) * | 2015-03-25 | 2017-08-17 | Hewlett Packard Enterprise Development Lp | Fast failover recovery in software defined networks |
US9838272B2 (en) | 2015-04-13 | 2017-12-05 | Ciena Corporation | Service enhancement discovery for connectivity traits and virtual network functions in network services |
US10489178B2 (en) | 2015-04-28 | 2019-11-26 | Altera Corporation | Network functions virtualization platforms with function chaining capabilities |
US9825778B2 (en) * | 2015-05-12 | 2017-11-21 | Cisco Technology, Inc. | NSH service plane for L3VPN forwarding |
US9378043B1 (en) | 2015-05-28 | 2016-06-28 | Altera Corporation | Multilayer quality of service (QOS) for network functions virtualization platforms |
US9806997B2 (en) | 2015-06-16 | 2017-10-31 | At&T Intellectual Property I, L.P. | Service specific route selection in communication networks |
US9825850B2 (en) | 2015-06-30 | 2017-11-21 | Industrial Technology Research Institute | Network controlling method and network controller |
TWI556599B (zh) * | 2015-06-30 | 2016-11-01 | 財團法人工業技術研究院 | 網路控制方法及網路控制器 |
US9813286B2 (en) | 2015-11-26 | 2017-11-07 | Industrial Technology Research Institute | Method for virtual local area network fail-over management, system therefor and apparatus therewith |
GR1008894B (el) * | 2015-12-15 | 2016-11-14 | Arm Limited | Βελτιστοποιημενη συνεχης ροη σε μια μη διατεταγμενη διασυνδεση |
US10397136B2 (en) | 2016-08-27 | 2019-08-27 | Nicira, Inc. | Managed forwarding element executing in separate namespace of public cloud data compute node than workload application |
CN106533741B (zh) * | 2016-10-31 | 2019-07-26 | 盛科网络(苏州)有限公司 | 基于OpenFlow实现MPLS-TP共享环保护MSRP环网保护系统的方法及装置 |
CN111669320B (zh) * | 2016-12-20 | 2023-04-21 | 华为技术有限公司 | 一种处理报文的方法及网络设备 |
KR102323431B1 (ko) * | 2017-05-18 | 2021-11-09 | 에스케이텔레콤 주식회사 | 이중화 제공 방법 |
US10333822B1 (en) * | 2017-05-23 | 2019-06-25 | Cisco Technology, Inc. | Techniques for implementing loose hop service function chains price information |
US10567482B2 (en) | 2017-08-24 | 2020-02-18 | Nicira, Inc. | Accessing endpoints in logical networks and public cloud service providers native networks using a single network interface and a single routing table |
CN114584465B (zh) * | 2017-08-27 | 2024-10-25 | Nicira股份有限公司 | 在公共云中执行在线服务 |
US10911262B2 (en) | 2017-10-31 | 2021-02-02 | Cisco Technology, Inc. | Deterministic forwarding across L2 and L3 networks |
US10715415B2 (en) * | 2017-11-28 | 2020-07-14 | T-Mobile Usa, Inc. | Remotely and dynamically injecting routes into an IP network |
US10411990B2 (en) | 2017-12-18 | 2019-09-10 | At&T Intellectual Property I, L.P. | Routing stability in hybrid software-defined networking networks |
CN109995654B (zh) * | 2017-12-29 | 2022-05-20 | 中兴通讯股份有限公司 | 一种基于隧道传输数据的方法及装置 |
US11070603B2 (en) | 2018-02-26 | 2021-07-20 | Charter Communicatons Operating, LLC | Apparatus and methods for packetized content routing and delivery |
RU180801U1 (ru) * | 2018-03-07 | 2018-06-22 | Общество с ограниченной ответственностью "БУЛАТ" | Абонентское сетевое устройство с виртуализированными сетевыми функциями |
US11343229B2 (en) | 2018-06-28 | 2022-05-24 | Vmware, Inc. | Managed forwarding element detecting invalid packet addresses |
US11374794B2 (en) | 2018-08-24 | 2022-06-28 | Vmware, Inc. | Transitive routing in public cloud |
US11196591B2 (en) | 2018-08-24 | 2021-12-07 | Vmware, Inc. | Centralized overlay gateway in public cloud |
RU186109U1 (ru) * | 2018-10-31 | 2019-01-09 | Общество с ограниченной ответственностью "БУЛАТ" | Абонентское сетевое устройство с виртуализированными сетевыми функциями |
RU190103U1 (ru) * | 2018-11-28 | 2019-06-18 | Общество с ограниченной ответственностью "БУЛАТ" | Ethernet коммутатор |
RU190237U1 (ru) * | 2018-12-12 | 2019-06-24 | Общество с ограниченной ответственностью "БУЛАТ" | Абонентское сетевое устройство с виртуализированными сетевыми функциями |
CN113260929B (zh) * | 2019-01-23 | 2024-05-24 | 西门子股份公司 | 用于故障安全数据传输的方法、网络节点、计算机程序和计算机可读介质 |
EP3954095A1 (en) * | 2019-06-05 | 2022-02-16 | Huawei Technologies Co., Ltd. | Extending bgp protection for sr path ingress protection |
US11483230B2 (en) * | 2019-09-23 | 2022-10-25 | Cisco Technology, Inc. | Multiple domain segment routing path computation |
CN113038520B (zh) * | 2021-03-31 | 2022-05-10 | 广东电网有限责任公司电力调度控制中心 | 一种拓扑感知的虚拟网服务故障恢复方法及系统 |
CN113660677B (zh) * | 2021-07-29 | 2022-08-19 | 西安电子科技大学 | 带权时变网络在耗费限制下的最大错误独立路径计算方法 |
CN113691450B (zh) * | 2021-08-23 | 2022-09-13 | 烽火通信科技股份有限公司 | 一种对多颜色路由完善保护机制的方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6363319B1 (en) * | 1999-08-31 | 2002-03-26 | Nortel Networks Limited | Constraint-based route selection using biased cost |
US6985959B1 (en) * | 2000-11-01 | 2006-01-10 | Nortel Networks Limited | Constraint route dissemination using distributed route exchanges |
CN1849783A (zh) * | 2003-10-02 | 2006-10-18 | 思科技术公司 | 用于实现边界网关协议(bgp)的分布式软件体系结构 |
CN1883146A (zh) * | 2003-12-23 | 2006-12-20 | 思科技术公司 | 在路由选取协议的实现中分布路由选择的系统和方法 |
CN101529829A (zh) * | 2006-11-02 | 2009-09-09 | 北方电讯网络有限公司 | 链路状态协议控制以太网网络中的业务工程路径 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US685959A (en) * | 1901-04-25 | 1901-11-05 | William Ward | Stuffing-box gland. |
US7266085B2 (en) | 2001-03-21 | 2007-09-04 | Stine John A | Access and routing protocol for ad hoc network using synchronous collision resolution and node state dissemination |
US7406033B2 (en) | 2002-02-28 | 2008-07-29 | Nortel Networks Limited | Methods, devices and software for combining protection paths across a communications network |
US7324453B2 (en) * | 2002-08-30 | 2008-01-29 | Alcatel Lucent | Constraint-based shortest path first method for dynamically switched optical transport networks |
US7460481B2 (en) * | 2004-12-01 | 2008-12-02 | Cisco Technology, Inc. | Inter-domain TE-LSP with IGP extensions |
US7406032B2 (en) * | 2005-01-06 | 2008-07-29 | At&T Corporation | Bandwidth management for MPLS fast rerouting |
RU2378770C2 (ru) | 2005-07-07 | 2010-01-10 | Телефонактиеболагет Лм Эрикссон (Пабл) | Способ и устройство для кодирования и планирования в системах передачи пакетных данных |
US8208372B2 (en) * | 2006-06-02 | 2012-06-26 | Cisco Technology, Inc. | Technique for fast activation of a secondary head-end node TE-LSP upon failure of a primary head-end node TE-LSP |
US8374092B2 (en) * | 2006-08-28 | 2013-02-12 | Cisco Technology, Inc. | Technique for protecting against failure of a network element using multi-topology repair routing (MTRR) |
US7693939B2 (en) | 2007-05-07 | 2010-04-06 | Microsoft Corporation | Context-based routing in multi-hop networks |
US8761022B2 (en) | 2007-12-26 | 2014-06-24 | Rockstar Consortium Us Lp | Tie-breaking in shortest path determination |
RU2402171C1 (ru) | 2009-01-27 | 2010-10-20 | Государственное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) | Способ формирования структуры сети обмена данными управления |
US8489765B2 (en) | 2010-03-19 | 2013-07-16 | Cisco Technology, Inc. | Dynamic directed acyclic graph (DAG) adjustment |
US8693315B2 (en) | 2011-09-13 | 2014-04-08 | Alcatel Lucent | Method and apparatus for shortest path bridging of multicast traffic |
US9270426B1 (en) * | 2012-09-11 | 2016-02-23 | Juniper Networks, Inc. | Constrained maximally redundant trees for point-to-multipoint LSPs |
-
2014
- 2014-08-06 US US14/453,430 patent/US9832102B2/en active Active
- 2014-08-07 WO PCT/IB2014/063754 patent/WO2015019309A1/en active Application Filing
- 2014-08-07 CN CN201480045171.4A patent/CN105453496B/zh active Active
- 2014-08-07 BR BR112016002507-5A patent/BR112016002507B1/pt active IP Right Grant
- 2014-08-07 EP EP14753312.9A patent/EP3031180B1/en active Active
- 2014-08-07 RU RU2016107909A patent/RU2636689C2/ru active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6363319B1 (en) * | 1999-08-31 | 2002-03-26 | Nortel Networks Limited | Constraint-based route selection using biased cost |
US6985959B1 (en) * | 2000-11-01 | 2006-01-10 | Nortel Networks Limited | Constraint route dissemination using distributed route exchanges |
CN1849783A (zh) * | 2003-10-02 | 2006-10-18 | 思科技术公司 | 用于实现边界网关协议(bgp)的分布式软件体系结构 |
CN1883146A (zh) * | 2003-12-23 | 2006-12-20 | 思科技术公司 | 在路由选取协议的实现中分布路由选择的系统和方法 |
CN101529829A (zh) * | 2006-11-02 | 2009-09-09 | 北方电讯网络有限公司 | 链路状态协议控制以太网网络中的业务工程路径 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112134724A (zh) * | 2016-06-16 | 2020-12-25 | 华为技术有限公司 | 一种路径确定方法、装置和系统 |
CN109218159A (zh) * | 2017-07-07 | 2019-01-15 | 瞻博网络公司 | 向用于层2虚拟专用网络的冗余多宿主路由器发信号通知多播信息 |
CN112565067A (zh) * | 2017-07-28 | 2021-03-26 | 瞻博网络公司 | 用于多播保护的到冗余多播源节点的最大冗余树 |
CN111147373A (zh) * | 2018-11-02 | 2020-05-12 | 瞻博网络公司 | 实现非灵活算法路由器参与灵活算法路由协议 |
CN110838965A (zh) * | 2019-09-25 | 2020-02-25 | 北京华为数字技术有限公司 | 一种隧道建立方法以及接收节点 |
CN114846777A (zh) * | 2019-11-11 | 2022-08-02 | 西门子加拿大有限公司 | 用于在工业网络中提供冗余的网络设备 |
CN114846777B (zh) * | 2019-11-11 | 2023-10-24 | 西门子加拿大有限公司 | 用于在工业网络中提供冗余的网络设备 |
CN111642022A (zh) * | 2020-06-01 | 2020-09-08 | 重庆邮电大学 | 一种支持数据包聚合的工业无线网络确定性调度方法 |
CN111642022B (zh) * | 2020-06-01 | 2022-07-15 | 重庆邮电大学 | 一种支持数据包聚合的工业无线网络确定性调度方法 |
CN113411819A (zh) * | 2021-05-30 | 2021-09-17 | 西安电子科技大学 | 一种5g nfv切片重配方法、系统、无线通信系统 |
CN113411819B (zh) * | 2021-05-30 | 2022-07-12 | 西安电子科技大学 | 一种5g nfv切片重配方法、系统、无线通信系统 |
Also Published As
Publication number | Publication date |
---|---|
EP3031180A1 (en) | 2016-06-15 |
EP3031180B1 (en) | 2016-11-16 |
US20150043383A1 (en) | 2015-02-12 |
BR112016002507B1 (pt) | 2023-04-11 |
WO2015019309A1 (en) | 2015-02-12 |
RU2636689C2 (ru) | 2017-11-27 |
CN105453496B (zh) | 2018-12-07 |
RU2016107909A (ru) | 2017-09-15 |
US9832102B2 (en) | 2017-11-28 |
BR112016002507A2 (pt) | 2017-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105453496A (zh) | 分组网络中具有谨慎恢复的冗余路径的自动建立 | |
JP6779341B2 (ja) | ボーダゲートウェイプロトコルを用いた最大セグメント識別子深度の外部アプリケーションへの呈示 | |
US10742556B2 (en) | Tactical traffic engineering based on segment routing policies | |
US10454714B2 (en) | Method and system of overlay flow control | |
JP6250825B2 (ja) | データネットワークに最大冗長木(maximally redundant tree)をデプロイする方法およびシステム | |
CN107005481B (zh) | 用于网络中数据平面故障检测的装置及其中的方法 | |
US10257162B2 (en) | Method and system for providing “anywhere access” for fixed broadband subscribers | |
US9628380B2 (en) | Method and system for routing a network function chain | |
CN109075984B (zh) | 计算的spring组播的多点到多点树 | |
US9455917B2 (en) | Simplified approach to verify LFAS in deployment | |
CN109863725A (zh) | 基于最大分段标识符深度的分段路由 | |
US20150326469A1 (en) | Oam aided explicit path report via igp | |
CN103516602A (zh) | 服务工程路径的反馈回路 | |
US11128576B2 (en) | Method and system for completing loosely specified MDTS | |
US10291957B2 (en) | Quicker IPTV channel with static group on IGMP loopback interface | |
WO2016128946A1 (en) | Iptv targeted messages | |
WO2014108554A1 (en) | Technique for explicit path control | |
WO2017212316A1 (en) | Multicast service translation in internet protocol television systems | |
US20150036508A1 (en) | Method and Apparatus For Gateway Selection In Multilevel SPB Network | |
WO2017144944A1 (en) | Method and apparatus for improving convergence in a spring network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |