The Network Role of a Media Server
IP-telephony service architectures have evolved towards a decomposed modular plug-and-play design, creating a need for open protocols that allow the various network components to work in concert. The first significant protocol was the Media Gateway Control Protocol (MGCP), which is now widely deployed. MGCP supports the decomposition of traditional network switching functionality into the PSTN-IP media gateway, which processes the call’s media stream, and the media-gateway controller, which handles call control and commands the gateway to perform media operations. In 1999/2000 the ITU evolved MGCP to MEGACO/H.248, which can be thought of as an upgrade or refinement of MGCP.
To provide additional services such as unified messaging, audio conferencing, voice-based information services, and fax services, two new entities were required: the application server and the media server.
The partitioning of these entities followed the example set by the MGC and MG, with service logic controlled by the application server and the media-stream processing handled by the media server.
A media server’s role is to terminate (source or sink) a media stream, providing, for example, the functions needed for voice play/record, fax send/receive, and audio conferencing.
Typically, media servers use proprietary DSP-resource boards to process the media stream. But, led by Commetrex’ BladeWare media server platform, a new generation of host-based media servers is entering the market.
BladeWare FMS is a client application developed for the BladeWare environment that implements a fax media server controlled via the SIP-based MSCML and/or MOML. These protocols relate to application servers and media servers in the same way MGCP/H.248 relates to MGCs and MGs.
BladeWare FMS source code is supplied as an optional fax media server application with the BladeWare fax SDK. If required, the licensee can modify FMS to add voice or other functionality based on Commetrex’ media technologies or non-Commetrex media-processing technologies, by taking advantage of the open architecture of BladeWare’s OpenMedia™ streams framework.
Media Server Control Markup Language (MSCML) is a markup language used in conjunction with SIP to provide advanced conferencing, IVR, and fax functions. MSCML presents an application-level model for conference control, as opposed to device- level conference-control models. One use of this protocol is for communications between a conference focus and mixer in the IETF SIP Conferencing Framework.
There are three broad classes of MSCML functionality. The first class includes primitives for advanced conferencing such as conference configuration, participant-leg manipulation and conference event reporting. The second class includes primitives for interactive voice response (IVR). These include playing audio, collecting digits, and recording audio. The third class involves fax, with primitives such as fax send and receive.
The Media Objects Markup Language (MOML) is a modular and extensible language to define media-processing objects that execute on media servers. MOML defines a set of primitive media objects and provides tools to group primitives together and specify how they interact with each other. Application servers use MOML to create precisely tailored media processing objects that may be used as parts of application interactions with the user. Sending or receiving a fax is an example of an interaction with a user.
FMS Call Flow
Media servers that use SIP-based control protocols do not initiate SIP sessions. The application controls the call by, for example, accepting a call from a unified-messaging (UM) subscriber or an audio-conference user. The UM subscriber might want all fax calls to go to his “fax mailbox”. The call flow using MSCML is shown on the next page.
BladeWare’s call control is abstracted from any specific call-control or signaling protocol by a system service called the System Call Router (SCR). The SCR exposes a single call-control API to applications that is used for PSTN analog and digital interfaces and also for IP- based signaling such as SIP. This means applications may be developed without regard to the signaling that will be used.
The SCR uses routing rules, which may be maintained separately from the application, to determine whether a particular call will be routed over one network or another.
Terminating IP Faxes
Many TDM-IP gateways transport fax transactions by encoding the signal of the analog modems used by the endpoint fax terminals with G.711, and then processing the packets as if they were speech. This will often create errors due to the lack of end-to-end PCM clock synchronization and lost packets that cannot be recovered in time to maintain TDM synchronization. T.38 is an ITU protocol recommendation that an increasing number of TDM-IP gateways use to transport Group 3 faxes. T.38 removes these impairments while it lowers bandwidth requirements by a factor of 10-to-one.
BladeWare is capable of sending and receiving faxes for correspondent gateways that support either G.711 pass-through or T.38. The arrangement of the major functional entities is shown in the diagram above.
BladeWare: An Open Architecture
BladeWare FMS is an open-architecture media server. The FMS application’s source code is provided with the SDK. No runtime fees are required to use the FMS application. FMS runs on BladeWare, an open value-adding platform comprised of open value-adding components. Beginning in 2Q08, the user may license BladeWare’s PowerVox feature, adding voice play-record and DTMF processing.
This means that the FMS application is what makes the system a fax media server. As an open platform, it can be the foundation for any additional media-server function or gateway function.
Commetrex has led the industry effort for T.38 interoperability since January 2002, when it launched the T.38 Interoperability Test Lab. Recently, Commetrex has done extensive interoperability testing with the BladeWare HMP telephony platform, with international carriers, service providers, and enterprises.
Commetrex offers software licenses designed to meet different needs. Typically, a user will license the BladeWare SDKs, which include an initial system, and then use per-system/per-port licenses for recurring systems. However, for those OEMs that intend to add significant value to the underlying BladeWare platform, Commetrex offers paid-up and royalty-based source-code licenses.