第八章:网络系统建设与运维(高级)—— 服务质量

目录

[一、QoS 基础](#一、QoS 基础)

核心定义

核心度量指标

[常见业务的 QoS 需求](#常见业务的 QoS 需求)

[QoS 模型对比](#QoS 模型对比)

[DiffServ 模型核心组件](#DiffServ 模型核心组件)

二、分类与标记

核心概念

标记依据

[DSCP 关键分类](#DSCP 关键分类)

[核心配置框架:MQC(模块化 QoS 命令行)](#核心配置框架:MQC(模块化 QoS 命令行))

[MQC 配置步骤(华为设备)](#MQC 配置步骤(华为设备))

[配置案例:标记 VoIP 流量为 802.1p=5](#配置案例:标记 VoIP 流量为 802.1p=5)

三、拥塞管理

核心定义

主流队列调度算法

[CBQ 队列类型](#CBQ 队列类型)

核心配置方法

[1. 基于队列模板的配置(简单场景)](#1. 基于队列模板的配置(简单场景))

[2. 基于 MQC 的 CBQ 配置(复杂场景)](#2. 基于 MQC 的 CBQ 配置(复杂场景))

四、拥塞避免

核心目标

两种丢弃策略

[WRED 核心参数](#WRED 核心参数)

[核心配置(基于 MQC)](#核心配置(基于 MQC))

五、流量监管与流量整形

核心区别

核心原理:令牌桶算法

[1. 单速率令牌桶(常用)](#1. 单速率令牌桶(常用))

[2. 双速率令牌桶(高精度场景)](#2. 双速率令牌桶(高精度场景))

核心配置

[1. 流量监管配置(MQC)](#1. 流量监管配置(MQC))

[2. 流量整形配置(MQC)](#2. 流量整形配置(MQC))

六、补充知识点

[1. QoS 部署核心原则](#1. QoS 部署核心原则)

[2. 常见业务 QoS 配置建议](#2. 常见业务 QoS 配置建议)

[3. QoS 排障核心思路](#3. QoS 排障核心思路)

[4. 与其他技术的联动](#4. 与其他技术的联动)


一、QoS 基础

核心定义

QoS(Quality of Service)是为不同业务类型提供差分服务的技术,通过分类流量、管理拥塞、控制带宽等手段,优化网络性能,满足不同业务的带宽、时延、抖动、丢包率需求。

核心度量指标

指标 定义 关键影响
带宽 链路数据传输能力(单位:bps) 端到端带宽由路径最小带宽决定(木桶原理)
时延 报文从发送端到接收端的总延迟(传输 + 处理 + 队列 + 串行化时延) 实时业务(VoIP、视频)对时延敏感
抖动 最大时延与最小时延的差值 导致实时业务卡顿、音视频不同步
丢包率 丢失报文占总报文的百分比 少量丢包对数据业务影响小,对实时业务影响大

常见业务的 QoS 需求

业务类型 带宽需求 时延敏感度 抖动敏感度 丢包率敏感度
电子邮件、FTP 低 低 低 低
网页浏览(HTML) 不定 中 中 低
电子商务 中 高 高 高
VoIP、实时视频 低 极高 极高 高
流媒体 高 极高 极高 高

QoS 模型对比

模型 核心思想 优点 缺点 适用场景
Best-Effort(尽力而为) 无差别对待所有报文 实现简单、开销低 无法保障实时业务 普通数据业务(FTP、Email)
IntServ(综合服务) 提前预留资源(RSVP 信令) 端到端 QoS 保障 需跟踪每个流状态,扩展性差 对 QoS 要求极高的专用网络
DiffServ(差分服务) 分类流量 + 域内差分处理 无需跟踪单流,扩展性强 需端到端手工部署 企业网、运营商网络(主流选择)

DiffServ 模型核心组件

  1. 分类与标记:识别流量并标记优先级。
  2. 流量监管与整形:限制流量速率,避免带宽滥用。
  3. 拥塞管理:通过队列调度分配带宽。
  4. 拥塞避免:主动丢弃报文,防止拥塞加剧。

二、分类与标记

核心概念

  • 分类:按业务特征划分流量(简单分类:基于优先级;复杂分类:基于五元组、VLAN 等)。
  • 标记:修改报文优先级字段,为后续 QoS 处理提供依据(不改变报文内容)。

标记依据

标记字段 位置 取值范围 核心用途
IP Precedence(IP 优先级) IP 头 ToS 域前 3 位 0-7(8 个等级) 早期简单优先级标记
DSCP(差分服务代码点) IP 头 DS 域前 6 位 0-63(64 个等级) 主流标记方式,兼容 IP 优先级
802.1p(CoS) VLAN 帧头 PRI 字段 0-7(8 个等级) 二层网络优先级标记
DSCP 关键分类
  • BE(尽力而为):DSCP=000000(默认)。
  • EF(加速转发):DSCP=101110(低时延、低丢包,适用于 VoIP)。
  • AF(保证转发):分 4 类(AF1-AF4),每类 3 个丢弃优先级(如 AF11=001010,低丢弃)。
  • CS(类选择器):兼容 IP 优先级(CS1=001000,对应 IP 优先级 1)。

核心配置框架:MQC(模块化 QoS 命令行)

MQC 是 QoS 配置的统一框架,包含 3 个核心要素:

  1. 流分类(Traffic Classifier):定义流量匹配规则(如基于 ACL、VLAN、优先级)。
  2. 流行为(Traffic Behavior):定义对匹配流量的动作(如标记、限速、队列调度)。
  3. 流策略(Traffic Policy):绑定流分类与流行为,应用到接口。
MQC 配置步骤(华为设备)

bash

运行

复制代码
# 1. 配置流分类
traffic classifier 分类名 [ operator { and | or } ]
 if-match 匹配规则  # 如if-match acl 3000、if-match dscp ef、if-match vlan-id 10

# 2. 配置流行为
traffic behavior 行为名
 remark 8021p 5  # 标记802.1p优先级
# 或remark dscp ef  # 标记DSCP
# 或queue af bandwidth 100  # 绑定队列(后续拥塞管理用)

# 3. 配置流策略
traffic policy 策略名
 classifier 分类名 behavior 行为名  # 绑定分类与行为

# 4. 应用流策略到接口
interface 接口名
 traffic-policy 策略名 { inbound | outbound }  # 入/出方向应用
配置案例:标记 VoIP 流量为 802.1p=5

bash

运行

复制代码
# 分类:基于UDP端口(VoIP常用端口5060、10000-20000)
acl number 3000
 rule 1 permit udp destination-port eq 5060
 rule 2 permit udp destination-port range 10000 20000

traffic classifier voip operator or
 if-match acl 3000

# 行为:标记802.1p=5
traffic behavior voip-mark
 remark 8021p 5

# 策略绑定+接口应用
traffic policy qos-voip
 classifier voip behavior voip-mark

interface GigabitEthernet0/0/1
 traffic-policy qos-voip inbound

三、拥塞管理

核心定义

拥塞管理是当网络带宽不足时,通过队列调度算法分配带宽,优先保障高优先级业务转发。

主流队列调度算法

算法 核心逻辑 优点 缺点 适用场景
FIFO(先进先出) 按报文到达顺序转发 实现简单、开销低 无差别对待,实时业务无保障 无 QoS 需求的简单网络
PQ(优先级队列) 高优先级队列耗尽后,才调度低优先级 保障低时延业务 低优先级队列 "饿死" 少量高优先级业务(如 VoIP)
WFQ(加权公平队列) 按流优先级分配带宽,公平调度 兼顾公平与优先级 不支持自定义类 需公平分配带宽的场景
PQ+WFQ 高优先级队列 PQ 调度,低优先级 WFQ 调度 兼顾实时业务与公平性 配置复杂 混合业务(实时 + 数据)
CBQ(基于类的加权公平) 自定义类,支持 EF/AF/BE 队列 灵活适配多业务 开销略高 企业网、多业务场景(主流选择)
CBQ 队列类型
  • EF 队列:低时延、高优先级,限速转发(避免占用全部带宽)。
  • AF 队列:保证最小带宽,空闲带宽按权重共享。
  • BE 队列:尽力转发,适配普通数据业务。

核心配置方法

1. 基于队列模板的配置(简单场景)

bash

运行

复制代码
# 创建队列模板
qos queue-profile 模板名
 schedule pq 7  # Queue7(高优先级)PQ调度
 schedule wfq 0-6  # Queue0-6 WFQ调度
 queue 7 length packets 20  # 配置队列长度
 queue 7 weight 30  # 配置WFQ权重

# 接口应用
interface GigabitEthernet0/0/1
 qos queue-profile 模板名
2. 基于 MQC 的 CBQ 配置(复杂场景)

bash

运行

复制代码
# 分类:VoIP(EF)、视频(AF41)、数据(BE)
traffic classifier voip if-match dscp ef
traffic classifier video if-match dscp af41
traffic classifier data if-match dscp be

# 行为:绑定CBQ队列
traffic behavior voip-behavior
 queue ef bandwidth 100  # 保障100kbit/s带宽,限速转发
traffic behavior video-behavior
 queue af bandwidth 200  # 保障200kbit/s带宽
traffic behavior data-behavior
 queue wfq  # BE队列WFQ调度

# 策略绑定+接口应用
traffic policy cbq-policy
 classifier voip behavior voip-behavior
 classifier video behavior video-behavior
 classifier data behavior data-behavior

interface GigabitEthernet0/0/1
 traffic-policy cbq-policy outbound

四、拥塞避免

核心目标

通过主动丢弃报文,防止队列溢出导致的严重拥塞,避免 TCP 全局同步(多个 TCP 连接同时降速 / 提速)。

两种丢弃策略

策略 逻辑 优点 缺点
尾丢弃(Tail Drop) 队列满后,丢弃所有新报文 实现简单 引发 TCP 全局同步,带宽利用率低
WRED(加权早期随机检测) 队列长度超 "低门限" 时随机丢弃,超 "高门限" 时尾丢弃 避免 TCP 同步,提高带宽利用率 配置参数多,需适配业务
WRED 核心参数
  • 低门限:开始随机丢弃的队列长度阈值。
  • 高门限:触发尾丢弃的队列长度阈值。
  • 丢弃概率:队列长度在低 - 高门限之间时,报文被丢弃的概率(0-100%)。

核心配置(基于 MQC)

bash

运行

复制代码
# 1. 创建丢弃模板
drop-profile wred-profile
 wred dscp  # 基于DSCP优先级丢弃
 dscp ef low-limit 30 high-limit 60 discard-percentage 5  # EF队列晚丢弃
 dscp be low-limit 10 high-limit 40 discard-percentage 20  # BE队列早丢弃

# 2. 流行为绑定丢弃模板
traffic behavior af-behavior
 queue af bandwidth 200
 drop-profile wred-profile  # 绑定WRED模板

# 3. 策略应用(同拥塞管理配置)
traffic policy wred-policy
 classifier video behavior af-behavior

interface GigabitEthernet0/0/1
 traffic-policy wred-policy outbound

五、流量监管与流量整形

核心区别

技术 核心逻辑 处理方式 适用场景
流量监管(Policing) 限制流量速率,超标流量直接丢弃 / 降优先级 硬限制,无缓存 入口流量控制、边缘网络限速
流量整形(Shaping) 限制流量速率,超标流量缓存后均匀发送 软限制,有缓存 出口流量平滑、适配下游低速链路

核心原理:令牌桶算法

1. 单速率令牌桶(常用)
  • 核心参数:CIR(承诺信息速率)、CBS(承诺突发尺寸)、EBS(超额突发尺寸)。
  • 评估结果:绿色(未超 CIR)、黄色(超 CIR 但未超 EBS)、红色(超 EBS)。
  • 处理:绿色转发、黄色转发 / 降优先级、红色丢弃。
2. 双速率令牌桶(高精度场景)
  • 核心参数:CIR(承诺速率)、CBS(承诺突发)、PIR(峰值速率)、PBS(峰值突发)。
  • 评估结果:绿色(未超 CIR)、黄色(超 CIR 但未超 PIR)、红色(超 PIR)。

核心配置

1. 流量监管配置(MQC)

bash

运行

复制代码
traffic classifier vlan10 if-match vlan-id 10
traffic behavior police-vlan10
 car cir 1000 pir 2000 cbs 125000 pbs 250000  # 单速率双桶:CIR=1M,PIR=2M
 green pass yellow pass red discard  # 绿色/黄色转发,红色丢弃

traffic policy police-policy
 classifier vlan10 behavior police-vlan10

interface GigabitEthernet0/0/1
 traffic-policy police-policy inbound
2. 流量整形配置(MQC)

bash

运行

复制代码
traffic classifier vlan20 if-match vlan-id 20
traffic behavior shape-vlan20
 gts cir 500 cbs 62500 queue-length 30  # 整形速率500kbit/s,缓存30个报文

traffic policy shape-policy
 classifier vlan20 behavior shape-vlan20

interface GigabitEthernet0/0/2
 traffic-policy shape-policy outbound  # 出口整形,适配下游低速链路

六、补充知识点

1. QoS 部署核心原则

  • 边缘分类标记,核心调度转发:在网络边缘(接入层 / 汇聚层)完成流量分类和标记,核心层仅基于标记调度,减少开销。
  • 按需保障,不浪费带宽:仅对关键业务(VoIP、视频)配置严格 QoS,普通数据业务采用尽力而为。
  • 端到端一致性:所有网络设备(交换机、路由器)的 QoS 配置需一致,避免标记丢失或调度冲突。

2. 常见业务 QoS 配置建议

业务类型 标记建议 队列类型 带宽占比 关键参数
VoIP DSCP=EF(46)、802.1p=5 EF 队列 10-15% 时延 < 150ms,抖动 < 30ms
视频会议 DSCP=AF41(34)、802.1p=4 AF 队列 20-30% 时延 < 300ms,丢包率 < 1%
办公数据(OA、邮件) DSCP=AF21(18)、802.1p=2 AF 队列 20-30% 无严格时延要求
普通上网(网页、下载) DSCP=BE(0)、802.1p=0 BE 队列 剩余带宽 尽力转发

3. QoS 排障核心思路

  • 检查分类标记:通过display traffic-policy statistics确认流量是否正确匹配分类。
  • 检查队列状态:通过display qos queue statistics查看队列长度、丢弃计数。
  • 检查令牌桶参数:CIR/CBS 配置是否适配链路带宽(CBS 建议≥最大报文长度 ×10)。
  • 排除链路故障:QoS 无法解决物理链路中断、带宽瓶颈过大的问题,先保障链路连通性。

4. 与其他技术的联动

  • 与 VLAN 联动:基于 VLAN ID 分类,实现不同业务 VLAN 的差分服务。
  • 与路由协议联动:OSPF、BGP 可基于 DSCP 标记路由优先级,优先转发高优先级业务流量。
  • 与可靠性技术联动:BFD/NQA 检测链路故障后,QoS 策略自动切换至备份链路,保障关键业务连续性。
相关推荐
judezh7 小时前
api 容器一直 unhealthy?我把一个 Agent 运行时的健康检查逐条拆了,查出四个问题
运维·docker
百万蹄蹄向前冲8 小时前
双端同步!云服务器装最新Node.js v26.10全过程追踪
服务器·人工智能·node.js
春天花会开1318 小时前
内网 HTTPS 部署实战:私有 CA + Nginx 反向代理全流程复盘
运维·nginx·https
AllFiles8 小时前
K8s Node Exporter 异常 Write 超时排查实录
运维·后端·kubernetes
一隅论数智6 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
虎头金猫6 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
AI职业加油站6 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
深圳老胡6 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
wuyk5556 天前
《WiFi 嵌入式物联网开发全套实战》| 第 16 章 ESP32 AP+STA 双模共存原理与工程坑点
网络·stm32·物联网
Because_of_Her16 天前
并查集-听课笔记
笔记·算法·并查集