
180 Park Ave - Building 103
Florham Park, NJ
StratoSIP - SIP at a Very High Level
Eric Cheung, Thomas Smith, Gregory Bond, Pamela Zave
IPTComm 2011,
2011.
[PDF]
[BIB]
ACM Copyright
(c) ACM, 2011. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in IPTComm 2011 , 2011-08-01.
{Voice-over-IP holds the promise of opening up the telecom domain to a vast community of developers. However, due to the nature of real-time multi-party communication and the complexity of the protocol, writing SIP applications that operate correctly and robustly is very challenging and requires in-depth knowledge. Even with standardized programming paradigms such as the Java-based SIP Servlet API, SIP application programming remains difficult.
StratoSIP [1] is a new domain-specific language designed to make the development task much easier and accessible to programmers with little knowledge of SIP. It will be released as open source software in 2011. As well, an applica- tion written using StratoSIP will be deployed in a mission-critical conferencing service in 2Q 2011. This demonstra- tion will show a typical StratoSIP development cycle using this conferencing application as a use case. The goal is to demonstrate how the high-level abstractions offered by StratoSIP make it very easy to program complex call control, and how the underlying StratoSIP runtime library ensures correct and robust operation even under protocol races.}

An Evaluation Framework for Highly Available and Scalable SIP Server Clusters
Gregory Bond, Eric Cheung, Thomas Smith, Jong Yul Kim
IPTComm 2011,
2011.
[PDF]
[BIB]
ACM Copyright
(c) ACM, 2011. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in IPTComm 2011 , 2011-08-01.
{SIP server clusters provide scalability and high availability for SIP applications. The nature of telecommunications services dictates requirements for these capabilities that generally exceed what is necessary in the domain of web applications. There are a number of clustering solutions available to address these requirements, but due to significant differences in architecture and the lack of common terminology, the solutions are difficult to compare. In this paper, we propose system requirements that are necessary to achieve scalability and high availability. We then propose an abstract cluster architecture containing four common architectural elements. Solutions from three different vendors are described in terms of these abstract elements. The solutions are compared based on an evaluation framework that includes a number of criteria, such as robustness to failures of different types and numbers, overhead required to manage failures, and scaling efficiency.}

Specification and evaluation of transparent behavior for SIP back-to-back user agents
Gregory Bond, Eric Cheung, Thomas Smith, Pamela Zave
4th International Conference on Principles, Systems and Applications of IP Telecommunications,
2010.
[PDF]
[BIB]
ACM Copyright
(c) ACM, 2010. This is the author's version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution.
The definitive version was published in Proc. of the 4th International Conference on Principles, Systems, and Applications of IP , 2010-08-02.
{A back-to-back user agent (B2BUA) is a powerful mechanism for realizing
complex SIP applications. The ability to create, terminate, and modify SIP
dialogs allows the creation of arbitrarily complex services. However, B2BUAs
must be designed with care so as not to disrupt service interoperability. A
commonly-stated goal is for B2BUAs to be as {it transparent} as possible
while achieving its design goals. Though the notion of transparency is
intuitively appealing, it is difficult to define. To address this issue,
this paper proposes a definition of transparency and
presents a formal model of a transparent B2BUA to serve as the
specification of transparency. From this specification, we identify issues
with both the realizability and desirability of this behavior, and suggest
modifications to the original model. We evaluate the behavior of a number of
public B2BUA implementations via testing, using some novel techniques to
create test cases based on the formal models.}

Abstractions for Programming SIP Back-to-Back User Agents
Pamela Zave, Gregory Bond, Eric Cheung, Thomas Smith
Third International Conference on Principles, Systems and Applications of IP Telecommunications,
2009.
[BIB]
{In SIP services, {it back-to-back user agents (B2BUAs)} are powerful but difficult to program correctly. StratoSIP is a high-level, domain-specific language for programming SIP B2BUAs safely. This paper describes the four major abstractions on which the language is based. It explains how each abstraction is used in programming, and how it is implemented in SIP. Because the abstractions are derived from the Distributed Feature Composition (DFC) architecture, StratoSIP programs compose easily with each other at runtime. The implementation of StratoSIP runs in SIP Servlet containers. }
ECharts for SIP Servlets: a state-machine programming environment for VoIP applications
Thomas Smith, Gregory Bond
Proceedings of the 1st international conference on Principles, systems and applications of IP teleco,
2007.
[BIB]
{The development of telecommunication applications that require multiple call legs is often complex due to their event-driven nature as well as the significant amount of state that must be maintained. In general, the state associated with different call legs within an application instance differs and must be separately maintained; in addition, (non-call related) application state is often required. As a means of managing all the required state information, application developers often implement ad-hoc state machine programming constructs within the application. }
Methods and apparatus for utilizing user software to communicate with network-resident services,
Tue Oct 14 14:58:19 EDT 2008
Popular operating systems for user devices, such as personal computers (PCs), PDAs, pocketPCs, smartphones, and similar such personal devices, typically come bundled with software that is already installed, maintained and run on a user's computer, namely, a non-specialized HTTP client/web browser and a non-specialized instant messaging client. A device is described which presents a user's instant messaging client and HTTP client/web browser as a unified device for handling real-time user interactions with a network resident application. Since this device represents a network application's interface to a user it is termed a pseudodevice. The pseudodevice, which interfaces with network application software, formats user queries as hyperlinked instant messages that are then sent to the user. The user responds by clicking on a hyperlinked message, which invokes the user's web browser and causes the browser to convey the response as an HTTP request back to the pseudodevice. The pseudodevice adapts communication to the user device depending upon the HTTP requests it receives.
Telecommunication network system and method in communication services using session initiation protocol,
Tue Jul 31 14:58:21 EDT 2007
An implementation of a voice-over-Internet protocol (VoIP) system for accomplishing two-way, three-way and conference calling between two or more parties is disclosed, in which new call features are readily adapted. The VoIP system is implemented in a Session Initiation Protocol (SIP) framework in which aspects of Distributed Feature Composition (DFC) architecture are modified and applied to overcome known limitations in the adaptability of existing VoIP frameworks.
AT&T Science and Technology Medal, 2010.
For outstanding technical innovation in voice over Internet protocol (VoIP) application languages resulting in AT&T Communication Services.
IPTCOMM Best Paper Award, 2009.
For paper entitled, "Abstractions for Programming SIP Back-to-Back User Agents".
JavaOne Conference Rock Star, 2009.
For outstanding session content and speaking ability. Topic was "Services: Web 2.0, Next Generation Web, and Cloud Services Platform".