chapter 1: characterization of distributed systems introduction examples of distributed systems...
TRANSCRIPT
![Page 1: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/1.jpg)
Chapter 1: Characterization of Distributed Systems
• Introduction• Examples of distributed systems• Resource sharing and the web• Challenges• Summary
![Page 2: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/2.jpg)
Characteristics of Distributed System
• Ubiquitous networks• Internet, mobile phone network, corporate network,
campus network, home network, in-car network, personal network …
• Tremendous applications are based on these networks, e.g., Web, ICQ
• Distributed System Definition• a distributed system is one in which components located at networked
computers communicate and coordinate their actions only by passing messages.
• Characteristics• Concurrency: concurrent programs execution – share resource• No global clock: programs coordinate actions by exchanging messages• Independent failures: when some systems fail, others may not know
![Page 3: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/3.jpg)
Chapter 1: Characterization of Distributed Systems
• Introduction• Examples of distributed systems• Resource sharing and the web• Challenges• Summary
![Page 4: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/4.jpg)
• A vast interconnected collection of computer networks of many different types– TCP/IP
• A very large distributed system– WWW, email, FTP, VOD, etc
The Internet
intranet
ISP
desktop computer:
backbone
satellite link
server:
network link:
![Page 5: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/5.jpg)
• A portion of the Internet that is separately administered and has a boundary that can be configured to enforce local security policies– Composed of several LANs linked by backbone connections– Be connected to the Internet via a router
• A typical intranet• Main issues arising in the design of components for use in intranets
– File services: enable users to share data– Firewalls: impede legitimate access to services– The cost of software installation and support: reduce cost by the use of system
architectures such as network computers and thin clients
Intranet
![Page 6: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/6.jpg)
A typical intranet
the rest of
email server
Web server
Desktopcomputers
File server
router/firewall
print and other servers
other servers
Local areanetwork
email server
the Internet
![Page 7: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/7.jpg)
• Mobile devices– Laptop computers– Handheld devices, including PDAs, cell phones, pagers, video cameras and digital
cameras– Wearable devices, such as smart watches– Devices embedded in appliances such as washing machines, hi-fi systems, cars
• Mobile computing (nomadic computing)– People can still access resources while he is on the move, or visiting places other th
an their usual environment– Location-aware computing: utilize resources that are conveniently nearby
• Ubiquitous computing (pervasive computing)– The harnessing of many small, cheap computational devices that are present in use
r’s physical environments, including the home, office and elsewhere• A example about portable and handheld devices in a distributed system
Mobile and ubiquitous computing
![Page 8: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/8.jpg)
Portable and handheld devices in a distributed system
Laptop
Mobile
PrinterCamera
Internet
Host intranet Home intranetWAP
Wireless LAN
phone
gateway
Host site
![Page 9: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/9.jpg)
• Computational Grid– Meta Computing
• Idle computers are ubiquitous• Computers collaborate together as a whole system in the range of WAN• Transparently resource (process, storage, network, etc) sharing for the end use
rs– Examples: Globus, CERN Data Grid, ChinaGrid, Entropia.com
• Distributed Object Computing– Object Oriented Middleware for applications– Examples: CORBA, DCOM, EJB, Globe
• Peer to Peer applications– Distributed system architecture in contrast to Client/Server– Examples: Napster, Gnutella, FreeNet, OceanStore, JXTA
• Commercial giants’ perspective– Distributed Computing Environment– Examples: .NET, Autonomous Computing
What are people doing now? – Ongoing projects
![Page 10: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/10.jpg)
OceanStore overview
![Page 11: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/11.jpg)
The JXTA Search network architecture
![Page 12: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/12.jpg)
Chapter 1: Characterization of Distributed Systems
• Introduction• Examples of distributed systems• Resource sharing and the web• Challenges• Summary
![Page 13: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/13.jpg)
• Motivation of distributed computing: resource sharing• Resources types
– Hardware, e.g. printer, scanner, camera– Data, e.g. file, database, web page– Service, e.g. search engine, file
• Some definitions– Service: manages a collection of related resources and presents their
functionalities to users and applications– Server: a process on networked computer that accepts requests from
processes on other computers to perform a service and responds appropriately
– Client: the requesting process
– Remote invocation: interaction between client and server, from the point when the client sends its request to when it receives the server’s response
Resource sharing
![Page 14: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/14.jpg)
Case study: World Wide Web
• Motivation of WWW– documents sharing between physicists of CERN
• WWW is an open system– be extended and be differently implemented based on standard protocols, different ser
ver & different browser– types of sharing resource can be extended, MIMES
• Basic technological components– HTML: HyperText Markup Language– URL: e.g. Ftp://ftp.cs.pku.edu.cn, http://net.cs.pku.edu.cn/~hh, http://
www.google.com/search?q=network– HTTP: Request-reply interactions, Content types, One resource per request, Simple ac
cess control• Advance Features
– Dynamic content: CGI, ASP, Servlet, etc– Dynamic web page: JavaScript, Applet, etc
• Discussion– Dangling: a resource is deleted or moved, but links to it may still remain– Find information easily: e.g., Resource Description Framework which standardize the
format of metadata about web resources– Exchange information easily: e.g., XML – a self describing language– Scalability: heavy load on popular web servers
![Page 15: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/15.jpg)
Chapter 1: Characterization of Distributed Systems
• Introduction• Examples of distributed systems• Resource sharing and the web• Challenges• Summary
![Page 16: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/16.jpg)
Challenges (1)
1. Heterogeneity• networks: ethernet, token ring, etc• computer hardware: big endian/ little endian• operating systems: different message interfaces of Unix and Windows• programming languages: different representations for data structures• implementations by different developers: no command standardsMiddleware is a software layer that provides a programming abstraction as well as mask
ing the heterogeneity of the underlying platform. E.g., CORBA, DCOM, Java RMI, etc.
2. Openness• characterized by the fact that it can be extended and re-implemented in various wa
ys, e.g. Unix, InternetHow to deal with openness? key interfaces are published, e.g. RFC
3. Security• confidentiality: protection against disclosure to unauthorized individ
uals,e.g. ACL in Unix File System• integrity: protection against alteration or corruption, e.g. checksum• availability: protection against interference with the means to access
the resources, e.g. Denial of service
![Page 17: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/17.jpg)
Challenges (2)
Security challenges that are not yet fully met: Denial of service attacks, Security of mobile code, etc.
4. Scalability• A system is described as scalable if will remain effective when there is a sig
nificant increase in the number of resources and the number of users• The Internet is an example distributed system that is scalable
• design challenges– controlling the cost of physical resources. E.g., at most O(n)– controlling the performance loss. E.g., no worse than O(logn)– preventing software resources running out. E.g., IP address– avoiding performance bottlenecks. E.g., name table partitioned and cached in D
NS
Date Computers Web servers Percentage
1993, July 1,776,000 130 0.008
1995, July 6,642,000 23,500 0.41997, July 19,540,000 1,203,096 61999, July 56,218,000 6,598,697 12
![Page 18: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/18.jpg)
Challenges (3)
5. Failure handling• Detecting, e.g. checksum for corrupted data. Sometimes impossible so sus
pect, e.g. a remote crashed server in the Internet• Masking, e.g. Retransmit message, standby server• Tolerating, e.g. Inform problems• Recovery, e.g. Roll back• Redundancy, e.g. IP route, replicated name table of DNSAvailability: measure of the proportion of time that a system is available for us
e
6. Concurrency• ensure the operations on shared resource correct in a concurrent environme
nt
7. Transparency• Access transparency: using identical operations to access local and remote
resources, e.g. Hyperlink in web page• Location transparency: resources to be accessed without knowledge of the
ir location, e.g. URL• Concurrency transparency: several processed operate concurrently using s
hared resources without interference with between them
![Page 19: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/19.jpg)
Challenges (4)
• Replication transparency: multiple instances of resources to be used to increase reliability and performance without knowledge of the replicas by users or application programmers, e.g. Web cache
• Failure transparency: users and applications to complete their tasks despite the failure of hardware and software components, e.g., email
• Mobility transparency: movement of resources and clients within a system without affecting the operation of users and programs, e.g., mobile phone
• 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
![Page 20: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/20.jpg)
Chapter 1: Characterization of Distributed Systems
• Introduction• Examples of distributed systems• Resource sharing and the web• Challenges• Summary
![Page 21: Chapter 1: Characterization of Distributed Systems Introduction Examples of distributed systems Resource sharing and the web Challenges Summary](https://reader036.vdocuments.us/reader036/viewer/2022062519/5697c01a1a28abf838ccef02/html5/thumbnails/21.jpg)
Summary
• Distributed systems are pervasive • Resource sharing is the main motivation for constructing
distributed systems• Characterization of Distributed System
– Concurrency– No global clock– Independent failures
• Challenges to construct distributed system– Heterogeneity– Openness– Security– Scalability– Failure handling– Concurrency– Transparency