Professional Documents
Culture Documents
Distributed Systems
Topics To Be Covered
Definition Of Distributed Systems, Network Systems, And
Middleware
Network Topologies And Features
ISO/OSI Network Protocol And TCP/IP Protocol
Distributed Computing Models
Client/Server Model
Network Operating Systems vs. Distributed Operating Systems
Parallel (Distributed) System Architectures
2
machine B
machine C
Distributed Applications
kernel
kernel
kernel
Distributed Database
A Distributed Database Consists Of Two Or More
Data Files Located At Different Sites On A Computer
Network
So Different Users Can Access It Without Interfering
With One Another
But The DBMS Must Periodically Synchronize The
Scattered Databases To Make Sure That They All
Have Consistent Data
7
Distributed Transactions
A Distributed Transaction Includes One Or More Statements
That Update Data On Two Or More Distinct Nodes Of A
Distributed Database
machine B
machine C
Distributed Applications
NOS
services
NOS
services
NOS
services
kernel
kernel
kernel
12
Functions
Some Examples
- UNIX /Linux
- Mac OS
- Novell Netware
- Microsoft Windows Server
- Microsoft Windows Vista/7/8
13
Novell Netware
Netware Is A Network Operating System Developed By Novell, Inc.
It Evolved From A Simple Concept: File Sharing (High Level)
(Low Level)
- Disk Sharing (Disk Service Model (Comes Back For SANs)) (Block Level)
* Read First Block Of Directory
* Continue Reading Subsequent Directory Blocks Until The Directory Block
File Is Found
* Read Through Multiple File Entry Blocks Until The Block Containing The
* Read The Desired Data Block
14
19
Mounting
A Process Of Making A File System Ready For Use By The
Operating System
Mount Point
- A Physical Location In The Partition Where A File System Can Be
Mounted
i.e. The Actual Location From Which The File System Is Mounted
And
Accessed
20
Definition Of Middleware
What Is A Middleware?
- A Service Interface Between Distributed Applications And An NOS
- A Software Providing A Link Between Separate Software Applications
Running On Different Operating Systems
- Also Called "Plumbing" Because It Connects Two Applications
- A Software Sitting "In The Middle" Between Application Software
- A Software Serving To "Glue Together" Or Mediate Between Two Separate
Programs Or Applications
21
Middleware (Cont'd)
General Architecture
machine A
machine B
machine C
Distributed Applications
Middleware Services
NOS
services
NOS
services
NOS
services
kernel
kernel
kernel
22
Middleware (Cont'd)
Examples Of Middleware Services
- RPCs and ROI/RMI
- Message Oriented Middleware (Nonblocking Send)
- Distributed File Systems
- Distributed Transactions
- Distributed Security
- Object Request Broker (Object Sending/Request)
- SQL-Oriented Data Access (Between Applications And
Database Server)
- Embedded Middleware (Interface Between Applications And
Embedded Operating Systems)
23
description
main goal
tightly-coupled OS for
multiprocessors and
homogeneous
multicomputers
loosely-coupled OS for
heterogeneous
multicomputers (LAN
& WAN)
provide distribution
(access) transparency
24
25
Repeaters
Used To Regenerate Incoming Electrical (Copper Wire), Wireless (Wi-Fi), Or
Optical (Fiber Optics) Signals
e.g. Wired Ethernet And Wireless Network Repeater (To Sit In Between Two
Office Routers Located At Two Different Floors)
Also Known As Active Hubs, Multiport Repeaters, Or Just Hubs
Used To Connect Two Or More LANs (e.g. Ethernet Networks)
The LANs Support The Same Protocol
Signals Received Are Amplified And Transmitted
LANs Are Extended By Repeaters Working Only At The Physical Layer
Collision Or Electrical Interference Are Also Transmitted
26
Repeaters (Cont'd)
An Example: Connecting Two LANs
LAN 1
LAN 2
R
Repeater
27
Repeaters (Cont'd)
Another Example: Connecting LANs On 3 Floors
LAN on floor 3
R1
LAN on floor 2
vertical
segment
R2
LAN on floor 1
R3
28
Bridges
A Forwarding Technique Used In Packet-Switched Computer Networks
A Bridge Makes No Assumption About Where In A Network A Particular
Bridges (Cont'd)
Also Used To Connect Two Or More LANs
LANs Are Also Extended By Bridges
But Bridges Do Not Forward Collision Or Electrical Interference
Complete/Correct Frames Or Packets Are Forwarded
Smarter Than Repeaters
- A CPU + A Memory + Code In A ROM
- A Special-Purpose Computer
Computers On LANs Can Be Located via Flooding/Broadcasting (The Very First Time)
LANs Still Support The Same Protocol Using Bridges
30
Bridges (Cont'd)
An Example: Connecting LANs In Two Different
Buildings
building 1
bridge
fiber
modem
building 2
optical
fibers
fiber
modem
31
Advantages Of Bridges
Self-Configuration (e.g. Routing Tables Set-Up)
Simple Bridges Are Inexpensive
Isolate Collision Domain
Transparent To Protocols Above The MAC Layer
Helps To Minimize Bandwidth Usage (After
Broadcasting)
32
Disadvantages Of Bridges
Do Not Limit The Scope Of Broadcasts
- Broadcast Domain Cannot Be Controlled
Do Not Scale To Extremely Large Networks (e.g. Collision)
Buffering And Processing Introduce Delays
More Expensive Than Repeaters And Hubs
A Complex Network Topology Can Pose A Problem
- Multiple Paths Between Bridges And LANs Can Result In Bridge Loops
33
Bridge Loops
Two Bridges (1 And 2) Connecting To Each Other
- The Redundancy Of Bridges Provides System Robustness
34
35
36
37
Routers
An Electronic Device That Intercepts Packets On A Computer
Network And Determines Where It Has To Go
- The Packet Contains IP Address Information The Router Uses To Divert
Packets Properly
- Routers Exchange Information So That Each One Can Build Up A
Reference/Routing Table Showing The Preferred Paths Between Any Two
Systems On The Interconnected Networks
Routers (Cont'd)
Similar To Bridges But Work At Network Layer (3rd Layer)
Using IP Addresses To Locate Computers Among Networks
A Router Is Located At Any Place Where One Network Meets
Another
Each Router Is A Special-Purpose Computer
Networks Can Support Different Protocols
- Different Media, Physical Addressing Schemes, Frame Formats, etc.
Smarter Than Bridges
39
Routers (Cont'd)
The Architecture
network 2
network 1
router
40
Routers (Cont'd)
Packets Routed By Routers To Their Destinations
41
Types Of LANs
Wired LANs (With Cables)
- Ethernet (Bus Based)
- Token Ring (Ring Based)
- FDDI (Ring Based)
- ATM (Star Based)
- Frame Relay (For WANs)
Ethernet
The Architecture
Ethernet
cable
(a shared
bus)
sender
receiver
44
Ethernet (Cont'd)
Only One Computer Can Transmit Data At A Time
CSMA/CD Is Used To Handle Collision
- CSMA/CD = Carrier Sense Multiple Access/Collision
Detection
- "Exponential Backoff" Technique Is Used For CSMA/CD
- CSMA/CD Is A Type Of Contention Protocol
45
Exponential Backoff
Used To Schedule Retransmission After Collisions
Retransmission Is Delayed By An Amount Of Time Derived
From The Slot Time And The Number Of Attempts To
Retransmit
The Algorithm
- After c Collisions, A Random Number Of Slot Times Between 0
And 2c 1
Is Chosen
- 1st Collision: Each Sender Waits 0 Or 1 Slot Time
- 2nd Collision: Each Sender Waits From 0 To 3 Slot Times
- 3rd Collision: Each Sender Waits From 0 To 7 Slot Times
- etc.
Token Ring
The Architecture
tok
en
transmitting data
receiver
sender
receiving data
47
FDDI
Stands For Fiber Distributed Data Interface
FDDI = A Protocol Based On Token Ring Protocol
FDDI Uses Fiber Lines In A LAN Up To 200 KM (or 124
Miles)
So Thousands Of Users Can Be Supported
FDDI (Cont'd)
FDDI-2 (An Extension Of FDDI)
- Also Supports The Transmission Of Voice And Video
Information As Well As Data
FFDT (FDDI Full Duplex Technology)
- Uses The Same Network Infrastructure As FDDI
- But Can Potentially Support Data Rates Up To 200 Mbps
51
FDDI (Cont'd)
Two Counter Rotating Rings Are Supported
The Architecture
tok
e
outer ring
failure occurs
inner
ring
52
FDDI (Cont'd)
A Self-Healing Network
More Robust Than Token Ring
Outer Ring
- Up To 100 Mbps
Inner Ring
- Normally Not Used (But As A Backup And Secondary Token)
- Up To 200 Mbps
53
receiving
ATM switch
Ethernet
54
ATM (Cont'd)
Nodes In An ATM Are Independent Of Each Other For Failure
Used To Support Efficient Real-Time And Multimedia Voice
And Video As Well As Data Transmission In LANs And
WANs
55
ATM (Cont'd)
Different From Telephone Switches Due To Its Capability Of
Using Idle Bandwidth (via Packet Switching)
ATM Transmits Data Using Virtual Circuits (VCs)
- The Transmission Path Consists Of The Physical Cable Connected To A
Particular Port Of An ATM Switch
- The Cable Has A Defined Bandwidth, Such As 155 Megabits Per Second
For An Optical Carrier-3 (OC-3) Optical Fiber Link
- The Bandwidth Of The Transmission Path Is Logically Divided Into
Separate Virtual Channels
- The Bandwidth Of A Virtual Channel Is Logically Divided Into Separate
Virtual Paths
56
ATM (Cont'd)
Paths Within A Channel Within The Transmission Medium
Frame Relay
Used For WANs (Based On The Older X.25 Packet-Switching Technology)
Used To Transmit Blocks Of Data In Variable-Size Units Called Frames
Cheap And Fast Relay Of Frames Using Virtual Circuits (Packet Switching)
- No Error Correction Is Made During Transmission
- A Frame With Error Detected Is Simply Dropped
- So It Does Not Process Packets (But Just Relay Them From Node To Node)
Also Used To Bridge LANs
- An Example: Offices In Two Different Cities
Becoming Less Popular Due To Cable Modem And DSL
- But Still Used In Remote Area Without Cable Modem Or DSL
e.g. A Retail Chain Using Frame Relay For Connecting Rural Stores To Their
Corporate WAN
58
59
Radio Frequency
Signals Are Broadcast By Antennas
- Examples: Airport (Apple), WaveLAN (Lucent), etc.
60
Infrared Light
Used For Remote Controls For TVs, Stereo Systems,
etc.
No Antenna Is Needed
Usually Need To Point Toward The Receiver (New
Devices Don't)
61
Packet Switching
- Messages Are Divided Into Packets And Routed Through Different Paths
- Two Types
* Virtual Circuit (Connection Based, Handshaking, More Reliable): TCP
* Datagram (Connectionless, Less Reliable): UDP
62
Physical Layer
The First And Lowest Layer
It Defines The Means Of Transmitting Raw Bits Over A Physical
Link Connecting Network Nodes
The Layer Provides An Electrical, Mechanical, And Procedural
Interface To The Transmission Medium
- An Example Of Electrical Specification: RS-232-C Protocol
* A Serial Port Built Into The UART Chip On The Motherboard
65
Some Examples
- Ethernet For LANs
- Point-to-Point Protocol (PPP)
66
Network Layer
A Routing Based Layer Responsible For Routing Packets
The Lowest Layer In The OSI Model That Recognizes Network
Boundary (i.e. Inter-Network Packet Transfer)
- Data Link Layer Is For Intra-Network Data Transfer
Transport Layer
The Layer Provides Reliable Connection And Transmission,
Flow Control, Congestion Control, And Multiplexing (Sender)
And Demultiplexing (Receiver)
The Layer Also Supports "The Same Order Delivery"
- Divide A Message Into Packets (Sender)
- Assign Each Packet A Sequence Number (Sender)
- Send Each Packet Out (Sender)
- When Received, Reorder/Reassemble Them (Receiver)
70
71
Session Layer
A Layer Providing The Mechanism For Opening, Closing, And Managing A
Session Between End-User Processes
- It Consists Of Requests And Responses Occurring Between Applications Using
RPCs
Presentation Layer
Data Or Format Conversion
- ASCII EBCDIC And Vise Versa
- Compression
- Encryption
- Serialization Of Complex Data Structures Into Flat Byte-Strings
e.g. Using EXtensible Markup Language (XML) Mechanism
* A Set Of Rules For Encoding Documents In Machine-Readable Form
Application Layer
Some Examples
- HTTP (Hyper Text Transfer Protocol)
WWW
TCP/IP Protocol
Developed By Department of Defense (DoD) To Connect A
Number Of Different Networks Into A Network Of Networks
(The Internet)
Uses The Client-Server Model Of Communication
- Primarily Point-To-Point Model (Between Client Host And Server Host)
- IP
* Moving Packet Of Data From Node To Node Using IP Addresses (4 Bytes)
75
UDP)
+
application
TCP/UDP
IP
link
ISO/OSI
application program
application
presentation
session
transport
network
data link
physical
77
78
Client/Server Model
Workstation Model
- The Architecture
WS1
WS2
WS3
WS4
WS5
diskful or
diskless
(more
popular)
a LAN
79
Client/Server Model
Processor Pool Model (e.g. Amoeba Operating System)
- The Architecture
CPU pool
x terminal 1
xt 2
xt 3
FS
a LAN
80
81
82
File Server
The Architecture
wait for result
client
request
reply
server
provide service
time
83
Database Server
The Architecture
user interface
(presentation)
application
server
real server
return
result
return
data
provide
data
time
84
85
86
Web Server
The Architecture
replicated web servers, each containing the
same web pages
disk
RR
LAN
The Internet
87
Other
Location Transparency
Access Transparency
Migration Transparency
Relocation Transparency
Replication Transparency
Concurrency Transparency
Failure Transparency
Persistence Transparency
90
Location Transparency
It Hides Where A Resource Is Located
- So Resources Can Be Accessed By A User From Anywhere On The Network
Without Knowing Where They Are Located
Access Transparency
It Hides Information In Data Representation
It Also Hides Information About How A Resource Is
Accessed By Users
An Example
- Sender: Little Endian
- Receiver: Big Endian
92
Migration Transparency
It Hides That A Resource May Move To
Another Location
93
Relocation Transparency
It Hides That A Resource May Be Moved To
Another Location While In Use
An Example: Mobile Users Moving When
Using A Cell Phone
94
Replication Transparency
It Hides That A Resource Is Replicated
It Hides The Fact That Several Copies Of A
Resource Exist
95
Concurrency Transparency
It Hides That A Resource May be Shared By
Several Competitive Users
Consistency Is An Issue Here
- Synchronization Can Be Achieved By Locking On
Transactions
96
Failure Transparency
It Hides The Failure And Recovery Of A
Resource
97
Persistence Transparency
It Hides Whether A Resource Is In Memory Or
On Disk
98
Type 2: Multicomputers
- They Have Their Own Memories
99
Some Examples
- Bus Based, Shared Memory Case
- Switch Based, Shared Memory Case
- Bus Based, Private Memory Case
- Switch Based, Private Memory Case
100
memory
m1
m2
m3
or
P1
P2
P3
P4
P1
P2
P3
P4
101
m3
P1
P5
P2
P4
P3
102
m1
m2
m3
m4
P1
P2
P3
P4
103
m2
m3
m4
P1
P2
P3
P4
104
Multicomputer Systems
- Type 1: Homogeneous Ones
- Type 2: Heterogeneous Ones
105
Memory-Based Multiprocessors
The Architecture
CPU1
CPU2
CPU3
CPU4
memory
106
Module-Based Multiprocessors
The Architecture
CPU1
CPU2
m1
CPU3
m2
CPU4
m3
108
109
m2
m3
a crosspoint
switch
CPU1
CPU2
CPU3
CPU4
111
112
10
01
11
Number Of Nodes = 22 = 4
Farthest Distance = Minimum 2 Hops (i.e. log24)
113
114
110
101
111
000
010
001
011
115
Omega Approach
Used To Solve The O(n2) Problem For Crossbar
Switch Approach
A Real System: BBN Butterfly
117
118
CPUs
00
C0
stage 1
stage 2
m0
00
memory module ID
0: top output
01
C1
10
C2
11
C3
22
22
22
22
m1
01
m2
10
m3
11
1: bottom output
119
120
stage 2
stage 3
m0
000
C1
m1
001
010
C2
m2
010
011
C3
m3
011
100
C4
m4
100
101
C5
m5
101
110
C6
m6
110
111
C7
m7
111
000
C0
001
121
Multicomputer Systems
Two Types
- Homogeneous Ones
- Heterogeneous Ones
122
Homogeneous Ones
Also Known As SANs (System Area Networks)
- A SAN Is A High-Performance Network That Can Link A Cluster Of
Computers (PCs Or Workstations)
Latency
Two Architectures
- Bus-Based Clusters (Broadcast Based)
- Switch-Based SANs (Routing Based)
123
Bus-Based SANs
An Example: Fast Ethernet (100 Mbps) (Broadcast
Based)
- Limited Scalability
124
Switch-Based SANs
Two Approaches
- Mesh/Grid Approach
- Hyper Cube Approach
125
Mesh/Grid Approach
An Example: Intel Paragon XP (2D-Mesh)
- The Architecture
126
127
Applications Of MPPAs
Video Compression
- Reduce The Quantity (Loss) Of Data Used To Represent Digital Video
Images
Image Processing
(e.g.
Medical Imaging
- The Technique And Process Used To Create Images Of The Human
Body
Network Processing
Software-Defined Radio
- Analog-To-Digital Convert Chip Connected To An Antenna
130
131
COWs
Also Known As Network Of Workstations (NOWs)
A Computer Network Connecting Several Computer
Workstations Together With Special Software Forming
A Cluster
Normally Used As Supercomputers For Number
Crunching And Search Engine
e.g. Berkeley 10 Gigaflops COW On The LINPACK Benchmark
- A Software Library For Performing Numerical Linear Algebra On Digital
Computers (Written In Fortran)
132
Heterogeneous Ones
Computers Are Of Different Types
Interconnection Network Is Also Heterogeneous
Example 1: Four Clusters Of Multicomputers
Interconnected via A Wide-Area ATMSwitched Backbone
Example 2: Construction Of Multicomputers Using
Existing Networks And Backbone
133
Example 2 (Cont'd)
The Architecture
Campus-Wide Distributed System
Biology LAN
CPSC LAN
Physics LAN
Chemistry LAN
134