一、核心概念:QoS 与 MQC 的本质关系

项目 说明
QoS(服务质量) 网络资源受限时,为语音、视频、关键业务等提供差异化服务保障的技术体系,涵盖:流量分类/标记、监管(CAR)、整形(GTS)、拥塞管理(队列调度)、拥塞避免(WRED)等
MQC( Modular QoS Command-line) 非新技术,而是华为设备实现QoS的标准化配置框架。通过“分类→行为→策略”三模块解耦,实现策略复用、逻辑清晰、维护高效
关系定位 QoS 是目标与能力集合,MQC 是实现QoS策略的结构化工具链。相比传统分散命令(如traffic-limit),MQC支持复杂策略组合与跨设备一致性配置

QoS是目标,MQC是实现这一目标的高级工具。相比于传统的、分散的QoS配置命令,MQC通过将配置逻辑分解为三个部分,使得复杂的流量策略变得清晰、易于管理和维护

二、MQC 三要素详解与配置逻辑

核心模块
  • 流量分类(Traffic Classifier)

    • 作用:定义“什么样的流量”。即通过规则(匹配条件)将流量进行识别和归类。

    • 工具:使用ACL(基本/高级)、VLAN ID、IP优先级、DSCP值、802.1p值、协议类型等作为匹配条件。

    • 命令行标识traffic classifier

    • 逻辑关系:一个分类器下可以包含多个if-match语句,它们之间的默认关系是 “或(or)”​ ,表示满足任意一个条件即被命中。也可通过operator and指定为 “与(and)”

  • 流量行为(Traffic Behavior)

    • 作用:定义“对这类流量做什么”。即规定针对已分类流量的具体处理动作。

    • 动作:包括允许(permit)拒绝(deny)重标记(remark)流量监管(car)流量整形(gts)队列调度(queue)流量统计(statistic)等。

    • 命令行标识traffic behavior

    • 关键:一个行为中可以配置多个QoS动作。

  • 流量策略(Traffic Policy)

    • 作用:扮演“调度中心”的角色,将分类器和行为绑定起来,形成一个完整的QoS策略。

    • 命令行标识traffic policy

    • 工作模式

      • 基于接口的模式:策略应用到物理/逻辑接口的入/出方向。

      • 基于VLAN的模式:策略应用到整个VLAN。

      • 基于全局的模式:策略应用到整个设备。

    • 一个策略中可以包含多个 classifier-> behavior​ 的绑定对,设备会按照配置顺序依次匹配和执行。

 流分类(Traffic Classifier)— “识别谁”

traffic classifier CLASSIFIER_NAME operator {and | or}  # and=全匹配, or=任一匹配(默认)
 if-match acl 3000          # 基于ACL
 if-match vlan-id 10        # VLAN匹配
 if-match 8021p 3           # 802.1p优先级
 if-match dscp af31         # DSCP值
 if-match protocol ip       # 协议类型
  • if-match规则关系由operator决定;ACL内部多条规则为“或”关系
  • 匹配顺序:流策略中按classifier配置顺序匹配,命中即停(first-match)
  • 建议:将精确规则(如特定IP+端口)置于宽泛规则前,避免误匹配

流行为(Traffic Behavior)— “如何处理”

traffic behavior BEHAVIOR_NAME
 car cir 10000 cbs 1880000 pir 15000 pbs 2810000 green pass yellow pass red discard  # 限速+颜色动作
 remark dscp ef          # 重标记DSCP(用于DiffServ)
 queue af bandwidth pct 30  # AF队列带宽分配(部分设备支持)
 wred                        # 启用WRED拥塞避免
 statistic enable            # 启用流量统计(关键排错手段)
 redirect ip-nexthop 10.1.1.1 # 策略路由
  • 单行为可叠加多动作(如限速+统计+重标记)
  • 动作方向限制:队列调度、整形仅支持outbound;重标记建议inbound信任源标记
  • 参数单位:cir/pir 单位为 kbps(10000 = 10Mbps)

流策略(Traffic Policy)— “策略绑定与部署”

traffic policy POLICY_NAME
 classifier CLASSIFIER_A behavior BEHAVIOR_X precedence 5  # precedence可指定优先级
 classifier CLASSIFIER_B behavior BEHAVIOR_Y

# 应用位置(三选一):
interface GigabitEthernet0/0/1
 traffic-policy POLICY_NAME {inbound | outbound}   # 接口级(最常用)

vlan 10
 traffic-policy POLICY_NAME outbound               # VLAN级(交换机支持)

 qos policy global POLICY_NAME outbound            # 全局策略(部分高端设备)

