Description
The Delivery Function (DF) is a standardized network component within the 3GPP architecture that serves as a delivery mechanism for various services, most notably within the Multimedia Messaging Service (MMS) environment. It functions as a specialized server that receives content from originating applications or users, processes it according to network policies and subscriber profiles, and then forwards it to the appropriate destination, which could be another user's device or a different network element. The DF handles the complexities of delivery across potentially heterogeneous networks, managing store-and-forward operations, delivery reports, and interoperability between different service providers.
Architecturally, the DF typically interfaces with several other network elements. In the MMS context, it works closely with the MMS Relay/Server (MMS-RS), which acts as the central hub for MMS traffic. The DF receives messages from the MMS-RS that require delivery to a recipient. It then determines the optimal delivery path, which may involve querying the Home Location Register (HLR) or Home Subscriber Server (HSS) for subscriber status and routing information. For delivery to the recipient's device, the DF interacts with the Gateway GPRS Support Node (GGSN) and Serving GPRS Support Node (SGSN) in 2G/3G networks, or the Packet Data Network Gateway (PGW) and Serving Gateway (SGW) in 4G/5G networks, to establish the data bearer for content transfer.
The DF's operation involves several key processes. First, it performs address resolution and validation, ensuring the recipient identifier (like an MSISDN) is valid and reachable. Second, it applies service logic, which may include checking for delivery restrictions, applying content adaptation (like image resizing for the recipient's device capabilities), or implementing charging triggers. Third, it manages the actual delivery attempt, handling retries if the initial attempt fails (e.g., if the recipient's device is offline) and managing expiration timers. Finally, it generates and returns delivery reports back to the originating system, confirming whether the content was successfully delivered or indicating the reason for failure.
A critical aspect of the DF is its ability to support different delivery methods. For immediate delivery, it pushes content directly to the recipient when they are attached to the network. For deferred delivery, it can store content and deliver it later when the recipient becomes available, a fundamental feature for asynchronous messaging services like MMS. The DF also plays a role in inter-operator messaging, where it may communicate with a DF in another operator's network using standardized interfaces (like the MM4 interface in MMS) to deliver messages to subscribers of other mobile networks. This requires support for protocol translation, security (like mutual authentication), and settlement between operators.
Purpose & Motivation
The Delivery Function was created to address the need for a reliable, standardized mechanism to deliver content and messages in packet-switched mobile networks, particularly as services evolved beyond simple voice calls and SMS. Before its standardization, proprietary solutions for content delivery existed, leading to interoperability issues between different network vendors and mobile operators. This fragmentation hindered the development of widespread, reliable value-added services. The DF, as part of the 3GPP service architecture, provided a common framework that ensured content from any compliant application could be delivered to any subscriber on any compliant network, fostering a global ecosystem for mobile data services.
Its introduction with 3GPP Release 4 was closely tied to the specification of the Multimedia Messaging Service (MMS), which was envisioned as a successor to SMS. MMS required the ability to deliver larger, multimedia messages (images, audio, video) which could not be handled by the existing SMS infrastructure. Unlike SMS's store-and-forward in the SMSC, MMS needed a more sophisticated delivery mechanism that could handle different content types, adapt to device capabilities, manage data sessions, and provide detailed delivery reporting. The DF fulfilled this role, separating the delivery logic from the core messaging application and enabling efficient use of network resources.
Furthermore, the DF solved the problem of asynchronous delivery in a network where users are not always connected. Mobile data connections in early 3G networks were not always 'always-on.' The DF's store-and-forward capability ensured messages were not lost when a recipient was offline, attempting delivery when the device reattached. It also addressed charging and policy enforcement by integrating with billing systems and applying operator-defined rules before content was delivered, allowing for prepaid credit checks, content filtering, and differentiated service treatment. This made commercial, billable services feasible and manageable for operators.
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (6 CRs across 2 releases). Complements the general historical overview above with the evidence-based evolution of this function.
Studied in Rel-4, normative work from Rel-15.
In Release 15, the Delivery Function (DF) was expanded to support Lawful Interception for Non-IP Data Delivery via the SCEF and to handle the delivery of PTC Encryption information. The release also formally introduced the DF-5GS function for 5G systems. Application selection for these functions follows the methods defined in ETSI TS 101 220, including direct selection by partial DF name and the EF DIR concept from ISO/IEC 7816-4.
In Release 18, the Delivery Function (DF) was enhanced to support new 5G ProSe functionalities, specifically introducing a DF for 5G ProSe User-to-User (U2U) relay. Additionally, a correction was made to the DF Identifier for the 5MBSUECONFIG application. These updates ensure proper application selection and alignment with the specified procedures for direct application selection.
Explore further
Broader topics and technologies where DF plays a role.
Defining Specifications
3GPP specifications that define or reference DF, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TS 21.111 vj00 | USIM and UICC Requirements for 3G | Rel-19 |
| TR 21.905 vj00 | 3GPP Technical Terms and Definitions | Rel-19 |
| TS 29.060 vj00 | GPRS Tunnelling Protocol (GTP) version 1 | Rel-19 |
| TS 31.102 vj40 | USIM Application Specification | Rel-19 |
| TS 31.103 vj00 | ISIM Application Specification | Rel-19 |
| TS 31.121 vi50 | UICC-terminal interface test specification | Rel-18 |
| TS 31.131 vj00 | C Language Binding for (U)SIM API | Rel-19 |
| TS 31.829 vd00 | ISIM Conformance Requirements Technical Report | Rel-13 |
| TR 31.900 vj00 | 3GPP TS 31.900: Security Interworking Guidance | Rel-19 |
| TS 33.107 vj00 | Lawful Interception Architecture & Functions | Rel-19 |
| TS 33.108 vj00 | LI Handover Interface Specification | Rel-19 |
| TS 34.131 vj00 | SIM API C Language Test Specification | Rel-19 |