Come funziona internet quando cerchiamo una pagina?

copertina-blog-articolo-internet
  1. Il client
  2. Domain Name System (DNS)
  3. Web server

L’affascinante mondo di internet, come lo intendiamo oggi, viene alla luce nel 1991, presso il CERN di Ginevra. Il World Wide Web (WWW) ha cambiato per sempre le nostre vite trasformando il modo di comunicare di un intero pianeta.

Il 6 Agosto dello stesso anno Tim Berners-Lee pubblica il primo sito web al mondo, ancora oggi attivo.

Da quel sito ad oggi sono stati fatti moltissimi passi in avanti sia dal lato client che quello server, ma quanti sanno veramente come funziona internet e cosa accade in quella frazione di secondo in cui premiamo “Enter” per atterrare su una qualsiasi pagina web?

Questo articolo non vuole andare nello specifico ad analizzare i particolari più tecnici della questione, ma solamente fare una panoramica generale e toccare i punti salienti di una richiesta di pagina internet.

1 – Il client

Partiamo dal client, ovvero il device che state utilizzando per navigare in internet. Normalmente i più comuni sono i computer, tablet o smartphone, ma è possibile navigare in internet anche da altri device come gli e-reader ad esempio.

Quando navighiamo in internet ci avvaliamo quindi di uno dei dispositivi precedentemente citati. Ma non basta. Infatti sono i browser che permettono di usufruire dell’ecosistema di internet e poterci navigare.

Come sicuramente avrai già notato esistono diversi tipi di browser per navigare in internet, e come tutti i tipi di software sono soggetti ad aggiornamenti ed a volte anche alla chiusura (ad esempio dal 2016 Microsoft ha erminato il supporto tecnico per le versioni di Internet Explorer, sostituito dal nuovo browser di casa Microsoft “Edge”).

Una breve lista dei browser più utilizzati:

  1. Google Chrome
  2. Mozilla Firefox
  3. Safari
  4. Microsoft Edge
  5. Opera
  6. Brave

Utilizzando l’URL del nostro browser possiamo scrivere l’indirizzo internet di qualsiasi pagina ed accedervi semplicemente lanciando il comando “Enter”. Il processo di connessione ad un sito mediamente dura poco meno di 1 secondo nella maggior parte dei casi eppure i processi svolti per connetterci al sito da noi lanciato sono numerosi.

Torna su

2 – Domain Name System (DNS)

Dobbiamo sapere che tutti i device che utilizziamo per connetterci ad internet utilizzano una stringa numerica per farlo (IP address). Tuttavia sarebbe complicato ricordarsi degli indirizzi IP come questi, 192.168.1.1, per ogni sito internet o pagina da visitare.

Motivo per cui questi indirizzi sono stati tradotti come domini internet, ad esempio 216.58.205.67 equivale a www.google.it.

I servizi di DNS svolgono proprio la funzione opposta: per permettere all’utente di navigare in maniera “smart” e quindi non dovendosi ricordare stringhe di numeri ma dei domini facilmente comprensibili, traduce ogni dominio richiesto nel suo corrispettivo indirizzo IP.

Il Domain Name System funziona come una rubrica telefonica, poichè gestisce la mappatura tra domini e indirizzi IP corrispondenti. I server DNS traducono le richieste di nomi in indirizzi IP, controllando a quale server si connetterà un utente finale nel momento in cui digiterà un nome di dominio nel suo browser. Queste richieste sono chiamate query.

Una volta processata la chiamata dal browser (o query), i server DNS forniscono ai browser quindi l’indirizzo IP corretto con cui quest’ultimi riescono a completare la richiesta al server che ospita il sito che stiamo cercando.

Torna su

3 – Web server

Il web server è letteralmente il contenitore del sito internet che si cerca. Ovvero ospita “fisicamente” i file (.html, .php etc.) che compongono il sito internet.

Quando il web server accoglie la richiesta di ricerca del browser (e tradotta dal DNS), accede al suo file system (ovvero il disco che archivia i file) per ricercare i file richiesti e restituirli al browser, mostrando quindi la pagina al client.

Tuttavia nella maggior parte dei casi non è così semplice il processo, poichè è molto probabile che il web server debba attingere materiale da fonti esterne: ovvero gli Application Server.

Application Server

In generale l’Application Server è una tipologia di server che fornisce infrastruttura ed operazioni logiche di supporto ai normali server.

Un esempio pratico è quello dei database, che altro non sono che application server che si occupano di creare un’infrastruttura di supporto al web server, fungendo come archivio di dati raccolti ad esempio da registrazioni internet oppure file multimediali.

I vantaggi di creare infrastrutture così frazionate sono apprezzabili soprattutto nei tempi di risposta di un sito internet. Infatti se un normale web server dovesse ospitare tutti i file (compresi quelli multimediali), sarebbe lentissimo al caricamento e bisognerebbe disporre di server dall’elevatissima potenza di calcolo e capienza di archiviazione.

Basti pensare ad un sito come YouTube, che ospita miliardi di video (che sono generalmente i file che pesano di più in termini di archiviazione), a quanti problemi potrebbe avere se non disponesse di un’infrastruttura ben studiata e frazionata tra la fitta rete di server ed application server dedicati.

Oppure dei semplici dati di registrazione (come Nome, Cognome, Email, etc.) dove verrebbero ospitati altrimenti? e come smaltire una molte enorme di iscrizioni?

Per concludere il nostro esempio pratico potremmo immaginare che il nostro web server, una volta elaborata la richiesta, ad esempio attinga da dei database collegati file di tipo multimediale come, immagini e video.

Verrà quindi restituita la pagina che stiamo cercando, ospitante sia contenuto testuale sia di tipo multimediale. Il motore di rendering del browser infine resituirà la pagina formattata correttamente secondo le grliglie e gli stili impostati tramite codice.

Protocollo HTTP/HTTPS

WIKIPEDIA: In telecomunicazioni e informatica l’HyperText Transfer Protocol (HTTP) (protocollo di trasferimento di un ipertesto) è un protocollo a livello applicativo usato come principale sistema per la trasmissione d’informazioni sul web ovvero in un’architettura tipica client-server. Le specifiche del protocollo sono gestite dal World Wide Web Consortium (W3C). Un server HTTP generalmente resta in ascolto delle richieste dei client sulla porta 80 usando il protocollo TCP a livello di trasporto.

In breve quindi le richieste in entrata ed in uscita verso il web server quando navighiamo in internet vengono gestite tramite questo protocollo (anche HTTPS, che sostanzialmente è una messa in sicurezza del protocollo HTTP).

Motivo per cui nell’URL di ogni sito internet troviamo sempre quel prefisso “http://” oppure “https://“.

Torna su