<!-- title: 急诊室法则：空口调度与准入 -->

# 急诊室法则：空口调度与准入原理

## 一、从一间急诊室说起

想象一家只有一张手术台的医院。病人源源不断地涌进来：有人是救护车送来的心梗患者，有人只是扭伤了脚踝，还有人办了VIP预约、提前锁定了今天的手术间。

门口的分诊台必须不停地做决定：**下一台手术给谁？**给病情最危急的？给等得最久的？还是给出钱最多的？这个分诊台每分钟都要重新排一次队，而它的每一次决定，直接决定了这家医院是「高效运转」还是「有人死于排队」。

蜂窝网络的基站，就是这家医院。空气中的无线资源就是那张唯一的手术台，而门口的分诊台，就是**空口调度器（Scheduler）**。你手机上每一次刷屏、每一通VoLTE电话、每一条微信，都要在分诊台前排队，等它点名。

上一轮我们讲过5QI——它是网络对业务许下的「服务承诺书」。但承诺书只是纸面文章，**真正把承诺变成现实的，是调度器在每一个毫秒里做的资源分配决策**。这一篇我们就拆开这个分诊台：它怎么排队、怎么算账、床位不够时怎么办、急救车来了谁该让路。

## 二、为什么空气里必须有交警

先回答一个更根本的问题：为什么需要调度？有线网络为什么不谈这个？

因为**空气是无法分割的共享介质**。一根光纤可以给每个用户拉一条专线，但基站的发射功率和频谱是全体用户共享的。基站能做的，是把时间轴和频率轴切成无数个小格子，然后把这些格子动态地「出租」给不同的用户：

- **频率维**：切成一个个资源块（PRB），每个PRB由12个子载波组成。一个100兆赫兹的5G载波，大约有273个PRB；
- **时间维**：切成一帧帧的小时间片。LTE时代每个时间片固定1毫秒；到了5G NR，随子载波间隔不同，一个slot从1毫秒到0.125毫秒不等，切得更碎、反应更快。

这个「时间×频率」的二维网格，就是基站手里全部的可分配家底。**每一个slot，调度器都要决定：这几百个PRB格子，这一毫秒租给谁、各租几格。**

$$R \approx \frac{N_{\text{PRB}} \times b_{\text{MCS}}}{T_{\text{slot}}}$$

一个用户能拿到多快的速率，约等于「分到的格子数 × 每个格子装多少比特 ÷ 时间片长度」。前一项是调度器决定的，后一项由信道质量决定——**你的网速，本质上是你从分诊台那里「租」到了多少格子**。

## 三、调度器的一毫秒：一次决策的完整循环

调度器不是排一次队就完事，它像一个永不打盹的分诊护士，每个slot重复同一套流程：

```mermaid
flowchart TD
    A["slot开始 调度器醒来"] --> B["收集三路输入"]
    B --> C["信道质量报告"]
    B --> D["缓存状态报告"]
    B --> E["QoS需求与历史吞吐"]
    C --> F["计算优先级分数"]
    D --> F
    E --> F
    F --> G["排序 分配PRB与MCS"]
    G --> H["下发调度命令"]
    H --> I["UE按时频格子收发"]
    I --> A
```

三路输入分别对应三个问题：

1. **「你现在状态怎么样？」**——手机持续测量信道，周期性上报信道质量指示（CQI）。信号好、干扰低，就能用高阶调制，一个格子装更多比特；
2. **「你有没有货要送？」**——手机通过缓存状态报告（BSR）告诉基站：我这里排队了多少字节待发。没货的用户排第一也没意义；
3. **「你该得到多少？」**——这个连接的QoS需求（时延预算、保障速率）和它最近实际吃到的吞吐量。

三路信息汇总后，调度器给每个用户算一个**优先级分数**，排序，然后「点名」：某用户拿哪些PRB、用什么调制编码方式（MCS），通过下行控制信道广播出去。整个循环快到什么程度？**每毫秒（甚至更短的slot）来一遍，一秒钟做几百到上千次这种决策。**

