5G/NR - Network Architecture - AMF  

 

 

 

NR CORE - AMF

AMF plays the most crtical(central) roles in 5G core network. Simply put, AMF is a central control box or central hub of the whole 5G core network.

The Major role of AMF is to handle NAS message from UE. This NAS message would mostly comes from RAN (gNB) but theoretically it can come from other Non 3GPP components. As shown below, the communication between AMF and RAN is going through N1 interface. I wrote a separate notes for N1 interface / N1 mode itself. In this note, I would focus mostly on handling each NAS message with examples.  There are some functionalities done by AMF only and some other functions that AMF need to communicate with other network components. In this note, I would mostly focus on those functions that are done by AMF only.

 

Followings are the name of each network component.

    AMF     Access and Mobility Management Function ==> Equivalent to MME in 4G

    AUSF    Authentication Server Function

    DN       Data Network

    NEF      Network Exposure Function

    NRF      Network Repository Function

    NSSF    Network Slice Selection Function

    PCF      Policy Control Function ==> Equivalent to PCRF in 5G

    (R)AN   (Radio) Access Network

    SMF     Session Management Function

    UDM     Unified Data Management ==> Equivalent to HSS in 4G

    UPF      User Plane Function ==> Equivalent to PGW in 4G

    SMSF   SMS Function

    SEAF    SEcurity Anchor Function ==> part of AMF function

    ARPF    Authentication credential Repository and Processing Function

    SIDF    Subscription Identifier De-concealing Function

Followings are the topics to be covered in this note.

AMF Functionality/Services

The AMF handles critical control plane functions like registration management, connection management, reachability management, mobility management and access authentication. It interacts with other core network functions and external entities via service-based interfaces like Namf.

Since AMF has so many different functionailties and interactions, we can take a look at it with various different perspective. In this section, I will try to describe AMF functionalities in a few different ways/perspective, so that you can get the understanding on AMF with different angles.

First let's look into AMF with the perspective of registration management, connection management, reachability management, mobility management and access authentication.

  • Registration Management:
    • Allows UE to register and deregister with 5G network
    • Handles initial registration to authorize UE and create UE context
    • Manages periodic registration updates to verify UE status
  • Connection Management:
    • Establishes and releases control plane N1 signaling connections with UE
    • Manages transitions between CM-Idle and CM-Connected states
  • Reachability Management:
    • Ensures UE is reachable for mobile-terminated connections
    • Uses paging to trigger idle UEs to establish connections
  • Mobility Management:
    • Maintains knowledge of UE location within network
    • Manages mobility tracking area updates
    • Handles Xn handovers between gNB base stations
  • Access Authentication:
    • Authenticates UEs during initial registration and periodic updates
    • Verifies UE identity and validity of SIM credentials
    • Authorizes UE access to 5G services and network

As a view with different angle, the functionality of AMF function can be summarized well by the AMF source code itself if you have access to.  As an example, following is the list of major fucntionalities written in the source code from free5gc (I wrote a note on how to get and install free5gc if you are interested).  It is completely OK that you don't have the code, just taking a lot at the list of major functions would give you pretty good idea on AMF functionality. This is from file : free5gc\NFs\amf\gmm\handler.go. For the details of what AMF does, I would suggest you to refer to the note NGAP and I will just put high level description in this page.

  • HandleInitialRegistration
  • HandleRegistrationRequest
  • HandleIdentityResponse
  • HandleMobilityAndPeriodicRegistrationUpdating
  • HandleNotificationResponse
  • HandleConfigurationUpdateComplete
  • HandleAuthenticationResponse
  • HandleAuthenticationError
  • HandleAuthenticationFailure
  • HandleSecurityModeComplete
  • HandleRegistrationComplete
  • HandleULNASTransport
  • HandleServiceRequest
  • handleRequestedNssai
  • HandleSecurityModeReject
  • HandleDeregistrationRequest
  • HandleDeregistrationAccept
  • HandleStatus5GMM
  • forward5GSMMessageToSMF
  • communicateWithUDM
  • AuthenticationProcedure

Now let's describe on AMF functionality in terms of service function(service API).  Formal specification of AMF is described in 29.518 and the list of services that AMF provides are summarized in a table shown below.

< 29.518 - Table 5.1-1 List of AMF Services >

 

Service Operations

Operation Semantics

Example Consumer(s)

Namf_Communication

UEContextTransfer

Request/Response

Peer AMF

RegistrationStatusUpdate

Request/Response

Peer AMF

CreateUEContext

Request/Response

Peer AMF

N1N2MessageNotify

Subscribe/Notify

LMF, AMF, PCF

N2InfoNotify

LMF, AMF

N1N2MessageSubscribe

PCF

N1N2MessageUnSubscribe

PCF

N1N2MessageTransfer

Request/Response

Peer AMF, SMF, SMSF, LMF, PCF

N1N2TransferFailureNotification

