首页 › deep-tech › 网络找人的一笔账:TAU与寻呼

你住在一个老小区,快递员给你送包裹时从不需要全城找你——因为你在物业那里登记过住址。快递到了,先送到物业,物业在大门口喊一嗓子,你下楼取件。哪天你搬去了另一个小区,去新物业改一次登记就行,以后快递自动送新地址。

手机待机时的世界就是这样运转的。「登记住址」「搬家改登记」「按登记喊人」,对应到蜂窝网络里就是三个流程:注册(Registration)、位置更新(TAU/移动性注册更新)、寻呼(Paging)。这三个流程共同回答了一个看似简单、实则让工程师纠结了三十年的问题:

网络到底要把你的位置记住到什么精度,才最划算?

这篇文章就把这笔账算清楚。连接状态下手机怎么在小区之间换手是另一码事,这里讲的是手机睡着之后的故事——而这恰恰是全网信令量最大的来源之一。

一、这笔账的两端:太精明和太糊涂都不行

先看两个极端方案,你就明白为什么需要“跟踪区”这个设计。

极端一:全网精确跟踪。 网络实时记录你驻留在哪个小区,有人找你时直接在那个小区喊你,一步到位。代价是:你每换一个小区(在城市里可能走两百米就换一个),手机就得向网络发一次位置更新。一部手机一天换几百次小区,十亿部手机就是千亿级的信令,网络把所有资源拿来登记户口都远远不够。

极端二:完全不做记录。 手机安安静静睡觉,谁也不打扰。代价是:来一条短信,网络不知道你在哪,只能向全国所有基站发广播。任何一个人的任何一包下行数据,都是一次全网风暴。

方案 网络掌握的粒度 手机的信令开销 找到一个人的代价
极端一:精确到小区 每个小区 极高,动一步报一次 极低,定点喊人
极端二:完全不记录 全国范围 零 极高,全网广播
折中:跟踪区 TA 一组小区 低,出区才报 可控,区内广播
flowchart TD
    Q["网络该记住你到什么粒度"] --> E1["极端一:精确到每个小区"]
    Q --> E2["极端二:完全不做记录"]
    E1 --> C1["每换一个小区就要报告一次"]
    E2 --> C2["找一个人就向全网广播"]
    C1 --> P["两端都会被信令压垮"]
    C2 --> P
    P --> S["折中方案:跟踪区TA"]
    S --> S1["区内移动:免报告"]
    S --> S2["有人来找:只在区内喊"]

跟踪区(Tracking Area,TA)就是两端之间的折中。 运营商把若干个相邻小区划成一个 TA,每个小区在系统广播消息里播报自己所属的 TA 编号(TAC)。手机登记时,网络下发一个“注册区域”,里面包含一个或多个 TA。手机驻留在注册区域内的任何小区,都不用吭声;一旦发现新小区广播的 TAC 不在列表里,才需要报告一次。寻呼时,网络也只在注册区域内的所有小区喊人,不惊动全城。

这笔账能写成公式

位置更新的频率有多高?假设用户以平均速度 $v$ 随机移动,TA 的周长为 $P$、面积为 $A$,则经典的随机移动模型给出的边界穿越率是:

$$\lambda_{\text{TAU}} = \frac{v \cdot P}{\pi \cdot A}$$

穿越率正比于周长、反比于面积。对边长为 $L$ 的正方形 TA,$\lambda_{\text{TAU}} \approx 4v/(\pi L)$——TA 越大,更新越省。

寻呼的代价则相反:TA 里的小区数大致正比于面积 $L^2$,每条下行业务都要在整个 TA 广播,所以TA 越大,寻呼越贵。把两边写成一个总成本函数($\alpha$、$\beta$ 分别是更新和寻呼的单价):

$$C(L) = \alpha \cdot \frac{v}{L} + \beta \cdot L^2$$

对 $L$ 求导取极小,得到最优 TA 尺寸:

$$L^{*} = \left( \frac{\alpha \cdot v}{2\beta} \right)^{1/3}$$

这个式子虽是简化模型,但方向完全符合现网直觉:用户移动越快($v$ 大),最优 TA 越大——频繁更新比偶尔多喊几嗓子更亏;寻呼单价越高($\beta$ 大,即话务密度高),最优 TA 越小——市中心宁可划小 TA、多几次登记,也要压住寻呼广播的爆炸半径。

