首页> 中国专利> 管理轴辐式网络内的路由信息

管理轴辐式网络内的路由信息

摘要

本发明涉及管理轴辐式网络内的路由信息。总的来说,描述了以减少链路信息涌入的方式管理轴辐式网络内的路由信息技术。轴辐式网络内的包括存储器和处理器的中心路由器可执行该技术。存储器可被配置为存储轴辐式网络的拓扑的表达。处理器可被配置为利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器的每一个通信。链路状态协议的多实例版本的每个单独实例可包括中心路由器和多个分支路由器中不同的一个分支路由器。处理器可处理来自链路状态协议的多实例版本的单独实例的链路状态通知,以保持轴辐式网络的拓扑的表达。

著录项

  • 公开/公告号CN105939256A

    专利类型发明专利

  • 公开/公告日2016-09-14

    原文格式PDF

  • 申请/专利权人 丛林网络公司;

    申请/专利号CN201610125568.5

  • 发明设计人 沙拉达·赫格德;萨利赫·K·A;

    申请日2016-03-04

  • 分类号H04L12/707(20130101);H04L12/721(20130101);H04L12/753(20130101);

  • 代理机构11240 北京康信知识产权代理有限责任公司;

  • 代理人梁丽超;陈鹏

  • 地址 美国加利福尼亚

  • 入库时间 2023-06-19 00:30:14

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-11-26

    授权

    授权

  • 2016-10-19

    实质审查的生效 IPC(主分类):H04L12/707 申请日:20160304

    实质审查的生效

  • 2016-09-14

    公开

    公开

说明书

优先权声明

本申请要求于2015年3月6日提交的美国临时申请No.62/129,496的权益,通过引用将其全部内容结合于此。

技术领域

本发明涉及数据包在网络内的路由,并且尤其涉及通过轴辐式网络内的路由器对路由信息的管理。

背景技术

专用网络可包括多个装置,比如单个企业拥有或经管的计算机。这些装置可分组形成多个站点网络,这些站点网络反过来可地理分布于广阔的区域。每个站点网络可包括一个或多个局域网(LANs)。

为维护这些站点网络间的通信隐私,利用从服务提供商租赁的专用通信线路完成这些站点网络的互联。随着虚拟专用网络(VPN)技术的出现,企业现在能通过公共网络(比如互联网)完成站点网络间的专用连接。与传统的专用网络相比较,VPN通过消除站点网络间的专用线路的需求而节约了大量成本。

VPN可被配置为轴辐式拓扑。在轴辐式网络内,集线器便于分支站点(spoke site)网络间的通信。这种配置使所有数据通过中央集线器,隔离分支站点网络且在不同分支站点网络内的装置之间只允许通过集线器进行通信。企业可以这种方式配置该企业使用的VPN来监控或控制在不同分支站点网络内的装置之间的通信。

一般来说,VPN的每个站点网络通过由VPN服务提供商经管的公共网络上的至少一个分支路由器(spoke router)连接到公共网络。VPN服务提供商经管的公共网络内的路由器可用作与分支站点网络互联的每个分支路由器使用的集线器。这些分支路由器可通过链路状态协议(比如开放最短路由优先(OSPF)协议或中间系统到中间系统(IS-IS)协议)传达分支站点网络的拓扑的变化。

根据链路状态协议,这些分支路由器可通过中心路由器将传达拓扑变化的链路状态通知涌入(flood)到其他分支路由器中的每一个,以便每一个分支路由器可保持轴辐式网络的准确拓扑。鉴于随着分支数量的增加,轴辐式网络部署也逐渐增大,分支路由器会接收到越来越多的链路状态通知。链路状态通知的数量增加会导致分支路由器在处理周期和存储器方面消耗大量资源来处理链路状态通知和保持轴辐式网络的分支站点网络的拓扑。

发明内容

一般来说,描述由路由设备(比如,路由器)所使用的技术来以以减少链路状态通知涌入的方式部署轴辐式网络内的链路状态协议。根据本公开的技术,轴辐式网络的中心路由器可部署链路状态协议的多实例形式(multi-instance form),比如多实例开放最短路由优先(OSPF)协议。为支持多实例OSPF协议,中心路由器的逻辑或物理接口可被配置为支持点对多点(P2MP)连接。P2MP接口可进一步地被配置为支持P2MP接口的每一个接口的单独路由实例,也就是,多实例OSPF协议的路由域。在中心路由器内,多实例OSPF协议的每个实例可被配置为包括中心路由器和分支路由器中不同的分支路由器。因为多实例OSPF协议的每个实例是不同于其他的单独的路由域,分支路由器只将链路状态通知涌入到中心路由器,而这些链路状态通知未被涌入到参与不同的OSPF路由实例的这些分支路由器。在这一方面,涌入到分支路由器之间的链路状态通知的数量减少且可能消除。

中心路由器可通过聚集经由每个分支路由器的链路状态通知告知的拓扑变化来保持轴辐式网络(可包括分支站点网络)的拓扑。此外,正如在此所描述,中心路由器可通过链路状态通知指定的源路由器识别符(例如,分配给分支路由器的互联网协议地址)和目的地路由器识别符(例如,分配给中心路由器的互联网协议地址)很容易地确定任一给定的链路状态通知对应OSPF协议的哪一个路由实例。基于路由器识别符,中心路由器可更新与分支路由器相关联的拓扑的适当部分,以反映链路状态通知所指定的拓扑变化。分支路由器也可被配置为向中心路由器转发所有的出站流量(可涉及前往超出分支站点网络范围的目的地的流量)。中心路由器可基于已确定的拓扑将这一出站流量转发给预定目的地。这样,这些技术允许在利用轴辐式模型将出站流量转发到预定目的地的同时,也可减少链路状态通知的涌入。

在一方面,一种方法包括配置在轴辐式网络内充当集线器的中心路由器,以利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器的每一个进行通信,链路状态协议的多实例版本的每个单独实例对应不同的路由域且包含中心路由器和多个分支路由器中不同的分支路由器,以及通过中心路由器处理来自链路状态协议的多实例版本的各个单独实例的链路状态通知,以保持轴辐式网络的拓扑的表达。

