SlideShare a Scribd company logo
HY556 - Distributed Systems
Professor: Panagiota Fatourou
Spring 2011
Definition of a Distributed System (1)
In this course, a distributed system will be:
A collection of independent components that
communicate and coordinate their actions by
passing messages. This collection appears to its
users as a single coherent system.
Examples
Internet
Intranet (portion of the Internet managed by an
organization)
Mobile and ubiquitous computing
Consequences of the definition
Concurrency
Concurrent program execution
Sharing of resources
Increase of system capacity by adding more resources
No global clock
There are limits to the accuracy with which computers
may synchronize their clocks
Independent failures
Computer isolation
Node or link crashes
Byzantine failures
Resources
The term resource characterizes the
range of things that can usefully be shared
in a distributed system.
Hardware Components
Disks, printers, etc.
Software-defined entities
Files, databases, data objects of all kinds, etc.
Examples of Distributed Systems
A typical portion of the Internet
intranet
ISP
desktop computer:
backbone
satellite link
server:
¤
network link:
¤
¤
¤
Examples of Distributed Systems - A typical Intranet
the rest of
email server
Web server
Desktop
computers
File server
router/firewall
print and other servers
other servers
print
Local area
network
email server
the Internet
Mobile and Ubiquitous Computing- Portable
and handheld devices in a distributed system
Mobile Computing
Laptops
Handheld devices (personal digital assistants, mobile phones,
video cameras, digital cameras
Wearable devices (smart watches)
Location-aware or content-aware computing
Ubiquitous Computing
The term ubiquitous is intended to suggest that small computing
devices will become so pervasive in everyday objects that their
computational behavior will be transparently tied up with their
physical function.
Devices embedded in appliances (washing machines, wi-fi systems,
cars, etc.)
universal remote control devices
Watch when the washing is done
Mobile and Ubiquitous Computing- Portable and
handheld devices in a distributed system
Laptop
Mobile
Printer
Camera
Internet
Host intranet Home intranet
WAP
Wireless LAN
phone
gateway
Host site
Resource Sharing
Service: a distinct part of a computer system that manages a
collection of related resources and present their functionality
to users and applications.
File service, printing services, electronic payment services,
etc.
A server is a running program (a process) on a distributed
system that accepts requests from programs and responds
appropriately.
The requesting processes are called clients. Clients invoke
operations.
Remote invocation: a complete interaction between a client and a
server.
Examples
WWW (web browsers, web servers)
Email
Networked printers
World Wide Web
WWW allows to the user
to retrieve and view documents of many types (audio,
video, etc.)
to interact with an unlimited set of services
Hypertext structure
links (hyperlinks) from documents to other documents
Open system
Operation is based on communication standards and
document standards that are freely published and well
implemented.
(many types of browsers, many types of servers, etc.)
Open to the types of resources that can be published or
shared on it
New-image formats can be supported
(helper applications and plug-ins)
World Wide Web
HyperText Markup Language (HTML)
<IMG
SRC=http://www.cdk4.net/WebExample/Images/earth.jpg
<P>
Welcome to Earth! Visitors may also be interested in taking a
look at the
<A HREF=http://www.cdk4.net/WebExample/moon.html>
Moon</A>
</P>
Contents of a web page
.html
web server name
tags
URL
World Wide Web
Uniform Resource Locators (URLs)
Every URL has two top-level components
Scheme: scheme-specific-identifier
Common schemes: mailto:, ftp:, http:, nntp: (a Usenet
newsgroup), mid: (e-mail message)
New types of resources can be added
<name of new-type of resource>: (a protocol is needed
for accessing the new type of resources -> add a
plug-in: gives the capability to a browser to use the
new protocol
Web servers and web browsers
Internet
BrowsersWeb servers
www.google.com
www.cdk3.net
www.w3c.org
Protocols
Activity.html
http://www.w3c.org/Protocols/Activity.html
http://www.google.comlsearch?q=kindberg
http://www.cdk3.net/
File system of
www.w3c.org
http://servername[:port] [/pathname] [?query] [#fragment]
~username, ~/public_html, index.html
World Wide Web
Client-server system with standard rules for
interaction (HyperText Transfer Protocol-HTTP)
Request-reply interaction
Content types
Not all browsers manage all types of content
Browsers include a list of the type of contents they are
interested in when they issue a request
The server includes the content type in the reply message
(the strings that denote the content type are called MIME
types -> standardized
One resource per request
Simple access control
World Wide Web
Dynamic pages (forms)
URL designates a program on the server
Common Gateway Interface (CGI): program that web
servers run to generate content for their clients
Java-scripts (are downloaded with a web form to
provide better-quality interaction with the user)
Applet: is of more general functionality than Java-
scripts. Applets are downloaded automatically and run
when the browser fetches a corresponding web page.
May access the network
provide customized user interfaces
JAVA based
World Wide Web
Dangling links
Users often get lost in the hyperspace
Search engines
Scalability issues for popular web servers
Challenges - Heterogeneity
Heterogeneity applies to all of the following:
Networks
Use Internet protocols for communication
Computer hardware
Data types may be represented in different ways on
different sorts of hardware
Operating systems
The interface for implementing the internet protocol is
not the same (messages in Unix or in Windows)
Programming languages
Different representations for characters and data
structures (arrays, structs, etc.)
Implementations by different developers
Standards need to be agreed and adopted
Challenges - Heterogeneity
Middleware
A software layer that provides a
programming abstraction as well as
masking the heterogeneity of the
underlying networks, hardware, operating
systems and programming languages.
CORBA (Common Object Request Broker)
Implemented over the Internet protocols
Provides a uniform computational model for use
by the programmers of servers and distributed
applications.
Challenges - Heterogeneity
A distributed system organized as middleware.
Note that the middleware layer extends over multiple machines.
Challenges - Heterogeneity
Mobile Code
Applets
Virtual Machine
Provides a way of making code executable on any
hardware
The compiler generates code for a virtual machine (of a
particular language) instead of hardware order code
The virtual machine of the language needs to be
implemented once for each type of hardware to enable
programs to run.
Challenges - Openness
Determines whether the system can be extended and re-
implemented in various ways.
Expresses the degree to which new resources sharing services
can be added and be made available for use by client programs.
Is achieved by providing appropriate specification and
documentation of the key software interfaces of the
components of a system
Example
Documents of the Internet protocols -> RFCs (Requests For
Comments)
Provide a uniform communication mechanism and published
interfaces for access to shared resources.
Each added component should conform to the published
standard.
Challenges - Security
Confidentiality
Protection against disclosure to unauthorized
users
Integrity
Protection against alteration or corruption
Availability
Protection against interference with the means
to access the resources
Denial of service attacks
Security of mobile code
Challenges - Scalability
Doing routing based on complete informationCentralized algorithms
A single on-line telephone bookCentralized data
A single server for all usersCentralized services
ExampleConcept
Examples of scalability limitations.
Challenges - Scalability
Controlling the cost of physical resources
As the demand for a resource grows, it should be
possible to extend the system, at reasonable cost, to
meet it.
Controlling the performance loss
Algorithms that use hierarchical structures scale
better than those that use linear structure.
Preventing software resources running out
IP Addresses (32 bits are no longer enough) -> 128 bit
Internet addresses
Avoiding performance bottlenecks
Use of decentralized algorithms
Caching and replication (frequently accessed shared
resources)
Challenges – Transparency
Hide the failure and recovery of a resourceFailure
Enables multiple instances of resources to be used to increase
reliability and performance without knowledge of the replicas by
users or application programmers
Replication
Enables several processes to operate concurrently using shared
resources without interference between them.
Concurrency
Allows the system and applications to expand in scale without
change to the system structure or the application algorithms.
Scaling
Allows the system to be reconfigured to improve performance as
loads vary.
Performance
Allows the movement of resources and clients within a system
without affecting the operation of users or programs.
Mobility
Enables resources to be accessed without knowledge of their
physical or network location
Location
Enables local and remote resources to be accessed using
identical operations
Access
DescriptionTransparency
Challenges – Failure Handling
Detecting failures
Use of checksums to detect corrupted data
Masking failures
Messages can be re-transmitted when they fail to arrive
File data can be written to a pair of disks to ensure availability
Tolerating failures
Involve the user in tolerating failures rather than having him/her
waiting for ever (web browsers that fail in contacting the web
server)
Recovery from failures
Design of software so that the state of permanent data can be
recovered or “rolled back” after a server crash.
Redundancy
two different routes between any two routers in the Internet
replicate the name table in DNS
replication of databases)
Challenges – Concurrency
Any object that represents a shared
resource must be responsible for ensuring
that it operates correctly in a concurrent
system
Example: banking accounts
Synchronization of operations to ensure
data consistency
An Example Client and Server (1)
The header.h file
used by the client
and server example
An Example Client and Server (2)
A sample server.
An Example Client and Server (3)
1-27 b
A client using
the server to
copy a file

More Related Content

What's hot

Distributed web based systems
Distributed web based systemsDistributed web based systems
Distributed web based systems
Reza Gh
 
chapter 2 architecture
chapter 2 architecturechapter 2 architecture
chapter 2 architecture
Sharda University Greater Noida
 
CS9222 ADVANCED OPERATING SYSTEMS
CS9222 ADVANCED OPERATING SYSTEMSCS9222 ADVANCED OPERATING SYSTEMS
CS9222 ADVANCED OPERATING SYSTEMS
Kathirvel Ayyaswamy
 
Chapter 8
Chapter 8Chapter 8
Chapter 8
webhostingguy
 
Unit 5 - Designing Internet Systems and Servers - IT
Unit 5 - Designing Internet Systems and Servers - ITUnit 5 - Designing Internet Systems and Servers - IT
Unit 5 - Designing Internet Systems and Servers - IT
Deepraj Bhujel
 
Ds
DsDs
Ds
HDRS
 
Introduction to Peer-to-Peer Networks
Introduction to Peer-to-Peer Networks Introduction to Peer-to-Peer Networks
Introduction to Peer-to-Peer Networks
Venkatesh Iyer
 
Clientserver
ClientserverClientserver
Clientserver
Madhumithah Ilango
 
3. osi model
3. osi model3. osi model
3. osi model
ShafqatAli503316
 
Oruta phase1 report
Oruta phase1 reportOruta phase1 report
Oruta phase1 report
suthi
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
IJERD Editor
 
Cis 534 Teaching Effectively--tutorialrank.com
Cis 534  Teaching Effectively--tutorialrank.comCis 534  Teaching Effectively--tutorialrank.com
Cis 534 Teaching Effectively--tutorialrank.com
Soaps82
 
QuaP2P P2P Tutorial 2006
QuaP2P P2P Tutorial 2006QuaP2P P2P Tutorial 2006
QuaP2P P2P Tutorial 2006
Kalman Graffi
 
CIS 534 Life of the Mind/newtonhelp.com   
CIS 534 Life of the Mind/newtonhelp.com   CIS 534 Life of the Mind/newtonhelp.com   
CIS 534 Life of the Mind/newtonhelp.com   
bellflower9
 
The iso&amp;osi reference model
The iso&amp;osi reference modelThe iso&amp;osi reference model
The iso&amp;osi reference model
ivy buncaras
 
SOFTWARE AND WEB TECHNOLOGY
SOFTWARE AND WEB TECHNOLOGYSOFTWARE AND WEB TECHNOLOGY
SOFTWARE AND WEB TECHNOLOGY
Rasha Kamal
 
Lecture - Network Technologies: Peer-to-Peer Networks
Lecture - Network Technologies: Peer-to-Peer NetworksLecture - Network Technologies: Peer-to-Peer Networks
Lecture - Network Technologies: Peer-to-Peer Networks
James Salter
 
Chapter08 -- network operating systems and windows server 2003-based networking
Chapter08  -- network operating systems and windows server 2003-based networkingChapter08  -- network operating systems and windows server 2003-based networking
Chapter08 -- network operating systems and windows server 2003-based networking
Raja Waseem Akhtar
 
FIWARE Global Summit - OpenMTC - A Open Source Implementation of the oneM2M S...
FIWARE Global Summit - OpenMTC - A Open Source Implementation of the oneM2M S...FIWARE Global Summit - OpenMTC - A Open Source Implementation of the oneM2M S...
FIWARE Global Summit - OpenMTC - A Open Source Implementation of the oneM2M S...
FIWARE
 
Mingyang essay2002
Mingyang essay2002Mingyang essay2002
Mingyang essay2002
avysvdsywvdw
 

What's hot (20)

Distributed web based systems
Distributed web based systemsDistributed web based systems
Distributed web based systems
 
chapter 2 architecture
chapter 2 architecturechapter 2 architecture
chapter 2 architecture
 
CS9222 ADVANCED OPERATING SYSTEMS
CS9222 ADVANCED OPERATING SYSTEMSCS9222 ADVANCED OPERATING SYSTEMS
CS9222 ADVANCED OPERATING SYSTEMS
 
Chapter 8
Chapter 8Chapter 8
Chapter 8
 
Unit 5 - Designing Internet Systems and Servers - IT
Unit 5 - Designing Internet Systems and Servers - ITUnit 5 - Designing Internet Systems and Servers - IT
Unit 5 - Designing Internet Systems and Servers - IT
 
Ds
DsDs
Ds
 
Introduction to Peer-to-Peer Networks
Introduction to Peer-to-Peer Networks Introduction to Peer-to-Peer Networks
Introduction to Peer-to-Peer Networks
 
Clientserver
ClientserverClientserver
Clientserver
 
3. osi model
3. osi model3. osi model
3. osi model
 
Oruta phase1 report
Oruta phase1 reportOruta phase1 report
Oruta phase1 report
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
Cis 534 Teaching Effectively--tutorialrank.com
Cis 534  Teaching Effectively--tutorialrank.comCis 534  Teaching Effectively--tutorialrank.com
Cis 534 Teaching Effectively--tutorialrank.com
 
QuaP2P P2P Tutorial 2006
QuaP2P P2P Tutorial 2006QuaP2P P2P Tutorial 2006
QuaP2P P2P Tutorial 2006
 
CIS 534 Life of the Mind/newtonhelp.com   
CIS 534 Life of the Mind/newtonhelp.com   CIS 534 Life of the Mind/newtonhelp.com   
CIS 534 Life of the Mind/newtonhelp.com   
 
The iso&amp;osi reference model
The iso&amp;osi reference modelThe iso&amp;osi reference model
The iso&amp;osi reference model
 
SOFTWARE AND WEB TECHNOLOGY
SOFTWARE AND WEB TECHNOLOGYSOFTWARE AND WEB TECHNOLOGY
SOFTWARE AND WEB TECHNOLOGY
 
Lecture - Network Technologies: Peer-to-Peer Networks
Lecture - Network Technologies: Peer-to-Peer NetworksLecture - Network Technologies: Peer-to-Peer Networks
Lecture - Network Technologies: Peer-to-Peer Networks
 
Chapter08 -- network operating systems and windows server 2003-based networking
Chapter08  -- network operating systems and windows server 2003-based networkingChapter08  -- network operating systems and windows server 2003-based networking
Chapter08 -- network operating systems and windows server 2003-based networking
 
FIWARE Global Summit - OpenMTC - A Open Source Implementation of the oneM2M S...
FIWARE Global Summit - OpenMTC - A Open Source Implementation of the oneM2M S...FIWARE Global Summit - OpenMTC - A Open Source Implementation of the oneM2M S...
FIWARE Global Summit - OpenMTC - A Open Source Implementation of the oneM2M S...
 
Mingyang essay2002
Mingyang essay2002Mingyang essay2002
Mingyang essay2002
 

Similar to Cs556 section1

characteristicsofdistributedsystem-121004123308-phpapp02.ppt
characteristicsofdistributedsystem-121004123308-phpapp02.pptcharacteristicsofdistributedsystem-121004123308-phpapp02.ppt
characteristicsofdistributedsystem-121004123308-phpapp02.ppt
RamkumardevendiranDe
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.ppt
balewayalew
 
20IT703_PDS_PPT_Unit_I.ppt
20IT703_PDS_PPT_Unit_I.ppt20IT703_PDS_PPT_Unit_I.ppt
20IT703_PDS_PPT_Unit_I.ppt
suganthi66742
 
Lecture no 2 resource sharing
Lecture no 2 resource sharingLecture no 2 resource sharing
Lecture no 2 resource sharing
Gokuldhev mony
 
How does the web or internet work
How does the web or internet workHow does the web or internet work
How does the web or internet work
Anand Bhushan
 
istributed system
istributed systemistributed system
istributed system
abdillahkarine
 
Distributed Systems.pptx
Distributed Systems.pptxDistributed Systems.pptx
Distributed Systems.pptx
salutiontechnology
 
Protecting location privacy in sensor networks against a global eavesdropper
Protecting location privacy in sensor networks against a global eavesdropperProtecting location privacy in sensor networks against a global eavesdropper
Protecting location privacy in sensor networks against a global eavesdropper
Shakas Technologies
 
Protecting location privacy in sensor networks against a global eavesdropper
Protecting location privacy in sensor networks against a global eavesdropperProtecting location privacy in sensor networks against a global eavesdropper
Protecting location privacy in sensor networks against a global eavesdropper
Shakas Technologies
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Ganesan Balasubramanian
 
Module1 Mobile Computing Architecture
Module1 Mobile Computing ArchitectureModule1 Mobile Computing Architecture
Module1 Mobile Computing Architecture
raksharao
 
Introduction to Web Engineering by H.I. Bijoy
Introduction to Web Engineering by H.I. BijoyIntroduction to Web Engineering by H.I. Bijoy
Introduction to Web Engineering by H.I. Bijoy
Md. Hasan Imam Bijoy
 
Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11
koolkampus
 
CN UNIT V.pptx
CN UNIT V.pptxCN UNIT V.pptx
CN UNIT V.pptx
VISWANATHAN R V
 
Web server hardware and software
Web server hardware and softwareWeb server hardware and software
Web server hardware and software
Humma Rashid
 
Chapter 1 introduction
Chapter 1 introductionChapter 1 introduction
Chapter 1 introduction
Tamrat Amare
 
Computer Networking Theory Assignment 1
Computer Networking Theory Assignment 1Computer Networking Theory Assignment 1
Computer Networking Theory Assignment 1
Hasibul Islam Nirob
 
Internet
InternetInternet
Internet
manochitra10
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Zeeshan Bilal
 
distributed os.ppt
distributed os.pptdistributed os.ppt
distributed os.ppt
banu236831
 

Similar to Cs556 section1 (20)

characteristicsofdistributedsystem-121004123308-phpapp02.ppt
characteristicsofdistributedsystem-121004123308-phpapp02.pptcharacteristicsofdistributedsystem-121004123308-phpapp02.ppt
characteristicsofdistributedsystem-121004123308-phpapp02.ppt
 
Chapter 1-Introduction.ppt
Chapter 1-Introduction.pptChapter 1-Introduction.ppt
Chapter 1-Introduction.ppt
 
20IT703_PDS_PPT_Unit_I.ppt
20IT703_PDS_PPT_Unit_I.ppt20IT703_PDS_PPT_Unit_I.ppt
20IT703_PDS_PPT_Unit_I.ppt
 
Lecture no 2 resource sharing
Lecture no 2 resource sharingLecture no 2 resource sharing
Lecture no 2 resource sharing
 
How does the web or internet work
How does the web or internet workHow does the web or internet work
How does the web or internet work
 
istributed system
istributed systemistributed system
istributed system
 
Distributed Systems.pptx
Distributed Systems.pptxDistributed Systems.pptx
Distributed Systems.pptx
 
Protecting location privacy in sensor networks against a global eavesdropper
Protecting location privacy in sensor networks against a global eavesdropperProtecting location privacy in sensor networks against a global eavesdropper
Protecting location privacy in sensor networks against a global eavesdropper
 
Protecting location privacy in sensor networks against a global eavesdropper
Protecting location privacy in sensor networks against a global eavesdropperProtecting location privacy in sensor networks against a global eavesdropper
Protecting location privacy in sensor networks against a global eavesdropper
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Module1 Mobile Computing Architecture
Module1 Mobile Computing ArchitectureModule1 Mobile Computing Architecture
Module1 Mobile Computing Architecture
 
Introduction to Web Engineering by H.I. Bijoy
Introduction to Web Engineering by H.I. BijoyIntroduction to Web Engineering by H.I. Bijoy
Introduction to Web Engineering by H.I. Bijoy
 
Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11Distributed Systems Architecture in Software Engineering SE11
Distributed Systems Architecture in Software Engineering SE11
 
CN UNIT V.pptx
CN UNIT V.pptxCN UNIT V.pptx
CN UNIT V.pptx
 
Web server hardware and software
Web server hardware and softwareWeb server hardware and software
Web server hardware and software
 
Chapter 1 introduction
Chapter 1 introductionChapter 1 introduction
Chapter 1 introduction
 
Computer Networking Theory Assignment 1
Computer Networking Theory Assignment 1Computer Networking Theory Assignment 1
Computer Networking Theory Assignment 1
 
Internet
InternetInternet
Internet
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
distributed os.ppt
distributed os.pptdistributed os.ppt
distributed os.ppt
 

More from farshad33

Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
farshad33
 
Topic 1 lecture 3-application imapct of mas&t
Topic 1 lecture 3-application imapct of mas&tTopic 1 lecture 3-application imapct of mas&t
Topic 1 lecture 3-application imapct of mas&t
farshad33
 
Topic 1 lecture 2
Topic 1 lecture 2Topic 1 lecture 2
Topic 1 lecture 2
farshad33
 
Topic 1 lecture 1
Topic 1 lecture 1Topic 1 lecture 1
Topic 1 lecture 1
farshad33
 
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
farshad33
 
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
farshad33
 
Chapter 6 agent communications--agent communications
Chapter 6 agent communications--agent communicationsChapter 6 agent communications--agent communications
Chapter 6 agent communications--agent communications
farshad33
 
Chapter 5 design patterns for mas
Chapter 5 design patterns for masChapter 5 design patterns for mas
Chapter 5 design patterns for mas
farshad33
 
Cs556 section2
Cs556 section2Cs556 section2
Cs556 section2
farshad33
 
Cs556 section3
Cs556 section3Cs556 section3
Cs556 section3
farshad33
 

More from farshad33 (10)

Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
 
Topic 1 lecture 3-application imapct of mas&t
Topic 1 lecture 3-application imapct of mas&tTopic 1 lecture 3-application imapct of mas&t
Topic 1 lecture 3-application imapct of mas&t
 
Topic 1 lecture 2
Topic 1 lecture 2Topic 1 lecture 2
Topic 1 lecture 2
 
Topic 1 lecture 1
Topic 1 lecture 1Topic 1 lecture 1
Topic 1 lecture 1
 
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
 
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
 
Chapter 6 agent communications--agent communications
Chapter 6 agent communications--agent communicationsChapter 6 agent communications--agent communications
Chapter 6 agent communications--agent communications
 
Chapter 5 design patterns for mas
Chapter 5 design patterns for masChapter 5 design patterns for mas
Chapter 5 design patterns for mas
 
Cs556 section2
Cs556 section2Cs556 section2
Cs556 section2
 
Cs556 section3
Cs556 section3Cs556 section3
Cs556 section3
 

Recently uploaded

Cognitive Development Adolescence Psychology
Cognitive Development Adolescence PsychologyCognitive Development Adolescence Psychology
Cognitive Development Adolescence Psychology
paigestewart1632
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
Jean Carlos Nunes Paixão
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
Nguyen Thanh Tu Collection
 
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Diana Rendina
 
How to deliver Powerpoint Presentations.pptx
How to deliver Powerpoint  Presentations.pptxHow to deliver Powerpoint  Presentations.pptx
How to deliver Powerpoint Presentations.pptx
HajraNaeem15
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
Nguyen Thanh Tu Collection
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
RAHUL
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
Nicholas Montgomery
 
BBR 2024 Summer Sessions Interview Training
BBR  2024 Summer Sessions Interview TrainingBBR  2024 Summer Sessions Interview Training
BBR 2024 Summer Sessions Interview Training
Katrina Pritchard
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
haiqairshad
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
Dr. Mulla Adam Ali
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
GeorgeMilliken2
 
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
imrankhan141184
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
Dr. Shivangi Singh Parihar
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
Nicholas Montgomery
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
Priyankaranawat4
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
Israel Genealogy Research Association
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
PECB
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 

Recently uploaded (20)

Cognitive Development Adolescence Psychology
Cognitive Development Adolescence PsychologyCognitive Development Adolescence Psychology
Cognitive Development Adolescence Psychology
 
A Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdfA Independência da América Espanhola LAPBOOK.pdf
A Independência da América Espanhola LAPBOOK.pdf
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
 
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
Reimagining Your Library Space: How to Increase the Vibes in Your Library No ...
 
How to deliver Powerpoint Presentations.pptx
How to deliver Powerpoint  Presentations.pptxHow to deliver Powerpoint  Presentations.pptx
How to deliver Powerpoint Presentations.pptx
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
 
BBR 2024 Summer Sessions Interview Training
BBR  2024 Summer Sessions Interview TrainingBBR  2024 Summer Sessions Interview Training
BBR 2024 Summer Sessions Interview Training
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
 
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
 
PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.PCOS corelations and management through Ayurveda.
PCOS corelations and management through Ayurveda.
 
writing about opinions about Australia the movie
writing about opinions about Australia the moviewriting about opinions about Australia the movie
writing about opinions about Australia the movie
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
clinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdfclinical examination of hip joint (1).pdf
clinical examination of hip joint (1).pdf
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 

Cs556 section1

  • 1. HY556 - Distributed Systems Professor: Panagiota Fatourou Spring 2011
  • 2. Definition of a Distributed System (1) In this course, a distributed system will be: A collection of independent components that communicate and coordinate their actions by passing messages. This collection appears to its users as a single coherent system. Examples Internet Intranet (portion of the Internet managed by an organization) Mobile and ubiquitous computing
  • 3. Consequences of the definition Concurrency Concurrent program execution Sharing of resources Increase of system capacity by adding more resources No global clock There are limits to the accuracy with which computers may synchronize their clocks Independent failures Computer isolation Node or link crashes Byzantine failures
  • 4. Resources The term resource characterizes the range of things that can usefully be shared in a distributed system. Hardware Components Disks, printers, etc. Software-defined entities Files, databases, data objects of all kinds, etc.
  • 5. Examples of Distributed Systems A typical portion of the Internet intranet ISP desktop computer: backbone satellite link server: ¤ network link: ¤ ¤ ¤
  • 6. Examples of Distributed Systems - A typical Intranet the rest of email server Web server Desktop computers File server router/firewall print and other servers other servers print Local area network email server the Internet
  • 7. Mobile and Ubiquitous Computing- Portable and handheld devices in a distributed system Mobile Computing Laptops Handheld devices (personal digital assistants, mobile phones, video cameras, digital cameras Wearable devices (smart watches) Location-aware or content-aware computing Ubiquitous Computing The term ubiquitous is intended to suggest that small computing devices will become so pervasive in everyday objects that their computational behavior will be transparently tied up with their physical function. Devices embedded in appliances (washing machines, wi-fi systems, cars, etc.) universal remote control devices Watch when the washing is done
  • 8. Mobile and Ubiquitous Computing- Portable and handheld devices in a distributed system Laptop Mobile Printer Camera Internet Host intranet Home intranet WAP Wireless LAN phone gateway Host site
  • 9. Resource Sharing Service: a distinct part of a computer system that manages a collection of related resources and present their functionality to users and applications. File service, printing services, electronic payment services, etc. A server is a running program (a process) on a distributed system that accepts requests from programs and responds appropriately. The requesting processes are called clients. Clients invoke operations. Remote invocation: a complete interaction between a client and a server. Examples WWW (web browsers, web servers) Email Networked printers
  • 10. World Wide Web WWW allows to the user to retrieve and view documents of many types (audio, video, etc.) to interact with an unlimited set of services Hypertext structure links (hyperlinks) from documents to other documents Open system Operation is based on communication standards and document standards that are freely published and well implemented. (many types of browsers, many types of servers, etc.) Open to the types of resources that can be published or shared on it New-image formats can be supported (helper applications and plug-ins)
  • 11. World Wide Web HyperText Markup Language (HTML) <IMG SRC=http://www.cdk4.net/WebExample/Images/earth.jpg <P> Welcome to Earth! Visitors may also be interested in taking a look at the <A HREF=http://www.cdk4.net/WebExample/moon.html> Moon</A> </P> Contents of a web page .html web server name tags URL
  • 12. World Wide Web Uniform Resource Locators (URLs) Every URL has two top-level components Scheme: scheme-specific-identifier Common schemes: mailto:, ftp:, http:, nntp: (a Usenet newsgroup), mid: (e-mail message) New types of resources can be added <name of new-type of resource>: (a protocol is needed for accessing the new type of resources -> add a plug-in: gives the capability to a browser to use the new protocol
  • 13. Web servers and web browsers Internet BrowsersWeb servers www.google.com www.cdk3.net www.w3c.org Protocols Activity.html http://www.w3c.org/Protocols/Activity.html http://www.google.comlsearch?q=kindberg http://www.cdk3.net/ File system of www.w3c.org http://servername[:port] [/pathname] [?query] [#fragment] ~username, ~/public_html, index.html
  • 14. World Wide Web Client-server system with standard rules for interaction (HyperText Transfer Protocol-HTTP) Request-reply interaction Content types Not all browsers manage all types of content Browsers include a list of the type of contents they are interested in when they issue a request The server includes the content type in the reply message (the strings that denote the content type are called MIME types -> standardized One resource per request Simple access control
  • 15. World Wide Web Dynamic pages (forms) URL designates a program on the server Common Gateway Interface (CGI): program that web servers run to generate content for their clients Java-scripts (are downloaded with a web form to provide better-quality interaction with the user) Applet: is of more general functionality than Java- scripts. Applets are downloaded automatically and run when the browser fetches a corresponding web page. May access the network provide customized user interfaces JAVA based
  • 16. World Wide Web Dangling links Users often get lost in the hyperspace Search engines Scalability issues for popular web servers
  • 17. Challenges - Heterogeneity Heterogeneity applies to all of the following: Networks Use Internet protocols for communication Computer hardware Data types may be represented in different ways on different sorts of hardware Operating systems The interface for implementing the internet protocol is not the same (messages in Unix or in Windows) Programming languages Different representations for characters and data structures (arrays, structs, etc.) Implementations by different developers Standards need to be agreed and adopted
  • 18. Challenges - Heterogeneity Middleware A software layer that provides a programming abstraction as well as masking the heterogeneity of the underlying networks, hardware, operating systems and programming languages. CORBA (Common Object Request Broker) Implemented over the Internet protocols Provides a uniform computational model for use by the programmers of servers and distributed applications.
  • 19. Challenges - Heterogeneity A distributed system organized as middleware. Note that the middleware layer extends over multiple machines.
  • 20. Challenges - Heterogeneity Mobile Code Applets Virtual Machine Provides a way of making code executable on any hardware The compiler generates code for a virtual machine (of a particular language) instead of hardware order code The virtual machine of the language needs to be implemented once for each type of hardware to enable programs to run.
  • 21. Challenges - Openness Determines whether the system can be extended and re- implemented in various ways. Expresses the degree to which new resources sharing services can be added and be made available for use by client programs. Is achieved by providing appropriate specification and documentation of the key software interfaces of the components of a system Example Documents of the Internet protocols -> RFCs (Requests For Comments) Provide a uniform communication mechanism and published interfaces for access to shared resources. Each added component should conform to the published standard.
  • 22. Challenges - Security Confidentiality Protection against disclosure to unauthorized users Integrity Protection against alteration or corruption Availability Protection against interference with the means to access the resources Denial of service attacks Security of mobile code
  • 23. Challenges - Scalability Doing routing based on complete informationCentralized algorithms A single on-line telephone bookCentralized data A single server for all usersCentralized services ExampleConcept Examples of scalability limitations.
  • 24. Challenges - Scalability Controlling the cost of physical resources As the demand for a resource grows, it should be possible to extend the system, at reasonable cost, to meet it. Controlling the performance loss Algorithms that use hierarchical structures scale better than those that use linear structure. Preventing software resources running out IP Addresses (32 bits are no longer enough) -> 128 bit Internet addresses Avoiding performance bottlenecks Use of decentralized algorithms Caching and replication (frequently accessed shared resources)
  • 25. Challenges – Transparency Hide the failure and recovery of a resourceFailure Enables multiple instances of resources to be used to increase reliability and performance without knowledge of the replicas by users or application programmers Replication Enables several processes to operate concurrently using shared resources without interference between them. Concurrency Allows the system and applications to expand in scale without change to the system structure or the application algorithms. Scaling Allows the system to be reconfigured to improve performance as loads vary. Performance Allows the movement of resources and clients within a system without affecting the operation of users or programs. Mobility Enables resources to be accessed without knowledge of their physical or network location Location Enables local and remote resources to be accessed using identical operations Access DescriptionTransparency
  • 26. Challenges – Failure Handling Detecting failures Use of checksums to detect corrupted data Masking failures Messages can be re-transmitted when they fail to arrive File data can be written to a pair of disks to ensure availability Tolerating failures Involve the user in tolerating failures rather than having him/her waiting for ever (web browsers that fail in contacting the web server) Recovery from failures Design of software so that the state of permanent data can be recovered or “rolled back” after a server crash. Redundancy two different routes between any two routers in the Internet replicate the name table in DNS replication of databases)
  • 27. Challenges – Concurrency Any object that represents a shared resource must be responsible for ensuring that it operates correctly in a concurrent system Example: banking accounts Synchronization of operations to ensure data consistency
  • 28. An Example Client and Server (1) The header.h file used by the client and server example
  • 29. An Example Client and Server (2) A sample server.
  • 30. An Example Client and Server (3) 1-27 b A client using the server to copy a file