Routing Dinamico: Netkit vs Network Simulator

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Routing Dinamico: Netkit vs Network Simulator"

Transcript

1 Network Infrastructures A.A Routing Dinamico: Netkit vs Network Simulator Emulazione vs Simulazione Name of authors: Davide Iori, Davide Manzo

2 2 I. Indice: 1. Emulazione Virtualizzazione e macchine virtuali User Mode Linux Netkit 2. Simulazione Simulazione Reti Network Simulator 3. Emulazione e Simulazione: Differenze 4. Routing Routing Dinamico Routing Information Protocol(RIP) 5. Caso studio 5.1 Routing dinamico in Netkit e Network Simulator 6. Netkit & Network Simulator: Confronto e differenze 6.1 Differenze architetturali 6.2 Differenze implementative 6.3 Differenze d'utilizzo 6.4 Can do, Can't do 7. Conclusioni

3 3 1. EMULAZIONE In generale un emulatore duplica le funzioni di un determinato sistema su un secondo sistema differente dal primo, ed è un programma che permette l'esecuzione di software originariamente scritto per un ambiente (hardware o software) diverso da quello dove l'emulatore viene eseguito. Un programma scritto per computer con sistema operativo Windows ad esempio, non gira su un computer con sistema operativo Linux. In tali casi, si crea sulla macchina ospitante un emulatore che riproduce virtualmente l'ambiente che è stato previsto per l'esecuzione di quel programma. Esistono varie categorie di emulatori, così come esistono diversi metodi per emulare una piattaforma. È possibile emulare completamente un ambiente sia hardware sia software oppure soltanto uno dei due. 1.1 VIRTUALIZZAZIONE E MACCHINE VIRTUALI: Nel corso degli anni l informatica ha cercato di spingere molto sul concetto di virtualizzazione: Trasformare un singolo computer in una varietà di computer utilizzabili contemporaneamente e dotati di sistemi operativi. I software presenti sul mercato sono in grado di emulare una o più macchine virtuali usando cpu, memoria, hard disk sulla macchina reale. Una macchina virtuale è un programma che emula un calcolatore. I programmi applicativi vengono scritti in un linguaggio che viene compilato per questo calcolatore immaginario e, una volta compilati, vengono eseguiti sulla macchina virtuale. Java, ad esempio, fa uso della macchina virtuale: i programmi scritti in Java vengono infatti compilati nel linguaggio bytecode, che gira sulla Java Virtual Machine. Le virtual machine, quindi, si possono considerare un "PC nel PC". Ossia, mediante una virtual machine è possibile installare un secondo sistema operativo in una macchina virtuale e farci girare software in un ambiente considerato più "protetto" che non la macchina host vera e propria. Come si può immaginare, al di là della lentezza (comunque relativa e proporzionale alla potenza della macchina host), non vi è alcun limite. Questi sistemi a volte emulano anche parti di hardware, e altre volte si limitano a replicare l'hardware della macchina host. Tuttavia, non emulano mai macchine con architettura completamente diversa (a partire dalla CPU) e, quindi, non sono considerati emulatori nel senso stretto del termine. 1.2 USER MODE LINUX Implementazione OS per macchine virtuali: Un processo UML è chiamato virtual machines, mentre la Linux box che ospita un vm è chiamata host machine (host). Molte virtual machines possono essere eseguite contemporaneamente sullo stesso host. UML fornisce le stesse funzioni di network come una comune macchina Linux. Si possono, perciò, realizzare collegamenti di rete tra le varie virtual machines attive > UML mi permette di far partire sul mio host tante macchine virtuali in modo di virtualizzare tanti devices, emulando, così, una computer network. 1.3 NETKIT Netkit è un laboratorio virtuale con le funzionalità di UML, possiamo definirlo come un front- end a UML. Contiene un UML kernel che è usato come kernel per le virtual machines e un insieme predefinito di comandi per le macchine virtuali. Ogni macchina virtuale possiede:

4 4 - una console (terminal window) - una memoria ( presa in prestito dalla memoria dell' host) - un filesystem (memorizzato in un singolo file dell'host filesystem) - (una o più) network interfaces Domini di collisione: Insieme di nodi che concorrono per accedere allo stesso mezzo trasmissivo - Ogni network interface può essere connesa a un (virtual) collision domain - Ogni virtual collision domain può essere connesso a molte interfacce Progetto: L'approccio consigliato è quello di disegnare la topologia della rete che si vuole emulare. L'idea è di avere diverse virtual machines connesse a collision domain in modo da comunicare tra loro. Netkit permette di configurare una virtual machines in modo da giocare il ruolo di host, router o switch. Netkit fornisce agli utenti due insieme di comandi: v- prefixed commands (vcommands) l- prefixed commands (lcommands) vcommands > agiscono come strumenti a basso livello per avviare e configurare un'unica macchina virtualeact as low level tools for and starting up single virtual configuring machines lcommands > forniscono un ambiente easier- to- use per configurare un laboratorio complesso costituito da molte macchine virtuali

5 5 2. SIMULAZIONE Una simulazione è un modello della realtà che consente di valutare e prevedere lo svolgersi dinamico di una serie di eventi susseguenti all'imposizione di certe condizioni da parte dell'utente. Un buon esempio dell'utilità di usare i calcolatori per simulare può essere trovato nel campo di network traffic simulation. Scopo della simulazione: Analisi delle prestazioni Ottimizzazione Capacity planning Progetto: analisi di sistemi ipotetici SIMULAZIONE RETI I Sistemi di telecomunicazione sono complessi sistemi real- world, contenenti molti componenti differenti che interagiscono tra loro secondo complesse relazioni. La simulazione è un'approccio che può essere usato per modellare complessi sistemi stocastici, sistemi per il forecasting o per la valutazione delle prestazioni. Nell'ambito della ricerca delle comunicazioni e delle reti di calcolatori, la simulazione delle reti (network simulation) è una tecnica dove un programma modella il comportamento di una rete o per studiare le interazione tra differenti entità di rete (hosts/routers, data links, packet, etc,...) usando formule matematiche, o per catturare e riprodurre osservazioni da una rete di produzione. Una sola workstation è necessaria per eseguire una simulazione. Il simulatore permette di esaminare facilmente un'ampia varietà di scenari in un tempo relativamente breve. E' possibile simulare topologie di rete complesse, difficili e costose da realizzare. E' Facile testare l'impatto di modifiche nei protocolli simulati. 2.2 NETWORK SIMULATOR Cos'è Ns: Ns is a discrete event simulator targeted at networking research. Ns provides substantial support for simulation of TCP, routing, and multicast protocols over wired and wireless (local and satellite) networks. NS è nato con lo scopo di offrire un supporto per la ricerca in ambito networking: Progettazione di nuovi protocolli, studio del traffico,... Confronto tra le varie versioni di un protocollo È l'unico simulatore che implementa l'intera pila protocollare di una rete di telecomunicazioni complessa. Funzionalità: Reti cablate:»routing;»trasporto: TCP, UDP, SCTP

6 6»Sorgenti di traffico: web, ftp, cbr,..»discipline di coda: drop- tail, FQ, SFQ,... Reti wireless:»ad hoc routing e mobile IP»Reti satelittari Architettura: NS è un simulatore ad eventi discreti (le variabili di stato assumono valori discreti) con modello di tempo continuo (le variabili di stato sono sempre definite) e avanzamento del tempo event- driven. Il simulatore vede una lista di eventi. L'accesso ad essa è gestito da uno scheduler che: - Prende il primo evento della lista e lo esegue invocando l'handler associato, poi passa all'evento successivo della lista; - Ciascun evento si verifica in un istante di tempo simulato, ma impiega una quantità arbitraria di tempo reale; OTCL & C++: Ns usa due linguaggi: Un linguaggio interpretato per descriver la topologia della rete e la dinamica della simulazione. Si tratta di OTcl, una versione ad oggetti del linguaggio di scripting Tcl; Per contro il nucleo di NS è scritto in C++; Tale scelta non è stata casuale in quanto i progettisti hanno voluto separare la parte di controllo da quella dei dati. C++ per implementare il simulatore, ovvero i protolli di rete (MAC, network, transport, application); OTcl per eseguire i comandi dell'utente, ovvero per descrivere lo scenario simulativo: topologia, caratteristiche dei link, tipo di traffico, protolli supportati,... Il simulatore supporta una gerarchia di classi in C++ (gerarchia compilata), e una simile gerarchia di classi all'interno dell'interprete OTcl (gerrachia interpretata). Le due gerarchie sono strettamente legate una all'altra. C'è una corrispondenza 1- to- 1 tra una classe della gerarchia interpretata e una della gerarchia compilata. L'estensione, che fa da ponte tra le variabili e le funzioni OTcl e C++, è una libreria chiamata TclCL che crea una corrispondenza biunivoca tra la gerarchia delle classi da condividere tra C++ e OTcl.

7 7 FIGURA 1 C++ & OCTL

8 8 3. EMULAZIONE E SIMULAZIONE: DIFFERENZE Si tende a distinguere gli emulatori di un sistema dai simulatori del sistema stesso. Sebbene il risultato finale possa considerarsi, dagli utenti finali, lo stesso le differenze tra i due sono fondamentali. Tali differenze riguardano sostanzialmente tre aspetti primari: Architettura software Obiettivi Prestazioni e Accuratezza Architettura software: Un emulatore necessita sempre del software del sistema (ottenuto con il processo di dumping), limitandosi ad emulare l'hardware in modo da poter interpretare correttamente i file contenenti i dump del software che rimane scritto in un linguaggio comprensibile solo al sistema emulato e non a quello emulante. Un simulatore, invece, si prefigge di arrivare allo stesso risultato, riscrivendo però (in tutto o in parte) le routine del programma da simulare, in modo da renderlo comprensibile alla macchina su cui gira. Obiettivi: Un simulatore si prefigge di riprodurre le PERFORMANCE di una sistema reale (latency time, packet loss, bandwith,...) Un emulatore si prefigge di riprodurre le FUNZIONALITA' di un sistema reale (configurazione, architettura, protocolli) con un'attenzione limitata alle performance Prestazioni: Non essendoci alcuna emulazione dell'hardware (che prende diversi cicli- macchina), un simulatore è per forza di cosa più veloce, tuttavia è poco preciso nel riproporre fedelmente il software simulato. Quindi Simulatore: Veloce ma poco accurato Emulatore: Lento ma accurato

9 9 4. ROUTING Il routing è l'instradamento effettuato a livello di rete. Consente a due nodi A e B, non collegati direttamente, di comunicare tra loro mediante la collaborazione di altri nodi posti su un cammino nella rete che connette A e B. I router usano tabelle di instradamento i cui elementi sono blocchi di indirizzi IP contigui, che sono detti route o rotte. Metodi di popolamento delle tabelle di routing: routing statico (aggiornamento manuale) routing dinamico 4.1 ROUTING DINAMICO Le tabelle di instradamento vengono popolate da appositi protocolli di routing. I lavori svolti dai protocolli di routing dinamico sono: Comunicare con altri dispositivi per scambiarsi dati sulla rete. Gestire le tabelle di routing, ovvero, aggiungere le rote selezionando la migliore nel caso ce ne siano più di una per una stessa destinazione (questo viene fatto secondo una logica propria del protocollo, che è poi il motivo per cui viene usato quello piuttosto che un altro). Eliminare le rotte non più valide. Adattare dinamicamente la tabella di routing a eventuali cambi di topologia, siano essi provvisori (interfaccia che cade), o meno (aggiunta di un dispositivo, spostamento, rimozione). 4.2 ROUTING INFORMATION PROTOCOL (RIP) Appartiene alla categoria dei Distance Vector Protocol Ogni nodo scambia informazioni solo con i nodi adiacenti Utilizzato in reti di piccole- medie dimensioni Genera un traffico addizionale relativamente contenuto Applica l'algoritmo di Bellman- Ford Utilizza il conteggio del numero di salti (hop count) come metrica di routing Periodicamente i router adiacenti si scambiano i vettori per aggiornare le tabelle di routing

10 10 5. CASO STUDIO Oggetto dell'esperimento: Routing Information Protocol. Obiettivo dell'esperimento: Emulare e Simulare uno scenario comune nel quale si mostra il comportamento del protocollo RIP nel caso di modifiche nella topologia della rete. Software usato nell'esperimento: Network Simulator v. 2, Netkit v. 2.6 Topologia E stata presa in considerazione un infrastruttura di rete come quella in figura 2, con cinque router collegati tra loro, e due host, collegati il primo al router r1 tramite il dominio di collisione G e il secondo al router r4 tramite il dominio di collisione H. FIGURA 2 TOPOLOGIA Sono stati assegnati gli indirizzi IP ad ogni dispositivo e ad ogni dominio di collisione, come mostrato in figura 3. FIGURA 3 ASSEGNAZIONE INDIRIZZI IP ALLE INTERFACCE DI RETE E AI DOMINI DI COLLIZIONE Abbiamo utilizzato quest ultima topologia per configurare le virtual machines del Lab realizzato con Netkit, in particolare per ogni dispositivo emulato X viene scritto un file X.startup

11 11 con tutte le informazioni sulle interfacce di rete. Per esempio il router r1 avrà un file r1.startup con le seguenti informazioni: /sbin/ifconfig eth netmask broadcast up /sbin/ifconfig eth netmask broadcast up /sbin/ifconfig eth netmask broadcast up /sbin/ifconfig eth netmask broadcast up Per quanto riguarda la gestione della topologia in Network Simulator, i dispositivi sono indicati come nodi, e non c è differenziazione tra router, pc o switch, quindi abbiamo realizzato del codice da passare all interprete per realizzare la topologia con 7 nodi (0,1,2,3,4,5,6,7) collegati tra loro da archi che rappresentano i link, inoltre per ogni link abbiamo specificato il tipo (bidirezionale), la capacità e la gestione della coda (DropTail). In Figura 4 è mostrata la topologia mostrata in output dal simulatore, FIGURA 4 TOPOLOGIA NS e il codice scritto per realizzarla è il seguente: set n0 [$ns node] set n1 [$ns node] set n2 [$ns node] set n3 [$ns node] set n4 [$ns node] set n5 [$ns node] set n6 [$ns node] $ns duplex-link $n0 $n1 1Mb 10ms DropTail $ns duplex-link $n1 $n2 1Mb 10ms DropTail $ns duplex-link $n1 $n5 1Mb 10ms DropTail $ns duplex-link $n1 $n4 1Mb 10ms DropTail $ns duplex-link $n2 $n3 1Mb 10ms DropTail $ns duplex-link $n5 $n4 1Mb 10ms DropTail $ns duplex-link $n3 $n4 1Mb 10ms DropTail $ns duplex-link $n4 $n6 1Mb 10ms DropTail