在另一方面,中心路由器被配置为充当轴辐式网络中的的集线器,中心路由器包括被配置为存储轴辐式网络的拓扑的表达的存储器,以及一个或多个处理器,一个或多个处理器被配置为利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器的每一个进行通信,链路状态协议的多实例版本的每个单独实例对应不同的路由域且包含中心路由器和多个分支路由器中不同的分支路由器,以及处理来自链路状态协议的多实例版本的各个单独实例的链路状态通知,以保持轴辐式网络的拓扑的表达。

在另一方面,非瞬时计算机可读存储介质已将指令存储在其中,当这些指令被执行时,使一个或多个处理器配置充当轴辐式网络中的集线器的中心路由器,以利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器的每一个进行通信,链路状态协议的多实例版本的每个单独实例对应不同的路由域且包含中心路由器和多个分支路由器中的不同的分支路由器,接收来自链路状态协议的多实例版本的各个单独实例的链路状态通知,基于链路状态通知的每一条所指定的源路由器识别符和目的地路由器识别符而不是基于单独实例标识符来确定每个链路状态通知对应哪一个单独实例,以及处理链路状态通知,以保持轴辐式网络的拓扑的表达。

在另一方面,一种系统包括被配置为充当轴辐式网络中的集线器的中心路由器,以及多个分支路由器,每个分支路由器被配置为充当轴辐式网络的分支。中心路由器包含被配置为存储轴辐式网络的拓扑的表达的存储器。中心路由器也包含一个或多个处理器,一个或多个处理器被配置为利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器的每一个进行通信,链路状态协议的多实例版本的每个单独实例对应不同的路由域且包含中心路由器和多个分支路由器中不同的分支路由器,并且一个或多个处理器处理来自链路状态协议的多实例版本的各个单独实例的链路状态通知,以保持轴辐式网络的拓扑的表达。

本技术的一个或多个实施方式的细节在下面的附图以及说明书中陈述。本技术的其他特征、对象和优势从说明书和附图以及权利要求书中将显而易见。

附图说明

图1是示出被配置为轴辐式拓扑的示例虚拟专用网路(VPN)的方块图。

图2是示出图1中示出的可执行本公开所描述的技术的各个方面的中心路由器的示范性实施方式的方块图。

图3是示出执行本公开所描述的技术的各个方面的中心路由器和分支路由器的示范性操作的流程图。

图4-图7B是示出被配置为轴辐式拓扑的各种示例虚拟专用网路(VPN)的方块图。

具体实施方式

图1是示出被配置为轴辐式拓扑内的示例虚拟专用网路(VPN)2的方块图。VPN 2包含连接到公共网络4的分支站点网络12A-12C(“分支站点网络12”)。分支站点网络12可以是企业的地理分布站点。尽管VPN2可包含任何数量的分支站点网络12,为简单起见,图1仅示出分支站点网络12。鉴于VPN 2的轴辐式配置,VPN 2也可被称为“轴辐式VPN 2”或“轴辐式网络2”。

公共网络4可包含一个或多个自主系统(未示出),且可表现为互联网。公共网络4可包含用于点对点地穿过公共网络4路由数据包的多个装置(未示出),比如路由器和开关。与VPN 2相关联的企业可利用公共网络4在地理分布的站点网络12之间路由数据包。

分支站点网络12的每一个可包含一个或多个装置(未示出),比如个人电脑、笔记本电脑、手提电脑、工作站、服务器、路由器、开关、打印机、传真机等等。分支站点网络12的每一个可包含一个或多个局域网(LAN)(未示出)。

如图1所示,分支站点网络12可通过分支路由器10A和10B(“分支路由器10)连接到公共网络4。分支站点网络12可被认为是公共网络4的边缘网络。中心路由器6和分支路由器10A和10B可被认为公共网络4内的边缘路由器。进一步地,中心路由器6以及分支路由器10A和10B可由实体(例如,服务提供商)管理,该实体向包含分支站点网络12的企业提供VPN服务。尽管提供商可利用路由器6和10提供一个以上的VPN,并且许多提供商可利用公共网络4提供VPN服务,但为简单起见,图1仅示出VPN 2。

如图1所示,分支站点网络12的每一个可通过分支路由器10中的一个分支路由器连接到公共网络4,或通过多个分支路由器10被连接到公共网络4。如图1所示,多个分支站点网络12A和12B可连接到单个分支路由器10A。如下面要探讨的,尽管分支站点网络12可通过中心路由器6连接到公共网络4,但为简单起见,图1仅示出通过分支路由器10连接到公共网络4的分支站点网络12。进一步地,尽管任何数量的分支站点网络12可连接到分支路由器10A和10B或中心路由器8,但为简单起见,图1仅示出通过分支路由器10A连接到公共网络4的分支站点网络12A和12B,以及通过分支路由器10B连接到公共网络4的分支站点网络12C。

分支站点网络12的每一个可通过一个或多个接入链路11连接到分支站点路由器10A和10B。一个或多个接入链路11可将中心路由器6和分支路由器10连接到在分支站点网络12内的一个或多个网关设备(未示出),比如路由器。接入链路11可以是PPP链路、ATM链路、以太网链路、帧中继链路、GRE隧道等等。而且,路由器6和10通过路由器6和10的物理或逻辑接口(未示出)可连接到网关装置以及连接到公共网络4。路由器6和10的网络接口卡可提供物理或逻辑接口。每个接入链路11可对应路由器6和10的物理或逻辑接口。

一般来说,使用路由器6和10以便于VPN 2的站点网络12之间的数据包的路由,也就是,将数据包从一个站点网络12内的第一装置发送到在另一个站点网络12内的第二装置。路由器6和10的每一个包含控制单元(未示出),该控制单元被配置为使路由器6和10的每一个执行在此认为是路由器6和10的功能。控制单元可以是微处理器等等。路由器6和10的控制单元可执行应用程序代码(或者,换句话说,指令),应用程序代码存储在本地可获得的或通过网络连接的非瞬时计算机可读介质,比如RAM、ROM、CD-ROM、磁盘或磁带、EEPROM等等,应用程序代码使路由器6和10执行在此认为是路由器6和10的功能。

