N20 — AMF ⇔ SMSF (SMS over NAS)¶
Learning objectives¶
After reading this page, you will be able to:
- Explain that N20 is the core SBI (Service Based Interface) of SMS over NAS (short-message delivery via the control-plane NAS).
- Explain the flow in which a UE's SMS reaches the AMF over NAS (N1) → the AMF relays it to the SMSF over N20 → the SMSF bridges to the upper SMS infrastructure.
- Explain that the substance of N20 is the service Nsmsf_SMService (TS 29.540) provided by the SMSF.
- Explain that "reference point N20" and "service Nsmsf_SMService" are two views of the same thing.
- Explain the correspondence with 4G (EPC) SGs (MME⇔MSC) / SGd (SMS delivery).
Prerequisites¶
The following are helpful to understand first:
- The positioning of SBA / SBI and HTTP/2 · TLS → Protocol dictionary
- The NFs at both ends of N20 → AMF / SMSF
- That NAS (N1) is the control-plane signaling between UE⇔AMF → N1
- The SMSF's collaboration to register with the UDM and confirm the SMS subscription → N21
- The concept of interfaces and reference points → Interface dictionary
Why — why it is needed¶
The 5G packet core is designed on the premise of IP packet communication, but SMS (short messages) remains an important service. SMS, however, originally has a culture of being carried over control-plane signaling rather than packet data. In 5G too, rather than newly establishing a dedicated SMS user plane, a method that carries SMS over the control-plane NAS (N1) (SMS over NAS) was adopted.
In this case, a UE's SMS first reaches AMF over N1 (NAS). However, the AMF is strictly in charge of access and mobility management and is not the role that processes and delivers SMS itself. Therefore, the SMSF (SMS Function), which specializes in handling SMS, is needed, and a route by which the AMF relays SMS to the SMSF is required. This is N20. Without N20, the AMF would have no means to pass the SMS it received over NAS to the SMSF, and SMS over NAS would not hold.
Analogy: N20 is the internal mail from the reception desk (AMF) to the post office (SMSF). A user hands a letter (SMS) to the reception desk, which does not deliver it itself but forwards it to the post office. The post office bridges to the external delivery network (upper SMS infrastructure).
Overview¶
N20 is a reference point connecting AMF ⇔ SMSF. N20 is an SBI (Service Based Interface), which is decisively different from N2 (NGAP/SCTP) and N4 (PFCP/UDP). An SBI is a mechanism by which NFs call each other's services via Web APIs (HTTP), using HTTP/2 + JSON (RESTful) over TLS as the common transport.
The substance of N20 is the service Nsmsf_SMService (TS 29.540) provided by the SMSF. A UE's SMS reaches the AMF over N1 (NAS), and the AMF calls this service to relay the SMS to the SMSF over N20. The SMSF, while confirming and registering the subscriber's SMS support with UDM over N21, bridges to the upper SMS infrastructure (SMS-GMSC / IP-SM-GW / SMS-SC, etc., out of scope of this page).
Reference point N20 and service Nsmsf_SMService are two views of the same thing
In 3GPP architecture diagrams, N20 (AMF⇔SMSF) is shown as a reference point, but in the SBA (service-based) view this is implemented in substance as the SMSF service Nsmsf_SMService. In other words, "N20" and "Nsmsf_SMService" are the same AMF⇔SMSF collaboration seen from the reference-point view and the service view. Both point to the same thing; only the name (viewpoint) differs.
Basic Concept — explanation for beginners¶
Let us compare N20 to internal mail from the reception desk to the post office.
When your smartphone sends an SMS, that SMS reaches AMF carried not over data communication (the pipe) but over the control-plane NAS (N1). The AMF is like a company's reception desk and does not deliver the SMS itself. The reception desk judges "this is the job of the SMS-specialist department" and forwards the SMS to the SMSF, which corresponds to the post office. This forwarding route is N20. The SMSF bridges to the external SMS delivery network and delivers to the destination.
The reverse direction (downlink) is the return trip along the same route. An SMS arriving from the outside is received by the SMSF, passed to the AMF over N20, and delivered by the AMF to the UE over NAS (N1).
This forwarding from the AMF to the SMSF is not a dedicated telephone line (a dedicated protocol like N2 or N4); it is more like throwing a request and getting a reply over an internal web system (HTTP). This is SBI (Service Based Interface) = the mechanism by which NFs converse via Web APIs (HTTP/2). Both request and response are exchanged in JSON, a format that is easy for humans to read.
Protocol / Transport¶
| Item | Content |
|---|---|
| Protocol | HTTP/2 + JSON (RESTful) — the common stack of SBI (Service Based Interface) |
| Service | Nsmsf_SMService (provided by SMSF) — TS 29.540 |
| SBI framework | TS 29.500 / TS 29.501 family (common SBI conventions · OpenAPI definitions) |
| Lower transport | TCP, protected by TLS (confidentiality · integrity · authentication) — TS 33.501 |
| Port | The SBI listening port is implementation-dependent (resolved via the endpoint of NRF registration). No specific number is asserted |
| Characteristics | Not a dedicated L4 protocol but Web-technology based. Operated with HTTP methods (POST/PUT/DELETE) + resource URIs. RESTful |
N20 is an SBI; the NAS that carries SMS is on the N1 side
N20 is the SBI (HTTP/2 over TLS) between AMF⇔SMSF. On the other hand, what carries the SMS itself between UE⇔AMF is N1 (NAS), which is not an SBI. In SMS over NAS, the roles split as "UE⇔AMF is NAS (N1), AMF⇔SMSF is SBI (N20)." Be careful not to carry NAS/N1-specific perspectives directly into the analysis of N20.
Architecture¶
This shows the context in which N20 connects AMF and SMSF, SMS reaches the AMF from the UE over N1 (NAS), and the SMSF collaborates with the UDM over N21 and also with the external SMS network.
flowchart LR
UE["UE"]
AMF["AMF"]
SMSF["SMSF"]
UDM[("UDM")]
SMSC["SMS-GMSC / IP-SM-GW (out of scope)"]
UE -. "N1 (NAS: SMS)" .- AMF
AMF == "N20 (Nsmsf: SMService)" ==> SMSF
SMSF -. "N21" .- UDM
SMSF -. "external SMS network" .- SMSC
classDef ctrl fill:#efe,stroke:#3a3,stroke-width:2px;
class AMF,SMSF ctrl;
How to read the diagram: A UE's SMS reaches the AMF over the dashed N1 (NAS). The AMF relays the SMS to the SMSF over the thick-line (==>) N20 (SBI/HTTP2). The SMSF collaborates with the UDM over N21 to confirm and register the SMS subscription, and bridges to the external SMS network (SMS-GMSC / IP-SM-GW, etc., out of scope). Note the division of roles: N20 is "AMF⇔SMSF relay," and N1 is "UE⇔AMF SMS carriage."
Procedures used¶
N20 is used within the lifecycle of UE registration and SMS send/receive when the AMF relays SMS to the SMSF.
- SMS Activation: At UE registration and so on, the SMSF confirms the subscriber's SMS support with UDM over N21 and registers itself as the SMSF for that UE. Thereafter, that UE's SMS is handled by this SMSF.
- Uplink SMS (Mobile Originated): SMS is carried in the order UE → NAS (N1) → AMF → N20 → SMSF → external SMS network.
- Downlink SMS (Mobile Terminated): SMS arrives on the return trip: external SMS network → SMSF → N20 → AMF → NAS (N1) → UE.
The details of these procedures (message sequence, conditions, IEs, exact operation names) are to be confirmed. Whether SMS is supported and the conditions for SMSF selection depend on the configuration and Release.
Main Messages¶
Because N20 is an SBI, messages take the form of HTTP method + resource operation (RESTful operations, not a procedureCode like NGAP). The representative service operations (names are illustrative and to be confirmed) are as follows.
| Service operation (to be confirmed) | Purpose |
|---|---|
| Nsmsf_SMService_Activate (to be confirmed) | Activate the UE's SMS service · SMSF registration |
| Nsmsf_SMService_Deactivate (to be confirmed) | Deactivate the UE's SMS service · deregistration |
| Nsmsf_SMService_UplinkSMS (to be confirmed) | Relay uplink (MO) SMS from AMF→SMSF |
| Nsmsf_SMService_DownlinkSMS (to be confirmed) | Deliver downlink (MT) SMS from SMSF→AMF |
The operation names and directions are to be confirmed: The operation names in the table above (Activate/Deactivate/UplinkSMS/DownlinkSMS) are illustrations for understanding; the exact names, methods, resource URIs, and invocation directions follow the OpenAPI definition of TS 29.540. The strict assignment is to be confirmed. For details of each message, refer to the Message dictionary.
Packet Analysis (Wireshark)¶
Because N20 is an SBI, it is observed on capture as HTTP/2 (an L4-dedicated protocol like NGAP/SCTP does not appear). Note that the NAS part carrying the SMS body is observed separately on the N1 side.
| Purpose | Display Filter |
|---|---|
| Extract HTTP/2 messages | http2 |
| Narrow by header path (conceptual) | http2.headers.path (the :path includes nsmsf-sms. The value is to be confirmed) |
| View the JSON body | json (after decryption) |
Decode highlights:
- N20 is encrypted with TLS. To see the contents (HTTP/2 headers and JSON body), a decryption key (TLS session keys, etc.) is required. Without the key, it is only visible as the encrypted payload of
tls. - If you can decrypt, you can identify the operation from the HTTP/2 headers (
:method, the:pathincludes a resource path containing.../nsmsf-sms/...; the path value is to be confirmed). - The body is JSON (control information about SMS delivery), stored in a human-readable structure.
- The SMS content itself (the SMS payload over NAS) is carried on the N1 (NAS) side, so it is not complete from the N20 capture alone. You need to view it together with observation on the N1 side.
Comparison with EPC¶
- In 4G: SMS, separate from the packet network, collaborated with the MSC of the CS (circuit-switched) network over SGs (MME ⇔ MSC) and performed SMS delivery over SGd (for SMS delivery) (Diameter / MAP family signaling). In other words, the form in which SMS transited the MSC/CS network remained.
- In 5G: The SMSF, which specializes in handling SMS, was introduced, and as SMS over NAS, SMS is carried over the control-plane NAS, with AMF⇔SMSF collaborating via N20 (Nsmsf_SMService) turned into an SBI. The SMS handling that 4G's SGs/SGd were responsible for is, in 5G, handled by the SMSF + N20.
| 4G (EPC) | 5G (5GC) |
|---|---|
| SGs (MME ⇔ MSC) + SGd (SMS delivery) | N20 (AMF ⇔ SMSF) |
| Diameter / MAP family (dedicated signaling) | SBI: HTTP/2 + JSON over TLS |
| — (individually specified per legacy IF) | TS 29.540 (Nsmsf_SMService) |
| Via MSC / CS network | SMSF (completed with control-plane NAS + SBI) |
Note (to be confirmed): The correspondence that 4G's SGs/SGd-based SMS is replaced by SMSF + N20 in 5G is a conceptual arrangement. The strict mapping of SGs/SGd to N20 and the details of each procedure differ by Release and configuration, so they are to be confirmed. Details of the upper SMS infrastructure (SMS-GMSC / IP-SM-GW / SMS-SC) are out of scope of this page.
3GPP Specification¶
- 3GPP TS 29.540 — Nsmsf_SMService service (SMS over NAS, N20). Individual clause numbers are to be confirmed
- 3GPP TS 23.501 §6.2.13 — Role and definition of the SMSF (SMS Function)
- 3GPP TS 23.502 — SMS-related procedures (SMS activation, MO/MT SMS procedures). Individual clause numbers are to be confirmed
- 3GPP TS 29.500 / TS 29.501 — SBI framework (technical conventions / design principles · OpenAPI). Individual clause numbers are to be confirmed
- 3GPP TS 33.501 — SBI security (TLS, etc.). Individual clause numbers are to be confirmed
Note (to be confirmed): That the substance of N20 is Nsmsf_SMService (TS 29.540), and that reference point N20 and service Nsmsf are two views of the same collaboration, are general arrangements of the 3GPP architecture. The exact names, resource URIs, and clause numbers of each service operation differ by Release, so they are individually to be confirmed.
Summary¶
- N20 is a reference point connecting AMF ⇔ SMSF and is an SBI (Service Based Interface) (the protocol is HTTP/2 + JSON over TLS).
- The core of SMS over NAS: a UE's SMS reaches the AMF over NAS (N1), the AMF relays it to the SMSF over N20, and the SMSF bridges to the upper SMS infrastructure.
- The substance of N20 is the SMSF service Nsmsf_SMService (TS 29.540). Reference point N20 = service Nsmsf_SMService are two views of the same collaboration.
- The SMSF collaborates with UDM over N21 to confirm and register the subscriber's SMS support.
- It corresponds to the SMS handling that 4G's SGs (MME⇔MSC) / SGd (SMS delivery) were responsible for; in 5G the SMSF + N20 handle it (the correspondence is to be confirmed).
Next Step¶
- SMSF — the other side of N20. The NF responsible for SMS over NAS
- N21 — the reference point where the SMSF collaborates with the UDM to confirm the SMS subscription
- AMF — the NF that receives SMS over NAS (N1) and relays it to the SMSF over N20
- Interface dictionary — check reference points such as N1 and N21
- Message dictionary / Protocol dictionary — check terms · SBI protocols