第181篇:SD-WAN 基本概念:控制面与数据面分离

关键词:SD-WAN、软件定义广域网、控制面分离、SRP协议、智能选路、CPE、Hub-Spoke

一、引言

SD-WAN(Software-Defined Wide Area Network,软件定义广域网)将 SDN 理念延伸到广域网场景。传统企业广域网高度依赖 MPLS 专线,一条 100M 专线年费用可达数十万元,且开通周期长达数周。同时,MPLS 无法直接承载互联网访问、云端应用等现代业务需求。

在第180篇 VXLAN underlay/overlay 架构中,我们学习了数据中心内部如何通过 overlay 隧道实现灵活的网络虚拟化。SD-WAN 将同样的思路扩展到了广域网:在底层多种传输介质(MPLS、互联网、4G/5G)之上构建 overlay 隧道,由集中控制器统一编排策略。SD-WAN 的核心价值在于三点:降本(互联网链路替代部分 MPLS)、提速(分钟级开通)、智选(基于应用感知的智能选路)。

二、核心概念

2.1 SD-WAN 三层平面架构

平面 职责 典型协议/技术
管理平面 设备管理、配置下发、监控告警 NETCONF/RESTCONF、Telemetry
控制平面 拓扑发现、策略计算、路由分发 SRP(Segment Routing Policy)、BGP
数据平面 报文转发、隧道封装、加密解密 IPsec、GRE、MPLS、SRv6

SD-WAN 三层平面架构 - 图示

2.2 控制面与数据面分离详解

控制面与数据面分离是 SD-WAN 的核心设计原则:

  • 控制面集中化:控制器掌握全网拓扑、链路状态和策略意图,统一计算最优路径并下发给 CPE。
  • 数据面分布式:CPE 作为边缘转发设备,根据控制器下发的策略执行本地数据转发,不依赖实时控制面交互即可完成数据面决策。

控制面与数据面分离详解 - 图示

2.3 SD-WAN 设备角色

角色 说明 华为设备
Hub 总部节点,多分支汇聚,策略集中管理 NetEngine AR6140H/AR6280
Spoke 分支节点,轻量部署,按需回传流量 NetEngine AR6141/AR6220
控制器 集中管控平台,策略编排与下发 iMaster NCE-WAN

2.4 SD-WAN 与传统 WAN 对比

维度 传统 MPLS WAN SD-WAN
链路类型 仅 MPLS 专线 MPLS + 互联网 + 4G/5G(混合链路)
管理方式 逐台设备 CLI 配置 控制器统一策略编排
策略控制 静态策略路由 基于应用感知的动态策略
链路切换 IGP/BGP 收敛(秒~分钟级) 链路探测 + 快速切换(亚秒~秒级)
单链路成本 高(MPLS 专线 per-Mbps 计价) 低(互联网带宽按需购买)
开通周期 2~4 周(运营商工单) 分钟级(零接触下发)
加密 依赖 MPLS 运营商可信 IPsec 端到端加密

三、技术细节

3.1 SD-WAN 隧道技术

SD-WAN 支持多种隧道类型,以适应不同传输场景:

隧道类型 传输承载 加密 性能 适用场景
IPsec IKEv2 互联网 AES-GCM/ChaCha20 中(加密开销) 跨互联网分支互联
GRE 互联网/MPLS 无 高(低开销) MPLS 承载不需加密时
MPLS 直连 MPLS 专线 无 最高 MPLS 专线路由
SRv6 IPv6 网络 IPsec 可选 高 IPv6 广域网演进

3.2 链路质量检测机制

SD-WAN CPE 通过主动探测持续评估各链路的 SLA 指标:

检测指标 探测方法 语音阈值 视频阈值 数据阈值
时延 NQA ICMP/TCP 探测 < 50ms < 150ms < 300ms
丢包率 探测报文统计 < 1% < 2% < 5%
抖动 时延方差计算 < 10ms < 30ms < 100ms
带宽 流量统计+探针 保证 2Mbps 保证 5Mbps 保证 1Mbps

链路质量检测机制 - 图示

3.3 应用感知策略(Application-Aware Policy)

SD-WAN 策略基于应用类型而非简单的五元组,实现精细化的流量调度:

