Sie sind auf Seite 1von 23

Objectives

To Learn the concept and characteristics of Distributed System.

History
From 1945 until mid- 1980s, computers were large and expensive. A mainframe costs millions A minicomputer costs tens of thousands Start from mid- 1980 Microprocessors Computer networks, LAN, and WAN Results: Distributed systems

Definition

Tanenbaum: A distributed system is a collection of independent computers that appear to the user of the system as a single computer.

Definition

Coulouris: A System in which hardware or software components located at networked computers communicate and coordinate their actions only by message passing.
Hardware: autonomous machines (CPU, disk, printer, network capacity, memory, camera etc) Software: Web pages, databases, files etc. Network : ATM, FDDI, Ethernet etc. Message Passing: RPC, IPC, Socket, RMI, MPI etc.

Example of Distributed System


Internet Intranet Mobile System-PDA, mobile phone Distributed Database System: DDBS Distributed Network File System: NFS Distributed Operating System Web etc

Web and Internet


Web is a collection of software and protocols that has been installed on most of the computers on the Internet
A collection of documents, most of which are connected by links

Internet is a huge collection of computers and other devices connected in a communications network. Intranet is A portion of the Internet that is separately administered and has a boundary that can be configured to enforce local security policies;
Connected to the rest of the Internet via a router; Employ firewalls to prevent unauthorized access from outside;

A typical portion of the Internet

intranet % %

ISP

backbone

satellite link desktop computer: server: network link:

A typical intranet
em ail s erv er print and other serv ers Local area network

Desktop computers

Web serv er

em ail s erv er File serv er print other s erv ers the res t of the Internet router/firewall

DS Advantages
Advantages Over Independent PCs
Data sharing: allow many users access to a common database Device sharing: allow many users to share expensive peripherals like printer. Communication: make human- to- human communication easier, e. g., email Flexibility: spread the workload over the available machines in the most cost effective way

Disadvantages
Software: little software exists at present for distributed systems Networking: the network can saturate or cause other problems Security: easy access to secret data.

Advantages
Advantages Over Centralized Systems
Economics: microprocessors offer a better price/ performance than mainframes Speed: a distributed system may have more total computing power than a mainframe Inherent distribution: some applications involve spatially separated machines Reliability: if one machine crashes, the system as a whole can still survive Incremental growth: computing power can be added in small increments.

Portable and handheld devices in a distributed system


Laptop Computers, PDA, mobile phone etc.

Internet

Host intranet

Wireless LAN

WAP gateway

Home intranet

Mobile phone Printer Camera Laptop Host s ite

Web servers and web browsers


www.google.com Web servers www.cdk3.net www.w3c.org File system of www.w3c.org http://www.w3c.org/Protocols/Activity.html Protocols http://www.google.comlsearch?q=kindberg Browsers

Internet
http://www.cdk3.net/

Activity.html

Characteristics (Challenges) of DS:


The Challenges of the design and implementation of DS Client Server model Heterogeneity Openness Security Scalability Failure handling Concurrency Transparency

Heterogeneity

Systems must work on :


different networks: FDDI, ATM Ethernet etc different hardwires: computer, printer, PDA, TV etc different operating System: WinNT, MacOS, Unix etc different programming language: c++, java and also implementation by different people.

How? use standards.

Openness

extensibility, the system can be extended and reimplemented in various ways


Adding new:
Hardware (Ex. more computers) Software (Ex. support for transfer of multimedia) Services (Ex. directory, naming services ) and sharing resources (Ex. bandwidth for stream)

How? publishing interfaces

Security

Confidentiality :protection against disclosure to unauthorized individuals Integrity: protection against alteration or corruption Availability: protection against interference with the means to access the resources

Scalability
remain effective when there are significant increase in number of resources and users (ex. Internet) Controlling the cost of physical resources Controlling the performance loss Preventing resources from running out Avoid bottlenecks
Data Partition: multiple servers Replication

Failure handling Failure detection is partial (difficult)


Detecting failure (some fails are impossible to detect) Masking failure, e.g. retransmission Tolerating failure Recovery from failure, e.g. role back in databases/transactions Redundancy (duplicate data)

Concurrency
Services and resources are shared by the clients in a Distributed System Correct synchronization is essential Example: online shopping

Transparency
The users think of the system as a single computer. Example: SISE has a network of workstations. When a user types a command, the system could look for the best place to execute the command

Access transparency: enables local and remote resources to be accessed using identical operations. Location transparency: enables resources to be accessed without knowledge of their location. Concurrency transparency: enables several processes to operate concurrently using shared resources without interference between them. Replication transparency: enables multiple instances of resources to be used to increase reliability and performance without knowledge of the replicas by users or application programmers.

Transparency
Failure transparency: enables the concealment of faults, allowing users and application programs to complete their tasks despite the failure of hardware or software components. Mobility transparency: allows the movement of resources and clients within a system without affecting the operation of users or programs. Performance transparency: allows the system to be reconfigured to improve performance as loads vary. Scaling transparency: allows the system and applications to expand in scale without change to the system structure or the application algorithms

Summary
Definition of DS Examples of DS DS Advantages Challenges of the design
Heterogeneity Openness Security Scalability Failure handling Concurrency Transparency

Das könnte Ihnen auch gefallen