理解了这个循环，你就理解了现网排障的一条主线：**凡是「有人慢」的问题，都要问一句——是格子没分到（调度），还是格子装不下比特（信道），还是根本没货可送（源头）？**

## 四、三种排队哲学：公平、效率和折中

分诊台按什么规则打分？教科书上有三种经典策略，它们构成了一个「效率—公平」的光谱。

**第一种：轮询（Round Robin）**——完全不看病情，按登记顺序轮流上手术台。绝对公平，但对信号差的边缘用户，同样一格时间产出的比特极少，宝贵的手术台被低效使用。

**第二种：最大载干比（Max C/I）**——永远给信道最好的用户做手术。小区总吞吐量最大化，但站在小区边缘的用户可能**永远轮不上**——这叫「饿死」。它是纯粹的效率主义，也是马太效应的极端：强者愈强，弱者出局。

**第三种：比例公平（Proportional Fair，PF）**——现实世界的折中大师，也是蜂窝网络最经典的算法。它的打分公式非常简洁：

$$k^{*}=\arg\max_{i}\ \frac{r_i(t)}{R_i(t)}$$

分子 $r_i(t)$ 是用户**此刻**信道能支持的速度，分母 $R_i(t)$ 是这个用户**最近一段时间实际吃到的平均速度**。直觉翻译过来就是：**「谁最近吃亏，且此刻机会好，就优先点谁。」**

平均吞吐量用滑动平均更新：

$$R_i(t+1)=\left(1-\frac{1}{T}\right)R_i(t)+\frac{1}{T}\,r_i(t)\cdot\mathbf{1}_{\text{被调度}}$$

被点到的用户，分母变大，下次优先级自动下降；长期没被点到的用户，分母缩小，分数自然涨上去。**没有人被饿死，也没有人永久霸台。**

| 算法 | 直觉类比 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|---|
| 轮询 RR | 按挂号顺序叫号 | 实现极简，绝对公平 | 不看信道，边缘用户浪费格子 | 概念基准、极简系统 |
| 最大载干比 | 先救最容易救活的 | 小区总吞吐最大化 | 边缘用户被饿死 | 用户全在近点的场景 |
| 比例公平 PF | 谁吃亏谁优先 | 吞吐与公平兼得，利用多用户分集 | 算法复杂，参数需调优 | 蜂窝网络事实标准 |

PF还暗藏一个精妙的设计红利：**多用户分集**。小区里几十个用户，各人的信道快衰落彼此独立——这一毫秒A的信号正好处于波峰，下一毫秒轮到B。调度器永远挑「波峰上的人」，等于把每个用户的衰落波动都变成了系统的增益。用户越多，波峰选得越准，小区总容量反而越大。**人多不是负担，反而是资源**——这是无线系统设计里最反直觉、也最优雅的一条原理。

## 五、GBR与Non-GBR：包间与大堂的分餐制

排队哲学解决的是「怎么分蛋糕」，但急诊室还有个更尖锐的问题：**心梗病人不能排队。**

你打电话时，语音包每20毫秒产生一个，迟到超过预算这段对话就废了；工业控制的指令、急救电话，都是「等不起」的业务。于是系统把业务分成两类：

| 维度 | GBR（保障比特速率） | Non-GBR（非保障） |
|---|---|---|
| 急诊室类比 | 提前锁定的手术间 | 大堂散座，先到先坐 |
| 速率承诺 | 有保底速率（GFBR），网络欠你 | 无保底，尽力而为 |
| 资源不够时 | 要么拒绝新请求，要么抢占旧流 | 一律排队，被分得更少 |
| 拥塞时待遇 | 保障期内优先供给 | 首先被挤压的对象 |
| 速率上限 | 保底之外还有最大速率（MFBR） | 受会话级/终端级聚合上限（AMBR）约束 |
| 典型业务 | VoLTE/VoNR语音、紧急呼叫、专网切片业务 | 上网、视频、下载、IM |

