JOEL CRICHLOW DISTRIBUTED SYSTEMS: COMPUTING OVER NETWORKS, PHI LEARNING INTRODUCTION TO DISTRIBUTED...

Preview:

Citation preview

J O E L C R I C H L O WD I S T R I B U T E D S Y S T E M S : C O M P U T I N G O V E R N E T W O R K S , P H I L E A R N I N G

INTRODUCTION TO DISTRIBUTED SYSTEMS

WHAT IS A DISTRIBUTED SYSTEM?

A Distributed System is a set of interconnected, autonomous computers that cooperatively solve large, single problems or facilitate parallel execution of separate but possibly related tasks.

DISTRIBUTED SYSTEM

Computer network (hidden) network

User’s computer

Three key attributes:A network of computersThe network is hidden from the userThe system looks the same logically wherever the user is working

CLOUD COMPUTING

• In general Cloud Computing provides access to a pool of computing resources

• Distributed System technologies support Cloud Computing

• Expect new buzz words in the near future

CLOUD COMPUTING

• Recall the progressions• Uniprogramming to multiprogramming• Real memory to virtual memory• Real devices to virtual devices• Real machines to virtual machines

• More efficient and cost-effective use of resources• Cloud computing driven largely by the same

principles

CLOUD COMPUTING

• Sharing Software, Platform, Infrastructure

CLOUD COMPUTING

• Pay-per-use service alias Pay-as-you-go model• Uses a multi-tenant architecture to deliver several

categories of service

• Software as a Service (SaaS)• Delivers a single application

• Platform as a Service (PaaS)• Delivers development environments

• Infrastructure as a Service (Iaas)• Delivers storage, virtual machines, etc

CLOUD COMPUTING

• Quick development• Good scalability• Public cloud

• Many end-user organizations use services from a common service provider

• Private cloud• Services are for a single organization

• Hybrid cloud

THE COMPUTER NETWORK

• Hosts and Communications Subnet• WAN, LAN• IMPs, PSNs

• switches, hubs, bridges, gateways, routers

• Protocols• Arpanet, Internet• ISO/OSI, TCP/IP

PROTOCOLS

. . . . . .

Host B Host A Communicates with

Layer n Layer n In layer n protocols

Layer 3 In layer 3 protocols Layer 3

Layer 2 In layer 2 protocols

Layer 2

Layer 1 In layer 1 protocols Layer 1

SERVICES

• Email and Messaging• DNS, SMTP, TCP/IP

• WWW• HTML, HTTP, XML

• File Transfer• Telnet, SSH, FTP

• Social Networking

SERVICES

Social networking

Users/Browsers/

Web Clients

Web Servers

Distributed Database

SERVICESSOCIAL NETWORKING

• Facebook, Twitter, LinkedIn• Short Message Service (SMS)• Open source software• LAMP web application software stack

• Linux, Apache, MySQL and PHP

• In-house development• HipHop, Thrift and Cassandra

• Memcached: a distributed memory caching system

SERVICES

• Multimedia Transfer• MPEG, MP3, RTSP

• Distributed Computation

Distributed applications

DCM middleware

Host OS and network service

Distributed applications

DCM middleware

Host OS and network service

SERVICES

Distributed Transaction Processing

Transaction manager

Replica manager

Transaction manager

Replica manager

network trans trans

Data manager

Data manager

database database

SERVICES

E-Commerce

payer payee

Acquiring institution

Issuing institution

Flow of money

network authorization

Payment order

notification

Request

1

2

3

4

5

SERVICES

Distributed Real-Time Processing

Device

Comp

Sensor Actuator

Device

Comp

Sensor Actuator

Device

Comp

Network

ISSUES

• Naming• Globally unique, Domains, Location

• Sharing• Authentication, Access rights• Scheduling, Coordinating, Synchronizing• Resolving conflicts

• Availability and reliability• Up-time, Responsive, Correct

• Replication• Copies made and stored at separate sites• Load sharing, Improved throughput, Improved availability

ISSUES

• Privacy and Security• Passwords, Access Control Lists, Capabilities• Encryption, Memory Protection• Intrusion blockers

• Communication• Protocols aplenty

• Concurrency and Synchronization• Race Conditions• Critical Regions• Locks

ISSUES

• Time and Coordination• What is the time?• Ordering of events

• Fault Tolerance and Recovery• Redundant elements• Logging schemes• Back-ups• Time-outs• Retransmissions

ISSUES

Scalability• Cannot assume a static configuration• Plan for growth• How about reduction?

USER-SYSTEM INTERFACE

• The Consumer• Look and Feel

• logically similar at all the host computers or front-end machines

Recommended