tech/network · 集群 A · 网络基础原理 · 5/6

QoS 队列与限速机制:流量整形、优先级与丢包的网络层解释

发布时间 待核实核实日期 待核实最近更新 待核实测试状态 Not Tested
Answer First · 核心结论

QoS 是网络设备在拥塞时决定先处理谁、限制谁、丢弃谁的一套机制,包括流量分类、排队调度、整形限速和主动丢弃。链路空闲时它几乎不起作用,接近满载时才明显影响体验。如果你观察到特定时段、特定类型流量变慢,可以考虑 QoS 与拥塞的影响,而不只怀疑节点本身。

QoS 要解决什么问题

QoS(Quality of Service,服务质量)要解决的核心问题是:当带宽不够所有人用时,先满足谁。任何链路的带宽都是有限的,当瞬时流量超过链路容量,网络设备只有三种选择——让数据排队、限制部分流量、或者直接丢掉一部分。QoS 就是一套规定“怎么排、限谁、丢谁”的策略。

需要先建立一个基本认识:QoS 是通用的网络管理机制,并不专门针对某类流量。运营商用它保障骨干网的整体可用性,企业用它保证视频会议优先于文件下载,家用路由器用它防止一台设备下载时其他人卡顿。本文只做原理层面的解释,不涉及任何具体网络的策略细节,也不讨论规避策略的方法。

QoS 的四个基本动作

QoS 的处理流程通常可以拆成四个动作:分类、标记、排队调度、整形或丢弃。

[进入的流量]
     │
     ▼
① 分类:按端口、协议、地址、特征把流量分组
     │
     ▼
② 标记:给不同组打上优先级标签
     │
     ▼
③ 排队调度:不同优先级进入不同队列,按规则出队
     │
     ▼
④ 整形 / 监管 / 丢弃:超出速率的部分缓存或丢弃
     │
     ▼
[发出的流量]
动作 作用 对用户的影响
分类 判断这是什么类型的流量 决定后续被如何对待
标记 记录优先级 高优先级在拥塞时先走
排队调度 决定队列出队顺序 低优先级等待时间更长
整形 / 监管 控制速率上限 延迟增加或丢包增加

排队:延迟和抖动的主要来源

排队是 QoS 中最影响体验的环节。当发送速度超过链路能力,多出来的包会在设备缓冲区里排队,排队时间就是额外的延迟;排队长度不断变化,延迟就跟着波动,形成抖动。

常见的排队调度方式:

  • 先进先出(FIFO):最简单,谁先来谁先走,不区分优先级。
  • 优先级队列:高优先级队列只要有包就先发,低优先级可能长时间等待。
  • 加权公平队列:按权重轮流发送,各类流量都有机会,但比例不同。

缓冲区太小,突发流量会立刻丢包;缓冲区太大,包会排很久的队,延迟飙升,这种现象常被称为“缓冲区膨胀”。家用路由器在上行带宽跑满时出现的“打游戏延迟突然很高”,往往就与此有关。

整形与监管:两种限速方式

限制速率有两种主要方式:整形(Shaping)和监管(Policing)。二者都常用“令牌桶”模型来理解。

令牌桶的思路是:系统按固定速度往一个桶里放令牌,每发送一定量的数据就要消耗相应的令牌;桶里有令牌就能发,没有就要等或被丢。桶的容量决定了允许多大的突发。

     令牌按固定速率加入
            │
            ▼
       ┌─────────┐
       │ ● ● ● ● │  ← 令牌桶(容量 = 允许的突发量)
       └────┬────┘
            │ 有令牌才放行
            ▼
[数据包] ──▶ 发送

整形:没令牌 → 放入缓存等待 → 延迟增加,丢包较少
监管:没令牌 → 直接丢弃     → 延迟不变,丢包较多
方式 超额流量的处理 延迟 丢包 对 TCP 的影响
整形 缓存后平滑发出 增加 较少 平稳降速
监管 直接丢弃 不变 较多 频繁重传,吞吐波动

对用户来说,被整形的链路表现为“延迟慢慢变高但还算稳定”,被监管的链路表现为“速度忽高忽低、时有卡顿”。

