The Next Big Thing: Asterisk SCF
Digium, the custodian of Asterisk, announced this week at its annual Astricon conference a new initiative called the Asterisk Scalable Communications Framework. Asterisk SCF is not a replacement for the company’s venerable Asterisk open source telephony product, but rather a companion product intended to take open source communications to the next level.
Asterisk is 11 years old and its impact is significant; with worldwide implementations as both a standalone phone system as well as multiple branded solutions and services. It was initially created by Mark Spencer because he needed a phone system for his office. He opted to make is solution open source and a community of developers, resellers, and manufacturers formed an open source telephony ecosystem. That business became Digium.
Asterisk was very progressive from the start, in addition to being open source, it bet on several radical new and unproven technologies such as VoIP and SIP. The product was initially a curiosity for the geeks, but rapidly moved into a serious alternative with numerous advantages. Digium just released version 1.8 and the Asterisk user list includes many familiar names including large universities - even cities.
While Asterisk’s success can’t be argued, neither can its architectural limitations. Asterisk was created as a PBX alternative and the rules of that market changed. Increasingly, users are demanding unified communications including multi-modal requirements such as wide-band voice, HD video, IM, and desktop sharing along with robust APIs for CEBP. Asterisk can do all that, it gets complex particularly in large implementations with high availability requirements. SMB implementations are straightforward, with numerous packaged offerings - large enterprise or carrier implementations require a fair degree of expertise and customization.
“The Asterisk community asked for easier ways to use Asterisk in larger and more complex applications. They want to make massive scalability and fault tolerance simple, they want rich APIs for developing applications, and they want performance that effectively utilizes modern systems and architectures,” said Mark Spencer, creator of Asterisk, Digium founder and chief technology officer.
Digium created Asterisk SCF as a new open source project and began recruiting developers. Astricon included a demonstration of its new Asterisk SCF billing it as “the world's first high performance, distributed, scalable, fault-tolerant, open source communications framework.” Asterisk SCF will enable broad real-time unified communications applications for enterprises and carriers. Its architecture inherently provides the highest levels of availability, scalability, and extensibility. The product is expected to develop rapidly over the next 12 months.
Asterisk SCF will have no immediate impact as a solution itself or to Asterisk. Although Asterisk 1.8 was just released, discussions for its next release (1.10) are already underway. Asterisk will continue on its trajectory for quite some time and remains a highly suitable and stable product for a variety of situations. Asterisk SCF uses a different foundation - so SCF’s impact to Asterisk developer community won’t be significant either because it uses totally different programming tools. For SCF to succeed, Digium needs to recruit a new group of developers. Asterisk SCF is realistically at least a year away, maybe much longer. It largely depends on Digium’s ability to build a new open source ecosystem - clearly the majority of the heavy lifting will continue to come from Digium itself.
Asterisk SCF is based on Internet Communications Engine (Ice) - an emerging technology from ZeroC.com. This is a fairly bold bet by Digium, but realistically there are no safe bets on the cutting edge. Ice is a young object-oriented toolkit that enables developers to build distributed applications with extensive APIs.
APIs, or extensibility, is the new mantra in unified communications. The alternative isn’t pretty - many vendors are increasing their APIs, but they are often limited to specific vendor tools and products. The other approach is bloatware. For example, new in Asterisk 1.8 is support for calendaring so call routing decisions can be partially based on a user’s calendar. Jason Goecke of Voxeo Labs said “to accomplish this, Asterisk added native support for Exchange, CalDav, and iCalendar. That’s a reality of today, but APIs represent a far more efficient model.” Voxeo’s business model is centered around APIs and Asterisk SCF is “intriguing.”
APIs are created as a gateway of sorts between the external world and a program’s internals. Ice makes the internals directly accessible in a secure method by treating just about everything as a discrete process. The result is a distributed platform that is highly extensible and buzzword compliant; essentially designed for HA, cloud and distributed deployments, scalability, extensibility, and enhanced security.
Digium’s vision can be viewed as either a pipe-dream or realistic portrait of what is to come. The open source nature of Asterisk makes the platform relatively transparent, but it’s likely that other vendors are considering a similar architectural change due to unified communications. The need to make multi-media solutions more scalable, more available, more extensible, and more distributed are not unique to Digium’s users. Every vendor with its sights on large implementations needs to be weighing architectural changes - along with the question of how to position its legacy products.
The open source nature of Asterisk allows Digium to test the market with concepts before they become products, and so far the test is a success. Digium did an excellent job of positioning Asterisk SCF as a companion product rather than a new and improved Asterisk. Digium celebrated Asterisk’s success and clarified its development and support strategy as it does at every Astricon. A version of Asterisk SCF for early adopters is now available at the Asterisk website.
Dave Michels, UC Expert and principal of Verge1 also blogs at www.PinDropSoup.com.