第185篇:SR-BE(Best Effort)与 SR-TE(Traffic Engineering)

关键词

SR-BE、SR-TE、Steering、Color、Flex-Algo、SR Policy、Candidate Path


一、SR-BE(SR Best Effort)

1.1 概念

SR-BE 是 SR-MPLS 的基本转发模式

操作:
  Ingress 压入一个 Prefix-SID(Node-SID)
  中间节点按 IGP 最短路径转发
  Egress 弹出标签

等价于:LDP 的 LSP,但不需要 LDP!

1.2 转发示例

R1 发往 R4(Node-SID = 104):

Segment List = [104]

R1:Push 104 → 发送
R2:IGP 路由:到 4.4.4.4 最优下一跳 = R3 → 标签 104 → 转发
R3:IGP 路由:到 4.4.4.4 直连 → PHP 弹出 → IP → R4

路径 = IGP 最短路径
如果 IGP 最短路径是 R2→R3,就走 R2→R3
如果 R2→R3 中断,IGP 收敛后走 R2→R5→R3

1.3 SR-BE 的特点

特性 说明
路径 IGP 最短路径(SPF 计算)
Segment List 仅一个 Prefix-SID
状态 Transit 无状态(只维护 IGP)
可靠性 IGP 收敛自动恢复
TE 能力 无(不走指定路径)
保护 TI-LFA(可选)

二、SR-TE(SR Traffic Engineering)

2.1 概念

SR-TE 是 SR-MPLS 的流量工程模式

操作:
  Ingress 压入多个 SID 组成的 Segment List
  中间节点按 Segment List 指定的路径转发
  Egress 弹出

等价于:MPLS TE,但不需要 RSVP-TE!

2.2 转发示例

R1 需要流量走 R2 → R5 → R3 → R4(避开 R2-R3 直接链路):

Segment List = [Adj-SID(R2→R5), Prefix-SID(R4)]

R1:Push {Adj-SID=105, Node-SID=104}
R2:栈顶=105 → 从指定接口到 R5 → Pop 105 → 剩下 {104}
R5:栈顶=104 → IGP 最短路径到 R4
R3:继续转发 → R4
R4:Pop

全程无需 RSVP-TE 信令!

2.3 SR-TE 的特点

特性 说明
路径 Segment List 精确指定
Segment List 多个 SID 编码整条路径
状态 仅 Ingress 维护 SR-TE Policy
信令 不需要 RSVP-TE
带宽预留 支持(通过控制器或策略)
保护 主备 Candidate Path

三、SR Policy

3.1 概念

SR Policy(SR 策略) 是 SR-TE 的配置单元,定义了:

SR Policy = 头端(Ingress)+ Color + 端点(Endpoint)

其中 Color 是流量引导的关键:
  - Color = 100 → 低延迟路径
  - Color = 200 → 大带宽路径
  - Color = 300 → 避开某条链路

3.2 SR Policy 结构

SR Policy(Headend=R1, Color=100, Endpoint=R4)
  │
  ├─ Candidate Path 1(主路径,Priority=100)
  │    Segment List: [105, 104]
  │    Preference: 100
  │
  ├─ Candidate Path 2(备路径,Priority=50)
  │    Segment List: [106, 107, 104]
  │    Preference: 50
  │
  └─ Candidate Path 3(动态 CSPF 计算)
       Constraints: 带宽=100M, 避开特定链路

3.3 配置示例

# 华为设备 SR-TE Policy 配置
segment-routing
 traffic-engineering
  #
  policy SR_POLICY_1
   color 100
   endpoint 4.4.4.4
   #
   candidate-path preference 100
    explicit segment-list PATH_A
   #
   candidate-path preference 50
    explicit segment-list PATH_B
   #
   candidate-path preference 10
    type dynamic
    constraints
     bandwidth 100000                 # 带宽约束
     affinity include-any 0x01        # 亲和属性
#
segment-list PATH_A
 index 10 sid mpls adjacency 10.1.2.2    # Adj-SID
 index 20 sid mpls label 104             # Node-SID
