标记是 QoS 的起点
所有 QoS 动作都建立在一个前提上:报文里带了优先级标记。三层用 DSCP,占 IP 头部服务类型字段的 6 位,共 64 个取值;进入 MPLS 网络后优先级由标签中的 TC 位(历史上称为 EXP)承载,占 3 位,因此跨域时存在映射与降精度的问题。标记本身不产生带宽,它只是给后续设备一个排队依据。设计上先要确定信任边界:边界之内的设备相信已有标记,边界之外进来的报文一律重新标记,否则终端可以自己伪造高优先级。
基本信息
| DSCP | IP 头服务类型字段前 6 位,共 64 个取值 |
|---|---|
| 常用类别 | EF 用于语音,AF 按丢包与延迟分级保障,CS 按传统类别沿用 |
| MPLS 承载 | 标签中的 TC 位,3 位,8 个取值 |
| 信任边界 | 在此完成分类与重标记,边界外报文一律重新标记 |
| 方向 | 标记通常在入口做,排队与丢弃通常在出口做 |
典型使用场景
- 呼叫中心:语音标记为 EF,保证低时延队列优先
- 视频会议与办公流量共线:用 AF 分级区分保障程度
- 跨 MPLS 传输:设计 DSCP 与 TC 的映射与还原策略
- 备份流量管控:把备份标记为低优先级,避免挤占业务
- 出口限速前的分类:先分类再决定哪些流量被优先保留
配置示例
配置示例
# Cisco:识别语音并重新标记
class-map match-any VOICE
match dscp ef
!
policy-map MARK
class VOICE
set dscp ef # 统一标记,防止终端伪造
!
interface GigabitEthernet0/0
service-policy input MARK # 入口方向做标记
!
show policy-map interface GigabitEthernet0/0标记与用途对照
| 标记 | 用途 | 注意事项 |
|---|---|---|
| EF | 语音等对时延极敏感的业务 | 队列配比要防止过度占用影响其它业务 |
| AF 系列 | 分级保障的各类业务 | 同一类的丢包优先级需一致 |
| CS 系列 | 沿用传统优先级模型 | 跨域前先确认对端识别方式 |
| TC 位 | MPLS 网络内承载优先级 | 出隧道时需明确是否还原 DSCP |
标记只在设备认可的信任边界内有效。边界之外的入口如果不做重标记,终端可以把任意流量标成 EF,QoS 保障形同虚设。
DSCP 与 TC 的映射关系如果两端设计不一致,跨域后优先级可能整体错位,表现为某些业务在骨干上完全得不到保障。