Network virtualization
Fino ad ora, esplorando l'infrastruttura di un data center, abbiamo smaterializzato i server, disaccoppiato le singole applicazioni e, nella lezione precedente, estratto i dischi rigidi dalle macchine per trasformarli in grandi bacini condivisi. Manca all'appello un ultimo, fondamentale elemento fisico: i cavi, gli switch e i router che permettono a tutti questi componenti di parlarsi. Anche in questo settore, l'informatica ha compiuto una rivoluzione silenziosa ma radicale, dando vita alla Network Virtualization (virtualizzazione della rete).
In questa lezione scopriremo come i sistemisti abbiano superato i tremendi vincoli fisici dei cablaggi, trasformando la complessa topologia di una rete aziendale in un insieme di regole logiche gestibili tramite software, ponendo le basi per le moderne architetture cloud e per la sicurezza informatica avanzata.
Il problema: la rigidità dei cavi e l'incubo dei cablaggi
Per decenni, progettare una rete aziendale significava stendere cavi fisici. Se in un'azienda c'era la necessità logica di separare completamente il traffico del reparto amministrazione (per motivi di segretezza aziendale) dal traffico dei computer a disposizione degli stagisti, la soluzione tecnologica era brutale e costosa: si dovevano installare due switch fisici separati in sala server, e far passare due set di cavi di rete completamente distinti nei controsoffitti e nei muri dell'edificio.
Questo approccio "hardware-centrico" rendeva le aziende prigioniere della loro stessa struttura fisica. Se un dipendente dell'amministrazione doveva spostarsi temporaneamente in un altro ufficio al piano di sopra, la presa a muro di quel nuovo ufficio apparteneva irrimediabilmente alla rete sbagliata. L'amministratore di sistema era costretto ad alzarsi, scendere in sala server (spesso districandosi in un groviglio inestricabile di cavi) e scollegare fisicamente il cavo di quel dipendente da uno switch per attaccarlo all'altro. Questa operazione manuale, oltre a far perdere moltissimo tempo, generava inevitabilmente errori umani che spegnevano uffici interi.
Ancora peggio: se la rete aziendale diventava improvvisamente troppo piccola per il numero di dipendenti, bisognava comprare nuovi switch fisici, configurare a mano ogni singola porta usando cavi seriali scomodi e sperare di non sbagliare la digitazione di complicati comandi testuali su ogni singolo apparato uno alla volta.
Che cos'è la Network Virtualization
La Network Virtualization risolve questa enorme rigidità separando la logica del traffico di rete dall'hardware fisico che lo trasporta. L'idea di fondo è esattamente la stessa identica applicata ai server: smettere di legare indissolubilmente un servizio (la rete logica) all'hardware fisico (il cavo di rame e la singola porta di metallo dello switch).
Virtualizzare la rete significa creare reti puramente "logiche" che esistono solo sotto forma di configurazioni software all'interno della memoria, ma che viaggiano sovrapposte alla stessa infrastruttura di cavi fisici condivisa. Questa astrazione geniale consente di avere decine di reti isolate e indipendenti che usano in modo intensivo gli stessi fili di rame e la stessa fibra ottica, senza che i loro dati possano mai mescolarsi per sbaglio.
Regola fondamentale: Nella virtualizzazione di rete, l'hardware fisico (lo switch o il router) diventa solo un "tubo" stupido e passivo che trasporta pacchetti. L'intelligenza decisionale su chi può parlare con chi, e su quale rete logica appartenga ogni computer, viene spostata interamente nel livello software astratto.
Il primo gradino: le VLAN (Virtual LAN)
La forma più antica, affidabile e diffusa di virtualizzazione della rete locale è la VLAN (Virtual Local Area Network). Con questa fondamentale tecnologia, un unico e costoso switch fisico da 48 porte può essere letteralmente "affettato" dal software interno per comportarsi come se fossero, ad esempio, tre switch minuscoli e fisicamente separati da 16 porte ciascuno.
Come funziona materialmente questa separazione se il cavo d'uscita è lo stesso? Quando un computer invia un pacchetto di rete, lo switch "virtualizzato" aggiunge al pacchetto in transito un'etichetta invisibile all'utente (chiamata tecnicamente tag), ad esempio inserendo la scritta nascosta "VLAN 10 - Amministrazione". Il pacchetto viaggia fisicamente sui cavi aziendali mischiato a migliaia di altri, ma tutti gli apparati di rete sanno che quel pacchetto può essere consegnato solo ed esclusivamente alle porte configurate per accettare la VLAN 10. Se un dipendente del reparto pubblico (VLAN 20) tenta di intercettarlo snasando la rete, lo switch glielo impedisce in modo granitico a livello logico silenziando i pacchetti diretti a lui.
In un istituto scolastico moderno, si vuole che la rete Wi-Fi degli studenti (limitata) sia totalmente separata da quella dei professori (accesso ai voti). Grazie alle VLAN, si usa un solo ripetitore Wi-Fi appeso al soffitto e un solo cavo per collegarlo al CED. Il ripetitore trasmette due nomi di rete ([tooltip]SSID: Service Set Identifier, il nome pubblico che vedi cercando le reti Wi-Fi[/tooltip]) diversi: quando si collega il prof, il traffico viene "taggato" automaticamente sulla VLAN Professori; quando si collega uno studente, sulla VLAN Studenti. Zero cavi fisici aggiuntivi nei muri, totale isolamento e altissima sicurezza.
L'evoluzione definitiva: Software-Defined Networking (SDN)
Le VLAN hanno brillantemente risolto il problema della separazione dei cavi fisici, ma i tecnici dovevano comunque entrare dentro ogni singolo switch con una password per configurare queste famose etichette. Con l'esplosione dei grandi data center e del cloud, dove i server virtuali si accendono e si spengono in pochi secondi, questa configurazione manuale degli apparati era un collo di bottiglia umano inaccettabile.
È nata così la SDN: Software-Defined Networking, ovvero la gestione centralizzata dell'intelligenza di rete tramite un software centrale remoto. Nella SDN, si divide brutalmente il cervello della rete (il Control Plane, che decide le regole di instradamento) dai muscoli (il Data Plane, che sposta materialmente i byte). Il cervello viene tolto chirurgicamente agli switch fisici e accentrato in un unico potente server di controllo generale (il Controller SDN).
L'amministratore, seduto comodamente al suo PC, usa un'interfaccia grafica o un portale web per "disegnare" la rete: trascina un router virtuale, lo collega a due switch virtuali e imposta le regole di un firewall. Il Controller SDN, in una frazione di secondo, "traduce" questo bellissimo disegno in freddo codice macchina e spara automaticamente le configurazioni a tutti i 500 switch fisici del palazzo. La rete viene plasmata, distrutta o modificata istantaneamente dal software, trasformando la topologia aziendale in un'entità flessibile quanto una singola macchina virtuale.
Errori comuni e limiti strutturali
Un errore classico di sicurezza informatica commesso dai meno esperti è ritenere che le reti logiche virtualizzate (come le VLAN) forniscano un livello di isolamento molto più debole e "bucabile" rispetto all'air-gap (la rassicurante separazione fisica ottenuta usando fili di rame diversi per i diversi reparti). Un tempo, agli albori della tecnologia, c'erano piccoli difetti, ma oggi i solidi standard crittografici e di ferreo isolamento hardware dei chip di rete rendono lo scavalcamento di una VLAN correttamente configurata un'ipotesi puramente teorica e accademica. Ministeri della difesa, banche e apparati di sicurezza si affidano costantemente alle reti virtualizzate per segmentare i loro dati confidenziali e segreti.
Il limite reale, e il vero incubo ricorrente dei tecnici di sala server, riguarda la gigantesca complessità del troubleshooting (la ricerca guasti). Quando una vecchia rete era basata unicamente sui cavi fisici rigidi, se un PC non comunicava col database bastava letteralmente seguire il cavo grigio con gli occhi o con le mani e vedere se uno spinotto era staccato. In una rete totalmente basata su SDN e virtualizzazione avanzata, il cavo fisico è quasi sempre perfettamente inserito e funzionante con le luci verdi accese, ma il PC non naviga perché una minuscola regola logica nascosta in un controller centrale a chilometri di distanza sta bloccando silenziosamente i pacchetti. Per risolvere problemi misteriosi in reti simili servono fortissime competenze software e di analisi logica di alto livello, qualità molto superiori a quelle richieste al vecchio tecnico "tirafili".
Sintesi applicativa
In sintesi, la Network Virtualization ha rimosso magistralmente l'ultimo e faticoso ostacolo alla totale malleabilità dei data center moderni. Grazie a tecnologie storiche come le VLAN per il livello locale e alla dirompente SDN per orchestrare dinamicamente l'intera infrastruttura globale, le aziende possono creare topologie di rete complesse, isolare reparti segreti e garantire la sicurezza agendo puramente via software su interfacce web, senza dover mai più tirare un nuovo cavo nei muri o nei controsoffitti. Mettendo finalmente insieme i tre grandi pilastri dell'astrazione (Server Virtualization + Storage Virtualization + Network Virtualization), il mondo IT ha ottenuto quello che l'industria chiama SDDC (Software-Defined Data Center): un intero palazzo di server, dischi enormi e reti veloci che può essere gestito, riavviato, copiato su disco fisso e modificato interamente a colpi di click. È esattamente su queste solide fondamenta di astrazione totale che, come vedremo nella prossima macroarea, poggia l'immenso paradigma commerciale del Cloud Computing.
Domanda di autoverifica: Un'azienda assume improvvisamente 50 nuovi programmatori e li colloca in un piano completamente vuoto dell'edificio aziendale appena affittato. Secondo la vecchia mentalità, servirebbe chiamare un'impresa per stendere 50 nuovi cavi speciali nei muri per permettere a questi programmatori di accedere ai server di test super-sicuri. L'abile sistemista dell'azienda, applicando i potenti princìpi della Network Virtualization e sapendo che ci sono già cavi di rete normali preesistenti, riesce a dare loro l'accesso isolato e sicuro in meno di 10 minuti semplicemente usando il suo portatile senza mai alzarsi dalla sedia. Quale specifica e diffusa tecnologia logica ha utilizzato, e come ha fatto a isolare il loro delicatissimo traffico da quello degli altri dipendenti dello stesso piano senza toccare né muri né cavi?