lect1 - ECS

warmersafternoonNetworking and Communications

Oct 23, 2013 (4 years and 21 days ago)

73 views

Introduction to Distributed Systems

1

Learning Objectives


Review of operating system definition and
design goals.


Distributed system definition.


Distributed and Parallel Architectures


Real Time system definition and types.


Distributed System Requirements.


Introduction to Distributed Systems

2

What is an operating system?


Programs and modules within a computer
system that
CONTROL, REGULATE and
COORDINATE
utilization of hardware
and software resources.


? What hardware and software resources are
controlled by o.s.?


Introduction to Distributed Systems

3

What is a Distributed System?


A collection of (possibly heterogeneous
computers) connected via a network. This
collection works together to accomplish
common goals

that provide:


a consistent view of the file system


a global name space


a high degree of security


a consistent global time


an efficient and fair access to resources


Introduction to Distributed Systems

4

What is a Network System?


A collection of (possibly heterogeneous
computers) connected via a network. Those
computers have to agree upon the same
network protocols for file transfer and
remote logins.

Introduction to Distributed Systems

5

Factors Influencing
Development of Distributed
and Network Systems



Advances in the microprocessor technology
( fast, 32
-
64 bit architectures, with the
computing power of large
-
sized
mainframes)


Invention of high speed local area networks
(LANs
)


Introduction to Distributed Systems

6

Popular Network Topologies
and Features


LAN (Local Area Network):


owned by a single entity


in one building, campus, up to a few miles apart.


LANs are connected using:


repeaters (only repeats data)


bridges (transfer data only to destination)


