1. 概述 (Overview)
本文档定义了一个 YANG 数据模型 [RFC7950], 可用于在 MPLS 数据平面上配置和管理 OSPFv2 段路由扩展 [RFC2328] [RFC8665] 以及 OSPFv3 段路由扩展 [RFC5340] [RFC8666]. 所定义的 YANG 数据模型是对 OSPF YANG 数据模型 [RFC9129] 的增广.
1.1. 要求语言 (Requirements Language)
本文档中的关键词 "MUST"、"MUST NOT"、"REQUIRED"、"SHALL"、"SHALL NOT"、"SHOULD"、"SHOULD NOT"、"RECOMMENDED"、"NOT RECOMMENDED"、"MAY" 和 "OPTIONAL" 只有在以全大写形式出现时, 才应按照 BCP 14 [RFC2119] [RFC8174] 中的描述解释.
1.2. 树图 (Tree Diagrams)
本文档使用 [RFC8340] 中定义的数据模型图形表示法.
YANG 模块概述 (YANG Module Overview)
ietf-ospf-sr-mpls YANG 模块包含 OSPFv2 [RFC8665] 和 OSPFv3 [RFC8666] 的 MPLS 数据平面段路由扩展.
关键特性 (Key Features)
该 YANG 模块提供以下关键能力:
- 支持 OSPFv2 和 OSPFv3 - 统一的数据模型支持两个 OSPF 版本的段路由扩展
- 完整配置支持 - 包括实例级、区域级和接口级的段路由配置
- LSA 状态信息 - 为 OSPF 链路状态通告 (Link State Advertisements, LSAs) 中与段路由相关的信息提供运行状态数据
模块依赖 (Module Dependencies)
ietf-ospf-sr-mpls YANG 模块需要以下支持:
- 基础段路由模块 (Base Segment Routing Module) [RFC9020] - 定义独立于任何特定路由协议的全局段路由配置
- OSPF 基础模型 (OSPF Base Model) [RFC9129] - 定义基本 OSPF 配置和状态
- OSPFv3 扩展 LSA 模块 (OSPFv3 Extended LSA Module) [RFC9587] - OSPFv3 扩展 LSA 的数据模型
OSPF 配置包括 (OSPF Configuration Includes)
- OSPF 实例级配置 - 从 "ietf-segment-routing-mpls" YANG 模块导入, 包括映射服务器绑定以及每协议段路由全局块 (Segment Routing Global Block, SRGB)
- OSPF 区域级配置 - 在所有接口上启用 SR-MPLS, 并在 LSA 中通告 SR-MPLS 信息
- OSPF 接口级配置 - 多接入接口上特定邻居的邻接段标识符 (Adjacency Segment Identifier, Adj-SID) 配置
- TI-LFA 配置 - 使用 MPLS 数据平面的拓扑无关无环备用 (Topology-Independent Loop-Free Alternate, TI-LFA) 接口级配置
LSA 运行状态 (LSA Operational State)
该模块为 OSPFv2 和 OSPFv3 LSA 提供运行状态 (只读) 增补:
OSPFv2 特定内容:
- Extended Prefix Range TLV 编码
- Prefix-SID sub-TLV 编码
- SR Algorithm、SID/Label Range TLV 等
OSPFv3 特定内容:
- Extended Prefix Range TLV 编码
- Prefix-SID sub-TLV 编码
- Adj-SID 和 LAN Adj-SID sub-TLV
- SR Algorithm、SID/Label Range TLV 等
通过该 YANG 模型, 网络运营者可以使用标准化方法在 OSPF 网络中配置和管理段路由能力, 从而支持灵活的流量工程和快速重路由能力.