Realizzazione di un sistema di coordinazione basato su GVDS in ambiente MANET. Marco Pivi

Documenti analoghi
Modelli di interazione tra processi

Modelli di interazione tra processi

Linda. Nasce come concretizzazione di progetti in ambito distribuito presso l università di Yale.

Implementazione di una Chat-Quiz basata su spazi di tuple

Modello a scambio di messaggi

Architettura di rete. Modelli di Riferimento: TCP/IP e OSI. Modello di riferimento OSI. Modelli di riferimento. architettura di rete

Il Modello a scambio di messaggi

Gestione della Concorrenza

LOAD BALANCING PER SERVIZI DI

L integrazione di mail in un sistema automatico di distribuzione di ontologie: Ontology Mail Manager

Manuale utente Volta Control

Introduzione. A Tecnologie 1

14/12/2018 Informatici e di Telecomunicazioni

Cosa sono i sistemi distribuiti. Prof. Andrea Omicini Corso di Sistemi Distribuiti L-A A.A. 2004/2005

SISTEMI DI ELABORAZIONE

Basi di Dati e Sistemi Informativi. Organizzazione fisica dei dati. Corso di Laurea in Ing. Informatica Ing. Gestionale Magistrale

Le reti di calcolatori. Università degli Studi di Salerno

Modelli di interazione tra processi

Reti di calcolatori. Lezione del 18 giugno 2004

Lezione n.3 LIVELLO TRASPORTO

Premessa L uso di automobili mediante Car Pooling è uno degli strumenti per la mobilità sostenibile: CASO DI STUDIO CarPooling on Web.

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

Syllabus A042 Insegnamenti disciplinari

Università degli Studi della Calabria Facoltà di Ingegneria. Corso di Diploma in Ingegneria Informatica TESI DI DIPLOMA

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

Indice. Introduzione PARTE PRIMA PRELUDIO: SERVIZIO CON SORRISO 1

Progetto PERMESSO. PERsistent MESSagging in ad hoc networks

Introduzione a Internet e World Wide Web

REALIZZAZIONE DEL SISTEMA INFORMATIVO DEL SUAPE

Indice Prefazione 1 Il diritto e la società dell informazione La società dell informazione Un nuovo paradigma soc

Interconnessione reti locali

MODELLI ISO/OSI e TCP/IP

Reti di Calcolatori:

Applicazioni web. Sommario. Parte 4 http. http Metodi, intestazioni e codici di stato get post Parametri e cookie. Applicazioni web.

(Accoglienza, visite guidate,...) 2. Totale 66. Materiale didattico:

Capitolo 6. Esercizio 6.1

Reti di calcolatori. Ing. Maria Mirto. mail:

Reti di calcolatori, A.A. 2002/03

ACCESSO ALLA POSTA ELETTRONICA TRAMITE OUTLOOK WEB ACCESS

Smart Cities and Communities and Social Innovation Bando MIUR. D.D. 391/Ric. del 5 luglio Application Store

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

Terminologia e concetti fondamentali La struttura di Internet (hardware e software):

Il modello a scambio di messaggio

correttezza e precisione; anywhere, anytime; affidabilità, disponibilità e sicurezza dei sistemi; riservatezza dei dati; interoperabilità fra

Principi di trasferimento affidabile

Roadmap. to-end o Relayed. Comunicazione End-to. Comunicazione:

Modello OSI (Open System Interconnection) Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Internet Control Message Protocol (ICMP)

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori (a.a. 2010/11)

MODELLI ISO/OSI e TCP/IP

Basi di dati II Prova parziale 29 maggio 2014 Compito A Tempo a disposizione: un ora e trenta minuti.

record a struttura fissa

Vincenzo Eramo. Wireless LAN (WLAN) INFOCOM Dept. WLAN: lo standard IEEE

Griglie e Sistemi di Elaborazione Ubiqui

Internet 2B IPIA

TECN.PROG.SIST.INF. I Socket Roberta Gerboni

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Principi di trasferimento affidabile

Sommario FAQ CITTADINO.2

