Le reti

Davide Sabia
Davide Sabia
·
Riassunto IA

La connettività di rete è un'infrastruttura critica che abilita lo scambio di dati attraverso protocolli comuni su vari mezzi fisici. Le reti locali (LAN), comprese le configurazioni SOHO e aziendali, forniscono connessioni ad alta velocità e bassa latenza all'interno di aree geografiche limitate, facilitando la condivisione di risorse e la comunicazione.

Immagine generata con IA
Immagine generata con IA

Tutto è in rete

Oggi non ci chiediamo più se siamo connessi a Internet: la connettività è diventata un'infrastruttura critica, al pari dell'elettricità o dell'acqua corrente. Comprendere come funzionano le reti non è più prerogativa esclusiva degli ingegneri: è una competenza fondamentale per chiunque lavori nel mondo digitale, dallo sviluppatore all'IT Manager.

Chi possiede internet?

Internet non appartiene a nessun singolo gruppo, azienda o governo. È il risultato dell'interconnessione di migliaia di reti autonome che cooperano attraverso standard e protocolli comuni (come TCP/IP) per scambiarsi informazioni.

Le informazioni viaggiano attraverso una varietà di mezzi fisici:

  • Cavi in rame (doppino telefonico, cavo coassiale)
  • Fibra ottica (trasmissione tramite impulsi luminosi)
  • Connessioni wireless (Wi-Fi, 4G/5G, satellite)

I dati scambiati possono assumere forme diverse: testo, video, audio, immagini, telemetria IoT e molto altro.

Reti Locali (LAN)

Le reti locali LAN (Local Area Network) esistono in tutte le dimensioni e configurazioni.
Una LAN è una rete locale che collega dispositivi informatici e periferiche in un'area geografica limitata, come una casa, un ufficio o una scuola. Questo tipo di rete permette la condivisione di risorse (stampanti, file, connessioni internet) e la comunicazione ad alta velocità tra i dispositivi connessi.

Le caratteristiche principali delle reti LAN includono:

  • Copertura ridotta: Si estende tipicamente per poche centinaia di metri, all'interno di uno o più edifici adiacenti.
  • Alta velocità e bassa latenza: Garantisce trasmissioni dati rapide (da 10 Mbps a 10 Gbps) grazie alla distanza breve tra i nodi.
  • Gestione autonoma: È generalmente una rete privata, gestita dall'organizzazione proprietaria senza dipendere da provider esterni per la connettività interna.
  • Componenti: Utilizza cavi Ethernet (rame o fibra ottica) o connessioni wireless (Wi-Fi) e dispositivi attivi come switch e router.
  • A differenza delle MAN (reti metropolitane) e delle WAN (reti geografiche), la LAN non copre città o paesi. Inoltre offre prestazioni superiori in termini di velocità e costi di implementazione inferiori per ambiti locali.

Reti SOHO (Small Office / Home Office)

Le reti SOHO collegano un numero ridotto di dispositivi (da 2 a qualche decina) e
consentono la condivisione di risorse come stampanti, file, musica e connessione
Internet. Sono tipicamente basate su un router consumer con funzionalità Wi-Fi
integrate.

Reti Aziendali

Le reti aziendali possono connettere centinaia di migliaia di dispositivi distribuiti
su più sedi geografiche. Supportano applicazioni critiche come:

  • E-commerce e CRM
  • Comunicazioni interne (email, VoIP, videoconferenza)
  • Accesso centralizzato a server e database
  • Sistemi ERP e supply chain management

La comunicazione in rete è generalmente più efficiente e meno costosa rispetto ai
canali tradizionali. Le reti aziendali e SOHO forniscono tipicamente una connessione
condivisa a Internet
, motivo per cui Internet viene spesso definita una
"rete di reti" (network of networks).

Dispositivi Mobili e IoT

Internet connette oggi miliardi di dispositivi che vanno ben oltre i tradizionali
computer desktop e laptop.

Dispositivi Mobili

Smartphone, tablet e wearable (smartwatch, fitness tracker) sono oggi tra i
principali produttori e consumatori di traffico Internet mondiale.

Internet of Things (IoT)

L'IoT (Internet of Things) rappresenta l'ecosistema di oggetti fisici dotati di
sensori, software e connettività di rete. L'architettura IoT si articola tipicamente
su tre livelli:

┌─────────────────────────────────┐
│        Cloud / Data Center      │  ← Elaborazione, storage, analytics
├─────────────────────────────────┤
│         Edge / Gateway          │  ← Pre-elaborazione locale, protocolli (MQTT, CoAP)
├─────────────────────────────────┤
│    Dispositivi / End Nodes      │  ← Sensori, attuatori, RFID
└─────────────────────────────────┘

Esempi concreti di dispositivi IoT:

Categoria Esempi
TAG RFID Tracciamento merci, badge aziendali, antifurti
Sensori industriali Temperatura, pressione, vibrazione (Industry 4.0)
Dispositivi medici Glucometri connessi, pacemaker smart, telemedicina
Domotica Termostati intelligenti, serrature smart, telecamere IP
Veicoli connessi Telemetria auto, fleet management, guida assistita

