Description
The Service Announcement Function (SAF) is a critical component within the 5G Core (5GC) network's Service-Based Architecture (SBA). It operates as a specialized repository or registry that manages the availability and accessibility of services offered by various Network Functions (NFs) and authorized external Application Functions (AFs). In the SBA paradigm, network capabilities are exposed as reusable services with well-defined APIs, and the SAF provides the mechanism for these services to be discovered.
Architecturally, the SAF is a standalone Network Function that interacts with other NFs via the service-based interfaces, primarily using HTTP/2 with JSON. It typically works in conjunction with the Network Repository Function (NRF), which is the primary discovery broker in the 5GC. While the NRF handles the registration and discovery of NF instances (e.g., finding a specific AMF or SMF), the SAF focuses on the services or service capabilities *within* or *available to* the network. It announces what services are available, their endpoints, supported versions, and any associated metadata like geographic location or supported data network names (DNNs).
How it works involves a publish-subscribe model. A service producer (e.g., an AF providing a latency-sensitive gaming service or a Location Management Function) registers its service profile with the SAF. This profile includes a service name, version, endpoint URI, and other descriptors. Service consumers (other NFs or AFs) can then query the SAF to discover available services that match certain criteria. For example, an edge application server (AF) could announce its presence and capabilities via the SAF, allowing a User Plane Function (UPF) or a Session Management Function (SMF) to discover it for localized traffic routing or policy enforcement. The SAF may also proactively push service availability notifications to subscribed consumers when new services are registered or existing ones change state.
Its role is pivotal for enabling dynamic, flexible service orchestration, especially in edge computing and network slicing scenarios. It decouples service providers from consumers, allowing for agile deployment and scaling of new services without requiring manual reconfiguration of all dependent functions. By providing a centralized view of available services, the SAF facilitates automation, supports service continuity during mobility, and is a key enabler for exposing network capabilities to vertical industry applications in a controlled manner, fulfilling 5G's promise of network programmability.
Purpose & Motivation
The SAF was created to address a key challenge in the 5G Service-Based Architecture: efficient and dynamic service discovery beyond simple NF instance discovery. While the NRF efficiently manages the lifecycle and discovery of NF *instances* (like finding an available SMF), the evolving 5G ecosystem, with its emphasis on edge computing, network slicing, and vertical industry integration, required a more granular mechanism. Applications and network functions needed a way to discover specific *service capabilities* (e.g., a video analytics service at a specific edge location, a particular API for quality of experience reporting) that might be offered by various entities, not just standardized NFs.
Prior to SAF, service exposure and discovery were more static or required direct, pre-configured relationships between functions, which was inflexible and unscalable. The limitations of previous approaches became apparent with the need for low-latency edge applications, where an application on a device must dynamically discover the nearest instance of a service (like a game server or AR processing engine). Manual configuration could not keep pace with the mobility of users and the elastic scaling of services in the cloud.
The primary problem SAF solves is enabling a marketplace of services within the 5G network. It allows Application Functions (AFs), which can be third-party applications, to announce their services to the network core, and for core NFs to discover and utilize these services for enhanced session management, policy control, or traffic steering. This was motivated by the need to support new business models, such as Network as a Service (NaaS), and to fulfill 5G's vision of being a platform for innovation, where vertical industries can seamlessly integrate their applications with network capabilities for optimized performance.
Key Features
- Dynamic registration and announcement of service profiles from NFs and AFs
- Query-based service discovery using filters (e.g., service name, DNN, location)
- Support for publish-subscribe mechanisms for service availability notifications
- Management of service metadata, versions, and endpoint information
- Integration with 5GC SBA security framework for authenticated service registration and discovery
- Enables location-aware service discovery critical for edge computing deployments
Evolution Across Releases
Introduced the SAF as the User Service Discovery / Announcement Function. Defined its initial architecture and basic procedures for service registration, discovery, and subscription/notification. Established its role in enabling service exposure and dynamic discovery, primarily in the context of edge computing and V2X service scenarios.
Further refined SAF procedures for integration with CAPIF (Common API Framework) for northbound exposure. Enhanced support for service discovery in private network/Non-Public Network (NPN) deployments. Introduced optimizations for energy efficiency and scalability of the service registry.
Expected continued evolution to support emerging use cases, potentially including further automation of service lifecycle management, enhanced security models for third-party service announcements, and support for service discovery in integrated satellite-terrestrial networks.
Defining Specifications
| Specification | Title |
|---|---|
| TS 26.981 | 3GPP TS 26.981 |
| TS 29.116 | 3GPP TS 29.116 |