SDK

Software Development Kit

Services
Introduced in Rel-17
A Software Development Kit (SDK) in 3GPP context provides libraries, tools, and APIs for developers to create applications that interact with network capabilities. It abstracts complex network functions, enabling faster innovation and integration of telecom features like QoS, location, and authentication into third-party apps and services.

Description

In the 3GPP ecosystem, a Software Development Kit (SDK) refers to a set of software tools and libraries provided to application developers to facilitate the creation of services that can interact with and leverage capabilities of the mobile network. Unlike generic SDKs, a 3GPP SDK specifically exposes Application Programming Interfaces (APIs) that abstract underlying network functions defined in 3GPP specifications. These APIs allow applications to request network resources, access subscriber information (with consent), or utilize enablers like quality of service, device location, or payment services without requiring deep knowledge of the core network protocols. The SDK typically includes code libraries, documentation, sample applications, and sometimes simulators or testing tools.

The architecture for network exposure, which the SDK connects to, is centered around the Network Exposure Function (NEF) in the 5G Core network or the Service Capability Exposure Function (SCEF) in the 4G EPC. The SDK provides a client-side library that communicates with these exposure functions via standardized APIs, most commonly based on RESTful principles over HTTPS. For example, an application using the SDK could invoke a method to request a guaranteed bit rate for a video stream. The SDK library would format this request into the proper API call (e.g., using the 3GPP Northbound API, N33) and send it securely to the NEF. The NEF then translates this external API request into internal network commands, interacting with the Policy Control Function (PCF) and Session Management Function (SMF) to establish the appropriate QoS policy.

Key components within a 3GPP SDK include authentication and security modules to handle secure registration and token-based access (using OAuth 2.0), API client libraries for all supported network capabilities (e.g., QoS on Demand, Device Location, Network Status Notification), and data model objects that correspond to 3GPP-defined information elements. The SDK's role is to drastically lower the barrier to entry for service developers, enabling them to innovate by incorporating telecom-grade features into applications for verticals like gaming, augmented reality, IoT, and enterprise communications. It acts as the crucial bridge between the application layer and the network control plane, fostering an ecosystem of network-aware applications.

Purpose & Motivation

The standardization of SDKs and exposure APIs within 3GPP, particularly from Release 17 onwards, addresses a historical problem: the 'walled garden' of telecom networks. Traditionally, network capabilities were siloed and accessible only to the operator's own services, stifling innovation from third-party developers. This limited the creation of new, differentiated services that could leverage the unique attributes of mobile networks, such as low latency, precise location, or guaranteed connectivity.

The motivation for creating standardized 3GPP SDKs is to open the network in a secure, controlled, and billable manner. It solves the problem of complex integration by providing a simple, well-documented, and uniform interface for developers, abstracting the underlying network complexity. This enables operators to monetize their network assets beyond simple connectivity, allowing enterprises and application providers to dynamically tailor network behavior to their specific needs. The introduction of SDKs is a key enabler for the 5G vision of network slicing and service-based architecture, allowing for the automated, on-demand provisioning of network resources for a myriad of new use cases.

Key Features

  • Abstraction of complex 3GPP network APIs into simple programming interfaces
  • Integrated authentication and authorization (e.g., OAuth 2.0 client)
  • Client libraries for capabilities like QoS Management, Device Location, and Monitoring
  • Includes documentation, code samples, and best practice guides
  • Often includes a local simulator for development and testing without a live network
  • Ensures secure, standardized communication with the network exposure layer (NEF/SCEF)

Evolution Across Releases

Rel-17 Initial

Formally introduced the concept of standardized APIs and SDKs for 5G network exposure within 3GPP. This release defined the framework for Common API Framework (CAPIF) and enhanced the NEF APIs, laying the groundwork for providing developers with tools to securely access network capabilities like QoS, location, and network status.

Defining Specifications

SpecificationTitle
TS 26.857 3GPP TS 26.857
TS 26.955 3GPP TS 26.955
TS 26.956 3GPP TS 26.956
TS 26.998 3GPP TS 26.998