You are on page 1of 7

RECOVERY GUARENTEES IN MOBILE

COMMUNICATIONS

Prepared by: R.GANGADHAR NAIDU raya_varapu@yahoo.co.in


P.NAGARJUNA

DEPERTEMENT OF COMPUTER SCIENCE &ENGINEERING


Dr. SAMUEL GEORGE INISTITUTE OF ENGINEERING AND TECHNOLOGY,
MARKAPUR, PRAKASAM DISTRICT, A. P., INDIA.

ABSTRACT: the particular needs of mobile systems.


This sheds light not just on how to do
Mobile applications increasingly recovery on mobile systems but also on
require transaction-like properties, the nature of recovery in general.
particularly those of recovery. Because This paper is an exercise, as part
there is a lack of abstractions to of those efforts, to apply a novel
decompose the machinery of recovery, abstraction (recovery guarantees) to
realizing recovery is difficult and error- expose the relationships, vis-`avis
prone, especially in a novel context like recovery, between the components of a
mobile systems. mobile system.
We introduce recovery Our goal is to show how mobility affects
guarantees to tackle this problem by the realization of recovery properties,
characterizing the assurances relevant to and to demonstrate the usefulness of our
recovery that a subsystem must give to approach to reason about and craft
another. They describe what can be recovery.
expected but not the how it is
implemented for recovery. Guarantees Organization of this paper:
are complemented by recovery
protocols, which prescribe behaviors The rest of the paper is organized
subsystems should follow in order to as follows. Discusses a mobile system
take advantage of the guarantees. In this and its recovery characteristics,
paper we use the notions of recovery introducing the necessary notation. This
guarantees and protocols to show the is followed by a discussion how
relationships, vis-à-vis recovery, recovery information must be
between the components of a mobile propagated to support eager and lazy
system. Our analysis shows which handoffs, and how repair is done.
components of recovery remain Section 4 discusses related work and
unchanged (from a conventional Section 5offers conclusions and suggests
Recovery design) and which respond to further research.
INTRODUCTION: MOBILE SYSTEMS:
Recovery is important because it We consider a mobile system
supports desirable transactional described by Pradhanetal, which consists
functionality, which preserves the of a set of fixed base hosts and mobile
consistency of data in the face of hosts. Each base covers a cell, which is
failures. The particular case of recovery an area in which there may be zero or
in mobile systems is interesting for more mobile hosts. A mobile host may
several reasons. First, mobile systems move from one cell to another, but at
are multi-node distributed systems and any given time it communicates with at
although they exhibit partial failures, most one base host. For our purposes it
their services are expected to degrade is sufficient to consider a single mobile
gracefully, i.e., with a loss of host, which we denote with M in the
functionality proportional to the severity sequel, because we assume that mobile
of the failure. Second, the mobility of a hosts do not interact directly for the
host imposes restrictions (on bandwidth, purposes of recovery. Distributed
power, and reliability of storage) that applications require exchange of
affect key aspects of recovery support. A messages between (local and mobile)
mobile system’s reliable/stable storage hosts and user inputs at the mobile hosts.
may be limited, or non existent, Those are the operations that change the
necessitating the mobile host’s frequent state of a host. A message sent to a
communication with the base; however, mobile host M is first sent to the base
the bandwidth of the link between a host which
mobile and its base is not only much Covers the cell that M is in; B then
smaller than that between computing and forwards the message to .M for recovery,
storage (disk) subsystems, but also the system uses stable storage on fixed
smaller than that between hosts on a hosts, because disk storage at a mobile
fixed (local or even wide-area) network. host is frequently disconnected and
In other words, a mobile host needs its deemed vulnerable to catastrophic
fixed base host to support its recovery, failures. In this paper we adopt the
but communicating with it is slow and logging approach proposed in before a
expensive. Also, when a mobile host message is transmitted to a mobile host,
migrates it changes base hosts, thus the M its base station host logs it. Even
mobile relates (for its recovery support) inputs at are sent to and effected at B
not with an individual fixed host but only after’s B acknowledgment.
with the network, which becomes
burdened with abstracting the migration MOBILE SYSTEM NOTATION:
for the purposes of recovery. Thus the
problem of recovery in mobile systems The following augments the
is challenging because of its distributed notation for the mobile system case.
nature and because resources are quite Here the subsystems of interest are the
limited. hosts (fixed and mobile); we also
introduce notation to describe the
notions of base, handoff, and the
connectivity between hosts.
• A, B, C…denote hosts
(subsystems); M denotes a
mobile host. Predicate Mov(A)
is true if and only if host A is • Each receive always has its
mobile. corresponding send:
• Cnx (A, B) denotes that A and B
are connected, i.e., that they can We omit notation for the
exchange messages with each transitive closure of but it is obvious that
other. when a mobile host is in a cell it can
communicate with any fixed host via its
• B=Base (M) means M is within
base
the cell controlled by host B (the
base). Base hosts are always
fixed. Send A(Pc,B) denotes that Eager and Lazy Handoffs:
host A sends a message to host
B containing operation p, to be The preceding does not take into
applied on host C Send A account the effect on recovery of a
(Pa,A) . We write when a local mobile host’s
transaction invokes operation Migration through the network.
pA on .A. Migration is represented by a handoff,
• Recv (Pb)denotes that host which happens when a mobile host M
receives a message containing leaves a cell with base A and enters a
operation , which must be new cell whose base is B. We require
applied on host B that recovery-related information for
initially available on must still be
available should recovery be necessary
while M is in B’s cell.
To make the recovery
Mobile System Properties:
information available to a mobile host,
the approaches are eager (pessimistic in
The following properties
[9]), in which the information follows M
characterize the mobile system under
on the fixed network (i.e., as M moves
study. Direct communication is always
from to, its recovery information is
possible for any pair of fixed hosts. A
forwarded from to); and lazy, in which
mobile host can only communicate with
information is only fetched from the
its base host.
original host if and when necessary (i.e.,
the information remains at, and just
Specifically:
keeps track of that fact). For the eager
approach, protocol P6 simply ensures
• A fixed host is connected with all other that when a mobile host arrives in a new
fixed hosts: cell, the previous base station has
transmitted the recovery information to
• A mobile host is directly the current cell as part of the handoff:
connected to its base host (if it is
connected to all)
intuitive view of these characterizations
is that protocols prescribe correct normal
processing behavior for transactions
Because protocol P6 ensures that (e.g., log before installing), whereas
the information is sent at the time of guarantees prescribe correct behavior for
handoff, the antecedent of G5 holds. the underlying infrastructure, which
When recovery information resides on must hold even through failures (e.g.,
(because was invoked while was in’s fixed hosts are always connected).
cell), as transmitting the recovery Second, handoffs present a
information to is always possible this simple example of composition of
means that the recovery information is guarantees. The recovery guarantee
always available at the current base host originally obtained by the mobile host in
for .Implementing the lazy approach the first cell which logged its operations
only requires that there exist a linked list is revalidated as the mobile host moves.
of the base stations visited by the mobile The new guarantee is derived as a
host in which there is extant recovery composition of the original guarantee
information relevant to the host. One (between M and A in the terms of the
way to ensure that is logging the handoff preceding discussion) and the guarantee
events, so that recovery can later find the extant between fixed nodes in the
appropriate information. network.

For completeness, notice that


when the recovery information was
generated in the
same cell where the mobile host is,
satisfying the guarantee G5 is trivial,
because we have the consequent already.
The preceding discussion of eager and
lazy handoffs is interesting on several
accounts.
First, it shows how the same
guarantee can be combined with two
different protocols depending on the
desired policy. Guarantee G5 describes a
property of the architecture of the
system, namely that the connectivity
between fixed hosts facilitates
propagating recovery information
between them. Protocol P6 describes
how to use the guarantee –propagate
recovery information– eagerly; P7, how
to do it lazily. Thus guarantees and
protocols decompose recovery. An
Third, the contrast between eager state of M will be correct after consider
and lazy handoffs makes it clear that in subsection 3.2. Thus it becomes
guarantees and protocols strive to apparent that the repair phase of
maintain the recovery requirements recovery, while it relies on the invariants
necessary to make recovery possible. induced by the protocols and guarantees
What guarantee G5 and protocols P6 or of the normal processing phase, admits
P7 ensure is that, after a crash, the of separate treatment in terms of its own
recovery system will find sufficient protocols and guarante’s. We focus on
information to enable it to repair the crash and repair next.
state of M. They do not ensure that the

Crash and Repair: somewhere else durable –a host on the


fixed network, but not necessarily
The repair phase of recovery Base(M), as that’s a policy choice. Thus
uses log information (possibly resident we specify that for each operation p
on various issued before the crash, repair must
places) to reconstruct the state of the verify that is committed but uninstalled,
mobile host. The high-level property at find the redo information p
work here is that the information for ; move the redo info for p to m ; and
necessary for undo or redo (as using the guarantee that redo-info can be
necessary) is durably stored in one of the used to redo p install p.
hosts. In this subsection we briefly
outline the protocols of the repair phase.
One set of protocols delimits there pair
actions, by prescribing which events
must happen between the occurrence of
a crash event and the completion of
repair work. The other set of protocols
describes the repair work itself, for
example indicating that the effects of a
‘loser’ operation (e.g. one belonging to a
transaction uncommitted before the
crash) must be undone.
The repair phase begins after a
crash event. Thus we need to establish a
protocol requirement that if a crash
happen recovery must happen too. A
committed operation (on) must be
installed5 in M and somewhere in the
fixed network, because we do not trust
M’s storage to be durable. Thus
repairing the database will mean making
the operation available on M (so’s state
reflects a committed state) as well as
The repair phase ends when the by the restrictions identified by their
state of the whole database has been work.
restored to the committed projection of Certain type of operations –repair
the history up to the crash. This may not work– can only happen while the
be a single event; instead it is database is being repaired; i.e., the
characterized on a per-object and per- events cannot appear at other times in
operation basis. Certain type of the history of the system.
operations repair work can only happen Also, the order in which
while the database is being repaired; i.e., operations are applied during repair
the events cannot appear at other times work is important, both to recreate the
in the history of the system. Also, the state correctly and to improve the
order in which operations are applied performance of recovery. Lomet and
during repair work is important, both to Tuttle identify the minimal order that the
recreate the state correctly and to correct redo installation of operations
improve the performance of recovery. during the repair work must follow to
Lomet and Tuttle [6, 7] identify the preserve correctness. The method we
minimal order that the correct redo outline here for the formalization of the
installation of operations during the repair phase uses of the log information
repair work must follow to preserve to ascertain the original order of the
correctness. The method we outline here operations, enabling the repair
for the formalization of the repair phase algorithms to abide by the restrictions
uses of the log information to ascertain identified by their work
the original order of the operations,
enabling the repair algorithms to abide
Related Work: order required in the installation of
operations during the repair phase of
Few researchers have dealt with recovery. This is very useful in
the formalization of aspects of recovery. specifying correctness of recovery at the
For example, uses I/O automata to low-level of recovery, as well as leading
formally describe a recovery system to improved cache management.
based on ARIES; however, his Our work complements theirs,
description is at a low level of because we describe higher-level
abstraction, close to the implementation. properties (via guarantees and protocols)
Focusing on the redo portion of of the recovery subsystem whereas
recovery, Lomet and Tuttle derive and Lomet and Tuttle’s prescribe how to
prove the correctness of a redo recovery preserve correctness at the level of
algorithm based on an installation graph installing updates.
that imposes an ordering significantly
weaker than the usual concurrency Conclusions:
control conflict graph. From this
characterization they develop algorithms In some sense, protocols and
to manage the volatile storage, a test to guarantees are very closely tied to each
choose which operations from the log other. Where as protocols talk about
must be redone, and an idempotent what must be done to achieve correct
recovery algorithm that uses this test. In behavior, a guarantee states what can be
particular, they identify the weakest expected if certain events occur or
operations are performed correctly. In handoff handling in terms of protocols
this paper, we have shown that the and guarantees, we exposed assumptions
abstractions of recovery guarantees can that were implicit in the discussion of
be very helpful in exposing the recovery. We showed how the
connections and expectations that exist guarantees of mutual communication
between different components of a across the fixed network, composed with
mobile system involved in a the original recovery guarantee for an
transactional activity. Similarly, operation; enable the recovery of
recovery protocols make behavior operations once the mobile host has
requirements explicit. moved to a different cell.
By describing the mobile system Second, in our describing the
and its behavior in terms of guarantees alternatives for handoffs we used
and protocols, we obtained the following abstraction to characterize the broad
benefits. First, we used abstraction to requirement (a more abstract guarantee)
separate what a component can expect all approaches must satisfy, and then
from another; e.g., the mobile host’s precisely showed how that requirement
(recovery) expectations of the fixed is satisfied by the eager and the lazy
hosts. Also, the flip side of this abstract approach. In further work we will use
view serves to show what the system and this approach of refining guarantees to
each component must provide to others. precisely specify the recovery
Moreover, this documents precisely the machinery, which in this paper we
challenges of providing recovery under described informally.
mobility. For example, in showing

Reference
Computer Networks- Tanenbaum IEEE
We believe that because the
abstractions of guarantees and protocols Communications Magazine- 2000-2001
help in understanding what a component
Editions IEEE Spectrum-1995
is expected to do, they will enable using
a divide and conquer approach to Elektor Electronics-June 2001
crafting recovery protocols and
Mobile communication systems and
subsystems. To this end, we are planning
to examine the crafting of recovery for services.- By RAJPANDYA.
other transaction processing platforms
Fundamental of mobile communication
and for workflow systems.
and computing -From

You might also like