通告用于虚拟节点中的服务路由的选定结构路径制造技术

技术编号:19751254 阅读:33 留言:0更新日期:2018-12-12 05:46
本公开用于通告用于虚拟节点中的服务路由的选定结构路径。在一些示例中,一种方法包括:通过具有多个转发组件和多个结构链路的单机架网络设备的第一虚拟路由节点,选择转发组件的结构接口,该多个结构链路在多个转发组件的相应结构接口处耦合多个转发组件的相应对,该转发组件具有朝向网络目的地的出口接口并且与第一虚拟路由节点相关联;向第二虚拟路由节点通告该结构接口作为用于网络目的地的结构接口;通过第二虚拟路由节点将作为网络目的地的下一跳的结构接口存储到第二虚拟节点的上下文数据结构;从多个结构接口中选择结构接口作为用于网络目的地的下一跳;以及向所选择的结构接口转发去往网络目的地的网络流量。

【技术实现步骤摘要】
通告用于虚拟节点中的服务路由的选定结构路径
本公开涉及计算机网络,并且更具体地涉及在计算机网络内传达分组。
技术介绍
计算机网络是可以交换数据并且共享资源的互连计算设备的集合。在诸如以太网的基于分组的网络中,计算设备通过将数据划分为被称为分组的可变长度块来传达数据,该可变长度块个体地跨网络从源设备被路由到目的地设备。目的地设备从分组中提取数据并且将数据组装成其原始形式。被称为路由器的某些设备维护表示网络的拓扑结构的路由信息。路由器交换路由信息,以维护经由网络的可用路由的精确表示。通常,“路由”可以被定义为网络上两个位置之间的路径。在接收到传入的数据分组后,路由器检查分组内的信息(通常被称为“密钥”),以按照路由信息来选择要向其转发分组的适当的下一跳。路由器可以包括一个或多个转发组件,例如,分组转发引擎和交换结构(fabric)。分组转发引擎可以经由接口卡接收和发送数据。交换结构提供用于在分组转发引擎之间转发数据以通过网络(例如,互联网)传输的互连机制。在一些示例中,路由器或交换设备可以采用分布式多级交换结构体系架构,其中网络分组遍历位于路由器的分布式转发组件中的交换结构的多个级以从交换结构的入口点行进到交换结构的出口点。路由器使用路由协议来交换路由信息。路由器通常以一个或多个路由表或其他数据结构的形式维护路由信息。路由器可以按照路由信息来生成并且维护转发信息。转发信息将网络路由与路由器的特定转发下一跳和对应的接口端口相关联。在一些示例中,转发信息可以是包含在路由信息内的信息的子集。在转发信息中生成接口端口与下一跳的关联的过程通常被称为路由解析。边界网关协议(BGP)是路由器可以用来交换信息的路由协议,该信息与网络中的网络设备之间(诸如边缘设备的集合之间)的路由和可达性相关联。当最初两台路由器连接时,路由器通常会交换其所有路由信息。路由器随后发送控制消息,以当网络拓扑结构改变时递增地更新路由信息。例如,路由器可以发送更新消息来通告新的可用路由,并且撤消不再可用的路由。在一些示例中,BGP可以被用来通告指定的路由器已经将指定的一个或多个MPLS标签绑定到由指定的地址前缀表示的网络目的地。这可以通过发送BGP更新消息来完成,该GBP更新消息具有网络层可达性信息字段,其包含前缀和一个或多个MPLS标签;以及下一跳字段,其标识所述前缀与一个或多个标签绑定所在的节点。
技术实现思路
一般而言,本公开描述了使用路由协议属性,该属性允许网络设备在路由协议消息的单个属性中通告用于到达一个或多个网络目的地的多个下一跳。本公开的技术还允许路由协议属性的发送者指定正在被通告的多个下一跳之间的关系,并转发与单个路由协议属性中的多个下一跳中的每个下一跳相关联的语义。例如,路由协议消息可以是边界网关协议(BGP)更新消息。在一些示例中,可以发送路由协议属性用于上游分配或下游分配,并且路由协议属性可以包括指定路由协议属性的内容旨在用于上游分配还是旨在用于下游分配的字段。接收到具有路由协议属性的路由协议消息的网络设备可以基于该字段来确定如何处理路由协议属性。在发送路由协议属性用于下游分配的情况下,发送设备的下一跳和转发语义被接收网络设备存储和使用,在确定是否选择发送设备作为用于向一个或多个网络目的地转发网络流量的下一跳中用于参考。在发送路由协议属性用于上游分配的情况下,接收网络设备将由发送设备指定的下一跳和转发语义安装到转发表,并且使用下一跳和转发语义来转发由网络设备接收的网络流量。在一个示例方面中,一种方法包括:通过具有多个转发组件和多个结构链路的单机架网络设备的第一虚拟路由节点选择多个转发组件中的一个转发组件的结构接口,该多个结构链路耦合在多个转发组件的相应结构接口处的多个转发组件的相应对,该结构接口具有朝向网络目的地的出口接口并且与第一虚拟路由节点相关联;通过第一虚拟路由节点向第二虚拟路由节点通告结构接口作为用于网络目的地的下一跳;响应于接收到结构接口,通过第二虚拟路由节点将作为用于网络目的地的下一跳的结构接口存储到第二虚拟节点的上下文数据结构;通过第二虚拟路由节点并且基于上下文数据结构来从多个网络接口中选择结构接口作为下一跳用于转发去往网络目的地的网络流量;以及通过第二虚拟路由节点向选定的结构接口转发去往网络目的地的网络流量。在另一示例方面中,一种单机架网络设备包括多个转发组件;多个结构链路,其耦合在多个转发组件的相应结构接口处的多个转发组件的相应对;第一虚拟路由节点,其被配置为使用多个转发组件的第一子集来转发分组;以及第二虚拟路由节点,其被配置为使用多个转发组件的第二子集来转发分组,第二子集与第一子集不同,其中第一虚拟路由节点被配置为:选择多个转发组件中的一个转发组件的结构接口,其具有朝向网络目的地的出口接口并且与第一虚拟路由节点相关联;向第二虚拟路由节点通告结构接口作为用于网络目的地的下一跳,并且其中第二虚拟路由节点被配置为:响应于接收到结构接口,将作为用于网络目的地的下一跳的结构接口存储到第二虚拟节点的上下文数据结构,基于上下文数据结构来从多个结构接口中选择结构接口作为下一跳用于转发去往网络目的地的网络流量,以及向选定的结构接口转发去往网络目的地的网络流量。在又一示例方面中,一种计算机可读存储介质包括用于使得单机架网络设备的一个或多个可编程处理器进行以下操作的指令:通过具有多个转发组件和多个结构链路的单机架网络设备的第一虚拟路由节点选择多个转发组件中的一个转发组件的结构接口,该多个结构链路耦合在多个转发组件的相应结构接口处的多个转发组件的相应对,该结构接口具有朝向网络目的地的出口接口并且与第一虚拟路由节点相关联;通过第一虚拟路由节点向第二虚拟路由节点通告结构接口作为用于网络目的地的下一跳;响应于接收到结构接口,将作为用于网络目的地的下一跳的结构接口存储到第二虚拟节点的上下文数据结构;通过第二虚拟路由节点并且基于上下文数据结构来从多个结构接口中选择结构接口作为用于转发去往网络目的地的网络流量的下一跳;以及通过第二虚拟路由节点向选定的结构接口转发去往网络目的地的网络流量。在附图和以下描述中阐述了一个或多个示例的细节。其他特征、目的和优点将从说明书和附图以及权利要求中变得明显。附图说明图1是图示了包括按照本公开中所描述的技术来配置的网络设备的示例网络环境的框图。图2是图示了被配置为按照本公开的技术进行操作的示例网络设备的框图。图3是图示了按照本公开的一个或多个方面的网络设备在处理具有MultiNexthop属性的路由通告消息时的示例操作的流程图。图4是图示了按照本公开的技术的用于MultiNexthopBGP属性300的示例格式的框图。图5是进一步详细图示了图4的下一跳转发语义类型长度值(TLV)的示例格式的框图。图6是进一步详细图示了图5的下一跳支路描述符TLV的示例格式的框图。图7是图示了作为下一跳属性子TLV的一个示例的用于IPv4地址子TLV326的示例格式的框图。图8是图示了作为下一跳属性子TLV的一个示例的用于IPv6地址子TLV的示例格式的框图。图9是图示了作为下一跳属性子TLV的一个示例用于带标签的IP下一跳属性子TLV的示例格式的框图。图10是图示了用于具有“附接点标识符”属性子TLV的IPv4地址本文档来自技高网
...

