避免多连接到vpls传输网的以太网环路中流量损失方法、装置制造方法

文档序号:7998993阅读:226来源:国知局
避免多连接到vpls传输网的以太网环路中流量损失方法、装置制造方法
【专利摘要】本发明公开了避免多重连接到VPLS传输网的以太网环路中流量损失的方法和装置。该多重连接的以太网环路运行以太网环路保护(ERP)协议,其包括规定的环路保护链路(RPL)。网络的第一部分中的以太网环路的第一节点与网络的第二部分的指定边界路由器链接,并且网络的第一部分的以太网环路的第二节点与网络的第二部分的待机边界路由器链接。方法包括:a)接收第一节点和网络的指定边界路由器之间的链路发生了故障的指示;和b)响应于接收的指示,即使当不存在以太网环路中的故障链路时,也在以太网环路中调用ERP介质访问控制(MAC)清洗,而不激活规定的RPL。
【专利说明】避免多连接到VPLS传输网的以太网环路中流量损失方法、装置
【技术领域】
[0001]本发明涉及避免按照动态待机(active-standby)方式,多重连接到虚拟专用LAN服务(VPLS)传输网络的以太网环路中的数据流量损失。从而,本发明可用于例如防止边界网关协议(BGP)多重连接的以太网环路、多机架链路聚合(MC-LAG)多重连接的以太网环路,和其它种类的动态待机多重连接的以太网环路中的数据损失。
【背景技术】
[0002]利用环路的网络通信保护
[0003]链路故障通常是联网的不可避免部分。不过,存在即使当发生链路故障时,也改善路由器或桥接网络的可靠性的技术。例如,S0NET/SDH封闭愈合环可用于向通信网络增加一定程度的鲁棒性。这样的环路保护切换已被扩展到以太网链路。可以为一系列的两个或者更多的系统配置以太网环路保护(ERP),使得如果一个链路发生故障,在以太网环路(环路)上绕过所述故障重新路由流量。ERP切换体系结构避免循环,并利用学习、转发和过滤数据库(FDB)机制。下面分别介绍EPR切换体系结构的这些方面。
[0004]通过在任意时刻,允许数据流量在环路中的除一个链路之外的所有链路上流动,可以实现循环避免。回避的特定链路被称为环路保护链路(RPL)。在正常状况下,所述RPL可被阻断或者以其它方式禁用(不用于数据流量)。指定的环路节点(称为RPL所有者节点)可负责在正常状况下阻断通过RPL的流量。在环路故障状况下,RPL所有者节点负责疏通(即激活)RPL (除非该RPL已发生故障),从而使RPL可用于数据流量。
[0005]从而,ERP利用一个特定的链路(例如,RPL)来保护整个环路。如图1A中图解所示,示例性的以太网环路100包括保护它的RPL 105。当环路中的所有链路都启用并且处于活动状态时,通过RPL 105的数据流量被阻断。于是,RPL 105保持空闲状态。参见图1A和1B,尽管以太网环路100的物理拓扑110包括物理RPL 105,不过在以太网环路100的逻辑拓扑110,中,在“节点2”和“RPL所有者”节点115之间看不见RPL 105。图1B图解说明处于空闲状态的RPL的状况,在所述状况下,不允许数据流量经过RPL。在这个例子中,RPL105由指定的RPL所有者节点115控制。RPL所有者节点115可负责在正常工作状况下阻断 RPL0
[0006]参见图1C,如果在环路上发生链路故障(例如,如果节点4和5之间的链路发生故障),那么通过疏通RPL 105,使得可围绕该环路在备选路径上转发数据流量,RPL所有者节点115自动保护该环路。例如,如在图1C的以太网环路100的逻辑拓扑120中所示,当“节点4”和“节点5”之间的链路发生故障时,“PRL所有者”节点115激活RPL 105,并且允许数据流量通过RPL 105。如果“节点4”和“节点5”之间的链路从故障中恢复过来,那么响应所述恢复,RPL所有者节点115可通过去激活RPL 105并且阻断通过RPL 105的数据流量,使环路回复正常状况(回想图1B的逻辑拓扑110’)。
[0007]增强的环路保护(ERP)以过滤数据库(FDB)清洗为基础进行工作。更具体地,在关于故障的保护切换或者故障恢复时(即,当环路从正常状况切换到故障状况,或者反过来时),环路的所有节点在它们的FDB中为改变的环路拓扑删除所有已获悉的介质访问控制(MAC)地址。随后,环路中的每个环路节点可广播数据帧,直到完成新配置的环路中节点的MAC地址学习为止。
[0008]利用多重连接的网络通信保护
[0009]“多重连接”是一种用于提高IP网络的因特网连接的可靠性的技术。存在提供以太网环路到VPLS传输网络的活动待机多重连接的各种技术。例如,边界网关协议(BGP)多重连接使客户站点可通过两个或者更多对等的提供商边缘(PE)路由器(例如,运行BGP的边界路由器),与服务提供商网络相连。多机架链路聚合(MC-LAG)是提供动态待机多重连接的VPLS多重连接技术的另一个例子。在任何一种情况下(或者在以太网环路到传输网络的某种其它类型的动态待机多重连接中),服务提供商例如可以是提供虚拟专用LAN服务(VPLS)的网络。连接客户站点到两个或者更多的提供商边缘(PE)路由器提供冗余连接,所述冗余连接在PE路由器-消费者边缘(CE)设备链路故障、PE路由器故障、CE设备故障、或者本地PE路由器和远程PE路由器之间的多协议标签交换(MPLS)可达性故障的情况下,维持VPLS和转发到多重连接的站点和从多重连接的站点转发的流量。响应于检测到上述故障之一,冗余(备用)CE设备-PE边缘路由器路径可开始向客户站点提供服务。
[0010]当以太网保护环路利用多重连接时,保护网络通信的挑战
[0011]参见图2,考虑其中客户站点205通过布置在以太网保护环路拓扑265中的CE路由器CE I和CE 2,访问PE路由器230和235的体系结构200。更具体地,在示例性体系结构200中,通过将以太网环路中的CE路由器之一(例如,CE 1,称为第一节点)连接到主PE路由器(例如,PE I 230),并且将另一个CE路由器(例如,CE 2,称为第二节点)连接到备用PE路由器(例如,PE 2 235),客户站点205可被多重连接。按照这种安排,主PE路由器和第一节点CE路由器之间的链路(CE 1-PE I)的故障将不会使以太网环路切换到其中激活保护链路的模式,因为不存在在以太网环路中感测到的故障。不幸的是,结果以太网环路很可能将不会将数据流量转发给连接到备用PE路由器(PE 2 235)的第二个CE路由器。这会导致发送给主PE路由器的数据分组的“黑洞化”。即,数据分组可能会在发送者不知晓的情况下被遗失或者丢弃。
[0012]鉴于上面所述,有益的是将ERP扩展到以动态待机方式多重连接到VPLS传输网络的以太网环路(比如扩展到BGP多重连接的以太网环路、MC-LAG多重连接的以太网环路,或者某种其它类型的动态待机多重连接的以太网环路等),这既保护以太网环路,又保护与(例如,提供VPLS的)服务提供商的连接,从而避免多重连接的以太网环路中的数据流量损失。

