Laboratorio di Informatica (Chimica) Lezione 03: Le Reti. Walter Cazzola Dipartimento di Informatica e Comunicazione Università degli Studi di Milano. e-mail: [email protected] Walter Cazzola Lezione 3: Reti di Computer 1 Le Reti Telematiche Tra le tecnologie del XX secolo dominano l’elaborazione e la distribuzione delle informazioni – Nascono le reti di telecomunicazioni – Si sviluppano le componenti HW e SW dei calcolatori A partire dagli anni ‘70 informatica e telecomunicazioni convergono nelle reti telematiche Walter Cazzola Lezione 3: Reti di Computer 2 Le Reti Telematiche Una rete consiste in: – un certo numero di dispositivi – interconnessi, capaci di comunicare e di condividere le proprie risorse con gli altri – calcolatori (per l’elaborazione dei dati) – event. con compiti differenziati – dispositivi e canali di comunicazione (per il trasferimento fisico dei dati) – modem, ... – cavi, onde, … – software di gestione della rete Walter Cazzola Lezione 3: Reti di Computer 3 Le Reti Telematiche Finalità: Condivisione di risorse – – – dati (database remoti o distribuiti, …) programmi dispositivi (stampanti, elaboratori, dischi, …) – – – messaggi (email, chat, irc, news, bbs, … file ma anche videoconferenza, ... Comunicazione tra utenti Walter Cazzola Lezione 3: Reti di Computer 4 Le Reti Telematiche Miglioramento dell’affidabiltà del sistema – replicazione di file e di risorse Risparmio – condivisione (stampanti, …) – realizzazione di grandi sistemi di calcolo a partire da tanti piccoli elaboratori (downsizing) Intrattenimento – video on demand, musica on line, giochi di rete Walter Cazzola Lezione 3: Reti di Computer 5 Sistema di Comunicazione Sorgente Sistema di Trasmissione sender segnale receiver Canale di Trasmissione Destinatario Walter Cazzola Lezione 3: Reti di Computer 6 Sistema di Comunicazione Problemi da affrontare: come mettere in comunicazione più sorgenti e più destinatari – schemi di connessione (topologia) – tecnologie di trasmissione come trasmettere i segnali in modo affidabile e efficiente – mezzi di trasmissione – codifiche e protocolli Walter Cazzola Lezione 3: Reti di Computer 7 Le Reti di Calcolatori Per quanto riguarda come mettere in comunicazione più sorgenti e più destinatari, le reti sono caratterizzate in base a: – Scala, cioè distanza tra i nodi – Topologia, cioè lo schema di connessione tra i nodi – Tecnologia di trasmissione: a diffusione (broadcast), punto a punto Walter Cazzola Lezione 3: Reti di Computer 8 Le Reti di Calcolatori Rappresentate mediante grafi vertici: nodi della rete – computer (host) e terminali – apparati di rete o elementi di commutazione (router, gateway) archi: connessioni tra i nodi – cavi, collegamenti satellitari, micro-onde Walter Cazzola Lezione 3: Reti di Computer 9 Topologie di Rete La topologia, cioè lo schema di connessione tra i nodi, può essere – – – – – bus o lineare anello stella albero maglia Walter Cazzola Lezione 3: Reti di Computer 10 Topologia a Bus Topologia a bus o lineare: tutti i computer sono collegati ad un cavo lineare condiviso sul quale trasmettono a turno (secondo una predefinita regola di arbitraggio), e ascoltano simultaneamente Walter Cazzola Lezione 3: Reti di Computer 11 Topologia ad Anello Topologia ad anello: – i computer sono collegati su un anello – i computer trasmettono a turno (secondo una regola di arbitraggio prestabilita) – i dati inviati da un nodo percorrono l’anello fino a quando raggiungono il destinatario es: Token Ring Walter Cazzola Lezione 3: Reti di Computer 12 Topologia a Stella Topologia a stella: tutti i nodi sono collegati ad un calcolatore centrale (host), che riceve i dati inviati dai singoli e li smista ai destinatari. Walter Cazzola Lezione 3: Reti di Computer 13 Topologia ad ALbero Altri schemi di connessione dei nodi di una rete sono varianti o combinazione dei precedenti. Walter Cazzola Lezione 3: Reti di Computer 14 Topologia a Maglia Walter Cazzola Lezione 3: Reti di Computer 15 Scala Le reti sono classificate in base alla scala, cioè alla distanza tra i nodi: – – – – locale metropolitana geografica internetwork Walter Cazzola Lezione 3: Reti di Computer 16 Scala - Sistemi Multiprocessore Reti interne al computer: nei computer paralleli (cioè dotati di più processori) i processori sono collegati attraverso una rete. – Hanno una estensione molto ridotta (da 1 cm. a 1 m. massimo). – Sono molto veloci – Gli schemi di connessione dei nodi formano strutture con particolari proprietà (alberi, maglie, ipercubi) Walter Cazzola Lezione 3: Reti di Computer 17 Scala: Reti locali Reti locali (LAN, Local Area Network) – collegano i computer di una stanza, un edificio, un quartiere (si estendono al più per qualche km) – sono veloci (Gb/s) – sono usate in modo esclusivo dal proprietario LAN Hub LAN Server Stampante Non Condivisa Stampante Condivisa Walter Cazzola Lezione 3: Reti di Computer Aula Computer 18 Scala: Reti Metropolitane Reti metropolitane (MAN, Metropolitan Area Network) – collegano i computer di vari edifici a livello cittadino realizzate spesso con la stessa tecnologia delle LAN – possono trasportare dati e voce – possono essere private o pubbliche – sono mediamente veloci (Mb/s) Walter Cazzola Lezione 3: Reti di Computer 19 Scala: Reti Geografiche Reti geografiche (WAN, Wide Area Network) – collegano i computer sul territorio nazionale – usano linee di comunicazione pubbliche (telefoniche, canali satellitari) – hanno una topologia complessa – velocità dell’ordine dei Kb/s - Mb/s Walter Cazzola Lezione 3: Reti di Computer 20 Scala: Reti di Reti Sono una aggregazione di varie reti – più reti dello stesso tipo – reti di tipo diverso Îtecnologie e scale diverse Îhardware e software diversi esempio: Internet - la rete delle reti Walter Cazzola Lezione 3: Reti di Computer 21 Le Reti Telematiche Per quanto riguarda come trasmettere i segnali in modo affidabile e efficiente, possiamo vedere le reti come un insieme di: – canali di comunicazione (dedicati/condivisi) – trasportano fisicamente le informazioni codificate – protocolli (proprietari/standard pubblici) – definiscono le regole e il modo per trasferire le informazioni – apparati di rete – codificano l’informazione e la inviano sui cavi. che collegano tra loro computer distinti Walter Cazzola Lezione 3: Reti di Computer 22 Canali di Comunicazione Canali guidati – doppino telefonico, – cavo coassiale, – fibre ottiche, Canali non guidati – – – onde radio, micro onde, infra rossi. Walter Cazzola canali guidati Lezione 3: Reti di Computer 23 Canali di Comunicazione tipo doppino telefonico velocità minima 300bps velocità massima 10 mbps micro onde 256kbps 100 mbps satellite 256kbps 100 mbps cavo coassiale 56 kbps 200 mbps fibra ottica 500 kbps 10 gbps Walter Cazzola Lezione 3: Reti di Computer 24 Canali di Comunicazione Esempio di sistema a collegamento misto Walter Cazzola Lezione 3: Reti di Computer 25 Dispositivi di Rete I segnali trasmessi in rete devono essere: – – – amplificati per arrivare più lontano convertiti per essere trasferiti ad una rete diversa inviati nella giusta direzione Ripetitori (repeater) – rigenerano e amplificano i segnali Ponti (bridge) – connettono reti che utilizzano collegamenti fisici diversi. Instradatori (router) – instradano un messaggio da un nodo in una rete ad un nodo in un’altra rete Gateway – collegano reti che utilizzano protocolli di comunicazione diversi Walter Cazzola Lezione 3: Reti di Computer 26 Dispositivi di rete LAN repeater LAN router Walter Cazzola bridge LAN Lezione 3: Reti di Computer LAN gateway internet 27 Le Reti Telematiche Per quanto riguarda i protocolli, che definiscono le regole e il modo per trasferire le informazioni, possiamo distinguere le reti in base a: organizzazione – gerarchica – paritetica tecnologia di trasmissione – a diffusione (broadcast) – punto a punto software (standard di comunicazione) – modello ISO-OSI – architettura TCP/IP Walter Cazzola Lezione 3: Reti di Computer 28 Organizzazioni client/server. – organizzazione gerarchica – il server gestisce centralmente la condivisione delle risorse, la sicurezza della rete e la sua gestione – i client fanno le richieste al server. peer-to-peer – organizzazione paritetica – ogni stazione si occupa dei propri problemi di gestione. Walter Cazzola Lezione 3: Reti di Computer 29 Tecnologie di Trasmissione a diffusione (broadcast) – tutti i nodi condividono un unico canale di comunicazione – l’informazione spedita dalla sorgente viene ricevuta da tutti i nodi della rete Îsolo la destinazione la elabora – tipica di reti locali e reti senza fili (wireless) Walter Cazzola Lezione 3: Reti di Computer 30 Tecnologie di Trasmissione punto a punto – connessioni tra coppie di nodi – l’informazione raggiunge la destinazione attraversando i nodi intermedi sul cammino dalla sorgente ad essa Î ciascun nodo intermedio deve sapere in quale direzione far proseguire l’informazione Î ricerca del cammino Î tolleranza ai guasti grazie a cammini multipli – dalle reti geografiche in sù Walter Cazzola Lezione 3: Reti di Computer 31 Trasmissione punto a punto Strategie di instradamento: – commutazione di circuito Î modello dei collegamenti telefonici Î crea un canale logico temporaneo dedicato, costituito da una successione di connessioni tra nodi della rete. – commutazione di pacchetto Î modello delle spedizioni postali Î informazione suddivisa in pacchetti di dati di piccole dimensioni (KByte) Walter Cazzola Lezione 3: Reti di Computer 32 Commutazione di Pacchetto I pacchetti, cioè le unità minime di trasmissione, sono composti da intestazione (header) e dati (payload) – sono instradabili indipendentemente – contengono ciascuno mittente e destinatario e le informazioni necessarie per ricomporre i pacchetti nel formato originale dell’informazione Walter Cazzola Lezione 3: Reti di Computer 33 Standard di Comunicazione Per poter comunicare, due calcolatori devono concordare delle convenzioni, o standard di comunicazione, relative a: – formato dei dati – struttura dei pacchetti e informazioni di controllo – velocità di trasmissione – ... Walter Cazzola Lezione 3: Reti di Computer 34 Standard di Comunicazione Modello ISO/OSI Organizzato a livelli per ridurne la complessità e aumentarne la flessibilità – il numero dei livelli e le loro funzionalità dipendono dal tipo di rete; – ogni livello formalizza un particolare aspetto (livello di astrazione) della comunicazione; – ogni livello fornisce servizi per, e comunica fisicamente solo con, i due livelli adiacenti, superiore e inferiore (se esistono). Walter Cazzola Lezione 3: Reti di Computer 35 Standard di Comunicazione Esempio: B A pacco pacco spedizioniere spedizioniere container container c. aerea Walter Cazzola aereo Lezione 3: Reti di Computer c. aerea 36 Standard di Comunicazione Livelli adiacenti comunicano mediante interfacce – definiscono le operazioni primitive e i servizi che il livello sottostante offre a quello soprastante – sono strutturate in modo da ridurre al minimo gli scambi di informazione. Le regole per la comunicazione sui vari livelli si chiamano protocolli – stabiliscono come la comunicazione deve procedere e il formato dei pacchetti – ogni protocollo aggiunge un’instestazione al messaggio con le informazioni che servono al livello omologo all’altro capo della comunicazione per interpretare il messaggio. Walter Cazzola Lezione 3: Reti di Computer 37 Standard di Comunicazione L’insieme dei protocolli usati ai vari livelli di una rete è detto pila dei protocolli. L’insieme dei livelli e dei protocolli si chiama architettura di rete. Walter Cazzola Lezione 3: Reti di Computer 38 Standard di comunicazione Il modello di riferimento ISO-OSI Walter Cazzola Lezione 3: Reti di Computer 39 L’architettura TCP/IP Transmission Control Protocol/Internet Protocol – sviluppata per consentire l’interoperabilità tra reti fisiche diverse negli anni ’70. Composta da 5 livelli (lo stack TCP/IP è una realizzazione del modello ISO/OSI) – – – – – applicazione trasporto internet accesso alla rete fisico Walter Cazzola Lezione 3: Reti di Computer 40 L’architettura TCP/IP Livello fisico – – – le la la caratteristiche del mezzo di trasmissione natura dei segnali velocità di trasmissione Livello di accesso alla rete – organizzazione dei dati – instradamento all’interno di una rete Walter Cazzola Lezione 3: Reti di Computer 41 L’architettura TCP/IP Livello internet – definisce il formato dei messaggi – sistema di tipo senza connessione Î verifica l’integrità dell’intestazione, ma non quella dei dati Î non garantisce l’ordine di consegna né la consegna Î i pacchetti possono seguire percorsi diversi – – – definisce lo schema di indirizzamento gestisce l’attraversamento di reti diverse (router) trasparente all’utente finale Walter Cazzola Lezione 3: Reti di Computer 42 L’architettura TCP/IP Livello Trasporto – organizza in pacchetti la sequenza di byte da trasmettere, la riorganizza all’arrivo – usa il Transport Control Protocol, orientato alla connessione Î garantisce l’ordine dei pacchetti Î garantisce la consegna Î garantisce la correttezza dei byte trasmessi ritrasmette in caso di errore Î controlla il flusso perché causa di un trasmittente Walter Cazzola un ricevente lento non soffochi a veloce Lezione 3: Reti di Computer 43 L’architettura TCP/IP Livello Trasporto (segue) – può usare lo User Datagram Protocol Î privo di connessione Î non garantisce l’ordine dei pacchetti Î inaffidabile Î veloce Î non controlla la correttezza Î adatto per servizi in cui il tempo di risposta è più importante della correttezza. Es., video, audio Walter Cazzola Lezione 3: Reti di Computer 44 L’architettura TCP/IP Livello applicazione – TCP/IP non è orientato ad alcuna specifica applicazione. – Livello applicazione di TCP/IP specifica come un’applicazione può utilizzare l’insieme dei protocolli TCP/IP, fornendo quindi la possibilità di comunicazione tra applicazioni eseguite su calcolatori diversi Protocolli applicativi: definiti al di sopra di TCP/IP Walter Cazzola Lezione 3: Reti di Computer 45 L’architettura TCP/IP È un’eccellente piattaforma per la realizzazione di applicazioni client-server affidabili. Permette di condividere informazioni tra organizzazioni diverse connesse alla rete Internet. È implementato nella gran parte dei sistemi operativi. Walter Cazzola Lezione 3: Reti di Computer 46 Internet Definizioni: – Una rete di reti basate sui protocolli TCP/IP; – un insieme di risorse informative che tale rete rende disponibili; – una comunità di individui che usa tale rete. Walter Cazzola Lezione 3: Reti di Computer 47 Internet Schema di indirizzamento Definito da IP, a 32 bit (4 Byte) Gli indirizzi IP (IP address) vengono rappresentati in forma decimale, un numero per ogni Byte. Ogni calcolatore sulla rete è identificato univocamente da un indirizzo simbolico oltre che da uno numerico – athena.cs.wm.edu = 128.239.26.67 Ogni indirizzo IP è concettulamente diviso in due parti – la rete fisica a cui la stazione è collegata – la singola stazione nell’ambito della rete fisica Walter Cazzola Lezione 3: Reti di Computer 48 Internet Schema di indirizzamento I campi dell’indirizzo identificano gerarchicamente la macchina nella rete – da sin a dx nel simbolico – da dx a sin nel numerico. esempio – athena.cs.wm.edu = 128.239.26.67 Î edu (128): la rete della ricerca & istruzione USA Î wm (239): l’istituzione Î cs (26): il dipartimento Î athena (67): la macchina Walter Cazzola Lezione 3: Reti di Computer 49 Internet Il suffisso simbolico è fisso. Per gli USA – – – – – .edu: istituti universitari e simili .gov: enti governativi .org: enti non commerciali .com: siti commerciali, ormai internazionale .mil: siti militari Per gli altri paesi è l‘indificativo del paese: – .it (Italia), .de (Germania), .uk (Regno Unito), .au (Australia), .ch (Svizzera), ecc. Walter Cazzola Lezione 3: Reti di Computer 50 Internet Protocolli applicativi – i protocolli di alto livello che i prodotti software usano per offrire servizi agli utenti finali – offrono una comunicazione basata su un’architettura di tipo client-server. Walter Cazzola Lezione 3: Reti di Computer 51 Internet Servizi e Protocolli applicativi Connessione a calcolatori remoti: il proprio calcolatore è impiegato come terminale a interfaccia alfanumerica. – – – telnet rsh ssh Trasferimento di file tra calcolatori – FTP: File Transfer Protocol Posta elettronica: consente agli utenti di scambiarsi messaggi. – SMTP: Simple Mail Transfer Protocol - email – POP: Post Office Protocol - lettura remota della posta elettronica Walter Cazzola Lezione 3: Reti di Computer 52 Internet Servizi e Protocolli applicazione News: messaggistica all’interno di gruppi di interesse (newsgroups) – NNTP: Network News Transport Protocol World Wide Web: consultazione interattiva di ipermedia con modalità point-and-click – HTTP: HyperText Transfer Protocol – accesso ad altri servizi Î posta elettronica Î trasferimento file Walter Cazzola Lezione 3: Reti di Computer 53