Suite di protocolli Internet: differenze tra le versioni

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Contenuto cancellato Contenuto aggiunto
Hce (discussione | contributi)
Come funziona il TCP/IP: rivista, precisazioni
Hce (discussione | contributi)
Riga 36: Riga 36:
* Il Ricevitore invia per ogni pacchetto ricevuto un [[ACK (informatica)|ACK]] indicando la sequenza dell'ultimo pacchetto ricevuto correttamente.
* Il Ricevitore invia per ogni pacchetto ricevuto un [[ACK (informatica)|ACK]] indicando la sequenza dell'ultimo pacchetto ricevuto correttamente.
* Il trasmettitore considera quindi spediti tutti i pacchetti successivi.
* Il trasmettitore considera quindi spediti tutti i pacchetti successivi.
* Se il timeout scade, TCP ritrasmette il pacchetto
* S


Questa è una tecnica molto importante perché fornisce un canale di comunicazione affidabile. Inoltre TCP contiene meccanismi per gestire la congestione ed il controllo di flusso.
Questa è una tecnica molto importante perché fornisce un canale di comunicazione affidabile. Inoltre TCP contiene meccanismi per gestire la congestione ed il controllo di flusso.

Versione delle 11:12, 13 mar 2010

La suite di protocolli Internet è un insieme di protocolli di rete che implementa la pila di protocolli su cui funziona Internet. A volte, per sineddoche, è chiamata suite di protocolli TCP/IP, in funzione dei due più importanti protocolli in essa definiti: il Transmission Control Protocol (TCP) e l'Internet Protocol (IP).

Tale suite può essere descritta per analogia con il modello OSI, che descrive i livelli della pila di protocolli. In una pila di protocolli ogni livello risolve una serie di problemi che riguardano la trasmissione di dati e fornisce un ben definito servizio ai livelli più alti. I livelli più alti sono logicamente più vicini all'utente e funzionano con dati più astratti lasciando ai livelli più bassi il compito di tradurre i dati in forme mediante le quali possono essere fisicamente manipolati.

Il modello Internet è stato prodotto come una soluzione ad un problema ingegneristico pratico. Il modello OSI, in un altro senso, è stato l'approccio più teorico ed è stato anche prodotto nel più vecchio modello di rete.

Storia del TCP/IP

Nei primi anni settanta, la Defence Advanced Research Project Agency (DARPA) finanziò l'Università di Stanford e la BBN (Bolt, Beranek and Newman) per lo sviluppo di un insieme di protocolli di comunicazione da utilizzarsi per lo sviluppo di reti a commutazione di pacchetto, per l'interconnessione di calcolatori eterogenei. Fu così che nacque l'Internet Protocol Suite i cui due protocolli più noti sono il TCP (Transmission Control Protocol) e l'IP (Internet Protocol).

