Location Services

Table 1. Feature History

Feature Name

Release Information

Description

MT-LR Location Services

2024.02.0

AMF supports the MT-LR location services using the Location Management Function (LMF) to determine the accurate position and location of the UE. AMF uses the MT-LR location services for regulatory requirements.

Default Setting: Disabled – Configuration Required

Feature Description

AMF supports the Mobile-Terminated Location Request (MT-LR) location services for regulatory requirements (Emergency call and Lawful intercept). MT-LR determines the location of the mobile device when receiving incoming calls or messages. The primary purpose of MT-LR is to provide accurate location data to the network.

AMF supports two types of location request, "current location" and "current or last known location". In case of "current or last known location" if the paging for UE fails or positioning fails due to any of the associated nodes, such as: LMF, UE, or gNB, then AMF returns the last known saved location if available.


Note


  • LMF selection is done on the basis of local configuration.

  • AMF does not support the LMF discovery using the NRF.

  • AMF does not support concurrent location request for the same UE. AMF aborts the processing of previous request and continues with the new request.


Architecture

Location Service consists of the following layers as part of the non-roaming location services architecture:

  • UE: The UE represents end-user devices, such as smart phones, tablets, or IoT devices. These devices interact with the network.

  • GMLC: GMLC provides the location information services related to mobile devices.

  • LCS Client: The LCS client is an external entity or application that requests location information for a specific mobile device.

  • LRF: The LRF is a component within the Location Services (LCS) architecture in cellular networks. LRF retrieves and provides the location information for mobile devices or user equipment (UE).

  • LMF: The LMF determines the geographical location of the UE.

  • AMF: The AMF is a key component in 5G networks. It manages mobility, session management, and security for user devices.

  • UDM: The UDM handles user-related data, including authentication, authorization, and subscription information.

  • RAN: The RAN connects user devices to the core network. It includes base stations and antennas.

  • N1 Interface: The N1 interface connects the UE and the RAN. It carries user data and control signaling.

  • N2 Interface: The N2 interface connects the AMF and the RAN. It handles signaling and data transfer between the core network and the RAN.

  • NL1 Interface: NL1 interface connects the LMF to the UE.

  • NL2 Interface: NL2 interface connects the AMF to the GMLC.

The following diagram describes the high level architecture for location services.

Figure 1. Non-roaming Location Services

How it Works

Once an emergency session is active, it starts a location service by contacting a GMLC. The GMLC then discovers the AMF that is responsible for the call. The GMLC sends a provide positioning info request to AMF. If the UE is IDLE, the AMF pages the UE.

When the UE is active, the AMF selects an LMF using local configuration. AMF sends a location request to the LMF. AMF generates a correlation identifier and uses it for various communications between the AMF and LMF.

Multiple message exchange happens between the following nodes and the UE to determine the location.

  • LMF

  • AMF

  • gNB

  • UE

LMF responds to the request from AMF with the location of the UE. AMF sends this location to the GMLC that requested the information.

Call Flows

This section describes the key call flows for this feature.

MT-LR Location Service Call Flow

The following call flow and messages between the various nodes complies with the 3GPP TS 123.273.

UE Positioning Call Flow

The following call flow and messages between the various nodes complies with the 3GPP TS 123.273.

Standard Compliance

This feature complies with the following standards specifications:

  • 3GPP TS 23.271 “Description of Location Services (LCS)

  • 3GPP 23.273 v16.4 “5G System (5GS) Location Services (LCS)

  • 3GPP TS 29.572 “5G System; Location Management Services

  • 3GPP TS 29.515 “5G System; Gateway Mobile Location Services

LMF Configuration

To enable LMF, use the following configuration.

config 
    amf-global 
       location 
       positioning 
       use-lmf 
       end 

NOTES:

  • location —Specify the location services or settings within the AMF’s global configuration. By default, this feature is disabled.

  • positioning —Specify the positioning methods or protocols for determining the location of UE.

  • use-lmf —Specify the LMF for positioning services. The LMF is responsible for providing positioning information of UEs in the network.

Configuration Verification

Following is the CLI to verify the configuration:

show running-config amf-global location 
location positioning use-lmf
exit

Configuring LMF in Network Element Profile List

To configure LMF in the network element profile list, use the following configuration:

config 
    amf-global 
        operator-policy policy_name 
            ccp-name ccp_name 
               network-element-profile-list lmf lmf_name 
               end 

NOTES:

  • ccp-name ccp_name —Specify the Configuration Control Point (CCP) name. The CCP is used for managing and controlling configuration settings.

  • network-element-profile-list lmf lmf_name —Specify the name of LMF with the network element profile.

