Il modello TCP IP

TCP IP sono due protocolli che significano rispettivamente Transmission Control Protocol ed Internet Protocol. Questo modello TCP IP rappresenta l’insieme delle regole di comunicazione su Internet e si basa sulla nozione di indirizzamento IP, cioè il fatto di fornire un indirizzo IP ad ogni computer di rete per poter inviare dei pacchetti di dati. Dato che la serie protocollare TCP IP è stata creata in origine per scopi militari, essa è concepita per rispondere ad un certo numero di criteri fra i quali:

  • Il frazionamento dei messaggi in pacchetti di dati
  • L’uso di un sistema di indirizzi
  • L’invio di dati sulla rete (routing)
  • Il controllo degli errori di trasmissione di dati.

La conoscenza dei protocolli TCP IP non è essenziale per un semplice utente, nello stesso modo in cui un telespettatore non ha bisogno di conoscere il funzionamento del suo televisore. Tuttavia, la sua conoscenza è necessaria per le persone che desiderano amministrare o occuparsi della manutenzione di una rete TCP IP.

TCP IP raggruppa due nozioni:

  • La nozione di standard: TCP IP rappresenta il modo in cui le comunicazioni si effettuano su una rete.
  • La nozione di implementazione: la denominazione TCP IP è spesso estesa ai software basati su questo protocollo. TCP IP è infatti un modello sul quale gli sviluppatori di applicazioni di rete si basano. Le applicazioni sono quindi delle implementazioni del protocollo TCP IP.

TCP IP è un modello a livelli

Per poter applicare il modello TCP IP a tutti i computer, cioè indipendentemente dal sistema operativo, il sistema di protocollo TCP IP è stato scomposto in più livelli ciascuno con un compito preciso. Inoltre, questi livelli svolgono i compiti gli uni dopo gli altri in un ordine preciso, con un sistema stratificato, ragione per cui si parla di modello a livelli. Il termine livello è usato per evocare il fatto che i dati che transitano sulla rete attraversano più livelli di protocolli. Così, i dati (pacchetti di informazioni) che circolano sulla rete sono trattati successivamente per ogni livello, che aggiunge un elemento d’informazione (detto intestazione) e poi li trasmette al livello successivo (incapsulamento dei dati).

Modello tcp ip

Durante una trasmissione i dati attraversano alcuni degli strati al livello del computer emittente. Ad ogni livello un’informazione viene aggiunta al pacchetto di dati, si tratta di un’intestazione, cioè un insieme di informazioni che garantisce la trasmissione. A livello del computer ricettore, al momento del passaggio in ogni livello, l’intestazione viene letta e poi cancellata. Così, alla ricezione, il messaggio è nel suo stato originale. Ad ogni livello il pacchetto cambia d’aspetto dato che gli si aggiunge un’intestazione e quindi le denominazioni cambiano seguendo i livelli:

  • Il pacchetto di dati è detto messaggio al livello Applicazione
  • Il messaggio in seguito è incapsulato sotto forma di segmento nel livello Trasporto
  • Il segmento, una volta incapsulato, nel livello Internet prende il nome di datagramma (pacchetto di dati).
  • Infine, si parla di trame sul livello Accesso di rete.

Il modello TCP IP è molto simile al modello OSI (con 7 livelli) che è stato messo a punto dall’organizzazione internazionale degli standard (ISO) per normalizzare le comunicazioni tra computer. Il modello TCP IP, ispirato al modello OSI, riprende l’approccio a livelli ma ne contiene solo quattro. I livelli del modello TCP IP hanno dei compiti ben diversi da quelli del modello OSI, dato che alcuni livelli del modello TCP IP corrispondono a più livelli del modello  OSI. I ruoli dei differenti livelli sono i seguenti:

1)Livello Accesso di rete: specifica la forma nella quale i dati devono essere inviati indipendentemente dal tipo di rete usata. Il livello Accesso di rete è il livello dalla pila TCP IP capace di accedere ad una qualsiasi rete fisica, cioè rappresenta i mezzi per realizzare una trasmissione di dati attraverso una rete. Cos’, il livello accesso di rete contiene tutte le specifiche riguardo la trasmissione di dati su una rete fisica, che si tratti di rete locale (Anello a gettone Token ring, Ethernet, FDDI), di connessione a una linea telefonica o a qualsiasi tipo di collegamento di rete. Si incarica delle nozioni seguenti:

  • Invio dei dati sul collegamento
  • Coordinamento della trasmissione dei dati (sincronizzazione)
  • Formato dei dati
  • Conversione dei segnali (analogico/digitale)
  • Controllo degli errori all’arrivo

L’insieme di questi compiti è realizzato dal sistema operativo, come per altro i driver dell’hardware che permettono la connessione alla rete (es. driver della scheda di rete). Lo strato di rete immette sulla rete  i frame in partenza e raccoglie quelli in arrivo. Prima di immettere sulla rete i frame, aggiunge ad essi una intestazione ed un controllo ciclico di ridondanza (CRC) per assicurare che i dati non siano corrotti durante il trasferimento.

2) Livello Internet: si incarica di fornire il pacchetto di dati (datagramma). Il livello Internet è il livello più importante dato che è quello che definisce i datagrammi e che gestisce le nozioni d’indirizzamento IP. Esso permette l’invio dei datagrammi (pacchetti di dati) verso dei computer remoti nonché la gestione della loro frammentazione e riassemblaggio alla ricezione. Lo strato Internet svolge tre funzioni principali:

  • Indirizzamento IP
  • Suddivisione in pacchetti di dati
  • Instradamento dei dati

