June 27, 2007

Others not at VON Europe...

  • SIP User agent vendors
  • Innovative new stuff
  • Product development guys in larger companies
  • Techies
  • Telco vendors pushing pure SIP (as opposed to IMS)

Of course, exceptions, but here are some others I saw at VON Europe:

  • Some telcos who think they have gotten it right
  • Lots of "VoIP service provider in a box" vendors
  • Marketing guys making sales presentations
  • Nice-looking ladies at the expo stands
  • VoIP vendors with "IMS Ready" or "IMS compliant" solutions

All in all, a nice opportunity to meet old friends and meet some new, but very little news...

June 13, 2007

VON Europe: Many telcos stay at home...

More than half-way into VON Europe, an observation is that many telcos are notably absent. Are they tired of the IMS vs. pure-SIP discussions and just want to participate on their "home" arenas where they can concentrate on how to deploy IMS or implement Fixed Mobile Convergence?

April 18, 2007

Prague developers' meeting

I realized I haven't blogged about the developers' meeting in Prague!

It was a great success! We both had the scheduled meeting on Monday with presentations, and due to time-constraints we had another developers' workshop on Wednesday (this was during the IETF meeting and many people were in town). Some even came back to Prague to participate and we were 15 people where most of the people with cvs write access + many of the people who have contributed the most participated. We also had a live webmeeting where 10-15 people who watched the presentation, listened in to the workshop and participated on IRC.

Here are the presentations from Monday and you can see slides and even listen to the Wednesday workshop!

I think the most important outcome of such a face-to-face meeting is that you get a face on the names, can discuss freely, and really get to know eachother better (yes, we had some beers after the workshop ;-) It's easy to see that such meetings spawn new activity and create more fun out of everything.
So, we are going to do this again soon!

VoIP vs SIP

Too many people think that SIP = VoIP. Then some say: hey, what about video?! But most people stop there.

So, the consequence is that the blog world on VoIP now is starting to question whether the steam has run out of VoIP. Thomas Anglero blogs about this in Telecom's Tsunami. However, as I wrote to him in a private email:
"I have been looking forward to this. Let the tourists go home and the real innovation begin...

I touched on this in my post:
http://sipstuff.blogspot.com/2007/02/competing-eco-systems-ims-ser-asterisk.html

but I didn't write about the basic tenet underlying why I bother: That SIP together with established web-technologies is the missing real-time, two-way communication layer required to move Web 2.0 beyond the mini-apps we see today and towards the web as a real-time network of small web applications communitating and acting on behalf of users. That SIP was used to implement VoIP is good because it gets the traction, but VoIP is just a small piece of what SIP soon will do."

I realized that my comments to Thomas belonged here on the blog. So, all SIP people out there, get started innovating using SIP without VoIP, think sessions, anything that belongs in a session will benefit from SIP!

Jiri Kuthan talked about SLAMP (SER, Linux, Apache, mySQL, Perl/PHP) at the SER developers' meeting in Prague. He may be more right than he thinks. SIP Express Router is well positioned to become the apache of everything that is sessions-based on the Internet. Do you have an Ajax-based web application that needs to subscribe to a user's continously updated contact lists in order to provide that extra functionality? The answer is SIP. Do you want to track a GPS unit's movements? SIP. Do you want to push a map on a user's mobile phone while you are the phone because he calls you and cannot find your offices? SIP again.

So, get started with SLAMP innovation. Create that SER plugin and connect it to your web application. Create SIP user agents that have nothing to do with VoIP. Let us show the tourists that real innovation is on the Internet, not in the old telco world!

February 19, 2007

Competing eco-systems, IMS, SER, Asterisk, who will win?

I have wanted to write this post for a while. For a long time I have been concerned about the competitiveness of the SER/OpenSER eco-system in the larger SIP picture.

Let's look at the big picture: SIP has been established as the preferred signalling protocol for real-time sessions like voice and media. It bears the characteristics of other open technology systems like TCP/IP and the World Wide Web (see Aijt Jaokar's blogpost on Tim Berners-Lee's 3GSM presentation for more on open systems). This means that SIP is itself ignorant to what you use it for; it enables innovation instead of restricting it to the "owner's" ideas of what it should be used for. Open-source projects is an important part of realizing the potential of open technologies.

SIP has been standardized as part of IETF's work. When 3GPP and the mobile world decided to adopt SIP as the signalling protocol in 3G networks (IP Multimedia Subsystem aka IMS), the scene was set for tensions. The history of mobile technologies is full of "ceiling technologies" (again Tim Berners-Lee expression), technologies that put restrictions on how to use it, thus preventing the technology to be used for other things than what the creators conceived. I won't go into the fight (still going on) between the SIP open technology proponents and the more ceiling technology proponents, but look at the IETF sip and sipping mailing lists if you are interested...

This has made the backdrop for an interesting dynamic. A successful open technology has the characteristic that it creates an eco-system of innovation. By virtue of being adopted by many people, as well as allowing innovation, innovative people will use the technology for own commercial and non-commercial activities. The fight of the open technology proponents is to keep SIP open and to prevent the SIP eco-system from splitting into independent eco-systems where innovation will not cross. (However, their efforts seem to more effectively create a split.)

I'll maybe write about the necessity and challenge of keeping SIP as an open technology in another post. Here I will concentrate on the eco-systems I see and why we should bother.

Obviously, IMS creates an eco-system for existing telco-vendors and start-ups. Vendors like Nokia, Siemens, Hewlett-Packard, Ericsson, Nortel, etc etc have their IMS software components and "service delivery platforms". The challenge for all is the lack of compelling services in IMS (and probably the cost of rolling out). Operators and vendors try to spur innovation by inviting start-ups and 3rd party software developers to develop on IMS (ex. Vodaphone's partner community and Hewlett-Packard's Mobile Bazaar). The cost of developing for IMS, in competence, development software, lack of IMS handsets, as well as the lack of IMS roll-outs (i.e. an actual market) makes it not a too attractive business proposition. Thus, most companies developing for IMS also develop for IETF SIP (also called pure or naked SIP).

The second eco-system, IETF SIP innovation is what most VoIP bloggers blog about. In fact, many of the bloggers are also SIP entrepreneurs themselves. Their business models are innovative and they use Internet principles of marketing and distribution, not through operators. Some do both IETF SIP and IMS SIP and develops "split brain", not necessary due to the technical challenges, but because their business model will be split in two.

A third eco-system without the glossy marketing of end-user SIP services is the IETF SIP innovation where SIP is used as a backbone for core real-time media networks. SIP is used for interconnect, bridging the old PSTN world, creating new ways of "dialling" a SIP user (ex. ENUM), as well as for signalling of all kinds of non-VoIP related stuff. This area is murky and under-exposed, but innovation on these core elements of how to use SIP and how to use SIP in connection with other web technologies can potentially bring revolutionary changes.

A fourth eco-system is mostly associated with Asterisk. Even though Asterisk uses IAX (and have a bit shaky SIP implementation), Digium has done lots of things right and have managed to create a large eco-system around the basic idea of an open-source PBX. Pingtel's sipXpbx has been less successful in building a community around it.

So what do these eco-systems have as open-source tools? Many innovators start out from "scratch" when building something, using a SIP stack like pjsip or reSIProcate. Asterisk is an obvious candidate to build on top of for small-scale PBX-like applications (or larger scale by distributing across many Asterisk installations). However, the more of the basic stuff already done, the more people can concentrate on innovation. In the IMS SIP and the IETF SIP worlds there are no obvious, de-facto open-source components that give you a complete infrastructure for innovation (components are available though, see further below). That is bad news for both IMS and IETF SIP.

The question is whether this will change or whether the fragmentation in the SIP eco-system will continue (or fragment even more). What do currently SIP innovators have available except for SIP stacks and Asterisk? Obviously, SER and OpenSER can be (and are) used for many innovative projects. Also, most of the IMSish SIP server providers offer developer licenses and programs. And the OpenIMSCore project (based on SER) sponsored by FOKUS has in a very short time gathered a lot of activity. However, there are some important open-source elements missing, like an application server (in this context an IMS application server). This gap is filled by Mobicents, a JSLEE-compliant open-source IMS application server.