12 12 Routing Dinamico in Netkit e Network Simulator Netkit, in quanto emulatore, ci permette di andare su ogni virtual machine e di poter interrogare la tabella di routing, per esempio andando sul router r1 e digitando sul terminale il commando route avremmo in output la routing table di r1 come mostrato in figura 5. FIGURA 5 TABELLA DI ROUTING DI "R1" Le informazioni gestite fino a questo punto sono insufficienti per poter realizzare un emulazione del routing dinamico, infatti per poter gestire un routing di questo tipo va attivato su ogni dispositivo router un demone che ci permetta di eseguire il protocollo RIP. Netkit utilizza un demone denominato Zebra che interagisce con vari protocolli (tra cui RIP) e col kernel della macchina virtuale. Questo demone deve essere avviato manualmente, andando sul terminale di ogni router e digitando /etc/init.d/zebra start. Una volta avviato il demone sui vari router si può notare che le tabelle di routing si sono aggiornate, infatti se ritorniamo sul router r1 avremo una tabella di routing come quella in figura 6. FIGURA 6 TABELLA DI ROUTING DI "R1" Dopo aver attivato il demone Zebra, e in particolare il protocollo RIP, possiamo spostarci su una virtual machine per sniffare, tramite tcpdump, i pacchetti RIP scambiati dai router, infatti inserendo il comando tcpdump i ethx v n s 1518 otterremo un output come quello in figura 7. Per quanto riguarda Network Simulator non abbiamo bisogno di attivare alcun demone, occorrerà soltanto inserire all interno del codice, la linea di comando $ns rtproto DV, che permette l avvio del protocollo RIP all interno del simulatore. Una volta avviato NS, notiamo, come mostrato in figura 8, che inizialmente c è uno scambio di pacchetti etichettati rtprotodv che stanno a rappresentare i pacchetti contenenti i Distance Vector scambiati tra i vari router.

13 13 FIGURA 7 PACCHETTI RIP VISTI DAL ROUTER "R1" FIGURA 8 SCAMBIO PACCHETTI RIP IN NS Comunicazione tra due host (pc1 & pc2) Se ora decidessimo di attivare uno scambio di dati tra il pc1 e il pc2 sia il simulatore che l emulatore ci rispondere allo stesso modo, ma mostrando informazioni diversi. Infatti entrambi indicherebbero il percorso seguito dai pacchetti secondo il protocollo RIP, ma mentre il primo mostra graficamente (figura 9) il percorso dei pacchetti sui vari rami del grafo rappresentante la topologia studiata, il secondo ci permetterebbe di andare su un dispositivo qualsiasi della rete per controllare il flusso dei pacchetti. In questo caso possiamo utilizzare il terminale del pc1 per tracciare i pacchetti inviati al pc2, come output otterremmo le interfacce di rete attraversate. NS oltre a mostrare graficamente il percorso dei pacchetti ci permette di ottenere informazioni statistiche e prestazionali sull intero sistema, che sarebbero impossibili da analizzare su infrastrutture di rete reali.

14 14 FIGURA 9 TRACCIA DEI PACCHETTI IN NS Guasti FIGURA 10 TRACCIA DEI PACCHETTI IN NETKIT Per verificare il comportamento del protocollo RIP abbiamo verificato vari casi di guasti all interno del sistema. Come primo esempio abbiamo considerato il guasto del link 1-4, ovvero il link che collega direttamente r1 a r4. Anche in questo caso la reazione protocollare è la stessa sia per il simulatore che per l emulatore: il traffico si interrompe momentaneamente, i router intercettano il guasto e si scambiano nuovamente i Distance Vector, dopodiché il traffico viene ristabilito sul cammino più breve. Come al solito abbiamo lo stesso risultato mostrato in forme diverse, NS ci mostrerà di nuovo graficamente il percorso dei dati, i nodi attraversati (0,1,5,4,6), mentre Netkit ci consente sia di controllare come al solito le interfacce di rete attraversate, sia di andare su ogni singolo router e verificare che le tabelle di router si sono andate aggiornando dinamicamente, permettendoci così di controllare l azione del protocollo RIP. FIGURA 11 GUASTO IN NS FIGURA 12 TRAFFICO RISTABILITO SU UN SECONDO CAMMINO (NS)

15 Network Infrastructures A.A FIGURA 13 TABELLA DI ROUTING DEL ROUTER "R1" DOPO IL GUASTO (NETKIT) FIGURA 14 INTERFACCE ATTRAVERSATE DAI PACCHETTI DOPO IL GUASTO (NETKIT) Ovviamente con un altro esempio di guasto su un link, vediamo che il protocollo gestisce il danno allo stesso modo, quindi il traffico cambierà nuovamente il suo cammino, i nodi/interfacce di rete attraversate cambieranno, i Distance Vector scambiati dopo il guasto porteranno con se informazioni aggiornate(figura 16), e andranno a modificare le tabelle di instradamento su ogni router. FIGURA 15 CAMMINO DOPO IL SECONDO GUASTO (NS)

16 16 FIGURA 16 "SNIFF" DEI PACCHETTI RIP SUL ROUTER "R1" (NETKIT) Un ultimo caso che abbiamo voluto analizzare è lo studio al simulatore e all emulatore al momento della riattivazione di un link, infatti se il collegamento 1-4 torna funzionante, i nostri strumenti ci permettono di verificare che il traffico viene ristabilito sul percorso più breve, una volta che tutte le informazioni vengono riaggiornate tramite il protocollo RIP. Anche in quest ultimo caso il simulatore ci permette di andare ad analizzare le statistiche sull intero sistema, mentre Netkit ci fornisce come al solito vari modi per interagire con le virtual machines e per verificare il comportamento della singola macchina emulata. FIGURA 17 LINK 1-4 RISTABILITO E TRAFFICO REINDIRIZZATO (NS) FIGURA 18 INTERFACCIA DI RETE DI NUOVO ATTIVA E FUNZIONANTE (NETKIT)

17 17 6. NETKIT & NS: CONFRONTO E DIFFERENZE L'esperimento effettuato ci ha permesso di individuare le caratteristiche fondamentali che distinguono il simulatore NS e l'emulatore Netkit. Tali differenze sono il frutto di una minuziosa analisi effettuata da due diverse prospettive: USER SIDE: Come l'user può interagire con il software Cosa l'user può e non può implementare usando una piattaforma software o l'altra SOFTWARE SIDE: Come vengono implementati gli elementi costitutivi di una rete di calcolatori Come funzionano e qual'è l'architettura alla base del simulatore e dell'emulatore 6.1 DIFFERENZE ARCHITETTURALI Network simulator è un simulatore orientato agli oggetti, scritto in C++, con un interprete Otcl come frontend. Il simulatore supporta una gerarchia di classi in C++ e una simile gerarchia all'interno dell'interprete. Le due gerarchie sono strettamente connesse una con l'altra; dalla prospettiva dell'utente, c'è una corrispondenza 1- to- 1 fra le classi della gerarchia compilata e quelle della gerarchia interpretata. Quindi, quello che a livello architetturale succede durante la simulazione è descritto dal seguente scenario generale: Lo script OTcl, scritto dall'utente, viene dato in pasto all'interprete OTcl, L'interprete si serve di una libreria chiamata TclCL che crea una corrispondenza biunivoca tra la gerarchia delle classi da condividere tra C++ e OTcl, L'interprete esegue la simulazione specificata nello script e visualizza i risultati. Nel nostro caso particolare, l'interprete analizza lo script topologia.tcl. Crea al suo interno la gerachia degli oggetti OTcl specificati nello script stesso. Ad esempio, quando l'interprete elabora il comando $ns rtproto DV crea l'oggetto Otcl corrispondente e viene stabilita la relazione biunivoca tra tale oggetto e l'oggetto C++ rtprotodv : è tale oggetto che ha al suo interno il codice che implementa le caratteristiche del protocollo da utilizzare nella simulazione. Viene eseguita la simulazione e visualizzati i risultati. FIGURA 19 STRUTTURA NS- 2