TCP 与 UDP 面对 QoS 的不同反应

TCP 和 UDP 在拥塞与限速下的行为差异很大,这决定了它们在 QoS 环境中的不同命运。

TCP 有拥塞控制:一旦检测到丢包,就主动降低发送速率,等网络恢复再逐步提速。这让 TCP 在拥塞时表现为“变慢”,但连接通常能维持。

UDP 没有拥塞控制:丢包不会让它降速,应用会继续按原速率发送。如果大量 UDP 流量不受控制,可能挤占其他流量的带宽,因此部分网络会对 UDP 采取更严格的限制。这是 UDP 应用在拥塞时更容易卡顿甚至中断的一个原因,详细对比见 TCP 与 UDP 在代理场景中的差异。

用户能观察到的 QoS 迹象

QoS 本身不可见,但它会留下一些可观察的迹象。下面这些现象可能与 QoS 或拥塞有关,但都不是确定性证据:

  1. 时段规律:每天固定时段(尤其是晚高峰)变慢,其他时间正常。
  2. 类型差异:网页浏览尚可,但视频或语音明显变差。
  3. 速率平台:测速曲线在某个数值附近被“削平”,像被设了上限。
  4. 延迟随负载上升:空闲时延迟正常,一开始下载延迟就明显升高(可能是本地上行缓冲区膨胀)。
  5. 多节点同时变化:同一地区的多个节点同时变慢,指向公共路径而非单个节点。

判断时要注意区分“本地 QoS”和“远端 QoS”:先关掉家中其他设备的大流量任务,看问题是否缓解,再考虑运营商与跨境链路。线路层面的拥塞与成本分析可参考 线路与专线 专题。

用户层面可以做什么

QoS 发生在别人的网络设备上,用户能控制的部分有限,但仍有一些合理的应对方式:

  • 优化本地网络:在家用路由器上合理设置 QoS,为实时应用预留上行带宽,可参考 路由器方案 专题;
  • 错峰使用:大文件下载、系统更新尽量安排在非高峰时段;
  • 分散测试:在不同时段、不同节点做对比,积累判断依据;
  • 结合路由分析:用路由追踪工具观察拥塞发生在哪一跳,方法见 路由与丢包。

这些方法的目的都是“定位与取舍”,而不是“规避”。本站不提供规避网络管理策略的技术手段,使用网络服务请遵守所在地法律法规与平台条款。

小结

QoS 让“网络为什么会选择性变慢”有了一个原理层面的解释:拥塞时,设备会排队、限速、丢包,不同类型流量受到的影响不同。理解这一点,就不会把所有变慢都归咎于节点,也能更理性地看待服务商对稳定性的描述。

如需对照不同品牌资料中的线路类型与协议说明,可以访问 机场品牌库 或 对比工具。所有字段均来自品牌资料,本站未实测,具体表现请以实际测试为准。

常见问题

QoS 是专门针对代理流量的吗?

不是。QoS 是通用的网络管理机制,运营商、企业网络和家用路由器都在使用,目的是在带宽有限时分配资源。它可能影响任何类型的流量。

整形和限速有什么区别?

整形是把超出速率的流量先缓存起来再平滑发出,会增加延迟但减少丢包;限速(监管)是直接丢弃超出的部分,延迟不增加但丢包更多。

为什么 UDP 在拥塞时更容易受影响?

UDP 没有拥塞控制,不会因为丢包主动降速。网络设备为了保护整体链路,可能对 UDP 采取更严格的限速或在拥塞时优先丢弃。

家用路由器的 QoS 要不要开?

如果家中多人同时使用、上行带宽有限,合理配置路由器 QoS 可能改善实时应用的体验;如果只有少量设备,开启后反而可能增加处理开销。建议根据实际情况对比测试。

信息来源与更新时间

信息来源
品牌清单资料(品牌公开信息整理)
测试范围
本站未进行测速与解锁实测,所有能力描述均为资料声明或未测试状态。
发布时间
待核实
核实日期
待核实
最近更新
待核实

字段含义与数据状态见 字段说明;核查进度见 品牌动态与核查日志。