Professional Documents
Culture Documents
Charectarestics of DS-1
Charectarestics of DS-1
1
Definition of Distributed System
Distributed applications
Middleware service
Network
2
Definition of Distributed System
"a collection of autonomous computers linked by a
computer network with distributed system software"
"a collection of processors interconnected by a
communication network in which each processor has
its own local memory and other peripherals and the
communication between any two processors of the
system takes place by message passing over the
communication network"
"one in which hardware or software components
located at networked computers communicate and
coordinate their actions only by passing messages"
3
Definition of Distributed System
In other words, to the user, a DS looks like a single system
a virtual uniprocessor
The user doesn't know (or care)
- where (on what machine) files are located
- where a job is executed
A Distributed System is made of several computers which
have no shared memory
have no shared clock
communicate with each other via messages
have their own operating systems
4
Advantages
Why distributed systems
Resource sharing
Communication
Inherent distribution
Speed
10000 CPU running at speed of 50 MIPS
500000 MIPS
Economy
Incremental growth
Reliability
5
Characteristics of DS
Concurrency
Distributed systems are concurrent systems
Every software or hardware components is autonomous
Process
Concurrent tasks
A and B are concurrent if either A can happen before B or B
can happen before A
Synchronization and coordination by message passing
Lack of global clock
Coordination and time
Independent failure
Failures of individual processes may remain undetected
6
Examples of Distributed Systems
1. The internet
Heterogeneous network of computers and
applications
Implemented through Internet protocol
intranet
ISP
backbone
satellite link
desktop computer:
server:
network link:
7
Internet
Public Network
Very large Distributed system.
Collection of computer networks
Enables programs to communicate over arbitrary distance
Makes available services
– mail, file transfer, documents, telephony, ...
Communication via message passing according to Internet protocols
- (IP, UDP, TCP, ICMP, SMTP, FTP, ...)
A back bone is a network link with high transmission capacity,
employing satellite connections ,fibre optic cables and other fibre optic
circuits.
Infrastructure: backbones, routing, naming
Open ended services -Extensible (new services, new protocols)
Open communication channels (security!)
Technology applicable to other distributed systems
Multimedia services such as music , radio and TV ,video conferences
8
available in the internet.
Examples of Distributed Systems
2. Distributed multimedia
•Often use the Internet infrastructure
•Characteristics
•Heterogeneous data sources that need to be synchronized
in real time
•Video, Audio, Text
•Often: distribution services
•multicast
•Examples
•Tele teaching, Video conferencing
9
Examples of Distributed Systems
3. Intranet
•Private network
•Locally administered network
•Interfaces with the Internet via router
•Firewall (protects from unauthorized access and harmful
programs) email server Desktop
computers
print and other servers
Local area
Issues Web server network
Primary concerns:
• resource discovery
• efficient use of limited bandwidth
• security (privacy)
11
Mobile and Ubiquitous
computing
Difference between mobile and ubiquitous computing:
Ubiquitous computing used in single environment such as
home or hospital.
Mobile computing has advantage when using different devices
such as laptops and printers
Internet
Mobile
phone
Printer Laptop
Camera Host site
12
Resource Sharing
It is easy to overlook the significance of:
– printer sharing
– disk/file sharing
– application sharing (search engines)
13
Resource sharing and the Web
Resource sharing pattern
Service
•Software that manages a collection of resources
and presents them to users and applications via
a well-defined interface
Server
-a running program (process) on a networked
computer that accepts requests from programs
running on other computers to perform a service
and respond appropriately.
14
World Wide Web
• The World Wide Web
15
The Web is "Open"
•Can be extended and implemented in new
ways without disturbing its existing functionality
● URL
17
Advantages of Distributed
Systems
Performance: very often a collection of processors can provide higher
performance (and better price/performance ratio) than a centralized computer.
Reliability (fault tolerance): if some of the machines crash, the system can
survive.
Networking problems:
Security problems:
19
Challenges
A number of challenges arises:
• Heterogeneity
• Openness
• Security
• Scalability
• Failure handling
• Concurrency of components
• Transparency
20
Challenges
Heterogeneity
Network (Ethernet, token ring, ISDN,...)
Computing hardware (data representation)
Operating systems (different APIs to protocols)
Programming languages (data structures, APIs)
Applications by different developers (data exchange standards)
Middleware
Software layer which provides uniform computational model for use by
programmers of servers and distributed applications.
Masks the heterogeneity of underlying networks, hardware, operating
systems and programming Languages.
Ex: (CORBA, Java RMI, ODBC,Web Services...)
21
Heterogeneity and mobile code
Mobile code refers to the code that can be sent from
one computer to another computer and run at the
destination.
Ex: Java applets
Usually code written for one computer is not suitable
to execute on another computer because the
instruction set depends on h/w and m/c code.
Ex: windows executable file is not suitable for linux.
Resolved by virtual machine concept.
Virtual m/c approach provides a way of making the
code executable on any h/w. The compiler generates
code for virtual m/c instead for a particular h/w.
22
Challenges
Openness
This is a characteristic that determines whether the system can
be extended and reimplemented in various ways.
ODS are the systems that supports resource sharing and the
services are extensible either at the h/w level or at the s/w
level.
Construction
Heterogeneous components
24
Challenges
Security
Confidentiality
Integrity
Availability
Example
A doctor might request access to hospital patient
data
In electronic commerce and banking, users send
their credit card numbers across the internet
Current security challenges
Denial of service attack
Security of mobile code
25
Security
Confidentiality
- Protection against disclosure to unauthorized individual.
E.g. ACLs (access control lists) to provide authorized access to
information.
Integrity
-Protection against alternation or corruption.
E.g. changing the account number or amount value in a money order
Availability
-Protection against interference targeting access to the resources.
E.g. denial of service (DoS, DDoS) attacks
Non-repudiation
-Proof of sending / receiving an information E.g. digital signature
Security Mechanism:
- Encryption E.g. Blowfish, RSA
- Authentication E.g. password, public key authentication
- Authorization E.g. access control lists 26
Challenges
Scalability
System should work efficiently at many different
scales, ranging from a small Intranet to the Internet.
28
Challenges
Scalability
Difficult to achieve
Help Replicated Data
Help Caching
Help Multiple Servers
Help Tasks Performed Concurrently
29
Challenges
Failure handling
Detecting failure
Checksum can be used to detect corrupted
data
System crash (impossible)
Masking
Retransmission
Redundant storage
Tolerating failure
Exception handling (timeout when waiting for
web source)
30
Challenges
Failure handling
Recovery from failure
Roll back
Redundancy
Redundant routes in network
Replication of name tables in multiple domain
name servers
Database replication
Availability
Measure of the proportion of the time a server
is available
31
Challenges
Concurrency
There's always a possibility that several clients will attempt to
access a shared resource at the same time
Avoidance of deadlock 32
Challenges
Transparency
Defined as the concealment from the user
and the applications programmer of the
separation of components in a distributed
system, so that the system is perceived as a
whole rather than as a collection of
independent components
35