策略动作 说明 示例
链路优选 指定业务优先使用的链路 VoIP → MPLS 首选
链路备份 主链路故障自动切换 MPLS 主 → 互联网备
负载分担 多条链路按比例分担 MPLS 60% + 互联网 40%
带宽保障 关键业务保障最小带宽 视频会议 ≥ 5Mbps
加密策略 强制或关闭加密 互联网链路启用 IPsec
QoS 标记 根据应用标记 DSCP VoIP → DSCP EF

3.4 SRP(Segment Routing Policy)控制协议

华为 SD-WAN 使用 SRP 协议作为控制面协议,实现 Hub-Spoke 拓扑中的路由和策略分发:

SRP 功能 说明
路由分发 Hub 向 Spoke 分发总部路由,Spoke 向 Hub 注册本地路由
拓扑发现 自动发现 Hub-Spoke 拓扑结构
策略下发 控制器计算的 SRP 策略通过 SRP 分发到 CPE
状态协商 CPE 与 Hub 之间的隧道状态、NAT 穿透协商

四、实战配置/案例分析

4.1 华为 SD-WAN Hub 节点配置

# ========== Hub节点(深圳总部) ==========
< Huawei > system-view
[ Huawei ] sysname Hub-Shenzhen

# 配置LoopBack接口(SRP域标识)
[ Hub-Shenzhen ] interface LoopBack 0
[ Hub-Shenzhen-LoopBack0 ] ip address 10.255.0.1 32

# 配置物理接口 - MPLS专线
[ Hub-Shenzhen ] interface GigabitEthernet 0/0/0
[ Hub-Shenzhen-GigabitEthernet0/0/0 ] ip address 10.1.1.2 30
[ Hub-Shenzhen-GigabitEthernet0/0/0 ] description To-MPLS-Branch

# 配置物理接口 - 互联网
[ Hub-Shenzhen ] interface GigabitEthernet 0/0/1
[ Hub-Shenzhen-GigabitEthernet0/0/1 ] ip address 203.0.113.2 24
[ Hub-Shenzhen-GigabitEthernet0/0/1 ] description To-Internet

# 配置iHub(控制器连接)
[ Hub-Shenzhen ] ihub
[ Hub-Shenzhen-ihub ] controller 10.254.0.1
[ Hub-Shenzhen-ihub ] authentication-mode rsa
[ Hub-Shenzhen-ihub ] local-ip 10.255.0.1

# 配置SRP协议
[ Hub-Shenzhen ] srp
[ Hub-Shenzhen-srp ] system-as 65001
[ Hub-Shenzhen-srp ] ipv4-family unicast
[ Hub-Shenzhen-srp ] domain 1
[ Hub-Shenzhen-srp-domain-1 ] connect-interface LoopBack 0

4.2 SD-WAN Spoke 节点配置

# ========== Spoke节点(上海分支) ==========
< Huawei > system-view
[ Huawei ] sysname Spoke-Shanghai

# 配置LoopBack接口
[ Spoke-Shanghai ] interface LoopBack 0
[ Spoke-Shanghai-LoopBack0 ] ip address 10.255.0.2 32

# 配置物理接口 - 互联网
[ Spoke-Shanghai ] interface GigabitEthernet 0/0/0
[ Spoke-Shanghai-GigabitEthernet0/0/0 ] ip address 198.51.100.1 24
[ Spoke-Shanghai-GigabitEthernet0/0/0 ] description To-Internet

# 配置物理接口 - 4G备用
[ Spoke-Shanghai ] interface Cellular 0/0/0
[ Spoke-Shanghai-Cellular0/0/0 ] ip address dhcp-alloc

# 连接控制器
[ Spoke-Shanghai ] ihub
[ Spoke-Shanghai-ihub ] controller 10.254.0.1
[ Spoke-Shanghai-ihub ] authentication-mode rsa
[ Spoke-Shanghai-ihub ] local-ip 10.255.0.2

