10110 Reti di Calcolatori 01100 01011 MODELLI ISO/OSI e TCP/IP 1 10110 Reti di Calcolatori 01100 01011 Livelli e Servizi Il modello OSI Il modello TCP/IP Un confronto tra OSI e TCP/IP 2 10110 Protocolli di rete 01100 01011 Per ridurre la complessità e per ragioni di modularità le reti sono organizzate come una serie di strati o livelli: ognuno usa i servizi del livello inferiore. Le convenzioni e le regole usate nelle comunicazioni di uno stesso livello tra due macchine sono dette protocollo. Un protocollo è un accordo tra più elementi che devono stabilire una conversazione. 3 10110 Protocolli di rete 01100 01011 Logicamente il livello n di una macchina comunica con il livello n di un’altra macchina. In pratica, nessun dato viene trasferito direttamente dal livello n di una macchina al livello n di un’altra macchina. I dati passano da un livello a quello sottostante fino al livello fisico che trasmette i dati sulla rete fino alla macchina ricevente. Tra due livelli vicini esiste una interfaccia. 4 10110 Gerarchie di protocolli: architettura di rete 01100 01011 Livelli, protocolli e interfacce 5 10110 Gerarchie di protocolli: esempio 01100 01011 Esempio: l’architettura filosofotraduttoresegretaria I 3 protocolli sono indipendenti: l’importante è la stabilità delle interfacce 6 10110 Architetture di rete 01100 01011 Un insieme di protocolli, uno per livello, è detto pila di protocolli. Un insieme di livelli, protocolli e interfacce è chiamato architettura di rete. Le architetture di rete sono alla base di tutte le reti di calcolatori. 7 Servizi con connessione 10110 01100 01011 Servizi con connessione (connection oriented) Il servizio è offerto attraverso tre fasi: Apertura della connessione tra due punti della rete Utilizzo della connessione per inviare i dati Chiusura della connessione Caratteristica fondamentale: i dati sono ricevuti nello stesso ordine in cui vengono inviati Analogia: sistema telefonico Due varianti: stream di messaggi e stream di byte 8 Servizi senza connessione 10110 01100 01011 Servizi senza connessione (connection-less) Non c’è alcuna connessione I dati sono inviati impacchettati in messaggi, ognuno dei quali contiene l’indirizzo completo del destinatario I messaggi non arrivano necessariamente nell’ordine in cui sono inviati Analogia: sistema postale 9 Qualità del servizio 10110 01100 01011 Ordine di consegna dei dati: è garantito solo dai servizi con connessione Ricezione garantita del messaggio Il ricevitore manda un ack (ricevuta) per ogni messaggio Ack usati sia per servizi con connessione che senza connessione Gli ack introducono un ritardo non sempre accettabile Garanzia sulla consegna corretta dei messaggi Garanzia sui tempi di consegna (es. servizi real-time multimediali) 10 10110 Servizi con Connessione e senza Connessione 01100 01011 Con connessione Senza connessione Tabella dei principali tipi di servizi SERVIZI Esempi Stream di messaggi affidabili Sequenza di pagine Stream di byte affidabili Collegamento remoto Connessione non affidabile Voce digitalizzata Datagrammi - non affidabile Blocchi di posta elettronica Datagrammi con ack Posta elettronica con ricevuta Richiesta – Risposta Interrogazione database 11 10110 Il Modello ISO-OSI 01100 01011 Il modello ISO-OSI composto da 7 livelli è ISO = International Standards Organization OSI = Open Systems Interconnection 12 10110 Modello ISO-OSI 01100 01011 Principi guida per lo sviluppo dei vari livelli (1983) • Tramite l’organizzazione a livelli si definisce un grado di astrazione. • I livelli devono corrispondere a funzioni definite. • Le funzioni devono considerare l’insieme degli standard internazionali. • I confini tra i livelli devono minimizzare il flusso delle informazioni tra livello e livello. • Il numero di livelli deve essere ottimale (non troppi né pochi). 13 10110 Modello ISO-OSI 01100 01011 14 Livello Fisico 10110 01100 01011 Riguarda la trasmissione dei bit sul canale fisico di trasmissione Coinvolge aspetti di tipo: • • • elettrico (linee comunicazione, propagazione onde) comunicazione (simplex, half-duplex, full-duplex, …) meccanico (standard dei connettori, …) 15 Livello Data Link 10110 01100 01011 Le funzionalità di questo livello sono: 1. Trasforma la linea fisica in una linea in cui gli errori di trasmissione vengano sempre segnalati. 2. Divide le informazioni in pacchetti e li trasmette attraverso il mezzo fisico, attendendo un segnale di “avvenuta ricezione” (ack). 3. Gestisce l’eventuale duplicazione dei frame ricevuti, causata dalla perdita dell’ack. 4. Sincronizza un mittente veloce con un ricevente lento (controllo di flusso). 5. Gestisce l’accesso al canale di trasmissione condiviso. 16 10110 Livello Network 01100 01011 Le funzionalità del livello Rete sono: 1. Controlla il cammino ed il flusso di pacchetti (algoritmi di routing). 2. Gestisce la congestione della rete. 3. Gestisce l’accounting dei pacchetti sulle reti a pagamento. 4. Implementa l’interfaccia necessaria alla comunicazione tra reti di tipo diverso (internetworking). 17 10110 Livello Transport 01100 01011 Il livello di trasporto è il primo livello “end-to-end”. Il livello di trasporto deve eventualmente sopperire alla mancanza di affidabilità del livello di rete (pacchetti persi, duplicati, invertiti ecc.) Funzionalità principali: 1. Accetta dati dal livello superiore, li spezza in parti più piccole e le trasmette, assicurando un servizio privo di errori e l’ordine corretto di ricomposizione (servizio orientato alla connessione). 2. Effettua il controllo di flusso end-to-end 3. Fornisce il servizio di recapito dei messaggi senza garanzia (servizio senza connessione). 4. Gestisce la diffusione di messaggi a più destinazioni (multicast). 18 Livello Session 10110 01100 01011 Le funzionalità di questo livello sono: 1. Controlla il dialogo tra due macchine: la comunicazione non può essere sempre full-duplex, questo livello tiene traccia di chi è il turno attuale. 2. Gestisce il controllo dei token. 3. Gestisce la sincronizzazione nel trasferimento dei dati (es. checkpoint). 19 10110 Livello Presentation 01100 01011 Le funzionalità di questo livello si limitano alla traduzione dei dati che viaggiano sulla rete in formati astratti. Queste informazioni vengono poi riconvertite nel formato proprietario della macchina destinataria. 20 10110 Livello Application 01100 01011 I servizi di questo livello sono completamente legati alle applicazioni: • • • • Quali dati trasmettere Quando trasmettere Dove trasmettere / a chi Significato di bits / bytes. Esempi di applicazioni sono: File Transfer, Posta elettronica, World Wide Web, Multimedialità, File System distribuiti. 21 10110 Comunicazione nel modello OSI 01100 01011 22 10110 TCP/IP vs OSI 01100 01011 Applicazione (FTP, SMTP, TELNET, HTTP, DNS, ) Trasporto (TCP, UDP) Internet (IP) Host-to-Network (non specificato) Non presenti nel modello TCP/IP 23 10110 TCP/IP 01100 01011 Livello di RETE IP Internet Protocol Scambio di datagrammi senza garanzia di consegna Livello di TRASPORTO TCP Transmission Control Protocol • flusso di byte bidirezionale lungo un canale virtuale • ordinamento dei dati • dati non duplicati • controllo di flusso • controllo degli errori UDP User Datagram Protocol • Scambio di messaggi inaffidabile • senza connessione e senza ordine 24 TCP/IP vs OSI 10110 01100 01011 I vantaggi del TCP/IP sull’OSI sono fondamentalmente due: 1. Quando nacque OSI, TCP/IP era già presente nel mondo accademico. 2. Lo stack TCP/IP è enormemente più semplice dello stack OSI. Il TCP/IP parte dai protocolli mentre l’OSI parte dai livelli. 25 10110 TCP/IP vs OSI 01100 01011 Protocolli e reti nel modello TCP/IP. 26 10110 Confronto tra OSI e TCP/IP 01100 01011 Concetti centrali nel modello OSI Servizi Interfacce Protocolli Il modello TCP/IP originale non aveva una chiara distinzione tra questi concetti. 27 Problemi del modello OSI 10110 01100 01011 Perchè l’OSI è rimasto solo un modello di riferimento? Momento sbagliato (troppo tardi!) Cattiva tecnologia (non open-source) Non buone implementazioni 28 10110 Problemi del modello TCP/IP 01100 01011 Limiti del modello: Non è generale. Non distingue tra livelli, interfacce e protocolli. Il livello Host-to-Network non è un livello. Non sono definiti i livelli Fisico e Data link. 29 10110 Esempi di reti 01100 01011 ARPANET, NFSNET, Internet Reti Connection-Oriented : X.25, Frame Relay, e ATM Ethernet Wireless LAN 802.11 30 ARPANET 10110 01100 01011 La struttura originale di ARPANET. IMP = Interface Message Processor (equivale al router) Rete di tipo store-and-forward 31 10110 ARPANET 01100 01011 Dicembre 1969 Luglio 1970 April 1972 Marzo 1971 September 1972. 32 10110 NSFNET 01100 01011 La dorsale NSFNET nel 1988. 33 Internet 10110 01100 01011 È nata dall’interconnessione di Arpanet e NSFNET, e si è velocemente estesa in tutto il mondo Applicazioni tradizionali (1970 – 1990) E-mail News Remote login (telnet) File transfer Dai primi anni ’90: World Wide Web, sviluppato al CERN di Ginevra 34 10110 Ethernet 01100 01011 Architettura originale di Ethernet. 35 LAN Wireless 10110 01100 01011 (a) Rete Wireless con una stazione base. (b) Rete wireless ad hoc. 36 10110 LAN Wireless 01100 01011 Una rete multicella 802.11. 37