Un ambiente per le reti definite via software

In un periodo in cui le architetture di comunicazione stanno evolvendo rapidamente, trainate dalla domanda da parte dei consumatori di una larghezza di banda superiore e di servizi migliori, più affidabili e sicuri, Xilinx ha innovato una tecnologia rivoluzionaria e un approccio alla progettazione che consentirà ai propri clienti di produrre e aggiornare in tempi rapidi le schede di linea di prossima generazione all’interno delle reti via cavo e wireless oltre che dei data centre. La nuova tecnologia è SDNet, un ambiente di specifica definito via software. Quando quest’ultimo è usato con gli Fpga Interamente programmabili e con i SoC di Xilinx, SDNet consente ai gruppi di progettisti nel campo delle comunicazioni di introdurre un approccio rivoluzionario che Xilinx chiama " reti definite “via software” per il progetto e l'aggiornamento delle schede di linea per la prossima generazione di architetture di rete definite via software.

Dalle reti fisse alle Sdn

“Le architetture di comunicazione degli ultimi 20 anni sono state principalmente caratterizzate da un controllo fisso e dai piani dei dati che non si espandevano all’evolversi dei requisiti della rete”, afferma Nick Possley, vice presidente per le comunicazioni, la proprietà intellettuale e i servizi presso Xilinx. Questa architettura rigida richiede da parte degli operatori di rete la frequente sostituzione delle apparecchiature ogni qualvolta si volevano espandere le funzionalità della rete ed aumentare la banda complessiva. Le schede di rete al cuore di questi sistemi erano largamente basate su una combinazione di Asic, Assp e IC di memoria altamente specializzati. Gli Fpga servivano per accelerare ed interfacciare le comunicazioni fra i chip sulla scheda di linea. All’accentuarsi della velocità con cui cresce la domanda, gli operatori di rete e le società che forniscono sistemi di comunicazione che servono questi ultimi hanno cercato delle alternative migliori. Negli ultimi cinque anni, essi sono passati alle reti definite via software e alla virtualizzazione delle funzioni di rete. Queste architetture separano i piani di controllo e dei dati e aggiungono più virtualizzazione del software al piano di controllo. Tali architetture separano il piano di controllo da quello dei dati, e aggiungono più virtualizzazione software al piano di controllo. Di conseguenza, gli operatori di rete possono introdurre rapidamente nuove applicazioni e gli apparecchi di rete risultano semplici da aggiornare rispetto alle reti tradizionali. Questo migliora al longevità (e la profittabilità) e semplifica la gestione delle reti (Fig. 1). Tuttavia Possley ha precisato che anche le architetture Sdn e Nfv più recenti sono troppo rigide, nel senso che i piani dei dati non sono programmabili e i progetti sono basati tipicamente su Assp pronti all’uso. Le schede di linea al cuore della rete usano processori di pacchetti discreti “da scaffale” e Assp connessi all’ottica per la gestione del traffico, assieme ai coprocessori e alla memoria esterna. Le schede includono anche Fpga per accelerare le comunicazioni fra tutti questi chip. L’ultima versione di Assp, che diversi produttori di chip hanno creato per le architetture Sdn e NFV, soddisfano le specifiche Sdn. Tuttavia, dato che i fornitori generalmente rendono disponibili gli stessi Assp a tutte le società che forniscono sistemi di rete, questi chip non assicurano alcuna differenziazione competitiva del prodotto e alcuna possibilità di espandere le funzionalità. Di conseguenza, i produttori dei sistemi di rete sono costretti a competere sul prezzo più basso offerto agli operatori di rete. Di primo acchito, si potrebbe pensare che questi ultimi apprezzino il fatto di spuntare prezzi contenuti sulle apparecchiature di questo tipo. Tuttavia, in realtà, i progetti fissi dei piani dei dati, anche in architetture SDN basate su Assp, sono ancora talmente rigide che gli operatori di rete dovranno effettuare costose sostituzioni sul campo delle schede di linea quando scopriranno che la funzionalità hardware fissa degli Assp non può supportare le applicazioni in continua evoluzione, gli aggiornamenti del protocollo e i requisiti delle nuove funzionalità. Queste sostituzioni delle schede di linea richiedono il fermo delle reti, mentre i tecnici rimuovono le schede obsolete e ne installano delle nuove. Per di più, i produttori di Assp tendono a inserire un numero sovrabbondante di funzionalità dei propri progetti, in un tentativo di servire un ampio numero di mercati con un singolo dispositivo. Di conseguenza, queste schede di linea basate su Assp tendono adessere energivore e quindi si surriscaldano, al punto che gli operatori di rete devono adottare ulteriori misure per mantenere gli apparecchi raffreddati. Il costo del raffreddamento, naturalmente, impatta in modo negativo sulle spese operative e abbatte ulteriormente la profittabilità concreta di un operatore di rete.

Reti definite via software

Con la tecnologia SDNet e con l’approccio rivoluzionario di Xilinx basato sulle reti definite “via software”, le società che forniscono sistemi di comunicazione possono sviluppare schede di linea interamente programmabili integrate e a basso consumo, le quali vantano molto di più rispetto a un piano di controllo definito via software con l’intelligenza di rete richiesta dalle architetture Sdn. Questa nuova tecnologia permetterà inoltre ai produttori di differenziare i propri sistemi con hardware definito via software per il piano dei dati, dotandolo di contenuti su misura, il che significa che i gruppi di progettazione possono adattare esattamente l’hardware ai servizi di rete e alle applicazioni che i sistemi richiedono (Fig. 2). Tradizionalmente, gli architetti di rete (che tipicamente non possiedono competenze nel campo della progettazione hardware) esprimono i requisiti di protocolli specifici in descrizioni in termini descrittivi, come le richieste di commenti in internet o i documenti sugli standard Iso. Quindi essi devono basarsi su ingegneri specializzati che sono molto ben ferrati nell’architettura sottostante del dispositivo di riferimento per tradurre manualmente questi requisiti nelle descrizioni a basso livello e nelle specifiche di realizzazione (tipicamente usando microcodice altamente specializzato). Questi ingegneri hardware specificano o il modo in cui i processori con funzione generica o i processori di rete specializzati dovrebbero effettuare l’elaborazione dei pacchetti, oppure mettere a punto le funzionalità all’interno di un Asic dedicato. I gruppi di progettazione delle soluzioni di rete devono quindi verificare che l’hardware soddisfi l’intenzione originaria del progetto dell’architetto di rete o che possa almeno supportare la versione più recente del protocollo che quest’ultimo intende adottare per la scheda. Se la scheda di linea non soddisfa i requisiti, essi devono ripetere il processo di progettazione fino a quando non risultano operare correttamente. Questo processo è complicato dal fatto che la relazione fra le specifiche desiderate e il microcodice non è intuitiva e l’architettura sottostante presenta limitazioni nelle prestazioni e nelle funzionalità che variano in base alle compagnie di servizi a cui si rivolgono. L’approccio basato sulle reti definite “via software” del protocollo SDNet va alla radice di questo problema e consente ai gruppi di progettazione dei sistemi di rete di progettare rapidamente schede di linea che sono corrette per costruzione. In particolare, SDNet punta ad automatizzare l’aspetto più complesso della progettazione di una scheda di linea – per la precisione, la progettazione e la programmazione delle funzioni di elaborazione dei pacchetti e di gestione del traffico nelle schede di linea moderne (Fig. 3). Anziché avere due Assp separati discreti che gestiscono queste funzioni, i gruppi di progettazione dei sistemi di rete possono integrare l’elaborazione dei pacchetti e la gestione del traffico, oltre ad altre funzionalità delle schede di linea su un singolo Fpga interamente programmabile o su un SoC di Xilinx. Essi possono assicurare la creazione di realizzazioni ottimali per le proprie applicazioni di riferimento. Oltre ad integrare le funzionalità di numerosi chip in un unico dispositivo interamente programmabile, la tecnologia SDNet agevola la creazione di una specifica comportamentale di alto livello della scheda di linea e genera automaticamente i blocchi Rtl per la realizzazione di progetti su dispositivi interamente programmabili di Xilinx, del firmware e di un banco di prova di validazione. “Con SDNet, gli architetti di sistema specificano il “che cosa”, non il “come”, spiega Possley. “Questi ultimi specificano i servizi esatti che stanno cercando di introdurre, senza dover pensare a come siano predisposti sul silicio sottostante.” All’interno del flusso SDNet, gli architetti di sistema definiscono la funzionalità della scheda di linea usando una specifica funzionale ad alto livello. SDNet consente agli architetti di descrivere il comportamento richiesto di vari tipi di unità di elaborazione dei pacchetti, incluso le unità di analisi, di preparazione dei dati, di ricerca e le unità di elaborazione delle politiche di qualità del servizio. Gli architetti possono descrivere gerarchicamente le unità di elaborazione in termini di sotto-unità più semplici che possono interconnettere e disporre in flussi di pacchetti di dati. Queste sotto-unità possono includere unità fornite dall’utente. L’ambiente di specifica SDNet non contiene dettagli realizzativi. Ciò fornisce ai clienti la libertà di scalare le prestazioni e le risorse del proprio progetto senza la necessità di comprendere i dettagli dell’architettura sottostante. Le specifiche SDNet inoltre non sono limitate ad alcun protocollo di rete specifico. Secondo Possley, SDNet è semplice, e i pochi clienti selezionati con cui Xilinx ha effettuato i beta test lo hanno trovato molto intuitivo e semplice all’uso. “L’ambiente abbatte drasticamente la quantità di codice che devono produrre, ottenendo una specifica semplice ed intuitiva e comporta, di conseguenza, sforzi inferiori di ordini di grandezza rispetto alla stesura di microcodice per un processore di rete,” spiega Possley. Una volta che gli architetti di sistema hanno terminato la definizione delle unità di sistema e dei flussi nell’ambiente di specifica SDNet, essi forniscono al compilatore SDNet i requisiti in termini di resa e di latenza e i requisiti di programmabilità durante il funzionamento, che influenzano l’architettura hardware ottimizzata generata dal compilatore. Essi quindi eseguono un comando, e il compilatore SDNet genera automaticamente l’Rtl per i blocchi hardware che il progetto richiede. Il compilatore genera anche il firmware e un banco di prova di verifica/validazione. L’ambiente di progettazione SDNet include l’integrazione di SmartCore ottimizzati per I prodotti Xilinx per le applicazioni di rete, e dei core LogiCORE per la connettività, una unità di controllo della memoria esterna e dei processori dedicati. Dopo la compilazione, gli ingegneri di rete possono quindi completare la realizzazione del progetto all’interno della Suite di Progettazione Vivado, usando il tool di integrazione della proprietà intellettuale. Essi usano innanzitutto i tool Vivado e il tool IPI per trasformare la descrizione dell’archittettura Rtl, che il compilatore SDNet ha generato, in una realizzazione ottimizzata su Fpga di Xilinx. Essi possono integrare qualsiasi funzionalità aggiuntiva delle schede di linea all’interno dell’Fpga, data la presenza di risorse sufficienti sul dispositivo che hanno selezionato, creando essenzialmente una scheda di linea interamente programmabile su un singolo chip. Per di più, SDNet genera i dati per la verifica funzionale e la validazione per guidare la progettazione corretta per costruzione. Nello specifico, il compilatore SDNet accetta un insieme di pacchetti di test per il collaudo dell’ingresso e dell’uscita del progetto. Gli architetti possono usare i pacchetti nella fase di specifica-definizione dei processi per assicurare la creazione di un’interpretazione accurata della descrizione della specifica SDNet. Gli ingegneri di rete possono usare i pacchetti di test durante la simulazione della descrizione Rtl generata dal compilatore SDNet. Infine, i pacchetti possono contribuire alla validazione hardware della realizzazione finale del progetto usando un apparecchio di test di rete. In più, SDNet genererà i contenuti corrispondenti per le tabelle di conversione dell’unità di ricerca. Questa capacità di verifica e di validazione riduce ampiamente il tempo di progettazione ed elimina le iterazioni fra gli architetti di sistema e gli ingegneri che si occupano dell’hardware di rete, consentendo ai gruppi di progettisti di introdurre sul mercato prodotti altamente differenziati in tempi più rapidi.

