好的,我们继续对5G服务化短信的“服务目录”进行深度探索。这是系列文章的第十篇,我们将把焦点对准那些在短信旅程中扮演着“大脑”、“翻译官”、“策略师”和“户籍警官”角色的核心网络功能(NF),逐一清点它们的看家本领。

深度解析 3GPP TS 23.540:第六章 - 服务化接口详解 (Part 2 - SMSF, IP-SM-GW, SMS Router & MNPF 的核心能力)

本文技术原理深度参考了3GPP TS 23.540 V18.4.0 (2024-06) Release 18规范中,关于“6.4 SMSF services…”, “6.5 IP-SM-GW services…”, “6.6 SMS Router services…”以及“6.7 MNPF services for SBI-based SMS”的核心章节。本文旨在为读者系统性地剖析SMSF、IP-SM-GW、SMS Router和MNPF这四大关键NF所提供的标准化服务(API),从而构建一幅完整的5G短信能力视图。

在上一篇文章中,我们已经对UDM的“智慧”和SMS-IWMSC的“忠诚”进行了全面的“能力审计”。我们知道了MT短信的路由决策从何而来,MO短信的出境之路又如何保障。

今天,我们将继续这场“能力巡礼”。我们的目光将投向:

  1. SMSF:5G短信世界中全新登场的“大脑”,直接服务于终端的业务核心。

  2. IP-SM-GW:连接传统短信世界与现代IMS IP世界的“首席翻译官”。

  3. SMS Router:短信之路上灵活多变的“交通策略规划师”。

  4. MNPF:在号码可携时代,确保信息不会“送错门”的“户籍警官”。

我们将通过对这些NF服务接口的精细解读,进一步巩固对整个5G短信架构的理解,看看小明的每一次短信收发,背后都依赖于怎样一套精密、标准化的能力组合。


1. SMSF:短信世界的“大脑”与“终端服务中心” (Section 6.4)

SMSF (Short Message Service Function) 是5G短信架构中最重要的创新之一。它将直接服务于UE的短信逻辑独立出来,成为一个专职的、云原生的网络功能。

Table 6.4.1-1: SMSF Services for SBI-based SMS 为我们展示了这位“大脑”的核心能力。

SMSF 服务目录概览

Table 6.4.1-1: SMSF Services for SBI-based SMS

| Service Name | Service Operations | Operation Semantics | Service Provider(s) | Service Consumer(s) |

| :--- | :--- | :--- | :--- | :--- |

| SMService | MtForwardSm | request / response | SMSF | SMS-GMSC, IP-SM-GW, SMS Router |

表格解读:

SMSF的服务目录非常简洁、专一。它只提供一个名为SMService的服务,其中包含一个至关重要的服务操作MtForwardSm。它的消费者,正是MT短信链路中所有可能向它转发消息的上游节点。

1.1 Nsmsf_SMService_MtForwardSm 服务操作 (Section 6.4.2)

这是SMSF所提供的唯一却又最核心的服务。

Service operation name: Nsmsf_SMService_MtForwardSm

Description: transfer downlink SMS message from consumer NF to SMSF.

Inputs, Required: GPSI, SMS payload

Outputs, Required: SMS message transmission result.

深度解读:

这个服务操作的使命,就是接收来自上游网关的MT短信,并启动最终的“最后一公里”投递。

  • Inputs, Required (必须提供的“投递任务书”)

    • GPSI: 明确这条短信的目标收件人是小明

    • SMS payload: 短信的核心内容。

  • Outputs, Required (预期的“执行结果”)

    • SMS message transmission result: 返回一个投递结果。这个结果非常关键,它会向上游报告是“成功”,还是“失败”,以及失败的具体原因(如UE_UNREACHABLE)。
  • 场景还原

    1. 一条MT短信历经千辛万苦,抵达了SMS-GMSC(或其他网关)。

    2. SMS-GMSC通过查询UDM,得知当前为小明服务的是SMSF-instance-01

    3. SMS-GMSC立即调用SMSF-instance-01Nsmsf_SMService_MtForwardSm服务,将短信内容和目标GPSI一并提交。

    4. SMSF收到请求后,与AMF协作,将短信通过NAS信令发送给小明的手机。

    5. 最终,SMSF将从AMF那里获得的投递结果,封装在这个服务操作的响应中,返回给SMS-GMSC。

