analisi del modello OSI livello collegamento dati (data link layer) ha il compito di trasferire senza errori blocchi di dati detti trame (frame), suddividere e ricomporre i messaggi in trame, gestirne il controllo di flusso, rendere invisibile la topologia dei collegamenti sottostanti. Protocolli standard: HDLC. livello collegamento dati SYN INDIR dati SYN livello collegamento dati trama Modelli di riferimento Architettura degli elaboratori -2A.Memo 13 analisi del modello OSI livello collegamento dati - servizi funzioni richieste ai servizi non connessi • suddividere in frame e ricomporre le N_IDU • individuare gli errori di flusso • individuare e correggere gli errori sui dati funzioni richieste ai servizi connessi • stabilire e rilasciare la connessione • trasferire i dati con le funzionalità connectionless Modelli di riferimento Architettura degli elaboratori -2A.Memo 14 analisi del modello OSI livello collegamento dati - errori sui dati codici di Hamming • rilevano e correggono gli errori • per rilevare d errori è necessario un codice a distanza d+1 • per correggere d errori è necessario un codice a distanza 2d+1 • per gli errori a raffica si usa la trasposizione a griglia codici a ridondanza ciclica (CRC) • rivelano solo la presenza di errori • facilmente implementabili via hardware Modelli di riferimento Architettura degli elaboratori -2A.Memo 15 analisi del modello OSI livello collegamento dati - errori sul flusso protocollo Stop-and-Wait • il mittente invia un frame, azzera il contatore di tentativi, fa partire il timer di attesa risposta e si pone in attesa • se entro il tempo impostato dal timer non riceve risposta incrementa il contatore e ritrasmette il frame fino ad un numero massimo di tentativi • se riceve risposta positiva, ricomincia con un nuovo frame • se riceve risposta negativa, riprova con lo stesso frame • i frame devono essere numerati per riconoscere le duplicazioni, è scadente per tempi di latenza consistenti Modelli di riferimento Architettura degli elaboratori -2A.Memo 16 analisi del modello OSI livello collegamento dati - errori sul flusso protocolli Sliding window • si adotta la tecnica del piggybacking • il mittente ha una finestra di trasmissione contenente i numeri dei frame spediti e non ancora confermati; ogni nuovo frame da trasmettere allunga la finestra verso l’alto, ogni riscontro positivo la restringe dal basso; la dimensione della finestra impone la dimensione del buffer % segue Modelli di riferimento Architettura degli elaboratori -2A.Memo 17 analisi del modello OSI livello collegamento dati - errori sul flusso protocolli Sliding window (segue) • il destinatario ha una finestra di ricezione contenente i numeri dei frame che si aspetta di ricevere; quando arriva il frame con il primo numero atteso, il frame viene passato al livello superiore, si emette un riscontro positivo e si sposta il contenuto della finestra verso l’alto di un posto • è ammesso il pipelining (più frame trasmessi senza attendere risposta). Varianti tradizionali: – go back N – selective repeat Modelli di riferimento Architettura degli elaboratori -2A.Memo 18 analisi del modello OSI: livello rete (network layer) ha il compito di trasferire messaggi collegando anche reti diverse; svolge funzioni di indirizzamento, instradamento, controllo del flusso (congestione). Rende invisibile la tecnologia di commutazione. Protocolli standard: X.25 PLP livello rete Modelli di riferimento livello rete Architettura degli elaboratori -2A.Memo 19 analisi del modello OSI livello rete : internetworking instradamento • funzioni di routing e di relayng • ottimizzazione per l’utente (tempi di attraversamento) e per il gestore (massimo utilizzo delle linee) compatibilità • diversi schemi di indirizzamento, di formato dei pacchetti, di controllo di flusso e di gestione degli errori • tratti con servizi connessi e tratti non connessi Modelli di riferimento Architettura degli elaboratori -2A.Memo 20 analisi del modello OSI livello rete : tecniche di indirizzamento routing by network address • per servizi non connessi • utilizza tabelle di instradamento (#link e new_addr) label swapping • per servizi connessi • usa identificatori invece di indirizzi Modelli di riferimento Architettura degli elaboratori -2A.Memo 21 analisi del modello OSI livello rete : algoritmi di indirizzamento statici • tabelle di instradamento fisso dinamici • globali (centro che calcola le tabelle per tutti) • locali (backward learning) • distribuiti (con o senza il calcolo dello stato globale) Modelli di riferimento Architettura degli elaboratori -2A.Memo 22 analisi del modello OSI livello trasporto (transport layer) ha il compito di rendere invisibile all’utente il collegamento sottostante, assicurando il trasporto privo di errori. Fornisce molteplicità verso l’alto e verso il basso. È di competenza del fornitore del servizio. livello trasporto Modelli di riferimento livello trasporto Architettura degli elaboratori -2A.Memo 23 analisi del modello OSI livello trasporto classificazione dei servizi • in base delle percentuali degli errori segnalati e residui meccanismi di trasporto • acquisizione dell’indirizzo di livello trasporto (per il multiplexing) (prestabilito, name server, processor server) • richiesta e rilascio della connessione • trasferimento dati, con riscontri semplici o multipli, con controllo del flusso Modelli di riferimento Architettura degli elaboratori -2A.Memo 24 analisi del modello OSI livello sessione (session layer) ha il compito di gestire una sessione di trasferimento dati, cioè un modulo operativo strutturato suddivisibile in attività e unità di dialogo delimitate da opportuni punti di sincronizzazione livello sessione Modelli di riferimento livello sessione Architettura degli elaboratori -2A.Memo 25 analisi del modello OSI livello presentazione (presentation layer) ha il compito di rendere possibili ed efficienti trasferimenti tra sistemi diversi: offre funzioni di traduzione di sintassi, di crittografia e di compressione. livello presentazione livello presentazione Modelli di riferimento Architettura degli elaboratori -2A.Memo 26 analisi del modello OSI livello presentazione trasformazione delle rappresentazioni • sintassi del mittente, del destinatario ed astratta crittografia • sostituzione • a chiave privata • trasposizione • a chiave pubblica compressione • a lunghezza variabile • a dizionario • a lunghezza di sequenza • a frattale Modelli di riferimento Architettura degli elaboratori -2A.Memo 27 analisi del modello OSI livello applicazione (application layer) fornisce servizi comuni alle applicazioni, quali la gestione della sessione (compimento bifase, recupero, ripristino), e servizi specifici richiesti solo da qualche applicazione, quali servizio di terminale remoto, di trasferimento file e di posta elettronica. livello applicazione livello applicazione Modelli di riferimento Architettura degli elaboratori -2A.Memo 28 analisi del modello OSI il trasferimento dei dati (imbustamento) ogni livello aggiunge le proprie informazioni (indirizzo ed eventuale codice di correzione) a quelle che gli arrivano dal livello superiore, e le estrae dalle informazioni pervenute dal livello inferiore. In OSI le informazioni seguono un percorso effettivo verticale tra i vari livelli, ma si basa sul trasferimento virtuale tra i livelli, regolato dai rispettivi protocolli. Esempio del traduttore simultaneo. Modelli di riferimento Architettura degli elaboratori -2A.Memo 29 percorso virtuale dei dati processo mittente livello Applicazione protocollo di livello applicazione livello Presentazione protocollo di livello presentazione livello Sessione protocollo di sessione livello Trasporto protocollo trasporto livello Rete processo destinatario dati protocollo rete livello Collegame. dati livello fisico DH AH PH livello Applicazione dati livello Presentazione dati SH livello Sessione dati TH livello Trasporto dati NH livello Rete dati dati DT DH bits dati bits DT livello Collegam. dati livello fisico percorso reale dei dati Modelli di riferimento Architettura degli elaboratori -2A.Memo 30 modello TCP/IP organizzazione generale • alla base di Internet, quindi collaudato e diffuso • trascura i primi due livelli, che denomina semplicisticamente Host To Network • trascura totalmente i livelli sessione e presentazione di OSI Modelli di riferimento Architettura degli elaboratori -2A.Memo 4 applicazione 7 6 5 3 trasporto 4 2 internet 3 1 host to network 2 1 31 modello TCP/IP livello host-to-network • il modello TCP/IP non fa alcun riferimento all’implementazione di questo livello Modelli di riferimento Architettura degli elaboratori -2A.Memo 32 modello TCP/IP livello internet • equivalente al livello rete di OSI, offre servizi non connessi e non confermati • i pacchetti possono arrivare disordinati e per strade diverse • paragone con il servizio postale ed un gruppo di cartoline (trasparenza del percorso e della tariffa) • il protocollo che lo regola è IP (da Internet Protocol) Modelli di riferimento Architettura degli elaboratori -2A.Memo 33 modello TCP/IP livello trasporto • equivalente al livello trasporto di OSI • vi operano almeno due protocolli: – TCP, da Transmission Control Protocol, offre servizi connessi ed affidabili; frammenta il messaggio in pacchetti e poi li ricompone, controlla il flusso di dati evitando anche congestioni – UDP, da User Datagram Protocol, offre servizi non connessi, per quelle applicazioni che vogliono effettuare direttamente il controllo degli errori, oppure per situazioni a pacchetto singolo (client/server) Modelli di riferimento Architettura degli elaboratori -2A.Memo 34 modello TCP/IP livello applicazione • equivalente al livello applicazione di OSI • vi operano molti protocolli: – TELNET, per la gestione di un terminale virtuale – FTP, da File Transfer Protocol, per trasferire file – SMTP, da Simple Mail Transfer Protocol e POP3, da Post Office Protocol, per gestire la posta elettronica – HTTP, da HyperText Transfer Protocol, per il www – DNS, da Domain Name Server, per la gestione dei nomi (simbolici) a domini Modelli di riferimento Architettura degli elaboratori -2A.Memo 35 modello TCP/IP protocolli più utilizzati TELNET FTP SMTP TCP HTTP UDP trasporto IP IEEE 802 Modelli di riferimento applicazione rete SLIP RS-232 Architettura degli elaboratori -2A.Memo PPP host -to network 36 confronto OSI - TCP/IP concetti generali di OSI • OSI si basa sulle definizioni di – livello, offre servizi al livello superiore sfruttando quelli del sottostante, nasconde l’implementazione (= oggetto) – servizio, uno dei compiti del livello, non come è fatto (= uno dei metodi disponibili di un dato oggetto) – interfaccia, modalità di accesso ad un servizio (formalismi dei metodi) – protocollo, gestore del livello (= codice interno dell’oggetto, sua implementazione, non visibile) Modelli di riferimento Architettura degli elaboratori -2A.Memo 37 confronto OSI - TCP/IP concetti tecnici • OSI viene sviluppato prima dei suoi protocolli, quindi è di validità generale. Si basa su un’architettura a 7 livelli, ed ogni livello può essere connesso o meno • TCP/IP venne sviluppato attorno a due protocolli preesistenti, facendolo coincidere con loro; non si adegua ad alcun stack di protocolli diverso dal TCP/IP. Si basa su un’architettura a 4 livelli. TCP è di tipo connesso, IP non lo è. Modelli di riferimento Architettura degli elaboratori -2A.Memo 38 confronto OSI - TCP/IP critiche al modello OSI • momento sbagliato: la fase di ricerca dei protocolli di comunicazione era già terminata, mentre erano stati già fatti i primi investimenti sullo standard TCP/IP • tecnologia sbagliata: scelta dei livelli influenzata da SNA dell’IBM, molto complessa e inefficiente, trascurati i protocolli non connessi (utilizzati nelle LAN), mentalità comunicazionista (indication?) • prime implementazioni di scarsa qualità Modelli di riferimento Architettura degli elaboratori -2A.Memo 39 confronto OSI - TCP/IP critiche al modello TCP/IP • non è generale • non affronta il livello Host-To-Network e lo interpreta come un’interfaccia invece che come un livello (non distingueva i termini) • molti protocolli della suite sono privi di assistenza e/o manutenzione Modelli di riferimento Architettura degli elaboratori -2A.Memo 40