Top Banner
Introduction CS-4513, D-Term 2007 1 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts, 7 th ed., by Silbershatz, Galvin, & Gagne and from Modern Operating Systems, 2 nd ed., by Tanenbaum)
30

IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

Dec 16, 2015

Download

Documents

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: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 1

Distributed Computing Systems

Hugh C. LauerAdjunct Professor

(Slides include materials from Operating System Concepts, 7th ed., by Silbershatz, Galvin, & Gagne and from Modern Operating Systems, 2nd ed., by Tanenbaum)

Page 2: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 2

Outline for Today

• Introduction to CS-4513

• What is “Distributed Computing”– An example of a distributed computation

• Networks

• Assignment of Project #1

Page 3: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 3

Introduction to CS-4513

• Continues CS-3013, Operating Systems– File Systems

• One lecture in C-Term CS-3013

• No coverage in A-Term CS-3013

• Networks & Communication• Computations that run on more than one machine

• Close together

• Far apart

• Internet and World Wide Web

Page 4: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 4

Textbook and Web

• Textbooks:– You should own or have access to one of the following from CS-3013– Operating Systems Concepts, 7th ed, by Silberschatz,

Galvin, and Gagne, John Wiley and Sons, 2005– Modern Operating Systems, 2nd edition, by Andrew S.

Tanenbaum, Prentice Hall, 2001

• Supplemental Text:–– Distributed Systems: Principles and Paradigms,

Tanenbaum and Van Steen, Prentice-Hall, 2007

• Course Information:– http://www.cs.wpi.edu/~cs4513/d07/

Page 5: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 5

Prerequisites

• Prerequisites:– CS-3013, Operating Systems or equivalent– C and C++ programming, esp. low level programming– Data structures– Unix/Linux user experience and access– Computer Organization

• 1st reading assignment: any of the following– Silbershatz, §16.1-16.4– Tanenbaum, §8.3– Tanenbaum & Van Steen, Chapter 1

Page 6: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 6

Schedule & Logistics

• Schedule– Goddard Hall 227– 9:00 – 10:50 AM – Tuesdays and Fridays thru May 1– No class on April 17– 14 classes total

• Exams– Mid-term on April 3– Final on May 1

• Unannounced Quizzes– May occur at any time– May be at beginning, middle, or

end of class

• Mobile Phones, pagers, laptops, and other devices OFF during class

• ~4 Programming Projects– Fossil Lab

• Office Hours– Adjunct Office, Fuller 239– by appointment, or– Normally ½ hour before and after class

• Teaching Assistant– Choong-Soo Lee

clee01 **at** cs.wpi.edu

• Contact– <Professor’s last name> @ cs.wpi.edu– Adjunct office phone:

(508) 831-6470 (shared, no messages)

Page 7: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 7

Grading

• Grading– Exams – 35%

– Programming Projects (~4) – 35%

– Class participation, homework, & quizzes – 30%

• Unless otherwise noted, assignments are to be completed individually, not groups

• Late Policy – 10%/day– But contact Professor for extenuating circumstances

• WPI Academic Honesty policy

Page 8: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 8

Miscellaneous

• Is this course the capstone for a Minor in CS?

• Anyone needing a project for BS & MS credit?

Page 9: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 9

Ground Rule

• There are no “stupid” questions.

• It is a waste of your time and the class’s time to proceed when you don’t understand the basic terms.

• If you don’t understand it, someone else probably doesn’t, either.

Page 10: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 10

Introductions

• Who are you?– Name, year, degree, major– Work experience in computing, etc.?

• C & C++ experience– Other programming experience

• Why CS-4513 – Distributed Computing Systems?

• Anything else relevant?

Page 11: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 11

Instructor — Hugh C. LauerAdjunct Professor

• Ph. D. Carnegie-Mellon 1972-73– Dissertation “Correctness in Operating Systems”

• Lecturer: University of Newcastle upon Tyne, UK• 30+ years in research and development in industry in USA• Research and system topics

– Operating Systems– Proofs of Correctness– Computer Architecture– Networks and Distributed Computing– Real-time networking– 3D Volume Rendering– Surgical Simulation and Navigation– …

Page 12: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 12

Systems Experience

• University of Newcastle• Systems Development Corporation• Xerox Corporation (Palo Alto)• Software Arts, Inc.• Apollo Computer• Eastman Kodak Company• Mitsubishi Electric Research Labs (MERL)• Real-Time Visualization

• Founded and spun out from MERL• Acquired by TeraRecon, Inc.

• SensAble Technologies, Inc.

• Currently: CTO, Dimensions Imaging, Inc.

Page 13: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 13

Accomplishments

• 21 US Patents• Two seminal contributions to CS

– Duality Hypothesis of Operating System Structures (with Roger Needham)

– First realization of opaque types in type-safe programming languages (with Ed Satterthwaite)

• VolumePro™– World’s first 2D, 3D, and 4D volume rendering system

at interactive speeds for medical, seismic, and scientific visualization

Page 14: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 14

VolumePro™

• Interactive volume rendering of 3D data such as• MRI scans

• CT scans

• Seismic scans

• Two generations of ASICs, boards, software• VolumePro 500 – 1999

• VolumePro 1000 – 2001

• CTO, Chief Architect of VolumePro 1000• 7.5-million gate, high-performance ASIC

• 109 Phong-illuminated samples per second

Page 15: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 15

Sample images from VolumePro

Page 16: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 16

Class Discussion

What is Distributed Computing?

Page 17: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 17

Distributed System

• Collection of computers that are connected together and (sometimes) interact

• Many independent problems at same time• Similar• Different

• Or …– One very big problem (or a small number)

• Computations that are physically separated• Client-server• Inherently dispersed computations

Page 18: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 18

Distributed Computing Spectrum

• Many independent problems at same time• Similar — e.g., banking & credit card; airline reservations

• Different — e.g., university computer center; your own PC

• Or …– One very big problem (or a few)

• Computations that are physically separated• Client-server

• Inherently dispersed computations

Page 19: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 19

Multiprocessing Distributed Computing(a spectrum)

• Many independent problems at same time• Similar — e.g., banking & credit card; airline reservations

• Different — e.g., university computer center; your own PC

• Or …– One very big problem (too big for one computer)

• Weather modeling, finite element analysis; drug discovery; gene modeling; weapons simulation; etc.

• Computations that are physically separated• Client-server

• Inherently dispersed computations

Page 20: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 20

Multiprocessing Distributed Computing(a spectrum)

• Many independent problems at same time• Similar — e.g., banking & credit card; airline reservations

• Different — e.g., university computer center; your own PC

• Or…– One very big problem (too big for one computer)

• Weather modeling, Finite element analysis; Drug discovery; Gene modeling; Weapons simulation; etc.

• Computations that are physically separated• Client-server

• Dispersed – routing tables for internet; electric power distribution.

Page 21: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 21

Observation

• Same spectrum applies to multiprocessor systems– Much more tightly coupled that traditional “distributed

systems”

• Some differences– “Multiprocessor systems”

• Usually under same management

• Very fast communication

– “Distributed systems”• Sometimes not under same management

• Slower communication

Page 22: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 22

Another Observation(attributed to R. Hamming)

• When you change the operating point of a system by an order of magnitude …

… you introduce qualitative changes in how to approach problems

Page 23: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 23

Let’s look at an example

• An inherently distributed computation– I.e., parts of the computation must occur at

physically separate locations– Under separate administrations

• Internet routing tables

Page 24: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 24

The Internet

• A vast collection of independent computers– ~ 600 106

• All connected together• Any computer can send a message to any

other• Messages broken up into little packets

• Question: how do packets find their way to destinations?

Page 25: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 25

Internet

Page 26: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 26

Distributed routing algorithm(simplified example)

• Each node “knows” which networks are directly connected to it.

• Each node maintains table of distant networks• [network #, 1st hop, distance]

• Adjacent nodes periodically exchange tables• Update algorithm (for each network in table)

• If (my distance to network > neighbor’s distance to network + my distance to neighbor), then …

• … update my table entry for that network so that neighbor is first hop.

Page 27: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 27

Distributed routing algorithm(result)

• All nodes in Internet maintain reasonably up-to-date routing tables

• Rapid responses to changes in network topology, congestion, failures, etc.

• Very reliable with no central management!

Page 28: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 28

Characteristic

• The routing algorithm is inherently distributed

• Different parts execute in physically separated locations

• Only nearby nodes “know” whether – Neighbors are up or down– Networks are congested or not

Page 29: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 29

Big networks

• Network management systems• Monitoring health of network (e.g., routing tables)

• Identifying actual or incipient problems

• Data and statistics for planning purposes

Page 30: IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,

IntroductionCS-4513, D-Term 2007 30

Next Topic

Programming Project

Questions?