SCD. Comunicazione. Sistemi distribuiti: comunicazione. UniPD - SCD 2010/11 - Corso di Sistemi Concorrenti e Distribuiti 1. Evoluzione di modelli
|
|
- Orlando Palla
- 4 anni fa
- Visualizzazioni
Transcript
1 Evoluzione di modelli Comunicazione Anno accademico 2010/11 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Remote Procedure Call (RPC) Trasparente rispetto allo scambio messaggi necessario per supportare l interazione cliente-servente a livello applicazione Remote (Object) Method Invocation (RMI) L interazione a livello applicazione avviene attraverso oggetti distribuiti Scambio messaggi a livello middleware Con paradigmi espliciti a livello applicazione Stream o comunicazioni a flusso continuo Flusso di dati che richiedono continuità temporale Corso di Laurea Magistrale in Informatica, Università di Padova 1/39 Corso di Laurea Magistrale in Informatica, Università di Padova 2/39 Visione a livelli 1 Visione a livelli 2 Livelli 5-7 del modello OSI TCP/IP Messaggio a livello applicazione Connessione punto a punto tra sottoreti Connessioni mittente-destinatario Composizione del messaggio in transito sul mezzo fisico Corso di Laurea Magistrale in Informatica, Università di Padova 3/39 Corso di Laurea Magistrale in Informatica, Università di Padova 4/39 Visione per analogie Scambio messaggi Programmazione non strutturata Scambio messaggi via socket Chi definisce sintassi e semantica della comunicazione? Chi ne garantisce la corretta interpretazione? Programmazione strutturata RPC Programmazione a oggetti RMI Paradigmi più avanzati Corso di Laurea Magistrale in Informatica, Università di Padova 5/39 Corso di Laurea Magistrale in Informatica, Università di Padova 6/39 UniPD - SCD 2010/11 - Corso di Sistemi Concorrenti e Distribuiti 1
2 RPC 1 Consentire a un processo C residente su un elaboratore (nodo) E1 di invocare ed eseguire una procedura P residente su un nodo E2 Durante l invocazione il chiamante viene sospeso I parametri di ingresso viaggiano da chiamante a chiamato I parametri di ritorno viaggiano da chiamato a chiamante Chiamante e chiamato non sono coinvolti nello scambio di messaggi sottostante Trasparenza! Chiamata di procedura locale Stack del processo Variabili locali dell unità principale del programma (main) Read(fd,buf,nbytes) RPC 2 Stack del processo Variabili locali dell unità principale del programma (main) 1 a posizione libera Il linguaggio C pone nbytes i parametri sullo stack buf in ordine inverso fd Area libera Indirizzo di ritorno Ogni linguaggio ha le sue proprie convenzioni Variabili locali di Read di chiamata 1 a posizione libera Corso di Laurea Magistrale in Informatica, Università di Padova 7/39 Corso di Laurea Magistrale in Informatica, Università di Padova 8/39 RPC 3 I parametri di procedura locale possono essere inviati per valore (call-by-copy) o per riferimento (call-by-reference) Un parametro inviato per valore viene semplicemente copiato sullo stack del chiamato Le modifiche apportate dal chiamato non hanno effetto sul chiamante Un parametro passato per riferimento fornisce un accesso (puntatore) a una variabile nello spazio del chiamante Le modifiche apportate dal chiamante hanno effetto sul chiamato La variante call-by-value-return produce questo effetto solo al ritorno Chiamata di procedura remota RPC 4 Corso di Laurea Magistrale in Informatica, Università di Padova 9/39 Corso di Laurea Magistrale in Informatica, Università di Padova 10/39 RPC 5 Trasparenza di locazione di chiamante e chiamato Le procedure invocabili in remoto nello spazio del chiamante sono descritte da una procedura fittizia detta client stub invocabile con le convenzioni locali Questa procedura svolge le azioni necessarie (invio chiamata e acquisizione ritorno) per effettuare la chiamata remota e riceverne il ritorno Tali azioni avvengono tramite scambio messaggi trasparente all applicazione L arrivo del messaggio nello spazio del chiamato attiva una procedura fittizia detta server stub Questa procedura trasforma il messaggio in chiamata locale alla procedura invocata, ne raccoglie l esito e lo invia al chiamante come messaggio RPC 6 Il client stub trasforma la chiamata in una sequenza di messaggi da inviare sulla rete Parameter marshalling Relativamente agevole con parametri passati per valore Occorre solo assicurare trasparenza di accesso Rappresentazione dei valori secondo le convenzioni di chiamante e chiamato Molto difficile con parametri passati per riferimento Il server stub esegue una trasformazione analoga e opposta Parameter unmarshalling Corso di Laurea Magistrale in Informatica, Università di Padova 11/39 Corso di Laurea Magistrale in Informatica, Università di Padova 12/39 UniPD - SCD 2010/11 - Corso di Sistemi Concorrenti e Distribuiti 2
3 RPC 7 RPC 8 Tre aspetti chiave caratterizzano lo specifico protocollo RPC Il formato dei messaggi scambiati tra gli stub La rappresentazione dei dati attesa da chiamante e chiamato Encoding La modalità di comunicazione su rete P.es.: TCP, UDP, Corso di Laurea Magistrale in Informatica, Università di Padova 13/39 Corso di Laurea Magistrale in Informatica, Università di Padova 14/39 Un servente si rende noto ai suoi clienti tramite registrazione del suo nodo di residenza presso un anagrafe pubblica Il cliente prima localizza il nodo di residenza del servente e poi il processo servente (la sua porta) Binding RPC 9 In ascolto sulla porta del servente può trovarsi un daemon RPC di base è sincrona Ammette però variante asincrona RPC 10 Può avere semantica diversa in presenza di errori di rete At-least-once At-most-once Exactly-once Determinata dal protocollo di richiesta e risposta in uso tra gli stub Corso di Laurea Magistrale in Informatica, Università di Padova 15/39 Corso di Laurea Magistrale in Informatica, Università di Padova 16/39 Semantica della comunicazione 1 Semantica della comunicazione 2 Il protocollo di request-reply usa una combinazione di 3 meccanismi di base Lato cliente: Riprova (Request Retry) RR1 Il cliente prova fino a ottenere risposta o certezza del guasto del destinatario Lato servente: Filtra i duplicati (Duplicate filtering) DF Il servente scarta gli eventuali duplicati provenienti dallo stesso cliente Lato servente: Ritrasmetti le risposte (Result Retransmit) RR2 Il servente conserva le risposte per poterle ritrasmettere senza ricalcolarle Fondamentale per calcolo non idempotente (!) Semantica maybe Nessun meccanismo in uso Il cliente non può sapere quante volte la sua richiesta sia stata eseguita Semantica at least once Il lato cliente usa RR1, il lato servente niente Se la risposta arriva il cliente non sa quante volte sia stata calcolata dal servente Semantica at most once Tutti i meccanismi in uso Se la risposta arriva il cliente sa che è stata calcolata una sola volta La risposta non arriva solo a causa di guasti permanenti del servente Semantica exactly once Ha bisogno di meccanismi supplementari per tollerare guasti di lato servente P.es. replicazione trasparente Corso di Laurea Magistrale in Informatica, Università di Padova 17/39 Corso di Laurea Magistrale in Informatica, Università di Padova 18/39 UniPD - SCD 2010/11 - Corso di Sistemi Concorrenti e Distribuiti 3
4 RMI 1 Il paradigma RPC può essere facilmente esteso al modello a oggetti distribuiti Soluzioni storiche standard di riferimento CORBA (Common Object Request Broker Architecture) OMG DCOM (Distributed Component Object Model) poi.net Microsoft J2EE (Java 2 Platform Enterprise Edition) poi Enterprise Java Beans Sun Microsystems ora Oracle La separazione logica tra interfaccia e oggetto facilita la distribuzione RMI 2 L interfaccia di un oggetto può essere distribuito senza che lo sia il suo stato interno Al binding di un cliente con un oggetto distribuito, una copia dell interfaccia del servente (proxy) viene caricata nello spazio del cliente Ruolo del tutto analogo a quello del client stub in ambiente RPC La richiesta in arrivo all oggetto remoto viene trattata da un agente (skeleton) del cliente localmente al servente Ruolo del tutto analogo a quello del server stub in ambiente RPC Corso di Laurea Magistrale in Informatica, Università di Padova 19/39 Corso di Laurea Magistrale in Informatica, Università di Padova 20/39 Realizzazione di oggetti distribuiti RMI 3 L oggetto remoto vive nello spazio di un servente Oggetti di tipo compile-time RMI 4 Realizzazione completamente determinata dal linguaggio di programmazione Ambiente e protocollo d uso noti e uniformi Oggetti di tipo run-time Quando ciò che si vuole far apparire come oggetto non lo è necessariamente nella sua concreta realizzazione L entità concreta (più spesso solo la sua interfaccia) viene incapsulata in un object wrapper che appare all esterno come un normale oggetto distribuito Corso di Laurea Magistrale in Informatica, Università di Padova 21/39 Corso di Laurea Magistrale in Informatica, Università di Padova 22/39 Oggetti persistenti Continuano a esistere anche al di fuori dello spazio di indirizzamento del processo servente Lo stato persistente dell oggetto distribuito viene salvato in memoria secondaria e da lì ripristinato dai processi servente delegati a farlo Oggetti transitori RMI 5 Cessano di esistere insieme al processo servente che li contiene Modelli RMI diversi fanno scelte diverse RMI offre maggiore trasparenza di RPC RMI 6 I riferimenti a oggetti distribuiti hanno scope globale possono essere liberamente scambiati a livello sistema Un riferimento poco scalabile usa un analogo del daemon RPC per interconnettere cliente e servente dell oggetto <indirizzo di rete del daemon; identificatore del servente> Modalità di riferimento Explicit binding Il cliente deve passare attraverso un registro che restituisce un puntatore al proxy dell oggetto servente (Java RMI) Implicit binding Il linguaggio risolve direttamente il riferimento (C++ Distr_object) Corso di Laurea Magistrale in Informatica, Università di Padova 23/39 Corso di Laurea Magistrale in Informatica, Università di Padova 24/39 UniPD - SCD 2010/11 - Corso di Sistemi Concorrenti e Distribuiti 4
5 RMI 7 RMI 8 Invocazione statica Nota al compilatore che predispone l invocazione del proxy dal lato cliente L interfaccia del servizio deve essere noto al programmatore del cliente Se cambia l interfaccia deve cambiare anche il cliente (nuova compilazione) Invocazione dinamica Deve essere costruita a tempo d esecuzione Sia l oggetto distribuito che il metodo desiderato sono parametri assegnati dal programma (ignoti al compilatore) Cambiamenti nell interfaccia non hanno impatto sul codice del cliente I parametri locali vengono passati per valore Quelli remoti per riferimento: la copia dell oggetto può essere troppo onerosa! Corso di Laurea Magistrale in Informatica, Università di Padova 25/39 Corso di Laurea Magistrale in Informatica, Università di Padova 26/39 Scambio messaggi 1 Scambio messaggi 2 Comunicazione persistente Il messaggio del mittente viene trattenuto dal MW fino alla consegna al destinatario Comunicazione transitoria Non garantisce consegna del messaggio al destinatario perché è fragile rispetto ai possibili guasti (temporanei o permanenti) Analogo al modello di servizio del protocollo UDP Comunicazione asincrona Il mittente attende solo fino alla presa in carico del messaggio da parte del MW Comunicazione sincrona Il mittente attende fino alla ricezione del destinatario o del suo MW Strato middleware Cosa rende la comunicazione persistente o transitoria? Corso di Laurea Magistrale in Informatica, Università di Padova 27/39 Corso di Laurea Magistrale in Informatica, Università di Padova 28/39 Scambio messaggi 3 Scambio messaggi 4 Comunicazione persistente e asincrona Come per la posta elettronica Comunicazione persistente e sincrona Mittente bloccato fino alla ricezione garantita del destinatario Comunicazione transitoria e asincrona Mittente non attende ma messaggio può andare perso UDP Comunicazione transitoria e sincrona 1. Mittente bloccato fino all arrivo del messaggio nel MW del destinatario 2. Mittente bloccato fino alla copia (non garantita) del messaggio nello spazio del destinatario RPC asincrona 3. Mittente bloccato fino alla ricezione di un messaggio di risposta dal destinatario RPC standard e RMI Lo scambio messaggi in ambiente distribuito comporta problemi di persistenza della comunicazione e di sincronizzazione tra mittente e destinatario Corso di Laurea Magistrale in Informatica, Università di Padova 29/39 Corso di Laurea Magistrale in Informatica, Università di Padova 30/39 UniPD - SCD 2010/11 - Corso di Sistemi Concorrenti e Distribuiti 5
6 Scambio messaggi 5 Middleware orientato a messaggi Applicazioni distribuite comunicano tramite inserzione di messaggi in specifiche code modello a code di messaggi Eccellente supporto a comunicazioni persistenti e asincrone Nessuna garanzia che il destinatario prelevi il messaggio dalla sua coda Di immediata realizzazione tramite Put non bloccante (asincrona come trattare il caso di coda piena?) Get bloccante (sincrona rispetto alla presenza di messaggi in coda) Un meccanismo di callback separa la coda dall attivazione del destinatario Una risorsa protetta realizza la coda con metodo Put di tipo P e metodo Get di tipo E Realizzando coda proxy presso mittente e coda skeleton presso destinatario Scambio messaggi 6 La coda appare locale sia al mittente che al destinatario (trasparenza). Ciò richiede che il middleware mantenga la corrispondenza tra la coda destinazione e il suo indirizzo di rete Corso di Laurea Magistrale in Informatica, Università di Padova 31/39 Corso di Laurea Magistrale in Informatica, Università di Padova 32/39 Scambio messaggi 7 Il middleware realizza una rete logica sovrapposta a quella fisica (overlay network) con topologia propria e distinta Ciò richiede un proprio servizio di instradamento (routing) Una sottorete connessa di instradatori conosce la topologia della rete logica e si occupa di far pervenire il messaggio del mittente alla coda del destinatario Topologie complesse e variabili (scalabili) richiedono gestione dinamica delle corrispondenze coda-indirizzo di rete, in totale analogia con quanto avviene nel modello IP Scambio messaggi 8 L architettura generale di una rete logica scalabile richiede un insieme di nodi/processi specializzati nel servizio di instradamento Un adattatore (broker) fornisce trasparenza di accesso a messaggi il cui formato aderisce a standard di trasporto diversi nel suo percorso La natura del middleware è adattativa e non intrusiva Corso di Laurea Magistrale in Informatica, Università di Padova 33/39 Corso di Laurea Magistrale in Informatica, Università di Padova 34/39 Comunicazioni a flusso continuo 1 Comunicazioni a flusso continuo 2 Il contenuto delle comunicazioni scambiate tramite RPC, RMI e messaggi non dipende dal tempo di ricezione Mezzo trasmissivo detto a rappresentazione discreta Adatto a testo, fotografie digitali, file oggetto, eseguibili Vi sono comunicazioni il cui contenuto presenta dipendenze temporali forti Mezzo trasmissivo detto a rappresentazione continua Adatto a video, audio data stream : una sequenza di unità dati collegate Requisiti temporali espressi come Qualità del Servizio (QoS) L invio di data stream è facilitato dal mezzo trasmissivo a rappresentazione continua, ma non ne è dipendente Le pipe di UNIX e le connessioni di TCP/IP forniscono un mezzo trasmissivo a rappresentazione discreta (orientato a [gruppi di] byte) Vincoli temporali sulla modalità trasmissiva Asincrona Preserva l ordinamento, non la distanza temporale tra unità dati Sincrona Preserva l ordinamento e garantisce un tempo massimo di trasmissione di ogni unità dati Isocrona Aggiunge la garanzia di un tempo minimo di trasmissione bounded (delay) jitter Corso di Laurea Magistrale in Informatica, Università di Padova 35/39 Corso di Laurea Magistrale in Informatica, Università di Padova 36/39 UniPD - SCD 2010/11 - Corso di Sistemi Concorrenti e Distribuiti 6
7 Comunicazioni a flusso continuo 3 Gli stream possono essere compositi (internamente strutturati) con requisiti temporali tra le parti che li compongono Problema di sincronizzazione Stream come connessione virtuale tra sorgente e destinazione Multicast : più destinatari di uno stesso stream La connessione deve essere configurata in termini di risorse fisiche e logiche dedicate (QoS) Comunicazioni a flusso continuo 4 QoS espressa come specifica di flusso Capacità di trasporto (bandwidth), frequenza di trasmissione, ritardi di trasmissione, ecc. Il Token Bucket Algorithm fissa il contributo dello stream al traffico di rete Un controllore produce gettoni che comprano un diritto d uscita Ogni unità dati in ingresso viene inviata sulla rete se può consumare un gettone Altrimenti resta in coda (o viene scartata a coda piena) Le unità dati vengono emesse sulla rete con la frequenza di generazione del gettone Indipendentemente da possibili irregolarità di lato mittente Corso di Laurea Magistrale in Informatica, Università di Padova 37/39 Corso di Laurea Magistrale in Informatica, Università di Padova 38/39 Comunicazioni a flusso continuo 5 Un esempio di sincronizzazione di stream MPEG (Motion Picture Expert Group) Un insieme di algoritmi standard per la compressione di video e audio Per combinare in un singolo stream un insieme illimitato di stream distinti sia discreti che continui Ciascuno stream originario viene trasformato in un flusso di unità dati (frame) la cui sequenza è determinata da un etichetta temporale generata da un orologio unico con caratteristiche fissate (90 MHz) I pacchetti di ciascuno stream vengono combinati mediante multiplexing in una sequenza composita di pacchetti a lunghezza variabile ma con propria etichetta temporale A destinazione si ricompongono gli stream originari usando l etichetta temporale per riprodurre la sincronizzazione tra ciascuna unità dati al suo interno Corso di Laurea Magistrale in Informatica, Università di Padova 39/39 UniPD - SCD 2010/11 - Corso di Sistemi Concorrenti e Distribuiti 7
SCD. Comunicazione in Distribuito. Sistemi distribuiti: comunicazione. Visione a livelli 1. Visione a livelli 2. Evoluzione di modelli
Visione a livelli 1 Comunicazione in Distribuito SCD TCP/IP Livelli 5-7 del modello OSI Anno accademico 2015/16 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it Connessione
DettagliSCD. Comunicazione in Distribuito. Sistemi distribuiti: comunicazione. Visione a livelli 1. Visione a livelli 2. Evoluzione di modelli
Visione a livelli 1 Comunicazione in Distribuito SCD TCP/IP Livelli 5-7 del modello OSI Anno accademico 2014/15 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it Connessione
DettagliSCD. Comunicazione in distribuito. Sistemi distribuiti: comunicazione. Evoluzione di modelli. Visione a livelli 2. Visione a livelli 1
Comunicazione in distribuito Anno accademico 2017/18 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Evoluzione di modelli Remote Procedure Call (RPC) Trasparente
DettagliApplicazioni distribuite e sistemi ad oggetti distribuiti. RPC RMI - Web Services 1
Applicazioni distribuite e sistemi ad oggetti distribuiti RPC RMI - Web Services 1 Complessità delle applicazioni distribuite La scrittura di applicazioni distribuite basate sull utilizzo di protocolli
DettagliApplicazioni distribuite e sistemi ad oggetti distribuiti
Applicazioni distribuite e sistemi ad oggetti distribuiti Complessità delle applicazioni distribuite La scrittura di applicazioni distribuite basate sull utilizzo di protocolli di comunicazione asincroni
DettagliSCD. Processi e concorrenza in distribuito. Sistemi distribuiti: processi e concorrenza. Cliente e servente concorrenti 1
Cliente e servente concorrenti 1 Processi e concorrenza in distribuito Anno accademico 2012/13 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Multi-threading di
DettagliChiamata remota di metodi
Chiamata remota di metodi Architettura di Java RMI Esecuzione di una Java RMI Architettura di RMI client server Stub & Skeleton Stub & Skeleton Remote Reference Remote Reference Trasporto Ciascun livello
DettagliSCD. Sistemi distribuiti: introduzione. Sistemi distribuiti: introduzione. Sistemi distribuiti: introduzione
Anno accademico 2004/5 Corso di Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Definizione Un sistema distribuito è un insieme di elaboratori indipendenti capaci
DettagliCorso Sistemi Distribuiti 6 cfu Docente: Prof. Marcello Castellano
Corso Sistemi Distribuiti 6 cfu Docente: Prof. Marcello Castellano Contenuti Comunicazione orientata ai messaggi - 3 Message Passing Interface (MPI) - 4 Comunicazione punto-punto in MPI - 5 Middleware
DettagliPiattaforme Software Distribuite. Roberto Beraldi
Piattaforme Software Distribuite Roberto Beraldi Middleware classification Middleware Synchronous Approaches (Tightly coupled) Asynchronous approaches (Loosely coupled) Interprocess communication and Serialization
DettagliSCD. Processi e concorrenza in distribuito. Sistemi distribuiti: processi e concorrenza. Considerazioni di costo 2. Considerazioni di costo 3
Considerazioni di costo 2 Processi e concorrenza in distribuito Anno accademico 2013/14 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Laurea Magistrale in Informatica,
DettagliCORSO PAS Laboratorio di RETI
CORSO PAS Laboratorio di RETI Nicola Drago nicola.drago@univr.it Dipartimento di Informatica Università di Verona Le origini della comunicazione: Socket In un primo tempo nasce in ambiente UNIX Negli anni
DettagliSCD. Sincronizzazione. Sistemi distribuiti: sincronizzazione. Stato del sistema 2. Stato del sistema 3. Stato del sistema 1. Distributed snapshot
Stato del sistema 2 Sincronizzazione Anno accademico 2014/15 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Laurea Magistrale in Informatica, Università di Padova
DettagliArchitetture dei sistemi distribuiti. Mariagrazia Fugini Impianti Como 08-09
Architetture dei sistemi distribuiti Mariagrazia Fugini Impianti Como 08-09 Sommario Sistemi centralizzati e distribuiti Meccanismi per sistemi distribuiti RPC Client-server Middleware Distributed object
DettagliArchitettura a oggetti distribuiti
Luca Cabibbo Architettura dei Sistemi Software Architettura a oggetti distribuiti dispensa asw435 marzo 2018 First Law of Distributed Object Design: Don t distribute your objects! Martin Fowler 1 - Fonti
DettagliSCD. Il modello CORBA. Sistemi distribuiti: il modello CORBA. Architettura del modello 2. Architettura del modello 3. Architettura del modello 1
Architettura del modello 2 Il modello CA Anno accademico 2017/18 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Modello cliente-servente a oggetti distribuiti La
DettagliArchitettura di rete. Modelli di Riferimento: TCP/IP e OSI. Modello di riferimento OSI. Modelli di riferimento. architettura di rete
I semestre 02/03 Modelli di Riferimento: TCP/IP e OSI Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Architettura di rete architettura di rete insieme delle specifiche funzionali
DettagliSCD. Sincronizzazione in distribuito. Sistemi distribuiti: sincronizzazione. Stato del sistema 2. Stato del sistema 3. Stato del sistema 1
Stato del sistema 2 Sincronizzazione in distribuito Anno accademico 2017/18 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Distributed snapshot Riflette uno stato
DettagliISO- OSI e architetture Client-Server
LEZIONE 9 ISO- OSI e architetture Client-Server Proff. Giorgio Valle Raffaella Folgieri giorgio.valle@unimi.it folgieri@dico.unimi.it Lez 10 modello ISO-OSI e architettura client-server 1 Nelle scorse
DettagliComunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione
I semestre 03/04 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 2
DettagliSCD. Sistemi distribuiti: introduzione. Openness. Sistemi distribuiti: introduzione. Caratteristiche di trasparenza
Caratteristiche di trasparenza Anno accademico 201/14 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Trasparenza di Accesso Collocazione Per nascondere Differenze
DettagliSCD. Sistemi distribuiti: introduzione. Sistemi distribuiti: introduzione. Sistemi distribuiti: introduzione
Anno accademico 2007/8 Corso di Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Definizione Un sistema distribuito è un insieme di elaboratori indipendenti capaci
DettagliInvocazione remota. Coulouris, G., Dollimore, J., Kindberg, T., and Blair, G. Distributed Systems: Concepts and Design, fifth edition. Pearson, 2012.
Luca Cabibbo Architettura dei Sistemi Software dispensa asw430 marzo 2017 Knowing a failure has occurred is more important than the actual failure. K. Kjos 1 - Fonti Coulouris, G., Dollimore, J., Kindberg,
DettagliRemote Procedure Call
Remote Procedure Call Concetti generali e principi di progettazione Architettura (schema concettuale) pack args client APPLICATION LEVEL local call local return suspended execution STUB unpack results
DettagliSCD. Openness. Sistemi distribuiti: introduzione. Definizione
Definizione Anno accademico 2012/1 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Un sistema distribuito è un insieme di nodi di calcolo indipendenti capaci di apparire
DettagliMIDDLEWARE E COMPONENTI: direzioni di evoluzione e stato dell'arte
MIDDLEWARE E COMPONENTI: direzioni di evoluzione e stato dell'arte DCOM: Distributed Component Object Model Applicazione Server Applicazione Client Fornitura di servizi WEB in ambiente distribuito Sempre
DettagliMIDDLEWARE E COMPONENTI: direzioni di evoluzione e stato dell'arte
MIDDLEWARE E COMPONENTI: direzioni di evoluzione e stato dell'arte Fornitura di servizi WEB in ambiente distribuito Sempre più servizi intesi come sistemi o framework (integrazione e composizione) di oggetti
DettagliOrganizzazione della lezione
Laboratorio Reti di Calcolatori (A.A. 2008-2009) Delfina Malandrino delmal@dia.unisa.it http://www.dia.unisa.it/professori/delmal/ Organizzazione della lezione 2 Struttura del corso Alcune informazioni
DettagliTerminologia e concetti fondamentali La struttura di Internet (hardware e software):
Introduzione Terminologia e concetti fondamentali La struttura di Internet (hardware e software): Accesso alla rete: end-systems, applicazioni, mezzi trasmissivi Nucleo: commutazione, struttura della rete,
DettagliModello a scambio di messaggi
Modello a scambio di messaggi Aspetti caratterizzanti il modello Canali di comunicazione Primitive di comunicazione 1 Aspetti caratterizzanti il modello modello architetturale di macchina (virtuale) concorrente
DettagliSpazio di indirizzamento virtuale
Programmazione M-Z Ingegneria e Scienze Informatiche - Cesena A.A. 016-01 Spazio di indirizzamento virtuale Pietro Di Lena - pietro.dilena@unibo.it // The function name says it all int stack_overflow (){
DettagliEsercitazioni 13 e 14
Università degli Studi della Calabria Corso di Laurea in Ingegneria Informatica A.A. 2001/2002 Sistemi Operativi Corsi A e B Esercitazioni 13 e 14 Comunicazione tra processi (IPC) Meccanismo per la comunicazione
DettagliSCD. Processi e concorrenza in distribuito. Sistemi distribuiti: processi e concorrenza. Considerazioni di costo 2. Considerazioni di costo 1
Considerazioni di costo 2 Processi e concorrenza in distribuito Anno accademico 2015/16 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Il context switch a livello
DettagliLPR 2005/2006 Lezione 7. paradigma di interazione domanda/risposta remote procedure call RMI (Remote Method Invocation): API JAVA esercizio
LPR 2005/2006 Lezione 7 paradigma di interazione domanda/risposta remote procedure call RMI (Remote Method Invocation): API JAVA esercizio PARADIGMA DI INTERAZIONE A DOMANDA/RISPOSTA Paradigma di interazione
DettagliSCD. Processi e concorrenza in distribuito. Sistemi distribuiti: processi e concorrenza. Considerazioni di costo 2. Considerazioni di costo 3
Considerazioni di costo 2 Processi e concorrenza in distribuito Anno accademico 2017/18 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Il context switch a livello
DettagliUniversità degli Studi di Roma Tor Vergata Facoltà di Ingegneria
Università degli Studi di Roma Tor Vergata Facoltà di Ingegneria Un sistema software distribuito è composto da un insieme di processi in esecuzione su più nodi del sistema Un algoritmo distribuito può
DettagliLo strato di Trasporto
Corso di Fondamenti di Reti di Telecomunicazioni LT - ELE / LM-TLC Reti di Telecomunicazioni a.a. 2016-2017 Lo strato di Trasporto Internet è composta da host connessi a reti a commutazione di pacchetto,
DettagliLezione n.3 LIVELLO TRASPORTO
Università degli Studi di Pisa Lezione n.3 SSIS INFORMATICA LIVELLO TRASPORTO 30/11/2007 Laura Ricci Laura Ricci 1 LIVELLO TRASPORTO realizza un supporto per la comunicazione logica tra processi distribuiti
DettagliRoadmap. to-end o Relayed. Comunicazione End-to. Comunicazione:
Roadmap Comunicazione: M. Carli Fondamenti di Internet 007 End-to-end o Relayed Unicast, multicast, broadcast Orientata alla connessione / non - Affidabile / non - Real time / non Orientata al messaggio
DettagliInternet (- working). Le basi.
Internet (- working). Le basi. 1 GABRIELLA PAOLINI (GARR) 18 OTTOBRE 2011 Capire come funziona Internet 2 FACCIAMO UN PASSO INDIETRO Internet È un insieme di reti interconnesse fra di loro su tutto il
DettagliInvocazione remota. Architettura dei Sistemi Software. Luca Cabibbo. dispensa asw430 marzo Fonti
Luca Cabibbo Architettura dei Sistemi Software dispensa asw430 marzo 2018 The core idea od RPC is to hide the complexity of a remote call. Many implementations of RPC, though, hide too much. Sam Newman
DettagliSCD. Processi e concorrenza. Sistemi distribuiti: processi e concorrenza. UniPD - SCD 2009/10 - Sistemi Concorrenti e Distribuiti 1
Processi e concorrenza Anno accademico 2009/10 stemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Cliente e servente concorrenti 1 Multi-threading di lato cliente La concorrenza
DettagliSCD. Correttezza temporale. Correttezza temporale. Premesse 2. Politiche di ordinamento 1. Premesse 1
Premesse 2 Anno accademico 2014/15 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD I sistemi a tempo reale devono assicurare correttezza temporale oltre che funzionale
DettagliSistemi Operativi (modulo di Informatica II) La comunicazione tra processi
Sistemi Operativi (modulo di Informatica II) La comunicazione tra processi Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Sommario Processi cooperanti La comunicazione tra processi Necessità
DettagliLe Reti Informatiche
Le Reti Informatiche modulo 2 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Commutazione di Circuito Le reti telefoniche utilizzano la tecnica della commutazione di circuito. I commutatori
DettagliReti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 3
Reti di Calcolatori Sommario Software di rete Livello Trasporto (TCP) Livello Rete (IP, Routing, ICMP) Livello di Collegamento (Data-Link) Livello Trasporto (TCP) I protocolli di trasporto sono eseguiti
DettagliArchitetture di rete. 4. Le applicazioni di rete
Architetture di rete 4. Le applicazioni di rete Introduzione L avvento di tecnologie (hw, sw, protocolli) di rete avanzate ha permesso la nascita di architetture software molto evolute che permettono lo
Dettagliottobre Fonti [Bakken] Middleware (da Encyclopedia of Distributed Computing) Middleware Architectures and Technologies Luca Cabibbo
Luca Cabibbo Architetture Software Dispensa MW 1 ottobre 2008 1 -Fonti [Bakken] Middleware (da Encyclopedia of Distributed Computing) [Gorton] Essential Software Architecture, Chapter 4, A Guide to Middleware
DettagliSistemi Operativi (modulo di Informatica II) La comunicazione tra processi
Sistemi Operativi (modulo di Informatica II) La comunicazione tra processi Patrizia Scandurra Università degli Studi di Bergamo a.a. 2009-10 Sommario Processi cooperanti La comunicazione tra processi Necessità
DettagliSistemi Operativi Da Unix a GNU/Linux (parte 2)
Sistemi Operativi Da Unix a GNU/Linux Docente: Claudio E. Palazzi cpalazzi@math.unipd.it Crediti per queste slides al Prof. Tullio Vardanega Gestione della memoria 1 Massima semplicità per massima portabilità
Dettagli2: Architettura delle reti e modello OSI
1 1 2: Architettura delle reti e modello OSI Architettura di rete 2 Una rete è costituita da componenti hardware (cavi, interfacce, circuiti integrati, processori, RAM, ) e componenti software (per la
DettagliLivello di trasporto:
Livello di : Gaia Maselli maselli@di.uniroma1.it Queste slide sono un adattamento delle slide fornite dal libro di testo e pertanto protette da copyright. All material copyright 1996-2007 J.F Kurose and
DettagliE. Lodolo
L implementazione di COM Enrico Lodolo e.lodolo@bo.nettuno.it 1 Oggetti COM e server Indipendenza dalla collocazione fisica: l applicazione che usa un oggetto COM (client) non sa dove risiede effettivamente
DettagliProgramma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori
Programma del corso Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Evoluzione dei sistemi informatici Cos è una rete? Insieme di
DettagliTECN.PROG.SIST.INF. I Socket Roberta Gerboni
2015 - Roberta Gerboni Socket e porte I sistemi operativi multitasking possono fare girare contemporaneamente più processi dove ogni processo può rendere disponibili anche più servizi. Questi devono essere
DettagliReti di Calcolatori:
Reti di Calcolatori: Internet, Intranet e Mobile Computing a.a. 2007/2008 http://www.di.uniba.it/~lisi/courses/reti/reti0708.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì
DettagliSistemi distribuiti e reti di calcolatori
Sistemi distribuiti e reti di calcolatori 1 Indice Modulazione e trasmissione dei dati Reti di calcolatori Topologia Messaggi e protocolli ISO/OSI Ethernet Architettura client/server Telefonia mobile 2
DettagliIntroduzione ai thread
Introduzione ai thread Processi leggeri. Immagine di un processo (codice, variabili locali e globali, stack, descrittore). Risorse possedute: : (file aperti, processi figli, dispositivi di I/O..),. L immagine
DettagliIntroduzione alla rete Internet
Introduzione alla rete Internet Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE ALLE RETI TELEMATICHE - 1 Copyright Quest opera è protetta dalla licenza Creative Commons
DettagliCorso di Reti di Calcolatori T
Università degli Studi di Bologna Scuola di Ingegneria Corso di Reti di Calcolatori T Esercitazione 6 (proposta) Java RMI Antonio Corradi, Luca Foschini Michele Solimando, Giuseppe Martuscelli Anno Accademico
DettagliLe Reti Informatiche
Le Reti Informatiche modulo 5 Prof. Salvatore Rosta www.byteman.it s.rosta@byteman.it 1 Rete Ethernet di Prova: 1 Ogni computer inserito nella rete contiene almeno una scheda di interfaccia Ethernet. I
DettagliSCD. Sistemi distribuiti: introduzione. Openness. Sistemi distribuiti: introduzione. Caratteristiche di trasparenza. Definizione
Caratteristiche di trasparenza Anno accademico 2016/17 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Trasparenza di Accesso Collocazione Per nascondere Differenze
DettagliPaolo Bison. Fondamenti di Informatica A.A. 2006/07 Università di Padova
Introduzione ai sottoprogrammi Paolo Bison Fondamenti di Informatica A.A. 2006/07 Università di Padova Introduzione al corso, Paolo Bison, FI06, 2007-02-06 p.1 Struttura programma formato da vari elementi
DettagliIl sistema operativo
Il sistema operativo Vito Perrone Corso di Informatica A per Gestionali Indice Architettura Gestione dei processi Gestione della memoria centrale Driver Gestione dei file 2 1 Il sistema operativo E uno
DettagliOggetti Distribuiti e Java RMI
Oggetti Distribuiti e Java RMI Oggetti Locali - Oggetti Distribuiti Oggetti Locali: sono oggetti i cui metodi possono essere invocati solo da un processo locale, cioè da un processo in esecuzione sulla
DettagliModelli Architetturali. Astrazione del sistema - componenti e struttura - distribuzione delle funzionalità
Modelli di Sistemi Modelli concettuali di supporto allo studio dei sistemi distribuiti Modelli architetturali Descrizione ad alto livello della distribuzione delle funzionalità delle componenti e loro
DettagliModi di Trasferimento
Modi di Trasferimento Mattia Natali 31 ottobre 2011 Indice 1 Servizi di trasferimento dell informazione 1 1.1 Tecniche di multiplazione.................................. 1 1.1.1 Tecniche di multiplazione:..............................
DettagliCenni sull architettura protocollare TCP/IP
Nota di Copyright Cenni sull architettura protocollare TCP/IP Mario Baldi mario.baldi@polito.it staff.polito.it/mario.baldi cenni - 1 M. Baldi: si veda pagina 2 Questo insieme di trasparenze (detto nel
DettagliIl Modello a scambio di messaggi
Il Modello a scambio di messaggi 1 Interazione nel modello a scambio di messaggi Se la macchina concorrente e` organizzata secondo il modello a scambio di messaggi: PROCESSO=PROCESSO PESANTE non vi è memoria
DettagliCenni sull architettura protocollare TCP/IP
Cenni sull architettura protocollare TCP/IP Mario Baldi mbaldi@polito.it www.polito.it/~baldi cenni - 1 M. Baldi: si veda pagina 2 Nota di Copyright! Questo insieme di trasparenze (detto nel seguito slides)
DettagliIntroduzione alla rete Internet
Introduzione alla rete Internet Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE ALLE RETI TELEMATICHE - 1 Copyright Quest opera è protetta dalla licenza Creative Commons
DettagliSCD. Processi e concorrenza. Sistemi distribuiti: processi e concorrenza. UniPD - SCD 2006/7 - Corso di Sistemi Concorrenti e Distribuiti 1
Processi e concorrenza Anno accademico 2006/7 Corso di stemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Lato cliente Cliente e servente concorrenti 1 La concorrenza
DettagliIntroduzione alla rete Internet
Introduzione alla rete Internet Gruppo Reti TLC nome.cognome@polito.it http://www.telematica.polito.it/ INTRODUZIONE A INTERNET - 1 Internet: nomenclatura Host: calcolatore collegato a Internet ogni host
DettagliInterazione tra Processi. Sistemi Operativi T AA
Interazione tra Processi Sistemi Operativi T AA 2012-13 1 Classificazione: Processi interagenti processi interagenti/indipendenti: due processi sono interagenti se l esecuzione di un processo è in alcun
DettagliFunzioni, Stack e Visibilità delle Variabili in C
Funzioni, Stack e Visibilità delle Variabili in C Laboratorio di Programmazione I Corso di Laurea in Informatica A.A. 2018/2019 Argomenti del Corso Ogni lezione consta di una spiegazione assistita da slide,
DettagliInternet Protocol Cenni introduttivi
Politecnico di Milano Sede di Cremona A.A. 2013/2014 Corso di RETI DI COMUNICAZIONE ED INTERNET Modulo 1 Internet Protocol Cenni introduttivi Antonio Corghi I protocolli di Internet (1) q L Internet Protocol
DettagliSCD. Risorse protette. Risorse protette. Limiti del modello base. Mutua esclusione 2. Mutua esclusione 1
Anno accademico 2013/14 Sistemi Concorrenti e Distribuiti Tullio Vardanega, tullio.vardanega@math.unipd.it SCD Limiti del modello base È desiderabile poter combinare exclusion synchronization e avoidance
DettagliCorso di Reti di Calcolatori T
Università degli Studi di Bologna Scuola di Ingegneria Corso di Reti di Calcolatori T Esercitazione 1 (proposta) Socket Java senza connessione Luca Foschini Anno accademico 2016/2017 Esercitazione 1 1
DettagliIntroduzione a Internet e World Wide Web
Introduzione a Internet e World Wide Web Sommario Breve storia di Internet Commutazione di pacchetto e TCP/IP Il Web HTTP HTML CGI... Connessione tra basi di dati e Web Internetworking (collegamento fra
DettagliIntroduzione (parte II)
Introduzione (parte II) Argomenti della lezione Ripasso degli argomenti del primo corso: reti locali, internetworking, reti geografiche e applicazioni Reti locali Nascono come sistemi broadcast Tutte le
DettagliCorso di Reti di Telecomunicazioni. Giovanni Schembra. Trasmissione trame su canale broadcast
Indirizzi LAN e ARP Corso di Reti di Telecomunicazioni Giovanni Schembra 1 Trasmissione trame su canale broadcast I nodi di una LAN si scambiano trame su un canale broadcast: quando un nodo in una LAN
DettagliOrdinativo Informatico Gateway su Web Services
DELLA GIUNTA Allegato tecnico Ordinativo Informatico Gateway su Web Services DELLA GIUNTA Sommario 1. OBIETTIVO 4 2. PREMESSA & REQUISITI ERRORE. IL SEGNALIBRO NON È DEFINITO. 3. INFRASTRUTTURA DI BASE
DettagliProtocolli multimediali
Protocolli multimediali RTP, RTCP, RTSP Ormai molte applicazioni scambiano informazioni in cui le relazioni temporali sono molto importanti. La Telefonia via Internet, Videoconferenza, Lezioni a distanza,
Dettagli7. Progetto di Applicazioni Distribuite
7. Progetto di Applicazioni Distribuite Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 7. Progetto di Applicazioni Distribuite 1 / 35 Sommario 1 Sistemi
DettagliProva di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00
Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome:
DettagliRecupero I Prova in itinere - Rete Internet (ing. Giovanni Neglia) Lunedì 25 Giugno 2007
Recupero I Prova in itinere - Rete Internet (ing. Giovanni Neglia) Lunedì 25 Giugno 2007 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome:
DettagliUniversità di Bologna
Università di Bologna Laurea Magistrale in Ingegneria Informatica Corso di Reti di Calcolatori M - A.A. 2009-10 Prof. Antonio Corradi Progetto RE.VE.N.GE. CORBA REliable and VErsatile News delivery support
DettagliI.I.S. G.B. PENTASUGLIA MATERA ISTITUTO TECNICO SETTORE TECNOLOGICO LICEO SCIENTIFICO SCIENZE APPLICATE. Classe: 5Ci
I.I.S. G.B. PENTASUGLIA MATERA ISTITUTO TECNICO SETTORE TECNOLOGICO LICEO SCIENTIFICO SCIENZE APPLICATE Disciplina: Tecnologie e Progettazione di Sistemi Informatici e di Telecomunicazione Cognome e Nome:
DettagliICMP ARP RARP DHCP -NAT
Corso di Laurea in Ingegneria delle Telecomunicazioni Corso di Reti di Calcolatori Docente: Simon Pietro Romano spromano@unina.it ICMP ARP RARP DHCP -NAT ICMP (Internet Control Message Protocol) Funzionalità:
DettagliReti di calcolatori Tecnologie Web Prova in itinere 2 16 giugno 2010
Nome Cognome Matricola Reti di calcolatori Tecnologie Web Prova in itinere 2 16 giugno 2010 1. [punti rdc: 12 - taw: 15] Dato il seguente schema di rete Host 3 Host 4 Host 5 Host 6 Host 7 Host 2 143.9.0.0
DettagliProgrammazione in Rete
Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12 Sommario della
DettagliComunicazione fra oggetti distribuiti
Comunicazione fra oggetti distribuiti Livelli Middleware Trasparenza e implementazione La trasparenza - come per le chiamate di locali RMI RPC Eventi di metodo remoto - gli oggetti remoti ricevono le RMI
Dettagli