路由器6和10可根据链路状态协议(比如开放最短路由优先(OSPF)协议或中间系统到中间系统(IS-IS)协议)互相交换链路信息。根据OSPF,例如,路由器10A可将关于在分支站点网络12A和12B的链路的链路信息涌入参与VPN 2的其他路由器,也就是,图1的示例中的分支路由器10B和中心路由器6。同样地,分支路由器10B可将关于在分支站点网络12C内的链路的链路信息涌入分支路由器10B和中心路由器6。分支路由器10还可涌入关于链路11的链路信息,分支路由器10通过链路11与分支站点网络12B通信。分支路由器10可使用描述变化的链路状态通知将链路信息涌入VPN 2内的链路。

鉴于近期轴辐式网络的大小和规模的增加,通过VPN 12涌入的传达链路状态变化的链路信息的量已急剧增长。在一个分支站点网络12的路线或链路中的变化,换句话说,会导致关于该改变的链路信息涌入分支站点网络12的所有其他网络。此外,在隧道根据需求动态兴建和拆除的地方,新兴的方法正在形成,借以在分支间建立动态隧道(tunnel)。隧道的建立和相继拆除导致链路信息的额外涌入,因为根据OSPF(或任何其他链路状态协议,比如IS-IS),隧道在建立时被认为是新的链路,而被拆除时被认为是断开的链路。分支路由器10可检测隧道状态变化,生成具有关于隧道的链路信息的LSA且将该LSA和涌入到分支路由器10的其他分支路由器,进而增加了贯穿VPN 2涌入的链路信息的量。

根据本公开描述的技术,路由器6和10可以以减少链路状态通知涌入的方式部署中心辐射VPN 2内的链路状态协议。根据本公开的技术,轴辐式网络2的中心路由器6可部署链路状态协议的多实例形式,比如多实例开放最短路由优先(OSPF)协议。2012年3月的题为“OSPFv2Multi-Instance Extensions”的请求注解(RFC)6549提供了关于多实例OSPF的更多信息,将其全部内容如在本文全面阐述地通过引用结合于此。为支持多实例OSPF,中心路由器的逻辑或物理接口可被配置为支持点对多点(P2MP)连接。P2MP接口可进一步地被配置为支持多实例OSPF协议的每个实例。

每个OSPF路由实例对应不同的内部网关协议(IGP)路由域,且各自OSPF实例的每个OSPF路由域在图1的示例中表示为实例14A和14B(可统称为“实例14”)。实例14的每一个可被配置为在中心路由器10内包含中心路由器6和分支路由器10的不同的一个分支路由器。在图1的示例中,实例14A包含中心路由器6和分支路由器10A,而实例14B包含中心路由器6和分支路由器10B。由于多实例OSPF协议的实例14中的每一个与其他的是分开的,分支路由器10可只将链路状态通知涌入到中心路由器6,而不要涌入到参与单独的OSPF实例14的那些分支路由器10。在这一方面,在分支路由器10之间涌入的链路状态通知的数量减少且可能消除。

中心路由器6可通过聚集经由LSA从每个分支路由器告知的拓扑变化来保持中心辐射VPN 2(可包括分支站点网络12)的拓扑。中心路由器6可通过LSA中指定的源路由器识别符(例如,分配给各分支路由器12的互联网协议地址)和目的地路由器识别符(例如,分配给中心路由器6的互联网协议地址)确定任一给定的LAS对应OSPF协议的哪一个实例14。基于源路由器识别符和目的地路由器识别符,中心路由器6可识别与各个分支路由器10相关联的拓扑的适当部分基于对应LSA指定的拓扑变化被更新。分支路由器10也可被配置为向中心路由器6转发所有的出站流量(可涉及前往超出分支站点网络12范围的目的地的流量)。中心路由器6可基于拓扑将出站流量转发给预定目的地。这样,该些技术允许减少链路状态通知的涌入同时使用轴辐式模型将出站流量转发到预定目的地时。

图2是示出可执行本公开所描述的技术的各个方面的中心路由器6的示范性实施方式的方块图。在图2的示例中,中心路由器6包括控制单元31,控制单元31包括路由部件32和转发部件34。另外,中心路由器6包含一组接口卡(IFC)50A-50N(统称为“IFC 50”),接口卡用于通过入站链路52A-52N(统称为“入站链路52”)和出站链路54A-54N(统称为“出站链路54”)传递数据包。

路由部件32主要为控制平面协议40提供操作环境。路由部件32也可被称为“控制平面32”,因为路由部件32提供可执行控制平面协议40和其他控制平面操作的操作环境。例如,一个或多个内部网关协议(IGP)路由协议42(比如中间系统到中间系统(ISIS)路由协议42A或OSPF路由协议42B)保持轴辐式网络2和中心路由器6连接到的其他网络实体的当前拓扑的表达(即,如图2的示例中的路由信息36所示)。具体地,IGPs42更新路由信息36来准确反映该网络和其他实体的拓扑。中心路由器6可包含其他示例路由协议,比如边界网关协议(BGP)以提供一个实例。

路由部件32生成FIB 38并利用FIB 38转发部件34进行编程,FIB 38根据路由信息36将网络目的地与具体的下一跳和IFC 50的对应接口关联。例如,路由部件32可以基数树的形式生成FIB 38,基数树具有树叶节点,树叶节点代表了网络内的目的地。

基于FIB 38,转发部件34将从入站链路52A-52N接收到的数据包转发到出站链路54A-54N,出站链路54A-54N对应与数据包的目的地相关联的下一跳。美国专利7,184,437提供了关于使用基数树实现路由解析的路由器的示范性实施方式的细节。美国专利7,184,437的全部内容通过引用结合于此。

在一个示例中,转发部件34是丰富的且动态共享的转发平面,可选择地分布在多机架路由器上。此外,可由通常与网络路由器的高端路由部件相关联的专用转发集成电路提供转发部件34。可在2012年12月25号发布的题为“STREAMLINED PACKET FORWARDING USING DYNAMICFILTERS FOR ROUTING AND SECURITY IN A SHARED FORWARDINGPLANE”的美国专利8,339,939发现PLR路由器30的示例实施方式的进一步细节,该专利的全部内容通过引证结合于此。

管理员(“admin”)可与中心路由器6的控制单元31执行的管理接口46相接合,以配置IGP路由协议42。IGP路由协议42可包含各个IGP路由协议42的多实例版本,包括上文并入的RFC6549的OSPFv2多实例扩展。为描述本技术的目的,针对OSPF 42B,管理员可配置OSPF 42B以支持多实例扩展。

根据本公开所描述的技术,管理员可配置OSPF 42B,以利用中心路由器6和各个分支路由器10A和10B之间的单独的OSPF实例14A和14B。管理员可不用配置OSPF 42BB的多实例版本来与RFC 6549完全一致,因为管理员可不用为实例14A和14B的每一个指定RFC 6549提出的所谓的“实例ID”。替代地,鉴于每个实例仅包括中心路由器6和分支路由器10的不同的分支路由器(绝不多于一个分支路由器10),每个实例14A和14B可由源路由器ID和目的地路由器ID识别。因此,根据源路由器ID和目的地路由器ID形成的元组在轴辐式网络2的背景下是独一无二的且单独实例ID不需要衍生与任何给定的LSA相关联的实例。

在配置OSPF 42B的多实例版本方面,管理员可在IFCs 50的其中一个接口(比如在IFC 50A内配置的P2MP接口51)内配置逻辑P2MP接口。管理员可配置P2MP接口51(“P2MP51”),使得接收到的hello/链路状态(LS)更新(“LSupstate”)数据包可被归类为属于数据包的源路由器ID和接收节点的路由器ID(可被称为目的地路由器ID)键控的实例14中的一个实例。管理员可通过管理接口46输入下面命令,以在中心路由器6内配置OSPF 42B的多实例版本:

+[protocols ospf area 0 interface st0.0]virtual-multi-instance

[protocols ospf area 0 interface st0.0]interface-type p2mp

[protocols ospf area 0 interface st0.0]dynamic-neighbors

管理员可输入相似的命令到中心路由器6和分支路由器10内所列的那些部件,以配置OSPF 42B的多实例版本。前述的命令允许P2MP接口51通过单个IFC 50支持每个不同的实例14。

一旦配置为支持OSPF 42B的多实例版本,OSPF 42B可为每个实例14生成LSA 43(“LSA43”)。实例10A的LSA 43可告知在中心路由器6和分支路由器10A之间的路由。实例10B的LSA 43可告知在中心路由器6和分支路由器10B之间的路由。OSPF 42B可贯穿各个实例14而不是超出各个实例14涌入每个LSA 43。每个LSA 43告知的路由可被称为“默认路由”,因为该路由可代表分支路由器10在轴辐式网络2内需要正确转发的唯一路由。

尽管描述为通过LSA 43指定默认路由器,分支路由器10可以多种方式被配置有默认路由。例如,管理员可静态地配置默认路由。例如,管理员可配置指向集线器的静态路由0.0.0.0/0。然而,在有多个中心路由器6(高可用性网络优先使用的,如果一个中心路由器发生故障,这些网络提供冗余)的一些实例中,可不用被配置静态路由,因为静态路由不便于动态路由更改,以重定向到备用中心路由器。管理员可因此优先配置中心路由器6,以利用通过LSA 43告知的聚合路由。分支路由器10可接收指定聚合路由为外部路由的LSA 43且将路由安装在各自的路由信息36(也可被称为“路由信息库36”或“RIB 36”)内。

管理员可经由管理接口46配置聚合路由,例如,通过输入以下命令:

Ex:set routing-options aggregate route 10.200.0.0/16

Set protocols ospf export export-aggregare

Set policy-options policy-statement export-aggregate term 1 fromaggregate

Set policy-options policy-statement export-aggregate term 1 then accept

聚合路由可克服在OSPF 42B的多个中心路由器的背景下的静态路由问题,因为每个分支路由器10可定义主要集线器和次要集线器,且根据优先权的高低,安装默认路由。然而,在分支路由器10需要规律的IP地址分配方面,聚合路由可增加管理的复杂性,以保持范围在汇总边界内。就这一点而言,在保持IP地址池方面上,聚合路由可能是较难操作的。

为克服与聚合路由相关联的困难,管理员可在每个分支路由器10内配置OSPF 42B,以识别与中心路由器6的相邻度并下载前往主要中心路由器6和任何备用(或者,换句话说,次要)中心路由器6的默认路由。下载的默认路由可与静态路由相似,具有确认连通性的额外收益(因为次要或备用路由也可被下载),同时也是动态因为可根据相邻链路的状态增加或除去。

一旦被配置为支持根据本公开所描述的技术的OSPF 42 B的多实例版本,中心路由器6的OSPF 42 B可开始接收来自每个分支路由器10的LSA 43,并且告知在每个分支站点网络12内的拓扑变化。中心路由器6的OSPF 42B可处理LSA以保持轴辐式网络2的拓扑的表达(由路由信息36表示)。尽管一个或多个分支站点网络12的拓扑是通过不同的实例14告知的,OSPF 42B可在相同的路由表内保持每个分支站点网络12的拓扑,该路由表类似于非转发实例。

在这一方面,中心路由器6代表分支路由器10有效地保持轴辐式网络2的拓扑的表达,这些分支路由器10只保持每个各自的本地分支网络(可涉及分支路由器10A的分支站点网络12A和12B和分支路由器10B的分支站点网络12C)的表达。换句话说,在图2的示例中,中心路由器6可表示路由器6和10的唯一一个,且保持轴辐式网络2的完整拓扑,而分支路由各自保持本地的分支站点拓扑以便于数据包在每个本地分支站点网络内进行本地路由。对于跨分支路由器转发,每个分支路由器被配置为利用例如上文所讨论的默认路由,发送所有的跨分支路由器流量到中心路由器6(因为鉴于在每个单独实例14内只有一个分支路由器10,分支路由器10彼此互不知道)。中心路由器6可接收流量且根据完整拓扑(转发信息库的下一跳表示的,在图2的示例中可表示为FIB 38)转发该流量。单独实例14因此在潜在减少在分支路由器10之间涌入的LSA43的数量的同时促进正确的轴辐式转发。

