CN107040462A - 路由方法和中间路由器 - Google Patents
路由方法和中间路由器 Download PDFInfo
- Publication number
- CN107040462A CN107040462A CN201610862164.4A CN201610862164A CN107040462A CN 107040462 A CN107040462 A CN 107040462A CN 201610862164 A CN201610862164 A CN 201610862164A CN 107040462 A CN107040462 A CN 107040462A
- Authority
- CN
- China
- Prior art keywords
- router
- provider
- route
- provider edge
- ethernet
- 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.)
- Withdrawn
Links
Classifications
-
- 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/4604—LAN interconnection over a backbone network, e.g. Internet, Frame Relay
- H04L12/462—LAN interconnection over a bridge based backbone
- H04L12/4625—Single bridge functionality, e.g. connection of two networks over a single bridge
-
- 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/4633—Interconnection of networks using encapsulation techniques, e.g. tunneling
-
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network 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/02—Topology update or discovery
-
- 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/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- 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/66—Layer 2 routing, e.g. in Ethernet based MAN's
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
本发明涉及路由方法和中间路由器。通常,在一般情况下,本技术使中间路由器在EVPN的激活至激活模式下执行可操作地耦合到中间路由器的一个或多个其它PE路由器的节点保护。本技术可以包括:配置中间路由器在被动模式下操作,中间路由器被定位在服务提供商网络内,服务提供商网络在操作于以太网虚拟专用网络(EVPN)的激活至激活模式下的远程提供商边缘路由器与至少两个提供商边缘(PE)路由器之间,在被动模式下,中间路由器在不执行EVPN的层二(L2)地址学习的情况下检测以太网自动查找(AD)路由。
Description
相关申请的交叉引用
本申请要求于2015年9月29日提交的号为14/869,806的美国申请的优先权,其全部内容通过引用并入本文。
技术领域
本发明涉及计算机网络,且更具体地,涉及在计算机网络内转发的网络通信量。
背景技术
计算机网络是能够交换数据并共享资源的互连计算设备的集合。示例网络设备包括层二设备(layer two device)和层三设备(layer three device),层二设备在开放系统互连(OSI)参考模型的第二层(L2)(即,数据链路层)内操作,层三设备在OSI参考模型的第三层(L3)(即,网络层)内操作。计算机网络内的网络设备通常包括控制单元,其为用于路由或交换数据单元的网络设备和转发组件提供控制平面功能。
以太网虚拟专用网络(EVPN)可用于通过中间的层三(L3)网络(通常称为提供商网络),以透明(即,仿佛中间的L3网络不存在)的方式延伸两个或更多个远程层二(L2)的用户网络。具体是,EVPN经由中间网络传输在用户网络之间的L2通信,例如以太网数据包或者“帧”。在典型的配置中,耦接至用户网络的用户边缘(CE)网络设备的提供商边缘(PE)网络设备(例如,路由器和/或交换机)在提供商网络内定义切换路径标签(LSP)(也被称为伪线(pseudowire))来进行压缩的L2通信,仿佛这些用户网络被直接连接到相同的本地区域网(LAN)。在一些配置中,PE网络设备也可通过IP基础设施进行连接,在这种情况下,可以在网络设备之间使用IP/GRE通道或其它IP通道。
在EVPN中,使用路由协议的PE网络设备之间的MAC学习发生在控制平面内,而不是在数据平面内(如用传统的桥接一样)。例如,在EVPN中,PE网络设备通常使用边界网关协议(BGP)(即L3路由协议),以将从PE网络设备所连接的本地用户边缘网络设备所学习的MAC地址公告给其它提供商边缘网络设备。PE设备可以使用BGP路由公告消息以通告EVPN的可到达性的信息,其中,BGP路由公告指定由PE网络设备学习的一个或多个MAC地址,而不是L3路由信息。
在被称作全激活模式的EVPN配置中,以太网区段包括多个PE网络设备,其为一个或多个本地用户网络设备提供多宿主连接。此外,多个PE网络设备通过中间网络将传输服务提供给远程PE网络设备,并且以太网区段内的多个PE网络设备的每一个执行转发在用户网络设备的段中的以太网帧。当在提供多宿主连接的多个PE网络设备的一个中发生网络故障时,在EVPN内的上游PE网络设备可以通过BGP检测故障并退出故障的网络PE设备。然而,退出期间可能耗费很多秒,在此期间,网络通信量仍被转发到故障的网络设备PE并被丢弃。
发明内容
本文中所描述的技术能够使提供商(或“中间”)路由器执行用于一个或多个其它PE路由器的节点保护,其中,所述提供商路由器被定位在在太网虚拟专用网络(EVPN)操作于激活至激活模式(active-active mode)下的至少两个提供商边缘PE路由器与远程提供商边缘路由器之间。提供商路由器可以在被动模式(passive mode)下操作,在该被动模式下,提供商路由器执行EVPN协议以监听由PE路由器公告的以太网自动查找(AD)(EthernetAuto-Discovery)路由,但是不能执行MAC学习或者与其它PE路由器交换MAC路由。通过监听以太网AD路由,提供商路由器可以确定耦接到提供商路由器的PE路由器被包含在相同的以太网区段(Ethernet Segment)中。
由于提供商路由器能够确定PE路由器在相同的以太网区段内,因此提供商路由器可以在链路故障的情况下,通过将以太网区段的网络通信量重新引导至在相同的以太网区段中的操作于激活至激活模式下的另一个PE路由器,而为一个或多个PE路由器提供节点保护。对于从提供商路由器接收节点保护的每个PE路由器,提供商路由器可以生成包括备份路由的上下文表(context table),提供商路由器可以使用备份路由重新引导通信量远离受保护PE路由器。如果出现链路的故障,那么提供商路由器可以进行局部修复,以将网络通信量重新引导至在相同以太网区段内的另一个PE路由器,从而与通过其它PE路由器从以太网区段删除受保护PE路由器而进行的全局修复相比,防止更少的所丢弃的数据包。
在一些示例中,一种方法包括:将中间路由器配置为在被动模式下操作,该中间路由器被定位在服务提供商网络内,该服务提供商网络处于在以太网虚拟专用网络(EVPN)中操作在激活至激活模式下的至少两个提供商边缘(PE)路由器与远程提供商边缘路由之间,在该被动模式下,该中间路由器在不执行该EVPN的层二(L2)地址学习的情况下检测通过两个该提供商边缘(PE)路由器公告给该EVPN的该远程PE路由器的以太网自动查找(AD)路由;响应于检测该以太网AD路由,在该中间路由器的转发单元中设置从该中间路由器到至少两个该PE路由器中的受保护的路由器的主路由和从该中间路由器到至少两个该PE路由器中的另一个PE路由器的备份路由,其中,该主路由和该备份路由包括来自检测到的该以太网AD路由的相应的EVPN标签;并且响应于确定在该中间路由器的该转发单元内网络通信量不能到达受保护PE路由器,在不需要对该转发单元重新编程的情况下使用该备份路由转发该网络通信量。
在一些示例中,中间路由器包括路由引擎,该路由引擎将中间路由器配置为在被动模式下操作,该中间路由器被定位在服务提供商网络内,该服务提供商网络处于在以太网虚拟专用网络(EVPN)中操作于激活至激活模式下的至少两个提供商边缘(PE)路由器与远程提供商边缘路由器之间,在该被动模式下,该中间路由器在不执行该EVPN的层二(L2)地址学习的情况下检测通过该两个提供商边缘(PE)路由器公告给该EVPN的该远程PE路由器的以太网自动查找(AD)路由;其中,该路由引擎响应于检测该以太网AD路由,在该中间路由器的转发单元中设置从该中间路由器到至少两个该PE路由器中的受保护的路由器的主路由和从该中间路由器到至少两个该PE路由器的另一个PE路由器的备份路由,其中,该主路由和该备份路由包括来自检测到的该以太网AD路由的相应的EVPN标签;并且其中,该转发单元响应于确定在该中间路由器的该转发单元内网络通信量不能到达受保护PE路由器,在不需要对该转发单元重新编程的情况下使用该备份路由转发该网络通信量。
在一些示例中,计算机可读介质包括用于使中间路由器执行以下操作的至少一个可编成处理的指令:将中间路由器配置为在被动模式下操作,该中间路由器被定位在服务提供商网络内,该服务提供商网络处于在以太网虚拟专用网络(EVPN)中操作在激活至激活模式下的至少两个提供商边缘(PE)路由器与远程提供商边缘路由之间,在该被动模式下,该中间路由器在不执行该EVPN的层二(L2)地址学习的情况下检测通过两个该提供商边缘(PE)路由器公告给该EVPN的该远程PE路由器的以太网自动查找(AD)路由;响应于检测该以太网AD路由,在该中间路由器的转发单元中设置从该中间路由器到至少两个该PE路由器中的受保护的路由器的主路由和从该中间路由器到至少两个该PE路由器中的另一个PE路由器的备份路由,其中,该主路由和该备份路由包括来自检测到的该以太网AD路由的相应的EVPN标签;并且响应于确定在该中间路由器的该转发单元内网络通信量不能到达受保护PE路由器,在不需要对该转发单元重新编程的情况下使用该备份路由转发该网络通信量。
在附图和以下描述中阐述了本公开的一个或多个实施方式的细节。通过该描述、附图和权利要求,本公开内容的其它特征、目的和优点将变得显而易见。
附图说明
图1是示出了根据本公开内容的技术的示例系统的框图。
图2是示出了根据本公开内容的一个或多个技术的图1的示例性系统的另外的细节的框图。
图3是示出了能够执行所公开的技术的示例性提供商路由器的框图。
图4是示出了根据本公开内容的技术的多个网络设备的示例操作的流程图。
具体实施方式
图1是示出了根据本公开内容的技术的示例系统的框图。在图1的示例中,PE路由器10A至10C(“PE路由器10”)经由CE路由器8A至8B(“CE路由器8”)给与用户网络6A至6B(“用户网络6”)相关联的用户设备4A至4D(“用户设备4”)提供到服务提供商网络12的访问。通信链路16A至16H可以是以太网、ATM或任何其它合适的网络连接。
PE路由器10和CE路由器8被示出作为在图1的示例中的路由器。然而,可以使用加入层二(L2)的虚拟专用网络服务(诸如以太网虚拟专用网(EVPN))的交换机或其它适当的网络设备来实现本公开内容的技术。用户网络6可以是用于地理上分开的企业的站点的网络。每个用户网络6可以包括额外的用户设备4A至4D(“用户设备4”),例如,一个或多个非边缘交换机、路由器、集线器、网关、安全设备(例如防火墙、入侵检测,和/或入侵防御设备)、服务器、计算机终端、笔记本电脑、打印机、数据库、无线移动设备(诸如蜂窝电话或个人数字助理)、无线接入点、桥接器、电缆调制解调器、应用加速器,或其它网络设备。在图1中所示的网络2的配置仅是示例性的。例如,企业可以包括任何数量的用户网络6。尽管如此,为便于描述,仅在图1中示出用户网络6A至6B。
服务提供商网络12表示由服务提供商所拥有和操作的公开访问的计算机网络,其通常是大型电信实体或公司。服务提供商网络12通常是大的层三(L3)计算机网络,其中,“层”后面提到的数字指的是开放式系统互连(OSI)模型中的相应层。如在OSI模型中描述的,就服务提供商网络12在其本质上支持L3的操作的意义上来说,服务提供商网络12是L3网络。常见的L3操作包括那些按照L3协议(如互联网协议(IP))执行的操作。贯穿本公开内容,L3也被称为在OSI模型中的“网络层”,并且术语L3可以与短语“网络层”互换使用。
虽然未示出,但是服务提供商网络12可以耦接到由其它提供商管理的一个或多个网络,并因此可以形成大规模的公共网络基础设施(例如,互联网)的一部分。因此,用户网络6可被视为互联网的边缘网络。服务提供商网络12在用户网络6内可以提供能够访问互联网的计算设备,并且可以允许计算设备在用户网络内相互通信。
服务提供商网络12可以包括除了PE路由器10的各种网络设备。例如,服务提供商网络12可以包括提供商路由器18(或“中间路由器18”)。在一些示例中,提供商路由器18可以存在于服务提供商网络12内并沿两个或多个PE路由器之间的服务提供商网络12的路径存在。提供商路由器18可以是不在服务提供商网络12的边缘处的路由器。例如,提供商路由器18可以不直接耦接到用户网络的网络设备(如CE路由器),而是可以通过一个或多个跳段或其它路由器间接地以可通信地的方式耦接到用户网络的网络设备(诸如PE路由器)。例如,提供商路由器18可能不能由物理通信链路直接耦接到CE路由器的CE路由器8A,而是通过PE路由器10C间接地耦接到CE路由器8A。在一些示例中,提供商路由器18可以执行一个或多个协议,诸如BGP和EVPN,但也可以不执行MAC学习。如在本公开内容中进一步描述的,提供商路由器18可以在“被动模式”下进行操作,其中,提供商路由器18监听以太网自动查找路由(Ethernet Auto-Discovery Route),虽然它不执行MAC学习或存在于服务提供商网络12的边缘处。
虽然为了便于说明未示出额外的网络设备,但是应该理解的是,系统2可以包括额外的网络和/或计算设备,诸如,例如,一个或多个额外交换机、路由器、集线器、网关、安全设备(诸如防火墙、入侵检测,和/或入侵防御设备)、服务器、计算机终端、笔记本电脑、打印机、数据库、无线移动设备(诸如蜂窝电话或个人数字助理)、无线接入点、桥接器、电缆调制解调器、应用加速器,或其它网络设备。此外,虽然系统2的元件被示出为直接耦接,但是应当理解的是,沿任何网络的链路16可以包括一个或多个附加网络元件,以使得系统2的网络元件不被直接耦接。
服务提供商网络12通常提供了多种住宅的和商业的服务,包括住宅和商业类的数据服务(其通常被称为“互联网服务”,在这些数据服务中允许访问公开可访问网络的集合被称为互联网)、住宅和商业类电话和/或语音服务,以及住宅和商业类的电视服务。由服务提供商网络12提供的一种这样的企业级数据服务包括L2EVPN服务。例如,EVPN是将跨过中间L3网络建立的L2连接(诸如服务提供商网络12)提供到通常位于两个不同的地理区域的互联的两个L2用户网络(如L2用户网络6)的服务。通常,EVPN对于用户网络是透明的,其中,这些用户网络不知道介入了中间服务提供商网络,而是仿佛这两个用户网络直接连接并形成单一的L2网络而进行执行和操作。通过这种方式,EVPN能够建立两个各自操作L2网络的地理上遥远的用户站点之间透明LAN的连接,并且因为这个原因,EVPN也可以称作“透明LAN服务”。
为了配置EVPN,服务提供商的网络运营商配置包括在与L2用户网络6相连接的服务提供商网络12内的各种设备。EVPN配置可包括EVPN示例(EVI),它由一个或多个广播域组成。通常,EVI可以指PE路由器(诸如PE路由器10A至10C)上的路由和转发的情况。因此,多个EVI可以被配置在PE路由器10上用于以太网区段14,如本文进一步描述的,各自提供单独的、符合逻辑的层二(L2)转发域。以这种方式,多个EVI可以被配置为分别包括以太网区段14的PE路由器10A至10C中的一个或多个。在一些示例中,以太网标签随后被用于识别特定的广播域,例如,在EVI内的VLAN。PE路由器可以每<ESI,以太网标签>组合公告唯一的EVPN标签。这种标签分配方法被称为每<ESI,以太网标签>标签分配。可替代地,PE路由器可以每MAC地址公告唯一的EVPN标签。在又另一示例中,PE路由器可以公告在给定EVI内所有MAC地址的相同的单EVPN标签。这种标签分配方法被称为每EVI标签分配。
在图1的示例中,为了传输与一个或多个EVI相关联的通信,网络运营商配置PE路由器10以规定用于传输L2通信的伪线17A至17C。伪线是从两个单向标签可切换路径(LSP)形成的逻辑网络连接,其模拟了本质上不通过提供商网络12所提供的连接,用于该服务提供商网络12的边界之外的消耗。伪线可以通过L2用户网络6模拟服务提供商网络12内的L2连接,其能够使服务提供商网络12为该消耗提供所仿真的L2外部连接。因此,每个EVPN示例可以通过伪线17进行操作,以授权用户网络6之间的L2连接的逻辑形式。
为了配置EVI,可以配置伪线17使得提供给定EVI的每个PE路由器10通过伪线的方式被互联到分享EVI的所有其它PE设备的一个。在图1的示例中,每个PE路由器10提供了对用于执行与用户网络6相关联的通信量的EVPN的访问,并且因此,在相同以太网区段内的每个PE设备10可以经由伪线17被连接到所有其它的PE设备10。一旦以这种方式配置伪线,在PE设备10内EVPN可以被授权以通过伪线进行操作,在本上下文中这可以通过服务提供商网络12起到逻辑专用链路的作用。在操作中,EVPN通常涉及预先考虑或以其它方式将标签以及伪线标签插入到传入的L2数据包,其也可以称作L2帧(特别是在以太网的上下文),并通过所配置的伪线中相应的一个来传送标签的数据包。一旦EVPN被配置在服务提供商网络12内,用户网络6内的用户设备4可以通过EVPN与彼此进行通信,仿佛它们是直接连接的L2网络。
为了建立EVPN,在PE路由器10A至10C上执行的EVPN协议触发了以太网区段14的指定转发(DF)的选择。例如,这可以通过在PE路由器10A至10C的每个上执行的EVPN协议来实现,其分享引导路由器以输出公告以太网区段标识符(ESI)(其通常在所有EVPN的示例(EVI)是唯一的)的路由协议消息的以太网区段。此外,对于每个EVI,EVPN协议引导路由器以输出路由协议消息,该路由协议消息公告指定相关ESI的以太网自动查找(AD)的路由,用于耦接至EVPN示例的以太网区段。一旦EVPN对于{EVI,ESI}对是可操作的,PE路由器10A至10B将路由协议消息输出到远程PE路由器10C,以通告与用户网络6B内的用户设备相关联的媒体访问控制(MAC)地址。
例如,在通常的操作中,PE路由器10A至10C使用边界网关协议(BGP)进行通信,并且EVPN协议指定用于EVPN的BGP网络层可达信息(NLRI),且可经由BGP路由协议定义用于传送EVPN信息的不同路由类型。通常使用BGP多协议扩展在BGP内进行EVPN NLRI。通过使用BGP的PE路由器10A至10C的每个公告的以太网区段路由包括路由辨别符和以太网区段标识符。通过每个EVI的每个PE路由器10A至10C公告的以太网AD路由指定路由辨别符(RD)(例如,MPLS边缘交换机(MES)的IP地址)、ESI、以太网标签标识符,以及MPLS标签。通过EVPN的用户设备4的PE路由器10A至10C通告MAC地址输出的随后的BGP媒体访问控制(MAC)路由包括RD、ESI、以太网标签标识符、MAC地址和MAC地址长度、IP地址和IP地址长度,以及MPLS标签。
在其中PE路由器10A或10B中的一个从PE路由器10C转发网络通信量到CE路由器8B的激活至待机模式中,在每个PE路由器10A至10C上执行的EVPN协议基于每至EVPN示例发起以太网区段的EVPN DF选择,并分享每个EVPN示例的选择。也就是说,DF选择可以是以EVI组合的每个ESI的间隔尺寸。如果选择了DF,那么PE路由器10A至10C的一个被选择作为从EVPN到本地CE路由器8B的DF转发通信量。在“基于以太网VPN的BGP MPLS(“BGP MPLS BasedEthernet VPN”)”(draft-ietf-l2vpn-evpn-11,Internet Engineering Task Force(IETF),2014年7月2日)中描述了关于EVPN协议的更多的示例信息,通过引用将其全部内容并入本文。
在图1的示例中,当给用户网络6提供EVPN服务时,PE路由器10和CE路由器8通常执行MAC地址学习,以有效地在系统2内转发L2网络通信。也就是说,当PE路由器10和CE路由器8转发以太网帧时,路由器学习L2网络的L2状态信息,包括网络内的用户设备4以及物理端口的MAC地址信息,通过该物理端口可获取用户设备4。PE路由器10和CE路由器8通常存储与各接口相关联的MAC列表中的MAC地址信息。当转发在一个接口上接收的单个以太网帧时,路由器通常广播以太网帧给与EVPN相关联的所有其它接口,除非该路由器以前学习了特定的接口,通过该接口可获取在以太网帧内指定的目的地MAC地址。在这种情况下,路由器将以太网帧的单个副本转发到相关联的接口之外。
另外,当PE路由器10学习通过本地附接电路可获取的用户设备4的MAC地址时,PE路由器10使用层三(L3)路由协议的MAC地址路由公告(本示例中的BGP)以共享发所学习到的MAC地址,并提供可通过特定PE路由器(其发出路由公告)获取的MAC地址的指示。在对于给定的EVI使用PE路由器10实现的EVPN中,每个PE路由器10使用BGP的路由公告来将本地学习的MAC地址公告给其它PE路由器10,在此也称为“MAC路由”或“MAC公告路由”。如下面进一步描述的,MAC路由通常指定用户设备4的单个MAC地址,以及额外的转发信息,诸如路由描述符、路由目标、2层段标识符、MPLS标签等。以这种方式,当转发与EVPN相关联的层二通信时,PE路由器10使用BGP公告并共享所学习到的MAC地址。因此,PE路由器10可以执行MAC地址的本地学习和远程学习。
每个PE路由器10(例如,PE路由器10B)利用指定通过其它PE路由器学习到的MAC地址的MAC路由来确定如何将L2通信转发到MAC地址,其将连接到其它PE的用户设备4归属于远程CE路由器和/或用户设备(在可操作地耦接到PE路由器的CE路由器后面)。也就是说,每个PE路由器10确定以太网帧是否可以直接被发送到其它PE路由器10的特定的一个,或是否将以太网帧当做所谓的“BUM”通信(广播,不能确认的单播或多播通信量),其在基于从其它PE路由器接收到的MAC地址学习信息的EVPN内被淹没。
如在图1中所示,CE路由器8可以被多次和/或单独地宿主(singly-homed)到PE路由器10的一个或多个。在EVPN中,当PE路由器存在于同一个物理以太网区段时,CE路由器被耦接到相同EVI上的两个物理上不同的PE路由器时,CE路由器可以说是多宿主的。作为一个示例,CE路由器8B通过链路16D和16E被分别耦接到PE路由器10A和10B,其中PE路由器10A和10B能够经由CE路由器8B提供对L2用户网络6B的EVPN的访问。在其中给定的用户网络(如用户网络6B)可以经由两个不同的以及在某种程度上冗余的链路被耦接到服务提供商网络12的示例中,该用户网络可被称为是“多宿主的”。在本例中,CE路由器8B对于PE路由器10A和10B可以是多宿主的,因为CE路由器8B通过单独的并在一定程度上,冗余的链路16D和16E被耦接至两种不同的PE路由器10A和10B,其中,PE路由器10A和10B两者能够提供对L2用户网络6B的EVPN的访问。通常由网络运营商采用多宿主网络,以便改善在链路16D、16E以及16F之一发生故障时,由服务提供商网络12提供的对EVPN的访问。在一般的EVPN配置中,只有多宿主的PE 10A至10B分享每个ESI的DF选择。未连接到ESI的PE 10C不具有给定的ESI的DF选择结果的直接知识。
在激活至激活模式配置中,远程PE 10C通常被配置为设置ESI的MAC路由,使得流到用户网络6B的下游通信量在分别包括在ESI的PE路由器10A和10B之间是平衡的。在图1的示例中,可以在EVPN激活至激活模式下配置PE路由器10A和10B,因此,PE路由器10C使得到PE路由器10A和10B之间的用户网络6B的下游网络通信量负载平衡。在激活至激活模式下,PE路由器10A和10B的每个可以被配置作为同一个以太网区段的一部分,因此具有相同的以太网区段标识符。PE路由器10A和10B可以对于指定各自的IP地址的PE路由器10C和每个PE路由器10A和10B的ESI各自公告以太网AD路由。以这种方式,PE路由器10C可以配置其转发单元(或“转发引擎”)的一个或多个以使去往PE路由器10A和10B之间的用户网络6B的网络通信量负载平衡。
如在图1中所示的EVPN可以操作多协议标签交换(MPLS)配置的网络,并相应地使用MPLS标签以转发网络通信量。MPLS是用于在根据由网络内的路由器保持的路由信息的互联网协议(IP)网络内来设计通信量模式的机制。通过利用MPLS协议(如标签分发协议(LDP)或具有通信量工程扩展的资源预留协议(RSVP至TE)),源设备可以请求通过网络到目的地设备的路径,即,标签交换路径(LSP)。LSP定义了通过网络进行从源设备到目的地设备的MPLS数据包的不同的路径。使用MPLS协议,每个路由器沿LSP分配标签,并将该标签沿着路径传播到最接近的上游路由器。沿着路径的路由器添加或移除该标签,并执行其它MPLS操作以沿着既定路径转发MPLS数据包。
如在图1的示例中所示,PE路由器10A至10C和提供商路由器18可以提供MPLS核心,用于将网络数据包从用户网络6A发送到用户网络6B以及从用户网络6B发送到用户网络6A。PE路由器10A至10C的每个根据在每个相应PE路由器内配置的路由和转发信息来实施MPLS协议,并将一个或多个MPLS标签(即标签堆栈)应用到网络数据包。在EVPN中,应用到网络数据包的标签堆栈可以包括多个标签。例如,标签堆栈可包括外部标签和内部标签。
外部标签用作唯一标识MPLS核心内的PE路由器的“传输标签”。也就是说,PE路由器10A至10C的每一个可以交换在配置和启动时指定唯一标识每个相应的PE路由器的外部标签的控制平面消息。例如,PE路由器10A可以将指定标识PE路由器10A的外部标签的控制平面消息发送到PE路由器10B至10C。PE路由器10B至10C可以配置它们各自的转发单元,使包括对应于PE路由器10A的外部标签的网络数据包被转发到PE路由器10A。
MPLS标签堆栈的内部标签,或者“服务标签”提供了特定EVPN配置信息。如上所述,EVPN定义了以太网AD路由、MAC公告路由,以及以太网区段路由。例如,可以根据下面的表1的格式来构造以太网AD路由:
路由描述符(8个八位字节) |
以太网区段标识符(10个八位字节) |
以太网标签ID(4个八位字节) |
MPLS标签(3个八位字节) |
表1:AD路由公告
在一个示例中,PE路由器10A在最初启动和配置时将包括如上所示的MPLS标签的以太网AD路由发送到PE路由器10C。当标签堆栈内的内部标签被应用到去往PE路由器10A的网络数据包时,PE路由器10C可以从PE路由器10A配置其转发单元的一个或多个,以应用以太网AD路由的MPLS标签。然后,PE路由器10C将应用标识PE路由器10A的传输标签作为标签堆栈内的外部标签。以这种方式,内部标签通过EVPN提供关于以太网AD路由的EVPN至说明的配置信息,PE路由器10C使用该配置信息转发网络数据包。
在EVPN架构(如图1)中,链路(如提供商路由器18和PE路由器10B之间的17B)可能会故障。在这种示例中,PE路由器10C只有通过确定PE路由器10C和10B之间的BGP相邻关系已经故障了才可以确定链路17B故障了。一旦PE路由器10C已确定PE路由器10B不再能够将网络通信量转发到用户网络6B,那么PE路由器10C可以通过从包含之前包括PE路由器10A和10B的以太网区段的部分的相邻列表删除PE路由器10B来进行校正。在更新相邻列表时,PE路由器10C可以随后开始仅将通信量发送给PE路由器10A,并停止使PE路由器10A和10B之间的网络通信量负载平衡。
由于BGP是控制平面的消息协议,PE路由器10C可能无法确定链接17B出现故障的秒数,或者网络通信量不再通过PE路由器10B从PE路由器10C流到CE路由器8B的秒数。尽管由于通信链路17B发生故障在提供商路由器18B处的通信量将会下降,但是PE路由器10C可以继续将通信量发送到PE路由器10B可能的秒数,直到PE路由器10A采取校正措施以从相邻的列表删除PE路由器10B并开始将通信量发送到PE路由器10A。
本公开内容的技术可以通过在链路17B或PE路由器10B发生故障的情况下在提供商路由器18处进行局部修复,来减小在提供商路由器18处网络通信量被丢弃的时间量。在链路17B或PE路由器10B的故障的情况下通过在提供商路由器18处进行局部修复,可以将网络通信量被丢弃的时间量从秒减小到毫秒级,如小于100或50毫秒。为了在提供提供商路由器18处提供局部修复,本公开内容的技术可以配置提供商路由器18在“被动模式”下运行BGP和EVPN。在被动模式下的一些示例中,提供商路由器18将不执行由其它在EVPN中的PE路由器执行的任何MAC学习,并且提供商路由器18将是EVPN路由的纯监听器。在被动模式的一些示例中,提供商路由器18将仅是指定类型的EVPN路由(如以太网AD路由)的纯监听器。
在图1的示例中,提供商路由器18可以被配置为在被动模式下操作。这样,当PE路由器10A和10B将以太网AD路由公告给PE路由器10C时,提供商路由器18可以监听这种以太网的AD路由,并且进一步处理以太网AD路由的内容,而不是仅仅将以太网AD路由转发至PE路由器10C。具体地,当监听以太网AD路由时,提供商路由器18可以检查传入的数据包的数据包报头,并确定该数据包指定了以太网AD路由。提供商路由器18可以存储与以太网AD路由相关联的信息,如路由描述符(或PE路由器的IP地址)、以太网区段标识符,或包括在以太网AD路由内的任何其它信息。提供商路由器18可将指定以太网AD路由的数据包转发到其目的地。
提供商路由器18可以从PE路由器10A和10B匹配的每个确定以太网AD路由内的ESI。例如ESI可以是为200的值。由于以太网AD路由的ESI是相同的,因此提供商路由器18可确定PE路由器10A和10B的每个都包含在对应于相同的ESI 200的以太网区段14内。由于提供商路由器18已确定PE路由器10A和10B的每个都包含在以太网区段14内,因此在链路17B或PE路由器10B发生故障时,提供商路由器18可以通过提供局部修复来保护PE路由器10B。在一些示例中,如图1,提供商路由器18可以通过通信链路被直接耦接到PE路由器10B,即,提供商路由器18可以是从PE路由器10B的一个跳段。
响应于基于以太网AD路由确定PE路由器10A和10B都包含在以太网区段14内,提供商路由器18可以在一个或多个提供商路由器18的转发单元的转发结构(例如,转发列表、上下文表、基数树、下一个跳段列表、链状的下一个跳段等)内设置主路由和备份路由,以在链路17B或PE路由器10B发生故障的情况下提供局部修复。具体地,主路由可以是从提供商路由器18至PE路由器10B的路由。当使用主路由转发通信量时,提供商路由器18可以数据包的外或“顶”标签上进行查找,以确定对应于PE路由器10C和提供商路由器18之间的LSP的传输标签。提供商路由器18可以使用将提供商路由器18耦接到PE路由器10B的提供商路由器18的外部接口将主路由存储在转发列表中,其中,主路由指定转发动作以删除外部的传输标签,并转发网络数据包。当链路17B或PE路由器10B没有发生故障时,提供商路由器18可以最初使用指定PE路由器10B的内部标签将数据包转发到具有EVPN标签堆栈的PE路由器10B。因为PE路由器10B距离图1的提供商路由器18一个跳段,因此可能没有必要将额外的传输标签添加到被转发至PE路由器10B的数据包。如果PE路由器10B距离提供商路由器18的多跳段,那么提供商路由器18可在供商路由器18和PE路由器10B之间附加对应于LSP的一个或多个传输标签,从而打通数据包到PE路由器10B的通道。打开数据包的通道的额外的传输标签可以通过使用RSVP至TE、SPRING、LDP或任何其它合适的协议的PE路由器10A至10C以及提供商路由器18进行交换。
如上所述,提供商路由器18还可以在提供商路由器18的一个或多个转发单元的转发结构内设置从提供商路由器18到PE路由器10A的备份路由。如在图2至图4中进一步描述的,除了包括主路由的转发列表,提供商路由器18还可以保持上下文表,用于提供商路由器18为其提供保护和局部修复的每个PE路由。上下文表可包括表示为查找值(或解答)对的路由以及对应于转发动作的路由。提供商路由器18可以将备份路由存储在由提供商路由器18保持的PE路由器10B的上下文表内。包括主路由的转发列表可以包括上下文表的指针、参考或其它包括备份路由的标识符。更具体地,提供商路由器18可以将对应于PE路由器10C和提供商路由器18之间的LSP的传输标签值的查找值存储在转发列表中。用于查找值的转发动作可以包括最初使用主路由转发匹配查找值的数据包,但是如果链路17B或PE路由器10B出现故障,那么为了使用存储在上下文表内的备份路由转发数据包,选择上下文表的指针、引用或其它标识符。
当将备份路由存储在上下文表中时,提供商路由器18可以存储通过以太网区段14的PE路由器10B公告的内部标签作为查找值,并且存储相应的转发动作,其将具有EVPN标签堆栈的数据包的内部标签与通过以太网区段14的PE路由器10A公告的内部标签进行交换。转发动作还可以指定使用提供商路由器19的接口转发数据包,该提供商路由器19直接通过单个跳段或间接通过一系列跳段将提供商路由器18耦接到PE路由器10A。如果PE路由器10A距离提供商路由器18的多跳段,那么提供商路由器18可在提供商路由器18和PE路由器10A之间附加对应于LSP的一个或多个传输标签,从而打开数据包到文PE路由器10A的通道。打开数据包的通道的额外的传输标签可以通过使用RSVP至TE、SPRING、LDP或任何其它合适的协议的PE路由器10A至10C以及提供商路由器18进行交换。
一旦设置了主路由和备份路由,提供商路由器18最初可以配置其一个或多个转发单元采用主路由来转发网络通信量,而链路17B和PE路由器10B可以将网络数据包转发到用户网络6B。当检测到链路17B或PE路由器10B已经出现故障时,提供商路由器18可以配置它的一个或多个转发单元停止使用主路由,并开始使用备份路由。例如,提供商路由器18可以通过物理通信链路17B直接连接到PE路由器10B。提供商路由器18可以具有物理接口,该物理接口将通信链路17B耦接到设置有主路由和备份路由的提供商路由器18的转发单元。这样,转发单元可以检测通信链路17B是否出现故障,诸如由于检测到的压降或失去连接。在这些示例中,提供商路由器18的转发单元可以检测毫秒级的通信链路17B的故障。
当配置主路由和备份路由时,提供商路由器18可以接收包括EVPN标签堆栈的网络数据包,EVPN标签堆栈包括用于提供商路由器18和PE路由器10C之间的LSP的外部传输标签,以及之前通过具有以太网AD路由的PE路由器10B公告的内部标签。提供商路由器18可对外部标签进行查找,并执行相应的转发动作以删除外部标签并转发网络数据包到PE路由器10B。
响应于由于链路17B出现故障而稍后确定提供商路由器18无法将网络通信量发送到受保护PE路由器10B,提供商路由器18使用备份路由更新其转发单元,以转发网络通信量。例如,提供商路由器18可以接收包括EVPN标签堆栈的网络数据包,该EVPN标签堆栈包括于提供商路由器18和PE路由器10C之间的LSP的外部传输标签,以及之前通过具有以太网AD路由的PE路由器10B公告的内部标签。由于链路17B出现了故障,因此当提供商路由器18在数据包的外部标签上进行查找时,提供商路由器18可以选择上下文表的指针、参考或其它标识符,,并基于关于上下文表的查找来执行对应于该数据包的内部标签的备份路由的转发动作。具体地,提供商路由器18可以将对应于PE路由器10B的数据包的内部标签与先前由PE路由器10A公告的内部标签进行交换。如果PE路由器10A距离提供商路由器18一个跳段以上,那么提供商路由器18可以附加之前由PE路由器10A公告的外部传输标签。然后,提供商路由器18可以使用可通信地将提供商路由器18耦接至PE路由器10A的接口将数据包转发给PE路由器10A。
通过检测链路17B的故障,并立即使用备份路由执行局部修复以转发网络数据包,在提供商路由器18处实现的本公开内容的技术可减小数据包被丢弃的时间量,而PE路由器10C执行全局修复以仅将数据包重新引导至PE路由器10A。也就是说,在PE路由器10C从其ESI的相邻的列表退出PE路由器10B的时候,提供商路由器18可以重新路由数据包至PE路由器10A(其是在相同的ESI内),而不是丢弃数据包。通过在被动模式下操作提供商路由器18,提供商路由器18能够预先识别在相同的以太网区段内于激活至激活模式下操作的PE路由器,并配置备份路由,以在链路故障的情况下进行局部修复,从而有可能减少在链路17B或PE路由器10B出现故障的情况下可在提供商路由器18丢弃的数据包的时间量。
图2是示出了根据本公开内容的一个或多个技术的图1的示例性系统的进一步的细节的框图。图2示出如关于图1所描述的系统2的组件。在图2中,在初始配置和启动时,PE路由器10A至10C可以交换或以其它方式公告如在图1中所示的以太网AD路由。例如,在图2中,PE路由器10A可以将包括标签L2的以太网AD路由公告到PE路由器10C和10B的每个。标签L2可以是包括PE路由器10A的ESI 200的MPLS标签。PE路由器10C可以包括MPLS标签,作为从PE路由器10C发送到PE路由器10A的EVPN网络数据包的内部标签。PE路由器10B也可以将包括标签L1的以太网AD路由公告到PE路由器10A和10C的每个。标签L1可以是用于包括PE路由器10B的ESI 200的MPLS标签。PE路由器10C可以包括MPLS标签,作为从PE路由器10C发送到PE路由器10B的EVPN网络数据包的内部标签。
如在图1中所述,PE路由器10A至10C和提供商路由器18可以提供MPLS核心,以在服务提供商网络12内转发网络数据包。为提供MPLS核心,PE路由器10A至10C和提供商路由器18可以执行MPLS协议。PE路由器10A至10C和提供商路由器18可以作为MPLS协议的一部分,将传输标签公告到服务提供商网络12的一个或多个其它的路由器。传输标签可对应于网络设备之间的服务提供商网络的特定路径或通道。例如,提供路由器18可以公告对应于PE路由器10C和提供商路由器18之间的路径或通道的传输标签T1。
基于使用等价多路径路由(ECMP)和/或最佳路径路由所确定的路由,PE路由器10A至10C的每个以及提供商路由器18可以配置它的转发状态,以将MPLS标签(对应于网络内的其它节点)推导及跳段到数据包,从而使用所确定的到目的地的路由转发这种数据包。例如,PE路由器10A至10C的每个和提供商路由器18可以使用通过网关协议(如BPG或内部网关协议(IGP))的方式所学习到的拓扑信息来执行路径的选择,以基于通过路由器保持的路由信息来计算在逐跳段(hop-by-hop)的基础上的服务提供商网络12内的最短路径。然后,当将通信量转发到接口外时,每个PE路由器10A至10C和提供商路由器18可以选择沿本地计算最短路径的下一个跳段,并将与所选择的下一个跳段相关的转发信息设置在路由器的转发平面内,其中,当应用转发通信量以及一个或多个标签时,转发信息确定待使用的网络接口。路由器使用具有所分配的标签下一个跳段以逐跳段地转发通信量。
在图2的示例中,PE路由器10C可以确定作为下一个跳段的从PE路由器10C到用户网络6B的路径包括提供商路由器18。这样,因为用户网络6B是可获取的,因此PE路由器10C可以将传输标签T1应用到经由提供商路由器18发往用户网络6B网络的数据包。提供商路由器18可以在路由用户网络6B内进行对数据包的传输标签T1的查找,根据它的转发状态,以及和交换、弹出或其它方式更新数据包的标签堆栈,以便将数据包转发到下一个跳段,如PE路由器10A或PE路由器10B。
在图2中,提供商路由器18可以监听由PE路由器10A和10B发送到PE路由器10C的以太网AD路由。例如,提供商路由器18可以从指定路径描述符(如IP地址4.4.4.4)、以太网区段标识符(如200)、以太网标签ID以及MPLS标签(如L2)的PE路由器10A截取以太网AD路由。提供商路由器18可以从指定路径描述符(如IP地址5.5.5.5)、以太网区段标识符(如200)、以太网标签ID以及MPLS标签(如L1)的PE路由器10B截取以太网AD路由。提供商路由器18可进一步处理如在本公开内容中描述的以太网AD路由,但是也可以将以太网AD路转发到PE路由器10C。
提供商路由器18可确定用于每个以太网AD路由的ESI 200是相同的。因此,在一些示例中,提供商路由器18可以提供用于PE路由器10B的保护。例如,提供商路由器18可以生成用于主路由和备份路由的转发表,如在表1中所示:
表1
如表1所示,提供商路由器18存储由提供商路由器18公告给PE路由器10C的传输标签T1的查找值。表1还包括两个不同的转发动作—用于主路由(主)的第一转发动作,以及用于备份路由(备份)的第二转发动。→指示符指示激活哪个转发动作用于查找值。如在图1中所示,如果提供商路由器18接收具有传输标签T1的网络数据包,则它将执行查找,并执行用于主路由的转发动作,因为→指示符指示主路由被激活。如在图3中所述的,使用下一个跳段列表(其中,选择器块指示哪个转发动作被激活)在提供商路由器18内实现转发动作的选择。
在表1中,用于主路由的转发动作包括弹出或者从网络数据包删除外部传输标签T1,并将出口接口ifl1外的数据包转发至对应于PE路由器10B的IP地址5.5.5.5。因为PE路由器10B距离提供商路由器18一个跳段,并经由通信链路17B通过ifl1被耦接,因此提供商路由器18无需附加任何额外的传输标签。如果PE路由器10B距离提供商路由器18的多于一次的跳段,那么主路由的转发动作可以包括将一个或多个附加传输标签推导到对应于从提供商路由器18至PE路由器10B的通道的数据包。
表1还包括用于备份路径的转发动作。具体地,转发动作包括弹出外部传输表T1,并基于如在表2中所示的table__5.5.5.5.mpls.0__的上下文表中指定的备份路由上进一步处理网络数据包。具体地,在表1中用于备份路由的转发动作可以包括由提供商路由器18使用的指针、参考或其它标识符,以确定PE路由器10B的上下文表。
如在表2中所示,提供商路由器18可以生成用于由提供商路由器18存储并使用的PE路由器10B的上下文表。上下文表可以包括如在表2中所示的备份路由:
表2:Table__5.5.5.5.mpls.0__
在如表2所示的上下文表中,查找值是先前由PE路由器10B公告的MPLS标签L1。转发动作包括用内部标签L1交换先前由PE路由器10A在其以太网AD路由内公告的标签L2。通过用标签L1交换标签L2,最初具有L1的内部标签的数据包在交换之后将不包括标签L1,而是包括标签L2。除了交换内部标签,如果PE路由器10A距离提供商路由器18的一次的跳段,并且经由通信链路17A被ifl2耦接,那么提供商路由器18不必要附加任何额外的传输标签。如在图2中,如果PE路由器10A距离提供商路由器18的多于一次的跳段,那么用于备份路由的转发动作可以包括将一个或多个附加传输标签推导到对应于从提供商路由器18至PE路由器10A的通道的数据包。在任何一种情况下,当使用备份路由时,提供商路由器18可以利用接口ifl2转发网络数据包至PE路由器10A,该接口ifl2被耦接到包括在提供商路由器18和PE路由器10A之间的路径内的网络设备。
当配置主路由和备份路由时,提供商路由器18可以接收包括EVPN标签堆栈的网络数据包,EVPN标签堆栈包括用于提供商路由器18和PE路由器10C之间的LSP的外部传输标签,以及以前由具有以太网AD路由的PE路由器10B公告的内部标签L1。提供商路由器18可以执行对外部标签T1的查找,并执行对应于如在表1中所示的主路由的转发动作。
响应于稍后确定由于链路17B的故障提供商路由器18无法将网络通信量发送到受保护PE路由器10B,提供商路由器18可以使用备份路由更新其转发单元,以转发网络通信量。例如,提供商路由器18可以接收包括EVPN标签堆栈的网络数据包,该EVPN标签堆栈包括外部传输标签T1和内部标签L1。因为链路17B出现了故障,因此当提供商路由器18执行对外部标签T1的查找时,提供商路由器18可以选择上下文表的指针、参考或其它标识符,并基于对上下文表的查找执行应于该数据包的内部标签的备份路由的转发动作。例如,提供商路由器18可以更新表1以使如在表3中所示的备份路由激活:
表3
如在表3中的指示符→所示,备份路由现在是激活的并被提供商路由器18用于转发具有传输标签T1的网络数据包。
基于如在表2中所示的备份路由的转发动作,提供商路由器18可以将对应于PE路由器10B的数据包的内部标签L1与先前由PE路由器10A公告的内部标签L2进行交换。如果PE路由器10A距离提供商路由器18的多于一个的跳段,或者如果提供商路由器18距离PE路由器10A一个跳段,则提供商路由器18可以应用任何额外的传输标签,然后,提供商路由器18可以在不给数据包附加任何额外的传输标签的情况下转发网络数据包。然后提供商路由器18可以使用将提供商路由器18经由通信链路17A耦接到PE路由器10A的接口ifl2而将网络数据包转发到PE路由器10A。
图3是示出能够执行所公开的技术的示例性的提供商路由器18的框图。通常,提供商路由器18可以进行基本上类似于图1的提供商路由器18的操作。在本示例中,提供商路由器18包括接口卡88A至88N(“IFC 88”),它经由导入链路90A至90N(“导入链路90”)接收数据包,并经由出站链路92A至92N(“出站链路92”)发送数据包。IFCs 88通常经由多个接口端口耦接到链路90、92。供商路由器18还包括控制单元82,其确定所接收的数据包的路由并相应地经由IFCs 88转发该数据包。
控制单元82可以包括路由引擎84和数据包转发引擎86。路由引擎84操作作为提供商路由器18的控制平面,并包括操作系统,该操作系统提供用于执行多个并发进程的多任务操作环境。例如,路由引擎84执行软件指令以实现一个或多个控制平面的网络协议97。例如,协议97可以包括用于与其它路由设备交换路由信息并用于更新路由信息94的一个或多个路由协议(如边界网关协议(BGP)99)。协议97还可以包括多协议标签交换协议(MPLS)95,用于打开服务提供商网络12内的数据包的通道。
路由协议后台程序(RPD)99可使用协议97来与其它路由器交换存储在路由信息94内的路由信息。路由信息94可以包括定义网络的拓扑的信息。RPD 99可以解决由路由信息94内的路由信息限定的拓扑结构,以通过网络来选择或确定一个或多个路由。然后RPD 99可以生成转发信息106,并用从转发信息106的路由更新转发平面86。
路由信息94可以描述提供商路由器18存在于其中的计算机网络的拓扑,并且还可以包括通过计算机网络内的共享树的路由。路由信息94描述在计算机网络内的各种路由,以及针对每个路由的适当的下一个跳段,即,沿着每个路由的相邻的路由设备。路由引擎84分析所存储的路由信息94并生成用于转发引擎86的转发信息106。,例如,转发信息106可以将用于特定多播组的网络目的地与特定的下一个跳段和相应的IFCs 88以及输出链路92的输出端口相关联。转发信息106可以是编程到专用转发芯片的基数树、一系列表、复杂的数据库、链路列表、基数树、数据库、平面文件,或其它各种数据结构。
此外,路由引擎84执行EVPN协议87,其操作以与其它路由器进行通信,以建立并保持EVPN(诸如图1的EVPN),用于通过中间网络传输L2的通信,以便通过中间网络在逻辑上扩展以太网。例如,EVPN协议87可以与在远程路由器上执行的EVPN协议进行通信。如在本公开内容中所描述的,BGP 93和/或EVPN 87可以在被动模式下进行操作。在被动模式中的一些示例中,EVPN 87将不执行通过在EVPN内的其它PE路由器执行的任何MAC学习,并且提供商路由器18将成为EVPN路由的纯监听器。在被动模式一些示例中,提供商路由器18将仅是特定类型的EVPN路由的(诸如以太网AD路由)纯监听器。在示例性实施方式中,BGP 93和EVPN87根据在本文中所描述的技术操作,以便监听并处理已经由其它PE路由器10发送的每EVI路由的以太网A至D。
在一些示例中,转发引擎86布置转发结构作为下一个跳段的数据,其可以沿着网络设备的内部数据包转发路径被链在一起作为一系列的“跳段”。在许多情况下,转发结构执行包括在转发引擎86的ASIC的内部存储器中的查找操作,其中,可以执行对树(或线索)搜索、表(或索引)搜索的查找。用下一个跳段指定的其它示例性操作包括过滤器的确定和应用,或者比例限制器的确定和应用。查找数据结构(例如,查找树)内的查找操作位于匹配数据包内容或数据包或数据包流的其它特性(如数据包的入接口)的项之内。根据通过ASIC内的下一个跳段转发结构限定的操作的数据包的处理结果确定了一种方式,通过该方式数据包通过转发引擎86从它的IFC 88中的一个输入接口转发到到IFC 88中的一个的输出接口,或者以其它方式被处理。
在图3中,转发引擎86可以监听由PE路由器10A和10B发送到PE路由器10C的以太网AD路由。例如,转发引擎86可以从指定路由描述符、以太网区段标识符、以太网标签ID和MPLS标签的PE路由器10A截取指定以太网AD路由的数据包。转发引擎86可以从指定路由描述符、以太网区段标识符、以太网标签ID和MPLS标签的PE路由器10B截取以太网AD路由。如果转发引擎86确定该数据包指定以太网AD路由,则个转发引擎86可以将数据包数据发送到保护模块101。
保护模块101可确定每个以太网AD路由的ESI都是相同的。因此,在一些示例中,提供商路由器18可以提供PE路由器10B的保护。例如,保护模块101可以使RPD 99生成或更新用于主路由和备份路由的转发表,如图2的表1所示。RPD 99将由提供商路由器18公告到PE路由器10C的传输标签T1的查找值存储在转发信息106内。转发表还包括两个不同的转发动作,用于主路由(主)的第一转发动作,以及用于备份路由(备份)的第二转发动作。
在转发信息106内由RPD 99配置的转发表中,用于主路由的转发动作包括从网络数据包弹出或者删除外部传输标签T1,并将出口接口ifl1(例如,IFC 88A)外的数据包转发至对应于PE路由器10B的IP地址5.5.5.5。在转发信息106内由RPD 99配置的转发表还包括用于备份路由的转发动作。具体地,转发动作包括弹出外部传输标签T1,并基于在图2的表2中所示的上下文表table__5.5.5.5.mpls.0__指定的备份路由进一步处理网络数据包。具体地,表1中的备份路由的转发动作可以包括由提供商路由器18使用的指针、参考或其它标识符以确定PE路由器10B的上下文表。
在如表2所示的上下文表中,查找值是先前由PE路由器10B公告的MPLS标签L1。转发动作包括用内部标签L1交换先前由PE路由器10A在其以太网AD路由内公告的标签L2。通过用标签L1交换标签L2,最初具有L1的内部标签的数据包在交换后将不包括标签L1,而是包括标签L2。当使用备份路由时,转发引擎86可使用接口ifl2(例如,IFC 88B)将网络数据转发到PE路由器10A,其被耦接到包括在提供商路由器18和PE路由器10A之间的路径内的网络设备。
RPD 99可以配置转发信息106以包括对应于主路由和备份路由的一个或多个下一个主跳段和下一个备份跳段。例如,RPD 99可以配置在转发信息106内的主路由的下一个主跳段。下一个主跳段使转发引擎86按照主路由处理数据包。RPD 99也可以配置在转发信息106内的备份路由的下一个备份跳段。下一个备份跳段使转发引擎86按照备份路由处理数据包。
RPD 99可以包括存储在转发信息106内的下一个跳段列表内的下一个主跳段和下一个备份跳段的每个。下一个跳段列表可以具有激活元件和一个或多个未激活元件。因此,RPD 99最初可以配置转发信息106,使得激活元件最初是下一个主跳段且下一个备份跳段是未激活元件。在一些示例中,在下一个跳段列表中的每个元件可具有权重。激活元件可以具有最低的分配权重,且下一个备份跳段可以具有比激活元件的权重高的权重。
因此,提供商路由器18可以接收包括EVPN标签堆栈的网络数据包,该EVPN标签堆栈包括用于提供商路由器18和PE路由器10C之间的LSP的外部传输标签,以及之前通过具有以太网AD路由的PE路由器10B公告的内部标签。提供商路由器18可以执行对外部标签T1的查找,并执行对应于在图2的表1中所示的主路由的转发动作。
在稍后的时间,转发引擎86可确定由于链路17B的链路故障,提供商路由器18无法将网络通信量发送到受保护PE路由器10B。例如,转发引擎86可确定IFC 88A不再与PE路由器10B连接。转发引擎86可以根据转发信息106,使用备份路由配置转发引擎86以转发网络通信量。例如,转发引擎86可将下一个跳段列表内的激活元件设置成对应于备份路由的下一个备份跳段。在这种示例中,转发引擎86可以在不需要通过路由引擎84重编程转发引擎86的情况下,使用备份路由设置激活元件。例如,转发引擎86可以将对应于备份路由的下一个跳段的权重设置成低于对应于主路由的下一个跳段的权重。
提供商路由器18可以接收包括EVPN标签堆栈的后续网络数据包,该EVPN标签堆栈包括外部传输标签T1和内部标签L1。由于链路17B出现了故障,因此当转发引擎86执行对外部标签T1的查找时,转发引擎86可以选择上下文表的指针、参考或其它标识符,并基于对上下文表的查找执行对应于该数据包的内部标签的备份路由的转发动作。
基于用于备份路由的转发动作,转发引擎86可以将对应于PE路由器10B的数据包的内部标签L1与先前由PE路由器10A公告的内部标签L2进行交换。如果PE路由器10A距离提供商路由器18的一个跳段以上,或者如果提供商路由器18距离PE路由器10A一个跳段,则转发引擎86可以应用任何额外的传输标签,然后,提供商路由器18可以在不给数据包附加任何额外的传输标签的情况下转发网络数据包。然后,提供商路由器18可以使用将提供商路由器18经由通信链路17A耦接到PE路由器10A的接口ifl2(例如,IFC 88B)而将网络数据包转发到PE路由器10A。
在图3中所示的提供商路由器18的结构仅用于示例性目的。本发明并不限于此结构。在其它示例中,可以以各种方式来配置提供商路由器18。在一个示例中,控制单元82的一些功能可以被分布在IFCs 88内。在另一个示例中,控制单元82可以包括被操作作为从属路由的多个数据包转发引擎。
控制单元82可以单独用软件或硬件实现,或者可以用软件、硬件,或固件的组合来实现。例如,控制单元82可以包括用于执行软件指令的一个或多个处理器。在这种情况下,控制部82的各种软件模块可以包括存储在计算机可读介质上(诸如计算机存储器或硬盘)的可执行指令。
可以用硬件、软件、固件或其任何组合来实现本文中所描述的技术。描述为模块、单元或组件的各种特征可在集成逻辑设备中一起实施或作为离散但可互操作的逻辑设备或其它硬件设备单独实施。在某些情况下,电子电路的各种特征可实施为一个或一个以上的集成电路设备,例如集成电路芯片或芯片组。
如果用硬件实施,本公开内容可以针对例如处理器或集成电路设备(例如集成电路芯片或芯片组)的设备。可代替地或另外地,如果用软件或固件实现,则该技术可以至少部分通过计算机来实现—包括指令的可读数据存储介质,当执行该指令时,使处理器执行一种或多种上文所描述的方法。例如,该计算机可读数据存储介质可存储这种由处理器执行的指令。
计算机可读媒体可形成计算机程序产品的一部分,其可包括封装材料。计算机可读介质可包含计算机数据存储介质,例如随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储介质等等。在一些示例中,制造的物品可包括一种或多种计算机可读存储介质。
在一些示例中,计算机可读存储介质可以包括非临时性介质。术语“非临时性”可指示存储介质并不是用载波或传播信号来体现。在某些示例中,非临时性存储介质可以存储随着时间的推移而改变的数据(例如,在RAM或高速缓存中)。
代码或指令可以是由包括一个或多个处理器的处理电路来执行的软件和/或固件,诸如,一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场至可编程门阵列(FPGA),或其它等效集成或离散的逻辑电路。因此,如本文所用的术语“处理器”可指任何前述的结构,或者适合于实施本文中所描述的技术的任何其它结构。此外,在一些方面,可以在软件模块或硬件模块内提供在本公开内容中所描述的功能。
图4是示出根据本公开内容的技术的多个网络设备的示例性操作的流程图。
出于示例的目的示出根据本公开内容的技术针对图1至图2的PE路由器10A至10B以及提供商路由器18的示例性操作。为简单起见,在图4中未示出以太网区段(如PE路由器10C)的其它路由器的操作。
如在图4中所示,以太网区段的PE路由器(例如,以太网区段14的PE路由器10A、10B)可在初始配置和启动时输出指定以太网区段标识符(ESI)(150,151)的BGP EVPN以太网区段路由。例如,PE路由器10A和10B的每个可以将以太网AD路由公告给服务提供商网络12内的其它PE路由器。包括在提供商网络12内的提供商路由器18可以在被动模式下操作,使得提供商路由器18监听由其它PE路由器发送的以太网AD路由,但不执行EVPN的MAC学习。PE路由器10可以监听以太网AD路由(152),并从每个PE路由器10A和10B接收指定以太网的AD的路由。
提供商路由器18可确定包括在来自PE路由器10A和10B的相应的以太网AD路由内的每个ESI都是相同的(154)。例如,提供商路由器18可以比较相应的以太网AD路由的ESI并确定ESI彼此匹配。当确定ESI是相同的,并且PE路由器10A和10B都包含在以太网区段14内时,提供商路由器18可以在其一个或多个转发单元内配置主路由和备份路由,以为PE路由器10B提供保护。主路由可能是从提供商路由器18到PE路由器10B的路由。当使用主路由转发通信量时,提供商路由器18可以执行对数据包的外或“顶”标签的查找,以确定对应于PE路由器10C和提供商路由器18器之间的LSP的传输标签。提供商路由器18可以将主路由存储在转发表中,其中,主路由使用将提供商路由器18耦接至PE路由器10B的提供商路由器18的出口接口指定转发动作,以删除外部传输标签并转发网络数据包。
如上所述,提供商路由器18也可以将从提供商路由器18到PE路由器10A的备份路由设置到提供商路由器18的一个或多个转发单元的转发结构。除了包括主路由的转发表,提供商路由器18还可存储上下文表,用于提供商路由器18为其提供保护和局部修复的每个PE路由器。提供商路由器18可以将备份路由存储在由提供商路由器18保持的PE路由器10B的上下文表中。包括主路由的转发表可以包括含有备份路由的上下文表的指针、参考或其它标识符。
当将备份路由存储在上下文表中时,提供商路由器18可以存储由以太网区段14的PE路由器10B公告的内部标签作为查找值,并存储相应的转发动作(将具有EVPN标签堆栈的数据包的内标签与由以太网区段14的PE路由器10A公告的内标签进行交换)。转发动作也可以使用提供商路由器18的接口指定转发数据包,该接口将提供商路由器18直接经由单个跳段或者间接经由一系列跳段耦接到PE路由器10A。如果PE路由器10A是从提供商路由器18的多跳段,那么提供商路由器19可以将由PE路由器10A公告的一个或多个传输标签附加到数据包,以打开到PE路由器10A的通道。
一旦设置了主路由和备份路由,提供商路由器18可以最初使用主路由转发网络通信量,而链路17B和PE路由器10B能够将网络数据包转发到用户网络6B(160)。PE路由器10A和10B从提供商路由器18接收网络通信量,并将网络通信量转发到CE路由器8B。在稍后的时间里,提供商路由器18可确定链路17B出现了链路故障,或者PE路由器10B不再能够接收网络通信量(168)。响应于检测到的链路故障,提供商路由器18可以配置其转发单元的一个或多个来停止使用主路由,并开始使用备份路由(170)。在配置其转发单元使用备份路由时,提供商路由器18(其包括PE路由器10A和10B)可以开始将ESI 200的网络通信量转发到PE路由器10A。通过在链路故障的情况下执行局部维修,提供商路由器18可以比在PE路由器10C处进行全局修复时更迅速地将网络通信量重新引导至ESI 200。PE路由器10A可以从提供商路由器18接收网络数据包(172)并将网络数据包转发到CE路由器8B。
除了以上以外的或作为其替代,描述以下示例。可在本文描述的任何其他示例中利用任何以下示例中描述的特征。
示例1.一种方法,包括:将中间路由器配置为在被动模式下操作,所述中间路由器被定位在服务提供商网络内,所述服务提供商网络处于在以太网虚拟专用网络(EVPN)中操作在激活至激活模式下的至少两个提供商边缘(PE)路由器与远程提供商边缘路由之间,在所述被动模式下,所述中间路由器在不执行所述EVPN的层二(L2)地址学习的情况下检测通过两个所述提供商边缘(PE)路由器公告给所述EVPN的所述远程PE路由器的以太网自动查找(AD)路由;响应于检测所述以太网AD路由,在所述中间路由器的转发单元中设置从所述中间路由器到至少两个所述PE路由器中的受保护的路由器的主路由和从所述中间路由器到至少两个所述PE路由器中的另一个PE路由器的备份路由,其中,所述主路由和所述备份路由包括来自检测到的所述以太网AD路由的相应的EVPN标签;并且响应于确定在所述中间路由器的所述转发单元内网络通信量不能到达受保护PE路由器,在不需要对所述转发单元重新编程的情况下使用所述备份路由转发所述网络通信量。
示例2.根据示例1所述的方法,进一步包括:通过所述中间路由器将所述主路由存储在所述转发单元的转发结构中,其中,所述转发结构包括:所述主路由,其中,所述主路由限定转发动作以将所述网络通信量转发到所述受保护PE路由器;以及对包括所述备份路由的上下文表的引用(reference,引用关系)。
示例3.根据示例2所述的方法,进一步包括:生成用于所述受保护PE路由器的上下文表,其中,所述上下文表中的所述备份路由限定转发动作以将网络数据包的第一服务标签与第二服务标签进行交换,其中,所述第一服务标签对应于特定以太网区段标识符并且通过所述受保护PE路由器进行公告,并且其中,所述第二服务标签对应于所述特定以太网区段标识符并且通过至少两个所述PE路由器中的所述另一个PE路由器进行公告。
示例4.根据示例1所述的方法,其中,设置主路由和备份路由包括:通过所述提供商边缘路由器在所述中间路由器的所述转发单元中配置所述主路由的下一个主跳段以及所述备份路由的下一个备份跳段,其中,所述下一个主跳段被配置为在确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器之前使用所述主路由转发所述网络通信量,其中,所述下一个备份跳段被配置为响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器而使用所述备份路由转发所述网络通信量;在确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器之前,通过所述中间路由器使用所述主路由将所述网络通信量转发到所述受保护PE路由器;并且响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器,通过所述中间路由器使用所述备份路由将所述网络通信量转发至包含在相同以太网区段中的不同于所述受保护PE路由器的PE路由器。
示例5.根据示例1所述的方法,其中,所述中间路由器没有通过物理通信链路直接耦接到用户网络中的用户边缘路由器,并且其中,所述中间路由器通过所述物理通信链路直接耦接到所述受保护的PE路由器。
示例6.根据示例1所述的方法,其中,在激活至激活模式下操作的所述中间路由器不执行MAC学习。
示例7.根据示例1所述的方法,其中,至少两个所述PE路由器中的所述另一个PE路由器距离所述中间路由器多于一个跳段,其中,使用所述备份路由转发所述网络通信量包括:将至少一个传输标签附加到所述网络通信量的至少一个数据包,其中,至少一个所述传输标签对应于所述中间路由器与至少两个所述PE路由器中的所述另一个PE路由器之间的标签交换的路径。
示例8.一种中间路由器,包括:路由引擎,将中间路由器配置为在被动模式下操作,所述中间路由器被定位在服务提供商网络内,所述服务提供商网络处于在以太网虚拟专用网络(EVPN)中操作于激活至激活模式下的至少两个提供商边缘(PE)路由器与远程提供商边缘路由器之间,在所述被动模式下,所述中间路由器在不执行所述EVPN的层二(L2)地址学习的情况下检测通过所述两个提供商边缘(PE)路由器公告给所述EVPN的所述远程PE路由器的以太网自动查找(AD)路由;其中,所述路由引擎响应于检测所述以太网AD路由,在所述中间路由器的转发单元中设置从所述中间路由器到至少两个所述PE路由器中的受保护的路由器的主路由和从所述中间路由器到至少两个所述PE路由器的另一个PE路由器的备份路由,其中,所述主路由和所述备份路由包括来自检测到的所述以太网AD路由的相应的EVPN标签;并且其中,所述转发单元响应于确定在所述中间路由器的所述转发单元内网络通信量不能到达受保护PE路由器,在不需要对所述转发单元重新编程的情况下使用所述备份路由转发所述网络通信量。
示例9.根据示例8所述的中间路由器,其中,所述路由引擎将所述主路由存储在所述转发单元的转发结构中,其中,所述转发结构包括:所述主路由,其中,所述主路由限定转发动作以将所述网络通信量转发到所述受保护PE路由器;以及对包括所述备份路由的上下文表的引用。
示例10.根据示例9所述的中间路由器,其中,所述路由引擎生成所述受保护PE路由器的所述上下文表,其中,所述上下文表中的所述备份路由限定转发动作以将网络数据包的第一服务标签与第二服务标签进行交换,其中,所述第一服务标签对应于特定以太网区段标识符并且通过所述受保护PE路由器公告,并且其中,所述第二服务标签对应于所述特定以太网区段标识符并且通过至少两个所述PE路由器中的所述另一个PE路由器公告。
示例11.根据示例8所述的中间路由器,其中,所述路由引擎在所述中间路由器的所述转发单元中配置所述主路由的下一个主跳段以及所述备份路由的下一个备份跳段,其中,所述下一个主跳段被配置为在确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器之前使用所述主路由转发所述网络通信量,其中,所述下一个备份跳段被配置为响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器而使用所述备份路由转发所述网络通信量;其中,所述转发单元在确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器之前,使用所述主路由将所述网络通信量转发到所述受保护PE路由器;并且其中,所述转发单元响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器,使用所述备份路由将所述网络通信量转发至包含在相同以太网区段中的不同于所述受保护PE路由器的PE路由器。
示例12.根据示例8所述的中间路由器,其中,所述中间路由器没有通过物理通信链路直接耦接到用户网络中的用户边缘路由器,并且其中,所述中间路由器通过物理通信链路直接耦接到所述受保护PE路由器。
示例13.根据示例8所述的中间路由器,其中,所述中间路由器没有通过物理通信链路直接耦接到用户网络中的用户边缘路由器,并且
其中,所述中间路由器通过物理通信链路直接耦接到所述受保护PE路由器。
示例14.根据示例8所述的中间路由器,其中,至少两个所述PE路由器中的所述另一个PE路由器距离所述中间路由器一个跳段以上,其中,所述转发单元将至少一个传输标签附加到所述网络通信量的至少一个数据包,其中,至少一个所述传输标签对应于所述中间路由器与至少两个所述PE路由器中的所述另一个PE路由器之间的标签交换的路径。
示例15.一种计算机可读介质,包括用于使中间路由器中的至少一个可编程处理器执行以下操作的指令:将中间路由器配置为在被动模式下操作,所述中间路由器被定位在服务提供商网络内,所述服务提供商网络处于在以太网虚拟专用网络(EVPN)中操作在激活至激活模式下的至少两个提供商边缘(PE)路由器与远程提供商边缘路由之间,在所述被动模式下,所述中间路由器在不执行所述EVPN的层二(L2)地址学习的情况下检测通过两个所述提供商边缘(PE)路由器公告给所述EVPN的所述远程PE路由器的以太网自动查找(AD)路由;响应于检测所述以太网AD路由,在所述中间路由器的转发单元中设置从所述中间路由器到至少两个所述PE路由器中的受保护的路由器的主路由和从所述中间路由器到至少两个所述PE路由器中的另一个PE路由器的备份路由,其中,所述主路由和所述备份路由包括来自检测到的所述以太网AD路由的相应的EVPN标签;并且响应于确定在所述中间路由器的所述转发单元内网络通信量不能到达受保护PE路由器,在不需要对所述转发单元重新编程的情况下使用所述备份路由转发所述网络通信量。
示例16.根据示例15所述的计算机可读介质包括用于使中间路由器中的至少一个可编程处理器执行以下操作的指令:通过所述中间路由器将所述主路由存储在所述转发单元的转发结构中,其中,所述转发结构包括:所述主路由,其中,所述主路由限定转发动作以将所述网络通信量转发到所述受保护PE路由器;以及对包括所述备份路由的上下文表的引用。
示例17.根据示例16所述的计算机可读介质包括用于使中间路由器中的至少一个可编程处理器执行以下操作的指令:生成用于所述受保护PE路由器的上下文表,其中,所述上下文表中的所述备份路由限定转发动作以将网络数据包的第一服务标签与第二服务标签进行交换,其中,所述第一服务标签对应于特定以太网区段标识符并且通过所述受保护PE路由器进行公告,并且其中,所述第二服务标签对应于所述特定以太网区段标识符并且通过至少两个所述PE路由器中的所述另一个PE路由器进行公告。
示例18.根据示例15所述的计算机可读介质包括用于使中间路由器中的至少一个可编程处理器执行以下操作的指令:在所述中间路由器的所述转发单元中配置所述主路由的下一个主跳段以及所述备份路由的下一个备份跳段,其中,所述下一个主跳段被配置为在确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器之前使用所述主路由转发所述网络通信量,其中,所述下一个备份跳段被配置为响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器而使用所述备份路由转发所述网络通信量;在确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器之前,使用所述主路由将所述网络通信量转发到所述受保护PE路由器;并且响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护PE路由器,使用所述备份路由将所述网络通信量转发至包含在相同以太网区段中的不同于所述受保护PE路由器的PE路由器。
示例19.根据示例15所述的计算机可读介质,其中,所述中间路由器没有通过物理通信链路直接耦接到用户网络中的用户边缘路由器,并且其中,所述中间路由器通过所述物理通信链路直接耦接到所述受保护的PE路由器。
示例20.根据示例15所述的计算机可读介质,其中,在激活至激活模式下操作的所述中间路由器不执行MAC学习。
此外,可将在任何上述示例中阐述的任何特定特征组合为所述技术的有利实施方式。也就是说,任何特定特征通常可适用于本发明的所有示例。已经描述了各种示例。这些和其他示例在所附权利要求的范围内。
Claims (14)
1.一种路由方法,包括:
将中间路由器配置为在被动模式下操作,所述中间路由器被定位在服务提供商网络内,所述服务提供商网络处于在以太网虚拟专用网络中操作在激活至激活模式下的至少两个提供商边缘路由器与远程提供商边缘路由之间,在所述被动模式下,所述中间路由器在不执行所述以太网虚拟专用网络的层二地址学习的情况下检测通过两个所述提供商边缘路由器公告给所述以太网虚拟专用网络的所述远程提供商边缘路由器的以太网自动查找路由;
响应于检测所述以太网自动查找路由,在所述中间路由器的转发单元中设置从所述中间路由器到至少两个所述提供商边缘路由器中的受保护的路由器的主路由和从所述中间路由器到至少两个所述提供商边缘路由器中的另一个提供商边缘路由器的备份路由,其中,所述主路由和所述备份路由包括来自检测到的所述以太网自动查找路由的相应的以太网虚拟专用网络标签;并且
响应于确定在所述中间路由器的所述转发单元内网络通信量不能到达受保护提供商边缘路由器,在不需要对所述转发单元重新编程的情况下使用所述备份路由转发所述网络通信量。
2.根据权利要求1所述的方法,进一步包括:
通过所述中间路由器将所述主路由存储在所述转发单元的转发结构中,其中,所述转发结构包括:
所述主路由,其中,所述主路由限定转发动作以将所述网络通信量转发到所述受保护提供商边缘路由器;以及
对包括所述备份路由的上下文表的引用。
3.根据权利要求2所述的方法,进一步包括:
生成用于所述受保护提供商边缘路由器的上下文表,
其中,所述上下文表中的所述备份路由限定转发动作以将网络数据包的第一服务标签与第二服务标签进行交换,
其中,所述第一服务标签对应于特定以太网区段标识符并且通过所述受保护提供商边缘路由器进行公告,并且
其中,所述第二服务标签对应于所述特定以太网区段标识符并且通过至少两个所述提供商边缘路由器中的所述另一个提供商边缘路由器进行公告。
4.根据权利要求1至3中任一项所述的方法,其中,设置所述主路由和所述备份路由包括:
通过所述提供商边缘路由器在所述中间路由器的所述转发单元中配置所述主路由的下一个主跳段以及所述备份路由的下一个备份跳段,其中,所述下一个主跳段被配置为在确定所述网络通信量不能够从所述中间路由器到达所述受保护提供商边缘路由器之前使用所述主路由转发所述网络通信量,其中,所述下一个备份跳段被配置为响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护提供商边缘路由器而使用所述备份路由转发所述网络通信量;
在确定所述网络通信量不能够从所述中间路由器到达所述受保护提供商边缘路由器之前,通过所述中间路由器使用所述主路由将所述网络通信量转发到所述受保护提供商边缘路由器;并且
响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护提供商边缘路由器,通过所述中间路由器使用所述备份路由将所述网络通信量转发至包含在相同以太网区段中的不同于所述受保护提供商边缘路由器的提供商边缘路由器。
5.根据权利要求1所述的方法,
其中,所述中间路由器没有通过物理通信链路直接耦接到用户网络中的用户边缘路由器,并且
其中,所述中间路由器通过所述物理通信链路直接耦接到所述受保护的提供商边缘路由器。
6.根据权利要求1所述的方法,其中,在激活至激活模式下操作的所述中间路由器不执行MAC学习。
7.根据权利要求1所述的方法,其中,至少两个所述提供商边缘路由器中的所述另一个提供商边缘路由器距离所述中间路由器多于一个跳段,其中,使用所述备份路由转发所述网络通信量包括:
将至少一个传输标签附加到所述网络通信量的至少一个数据包,其中,至少一个所述传输标签对应于所述中间路由器与至少两个所述提供商边缘路由器中的所述另一个提供商边缘路由器之间的标签交换的路径。
8.一种中间路由器,包括:
路由引擎,将中间路由器配置为在被动模式下操作,所述中间路由器被定位在服务提供商网络内,所述服务提供商网络处于在以太网虚拟专用网络中操作于激活至激活模式下的至少两个提供商边缘路由器与远程提供商边缘路由器之间,在所述被动模式下,所述中间路由器在不执行所述以太网虚拟专用网络的层二地址学习的情况下检测通过所述两个提供商边缘路由器公告给所述以太网虚拟专用网络的所述远程提供商边缘路由器的以太网自动查找路由;
其中,所述路由引擎响应于检测所述以太网自动查找路由,在所述中间路由器的转发单元中设置从所述中间路由器到至少两个所述提供商边缘路由器中的受保护的路由器的主路由和从所述中间路由器到至少两个所述提供商边缘路由器的另一个提供商边缘路由器的备份路由,其中,所述主路由和所述备份路由包括来自检测到的所述以太网自动查找路由的相应的以太网虚拟专用网络标签;并且
其中,所述转发单元响应于确定在所述中间路由器的所述转发单元内网络通信量不能到达受保护提供商边缘路由器,在不需要对所述转发单元重新编程的情况下使用所述备份路由转发所述网络通信量。
9.根据权利要求8所述的中间路由器,
其中,所述路由引擎将所述主路由存储在所述转发单元的转发结构中,其中,所述转发结构包括:
所述主路由,其中,所述主路由限定转发动作以将所述网络通信量转发到所述受保护提供商边缘路由器;以及
对包括所述备份路由的上下文表的引用。
10.根据权利要求9所述的中间路由器,
其中,所述路由引擎生成所述受保护提供商边缘路由器的所述上下文表,
其中,所述上下文表中的所述备份路由限定转发动作以将网络数据包的第一服务标签与第二服务标签进行交换,
其中,所述第一服务标签对应于特定以太网区段标识符并且通过所述受保护提供商边缘路由器公告,并且
其中,所述第二服务标签对应于所述特定以太网区段标识符并且通过至少两个所述提供商边缘路由器中的所述另一个提供商边缘路由器公告。
11.根据权利要求8至10中任一项所述的中间路由器,
其中,所述路由引擎在所述中间路由器的所述转发单元中配置所述主路由的下一个主跳段以及所述备份路由的下一个备份跳段,
其中,所述下一个主跳段被配置为在确定所述网络通信量不能够从所述中间路由器到达所述受保护提供商边缘路由器之前使用所述主路由转发所述网络通信量,其中,所述下一个备份跳段被配置为响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护提供商边缘路由器而使用所述备份路由转发所述网络通信量;
其中,所述转发单元在确定所述网络通信量不能够从所述中间路由器到达所述受保护提供商边缘路由器之前,使用所述主路由将所述网络通信量转发到所述受保护提供商边缘路由器;并且
其中,所述转发单元响应于确定所述网络通信量不能够从所述中间路由器到达所述受保护提供商边缘路由器,使用所述备份路由将所述网络通信量转发至包含在相同以太网区段中的不同于所述受保护提供商边缘路由器的提供商边缘路由器。
12.根据权利要求8所述的中间路由器,
其中,所述中间路由器没有通过物理通信链路直接耦接到用户网络中的用户边缘路由器,并且
其中,所述中间路由器通过物理通信链路直接耦接到所述受保护提供商边缘路由器。
13.根据权利要求9所述的中间路由器,
其中,所述中间路由器没有通过物理通信链路直接耦接到用户网络中的用户边缘路由器,并且
其中,所述中间路由器通过物理通信链路直接耦接到所述受保护所述提供商边缘路由器。
14.根据权利要求8所述的中间路由器,
其中,至少两个所述提供商边缘路由器中的所述另一个提供商边缘路由器距离所述中间路由器一个跳段以上,
其中,所述转发单元将至少一个传输标签附加到所述网络通信量的至少一个数据包,其中,至少一个所述传输标签对应于所述中间路由器与至少两个所述提供商边缘路由器中的所述另一个提供商边缘路由器之间的标签交换的路径。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/869,806 US20170093611A1 (en) | 2015-09-29 | 2015-09-29 | Egress node protection in evpn all-active topology |
US14/869,806 | 2015-09-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107040462A true CN107040462A (zh) | 2017-08-11 |
Family
ID=57083118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610862164.4A Withdrawn CN107040462A (zh) | 2015-09-29 | 2016-09-28 | 路由方法和中间路由器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20170093611A1 (zh) |
EP (1) | EP3151485A1 (zh) |
CN (1) | CN107040462A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107770008A (zh) * | 2017-09-27 | 2018-03-06 | 中国联合网络通信集团有限公司 | 一种ce路由器接入骨干数据网的方法及服务器 |
CN110061912A (zh) * | 2018-01-19 | 2019-07-26 | 丛林网络公司 | 仲裁虚拟节点的冗余控制平面之间的主控权 |
WO2020001389A1 (zh) * | 2018-06-30 | 2020-01-02 | 华为技术有限公司 | 一种避免环路的通信方法、设备和系统 |
CN110650078A (zh) * | 2018-06-26 | 2020-01-03 | 瞻博网络公司 | 协调伪线连接特征和多宿主提供者边缘设备能力 |
CN110945835A (zh) * | 2017-09-21 | 2020-03-31 | 华为技术有限公司 | 报文同步方法和装置 |
WO2021142801A1 (zh) * | 2020-01-17 | 2021-07-22 | 华为技术有限公司 | 一种通信方法及装置 |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9825805B2 (en) * | 2016-02-18 | 2017-11-21 | Dell Products L.P. | Multi-homing internet service provider switchover system |
US10270691B2 (en) | 2016-02-29 | 2019-04-23 | Cisco Technology, Inc. | System and method for dataplane-signaled packet capture in a segment routing environment |
US10270690B2 (en) | 2016-02-29 | 2019-04-23 | Cisco Technology, Inc. | System and method for dataplane-signaled packet capture in IPV6 environment |
US10033539B1 (en) * | 2016-03-31 | 2018-07-24 | Juniper Networks, Inc. | Replicating multicast state information between multi-homed EVPN routing devices |
US10644987B1 (en) * | 2016-04-04 | 2020-05-05 | Juniper Networks, Inc. | Supporting label per EVPN instance for an EVPN virtual private wire service |
US10110470B2 (en) * | 2016-09-14 | 2018-10-23 | Juniper Networks, Inc. | Preventing data traffic loops associated with designated forwarder selection |
US10432515B1 (en) * | 2016-10-05 | 2019-10-01 | Cisco Technology, Inc. | Reducing number of Ethernet segment MPLS labels for all-active multi-homing |
US10164876B2 (en) * | 2016-12-09 | 2018-12-25 | Cisco Technology, Inc. | Efficient multicast traffic forwarding in EVPN-based multi-homed networks |
US10476811B2 (en) * | 2017-03-10 | 2019-11-12 | Juniper Networks, Inc | Apparatus, system, and method for providing node protection across label-switched paths that share labels |
US10659291B2 (en) * | 2017-05-30 | 2020-05-19 | Juniper Networks, Inc. | Label and associated traffic black hole correction |
US10880203B2 (en) * | 2017-06-12 | 2020-12-29 | Cisco Technology, Inc. | Centralized segment routing dataplane based backup path validation |
US10785153B2 (en) * | 2017-08-14 | 2020-09-22 | Level 3 Communications, Llc | Dynamic segment routing mapping server for a multiprotocol label switching network |
US10212075B1 (en) * | 2017-09-22 | 2019-02-19 | Cisco Technology, Inc. | Convergence optimization of local switching for flexible cross-connect in ethernet virtual private network (EVPN) environments |
US10911319B2 (en) | 2017-12-28 | 2021-02-02 | Paypal, Inc. | Systems and methods for characterizing a client device |
US11323365B2 (en) * | 2018-05-17 | 2022-05-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Tearing down a label switched path through a communications network |
EP3588857B1 (en) * | 2018-06-25 | 2023-06-07 | Juniper Networks, Inc. | Using multiple ethernet virtual private network (evpn) routes for corresponding service interfaces of a subscriber interface |
US10693679B2 (en) | 2018-06-25 | 2020-06-23 | Juniper Networks, Inc. | Using multiple ethernet virtual private network (EVPN) routes for corresponding service interfaces of a subscriber interface |
US10887218B2 (en) | 2018-06-27 | 2021-01-05 | At&T Intellectual Property I, L.P. | Enhanced dynamic encryption packet segmentation |
US10958567B1 (en) | 2019-03-29 | 2021-03-23 | Juniper Networks, Inc. | Controlling paths in a network via a centralized controller or network devices |
CN112039765B (zh) * | 2019-06-03 | 2023-05-30 | 中兴通讯股份有限公司 | 路由信息发送的方法、路由选路的方法和装置 |
CN114978988A (zh) * | 2019-06-28 | 2022-08-30 | 华为技术有限公司 | 一种实现表项备份的方法和装置 |
US11489716B2 (en) * | 2019-08-20 | 2022-11-01 | Citrix Systems, Inc. | Desktop virtualization with a dedicated cellular network connection for client devices |
US11316777B2 (en) * | 2019-11-18 | 2022-04-26 | Cisco Technology, Inc. | Method and system for network traffic diversion |
CN112838982B (zh) | 2019-11-22 | 2024-04-26 | 华为技术有限公司 | 报文传输路径的切换方法、设备和系统 |
CN111565141B (zh) * | 2020-04-13 | 2022-06-07 | 中国联合网络通信集团有限公司 | 数据传输方法、第一pe和第二pe |
CN113765800B (zh) * | 2020-06-05 | 2023-04-28 | 华为技术有限公司 | 传输报文的方法、装置、系统、设备及可读存储介质 |
US11811651B2 (en) * | 2020-09-11 | 2023-11-07 | Juniper Networks, Inc. | Apparatus, system, and method for steering traffic over network slices |
US11570116B1 (en) | 2021-03-10 | 2023-01-31 | Juniper Networks, Inc. | Estimating standby socket window size during asynchronous socket replication |
US11838796B2 (en) * | 2021-08-18 | 2023-12-05 | Corning Research & Development Corporation | Compression and decompression between elements of a wireless communications system (WCS) |
US20240056379A1 (en) * | 2022-08-09 | 2024-02-15 | Cisco Technology, Inc. | System and Method for EVPN Multicast Optimization for Source Handling |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8259564B1 (en) * | 2008-12-12 | 2012-09-04 | Juniper Networks, Inc. | Egress protection for label switched paths |
US20150006757A1 (en) * | 2013-06-26 | 2015-01-01 | Cisco Technology, Inc. | Virtual private wire services using e-vpn |
US9019814B1 (en) * | 2013-08-05 | 2015-04-28 | Juniper Networks, Inc. | Fast failover in multi-homed ethernet virtual private networks |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8948055B2 (en) * | 2012-11-02 | 2015-02-03 | Ciena Corporation | Resilient interworking of shortest path bridging and Ethernet virtual private networks |
CN104253759B (zh) * | 2013-06-30 | 2017-08-29 | 华为技术有限公司 | 报文转发方法、装置及系统 |
-
2015
- 2015-09-29 US US14/869,806 patent/US20170093611A1/en not_active Abandoned
-
2016
- 2016-09-27 EP EP16190776.1A patent/EP3151485A1/en not_active Withdrawn
- 2016-09-28 CN CN201610862164.4A patent/CN107040462A/zh not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8259564B1 (en) * | 2008-12-12 | 2012-09-04 | Juniper Networks, Inc. | Egress protection for label switched paths |
US20150006757A1 (en) * | 2013-06-26 | 2015-01-01 | Cisco Technology, Inc. | Virtual private wire services using e-vpn |
US9019814B1 (en) * | 2013-08-05 | 2015-04-28 | Juniper Networks, Inc. | Fast failover in multi-homed ethernet virtual private networks |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110945835A (zh) * | 2017-09-21 | 2020-03-31 | 华为技术有限公司 | 报文同步方法和装置 |
CN107770008A (zh) * | 2017-09-27 | 2018-03-06 | 中国联合网络通信集团有限公司 | 一种ce路由器接入骨干数据网的方法及服务器 |
CN110061912A (zh) * | 2018-01-19 | 2019-07-26 | 丛林网络公司 | 仲裁虚拟节点的冗余控制平面之间的主控权 |
CN110650078A (zh) * | 2018-06-26 | 2020-01-03 | 瞻博网络公司 | 协调伪线连接特征和多宿主提供者边缘设备能力 |
CN110650078B (zh) * | 2018-06-26 | 2021-12-28 | 瞻博网络公司 | 协调伪线连接特征和多宿主提供者边缘设备能力 |
US11381501B2 (en) | 2018-06-26 | 2022-07-05 | Juniper Networks, Inc. | Coordinating pseudowire connection characteristics and multi-homed provider edge device capabtilities |
WO2020001389A1 (zh) * | 2018-06-30 | 2020-01-02 | 华为技术有限公司 | 一种避免环路的通信方法、设备和系统 |
US12034631B2 (en) | 2018-06-30 | 2024-07-09 | Huawei Technologies Co., Ltd. | Loop avoidance communications method, device, and system |
WO2021142801A1 (zh) * | 2020-01-17 | 2021-07-22 | 华为技术有限公司 | 一种通信方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
US20170093611A1 (en) | 2017-03-30 |
EP3151485A1 (en) | 2017-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107040462A (zh) | 路由方法和中间路由器 | |
CN105453491B (zh) | 扩展远程lfa快速重新路由 | |
US10148517B2 (en) | Systems and methods for topology discovery and application in a border gateway protocol based data center | |
CN106170952B (zh) | 用于在数据网络中部署最大冗余树的方法和系统 | |
CN103748835B (zh) | 标签交换路径的动态更新 | |
CN102037685B (zh) | 通过链路状态协议控制的以太网的ip转发 | |
CN100596107C (zh) | 报文转发方法以及自治系统边界路由器 | |
CN104243270B (zh) | 一种建立隧道的方法和装置 | |
CN104380671B (zh) | 在分级、冗余、多播路由选择中增加失效覆盖 | |
CN107040469A (zh) | 网络设备及方法 | |
CN101667970B (zh) | 保护倒换方法和设备 | |
CN104717098B (zh) | 一种数据处理方法及装置 | |
CN107040443A (zh) | 多宿主拓扑的evpn网络的快速收敛 | |
CN105933228A (zh) | 用于位索引显式复制的流量工程 | |
CN108702328A (zh) | 用于穿越分段路由和mpls网络的业务的灵活路径拼接和选择的is-is扩展 | |
CN101510845B (zh) | 一种标签转发方法和装置 | |
CN103053138A (zh) | 利用网格标签进行外出分组转发的装置和方法 | |
CN102217238A (zh) | 应用于mpls网络的服务实例 | |
CN107210966A (zh) | 在软件定义组网(sdn)系统中使用l4‑l7报头转发没有重组的分组片段 | |
CN109076018A (zh) | 利用is-is暴露最大节点和/或链路分段标识符深度的技术 | |
CN107070789A (zh) | 主动‑主动pbb‑evpn冗余的流量黑洞避免和快速融合 | |
CN107395481A (zh) | Evpn拓扑中的广播、未知单播或组播业务的出口节点保护 | |
CN102413060A (zh) | Vpls网络中用户专线通信方法及设备 | |
CN102075419A (zh) | 三层虚拟专用网等价路由的生成及转发方法和边缘路由器 | |
CN108206785A (zh) | 针对多播流量优化与路由和/或下一跳相关的信息 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20170811 |
|
WW01 | Invention patent application withdrawn after publication |