Advertisment

Jini technology: plug-and-play revisited

author-image
CIOL Bureau
Updated On
New Update

The world's greatest network



The telecom network of earth is the most fascinating example of a simple, scaleable wide
area network. Without any configuration, just plug in a phone into the socket on the wall.

The dial tone welcomes you. That is simplicity. Any number of phones (modems, fax

machines, and cell phones too) can join the network in the same way. The network grows

with time, and has no theoretical limit to its size in terms of the number of devices that

it can support. That's scalability.

Advertisment

Jini technology is an attempt to get intelligent devices on

the world's greatest network.

The new distributed computing paradigm



There is a tendency to build more and more complexity into a single computer. The computer
is a word processor, fax machine, Internet kiosk, home theatre, and more. However, there

is a limitation to how powerful a single computer can get.

Distributed computing is showing us a different picture

altogether. It is moving computing power away from the centre and into several little

pockets. Imagine little hardware and software components connecting to a network on the

fly to offer highly specialised services. A hard disk can provide storage service, a

printer can offer to print on request, and an e-mail client can do its job when called.

The network grows dynamically. As more services arrive on the network, they become

available without the need for any configuration procedure. The network is extremely

scaleable, and can span very large distances with services made available from anywhere to

anyone. This service-driven distributed computing paradigm is the promise that is

Jini.

Advertisment

Can you hear the Webtone?



Just like the dial tone that you expect when you plug in a telephone, it is convenient to
think of Jini delivering a "Webtone" using TCP/IP. As soon as a device is

plugged into the Jini network, the Directory Service registers it. The service objects are

placed in a JavaSpace so that clients can discover it.

To use a service, a client locates it using the lookup

service. The service's object is copied from the lookup service to the requesting device

where it will be used. The lookup service acts as an intermediary to connect a client

looking for a service with that service. Once the connection is made, the lookup service

is not involved in any of the resulting interactions between that client and that service.

The service can be offered without worrying about the

platform on which it will be implemented. All clients and service providers will have some

form of the Java virtual machine and the required classes, especially RMI. Java RMI glues

together the whole system. There is no need for any kind of device driver to mediate

between applications and devices.

Advertisment

Jini in the bottle



If millions of devices are to get onto the Net, we must make sure we have enough
IP addresses to for all of them. In this context, developments on IPv6's implementation

will be closely watched. For want of proper standards, the Jini is still bottled up.

Jini's success is directly related to that of Java's.

Platform independence is more than running applications on

Windows, Unix, and Mac. Realising that one size doesn't fit all, Sun has trimmed down its

JVM heavily. The Java 2 Micro Edition libraries and K Virtual Machine will take just as

much Java to memory-constrained devices as is necessary. Once Jini drives devices, a

possible application that could emerge is a new kind of e-commerce where remote services

are sold over the Net. A hard disk owner can lease out storage space anyone; a fax machine

can take requests from anywhere. TCP/IP is what gets the whole act together.

Getting the VM into cellular phones, pagers, personal

digital assistants, set-top boxes, and smart cards is just the first step. Jini

applications will follow almost immediately. After all, we have a global village to build,

don't we?

Glossary
JavaSpaces



JavaSpace is a "virtual space" that is accessible throughout the network. It
offers a common place for communication between distributed objects on clients and servers

that form the network.

Service providers post their

services, and clients their requests into a lookup server which is a

JavaSpace. The

JavaSpace is not interested in what kinds of services are posted. It simply connects

clients to their requested services if available.

Remote Method Invocation (RMI)



RMI is the basis of distributed computing in Java. In object oriented programming, one
object interacts with an other by calling the methods encapsulated by the second.

However, when objects are distributed across a (possibly

large) network, the situation is different. The RMI model allows one object to invoke

methods in an other remote object by way of an RMI URL.


Aladdin

- the Jini service browser
LG's software

division in Bangalore, LG Soft India,

has set up a lab dedicated to Java and Jini. The href="http://www.lg-soft.com/home/about_lgsi/alliances/jini.html">Aladdin

project demonstrates the prowess of Jini. Aladdin was written to work as an

application and as an applet.

Aladdin is a Jini service

browser. Although it has nothing on start-up, you can watch it grow as services make their

appearance on the network. Few seconds after a Jini-enabled hard disk was attached, the

load and save options appeared. Thereafter, the print and capture options appeared when a

printer and digital camera were attached. When an e-mail service was launched

elsewhere, the browser recognised that too!

Aladdin is only an experimental project. It could develop into a Web

browser that can be used to access a gamut of remote objects and services - documents,

pictures, video, storage, printing, etc. - using the TCP/IP protocol.

Is Aladdin the killer-app of the future? Will commercial remote

services redefine e-commerce? Let us know at href="mailto:content@www.ciol.com?subject=Jini technology">content@www.ciol.com

tech-news