18 DIFFERENZE IMPLEMENTATIVE: Come vengono realizzati gli elementi della rete Ns implementa gli oggetti della rete sottoforma di classi C++; Sono presenti classi che implementano le caratteristiche di un nodo, di un link, di un agente, di un'applicazione... Netkit non implementa il concetto di oggetto. Con Netkit ogni host risiede su una virtual machine ed essa può emulare le funzioni di un PC, di uno Switch o di un Router. Come faccio a specificare un link? Non è possibile, non ha senso dire che ho una virtual machines che emula un link...esso non è un host! Al contrario Netkit implementa il concetto di dominio di collisione attraverso la definizione di opportune interfacce di rete: ad esempio, l'host1 e l'host2 sono virtualmente connessi allo stesso dominio di collisione attraverso le loro interfacce di rete. 6.3 DIFFERENZE D'UTILIZZO: Come l'utente interagisce col software Ns è un simulatore che prende in input uno script di simulazione e lo interpreta mostrandone i risultati dal punto di vista prestazionale. L'utente cosa deve fare? Scrivere lo script in linguaggio OTcl utilizzando le funzioni che, attraverso il core C++ di Ns, il simulatore fornisce. Netkit è un emulatore che si basa sul concetto di virtual machines. Per questo, non esiste il concetto di linguaggio di scripting con il quale l'utente può interfacciarsi con il software. Quello che deve fare l'utente è interagire con ogni macchina virtuale così come farebbe con l'host che la macchina stessa sta emulando. Esempio: link fra il nodo (1) e il nodo (2) della topologia va down: Ns: specificato nello scripting; Netkit: mandare down l'interfaccia di rete di un host attraverso il terminal di quella determinata vm; 6.4 CAN DO, CAN'T DO NS non distingue tra host e router. Ns permette di specificare i protocolli di routing e le politiche di coda che devono osservare i pkt's quando transitano sulla rete, ma non permette la configurazione di un router come in Netkit. Infatti, non possiede al suo interno un demone che via Telnet permette, ad esempio, la configurazione di un router: Ns non emula l'hw, non usa il concetto di virtual machine, ma di object oriented class. Con Netkit un host generico è una virtual machine che possiede il terminale di quell'oggetto: è come se avessi realmente a disposizione un router e vi accedessi per configurarlo tramite il demone zebra (è la virtual machine che emula su un host il router). In NS, ho soltanto del codice scritto in C++ che viene utilizzato, insieme allo script, dall'interprete per costruire la simulazione ed eseguirla: ho bisogno di un routing protocol dinamico? Ns mi mette a disposizione la classe.cc che mi implementa tal meccanismo e tramite l'interprete lo simulo. Data questa struttura, si può concludere che Ns viene utilizzato prevalentemente per: avere, con sufficiente accuratezza, delle risposte prestazionali riguardo esperimenti altrimenti irrealizzabili nella realtà; Realizzare simulazioni di topologie costose e innovative; L'implementazione in laboratorio di nuovi protocolli o modifiche di quelli esistenti a fini di ricerca; Simulare la ridistribuzione di risorse fra link e nodi con successive analisi del traffico e delle

19 19 prestazioni; Testing: non è concepibile andare a mettere le mani su strutture operative dato che ciò le renderebbe indisponibili all'utente; opportuni test e modifiche vengono eseguite in laboratorio simulando il funzionamento di tali strutture.

20 20 7. CONCLUSIONI: Emulare o Simulare? Dipende... Se si vogliono rilevare le PRESTAZIONI di protocolli esistenti, di nuovi protocolli, di particolari topologie, di cosa succede se viene assegnata la banda in un certo modo e via dicendo, allora usare Network Simulator. Se si vuole capire come realmente FUNZIONANO e configurano gli elementi della rete, usare Netkit. Attraverso l'emulatore posso eseguire gli stessi esperimenti che eseguirei con Network Simulator ma con un'approccio orientato alla funzionalità piuttosto che alle prestazioni. Per questo, vi sono scenari per i quali, la simulazione risulta avvantaggiata rispetto all'emulazione. Nel caso, ad esempio, della realizzazione di nuovi protocolli, con Network Simulator basta scrivere la classe C++ che specifica tale protocollo e inserirla nel core di Ns; con Netkit, il concetto di virtualizzazione implica che se voglio utilizzare un nuovo protocollo devo poterlo emulare: devo riscrivere il kernel! Si capisce come, in questo particolare esperimento, l'uso del simulatore sia da preferirsi a quello dell'emulatore. Infine, si ricordi che Netkit prevede l'utilizzo di una macchina virtuale per ogni elemento della rete che si vuole emulare. La macchina virtuale utilizza delle risorse che sono di proprietà della macchina ospitante e come è noto le risorse sono limitate: un host può ospitare non più di 200 virtual machines e ciò limita la dimensione degli scenari che si desidera emulare. Tali limitazioni, invece, non sono presenti con Network Simulator che non prevede l'uso di virtual machines, ma ogni elemento della rete è semplicemente un oggetto istanza della classe Nodo: ciò permette la simulazione di topologie che prevedono la presenza di milioni di nodi.

21 II. References [1-01] F.Maguolo Ns2: How to setup a simulation, Department of Information Engineering University of Padova. [1-02] S.Ivanov, A. Herms and G. Lukas Experimental Validation of the ns- 2 Wireless Model using Simulation, Emulation, and Real Network, [1-03] The Network Simulator ns- 2. [1-04] J. Banks, J. S. Carson, and B. L. Nelson, Discrete- Event System Simulation, 2nd ed. Prentice Hall, [1-05] Netkit: The poor man's system to experiment computer networking [1-06] Netkit- lab_ .pdf [1-07] Routing Information Protocol [1-08] Simulation [1-09] Emulation [1-10] Smith, James E.; Nair, Ravi (2005). "The Architecture of Virtual Machines". Computer (IEEE Computer Society) 38 (5): [1-11] BROADCASTING INTERNET DATAGRAMS IN THE PRESENCE OF SUBNETS, RFC 922, Jeffrey Mogul, October 1984 [1-12] Network Simulation [1-13] Network Emulation

Setup dell ambiente virtuale

Setup dell ambiente virtuale Setup dell ambiente virtuale 1.1 L immagine per le macchine virtuali Il file mininet-vm-x86 64.qcow è l immagine di una memoria di massa su cui è installato un sistema Linux 3.13 Ubuntu 14.04.1 LTS SMP

Dettagli

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

A intervalli regolari ogni router manda la sua tabella a tutti i vicini, e riceve quelle dei vicini. Algoritmi di routing dinamici (pag.89) UdA2_L5 Nelle moderne reti si usano algoritmi dinamici, che si adattano automaticamente ai cambiamenti della rete. Questi algoritmi non sono eseguiti solo all'avvio

Dettagli

Programmazione modulare 2014-2015

Programmazione modulare 2014-2015 Programmazione modulare 2014-2015 Indirizzo: Informatica Disciplina: SISTEMI E RETI Classe: 5 A e 5 B Docente: Buscemi Letizia Ore settimanali previste: 4 ore (2 teoria + 2 laboratorio) Totale ore previste:

Dettagli

3. Introduzione all'internetworking

