la rete

* IL PROTOCOLLO TCP-IP

* SISTEMA DEGLI ?STRATI?

* INTERNET PROTOCOL

* TRANSMISSION CONTROL PROTOCOL

* I NOMI NELLA RETE

IL PROTOCOLLO TCP-IP

Internet ? uno strumento di comunicazione tra i computer, e tra gli uomini che usano i computer interconnessi attraverso la rete. Le tecnologie su cui si basa Internet si sono evolute nel corso degli anni proprio per rispondere con la massima efficienza alle esigenze degli uomini di comunicare tramite computer.
Il primo problema in ogni processo di comunicazione ? naturalmente la definizione di un linguaggio che sia condiviso tra i diversi attori che comunicano; attori che, nel caso di Internet, sono in primo luogo i computer. E sebbene i computer usano tutti lo stesso alfabeto – il codice binario – ‘parlano’ spesso linguaggi differenti e incompatibili. Per permettere la comunicazione tra l’uno e l’altro ? necessario definire delle regole condivise da tutti. Questa funzione viene svolta dai protocolli.

Nel mondo diplomatico per ‘protocollo’ si intende una serie di regole di comportamento e di etichetta rigidamente codificate, che permettono a persone provenienti da diversi universi culturali di interagire senza creare pericolose incomprensioni. Protocolli sono detti anche gli accordi o i trattati internazionali. Queste accezioni del termine possono essere accolte per metafora anche nell’ambito della telematica: un protocollo di comunicazione definisce le regole comuni per manipolare e inviare i bit tra computer che usano ambienti operativi ed hardware diversi. Naturalmente nel caso di Internet, che interconnette milioni di computer e di sottoreti, il problema di individuare protocolli comuni ? fondamentale.
Il protocollo che permette attualmente il funzionamento di questa complessa societ? multietnica viene indicato con la sigla TCP/IP.

TCP/IP ? un acronimo per Transmission Control Protocol/Internet Protocol. In primo luogo TCP/IP ? un open standard, ovvero le sue specifiche sono liberamente utilizzabili da chiunque. Questo ha permesso il rapido diffondersi di adattamenti per ogni sistema operativo esistente, adattamenti spesso distribuiti gratuitamente o integrati nel sistema stesso.
Inoltre il TCP/IP ? indipendente dal modo in cui la rete ? fisicamente realizzata: una rete TCP/IP anzi consente di integrare facilmente diverse tecnologie hardware in una unica struttura di comunicazione, come appunto ? avvenuto per Internet.
Infine TCP/IP ? un protocollo di comunicazione che risolve in modo molto efficiente i tipici problemi di ogni sistema telematico:

* Sfruttare al meglio le risorse di comunicazione disponibili.
* Permettere un indirizzamento efficiente e sicuro dei computer collegati, anche se questi sono diversi milioni.
* garantire con la massima sicurezza il buon fine della comunicazione.
* permettere lo sviluppo di risorse e servizi di rete evoluti e facilmente utilizzabili dall’utente.

SISTEMA DEGLI ?STRATI?

Il TCP/IP ? costituito da un vero e proprio insieme di protocolli di comunicazione, ognuno con un compito specifico, organizzati in maniera gerarchica. In termini tecnici si dice che ? un ‘protocollo a strati di servizi’ (layers of services).
Per la precisione TCP/IP si basa su un modello a quattro strati:

* lo strato della rete fisica
* lo strato di indirizzamento dei computer e dell’invio dei dati
* lo strato di controllo e di organizzazione dei dati per la trasmissione
* lo strato delle applicazioni e dei servizi di rete per l’utente

