1
© 2007 by Leszek T. Lilien
Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001
Pervasive Computing vs. Distributed Systems & Mobile Computing (27)
Drilling Down - The Difficult Problems (4)
 4.1) User Intent
 Proactivity requires that a PERV system tracks user intent
 Otherwise, almost impossible to determine which system actions
help rather than hinder the user.
 E.g., suppose a user is viewing video over a network
connection whose bandwidth suddenly drops
 System choices:
 a) reduce the fidelity of the video,
 b) pause briefly to find another higher-bandwidth
connection, or
 c) terminate the task?
 Correct choice depends on what the user is trying to
accomplish
 Today’s systems are poor at capturing and exploiting user intent
 On the one hand: generic applications that have no idea what the
user is attempting to do
 Offer little support for adaptation and proactivity
 On the other hand: applications that try to anticipate user intent but
do so very badly
 Gimmicks like the Microsoft ‘‘paperclip’’ often more annoying than helpful
2
© 2007 by Leszek T. Lilien
Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001
Pervasive Computing vs. Distributed Systems & Mobile Computing (28)
Drilling Down - The Difficult Problems (5)
 User intent - some important research questions:
 Can user intent be inferred, or does it have to be explicitly
specified?
 In the latter case, is it statically specified (e.g., from a file) or
obtained on demand through dynamic interactions?
 How is user intent represented internally? How is it used?
 How rich must this information be for it to be useful? When and
how is it updated? How do different layers of a system access this
knowledge?
 How does one characterize accuracy of user intent
knowledge?
 Is incomplete or imprecise knowledge of user intent still useful? At
what level of uncertainty is it better to ignore such knowledge in
making decisions?
 Will the attempt to obtain intent to burdensome on the
user?
 Will it hurt usability and performance unacceptably?
 Is the benefit [of using user intent] worth the cost? How does one
quantify this benefit?
4
© 2007 by Leszek T. Lilien
Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001
Pervasive Computing vs. Distributed Systems & Mobile Computing (29)
Drilling Down - The Difficult Problems (6)
 4.2) Cyber Foraging
 Two contradictory requirements for mobile devices:
 Must be lightweight = small, light, with small and light battery
 Compromises computing capabilities
 Must have powerful comp/comm capabilities
 Ever-growing expectations of mobile users
 Well beyond capabilities of a lightweight mobile computer
 How to reconcile contradictory requirements?
 Difficult to reconcile
 Idea: use cyber foraging
 forage [fawr-ij] … 3. the act of searching for provisions of any kind.
[cf. Dictionary.com]
 Cyber foraging:
Dynamically augment the computing resources of a
wireless mobile computer by exploiting wired hardware
infrastructure [LTL: of the surrounding smart space]
5
© 2007 by Leszek T. Lilien
Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001
Pervasive Computing vs. Distributed Systems & Mobile Computing (30)
Drilling Down - The Difficult Problems (7)
 4.2. Cyber Foraging – cont.1
 Need infrastructure facilitating cyber foraging
 Need smart public spaces
 Equipped with compute servers or data staging servers
 Much as table lamps [or power outlets] are today
 Connected to the wired Internet through high-bandwidth networks
 ‘‘Wasting’’ smart infrastructure when not in use
 We can afford this ‘‘waste’’ to improve user experience
 Could ensure that never wasted - always in use
 E.g., run SETI program / sell time slices to others
 Surrogate of a mobile computer:
Hardware in the wired infrastructure temporarily
supporting cyber foraging for the mobile computer
 [LTL:] Compare this limited cyber foraging with more
extensive foraging (by employing helpers) in opportunistic
networks (oppnets). After we discuss oppnets (soon), see
how oppnets’ approach differs.
6
© 2007 by Leszek T. Lilien
Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001
Pervasive Computing vs. Distributed Systems & Mobile Computing (31)
Drilling Down - The Difficult Problems (8)
 4.2. Cyber Foraging – cont.2
 A typical foraging scenario
 Mobile computer (MC) enters a smart space
 MC detects surrogates and negotiates their use
 Communication with a surrogate via short-range wireless P2P (peer-
to-peer) technology
 Surrogate is MC’s networking gateway to the Internet
 When MC needs to perform an intensive computation accessing a
