Tesi di laurea in ingegneria elettronica
This presentation is the property of its rightful owner.
Sponsored Links
1 / 21

Tesi di laurea in Ingegneria Elettronica PowerPoint PPT Presentation


  • 147 Views
  • Uploaded on
  • Presentation posted in: General

Università degli studi Roma Tre. Tesi di laurea in Ingegneria Elettronica. Esplorazione automatica di reti multiprotocollo. Tesista: Lorenzo Colitti Relatore: Prof. Giuseppe Di Battista. Esplorazione automatica di reti. Applicazioni: Isolamento di guasti

Download Presentation

Tesi di laurea in Ingegneria Elettronica

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Tesi di laurea in ingegneria elettronica

Università degli studi Roma Tre

Tesi di laurea in Ingegneria Elettronica

Esplorazione automatica di reti multiprotocollo

Tesista: Lorenzo Colitti

Relatore: Prof. Giuseppe Di Battista


Esplorazione automatica di reti

Esplorazione automatica di reti

  • Applicazioni:

    • Isolamento di guasti

    • Analisi delle prestazioni e pianificazione

    • Simulazione

    • Posizionamento efficace di servizi di rete

  • Perché esplorazione automatica?

    • Le reti attuali, anche in ambito locale, sono notevolmente complesse

    • La struttura di Internet rende impensabile l’esplorazione manuale o il ricorso a informazioni statiche

      • È costituita da centinaia di milioni di nodi

      • È gestita da decine di migliaia di soggetti diversi con competenze locali

      • È in continuo mutamento


  • Esplorazione stato dell arte

    Esplorazione: stato dell’arte

    • Approcci diversi:

      • Basato sui registri

        • Hermes

        • Flap viewer

      • Basato sull’interrogazione degli apparati di rete

        • Polyphemus

      • Basato sul comportamento della rete

        • Utilizzo di traceroute

        • Skitter, Argus, Mercator, NetBird, NetHunter


    Ipv6 e ipv4

    IPv6 e IPv4

    • Perché IPv6?

      • La scarsità degli indirizzi IPv4 limita le applicazioni attuali

      • Protocollo più semplice, razionale ed estendibile

      • Caratteristiche di sicurezza, multicast, supporto alla mobilità

      • Supporto al “pervasive networking” del futuro

      • L’interesse per IPv6 in questo momento è in crescita

    • IPv4 e IPv6 sono incompatibili.

      • Per avere successo, IPv6 deve garantire l’interoperabilità con IPv4 al livello di rete della pila OSI (livello 3)


    Meccanismi di compatibilit

    Isola

    IPv6

    Link IPv4

    Link IPv6

    Tunnel IPv6 su IPv4

    Router IPv4

    Router IPv6

    Router dual stack

    Meccanismi di compatibilità

    Meccanismi di compatibilità a livello 3:

    • Nodi bi-protocollo (dual stack)

    • Traduttori di protocollo (NAT-PT)

    • Tunnel IPv6 in IPv4

    • Configurati

    • Automatici

    • 6to4

    • Altri


    Lo sviluppo di ipv6 reti miste

    Lo sviluppo di IPv6: reti miste

    • Se IPv6 prende piede, avremo, almeno per i primi anni, una rete mista fatta di zone IPv6 e zone IPv4

    • Questo complica la rete e rende ancor più necessaria l’esplorazione automatica

      • Abbiamo due topologie di livello 3 distinte

        • In linea di principio, si dovrebbero ispezionare singolarmente

        • In realtà ci interessano maggiormente i rapporti tra le due

      • L’ispezione della rete IPv6 è complicata dai tunnel

        • La topologia di livello 3 è diversa da quella dei collegamenti fisici

        • I tunnel appaiono come un solo hop

        • Il traceroute non è più sufficiente


    Obiettivi

    Obiettivi

    • Determinare i nodi e il tipo (IPv4 o IPv6) dei collegamenti in una zona di Internet

    • Rilevare l’incidenza dei tunnel nella rete IPv6

    • Essere il meno invasivi possibile

    • Realizzare degli strumenti elementari che possano essere usati in strumenti più sofisticati


    Fasi di realizzazione

    Fasi di realizzazione

    • Realizzazione di una rete IPv6 di test

      • La rete collega Roma Tre, CASPUR e una sottorete privata

      • Piattaforme utilizzate: Cisco e Linux

        • Parte della rete di Roma Tre è emulata attraverso User Mode Linux

      • Presto sarà disponibile la rete IPv6 nativa del GARR (progetto 6net)

    • Studio di metodologie e tecniche di esplorazione di reti miste

    • Sviluppo di strumenti di supporto e tool di esplorazione

      • Script di configurazione automatica per la rete virtuale

      • Implementazione su Linux della MIB IPv6

      • tunneltrace

      • findmtu


    La rete di test

    CASPUR

    6net-gw

    IPv4

    2001:760:2::/64

    La rete di test

    woodstock

    2001:760:4:ffff::/64

    2001:760:2:ffff::/64

    2001:760:4:f010::/64

    2M

    DIA

    dia-v6

    UML

    2001:760:4:f000:/60

    2001:760:4::/64

    brunello

    dns, www

    Linux

    dolcetto

    client

    Win2k

    giga

    UML

    Linux

    Link IPv4

    Link IPv6

    Tunnel IPv6 su IPv4

    Router IPv4

    Router IPv6

    Router dual stack


    User mode linux

    User Mode Linux

    • Permette di far girare uno o più macchine virtuali (VM) Linux come processi su un sistema ospite Linux

    • Virtualizzazione

      • Le VM sono sistemi Linux a tutti gli effetti

      • Il nucleo di una VM è un processo sul sistema ospite

      • I processi delle macchine virtuali girano direttamente sul sistema ospite, sono intercettate solo le chiamate di sistema

    • Emulazione dell’hardware

      • Dischi virtuali: file sul sistema ospite

      • Terminale utente

      • Rete

        • Le macchine virtuali possono essere messe in rete tra loro

        • Le capacità di Linux permettono di costruire reti complesse

        • Le VM possono accedere alla rete esterna attraverso l’ospite


    La rete ipv6 uml

    La rete IPv6 UML

    • 6 macchine virtuali IPv6 con Linux Red Hat 7.2

    • Rete 2001:760:4:f000::/60, ripartita in 6 sottoreti IPv6

    • Instradamento dinamico con protocollo RIPng e demone di routing zebra

    • Collegamento alla rete IPv6 reale attraverso il sistema ospite

    • Configurazione delle macchine virtuali e dei file DNS effettuata automaticamente attraverso script

    Esempio: un traceroute parzialmente virtuale e parzialmente reale


    Esplorazione di reti miste

    Esplorazione di reti miste

    • Obiettivo fondamentale: caratterizzazione dei tunnel IPv6 in IPv4

      • I tunnel sono l’unico meccanismo di transizione utilizzato nelle aree interne (core) della rete

    • Problema di base: ricerca di tunnel in un percorso

      • Dato un percorso, per ogni coppia di nodi consecutivi vorremmo sapere:

        • Se il collegamento avviene per mezzo di un tunnel

        • Quali sono gli indirizzi IPv4 degli estremi del tunnel

        • Quali e quanti sono i nodi IPv4 intermedi


    Fonti di informazioni sui tunnel

    Fonti di informazioni sui tunnel

    • Si possono ottenere informazioni da varie fonti:

      • Struttura degli indirizzi

        • Indirizzi IPv4-compatibili(es. ::193.204.161.2)

        • Indirizzi 6to4(es. 2002:c1cc:a102:f:19::1)

      • Dimensione massima dei pacchetti (MTU) permessa dal percorso

      • Nomi associati agli indirizzi IP (DNS)

      • Comunicazione con gli apparati di rete (metodo invasivo)

        • SNMP (Simple Network Management Protocol)

        • IPv6 Node Information Query

    • Le fonti hanno diversi gradi di disponibilità e di affidabilità

    • Spesso occorre fondere informazioni provenienti da più fonti


    Tunneltrace

    Tunneltrace

    • Strumento sviluppato: tunneltrace

      • Funzionamento simile al comando traceroute

        • Parte dai risultati del comando traceroute6, analizzandoli una riga alla volta

        • Evidenzia la presenza di tunnel tra due nodi

        • Cerca di stabilire gli indirizzi degli estremi del tunnel

      • Architettura modulare

        • È possibile aggiungere altre fonti di informazioni in maniera semplice

        • Attualmente utilizza MTU, DNS, e SNMP

        • In futuro potrà utilizzare anche ICMPv6 Node Information query ed eventuali altri


    Tunneltrace fonti informative

    Tunneltrace: fonti informative

    • MTU

      • Funzionamento:

        • Un tunnel IPv6-in-IPv4 aggiunge ad ogni pacchetto una intestazione IPv4, che riduce la dimensione massima di pacchetto trasportabile (MTU) di 20 byte

        • È sufficiente verificare che tra un nodo e il successivo la dimensione massima del pacchetto trasportabile scenda di 20 byte

      • Caratteristiche:

        • Sempre disponibile

        • Media affidabilità

        • Non ci dice gli indirizzi IPv4 degli estremi

        • Permette di scoprire solo il primo tunnel in un percorso


    Tunneltrace fonti informative 2

    Tunneltrace: fonti informative (2)

    • DNS

      • Funzionamento:

        • Si cerca nel DNS il nome corrispondente all’indirizzo IPv6 e, se esiste, l’indirizzo IPv4 corrispondente al nome. Se esiste l’indirizzo IPv4, è probabile che ci sia un tunnel

      • Caratteristiche:

        • La disponibilità dipende da come l’amministratore della rete che si attraversa ha definito i nomi

        • Bassa affidabilità

          • Le informazioni possono essere vecchie o non esatte

          • Non assicura la presenza di un tunnel: potrebbe essere invece un collegamento nativo IPv6

        • Ci dice solo l’indirizzo IPv4 dell’estremo remoto del tunnel


    Tunneltrace fonti informative 3

    Tunneltrace: fonti informative (3)

    • SNMP

      • Funzionamento:

        • Interrogazioni SNMP direttamente ai nodi del percorso con opportuni accorgimenti per dedurre la presenza di tunnel e gli indirizzi IPv4 degli estremi

      • Caratteristiche:

        • Utilizzabile solo su reti a cui si ha accesso amministrativo

        • Ottima affidabilità

        • Può essere usato su trasporto IPv6 o IPv4 (ma in questo caso dipende dal metodo DNS per ottenere l’indirizzo IPv4 da interrogare)

        • Le informazioni che fornisce dipende da quali funzionalità sono supportate dal nodo che viene interrogato

          • Cisco non fornisce informazioni sui tunnel

          • Linux fornisce le informazioni su IPv6 grazie ad una estensione sviluppata nel corso della tesi


    Tunneltrace risultati 1

    Tunneltrace: risultati (1)

    • L’affidabilità dei risultati ottenuti dipende molto da quali fonti sono disponibili

      • SNMP permette di ottenere ottimi risultati

      • DNS tende a fornire falsi positivi

    sh-2.05$ ./tunneltrace –q 2 2001:760:4:f005::2

    traceroute to 2001:760:4:f005::2 (2001:760:4:f005::2) from 2001:760:4:f010:250:daff:fedf:b56b, 30 hops max, 16 byte packets

    1 2001:760:4:f010:: (2001:760:4:f010::) 0.345 ms 0.239 ms

    |

    | v6-in-v4 X.X.X.X->X.X.X.X (mtu)

    |

    2 2001:760:4:ffff:: (2001:760:4:ffff::) 41.499 ms 39.268 ms

    3 2001:760:4:0:204:76ff:fe22:5ba0 (2001:760:4:0:204:76ff:fe22:5ba0) 40.567 ms 52.182 ms

    4 2001:760:4:f000::2 (2001:760:4:f000::2) 39.989 ms 38.18 ms

    |

    | v6-in-v4 10.0.0.1->10.0.0.2 (snmp)

    |

    5 2001:760:4:f002::1 (2001:760:4:f002::1) 40.127 ms 39.014 ms

    6 2001:760:4:f005::2 (2001:760:4:f005::2) 41.93 ms 38.626 ms


    Tunneltrace risultati 2

    Tunneltrace: risultati (2)

    [email protected]:~/tesi/tunneltrace/v1.0$ ./tunneltrace -q 2 www.6bone.net

    traceroute to 6bone.net (3ffe:b00:c18:1::10) from 2002:c1cc:a102:0:204:76ff:fe22:5ba0, 30 hops max, 16 byte packets

    1 2002:c1cc:a102:: (2002:c1cc:a102::) 2.241 ms 1.03 ms

    |

    | v6-in-v4 X.X.X.X->X.X.X.X guess (mtu)

    |

    2 swi6T1-A1-0-2.switch.ch (2001:620:0:39::2) 60.913 ms 73.437 ms

    3 2001:798:12:200::2 (2001:798:12:200::2) 73.86 ms 71.112 ms

    4 * it.ch6.ch.6net.org (2001:798:0:3::1) 70.641 ms

    5 de.at6.at.6net.org (2001:798:0:9::2) 72.297 ms *

    6 nl.uk6.uk.6net.org (2001:798:0:6::2) 61.244 ms nl.de6.de.6net.org (2001:798:0:5::1) 71.012 ms

    7 surfnet.nl6.nl.6net.org (2001:798:22:200::1) 59.663 ms 71.958 ms

    8 2001:798:22:200::2 (2001:798:22:200::2) 72.186 ms *

    |

    | v6-in-v4 X.X.X.X->145.145.166.37 guess (dns)

    |

    9 Gi5-1-2.BR2.Amsterdam1.surf.net (2001:610:16:6036::37) 60.024 ms *

    |

    | v6-in-v4 X.X.X.X->193.148.15.48 guess (dns)

    |

    10 ams-ix.sara.xs4all.net (2001:7f8:1::a500:3265:1) 69.241 ms 59.881 ms

    |

    | v6-in-v4 X.X.X.X->194.109.5.13 guess (dns)

    |

    11 0.ge-0-3-0.xr1.pbw.xs4all.net (3ffe:8280:0:201::) 71.764 ms 73.968 ms

    12 xs4all-edt.ipv6.edisontel.it (2001:750:e::3) 70.973 ms 59.367 ms

    13 rap.ipv6.viagenie.qc.ca (3ffe:b00:c18:1:290:27ff:fe17:fc0f) 400.171 ms 388.05 ms

    |

    | v6-in-v4 X.X.X.X->131.243.129.43 guess (dns)

    |

    14 www.6bone.net (3ffe:b00:c18:1::10) 389.526 ms 392.516 ms


    Findmtu

    FindMTU

    • L’MTU del percorso verso una destinazione ci dice se tra i due punti della rete c’è un tunnel

    • È possibile realizzare una sonda che data una lista di reti ci dica quali di esse sono raggiunte tramite un tunnel e quali tramite IPv6 nativo

    • I risultati forniscono una misura del grado di transizione tra IPv4 e IPv6 della porzione di Internet intorno al nodo che effettua i rilevamenti

    • Disponendo un insieme di sonde in punti strategici della rete IPv6 è possibile ottenere informazioni sul grado di transizione ad IPv6 di Internet nel suo complesso


    Conclusione punti salienti

    Conclusione. Punti salienti

    • Realizzazione della rete mista IPv4/IPv6, in parte reale e in parte virtuale

    • Sviluppo degli strumenti di configurazione automatica della rete virtuale

    • Realizzazione su Linux del software nativo necessario per fornire via SNMP informazioni relative a IPv6

    • Sviluppo di metodologie di esplorazione di reti miste

    • Implementazione di un sistema di esplorazione e test dei risultati


  • Login