Si fa riferimento a questa architettura di rete con la sigla TCP/IP o IP/TCP (quest'ultima non è quasi mai usata). I creatori di tali protocolli di trasmissione, tuttora utilizzati nel web, sono nello specifico Robert Kahn e Vinton Cerf, a cui l'ex Presidente degli Stati Uniti George W. Bush ha consegnato la Presidential Medal of Freedom, ovvero la più alta tra le onorificenze civili a stelle e strisce, il 9 novembre 2005. I due studiosi non sono nuovi a questo genere di premiazioni: all'inizio del 2005 è stato assegnato loro il prestigioso 2004 A.M. Turing Award, equivalente del Premio Nobel nel settore dell'Information Technology. Cerf e Kahn hanno sviluppato lo standard per la trasmissione di pacchetti via rete nel lontano 1973, mentre lavoravano a un progetto di sviluppo dei sistemi di comunicazione voluto dalla DARPA (Defense Advanced Research Projects Agency). Attualmente Vint Cerf, collabora con Google alla creazione degli standard per le future applicazioni e nel frattempo si dedica allo sviluppo di nuovi protocolli di comunicazione interplanetaria per il Jet Propulsion Lab della Nasa. Robert Kahn, invece, dopo 13 anni di servizio presso la DARPA è diventato presidente della Corporation for National Research Initiatives (CNRI).

Questi protocolli, utilizzabili gratuitamente da tutti perché di pubblico dominio fin dall'inizio, ottennero un elevato successo (utilizzati da un gruppo di ricercatori per ARPAnet).

Questo genera alcune ambiguità dovute al fatto che il nome più corretto sarebbe Internet Protocol Suite. Per esempio succede di sentir parlare di servizi basati su TCP/IP anche quando in realtà, invece di TCP, viene usato un protocollo alternativo, UDP, anch'esso appartenente all'Internet Protocol Suite. In genere il TCP viene utilizzato per quelle applicazioni che richiedono un servizio orientato alla connessione, come ad esempio la posta elettronica e il file sharing, mentre l'UDP prende sempre più piede per le applicazioni in tempo reale come l'on-line gaming o lo streaming audio e video; la differenza fra i due protocolli risiede nella maggiore affidabilità nel trasporto dei dati di TCP, che offre una serie di servizi appositamente pensati (gestione del flusso, della congestione...), mentre UDP punta molto sulla velocità di trasmissione a scapito della sicurezza. Si tenga quindi sempre presente che la sigla TCP/IP è di utilizzo talmente comune da essere utilizzata, talvolta, anche quando esistono termini alternativi più corretti.

TCP/IP è l'architettura adottata dalla rete internet. Negli anni novanta, nonostante la sua età, è stata (più o meno paradossalmente) l'unica architettura che ha interessato il mercato, al punto che gli enti di standardizzazione, di fronte al fatto compiuto della sua massiccia diffusione hanno dovuto darle la stessa dignità di ISO/OSI.

Un esempio di funzionamento della suite TCP/IP

Internet Protocol (IP) è il protocollo di InternetWorking del modello DOD/DARPA (secondo il modello OSI è classificato nel livello rete).

Un indirizzo IP identifica ogni nodo della rete ed è sostanzialmente un identificativo numerico che viene utilizzato questo per identificare in modo univoco ogni scheda di rete connessa ad una rete IP.

Il protocollo di trasporto TCP utilizza IP, e fornisce un canale di trasferimento dati affidabile al protocollo di Livello applicazioni HTTP.

TCP nell'invio dei pacchetti usa il meccanismo della Window. Una serie di pacchetti viene inviata da TCP seguendo delle regole ben precise:

  • Ad ogni pacchetto spedito il trasmettitore fa partire un timeOut.
  • Il Ricevitore invia per ogni pacchetto ricevuto un ACK indicando la sequenza dell'ultimo pacchetto ricevuto correttamente.
  • Il trasmettitore considera quindi spediti tutti i pacchetti successivi.
  • Se il timeout scade, TCP ritrasmette il pacchetto

Questa è una tecnica molto importante perché fornisce un canale di comunicazione affidabile. Inoltre TCP contiene meccanismi per gestire la congestione ed il controllo di flusso.

Quando ci vogliamo collegare con il nostro browser a un server web, stabiliamo un collegamento (virtuale) a livello applicazione. Il livello di trasporto si occupa dei dettagli del livello applicazione.

Al livello di trasporto il protocollo TCP mette in coda i messaggi delle applicazioni (browser e server) li trasmette sotto forma di pacchetti; il buon fine della spedizione è attestato da una ricevuta di ritorno. Anche questo è un collegamento virtuale tra le due applicazioni, i cui dettagli sono demandati al livello di rete.

Al livello di rete il protocollo IP decide quale strada seguire per trasmettere effettivamente i messaggi da un computer all'altro. Un computer spedisce, l'altro riceve, ma è un collegamento virtuale tra i due computer remoti, dei cui dettagli si occupa il livello di collegamento.

Al livello di collegamento si decide come fare il trasferimento del messaggio per ogni singolo tratto del percorso: dal computer del browser al primo router, dal primo router al secondo, dal secondo al terzo e dal terzo al computer del server. Questo è un collegamento virtuale tra due computer (o router) adiacenti. I dettagli fisici sono lasciati all'ultimo livello.

Il livello fisico, che è l'ultimo, trasmette il messaggio sul cavo sotto forma di impulso elettrico. Questo è l'unico livello in cui avviene una trasmissione effettiva.

Per consentire queste comunicazioni, ad ogni singola macchina sulla rete è assegnato un indirizzo per ogni livello: Un indirizzo MAC per ogni scheda di rete (livello di collegamento), un indirizzo IP (livello di rete), un numero di porta (livello di trasporto).

  Portale Telematica: accedi alle voci di Wikipedia che parlano di reti, telecomunicazioni e protocolli di rete