Professional Documents
Culture Documents
Textbook Ch1
Instructor: Munehiro Fukuda
These slides were compiled from the course textbook and the reference books.
Winter, 2004
CSS490 Fundamental
Distributed Systems
Memory
Distributed memory
Message passing, RPC, and/or
used of distributed shared
memory
Control
Processor
Order of Tbps
interconnectio Bus, mesh, tree, mesh of tree,
n
and hypercube (-related)
network
Main focus
Performance
Scientific computing
Winter, 2004
CSS490
Order of Gbps
Ethernet(bus), token ring and SCI
(ring), myrinet(switching
network)
Performance(cost and
scalability)
Reliability/availability
Information/resource sharing
Fundamental
2
Milestones in Distributed
Computing
Systems
Loading monitor
1945-1950s
1950s-1960s
Batch system
1960s
Multiprogramming
1960s-1970s
Multics, IBM360
1969-1973
ARPAnet, Ethernet
1960searly1980s
Minicomputers
PDP, VAX
Early 1980s
Workstations
Alto
1980s present
Workstation/Server
models
Sprite, V-system
1990s
Clusters
Beowulf
Late 1990s
Grid computing
Globus, Legion
Winter, 2004
CSS490 Fundamental
System Models
Minicomputer model
Workstation model
Workstation-server model
Processor-pool model
Cluster model
Grid computing
Winter, 2004
CSS490 Fundamental
Minicomputer Model
Minicomputer
Minicomputer
ARPA
net
Minicomputer
Winter, 2004
CSS490 Fundamental
Workstation Model
Workstation
Workstation
100Gbps
LAN
Workstation
Workstation
Workstation
Process migration
Users first log on his/her personal workstation.
If there are idle remote workstations, a heavy job
may migrate to one of them.
Problems:
How to find am idle workstation
How to migrate a job
What if a user log on the remote machine
Winter, 2004
CSS490 Fundamental
Workstation-Server Model
Client workstations
Diskless
Workstation
Server minicomputers
100Gbps
Example: NSF
Winter, 2004
CSS490 Fundamental
Processor-Pool Model
100Gbps
LAN
Server 1
Server N
Winter, 2004
Clients:
They log in one of terminals
(diskless workstations or X
terminals)
All services are dispatched to
servers.
Servers:
Necessary number of
processors are allocated to
each user from the pool.
Better utilization but less
interactivity
CSS490 Fundamental
Cluster Model
Workstation
Client
Takes a client-server
Workstation
Workstation
model
Server
100Gbps
Consists of many
LAN
PC/workstations
http server2
http server N connected to a highhttp server1
speed network.
Slave
Master Slave Slave
Puts more focus on
N
node
1
2
performance: serves
for requests in
parallel.
1Gbps SAN
Winter, 2004
CSS490 Fundamental
Grid Computing
Workstation
Supercomputer
Minicomputer
Cluster
High-speed
Information high way
Supercomputer
Cluster
Goal
Workstation
Winter, 2004
Workstation
CSS490 Fundamental
10
Reliability
Non-stopping (availability) and voting features.
Scalability
CSCW or groupware
Resource sharing
Flexibility
Winter, 2004
CSS490 Fundamental
11
Network OS
Distributed OS
SSI
(Single System
Image)
NO
Ssh, sftp, no view of
remote memory
YES
Process migration, NFS,
DSM (Distr. Shared
memory)
Autonomy
High
Local OS at each
computer
No global job
coordination
Low
A single system-wide OS
Global job coordination
Fault Tolerance
Unavailability grows as
faulty machines increase.
Unavailability remains
little even if fault
machines increase.
Winter, 2004
CSS490 Fundamental
12
Transparency (=SSI)
Access transparency
Memory access: DSM
Function call: RPC and RMI
Location transparency
File naming: NFS
Domain naming: DNS (Still location concerned.)
Migration transparency
Automatic state capturing and migration
Concurrency transparency
Event ordering: Message delivery and memory
consistency
Other transparency:
Failure, Replication, Performance, and Scaling
Winter, 2004
CSS490 Fundamental
13
Reliability
Faults
Fail stop
Byzantine failure
Fault avoidance
The more machines involved, the less avoidance
capability
Fault tolerance
Redundancy techniques
K-fault tolerance needs K + 1 replicas
K-Byzantine failures needs 2K + 1 replicas.
Distributed control
Avoiding a complete fail stop
Fault detection and recovery
Atomic transaction
Stateless servers
Winter, 2004
CSS490 Fundamental
14
Flexibility
Ease of modification
Ease of enhancement
User
User
applications applications
Monolithic
Kernel
(Unix)
Monolithic
Kernel
(Unix)
User
applications
Monolithic
Kernel
(Unix)
User
User
applications applications
User
applications
Daemons
(file, name,
Paing)
Daemons
(file, name,
Paing)
Daemons
(file, name,
Paing)
Microkernel
(Mach)
Microkernel
(Mach)
Microkernel
(Mach)
Network
Network
Winter, 2004
CSS490 Fundamental
15
Performance/Scalability
Unlike parallel systems, distributed systems involves OS
intervention and slow network medium for data transfer
Send messages in a batch:
Cache data
Winter, 2004
CSS490 Fundamental
16
Heterogeneity
Winter, 2004
CSS490 Fundamental
17
Security
CSS490 Fundamental
18
Distributed Computing
Environment
DCE Applications
Threads
RPC
Winter, 2004
CSS490 Fundamental
19
2.
3.
4.
5.
6.
7.
Winter, 2004
CSS490 Fundamental
20