Description
The Messaging Framework Adaptor Function (MFAF) is a service-based architecture (SBA) component within the 5G Core (5GC) network, defined as a Network Function (NF). It acts as a central adaptor and exposure point for messaging services. Architecturally, the MFAF interfaces with other core network functions like the Network Exposure Function (NEF) and the Unified Data Management (UDM) to securely expose messaging capabilities. It also connects to external application servers and legacy messaging systems, such as IP Multimedia Subsystem (IMS) for SMS-over-IP (SMS-IP) or other messaging application servers. Its primary role is to abstract the underlying network complexities and provide a unified, standardized API framework for message delivery, enabling various messaging paradigms including person-to-person (P2P), application-to-person (A2P), and conversational messaging (e.g., RCS).
Operationally, the MFAF handles message routing, policy enforcement, and service logic execution. When a message is submitted from an external application provider, the MFAF authenticates and authorizes the request via the NEF, applies relevant policies (e.g., spam control, charging rules), and determines the optimal delivery path. It can interact with the UDM to retrieve subscriber data and routing information. For delivery to a UE, it may forward the message to the appropriate SMSC, IMS, or directly to the Access and Mobility Management Function (AMF) for NAS transport, depending on the message type and network configuration. It supports features like delivery reports, message prioritization, and bulk messaging operations.
The MFAF's internal architecture includes service-based interfaces (SBIs) like Nmfaf for northbound exposure and interfaces to other NFs. Key components include the Adaptor Logic, which translates between external API formats and internal network protocols; the Policy Enforcement Function, which applies operator-defined rules; and the Charging Trigger Function, which generates charging data records. Its introduction signifies a shift from monolithic, siloed messaging systems (like traditional SMSC) to a flexible, cloud-native framework that can easily integrate new messaging services and APIs, fostering innovation in the 5G messaging ecosystem.
Purpose & Motivation
The MFAF was created to address the evolving landscape of messaging in the 5G era, where traditional SMS and MMS coexist with rich communication services (RCS) and new application-to-person services. Prior to its introduction, messaging service exposure to third parties was often achieved through proprietary gateways or limited APIs, leading to fragmentation, security challenges, and inefficient network resource utilization. The MFAF provides a standardized, secure, and scalable framework within the 5G core to unify these access methods.
Its development was motivated by the need to support new business models, such as A2P messaging for enterprise verification, marketing, and notifications, which require robust policy control, charging, and quality of service. Furthermore, as networks evolve towards cloud-native, service-based architectures, a dedicated function was necessary to manage the complexity of interworking between legacy messaging systems and new 5G service-based interfaces. The MFAF solves these problems by offering a centralized adaptor that simplifies integration for application providers while giving network operators granular control over messaging traffic, security, and monetization.
Classification
Release Timeline
Detected Changes Across Releases
from 3GPP Change RequestsSpecific changes extracted from the „Change history“ tables of 3GPP specifications (25 CRs across 3 releases). Complements the general historical overview above with the evidence-based evolution of this function.
In Release 17, the Messaging Framework Adaptor Function (MFAF) was formally introduced with its Nmfaf service-based interface, specifically defining the Nmfaf_3daDataManagement service for data delivery and the Nmfaf_ContextManagement service for UE context transfer. The release included technical cleanup and corrections for these MFAF services, such as updates to its 3daDataManagement API, notification information, and callback functions. Furthermore, specifications were refined to clarify MFAF's role in architectures for analytics and user plane information exposure alongside the DCCF and NWDAF, while also removing the UDM from its list of potential service consumers.
- Resolve editor’s note in Analytics Exposure via DCCF and MFAF TS 29.552CR0007
- Reference to DCCF and MFAF Services description clause TS 23.501CR2808
- Cleanup for NWDAF, DCCF, MFAF and ADRF services TS 23.501CR3471
- Update Analytics Exposure via DCCF and MFAF TS 29.552CR0011
- Adding 3XX and error response handling support for MFAF services TS 29.576CR0001
- Corrections in the MFAF 3caDataManagement API TS 29.576CR0002
+ 3 more changes
In Release 18, the MFAF was formally integrated as a key NF service consumer for User Plane event notifications alongside entities like the NWDAF and DCCF. The release introduced and corrected specific service-based APIs for the MFAF, namely the Nmfaf_3daDataManagement and Nmfaf_3caDataManagement services, and clarified its role in the architecture for data delivery. Furthermore, specifications were added to define MFAF service consumers and to detail MFAF discovery, selection, and its serving area considerations.
- MFAF service consumers TS 29.576CR0053
- MFAF API names corrections TS 29.576CR0054
- MFAF 3daDataManagement API corrections TS 29.576CR0057
- MFAF 3caDataManagement API corrections TS 29.576CR0058
- Adding DCCF and MFAF to the NF service consumers TS 29.517CR0093
- Adding DCCF and MFAF to the NF service consumers TS 29.591CR0106
In Release 19, the MFAF (Messaging Framework Adaptor Function) was enhanced with the formal introduction and clarification of its **Nmfaf_ContextManagement** service for transferring UE contexts, alongside updates to its **Nmfaf_3daDataManagement** service. The release also provided clarifications on key operational aspects, specifically the **MFAF Serving Area** information used for selection and the procedures for **MFAF configuration transfer**. Furthermore, corrections and additions were made to the MFAF API definitions and data models to complete the service specifications.
- MFAF ContextManagement API service descripiton TS 29.576CR0073
- MFAF ContextManagement API data model TS 29.576CR0074
- MFAF ContextManagement API OpenAPI TS 29.576CR0075
- MFAF 3daDataManagement updates to support MFAF transfer TS 29.576CR0076
- target MFAF Notification Information TS 29.576CR0078
- Clarification on the MFAF Configuration transfer TS 29.576CR0080
+ 4 more changes
Explore further
Broader topics and technologies where MFAF plays a role.
Defining Specifications
3GPP specifications that define or reference MFAF, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TS 23.501 vk00 | 5G System Architecture Stage 2 | Rel-20 |
| TS 23.700 vk00 | XR Services Application Enablement Layer | Rel-20 |
| TS 29.517 vj40 | 5G AF Event Exposure Service Stage 3 | Rel-19 |
| TS 29.520 vj40 | 5G Network Data Analytics Services Stage 3 | Rel-19 |
| TS 29.552 vj40 | 5G Network Data Analytics Signalling Flows | Rel-19 |
| TS 29.564 vj50 | Nupf Service Based Interface Protocol | Rel-19 |
| TS 29.575 vj40 | 5G Analytics Data Repository Services Stage 3 | Rel-19 |
| TS 29.576 vj40 | 5G Messaging Framework Adaptor Services Stage 3 | Rel-19 |
| TS 29.591 vj40 | 5G NEF Southbound Services Stage 3 | Rel-19 |
| TS 29.889 vj10 | Study on UPF data collection for AI/ML | Rel-19 |