16.3 I protocolli

La modellizzazione della comunicazione di rete è stata effettuata supponendo di suddividere l’accesso alle funzionalità della comunicazione a vari livelli di astrazione a partire da quello più basso che è quello dei segnali coinvolti nell’effettiva comunicazione (la cui natura e tipologia dipendono dalla natura del mezzo di trasmissione) fino a quello più elevato che è quello che “vedono” le applicazioni che vogliono comunicare attraverso la rete. Un’applicazione che intende inviare delle informazioni sulla rete, utilizzerà l’interfaccia software messa a disposizione dal livello più alto, che si preoccuperà di trattare opportunamente le informazioni passandole al livello immediatamente inferiore e così via fino ad arrivare al livello più basso in cui i segnali logici saranno trasformati in segnali elettrici o elettromagnetici e quindi inviati sulla rete. Allo stesso modo, l’interfaccia di rete che riceve le informazioni le tratterà in maniera opportua passandole man mano ad un livello sempre più elevato, fino ad arrivare all’applicazione di destinazione. Ogni livello passa le informazioni a quello immediatamente inferiore (in trasmissione) o superiore (in ricezione) tramite un insieme di funzioni che costituiscono l’interfaccia di comunicazione tra un livello e l’altro.

Per ogni livello è definito un insieme di regole di comunicazione, ovvero quello che in gergo viene chiamato protocollo. Un protocollo è quindi una logica che fa comunicare due interfacce di rete allo stesso livello. Se ogni livello esegue correttamente il proprio dovere, si può pensare che la comunicazione avvenga tra le due interfacce di rete al livello considerato, sebbene la comunicazione avvenga in realtà sempre tra i livelli più bassi (v. sez. 16.5).

Ogni protocollo definisce un’unità logica da utilizzare per lo scambio di informazioni, il pacchetto, che assume una denominazine specifica dipendentemente dal protocollo considerato. Questo in genere è suddiviso in una parte di informazioni di servizio e di controllo, l’header (intestazione) ed il footer (parte terminale), ed una parte riservata alle informazioni da comunicare, il payload.

L’insieme dei livelli in cui è suddivisa la gestione dell’interfaccia di comunicazione è comunemente detto stack di protocolli.

In genere, il pacchetto di un determinato livello dello stack di protocolli, costituisce il payload dell’unità di informazioni del livello immediatamente sottostante. Questo meccanismo è detto incapsulazione (data encapsulation) poiché concettualmente equivale all’inserimento di in pacchetto all’interno di un altro, come accade per una lettera che viene inserita in una busta prima di spedirla.

[da completare ...]