chapter 1n2 characterization and design goals

Upload: indahpratiwimaulidin

Post on 06-Apr-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    1/48

    Topic 1:

    Introduction to Distributed Systems,Characterization and Design Goals

    Dr Ahmad Suki Che Mohamed Arif

    School of ComputingUUM CAS, Universiti Utara Malaysia

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    2/48

    1. What is a Distributed System

    2. Examples of Distributed

    Systems3. Common Characteristics

    4. Basic Design Issues

    5. Design Requirements6. Summary

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    3/48

    Fully

    Distributed

    D

    ata

    Processors

    Control

    Fully replicated

    Not fully replicated

    master directory

    Local data,

    local directory

    Master-slave

    Autonomous trans-

    action based

    Autonomousfully cooperative

    Homog.special

    purpose

    Heterog.

    special

    purpose

    Homog.general

    purpose

    Heterog.

    general

    purpose

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    4/48

    A programming languageis/was only compatible withcertain operating systems.

    VB is only for MS Windows.

    http://en.wikipedia.org/wiki/List_of_operating_systems

    http://en.wikipedia.org/wiki/List_of_operating_systemshttp://en.wikipedia.org/wiki/List_of_operating_systems
  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    5/48http://en.wikipedia.org/wiki/List_of_operating_systems

    http://en.wikipedia.org/wiki/List_of_operating_systemshttp://en.wikipedia.org/wiki/List_of_operating_systems
  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    6/48

    A client that is set to server A, will only usethat server resources.Event though many other computers are idle.

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    7/48

    A client that is set to server A, has to bereplaced if the server is not scalabled.Certain application can only be implemented in

    certain types of machines.

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    8/48

    Certain database application/server mightnot able to be implemented if cantsupport a huge data.

    It definitely needs to be distributed

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    9/48

    Mobile devices and computer/databaseservers are not connected.Computer applications are not accessible from

    a mobile device.

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    10/48

    Computing in computer networksplatform?

    Computing components are not in a single

    computer (distributed across multiplecomputers on the network).

    Resource sharing cloud computing.

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    11/48

    Definition: A distributed system is one in whichcomponents located at networked computerscommunicate and coordinate their actions only bypassing messages. This definition leads to the

    following characteristics of distributed systems:concurrency of components

    lack of a global clock

    independent failures of components

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    12/48

    One component with non-autonomousparts

    Component shared by users all the time

    All resources accessible

    Software runs in a single process

    Single point of control

    Single point of failure

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    13/48

    Multiple autonomous components

    Components are not shared by allusers

    Resources may not be accessible

    Software runs in concurrent processeson different processors

    Multiple points of control

    Multiple points of failure

    14

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    14/48

    14

    Instructors Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

    Finance and commerce eCommerce e.g. Amazon and eBay, PayPal,online banking and trading

    The information society Web information and search engines, ebooks,Wikipedia; social networking: Facebook and MySpace.

    Creative industries and entertainmentonline gaming, music and film in the home, user-generated content, e.g. YouTube, Flickr

    Healthcare health informatics, on online patient records,

    monitoring patients

    Education e-learning, virtual learning environments; distancelearning

    Transport and logistics GPS in route finding systems, map services:Google Maps, Google Earth

    Science The Grid as an enabling technology forcollaboration between scientists

    Environmental management sensor technology to monitor earthquakes, floodsor tsunamis

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    15/48

    The emergence of pervasive networkingtechnologyDevices can be connected at any time and in

    any place.

    The emergence of ubiquitous computingcoupled with the desire to support usermobility in distributed systems.

    The increasing demand for multimediaservices Including various real-time and on-demand

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    16/48

    Instructors Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

    intranet

    ISP

    desktop computer:

    backbone

    satellite link

    server:

    network link:

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    17/48

    Instructors Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

    18

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    18/48

    8

    Instructors Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    19/48

    What are we trying to achieve when weconstruct a distributed system?

    Challenges in distributed systemsHeterogeneity: variety and differences in computing

    components Openness: uniform communication mechanism and

    published interfaces for access to shared resources. Security Scalability

    Failure Handling ConcurrencyTransparency

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    20/48

    Variety and differences in Networks Computer hardware Operating systems Programming languages

    Implementations by different developers Middleware as software layers to provide a

    programming abstraction as well as maskingthe heterogeneity of the underlying networks,hardware, OS, and programming languages(e.g., CORBA).

    Mobile Code to refer to code that can be sentfrom one computer to another and run at thedestination (e.g., Java applets and Java virtual

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    21/48

    Openness is concerned with extensionsand improvements of distributed systems.

    Detailed interfaces of components need to

    be published.New components have to be integrated

    with existing components.

    Differences in data representation ofinterface types on different processors (ofdifferent vendors) have to be resolved.

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    22/48

    In terms of CONFIDENTIALITY, INTEGRITY &AVAILABILITY.

    In a distributed system, all open resources need tobe allowed, while confidential data has to be

    restricted to authorized users only. Security is required for Concealing the contents of messages: security and

    privacy Identifying a remote user or other agent correctly:

    authentication New challenges:

    Denial of service attack Security of mobile code

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    23/48

    Adaptation of distributed systems toaccommodate more users

    respond faster (this is the hard one)

    Challenges:Controlling the cost of physical resources.

    Controlling the performance loss

    Preventing software resources running outAvoiding performance bottlenecks

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    24/48

    Hardware, software and networks mightfail independently.Example: DNS fail & web server limitation

    cases

    Solution & Challenge Issues:Detecting failures

    Masking failures retransmitted when failure

    occursTolerating failures informs user about the

    problem

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    25/48

    Components in distributed systems areexecuted in concurrent processes.

    Components access and update shared

    resources (e.g. variables, databases,device drivers).

    Integrity of the system may be violated ifconcurrent updates are not coordinated.Lost updates

    Inconsistent analysis

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    26/48

    Distributed systems should be perceivedby users and application programmers as awhole rather than as a collection ofcooperating components.

    Transparency has different aspects.

    These represent various properties that

    distributed systems should have.

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    27/48

    Instructors Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

    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.

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    28/48

    Enables local and remote informationobjects to be accessed using identicaloperations.

    Example: File system operations inNFS.

    Example: Navigation in the Web.

    Example: SQL Queries

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    29/48

    Enables information objects to beaccessed without knowledge of theirlocation.

    Example: File system operations in NFS

    Example: Pages in the Web

    Example: Tables in distributeddatabases

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    30/48

    Enables several processes to operateconcurrently using shared informationobjects without interference betweenthem.

    Example: NFS

    Example: Automatic teller machinenetwork

    Example: Database management system

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    31/48

    Enables multiple instances of informationobjects to be used to increase reliabilityand performance without knowledge of thereplicas by users or application programs

    Example: Distributed DBMS

    Example: Mirroring Web Pages.

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    32/48

    Enables the concealment of faultsAllows users and applications to complete

    their tasks despite the failure of other

    components.Example: Database Management System

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    33/48

    Allows the movement of informationobjects within a system without affectingthe operations of users or applicationprograms

    Example: NFS

    Example: Web Pages

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    34/48

    Allows the system to be reconfigured toimprove performance as loads vary.

    Example: Distributed make.

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    35/48

    Allows the system and applications toexpand in scale without change to thesystem structure or the applicationalgorithms.

    Example: World-Wide-Web

    Example: Distributed Database

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    36/48

    Case of the World Wide Web (refer tosection 1.6 pg 42 of the text book)

    Networking and internetworking (Chapter

    3).

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    37/48

    What are the entities that arecommunicating in the distributed systems?

    How do they communicate, or, more

    specifically what communication paradigmis used?

    What (potentially changing) roles andresponsibilities do they have in the overall

    architecture?How are they mapped on to the physical

    distributed infrastructure (what is their

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    38/48

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    39/48

    Client-serverPeer-to-peer

    Services provided by multiple servers

    Proxy servers and cachesMobile code and mobile agents

    Network computers

    Thin clients and mobile devices

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    40/48

    Instructor s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

    Server

    Client

    Client

    invocation

    result

    Serverinvocation

    result

    Process:Key:

    Computer:

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    41/48

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    42/48

    Instructor s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

    Server

    Server

    Server

    Service

    Client

    Client

    A service provided by multiple servers

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    43/48

    Instructor s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

    Client

    Proxy

    Web

    server

    Web

    server

    serverClient

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    44/48

    Instructor s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

    a) client request results in the downloading of applet code

    Web

    server

    ClientWeb

    server

    Applet

    Applet code

    Client

    b) client interacts with the applet

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    45/48

    ThinClient

    ApplicationProcess

    Network computer or PCCompute server

    network

    a computeror a computer programwhich depends heavily on some

    other computer (itsserver) to fulfill its traditional computationalroles.

    The most common type of modern thin client is a low-end

    computer terminalwhich concentrates solely on providing a

    graphical user interfaceto the end-user.

    http://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Computerhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Computer_terminalhttp://en.wikipedia.org/wiki/Computer_terminalhttp://en.wikipedia.org/wiki/Graphical_user_interfacehttp://en.wikipedia.org/wiki/Graphical_user_interfacehttp://en.wikipedia.org/wiki/Graphical_user_interfacehttp://en.wikipedia.org/wiki/Computer_terminalhttp://en.wikipedia.org/wiki/Computer_programhttp://en.wikipedia.org/wiki/Computer
  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    46/48

    Instructor s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

    Applications, services

    Computer and network hardware

    Platform

    Operating system

    Middleware

    47

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    47/48

    Instructor s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5

    Pearson Education 2012

  • 8/3/2019 Chapter 1n2 Characterization and Design Goals

    48/48

    Definitions of distributed systems andcomparisons to centralized systems.

    The characteristics of distributed

    systems.The eight forms of transparency.

    The basic design issues.

    Typical design requirements.Read Chapter 1 and Chapter 2 of the

    textbook.