图3是示出执行本公开所描述的技术的各个方面的中心路由器6和分支路由器10的示范性操作的流程图。首先,如上所述,管理员可通过管理接口46配置中心路由器6,以提供P2MP接口51(100)。管理员可进一步通过管理接口46配置中心路由器6的P2MP接口51,以支持多实例OSPF 42B(102)。管理员在配置多实例OSPF 42B时,可配置中心路由器6和每个分支路由器10之间的默认路由,为每个对应的实例14(104)指定默认路由。一旦实例14被配置,管理员可部署或使中心路由器6充当轴辐式网络2的集线器。

管理员同样地为每个分支路由器10配置OSPF(可大体上与中心路由器6的OSPF 42B相似),使得每个分支路由器10参与不同的实例14(106)。在图1的示例示出的为轴辐式网络2部署OSPF方面,分支路由器10的OSPF 42B可被正常配置。一旦为每个分支路由器10配置OSPF 42B,管理员可部署或使每个分支路由器10充当轴辐式网络2的分支。

分支路由器10可从中心路由器6(108)各自下载先前配置的默认路由。分支路由器10可在各自的路由信息(可类似于中心路由器6的路由信息36)和FIB(充当下一跳,在此FIB可类似于中心路由器6的FIB 38)内安装默认路由。分支路由器10可利用描述分支站点网络12(110)的拓扑的链路信息继续生成LSA。分支路由器10可在各自的实例14(112)内涌入LSA。

中心路由器6可接收LSA(114),对LSA进行处理以利用LSA(116)中指定的链路信息更新存储在路由信息36内的拓扑。然而,中心路由器6不向任何其他的分支路由器10转发LSA,以为这些分支路由器10参与不同的实例14。分支路由器10可接收来自分支站点网络12的出站流量。出站流量可涉及来源于分支站点网络12且前往与分支路由器10中不同的分支路由器相关联的另一个分支站点网络12的流量。照此,分支路由器10可通过默认路由将所有出站流量转发到中心路由器6(120)。中心路由器6可根据更新的拓扑(122)转发出站流量。也就是,中心路由器6可处理LSA,以利用链路信息更新存储在路由信息36内的拓扑且减少已更新的拓扑直到指示为待转发流量的下一跳。中心路由器6可通过至少部分地根据与出站流量的目的地地址相关联的下一跳转发出站流量,来根据已更新的拓扑来转发出站流量。

分支路由器10可继续确定是否已发生拓扑更新(124)。当如通过来自位于分支站点网络10内的装置的LSA指示的出现更新时,分支路由器10可利用指示更新的恰当的链路信息各自生成LSA且在各自的实例14内涌入LSA,以便中心路由器6可接收和处理LSA,以利用链路信息更新拓扑(“是”124,110-116)。在通过默认路由转发出站流量到中心路由器6(118-122)后,然后可通过已更新的拓扑转发出站流量。当未发生更新时,分支路由器10可继续通过默认路由转发出站流量,同时中心路由器6通过相关联的下一跳(转发出站流量“否”124,118-122)。

图4是示出被配置为轴辐式拓扑的另一种示例VPN 150的方块图。轴辐式网络150除了中心路由器6通过链路152A和152B耦接到分支路由器10A之外,大体上类似于图1的示例所示的轴辐式网络2。链路152A和152B可表示物理链路或虚拟链路(比如互联网协议安全(IPsec)隧道)。因为路由器ID(而非实例ID)用作针对路由信息36的给定实例的拓扑的查询键,链路152A和152B形成的两个OSPF邻接体在同一个实例14A内(因为链路152A和152B与同一个中心路由器和分支路由器10A相关联)。中心路由器6和分支路由器10A可通过多个链路152A和152B耦接,以提供高可用性,增加的通量或高可用性和增加的通量。

当链路152A和152B被配置为提供高可用性时,管理员可配置中心路由器6以定义多个默认路由,每条默认路由用于每条链路152A和152B。特别地,管理员可配置多个P2MP接口来支持多链路。管理员也可指定默认路由中的一条为主要路由,另一条默认路由为次要或备用路由。

管理员可输入以下命令来为主要接口配置主要路由:

+[protocols ospf area 0 interface st0.0]virtual-multi-instance

[protocols ospf area 0 interface st0.0]interface-type p2mp

[protocols ospf area 0 interface st0.0]dynamic-neighbors

[protocols ospf area 0 interface st0.0]metric 1

管理员可输入以下命令来为次要接口配置默认路由:

+[protocols ospf area 0 interface st0.1]virtual-multi-instance

[protocols ospf area 0 interface st0.1]interface-type p2mp

[protocols ospf area 0 interface st0.1]dynamic-neighbors

[protocols ospf area 0 interface st0.1]metric 10

在上文的命令中,主要接口和次要接口的度量表明一个为主要的(具有较低的度量1),而另一个为次要的(具有较高的度量10)。

或者,当管理员配置链路152A和152B以支持高可用性时,管理员可配置中心路由器6使用另一个链路作为备用链路,该链路可下载到FIB38(也可位于所谓的数据包转发引擎或经常涉及PFE)且作为备用下一跳安装。以这种方式预先安装备用链路,在链路发生故障时,可允许较快恢复。因为链路152A和152B属于相同的实例,也就是图4的示例内的实例14A,相较于在检测到故障后必须计算和安装备用下一跳,中心路由器6可计算和安装备用下一跳,以允许快速恢复。

当链路152A和152B被配置为提供增加的通量时,管理员可配置允许等价多路径(ECMP)。ECMP允许链路152A和152B被用于流量传递,其中,跨越链路152A和152B的流量是负载平衡的。使用链路152A和152B而非单个链路允许增加流量通量。因为链路152A和152B属于相同的实例,也就是,图4的示例内的实例14A,中心路由器6可利用ECMP配置中的链路152A和152B来转发流量。当指定默认路由后,管理员可定义这些链路为ECMP链路,在此这些默认路由可包含ECMP下一跳。分支路由器10A下载默认路由且可利用ECMP下一跳将出站流量转发到中心路由器6。

图5是示出被配置为轴辐式拓扑的另一种示例VPN 200的方块图。轴辐式网络200除了可包含两个中心路由器6A和6B之外,大体上类似于图1的示例所示的轴辐式网络2。路由器6A和6B的每一个可大体类似于图1和图2的示例所描述的中心路由器6。

