B2BUA

Back-to-Back User Agent

Services
Introduced in R99
A SIP-based network element that acts as both a User Agent Client (UAC) and User Agent Server (UAS) to mediate between two SIP sessions. It terminates and reoriginates SIP signaling, enabling service logic execution, protocol interworking, and session control without requiring end-to-end transparency. This architecture is fundamental for implementing advanced telephony services in IMS and VoIP networks.

Description

The Back-to-Back User Agent (B2BUA) is a Session Initiation Protocol (SIP) application server that functions as an intermediary between two communicating SIP endpoints. Unlike SIP proxies that simply forward requests, a B2BUA terminates the incoming SIP dialog from the calling party and establishes a completely new outgoing SIP dialog toward the called party. This creates two separate SIP sessions that are logically linked through the B2BUA's service logic. The B2BUA maintains full state for both legs of the call, including dialog identifiers, session parameters, and media information, allowing it to exercise comprehensive control over the entire communication session.

Architecturally, a B2BUA implements both User Agent Client (UAC) and User Agent Server (UAS) functionality simultaneously. When receiving an INVITE request, it acts as a UAS to respond to the originating endpoint, then immediately acts as a UAC to generate a new INVITE toward the destination. This dual-role architecture enables the B2BUA to modify SIP headers, change session parameters, insert or remove media codecs, and manipulate SDP (Session Description Protocol) offers and answers. The B2BUA maintains separate Call-ID, From tags, and To tags for each leg while correlating them internally through its application logic.

In 3GPP networks, B2BUAs are deployed within the IP Multimedia Subsystem (IMS) architecture as Application Servers (AS) or specialized network functions. They interact with the Serving-Call Session Control Function (S-CSCF) through the ISC (IMS Service Control) interface using SIP. The B2BUA can subscribe to registration events, call state changes, and other SIP events from both endpoints, enabling sophisticated service execution. Media handling can be either pass-through (where media flows directly between endpoints) or mediated (where the B2BUA includes a Media Resource Function for processing).

Key operational aspects include session state management, charging correlation, lawful interception support, and service triggering based on initial Filter Criteria (iFC). The B2BUA can implement services like call forwarding, voicemail, prepaid charging, number translation, and interactive voice response systems. It also enables interworking between different SIP profiles (3GPP IMS SIP versus standard SIP) and between SIP and other signaling protocols through additional gateway functionality. The separation of signaling legs allows independent feature execution toward each participant.

Purpose & Motivation

The B2BUA was created to address fundamental limitations in SIP proxy-based architectures for implementing complex telephony services. Simple SIP proxies forward requests transparently without terminating dialogs, which restricts their ability to modify sessions, insert service logic, or maintain call state. Early VoIP deployments needed network elements that could execute business logic, apply charging policies, and provide value-added services similar to traditional Intelligent Network (IN) platforms in circuit-switched networks. The B2BUA architecture provides this capability by fully terminating and reoriginating SIP sessions.

Historically, the B2BUA concept emerged from the need to bridge legacy telephony services with emerging IP-based communications. As 3GPP developed the IMS architecture for delivering multimedia services over packet networks, it required a mechanism to implement traditional telephony features (call waiting, forwarding, barring) while adding new IP-based capabilities. The B2BUA provided a standardized way to insert service logic into SIP sessions without requiring endpoints to support specific extensions. This was particularly important for interworking between different network domains and for regulatory compliance features like lawful interception.

The architecture solves several critical problems: it enables service providers to maintain control over sessions for charging and policy enforcement; it allows modification of session parameters mid-call; it provides a point for inserting media services; and it enables interoperability between different SIP implementations and versions. Without B2BUAs, many advanced telephony services would require standardization of complex end-to-end mechanisms or would be impossible to implement network-side. The B2BUA's ability to act independently toward each participant makes it essential for features that require asymmetric treatment of calling and called parties.

Key Features

  • Full SIP dialog termination and reorigination
  • Independent session control toward each participant
  • SIP header and SDP manipulation capabilities
  • Stateful call control with session correlation
  • Media interworking and codec negotiation
  • Integration with IMS service architecture via ISC interface

Evolution Across Releases

R99 Initial

Introduced the B2BUA concept within early IMS specifications as a SIP application server for basic call control services. Provided initial architecture for dialog termination and reestablishment, enabling simple call forwarding and screening features. Supported integration with CAMEL for legacy service interworking.

Defining Specifications

SpecificationTitle
TS 23.218 3GPP TS 23.218
TS 23.719 3GPP TS 23.719
TS 23.806 3GPP TS 23.806
TS 23.849 3GPP TS 23.849
TS 24.182 3GPP TS 24.182
TS 24.229 3GPP TS 24.229
TS 24.428 3GPP TS 24.428
TS 24.525 3GPP TS 24.525
TS 24.528 3GPP TS 24.528
TS 24.628 3GPP TS 24.628
TS 24.802 3GPP TS 24.802
TS 29.079 3GPP TS 29.079
TS 29.162 3GPP TS 29.162
TS 29.165 3GPP TS 29.165
TS 29.421 3GPP TS 29.421
TS 29.949 3GPP TS 29.949
TS 32.260 3GPP TR 32.260
TS 32.272 3GPP TR 32.272
TS 32.808 3GPP TR 32.808
TS 32.850 3GPP TR 32.850
TS 33.838 3GPP TR 33.838