Software-defined networking:
cos’è, come funziona e vantaggi

In un mondo sempre più interconnesso, è fondamentale disporre di un’infrastruttura di rete capillare e al tempo stesso dotata di un sistema di gestione centralizzato, per ottenere un’adeguata visibilità su quanto accade su tutti i dispositivi aziendali e garantire i livelli di performance e sicurezza necessari per la continuità di business.

Da qualche anno, alle tradizionali infrastrutture di rete, grazie all’offerta del cloud computing, per i sistemisti si è aggiunta una nuova opzione su cui puntare: l’SDN o software-defined networking.

Secondo un recente studio di Markets and Markets, il volume d’affari legato al SDN sarebbe destinato a salire dai 24,5 miliardi del 2023 a circa 60,2 miliardi di dollari entro il 2028, con un tasso di crescita medio annuo (Gagr) pari al 19,7%.
Si tratta di numeri importanti nel contesto del mercato IT, che vede i principali driver nelle applicazioni di SDN ibrido e la varietà di offerta proposta dai vari cloud provider.

Vediamo nello specifico cos’è, come funziona, quali sono i suoi componenti fondamentali e le differenze rispetto al networking tradizionale, prima di soffermarci sui vantaggi derivanti da un’infrastruttura di rete centralizzata, capace di portare benefici in azienda, sia sul piano economico che sul fronte operativo.

Software-defined networking (SDN)

Il software-defined networking (SDN) è un’architettura basata sulla virtualizzazione, che astrae tutti i componenti necessari per configurare reti agili, flessibili e scalabili nella loro implementazione.

In altri termini, una SDN si pone come obiettivo quello di centralizzare e garantire un miglior controllo delle reti aziendali, sempre più complesse e variegate nella loro topologia, facendo propri i vantaggi in termini di scalabilità tipici del cloud computing, per assecondare le esigenze di business in funzione della loro variazione nel tempo.

Essendo basati sulla virtualizzazione, gli elementi di una SDN possono integrarsi con successo con le infrastrutture di rete tradizionali, salvaguardando gli investimenti effettuati, modernizzando e rendendo più efficiente la gestione delle risorse on-premise e in cloud.

A livello funzionale, la SDN adotta una metodologia basata su un software gestionale della rete, con l’obiettivo di consolidare più risorse e servizi in un’unica infrastruttura, ai fini di poterla governare in maniera efficiente a prescindere dalla sua complessità.

Una caratteristica fondamentale di una SDN risiede nella sua configurabilità. Gli amministratori di rete possono infatti programmarla nello specifico per ciascuna esigenza, derivante ad esempio dal controllo del traffico dei database o all’applicazione delle policy di sicurezza sui vari sistemi, agendo sui criteri di controllo stessi, come le regole di instradamento del traffico dati e molti altri aspetti.

Nella sua architettura, una SDN è generalmente caratterizzata da tre elementi, o livelli, fondamentali: l’application layer, il control layer e l’infastructure layer.

L’application layer (livello dell’applicazione) include le app che trasmettono informazioni sul comportamento della rete stessa. Tramite l’impiego di apposite API, permettono di interagire con il controller (control layer).

Il control layer, o controller, è di fatto il sistema operativo della SDN. Ne regola il funzionamento e gestisce i flussi di traffico, consentendo alle applicazioni di rete e ai dispositivi connessi di interagire tra loro.

Il controller effettua un monitoraggio costante sui pacchetti di dati, gestendo informazioni relative alla loro destinazione, per minimizzare problematiche di performance e rischi di sicurezza.

L’infrastructure layer (livello dell’infrastruttura) è composto dai dispositivi, fisici e virtuali, che compongono la rete stessa: router, switch, firewall, access point, ecc.

L’infrastruttura, come accennato in precedenza, viene gestita dal controller attraverso specifiche API chiamate ad interfacciare le istruzioni necessarie.
Tra i vari protocolli impiegati nella configurazione delle SDN va segnalato OpenFlow, uno standard molto diffuso, attualmente gestito da Open Networking Foundation.

Tra le principali tipologie di reti SDN è attualmente opportuno citare Open SDN, API SDN, SDN Overlay e le SDN ibride (Hybrid model SDN).

Open SDN si basa su un insieme di tecnologie open source chiamate ad implementare l’intero ecosistema della rete definita via software.
Il già citato protocollo OpenFlow costituisce uno standard di riferimento e viene spesso utilizzato per gestire le comunicazioni tra il controller e i device connessi.

Essa basa la propria fortuna su una community di sviluppatori ed esperti di rete, che è stata capace negli anni di dare vita a progetti come Open Daylight, ONOS (Open Network Operating System) e Open vSwitch.

La natura open source di tali risorse consente ad ogni organizzazione di personalizzare la propria soluzione SDN, a partire dal controller e tutte le librerie necessarie.

API SDN

