28
1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Embed Size (px)

Citation preview

Page 1: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

1

Distributed ComputingClass: BIT 5 & 6 Instructor: Aatif Kamal

Chapter 01: Character of Distributed

Systems

Dated: 06th Sept 2006

Page 2: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 2

Objectives: course

The aims of this course is to study the fundamental characteristics of distributed systems; their models and architectures; the design of distributed algorithms and applications that exploit rapidly evolving technology

Theory: To study the principles of distributed systems To grasp the basic issues of the distributed systems

Practice: To design and implement basic distributed system as a

client/server and a number of other ways

Page 3: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 3

Course Structure

Characteristics of Distributed Systems (1.5 Wks)Introduction to Distributed systems and Examples, Resource sharing and Challenges.

Distributed System Models. (2 Wks)Architectural models and Fundamental models

Networking and Internetworking (Special Classes/Self Study)Types of network, Network principles, Internet protocols, Network case studies: ATM

Interprocess Communication (2 Wks)APIs for the Internet protocols, External data representation and marshalling, Client-server communication, Group communication

Page 4: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 4

Course Structure Distributed Objects and Remote Invocation (2 Wks)

Communication between distributed objects, Remote procedure call, Events and notifications, Java RMI case study.

Security (Special Classes/Self Study)Overview of security techniques, Cryptographic algorithms, Digital signatures, Cryptography pragmatics, Case studies: Needham-Schroeder, Kerberos, SSL & Millicent

Peer to Peer Computing (2 Wks)P2P Introduction, Napster & its lageacy, P2P middleware, Routing Overlays, Overlay case studies: Pastry, Tpastery, Squirrel, Oceanstore, Ivy and JAXTA

Time and Global States (2 Wks)Clocks, events and process states, Synchronizing physical clocks, Logical time and logical clocks, Global states, Distributed debugging.

Page 5: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 5

BOOKS

TEXT BOOK Distributed Systems: Concepts and Design

(Fourth/Third Edition) By George Coulouris, Jean Dollimore and Tim KindbergAddison-Wesley, ©Pearson Education 2001

REFERENCE BOOKS Distributed Systems: Principles and Paradigms, By

Andrew S. Tanenbaum and van Steen Distributed Operating System and Algorithms, By

Randy Chow & Theodore Johnson.

Page 6: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 6

Course Grading

Quizzes/Assignment : 15 % Course Project : 10 % OHTs : 30 % Final Test : 45 % Open : 05 %

Page 7: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 7

Definition of Distributed System

A distributed system is: Components located at networked computers

communicate and coordinate their actions by passing messages

A distributed system is: Collection of independent computers that

appear to the users of the system as a single computer [Tanenbaum]

Page 8: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 8

Definition of Distributed System

Machine B

Local OS

Machine A

Local OS

Machine C

Local OS

Network

Distributed applications

Middleware service

Page 9: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 9

Definition of Distributed System

"a collection of autonomous computers linked by a computer network with distributed system software"

"a collection of processors interconnected by a communication network in which each processor has its own local memory and other peripherals and the communication between any two processors of the system takes place by message passing over the communication network"

"one in which hardware or software components located at networked computers communicate and coordinate their actions only by passing messages"

Page 10: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 10

Definition of Distributed System

In other words, to the user, a DS looks like a single system a virtual uniprocessor

The user doesn't know (or care) - where (on what machine) files are located - where a job is executed

A Distributed System is made of several computers which have no shared memory have no shared clock communicate with each other via messages have their own operating systems

Page 11: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 11

Advantages

Why distributed systems Resource sharing Communication Inherent distribution Speed

10000 CPU running at speed of 50 MIPS 500000 MIPS

Economy Incremental growth Reliability

Page 12: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 12

Characteristics of DS Concurrency

Distributed systems are concurrent systems Every software or hardware components is autonomous

Process Concurrent tasks

A and B are concurrent if either A can happen before B or B can happen before A

Synchronization and coordination by message passing Lack of global clock

Coordination and time Independent failure

Failures of individual processes may remain undetected

Page 13: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 13

Examples of Distributed Systems1. The internet

Heterogeneous network of computers and applications

Implemented through Internet protocol

intranet

ISP

desktop computer:

backbone

satellite link

server:

network link:

Page 14: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 14

Examples of Distributed Systems 2. Distributed multimedia

•Often use the Internet infrastructure

•Characteristics

•Heterogeneous data sources that need to be synchronized in real time

•Video, Audio, Text

•Often: distribution services

•multicast