【技术保护点】
1.一种方法,包括:通过具有多个转发组件和多个结构链路的单机架网络设备的第一虚拟路由节点选择所述多个转发组件中的一个转发组件的结构接口,所述多个结构链路耦合所述多个转发组件的相应结构接口处的所述多个转发组件的相应对,所述结构接口具有朝向网络目的地的出口接口并且与所述第一虚拟路由节点相关联;通过所述第一虚拟路由节点向所述第二虚拟路由节点通告所述结构接口作为用于所述网络目的地的下一跳;响应于接收到所述结构接口,通过所述第二虚拟路由节点将作为用于所述网络目的地的下一跳的所述结构接口存储到所述第二虚拟节点的上下文数据结构;通过所述第二虚拟路由节点并且基于所述上下文数据结构,来从多个结构接口中选择所述结构接口作为用于所述网络目的地的下一跳;以及通过所述第二虚拟路由节点向所选择的结构接口转发去往所述网络目的地的网络流量。

【技术特征摘要】
2017.05.31 US 15/610,4271.一种方法,包括:通过具有多个转发组件和多个结构链路的单机架网络设备的第一虚拟路由节点选择所述多个转发组件中的一个转发组件的结构接口,所述多个结构链路耦合所述多个转发组件的相应结构接口处的所述多个转发组件的相应对,所述结构接口具有朝向网络目的地的出口接口并且与所述第一虚拟路由节点相关联;通过所述第一虚拟路由节点向所述第二虚拟路由节点通告所述结构接口作为用于所述网络目的地的下一跳;响应于接收到所述结构接口,通过所述第二虚拟路由节点将作为用于所述网络目的地的下一跳的所述结构接口存储到所述第二虚拟节点的上下文数据结构;通过所述第二虚拟路由节点并且基于所述上下文数据结构,来从多个结构接口中选择所述结构接口作为用于所述网络目的地的下一跳;以及通过所述第二虚拟路由节点向所选择的结构接口转发去往所述网络目的地的网络流量。2.根据权利要求1所述的方法,其中所述网络目的地包括由客户边缘网络设备通告的网络地址前缀,其中通告所述结构接口还包括:通告所述结构接口作为与所述第一虚拟路由节点的本地地址相关联的服务层可达性信息。3.根据权利要求2所述的方法,其中选择包括:从与所述客户边缘网络设备相关联的多个结构接口中选择所述结构接口。4.根据权利要求2所述的方法,其中所述客户边缘网络设备允许访问虚拟专用网络(VPN)服务,并且其中通告包括:通告VPN标签作为用于所述结构接口的网络层可达性信息,其中所述第一虚拟路由节点。5.根据权利要求1所述的方法,其中通告包括:通过在所述单机架网络设备的所述第一虚拟路由节点和所述第二虚拟路由节点之间建立的单跳边界网关协议(BGP)会话来通告所述结构接口。6.根据权利要求5所述的方法,其中通告包括:通过所述单跳BGP会话在边界网关协议(BGP)更新消息中通告所述结构接口。7.根据权利要求1所述的方法,还包括:在所选择的结构接口处,通过所述第一虚拟路由节点来接收所述网络流量的分组;以及在无需跨所述多个结构链路发送所述分组的情况下,在所述多个转发组件中的所述转发组件的所述出口接口处,通过所述第一虚拟路由节点从所述单机架路由器输出所述分组。8.根据权利要求1所述的方法,其中所述多个转发组件包括由所述第一虚拟路由节点使用的所述多个转发组件的第一子集,和由所述第二虚拟路由节点使用的所述多个转发组件的第二子集,所述第二子集与所述第一子集不同。9.根据权利要求1、2、5、7和8的任何组合所述的方法,还包括:通过所述第一虚拟路由节点将转发下一跳(FNH)级负载平衡分布转换为分组转发引擎(PFE)级负载平衡分布,其中选择所述结构接口包括:基于所述PFE级负载平衡分布来选择多个结构接口,以及其中通告包括:基于所述PFE级负载平衡分布以及指定跨所述多个结构接口的负载平衡分布的信息来通告多个结构接口中的每个结构接口的网络地址,作为用于所述网络目的地的相应下一跳;以及通过所述第二虚拟路由节点将指定所述负载平衡分布的所述信息存储到所述上下文数据结构。10.一种单机架网络设备,包括:多个转发组件;多个结构链路,其耦合所述多个转发组件的相应结构接口处的所述多个转发组件的相应对;第一虚拟路由节点,其被配置为使用所述多个转发组件的第一子集来转发分组;以及第二虚拟路由节点,其被配置为使用所述多个转发组件的第二子集来转发分组,所述第二子集与所述第一子集不同,其中所述第一虚拟路由节点被配置为:选择所述多个转发组件中的一个转发组件的结构接口,其具有朝向网络目的地的出口接口并且与所...

【专利技术属性】
技术研发人员:J·M·杰格纳坦A·卡普尔R·马尔雅A·K·格瑞沃K·维拉瓦卡莱B·辛加拉扬
申请(专利权)人:瞻博网络公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1