In questa struttura ad ogni livello corrispondono alcune operazioni necessarie per la trasmissione dei dati: il primo livello ovviamente ? quello della gestione delle connessioni fisiche, dei cavi; il secondo si occupa di inviare i dati ai vari computer collegati, sfruttando al meglio il livello hardware; il terzo livello invece ha il compito di controllare che la comunicazione di un certo blocco di dati sia andata a buon fine, e di ritrasmettere quello che eventualmente ? andato perso; il quarto livello infine produce i dati veri e propri da inviare. Ogni strato ? gestito da uno o pi? protocolli.
In fase di invio i dati partono dal livello delle applicazioni, e passano in sequenza attraverso la pila di strati; ogni protocollo riceve i dati dal livello superiore, aggiunge le informazioni di gestione che gli competono in una intestazione (chiamata header), e poi passa il tutto al livello inferiore. In fase di ricezione avviene naturalmente il processo inverso. I dati arrivano al protocollo del primo strato che legge l’intestazione a lui destinata, compie le conseguenti operazioni, e poi passa il tutto al livello successivo, e cos? via. TCP/IP, insomma, pu? essere visto come una sorta di servizio di recapito basato su un meccanismo a scatole cinesi: al momento della spedizione i dati sono ‘avvolti’ in una scatola (che riporter? all’esterno alcune indicazioni sul contenuto), questa scatola viene inserita in un’altra scatola (con all’esterno un altro tipo di indicazioni), e cos? via. Al momento della ricezione le scatole vengono ‘aperte’ una dopo l’altra, ricavando da ognuna le informazioni su di essa riportate. Ogni interazione tra due computer della rete ? costituita dalla confezione e dall’invio di una serie di scatole.

INTERNET PROTOCOL

La trasmissione dei dati e la gestione del traffico tra i vari computer in una rete TCP/IP sono governati dall’Internet Protocol (IP). Il protocollo IP ha il compito di impacchettare i dati in uscita e di inviarli, trovando la strada migliore per arrivare ad un particolare computer tra tutti quelli connessi alla rete. Le informazioni necessarie a questo fine sono inserite in una intestazione (sempre header) IP che viene aggiunta ad ogni pacchetto di dati.
La tecnica di inviare i dati suddivisi in pacchetti (detti anche datagrammi) recanti tutte le informazioni sulla loro destinazione ? una caratteristica delle reti di tipo TCP/IP, che sono dette reti a commutazione di pacchetto. In questo modo ? possibile usare lo stesso tratto di cavo fisico per far passare molte comunicazioni diverse, sia che provengano da pi? persone che operano sullo stesso computer, sia che provengano da pi? computer collegati a quel tratto di rete. Mai nessuno occuper? un certo tratto di rete fisica per intero, come invece avviene nella comunicazione telefonica.

Il secondo compito del protocollo IP ? l’invio dei dati attraverso un percorso ?esatto?. Per fare in modo che la comunicazione vada a buon fine ? necessario che ogni singolo computer abbia un indirizzo univoco, che lo identifichi senza alcuna ambiguit?, e che indichi la via per raggiungerlo tra i milioni di altri della rete. A questo fine viene impiegato uno schema di indirizzamento dei computer collegati in rete, che si basa su un sistema di indirizzi numerici.