large volume of data, MC uses the surrogate
 Surrogate performs computations for MC
OR
 Surrogate services cache misses for MC
 Lower latency, avoiding Internet delays
 Surrogate caches data from the Internet on its local disk during
performing the computation
OR
 Surrogate may have staged data ahead of time in anticipation of the
user’s arrival in the neighborhood
 MC leaves the space
 Its surrogate bindings are broken
 Any data cached or staged for MC are discarded
7
© 2007 by Leszek T. Lilien
Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001
Pervasive Computing vs. Distributed Systems & Mobile Computing (32)
Drilling Down - The Difficult Problems (9)
 Cyber foraging – some important research questions:
 How does one discover the presence of surrogates?
 Of the many proposed service discovery mechanisms such as
JINI, UPnP, and BlueTooth proximity detection, which is best
suited for this purpose? Can one build a discovery mechanism that
subsumes all of them for greatest flexibility?
 How to handle the issue of trust?
 How does one establish an appropriate level of trust in a
surrogate? What are useful levels of trust in practice? How
applicable and useful is the concept of caching trust [29]? Can
one amortize the cost of establishing trust across many surrogates
in a neighborhood?
 How is load balancing on surrogates done?
 Is surrogate allocation based on an admission control approach,
or a best-effort approach? How relevant is previous work on load
balancing on networks of workstations?
8
© 2007 by Leszek T. Lilien
Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001
Pervasive Computing vs. Distributed Systems & Mobile Computing (33)
Drilling Down - The Difficult Problems (10)
 Cyber foraging – some important research questions – cont.
 How to handle the issue of staging?
 In typical situations, how much advance notice does a surrogate
need for effective staging with minimal delay?
 Is this on the order of seconds, minutes or tens of minutes?
What implications does this requirement have for the other
components of a pervasive computing system?
 What are the implications of cyber foraging for scalability
of smart fixed infrastructure?
 How dense does the fixed infrastructure have to be to avoid
overloads during periods of peak demand?
 What is the system support needed for seamless and
minimally intrusive surrogate experience for a user?
 Which are the components of this support that must be provided
by MC, and which by the smart space?

