CS551 Distributed Operating Systems
-
Upload
corbett-richter -
Category
Documents
-
view
37 -
download
2
description
Transcript of CS551 Distributed Operating Systems
CS551Distributed Operating Systems
Colorado State University
at Lockheed-Martin
Lecture 1 -- Spring 2001
24 January 2001 CS-551, Lecture 1 2
CS551: Lecture 1
Topics– Introduction; Syllabus; G-25 Forms
Homework; Reading Reports; Project
– Galli: Chapters 1, 2, 3, 4, 5, 7, 8 (maybe), 10 Some networking topics included in course
– What is a distributed system? A network?– What is a protocol?
ISO OSI Protocol TCP/IP
24 January 2001 CS-551, Lecture 1 3
What is a distributed system?
A collection of independent computers A communication facility to pass messages No shared memory No shared clock Each computer has its own operating
system
24 January 2001 CS-551, Lecture 1 4
Why have distributed systems?
Price / Performance Resource sharing Faster response time Improved reliability Modular expandability
24 January 2001 CS-551, Lecture 1 5
Distributed system organizations
Microcomputer model– several multiuser systems
Workstations/PCs model– each user has own WS/PC to do work– each user shares files and other resources
Processor pool model LANs, MANs, WANs, WWW
24 January 2001 CS-551, Lecture 1 6
Figure 1.1 Computers in a Networked Environment. (Galli, p. 3)
24 January 2001 CS-551, Lecture 1 7
Figure 1.2 Connecting LAN Subnets with a Backbone. (Galli, p.6)
24 January 2001 CS-551, Lecture 1 8
Figure 1.3 Common Wired LAN Topologies. (Galli, p.7)
Figure 1.3 Common Wired LAN Topologies.
24 January 2001 CS-551, Lecture 1 9
Distributed Operating Systems
Appears to users as a single system on a single machine
A virtual uniprocessor Users do not know where files are located Users don’t know where jobs are executed
24 January 2001 CS-551, Lecture 1 10
Issues in Distributed O.S.
– Global Knowledge– Naming– Scalability– Compatibility– Process synchronization– Resource management– Security– Structuring
24 January 2001 CS-551, Lecture 1 11
Issues: Global Knowledge
Unable to determine up-to-date global state– no global memory– no common clock– unpredictable message delays
Need device-efficient distributed control– e.g. how to get a concensus
Need method for ordering events
24 January 2001 CS-551, Lecture 1 12
Issues: Naming
All objects are named Need to map name onto its location Need a directory (or directories)
– replicated (to maintain consistency)– versus– partitioned (which partition helps me?)
24 January 2001 CS-551, Lecture 1 13
Issues: Scalability, Process Synch Scalability
– Can system grow without performance degradation?
– Want to avoid centralized components Process synchronization
– Enforce mutual exclusion to shared resources– Deal with potential for deadlock
24 January 2001 CS-551, Lecture 1 14
Issues: Compatibility
Possible at different levels Binary level: all processing elements run
same binary code Execution level: same source code can be
compiled and run on all nodes Protocol level: all processing elements
support same protocols
24 January 2001 CS-551, Lecture 1 15
Issues: Resource management
Data migration: bring data to the location– distributed file system– distributed shared memory
Computation migration– e.g. RPC– e.g. send a query for info computed remotely instead
of requesting raw data Distributed scheduling
– process migration
24 January 2001 CS-551, Lecture 1 16
Issues: Security
Authentication– verify user identification
Authorization– determine user privileges
24 January 2001 CS-551, Lecture 1 17
Issues: Structuring
Monolithic kernel– each node doesn’t need entire kernel
Collective kernel– O.S. services are processes– microkernel supports messages between such
processes Object-oriented
– O.S. services are a collection of objects
24 January 2001 CS-551, Lecture 1 18
Client-Server vs. Peer-To-Peer
Client-Server– Similar to collective kernel distributed O.S.– Servers respond to requests from clients
Peer-to-Peer– An extension of client/server model– A many-to-many relationship between nodes
24 January 2001 CS-551, Lecture 1 19
Figure 1.6 Client/Server Model. (Galli, p.13)
24 January 2001 CS-551, Lecture 1 20
Figure 1.7 Peer-to-Peer Model.(Galli, p.14)
24 January 2001 CS-551, Lecture 1 21
What is a network?
A form of a distributed system Connected nodes may be homogeneous or
heterogeneous Nodes may be some distance apart A network may consist of other networks LANs, MANs, WANs The Internet is a WAN: the WWW
24 January 2001 CS-551, Lecture 1 22
Layered Network Models
Used to describe network functions Used to reduce network complexity Each layer logically communicates with the
corresponding layer on the remote host Messages
– enveloped while passed down through the local host layers
– stripped down to original message while passed up through remote host layers
24 January 2001 CS-551, Lecture 1 23
Networks: Layered Models
ApplicationLayer
O.S. Layer
ApplicationLayer
InterconnectLayer
O.S. Layer
InterconnectLayer
virtual path
virtual path
physical path
24 January 2001 CS-551, Lecture 1 24
What is a protocol?
A set of rules A method for
– establishing a connection between two sites– sending a communication over the connection– acknowledging receipt of message– terminating the connection
Example: a telephone call Examples: ISO/OSI; TCP/IP; UDP; SMTP
24 January 2001 CS-551, Lecture 1 25
ISO / OSI Protocol
Probably most popular network protocol model
Implementation often takes efficiency-related shortcuts
Includes seven layers, grouped into 3 types– application– operating system– communication service
24 January 2001 CS-551, Lecture 1 26
OSI / ISO Layers
Application– Application layer -- user programs– Presentation layer -- common data transformations
Operating system– Session layer -- process-to-process communication– Transport layer -- reliable host-to-host
communication
24 January 2001 CS-551, Lecture 1 27
ISO / OSI Layers, continued
Communication service– Network layer -- packets, routing– Data Link layer -- reliability, flow control– Physical layer -- hardware to move a bit stream
between nodes– Needed by any network node, even a store-and-
forward node– May exist partly as hardware
24 January 2001 CS-551, Lecture 1 28
Figure 1.4 The ISO/OSI Reference Model. (Galli, p. 9)
24 January 2001 CS-551, Lecture 1 29
ISO/OSI Layers: Application
Miscellaneous applications– FTP (file transfer protocol)– remote login: rlogin– browsers: Netscape, Internet Explorer– email (via SMTP)– RJE (remote job entry)
24 January 2001 CS-551, Lecture 1 30
ISO/OSI Layers: Presentation
Common data transformations– data compression– encryption– big/little Endian
24 January 2001 CS-551, Lecture 1 31
ISO/OSI Layers: Session
Process-to-Process Communication– buffering
Some synchronization– synchronous data communication
24 January 2001 CS-551, Lecture 1 32
ISO/OSI Layers: Transport
Reliable site-to-site communication
24 January 2001 CS-551, Lecture 1 33
ISO/OSI Layers: Network
Logical path for communication– converts frames --> packets --> frames– X.25 connection-oriented– IP connectionless– used for WANs; redundant for LANs
24 January 2001 CS-551, Lecture 1 34
ISO/OSI Layers: Data Link
Reliable data transmission– message goes out in frames
character count -- header specifies length character stuffing -- special character at end bit stuffing -- special bit sequence at end
– on LANs can put out a special synch signal– adds a checksum to trailer to detect errors
24 January 2001 CS-551, Lecture 1 35
ISO/OSI Layers: Data Link, cont.
Flow control– synchronizes message passing activity– stop-and-wait -- sender waits for receiver’s
permission (inefficient for large transmissions)– sliding window -- allows several outstanding
unacknowledged frames (needs sequence #s)– HDLC (high level data link control) -- balanced,
permits two-way simultaneous message passing, acknowledgments in frame headers, errors results in resend requests
24 January 2001 CS-551, Lecture 1 36
ISO/OSI Layers: Physical
Raw bit-stream communication– circuit switching
reserves a fixed communication at start releases path at end best for long, continuous stream
– packet switching demands access when ready to send packet of info packet may contain 10 - 1000 bytes may need several packets best for bursty, short communication
24 January 2001 CS-551, Lecture 1 37
Figure 1.5 TCP/IP Relationship to ISO/OSI Reference Model. (Galli, p. 12)
Expand.gif