| Tecnologia di Internet | ||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||
| TCP/IP, il protocollo di comunicazione di Internet, consiste in realtà di una famiglia di protocolli strettamente legati tra loro, di cui TCP (Transmission Control Protocol) e IP (Internet Protocol) sono i principali.
Inizialmente sviluppata per mainframe, il protocollo TCP/IP fu portato sui sistemi Unix alla fine degli anni 70, diventando parte integrale di quel sistema operativo. Oggi, con il diffondersi di Internet, è disponibile su tutti i personal computer. In Internet (o meglio nella famiglia di protocolli TCP/IP) sono utilizzati solo cinque livelli OSI (non vengono usati i livelli di presentazione e sessione). |
||||||||||||||||||||||||||||||||
| Quando ci vogliamo collegare con il nostro browser a un server web, stabiliamo un collegamento (virtuale) a livello applicazione. Dei dettagli di questo livello si occupa il livello di trasporto.
Al livello di trasporto il protocollo TCP mette in coda i messaggi delle applicazioni (browser e server) li indirizza e li trasmette sottoforma 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 allaltro. Un computer spedisce, laltro riceve, ma è un collegamento virtuale tra i due computer remoti, dei cui dettagli si occupa il livello di link. Al livello di link 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 allultimo livello. Lultimo livello, fisico, trasmette fisicamente il messaggio sul cavo sottoforma di impulso elettrico. Questo è lunico livello in cui avviene una trasmissione effettiva. Per consentire queste comunicazioni, ad ogni signola macchina sulla rete è assegnato un indirizzo IP di 32 bit |
||||||||||||||||||||||||||||||||
| Tutta linformatica, e in particolare Internet e il protocollo TCP/IP, è basata sui numeri binari, lunico sistema numerico che i computer comprendono.
Il sistema numerico decimale (detto in base dieci, comodo per gli esseri umani, forse perché hanno 10 dita) utilizza le dieci cifre 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9 e la cifra di posizione n (partendo da destra con n=0) si intende moltiplicata per 10n. Un sistema non decimale, per esempio quello ternario (detto anche in base tre), utilizza le tre cifre 0, 1 e 2 e la cifra di posizione n si intende moltiplicata per 3n. Un sistema con base maggiore di dieci, per esempio il sistema esadecimale con base sedici, utilizza le sedici cifre 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. La cifra di posizione n si intende moltiplicata per 16n (la cifra A ha il valore 10, la cifra B vale 11, , la cifra F vale 15). Il sistema binario (comodo per i computer, che sono fatti con componenti elettronici che possono assumere due stati, conduzione o non conduzione) si basa sulle due cifre 0 e 1. La cifra di posizione n si intende moltiplicata per 2n. Una cifra binaria è detta bit. Otto bit sono detti byte. |
||||||||||||||||||||||||||||||||
| I primi numeri nei sistemi di numerazione decimale, ternario e binario. | ![]() |
|||||||||||||||||||||||||||||||
|
Il sistema di numerazione di rete del protocollo TCP/IP è stato fissato nel 1981. Ad ogni singola macchina della rete viene assegnato un diverso indirizzo IP composto di 32 bit, cioè 4 byte, che la identifica. In notazione decimale, ciò significa quattro numeri ognuno dei quali va da 0 a 255. È usuale separare i quattro byte (sia in notazione binaria che decimale) con dei punti. Ecco un indirizzo IP nelle notazioni binaria e decimale 11001000.10000101.10101111.01100001 L indirizzo IP ha una prima parte (che può essere composta dal primo, dai primi due, o dai primi tre byte) che indica il numero di rete e una seconda parte (gli altri byte) che indica il numero della macchina allinterno della rete. |
||||||||||||||||||||||||||||||||
|
Indirizzi di classe A Più in dettaglio, si è convenuto che negli indirizzi IP il cui primo bit è 0 (quindi quelli in cui il primo numero decimale è compreso tra 0 e 127), il primo byte rappresenti il numero di rete, gli altri tre byte il numero della macchina allinterno della rete. |
||||||||||||||||||||||||||||||||
| Struttura di un indirizzo IP di classe A; un byte è dedicato alla rete e tre byte sono dedicati al computer; gli indirizzi di questa classe sono adatti a quelle poche, grandi organizzazioni, che hanno reti con numerosi computer. | ||||||||||||||||||||||||||||||||
| Con questo tipo di indirizzi, che sono detti di classe A o /8, si possono indirizzare poche reti (128 in totale ma in realtà solo 126 perché i numeri di rete 0 e 127 non si possono usare) ma ognuna con un numero molto elevato di possibili nodi (224 2 = 16.777.214, il primo e lultimo indirizzo non si possono usare).
Alle reti molto ampie, per esempio quella dellesercito americano, vengono assegnati blocchi di indirizzi di classe A. Dallelenco completo che si può trovare in ecco alcune organizzazioni alle quali è stato assegnato un blocco di indirizzi di classe A (quindi più di 16 milioni di indirizzi):
|
||||||||||||||||||||||||||||||||
|
Indirizzi di classe B Negli indirizzi IP i cui primi due bit sono 10 (e quindi il cui primo numero decimale è tra 128 a 191) i primi due byte rappresentano il numero di rete, e gli altri due byte rappresentano il numero della macchina allinterno della rete. |
||||||||||||||||||||||||||||||||
| Struttura di un indirizzo IP di classe B; due byte sono dedicati alla rete e due byte sono dedicati al computer; gli indirizzi di questa classe sono adatti alle medie organizzazioni, che hanno reti con un numero medio di computer. | ||||||||||||||||||||||||||||||||
| Ci sono 214 blocchi di questi indirizzi (detti di classe B o /16), ma solo 214 2 = 16,382 si possono usare: di questi attualmente ne sono stati assegnati circa 12,000 (65%). Ogni blocco consiste di un numero massimo teorico di 216 2 = 65,534 indirizzi.
Tutti gli indirizzi di classe B si possono trovare alla pagina dalla quale sono tratte alcune organizzazioni alle quali è stato assegnato un blocco di indirizzi di classe B:
|
||||||||||||||||||||||||||||||||
|
Indirizzi di classe C Infine gli indirizzi IP i cui primi tre bit sono 110 (primo numero decimale da 192 a 223) si dicono di classe C o /24: qui, i primi tre byte indicano la rete e lultimo byte può indicare, per ogni rete, fino a 254 macchine. |
||||||||||||||||||||||||||||||||
| Struttura di un indirizzo IP di classe C; tre byte sono dedicati alla rete e un byte è dedicati al computer; gli indirizzi di questa classe sono adatti alle numerose piccole organizzazioni, che hanno reti con pochi computer. | ![]() |
|||||||||||||||||||||||||||||||
| Poiché i primi tre bit sono fissi, ci sono 221 2 = 2,097,150 possibili reti di classe C; attualmente ne sono definite circa 800,000 (40%). Una piccola organizzazione (una società, una scuola) può per esempio ricevere un blocco di 254 indirizzi che vanno da 192.66.12.1 fino a 192.66.12.254.
Il blocco 195.31 è uno di quelli assegnati allItalia; ecco alcuni blocchi di indirizzi italiani:
|
||||||||||||||||||||||||||||||||
| Altre classi
Sono previste anche le classe D (bit iniziali 1110, indirizzi tra 224 e 239, per multicasting) ed E (bit iniziali 1111, indirizzi tra 240 e 254, per usi futuri).
Convenzioni Un indirizzo che ha tutti i bit del numero di macchina uguali a 0 non indica una determinata macchina ma la rete stessa a cui apparterrebbe tale macchina. Per esempio lindirizzo di classe A 00010001.00000000.00000000.00000000 indica la rete della Apple, quello di classe B 10000000.01110000.00000000.00000000 indica la rete della Princeton University, e quello di classe C 11000011.00011111.10001001.00000000 la rete della Cassa di Risparmio di Ferrara. Un indirizzo che ha tutti i bit del numero di macchina uguali a 1 non indica una particolare macchina; si tratta del cosiddetto indirizzo di broadcasting sulla rete indicata. Gli indirizzi di broadcasting delle tre reti indicate qui sopra sono 00010001.11111111.11111111.11111111 10000000.01110000.1111111.11111111 11000011.00011111.10001001.11111111 Gli indirizzi (di classe A) che iniziano con 127 hanno un uso riservato; tra questi
Reti private Nelle reti locali interne private, non collegate con Internet, non è consigliato usare indirizzi pubblici (visibili), ma solo indirizzi speciali, a loro riservati. La Internet Assigned Numbers Authority (IANA) ha riservato i seguenti tre blocchi di indirizzi IP per reti private
|
||||||||||||||||||||||||||||||||
|
Il RIPE (Réseau IP Européens) è lente preposto allassegnamento degli indirizzi IP per il continente Europeo. Per il continente americano lente preposto è lARIN, mentre per lAsia e il Pacifico è lAPNIC. Tutti questi organismi sono coordinati dallICANN (Internet Corporation for Assigned Names and Numbers). |
||||||||||||||||||||||||||||||||
| Livello OSI di riferimento: trasporto | TCP crea un circuito virtuale tra due processi, assicura cioè che i pacchetti siano ricevuti nellordine in cui sono stati trasmessi e i pacchetti persi vengano ritrasmessi. Finora abbiamo discusso dellindirizzo IP di una macchina. Ma quando il pacchetto è arrivato ad una macchina è necessario individuare un singolo servizio a cui spedirlo. Questa è la funzione delle porte. Quando TCP riceve un pacchetto verifica il numero di porta e spedisce i dati al processo corrispondente. Quando un processo viene avviato, registra un numero di porta con lo stack TCP/IP. I numeri di porta di default sono
Informazioni online |
|||||||||||||||||||||||||||||||
| Livello OSI di riferimento: trasporto | UDP è labbreviazione di User Datagram Protocol, un protocollo connectionless che, come TCP, viene eseguito su IP. Al contrario di TCP, UDP fornisce pochi servizi di correzione errore, offrendo invece un modo diretto di spedire e ricevere datagrammi su una rete IP. Il suo uso principale è per messaggi di broadcasting su una rete.
UDP è utile quando TCP è troppo complesso, troppo lento, o addirittura non necessario. Oltre a quelle di IP, UDP ha le seguenti funzioni
Normalmente in UDP vengono forniti i servizi di audio e video streaming. Informazioni online |
|||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||