0% found this document useful (0 votes)
9 views17 pages

Lect 01,2

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views17 pages

Lect 01,2

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Academy of Engineering and

Medical Sciences
Computer Engineering

Sem (10)

Distributed System
Lecture 1,2

Dr. Mutaz Hamed


Distributed System
Aims:
➢Many of the most important and visible uses of computer
technology rely on distributed computing.
➢This course unit aims to introduce students to the
principles, techniques and methods of distributed
computing in sufficient breadth and depth for it to act as a
foundation for the exploration of specific topics in more
advanced course units.
➢The course unit assumes that students have already a
solid understanding of the main principles of computing
within a single machine and that they have a rudimentary
understanding of the issues related to machine
communication and networking. 2
Definitions

➢System: “A complex whole; a set of connected


parts; an organized assembly of resources and
procedures (collection of …) united and regulated
by interaction or interdependence to accomplish a
set of specific functions.”

3
Distributed System Definitions

➢A collection of independent computers that appears to


its users as a single coherent system.

➢A system in which hardware and software components


of networked computers communicate and coordinate
their activity only by passing messages.

4
Distributed System definition
A computing platform built with many computers that:
➢Operate concurrently;
➢Are physically distributed; (have their own failure modes)
➢Are linked by a network;
➢Have independent clocks

“You know you have a distributed system when the


crash of a computer you’ve never heard of stops you
from getting any work done.”
Leslie Lamport
(http://en.wikipedia.org/wiki/Leslie_Lamport)
5
Why do we have distributed systems?

➢People are distributed but need to work together…


➢Hardware needs to be physically close to people (who
are distributed)…
➢Information is distributed but needs to be shared
(trustworthily)…
➢Hardware can be shared (increases computing power
by doing work in parallel; more efficient resource
utilisation)…

6
Examples of distributed systems…
➢Intra-nets, Inter-net, WWW, email, …
➢DNS (Domain Name System)
➢Hierarchical distributed database
➢Distributed supercomputers, Grid/Cloud computing
➢Electronic banking
➢Airline reservation systems
➢Peer-to-peer networks
➢Sensor networks
➢Mobile and Pervasive Computing

7
Evolution

➢Parallel Computing was a hot topic in the 70s and 80s.


(the vision existed since the 1920s)
➢Cluster computers started dominating in the 1990s.
➢Early distributed systems:
➢Airline reservation systems
➢Banking systems
➢The real proliferation came with developments in
network technology and the WWW (early 90s)

8
The 8 fallacies of distributed computing
• It is a common mistake for programmers, when they first
build a distributed application, to make the following 8
assumptions. All prove to be false in the long run and all
cause big trouble and painful learning experiences:

1. The network is reliable


2. Latency is zero
3. Bandwidth is infinite
4. The network is secure
5. Topology doesn’t change
6. There is one administrator
7. Transport cost is zero
8. The network is homogeneous
9
Fallacy 1: The Network is Reliable

• Hardware may fail!


• Power failures; Switches have a mean time between failures.
(e.g., a router between you and the server you get data from)
• The implications:
• Hardware: weigh the risks of failure versus the required investment
to build redundancy.
• Software: we need reliable messaging: be prepared to retry
messages, acknowledge messages, reorder messages (do not
depend on message order), verify message integrity, and so on.

10
Fallacy 2: Latency is zero
Latency (not bandwidth):
➢how much time it takes for data to move from one place to
another: measured in time.
➢The minimum round-trip time between two points on earth is
determined by the maximum speed of information transmission: the
speed of light. At 300,000 km/sec, it will take at least 30msec to send a
ping from Europe to the USA and back.

➢The implications:
➢You may think all is ok if you deploy your application on LANs, but you
should strive to make as few calls over the network as possible (and
transfer as much data out in each of these calls).
11
Fallacy 3: Bandwidth is infinite
• Bandwidth:
➢how much data you can transfer over a period of time (may be
measured in bits/second)

➢It constantly grows, but so does the amount of information we are


trying to squeeze through it! (VoIP, videos, verbose formats such as XML,
…)

➢Bandwidth may be lowered by packet loss (usually small in a LAN): we


may want to use larger packet sizes.

➢The implications:
➢Compression; try to simulate the production environment to get an estimate for
your needs.
12
Fallacy 4: The Network is Secure

“In case you landed from another planet, the network is


far from being secured”
(common wisdom)
➢The Implications:
➢You may need to build security into your
applications from Day 1.
➢As a result of security considerations, you might
not be able to access networked resources,
different user accounts may have different
privileges, and so on…

13
Fallacy 5: Topology doesn’t change

➢The topology doesn’t change as long as we stay in the


lab.
➢In the wild, servers may be added and removed often,
clients (laptops, wireless ad hoc networks) are coming
and going: the topology is changing constantly.

➢The implications:
➢Do not rely on specific endpoints or routes.
➢Abstract the physical structure of the network: the most
obvious example is DNS names as opposed to IP addresses.
➢ (refresh your memory about the Internet Domain Name System – DNS)

27-Aug-22 COMP28112 Lecture 1 14


Fallacy 6: There is one administrator

➢Unless we refer to a small LAN, there will be different


administrators associated with the network with different
degrees of expertise.

➢Don’t underestimate the ‘human’ (‘social’) factor!

15
Fallacy 7: Transport Cost is Zero

• Going from the application layer to the transport


layer (2nd highest in the five layer TCP/IP reference
model) is not free:
• Information needs to be serialised (marshalling) to
get data onto the wire.
• The cost (in terms of money) for setting and running
the network is not zero. Have we leased, for
instance, the necessary bandwidth?

16
Fallacy 8: The Network is Homogeneous
• (homogeneous = of the same kind; uniform).
• Even a home network may connect a Linux PC and a
Windows PC. A homogeneous network today is the
exception, not the rule!
• Implications:
• Interoperability will be needed.
• Use standard technologies (not proprietary protocols),
such as XML (a W3C recommended general-purpose
markup language – a markup language combines text
and extra information about the text – designed to
facilitate the sharing of data across different
information systems. Its drawback? It’s slow…)

17

You might also like