research:dgc
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
research:dgc [2006/07/01 12:59] – elisag | research:dgc [2006/07/01 15:42] – elisag | ||
---|---|---|---|
Line 3: | Line 3: | ||
==== Motivation ==== | ==== Motivation ==== | ||
- | Mobile ad hoc networks represent a new kind of distributed system with distinguishing characteristics that pose new challenges in the field of distributed garbage collection (DGC). In particular, DGC must deal with a highly partial disconnected network topology where remote references may be inaccessible for unpredicted amount of time. DGC mechanisms typically determine the reachability of the remote objects by means of communication between the nodes involved. However, in a mobile setting where disconnections are the rule rather the exception, the system cannot determine how long it should wait for a connection to be restored. | + | Mobile ad hoc networks represent a new kind of distributed system with distinguishing characteristics that pose new challenges in the field of distributed garbage collection (DGC). In particular, DGC must deal with a highly partial disconnected network topology where remote references may be inaccessible for unpredicted amount of time. DGC mechanisms typically determine the reachability of the remote objects by means of communication between the nodes involved. However, in a mobile setting where disconnections are the rule rather the exception, the system cannot determine how long it should wait for a connection to be restored. |
- | Knowing when the communication will be restored between two devices depends on how the application reacts to disconnections. Some applications may wait for the connection to be restored to resume its computation while some others may continue their computation with a substitute service in the proximity instead of waiting for the connection to be restored. Moreover, context information may also influence the behaviour of mobile applications. Imagine the case of a user that wants to print some of their PDA files in a printer available in the ambient. Considering that this interaction occurrs at the user's home, their PDA will establish a remote reference to the user printer service. The PDA application could keep this remote reference after the disconnection of the devices since there is a high change that the user will come back eventually and print another file. Considering the same kind of interaction when the user is attending a conference, the remote reference could be reclaimed after the termination of the conference once the user has left. These examples illustrates that DGC process depends not only on the object graph but also on the context in which the objects are themselves - understanding context as internal context such as the semantics of the application or the role of the reference in the network, but also external context such as the location of the devices or identity information. | + | Our position |
- | + | ||
- | As a result, we claim that reclaiming remote objects can no longer be a low level concern tackled in a transparent way with a DGC mechanism. | + | |
==== Design ==== | ==== Design ==== | ||
- | Semi-automatic garbage collection is a hybrid approach which relies on an underlying local GC and proposes a non-transparent DGC. The approach can be seen as an extension to the indirect reference counting (Piquer,1991) and network objects (Birrel | + | Semi-automatic garbage collection is a hybrid approach which relies on an underlying local GC and proposes a non-transparent DGC. The approach can be seen as an extension to the indirect reference counting (Piquer,91) and network objects (Birrell |
+ | |||
+ | {{ remoterefint.jpg? | ||
+ | |||
+ | Since devices may not be able to communicate at some point in time, when a remote reference is first allocated both parties in the interaction will establish a contract with the condition under which the reference is useful to the application. Therefore, if one devices becomes inaccessible because of a broken connection, the other one is aware of the conditions in which the inaccessible reference is still valuable. | ||
- | Since devices may not be able to communicate at some point in time, when a remote reference is first allocated both parties in the interaction will establish a contract with the condition under which the reference is useful to the application. Therefore, if one devices becomes inaccessible because of a broken connection, the other one is aware of the conditions in which the inaccessible reference is still valuable. | + | We propose // |
==== Ongoing and Future work ==== | ==== Ongoing and Future work ==== | ||
- | We are currently exploring the necessary referencing strategies for the developer to annotate remote references | + | We are currently exploring the necessary referencing strategies for the developer to annotate remote references. We have come up with a tentative classification of referencing strategies that can be found [ [[http:// |
We have also identified a number of open issues that are not properly tackled yet by our approach: | We have also identified a number of open issues that are not properly tackled yet by our approach: |
research/dgc.txt · Last modified: 2015/02/04 19:10 by elisag