第108篇:灵活 QinQ:基于 VLAN 或优先级的外层标签

关键词:灵活 QinQ、Flow-based QinQ、基于 VLAN 分类、基于优先级分类、多租户、差异化服务


一、引言

基于接口的 QinQ 对所有入方向报文统一添加外层标签,适用于客户只有一个 VLAN 或不需要区分客户内业务的场景。但当客户网络包含多个 VLAN,且运营商需要根据不同业务提供差异化服务时,基于接口的 QinQ 就无能为力了。

灵活 QinQ(Flexible QinQ / Flow-based QinQ)根据报文的内层 VLAN ID 或 802.1p 优先级,为不同业务流添加不同的外层标签,实现了精细化的业务分类与差异化传输。

二、核心概念

2.1 灵活 QinQ 分类方式

分类依据 说明 适用场景
基于内层 VLAN 根据 Customer VLAN ID 映射不同的 Service VLAN 多 VLAN 客户、不同业务不同 QoS
基于 802.1p 优先级 根据报文 CoS 优先级映射不同的 Service VLAN 语音/视频/数据差异化传输
基于 MAC 地址 根据源 MAC 地址映射不同的 Service VLAN 特定设备识别
基于报文类型 根据以太网类型映射不同的 Service VLAN IPv4/IPv6 分流

2.2 基于 VLAN 的灵活 QinQ 架构

基于 VLAN 的灵活 QinQ 架构 - 图示

2.3 灵活 QinQ 与普通 QinQ 对比

特性 普通 QinQ 灵活 QinQ
外层标签 统一添加 按流差异化添加
配置复杂度 低 中
业务区分能力 无 支持按 VLAN/优先级区分
核心 QoS 联动 难以联动 S-Tag 直接映射 QoS 策略
适用场景 简单透明传输 多业务差异化传输

三、技术细节

3.1 基于内层 VLAN 的分类规则

灵活 QinQ 使用流分类(Traffic Classifier)+ 流行为(Traffic Behavior)+ 流策略(Traffic Policy)的三层架构:

基于内层 VLAN 的分类规则 - 图示

3.2 基于 802.1p 优先级的分类

802.1p 优先级(CoS)在 VLAN 标签的 Priority 字段中,共 3 位,取值 0-7:

CoS 值 业务类型 推荐 S-Tag
7 网络控制 -
6 语音(Voice) VLAN 600
5 视频(Video) VLAN 500
4 关键业务数据 VLAN 400
3-2 最佳努力数据 VLAN 300
1-0 后台/填充 VLAN 100

3.3 VLAN Stacking 命令流程

VLAN Stacking 命令流程 - 图示

四、实战配置/案例分析

4.1 基于内层 VLAN 的灵活 QinQ 配置

# ========== 场景:客户有 VLAN 10(数据)、VLAN 20(视频)、VLAN 30(语音) ==========
# 目标:分别为不同业务添加不同的 Service VLAN

# 1. 创建 Service VLAN
[HUAWEI] vlan batch 100 200 300

# 2. 定义流分类
[HUAWEI] traffic classifier DATA operator or
[HUAWEI-traf-crs-DATA] if-match vlan-id 10
[HUAWEI-traf-crs-DATA] quit

[HUAWEI] traffic classifier VIDEO operator or
[HUAWEI-traf-crs-VIDEO] if-match vlan-id 20
[HUAWEI-traf-crs-VIDEO] quit

[HUAWEI] traffic classifier VOICE operator or
[HUAWEI-traf-crs-VOICE] if-match vlan-id 30
[HUAWEI-traf-crs-VOICE] quit

# 3. 定义流行为
[HUAWEI] traffic behavior DATA-QINQ
[HUAWEI-traf-beh-DATA-QINQ] qinq vlan-delivery service-vlan 100
[HUAWEI-traf-beh-DATA-QINQ] quit

[HUAWEI] traffic behavior VIDEO-QINQ
[HUAWEI-traf-beh-VIDEO-QINQ] qinq vlan-delivery service-vlan 200
[HUAWEI-traf-beh-VIDEO-QINQ] quit

[HUAWEI] traffic behavior VOICE-QINQ
[HUAWEI-traf-beh-VOICE-QINQ] qinq vlan-delivery service-vlan 300
[HUAWEI-traf-beh-VOICE-QINQ] quit