Nota per sviluppatori: i protocolli più diffusi in ambito IoT sono MQTT
(publish/subscribe, leggero, ideale per connessioni instabili) e CoAP
(ottimizzato per dispositivi con risorse limitate). Entrambi operano sopra TCP/IP.

Il Bit: L'Unità Fondamentale dell'Informazione

I computer e le reti operano esclusivamente con cifre binarie: zeri e uno.
Il termine bit (abbreviazione di binary digit) rappresenta la più piccola
unità di informazione digitale.

Un bit può assumere solo due stati fisici distinti:

Stato fisico Valore binario
Interruttore aperto 0
Interruttore chiuso 1

Byte e Codifica dei Caratteri

Otto bit formano un byte, l'unità standard per rappresentare un singolo carattere
o valore.

ASCII e Unicode

Precisazione tecnica: l'ASCII originale (standard ANSI X3.4-1968)
utilizza 7 bit, codificando 128 caratteri. La versione "Extended ASCII"
estende a 8 bit (256 caratteri). Tuttavia, per applicazioni moderne e
internazionali, si utilizza Unicode (standard UTF-8), che supporta oltre
1.1 milioni di caratteri e mantiene compatibilità retroattiva con ASCII.

Esempi di codifica ASCII (Extended, 8 bit):

Carattere Binario Decimale Hex
A 01000001 65 0x41
9 00111001 57 0x39
# 00100011 35 0x23
Non codificabile in ASCII → richiede UTF-8

Esempio Pratico: Conversione Binaria in Python

# Conversione tra carattere, decimale e binario in Python
carattere = 'A'
# Ottieni il valore decimale (code point Unicode)
decimale = ord(carattere)
print(f"Carattere : {carattere}")
print(f"Decimale  : {decimale}")          # Output: 65
print(f"Binario   : {bin(decimale)}")     # Output: 0b1000001
print(f"Hex       : {hex(decimale)}")     # Output: 0x41
# Padding a 8 bit (formato byte completo)
binario_8bit = format(decimale, '08b')
print(f"Byte      : {binario_8bit}")      # Output: 01000001
# Operazione inversa: da binario a carattere
valore = int('01000001', 2)
print(f"Da bin a char: {chr(valore)}")    # Output: A

Metodi di Trasmissione dei Dati

Dopo che le informazioni sono state convertite in bit, devono essere trasformate in segnali fisici trasmissibili attraverso un mezzo (medium). Esistono tre metodi principali:

1. Segnali Elettrici

Trasmissione tramite impulsi di tensione su cavi in rame (es. cavo Cat5e/Cat6 per reti Ethernet). Economici e diffusi, ma soggetti a interferenze elettromagnetiche (EMI) e attenuazione sul lungo raggio.

2. Segnali Ottici

Trasmissione tramite impulsi luminosi su cavi in fibra ottica (single-mode o multi-mode). Offrono larghezza di banda elevatissima, immunità alle interferenze e distanze di trasmissione fino a centinaia di chilometri.

3. Segnali Wireless

Trasmissione tramite onde elettromagnetiche (radio, microonde, infrarossi). Elimina la necessità di cablaggio fisico ma è soggetto a interferenze, ostacoli fisici e limitazioni di sicurezza.

Mezzo Velocità tipica Distanza Pro Contro
Rame (Cat6) 1–10 Gbps ≤100 m Economico Interferenze, distanza limitata
Fibra ottica 10 Gbps–400 Tbps km–migliaia di km Velocità, sicurezza Costo di installazione
Wi-Fi (802.11ax) Fino a ~9.6 Gbps teorici ~50–100 m indoor Mobilità Interferenze, sicurezza
5G Fino a ~20 Gbps teorici Variabile Mobilità, copertura Infrastruttura

I segnali possono essere convertiti più volte lungo il percorso
(es. elettrico → ottico → wireless) attraverso dispositivi come convertitori
di media (media converters) e access point.

Larghezza di Banda, Throughput, Latenza e Jitter

Questi quattro parametri sono fondamentali per valutare le prestazioni di una rete. Vengono spesso confusi: ecco le distinzioni precise.

Bandwidth (Larghezza di Banda)

La bandwidth rappresenta la capacità teorica massima di un collegamento, ovvero quanti bit possono essere trasmessi per unità di tempo in condizioni ideali. È una proprietà del mezzo fisico e dell'infrastruttura.

Throughput (Velocità Effettiva)

Il throughput misura la quantità di dati effettivamente trasferiti in un dato
intervallo di tempo. È quasi sempre inferiore alla bandwidth dichiarata, a causa di:

  • Overhead dei protocolli di rete (header TCP/IP, controllo errori)
  • Congestione e collisioni
  • Qualità del collegamento fisico
  • Limitazioni hardware dei dispositivi intermedi

