Why Network Functions Matter in 5G Core
The 5G Core (5GC) architecture defined in 3GPP TS 23.501 replaced the monolithic EPC entities of 4G with a set of modular, cloud-native Network Functions (NFs). Each NF exposes services through HTTP/2-based APIs on the Service-Based Interface (SBI), enabling independent scaling, deployment, and upgrade cycles. Understanding what each NF does -- and how AMF, SMF, and UPF divide labor -- is essential for anyone designing, deploying, or troubleshooting a 5G network.
The 5GC follows a Control and User Plane Separation (CUPS) philosophy inherited from 3GPP Release 14 but taken much further. The AMF handles mobility and connection management on the control plane. The SMF manages session state and QoS policy. The UPF handles all user-plane packet forwarding. This three-way split is the architectural backbone of every 5G standalone deployment.
Complete 5G Core Network Function Reference
The table below lists every NF defined in 3GPP TS 23.501 Release 17, including their primary responsibility and key interfaces.
| # | Network Function | Full Name | Primary Responsibility | Key Interface(s) |
|---|---|---|---|---|
| 1 | AMF | Access and Mobility Management Function | Registration, connection, mobility, security anchor | N1 (UE), N2 (gNB), Namf (SBI) |
| 2 | SMF | Session Management Function | PDU session establishment, QoS, UPF selection | N4 (UPF), Nsmf (SBI) |
| 3 | UPF | User Plane Function | Packet forwarding, QoS enforcement, DPI | N3 (gNB), N6 (DN), N9 (inter-UPF) |
| 4 | NRF | NF Repository Function | NF discovery and registration | Nnrf (SBI) |
| 5 | NSSF | Network Slice Selection Function | Slice selection, AMF reallocation | Nnssf (SBI) |
| 6 | AUSF | Authentication Server Function | 5G-AKA and EAP-AKA authentication | Nausf (SBI) |
| 7 | UDM | Unified Data Management | Subscription data, authentication credentials | Nudm (SBI) |
| 8 | UDR | Unified Data Repository | Persistent data storage for UDM, PCF, NEF | Nudr (SBI) |
| 9 | PCF | Policy Control Function | Policy rules, QoS decisions, charging rules | Npcf (SBI) |
| 10 | NEF | Network Exposure Function | API exposure to external AFs | Nnef (SBI) |
| 11 | AF | Application Function | Application-level signaling to core | Naf (SBI) |
| 12 | NWDAF | Network Data Analytics Function | Data collection and ML-based analytics | Nnwdaf (SBI) |
| 13 | CHF | Charging Function | Converged online/offline charging | Nchf (SBI) |
| 14 | SEPP | Security Edge Protection Proxy | Inter-PLMN security filtering | N32 (inter-PLMN) |
| 15 | SCP | Service Communication Proxy | Message routing, load balancing on SBI | Indirect SBI routing |
| 16 | SMSF | SMS Function | SMS over NAS delivery | Nsmsf (SBI) |
| 17 | LMF | Location Management Function | UE positioning via NR measurements | Nlmf (SBI) |
AMF vs SMF vs UPF Deep Comparison
These three NFs form the operational core of any 5GC deployment. The table below compares them across eight critical dimensions.
| Dimension | AMF | SMF | UPF |
|---|---|---|---|
| Plane | Control plane | Control plane | User plane |
| State managed | UE registration, connection, security context | PDU session, QoS flows, UPF binding | Forwarding rules (PFCP), GTP tunnels |
| Protocol to RAN | NGAP over N2 (SCTP) | None directly (via AMF relay) | GTP-U over N3 (UDP) |
| Protocol to UE | NAS-MM over N1 | NAS-SM over N1 (via AMF) | User data over PDU session |
| Scaling trigger | Number of connected UEs | Number of active PDU sessions | Throughput (Gbps), packet rate (Mpps) |
| Typical instance count | 2--6 per region (T-Mobile US) | 4--10 per region | 20--100+ per metro (distributed) |
| Failure impact | All UEs in AMF set lose connectivity | Active sessions on that SMF lost | Traffic for sessions anchored to that UPF dropped |
| Stateless design | Possible with external state store (e.g., Redis) | Possible with external state store | Inherently stateless (rules pushed via PFCP) |
| Latency sensitivity | Medium (signaling) | Medium (signaling) | High (user data, sub-ms forwarding) |
PDU Session Establishment -- NF Interaction Walkthrough
This procedure (3GPP TS 23.502 Section 4.3.2) demonstrates how AMF, SMF, UPF, and supporting NFs interact. The following step-by-step walkthrough shows the message flow for a UE establishing a PDU session.
Step 1 -- UE sends PDU Session Establishment Request to AMF:The UE encapsulates the NAS-SM message (including requested S-NSSAI and DNN) inside a NAS-MM message sent over the N1 interface. The AMF extracts the SM portion.
Step 2 -- AMF selects SMF:The AMF queries the NRF (Nnrf_NFDiscovery) to find an SMF serving the requested S-NSSAI and DNN. If the UE already has sessions, the AMF may reuse the existing SMF based on the SM context.
Step 3 -- AMF forwards SM request to SMF:The AMF invokes Nsmf_PDUSession_CreateSMContext on the selected SMF, passing the NAS-SM payload, UE subscription data reference, and serving network information.
Step 4 -- SMF retrieves subscription data:The SMF calls Nudm_SDM_Get to retrieve the UE session management subscription data, including allowed DNNs, QoS profiles, and charging parameters.
Step 5 -- SMF retrieves policy:The SMF invokes Npcf_SMPolicyControl_Create on the PCF. The PCF returns PCC rules including authorized QoS, gating, and charging rules.
Step 6 -- SMF selects UPF:Based on the DNN, slice, UE location, and operator policy, the SMF selects a UPF. Selection criteria include geographic proximity, supported features (e.g., edge computing), and current load. The SMF may select an intermediate UPF (I-UPF) and a PDU session anchor (PSA) UPF.
Step 7 -- SMF establishes PFCP session with UPF:The SMF sends a PFCP Session Establishment Request to the UPF over the N4 interface (3GPP TS 29.244). This message contains Packet Detection Rules (PDRs), Forwarding Action Rules (FARs), and QoS Enforcement Rules (QERs).
Step 8 -- SMF sends N2 SM information to AMF:The SMF returns the N2 SM information container (including GTP tunnel endpoint for the UPF on N3) to the AMF.
Step 9 -- AMF sends NGAP PDU Session Resource Setup to gNB:The AMF sends the NGAP PDU Session Resource Setup Request to the gNB over N2, including the GTP-U TEID for the UPF N3 endpoint and QoS flow parameters.
Step 10 -- gNB configures radio and responds:The gNB allocates radio resources, configures DRBs, sends RRC Reconfiguration to the UE, and returns the NGAP PDU Session Resource Setup Response (including the gNB N3 GTP-U TEID) to the AMF.
Step 11 -- AMF forwards N2 response to SMF:The AMF invokes Nsmf_PDUSession_UpdateSMContext on the SMF with the gNB TEID.
Step 12 -- SMF updates UPF with gNB TEID:The SMF sends a PFCP Session Modification Request to the UPF, providing the downlink GTP tunnel endpoint (gNB TEID on N3). The UPF can now forward downlink packets.
Worked Example -- PDU Session Setup Timing
Consider a UE on T-Mobile 5G SA requesting a PDU session for internet access (DNN = internet, SST = 1):
- NAS message encoding and transmission (Step 1): ~15 ms
- NRF discovery (Step 2): ~5 ms (cached NRF response)
- AMF-to-SMF SM context creation (Step 3): ~8 ms
- UDM subscription retrieval (Step 4): ~12 ms
- PCF policy fetch (Step 5): ~10 ms
- UPF selection algorithm (Step 6): ~2 ms
- PFCP session establishment (Step 7): ~6 ms
- N2 signaling round trip AMF-gNB (Steps 8--10): ~15 ms
- SMF context update and PFCP modification (Steps 11--12): ~10 ms
- Total estimated: ~83 ms
Rakuten Mobile reported median PDU session setup latency of 120 ms in their production network, with the P95 at 190 ms. The difference from the theoretical estimate accounts for inter-DC transport, pod scheduling, and real-world load.
Worked Example -- AMF Pool Dimensioning
An operator plans to serve 5 million 5G SA subscribers in a region. Dimensioning the AMF pool:
- Simultaneous connected UEs (busy hour): 5,000,000 x 0.35 (activity factor) = 1,750,000
- Each AMF instance capacity: 500,000 connected UEs (vendor-specified limit)
- Required AMF instances: 1,750,000 / 500,000 = 3.5 -> 4 active instances
- Add N+1 redundancy: 5 total AMF instances
- Each AMF handles: registration procedures (~50/sec), handovers (~200/sec during mobility peaks), service requests (~1,000/sec)
- CPU sizing per AMF pod: ~16 vCPU, 32 GB RAM (based on Nokia NCAM and Ericsson CCSM reference data)
This matches T-Mobile's reported deployment of 4 active AMF instances per region with redundancy.
Scaling Considerations per NF
| NF | Primary Scaling Metric | Horizontal Scaling | Bottleneck Risk | Typical K8s Resource |
|---|---|---|---|---|
| AMF | Connected UEs | Yes (AMF set with GUAMI partitioning) | NAS message processing at scale | 16 vCPU, 32 GB per pod |
| SMF | Active PDU sessions | Yes (session distribution via NRF) | Policy fetch latency from PCF | 8 vCPU, 16 GB per pod |
| UPF | Throughput (Gbps) and PPS | Yes (multiple UPFs per DNN/slice) | Data-plane forwarding at line rate | SR-IOV or DPDK, 8--32 vCPU, dedicated NIC |
| NRF | NF discovery requests/sec | Yes (read-heavy, cacheable) | Database consistency in multi-site | 4 vCPU, 8 GB per pod |
| PCF | Policy decision requests/sec | Yes (stateless decisions) | Backend policy DB latency | 8 vCPU, 16 GB per pod |
| UDM | Subscription data queries/sec | Yes (read replicas) | UDR database I/O | 4 vCPU, 8 GB per pod |
| AUSF | Authentication procedures/sec | Yes (stateless) | Burst during mass re-registration | 4 vCPU, 8 GB per pod |
Key Takeaways
The AMF, SMF, and UPF form the operational backbone of every 5G SA core. AMF manages the control-plane relationship with the RAN and UE. SMF orchestrates session lifecycle and QoS through policy integration. UPF performs the heavy lifting of user-plane packet forwarding with latency-critical performance. Each NF scales independently -- AMF by connected UEs, SMF by session count, and UPF by throughput -- enabling operators to right-size deployments from rural single-site cores to dense metro edge networks.
Key Takeaway: The 15+ network functions in 5GC each serve a specific, well-bounded purpose. AMF, SMF, and UPF are the three you must understand first because they participate in every PDU session and form the minimum viable 5G SA core.