核心价值Nsmsf_SMService_MtForwardSm服务是MT短信从核心网业务平面下沉到接入层的关键接口。它标志着一条短信的“核心网之旅”的结束,和“空口之旅”的开始。


2. IP-SM-GW:IP短信世界的“首席翻译官” (Section 6.5)

IP-SM-GW (IP Short Message Gateway) 的核心职责是在IP/IMS域和传统短信域之间进行协议转换和消息路由。

Table 6.5.1-1: IP-SM-GW Services for SBI-based SMS 展示了这位“翻译官”的多面手能力。

IP-SM-GW 服务目录概览

Table 6.5.1-1: IP-SM-GW Services for SBI-based SMS

| Service Name | Service Operations | Operation Semantics | Service Provider(s) | Service Consumer(s) |

| :--- | :--- | :--- | :--- | :--- |

| SMService | RoutingInfo | request / response | IP-SM-GW | UDM |

| | MtForwardSm | request / response | IP-SM-GW | SMS-GMSC |

表格解读:

IP-SM-GW提供的SMService包含了两个不同的服务操作,分别应对不同的交互场景,体现了其作为中间网关的“承上启下”作用。

2.1 Nipsmgw_SMService_RoutingInfo 服务操作 (Section 6.5.2.2)

Service operation name: Nipsmgw_SMService_RoutingInfo

Description: provides the SMSF Instance Id to the IP-SM-GW.

Inputs, Required: GPSI, SMSF Instance Id.

深度解读:

这个服务操作看起来有些特别,它的消费者是UDM

  • 场景还原:在MT短信经由IP-SM-GW的流程中(Figure 5.1.4-1的步骤4),当UDM发现小明在IMS网络注册后,它需要咨询IP-SM-GW下一步该怎么走。UDM正是通过调用Nipsmgw_SMService_RoutingInfo服务来完成这次“咨询”的。

  • Inputs解读:UDM会将它知道的信息(小明的GPSI,以及为他服务的SMSF实例ID)提供给IP-SM-GW。

  • 核心价值:这个服务操作是UDM向IP-SM-GW**“移交路由决策权”**的正式握手。UDM通过这个接口,将处理权和必要信息交给了IP短信领域的专家——IP-SM-GW。

2.2 Nipsmgw_SMService_MtForwardSm 服务操作 (Section 6.5.2.3)

Service operation name: Nipsmgw_SMService_MtForwardSm

Description: transfer downlink SMS message from consumer NF to IP-SM-GW and return the MT SMS Delivery Report to the consumer NF.

Inputs, Required: GPSI, SMS payload

深度解读:

这个服务与SMSF的MtForwardSm服务非常类似,但提供者是IP-SM-GW。

  • 场景还原:在MT短信经由IP-SM-GW的流程中(Figure 5.1.4-1的步骤7),SMS-GMSC在从UDM那里获得了IP-SM-GW的地址后,就调用这个Nipsmgw_SMService_MtForwardSm服务,将短信转发给IP-SM-GW。

  • 核心价值:这是MT短信进入IP互通域的正式入口。IP-SM-GW收到请求后,会执行其核心的互通逻辑,然后再决定是继续转发给SMSF,还是通过IMS通道投递。


3. SMS Router:短信之路的“交通策略规划师” (Section 6.6)

SMS Router是一个可选的、用于实现高级路由策略的NF。它的服务接口设计,也清晰地反映了其作为中间处理节点的角色。

Table 6.6.1-1: SMS Router Services for SBI-based SMS 与IP-SM-GW的服务目录惊人地相似。

SMS Router 服务目录概览