routers (advanced bridge
-
supports different protocols


backbones (LAN that connects other LANs)

Introduction to Distributed Systems

7

Connecting LAN Subnets
Algorithms


In order to fully understand the difference
between a repeater, a bridge and a router,
analyze the algorithms in figure 1.2 on p.5.



Introduction to Distributed Systems

8

Common Topologies of Wired
LANs
-

Ethernet


CSMA/CD (Carrier Sensitive Multiple
Access with Collision Detection)


IEEE 802.3


10 Mbps
-
1000 Mbps


fails at 60% capacity


satisfactory in most applications


Introduction to Distributed Systems

9


Common Topologies of Wired
LANs
-

Token ring


Defined by IEEE 802.5 standard.


provides receipt after the message was
delivered


allows priorities


has guaranteed delivery time


does not fail under heavy loads


4
-
16 Mbps (on similar hardware 1 Mbps
Ethernet.


more expensive than the Ethernet

Introduction to Distributed Systems

10


Common Topologies of Wired
LANs
-

FDDI


FDDI (Fiber Distributed Data Interface)


frequently used as a
backbone

(see p.6)


operates at 100 Mbps


uses two counter
-
rotating rings


supports synchronous traffic


Introduction to Distributed Systems

11

Wireless LANs


Greater initial cost but much lower
mainetance cost


frequency based


up to 4 Mbps


signal can travel through opaque substances


infrared based


up to 10 Mbps


transmitters and receivers must be in direct line
of sight of each other





Introduction to Distributed Systems

12

WANs (Wide Area Networks)

Technologies


Circuit Switching


a dedicated communication channel is established


Packet Switching


much more flexible


Frame relay


allows messages to include information about network
congestion, strips error detection/correction (2Mbps)


ATM (Asynchronous Transfer Mode)


adaptable to various conditions, fast (100 Mbps)

Introduction to Distributed Systems

13

ISO/OSI Reference Model


ISO/OSI (International Standard Organization/
Open System Interconnection)


Seven Layer model:


PHYSICAL


DATA LINK


NETWORK


TRANSPORT


SESSION


PRESENTATION


APPLICATION

Introduction to Distributed Systems

14

TCP/IP Protocol Suite


TCP/IP Transmission Control Protocol /
Internet Protocol


Four layer model


LINK (NETWORK ACCESS)


NETWORK (INTERNET)


TRASPORT (HOST
-
TO
-
HOST)


APPLICATION (PROCESS)



Introduction to Distributed Systems

15

Distributed Computing Models

-
Client/Sever


The Client/Server Model


clients issue requests, servers performs the
tasks and reply to the clients


session layer in the ISO/OSI model


implemented through IPC (InterProcess
Communication such as sockets or RPCs)


common implementation for modern file
servers



Introduction to Distributed Systems

16

Distributed Computing Models

-

Peer
-
to
-
Peer Model


There is no distinction between clients and
servers


It may be more suitable for some distributed
database applications than the client/server
model


Implemented at Data Link Layer of
ISO/OSI model.

Introduction to Distributed Systems

17

ISO/OSI versus TCP/IP


Study figure 1.4 on p.9, detail box 1.2 on
page 11 and figure 1.5 on page 12.

?
What are the main functions of each layer in
the ISO/OSI model?

?
What are the main functions of the each
layer in the TCP/IP model?

?
What is the relationship between ISO and
TCP layers?

Introduction to Distributed Systems

18

Computer Architecture
Taxonomy (Flynn’72)


SISD (Single Instruction and Single Data Streams
)
-
traditional (von Neumann) model


PC


SIMD (Single Instruction and Multiple Data
Streams)
-

vector machines (synchronous)


CRAY


MIMD (Multiple Instruction and Multiple Data
Streams)
-

multiple fetching (asynchronous)



hypercubes and transputers

Introduction to Distributed Systems

19

Parallel Systems
-

Supercomputers


Consist of multiple processors


Predominantly homogeneous and located
within the same computer


If each processor has its own local memory
then such a system is called a
multi
-
computer
.


If all processors share the same memory then
such a system is called a
multi
-

processor.

Introduction to Distributed Systems

20

How are processors connected
in a parallel system?



Using interconnection network.

Introduction to Distributed Systems

21

Interconnection Networks
-

Bus


Bus (see Fig 1.9)


static, does not require routing


simple


bus can become a bottleneck


example Sequent parallel computer

Introduction to Distributed Systems

22

Interconnection Networks
-

Crossbar


Crossbar (see fig 1.10 p.22)


dynamic and yet simple


size n x n requires n memory modules and n
processors and O(n
2
) switches


multiple processor and access the
interconnection network at the same time

Introduction to Distributed Systems

23

Interconnection Networks
-

Hypercube


Hypercube (see fig 1.11 p.22)


static architecture


k
-
cube refers to an architecture with 2
k
processors


each processor is connected only to those
processors which differ from it by one bit in
binary representation (e.g. processor 00 has a
link to 01 and 10 but NOT 11).

Introduction to Distributed Systems

24

Interconnection Networks
-

Shuffle
-
Exchange


Shuffle
-
exchange (see fig 1.12 p. 23)


switches allow reconfiguration of connection


routing depends on the input to each switch


examples include Omega and Theta
interconnection networks

Introduction to Distributed Systems

25

Parallel Software Paradigms


Replicated code, partitioned data


each processor is given the same exact task to
accomplish but each is working on a different set of
data


Assembly line


each server is given a task that builds upon the task
completed by the previous processor


Tree structured


tasks are divided into subtasks over and over and
distributed to other processors

Introduction to Distributed Systems

26

Real
-
Time Systems


RT system is defined as a computer system
in which correctness depends not only on
the results of computation but also on the
time at which those results are delivered. In
other words timing is very critical and a
deadline failure might have catastrophic
consequences.

Introduction to Distributed Systems

27

Real Time System Types


Soft



Consequences of deadline failure only degrade the
system performance.



Hard


Consequences of deadline failure can be catastrophic.


Firm


Consequences of deadline failure can be tolerated if
very rear cases.

Introduction to Distributed Systems

28

Real Time Systems
-

Continued


Reactive systems versus embedded systems.


Asynchronous events.


Synchronous events.


Isynchronous events.

Introduction to Distributed Systems

29

Distributed Operating System
Requirements


Requires that all involved nodes run a copy
of the same distributed o.s. either
exclusively on its hardware or on top of its
own local o.s. (In the second case the d.o.s.
can be referred to as
midware
.)


It is essential that the system supports
various types of
transparencies
.

Introduction to Distributed Systems

30

Transparency types


Naming transparency.


Name does not reflect physical location of
resources


Location transparency.


Physical location of resources cannot be
(easily) determined.


Access transparency.


Local and remote resources cannot be
distinguished.

Introduction to Distributed Systems

31

Transparency types
-

continued


Migration Transparency


jobs and files can be migrated without user’s
knowledge


Replication Transparency.


Concurrency and Parallelism Transparency.


Failure Transparency.


Failures of one node should not affect others.