外观
网线堵塞时,为什么微信语音依然清晰、而普通下载自动降速?
在日常网络使用中,带宽并不是无限的。当一条千兆网线的瞬时流量达到 990Mbps 时,网络就会陷入“严重拥塞”:
- 如果没有做任何特殊策略,所有的视频、语音、大文件下载、邮件收发就会在交换机接口缓冲区里按照先来后到的顺序混乱拥挤;
- 此时,对延迟极其敏感的在线会议和电话会议就会出现严重的杂音、吞字、画面定格;而几十兆的大文件下载却依然在拼命霸占着信道。
如何让网络像拥挤的城市交通一样,为“救护车和消防车(语音与控制流量)”开辟应急绿波通道,让“普通私家车和大货车(网页与文件下载)”主动避让排队?
这就是网络工程中的核心调度技术——服务质量(QoS)(Quality of Service,服务质量) 的核心使命!
学完本课后,你将能够:
- 辨析 QoS 的三大服务模型(Best-Effort 尽力而为、IntServ 综合服务、DiffServ 区分服务)。
- 识记 二层 802.1Q CoS 与三层 IPv4 首部 6 位 DSCP 字段(包含 EF 极速、AF 确保、BE 尽力)的映射规则。
- 推演 四大经典队列调度算法(FIFO、PQ 优先队列、WRR、WFQ 加权公平队列)的工作机制与“低优饿死”现象。
- 解释 流量监管(Policing/CAR)与流量整形(Shaping/GTS)在缓冲平滑上的差异,以及 WRED 如何预防“TCP 全局同步”。
1. QoS 三大服务模型:为什么 DiffServ 成为工业事实标准?
计算机网络历史上先后提出了三种解决拥塞的模型:
- Best-Effort(尽力而为模型):
- 默认模式。网络不区分任何业务,对所有数据包一视同仁。拥塞时直接丢包,没有任何服务质量保证。
- IntServ(综合服务模型 / RSVP 协议):
- “预定专车模式”。在通信开始前,端到端沿途的每一台路由器必须通过 RSVP 协议为该会话预留固定的带宽和资源。
- 致命缺陷:全网沿途成百上千台路由器必须维护海量的“每流状态(Per-flow State)”,扩展性极差,骨干网根本吃不消。
- ★ DiffServ(区分服务模型,工业界绝对统治者!):
- “机票分舱模式”。把所有流量根据等级打上标签(头等舱、商务舱、经济舱)。
- 神来之笔:网络边缘的接入交换机负责“安检与贴标签(分类与标记)”;网络内部的核心骨干路由器只需低头看一眼标签,按照对应的队列策略直接转发,无需维护任何单条会话状态,扩展性无限大!
2. 贴标签技术:从 CoS 到 6 位 DSCP
数据包进站后,网络设备如何识别它的贵贱等级?
1. 二层标签:802.1Q VLAN 头部的 PRI(CoS)字段
在第 12 课中我们学到,802.1Q Tag 内部有 3 个比特的 Priority(优先级,称为 CoS):
- 取值范围为
0 ~ 7(共 8 个等级)。例如 7 用于网络控制协议,5 用于语音,0 为普通数据。
2. 三层标签:IPv4 首部中的 DSCP 字段
在第 16 课中,IPv4 首部的第 1 个字节除了版本号与头长之外,紧接着就是 ToS(Type of Service,服务类型)。在现代 DiffServ 架构中,该字节被重新划分为:
- 前 6 位:DSCP(差分服务代码点),取值范围
(理论上支持 种不同的业务等级!); - 后 2 位:ECN(显式拥塞通知)。
华为 ICT 大赛必背三大标准逐跳行为(PHB):
- EF(Expedited Forwarding,加速转发):
- 对应
DSCP 46(二进制101110)。 - 享受最高礼遇! 保证极低的时延、极低的抖动与极低的丢包率,专为 VoIP 实时语音通话保留。
- 对应
- AF(Assured Forwarding,确保转发):
- 分为 4 个等级类(AF1 ~ AF4),每个等级内部定义了 3 种丢弃优先级(如 AF41、AF42、AF43)。适合企业关键业务 ERP、数据库同步。
- BE(Best-Effort,尽力而为):
- 对应
DSCP 0。对应普通浏览网页、BT 下载,拥塞时最先被牺牲。
- 对应
3. 拥塞管理:四大队列调度算法
当出接口发生拥塞,数据包开始在**硬件缓冲区(Buffer)**中排队,调度算法决定了谁先出站:
text
+-> [ 高优先级队列 (Voice) ] ---+
入站数据包 --->|-> [ 中优先级队列 (ERP) ] ----|--> 调度器出接口发送
(分类进队) +-> [ 低优先级队列 (BT/Web) ] ---+1. FIFO(First In First Out,先进先出)
- 最原始的队列,不做任何区分,谁先到谁先发。无法保障任何高优业务。
2. ★ PQ(Priority Queuing,优先队列)
- 严格划分为 High、Medium、Normal、Low 四个队列。
- 调度铁律:只要 High 队列中还有哪怕 1 个数据包,调度器就绝对不看其他队列一眼!
- 优点:能够给顶级关键业务(语音)提供绝对的低时延保障。
- 致命缺点(高频考点!):“低优先级队列饿死(Starvation)”!如果 High 队列由于突发流量被打满,Medium 和 Low 队列的数据包将永远得不到发送,发生长时间丢包。
3. WRR(Weighted Round Robin,加权轮询)
- 为各个队列赋予权重比例(如 50%、30%、20%)。
- 轮流从各个队列中取包发,既照顾了高优队列的大带宽,又杜绝了低优队列饿死的问题。
4. ★ WFQ(Weighted Fair Queuing,加权公平队列)
- 自动分类:无需手工配置,它自动根据报文的 五元组(5-Tuple) 将不同的通信流分散到不同的微型队列中;
- 智能加权:优先级越高的流分配到的虚拟信道带宽越大,保证小流量交互包(如 Telnet 按键)不被大文件下载压垮。
4. 流量监管、整形与 WRED 防全局同步
1. 监管(Policing / CAR)vs 整形(Shaping / GTS)
- 流量监管(CAR):硬性限速!超出预设速率的报文直接就地丢弃。适合部署在网络入口防攻击。
- 流量整形(GTS):软性削峰填谷!超出速率的报文暂存在内存缓冲区里排队,平滑匀速泵出。适合部署在企业连接运营商出租线路的出接口上。
2. 传统尾部丢弃(Tail Drop)的灾难:TCP 全局同步
当队列被彻底塞满后,传统的处理方式是把后来所有的包全部粗暴扔掉(尾部丢弃)。
- 后果:同一时刻穿过该接口的成千上万条 TCP 连接同时检测到丢包,导致所有 TCP 连接在同一秒集体踩刹车进入慢启动,随后又在同一秒集体恢复增速,造成链路利用率剧烈震荡(“全网抽搐”),这被称为 TCP 全局同步。
解药:WRED(加权随机早期检测)
- 在队列还没彻底被填满之前(如达到 70% 警戒线),算法开始按照一定的随机概率提前微量丢弃几个 TCP 数据包。
- 这会使各个 TCP 连接在不同的时间点错峰调速,平稳熨平了流量高峰,彻底治愈了全局同步危机!
5. 课后核心测验
6. 阶段小结与下一阶段预告
热烈祝贺你!阶段 6 · 交换与路由协议专题的 7 门硬核大课已全部圆满结课!
从 RSTP 快速收敛与 LACP 链路聚合,到软硬件分离的控制/数据平面架构,深入 OSPF 链路状态与 4 类 LSA 泛洪,横向对比运营商 IS-IS 的 DIS 抢占机制,领略 BGP 13 条黄金选路法则的王者霸气,再到 VRRP+BFD 毫秒热备与 QoS 流量交警——你已经具备了应对大型骨干企业网与运营商网络的核心实战知识体系!
然而,在当今移动互联网与万物互联的时代,网线正在逐步消失。 在华为 ICT 大赛中,企业 WLAN 无线局域网(Wi-Fi 6、射频、CAPWAP 隧道与漫游)占到了初赛复赛 25% 以上的超大比重!
下一阶段,让我们正式迈入无线的广阔天空:阶段 7 · WLAN 企业无线网络专题(第 39 课 ~ 第 43 课)!