Table 6.6.1-1: SMS Router Services for SBI-based SMS

| Service Name | Service Operations | Operation Semantics | Service Provider(s) | Service Consumer(s) |

| :--- | :--- | :--- | :--- | :--- |

| SMService | RoutingInfo | request / response | SMS Router | UDM |

| | MtForwardSm | request / response | SMS Router | SMS-GMSC |

表格解读:

和IP-SM-GW一样,SMS Router也提供了RoutingInfoMtForwardSm两个服务操作,消费者和提供者的角色也完全对应。这揭示了一个SBA设计的通用模式:对于一个中间转发/处理节点,它通常需要提供两种接口:一种用于上游节点(如UDM)的路由查询/决策移交,另一种用于上游节点(如SMS-GMSC)的消息实体转发。

  • Nrouter_SMService_RoutingInfo (Section 6.6.2.2): 供UDM调用,用于在路由决策阶段,咨询SMS Router的策略意见。

  • Nrouter_SMService_MtForwardSm (Section 6.6.2.3): 供SMS-GMSC调用,用于将MT短信的实体转发给SMS Router进行处理。

这两个服务操作的InputsOutputs与IP-SM-GW的同名服务也基本一致,只是其内部的Description(描述)和业务逻辑不同。SMS Router关心的是“策略”,而IP-SM-GW关心的是“互通”。


4. MNPF:号码可携时代的“户籍警官” (Section 6.7)

MNPF (Mobile Number Portability Function) 的职责最为纯粹和专一:确定一个手机号码的真实归属运营商。

Table 6.7.1-1: MNPF Services for SBI-based SMS 体现了这种极致的简洁。

MNPF 服务目录概览

Table 6.7.1-1: MNPF Services for SBI-based SMS

| Service Name | Service Operations | Operation Semantics | Service Provider(s) | Service Consumer(s) |

| :--- | :--- | :--- | :--- | :--- |

| NPStatus | Get | request / response | MNPF | SMS-GMSC, SCP |

表格解读:

MNPF只提供一个名为NPStatus的服务,其中包含一个简单的Get操作。它的消费者,就是那些需要进行跨网寻址的NF,如SMS-GMSC或SCP。

4.1 Nmnpf_NPStatus_Get 服务操作 (Section 6.7.2)

Service operation name: Nmnpf_NPStatus_Get

Description: retrieve the PLMN ID of the Subscription Network of a GPSI.

Inputs, Required: GPSI.

Outputs, Required: PLMN Id.

深度解读:

这是MNPF唯一的“武艺”,但却招招致命,直击号码可携的痛点。

  • Inputs, Required: 只需要提供一个GPSI(手机号)。

  • Outputs, Required: 返回一个唯一的、决定性的信息——PLMN Id(运营商ID)。

  • 场景还原:当HR平台通过A运营商的SMS-GMSC,给已经携号转网到B运营商的小红发短信时,A运营商的SMS-GMSC就会调用Nmnpf_NPStatus_Get服务,输入小红的手机号,然后得到一个清晰的答案:“B运营商”。据此,SMS-GMSC才能启动正确的跨网路由流程。

  • 核心价值Nmnpf_NPStatus_Get服务是保障在号码可携环境下,短信、语音乃至所有电信业务能够被正确路由的基础能力。没有它,跨运营商的通信将陷入混乱。


【FAQ环节】

Q1:SMSF只提供一个MtForwardSm服务,那MO短信是由谁的服务处理的?

A1:这是一个非常好的问题,它帮助我们厘清上下行服务的区别。SMSF作为面向UE的“服务中心”,它在MO流程中扮演的是服务消费者(Consumer)的角色。当SMSF收到来自小明的MO短信后,它会去消费其他NF的服务:

  1. 它会消费NRFNnrf_NFDiscovery服务,去寻找SMS-IWMSC。

  2. 然后它会消费SMS-IWMSCNiwmsc_SMService_MoForwardSm服务,将短信发出去。

