Title: ContextAwareness and Coordination in Mobile Environments
1Context-Awareness and Coordination in Mobile
Environments
- Gruia-Catalin Roman
- 1 April 2003
- Mobile Computing Laboratory
- Department of Computer Science and Engineering
2Project Team
- Faculty
- Gruia-Catalin Roman
- External Collaborators
- Doctoral Students
- Chien-Liang Fok
- Radu Handorean
- Qingfeng Huang
- Christine Julien
- Jamie Payton
- Rohan Sen
- Masters Students
- Yigit Cakar
- Randy Pitz
- Undergraduate Students
- Greg Hackmann
- Shannon Lieberg
3Project Profile
- Research goals
- Rapid development of dependable mobile
applications over ad hoc networks - Ad hoc network challenge
- No fixed network infrastructure
- Frequent disconnections
- Transient interactions
- Decoupled computing
- Limited guarantees
- Vulnerability
4Project Profile
- Computational model
- Physically mobile hosts
- containers equipped with wireless connectivity
- Logically mobile agents
- units of mobility, modularity, and execution
- Agent data
- tuple spaces and more
- Solution strategy
- Focus on adaptation mechanisms
- Reliance on context-awareness
- Convergence around coordination models
- Formal specification and analysis
5Project Profile
- Technology transfer
- Models made manifest as middleware
- Industrial collaborations (Ford)
- Evaluation scope
- Wide range of application types
6Range of Research Activities
- Formal models of mobility
- Mobile UNITY
- Coordination models for mobility
- Global Virtual Data Structures
- Middleware for mobility
- LIME Limone
- Algorithms and protocols for mobile computing
- Mobile applications
7Current Activities
- Spatiotemporal services and analysis methods in
mobile and sensor networks - Lightweight coordination among resource
constrained devices - Secure service provision in ad hoc networks
- Wide-ranging exploration of context-awareness
- Asymmetric models
- Extended scope
- Declarative specification
- Transparent maintenance
8Spatiotemporal Services
Send data to delivery zone Z(t)
Z(1)
Z(2)
Z(3)
Mobicastsource
9Lightweight Coordination
Host 1
Reaction Fired
Migration
Host 3
Host 2
Operation Request
10Secure Service Provision
application
application
service provision
service provision
secure tuples secure tuple spaces
secure tuples secure tuple spaces
security table
security table
L I M E
L I M E
remote interactions
interceptor
interceptor
11Network Abstractions for Context-Aware Mobile
Computing
- Christine Julien
- 1 April 2003
- Mobile Computing Laboratory
- Department of Computer Science and Engineering
12Motivating Application
13Context-Awareness for Adaptability in Ad Hoc
Networks
- Continuous and rapid reaction to changes
- Application specific context definition
- Explicit controls over the scope size and cost
- Multitude of contexts evolving over time
- Scope that extends beyond the local host
- Generalized interaction with context types
14Simplifying Application Development
- Provide generalized view of context extended to
include information about distant hosts - Provide more flexibility to applications by
allowing application specific context
specifications - Provide transparent maintenance of these contexts
through automatic context sensing - Help programmer cope with problems inherent in ad
hoc networks
15Solution Strategy
- Allow multiple contexts that change over time
- Expand contexts to encompass a surrounding
neighborhood - Provide declarative specifications of these
contexts - Encompass the specific needs of an application
- Control the scope and size of the view
- Provide varying perceptions of context
- Provide a protocol for calculating contexts
- Middleware for rapid mobile application
development
16Network Abstraction
- Acquaintance List
- Set of nodes that contribute information used to
build a context for a reference node - Network Abstraction
- Allows specification of the list
- Extends availability of context information
- Limits scope of operation over network
17Solution Sketch
- Represent the ad hoc network as a graph
- Abstract properties of nodes and links to weights
on edges in this graph - Calculate the cost of paths from the reference
node based on a general cost function - Determine the shortest possible path to each
node, and build a tree of these paths - Limit this tree using a bound D
18Weight Assignment
- Individualized for a particular application
- Host properties combine to form ?i
- ?i battery power, CPU power, physical location,
etc. - Link properties combine to form ?ij
- ?ij physical distance, bandwidth, throughput,
etc. - Each links logical weight combines link
properties and node properties - mij ?(?i, ?j, ?ij)
19Computing Path Cost
- Assuming each link has a single weight, an
application can define a cost function - v0(Pk) Cost(v0(Pk-1), mk-1,k)
- v0(?v0?) 0
- Cost function must be strictly increasing along a
path - Sample metrics
- Building floor restriction
- Network latency
- Network bandwidth
- Physical distance
20Minimum Cost Path
3
- Given multiple paths to a node, choose the
shortest one
1
2
2
1
1
0
1
2
1
1
2
1
Note All links have a weight of 1
21Limiting the Scope
3
- Define subtree of the network
- Bound the cost of each path from the reference
- Require strictly increasing path values
1
2
D2
2
1
1
0
1
2
1
1
2
1
Note All links have a weight of 1
22Protocol Design Neighbor Discovery
- Beaconing mechanism determines near neighbors
Application
Network Abstractions
Neighbor Discovery
Monitor
23Protocol Design Monitor Package
- Collect context information
- Local components to communicate directly with
local sensors - Remote components to communicate with sensors on
other hosts - Applications create monitors adhering to a
recognized interface
Application
Network Abstractions
Neighbor Discovery
Monitor
24Protocol Design Network Abstractions
- Network abstraction package implements the
protocol, delivers queries, and returns responses - Persistent and transient contexts are supported
- Responses return over either the tree of shortest
paths or a mesh of acceptable paths
Application
Network Abstractions
Neighbor Discovery
Monitor
25Egocentric Middleware View Concept
- Builds on network abstractions protocol for
constructing contexts and distributing messages - Provides abstraction of reference agents
operating context, specific to its needs - Contains a subset of the data items available on
the hosts in the acquaintance list - Uses constraints over profiles of hosts, agents,
and data in addition to Network Abstractions
26Conclusions and Future Work
- Declarative specifications provide flexible and
general treatment of context - Protocol shows feasibility of transparent context
maintenance - Weaker atomicity assumptions (e.g., w.r.t.
configuration changes) - Optimization that consider interactions among
multiple contexts - Formal verification
- Performance evaluation through simulations