Coordinamento e sincronizzazione



Documenti analoghi
Coordinamento e sincronizzazione

Sincronizzazione nei Sistemi Distribuiti

Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica.

Sistemi Distribuiti. La Nozione di Tempo nei Sistemi Distribuiti. dott. Ing. Silvia Bonomi.

Il passaggio del tempo nei sistemi distribuiti

22/05/2013. Indice dei Contenuti. Sincronizzazione dei Clock. Corso Sistemi Distribuiti 6 cfu Docente: Prof. Marcello Castellano

NTP. (Sincronizziamo gli orologi)

LINUXDAY ottobre 2009 Besnate (VARESE)

Introduzione. Coordinazione Distribuita. Ordinamento degli eventi. Realizzazione di. Mutua Esclusione Distribuita (DME)

I canali di comunicazione

Coordinazione Distribuita

Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A Pietro Frasca. Parte II Lezione 5

CORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci

Replicazione. Requisisti di consistenza i clienti devono ricevere risposte consistenti e coerenti. Motivazioni

SISTEMI OPERATIVI DISTRIBUITI

Active Directory. Installatore LAN. Progetto per le classi V del corso di Informatica

Internet. Internet. Internet Servizi e Protocolli applicativi. Internet. Organizzazione distribuita

Pronto Esecuzione Attesa Terminazione

STRUTTURE DEI SISTEMI DI CALCOLO

Versione 1. (marzo 2010)

GammaApp. & Euro09 Evolution

INFORMATICA DISTRIBUITA. lez 4 Livello applicazione

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione

WiFi: Connessione senza fili. di Andreas Zoeschg

TEST DI RETI DI CALCOLATORI I (9400N) anno 1999/2000

Sincronizzazione e coordinamento nel distribuito

Le reti. Introduzione al concetto di rete. Classificazioni in base a

Real Time Control (RTC): modalità di invio dei dati

Comunicazione tra Processi

Comunicazione tra Processi

I canali di comunicazione

Macchine a stati finiti G. MARSELLA UNIVERSITÀ DEL SALENTO

Sistema Operativo. Fondamenti di Informatica 1. Il Sistema Operativo

Reti di calcolatori. Lezione del 10 giugno 2004

Computazione multi-processo. Condivisione, Comunicazione e Sincronizzazione dei Processi. Segnali. Processi e Threads Pt. 2

Gianluigi Pessina, Lorenzo Rota * UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA ISTITUTO NAZIONALE DI FISICA NUCLEARE, SEZIONE DI MILANO BICOCCA

CitySoftware PROTOCOLLO. Info-Mark srl

Contesto: Peer to Peer

Il Sistema Operativo

ICT (Information and Communication Technology): ELEMENTI DI TECNOLOGIA

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI

Guida Rapida di Syncronize Backup

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Università degli Studi di Napoli Federico II Facoltà di Ingegneria Corso di Laurea Specialistica in Ingegneria Informatica.

26 Febbraio 2015 Modulo 2

Scheduling della CPU. Sistemi multiprocessori e real time Metodi di valutazione Esempi: Solaris 2 Windows 2000 Linux

Inizializzazione degli Host. BOOTP e DHCP

IL SISTEMA S.I.MON. (Sistema Integrato di MONitoraggio)

Mutua esclusione distribuita

Reti di Telecomunicazione Lezione 6

Ata_NiAg02. Modulo Gestione Agenti

Argomenti della lezione

Standard per Reti a Commutazione di Pacchetto Prof. Vincenzo Auletta Università degli studi di Salerno Laurea in Informatica

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

Ambienti di calcolo a griglia Parte 2. Risorse (e loro gestione) Job di griglia e applicazioni di griglia Riservare le risorse ai job

Tempo e sincronizzazione nei Sistemi Distribuiti

Bilanciamento di traffico VoIP su reti wireless

Esame di INFORMATICA

8. IP: Instradamento dei datagrammi

Macchine a stati finiti. Sommario. Sommario. M. Favalli. 5th June 2007

Reti di Calcolatori. Il software

Caratterizzazione energetica di un nodo sensore ZigBee

Macchine a stati finiti. Sommario. Sommario. M. Favalli. Le macchine a stati si utilizzano per modellare di sistemi fisici caratterizzabili mediante:

Metodi di Posizionamento

Rete Internet Prova in Itinere Mercoledì 23 Aprile 2008

Reti di elaboratori. Reti di elaboratori. Reti di elaboratori INFORMATICA PER LE DISCIPLINE UMANISTICHE 2 (13042)

Il servizio di accesso ad internet mediante satellite è composto dalle seguenti componenti:

Classificazione delle applicazioni multimediali su rete

MANUALE D USO itarget ordini

