Top Banner
IT 210: Distributed System Concepts Lecture 4: Distributed System Model
22

IT 210: Distributed System Concepts

Dec 30, 2015

Download

Documents

zephania-gentry

IT 210: Distributed System Concepts. Lecture 4: Distributed System Model. What is a Distributed System?. Software that manages computer resources across several computers Software that provides services for other software (applications) …. Process. Process. Process. Process. Registers. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: IT 210: Distributed System Concepts

IT 210:Distributed System Concepts

Lecture 4: Distributed System Model

Page 2: IT 210: Distributed System Concepts

What is a Distributed System?

Software that manages computer resources across several computersSoftware that provides services for other software (applications)…

Page 3: IT 210: Distributed System Concepts

Memory

Process: Processor State + Memory State

Computer

Processor

Instructions DataRegisters

DataInstructions

Registers Process

DataInstructions

Registers Process

DataInstructions

Registers Process

DataInstructions

Registers Process

Page 4: IT 210: Distributed System Concepts

Memory

Thread:Processor State + Stack

Computer

Processor

Instructions DataRegisters

DataInstructions

Registers Process

DataInstructions

Registers Process

DataInstructions

Registers ProcessData

Instructions

Process

Registers

Stack

Thre

ad

Registers

Stack

Thre

ad

Registers

Stack

Thre

ad

Registers

Stack

Thre

ad

Page 5: IT 210: Distributed System Concepts

Memory

Shared Library:More than one process uses instructions

Computer

Processor

OS Kernel

SystemData

Registers

DataInstructions

Registers Process

DataInstructions

Registers Process

DataInstructions

Registers Process

Data

Shared Library(DLL)

Registers ProcessPrivate

instructions

Page 6: IT 210: Distributed System Concepts

Distributed System:Processes that interact between computers

Computer

Process

NetworkStack

NetworkCloud

Computer

Process

NetworkStack

Page 7: IT 210: Distributed System Concepts

Client / Server:Process that requests service from another

Computer

Client

NetworkStack

NetworkCloud

Computer

Server

NetworkStack

RequestResponse

Page 8: IT 210: Distributed System Concepts

Browser/ Web Server:Process that requests service from another

Computer

Web Browser

NetworkStack

NetworkCloud

Computer

Web Server

NetworkStack

RequestResponse

HTTP protocolOver TCPOver IPOver Ethernet

Page 9: IT 210: Distributed System Concepts

Browser/ Web Server:Two Tier Architecture

Computer

Web Browser

NetworkStack

NetworkCloud

Computer

Web Server

NetworkStack

Page 10: IT 210: Distributed System Concepts

Browser/ Web Server:3 Tier Architecture

Computer

Web Browser

NetworkStack

NetworkCloud

Computer

DatabaseServer

NetworkStack

Computer

Web Server

NetworkStack

Page 11: IT 210: Distributed System Concepts

Computer

Web Server

NetworkStack

Browser/ Web Server / Middleware / Database …:N Tier Architecture

Computer

Web Browser

NetworkStack

NetworkCloud

Computer

DatabaseServer

NetworkStack

Computer

Web Server

NetworkStack

Computer

MiddlewareServer

NetworkStack

Object Request

SQ

L Requ

est

Page Request

SQ

L R

esp

onse

Object ResponseHTML Page

Page 12: IT 210: Distributed System Concepts

Sidebar: Define Middleware

“Middleware is computer software that connects software components or some people and their applications.” “Middleware sits "in the middle"

between application software that may be working on different operating systems” (Wikipedia)

E.G. Video game middleware

Page 13: IT 210: Distributed System Concepts

A theme with variations:

All the processes in the same boxAny combination of processes in any one boxDifferent network connectivity requirements…

Page 14: IT 210: Distributed System Concepts

Computer

MiddlewareServer

NetworkStack

Computer

Web Server

NetworkStack

Browser/ Web Server / Middleware / Database …:N Tier Architecture

Computer

Web Browser

NetworkStack

NetworkCloud

Computer

Web Server

NetworkStack

DatabaseServer

Page 15: IT 210: Distributed System Concepts

External Hard Drive Configuration

Computer

Web Browser

NetworkStack

Computer

Web Server

NetworkStack

NetworkCloud

DatabaseServer

Virtual Computer

NetworkStack

WebServer

Page 16: IT 210: Distributed System Concepts

External Hard Drive Configuration

Computer

Web Server

NetworkStack

Computer

Web Server

NetworkStack

NetworkCloud

DatabaseServer

Virtual Computer

NetworkStack

WebBrowser

Page 17: IT 210: Distributed System Concepts

Cloud Systems

New genre for existing solutions But new thinking too!

SaaS: Software as a ServicePaaS: Platform as a ServiceIaaS: Infrastructure as a ServiceHaaS: Hardware as a Service

Page 18: IT 210: Distributed System Concepts

Advantages of Cloud Computing

Can have dumb clients (mobile)Platform independentWorks well across devicesData loss is less likely (if you trust the cloud)Software maintenance, installation, updates, are minimalEnables different payment models (e.g., subscription)Get resources exactly when neededCross-service opportunities

Page 19: IT 210: Distributed System Concepts

Disadvantages of Cloud Computing

Easier to “hide” within the cloudHigh dependence on Internet (bandwidth!)New security concerns (more private/confidential data, single point of failure)Requires complex maintenance etc. for those “in the cloud”Privacy concerns about others having so much data about us

Page 20: IT 210: Distributed System Concepts

Other Models:

Novell: part of $400 million misunderstanding Client=little machine, Server= big machine with resources to share Machines connected on very fast, reliable

network which forms a “bus” for the virtual machine.

Note: at the time Novell model was threads not processes, therefore, add-on software bugs could kill OS.

Page 21: IT 210: Distributed System Concepts

Other Models: CORBA Standard

Common Object Request Broker ArchitectureSoftware components, multiple language, multiple OS all work togetherUsed for creation of some middleware for webEverything is an object Objects make requests of other objects through

broker. Protocol is transparent, while HTTP is very

visible.

Page 22: IT 210: Distributed System Concepts

Java Network Interface

Remote procedure invocation across JVM’sOften used for communication between Java elements after a web conversation is initiated.