方向选择

方向 适用场景 典型动作
inbound 入口信任标记、流量统计、入向限速 remark, statistic, car
outbound 出口队列调度、整形、出向限速 queue, gts, car, remark

三、eNSP模拟器实践:双网段差异化策略

 场景需求

  • 对 192.168.1.0/24 出向流量:限速10Mbps(CIR),突发15Mbps(PIR),超限丢弃
  • 对 192.168.2.0/24 出向流量:启用统计,便于监控
  • 策略应用在接入交换机上行接口 GigabitEthernet0/0/1 outbound

配置步骤

# Step 1: 定义ACL(精确匹配源网段)
acl number 3000
 rule 5 permit ip source 192.168.1.0 0.0.0.255
acl number 3001
 rule 5 permit ip source 192.168.2.0 0.0.0.255

# Step 2: 创建流分类(operator or,单规则无影响)
traffic classifier c-limit operator or
 if-match acl 3000
traffic classifier c-stats operator or
 if-match acl 3001

# Step 3: 创建流行为(补充CBS/PBS参数,明确颜色动作)
traffic behavior b-limit
 car cir 10000 cbs 1880000 pir 15000 pbs 2810000 green pass yellow pass red discard
traffic behavior b-stats
 statistic enable

# Step 4: 绑定策略(注意顺序:避免192.168.1.0流量被stats统计)
traffic policy policy-access
 classifier c-limit behavior b-limit precedence 10   # 优先匹配限速
 classifier c-stats behavior b-stats precedence 20

# Step 5: 接口应用(出方向)
interface GigabitEthernet0/0/1
 traffic-policy policy-access outbound

 验证与排错

display traffic policy statistics interface GigabitEthernet0/0/1 outbound  # 查看命中计数/丢包
display traffic classifier user-defined c-limit                           # 检查分类规则
display acl 3000                                                          # 验证ACL匹配
reset traffic policy statistics interface GigabitEthernet0/0/1 outbound   # 清零统计(测试前)

排错提示

  • 策略未生效?→ 检查ACL是否匹配实际流量(抓包验证源IP)、策略方向、接口是否为物理UP
  • 限速不准?→ 确认单位(kbps)、是否含帧间隙/前导码(设备计算方式差异)
  • 统计为0?→ 确认statistic enable已配置,且流量确实经过该接口方向

四、MQC vs 简化流策略:选型决策表

特性 MQC(模块化QoS) 简化流策略(如traffic-filter/limit)
灵活性 ⭐⭐⭐⭐⭐ 支持多规则组合、多动作叠加、策略复用 ⭐⭐ 功能单一,绑定ACL直接动作
配置复杂度 中(三步逻辑清晰) 低(单命令)
适用场景 多业务分级保障、DiffServ部署、精细化运维 临时限速、简单过滤、快速应急
维护性 高(修改行为不影响分类) 低(策略与ACL强耦合)
推荐原则 首选:企业网/园区网标准方案 仅用于:低端设备资源受限、极简需求

 五、扩展知识与实践

MQC在DiffServ模型中的角色

  1. 边缘设备(inbound):remark dscp ef 标记语音流量
  2. 核心设备(outbound):基于DSCP值调度至EF队列,保障低延迟
    → 实现端到端QoS,MQC是策略落地的核心载体

高频注意事项

  • 匹配顺序陷阱:流策略中classifier按配置顺序匹配,务必按“精确→宽泛”排列
  • 方向禁忌queue/gts 仅支持outbound;remark在inbound更合理(避免重复标记)
  • 资源消耗:复杂ACL+多策略可能增加CPU负担,高端设备建议启用硬件QoS(HQoS)
  • ENSP提示:部分低端模拟器版本对wred/queue支持有限,实操前查设备文档

进阶学习方向

  • HQoS(层次化QoS):实现用户级+业务级双维度调度
  • NQA联动:根据链路质量动态调整QoS策略
  • SDN集成:通过iMaster NCE集中下发QoS策略

总结

MQC是华为网络QoS策略的标准化实施框架,其“分类-行为-策略”三段式设计极大提升了配置的可读性、复用性与可维护性。掌握MQC不仅是ENSP实验关键,更是企业网流量工程的核心能力。建议:

  1. 从简单限速/统计入手,熟练三要素逻辑
  2. 结合DiffServ模型理解端到端QoS设计
  3. 善用display/reset命令验证策略效果
  4. 生产环境遵循“测试→验证→部署”流程
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