SnowShore Networks has officially announced royalty free licensing terms for implementing technology in the Media Server Control Markup Language (MSCML). MSCML is an XML-based protocol used in conjunction with the Session Initiation Protocol (SIP) to enable the delivery of advanced multimedia conferencing services over IP networks. The protocol was "submitted to the IETF as an Internet Draft in 2002 after a rigorous two year test and evaluation process. It is used to drive the delivery of IP enhanced conferencing to wireline, wireless and broadband networks worldwide. SnowShore also announced the successful deployment of MSCML in both trials and live network environments; it is is currently being used by a number of application developers, media server manufacturers, equipment vendors and service providers, including Z-Tel, IBM, Broadsoft, Bay Packets, Commetrex, Leapstone and Ubiquity Software. Industry watchers and vendors alike view MSCML as the essential protocol for call control between the media server and application server in the IP services architecture. SnowShore communicated to the IETF that it is offering Royalty Free licenses of its intellectual property necessary for implementing the MSCML standard. This inclusive policy provides IP application developers, infrastructure vendors and service providers with the opportunity to bring to market new IP enhanced conferencing and innovative services within the universal framework of SIP and MSCML."
From the Announcement
MSCML is a SIP-based development and control language for IP enhanced conferencing services. MSCML is used in conjunction with SIP to provide advanced conferencing and IVR functions. Over the course of its development and testing in the last two years, MSCML has become the control protocol of choice within the industry for innovative IP enhanced conferencing applications and features.
"It is in our DNA at SnowShore to develop inclusive and standardized solutions," said Eric Burger, SnowShore CTO and an author of MSCML. "Unlike other proprietary protocols which resemble closely guarded treasure maps -- only available to certain vendors and on a royalty basis -- MSCML is a public roadmap that leads developers, vendors and service providers down the road to successful development and deployment of innovative, feature rich enhanced IP services." Burger is a key contributor to the development and broad acceptance of other open standards such as SIP and VXML. He has written numerous documents and standards for the IETF, W3C, CableLabs, and the IPCC.
"Z-Tel has found that using the MSCML standard, based on XML document type definitions, is ideal for application call control for IP services, especially in the area of conferencing," notes Jim Kitchen of Z-Tel, Senior VP of Network Strategy.
"MSCML represents the next step in the development and delivery of SIP conferencing services enabling the incorporation of advanced features and controls such as sizing and resizing, in-conference IVR operations and conference event reporting," said Marc Beattie, Senior Partner Wainhouse Research. "MSCML provides both a standardized framework and functionality to guide developers in introducing a wide range of innovative IP services that have not been available to this point."
MSCML is understood to be the only language being deployed for SIP enhanced conferencing and serves as the framework and development language for a broad array of innovative IP services such as messaging and IP Centrex. In conferencing, MSCML enables the development of advanced IP conference functions such as floor control, sidebar-conferencing, gain control and other service innovations.
"We believe by offering MSCML to the industry, it will spur true innovation and growth of new IP services that will benefit the entire VoIP market," concluded Burger. "MSCML is a tried and true solution that provides vendors and service providers alike with the fuel necessary for powering a new generation of multimedia applications."
Prior to MSCML, there was no standard way to deliver SIP-based enhanced conferencing. Basic SIP constructs, such as described in the IETF's Basic Network Media Services with SIP(4), served simple n-way conferencing well. The SIP URI provides a natural mechanism for identifying a specific SIP conference, while INVITE and BYE methods elegantly implement conference join and leave semantics. However, enhanced conferencing applications also require features such as sizing and resizing, in-conference IVR operations (e.g., recording and playing participant names to the full conference) and conference event reporting. MSCML payloads within standard SIP INVITE and INFO requests realize these features..."
Bibliographic Information and Overview
"Media Server Control Markup Language (MSCML) and Protocol." By Jeff Van Dyke, Eric Burger, and Andy Spitzer (SnowShore Networks, Inc). IETF SIPPING Working Group, Internet-Draft. Reference: 'draft-vandyke-mscml-03'. July 8, 2003, expires January 8, 2004. 48 pages. "Note that SnowShore Networks, Inc. is making their intellectual property right interest in MSCML available on a royalty-free basis."
"Media Server Control Markup Language (MSCML) is a markup language used in conjunction with SIP to provide advanced conferencing and IVR functions. This protocol is for communications between a conference focus and mixer in the IETF SIP Conferencing Framework.
The structure and approach of MSCML satisfy the requirements set out in conferencing-framework ['Session Initiation Protocol Call Control - Conferencing for User Agents'] and cc-framework ['A Call Control and Multi-party usage framework for the Session Initiation Protocol (SIP)']. In particular, MSCML serves as the interface between the conference factory and a centralized conference mixer. In this case, a media server has the role of the conference mixer.
There are two 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 comprises primitives for interactive voice response (IVR). These include playing audio, collecting digits, and recording audio.
The IVR features of MSCML originally evolved simply as an adjunct for conferencing. In many scenarios it was impractical or inconvenient to establish a dialog with a distinct IVR resource and then re-join the conference. However, MSCML works well for simple IVR such as prompt-and-collect for SIP Proxy Servers or Media Gateway Controllers. On the other hand, for complex IVR it may be more appropriate to employ a full IVR markup language such as VoiceXML.
In general, a media server offers services to SIP UAC's to application servers, feature servers, and media gateway controllers. See the ISC Reference Architecture for definitions of these terms. It is unlikely, but not prohibited, for end user SIP UAC's to have a direct signaling relationship with a media server..." [v 0.3 draft extract]
Keypad Stimulus Protocol (KPML). By Eric Burger (SnowShore Networks, Inc). IETF SIPPING Working Group, Internet-Draft. Reference: 'draft-ietf-sipping-kpml-00'. September 1, 2003, expires March 1, 2004. 18 pages.
The Keypress Stimulus Protocol uses the Keypad Markup Language (KPML) to provide instructions to SIP User Agents for the reporting of user key presses.
This document describes the Keypress Stimulus Protocol. The Keypress Stimulus Protocol exchanges messages over SIP with message bodies formed from the Keypad Markup Language, KPML. KPML is a markup that enables "dumb phones" to report user key-press events. Colloquially, this mechanism provides for "digit reporting" or "DTMF reporting" in the signaling path.
We strongly discourage the use of non-validating XML parsers, as one can expect problems with future versions of KPML. That said, one could envision user devices that only accept SIP reporting and have a fixed parser, rather than a full XML parser. This means that a goal of KPML is to fit in an extremely small memory and processing footprint. Note KPML has a corresponding lack of functionality. For those applications that require more functionality, please refer to VoiceXML and MSCML.
The name of the markup, KPML, reflects its legacy support role. The public switched telephony network (PSTN) accomplished end-to-end signaling by transporting Dual-Tone, Multi-Frequency (DTMF) tones in the bearer channel. This is in-band signaling..."
See also Keypad Markup Language (KPML)
Basic Network Media Services with SIP. Edited by Eric Burger (SnowShore Networks, Inc). IETF SIPPING Working Group, Internet-Draft. Reference: 'draft-burger-sipping-netann-07'. 21 pages.
In SIP-based networks, there is a need to provide basic network media services. Such services include network announcements, user interaction, and conferencing services. These services are basic building blocks, from which one can construct interesting applications. In order to have interoperability between servers offering these building blocks (also known as Media Servers) and application developers, one needs to be able to locate and invoke such services in a well-defined manner.
This document describes a mechanism for providing an interoperable protocol interface between Application Servers, which provide application services to SIP-based networks, and Media Servers, which provide the basic media processing building blocks.
In SIP-based media networks (RFC 3261), there is a need to provide basic network media services. Such services include playing announcements, initiating a media mixing session (conference), and prompting and collecting information with a user. These services are basic in nature, are few in number, and fundamentally have not changed in 25 years of enhanced telephony services. Moreover, given their elemental nature, one would not expect them to change in the future.
Multifunction media servers provide network media services to clients using server protocols such as SIP, often in conjunction with markup languages such as VoiceXML, KPML, and MSCML. This document describes how to identify to a multifunction media server what sort of session the client is requesting, without modifying the SIP protocol.
Announcements are media played to the user. Announcements can be static media files, media files generated in real-time, media streams generated in real-time, multimedia objects, or combinations of the above.
Background On SIP, VoiceXML, and MSCML
"Multimedia communications are quickly evolving as carriers are transitioning from traditional circuit-switched networks to next-generation IP infrastructure. This shift in network topologies is allowing service providers and enterprises alike to introduce a new wave of innovative multimedia services made possible by new IP communica-tions technology.
Emerging control and signaling protocols are critical to the success of these new services. New IP protocols are being developed and deployed to provide the neces-sary glue for the development, integration and management of a new generation of IP services and infrastructure.
The Media Server Control Markup Language (MSCML) is an emerging protocol used in conjunction with the Session Initiation Protocol (SIP) to enable the delivery of advanced multimedia conferencing services over IP networks.
SIP and MSCML are used to develop and deploy services within the IP applications and services architecture. This network topology consists of application servers and media servers which work together in a client-server relationship, with application servers (clients) providing the service logic for each specifi c application and the media server (server) acting as a shared media processing resource for the applications.
The media server operates as an independent entity, managing and allocating its processing resources to match the requirements of each application. Its primary role is to handle requests from the application server for performing media processing on packetized media streams. It is not a peripheral or unaware device within the network, but is a self-managing, multimedia processing platform utilized by multiple applications to power each respective service.
Application servers interface with media servers today largely using SIP for call control and VoiceXML for supporting advanced IVR applications. From an application development perspective, MSCML is increasingly being used to develop and deliver advanced conferencing features to SIP-based applications. When these services are deployed, MSCML enables application servers and media servers to communicate in the pure peer-to-peer relationship of the client-server model.
This long-established architectural paradigm allows network operators increased scalability and flexibility when developing and deploying IP services. This approach contrasts with other signaling protocols that orient the application server and media server differently in a more rigid, inflexible master-slave relationship..."
By design, VoiceXML has no call control. In particular, VoiceXML has no provision for conference control.For example, VoiceXML allows the developer to define when to play a prompt or when to select or provide information. However, VoiceXML is incapable of providing higher-layer, call-oriented services efficiently -- such as requesting the conference to mute a leg. However, MSCML addresses this need and provides the call control function necessary to support this feature. Clearly, MSCML and VoiceXML are complementary technologies. VoiceXML addresses enhanced IVR while MSCML addresses enhanced conferencing.MSCML adds value to SIP applications by providing developers with the tools to offer more advanced features for SIP conferencing applications. Moreover, it enables new converged applications, mixing the rich media IVR experience of VoiceXML with enhanced conferencing facilities. MSCML has already benefited from widespread market adoption within the vendor and service provider community, and it is increasingly being recognized as the proven protocol choice for IP enhanced conferencing..." [adapted from the SnowShore whitepaper]
How MSCML Works
"From a programming standpoint, the use of SIP and MSCML reduces application development complexity and gives developers increased flexibility to add new features. For example, in a simple SIP conference, basic SIP constructs establish basic conferencing sessions among any number of participants.
Destinations in SIP are represented with Uniform Resource Indicators (URIs), which are formatted similarly to email addresses. The SIP URI provides a natural mechanism for identifying a specific SIP conference, while INVITE and BYE methods elegantly implement conference join and leave semantics.
MSCML serves as the interface between an application server and a media server and extends the basic SIP conferencing session into an enhanced conferencing session. MSCML enables enhanced conference control functions such as muting individual callers or legs in a multi-party conference call.
Other control functionality enabled by MSCML includes the ability to increase or decrease the volume on a leg or on the call and the capability to create sub-conferences. MSCML also addresses other feature requirements for large-scale conferencing applications, such as sizing and resizing of a conference, incorporating in-conference Interactive Voice Response (IVR) operations (e.g., recording and playing participant names to the full conference) and conference event reporting. MSCML was developed to uniquely address these requirements while fitting into SIP's net-centric application model..." [adapted from the SnowShore whitepaper]
Principal references:
- Announcement: "SnowShore Develops New Standard for IP-Enhanced Conferencing and SIP Services. Endorsements by Telecom Leaders Highlights Steady Adoption Throughout Industry. Media Server Markup Language Embraced by Industry for SIP Enhanced Conferencing. SnowShore Offers Royalty-Free Usage to Drive the Industry's Adoption of Open, Flexible Service Applications and Features."
- "Emerging MSCML Protocol: The Key to Unlocking a New Generation of Multimedia SIP Services." SnowShore Networks whitepaper.
- "Media Server Control Markup Language (MSCML) and Protocol." [source]
- MSCML XML DTD (normative)
- MSCML XML Schema (non-normative)
- Earlier MSCML drafts:
- SnowShore Media Server Control Markup Language and Protocol." Reference: 'draft-vandyke-mscml-00'. November 01, 2002.
- "SnowShore Media Server Control Markup Language (MSCML) and Protocol." Reference: 'draft-vandyke-mscml-01'. February 3, 2003.
- Media Server Control Markup Language (MSCML) and Protocol. Reference: 'draft-vandyke-mscml-02.txt'. July 01, 2003.
- IETF Session Initiation Proposal Investigation (sipping) Working Group Charter
- See also: "VoiceXML" - Main reference page.
- SnowShore Networks website