Tuesday Jun 09, 2015

JSR 359: SIP Servlet 2.0

The reach of the Java EE Platform is not necessarily limited to 'traditional' Enterprise Applications. A good illustration of that is the SIP Servlet technology, which brings together the SIP programming model and the Java EE platform. SIP (Session Initiation Protocol) is a network signaling protocol, often used in the Telecommunication space, for creating and terminating sessions (e.g. VOIP sessions) with different participant(s).

A SIP Servlet is to SIP what a (traditional) Servlet is to HTTP, a server-side component managed by a container. A component developed using a Java API that interacts with clients by responding to incoming requests and returning corresponding responses. The SIP Servlet API (javax.servlet.sip) builds on the generic servlet API (javax.servlet) in much the same way as the HTTP Servlet API (javax.servlet.http) does. Given that, it is relatively easy to learn how to write SIP-based applications. A Converged Application is a (Telco oriented) application that spans multiple protocols (e.g. SIP, HTTP) and interfaces, such as Web, telephony, and other Java EE interfaces. A SIP container enables the development of applications that use SIP, HTTP Servlet API, and other Java EE APIs and components like JPA, JAX-RS, and messaging.

And like any major Java APIs, the SIP Servlet API is defined through the JCP.  The SIP Servlet specification has recently been updated, see JSR 359 here. To learn more about this, you might want to read the SIP Servlet Tutorial.

Tuesday May 18, 2010

SailFin CAFE Series at DZone

Binod has started a series at DZone on SailFin CAFE:

Fundamentals, Part I: CommunicationBeans and Agents
Fundamentals, Part II: Communications and UserProcedures, w/ example

SIP is heating up but the programming of (SIP+HTTP) Converged Applications remains too complicated; a good framework like SailFin CAFE, which runs on both SailFin and Oracles CCAS, would help a lot.

Send feedback on CAFE to USERS@SailFin.

Sunday May 09, 2010

SailFin CAFE b29 Now Available - Simplifying Converged Applications

Binod announced the promotion of b29 of SailFin CAFE the server-side Java framework on top of JSR 289 (SIP Servlet 1.1) for developing SIP or Converged applications. SailFin CAFE was launched last June and runs on SailFin and on Oracles CCAS.

Key contributors to the team include Oracle and Ericsson's employees. Recent posts include, from Erik: User Procedures integrated in trunk and Using presence in CAFE, and, from Mohit, Call Forwarding in SailFin CAFE.

You can download b29 here; javadoc is here. Feedback and community support through the SailFin mailing lists. Relevant blogs at TheAquarium are tagged cafe and sailfin. Wikipedia fans should check out the entries for SIP and VoIP Clients.

Tuesday Feb 02, 2010

SailFin V2 webinar: February 3rd 2010

Sailfin logo

Today, February 3rd 2010, at 10 AM Pacific Standard Time, Prasad is talking about SailFin V2 (Sun GlassFish Communications Server 2.0) in the latest edition of Sun Software Webcasts. The webinar will cover new features in SailFin V2 and also explain how to develop SIP applications using SailFin V2.

You can register here for the webinar. For more information, please take a look at Prasad's blog.

Sunday Jan 31, 2010

Navigating SunSolve - Patches for GlassFish and SailFin

SunSolve is the standard Sun mechanism for distributing "patches" to Sun products, with content ranging from Free Public Releases and Security Patches to For-Free bug-fixing patches (the majority) and is in a multiplicity of formats, from ZIPs to PKG(5).


SunSolve has been adding features recently, including some navigational help that I just discovered, so sharing them...

• A twitter account: @SunPatches,
• New, per-product, content pages, including SailFin Patches and GlassFish Patches.
• Better Introduction, Home Page and PatchFinder.

A full-list of categories is here - I'm afraid the GlassFish-related products fall under several places; to help you, we summarize them at GlassFishForBusiness and we report them via Twitter at @GlassFish.

I do not yet know what is the transition story for SunSolve to Oracle, but we will let you know as we find out.

Wednesday Oct 28, 2009

SailFin 2.0 is Now Available! Also GlassFish v2.1.1

Today was the release of SailFin v2 (download, home, wiki) and its companion Sun GlassFish Communications Server 2.0 (download, home). SailFin v2 is a big release; it leverages GlassFish v2.1.1 (more tomorrow) and adds a number of features including high availability, rolling upgrade, flexible network topology, better overload protection, Diameter support, improved diagnosability, Java based DCR files for the load balancer, and more.

I can't cover SailFin v2 properly but I'll collect some of the relevant links so you can follow them up.  Start with Binod's overview: SailFin v2 Released! and move from there:

Some of the major changes are:

As part of the release, the team has posted a number of new entries, including:

Older posts worth checking include:

Finally, a list for PR/Press reports:

