SLIDE 1 EVE: verifying correct execution
- f cloud-hosted web applications
Suman Jana Vitaly Shmatikov The University of Texas at Austin
SLIDE 2
Running interactive web-apps in the cloud
SLIDE 3
Running interactive web-apps in the cloud
SLIDE 4
Running interactive web-apps in the cloud
SLIDE 5
Low visibility in the cloud
SLIDE 6
Availability is not correctness
“Google will make commercially reasonable efforts to keep the App Engine service operational and available to customer at least 99.95% of the time in a monthly billing cycle”
SLIDE 7 Availability is not correctness
“Google will make commercially reasonable efforts to keep the App Engine service operational and available to customer at least 99.95% of the time in a monthly billing cycle”
can be anywhere in this plane
SLIDE 8
Errors can be transient
SLIDE 9
Errors can be transient
SLIDE 10 Errors can be transient
inconsistent tax records!!
SLIDE 11
continuously monitor correctness of cloud execution
Requirement
SLIDE 12
verifying correct execution of an arbitrary application is hard !
SLIDE 13
What is common between these web-apps ?
What kind of apps run on cloud ?
SLIDE 14
What is common between these web-apps ?
What kind of apps run on cloud ?
web clients web- app logic
data-store
web clients web clients
thin and stateless
SLIDE 15
Correctness of web-app ops
Thou shalt always think of web-app operations in terms of data- store operations !
SLIDE 16
Consistency of data-store ops
Thou shalt always think of web-app operations in terms of data- store operations !
SLIDE 17
Web app ops as data-store ops
SLIDE 18
Web app ops as data-store ops
SLIDE 19 Web app ops as data-store ops
all faults appear as consistency violations
SLIDE 20
EVE: collaborative verification
SLIDE 21
EVE: collaborative verification
witness witness
SLIDE 22
EVE: collaborative verification
witness witness
SLIDE 23
EVE: collaborative verification
verifier witness witness error?
SLIDE 24
EVE: collaborative verification
verifier error? streaming consistency verification algorithm
SLIDE 25
EVE: different use cases
Ensure that a web-app is running correctly in a particular cloud Check how well a web-app scales in a particular cloud Compare quality of service (QoS) from different cloud providers
SLIDE 26
Questions
suman@cs.utexas.edu
SLIDE 27
Auto generate data-store ops
web- app logic
data-store
SLIDE 28
Auto generate data-store ops
web- app logic
data-store
generic SQL-like interface
SLIDE 29
Auto generate data-store ops
web- app logic
data-store
generic SQL-like interface
SLIDE 30
data-store specific wrappers
Auto generate data-store ops
web- app logic
data-store
SLIDE 31
log generating wrappers
Auto generate data-store ops
web- app logic
data-store verifier