195
Cloud Computing Ennan Zhai Computer Science at Yale University [email protected]

Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Embed Size (px)

Citation preview

Page 1: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Cloud Computing

Ennan ZhaiComputer Science at Yale University

[email protected]

Page 2: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

About Final Project

Page 3: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

About Final Project

• Important dates before demo session: - Oct 31: Proposal v1.0 - Nov 7: Source code v1.0- Nov 14: Proposal v2.0- Nov 21: Source code v2.0- Dec 1: Bakeoff version

Page 4: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

About Final Project• How to present?

- ~2 min video and ~2 min Q&A

• What to submit? - 1) Source code- 2) Proposal- 3) README

• Others- any programming language- running on zoo machines- individual or group (2-3 members)

Page 5: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

About Final Project• Topics:

- Structured P2P system, e.g., Chord- Hybrid P2P system, e.g., BubbleStorm- Email client software- Decentralized read/write file system- Decentralized social network application- Sybil-resistant recommendation system- Fault tolerance (BFT) system- Accountability system, e.g., PeerReview - ... ...

Page 6: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

About Final Project

• A few good final projects in the past years:- Workable email client- A picture-based encryption tool- A privacy-preserving social network- ... ...

Page 7: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Questions?

Page 8: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Cloud Computing

• Challenges in the Clouds

• A Concrete Cloud Reliability Case

Lecture Outline

Page 9: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Cloud Computing

• Challenges in the Clouds

• A Concrete Cloud Reliability Case

Lecture Outline

Page 10: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

What’s the Cloud Computing?

Page 11: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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?

Page 12: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Have You Used the Cloud?

Page 13: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Have You Used the Cloud?

Page 14: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Have You Used the Cloud?

Page 15: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Have You Used the Cloud?

Page 16: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Have You Used the Cloud?

Page 17: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Have You Used the Cloud?

Page 18: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Why We Like It?

Page 19: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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?

Page 20: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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?

Page 21: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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?

Page 22: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Cloud V.S. Distributed Systems

Page 23: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

What Kinds of Clouds Exist Now?

Page 24: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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?

Page 25: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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?

Page 26: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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?

Page 27: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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?

Page 28: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Software as a Service (SaaS)

Page 29: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Software as a Service (SaaS)

Hardware

Middleware

Application

Cloud Provider (i.e., SaaS Provider)

Page 30: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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.

Page 31: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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.

Page 32: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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.

Page 33: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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.

Page 34: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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.

Page 35: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

A Typical SaaS: Gmail

Page 36: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

A Typical SaaS: Gmail

Hardware

Middleware

Application

Gmail Provider

Page 37: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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)

Page 38: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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)

Page 39: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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)

Page 40: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 41: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 42: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 43: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 44: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 45: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Platform as a Service (PaaS)

Page 46: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 47: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 48: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 49: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 50: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 51: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 52: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 53: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

A Typical PaaS: Facebook

Page 54: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Hardware

Middleware

Application

A Typical PaaS: Facebook

Facebook Provider

Page 55: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 56: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 57: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 58: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 59: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 60: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 61: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 62: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 63: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Infrastructure as a Service (IaaS)

Page 64: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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)

Page 65: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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)

Page 66: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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)

Page 67: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 68: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 69: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 70: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 71: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Hardware

Middleware

Application Application

Middleware

Typical IaaS: EC2 and S3

Amazon

Page 72: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Hardware

Middleware

Application Application

Middleware

Typical IaaS: EC2 and S3

Amazon

EC2 S3

Page 73: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Hardware

Middleware

Application Application

Middleware

Amazon

EC2 S3

Netflix Provider

• Netflix (app) heavily depends on Amazon AWS: - Media files 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

Page 74: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Hardware

Middleware

Application

Middleware

Amazon

EC2 S3

Netflix Provider

• Netflix (app) heavily depends on Amazon AWS: - Media files 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

Page 75: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Hardware

Middleware

Application

Middleware

Amazon

EC2 S3

Netflix Provider

• Netflix (app) heavily depends on Amazon AWS: - Media files 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

Page 76: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Hardware

Middleware

Application

Middleware

Amazon

EC2 S3

Netflix Provider

• Netflix (app) heavily depends on Amazon AWS: - Media files 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

Page 77: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Hardware

Middleware

Application Application

Middleware

Amazon

EC2 S3

CustomerNetflix Provider

• Netflix (app) heavily depends on Amazon AWS: - Media files 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

Page 78: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Hardware

Middleware

Application Application

Middleware

Amazon

EC2 S3

CustomerNetflix Provider

• Netflix (app) heavily depends on Amazon AWS: - Media files 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

Page 79: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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

Page 80: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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

Zoo?

Page 81: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

The Major Cloud Providers

Page 82: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 83: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 84: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Cloud Computing

• Challenges in the Clouds

• A Concrete Cloud Reliability Case

Lecture Outline

Page 85: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Cloud Computing

• Challenges in the Clouds

• A Concrete Cloud Reliability Case

Lecture Outline

Page 86: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

What Kinds of Challenges?

Page 87: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Scalability

• Availability and reliability

• Security and privacy

What Kinds of Challenges?

Page 88: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Scalability

• Availability and reliability

• Security and privacy

What Kinds of Challenges?

Page 89: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Scalability

PC

Page 90: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Scalability

• What if one computer is not enough? - Buy a bigger (server-class) computer

PC

Page 91: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Scalability

• What if one computer is not enough? - Buy a bigger (server-class) computer

PC Server

Page 92: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 93: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 94: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Scalability

Page 95: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

ScalabilityRack

Page 96: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

ScalabilityNetwork switches

(connects nodes with each other and with other racks)

Rack

Page 97: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

ScalabilityNetwork switches

(connects nodes with each other and with other racks)

Many nodes/blades (often identical)

Rack

Page 98: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

ScalabilityNetwork switches

(connects nodes with each other and with other racks)

Many nodes/blades (often identical)

Storage device(s)

Rack

Page 99: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Scalability

• What if cluster is too big to fit into machine room? - Build a separate building for the cluster- Building can have lots of cooling and power- Result: Data center

PC Server Cluster

Page 100: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Scalability

• What if cluster is too big to fit into machine room? - Build a separate building for the cluster- Building can have lots of cooling and power- Result: Data center

PC Server Cluster

Page 101: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Scalability

• What if cluster is too big to fit 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

Page 102: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Google Data Center in Oregon

Page 103: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Data centers (size of a football field)

Google Data Center in Oregon

Page 104: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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 field)

Page 105: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Google Data Center Locations

Page 106: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Google Data Centers in the USA

Page 107: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Google Data Centers in Europe

Page 108: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Google Data Centers World Wide

Page 109: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Open Challenges

Page 110: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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?

Page 111: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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?

Page 112: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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])

Page 113: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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])

Page 114: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Scalability

• Availability and reliability

• Security and privacy

What Kinds of Challenges?

Page 115: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Scalability

• Availability and reliability

• Security and privacy

What Kinds of Challenges?

Page 116: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Availability & Reliability

• Is the cloud always there when you need it? - Service outages- Connectivity outages

Page 117: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Recent Cloud Disasters

Page 118: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Recent Cloud Disasters

Page 119: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Recent Cloud Disasters

Page 120: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Top10 Cloud Service Outages

Page 121: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Open Challenges

• Can you build a system to find out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])

Page 122: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Open Challenges

• Can you build a system to find out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])- Accountable cloud (e.g., AVM [OSDI’10])

Page 123: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Open Challenges

• Can you build a system to find out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])- Accountable cloud (e.g., AVM [OSDI’10])

Page 124: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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 find out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])- Accountable cloud (e.g., AVM [OSDI’10])

Page 125: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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 find out the root-cause when a service becomes unavailable?- Diagnosis systems (e.g., Sherlock [SIGCOMM’07])- Accountable cloud (e.g., AVM [OSDI’10])

Page 126: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Scalability

• Availability and reliability

• Security and privacy

What Kinds of Challenges?

Page 127: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Scalability

• Availability and reliability

• Security and privacy

What Kinds of Challenges?

Page 128: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 129: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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

Page 130: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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])

Page 131: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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])

Page 132: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

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])

Page 133: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Open Challenges

• Can you propose an approach to verify if the cloud provider modifies 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])

Page 134: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Open Challenges

• Can you propose an approach to verify if the cloud provider modifies 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])

Page 135: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

More Risks?

Page 136: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• 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?

Page 137: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Cloud Computing

• Challenges in the Clouds

• A Concrete Cloud Reliability Case

Lecture Outline

Page 138: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Cloud Computing

• Challenges in the Clouds

• A Concrete Cloud Reliability Case

Lecture Outline

Page 139: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Realistic Problem

Page 140: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Summary of the October 22, 2012 AWS Service Event in the US-East Region