Configuring the Profile NF Client

To configure the profile NF-client, use the following configuration:

config 
    profile nf-client nf-type nf_client_name 
        lmf-profile lmf_profile_name 
            locality locality_name 
                priority priority_value 
                service name type nlmf-loc 
                    endpoint-profile profile_name 
                        capacity capacity_value 
                        default-notification-subscriptions  subscriptions_name  
                           n1-message-class  n1_message_class_type  
                           notification-type  notification_message_type  
                           callback-uri  callback_uri_url  
                           uri-scheme uri_scheme_name 
                           version 
                           uri-version uri_version 
                           endpoint-name end_point_name 
                           priority priority_value 
                           primary ip-address ipv4 ipv4_address 
                           primary ip-address port ipv4_port_number 
                           end 

NOTES:

  • profile nf-client nf-type nf_client_name —Specify the profile name of the NF client.

  • lmf-profile profile_name —Specify the profile name for the NSSF.

  • locality locality_name —Specify the locality name within the NSSF profile.

  • priority priority_value —Specify the priority value of the locality name within the NSSF profile.

  • endpoint-profile profile_name —Specify the associated end point profile name.

  • capacity capacity_value —Specify the capacity of the endpoint.

  • default-notification-subscriptions default_notification_subscriptions_name —Specify the name of the default notification subscriptions.

  • n1-message-class n1_message_class_type —Specify the n1 message class.

  • notification-type notification_message_type —Specify the type of notification message.

  • callback-uri callback_uri_url —Specify the URL for the callback uri.

  • uri-scheme uri_scheme_name —Specify the uri scheme associated with the endpoint.

  • uri-version uri_version —Specify the uri version associated with the endpoint.

Configuration Example

Following is an example configuration.

profile nf-client nf-type lmf
 lmf-profile LMF1
  locality LOC1
   priority 30
   service name type nlmf-loc
    endpoint-profile EP1
     capacity   30
     uri-scheme http
     endpoint-name EP1
      priority 56
      capacity 100
      default-notification-subscriptions <name>
       n1-message-class LCS/LPP
       notification-type N1_MESSAGES
       callback-uri <URL>
       exit
      primary ip-address ipv4 172.16.186.13
      primary ip-address port 8047
     exit
    exit

Configuring the Profile Network Element

To configure the profile network element, use the following configuration:

config 
 profile network-element lmf lmf_name 
  nf-client-profile nf_client_name 
  failure-handling-profile failure_handling_profile_name 
  end 

NOTES:

  • profile network-element lmf lmf_name —Specify the profile name for the network element.

  • nf-client-profile nf_client_name —Specify the network function client profile name.

  • failure-handling-profile failure_handling_profile_name —Specify the failure handling profile name.

Configuring Failure Handling Profile

To configure the profile NF-client-failure, use the following configuration:

config 
    profile nf-client-failure nf-type nssf lmf_name 
        profile failure-handling failure_handling_profile_name 
            service name type nlmf-loc 
                responsetimeout timeout_value 
                    message type LmfDetermineLocation 
                        status-code httpv2 503 
                        retry retry_count 
                        action retry-and-ignore 
                        end 

NOTES:

  • profile nf-client-failure nf-type lmf nssf_name —Specify NF client failure profile.

  • profile failure-handling failure_handling_profile_name —Specify failure-handling profile name.

  • responsetimeout timeout_value —Specify the response timeout for the specified services.

  • retry retry_count —Specify the retry count for the status code.

The following is an example configuration.

profile nf-client-failure nf-type lmf
 profile failure-handling FH1
  service name type nlmf-loc
   responsetimeout  10
   message type LmfDetermineLocation
    status-code httpv2 403
     retry  3
     action retry-and-continue
    exit
   message type LmfN1MessageNotify
     status-code httpv2 403
     retransmit          3
     retransmit-interval 2000
     action retry-and-continue
    exit
   message type LmfN2InfoNotify
     status-code httpv2 403
     retransmit          3
     retransmit-interval 2000
     action retry-and-continue
    exit
   exit
  exit
 exit
exit

Configuring the Profile NF-pair NF-type

To configure the profile NF-pair NF-type, use the following configuration:

config 
    profile nf-pair nf-type nf_type_name 
        locality client client_name 
        locality preferred-server server_name 
        locality geo-server server_name 
        end 

NOTES:

  • profile nf-pair nf-type nf_type_name —Specify NF (Network Function) type name.

  • locality client client_name —Specify the locality name for the client.

  • locality preferred-server server_name —Specify the server name as the preferred server locality.

  • locality geo-server server_name —Specify the geographical location for the geo-server.


Note


Each endpoint-profile can contain multiple endpoints. Each endpoint contains defaultNotificationCallback under endpoint-name. So, instead of configuring primary and secondary within one endpoint, it is advisable to configure them under different endpoint names in an endpoint profile to ensure separate defaultNotificationCallback for each endpoint.


OAM Support

This section describes operations, administration, and maintenance support for this feature.

Bulk Statistics Support

The following statistics are supported for the MTLR Location Services feature.

LMF STATS Under nl1_service_stats

Following are the LMF STATS records under nl1_service_stats.

Messages

Metrics Message Type

Determine Req & Rsp

NlmfDetermineLocReq

NlmfDetermineLocRsp

N1N2MessageTransfer

NlmfN1N2MessageTransferReq

NlmfN1N2MessageTransferRsp

NlmfNonUEN2MessageTransferRequest

NlmfNonUEN2MessageTransferResponse

N1 Message Notify

NlmfN1MessageNotifyRequest

NlmfN1MessageNotifyResponse

N2 Message Notify

NlmfN2InfoNotifyRequest

NlmfN2InfoNotifyResponse

NlmfNonUEN2InfoNotifyRequest

NlmfNonUEN2InfoNotifyResponse

N1N2 Failure Notification

NlmfN1N2MessageTransferfailurenotifyReq

NlmfN1N2MessageTransferfailurenotifyRsp

Following are the examples of stats output:

  • nl1_service_stats{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="0",
    message_type="NlmfN1N2MessageTransferReq",reason="",roaming_status="HOMER",
    service_name="amf-service",slice_data="_2-333333",status="success"} 2
  • nl1_service_stats{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="2",
    message_type="NlmfN1N2MessageTransferReq",reason="Invalid Input",roaming_status="HOMER",
    service_name="amf-service",slice_data="_2-333333",status="failures"} 2
  • nl1_service_stats{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="2",
    message_type="NlmfN1N2MessageTransferReq",reason="Invalid LCS Correlation ID",roaming_status="HOMER",
    service_name="amf-service",slice_data="_2-333333",status="failures"} 3
  • n11_service_stats{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="2",
    message_type="NlmfN1N2MessageTransferfailurenotifyReq",reason="",
    roaming_status="HOMER",service_name="amf-service",slice_data="_2-333333",status="success"} 3
  • n11_service_stats{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="2",
    message_type="NlmfN1N2MessageTransferfailurenotifyRsp",reason="",roaming_status="HOMER",
    service_name="amf-service",slice_data="_2-333333",status="success"} 3
  • nl1_service_stats{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="0", 
    message_type=" NlmfNonUEN2MessageTransferRequest ", reason="", roaming_status=" ", 
    service_name="amf-service", slice_data="", status="success"} 1

GMLC STATS Under nl2_service_stats

Following are the GMLC STATS records under nl2_service_stats.

Messages

Metrics Message Type

Provide position Req & Rsp

NgmlcRequestPositiongInfo

NgmlcProvidePositiongInfoRsp

Following is the example of stats output:

nl2_service_stats{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="0",
message_type="NgmlcProvidePositiongInfoRsp",reason="",roaming_status="HOMER",
service_name="amf-service",slice_data="_2-333333",status="success"} 1

NGAP Service Stats Under n2_service_stats

Following are the NGAP service stats records under n2_service_stats

Messages

Metrics Message Type

NRRPA based messages

DlUeAssociatedNRPPaTransport

UlUeAssociatedNRPPaTransport

DlNonUeAssociatedNRPPaTransport

UlNonUeAssociatedNRPPaTransport

Following is the example of stats output:

n2_service_stats{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="0",
message_type="DlUeAssociatedNRPPaTransport",reason="",roaming_status="HOMER",
service_name="amf-service",slice_data="_2-333333",status="success"} 1
n2_service_stats{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="0", 
message_type=" DlNonUeAssociatedNRPPaTransport ",reason="", roaming_status="", service_name="amf-service", 
slice_data="",status="success"} 1

Nas Message Total

Location service based UplinkNasTransport and DownlinkNasTransport is recorded under message type N1DlNasTransport_LPP, N1UlNasTransport_LPP.

Following is the example of stats output:

amf_nas_message_total{app_name="AMF",cluster="clu1",data_center="dc1",instance_id="0",
message_direction="outbound",message_type="N1DlNasTransport_LPP",
service_name="amf-service",slice_data="_2-333333"} 2