•Examples•Tele teaching, Video conferencing

Page 15: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 15

Examples of Distributed Systems3. Intranet

•Locally administered network

•Usually proprietary

•Interfaces with the Internet via router

•Firewall

the rest of

email server

Web server

Desktopcomputers

File server

router/firewall

print and other servers

other servers

print

Local areanetwork

email server

the Internet

IssuesFile services need to share dataFirewall impede Legitimate access

Page 16: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 16

Examples of Distributed Systems (1) 4. Mobile and Ubiquitous computing

•Resource Sharing while on the move

•Primary concerns: •resource discovery

•efficient use of limited bandwidth

•security (privacy)

Laptop

Mobile

PrinterCamera

Internet

Host intranet Home intranetWAP

Wireless LAN

phone

gateway

Host site

Page 17: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 17

Resource sharing and the Web Resource sharing pattern

•Search engine•CSCW

•Computer-supported cooperative work•Service

•Software that manages a collection of resources and presents them to users and applications via a well-defined interface

•Server•Running program (a process that provide one or more services)

•Remote invocation•Client’s request to server.

Page 18: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 18

Challenges

A number of challenges arises:

• Heterogeneity

• Openness

• Security

• Scalability

• Failure handling

• Concurrency of components

• Transparency

Page 19: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 19

Challenges

Heterogeneity networks computer hardware Operating systems Programming languages

Middleware To over come differences in network, OS

and languages CORBA

Page 20: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 20

Challenges

Openness Ensures extensibility and maintainability of the

system Standard interfaces & their publication Addition of new resources

RFC (Request for comments) specification for internet protocols. www. ietf.org

Benefits of ODS key interfaces are published uniform communication mechanisms and access

to shared resources Construction

Heterogeneous components

Page 21: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 21

Challenges

Security confidentiality integrity availability Example

A doctor might request access to hospital patient data

In electronic commerce and banking, users send their credit card numbers across the internet

Current security challenges Denial of service attack Security of mobile code

Page 22: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 22

Challenges

Scalability Controlling the cost of the physical resources

Does the system remain effective given the expected growth

Controlling the performance loss www.amzon.com is more than one computer

Preventing the software resources running out IP addressees :32 bits to 128 Avoiding performance bottleneck

Decentralization of data/information

Page 23: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 23

Challenges Computers vs. Web servers in the Internet

Date Computers Web servers Percentage

1993, July 1,776,000 130 0.008

1995, July 6,642,000 23,500 0.41997, July 19,540,000 1,203,096 61999, July 56,218,000 6,598,697 12

Mid. 2002 Internet :

150 million+ computers

667 million people

2.5 billion+ web pages

Page 24: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 24

Challenges

Failure handling Detecting failure

Checksum can be used to detect corrupted data

System crash (impossible) Masking

Retransmission Redundant storage

Tolerating failure Exception handling (timeout when waiting for

web source)

Page 25: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 25

Challenges

Failure handling Recovery from failure

Roll back Redundancy

Redundant routes in network Replication of name tables in multiple domain

name servers Database replication

Availability Measure of the proportion of the time a server

is available

Page 26: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 26

Challenges

Concurrency Consistent scheduling of threads (so that

dependencies are preserved in concurrent transactions)

Avoidance of deadlock Transparency

Concealing the heterogeneous and distributed nature of the system so that it appears to the user like one system

Page 27: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 27

Challenges :Transparency Access transparency: enables local and remote resources to be

accessed using identical operations. Location transparency: enables resources to be accessed without

knowledge of their location. Concurrency transparency: enables several processes to operate

concurrently using shared resources without interference between them.

Replication transparency: enables multiple instances of resources to be used to increase reliability and performance without knowledge of the replicas by users or application programmers.

Failure transparency: enables the concealment of faults, allowing users and application programs to complete their tasks despite the failure of hardware or software components.

Mobility transparency: allows the movement of resources and clients within a system without affecting the operation of users or programs.

Performance transparency: allows the system to be reconfigured to improve performance as loads vary.

Scaling transparency: allows the system and applications to expand in scale without change to the system structure or the application algorithms.

Page 28: 1 Distributed Computing Class: BIT 5 & 6 Instructor: Aatif Kamal Chapter 01: Character of Distributed Systems Dated: 06 th Sept 2006

Copyrights @ 2006-7, Aatif Kamal 28

Assignment

1 Linux system installation

2 From the text book answer (Reading 1.3)

1.7

1.8

1.9

3 Write a small article on history of distributed computing (2 pages max.)