Characterization of Distributed Systems
Characterization of Distributed Systems
分散式系統
Chapter 1
Characterization of Distributed Systems
吳俊興
國立高雄大學 資訊工程學系
Chapter 1 Characterization of
Distributed Systems
1.1 Introduction
1.2 Examples of distributed systems
1.3 Trends in distributed systems
1.4 Focus on resource sharing
1.5 Challenges
1.6 Case study: The World Wide Web
1.7 Summary
2
1.1 Introduction
• Motivation:
Networks of computers are everywhere!
– Mobile phone networks
– Corporate networks
– Factory networks
– Campus networks
– Home networks
– In-car networks
– Planetary networks Desire to
Why networked? share resources
• Influence:
Networked computers impact system designers
and implementers
3
Defining Distributed Systems
4
Consequences of Distributed Systems
– Concurrency
• Autonomous: Computers carry out tasks independently
• Cooperative: Computers coordinate actions
– No global clock
• Hard to synchronize their clocks precisely
• Coordinate by exchanges messages
– Independent failures
• Part of network or node faults does stop the running of the
whole system
5
1.2 Examples of Distributed Systems
• Examples
– 1.2.1 Web search (Google)
– 1.2.2 Massively multiplayer online games (MMOGs)
– 1.2.3 Financial trading
6
Figure 1.1 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 online gaming, music and film in the home, user-
entertainment 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
7
Figure 1.2
An example financial trading system
8
戶役政資訊系統
783個戶役政單位
7萬2千個中文字
http://www.iisigroup.com/tw/cases/gov-ris.html
9
1.3 Trends in distributed systems
• Influential trends
– Emergence of pervasive networking technology
– Emergence of ubiquitous computing coupled with the
desire to support mobility
– Increasing demand of multimedia services
– View of distributed systems as a utility
• Sections
1.3.1 Pervasive networking and the modern Internet
1.3.2 Mobile and ubiquitous computing
1.3.3 Distributed multimedia systems
1.3.4 Distributed computing as a utility (cloud)
10
Figure 1.3 Typical Portion of the Internet
intranet
ISP
backbone
satellite link
desktop computer:
server:
network link:
Internet
Mobile
phone
Printer Laptop
Camera Host site
Support continued access to Home intranet resources via wireless and provision to
utilize resources (e.g., printers) that are conveniently located (location-aware computing)
12
Figure 1.5 Cloud Computing
14
1.5 Challenges
• 1.5.1 Heterogeneity
– networks, hardware, os, languages...
– solutions: middleware (i.e. corba), mobile code, virtual machines
• 1.5.2 Openness
– extended and re-implemented in various ways
– standard published interfaces, RFC (request for comments)
• 1.5.3 Security
– confidentiality, integrity, availability
• 1.5.4 Scalability
– effective with significant increase in resources
– cost and performance
• 1.5.5 Failure handling
– detecting
– masking: hide, less severe (retransmit)
– tolerating: ignore, timeout
– recovery: logs, rollback
– redundancy
• 1.5.6 Concurrency
– several clients access a shared resource at the same time 15
Challenges (Cont.)
• 1.5.7 Transparency
– Access transparency: enables local and remote resources to be accessed using
identical operations
– Location transparency: enables resources to be accessed without knowledge of
their physical or network location (for example, which building or IP address)
– 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
– 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 application algorithms
• 1.5.8 Quality of Service
16
1.6 Case Study: The World Wide Web
Three major parts
• HTML, Hyper Text Markup Language
• URL, Uniform Resource Locator
– http://servername[:port] [/pathname] [?arguments]
• HTTP, HyperText Transfer Protocol
– request-reply protocol (client-server)
– content types--MIME types, multipurpose internet mail
extensions
– one resource per request
– simple access control (mostly public)
17
Figure 1.7 Web Servers and Web Browsers
http://www.google.com/search?q=kindberg
www.google.com
www.cdk5.net Internet
http://www.cdk5.net/
www.w3c.org
Activity.html
18
Other Web Technologies
• web forms
• CGI programs, common gateway interface, run on the
server
• applets, run on the client
• RDF, resource description framework, vocabulary for
meta-data
• XML, extensible markup language, allow meta-data
information to be included
19
1.7 Summary
• Computer networks and distributed systems are
everywhere
• Resource sharing is the main motivating factor for
constructing distributed systems
• Challenges: heterogeneity, openness, security,
scalability, failure handling, concurrency, transparency
20