所以,SMSF的服务目录只体现了它作为**提供者(Provider)**的能力(即接收MT短信),而它作为消费者的能力,则体现在各个MO流程图中。

Q2:IP-SM-GW和SMS Router的服务接口设计为什么如此相似?这是巧合吗?

A2:这不是巧合,而是SBA架构中一种通用的“中间件”设计模式的体现。无论是IP-SM-GW(协议中间件)还是SMS Router(策略中间件),它们都嵌入在从“入口网关”到“业务核心”的路径之间。因此,它们都需要对外提供两种基本能力:

  1. 被查询能力 (RoutingInfo):响应来自上游路由决策者(如UDM)的“咨询”,告诉它自己是否应该介入,以及如何介入。

  2. 被转发能力 (MtForwardSm):接收来自上游转发者(如SMS-GMSC)的实际消息,并进行处理。

这种相似的设计模式,体现了SBA架构在不同业务场景下的逻辑一致性和可复用性,降低了架构的理解和实现成本。

Q3:MNPF的服务接口非常简单,它在实际部署中是如何实现的?数据源是哪里?

A3:MNPF的服务接口虽然简单,但其后台的实现和数据同步机制却非常关键。

  • 数据源:它的核心数据源是国家或地区级的号码可携中央数据库(NP Clearinghouse/Database)。每当有用户完成一次携号转网,这个中央数据库就会更新。

  • 数据同步:各个运营商的MNPF需要通过专线或安全网络,与这个中央数据库进行实时或准实时的数据同步,确保自己本地的数据库副本是最新的。

  • 实现方式:MNPF本身可以是一个独立的NF,也可以与其他NF(如NRF或SCP)合设部署。它的Get服务操作,在收到请求后,就是对其本地的NP数据库进行一次快速查询。因此,MNPF的高性能和数据准确性,对于保障互联互通至关重要。

Q4:为什么Nmnpf_NPStatus服务的消费者是SMS-GMSC和SCP,而没有NRF?在5.1.7.4节中不是说NRF也可以进行解析吗?

A4:这是一个非常深刻的观察。Table 6.7.1-1中列出的消费者是直接调用MNPF服务的NF。

  • 5.1.7.2(SMS-GMSC主动解析)和5.1.7.3(SCP代理解析)的场景中,确实是SMS-GMSC或SCP作为直接的服务消费者去调用Nmnpf_NPStatus_Get服务。

  • 而在5.1.7.4(NRF集成解析)的场景中,从SMS-GMSC的视角看,它只调用了NRF的服务。但NRF在内部,为了完成这个增强的服务发现任务,它自己会转身成为MNPF的服务消费者,去调用Nmnpf_NPStatus_Get

所以,NRF确实是MNPF的消费者,但它是在一个更复杂的、被委托的场景中扮演这个角色。规范的服务目录表格通常只列出最直接、最典型的消费者。

Q5:这些NF提供的服务,版本是如何管理的?如果未来Nsmsf_SMService_MtForwardSm服务增加了新的可选参数,网络如何兼容?

A5:这是SBA架构中一个非常重要的工程实践问题——API版本管理。3GPP对此有详细的规定(参考TS 29.500/29.501)。

  1. 版本号:每个SBI服务都有明确的版本号(如v1, v2)。版本号通常会体现在API的URI中(例如 /nsmsf-sms/v1/messages)。

  2. 向后兼容:在同一个主版本号(v1)内,对服务的修改必须是向后兼容的。例如,增加一个新的**可选(Optional)**参数,是允许的。老的消费者不认识这个新参数,会忽略它;新的消费者则可以使用它。

  3. 破坏性变更:如果需要进行破坏性变更(如删除一个必选参数,或修改参数类型),则必须发布一个新的主版本(如v2)。

  4. 版本协商:在服务发现阶段,NRF中会注册每个NF实例支持的服务版本。服务消费者可以根据NRF的注册信息,选择与目标NF实例兼容的版本进行通信。

通过这套机制,5G核心网可以像互联网微服务一样,进行平滑、无中断的升级和演进。