3. Introduzione all'internetworking 3. Introduzione all'internetworking Abbiamo visto i dettagli di due reti di comunicazione: ma ce ne sono decine di tipo diverso! Occorre poter far comunicare calcolatori che si trovano su reti di tecnologia

Dettagli

Capitolo 3: Strutture dei sistemi operativi

Capitolo 3: Strutture dei sistemi operativi Capitolo 3: Strutture dei sistemi operativi Componenti del sistema Servizi di un sistema operativo Chiamate del sistema Programmi di sistema Struttura del sistema Macchine virtuali Progettazione e realizzazione

Dettagli

Introduzione alla Virtualizzazione

Introduzione alla Virtualizzazione Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse

Dettagli

Internet, così come ogni altra rete di calcolatori possiamo vederla suddivisa nei seguenti componenti:

Internet, così come ogni altra rete di calcolatori possiamo vederla suddivisa nei seguenti componenti: Pagina 1 di 8 Struttura di Internet ed il livello rete Indice Struttura delle reti Estremità della rete Il nucleo della rete Reti a commutazione di pacchetto e reti a commutazione di circuito Funzionalità

Dettagli

Reti di calcolatori. Lezione del 10 giugno 2004

Reti di calcolatori. Lezione del 10 giugno 2004 Reti di calcolatori Lezione del 10 giugno 2004 Internetworking I livelli 1 fisico e 2 data link si occupano della connessione di due host direttamente connessi su di una rete omogenea Non è possibile estendere

Dettagli

Reti di Telecomunicazione Lezione 6

Reti di Telecomunicazione Lezione 6 Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server

Dettagli

DEPLOY DI ZEROSHELL IN AMBIENTE VIRTUALE. Lorenzo Comi

DEPLOY DI ZEROSHELL IN AMBIENTE VIRTUALE. Lorenzo Comi DEPLOY DI ZEROSHELL IN AMBIENTE VIRTUALE Lorenzo Comi Introduzione: software ed hardware 2 Software per la virtualizzazione: VMware Fusion. 3 macchine virtuali Zeroshell 3.0.0 con profilo attivo. Macchina

Dettagli

Il Sistema Operativo (1)

Il Sistema Operativo (1) E il software fondamentale del computer, gestisce tutto il suo funzionamento e crea un interfaccia con l utente. Le sue funzioni principali sono: Il Sistema Operativo (1) La gestione dell unità centrale

Dettagli

Virtualizzazione e Macchine Virtuali

Virtualizzazione e Macchine Virtuali Virtualizzazione e Macchine Virtuali Gabriele D Angelo, Ludovico Gardenghi {gda, garden}@cs.unibo.it http://www.cs.unibo.it/~gdangelo/ http://www.cs.unibo.it/~gardengl/ Università di Bologna Corso di Laurea

Dettagli

Laboratorio di reti Relazione N 5 Gruppo 9. Vettorato Mattia Mesin Alberto

Laboratorio di reti Relazione N 5 Gruppo 9. Vettorato Mattia Mesin Alberto Laboratorio di reti Relazione N 5 Gruppo 9 Vettorato Mattia Mesin Alberto Virtual LAN Che cosa è una VLAN? Il termine Virtual LAN indica una serie di tecniche atte a separare un dominio di broadcast, di

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

Introduzione ai Sistemi Operativi

Introduzione ai Sistemi Operativi Introduzione ai Sistemi Operativi Sistema Operativo Software! Applicazioni! Sistema Operativo! È il livello di SW con cui! interagisce l utente! e comprende! programmi quali :! Compilatori! Editori di

Dettagli

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 3 a lezione a.a. 2009/2010 Francesco Fontanella

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 3 a lezione a.a. 2009/2010 Francesco Fontanella Corso di Sistemi di Elaborazione delle informazioni Reti di calcolatori 3 a lezione Francesco Fontanella Il pacchetto IP Il preambolo (header) IP è fatto in questo modo: Gli Indirizzi IP Ogni host e router

Dettagli

Gli indirizzi dell Internet Protocol. IP Address

Gli indirizzi dell Internet Protocol. IP Address Gli indirizzi dell Internet Protocol IP Address Il protocollo IP Prevalente è ormai diventato nell implementazione di reti di computer la tecnologia sintetizzata nei protocolli TCP- Ip IP è un protocollo

Dettagli

Cos'è una vlan. Da Wikipedia: Una LAN virtuale, comunemente

Cos'è una vlan. Da Wikipedia: Una LAN virtuale, comunemente Cos'è una vlan Da Wikipedia: Una LAN virtuale, comunemente detta VLAN, è un gruppo di host che comunicano tra di loro come se fossero collegati allo stesso cablaggio, a prescindere dalla loro posizione

Dettagli

Firewall e NAT A.A. 2005/2006. Walter Cerroni. Protezione di host: personal firewall

Firewall e NAT A.A. 2005/2006. Walter Cerroni. Protezione di host: personal firewall Firewall e NAT A.A. 2005/2006 Walter Cerroni Protezione di host: personal firewall Un firewall è un filtro software che serve a proteggersi da accessi indesiderati provenienti dall esterno della rete Può

Dettagli

Parte II: Reti di calcolatori Lezione 9

Parte II: Reti di calcolatori Lezione 9 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 9 Martedì 1-04-2014 1 Applicazioni P2P

Dettagli

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL

Sistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione

Dettagli

Siti interattivi e dinamici. in poche pagine

Siti interattivi e dinamici. in poche pagine Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata

Dettagli

Reti di Calcolatori. Il software

Reti di Calcolatori. Il software Reti di Calcolatori Il software Lo Stack Protocollare Application: supporta le applicazioni che usano la rete; Transport: trasferimento dati tra host; Network: instradamento (routing) di datagram dalla

Dettagli

Dispense corso Laboratorio di Internet

Dispense corso Laboratorio di Internet Universitá di Roma Sapienza Dipartimento di Ingegneria Elettronica e delle Telecomunicazioni Dispense corso Laboratorio di Internet Luca Chiaraviglio E-mail: {luca.chiaraviglio}@diet.uniroma1.it 3 marzo

Dettagli

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET)

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Ipotesi di partenza: concetti di base del networking Le ipotesi di partenza indispensabili per poter parlare di tecniche di accesso

Dettagli

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it

Programmazione II. Lezione 4. Daniele Sgandurra 30/09/2011. daniele.sgandurra@iit.cnr.it Programmazione II Lezione 4 Daniele Sgandurra daniele.sgandurra@iit.cnr.it 30/09/2011 1/46 Programmazione II Lezione 4 30/09/2011 Sommario 1 Esercitazione 2 Panoramica della Programmazione Ad Oggetti 3

Dettagli

Corso di Sistemi Operativi DEE - Politecnico di Bari. Windows vs LINUX. G. Piscitelli - M. Ruta. 1 di 20 Windows vs LINUX

Corso di Sistemi Operativi DEE - Politecnico di Bari. Windows vs LINUX. G. Piscitelli - M. Ruta. 1 di 20 Windows vs LINUX Windows vs LINUX 1 di 20 Windows vs LINUX In che termini ha senso un confronto? Un O.S. è condizionato dall architettura su cui gira Un O.S. è condizionato dalle applicazioni Difficile effettuare un rapporto

Dettagli

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

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete IP Analizziamo con sufficiente dettaglio il sistema denominato IP, usato per consentire a due computer mobili di spostarsi liberamente in altre reti pur mantenendo lo stesso indirizzo IP. In particolare,

Dettagli

Assegnazione di indirizzi IP dinamica (DHCP) 1