可在单个轴辐式网络内使用两个或多个路由器,以提供高可用性。换句话说,多个中心路由器提供冗余,这样当路由器6A和6B中的一个发生故障,停机或脱机来进行维修时,路由器6A和6B中的另一个可被配置为主要中心路由器,且另一个正确运作时,可被配置为次要中心路由器。

采用本公开描述的虚拟多实例技术,利用中心路由器6A和6B将分支路由器10配置为具有单独的OSPF实例。每个分支路由器10的OSPF42B一旦被配置,可从中心路由器6A和6B的主要集线器下载具有低度量(换句话说,高优先权)的所有路由以及从中心路由器6A和6B的次要集线器下载具有高度量(换句话说,低优先权)的其他路由。管理员可通过管理接口46输入以下示例性命令来配置这些默认路由:

管理员可以类似于中心路由器6的方式配置每个分支路由器10以支持OSPF 42B的多实例版本。换句话说,管理员可配置每个分支路由器10的接口50,以提供类似于中心路由器6的P2MP接口51的逻辑P2MP接口。管理员可配置P2MP接口51,以支持多OSPF实例。在图5的示例中,管理员可配置分支路由器10A的P2MP接口51,以支持实例14A和202A。管理员也可配置分支路由器10B的P2MP接口51,以支持实例14B和202B。一旦配置,分支路由器10可各自下载默认路由。虚拟多实例节点(例如,分支路由器10A和10B)可在虚拟实例执行一跳最短路径优先(SPF)。虚拟多实例节点在虚拟多实例内可不用计算超出一跳的路径。

如图5的示例进一步所示的,中心路由器6A和6B不在单独的OSPF实例内。此外,中心路由器6A和6B不共享路由或不在彼此之间涌入LSA。中心路由器6A和6B不共享路由或不在彼此之间涌入LSAs(来传达链路信息),因为中心路由器6A和6B的每一个保持拓扑的单独的表达且参与完全冗余的OSPF实例(相对于另一个中心路由器)。也就是,中心路由器6A在同一组分支路由器10之间具有相同数量的实例14和202,正如中心路由器6B和中心路由器6b同中心路由器6A一样在同一组分支路由器10之间具有相同数量的实例14和202。

而且,轴辐式网络在快速增长。当在轴辐式网络200内有大量分支(例如,成千上万)时,可以允许负载平衡的方式部署中心路由器6A和6B,在此,一半的分支路由器10使用中心路由器6A和6B中的一个作为主要集线器,而另一半分支路由器10使用中心路由器6A和6B中的另一个为主要集线器。

图6是示出被配置为轴辐式拓扑的另一种示例VPN 300的方块图。轴辐式网络300除了是分级轴辐式网络300之外,大体上类似于图1的示例所示的轴辐式网络2,在分级轴辐式网络300,分支路由器10的其中一个,也就是,图6示例的分支路由器10A,充当本地轴辐式网络302的集线器。分级轴辐式网络300可使分支可能地扩增到一百万以上。本地轴辐式网络302可表示较大的轴辐式网络300内的轴辐式网络。中心路由器6可表示分级轴辐式网络300的集线器,而分支路由器10A可充当本地轴辐式网络302的本地集线器。

正如图6的示例所示,本地轴辐式网络302可包含网络304,通过网络304可配置本地中心辐射型VPN 302。网络304可表示专用网络或公共网络。分支路由器10A仍可下载默认路由,否则如中心路由器6和单独实例14所描述进行运作。然而,管理员可进一步以类似于针对集线器6以及图1和图2所描述的方式配置分支路由器10A来充当本地轴辐式网络302的本地集线器。管理员可配置分支路由器10A,换句话说,提供P2MP接口51以支持本地轴辐式网络302的分支路由器10C和分支路由器10D之间单独OSPF实例306A和306B。管理员也可为实例306A和306B的每一个定义默认路由。本地轴辐式网络304的分支路由器10C和10D可被配置为类似于如上面图1的示例所述的分支路由器10A和10B两者中的任何一个。

图7A和图7B是示出被配置为轴辐式拓扑的另一种示例VPN 400的方块图。首先,参考图7A的示例,轴辐式网络400除了可支持自动发现VPN(ADVPN)之外,大体上类似于图1的示例所示的轴辐式网络2。关于ADVPN的更多信息可在2013年7月5号的题为“Auto Discovery VPNProtocol”的IPSECME工作草案中找到,工作草案的文件标识为draft-sathyanarayan-ipsecme-advpn-00,该文件草案的全部内容以引用的方式接合于此。

ADVPN允许在两个装置(比如分支路由器10A和10B)之间的动态IPsec穿隧。当有大量流量需要从一个分支发送到另一个分支时,可利用ADVPN以绕过中心路由器6,减少在中心路由器6的流量开销。当管理员打算执行动态穿隧时,管理员可配置分支路由器10的每一个类似于中心路由器6(意味着支持本公开所描述的多实例OSPF技术)。一旦分支路由器10被配置,分支路由器10可根据ADVPN流程建立隧道402。当隧道建成时,每个分支路由器10的OSPF 42B可检测新的隧道作为新链路并且在分支路由器之间建立单独实例。单独实例表现为图7B的示例中的实例404。

分支路由器10的OSPF 42B可确定实例404被配置为利用分配给分支路由器10A和10B的每一个的路由器ID形成的路由器ID对在各自的路由信息36内查询的结果。当在路由信息36找不到路由ID对时,分支路由器10A和10B的每一个的OSPF 42B可实例化新的实例404。在一些示例中,分支路由器10A和10B的其中一个(例如分支路由器10A)可实例化隧道402,将新实例404增加到路由信息36,且发送一条hello消息或其他周期性消息。分支路由器10A和10B中的另一个(例如,分支路由器10B)可检测隧道且将新实例404增加到分支路由器10B的路由信息36。当隧道402被拆除或弄毁时,分支路由器10A和10B均可将实例404和隧道402从分支路由器10A和10B的各自的路由信息36中除去。然而,鉴于隧道402在单独OSPF实例中是孤立的,限制了LSAs涌入实例404(以及涌入分支路由器10A和10B之间),隧道402的创建和删除不会导致LSAs贯穿轴辐式网络2涌入。

在前述的轴辐式网络内,这些技术通常提供以下操作。关于OSPF消息的发送与接收,虚拟多实例的LSA可包含只属于虚拟多实例的链路。LSA可被涌入属于虚拟多实例的接口或邻域。一旦在接口接收到虚拟多实例特征授权的基于源路由器ID和目的地路由器ID的OSPF消息,将消息导向对应的实例。当没有对应实例时,可繁衍新的实例。

关于最短路径优先计算解决路由信息和确定采用哪条路径传播数据包,每个虚拟实例可进行单独SPF计算。可一跳完成SPF计算。可为每个虚拟实例单独计算路由。

关于路由再分布,除非通过本地策略明确配置路由互相泄露,否则来自虚拟实例的路由不应互相泄露。来自虚拟实例的路由可泄露入默认实例。来自虚拟实例的路由在导出到默认实例之前,可将来自虚拟实例的路由总结在一起。

本公开描述的这些技术可以至少部分以硬件、软件、固件或硬件、软件和固件的任意组合来实施。例如,所描述的技术的各个方面可在一个或多个处理器一个或多个处理器(包括一个或多个微处理器)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或任何其他的等价集成电路或离散逻辑电路以及这些部件的任意组合内实施。术语“处理器”或“处理电路”一般可涉及前述的逻辑电路、单独的其他逻辑电路或与其他逻辑电路的组合中的任何一个、或任何其他等价电路。包括硬件的控制单元也可执行本公开的一项或多项技术。

可在同一个装置内或在独立的装置内实施这些硬件、软件、和固件以支持本公开所描述的各项操作和功能。另外,所描述的单元、模块或部件的任何一种可作为离散的但互相协作的逻辑装置同时或单独实施。模块或单元的不同特征的描述是为了强调不同功能方面,而未必暗示这些模块或单元必须通过单独的硬件或软件部件来实现。不如说,与一个或多个模块或单元相关联的功能可通过单独的硬件或软件部件来执行,或在共同的或单独的硬件或软件部件内结合在一起。

本公开所描述的这些技术也可体现或编码在包含指令的计算机可读介质内,比如计算机可读存储介质。例如,当这些指令被执行时,嵌入在或编码在计算机可读介质内的指令可使编程处理器、或其他处理器执行该方法。计算机可读介质可包含非数十计算机可读存储介质和瞬时传播介质。计算机可读存储介质是有形的且非瞬时的,可包含随机存取存储器(RAM)、只读存储器(ROM)、可编程只读存储器(PROM)、可擦可编程只读存储器(EEPROM)、快闪存储器、硬盘、CD-ROM、软盘、卡式磁带、磁性介质、光学介质、或其他计算机可读存储介质。要明白,术语“计算机可读存储介质”涉及物理存储介质,而非信号、载波、或其他瞬时介质。

除上面所述或作为对前文所述的替代,描述下面的示例。下面任何一个示例所描述的特征可同在此所描述的其他任何示例一起使用。

示例1.一种方法包括:配置在轴辐式网络中充当集线器的中心路由器,以利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器中的每一个进行通信,链路状态协议的多实例版本的每个单独实例对应不同的路由域且包括中心路由器和多个分支路由器中不同的一个分支路由器;以及通过中心路由器处理来自链路状态协议的多实例版本的单独实例的链路状态通知,以保持轴辐式网络的拓扑的表达。

示例2.根据示例1的所述方法,其中,处理链路状态通知包括代表多个分支路由器处理链路状态通知以保持轴辐式网络的拓扑的表达。

示例3.根据示例1的所述方法,其中,处理链路状态通知包括在没有将链路状态通知涌入多个分支路由器的情况下处理来自单独实例的链路状态通知。

示例4.根据示例1的所述方法,其中,配置中心路由器以利用单独实例包括将中心路由器的接口配置为逻辑P2MP接口,逻辑P2MP接口被配置为支持链路状态协议的多实例版本的每个单独实例。

示例5.根据示例1的所述方法,其中,中心路由器通过两个或更多个链路耦接到多个分支路由器中的其中一个分支路由器,且其中,中心路由器和多个分支路由器中的其中一个分支路由器之间的单独实例包含两个或更多个链路。

示例6.根据示例5的所述方法,其中,配置中心路由器以利用中心路由器和多个分支路由器中的其中一个分支路由器之间的单独实例包括:配置中心路由器以利用中心路由器和多个分支路由器中的其中一个分支路由器之间的单独实例,使得两个或更多个链路中的第一个链路为主链路,而两个或更多个链路中的第二个链路为备用链路。

示例7.根据示例5的所述方法,其中,配置中心路由器以利用中心路由器和多个分支路由器中的其中一个分支路由器之间的单独实例包括:配置中心路由器以利用中心路由器和多个分支路由器中的其中一个分支路由器之间的单独实例,使得执行负载平衡以平衡跨越两个或更多个链路的流量负载。

示例8.根据示例1的所述方法,进一步包括:为每个单独实例生成链路状态通知,链路状态通知指定在中心路由器和多个分支路由器中的各个分支路由器之间的聚合路由,通过多个分支路由器中的各个分支路由器安装聚合路由器以实现多个分支路由器中的各个分支路由器与中心路由器之间的通信;且在对应的一个单独实例内涌入生成的链路状态通知。

示例9.根据示例1的所述方法,其中,中心路由器在轴辐式网络中充当第一集线器的第一中心路由器,并且其中,该方法进一步包括配置在轴辐式网络中充当第二集线器的第二中心路由器,以利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器中的每一个进行通信,链路状态协议的多实例版本的每个单独实例包含第二中心路由器和多个分支路由器中不同的一个分支路由器;并且通过第二中心路由器处理来自链路状态协议的多实例版本的单独实例的链路状态通知,链路状态通知被配置为由第二中心路由器用于保持轴辐式网络的拓扑的表达。

示例10.根据示例1的所述方法,其中,轴辐式网络包括分级轴辐式网络,分级轴辐式网络包括至少一本地轴辐式网络,在至少一本地轴辐式网络内,多个分支路由器中的其中一个分支路由器充当本地轴辐式网络的集线器。

示例11.根据示例1的所述方法,其中,链路状态协议包括开发最短路径优先(OSPF)链路状态协议。

