了解网络中的源数据包路由 (SPRING)
源数据包路由或分段路由是一种控制平面架构,使入口路由器能够引导数据包通过网络中的一组特定节点和链路,而无需依赖网络中的中间节点来确定数据包应采用的实际路径。在这种情况下,术语“源”是指“强加显式路由的点”。从 Junos OS 版本 17.2R1 开始,QFX5100 交换机和 QFX10000 交换机支持 IS-IS 和 OSPFv2 的分段路由。
从 Junos OS 20.3R1 版开始,对 OSPF 和 IS-IS 协议的分段路由支持,以提供网络中源数据包路由 (SPRING) 的基本功能。
从本质上讲,分段路由利用 IGP(如 IS-IS 和 OSPF)来通告两种类型的网段或隧道:
-
首先,严格转发的单跳隧道通过两个节点之间的特定链路传输数据包,而不考虑链路成本,称为 邻接分段。
-
第二种是在两个特定节点之间使用最短路径链路的多跳隧道,称为 节点分段。
入口路由器可以通过使用适当的隧道组合预附加数据包来引导数据包通过一组所需的节点和链路。
分段路由利用源路由范式。节点引导数据包通过有序的指令列表(称为分段)。段可以表示任何指令、拓扑指令或基于服务的指令。分段可以具有分段路由节点或分段路由域内的全局节点的本地语义。分段路由强制流通过任何拓扑路径和服务链,同时仅在分段路由域的入口节点上维护每个流的状态。分段路由可直接应用于 MPLS 架构,转发平面上无需更改。分段被编码为 MPLS 标签。段的有序列表被编码为标签堆栈。要处理的段位于堆栈的顶部。完成一个区段后,相关标签将从堆栈中弹出。分段路由可应用于 IPv6 架构,并带有新型路由扩展报头。分段被编码为 IPv6 地址。分段的有序列表被编码为路由扩展标头中的 IPv6 地址的有序列表。要处理的分段由路由扩展标头中的指针指示。完成一个段后,指针将递增。
在以下层级配置 shortcuts 时,将为带标签的 IS-IS 分段路由启用流量工程快捷方式:
-
[edit protocols is-is traffic-engineering family inet]IPv4 流量。 -
[edit protocols is-is traffic-engineering family inet6]IPv6 流量。
在网络、数据中心、主干和对等设备中部署源数据包路由时,使用流量源构建的标签堆栈交换 MPLS 数据包;例如数据中心服务器。在 Junos OS 17.4R1 版中,源路由流量与采用 RSVP 信号路径的流量共存,源路由通过 mpls.0 表实现为常规标签交换,使用标签作 pop、swap(转换为相同的标签值)和 swap-push(用于接口保护)。在所有情况量都可以在多个第 3 层接口之间或聚合接口内进行负载均衡。从 Junos OS 17.4R1 版开始,分段路由网络中的流量统计信息可以按照符合 OpenConfig 标准的格式记录第 3 层接口。仅记录网络中的源数据包路由 (SPRING) 流量的统计信息,不包括 RSVP 和 LDP 信号流量,并且每个接口的家族 MPLS 统计信息将单独计算。SR 统计信息还包括每个链路聚合组 (LAG) 成员和每个分段标识符 (SID) 的 SPRING 流量统计信息。要启用分段路由统计信息的记录,请在[edit protocol isis source-packet-routing]层次结构级别包含sensor-based-stats语句。
在 Junos OS 19.1R1 版之前,传感器仅用于收集 MPLS 传输流量(本质上是 MPLS 到 MPLS)的分段路由统计信息。从 Junos OS 19.1R1 版开始,在具有 MPC 和 MIC 接口的 MX 系列路由器以及 PTX 系列路由器上,引入了额外的传感器来收集 MPLS 入口流量(本质上是 IP 到 MPLS)的分段路由统计信息。使用此功能,您可以仅为标签 IS-IS 分段路由流量启用传感器,并将统计信息流式传输到 gRPC 客户端。
您可以使用 egress 配置语句下的 per-sid 选项为 MPLS 入口流量启用分段路由统计信息。per-sid 出口功能的资源名称为:
/junos/services/segment-routing/sid/egress/usage/
您可以使用 show isis spring sensor info 命令输出查看标签 IS-IS 路由与传感器的关联。此命令不显示实际传感器的计数器值。
分段路由统计信息记录将导出到服务器。您可以从以下 OpenConfig 路径中查看分段路由统计数据:
-
/mpls/signalling-protocols/segment-routing/aggregate-sid-counters/aggregate-sid-counter[ip-addr='L-ISIS-10.1.1.1']/state/counters[name='oc-xxx']/out-pkts -
/mpls/signalling-protocols/segment-routing/aggregate-sid-counters/aggregate-sid-counter[ip-addr='L-ISIS-10.1.1.1']/state/counters[name='oc-xxx']/out-pkts
-
分段路由统计不支持平滑路由引擎切换 (GRES)。
标签 IS-IS 不支持不间断活动路由 (NSR)。在路由引擎切换期间,将在新的主路由引擎中创建一个新传感器,以替换之前的主路由引擎创建的传感器。因此,在路由引擎切换时,分段路由统计信息计数器从零开始。
-
不支持标签 IS-IS 平滑重启。
在正常重新启动的情况下,现有传感器将被删除,并在 IS-IS 初始化期间创建一个新传感器。分段路由统计信息计数器从零重新启动。
-
不支持不中断服务的软件升级 (ISSU) 和不间断软件升级 (NSSU)。在这种情况下,分段路由统计信息计数器将重新启动。
-
零统计分段路由数据将被禁止显示,并且不会流式传输到 gRPC 客户端。
变更历史表
是否支持某项功能取决于您使用的平台和版本。使用 功能浏览器 查看您使用的平台是否支持某项功能。