You are on page 1of 21

Distributed Systems

Introduction
Definitions of Distributed System

• Distributed system as one in which hardware or


software components located at networked
computers communicate and coordinate their
actions only by passing messages.

• A distributed system is a collection of


independent computers that appear to the users
of the system as a single computer.
Centralized vs Distributed
Computing
Differentiation with parallel systems

• Multiprocessor systems
– Shared memory
– Bus-based interconnection network
– E.g. SMPs (symmetric multiprocessors)
with two or more CPUs

• Multicomputer systems / Clusters


– No shared memory
– Homogeneous in hard- and software
• Massively Parallel Processors (MPP)
– Tightly coupled high-speed network
• PC/Workstation clusters
– High-speed networks/switches-based
connection.
Need for Distributed Systems

• Functional Separation:
– Existence of computers with different capabilities and
purposes:
• Clients and Servers
• Data collection and data processing
• Inherent distribution:
– Information:
• Different information is created and maintained by
different people
(e.g., Web pages)
– People
• Computer supported collaborative work (virtual teams,
engineering, virtual surgery)
– Retail store and inventory systems for supermarket
chains (e.g., Coles, Woolworths)
Need for Distributed Systems (contd.)
• Power imbalance and load variation:
– Distribute computational load among different
computers.
• Reliability:
– Long term preservation and data backup (replication)
at different locations.
• Speed
– Distributed system may have more total computing
power
• Scalability
– Computing power can be added in small increments
• Economies:
– Sharing a printer by many users and reduce the cost
of ownership.
– Building a supercomputer out of a network of
computers.
Distributed System- Architecture
Examples of Distributed Systems

• They (DS) are based on familiar and widely used


computer networks:
– Internet
– Intranets, and
– Wireless networks

• Example DS:
– Web (and many of its applications like Facebook)
– Data Centers and Clouds
– Wide area storage systems
– Banking Systems
Selected application domains and associated
networked applications
Finance and commerce eCommerce e.g. Amazon and eBay, PayPal,
online banking and trading
The information society Web information and search engines, ebooks,
Wikipedia; social networking: Facebook and
MySpace.
Creative industries and entertainment online gaming, music and film in the home, user-
generated content, e.g. YouTube, Flickr
Healthcare health informatics, on online patient records,
monitoring patients
Education e-learning, virtual learning environments; distance
learning
Transport and logistics GPS in route finding systems, map services:
Google Maps, Google Earth
Science The Grid as an enabling technology for
collaboration between scientists
Environmental management sensor technology to monitor earthquakes, floods
or tsunamis
Trends in Distributed Systems

• Pervasive networking technology.


• Ubiquitous and mobile computing.
• Distributed multimedia Systems.
• Distributed computing as a utility (Cloud)
Pervasive Computing

intranet 

 ISP

backbone

satellite link

desktop computer:
server:
network link:

The Internet is a vast collection of computer networks of many


different types and hosts various types of services.
Mobile and ubiquitous computing

• Portable and handheld devices in a distributed system


• Supports continued access to Home intranet resources via wireless
and provision to utilize resources (e.g., printers) that are
conveniently located (location-aware computing).
Distributed Multimedia systems

• Images, Test messages


• Should be able to store and locate audio or video files, to
transmit them across the network.
• Live or pre-recorded television broadcasts, access to film
libraries offering video-on-demand services.
• Webcasting is the ability to broadcast continuous
– media, typically audio or video, over the Internet
Example: Sykpe
Distributed computing as a utility

• Physical resources such as storage and processing can be


made available to networked computers, removing the
need to own such resources on their own.
• Software services can also be made available across the
global Internet.
Cloud Computing
Focus on Resource Sharing

• Sharing data in the form of a shared database or a set of web


pages.

• Computer-supported cooperative working (CSCW)

– A group of users who cooperate directly share resources


such as documents in a small, closed group.

• Service: Manages a collection of related resources and


presents their functionality to users and applications
(operations on files- read, write, delete)
Focus on Resource Sharing (contd.)

• Server: A running program(a process) on a networked computer that


accepts requests from programs running on other computers to
perform a service

• Client – Server

– Client (active- making request)

– Server ( Passive – Process request)

• Remote Invocation

• Distributed system written in OO- language

– Client object invoking a method upon server object.


Resource sharing and the Web: open protocols,
scalable servers, and pluggable browsers

Web servers Browsers


http://www.google.comlsearch?q=obama
www.google.com

www.cdk5.net Internet
http://www.cdk5.net/

www.w3c.org

File system of http://www.w3.org/standards/faq.html#conformanc


www.w3c.org standards e

faq.html
Consequences of Distributed Systems

• Computers in distributed systems may be on


separate continents, in the same building, or the
same room. DSs have the following
consequences:
– Concurrency – each system is autonomous.
• Carry out tasks independently
• Tasks coordinate their actions by exchanging messages.

– Heterogeneity

– No global clock

– Independent Failures
Summary
• Distributed Systems are everywhere
• The Internet enables users throughout the world to access its
services wherever they are located
• Resource sharing is the main motivating factor for
constructing distributed systems
• Construction of DS produces many challenges:
– Heterogeneity, Openness, Security, Scalability, Failure
handling, Concurrency, and Transparency
• Distributed systems enable globalization:
– Community (Virtual teams, organizations, social networks)
– Science (e-Science)
– Business (e-Bussiness)
Test your understanding

1. Define distributed systems.


2. What are the challenges to be faced during the
construction of distributed systems?
3. Use the World Wide Web as an example to
illustrate the concept of resource sharing, client
and server.

You might also like