Il Sistema Operativo. Informatica Sistema Operativo 1

OntoMaker. Creazione dell ontologia

Le Reti Informatiche

Struttura dei Sistemi Operativi

Parte II: Reti di calcolatori Lezione 13 (37)

Sistemi Distribuiti M A.A Esercitazione JBI. Un tipico scenario di integrazione

Corso di Reti di Calcolatori L-A

2. Finalità generali previste dalle indicazioni nazionali

L Integrazione Titulus U-Sign

Servizi e-business Gestione elettronica Bandi UE Manuale Referente Bando

DOMANDA ONLINE PER L ISCRIZIONE AI NIDI CAPITOLINI E ALLE SEZIONI PONTE ANNO EDUCATIVO 2014/15

Sistemi Operativi (modulo di Informatica II) L interfaccia del file system

Non a caso viene definito linguaggio macchina. di Cassino. C. De Stefano Corso di Fondamenti di Informatica Università degli Studi

RETI DI CALCOLATORI II

RISOLVERE LE PROBLEMATICHE ORGANIZZATIVE LEGATE ALLA TRADUZIONE. Presentazione della soluzione ondemand di Lionbridge

Introduzione alle reti informatiche. Note introduttive sulle reti Unità didattica 1.1

Routing statico nelle reti IP

Informatica. Dipartimento di Economia. Ing. Cristiano Gregnanin. 8 novembre Corso di laurea in Economia

RETI DI CALCOLATORI II


Reti, Web e comunicazione Parte seconda

Tu sai di averne uno quando il guasto di un computer di cui non hai mai sentito parlare non ti permette di fare il tuo lavoro.

Interfaccia Webmail Roundcube

Installazione e Configurazione del servizio DHCP. Orazio Battaglia

Università degli Studi della Calabria Facoltà di Ingegneria. Corso di Diploma in Ingegneria Informatica TESI DI DIPLOMA

Trasmissione multicast in reti IP

Alma Mater Studiorum - Università di Bologna Scuola di Ingegneria e Architettura. Sistemi Distribuiti M A.A

Chiamata di procedura remota

società di assicurazioni

Cap. 1-I 1 I sistemi informatici

Tema d esame. 20 aprile 1995

Costanti e Variabili

RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE

Livello di trasporto:

ottobre Fonti [Bakken] Middleware (da Encyclopedia of Distributed Computing) Middleware Architectures and Technologies Luca Cabibbo

SOFTWARE PER LA RACCOLTA DATI TERM & TALK

Sistemi Operativi (modulo di Informatica II) L interfaccia del file system

Transcript:

Realizzazione di un sistema di coordinazione basato su GVDS in ambiente MANET Marco Pivi Reti di Calcolatori LS AA 2005 2006

Modelli di Coordinazione Modello di programmazione composto da 2 parti: Modello di computazione Modello di coordinazione Fornire un supporto per la programmazione di applicazioni nascondendo l'ambiente distribuito Prevede operazioni per: La creazione di nuove attività Permettere la comunicazione tra le entità presenti 2

Linda (Gelernter 1985) Linguaggio di Coordinazione Spazi di tuple insieme strutturato di relazioni, intese come attributi e valori Letture e scritture concorrenti, senza interferenze out(t), in(p), rd(p) inp(p), rdp(p) ing(p), rdg(p) Modello disaccoppiato Spazialmente tuple space accessibile globalmente Temporalmente tuple space persistente 3

Linda in una MANET MANET Sistemi fortemente dinamici Disconnessioni frequenti Probabili partizionamenti della rete Comunicazione best effort Difficilmente ottenibile un'informazione globale Necessario adattare il modello, rilassandone alcune proprietà 4

Global Virtual Data Structures Modello di coordinazione basato sull'accesso ad una struttura dati condivisa tra più entità Distribuita ciascuna entità è responsabile di una porzione della struttura dati Costruttiva percezione della GVDS data dalla combinazioni delle porzioni fornite dalle entità raggiungibili Uniformemente accessibile ciascuna entità accede alla GVDS tramite lo stesso set di istruzioni Allocazione trasparente nascosto l'effetto globale delle operazioni 5

