Sun Posts JXTA Code, Pushes Open Source P2P Platform
- By John K. Waters
PALO ALTO, CASun Microsystems is moving forward apace with its peer-to-peer computing strategy. The Palo Alto, CA-based company recently hosted a Webcast, during which Sun superstars discussed its new JXTA project. Minutes before the start of the Webcast, the company posted a draft of the JXTA specification and some prototype code to the newly launched JXTA Website (http://www.jxta.org/
). The code available on this site is described by Sun as "early release or prototype quality."
JXTA (pronounced "juxta" and short for "juxtapose") is a generalized protocol designed to support interactions with a range of peer devices on a network, including PCs, servers, and other connected devices. It uses a loosely-coupled data model (XML), and provides a system for applications and services to announce themselves as Project JXTA-friendly, and create, join, and monitor peer groups.
Project JXTA was incubated at Sun, but is now an open source enterprise. The software and code are free, subject to the terms of a license based on the Apache Software License Version 1.1 (for the open-source Web server.) According to Sun, any developer who wishes to become a "contributor, committer, and/or maintainer" must also sign a Contributor Agreement, which is also similar to what the Apache Software Foundation requires.
JXTA consists of three layers: a core layer, a services layer, and an application layer. The core layer includes protocols and building blocks to enable key mechanisms for P2P networking, including discovery, transport (including firewall handling and limited security), and the creation of peers and peer groups. The middle, services layer provides hooks for supporting generic services (such as searching, sharing and added security) that are used in many P2P applications. The application layer supports implementation of integrated applications, such as file sharing, resource sharing, monetary systems, distributed storage, and others. These applications can be "vertical" or they can be developed to interoperate with other distributed applications developed to the Project JXTA core.
The initial prototype implementations of JXTA were written in Java, and so it requires a platform that supports JDK 1.1.4 release or later. But Sun's specifications are "intentionally language-independent," and the company says it is supporting and encouraging alternate implementations. C and Java 2ME implementations are expected in the not-too-distant future.
Sun chief scientist and JXTA creator, Bill Joy, said "this is the technology that will deliver access to a broader, deeper Web. The goal is to provide a common method for any node on the network to access any data, any content, or any other node. The effect will be an expansion of the reach and pervasiveness of the Web itself as well as the depth of content that's available."
John K. Waters is a freelance writer based in Silicon Valley. He can be reached