UN NUOVO ALGORITMO DI ROUTING PER RETI WIRELESS DI TIPO ROOFTOP Mario Giammarco 1617871 8 luglio 2003 2 Indice 1 INTRODUZIONE 7 2 ILROUTINGSUINTERNET 9 2.1 IlmodelloattualediInternet . . . . . . . . . . . . . . . . . . 9 2.2 Lanetmask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.3 Glialgoritmiintradomain . . . . . . . . . . . . . . . . . . . . 14 2.3.1 RoutingInformationProtocol(RIP) . . . . . . . . . . 14 2.3.2 OpenShortestPathFirst(OPSF) . . . . . . . . . . . . 15 2.4 Glialgoritmiinterdomain . . . . . . . . . . . . . . . . . . . . 15 2.4.1 BorderGatewayProtocol(BGP) . . . . . . . . . . . . 15 3 ILROUTINGADHOC 17 3.1 Ilmodellodirete wireless . . . . . . . . . . . . . . . . . . . . 17 3.2 Glialgoritmiproattivi . . . . . . . . . . . . . . . . . . . . . . 19 3.2.1 Fisheye RoutingProtocol(FSR) . . . . . . . . . . . . . 19 3.3 Glialgoritmireattivi . . . . . . . . . . . . . . . . . . . . . . . 20 3.3.1 AdHocOndemandDistance Vector(AODV) . . . . 21 3.3.2 DynamicSourceRouting(DSR) . . . . . . . . . . . . . 22 3.3.3 TemporallyAlignedRoutingAlgorithm(TORA) . . . 23 3.4 Glialgoritmigeogra(cid:2)ci . . . . . . . . . . . . . . . . . . . . . . 23 3.4.1 LocationAidedRouting(LAR) . . . . . . . . . . . . . 24 3.4.2 GreedyPerimeter Stateless routing(GPSR) . . . . . . 25 3.5 Glialgoritmigerarchici . . . . . . . . . . . . . . . . . . . . . . 26 3.5.1 Clusterhead GatewaySwitchRouting(CGSR) . . . . 27 3.5.2 MultimediaMobile Wireless Networks(MMWN) . . 28 3 4 INDICE 3.5.3 TerminodeRouting(TR) . . . . . . . . . . . . . . . . . 30 4 IPV6 31 4.1 IndirizzoIPe auto-con(cid:2)gurazione . . . . . . . . . . . . . . . 31 4.2 MobileIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.3 Proposteperindirizzamentogeogra(cid:2)co . . . . . . . . . . . . 33 5 LERETIROOFTOP 35 5.1 Ilmodello . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 5.2 Glialgoritmi . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.3 Considerazioni . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5.4 Unprimotentativo . . . . . . . . . . . . . . . . . . . . . . . . 40 5.4.1 Idifetti . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 5.4.2 Nodilontani . . . . . . . . . . . . . . . . . . . . . . . 41 5.4.3 Routefantasma . . . . . . . . . . . . . . . . . . . . . . 43 5.4.4 Multihoming . . . . . . . . . . . . . . . . . . . . . . . 45 5.4.5 Conclusioni . . . . . . . . . . . . . . . . . . . . . . . . 45 6 SHORTCUTROUTER 47 6.1 L’idea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 6.2 Lafasediricerca percorso . . . . . . . . . . . . . . . . . . . . 48 6.3 Lescorciatoie . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 6.4 Casiparticolari . . . . . . . . . . . . . . . . . . . . . . . . . . 49 6.4.1 Destinazionenontrovata . . . . . . . . . . . . . . . . 50 6.4.2 Controlliperiodici . . . . . . . . . . . . . . . . . . . . 50 6.4.3 Interruzionedelpercorso . . . . . . . . . . . . . . . . 50 6.4.4 Latenzacreazioneroute . . . . . . . . . . . . . . . . . 50 6.4.5 Evitarenodisovraccarichi . . . . . . . . . . . . . . . . 51 6.5 Esempi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 6.5.1 Primoesempio . . . . . . . . . . . . . . . . . . . . . . 51 6.5.2 Secondoesempio . . . . . . . . . . . . . . . . . . . . . 52 6.5.3 Terzoesempio . . . . . . . . . . . . . . . . . . . . . . . 53 INDICE 5 7 IMPLEMENTAZIONE 57 7.1 Scelte dibase . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 7.2 Architettura . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 7.3 Classi Principali . . . . . . . . . . . . . . . . . . . . . . . . . . 64 7.3.1 Dispatcher . . . . . . . . . . . . . . . . . . . . . . . . . 64 7.3.2 ForwardRREQeForwardRREP . . . . . . . . . . . . . 64 7.3.3 SendHELLOeReceiveHELLO . . . . . . . . . . . . . 64 7.3.4 UpdateStatistics . . . . . . . . . . . . . . . . . . . . . . 65 7.3.5 OptimizeRoutes . . . . . . . . . . . . . . . . . . . . . . 65 7.3.6 DeleteOldRoutes . . . . . . . . . . . . . . . . . . . . . 65 7.3.7 CheckNewRoutes . . . . . . . . . . . . . . . . . . . . . 65 7.4 Noteimplementative . . . . . . . . . . . . . . . . . . . . . . . 66 7.5 Collaborazione . . . . . . . . . . . . . . . . . . . . . . . . . . 67 8 SIMULAZIONE 69 8.1 Piattaforma . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 8.2 Test eRisultati . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 9 CONCLUSIONIESVILUPPIFUTURI 75 6 INDICE Capitolo 1 INTRODUZIONE I progressi della tecnologia aprono spesso nuovi scenari. Attualmente si sta espandendo e sta suscitando molto interesse la tecnologia (cid:147)wireless(cid:148). In particolare le nuove schede per il collegamento in rete ad onde radio a basso costo hanno permesso la creazione di reti alternative ad Internet anchedimediedimensioni. Questeretivengonochiamate(cid:147)rooftop(cid:148)inbaseallaloroprincipaleca- ratteristica: le antenne dei dispositivi di rete sono in genere posizionate suitetti delleabitazionideipartecipantidiqueste comunita(cid:30) wireless. Poiche· la portata delle antenne e(cid:30) limitata puo(cid:30) capitare che per fare co- municare due nodi distanti occorra attraversare diversi nodi che servano (cid:147)daponte(cid:148). E(cid:30) quindi fondamentale per le sopracitate comunita(cid:30) avere a disposi- zione un sistema di routing e di assegnazione univoca degli indirizzi dei nodi. Sfortunatamenteglialgoritmigia(cid:30) esistentiperInternetnonsiadattano ef(cid:2)cacemente aquestaparticolaresituazione. E(cid:30) stato quindi progettato, implementato e valutato in via simulativa, unalgoritmodiroutingspeci(cid:2)coche,utilizzandobacktrackingelatecnica degli (cid:147)shortcut(cid:148), riesce a trovare dei percorsi qualitativamente validi (che cioe(cid:30) attraversano meno nodi possibili per giungere a destinazione) senza sovraccaricarelarete. 7 8 CAPITOLO1. INTRODUZIONE Acompletamentodell’algoritmovieneinoltrepresentatounsistemadi assegnazioneunivocadegliindirizzi. L’algoritmo, per ragioni di portabilita(cid:30), e(cid:30) stato implementato nel lin- guaggio Java e tramite il simulatore Javasim e(cid:30) stato confrontato con altri ottenendorisultatipositivi. Irestanticapitolidellatesi sonocos(cid:30)(cid:17) strutturati: (cid:15) nel secondo capitolo viene introdotto il problema del routing e ven- gonomostratiiprincipalialgoritmiinusosuInternet; (cid:15) nel terzo capitolo si parla del modello di rete wireless piu(cid:30) diffuso attualmenteconirelativialgoritmi; (cid:15) nel quarto capitolo si introduce il nuovo protocollo di routing IP versionesei; (cid:15) nel quinto capitolo viene spiegato dettagliatamente il modello di re- ti wireless rooftop evidenziandone i problemi anche attraverso un esempio erratodiapproccioalgoritmico; (cid:15) nelsestocapitolosipresental’algoritmooggettodelseguentelavoro ditesi; (cid:15) nel settimo capitolo si mostrano i dettagli dell’implementazione di riferimentodell’algoritmo; (cid:15) nell’ottavo capitolo viene valutato l’algoritmo in via simulativa e ne vengonopresentati irisultati; (cid:15) per (cid:2)nire nel nono capitolo si traggono alcune conclusioni e si pre- sentanoalcune ideepereventualisviluppifuturi. Capitolo 2 IL ROUTING SU INTERNET Ilroutingsostanzialmentee(cid:30) un problemaditeoriadei gra(cid:2). Piu(cid:30) speci(cid:2)ca- mente dati un insieme di nodi collegati tra loro da archi pesati il routing consiste nel trovare il percorso di costo minimo fra ogni coppia di nodi. La dif(cid:2)colta(cid:30) nel realizzare un algoritmo di routing deriva dai requisiti di scalabilita(cid:30) richiesti e quindi dalle relative conseguenze: l’ algoritmo deve essere di tipo distribuito e ogni router non puo(cid:30) ovviamente avere una vi- sione completa della rete. Non esiste al momento un algoritmodi routing (cid:147)ideale(cid:148) che possa quindi operare bene su ogni modello di rete esisten- te; al contrario per ogni situazione sono stati realizzati speci(cid:2)ci algoritmi, comevedremonei capitolisuccessivi. 2.1 Il modello attuale di Internet Nella (cid:2)gura2.1 si puo(cid:30) vedere il modello attuale di internet che e(cid:30) discreta- mente piu(cid:30) complesso del modello iniziale che aveva una topologia molto piu(cid:30) semplice, praticamente ad albero. In esso possiamo notare che vi so- no diversi (cid:147)backbone(cid:148) (le dorsali ad alta capacita(cid:30) di trasmissione) a cui si collegano diversiAS(autonomous systems). Un ASrappresenta qualsiasi organizzazione collegata ad internet: imprese, enti statali, universita(cid:30), ISP (rivenditori di collegamenti ad internet) e altri. Vi sono AS collegati a piu(cid:30) dorsali (es: grandi aziende che desiderano collegamenti ridondanti) e so- 9 10 CAPITOLO2. ILROUTINGSUINTERNET Figura2.1: Internetattuale no detti (cid:147)multihomed(cid:148), alcuni di questi consentono di fare da tramite al traf(cid:2)cofraledorsalievengonode(cid:2)niti(cid:147)transit(cid:148)AS.Riguardoalsuddetto modellosipossonofarele seguenti considerazioni: (cid:15) Datal’enormequantita(cid:30) dicomputercollegatiattualmenteininternet (diversi milioni) il problema e(cid:30) troppo complesso per essere affron- tato con un singolo algoritmo; come vedremo la complessita(cid:30) e(cid:30) stata ridottautilizzandounsistema gerarchico; (cid:15) E(cid:30) presenteininternetun’autorita(cid:30) centralecheassegnagliindirizziai richiedenti; in questo modo si garantisce l’univocita(cid:30) di ogni singolo
Description: