Cos’è uno standard?
Gli standard sono dei documenti universalmente accettati dalla comunità internazionale, e per ciò indicati come International Standard, che si riferiscono a specifiche tecniche o altri criteri ben precisi, da utilizzarsi in modo consistente come regole, linee guida o definizioni di caratteristiche, allo scopo di assicurare che materiali, prodotti, processi e servizi raggiungano lo scopo per cui sono stati pensati.
Questi standard vengono redatti attraverso l’uso di vari protocolli.
Nel mondo delle reti e Internet, un protocollo definisce un formato e l’ordine dei messaggi scambiati tra due o più entità in comunicazione, così come le azioni intraprese in fase di trasmissione e/o ricezione di un messaggio o di un evento.
Che cos’è il modello ISO/OSI?
OSI è l’acronimo di Open System Interconnection e rappresenta un modello di riferimento base proposto da ISO (Organizzazione Internazionale per la standardizzazione).
Il suo scopo è fissare le basi per una sistematica interoperabilità tra differenti sistemi di computer e applicazioni distribuite.
Il modello OSI viene utilizzato universalmente per descrivere qualsiasi entità (dispositivo di rete, software client/server, protocolli…) nel mondo della tecnologia dell’informazione e della comuncazione.
La struttura a sette livelli del modello ISO/OSI
Il modello di riferimento OSI è caratterizzato dalla sua struttura a sette livelli:
-
Livello applicativo
-
Livello di presentazione
-
Livello di sessione
-
Livello di trasporto
-
Livello di rete
-
Livello collegamento
-
Livello fisico
L’organizzazione a strati consente di semplificare la progettazione e/o servizi di rete grazie al livello di astrazione sui dettagli implementativi di ciascun livello.
In questo modo ogni livello interagisce solo ed esclusivamente con i livelli adiacenti mediante una serie di interfacce (funzioni) e dei protocolli standardizzati.
L’utilizzo dell’architettura a livelli consente di modificare dei dettagli implementativi o aggiungere nuove funzionalità sena stravolgere la struttura preesistente.
TCP/IP
Il paradigma TCP/IP è alla base dell’internet di oggi. Tale paradigma deriva dalla divisioni a strati del modello di riferimento ISO/OSI ma con alcune differenze.
Innanzitutto TCP/IP, rispetto ad OSI, è caratterizzato dalla divisione in 4 livelli:
-
Livello applicativo
-
Livello di trasporto
-
Livello di rete
-
Livello collegamento
In TCP/IP i livelli di presentazione e sessione sono esterni alla pila di protocolli e il livello collegamento e fisico vengono solitamente inglobati in un unico livello.
Livello Applicazione
I protocolli a livello applicativo possono essere suddivisi in due tipi di paradigmi: peer-to-peer e client/server. Un esempio di paradigma peer-to-peer è BitTorrent che fa parte dell’architettura peer-to-peer decentralizzata e strutturata. L’architettura peer-to-peer definisce una comunicazione diretta tra 2 host arbitrari e il carico di lavoro viene distribuito su tutti i peer della rete.
L’architettura client/server invece prevede la presenza di un processo client e un processo server: il client invia le richieste al server che a sua volta le elabora ed invia dei messaggi di risposta al client. Del paradigma client/server fanno parte i servizi HTTP, FTP, DNS e i servizi di posta elettronica (SMTP, IMAP4, POP3, MIME).
Livello Trasporto
Questo livello fornisce servizi di comunicazione fra i processi applicativi tramite una connessione logica. I protocolli a questo livello sono UDP e TCP. UDP è un protocollo senza connessione che impacchetta i dati e li trasferisce non garantendo affidabilità come TCP. In UDP notiamo l’assenza di un controllo degli errori e l’assenza del controllo sulla congestione: questo aumenta la velocità di trasmissione riducendo i ritardi, ma aumenta la possibilità di perdita di informazioni. TCP invece offre un servizio affidabile con controllo di errore, flusso e congestione. Inoltre per avviare una sessione TCP bisogna aprire una connessione, avviare la trasmissione di dati e chiudere la connessione (servizio con connessione).
Livello Rete
Il livello rete ha il compito di instradare un pacchetto dalla sorgente alla destinazione. L’inoltro è l’azione locale con cui il router trasferisce i pacchetti da ingresso in uscita. L’instradamento determina i percorsi del pacchetto lungo il cammino. gli algoritmi di instradamento indicano il percorso che si deve seguire. I protocolli a livello di rete sono: IPv4, DHCP e ICMP. Il livello di rete non offre un controllo degli errore nè un controllo del flusso. Offre solo il controllo sulla congestione. I servizi offerti dal livello rete sono: packetizing, routing, forwarding e switching. Nel packetizing i dati sono suddivisi e incapsulati in pacchetti (payload) decapsulati alla destinazione. Sono consegnati al livello collegamento senza modifiche o utilizzi. Il routing è il processo di ricerca del percorso migliore tra le possibili combinazioni di reti LAN e WAN. Nel forwarding un router inoltra un pacchetto in input tramite un’interfaccia a un’altra rete usando le informazioni sulle intestazioni nella tabella di inoltro. Nello switching un router crea un collegamento tra una porta di input e una di output.
Livello Collegamento
Ha il compito di controllare come viene usato il mezzo che collega i nodi nelle reti. Il livello collegamento è organizzato in sottolivelli: DLC si occupa delle procedure per la comunicazione tra due nodi adiacenti mentre MAC gestisce e controlla il mezzo trasmissivo per collegamenti broadcast. I dispositivi di interconnessione disponibili sono: repeater, hub, switch e router. L’indirizzamento avviene tramite protocollo ARP e i tipi di collegamento possono essere punto-punto, se il collegamento è tra due dispositivi o broadcast, se il collegamento è condiviso da più coppie di dispositivi.