Back to Back User Agents For Telecommunications

Today's telecommunications networks are a delicate- Privacy servers
blend of clients and servers that together offer virtually- 3rd-Party Call Control Applications (3PCC)
endless possibilities when it comes to services and- Service Creation Environment (SCE) runtime engines
applications. For every new client developed, there- Session Boarder Controller (SBC)
seems to be a score more on the way - from mobile- IMS S-CSCF, P-CSCF, I-CSCF
handsets, PDAs, terminals, telephones, video phones, IP- SIP Inter-work Function (IWF) Gateway
set-top-boxes, and so on.- Security Gateway (SEG)
There are essentially two types of servers that- Voice Call Continuity (VCC) servers
connect between clients on large networks: ProxyIn addition, B2BUA servers play an important role in
servers and Back-to-Back User Agent (B2BUA)emerging IMS networks. Recent releases of 3GPP
servers. The more prevalent Proxy servers featureIMS specifications (3GPP TS 24.229 V8.0.0) indicate
predictable behavior - simply connecting betweenthat an increasing number of IMS network element
clients. Effectively, B2BUA servers are much strongerservers, such as P-CSCF, IBCF,SBC etc., are B2BUA
and intelligent entities that perform actions which Proxyservers. The reason for this is that value added
servers cannot. Moreover, B2BUA servers provide aservices are usually session stateful, and feature
flexible solution for a wide range of applications andcapabilities that go beyond basic call proxying.
services and are becoming the primary engine forApplications written on top of B2BUA Application
more and more SIP servers in NGN and IMS networks.servers fulfill several roles, such as SIP User Agents,
The difference between Proxy servers and B2BUASIP Proxy servers and SIP Registrars.
servers is sometimes not fully understood. In this article,B2BUA Server Challenges
we will explore what makes B2BUA servers such anB2BUA application developers face many challenges,
appealing alternative to standard Proxy servers. Bettersuch as achieving rapid time-to-market, conformance
understanding of B2BUA servers can help managersand interoperability, offering customization for
understand the value, and the tradeoffs, of choosing aproprietary services and support for High Availability
B2BUA server, as well as the frameworks needed to(HA) and redundancy. A comprehensive B2BUA
develop a wide range of SIP applications and SIPframework can help developers overcome these
services using it.challenges.
B2BUA Server DefinedA solid B2BUA framework should have modular
B2BUA servers are used to provide value addedapplication building block architecture for increased
features for point-to-point calls and manage multi-pointflexibility, abstraction and short delivery time. Traditional
calls. The power behind a B2BUA server is derivedarchitecture, which features a single configurable state
mostly from the fact that it has a very genericmachine, is not flexible enough. Also, a B2BUA
definition, which gives it almost unlimited power.framework should facilitate developing B2BUA
However, this same characteristic is the root of theapplications by flexibly linking "pluggable" high-level
controversy surrounding it.Modular Application Building Blocks (MABB).
IETF standard (RFC 3261) defines a back-to-backDevelopers should have the ability to combine these
user agent as "a logical entity that receives a requestMABBs and they should be designed in a way that
and processes it as a user agent server (UAS). Inallows developers to further customize their behavior if
order to determine how the request should beneeded. This type of architecture complies with
answered, it acts as a user agent client (UAC) andcontemporary Service Oriented Architecture (SOA)
generates requests. Unlike a Proxy server, it maintainsconcepts, and is suitable for powering flexible business
a dialogue state and must participate in all requestscommunication platforms. This modular architecture
sent on the dialogues it has established."can save months of work. With a set of MABBs in
B2BUA servers have capabilities that far exceedhand, developing the application is a matter of
those of other types of SIP servers, and answer thecombining existing MABBs to produce the required
need for developing sophisticated value added SIPbusiness logic. In addition, this architecture enhances
applications that cannot be implemented as Proxyefficiency; development of new MABBs can be done
applications.concurrently.
Some of these capabilities, which are unique toA B2BUA framework should facilitate developing
B2BUA servers, are outlined below:applications that fully conform to standards and are
3rd Party Call Control (3PCC) Featuresinteroperable; without restricting developers from
3rd Party Call Control (3PCC) is the ability of an entitycustomizing protocol behavior for special cases.
(usually a controller) to set up and manageMoreover, it should conform for non-standard
communication between two or more parties. 3PCC isimplementations, as well as to mediate between two
often used for operator services and conferencing.versions of the same standard. This type of
3PCC actions are important capabilities, exclusive toframework allows developers to focus on their
B2BUA servers since "passive" non call-statefulproprietary application with the confidence that their
elements, such as Proxy servers, cannot initiate thesefinal application will be fully interoperable.
types of activities. Some examples of 3PCC servicesAnd finally, a B2BUA framework should provide the
are online billing, QoS, resource prioritization, callability to configure, amend and replace application
transfer, click-to-dial, mid-call announcement and more.building blocks to create proprietary features. With this
3PCC actions can be initiated automatically by B2BUAability, developers can maximize existing code -
server applications, like disconnecting a call followingsignificantly reducing development time, shortening
credit expiration in an online-billing system. Or they cantesting cycles, and reducing overall time-to-market.
be initiated by remote administrative control (OSS), e.g.There are B2BUA application frameworks that deliver
invite parties to a multi-point conferencing session.these capabilities and more. The B2BUA Application
Inter-working Function (IWF) for InteroperabilityFramework module should be a part of the SIP server
SIP was designed as a highly flexible and extendiblePlatform, a software framework that offers the
protocol. The very strength of this flexibility is also anessential building blocks for the development of a wide
inherent weakness, since the vast array of client typesvariety of high performance SIP and IMS servers. The
in the market still need to connect.rich set of components and modules can be flexibly
B2BUA Inter-working Functions (IWF) defines a widecombined to match customers' requirements for
range of powerful SIP servers that connect SIP clientsdeveloping SIP servers that offer both standard and
that "speak" in different protocol dialects, or supportadvanced SIP services.
different capabilities. This Inter-working function is veryApplications written on top of a B2BUA framework
important in enabling connectivity between clients withshould be developed by combining customizable
different capabilities and/or protocol dialects. Or evenmodular application building blocks. This is effectively
between clients and networks - where the B2BUAlarge chunks of functionality that can be strung
server actually acts as an access device.together to form ad-hoc applications, enabling
Examples of what IWF can do include:developers to focus on the high-level business logic
- Connecting SIP clients to IMS networks by addingand use building blocks that hide low-level details.
and removing IMS SIP protocol extensions (AKAAs one of the most popular IM applications, Yahoo!
P-Headers) that are essential for connecting to theMessenger was the first large consumer player that
IMS networkadopted B2B UA. Yahoo! Messenger combined its
- Connecting clients with different Session Timersbackend scalable platform with a B2B UA to serve
settingsmillions of monthly unique messaging users around the
- Connecting clients with different media capabilitiesworld. Yahoo selected this B2BUA due to its robust
and with distinct Session Description Protocol (SDP)performance and scalability features.
messages by relaying between the two types ofThe architecture should offer automatic High
control sessionsAvailability (HA) and Redundancy support. The B2BUA
- Connecting to different types of networks (e.g. IPv4,framework automatically replicates the run-time state
IPv6) and support for different transport types, suchof the different Services and B2BUA framework core.
as TCP/UDP/SCTP/TLSIn the event of a server outage, a redundant server
Multi-point Call Managementtakes over seamlessly and provides uninterrupted
B2BUA servers an also implement multi-point callservice continuity.
scenarios where multiple CPE devices connect to theB2BUA framework benefits in a nutshell
B2BUA, and the B2BUA provides services to all CPE.- Significantly reduces time to market developing
Due to these unique capabilities, B2BUA servers areproprietary B2B applications and services.
widely used in the communications industry. A few- Allows adding advanced services easily to retain
examples are listed below:competitive advantage and evolve to meet growing
- Online-billing/prepaid functionscustomer demands.
- Servers supporting Resource Prioritization (RP) and- Focuses on the business logic and hides low level
or Quality of Service (QoS) featuresoperator communication intricacies.
- Multi Point Conferencing servers- Delivers off-the-shelf conformance and
- IVR serversinteroperability.
- PBX Applications and Softswitches- Enables rapid development of applications that can
- Application Layer Gateways (ALG)interoperate with different vendors.
- FW/NAT Traversal applications- Enables adding high-availability features easily.