Cloud, edge o Fog computing?

I moderni paradigmi informatici come il cloud, il fog e l’edge computing svolgono un ruolo fondamentale in molti settori. Scopriamo quali sono i limiti, le differenze e le combinazioni per sfruttare al meglio i benefici nelle applicazioni industriali.

Il numero di applicazioni industriali che utilizzano la combinazione di cloud, fog ed edge computing è in aumento negli ultimi decenni. Alcune di queste applicazioni sono implementate con l’aiuto della tecnologia IoT, utilizzando reti di sensori wireless, mentre altre applicazioni sono sviluppate con combinazioni dei nuovi paradigmi informatici: ad esempio, cloud e fog, cloud ed edge, fog ed edge, o cloud-fog-edge e IoT.

L’edge computing sta acquisendo notevole importanza, soprattutto dopo l’avvento del 5G. cloud Cloud, edge o Fog computing? 1 2
L’edge computing sta acquisendo notevole importanza, soprattutto dopo l’avvento del 5G.

Definizioni principali e caratteristiche tecnologiche

Il termine “cloud computing” è stato utilizzato per la prima volta da Google e Amazon nel 2006. Più recentemente, il cloud è stato definito come un paradigma informatico per fornire servizi virtualizzati, raggruppati, condivisi che possano essere forniti e rilasciati rapidamente con il minimo sforzo di gestione. Il “Fog computing”, termine coniato da Cisco, è una piattaforma altamente virtualizzata che fornisce servizi di elaborazione, storage e networking tra i dispositivi finali e i tradizionali data center di cloud computing, in genere, ma non esclusivamente, situati ai margini della rete. Il Fog computing è un concetto essenziale nell’IoT, in quanto riduce l’onere dell’elaborazione nel cloud computing, portando l’intelligence e l’elaborazione più vicino a dove i dati vengono creati e trasmessi ad altre fonti. Pertanto, la domanda di calcolo dell’utente viene soddisfatta in prossimità piuttosto che eseguirla nel cloud a distanza. Inoltre, il Fog computing viene introdotto principalmente per le applicazioni che necessitano di elaborazione in tempo reale con bassa latenza. L’edge computing è un’area emergente in cui l’elaborazione dei dati avviene in prossimità di dispositivi mobili o sensori. È stato proposto quindi di migliorare le prestazioni e superare i problemi del cloud, fornendo così capacità di elaborazione e archiviazione dei dati ai dispositivi finali in locale. 

L’edge computing si riferisce alle tecnologie abilitanti che consentono di eseguire il calcolo ai margini della rete, sui dati a valle per conto dei servizi cloud, e sui dati a monte per conto dei servizi IoT. L’edge computing sta acquisendo una notevole importanza con nuovi casi d’uso, soprattutto dopo l’introduzione del 5G. Gli impianti industriali sono un ambiente naturale per l’edge computing, che trova nei sistemi SCADA un esempio molto conosciuto.

Applicazioni: le differenze fra edge computing e cloud

Fino a poco tempo fa, il cloud computing era considerato l’approccio tradizionale per soddisfare i requisiti dell’Internet of Things. Consente l’accesso a un insieme condiviso di risorse IT (come reti, server, supporti di archiviazione, applicazioni e servizi) con un’interazione minima tra il centro di gestione e il fornitore di servizi. Tuttavia, l’utilizzo del cloud computing come server centralizzato, generalmente geograficamente distante, aumenta la frequenza delle comunicazioni tra i dispositivi periferici utilizzati dagli utenti (tablet, computer, braccialetti o smartphone) diventando un limite per le applicazioni che richiedono una risposta in tempo reale. Il cosiddetto “edge computing”, diventato molto popolare con l’avvento di Industry 4.0, è un concetto di calcolo distribuito che avvicina il calcolo stesso e l’archiviazione dei dati a dove sono necessari. Ciò riduce al minimo la necessità di comunicazioni a lunga distanza tra client e server, migliorando la latenza (quindi le prestazioni della rete) e risparmiando larghezza di banda.

In particolare, elaborando i dati più vicino alla fonte e riducendo la distanza fisica che deve percorrere, l’edge computing (o elaborazione ai bordi) ottimizza i dispositivi Internet (IoT) e le applicazioni web. In sostanza, è una rete di micro data center che elaborano o archiviano dati critici a livello locale in un’area molto limitata. Le caratteristiche distintive dell’edge computing rispetto al cloud sono la densa distribuzione geografica, il supporto alla mobilità, la consapevolezza della posizione, la prossimità, la bassa latenza, la consapevolezza del contesto e l’eterogeneità.

L’edge computing e l’IoT: un esempio concreto

Per i dispositivi IoT, il “bordo della rete” è il punto in cui il dispositivo, o la rete locale che contiene il dispositivo, comunica con Internet. Il limite è un po’ sfocato: ad esempio, il computer di un utente, o il processore all’interno di una telecamera IoT, può essere considerato il limite della rete. Ma anche il router, l’ISP o il server perimetrale locale dell’utente può rappresentare il limite. In ogni caso, l’edge della rete è geograficamente vicino al dispositivo, a differenza dei server tradizionali, che possono essere molto lontani dai dispositivi con cui comunicano. Facciamo un esempio, consideriamo un edificio protetto da telecamere IoT ad alta definizione. Di solito si tratta di telecamere “stupide” che trasmettono continuamente un segnale video non elaborato a un server cloud. Sul server cloud, il segnale video di tutte le telecamere viene filtrato da un’applicazione di rilevamento del movimento per garantire che solo le parti contenenti attività vengano salvate nel database del server. Ciò vuol dire che c’è un’attività costante e significativa sull’infrastruttura Internet dell’edificio, poiché l’elevato volume di riprese video trasferite consuma una larghezza di banda importante. Inoltre, c’è un carico molto pesante sul server che deve elaborare le riprese video da tutte le telecamere contemporaneamente. Immaginiamo ora che i calcoli eseguiti dai sensori di movimento vengano spostati al limite della rete. 

Se ogni telecamera utilizzasse il proprio processore interno per eseguire l’applicazione di rilevamento del movimento, e inviare i clip al server in base alle esigenze, l’utilizzo della larghezza di banda sarebbe notevolmente ridotto, poiché molte delle riprese non verrebbero più trasmesse. Inoltre, il server dovrebbe memorizzare solo clip importanti, in modo da poter comunicare con un numero maggiore di telecamere senza sovraccaricarsi.