示例12.根据示例1的所述方法,其中,处理链路状态通知包括基于链路状态通知的每一条所指定的源路由器标识符和目的地标识符而不是基于单独实例标识符,确定每条链路状态通知对应哪个单独实例。

示例13.一种中心路由器,被配置为在轴辐式网络中充当集线器,中心路由器包括:被配置为存储轴辐式网络的拓扑的表达的存储器;以及一个或多个处理器,一个或多个处理器被配置为利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器的每一个进行通信,链路状态协议的多实例版本的每个单独实例对应不同的路由域且包括中心路由器和多个分支路由器中不同的一个分支路由器,并且一个或多个处理器处理来自链路状态协议的多实例版本的单独实例的链路状态通知,以保持轴辐式网络的拓扑的表达。

示例14.根据示例13所述的中心路由器,其中,一个或多个处理器被配置为处理链路状态通知,以代表多个分支路由器保持轴辐式网络的拓扑的表达。

示例15.根据示例13所述的中心路由器,其中,一个或多个处理器被配置为在没有将链路状态通知涌入多个分支路由器的情况下处理来自单独实例的链路状态通知。

示例16.根据示例13所述的中心路由器,其中,一个或多个处理器被配置为将中心路由器的接口配置为逻辑点对多点(P14MP)接口,逻辑P14MP接口被配置为支持链路状态协议的多实例版本的单独实例。

示例17.根据示例13所述的中心路由器,其中,中心路由器通过两个或更多个链路耦接到多个分支路由器的其中一个分支路由器,且其中中心路由器和多个分支路由器中的其中一个分支路由器之间的单独实例包括两个或更多个链路。

示例18.根据示例17所述的中心路由器,其中,一个或多个处理器被配置为利用中心路由器和多个分支路由器中的其中一个分支路由器之间的单独实例,使得两个或更多个链路的第一个链路为主链路,而两个或更多个链路的第二个链路为备用链路。

示例19.根据示例17所述的中心路由器,其中,一个或多个处理器被配置为利用中心路由器和多个分支路由器中的其中一个分支路由器之间的单独实例,使得执行负载平衡以平衡跨越两个或多个链路的流量负载。

示例20.根据示例13所述的中心路由器,其中,一个或多个处理器被进一步配置为每个单独实例生成链路状态通知,链路状态通知指定在中心路由器和多个分支路由器中的各个分支路由器之间的聚合路由,通过多个分支路由器中的各个分支路由器安装聚合路由器以实现多个分支路由器中的各个分支路由器与中心路由器之间的通信,且在对应的单独实例内涌入生成的链路状态通知。

示例21.根据示例13所述的中心路由器,其中,轴辐式网络包括分级轴辐式网络,分级轴辐式网络包括至少一轴辐式网络,在至少一轴辐式网络内,多个分支路由器中的其中一个充当轴辐式网络的集线器。

示例22.根据示例13所述的中心路由器,其中,链路状态协议包括开放最短路径优先(OSPF)链路状态协议。

示例23.根据示例13所述的中心路由器,其中,一个或多个处理器被配置为基于由链路状态通知的每一条所指定的源路由器标识符和目的地标识符而不是基于单独实例标识符,确定每条链路状态通知对应哪个单独实例。

示例24.一种非瞬时的计算机可读存储介质,具有存储在其中的指令,当指令被执行时,使一个或多个处理器:配置在轴辐式网络中充当集线器的中心路由器,以利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器的每一个进行通信,链路状态协议的多实例版本的每个单独实例对应不同的路由域且包括中心路由器和多个分支路由器中不同的一个分支路由器;接收来自链路状态协议的多实例版本的单独实例的链路状态通知;基于链路状态通知的每一条所指定的源路由器标识符和目的地标识符而不是基于单独实例标识符,确定每条链路状态通知对应哪个单独实例;以及处理链路状态通知,以保持轴辐式网络的拓扑的表达。

示例25.一种系统,包括:被配置为在轴辐式网络中充当集线器的中心路由器;多个分支路由器,每个分支路由器被配置为在轴辐式网络中充当分支,其中,中心路由器包括:被配置为存储轴辐式网络的拓扑的表达的存储器;以及一个或多个处理器,一个或多个处理器被配置为利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器的每一个进行通信,链路状态协议的多实例版本的每个单独实例对应不同的路由域且包括中心路由器和多个分支路由器中不同的一个分支路由器,并且一个或多个处理器处理来自链路状态协议的多实例版本的单独实例的链路状态通知,以保持轴辐式网络的拓扑的表达。

示例26.根据示例25所述的系统,其中,轴辐式网络包括分级轴辐式网络,分级轴辐式网络包括至少一本地轴辐式网络,在至少一本地轴辐式网络内,多个分支路由器中的其中一个路由器充当本地轴辐式网络的集线器,其中,本地轴辐式网络包括多个本地分支路由器;并且其中多个分支路由器中的充当本地轴辐式网络的集线器的其中一个分支路由器包括一个或多个处理器,一个或多个处理器被配置为利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个本地分支路由器的每一个进行通信,链路状态协议的多实例版本的每个单独实例包括充当本地轴辐式网络的集线器的分支路由器和多个本地分支路由器中不同的一个分支路由器。

示例27.根据示例25所述的系统,其中,多个分支路由器的第一个路由器包含一个或多个处理器,一个或多个处理器被配置为在多个分支路由器的第二个路由器之间建立动态隧道(dynamic tunnel)且建立链路状态协议的多实例版本的新实例以只包括多个分支路由器的第一个分支路由器和第二个分支路由器。

示例28.根据示例25所述的系统,其中,中心路由器包括第一中心路由器,其中,所述系统包括第二中心路由器,并且其中,第二中心路由器包含一个或多个处理器,一个或多个处理器被配置为利用链路状态协议的多实例版本的单独实例与轴辐式网络的多个分支路由器的每一个进行通信,链路状态协议的多实例版本的每个单独实例包括第二中心路由器和多个本地分支路由器中不同的一个分支路由器。

此外,以上任一示例所阐述的任一具体特征可结合到已描述的技术的有益示例中。也就是,任一具体特征一般适用于本发明的所有示例。已描述本发明的各种示例。

已描述本公开的各个方面。这些方面和其他的方面都在所附权利要求的范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号