Post on 30-May-2018
transcript
8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
1/12
8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
2/12
PERVASIVE COMPUTING
Abstract
This paper discusses the challenges in computer
systems research posed by the emerging field of
Pervasive computing or Ubiquitous computing. It first
examines the relationship of this new field to its
predecessors: distributed systems and mobile
computing. It then identifies four new research thrusts:
effective use of smart spaces, invisibility, localized
scalability, and masking uneven conditioning. Next, it
sketches a couple of hypothetical pervasive computing
scenarios, and uses them to identify key capabilities
missing from todays systems. The paper closes with a
discussion of the research necessary to develop these
capabilities.
8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
3/12
Ubiquitous computing (ubicomp) is a post-desktop
model ofhuman-computer interaction in which information processing
has been thoroughly integrated into everyday objects and activities.
In the course of ordinary activities, someone "using" ubiquitous
computing engages many computational devices and systems
simultaneously, and may not necessarily even be aware that they are
doing so. This model is usually considered advancement from thedesktop paradigm.
This paradigm is also described as pervasive computing,
ambient intelligence. When primarily concerning the objects involved,
it is also physical computing, the Internet of Things, haptic
computing, and things that think. Rather than propose a single
definition for ubiquitous computing and for these related terms,
taxonomy of properties for ubiquitous computing has been proposed,
from which different kinds or flavours of ubiquitous systems and
applications can be described
HOW IT HAPPENS?
At their core, all models of ubiquitous computing (also
called pervasive computing) share a vision of small, inexpensive,
robust networked processing devices, distributed at all scales
throughout everyday life and generally turned to distinctly common-
place ends. For example, a domestic ubiquitous computing
environment might interconnect lighting and environmental controls
with personal biometric monitors woven into clothing so that
illumination and heating conditions in a room might be modulated,
continuously and imperceptibly. Another common scenario posits
refrigerators "aware" of their suitably-tagged contents, able to both
plan a variety of menus from the food actually on hand, and warn
users of stale or spoiled food.
http://en.wikipedia.org/wiki/Human-computer_interactionhttp://en.wikipedia.org/wiki/Desktop_environmenthttp://en.wikipedia.org/wiki/Ambient_intelligencehttp://en.wikipedia.org/wiki/Internet_of_Thingshttp://en.wikipedia.org/wiki/Human-computer_interactionhttp://en.wikipedia.org/wiki/Desktop_environmenthttp://en.wikipedia.org/wiki/Ambient_intelligencehttp://en.wikipedia.org/wiki/Internet_of_Things8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
4/12
Ubiquitous computing presents challenges across computer
science: in systems design and engineering, in systems modelling,
and in user interface design. Contemporary human-computer
interaction models, whether command-line, menu-driven, or GUI-
based, are inappropriate and inadequate to the ubiquitous case. Thissuggests that the "natural" interaction paradigm appropriate to a fully
robust ubiquitous computing has yet to emerge - although there is
also recognition in the field that in many ways we are already living in
an ubicomp world. Contemporary devices that lend some support to
this latter idea include mobile phones, digital audio players, radio-
frequency identification tags, GPS, and interactive whiteboards.
(An actuator is a mechanical device for moving or controlling a mechanism or system. An actuator
typically is a mechanical device that takes energy, usually transported by air, electric current, or liquid,
and converts that into some kind of motion)
Mark Weiser proposed three basic forms for ubiquitous systemdevices, see also Smart device: tabs, pads and boards.
Tabs: wearable centimetre sized devices Pads: hand-held decimetre-sized devices Boards: meter sized interactive display devices.
These three forms proposed by Weiser are characterised by being
macro-sized, having a planar form and on incorporating visual output
displays. If we relax each of these three characteristics we can
expand this range into a much more diverse and potentially more
useful range of Ubiquitous Computing devices. Hence, three
additional forms for ubiquitous systems have been proposed:
http://en.wikipedia.org/wiki/Command-linehttp://en.wikipedia.org/wiki/GUIhttp://en.wikipedia.org/wiki/Mobile_phonehttp://en.wikipedia.org/wiki/Digital_audio_playerhttp://en.wikipedia.org/wiki/Radio-frequency_identificationhttp://en.wikipedia.org/wiki/Radio-frequency_identificationhttp://en.wikipedia.org/wiki/GPShttp://en.wikipedia.org/wiki/Interactive_whiteboardhttp://en.wikipedia.org/wiki/Mark_Weiserhttp://en.wikipedia.org/wiki/Smart_devicehttp://en.wikipedia.org/wiki/Command-linehttp://en.wikipedia.org/wiki/GUIhttp://en.wikipedia.org/wiki/Mobile_phonehttp://en.wikipedia.org/wiki/Digital_audio_playerhttp://en.wikipedia.org/wiki/Radio-frequency_identificationhttp://en.wikipedia.org/wiki/Radio-frequency_identificationhttp://en.wikipedia.org/wiki/GPShttp://en.wikipedia.org/wiki/Interactive_whiteboardhttp://en.wikipedia.org/wiki/Mark_Weiserhttp://en.wikipedia.org/wiki/Smart_device8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
5/12
Dust: miniaturised devices can be without visual output
displays, e.g., Micro Electro-Mechanical Systems (MEMS),
ranging from nanometres through micrometers to millimetres.
Skin: fabrics based upon light emitting and conductive
polymers, organic computer devices, can be formed into moreflexible non-planar display surfaces and products such as clothes
and curtains, see OLED display. MEMS device can also be
painted onto various surfaces so that a variety of physical world
structures can act as networked surfaces of MEMS.
Clay: ensembles of MEMS can be formed into arbitrary three
dimensional shapes as artefacts resembling many different
kinds of physical object.
UNDERSTANDING THE MODULES IN PERVASIVE
COMPUTING:
Three major issues which make pervasive computing to stand out and
be on of its kind are:
1. Distributed systems
2. Mobile computing
3. Pervasive computing
4. Internal network which governs all other devices (either hand
held or static)
Distributed Systems
The field of distributed systems arose at the intersection of
personal computers and local area networks. The research that
followed from the mid-1970s through the early 1990s created a
conceptual framework and algorithmic base that has proven to be of
enduring value in all work involving two or more computers connected
by a network whether mobile or static, wired or wireless, sparse or
pervasive.
The factors governing distributed systems are:
http://en.wikipedia.org/wiki/Microelectromechanical_systemshttp://en.wikipedia.org/wiki/OLED_displayhttp://en.wikipedia.org/wiki/Microelectromechanical_systemshttp://en.wikipedia.org/wiki/OLED_display8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
6/12
remote communication, including protocol layering, remoteprocedure call, the use of timeouts, and the use of end-to-endarguments in placement of functionality.
fault tolerance, including atomic transactions, distributed andnested transactions, and two-phase commit.
high availability, including optimistic and pessimistic replicacontrol, mirrored execution, and optimistic recovery.
remote information access, including caching, function shipping,distributed file systems, and distributed databases.
security, including encryption-based mutual authentication and
privacy.
Mobile Computing
The appearance of full-function laptop computers and
wireless LANs in the early 1990s led researchers to confront the
problems that arise in building a distributed system with mobile
clients. The field of mobile computing was thus born. Although many
basic principles of distributed system design continued to apply, four
key constraints of mobility forced the development of specialized
techniques. These constraints are: unpredictable variation in network
quality, lowered trust and robustness of mobile elements, limitations
on local resources imposed by weight and size constraints, and
concern for battery power consumption. Mobile computing is still a
very active and evolving field of research, whose body of knowledge
awaits codification in textbooks. The results achieved so far can be
grouped into the following broad areas:
mobile networking, including Mobile IP, ad hoc protocols, andtechniques for improving TCP performance in wireless networks.
mobile information access, including disconnected operation,bandwidth-adaptive file access, and selective control of dataconsistency.
support for adaptative applications, including trans-coding by
proxies and adaptive resource management.
8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
7/12
system-level energy saving techniques, such as energy awareadaptation, variable-speed processor scheduling, and energy-sensitive memory management.
location sensitivity, including location sensing and location-awaresystem behavior
Pervasive Computing
We characterized a pervasive computing environment asone saturated with computing and communication capability, yet sogracefully integrated with users that it becomes a technology thatdisappears. Since motion is an integral part of everyday life, such atechnology must support mobility; otherwise, a user will be acutely
aware of the technology by its absence when he moves. Hence, theresearch agenda of pervasive computing subsumes that of mobilecomputing, but goes much further.
Drilling Down
Practical realization of pervasive computing will require us to
solve many difficult design and implementation problems. Building on
the discussion in earlier sections, we now look at some of these
problems at the next level of detail. Our goal is only to convey an
impressionistic picture of the road ahead. We make no claim of
8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
8/12
completeness or exclusiveness this specific set of topics is merely a
sampling of the problem space, presented in no particular order. In
this discussion, we assume that each user is immersed in a personal
computing space that accompanies him everywhere and mediates all
interactions with the pervasive computing elements in hissurroundings. This personal computing space is likely to implement on
a body-worn or handheld computer (or a collection of these acting as
a single entity). We refer to this entity as a client of its pervasive
computing environment, even though many of its interactions may be
peer-to-peer rather than strictly client-server. As indicated by the
discussion below, the client needs to be quite sophisticated and,
hence, complex.
User Intent
For proactivity to be effective, it is crucial that a pervasive
computing system track user intent. Otherwise, it will be almost
impossible to determine which system actions will help rather than
hinder the user. For example, suppose a user is viewing video over a
network connection whose bandwidth suddenly drops. Should the
system (a) reduce the fidelity of the video, (b) pause briefly to find
another higher-bandwidth connection, or (c) advise the user that thetask can no longer be accomplished? The correct choice will depend
on what the user is trying to accomplish. Todays systems are poor at
capturing and exploiting user intent. On the one hand are generic
applications that have no idea what the user is attempting to do, and
can therefore offer little support for adaptation and proactivity. On the
other hand are applications that try to anticipate user intent but do so
very badly gimmicks like the Microsoft paperclip are often more
annoying than helpful.
Adaptation Strategy
Adaptation is necessary when there is a significant mismatch
between the supply and demand of a resource. The resource in
question may be wireless network bandwidth, energy, computing
cycles, memory, and so on. There are three alternative strategies for
adaptation in pervasive computing. First, a client can guide
applications in changing their behaviour so that they use less of a
scarce resource. This change usually reduces the user-perceived
8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
9/12
quality, or fidelity, of an application. Odyssey is an example of a
system that uses this strategy. Second, a client can ask the
environment to guarantee a certain level of a resource. This is the
approach typically used by reservation-based QoS systems. From the
viewpoint of the client, this effectively increases the supply of ascarce resource to meet the clients demand. Third, a client can
suggest a corrective action to the user. If the user acts on this
suggestion, it is likely (but not certain) that resource supply will
become adequate to meet demand. All three strategies are important
in pervasive computing. The existence of smart spaces suggests that
some of the environments encountered by a user may be capable of
accepting resource.
Context Awareness
A pervasive computing system that strives to be minimally
intrusive has to be context-aware. In other words, it must be
cognizant of its users state and surroundings, and must modify its
behavior based on this information. A users context can be quite rich,
consisting of attributes such as physical location, physiological state
(such as body temperature and heart rate), emotional state (such as
angry, distraught, or calm), personal history, daily behavioralpatterns, and so on. If a human assistant were given such context, he
or she would make decisions in a proactive fashion, anticipating user
needs. In making these decisions, the assistant would typically not
disturb the user at inopportune moments except in an emergency.
Can a Pervasive Computing system emulate such a human
assistant?
A key challenge is obtaining the information needed tofunction in a context-aware manner. In some cases, the desired
information may already be part of a users personal computing
space. For example, that space may include schedules, personal
calendars, address books, contact lists, and to-do lists. More dynamic
information has to be sensed in real time from the users
environment. Examples of such information include position,
orientation, the identities of people nearby, locally observable objects
and actions, and emotional and physiological state. Implementing a
context-aware system requires many issues to be addressed.
8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
10/12
4.7. Balancing Proactivity and Transparency
Proactivity is a double-edged sword. Unless carefully
designed, a proactive system can annoy a user and thus defeat the
goal of invisibility. How does one design a system that strikes the
proper balance at all times? Self-tuning can be an important tool in
this effort. A mobile users need and tolerance for proactively are
likely to be closely related to his level of expertise on a task and his
familiarity with his environment. A system that can infer these factors
by observing user behaviour and context is better positioned to strike
the right balance. Historically, the ideal in system design has beentransparency. For example, caching is attractive in distributed file
systems because it is completely transparent. Unfortunately, servicing
a cache miss on a large file over a low-bandwidth wireless network
takes so long that most users would rather be asked first whether
they really need the file. However, a flurry of such interactions can
overwhelm the user.
4.8. Privacy and Trust
Privacy, already a thorny problem in distributed systems
and mobile computing, is greatly complicated by pervasive
computing. Mechanisms such as location tracking, smart spaces, and
use of a user becomes more dependent on a pervasive computing
system, it becomes more knowledgeable about that users
movements, behaviour patterns and habits. Exploiting this
information is critical to successful proactivity and self-tuning. At the
same time, unless use of this information is strictly controlled, it can
be put to a variety of unsavoury uses ranging from targeted
spam to blackmail. Indeed, the potential for serious loss of privacy
may deter knowledgeable users from using a pervasive computing
system Greater reliance on infrastructure means that a user must
trust that infrastructure to a considerable extent. Conversely, the
infrastructure needs to be confident of the users identity and
authorization level before responding to his requests. It is a difficultchallenge to establish this mutual trust in a manner that is minimally
8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
11/12
intrusive and thus preserves invisibility. Privacy and trust are likely to
be enduring problems in pervasive computing.
Summary
This paper began by exposing some of the limitations
behind the way mobile computing devices are used today. As the
scenario illustrated, today's applications do not enable people to
perform many of the tasks they need to do, do not provide satisfying
8/9/2019 PERVASIVE COMPUTING Fully Modified_watermarked
12/12
user experiences, and fall far short of the potential for pervasive
computing. For pervasive computing to meet the expectations of
mobile users, fundamental changes need to occur in the way people
perceive the roles of devices, applications and the environment.
Again, devices need to be perceived as portals into theapplication/data space supported by the environment, rather than
repositories of custom software. Applications need to be seen as tasks
performed on behalf of a user, not as programs written to exploit the
resources of a specific computer. And, the computing environment
needs to be recognized as an extension of the user's surroundings,
not a virtual space for hosting and running programs.
To realize this vision of devices, applications and
environments, we believe a new application model is needed. The
model is characterized by a device-independent application
development process, which includes abstract specification of the
application front-end and the application's resource and service
requirements. The model includes a highly dynamic load-time system
supporting application discovery, resource and capability negotiation,
and application apportioning. The run-time system allows the
resources to be dynamically shared among client devices and servers.
It also includes monitoring and check pointing, and enables a runningapplication to migrate from device to device or to simultaneously
utilize the interface capabilities of multiple devices.