The first opensource carriergrade telephony switch will be introduced next month at the ClueCon conference (www.cluecon.com) in Chicago.
Dubbed FreeSwitch the opensource project aims to build a highly scalable switching platform that can run on AMD Intel and PowerPC and runs for just $ to $ per server. Protocols employed include SIP H. Asterisk's IAX and XMPP/Jingle.
Even if marginally successful FreeSwitch could shake up the telecom industry. Carrier grade switching platforms such as those from Broadsoft or Sonus can run tens if not hundreds of thousands dollars.
What's more most such switches limit the quality of the voice calls down to KHz the operating frequency for PSTN circuits contends Brian West a developer involved with the testing and development of FreeSwitch. Not so with the FreeSwitch code base. The opensource community will demonstrate next month a FreeSwitch implementation switching KHz phone calls.
The project is sure to grab the eye of major equipment vendors who have been looking for sometime at an opensource carriergrade switch. IBM demonstrated a faulttolerant version of the Asterisk opensource IP PBX last year. Siemens Fujitsu and IBM each approached Digium the vendor that's commercialized Asterisk to create a more scaleable version of code for their networks using clustering techniques says Kevin P. Fleming senior software engineer at Digium.
However those efforts have largely failed for a number of reasons. Asterisk suffers from a "narrow minded affinity for Linux kind of works on a Mac and has scalability issues in its architecture" says Anthony Minessale a former developer on the Asterisk opensource IP PBX project and founder of FreeSwitch.
The popular opensource IP PBX has a "great deal of locking contention and race conditions." Those conditions only become more obvious to users will when they try doing lots of 'creative' things such as having lots of call going into a queue" he says. Call centers and centralized switches are the prime markets for those sorts of issues
Minessale says FreeSwitch won't be bounded by those same problems. The software is designed to run on a cluster of an unlimited number of servers though realistically that will be gated by the capacity of the network. Early tests on a single server showed simultaneous calls on a Pentium server running at . GHz. The server completed calls per second with bursts to calls per second.
Comparisons against an Asterisk server are still difficult to make given that FreeSwitch doesn't account for the performance impact incurred through transcoding. With a PowerEdge with SIP or IAX enabled an Asterisk server could handle up to or calls per second Fleming says. However West claims to crash an Asterisk server under similar testing conditions to the ones used on FreeSwitch at or calls per second.
The big difference though will be in the multiserver support. FreeSwitch is designed allow multiple servers to be clustered so they function as a single device. The event system and state information could be synchronized in a cluster of FreeSwitches says West.
Digium looked at clustering Asterisk servers but efforts were stopped because telephone calls entailed too many state transitions for the clustering object platform from Service Availability Forum to keep up Fleming says. FreeSwitch uses the clustering capabilities contained in SofaSwitch code written by Minessale which is in theory should hold a cluster of FreeSwitches.
With the release FreeSwitch Minessale should finally be able to put that theory to test. It won't be simple. He'll also need to show that FreeSwitch can scale not just to hundreds of calls but tens of thousands of calls. If successful carrierclass switches could be in for the sort of upheaval experienced by virtually every other area tackled by open source.