RETI DI CALCOLATORI E INTERNETWORKING “ RETI DI CALCOLATORI E INTERNETWORKING ” INDICE RETI DI CALCOLATORI .......................................................................................................................... 4 1. RETI ANALOGICHE E RETI DIGITALI.............................................................................................. 4 1.1. CODIFICA ANALOGICA E DIGITALE DI UN SEGNALE CON INFORMAZIONE .................... 4 1.2. MEZZI TRASMISSIVI ................................................................................................................ 5 2. TIPI DI COMMUTAZIONE ................................................................................................................. 7 2.1. COMMUTAZIONE DI CIRCUITO .............................................................................................. 7 2.2. COMMUTAZIONE DI MESSAGGIO ......................................................................................... 8 2.3. COMMUTAZIONE DI PACCHETTO ......................................................................................... 9 2.4. VANTAGGI E SVANTAGGI RELATIVI DEI TIPI DI COMMUTAZIONE ................................... 9 3. IL MODELLO ARCHITETTURALE OSI ........................................................................................... 11 3.1. I COMPITI DI BASE DEI SETTE STRATI FUNZIONALI ........................................................ 13 3.2. IL MODELLO DI RIFERIMENTO OSI ..................................................................................... 14 3.3. PROTOCOLLI STANDARD ISO ............................................................................................. 21 3.3. PROTOCOLLI NON ISO IN RELAZIONE AL MODELLO OSI ................................................ 22 4. I PROTOCOLLI TCP/IP ................................................................................................................... 24 4.1. IL MODELLO SOFTWARE DoD ............................................................................................. 24 4.2. GLI RFC E GLI STANDARD ................................................................................................... 30 4.3. INDIRIZZI IP ............................................................................................................................ 31 4.4. TESTATA IP ............................................................................................................................ 34 5. RETI LOCALI E RETI GEOGRAFICHE ........................................................................................... 41 5.1. DEFINIZIONE DI LAN MAN E WAN ....................................................................................... 41 5.2. TOPOLOGIE DI RETI LOCALI ................................................................................................ 42 6.3.TOPOLOGIE DI RETI GEOGRAFICHE ................................................................................... 44 5.4. PROBLEMI DELLA CODIFICA E SOLUZIONI........................................................................ 45 6. STRUMENTI DI SMISTAMENTO DEI PACCHETTI ....................................................................... 47 6.1. REPEATER ............................................................................................................................. 47 6.2. HUB ............................................................................................................................. 48 6.3. BRIDGE ............................................................................................................................. 49 6.4. ROUTER ............................................................................................................................. 51 6.5 GATEWAY O CONVERTITORI DI PROTOCOLLO ................................................................. 52 6.6 FIREWALL ............................................................................................................................. 53 Pagina 2 “ RETI DI CALCOLATORI E INTERNETWORKING ” RETI COMMERCIALI.............................................................................................................................. 57 1. RETI ANALOGICHE (CDA) E NUMERICHE (CDN) ........................................................................ 57 2. RETI DIGITALI A SERVIZI INTEGRATI (ISDN) .............................................................................. 59 SMDS E X.25 .......................................................................................................................................... 64 1. SMDS - SWITCHED MULTIMEGABIT DATA SERVICE ............................................................................. 64 2. RETI X.25 ......................................................................................................................................... 68 RETI FRAME RELAY ............................................................................................................................. 70 1. LA TECNICA FRAME RELAY ......................................................................................................... 70 2. ARCHITETTURA DEL PROTOCOLLO ........................................................................................... 71 3. CONTROLLO CHIAMATA .............................................................................................................. 75 4. LAPF................................................................................................................................................ 77 ATM ASYNCHRONOUS TRANSFER MODE ........................................................................................ 80 1. LA TECNICA ATM ........................................................................................................................... 80 2. LA SEGNALAZIONE NELLE RETI ATM (ATM VS. SVC) ................................................................ 87 ADSL ASYMMETRIC DIGITAL SUBSCRIBER LINE ............................................................................ 91 1. L’ACCESSO DIGITALE AD ALTA VELOCITA’ ATTRAVERSO IL DOPPINO TELEFONICO ......... 91 2. STANDARD E ASSOCIAZIONI ....................................................................................................... 92 3. CODIFICA DI TRASMISSIONE “DMT” CONTRO “CAP” ................................................................ 93 4. ATM SU ADSL ................................................................................................................................. 94 5. TESTING DELLA TECNOLOGIA .................................................................................................... 95 6. E’ARRIVATO IL MOMENTO DI ATM .............................................................................................. 97 INTERNETWORKING ............................................................................................................................. 99 1. CIDR – ROUTING INTERDOMINIO SENZA CLASSE .................................................................... 99 3. TUNNELLING ................................................................................................................................ 107 4. ROUTING ALL’INTERNO DI INTERNET ...................................................................................... 108 5. IL PROTOCOLLO DI ROUTING TRA GATEWAY INTERNI: OSPF .............................................. 111 6. IL PROTOCOLLO DI ROUTING TRA GATEWAY ESTERNI: BGP ............................................... 118 7. INTERNET IN MULTICASTING .................................................................................................... 121 BIBLIOGRAFIA..................................................................................................................................... 123 Pagina 3 “ RETI DI CALCOLATORI E INTERNETWORKING ” RETI DI CALCOLATORI 1. RETI ANALOGICHE E RETI DIGITALI 1.1. CODIFICA ANALOGICA E DIGITALE DI UN SEGNALE CON INFORMAZIONE Pagina 4 “ RETI DI CALCOLATORI E INTERNETWORKING ” 1.2. MEZZI TRASMISSIVI Si identificano tre classi di mezzi trasmissivi. I mezzi elettrici sono i più tradizionali. Per la codifica possono usare: livelli discreti variazioni di livello di proprietà fisiche elettriche del mezzo impiegato, come: tensione corrente impedenza Il trasporto lungo un mezzo trasmissivo della forma di energia che in qualche modo codifica l'informazione si dice il segnale. Un segnale incontra delle modifiche durante la sua propagazione: attenuazione: diminuzione del valore della proprietà (per es. tensione) che codifica il segnale distorsione: variazione della forma funzionale della proprietà (forma d'onda) rumore: sovrapposizione al segnale di simili pseudosegnali provenienti dall'esterno e non voluti nella nostra comunicazione Le modifiche dipendono dal tipo di codifica usata. Pagina 5 “ RETI DI CALCOLATORI E INTERNETWORKING ” Per un segnale codificato con variazioni di tensione, l'attenuazione è spesso funzione della frequenza e vi sono valori limite minimo e massimo di frequenza oltre i quali il segnale e' praticamente nullo, che definiscono la banda passante del segnale. Il rumore ha caratteristiche statistiche. Lo si descrive solitamente dal rapporto segnale/rumore. Un tipo particolare di rumore è la diafonia originata da un altro segnale in un mezzo trasmissivo vicino al nostro. La difesa dal rumore avviene tramite: schermatura del mezzo trasmissivo uso di tipi di codifica per i quali il rumore e' inferiore ridondanza delle informazioni nel segnale Il livello di un segnale viene misurato in modo relativo, usando come unita' il decibel, o rapporto logaritmico. Si definisce perciò: Attenuazione: db= 20 log (Vin /Vout) [misurato in decibel] il rapporto tra il segnale in ingresso e quello in uscita in un dispositivo. E per il rapporto segnale/rumore (Signal to Noise ratio): S/N db= 20 log (VS/ VN) . Pagina 6 “ RETI DI CALCOLATORI E INTERNETWORKING ” 2. TIPI DI COMMUTAZIONE 2.1. COMMUTAZIONE DI CIRCUITO Viene stabilito un collegamento dedicato tra i due nodi terminali comunicanti: il circuito. Questo collegamento è dato spesso da un cavo elettrico, per es. un doppino telefonico, completamente dedicato, oppure da una banda di frequenze completamente dedicata. Nessun'altra istanza di comunicazione può esistere sullo stesso mezzo trasmissivo di una prima comunicazione e usare lo stesso circuito fisico. Il flusso di dati tra i due nodi comunicanti è sincrono. Pagina 7 “ RETI DI CALCOLATORI E INTERNETWORKING ” 2.2. COMMUTAZIONE DI MESSAGGIO Il messaggio che deve transitare tra due 1DTE remoti viene recapitato a salti discreti. Dapprima il messaggio transita per intero tra il DTE mittente ed un 2DCE intermedio: viene stabilita una connessione a commutazione di circuito, locale, ed il DCE ricevente immagazzina il messaggio in memoria locale. Quindi il messaggio viene recapitato tra il primo DCE ed il secondo DCE, stabilendo tra essi un circuito. Il procedimento viene ripetuto a salti finché il messaggio arriva al DTE di destinazione. Il flusso di dati tra i due nodi terminali comunicanti è asincrono. A seconda della velocità dei DCE intermedi e del numero di salti discreti può intercorrere un tempo di trasmissione piccolissimo (millisecondi) o elevato (giorni). Il messaggio che deve transitare tra due DTE remoti viene recapitato a salti discreti. Dapprima il messaggio transita per intero tra il DTE mittente ed un DCE intermedio: viene stabilita una connessione a commutazione di circuito, locale, ed il DCE ricevente immagazzina il messaggio in memoria locale. Quindi il messaggio viene recapitato tra il primo DCE ed il secondo DCE, stabilendo tra essi un circuito. Il procedimento viene ripetuto a salti finché il messaggio arriva al DTE di destinazione. Il flusso di dati tra i due nodi terminali comunicanti è asincrono. A seconda della velocità dei DCE intermedi e del numero di salti discreti può intercorrere un tempo di trasmissione piccolissimo (millisecondi) o elevato (giorni). 1 DTE: Data Terminal Equipment 2 DCE: Data Circuit Equipment Pagina 8 “ RETI DI CALCOLATORI E INTERNETWORKING ” 2.3. COMMUTAZIONE DI PACCHETTO Il messaggio in transito tra due nodi terminali viene suddiviso in unità più piccole, ciascuna di dimensioni fisse, dette in generale pacchetti. I pacchetti vengono inviati uno ad uno alla rete e smistati ed instradati individualmente dai DCE intermedi. A seconda del tipo di rete e di servizio offerto i pacchetti possono tutti seguire lo stesso percorso di rete o essere smistati ciascuno su un percorso diverso. La rete può combinare più pacchetti di istanze di comunicazione diverse sullo stesso segmento di rete tra due DCE adiacenti, secondo vari metodi (multiplessazione a suddivisione di tempo o di frequenza). I pacchetti giunti al nodo DTE destinatario devono venire ricombinati a ricomporre il messaggio originale. 2.4. VANTAGGI COMMUTAZIONE E SVANTAGGI RELATIVI DEI TIPI DI La commutazione di circuito viene considerata ormai datata ed usata solo in parte della rete telefonica tradizionale. La commutazione di messaggio veniva usata in un passato recente in reti basate sul protocollo UNIX UUCP (Unix to Unix Copy), per lo smistamento della posta elettronica e dei messaggi USENET. Il suo vantaggio relativo era l'uso di tecnologia a basso Pagina 9 “ RETI DI CALCOLATORI E INTERNETWORKING ” costo, modem e linee telefoniche locali, con l'intelligenza necessaria al recapito del messaggio fornita dal sistema operativo. UNIX veniva programmato, in caso di impossibilità temporanea a stabilire un circuito col DCE successivo, a riprovare più volte a intervalli regolari. Le reti basate su commutazione di messaggio richiedono che la natura dei messaggi interscambiati sia asincrona, quindi sono ideali per il trasferimento files in automatico, ma non per applicativi di rete interattivi. E' richiesto inoltre che i nodi intermedi siano intelligenti, cooperativi e possiedano una elevata capacità di immagazzinamento dei dati in transito. La commutazione di pacchetto è la scelta di gran lunga preponderante al giorno d'oggi per qualsiasi trasferimento dati. I protocolli di commutazione a pacchetto possono essere di complessità anche notevole. In generale una rete qualunque, ed in particolare a commutazione di pacchetto, affronta in modo più o meno sentito le seguenti problematiche di qualità del servizio: affidabilità: i dati inviati vengono sempre recapitati e sono liberi da errori velocità privatezza: i dati non possono venire intercettati e letti in transito autorevolezza: i dati ricevuti provengono effettivamente dal mittente certificato e non sono dei falsi disponibilità: la rete è funzionale in qualsiasi istante i nodi terminali intendano scambiarsi dati E' da notare che nessuna rete esistente garantisce una elevata qualità in tutte le categorie di servizio. Il software di comunicazione che usa i servizi di rete deve essere al corrente delle limitazioni della rete e comportarsi di conseguenza. Pagina 10 “ RETI DI CALCOLATORI E INTERNETWORKING ” 3. IL MODELLO ARCHITETTURALE OSI Il collegamento e la cooperazione fra sistemi informatici che utilizzano sistemi operativi incompatibili tra loro è una delle più interessanti e delle più sentite esigenze dei mercato attuale. I sistemi capaci di tale elaborazione cooperativa sono detti aperti quando permettono le comunicazioni in accordo con gli standard specificati nel modello generale Open System Interconnection (OSI). Questi standard sono stati definiti da una speciale commissione dell'International Standard Organization (ISO), l'agenzia dell'ONU responsabile degli standard internazionali, inclusi quelli delle comunicazioni. Questi standard sono nati in risposta a una diffusa esigenza dì interconnettere fra loro sistemi incompatibili, sia tramite reti geografiche (WAN o Wide Area Network, rete a lunga distanza), sia per mezzo di reti locali (LAN o Local Area Network. rete in area locale), oppure utilizzando anche reti miste. La difficoltà di fondo consiste nel far comunicare fra loro due processi che usano internamente regole e tecniche diverse. Il comitato ISO ha stabilito le regole e le opzioni per tali interazioni, definendo un modello i riferimento che suddivide le necessarie funzioni logiche in sette diversi strati funzionali (chiamati anche livelli, o layer), di cui ognuno è responsabile di un certo numero di funzioni tra loro correlate. Poiché l'insieme degli strati garantisce tutte le funzioni necessarie alla rete comunicativa tra sistemi è stato possibile suddividere un compito complesso in un insieme di compiti più semplici, questi compiti sono assolti Pagina 11 “ RETI DI CALCOLATORI E INTERNETWORKING ” da un modello che ha come capisaldi la simmetria, la struttura gerarchica e la modularità. La simmetria assicura che le funzioni logiche di due qualsiasi sistemi interagenti siano le stesse, in accordo con gli standard. La simmetria introduce la possibilità di bilanciare i carichi elaborativi sui vari sistemi e assicura che ogni richiesta, da qualunque parte provenga, sia interpretata correttamente dalla controparte ed è la base dei processi elaborativi di tipo cooperativo e client-server. La struttura gerarchica organizza i vari sottosistemi (i livelli) in una rigida gerarchia operativa. Ogni livello riceve i comandi e i dati dal livello superiore, esegue per esso alcune sue specifiche funzioni e a, sua volta. chiede servizi al livello subordinato. Il livello gerarchicamente più elevato è quello dell'applicazione o dell'utente. Tutte le funzioni e i servizi del modello sono sempre attivate su esigenza di chi opera al livello di application. Gli altri sei livelli, in ordine decrescente di gerarchia, sono i livelli di presentation, session, transport, network, data link control (DLC) e di interfaccia fisica. La modularità garantisce che ogni livello abbia ben definite non solo le proprie funzioni interne, ma anche le interfacce (primitive) con cui riceve o tramette i comandi e i dati Pagina 12 “ RETI DI CALCOLATORI E INTERNETWORKING ” verso i propri livelli adiacenti. La definizione formale di queste relazioni assicura che ogni livello funzionale abbia una propria caratteristica precisa che lo distingue nettamente dagli altri; di conseguenza, la modifica di un livello, per aggiungere opzioni o per permettergli prestazioni migliori grazie a nuove tecnologie, non comporta necessariamente modifiche agli altri livelli funzionali. La possibilità di sviluppo, al crescere delle possibilità tecnologiche e delle esigenze degli utenti, viene in tal modo assicurata. 3.1. I COMPITI DI BASE DEI SETTE STRATI FUNZIONALI 1. Livello application. Il processo applicativo elabora i dati in accordo alle specifiche richieste dell'utente e alle norme applicative prestabilite. In determinati punti del processo l'applicazione decide che certi dati o certe richieste vanno trasmessi ad una controparte remota e prepara quindi sia i dati da trasmettere sia i motivi della trasmissione. 2. Livello presentation I dati vengono strutturati in modo che il processo remoto possa comprenderli ed elaborarli. 3. Livello session. Il sistema esamina se la connessione logica con la controparte remota è già stata attivata; in caso negativo, prima che venga attivata. vi deve essere un accordo preliminare fra le due parti sulle regole del dialogo da instaurare (ad esempio, se una parte può interrompere o meno l'altra). 4. Livello transport Alcuni dettagli tecnici devono essere definiti prima di effettuare la trasmissione: essi devono essere in accordo con le regole del dialogo e accompagnare il messaggio stesso. Alcuni di questi dettagli tecnici sono: il numero di sequenza del messaggio. la specifica se esso può essere suddiviso in rete durante la trasmissione, i provvedimenti da prendere se il messaggio arriva errato. Pagina 13 “ RETI DI CALCOLATORI E INTERNETWORKING 5. ” Livello network Occorre a questo punto scegliere il percorso effettivo del messaggio in rete. a meno che la scelta non sia stata fatta precedentemente e per tutti i messaggi della connessione. Opportuni algoritmi di scelta determinano il percorso basandosi sulle strade di rete esistenti. In tal caso occorre scegliere qual è il percorso di rete migliore. 6. Livello di protocollo di linea o data link control Il messaggio deve quindi essere strutturato secondo il formato previsto dal protocollo utilizzabile sulla linea in uscita, inoltre vanno definite le funzioni di controllo della trasmissione. 7. Livello di interfaccia fisica. Infine, il messaggio così strutturato viene passato all'adattatore di linea. che provvede ad inviare uno alla volta i singoli bit, in accordo con l'interfaccia fisica della linea utilizzata. La trasmissione, cui provvede l'adattatore di linea, avviene in collaborazione con il DCE che collega il sistema alla linea trasmissiva . 3.2. IL MODELLO DI RIFERIMENTO OSI Ogni livello funzionale chiamato in causa da una trasmissione esegue le funzioni richieste, quindi aggiunge a quanto ricevuto una testata funzionale specifica del proprio livello e destinata ad essere interpretata dal proprio omologo sul sistema remoto. Questa testata serve per ottenere la cooperazione della controparte funzionale remota o per inviare una semplice informazione. Infine passa al proprio subordinato sia ciò che ha preparato sia l'opportuno comando funzionale. I vari livelli sono attivati a partire da quello funzionale più elevato (cioè quello applicativo): ognuno di essi, esaurite le proprie funzioni, chiama in causa il proprio subordinato, passandogli i dati e un opportuno comando. Ogni livello, scendendo verso il basso, si comporta nello stesso modo. I dati ed il comando originati dal livello applicativo si arricchiscono così di testate funzionali man mano che si scende verso il basso. Il livello di protocollo di linea aggiunge. oltre alla propria testata, una coda al messaggio, nella quale è incluso il campo per il controllo Pagina 14 “ RETI DI CALCOLATORI E INTERNETWORKING ” degli errori in trasmissione (FCS, Frame Check Sequence). L'ultimo livello. quello dell'interfaccia fisica, non aggiunge nulla. almeno nei casi di linee tradizionali e secondo quanto specificato nel modello di riferimento OSI. Il sistema destinatario riceve il messaggio al livello inferiore e lo ricostruisce bit per bit (come evidenziato nella Figura ) passandolo allo strato di controllo di linea. Ogni livello, in questo passaggio verso l'alto, interpreta la testata di competenza, esegue le proprie funzioni in accordo con quanto specificato nella testata, memorizza eventuali risultati da utilizzare quando si preparerà la risposta al messaggio, elimina la propria testata e passa allo strato superiore ciò che rimane. Poiché ogni livello si comporta allo stesso modo, ognuno esegue le funzioni di propria competenza e passa il rimanente al livello superiore. Al livello applicativo arrivano infine i dati e il comando incluso nella testata applicativa che riguarda l'azione da eseguire sui dati. Quando poi il secondo sistema prepara la risposta (o invia una propria richiesta), si instaura lo stesso meccanismo funzionale a ruoli invertiti fra i due sistemi. Il modello OSI può essere discusso da vari punti di vista. In generale. si può dire che i quattro livelli inferiori (cioè il livello di interfaccia fisica, quello di protocollo di linea quello di network, e quello di transport detti rispettivamente anche livello 1, 2, 3, 4. poiché essi sono numerati in progressione a partire dal basso) hanno funzioni esclusivamente trasmissive, quindi si occupano prevalentemente delle tecniche correlate alla mera trasmissione. Al contrario, i tre livelli superiori (session, presentation e application) sono caratterizzati da funzioni di dialogo o di interazione fra le due applicazioni o i due utenti finali e non intervengono nelle tecniche trasmissive. I compiti dei tre livelli inferiori riguardano la scelta dei percorso (o strada) all’interno della rete, del protocollo di linea da usare e dell'interfaccia fisica da utilizzare. E’ da rilevare la caratteristica del quarto livello, quello di transport: da un lato esso ha funzioni correlate alla trasmissione ed è perciò paragonabile ai tre livelli inferiori, ma le sue funzioni riguardano il rapporto fra i due sistemi interessati alla connessione, che lo Pagina 15 “ RETI DI CALCOLATORI E INTERNETWORKING ” rendono simile agli strati superiori, quelli che gestiscono il dialogo. Tutto ciò fa del quarto, fra tutti i vari livelli, quello più difficile da inquadrare esattamente. Il suo compito primario è quello di scegliere le più idonee procedure di controllo della trasmissione, affinché il traffico venga gestito in modo appropriato. Deve tenere conto sia delle esigenze applicative sia delle caratteristiche di qualità della rete trasmissiva utilizzata. In proprio, il livello transport permette all'utente di scegliere alcune modalità di controllo della trasmissione da un sistema finale all'altro, in relazione all'affidabilità della rete trasmissiva utilizzata. Per quanto riguarda i tre strati più elevati si può dire che il livello session si occupa : dell'apertura della connessione logica (o sessione); della scelta delle modalità di dialogo e quelle di sincronizzazione fra le due applicazioni; della gestione effettiva dei dialogo; della chiusura ordinata della sessione. Il livello presentation deve invece strutturare i dati e i comandi ricevuti dal livello applicativo, in modo da renderli comprensibili ed elaborabili da parte del sistema remoto. Il suo compito riguarda quindi la strutturazione formale dei dati, la loro codifica. Un importante modello funzionale che viene definito in questo livello è quello di terminale virtuale (VT, Virtual Terminal). L'obiettivo è la definizione di un terminale conversazionale logico, dotato di monitor e tastiera. che permetta l'interazione con le applicazioni. L'obiettivo è lodevole, ma sfortunatamente le caratteristiche funzionali dei VT, come è attualmente definito, vanno incontro solo a modeste esigenze applicative: il terminale VT non gestisce ad esempio le capacità grafiche. Il livello applicativo è responsabile dei servizi applicativi per l'utente finale. Definisce sia un'interfaccia applicativa (ACSE Application Control Services Element) comune a tutti i servizi, sia un certo numero di servizi di dialogo progettati per le diverse esigenze applicative: per il trasferimento di file, per il trasferimento delle incombenze fra sistemi, per l'accesso a database remoti, per I'uso di servizi di messaggistica elettronica, per l'interazione di due processi applicativi. Pagina 16 “ RETI DI CALCOLATORI E INTERNETWORKING ” La Figura riassume le caratteristiche principali del modello OSI. In questa struttura, ogni dialogo fra due applicazioni o utenti al terminale di un sistema, richiede che entrambi adottino completamente le funzioni OSI ai vari livelli (concetto di simmetria). Questo significa che entrambi devono avere a disposizione il software corrispondente ai vari strati funzionali. Nel caso di un utente che utilizza un terminale non programmabile, e che quindi non può avere software, è possibile ricorrere all'uso, da parte del terminale, del software OSI sul sistema al quale è collegato, con eventuale conversione di protocolli comunicativi da proprietari a OSI effettuata direttamente sui sistema. Si parla spesso del modello OSI quale architettura standard . In effetti, il modello è una guida standard alle relazioni funzionali fra due sistemi in una relazione alla pari (aspetto di notevole attualità dato l'attuale interesse per l'elaborazione cooperativa e le soluzioni client-server). Dal punto di vista architetturale vanno fatte diverse osservazioni: il modello OSI definisce le relazioni fra due sistemi ma non Pagina 17 “ RETI DI CALCOLATORI E INTERNETWORKING ” quelle fra n sistemi. Non dà cioè una guida per le relazioni fra parecchi sistemi in rete. Non definisce, ad esempio, ruoli e funzioni di componenti intermedi di rete come communication controller, cluster controller, gateway, router, unità di switching e bridge, nè suggerisce schemi specifici per la funzione di instradamento, fondamentale nelle reti reali. Tale funzione dev'essere realizzata al livello tre (livello network). Grazie al fatto che ogni livello funzionale si serve delle funzioni dei livelli subordinati (quello sul proprio sistema e quello sul sistema remoto, che collaborano fra loro) e che questo vale per ogni livello, il risultato pratico dello schema è che ogni livello vede l'insieme degli strati funzionali inferiori come una gigantesca black box alla quale chiedere servizi e dalla quale ricevere informazioni e risultati, ma della quale non è necessario conoscere il funzionamento. Ciò vale per tutti i livelli, anche quello applicativo. Grazie a questo tipo di soluzioni strutturali, caratteristiche del modello OSI ma anche delle altre architetture proprietarie, l'utente può chiedere e ottenere servizi di dialogo con controparti remote conoscendo solo i formalismi per formulare le richieste e disinteressandosi completamente delle complessità tecniche sempre crescenti del sistema comunicativo e trasmissivo sottostante. Nella Figura si è evidenziata la diversità dei ruoli fra i livelli funzionali di puro trasporto, che coinvolgono necessariamente tutti i nodi intermedi lungo il percorso fra due sistemi interagenti, e i livelli superiori che riguardano solo i sistemi fra cui è in corso l'interazione e coinvolgono solo i due sistemi finali. Si dice anche che i tre livelli inferiori hanno funzioni di tipo box-to-box mentre quelli di livello superiore hanno funzioni end-to-end. Lo schema relazionale risultante è evidenziato nella Figura. La relazione box-to-box, tipica dei tre livelli inferiori ha ripercussioni pratiche notevoli perché implica che i protocolli usati a questo livello devono essere comuni a tutte le box intermedie del percorso. Ciò non è invece richiesto ai quattro livelli superiori: per Pagina 18 “ RETI DI CALCOLATORI E INTERNETWORKING ” una sessione (o dialogo) fra due sistemi, è necessario e sufficiente che le norme a questi livelli siano comuni ai soli due sistemi finali. Il modello OSI è funzionalmente completo, ben definito e ricco di opzioni. Per questo, offre possibilità di scelta che lo rendono abbastanza flessibile. Già da molto tempo, tutti i livelli sono stati resi standard, dal primo, quello dell’interfaccia fisica, al sesto, quello di presentazione. A livello applicativo, invece, sono stati standardizzate solo le funzioni di trasferimento e manipolazione dei file (FTAM, File Transfer And Manipulation), di posta elettronica (X400. definito da ITU-TSS) e dei servizi di directory (X500). Finora le sole funzioni applicative disponibili sul mercato sono quelle per il file transfer (FTAM) e per la messaggistica elettronica (X400), il che è troppo poco: la controprova si ha nel fatto che il TCP/IP, nato come standard interno del ministero della difesa statunitense per la comunicazione fra sistemi eterogenei, ma molto più ricco in termini di funzioni applicative disponibili, ha avuto un'accettazione di mercato estremamente vasta, fino a proporsi come standard di fatto per le reti eterogenee. Si è già evidenziato che quasi tutti i sistemi sul mercato hanno software coerente con gli standard 0SI dei livelli 1-6 e le funzioni applicative FTAM e X400: ciò significa che la connessione fra sistemi incompatibili secondo gli standard OSI è già una realtà, sebbene limitata soltanto a queste applicazioni. Ma l'insieme delle funzioni applicative messe finora a disposizione non copre la totalità delle esigenze comunicative del mercato, il che spiega le scelte effettuate da gran parte dei produttori nei riguardi delle architetture: OSI si è affiancato, senza soppiantare ad altre architetture di rete. Vi sono sistemi che hanno opzioni per diverse architetture: si usa l'architettura proprietaria per le comunicazioni fra sistemi dello stesso produttore, TCP/IP per le comunicazioni con i sistemi Unix e OSI per le applicazioni X400. Come spesso capita, un nuovo standard non soppianta quelli preesistenti ma si aggiunge ad essi. Pagina 19 “ RETI DI CALCOLATORI E INTERNETWORKING ” La profezia di un futuro con un'unica architettura universale, così certa per i sostenitori di OSI di alcuni anni orsono, va anch’essa discussa. Il fatto che OSI abbia trovato un'alternativa più accettata in TCP/IP non è casuale. Non è detto, infatti, che la comunicazione fra sistemi eterogenei debba sempre essere fatta tramite prodotti OSI: esiste sul mercato un numero incredibilmente alto di prodotti per la coesistenza, che spesso affrontano un solo problema. Perché allora queste soluzioni continuano a essere usate? Perché, spesso, offrono un insieme specifico e limitato di funzioni di interconnessione ma che risolve in modo particolare certe situazioni offrendo in più certe caratteristiche funzionali che talvolta sono le più sentite dal cliente. Pertanto, né OSI né qualsiasi altro tipo di soluzione architetturale può diventare la soluzione universale, almeno nell'ottica attuale di mercato. Pagina 20 “ RETI DI CALCOLATORI E INTERNETWORKING ” 3.3. PROTOCOLLI STANDARD ISO Il modello OSI risale approssimativamente al 1984. Da allora fino ai primi anni '90 sono stati sviluppati numerosi protocolli inseribili in una catasta completa, la catasta ISO. Alcune ditte, per es. la Digital con DECnet, hanno sviluppato una catasta completa di protocolli conformi alle specifiche ISO. Altri protocolli non sono una soluzione completa ma occupano alcuni livelli ISO solamente. E' da notare che allo stesso livello sono spesso presenti più protocolli, da scegliersi in base al tipo di applicativo di comunicazione o ai servizi offerti dalla rete. Si possono ricordare: HDLC - High-level Data Link Control, a livello Data Link, una famiglia intera di protocolli orientati al bit X.25 - a livello Rete, protocollo di smistamento affidabile su rete geografica Pagina 21 “ RETI DI CALCOLATORI E INTERNETWORKING ” 3.3. PROTOCOLLI NON ISO IN RELAZIONE AL MODELLO OSI Teoricamente la standardizzazione formale di un modello di comunicazione aperto avrebbe dovuto gradualmente portare alla affermazione di protocolli strettamente conformi al modello in preferenza a tutti gli altri. Ma è andata diversamente, per vari motivi: vi erano già modelli software rassomiglianti ad OSI in precedenza, con: differente numero e posizione dei livelli maggiore o minore (tipicamente maggiore) integrazione interlivello e corrispondente minore grado di apertura per es. SNA della IBM o TCP/IP alcune ditte fornitrici di software di base e di comunicazione hanno ignorato gli sforzi di standardizzazione (per es. Microsoft) si è andata imponendo la rete Internet, basata su protocolli precedenti a OSI Si può comunque utilmente considerare OSI come un modello di riferimento, entro il quale raffrontare gli ambiti di cataste di protocolli diversi. Pagina 22 “ RETI DI CALCOLATORI E INTERNETWORKING ” Vi sono cinque principali cataste di protocolli diverse non pienamente conformi ai dettami OSI: SNA - System Network Architecture della IBM IPX/SPX della Novell AppleTalk della Apple NetBios/NetBEUI della Microsoft TCP/IP di Internet Pagina 23 “ RETI DI CALCOLATORI E INTERNETWORKING ” 4. I PROTOCOLLI TCP/IP 4.1. IL MODELLO SOFTWARE DoD Il software di comunicazione di ciascuna stazione comunicante in rete è pensato come formato da più livelli sovrapposti. Due concetti sono implicati da un modello a strati: verticale, gerarchico: il software a livello superiore esegue richieste al livello sottostante e da questo riceve responsi orizzontale, alla pari: strati corrispondenti di macchine diverse conversano tramite lo stesso protocollo La International Standards Organization (ISO) ha preparato fin dal 1984 il Modello di Riferimento Open Systems Interconnection, a sette livelli. IL modello ISO/OSI è stato sviluppato corrispondentemente alla definizione della serie di protocolli X.25 per la commutazione di pacchetto. Nonostante le molte critiche e i molti elogi, il modello ISO/OSI è da considerarsi in generale, di riferimento, per avere un modello comune a cui raffrontare altri modelli a strati. Il modello a strati usato dai protocolli TCP/IP è precedente ad OSI, e viene comunemente chiamato modello “Department of Defense” DoD (Dipartimento della Difesa Americano), poiché nasce ai tempi dell'agenzia ARPA seguendo lo sviluppo del prototipo di Internet. Pagina 24 “ RETI DI CALCOLATORI E INTERNETWORKING ” Il modello è a quattro strati. Fondamentali sono gli oggetti che vengono passati tra gli strati. Il livello inferiore è talvolta chiamato Livello Data Link. Le funzioni dei vari livelli sono le seguenti: Applicativi: programmi di interfaccia utente, suddivisi in Client e Server. Trasporto: fornisce la comunicazione tra le due stazioni terminali portanti gli applicativi (end-to-end communication), regola il flusso delle informazioni, e può fornire un trasporto affidabile, cioè con recupero errori. Internet: si occupa dello smistamento dei singoli pacchetti su una rete complessa e interconnessa, del reperimento delle informazioni necessarie allo smistamento, dello scambio di messaggi di controllo e di monitoraggio rete. Interfacce fisiche: responsabile per l'interfacciamento del mezzo fisico, e per l'invio e ricezione su di esso dei pacchetti. E' da notare che gli oggetti fisici scambiati tra i livelli hanno un nome ben preciso, anche se è invalso l'uso generale di chiamare "messaggi" gli oggetti appartenenti ad applicativi, e "pacchetti" tutti gli altri. Pagina 25 “ RETI DI CALCOLATORI E INTERNETWORKING ” Proprieta' Del Modello DoD Inaffidabilita' La filosofia architetturale di TCP/IP è semplice: costruire una rete che possa sopportare il carico in transito, ma permettere ai singoli nodi di scartare pacchetti se il carico è temporaneamente eccessivo, o se risultano errati o non recapitabili. L'incarico di rendere il recapito pacchetti affidabile non spetta allo strato di Internet, ma a strati software superiori. Si dice che il protocollo IP è per sua natura, inaffidabile. In generale è lo strato trasporto che si occupa del controllo di flusso e del recupero errori. Infatti la sede principale di "intelligenza" della rete è a livello trasporto o superiore. Le singole stazioni collegate alla rete non fungono soltanto da punti terminali di comunicazione, ma possono anche assumere il ruolo di router, per l'interscambio di pacchetti da una rete ad un'altra. Principio di Layering L'oggetto ricevuto ad un livello n dalla stazione di destinazione è esattamente lo stesso spedito a livello n dalla sorgente. Pagina 26 “ RETI DI CALCOLATORI E INTERNETWORKING ” Questo rende facile progettare del software unicamente a un livello, con la confidenza di uniformità di trattamento in tutti i nodi di rete. Incapsulamento Gli oggetti definiti alle varie interfacce hanno una struttura definita, spesso consistente di una testata ed un'area dati. L'area dati di un oggetto a livello sottostante contiene per intero l'oggetto a livello soprastante. L'oggetto viene "incapsulato". Il protocollo ad un determinato livello si occupa solo dei campi della propria testata, e considera come puri dati i campi della testata dei protocolli soprastanti, che ha incapsulato. Pagina 27 “ RETI DI CALCOLATORI E INTERNETWORKING ” Interfacce Vi sono due importanti confini o interfacce nel Modello DoD: tra i livelli Applicativi e di Trasporto, ove si entra nel software di sistema operativo tra i livelli Internet ed Interfacce Fisiche, ove si iniziano ad usare gli indirizzi fisici Nei protocolli TCP/IP in realtà i concetti separatori di livelli e di interfacce non sono così stretti come il modello richiederebbe. Vi sono sicuramente alcuni dati informativi che si propagano in entrambe le direzioni, verso l'alto e verso il basso, come il percorso di routing e la 3MTU del link. Questo rilassamento facilita l'ottimizzazione in velocità dei protocolli. In particolare si deve pensare alla "Serie" di protocolli TCP/IP, con enfasi sull'aspetto integrato di tale serie. 3 MTU: Maximum Transmission Unit (Massima unità trasmissiva) Pagina 28 “ RETI DI CALCOLATORI E INTERNETWORKING ” Multiplexing Più protocolli di trasporto interfacciano simultaneamente il protocollo IP. Più protocolli a livello Internet simultaneamente inviano pacchetti tramite il livello intefacce Fisiche. In generale le informazioni a livello superiore vengono multiplessate a livello inferiore incapsulandole come dati ed inserendo in un campo della testata a livello inferiore la informazione di come far avvenire la demultiplessazione. Gli strati intermedi, di Trasporto e di Internet, sono gli strati dei protocolli TCP/IP veri e propri. Pagina 29 “ RETI DI CALCOLATORI E INTERNETWORKING ” 4.2. GLI RFC E GLI STANDARD Fin dal 1969 i documenti e gli articoli che trattano di argomenti relativi ai protocolli TCP/IP e alla rete Internet, e che sono stati sanzionati ufficialmente dalla Internet Activities Board o da un precedente comitato equivalente, vengono raccolti e numerati. Questi documenti sono i Request For Comments (RFC). Sono identificati da una sigla consistente delle lettere “RFC'' seguite da un numero progressivo. Al momento gli RFC sono circa 2000. A intervalli regolari viene pubblicato un RFC che funge da indice e da descrittore dello stato degli RFC. Gli RFC non vengono mai ritirati ma possono diventare obsoleti e venire rimpiazzati, come autorevolezza, da RFC più recenti. Alcuni RFC sono considerati di base per la documentazione della evoluzione della rete Internet. Questi vengono listati regolarmente in altri RFC. Per i principianti, che si avvicinano per la prima volta al mondo Internet, alcuni RFC vengono identificati da un'altra sigla, FYI (For Your Information) e numerati. Gli FYI sono dell'ordine di qualche decina. Tutti gli RFC sono disponibili su server ftp della rete Internet, che vengono tenuti aggiornati. A volte vengono anche pubblicati su CDROM o altri supporti magnetici. E' possibile anche ordinarli alla 4IAB su supporto cartaceo. 4 IAB: Internet Activities Board Pagina 30 “ RETI DI CALCOLATORI E INTERNETWORKING ” 4.3. INDIRIZZI IP Ogni interfaccia che usa i protocolli TCP/IP è identificata da un Indirizzo Internet a 32 bit. Questo indirizzo deve essere univoco in tutta la rete visibile, al limite in tutta internet. Un indirizzo internet consiste di due parti concatenate: indirizzo di rete ed indirizzo di host. Il numero di bit per ciascuna parte è determinato dalla Classe a cui l'indirizzo appartiene. Gli indirizzi sono scritti in formato "Big Endian", col bit più significativo per primo. Le classi di indirizzamento sono determinate dai primi bit dell'indirizzo internet. Gli indirizzi sono rappresentati come quattro numeri separati da punti (notazione punto). Ogni numero rappresenta un byte dell'indirizzo. Gli indirizzi internet sono assegnati da autorità ufficiali Internet. La gerarchia di indirizzamento a due livelli viene spesso estesa ad avere un terzo livello gerarchico, quello di sottorete. Una sottorete è una suddivisione dello spazio di indirizzi riservato ad una rete. Il nuovo formato di indirizzi diviene: Il campo congiunto rete + sottorete è specificato da una maschera di sottorete a 32 bit. L'appartenenza di un indirizzo ad una sottorete viene determinata con una operazione di AND logico tra l'indirizzo internet e la maschera di sottorete. La maschera deve contenere più di un bit ed i bit devono essere consecutivi. L'assegnazione di indirizzi è molto inefficiente: viene assegnato un indirizzo di rete ad un richiedente, anche se questi non usa tutti gli indirizzi di host disponibili. Pagina 31 “ RETI DI CALCOLATORI E INTERNETWORKING ” L'espansione recente dell'Internet ha determinato l'esaurimento degli indirizzi in classe B. Ai richiedenti di nuovi indirizzi di rete con più di 256 indirizzi di host vengono in questi giorni assegnati più indirizzi consecutivi in classe C. Per impedire un eccessivo carico della tabella di routing è stato introdotto un nuovo protocollo, il Classless InterDomain Routing (CIDR), che gestisce questa situazione. Indirizzi ed Interfacce Gli indirizzi internet non designano le stazioni di rete ma le interfacce di rete. Una stazione con più interfacce è detta "multi-homed". Questo è tipicamente, ma non solo, il caso dei router, che compiono lo smistamento tra due o più reti contigue. Tutti gli host mantengono Tabelle di Routing che specificano come far arrivare un pacchetto ad una stazione remota, inviandolo ad un router locale che esegue poi lo smistamento. L'associazione di indirizzi internet ad interfacce permette di ottenere del routing (smistamento) di precisione, e permette ai router di scegliere il percorso migliore per una determinata destinazione. Indirizzi Speciali Alcuni indirizzi sono riservati a scopi speciali e non devono venire usati come indirizzi di interfacce: 0.0.0.0 lo host corrente nella rete corrente - usato solo come indirizzo sorgente, per es. da una stazione durante il boot 0.X.Y.Z lo host X.Y.Z sulla rete corrente di classe A 255.255.255.255 indirizzo di broadcast limitato - tutti gli host sulla rete corrente, come indirizzo di destinazione A.255.255.255 B.B.255.255 C.C.C.255 indirizzo di 5broadcast diretto - tutti gli host su una rete di classe A o B o C o su una sottorete con la stessa struttura 127.X.Y.Z indirizzo di 6loopback - denota l'interfaccia locale, qualsiasi siano i numeri X.Y.Z; per convenzione si usa 127.0.0.1 224.0.0.1 multicast all hosts - tutti gli host di questa (sotto)rete 224.0.0.2 multicast all routers - tutti i router di questa (sotto)rete 5 Broadcast: Indirizzo di una rete a diffusione globale (broadcast) Pagina 32 “ RETI DI CALCOLATORI E INTERNETWORKING ” Come si vede, due indirizzi sono riservati per ogni sottorete (0 e 1), e come conseguenza non si può avere una maschera di sottorete di un solo bit. 6 Loopback: Tipo di test diagnostico nel quale il segnale trasmesso viene riportato indietro al dispositivo emittente dopo aver passato tutto o parte di un collegamento per comunicazione dati. Un test a circuito chiuso permette il confronto di un segnale di ritorno con il segnale trasmesso. Pagina 33 “ RETI DI CALCOLATORI E INTERNETWORKING ” 4.4. TESTATA IP La testata di un pacchetto IP è definita dallo RFC791. I campi testata sono allineati al confine di 32 bit e trasmessi in formato Big Endian. Il primo campo è la Versione, settato a 4 per la versione corrente di IP. Questo campo varrà 6 nella prossima versione. Il campo IHL è lo Internet Header Length, o lunghezza della testata stessa, misurato in parole da 32 bit. IHL varia da 5, quando non vi sono opzioni, ad un massimo di 15, che permette un massimo di 40 byte per le opzioni. Il Tipo Servizio definisce la precedenza del pacchetto ed il tipo di routing desiderato. La Lunghezza Totale è il numero di byte totale del pacchetto, inclusa la testata: la dimensione massima di un pacchetto IP è di 65535 byte. I campi Identificazione, Flag ed Offset di Frammento servono a gestire la frammentazione di un pacchetto IP. Il campo Tempo di Vita (Time To Live - TTL) definisce formalmente la vita massima di un pacchetto espressa in secondi, allo scopo di impedire che alcuni pacchetti entrino in un loop infinito di routing e persistano per sempre nella rete. Questo campo è molto utile anche a livelli superiori. Per esempio, se TCP attende lo scadere del TTL dopo la chiusura di una connessione, ha la garanzia che non arrivino più pacchetti che appartenevano alla connessione chiusa. Il TTL come tempo in secondi è di difficile implementazione; in pratica i router decrementano di uno questo campo ogni volta che Pagina 34 “ RETI DI CALCOLATORI E INTERNETWORKING ” inviano un pacchetto in via di smistamento. Se il valore del TTL scende a zero, il pacchetto viene scartato. L'Indirizzo Sorgente e l'Indirizzo Destinazione sono gli indirizzi del mittente iniziale e del destinatario ultimo di un pacchetto. Il campo Protocollo identifica il programma a cui il pacchetto deve essere passato quando giunge a destinazione. Sono definiti vari numeri identificativi di protocollo. Il campo Checksum Testata serve a controllare l'integrità della testata durante la trasmissione. Il checsum è definito come il complemento a 1 a 16 bit della somma dei complementi ad 1 a 16 bit di tutte le parole a 16 bit della testata, dopo che il campo Checksum stesso è stato posto a zero. Questo tipo di checksum è considerato un compromesso accettabile tra velocità di calcolo e capacità di riduzione degli errori. Pagina 35 “ RETI DI CALCOLATORI E INTERNETWORKING ” Precedenza e Tipo Servizio Il campo Tipo di Servizio ha due sottocampi: Precedenza e Tipo di Servizio. La precedenza è un'indicazione della priorità del pacchetto. Influenza la priorità di trattamento di un pacchetto in una coda. Vi sono otto valori di precedenza: 111 - Network Control 110 - Internetwork Control 101 - CRITIC-ECP 100 - Flash Override 011 - Flash 010 - Immediate 001 - Priority 000 - Routine Il documento RFC791 mette in guardia da possibili abusi del campo di sicurezza e suggerisce che tale campo debba essere gestito solo all'interno di una rete locale. Il campo Tipo di Servizio consiste di cinque bit di flag, di cui quattro definiti: D - bassi ritardi (delay) T - throughput (banda passante) alto R - percorso più affidabile (reliable) C - percorso più economico (cheapest) Solo uno dei bit del campo può essere settato. Molti protocolli di smistamento come 7OSPF 7 8 e 8BGP supportano questo tipo di servizio. OSPF: Open Shortest Path First (Protocollo aperto di cammino più breve per primo) BGP: Border Gateway Protocol (Protocollo per gateway di confine) Pagina 36 “ RETI DI CALCOLATORI E INTERNETWORKING ” Frammentazione dei Pacchetti Tronconi diversi di rete supportano trame a basso livello di lunghezze massime diverse. La lunghezza massima tipica di un troncone si chiama il Maximum Transmission Unit (MTU) del troncone. Se un pacchetto transita da un troncone di rete con MTU alto ad uno con MTU più basso, può succedere che la sua lunghezza sia più elevata del nuovo MTU. In tal caso il pacchetto viene spezzato o "frammentato" in più pacchetti componenti. I frammenti vengono inviati indipendentemente sulla rete dal punto di frammentazione fino alla destinazione finale. I campi Identificazione, Flag ed Offset di Frammento della testata IP gestiscono la frammentazione. Il campo Flag è composto da tre bit. Il primo bit è sempre zero. Il secondo bit è il bit Don't Fragment (DF) ed indica che il pacchetto originale non deve essere frammentato. Se questo bit è settato e vi è necessità di frammentazione, il pacchetto viene scartato, e un possibile messaggio 9ICMP è inviato al mittente. Il bit More Fragments (MF) è settato a 1 per tutti i frammenti del pacchetto originario tranne l'ultimo. Il campo Offset Frammento è l'indirizzo in byte che il primo byte del frammento corrente occupava nel pacchetto originario. La frammentazione può avvenire in più punti del percorso in rete di un pacchetto, e può anche avvenire ricorsivamente. I campi Offset e MF sono sempre espressi relativi al pacchetto originale. Il campo Identificativo esprime l'identità del pacchetto originale. Il riassemblaggio del pacchetto è compiuto solo dalla destinazione finale, che deve ricomporre tutti i frammenti con lo stesso identificativo. 9 ICMP: Internet Control Message Protocol Pagina 37 “ RETI DI CALCOLATORI E INTERNETWORKING ” In caso di perdita in transito anche di un solo frammento, l'intero pacchetto viene scartato. Il ricevente ha un tempo di timeout per consentire a tutti i pacchetti di giungere a destinazione: il timeout è implementato in modo naturale decrementando il Tempo di Vita del pacchetto ogni secondo e scartando il pacchetto se questo raggiunge lo zero. Problemi Il fatto che l'identificativo di frammento sia di soli 16 bit offre la possibilità che venga riusato un identificativo quando i frammenti vecchi con lo stesso identificativo non sono ancora giunti a destinazione. Questo è evitato attendendo un tempo minimo TTL prima del riutilizzo di un identificativo. Ciò implica un limite teorico massimo di invio di 65536 pacchetti per TTL; TCP ha un TTL massimo di 2 minuti, quindi con una dimensione di pacchetto di 4 kilobyte la banda passante massima è di 9 Megabit al secondo. L'arrivo simultaneo di molti pacchetti frammentati può causare una scarsità di buffer sulla stazione ricevente che deve compiere il riassemblaggio. Una prima soluzione è la negoziazione di un Path MTU, o minimo MTU di tutto il percorso da stazione inviante a stazione destinazione, prima dell'invio dei pacchetti dati veri e propri. Tutti i pacchetti vengono quindi inviati con il bit Don't Fragment settato. La dimensione dei pacchetti a livello TCP viene inoltre settata allo stesso valore dei pacchetti IP per ottimizzare l'invio. Opzioni IP Ogni parametro opzione è identificato da un byte che contiene alcuni campi. Il flag Copiato (C) indica che l'opzione deve eventualmente essere copiata in tutti i frammenti. Se il bit non è settato, l'opzione viene copiata solo nel primo frammento. Due Classi di opzioni sono state definite: Pagina 38 “ RETI DI CALCOLATORI E INTERNETWORKING ” 0 - controllo 2 - debugging e misura Il Numero identifica l'opzione. Sono definite molte opzioni nel documento RFC791. Molte opzioni hanno una codifica a lunghezza variabile: il byte di tipo è immediatamente seguito da un byte che contiene la Lunghezza dell'opzione, incluso il campo tipo e lunghezza stessi. Le uniche eccezioni sono l'opzione "No Option" che serve come pad per allineare le opzioni a confini di 32 bit, e l'opzione "End of Options". Le opzioni vengono raramente usate in tempi recenti: alcune sono obsolete, altre vengono sostituite da procedure diverse per ottenere lo stesso scopo. Alcuni router non supportano addirittura più tutte le opzioni. Le uniche opzioni veramente usate sono il Loose e lo Strict Source Routing, che hanno la stessa sintassi. Il Puntatore è seguito dai Dati di Routing che consistono in una lista di indirizzi internet esprimenti i router attraverso i quali deve o può transitare il pacchetto. Il campo Indirizzo Destinazione della testata IP contiene ad ogni salto l'indirizzo del prossimo router nella lista dei router. Il campo Puntatore è un indice nella lista, ed inizia dal valore 4. Ad ogni salto viene incrementato il Puntatore di quattro byte e scambiato l'indirizzo IP di destinazione con l'indirizzo puntato nella lista dei router. Pagina 39 “ RETI DI CALCOLATORI E INTERNETWORKING ” Quando il valore del puntatore raggiunge o supera il valore della Lunghezza, allora il pacchetto è arrivato a destinazione. Se il routing è Strict e non è raggiungibile il router successivo, il pacchetto IP viene scartato. Se il routing è Loose e il prossimo router non è raggiungibile allora viene compiuto il tentativo di recapito al router ancora seguente. L'uso delle opzioni ha come conseguenza una diminuzione della velocità di trasferimento di un pacchetto. Vi sono alternative all'uso delle opzioni. Invece di usare l'opzione di Source Routing, si può incapsulare il pacchetto IP in un altro pacchetto IP. Per esempio per inviare un pacchetto da A a B attrverso C, può venire incapsulato nel seguente modo: Il costo di processamento per A e B è lo stesso che per l'uso dell'opzione di Source Routing. Il costo di processamento per C e per tutti i router intermedi è molto minore. E' da notare che l'opzione Source Routing viene spesso ignorata da router che siano consci di problematiche di sicurezza. Pagina 40 “ RETI DI CALCOLATORI E INTERNETWORKING ” 5. RETI LOCALI E RETI GEOGRAFICHE 5.1. DEFINIZIONE DI LAN MAN E WAN Si distinguono tre tipi di reti a seconda della loro estensione spaziale: LAN - Local Area Network (rete locale), che collega nodi relativamente vicini, nell'ambito tipicamente di uno stesso edificio MAN - Metropolitan Area Network (rete metropolitana), con collegamenti a distanze massime di decine di chilometri WAN - Wide Area Network (rete geografica), che collega nodi a distanza qualsiasi, anche planetaria La classificazione non è sempre facile, in particolare per le MAN. Dal punto di vista ingegneristico, né le LAN né le MAN soffrono di problemi di attenuazione eccessiva del segnale, e non hanno bisogno di rigeneratori di segnale. Le WAN sicuramente devono prevederlo. Pagina 41 “ RETI DI CALCOLATORI E INTERNETWORKING ” Per le LAN e le MAN il problema di smistamento è limitato o non esistente, e il recapito e' gestito dai protocolli a livello Data Link. Per le WAN il problema dello smistamento o e' di ordine due, poiché vi sono solo due nodi comunicanti, oppure è di un ordine di grandezza superiore. Dal punto di vista topologico la vera definizione di una rete locale è che esiste sempre un solo percorso possibile per inviare dati da un nodo ad un altro. Quando più reti LAN o MAN sono interconnesse, l'oggetto risultante si dice un internet (con la minuscola) e trattasi di una rete geografica dal punto di vista organizzativo anche se il suo ambito spaziale è piccolo. La Internet (con la maiuscola) è quindi l'internet per antonomasia. 5.2. TOPOLOGIE DI RETI LOCALI Dal punto di vista topologico una LAN può essere: a bus o dorsale - più nodi ciascuno connesso ad una dorsale centrale, il bus Esempio tipico: Ethernet a stella - i nodi sono tutti connessi ad un mozzo o punto di smistamento centrale, lo Hub Esempio: StarLan della AT&T. Spesso il protocollo a livello Data Link di una stella e' lo stesso di un bus ad anello - i nodi sono connessi ad un bus che si ricongiunge su se stesso in un anello; l'univocità del percorso tra due nodi è data dal fatto che i pacchetti dati girano l'anello in una sola direzione Esempio: Token Ring della IBM Vi sono anche situazioni più complesse, elaborazioni di queste topologie semplici: a doppio anello, in ciascun anello i dati circolano in direzioni opposte Token Bus o anello logico, un bus non chiuso ma con un ordine di smistamento circolare imposto artificialmente Pagina 42 “ RETI DI CALCOLATORI E INTERNETWORKING ” Topologie di reti locali Pagina 43 “ RETI DI CALCOLATORI E INTERNETWORKING ” 6.3.TOPOLOGIE DI RETI GEOGRAFICHE Una rete geografica topologicamente può essere un collegamento: punto-punto, con un nodo a ciascun capo di un singolo collegamento diretto multipunto, usata in passato per il coolegamento di terminali ad uno host mainframe, ora meno usata a maglie, equivalente a più segmenti punto-punto oltre naturalmente che un internet, cioè un collegamento di più LAN, MAN o WAN e riconducibile ad una rete a maglie. Pagina 44 “ RETI DI CALCOLATORI E INTERNETWORKING ” 5.4. PROBLEMI DELLA CODIFICA E SOLUZIONI Per trasmettere un segnale digitale contenete informazioni è necessario selezionare un fenomeno fisico alla cui variazione associare le informazioni e scegliere come rappresentare i bit 0 e 1 con variazioni del fenomeno. Per esempio si scelga la tensione o voltaggio su un doppino come fenomeno fisico. Altre scelte possibili sarebbero state la direzione del flusso della corrente o la frequenza di un segnale luminoso in un mezzo ottico. La scelta più ovvia è di selezionare due valori di voltaggio, alto e basso, per codificare i bit 0 e 1. Non sempre ciò è direttamente fattibile. I problemi immediati sono i seguenti: la banda passante del mezzo impone una frequenza massima di variazione del voltaggio (misurata in baud o meglio in MHz) - con due livelli di codifica questa corrisponde al numero di bit trasmessi al secondo (bit/secondo o meglio Mb/s), con più livelli di codifica si ottiene un maggior flusso trasmissivo con più livelli di codifica può però essere difficile per il ricevente discriminare tra i livelli ricevuti, specie in presenza di attenuazione o di rumore i nodi comunicanti sono separati, quindi hanno orologi di riferimento differenti e, per quanto leggermente, sicuramente fuori fase: quindi non possono mantenere una sincronia relativa a lungo, e tendono a perdere bit dopo un certo periodo di tempo Pagina 45 “ RETI DI CALCOLATORI E INTERNETWORKING ” Al problema della sincronia si possono fornire due soluzioni: mantenere il treno di bit continui relativamente corto e preceduto da un bit iniziale di sincronia: è la tecnica detta start-stop usata nella comunicazione asincrona codificare il segnale in modo che porti internamente a intervalli sufficientemente regolari una transizione usata solo per la sincronia, non come codifica di valore bit: è la tecnica usata nella comunicazione sincrona Pagina 46 “ RETI DI CALCOLATORI E INTERNETWORKING ” 6. STRUMENTI DI SMISTAMENTO DEI PACCHETTI 6.1. REPEATER Un repeater è uno switch (interrutore o deviatore) elettronico a livello Fisico OSI che compie la ripetizione e rigenerazione del segnale tra due segmenti di LAN. Le due LAN interconnesse hanno lo stesso tipo di 10MAC. Il caso più comune è 802.3. Il repeater ovvia al problema di attenuazione eccessiva del segnale su ogni segmento di LAN e permette così di ottenere LAN più lunghe. Rimane comunque sulla lunghezza complessiva della LAN qualsiasi limitazione imposta dal metodo di accesso a livello MAC, per es. 1500 metri per 11CSMA/CD. Un repeater può rigenerare il segnale su più di una LAN di destinazione (multirepeater) implementando in tal modo topologie ad H delle LAN connesse. 10 MAC: Multiple Access with Collision (Accesso multiplo con collisione) CSMA/CD: Carrier Sense Multiple Access/Collision Detection (Accesso multiplo a rilevazione di portante (carrier) con segnalazione di collisione). 11 Pagina 47 “ RETI DI CALCOLATORI E INTERNETWORKING ” 6.2. HUB Lo “Hub” o mozzo è il centro di una topologia a stella da cui si dipartono i cavi di collegamento verso le singole stazioni. In realtà lo Hub funge da dorsale di una topologia a bus ove quest'ultimo è stato ridotto ai minimi termini, e supporta il metodo di accesso CSMA/CD. Il tempo minimo di attesa delle stazioni prima di dedurre ricezione avvenuta se non si verificano collisioni, diventa ora una funzione della velocità di propagazione del segnale sul cavo di collegamento e della lunghezza massima di quest'ultimo. Lo hub fungente da dorsale contiene tipicamente elettronica di supporto alla comunicazione di collisioni a tutti i sistemi collegati. Spesso gli hub si possono collegare in cascata, tramite porte speciali e riposizionando switch appositi a bordo dello hub stesso. In una configurazione a cascata solo uno degli hub funge architettonicamente da “bus”, gli altri acquisiscono funzione di repeater / rigeneratore di segnale. Esiste sempre un numero massimo di hub collegabili in cascata, dipendente dal tempo di latenza del pacchetto in transito per lo hub e dalla lunghezza massima di 1500 m accettabile per il CSMA/CD. Pagina 48 “ RETI DI CALCOLATORI E INTERNETWORKING ” 6.3. BRIDGE L'interconnessione tra LAN avviene tramite bridge, ovvero strumenti elettronici dedicati collegati a due o più LAN simultaneamente. I bridge operano il passaggio pacchetti (trame) da una rete all'altra a livello OSI Data Link, o più esattamente operano a livello 12MAC IEEE. I bridge possono interconnettere LAN con lo stesso MAC (per es. 802.3 con 802.3) o con MAC differenti (per es. 802.3 con 802.5, FDDI con 802.3 o FDDI con 802.5). E' da notare che dal punto di vista dei livelli OSI superiori, per esempio del livello di Rete, i nodi che si trovano sui due (o più) segmenti di LAN interconnessi da un bridge fanno parte della stessa rete logica. Il transito dei pacchetti tramite il bridge avviene col metodo detto store and forward, cioè il pacchetto viene completamente letto dal bridge e poi ritrasmesso. Questo consente di superare tipici limiti di distanze massime o numero massimo di sistemi collegabili, propri delle LAN. I bridge non performano del vero routing, ma hanno delle regole di smistamento molto semplici. Un bridge mantiene le sue tabelle di smistamento in modo indipendente dagli altri bridge. Queste tabelle devono venire configurate manualmente, almeno per una parte iniziale. Vi sono due filosofie diverse per il luogo ove registrare le tabelle di smistamento: 12 MAC IEEE: Institute of Electrical and Electronic Enginners Pagina 49 “ RETI DI CALCOLATORI E INTERNETWORKING ” transparent bridge - le tabelle sono a bordo del bridge stesso e sono trasparenti, in quanto i sistemi connessi alle LAN ne ignorano l'esistenza source routing bridge - le tabelle non sono sui bridge stessi ma sui singoli sistemi connessi alle LAN che in fase di invio trame devono specificare esattamente il cammino che queste devono compiere, attraverso tutti i bridge intermedi Per quanto questo a volte risolva situazioni patologiche con alcune implementazioni di Token Ring, è una soluzione scarsamente usata. Alcuni bridge, detti intelligenti, imparano gli indirizzi fisici delle stazioni che si trovano nei due segmenti di rete collegati, e operano la ritrasmissione delle trame che effettivamente devono transitare da una LAN all'altra. Questa operazione si dice di “filtraggio pacchetti”. In tal modo le capacità di traffico dell'intera LAN estesa sono anche superiori a quelle di ogni singola LAN componente. Dato che la struttura di più bridge che interconnettono LAN è teoricamente una topologia a maglie, per poter implementare l'apprendimento automatico dell'instradamento è necessario ricondurre la topologia a maglia ad una topologia ad albero. Questo viene compiuto dai bridge tramite particolari algoritmi detti di spanning tree. Le prestazioni di un bridge sono date da tre fattori: numero massimo di pacchetti al secondo che un bridge può filtrare numero massimo di pacchetti al secondo che un bridge può trasmettere tempo medio di latenza, tempo aggiuntivo dovuto al transito del bridge stesso Si ottiene che le prestazioni massime avvengono per pacchetti il più lungo possibili compatibilmente con la MTU delle LAN interconnesse. Pagina 50 “ RETI DI CALCOLATORI E INTERNETWORKING ” 6.4. ROUTER Un router è un sistema intermedio che compie lo smistamento pacchetti tra due o più reti diverse a cui è collegato. Il router opera a livello OSI di Rete. Le due o più reti interconnesse hanno lo stesso metodo di indirizzamento a livello di Rete, per es. usano indirizzi IP, ma sono logicamente due reti distinte. E' da notare che qualora nodi di due diverse reti logiche anche condividessero lo stesso cavo fisico, e quindi avessero lo stesso livello MAC e tipo di indirizzi fisici, per smistare pacchetti da una rete logica all'altra è necessaria la presenza di un router. I router possiedono una tabella di smistamento o di routing, che può essere configurabile manualmente o automaticamente tramite opportuni Protocolli di Routing. Le tabelle di routing in tal caso non sono determinate localmente ma dipendono dalla efficace cooperazione della rete nel suo complesso. Pagina 51 “ RETI DI CALCOLATORI E INTERNETWORKING ” 6.5 GATEWAY O CONVERTITORI DI PROTOCOLLO Un convertitore di protocollo, anche detto gateway, connette due tipi di rete diversi con indirizzamenti e protocolli diversi. Un gateway opera a livello OSI Applicativo ed è implementato tipicamente da una macchina intelligente, ovvero con sistema operativo ed applicativi appropriati. I gateway più diffusi sono basati sul sistema operativo UNIX. Vi è una certa confusione riguardo al termine “gateway” in terminologia Internet. Venivano in passato detti gateway anche solo dei semplici router, specialmente poiché la maggior parte di essi erano implementati su host intelligenti. La terminologia vera della Teoria delle Comunicazioni è invece più ristretta, e comunque di recente anche nel mondo Internet si e' iniziato ad usare il termine “router” in questo contesto. I gateway servono a diversi scopi: collegamento di reti con indirizzamento diverso - per es. conversione di posta elettronica tra le reti Internet, FidoNet e UUCP; conversione tra protocolli NetBIOS e TCP/IP, oppure TCP/IP e NetWare o SNA separazione tra reti TCP/IP - per es. tra Intranet ed Internet, tramite un Firewall Pagina 52 “ RETI DI CALCOLATORI E INTERNETWORKING ” incapsulamento dati trattati - per es. pacchetti IP crittografati all'interno di altri pacchetti IP, anche se questa applicazione tende ormai ad essere implementata a livelli più bassi riflettori di pacchetti - masquerading, pretendere che i dati siano originati dalla macchina corrente anziché da quella mittente vera, sia per scopi più che legali (proxy) che a volte per motivi quasi hacker (anonymous remailer) 6.6 FIREWALL La capacità di connettere qualsiasi computer nel mondo con qualsiasi altro è sicuramente un fatto positivo, ma con alcuni risvolti negativi. Per persone a casa, vagabondare per Internet è molto divertente. Per gli esperti di sicurezza delle società private è un incubo. Gran parte delle società posseggono grandi quantità di informazioni confidenziali e commerciali on line, piani di sviluppo dei prodotti, strategie di marketing, analisi finanziarie). La divulgazione di queste informazioni ai rivali potrebbe avere conseguenze disastrose. Oltre al pericolo che le informazioni escano, c'è anche il pericolo che le informazioni entrino. In particolare, virus e altri agenti nocivi digitali possono infrangere la sicurezza, distruggere dati preziosi e far sprecare un sacco di tempo agli amministratori che cercano di ripulire il caos lasciato. Spesso sono importati da impiegati distratti che vogliono giocare a qualche nuovo, ingegnoso gioco. Conseguentemente, sono necessari dei meccanismi per conservare i bit "buoni" all'interno e lasciare i bit "cattivi" all'esterno. Un metodo è la codifica crittografica. Questo approccio protegge protegge i dati scambiati tra siti sicuri. I firewall (muro di fuoco) sono un moderno adattamento del vecchio principio di sicurezza medioevale: costruire un profondo fossato attorno al castello. Questa progettazione fa in modo che chiunque entri o esca dal castello passi attraverso un singolo ponte levatoio, dove può essere ispezionato dalla polizia di 13I/O. E’ possibile utilizzare lo stesso accorgimento con le reti: una società può avere diverse LAN Pagina 53 “ RETI DI CALCOLATORI E INTERNETWORKING ” connesse in qualsiasi modo, ma tutto il traffico da o per la società deve passare attraverso un ponte levatoio elettronico (un firewall), come mostrato in Fig 1. Fig. 1: Un firewall che consiste di due filtri per pacchetti e di un gateway a livello applicativo Il firewall in questa configurazione ha due componenti: due router che eseguono il filtraggio dei pacchetti e un gatewav di applicazione. Esistono anche configurazioni più semplici, ma il vantaggio di questa progettazione è il fatto che ogni pacchetto deve transitare attraverso due filtri e un gateway a livello applicativo per entrare o uscire. Non esistono altre vie. Ogni filtro per pacchetti è un router standard equipaggiato con qualche funzionalità extra, che fa in modo che ogni pacchetto in entrata o in uscita venga ispezionato. I pacchetti che soddisfano certi criteri vengono lasciati passare normalmente, quelli che falliscono il test vengono scartati. In Fig. 1, è probabile che il filtro per pacchetti sulla LAN interna verifichi i pacchetti in uscita, mentre quello nella LAN esterna verifichi i pacchetti in entrata. I pacchetti che attraversano il primo ostacolo passano al gateway per ulteriori esami. Il motivo per cui vengono messi due filtri per pacchetti su LAN differenti è garantire che nessun 13 I/O: Input/Output (Ingresso/Uscita) Pagina 54 “ RETI DI CALCOLATORI E INTERNETWORKING ” pacchetto entri o esca senza essere passato attraverso il gateway di applicazione: non esiste alcun percorso che lo eviti. Generalmente i filtri per pacchetti sono basati su tabelle configurate dall'amministratore di sistema Queste tabelle elencano le sorgenti e le destinazioni che sono accettabili, quelle che sono vietate e le regole standard su cosa fare dei pacchetti che provengono o sono diretti ad altre macchine. Nel caso diffuso di un ambiente UNIX, le sorgenti e le destinazioni consistono in un indirizzo IP e in una porta. Le porte indicano quali sono i servizi desiderati. Ad esempio la porta 23 è per Telnet, la porta 79 è per Finger, la porta 119 è per le news USENET. Una società potrebbe bloccare i pacchetti in entrata da tutti gli indirizzi IP combinati con una di queste porte. In questo modo, nessuno da fuori potrebbe entrare via Telnet oppure cercare informazioni sugli utenti utilizzando Finger. Inoltre, questo impedirebbe agli impiegati di passare tutto il giorno a leggere le news USENET. Bloccare i pacchetti in uscita è più complesso in quanto, sebbene gran parte dei siti si attengano alle convenzioni standard di identificazione delle porte, non sono forzati a farlo. Inoltre, per alcuni servizi importanti quali FTP (File Transfer Protocol - protocollo di trasferimento file), i numeri delle porte vengono assegnati dinamicamente. Infine, se bloccare le connessioni TCP è difficile, bloccare i pacchetti 14UDP è anche peggio, in quanto si conosce a priori molto poco di ciò che vogliono fare. Molti filtri per pacchetti bloccano tutto il traffico UDP. La seconda parte del meccanismo di firewall è il gateway di applicazione. Piuttosto che guardare i pacchetti nudi e crudi, questo gatewav funziona a livello applicazione. Ad esempio si potrebbe creare un gateway per la posta, che esamini ogni messaggio in entrata o in uscita. Per ognuno di essi si decide se trasmetterlo o scartarlo in base ai campi del preambolo, alla dimensione del messaggio, o anche del contenuto (ad 14 UDP: User Datagram Protocol Pagina 55 “ RETI DI CALCOLATORI E INTERNETWORKING ” es., in una installazione militare, la presenza di parole come “nucleare” o "bomba" potrebbe causare qualche azione speciale). Le installazioni sono libere di creare uno o più gatewav di applicazione per applicazioni specifiche, ma non è raro che organizzazioni .più sospettose permettano la posta elettronica in entrata e in uscita, e forse anche l'uso del World Wide Web, ma escludano qualsiasi altro tipo di traffico perché troppo rischioso. Combinato con la codifica crittografica e il filtraggio dei pacchetti, questo meccanismo offre una certa quantità di sicurezza al prezzo di qualche inconveniente. Una nota finale concerne le comunicazioni senza filo e i firewall. E’ facile concepire un sistema che sia in teoria completamente sicuro ma che in pratica faccia acqua da tutte le parti. Questa situazione può presentarsi se alcune delle macchine sono senza filo e utilizzano comunicazioni radio, che aggirano i firewall in entrambi sensi. Pagina 56 “ RETI DI CALCOLATORI E INTERNETWORKING ” RETI COMMERCIALI 1. RETI ANALOGICHE (CDA) E NUMERICHE (CDN) Reti analogiche Le linee analogiche, pensate originariamente per la trasmissione del segnale vocale, fanno parte del servizio telefonico nazionale e si trovano ovunque. Per quanto sia possibile sfruttare un normale collegamento telefonico su rete telefonica pubblica (PSN - Public Switched Network), per quantità dati notevoli è più ragionevole disporre di una linea dedicata (CDA - Canale Dati Analogico). La linea CDA e' un esempio di commutazione di circuito. Le linee CDA vanno richieste alla Telecom, ed è ancora possibile specificare all'atto della richiesta che vi sia continuità metallica sulla linea, ovvero che non vi sia interposto alcuno strumento intermedio di tipo digitale. Le linee CDA nel mondo occidentale sono in phase out e in certe situazioni già introvabili. Le aziende di comunicazione nazionali ed internazionali si vanno via via orientando verso il collegamento digitale, anche per la telefonia. La trasmissione dati digitali su linea analogica va fatta con l'uso di un apparecchio detto modem (modulatore/ demodulatore). La massima velocità di trasmissione del traffico digitale ottenibile su linee analogiche commutate (PSN) è un limite teorico dato dalla larghezza di banda limitata originariamente pensata per comunicazioni vocali, ed è di 43 Kbit/s. Attualmente i modem più veloci comunemente disponibili sono a velocità di 32.6 Kb/s. Un metodo Pagina 57 “ RETI DI CALCOLATORI E INTERNETWORKING ” particolare di codifica dei dati si sta cominciando ad affermare, detto X2, che permette di arrivare a velocità di 55.6 Kb/s. Tipi di Modulazione Vi sono tre tipi base di modulazione per la conversione di un segnale digitale in analogico: modulazione di ampiezza - viene variata l'ampiezza della portante modulazione di frequenza - frequency shift keying modulazione di fase - phase shift keying, con una variante detta modulazione di fase differenziale Vi sono anche tipi ibridi di modulazione. Uno dei più usati è l’amplitude modulated phase shift keying (AM-PSK): ogni coppia di bit viene modulata da una combinazione di ampiezza e fase. Linee digitali Sono linee specificamente usate per istradare il traffico di dati. Non richiedono la presenza di modem ma di una semplice interfaccia verso la linea digitale, detta CDU/CSU ( Channel Service Unit/ Digital Service Unit). Le linee digitali disponibili commercialmente raggiungono velocità di 45 Mb/s e sono utilizzabili sia come servizi commutati (reti a pacchetto), che come servizi dedicati (CDN - Canale Dati Numerico). I servizi digitali dedicati più usati hanno denominazione diversa in America e in Europa: canale T1 - americano, a velocità globale di 1.544 Mb/s suddivisibile in 24 canali da 64 Kb/s, anche affittabili separatamente (T1 frazionario) canale T3 - americano, eqiuvalente a 28 linee T1 o 45 Mb/s canale E1 - europeo, di 2.048 Mb/s suddivisibile in 32 canali a 64 Kb/s ed utilizzato anche da Telecom Italia per il servizio Interbusiness. Pagina 58 “ RETI DI CALCOLATORI E INTERNETWORKING ” 2. RETI DIGITALI A SERVIZI INTEGRATI (ISDN) Lo Integrated Systems Digital Network (ISDN) e' uno standard governato dalla (nota precedentemente come 16CCITT). 15ITU-T Lo standard definisce una specifica generica per telefonia digitale ed è in esistenza dagli anni 1980. Sebbene ISDN offra un metodo completamente nuovo per l'organizzazione dell'informazione trasportata in collegamenti punto-punto (cioè l'uso di un segnale digitale anzichè analogico), uno dei suoi punti di forza principali è la compatibilità con l'infrastruttura esistente telefonica e comunicativa. Si possono usare le centraline esistenti e gran parte dei cavi per collegare stazioni sia private che commerciali. Sebbene ISDN sia progettato per funzionare in modo ottimale con apparecchiature elettroniche speciali, anche i telefoni e i fax standard si possono collegare a ISDN facendo uso di adattatori particolari. Il servizio ISDN tradizionale viene anche detto Narrow Band ISDN (a banda stretta), per differenziarlo dal prossimo venturo Broadband ISDN (B-ISDN - a banda larga). Tipi di Servizi: BRI e PRI Una chiamata tramite ISDN consiste in un canale dedicato tra le due stazioni dedicate, alla velocità di 64 kbit/sec e controllato da un protocollo standard. Un'interfaccia Basic Rate Interface (BRI) consiste di: due canali ”B” (bearer) a 64kbps un canale “D” (delta) a 16 kbps I canali B sono usati per la trasmissione di voce o dati, il canale D per la segnalazione e/o la trasmissione di pacchetti X.25. La BRI è concepita per l'uso privato, ma anche un'organizzazione può possedere più BRI collegati tra loro tramite l'ente telefonico. L'altro servizio disponibile è chiamato Primary Rate Interface (PRI) e consiste in America e in Giappone di 23 canali B ed 1 canale D sull'interfaccia fisica T1, e in Europa ed altri paesi di 30 canali B ed 1 canale D sull'interfaccia fisica E1. 15 16 ITU-T: International Telecommunication Union CCITT: Comitato Consultivo Internazionale Telegrafico e Telefonico Pagina 59 “ RETI DI CALCOLATORI E INTERNETWORKING ” Il PRI si usa tipicamente per connessioni tra un PBX (Private Branch Exchange) ed un Central Office (CO), punto di smistamento locale o a lunga distanza di un fornitore d'accesso telefonico. Il PRI è inteso soprattutto per le organizzazioni e dà la possibilità al centralino PBX di distribuire i canali B a richiesta agli utenti. CONFIGURAZIONE DI BASIC RATE INTERFACE U-Loop Uno U-Loop del BRI è un cavo composto da due poli conduttori con lunghezza massima DI 6000 metri, steso dal CO all'utente. Si può spesso usare lo stesso cavo di un normale collegamento telefonico. TA Per il collegamento a stazioni terminali che usano standard come RS-232 o V.35 è necessario un Terminal Adapter (TA) al punto di connessione a ISDN. Un TA è di solito un piccolo modulo elettronico, o una scheda per computer o per PBX. Non vi è più bisogno di usare i modem analogico-digitali, il collegamento avviene attraverso i TA. Si possono collegare reti LAN a ISDN e usare un canale B per il trasferimento dati. Esistono numerosi bridge e router in commercio spesso con funzionalità aggiunte quali la chiamata a richiesta o la compressione dei dati. NT1 Lo U-Loop è terminato presso l'utente da un Network Termination Device - NT1. Il punto di connessione tra lo NT1 e l'apparecchiatura dell'utente viene detto Punto T. I terminali dati, i fax, i telefoni, ecc. si possono collegare direttamente ad NT1 al Punto T. Se si desidera collegare un PBX allo NT1 il punto di connessione si chiama Punto S. Il Punto S è fisicamente simile ma logicamente diverso dal Punto T, e permette alle apparecchiature del CO di differenziare tra i PBX e le altre apparecchiature terminali (Terminal Equipment - TE). Pagina 60 “ RETI DI CALCOLATORI E INTERNETWORKING ” S/T-bus Lo NT1 opera con un bus detto S/T-bus a 4 conduttori (o 8 conduttori se sono forniti di backup per tensioni di emergenza). La caduta della tensione normale può determinare un servizio diverso, d'emergenza, da parte del CO. Lo S/T-bus può essere implementato con gli stessi cavi per Ethernet 10 base T e può avere fino a 8 nodi collegati al bus. A differenza di Ethernet uno S/T-bus non è limitato ad una configurazione a stella ma può usare derivazioni e connessioni a T. Il canale D è usato per controllare l'accesso ai due canali B da parte degli otto nodi. Uno stesso canale B non può essere usato da più di un nodo contemporaneamente. Arbitraggio TE Una funzione importante di NT1 è di permettere l'accesso ai due canali B del BRI da parte di più nodi. Ciascun nodo rimane in ascolto sul bus in attesa di chiamate e si collega al canale B all'atto della ricezione di una chiamata, o quando identifica un servizio richiesto che può fornire. In tal modo un fax non risponde ad una chiamata a voce o da un computer. Codifica Lo NT1 ha inoltre la funzione di tradurre la codifica usata dai dispositivi terminali nella codifica usata dallo U-Loop e viceversa. Le codifiche sono differenti poiché la codifica NT1-terminale è ottimizzata per la condivisione dei canali, la codifica dello U-Loop è ottimizzata per una trasmissione a lunga distanza al CO remoto. SPID Il Service Profile ID (Identificativo di Profilo di Servizio) - SPID è usato per identificare i servizi e le capacità che il CO può fornire ai terminali ISDN. Lo si usa al momento solo per definire servizi a commutazione di circuito anzichè di pacchetto. Le procedure per gli SPID sono definite nell'appendice A della raccomandazione ITU Q.932. All'aggiunta di un nuovo utente, il personale del CO alloca un nuovo SPID che spesso coincide col numero di telefono dell'utente. Gli utenti devono configurare lo SPID nel loro telefono, computer o altro dispositivo per potersi connettere al CO. Dopo la configurazione dello SPID, i terminali compiono una fase di inizializzazione e Pagina 61 “ RETI DI CALCOLATORI E INTERNETWORKING ” identificazione in cui inviano il proprio SPID sulla rete. Dopo la conferma da parte del CO, lo SPID non è più inviato. Differenze di Base nella Configurazione Negli Stati Uniti la fornitura del NT1 e del TA è a carico dell'utente, mentre in Europa lo NT1 viene fornito dalla compagnia telefonica. A causa di questo, l'equipaggiamento di base dell'utente contatta direttamente lo U-Loop (Punto U) negli Stati Uniti, mentre in Europa si interfaccia al Punto T. Per rimediare a questa situazione la National ISDN User's Forum sta definendo standard per accrescere l'uniformità del servizio ISDN negli Stati Uniti. In Europa è in via di completamento una standard detto NET3. Compatibilità TE/Centrale Lo standard ISDN-1 specifica le modalità di comunicazione tra i TE ed il CO attraverso il protocollo Setup Dialogue di chiamata. In pratica, negli Stati Uniti vi sono compagnie telefoniche con centrali di smistamento diverse che richiedono protocolli di chiamata diversi. Sta spesso ai TE il poter interagire con centrali CO differenti. Installazione e Caratteristiche del Servizio ISDN La linea ISDN può funzionare come due linee telefoniche indipendenti con due numeri diversi. Le funzionalità disponibili per il cliente dipendono dalle capacità delle attrezzature del CO. Il servizio BRI può supportare funzionalità di conferenza, inoltramento e voice mail simili a quelle di un PBX. Come per i telefoni normali, vi è la possibilità che il CO compia lo smistamento per conto clienti di utenti che possiedono più BRI. Senza dover compiere la conversione Analogico/Digitale tramite modem, i computer collegati tramite BRI possono usare tutta la banda di 64 kbps disponibile. Questo facilita applicativi che richiedono banda passante più larga, come audio ad alta fedeltà, immagini video e vari tipi di trasmissioni sicure o codificate. La trasmissione video su ISDN è determinata dallo standard ITU-T H.320. Questo è uno standard riassuntivo: specifica lo standard H.261 per la compressione video, H.221, H.230 e H.242 per la comunicazione e il controllo, G.711, G.722 e G.728 per i segnali audio e numerosi altri standard per applicazioni specializzate. Pagina 62 “ RETI DI CALCOLATORI E INTERNETWORKING ” Un terminale compatibile con lo standard H.320 può supportare audio e video simultaneamente in un canale B con larghezze di banda di 16 kbps per l'audio e 46.4 kbps per il video, con una risoluzione risultante di 352x288 pixel o 176x144 pixel e fino a 30 fotogrammi al secondo. L'immagine risultante è paragonabile ad un nastro VHS. Per applicazioni di video telefonia una frequenza di 15 fotogrammi al secondo è più che accettabile. Bonding Nel tentativo di ottimizzare la trasmissione su ISDN a banda stretta viene suggerito un metodo di multiplessazione inversa detto Bonding, da Bandwidth ON Demand Interoperability Group. Questo è un insieme di protocolli che specificano la suddivisione di comunicazioni su insiemi di canali separati la cui banda totale è combinata. Per esempio un singolo datastream di 384 kbps viene trasmesso su 6 canali a 64 kbps. La specifica definisce un metodo per calcolare il ritardo relativo tra i diversi canali, in modo da ricombinare il datastream sul ricevente. Pagina 63 “ RETI DI CALCOLATORI E INTERNETWORKING ” SMDS E X.25 1. SMDS - SWITCHED MULTIMEGABIT DATA SERVICE Il servizio SMDS (Switched Multimegabit Data Service - servizio di comunicazione dati da multimegabit a commutazione), venne progettato per collegare fra loro molteplici reti locali, tipicamente i vari uffici o stabilimenti di una singola azienda. Venne progettata dalla Bellcore negli anni ottanta e sviluppata nei primi anni novanta con collegamenti regionali di breve distanza. Lo scopo era di produrre un servizio di comunicazione dati ad alta velocità che potesse essere installato con il minimo numero di problemi. SMDS rappresenta il primo servizio commutato a banda ampia (cioè ad alta velocità) offerto al pubblico. Per vedere una situazione in cui SMDS potrebbe risultare utile, si consideri un'azienda con quattro uffici in quattro diverse città, ognuno con una propria rete locale. L'azienda potrebbe desiderare di collegare insieme le varie reti, in modo tale che i pacchetti siano in grado di muoversi da una rete all'altra. Una soluzione potrebbe essere di affittare sei linee ad alta velocità per poter collegare completamente le reti come mostrato in Fig. 1(a). Questa soluzione è certamente possibile, ma costosa. Fig. 1: (a) Quattro reti locali collegate con linee affittate; (b) Collegamento utilizzando SMDS. Pagina 64 “ RETI DI CALCOLATORI E INTERNETWORKING ” Una soluzione, alternativa è di utilizzare SMDS, come in Fig. 1 (b). La rete SMDS agisce come una dorsale ad alta velocità, che permette ai pacchetti di una rete locale di raggiungere ogni altra rete. Tra le reti locali, negli uffici dei clienti, e la rete SMDS, negli uffici della società telefonica, c'è una (breve) linea di accesso affittata dalla società telefonica. Mentre la maggior parte dei servizi delle società telefoniche è stata progettata per il traffico continuativo, SMDS è stato progettato per gestire traffico intermittente. In altre parole, di tanto in tanto ci sono pacchetti che devono essere trasportati da una rete locale all'altra velocemente, ma per la maggior parte del tempo non c'è traffico fra le varie reti locali. La soluzione con linee affittate di Fig. 1 (a) ha il problema di bollette mensili molto elevate; una volta installate, l'utilizzatore deve pagare le linee anche se non vengono utilizzate in modo continuativo. Nel caso di traffico intermittente, le linee affittate sono una soluzione costosa, e SMDS può economicamente competere con esse. Con n reti locali, una rete a linee affittate completamente connessa richiede n(n-1)/2 linee in qualche caso lunghe (quindi costose), mentre SMDS richiede solamente l'affitto di n brevi linee di accesso al router SMDS più vicino. Visto che lo scopo di SMDS è di permettere alle LAN di comunicare fra loro, deve essere veloce a sufficienza per realizzare questo compito. La velocità è normalmente di 45 Mbps, anche se qualche volta velocità inferiori sono disponibili. Le MAN possono operare a 45 Mbps, ma esse non sono commutate, quindi per collegare quattro LAN utilizzando MAN, la società telefonica dovrebbe installare un singolo cavo da LAN 1 a LAN 2 a LAN 3 a LAN 4, cosa che risulta possibile solamente se le LAN sono situate nella medesima città. Con SMDS, ogni LAN si collega a un punto di connessione di una società telefonica che indirizza i pacchetti attraverso la rete SMDS nel modo richiesto per raggiungere la destinazione, possibilmente attraversando molteplici commutatori durante il cammino. Pagina 65 “ RETI DI CALCOLATORI E INTERNETWORKING ” Il servizio base di SMDS è la semplice consegna di pacchetti utilizzando meccanismi privi di connessione. Il formato del pacchetto è mostrato in Fig. 2. Esso ha tre campi: la destinazione (dove deve andare il pacchetto), la sorgente (chi lo ha spedito), e uno spazio utile per i dati dell'utente di lunghezza variabile fino a un massimo di 9188 byte. La macchina sulla LAN mittente che è collegata alla linea di accesso mette il pacchetto su tale linea, e SMDS fa il possibile per consegnarlo alla corretta destinazione. Non vengono fornite garanzie. Fig. 2 Il formato del pacchetto SMDS. Gli indirizzi di sorgente e destinazione consistono di un codice a 4 bit seguito da un numero di telefono di massimo 15 cifre decimali. Le singole cifre sono codificate in campi separati da 4 bit. I numeri di telefono contengono il prefisso della nazione, il prefisso locale, il numero dell'abbonato, in modo tale che il servizio possa essere fornito a livello internazionale. Si pensava che ponendo i numeri telefonici come numeri di indirizzi di rete, si sarebbe riusciti a rendere la nuova offerta più familiare anche agli utenti più scettici. Quando un pacchetto arriva alla rete SMDS, il primo router controlla, per impedire frodi, che l'indirizzo sorgente corrisponda alla linea entrante. Se l'indirizzo non è corretto, il pacchetto viene scartato. Se è corretto, il pacchetto viene spedito verso la propria destinazione. Una caratteristica utile di SMDS è il broadcast. L'utente può specificare una lista di numeri di telefono SMDS, e assegnare un numero speciale a tale lista. Ogni pacchetto inviato a quel numero è consegnato a tutti i membri della lista. La National Association of Securitics Dealers utilizza questo servizio SMDS per diffondere i nuovi listini prezzi ai propri 5000 membri. Pagina 66 “ RETI DI CALCOLATORI E INTERNETWORKING ” Un'ulteriore funzionalità è la visualizzazione degli indirizzi, sia per pacchetti entranti che uscenti. Con la visualizzazione per i pacchetti uscenti, è possibile definire una lista di numeri di telefono e specificare che nessun pacchetto venga indirizzato a numeri fuori da questa lista. Con la visualizzazione per i pacchetti in ingresso, è possibile accettare solamente i pacchetti provenienti da un insieme prestabilito di numeri di telefono. Quando entrambe le funzionalità vengono utilizzate, l'utente può effettivamente creare una rete privata priva di connessioni SMDS al mondo esterno. Il carico utile del pacchetto può contenere una qualsiasi sequenza di byte desiderata dall'utente, fino a 9188 byte. SMDS non si interessa di tali dati. Può contenere un pacchetto Ethernet, un pacchetto IBM token ring, un pacchetto IP o qualsiasi altra cosa. Qualsiasi cosa sia presente nel campo dati viene trasportata senza modifiche dalla rete sorgente a quella destinazione. SMDS gestisce il traffico come segue. Il router collegato a ogni linea di accesso contiene un contatore che viene incrementato a intervalli costanti, per esempio ogni 10 s. Quando un pacchetto arriva al router, si controlla se il contatore è più grande della lunghezza in byte del pacchetto. Se così è, il pacchetto viene spedito senza alcun ritardo e il contatore viene decrementato della lunghezza del pacchetto. Se la lunghezza del pacchetto è maggiore del contatore, il pacchetto viene scartato. Concretamente, con un intervallo di incremento di 10 s, l'utente può spedire a una velocità media di 100.000 byte al secondo, ma la velocità effettiva può essere superiore. Se, per esempio, la linea è rimasta inutilizzata per 10 ms, il contatore sarà 1.000, e l'utente potrà spedire 1 kb alla massima velocità di 45 Mbps, così sarà trasmesso in circa 180 s. Con un linea affittata da 100.000 byte al secondo, lo stesso kilobyte avrebbe richiesto 10 ms. Quindi SMDS offre brevi ritardi per blocchi di dati indipendenti spediti a intervalli ampi, nel caso in cui la quantità media rimanga inferiore al valore accordato. Questo meccanismo fornisce risposte veloci quando è necessario, evitando che gli utenti utilizzino più della banda passante per cui si sono accordati con la società telefonica. Pagina 67 “ RETI DI CALCOLATORI E INTERNETWORKING ” 2. RETI X.25 Molte reti pubbliche più antiche, specialmente fuori dagli Stati Uniti, seguono uno standard chiamato X.25. Esso venne sviluppato durante gli anni settanta dalla 17CCITT per fornire un'interfaccia fra le reti a commutazione di pacchetto e i relativi clienti. Il protocollo del livello fisico, chiamato X.21, specifica l'interfaccia fisica, elettrica e procedurale fra l'host e la rete. Poche reti pubbliche attualmente supportano questo standard, perché esso richiede segnale digitale anziché analogico sulle linee telefoniche. Come soluzione provvisoria, è stata definita una interfaccia analogica simile al noto standard RS-232. Lo standard a livello data link ha un certo numero di possibili varianti (a volte incompatibili). Esse sono progettate per gestire errori di trasmissione della linea telefonica fra le attrezzature dell'utente (host o terminale) e la rete pubblica (router). Il protocollo del livello rete gestisce l'indirizzamento, il controllo del flusso, la conferma della consegna, le interruzioni e gli aspetti correlati. Fondamentalmente esso permette all'utente di stabilire circuiti virtuali e quindi spedire pacchetti contenenti fino a 128 byte di informazione. Tali pacchetti vengono consegnati in modo affidabile e ordinato. La maggior parte delle reti X.25 lavorano a velocità fino a 64 kbps, cosa che le rende obsolete per molte applicazioni. Ciò nonostante, esse sono ancora molto diffuse, così che il lettore potrebbe essere interessato alla loro esistenza. X.25 è orientata alla connessione e supporta sia circuiti virtuali commutati che circuiti permanenti. Un circuito virtuale commutato è creato quando un calcolatore invia un pacchetto alla rete chiedendo di fare una chiamata a un calcolatore remoto. Una volta stabilita, i pacchetti possono essere inviati lungo la connessione, e arriveranno sempre in modo ordinato. X.25 fornisce controllo di flusso, per assicurarsi che un mittente più veloce non possa sovraccaricare un ricevente più lento o impegnato. 17 CCITT: Comitato Consultivo Internazionale Telegrafico e Telefonico Pagina 68 “ RETI DI CALCOLATORI E INTERNETWORKING ” Un circuito virtuale permanente è utilizzato nello stesso modo di uno commutato, ma viene instaurato in modo anticipato attraverso un'intesa fra il cliente e colui che fornisce i collegamenti di rete. Esso è costantemente presente, e nessuna chiamata a procedure di installazione è richiesta per poterlo utilizzare. E’ analogo alle linee affittate. Visto che il mondo è ancora pieno di terminali che non sono in grado di utilizzare lo standard X.25, un altro insieme di standard è stato definito per descrivere come un terminale ordinario (non intelligente) possa comunicare con una rete pubblica X.25. Concretamente, l'utente o l'operatore di rete installa una "scatola nera" a cui i terminali vengono collegati. La scatola nera è chiamata PAD (Packet Assembler Disassembler - assemblatore e disassemblatore di pacchetti), e le sue funzioni sono spiegate in un documento conosciuto come X.3. Un protocollo standard è stato definito fra il terminale e il PAD, chiamato X.28; un altro protocollo standard esiste fra il PAD e la rete, chiamato X.29. Insieme, queste tre indicazioni sono chiamate tripla X. Pagina 69 “ RETI DI CALCOLATORI E INTERNETWORKING ” RETI FRAME RELAY 1. LA TECNICA FRAME RELAY La tecnica trasmissiva detta Frame-mode Bearer Service o Frame Relay è stata introdotta dalla 18ITU-T a partire dalla raccomandazione I.122 del 1988 ed è diventata uno dei contributi piu' significativi allo sviluppo di ISDN. Nella metodologia di commutazione a pacchetto seguita da X.25: viene usata segnalazione in-banda per lo scambio di pacchetti di controllo chiamata la multiplessazione di circuiti virtuali ha luogo a livello 3 (livello Reti del modello OSI) sia il livello 2 (Datalink)che 3 (Reti)espletano funzioni di controllo errori e controllo flusso Questo meccanismo causa ridondanze e ritardi. Ad ogni nodo di rete a livello Data Link avviene l'invio di una trama e la sua conferma di ricezione, e ad ogni nodo intermedio della rete vengono mantenute tabelle di stato per ogni citcuito virtuale attivo. Il Frame Relay tende ad eliminare le inefficienze di X.25: i segnali di controllo chiamata sono su una connessione logica separata da quella per lo scambio dati la multiplessazione e commutazione hanno luogo a livello 2 anziche 3 non vi e' controllo di flusso o di errore tra i nodi intermedi, ma vengono lasciati a livelli software superiori dei nodi terminali La perdita di controllo d'errore e di flusso ai nodi intermedi teoricamente introduce notevoli ritardi di recupero errori, ma in pratica ciò è di rado vero a causa della bontà dei mezzi trasmissivi moderni. Il vantaggio principale è il molto minor numero di operazioni da compiere nello smistamento dei pacchetti, così che la velocità trasmissiva della tecnica Frame Relay 18 ITU-T: International Telecommunication Union Pagina 70 “ RETI DI CALCOLATORI E INTERNETWORKING ” risulta più elevata di almeno un ordine di grandezza rispetto alla tecnica X.25. La raccomandazione I.233 della ITU-T indica l'uso previsto di Frame Relay fino a velocità di 2 Mbps. Le applicazioni che traggono beneficio da Frame Relay su un canale H ad alta velocità sonoi: applicativi interattivi a blocchi di dati, per es. CAD/CAM, che richiedono bassi ritardi e larga banda file transfer, con larga banda ma ritardi più alti applicativi multiplessati a bassa velocità, con possibilità di accesso simultaneo da gruppi vasti di partecipanti traffico a caratteri intenso, con caratteristiche di bassi ritardi, ma trame corte e banda stretta Si può considerare il Frame Relay come una versione snella di X.25 che usa solo due livelli software. Il Frame Relay supporta non solo la multiplessazione ma la distribuzione: si può stabilire una connessione multipla da un utente locale a molti utenti remoti. 2. ARCHITETTURA DEL PROTOCOLLO Vi è una distinzione tra due servizi Frame-mode offerti: Frame Relaying e Frame Switching. Il Frame Relaying è un servizio base di rete per il trasferimento di trame su un canale D, B o H. Il servizio ha le seguenti caratteristiche: E' possibile lo stabilimento di chiamate virtuali multiple o circuiti virtuali permanenti a destinazioni multiple Per le chiamate virtuali, i segnali di controllo viaggiano su un canale separato D I dati utente sono trasmessi col protocollo LAPF a livello data link (Link Access Procedure for Frame-mode services) La rete garantisce la sequenzialità di trasferimento trame La rete scopre errori di trasmissione, formattazione e operazioni e scarta le trame relative Pagina 71 “ RETI DI CALCOLATORI E INTERNETWORKING ” Il servizio Frame Switching è un servizio di rete potenziato per il trasferimento di trame su un canale D, B o H. Ha tutte le caratteristiche del servizio Frame Relaying ed inoltre: Il trasmittente riceve un messaggio di conferma ricezione per ogni trama trasmessa Viene supportato il controllo di flusso in entrambe le direzioni all'interfaccia utente rete La rete scopre e recupera errori di trasmissione, di formattazione e di operazione La rete recupera la situazione di trame perdute o duplicate Il servizio Frame Relaying è inerentemente inaffidabile ma si basa sull'affidabilità intrinseca del mezzo fisico. Il servizio Frame Switching è affidabile e molto simile ad X.25; al giorno d'oggi non vi sono grosse applicazioni del servizio Frame Switching. Il diagramma di architettura di protocolli prevede due piani separati di operazioni: il Piano Utente (U), responsabile del trasferimento dati, con funzionalità puntopunto tra i terminali il Piano di Controllo (C), responsabile dello stabilimento e terminazione delle connessioni logiche, implementato tra l'utente e la rete Pagina 72 “ RETI DI CALCOLATORI E INTERNETWORKING ” I segnali di controllo sono inviati sul canale D e viene usato il protocollo LAPD a livello data link per lo scambio di messaggi di controllo conformi alle raccomandazioni Q.931 e Q.933. LAPD garantisce un servizio affidabile con controllo di errore e di flusso tra l'utente (TE) e la rete (NT). Pagina 73 “ RETI DI CALCOLATORI E INTERNETWORKING ” I dati tra utenti sono inviati tramite il protocollo LAPF, definito da Q.922, che è una versione potenziata di LAPD (Q.921). Vengono in realtà usate solo alcune funzionalità centrali di LAPF: delimitazione, allineamento e trasparenza delle trame multiplessazione trame usando il campo indirizzi ispezione delle trame per garantire un numero intero di byte in seguito alle operazioni di “bit stuffing” ispezione delle trame per garantirne una lunghezza entro limiti definiti detezione di errori di trasmissione funzioni di controllo congestione Pagina 74 “ RETI DI CALCOLATORI E INTERNETWORKING ” 3. CONTROLLO CHIAMATA Vengono distinte le seguenti alternative: 1. se il link di rete locale sia o no capace di fornire il servizio gestione trame di Frame Relay: se non lo è (Caso A), il servizio è fornito da un gestore remoto su un canale B o H; se lo è (Caso B), il servizio può anche essere offerto su canale D, ma questa possibilità non è pienamente specificata 2. se la connessione al gestore trame Frame Relay sia semipermanente o a richiesta: solo nell'ultimo caso è necessario lo stabilimento di connessione Sono distinte due connessioni, connessione di accesso, tra l'utente ed il gestore di Frame Relay, e connessione di frame relay, che usa questa connessione di accesso fino all'utente di destinazione. Col primo tipo di connessione viene usato il protocollo di connessione definito dalla normale raccomandazione Q.933 di ISDN, che usa il canale D. La connessione di frame relay avviene dopo lo stabilimento di una connessione di accesso, e i messaggi sono trasmessi in uno di due modi a seconda che il gestore di Frame Relay sia remoto o locale: Caso A: I messaggi sono scambiati in trame Frame Relay sullo stesso canale B o H usato per le connessioni frame relay, con la stessa struttura di trama, ma con un campo DLCI settato a zero. Il campo Data Link Connection Identifier (DLCI) identifica la connessione logica soggetto del messaggio e permette la multiplessazione di più connessioni logiche sullo stesso canale. Pagina 75 “ RETI DI CALCOLATORI E INTERNETWORKING ” Caso B: I messaggi di controllo chiamata sono trasmessi sul canale D in trame LAPD col campo SAPI=0. In un primo passo l'utente stabilisce una connessione di accesso a commutazione di circuito col gestore di Frame Relay, tramite lo scambio di messaggi SETUP, CONNECT e CONNECT ACK. Nel secondo passo avviene uno scambio direttamente tra l'utente terminale e il nodo Frame Relay per ogni connessione frame relay che viene stabilita, di nuovo tramite lo scambio di messaggi SETUP, CONNECT e CONNECT ACK. Gli elementi informativi scambiati in questi messaggi sono gli stessi che nel protocollo Q.931. In particolare esiste un campo End-to-End Transit Delay, che specifica il ritardo nominale massimo richiesto o indicato per la trasmissione di una trama di dati tra utenti terminali, incluso il tempo di trattamento Frame Relay dei nodi intermedi e terminali. Vengono scambiati inoltre elementi informativi riguardanti parametri del protocollo a livello data link, riguardanti l'efficienza del servizio: Dimensione massima del campo informazioni di trama. Specificato in byte, ha valori di default di 256 byte per il canale D e 4096 byte per i canali B ed H. Gli utenti terminali possono negoziare dimensioni più piccole. Throughput. Numero medio di bit nel campo informazioni di trama trasmesse al secondo, espresso nel formato Ax10^B, ove A è un parametro moltiplicatore e B un parametro esponente. Pagina 76 “ RETI DI CALCOLATORI E INTERNETWORKING ” Troughput minimo accettabile. Il valore minimo al di sotto del quale la connessione deve essere terminata. Dimensione di burst nominale. Il numero massimo di bit che la rete può trasferire in condizioni normali in un intervallo di riferimento T. Dimensione di burst in eccesso. Il numero massimo di bit che la rete tenterà di trasferire, in aggiunta a quelli nominali, in un intervallo di riferimento T. L'intervallo di riverimento è calcolato come T=B/(throughput), ove per B viene normalmente indicata la dimensione di burst nominale se maggiore di zero, altrimenti la dimensione di burst in eccesso se quella nominale è zero. Dimensione della finestra di trasmissione. Ampiezza della finestra scorrevole di controllo di flusso, con valori da 1 a 127. Valore del temporizzatore di ritrasmissione. Tempo di attesa in decimi di secondo che il ricevente attenderà prima di richiedere una ritrasmissione di una trama non giunta. Modo di operazione. Uso di numeri di sequenza a 3 o 7 bit. 4. LAPF Il protocollo Link Access Procedure for Frame-mode bearer services è basato su un'estensione di LAPD ed è usato per il trasferimento trame su tutti i canali utente (B, D ed H). Per la versione Frame Relay del servizio viene usato un sottoinsieme di LAPF noto come Core LAPF. Il formato trama del Core LAPF è simile a quello di LAPD con un'eccezione: assenza del campo di controllo. Questo ha alcune conseguenze: E' possibile un solo tipo di trama, per il trasporto di dati utente. Non vi sono trame di controllo. Non è possibile l'uso di segnalazioni in-banda, una connessione logica può portare solo dati utente. Non è possibile il controllo di errori o di flusso, poiché non vi sono numeri di sequenza. Pagina 77 “ RETI DI CALCOLATORI E INTERNETWORKING ” I campi Flag e Frame Check Sequence (FCS) hanno le stesse funzioni di LAPD e LAPB. Il campo Informazioni porta i dati per i livelli software più alti. Se l'utente decide di implementare funzionalità end-to-end aggiuntive a livello Data Link, il campo Informazioni può a sua volta trasportare una trama data link, per esempio di un protocollo Logical Link Control (LLC) di rete locale. Questo comportamento è trasparente per il Frame Relay. La lunghezza del campo Indirizzo e quindi del campo DLCI è determinata dai bit di Estensione Campo Indirizzi (EA). La lunghezza di default è 2 byte, ma può essere di 3 o 4 byte. Il campo DLCI può essere di 10, 16, 17 o 23 bit. Ogni capo della connessione logica assegna il proprio DLCI da un pool di numeri locali non usati. Per frame relay su canale D si assume un campo Indirizzi a 2 byte e i valori DLCI sono limitati all'intervallo da 512 a 991, che è l'equivalente dei valori da 36 a 61 per il campo SAPI del LAPD. Le trame LAPD possono quindi essere multiplessate con trame frame relay su una connessione su canale D, usando come discriminante i bit da 8 a 3 del primo byte del campo Indirizzi. Nei formati indirizzi a 3 e 4 byte il campo D/C indica se i sei rimanenti bit del byte siano i bit bassi del campo DLCI o siano invece bit di protocollo core diversi, ma al momento bit diversi non sono stati definiti. Il campo bit C/R è specifico di applicativo e non usato dal protocollo core. Gli altri bit del campo indirizzi influenzano il controllo di congestione. La funzione esguita da ISDN nel supporto del frame relay consiste nel routing delle trame a seconda del valore del campo DLCI. La logica di decisione è implementata Pagina 78 “ RETI DI CALCOLATORI E INTERNETWORKING ” concettualmente in un modulo software separato, il Punto di Controllo di frame relay, che è responsabile per le decisioni di routing. Il routing è controllato da linee in una tabella di connessione che mappa le trame provenienti da un canale in ingresso con canali in uscita. Il modulo di gestione routing copia le trame sul canale di uscita indicato dalla tabella di connessione e traduce il campo DLCI della trama prima dell'invio. Questa tecnica è nota come Channel-link Path Routing. Tutti i TE hanno una connessione logica al Punto di Controllo frame relay col valore DLCI=0; queste connessioni sono riservate per il controllo di chiamata. Il Punto di Controllo inoltre verifica la correttezza del campo FCS e in caso di errori semplicemente scarta la trama. Spetta ai protocolli a livelli più alti richiederne la ritrasmissione. Pagina 79 “ RETI DI CALCOLATORI E INTERNETWORKING ” ATM Asynchronous Transfer Mode 1. LA TECNICA ATM La tecnica di multiplazione e commutazione asincrona Asynchronous Transfer Mode (ATM) è stata concepita per fornire una risposta adeguata alle seguenti esigenze: flessibilità rispetto ai differenti requisiti imposti dai servizi; semplice trattamento delle unità informative ad alta velocità; ottimizzazione delle risorse di rete (ad es. migliore utilizzazione dei portanti trasmissivi); ottimizzazione delle prestazioni di rete (per es. minimizzazione dei ritardi di attraversamento). Essa si fonda sulla segmentazione dei flussi informativi eterogenei in celle elementari di lunghezza fissa, a differenza dei pacchetti o trame di lunghezza variabile, tipici della comunicazione dati tradizionale. Il formato unico ed omogeneo imposto all’informazione ne consente un trattamento in rete unificato, più semplice e più rapido; si semplifica di conseguenza, l’hardware che esegue le varie operazioni in rete, raggiungendo velocità di commutazione impossibili con altre tecniche sinora impiegate. In altre parole, la tecnica ATM è una modalità asincrona di multiplazione di tempo adottata per permettere la condivisione della capacità dei canali di comunicazione tra diverse sorgenti. In quanto tecnica di multiplazione, la particolare forza dell’ATM consiste nella sua possibilità di fornire istantaneamente alti valori di larghezza di banda per traffico caratterizzato da brevi periodi di trasmissione ad alta velocità (picchi) intervallati da lunghi periodi di trasmissione a bassa velocità, permettendo l’utilizzo della banda tra i picchi ad altre sorgenti di traffico (vedi la Fig. 1). Pagina 80 “ RETI DI CALCOLATORI E INTERNETWORKING ” Fig. 1: Tipico esempio di trasmissione con brevi periodi ad alta velocità e lunghi periodi a bassa velocità A monte della fase di trasferimento delle celle di un dato flusso informativo, la tecnica ATM prevede che venga realizzato un cammino virtuale tra gli estremi che intendono comunicare. Per questo motivo, la tecnica ATM è una tecnica di tipo connectionoriented. Il flusso informativo è organizzato in celle di lunghezza fissa costituite da un’etichetta di 5 byte (detta “header”) e da un campo informativo di 48 byte (detto “information field” o “payload”) come si può vedere in Fig.2. Fig. 2: Formato della cella ATM Pagina 81 “ RETI DI CALCOLATORI E INTERNETWORKING ” All’interno della rete tutte le funzioni di instradamento sono attuate mediante l’etichetta, mentre il campo dati è trasportato trasparentemente da estremo a estremo. Compito principale delle etichette è identificare le celle appartenenti ad uno stesso flusso informativo o Canale Virtuale. Le celle sono assegnate su richiesta in funzione dell’attività della sorgente e delle risorse di rete disponibili, permettendo quindi un impiego efficiente e dinamico delle risorse stesse. I valori dell’etichetta sono assegnati ad ogni tratta della connessione e rilasciati all’abbattimento della stessa. L’etichetta di ogni cella contiene due campi (VCI – “Virtual Channel Identifier” e VPI – “Virtual Path Identifier”) utilizzati dai nodi di commutazione per il corretto instradamento, e dalle apparecchiature terminali per identificare il flusso informativo a cui una certa cella appartiene. Gli identificatori VCI e VPI sono assegnati ad ogni tratta (nodo-nodo o nodo terminale) della connessione e vengono rilasciati all’abbattimento della stessa. La concatenazione di varie tratte fisiche (“link”), ciascuna caratterizzata da una VCI, rappresenta un canale virtuale (VC- “Virtual Channel”) tra due estremi della rete. Un cammino virtuale (VP – “Virtual Path”) comprende un gruppo di VC che percorrono tratti comuni di rete. In Fig. 3 sono mostrati, ad una data interfaccia, i differenti cammini virtuali che sono multiplati all’interno della capacità del sistema trasmissivo ed identificati dal Virtual Path Identifier (VPI) ed i differenti canali virtuali che fanno parte di un cammino virtuale ed identificati dal Virtual Channel Identifier (VCI). Pagina 82 “ RETI DI CALCOLATORI E INTERNETWORKING ” Fig. 3: Canale Virtuale e Cammini Virtuale Si noti che due differenti canali virtuali, appartenenti a due differenti cammini virtuali, ad una data interfaccia possono avere lo stesso valore per il VCI. Di conseguenza un canale virtuale è completamente identificato dalla coppia di valori VPI + VCI. L’entità fondamentale per l’instradamento della cella ATM per servizi commutati è proprio il canale virtuale. Gli identificatori del canale virtuale (VCI) e/o del cammino virtuale (VPI) sono tradotti, tratta per tratta, per instradare il flusso di celle attraverso la rete secondo il percorso definito nella fase di instaurazione della connessione. Pagina 83 “ RETI DI CALCOLATORI E INTERNETWORKING ” La commutazione di celle ATM, consiste pertanto sia in un cambiamento di multiplex sia in un cambiamento di etichetta fra ingresso ed uscita del commutatore. In particolare, le operazioni per commutare una cella consistono nell’effettuare: Il suo trasferimento fisico dalla terminazione di ingresso alla terminazione di uscita, o commutazione di multiplexing. Il cambiamento dell’indicativo di canale logico, da quello valido sul multiplex entrante a quello valido sul multiplex uscente, o commutazione di etichetta. Nella fase di instaurazione delle connessioni ATM, e grazie alle procedure di segnalazione, avviene un’attività di negoziazione tra utenti e rete per l’assegnazione della banda e della qualità del servizio ad ogni singola connessione, in dipendenza dei requisiti della sorgente e della disponibilità di risorse della rete. Relativamente ad uno specifico servizio, ogni sorgente definisce i propri requisiti in termini di parametri rappresentanti il traffico emesso e la qualità del servizio richiesta. I parametri rappresentanti il traffico che la connessione ATM deve supportare sono i seguenti: PCR “Peack cell rate”: reciproco del minimo di interarrivo tra due celle emesse consecutivamente; è espresso in celle/secondo SCR “Sustainable cell rate”: è una frazione del PCR e rappresenta una misura della frequenza media di emissione delle celle MBS “Maximum burst size”: è una misura del grado di impulsività del traffico emesso dalla sorgente; è il massimo intervallo di tempo durante il quale il valore del SCR può essere superato fino al PCR MCR “Minimun cell rate”: è il reciproco del massimo tempo di interarrivo tra due celle emesse consecutivamente Vedi la seguente Fig. 4 allegata. Pagina 84 “ RETI DI CALCOLATORI E INTERNETWORKING ” Fig. 4: Parametri rappresentanti il traffico di una connessione ATM I parametri che definiscono la qualità del servizio di una connessione ATM rappresentano le prestazioni da estremo a estremo della rete; essi sono i seguenti: CTD “Cell transfer delay”: rappresenta il ritardo di trasferimento subito dalle celle sulla connessione ATM CDV “Cell delay variation”: misura il differente ritardo subito da due celle emesse consecutivamente CLR “Cell loss ratio”: rappresenta il rapporto tra le celle perse e il totale delle celle trasmesse. Vedi Fig. 5 allegata Pagina 85 “ RETI DI CALCOLATORI E INTERNETWORKING ” Fig. 5: CDV e CTD Pagina 86 “ RETI DI CALCOLATORI E INTERNETWORKING ” 2. LA SEGNALAZIONE NELLE RETI ATM (ATM VS. SVC) La realizzazione degli apparati e quindi delle reti in tecnica ATM è stata caretterizzato da un trend di sviluppo graduale, che ha trovato concretezza con la definizione di due modalità di controllo degli apparati, basate sui concetti di permutazione e di commutazione. Il modello di riferimento generale dei protocolli per una rete B-ISDN prevede che oltre allo user plane (che cura il trasferimento del flusso delle informazioni d’utente) siano presenti altri due piani che sono il control plane (che gestisce le informazioni per il controllo della chiamata e della connessione , e tratta quindi il flusso di segnalazione) ed il management plane (che controlla il flusso dei dati di esercizio e manutenzione). Le funzionalità di permutazione e di commutazione risultano essere equivalenti per ciò che riguarda le operazioni da compiere a livello ATM, ma differiscono per la modalità con cui tali operazioni vengono governate da parte dei piani di gestione e di controllo delle connessioni. Si parla infatti di connessioni permutate (o semi-permanenti) PVC – “Permanent Virtual Connections” quando le informazioni residenti nei nodi ATM che governano le funzionalità di conversione di etichetta e di cambio di terminazione fisica sono create e modificate tramite il sistema di gestione dell’apparato ATM. In questa situazione si è quindi in presenza di una configurazione delle connessioni di rete che varia con frequenza piuttosto contenuta nel tempo, e tali connessioni di natura semipermanente sono associate al livello di trasporto Virtual Path (VP), vedi Fig. 6. Pagina 87 “ RETI DI CALCOLATORI E INTERNETWORKING ” Fig. 6: PVC- Permanent Virtual Connection Si parla invece di connessioni commutate (switched connections) SVC – “Switched Virtual Connections” quando le informazioni che controllano le funzioni svolte nei vari nodi sono costruite e modificate in tempo reale in seguito all’interazione tra apparati adiacenti tramite il sistema di segnalazione. In questo caso la configurazione delle connessioni può variare con continuità ed elevata rapidità nel tempo, e tali connessioni di natura così dinamica sono associate al livello di trasporto Virtual Channel (VC), sebbene non esista alcuna preclusione concettuale a trattare connessioni commutate anche al livello VP. Vedi Fig. 6. Pagina 88 “ RETI DI CALCOLATORI E INTERNETWORKING ” Fig. 7: SVC – Switched Virtual Connections Confrontiamo nella seguente tabella quali siano le principali differenze tra le due connessioni sopraindicate: PVC Connessione I punti di connessione sono pre-determinati Tempo di assegnazione e Non in tempo reale; ore o rilascio giorni Tempo di mantenimento “Permanente” – tipicamente misurato in settimane o mesi SVC Flessibile e a richiesta Misurato in millisecondi Dipende dalla durata dell'operazione per cui il collegamento è stato stabilito. Tipicamente secondi, minuti o ore Larghezza di banda A richiesta , non è Fissata per ogni nuovo modificabile collegamento. Variabile dinamicamente durante la chiamata Gestione della rete Controllo della fatturazione Messa a punto e controllo e della qualità del servizio per la fatturazione Indirizzamento Non è richiesto E’ richiesto un programma esplicitamente di numerazione pubblico e costante Sulla scia di queste considerazioni, gli elementi di rete, entrambi abilitati di principio ad operare sia a livello VP sia a livello di VC, sono stati distinti in due categorie: Pagina 89 “ RETI DI CALCOLATORI E INTERNETWORKING ” apparati di permutazione ATM, detti anche cross-connect; autocommutatori ATM detti anche swicth. L’apparato di rete per il controllo di livello VP agisce sulle connessioni che lo attraversano (che sono evidentemente tutte VPC – Virtual Path Connection) traslando la sola etichetta VPI delle celle ed operando contestualmente la loro commutazione spaziale. L’apparato di rete per il controllo di livello VC deve invece innanzitutto provvedere alla terminazione delle connessioni di livello VP, per procedere poi alle operazioni di commutazione dei flussi di livello VC, che possono liberamente essere distribuiti in modo diverso nelle nuove VPC che sono ricostruite in uscita dal nodo. Se confrontate con le procedure di gestione usate per lo stabilimento di connessione permanenti e semi-permanenti, le procedure di segnalazione permettono quindi ad ogni terminale di richiedere alla rete lo stabilimento, la modifica ed il rilascio di una chiamata, specificando i parametri relativi alla connessione in funzione delle esigenze istantanee dell’applicazione (servizi on-demand). Pagina 90 “ RETI DI CALCOLATORI E INTERNETWORKING ” ADSL Asymmetric Digital Subscriber Line 1. L’ACCESSO DIGITALE AD ALTA VELOCITA’ ATTRAVERSO IL DOPPINO TELEFONICO E’ una nuova tecnologia modem, che trasforma le normali linee telefoniche a doppino in percorsi di accesso per la comunicazione dati ad alta velocità di tipo multimediale. La velocità di trasmissione di ADSL supera i 6 Mbit al secondo dalla centrale all'utente e può arrivare fino a 640 Kbit al secondo in senso contrario. Velocità di questo livello espandono la larghezza di banda delle linee telefoniche esistenti di un fattore di 50 o più volte superiore senza necessità di nuovi cablaggi. Fig. 8: Schema di riferimento Grazie all'integrazione senza soluzione di continuità con le dorsali ATM esistenti, ADSL può trasformare una rete limitata alla fonia, al testo e alla grafica a bassa risoluzione com'è l'attuale rete pubblica di distribuzione in rame in un sistema potente e a diffusione capillare, in grado di far entrare entro la fine del secolo la multimedialità, Pagina 91 “ RETI DI CALCOLATORI E INTERNETWORKING ” compreso il video full motion, in tutte le case. ADSL svolgerà un ruolo fondamentale nei prossimi dieci anni con l'entrata delle compagnie telefoniche in nuovi mercati per la distribuzione di informazioni in Formato video e multimediale. Ci vorrebbero decenni per far arrivare a tutti i potenziali utenti i nuovi cavi a larga banda, mentre il successo di questi nuovi servizi dipenderà dalla loro erogazione al numero più elevato possibile di utenti entro i prossimi anni. Portando le LAN aziendali, Internet, i film, i programmi televisivi, i cataloghi in formato video e i CD-ROM remoti nelle abitazioni e nei piccoli uffici, ADSL renderà possibili e redditizi questi nuovi mercati sia per le compagnie telefoniche sia per i fornitori di applicazioni. 2. STANDARD E ASSOCIAZIONI II gruppo di lavoro T1E1.4 dell' American National Standard Institute (ANSI) ha approvato di recente uno standard ADSL che prevede velocità fino a 6,1 Mbit al secondo (Norma ANSI T1.413). A sua volta, l'European Technical Standards Institute (ETSI) ha predisposto un allegato a T1.413 che tiene conto delle esigenze europee. Attualmente T1.413 prevede un'interfaccia singola al sito cliente mentre la prossima versione, Issue II, allo studio di T1 E1 .4, amplierà lo standard per includere un'interfaccia multiplexed al sito cliente, protocolli per la configurazione e gestione di rete e altre migliorie. L'ATM Forum e DAVIC hanno entrambi riconosciuto ADSL come 19protocollo di livello uno su doppino non schermato. 19 Protocollo di livello uno: per ridurre la complessità di progettazione, la maggior parte delle reti è organizzata come una serie di strati o livelli. In tutte le reti, lo scopo di ogni livello è di offrire certi servizi al livello superiore schermando quel livello dai dettagli di come i servizi offerti sono realizzati. Il livello n su una macchina permette una conversazione con il livello n di un’altra macchina. Le regole e le convenzioni usate in queste conversazioni sono generalmente conosciute come il protocollo del livello n. In generale. Le entità che comprendono il corrispondente livello su macchine differenti sono chiamate pari (peer). In altre parole, sono i pari che comunicano utilizzando il protocollo. In realtà nessun dato viene trasferito dal livello n su una macchina al livello n su un’altra. Invece, ogni livello passa al livello immediatamente sotto di sé dati e informazioni di controllo, fino a che viene raggiunto il livello più basso. Sotto il livello 1 c’è il mezzo fisico attraverso il quale avviene la comunicazione. Pagina 92 “ RETI DI CALCOLATORI E INTERNETWORKING ” Fig. 9: Modello di riferimento del sistema definito da ADSL Forum 3. CODIFICA DI TRASMISSIONE “DMT” CONTRO “CAP” Sono due gli standard di codifica e trasmissione che si fronteggiano in campo ADSL. II primo standard, QAM (quadrature amplitude/phase modulation) è ormai praticamente fuori gioco, sostituito dai due contendenti attuali, CAP (carrierless amplitude/ phase modulation) e DMT (discrete multitone). CAP utilizza i dati in entrata per modulare una singola portante, che viene successivamente trasmessa lungo il cavo. Poiché la portante non presenta contenuto informativo, viene soppressa prima della trasmissione e poi ricostruita all'altro capo, da cui il termine "carrierless" (senza portante). E' stata la prima tecnologia a essere lanciata sul mercato ma attualmente il suo primato è messo seriamente in discussione da DMT. DMT funziona distribuendo i dati in entrata su un numero elevato di piccole portanti distinte, creando 256 sottocanali discreti nella banda compresa tra 26 kHz e 1,1 Mhz. Presenta numerosi vantaggi rispetto a CAP il più importante dei quali consiste nella Pagina 93 “ RETI DI CALCOLATORI E INTERNETWORKING ” capacità di adattamento alle condizioni della linea per raggiungere il throughput più alto possibile. Potenzialmente, ciascun sottocanale può variare il data rate, evitando quindi zone di rumore specifiche. Inoltre è più robusto sulle lunghe distanze, fornisce una migliore protezione dal rumore e una maggiore flessibilità nella velocità di trasmissione. DMT è stato approvato come norma ANSI e una maggioranza significativa dei produttori di chip l'hanno scelto per i propri chip set ADSL. Anche se i fautori di CAP hanno promesso di aggiungere funzionalità supplementari che avvicinerebbero CAP a DMT, i vantaggi di quest'ultimo sono tali che, con tutta probabilità, risulterà il vincitore della contesa per gli standard. Fig. 10: Esempio di spettro usato da DTM 4. ATM SU ADSL Nell'aprile 1997 I'ADSL Forum ha annunciato di aver approvato una raccomandazione tecnica (TR-002) per far transitare il traffico ATM su ADSL. Scopo della raccomandazione, stilata in collaborazione con ATM Forum e ANSI, è quello di "fornire linee guida complete per la selezione di bearer channel (canali di trasporto) per il traffico ATM e fornire un'interpretazione chiara dei relativi paragrafi dello standard ANSI T1.413". Pagina 94 “ RETI DI CALCOLATORI E INTERNETWORKING ” Con la pubblicazione di TR-002, i carrier possono cominciare a pianificare l'introduzione di ATM su ADSL nelle proprie reti, per offrire servizi ATM sia a piccoli uffici che alle sedi remote di grandi aziende. II carrier sarà in grado di spingere i margini della "nuvola ATM" all'interno del sito del cliente, con aggregazione del traffico dai singoli collegamenti nel punto di accesso alla rete pubblica e il suo instradamento sul "core" ATM. Le piccole sedi remote possono entrare a far parte della rete geografica (WAN) aziendale mentre le loro reti locali (LAN), soprattutto quelle che utilizzano la tecnologia ATM, diventeranno pienamente integrate; gli utenti che operano dalle sedi remote potranno accedere alle Intranet aziendali e scaricare da esse a velocità molto elevate. 5. TESTING DELLA TECNOLOGIA L'ADSL Forum ha individuato più di 41 società che stanno effettuando esperimenti in tal senso in molte parti degli Stati Uniti e del Canada, dai colossi RBOC ai piccoli 20ISP. Queste società offrono tutte indistintamente accesso a Internet e interconnessione LAN mentre solamente la Pacific Bell di San Ramon in California offre un servizio di "video on demand". Potrebbe apparire significativo il fatto che, oltre alle società di telecomunicazioni, in due esperimenti siano coinvolte anche software house. A Redmond, GTE e Microsoft stanno effettuando test relativi al telelavoro e accesso a Internet mentre a Boston, NYNEX e Lotus stanno provando l'accesso a LAN e a Internet. Nel resto del mondo la situazione si presenta diversa. Anche se sono almeno 24 le società che stanno effettuando dei test, 16 in Europa e 8 nell'area del Pacifico, questi esperimenti vertono soprattutto sul Video On Demand oppure sul Near Video On 20 ISP: Internet Service Provider Pagina 95 “ RETI DI CALCOLATORI E INTERNETWORKING ” Demand (NVOD). (Video on demand offre la possibilità di selezionare e controllare un video come se si trovasse all'interno del proprio videoregistratore, mentre NVOD esegue copie multiple di un video, con orari di inizio scaglionati, per cui non ci si trova mai oltre i 15 o 30 minuti dall'inizio di un programma). Questo è un retaggio delle aspettative originarie suscitate dalla tecnologia e spesso riflette il quadro normativo dei vari paesi. Sono ancora pochi gli esperimenti che forniscono anche accesso a Internet o connettività LAN ma alcuni studi indicano che, quando si passerà alla fase successiva di testing, questi aspetti acquisteranno su scala mondiale la stessa importanza che rivestono attualmente nell'America settentrionale. L'esperienza pratica dimostra che i risultati effettivi possono essere di gran lunga inferiori rispetto alle prestazioni teoriche. Gran parte del rame non è nuovo ed è soggetto a fenomeni di corrosione, per cui il calibro effettivo é minore. Le vecchie giunzioni potrebbero essersi corrose o essere di scarsa qualità mentre anche le modifiche o i giunti inseriti in un sistema in fase di sviluppo potrebbero avere la loro importanza. In ogni caso , anche in assenza di tutti questi vincoli , ADSL garantisce livelli prestazionali elevati per il famoso "ultimo chilometro". Nel breve periodo è accettabile I'uso anche di rame vecchio e la sostituzione di quest'ultimo con rame nuovo comunque meno costosa delle fibre ottiche. Soprattutto nei casi in cui il volume di traffico previsto è ridotto, ADSL rende possibile la fornitura di servizi ad alta velocità senza dover effettuare investimenti ingenti nelle fibre ottiche. Pagina 96 “ RETI DI CALCOLATORI E INTERNETWORKING ” 6. E’ARRIVATO IL MOMENTO DI ATM ATM è stato considerato una tecnologia emergente così a lungo che non ci si è resi conto del fatto che ormai è una tecnologia affermata. ATM utilizza celle standard per tutti i tipi di traffico, differenziando il contenuto delle celle nell'intestazione per dare priorità al traffico in tempo reale, ovvero fonia o video, rispetto alla trasmissione dati. ATM è anche un sistema deterministico: poiché viene creato un circuito virtuale per la durata della connessione, tutte le celle sono soggette alla stessa latenza e questo aspetto, unito a velocità di 155 Mbit al secondo, ne fanno la tecnologia ideale per il traffico multimediale, garantendo nel contempo prestazioni elevate alla trasmissione dati e ad altri tipi di traffico. Una rete ATM consente a numerosi utenti di condividere la larghezza di banda. Ciascun utente vede solo la propria rete ma, a differenza di una rete dedicata vera e propria, gli utenti possono aggiungere larghezza di banda per far fronte ai picchi di traffico, anche all'interno di una determinata connessione, confidando nel fatto che altri utenti non stanno utilizzando in quel momento la banda loro allocata. Si tratta di una modalità di networking ad altre prestazioni economica sia per l'utente sia per I'operatore. Pagina 97 “ RETI DI CALCOLATORI E INTERNETWORKING ” L'ATM Forum ha ratificato di recente il protocollo MPOA (multiple protocols over ATM) dimostrando l'interoperabilità tra le reti ATM per protocolli diversi. L'industria delle telecomunicazioni nel suo complesso sta lavorando per l'IP su ATM, rendendo ATM la tecnologia d'elezione per le interconnessioni LAN. Pagina 98 “ RETI DI CALCOLATORI E INTERNETWORKING ” INTERNETWORKING 1. CIDR – ROUTING INTERDOMINIO SENZA CLASSE IP (Internet Protocol) è stato usato tantissimo per oltre un decennio. Ha funzionato molto bene, come ha dimostrato la crescita esponenziale di Internet. Sfortunatamente, IP sta rapidamente diventando vittima della propria popolarità: sta esaurendo gli indirizzi. L'incombente disastro ha suscitato un gran numero di discussioni e controversie su cosa fare. In questo paragrafo descriveremo sia il problema che molte delle soluzioni proposte. Già nel 1987, alcuni lungimiranti predissero che un giorno Internet sarebbe potuta crescere fino a 100.000 reti. Gran parte degli esperti si fecero beffe di questa previsione, credendola lontana di decenni. Le 100.000 reti sono state connesse nel 1996. Il problema, esposto semplicemente, è che Internet sta rapidamente esaurendo gli indirizzi. Teoricamente esistono oltre 2.000.000.000 di indirizzi, ma la pratica di organizzare lo spazio di indirizzamento in classi ne spreca milioni. In particolare, il vero problema sono gli indirizzi di classe B. Per molte organizzazioni, una rete di classe A, con 16.000.000 dì indirizzi è troppo grande, e una rete di classe C, con 256 indirizzi è troppo piccola. Una rete di classe B con 65.536 indirizzi è quella giusta. In realtà, un indirizzo di classe B è ancora troppo grande per gran parte delle organizzazioni. Alcuni studi hanno mostrato come più della metà delle reti di classe B abbiano meno di 50 host. Una rete di classe C sarebbe andata meglio, ma non c'è dubbio che ogni organizzazione che ha chiesto un indirizzo di classe B pensava di crescere oltre gli 8 bit del campo host. In retrospettiva, sarebbe stato meglio fare in modo che le reti di classe C utilizzassero 10 bit al posto di 8, permettendo 1022 host per rete. In questo caso, gran parte delle organizzazioni avrebbe scelto probabilmente una rete di classe C, di cui ce ne sarebbero state 500.000 (al posto delle 16.384 reti di classe B). Pagina 99 “ RETI DI CALCOLATORI E INTERNETWORKING ” Tuttavia, un ulteriore problema è emerso più velocemente: l'esplosione delle tabelle di routing. Dal punto di vista dei router, lo spazio di indirizzamento IP è una gerarchia a due livelli, con l'identificatore di rete e l'identificatore di host. I router non devono conoscere tutti gli host. ma devono conoscere tutte le reti. Se esistessero 500.000 reti di classe C, ogni router in Internet avrebbe bisogno di una tabella con 500.000 registrazioni, una per rete, contenente la linea da utilizzare per raggiungere tale rete e alcune altre informazioni. La memorizzazione effettiva di tabelle da 500.000 registrazioni è probabilmente fattibile, sebbene costosa per router critici che mantengono le loro tabelle in RAM statiche sulle schede di I/O. Un problema più serio è il fatto che la complessità di molti algoritmi collegati alla gestione delle tabelle cresce più che linearmente. Peggio ancora, gran parte dei software e del firmware dei router esistenti è stata progettata quando Internet aveva 1.000 reti connesse, e 10.000 reti sembravano lontane decenni. Le scelte di progetto elaborate allora sono oggi lontane dall'essere ottimali. Inoltre, molti algoritmi di routing richiedono la trasmissione periodica delle tabelle. Più grandi sono le tabelle, più facilmente qualche parte di esse verrà persa lungo la strada, causando incompletezza dei dati presso la destinazione, e al limite instabilità nel routing. I problemi delle tabelle di routing avrebbero potuto essere risolti scegliendo una gerarchia più profonda. Ad esempio, potrebbe essere utile avere un campo per il paese, lo stato, la città, la rete e l'host. Quindi ogni router dovrebbe sapere come raggiungere ogni paese, ogni stato (o provincia) nel suo paese, ogni città nel suo stato (o provincia), e ogni rete nella sua città. Sfortunatamente, questa soluzione richiederebbe più di 32 bit per gli indirizzi IP e utilizzerebbe inefficientemente gli indirizzi (il Liechtenstein avrebbe lo stesso numero di bit degli Stati Uniti). In breve, molte soluzioni risolvono un problema, ma ne creano un altro. Una soluzione che sta per essere implementata e darà a Internet un po' di fiato è CIDR (ClassIess Pagina 100 “ RETI DI CALCOLATORI E INTERNETWORKING ” InterDomain Routing - routing interdominio senza classi). L'idea base di CIDR, che è descritto in RFC 1519, è quella di allocare le reti di classe C rimaste (non più di 2.000.000) in blocchi di dimensioni variabili. Se un sito necessita di 2000 indirizzi, viene fornito di un blocco di 2048 indirizzi (8 reti di classe C contigue), e non un indirizzo completo di classe B. In modo simile, un sito che necessita di 8000 indirizzi ne riceve 8192 (32 reti di classe C contigue). Oltre a usare blocchi contigui di reti di classe C come unità. in RFC 1519 vennero cambiate anche le regole di allocazione per gli indirizzi di classe C, nel modo seguente: Indirizzi da 194.0.0.0 a 195.255.255.255 sono per l'Europa Indirizzi da 198.0.0.0 a 199.255.255.255 sono per il Nord America Indirizzi da 200.0.0.0 a 201.255.255.255 sono per il Sud e il Centro America Indirizzi da 202.0.0.0 a 203.255.255.255 sono per l'Asia e il Pacifico In questo modo, ogni regione viene fornita di 32.000.000 di indirizzi allocabili, con altri 320.000.000 di indirizzi di classe C da 204.0.0.0 fino a 223.255.255.255 tenuti da parte per il futuro. Il vantaggio di questa allocazione è il fatto che ora ogni router esterno all'Europa che riceve un pacchetto indirizzato a 194.xx.yy.zz o 195.xx.yy.zz può spedirlo al suo gateway europeo standard. In effetti 32.000.000 di indirizzi sono stati compressi in una singola registrazione della tabella di routing. Lo stesso avviene per le altre regioni. Naturalmente una volta che un pacchetto 194.xx.yy.zz raggiunge l'Europa, sono necessarie tabelle di routing più dettagliate. Una possibilità è quella di avere 131.072 registrazioni per le reti da 194.0.0.xx a 195.255.255.xx, ma ciò è precisamente quell'esplosione delle tabelle di routing che stiamo cercando di evitare. Al suo posto. ogni tabella di routing viene estesa con un maschera di 32 bit. Quando arriva un pacchetto, il suo indirizzo di destinazione viene innanzitutto estratto. Quindi (concettualmente) la tabella di routing viene scandita registrazione per registrazione, mascherando l'indirizzo di destinazione e comparandolo con le registrazioni in tabella cercando una corrispondenza. Pagina 101 “ RETI DI CALCOLATORI E INTERNETWORKING ” Per rendere più chiaro questo processo di confronto, consideriamo un esempio. Si supponga che l'Università di Cambridge abbia bisogno di 2048 indirizzi e che le vengano assegnati gli indirizzi da 194.24.0.0 a 194.24.7.255, assieme alla maschera 255.255.248.0. Successivamente l'Università di Oxford richiede 4096 indirizzi. Poiché un blocco di 4096 indirizzi deve trovarsi a un confine di 4096 byte, non può ricevere gli indirizzi che partono da 194.8.0.0. Al loro posto riceve gli indirizzi da 194.24.16.0 fino a 194.24.31.255 assieme alla maschera 255.255.240.0. A questo punto l'Università di Edimburgo richiede 1024 indirizzi e riceve ali indirizzi da 194.24.8.0 a 194.24.11.255 e la maschera 255.255.252.0. Le tabelle di routing di tutta Europa vengono aggiornate con tre registrazioni ognuna delle quali contiene un indirizzo di base e un maschera. Queste registrazioni (in binario) sono: Indirizzi Maschere Cambridge 11000010 00011000 00000000 00000000 11111111 11111111 11111000 00000000 Oxford 11000010 00011000 00010000 00000000 11111111 11111111 11110000 00000000 Edimburgo 11000010 00011000 00001000 00000000 11111111 11111111 11111100 00000000 A questo punto si consideri cosa succede quando arriva un pacchetto indirizzato a 194.24.17.4, che in binario corrisponde a: 11000010 00011000 00010001 00000100 Innanzitutto viene messo in AND booleano con la maschera di Cambridge ottenendo: 11000010 00011000 00010000 00000000 Questo valore non corrisponde all'indirizzo base di Cambridge, e quindi l'indirizzo originale viene messo in AND con la maschera di Oxford ottenendo: 11000010 00011000 00010000 00000000 Pagina 102 “ RETI DI CALCOLATORI E INTERNETWORKING ” 2. CIRCUTI VIRTUALI CONCATENATI Esistono fondamentalmente due stili di interconnessione: una concatenazione orientata alla connessione di reti basate su circuiti virtuali, oppure un'internet basata su datagram. Nel modello basato su circuiti virtuali concatenati, mostrato in Fig. 1, una connessione con un host di una rete distante viene creata in modo simile al modo in cui normalmente vengono create le connessioni. La rete si accorge che la destinazione non è locale e stabilisce un circuito virtuale con il router più vicino alla rete di destinazione. Quindi costruisce un circuito virtuale da quel router a un "gateway" esterno (router multiprotocollo). Questo gateway memorizza l'esistenza del circuito virtuale nelle sue tabelle e inizia a stabilire un ulteriore circuito virtuale con un router della prossima rete. Questo processo continua fino a quando la destinazione non viene raggiunta. Una volta che i pacchetti iniziano a viaggiare lungo il percorso, ogni gateway ritrasmette i pacchetti ricevuti, convertendo i formati dei pacchetti e i numeri di circuito virtuale a seconda delle necessità. Chiaramente, tutti i pacchetti di dati devono attraversare la stessa sequenza di gateway e quindi arrivano in ordine. La caratteristica principale di questo approccio è la creazione di una sequenza di circuiti virtuali dalla sorgente attraverso uno o più gateway fino alla destinazione. Ogni gateway mantiene alcune tabelle in cui registra quali circuiti passano attraverso di esso, dove devono essere instradali e qual è il nuovo numero di circuito virtuale. Sebbene la figura Fig. 1 mostri una connessione realizzata attraverso un gateway normale, potrebbe essere realizzata ugualmente tramite half-gateway. Fig. 1: Interconnessione di reti basata su circuiti virtuali concatenati Pagina 103 “ RETI DI CALCOLATORI E INTERNETWORKING ” Il funzionamento di questo schema è migliore quando tutte le reti hanno approssimativamente le stesse proprietà. Ad esempio se ogni rete garantisse la consegna affidabile dei pacchetti dei livello rete (escludendo quindi crash lungo il percorso), il flusso dalla sorgente alla destinazione sarebbe anch'esso affidabile. In modo simile, se nessuna di esse garantisse la consegna affidabile, nemmeno la concatenazione dei circuiti virtuali sarebbe affidabile. D'altra parte, se la macchina sorgente è in una rete che garantisce la consegna affidabile, mentre una delle reti intermedie può perdere pacchetti, la concatenazione cambia fondamentalmente la natura del servizio. I circuiti virtuali concatenati sono comuni anche nel livello trasporto. In particolare, è possibile costruire una connessione utilizzando. ad esempio. OSI, il quale termina presso un gatewav, e avere una connessione TCP da quel gatewav a quello successivo. In questo modo è possibile costruire un circuito virtuale end-to-end che attraversa reti e protocolli differenti. Internetworking senza connessioni Un modello di internet alternativo è quello basato su datagram, mostrato in Fig. 2. In questo modello, l'unico servizio che il livello rete offre al livello trasporto è la capacità di inserire datagram in una rete e sperare per il meglio. Non esiste alcuna nozione di circuito virtuale nel livello rete, figuriamoci poi il concetto di concatenazione di circuiti. Fig.2: Un’internet senza connessioni Pagina 104 “ RETI DI CALCOLATORI E INTERNETWORKING ” Questo modello non richiede che tutti i pacchetti appartenenti a una connessione attraversino la stessa sequenza di gatewav. In Fig. 2 si mostra come datagram dell'host 1 diretti all'host 2 possano prendere percorsi differenti lungo la rete. Le decisioni di routing vengono prese separatamente per ogni pacchetto, e possono dipendere dal traffico presente nel momento in cui il pacchetto viene spedito. Questa strategia può utilizzare più di un percorso e ottenere quindi una banda maggiore di quella del modello basato su circuiti virtuali concatenati. D'altra parte. non esistono garanzie che i pacchetti arrivino, alla destinazione in ordine, già assumendo che arrivino. Il modello di Fig. 2 non è così semplice come sembra. Innanzitutto. se ogni rete ha il proprio protocollo di livello rete, non è possibile far transitare un pacchetto di una rete sopra un'altra. Si potrebbe immaginare che i router multiprotocollo cerchino effettivamente di tradurre da un formato a un altro, ma a meno che i due formati siano parenti stretti con gli stessi campi di informazione, tale conversione sarà sempre incompleta e spesso votata al fallimento. Per questo motivo si tenta raramente la conversione. Un secondo e più serio problema è l'indirizzamento. Si immagini un caso semplice: un host in Internet sta cercando di spedire un pacchetto IP a un host appartenente a una rete OSI contigua. Il protocollo OSI basato su datagram, CLNP è basato su IP e gli somiglia a tal punto che una conversione potrebbe funzionare. Il problema è il fatto che il preambolo dei pacchetti IP contiene l'indirizzo Internet della destinazione lungo 32 bit, mentre gli host OSI non hanno indirizzi Internet a 32 bit, ma utilizzano indirizzi decimali simili ai numeri telefonici. Per consentire a un router multiprotocollo di convertire i formati, qualcuno dovrebbe assegnare un indirizzo Internet a 32 bit a ciascuno degli host OSI. Portato all'estremo, questo approccio significherebbe assegnare un indirizzo Internet a ogni macchina nel mondo con cui un nodo Internet potrebbe desiderare di parlare. Significherebbe anche l'assegnazione di un indirizzo OSI a ognuna delle macchine nel mondo con cui un host OSI vorrebbe poter comunicare. Lo stesso problema si presenta con ogni altro spazio di indirizzamento (SNA, Apple talk ecc.). Pagina 105 “ RETI DI CALCOLATORI E INTERNETWORKING ” Questi problemi sono insormontabili; inoltre, qualcuno dovrebbe mantenere un database che "mappi" qualsiasi cosa con qualsiasi altra. Un'altra idea è quella di progettare un pacchetto ''internet'' universale e fare in modo che tutti i router siano in grado di riconoscerlo. Questo approccio coincide con l'idea di IP - un pacchetto progettato per essere trasportato attraverso molte reti. L'unico problema è dato dall'esistenza di altri formati universali come IPX e CLNP, che quindi sono tutto tranne che universali. Ottenere che tutti concordino su un singolo formato è semplicemente impossibile. A questo punto, ricapitoliamo sommariamente i due modi per affrontare il problema di internetworking. Il modello basato su circuiti virtuali concatenati ha essenzialmente, gli stessi vantaggi di utilizzare i circuiti virtuali all'interno di una rete singola: i buffer possono essere prenotati in anticipo, è possibile garantire l'ordinamento, possono essere utilizzati preamboli più brevi, e i problemi causati da pacchetti duplicati in ritardo possono essere evitati. Ha anche alcuni svantaggi, come ad esempio la necessità di spazio nelle tabelle dei router per ognuna delle connessioni aperte, la mancanza di percorsi alternativi per evitare le aree congestionate e la vulnerabilità verso i guasti dei router lungo il cammino. Ha anche lo svantaggio che è difficile (se non impossibile) da implementare se una delle reti coinvolte e una rete a datagram non affidabile. Le proprietà dell'approccio basato su datagram sono le stesse di quelle delle reti datagram: maggiore potenzialità di congestione, ma anche maggiore potenzialità di adattarsi a essa, robustezza nel caso di guasti ai router, e preamboli più lunghi. In un'internet, è possibile utilizzare diversi algoritmi di routing adattivo, proprio come nel caso di una singola rete basata su datagram. Uno dei vantaggi principali dell'approccio basato su datagram all'internetworking è il fatto di poter essere utilizzato anche su reti che non usano i circuiti virtuali al loro interno. Molte LAN, reti mobili (ad es. flotte aeree e navali), e anche alcune WAN Pagina 106 “ RETI DI CALCOLATORI E INTERNETWORKING ” cadono in questa categoria. Quando un'internet include una di queste reti, possono sorgere seri problemi se la strategia di internetworking è basata sui circuiti virtuali. 3. TUNNELLING Gestire il caso generale di interconnessione di due reti differenti è eccessivamente complesso. Tuttavia, esiste un caso speciale che è trattabile, e cioè quando gli host sorgente e destinazione appartengono allo stesso tipo di rete, ma esistono reti differenti lungo il cammino. Come esempio, si pensi a un banca internazionale con una Ethernet basata su TCP/IP a Parigi, una Ethernet basata su TCP/IP a Londra e una WAN PTT nel mezzo, come mostrato in Fig. 3. Fig. 3: Tunneling di un pacchetto da Parigi a Londra La soluzione a questo problema è una tecnica chiamata tunneling (incapsulamento). Per spedire un pacchetto IP all'host 2, l'host 1 costruisce un pacchetto contenente l'indirizzo IP dell'host 2, lo inserisce in un frame Ethernet indirizzato al router multiprotocollo di Parigi. e lo inserisce nella Ethernet. Quando il router multiprotocollo riceve il frame rimuove il pacchetto IP, lo inserisce nel campo contenuto del pacchetto della rete WAN e invia quest'ultimo all'indirizzo WAN del router multiprotocollo di Londra. Quando arriva, il router di Londra rimuove il pacchetto IP e lo spedisce all'host 2 all'interno del frame Ethernet. La WAN può essere vista come un grande tunnel che si estende da un router multiprotocollo all'altro. Il pacchetto IP viaggia da un estremo a un altro della rete, sicuro nella sua bella scatola. Non deve preoccuparsi di sapere Pagina 107 “ RETI DI CALCOLATORI E INTERNETWORKING ” nulla della WAN, né lo devono fare gli host in entrambe le Ethernet. Solo il router multiprotocollo deve essere in grado di corrispondere i pacchetti IP e WAN. In effetti, l'intera tratta dal centro di un router multiprotocollo al centro dell'altro router agisce come una linea seriale. Un'analogia può chiarire il concetto di tunneling. Si consideri una persona che sta guidando la sua auto da Parigi a Londra. In Francia, la macchina si muove autonomamente; quando raggiunge la Manica, viene caricata su un treno ad alta velocità e trasportata in Inghilterra attraverso il tunnel sotto la Manica (che non può essere percorso direttamente dalle auto). In effetti, l'auto viene trasportata come merce, come illustrato in Fig. 4. Alla Fine, l'auto viene lasciata sulle strade inglesi e riprende a muoversi autonomamente. Il tunneling dei pacchetti attraverso una rete straniera lavora allo stesso modo. Fig. 4 Incanalamento di un'auto dalla Francia all'Inghilterra 4. ROUTING ALL’INTERNO DI INTERNET Il routing all'interno di Internet è simile al routing all'intemo di una singola rete, ma con alcune complicazioni aggiuntive. Si consideri ad esempio l'internet di Fig. 5(a) nella quale cinque reti sono connesse da sei router multiprotocollo. Disegnare un grafico di questa situazione è reso più complicato dal fatto che ogni router multiprotocollo può accedere direttamente (cioè spedire pacchetti) a ogni altro router compreso in qualsiasi rete alla quale è connesso. Ad esempio, B in Fig. 5(a) può accedere direttamente ad A e C attraverso la rete 2 e a D attraverso la rete 3. Questo porta al grafo di Fig. 5(b). Una volta che il grafo è stato costruito, all'insieme dei router Pagina 108 “ RETI DI CALCOLATORI E INTERNETWORKING ” multiprotocollo possono essere applicati gli algoritmi di routing conosciuti, come il distance vector routing e il link state routing. Fig. 5: (a) Un’internet; (b) Un grafo dell’internet Questo dà origine a un algoritmo di routing a due livelli: all'interno di ogni rete viene utilizzato un interior gateway protocol (protocollo di routing tra gateway interni). mentre fra la reti viene utilizzato un exterior gateway protocol (protocollo di routing tra gateway esterni), dove "gateway" è un termine obsoleto per "router". In effetti, poiché ogni rete è indipendente, ognuna di esse potrebbe utilizzare un algoritmo differente. Poiché ogni rete in un'internet è indipendente dalle altre, spesso ci si riferisce a essa come a un sistema autonomo (Autonomous System, o AS). Un tipico pacchetto internet parte dalla propria LAN indirizzato al router multiprotocollo locale (nel preambolo del livello 21MAC). Dopo esservi giunto, il protocollo dei livello rete decide a quale router multiprolocollo inoltrare il pacchetto, usando le proprie tabelle di routing. Se quel router può essere raggiunto utilizzando il protocollo di rete nativo per il pacchetto, questo viene inoltrato direttamente. Altrimenti viene incapsulato nel protocollo richiesto dalla rete che viene utilizzata. Questo processo viene ripetuto finché il pacchetto non raggiunge la rete di destinazione. Una delle differenze tra il routing di tipo internet e il routing di tipo intranet è il fatto che spesso il routing di tipo internet richiede di attraversare confini nazionali. Entrano in gioco all'improvviso svariate leggi, come ad esempio la severa legge svedese sulla privacy (sull'esportazione di dati personali di cittadini svedesi). Un altro esempio è la 21 MAC: Multiple Access with Collision (Accesso multiplo con collisione) Pagina 109 “ RETI DI CALCOLATORI E INTERNETWORKING ” legge canadese che impone che il traffico originato in Canada e destinato in Canada non possa lasciare il paese. Questa legge significa che il traffico da Windsor (Ontario) diretto a Vancouver non può essere instradato attraverso la vicina Detroit. Un'altra differenza tra routing interno e routing esterno sono i costi. All'interno di una singola rete viene normalmente applicato un unico algoritmo di tariffazione. Ciò nonostante, reti differenti possono appartenere a diverse amministrazioni, e un percorso può essere meno costoso di un altro. In modo simile, la qualità del servizio offerto da reti distinte può essere differente, e questa potrebbe essere una ragione per scegliere una via invece di un'altra. In una rete di grandi dimensioni, scegliere la strada migliore può essere un'operazione molto costosa in termini di tempo. Pagina 110 “ RETI DI CALCOLATORI E INTERNETWORKING ” 5. IL PROTOCOLLO DI ROUTING TRA GATEWAY INTERNI: OSPF Come abbiamo menzionato in precedenza, Internet è costituita da un gran numero di sistemi autonomi. Ogni AS viene gestito da organizzazioni differenti e può utilizzare al suo interno i propri algoritmi di routing. Ad esempio, se tutte e tre le reti interne delle società X, Y e Z fossero in Internet, sarebbero viste come tre AS distinti, ognuno dei quali potrebbe utilizzare un algoritmo di routing differente. Ciò nonostante, la presenza di standard anche per il routing interno semplifica l'implementazione dei confini fra gli AS e permette di riutilizzare il codice. Un algoritmo di routing all'interno di un AS è detto interior gateway protocol (protocollo di routing tra gateway interni); un algoritmo di routing tra gli AS viene detto exterior gateway protocol (protocollo di routing tra gateway esterni). Il protocollo di routing tra gateway interni usato originariamente in Internet era un protocollo distance vector (RIP), basato su un algoritmo Bellman-Ford. Funzionava bene in sistemi piccoli, ma meno bene con la crescita degli AS. Soffriva inoltre del problema del conteggio all'infinito e in generale di una convergenza lenta: per questo motivo fu rimpiazzato nel maggio 1919 da un protocollo link state. Nel 1988, l'Internet Engineering Task Force iniziò a lavorare a un successore, chiamato OSPF (Open Shortest Path First - “protocollo aperto di cammino più breve per primo”) che divenne uno standard nel 1990. Attualmente molti venditori di router lo supportano, e diventerà il principale protocollo di routing tra gatewav interni nel prossimo futuro. Di seguito daremo un'occhiata a come funziona OSPF. Per la storia completa, si veda RFC 1247. Data la lunga esperienza con altri protocolli di routing, il gruppo che progettava il nuovo protocollo aveva una lista di esigenze che andavano soddisfatte. Innanzitutto, l'algoritmo doveva essere diffuso attraverso il suo inserimento nella letteratura di dominio pubblico, da cui la "O" di Open in OSPF. Una soluzione proprietaria posseduta da una specifica società non sarebbe andata bene. Secondo, il nuovo protocollo doveva supportare una gran varietà di metriche di distanza, inclusa la distanza fisica, il ritardo e così via. Pagina 111 “ RETI DI CALCOLATORI E INTERNETWORKING ” Terzo, doveva essere un algoritmo dinamico. capace di adattarsi automaticamente e velocemente ai cambiamenti della topologia. Quarto (una novità di OSPF), doveva supportare il routing basato sul tipo di servizio. Il nuovo protocollo doveva essere in grado di instradare traffico in tempo reale in un certo modo e gli altri tipi di traffico in maniera differente. Il protocollo IP possiede il campo Type of service, ma nessun protocollo esistente lo utilizzava. Quinto (collegato al punto precedente), il nuovo protocollo doveva eseguire il bilanciamento di carico, suddividendolo su linee multiple. Gran parte dei protocolli precedenti spedivano tutti i pacchetti lungo il percorso migliore. Il percorso in seconda posizione non veniva usato per nulla. In molti casi. suddividere il carico su linee multiple fornisce prestazioni migliori. Sesto, era necessario un supporto per i sistemi gerarchici. Dal 1988, Internet era cresciuta a tal punto che nessuno si aspettava che un router potesse conoscere l'intera topologia. Il nuovo protocollo di routing doveva essere progettato in modo che nessun router dovesse conoscerla. Settimo, era necessario un minimo di sicurezza per evitare che studenti amanti del divertimento prendessero in giro i router spedendo false informazioni di routing. Infine, erano necessari dei provvedimenti per gestire i router connessi a Internet tramite tunnel. I protocolli precedenti non gestivano perfettamente queste connessioni. OSPF supporta tre tipi di connessioni e reti: 1. Linee punto-a-punto tra due router. 2. Reti multiaccesso basate su broadcast (ad es. gran parte delle LAN). 3. Reti multiaccesso senza broadcast (ad es. gran parte delle LAN a commutazione di pacchetto). Una rete multiaccesso può connettere molti router, ognuno dei quali può comunicare direttamente con tutti gli altri. Tutte le LAN e le WAN hanno questa proprietà. La Fig. 1(a) mostra un AS contenente tutti e tre i tipi di rete. Si noti che generalmente gli host non hanno nessun ruolo in OSPF. Pagina 112 “ RETI DI CALCOLATORI E INTERNETWORKING ” OSPF funziona astraendo l'insieme delle reti, dei router e dei canali effettivi tramite un grafo diretto nel quale a ogni arco viene assegnato un costo (distanza. ritardo ecc.). Viene poi calcolato il cammino più breve in base ai pesi degli archi. Una connessione seriale tra due router è rappresentata da una coppia di archi, uno per ogni direzione, i cui pesi possono essere differenti. Una rete multiaccesso è rappresentata da un nodo per la rete stessa, più un nodo per ogni router. Gli archi dal nodo della rete ai router hanno peso 0 e non sono compresi nel grafo. La Fig. 1(b) mostra la rappresentazione su grafo della rete di Fig. 1(a). Fondamentalmente, OSPF non fa altro che rappresentare la rete effettiva con un grafo simile a questo e quindi calcolare il cammino più breve fra ogni coppia di router. Fig. 1: (a) Un sistema autonomo (AS); (b) Un grafo che rappresenta (a) Poiché molti degli AS in Internet sono comunque molto grandi e non facili da gestire, OSPF consente di dividerli in aree numerate, ognuna delle quali è costituita da una rete oppure da un insieme di reti contigue. Le aree non devono intersecarsi, ma non è Pagina 113 “ RETI DI CALCOLATORI E INTERNETWORKING ” necessario che siano esaustive, ovvero qualche router può non appartenere a nessuna area. All’esterno di un'area, la topologia interna e i dettagli non sono visibili. Ogni AS ha un'area backbone (spina dorsale), chiamata area 0. Tutte le aree sono connessi alla backbone, al limite tramite tunnel, in modo che sia possibile connettere qualsiasi coppia di aree nell'AS passando per il backbone. Un tunnel viene rappresentato graficamente come un arco pesato (arco pesato: arco che collega due punti del grafo a cui è associato un costo o peso). Ogni router che è connesso a due o più aree fa parte della backbone. Come per le aree, la topologia della backbone non è visibile all'esterno. All'interno di un'area, ogni router ha lo stesso database link state ed esegue lo stesso algoritmo di cammino minimo. Il suo compito principale è calcolare il cammino minimo da se stesso a ogni altro router nell'area, incluso il router che è connesso alla backbone (per definizione, ne esiste almeno uno). Un router che è connesso a due aree ha bisogno dei database di entrambe e deve eseguire l'algoritmo di cammino minimo separatamente per ciascuna. Il modo in cui OSPF gestisce il routing basato sul tipo di servizio è quello di avere grafi multipli, uno etichettato dai costi in cui la metrica è il ritardo, uno etichettato dai costi in cui la metrica è la capacità totale e infine uno etichettato dai costi in cui la metrica è l'affidabilità. Sebbene questo triplichi i calcoli necessari, consente di ottenere percorsi separati per ottimizzare i ritardi, la capacità totale e l'affidabilità. Durante il funzionamento normale, possono essere richiesti tre tipi di percorsi: intraarea, inter-area e inter-AS. I percorsi intra-area sono i più facili, in quanto il router sorgente conosce già il cammino minimo per il router destinazione. Il routing inter-area procede sempre in tre passi: andare dalla sorgente alla back-bone; andare attraverso la backbone all 'arca di destinazione; andare alla destinazione. Pagina 114 “ RETI DI CALCOLATORI E INTERNETWORKING ” Questo algoritmo impone una configurazione a stella di OSPF dove la backbone rappresenta il centro, mentre le altre aree sono i raggi. I pacchetti sono instradati dalla sorgente alla destinazione "così come sono", non vengono incapsulati o incanalati, a meno di attraversare un'area la cui unica connessione alla backbone sia un tunnel. La Fig. 2 mostra sezioni di Internet con AS e aree. Fig. 2: La relazione fra AS, backbone e aree in OSPF OSPF distingue quattro classi di router: I router interni sono completamente all'interno di un'area I router ai confini di area connettono due o più aree I router del backbone sono sulla backbone I router ai confini degli AS sono connessi a router di altri AS Queste classi possono intersecarsi. Ad esempio, tutti i router ai confini di area fanno automaticamente parte della backbone. Inoltre, un router che fa parte della backbone, Pagina 115 “ RETI DI CALCOLATORI E INTERNETWORKING ” ma che non è parte di nessun'altra area, è anche un router interno. Esempi di tutte e quattro le classi di router sono illustrati in Fig. 2. Quando un router viene inizializzato, spedisce un messaggio HELLO su tutte le sue linee punto-a-punto e lo manda in multicast sulla LAN al gruppo costituito da tutti gli altri router. Sulle WAN ha bisogno di alcune informazioni di configurazione per sapere chi contattare. Ogni router viene a conoscere l'insieme dei vicini a partire dalle risposte. OSPF funziona scambiando informazioni tra router adiacenti, che non coincidono con i router vicini. In particolare, è inefficiente che ogni router su una LAN comunichi con ogni altro router sulla LAN. Per evitare questa situazione, un router viene eletto router designato; tale router viene detto adiacente a tutti gli altri router e scambia informazioni con essi. Router vicini che non sono adiacenti non scambiano informazioni tra loro. Un router designato di backup viene sempre tenuto aggiornato per facilitare la transizione nel caso in cui il router designato primario si guasti. Durante il funzionamento normale. ogni router spedisce un messaggio LINK STATE UPDATE (aggiornamento link state) a tutti i router adiacenti tramite 22flooding. Questo messaggio flooding contiene lo stato e tutti i costi utilizzati nel database topologico. I messaggi di flooding vengono confermati, al fine di renderli affidabili. Ogni messaggio possiede un numero di sequenza, in modo che un router possa capire se un messaggio LINK STATE UPDATE appena ricevuto sia più vecchio o più nuovo di quello attualmente posseduto. I router spediscono questi messaggi anche quando una linea si guasta o viene riparata, oppure quando i costi subiscono un cambiamento. I messaggi DATABASE DESCRIPTION (descrizione del database) contengono i numeri di sequenza di tutte le registrazioni link state possedute dal mittente. Confrontando i propri valori con quelli del mittente, il ricevente può determinare chi possiede i valori più recenti. Questi messaggi vengono utilizzati quando una linea viene riparata. Un partner può richiedere all'altro informazioni link state utilizzando un messaggio LINK STATE REQUEST (richiesta link state). Flooding: (Inondazione) E’ un algoritmo statico nel quale ogni pacchetto in arrivo viene inoltrato su ogni linea di uscita eccetto quella da cui è arrivato. Pagina 116 22 “ RETI DI CALCOLATORI E INTERNETWORKING ” Il risultato finale di questo algoritmo è il fatto che ogni coppia di router adiacenti verifica chi possiede i dati più recenti, e le nuove informazioni vengono diffuse nell'area in questo modo. Tutti questi messaggi vengono spediti come semplici pacchetti IP. I cinque tipi di messaggi sono elencati in Fig. 3. Fig. 3: Cinque tipi di messaggi OSPF Utilizzando il flooding, ogni router comunica l'insieme dei propri vicini e i relativi costi a tutti gli altri router nella propria area. Queste informazioni consentono a ogni router di costruire il grafo per la propria area e calcolare il cammino minimo. Anche l'area backbone esegue queste operazioni. Inoltre, i router della backbone accettano informazioni dai router ai confini di area per calcolare il cammino migliore da ogni router della backbone ad ogni altro router. Queste informazioni vengono spedite indietro fino ai router ai confini di area, che le pubblicizzano all'interno delle loro aree. Utilizzando queste informazioni, un router che sta spedendo un pacchetto inter-area può selezionare il miglior router di uscita per la backbone. Pagina 117 “ RETI DI CALCOLATORI E INTERNETWORKING ” 6. IL PROTOCOLLO DI ROUTING TRA GATEWAY ESTERNI: BGP All'interno di un singolo AS, il protocollo raccomandato per Internet è OSPF (sebbene non sia certamente l'unico utilizzato). Tra gli AS viene utilizzato un protocollo diverso, BGP (Border Gateway Protocol - (protocollo per gateway di confine). E’ necessario un protocollo differente per gli AS, in quanto gli obiettivi di un protocollo di routing tra gateway interni e un protocollo di routing tra gateway esterni non sono gli stessi. Tutto ciò che un protocollo di routing tra gateway interni deve fare è trasportare i pacchetti dalla sorgente alla destinazione nel modo più efficiente possibile. Non ha altri problemi. Invece i protocolli di routing tra gateway esterni devono preoccuparsi molto della gestione delle relazioni fra i clienti. Ad esempio, un AS di una società privata vorrebbe avere la possibilità di spedire e ricevere pacchetti da qualsiasi sito Internet. Ciò nonostante, potrebbe non desiderare di trasportare pacchetti originati in AS stranieri e destinati in AS differenti ("questo è il loro problema, non il nostro"). D'altra parte, potrebbe desiderare di trasportare il traffico per i propri vicini, oppure per altri AS specifici che hanno pagato per questo servizio. Le società telefoniche, ad esempio, potrebbero essere felici di trasportare pacchetti per i loro clienti, ma non per altri. I protocolli di routing tra gateway esterni in generale, e BGP in particolare, devono essere progettati per consentire l'utilizzazione di diversi tipi di politiche gestione di routing nel traffico inter-AS, gestione che deve affrontare situazioni politiche, di sicurezza ed economiche. Alcuni esempi di questi vincoli di routing sono: 1. Nessun traffico in transito attraverso certi AS. 2. Mai mettere l'Iraq in un percorso che parte dal Pentagono. 3. Non utilizzare gli Stati Uniti per andare dal British Columbia all'Ontario. 4. Transitare per l'Albania solo se non ci sono alternative per la destinazione. 5. Il traffico che parte o arriva all'IBM non deve passare per Microsoft. Pagina 118 “ RETI DI CALCOLATORI E INTERNETWORKING ” I vincoli vengono configurati a mano in ogni router BGP e non fanno parte del protocollo stesso. Dal punto di vista dei router BGP, il mondo consiste di altri router BGP e dei canali che li uniscono. Due router BGP sono considerati connessi se condividono una rete comune. Dato l'interesse speciale di BGP nel traffico in transito, le reti sono raggruppate in tre categorie. La prima categoria è quella delle reti stub. che hanno una sola connessione al grafo BGP. Queste non possono essere utilizzate per il traffico in transito in quanto non c'è nessuno dall'altra parte. Poi vengono le reti multiconnesse. Queste potrebbero essere utilizzate per il traffico in transito, a meno che non rifiutino. Infine, ci sono le reti di transito, quali le backbone. che sono disponibili a trattare pacchetti di terze parti, al limite con qualche restrizione. Le coppie di router BGP comunicano stabilendo connessioni TCP. Lavorando in questo modo si ottengono comunicazioni affidabili e si nascondono tutti i dettagli delle reti attraversate. BGP è fondamentalmente un protocollo distance vector, sebbene sia abbastanza differente da gran parte di essi (ad es. RIP). Invece di registrare i costi corrispondenti a ognuna delle destinazioni, ogni router BGP tiene traccia dell'intero cammino utilizzato. Allo stesso modo. invece di comunicare ai propri vicini i costi stimati per ogni possibile destinazione, ogni router BGP li tiene informati dell'intero percorso che sta utilizzando. Si considerino per esempio i router BGP mostrati in Fig. 4 (a). In particolare, si consideri la tabella di routing di F e si supponga che utilizzi il cammino FGCD per raggiungere D. Quando i vicini spediscono a F informazioni di routing, spediscono i percorsi completi, come mostrato in Fig. 4 (b) (per semplicità, viene mostrata solo la destinazione D). Fig. 4: (a) Un insieme di router BGP. (b) Informazioni spedite a F. Pagina 119 “ RETI DI CALCOLATORI E INTERNETWORKING ” Dopo aver ricevuto i cammini da tutti i vicini, F li esamina per vedere qual’è il migliore Scarta velocemente i cammini attraverso I ed E, poiché passano attraverso F stesso. La scelta si riduce a B e G. Ogni router BGP contiene un modulo che esamina i percorsi per una data destinazione e assegna loro un punteggio, restituendo per ognuno di essi un valore rappresentante la "distanza”. Qualsiasi percorso che non soddisfi uno dei vincoli assume automaticamente un punteggio infinito. I router scelgono quindi il percorso con la distanza più breve. La funzione di punteggio non fa parte del protocollo BGP e viene scelta dall'amministratore di sistema. BGP risolve facilmente il problema deli conteggio all'infinito che disturba gli altri algoritmi basati su vettori di distanza. Ad esempio, si supponga che G si guasti oppure che la linea FG si interrompa. F riceve quindi i percorsi BCD, IFGCD e EFGCD dai suoi tre vicini rimanenti. Può accorgersi immediatamente che gli ultimi due percorsi sono inutili, in quanto passano attraverso F; quindi F sceglie FBCD come nuovo percorso. Altri algoritmi basati su vettori di distanza spesso fanno la scelta sbagliata in quanto non sanno dire quale dei loro vicini possieda percorsi indipendenti per la destinazione, e quali non ne possiedano. La definizione attuale di BGP è in RFC 1654. E' possibile trovare utili informazioni aggiuntive in RFC 1268. Pagina 120 “ RETI DI CALCOLATORI E INTERNETWORKING ” 7. INTERNET IN MULTICASTING Normalmente, le comunicazioni IP coinvolgono un mittente e un ricevente. Ciò nonostante, per alcune applicazioni è utile che i processi possano comunicare con un grande numero di riceventi contemporaneamente. Fra gli esempi ricordiamo la gestione di aggiornamenti replicati, i database distribuiti, la trasmissione di quotazioni di mercato a più di un broker e la gestione di chiamate telefoniche in teleconferenza (cioè con molti utenti). IP supporta il multicasting utilizzando gli indirizzi di classe D. Ogni indirizzo di classe identifica un gruppo di host. Sono disponibili 28 bit per identificare i gruppi, in modo che possano esistere oltre 250.000.000 di gruppi contemporaneamente. Quando un processo spedisce un pacchetto a un indirizzo di classe D, viene fatto un tentativo best-efforts di consegnarlo a tutti i membri dei gruppo, ma non vengono fornite garanzie. Alcuni membri potrebbero non ricevere il pacchetto. Sono supportati due tipi di indirizzi di gruppo: permanenti e temporanei. Un gruppo permanente esiste sempre e non deve essere creato. Ogni gruppo permanente ha un indirizzo permanente. Alcuni esempi di tale tipo di indirizzo possono essere: 224.0.0.1 tutti i sistemi in una LAN 224.0.0.2 tutti i router in una LAN 224.0.0.5 tutti i router OSPF in una LAN 124.0.0.6 tutti i router OSPF designati in una LAN I gruppi temporanei devono essere creati prima di poter essere usati. Un processo può domandare al proprio host di unirsi a un gruppo specifico. Può anche domandare al proprio host di lasciare il gruppo. Quando l'ultimo processo di un host lascia il gruppo, quest'ultimo non è più presente nell'host. Ogni host tiene traccia dei gruppi a cui appartengono i propri processi. Il multicasting è implementato attraverso speciali router multicast, che possono coincidere con i router standard oppure no. Approssimativamente una volta al minuto, Pagina 121 “ RETI DI CALCOLATORI E INTERNETWORKING ” ogni multicast router spedisce un multicast hardware (cioè del livello data link) agli host nella sua LAN (indirizzo 224.0.0.1) chiedendo di rispondere con l'elenco dei gruppi a cui sono interessati i loro processi. Ogni host spedisce una risposta contenente tutti gli indirizzi di classe D a cui è interessato. Questi pacchetti di domanda e risposta utilizzano un protocollo chiamato IGMP (Internet Group Management Protocol - protocollo Internet di gestione dei gruppi). che è vagamente analogo a ICMP. Ci sono solo due tipi di pacchetti, di richiesta e di risposta, ognuno con un semplice formato fisso contenente alcuni informazioni di controllo nella prima parola dei contenuto del pacchetto e un indirizzo di classe D nella seconda parola. Viene descritto in RFC 112. Il multicast routing viene realizzato basandosi sugli spanning tree. Ogni router di multicast scambia informazioni con i propri vicini utilizzando un protocollo distance vector modificato. al fine di costruire per ognuno dei gruppi uno spanning tree che copra tutti i membri del gruppo. Vengono utilizzate varie ottimizzazioni per potare l'albero ed eliminare i router e le reti che non sono interessati in gruppi particolari. Il protocollo fa un uso pesante del tunneling per evitare di infastidire nodi che non fanno parte dello spanning tree. Pagina 122 “ RETI DI CALCOLATORI E INTERNETWORKING ” BIBLIOGRAFIA Informazioni tratte: dal sito web didatec: http://www.didatec.com/newtecnology/adsl/tec_adsl.html dal sito web ufficiale ADSL Forum http://www.adsl.com/ dal sito web In inglese, raccolta di slides sulla tecnica ATM http://www.oclug.on.ca/atm/index.htm dal sito web dell’università di Brescia – Centro di calcolo interfacoltà http://www.unibs.it/~sanacori/studi/atm97/atm97_indice.html dal sito web: http://www.apsoftware.it/applus/docs/INET/index.htm Dal libro: “Reti di computer” di Andrew Tanenbaum Casa Editrice: UTET Da “Articolo proposto per il Notiziario Tecnico Telecom Italia – Segnalazioni per reti ATM” Autori: A. Paglialunga (CSELT); M. Siverio (CSELT); R. Pietrosino (Telecom Italia). Sito dove poter reperire informazioni sui vari RFC. http://sunsite.cnlab-switch.ch/cgi-bin/search/standard/nph-findstd?show_about=yes Sito ufficiale dell’ International Telecommunication Union - ITU http://www.itu.int/ Pagina 123