SLP

Service Location Protocol

Protocol →
Introduced in Rel-7 Also in: Core Network, Radio Access Network

SLP is a 3GPP protocol for discovering and selecting location-based services and servers, such as positioning servers, within a network to enable location-based applications and efficient service discovery.

Category
Protocol
Introduced
Rel-7
Where
Services › IMS
Also touches
2 segments
Specifications
18 specs
SLP Description Purpose Related Classification Specifications

Description

The Service Location Protocol (SLP) is an IETF-defined protocol (RFC 2608) adopted and profiled by 3GPP for use within its architecture, primarily to facilitate service discovery. In the 3GPP context, SLP is a key enabler for location services (LCS), allowing a client, such as User Equipment (UE) or a network entity, to discover the address of a location server, most notably the Secure User Plane Location (SUPL) Location Platform (SLP). The protocol operates in a client-server model where User Agents (UAs) issue service requests and Service Agents (SAs) advertise services. Directory Agents (DAs) can optionally be used as centralized repositories for service advertisements, improving scalability in large networks. The protocol uses service URLs and attributes to describe services, and discovery can be performed via multicast or unicast. For 3GPP, SLP is often used in the SUPL architecture, where a SUPL Enabled Terminal (SET) uses SLP to discover the address of its Home SLP (H-SLP) or a Discovered SLP (D-SLP) to initiate a positioning session. This discovery is crucial for establishing a secure user-plane connection for delivering location information. The protocol supports authentication and provides a flexible framework for finding various types of services beyond just location, though its primary 3GPP application is within the SUPL ecosystem. Its integration allows for decentralized service discovery without requiring pre-configuration of server addresses in every device, enhancing flexibility and manageability for network operators.

Purpose & Motivation

SLP was introduced to solve the problem of dynamic service discovery in IP-based networks, which became increasingly relevant with the rise of mobile data services and location-based applications. Prior to standardized service discovery, devices often required manual configuration of server addresses (like a home location server), which was inflexible, difficult to manage at scale, and hindered service portability and roaming. The protocol provides a standardized, automated method for clients to find necessary network services. Within 3GPP, its adoption, particularly starting in Release 7 with SUPL 1.0, was motivated by the need for an efficient user-plane location solution. SLP enables a SUPL Enabled Terminal to dynamically discover its appropriate SLP, whether it's the home network's SLP or a visited network's SLP during roaming. This capability is essential for emergency services (e.g., E911), commercial location services, and regulatory compliance, as it ensures a device can always find a positioning server without user intervention. It decouples the client from a static network configuration, allowing operators to deploy and relocate servers more freely and support a growing ecosystem of location-based services.

Classification

Part ofSUPL
Specific typesSUPL

Evolution Across Releases

Rel-7 Initial

Initially introduced in 3GPP for SUPL 1.0. Defined the use of SLP for the SUPL Enabled Terminal (SET) to discover the address of the Secure User Plane Location (SUPL) Location Platform (SLP). Established the basic framework for user-plane location service discovery, supporting emergency and commercial services.

Explore further

Broader topics and technologies where SLP plays a role.

Defining Specifications

3GPP specifications that define or reference SLP, with the latest known release. Sourced from the 3GPP document catalog — see methodology.

SpecificationTitleRelease
TR 21.905 vj00 3GPP Technical Terms and Definitions Rel-19
TS 23.167 vj11 IMS Emergency Sessions Rel-19
TS 23.271 vj00 LCS Stage 2 Specification Rel-19
TS 23.303 vj00 Proximity Services (ProSe) Stage 2 Rel-19
TS 23.700 vk00 XR Services Application Enablement Layer Rel-20
TR 23.730 ve00 Study on extended CIoT architecture Rel-14
TS 23.868 v900 Study on IMS Emergency Calls Rel-9
TS 29.078 vj00 CAMEL Phase 4 CAP Specification Rel-19
TS 29.171 vj00 LCS Application Protocol (LCS-AP) Specification Rel-19
TS 29.278 vj00 CAMEL Application Part (CAP) for IMS Phase 4 Rel-19
TS 29.819 vd00 Diameter Base Protocol Update Analysis Rel-13
TS 33.533 vj00 Security for 5G Ranging & Sidelink Positioning Rel-19
TS 36.305 vj00 UE Positioning in E-UTRAN Stage 2 Rel-19
TS 36.355 vj00 LTE Positioning Protocol (LPP) Rel-19
TS 36.809 vc00 Study on RF Pattern Matching for LTE Positioning Rel-12
TS 36.840 vc10 LTE 450 MHz Band Technical Requirements for Brazil Rel-12
TS 37.355 vj20 LTE Positioning Protocol (LPP) Rel-19
TS 38.305 vj00 NG-RAN UE Positioning Stage 2 Rel-19
Patrick Zandl

About the author: Patrick Zandl (b. 1974)

Telecommunications specialist, technology journalist (founder of the Mobil server), and developer who has been running since 2025 — the largest Czech-language resource on AI-assisted programming. Formerly Chief Wizard Architect at Prusa3D and head of development for Turris at CZ.NIC; currently a consultant and instructor on AI implementation in companies.