Sun Launches JXTA
Daniel Rall writes: "Project JXTA, originally a research project spearheaded by Bill Joy and Mike Clary, is now an open source effort, with a vision to
enable developers to create innovative services and applications.
It addresses the need for an open, generalized protocol that
interoperates with any peer on the network including PCs, servers
and other connected devices." Seems to be a combination of Gnutella and Beowulf clustering - lots of potential.
I find your post deeply ironic. You seem to be implying that Bill Joy dislikes open source. Perhaps you don't know much about Bill Joy, so I'll inform. Bill Joy was the principle designer of BSD Unix while a grad student at Berkeley. Berkeley Unix was pretty much *the original* open source project. And it was very influential as well...quite a bit of what we know as "unix" and even "the internet" was defined by BSD. And yes: today's FreeBSD, NetBSD, and OpenBSD projects all descend from this code base and tradition. You could say that Bill Joy is the granddaddy of the BSD world.
Later, Bill Joy left Berkeley to help start Sun. And yes, he took BSD with him and Sun commercialized it into SunOS. Years later it would morph into the SysV type hybrid called Solaris that we still have, but in the beginning Sun basically sold BSD boxes.
No doubt now that he is an executive in a closed source company, he views open source OS's as a bit of a threat. But historically, this man has contributed a great deal to the open source cause. Infact, he's probably up there with RMS in terms of code contribution. This should not be ignored.
--Lenny
You, too, can write Silicon Valley press releases!
"Beware by whom you are called sane."
Potato chips are a by-yourself food.
Not to pick a fight, but how is this relevent to the JXTA announcement? It sounds like you're moaning just to hear your own voice.
But since you changed the topic, make sure you understand what that Sun employee is talking about -- an "Enterprise-Class" machine is an extremely scaleable SMP box, that can support a huge amount of memory, and has I/O bandwidth out the wazzoo (technical term, of course).
The theoretical limit in the 2.0 Linux kernel (from what I remember) is 16 processors, although I've never seen anyone get more than 4 running at once. Contrast that with a Solaris/Sparc box which, currently, you can buy a 64-way box, and by year's end you'll be able to buy a 128-way box. Oh yeah, and the theoretical limit is over 1024 processors.
As far as I/O bandwidth goes, you're not really going to get all that much out of an x86 box with a single PCI bus. Since IBM is now on the Linux bandwagon, we might start seeing them build high I/O boxen sometime soon (hopefully running on PowerPC, a chip which can scale in MP terms almost as well as the Sparc III). But, that's still in the future.
Finally, you should get some kind of an award for your insinuation that Linux was responsible for Sun's sales to drop 73 percent.... I mean, I love Linux as well, but that's stretching things quite a bit!
My $0.02,
--Mid
Looks like there is a trend of inventing half-baked complex "protocol based" distributed systems, ever struggling to find a decent basic abstraction for generalized communication between application processes in different machines: proprietary RPC mechanisms, myriad in-compatible application spesific XML languages, JXTA "pipes", Linda/Jini tuples, CORBA "objects" and finally a hodgepodge of classical text line based TCP/IP application protocols with a mix of transport and presentation layer issues unsolved.
Plan 9 "only" has distibuted files. With dynamic, on-the fly synthesized algorithmic response. With authentication, security and distributed user management with group rights. With naming and access categorization bits.With unified interface for intra-node and inter-node tarffic. With straihtforward binding to classical channel stuctures for multiprogramming intra-process messaging and synchronization with a flexible threading concept. With compatibility with all classical local static data file access code and algorithms. With distributed inheritance and with stackable half-transparent union directories.
Download Rob Pike's and friends' Plan 9 and Inferno from Vita Nuova pages and onwards to Bell Labs pages.
Anssi Porttikivi / app@iki.fi
JXTA is not a Java package, it is a language independant protocol spec. Most of the work done so far is on the lowest Core layer, which involves services such as peer discovery and grouping. They have written an early IMPLEMENTATION of this in Java.. and why not? Java was built for platform independance and networking.
But anyone can write an implementation in any language they want. It uses XML for communication.
My company has recently become involved in JXTA as we are developing a pure Java P2P file sharing app called File Rogue. (I am lead coder)
"Mind, as manifested by the capacity to make choices, is to some extent present in every electron." -Freeman Dyson
Honestly, I don't think it's all that similar to Beowulf clustering (which tends to be focused on high performance or high availability, while JXTA trades off performance for portability/implementability) and the only similarity to Gnutella is that it's peer-to-peer.
The most obvious difference between JXTA and the popular P2P systems (like Napster, Gnutella, Freenet, Mojo Nation, Jabber, etc.) is that JXTA isn't an application; it's a toolkit for building P2P apps. Unfortunately, that means in the short term it doesn't really do anything. But it appears (from a very cursory inspection of the docs) to handle mundane details like finding other peers, sending messages (over a variety of protocols apparently including Bluetooth, not just TCP), relaying through NATs and firewalls, etc.
If you want to play with JXTA, the Getting Started PDF has a tutorial for using the shell.
BTW, here's a convenient Mac OS X package of the JXTA Shell since Sun didn't build one.