Supporting Disconnected Operation in Mobile CORBA
TCD-CS-1999-66.pdf (PDF) 210.0Kb
CORBA has been used successfully for a number of years as a way of building and connecting distributed applications. Normally this has been in the context of a wired network with static hosts. With recent developments in wireless technology, such as GSM and wireless LANs, a new potentially lucrative domain opens itself to the development of distributed applications. As the use of wireless technology becomes more widespread the applications that use it will become more complex. The CORBA architecture could be used to develop applications for this domain. However, CORBA does not yet take into account the problems associated with mobile computing such as limited processing resources on the mobile host and unreliable and low bandwidth wireless links. The Architecture for Location Independent CORBA Environments (ALICE), went some way to addressing the problems associated with ensuring that CORBA applications could operate successfully within a wireless network. ALICE defines a layered architecture, which takes into account the movement of mobile hosts and ensures that client-server connections remain established transparently to the user. This dissertation describes how ALICE could be extended to support disconnected operation for applications in a wireless network. The goal was to allow clients residing on a mobile device to continue operation without having to be in contact with remote servers. In this way the unreliability of the wireless link is avoided. This is achieved through the introduction of a new layer in the architecture called the Disconnected IIOP (D/IIOP) layer. The D/IIOP layer provides the additional functionality necessary to allow disconnected operation. The concept of disconnected operation is not new but is more generally associated with file systems such as Coda. One possible CORBA compliant way of implementing this behaviour was to use Object by Value. Object by Value is part of the CORBA 2.3 standard and enables the passing of an object by value rather than by reference. A prototype of the D/IIOP layer functionality was implemented using the Object by Value approach for moving CORBA objects. This approach was evaluated by enhancing a distributed scheduling application to allow it to work in a disconnected mode by using D/IIOP functionality. Object by Value did provide a mechanism to move CORBA servant functionality from the server side to the mobile host, and this did allow a client to operate without having to connect to the remote server. This added functionality however, came at a cost of changing both the server and client implementations quite extensively.
Author: Lynch, Niall
Availability:Full text available