Monday Jan 05, 2009

Technical Overview of SailFin (aka GF Communications Server)

SailFin is the Open Source Communications Server that is based on the GlassFish Server. We launched the effort with Ericsson back in May '07 with first builds in June '07 (see all SailFin-tagged entries) and we are nearing the first release.

A Communication Server requires new functionality like SIP-support but also has strong requirements on availability and quality of service. Some of this functionality is done in SailFin and some in the underlying GlassFish v2.1; both releases will be available in a few weeks so expect an increased coverage. Binod published several in early December ([1], [2]) and Sreeram published a couple of entries on SailFin just before the Holiday break.


Sreeram's first entry is an Short Summary of news including a pointer to the Eclipse-based Ericsson Service Development Studio, and the IPTV trials at Sonaecom.

Sreeram's second post is a substantial Technical Overview covering its core architecture and administration, its subsystems, the development and deployment model, and the new SIP and Carrier-Grade features.

Finally, pencil-in Jan 29th, 2009 for a SailFin Webinar where we will provide some background to SIP and these new converged web applications in addition to a presentation on SailFin and demos.

Thursday Dec 18, 2008

Taking a closer look at SailFin (Part 2) : More Details on SIP features.


RFC 3261 defines the basic set of requirements of a SIP implementation. Some parts of the RFC need fine tuning so that it works for all corner cases. I have blogged about how Record Routing proxies can be buggy when the implementation is strictly compliant with RFC 3261. SailFin uses sun deployment descriptor to handle such corner cases.

Venu continues sharing information on SailFin security. This time, it is about configuring Nonce Manager. Another good entry is from Sankar about handling Parameterable headers.

Wednesday Dec 10, 2008

Taking a closer look at SailFin (Part 1) : Authenticated Identity Management

Sailfin logo

Venu has blogged about RFC 4474 support in SailFin. This feature introduces a mechanism for securely identifying originators of SIP messages. A lot more information about this feature is available here and here.

It is also worthwhile to look at the following blogs to know more about security in SailFin.
 1. Authentication of SIP Servlet Resources (I, II, III)
 2. RunAS and P-Asserted-Identity

Next week, I will post an entry on how SailFin handles some of the spec related issues in RFC 3261 and JSR 289.

Thursday Dec 04, 2008

MySQL-SailFin White Paper: Creating a Carrier Grade Service Execution Environment

Sailfin logo

SIP technology, the basis of Project SailFin, is consolidating its position as the leading standard for setting up and tearing down converged multimedia communication sessions. Communication Service Providers are investing in Service Delivery Platforms (SDP) to leverage the opportunity presented by the network convergence.

The Service Execution Environment is a key layer of any SDP, and the application servers and databases are the key components of this layer.

A new white paper about Creating a Carrier Grade Service Execution Environment with MySQL Cluster and the Sun GlassFish Communications Server is available now. Take a look. You need a MySQL account to access the white paper.

Over the next couple of weeks, I will be posting a series of entries to take a closer look at SailFin, specifically the SIP container. If you havent tried SailFin so far, give it a whirl.

Monday Nov 17, 2008

SailFin and OpenBloX Diameter

The Diameter protocol is designed to provide an Authentication, Authorization and Accounting (AAA) framework for applications. The Diameter base protocol is defined by RFC 3588. The 3GPP standards body has adopted Diameter as the primary signaling protocol for AAA and mobility management in the IP Multimedia Subsystem (IMS).


In an IMS architecture, an application server like SailFin will use Diameter to communicate with HSS (Home Subscriber Server). HSS is a central subscriber database that performs AAA and helps in locating the user.

Traffix systems announced that it will officially join the GlassFish Partner Program and Traffix’s OpenBloX(TM) Diameter will become a preferred Diameter platform for Project SailFin. OpenBloX Diameter integration with SailFin will be facilitated by a J2EE Connector 1.5 resource adapter and a Diameter java library.

MS6 of SailFin is available for download. Please download and give it a try. And previous entries on Sailfin at TheAquarium are here.

Monday Nov 10, 2008

SailFin Milestone 6 Now Available; Passed the JSR 289 TCK tests.

Milestone 6 of SailFin is now available for download!. This release includes a number of bug fixes including JSR 289 TCK related issues. Prasad's blog gives more details and the list of 141 bugs fixed after MS5.

SailFin logo

JSR 289 TCK provides much more coverage than its earlier version (~500 tests) and we had numerous questions on the tests. Mihir (spec lead from Oracle) answered all of them very quickly and SailFin passed all tests last week. Thanks Mihir.

Here is the link to the test results and here is the latest TCK errata SailFin is using.

Also take a look at the details about session invalidation in Bhavani's blog, a key new feature introduced in Sip Servlet 1.1. This feature replaces the original session expiration model in Sip Servlets 1.0 and is expected to make the applications more scalable.

Monday Oct 13, 2008

SailFin Milestone 5 is now available

Milestone 5 of SailFin is now available for download! The product is feature complete with this milestone and all the features have already crossed beta stage. The implementation team (from Sun and Ericsson) is now busy in fixing bugs and the final release is expected by end of this calendar year.

SailFin logo

Prasad's blog explains the following key aspects of this milestone.
 1. All JSR 289 (SIPServlet 1.1)features are implemented
 2. Support for RFC 3891 and RFC 3911 (Join/Replace support)
 3. RFC 4474: Authenticated identity management in SIP
 4. Session Replication has crossed beta quality.
 5. Access Logging support for SIP messages.