Sec.0a--Intro to pervasive computing 5.ppt

  • 1.
    1 © 2007 byLeszek T. Lilien Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001 Pervasive Computing vs. Distributed Systems & Mobile Computing (27) Drilling Down - The Difficult Problems (4)  4.1) User Intent  Proactivity requires that a PERV system tracks user intent  Otherwise, almost impossible to determine which system actions help rather than hinder the user.  E.g., suppose a user is viewing video over a network connection whose bandwidth suddenly drops  System choices:  a) reduce the fidelity of the video,  b) pause briefly to find another higher-bandwidth connection, or  c) terminate the task?  Correct choice depends on what the user is trying to accomplish  Today’s systems are poor at capturing and exploiting user intent  On the one hand: generic applications that have no idea what the user is attempting to do  Offer little support for adaptation and proactivity  On the other hand: applications that try to anticipate user intent but do so very badly  Gimmicks like the Microsoft ‘‘paperclip’’ often more annoying than helpful
  • 2.
    2 © 2007 byLeszek T. Lilien Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001 Pervasive Computing vs. Distributed Systems & Mobile Computing (28) Drilling Down - The Difficult Problems (5)  User intent - some important research questions:  Can user intent be inferred, or does it have to be explicitly specified?  In the latter case, is it statically specified (e.g., from a file) or obtained on demand through dynamic interactions?  How is user intent represented internally? How is it used?  How rich must this information be for it to be useful? When and how is it updated? How do different layers of a system access this knowledge?  How does one characterize accuracy of user intent knowledge?  Is incomplete or imprecise knowledge of user intent still useful? At what level of uncertainty is it better to ignore such knowledge in making decisions?  Will the attempt to obtain intent to burdensome on the user?  Will it hurt usability and performance unacceptably?  Is the benefit [of using user intent] worth the cost? How does one quantify this benefit?
  • 4.
    4 © 2007 byLeszek T. Lilien Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001 Pervasive Computing vs. Distributed Systems & Mobile Computing (29) Drilling Down - The Difficult Problems (6)  4.2) Cyber Foraging  Two contradictory requirements for mobile devices:  Must be lightweight = small, light, with small and light battery  Compromises computing capabilities  Must have powerful comp/comm capabilities  Ever-growing expectations of mobile users  Well beyond capabilities of a lightweight mobile computer  How to reconcile contradictory requirements?  Difficult to reconcile  Idea: use cyber foraging  forage [fawr-ij] … 3. the act of searching for provisions of any kind. [cf. Dictionary.com]  Cyber foraging: Dynamically augment the computing resources of a wireless mobile computer by exploiting wired hardware infrastructure [LTL: of the surrounding smart space]
  • 5.
    5 © 2007 byLeszek T. Lilien Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001 Pervasive Computing vs. Distributed Systems & Mobile Computing (30) Drilling Down - The Difficult Problems (7)  4.2. Cyber Foraging – cont.1  Need infrastructure facilitating cyber foraging  Need smart public spaces  Equipped with compute servers or data staging servers  Much as table lamps [or power outlets] are today  Connected to the wired Internet through high-bandwidth networks  ‘‘Wasting’’ smart infrastructure when not in use  We can afford this ‘‘waste’’ to improve user experience  Could ensure that never wasted - always in use  E.g., run SETI program / sell time slices to others  Surrogate of a mobile computer: Hardware in the wired infrastructure temporarily supporting cyber foraging for the mobile computer  [LTL:] Compare this limited cyber foraging with more extensive foraging (by employing helpers) in opportunistic networks (oppnets). After we discuss oppnets (soon), see how oppnets’ approach differs.
  • 6.
    6 © 2007 byLeszek T. Lilien Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001 Pervasive Computing vs. Distributed Systems & Mobile Computing (31) Drilling Down - The Difficult Problems (8)  4.2. Cyber Foraging – cont.2  A typical foraging scenario  Mobile computer (MC) enters a smart space  MC detects surrogates and negotiates their use  Communication with a surrogate via short-range wireless P2P (peer- to-peer) technology  Surrogate is MC’s networking gateway to the Internet  When MC needs to perform an intensive computation accessing a large volume of data, MC uses the surrogate  Surrogate performs computations for MC OR  Surrogate services cache misses for MC  Lower latency, avoiding Internet delays  Surrogate caches data from the Internet on its local disk during performing the computation OR  Surrogate may have staged data ahead of time in anticipation of the user’s arrival in the neighborhood  MC leaves the space  Its surrogate bindings are broken  Any data cached or staged for MC are discarded
  • 7.
    7 © 2007 byLeszek T. Lilien Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001 Pervasive Computing vs. Distributed Systems & Mobile Computing (32) Drilling Down - The Difficult Problems (9)  Cyber foraging – some important research questions:  How does one discover the presence of surrogates?  Of the many proposed service discovery mechanisms such as JINI, UPnP, and BlueTooth proximity detection, which is best suited for this purpose? Can one build a discovery mechanism that subsumes all of them for greatest flexibility?  How to handle the issue of trust?  How does one establish an appropriate level of trust in a surrogate? What are useful levels of trust in practice? How applicable and useful is the concept of caching trust [29]? Can one amortize the cost of establishing trust across many surrogates in a neighborhood?  How is load balancing on surrogates done?  Is surrogate allocation based on an admission control approach, or a best-effort approach? How relevant is previous work on load balancing on networks of workstations?
  • 8.
    8 © 2007 byLeszek T. Lilien Based on: M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Communications, 2001 Pervasive Computing vs. Distributed Systems & Mobile Computing (33) Drilling Down - The Difficult Problems (10)  Cyber foraging – some important research questions – cont.  How to handle the issue of staging?  In typical situations, how much advance notice does a surrogate need for effective staging with minimal delay?  Is this on the order of seconds, minutes or tens of minutes? What implications does this requirement have for the other components of a pervasive computing system?  What are the implications of cyber foraging for scalability of smart fixed infrastructure?  How dense does the fixed infrastructure have to be to avoid overloads during periods of peak demand?  What is the system support needed for seamless and minimally intrusive surrogate experience for a user?  Which are the components of this support that must be provided by MC, and which by the smart space?