In questo strato risiede l’IP che offre la consegna di informazioni. Il protocollo IP non svolge alcun tipo di controllo per assicurarsi del buon esito del trasferimento dei dati. Di conseguenza i pacchetti possono andare perduti o non arrivare in sequenza. Il ruolo svolto da IP è quello di aggiungere a ciascun pacchetto una intestazione contenente una serie di informazioni per poter effettuare il corretto instradamento dei dati. L’intestazione contiene:

  • l’indirizzo IP del mittente
  • l’indirizzo IP del destinatario
  • il protocollo di trasporto (TCP o UDP): serve ad indicare al computer destinatario il tipo di trasporto e di conseguenza il modo in cui manipolare i dati ricevuti.
  • checksum: è il CRC calcolato sui dati trasferiti/da trasferire che permette di verificare l’integrità dei dati
  • TTL (Time – To – Life): il tempo di durata in vita di un datagramma, alla partenza viene assegnato un valore predefinito che diminuisce ad ogni attraversamento di un router; quando il TTL raggiunge il valore zero il datagramma viene tolto dalla rete.

3) Livello Trasporto: assicura l’invio dei dati sotto forma di segmento, nonché i meccanismi che permettono di conoscere lo stato della trasmissione (errori, perdite). Il livello trasporto permette a delle applicazioni che girano su computer remoti di comunicare. A seconda del computer e del suo sistema operativo, l’applicazione potrà essere un programma, un compito, un processo. Inoltre, la denominazione dell’applicazione può variare da un sistema all’altro, ed è la ragione per cui un sistema di numero è stato realizzato per poter associare un tipo di applicazione ad un tipo di dati; questi identificativi sono detti porte. Il livello trasporto contiene due protocolli che permettono alle due applicazioni di scambiare dei dati indipendentemente dal tipo di rete scelta (cioè indipendentemente dai livelli inferiori), si tratta dei seguenti protocolli:

  • TCP è un protocollo orientato alla connessione che assicura il controllo degli errori e delle perdite;
  • UDP è un protocollo non orientato alla connessione che risulta più veloce;

Nello strato del trasporto si trovano i due protocolli TCP e UDP che hanno il compito di trasportare i dati da un computer all’altro. Il TCP si occupa delle comunicazioni orientate alla connessione e questo significa che quando due computer comunicano utilizzando come trasporto il TCP è necessario che tra di essi si instauri una sessione. Nel corso di trasmissioni di questo tipo ci si serve di numeri sequenziali e di conferme per assicurare il trasferimento con successo dei dati (una ricevuta di ritorno). In pratica ciascun frammento di dati viene numerato e spedito al destinatario. Il destinatario una volta ricevuti i frammenti provvede ad inviare al mettente un messaggio di avvenuta ricezione dei frammenti. A questo punto il mittente provvede ad inviare i frammenti successivi. In caso di mancata conferma dell’avvenuta ricezione da parte del destinatario il mittente provvede a spedire di nuovo i frammenti. Questo meccanismo appesantisce la trasmissione, ma assicura un elevato grado di affidabilità.  Utilizzando invece il protocollo UDP non vi è certezza dell’avvenuta ricezione da parte del destinatario dei dati spediti (senza ricevuta di ritorno), ma in compenso la trasmissione risulta più veloce. Quest’ultimo protocollo viene utilizzato nei casi in cui la velocità di trasmissione sia più importante della sicurezza della trasmissione.

4) Livello Applicazione: ingloba le applicazioni standard della rete (SMTP, FTP). Il livello applicazione è quello situato alla sommità dei livelli dei protocolli TCP/IP. Esso contiene le applicazioni di rete che permettono di comunicare grazie ai livelli inferiori. I software di questo livello comunicano quindi grazie ad uno dei due protocolli del livello inferiore (il livello trasporto) cioè TCP o UDP. Le applicazioni di questo livello sono di differenti tipi ma la maggior parte sono dei servizi di rete, cioè delle applicazioni fornite all’utente per assicurare l’interfaccia con il sistema operativo. Possiamo classificarli secondo i servizi che offrono:

  • Servizi di gestione (trasferimento) di file e di stampa.
  • Servizi di connessione alla rete
  • Servizi di connessione remota

Confronto Modello TCP/IP – Modello OSI

Riportando in tabella i modelli a livelli OSI ed TCP/IP si possono fare una serie di confronti.

Il modello tcp ip
  1. Nel modello TCP/IP gli strati fisico e collegamento dati del modello OSI sono fusi nello strato Accesso di rete. In pratica non viene fatta alcuna distinzione tra la scheda di rete ed i loro driver e questo consente di implementare il TCP/IP in qualsiasi topologia di rete.
  2. Lo strato Internet del modello TCP/IP, in cui viene implementato il protocollo IP, corrisponde allo strato di Rete del modello OSI ed entrambi si occupano dell’instradamento dei dati.
  3. Lo strato di Trasporto nei due modelli è analogo ed entrambi permettono che tra i due computer si stabilisca una sessione.
  4. Lo strato dell’applicazione del modello TCP/IP unisce gli strati di applicazione, presentazione e sessione del modello OSI.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *