Presentation on theme: "IntroductionCS-4513, D-Term 20071 Distributed Computing Systems Hugh C. Lauer Adjunct Professor (Slides include materials from Operating System Concepts,"— Presentation transcript:
IntroductionCS-4513, D-Term 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)
IntroductionCS-4513, D-Term Outline for Today Introduction to CS-4513 What is “Distributed Computing” –An example of a distributed computation Networks Assignment of Project #1
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term Textbook and Web Textbooks:– You should own or have access to one of the following from CS-3013 –Operating Systems Concepts, 7 th ed, by Silberschatz, Galvin, and Gagne, John Wiley and Sons, 2005 –Modern Operating Systems, 2 nd 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/http://www.cs.wpi.edu/~cs4513/d07/
IntroductionCS-4513, D-Term 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 1 st reading assignment: any of the following –Silbershatz, § –Tanenbaum, §8.3 –Tanenbaum & Van Steen, Chapter 1
IntroductionCS-4513, D-Term 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 cs.wpi.edu –Adjunct office phone: (508) (shared, no messages)
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term Miscellaneous Is this course the capstone for a Minor in CS? Anyone needing a project for BS & MS credit?
IntroductionCS-4513, D-Term 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.
IntroductionCS-4513, D-Term 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?
IntroductionCS-4513, D-Term Instructor — Hugh C. Lauer Adjunct Professor Ph. D. Carnegie-Mellon –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 –…
IntroductionCS-4513, D-Term 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.
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term 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 million gate, high-performance ASIC 10 9 Phong-illuminated samples per second
IntroductionCS-4513, D-Term Sample images from VolumePro
IntroductionCS-4513, D-Term Class Discussion What is Distributed Computing?
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term 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.
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term The Internet A vast collection of independent computers –~ 600 10 6 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?
IntroductionCS-4513, D-Term Internet
IntroductionCS-4513, D-Term Distributed routing algorithm (simplified example) Each node “knows” which networks are directly connected to it. Each node maintains table of distant networks [network #, 1 st 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.
IntroductionCS-4513, D-Term 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!
IntroductionCS-4513, D-Term 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
IntroductionCS-4513, D-Term Big networks Network management systems Monitoring health of network (e.g., routing tables) Identifying actual or incipient problems Data and statistics for planning purposes
IntroductionCS-4513, D-Term Next Topic Programming Project Questions?