Internet e reti
Internet
Che cosa è Internet?
Per capire che cosa è Internet facciamo un salto indietro nel tempo, negli anni sessanta – in piena Guerra Fredda – e pensiamo a due computer che svolgono ciascuno il compito che gli è stato assegnato.
Adesso immaginiamo di voler scambiare dei dati tra i due computer: possiamo avere un dispotivo per lo scambio dati, per esempio un grosso e poco capiente floppy disk, che deve essere trasportato da un computer all’altro: se i computer sono vicini nessun problema, ma se questi computer si trovano a un migliaio di chilometri l’uno dall’altro? L’idea a cui lavorava un dipartimento della difesa americana, l’agenzia militare degli Stati Uniti per i progetti di ricerca avanzati (DARPA), era quella di connettere direttamente i due computer in modo che questi potessero dialogare tra di loro. Che cosa era necessario? Un cavo che connettesse fisicamente tra di loro i due computer e un protocollo (un insieme di regole) per lo scambio dei dati (messaggi).
Dati, protocolli e reti
Un protocollo è un insieme di regole che regolano lo scambio di dati tra due macchine. Pensiamo a quando parliamo con qualcuno, ci sono (anche se magari non ci pensiamo) delle regole che vengono seguite: non si parla contemporaneamente, se uno pone una domanda si aspetta una risposta dall’altro e così via: queste regole costituiscono il protocollo.
Per i computer è la stessa cosa, ci sono delle regole che questi seguono per scambiarsi i dati, in particolare il protocollo adottato per Internet prende il nome di TCP/IP – Transmission Control Protocol e Internet Protocol.
I dati che i due computer si scambiano sono suddivisi in pacchetti che si muovono da un computer a un altro come pacchi trasportati da un corriere.
I dati rappresentano informazioni, come testo, immagini, video etc, codificati come sequenze di 0 e 1 che vengono poi trasformati in segnali elettrici capaci di essere trasferiti attraverso un cavo elettrico.
Il protocollo TCP/IP regola il flusso dei pacchetti, in particolare il protocollo IP governa lo scambio dei pacchetti e il protocollo TCP si occupa dell’affidabilità della comunicazione.
I pacchetti di dati viaggiano su cavi che collegano tra di loro dei computer (potrebbero essere anche stampanti, scanner e qulasiasi altro dispositivo) e formano così una rete, ovvero sia un insieme di nodi connessi da archi.
Le prime reti di computer si svilupparono nei dipartimenti universitari americani. Nel 1969 il Defense Advanced Research Projects Agency (DARPA) aveva dato il via al progetto ARPANET e il primo scambio di messaggi sulla rete ARPANET avvenne tra un professore di computer science della University of California, Los Angeles (UCLA) e lo Stanford Research Institute (SRI). In seguito queste reti vennero unite tra di loro a formare reti di reti, a cui nel tempo si sono aggiunti sempre nuovi nodi, dando così forma a Internet, un sistema globale di reti interconnesse tra di loro.
ARPANET divenne operativa nel 1975 e nel 1983 il protocollo TCP/IP viene adottato come standard. ARPANET ha terminato la sua esistenza nel 1990 ed è stata assorbita da Internet.
Indirizzi IP
Per identificare una risorsa hardware, ovvero sia un computer, una stampante, un router etc all’interno della rete si utilizzano degli indirizzi.
A ciascun nodo della rete viene infatti assegnato un indirizzo IP univoco, formato da 32 bit, raggruppati in 4 gruppi di 8 bit ciascuno, in notazione decimale per esempio 172.16.254.1
Quando una macchina (o un’applicazione) vuole connettersi a un’altra macchina (applicazione) deve mandare dei pacchetti indirizzati a uno specifico indirizzo IP. I pacchetti vengono instradati (routing) sulla rete e attraversano diversi archi e nodi della rete prima di arrivare a destinazione.
In generale i dati vengono suddivisi in più pacchetti, per cui ciascun pacchetto deve contenere oltre all’indirizzo di destinazione anche un numero che lo identifica così, nel caso i pacchetti non arrivassero nello stesso ordine in cui sono stati inviati oppute qualche pacchetto risultasse smarrito, il messaggio possa comunque essere ricostruito, con eventuale richiesta al mittente di reinviare i pacchetti mancanti.
Il meccanismo di circolazione dei pacchetti ricorda quello della corrispondenza, dove una lettera, prelevata dalla cassetta delle lettere viene portata all’ufficio postale centrale e da lì inviata a un altro ufficio centrale che la smisterà poi sul territorio per consegnarla infine al postino che la porta a destinazione.
In pratica una macchina invia il messaggio, suddiviso in pacchetti, sulla rete e il messaggio viene consegnato a tutti i computer della rete locale (LAN, local area network): quando il destinatario lo riceve, si stabilisce una connessione tra le due macchine e dal quel momento in poi lo scambio avviene tra queste.
Se il mittente vuole inviare un messaggio a una macchina che non fa parte della propria rete, allora è il gateway, la macchina che fa da interfaccia con l’esterno (WAN, wide area network) che provvede a inviarlo agli altri gateway a cui è connessa: questi controllano se il destinatario fa parte della propria LAN, altrimenti girano il messaggio a un altro gateway finché il destinatario non viene trovato.
Come è possibile per le macchine che smistano i pacchetti sapere dove si trova la macchina destinataria? I gateway contengono delle mappe (tabelle) della rete che semplificano così l’operazione di smistamento dei pacchetti (packet-switching).
https://www.submarinecablemap.com/
Per vedere per esempio il percorso che compiono i pacchetti prima di arrivare a destinazione è possibile eseguire un comando tipo traceroute (oppure tracert) che rivela il percorso fatto dai pacchetti.
Risorse
Immaginiamo di voler fare una ricerca su Wikipedia: apriamo un browser, per esempio Firefox, e nella barra dell’indirizzo digitiamo www.wikipedia.org. Il browser dopo un attimo ci restituisce la pagina principale di wikipedia e noi possiamo iniziare la nostra ricerca.
Bene, ma cosa è successo dietro le quinte?
Dietro le quinte si sono svolte diverse operazioni, ma procediamo con ordine..
Indirizzi numerici e indirizzi letterali
Gli indirizzi IP non sono facili da memorizzare per cui si può associare all’indirizzo numerico un indirizzo letterale, per esempio, l’indirizzo IP 91.198.174.192 corrisponde a www.wikipedia.org.
Questa operazione viene svolta dal Domain Name Server (DNS), un sistema che permette di associare dei nomi ai nodi una rete.
L’indirizzo è composto di tre parti, www che indica che questo è un sito web, il nome di dominio wikipedia con la propria estensione org, ciascuno separato da un punto “.”.
Il browser richiede al computer di connettersi alla macchina corrispondente al nome di dominio inserito nella barra degli indirizzi e formula una richiesta particolare. Infatti, prima di www.wikipedia.org nella barra degli indirizzi troviamo https://, questo indica il protocollo utilizzato, in particolare il protocollo http è quello che si utilizza per le pagine web, e il prefisso www (World Wide Web) ci ricorda che la macchina che risponde all’indirizzo www.wikipedia.org ci permetterà di visitare un sito web, quello di Wikipedia.
Siti web, risorse, WWW
Ma che cosa è un sito web? Di fatto è un luogo, virtuale, in cui si trovano raggruppate delle pagine web.
Ogni pagina web è composta da un insieme di risorse web, di solito sotto forma di ipertesto, ovvero sia un documento in cui compaiono testo, immagini, eventuali suoni e video e collegamenti (link) a altre pagine web o a altre risorse, formattato con il linguaggio HTML (Hypertext Markup Language).
Le risorse web possono appunto essere ipertesti, immagini, suoni, video etc, e a ognuna è associato un particolare indirizzo chiamato URL, Uniform Resource Locator.
Esempi di risorse web, attenzione a come cambia l’indirizzo nella barra del browser:
Il World Wide Web (WWW) è l’insieme delle risorse identificate da URLs che possono essere interconnesse tramite ipertesti e accessibili tramite Internet.
I protocolli per il web e il primo browser furono scritti alla fine degli anni 1990 dallo scienziato inglese Tim Berners-Lee al CERN di Ginevra.
Il World WIde Web non va confuso con Internet, infatti è solo uno dei servizi che vengono trasferiti attraverso Internet.
Web browser e motori di ricerca
Per visualizzare il contenuto di pagine web abbiamo bisogno di un browser, un’applicazione software che permette l’accesso a informazioni che si trovano sul World Wide Web.
I più diffusi web browser sono Google Chrome, Apple Safari e Mozilla Firefox.
I motori di ricerca ci vengono in aiuto ogni qual volta non ricordiamo l’indirizzo di un sito web oppure nel caso in cui siamo interessati a un particolare argomento ma non sappiamo in quale sito web possiamo trovarlo.
Un motore di ricerca contiene un elenco dei vari siti web raggiungibili attraverso Internet e una descrizione di cosa sia presente nei vari siti web.
Tra i principali motori di ricerca - ricordiamoci che anche un motore di ricerca è una pagina web, solo un po’ particolare - abbiamo Google, Bing, Yahoo, Baidu, DuckDuckGo etc.