Distributed Systems: Concepts and Design - PowerPoint PPT Presentation

1 / 44
About This Presentation
Title:

Distributed Systems: Concepts and Design

Description:

... that several clients will attempt to access a shared resource at the same time. ... Two variants of the interaction model. Synchronous distributed system ... – PowerPoint PPT presentation

Number of Views:1902
Avg rating:3.0/5.0
Slides: 45
Provided by: jing65
Category:

less

Transcript and Presenter's Notes

Title: Distributed Systems: Concepts and Design


1
Distributed Systems Concepts and Design
  • Jinghai Rao
  • 13,9,2000

2
Topics
  • Chapter 1 Characterization of Distributed
    Systems
  • Chapter 2 System Models

3
What is Distributed Systems
  • A distributed system is one in which components
    located at networked computers communicate and
    coordinate their actions only by passing
    messages.
  • Three Examples
  • The internet
  • An intranet which is a portion of the internet
    managed by an organization
  • Mobile and ubiquitous computing

4
The Internet
  • The Internet is a very large distributed system.
  • The implementation of the internet and the
    services that it suports has entailed the
    development of practical solutions to many
    distributed system issues.

5
Intranets
  • An intranet is a portion of the Internet that is
    separately administered and has a boundary that
    can be configured to enforce local security
    policies
  • The main issues arising in the design of
    components for use in intranets are file
    services, firewalls, cost.

6
Mobil and ubiquitous computing
  • The portability of the devices, such as laptop
    computers, PDA, mobil phone, refrigerators,
    togather with their ability to connect
    conveniently to networks in different places,
    makes mobile computing possible.
  • Ubiquitous computing is the harnessing of many
    small cheap computational devices that are
    present in users physical environments,
    including the home, office and elsewhere.

7
Mobil and ubiquitous computing (continue)
  • Mobile and ubiquitous computing raise significant
    system issues presents an architecture for mobile
    compuing and outlines the issues that arise from
    it, including how to support the discovery of
    resources in a host environment eliminating the
    need for users to reconfigure their mobile
    devices as they move around helping users to
    cope with limited connectivity as they travel
    and providing privacy and other security
    guarantees to users and the environments that the
    visit.

8
Significant Consequences of DS
  • Concurrency
  • The capacity of the system to handle shared
    resources can be increased by adding more
    resources to the network.
  • No global clock
  • The only communication is by sending messages
    through a network.
  • Independent failures
  • The programs may not be able to detect whether
    the network has failed or has become unusually
    slow.

9
Resource
  • The term resource is a rather abstract one,
    but it best characterizes the range of things
    that can usefully be shared in a networked
    computer system. It extends from hardware
    components such as disks and printers to
    software-defined entities such as files,
    databases and data objects of all kinds.

10
Important Terms of Web
  • Services
  • A distinct part of a computer system that manages
    a collection of related resources and presents
    their functionality to users and applications.
  • http, telnet, pop3...
  • Server
  • A running program (a process) on a networked
    computer that accepts requests from programs
    running on other computers to perform a service,
    and responds apppropriately.
  • IIS, Apache...
  • Client
  • The requesting processes.

11
The World Wide Web
  • The WWW is an evolving system for publishing and
    accessing resources and services across the
    Internet.
  • The Web is an open system
  • Its oeration is based on communication standards
    and document standards tht are freely published
    and widely implemented.
  • The Web is one with respect to the types of
    resource that can be published and shared on.

12
The main standard components of Web
  • HyperText Markup Language (HTML)
  • Uniform Resource Laocators (URLs)
  • HyperText Transfer Protocol (HTTP)
  • HTTP is a request-reply protocol.

13
More Discussion of Web
  • Dynamic pages
  • CGI
  • Javascript
  • ASP, PHP...
  • Discussion
  • Hypertext model is lacking in some respects, such
    as lost in hyperspace.
  • HTML is limited in exchanging structured data,
    one solution is XML.
  • The problems of scale.
  • A Web page is not always a satisfactory user
    interface.

14
Challenges
  • Heterogeneity
  • Openness
  • Security
  • Scalability
  • Failure handling
  • Concurrency
  • Transparency

15
Heterogeneity
  • Different networks, hardware, operating systems,
    programming languages, developers.
  • We set up protocols to solve these
    heterogeneities.
  • Middleware a software layer that provides a
    programming abstraction as well as masking the
    heterogeneity.
  • Mobile code code that can be sent from one
    computer to another and run at the destination.

16
Openness
  • The openness of DS is determined primarily by the
    degree to which new resource-sharing services can
    be added and be made available for use by a
    variety of client programs.
  • Open systems are characterized by the fact that
    their key interfaces are published.
  • Open DS are based on the provision of a uniform
    communication mechanism and published interfaces
    for access to shared resources.
  • Open DS can be constrcted from heterogeneous
    hardware and software.

17
Security
  • Security for information resources has three
    components
  • Confidentiality protection against disclosure to
    unauthorized individuals.
  • Integrity protection against alteration or
    corruption.
  • Availability protection against interference
    with the means to access the resources.
  • Two new security challenges
  • Denial of service attacks (DoS).
  • Security of mobile code.

18
Scalability
  • A system is described as scalable if it remains
    effective when there is a significant increase in
    the number of resources and the number of users.
  • Challenges
  • Controlling the cost of resources or money.
  • Controlling the performance loss.
  • Preventing software resources from running out
  • Avoiding preformance bottlenecks.

19
Failure handling
  • When faults occur in hardware or software,
    programs may produce incorrect results or they
    may stop before they have completed the intended
    computation.
  • Techniques for dealing with failures
  • Detecting failures
  • Masking failures
  • Tolerating failures
  • Recovering form failures
  • Redundancy

20
Concurrency
  • There is a possibility that several clients will
    attempt to access a shared resource at the same
    time.
  • Any object that represents a shared resource in a
    distributed system must be responsible for
    ensuring that operates correctly in a concurrent
    environment.

21
Transparency
  • Transparency is defined as the concealment from
    the user and the application programmer of the
    separation of components in a distributed system,
    so that the system is perceived as a whole rather
    than as a collection of independent components.
  • Eight forms of transparency
  • Access transparency
  • Location transparency
  • Concurrency transparency
  • Replication transparency
  • Failure transparency
  • Mobility transparency
  • Performance transparency
  • Scaling transparency

22
Summary
  • Distributed systems are everywhere
  • Internet, intranet, wireless networks.
  • Resource sharing is the main motivating factor
    for constructing distribute systems.
  • The constrcution of distributed systems produces
    many challenges.

23
Chapter 2 System Models
  • Introduction
  • Architectural models
  • Fundamental models
  • summary

24
Introduction
  • In this chapter we bring out the common
    properties and design issues for distributed
    systems in the form of descriptive modes.
  • An architectural model defines the way in which
    the components of systems interact with one
    another and the way in which they are maped onto
    an underlying network of computers
  • In section2.3, we introduce three fundamental
    models that help to reveal key problems for the
    designers of distributed system.

25
Difficulties and threats for distributed systems
  • Widely varying modes of use.
  • Wide range of system environments
  • Internal problems non-synchronized clocks,
    conflicting data updates, many modes of hardware
    and software failure involving the individual
    components of a system.

26
Architectural models
  • An architectural model of a distributed system
    first simplifies and abstracts the functions of
    the individual components of a DS and then it
    considers
  • The placement of the components across a network
    of computers
  • The interrelationships between the components.

27
Architectural models (cont.)
  • Software layers
  • System architectures
  • Variations on the client-server model
  • Interfaces and objects
  • Design requirements for distributed architectures

28
Software layers
  • Applications, services
  • Middleware
  • Operating system
  • Computer and network hardware

29
System architectures
  • Client-server model
  • Services provided by multiple servers
  • Proxy srvers and caches
  • Peer processes

30
Variations on the client-server model
  • Mobile code
  • Mobile agents
  • Network computers
  • Thin client
  • Mobile devices and spontaneous networking
  • The X-11 window system

31
Design requirements for distributed architectures
  • Performance issues
  • Use of caching and replication
  • Dependability issues

32
Performance issues
  • Responsiveness
  • Users of interactive aplication require a fast
    and consistent response to interaction.
  • Throughput
  • The rate at which computational work is done.
  • Quality of services
  • The ability to meet the deadlines of users need.
  • Balancing computer loads
  • In some case load balancing may involve moving
    partially-completed work as the loads on hosts
    changes.

33
Use of caching and replication
  • The performance issues often appear to be major
    obstacles to the successful deployment of DS, but
    much progress has been made in the design of
    systems that overcome them by the use of data
    replication and caching.

34
Dependability issues
  • The dependability of computer systems as
    correctness, security and fault tolerance.
  • Fault tolerance reliability is achieved through
    redundancy.
  • Security the architectural impact of the
    requirement for security concerns the need to
    locate sensitive data and other resources only in
    computers that can be effectively secured against
    attack.

35
Fundamental Models
  • Interaction model
  • Failure model
  • Security model

36
Interaction model
  • Performance of communication channels
  • Computer clocks and timing events
  • Two variants of the interaction model
  • Agreement in pepperland
  • Event ordering

37
Performance of communication channels
  • Communication performance is often a limiting
    characteristic.
  • The delay between the sending of a message by one
    process and its receipt by another is referred to
    as latency.
  • Bandwidth
  • Jitter is the variation in the time taken to
    deliver a series of messages.

38
Computer clock and timing event
  • It is impossible to maintain a single global
    notion of time.
  • There are several approaches to correcting the
    times on computer clocks. (from GPS)

39
Two variants of the interaction model
  • Synchronous distributed system
  • The time to execute each step f a process has
    known lower and uper bounds.
  • Each message transmitted over a channel is
    received within a known bounded time
  • Each process has a local clock whose drift rate
    from real time has a known bound.
  • Asynchronous distributed system
  • No bound on process executiong speeds
  • No bound on message transmisson delays
  • No bound on clock drift rates.

40
Agreement in pepperland
  • The pepperland divisions need to agree on which
    of them will lead the charge against the Blue
    Meanies, and when the charge will take place.
  • In asynchronous pepperland, the messengers are
    very variable in their speed.
  • The divisions know some useful constraints every
    message takes at least min. Minutes and at most
    max minutes to arive.
  • The leading division sends a message charge!,
    then waits for min minutes, then it charges.
  • The other divisions charge is guaranteed to be
    after the leading divisions, but no more than
    (max-min) after it.

41
Event ordering
  • In many cases, we are interested in knowing
    whether an event (sending or receiving a message)
    at one process occurred before, after or
    concurrently with another event at another
    process. The execution of a system can be
    described in terms of events and their ordering
    despite the lack of accurate clocks.
  • example(p. 58).

42
Failure model
  • Omission failures
  • Arbitrary failures
  • Failure detection
  • Impossibility of reaching agreement in the
    presence of failure
  • Masking failure
  • Reliability of one to one communication

43
Security model
  • Protecting objects
  • Securing processes and their interactions
  • The enemy
  • Defeating security threats
  • Other possible threats from the enemy
  • The uses of security models

44
summary
  • Most DS are arranged according to one of a
    variety of architectural models.
  • The fundamental models interaction, failure,
    and security identify the common
    characteristics of the basic components from
    which distributed systems are constructed.
Write a Comment
User Comments (0)
About PowerShow.com