路由子集的安装和使用的制作方法

文档序号:7992855阅读:157来源:国知局
路由子集的安装和使用的制作方法
【专利摘要】在一个实施例中,分组交换设备的互联网协议(IP)路由信息库被过滤以产生明显较小的IP路由子集,其被安装在一个或多个用于转发IP分组的转发信息库中。在一个实施例中,这些较小的转发信息库位于网络处理器的本地存储器中以更快地对其执行查找操作。在一个实施例中,一个或多个这些转发信息库仅被用于地址的精确匹配(非最长前缀匹配)。在一个实施例中,这些较小的转发信息库中的IP路由实质上对应于网络中的分组交换设备(例如,核心和边缘路由器),诸如与包括网络的外部设备的所有IP路由形成对比。
【专利说明】路由子集的安装和使用
【技术领域】
[0001]本公开主要涉及通过网路与远程设备进行信息通信。
【背景技术】
[0002]通信产业正快速地变化以适应新兴技术和不断增长的客户需求。这些对于新的应用和现有应用提升的性能而产生的客户需求正驱使着通信网络和系统供应商使用具有更快速度和更大容量(例如,更大的带宽)的网络和系统。为了实现这些目标,为很多通信供应商所采用的常见方法是使用分组交换技术。
[0003]因此,提供以允许更大的带宽、实现更优越的性能、以及/或者提供最小的延迟的通信机构和方法的能力,是分组交换设备的设计师和网络管理者们面临的重大挑战。

【发明内容】

[0004]本文尤其公开了与安装和使用路由子集以转发分组相关联的方法、装置、计算机存储介质、机制和工具。一个实施例包括网络中的一个或多个分组交换设备,和/或被配置用于操作,或实际上正在用于操作的一个或多个分组交换设备。
[0005]一个实施例包括网络,其包括:核心网,该核心网包括多个核心分组交换设备,其中所述多个核心分组交换设备中的每个均被配置用于执行操作;以及多个边缘分组交换设备,其中所诉多个边缘分组交换设备中的每个均被配置用于执行操作,包括与核心网和一个或多个外部网络或设备进行分组通信。如本文使用的,外部网络或设备是指在核心网之外的网络或设备,其中所述核心网包括核心分组交换设备和边缘分组交换设备。
[0006]对所述多个核心分组交换设备中的每个设备的配置、以及对所述多个边缘分组交换设备中的每个设备的配置包括:以将互联网协议(IP)路由信息在所述多个核心分组交换设备和所述多个边缘分组交换设备之间分发的方式交换所述IP路由信息。在一个实施例中,对所述多个核心分组交换设备中的每个特定核心分组交换设备的配置包括:维护所述IP路由信息;过滤所述IP路由信息以明显地产生更少的被安装在特定核心分组交换设备中的一个或多个转发信息库(FIB)中的IP路由,其中所述被安装的IP路由包括多个IP路由分别对应所述多个核心分组交换设备中的每个和所述多个边缘分组交换设备中的每个;以及基于所述在特定核心分组交换设备中的一个或多个FIB,向所述多个核心分组交换设备中的其它分组交换设备和所述多个边缘分组交换设备中的其它设备转发分组。
[0007]在一个实施例中,所述被安装的IP路由由所述分别对应于所述多个核心分组交换设备中的每个和所述多个边缘分组交换设备中的每个的多个IP路由组成。在一个实施例中,所述被安装的IP路由数量级与多个核心分组交换设备的数量以及多个边缘设备的数量之和的数量级相同。在一个实施例中,所述安装的IP路由数量比在所述IP路由信息中的路由至少小一个数量级,其中所述IP路由信息被过滤以产生明显较少的IP路由,该IP路由被安装在特定核心分组交换设备的一个或多个转发信息库(FIB)中。
[0008]在一个实施例中,对多个边缘分组交换设备中的每个的配置包括:对接收到互联网协议(IP)分组的目的地址执行查找操作以确定多个边缘分组交换设备的不同边缘分组交换设备的IP地址;将该接收到的分组封装进具有该不同边缘分组交换设备的IP地址的目的地址的封装IP分组;并且发送该封装IP分组至邻近核心路由器。
[0009]在一个实施例中,其中交换所述IP路由信息包括:交换包括用于一个或多个IP路由的IP路由信息的已标记的路由协议分组,其中标记标识了针对交换的已标记路由协议分组的所述一个或多个IP路由中的某些特定路由必须被安装的对应一个或多个路由,并且所述标记标识了针对所述交换的已标记路由协议分组中的某些路由信息不需要被安装的对应一个或多个路由。在一个实施例中,位于多个核心分组交换设备的每个可标识的核心分组交换设备上的所述一个或多个FIB包括精确匹配的FIB和最长前缀匹配FIB ;并且其中对于多个核心分组交换设备中的每个的所述配置包括:在精确匹配的FIB上安装必须根据对应的标记而被安装的路由;仅对精确匹配FIB执行精确匹配,而不执行最长前缀匹配;在最长前缀匹配的FIB中安装不需要根据对应的标记而被安装的路由;以及对最长前缀匹配的FIB执行查找操作。
[0010]在一个实施例中,对于多个核心分组交换设备中的每个的所述配置包括:基于所接收到的第一特定分组的一个或多个字段,确定在精确匹配的FIB中执行查找操作,并且作为响应,在精确匹配的FIB中执行查找操作以确定如何转发第一特定分组;并且基于所接收到的第二特定分组的一个或多个字段,确定在最长前缀匹配的FIB中执行查找,并且作为响应,在精确匹配的FIB中执行查找以确定如何转发第二特定分组。
[0011 ] 在一个实施例中,在多个核心分组交换设备中的每个可标识的核心分组交换设备上,所述一个或多个FIB包括精确匹配的FIB和最长前缀匹配的FIB ;并且其中对多个核心分组交换设备中的每个的所述配置包括:在精确匹配的FIB中安装少于必须根据对应的标记而被安装的路由的所有位的位;仅对精确匹配FIB执行准确匹配,而不执行最长前缀匹配;在最长前缀匹配FIB中安装所述路由,其中所述路由不需要对应于每个所述标记而被安装;并且在最长前缀匹配FIB中执行查找操作。
【专利附图】