# 配置SRP
[ Spoke-Shanghai ] srp
[ Spoke-Shanghai-srp ] system-as 65002
[ Spoke-Shanghai-srp ] ipv4-family unicast
[ Spoke-Shanghai-srp ] domain 1
[ Spoke-Shanghai-srp-domain-1 ] connect-interface LoopBack 0
[ Spoke-Shanghai-srp-domain-1 ] hub 10.255.0.1

4.3 智能选路策略配置

# ========== 智能选路策略 ==========
[ Spoke-Shanghai ] smart-policy
[ Spoke-Shanghai-smart-policy ] name Voice-Prefer-MPLS
[ Spoke-Shanghai-smart-policy ] classifier voice-traffic
[ Spoke-Shanghai-smart-policy-classifier-voice-traffic ] if-match dscp ef
[ Spoke-Shanghai-smart-policy-classifier-voice-traffic ] quit

[ Spoke-Shanghai-smart-policy ] classifier video-traffic
[ Spoke-Shanghai-smart-policy-classifier-video-traffic ] if-match destination-port range 17200 17300
[ Spoke-Shanghai-smart-policy-classifier-video-traffic ] quit

[ Spoke-Shanghai-smart-policy ] behavior prefer-mpls
[ Spoke-Shanghai-smart-policy-behavior-prefer-mpls ] apply link-preference primary mpls secondary internet
[ Spoke-Shanghai-smart-policy ] apply classifier voice-traffic behavior prefer-mpls

[ Spoke-Shanghai-smart-policy ] behavior internet-direct
[ Spoke-Shanghai-smart-policy-behavior-internet-direct ] apply link-preference primary internet
[ Spoke-Shanghai-smart-policy ] apply classifier web-traffic behavior internet-direct

4.4 故障排查:SRP 邻居无法建立

故障场景:新开通的分支 CPE 无法与 Hub 建立 SRP 邻居,所有业务中断。

# Step 1: 检查 SRP 邻居状态
<Spoke-Shanghai> display srp peer
  Peer: 10.255.0.1
  State: Idle
  # 状态为Idle, 未建立邻居

# Step 2: 检查SRP域配置
<Spoke-Shanghai> display srp domain 1
  Domain: 1
  System-AS: 65002
  Local-IP: 10.255.0.2
  Hub-IP: 10.255.0.1
  # 配置正常

# Step 3: 检查IP连通性
<Spoke-Shanghai> ping -a 198.51.100.1 203.0.113.2
  # 互联网链路可达

# Step 4: 检查SRP端口
<Spoke-Shanghai> display tcp connections
  # 端口2588(SRP默认端口)无连接
  # 根因: 互联网出口防火墙拦截了SRP端口2588

# Step 5: 修正防火墙策略
# 在出口防火墙上放行UDP/TCP 2588端口到Hub地址
# 或配置NAT穿透参数
[Spoke-Shanghai] srp domain 1
[Spoke-Shanghai-srp-domain-1] nat-traversal enable
  # 启用NAT穿透

# Step 6: 验证
<Spoke-Shanghai> display srp peer
  Peer: 10.255.0.1
  State: Established
  # SRP邻居建立成功

五、总结

项目 要点
SD-WAN 核心价值 混合链路降本、智能选路提质、集中管控提速
三层平面 管理面(配置管理)、控制面(策略计算)、数据面(本地转发)
控制面分离 控制器全局策略编排,CPE 本地数据面执行,断控不断转
隧道技术 IPsec(互联网加密)、MPLS 直连、GRE、SRv6 多隧道并存
应用感知 DPI 识别应用类型,基于 SLA 指标动态调度最优链路
SRP 协议 华为 SD-WAN 控制面协议,实现 Hub-Spoke 路由与策略分发

思考

  1. SD-WAN 控制器与 CPE 之间的控制通道中断时,CPE 上已下发的 SRP 策略和 IPsec 隧道是否继续正常工作?为什么?
  2. SD-WAN 链路质量探测使用 NQA 主动发送探测报文。如果探测报文走了与业务报文不同的路径(如不同出口网关),SLA 检测结果是否还能准确反映业务体验?
  3. 当 MPLS 和互联网两条链路同时可用时,SD-WAN 如何实现"负载分担"而不是"主备"?两者在转发层面有什么区别?

下篇预告:第182篇:SD-WAN 分支与总部组网案例