Notizia del 23/11/2006
Premessa: La spiegazione sarà forzatamente lacunosa e poco tecnica, perché io stessa sono agli inizi e perché comunque non è certo possibile sviscerare un argomento tanto complesso in poche righe: il suo proposito è semplicemente quello di soddisfare la curiosità di qualche navigatore a cui non interessano particolari approfondimenti, ma che si accontenta di capire a grandi linee come funziona.
Come già fatto in precedenza, anche stavolta ho creato un glossario a fondo pagina per aiutare meglio la comprensione del testo.
***
Quando ci si inoltra nel campo delle reti, uno dei primi incontri è con il modello OSI, cioè lo schema di riferimento a cui si ispira tutto quel che riguarda le reti di computers per la comunicazione dall'uno all'altro. Ho trovato particolarmente affascinante capire cosa succede quando premo il tasto Invia dopo aver scritto una mail a qualcuno e mi piacerebbe riuscire a spiegarlo da inesperta a chi come me prova curiosità per l'argomento.
Come ho detto, il modello OSI (Open Systems Interconnection) suddivide i passaggi in sette differenti livelli; un livello dipende da quello precedente e serve quello successivo, ma lavora secondo regole e protocolli a se stanti.
Ogni livello ospita una serie di protocolli, ognuno dei quali si occupa di un determinato passaggio. Vediamo i nomi e le funzioni dei livelli dall'alto [7] in basso [1]:
I sette livelli sono rappresentati nell'immagine qui sotto e le frecce indicano il percorso fatto dai dati per passare da un computer all'altro:
Il percorso più o meno è questo: il livello (poniamo il livello di trasporto) riceve i dati dal livello superiore, vi aggiunge le informazioni che gli competono e invia il nuovo pacchetto (quanto ricevuto dal livello superiore e quanto aggiunto da esso stesso) al livello inferiore che provvederà a fare altrettanto.
A ogni passaggio sono aggiunte delle informazioni: quel che si riceve "da sopra" è considerato contenuto e quel che si spedisce "sotto" è considerato pacchetto (definizione imprecisa, ma sufficiente per comprendere il meccanismo); le informazioni inserite dai vari livelli saranno interpretate dal livello speculare dell'altro computer, cioé i dati inseriti a livello di trasporto sono pensati per fornire informazioni al livello di trasporto del computer di destinazione.
Allo stesso modo, ma facendo il percorso contrario, si procederà al ricevimento del pacchetto: il livello inferiore interpreta i dati che gli servono e li elimina, provvedendo poi a passare la parte restante al livello superiore: figuratevi una specie di cipolla a cui a ogni passaggio viene aggiunto (in fase di spedizione) o tolto (in fase di ricevimento) uno strato.
Ogni singolo pacchetto è grande al massimo 1,5kb circa, perciò quando spediamo un file non lo spediamo tutto assieme, ma "sezionato" in una serie di piccoli pezzi (è il livello di trasporto - come detto - che si occupa del sezionamento).
In tutta questa serie di passaggi, una delle parti che più mi hanno incuriosita e stupita è quella che riguarda la spedizione vera e propria; PRIMA di trasmettere un singolo pacchetto, il computer d'origine procede all'handshaking, la stretta di mano:
I passaggi sono ripetuti di nodo in nodo (il nostro computer al server del nostro provider, questo al nodo di rete successivo a cui fa riferimento etc) per ogni pacchetto. Il pacchetto (quello creato dal livello 3) rimane sempre lo stesso fino a raggiungere il computer a cui è destinato, il frame (quello creato al livello 2 e che contiene il pacchetto creato al livello 3) a ogni nodo che raggiunge viene interpretato, scartato e sostituito da uno che "vivrà" fino al nodo successivo e così via.
Poco? Ok, allora aggiungete che ogni pacchetto può arrivare a destinazione per percorsi diversi (la nostra foto arriverà al collega negli Stati Uniti in parte passando per la Francia, in parte passando per l'Inghilterra, in parte facendo il giro per la Cina o l'Australia) e che per ogni pacchetto (almeno di quelli spediti con il protocollo TCP che devono arrivare integri) c'è una conferma di ricevimento o una richiesta di ritrasmissione e come se non bastasse a tutto ciò si aggiungono una serie di pacchetti (che a questo livello si chiamano frames) spediti per conoscere la situazione della rete e scegliere una strada diversa nel caso che il percorso usato fino a poco prima si fosse interrotto per qualche motivo e tutto questo tra il momento in cui premete Invio e quello in cui il collega riceve il file che gli avete spedito mentre stavate chattando con lui: tempo totale una manciata piccolissima di secondi e tutto usando SOLO 0 e 1 o meglio impulso-silenzio!
Ecco, forse ora vi è più chiaro come mai l'argomento mi ha lasciato letteralmente a bocca aperta ;)
Per chi volesse saperne di più, oltre al moltissimo materiale che si trova in rete (lo stesso Wikipedia è ben fornito!), esistono manuali più o meno specifici e con diversi gradi di difficoltà.
***
Torna a inizio pagina
I campi con * sono obbligatori.
Torna a inizio pagina
Torna a inizio pagina
Commenti
Non ci sono ancora commenti a questa news!