关键在于理解**GBR承诺的物理实现方式**：它不是给这个业务焊死一条专用信道，而是**调度器层面的一个「保底权重」**——调度器记账本上写着「这个流每秒必须喂饱多少比特」，分配时间格子和PRB时优先兑现，兑现完的富余能力大家照旧共享。标准也允许多种具体实现，行为细节以各厂家官方文档为准。

这里有个最容易犯的理解错误：**GBR≠独占**。正因为它是「记账承诺」而非「物理专道」，网络才能在没有语音通话时把资源全部让给数据业务——如果每个GBR都真刀真枪划走一块固定资源，小区容量早就被空转的「预订」吃光了。**承诺制的精髓，是只在你真正使用时才占用。**

## 六、准入控制：没床位，就拒收

GBR承诺一旦给出，网络就要认账。所以每当一个新的GBR请求（比如你拨出一通VoNR电话）到达基站时，基站要先**算账**：

$$\sum_{i\,\in\,\text{已接纳GBR}} GFBR_i \;+\; GFBR_{\text{新}} \;\le\; C_{\text{可承诺}}$$

右边的 $C_{\text{可承诺}}$ 不是小区的峰值容量，而是一个保守得多的预算值——它要考虑邻区干扰、负载波动、预留余量。毕竟对急诊室来说，「收下病人后才发现没能力手术」比「拒收」严重得多。

账算不平，进入第二道闸门——**优先级仲裁**，也就是ARP（分配与保持优先级）登场。每个GBR请求都随身带着一张「优先级身份证」，三个字段：

| ARP参数 | 含义 | 急诊室类比 |
|---|---|---|
| 优先级等级 | 1~15，数字越小越优先 | 分诊等级：一级抢救还是三级普通 |
| 可抢占能力 | 我挤不过别人时，能否清走别人 | 急救车有没有鸣笛闯行的权利 |
| 可被抢占脆弱性 | 我是否允许被更高优先级清走 | 我是否同意危急时让出床位 |

完整的准入决策链如下：

```mermaid
flowchart TD
    A["新GBR请求到达基站"] --> B{"小区资源还有富余吗"}
    B -->|有富余| C["接纳 承诺保障速率"]
    B -->|没富余| D{"请求带可抢占权利吗"}
    D -->|没有| E["拒绝 通话建立失败"]
    D -->|有| F{"有低优先级且可被抢占的流吗"}
    F -->|有| G["清退旧流 资源腾给新流"]
    F -->|没有| E
```

三个要点值得咀嚼：

**其一，拒绝是特性，不是故障。**一个已经超载的小区，硬塞进新的GBR流，结果不是新电话通了，而是原有几通电话的保障全部破产——全员掉话。**「宁拒不滥」是保障体系的自我保护**，就像三甲医院急诊满员时引导病人转院，比收进来治一半强。

**其二，抢占是稀缺特权。**典型的场景：公共紧急呼叫（如警用、应急通信）带有最高优先级和可抢占能力，进入一个满负荷小区时，可以把普通商业用户的GBR流清退。这是网络设计里明确写好的「生命通道」。

**其三，Non-GBR不参与这套博弈。**大堂里的散客不会被「抢占」清出去——他们只是被分到更少的资源。散客的去留由无线链路质量决定，不由优先级仲裁决定。

## 七、抢占发生的三十毫秒：一次信令时序

把上面的决策树放到真实信令流里看一遍。假设小区已经满载，此时一通高优先级语音打进来：

```mermaid
sequenceDiagram
    participant U1 as 新来电UE
    participant CN as 核心网
    participant BS as 基站
    participant U2 as 旧语音UE
    U1->>CN: 请求建立语音GBR承载
    CN->>BS: 下发QoS与优先级参数
    BS->>BS: 算账 资源不足
    BS->>U2: 抢占 释放低优先级GBR
    BS->>CN: 资源腾出 接纳新承载
    CN->>U1: 承载建立成功
    Note over U2: 旧通话被强制中断
```

