slides.0303.2011 - SPORC: Group Collaboration using...

Info iconThis preview shows pages 1–17. Sign up to view the full content.

View Full Document Right Arrow Icon
SPORC: Group Collaboration using Untrusted Cloud Resources Presente d by: 1
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Cloud Deployment: Pros & Cons Focus on user-facing applications Real-time collaboration Concurrent access Anywhere-available Is Cloud suitable? Availability, scalability, elasticity, global- accessibility Trust the cloud providers! 2
Background image of page 2
Overall Goals Deploy user-facing apps on a cloud Real-time collaboration Offline operations Generic servers Deal with untrusted servers Data confidentiality Detect misbehavior Recovery 3
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Design Overview Server Client 1 Client N Server’s role: - Global order of update messages - Store (encrypted) history Update message = “diff” against a particular state in the history 4
Background image of page 4
Problem 1: Consistency Server Client 1 Client N Inconsistent State! Diff applied to wrong base file. Optimistic Update 5
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Solution: Operational Transformation OT allows synchronization of states No locks Optimistic local updates Client 1 Client 2 ABCDE ABCDE delete(2) ACDE delete(4) ABCE delete(2) delete(4) ACD ACE 6
Background image of page 6
Solution: Operational Transformation OT allows synchronization of states No locks Optimistic local updates Client 1 Client 2 ABCDE ABCDE delete(2) ACDE delete(4) ABCE delete(2) delete(3) ACE ACE Transform a foreign ops past any new local ops 7
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Problem 2: Malicious Server Server Client 1 Client N - Different Views of the state! - Histories “Forked” 8
Background image of page 8
Solution: Fork* Consistency Clients send: Update Message + Hash (chain) of its history Receiving clients compare with their hash, fork if mismatch. Can forks go undetected? 9
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Fork* Consistency 10 Client 1 Client 2 Some other client generates OP 4 and 5. Server forks states of client 1 and client 2 Fork detected as soon as these clients interact with some other client Correct history:
Background image of page 10
Is Fork* Consistency good enough? What about banking operations? 11 Account information maintained on two machines Hack the server to fork their states Withdraw $10K from both machines Balance in account : $10K
Background image of page 11

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Detailed Design Invariant 1: Local Coherence 12
Background image of page 12
Detailed Design Invariant 2: Fork* consistency 13
Background image of page 13

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Detailed Design Invariant 3: Client-Order preservation 14
Background image of page 14
Detailed Design Committed History = Base File Update message = Diff wrt a Committed History 15
Background image of page 15

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Membership Management New Shared Key Shared Key (for efficiency) - Old key needed to decrypt updates encrypted using it (new clients) - Key shared with the new client - New client generates current state from Ops stores at server 16
Background image of page 16
Image of page 17
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 12/08/2011 for the course CS 525 taught by Professor Gupta during the Spring '08 term at University of Illinois, Urbana Champaign.

Page1 / 74

slides.0303.2011 - SPORC: Group Collaboration using...

This preview shows document pages 1 - 17. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online