On the IETF SIP side, SEMS (SER Media Server) fills the gap with a simple script-based/Python/C++ plugin programming model. However, all these are pieces that need to be pieced together before any innovation can be built on top. It requires deep understanding of SIP and it is not obvious what to choose. I believe the appeal of Asterisk has been that it is "good-enough" for lots of different things. We don't really have that for large-scale SIP-based services. The attitude is more to polish things into perfection, something you don't want to show others because you build your business on it.

What is my dream?
  • A modularized, highly scalable SIP proxy core with the basic IETF RFC3261 functions with monitoring, failover, and redundancy built in
  • Clearly defined interfaces (could be in the form of programming interfaces or integration documentation) for integration with IMS functions, applications servers of various flavors (SIP CGI, SIP Servlet, JSLEE, ParlayX, as well as non-standard programming models like SEMS)
  • Ability to use these interfaces to build extensions to the SIP proxy so it can fulfill different functions. This can be IMS CSCF functions, presence capabilities etc. This will create different distributions or flavors of the basic IETF SIP proxy
  • Test tools, clients, and that work across IMS and IETF SIP enabling developers to quickly test their applications

Of course, all these should be open-source and people who despise IMS should be allowed to ignore IMS parts, and the projects should be independent, though collaborate on the interfaces, as well as share best practices that everybody needs.

We are in a position to do this: SER/OpenSER have powerful capabilties suitable, and SEMS is very well integrated, there is a dialog between Asterisk and SER/OpenSER developers, OpenIMScore is based on SER, and people and projects are working on these various components.

However, we are struggling with two things:

  1. Commercial actors have no interest in sharing their best practices (or even acknowlegde their open-source software) as they are courting operators of various flavors with their commercial varients of their open-sourced software. This is across the board and puts a lid on innovation as everybody must integrate and build the basic infrastructure before they can innovate
  2. There's a cultural divide between IMS and IETF people, and I don't see the mutual respect needed for such collaboration. SIP implementors are not really talking together and creating shared goals. And then throw in some good old personal conflicts...
The lack of a robust and de-facto open-source development platform for services that cross the IMS/IETF chasm splits the SIP eco-system, hinders innovation, and ensures that end-users will suffer in the years to come. The commercial interests in getting SIP to work in the mobile world are so big that development will happen. How is an open question, but SER/OpenSER and other IETF SIP proxy implementation may end up as a niche open-source component used by purists unless we start seeing the bigger picture. Comments and suggestions are very welcome!

January 25, 2007

Scalability and failover with SER

Two of the important things missing from SER have been simple ways of creating a scalable and redundant SIP infrastructure using only SER as software components. Why? Because such features are important elements of any SIP infrastructure.

There has been resistance from many: "This should be up to each system administrator, as each has own preferences", "we shouldn't push network engineering into SER, but concentrate on SIP", "there are too many ways of doing it, we cannot possibly do all"

In fact, commercial SIP actors benefit from NOT having scalability and failover readily available. It means that potential competitors and innovators must invest more time and competence in building up their own basic infrastructure. And there is a market for commercial SIP scalability and failover solutions. The open-source community suffers.

The reality is that SIP deployments have different needs, people do have different preferences, and some solutions may be better or worse for given applications. However, this should not prevent us from trying to describe the different approaches and make sure SER can support the most widely used ones.

A thread on serdev has kickstarted this effort, and I have tried to summarize the scenarios so far on iptel.org. So, users or developers, describe your favorite scalability/failover scenario now and make sure it is taken into account in later SER versions!

Who is SER for, episode II

There's currently a very interesting thread going on on the serdev mailing list: Dragos, one of the OpenIMScore developers, picked up one of my previous posts and wrote a long post about his experiences using SER for his project.

Dragos' post has spawned a long discussion in multiple threads (split by me) that covers the complexity of ser.cfg, development of SER modules, as well as some inner workings of SER that makes it difficult for outsider to extend. Take a look, it may be of interest to more than SER developers!