网络设备及方法与流程

文档序号:11590036阅读:156来源:国知局
网络设备及方法与流程
本公开涉及计算机网络,并且更具体地,涉及在计算机网络内路由数据包。
背景技术
:计算机网络是可以交换数据和共享资源的互连计算设备的集合。示例网络设备包括在开放系统互连(osi)参考模型的第二层(l2)(即数据链路层)内操作的二层设备(layertwodevice),以及在osi参考模型的第三层(l3)(即网络层)内操作的三层设备(layerthreedevice)。在计算机网络内的网络设备通常包括为网络设备提供控制平面功能性的控制单元和用于路由或交换数据单元的转发组件。以太网虚拟专用网(evpn)可以用于以透明方式(即好像中间的l3网络不存在)通过中间的三层(l3)网络(通常称为提供商网络)来扩展两个或更多个远程的二层(l2)客户网络。具体地,evpn根据一个或多个多协议标签交换(mpls)协议,通过中间网络经由流量工程标签交换路径(lsp)在客户网络之间传送l2通信,诸如以太网数据包或以太网“帧”。在典型的配置中,耦接至客户网络中的客户边缘(ce)网络设备的提供商边缘(pe)设备(例如路由器和/或交换机)在提供商网络内限定标签交换路径(lsp)以承载封装的l2通信,就像这些客户网络直接附接至同一局域网(lan)一样。在一些配置中,pe设备也可以通过ip基础设施连接,在这种情况下,可以在网络设备之间使用ip/gre隧道或其它ip隧道。在evpn中,pe设备之间的mac学习发生在控制平面内,而不是在使用路由协议的数据平面内(如利用传统桥接发生)。例如,在evpn中,pe设备通常使用边界网关协议(bgp)(即l3路由协议)向其它提供商边缘网络设备通告从该pe设备所连接的本地消费者边缘网络设备学习的mac地址。pe设备可以使用bgp路由通告消息来宣告对于evpn的可达性信息,其中bgp路由通告指定由pe设备学习的一个或多个mac地址而不是l3路由信息。在被称为活动-待机evpn多归属操作模式的evpn配置中,以太网段包括提供对于一个或多个本地客户边缘(ce)设备的多归属的连接性的多个pe设备。此外,多个pe设备通过中间的3层网络向远程pe设备提供传送服务,并且以太网段中的多个pe设备中的每一个在用于ce设备的段中转发以太网帧。在活动-待机evpn多归属操作模式中,仅允许多归属pe路由器中的单个活动的pe路由器向如下以太网段转发流量和从如下以太网段转发流量:该以太网段组成将多归属的ce设备与多归属pe路由器连接的l2链路的集合。当在多个pe设备中提供多归属的连接性的一个活动的pe设备处发生网络故障时,该活动pe设备担任待机pe设备的角色,并且待机pe设备中的一个切换成活动pe设备。技术实现要素:总体来说,描述了用于抑制在以太网vpn(evpn)的待机模式下操作的多归属提供商边缘路由器中配置的静态路由的通告的技术。例如,中间的3层(l3)网络的多个提供商边缘(pe)路由器可以配置为向连接到pe路由器的多个客户边缘(ce)设备提供evpn,所述pe路由器提供ce设备之间的l2虚拟桥接连接性。在一些情况下,多归属的ce设备可以提供对于包括一个或多个主机设备的本地客户网络的l3子网的可达性。因此,多归属pe路由器中的每一个可以配置有公共静态路由,其将对于多归属的ce设备的l3地址指定为对于l3子网的下一跳。为了提供对于l3子网的可达性同时避免在一个或多个待机的pe路由器处的黑洞,待机的多归属pe路由器抑制静态路由的通告,并且仅活动多归属pe路由器向也配置为提供evpn的远程pe路由器通告静态路由。在一些实例中,多归属pe路由器中的每个pe路由器基于诸如地址解析协议(arp)请求或邻居发现协议(例如ndp)邻居请求的l2地址请求的成功或失败来确定是否通告静态路由。该请求由pe路由器发起,并且请求对用于多归属的ce设备的l3地址的l2地址,即l3子网的下一跳(如在静态路由中指定的)。pe路由器尝试在由构成以太网段的链路形成的evpn桥域上发送(例如广播)请求。如果pe路由器接收到响应于这样的请求的回复,那么pe路由器经由以太网段可到达ce设备,并且pe路由器向也配置为提供evpn的远程pe路由器通告静态路由。然而,如果没有接收到回复,那么这指示pe路由器对于evpn是待机的转发器或非指定转发器,并且因此pe路由器抑制静态路由的通告。结果,远程pe路由器不从待机的多归属pe路由器接收对于静态路由的通告,并且因此避免通过中间l3网络将前往l3子网内的主机设备的数据包发送到待机的多归属pe路由器,其中因为待机的多归属pe路由器不允许将流量转发至到达ce设备的以太网段因此这样的数据包将被待机的多归属pe路由器丢弃。相反,远程pe路由器将数据包发送到活动多归属pe路由器,活动的多归属pe路由器将数据包经由以太网段转发至ce设备。此外,在一些情况下,如果先前指定的待机的pe路由器转换为活动的多归属pe路由器的角色,那么现在的活动的多归属pe路由器开始向远程pe路由器通告静态路由,以使远程pe路由器开始向现在的活动的多归属pe路由器发送流量。在一些实例中,一种方法包括通过中间的3层网络的提供商边缘路由器接收配置配置数据,该配置数据配置提供商边缘路由器,以使用活动-待机操作模式客户边缘设备提供多归属的2层虚拟桥接连接性;以及响应于确定提供商边缘路由器能够向客户边缘设备发送2层数据包,通过提供商边缘路由器向远程提供商边缘路由器发送路由通告,该路由通告包括指定客户边缘设备的3层地址作为对于3层子网的下一跳的静态路由。在一些实例中,一种非瞬时性计算机可读介质包括用于使中间3层网络的提供商边缘路由器中的一个或多个可编程处理器执行以下操作的指令:接收配置数据,该配置数据配置提供商边缘路由器,以使用活动-待机操作模式向客户边缘设备提供多归属的2层虚拟桥接连接性;以及响应于确定所述提供商边缘路由器能够向所述客户边缘设备发送2层数据包,向远程提供商边缘路由器发送路由通告,所述路由通告包括指定所述客户边缘设备的3层地址作为对于3层子网的下一跳的静态路由。在一些实例中,一种网络设备可操作为提供边缘路由器,包括:能操作地耦接至存储器的一个或多个处理器;配置接口,配置为通过所述一个或多个处理器执行以接收配置数据,所述配置数据将所述网络设备配置为中间的3层网络的提供商边缘路由器,以使用活动-待机操作模式向客户边缘设备提供多归属的2层虚拟桥接连接性;以及路由处理,配置为通过所述一个或多个处理器执行以响应于确定所述网络设备能够向所述客户边缘设备发送2层数据包而向远程提供商边缘路由器发送路由通告,所述路由通告包括指定所述客户边缘设备的3层地址作为对于3层子网的下一跳的静态路由。在附图和下面的描述中阐述了一个或多个实施方式的细节。从说明书和附图以及从权利要求中,其它的特征、目的以及优点将是显而易见的。附图说明图1是示出根据本公开的技术的示例系统的框图。图2是示出实现抑制静态路由通告的技术的网络设备的进一步细节的框图。图3是示出根据本文中描述的技术的用于供应商边缘网络设备通告或抑制用于evpn实例的静态路由的示例操作模式的流程图。图4是示出根据本公开的技术的示例系统的框图。图5是示出根据本文中描述的技术的用于供应商边缘网络设备通告对于l3vpn的静态路由的示例操作模式的流程图。贯穿整个附图和文本中,相同的附图标记表示相同的元件。具体实施方式图1是示出根据本公开的技术的示例系统的框图。在图1的实例中,pe路由器10a-10c(“pe路由器10”或更简单地“pe10”)向与客户网络6a-6b(“客户网络6”)相关联的客户设备4a-4d(“客户设备4”)提供经由客户边缘(ce)设备8a-8b(“ce8”)对中间的3层(l3)网络(这里为“服务提供商网络12”)的访问。通信链路16a-16g可以是以太网、atm或任何其它合适的网络连接。pe路由器10和ce8可以各自表示参与二层(l2)虚拟专用网(vpn)(l2vpn)服务(诸如以太网虚拟专用网(evpn))的路由器、交换机或其它合适的网络设备。客户网络6可以是用于企业的地理上分离的站点的网络。客户设备4中的每一个可以表示一个或多个非边缘交换机、路由器、集线器、网关、(诸如防火墙、入侵检测和/或入侵防护设备的)安全设备、服务器、计算机终端、膝上型计算机、打印机、数据库、诸如蜂窝电话或个人数字助理的无线移动设备、无线接入点、网桥、电缆调制解调器、应用加速器或其它网络设备。图1中示出的网络2的配置仅是示例性的。例如,企业可以包括任意数量的客户网络6。然而,为了便于描述,在图1中仅示出客户网络6a-6b。服务提供商网络12可以表示由服务提供商拥有和操作的计算机网络,服务提供商通常是大型的电信实体或电信公司。服务提供商网络12表示l3计算机网络,其中对于跟随有编号的层的引用指代在开放系统互连(osi)模型中的对应层。在其本身支持如osi模型中所描述的l3操作的意义上,服务提供商网络12是l3网络。公共l3操作包括根据l3协议(诸如因特网协议(ip))执行的那些操作。l3在osi模型中也称为“网络层”,并且贯穿本公开,术语l3可以与短语“网络层”互换使用。虽然未示出,但是服务提供商网络12可以耦接至由其它提供商管理的一个或多个网络,并且因此可以形成大规模公共网络基础设施(例如因特网)的一部分。因此,客户网络6可以看作为因特网的边缘网络。服务提供商网络12可以向客户网络6内的计算设备提供对因特网的访问,并且可以允许客户网络内的计算设备彼此通信。在一些情况下,服务提供商网络12表示将用于数据中心的租户的ce互连的数据中心l2/l3交换结构(或“数据中心结构网络”)。除了pe路由器10之外,服务提供商网络12还可以包括各种网络设备。例如,服务提供商网络12可以包括路由反射器、一个或多个提供商路由器(也称为“p”或“核”路由器)、开关等。在一些实例中,路由反射器(未示出)可以在服务提供商网络12内并且沿着两个或更多个pe路由器之间的服务提供商网络中的路径驻留。由于内部bgp(ibgp)全网状要求,一些网络可以使用路由反射器以简化配置。使用路由反射器,路由器分组成集群,集群由对于自治系统(as)唯一的数字标识符识别。在集群内,bgp会话从单个路由器(路由反射器)配置到每个内部对等点。利用该配置,ibgp全网状要求可以通过路由反射器满足。为了在as中使用路由反射,将一个或多个路由器指定为路由反射器—通常,每个存在点(pop)一个路由器。路由反射器具有将从内部对等点学习到的路由重新通告给其它内部对等点的bgp能力。不是要求所有内部对等点彼此完全协调配合,路由反射可以仅使路由反射器与所有内部对等点完全协调配合。虽然为了便于解释而没有示出其它的网络设备,但是应当理解,系统2可以包括其它的网络和/或计算设备,诸如,例如一个或多个其它的交换机、路由器、集线器、网关、(诸如防火墙、入侵检测和/或入侵防护设备的)安全设备、服务器、计算机终端、膝上型计算机、打印机、数据库、诸如蜂窝电话或个人数字助理的无线移动设备、无线接入点、网桥、电缆调制解调器、应用加速器或其它网络设备。此外,虽然系统2中的元件示为直接耦接,但是应当理解,可以沿网络链路16中的任一个包括一个或多个其它的网络元件,使得系统2的网络元件不直接耦接。服务提供商网络12通常提供多种住宅和商业服务,包括住宅和商业类数据服务(其通常称为“因特网服务”,因为这些数据服务允许访问被称为因特网的公共可访问网络的集合)、住宅和商业类电话服务和/或语音服务、以及住宅和商业类电视服务。通过服务提供商网络12提供的一种这样的商业类数据服务包括l2evpn服务。evpn是这样的服务:在诸如服务提供商网络12的中间l3网络两端提供l2连接性的形式,以将通常位于两个不同地理区域内的两个l2客户网络(诸如l2客户网络6)互连。通常,evpn对于客户网络是透明的,因为这些客户网络不知道介入的中间服务提供商网络,并且相反,这些客户网络运转并操作如同这些两个客户网络直接连接并形成单个l2网络一样。在某种程度上,evpn能够在两个地理上远离的各自操作为l2网络的客户站点之间实现透明的lan连接的形式,并且因此,evpn也可以称为“透明lan服务”。为了配置evpn,服务提供商的网络运营商经由配置接口或管理接口来配置包括在服务提供商网络12内的各种设备,其中服务提供商网络12与l2客户网络6通过接口交互。evpn配置可以包括evpn实例(evi),其由一个或多个广播域组成。通常,evi可以指代在pe路由器(诸如pe路由器10a-10c中的任一个)上的路由和转发实例。因此,如本文中进一步描述的,可以在用于以太网段14的pe路由器10上配置多个evi,每个evi提供单独的逻辑二层(l2)转发域。以这种方式,可以配置多个evi,每个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-17b。伪线是由两个单向标签交换路径(lsp)形成的逻辑网络连接,该单向标签交换路径模拟不由服务提供商网络12本身提供的用于在服务提供商网络12的边界之外消费的连接。伪线可以模拟服务提供商网络12内的l2连接,使服务提供商网络12能够在外部提供用于由l2客户网络6消费的仿真l2连接。因而,每个evpn实例可以在伪线17上操作使能够在客户网络6之间实现虚拟形式或逻辑形式的l2连接。为了配置evi,可以配置伪线17,使得提供给定的evi的pe路由器10中的每一个通过伪线的方式与参与evi的pe设备中的每个其它pe设备互连。在图1的实例中,pe路由器10中的每一个提供对evpn的访问以便承载与客户网络6相关联的流量,并且因此,同一以太网段内的pe设备10中的每一个可以经由伪线17连接到每个其它pe设备10。一旦以这种方式配置伪线,可以在pe设备10内启用evpn以在伪线上操作,在本上下文中,evpn可以通过服务提供商网络12作为逻辑专用链路操作。在操作中,evpn通常包括预先或以另外方式将标签和伪线标签插入到输入的l2数据包上,该l2数据包也可以称为l2帧(特别是在以太网的背景中),并且通过所配置的伪线中的对应一个传输带标签的数据包。一旦在服务提供商网络12内配置了evpn,客户网络6内的客户设备4可以经由evpn彼此通信,就好像它们直接连接到l2网络一样。为了建立evpn,在pe路由器10a-10c上执行的evpn协议触发对于以太网段14的evpn指定转发器(df)选择。例如,这可以通过在pe路由器10a-10c中的每一个上执行的evpn协议来完成,该pe路由器10a-10c参与到以太网段中,该太网段引导路由器输出通告以太网段标识符(esi)的路由协议消息,该esi通常在所有evpn实例(evi)中是唯一的。此外,对于每个evi,evpn协议引导路由器输出通告以太网自动发现(ad)路由的路由协议消息,该以太网ad路由针对耦接至evpn实例的以太网段指定相关esi。一旦evpn对于{evi,esi}对是可操作的,那么pe路由器10a-10c向远程pe路由器10d输出路由协议消息,以宣告与客户网络6b中的客户装备相关联的媒体访问控制(mac)地址。例如,在典型的操作中,pe路由器10a-10c使用边界网关协议(bgp)进行通信,并且evpn协议指定用于evpn的bgp网络层可达性信息(nlri),并可以限定用于经由bgp路由协议传送evpn信息的不同路由类型。通常使用bgp多协议扩展在bgp中承载evpnnlri。通过每个pe路由器10a-10c使用bgp通告的以太网段路由包括路由区分符和以太网段标识符。由每个pe路由器10a-10c为每个evi通告的以太网ad路由指定路由区分符(rd)(例如mpls边缘交换机(mes)的ip地址)、esi、以太网标签标识符以及mpls标签。通过pe路由器10a-10c输出的后续bgp媒体访问控制(mac)路由宣告用于evpn的客户装备4的mac地址,并且其包括rd、esi、以太网标签标识符、mac地址和mac地址长度、ip地址和ip地址长度以及mpls标签。相对于evpn协议的其它实例信息在“bgpmpls-basedethernetvpn”,requestforcomments(rfc)7432,internetengineeringtaskforce(ietf)及2015年2月中描述,其全部内容通过引用结合于此。在图1的实例中,当向客户网络6提供evpn服务时,pe路由器10和ce8执行mac地址学习以在系统2中有效地转发l2网络通信。也就是说,当pe路由器10和ce8转发以太网帧时,路由器学习用于l2网络的l2状态信息,包括用于网络内的客户装备4的mac寻址信息以及可到达客户装备4的物理端口。pe路由器10和ce8通常将mac寻址信息存储在与相应接口相关联的mac表中。当转发在一个接口上接收的单个以太网帧时,除非路由器先前已经学习了可到达以太网帧中指定的目的地mac地址的特定接口,路由器通常将该以太网帧广播到与evpn相关联的所有其它接口。在这种情况下,路由器将以太网帧的单个副本转发到相关接口之外。此外,由于pe路由器10通过本地附接电路学习可到达的客户装备4的mac地址,所以pe路由器10利用三层(l3)路由协议(即在本实例中是bgp)中的mac地址路由通告,共享所学习的mac地址并且提供如下指示,即通过正在发布路由通告的具体pe路由器可到达mac地址。在针对给定的evi使用pe路由器10实现的evpn中,pe路由器10中的每一个使用bgp路由通告(本文中也称为“mac路由”或“mac广播路由”)将本地学习的mac地址通告给其它pe路由器10。如下面进一步描述的,mac路由通常指定客户装备4的单独mac地址以及其它转发信息,诸如路由描述符、路由目标、2层段标识符、mpls标签等。以这种方式,pe路由器10使用bgp来通告和共享在转发与evpn相关联的二层通信时所学习的mac地址。因此,pe路由器10可以执行mac地址的本地学习和远程学习。pe路由器10中的每一个使用指定由其它pe路由器学习的mac地址的mac路由,来确定如何将l2通信转发到属于连接到其它pe(即远程ce和/或可操作地耦接至pe路由器的ce后面的客户装备)的客户装备4的mac地址。也就是说,pe路由器10中的每一个基于从其它pe路由器接收的mac地址学习信息,确定是否可以将以太网帧直接发送到其它pe路由器10中的具体一个,或者是否将该以太网帧视为要在evpn内泛洪的所谓的“bum”流量(广播、未识别的单播或多播流量)。如图1所示,ce8可以多归属和/或单归属于pe路由器10中的一个或多个。在evpn中,当pe路由器驻留在同一物理以太网段上时,当ce耦接至相同evi上的两个物理上不同的pe路由器时,可以说ce是多归属的。ce8b分别经由链路16d和16e耦接至pe路由器10a和10b,其中pe路由器10a和10b能够经由ce8b提供针对l2客户网络6b的evpn的访问。在给定的客户网络(诸如客户网络6b)可以经由两个不同的并且在一定程度上冗余的链路耦接至服务提供商网络12的实例中,客户网络可以称为是“多归属的”。在该实例中,ce8b可以多归属于pe路由器10a和10b,这是因为ce8b经由单独的并且在一定程度上冗余的链路15a和15b耦接至两个不同的pe路由器10a和10b(其中pe路由器10a和10b均能够提供对于l2客户网络6b的evpn的访问)。网络运营商通常采用多归属的网络,以便在链路15a和15b中的一个发生故障时改善对于由服务提供商网络12提供的evpn的访问。在典型的evpn配置中,仅多归属pe10a-pe10b参与针对每个esi的df选择。pe10c未连接到esi,对于给定esi的df选择结果没有直接了解。在仅pe路由器10a或pe路由器10b中的一个将来自pe路由器10c的网络流量转发到ce8b的活动-待机evpn操作模式中,在每个pe路由器10a-10b上执行的evpn协议基于每个evpn实例发起对于以太网段14的evpndf选择,并且对于每个evpn实例在该选择内参与。也就是说,df选择可以是在每个esi、evi组合的粒度。如果选择了df,被选为df的pe路由器10a-10b中的一个将流量从evpn转发到本地ce8b。在活动-待机evpn操作模式下,活动的多归属pe也是指定转发器。诸如图1所示的evpn,可以在配置有多协议标签交换(mpls)的网络上操作,并且evpn使用mpls标签以便相应地转发网络流量。mpls是根据网络中的路由器维护的路由信息用于设计因特网协议(ip)网络内的流量模式的机制。通过利用mpls协议(诸如标签分发协议(ldp)或具有流量工程扩展的资源预留协议(rsvp-te),源设备可以请求通过网络到达目的地设备的路径,即标签交换路径(lsp)。lsp限定通过网络的独特的路径,以将mpls数据包从源设备承载到目的地设备。使用mpls协议,沿着lsp的每个路由器分配标签并且将该标签传播到沿路径最近的上游路由器。沿路径的路由器添加标签或将标签向远延伸,并执行其它mpls操作以沿所建立的路径转发mpls数据包。如图1的实例所示,服务提供商网络12可以提供用于从客户网络6a向客户网络6b发送网络数据包以及从客户网络6b发送网络数据包的mpls核。pe路由器10a-10c中的每一个实现mpls协议,并且根据在每个相应的pe路由器处配置的路由信息和转发信息将一个或多个mpls标签(即标签栈)应用于网络数据包。在evpn中,应用于网络数据包的标签栈可以包括多个标签。例如,标签栈可以包括外部标签和内部标签。外部标签用作唯一地识别mpls核中的pe路由器的“传送标签”。也就是说,pe路由器10a-10c中的每一个可以在配置和启动时交换控制平面消息,该消息指定唯一地识别每个相应的pe路由器的外部标签。例如,pe路由器10a可以向pe路由器10b-10c发送指定识别pe路由器10a的外部标签的控制平面消息。pe路由器10b-10c可以配置它们相应的转发单元,使得将包括对应于pe路由器10a的外部标签的网络数据包被转发到pe路由器10a。mpls标签栈的内部标签或“服务标签”提供evpn特定的配置信息。如上所述,evpn限定以太网ad路由、mac通告路由以及以太网段路由。例如,以太网ad路由可以根据表1的以下格式来构造:路由描述符(8个八位字节)以太网段标识符(10个八位字节)以太网标签id(4个八位字节)mpls别名标签(3个八位字节)表1:ad路由通告在一个实例中,pe路由器10a可以最初在启动和配置时向pe路由器10c发送以太网ad路由,其包括如上所示的mpls标签。pe路由器10c可以配置它的转发单元中的一个或多个,以应用来自pe路由器10a的以太网ad路由的mpls标签作为应用于目的地为pe路由器10a的网络数据包的标签栈中的内部标签。然后pe路由器10c会将识别pe路由器10a的传送标签应用为标签栈中的外部标签。以这种方式,内部标签提供关于以太网ad路由的evpn特定配置信息,其中pe路由器10c使用该以太网ad路由通过evpn转发网络数据包。在一些配置中,为了提供灵活性和可扩展性,可以在具体的evpn实例(evi)内限定多个桥接域。同样,一个或多个evi可以与单个l3vpn虚拟路由和转发实例(vrf)相关联。例如,可以给服务提供商网络(或数据中心租户)中的每个客户分配唯一的vrf;客户/租户可以在每evpn实例包含一个或多个evpn实例以及一个或多个桥域(例如vlan或vxlan)。为了支持该模型,每个配置的桥域(包括对于evpn实例的默认桥域)需要irb逻辑接口来执行l2功能和l3功能。用于pe路由器10的每个本地桥域或本地irb接口映射到用于pe路由器10的vrf中的唯一ip子网。可以在每个配置的桥域上配置irb接口,该桥域包括用于evpn实例的默认桥域。在一些实例中,pe路由器10中的一个或多个可以在各个pe内嵌入网络虚拟化边缘(nve)功能性,如在“networkvirtualizationedge(nve)”,2014年2月13日,https://tools.ietf.org/html/draft-yong-nvo3-nve-03中所描述的,其全部内容通过引用结合于此。在一些实例中,实现nve功能性的pe可以称为nve设备。如图1所示,pe10a-10c包括用于evpn实例的相应vrf13a-13c(“vrf13”),evpn实例包括客户网络6。通常,vrf允许在单个物理路由器内存在多个路由表。附接电路可以与具体vrf相关联,并且具体的vrf可以配置为转发用于附接电路的流量。vrf13可以配置为包括在“bgp/mplsipvirtualprivatenetworks(vpns)”,2006年2月,https://tools.ietf.org/html/rfc4364中描述的功能性,其全部内容通过引用结合于此。如图1所示,可以为pe10配置虚拟局域网(vlan)。因此,pe10可以使用由vlan限定的桥域将网络数据包转发至客户网络6之间。如图1所示,pe10a-10c可以配置有相应的vlan实例11a-11c。每个实例可以表示由相应pe实现的功能性,以便在由对应的vlan标识符识别的一个或多个2层子网内转发网络数据包。pe10还实现集成的路由和桥接,在同一接口上支持2层桥接和3层路由。因而,集成的路由和桥接允许路由器将本地数据包路由到另一路由的接口或路由到配置有3层协议的另一桥接域。集成的路由和桥接(irb)接口(或“irb”)是使pe或ce能够识别哪些数据包被发送到本地地址(使得这些数据包在可能时被桥接并且仅在需要时被路由)的逻辑接口。因此,irb可以用于本地地路由子网间流量。例如,使用一个或多个irb,pe可以在配置用于pe的路由实例的多个irb的多个vlan之间路由子网间流量。在图1的实例中,pe10中的每一个被示为具有与vrf13相关联的单个irb19并且具有vlan11的基于vlan的桥接域。pe10a包括具有vlan11a桥接域的irb19a;pe10b包括具有vlan11b桥接域的irb19b;并且pe10c包括具有vlan11c桥接域的irb19c。例如,pe10a可以配置有与vrf13a相关联的多个irb并且具有不同的基于vlan的桥接域,并且因此,可以使用多个irb在vlan之间路由流量。pe10中的一个或多个可以实现irb,如在“integratedroutingandbridginginevpn”,ietf-bess-evpn-inter-subnet-forwarding,2015年10月18日,https://tools.ietf.org/html/draft-ietf-bess-evpn-inter-subnet-forwarding-01中所描述的,其全部内容通过引用结合于此。ce8b配置有irb9,irb9具有桥接域,该桥接域提供到达包括客户装备4c、4d的l3子网7的l2可达性。irb9可以配置有在用于irb19a、irb19b的桥接域内的l3地址(例如ipv4/ipv6地址),使得用于ce8b的irb9路由接口可通过用于irb19a、irb19b的路由接口到达。以这种方式,irb9提供从pe10a、pe10b到l3子网7的l2/l3可达性。pe10a、pe10b中的每一个配置有公共静态路由,该公共静态路由指定用于irb9的l3地址作为用于l3子网7的下一跳。更具体地,vrf13中的每一个可以配置有公共静态路由,该公共静态路由指定用于irb9的l3地址作为用于l3子网7的下一跳。在用于l3子网7的pe10a、pe10b中配置的静态路由是“公共的”,这是因为静态路由都指定用于irb9的l3地址作为用于l3子网7的下一跳。静态路由是限定为静态的路由,并且除非通过手动配置,否则通常不会改变。当下一跳(即用于irb9的l3地址)可到达时,vrf13中的静态路由可以插入到转发表中。通过pe10的vrf13接收的数据包转发到下一跳地址用于发送。(例如)相对于通过pe在路由协议消息中接收的路由,静态路由可以是pe10的路由选择过程更优选的。由于在路由协议消息中接收到的路由超时或者另外变得过时,静态路由可能不能从路由表中刷新。根据本公开中描述的技术,为了通告用于l3子网7的可达性同时避免在一个或多个待机的pe路由器处产生黑洞,待机的多归属pe10b抑制用于l3子网7的静态路由的通告。只有活动的多归属pe10a利用路由通告5向也配置有图1中所示的evpn实例的远程pe10c通告用于l3子网7的静态路由。路由通告5可以表示根据边界网关协议(bgp)的消息。例如,路由通告5可以表示包括含有静态路由的网络层可达性信息(nlri)的多协议bgp(mp-bgp)更新消息。路由通告可以指定由vrf13c导入的路由目标(rt)。vrf13c可以将路由通告5中通告的静态路由添加到其路由表中。结果,去往l3子网7内的主机中的任一个的数据包,以及在pe路由器10c的vrf13c处接收到的用于包括客户网络6a的evpn实例的数据包,通过pe路由器10c转发到pe路由器10a,以便在irb19a的桥接域上朝向ce8b的irb9输出。因为pe10b是用于包括客户网络6的evpn实例的活动-待机evpn操作模式中的待机路由器,所以pe10b不通告用于l3子网7的静态路由。结果,pe10c不接收来自pe10b的静态路由,并且因此不将去往l3子网7内的主机的数据包转发到pe10b。因为pe10b对于(与evpn实例相关联的)这样的数据包是待机路由器,以这种方式,pe10b不会使这样的数据数据包黑洞化,并且可以避免黑洞。换句话说,如果多个多归属pe向远程pe通告公共静态路由,那么由远程pe执行的bgp最佳路径选择算法将仅选择用于多归属pe的最低环回地址,其中该多归属pe全部通告了静态路由。如果所选择的静态路由(其在远程pe处接收,具有通告的多归属pe作为下一跳)来自处于待机模式的多归属pe,那么远程pe将所有匹配所选择的静态路由的数据包引导到待机的多归属pe,其中该待机的多归属pe丢弃数据包。这导致数据包黑洞化和网络中的严重问题。然而,如果在活动的多归属pe上只配置了一个静态路由,当从活动的多归属pe到多归属ce的接入链路断开时,那么用于静态路由的子网会被隔离。通过根据上述技术操作并且在多归属pe路由器中的每一个内配置公共静态路由,但如果多归属pe以待机模式操作则抑制用于静态路由的路由协议通告,数据包可以从远程pe引导至活动的多归属pe。在一些情况下,用于ce8的多归属pe10的pe10a、pe10b中的每一个基于对(提供到达l3子网7的可达性的)l3接口的l2地址的请求是否成功来确定是否通告静态路由,其中该请求可以包括地址解析协议(arp)请求,或者在ipv4的情况下包括邻居发现协议(ndp)邻居请求。如静态路由中所指定的,该请求由pe发起并且请求用于多归属的ce8的l3接口的l2地址,其中该多归属ce8是作为l3子网的下一跳。pe10尝试在以太网段14的evpn桥域上发送(例如广播)请求。如果pe10接收到响应于该请求的回复(arp回复或邻居通告),那么ce设备可通过pe经由以太网段14到达,并且pe通过发送路由通告5,向也配置为提供evpn的远程pe10c通告静态路由。然而,如果没有接收到回复,那么这指示pe10对于evpn是待机转发器或非指定转发器,并且因此pe10抑制静态路由的通告。结果,远程pe10c不从待机的多归属pe10b接收用于静态路由的通告,并且因此避免通过中间l3网络将去往l3子网7内的主机设备的数据包发送到待机的多归属pe10b,其中因为不允许待机的多归属pe10b将流量转发至到达ce8的以太网段14,这样的数据包将被待机的多归属pe10b丢弃。相反,远程pe10c将数据包发送到活动的多归属pe10a,该活动的多归属pe10a将数据包经由以太网段14转发到ce8。此外,在一些情况下,如果发生故障,并且由于先前活动pe10a的故障,先前指定的待机的pe10b转换为活动的多归属pe的角色,则当前活动的多归属pe10b开始将静态路由通告给远程pe10c,以使远程pe10c开始将流量发送给当前活动的多归属pe10b。图2是示出根据本公开的技术的实现抑制静态路由通告的技术的网络设备的进一步细节的框图。pe10a包括含有路由引擎22的控制单元20,并且控制单元20耦接至转发引擎30a-30n。转发引擎30中的每一个与接口卡32a-32n(“ifc32”)中的一个或多个相关联,该接口卡32a-32n经由入站链路58a-58n(“入站链路58”)接收数据包并经由出站链路60a-60n(“出站链路60”)发送数据包。ifc32通常经由多个接口端口(未示出)耦接至链路58、链路60。入站链路58和出站链路60可以表示物理接口、逻辑接口或其某种组合。控制单元22和转发引擎30的元件可以在软件或硬件中单独实现,或者可以实现为软件、硬件或固件的组合。例如,控制单元20可以包括执行软件指令的一个或多个处理器、一个或多个微处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或任何其它等效的集成或离散逻辑电路、或其任意组合。在这种情况下,控制单元20的各种软件模块可以包括在包含指令的计算机可读介质(诸如计算机可读存储介质)中存储、实施或编码的可执行指令。例如,当执行指令时,在计算机可读介质中嵌入或编码的指令可以使可编程处理器或其它处理器执行该方法。计算机可读存储介质可以包括随机存取存储器(ram)、只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、非易失性随机存取存储器(nvram)、闪速存储器、硬盘、cd-rom、软盘、盒式磁带、固态驱动器、磁性介质、光学介质或其它计算机可读介质。计算机可读介质可以利用与pe路由器10a的各个方面(例如协议)对应的指令来编码。在一些实例中,控制单元20针对这些方面检索并执行来自存储器的指令。路由引擎22包括内核43,内核43为用户级处理提供运行时操作环境。例如,内核43可以表示unix操作系统衍生物,诸如linux或berkeley软件分发(bsd)。内核43提供库和驱动程序,通过该库和驱动程序,用户级处理可以与底层系统进行交互。路由引擎22的硬件环境55包括微处理器57,该微处理器57执行从存储设备(未在图2中示出)加载到主存储器(也未在图2中示出)中的程序指令,以便执行软件栈,该软件栈包括内核43和在由内核43提供的操作环境上执行的处理。微处理器52可以表示一个或多个通用或专用处理器,诸如数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或任何其它等效的逻辑器件。因此,如本文所使用的术语“处理器”或“控制器”可以指代前述结构或可操作以执行本文所描述的技术的任何其它结构中的任意一个或多个。内核43为在网络栈的不同层执行各种协议44的路由处理45提供操作环境。例如,路由引擎22包括在网络栈的网络层操作的网络协议。在图2的实例中,网络协议包括作为路由协议的边界网关协议(bgp)46。bgp46可以包括多协议bgp(mp-bgp)。路由引擎22可以包括图2中未示出的其它协议。路由引擎22负责维持路由信息42以反映网络和pe10a连接到的其它网络实体的当前拓扑。具体地,路由协议周期性地更新路由信息42,以基于通过pe10a接收的路由协议消息来准确地反映网络和其它实体的拓扑。如图2所示,pe10a可以配置有包括vrf22a的多个vrf。vrf22a表示虚拟路由和转发实例。vrf22a管理至少一个路由表。如图1所示,附接电路可以与诸如vrf22a的具体vrf相关联,并且具体vrf可以配置为转发用于附接电路的流量。在一些实例中,vrf22a可以表示多个vrf实例。转发引擎30a-30n(“转发引擎30”或“转发单元”)表示提供网络流量的高速转发的硬件和逻辑功能。转发引擎30通常包括利用转发信息编程的一个或多个转发芯片组合,该转发信息将带有特定下一跳的网络目的地与对应的输出接口端口映射。通常,当pe10a经由入站链路58中的一个接收数据包时,转发引擎30中的一个通过基于数据包内的信息遍历编程的转发信息来识别对于数据包的相关联的下一跳。转发引擎30中的一个(入口转发引擎或不同的出口转发引擎)在映射到对应的下一跳的出站链路60中的一个上转发该数据包。在图2的实例中,转发引擎30a包括转发信息56。根据路由信息42,转发引擎30a维持将具有特定下一跳的网络目的地与对应的接口端口相关联的转发信息56。例如,路由引擎22分析路由信息42并根据路由信息42生成转发信息56。转发信息56可以以一个或多个表、链接列表、基数树、数据库、平面文件或任何其它数据结构的形式来维护。转发引擎30a为通过pe10a建立的每个以太网vpn实例(evi)维持转发信息56,以将具有特定下一跳的网络目的地与相应的接口端口相关联。如图1所示,evi可以与evpn中的一个或多个以太网段相关联。通常,当pe10a经由入站链路58中的一个在给定的以太网段的lsp上接收数据包时,例如,转发引擎30a通过基于数据包内的信息(例如标签信息)遍历转发信息56来识别用于数据包的相关联的下一跳。转发引擎30a根据与以太网段相关联的转发信息56,在出站链路60中的一个上将数据包转发到对应的下一跳。此时,转发引擎30a可以从数据包推送和/或弹出标签以沿正确的lsp转发数据包。路由引擎22还包括evpn模块48,其具有执行洪泛的洪泛模块54以及执行二层(l2)学习(例如从入站标签交换路径(lsp)学习客户设备mac地址以及具有对应的出站lsp的这些客户mac地址与输出接口关联性)的学习模块52。evpn模块48可以为通过pe10a建立的每个evi维持mac表50,或者在可替换的实例中,evpn模块48可以维持独立于每个相应的evi的一个或多个mac表。可替换地,学习模块52和洪泛模块54可以配置用于全部或部分地通过转发引擎30a执行。在一些实例中,evpn模块48可以是路由处理45的一部分或通过路由处理45执行。信令模块40输出控制平面消息以自动建立lsp、以太网段,并且另外在pe10a与其它pe路由器10中的每一个之间提供一个或多个evpn。信令模块40可以使用一个或多个合适的l3协议(诸如bgp)向pe路由器10发信号。信令模块40可以与转发引擎30a通信以自动更新转发信息56。在一些实例中,信令模块40可以是路由处理45的一部分或通过路由处理45执行。evpn模块48在pe10a的控制平面中执行,并且执行mac地址学习以针对由pe10a建立的每个evi自动更新转发信息56的部分。在一些实例中,当pe10a在通过路由器pe10a针对一个或多个pe10(该pe10为evi的部件)建立的lsp上接收数据包时调用evpn模块48。evpn模块48使用学习模块52执行mac地址学习并更新mac表50中的一个,以初始记录连接到pe10a的lsp与evpn客户设备的源mac地址(其中在lsp上从该evpn客户设备接收数据数据包)之间的关联。例如,mac表50中的一个记录识别连接到pe10a的lsp的lsp标识符,并记录识别通过lsp传输的数据包的源客户设备的mac地址。实际上,路由器pe10a,即l3路由设备(或在一些实例中,l2交换设备)学习mac地址与lsp(其映射到端口或接口)之间的关联,就像l2交换机学习mac地址与端口之间的关联一样。转发信息56可以表示虚拟端口绑定和桥接表。为了更新mac表50中的一个,路由引擎22中的evpn模块48的学习模块52执行l2学习以及将l2客户mac地址与特定lsp的关联。然后学习模块52传送记录在mac表50中的一个中的信息,以便配置转发信息56。以这种方式,可以利用每个lsp和输出接口与经由那些lsp可到达的特定源客户mac地址之间的关联而对转发引擎30a进行编程。evpn模块48可以与转发引擎30通信以更新与evpn相关联的mac表50中的一个,以将客户mac地址与合适的出站lsp相关联。在一些实例中,转发引擎30a可以维持本地mac表(未示出)。在更新之后,mac表50包括连接到pe10a的lsp(该lsp用于将l2流量传送到客户设备的mac地址)之间的关联。换句话说,mac表50记录lsp与网络设备(其中可以在lsp上将数据包发送至该网络设备)之间的关联。例如,mac表50可以记录识别由pe10a发起的lsp的lsp标识符以及记录识别可到达的客户设备的mac地址的那些lsp标识符。转发引擎30a在目的地为evpn中的pe路由器中的一个的入站链路58上接收数据包。转发引擎30a确定数据包的目的地客户mac地址是否包括在与evpn相关联的mac表中的一个内。如果mac地址包括在mac表中的一个内,那么pe10a基于与evpn相关联的转发信息56将数据数据包转发到与mac地址相关联的lsp上的目的地pe路由器。如果客户mac地址不包括在mac表中的一个内,那么pe10a基于与evpn相关联的转发信息56经由lsp将数据包洪泛到所有pe路由器。在2008年10月7日提交的美国专利申请12/246,810“inter-autonomoussystem(as)virtualprivatelocalareanetworkservice(vpls)”中进一步描述了路由器的mac学习的实例细节,其全部内容通过引用结合于此。evpn模块48另外管理对于pe10a的evpn多归属操作模式。也就是说,evpn模块48操作以维持转发至多归属于pe10a和一个或多个其它路由器(例如,图1的示例拓扑中的pe10b)的ce的evpn服务和流量以及从该ce转发的evpn服务和流量。例如,在网络故障的情况下(诸如pe10a、pe10b到ce8的链路15a、15b故障;pe10a、pe10b中的任一个的故障;或pe10a、pe10b中的任一个pe与远程pe10之间的mpls-可达性或其它类型的隧道故障),evpn模块48与pe10b协调以确保pe10a、pe10b中的一个处于活动模式并且另一个处于待机模式。evpn模块48可以与pe10b协调以选择用于以太网段14的新的指定转发器。vrf22a进一步配置有irb19a的路由接口,irb19a的逻辑接口安装(或“配置”)到转发引擎30a的转发信息56。内核43包括表示数据结构的接口表49(“接口49”),该数据结构包括针对pe10a而配置的每个逻辑接口的对应条目。接口49包括irb19a的条目。相应逻辑接口的条目可以指定描述该逻辑接口的相应当前信息。逻辑接口的当前信息可以包括指示接口状态的状态信息,即逻辑接口是能够(“上”(“up”))发送/接收包还是不能够(“下”(“down”))发送/接收数据包;以及指示逻辑接口的转发状态的阻塞信息(例如,“未阻塞”指示在接口上转发流量或“阻塞”指示没有在接口上转发流量)。在一些实例中,当pe10a对于配置有irb19a的evi是待机的多归属pe路由器时,irb19a配置为处于“下”状态。在一些实例中,当pe10a对于evi是非指定的转发器时,irb19a配置为处于“阻塞”状态。内核43还执行arp51和/或ndp53以生成arp请求70和/或ndp邻居请求72,并将该请求注入到数据平面中用于经由ifc32输出。针对图1所示的evpn实例的vrf22a配置有静态路由41。例如,静态路由41可以相对于图1中示出的拓扑指定在ce8中配置的irb9的路由接口的ip地址作为用于l3子网7的下一跳。例如,静态路由41可以根据以下语句配置:setstaticroutesubnet-xnext-hopce_irb_ip,其中ce_irb_ip是在ce8上配置以到达subnet-x(l3子网7)的irb9的ip地址。根据本文中描述的技术,执行bgp46的路由处理45基于对于evpn实例的pe10a的evpn操作模式来确定通告静态路由41,其中evpn实例包括ce8,并且pe10a使用irb19a向该vpn实例桥接evpn流量。仅当pe10a对于多归属ce8处于活动模式时,路由处理45使用bgp46向pe10c通告静态路由41。为了确定pe10a是否处于活动模式,路由处理45可以使用arp来确定用于pe10a至ce8链路的evpn实例的逻辑接口irb19a是处于“下”状态还是“上”状态。如果irb19a处于向“下”状态(或“内核下状态”(“kerneldownstate”)),那么路由处理45不通告(或抑制)静态路由41。如果irb19a处于“上”状态(或“内核上状态”(“kernelupstate”)),那么路由处理45使用bgp46向pe10c通告静态路由41。结果,pe10c向处于活动模式的pe10a、pe10b发送数据包。图3是示出根据本文中描述的技术的用于供应商边缘网络设备通告或抑制用于evpn实例的静态路由的示例操作模式的流程图。pe10a接收将pe10a配置到用于evi的多归属ce8的配置数据(101)。用于vrf22a的evi可以具有多个相关联的irb,包括irb19a。pe10a确定用于vrf22a的evi的一个或多个irb中的irb19a具有与ce8的irb9的网关ip地址共享桥域l3子网的网关l3(例如ip)地址(或路由接口l3地址)(102)。换句话说,pe10a找到一个或多个irb中的irb(这里是irb19a),其具有与ce8的irb9的网关ip地址共享l3子网的逻辑接口网关ip地址。这指示irb19a是pe10a针对ce8的irb9的出站逻辑接口。pe10a生成对于irb9的网关ip地址的l2地址的请求,被生成的请求在桥域上输出,其中irb19a是该桥域的一部分(或是其接口),在图1的示例配置中是vlan11a。例如,该请求可以包括arp请求或ndp邻居请求。在一些实例中,pe10a可以在桥域上输出对于l2地址的请求(105)。在一些情况下,路由处理45请求内核43生成对于l2地址的请求,并且将对于l2地址的请求注入到转发引擎30中的一个内。内核43可以从接口49确定pe10a到ce8链路处于“下”状态或正在阻塞,在这种情况下,内核43丢弃来自路由处理45的请求。如果pe10a接收到对于irb9网关ip地址的l2地址的请求的响应(106中的“是”分支),那么irb9网关ip地址是可到达的,并且这指示pe10a对于包括irb19a的evi处于活动模式。因此,pe10a在路由通告5中向远程pe10c通告静态路由41(108)。然而,如果pe10a没有接收到对于irb9网关ip地址的l2地址的请求的响应(106中的“否”分支),那么irb9网关ip地址是不可到达的,并且这指示pe10a对于包括irb19a的evi处于待机模式。因此,pe10a抑制静态路由41并且不向远程pe10c通告静态路由41(110)。pe10a可以响应于各种事件执行上述操作模式。例如,pe10a可以响应于从活动切换为待机而执行上述操作模式,或者反之亦然。pe10a可以响应于配置有包括irb19a的evi而执行上述操作模式。pe10a可以响应于配置为向ce8提供与pe10b的多归属的虚拟桥接连接性而执行上述操作模式。在一些情况下,ce8配置有irb9,该irb9具有在用于多归属之后的irb19a的桥域中的网关ip地址。在这种情况下,pe10a可以接收对于网关ip地址的免费arp回复,并且将网关ip地址匹配至为静态路由41指定的下一跳(例如)。由于这些ip地址匹配,这指示pe10a对于与irb19a相关联的evi处于活动模式,并且因此,pe10a可以在路由通告5中通告静态路由41。网关ip地址是l3地址。图4是示出根据本公开的技术的示例系统的框图。系统200被配置为与图1的系统2的拓扑基本类似的拓扑,并且系统200示出具有l3vpn部署模型的evpn活动—待机。在该模型中,多归属的pe10a、pe10b用于提供l3vpn服务以及l2vpn服务,并且irb接口用于将l3vpn和evpn绑定在一起。在这种情况下,利用n个客户vrf(l3vpn),使用evpn活动—待机模型以这种方式来完成服务雕刻:使得平均来说pe10a是对于一半客户vrf指定的转发器(df),而另一pe10b是对于另一半数目的vrf指定的转发器。利用该部署,当在vrf下配置静态路由并且经由bgp向远程pe10c通告(根据l3vpn概念)时,多归属pe10a、pe10b(df和非df)都向远程pe通告静态路由。收到路由更新时的远程pe运行bgp路径选择算法并且选择静态路由中的一个,这在许多情况下可能已经被非df通告并导致黑洞。也就是说,在evpn活动—待机中,在非df中面向ce8的接口处于“阻塞”状态。当远程pe尝试使用从非df选择的路由发送流量时,这样的流量在非df处被黑洞化。在典型的客户使用情况下,利用n个vrf,其中每个vrf具有一个静态路由;当远程pe10c发送前往n个vrf中的所有静态路由的流量时,~50%的流量变得黑洞化。例如,pe10a、pe10b中的任一个可以配置有以下示例配置:其中lvpn0-1vrf中的静态路由指向ce8的irb9下一跳。在该实例中,根据本文描述的技术的pe10a、pe10b在为l3vpn通告静态路由时(针对该静态路由,pe路由器是指定的转发器),各自操作以通告更高的本地优先级。内部bgp(ibgp)会话使用称为本地优先级的度量,其承载在路径属性local_pref中的ibgp更新数据包内。当自治系统(as)具有到另一as的多个路由时,本地优先级指示一个路由优先于其它路由的程度。优选具有最高本地优先级值的路由用于路由选择。在图4的实例中(其中pe10a是对于vrf13的df),pe10a发送包括指定ce8的静态路由的路由通告202。作为非df操作的pe10b发送包括指定ce8的静态路由的路由通告204。因为pe10a是df,例如通过利用相对较高的值标记路径属性local_pref,在通告中指示路由通告202中承载的路由作为路由通告中承载的更优选的路由。例如,pe10c接收路由通告202、204并且根据bgp路径选择算法选择朝向df的最佳路径。因此,远程pe10c向dfpe10a(而不是非dfpe10b)发送流量,从而避免在多归属pe之间完成服务雕刻时的流量黑洞。在导致df角色改变的网络故障的情况下,由此先前的df现在变为非df,并且反之亦然,先前的dfpe10a发送新的路由通告,以利用由pe10发起的l3vpn(静态)路由的默认本地优先级值更新静态路由。在这一点,新的dfpe10b发送新的路由通告,以利用由pe10b发起的l3vpn(静态)路由的较高本地优先级值更新静态路由。图5是示出根据本文中描述的技术的供应商边缘网络设备通告用于l3vpn的静态路由的示例操作模式的流程图。pe10a接收将pe10a配置到多归属ce8用于l3vpn的配置数据(202)。如果pe10a是对于l3vpn的指定转发器(204中的“是”分支),那么pe10a在路由通告202中向远程pe10c通告对于l3vpn的静态路由,该静态路由提供到到达ce8的可达性,路由通告202指定较高的本地优先级(即pe10a的默认本地优先级)(206)。然而,如果pe10a不是l3vpn的指定转发器(204中的“否”分支),那么pe10a在路由通告204中向远程pe10c通告对于l3vpn的静态路由,该静态路由提供到达ce8的可达性,路由通告204指定pe10b的默认本地优先级(204)。因此,pe10c导入pe10通告的静态路由,并且将用于l3vpn的流量引导至dfpe10a,从而避免在pe10b处的黑洞化。本公开中描述的技术可以至少部分地在硬件、软件、固件或其任意组合中实现。例如,所描述的技术的各个方面可以在一个或多个处理器内实现,包括一个或多个微处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或任何其它等效集成或离散逻辑电路、以及这些组件的任何组合。术语“处理器”或“处理电路”通常可以指代前述逻辑电路中的任一项,单独地或与其它逻辑电路组合或任何其它等效电路。包括硬件的控制单元还可以执行本公开的技术中的一个或多个。这样的硬件、软件以及固件可以在相同的设备内或在单独的设备内实现,以支持本公开中描述的各种技术。另外,所描述的单元、模块或组件中的任一项可以一起或单独实现为离散但是可互操作的逻辑设备。将不同特征描述为模块或单元旨在突出不同的功能方面,并且不一定暗含这样的模块或单元必须通告单独的硬件、固件或软件组件实现。相反,与一个或多个模块或单元相关联的功能性可以由单独的硬件、固件或软件组件执行,或者集成在公共或单独的硬件、固件或软件组件中。本公开中描述的技术还可以在包括编码有指令的计算机可读介质的制品中实施或编码。诸如当通过一个或多个处理器执行计算机可读介质中包含或编码的指令时,在包括编码的计算机可读介质的制品中嵌入或编码的指令可以使一个或多个可编程处理器或其它处理器实现本文中描述的技术中的一个或多个。计算机可读存储介质可以包括随机存取存储器(ram)、只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、闪存、硬盘、光盘rom(cd-rom)、软盘、盒式磁带、磁性介质、光学介质或其它计算机可读介质。在一些实例中,制品可以包括一个或多个计算机可读存储介质。在一些实例中,计算机可读存储介质可以包括非瞬时性介质。术语“非瞬时性”可以指示存储介质未包含在载波或传播信号中。在特定实例中,非瞬时性存储介质可以(例如在ram或高速缓存中)存储随时间可以改变的数据。除了上述之外或作为上述的替代,描述以下实例。在以下任何实例中描述的特征可与本文中描述的任何其它实例一起使用。实例1。一种方法,通过中间的3层网络的提供商边缘路由器接收配置数据,所述配置数据配置所述提供商边缘路由器,以使用活动-待机操作模式向客户边缘设备提供多归属的2层虚拟桥接连接性;以及响应于确定所述提供商边缘路由器能够向所述客户边缘设备发送2层数据包,通过所述提供商边缘路由器向远程提供商边缘路由器发送路由通告,所述路由通告包括指定所述客户边缘设备的3层地址作为对于3层子网的下一跳的静态路由。实例2。根据实例1的方法,其中,所述配置数据利用irb(集成路由和桥接)接口进一步配置所述提供商边缘路由器,并且其中,确定所述提供商边缘路由器能够向所述客户边缘设备发送2层数据包包括,通过所述提供商边缘路由器确定所述irb接口具有包括所述客户边缘设备的所述3层地址的3层子网。实例3。根据实例2的方法,其中,所述配置数据利用用于包括所述客户边缘设备的evpn(以太网虚拟专用网络)的evpn实例进一步配置所述提供商边缘路由器,并且其中,所述配置数据进一步将所述irb接口配置为用于所述evpn实例的路由接口。实例4。根据实例2的方法,其中,确定所述提供商边缘路由器能够向所述客户边缘设备发送2层数据包包括:通过所述提供商边缘路由器生成对用于所述客户边缘设备的所述3层地址的2层地址的请求,所述请求被生成以便在所述irb桥接接口的桥接域上输出;以及通过所述提供商边缘路由器从所述客户边缘设备接收对所述请求的回复。实例5。根据实例4的方法,其中,对用于所述客户边缘设备的所述3层地址的2层地址的所述请求包括地址解析协议请求和邻居发现协议邻居请求中的一个。实例6。根据实例4的方法,其中,包括irb桥接域的桥接域包括虚拟局域网。实例7。根据实例1的方法,其中,确定所述提供商边缘路由器能够向所述客户边缘设备发送2层数据包包括:通过所述提供商边缘路由器生成对用于所述客户边缘设备的所述3层地址的2层地址的请求;以及通过所述提供商边缘路由器从所述客户边缘设备接收对所述请求的回复。实例8。根据实例1的方法,其中,所述客户边缘设备的所述3层地址包括在所述客户边缘设备中配置的irb(集成路由和桥接)接口的网关l3地址,所述网关l3地址提供对包括所述客户边缘设备的客户网络中的3层子网的可达性。实例9。根据实例1的方法,其中,确定所述提供商边缘路由器能够向所述客户边缘设备发送2层数据包包括,通过所述提供商边缘路由器确定所述提供商边缘路由器对于所述客户边缘设备是活动的多归属提供商边缘路由器。实例10。根据实例1的方法,其中,确定所述提供商边缘路由器能够向所述客户边缘设备发送2层数据包包括,通过所述提供商边缘路由器确定所述提供商边缘路由器是用于所述客户边缘设备的指定转发器提供商边缘路由器。实例11。根据实例1的方法,其中,所述配置数据包括第一配置数据,其中,所述客户边缘设备包括第一客户边缘设备,其中,所述远程提供商边缘路由器包括第一远程提供商边缘路由器,其中,所述静态路由包括第一静态路由,并且其中,所述路由通告包括第一路由通告,所述方法进一步包括:通过所述提供商边缘路由器接收第二配置数据,所述第二配置数据配置所述提供商边缘路由器以便使用活动-待机操作模式向第二客户边缘设备提供多归属的2层虚拟桥接连接性;以及响应于确定所述提供商边缘路由器对于所述第二客户边缘设备是活动的多归属提供商边缘路由器,通过所述提供商边缘路由器根据路由协议向第二远程提供商边缘路由器发送第二路由通告,所述第二路由通告包括指定所述第二客户边缘设备的3层地址的第二静态路由并且指示所述第二静态路由对于路由协议具有比所述提供商边缘路由器的默认本地优先级更高的本地优先级。实例12。一种非瞬时性计算机可读介质,包括用于使中间的3层网络的提供商边缘路由器中的一个或多个可编程处理器执行以下操作的指令:接收配置数据,该配置数据配置提供商边缘路由器,以使用活动-待机操作模式向客户边缘设备提供多归属的2层虚拟桥接连接性;以及响应于确定所述提供商边缘路由器能够向所述客户边缘设备发送2层数据包,向远程提供商边缘路由器发送路由通告,所述路由通告包括指定所述客户边缘设备的3层地址作为对于3层子网的下一跳的静态路由。实例13。一种能操作为提供边缘路由器的网络设备,包括:能操作地耦接至存储器的一个或多个处理器;配置接口,配置为通过所述一个或多个处理器执行以接收配置数据,所述配置数据将所述网络设备配置为中间的3层网络的提供商边缘路由器,以使用活动-待机操作模式向客户边缘设备提供多归属的2层虚拟桥接连接性;以及路由处理,配置为通过所述一个或多个处理器执行以响应于确定所述网络设备能够向所述客户边缘设备发送2层数据包而向远程提供商边缘路由器发送路由通告,所述路由通告包括指定所述客户边缘设备的3层地址作为对于3层子网的下一跳的静态路由。实例14。根据实例13的网络设备,其中,配置数据利用集成路由和桥接(irb)接口进一步配置网络设备,并且其中,为了确定网络设备能够将2层包发送至客户边缘设备,路由处理进一步配置为确定irb接口具有包括客户边缘设备的3层地址的3层子网。实例15。根据实例14的网络设备,其中,配置数据利用用于包括客户边缘设备的evpn的以太网虚拟专用网络(evpn)实例进一步配置网络设备,并且其中,配置数据进一步将irb接口配置作为用于evpn实例的路由接口。实例16。根据实例14的网络设备,其中,为了确定网络设备能够向客户边缘设备发送2层包,路由处理进一步配置为:生成对用于客户边缘设备的3层地址的2层地址的请求,该请求被生成用于在irb桥接接口的桥接域上输出;以及通过提供商边缘路由器从客户边缘设备接收对请求的回复。实例17。根据实例16的网络设备,其中,对用于于客户边缘设备的3层地址的2层地址的请求包括地址解析协议请求和邻居发现协议邻居请求中的一个。实例18。根据实例16的网络设备,其中,包括irb桥接域的桥接域包括虚拟局域网。实例19。根据权利要求13的网络设备,其中,为了确定网络设备能够向客户边缘设备发送2层包,路由处理进一步配置为:生成对用于客户边缘设备的3层地址的2层地址的请求;以及从客户边缘设备接收对请求的回复。实例20。根据实例13的网络设备,其中,为了确定网络设备能够向客户边缘设备发送2层包,路由处理进一步配置为确定网络设备被配置为对于客户边缘设备的活动多归属提供商边缘路由器。实例21。根据实例13的网络设备,其中,为了确定网络设备能够向客户边缘设备发送2层包,路由处理进一步配置为确定网络设备被配置为对于客户边缘设备的指定转发器提供商边缘路由器。此外,在上述任何实例中阐述的任何特定特征可以组合成所描述的技术的有益实例。也就是说,任何特定特征通常可应用于本发明的所有实例。已经描述了本发明的各种实例。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1