AGAPE Allocation and Group Aware Pervasive Environment Middleware di supporto per lo sviluppo di applicazioni collaborative in ambiente MANET, sfruttando il concetto di gruppo Comunicazione non affidabile, asincrona, basata sui profili Entità distinte in due categorie Managed Entity Local Manager Entity 6

TUPLALIBRE Realizzazione della GVDS Partizionamento dello Spazio di Tuple fra i vari componenti del gruppo A ciascuna entità vengono associate le tuple di cui è effettivamente responsabile dell'inserimento e rimozione Gli altri componenti del sistema possono solo presentare delle richieste per rimuovere o leggere le tuple stesse Inserimento di campi MITTENTE e DESTINATARIO nelle tuple limitata la trasparenza propria dei sistemi basati su spazi di tuple + riduzione del numero di messaggi scambiati 7

TUPLALIBRE Primitive di accesso alla GVDS Fornite le tipiche operazione proprie dei sistemi basati su spazi di tuple OUT inserimento della tupla nello spazio di tuple locale IN, RD, INP e RDP rimozione e lettura di una tupla appartenente ad uno dei dispositivi identificati tramite profiles matching (eventualmente anche controllo locale) Necessario realizzare un protocollo per limitare possibili inconsistenze all'interno della GVDS (critiche operazioni di IN e INP) Linee guida nella realizzazione del protocollo: Limitazione del numero di messaggi scambiati In casi di inconsistenze, replicare l'informazione piuttosto che perderla 8

TUPLALIBRE protocollo di scambio informazioni Transaction IDentifier (TID) inserito nella tupla per identificare la richiesta da parte di un componente Previsti 3 tipi di messaggi: Request si invia il template a tutti i dispositivi individuati tramite profiles matching Response si fornisce la tupla richiesta Commit si segnala la terminazione del protocollo, comportamento diverso in base alla semantica dell'operazione Utilizzo di timeout e ritrasmissioni per ovviare ad eventuali perdite dei messaggi 9

TUPLALIBRE Spazi di tuple di servizio Nel caso di IN e RD, utilizzati per segnare eventuali richieste pendenti a cui non si è in grado di rispondere Viene inserito il pattern ricevuto, dopodichè prima di effettuare nuovi inserimenti (out), si effettua un controllo: Sullo spazio di servizio relativo alle rd pendenti, cercando di soddisfare tutte le richieste possibili Sullo spazio di servizio relativo alle in pendenti, nel caso di più pattern che combaciano con la tupla che si vuole inserire, se ne sceglie una in modo non deterministico Alla ricezione del Commit si elimina il pattern pendente, nel caso di rd si inserisce la tupla nello spazio di tuple locale, nel caso di in la tupla viene eventualmente scartata 10

TUPLALIBRE Esempio di transazione p out(t2) t2 p A commit(b) in(p) commit(b) in(p) response(t2) D B response(t1) commit(b) in(p) p out(t1) in(p) commit(b) C p 11

TUPLALIBRE Discovery Service Supporto ai protocolli realizzati Offre una maggiore garanzia che i componenti del gruppo, selezionati tramite profiles matching, siano informati di eventuali richieste 2 funzionalità principali: Refresh delle richieste periodicamente vengono ritrasmesse le richieste Controllo della topologia del gruppo per rilevare eventuali nuovi entrati e inviargli la richiesta 12

Test Applicazione di test sviluppata sulla base di un prototipo di chat Controllo esplicito sulle azioni di ricezione ed invio dei messaggi (azioni disponibili di in, rd, out) Visibilità del contenuto del tuplespace locale e di quelli di servizio Test effettuati su rete LAN, su un insieme massimo di 10 macchine (sia Windows che Linux) 13

Conclusioni e Sviluppi futuri Test con risultati soddisfacenti, ma non completi.. Completamento della fase di test Su MANET Con applicazioni più complesse Possibili estensioni, prevedendo nuove operazioni ing(p), rdg(p) 14