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