Note - GlassFish v2.1.1 is also available from Sun's Download Center and from the Community Site. More on that release tomorrow. And the OpenMQ 4.4 (and 4.4.1 RC1) are available from here.

Tuesday Sep 29, 2009

SIP Message Inspection in SailFin

Sailfin logo

Given the asynchronous nature of SIP, debugging issues in a SIP application server could turn out to be a nightmare. Tools like Wireshark are widely used for tracing SIP messages in the network.

SailFin v2 implements a new feature that allows users to inspect SIP message flow in the container more effectively. Take a look at Peter's one pager and Sankar's blog on SIP Message Inspection for more details.

This new feature compliments SIP access logging, which is similar to more familiar HTTP access logging.

Tuesday Sep 08, 2009

Towards SailFin 2.0 - SIP Session Replication and HCF


SailFin is closing on v2.0 which is aligned with GlassFish v2.1.1 (both scheduled for the end of October, see Roadmap) and the team has been highlighting new features in the release:

• Prasad Announces HCF, provides an overview and a List of Fixes since SCF.
• Shreedhar writes about the Support for SSR (SIP Session Replication).
• Ramesh describes the Configuration Options, including DNS failover and Converged LB.
• Prateek Announces a new AMIs for SailFin based on OpenSolaris.
  (also see EC2 Blog and Full List of Sun's AMIs)

Thursday Aug 27, 2009

Traffic separation in SailFin clusters

Sailfin logo

SailFin V2 significantly enhances the availability of the application server from the initial version. Managing the network traffic is very important in creating a highly available service/application execution environment.

Ramesh has blogged about traffic separation in SailFin. He explains how the intra-cluster communication (converged load balancer, GMS) can be isolated from the external traffic by utilizing the multiple network interfaces in the server machines.

SailFin V2 is approaching HCF (hard code freeze) next week on the way to final release in October 2009. Take a look at the schedule in the wiki.

Monday Jul 20, 2009

SailFin Diameter Support - Online Charging, Sh API.

Sailfin logo

Diameter support in SailFin is progressing well. Venu has blogged about steps to use Sh api for updating user profile information in HSS (eg: Open IMS). In another post, he explains using onine charging in SailFin.

Also, Sailfin V2 has crossed the SCF (soft code freeze) last week and is progressing towards the release in October 2009. You can download V2 b23 here.

Friday Jul 10, 2009

SailFin on Amazon EC2

Sailfin logo

Recently, we have started receiving inquiries about hosting options for SailFin. A few months back SailFin team had setup a demo server in a Go Daddy server. It has worked out quite well so far.

Now, Sreeram has written a blog about running SailFin (V2 b20) with Amazon EC2. He gives details such as enabling SIP UDP port, MySQL configuration and using DynDNS to setup the domain name. Try it out!

Thursday Jun 04, 2009

On the way to SailFin v3 - SailFin CAFE Launched


Sailfin CAFE is a new framework that simplifies the development of Converged Web apps. It can be used with Sailfin v2 and points to Sailfin v3. The project just launched and we want your feedback and participation. Check out Binod's Writeup, Sreeram's Mail Post and the slides from TS-4929 (id:contentbuilder / pw:doc789).

Sailfin CAFE is a key step towards yet another "v3" container in the GlassFish family joining GlassFish v3 Server (out in September) and OpenESB v3 - making good progress through Project Fuji. The WebSpace Server is also going v3 but they have not yet started working on their builds.

Friday Mar 20, 2009

SailFin: Taming GC for SIP workloads

Sailfin logo

Telco Application servers such as SailFin require a more deterministic GC model with predictable pause time, and also that scales well on multiple processors. Waiting for a long time to connect a telephone call is clearly unacceptable.

Performance team at Sun spent a lot of time tuning GC while testing SailFin for high work loads. Bharath has written a series of blog entries (here and here) explaining his experience. Take a look.

Monday Mar 16, 2009

More SailFin Resources: New Tech Tip and Getting Started with Clustering

Sailfin logo

More resources on SailFin V1 is available now. Prasad has written a Tech Tip on Converged Java EE applications. He explains how different SIP Servlet artifacts can be used from Java EE components like EJBs.

Also, Varun has posted couple of entries on Getting Started with SailFin clustering (I,II). A test application, sipp scenario files for testing, etc are attached to the blog. Take a look!

Monday Mar 09, 2009

STUN server in SailFin

Sailfin logo

STUN (Simple Traversal of User Datagram Protocol Through Network Address Translators) defined in RFC 3489 (and RFC 5389) is one mechanism for NAT traversal. It assists SIP clients behind a NAT firewall or router with their packet routing.

SailFin V2 now has a basic STUN server, which SIP clients can use. Checkout Ramesh's blog to find all details.