MPLS: cosa si nasconde dietro questa tecnologia di rete
Essenzialmente si distinguono due tipi di trasmissione dati: in una trasmissione senza connessione i dati possono essere inviati in qualsiasi momento e senza limiti dal dispositivo desiderato al sistema di destinazione, senza che sia stabilito preliminarmente il percorso dei pacchetti. Ogni nodo di rete connesso (di solito il router) sa automaticamente come deve inoltrare il flusso di dati. Così il percorso di trasmissione senza connessione offre un alto grado di flessibilità ma nessuna garanzia che le risorse necessarie siano effettivamente disponibili.
Al contrario il percorso dei pacchetti nella trasmissione orientata alla connessione è prestabilito sin dall’inizio. I nodi di rete coinvolti (solitamente switch) ricevono le rispettive informazioni per l’inoltro dei dati dalla stazione precedente fino a quando i pacchetti alla fine del percorso sono arrivati al computer di destinazione. In questo modo il lungo processo di instradamento che è necessario per la trasmissione senza connessione viene accelerato notevolmente. Inoltre le risorse di rete preesistenti si possono controllare in maniera ottimale e distribuire tra i singoli membri. Il cosiddetto Multiprotocol Label Switching (MPLS) consente ciò anche per le reti TCP/IP, sebbene queste rientrino nella categoria delle reti senza connessione.
Che cos’è la tecnologia MPLS (Multiprotocol Label Switching)?
A metà degli anni 90 le grandi reti di comunicazione erano ancora prevalentemente costituite dalla comunicazione vocale (telefonia) più che dalla comunicazione dati (Internet). A quell’epoca i provider telefonici gestivano ancora delle reti separate per entrambi i tipi di trasmissione, cosa che da una parte risultava davvero costoso e dall’altra non garantiva una piena qualità del servizio (Quality of Service). Alle reti vocali di alta qualità e orientate alla connessione si contrapponevano le reti dati senza connessione, alle quali mancava però la banda larga necessaria.
L’introduzione del protocollo ATM (Asynchronous Transfer Mode) è riuscita a risolvere per buona parte questa problematica, consentendo la trasmissione vocale e dei dati tramite un’infrastruttura comune. Ma la soluzione arrivò solo alla fine degli anni 90 con la tecnologia Multiprotocol Label Switching che permise di sfruttare efficientemente la banda larga disponibile.
Per mettere questo proposito in pratica, MPLS ha alleggerito finalmente i sistemi di instradamento sovraccarichi: al posto di far determinare il percorso ottimale di un pacchetto dalle singole stazioni intermediarie, come solito fino ad allora, il procedimento offre la possibilità di predefinire i percorsi di un pacchetto a partire dal punto di partenza (ingress router) fino a quello di arrivo (egress router). Le stazioni intermediarie (label switched router) riconoscono questi percorsi, valutando i label (identificativi) che contengono le informazioni di instradamento e di servizio adatte e che vengono assegnate allo stesso pacchetto. La valutazione avviene così grazie al relativo hardware (ad esempio uno switch) al di sopra del livello di collegamento (livello 2), mentre il lungo instradamento si verifica sul livello di rete (livello 3).
Grazie all’estensione Generalized MPLS, nel frattempo la tecnologia, originariamente sviluppata solo per le reti IP, è disponibile anche per altri tipi di rete, come SONET/SDH (Synchronous Optical Networking / Synchronous Digital Hierarchy) o WSON (Wavelength Switched Optical Network).
Come funziona la tecnologia Multiprotocol Label Switching?
L’uso di MPLS nelle reti IP presuppone un’infrastruttura logica e fisica, composta da router che supportano MPLS. Il procedimento di label opera quindi principalmente all’interno di un sistema autonomo (AS), un assembramento di diverse reti IP che vengono gestite come unità e sono collegate da almeno un Interior Gateway Protocol (IGP) comune. Di solito i gestori di tali sistemi sono provider, università o anche aziende internazionali.
Prima che i singoli percorsi possano essere creati, l’IGP utilizzato deve occuparsi del fatto che tutti i router del sistema autonomo possano raggiungersi a vicenda. Infine vengono anche stabiliti i dati principali dei percorsi, denominati anche come Label Switched Paths (LSP). Questi ingress ed egress router nominati prima si trovano solitamente alle entrate e alle uscite di un sistema. L’attivazione dell’LSP avviene poi manualmente, semiautomaticamente o in modo completamente automatico:
- Configurazione manuale: ogni nodo che attraversa un LSP deve essere configurato singolarmente; nelle grandi reti questo procedimento è inefficace.
- Configurazione semiautomatica: solo alcune stazioni intermedie (ad esempio i primi tre hop) devono essere configurati manualmente, mentre il resto degli LSP riceve le informazioni dall’Interior Gateway Protocol.
- Configurazione completamente automatica: nella variante completamente automatica l’Interior Gateway Protocol è interamente responsabile della determinazione del percorso, però in questo modo non viene raggiunta nessuna ottimizzazione del percorso.
L’ingress router trasmette ai pacchetti che vengono inviati in una rete MPLS configurata un header MPLS aggiuntivo, il quale viene aggiunto tra le informazioni del secondo e del terzo livello; questo procedimento è conosciuto anche con il nome di operazione push. Sul percorso di trasmissione i singoli hop coinvolti scambiano il label con delle proprie informazioni di connessione (latenza, banda larga e hop di destinazione) tramite una variante adattata: questo procedimento è spesso chiamato operazione swap. Alla fine del percorso viene eliminato di nuovo il label dall’header IP durante un’operazione pop.
La struttura dell’header del Multiprotocol Label Switching
MPLS amplia il normale header IP con il cosiddetto Label Stack Entry, conosciuto anche con la denominazione di shim header MPLS. Questa voce ha una lunghezza di 4 byte ed è molto breve (32 bit), perciò può essere elaborata velocemente. La giusta riga header che viene inserita tra il livello 2 e 3 si presenta così:
I successivi 32 bit del Label Stack Entry MPLS aggiungono a un pacchetto IP quattro informazioni per il prossimo hop di rete:
- Label: il label comprende le informazioni basilari della voce MPLS, perciò ne stabilisce la maggior parte con una lunghezza di 20 bit. Come già menzionato, un label è sempre unico su un percorso e comunica perciò anche solo tra due router definiti. Infine viene adattato per la trasmissione dei dati alla successiva stazione intermediaria.
- Traffic Class (TC): grazie al campo Traffic Class, l’header comunica le informazioni sui Differentiated Services (DiffServ). Questo schema può essere utilizzato per la classificazione dei pacchetti IP per garantire la Quality of Service. Così i 3 bit possono ad esempio comunicare allo scheduler di rete se il pacchetto deve essere trattato con priorità o se rimane subordinato.
- Bottom of Stack (S): il Bottom of Stack definisce se nel percorso di trasmissione alla base si tratti di un percorso semplice o se sono annidati più LSP gli uni dentro gli altri. In quest’ultimo caso un pacchetto può anche contenere più label che sono raggruppati nel cosiddetto Label Stack. La Bottom of Stack Flag informa poi il router del fatto che seguono altri label o, in caso contrario, che la voce contiene l’ultimo label MPLS dello stack.
- Time to live (TTL): gli ultimi 8 bit del Label Stack Entry MPLS indicano il ciclo di vita del pacchetto. Quindi a questo scopo regolano quanti router deve ancora attraversare il pacchetto sul percorso (il limite è impostato a 255 router).
Il ruolo attuale del Multiprotocol Label Switching
Negli anni 90 MPLS ha aiutato i provider consentendo un ampliamento veloce e una crescita delle loro reti. Ma il vantaggio iniziale di velocità nella trasmissione dati è passato in secondo piano con la nuova generazione di router dalle prestazioni elevate con processore di rete integrato. Dato che è il procedimento con cui si può garantire la qualità del servizio stabilita, resta finora utilizzato da molti provider. In questo caso si tratta del cosiddetto Traffic Engineering, un processo che si occupa dell’analisi e dell’ottimizzazione dei flussi di dati. Oltre alla classificazione delle singole connessioni dati, avviene anche un’analisi della banda larga e delle capacità dei singoli elementi di rete. Sulla base degli eventi si punta infine a distribuire il carico dei dati in maniera ottimale per rafforzare l’intera rete. Un altro importante campo di utilizzo sono le Virtual Private Networks (VPN), cioè delle reti di comunicazione virtuali chiuse in se stesse che utilizzano come mezzo di trasporto le infrastrutture di reti pubbliche. In questo modo si possono unire i dispositivi a una rete, senza che siano collegati fisicamente gli uni agli altri. Essenzialmente si distinguono due tipi di reti virtuali MPLS:
- Livello 2 delle VPN: le reti private virtuali sul livello di collegamento possono essere concepite per connessioni point-to-point o per l’accesso remoto. Logicamente il livello 2 serve all’utente di una simile VPN come interfaccia per stabilire una connessione. Come protocolli di base si utilizzano il Point-to-Point Tunneling Protocol (PPTP) o il Layer 2 Tunneling Protocol (L2TP). In questo modo i fornitori di servizi hanno la possibilità di offrire ai loro clienti servizi simili a SDH e a quelli Ethernet.
- Livello 3 delle VPN: le VPN di livello 3 basate sulla rete costituiscono una soluzione facile per i provider per offrire a diversi clienti (indipendentemente dalle sezioni di indirizzamento IP private) delle strutture di rete completamente instradate sulla base di una singola infrastruttura IP. In questo modo viene garantita la Quality of Service, dato che i clienti vengono gestiti in modo separato gli uni dagli altri tramite Label MPLS personalizzati e percorsi di pacchetti predefiniti. Inoltre agli hop di rete viene risparmiato il processo di instradamento.
I gestori delle grandi reti WAN (Wide Area Network) traggono vantaggio dalle offerte dei provider che si basano sul Multiprotocol Label Switching: i Label Switched Path strategici, configurati correttamente, ottimizzano il traffico dati e assicurano al massimo che tutti gli utenti possano disporre in ogni momento della necessaria banda larga, richiedendo in cambio un impegno limitato. Il procedimento rappresenta una soluzione adatta anche per le reti nei campus, come le reti delle università e delle aziende, a patto che si abbia il necessario budget.
Riepilogo dei vantaggi delle VPN MPLS
Il Multiprotocol Label Switching, in qualità di tecnologia per le reti virtuali, concorre anche con l’estensione dello stack di protocollo IP IPsec. L’upgrade di sicurezza del protocollo Internet si contraddistingue in particolare per dei propri meccanismi di crittografia e i suoi costi modici. La realizzazione dell’infrastruttura per mezzo di IPsec non rientra però nelle responsabilità del provider, a differenza del processo MPLS, bensì spetta all’utente, che dovrà quindi affrontare un maggiore impegno. In questo caso il procedimento MPLS offre quindi un vantaggio, che non è il solo delle reti Label, come indica il seguente elenco:
- Meno impegno per il funzionamento: come la configurazione IP e l’instradamento, il funzionamento della rete MPLS rientra nell’ambito dei compiti del provider. Di conseguenza i clienti beneficiano di un’infrastruttura già pronta e dedicano meno tempo alla creazione di una propria rete.
- Performance di qualità: i percorsi predefiniti dei dati provvedono a garantire delle trasmissioni molto rapide, che sono soggette a pochissime variazioni. I Service Level Agreements (SLA), concordati tra il provider e il cliente, garantiscono la banda larga desiderata e un aiuto veloce in caso di disturbi.
- Elevata flessibilità: le VPN basate sul Multiprotocol Label Switching garantiscono ai provider molto spazio per la distribuzione delle risorse, aspetto che risulta vantaggioso anche per i clienti. Così si possono concordare dei pacchetti di prestazioni specifici e ampliare le reti facilmente in ogni momento.
Possibilità di assegnare delle priorità ai servizi: grazie all’infrastruttura MPLS i provider possono offrire diversi livelli di Quality of Service. La banda larga a disposizione non risulta quindi statica, bensì classificabile (Class of Service). In questo modo si possono assegnare delle priorità ai servizi desiderati, ad esempio VoIP, per garantire una trasmissione stabile.
Quanto sono sicure le reti MPLS?
I vantaggi di MPLS e delle reti virtuali private che si basano su questa tecnica sono soprattutto interessanti per le aziende e le istituzioni che sono presenti in diversi luoghi e che vogliono garantire anche ai loro clienti l’accesso alla rete. In parole povere queste reti virtuali sono spesso la prima scelta nella creazione dell’infrastruttura IT. In questo modo vengono riuniti tutti gli utenti desiderati in una rete senza che sia necessaria una connessione fisica o pubblica su Internet agli indirizzi IP di instradamento. Essenzialmente una VPN di Multiprotocol Label Switching è quindi raggiungibile solo per quegli utenti che dispongono dei relativi dati per stabilire una connessione. Solo questo fatto non rende però le reti virtuali immuni da accessi indesiderati: l’attributo “privato” riferito a queste reti non significa segretezza e crittografia, ma viene solo utilizzato per indicare che gli indirizzi IP utilizzati sono raggiungibili solo internamente. Senza una crittografia aggiuntiva tutte le informazioni vengono quindi trasmesse come testo in chiaro. Ma anche una relativa certificazione non offre nessuna protezione completa, nonostante il normale traffico Internet passi attraverso i così chiamati “Provider Edge” (PE) tra le reti MPLS e clienti LAN. Di seguito sono elencati alcuni possibili rischi che sorgono durante l’utilizzo di infrastrutture MPLS:
- I pacchetti MPLS finiscono nella VPN errata: gli errori dei software e configurazioni errate sono spesso causa del fatto che i pacchetti IP con Label MPLS lasciano la VPN vera e propria e diventano visibili in un’altra rete. Così il router inoltra i pacchetti erroneamente a sistemi non affidabili raggiungibili tramite un route IP. Inoltre è possibile che i pacchetti vengano introdotti in maniera mirata con label modificati (Label Spoofing MPLS) in una VPN estranea, se il router Provider Edge accetta i relativi pacchetti.
- Connessione di un router di trasmissione non autorizzato: se all’infrastruttura MPLS sono collegate diverse VPN, si corre il rischio che un Provider Edge venga integrato in modo non autorizzato nella VPN di un altro cliente. Ciò può essere provocato da una configurazione errata involontaria o anche da un attacco mirato. Così facendo un utente indesiderato riesce a sferrare altri attacchi basati sulla rete.
- La struttura logica della rete del provider è visibile: se un attacco ottiene informazioni sulla struttura logica della rete MPLS creata dal provider, gli attacchi ai router di trasmissione sono molto probabili, specialmente se i loro indirizzi sono visibili.
- Attacco Denial of Service sui router PE: un altro importante nodo per le reti coinvolte è il router Provider Edge, un obiettivo particolarmente soggetto ad attacchi Denial of Service, che minacciano la disponibilità del servizio VPN. In questo caso sono pensabili da una parte dei continui aggiornamenti di routing, ad esempio tramite EIGRP (Enhanced Interior Gateway Routing Protocol) o OSPF (Open Shortest Path First), mentre dall’altra è possibile il sovraccarico del router tramite bombardamenti mirati con piccoli pacchetti.
Oltre alla crittografia, ogni VPN dovrebbe di conseguenza disporre di altri meccanismi di protezione per proteggere il router Provider Edge da accessi esterni. Si consiglia in questo caso di configurare una zona demilitarizzata tra due firewall e di usare dei sistemi di controllo delle reti. Inoltre gli aggiornamenti regolari di software e hardware, così come l’attuazione di meccanismi di sicurezza contro gli accessi fisici ai gateway, devono rientrare tra i procedimenti standard da attuare.