We’d like to share more about the service event that occurred on Monday, October 22nd in the US-East Region. We have now completed the analysis of the events that affected AWS customers, and we want to describe what happened, our understanding of how customers were affected, and what we are doing to prevent a similar issue from occurring in the future.

The Primary Event and the Impact to Amazon Elastic Block Store (EBS) and Amazon Elastic Compute Cloud (EC2)

Correlated failures resulting from EBSdue to bugs in one EBS server

Realistic Problem

Page 141: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Elastic Compute Cloud (EC2)

Elastic Block Store (EBS)

Realistic Problem

Page 142: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

... ...

Elastic Block Store (EBS)

Realistic Problem

Page 143: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

... ...... ...

VM1 VM2 VM1 VM3 VM1 VM2 VM3 VM4

Elastic Block Store (EBS)

Realistic Problem

Page 144: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

... ...... ...

VM1 VM2 VM1 VM3 VM1 VM2 VM3 VM4

EBS Server2EBS Server1

Realistic Problem

Page 145: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

... ...... ...

VM1 VM2 VM1 VM3 VM1 VM2 VM3 VM4

EBS Server2EBS Server1

Realistic Problem

Page 146: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

... ...... ...

VM1 VM2 VM1 VM3 VM1 VM2 VM3 VM4

EBS Server2EBS Server1

Realistic Problem

Page 147: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

... ...... ...

VM1 VM2 VM1 VM3 VM1 VM2 VM3 VM4

EBS Server2EBS Server1

Realistic Problem

Page 148: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

System We Need

• #1: Dependency collections• #2: Dependency representation• #3: Efficient auditing

Page 149: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

System We Need

• #1: Dependency collections• #2: Dependency representation• #3: Efficient auditing

Page 150: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Dependency Data Collections

Type Dependency Expression

Network <src=”S” dst=”D” route=”x,y,z”/>

Hardware <hw=”H” type=”T” dep=”x”/>

Software <pgm=”S” hw=”H” dep=”x,y,z”/>

Our defined format

• Reuse existing data collection tools: - Convert the outputs to uniform format. - Three types of format: NET, HW and SW.

Page 151: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Dependency Data Collections

Page 152: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

DepDB

NSDMiner

Dependency Data Collections

Page 153: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

DepDB

NSDMiner

Dependency Data Collections

Page 154: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

DepDB

NSDMiner

Dependency Data Collections

Page 155: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

DepDB

NSDMiner

<src=”S1” dst=”Internet” route=”ToR1,Core1”/><src=”S1” dst=”Internet” route=”ToR1,Core2”/><src=”S2” dst=”Internet” route=”ToR1,Core1”/><src=”S2” dst=”Internet” route=”ToR1,Core2”/>

Page 156: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

DepDB

NSDMiner

<src=”S1” dst=”Internet” route=”ToR1,Core1”/><src=”S1” dst=”Internet” route=”ToR1,Core2”/><src=”S2” dst=”Internet” route=”ToR1,Core1”/><src=”S2” dst=”Internet” route=”ToR1,Core2”/>

Page 157: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

System We Need

• #1: Dependency collections• #2: Dependency representation• #3: Efficient auditing

Page 158: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Example Redundancy

Page 159: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Example Redundancy

Page 160: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

SW

HW

NET

Example Redundancy

Page 161: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Building Fault Graph Top-to-Bottom

SW

HW

NET

Page 162: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Redundancy configuration fails

Step1: Root Node

Page 163: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Server 2 failsServer 1 fails

Redundancy configuration fails

Step2: Server Nodes

Page 164: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

AND gate: all the sublayer nodes fail, the upper layer node fails

Server 2 failsServer 1 fails

Step2: Server NodesRedundancy configuration fails

Page 165: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Net fails

+" +"

HW fails SW fails SW fails

Server 2 failsServer 1 fails

Net fails HW fails

Redundancy configuration fails

Step3: Dependency Nodes

Page 166: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

OR gate: one of the sublayer nodes fails, the upper layer node fails

Net fails

+" +"

HW fails SW fails SW fails

Server 2 failsServer 1 fails

Net fails HW fails

Step3: Dependency NodesRedundancy configuration fails

Page 167: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Net fails

+" +"

HW fails

Disk2CPU2

+"

SW fails SW fails

Server 2 failsServer 1 fails

Disk1CPU1

+"

Net fails HW fails

Step4: Hardware DependencyRedundancy configuration fails

Page 168: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Net fails

+" +"

ToR1 Core2Core1

HW fails

+" +"

Disk2CPU2

+"

Path1 Path2

