好的,我们继续。
深度解析 3GPP TS 23.003:8, 9 & 9A APN/DNN 定义 (接入点名称/数据网络名称)
本文技术原理深度参考了3GPP TS 23.003 V18.7.0 (2024-09) Release 18规范中,关于“Chapter 8 SCCP subsystem numbers”、“Chapter 9 Definition of Access Point Name”和“Chapter 9A Definition of Data Network Name”的核心章节。本文将简述第8章的核心概念,并重点深度剖析作为移动数据网络“大门钥匙”的APN及其在5G时代的演进——DNN。
在前几章中,我们跟随主角小玲的脚步,理解了用户、设备和网络区域是如何被唯一标识的。我们知道了网络如何通过MSISDN和IMSI找到“人”,通过LAI/CGI定位“位置”,通过IMEI/PEI识别“设备”。今天,我们将进入一个更为动态和与用户体验息息相关的领域——数据业务接入。
当小玲打开手机上的任何一个App,无论是浏览网页、收发邮件,还是连接公司内网,她的手机是如何告诉网络“我想去哪里”?网络又是如何为她打开通往不同数据网络(如公共互联网、企业内网)的大门?这把关键的“钥匙”,就是APN(Access Point Name)。本章,我们将聚焦于APN的结构与原理,并探讨它在5G时代向DNN(Data Network Name)的平滑演进。
1. 承前启后:信令网络中的“应用端口号”——SCCP子系统号 (章节 8)
在正式开启数据网络的大门之前,我们需要先对上一章涉及的信令网络做一个小小的补充说明。TS 23.003的第八章内容非常简短,它定义了SCCP子系统号(Subsystem Numbers, SSN)。
Subsystem numbers are used to identify applications within network entities which use SCCP signalling.
简单来说,SSN就像是IP网络中的TCP/IP端口号。在基于SS7的信令网络中,两个核心网节点(例如VLR和HLR)之间通信,它们不仅需要知道对方的地址(如上一章讲的E.164实体号码),还需要知道具体要和对方的哪个“应用程序”对话。
例如,当VLR要向HLR请求用户数据时,它要找的是HLR上处理移动性管理逻辑的MAP(Mobile Application Part)应用。HLR上可能还运行着其他应用。SSN就是用来区分这些不同应用的。
0000 0110(6) 代表 HLR (MAP)0000 0111(7) 代表 VLR (MAP)0000 1000(8) 代表 MSC (MAP)
当VLR向HLR发送消息时,它会在SCCP层指定目标SSN为6,这样消息就能被准确地递交给HLR的MAP应用处理。
由于第8章内容主要是对这些号码值的定义列表,属于参考性质,我们在此进行简述说明,不再为其撰写独立长文,而是将重点转向本篇的核心主题——APN。
2. 数据世界的大门:APN的定义与结构 (章节 9.0 & 9.1)
小玲在德国的差旅生活丰富多彩。工作之余,她会用手机刷新闻、看视频,这需要接入公共互联网;处理公务时,她需要通过公司的VPN安全地访问企业内网服务器;有时,她还会使用公司统一部署的高清视频会议系统,这个系统由运营商提供了专门的QoS保障通道。这三种截然不同的数据业务,在网络层面,正是通过三个不同的APN来实现的。
APN(Access Point Name - 接入点名称)本质上是一个逻辑名称,它定义了用户想要连接的外部数据网络,以及通往这个网络的网关(GGSN/PGW)。
In the GPRS backbone, an Access Point Name (APN) is a reference to a GGSN.
这是APN最经典、最核心的定义:APN指向一个GGSN(在4G中是PGW)。它是UE(用户设备)与核心网之间的“约定”,UE告诉网络它想用哪个APN,网络就负责为它找到并连接到正确的网关。
2.1 APN的双重结构
APN的结构设计得非常巧妙,它借鉴了互联网域名(Domain Name)的格式,由两个主要部分组成:
The APN is composed of two parts as follows:
- The APN Network Identifier; this defines to which external network the GGSN/PGW is connected and optionally a requested service by the MS. This part of the APN is mandatory.
- The APN Operator Identifier; this defines in which PLMN GPRS/EPS backbone the GGSN/PGW is located. This part of the APN is optional.
APN = APN网络标识 (Network Identifier) + APN运营商标识 (Operator Identifier)
这两部分组合起来,形成一个类似 service.operator.com 的结构。
2.1.1 APN网络标识 (Network Identifier) - “你想去哪里?”
这是APN的核心和强制部分。它定义了服务的类型或目标数据网络的名称。
The APN Network Identifier shall contain at least one label and shall have… a maximum length of 63 octets. In order to guarantee uniqueness… an APN Network Identifier containing more than one label shall correspond to an Internet domain name.
-
场景1:访问公共互联网 小玲日常上网使用的APN,在中国移动网络中通常是
cmnet。这里的cmnet就是一个网络标识,它告诉网络,小玲想接入的是不受限制的公共互联网。 -
场景2:访问企业内网 当小玲需要访问公司内网时,她手机里的企业安全软件会自动启用一个特定的APN,例如
megacorp.internal。这个网络标识告诉运营商,需要将小玲的数据流量引导到一个专门连接MegaCorp公司内网的GGSN/PGW上。 -
场景3:使用特定服务 小玲公司的高清视频会议APN可能是
hvc.megacorp。这个标识不仅指向了一个特定的GGSN/PGW,该网关还会根据这个标识,对数据流进行特殊的QoS处理(如分配更高的优先级、保证带宽),确保会议的流畅。
网络标识回答了业务层面的问题:“用户这次数据连接的目标是什么?”
2.1.2 APN运营商标识 (Operator Identifier) - “你的网关在哪里?”
这是APN的可选部分。它用于在全球范围内唯一地标识出承载GGSN/PGW的运营商网络。当这部分缺失时,网络通常会默认连接到当前VPLMN(拜访地网络)的网关。但在漫游场景下,这部分至关重要。
The APN Operator Identifier is composed of three labels. The last label (or domain) shall be “gprs”. The first and second labels together shall uniquely identify the GPRS/EPS PLMN. This default APN Operator Identifier is derived from the IMSI as follows: “mnc
.mcc .gprs”
运营商标识的结构是固定的、标准化的:
- 格式:
mnc[MNC码].mcc[MCC码].gprs - 编码: MCC和MNC都必须是3位数字。如果原始的MNC只有两位,则在前面补一个0。例如,MNC为
15,则编码为015。
场景串联:小玲在德国的“归属地路由”上网体验
小玲在德国上网时,她使用的是中国移动的SIM卡,享受的是中国移动的数据套餐。这意味着,她的所有数据流量都应该通过中国移动的GGSN/PGW来计费和管理。这就是“归属地路由(Home Routing)”。
- UE发起请求:小玲的手机向德国运营商的SGSN/MME发起数据连接请求,请求的APN是
cmnet。由于是在漫游,手机的请求中实际上携带的是一个完整的APN。这个APN的运营商标识部分,是手机根据SIM卡中的IMSI(MCC=460, MNC=00)自动构建的。所以,完整的APN是cmnet.mnc000.mcc460.gprs。 - VPLMN进行DNS查询:德国的SGSN/MME收到了这个完整的APN。它将其视为一个FQDN(全限定域名),并在GRX/IPX网络(运营商间的IP专网)的DNS服务器上进行查询。
- DNS解析:DNS服务器解析这个域名,最终返回中国移动为
cmnet服务配置的GGSN/PGW的IP地址。 - 建立隧道:德国的SGSN/MME使用这个IP地址,与远在中国移动网络中的GGSN/PGW建立了一条跨国的GTP隧道。
- 数据传输:小玲在德国的所有上网流量,都被封装在这条隧道中,先传回中国的网关,再从中国接入互联网。
运营商标识部分,完美地解决了跨国寻找正确数据网关的难题。
3. APN的灵活应用 (章节 9.2 & 9.3)
除了基本的结构,APN还有一些灵活的配置方式,以适应不同的需求。
3.1 通配符APN (Wild Card APN)
The APN field in the HLR may contain a wild card APN if the HPLMN operator allows the subscriber to access any network of a given PDP Type. … The wild card APN is coded as an APN with ”*” as its single label.
在小玲的用户签约数据(存储在HLR/HSS中)里,运营商可以不为她指定一个具体的APN,而是配置一个通配符 *。
这意味着,小玲被授权可以尝试连接任何APN。她可以在手机设置中手动输入一个APN(例如,她听说了一个可以免流的APN),网络会接受这个请求并尝试为她建立连接。如果她不指定任何APN,网络通常会为她选择一个默认的APN(如cmnet)。
通配符APN为高级用户和特殊业务提供了极大的灵活性。
3.2 紧急APN (Emergency APN)
The Emergency APN (Em-APN) is an APN used to derive a PDN GW selected for IMS Emergency call support.
当用户发起紧急呼叫时(如拨打112),即使在没有有效SIM卡或欠费的情况下,手机也必须能够建立数据连接以支持VoLTE/VoNR紧急呼叫。
为此,手机会使用一个特殊的、预配置在终端或USIM卡中的紧急APN。网络侧会对这个APN进行特殊处理,无条件地为其分配一个连接到紧急服务网关(E-PGW)的PDN连接,确保生命通道的畅通。这个APN对普通用户是不可见的。
4. 5G时代的传承与演进:DNN (章节 9A)
随着5G时代的到来,核心网架构发生了巨大变化,但数据业务接入的基本逻辑依然存在。APN的概念在5G中被完美地继承了下来,只是换了一个新名字——DNN(Data Network Name - 数据网络名称)。
9A Definition of Data Network Name In 5GS, the Data Network Name (DNN) is equivalent to an APN in EPS. The DNN is a reference to a data network, it may be used e.g. to select SMF or UPF. The requirements for APN in clause 9 shall apply for DNN in a 5GS as well.
这段原文非常清晰地阐述了APN和DNN的关系:
- 功能等价:DNN在5G系统(5GS)中的作用与APN在EPS(4G)中的作用是等价的。
- 作用类似:DNN同样用于指向一个数据网络(DN),并被用于选择负责该连接的核心网功能实体,主要是SMF(会话管理功能)和UPF(用户平面功能)。这对应了APN选择PGW的功能。
- 规则继承:所有在第9章中为APN定义的结构、格式和编码要求,同样适用于DNN。
因此,我们可以简单地理解为 DNN = 5G时代的APN。
4.1 DNN在SNPN中的特殊格式
5G的一个重要特性是支持SNPN(独立非公共网络),即企业或园区可以部署自己专有的5G网络。在这种场景下,DNN的运营商标识部分有了一些扩展。
In SNPNs the DNN Operator Identifier shall take the format “nid
.mnc .mcc .gprs”
在SNPN中,除了传统的MCC和MNC,还增加了一个NID(Network Identifier)。NID是分配给这个私有网络的唯一标识。
场景串联:
小玲公司为他们的智能仓库部署了一个SNPN。仓库里的5G摄像头和AGV小车,它们接入网络时使用的DNN,其运营商标识部分就是nid[公司NID].mnc[公司MNC].mcc[公司MCC].gprs的形式。这确保了即使在公共频段上,它们的流量也能被准确地路由到企业自己的5G核心网,而不是公共运营商的核心网。
5. 总结
本章,我们通过小玲丰富的数据业务使用场景,深入剖析了移动数据网络的“导航系统”——APN/DNN。
- APN/DNN是数据业务的入口标识,它告诉网络用户希望连接到哪个数据网络,以及应该通过哪个网关(GGSN/PGW/UPF)来接入。
- 其**“网络标识 + 运营商标识”** 的双重结构,既满足了业务多样性的需求(通过网络标识区分服务),又解决了全球漫游场景下的网关寻址问题(通过运营商标识进行DNS解析)。
- 从2G/3G的APN到5G的DNN,虽然名称和部分应用场景(如SNPN)有所演进,但其作为逻辑名称引导数据流向的核心思想和基础架构一脉相承,展现了3GPP标准强大的生命力和向后兼容性。
理解APN/DNN,是理解移动数据业务如何工作的关键第一步。它是连接用户、核心网和广阔互联网世界的桥梁。
FAQ - 常见问题解答
Q1:APN和DNN到底有什么实际区别?为什么5G要改个名字? A1:从功能和结构上讲,两者几乎没有区别。DNN完全继承了APN的设计思想。改名的主要原因是5G核心网的架构和术语体系发生了根本性的变化。
- 架构对应:APN指向4G中的PGW,而DNN指向5G中的数据网络(DN),并用于选择SMF/UPF。为了与新的网络功能实体(NF)名称保持一致,引入了新的术语DNN。
- 语义扩展:APN中的“Access Point”带有强烈的“接入点”物理意味,而DNN的“Data Network Name”更强调其作为逻辑网络名称的属性,更符合5G面向服务的架构(SBA)理念。 简单来说,你可以认为DNN就是APN在5G语境下的“官方学名”。
Q2:我的手机APN设置里有很多选项,比如cmnet, cmwap, uniwap等,它们有什么不同?
A2:这些都是不同的网络标识,指向不同的网关,提供不同的服务策略。
- cmnet:通常指向没有限制的互联网接入网关,可以使用所有端口,适合PC、笔记本电脑等全功能上网。早年可能会单独计费。
- cmwap:(WAP: Wireless Application Protocol) 早期为功能手机上网设计,通常指向一个WAP网关。这个网关可能会对流量进行压缩、对访问内容进行限制(如只能访问80端口),并且计费策略也不同(如包月)。现在已基本不用。
- uni前缀:通常是中国联通的APN,与中国移动的
cm前缀类似,如uninet,uniwap。
Q3:为什么APN的运营商标识部分要设计成域名的样子?
A3:因为它的核心用途就是进行DNS查询。核心网节点(SGSN/MME)需要找到GGSN/PGW的IP地址才能建立GTP隧道。将运营商标识设计成mnc<MNC>.mcc<MCC>.gprs的域名格式,就可以利用全球运营商间的GRX/IPX DNS系统,方便地将这个逻辑名称解析为具体的IP地址。这是一种非常高效和可扩展的实现方式。
Q4:如果我在国外漫游,手机的APN设置应该怎么选?
A4:通常情况下你不需要做任何设置。当你漫游时,手机会自动使用归属运营商(HPLMN)预设在SIM卡或通过网络下发的APN。这个APN会包含运营商标识,确保你的数据通过“归属地路由”模式,让你能正常使用国内的套餐。如果你手动设置了一个APN,且这个APN只包含网络标识(如internet),那么拜访地网络(VPLMN)可能会为你选择一个本地的网关(“本地疏通”模式),这可能会产生额外的漫游数据费用。
Q5:一个DNN可以对应多个UPF吗? A5:可以。这是5G网络架构的重要灵活性体现。一个DNN代表的是一个数据网络,为了实现负载均衡、冗余备份或分布式部署(例如,为了降低时延,在网络边缘部署UPF),运营商可以将同一个DNN配置到多个UPF上。当用户请求连接这个DNN时,SMF会根据用户的位置、UPF的负载、网络拓扑等因素,智能地选择一个最合适的UPF来为用户服务。