Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Distributed Systems Corso di Laurea Specialistica in Ingegneria Informatica AA.

Slides:



Advertisements
Similar presentations
Lecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page: Lecture.
Advertisements

Jaringan Informasi Pengantar Sistem Terdistribusi oleh Ir. Risanuri Hidayat, M.Sc.
Distributed Systems 1 Topics  What is a Distributed System?  Why Distributed Systems?  Examples of Distributed Systems  Distributed System Requirements.
CS542: Topics in Distributed Systems
Objektorienteret Middleware Presentation 2: Distributed Systems – A brush up, and relations to Middleware, Heterogeneity & Transparency.
Definition of a Distributed System (1) A distributed system is: A collection of independent computers that appears to its users as a single coherent system.
Distributed components
CHARACTERIZATION OF DISTRIBUTED SYSTEMS
© Chinese University, CSE Dept. Distributed Systems / Distributed Systems Topic 1: Characterization and Design Goals Dr. Michael R. Lyu Computer.
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Introduction to Distributed Systems CS412: Programming Distributed Applications Computer Science Southern Illinois University CS412: Programming Distributed.
Tutorials 1 1.What is the definition of a distributed system? 1.A distributed system is a collection of independent computers that appears to its users.
DISTRIBUTED COMPUTING
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
CS431 Distributed Systems
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
Distributed Systems 1 CS- 492 Distributed system & Parallel Processing Sunday: 2/4/1435 (8 – 11 ) Lecture (1) Introduction to distributed system and models.
1 System Models. 2 Outline Introduction Architectural models Fundamental models Guideline.
Distributed Computing Class: BIT5 & 6 Instructor: Aatif Kamal Chapter 02: (part 01) Distributed System Models Dated: 7 th Sept 2006.
Chapter 1 Characterization of Distributed Systems Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, © Pearson Education.
CH2 System models.
Distributed Systems Principles and Paradigms
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Bộ môn Mạng và Truyền Thông Máy Tính.
Characterization of Distributed Systems
Active Monitoring in GRID environments using Mobile Agent technology Orazio Tomarchio Andrea Calvagna Dipartimento di Ingegneria Informatica e delle Telecomunicazioni.
1 MSCS 237 Communication issues. 2 Colouris et al. (2001): Is a system in which hardware or software components located at networked computers communicate.
Distributed Systems: Concepts and Design Chapter 1 Pages
Architectures of distributed systems Fundamental Models
Learning Objectives 1.Identify the major categories and trends of distributed system 2.Identify the essential processes of an e- commerce system, and give.
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Chapter 2: System Models. Objectives To provide students with conceptual models to support their study of distributed systems. To motivate the study of.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
OS2- Sem ; R. Jalili Introduction Chapter 1.
DISTRIBUTED COMPUTING Introduction Dr. Yingwu Zhu.
Distributed Computing Systems CSCI 4780/6780. Distributed System A distributed system is: A collection of independent computers that appears to its users.
1- Distributed Systems Principles and Paradigms Operating Systems: Concurrent and Distributed Software Design Jean Bacon, Tim Harris 2003.
1 MSCS 237 Communication issues. 2 Colouris et al. (2001): Is a system in which hardware or software components located at networked computers communicate.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
GLOBE DISTRIBUTED SHARED OBJECT. INTRODUCTION  Globe stands for GLobal Object Based Environment.  Globe is different from CORBA and DCOM that it supports.
Chapter 1: Distributed Systems Overview. Objectives To be aware of the characteristics of concurrency, independent failure of components and lack of a.
Definition of a Distributed System (1) A distributed system is: A collection of independent computers that appears to its users as a single coherent system.
© Chinese University, CSE Dept. Distributed Systems / Distributed Systems Topic 1: Characterization of Distributed & Mobile Systems Dr. Michael R.
Examples of distributed systems Resource sharing and the web
Distributed System Architectures Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
第 1 讲 分布式系统概述 §1.1 分布式系统的定义 §1.2 分布式系统分类 §1.3 分布式系统体系结构.
CSC 480 Software Engineering Lecture 17 Nov 4, 2002.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Distributed Systems Architecure. Architectures Architectural Styles Software Architectures Architectures versus Middleware Self-management in distributed.
Distributed Systems Architectures Chapter 12. Objectives  To explain the advantages and disadvantages of different distributed systems architectures.
Distributed Systems Architectures. Topics covered l Client-server architectures l Distributed object architectures l Inter-organisational computing.
Chapter 1 Characterization of Distributed Systems
Examples of distributed systems Resource sharing and the web
CSC 480 Software Engineering
#01 Client/Server Computing
Advanced Operating Systems
Distributed Systems Bina Ramamurthy 11/12/2018 From the CDK text.
Distributed Systems Bina Ramamurthy 11/30/2018 B.Ramamurthy.
Distributed Systems Bina Ramamurthy 12/2/2018 B.Ramamurthy.
Architectures of distributed systems Fundamental Models
Architectures of distributed systems Fundamental Models
Architectures of distributed systems
Distributed Systems Bina Ramamurthy 4/22/2019 B.Ramamurthy.
Introduction To Distributed Systems
Architectures of distributed systems Fundamental Models
Distributed Systems and Concurrency: Distributed Systems
#01 Client/Server Computing
Presentation transcript:

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Distributed Systems Corso di Laurea Specialistica in Ingegneria Informatica AA 2006/2007 Introduction Prof. Roberto Baldoni Ing. Alessia Milani Ing. Leonardo Querzoni Ing. Silvia Bonomi

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica A definition A distributed system is a set of spatially separate entities, each of these with a certain computational power that are able to communicate and to coordinate among themselves for reaching a common goal

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Primary Goal: sharing data/resources Problems Synchronization Coordination

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Coordination has to be implemented taking into account the following conditions that deviates from centralized systems: 1.Temporal and spatial concurrency 2.No global Clock 3.Failures 4.Unpredictable latencies These limitations restrict, for example, the set of coordination problems we can be solve in a distributed setting

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Distributed Systems Examples internet intranet sistema mobile But also..... Service Oriented Architectures Overlay Networks Grid P2P Pervasive Systems&Ubiquitous Computing

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Pervasive Systems Internet everywhere One-persons Many computers Mobility ……….. How can I keep consistent my mailbox???

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Characteristics..and Challenges Heterogeneity Openess Security Scalability Fault Tolerance Concurrency Transparency

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Heterogeneity Networks Hardware Operating Systems Programming Languages Implementations from different Developers Soluzioni Middleware (from RPC to Service oriented Architectures) Mobile code and Virtual Machine

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Openess Capability of a system to be extended and re-implemented Necessary condition, set of documents with software interfaces Interface Definition Language (it describes the syntax and the semantic of a service/component, available functions/services, input parameters, exceptions, etc) Problem: semantic description of a service. A specification of a service/componet is well-formed if it is : –Complete. A specification is complete if everything related to the implementation has been specified. If something has not been specified, the designer needs to add implementation dependent details. –Neutral. A specification is neutral is it does not offer any detail on a possible implementation

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Openess (ii) Interoperability. The capability of two systems to cooperate by using services/components specified by a common standard Portability. The capability if a service/component implemented on a distributed system A to work on a system B without doing any modification Flexibility. The capacity of a system to configure/ orchestrate components developed by various programmers Add-on Features. The capacity of a distributed system of adding components/services and be integrating in a running system

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Openess (iii) Other recent capabilities: –Evolvability. The capacity of a system to evolve in time for example leaving active two different version of the same service. –Self-* (self organization, self management, self healing etc). The capacity of a system to reconfigure, to manage itself without uman intervention The number of independent software developers make very complex the development of a distributed platform Examples: –RFC for internet –JBoss for J2EE platform

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Security Confidenziality (protection against the interception of data from unauthorized users) Integrity (protection against data alteration) Availability (protection against the interference in the access to a resource)

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Scalability A system is scalable if it remains running with adequate performance even if the number of users grow up of orders of magnitude Centralization is against scalability : –Service (single service for all users) –Data (single data structure for all processes) Date Computers Web servers 1979, Dec , July130, , July56,218,0005,560,866 Computers connected to the internet

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Scalability (ii) It becomes necessary using: –Service Replication Coordination Problems –Data Replication Consistency Problems –Distributed Algorithms No node has the current state of the whole system Nodes base their decisions on data they own A failure of a node should not compromize the goal of the algorithm Geographical Scalability

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Internet-scale Applications Enterprise Data Centers Scalable Consistency- based Applications First Open Workshop Budapest What is a large-scale distributed system? Cooperative Information Systems Scalable QoS based Applications eGov envelo p

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Failure Management Failure detection –Example: Checksum detects a corrupted packet Failure masking –Example: message retransmission Tolerating Failures –Example: intrusion tolerant systems Failure Recovery –Example: completing long running computation Redoundancy –Example: DNS

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Concurrency Multiple access to shared resources –If clients invokes concurrently read and write methods on a shared variable –Which value returns each read? Coordination Synchronization

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Transparency Access: allow to access remote and local resources with the same operations Location: allows to access resources without knowing their physical location Concurrency: allows a set of processes to run concurrently on shared resources without interfering among themselves Failures: allow to mask failures in order that users can complete remaining requested operations Mobility: allows to move resources and users without influencing operation issued by users Performance: allow system reconfiguration changing the load Performance of a solution based on a distributed system not always improve with respect to a solution based on a centralized system.

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Layering hw and sw

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Interaction Models client/server peer-to-peer

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Interaction Models Interaction models impact on scalability, availability, cost, security performances Eg. client/server with replicated services: availability, scalability performance: replication imposes an extra work for maintaining consistency despite replica crashes

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Web proxy server

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Web applets

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Thin clients and compute servers Thin Client Application Process Network computer or PC Compute server network

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Spontaneous networking in a hotel Internet gateway PDA service Music service Discovery Alarm Camera Guests devices Laptop TV/PC Hotel wireless network

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Real-time ordering of events

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Processes and channels

Università di Roma La Sapienza Dipartimento di Informatica e Sistemistica Middleware : problems to face Heterogeneity: OS, clock speeds, data representation, memory, architecture HW Local Asynchrony: load on a noad, diffeent OW, Interrupts Lack of global knowledge: knowledge propagates through messages whose messages whose propagation times will be much slower than time taken by the execution of an internal event Network Asyncrony: propagation times of message can be unpredictable. Failures of nodes or network partitions. Lack of a global order of events This limits the set of problems that can be solved through deterministic algorithms on some distributed systems