研究生补充资料分布式系统ppt课件.ppt

上传人:本田雅阁 文档编号:3305031 上传时间:2019-08-10 格式:PPT 页数:51 大小:481.04KB
返回 下载 相关 举报
研究生补充资料分布式系统ppt课件.ppt_第1页
第1页 / 共51页
研究生补充资料分布式系统ppt课件.ppt_第2页
第2页 / 共51页
研究生补充资料分布式系统ppt课件.ppt_第3页
第3页 / 共51页
研究生补充资料分布式系统ppt课件.ppt_第4页
第4页 / 共51页
研究生补充资料分布式系统ppt课件.ppt_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《研究生补充资料分布式系统ppt课件.ppt》由会员分享,可在线阅读,更多相关《研究生补充资料分布式系统ppt课件.ppt(51页珍藏版)》请在三一文库上搜索。

1、Distributed System,Instructor: Dr. Ying Zhao Sci. Building 407 (Office location) 64433221 (Phone) 64414105 (Fax) (Email) Text: Distributed System, Nancy Lynch, Morgan-Kaufmann, 1996.,Expectations,Attendance is expected, but not mandatory If you miss class, you are responsible for obtaining the lect

2、ures from the website and/or notes from a classmate You should come prepared to class Read ahead email me if you are unsure of what to read Download lectures that are on PowerPoint take notes as well,Problem Sets,Assignments related to the text and lecture materials not formally graded There will be

3、 due dates on which the answers to the assignments will be worked out in class You are strongly encouraged to discuss possible solutions with other class members to bring to class your solutions,Project and Exams,There will be one project worth 25% of your grade Topics will be assigned by the instru

4、ctor Format, content, and due dates There will be three exams and a final. Each exam is worth 25% of your grade. You can drop the lowest exam grade. Tentative exam dates: Feb. 3rd, Mar. 2nd, Apr. 6th, Apr. 29th (final).,The Rise of Distributed Systems,Computer hardware prices are falling and power i