【发明内容】

[0013]按照本发明的示例性实施例将以太网环路保护(ERP)扩展到以动态待机方式多重连接到VPLS传输网络的以太网环路(比如边界网关协议(BGP)多重连接的以太网环路、MC-LAG多重连接的以太网环路,或者某种其它类型的动态待机多重连接的以太网环路等),使得避免多重连接的以太网环路中的数据流量损失。这样的示例性实施例可避免运行以太网环路保护(ERP)协议的包括规定的环路保护链路(RPL)的多重连接的以太网环路中的数据流量损失,其中网络的第一部分中的以太网环路的第一节点与网络的第二部分的指定边界路由器链接,并且其中网络的第一部分的以太网环路的第二节点与网络的第二部分的待机边界路由器链接,所述避免多重连接的以太网环路中的数据流量损失是通过(i)接收第一节点和网络的指定边界路由器之间的链路发生故障的指示jP(ii)响应于接收的指示,即使当不存在以太网环路中的故障链路时,也在以太网环路中调用ERP介质访问控制(MAC)清洗而不激活规定的RPL,来实现的。
[0014]在按照本发明的至少一些示例性实施例中,ERP MAC清洗使来自以太网环路中的多个节点之中的每个节点的后续数据分组经第二节点,被转发给待机边界路由器。
[0015]在按照本发明的至少一些示例性实施例中,以太网环路中的多个节点每个都是路由器。
[0016]在按照本发明的至少一些示例性实施例中,网络的第一部分是传输网络的接入部分,网络的第二部分是传输网络的核心部分。在按照本发明的至少一些示例性实施例中,传输网络的核心部分向经以太网环路的节点访问接入网络的客户提供虚拟专用局域网服务(VPLS)0
【专利附图】