Assegnazione di indirizzi IP dinamica (DHCP) 1 Assegnazione di indirizzi IP dinamica (DHCP) 1 Esempio 1 L'esempio mostra una semplice rete con un solo switch centrale e due dispositivi (un PC ed un router) non aventi sulla loro interfaccia verso la

Dettagli

Elementi di Informatica e Programmazione

Elementi di Informatica e Programmazione Elementi di Informatica e Programmazione Le Reti di Calcolatori (parte 2) Corsi di Laurea in: Ingegneria Civile Ingegneria per l Ambiente e il Territorio Università degli Studi di Brescia Docente: Daniela

Dettagli

Parte II: Reti di calcolatori Lezione 21

Parte II: Reti di calcolatori Lezione 21 Università di Roma Tor Vergata Corso di Laurea triennale in Informatica Sistemi operativi e reti A.A. 2013-14 Pietro Frasca Parte II: Reti di calcolatori Lezione 21 Giovedì 15-05-2014 1 Protocolli a turno

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing

UDP. Livello di Trasporto. Demultiplexing dei Messaggi. Esempio di Demultiplexing a.a. 2002/03 Livello di Trasporto UDP Descrive la comunicazione tra due dispositivi Fornisce un meccanismo per il trasferimento di dati tra sistemi terminali (end user) Prof. Vincenzo Auletta auletta@dia.unisa.it

Dettagli

Informatica per la comunicazione" - lezione 9 -

Informatica per la comunicazione - lezione 9 - Informatica per la comunicazione" - lezione 9 - Protocolli di livello intermedio:" TCP/IP" IP: Internet Protocol" E il protocollo che viene seguito per trasmettere un pacchetto da un host a un altro, in

Dettagli

network subnet host Classe A poche reti di dimensioni molto grandi 127

network subnet host Classe A poche reti di dimensioni molto grandi 127 INDIRIZZAMENTO IP Gli indirizzi IP, che devono essere univoci sulla rete, sono lunghi 32 bit (quattro byte) e sono tradizionalmente visualizzati scrivendo i valori decimali di ciascun byte separati dal

Dettagli

Inizializzazione degli Host. BOOTP e DHCP

Inizializzazione degli Host. BOOTP e DHCP BOOTP e DHCP a.a. 2002/03 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/~auletta/ Università degli studi di Salerno Laurea e Diploma in Informatica 1 Inizializzazione degli Host Un

Dettagli

2. Strutture dei Sistemi Operativi

2. Strutture dei Sistemi Operativi 1 2. Strutture dei Sistemi Operativi Quali servizi un generico sistema operativo mette a disposizione degli utenti, e dei programmi che gli utenti vogliono eseguire? interfaccia col sistema operativo stesso

Dettagli

ARP/RARP. Problema della Risoluzione dell Indirizzo. Corrispondenza statica e dinamica. Scenari

ARP/RARP. Problema della Risoluzione dell Indirizzo. Corrispondenza statica e dinamica. Scenari ARP/RARP Università degli studi di Salerno Laurea in Informatica I semestre 03/04 Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ 2 Problema della Risoluzione dell

Dettagli

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella

Corso di Sistemi di Elaborazione delle informazioni. Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella Corso di Sistemi di Elaborazione delle informazioni Reti di calcolatori 2 a lezione a.a. 2009/2010 Francesco Fontanella Una definizione di Rete Una moderna rete di calcolatori può essere definita come:

Dettagli

Parte V. Sistemi Operativi & Reti. Sistemi Operativi. Sistemi Operativi

Parte V. Sistemi Operativi & Reti. Sistemi Operativi. Sistemi Operativi Parte V & Reti Sistema operativo: insieme di programmi che gestiscono l hardware Hardware: CPU Memoria RAM Memoria di massa (Hard Disk) Dispositivi di I/O Il sistema operativo rende disponibile anche il

Dettagli

Dal protocollo IP ai livelli superiori

Dal protocollo IP ai livelli superiori Dal protocollo IP ai livelli superiori Prof. Enrico Terrone A. S: 2008/09 Protocollo IP Abbiamo visto che il protocollo IP opera al livello di rete definendo indirizzi a 32 bit detti indirizzi IP che permettono

Dettagli

Indirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet

Indirizzi Internet e. I livelli di trasporto delle informazioni. Comunicazione e naming in Internet Indirizzi Internet e Protocolli I livelli di trasporto delle informazioni Comunicazione e naming in Internet Tre nuovi standard Sistema di indirizzamento delle risorse (URL) Linguaggio HTML Protocollo

Dettagli

Come si può notare ogni richiesta ICMP Echo Request va in timeout in

Come si può notare ogni richiesta ICMP Echo Request va in timeout in Comandi di rete Utility per la verifica del corretto funzionamento della rete: ICMP Nelle procedure viste nei paragrafi precedenti si fa riferimento ad alcuni comandi, come ping e telnet, per potere verificare

Dettagli

Virtualizzazione VirtualBox 4.1.2 su Host Windows

Virtualizzazione VirtualBox 4.1.2 su Host Windows Virtualizzazione VirtualBox 4.1.2 su Host Windows La virtualizzazione, quando riferita all informatica, consiste nella creazione di una versione virtuale di una risorsa normalmente fornita fisicamente.

Dettagli

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Redatto: Nucleo Gestione Innovazione e fornitori IT Versione: 1.0 Data emissione: 9/11/2006

Dettagli

C) supponendo che la scuola voglia collegarsi in modo sicuro con una sede remota, valutare le possibili soluzioni (non risolto)

C) supponendo che la scuola voglia collegarsi in modo sicuro con una sede remota, valutare le possibili soluzioni (non risolto) PROGETTO DI UNA SEMPLICE RETE Testo In una scuola media si vuole realizzare un laboratorio informatico con 12 stazioni di lavoro. Per tale scopo si decide di creare un unica rete locale che colleghi fra

Dettagli

Reti di Calcolatori. Master "Bio Info" Reti e Basi di Dati Lezione 4

Reti di Calcolatori. Master Bio Info Reti e Basi di Dati Lezione 4 Reti di Calcolatori Sommario Software di rete Livello Trasporto (TCP) Livello Rete (IP, Routing, ICMP) Livello di Collegamento (Data-Link) Software di rete Livello Rete (IP, Routing, ICMP) Se i protocolli

Dettagli

Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1)

Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1) Pagina 1 di 10 Architetture Web a tre livelli: CGI, SSI, ISAPI e codice mobile Architetture a 3 livelli (1) Nel corso della lezione precedente abbiamo analizzato le caratteristiche dell'architettura CGI.

Dettagli

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software:

SOFTWARE. È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: 1 SOFTWARE È l insieme delle istruzioni che è necessario fornire alla macchina per il suo funzionamento. Vi sono due categorie di software: SOFTWARE DI SISTEMA (o di base), che deve gestire le funzioni

Dettagli

Architetture software. Virtualizzazione

Architetture software. Virtualizzazione Sistemi Distribuiti Architetture software 1 Virtualizzazione 2 1 Virtualizzazione (motivazioni) Sullo stesso elaboratore possono essere eseguiti indipendentemente d t e simultaneamente t sistemi i operativi

Dettagli

Approccio stratificato

Approccio stratificato Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia

Dettagli

Obiettivi d esame HP ATA Networks

Obiettivi d esame HP ATA Networks Obiettivi d esame HP ATA Networks 1 Spiegare e riconoscere tecnologie di rete e le loro implicazioni per le esigenze del cliente. 1.1 Descrivere il modello OSI. 1.1.1 Identificare ogni livello e descrivere