Anziché affidarsi a protocolli aperti come nel caso delle Open SDN, l’API SDN sfrutta la programmabilità delle API per controllare e gestire il traffico di dati attivo sulla rete, agendo su aspetti quali la definizione delle regole di instradamento dei dati, dei criteri di traffico, delle misure di sicurezza e dei parametri QoS (Quality of Service).

Gestisce le risorse ed orchestra i servizi di rete grazie all’integrazione tra l’infrastruttura della SDN con vari framework di gestione disponibili in cloud, creati appositamente per centralizzare le interfacce di controllo, aggregando tutti i componenti attivi sulla rete stessa.

SDN Overlay

SDN Overlay consiste in un approccio basato sulla creazione di overlay software virtuale su un’infrastruttura di rete fisica.
Si tratta di un metodo molto efficace quando si tratta di rendere più agevole il controllo di una rete di tipo tradizionale.

L’overlay consiste in un controller che regola il comportamento ed il routing. E lo fa attraverso la configurazione di criteri relativi all’inoltro dei pacchetti di dati ed altre operazioni della rete aziendale.

Hybrid Model SDN

Come il nome stesso suggerisce, una SDN ibrida combina elementi definiti via software con i protocolli di rete tradizionali.
È caratterizzata da più domini, che possono avere ognuno un controller autonomo nella gestione di un’area della rete locale.
Il sistema di gestione di una SDN ibrida è capace di regolare il funzionamento dei controller, soddisfando opportuni criteri di coerenza tra i domini della rete, fisiche o virtuali.

Gli amministratori di rete, quindi, possono programmare la gestione dei controller del software per gestire alcuni flussi di traffico, mentre i protocolli di rete standard possono nel frattempo gestirne altri.
Le SDN ibride sfruttano pienamente tecnologie tradizionali come Ethernet e VPN, per connettere tra loro più reti locali.

Differenza con networking tradizionale

Le differenze tra una SDN e una rete di tipo tradizionale consentono in primo luogo di comprendere come configurare le sinergie di un modello ibrido.

La rete tradizionale è basata su appositi dispositivi software e hardware dedicati, come switch, router o firewall, che hanno ruoli specifici nel garantire il regolare traffico di dati in condizioni sicure, grazie all’impiego di opportuni protocolli di rete.

Le reti tradizionali non sono state pensate all’origine per un sistema di gestione centralizzato. Ogni dispositivo agisce in modo indipendente, inconsapevole dello stato complessivo della rete.

Questo fattore rappresenta una limitazione di visibilità per gli amministratori di rete, che affrontano sfide legate alla limitata programmabilità e alla necessità di aggiornare manualmente i sistemi.

Le SDN nascono per fornire una risposta pratica e concreta ai limiti gestionali delle infrastrutture di rete tradizionali. Oltre agli aspetti legati alla visibilità dei dispositivi e del traffico di rete, la portata innovativa delle SDN è relativa alla programmabilità.
Le API possono infatti essere utilizzate per personalizzare ed automatizzare molti processi che regolano il comportamento della rete stessa, agevolando il lavoro degli amministratori.

Vantaggi e svantaggi del software-defined networking

Una corretta e consapevole implementazione di una SDN offre una serie di tangibili vantaggi.

  • Gestione centralizzata: gli amministratori ottengono una visione completa dello stato della rete, facilitando il controllo e l’automatizzazione della gestione rispetto alle infrastrutture tradizionali.
  • Sicurezza: le SDN permettono ai gestori di reti di adattare dinamicamente le policy di sicurezza per rilevare e contrastare intrusioni esterne in modo proattivo. È inoltre possibile integrare in qualsiasi momento nuovi dispositivi di sicurezza, per potenziare l’efficacia dei sistemi di monitoraggio e risposta alle minacce informatiche. Le estensioni virtuali dell’infrastruttura consentono inoltre di isolare al meglio le zone più critiche della rete.
  • Agilità: gli amministratori possono intervenire sulle policy e sulle regole di routing, controllando in maniera agile qualsiasi zona della rete. La SDN consente un semplice e rapido adattamento via software alle continue variazioni delle esigenze aziendali, senza dover riconfigurare nulla via hardware.
  • Scalabilità: le reti definite dal software consentono di adattare le risorse di rete alle esigenze aziendali integrando facilmente nuove applicazioni e servizi. Basate sulla virtualizzazione del cloud, le SDN permettono di scalare le risorse in tempo reale.

A fronte di una serie di evidenti vantaggi, le SDN comportano alcune criticità nel conseguire un soddisfacente risultato finale, soprattutto per quanto riguarda la loro implementazione e integrazione nei sistemi esistenti.

Con la sua comprovata esperienza nell’assistere le aziende italiane nella gestione delle infrastrutture di rete, IFIConsulting supporta i processi di adozione di SDN di varie dimensioni, preservando gli investimenti nelle risorse esistenti..