【附图说明】
[0017]图1A-1C图解说明运行以太网环路保护(ERP)协议的示例性以太网环路。
[0018]图2图解说明本发明可在其中工作的示例性环境。
[0019]图3是通过按照本发明的方式,将ERP扩展到以动态待机方式多重连接到VPLS传输网络的以太网环路(比如扩展到边界网关协议(BGP)多重连接的以太网环路、MC-LAG多重连接的以太网环路,或者某种其它类型的动态待机多重连接的以太网环路等),避免数据流量损失的示例性方法的流程图。
[0020]图4图解说明包括经通信链路耦接的两个系统的环境。
[0021]图5是上面可实现本发明的示例性路由器的框图。
[0022]图6是可设置在图5的示例性路由器中的示例性分布式专用集成电路(ASIC)的框图。
[0023]图7A和7B图解说明图6的示例性分布式ASIC的示例性分组转发操作。
[0024]图8是可在图5和6的示例性路由器任意之一上实现的示例性分组转发方法的流程图。
[0025]图9是示例性的基于处理器的系统的框图,所述系统可用于执行在以动态待机方式多重连接到VPLS传输网络的以太网环路(比如扩展到边界网关协议(BGP)多重连接的以太网环路、MC-LAG多重连接的以太网环路,或者某种其它类型的动态待机多重连接的以太网环路等)中避免数据流量损失的示例性方法,和/或保存由这种示例性方法使用和/或产生的信息。
【具体实施方式】
[0026]本发明涉及将以太网环路保护(ERP)扩展到以动态待机方式多重连接到VPLS传输网络的以太网环路(比如扩展到边界网关协议(BGP)多重连接的以太网环路、MC-LAG多重连接的以太网环路,或者某种其它类型的动态待机多重连接的以太网环路等)(环路),以避免多重连接环路中的流量损失的新方法、设备、消息格式和/或数据结构。提供以下说明是为了使本领域的技术人员能够作出和使用本发明,并且下述说明是在特定应用及其要求的情况下提供的。从而,按照本发明的实施例的以下说明提供示意说明,但是并不旨在是穷尽的或者将本发明局限于公开的确切形式。对本领域的技术人员来说,对公开的实施例的各种修改将是显而易见的,下面陈述的一般原理也适用于其它实施例和应用。例如,尽管参考流程图可说明一系列的动作,不过,当一个动作的执行不依赖于另一个动作的完成时,在其它实现方式中动作的顺序可不同。此外,可以并行地进行独立的动作。本说明中使用的元件、动作或指令都不应被解释成对本发明至关重要或者必不可少,除非明确地这样说明。另夕卜,这里使用的不定冠词意图包括一项或多项。在意指仅仅一项的情况下,将使用用语“一个”或者类似的语言。从而,本发明并不意图局限于所示的实施例,发明人将其发明看作描述的任何可专利主题。
[0027]示例性环境
[0028]图2图解说明按照本发明的实施例可在其中工作的示例性环境200。如图所示,环境200包括传输网络的接入部分215和传输网络的核心部分220,以及经接入部分215中的多重连接的以太网环路210访问核心部分220的客户站点205。多重连接的以太网环路210连接到提供商边缘(PE)设备PE I 230和PE 2 235。在按照本发明的示例性实施例中,设备PE I 230和PE 2 235可以是向客户站点205提供对服务提供商网络225的访问的边界路由器。服务提供商网络225可提供虚拟专用局域网服务(VPLS)。在按照本发明的示例性实施例中,边界路由器PE I 230和PE 2 235可以运行BGP (例如,参见这里引为参考的IETF RFC 4271)。在按照本发明的示例性实施例中,由于连接到以太网环路210的边界路由器230和235运行BGP,因此多重连接的以太网环路210也可被称为BGP多重连接的以太网环路210 (可作为替代地提供按照另一种方式动态待机地多重连接到VPLS传输网络的以太网环路(例如,MC-LAG多重连接的以太网环路))。在按照本发明的示例性实施例中,可以利用BGP、网际协议(IP)或者多协议标签交换(MPLS)中的至少一种路由核心部分220中的数据分组。
[0029]在环境200中,边界路由器PE I 230可以是指定的边界路由器,PE 2 235可以是待机边界路由器。客户站点205可通过指定的边界路由器PE I 230访问服务提供商网络225。在按照本发明的示例性实施例中,如果客户205不能通过指定的边界路由器PE I 230访问服务提供商网络225(例如,由于指定的边界路由器PE I 230的故障,或者以太网环路210和指定的边界路由器PE I 230之间的链路的故障,或者客户设备CE I的故障,等等),客户站点205可通过待机边界路由器PE 2 235访问服务提供商网络225。从而,在这种示例性安排中,客户站点205可通过指定的边界路由器PE I 230,或者待机边界路由器PE 2235,访问服务提供商网络225。
[0030]在环境200中,多重连接的以太网环路210包括多个消费者边缘(CE)设备CE I?CE 6,作为以太网环路210的节点。在按照本发明的示例性实施例中,每个CE设备可以是路由器。多重连接的以太网环路210可以经以太网环路210的不同节点连接到服务提供商网络235的两个或者更多的边界路由器。在示例性环境200中,多重连接的以太网环路210经由节点CE I连接到指定的边界路由器PE I 230,并经由节点CE 2连接到待机边界路由器PE 2 235。在示例性环境200中,在正常状况下(B卩,例如,当客户站点205和PE I 230之间的所有链路和节点都有效,并且都在工作时),客户站点205可以经由以太网环路210的节点CE 1,通过指定的边界路由器PE I 230,访问服务提供商网络225。在示例性环境200中,在故障状况下卿,例如,当以太网环路210和指定的边界路由器PE I 230之间的链路发生故障时,或者当指定的边界路由器PE I 230发生故障时),客户站点205可以经以太网环路210的节点CE 2,通过待机边界路由器PE 2 235,访问服务提供商网络225。
[0031 ] 有时,在多重连接的网络站点中,单个节点可连接到提供对服务提供商网络的访问的两个或者更多的边界路由器。不过,在这种体系结构中,连接到两个或者更多的边界路由器的单个节点会起单一故障点的作用。即,如果连接到两个或者更多的边界路由器的节点发生故障,那么不可能通过任意边界路由器访问服务提供商网络,因为所有的边界路由器都连接到该故障节点。相反,在上面的示例性多重连接的以太网环路210中,以太网环路210的两个不同节点连接到两个或者更多的边界路由器。例如,节点CE I连接到指定的边界路由器PE I 230,而另一个节点CE 2连接到待机边界路由器PE2 235。多重连接的以太网环路210的这种体系结构避免环路中连接到两个或者更多的边界路由器的单个节点可能变成单一故障点的情形。
[0032]自然地,示例性环境200还可包括另外的客户站点,“客户站点2” 240?“客户站点n”255。客户站点可按各种方式连接到对应的边界路由器。例如,在图2中,客户站点2240经由单连接的以太网环路245连接到边界路由器PE 3 250,而客户站点η 255经直接链路连接到边界路由器PE η 260。此外,在按照本发明的示例性实施例中,每个客户站点可借助服务提供商网络225支持的VPLS,相互通信。
[0033]在示例性环境200中,多重连接的以太网环路210可运行ERP协议。如在上面的“利用环路的网络通信保护”一节中所述,在环路中的链路发生故障的情况下,ERP协议通过绕过环路上的故障重新路由数据流量来保护环路。不过,ERP可能不能保护环路以防在环路之外的链路的故障。例如,在环境200中,如果节点CE I和指定的边界路由器PEl 230之间的链路故障(或者如果对等设备之一或者两者都发生故障),那么ERP可能不能保护多重连接的以太网环路210和服务提供商网络225之间的通信。这种情形会导致发送给指定的边界路由器PE I 230的数据分组例如在节点CE I丢失。更具体地,在以太网环路210中运行的ERP可能不知道节点CE I和指定的边界路由器PE I 230之间的链路的故障(除非对等设备CE I本身发生故障)。从而,以太网环路210可能继续将数据分组转发给节点CEI (以便传送给指定的边界路由器PEl 230)。
[0034]通过经由待机边界路由器PE 2 235,而不是指定的边界路由器PE I 230,将数据分组发送给服务提供商网络225,可以解决上述数据分组损失问题。通过在以太网环路210中,将数据分组重新路由到节点CE2 (它连接到待机路由器PE 2 235),数据分组可被发送给待机路由器PE 2 235。在运行ERP的示例性以太网环路中,通过执行ERP介质访问控制(MAC)清洗,数据分组可被重新路由到新的节点。ERP MAC清洗使所有环路节点对于改变的环路拓扑删除其数据库表格中的已获悉的第2层MAC地址,并获悉数据分组必须被转发给的节点的新的第2层MAC地址。不过,在示例性的以太网环路中,当在环路内存在链路故障(或者故障恢复)时,一般调用ERP MAC清洗,但是当链路故障在受保护的环路之外时,不调用ERP MAC清洗。此外,ERP MAC清洗是作为以太网环路中的保护切换的一部分调用的,所述保护切换还包括激活环路中的环路保护链路(RPL) 265,以便绕过环路中的链路故障路由数据分组。从而为了在链路故障在以太网环路之外(例如,在环境200中的节点CE I和指定的边界路由器PE I 230之间)的情形下重新路由数据分组,必须在RPL 265保持无效的时候,在以太网环路210中明确地调用ERP MAC清洗。
[0035]避免主动待机的多重连接的以太网环路中的数据流量损失的示例性方法
[0036]图3是以按照本发明的方式避免以动态待机方式多重连接到VPLS传输网络的以太网环路(比如边界网关协议(BGP)多重连接的以太网环路、MC-LAG多重连接的以太网环路,或者某种其它类型的动态待机多重连接的以太网环路等)中的数据流量损失的示例性方法300的流程图。方法300可用在诸如如上参考图2说明的环境200之类的环境中。如事件框305所示,响应各种事件,执行各种动作。例如,如果以太网环路的第一节点和指定的边界路由器之间的链路有效(事件310),那么来自以太网环路的多个节点中的每个节点的数据分组经由第一节点被转发给指定的边界路由器(框315),然后离开该方法(节点335)。返回参见事件框305,如果收到以太网环路的第一节点和指定的边界路由器之间的链路已发生故障(或者如果服务提供商服务网络的边界路由器发生故障)的指示(事件320),那么响应收到的指示,调用ERP MAC清洗命令,而不激活以太网环路的指定RPL (框325)。调用ERP MAC清洗命令使来自以太网环路的多个节点中的每个节点的后续数据分组被转发给以太网环路的第二节点,所述第二节点连接到待机边界路由器(框330)。随后,离开该方法(节点 335)。
[0037]返回参见框325,响应收到的以太网环路的第一节点和指定的边界路由器之间的链路已发生故障的指示,可以产生包含调用ERPMAC清洗的指令的消息。在按照本发明的示例性实施例中,ERP MAC清洗命令使以太网环路的多个节点中的每个节点(I)删除与先前的转发路由对应的节点的所有MAC地址,和(2)保存与经由以太网环路的第二节点将数据分组转发给指定的待机路由器的新的转发路径对应的节点的MAC地址。仍然返回参见框325,当调用ERP MAC清洗时,不激活以太网环路的指定RPL(因为在以太网环路内不存在链路故障)。
[0038]示例性设备
[0039]图4图解说明通过通信链路430耦接的两个数据转发系统410和420。所述链路可以是物理链路或“无线”链路。数据转发系统410、420可以是例如路由器。如果数据转发系统410、420是示例路由器,那么每个数据转发系统可包括控制组件(例如,路由引擎)414、424和转发组件412、422。每个数据转发系统410、420包括端接一个或多个通信链路430的一个或多个接口 416、426。
[0040]如上所述,并参考图5,一些示例性路由器500包括控制组件(例如,路由引擎)510和分组转发组件(例如,分组转发引擎)590。
[0041]控制组件510可包括操作系统(OS)内核520、路由协议进程530、基于标签的转发协议进程540、接口进程550、用户接口(例如,命令行接口)进程560和机架进程570,并且可保存路由表539、标签转发信息545和转发(例如,基于路由的和/或基于标签的)表580。如图所示,路由协议进程530可支持诸如路由信息协议(RIP) 531、中间系统到中间系统协议(IS-1S) 532、开放最短路径首先协议(OSPF) 533、增强型内部网关路由协议(EIGRP) 534和边界网关协议(BGP)535之类的路由协议,并且基于标签的转发协议进程540可支持诸如BGP535、标签分发协议(LDP) 536和资源预留协议(RSVP) 537之类的协议。一个或多个组件(未示出)可允许用户565与用户接口进程560交互。类似地,一个或多个组件(未示出)可允许外部设备经SNMP 585与路由器协议进程530、基于标签的转发协议进程540、接口进程550和机架进程570中的一个或多个交互,这样的进程可经SNMP 585向外部设备发送信
肩、O
[0042]分组转发组件590可包括微内核592、接口进程593、分布式ASIC594、机架进程595和转发(例如,基于路由的和/或基于标签的)表596。
[0043]在图5的示例性路由器500中,控制组件510处理诸如执行路由协议、执行基于标签的转发协议、控制分组处理之类的任务,这解放了分组转发组件590,以快速转发接收的分组。即,接收的控制分组(例如,路由协议分组和/或基于标签的转发协议分组)不是在分组转发组件590本身上完全处理的,而是被传送给控制组件510,从而减少分组转发组件590必须完成的工作量,从而解放分组转发组件590,以高效地处理待转发的分组。从而,控制组件510主要负责运行路由协议和/或基于标签的转发协议、保持路由表和/或标签转发信息、将转发表更新发送给分组转发组件590,和进行系统管理。示例性的控制组件510可处理路由协议分组、提供管理接口、提供配置管理、进行记账和提供报警。进程530、540、550、560和570可以是模块化的,并可以与OS内核520交互。即,几乎所有的进程都与OS内核520直接通信。利用使各个进程清楚地相互隔开的模块化软件隔离给定进程的问题,使得这种问题不会影响可能正在运行的其它进程。另外,利用模块化软件便于更容易地缩放。
[0044]仍然参见图5,示例性的OS内核520可包含用于外部程序调用和脚本化功能的应用编程接口(API)系统。控制组件510可以基于运行来自闪存的OS的Intel PCI平台,同时备选的副本保存在路由器的硬盘上。OS内核520被层叠在Intel PCI平台上,在IntelPCI平台和控制组件510的进程之间建立通信。OS内核520还确保分组转发组件590使用中的转发表596与控制组件510中的那些转发表580同步。从而,除了提供控制组件510软件进程的底层基础结构之外,OS内核520还提供控制组件510和分组转发组件590之间的链路。
[0045]参见图5的路由协议进程530,进程530提供平台内的路由功能和路由控制功能。在这个例子中,提供 RIP 531、IS-1S 532、OSPF 533 和 EIGRP 534 (和 BGP 535)协议。自然地,另外或者作为替代地,可以提供其它路由协议。类似地,基于标签的转发协议进程540提供标签转发功能和标签控制功能。在本例中,提供LDP 536和RSVP 537 (和BGP 535)协议。自然地,另外或者作为替代地,可以提供其它基于标签的转发协议(例如,MPLS)。在示例性的路由器500中,路由表539由路由协议进程530产生,而标签转发信息545由基于标签的转发协议进程540产生。
[0046]仍然参见图5,接口进程550进行物理接口(例如,回忆图4的416和426)的配置,以及封装。
[0047]示例性的控制组件510可提供管理路由器的几种方式。例如,它510可提供用户接口进程560,用户接口进程560允许系统操作员565通过配置、修改和监控,与系统交互。SNMP 585允许支持SNMP的系统与路由器平台通信。这还允许所述平台向外部代理提供必需的SNMP信息。例如,SNMP 585可允许通过诸如Hewlett-Packard的OpenView之类的框架,从运行诸如Hewlett-Packard的Network Node Manager (HP-NNM)之类软件的网络管理站管理系统。分组的记账(一般称为流量统计)可由控制组件510进行,从而避免减慢分组转发组件590的流量转发。
[0048]尽管未示出,示例性路由器500可提供带外管理,用于串口控制台和远程管理访问的RS-232 DB9,和利用可拆卸PC卡的第三存储器。此外,尽管未示出,布置在机架的正面的操作员接口提供路由器的内部工作的外部视图。它可被用作故障查找工具和/或监控工具。操作员接口可包括LED指示器、报警指示器、控制组件端口和/或显示屏。最后,操作员接口可通过控制台端口、辅助端口,和/或管理以太网端口,提供与命令行接口( CLI) 560的交互。
[0049]分组转发组件590负责尽可能快地恰当输出接收的分组。如果在转发表中不存在关于给定目的地或者给定标签的条目并且分组转发组件590不能靠其自身进行转发,则分组转发组件590可将前往该未知目的地的分组发送给控制组件510以便处理。示例性的分组转发组件590被设计成执行第2层和第3层交换、路由查寻和快速分组转发。
[0050]如图5中所示,示例性的分组转发组件590具有嵌入式微内核592、接口进程593、分布式ASIC 594和机架进程595,并保存转发(例如,基于路由的和/或基于标签的)表596。微内核592与接口进程593和机架进程595交互,以监视和控制这些功能。接口进程592与控制组件510的OS内核520直接通信。所述通信包括将异常分组和控制分组转发给控制组件510、接收待转发的分组、接收转发表更新、向控制组件510提供与分组转发组件590的健康有关的信息,和允许从控制组件510的用户接口(例如CLI)进程560进行接口的配置。保存的转发表596是静态的,直到从控制组件510收到新的转发表为止。接口进程593利用转发表596查寻下一跳信息。接口进程593还具有与分布式ASIC 594的直接通信。最后,机架进程595可直接与微内核592和分布式ASIC 594通信。
[0051]返回参见图5的分布式ASIC 594,图6是如何在分组转发组件590中分布ASIC以划分分组转发的功能的例子。如图6中所示,分组转发组件590的ASIC可被分布在物理接口卡(PIC)610、灵活PIC集中器(FPC)620、中板或背板630和系统控制板640 (用于交换和/或转发)上。还以系统交换板(SSB)或者交换和转发模块(SFM)65的形式,表示了交换架构。每个PIC 610包括一个或多个PIC I/O管理器615。每个FPC 620包括一个或多个I/O管理器622,每个I/O管理器具有相关的存储器624。中板/背板630包括缓冲管理器635a、635b。最后,系统控制板640包括因特网处理器642和转发表644的实例(例如,回忆图5的596)。
[0052]仍然参见图6,PIC 610包含接口端口。每个PIC 610可被插入FPC 620中。每个单独的PIC 610可包含处理介质特定的功能,比如成帧或封装的ASIC。一些示例性PIC610提供SDH/S0NET、ATM、千兆以太网、快速以太网、和/或DS3/E3接口端口。
[0053]FPC 620可包含一个或多个PIC 610,可将来自PIC 610的信号传送到中板/背板630,如图6中所示。
[0054]中板/背板630保持线卡。当从正面插入示例性路由器的机架时,线卡可连接到中板/背板630中。控制组件(例如,路由引擎)510可从机架的后面插入中板/背板630的后面。中板/背板630可将电(或光)信号和电力传送给每个线卡,和传送给控制组件510。
[0055]系统控制板640可进行转发查寻。系统控制板640还可将错误传送给路由引擎。此外,系统控制板640可根据它从传感器接收的信息,监控路由器的状况。如果检测到异常状况,那么系统控制板640可立即通知控制组件510。
[0056]参见图6、7A和7B,在一些示例性的路由器中,PIC 610,610'中的每个包含负责介质特定的任务,比如封装的至少一个I/o管理器ASIC 615。分组经过在其进出路由器的路线上的这些I/O ASIC0 PIC610、610’上的I/O管理器ASIC 615负责管理与FPC 620、620’上的I/O管理器ASIC 622的连接,管理链路层成帧和创建比特流,进行循环冗余校验(CRC),和检测链路层错误并在适当时产生报警。FPC620包括另一个I/O管理器ASIC 622。此ASIC 622从PIC 610获得分组,将分组分成(例如,64字节)存储块。这个FPC I/O管理器ASIC 622将这些块发送给第一个分布式缓冲管理器(DBM) 635a’,解码封装和协议特有信息,为每个逻辑电路计数分组和字节,验证分组完整性,并将服务等级(CoS)规则应用于分组。此时,分组首先被写入存储器中。更具体地,示例性的DBM ASIC 635a’管理分组并将分组写入跨越所有FPC 620的共享存储器624。并行地,第一个DBMASIC 635a’也提取关于分组的目的地的信息,并将与转发相关的该信息传给因特网处理器642/642’。因特网处理器642/642’利用转发表644进行路由查寻,并将该信息发送给第二个DBM ASIC 635b’。因特网处理器ASIC 642/642’还收集异常分组(即,没有转发表条目的那些分组),并将它们发送给控制组件510。第二个DBM ASIC 635b’随后获得该信息和64字节的块,并将它们转发给出口 FPC 620/620’(或者在多播的情况下,多个出口 FPC)的I/O管理器ASIC 622,以便重新组装。(从而,DBM ASIC 635a’和635b’负责管理分布在所有FPC 620/620’上分布的分组存储器624,从分组中提取与转发相关的信息,并指示FPC将分组转发到何处)。
[0057]出口 FPC 620/620’上的I/O管理器ASIC 622可进行一些增值服务。除了递增生存时间(TTL)值和重新封装分组以便由PIC 610处理之外,它还可应用服务等级(CoS)规贝U。为此,在将CoS规则应用于分组之前,它可使指向分组的指针在可用队列之一中排队,每个可用队列具有一份额的链路带宽。排队可以基于各种规则。从而,出口 FPC 620/620’上的I/O管理器ASIC 622可负责从第二个DBM ASIC635b’接收各个块,递增TTL值,必要时在应用CoS规则之前,使指向分组的指针排队,重新封装各个块,并将封装的分组发送给PIC I/O 管理器 ASIC 615。
[0058]图8是提供示例性路由器中的分组转发的示例性方法800的流程图。当在入口(输入)端口或接口收到分组时,触发方法800的主要动作(事件810)。进行它所服务的介质的种类所需要的各种校验和以及帧检验,并以串行比特流的形式输出分组(框820)。分组随后被解封,并被解析成(例如,64字节的)块(框830)。分组被写入缓冲存储器中,转发信息被传送给因特网处理器(框840)。传送的转发信息随后被用于查寻转发表中的路由(框850)。注意,转发表一般能够处理未使各种选项(例如,记账)被设定的单播分组,和它已具有关于其的高速缓存条目的多播分组。从而,如果判定这些条件被满足(判定860的“是”分支),那么分组转发组件查明下一跳和出口接口,并且分组经出口接口被转发给下一跳(或者排队等待转发)(框870),之后离开方法800 (节点890)。否则,如果这些条件未被满足(判定860的“否”分支),转发信息被发送给控制组件510,以便进行高级转发解析(框880),之后离开方法800 (节点890)。
[0059]返回参见框870,可以使该分组排队。实际上,如前参考图6所述,可以使指向该分组的指针排队。该分组本身可保持在共享存储器中。从而,可在没有该实际分组的情况下应用所有的排队决策和CoS规则。当该分组的指针到达行列的前面时,I/O管理器ASIC622可将对分组的请求发送给第二 DBM ASIC 635b。DBM ASIC 635从共享存储器读取各个块,并将它们发送给在FPC 620上的I/O管理器ASIC622,I/O管理器ASIC 622随后使比特串行化,并将它们发送给出口接口的介质特定的ASIC。出口 PIC 610上的I/O管理器ASIC615可应用物理层成帧,执行CRC,和通过链路发送比特流。
[0060]返回参见图8的框880以及图6,就控制分组和异常分组的传送来说,系统控制板640处理几乎所有的异常分组。例如,系统控制板640可将异常分组传送给控制组件510。
[0061]虽然按照本发明的示例性实施例可以在图4或5的示例性路由器上实现,不过,按照本发明的实施例也可在具有不同体系结构的通信网络节点(例如,路由器、交换机等)上实现。更一般地,按照本发明的实施例可以在如图9中图解说明的示例性系统900上实现。
[0062]图9是可执行上述进程中的一个或多个进程,和/或保存由所述进程使用和/或产生的信息的示例性机器900的框图。示例性的机器900包括一个或多个处理器910、一个或多个输入/输出接口单元930、一个或多个存储器件920,和便利耦接的元件之间的信息的通信的一个或多个系统总线和/或网络940。一个或多个输入装置932和一个或多个输出装置934可以与一个或多个输入/输出接口 930耦接。该一个或多个处理器910可执行机器可执行指令(例如,在可从Palo Alto, California的Sun Microsystems Inc.获得的Solaris操作系统,或者可从许多厂家,比如Durham, North Carolina的Red Hat, Inc.获得的Linux操作系统上运行的C或C++),以实现本发明的一个或多个方面。机器可执行指令的至少一部分可被(临时或者更长久地)保存在一个或多个存储装置920上,和/或可以通过一个或多个输入接口单元930接收自外部源。机器可执行指令可被保存为各种软件模块,每个模块执行一个或多个操作。功能软件模块是本发明的组件的例子。
[0063]在按照本发明的一些实施例,处理器910可以是一个或多个微处理器和/或ASIC。总线940可包括系统总线。存储器件920可包括系统存储器、比如只读存储器(ROM)和/或随机存取存储器(RAM)。存储器件920还可包括读写硬盘的硬盘驱动器、读取或写入(例如,可拆卸)磁盘的磁盘驱动器、读取或写入可拆卸的(磁)光盘,比如压缩盘或其它(磁)光学介质的光盘驱动器,或者固态非易失性存储器。
[0064]按照本发明的一些示例性实施例还可以保存机器可执行指令的机器可读介质的形式提供。机器可读介质可以是非临时性介质,可包括(但不限于)闪存、光盘、⑶-ROM、DVD-ROM、RAM、EPROM、EEPR0M、磁卡或光卡、或者适合于保存电子指令的任何其它种类的机器可读介质。例如,按照本发明的示例性实施例可被下载为计算机程序,所述计算机程序可通过通信链路(例如,调制解调器或网络连接),从远程计算机(例如,服务器)传送给请求计算机(例如,客户端),并保存在非临时性存储介质上。机器可读介质还可被称为处理器可读介质。
[0065]按照本发明的示例性实施例可用硬件,比如一个或多个现场可编程门阵列(“FPGA”)、诸如ASIC之类的一个或多个集成电路、一个或多个网络处理器等实现。作为替代地,或者另外地,按照本发明的实施例可被实现成由处理器执行的保存的程序指令。可在寻址数据(例如,分组、信元等)转发设备(例如,交换机、路由器等)、膝上型计算机、桌上型计算机、平板计算机、移动电话、或者具有计算和联网能力的任何设备中,提供这样的硬件和/或软件。
[0066]示例性的操作例子[0067]下面参考图2,描述图解说明避免多重连接的以太网环路中的数据流量损失的示例性方法的操作的例子。在示例性环境200中,当指定的边界路由器PE I 230和以太网环路210的第一节点CE I之间的链路有效时,来自以太网环路的每个节点CE2-CE6的预定经VPLS225传送的所有数据分组可经第一节点CE I被路由到指定的边界路由器PE I 230(例如,回忆图3的310和315)。从而在这种情况下,从客户站点1205到服务提供商网络225的入口点的信息通常会如下前进:CE 5->CE 6->CE 1->PE I。在示例性环境200中,如果以太网环路210的节点CE I和指定的边界路由器PE I 230之间的链路发生故障,那么可接收该链路已发生故障的指示(例如,回忆图3的320)。每种主动待机多重连接技术具有通知这种故障的它自己的信令机制。例如,就BGP多重连接来说,利用BGP消息,在多重连接的PE之间传递故障指示。再例如,就MC-LAG多重连接来说,利用机架间通信协议(ICCP)信令传递故障指不。
[0068]响应节点CE I和指定的边界路由器PE I 230之间的链路已发生故障的收到的指示,调用ERP MAC清洗,而未激活以太网环路210的RPL 265 (例如回忆图3的325)。ERPMAC清洗命令使以太网环路210中的节点CE1-CE6都从其数据库表中删除(所有)先前获悉的MAC地址,并学习沿着新的转发路由/路径的各个节点的MAC地址。在示例性环境200中,以太网环路中的新的转发路由包括经以太网环路210的节点CE 2将数据分组转发给待机边界路由器PE 2 235的路径/路由。来自各个节点CE1-CE6的预定经VPLS 225传输的后续数据分组经由以太网环路210的节点CE 2被转发给待机边界路由器PE 2 235(例如,回忆图3的330)。从而,在这种情况下,从客户站点1205到服务提供商网络225的入口点的信息会如下前进:CE 5->CE 4->CE 3->CE 2_>PE 2。
[0069]在按照本发明的示例性实施例中,如果以太网环路210的节点CE I和指定的边界路由器PE I 230之间的链路从故障中恢复过来,那么再次调用ERP MAC清洗,这导致每个节点CE1-CE6删除沿着新的转发路径/路由的节点的MAC地址,并回复沿着先前的转发路径/路由的节点的MAC地址,先前的转发路径/路由包括经由节点CE I到指定的边界路由器PE I 230的路由。
[0070]结论
[0071]根据上面所述可以理解,按照本发明的示例性实施例提供避免以动态待机方式多重连接到VPLS传输网络的以太网环路(比如边界网关协议(BGP)多重连接的以太网环路、MC-LAG多重连接的以太网环路,或者某种其它类型的动态待机多重连接的以太网环路等)中的数据流量损失的方法和设备。示例性方法(i)将ERP功能扩展到多重连接的以太网环路,(ii)不干扰现有的ERP机制或者需要现有的ERP机制中的任何变化,(iii)不需要(例如,BGP或MC-LAG)多重连接配置的任何专门知识,(iv)不需要VPLS多重连接技术中的任何变化,和(V)在以太网环路以及多重连接的以太网环路中的传输网络的核心部分中提供完全冗余。
【权利要求】
1.一种用于避免动态待机的多重连接的以太网环路中的流量损失的计算机实现的方法,所述多重连接的以太网环路运行以太网环路保护(ERP)协议,其包括规定的环路保护链路(RPL),其中网络的第一部分中的以太网环路的第一节点与网络的第二部分的指定边界路由器链接,并且其中所述网络的第一部分的以太网环路的第二节点与所述网络的第二部分的待机边界路由器链接,所述计算机实现的方法包括: a)接收第一节点和网络的指定边界路由器之间的链路发生了故障的指示;和 b)响应于接收的指示,即使当不存在以太网环路中的故障链路时,也在以太网环路中调用ERP介质访问控制(MAC)清洗,而不激活规定的RPL。
2.按照权利要求1所述的计算机实现的方法,其中ERPMAC清洗使来自以太网环路中的多个节点之中的每个节点的数据分组经由第二节点被转发给待机边界路由器。
3.按照权利要求2所述的计算机实现的方法,其中利用所述数据分组的第2层MAC地址目的地,在以太网环路中转发所述数据分组。
4.按照权利要求1所述的计算机实现的方法,其中以太网环路中的多个节点每个都是路由器。
5.按照权利要求 1所述的计算机实现的方法,其中所述网络的第一部分是传输网络的接入部分。
6.按照权利要求5所述的计算机实现的方法,其中所述网络的第二部分是所述传输网络的核心部分。
7.按照权利要求1所述的计算机实现的方法,其中所述网络的第二部分是传输网络的核心部分。
8.按照权利要求7所述的计算机实现的方法,其中所述传输网络的核心部分向经由以太网环路的节点访问接入网络的客户提供虚拟专用局域网服务(VPLS)。
9.按照权利要求7所述的计算机实现的方法,其中所述传输网络的核心部分利用(a)网际协议(IP),(b)BGP和(C)多协议标签交换(MPLS)中的至少一种,路由数据分组。
10.按照权利要求1所述的计算机实现的方法,还包括: 响应于所接收指示的动作,产生具有在以太网环路中调用ERP-MAC清洗的指令的ERP-MAC清洗消息。
11.一种用于避免动态待机的多重连接的以太网环路中的流量损失的计算机实现的方法,所述多重连接的以太网环路运行以太网环路保护(ERP)协议,其包括规定的环路保护链路(RPL),其中网络的第一部分中的以太网环路的第一节点与网络的第二部分的指定边界路由器链接,并且其中所述网络的第一部分的以太网环路的第二节点与所述网络的第二部分的待机边界路由器链接,所述计算机实现的方法包括: a)当第一节点和指定边界路由器之间的链路未发生故障时,将来自以太网环路中的多个节点中的每个节点的数据分组经由第一节点路由到指定的边界路由器; b)接收第一节点和另一个网络的指定边界路由器之间的链路发生了故障的指示;和 c)响应于接收的指示,即使当不存在以太网环路中的故障链路时,也在以太网环路中调用ERP介质访问控制(MAC)清洗,并且不激活规定的RPL,其中所述ERP MAC清洗使来自以太网环路中的所述多个节点之中的每个节点的后续数据分组经由第二节点被转发给待机边界路由器。
12.—种设备,包括: a)至少一个处理器; b)至少一个输入装置;和 c)保存程序指令的至少一个存储装置,当被所述至少一个处理器执行时,所述程序指令执行用于避免动态待机的多重连接的以太网环路中的流量损失的方法,所述多重连接的以太网环路运行以太网环路保护(ERP)协议,其包括规定的环路保护链路(RPL),其中网络的第一部分中的以太网环路的第一节点与所述网络的第二部分的指定边界路由器链接,并且其中所述网络的第一部分中的以太网环路的第二节点与所述网络的第二部分的待机边界路由器链接,所述方 法包括: 1)接收第一节点和网络的指定边界路由器之间的链路发生了故障的指示;和 2)响应于接收的指示,即使当不存在以太网环路中的故障链路时,也在以太网环路中调用ERP介质访问控制(MAC)清洗,而不激活规定的RPL。
13.按照权利要求12所述的设备,其中所述ERPMAC清洗使来自以太网环路中的多个节点之中的每个节点的数据分组经由第二节点被转发给待机边界路由器。
14.按照权利要求13所述的设备,其中利用数据分组的第2层MAC地址目的地,在以太网环路中转发所述数据分组。
15.按照权利要求12所述的设备,其中以太网环路中的多个节点每个都是路由器。
16.按照权利要求12所述的设备,其中所述网络的第一部分是传输网络的接入部分。
17.按照权利要求16所述的设备,其中所述网络的第二部分是所述传输网络的核心部分。
18.按照权利要求12所述的设备,其中所述网络的第二部分是传输网络的核心部分。
19.按照权利要求18所述的设备,其中所述传输网络的核心部分向经以太网环路的节点访问接入网络的客户提供虚拟专用局域网服务(VPLS)。
20.按照权利要求18所述的设备,其中所述传输网络的核心部分利用(a)网际协议(IP), (b)BGP和(c)多协议标签交换(MPLS)中的至少一种路由数据分组。
21.按照权利要求12所述的设备,其中所述方法还包括: 响应于所接收的指示的动作,产生具有在以太网环路中调用ERP-MAC清洗的指令的ERP-MAC清洗消息。
【文档编号】H04L12/437GK103684953SQ201310163485
【公开日】2014年3月26日 申请日期:2013年5月7日 优先权日:2012年9月14日
【发明者】P·舒克拉, S·拉斯塔奇 申请人:丛林网络公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1