RETI PREMESSA Un computer è una macchina in grado di manipolare informazione rappresentata in forma digitale. Durante il normale funzionamento, i bit viaggiano incessantemente e velocemente tra le varie componenti interne di un computer, attraverso dei canali detti bus: dalla memoria alla CPU; dalla CPU alla scheda grafica; dalla scheda grafica, trasformati in segnali analogici, fuori, verso il monitor. Una rete di computer estende questa “capacità di circolazione” dei bit per consentire la trasmissione di informazione in formato digitale tra diversi computer. La parola telecomunicazione unisce la radice di origine greca tele (lontano) con il verbo latino comunicare e significa trasmissione di informazioni a distanza. Trasmettere informazioni a distanza, superando il limite fisico dei nostri sensi, è da sempre un obiettivo dell'uomo, si pensi ad esempi quali la comunicazione tramite luce riflessa da specchi nelle navi da guerra (già utilizzata dagli antichi romani) o la comunicazione con segnali di fumo degli indiani d'america. Nei tempi moderni si è imparato ad utilizzare i segnali elettromagnetici per la comunicazione a distanza e gli sviluppi della tecnologia nel campo delle comunicazioni elettriche e dell'elettronica hanno permesso la nascita delle moderne telecomunicazioni. Una volta che risultino disponibili strumenti per la telecomunicazione, emergono una serie di altri problemi legati all'organizzazione del sistema che si rende necessario per garantire accesso a questo servizio a grandi popolazioni di utenti (siano essi esseri umani o calcolatori). Questi sistemi complessi sono le reti di telecomunicazioni. COS’È UNA RETE?(1) Un computer isolato è un “personal”, due o più computer insieme collegati formano una rete”. Una rete è un insieme di computer collegati tra loro. I primi esempi di connessione tra computer risalgono agli anni ’60 quando i sistemi per l’elaborazione erano molto costosi e complessi e vi era la necessità di condividere tra più persone le risorse disponibili. Si affiancava al computer più potente (detto mainframe) una serie di semplici terminali in grado di connettersi al computer centrale e sfruttarne le risorse. E’ importante sottolineare che un terminale, disconnesso dalla rete, non era utilizzabile in quanto necessitava di risorse essenziali (come per es. il disco fisso) presenti sul mainframe. COS’È UNA RETE?(2) Le prime reti furono realizzate all’interno delle Università e delle grandi aziende, in particolare nelle banche, dove esisteva la necessità di trasferire dati tra computer che effettuavano operazioni dettagliate, in modo da poter realizzare un archivio dati centralizzato come base del lavoro di tutta la banca. Successivamente, con la nascita e la diffusione dei personal computer, si è passati dal modello mainframe-terminali, in cui tutta la potenza di calcolo era concentrata in un unico elaboratore, alle moderne reti di computer, formate da un grande numero di elaboratori autonomi (ovvero non ci sono relazioni di dipendenza tra i vari sistemi : ogni computer, anche se disconnesso dalla rete, rimane funzionante) e interconnessi ( ovvero capaci di scambiare informazioni). Nascono così le reti di computer (computer network) cioè un insieme di due o più computer in grado di trasmettere dati tra loro. Si è passati quindi da sistemi di elaborazione delle informazioni aventi la caratteristica di essere concentrati, cioè strutture hardware composte da una singola CPU alla quale venivano connessi più terminali, alle stazioni di lavoro connesse fra loro e dotate di capacità elaborativa propria cioè a sistemi distribuiti. VANTAGGI DI UNA RETE(1) Possibilità di scambiare dati (es.dati da un PC a un altro senza utilizzare CD, pen-disk) Possibilità di condividere risorse (es .la stampante collegata al vostro computer con gli altri PC, il collegamento a Internet degli altri PC della rete attraverso la connessione ADSL,un gioco, ecc..) Possibilità di archiviare dati (es. utilizzare il capiente hard disk di un PC per l’archiviazione di dati di altri pc) o, con le nuove tecnologie, condividere un disco virtuale su web Introduzione di un nuovo strumento di comunicazione tra esseri umani (social network, forum, ecc) VANTAGGI DI UNA RETE(2) Inoltre : Esiste un migliore rapporto prestazioni/costo : rispetto ai sistemi centralizzati, i piccoli sistemi in rete offrono un basso costo dell’hardware e , con lo stesso numero di utenti, una maggiore velocità in quanto ogni utente condivide solo dati e programmi e non l’hardware Facilità di espansione del sistema (scalabilità) tempi diversi e con hardware diversi Maggiore affidabilità del sistema (fault tolerance) : il guasto di un Pc non blocca il lavoro degli altri Maggiori vantaggi organizzativi : possibilità di collegarsi con un portatile alla rete Intranet aziendale anche da luoghi distanti dal posto di lavoro COMPONENTI DI UNA RETE Come avviene per il singolo computer, anche una rete ha : componenti fisichel’hardware componenti logiche il software HARDWARE DI RETE Le componenti hardware di una rete sono costituite (oltre che dai computer, ovviamente) da Schede di rete Mezzi di trasmissione La scheda di rete funziona da vero e proprio ricetrasmettitore: in trasmissione trasforma le sequenze binarie di zeri ed uno, in segnali elettrici che vengono inviati lungo la rete; in ricezione trasforma i segnali elettrici della rete in sequenze binarie intelligibili per il computer. MEZZI DI TRASMISSIONE(1) Il mezzo trasmissivo utilizzato incide notevolmente sulle caratteristiche della rete in termini di prestazioni e di costo. Attualmente esistono tre grandi categorie di mezzi trasmissivi che si differenziano per il fenomeno fisico utilizzato: mezzi elettrici (dove viene sfruttata la capacità dei metalli di condurre energia elettrica), onde radio (dove si sfrutta la possibilità di trasferire variazioni di corrente elettrica a distanza tramite onde elettromagnetiche) e mezzi ottici (che utilizzano la luce per trasferire le informazioni). Tutti i mezzi utilizzati hanno la caratteristica di trasportare una qualche forma di energia equindi sono soggetti a due fenomeni che ne limitano le prestazioni: l'attenuazione (dovuta alla resistenza opposta dal mezzo fisico attraversato) ed il rumore (la sovrapposizione alle formazioni di segnali provenienti da altri dispositivi vicini). MEZZI DI TRASMISSIONE(2) Mezzi elettrici : doppino telefonico: formato da una coppia di fili di rame, permette trasmissioni di dati fino a 9600 bps (bit per secondo); particolari accorgimenti consentono di arrivare fino a 100 Mbps. Di semplice uso (vengono usati i cavi già posati che consentono le conversazioni telefoniche) ed economico, è il mezzo trasmissivo attualmente più utilizzato sia per le reti locali che per alcuni tratti delle reti più grandi. Cavo coassiale: formato da una coppia di cavi coassiali (e non affiancati come per il doppino) è particolarmente insensibile alle interferenze elettromagnetiche e consente trasmissioni fino alla velocità di 106 bps; oggi in progressivo disuso sostituito dal doppino nelle reti locali e dalle fibre ottiche sulle distanze maggiori. Mezzi ottici Fibre ottiche: il supporto fisico dove viaggia la luce è vetro filato in diametri molto piccoli e ricoperto di materiale opaco; con l'attuale tecnologia è possibile ottenere fili di vetro sottilissimi e flessibili e si arriva ad una velocità di 109 bps; saranno il mezzo del futuro dopo l'abbattimento dei loro alti costi Onde radio: Ponti radio o satellitari : le onde elettromagnetiche sono inviate da un trasmettitore e, viaggiando ad una velocità prossima a quella della luce, arrivano all’antenna ricevente; sono usati per collegamenti a grandi distanze ; alto costo VELOCITÀ DI TRASMISSIONE DI RETE La velocità di trasmissione (ricezione) si misura in bps (bit per second); alcune reti attuali raggiungono velocità di diversi Gbps (Giga-bit per second) il termine velocità di trasmissione (o di trasferimento) indica la quantità di dati che possono essere trasferiti, attraverso una connessione su un canale, in un dato periodo di tempo. In particolare in telecomunicazioni la velocità massima di trasmissione è detta anche capacità di trasmissione della linea, mentre la quantità di informazione trasportata in un certo momento su un canale, minore o uguale alla capacità, è detta portata del canale (throughput) e dipende esclusivamente da quanta informazione è immessa sul canale nella trasmissione. Poiché l'informazione viene memorizzata e viaggia in forma digitale, ovvero è sostanzialmente una sequenza di bit, è naturale che tale velocità venga misurata in bit per secondo (e da qui il termine equivalente inglese bitrate). SOFTWARE Le componenti logiche di una rete sono invece i programmi che servono a : Gestire il collegamento e il traffico dei dati A definire le regole necessarie affinché la comunicazione avvenga in modo corretto tecnicamente sono denominati protocolli CLASSIFICAZIONI DELLE RETI Le reti di comunicazione (Network) possono essere catalogate in base alle seguenti caratteristiche: Estensione geografica: la grandezza Architettura logica: cioè il tipo di relazione esistente tra i computer. Le reti possono essere classificate a seconda se impiegano un’architettura: peer-to-peer client-server Topologia fisica : È la tecnica usata per collegare fisicamente i vari nodi della rete Topologia logica : Il modo in cui i vari nodi dialogano fra loro ESTENSIONE GEOGRAFICA Da questo punto di vista si distinguono due classi: rete locale, o LAN (da Local Area Network): terminali nella stessa stanza/edificio possiamo utilizzare collegamenti diretti (senza passare per reti pubbliche) rete geografica, o WAN (da Wide Area Network): Nodi distribuiti su medio-lunga distanza. Possiamo usare la rete di comunicazione pubblica utilizzando modem o affittando linee di trasmissione Oppure reti digitali di trasmissione dati ARCHITETTURA LOGICA(1) – PEER TO PEER Peer-to-peer: E’ una rete sulla quale i computer comunicano l’uno con l’altro da pari a pari. In una rete di questo tipo la condivisione , la sicurezza sono lasciate a ciascuno computer Il primo esempio eclatante di servizio utilizzante un dialogo peer-to-peer è il famoso sistema Napster per la distribuzione di brani musicali che tanta risonanza ha avuto anche sui mezzi di comunicazione a seguito della battaglia legale per la tutela dei diritti d'autore con le case discografiche. Le reti peer to peer hanno molti inconvenienti : questo sistema non è per niente centralizzato, cosa che lo rende difficile da amministrare la sicurezza è poco presente nessun anello della catena è affidabile Così, le reti peer to peer sono valide solo per un numero limitato di computer (generalmente una dozzina), e per delle applicazioni che non necessitano di una grande sicurezza (è quindi sconsigliato per una rete professionale con dei dati sensibili). ARCHITETTURA LOGICA(2) – PEER TO PEER L'architettura peer to peer ha però anche dei vantaggi, fra i quali : un costo ridotto (i costi generati da una rete simile sono il software, i cavi e la manutenzione) una semplicità innegabile! Le reti peer to peer non necessitano degli stessi livelli di performance e di sicurezza che i software di rete per i server dedicati. Si può quindi usare Windows NT Workstation, Windows per Workgroups o Windows 7 dato che tutti questi sistemi operativi integrano tutte le funzionalità delle reti peer to peer. La realizzazione di una simile architettura di rete si basa su delle soluzioni standard : Mettere i computer sulla scrivania degli utenti Ogni utente è amministratore di se stesso e pianifica la sua sicurezza Per le connessioni, si utilizza un sistema di cablaggio semplice e apparente Si tratta normalmente di una soluzione soddisfacente per degli ambienti con le seguenti caratteristiche : Meno di 10 utenti Tutti gli utenti si trovano in una stessa zona geografica La sicurezza non è un problema cruciale Nè l'azienda nè la rete sono suscettibili di evolversi in maniera significativa in un futuro prossimo ARCHITETTURA LOGICA(3) – CLIENT-SERVER E’ una rete in cui tutte le risorse condivise sono presenti e gestite da un server. In una tale rete, il compito di impostare le autorizzazioni di accesso alle varie risorse e di gestire il server è affidato all’amministratore di rete Server : condivide / offre servizi Client : utilizza risorse messe a disposizione dai server Un tipico esempio è il WWW in cui i server mettono a disposizione dei client pagine di testo, immagini, eccetera, che siano reperibili e visualizzabili tramite i normali browser (Internet Explorer, Netscape, Opera, eccetera). Questo modello di dialogo è di tipo asimmetrico nel senso che i due soggetti partecipanti alla comunicazione svolgono funzioni diverse: il server mette a disposizione le informazioni, il client le reperisce e le rende consultabili localmente dall'utente. Per svolgere questa funzione i server devono essere sempre disponibili, quindi sempre accessi, sempre connessi alla rete e sempre pronti ad accettare nuove comunicazioni. Inoltre i server devono essere opportunamente configurati al fine di salvaguardare il più possibile l'integrità delle informazioni e del servizio. ARCHITETTURA LOGICA(4) – CLIENT-SERVER Molte applicazione funzionano in un sistema client/server, questo significa che dei terminali client (dei terminali che fanno parte della rete) contattano un server, un terminale solitamente molto potente in termini di capacità d'entrata-uscita, che fornisce loro dei servizi. Questi servizi sono dei programmi che forniscono dei dati come l'ora, dei file, una connessione, ecc. I servizi sono sfruttati da dei programmi, chiamati programmi client, che si eseguono su terminali client. Si parla quindi di client (client FTP, client di messaggeria, ecc.) quando si definisce un programma che gira su un terminale client, capace di trattare delle informazioni che recupera da un server (nel caso del client FTP si tratta di file, mentre per il client di messaggeria si tratta di posta elettronica). ARCHITETTURA LOGICA(5) – CLIENT-SERVER Vantaggi dell'architettura client/server Il modello client/server è particolarmente consigliato per delle reti che necessitano un elevato livello di fiducia, e i suoi principali vantaggi sono : delle risorse centralizzate : dato che il server è al centro della rete, può gestire delle risorse comuni a tutti gli utenti, come ad esempio un database centralizzato, per evitare i problemi di ripetizione e contraddizione una sicurezza migliore : dato il numero di punti d'entrata che permettono l'accesso ai dati è minore un'amministrazione a livello del server : considerata la poca importanza dei client in questo modello, hanno meno bisogno di essere amministrati una rete evolutiva : grazie a questa architettura è possibile cancellare o aggiungere i client senza disturbare il funzionamento della rete e senza modifiche importanti Inconvenienti del modello client/server un costo elevato dovuto alla tecnicità del server un anello debole : il server è il solo anello debole della rete client/server, dato che tutta la rete è strutturata intorno a questo! Fortunatamente, il server ha una grande tolleranza ai guasti (soprattutto grazie al sistema RAID) ARCHITETTURA LOGICA(6) – CLIENT-SERVER Funzionamento di un sistema client/server Un sistema client/server funziona secondo il seguente schema: •Il client emette una richiesta verso il server con il suo indirizzo IP e la porta, che definisce un servizio particolare del server •Il server riceve la richiesta e risponde attraverso l'indirizzo del terminale client e della sua porta ARCHITETTURA LOGICA(7) In sintesi : Vantaggi e svantaggi delle architetture Peer-to-peer Client-Server Costo ridotto Costo elevato Nessuna necessità di amministrazione Necessita di amministratore Nessun sistema operativo di rete dedicato Sistema operativo di rete Prestazioni a rischio Eccellenti prestazioni Sicurezza scarsa Sicurezza elevata Backup complessi Backup semplici TOPOLOGIA FISICA(1) In generale le reti si possono dividere in due topologie fisiche principali: point-to-point e broadcast Nel primo caso la rete contiene numerose linee, ciascuna che connette due nodi e i nodi che non condividono una linea, per comunicare, devono farlo attraverso altri nodi. Nelle reti di tipo broadcast, invece, c'è un singolo canale di comunicazione condiviso dai nodi. I messaggi spediti da ciascun nodo sono ricevuti da tutti gli altri con qualcosa nel messaggio che specificare a chi è diretto; ricevendo un messaggio non destinato ad esso, un nodo lo ignora. Nella realtà però abbiano anche delle reti con topologia ibrida : formate dalla combinazione delle topologie di rete descritte sopra. TOPOLOGIA FISICA(2) : TOPOLOGIA POINT TO POINT Le topologie più note di reti point-to-point sono: Stella Anello Completa o a maglia TOPOLOGIA FISICA(3) : TOPOLOGIA POINT TO POINT Topologia a stella Nelle reti a stella tutti i nodi sono collegati ad un elaboratore centrale (che smista i messaggi detto centro stella) come la definizione lascia supporre. E’ stata la topologia degli inizi delle reti in quanto il cablaggio coincideva con quello della soluzione con mainframe e terminali remoti e consentiva di riutilizzare strutture già esistenti. Presenta come vantaggi la facilità di controllo (che è concentrata in un unico punto) , la facilità con la quale di possono aggiungere e togliere stazioni in qualsiasi momento, le alte prestazioni (collegamenti punto a punto), una discreta fault tolerance TOPOLOGIA FISICA(4) : TOPOLOGIA POINT TO POINT Topologia ad anello Le due estremità sono connesse a formare un anello: una struttura unidirezionale rinchiusa su se stessa in cui le informazioni si propagano in una sola direzione. Come svantaggio fondamentale questa topologia presenta una forte criticità nella fault tolerance poiché il malfunzionamento di un nodo dell rete provoca l’interruzione dell’intera rete. E’ stato posto parzialmente rimedio a questo problema con l’inserimento di dispositivi particolari di commutazione all’interno dell’anello TOPOLOGIA FISICA(5) : TOPOLOGIA POINT TO POINT Topologia completa (o a maglia) E’ una topologia che presenta sia connessioni punto a punto che multi punto. Se og ni stazione è connessa a tutte le altre si parla di topologia a maglia completamente connessa (molto costosa)La topologia a maglia prevede che tutti i computer della rete siano direttamente connessi l' uno all' altro. Come detto all' inizio, al crescere del numero di computer da collegare, cresce il costo del sistema con il quadrato del numero dei nodi. TOPOLOGIA FISICA(6) : TOPOLOGIA BROADCAST Topologia Broadcast Le topologie più note di reti broadcast sono : a BUS: tutti i nodi sono collegati a un cavo lineare (bus), come gli affluenti di un fiume, mediante delle diramazioni cui sono collegati i computer. In questo tipo di rete tutti i nodi condividono un medesimo canale di trasmissione, ed inoltre ogni messaggio viaggia sempre in tutte le direzioni. Questo comporta dei notevoli problemi di controllo della trasmissione, e comunque limita l’uso della topologia alla realizzazione di reti locali, dove il numero di nodi è limitato. ..UN’ALTRA CLASSIFICAZIONE... Abbiamo già visto che non sempre la stazione trasmittente e quella ricevente sono collegate direttamente. Disporre di un collegamento dedicato per ogni coppia di stazioni presenta indubbi vantaggi ma anche costi esorbitanti. Il sistema adottato quindi si basa sul principio della commutazione ovvero realizzare un circuito virtuale fra due stazioni nel caso in cui ci sia la richiesta di trasmissione e la disponibilità della linea.Il collegamento quindi viene stabilito all’atto della richiesta e permane solo per il tempo della trasmissione. Esistono due tipi di commutazione : commutazione di circuito : è utilizzata nella conversazioni telefoniche nelle quali viene costruito un canale fisico tra i due interlocutori, attraverso le centraline. Il percorso identificato viene impegnato fisicamente e in modo esclusivo commutazione di pacchetto :i messaggi vengono divisi in piccole parti, chiamate pacchetti e ciascun pacchetto è trasmesso individualmente. Ogni pacchetto può essere spedito senza aspettare che tutti i precedenti siano arrivati a destinazione e può anche seguire un percorso diverso. I pacchetti sono sequenze di byte (sequenze di blocchi di 8 bit), in genere di eguale lunghezza. Tra il calcolatore A (mittente) e il calcolatore B (destinatario) il pacchetto attraversa molti calcolatori intermedi . I dispositivi di ricezione dei dati dovranno ricostruire l’esatta sequenza dei pacchetti prima della consegna al destinatario. ....SOFTWARE DI RETE Il problema principale in un processo di comunicazione è la definizione di un linguaggio comune ai diversi attori in gioco, che, nel nostro caso, sono in primo luogo i computer. E i computer, come noto, pur usando tutti lo stesso alfabeto - il codice binario - “parlano” spesso linguaggi differenti e incompatibili: computer diversi usano sistemi operativi, codici di caratteri, strutture di dati, che possono essere anche molto diversi. Il protocollo è un accordo fra le parti che comunicano sul modo in cui la comunicazione deve procedere. … LA NECESSITÀ DI UNO STANDARD(1) Storicamente le prime reti di calcolatori vengono sviluppate negli anni '70. L'esperimento pilota, finanziato dall'agenzia statunitense DARPA, prende il nome di ARPAnet e nasce ufficialmente nel 1969. A questa esperienza seguono, nel corso degli anni '70, numerose implementazioni di reti di calcolatori, molte delle quali di tipo proprietario, cioè sviluppate da un solo costruttore ed incompatibili con sistemi di altri costruttori. Alcune tra le più note furono DECnet della Digital, SNA di IBM e XNS della Xerox. La caratteristica fondamentale di queste reti è quella di essere sistemi chiusi, ossia sostanzialmente incapaci di comunicare fra loro. Una volta che un utente decide di adottare una di queste reti è legato al relativo produttore, che è l'unico fornitore di apparati compatibili con la rete installata. Questo fenomeno detto di captivity, limita molto le scelte dell'utente, che è costretto a seguire l'evoluzione e le scelte tecnologiche del tipo di rete che ha scelto. Al contrario sarebbe auspicabile che queste reti fossero sistemi aperti, ossia tali che qualunque calcolatore fosse in grado di comunicare con qualunque altro indipendentemente dalla sua architettura e dal suo costruttore. Un sistema aperto ha infatti alcuni importanti vantaggi: favorire la diffusione delle reti di calcolatori tramite l'interconnessione delle reti esistenti; rendere possibile agli utenti e ai costruttori di reti approvvigionarsi da qualunque produttore, favorendo la concorrenza. … LA NECESSITÀ DI UNO STANDARD(2) Per realizzare reti di calcolatori che siano sistemi aperti è necessario: delineare un modello di riferimento per la comunicazione fra calcolatori che sia base comune di questi sistemi; giungere alla definizione di standard universalmente accettati che specifichino in modo preciso le funzioni che sono necessarie per realizzare la comunicazione. La comunicazione fra calcolatori di tipo diverso è in generale un problema abbastanza complesso. Per semplificare la progettazione dal punto di vista tecnico di una rete di calcolatori risulta quindi conveniente suddividere il problema complessivo in una serie di sottoproblemi ben confinati, chiarendo poi come essi debbano interagire. Questo tipo di approccio è stato sostanzialmente comune a tutte le implementazioni di reti di calcolatori, anche quando queste si presentavano come sistemi chiusi. … LA NECESSITÀ DI UNO STANDARD(3) I vantaggi che si hanno nell'operare un approccio a strati sono: riduzione della complessità nella costruzione di architetture protocollari introducendo livelli di astrazione; indipendenza per l'operatività e le strutture interne di ogni strato; ogni strato deve compiere un compito diverso dagli altri e la sua struttura non è vincolata da quella degli altri livelli; interazione tramite servizi; i livelli sono disposti a pila, uno sopra l'altro. Ogni livello fornisce servizi al livello superiore e usufruisce di servizi dal livello sottostante, comunicando tramite la loro interfaccia; facilità di attuare cambiamenti su uno strato senza alterare i restanti; gli strati interagiscono tra loro tramite servizi, essendo quindi indipendenti tra loro possono essere modificati nel tempo con nuove tecnologie senza che questo richieda interventi negli altri strati; possibilità di utilizzare differenti protocolli per compiti specifici con complessità più trattabile; potendo scegliere le modalità di funzionamento e il livello su cui operare le funzioni di commutazione e di multiplazione, si possono ottimizzare alcuni aspetti del modo di trasferimento. Due livelli di pari grado posti su due calcolatori differenti comunicano tra loro tramite protocollo, mentre due livelli adiacenti della stessa macchina comunicano tra loro tramite interfaccia. L'obiettivo di un livello è quello di servire servizi al livello superiore nascondendo a questo il modo in cui i servizi sono realizzati. IL MODELLO DI RIFERIMENTO OSI(1) Open System Interconnection Rappresenta lo standard (anche se non da tutti adottato) che i costruttori di apparecchiature di rete devono adottare per la gestione delle diverse fasi del processo di trasmissione. Emanato dall’ISO (International Organization for Standardization) nella sua versione definitiva nel 1984 , descrive un modello di architettura versatile ed efficiente basato su una serie di livelli o strati gerarchici in cui adattare gli standard esistenti o indirizzare quelli futuri ovvero ha lo scopo di : fornire uno standard per la connessione di sistemi aperti; fornire una base comune per lo sviluppo di nuovi standard per l'interconnessione di sistemi; fornire un modello rispetto a cui confrontare le architetture di rete. I LIVELLI DEL MODELLO ISO/OSI I livelli più alti sono vicini all’uomo, quelli più bassi sono vicini all’hardware di rete. COME COMUNICANO 2 CALCOLATORI Quando 2 calcolatori devono comunicare tra loro, i dati passano dall’alto verso il basso attraverso i livelli del Pc di partenza. Ogni livello aggiunge informazioni di controllo addizionali che verranno utilizzati per determinare le modalità del trasferimento dei dati sulla rete. Una volta giunti sul Pc di destinazione i dati attraversano i vari livelli in senso inverso. Questa volta ogni livello elimina le informazioni di controllo a lui destinate finchè al termine dell’operazione non restano che i dati nella loro forma originaria. I DISPOSITIVI DI RETE I dispositivi di rete sono nodi che garantiscono il funzionamento , l’efficienza, l’affidabilità e la scalabilità della rete stessa. Hub e repeater : l’hub consente la connessioni fra più host mentre il repeater consente di connettere due diverse reti fra loro. Operano al livello 1 della pila ISO/OSI e non gestiscono l’accesso al mezzo trasmissivo e quindi non controllano l’eventuale collisione di messaggi. I messaggi vengono replicati su tutte le porte dell’hub Bridge e switch : collegano host diversi e reti diverse tra loro. Operano al livello 2 della pila ISO/OSI e instradano il messaggio ricevuto verso la destinazione stabilita. Lo switch rispetto al bridge ha interfacce multiple per cui consente il collegamento diretto fra più host e fornisce prestazioni migliori Router : sono dispositivi in grado di identificare mittente e destinatario dei messaggi attraverso l’indirizzo IP. Operano a livello 3 della pila ISO/OSI Gateway : collega reti di tipo diverso e passa informazioni dall’una all’altra convertendo i protocolli. Opera a livello 7 della pila ISO/OSI Quando un mezzo trasmissivo è condiviso può essere attraversato da un solo messaggio alla volta e per regolamentare l’uso del mezzo trasmissivo si usano protocolli particolari. Il più noto e ormai diventato uno standard è il protocollo a contesa CSMA/CD che ha dato origine alla rete Ethernet, il più diffuso modello oggi di rete locale. RETE ETHERNET(1) È un protocollo standard di schede e cavi per il collegamento veloce fra computer in rete locale . Originariamente sviluppato nel 1976 da Xerox, Intel e Digital per le rete locali a 10 Megabit al secondo, è definito nel documento base dello standard Ethernet chiamato IEEE 802.3. I computer in rete Ethernet possono anche essere di diverso tipo o utilizzare diversi sistemi operativi. Sui computer o nodi devono essere installate schede di comunicazione che si connettono alla rete tramite cavo coassiale o doppino telefonico. Nel corso degli anni la tecnologia è stata sviluppata ulteriormente e, ad oggi, lo standard di comunicazione Ethernet può arrivare a 1000 Mbps ( fast ethernet) . Ethernet non è necessariamente la migliore delle tecnologie possibili, ma si è dimostrata la più economica e la più facile da utilizzare il che ne ha decretato un enorme successo a tutti i livelli d'impiego e in qualsiasi area geografica del mondo. Prevede un'architettura a bus ed è basata sull'impiego del protocollo di accesso CSMA/CD (Carrier Sense Multiple Access with Collision Detection). In pratica ogni stazione può decidere in qualunque momento di accedere al mezzo trasmissivo (Multiple Access), ma deve prima assicurarsi che questo non sia già occupato da qualcun altro che sta trasmettendo (Carrier Sense); a volte può succedere che due stazioni inizino a trasmettere nel medesimo istante e si verifica quindi una collisione che viene rilevata da entrambe le stazioni trasmittenti, le quali interrompono la trasmissione e la ritentano in tempi differenti (Collision Detection). RETE ETHERNET(2) Il metodo di contesa del mezzo trasmissivo della rete Ethernet ha le seguenti regole base : quando una stazione vuole trasmettere un messaggio si mette in ascolto per verificare che il mezzo trasmissivo sia libero, ovvero che non ci sia nessuna trasmissione in atto; se il mezzo trasmissivo è libero inizia la trasmissione del messaggio, che può essere indirizzato ad una particolare stazione, a un gruppo di stazioni o a tutte le stazioni; tutte le stazioni ricevono il messaggio; la stazione a cui è riferito il messaggio immagazzina il medesimo e ne analizza il contenuto; le stazioni a cui non è riferito il messaggio lo scartano. Nel caso in cui capiti che due stazioni incominciano a trasmettere quasi contemporaneamente , essendo entrambe anche in ascolto, rilevano la collisione, e si comportano nel seguente modo: interrompono immediatamente la trasmissione; aspettano qualche istante; il tempo di attesa è determinato da un particolare algoritmo denominato back-off; riprovano a trasmettere in tempi diversi. È molto improbabile che due stazioni trasmettano contemporaneamente, in genere può intercorrere un tempo compreso tra poche centinaia di nanosecondi ad alcune decine di microsecondi tra la partenza delle due trasmissioni. Può succede invece che una stazione si metta in ascolto sul canale trasmissivo lo senta libero, ma in effetti non lo è in quanto in un punto distante della rete un’altra stazione ha già iniziato una trasmissione, ma i relativi segnali elettrici o ottici non si sono ancora propagati lungo tutto il mezzo trasmissivo. MODELLO INTERNET La rete Internet si è sviluppata al di fuori dal modello ISO-OSI e presenta una struttura solo parzialmente aderente al modello OSI. L'architettura di rete Internet Protocol Suite nota anche come architettura TCP/IP, è una architettura composta da 4 strati: strato di accesso alla rete (network access layer); comprende le funzioni che nel modello OSI sono comprese negli strati fisico, di collegamento e parte di quello di rete, non è specificato nell'architettura, perché prevede di utilizzare quelli delle varie piattaforme hardware e conformi agli standard; strato Internet Protocol (IP); è collocabile nella parte alta dello strato di rete del modello OSI, è di tipo senza connessione e best effort, si occupa di instradare e di controllo di congestione; strato di trasporto (TCO o UDP); corrisponde al livello di trasporto del modello OSI, ed è implementato in due versioni, TCP (Transmission Control Protocol) che è un protocollo con connessione ed affidabile, e UDP (User Datagram Protocol) che è senza connessione e non affidabile; strato di applicazione (application protocol); nell'architettura Internet non sono previsti gli strati di sessione e di presentazione, ma solo quello di applicazione; questo strato contiene i protocolli utilizzati poi dai programmi residenti sulle macchine. I protocolli utilizzati in questo strato sono FTP (File Transfer Protocol - per il trasferimento dei file), POP (Post Office Protocol) e SMTP (Simple Mail Transfer Protocol) per la posta elettronica, Telnet per il terminale virtuale, http (HyperText Transfer Protocol - per le pagine Web), DNS (Domain Name Service per convertire nomi alfanumerici in indirizzi IP), NNTP (News Network Transfer Protocol trasferimento articoli dei newsgroup) ) IL PROTOCOLLO TCP/IP(1) Trasmission Control Protocol / Internet protocol Rappresenta in un certo modo l'insieme delle regole di comunicazione su internet e si basa sulla nozione di indirizzamento IP, cioè il fatto di fornire un indirizzo IP ad ogni terminale di rete per poter inviare dei pacchetti di dati. Su internet, i computer comunicano fra loro grazie al protocollo IP che usa degli indirizzi numerici, detti Indirizzi IP, composti da 4 numeri interi (4 byte) compresi tra 0 e 255 e siglati sotto la forma di xxx.xxx.xxx.xxx. Ad esempio 194.153.205.26 è un indirizzo IP dato in forma tecnica. Questi indirizzi servono ai computer di rete per comunicare fra loro, quindi ogni computer di rete ha un indirizzo IP unico sulla rete stessa. E' l'ICANN (Internet Corporation for Assigned Names and Numbers) ad essere incaricata di distribuire gli indirizzi IP pubblici, cioè gli indirizzi IP dei computer direttamente connessi alla rete pubblica internet. Un indirizzo IP è un indirizzo a 32 bits, solitamente siglato sotto forma di 4 numeri interi separati da punti. Nell'indirizzo IP si distinguono effettivamente due parti : la parte dei numeri posti a sinistra designa la rete ed è chiamata ID di rete (in inglese netID), i numeri di destra designano i computer della rete stessa e sono detti host-ID. Una rete siglata 102.0.0.0 può contenere dei computer con un indirizzo IP che varia tra 102.0.0.1 e 102.255.255.254 (256*256*256-2=16777214 possibilità), mentre una rete siglata 194.26 non potrà contenere che dei computer con un indirizzo IP compreso fra 194.26.0.1 e 194.26.255.254 (256*256-2=65534 possibilità), e questa è la nozione di classe d'indirizzo IP. IL PROTOCOLLO TCP/IP(2) Gli indirizzi IP sono ripartiti in classi, secondo il numero di bytes che rappresentano la rete. Classe A In un indirizzo IP di classe A, il primo byte rappresenta la rete. Il bit di peso forte (il primo bit, quello di sinistra) è a zero, il che significa che vi sono 27(00000000 a 01111111) possibilità di reti, ossia 128 possibilità. Tuttavia, la rete 0 (bits che valgono 00000000) non esiste e il numero 127 è riservato per designare il vostro terminale. Le reti disponibili in classe A sono quindi le reti che vanno da 1.0.0.0 a 126.0.0.0 (gli ultimi bytes sono degli zero che indicano che si tratta effettivamente di reti e non di computer!) I tre bytes di destra rappresentano i computer di rete, la rete può quindi contenere un numero di computer uguale a 224-2 = 16777214 computer. Classe B In un indirizzo IP di classe B, i primi due bytes rappresentano la rete. I primi due bits sono 1 e 0, il che significa che vi sono 214(10 000000 00000000 a 10 111111 11111111) possibilità di reti, ossia 16384 reti possibili. Le reti disponibili in classe B sono quindi le reti che vanno da 128.0.0.0 a 191.255.0.0 I due bytes di destra rappresentano i computer della rete. La rete può quindi contenere un numero di computer pari a: 216-21 = 65534 computer. Classe C In un indirizzo IP di classe C, i primi tre bytes rappresentano la rete. I primi tre bits sono 1,1 e 0,il che significa che vi sono 221possibilità di reti, cioè 2097152. Le reti disponibili in classe C sono quindi le reti che vanno da 192.0.0.0 a 223.255.255.0 . Il byte di destra rappresenta i computer di rete, la rete può quindi contenere: 28-21 = 254 computer. IL PROTOCOLLO TCP/IP(3) Classe A B C Numero di reti possibili 126 16384 2097152 Numero massimo di computer su ciascuna 16777214 65534 254 Gli indirizzi di classe A sono riservati a delle reti molto grandi, mentre ad esempio si attribuiranno degli indirizzi di classe C a delle piccole reti aziendali Capita spesso che in un'azienda o in un ente vi sia un solo computer connesso a internet, che funge da intermediario per gli altri computer di rete per l'accesso a internet. In questa configurazione, solo il computer connesso a internet ha bisogno di riservare un indirizzo IP presso l'ICANN. Tuttavia, gli altri computer hanno comunque bisogno di un indirizzo IP per poter comunicare insieme in interno. Così l'ICANN ha riservato alcuni indirizzi in ciascuna delle classi per permettere di attribuire un indirizzo IP ai computer di una rete locale collegata a internet senza rischiare di creare dei conflitti di indirizzi IP sul web. Si tratta dei seguenti indirizzi : Indirizzi privati di classe A: 10.0.0.1 a 10.255.255.254, che permettono la creazione di rete private estese che comprendono migliaia di computer. Indirizzi IP privati di classe B: 172.16.0.1 a 172.31.255.254, che permettono di creare delle reti private di medie dimensioni. Indirizzi IP privati di classe C: 192.168.0.1 a 192.168.0.254, per la realizzazione di piccole rete private. MASCHERA DI SUB-RETE Si fabbrica una maschera che contiene degli 1 al posto dei bits che si desidera conservare, e degli 0 per quelli che si vogliono annullare. Una volta creata la maschera, basta fra uno xor logico tra il valore che si vuole mascherare e la maschera per mantenere intatta la parte desiderata e annullare il resto. Cosi, una maschera di rete (in inglesenetmask) si presenta sottoforma di 4 bytes separati da punti (come un indirizzo IP); essa comprende degli zero a livello dei bits dell'indirizzo IP che si vogliono annullare e degli 1 a livello di quelli che desidera conservare. Permette di identificare la rete associata ad un indirizzo IP. Vediamo con un esempio. Una rete è determinata da un certo numero di bytes dell'indirizzo IP ad es la rete associata all'indirizzo34.56.123.12 è 34.0.0.0. Per conoscere l'indirizzo di rete associato all'indirizzo IP34.56.123.12, basterà quindi applicare una maschera il cui primo byte prevede solo degli 1 poi degli 0 sui bytes seguenti. La maschera è:11111111.00000000.00000000.00000000 La maschera associata all'indirizzo IP 34.208.123.12 è quindi 255.0.0.0. Il valore binario di 34.208.123.12 è :00100010.11010000.01111011.00001100 Un AND logico tra l'indirizzo IP e la maschera da quindi il seguente risultato : 00100010.11010000.01111011.00001100 AND 11111111.00000000.00000000.00000000 = 00100010.00000000.00000000.00000000 Si ottiene 34.0.0.0 RETI BASATE SU TCP/IP Nelle reti basate sul protocollo TCP/IP ogni nodo è identificato da : un indirizzo MAC ovvero un codice univoco inserito nella scheda di rete composto da 48 bit ( 24 dei quali assegnati dall’IEEE e conservati in un registro mondiale così da evitare duplicazioni e 24 assegnati dal produttore della scheda ). (per vedere quella del proprio computer in ambiente dos digitare Arp –a) un indirizzo IP un nome logico assegnato da chi configura la rete.