本文技术原理深度参考了3GPP TS 38.413 V18.5.0 (2025-03) Release 18规范中,关于“8.12 Location Reporting Procedures”的核心章节,旨在为读者提供一个关于5G网络如何根据核心网指令,对特定用户进行位置追踪与上报的深度洞察。
深度解析 3GPP TS 38.413:8.12 Location Reporting Procedures (位置上报流程)
大家好,欢迎回到我们的3GPP规范深度解析系列。在现代社会,“位置”信息已经渗透到我们生活的方方面面,从导航、外卖、共享出行,到更为关键的紧急救援和资产追踪。5G网络作为新一代数字基础设施,其本身就具备了强大的、网络侧驱动的位置感知能力。
我们今天要探讨的**Location Reporting Procedures**,正是这套能力在NG-C接口上的具体实现。它定义了一套由AMF(核心网的移动性“管家”)发起,由gNB(接入网的“一线员工”)执行的标准化流程。通过这个流程,AMF可以向gNB下达“盯人”指令,要求gNB按需、按条件地报告某个特定用户的精确位置或移动状态。
这与我们手机App主动获取GPS位置有本质区别。App获取GPS是UE侧的行为,消耗的是手机自身的电量和计算资源。而Location Reporting是网络侧的行为,它利用gNB对UE的无线信号感知,实现对**CM-CONNECTED(连接管理连接态)**用户的追踪,更加高效和节电,并且可以作为许多上层网络服务(如LCS - LoCation Services)的基础。
为了生动地理解这套“网络眼”的工作机制,让我们引入一位新主角——时尚达人Sophie。她手机上安装了一款与运营商深度合作的高端购物App,该App能提供精准的商场内店铺导航和“到店优惠”推送。
-
UE: Sophie的5G智能手机
-
应用: 高端购物App
-
网络: AMF-Alpha和商场内部署的gNB-Mall-01
我们将跟随Sophie进入大型购物中心的全过程,来剖析本章定义的三个环环相扣的流程,揭示网络是如何“看见”并“跟随”我们的脚步的:
-
8.12.1 Location Reporting Control (位置上报控制):购物App的后台(通过核心网)如何向gNB下达指令,开始追踪Sophie的位置。
-
8.12.3 Location Report (位置上报):gNB在满足什么条件时,会向核心网“打报告”,汇报Sophie的最新位置。
-
8.12.2 Location Reporting Failure Indication (位置上报失败指示):当gNB无法执行追踪任务时,它如何向AMF“反馈问题”。
1. Location Reporting Control (位置上报控制)
这是整个位置上报功能的“发动机”,由AMF发起,用于启动、修改或停止对一个特定UE的位置追踪任务。
1.1 通用流程 (General)
8.12.1.1 General
The purpose of the Location Reporting Control procedure is to allow the AMF to request the NG-RAN node to report the UE’s current location, or the UE’s last known location with time stamp, or the UE’s presence in the area of interest while in CM-CONNECTED state as specified in TS 23.501 and TS 23.502. The procedure uses UE-associated signalling.
规范明确指出,此流程的目标是让AMF请求gNB上报UE在CM-CONNECTED状态下的三种位置信息:
-
当前位置 (current location)。
-
最后已知位置及时间戳 (last known location with time stamp)。
-
在感兴趣区域内的存在状态 (presence in the area of interest)。
这是一个UE关联的流程,意味着每一条指令都是针对一个特定的、在线的用户的。
1.2 成功操作 (Successful Operation)
这是一个由AMF发起的单向指令流程,如“Figure 8.12.1.2-1: Location reporting control”所示。AMF向gNB发送LOCATION REPORTING CONTROL消息,gNB收到后执行相应的动作。
The AMF initiates the procedure by sending a LOCATION REPORTING CONTROL message to the NG-RAN node. On receipt of the LOCATION REPORTING CONTROL message the NG-RAN node shall perform the requested location reporting control action for the UE.
这个流程的精髓,在于Location Reporting Request Type IE,它像一份详细的“行动纲领”,规定了gNB需要执行的追踪模式。
1.2.1 追踪模式的“七十二变” - Location Reporting Request Type IE
The
Location Reporting Request TypeIE indicates to the NG-RAN node whether:
- to report directly;
- to report upon change of serving cell;
- to report UE presence in the area of interest;
- to stop reporting at change of serving cell;
- to stop reporting UE presence in the area of interest;
- to cancel location reporting for the UE;
- to report upon change of serving cell and to report UE presence in the area of interest.
让我们通过Sophie的购物之旅,来逐一解析这些模式:
场景1: App启动,获取初始位置
Sophie走进商场,打开了购物App。App后台(通过核心网的NEF和AMF)需要知道她的初始位置,以便推荐附近的店铺。
-
动作: AMF向gNB-Mall-01发送
LOCATION REPORTING CONTROL消息,其中Location Reporting Request Type设置为**direct**。 -
gNB行为: gNB收到指令后,立即上报一次Sophie手机当前所在的小区信息(CGI),然后任务结束。这是一种“一次性”的位置查询。
场景2: 开启店内导航,持续追踪
Sophie决定去一家位于商场另一头的旗舰店,她开启了App的室内导航功能。App需要持续知道她的位置变化。
-
动作: AMF发送
LOCATION REPORTING CONTROL消息,Location Reporting Request Type设置为**change of serving cell**。AMF同时会为这个任务分配一个Location Reporting Reference ID,例如ID=1。 -
gNB行为: gNB收到后,首先立即上报一次当前位置。之后,只要Sophie在商场内移动,导致她的手机从一个小区切换到另一个小区,gNB就会每一次都主动向AMF发送
LOCATION REPORT。
场景3: 设置“到店提醒”,进入特定区域
旗舰店正在搞促销,Sophie在App上设置了一个“进入旗舰店区域提醒我”的功能。旗舰店的覆盖范围被定义为一个由几个特定小区组成的“感兴趣区域”(Area of Interest)。
-
动作: AMF发送
LOCATION REPORTING CONTROL消息,Location Reporting Request Type设置为**UE presence in the area of interest**。消息中会携带Area Of Interest ListIE,明确列出组成旗舰店区域的几个小区的ID。任务ID被设为2。 -
gNB行为: gNB收到后,会持续监控Sophie手机的位置。一旦检测到手机进入或离开这个由特定小区组成的区域,gNB就会立即上报一个
LOCATION REPORT,并在报告中指明是“进入”(in)还是“离开”(out)。
场景4: 关闭导航,停止追踪
Sophie到达旗舰店后,关闭了导航功能。
-
动作: AMF需要停止“按小区变化上报”的追踪任务。它会发送
LOCATION REPORTING CONTROL消息,Location Reporting Request Type设置为**stop reporting at change of serving cell**,并携带之前分配的任务ID=1。 -
gNB行为: gNB收到后,根据
Location Reporting Reference ID=1,找到并停止了对应的持续上报任务。
通过Location Reporting Reference ID,AMF可以同时在同一个UE上管理多个不同的位置上报任务,并能精确地启动或停止其中任何一个。
1.3 异常情况 (Abnormal Conditions)
If the NG-RAN node receives a LOCATION REPORTING CONTROL message containing several Location Reporting Reference ID IE set to the same value, the NG-RAN node shall send the LOCATION REPORTING FAILURE INDICATION message with an appropriate cause value.
如果AMF不小心在同一次请求中,为不同的上报任务设置了相同的Reference ID,这是一个协议错误。gNB无法区分这些任务,因此会拒绝执行,并通过下一个我们要讲的流程向AMF报告失败。
2. Location Reporting Failure Indication (位置上报失败指示)
当gNB因为各种原因无法执行AMF下达的定位指令时,它需要通过这个流程进行“反馈”。
2.1 通用流程 (General) & 成功操作 (Successful Operation)
8.12.2.1 General
The purpose of the Location Reporting Failure Indication procedure is to allow the NG-RAN node to inform the AMF that the location reporting request … has failed.
流程非常直接,如图“Figure 8.12.2.2-1: Location reporting failure indication”所示,由gNB发起,向AMF发送LOCATION REPORTING FAILURE INDICATION消息。
场景引入:
AMF在请求追踪Sophie在“感兴趣区域”的位置时,错误地在Area Of Interest List中填写了一个gNB-Mall-01根本不管理的小区ID(可能是另一个商场的小区)。
The NG-RAN node initiates the procedure by sending a LOCATION REPORTING FAILURE INDICATION message to the AMF. Upon reception of the LOCATION REPORTING FAILURE INDICATION message the AMF shall, based on the failure reason indicated by the
CauseIE, take appropriate action.
gNB-Mall-01收到指令后,发现自己无法监控一个不归自己管的小区。于是,它向AMF-Alpha发送LOCATION REPORTING FAILURE INDICATION消息,并在Cause IE中附上原因,例如“Unknown Cell ID”。
AMF收到后,就明白了指令有误,它可以修正小区列表后重新发起请求,或者直接放弃本次追踪。
3. Location Report (位置上报)
这是位置上报的最终“成果交付”流程,由gNB主动发起,将满足条件的位置信息上报给AMF。
3.1 通用流程 (General) & 成功操作 (Successful Operation)
8.12.3.1 General
The purpose of the Location Report procedure is to provide the UE’s current location, the UE’s last known location with time stamp, or the UE’s presence in the area of interest to the AMF.
流程如图“Figure 8.12.3.2-1: Location report”所示,由gNB向AMF发送LOCATION REPORT消息。
The NG-RAN node initiates the procedure by sending a LOCATION REPORT message to the AMF. The LOCATION REPORT message may be used as a response to the LOCATION REPORTING CONTROL message.
场景演绎:
回到Sophie进入旗舰店的场景。gNB-Mall-01之前收到了“报告UE在感兴趣区域存在状态”的指令。当Sophie走进旗舰店覆盖的小区时,gNB-Mall-01检测到了这一事件。
它会立即向AMF-Alpha发送一个LOCATION REPORT消息。消息中包含:
-
User Location Information: Sophie手机当前所在的小区ID(EUTRA-CGI或NR-CGI)和TAI。 -
UE Presence in Area of Interest List: 指明Sophie的状态是“进入”(in)了哪个感兴趣区域。 -
Location Reporting Request Type: 再次附上原始的请求类型,告知AMF这是对“UE presence in area of interest”任务的响应。
AMF收到这个报告后,通过NEF通知购物App的后台服务器。服务器立即向Sophie的手机推送一条优惠券:“欢迎光临!您已获得本店8折优惠券一张!” 至此,一次完整的、由网络驱动的、基于位置的服务成功闭环。
FAQ
Q1: Location Reporting流程和NRPPa Transport流程有什么关系?它们都是用于定位的。
A1:
这是一个非常好的问题,两者确实密切相关但层次不同。
-
Location Reporting Procedures是AMF向gNB下达的“业务层”指令。它表达的是一种业务需求,比如“我要知道这个UE什么时候换小区了”或“这个UE进没进这个区域”。它关注的是事件和状态。 -
NRPPa Transport Procedures是AMF为LMF提供的“传输层”服务。它负责透明地传递LMF和gNB之间的**“技术层”指令**。这些指令通常是更底层的定位测量请求,比如“请测量这个UE的RSRP”或“请广播PRS信号”。它关注的是测量和数据。
两者可以协同工作。例如,AMF可以通过Location Reporting得知一个UE进入了需要高精度定位的区域,然后AMF可以通知LMF。LMF再通过NRPPa Transport流程,向gNB下发具体的、高精度的定位测量任务。
Q2: 为什么Location Reporting只能用于CM-CONNECTED状态的UE?如果UE处于空闲状态,AMF能追踪它吗?
A2:
Location Reporting依赖于gNB对UE的实时无线信道感知,这只有在UE处于CM-CONNECTED状态(即RRC_CONNECTED)时才可能。在这种状态下,gNB维护着UE的完整上下文,并持续进行无线测量。
如果UE处于空闲状态(CM-IDLE / RRC_IDLE),gNB对它是一无所知的。AMF只知道UE所在的注册区(一个由多个TA组成的大范围)。此时,AMF无法进行实时追踪。如果需要找到UE,AMF只能发起**寻呼(Paging)**流程,在大范围内“广播寻人”,等UE响应并转换到连接态后,才能再次启动Location Reporting。
Q3: 这个流程上报的位置信息精度有多高?能达到室内导航的级别吗?
A3:
Location Reporting流程本身上报的位置信息精度是小区级别的。它提供的是UE所在的小区全球ID(CGI)。在室外宏站场景,一个小区可能覆盖几百米甚至几公里的范围,精度较低。但在商场、场馆等室内覆盖场景,一个小区可能只覆盖几十米的范围,精度相对较高。
要达到亚米级的室内导航,仅靠小区ID是不够的。但Location Reporting可以作为触发器。例如,当检测到UE进入某个特定区域(由一组小区定义)后,网络可以触发更精密的定位技术,如5G NR定位(基于PRS)、蓝牙或Wi-Fi定位,并将这些高精度定位结果通过其他方式提供给上层应用。
Q4: AMF如何知道应该在什么时候、为哪个UE发起位置上报请求?
A4:
AMF本身不会主动产生这个需求。它是一个执行者。位置服务的请求通常来自外部应用或网络功能,并通过5G核心网的**NEF(Network Exposure Function,网络能力开放功能)**进入网络。
例如,购物App的后台服务器会通过API向NEF请求:“请在用户Sophie进入XX商场时通知我”。NEF会将这个应用层请求,转换为核心网内部的信令,最终由AMF生成相应的LOCATION REPORTING CONTROL消息发送给gNB。AMF扮演了将外部业务需求翻译成内部RAN信令指令的角色。
Q5: gNB持续监控UE位置变化(例如change of serving cell)会消耗gNB很多资源吗?
A5:
并不会消耗很多额外资源。因为对于一个处于CM-CONNECTED状态的UE,gNB为了保证其移动性(如准备切换),本身就需要持续监控其服务小区和邻近小区的信号强度。change of serving cell的上报任务,只是在gNB已经执行的切换决策完成后,增加一个向AMF发送LOCATION REPORT消息的动作而已。它利用了已有的移动性管理机制,增加的信令开销非常小,是一种高效的“顺便”上报机制。