SW fails SW fails

Server 2 failsServer 1 fails

Disk1CPU1

+"

Net fails HW fails

Step5: Network DependencyRedundancy configuration fails

Page 169: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Net fails

+" +"

ToR1 Core2Core1

HW fails

libc6 libccllibsvnl

+" +"

Disk2CPU2

+"

Path1 Path2

+"

Riak

+"

Query

+"

SW fails SW fails

Server 2 failsServer 1 fails

Disk1CPU1

+"

Net fails HW fails

Step6: Software DependencyRedundancy configuration fails

Page 170: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

System We Need

• #1: Dependency collections• #2: Dependency representation• #3: Efficient auditing

Page 171: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Two algorithms balancing cost and accuracy: - Minimal fault set algorithm- Failure sampling algorithm

Efficient Auditing

Page 172: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• Two algorithms balancing cost and accuracy: - Minimal fault set algorithm- Failure sampling algorithm

Efficient Auditing

Page 173: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Minimal Fault Set Algorithm

• Traditional algorithm in safety engineering- Exponential complexity (NP-hard)

• We are the first to apply it in Cloud area:- Analyzing a fat tree with 30,528 with ~40 hours

Page 174: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

• We propose efficient failure sampling algorithm.

Minimal Fault Set Algorithm

• Traditional algorithm in safety engineering- Exponential complexity (NP-hard)

• We are the first to apply it in Cloud area:- Analyzing a fat tree with 30,528 with ~40 hours

Page 175: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Failure Sampling Algorithm

Page 176: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

1 or 0 1 or 0 1 or 0

Failure Sampling Algorithm

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 177: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

1 or 0 ?

1 or 0 1 or 0 1 or 0

Failure Sampling Algorithm

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 178: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Fault Sets

1 or 0 1 or 0 1 or 0

Failure Sampling Algorithm

1 or 0 ?Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 179: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

The 1st Sampling Round

Fault Sets

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 180: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

1 or 0 1 or 0 1 or 0

The 1st Sampling Round

Fault Sets

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 181: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

✔✘ ✘

The 1st Sampling Round

Fault Sets

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 182: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

✔✘ ✘

The 1st Sampling Round

Fault Sets

✘ ✘

Page 183: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

✔✘ ✘Fault Sets

{Server1’s HW, Server2’s HW}

The 1st Sampling Round

✘ ✘

Page 184: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Fault Sets

{Server1’s HW, Server2’s HW}

The 2nd Sampling Round

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 185: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

1 or 0 1 or 0 1 or 0

Fault Sets

{Server1’s HW, Server2’s HW}

The 2nd Sampling Round

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 186: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

✔ ✘✔Fault Sets

{Server1’s HW, Server2’s HW}

The 2nd Sampling Round

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 187: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

✔ ✘✔

Fault Sets

{Server1’s HW, Server2’s HW}

The 2nd Sampling Round

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

✔ ✘

Page 188: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Fault Sets

{Server1’s HW, Server2’s HW}

The 3rd Sampling Round

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 189: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

✔✘✔Fault Sets

{Server1’s HW, Server2’s HW}

The 3rd Sampling Round

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

Page 190: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

✔✘✔Fault Sets

{Server1’s HW, Server2’s HW}

The 3rd Sampling Round

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

✘ ✘

Page 191: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

✔✘✔Fault Sets

{Server1’s HW, Server2’s HW}

{Switch1}

The 3rd Sampling Round

Redundancy configuration fails

+" +"

Switch1 fails

Server 2 failsServer 1 fails

Server2’s HW failsServer1’s HW fails

✘ ✘

Page 192: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Fault Sets{Server1’s HW, Server2’s HW}

{Switch1}

{Switch1, Server2’s HW}

{Switch1}

{Switch1, Server2’s HW}

... ...

After Many (e.g., 107) Rounds

Page 193: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Fault Sets{Server1’s HW, Server2’s HW}

{Switch1}

{Switch1, Server2’s HW}

{Switch1}

{Switch1, Server2’s HW}

... ...

Size-Based Ranking

Page 194: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Fault Sets{Switch1}

{Switch1}

{Switch1, Server2’s HW}

{Switch1, Server2’s HW}

{Server1’s HW, Server2’s HW}

... ...

Size-Based Ranking

Page 195: Cloud Computing - Zoozoo.cs.yale.edu/classes/cs426/2014/lec/cloud.pdf · -Decentralized social network application ... Cloud computing is a business model for enabling convenient

Thanks!

Questions?