Un livello di controllo profondo

Gordon Brebner, ingegnere esperto presso Xilinx, ha spiegato che il compilatore genera automaticamente le operazioni firmware su misura e le loro codifiche binarie per ciascun singolo componente all’interno dell’architettura. “Questo fornisce agli architetti un livello di controllo profondo sull’elaborazione.” SDNet è provvisto di un’utilità che mantiene traccia dei dettagli operativi e di archiviazione dei dettagli dell’architettura generata e del suo firmware. Quando gli utenti fanno ripartire il compilatore con una descrizione aggiornata del flusso SDNet in ingresso, quest’ultimo determina se il cambiamento possa essere supportato semplicemente con un aggiornamento del firmware (senza la generazione di nuovo hardware), o se sia necessaria la rigenerazione dell’hardware (e del firmware). In gran parte dei casi, gli aggiornamenti su scala intermedia, come l’aggiunta o la sottrazione di un protocollo che gestirà la scheda di linea, possono essere effettuati solo con aggiornamenti del firmware. “La connessione profonda fra il firmware e l’architettura, che sono entrambe generate dal compilatore SDNet, implica che gli utenti possano compiere aggiornamenti senza scossoni, nel corso dei quali il firmware viene modificato e posto in servizio senza alterare il flusso dei pacchetti,” dichiara Brebner. “In questo modo, le società possono effettuare aggiornamenti significativi dei servizi senza alcuna interruzione del servizio. Questo sviluppo rivoluzionario è ottenuto grazie alla natura unica della tecnologia e al suo abbinamento con le specifiche ad alto livello dei dispositivi interamente programmabili di Xilinx. “La capacità del protocollo SDNet di generare funzioni di elaborazione a livello di percorso dati che supportano senza problemi aggiornamenti in corso d’opera, è davvero unica”, afferma Possley. “Gli operatori di rete possono aggiornare la scheda di linea con nuove funzionalità o capacità, usando un controllore software attraverso API standard di tipo SDNet. Essi possono far girare il software di aggiornamento su un processore dedicato sintetizzabile su silicio o su un processore esterno.” Naturalmente, se essi realizzano il progetto su un SoC interamente programmabile Zynq-7000 di Xilinx, aggiunge Possley, essi possono far girare il software su un processore ARM. “Il protocollo SDNet offre la piena programmabilità hardware sotto il controllo del software, che è il motivo per cui chiamiamo tutto questo “reti definite via software”, ha spiegato Possley.

Pubblica i tuoi commenti