On Open Source Telephony

I believe this is the obligated first post to this blog and is the question most of us, involved in some degree with Open Source Voip often ask ourselves.
What is the place and the destination of this technology?
Will Open Source Voip repeat the history of other mainstream technologies such as operating systems and databases?
What is the difference with their ancestors?

The players
Often, Open Source Telephony is used as synonym of Asterisk, and for good reasons: this project took by storm the community and is by far the most installed and tested suite, but this is not the only inhabitant, other projects are also more or less active and supported like Callweaver, SipFoundry, OpenSer ans some others.
Each projects has its own strengths and weaknesses, but there is one common denominator: all of them are freely available, pretty well supported by active communities and all of them reached a maturity degree that allows industrial usage, and this conveys to an industry.

The challenge
If there is free, pretty mature software available to create products, this would conduct to the next question: why legacy pbx vendors are still selling their systems? Even though, they are increasing their sales annually.
In my opinion, there are two key aspects of this technology a good and a bad one:
The good one
Opens Source Telephony software do works and is stable. If you have some set of skills to deal with, you can build your own telephony platform using pretty cheap x86 hardware and free software.
So, taking only the "good one" approach we could easily conclude that we are assisting to the revolution of open source telephony as happened some years before with the Linux revolution.
The bad one
Often misunderstood and/or underestimated is that telephony is a mission critical service: when a user pick ups the phone he or she expects to talk. Sounds cheesy? ask some of the Asterisk or other Open Source Telephony technologies and not all of them are that sure to have success any time they pick ups his IP phone.
This is, in my opinion, the main obstacle for Open Source Telephony repeat the success of Linux or mySQL.

Meet the beast

But all in all, Open Source Telephony is basically Open Source and this means that sooner or later, it will evolve to several industrial-strength products that will seriously compete with legacy platforms.
Some big players such as 3Com already have products with and embedded Open Source Telephony software, this is really good news: the Big Ones set high standards for their products that ultimately enhances the perception of the technology and create awareness.

The bottomline
Why Open Source Technology is happening now and not before?
Perhaps the answer relays in the basement: telephony is a true real time technology: things not only has to happen but mus happen exactly when it is supposed to be.
If you review platforms like Asterisk and Callweaver, you will discover that most of the processor-ungry functionas like coding and echo cancellation are synthesized in software. In the past DSPs performed the dirty job, today, more and more functions are C files, nowadays, with multicore processors, a cheap entry level server can handle such a call volume only attainable a few years ago with expensive DSP cards or dedicated software.
So, one of the main drivers for Open Source mushrooming is the growth of processor capacity of current server x86 technology.


The chart shows MIPS evolution of x86 processors from their early days to present, this evolution is followed by memory devices, bus technology and so on.
In this same path, Linux kernel evolution follows this curve, specially adding concurrent processing capacity.
Regarding telephone network interfaces: if you compare telephony cards from Digium or Sangoma (two of the main manufacturers that supports telephone interfaces for Open Source Suites like Asterisk and Callweaver) with "older" cards, you will find that the first ones are pretty simple ones: costs are also different, the new cards are much simpler: translates telephony information into data and presents into buses to be processed by software, of course this has a cost in performance: not always software is enough, sometimes echo cancellation modules are required and a poorly-tunned server can affect voice quality under some circumstances.


Conclusion
All the puzzle´s pieces are on the table, the industry is starting and facing the challenge of attain the reliability that legacy vendors and dedicated hardware has, but Open Source has the force of dynamic communities that enhances the software all the time, so sooner or later this reliability will be attained.
The more the PBX becomes a software suite, the more it resembles just another software service into the enterprise (and utterly at home), it is quite easy to foresee an scenario where PBX is just another box into the data room.