Presentation is loading. Please wait.

Presentation is loading. Please wait.

The Rover Toolkit Anthony D. Joseph Computer Science Division University of California at Berkeley BARWAN Retreat January 15, 1998.

Similar presentations


Presentation on theme: "The Rover Toolkit Anthony D. Joseph Computer Science Division University of California at Berkeley BARWAN Retreat January 15, 1998."— Presentation transcript:

1 The Rover Toolkit Anthony D. Joseph Computer Science Division University of California at Berkeley BARWAN Retreat January 15, 1998

2 MIT Rover People Profs. Frans Kaashoek and David Gifford Anthony D. Joseph (Toolkit arch/impl & apps) Joshua A. Tauber (Toolkit arch & Webcal) George M. Candea (Rover File System) Constantine Cristakos (Rover NNTP) Alan deLespinasse (Rover Web Browser proxy) Michael Shurpik (Webcal)

3 Outline Harsh mobile environment Rover toolkit benefits and techniques Rover architecture Use and benefits Summary and future directions

4 Mobile Applications are Hard to Build Environment varies over an app’s lifetime –Connectivity, bandwidth, latency, and cost vary –Technological improvements won’t fix variability Mobile computers are limited & fragile Network partitions are frequent ($$ & shadows) –Most dist. algorithms and apps assume they’re not –Availability and consistency tradeoff  Application-adaptation is complex –When/where to move data and code –System provides mechanisms and policy engine

5 How the Rover Toolkit Helps Simplifies application development –Provides reusable building blocks –Alternative to special-purpose/single-use approaches Helps developers cope with changes –Varying environment and computational resources Mobile-transparent/mobile-aware support –Allows incremental transition: transparent to aware

6 Transparent versus Aware Mobile-transparent –Hides mobility from application –Allows the use of existing unmodified apps –Examples: Coda, Ficus, Little Work Mobile-aware –Exposes environmental information to apps –Yields better functionality and performance –Examples: InfoPad, Daedalus, GloMop, Bayou

7 Applications Targeted by Rover Groupware (client-server) apps –Applications with shared state: E-mail and distributed calendar –“File-level” conflicts occur all the time –May not be real conflicts Need semantic information Leverage intermittent connectivity to reduce conflict window

8 Techniques Used in Rover Queued Remote Procedure Call –Isolate applications from network limitations Relocatable Dynamic Objects –Adapt to changing environment App-specific, optimistic concurrency control –Reduce number of unresolvable conflicts Fault-Tolerant RDOs –Protect long running client computation at servers

9 Outline Harsh mobile environment Rover toolkit benefits and techniques Rover architecture Use and benefits Summary and future directions

10 Rover Architecture Client-server object-based model (code/data shipping) P rogramming model: –I mport RDOs, invoke local methods, export operations FSM-based implementation E-mail GUI Rover O/S E-mail Filesys Rover O/S RDOs: Tcl/Tk Code QRPCs: Log to Disk Transport: HTTP & SMTP Links: Wired and wireless ClientServer

11 Relocatable Dynamic Objects RDO = Code + Data + Interface + Outcalls Rover provides execution environment Application starts w/ core functionality –Important for small devices / large applications –Dynamically load additional functionality Reduce communication –Application-specific compression –Service user requests locally Current limitation: rudimentary security

12 Queued Remote Procedure Call QRPC = RPC + Split phase + Stable Q + Scheduler GUIFilesys Stable queue Request Scheduler Stable queues ClientServer Callback Hides unpredictable remote access time Tolerates network, client, and server failures

13 QRPC Benefits Request/reply can use different connections –Asymmetric or one-way networks Exposes queues to applications –Applications can determine QRPC state/progress –Log compression/request absorption Network scheduler –Allows prioritizing, batching, and compression –Reduces transmission power, time, and cost

14 Rover is Easy to Use Create server and client proxies (transparent) Port applications to Rover –Not a difficult process: change 10-15% of code* Easy to improve responsiveness –Use QRPC for stability and to make GUI non-blocking –Group metadata with objects –Change granularity of data Better responsiveness and performance (2x) –Perform useful work instead of waiting –Service user requests locally

15 Proxy Cache Queue N Example: WWW Browser Proxy “Click-ahead” for unchanged clients Prefetches & compresses inlined objects –HTTP/1.1 (1/97): compression and pipelining (no prefetching) Separate cache display (simple paradigm)  Better overall performance –Benefits for workstation users Client WWW Server WWW Server WWW Server Rover Server Proxy Cache Queue Rover Server 12 Rover Server Rover Server TranSend

16 Rover Toolkit Summary Rover makes building mobile apps easier –Provides useful set of abstractions –RDOs reduce latency and bandwidth needs –QRPC matches mobile environment challenges –Reliable RDOs simplify the protection of client code –Application-specific concurrency control reduces unresolvable conflicts Application performance is excellent Pre-alpha release - Dec ‘97

17 Future Directions Java-based implementation –Provide portable QRPC operator for ProActive Infrastructure Policies for adaptive mechanisms –When to open/close a network connection –Which network to use (b/w, latency, cost) Security for mobile code –Code generated at clients and servers runs everywhere –How to protect private client and server data and resources Highly-available servers –Providing consistent client views across servers [Bayou]

18 More Future Directions Peer-peer workgroups –Islands of high bandwidth (e.g., this retreat) –Where is the canonical copy / commit point? Multi-layer client-server hierarchy –Similar to peer-peer workgroups –Dismounted warfighter with PDA to laptop to server

19 Advertisement: Spring ‘98 Seminar Mobile computing and wireless networking –CS 294: WF 12:30-2:00 (for now) in 405 Soda Local- and wide-area wireless networks –WaveLAN, Metricom, CDPD, and GSM –Problems and issues Mobile computing: Adapting to harsh env. –Disconnected operation/intermittent connectivity –Sharing: Consistency versus availability Projects –From ProActive Infrastructure & Viking (BT3GC)


Download ppt "The Rover Toolkit Anthony D. Joseph Computer Science Division University of California at Berkeley BARWAN Retreat January 15, 1998."

Similar presentations


Ads by Google