Ogni computer su Internet, infatti, ? dotato di un indirizzo numerico costituito da quattro byte, ovvero da quattro sequenze di 8 cifre binarie. Normalmente esso viene rappresentato in notazione decimale come una sequenza di quattro numeri da 0 a 255 (tutti valori decimali rappresentabili con 8 bit), separati da un punto; ad esempio: 151.100.20.17.
Questi indirizzi numerici hanno una struttura ben definita. In generale la parte sinistra dell’indirizzo indica una certa sottorete nell’ambito di Internet, e la parte destra indica il singolo di quella sottorete. La esatta distribuzione dei quattro byte tra indirizzo di rete e indirizzo del singolo dipende dalla ‘classe’ della rete. Esistono cinque classi di rete designate con lettere latine A, B, C, D, E; di queste solo le prime tre classi sono utilizzate effettivamente su Internet. Una rete di classe A, ad esempio, usa il primo byte per indicare la rete, e i restanti tre byte per indicare i singoli nodi. Una rete di classe C invece usa i primi tre byte per indicare la rete e l’ultimo per il singolo. Inoltre, poich? il riconoscimento del tipo di indirizzo viene effettuato sul primo byte, esistono dei vincoli sul valore che esso pu? assumere per ogni classe. Per le reti di classe A i valori potranno andare da 1 a 127, per quelle di classe B da 128 a 191, per quelle di classe C da 192 a 223.
Ne consegue che possono esistere solo 127 reti di classe A, a ciascuna delle quali per? possono essere collegati ben 16.777.214 diversi computer. Invece le reti di classe B (due byte per l’indirizzo) possono essere 16.384, ognuna delle quali pu? ospitare fino a 65.534 host (singolo nodo). Infine le reti di classe C potranno essere 2.097.152, composte da un massimo di 254 host.
Per capire meglio lo schema di indirizzamento di Internet basta pensare alla struttura di un normale indirizzo postale.Esempio per la classe C: scrivendo l?indirizzo tipo: 2, Via Nomevia, Citt?, Italia. Anche qui abbiamo quattro byte: “Citt?, Italia, Nomevia” svolge la funzione di un indirizzo di rete, “2” corrisponde all’indirizzo del computer. Esempio indirizzo di classe A: “Italia, Presidenza della Repubblica”.

Quando il protocollo IP di un computer riceve dei dati da inviare ad un certo indirizzo, per prima cosa guarda alla parte dell’indirizzo che specifica la rete. Se l’indirizzo di rete ? quello della rete locale, i dati sono inviati direttamente al computer che corrisponde all’indirizzo. Se invece l’indirizzo di rete ? esterno, i dati vengono inviati ad un computer speciale denominato gateway o router che a sua volta li invier? al gateway, da lui conosciuto, competente per un certo indirizzo di rete: ogni sottorete di Internet ha dunque almeno un gateway.
Internet, dunque, funziona come un sistema postale: quando imbuchiamo una lettera questa arriva all’ufficio postale locale (il gateway); se la lettera ha un indirizzo di competenza di un altro ufficio postale, sar? inviata a quell’ufficio postale, che si preoccuper? di recapitarla al destinatario. Naturalmente l’ufficio postale locale non conosce gli indirizzi di tutti gli altri uffici postali locali del mondo. Se una lettera ? indirizzata ad esempio in Francia, l’ufficio locale la spedir? prima all’ufficio nazionale delle poste, che a sua volta mander? tutta la corrispondenza indirizzata alla Francia al suo omologo francese, il quale far? procedere la nostra lettera verso l’ufficio postale locale, che infine la recapiter? al destinatario.
Il gateway locale infatti ha un elenco di altri gateway per ogni indirizzo di rete che conosce, pi? un gateway per tutti gli altri indirizzi.
L’assegnazione effettiva degli indirizzi di rete viene curata da un organismo internazionale, il Network Information Service (NIS), il quale a sua volta delega ad enti nazionali la gestione degli indirizzi di rete nei vari paesi. In Italia, ad esempio, tale gestione ? curata dal GARR-NIS. Naturalmente la cura degli indirizzi di ogni singolo host ? affidata ai gestori (o meglio system manager) delle varie reti. Ed ? ovviamente importante che gli indirizzi assegnati ai vari host siano diversi l’uno dall’altro.

TRANSMISSION CONTROL PROTOCOL

