Cloud Computing - zoo.cs.yale.eduzoo.cs.yale.edu/classes/cs426/2013/lec/131113-cs426-cloud.pdf ·...
Transcript of Cloud Computing - zoo.cs.yale.eduzoo.cs.yale.edu/classes/cs426/2013/lec/131113-cs426-cloud.pdf ·...
Cloud Computing
Ennan ZhaiComputer Science at Yale University
• Cloud Computing
• Challenges in the Clouds
• A Concrete Cloud Reliability Case
Lecture Outline
• Cloud Computing
• Challenges in the Clouds
• A Concrete Cloud Reliability Case
Lecture Outline
What’s the Cloud Computing?
Cloud computing is a business model for enabling convenient
network access to a shared pool of configurable resources
which can be rapidly provisioned and released with minimal
management effort or service provider interaction.
--- according to NIST(National Institute of Standards and Technology)
What’s the Cloud Computing?
Have You Used the Cloud?
Have You Used the Cloud?
Have You Used the Cloud?
Have You Used the Cloud?
Have You Used the Cloud?
Have You Used the Cloud?
Why We Like It?
• Why users like it? - Do not care where it is, it is “just there”- Access from “any” platform
• Why CS researchers like it? - High-performance computation with less money- Lots of hard and interesting challenges
Why We Like It?
• Why users like it? - Do not care where it is, it is “just there”- Access from “any” platform
• Why CS researchers like it? - High-performance computation with less money- Lots of hard and interesting challenges
Why We Like It?
• Why users like it? - Do not care where it is, it is “just there”- Access from “any” platform
• Why CS researchers like it? - High-performance computation with less money- Lots of hard and interesting challenges
Why We Like It?
What Kinds of Clouds Exist Now?
• Three types of services:- Software as a Service (SaaS)
- Analogy: Restaurant. Prepares&serves entire meal, does the dishes, etc
- Platform as a Service (PaaS)- Analogy: Take-out food. Prepares meal but does not serve it.
- Infrastructure as a Service (IaaS)- Analogy: Grocery store. Provides raw ingredients.
What Kinds of Clouds Exist Now?
• Three types of services:- Software as a Service (SaaS)
- Analogy: Restaurant. Prepares&serves entire meal, does the dishes, etc
- Platform as a Service (PaaS)- Analogy: Take-out food. Prepares meal but does not serve it.
- Infrastructure as a Service (IaaS)- Analogy: Grocery store. Provides raw ingredients.
What Kinds of Clouds Exist Now?
• Three types of services:- Software as a Service (SaaS)
- Analogy: Restaurant. Prepares&serves entire meal, does the dishes, etc
- Platform as a Service (PaaS)- Analogy: Take-out food. Prepares meal but does not serve it.
- Infrastructure as a Service (IaaS)- Analogy: Grocery store. Provides raw ingredients.
What Kinds of Clouds Exist Now?
• Three types of services:- Software as a Service (SaaS)
- Analogy: Restaurant. Prepares&serves entire meal, does the dishes, etc
- Platform as a Service (PaaS)- Analogy: Take-out food. Prepares meal but does not serve it.
- Infrastructure as a Service (IaaS)- Analogy: Grocery store. Provides raw ingredients.
What Kinds of Clouds Exist Now?
Software as a Service (SaaS)
Software as a Service (SaaS)
Hardware
Middleware
Application
Cloud Provider (i.e., SaaS Provider)
Software as a Service (SaaS)
Hardware
Middleware
Application
Cloud Provider (i.e., SaaS Provider)
• SaaS provider offers an entire application- Word processor, spreadsheet, CRM software, etc.- Customer pays cloud provider- Example: Google Apps, Salesforce.com, etc.
Software as a Service (SaaS)
Hardware
Middleware
Application
Cloud Provider (i.e., SaaS Provider)
• SaaS provider offers an entire application- Word processor, spreadsheet, CRM software, etc.- Customer pays cloud provider- Example: Google Apps, Salesforce.com, etc.
Software as a Service (SaaS)
Hardware
Middleware
Application
Customer
Cloud Provider (i.e., SaaS Provider)
• SaaS provider offers an entire application- Word processor, spreadsheet, CRM software, etc.- Customer pays cloud provider and uses the service- Example: Google Apps, Salesforce.com, etc.
Software as a Service (SaaS)
Hardware
Middleware
Application
Customer
Cloud Provider (i.e., SaaS Provider)
• SaaS provider offers an entire application- Word processor, spreadsheet, CRM software, etc.- Customer pays cloud provider and uses the service- Example: Google Apps, Salesforce.com, etc.
Software as a Service (SaaS)
Hardware
Middleware
Application
Customer
Cloud Provider (i.e., SaaS Provider)
• SaaS provider offers an entire application- Word processor, spreadsheet, CRM software, etc.- Customer pays cloud provider and uses the service- Example: Google Apps, Salesforce.com, etc.
A Typical SaaS: Gmail
A Typical SaaS: Gmail
Hardware
Middleware
Application
Gmail Provider
A Typical SaaS: Gmail
Hardware
Middleware
Application
Gmail Provider
• Outsourcing your e-mail software: - Distributed, replicated message store in BigTable- Weak consistency model for some operations (e.g., msg read)- Stronger consistency for others (e.g., send msg)
A Typical SaaS: Gmail
Hardware
Middleware
Application
Gmail Provider
BigTable
• Outsourcing your e-mail software: - Distributed, replicated message store in BigTable- Weak consistency model for some operations (e.g., msg read)- Stronger consistency for others (e.g., send msg)
A Typical SaaS: Gmail
Hardware
Middleware
Application
Gmail Provider
BigTable
BigTable APIs
• Outsourcing your e-mail software: - Distributed, replicated message store in BigTable- Weak consistency model for some operations (e.g., msg read)- Stronger consistency for others (e.g., send msg)
Hardware
Middleware
Application
Gmail Provider
Gmail
A Typical SaaS: Gmail
• Outsourcing your e-mail software: - Distributed, replicated message store in BigTable- Weak consistency model for some operations (e.g., msg read)- Stronger consistency for others (e.g., send msg)
BigTable
BigTable APIs
Hardware
Middleware
Application
Customer
Gmail Provider
Gmail
A Typical SaaS: Gmail
• Outsourcing your e-mail software: - Distributed, replicated message store in BigTable- Weak consistency model for some operations (e.g., msg read)- Stronger consistency for others (e.g., send msg)
BigTable
BigTable APIs
Hardware
Middleware
Application
Customer
Gmail Provider
Gmail
A Typical SaaS: Gmail
• Outsourcing your e-mail software: - Distributed, replicated message store in BigTable- Weak consistency model for some operations (e.g., msg read)- Stronger consistency for others (e.g., send msg)
BigTable
BigTable APIs
Hardware
Middleware
Application
Customer
Gmail Provider
Gmail
• Outsourcing your e-mail software: - Distributed, replicated message store in BigTable- Weak consistency model for some operations (e.g., msg read)- Stronger consistency for others (e.g., send msg)
A Typical SaaS: Gmail
BigTable
BigTable APIs
Hardware
Middleware
Application
Customer
Gmail Provider
Gmail
• Outsourcing your e-mail software: - Distributed, replicated message store in BigTable- Weak consistency model for some operations (e.g., msg read)- Stronger consistency for others (e.g., send msg)
A Typical SaaS: Gmail
BigTable
BigTable APIs
Platform as a Service (PaaS)
Hardware
Middleware
Application
Platform as a Service (PaaS)
• Cloud provides middleware/infrastructure- For example, Microsoft Common Language Runtime (CLR)- Customer pays SaaS provider for the service- SaaS provider pays the cloud for the platform- Example: Windows Azure, Google App Engine, etc.
Cloud Provider (i.e., PaaS Provider)
Application
Hardware
Middleware
Application
Platform as a Service (PaaS)
• Cloud provides middleware/infrastructure- For example, Microsoft Common Language Runtime (CLR)- Customer pays SaaS provider for the service- SaaS provider pays the cloud for the platform- Example: Windows Azure, Google App Engine, etc.
Cloud Provider (i.e., PaaS Provider)
Application
Hardware
Middleware
Application
Platform as a Service (PaaS)
App Provider
• Cloud provides middleware/infrastructure- For example, Microsoft Common Language Runtime (CLR)- App provider pays the cloud for the platform- Customer pays App provider for the service- Example: Windows Azure, Google App Engine, etc.
Cloud Provider (i.e., PaaS Provider)
Application
Hardware
Middleware
Application
Platform as a Service (PaaS)
App Provider
• Cloud provides middleware/infrastructure- For example, Microsoft Common Language Runtime (CLR)- App provider pays the cloud for the platform- Customer pays App provider for the service- Example: Windows Azure, Google App Engine, etc.
Cloud Provider (i.e., PaaS Provider)
Application
Hardware
Middleware
Application
Platform as a Service (PaaS)
CustomerApp Provider
• Cloud provides middleware/infrastructure- For example, Microsoft Common Language Runtime (CLR)- App provider pays the cloud for the platform- Customer pays app provider for the service- Example: Windows Azure, Google App Engine, etc.
Cloud Provider (i.e., PaaS Provider)
Application
Hardware
Middleware
Application
Platform as a Service (PaaS)
CustomerApp Provider
• Cloud provides middleware/infrastructure- For example, Microsoft Common Language Runtime (CLR)- App provider pays the cloud for the platform- Customer pays app provider for the service- Example: Windows Azure, Google App Engine, etc.
Cloud Provider (i.e., PaaS Provider)
Application
Hardware
Middleware
Application
Platform as a Service (PaaS)
CustomerApp Provider
• Cloud provides middleware/infrastructure- For example, Microsoft Common Language Runtime (CLR)- App provider pays the cloud for the platform- Customer pays app provider for the service- Example: Windows Azure, Google App Engine, etc.
Cloud Provider (i.e., PaaS Provider)
Application
A Typical PaaS: Facebook
Hardware
Middleware
Application
A Typical PaaS: Facebook
Facebook Provider
Hardware
Middleware
Application
A Typical PaaS: Facebook
• Facebook offers PaaS capabilities to App provider- Facebook APIs allow access to social network properties- Third-party game applications- Facebook itself also uses PaaS provided by its company, e.g., log
analysis for recommendations
Facebook Provider
Hardware
Middleware
Application
A Typical PaaS: Facebook
• Facebook offers PaaS capabilities to App provider- Facebook APIs allow access to social network properties- Third-party game applications- Facebook itself also uses PaaS provided by its company, e.g., log
analysis for recommendations
Facebook APIs
Facebook Clusters
Facebook Provider
Hardware
Middleware
Application
A Typical PaaS: Facebook
• Facebook offers PaaS capabilities to App provider- Facebook APIs allow access to social network properties- Third-party game applications- Facebook itself also uses PaaS provided by its company, e.g., log
analysis for recommendations
Facebook APIs
Facebook Clusters
Facebook Provider
Hardware
Middleware
Application
A Typical PaaS: Facebook
App Provider
• Facebook offers PaaS capabilities to App provider- Facebook APIs allow access to social network properties- App providers adopt their services (e.g., game) onto Facebook- Facebook itself also uses PaaS provided by its company, e.g., log
analysis for recommendations
Facebook Game
Facebook APIs
Facebook Clusters
Facebook Provider
Hardware
Middleware
Application
A Typical PaaS: Facebook
App Provider
• Facebook offers PaaS capabilities to App provider- Facebook APIs allow access to social network properties- App providers adopt their services (e.g., game) onto Facebook- Facebook itself also uses PaaS provided by its company, e.g., log
analysis for recommendations
Facebook APIs
Facebook Clusters
Facebook Provider
Facebook Game
Hardware
Middleware
Application
A Typical PaaS: Facebook
CustomerApp Provider
• Facebook offers PaaS capabilities to App provider- Facebook APIs allow access to social network properties- App providers adopt their services (e.g., game) onto Facebook- Facebook itself also uses PaaS provided by its company, e.g., log
analysis for recommendations
Facebook Game
Facebook APIs
Facebook Clusters
Facebook Provider
Facebook Game
Hardware
Middleware
Application
A Typical PaaS: Facebook
CustomerApp Provider
• Facebook offers PaaS capabilities to App provider- Facebook APIs allow access to social network properties- App providers adopt their services (e.g., game) onto Facebook- Facebook itself also uses PaaS provided by its company, e.g., log
analysis for recommendations
Facebook Game
Facebook APIs
Facebook Clusters
Facebook Provider
Facebook Game
Hardware
Middleware
Application
A Typical PaaS: Facebook
CustomerApp Provider
• Facebook offers PaaS capabilities to App provider- Facebook APIs allow access to social network properties- App providers adopt their services (e.g., game) onto Facebook- Facebook itself also uses PaaS provided by its company, e.g., log
analysis for recommendations
Facebook Game
Facebook APIs
Facebook Clusters
Facebook Provider
Facebook Game
Infrastructure as a Service (IaaS)
Hardware
Middleware
Application Application
Middleware
• Cloud provides raw computing resources- Virtual machines, blade servers, hard disk, etc.- Customer pays SaaS provider for the service- SaaS provider pays the cloud for the resources- Example: Amazon Web Services, Rackspace Cloud, etc.
Infrastructure as a Service (IaaS)
Cloud Provider (i.e., IaaS Provider)
Hardware
Middleware
Application Application
Middleware
• Cloud provides raw computing resources- Virtual machines, blade servers, hard disk, etc.- Customer pays SaaS provider for the service- SaaS provider pays the cloud for the resources- Example: Amazon Web Services, Rackspace Cloud, etc.
Infrastructure as a Service (IaaS)
Cloud Provider (i.e., IaaS Provider)
Hardware
Middleware
Application Application
Middleware
• Cloud provides raw computing resources- Virtual machines, blade servers, hard disk, etc.- App provider pays the cloud for the resources- Customer pays App provider for the service- Example: Amazon Web Services, Rackspace Cloud, etc.
Infrastructure as a Service (IaaS)
App Provider
Cloud Provider (i.e., IaaS Provider)
Hardware
Middleware
Application Application
Middleware
• Cloud provides raw computing resources- Virtual machines, blade servers, hard disk, etc.- App provider pays the cloud for the resources- Customer pays App provider for the service- Example: Amazon Web Services, Rackspace Cloud, etc.
Infrastructure as a Service (IaaS)
App Provider
Cloud Provider (i.e., IaaS Provider)
Middleware
Application
Hardware
Middleware
Application Application
Customer
Middleware
Infrastructure as a Service (IaaS)
App Provider
Cloud Provider (i.e., IaaS Provider)
• Cloud provides raw computing resources- Virtual machines, blade servers, hard disk, etc.- App provider pays the cloud for the resources- Customer pays App provider for the service- Example: Amazon Web Services, Rackspace Cloud, etc.
Middleware
Application
Hardware
Middleware
Application Application
Customer
Middleware
Infrastructure as a Service (IaaS)
App Provider
Cloud Provider (i.e., IaaS Provider)
• Cloud provides raw computing resources- Virtual machines, blade servers, hard disk, etc.- App provider pays the cloud for the resources- Customer pays App provider for the service- Example: Amazon Web Services, Rackspace Cloud, etc.
Middleware
Application
Hardware
Middleware
Application Application
Customer
Middleware
Infrastructure as a Service (IaaS)
App Provider
Cloud Provider (i.e., IaaS Provider)
• Cloud provides raw computing resources- Virtual machines, blade servers, hard disk, etc.- App provider pays the cloud for the resources- Customer pays App provider for the service- Example: Amazon Web Services, Rackspace Cloud, etc.
Middleware
Application
Hardware
Middleware
Application Application
Middleware
Typical IaaS: EC2 and S3
Amazon
Hardware
Middleware
Application Application
Middleware
Typical IaaS: EC2 and S3
Amazon
EC2 S3
Hardware
Middleware
Application Application
Middleware
Amazon
EC2 S3
Netflix Provider
• Net"ix (app) heavily depends on Amazon AWS: - Media #les are stored in S3- Transcoding to target devices (e.g., iPad) using EC2- Analysis of streaming sessions based on Elastic MapReduce
Typical IaaS: EC2 and S3
Hardware
Middleware
Application
Middleware
Amazon
EC2 S3
Netflix Provider
• Net"ix (app) heavily depends on Amazon AWS: - Media #les are stored in S3- Transcoding to target devices (e.g., iPad) using EC2- Analysis of streaming sessions based on Elastic MapReduce
Typical IaaS: EC2 and S3
Hardware
Middleware
Application
Middleware
Amazon
EC2 S3
Netflix Provider
• Net"ix (app) heavily depends on Amazon AWS: - Media #les are stored in S3- Transcoding to target devices (e.g., iPad) using EC2- Analysis of streaming sessions based on Elastic MapReduce
Typical IaaS: EC2 and S3
Netflix
Hardware
Middleware
Application
Middleware
Amazon
EC2 S3
Netflix Provider
• Net"ix (app) heavily depends on Amazon AWS: - Media #les are stored in S3- Transcoding to target devices (e.g., iPad) using EC2- Analysis of streaming sessions based on Elastic MapReduce
Typical IaaS: EC2 and S3
Netflix
Hardware
Middleware
Application Application
Middleware
Amazon
EC2 S3
CustomerNetflix Provider
• Net"ix (app) heavily depends on Amazon AWS: - Media #les are stored in S3- Transcoding to target devices (e.g., iPad) using EC2- Analysis of streaming sessions based on Elastic MapReduce
Typical IaaS: EC2 and S3
Netflix
Hardware
Middleware
Application Application
Middleware
Amazon
EC2 S3
CustomerNetflix Provider
• Net"ix (app) heavily depends on Amazon AWS: - Media #les are stored in S3- Transcoding to target devices (e.g., iPad) using EC2- Analysis of streaming sessions based on Elastic MapReduce
Typical IaaS: EC2 and S3
Netflix
• Three types of services:- Software as a Service (SaaS)
- Analogy: Restaurant. Prepares&serves entire meal, does the dishes, etc
- Platform as a Service (PaaS)- Analogy: Take-out food. Prepares meal but does not serve it.
- Infrastructure as a Service (IaaS)- Analogy: Grocery store. Provides raw ingredients.
Recall
The Major Cloud Providers
The Major Cloud Providers
• Amazon is the big player: - Infrastructure as a service (e.g., EC2)- Storage as a service (e.g., S3)
• But there are many others:- Microsoft Azure: It has similar services to Amazon, with an
emphasis on .Net programming model- Google App Engine: It offers programming interface, Hadoop, also
software as a service, e.g., Gmail and Google Docs- IBM, HP, Yahoo!: They seem to focus on enterprise scale cloud apps
The Major Cloud Providers
• Amazon is the big player: - Infrastructure as a service (e.g., EC2)- Storage as a service (e.g., S3)
• But there are many others:- Microsoft Azure: It has similar services to Amazon, with an
emphasis on .Net programming model- Google App Engine: It offers programming interface, Hadoop, also
software as a service, e.g., Gmail and Google Docs- IBM, HP, Yahoo!: They seem to focus on enterprise scale cloud apps
• Cloud Computing
• Challenges in the Clouds
• A Concrete Cloud Reliability Case
Lecture Outline
• Cloud Computing
• Challenges in the Clouds
• A Concrete Cloud Reliability Case
Lecture Outline
What Kinds of Challenges?
• Scalability
• Availability and reliability
• Security and privacy
What Kinds of Challenges?
• Scalability
• Availability and reliability
• Security and privacy
What Kinds of Challenges?
Scalability
PC
Scalability
• What if one computer is not enough? - Buy a bigger (server-class) computer
PC
Scalability
• What if one computer is not enough? - Buy a bigger (server-class) computer
PC Server
Scalability
• What if one computer is not enough? - Buy a bigger (server-class) computer
PC Server
• What if the biggest computer is not enough? - Buy many computers
Scalability
• What if one computer is not enough? - Buy a bigger (server-class) computer
PC Server Cluster
• What if the biggest computer is not enough? - Buy many computers
Scalability
ScalabilityRack
ScalabilityNetwork switches
(connects nodes with each other and with other racks)
Rack
ScalabilityNetwork switches
(connects nodes with each other and with other racks)
Many nodes/blades (often identical)
Rack
ScalabilityNetwork switches
(connects nodes with each other and with other racks)
Many nodes/blades (often identical)
Storage device(s)
Rack
Scalability
• What if cluster is too big to #t into machine room? - Build a separate building for the cluster- Building can have lots of cooling and power- Result: Data center
PC Server Cluster
Scalability
• What if cluster is too big to #t into machine room? - Build a separate building for the cluster- Building can have lots of cooling and power- Result: Data center
PC Server Cluster
Scalability
• What if cluster is too big to #t into machine room? - Build a separate building for the cluster- Building can have lots of cooling and power- Result: Data center
PC Server Cluster Data center
Google Data Center in Oregon
Data centers (size of a football #eld)
Google Data Center in Oregon
• A warehouse-sized computer - A single data center can easily contain 10,000 racks with
100 cores in each rack (1,000,000 cores total)
Google Data Center in OregonData centers (size of a
football #eld)
Google Data Center Locations
Google Data Centers in the USA
Google Data Centers in Europe
Google Data Centers World Wide
Open Challenges
Open Challenges
• Can you manage thousands of racks effectively?- Cloud monitor systems (e.g., PlanetSeer [OSDI’04])- Can you design more scalable data center network?
Open Challenges
• Can you manage thousands of racks effectively?- Cloud monitor systems (e.g., PlanetSeer [OSDI’04])- Can you design more scalable data center network?
Open Challenges
• Can you make data center more scalable?- Scalable data center architecture (e.g., VL2 [SIGCOMM’09])- Can you design more scalable data center network?
• Can you manage thousands of racks effectively?- Cloud monitor systems (e.g., PlanetSeer [OSDI’04])
Open Challenges
• Can you make data center more scalable?- Scalable data center architecture (e.g., VL2 [SIGCOMM’09])- Can you design more scalable data center network?
• Can you manage thousands of racks effectively?- Cloud monitor systems (e.g., PlanetSeer [OSDI’04])
• Scalability
• Availability and reliability
• Security and privacy
What Kinds of Challenges?
• Scalability
• Availability and reliability
• Security and privacy
What Kinds of Challenges?
Availability & Reliability
• Is the cloud always there when you need it? - Service outages- Connectivity outages
Recent Cloud Disasters
Recent Cloud Disasters
Recent Cloud Disasters
Top10 Cloud Service Outages
Open Challenges
• Can you build a system to #nd out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])
Open Challenges
• Can you build a system to #nd out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])- Accountable cloud (e.g., AVM [OSDI’10])
Open Challenges
• Can you build a system to #nd out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])- Accountable cloud (e.g., AVM [OSDI’10])
Open Challenges
• Can you propose an approach to make the clouds more robust?- Fault tolerate systems (e.g., F10 [NSDI’13])
• Can you build a system to #nd out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])- Accountable cloud (e.g., AVM [OSDI’10])
Open Challenges
• Can you propose an approach to make the clouds more robust?- Fault tolerate systems (e.g., F10 [NSDI’13])
• Can you build a system to #nd out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])- Accountable cloud (e.g., AVM [OSDI’10])
• Scalability
• Availability and reliability
• Security and privacy
What Kinds of Challenges?
• Scalability
• Availability and reliability
• Security and privacy
What Kinds of Challenges?
Security & Privacy
• Compromised your cloud accounts - Hacker does not need to break into your home to steal all your
private data, if he can break or guess your cloud password- Even worse, if hack who cracks your Facebook account get into
your accounts everywhere online
Security & Privacy
• Compromised your cloud accounts - Hacker does not need to break into your home to steal all your
private data, if he can break or guess your cloud password- Even worse, if hack who cracks your Facebook account get into
your accounts everywhere online
• You do not know if the cloud providers read your private data
Open Challenges
• Can you build a system to preserve the privacy of your data on the clouds?- MAC for MapReduce (e.g., Airavat [NSDI’10])- Trusted storage (e.g., Depot [OSDI’10])
Open Challenges
• Can you build a system to preserve the privacy of your data on the clouds?- MAC for MapReduce (e.g., Airavat [NSDI’10])- Trusted storage (e.g., Depot [OSDI’10])
Open Challenges
• Can you build a system to preserve the privacy of your data on the clouds?- MAC for MapReduce (e.g., Airavat [NSDI’10])- Trusted storage (e.g., Depot [OSDI’10])
Open Challenges
• Can you propose an approach to verify if the cloud provider modi#es your data?- Trusted cloud computing (e.g., Excalibur [USENIX Sec’12])
• Can you build a system to preserve the privacy of your data on the clouds?- MAC for MapReduce (e.g., Airavat [NSDI’10])- Trusted storage (e.g., Depot [OSDI’10])
Open Challenges
• Can you propose an approach to verify if the cloud provider modi#es your data?- Trusted cloud computing (e.g., Excalibur [USENIX Sec’12])
• Can you build a system to preserve the privacy of your data on the clouds?- MAC for MapReduce (e.g., Airavat [NSDI’10])- Trusted storage (e.g., Depot [OSDI’10])
More Risks?
• EverClouds is a project of DeDiS group (Bryan is PI): - aims to solve tricky cloud security problems (e.g., timing channels)- tries to make the clouds more reliable (e.g., failure detection)
• We already have some efforts:- SRA: A cloud structural reliability auditing system (submitted)- iRec: A cloud independence recommender system (HotDep’13)- P-SRA: A privacy-preserving structural-reliability auditor (CCSW’13)- Timing channel control with provider-enforced deterministic
execution (CCSW’10)
More Risks?
• EverClouds is a project of DeDiS group (Bryan is PI): - aims to solve tricky cloud security problems (e.g., timing channels)- tries to make the clouds more reliable (e.g., failure detection)
• We already have some efforts:- SRA: A cloud structural reliability auditing system (submitted)- iRec: A cloud independence recommender system (HotDep’13)- P-SRA: A privacy-preserving structural-reliability auditor (CCSW’13)- Timing channel control with provider-enforced deterministic
execution (CCSW’10)
More Risks?
• EverClouds is a project of DeDiS group (Bryan is PI): - aims to solve tricky cloud security problems (e.g., timing channels)- tries to make the clouds more reliable (e.g., failure detection)
• We already have some efforts:- SRA: A cloud structural reliability auditing system (submitted)- iRec: A cloud independence recommender system (HotDep’13)- P-SRA: A privacy-preserving structural-reliability auditor (CCSW’13)- Timing channel control with provider-enforced deterministic
execution (CCSW’10)
More Risks?
• EverClouds is a project of DeDiS group (Bryan is PI): - aims to solve tricky cloud security problems (e.g., timing channels)- tries to make the clouds more reliable (e.g., failure detection)
• We already have some efforts:- SRA: A cloud structural reliability auditing system (submitted)- iRec: A cloud independence recommender system (HotDep’13)- P-SRA: A privacy-preserving structural-reliability auditor (CCSW’13)- Timing channel control with provider-enforced deterministic
execution (CCSW’10)
More Risks?
• EverClouds is a project of DeDiS group (Bryan is PI): - aims to solve tricky cloud security problems (e.g., timing channels)- tries to make the clouds more reliable (e.g., failure detection)
• We already have some efforts:- SRA: A cloud structural reliability auditing system (submitted)- iRec: A cloud independence recommender system (HotDep’13)- P-SRA: A privacy-preserving structural-reliability auditor (CCSW’13)- Timing channel control with provider-enforced deterministic
execution (CCSW’10)
More Risks?
• EverClouds is a project of DeDiS group (Bryan is PI): - aims to solve tricky cloud security problems (e.g., timing channels)- tries to make the clouds more reliable (e.g., failure detection)
• We already have some efforts:- SRA: A cloud structural reliability auditing system (submitted)- iRec: A cloud independence recommender system (HotDep’13)- P-SRA: A privacy-preserving structural-reliability auditor (CCSW’13)- Timing channel control with provider-enforced deterministic
execution (CCSW’10)
More Risks?
• Cloud Computing
• Challenges in the Clouds
• A Concrete Cloud Reliability Case
Lecture Outline
• Cloud Computing
• Challenges in the Clouds
• A Concrete Cloud Reliability Case
Lecture Outline
An Untold Story of Redundant Clouds:Making Your Service Deployment Truly Reliable
Ennan Zhai1, Ruichuan Chen2, David Isaac Wolinsky1, Bryan Ford1
1Yale University & 2Bell Labs
• Motivations
• Goal & Insight
• iRec System
• Next Steps
Road-Map
?
• Application providers: - enjoy the simplicity of using the clouds- have no idea about what happen in the clouds- rent multiple clouds for redundancy
Background
?
• Application providers: - enjoy the simplicity of using the clouds- have no idea about what happen in the clouds- rent multiple clouds for redundancy
Background
?
• Application providers: - enjoy the simplicity of using the clouds- have no idea about what happen in the clouds- rent multiple clouds for redundancy
Background
EC2 availability zone EC2 availability zone EC2 availability zone
Net!ix Application Service
IaaS
App
Example 1: Net"ix
iCloud Application Service
IaaS
App
Amazon EC2 Service Microsoft Azure Service
Example 2: iCloud
Email App
Cloud Provider A Cloud Provider B
Problem
Email App
Cloud Provider A Cloud Provider B
Problem
Third-party infrastructure components
Email App
Cloud Provider A Cloud Provider B
ISP BISP A ISP C
Problem
Third-party infrastructure components
Email App
Cloud Provider A Cloud Provider B
ISP BISP A ISP C
Power Source
Problem
Third-party infrastructure components
Email App
Cloud Provider A Cloud Provider B
ISP BISP A ISP C
Power Source
Problem
Third-party infrastructure components
Email App
Cloud Provider A Cloud Provider B
ISP BISP A ISP C
Power Source
ProblemBecome unavailable !
Third-party infrastructure components
Problem
• Cloud providers allocate or tolerate failures via: - diagnosis systems, e.g., Sherlock.- fault-tolerant systems, e.g., F10, Skute.
Existing Efforts
• Cloud providers allocate or tolerate failures via: - diagnosis systems, e.g., Sherlock.- fault-tolerant systems, e.g., F10, Skute.
• Solving the problem after the outage occurs
• There is no any effort before the problem occur
Existing Efforts
• Cloud providers allocate or tolerate failures via: - diagnosis systems, e.g., Sherlock.- fault-tolerant systems, e.g., F10, Skute.
• Solving the problem after the outage occurs
• We want to prevent the problem before the outage occurs
Existing Efforts
• Cloud providers allocate or tolerate failures via: - diagnosis systems, e.g., Sherlock.- fault-tolerant systems, e.g., F10, Skute.
• Solving the problem after the outage occurs
• We want to prevent the problem before the outage occurs
Existing Efforts
• Recommending truly independent redundancy services when deploying applications
• Motivations
• Goal & Insight
• iRec System
• Next Steps
Road-Map
Road-Map
• Motivations
• Goal & Insight
• iRec System
• Next Steps
App Provider
Goal & Insight
Cloud A Cloud B Cloud C
App Provider
Goal & InsightSelect two clouds for
redundancy
Cloud A Cloud B Cloud C
App Provider
Goal & Insight
Cloud A Cloud B Cloud C
A and B ?
App Provider
Goal & Insight
Cloud A Cloud B Cloud C
B and C ?
App Provider
Goal & Insight
Cloud A Cloud C
A and C ?
Cloud B
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
Select two clouds for redundancy: A&B? B&C? or A&C?
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
Cloud A Cloud B Cloud C
App Provider Recommender
Goal & Insight
Assessing independence by the # of overlapping components between clouds
Cloud A Cloud B Cloud C
App Provider Recommender
Goal & Insight
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP A Power BPower A
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP A Power BPower A
ISP APower APower B
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP A Power BPower A
ISP APower APower B
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP A Power B ISP BPower A
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP A Power B ISP BPower A
ISP BPower APower B
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP A Power B ISP BPower A
ISP BPower APower B
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP BPower APower B
ISP A Power B ISP B Power CPower A
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP BPower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP BPower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP BPower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP BPower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
=2
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP BPower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
=2
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP BPower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | | Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP BPower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | | Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
=1
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP BPower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
=1
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
=0
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
ISP APower APower B
ISP A Power B ISP B Power CPower A
ISP BPower C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
=0
App Provider Recommender
Goal & Insight
Cloud A Cloud B Cloud C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
Cloud A Cloud B Cloud C
App Provider Recommender1. Cloud A, C 02. Cloud B, C 13. Cloud A, B 2
| |
Goal & Insight
Deployment
Ranking List Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
Road-Map
• Motivations
• Goal & Insight
• iRec System
• Next Steps
Road-Map
• Motivations
• Goal & Insight
• iRec System
• Next Steps
Cloud Provider1
Cloud Provider2
Cloud Provider3
Recommender
App Provider
Strawman Solution 1
Cloud Provider1
Cloud Provider2
Cloud Provider3
Recommender
App Provider
Privacy Concern!
Strawman Solution 1
Cloud Provider1
Cloud Provider2
Cloud Provider3
Trusted Third Party
App Provider
Strawman Solution 2
Cloud Provider1
Cloud Provider2
Cloud Provider3
Trusted Third Party
App Provider
It is hard to #nd!
Strawman Solution 2
Cloud Provider1
Cloud Provider2
Cloud Provider3
Secure Multiparty Computation
App Provider
Strawman Solution 3[Xiao et al, CCSW’13]
Cloud Provider1
Cloud Provider2
Cloud Provider3
SMPC
App Provider
SMPC is difficult to scale!
Strawman Solution 3[Xiao et al, CCSW’13]
Our Approach - iRec
• The #rst cloud independence recommender sys: - achieving our goal- preserving privacy of each cloud provider- practical
Our Approach - iRec
Preliminary background: PSI-CA
Our Approach - iRec• The #rst cloud independence recommender sys:
- achieving our goal- preserving privacy of each cloud provider- practical
• Private set-intersection cardinality proposed by [Freedman et al, EuroCrypt’04].
• Allows k parties to compute the # of overlapping elements without learning other information.
Preliminary: PSI-CA
Preliminary: PSI-CA• Private set-intersection cardinality proposed by
[Freedman et al, EuroCrypt’04].
• Allows k parties to compute the # of overlapping elements without learning other information.
11
3
10
1
5
20
3
7
3
PSI-CA
Preliminary: PSI-CA
11
3
10
1
5
20
3
7
3
PSI-CA
• Private set-intersection cardinality proposed by [Freedman et al, EuroCrypt’04].
• Allows k parties to compute the # of overlapping elements without learning other information.
11
3
10
1
5
20
3
7
3
PSI-CA
One overlapping element
Preliminary: PSI-CA
One overlapping element
One overlapping element
• Private set-intersection cardinality proposed by [Freedman et al, EuroCrypt’04].
• Allows k parties to compute the # of overlapping elements without learning other information.
11
3
10
1
5
20
3
7
3
PSI-CA
But I do not know which element is overlapping
Preliminary: PSI-CA
But I do not know which element is overlapping
But I do not know which element is overlapping
• Private set-intersection cardinality proposed by [Freedman et al, EuroCrypt’04].
• Allows k parties to compute the # of overlapping elements without learning other information.
1
4
6
2
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A Data Set B
AliceBob
Preliminary: PSI-CA
1
4
6
2
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A Data Set B
AliceBob
Preliminary: PSI-CAP = (X-12)(X-5)(X-4)= x3-21x2+128X-240
1
4
6
2
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A Data Set B
AliceBob
Preliminary: PSI-CAP = (X-12)(X-5)(X-4)= x3-21x2+128X-240
{E(1), E(-21), E(128), E(-240)}
1
4
6
2
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A Data Set B
AliceBob
Preliminary: PSI-CAP = (X-12)(X-5)(X-4)= x3-21x2+128X-240
{E(P(1)), E(P(4)), E(P(6)), E(P(2))}
{E(1), E(-21), E(128), E(-240)}
1
4
6
2
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A Data Set B
AliceBob
Preliminary: PSI-CAP = (X-12)(X-5)(X-4)= x3-21x2+128X-240
{E(P(1)), E(P(4)), E(P(6)), E(P(2))}
{E(1), E(-21), E(128), E(-240)}
1
4
6
2
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A Data Set B
AliceBob
Preliminary: PSI-CAP = (X-12)(X-5)(X-4)= x3-21x2+128X-240
{E(P(1)), E(P(4)), E(P(6)), E(P(2))}
{E(1), E(-21), E(128), E(-240)}
1
4
6
2
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A Data Set B
AliceBob
Preliminary: PSI-CAP = (X-12)(X-5)(X-4)= x3-21x2+128X-240
{E(-132), E(0), E(-12), E(-60)}
{E(1), E(-21), E(128), E(-240)}
1
4
6
2
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A Data Set B
AliceBob
Preliminary: PSI-CAP = (X-12)(X-5)(X-4)= x3-21x2+128X-240
{E(-132), E(0), E(-12), E(-60)}
{E(1), E(-21), E(128), E(-240)}
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A
AliceP = (X-12)(X-5)(X-4)= x3-21x2+128X-240
{-132, 0, -12, -60}
Preliminary: PSI-CA
• Alice and Bob has set A and B respectively and Alice wants to jointly compute |A B|.• Alice makes a polynomial P whose roots are the elements of data set A.• Alice encrypts the coefficients of P and sends them to Bob. Note that Alice sends homomorphic encryptions of the coefficients to Bob.• Bob evaluates P(Bi) for each element in data set B.• Bob returns the encrypted evaluations to Alice.• Alice decrypts it and counts the number of zeroes.
Data Set A
AliceP = (X-12)(X-5)(X-4)= x3-21x2+128X-240
{-132, 0, -12, -60}
Preliminary: PSI-CAResult is: 1
11
3
10
1
5
20
3
7
3
PSI-CA
One overlapping element
Preliminary: PSI-CA
One overlapping element
One overlapping element
Cloud A Cloud B Cloud C
App Provider iRec
Our Approach - iRec
ISP A Power B ISP B Power CPower A
Cloud A Cloud B Cloud C
App Provider iRec
Our Approach - iRec
ISP A Power B ISP B Power CPower A
Select two clouds for redundancy: A&B? B&C? or A&C?
Cloud A Cloud B Cloud C
App Provider iRec
Step 1
ISP A Power B ISP B Power CPower A
Cloud A Cloud B Cloud C
App Provider iRec
Step 2
ISP A Power B ISP B Power CPower A
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Step 3
iRec
ISP APower APower B
ISP BPower APower B
ISP BPower C
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Step 3
iRec
PSI-CA PSI-CA
ISP APower APower B
ISP BPower APower B
ISP BPower C
Cloud A Cloud B Cloud C
App Provider iRec
Step 4
ISP A Power B ISP B Power CPower A
App Provider
Step 5
Cloud A Cloud B Cloud C
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
ISP A Power B ISP B Power CPower A
iRec
Cloud A Cloud B Cloud C
App Provider1. Cloud A, C 02. Cloud B, C 13. Cloud A, B 2
| |
Step 5
Deployment
Ranking List Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
ISP A Power B ISP B Power CPower A
iRec
• Different infrastructure components play different roles in the clouds
• Power source might be much more likely to fail than ISPs
An Improvement Version
• Different infrastructure components play different roles in the clouds
• Power source might be much more likely to fail than ISPs
An Improvement Version
An Improvement Version
• We propose an improvement version - Using Weighted PSI-CA (W-PSI-CA) to instead of
PSI-CA in Step2- No other improvement
• Different infrastructure components play different roles in the clouds
• Power source might be much more likely to fail than ISPs
An Improvement Version
• We propose an improvement version - Using Weighted PSI-CA (W-PSI-CA) to instead of
PSI-CA in Step3
• Different infrastructure components play different roles in the clouds
• Power source might be much more likely to fail than ISPs
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
iRec
Recall: Step 3
PSI-CA PSI-CA
ISP APower APower B
ISP BPower APower B
ISP BPower C
Cloud A Cloud B
ISP A Power B ISP BPower A
PSI-CA
ISP APower APower B
ISP BPower APower B
Recall: Step 3
Result is 2
Cloud A Cloud B
ISP A Power B ISP BPower A
Using W-PSI-CA
Cloud A Cloud B
ISP A Power B ISP BPower A
ISP APower APower B
ISP BPower APower B
Using W-PSI-CA
Cloud A Cloud B
ISP A Power B ISP BPower A
Using W-PSI-CA
ISP A 1Power A 2Power B 2
ISP B 1Power A 2Power B 2
Cloud A Cloud B
ISP A Power B ISP BPower A
Using W-PSI-CA
ISP A 1Power A 2Power B 2
ISP B 1Power A 2Power B 2
Weights
Cloud A Cloud B
ISP A Power B ISP BPower A
Using W-PSI-CA
ISP APower APower APower BPower B
ISP BPower APower APower BPower B
ISP A 1Power A 2Power B 2
ISP B 1Power A 2Power B 2
DSI DSI
Cloud A Cloud B
ISP A Power B ISP BPower A
Using W-PSI-CA
ISP APower APower APower BPower B
ISP BPower APower APower BPower B
ISP A 1Power A 2Power B 2
ISP B 1Power A 2Power B 2
DSI DSI
Cloud A Cloud B
ISP A Power B ISP BPower A
Using W-PSI-CA
PSI-CA
ISP APower APower APower BPower B
ISP BPower APower APower BPower B
DSI DSI
Cloud A Cloud B
ISP A Power B ISP BPower A
Using W-PSI-CA
PSI-CA
Result is 4ISP A
Power APower APower BPower B
ISP BPower APower APower BPower B
DSI DSI
Case Study
Cloud A Cloud B Cloud C
App Provider iRec
Step 1
ISP A Power B ISP B Power CPower A
Select two clouds for redundancy: A&B? B&C? or A&C?
Cloud A Cloud B Cloud C
App Provider iRec
Step 1
ISP A Power B ISP B Power CPower A
Cloud A Cloud B Cloud C
App Provider iRec
Step 2
ISP A Power B ISP B Power CPower A
Weights
Weights
Weights
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
ISP A 3Power A 1Power B 1
ISP B 3Power A 1Power B 1
ISP B 3Power C 1
Step 3 & 4 with W-PSI-CA
iRec
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
ISP A 3Power A 1Power B 1
ISP B 3Power A 1Power B 1
ISP B 3Power C 1
ISP AISP AISP A
Power APower B
ISP BISP BISP B
Power APower B
ISP BISP BISP B
Power C
Step 3 & 4 with W-PSI-CA
iRec
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
ISP AISP AISP A
Power APower B
ISP BISP BISP B
Power APower B
ISP BISP BISP B
Power C
Step 3 & 4 with W-PSI-CA
iRec
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
ISP AISP AISP A
Power APower B
ISP BISP BISP B
Power CPSI-CA
Step 3 & 4 with W-PSI-CA
iRec
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
ISP AISP AISP A
Power APower B
ISP BISP BISP B
Power CPSI-CA
Step 3 & 4 with W-PSI-CA
iRec
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Cloud A, C 0 Cloud B, C 1 Cloud A, B 2
Deployment | |
ISP AISP AISP A
Power APower B
ISP BISP BISP B
Power APower B
ISP BISP BISP B
Power CPSI-CA
Step 3 & 4 with W-PSI-CA
iRec
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Cloud A, C 0 Cloud B, C 3 Cloud A, B 2
Deployment | |
ISP AISP AISP A
Power APower B
ISP BISP BISP B
Power APower B
ISP BISP BISP B
Power CPSI-CA
Step 3 & 4 with W-PSI-CA
iRec
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Cloud A, C 0 Cloud B, C 3 Cloud A, B 2
Deployment | |
ISP AISP AISP A
Power APower B
ISP BISP BISP B
Power APower B
ISP BISP BISP B
Power CPSI-CA
Step 3 & 4 with W-PSI-CA
iRec
App Provider
Cloud A Cloud B Cloud C
ISP A Power B ISP B Power CPower A
Cloud A, C 0 Cloud B, C 3 Cloud A, B 2
Deployment | |
ISP AISP AISP A
Power APower B
ISP BISP BISP B
Power APower B
ISP BISP BISP B
Power CPSI-CA
Step 3 & 4 with W-PSI-CA
iRec
App Provider
Cloud A Cloud B Cloud C
Cloud A, C 0 Cloud B, C 3 Cloud A, B 2
Deployment | |Step 5
iRec
App Provider
Cloud A Cloud B Cloud C
Cloud A, C 0 Cloud B, C 3 Cloud A, B 2
Deployment | |Step 5
iRec
App Provider
Cloud A Cloud B Cloud C
Cloud A, C 0 Cloud A, B 2 Cloud B, C 3
Deployment | |Step 5
iRec
Cloud A Cloud B Cloud C
App Provider1. Cloud A, C 02. Cloud A, B 23. Cloud B, C 3
| |Deployment
Ranking List Cloud A, C 0 Cloud A, B 2 Cloud B, C 3
Deployment | |Step 5
iRec
App Provider1. Cloud A, C 02. Cloud A, B 23. Cloud B, C 3
| |Deployment
Ranking List
Step 5
1. Cloud A, C 02. Cloud B, C 13. Cloud A, B 2
| |Deployment
V.S. Ranking list with W-PSI-CA
Ranking list with PSI-CA
iRec
Road-Map
• Motivations
• Goal & Insight
• iRec System
• Next Steps
Road-Map
• Motivations
• Goal & Insight
• iRec System
• Next Steps
Next Steps• Can we provide stronger privacy preservation?
• Do cloud providers have incentives to join?
• Will the clouds behave honestly?
• Can we make iRec more scalable?
• How do we evaluate iRec with realistic cloud dependency datasets?
Next Steps• Can we provide stronger privacy preservation?
• Do cloud providers have incentives to join?
• Will the clouds behave honestly?
• Can we make iRec more scalable?
• How do we evaluate iRec with realistic cloud dependency datasets?
Next Steps• Can we provide stronger privacy preservation?
• Do cloud providers have incentives to join?
• Will the clouds behave honestly?
• Can we make iRec more scalable?
• How do we evaluate iRec with realistic cloud dependency datasets?
Next Steps• Can we provide stronger privacy preservation?
• Do cloud providers have incentives to join?
• Will the clouds behave honestly?
• Can we make iRec more scalable?
• How do we evaluate iRec with realistic cloud dependency datasets?
The End• Do you want to:
- do a cloud related #nal project?- do anything for EverClouds?- discuss your smart idea about the clouds?
The End• Do you want to:
- do a cloud related #nal project?- do anything for EverClouds?- discuss your smart idea about the clouds?
I have a lot of interesting (even crazy) ideas about the cloud security and reliability, but I do not have time to implement all of them ...
Thanks!
Questions?