Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 1 Characterization of Distributed Systems Choe, Hyun Jong Dept. of Computer Education Korea National Univ. Of Education.

Similar presentations


Presentation on theme: "Chapter 1 Characterization of Distributed Systems Choe, Hyun Jong Dept. of Computer Education Korea National Univ. Of Education."— Presentation transcript:

1 Chapter 1 Characterization of Distributed Systems Choe, Hyun Jong Dept. of Computer Education Korea National Univ. Of Education

2 Distributed Systems 2 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 3 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 4 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 5 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 6 Motivation for D.S. (3) Economics Collections of microprocessors offer a better price/performance ration than large mainframes

7 Distributed Systems 7 Computer Network vs. Computer network: the autonomous computers are explicitly visible Distributed system: existence of multiple autonomous computers is transparent

8 Distributed Systems 8 Characteristics of D.S. Concurrency of components Lack of a global clock Independent failures of components

9 Distributed Systems 9 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 10 Examples of D.S.(1): Internet Internet Heterogeneous network of computers and applications Implemented through the internet protocol stack

11 Distributed Systems 11 Examples of D.S.(2): intranet

12 Distributed Systems 12 What ’ s intranet? Locally administered network Usually proprietary Interfaces with the internet Gateway/router with firewalls Provides services internally & externally

13 Distributed Systems 13 Examples of D.S.(3) Mobile & ubiquitous computing

14 Distributed Systems 14 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 15 Mobile & ubiquitous Cellular phone systems Laptop computers Handheld devices like PDA Home automation/car/TV/video etc … Ubiquitous computing = Mobile + ?

16 Distributed Systems 16 Trends in Computing

17 Distributed Systems 17 Resource sharing(1) Resource sharing Hardware resources Software resources Resources with specific functionality Search engine, CGI, communication modules

18 Distributed Systems 18 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 19 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 20 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 21 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 22 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 23 URL To identify a resource Two top-level components Schema: schema-specific-location mailto:blueland@blue.knue.ac.kr telnet://comedudb.knue.ac.kr General HTTP URL http://servername[:port][/pathname][?argu ment]

24 Distributed Systems 24 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 control Simple restriction using challenge (authentication)

25 Distributed Systems 25 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 26 Issues/Challenges of D.S. Heterogeneity Openness Security Scalability Failure handling Concurrency Transparency

27 Distributed Systems 27 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 28 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 29 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 30 Scalability(1) Computers in the internet Computers vs. web servers in the internet

31 Distributed Systems 31 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 32 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 33 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 34 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 35 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


Download ppt "Chapter 1 Characterization of Distributed Systems Choe, Hyun Jong Dept. of Computer Education Korea National Univ. Of Education."

Similar presentations


Ads by Google