“Walking on water and developing software from a specification are easy if both are frozen.”
Edward V Berard
A few years ago Sun Microsystems introduced a new technology called Jini [Sun04c]. Jini offers a platform-independent ‘plug and play’ technology, and supports ad hoc networking by allowing a service to be added to a network without requiring any pre-planning, installation, or human intervention. Ad hoc networking is based on the principle of spontaneous addition, discovery, and use of services in a network. The services can be of many types, such as simple time services, PowerPoint presentation services, or MP3 player services. Once a service has been registered on a network, Jini allows other services and users to discover the new service. The ability to do all this in a transparent manner without manual intervention embodies the basic principle of ‘plug and play’ technology.
The area of ad hoc networking is still attracting a lot of research and development. Recently, some research was completed on how the concept of Jini could be implemented in C++. Instead of Java byte code, JinACE [KiJa04] ships platform-dependent shared libraries across the network. Similarly, in addition to Jini, various technologies such as UPnP [UPnP04], and Microsoft .NET [Rich02] are built around the concept of ad hoc networking.
While all the ad hoc networking technologies are either platform- or language-dependent, they share a common underlying architecture. ...