【附图说明】
[0012]所附权利要求提出了一个或多个特殊实施例的特征。从以下详述并结合附图,可以最佳地理解本实施例及其优点:
[0013]图1示出了根据一个实施例被配置用于操作和/或操作的网络;
[0014]图2示出了根据一个实施例被配置用于操作和/或操作的分组交换设备;
[0015]图3A示出了根据一个实施例被配置用于操作和/或操作的分组处理单元;
[0016]图3B示出了根据一个实施例被配置用于操作和/或操作的分组处理单元;
[0017]图4示出了根据一个实施例被配置用于操作和/或操作的装置或组件;
[0018]图5示出了在一个实施例中被配置用于操作和/或操作的过程;
[0019]图6A示出了在一个实施例中被配置用于操作和/或操作的过程;
[0020]图6B示出了在一个实施例中被配置用于操作和/或操作的过程;以及
[0021]图7示出了在一个实施例中被配置用于操作和/或操作的过程。
【具体实施方式】[0022]本文尤其公开了与安装和使用用于转发分组的路由子集相关联的方法、装置、计算机存储介质、机制和工具。一个实施例包括在网络中的一个或多个分组交换设备,和/或一个或多个被配置用于操作或正在操作的分组交换设备。
[0023]本文所述的实施例包括各种元件和限制,但是没有一种元件或限制被认为是关键性的元件或限制。每项权利要求单独地完整地陈述实施例的一个方面。此外,所述的一些实施例可包括但不仅限于:系统、网络、集成电路芯片、嵌入式处理器、ASIC、方法和包含指令的计算机可读介质。一个或多个系统、设备、组件等等可包括一个或多个实施例,这些实施例可能包括由相同或不同的系统、设备、元件等等执行的权利要求的一些元件或限制。处理元件可以是通用处理器、任务专用处理器或其它用于执行相应处理的实现方式。下文所述的实施例结合说明示例性和非限制性配置的附图,体现了各种发面和配置。请注意,用于执行方法和处理框操作的计算机可读介质和工具(例如,处理器和存储器或其它被配置来执行此类操作的装置)被公开并且与实施例的广泛的范围和精神保持一致。请注意,术语“装置”在本文中与其关于器具或设备的通用定义相一致地被使用。
[0024]注意,在附图中示出的步骤、连接、及对信号和信息的处理包括但不限于任何框图和流程图以及消息顺序图,其通常可以根据相同或不同的串行或并行顺序,和/或由不同的组件过程、线程等,和/或通过不同的连接来执行,并在其它实施例中与其它功能相结合,除非这会使实施例或明确或隐含地需要的顺序(例如,对于读取值、处理所述读取值的顺序-在对值进行处理之前必须获取该值,尽管一些相关联处理可先于读取操作、与其同时和/或在其之后被执行)失效。还要说明的是,除非明确宣称,本文所述或提到的任何内容均不被承认为现有技术。
[0025]术语“一个实施例”在此用于指特定的实施例,其中每次对“一个实施例”的提及可以指不同的实施例,并且本文在描述相关联的特征、元件和/或限制的过程中反复使用该术语,不会建立每个实施例必须包括的一组累积的相关联的特征、元件和/或限制,尽管实施例通常可以包括所有这些特征、元件和/或限制。另外,术语“第一”、“第二”等在此通常用于标示通常用于表示不同的单元(例如,第一元件,第二元件)。本文对这些术语的使用并不一定意味着例如一个单元或事件在另一个之前发生或到来的排序,而是提供一种机制来区分特定的单元。此外,短语“基于X”和“响应于X”被用于表示从其得出或引起某一事物的最小的一组项“X”,其中“X”是可扩展的并且不一定描述操作在其上被执行的项等的完整列表。此外,短语“耦合到”被用于表示两个元件或设备之间某种程度上直接或间接的连接,(一个或多个)耦合设备修改或不修改所耦合信号或所传送的信息。此外,术语“或者”在此用来标识对这些连接项中的一个或多个(包括全部)的选择。此外,与“具有”、“包含”或“特征在于”同义的过渡术语“包括”是包括性的或者开放式的,并且不排除另外的、未提及的元件或方法步骤。最后,当在用于执行步骤的方法权利要求中被提及时,术语“专用机(particular machine) ”指的是35USC § 101机械法定类中的专用机。
[0026]明确地转向附图,图1示出了根据一个实施例,包括一个或多个被配置为操作和/或正在操作的设备101-108的网络100。所示为供应商网络的典型的网络配置,其具有根据一个或多个实施例的增强性(enhancement)。
[0027]特别地,网络100包括核心分组交换设备101-104,其在网络100的中间或核心运行。网络100还包括边缘分组交换设备105-108,其在网络100的边缘运行,并且向具有终端设备(115-118)的外部网络提供通信连接性,该外部网络通常是使用网络100的客户网络向其它具有终端设备(115-118)的外部网络提供通信连接性。
[0028]随着边缘分组交换设备105-108向外部网络115-118提供分组路由,边缘分组交换设备105-108中的每个设备通常需要清楚如何使分组路由至任何目的地址。为了获得该路由信息,边缘分组交换设备105-108中的每个设备和核心分组交换设备101-104以在多个核心分组交换设备101-104和多个边缘分组交换设备105-108之间分发所述IP路由信息的方式来交换互联网协议(IP)路由信息,例如但不限于:正在通信的内部网关协议和/或边界网关协议路由信息分组。中间系统-中间系统(IS-1S)作为内部网关协议被用于一个实施例中。因此,分组交换设备101-108中的每个设备具有被用于实质上所有IP路由的完整的IP路由信息。分组交换设备101-108中的每个设备通常将该信息存储于路由信息库(RIB)中,其作为数据结构分别存在于分组交换设备101-108的控制面板中。从那里,现有方法在分组交换设备101-108的每个设备的数据平面(例如,在被用于转发IP分组的线卡上)中的转发信息库(FIB)中安装了所有该IP路由信息。
[0029]相反地,一个实施例过滤该所述被存储于核心分组交换设备101-104中的IP路由信息以产生明显较少数量的IP路由,其被安装于用于转发分组的特定核心分组交换设备101-104中的一个或多个转发信息库(FIB)中。在一个实施例中,此类过滤由另一实体完成。如网络100所示,核心分组交换设备101-104并非直接耦合至外部网络115-118,因此核心分组交换设备101-104有效地仅在核心分组交换设备101-104和边缘分组交换设备105-108中转发分组。因此,在一个实施例中,该分组交换设备以及分别位于其上的FIB均不需要所有IP路由。确切地说,该分组交换设备各自的RIB可被过滤以在实质上仅仅产生IP路由子集,其中核心路由器实际上将用于转发分组。在一个实施例中,另一分组交换设备,包括但不限于,边缘或客户分组交换设备过滤IP路由信息以产生明显较小的路由子集,其被安装在FIB中用于转发分组。在一个实施例中,该被安装在FIB中用于转发分组的明显较小的路由子集包括网络的核心路由器和边缘路由器的环回地址(或由环回地址所组成)。
[0030]在一个实施例中,该明显减少的被安装的IP路由的数量近似于网络中边缘和核心分组交换设备的数量,或者是网络中边缘和核心分组交换设备的数量的函数。在一个实施例中,该明显减少的被安装的IP路由的数量级与网络中核心分组交换设备的数量和边缘设备的数量之和的数量级相同。在一个实施例中,该明显减少的被安装的IP路由的数量至少比被过滤以产生明显减少的被安装的IP路由的数量的路由(例如,分组交换设备的RIB中的路由数量)的数量小一个数量级。
[0031]图2示出了分组交换设备200(例如,装置、核心路由器、边缘路由器)的一个实施例。如图所示,分组交换设备200包括线卡201和205,每个均具有一个或多个用于转发分组的FIB。此外,分组交换设备200还具有路由处理器202,其通常通过与其它分组交换设备通信路由信息来管理控制面板,植入一个或多个FIB,以及在线卡201和205中植入一个或多个FIB (在这些FIB中有可能包括仅用来精确匹配的FIB和/或用来执行最长前缀匹配的FIB)。线卡200还包括其它卡204 (例如,服务卡、刀片),以及一些通信机构203 (例如,总线、交换结构、基体)用于允许它的不同的实体201、202、204和205进行通信。
[0032]返回参考图1,在一个实施例中,一个或多个边缘分组交换设备105-108从外部网络115-118接收IP分组,通过网络100通常将这些接收到的分组转发至不同的外部网络115-118。在一个实施例的此类情况下,各自的边缘分组交换设备105-108通常将接收到的IP分组封装进具有边缘分组交换设备105-108的目的地址的封装IP分组中,其中接收到的分组从边缘分组交换设备105-108尚开网络100。正因如此,核心分组交换设备101-104通常将仅仅转发具有核心分组交换设备101-104或边缘分组交换设备105-108的目的地址的分组,因而其不需要所有IP地址的转发信息,该IP地址可以是从外部网络115-118接收到的分组的目的地址。注意,在过渡或静态期间(在此期间并非所有的边缘分组交换设备115-118通过此方式封装IP分组),核心分组交换设备101-104可转发此类分组至在核心分组交换设备101-104中的查找引擎以执行查找操作(例如,基于RIB、或者基于使用安装有所有地址(或者这些附加的地址)的FIB的库)),或对不同的FIB执行查找,该不同的FIB安装有所有地址(或者至少这些附加的地址)。
[0033]图3A示出了在一个实施例中的分组处理单元300,其通常被包括在线卡中,用于在处理在分组交换设备中的分组。如图所示,分组处理单元300包括具有内部/本地存储器302的网络处理器,其中该处理器被用于基于IP目的地址确定如何转发分组。(注意,网络处理器302通常能执行其它分组处理功能。)因此在一个实施例中,分组301被具有内部/本地存储器302的网络处理器接收,并且在存储于该内部/本地存储器(302)中的FIB中执行查找操作以确定向何处(以及有可能为其它分组处理信息)转发分组,该分组随后被转发(303)。
[0034]在一个实施例中,存储在该内部/本地存储器(302)中的FIB是精确匹配FIB ;BP,在该FIB上只有精确匹配的查找操作被执行(例如,非最长前缀匹配)。例如,一个实施例中的网络处理器包括相对小的存储器,在其中几千对或几十万精确匹配的实体能被存储在精确匹配FIB中。通过带有片内存储器或其它强耦合(例如,非外部存储器设备),在一个实施例中的查找操作比那些使用存储在外部存储器设备上的FIB更快和更有效率。在一个实施例中,存储在该内部/本地存储器(302)的FIB被用于存储由RIB产生的明显较少数量的IP路由,并且并非所有IP路由被存储在分组交换设备的RIB中。
[0035]此外,在一个实施例中,并非IP路由(包括IPv6路由)的所有位被安装在精确匹配FIB中,例如当所有核心和边缘分组交换设备的IP地址的高阶位相同,则只有低阶位是起决定作用的。在一个实施例中,当将IP分组封装进另一 IP分组(如此处所讨论的)中时,每个目的地址的位的子集(例如,高阶位,位的其它集)被设置为唯一值以提供机制来确认网络中的分组交换设备将接收到的IP分组封装,并将封装的IP分组寻址于网络中其它分组交换设备之一。在此种情况下,目的地址的其它位的子集(例如,低阶位、位的其它集)对网络中的分组交换设备是唯一的。
[0036]图3B示出了一个实施例中的分组处理单元320,其通常被包括在线卡中,用于处理分组交换设备中的分组。如图所示,分组处理单元320包括具有内部/本地存储器322以及外部存储器324(例如,网络处理器芯片外部或ASIC322)的网络处理器,其被用于确定如何基于IP目的地址转发分组。(注意,网络处理器322通常能够执行其它分组处理功能。)因此在一个实施例中,分组321被具有内部/本地存储器322的网络处理器接收,并且在存储于该内部/本地存储器(322)中的FIB或在存储于外部处理器324中的FIB中执行查找操作以确定向何处(以及有可能为其它分组处理信息)转发分组,该分组随后被转发(323)。
[0037]在一个实施例中,存储在该内部/本地存储器(302)中的FIB是精确匹配FIB ;BP,在该FIB上只有精确匹配的查找操作被执行(例如,非最长前缀匹配)。例如,一个实施例中的网络处理器包括相对小的存储器,在其中几千对或几十万精确匹配的实体能被存储在精确匹配FIB中。通过带有片内存储器或其它强耦合(例如,非外部存储器设备),在一个实施例中的查找操作比那些使用存储在外部存储器设备上的FIB更快和更有效率。在一个实施例中,存储在该内部/本地存储器(302)的FIB被用于存储由RIB产生的明显较少数量的IP路由,并且并非所有IP路由被存储在分组交换设备的RIB中。
[0038]在一个实施例中,存储在该内部/本地存储器(322)中的FIB是精确匹配FIB ;BP,在该FIB上只有精确匹配的查找操作被执行(例如,非最长前缀匹配)。例如,一个实施例中的网络处理器包括相对小的存储器,在其中几千对或几十万精确匹配的实体能被存储在精确匹配FIB中。通过带有片内存储器或其它强耦合(例如,非外部存储器设备),在一个实施例中的查找操作比那些使用存储在外部存储器设备上的FIB更快和更有效率。在一个实施例中,存储在该内部/本地存储器(322)的FIB被用于存储由RIB产生的明显较少数量的IP路由,并且并非所有IP路由被存储在分组交换设备的RIB中。
[0039]此外,在一个实施例中,并非IP路由(包括IPv6路由)的所有位被安装在精确匹配FIB中,例如当所有核心和边缘分组交换设备的IP地址的高阶位相同,则只有低阶位是起决定作用的。在一个实施例中,当将IP分组封装进另一 IP分组(如此处所讨论的)中时,每个目的地址的位的子集(例如,高阶位,位的其它集)被设置为唯一值以提供机制来确认网络中的分组交换设备将接收到的IP分组封装,并将封装的IP分组寻址于网络中其它分组交换设备之一。在此种情况下,目的地址的其它位的子集(例如,低阶位、位的其它集)对网络中的分组交换设备是唯一的。
[0040]在一个实施例中,外部存储器324被用于存储包括未被存储在内部/本地存储器(322)中的所有IP路由、基本所有IP路由或IP路由补集的FIB。注意,最长前缀匹配通常需要比精确匹配所需的更大的存储器,并且/或可使用专门用于执行最长前缀匹配的硬件,例如,三进制内容寻址存储器(或其它相关联的存储器)或耦合至存储器的查找引擎。
[0041]因此,在一个实施例中,分组处理单元320包括基本所有来自RIB的IP路由,并且能够更加有效和快速地执行对于存储在内部/本地存储器(322)的FIB中的IP路由的查找操作,其是从过滤存储在RIB中的IP路由而产生的明显较少的IP路由。
[0042]图4是在一个实施例中使用的、与安装和使用用于转发分组的路由子集相关联的装置或组件400的框图。一个实施例包括在网络中的一个或多个分组交换设备,以及/或一个或多个被配置用于操作或实际上正在操作的分组交换设备。在一个实施例中,装置或组件400执行一个或多个对应于所示流程图之一或本文其它所述的,以及/或另一示意图或本文其它所述的进程。
[0043]在一个实施例中,装置或组件400包括一个或多个处理元件401、存储器402、(一个或多个)存储设备403、(一个或多个)专用组件405 (例如用于执行操作的优化的硬件等)和用于通信信息的(一个或多个)接口 407 (例如,发送和接收分组、用户接口、显示信息,等等),其中上述内容一般通过一个或多个通信机构409,在典型定制的以满足特定应用需求的通信路径中进行通信耦合。在一个实施例中,装置或组件400对应于图1中的分组交换设备101-108,或作为其的一部分。
[0044]装置或组件400的各种实施例可包括更多或更少的元件。装置或组件400的操作一般由处理元件401控制,其中处理元件401使用存储器402和存储设备403以执行一个或多个任务或进程。存储器402是一种计算机可读/计算机存储介质,并且一般包括随机存取存储器(RAM)、只读存储器(ROM)、闪速存储器、集成电路以及/或其它存储组件。存储器402通常存储被处理元件执行的计算机可执行指令以及由处理元件401操作的根据实施例来实现功能的数据。存储设备403是另一种计算机可读介质,并且通常包括固态存储介质、磁盘驱动器、磁盘、网络服务、磁带驱动器以及其它存储设备。存储设备403通常存储被处理元件执行的计算机可执行指令以及由处理元件401操作的根据实施例来实现功能的数据。
[0045]图5示出了在一个实施例中被分组交换设备执行或被配置以被分组交换设备执行的处理过程。处理开始于处理块500。在处理块502中,理由协议分组与网络中的其它分组交换设备交换以分发IP路由信息,其中这些IP路由通常被存储在RIB中。
[0046]在一个实施例中,该路由信息的交换包括但不限于:包括、标记和/或接收被标记的分组,该分组标识必须安装在对应FIB中的路由和不需要被安装在对应FIB中的路由。例如,在一个实施例中,IP路由信息分发在使用内部网关协议(IGP)或边界网关协议(BGP)的路由协议分组中被分发。中间系统-中间系统(IS-1S)在一个实施例中被用作内部网关协议。一个实施例使用扩展来标记或以其它方式标识应该或必须被安装在FIB中的IP路由、以及不需被安装在FIB中的IP路由。在一个实施例中,这些被标记的分组标识对应于地址(例如,环回地址或其它地址)、或网络中需要被安装在核心分组交换设备和/或边缘分组交换设备的FIB中的分组交换设备的路由。在一个实施例中,这些被标记的路由被安装在存储于本地存储器或网络处理器内部存储器(例如,图3A和图3B中的具有内部/本地存储器的网络处理器302和322)的FIB中。在一个实施例中,应该或必须安装在FIB中的IP路由和/或不需要安装在FIB中的IP路由被配置,例如通过配置文件被配置,或以某种方式通过手动或自动进行配置。
[0047]在这种情况下,如处理块503中所确定的,如果所有IP路由将被安装在分组交换设备(其还具有只存储明显较少IP路由的FIB) —个或多个FIB,则随后在处理块504中,所有IP路由被安装在与对应分组处理单元相关联的一个或多个FIB中。
[0048]然后,如处理块505中所确定的,如果被安装的FIB具有被过滤的明显较少数量的路由,则在处理块506中,IP路由信息(通常被存储在RIB中)被过滤以产生明显较少数量的IP路由,其被安装在一个或多个转发信息库(FIB)中。在一个实施例中,这些被安装的IP路由包括分别对应每个核心分组交换设备和每个边缘分组交换设备的IP路由。在一个实施例中,这些明显较少数量的IP路由被安装在仅为精确匹配的FIB中,其通常被存储在网络处理器的内部存储器或本地存储器中。在一个实施例中,基于在被标记的路由协议分组中被标识的IP路由执行过滤。
[0049]图5的流程图中的处理过程如处理块507所指示的被完整描述。
[0050]图6A示出了在一个实施例中被配置为将由和/或已由分组交换设备(特别是边缘分组交换设备)执行的过程。处理开始于处理块600。在处理块602中,边缘交换设备从外部网络接收分组。如处理块603所确定的,如果接收到的分组并非IP分组,则在处理块604中分组被如下处理(例如但不限于):典型地包括基于其它协议(例如,MPLS)转发分组。
[0051]否则,如果处理块603确定分组为IP分组,则如处理块611所确定的,如果分组被发往分组交换设备,则分组在处理块612中被本地处理。
[0052]另外,如果处理块611确定分组并非发往分组交换设备,则如处理块613所确定的,如果接收到的分组不应该被封装,则流程移至处理块614,并且接收到的IP分组被处理,包括转发该IP分组。反之,如果处理块613确定接收到的分组将被封装,则接收到的IP分组被处理,包括通过添加网络(例如,从网络中的边缘分组交换设备发送接收到的IP分组)中另一分组交换设备的目的地址的IP隧道头部(例如,LISP,GRE,L2TP,IP in IP)来封装该接收到的IP分组。
[0053]图6A的流程图中的处理过程如处理块619所指示的被完整描述。
[0054]图6B示出了在一个实施例中被配置为将由和/或已由网络分组交换设备执行的过程。处理开始于处理块660。在处理块662中,分组由分组交换设备从网络中的另一分组交换设备处接收,例如但不限于:边缘或核心分组交换设备从边缘或分组交换设备接收分组。如处理块663所确定的,如果分组未被定址为分组交换设备(例如,接收分组的分组交换设备),则该分组在处理块664中处理,其通常包括转发该接收到的分组或给接收到的分组中去封装的分组。例如,在一个实施例中,如果MPLS分组被边缘分组交换设备接收,边缘分组交换设备通常将移除MPLS封装并且转发揭露的分组。例如,在一个实施例中,如果核心分组交换设备接收到分组,该核心分组交换设备通常将转发该接收到的分组(如果是MPLS分组,可能在移除或更新标签之后进行转发)。
[0055]反之,如处理块663所确定的,分组被定址于接收分组交换设备。其后,如处理块671所确定,如果被接收的分组是封装IP分组(例如,在一个实施例中,接收到的分组包括IP隧道头部;在一个实施例中,接收到的分组包括IP in IP的协议类型),则在处理块672中,接收到的IP分组被处理,包括移除IP封装,例如公开封装的IP分组,该分组随后从分组交换设备被转发。
[0056]在一个实施例中,揭露的封装IP分组是被网络中的另一边缘分组交换设备最先接收和封装的IP分组(例如,联系图6A的处理块616所描述的)。在一个实施例中,边缘分组交换设备执行图6B中所述的操作。因此,一个实施例明显减少了用于转发分组的IP地址,其中该分组经过网络通过将接收到的IP分组封装进具有网络中另一分组交换设备的地址的IP分组中。因此在一个实施例中,在网络核心的分组交换设备实质上仅仅基于网络中分组交换设备(例如,核心或边缘)的IP地址交换IP分组。这大大减少了一个实施例中所需安装在核心路由器的转发信息库(FIB)中的路由。
[0057]另外,如处理块671所确定,分组实际上被发往接收分组交换设备(例如,分组交换设备的路由更新分组),并且该分组在处理块674中被本地处理。
[0058]图6B的流程图中的处理过程如处理块679所指示的被完整描述。
[0059]图7示出了在一个实施例中由分组交换设备,和/或被配置以由分组交换设备,特别是核心分组交换设备,执行的过程。处理开始于处理块700。在处理块702中,核心交换设备从网络中的另一分组交换设备(例如,核心或边缘路由器)接收分组。如处理块703所确定,如果接收到的分组并非IP分组,则在处理块704中分组基于其它协议(例如,MPLS)被处理,包括转发。
[0060]反之,如果如处理块703中所确定,接收到的分组是IP分组,则如处理块711中所确定,如果分组被发往分组交换设备,则该分组在处理块712中被本地处理。
[0061]反之,如果如处理块711所确定,接收到的分组并非发往分组交换设备,则如处理块713所确定,如果在接收到的IP分组上的查找操作应为精确匹配查找操作,则在处理块716中,该分组被处理,包括基于接收到的IP分组的目的地址在精确匹配FIB中执行精确匹配操作。否则,在处理块714中,接收到的IP分组被处理,包括基于接收到的IP分组的目的地址在最长前缀匹配FIB中执行最长前缀匹配操作。
[0062]图7的流程图中的处理过程如处理块719所指示的被完整描述。
[0063]鉴于本公开的原理可被应用于许多可能的实施例中,应当认识到的是本文根据图示/附图所描述的实施例及其方面仅为说明性的,并且不应当被视作限制本公开的范围。例如,正如对本领域技术人员而言是显而易见的,许多处理块的操作能够被改变和/或重新排序,在其它操作之前、之后或并发执行。此外,许多不同形式的数据结构可被用于各种实施例。本文所描述的公开视一切此类实施例都落入在所附权利要求及其等同物的范围内。
【权利要求】
1.一种网络,包括: 核心网络,所述核心网络包括多个核心分组交换设备,其中所述多个核心分组交换设备中的每个均被配置用于执行操作;以及 多个边缘分组交换设备,其中所述多个边缘分组交换设备中的每个均被配置用于执行操作,该操作包括与所述核心网络和一个或多个外部网络或设备通信分组; 其中对于所述多个核心分组交换设备中的每个的配置、以及对于所述多个边缘分组交换设备中的每个的配置包括:以将互联网协议IP路由信息分发于所述多个核心分组交换设备和所述多个边缘分组交换设备之间的方式,来交换所述IP路由信息;以及 其中对于所述多个核心分组交换设备中的每个特定核心分组交换设备的配置包括: 维护所述IP路由信息; 过滤所述IP路由信息以产生相较所述IP路由信息明显较少数量的、被安装在所述特定核心分组交换设备内的一个或多个转发信息库FIB中的IP路由,其中被安装的IP路由包括:分别对应于所述多个核心分组交换设备中的每个设备、以及所述多个边缘设备中的每个设备的多个IP路由;以及 基于在所述特定核心分组交换设备内的所述一个或多个FIB,向所述多个边缘分组交换设备和所述多个核心分组交换设备中的其它分组交换设备转发分组。
2.如权利要求1所述的网络,其中对于所述多个边缘分组交换设备中的所述每个设备的配置包括: 对接收到的互联网协议IP分组的目的地地址执行查找操作,以确定所述多个边缘分组交换设备中一不同的边缘分组交换设备的IP地址; 将所接收到的分组封装进具有所述不同的边缘分组交换设备的IP地址的IP目的地地址的封装IP分组中;以及 将所述封装IP分组发送至去往所述不同的边缘分组交换设备的所述多个核心路由器中的邻居核心路由器。
3.如权利要求2所述的网络,其中所述不同的边缘分组交换设备的IP地址是所述一不同的边缘分组交换设备的环回地址。
4.如权利要求2所述的网络,其中交换所述IP路由信息包括:交换包括用于一个或多个IP路由的IP路由信息的已标记的路由协议分组,其中标记标识了针对交换的已标记路由协议分组的所述一个或多个IP路由中的某些特定路由必须被安装的对应一个或多个路由,并且所述标记标识了针对所述交换的已标记路由协议分组中的某些路由信息不需要被安装的对应一个或多个路由。
5.如权利要求4所述的网络,其中所述路由协议分组是内部网关协议IGP分组或边界网关协议BGP分组。
6.如权利要求5所述的网络,其中标识了针对交换的已标记路由协议分组的所述一个或多个IP路由中的某些特定路由必须被安装的对应一个或多个路由的所述标记,被包括在对所述IGP分组或BGP分组的相应扩展中。
7.如权利要求4所述的网络,其中所述多个核心分组交换设备中的每个可标识的核心分组交换设备的所述一个或多个FIB包括精确匹配FIB和最长前缀匹配FIB ;并且 其中对于所述多个核心分组交换设备中的每个设备的配置包括:在所述精确匹配FIB中安装必须根据相应的标记而被安装的路由; 对仅对所述精确匹配FIB执行精确匹配,而不执行最长前缀匹配; 在所述最长前缀匹配FIB中安装不需要根据相应的标记而被安装的路由;以及 对所述最长前缀匹配FIB执行查找操作。
8.如权利要求7所述的网络,其中对于所述多个核心分组交换设备中的每个设备的配置包括: 基于接收到的第一特定分组的一个或多个字段确定在所述精确匹配FIB中执行查找操作,并且作为响应,在所述精确匹配FIB中执行查找操作以确定如何转发所述第一特定分组;以及 基于接收到的第二特定分组的一个或多个字段确定在所述最长前缀匹配FIB中执行查找操作,并且作为响应,在所述精确匹配FIB中执行查找操作以确定如何转发所述第二特定分组。
9.如权利要求4所述的网络,其中所述多个核心分组交换设备的每个可标识的核心分组交换设备内的所述一个或多个FIB包括精确匹配FIB和最长前缀匹配FIB ;并且 其中对于所述多个核心分组交换设备中的每个设备的所述配置包括: 在所述精确匹配FIB中安装少于必须根据对应的标记而被安装的路由的所有位的位; 仅对所述精确匹配FIB执行精确匹配,而不执行最长前缀匹配; 在所述最长前缀匹配FIB中安装不需要根据对应的标记而被安装的路由;以及 对所述最长前缀匹配FIB执行查找操作。
10.如权利要求9所述的网络,其中提及的IP指代IPv6。
11.如权利要求1所述的网络,其中所述安装的IP路由由分别对应于所述多个核心分组交换设备中的每个设备、和所述多个边缘设备中的每个设备的所述多个IP路由组成。
12.如权利要求1所述的网络,其中所述安装的IP路由的数量级与所述多个核心分组交换设备的数量以及所述多个边缘设备的数量之和的数量级相同。
13.如权利要求1所述的网络,其中所述被安装的IP路由的数量至少比所述被过滤的IP路由信息中的路由的数量小一个数量级,以产生其中该IP路由信息被过滤以产生明显较少数量的、被安装在所述特定核心分组交换设备内的一个或多个转发信息库FIB中的IP路由。
14.一种特定的分组交换设备,包括: 一个或多个处理元件; 存储器; 被配置用于发送和接收分组的多个接口 ;以及 被配置用来在所述接口之间进行分组交换的一个或多个分组交换机构; 其中所述一个或多个处理元件被配置用于执行包括下述项的操作: 与特定网络中的其它设备交换互联网协议IP路由信息,其中所述特定网络包括多个其它核心分组交换设备和多个边缘分组交换设备; 维护所述IP路由信息; 过滤所述IP路由信息以产生 相较所述IP路由信息明显较少数量的、被安装在所述特定核心分组交换设备内的一个或多个转发信息库FIB中的IP路由,其中被安装的IP路由包括:分别对应于所述多个核心分组交换设备中的每个设备、以及所述多个边缘设备中的每个设备的多个IP路由;以及 基于所述在所述特定的分组交换设备中的一个或多个FIB,向所述多个核心分组交换设备中的其它分组交换设备、和所述多个边缘分组交换设备中的其它分组交换设备转发分组。
15.如权利要求14所述的特定的分组交换设备,其中交换所述IP路由信息包括:交换包括用于一个或多个IP路由的IP路由信息的已标记的路由协议分组,其中标记标识了针对交换的已标记路由协议分组的所述一个或多个IP路由中的某些特定路由必须被安装的对应一个或多个路由,并且所述标记标识了针对所述交换的已标记路由协议分组中的某些路由信息不需要被安装的对应一个或多个路由。
16.如权利要求14所述的特定的分组交换设备,其中所述一个或多个FIB包括精确匹配FIB和最长前缀匹配FIB ;并且其中所述操作包括: 在所述精确匹配FIB中安装所述特定网络中的路由;以及 在最长前缀匹配FIB中安装所述特定网络外的路由。
17.如权利要求16所述的特定的分组交换设备,其中所述特定的分组交换设备包括包括下述项的特定物理设备:所述一个或多个处理元件中被配置用于对所述精确匹配FIB执行查找操作的至少一个处理元件,以及被配置为存储所述精确匹配FIB的存储器;并且 其中所述特定的分组交 换设备在所述特定物理设备的外部包括:包括所述最长前缀匹配FIB的一个或多个最长前缀匹配设备或存储器。
18.—种方法,包括: 由特定的分组交换设备执行包括下述项的操作: 与在特定网络中的其它设备交换互联网协议IP路由信息,其中所述特定网络包括多个其它核心分组交换设备和多个边缘分组交换设备; 维护所述IP路由信息; 过滤所述IP路由信息以产生相较所述IP路由信息明显较少数量的、被安装在所述特定核心分组交换设备内的一个或多个转发信息库FIB中的IP路由,其中被安装的IP路由包括:分别对应于所述多个核心分组交换设备中的每个设备、以及所述多个边缘设备中的每个设备的多个IP路由;以及 基于在所述特定的分组交换设备内的所述一个或多个FIB,向所述多个边缘分组交换设备和所述多个核心分组交换设备中的其它分组交换设备转发分组。
19.如权利要求18所述的方法,其中所述一个或多个FIB包括精确匹配FIB和最长前缀匹配FIB ;并且其中所述操作包括: 在所述精确匹配FIB中安装所述特定网络中的路由;以及 在所述最长前缀匹配FIB中安装所述特定网络外部的路由。
20.如权利要求19所述的方法,其中所述操作包括: 基于接收到的第一特定分组的一个或多个字段确定在所述精确匹配FIB中执行查找操作,并且作为响应,在所述精确匹配FIB中执行查找操作以确定如何转发所述第一特定分组;以及基于接收到的第二特定分组的一个或多个字段确定在所述最长前缀匹配FIB中执行查找操作,并且作为响应,在所述精确匹配FIB中执行查找操作以确定如何转发所述第二 特定分组。
【文档编号】H04L12/701GK103907319SQ201280053055
【公开日】2014年7月2日 申请日期:2012年8月21日 优先权日:2011年8月30日
【发明者】克拉伦斯·菲尔斯菲斯, 戴维·J·特斯昂, 约翰·H·W·贝廷科, 穆罕默德·伊斯马尔·踏塔 申请人:思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1