Sommario. Modellazione di Kerberos mediante DASM. Kerberos (1) Descrizione Kerberos. Descrizione Kerberos Modellazione Analisi di Correttezza

P2-11: BOOTP e DHCP (Capitolo 23)

Modulo TLC:TRASMISSIONI Accesso multiplo

INFORMATION TECNOLOGY. a cura di Alessandro Padovani padoale@libero.it

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini.

Sistemi avanzati di gestione dei Sistemi Informativi

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

La Comunicazione tra i dispositivi

Reti e Internet: introduzione

Livello di Rete. Gaia Maselli

Introduzione alle applicazioni di rete

Costanzo Fabrizio. Facoltà di Ingegneria. La tecnologia RFID : Aspetti di sicurezza. Corso di Laurea in Ingegneria delle Telecomunicazioni

InterProcess Communication (IPC)

Applicazione di tecniche di Infinitesimal Perturbation Analysis alle reti di Petri ibride.

La Metodologia adottata nel Corso

Sistemi Web Tolleranti ai Guasti

Guida di Pro Spam Remove

Reti di Telecomunicazione Lezione 8

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

ESEMPI INTEGRAZIONE PRODOTTI

Le novità tecnologiche introdotte dalla Norma CEI 0-21

Lo scenario: la definizione di Internet

IntrumWeb il vostro ingresso riservato in Intrum Justitia

Esempio: aggiungere j

Scheduling della CPU

DMA Accesso Diretto alla Memoria

SIMULAZIONE PROVA SCRITTA ESAME DI STATO. PER LA DISCIPLINA di SISTEMI

L integrità delle informazioni quale elemento fondante della sicurezza nell evoluzione degli apparati di segnalamento

Capitolo 4: Ottimizzazione non lineare non vincolata parte II. E. Amaldi DEIB, Politecnico di Milano

Comunicazione codifica dei dati. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Transcript:

Coordinamento e sincronizzazione Tempo locale e globale Nei sistemi distribuiti non esiste un orologio fisico globale Algoritmi di sincronizzazione e di coordinamento Applicazioni: correttezza di sequenze di operazioni coerenza di informazioni serializzazione di transazioni gestione della replicazione protocolli di autenticazioni Ordinamento degli eventi Molti algoritmi basati sulla sincronizzazione di orologi fisici logici Orologi Processi p 1, p 2,, p N senza memoria condivisa con clock locale Ogni processo è eseguito su una CPU s i stato del processo p i Comunicazione basata su cambio di messaggi e i e se l evento e occorre prima di e nel processo p i h=< e i 0, e i 1, > storia degli stati del processo i Rete C10.2 1

Orologi fisici Basati sul numero di oscillazioni in un cristallo ad una data frequenza L orologio genera un interrupt ad intervalli regolari C i (t) clock (locale) del processo p i al tempo fisico t possibile timestamp per gli eventi che occorrono in p i Due eventi risultano successivi solo se la risoluzione del clock (tempo fra due aggiornamenti successivi del valore del clock) é minore dell intervallo di tempo fra I due eventi successivi Diversi clock locali possono avere valori diversi Skew Drift rate differenza istantanea fra il valore di due clock differenza rispetto ad un orologio ideale variazioni fisiche del cristallo e delle oscillazioni (frequenza) Es.: orologio al quarzo 10-6 sec/sec -> 1 sec ogni milione di sec, ~ 11.6 giorni orologio atomico 10-13 sec/sec Tempo atomico internazionale (IAT) C10.3 Tempo Universale Coordinato UTC standard internazionale basato su IAT Sec: 9.192.631.770 periodi di transizioni fra due livelli iperfini di stato solido del Cesio 133 sincronizzato e inviato in broadcast periodicamente Es. GPS Global Position System S sorgente di tempo UTC Sincronizzazione di orologi fisici D precisione I intervallo esterna se forzata da agenti esterni S(t)-C i (t) <D 1 i N, per ogni t in I C i sono accurati entro la precisione D interna se concordata fra un insieme di processi C i (t)-c j (t) <D 1 i,j N, per ogni t in I C i concordano entro la precisione D S. interna S. esterna (2 D) (D) C10.4 2

Correttezza degli orologi Un orologio fisico H è corretto se la distorsione (drift) è entro una soglia ρ>0 -> dati t, t se t >t allora (1 - ρ)(t -t) H(t ) - H(t) (1 + ρ)(t -t) Un orologio C è monotono se avanza soltanto se t >t allora C(t )>C(t) H orologio fisico H i (t) C clock software C i (t) = a H i (t) + b, a, b costanti regolabili Sistema distribuito Algoritmi di sincronizzazione interna sincrono asincrono Algoritmi centralizzati distribuiti C10.5 Algoritmi di sincronizzazione di orologi Note: Sistema distribuito sincrono precisione D massimo ritardo si trasmissione di un messaggio tempo per eseguire ogni passo del processo p invia un messaggio con il clock locale t p riceve il messaggio e pone il proprio clock locale a t+t com T com tempo di trasmissione di un messaggio m=t p p T min soglia minima per T com T max soglia massima per T com possibile in un sistema sincrono Se p pone il clock a t+ T min (o a t+ T max ) -> errore =(T max - T min ) t+ =(T min + T max )/2 -> errore /2 Per N processi scelta ottima -> errore (1 1/Ν) C10.6 3