#
segment-list PATH_B
 index 10 sid mpls adjacency 10.1.1.2
 index 20 sid mpls adjacency 10.1.5.2
 index 30 sid mpls label 104

四、流量引导(Steering)

流量进入 SR-TE Policy 的方式:

4.1 基于 Color 的引导

BGP 路由携带 Color Community:
  10.0.0.0/24 → Color: 100

  匹配 SR Policy (Color=100, Endpoint=4.4.4.4)
  流量走 SR_TE_POLICY_1

4.2 基于策略的路由

# 将特定 ACL 匹配的流量导入 SR Policy
traffic classifier VOICE
 if-match acl 3000
!
traffic behavior TO_SR_POLICY
 redirect sr-policy color 100 endpoint 4.4.4.4
!
traffic policy STEER
 classifier VOICE behavior TO_SR_POLICY
!
interface GigabitEthernet0/0/0
 traffic-policy STEER inbound

4.3 自动引导(基于隧道)

# 将静态路由指向 SR Policy
ip route-static 10.0.0.0 16 sr-policy color 100 endpoint 4.4.4.4

五、Flex-Algo(灵活算法)

5.1 概念

Flex-Algo 是 IGP 的扩展,允许定义自定义的路径计算算法

标准 IGP SPF:基于 IGP Metric(Cost)
Flex-Algo 128:基于延迟(Latency)
Flex-Algo 129:基于 TE Metric
Flex-Algo 130:避开特定链路(亲和属性)

5.2 示例

定义 Flex-Algo:

flex-algo 128
 metric-type delay                 # 基于延迟
 affinity
  include-any 0x01                 # 仅使用光纤链路
!
flex-algo 129
 metric-type te-metric             # 基于 TE Metric
 affinity
  exclude-any 0x04                 # 避开卫星链路

使用 Flex-Algo 的 Prefix-SID:

interface LoopBack0
 ip address 4.4.4.4 255.255.255.255
 isis prefix-sid index 104
 isis prefix-sid index 204 128        # Flex-Algo 128 的 Node-SID
 isis prefix-sid index 304 129        # Flex-Algo 129 的 Node-SID

六、SR-BE vs SR-TE 对比

对比维度 SR-BE SR-TE
路径 IGP 最短路径 显式路径/策略
Segment List 单个 Prefix-SID 多个 SID
控制方式 IGP 自动 策略配置
带宽保障 支持(结合控制器)
延迟保障 支持(Flex-Algo)
保护 TI-LFA 主备 Candidate Path
配置复杂度 中-高
适用场景 普通业务 关键业务、流量调优

七、典型应用场景

场景 使用模式
普通上网流量 SR-BE(走最短路径)
语音流量 SR-TE + Flex-Algo 128(低延迟路径)
视频流量 SR-TE + 带宽约束(大带宽路径)
数据中心互联 SR-TE(指定路径避开拥塞)
故障快速恢复 SR-BE + TI-LFA(自动切换)

八、总结

知识点 核心要点
SR-BE 单 Prefix-SID,IGP 最短路径,无需 LDP
SR-TE 多 SID Segment List,精确路径控制
SR Policy 头端 + Color + Endpoint,定义 TE 策略
Candidate Path 策略中的候选路径(主/备)
Steering 流量引导到 SR-TE Policy 的机制
Flex-Algo 自定义 IGP 算法(按延迟/TE 等)

九、思考

  1. SR-BE 和 SR-TE 在 Segment List 长度和路径控制上有何不同?
  2. SR Policy 由哪些要素组成?Color 在 SR Policy 中起什么作用?
  3. Flex-Algo 是做什么的?它如何支持自定义路径计算?
  4. 流量如何被引导到 SR-TE Policy 中?
  5. 如果一个业务需要走低延迟路径,应该使用 SR-BE 还是 SR-TE?

下篇预告:第186篇《SRv6 基础:IPv6 扩展头与 SID》——进入 SRv6 的世界,理解如何在 IPv6 数据面实现 Segment Routing。