Sistemi Mobili M Università di Bologna CdS Laurea Magistrale in Ingegneria Informatica II Ciclo - A.A. 2014/2015 Corso di Sistemi Mobili M (8 cfu) 02 – Mobile Ad Hoc Network (MANET) e Routing Docente: Paolo Bellavista [email protected] http://lia.deis.unibo.it/Courses/sm1415-info/ http://lia.deis.unibo.it/Staff/PaoloBellavista/ MANET e Routing - Sistemi Mobili M 1 Che cos’è una Rete Ad Hoc? Rete con infrastruttura (cellulare o hot spot) Rete Ad Hoc, anche multi-hop MANET e Routing - Sistemi Mobili M 2 1 Caratteristiche Reti Wireless Ad Hoc Create dinamicamente (on-the-fly) per soddisfare un bisogno tipicamente temporaneo Deployment immediato e altamente riconfigurabile (NO infrastruttura fissa) Alta “volatilità” Mobilità, guasti/fallimenti, risorse dei nodi che variano nel tempo Nodi hanno funzionalità differenziate (eterogeneità) Nodi hanno energia (batteria) limitata Ogni nodo può svolgere il ruolo potenziale di router Comunicazione multi-hop MANET e Routing - Sistemi Mobili M 3 Sfide Tecnologiche per Reti Ad Hoc Raggio di trasmissione limitato Natura broadcast del medium wireless (ad es. hidden terminal) Perdite di pacchetti dovute a errori di trasmissione Mobilità Modifiche al routing e ai percorsi stabiliti dovute a mobilità Perdite di pacchetto indotte da mobilità Partizionamenti di rete potenzialmente frequenti Vincoli energetici Facilità di “snooping” delle trasmissioni wireless (problematiche di sicurezza) MANET e Routing - Sistemi Mobili M 4 2 Applicazioni Possibili per MANET Una grande quantità di applicazioni possibili: Personal Area Networking Ambienti civili Scenari di guerra, realizzazioni coalizioni dinamiche sul campo, mancanza di infrastruttura in campo nemico Operazioni di emergenza Meeting room, stadi, gruppi di navi o gruppi di aerei Ambienti militari Cell phone, laptop, wrist watch, sensoristica human body, … Search&rescue, azioni di polizia, vigili del fuoco Reti sensori Gruppi di sensori embedded nell’ambiente (ad es. smart home) o “scattered” in una zona geografica ampia MANET e Routing - Sistemi Mobili M 5 Molte Varianti Possibili Ambienti pienamente simmetrici Capacità asimmetriche Raggi di copertura e tecniche trasmissione wireless differenziate Differenti battery life Differenti capacità computazionali Differenti gradi di mobilità (velocità) Responsabilità asimmetriche Tutti i nodi partecipanti hanno le medesime capacità e responsabilità Solo alcuni nodi possono fare routing di pacchetti Alcuni nodi svolgono ruolo di leader per nodi vicini (ad es. cluster head) Caratteristiche traffico differenziate Banda, latenza, affidabilità; unicast/broadcast/multicast/geocast MANET e Routing - Sistemi Mobili M 6 3 Molte Varianti Possibili Possono coesistere e cooperare con reti basate su infrastruttura Pattern mobilità differenti Persone sedute in sala d’attesa (mobilità limitata) Taxi (alta mobilità) Movimenti militari (in gran parte clustered?) Personal area network (anche in questo caso, in gran parte clustered?) Caratteristiche mobilità Velocità Predicibilità (direzione, pattern, …) Uniformità o mancanza di uniformità nella mobilità dei differenti nodi che cooperano MANET e Routing - Sistemi Mobili M 7 Routing in MANET: Panoramica Primo problema: ROUTING Perché routing in MANET è particolarmente difficile? A voi la risposta… 3 protocolli di routing, mostrati nel seguito Dynamic Source Routing (DSR) Ad hoc On-demand Distance Vector routing (AODV) Greedy Perimeter Stateless Routing (GPSR) MANET e Routing - Sistemi Mobili M 8 4 Come Effettuare Routing in Reti Ad Hoc? Usualmente reti ad hoc coinvolgono nodi mobili Eccezione più rilevante: reti wireless di sensori (Wireless Sensor Networks - WSN) Quindi principalmente Mobile Ad hoc NETwork (MANET) Molte proposte di protocollo in letteratura Alcune specificamente progettate e pensate per MANET Altre adattate da protocolli esistenti, proposti in precedenza per reti wired Nessun protocollo singolo è ottimale in tutti gli ambienti e gli scenari di deployment possibili Alcuni tentativi di sviluppare anche protocolli adattativi MANET e Routing - Sistemi Mobili M 9 Perché Routing Differente in MANET? Mobilità degli host Operazioni di link failure/repair dovute a mobilità possono avere caratteristiche differenti rispetto a problemi analoghi dovuti ad altre cause Frequenza (rate) di operazioni di link failure/repair può essere alta in caso di elevata mobilità Necessità di sfruttare nuovi criteri per valutazione performance Stabilità dei percorsi di routing in funzione della mobilità Consumo di energia MANET e Routing - Sistemi Mobili M 10 5 Protocolli di Routing Protocolli proattivi Mantengono route valide independentemente dal traffico Protocolli reattivi Mantengono route valide solo se necessario (on-demand) Protocolli geografici Generalmente, minore latenza e maggiore overhead Soluzioni di routing tradizionali come link-state e distance-vector sono proattive Usano la locazione della destinazione per fare forwarding Protocolli ibridi Quale approccio migliore? Dipende da pattern traffico e mobilità MANET e Routing - Sistemi Mobili M 11 Soluzione Banale: Flooding Vantaggi Semplicità Più efficiente quando frequenza di trasmissioni è molto bassa (no necessità di discovery/mantenimento cammini validi) Maggiore affidabilità potenziale (multiple path) Adatto per pattern di elevata mobilità Svantaggi Potenzialmente altissimo overhead Potenzialmente bassa affidabilità (utilizzo di broadcast, no reliable broadcast a basso livello) Alcuni protocolli usano flooding di pacchetti di controllo, magari per routing discovery (overhead ammortizzato sulla seguente sequenza di trasmissioni dati) MANET e Routing - Sistemi Mobili M 12 6 Dynamic Source Routing (DSR) (Johnson&Maltz, CMU, 1996) Source routing: sorgente cerca di stabilire e fa embedding dell’intero path (da sorgente a destinazione) nel pacchetto Come fa la sorgente a scoprire il path valido in DSR? Quando un nodo S desidera inviare un pacchetto a un nodo D, ma non conosce una route valida verso D, S comincia una operazione di route discovery S fa flooding di un pacchetto di Route Request (RREQ) Ogni node aggiunge in append il suo identificatore quando effettua il forwarding del pacchetto RREQ 13 MANET e Routing - Sistemi Mobili M Route Discovery in DSR (1) Y Trasmissione broadcast [S] S Z E F B C M J A L G H K I D N Rappresenta trasmissione di RREQ [X,Y] Rappresenta lista di identificatori in append a RREQ MANET e Routing - Sistemi Mobili M 14 7 Route Discovery in DSR (2) Y Z S E [S,E,F,J] F B C A D K [S,C,G,K] I L G H M J N I nodi J e K fanno entrambi broadcast di RREQ verso nodo D Siccome i nodi J e K potrebbero essere hidden node l’uno dell’altro, le loro trasmissioni possono entrare in collisione 15 MANET e Routing - Sistemi Mobili M Route Discovery in DSR (3) Y Z S E [S,E,F,J,M] F B C M J A L G H K I D N Nodo D non effettua forwarding di RREQ, perché si rende conto di essere la destinazione desiderata per l’operazione di route discovery MANET e Routing - Sistemi Mobili M 16 8 Route Reply in DSR La destinazione D, una volta ricevuto il primo pacchetto RREQ, invia un pacchetto di risposta Route Reply (RREP) RREP è inviato sul percorso inverso a quello contenuto nel pacchetto RREQ ricevuto RREP include info sul percorso da S a D, quello utilizzato da RREQ per giungere a D 17 MANET e Routing - Sistemi Mobili M Route Reply in DSR: Esempio Y Z S E RREP [S,E,F,J,D] F B C M J A L G H K I D N Rappresenta messaggio di controllo RREP MANET e Routing - Sistemi Mobili M 18 9 Come Efettuare Data Routing in DSR? Il nodo S, dopo aver ricevuto RREP, fa caching del percorso incluso nel messaggio RREP Quando il nodo S desidera inviare un pacchetto dati a D, l’intero percorso di routing è incluso nell’header di pacchetto (per questo si parla di source routing) I nodi intermedi utilizzano il percorso source route incluso nel pacchetto dati per determinare a chi il pacchetto debba essere girato (forwarding) 19 MANET e Routing - Sistemi Mobili M Messaggi Dati in DSR Y DATA [S,E,F,J,D] S Z E F B C M J A L G H K I D N Dimensione dell’header di pacchetto cresce con la lunghezza del percorso MANET e Routing - Sistemi Mobili M 20 10 Caching dei Percorsi in DSR Caching dei percorsi (route caching) è una ottimizzazione Ogni nodo fa caching di nuovi percorsi che viene a scoprire, in ogni modo possibile Vantaggi Accelera processo di route discovery Riduce processo di propagazione di RREQ Aiuta lo sfruttamento di path alternativi Svantaggi Cache non più valide (stale cache) possono influire negativamente sulle performance Come invalidare le cache distribuite? 21 MANET e Routing - Sistemi Mobili M Route Error (RERR) Y RERR [J-D] Z S E F B C M J A L G H K I D N J invia un pacchetto RERR a S lungo il percorso JFES quando suo tentativo di fare forwarding di un pacchetto dati da S a D fallisce, ad es. Per mobilità di nodi (attraverso il percorso SEFJD) Nodi in ascolto del pacchetto RERR aggiornano loro cache dei percorsi e rimuovono il link JD MANET e Routing - Sistemi Mobili M 22 11 DSR: Vantaggi e Svantaggi Vantaggi Cammini mantenuti solo fra nodi che hanno bisogno di comunicare (overhead ridotto) Caching può ridurre overhead per routing discovery Ogni discovery può portare a cammini multipli verso destinazione a causa di nodi intermedi che rispondono a partire da cache locali Svantaggi Crescita header pacchetti Flooding di RREQ Necessari meccanismi per evitare collisioni di RREQ fra vicini Aumento contesa canale all’invio di RREP (problema di RREP storm; overhearing e decisione locale basata su route più corta) RREP che utilizzano stale cache (inquinando altre cache in cascata) Timeout statico per cache, oppure Timeout adattivo basato su mobilità attesa, statistiche utilizzo link, probabilità rottura link MANET e Routing - Sistemi Mobili M 23 Ad hoc On-demand Distance Vector (AODV) (Perkins&Royer, Sun&UCSB, 1999) DSR può portare anche a header di grandi dimensioni e conseguente degrado delle performance AODV cerca di migliorare l’efficienza rispetto a DSR mantenendo tabelle di routing snelle e adatte sui nodi MANET Particolarmente quando payload tipici sono piccoli Pacchetti dati non contengono percorsi AODV mantiene la caratteristica positiva di DSR che i percorsi vengono memorizzati solo sui nodi che hanno necessità di comunicare (by need) MANET e Routing - Sistemi Mobili M 24 12 AODV: Idea Base Richieste di route (RREQ) sono oggetto di forwarding in modo simile a DSR Quando un nodo effettua re-broadcasting di un pacchetto RREQ, inizializza e avvia un path inverso che punti al nodo sorgente Quando destinazione desiderata riceve RREQ, risponde con un pacchetto di Route Reply (RREP) RREP viaggia lungo path inverso configurato durante catena di forwarding di RREQ e configura conseguentemente entry tabelle di routing dei soli nodi attraversati 25 MANET e Routing - Sistemi Mobili M RREQ/Reverse Path Setup in AODV (1) Y Trasmissione broadcast Z S E F B C M J A L G H K I D N Rappresenta la trasmissione di RREQ MANET e Routing - Sistemi Mobili M 26 13 RREQ/Reverse Path Setup in AODV (2) Y Z S E F B C M J A L G H D K I N Rappresenta i link per path inverso Backpointer memorizzati sui nodi sul path 27 MANET e Routing - Sistemi Mobili M RREQ/Reverse Path Setup in AODV (3) Y Z S E F B C M J A L G H K I D N D non effettua forwarding di RREQ, perché è esso stesso la destinazione di RREQ MANET e Routing - Sistemi Mobili M 28 14 Route Reply in AODV Y Z S E F B C M J A L G H D K I N Rappresenta link sul path usato da RREP Link in avanti (forward link) sono configurati quando RREP passa attraverso il path inverso 29 MANET e Routing - Sistemi Mobili M Trasmissione Dati in AODV Y DATA Z S E F B C M J A L G H K I D N Entry delle tabelle di routing locali sono usate per fare forwarding di pacchetti dati Diversamente da DSR, percorso non incluso in header MANET e Routing - Sistemi Mobili M 30 15 Esempi di Tabelle Routing in AODV 31 MANET e Routing - Sistemi Mobili M Timeout Ogni entry della tabella routing che contiene un path inverso viene ripulita dopo un timeout Perché? Se RREQ non riesce a raggiungere destinazione, o RREP non ritorna indietro correttamente, entry occuperebbe memoria locale in modo inutile Timeout devono essere sufficientemente lunghi per consentire a RREP di tornare indietro Ogni entry della tabella routing che contiene un path diretto (forward path) viene ripulita se non utilizzata per un intervallo active_route_timeout (più lungo del precedente) Perché? Il percorso può diventare non valido in tempi brevi in reti ad alta mobilità MANET e Routing - Sistemi Mobili M 32 16 Reporting di Link non più Utilizzabili Un nodo vicino è considerato attivo per una entry della tabella di routing se uno dei suoi pacchetti è stato girato usando quella entry nell’ultimo intervallo active_route_timeout Quando il link successivo incluso nella tabella di routing fallisce, tutti i nodi vicini attivi sono informati Un nodo genera RERR in seguito a broken path verso destinazione D Quando S riceve RERR, comincia un nuovo processo di route discovery per D 33 MANET e Routing - Sistemi Mobili M In Aggiunta: Link Failure Detection Messaggi di Hello: nodi vicini si scambiano periodicamente messaggi di hello (o alive message) Mancanza di messaggi hello viene utilizzata come indicazione di fallimento/guasto del link In alternativa, mancata ricezione di una serie di ACK a livello MAC può essere usata come indicazione di link failure (cross-layer monitoring) MANET e Routing - Sistemi Mobili M 34 17 Come Limitare Flooding durante Fase di Route Discovery? Ottimizzazione: espansione graduale della ricerca, ad anello RREQ sono inviati inizialmente con piccolo TTL, al fine di limitare la loro propagazione Anche DSR può utilizzare (e lo fa in molte versioni) una ottimizzazione simile Se non viene ricevuto nessun RREP, allora si riprova con TTL maggiore Invio di un nuovo RREQ Quindi stiamo cercando un tradeoff più bilanciato fra che cosa? MANET e Routing - Sistemi Mobili M 35 Greedy Perimeter Stateless Routing (GPSR; Karp&Kung, Harvard, 2000) Routing geografico sfrutta informazioni di locazione per semplificare il raggiungimento della destinazione Assunzione 1: sorgente conosce la locazione della destinazione Assunzione 2: nodi mantengono liste per nodi vicini e loro locazioni Necessario includere info locazione in messaggi hello (beacon) scambiati periodicamente Due schemi per data forwarding: Greedy forwarding: inviare dati al nodo in prossimità presunto più vicino alla destinazione (utilizzare solo info locazione nodi vicini per data forwarding) Se greedy forwarding fallisce, tentare con perimeter forwarding MANET e Routing - Sistemi Mobili M 36 18 Greedy Forwarding (1) Y Z S E F B C J A M L G H D K I N E è il nodo in prossimità di S più vicino a D (“vicino” in termini di distanza Euclidea) 37 MANET e Routing - Sistemi Mobili M Greedy Forwarding (2) Y Z S E F B C J A M L G H K D I N F è il nodo in prossimità di E più vicino a D J è il nodo in prossimità di F più vicino a D MANET e Routing - Sistemi Mobili M 38 19 Possibile Fallimento di Greedy Forwarding S E A D B C Nell’ipotesi che E non sia nel raggio di copertura di D Nessun nodo in prossimità di E è più vicino a D rispetto a E Fallimento forwarding! Ma esisterebbe un cammino utile: [S, A, B, C, D] MANET e Routing - Sistemi Mobili M 39 Perimeter (Face) Forwarding Riesce sempre a raggiungere destinazione se esiste un cammino utile Route attorno ai cosiddetti “buchi” (hole) Ogni nodo calcola Relative Neighborhood Graph (RNG) o Gabriel Graph (GG) RNG è grafo non-diretto definito su un insieme di punti nel piano Euclideo connettendo due punti A e B con un arco solo se non esiste un terzo punto C più vicino a entrambi rispetto a quanto non lo siano l’un l’altro (G. Toussaint, 1980) Si attraversa RNG usando regola mano destra Essenzialmente, visita dei nodi che definiscono un perimetro attorno a un buco MANET e Routing - Sistemi Mobili M 40 20 Perimeter (Face) Forwarding Durante l’attraversamento del grafo, se il pacchetto incontra un nodo che è più vicino alla destinazione rispetto al nodo in cui greedy forwarding era fallito, si effettua di nuovo switch verso greedy forwarding Possono verificarsi cicli (loop) quando si usa perimeter forwarding qualora destinazione non sia raggiungibile GPSR è in grado di accorgersene e di distruggere il pacchetto interessato 41 MANET e Routing - Sistemi Mobili M Esempio S E Switch da greedy a perimeter forwarding A D Switch da perimeter a greedy forwarding B C (nell’ipotesi che B sia più vicino a D rispetto a E) MANET e Routing - Sistemi Mobili M 42 21 Routing Multi-hop vs. Consumo Energetico Consumo di energia per trasmettere un pacchetto: Costo costante per alimentare circuiteria a dimensione pacchetto Proporzionale quadrato distanza Proporzionale Multihop routing può ridurre consumo di energia (energia utilizzata è grossolanam. proporzionale a quadrato distanza) ma introduce ritardi Quale distanza per-hop? Troppo corta => domina costo energetico per circuiteria accesa lunga => domina costo trasmissione pacchetto; riduzione riutilizzabilità banda nello spazio; overhead per scheduling perché aumenta numero nodi a 1-hop-distance Troppo MANET e Routing - Sistemi Mobili M 43 Parentesi su Clustering Clustering (raggruppamento) per risparmio di risorse Dividere la rete in cluster (gruppi) ciascuno dei quali contiene numeri “paragonabili” di nodi Clusterhead costituiscono backbone naturale anche per fare routing Clustering ottimale è problema NP-completo Molto importante: comunque mobilità tende a degradare ottimalità clusterizzazione Utilità specifica per reti di sensori: combinare “letture di cluster” in unico pacchetto dati (data aggregation) MANET e Routing - Sistemi Mobili M 44 22 Rapidissimamente: Esempi di Clustering LEACH Decisione locale ai nodi se fare da cluster head o no (numero random ed elezione completamente locale) Ogni nodo non cluster fa overhearing e sceglie cluster head più vicino Cluster head ruotati a turno per bilanciare consumo energetico Comunicazione prima verso cluster head poi verso membri cluster Nessuna assicurazione di ottimalità nel clustering HEED Energia residua per valutare elezione cluster head Cluster head eletti dopo protocollo iterativo: Nodo annuncia sua intenzione e costo come cluster head Ogni non-cluster head sceglie suo candidato a costo minore secondo formula probabilistica, eventualmente se stesso se non coperto MANET e Routing - Sistemi Mobili M 45 Altre Modalità di Routing/Clustering più Originali? Sotto alcune ipotesi semplificative, che possono significativamente semplificare il modo di approcciare il problema Ancora cross-layer o assunzioni statiche possibili su determinati ambienti di deployment Ad es. scenario di content sharing in competizioni sportive con grande pubblico (stadio olimpico Torino 2006) e diffusione di foto/video riprese dagli spettatori fornire entertainment service, ad es. piccoli contenuti a un largo pubblico di utenti concentrati nello spazio e nel tempo multimediali, scoperti dinamicamente, Mantenere disponibilità contenuti nonostante ingresso/uscita di spettatori nella località desiderata MANET e Routing - Sistemi Mobili M 46 23 Assunzione di MANET Densa e Interazione con Livello Applicativo Assunzioni Dense MANET Ampio numero di dispositivi co-locati in un’area relativamente piccola Densità nodi pressoché invariante lungo intervalli di tempo relativamente lunghi Replicazione e repliche read-only Requisiti non funzionali Basso overhead Protocolli leggeri e approssimati Alta scalabilità Decentralizzazione completa Accuratezza sufficiente Terminazione protocollo basata su euristiche 47 MANET e Routing - Sistemi Mobili M Replication in Dense MANET (REDMAN) Idea base: disseminare repliche di risorse di interesse comune e mantenere grado replicazione desiderato indipendentemente da mobilità dei nodi (non predicibile) dentro/fuori area densa Delegati ospitano repliche, rispondono a richieste di retrieval, partecipano alla disseminazione Manager: responsabili per mantenimento del grado replicazione appropriato D Np Shared Resource Table Resource Name Replication Degree Probable Replica Placement Alberto Tomba’s Picture1 3 D, L, A (3) Np F B (3) D (1) L E M (4) (2) C (3) (4) A MANET e Routing - Sistemi Mobili M Np G H 48 24 Approccio a Middleware: Gestione a Livello Applicativo 49 MANET e Routing - Sistemi Mobili M Problema Identificazione Dense MANET Np A Np B I Np G Dense MANET se e solo se #Neighbor > Threshold Protocollo decentralizzato e leggero in cui ogni nodo decide autonomamente sua condizione appartenenza Dinamicità: lazy update basati su messaggi hello MANET e Routing - Sistemi Mobili M 50 25 Problema Elezione Manager Np X A A5 CC3 Np BB4 II6 Np G Elezione Manager Ruolo va assegnato a un nodo topologicamente centrale leggera, no placement ottimale (evitare ricerca esaustiva) Strategia di esplorazione basata su euristiche Soluzione Dinamicità Risposta reattiva: nuova determinaz. nodi più lontani ogniTr Risposta proattiva: nuova elezione ogni Tp >> Tr MANET e Routing - Sistemi Mobili M 51 Terminazione Processo Elezione Soluzione ottimale trovata se e solo se: 1. currentINvalue = worstExploredValue / 2 In alternativa, euristiche: 2. 3. currentINvalue ≤ worstExploredValue * DesiredAccuracy maxConsecutiveEqualSolutions sono state explorate senza migliorare bestValue corrente Ovviamente DesiredAccuracy e maxConsecutiveEquals determinano (approssimativ.) la qualità della soluzione ottenuta in modo quantitativo MANET e Routing - Sistemi Mobili M 52 26 Identificazione Nodi più Lontani N Np P Q M O X 1 Trep 1 A A1 01 0 BB2 1 I G L C Np H I EE2 D D1 G F Np 0 53 MANET e Routing - Sistemi Mobili M Identificazione Nodi più Lontani N Np Q M O X P E2 Trep G L A1 C Np I B2 H FF2 I 1 1 D D1 Np 1 Trep MANET e Routing - Sistemi Mobili M 54 27 Identificazione Nodi più Lontani N Np P Q M O X E2 2 C C3 Np A1 2 2B 2 H I Trep G G3 L I Np D1 F2 Trep Trep 55 MANET e Routing - Sistemi Mobili M Identificazione Nodi più Lontani Trep Np 5 5 5 X6 5 O 5 X Q5 P5 N3 M4 E2 G3 L4 C3 Np I4 A1 B2 H H3 F2 MANET e Routing - Sistemi Mobili M I Np D1 56 28 Identificazione Nodi più Lontani Trep Np Trep 6 6 Q5 M4 O5 X6 P5 N3 E2 G3 L4 C3 Np B2 H H3 I4 A1 Trep I Np D1 F2 Trep 57 MANET e Routing - Sistemi Mobili M Identificazione Nodi più Lontani Trep N3 Np Q5 M4 O5 X6 P5 E2 G3 L4 C3 Np I4 A1 B2 H H3 F2 I Np D1 Farthest Node X MANET e Routing - Sistemi Mobili M Forwarder A 58 29 Numero Repliche: Consistenza Approssimata Rilassa il vincolo di anytime perfect consistency per il numero di repliche disponibili Np L M Np D A S Np Shared Resource Table Resource Name Replication Degree Probable Replica Placement AlbertoTomba Picture1 3 D, A, L, A L, S 59 MANET e Routing - Sistemi Mobili M Numero Repliche: Consistenza Approssimata Np L M Np D D A Np Shared Resource Table Resource Name Replication Degree Probable Replica Placement AlbertoTomba Picture1 3 D, L, A MANET e Routing - Sistemi Mobili M 60 30 Numero Repliche: Consistenza Approssimata Np L M Np Shared Resource Table Resource Name Replication Degree Probable Replica Placement AlbertoTomba Pic1 3 D, L, A A D Np 61 MANET e Routing - Sistemi Mobili M Strategie per Disseminazione Repliche Diverse possibili strategie: Random distribution Spatially uniform distribution, … REDMAN: distribuzione lungo “linee diritte” (approssim.) No positioning equipment Linee diritte: vicini con numero più piccolo di vicini condivisi con predecessori MANET e Routing - Sistemi Mobili M 62 31 Strategie per Ritrovamento Repliche Diverse strategie possibili per replica retrieval: • Query flooding (QF) • Flooding di Informazioni su Replica Placement (IRP) • k-hop Distance IRP Dissemination (k-DID) REDMAN utilizza Straight IRP Dissemination (SID) 63 MANET e Routing - Sistemi Mobili M Strategie per Ritrovamento Repliche IRP distribuiti lungo le stesse linee diritte approssimate usate per disseminazione di repliche Retrieval lungo linee diritte (non parallele alle linee usate per disseminazione) Dualità fra distribuzione repliche e loro ritrovamento MANET e Routing - Sistemi Mobili M 64 32