# 4. 定义流策略
[HUAWEI] traffic policy FLEX-QINQ
[HUAWEI-trafficpolicy-FLEX-QINQ] classifier DATA behavior DATA-QINQ
[HUAWEI-trafficpolicy-FLEX-QINQ] classifier VIDEO behavior VIDEO-QINQ
[HUAWEI-trafficpolicy-FLEX-QINQ] classifier VOICE behavior VOICE-QINQ
[HUAWEI-trafficpolicy-FLEX-QINQ] quit

# 5. 在接口上应用策略
[HUAWEI] interface GigabitEthernet 0/0/1
[HUAWEI-GigabitEthernet0/0/1] description TO-CUSTOMER
[HUAWEI-GigabitEthernet0/0/1] traffic-policy FLEX-QINQ inbound

4.2 基于 802.1p 优先级的灵活 QinQ

# 1. 定义基于优先级的流分类
[HUAWEI] traffic classifier VOICE-COS operator or
[HUAWEI-traf-crs-VOICE-COS] if-match 8021p 5 6
[HUAWEI-traf-crs-VOICE-COS] quit

[HUAWEI] traffic classifier BEST-EFFORT operator or
[HUAWEI-traf-crs-BEST-EFFORT] if-match 8021p 0 1 2 3
[HUAWEI-traf-crs-BEST-EFFORT] quit

# 2. 定义流行为
[HUAWEI] traffic behavior VOICE-SVLAN
[HUAWEI-traf-beh-VOICE-SVLAN] qinq vlan-delivery service-vlan 300
[HUAWEI-traf-beh-VOICE-SVLAN] quit

[HUAWEI] traffic behavior DATA-SVLAN
[HUAWEI-traf-beh-DATA-SVLAN] qinq vlan-delivery service-vlan 100
[HUAWEI-traf-beh-DATA-SVLAN] quit

# 3. 策略与应用
[HUAWEI] traffic policy COS-QINQ
[HUAWEI-trafficpolicy-COS-QINQ] classifier VOICE-COS behavior VOICE-SVLAN
[HUAWEI-trafficpolicy-COS-QINQ] classifier BEST-EFFORT behavior DATA-SVLAN
[HUAWEI-trafficpolicy-COS-QINQ] quit

[HUAWEI] interface GigabitEthernet 0/0/1
[HUAWEI-GigabitEthernet0/0/1] traffic-policy COS-QINQ inbound

4.3 故障案例:灵活 QinQ 未生效

场景:配置灵活 QinQ 后,抓包发现所有报文都添加了相同的外层标签,未按预期分类。

排查:

# 查看策略匹配统计
[HUAWEI] display traffic policy statistics interface GigabitEthernet 0/0/1 inbound
# 发现只有第一条规则有匹配计数,其他规则计数为 0

根因:流分类规则的匹配顺序问题。第一条规则配置了 if-match vlan-id 10,但实际配置中遗漏了 operator or,导致逻辑异常。同时,客户侧交换机未在端口上打 VLAN 标签,所有报文进入时为未标签帧,不匹配任何 VLAN 规则。

处理:确认客户侧 VLAN 标签正确,修正分类规则配置。

五、总结

项目 说明
灵活 QinQ 本质 基于报文特征(VLAN/优先级)差异化添加外层标签
基于 VLAN 不同 Customer VLAN 映射不同 Service VLAN
基于优先级 不同 802.1p CoS 映射不同 Service VLAN
配置模型 流分类 → 流行为 → 流策略 → 接口应用
与核心 QoS 联动 Service VLAN 在核心网络中直接映射 QoS 队列
典型场景 多租户差异化服务、语音/视频/数据分流

思考

  1. 灵活 QinQ 中,如果一个报文同时匹配多条分类规则,交换机如何处理?规则的匹配顺序是否可以调整?

  2. 基于 802.1p 优先级的灵活 QinQ 与基于 VLAN 的灵活 QinQ 能否在同一接口上同时配置?如果同时配置,匹配优先级如何?

  3. 在运营商网络中,灵活 QinQ 添加的外层标签是否需要对客户保密?如果需要,如何防止客户通过抓包获知 Service VLAN 的分配规则?

下篇预告:第109篇:DHCP Snooping:防私设 DHCP 服务器