No Slide Title
Download
Report
Transcript No Slide Title
CS551
Distributed Operating Systems
Colorado State University
at Lockheed-Martin
Lecture 1 -- Spring 2001
CS551: Lecture 1
Topics
–
Introduction; Syllabus; G-25 Forms
Homework;
–
Galli: Chapters 1, 2, 3, 4, 5, 7, 8 (maybe), 10
Some
–
–
Reading Reports; Project
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
2
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
3
Why have distributed systems?
Price / Performance
Resource sharing
Faster response time
Improved reliability
Modular expandability
24 January 2001
CS-551, Lecture 1
4
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
5
Figure 1.1 Computers in a
Networked Environment. (Galli, p. 3)
24 January 2001
CS-551, Lecture 1
6
Figure 1.2 Connecting LAN
Subnets with a Backbone. (Galli,
p.6)
24 January 2001
CS-551, Lecture 1
7
Figure 1.3 Common Wired
LAN Topologies. (Galli, p.7)
F ig u re 1.3
24 January 2001
C om m on W ired L A N T o p olo gies .
CS-551, Lecture 1
8
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
9
Issues in Distributed O.S.
–
–
–
–
–
–
–
–
24 January 2001
Global Knowledge
Naming
Scalability
Compatibility
Process synchronization
Resource management
Security
Structuring
CS-551, Lecture 1
10
Issues: Global Knowledge
Unable to determine up-to-date global state
–
–
–
Need device-efficient distributed control
–
no global memory
no common clock
unpredictable message delays
e.g. how to get a concensus
Need method for ordering events
24 January 2001
CS-551, Lecture 1
11
Issues: Naming
All objects are named
Need to map name onto its location
Need a directory (or directories)
–
–
–
24 January 2001
replicated (to maintain consistency)
versus
partitioned (which partition helps me?)
CS-551, Lecture 1
12
Issues: Scalability, Process Synch
Scalability
–
–
Can system grow without performance
degradation?
Want to avoid centralized components
Process synchronization
–
–
24 January 2001
Enforce mutual exclusion to shared resources
Deal with potential for deadlock
CS-551, Lecture 1
13
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
14
Issues: Resource management
Data migration: bring data to the location
–
–
Computation migration
–
–
distributed file system
distributed shared memory
e.g. RPC
e.g. send a query for info computed remotely
instead of requesting raw data
Distributed scheduling
–
24 January 2001
process migration
CS-551, Lecture 1
15
Issues: Security
Authentication
–
verify user identification
Authorization
–
24 January 2001
determine user privileges
CS-551, Lecture 1
16
Issues: Structuring
Monolithic kernel
–
Collective kernel
–
–
each node doesn’t need entire kernel
O.S. services are processes
microkernel supports messages between such
processes
Object-oriented
–
24 January 2001
O.S. services are a collection of objects
CS-551, Lecture 1
17
Client-Server vs. Peer-To-Peer
Client-Server
–
–
Similar to collective kernel distributed O.S.
Servers respond to requests from clients
Peer-to-Peer
–
–
24 January 2001
An extension of client/server model
A many-to-many relationship between nodes
CS-551, Lecture 1
18
Figure 1.6 Client/Server Model.
(Galli, p.13)
24 January 2001
CS-551, Lecture 1
19
Figure 1.7 Peer-to-Peer Model.
(Galli, p.14)
24 January 2001
CS-551, Lecture 1
20
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
21
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
–
–
24 January 2001
enveloped while passed down through the local
host layers
stripped down to original message while passed
up through remote host layers
CS-551, Lecture 1
22
Networks: Layered Models
Application
Layer
O.S. Layer
Interconnect
Layer
24 January 2001
virtual path
virtual path
physical path
CS-551, Lecture 1
Application
Layer
O.S. Layer
Interconnect
Layer
23
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
24
ISO / OSI Protocol
Probably most popular network protocol
model
Implementation often takes efficiencyrelated shortcuts
Includes seven layers, grouped into 3 types
–
–
–
24 January 2001
application
operating system
communication service
CS-551, Lecture 1
25
OSI / ISO Layers
Application
–
–
Application layer -- user programs
Presentation layer -- common data
transformations
Operating system
–
–
24 January 2001
Session layer -- process-to-process
communication
Transport layer -- reliable host-to-host
communication
CS-551, Lecture 1
26
ISO / OSI Layers, continued
Communication service
–
–
–
–
–
24 January 2001
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-andforward node
May exist partly as hardware
CS-551, Lecture 1
27
Figure 1.4 The ISO/OSI
Reference Model. (Galli, p. 9)
24 January 2001
CS-551, Lecture 1
28
ISO/OSI Layers: Application
Miscellaneous applications
–
–
–
–
–
24 January 2001
FTP (file transfer protocol)
remote login: rlogin
browsers: Netscape, Internet Explorer
email (via SMTP)
RJE (remote job entry)
CS-551, Lecture 1
29
ISO/OSI Layers: Presentation
Common data transformations
–
–
–
24 January 2001
data compression
encryption
big/little Endian
CS-551, Lecture 1
30
ISO/OSI Layers: Session
Process-to-Process Communication
–
buffering
Some synchronization
–
24 January 2001
synchronous data communication
CS-551, Lecture 1
31
ISO/OSI Layers: Transport
Reliable site-to-site communication
24 January 2001
CS-551, Lecture 1
32
ISO/OSI Layers: Network
Logical path for communication
–
–
–
–
24 January 2001
converts frames --> packets --> frames
X.25 connection-oriented
IP connectionless
used for WANs; redundant for LANs
CS-551, Lecture 1
33
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
–
–
24 January 2001
on LANs can put out a special synch signal
adds a checksum to trailer to detect errors
CS-551, Lecture 1
34
ISO/OSI Layers: Data Link, cont.
Flow control
–
–
–
–
24 January 2001
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
CS-551, Lecture 1
35
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
36
Figure 1.5 TCP/IP Relationship
to ISO/OSI Reference Model.
(Galli, p. 12)
24 January 2001
CS-551, Lecture 1
37