180 likes | 299 Views
Data availability in a mobile environment Daniel Cutting University of Sydney & Smart Internet Technology CRC. Talk outline. Introduction objective, motivation, approach literature review Distributed operating systems & file systems, distributed applications, context. initial model
E N D
Data availability in a mobile environmentDaniel CuttingUniversity of Sydney & Smart Internet Technology CRC
Talk outline • Introduction • objective, motivation, approach • literature review • Distributed operating systems & file systems, distributed applications, context. • initial model • papers, future plans.
Introduction • Earlier distributed systems used fixed machines and networks • portables led to ‘offline’ operation • mobile devices led to ad hoc networks and weak connectivity • Want to run applications across them • need to share data.
Objective • Hypothesis: sharing of data between mobile devices can be improved by using context • Maximise availability of data to applications • minimise battery usage and network traffic • constrained by codified semantics and user policies • use relevant contextual information to aid sharing. • identify context appropriate to each situation • find heuristics for representing all situations.
Approach • Build data sharing model for experiments • test various data distribution policies • run simulations, but maybe also a prototype • build simple applications • Test general data availability.
Distributed operating systems • Abstraction: thread/storage not processor/network • Amoeba: server/terminal, processor pool • Sprite: distributed over terminals • distributed virtual machines: cJVM, Jupiter, … • MagnetOS: distributes objects around sensor network • works for some applications in some environments. • generally brittle for mobile environments.
Distributed file systems • Abstraction: file/directory (open/read/write/close) • Andrew: client/server, fully connected • Coda: Andrew + disconnected mode • Odyssey: ‘application-aware adaptation’ • DFS is OK when network is stable, not so good when transient.
Distributed applications • Why not distribute at application level? • application components + communication • RPC/RMI, sockets, … • mobile devices weakly connected, so want decoupled communication • Middleware.
Publish-subscribe systems • Clients receive events matching subscriptions • anonymous, decoupled • cannot ‘store’ data • Elvin • Federation, quenching.
Tuple spaces • Linda • Tuple: <a,b,c>, tuple space contains tuples • OUT(t), IN(t), RD(t). • anonymous, decoupled, can store data • but no notifications • LIME: Linda in a Mobile Environment • Merging/separation of tuple spaces.
Context • Bottom-up (sensors, aggregated, inferred) • top-down (user preferences, input) • use of context often ad hoc, hard to reuse • so, formalise • CSCP: structured, interchangeable, (de)composable, uniform, extensible, standardised • Context Toolkit: GUI-like widgets + generators, interpreters, servers.
Model • Design data sharing model around middleware • generalise for more types of apps: “Middies” • Members, spaces, blocks, reactors, matchers. • distribute blocks according to a policy • Full, server, random, context-aware. • context: • Device: battery, storage • application/user: access patterns, directives.
Papers • “Middies: Passive Middleware Abstractions for Pervasive Computing Environment”. With Adam Hudson and Aaron Quigley. Submitted to ICPS 2004. • “BlueStar: Beacon + MPC based location detection”. With Belinda Ward, Aaron Quigley, Chris Ottrey, Bob Kummerfeld. To appear at IEEE PLANS 2004 • “AR phone: Accessible Augmented Reality in the Intelligent Environment”. With Adam Hudson, Mark Assad and David Carmichael. Presented at OZCHI 2003.
Future plans • April 2004 - deeper context study completed • May 2004 - completed model design and confirmed hypothesis • October 2004 - completed construction of model • November 2004 - journal paper • February 2005 - begin experiments • March 2006 - submit thesis.
Comments and questions Daniel Cutting University of Sydney dcutting@it.usyd.edu.au