
Il modello TCP/IP
(a cura del Dott. Greg)
![]()
Il TCP/IP è una sigla che indica propriamente i due protocolli principali di Internet, progetati nel 1974 da Robert E. Kahn e Vinton G. Cerf a Berkeley e da primo gennaio 1983 adottati come unico protocollo ufficiale di Internet. La sigla si riferisce più in generale ad una famiglia di protocolli che specificano i vari aspetti funzionali di Internet, quali posta elettronica, emulazione terminale, trasferimento file, sessioni di comunicazione, trasporto dei pacchetti e accesso del mezzo. Sono impiegati per lo più in ambiente UNIX e operano agli strati 3 e 4 del modello di riferimento OSI. Vediamo ora su cosa si basa il modello TCP/IP. Il modello a strati TCP/IP si basa su una rete a quattro strati:
|
Strato di Applicazione (4) |
|
Strato di Trasporto (3) |
|
Strato di Internet (2) |
|
Strato di Rete (1) |
![]()
Dettaglio
degli Strati
Strato di Rete (1)
| 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 testata ed un controllo ciclico di ridondanza (CRC) per assicurare che i dati non siano corrotti durante il trasferimento. |
Strato della Internet (2)
| Lo strato
Internet svolge tre funzioni principali: - Indirizzamento - Suddivisione in pacchetti - Instradamento In questo strato risiede l’IP che offre la consegna di informazioni senza connessione e non garantita. |
Strato della
Trasporto (3)
| Lo
strato del trasporto fornisce una comunicazione tra host utilizzando i
cosiddetti indirizzi di porta (port address), i quali sono dei
numeri che identificano la locazione di un programma applicativo in
esecuzione su un computer host di Internet.. In questo strato si trovano i due protocolli: - TCP (Transmission Control Protocol) - UPD (User Datagram Protocol) Il cui compito è proprio quello di trasportare dati. |
Strato dell’Applicazione (4)
| Nello strato delle applicazioni si trovano infine le applicazioni che si basano sulla rete. Applicazioni di questo tipo sono le applicazioni Winsock dell’ambiente Windows quali FTP e Telnet. |
![]()
Internet
Come sappiamo il protocollo IP non svolge alcun tipo di controllo per
assicurarsi del buon esito dei trasferimento dei dati, di conseguenza i
pacchetti possono andare perduti o non arrivare in sequenza. Il suo ruolo
infatti è quello di aggiungere a ciascun pacchetto una intestazione contenente
una serie di informazioni per poter effettuare il corretto instradamento dei
dati. Ma quali sono queste informazioni?
Le informazioni presenti nell’intestazione dei pacchetti sono:
| L’indirizzo IP
dell’origine: è l’indirizzo IP assegnato al mittente; L’indirizzo IP del destinatario: è l’indirizzo IP assegnato al destinatario; Il protocollo di trasporto (TCP o UDP): serve ad indicare all’host destinatario il tipo di trasporto e di conseguenza il modo in cui manipolare i dati ricevuti; Il Checksum: è il CRC calcolato sui dati trasferiti/da trasferire che permette di verificare l’integrità dei dati; TTL (Time-To-Live): il tempo di durata in vita di un datagram; alla partenza viene assegnato un valore predefinito che diminuisce ad ogni attraversamento di un router; quando il TTL raggiunge il valore zero viene il datagram viene tolto dalla rete; |
Trasporto
Nello strato del trasporto si
trovano i due protocolli TCP e UDP che hanno il compito di trasportare i dati da
un host all’altro.
Il TCP si occupa delle comunicazioni orientate alla connessione. Questo significa che quando due host 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. In pratica ciascun frammento di dati viene numerato e spedito al destinatario, il quale una volta ricevuti i frammenti, provvede ad inviare al mittente un messaggio di avvenuta ricezione dei frammenti. In caso di mancata conferma dell’avvenuta ricezione da parte del destinatario il mittente provvede a spedire di nuovo i frammenti. Questo meccanismo ovviamente appesantisce la trasmissione, ma assicura un elevato grado di affidabilità.
Il protocollo UDP (User
Datagram Protocol)
invece non è affidabile, perché non vi è certezza dell’avvenuta ricezione da
parte del destinatario dei dati spediti. Il suo compito è convertire i dati
generati da un'applicazione in pacchetti trasmettendoli in maniera semplice e
veloce. Quindi sacrifica l'affidabilità in favore dell'economicità e della
velocità di trasmissione (per esempio in applicazioni real-time).
![]()