Sfida alla virtualizzazione

PROGETTAZIONE –

Proviene da Wind River una risposta alle nuove sfida tecnologiche dell’industria dell’informazione e della comunicazione, basata su una soluzione di virtualizzazione embedded e real-time che utilizza un kernel di virtualizzazione open source.

L'esplosione del traffico su rete sta creando una domanda di servizi e funzionalità senza precedenti, che solo dispositivi e sistemi altamente flessibili potranno soddisfare, anche in considerazione della continua variabilità dei requisiti. L'interoperabilità e la definizione software del networking (SDN) hanno portato a un modello di sviluppo del sistema di rete che porta a disaccoppiare la funzionalità dall'hardware attraverso l'astrazione. Il principale risultato di questo approccio è che il carico di lavoro del software non dipende strettamente da una specifica piattaforma hardware. Il risultato è che il time-to-market si riduce e i costi di offerta dei servizi da parte dei provider di rete diventano sempre più convenienti.
L'industria delle telecomunicazioni richiede dunque nuove tecnologie per nuovi servizi e soprattutto per poter aumentare i profitti, sia per utente, sia per dispositivo utilizzato. Questo implica un notevole aumento di intelligenza nella rete e allo stesso tempo un aumento anche della complessità, mantenendo i costi bassi e una elevata scalablità del sistema, oltre a prestazioni elevate. La “virtualizzazione” è la risposta che l'industria della information technology sta cercando di dare alla crescente domanda di mercato proveniente dalle telecomunicazioni e dal mondo della comunicazione. La virtualizzazione sta infatti diventando una delle più importanti innovazioni tecnologiche dell'IT per ridurre il gap tecnologico che si è creato tra le esigenze applicative e la tecnologia hardware e software attualmente disponibile.

L'Open Virtualization Profile

L'Open Virtualization Profile di Wind River è una risposta a questa sfida tecnologica basata su una soluzione di virtualizzazione embedded e real-time che utilizza un kernel di virtualizzazione open source. Questa soluzione completamente integrata e ottimizzata consente a molte applicazioni e funzionalità di essere eseguite su sistemi operativi dedicati e hardware embedded e allo stesso tempo di consentire la scalabilità del sistema mantenendo bassi i costi. Data la natura critica delle prestazioni, l'Open Virtualization Profile si caratterizza per: prestazioni real-time del kernel; prestazioni near-native application; ultra-low latency virtualization. OVP è stato sviluppato in modo da ottenere una latenza estremamente ridotta, prestazioni deterministiche e in generale per essere applicabile ai sistemi embedded della prossima generazione, anche grazie alla sua marcata caratterizzazione open source:

• Basato sul Yocto Project Linux (collaborazione open source per rendere disponibili template, strumenti e metodi per creare sistemi custom basati su Linux svincolata dall'architettura hardware)

• Minima latenza nella risposta alle interruzioni per garantire le prestazioni real-time

• Virtual Machine basata su kernel
• OpenStacIC (open source cloud computing platform)
• OpenFlow (interfacce di comunicazione tra i livelli di controllo e di forwarding)

• OpenvSvitch (multiplayer virtual switch)

• OpenDaylight (open source frame work per software defined network (SDN) platform.
 
Raggiungere le prestazioni native

La principale peculiarità dei sistemi proprietari è quella di garantire le prestazioni più elevate possibile dall'hardware target. Il costo di questa peculiarità è la natura chiusa del sistema e la stretta dipendenza dalla piattaforma hardware di riferimento, quindi una bassissima capacità di generalizzazione. Avvicinarsi alle prestazioni native (near-real-time performance) della piattaforma hardware, indipendentemente dalla stessa, con un approccio di virtualizzazione (SDN ed NFV) è comunque possibile se vengono ottenuti determinati risultati. Prima di tutto è necessario minimizzare la latenza delle interruzioni e i sovraccarichi associati alla virtualizzazione facendo riferimento server industriali standard. La principale causa di caduta delle prestazioni è legata alle operazioni di uscita e rientro nella Vm (Virtual machine), operazioni che occorrono quando il Vmm (Virtual machine monitor) deve servire una interruzione o gestire un evento speciale. Queste transizioni costano molto in termini di operazioni (quindi di cicli macchina) perché implicano il salvataggio del contesto in uscita dalla VM e il conseguente ripristino al rientro nella VM. La VM/host entra ed esce in conseguenza di interruzioni esterne. In queste situazioni il processo guest viene eseguito fino a quando non arriva una interruzione esterna. Di conseguenza ci sono fino ad otto entrate e uscite prima the il processo guest sia abilitato a riprendersi dallo stato di stallo. Questa condizione è particolarmente penalizzante quando si tratta di applicazioni con I/O intensivo come per le base station che generano centinaia ed anche migliaia di interruzioni al secondo. In questi casi il degrado delle prestazioni diventa inaccettabile e non tollerabile, oltre a non essere più garantita la latenza minima e il determinismo. Il lavoro congiunto di Intel con Wind River ha portato a ridurre i tempi di latenza delle interruzioni, comprimendoli fino a meno di 20 microsecondi, cioè prestazioni tipiche delle applicazioni non virtualizzate dedicate e proprietarie. I due hanno creato le condizioni perché la Virtualization Technology (VT di Intel) potesse lavorare congiuntamente per minimizzare il sovraccarico prodotto dalle interruzioni.

Meccanismi software

Alcuni dei meccanismi software implementati in Open Virtualization Profile nella parte alta del Virtualization Technology di Intel comprendono:

• Guest Isolation: guest ad alta priorità con isolamento tale da consentire a questo di stare in esecuzione senza poter essere interrotto e di avere accesso preferenziale alla piattaforma hardware (Cpu, memoria, dispositivi di I/O, ecc.).

• Virtual Intrerrupt Delivery: Virtualization Profile consente alla Vmm di forzare una interruzione in guest al posto di una interruzione esterna, riducendo in tal modo il numero di VM da tre a una sola.

• Core Pinning: viene eliminata la condizione di blocco di dati accessibili in modifica da più guest (il blocco porta un degrado delle prestazioni anche superiore al 20% in quanto elimina i vantaggi del processing simultaneo).

• NUMA Awareness: uso di meccanismi standard Linux per controllare e presentare la topologia di accesso non uniforme alla memoria (Numa) visibile dai guest.
• Intel Virtualization Technology (Intel VT) per IA-32, Intel 64 e Intel Architecture (Intel VT-x): Open Virtualization Technology sfrutta la capacità di Intel VT di esegure in hardware varie operazioni di virtualizzazione, riducendo in tal modo il sovraccarico e il footprint del software di virtualizzazione
.

Pubblica i tuoi commenti