Internet, dunque, ? una rete a commutazione di pacchetto. Questo significa che i dati sulla rete viaggiano in blocchi di dimensione definita: un datagramma IP ? per default grande 1500 byte. Ma ? chiaro che assai raramente i dati scambiati dagli utenti di Internet avranno dimensioni pari o inferiori a quelli dei piccoli pacchetti IP.
Ad ovviare a questi limiti interviene il protocollo che gestisce l’organizzazione dei dati e il controllo della trasmissione, il Transmission Control Protocol (TCP). Se la dimensione del blocco di dati da inviare eccede la dimensione di un singolo pacchetto (come avviene di norma) il TCP ? in grado di suddividerlo, in fase di invio, in una catena di pacchetti, e di ricomporlo in fase di ricezione.
Quando il modulo TCP riceve dei dati da trasmettere da parte di una certa applicazione del livello superiore, suddivide il flusso di dati in segmenti; ad ogni segmento viene aggiunta una intestazione (TCP header) che specifica che tipo di applicazione ha prodotto il flusso di dati e a che punto del flusso appartiene il blocco in questione. In questo modo il TCP ricevente sar? in grado di ricomporre i dati nella loro sequenza e di passarli alla applicazione giusta.
Ma il TCP svolge anche un’altra importante funzione, come il nome stesso suggerisce: assicura che la trasmissione dei dati vada a buon fine, esercitando un controllo sulla comunicazione.
Per fare questo il modulo TCP del computer A che invia stabilisce un contatto diretto con il suo pari nell’host B che riceve. La comunicazione inizia con una richiesta rivolta da A a B di prepararsi a ricevere dati. In caso di risposta positiva A inizia il trasferimento del primo segmento di dati, e poi attende che B invii un segnale di conferma di aver ricevuto tutti i dati inviati. Se questo non avviene o se B dichiara di avere ricevuto solo una parte dei dati inviati, A ritrasmette il segmento perduto.

I NOMI NELLA RETE

Il metodo di indirizzamento numerico dell’Internet Protocol, sebbene sia molto efficiente dal punto di vista dei computer ? assai complicato per un utente. Infatti ricordare le varie sequenze numeriche corrispondenti agli indirizzi dei computer a cui ci si intende connettere pu? essere molto noioso o addirittura impossibile. Per ovviare a questi problemi e facilitare l’impiego della rete da parte degli utenti ? stato sviluppato un sistema di indirizzamento simbolico, che si chiama Domain Name Service (DNS).
Attraverso il DNS ogni host di Internet pu? essere dotato di un nome (domain name), composto da stringhe di caratteri. Tali stringhe, a differenza dell’indirizzo numerico, possono essere di lunghezza illimitata. ? evidente che per un utente utilizzare dei nomi simbolici ? molto pi? semplice e intuitivo che maneggiare delle inespressive sequenze di numeri. Ad esempio, all’host XXX.XXX.XXX.XX corrisponde il seguente nome: hxxp://aaaaa.bbbbb.it/
Come si pu? vedere anche i nomi sono sequenze di simboli separati da punti. Questa articolazione rispecchia la struttura gerarchica del Domain Name Service. Esso suddivide l’intera rete in settori, denominati domini, a loro volta divisi in sottodomini, e cos? via per vari livelli; ogni sottodominio fa parte del dominio gerarchicamente superiore: alla base della piramide ci sono i singoli host.
L’identificativo di un host riassume le varie gerarchie di domini a cui appartiene: ogni sottostringa rappresenta o un dominio, o un sottodominio, o il nome del computer. Ma l’ordine di scrittura ? inverso all’ordine gerarchico.
La parte di indirizzo pi? a destra nella stringa indica il dominio pi? alto della gerarchia, nel nostro caso ‘it’. In genere, il livello pi? alto identifica il paese o, per gli Stati Uniti, il tipo di ente che possiede il computer in questione. Gli altri livelli della gerarchia, muovendosi da destra a sinistra, scendono verso il sistema specifico presso il quale ? ospitato l’utente identificato dall’indirizzo. Cos?, nel caso sopra considerato ‘bbbbb’ si riferisce ad un sito, ‘aaaaa’ si riferisce ad un area specifica. Dunque un nome simbolico fornisce all’utente dotato di un minimo di esperienza una serie di informazioni che possono essere molto utili.
I domini di primo livello sono essenzialmente di due tipi: domini di organizzazione e domini nazionali. Quando il DNS ? stato creato, Internet era diffusa, salvo rare eccezioni, solo negli Stati Uniti. Per questa ragione i domini statunitensi (ed alcuni domini ‘non geografici’) sono stati divisi per tipo di organizzazione:

