第172篇:H-VPLS 分层 VPLS 架构

关键词

H-VPLS、分层 VPLS、MTU-s、PE-rs、PW 聚合、接入层、汇聚层、扩展性


一、VPLS 的扩展性问题

1.1 PW 全连接困境

标准 VPLS 要求所有 PE 之间建立全网状 PW:

PE 数量     PW 数量
  5          10
  10         45
  20         190
  50         1,225
  100        4,950

在大型网络中,PW 数量呈 O(N²) 增长,带来以下问题:

问题 影响
控制面负担 LDP 会话数多,每个 PE 维护大量 PW 状态
数据面负担 每个 PE 需要维护所有远端 PE 的 MAC 表项
收敛慢 一台 PE 加入/离开触发全网状态更新
BUM 流量放大 广播/未知单播复制到所有 PE

2.2 解决思路:分层

H-VPLS(Hierarchical VPLS)通过分层架构将 PE 分为两个层次:

    汇聚层 PE-rs(Pseudo-wire Aggregation)
          │
      ┌───┼───┐
      │   │   │
    PE-a  PE-b PE-c(接入层 MTU-s)
  • 接入层(MTU-s):靠近客户,数量多
  • 汇聚层(PE-rs):PW 聚合点,数量少
  • 接入层 PE 只与汇聚层 PE 建立 PW,不需要全网状

二、H-VPLS 的两种模型

2.1 模型一:PE-rs 作为接入层 PW 汇聚

          ┌────── PE-rs ──────┐
          │     PW 聚合        │
          └──┬──┬──────┬──┬──┘
             │  │      │  │
   MTU-s1   MTU-s2  ...  MTU-sN

PE-rs 之间建立全网状 PW(数量少)
MTU-s 只与 PE-rs 建立 PW(线性增长)

特点: - PE-rs 之间是标准 VPLS 全网状 - MTU-s 通过 PW 连接到 PE-rs - MTU-s 之间不需要 PW

2.2 模型二:MTU-s 桥接接入

      MTU-s1
        │
   ┌────┴────┐
   │  PE-rs  │──── PW ──── PE-rsB
   └────┬────┘
        │
      MTU-s2

MTU-s 可以是一台普通交换机(不支持 MPLS/VPLS)
MTU-s 通过 QinQ 或 VLAN 连接到 PE-rs
PE-rs 终结客户的 VLAN 并映射到 VPLS 实例

2.3 模型对比

模型 优点 缺点 适用场景
模型一(PE-rs PW 汇聚) 纯 MPLS,控制面统一 MTU-s 需要支持 MPLS 纯 MPLS 骨干
模型二(QinQ 接入) MTU-s 可以是傻瓜交换机 扩展性受限 低成本接入

三、H-VPLS 的 MAC 学习

3.1 接入层 MAC 学习

MTU-s 的 MAC 学习与标准 VPLS 相同,但学习范围受限于其连接的 PE-rs:

MTU-s1 的 MAC 表:
  MAC-A → AC1(本地客户)
  MAC-B → PW-to-PE-rs(远端所有客户都走这条 PW)

MTU-s1 不需要知道 MAC-B 具体在哪个 PE-rsB 下
MAC-B 的"方向"就是 PE-rs(聚合方向)

3.2 水平分割的调整

H-VPLS 中,水平分割规则需要调整:

标准 VPLS 的规则:
  PW → 不转发到其他 PW(保持)

H-VPLS 的补充规则:
  PE-rs 上:
    - 来自 MTU-s PW 的帧:可以转发到 PE-rs 之间的 PW(需要)
    - 来自 PE-rs 之间 PW 的帧:可以转发到 MTU-s 的 PW(需要)

  这打破了标准 VPLS 的水平分割规则!
  因此需要"上行 PW"和"下行 PW"的区分

四、H-VPLS 的配置示例(华为)

4.1 PE-rs 配置

# PE-rs 配置 VSI
vsi VPLS-A-HUB
 pwsignal ldp
  vsi-id 200                              # 汇聚层 VSI ID
  peer 4.4.4.4                            # 对端 PE-rs(全网状)
  peer 5.5.5.5
#
# 为 MTU-s 创建接入 VSI
vsi VPLS-A-SPOKE
 pwsignal ldp
  vsi-id 101                              # 接入层 VSI ID
  peer 2.2.2.2                            # MTU-s1
  peer 3.3.3.3                            # MTU-s2
#
# 桥接两个 VSI(将接入层 VSI 连接到汇聚层 VSI)
vsi VPLS-A-HUB
 l2 binding vsi VPLS-A-SPOKE              # 内部桥接

4.2 MTU-s 配置

# MTU-s1 配置(标准 VPLS PE)
vsi VPLS-A
 pwsignal ldp
  vsi-id 101                              # 与 PE-rs 的 VSI ID 对应
  peer 1.1.1.1                            # 只连接 PE-rs,不连其他
#
interface GigabitEthernet0/0/0.100
 vlan-type dot1q 100
 l2 binding vsi VPLS-A

4.3 验证

# 在 PE-rs 上查看
<PE-rs> display vsi name VPLS-A-HUB

VSI Name               : VPLS-A-HUB
VSI State              : Up
PW Information:
  Peer 4.4.4.4         : Up    ← 汇聚层 PW
  Peer 5.5.5.5         : Up    ← 汇聚层 PW
  Peer 2.2.2.2         : Up    ← 接入层 PW(MTU-s1)
  Peer 3.3.3.3         : Up    ← 接入层 PW(MTU-s2)
MAC Learning           : Enable

五、H-VPLS 的转发示例

5.1 场景

MTU-s1 ──PW── PE-rsA ──PW── PE-rsB ──PW── MTU-s2
  │                           │
客户A                     客户B
MAC-A                      MAC-B

5.2 从 MAC-A 到 MAC-B 的转发

① MTU-s1 收到 MAC-A→MAC-B 的帧
② MTU-s1 查 MAC 表:MAC-B → PW-to-PE-rsA
③ MTU-s1 通过 PW 发送到 PE-rsA

④ PE-rsA 从 MTU-s1 PW 收到帧
⑤ 查 MAC 表:MAC-B → PW-to-PE-rsB(来自汇聚层 PW)
⑥ PE-rsA 通过汇聚层 PW 发送到 PE-rsB

⑦ PE-rsB 从汇聚层 PW 收到帧
⑧ 查 MAC 表:MAC-B → PW-to-MTU-s2
⑨ PE-rsB 通过 PW 发送到 MTU-s2

⑩ MTU-s2 从 PW 收到帧
⑪ 查 MAC 表:MAC-B → AC(本地客户接口)
⑫ 从 AC 发送到客户B

5.3 转发路径分析

路径:MTU-s1 → PE-rsA → PE-rsB → MTU-s2
跳数:4 段

对比标准 VPLS(全网状):
  如果 MTU-s1 和 MTU-s2 之间没有 PW
  → 必须经过 PE-rsA → PE-rsB → MTU-s2
  → 多了一跳

代价:H-VPLS 比标准 VPLS 多一跳(经过 PE-rs 聚合)
收益:PW 数量从 O(N²) 降为 O(N)

六、H-VPLS 的优缺点

6.1 优点

优点 说明
扩展性 PW 数量从 O(N²) 降为 O(N)
易于运维 接入层 PE 配置简单,只连一个 PE-rs
BUM 抑制 广播只在接入层和汇聚层间传播
增量部署 新增 MTU-s 只需配置到 PE-rs 的 PW

6.2 缺点

缺点 说明
多一跳延迟 流量多经过 PE-rs
PE-rs 单点瓶颈 PE-rs 处理所有汇聚流量
PE-rs 故障影响大 影响所有接入 MTU-s
MAC 表集中 PE-rs 维护大量 MAC 地址

七、H-VPLS 与 EVPN 的对比

对比维度 H-VPLS EVPN
信令 LDP 扩展 MP-BGP
MAC 学习 数据面泛洪学习 控制面 MP-BGP 通告
BUM 优化 有限 支持 ARP/ND 抑制
多归 支持(DF 选举)
分裂脑 有防分裂脑机制
扩展性 中等
当前地位 现网存量多 新建网络首选

八、总结

知识点 核心要点
H-VPLS 动机 解决 VPLS 全网状 PW 扩展性问题
接入层 MTU-s 靠近客户,只连接 PE-rs
汇聚层 PE-rs PW 聚合点,少量高性能设备
PW 数量 从 O(N²) 降为 O(N)
水平分割调整 需要区分上行/下行 PW
转发路径 多一跳(经过 PE-rs 汇聚)

九、思考

  1. 标准 VPLS 的 PW 全连接有什么扩展性问题?
  2. H-VPLS 如何通过分层解决扩展性问题?
  3. MTU-s 和 PE-rs 在 H-VPLS 中各自扮演什么角色?
  4. H-VPLS 的转发路径比标准 VPLS 多了什么?
  5. H-VPLS 在水平分割规则上需要做什么调整?

下篇预告:第173篇《EVPN 基本概念:MP-BGP 与 NVO3》——EVPN 作为新一代 L2VPN 技术,如何通过 MP-BGP 控制面解决 VPLS 的诸多缺陷。