Download presentation
Presentation is loading. Please wait.
Published byMarcia Bishop Modified over 6 years ago
1
Slingshot: Deploying Stateful Services in Wireless Hotspots
Ya-Yunn Su Jason Flinn University of Michigan
2
Motivation Performance Portability Portable: take everywhere
Mobile Computer Portable: take everywhere Easy to carry and less obtrusive Limited in resources Performance: run demanding applications More processing power and storage capacity Bulkier and heavier
3
Remote Execution Internet VNC Server VNC High latency client Wireless
Hotspot VNC Server Limited bandwidth AP High latency VNC client
4
Cyber Foraging Internet VNC VM Home Server Surrogate VNC client
Wireless Hotspot VM VNC Home Server Surrogate AP VNC client
5
Migrating Remote Services
Internet Wireless Hotspot VM VNC Home Server Surrogate AP Problems: No service during migration VNC client Loss state on surrogate failure
6
Slingshot: Replicate Services
Internet Wireless Hotspot VM VNC VM VNC Home Server AP Surrogate VNC client Home replica always available No state loss on surrogate failure
7
Ease of Management Surrogates should be appliances Slingshot
Minimizes the surrogate computing base Uses a heavyweight virtual machine Places no hard state on surrogates
8
Outline Motivation Implementation Evaluation Related Work Conclusion
9
Slingshot Overview VM VNC VM VNC VNC VM Surrogate Surrogate
Home Server Request Request Request VNC proxy Slingshot applications - Remote desktop: VNC - Speech recognition: IBM ViaVoice VNC client
10
State of a Remote Service
The virtual machine state contains: Volatile state: memory image and registers Unique to each service Compressed and stored as individual files Persistent state: virtual disk image Large: ex. 4 GB for our VNC service Stored in content addressable database
11
Content Addressable Database
Disk Blocks Block # SHA-1 ABC SHA-1 Ref count offset ABC 2 18 Chunk Table for VNC Hash Table Chunk Database Block # SHA-1 5 ABC This runs on the home server Built upon Internet Suspend Resume [ Kozuch02] Chunk Table for Speech Recognition
12
Surrogate VM1 VM2 Speech VNC data Home Server data Surrogate
Content Addressable Database data Home Server data Content Addressable Cache Surrogate Persistent state can be - Fetched on demand - Shared between applications
13
Creating a Replica Big idea: recreate current state from
Checkpoint on the home server Event log on the client Application level determinism Example: Keystroke Mouse movement Checkpoint Event Log = Current State
14
Instantiate a Replica VM VNC VM VNC VM VNC SLOW! 1. Checkpoint
2. Transfer volatile state and chunk table 3. Replay event log Surrogate Home server VNC proxy 2. Log requests VNC client
15
Leveraging Portable Storage
VM VNC VM VNC VM VNC 2. Replay event log 1. Transfer volatile state, chunk table and hash table Surrogate Home server VNC proxy 1. Log requests Portable storage carries: Volatile state Content addressable database VNC client
16
Outline Motivation Design Principles Implementation Evaluation
Related Work Conclusion
17
Network Topology Internet VM VNC VM VNC
30 ms latency 1.5 Mbps 1.5 Mbps 256 Kbps 1.5 Mbps VM VNC VM VNC AP Surrogate Home Server Workload: open Word, insert text, save document and close Word
18
Benefit of Slingshot Slingshot: 2.6 times faster than remote execution
19
Network Topology Internet VNC VM 30 ms latency AP Surrogate
1.5 Mbps 1.5 Mbps 256 Kbps 1.5 Mbps VM VNC AP Surrogate Home Server Handheld
20
Instantiating the First Replica
: Remote execution : Slingshot : Slingshot w/ microdrive : Remote execution : Slingshot Slingshot executes 2.6 times faster than remote execution
21
Network Topology Internet VM VNC VM VNC 15 ms latency 15 ms latency AP
1.5 Mbps 1.5 Mbps 1.5 Mbps 1.5 Mbps 256 Kbps 1.5 Mbps VM VNC VM VNC AP AP Nearby Surrogate Distant Surrogate Home Server Handheld device
22
Instantiating Another Replica
: Remote execution : Without microdrive : Remote execution : Without microdrive : With microdrive
23
Related Work Cyber foraging [Balan03, Goyal04]
Support user mobility and stateful services Virtual machine/process migration [Sapuntzakis02, Kozuch02, Tolia03] Apply the same optimization techniques Replicate VM to service mobile computers Replay at different level [Dunlap02, Bressoud95, Rodrigues01, Brown02] Enforce determinism at the application level
24
Conclusion Slingshot Questions? Is 2.6x faster than remote execution
Hides surrogate failure Minimizes surrogate maintenance cost Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.