Dettagli

Linux Network Testing

Linux Network Testing Introduzione agli strumenti per il testing di rete su Linux 6, 13 Novembre 2007 Sommario 1 Introduzione Panoramica sugli strumenti di misura 2 I tool di base per l amministrazione di rete Configurare le

Dettagli

A cura di: Dott. Ing. Elisabetta Visciotti. e.visciotti@gmail.com

A cura di: Dott. Ing. Elisabetta Visciotti. e.visciotti@gmail.com A cura di: Dott. Ing. Elisabetta Visciotti e.visciotti@gmail.com Il termine generico rete (network) definisce un insieme di entità (oggetti, persone, ecc.) interconnesse le une alle altre. Una rete permette

Dettagli

Linux User Group Cremona CORSO RETI

Linux User Group Cremona CORSO RETI Linux User Group Cremona CORSO RETI Cos'è una rete informatica Una rete di calcolatori, in informatica e telecomunicazioni, è un sistema o un particolare tipo di rete di telecomunicazioni che permette

Dettagli

I protocolli di routing dell architettura TCP/IP

I protocolli di routing dell architettura TCP/IP I protocolli di routing dell architettura TCP/IP Silvano GAI sgai@cisco.com Mario Baldi Politecnico di Torino mario.baldi@polito.it staff.polito.it/mario.baldi routing-ip - 1 Copyright: si veda nota a

Dettagli

8. IP: Instradamento dei datagrammi

8. IP: Instradamento dei datagrammi 8. IP: Instradamento dei datagrammi 8.1. Introduzione L'instradamento è la terza funzione fondamentale di un servizio di comunicazione di livello rete 8.2. L'instradamento in una internet Instradamento

Dettagli

Livello di Rete. Gaia Maselli maselli@di.uniroma1.it

Livello di Rete. Gaia Maselli maselli@di.uniroma1.it Livello di Rete Gaia Maselli maselli@di.uniroma1.it Queste slide sono un adattamento delle slide fornite dal libro di testo e pertanto protette da copyright. All material copyright 1996-2007 J.F Kurose

Dettagli

Il Routing Gli scenari possibili sono due 1. rimessa diretta rimessa indiretta

Il Routing Gli scenari possibili sono due 1. rimessa diretta rimessa indiretta Il Routing In un sistema packets switching quale il TCP/IP, il routing rappresenta il processo di scelta del percorso su cui inoltrare i pacchetti ed il router è un computer che effettua tale instradamento.

Dettagli

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI Confronto tra ISO-OSI e TCP/IP, con approfondimento di quest ultimo e del livello di trasporto in cui agiscono i SOCKET. TCP/IP

Dettagli

Reti e Domini Windows 2000. Corso di Amministrazione di Reti A.A. 2002/2003

Reti e Domini Windows 2000. Corso di Amministrazione di Reti A.A. 2002/2003 Reti e Domini Windows 2000 Corso di Amministrazione di Reti A.A. 2002/2003 Materiale preparato utilizzando dove possibile materiale AIPA http://www.aipa.it/attivita[2/formazione[6/corsi[2/materiali/reti%20di%20calcolatori/welcome.htm

Dettagli

Il modello TCP/IP. Sommario

Il modello TCP/IP. Sommario Il modello TCP/IP Il protocollo IP Mario Cannataro Sommario Introduzione al modello TCP/IP Richiami al modello ISO/OSI Struttura del modello TCP/IP Il protocollo IP Indirizzi IP Concetto di sottorete Struttura

Dettagli

CdL MAGISTRALE in INFORMATICA

CdL MAGISTRALE in INFORMATICA 05/11/14 CdL MAGISTRALE in INFORMATICA A.A. 2014-2015 corso di SISTEMI DISTRIBUITI 7. I processi : il naming Prof. S.Pizzutilo Il naming dei processi Nome = stringa di bit o di caratteri utilizzata per

Dettagli

CAPITOLO 1 I SISTEMI OPERATIVI

CAPITOLO 1 I SISTEMI OPERATIVI CAPITOLO 1 I SISTEMI OPERATIVI Introduzione ai sistemi operativi pag. 3 La shell pag. 3 Tipi di sistemi operativi pag. 4 I servizi del sistema operativo pag. 4 La gestione dei file e il file system Il

Dettagli

Università degli Studi di Napoli Federico II

Università degli Studi di Napoli Federico II Università degli Studi di Napoli Federico II Ottimizzazione del traffico P2P nelle Wireless Community Network Stefano Avallone, Roberto Canonico, Giorgio Ventre, Francesco Paolo D'Elia Conferenza GARR

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

Introduzione alla rete Internet

Introduzione alla rete Internet Introduzione alla rete Internet AA 2004-2005 Reti e Sistemi Telematici 1 Internet: nomenclatura Host: calcolatore collegato a Internet ogni host può essere client e/o server a livello applicazione Router:

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica CL3 - Biotecnologie Orientarsi nel Web Prof. Mauro Giacomini Dott. Josiane Tcheuko Informatica - 2006-2007 1 Obiettivi Internet e WWW Usare ed impostare il browser Navigare in internet

Dettagli

Reti di Calcolatori. Lezione 2

Reti di Calcolatori. Lezione 2 Reti di Calcolatori Lezione 2 Una definizione di Rete Una moderna rete di calcolatori può essere definita come: UN INSIEME INTERCONNESSO DI CALCOLATORI AUTONOMI Tipi di Rete Le reti vengono classificate

Dettagli

Un sistema per l'emulazione delle reti su cluster di macchine virtuali Anno Accademico 2007/2008

Un sistema per l'emulazione delle reti su cluster di macchine virtuali Anno Accademico 2007/2008 tesi di laurea Un sistema per l'emulazione delle reti su cluster di macchine virtuali Anno Accademico 2007/2008 relatore Ch.mo prof. Roberto Canonico correlatore ing. Pasquale Di Gennaro candidato Roberto

Dettagli

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base

Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Sistema operativo Definizione Parte del software che gestisce I programmi applicativi L interfaccia tra il calcolatore e i programmi applicativi Le funzionalità di base Architettura a strati di un calcolatore

Dettagli

Reti di Telecomunicazioni LB Introduzione al corso

Reti di Telecomunicazioni LB Introduzione al corso Reti di Telecomunicazioni LB Introduzione al corso A.A. 2005/2006 Walter Cerroni Il corso Seguito di Reti di Telecomunicazioni LA Approfondimento sui protocolli di Internet TCP/IP, protocolli di routing,

Dettagli

Introduzione. Livello applicativo Principi delle applicazioni di rete. Stack protocollare Gerarchia di protocolli Servizi e primitive di servizio 2-1

Introduzione. Livello applicativo Principi delle applicazioni di rete. Stack protocollare Gerarchia di protocolli Servizi e primitive di servizio 2-1 Introduzione Stack protocollare Gerarchia di protocolli Servizi e primitive di servizio Livello applicativo Principi delle applicazioni di rete 2-1 Pila di protocolli Internet Software applicazione: di

Dettagli

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione

Lezione 4 La Struttura dei Sistemi Operativi. Introduzione Lezione 4 La Struttura dei Sistemi Operativi Introduzione Funzionamento di un SO La Struttura di un SO Sistemi Operativi con Struttura Monolitica Progettazione a Livelli di un SO 4.2 1 Introduzione (cont.)

Dettagli

L Informatica al Vostro Servizio