More SailFin coverage on this blog can be found here.

Wednesday Aug 13, 2008

Sailfin V1 Alpha is now available

Project SailFin, built on top of GlassFish, provides a platform for developing and deploying converged Java EE and SIP Servlets applications. SailFin V1 Alpha is now available for download.

Sailfin logo

Prasad has written a detailed description about the features in this release. Check it out. Check previous entries on SailFin at TheAquarium also.

SailFin is already the basis for the projects like Presence Support in Web Synergy, DFC Application Router in ECharts, Sun Labs Conference Manager etc. The project team is now working on completing the implementation of the recently approved JSR 289 Final Release. Final release of SailFin V1 is expected by end of this calendar year.

Thursday Jul 31, 2008

Accenture Mini Talk on Dynamic Networks with JBI - using GlassFish and OpenESB

JavaOne Community Corner Podcast

An interesting mini talk on Dynamic Networks with JBI is now available in the JavaOne community corner podcasts.

Travis Chase from Accenture's National Security Services division details how GlassFish and OpenESB helped them develop a solution that decreases the network set-up time to run an exercise from weeks to minutes.

The team developed and contributed several components to the community to achieve this, including the XMPP, SIP and RSS binding components; plus they leveraged several others of the 30+ components available in the OpenESB community. The strong web service capabilities of GlassFish were used to define the business logic on the ESB.

If these components look familiar, we used the same RSS and XMPP components in the Project Fuji screencasts to show how quick and easy it is to route and filter messages between these systems.

Friday Jul 25, 2008

JSR 289: SIP Servlet v1.1 is now Final


The SE/EE Executive Comittee of the JCP has approved (results) JSR 289, the SIP Servlet 1.1 Specification that is the core for SailFin.

The final specification is not yet available but the PFD 2 should be very close. The first public release of SailFin will be aligned with GlassFish v2.1 and will happen around the end of the year; updated roadmaps are due in a few weeks.

Tuesday Jun 17, 2008

More news on Ericsson SDS and Netbeans support for SailFin

Sailfin logo

Ericsson Mobility World has posted more information about Service Development Studio (SDS) integration with SailFin (Sun GlassFish Communications Server). A new release of SDS supports SailFin and an extensive tutorial explaining the integration is available here.

On the netbeans front, Vince reports the availability of SIP Application Development Module Suite from the netbeans update center. Newest bits are available in the lib/tools/netbeans directory of the SailFin installation itself.

b37 of SailFin is available now and it contains a number of fixes for performance and longevity. Check previous entries on Sailfin at TheAquarium also.

Wednesday May 07, 2008

Sun GlassFish Communications Server - The Commercial Distribution of Sailfin


We now have a name for Sun's commercial distribution of Sailfin: Sun GlassFish Communications Server.

Sailfin will support SIP Servlet 1.1 and can be used to develop applications using IM, VoIP and shared multimedia. The initial release is expected in the fall of this year and will be aligned with GF v2.1.

Check the Press Release for more details. Also, Ericsson and Sun are holding a Contest for Sailfin Applications. And previous entries on Sailfin at TheAquarium are here.

Monday Apr 14, 2008

Converged Session and Presence in Sailfin

SIP Communicator snapshot

The previous SailFin post covered a fair bit of ground but somehow managed to forget about Jan's "Converged Http Sessions in SailFin" post. Using the Click-to-dial sample application, Jan starts off introducing us to the ConvergedHttpSession that is defined in JSR 289 (SIPServlet 1.1) before moving on to Sailfin converged load-balancer behavior and SSR (Sip Session Retainability).

In an equally well-documented post, Bhavani shares his SIMPLE SipServlet implementation of a presence and chatting feature powered by Sailfin and based on SIMPLE, the SIP-based protocol for instant messaging (IM) and presence. A screencast and full source code (developed with NetBeans' SIPServlet capabilities) are also available.

As a reminder, Sailfin's Milestone 4 is available to download here.

Sunday Apr 13, 2008

SailFin news - New milestone, Ericsson tooling, new blogger, and more

Sailfin logo

Quite a bit of SailFin activity in the past few days. First of all, we now have Milestone 4, a "feature complete" build which includes call-flow support for SIP calls, session failover and recovery of various SIP artifacts, and more.

Next, Ericsson has posted a "Service Development Studio (SDS) 4.0 Sailfin Installation Instructions" document on their Ericsson Mobility World website (free registration required). The document explains how to Sailfin-enable their Eclipse-based SDS end-to-end IMS developer tool.

There's also a new blogger - Ivo Boger, adding to the list of others Sailfin-related blogs: Sailfin's main blog, Yamini's blog, and Bhavani Shankar's Blog.

Finally, Prasad Subramanian has a fairly detailed "Adding Voice to Java EE With SIP Servlets" article going into the basics of SIP, SIPServlet, JSR 289 annotations, sailfin, all including code and Binod blogs about Locating SIP servers using DNS in SailFin.

Tuesday Mar 25, 2008

New Converged Load Balancer

Diagram of COnverged Load Balancer

Kshitiz has a note on the new Java-based Converged Load Balancer that will be part of SailFin and GlassFish v2.1. The CLB handles both HTTP and SIP traffic and can be used with and without a hardware IP sprayer.

Check Kshitiz's Detailed Writeup for details on load balancing algorithms and configuration options.