SMF is a session management function in 5G architecture and acts as the anchor point to communicate with UPF (User Plane Function). SD-Core SMF supports interaction with multiple UPFs. SMF supports handling dynamic slice configuration, removal and modification.
SMF has configuration interface to handle slice configuration. Config service is realised using the project - Config Service. SMF exports metrics to prometheus.
- Supports PDU Session Establishment, Modification, Release
- N2/X2 handover
- End Marker Indication to UPF
- PfcpSessionReport
- N1N2MessageTransferFailureNotification handling Callback handling
- Slice based UPF selection
- UE address pool per Slice
- PFCP heartbeat towards UPF
- UE IP-Address allocation via UPF
- QoS call flows in SMF to handle PCC rules in Create Session Policy Response and installing those rules in UPF & UE
- High Availibilty and Cloud Native support(scale up/down number of instances and subscriber store in Database)
- UPF-Adapter for PFCP registration of multiple SMF instances with same node-id to any UPF
- Keep-alive support with respect to NRF
- Transaction queueing for the same PDU session
- SMF metrics available via metric-func to 5g Grafana dashboard
- Static IP-address provision via configuration
This includes some of the handling as listed below
- UPF Reconnect if UPF restarts
- PFCP Heartbeat handling towards UPF
- PFCP Transaction timeout and not to wait forever
- SBI message timeout handling and handling timeouts
- Registration towards NRF with updated configuration
- Retrying NRF registration if NRF is not available
- Policy Notify from PCF for QoS update
Compliance of the 5G Network functions can be found at 5G Compliance
Design section for SMF is available at SMF Design
Refer to the SD-Core documentation
- #sdcore-dev channel in ONF Community Slack
- Raise Github issues