* EDU: universit? ed enti di ricerca
* COM: organizzazioni commerciali
* GOV: enti governativi
* MIL: enti militari
* NET: organizzazioni di supporto e di gestione della rete
* ORG: organizzazioni ed enti di diritto privato non rientranti nelle categorie precedenti, come enti privati no-profit, associazioni, organizzazioni non governative.

In seguito la rete ha cominciato a diffondersi a livello internazionale. Per questo sono stati creati altri domini di primo livello, suddivisi per nazioni: questi domini usano delle sigle che spesso (ma non sempre) corrispondono alle sigle delle targhe internazionali. L’Italia, ? identificata dalla sigla IT, l’Inghilterra dalla sigla UK, la Francia da FR, e cos? via. Sono stati introdotti, o lo saranno, altri domini di primo livello internazionali, che, seguendo l’evoluzione della rete, estendono l’originale partizione:

* FIRM: aziende e societ?
* STORE: siti commerciali e servizi di commercio on-line
* WEB: enti e organizzazioni dedicate allo sviluppo di World Wide Web
* ARTS: siti culturali e artistici
* REC: siti dedicati all’intrattenimento
* INFO: siti dedicati all’informazione
* NOM: siti che contengono pagine Web personali.

Nell’ambito di ogni dominio possono essere creati un numero qualsiasi di sottodomini.
Dal punto di vista tecnico il Domain Name Service ? costituito da un sistema di archivi distribuiti nella rete chiamati name server, che sono collegati tra loro. Ogni dominio e ogni sottodominio ha almeno un name server di riferimento. Quest’ultimo svolge la funzione di tradurre i nomi in indirizzi numerici per conto degli host o di altri name server. Infatti la comunicazione effettiva tra gli host avviene sempre attraverso gli indirizzi numerici. La traduzione viene chiamata tecnicamente risoluzione.
Quando un host (sollecitato da un utente o da una applicazione) deve collegarsi ad un altro host che ha un determinato nome simbolico chiede al proprio name server locale di tradurre il nome simbolico nel corrispondente indirizzo numerico. Il name server locale va a vedere nella sua tabella se ha l’informazione richiesta. In caso positivo risponde all’host che lo ha interpellato, fornendo il corrispondente indirizzo numerico, altrimenti chiede ad un altro name server (detto name server di primo livello). La scelta di questo ‘super-aiutante’ ? determinata dal dominio di primo livello dell’indirizzo da risolvere (‘it’, nel nostro caso). I name server di primo livello vengono detti authoritative name server. Essi possono sia rispondere direttamente, sia dirottare la richiesta a degli altri name server (questa volta di secondo livello). Il processo pu? continuare per vari sottolivelli, finch? non viene risolto per intero l’indirizzo dell’host cercato. Intelligentemente, nel fare questo lavoro di interrogazione il nostro name server locale si annota gli indirizzi che ha conosciuto, in modo che le future richieste possano essere risolte immediatamente.
Grazie a questo meccanismo il DNS ? sempre aggiornato: infatti la responsabilit? di aggiornare i singoli name server ? decentralizzata e non richiede una autorit? centrale che tenga traccia di tutti i milioni di host computer collegati a Internet.
Come avviene per gli indirizzi, la gestione del sistema DNS in un dominio di primo livello viene affidata a degli enti specifici. Questi enti hanno il compito di assegnare i nomi di sottodominio e di host, curando attentamente che non esistano omonimie; essi inoltre debbono occuparsi di gestire il database principale del dominio di cui sono responsabili, e dunque di garantire il funzionamento del DNS a livello globale. In Italia l’ente che effettua la gestione del DNS ? il medesimo che assegna gli indirizzi di rete numerici, il GARR-NIS.

la reteultima modifica: 2007-10-19T20:15:40+02:00da antocaval
Reposta per primo quest’articolo