Skip to main content

3. IS-IS段路由MPLS数据平面YANG模块 (IS-IS Segment Routing over MPLS YANG Module)

本节介绍用于MPLS数据平面上IS-IS段路由扩展的完整YANG模块。

模块结构 (Module Structure)

ietf-isis-sr-mpls YANG模块扩展了IS-IS基础YANG模型 [RFC9130],并与段路由基础模块 [RFC9020] 集成。

模块头部 (Module Header)

module ietf-isis-sr-mpls {
yang-version 1.1;
namespace "urn:ietf:params:xml:ns:yang:ietf-isis-sr-mpls";
prefix isis-sr-mpls;

import ietf-routing {
prefix rt;
reference
"RFC 8349: A YANG Data Model for Routing Management
(NMDA Version)";
}

import ietf-segment-routing-mpls {
prefix sr-mpls;
reference
"RFC 9020: YANG Data Model for Segment Routing";
}

import ietf-isis {
prefix isis;
reference
"RFC 9130: YANG Data Model for the IS-IS Protocol";
}

organization
"IETF LSR - Link State Routing Working Group";

contact
"WG Web: `https://datatracker.ietf.org/wg/lsr/`
WG List: <mailto:[email protected]>

Editor: Stephane Litkowski
<mailto:[email protected]>
Editor: Yingzhen Qu
<mailto:[email protected]>
Editor: Acee Lindem
<mailto:[email protected]>
Editor: Ing-Wher Chen
<mailto:[email protected]>
Editor: Jeff Tantsura
<mailto:[email protected]>";

description
"此YANG模块定义了用于MPLS数据平面上IS-IS段路由(SR)扩展的
配置和运行状态。

此YANG模块符合RFC 8342中描述的网络管理数据存储架构(NMDA)。

版权所有 (c) 2025 IETF Trust及代码作者。保留所有权利。

允许以源代码和二进制形式进行再分发和使用,无论是否修改,
前提是遵守IETF Trust关于IETF文档的法律规定中规定的修订版BSD许可证
(https://trustee.ietf.org/license-info)。

此YANG模块版本是RFC 9902的一部分;
完整法律声明请参见RFC本身。";

revision 2025-12 {
description
"初始版本。";
reference
"RFC 9902: A YANG Data Model for IS-IS Segment Routing
over the MPLS Data Plane";
}
}

关键数据节点 (Key Data Nodes)

段路由激活 (Segment Routing Activation)

模块提供enable叶节点来激活IS-IS SR MPLS功能:

路径 (Path): /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/isis:isis/segment-routing/enabled

类型 (Type): boolean
默认值 (Default): false

启用后,路由器根据基础SR模块中的SRGB/SRLB配置广播SR能力。

映射服务器配置 (Mapping Server Configuration)

广播策略 (Advertise Policies):

  • 路径: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/isis:isis/segment-routing/bindings/advertise/policies
  • 类型: 映射服务器策略名称的leafref
  • 描述: 控制在IS-IS中广播哪些映射服务器策略

接收绑定 (Receive Bindings):

  • 路径: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/isis:isis/segment-routing/bindings/receive
  • 类型: boolean
  • 描述: 控制是否接收和处理映射服务器条目

TI-LFA配置 (TI-LFA Configuration)

模块扩展IS-IS接口快速重路由配置以支持拓扑独立环回自由备选 (Topology Independent Loop-Free Alternate, TI-LFA):

路径: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/isis:isis/interfaces/interface/fast-reroute/ti-lfa

配置选项:

  • enable: 启用/禁用TI-LFA
  • level: 应用于level-1、level-2或两者
  • node-protection: 启用节点保护

运行状态数据 (Operational State Data)

路由器能力 (Router Capabilities)

模块扩展IS-IS路由器能力以包括:

SR能力 (SR Capability):

  • 路径: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/isis:isis/router-capabilities/sr-capability
  • 内容:
    • SRGB范围
    • 支持的SR算法
    • MPLS封装能力

SR算法 (SR Algorithms):

  • 路径: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/isis:isis/router-capabilities/sr-algorithms
  • 类型: 算法标识符列表
  • 常见值:
    • 0: 最短路径优先 (Shortest Path First, SPF)
    • 1: 严格最短路径优先 (Strict Shortest Path First)

本地块 (Local Blocks):

  • 路径: /rt:routing/rt:control-plane-protocols/rt:control-plane-protocol/isis:isis/router-capabilities/local-blocks
  • 内容: SRLB范围信息

LSP数据库扩展 (LSP Database Augmentations)

模块向IS-IS LSP数据库条目添加SR特定的TLV:

前缀段标识符子TLV (Prefix-SID Sub-TLV):

  • 算法标识符
  • SID/索引/标签值
  • 标志位 (R标志, N标志, P标志, E标志, V标志, L标志)

邻接段标识符子TLV (Adjacency-SID Sub-TLV):

  • 标志位 (F标志, B标志, V标志, L标志, S标志, P标志)
  • 权重
  • SID/标签/索引

SID/标签绑定TLV (SID/Label Binding TLV):

  • 前缀
  • 范围
  • SID/标签映射

核心术语 (Core Terminology)

Prefix-SID (前缀段标识符)

与IP前缀关联的段标识符。Prefix-SID在SR域内是全局唯一的,代表到达前缀的ECMP感知最短路径。

关键属性:

  • 全局范围 (Global Scope): 使用SRGB标签范围
  • 算法 (Algorithm): 与特定算法关联 (例如SPF)
  • 节点SID (Node-SID): 当前缀是路由器环回地址时

Adjacency-SID (邻接段标识符)

表示到相邻路由器的特定邻接的段标识符。

关键属性:

  • 本地范围 (Local Scope): 使用SRLB或动态标签范围
  • 严格转发 (Strict Forwarding): 流量专门通过该邻接转发
  • 保护 (Protection): 可由备份路径保护

SRGB (段路由全局块)

SR域内为全局段保留的标签范围。所有节点应具有一致的SRGB配置以确保SR正常运行。

SRLB (段路由本地块)

为本地段保留的标签范围。SRLB标签仅具有本地意义,不在域范围内传播。

MSD (最大SID深度)

节点可以在数据包上施加的最大SID数量。此值被广播以帮助路径计算引擎确定可行的SR路径。

使用示例 (Usage Example)

完整配置示例请参见 附录A

完整模块定义 (Complete Module Definition)

完整的YANG模块定义 (包括所有数据节点、扩展和通知) 请参考:


注意: 完整的YANG模块代码 (约500多行) 包括每个数据节点的详细描述、约束和参考。网络运营商应使用YANG验证工具确保配置符合模块的约束。