Subscribe/Notify

SMF, SMSF, LMF, PCF

NonUE2NMessageTransfer

Subscribe/Notify

CBCF, PWS-IWF

NonUE2NInfoSubscribe

CBCF, PWS-IWF

NonUE2NInfoNotify

LMF, CBCF, PWS-IWF

EBIAssignment

Request/Response

SMF

AMFStatusChangeSubscribe

Subscribe / Notify

SMF, PCF, NEF, SMSF, UDM

AMFStatusChangeUnSubscribe

Subscribe / Notify

SMF, PCF, NEF, SMSF, UDM

AMFStatusChangeNotify

Subscribe / Notify

SMF, PCF, NEF, SMSF, UDM

Namf_EventExposure

Subscribe (see NOTE)

Subscribe/Notify

NEF, SMF, UDM, NWDAF, LMF, GMLC, DCCF

Unsubscribe (see NOTE)

Subscribe/Notify

NEF, SMF, UDM, NWDAF, LMF, GMLC, DCCF

Notify

Subscribe/Notify

NEF, SMF, UDM, NWDAF, LMF, GMLC, DCCF

Namf_MT

EnableUEReachability

Request/Response

SMSF

ProvideDomainSelectionInfo

Request/Response

UDM

EnableGroupReachability

Request/Response

SMF

UEReachabilityInfoNotify

Subscribe/Notify

SMF

Namf_Location

ProvidePositioningInfo

Request/Response

GMLC

EventNotify

Subscribe / Notify

GMLC

ProvideLocationInfo

Request/Response

UDM

CancelLocation

Request/Response

GMLC

Namf_MBSBroadcast

ContextCreate

Request/Response

MB-SMF

ContextUpdate

Request/Response

MB-SMF

ContextRelease

Request/Response

MB-SMF

ContextStatusNotify

Subscribe / Notify

MB-SMF

Namf_MBSSCommunication

N2MessageTransfer

Request/Response

MB-SMF

NOTE : A subscription applies for one UE, group of UE(s) or any UE

Highlights of this table can be summarized as below.

  • Namf_Communication:
    • Manages UE context transfer with peer AMFs during mobility
    • Handles UE registration status updates with peer AMFs
    • Creates UE contexts on demand
    • N1N2MessageTransfer:
      • Handles N1/N2 message transfer, failure notification and information subscription/notification
    • AMFStatusChangeNotify:
      • Enables subscriptions and notifications on AMF status changes
    • EBIAssignment:
      • Assigns PDU session IDs and tunnel endpoints
  • Namf_MT:
    • Enables UE reachability for delivering mobile terminated SMS
    • Provides domain selection info to support SMS delivery
  • Namf_Location:
    • Provides positioning info to support location services
    • Subscribes to location event notifications
  • Namf_EventExposure:
    • Allows other CNFs to subscribe and receive notifications on UE context events
  • Namf_MBSBroadcast:
    • Supports dedicated broadcast SMF contexts for MBMS
  • Namf_MBSSCommunication:
    • Provides N2 interface messaging with MBMS-SMF

Interfaces around AMF

AMF is the center of the whole 5G core network with the most diverse interface with other core network components. Followings are the network interfaces connected to AMF and corresponding 3GPP specification.

Interface

Relationship

3GPP Specification

N1

Between UE and AMF

24.501

N2

Between R(AN) and AMF

38.413

N8

Between AMF and UDM

29.503

N11 (Namf)

Between AMF and SMF

29.518

N11 (Nsmf)

Between AMF and SMF

29.502

N12

Between AUSF and AMF

29.509

N14

Between AMF and AMF

29.518

N15

Between AMF and PCF

29.507

Before AMF start NAS handling

Even though this is not the main contents of this note, I think I need to put some short comments on this at least. Before AMF start handling NAS message, the interface and protocol between AMF and gNB should be established. Usually this process is printed just in a few lines in the trace log, but this establishement process itself is pretty complicated. I have three separate notes only for this process as listed below.  What AMF is doing is described mostly by NGAP page.

Signaling (Message flow between gNB and AMF) - N2 Interface

Following is the signaling procedure of NR SA attach. Roughly speaking that NGAP traces are the ones handled by AMF. Just take a look at the overal procedure and for the details refer to the note NGAP. At first, I was thinking of AMF details in this page but I thought it may be confusing or duplicating NGAP note. So I decided to put all the details in NGAP note and put overall / high level description in this note.

NOTE : The signaling message reaching to AMF through N2 interfaces will be conveyed to various other core network components via correponding interfaces. The signaling through other interfaces will be explained in other notes. Check out Interfaces around AMF to reach out to the corresponding interfaces.

This log is captured from Amari Callbox + Commercial UE. The wireshark log in NGAP note is captured from NIC on Core Network PC.

Check out this tutorial on Amarisoft TechAcademy to get the entire log.

Reference

YouTube