L Informatica al Vostro Servizio L Informatica al Vostro Servizio Faticoni S.p.A. è Certificata UNI ENI ISO 9001:2008 N. CERT-02228-97-AQ-MILSINCERT per Progettazione, Realizzazione, Manutenzione di soluzioni Hardware e Software Soluzioni

Dettagli

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori a.a. 2009/10

Corso di Laurea in Ingegneria Informatica. Corso di Reti di Calcolatori a.a. 2009/10 Corso di Laurea in Ingegneria Informatica Corso di Reti di Calcolatori a.a. 2009/10 Roberto Canonico (roberto.canonico@unina.it) Antonio Pescapè (pescape@unina.it) ICMP ARP RARP DHCP - NAT ICMP (Internet

Dettagli

SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet )

SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet ) PARTE 2 SUITE PROTOCOLLI TCP/IP ( I protocolli di Internet ) Parte 2 Modulo 1: Stack TCP/IP TCP/IP Protocol Stack (standard de facto) Basato su 5 livelli invece che sui 7 dello stack ISO/OSI Application

Dettagli

Programmazione in Rete

Programmazione in Rete Programmazione in Rete a.a. 2005/2006 http://www.di.uniba.it/~lisi/courses/prog-rete/prog-rete0506.htm dott.ssa Francesca A. Lisi lisi@di.uniba.it Orario di ricevimento: mercoledì ore 10-12 Sommario della

Dettagli

Reti di Calcolatori 18-06-2013

Reti di Calcolatori 18-06-2013 1. Applicazioni di rete [3 pts] Si descrivano, relativamente al sistema DNS: Compito di Reti di Calcolatori 18-06-2013 a) i motivi per i quali viene usato; b) l architettura generale; c) le modalità di

Dettagli

Corso Web programming

Corso Web programming Corso Web programming Modulo T3 A1 Modelli di programmazione 1 Prerequisiti Concetto di rete Processi e thread Concetti generali sui database 2 1 Introduzione Un particolare ambito della programmazione

Dettagli

INFORMATICA LIVELLO BASE

INFORMATICA LIVELLO BASE INFORMATICA LIVELLO BASE INTRODUZIONE 3 Fase Che cos'è una rete? Quali sono i vantaggi di avere una Rete? I componenti di una Rete Cosa sono gi Gli Hub e gli Switch I Modem e i Router Che cos è un Firewall

Dettagli

Sme.UP Web Application

Sme.UP Web Application Sme.UP Web Application Web Application Web.UP Una interfaccia web per i vostri dati gestionali Il modulo applicativo Web.UP fornisce al progettista di siti Internet una serie di potenti strumenti per l'integrazione

Dettagli

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

Comunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione I semestre 04/05 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 1

Dettagli

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB.

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. SISTEMI E RETI Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. CRITTOGRAFIA La crittografia è una tecnica che si occupa della scrittura segreta in codice o cifrata

Dettagli

Modulo 8. Architetture per reti sicure Terminologia

Modulo 8. Architetture per reti sicure Terminologia Pagina 1 di 7 Architetture per reti sicure Terminologia Non esiste una terminologia completa e consistente per le architetture e componenti di firewall. Per quanto riguarda i firewall sicuramente si può

Dettagli

Appunti di informatica. Lezione 6 anno accademico 2015-2016 Mario Verdicchio

Appunti di informatica. Lezione 6 anno accademico 2015-2016 Mario Verdicchio Appunti di informatica Lezione 6 anno accademico 2015-2016 Mario Verdicchio RAM disco La RAM è basata su dispositivi elettronici, che funzionano con tempi molto rapidi, ma che necessitano di alimentazione

Dettagli

TECNICO SUPERIORE PER LE TELECOMUNICAZIONI

TECNICO SUPERIORE PER LE TELECOMUNICAZIONI ISTRUZIONE E FORMAZIONE TECNICA SUPERIORE SETTORE I.C.T. Information and Communication Technology TECNICO SUPERIORE PER LE TELECOMUNICAZIONI STANDARD MINIMI DELLE COMPETENZE TECNICO PROFESSIONALI DESCRIZIONE

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

Fondamenti di routing (pag.34)

Fondamenti di routing (pag.34) Fondamenti di routing (pag.34) UdA2L1 Il livello di rete (Network layer) è il livello 3 della pila ISO/OSI. Questo livello riceve datagrammi (pacchetti) dal livello di trasporto e forma pacchetti che vengono

Dettagli

Architettura di un sistema operativo

Architettura di un sistema operativo Architettura di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Struttura di un S.O. Sistemi monolitici Sistemi a struttura semplice Sistemi a livelli Virtual Machine Sistemi

Dettagli

Introduzione. Sommario: Obiettivo:

Introduzione. Sommario: Obiettivo: Introduzione Obiettivo: Introduzione alle reti di telecomunicazioni approccio: descrittivo uso di Internet come esempio Sommario: Introduzione Cos è Internet Cos è un protocollo? network edge network core

Dettagli

12.5 UDP (User Datagram Protocol)

12.5 UDP (User Datagram Protocol) CAPITOLO 12. SUITE DI PROTOCOLLI TCP/IP 88 12.5 UDP (User Datagram Protocol) L UDP (User Datagram Protocol) é uno dei due protocolli del livello di trasporto. Come l IP, é un protocollo inaffidabile, che

Dettagli

Laboratorio di Networking Operating Systems. Lezione 2 Principali strumenti di diagnostica

Laboratorio di Networking Operating Systems. Lezione 2 Principali strumenti di diagnostica Dipartimento di Informatica - Università di Verona Laboratorio di Networking Operating Systems Lezione 2 Principali strumenti di diagnostica Master in progettazione e gestione di sistemi di rete edizione

Dettagli

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011

Fondamenti di Informatica 1. Prof. B.Buttarazzi A.A. 2010/2011 Fondamenti di Informatica 1 Prof. B.Buttarazzi A.A. 2010/2011 Sommario Installazione SOFTWARE JDK ECLIPSE 03/03/2011 2 ALGORITMI E PROGRAMMI PROBLEMA ALGORITMO PROGRAMMA metodo risolutivo linguaggio di

Dettagli

Software. Definizione, tipologie, progettazione

Software. Definizione, tipologie, progettazione Software Definizione, tipologie, progettazione Definizione di software Dopo l hardware analizziamo l altra componente fondamentale di un sistema di elaborazione. La macchina come insieme di componenti

Dettagli

SISTEMI OPERATIVI DISTRIBUITI

SISTEMI OPERATIVI DISTRIBUITI SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching

Dettagli

RETI INFORMATICHE Client-Server e reti paritetiche

RETI INFORMATICHE Client-Server e reti paritetiche RETI INFORMATICHE Client-Server e reti paritetiche Le reti consentono: La condivisione di risorse software e dati a distanza La condivisione di risorse hardware e dispositivi (stampanti, hard disk, modem,

Dettagli

1.2.1.1 DEFINIZIONE DI SOFTWARE

1.2.1.1 DEFINIZIONE DI SOFTWARE Software 1.2 1.2.1.1 DEFINIZIONE DI SOFTWARE Il computer non è in grado di svolgere alcun compito autonomamente Esso può eseguire svariati compiti soltanto se viene opportunamente istruito Ciò avviene

Dettagli

5. Traduzione degli indirizzi di rete in indirizzi fisici: ARP

5. Traduzione degli indirizzi di rete in indirizzi fisici: ARP 5. Traduzione degli indirizzi di rete in indirizzi fisici: ARP 5.1. Introduzione Due macchine si parlano solo se conoscono l'indirizzo fisico di sottorete Due applicazioni si parlano solo se conoscono

Dettagli