Products: AMPS
Advanced
IMS presents AMPS (Asynchronous Middleware for Protocol Servers) - an
open source framework for development of application level protocol servers.
AMPS is an outcome of years of research to improve server design and performance
issues at software level. The key idea behind AMPS is to reduce the implementation
time of application level protocol servers by an order of magnitude. This
results in shortened time to market and let the application developers
spend more time on implementation of product differentiating features.
You can use AMPS to implement different application level protocol servers
(and of course clients) and reduce your time to market by an order of magnitude.
Examples include Diameter, Radius, SIP based VOIP SoftSwitches, online gaming
servers, Media Servers, IMS Home Subscriber Servers (HSS), IMS call control
Servers (x-CSCF), IMS compliant SIP based Application Servers (AS), Policy
Servers, LDAP servers to name a few.
AMPS is open source and is available under GNU/GPL for Linux 2.6 kernel
today. A Windows XP version is due to be released, also under GPL, by
the end of November 2007. Versions of AMPS will soon be available on Solaris,
Windows CE and other flavors of UNIX.
AMPS is also available under a commercial license for use in closed source
products. Comprehensive support with several support models is
available for both open source and closed source usage of AMPS.
It is important to note that an application built on top of AMPS does
not deal with the operating system issues. AMPS provides a complete OS
Abstraction Layer. The application, therefore enjoys portability across
all platforms on which AMPS has been ported.
AMPS uses asynchronous, event driven programming model, and is built
on top of non-blocking or asynchronous I/O interfaces. Therefore, the
library itself, and the applications using it are usually free of any
locks, mutex, semaphores, condition variables or other such synchronization
and concurrency control primitives. An application does not usually require
them for concurrency control. This not only results in higher performance,
but also reduces the amount of bugs that almost invariably creep into
the code as a result of using such primitives.
An architecture and design document of AMPS can be found here soon. This
document will provide a thorough technical description of AMPS design,
its programming model, and the rationale behind several of its design
decisions. The documentation section also includes full documentation
of the API along with a programmer’s guide.
|