Slowly but Surely, the Open Source Development Model is Spreading Beyond the wired world
The wireless development landscape differs from the wired world in a number of ways. For one thing, the dominance of handheld device manufacturers and proprietary OS makers has meant that open source projects for wireless connectivity have been slow to take off. But now this sector is showing some signs of life. In this article, Anne Zieger explains both the delays and the brightening future.
As 802.11 and other forms of wireless LAN technology become more popular — and mobile applications become established in corporate life — open source-based applications and tools are gradually emerging for use in the unwired world. Open source developers are creating apps that fill a long list of key WLAN roles, including connection monitors, WAP gateways, configuration analyzers, and security packages. There’s also a slowly growing group of open source-based development tools under development, some from giants like Nokia and others from ad-hoc groups of volunteer programmers.
Though open source projects are beginning to bloom, wireless tools and apps are emerging more slowly than open source applications in other significant networking and telephony categories. At present, the mobile development world is largely controlled by major handset manufacturers, companies that generally make money by licensing copies of their own operating systems. And wireless LANs, for their part, have not become critical enough to attract the interest of the corporate sponsors who can give large open source projects a kick start.
In the traditional, wired communications world, open source projects are not uncommon; for instance, there are several projects aimed at developing open source alternatives to costly proprietary telecommunications infrastructure. The grandfather of all open source projects, GNU, includes a group that works on the GNU Bayonne telephony server. GNU Bayonne is a freely licensed product that allows small businesses, large enterprises, and commercial telephone carriers to create, deploy, and manage embedded, stand-alone, and Web-integrated telephony voice response solutions. (See the Resources section below for links to Bayonne and other companies and products mentioned in this article.)
Another open source PBX, or Private Branch Exchange, is Asterisk, a software-only implementation running on Linux. Asterisk handles voice over IP in three protocols with no additional hardware. It also handles:
• Voicemail services with directory
• Call conferencing, interactive voice response and call queuing
• Three-way calling
• Caller ID services
• H.323 (as both client and gateway)
Of late, however, unwired open source projects have begun picking up steam, attracting corporate backers in growth areas such as mobile infrastructure, security, and 802.11 networking.
As mobile platforms have become increasingly important to corporate connectivity, mobile open source apps and tools have begun to appear. Large software and telephony vendors have gradually been adding more robust mobile application development tools to their portfolio, including open source development tools.
Motorola and Embedix
Motorola, for example, expanded its open source coverage when its Metrowerks subsidiary acquired the assets of Linux tools and solutions vendor Embedix. Metrowerks will draw on the Embedix assets to provide Linux-based app development tools and platforms for PDAs, smart handheld devices, residential gateways, and digital TVs.
Nokia’s Developer Suite for Linux
Nokia recently released the Nokia Developers Suite for J2ME, version 1.1, which runs over Linux. The suite offers developers tools to create, test, and deploy downloadable J2ME apps, providing an automated code-generation tool and archive builders.
The Suite for J2ME supports MIDP development for Nokia SDKs. It contains the Nokia Series 40 MIDP Concept SDK, along with MIDP APIs, classes, documentation, and sample applications to build, debug, and run J2ME applications in a simulated environment. The Suite can also be integrated with existing IDEs from Borland and Sun.
Other development tools and platforms, meanwhile, are being developed through volunteer efforts, though often with some influence or sponsorship from a commercial software developer.
One such platform is based on Jabber, an open XML protocol for the real-time exchange of messages and presence between any two points on the Internet. Jabber.org, the group behind the protocol, was the starting point for what is now Denver-based commercial communications software house Jabber, Inc.
The first application of Jabber technology to emerge is an asynchronous, extensible instant messaging platform, along with an instant messaging network with functions similar to those found on public IM platforms offered by Yahoo or AOL.
While not specifically designed for wireless deployment, Jabber IM technology is being used more and more by developers as a means of adding IM functionality to wireless platforms. As of early May 2003, the Jabber open source project had approximately 150,000 servers in operation.
Another open source wireless tool in this mold is Morphis WAX, a language and set of components designed to deliver appropriate content to varied wireless devices. Morphis.org, the group behind Morphis Wax, is sponsored by New York-based mobile development house Kargo, Inc.
Morphis WAX provides translation to devices that support WML, HDML, HTML, cHTML, and other Web formats. It also includes a WAXServlet as the basis for building WAX applications; developers who use the Morphis and WAX classes as the foundation of their applications are automatically provided with features such as application logging and database pooling.
Yet another example is EnhydraME, the J2ME edition of the Enhydra Java/XML application server.
Enhydra was initially created by enterprise Java technology company Lutris Technologies, Inc. Today the project is run by ObjectWeb, an open source middleware development effort backed by France Telecom R&D, French technology firm Bull, and French IT organization INRIA.
The Enhydra server uses enterprise Java standards such as Servlet 2.2 and JSP 1.1 to support presentation logic. It also has features such as an XML engine (Enhydra XMLC), database connection pooling, an object-to-relational mapping tool (DODS), presentation management, and session management.
The EnhydraME framework includes kXML, a complete XML model for wireless devices; kSOAP, a SOAP messaging component for wireless devices; kHTTP, an HTTP server for sending and receiving HTML on wireless devices; Locumi, an HTTP micro proxy server for wireless devices; and Mail4Me, a mail-capable engine for wireless devices.
Wireless LAN Options: Still Ramping Up
Of late, WLANs have become increasingly important to enterprise connectivity, as well. In a recent study by Santa Cruz, CA-based developer research firm Evans Data Corp., 56 percent of firms surveyed were currently using or evaluating 802.11 networks, up from 50 percent six months before.
As WLANs become more accessible, especially with the growth of Wi-Fi options, the open source community has begun to roll out WLAN projects.
A variety of projects, not surprisingly, start out by running over Linux. One example is the Linux-WLAN project, an open source effort developing an 802.11-based wireless LAN system using Linux. The project is sponsored by Melbourne, FL-based Absolute Value Systems, which develops open source-based WLAN product designs. AVS products integrate embedded system software based on Linux with low-cost target hardware.
Individual developers, meanwhile, are coming out with a long list of Linux-based wireless monitoring apps, including KwiFiManager, a set of KDE tools using configurator and link monitor wireless extensions; Qwireless, an x86 and iPaq app for analyzing wireless LANs; and Gwireless, a GNOME-based link monitor and configurator for 802.11b wireless cards using wireless extensions. Security options include Open1x, an open source version of the IEEE 802.1x authentication protocol using wireless extensions.
Several other open source WLAN projects are offering varied open source-based infrastructure options. The OpenAP project, for example, offers a complete distribution of the open source software required to produce an 802.11b-compliant wireless access point, primarily intended for people building community networks. OpenAP is backed by Brisbane, CA-based Instant 802 Networks, Inc., a commercial 802.11 software house.
The OpenAP access point supports multipoint-to-multipoint wireless bridging, while simultaneously serving 802.11b stations. The access points also feature serial console login access, complete with Unix bash shell, Layer 2 roaming, and the 802.1d spanning tree protocol.
Another WLAN-related project is Kannel, an open source WAP gateway written in C that also works as an SMS gateway for GSM networks. Founded in 1999 by now-defunct vendor Wapit, Ltd., the project is now coordinated by an internationally distributed group of companies, including UK-based mobile interface design firm 3G LAB, Ltd., Germany-based wireless application services provider Wapme Systems AG, Irish wireless development firm ANAM, and Swiss mobile carrier Global Networks, Inc., along with individual developers and contributors.
Sputnik Community Gateway
Another open source WLAN app comes from commercial development firm Sputnik. Sputnik’s free-to-download Community Gateway software turns 802.11-equipped x86-compatible laptops and PCs into network access gateways.
Sputnik Community Gateway features include bandwidth shaping and usage tracking; router, firewall, and authentication-level security; remote management; and dynamic interference detection and automated configuration. The gateway supports throughput of up to 11 Mbps for devices up to approximately 150 feet away.
Sputnik also offers its Sputnik Agent firmware to OEMs and ODMs at no charge. Sputnik licenses the Agent source code, which gives devices the capabilities of its commercial Sputnik AP 120 access point, under its own Sputnik Source Code License.
A Longer Road
Despite the growth of efforts like those discussed here, it’s likely to be a while before open source options take root in some wireless sectors.
For the near term, it seems, wireless developers are far more likely to use a Windows CE flavor or a proprietary operating system developed by handset manufacturers like Nokia, Sony Ericsson, or Motorola. After all, these manufacturers can offer developers powerful incentives to use their operating systems, including financial rewards, access to testing programs, strong distribution channels and access to mature marketplaces.
Research by Evans Data underscores the point. When Evans Data recently asked developers what wireless platforms they were targeting, 39 percent said they were focused on Windows CE or Pocket PC platforms — well above those developing for J2ME (16.7%), non-J2ME Java (10.6%), and Palm OS (12.3%). Only 7.6 percent were looking at apps running over Linux, and a much smaller number, 1.7 percent, had plans for the primarily open sourced Symbian OS.
Wireless open source options will become more common, but it’s going to take some time before they do, suggests Chris Preimesberger, wireless analyst with Evans Data. “Open source has not made a major impact on the wireless world,” he says. “I believe it will, but it’s a slow evolution.”
• Check out the latest in IBM and Lotus Software Mobile and Wireless product offerings , providing connectivity with your Notes desktop as well as wireless access to, and synchronization with, the Domino server.
• Charge up your enterprise mobile development platform with the IBM Mobile Office Entry Jumpstart solution.
• IBM’s open BlueHoc simulator , released under the IBM Public License, allows users to evaluate how Bluetooth performs under various ad-hoc networking scenarios.
• Gather more information on developer trends from the Evans Data site .
• Download the latest version of the Linux-WLAN distribution.
• Learn about Kannel’s WAP/SMS translation gateway .
• GNU Bayonne can be obtained in source form .
• Get more background on the Asterisk software-only PBX .
• Read the background and documentation on the OpenAP open source access point package.
• This site offers an extensive list of wireless LAN resources for Linux users.
• KwiFiManager is a set of KDE tools using configurator and link monitor wireless extensions.
• Qwireless is an x86 and iPaq app analyzing wireless LANs.
• Gwireless is a GNOME-based link monitor and configurator for 802.11b wireless cards using wireless extensions.
• Open1x is an open source version of the IEEE 802.1x authentication protocol using wireless extensions.
• Learn more about Motorola’s Metrowerks division.
• Find out about Nokia Developer’s Suite for J2ME , which is available for Linux.
• Read about the Jabber platform .
• Check out the home page for the Morphis WAX project .
• The Enhydra project has a page dedicated to the EnhydraME server .
• Learn about the Sputnik Community Gateway .