整个链条在几十毫秒内走完。注意被抢占的用户（U2）不是「被降速」——它的GBR承载被**直接释放**，如果那是一通语音，表现为**通话突然中断**。这就是为什么现网上「偶发单通掉话」的排查清单里，永远有一条：**查基站日志里的抢占事件计数器**。

## 八、NR的温柔一刀：先打招呼，再降级

4G时代，承诺的破产往往表现为用户无感地掉话。5G补上了一块温柔的拼图：**通知控制**。

基站在接纳GBR流时保留一个「反悔权」：当无线环境恶化（用户走进电梯、邻区突发大流量）导致承诺的保底速率维持不住时，基站会**先向网络发通知**，声明「我暂时兑现不了这份承诺了」，然后这个流被临时按Non-GBR对待；等环境恢复，再自动恢复保障。

对上层应用来说，这是巨大的体验差异：**从「突然断线」变成「提前收到降级预告」**。视频通话App收到速率回落后可以主动降低分辨率，而不是等着丢包重传把画面打成马赛克。这体现了网络设计理念的一次进化：**与其无声地违约，不如有声地降级。**

## 九、现网连接：调试时调度器藏在哪里

对一线工程师，这套原理就藏在日常的指标和日志里：

**1. PRB利用率（PRB Utilization）**——这是「手术台占用率」。下行PRB利用率长期高于某个阈值，意味着调度器没有腾挪空间：Non-GBR用户速率集体下滑、GBR准入失败率上升。扩容决策的核心依据就是它。

**2. CQI分布**——PF公式里，分子是CQI。如果你发现某小区用户的CQI整体偏低但RSRP正常，问题多半在**干扰**而不是覆盖——信号「满格」（RSRP好）和「信道好」（SINR好）是两回事，前者是你离分诊台的距离，后者是手术台旁的噪音。

**3. 调度请求（SR）失败**——上行方向，手机没有「格子」就无法发数据，必须先发调度请求申请。SR失败说明连「举手」的机会都没抢到，通常是控制信道资源耗尽——海量连接场景下，这比业务信道拥塞更早出现。

**4. 掉话排查中的抢占计数器**——偶发掉话、VoLTE/VoNR建立失败，第一反应之一就是查准入拒绝计数和抢占事件。如果拒绝集中发生在忙时忙区，那是容量问题；如果是零星出现，要查邻区干扰或参数配置。

**5. 限速的真正位置**——用户投诉「被限速」，多数情况执行者是核心网用户面网元上的聚合最大比特速率（AMBR）门限，**跟空口调度器无关**。把「限速」当成调度问题去查无线参数，是新手常走的弯路。

## 十、常见误解与调试陷阱

**误解一：「GBR承诺=专用物理通道」。**前面说过，它是调度器账本上的保底权重，不是预划的固定资源。半持久调度等优化手段可以让命令下发更省，但本质上资源仍是动态共享的。

**误解二：「信号满格就该快」。**网速 = 分到的格子 × 每格装多少比特。满格只说明第一项的天花板高；小区拥塞时PF会把格子摊薄给所有人，人人分得少。满格却慢，先查小区负载，再查干扰。

**误解三：「准入拒绝=无线问题」。**准入是资源逻辑判断，发生在基站的控制面。信号完美的用户也会被拒——如果小区的GBR预算已被占满。排查时要区分「 RF问题」和「容量问题」，两者的药方完全不同。

**误解四：「抢占随时会踢掉我的视频会议」。**抢占只作用于GBR流，而且要看双方的身份卡——你是「可被抢占脆弱」的高优先级流才可能被清。普通上网流量永远只是「被分少」，不会「被踢掉」。

