The Challenges and Requirements of Mobile
Computing
Pradeep Loganathan
pl5@doc.ic.ac.uk
Information Systems Engineering (ISE II)
Department of Computing
Imperial College of Science, Technology and Medicine
"Mobile Computing constitutes a new paradigm
of computing which is expected to revolutionise the way computers are used."
George H. Forman
1 Introduction
Advancements in technology have
enabled portable computers to be equipped with wireless interfaces, allowing
mobile networked communication. This combination of mobility and networked
communications will give rise to a range of new applications and services.
However, the challenges involved in establishing this goal prove to be
non-trivial. This article identifies and briefly discusses some of the
issues of mobile computing.
2 The Constraints of Wireless Communication
Generally wireless computers have
less resources relative to stationary (wired) computers, this is because
wireless computers are required to be smaller, lighter and consume less
power than stationary computers. Wireless communication is more difficult
to implement than wired communication because of the interaction of the
surrounding environment with the message signal. Problems caused by the
environment include blocked signal paths, echoes and noise. Hence wireless
connections are more error prone, have much lower bandwidths, and have
frequent spurious disconnections when compared to wired connections. These
factors can increase communication latencies due to error control checks,
retransmissions, time-out delays and brief disconnections.
2.1 Disconnections
Since wireless communication is
so susceptible to disconnection, it is of great concern when designing
successful mobile computers. Resources can be allocated to handle disconnections
more elegantly, or to try and prevent those disconnections from happening.
In environments with frequent disconnections it is better for the mobile
computer to act as a stand-alone unit rather than a mobile terminal (i.e.
splitting the application and the user interface across the network). For
wide-area networks, round-trip RPC delays will tend to be expensive in
terms of wasted processor clock cycles, hence round-trip latencies and
brief disconnections can be made less expensive by operating asynchronously.
The advantages of using synchronous systems include a substantially simpler
design, implementation and debugging. Whereas the asynchronous model will
yield considerably higher performance because the receiver does not block
waiting for the requested data. Caching techniques could be used to enhance
the performance of weakly-connected and disconnected operation, but preserving
cache coherence under weak connectivity can be expensive. The Coda file
system solves this problem by maintaining cache coherence at multiple levels
of granularity and by the use of callbacks. In the Coda solution, fast
cache validation is performed by comparing version stamps maintained by
the clients and servers, then preserving the validity through callbacks.
This approach provides a trade-off between precision of invalidation for
speed of validation.
2.2 Low Bandwidth and Bandwidth Variability
Wireless networks deliver lower
bandwidth than wired networks, hence mobile computing designs need to be
very concerned about bandwidth consumption. The deliverable bandwidth per
user depends on the number of users sharing a cell. The network's capacity
can be measured by its bandwidth per cubic meter. This value can be improved
in two ways:
- Maintain multiple cells at different frequencies. This
technique, although more flexible, is limited by the range of frequencies
of the electromagnetic spectrum available for public consumption.
- Limiting transmission ranges so that more cells can fit
in a given area. This preferred approach is simpler, reduces power requirements,
and may decrease corruption of the signal. It is also known that transceivers
covering less area can achieve higher bandwidths.
Techniques such as compression,
logging (making large requests out of several short ones), prefetching
(guessing which files will be needed soon), and write-back caching can
help cope with low bandwidth. System performance can be further enhanced
by scheduling communications intelligently.
Mobile computing designs must cope
with much greater variations in network bandwidth than traditional designs.
A good design would be able to adapt to the currently available resources,
providing the user with a variable level of quality. As a mobile element
leaves the range of one network transceiver it switches to another, and
there may also be places where they can access multiple transceivers on
different frequencies. Concurrent use of a wired network and a wireless
network maybe possible too. There may be a need to change access protocols,
for example when switching from cellular coverage to satellite coverage.
2.3 Security Concerns
The security of wireless communication
is more easily compromised than wired communication, especially for wide
area networks. This is further complicated if users are allowed to cross
security domains, for example in a large firm where sensitive data accessible
to only authorised personnel and other data that is freely accessible to
anybody with a mobile computer. Secure communication over such networks
is accomplished by encrypting the sensitive data usually by using an encryption
key, only parties knowing the key will be given access to the data.
3 Mobility
The volatility of some information
is increased with the ability to change locations while connected to the
network. Certain data that may have been considered static for stationary
computing now becomes dynamic for mobile computing.
As mobile computers change location, they will use different
network access points, or 'addresses'. To communicate with a mobile computer,
its latest address must be known. Several techniques may be used to determine
the current network address of a mobile unit.
- Selective Broadcast: If a mobile computer is known
to be in a set of cells, then a message could be 'broadcasted' to these
known cells asking the required mobile unit to reply with its current network
address.
- Central Services: A logically centralised database
contains the current addresses of all mobile units. Whenever a mobile computer
changes its address, it sends a message to update the database.
- Home Bases: This is essentially the limiting case
of distributing a central service, i.e. only a single server knows the
current location of a mobile computer.
- Forwarding Pointers: This method places a copy
of the new address at the old location. Each message is forwarded along
the chain of pointers leading to the mobile computer. This requires an
active entity at the old address to receive and forward messages.
Traditional computers do not move,
hence location dependent information such as the local name server, available
printers etc. can be configured statically. A mechanism is needed for mobile
computers to obtain configuration data appropriate to the present location.
There maybe a need to obtain information on other mobile devices, and this
may cause a breach of security. Privacy will need to be maintained in some
cases where location information of a user maybe misused.
4 Portability
The design of a hand-held mobile
computer should strive for properties such as small size, light weight,
durable, and long battery life. Minimising power consumption can improve
portability and thus lengthen the life of a charge.
Power consumption is proportional
to CV2F, where C is the capacitance, V
is the voltage swing, and F is the clock frequency. Hence reducing
any of those factors will in turn reduce the power consumed. New portable
systems include Advanced Power Management systems that power down components
of the computer when idle. Applications too can help conserve energy by
reducing on their appetite for computation and communications.
Storage space on a mobile computer
is limited by the size and power requirements. Since disks consume more
power than RAM chips they are less popular and tend to be a liability.
Some solutions to storage problems are compression, code sharing, remote
access storage, and interpreting script languages instead of executing
compiled code.
4.1 Small User Interface
For smaller and more portable devices
current windowing techniques are inadequate. It is impractical to have
several windows open at the same time on a small screen even at high resolutions.
Due to a shortage of surface area of portable computers, it may be feasible
to trade buttons for some other form of input. The forms that may be feasible
are hand writing, voice and gesture recognition. Most PDAs implement hand
writing recognition, and are typically 96-98% accurate when trained. Common
pointing devices such as a pen or a mouse are used with mobile computers
because of their ease of use while mobile, their versatility and their
ability to substitute the keyboard.
5 Conclusion
Wireless communication brings challenging
new problems. Mobility makes information dynamic. Portability entails
limited resources available on board to handle the variable mobile computing
environment. The challenge for mobile computer designers is to incorporate
wireless communication, mobility, and portability to adapt the system designs
that have worked well for traditional computing.
References:
Mummert, L.B., Ebling, M.R., Satyanarayan. M, Exploiting
Weak Connectivity for Mobile File Access. In Proceedings of the Fifteenth
ACM Symposium on Operating Systems Principles. Copper Mountain Resort,
CO, December, 1995.
M. Satyanarayan, Mobile Computing: Where's the Tofu?
School of Computer Science, Carnegie Mellon University,
1996.
G.H.Forman, J.Zahorjan, The Challenges of Mobile Computing,
Computer Science & Engineering, University of Washington,
1994.
|