Latenza

La latenza è il tempo necessario affinché un pacchetto viaggi dalla sorgente alla destinazione. Si misura tipicamente in millisecondi (ms) tramite il comando ping. È critica per applicazioni real-time come VoIP, gaming online e videoconferenze.

# Misurazione latenza verso un host remoto
ping -c 4 8.8.8.8
# Output di esempio:
# 64 bytes from 8.8.8.8: icmp_seq=1 ttl=118 time=12.4 ms
# 64 bytes from 8.8.8.8: icmp_seq=2 ttl=118 time=11.8 ms
# round-trip min/avg/max/stddev = 11.8/12.1/12.4/0.3 ms

Jitter

Il jitter è la variazione della latenza nel tempo (la deviazione standard della latenza). Un jitter elevato causa degrado della qualità audio/video nelle comunicazioni real-time, anche quando la latenza media è accettabile.

Latenza ideale:  10ms — 10ms — 10ms — 10ms  (jitter ≈ 0)
Latenza reale:   10ms — 25ms —  8ms — 30ms  (jitter elevato → qualità VoIP scarsa)

Tabella Unità di Misura della Bandwidth

Unità Simbolo Equivalente
Bit per secondo bps unità base
Kilobit per secondo Kbps 103 bps
Megabit per secondo Mbps 106 bps
Gigabit per secondo Gbps 109 bps
Terabit per secondo Tbps 1012 bps
Petabit per secondo Pbps 1015 bps

Attenzione: i provider Internet dichiarano la velocità in Mbps
(megabit), mentre i sistemi operativi mostrano spesso la velocità di download
in MB/s (megabyte). Ricorda: 1 byte = 8 bit → 100 Mbps ≈ 12.5 MB/s.

Il Collo di Bottiglia (Bottleneck)

In una rete con più segmenti, la velocità massima effettiva è limitata dal segmento più lento del percorso — il cosiddetto bottleneck. Questo principio, noto come legge dell'anello debole, è fondamentale nell'ottimizzazione delle prestazioni di rete in contesti Cloud e DevOps.

Client (1 Gbps) ──→ Switch (10 Gbps) ──→ Router WAN (100 Mbps) ──→ Server
                                               ↑
                                     BOTTLENECK: throughput massimo = 100 Mbps

Best Practice: Ottimizzazione delle Performance di Rete

💡 Per IT Manager e DevOps Engineer

  • Monitoring continuo: usa strumenti come Prometheus + Grafana, Zabbix
    o PRTG per monitorare latenza, throughput e packet loss in tempo reale.
  • Quality of Service (QoS): prioritizza il traffico critico (VoIP, video) su
    quello non critico (backup, aggiornamenti) tramite policy QoS su switch e router.
  • Segmentazione della rete: usa VLAN per isolare traffico e migliorare sicurezza
    e performance.
  • CDN (Content Delivery Network): distribuisci i contenuti statici vicino agli
    utenti finali per ridurre latenza e carico sui server centrali.
  • Test periodici: strumenti come iPerf3 (throughput interno) e
    Speedtest CLI (connettività esterna) aiutano a rilevare degradi prestazionali
    prima che diventino problemi critici.
# Test throughput interno con iPerf3
# Sul server:
iperf3 -s
# Sul client:
iperf3 -c <IP_SERVER> -t 10 -P 4
# -t 10 = durata 10 secondi
# -P 4  = 4 stream paralleli

Il Modello OSI

Tutti i concetti trattati in questo modulo — trasmissione dei dati, segnali, larghezza di banda — trovano una collocazione precisa nel Modello OSI (Open Systems Interconnection), il framework a 7 livelli che descrive come i dati viaggiano da un'applicazione su un dispositivo a un'altra applicazione su un dispositivo remoto.

Livello Nome Funzione chiave
7 Applicazione HTTP, DNS, SMTP
6 Presentazione Codifica, crittografia, compressione
5 Sessione Gestione connessioni
4 Trasporto TCP/UDP, porte, controllo flusso
3 Rete IP, routing
2 Data Link MAC, switch, Ethernet
1 Fisico Bit, segnali, cavi ← adesso siamo qui

Alcune note sulle scelte adottate nelle conversioni:

  • Nella tabella ASCII ho usato <code> per i valori di carattere, binario e hex, e <sup> era già inapplicabile lì; la riga dell' usa le entità HTML &rarr; e &mdash; al posto delle frecce e trattini Markdown.
  • Nella tabella bandwidth ho usato <sup> per gli esponenti (10<sup>3</sup> ecc.) in luogo del carattere Unicode, così il rendering è più affidabile e semanticamente corretto.
  • Nella tabella OSI il numero di livello è centrato con text-center e i nomi di protocollo sono racchiusi in <code>; l'ultimo record usa &larr; per la freccia e <strong> per il grassetto finale.
  • Nella tabella dei mezzi di trasmissione ho usato &ndash; per i trattini lunghi nei range e &le; per il simbolo ≤.
Commenti