5、ncreasing. Network connectivity is increasing. Everyone is connected with fat pipes. It is easy to connect hardware together.,Definition,“A distributed system is a collection of independent computers that appears to its users as a single coherent system.” (Distributed Systems: Principles and Paradig

6、ms, written by Tanenbaum Important Points: The machines are autonomous. Users think they are dealing with a single system.,What is a Distributed System?,Contains independent, autonomous components that are located at networked computers communicate and coordinate through synchronous or asynchronous

7、message passing are linked by software designed to produce an integrated computing facility appear to the user of the system as a single component,What is Computer Network?,The term computer network means a collection of autonomous computers interconnected by a single technology in this book. The ke

8、y distinction is that in a distributed system, a collection of independent computers appears to its users as a single coherent system.,Why a Distributed System?,Functional distribution computers have different functional capabilities yet may need to share resources Client / server Data gathering / d

9、ata processing Inherent distribution in application domain cash register and inventory systems for supermarket chains computer supported collaborative work,Distributed Systems Middleware?,Distributed System Examples,The biggest example is the WWW. The model presented to users to somewhat uniform go

10、to this URL and get a web page. Most users are (or should be) unable to tell what kind of hardware or software is being used to deliver the web page. For the most part, the client should not make a difference either.,Goals,There are four main goals for distributed systems to make them worth building

11、. Connect users and resources Make the system transparent Make the system open Make the system scalable,Connecting Users and Resources,We want to make it easier for users to access remote resources and to share resources with other users. Examples: printers, files, Web pages, etc A distributed syste

12、m should also make it easier for users to exchange information. Easier resource and data exchange could cause security problems a distributed system should deal with this problem.,Transparency,Transparency is the ability of the distributed system to hide that fact that it is actually a distributed s

13、ystem. The more the distributed system looks like a single computer, the more transparent it is. There are several different types of transparency that we should consider,Transparency Types,An important goal of a distributed system is to hide the fact that its processes and resources are physically

14、distributed across multiple computers. A distributed system that is able to present itself to users and applications as if it were only a single computer system is said to be transparent . For example, resources may be replicated to increase availability or to improve performance by placing a copy c

15、lose to the place where it is accessed.,Degree of Transparency,We may not be able to hide all distribution aspects from the user and sometime we shouldnt. Physical limitations can cause situations where it is better for the user to know about the distributed system. We cant expect our morning paper

16、to be in our mailbox at 7am if the paper is coming from a different time zone.,System Openness,Openness describes how well a system offers services according to some standard rules for the distributed system. An open system will have a set of well-defined standards that describe the syntax and seman

17、tics for system services. If the system is not open, it will be difficult to expand.,System Scalability,A distributed system should be scalable. Scalability can be measured in three different ways: size (add more users and resources) geographically (add users and resources that are far away) adminis

18、tration (easily able to manage if scaled),Scalability Problems,Size will present limitations on centralized resources such as specialized servers, data and algorithms We should decentralize our servers, data and algorithms as much as possible. This causes issues with data consistency and data retrie

19、val.,Decentralized Algorithms,Such algorithms should realize: No machine has complete information about the system state Machine make decisions based only on local information Failure of one machine does not ruin the algorithm There is no implicit assumption that a global clock exists,Scaling Techni

20、ques,Use only asynchronous communication Distribute the problem as much as possible to many machines in small chunks Replicate components across the system (if possible) Cache data where possible (and then solve the cache consistency problems),Why a Distributed System?,Load balancing assign tasks to

21、 processors such that the overall system performance is optimized Replication of processing power independent processors working on the same task Economics collections of microprocessors offer a better price/ performance ratio than large mainframes,Distributed System Characteristics,Concurrency Soft

22、ware/hardware components are autonomous component is equivalent to “processor” Components execute concurrent tasks A and B are concurrent if either A can happen before B, or B can happen before A (interleaving semantics) Users work independently & share resources hardware components (disks, printers

23、) software entities (files, web pages, data objects) Typical problems absence of deadlock Program 1 requests resource A and receives it. Program 2 requests resource B and receives it. Program 1 requests resource B and is queued up, pending the release of B. Program 2 requests resource A and is queue

24、d up, pending the release of A. liveness guarantees,No global clock Coordination is done by message exchange Close coordination depends on a shared idea of the time at which the programs actions occur There are limits to the accuracy with which computers in a network can synchronize their clocks No

25、global state Generally, there is no single process in the distributed system that would have a knowledge of the current global state of the system,Distributed System Characteristics,Independent failures Network faults can result in the isolation of computers that continue executing A system failure

26、or crash might not be immediately known to other systems,Distributed System Characteristics,Example 1,Internet Heterogeneous network of computers and applications Interaction via message passing for a common means of communication Users in different physical locations can make use of services, such

27、as email and ftp The set of services is open-ended,A Typical Portion of the Internet,Example 2,Intranets A portion of the Internet that is separately administered usually proprietary provides internal and external services can be configured to enforce local security policies may use a firewall to pr

28、event unauthorized messages leaving or entering may be connected to the internet via a router,A Typical Intranet,Other Examples,Mobile and ubiquitous computing Mobile computing continuous service is available to the internet, company intranets ex. Cell phone can access simple information Ubiquitous

29、computing computing devices will become so pervasive they will not be noticeable wearables, PDAs, digital cameras Issues discovery of resources, eliminating reconfiguration of devices from movement, coping with limited connectivity, privacy and security,Portable and handheld devices in a distributed

30、 system,Challenges in Distributed System Design,Heterogeneity networks (protocols), hardware (data types) operating systems (APIs) programming languages (characters and data structures) implementations by different developers (lack of standards) Middleware can mask heterogeneity provides a uniform c

31、omputational model for use by the programmers of servers and distributed applications Mobile code transparency from hard-, software and programming language heterogeneity through virtual machine concept,Challenges in Distributed System Design,Openness The degree to which new resource-sharing service

32、s can be added and be made available for use by a variety of client programs Specification and documentation of the key software interfaces of the components must be published Extension may be at the hardware level by introducing additional computers,Challenges in Distributed System Design,Security

33、of information resources Encryption techniques have resolved many challenges with sending sensitive information in a message across a network in a secure manner Continued challenges Denial of service attacks Security of mobile code,Challenges in Distributed System Design,Scalability system remains e

34、ffective when there is a significant increase in the number of resources and the number of users controlling the cost of physical resources adding servers to allow for increased file sharing controlling the cost of performance loss increases in data storage and access preventing software resources f

35、rom running out trade-offs between allocating too much vs. too litle avoiding performance bottlenecks algorithms should be decentralized,Challenges in Distributed System Design,Failure handling In distributed systems, some components fail while others continue executing Detected failures can be hidd

36、en, made less severe, or tolerated messages can be retransmitted data can be written to multiple disks to minimize the chance of corruption Data can be recovered when computation is “rolled back” Redundant components or computations tolerate failure,Challenges in Distributed System Design,Concurrenc

37、y Several clients may attempt to access a shared resource at the same time ebay bids Generally multiple requests are handled concurrently rather than sequentially All shared resources must be responsible for ensuring that they operate correctly in concurrent environment,Challenges in Distributed Sys

38、tem Design,Transparency the system is perceived as a whole rather than as a collection of independent components Examples include Access transparency*: enables local and remote resources to be accessed using identical operations. Location transparency*: enables resources to be accessed without knowl

39、edge of their location. Concurrency transparency: enables several processes to operate concurrently using shared resources without interference between them. Mobility transparency: allows the movement of resources and clients within a system without affecting the operation of users or programs.,Dist

40、ributed System Architectures,Client-server model client processes interact with individual server processes servers processes are in separate host computers clients access the resources the servers manage servers may be clients of other servers Examples Web servers are clients of the DNS service DNS

41、 translates Internet Domain Names to network addresses Search engines are both servers (to browser clients) and clients (web crawlers) of other web servers,Client-Server,Multiple Servers,Separate processors interact to provide a service,Peer Processes,All processors play a similar role - eliminate s

42、ervers,Distributed Algorithms,A definition of the steps to be taken by each of the processes of which the system is composed, including the messages transmitted between them Types of distributed algorithms Interprocess Communication (IPC) Timing Model Failure Model,Distributed Algorithms,Address pro

43、blems of resource allocation - deadlock detection communication - global snapshots consensus - synchronization concurrency control - object implementation Have a high degree of uncertainty and independence of activities unknown # of processes & network topology independent inputs at different locati

44、ons several programs executing at once, starting at different times, operating at different speeds processor non-determinism uncertain message ordering & delivery times processor & communication failures,Interprocess Communication,Distributed algorithms run on a collection of processors communicatio

45、n methods may be shared memory, point-point or broadcast messages, and RPC Multiple server processes may cooperate with one another to provide a service DNS partitioning and replicating its data at multiple servers throughout the Internet Peer processes may cooperate with one another to achieve a co

46、mmon goal a voice conferencing system that distributes streams audio data in a similar manner under real-time constraints,Failure Model,The algorithm might need to tolerate failures processors might stop degrade gracefully exhibit Byzantine failures may also be failures of communication mechanisms,T

47、iming Model,Different assumptions can be made about the timing of the events in the system Synchronous processor communication and computation are done in lock-step Asynchronous processors run at arbitrary speeds and in arbitrary order Partially synchronous processors have partial information about

48、timing,Synchronous Model,Simplest to describe, program, and reason about components take steps simultaneously not what actually happens, but used as a foundation for more complexity intermediate comprehension step impossibility results care over,Asynchronous Model,Separate components take steps arbi

49、trarily Reasonably simple to describe - with the exception of liveness guarantees Harder to accurately program Allows ignorance to timing considerations May not provide enough power to solve problems efficiently,Partially Synchronous Model,Some restrictions on the timing of events, but not exactly lock-step Most realistic model Trade-offs must be considered when deciding the balance of the efficiency with portability,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1