Algoritmi di sincronizzazione di orologi: Christian Sistema distribuito asincrono - Algoritmi centralizzati Algoritmo di Christian time server connesso ad UTC passivo: fornisce a richiesta il tempo ai clienti p m r Time server mt Ogni macchina chiede periodicamente il tempo Alla ricezione della risposta (t): - controlla il clock - calcola il ritardo della rete (almeno T min ) come T round (round trip) - pone clock a t+t round /2 L algoritmo permette la sincronizzazione solo se il tempo T round è breve C10.7 Sincronizzazione di orologi con un time server: Christian Il server pone nel messaggio di risposta il tempo t all ultimo momento utile T min minimo tempo di trasmissione T round round trip time -> il messaggio di risposta arriva nell intervallo [t + T min, t + T round - T min ] t t + T min t + T round - T min T min T round Ampiezza T round - 2 T min Precisione ± (T round / 2 - T min ) Problemi: - server centrale - limiti alla affidabilità e prestazioni soluzione: insieme di server sincronizzati e comunicazione multicast dai clienti - possibili errori (trasmissione, intenzionali) -> tecniche di autenticazione C10.8 4

Algoritmi di sincronizzazione di orologi: Berkeley Sistema distribuito asincrono - Algoritmi centralizzati Algoritmo di Berkeley time server attivo coordinatore che - chiede periodicamente a tutti il valore del clock - calcola una media tramite una stima - indica chi deve accelerare o rallentare inviando un valore correttivo ± δ Si basa sul tempo T round (round trip) fra cliente e servente, che si assume limitato superiormente La media non considera I tempi troppo lontani o con valori anomali Media fault tolerant Problemi: - server elemento centrale - limiti alla affidabilità in caso di guasto si elegge un nuovo server tempo non limitato -> in quel periodo non è garantito il controllo della sincronizzazione C10.9 Algoritmi di sincronizzazione di orologi: NPT Sistema distribuito asincrono - Algoritmi distribuiti Network Time Protocol definisce una architettura per una time service protocollo per la distribuzione del tempo su Internet Obbiettivi del progetto - fornire un servizio che permetta a tutti clienti della rete una sincronizzazione accurata del clock fisico con UTC - uso di tecniche statistiche di filtro per trattare l informazione proveniente da vari server - servizio affidabile che tollera perdite di connessione anche lunghe basata su ridondanza dei serventi e dei cammini tecniche di riconfigurazione in caso di guasto - scalabilità, permette la sincronizzazione frequente anche in presenza di molti nodi - protezione da interferenze casuali e/o intenzionali Insieme di server primari secondari connessi direttamente ad un ricevitore UTC sincronizzati ai primari - gerarchia C10.10 5

Esempio di sottorete di sincronizzazione di una implementazione NTP 1 2 2 3 3 3 archi: controllo di sincronizzazione etichette di nodi: livelli foglie: stazioni di utente 1. multicast Sincronizzazione dei server 2. procedure call 3. modo simmetrico maggiore affidabilità minore precisione 1. per reti LAN ad alta velocità - piccolo ritardo -relativa scarsa precisione 2. come nell algoritmo di Christian: il server è passivo e aspetta le richieste - maggior precisione - necessario se non vi è multicast 3. scambio di messaggi con timestamp - per i livelli più bassi -maggior precisione C10.11 Scambio di messaggi fra coppie di processi NTP Server B t 2 t 3 Tempo m m' Server A t 1 t 4 Tempo Comunicazione non affidabile: UDP Si calcola la differenza offset (o) fra i clock ed il ritardo (d) di trasmissione dei due messaggi t 2 = t 1 + T AB + o t 4 = t 3 + T BA - o d = T AB + T BA = (t 2 - t 1 ) + (t 4 - t 3 ) o = o i + (T BA - T AB )/2 o i = ((t 2 - t 1 ) - (t 4 - t 3 ))/2 stima dell offset si può mostrare che o i - d i /2 o o i + d i /2 Calcolo delle successioni di <o i, d i > e ricava la stima di offset e precisione Si mantengono le ultime coppie (e.g. otto) e si sceglie il valore o j corrispondente al minimo valore di d j C10.12 6