Authors: David Garlan, Daniel Siewiorek,
Asim Smailagic and Peter Steenkiste
Slides by: Marco Maurier
New problem: limited human attention
Limited human attention refers to users ability to attend to primary tasks, ignoring system-generated distractions such as poor performance and failure
Project Aura is a system whose effectiveness is considerably greater than other systems today
Designed for pervasive computer environment involving wireless communication, wearable or handheld computers, and smart spaces
Research spans every system level: from hardware to operating system
(1) Uses proactivity which is a system layer’s ability to anticipate requests from a higher layer
Today’s systems merely react to the layer above it
(2) Self-tunning which is when layers adapt by observing the demands made on them and adjusting accordingly
Current systems are staticBoth of this techniques will lower
demand for human attention
The hardware technologies are readily available
Research is needed on building blocks of pervasive computing and seamless integration
Project Aura is two years old and the development is on system architecture, algorithms, interfaces, and evaluation techniques
Odyssey – resource monitoring and application-aware adaptation
Coda – nomadic, disconnectable, and bandwidth-adaptive file access
Spectra – adaptive remote execution that uses context to best execute remote call
Prism – new system layer that captures and manages user intent
Amplify the capabilities of mobile clientThese compute and data-staging
servers are called surrogatesData-staging reduces Internet latency
on interactive file intensive applicationsCache misses can cause delays due to
latency limitation, and also because: (1) cache may be small (2) periods of disconnect(3) uncached files may become needed
Coda extended to use prefetchingStages data in coarse-grained
snapshots of the file system dataEach snapshot corresponds to a
volume, which is a partial subtree of the file system name
Data-staging split across server, surrogate, and client
Orange components represent preexisting distributed system
Yellow represent the modification implemented to support data-staging
Staging server on the Surrogate is an unmodified Apache HTTP/1.1 Web server. The proxy intercepts and redirects file system traffic
Staging manager on the Coda server oversees snapshot creation
Network aware applications can use reasonable estimates of future available to make informed decisions
Application affected by:(1) competing traffic, noise, and
interference(2) device physical location
Monitoring(1) and Prediction(2) use SNMP(simple network management protocol) to gather information
(1) AP Segment Service collects incoming and outgoing traffic rates, including errors and collision rates
(2) AP Device Service gathers cell population information by querying each access point bridge table
PPREV – predicts future values to be the same as the most recent value observed
AV – (average value) uses evenly weighted average of the several previous observations
Arfima – computes future values as a dynamically weighted average of past values
Arfima – works well in low-utilization cells, not high-utilization cells
PPREV – works well in bursty traffic, high-utilization cells
The fact that different data rates are used depending on noise conditions, complicates predictions
Based on signal strength and access point information from IEEE 802.11
Two algorithms:(1) CMU-PM – pattern matching
algorithm(2) CMU-TMI – triangulation-based
remapped interpolated algorithm
Determines the location by measuring the signal strength from device to all available access points
Compares these measurements to a table with reading of signals strength for each location
Training requires entering the user’s location into the system
Radar algorithm gathers signal stregth from access points
Algorithm takes the signal strength and stores in a table
During use, compares measure values to those in the table and computes the difference
It assumes the entry with the smallest difference is the current position
Accuracy almost always within15 feet with dense table of patterns
Goals in design: accuracy within a few feet, and scalability so as to not require a trained data point but interpolation between trained values
Calculates client position on a continuous coordinate grid assuming that the signal strength map directly to distance
This is interpolated to trained values and produces more accurate results
CMU-TMI requires less training points are is more accurate at higher distances
CMU-PM give larger errors because of incorrect training point being returned
CMU-TMI returns continuous small errors but return location not far form user’s actual location
Environment can affect output such as reduction of signal strength from user’s antenna, or office walls
When user moves from one environment to another, Aura attempts to reconfigure the new environment so that the user can continue working on tasks started elsewhere
Aura needs a representation of user intent, a new layer of system abstraction called the task layer
This allows the system to anticipate user needs
Task Manager – explicit representation of tasks as coalition of abstract services
Context Observer – configures tasks in a way appropriate to the environment
Environment Manager – assists with resource monitoring and adaptation
Service Suppliers – supports user ‘s tasks
This is built on top of middleware such as RPC or Corba
Represents user tasks explicitly and as a service coalition
Providing an abstract characterization of the services in a task
Providing an environment with self-monitoring capabilities
Current prototypes support migrating tasks between Windows and Linux
One application that uses the Aura infrastructure is Handy Andy
It has been design with the goal of supporting on-campus collaboration
Its core applications are Portable Help Desk (PHD) and Idealink
Context aware application built on two fundamental services:
(1) spatial awareness – includes users relative and absolute positions an orientation
(2) temporal awareness – schedule time of public and private events
It has both a visual and an audio interface
Each interface supports users in different contexts
If user is walking around campus is less likely to be distracted with a hands-free interface
While a stationary user might want a richer visual interface
It delivers proactive and user-driven information to users when they are interacting with Aura infrastructure resources, such as a printer
When a user starts a print job, PHD alerts the user if there is a large print queue and suggests a nearby printer with a shorter one
Virtual collaboration environment that facilitates planned and ad-hoc collaboration among mobile users
It provides users with features that let them communicate their ideas to others via a shared distributed whiteboard
Supports standard pen and text tools, multiple channels, and simultaneous collaborative sessions
Integrated to PHD to retrieve information related to user’s preferences and schedules
Combines each user’s additions to the session and distributes these updates to each client.
At the end of the meeting archives the session
Goal to develop a non-trivial prototype that the campus community can use
Focus on:(1) set of contextual information
services(2) applications that exploit the Aura
infrastructureUse dynamic information for Aura to
perform self-tuning and adaptation