Modello OSI
Strati del modello Open System Interconnection
Livello 1: fisico (Physical Layer)
Obiettivo: trasmettere un flusso di dati non strutturati attraverso un collegamento fisico, occupandosi della forma e dei livelli di tensione del segnale. Ha a che fare con le procedure meccaniche ed elettroniche necessarie a stabilire, mantenere e disattivare un collegamento fisico.
Semplicemente: si occupa di controllare la rete, i dispositivi hardware che la compongono e quelli che permettono la connessione.
In questo livello si decidono:
- le tensioni scelte per rappresentare i valori logici dei bit da trasmettere;
- la durata (in microsecondi) del segnale che identifica un bit;
- la modulazione e la codifica utilizzata;
- l'eventuale trasmissione simultanea in due direzioni (Half-Duplex o Full-Duplex);
- la forma e la meccanica dei connettori usati per collegare l'hardware al mezzo trasmissivo.
Livello 2: collegamento (Datalink Layer)
Obiettivo: permettere il trasferimento affidabile di dati attraverso il livello fisico. Invia frame di dati con la necessaria sincronizzazione ed effettua un controllo degli errori e delle perdite di segnale. Tutto ciò consente di far apparire, al livello superiore, il mezzo fisico come una linea di trasmissione esente da errori di trasmissione.
Il DataLink si occupa in primis di formare i dati da inviare attraverso il livello fisico, incapsulando il pacchetto proveniente dallo strato superiore in un nuovo pacchetto provvisto di un nuovo header (intestazione) e tail (coda), usati anche per sequenze di controllo. Questa frammentazione dei dati in specifici pacchetti è detta framing e i singoli pacchetti sono i frame.
Come controllo di errore, per ogni pacchetto ricevuto, il destinatario invia al mittente un pacchetto ACK (acknowledgement, conferma) contenente lo stato della trasmissione: il mittente deve ripetere l'invio dei pacchetti mal trasmessi e di quelli che non hanno ricevuto riscontro/risposta. Per ottimizzare l'invio degli ACK, si usa una tecnica detta Piggybacking, che consiste nell'accodare ai messaggi in uscita gli ACK relativi ad una connessione in entrata, per ottimizzare l'uso del livello fisico. I pacchetti ACK possono anche essere raggruppati e mandati in blocchi.
Il layer 2 si occupa anche di effettuare il controllo del flusso dei dati (controllo di flusso): in caso di sbilanciamento della velocità di trasmissione tra mittente e destinatario, si occupa di rallentare l'operazione della macchina più veloce, fasandola all'altra e minimizzando così le perdite dovute a sovraccarico sul destinatario. L'unità dati fondamentale è il frame.
Livello 3: rete (Network Layer)
Obiettivo: rendere i livelli superiori indipendenti dai meccanismi e dalle tecnologie di trasmissione usate per la connessione e prendersi carico della consegna a destinazione dei pacchetti.
Il layer di rete è responsabile di:
- routing: scelta ottimale del percorso di rete da utilizzare per garantire la consegna delle informazioni dal mittente al destinatario, scelta svolta dal router attraverso dei particolari algoritmi di Routing e tabelle di routing;
- conversione dei dati nel passaggio fra una rete ed un'altra con diverse caratteristiche, come il protocollo di rete utilizzato (internet-working). Deve, quindi:
- tradurre gli indirizzi di rete;
- valutare la necessità di frammentare i pacchetti dati se la nuova rete ha una diversa Maximum Transmission Unit (MTU);
- valutare la necessità di gestire diversi protocolli attraverso l'impiego di gateway.
La sua unità dati fondamentale è il pacchetto.
Livello 4: trasporto (Transport Layer)
Obiettivo: permettere un trasferimento di dati trasparente e affidabile (implementando anche un controllo degli errori e delle perdite) tra due host. È il primo livello realmente end-to-end, cioè da host sorgente a destinatario.
Si occupa di:
- stabilire, mantenere e terminare una connessione, garantendo il corretto e ottimale funzionamento della sottorete di comunicazione;
- controllo della congestione, evitando che troppi pacchetti dati arrivino contemporaneamente allo stesso router, con effetto della perdita dei pacchetti stessi.
A differenza dei livelli precedenti, che si occupano di connessioni tra nodi contigui di una rete, il Trasporto (a livello logico) si occupa solo del punto di partenza e di quello finale.
Il layer di trasporto si occupa anche di effettuare la frammentazione dei dati provenienti dal livello superiore in pacchetti, detti "segmenti" e trasmetterli in modo efficiente ed affidabile usando il livello rete ed isolando da questo i livelli superiori. Inoltre, si preoccupa di ottimizzare l'uso delle risorse di rete e di prevenire la congestione.
L'unità dati fondamentale dello strato di trasporto è il messaggio.
Livello 5: sessione (Session Layer)
Obiettivo: trasformare i dati forniti dalle applicazioni in un formato standardizzato e offrire servizi di comunicazione comuni, come la crittografia, la compressione del testo e la riformattazione.
Esso consente di aggiungere, ai servizi forniti dal livello di trasporto, servizi più avanzati, quali la gestione del dialogo (mono o bidirezionale), la gestione del token (per effettuare mutua esclusione) o la sincronizzazione (inserendo dei checkpoint in modo da ridurre la quantità di dati da ritrasmettere in caso di gravi malfunzionamenti).
Questo layer si occupa anche di inserire dei punti di controllo nel flusso dati: in caso di errori nell'invio dei pacchetti, la comunicazione riprende dall'ultimo punto di controllo andato a buon fine.
Livello 6: presentazione (Presentation Layer)
Obiettivo: trasmettere un flusso di dati non strutturati attraverso un collegamento fisico, occupandosi della forma e dei livelli di tensione del segnale. Ha a che fare con le procedure meccaniche ed elettroniche necessarie a stabilire, mantenere e disattivare un collegamento fisico.
Questo strato consente di gestire la sintassi dell'informazione da trasferire. E sono previste tre diverse sintassi:
- astratta (definizione formale dei dati che gli applicativi si scambiano);
- concreta locale (come i dati sono rappresentati localmente);
- di trasferimento (come i dati sono codificati durante il trasferimento).
Livello 7: applicazione (Application Layer)
Obiettivo: interfacciare utente e macchina.
Fornisce un insieme di protocolli che operano a stretto contatto con le applicazioni; potrebbe essere errato in alcune circostanze identificare un'applicazione utente come parte del livello applicazione.
I protocolli delle applicazioni tipiche di questo strato effettuano operazioni come ad esempio:
- trasferimento file;
- terminale virtuale;
- posta elettronica.
Modello di riferimento ISO/OSI
Tecnologie e protocolli di switching
- Definizione di LAN (Local Area Network)
- Topologie e mezzi trasmissivi
- Principi di cablaggio strutturato
- Ethernet
- Hub e switch
- Definizione di switch e bridge
- Dinamiche di switching: learning and forwarding
- Protocollo Spanning Tree
- Duplexing e tecniche di trasmissione delle trame (Cut Through, Store and Forward)
- Power over Ethernet
- Tecnologie di aggregazione dei link
- Definizione di Virtual LAN (VLAN)
- Trunk e protocolli di tagging
- Standard 802.1q
- Gestione degli switch attraverso il protocollo VTP
- Tecnologie di aggregazione dei link
- Wireless LAN
- WiFi e standard 802.11
- Bande assegnate
- Gestione di dispositivi di rete particolari: telefoni e telecamere IP
Tecnologie e protocolli di IP routing
- Protocollo IP e formato del pacchetto
- Classi di indirizzamento e meccanismo di subnetting
- Indirizzi pubblici e privati (RFC 1918)
- Cenni sull'organizzazione di Internet
- Protocollo ICMP e strumenti di network monitoring: ping, traceroute
- Protocollo ARP (Address Resolution Protocol)
- Routing dei pacchetti: statico e dinamico
- Utilizzo di route statiche e della default route
- Aspetti di routing Multicast per i flussi video
- Cenni su QoS e meccanismi di priorità
- Cenni su IPv6
- Livello di trasporto: protocolli UDP e TCP
Reti WAN (Wide Area Networks)
- Passaggio da linee analogiche a digitali
- Collegamenti WAN residenziali ed enterprise
- Circuiti dedicati (CDN), Point to Point e Multi Point
- Strutture di reti aziendali
- Commutazione di pacchetto, trama e celle X.25, Frame Relay ed ATM
- Reti degli operatori di connettività e virtualizzazione dei circuiti
- Principi di reti MPLS
- Reti di accesso Metro Ethernet
- Strutture residenziali
- Protocollo PPP ed origine su reti a commutazione di circuito
- Collegamenti xDSL in ultimo miglio su doppino telefonico e concetto di “Always On”
- Evoluzione di ultimo miglio verso la fibra ottica, NGN/FTTX
- Reti ottiche passive GPON (Gigabit-capable Passive Optical Networks)
- Cablaggio multiservizi negli insediamenti residenziali
- Ruolo delle reti mobili come alternativa o backup alle reti fisse
Gestione degli indirizzi IP
Protocolli di livello applicativo
Elementi di sicurezza delle reti
- Elementi di sicurezza delle reti
- Termini della sicurezza
- Principi funzionali dei firewall
- Sistemi di autenticazione AAA (Authentication, Authorization, Accounting) e standard 802.1x
- Concetto di proxy e reverse proxy
- Introduzione alle VPN (Virtual Private Network)
- Cenni su IPSec e SSL (Secure Socket Layer)