Storia e struttura di Internet
In questa pagina 4
Da dove viene
Internet (con la I maiuscola) è l'insieme mondiale di reti interconnesse che parlano la famiglia di protocolli TCP/IP. Per capire perché è fatta così conviene seguire le tappe in ordine, perché ogni scelta tecnica di oggi è la risposta a un problema incontrato allora.
L'idea chiave del 1972: l'intelligenza ai bordi
Prima di TCP, la rete si preoccupava di consegnare correttamente i dati: erano i nodi interni (gli IMP) a controllare gli errori e a ritrasmettere. TCP sposta questo onere dai nodi della rete ai calcolatori agli estremi (end host): chi trasmette e chi riceve controllano tra loro che i dati siano arrivati, e i router in mezzo si limitano a inoltrare pacchetti senza tenere memoria delle conversazioni (la prestazione di una trasmissione dipende allora anche dal ritardo di andata e ritorno tra i due estremi, l'RTT di Analisi delle prestazioni di reteLe prestazioni di una rete si misurano con tre famiglie di metriche: traffico (bitrate $R_0$ massimo del collegamento, throughput $S\le R_0$ dati consegnati con successo, goodput al livello applicazione), ritardo (end-to-end $d_{tot}=d_{proc}+d_{queue}+d_{trans}+d_{prop}$ con $d_{trans}=L/R$ e $d_{prop}=d/v$; jitter; RTT) e capacità del tubo (BDP $=R\cdot$ ritardo, bit che riempiono il collegamento), più l'affidabilità (PER, PDR, PLR). Il throughput di un percorso è quello del collegamento collo di bottiglia, $\min$ dei bitrate, ricordando che i collegamenti condivisi dividono la capacità.Analisi delle prestazioni di rete →, e dalla ritrasmissione end-to-end che fa TCP: TCP - connessione, affidabilità e controllo di flussoTCP (Transmission Control Protocol) è il protocollo di trasporto con connessione e affidabile: trasforma il servizio senza connessione e inaffidabile di IP in un flusso di byte ordinato, senza errori né duplicati. La connessione si apre con l'handshake a tre vie (SYN, SYN+ACK, ACK) e si chiude con tre o quattro segmenti (FIN). I byte sono numerati: il numero di sequenza è quello del primo byte del segmento, il numero di ACK (cumulativo) è il prossimo byte atteso. Il mittente può inviare $\min(\text{rwnd},\text{cwnd})$ byte non ancora confermati; rwnd (finestra del ricevitore, in un campo di 16 bit) è il controllo di flusso. L'errore si gestisce con checksum, ACK, timeout di ritrasmissione (RTO) e ritrasmissione rapida dopo tre ACK duplicati. Per usare tutto il canale la finestra deve valere almeno il prodotto banda-ritardo (BDP); il throughput massimo è $\text{MSS}\cdot W_{\max}/\text{RTT}$.TCP - connessione, affidabilità e controllo di flusso →). Questo è il motivo per cui Internet scala: aggiungere un router o una rete non obbliga nessuno a gestire più stato per ogni connessione, e reti di tecnologia diversa (cavo, fibra, radio) si possono collegare purché sappiano trasportare un pacchetto IP.
Definizione (internetworking). Interconnessione di reti eterogenee tramite dispositivi (gateway, oggi router) che instradano pacchetti con un formato comune (IP). Ogni rete interna può usare una propria tecnologia di collegamento.
Esempio. Un portatile collegato in Wi-Fi a casa (rete radio) apre una pagina web ospitata in un data center collegato in fibra: i pacchetti IP attraversano tecnologie diverse, e ognuna incapsula lo stesso pacchetto in un proprio frame (Livello di collegamento e framingIl livello di collegamento (DLL) consegna un frame da un nodo a un nodo adiacente su un collegamento. Servizi: framing, accesso al mezzo (MAC) con indirizzi MAC a 48 bit, controllo di flusso, rilevazione e correzione degli errori. Si divide in DLC (framing, controllo di errore e di flusso) e MAC (accesso al mezzo condiviso). Il framing delimita i frame con un flag: nei protocolli a byte (flag di 8 bit, ESC) si usa il byte stuffing, in quelli a bit (flag 01111110) il bit stuffing, che inserisce uno 0 dopo ogni cinque 1 consecutivi.Livello di collegamento e framing →).
Internet oggi e domani
Le slide (edizione 2024-25) riportano alcuni ordini di grandezza, da citare come ordini di grandezza e non come dati esatti:
- oltre miliardi di utenti mobili unici;
- oltre miliardi di utenti Internet;
- oltre miliardi di utenti dei social media (circa all'anno), di cui oltre miliardi li usano dal telefono ();
- le dimensioni di Internet superano i petabyte, con PB GB B.
Esempio. PB B B (si sommano gli esponenti: ); la slide scrive lo stesso numero come byte, cioè byte (uno stesso valore, scritto con un'altra potenza). Rapportato ai miliardi di utenti (): B, cioè TB a testa (con TB B; nelle reti i prefissi sono potenze di : Analisi delle prestazioni di reteLe prestazioni di una rete si misurano con tre famiglie di metriche: traffico (bitrate $R_0$ massimo del collegamento, throughput $S\le R_0$ dati consegnati con successo, goodput al livello applicazione), ritardo (end-to-end $d_{tot}=d_{proc}+d_{queue}+d_{trans}+d_{prop}$ con $d_{trans}=L/R$ e $d_{prop}=d/v$; jitter; RTT) e capacità del tubo (BDP $=R\cdot$ ritardo, bit che riempiono il collegamento), più l'affidabilità (PER, PDR, PLR). Il throughput di un percorso è quello del collegamento collo di bottiglia, $\min$ dei bitrate, ricordando che i collegamenti condivisi dividono la capacità.Analisi delle prestazioni di rete →).
Gli scenari futuri indicati a lezione (reti 5G/6G) sono: accesso a banda larga ovunque (almeno Mbit/s), accesso a banda larga in aree dense, Internet delle cose massiccio (reti di sensori), comunicazioni ultra affidabili (e-health), comunicazioni in tempo reale estremo (Tactile Internet), mobilità elevata (treni ad alta velocità), servizi di diffusione (broadcast), comunicazioni di emergenza (calamità naturali), video pervasivo.
Chi governa Internet
Nessun governo possiede Internet; gli organismi che la coordinano sono:
| Organismo | Ruolo |
|---|---|
| IANA (Internet Assigned Numbers Authority) | coordinamento globale della radice del DNS (DNS root), degli indirizzi IP e di altre risorse dei protocolli di Internet |
| IETF (Internet Engineering Task Force) | problemi ingegneristici a breve termine e produzione degli standard (documenti RFC) |
| IRTF (Internet Research Task Force) | gruppi di lavoro sulla ricerca a lungo termine (protocolli, applicazioni, architettura) |
| IAB (Internet Architecture Board) | consulente tecnico di ISOC |
| ISOC (Internet Society) | organizzazione che raccoglie e sostiene gli altri |
Gli indirizzi IP non sono assegnati da IANA ai singoli utenti: IANA distribuisce blocchi e gli utenti ricevono gli indirizzi dai loro ISP.
ISP, gerarchia e punti di interscambio
Definizione (ISP). Un Internet Service Provider è un'azienda di telecomunicazioni che interconnette altre reti (più piccole) e ne dà accesso a Internet.
All'interno di un ISP le reti sono collegate tramite gateway interni (IG, Interior Gateway); tra ISP diversi si usano gateway esterni (EG, Exterior Gateway). Gli ISP formano una gerarchia «quasi» ad albero:
- ISP nazionale (esempio: TIM, Fastweb, GARR per la rete della ricerca);
- ISP regionale, collegato a uno o più nazionali;
- ISP locale (esempio: l'Università di Padova), collegato a un regionale.
I collegamenti fisici non coincidono necessariamente con quelli logici: un ISP locale può avere un solo cavo fisico ma più relazioni logiche con altri ISP.
Definizione (NAP / IXP). Un Network Access Point (o Internet Exchange Point) è un'istituzione privata che fornisce un luogo in cui più ISP si interconnettono. Lo scambio di traffico diretto tra due reti si chiama peering; l'alternativa, in cui un ISP paga un altro per raggiungere il resto di Internet, si chiama transito (transit).
Esempio. Il MIX (Milan Internet eXchange) è il più grande NAP italiano e tra i primi in Europa: ISP, operatori e fornitori di contenuti vi collegano le proprie dorsali per scambiare traffico IP (peering) in modo efficiente e con costi vantaggiosi rispetto al transito. Il MIX non è un ISP: non fornisce accesso a utenti, non pubblica contenuti né vende spazio web.
Perché i NAP esistono: senza di essi il traffico tra due ISP italiani dovrebbe salire fino a un ISP di livello superiore (con costi e ritardi) anche quando origine e destinazione sono vicine; con il peering a Milano i due ISP si scambiano il traffico direttamente.
Il seguito del corso scende lungo la pila: Modello ISO-OSI e pila TCP-IPUna comunicazione tra due calcolatori è un problema troppo vario (segnali, errori, accesso al mezzo, instradamento, controllo di flusso, rappresentazione dei dati) per un solo protocollo, quindi si divide in strati (layer). Il modello ISO/OSI ha 7 livelli (fisico, collegamento, rete, trasporto, sessione, presentazione, applicazione); la pila TCP/IP riunisce gli ultimi tre in un solo livello applicazione, quindi ne ha 5. Ogni livello offre un servizio a quello sopra e parla solo con il livello pari dell'altro nodo tramite PDU; scendendo si aggiunge un'intestazione (PCI): incapsulamento. Indirizzi: MAC (collegamento, locale), IP (rete, globale).Modello ISO-OSI e pila TCP-IP → descrive i livelli, Elementi di rete - hub, switch e routerI dispositivi che interconnettono le reti si distinguono per il livello della pila che arrivano a leggere. Hub (livello 1): ripetitore, rigenera il segnale e lo manda su tutte le porte, tutte le stazioni condividono la capacità. Bridge e switch (livello 2): leggono l'indirizzo MAC e inoltrano solo verso la porta giusta, imparando la tabella (FDB) dagli indirizzi sorgente. Router (livello 3): leggono l'indirizzo IP e collegano reti indipendenti (internetwork). Switch e bridge isolano il traffico e sono plug and play; il router fa instradamento ottimo ma va configurato.Elementi di rete - hub, switch e router → i dispositivi.
Versione ripasso
- Tappe.
- 1961-64: la commutazione di pacchetto è efficiente con traffico a raffica (Commutazione di circuito e di pacchettoUn nodo di commutazione (switch) può collegare ingresso e uscita in tre modi. Commutazione di circuito: si stabilisce prima un collegamento fisico dedicato (rete telefonica), tempo di consegna $T=3Nt_p+Nt_s+M/R$. Commutazione di pacchetto a datagramma: il messaggio è diviso in $K$ pacchetti con intestazione, ognuno è instradato indipendentemente con store-and-forward, $T=Nt_p+(N+K-1)\frac{M/K+H}{R}$, con $K_{ott}=\sqrt{(N-1)M/H}$. A circuito virtuale: tre fasi (setup, dati, chiusura), connessione logica dedicata ma senza risorse dedicate, identificatore locale che cambia a ogni salto.Commutazione di circuito e di pacchetto →).
- 1967: progetto ARPA con nodi IMP, cioè i primi switch.
- 1969: ARPANET con 4 nodi (UCLA, UCSB, Stanford Research Institute, Università dello Utah), un solo protocollo, NCP. Il primo messaggio doveva essere «LOGIN», ma il sistema si è fermato dopo «LO».
- 1970: ALOHAnet, rete senza fili nelle isole Hawaii (Protocolli di accesso multiplo - ALOHA e CSMAQuando più stazioni condividono lo stesso mezzo serve un protocollo di accesso (MAC) che decida chi trasmette. Accesso casuale: ALOHA puro (si trasmette subito, tempo vulnerabile $2t_F$), slotted ALOHA (si parte solo a inizio slot, vulnerabile $t_F$), CSMA (si ascolta prima di parlare, vulnerabile $\tau_p$) con le varianti 1-persistent, non persistent e p-persistent, CSMA/CD (rileva la collisione mentre trasmette: serve $t_F\ge2\tau_p$, quindi un frame minimo) e CSMA/CA del Wi-Fi (IFS, finestra di contesa con backoff esponenziale, ACK, RTS/CTS e NAV). Accesso controllato: prenotazione, polling, token. Canalizzazione: FDMA, TDMA, OFDMA, CDMA, SDMA.Protocolli di accesso multiplo - ALOHA e CSMA →).
- 1972: si propongono i gateway per interconnettere reti diverse e il protocollo TCP per la comunicazione end-to-end.
- 1977: ARPANET, ALOHAnet e una rete radio sono interconnesse come «ARPA Internet»; TCP si divide in TCP e IP.
- 1983: nasce il DNS, il sistema dei nomi di dominio.
- 1989: nasce il World Wide Web.
- 1995: Internet diventa completamente commerciale.
- L'idea chiave: l'intelligenza ai bordi. Prima di TCP, i nodi interni (gli IMP) controllavano gli errori e ritrasmettevano. Con TCP questo compito passa agli end host: mittente e destinatario verificano che i dati siano arrivati, e i router inoltrano pacchetti senza tenere stato per ogni conversazione. Per questo Internet scala: aggiungere una rete non obbliga a gestire più stato, e reti di tecnologia diversa (cavo, fibra, radio) si collegano purché trasportino un pacchetto IP.
- Internetworking. Reti eterogenee unite da gateway (oggi router) che instradano pacchetti in un formato comune, IP. Esempio: un portatile in Wi-Fi che apre una pagina in un data center in fibra; ogni tratto incapsula lo stesso pacchetto IP nel proprio frame (Livello di collegamento e framingIl livello di collegamento (DLL) consegna un frame da un nodo a un nodo adiacente su un collegamento. Servizi: framing, accesso al mezzo (MAC) con indirizzi MAC a 48 bit, controllo di flusso, rilevazione e correzione degli errori. Si divide in DLC (framing, controllo di errore e di flusso) e MAC (accesso al mezzo condiviso). Il framing delimita i frame con un flag: nei protocolli a byte (flag di 8 bit, ESC) si usa il byte stuffing, in quelli a bit (flag 01111110) il bit stuffing, che inserisce uno 0 dopo ogni cinque 1 consecutivi.Livello di collegamento e framing →).
- Internet oggi. Circa 4,39 miliardi di utenti (slide 2024-25, ordine di grandezza).
- Chi governa. Nessun governo possiede Internet. IANA coordina la radice del DNS, gli indirizzi IP e altre risorse. IETF produce gli standard (RFC) per i problemi a breve termine; IRTF fa ricerca a lungo termine; IAB è consulente tecnico di ISOC. Gli utenti ricevono gli indirizzi IP dal loro ISP, non da IANA.
- ISP e gerarchia. Un ISP è un'azienda che interconnette reti più piccole e ne dà accesso a Internet. Dentro un ISP si usano gateway interni (IG), tra ISP gateway esterni (EG). La gerarchia è quasi ad albero: nazionale, regionale, locale (ad esempio l'Università di Padova). Collegamenti fisici e logici non coincidono.
- NAP / IXP. Luogo in cui più ISP si interconnettono. Lo scambio diretto di traffico si chiama peering; pagare un altro ISP per raggiungere il resto di Internet si chiama transito. Esempio: il MIX di Milano è il più grande NAP italiano, e permette il peering invece del transito; non è un ISP, perché non fornisce accesso agli utenti.
- Errori tipici: credere che i router garantiscano la consegna (la garanzia la dà TCP agli end host); pensare che il MIX sia un ISP; dire che gli utenti ricevono gli indirizzi direttamente da IANA.