二、手机睡着的三个姿势:谈寻呼前必须谈状态

寻呼不是对所有手机都发生的。手机和网络的“知情关系”由 RRC 状态决定,5G 引入了三个状态,正好对应三种睡姿:

维度 空闲态(IDLE) 非活跃态(INACTIVE) 连接态(CONNECTED)
网络记录的位置 注册区域(一组TA) 基站侧通知区(RNA) 精确到小区
谁来寻呼它 核心网发起寻呼 基站发起RAN寻呼 不需要寻呼
回到连接的速度 慢,要走完整流程 快,直接恢复上下文 已经连着
功耗 最低 中等 最高
出现时间 一直有 5G新增 一直有
flowchart TD
    IDLE["空闲态IDLE"] -->|"主动发起业务"| CONN["连接态CONNECTED"]
    CONN -->|"释放且不挂起"| IDLE
    CONN -->|"释放时挂起上下文"| INACT["非活跃态INACTIVE"]
    INACT -->|"恢复 上下文直接复用"| CONN
    INACT -->|"上下文超时或出覆盖"| IDLE
    IDLE -->|"核心网寻呼叫醒"| CONN

为什么 5G 要新增一个「非活跃态」?因为在它出现之前,手机只有两种选择:要么彻底断开(省电但唤醒慢),要么保持连接(唤醒快但费电)。介于两者之间的场景非常多——你刷完一个页面放下手机、微信推一条通知——这类业务来得频繁但每次数据量小,完整建链太浪费。非活跃态的做法是:释放空口连接时,把手机上下文保留在基站里,下次唤醒时走「恢复(Resume)」流程直接把旧上下文捡回来,跳过大部分重建信令。这就像酒店退房时前台说“行李先寄存这,回来直接拿钥匙”——不用重新办入住。

三、搬家要改口:从 TAU 到统一注册

什么时候要报告

手机检测到需要更新位置的场景主要有四种:

触发场景 说明
移动出注册区域 新小区广播的TAC不在网络下发的列表里
周期性注册 定时器到点,向网络报平安
从无覆盖中恢复 长时间失联(电梯、地库)后重新找到网络
开机注册 统一注册流程的另一种类型

周期性注册值得单独说:手机里有一个网络下发的定时器(5G 里是 T3512,4G 里是 T3412),到点后哪怕你一步没挪,也要发起一次注册更新。为什么?这是双向的保活。对网络来说,它要确认你还在服务区——如果连续几个周期都没等到你的报平安,网络就判定你已不可达,悄悄把你注销(隐含去注册)。之后有人打你电话,网络连寻呼都懒得发,直接返回“已关机或不在服务区”。这就是为什么手机在地库里放一晚上,出来后经常要搜半天网、还可能漏掉期间的来电。

5G 把三条流程合并成了一条

4G 时代,开机附着、TAU、周期性 TAU 是几条独立的信令流程。5G 把它们统一成了一条注册流程(Registration Procedure),只用注册类型字段区分:初始注册、移动性注册更新、周期性注册更新。4G 的 TAU 在 5G 里对应的就是「移动性注册更新」这个名字——功能没变,实现从三条路并成了一条路。这也是 5G 核心网设计哲学的一个缩影:能统一的接口绝不留两套。

注册流程的时序如下:

sequenceDiagram
    participant U as 手机
    participant G as 基站
    participant A as 核心网
    U->>G: 驻留新小区 读广播比对区域号
    U->>G: 请求建立连接
    G->>U: 连接建立
    U->>G: 注册请求 类型为移动性更新
    G->>A: 转交注册请求
    A->>A: 核对身份 更新位置档案
    A->>G: 注册接受 附新区域列表与定时器
    G->>U: 注册接受
    U->>U: 存区域列表 重置周期定时器
    Note over U,G: 连接随即释放 手机继续睡觉

注意最后一行:整个更新过程只占几条信令、持续几百毫秒,完成后连接立刻释放,手机接着睡。设计者在这个流程上抠的每一条消息,都是为了把“搬家改登记”这件事做到最便宜。

四、找人的广播:寻呼是怎么落到空气里的

从服务器到一声呼唤

有人给你发数据时,网络并不知道你此刻的手机状态,它只信任注册时留下的档案。完整链路是:

sequenceDiagram
    participant S as 对端服务器
    participant A as 核心网
    participant G as 区域内各基站
    participant U as 手机
    S->>A: 有数据要发给号码X
    A->>A: 查位置档案 手机登记在TA3
    A->>G: 向TA3全部小区下发寻呼指令
    G->>U: 在寻呼时机用临时名广播
    U->>G: 比对名单命中 发起服务请求
    G->>A: 转交服务请求 建立连接
    A->>S: 通道打通 下发积压数据

两个细节值得咀嚼。其一,寻呼指令发往注册区域内的所有小区,每个小区在自己合适的时间点广播,谁先喊到你算谁的。其二,广播里喊的不是你的手机号,更不是真实身份(IMSI 绝不在空中接口裸奔),而是网络分配的临时标识(5G-S-TMSI)——这个名字还会定期更换,防止被人长期跟踪。

手机不是竖着耳朵听的:PF 与 PO 的计算

如果每个手机都时刻监听广播,待机功耗根本撑不过一天。于是网络和手机约定了一张睡觉日历——非连续接收(DRX):手机把时间切成一个个长周期,每个周期只在指定的某个无线帧、帧内的某个时机短暂醒来,听一耳朵有没有叫自己,没有就接着睡。

这张日历有三层结构,一层比一层精细:

层级 参数 回答的问题
周期 DRX周期 T 多久醒一次
帧 寻呼帧 PF 醒来时看哪个无线帧
时机 寻呼时机 PO 帧内的哪个时刻听

关键的精妙之处在于:这三层参数全部由手机自己算出来,网络和手机之间不需要任何协商信令。计算只需要两类输入——小区广播的公共参数(人人相同),和手机自己的临时标识(人各不同):

$$(\text{SFN} + \text{PF_offset}) \bmod T = (T \,\text{div}\, N) \times (\text{UE_ID} \bmod N)$$

$$i_s = \left\lfloor \frac{\text{UE_ID}}{N} \right\rfloor \bmod N_s$$

其中 $T$ 是 DRX 周期(网络广播四档可选:320、640、1280、2560 毫秒),$N$ 由广播参数 $n_B$ 决定(决定了每个周期里有多少个无线帧被用作寻呼帧),$N_s$ 是每个寻呼帧内的时机数(1、2 或 4),而 $\text{UE_ID}$ 就是临时标识对 1024 取模的结果。网络侧要寻呼你时,用同样的公式反推你会在哪个时刻出现——双方靠同一套算术在黑暗中精准相遇。

算一个具体的例子。 设 $T = 64$(即 640 毫秒),广播 $n_B = T/4$,则 $N = 16$,$T \,\text{div}\, N = 4$。某手机 $\text{UE_ID} = 1023$,寻呼帧满足 $\text{SFN} \bmod 64 = 4 \times (1023 \bmod 16) = 60$,即帧号 60、124、188……若 $N_s = 4$,则 $i_s = \lfloor 1023/16 \rfloor \bmod 4 = 3$,它在该帧的第 4 个时机收听。整台手机每 640 毫秒只睁眼这么一小会儿,其余时间射频全部关闭。

这套设计还有一层负载均衡的巧思:不同的 $\text{UE_ID}$ 天然散列到不同的帧和时机,全小区几万部待机手机被自动错峰,不会在同一毫秒集体醒来挤爆控制信道。而真正广播时,一条寻呼消息里还可以打包一个名单(最多 32 条记录),一次广播同时叫醒多部手机,每部手机醒来后核对名单里有没有自己的名字——有则应答,没有则继续睡。老师站在自习室门口轻声念一串名字,被点到的人才抬头,就是这个画面。

省电和时延,天平的两端

DRX 周期越长,手机越省电,但有人找你时你要睡更久才被喊到。周期取 640 毫秒时,寻呼请求随机到达,平均要等约 320 毫秒才撞上你的收听时机——这笔时间直接加进被叫建立时延,你拨号后对方多响半秒铃,很大一部分就是这里贡献的。运营商在现网上选哪一档,是话务模型、终端功耗和业务体验三方博弈的结果:主打通话业务的网络倾向短周期,物联网场景(抄表、传感器)动辄选最长档甚至扩展寻呼周期,一部电表可以几年不换电池,代价是消息到达延迟数十秒也无人在意。

5G 还在继续往这个方向抠:新版本引入了寻呼早期指示一类的机制,让手机先听一声极短的“哨响”,判断这个时段大概率没自己的事,就不再解码后面的控制信道——把每次醒来的耗电也砍掉一截。