**陷阱：把时延都归罪于空口排队。**数据包在基站的发送队列里排队只是时延的一种来源；手机和服务器侧的缓冲区膨胀会造成另一类时延。前者调度器有QoS意识、能按预算管理，后者通常没有。排障时要先用分段抓包定位时延发生在哪一段，再对症下药。

## 十一、结语

回到那间急诊室。整个系统设计的灵魂，其实是一组环环相扣的取舍：

- **PF算法**在效率与公平之间走钢丝——不让任何人饿死，也不浪费任何一个信道波峰；
- **GBR/Non-GBR二分法**承认了「有些事等不起」——用承诺制给关键业务划出底线，又用「承诺不占实位」保住了系统弹性；
- **准入与抢占**把「拒绝」和「插队」都制度化——宁可拒收也不破产，宁可撕毁旧约也要保住生命通道；
- **通知控制**则教会系统优雅地认错——先打招呼，再降级。

空气是最公平也最残酷的资源：人人可用，人人争抢。蜂窝网络几十年的演进，本质上就是把这个分诊台做得越来越快、越来越聪明、越来越有温度。下次你拨打一通清晰流畅的电话时，不妨想想：就在那几十毫秒里，有一台每秒运算上千次的分诊机器，刚刚为你算完一笔账。

## 常见问题

**Q: GBR承载和「专线」是一回事吗？**
A: 不是。专线是物理或逻辑上的独占管道，无论有没有流量都占着资源；GBR是调度器层面的速率承诺，只在有数据要发时才实际占用格子，空闲时资源让给其他人。一个是「包间常年在册」，一个是「预约到号才上桌」。

**Q: 空口调度造成的排队时延，和缓冲膨胀（bufferbloat）是一回事吗？**
A: 不是。空口排队发生在基站的发送队列，调度器有QoS意识，会按时延预算给紧急包插队；缓冲膨胀发生在收发两端的缓冲区，是「队列越长、时延越大」的被动后果，通常没有QoS感知。两者排障手段完全不同：前者查PRB利用率和调度参数，后者查缓冲区尺寸和拥塞控制行为。

**Q: 为什么我信号满格，还是感觉被限速？**
A: 三种可能要分层看：运营商套餐限速多在核心网用户面以AMBR门限执行，与空口无关；小区拥塞时比例公平算法会把格子摊薄，人人变慢；干扰导致CQI低时，每个格子装的比特也少。满格只代表RSRP好，而网速取决于负载、干扰和调度策略的合力。

**Q: Non-GBR业务会被抢占踢下线吗？**
A: 不会。抢占机制只作用于GBR类有保障的流，而且要求发起方有「可抢占能力」、受害方有「可被抢占脆弱性」。Non-GBR流在拥塞时只会被分到更少的资源，它的去留由无线链路质量（如失步、切换失败）决定，不由优先级仲裁决定。

**Q: Wi-Fi没有调度器，为什么也能多人共享？**
A: Wi-Fi用的是CSMA/CA——分布式、竞争式的「先听后说」：谁也没指挥谁，大家互相监听、随机退避、碰撞了重来。这在小范围低负载时简单高效；而蜂窝网络是中心化调度，由基站统一指挥，在高负载、大范围、多业务混合场景下能把公平和QoS做得精细得多。一个是自助餐厅，一个是配餐到桌的医院。

## 参考来源

1. [Proportional-fair scheduler - Wikipedia](https://en.wikipedia.org/wiki/Proportional-fair_scheduler) — 比例公平调度器的度量公式、平均吞吐量更新机制与多用户分集直觉
2. [Channel-dependent scheduling - Wikipedia](https://en.wikipedia.org/wiki/Channel-dependent_scheduling) — 信道依赖调度框架，轮询/最大载干比/比例公平三种算法的对比与权衡
3. [Quality of service - Wikipedia](https://en.wikipedia.org/wiki/Quality_of_service) — QoS一般概念：保障速率、优先级、准入控制与拥塞管理的基本框架

---
> 本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵**爱卫生**（微信ID: gprshome201101）维护，聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。
> 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
