chapter 1 characterization of distributed systems coulouris, dollimore and kindberg distributed...
TRANSCRIPT
Chapter 1 Characterization of Distributed Systems
Coulouris, Dollimore and KindbergDistributed Systems:
Concepts and DesignEdition 4, © Pearson Education 2005
Distributed Computing
A distributed system is defined as one in which components at networked computers communicate and coordinate their actions only by passing messages.
This definition allows for concurrent execution of programs, but prevents the possibility of a global clock and means that components can fail independently of one another.
Internet and Internet
The Internet is a very large distributed system that allows users throughout the world to make use of its services.
An intranet is a part of the Internet that is separately administered and uses a firewall to enforce its own local security policies. Users in an intranet share data by means of file services.
intranet
ISP
desktop computer:
backbone
satellite link
server:
network link:
A typical portion of the Internet
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
Portable and handheld devices in a distributed system
Laptop
Mobile
PrinterCamera
Internet
Host intranet Home intranetWAP
Wireless LAN
phone
gateway
Host site
Distributed systems techniques are equally applicable to mobile computing (involving laptops, PDAs and wearable computing devices)
Client-Server Model
Shared resources are managed by server processes, which provide client processes with access to those resources via a well-defined set of operations.
In a distributed system written in an object-oriented language, resources may be encapsulated as objects whose methods are invoked by client objects.
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 ofwww.w3c.org
Computers in the Internet
Date Computers Web servers
1979, Dec. 188 0
1989, July 130,000 0
1999, July 56,218,000 5,560,866
2003, Jan. 171,638,297 35,424,956
Computers vs. Web servers in the Internet
Date Computers Web servers Percentage
1993, July 1,776,000 130 0.008
1995, July 6,642,000 23,500 0.4
1997, July 19,540,000 1,203,096 6
1999, July 56,218,000 6,598,697 122001, July 125,888,197 31,299,592 25
42,298,371
Challenges
HeterogeneityOpennessDiscoveryScalability
The Web (hierarchic naming, partitioned data, caching and replication).
failure handlingConcurrency transparency
Transparencies
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 the application algorithms.