Chapter 1 Characterization of Distributed Systems Choe, Hyun Jong Dept. of Computer Education Korea...
-
date post
19-Dec-2015 -
Category
Documents
-
view
214 -
download
0
Transcript of Chapter 1 Characterization of Distributed Systems Choe, Hyun Jong Dept. of Computer Education Korea...
Chapter 1Characterization ofDistributed Systems
Choe, Hyun JongDept. of Computer Education
Korea National Univ. Of Education
2
Distributed Systems
Chapter Overview Definition & Motivation of Distributed
Systems Properties of Distributed Systems Examples of Distributed Systems Challenges of Distributed Systems Pros & Cons of Distributed Systems
3
Distributed Systems
Definition of D.S. One in which components located at networked
computers communicate & coordinate their actions only by passing messages
A system that consists of a collection of two or more independent computers which coordinate their processing through the exchange of synchronous or asynchronous message passing
A collection of independent computers that appear to the users of the system as a single computer
A collection of autonomous computers linked by a network with software designed to produce an integrated computing facility
4
Distributed Systems
Motivation for D.S. (1) Resource Sharing
Hardware components Software-defined components
Functional distribution: computers have different functional capabilities Client/Server Host/Terminal Data gathering/data processing Sharing of resources with specific
functionalities
5
Distributed Systems
Motivation for D.S. (2) Load distribution/balancing
Assign tasks to processors such that the overall system performance is optimized
Replication of processing power Distributed systems consisting of
collections of microcomputers may have processing powers that no supercomputer will ever achieve
6
Distributed Systems
Motivation for D.S. (3) Economics
Collections of microprocessors offer a better price/performance ration than large mainframes
7
Distributed Systems
Computer Network vs. Computer network: the
autonomous computers are explicitly visible
Distributed system: existence of multiple autonomous computers is transparent
8
Distributed Systems
Characteristics of D.S. Concurrency of components Lack of a global clock Independent failures of
components
9
Distributed Systems
Problems with D.S. Software: how to design & manage
it in a distributed system Dependency on the underlying
network infrastructure Easy access to shared data raises
security concerns
10
Distributed Systems
Examples of D.S.(1): Internet Internet
Heterogeneous network of computers and applications
Implemented through the internet protocol stack
12
Distributed Systems
What’s intranet? Locally administered network Usually proprietary Interfaces with the internet
Gateway/router with firewalls Provides services internally &
externally
14
Distributed Systems
The goal of pervasive computing, which combines current network technologies with wireless computing,voice recognition, Internet capability and artificial intelligence, is to create an environment where the connectivity of devices is embedded in such a way that the connectivity is unobtrusive and always available
Ubiquitous computing
15
Distributed Systems
Mobile & ubiquitous Cellular phone systems Laptop computers Handheld devices like PDA Home automation/car/TV/video
etc…
Ubiquitous computing = Mobile + ?
17
Distributed Systems
Resource sharing(1) Resource sharing
Hardware resources Software resources Resources with specific functionality
Search engine, CGI, communication modules
18
Distributed Systems
Resource sharing(2) Service & Server
Service is a distinct part of a computer system that manages a
collection of related resources and represent their functionality to users and applications
Via the set of operations that it exports Ex. Accessing a shared file
Server A running program(process) that serves a service
to users and application programs Client-server model
Remote invocation Active(client) vs. passive(server) – not fixed..
19
Distributed Systems
The Web(1) Web of network links Publishing & accessing resources and
services across the internet Began at CERN, Switzerland in 1989
For exchanging documents among physicists A key feature
Hypertext structure However, hypertext structure was developed
in mind in 1945 and realized with the development of the internet
20
Distributed Systems
The Web(2) Open system
WWW can be extended and implemented in new ways without disturbing its existing functionality
Based on communication/document standard
Many kinds of web browsers & web servers Variety types of resources
Any kind of contents: plug-ins and helper application
21
Distributed Systems
The Web(3) Main components of the Web
HTML(hypertext markup language) A language for specifying the contents and layout
of pages as the are displayed by web browsers URL(uniform resource locator)
An anchor which identities documents and other resources stored as part of the web
HTTP(hypertext transfer protocol) Standard rules for interaction between client &
server
22
Distributed Systems
HTML To specify the contents of a web page To specify how they are laid out and
formatted Structured items as headings,
paragraphs, tables, images, and links HTML tags Construction
Using text editor Using wysiwyg editor which awares HTML
23
Distributed Systems
URL To identify a resource Two top-level components
Schema: schema-specific-locationmailto:[email protected]://comedudb.knue.ac.kr
General HTTP URL http://servername[:port][/pathname]
[?argument]
24
Distributed Systems
HTTP A protocol for clients to interact with web
servers Features
Request-reply interaction Content type(MIME types)
Text/html, image/gif, audio/x-mpegurl, application/zip.. One resource per request
N embedded resources in a web page requires n distinct request(connection)
Simple access controlSimple restriction using challenge (authentication)
25
Distributed Systems
Advanced features of the web Services
Web form for user input CGI(common gateway interface)
An interface between a program on server and the web
Running on the server side Method: POST & GET
Dynamic pages Inside the browser at the client computer
Javascript An application downloaded from a server
Applet
26
Distributed Systems
Issues/Challenges of D.S. Heterogeneity Openness Security Scalability Failure handling Concurrency Transparency
27
Distributed Systems
Heterogeneity Variety and difference
Networks, computer hardware, OS, P. language So, Middleware is needed
Software layer that provides a programming abstraction
CORBA(common object request broker architecture) Java RMI(remote method invocation)
Mobile code Code that can be send from one computer to
another Ex) Java applet: JVM(java virtual machine) provides an
abstract a way of making code executable on any hardware
28
Distributed Systems
Openness Ensure extensibility and
maintainability(H/W, S/W) System is extended & re-implemented in
various way Adherence to standard interface Ex 1) RFC(request for comments) http://www.ietf.org - Open systems - Open distributed systems Ex 2) CORBA http://www.omg.org
29
Distributed Systems
Security Three components
Confidentiality: protection to unauthorized individuals
Integrity: protection against corruption Availability: protection against interference with
the means to access the resources Cryptography can enhance confidentiality
& integrity However
DOS(denial of service) attack Security of mobile code
30
Distributed Systems
Scalability(1)Computers in the internet
Computers vs. web servers in the internet
31
Distributed Systems
Scalability(2) A system is scalable if it will remain
effective when there is a significant increase in the number of resources and the number of users Controlling the cost of physical resources
: User n-> physical resource O(n) Controlling the performance loss
: data size n -> time to access O(log n) Preventing software resources running out
: IPv4 -> IPv6 Avoiding performance bottlenecks
: one DNS table -> several DNS tables
32
Distributed Systems
Failure handling In the domain of network & server
How to deal with partial failures? Techniques for failure handling
Detecting failures may be possible with checksums
Masking(hiding) failures Retransmission
Tolerating failures Exception handling(clients)
Recovery from failures Roll-back
Redundancy in hardware/software
33
Distributed Systems
Concurrency Attempt to access a shared resource at
the same time Consistent scheduling of concurrent threads So that dependencies are preserved
Ex) accounts in a bank(preserves transaction)
Synchronization is needed for resource sharing Ex) semaphores in OS
34
Distributed Systems
Transparency(concealment) Concealing(hiding) the heterogeneous and
distributed nature of the system so that it appears to the user like one system
Eight forms of transparency(ISO’s RM-ODP): page 23 Access transparency Location transparency Concurrency transparency Replication transparency Failure transparency Mobility transparency(migration) Performance transparency Scaling transparency
35
Distributed Systems
Access transparency: enables local and remote resources to be accessed using identical operations.Location transparency: enables resources to be accessed without knowledge of their location.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.
Eight forms of Transparency