Jini
Jini - The Technology Primer
What is Jini?

Jini, an Arabic word meaning "magic" is a distributed computing architecture for providing spontaneous networking of "services". The term "service" refers to a set of functionality provided by any entity.  The entity could be a hardware device ( such as computer, printer or scanner), an electronic device (such as audio or video equipment), an electric device (such as microwave oven, coffee maker or other household appliance), a piece of software component or a combination of hardware and software.

Jini (pronounced "genie") provides an infrastructure to enable this dynamic formation of service communities with zero installation, zero configuration and 100% service interaction.

Jini, which is not an acronymn, is a self-diagnosing, self-configurable dynamic distributed network architecture.  It allows services to dynamically join and exit with no impact on the network or the network users.

Furthermore, Jini is a protocol-independent distributed architecture. It can interact with any distributed object using any protocol - RMI, CORBA, DCOM or a proprietary protocol.

TOP
Why Jini?

The growth of networks and Internet has resulted in a new set of requirements for architecting software applications.  The evolution of distributed and network based architectures such as OSF-DCE, CORBA, DCOM, RMI and HTTP/SOAP-based Web services demonstrates the continual change in distributed architecture requirements. 

With processors and memory becoming cheaper, a redefinition of the "computing device" is on the horizon.  Computation is set to become more pervasive, ubiquitous and mobile.  Computer networks are becoming much faster and more reliable.  Future networks are going to be dynamic, self-forming and self-managed.  Are current distributed architectures such as CORBA, DCOM, RMI and HTTP/SOAP-based Web service ready to satisfy the upcoming ubiquitous, pervasive and dynamic distributed computing requirements? The answer is, unfortunately, NO !

The current distributed architectures such as CORBA, DCOM, RMI and HTTP/SOAP-based Web services suffer from the following limitations :

They are location specific ( i.e., a client must be pre-wired with the location of the naming/directory service)
They are protocol dependent (i.e., a client and server can communicate only through previously agreed-upon protocols such as IIOP, ORPC, JRMP and HTTP/SOAP)
They are tightly coupled (i.e., a client should be modified/ upgraded whenever the service provider's interface changes)
They do not support the notion of dynamic community formation nor accept the notion of device providing a service

To sum up, the limitations of the current distributed architecture are glaringly obvious.

Jini, a true service-based architecture, provides a solution for the evolving ubiquitous, pervasive and dynamic distributed computing requirements.  It abstracts both the devices and software under a service notion and supports dynamic community formation and dissolution.

Jini technology is:

Location independent (i.e., a service requester need not be pre-wired with the lookup service location information)
Protocol independent (i.e., a service requester can interact with any type of service provider using appropriate protocols such as IIOP, ORPC, JRMP, HTTP/SOAP)
Loosely coupled (i.e., a service requester can discover the service provider's interface at run-time)
Dynamic and self-managed (i.e., the entire community is self-formed and self-managed at run-time)
In short, Jini is a true dynamic, distributed service-based architecture.
TOP
What is not Jini ?

When Jini was introduced, it was touted to be a solution for spontaneous networking of devices such as printers, faxes or laptops without undergoing through a big process of driver installation, configuration. Even though the notion is right, it is only one facet of the multi-dimensional issue that Jini is trying to address.

Similarly,

Jini is NOT a Distributed Operating System
Jini is NOT a glorified RMI
Jini is NOT yet another Naming/Trader/Directory service
Jini is NOT JavaSpaces
Jini is NOT EJB or J2EE
Jini is NOT a competitor to CORBA, DCOM/COM+, RMI or HTTP/SOAP based Web Services

Jini  is a dynamic distributed architecture to handle the dynamic formation and collaboration among distributed services, which can be devices, software components or any other.

TOP
Is Jini the silver bullet ?

Jini architecture attempts to provide a solution for the evolving problem spaces of Ubiquitous computing, Universal computing (as Microsoft terms it), Dynamic distributed computing, Pervasive computing and Service based computing.

Does Jini live up to the evolving technological needs? The answer gets delicate here. This is because of a very simple reason – undefined evaluation criteria. What are the requirements against which you would evaluate? You cannot evaluate an architectural solution against a problem whose requirements are restated and redefined as it is being discussed. Keep in mind, it is not easy to shoot a moving target, and that too with a movement that cannot be predicted with any mathematical theories.

As of this writing, Jini is the only known industry supported architecture that can satisfy most of the requirements of a future distributed computing. Jini -- with its "service" notion for abstracting hardware-software distinction, its ability to support partial failures, its ability to abstract the distributed computing protocols and with its self-configuration and self-management capabilities is a clear leader among its competitors.

Microsoft, Hewlett-Packard, AT&T, and Lucent are giving Sun company with their own research initiatives in this area.

Microsoft’s research initiative, dubbed "Millennium," is described as a "new self-organizing, self-tuning, self-monitoring distributed system." Microsoft is rumored to already have two working systems, one called "Coign," which distributes conventionally written applications on the fly; the other called "Borg," which creates a distributed version of the Java Virtual Machine. The uPnP (Universal Plug and Play) from Microsoft is a direct competitor for Jini.

Hewlett-Packard's "CoolTown", "e-speak", "JetSend" and "Chai" have the same dynamic and spontaneous networking theme and form another contender set with Jini.

The other players including Lucent with a project called "Infospheres," Larry Ellison’s effort on "network computer scheme," and AT&T’s "GeoPlex" -- are pursuing the same ubiquitous distributed computing dream.

TOP
 
 
 
 
Jini : the Technology Primer
 
Jini : An Overview - About the book
 
Jini : An Overview - Book Reader's Support Page
 
Jini: Additional Links
Book Links
Web Links