五、现网实战:这笔账落在哪里

TA 规划是网络设计里少有的“用地图画账本”的工作。 原则全部能从成本函数推出来:边界必须沿话务洼地走(山脉、河流、低密度区),让尽量少的手机没事跨越边界;边界绝不沿着高铁、高速、主干道走——否则一车人每过十公里集体发起一次位置更新,形成教科书级的“乒乓 TAU”信令冲击。市区话务密、寻呼单价高,TA 划得小;郊区一个 TA 管几十上百个站。这些决策背后,就是第三节那两个公式。

被叫不通排查是工程师最常碰到的实战场景。 用户投诉“打不通”,排查链上和本文相关的环节依次是:手机是否已被隐含去注册(查周期注册是否连续失败)?寻呼消息是否已下发但手机没听见(地库、电梯等覆盖洞导致连续错过收听时机)?手机是否停在了注册区域边缘、实际驻留的 TAC 与档案不符?是不是 RRC 状态与核心网档案不同步?每一环都能在信令跟踪里找到对应的证据点。

最后留一个历史注脚。 十几年前智能手机普及时,业界广泛讨论过所谓「信令风暴」:海量 App 的心跳包迫使终端频繁脱离待机态又回到待机态,附着、去附着、位置更新的信令增速远超数据流量增速,一度把部分运营商的接入网压到临界。这场危机后来靠网络侧的状态机优化和终端侧的心跳聚合共同化解,但它揭示的正是本文的主题——在蜂窝网络里,最贵的从来不是数据,而是“网络知道你在哪”这件事本身。

切换解决的是“连着的时候怎么跟着你走”,注册、更新与寻呼解决的是“睡着的时候怎么找到你”。两套机制合起来,才是移动性管理的完整拼图:一部手机在城市里穿行,网络以几百毫秒为刻度陪它换手,又以几小时为刻度听它报平安,再以 640 毫秒为周期在深夜里守着它——所有这一切,都为了让“找到你”这件事的成本,降到全社会的亿万次通信都能负担得起。

常见问题

Q: 4G 的 TAU 和 5G 的注册更新是什么关系? A: 功能上是一回事,形态上被合并了。4G 里开机附着、TAU、周期性 TAU 是独立流程;5G 统一成一条注册流程,用注册类型区分,TAU 对应其中的「移动性注册更新」。所以严格说 5G 没有“TAU”这个名字,但每个 5G 工程师依然会用它指代移动性更新。

Q: DRX 周期为什么不用最长那档?手机不是更省电吗? A: 省电的代价是被叫时延。周期越长,寻呼请求平均要等越久才撞上手机的收听时机,直接拉长来电振铃前的等待。语音业务的网络通常选短档,物联网场景才敢用长档。

Q: 手机收不到寻呼,可能有哪些原因? A: 按概率排:已被隐含去注册(周期注册连续失败);驻留位置有覆盖洞,连续错过收听时机;注册区域配置与实际驻留小区不一致;RRC 状态与核心网档案不同步。信令跟踪里逐环比对即可定位。

Q: 空闲态和非活跃态都是“睡着”,本质区别在哪? A: 上下文存在谁那里。空闲态的上下文只在核心网,唤醒要走全流程;非活跃态的上下文还留在基站,唤醒只需一步恢复。因此后者的寻呼由基站直接发起(用恢复标识而非临时名),位置粒度也更细。

Q: 寻呼消息为什么要打包一串名单,而不是一人一条? A: 广播信道的资源以“次”计价。一条消息叫醒 32 部手机,控制信道只开销一次;一人一条则开销 32 次。手机醒来后核对名单,没自己名字就继续睡,误听也不会应答。

参考来源

  1. ShareTechnote: 5G/NR Paging — 寻呼帧/寻呼时机公式、寻呼消息结构、核心网与基站双路由寻呼的权威图解
  2. free5GC 博客: Registration procedures — 开源 5G 核心网对统一注册流程与移动性注册更新的实现级讲解
  3. 3GPP Explorer 词汇表: TAU — 位置更新的两类触发条件(进入新跟踪区、周期定时器)
  4. Apis Training: Why is there no Tracking Area Update procedure in 5G? — 5G 用注册区域取代 TAU 的设计动因
  5. RF Wireless World: LTE TAU Procedure — 4G 跟踪区更新信令流程的逐步分解

本文由「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学通信知识星球海报-扫码加入