informatica |
Panoramica sul TCP/IP
Il termine generico 'TCP/IP' usualmente dice tutto e niente,
relativamente ai protocolli specifici di TCP ed IP.
Essi possono includere altri protocolli, applicazioni e vari mezzi
fisici.
Esempi di questi protocolli sono: UDP, ARP e ICMP.
Esempi di queste applicazioni sono: TELNET, FTP ed rcp.
Il termine più appropriato è allora 'tecnologia internet'.
Una rete che usa la tecnologia internet viene detta una 'internet'.
Struttura di Base
Per comprendere questa tecnologia occorre prima comprendere la seguente
struttura logica:
ura 1. Nodo Base di una rete TCP/IP
Questa è la struttura logica dei protocolli a strati sui computer di una
internet.
Ciascun computer che vuole comunicare usando la tecnologia internet
segue questa struttura logica.
Si tratta di una struttura che determina il comportamento del computer
sulla internet.
I rettangoli rappresentano il trattamento che subiscono i dati quando
attraversano il computer e le linee che collegano i rettangoli mostrano
il percorso seguito dai dati.
La linea orizzontale in basso rappresenta il cavo Ethernet; il 'o' è
il transceiver.
La '*' rappresenta l'indirizzo IP mentre la '@' rappresenta l'indirizzo
Ethernet.
Capire questa struttura logica è essenziale per la comprensione della
tecnologia Internet e ciò è lo scopo di questa guida.
Terminologia
Il nome di una unità di dati che fluisce attraverso una internet è
dipendente dalla pila di protocolli che viene attraversata.
In breve: su una Ethernet viene chiamato "frame Ethernet"; fra il
driver Ethernet ed il modulo IP viene chiamato "pacchetto IP"; fra il
modulo IP ed il modulo UDP viene chiamato "datagramma UDP"; fra il
modulo IP ed il modulo TCP viene chiamato "segmento TCP" (o più
generalmente, "messaggio di trasporto"); da e verso una applicazione di
rete viene invece chiamato "messaggio di applicazione".
Queste definizioni però sono imprecise. Le attuali definizioni variano
da una pubblicazione all'altra. Più precise definizioni possono essere
comunque trovate nell'RFC 1122, sezione 1.3.3.
Un driver è un programma che comunica direttamente con l'interfaccia
hardware di rete. Un modulo è un programma che comunica con un driver,
con le applicazioni di rete, o con altri moduli.
I termini driver, modulo, frame Ethernet, pacchetto IP, datagramma UDP,
messaggio TCP e messaggio di applicazione, sono usati in modo
appropriato in tutta questa guida.
Flusso dei Dati
Seguiamo il flusso dei dati attraverso la pila dei protocolli mostrata
in ura 1. Per una applicazione che usa il TCP (Transmission Control
Protocol), i dati passano attraverso i moduli applicazione e TCP.
Per le applicazioni che usano l'UDP (User Datagram Protocol), i dati
passano fra i moduli applicazione e UDP. L'FTP (File Transfer Protocol)
è una tipica applicazione che usa il TCP. La sua pila di protocolli in
questo esempio è FTP/TCP/IP/ENET. L'SNMP (Simple Network Management
Protocol) è una applicazione che usa l'UDP. La sua pila di protocolli
in questo esempio è SNMP/UDP/IP/ENET.
Il modulo TCP, quello UDP, ed il driver Ethernet sono dei mux-demux n-a-
1.
Nella veste di multiplexer n-a-l essi funzionano da deviatori da vari
input ad un output.
Nella veste di demultiplexer 1-to-n essi funzionano da deviatori da un
input ad uno fra vari output a secondo del campo "type" nel "protocol
header".
1 2 3 n 1 2 3 n
| / | | | / ^
| | / | | | / |
------------- flusso ----- ----- ------ flusso
|multiplexer| dei |de-multiplexer| dei
------------- dati ----- ----- ------ dati
| | | |
| v | |
1
ura 2. n-a-l multiplexer ed l-a-n de-multiplexer
Se un frame Ethernet sale nel driver Ethernet, il pacchetto può
proseguire verso il modulo ARP (Address Resolution Protocol) oppure
verso il modulo IP (Internet Protocol) a seconda del valore del campo
"type field"
Se un pacchetto IP sale nel modulo IP, il percorso dell'unità di dati
verso i moduli TCP o UDP, viene determinato dal valore del campo
"protocol type" nell'IP header.
Se il datagramma UDP sale nel modulo UDP, il messaggio di applicazione
viene passato ad un applicativo di rete in base al campo "port number"
dello "UDP header". Se il messaggio TCP sale nel modulo TCP, il
messaggio di applicazione viene passato ad un applicativo di rete in
base al campo "port number" del "TCP header".
Il multiplexing è invece più semplice poiché da ogni punto di partenza
vi è un solo percorso verso il basso; ciascun modulo di protocollo
aggiunge una propria informazione nell'header in modo che il pacchetto
possa essere de-multiplexato sul computer destinazione.
I dati che, a partire dal livello applicativo, passano da TCP o UDP
convergono sul modulo IP e vengono mandati giù verso il driver della
interfaccia di rete.
Anche se la tecnologia internet supporta molti differenti mezzi fisici
di rete, la Ethernet viene usata in tutti gli esempi in questa guida,
vista la sua larghissima diffusione sotto IP. Il computer in ura 1
possiede una singola connessione Ethernet. L'indirizzo Ethernet a 6-
byte è univoco a livello mondiale per ogni interfaccia Ethernet e si
trova sul lato basso delle interfacce del driver Ethernet.
Il computer possiede altresì un indirizzo IP di 4-byte. Questo
indirizzo si trova sul lato basso delle interfacce del modulo IP.
L'indirizzo IP deve essere unico per una internet.
Ciascun computer di una internet conosce i propri indirizzi IP ed
Ethernet.
2.4 Due Interfacce di Rete
Se un computer è connesso a 2 separate Ethernet la sua struttura sarà
Come quella mostrata nella ura 3.
ura 3. Nodo di rete TCP/IP su 2 Ethernet
Notate che questo computer possiede 2 indirizzi Ethernet e 2 indirizzi
IP.
Sono visti con questa struttura i computer che possiedono più di una, ed
anche non dello stesso tipo, interfacce fisiche; in essi il modulo IP è
sia un multiplexer n-a-m che un de-multiplexer m-a-n.
1 2 3 n 1 2 3 n
| | / | | | / ^
| | / | | | / |
------------- flusso ----- ----- ------ flusso
|multiplexer| dei |de-multiplexer| dei
------------- dati ----- ----- ------ dati
/ | | | / | | |
/ | | v / | | |
1 2 3 m 1 2 3 m
ura 4. multiplexer n-a-m e de-multiplexer m-a-n
Esso realizza questo multiplexaggio in una o l'altra direzione per
accogliere i dati entranti ed uscenti. Un modulo IP collegato a più di
una interfaccia di rete è molto più complesso che nel nostro esempio
originale per il fatto che può effettuare il passaggio dei dati fra
queste interfacce.
I dati possono infatti arrivare su una rete ed essere trasmessi su
un'altra.
TCP UDP
/
/
----- ----- ----
| IP |
| |
| --- |
| / |
| / v |
----- ----- ----
/
/
i i
dati dati
arrivano escono
da qui da quì
ure 5. Esempio di forwarding di un pacchetto IP
Il processo di trasmissione di un pacchetto IP su un'altra rete viene
chiamato 'forwarding' del pacchetto IP. Un computer dedicato al solo
forwarding dei pacchetti IP viene chiamato 'IP-router'.
Come potete notare dalla ura, sull'IP router, il pacchetto IP
forwardato non interessa i moduli TCP ed UDP. In effetti, varie
implementazioni di IP-router non possiedono i moduli TCP e UDP.
2.5 L'IP Crea una Singola Rete Logica
Il modulo IP è fondamentale per il successo della tecnologia internet.
Ogni modulo o driver aggiunge il proprio "header" al messaggio che lo
attraversa
scendendo la pila di protocolli verso il mezzo fisico. Ogni modulo
o driver toglie il corrispondente header dal messaggio quando esso
risale la pila di protocolli, verso gli applicativi. L'header IP
contiene l'indirizzo IP, in modo da costruire una singola rete logica
a partire da diverse reti fisiche.
Questa interconnessione di reti fisiche è la fonte del nome: "Internet".
Un insieme di reti fisiche interconnesse, tale da limitare il range di
un pacchetto IP viene chiamata 'internet'.
2.6 Indipendenza di una Rete Fisica
L'IP nasconde alle applicazioni il sottostante hardware di rete. Se voi
inventate una nuova rete fisica, potete porla in servizio implementando
un nuovo driver, sotto il modulo IP, tale da connetterla ad internet.
In questo modo, le applicazioni di rete restano intatte e non soggette
ai cambiamenti nella tecnologia dell'hardware.
2.7 Interoperabilità
Se due computer possono comunicare su una internet, si dice che possono
'interoperare'; se una implementazione della tecnologia internet è
buona, si dice che possiede 'interoperabilità'. Gli utilizzatori di
computer "general-purpose" beneficiano della installazione di una
internet a causa
della interoperabilità fra i computer sul mercato. Generalmente, quando
comprate un computer, esso interoperabilirà. Se non può farlo, e se non
si può aggiungere questa capacità, esso occuperà una rara e speciale
nicchia di mercato.
2.8 Dopo la panoramica
Con le conoscenze accquisite, risponderemo ora alle seguenti domande:
Quando viene emesso un pacchetto IP, come viene determinato l'indirizzo
Ethernet del destinatario?
Come fa l'IP a conoscere quale fra diverse interfacce di rete deve
usare quando deve emettere un pacchetto IP?
Come fa un client su un computer a raggiungere un server su un altro?
Perché esistono il TCP e l'UDP, piutosto che solo l'uno o l'altro?
Quali applicazioni di rete sono disponibili?
Saranno spiegati a turno, dopo una rinfrescata alla Ethernet.
Privacy
|
© ePerTutti.com : tutti i diritti riservati
:::::
Condizioni Generali - Invia - Contatta