L’Internet delle cose (IoT) ha portato ad un’esplosione di dispositivi connessi e alla generazione di enormi quantità di dati. Per gestirli in modo efficiente, sono emerse diverse soluzioni. Il fog computing rappresenta una soluzione intermedia tra l’edge computing e il cloud computing, consentendo di elaborare i dati in loco, sui nodi fog, anziché inviarli al cloud. Esploriamone le caratteristiche.
Cos’è il fog computing?
Il fog computing è una forma di calcolo distribuito che sposta l’elaborazione e l’archiviazione dei dati verso la periferia della rete, in prossimità di molti dispositivi IoT. Ciò riduce la necessità di affidarsi al cloud per le attività ad alta intensità di risorse, migliorando le prestazioni e riducendo la latenza.
Il mist computing, invece, spinge il concetto di fog computing ancora più avanti, portando il calcolo e l’archiviazione dei dati ancor più vicino all’edge. Ciò è spesso realizzato attraverso l’uso di dispositivi come i server di mist computing, che sono server a bassa potenza distribuiti in grande numero.
Utilizzi del fog computing
Ci sono molte ragioni per cui il fog computing viene adottato:
- Miglioramento della latenza e delle prestazioni: poiché i nodi fog sono spesso distribuiti alla periferia della rete, più vicini ai dispositivi IoT stessi, possono ridurre notevolmente i tempi di elaborazione e migliorare le prestazioni delle applicazioni che richiedono bassa latenza.
- Miglioramento del processo decisionale: il fog computing può aiutare a migliorare il processo decisionale, poiché consente la raccolta e l’analisi dei dati in tempo reale dai dispositivi IoT.
- Riduzione dei costi: il fog computing può anche aiutare a ridurre i costi associati all’archiviazione e all’analisi dei dati. Ciò perché, spostando il calcolo e l’archiviazione dei dati verso la periferia della rete, si riduce la quantità di dati che devono essere trasmessi a una posizione centrale per l’elaborazione.
Tipologie di fog computing
Il fog computing rappresenta una tecnologia che estende il cloud computing e i suoi servizi ai margini della rete aziendale, permettendo di spostare dati, applicazioni e altre risorse più vicino o direttamente presso i consumatori finali.
Esistono quattro principali tipologie di fog computing, tra cui:
- Il fog computing a livello dispositivo viene eseguito su hardware a bassa potenza, come sensori, switch, router e altri dispositivi. Può essere utilizzato per raccogliere dati da questi dispositivi e inviarli al cloud per l’analisi.
- Il fog computing a livello edge viene eseguito su server o appliance situati ai margini di una rete. Questi dispositivi possono essere utilizzati per elaborare i dati prima che vengano inviati al cloud.
- Il fog computing a livello di gateway viene eseguito su dispositivi che fungono da gateway tra l’edge e il cloud. Questi dispositivi possono essere utilizzati per gestire il traffico e garantire che vengano inviati al cloud solo i dati rilevanti.
- Il fog computing a livello cloud viene eseguito su server o appliance situati all’interno del cloud. Questi dispositivi possono essere utilizzati per elaborare i dati prima che vengano inviati agli utenti finali.
Utilizzo del fog computing
Il fog computing offre numerose opportunità di applicazione, tra cui:
- Auto connesse: la raccolta e l’elaborazione dei dati provenienti dai sensori in tempo reale consente di implementare funzionalità come la guida autonoma e l’infotainment.
- Città intelligenti: il monitoraggio dei flussi di traffico, la gestione dei trasporti pubblici e l’ottimizzazione dell’uso dell’energia sono solo alcuni dei possibili utilizzi.
- IoT industriale: l’efficienza e la sicurezza nelle fabbriche, centrali elettriche, miniere e altre infrastrutture industriali, possono essere notevolmente migliorate grazie all’elaborazione dei dati ai margini della rete.
- Salute connessa: il supporto al monitoraggio remoto dei pazienti, alla telemedicina e ad altre applicazioni sanitarie rappresenta un’importante area di sviluppo.
- AR/VR: la tecnologia del fog computing permette di offrire esperienze di realtà aumentata e virtuale di alta qualità con bassa latenza.
L’elaborazione dei dati ai margini della rete può migliorare le prestazioni e ridurre i costi in molte applicazioni. Ad esempio, l’analisi in tempo reale dei dati generati dalle auto connesse consente di implementare funzionalità come la guida autonoma.
Il fog computing rappresenta una soluzione ideale per applicazioni che richiedono una risposta in tempo reale, come i sistemi di controllo industriale, la videosorveglianza o i veicoli autonomi. Inoltre, può essere utilizzato per scaricare attività ad alta intensità di calcolo dai server centralizzati o per fornire backup e ridondanza in caso di guasti di rete.
Gli elementi costituenti
Le principali caratteristiche del fog computing includono:
- Dispositivi perimetrali: sensori, PLC (controllori logici programmabili) e router gateway situati ai margini della rete, più vicini all’origine dei dati.
- Elaborazione dei dati: i dati vengono elaborati localmente sui dispositivi periferici, evitando di inviarli a una posizione centrale per l’elaborazione. Ciò migliora le prestazioni e riduce la latenza.
- Archiviazione dei dati: i dati possono essere archiviati localmente sui dispositivi periferici, migliorando la sicurezza, la privacy e riducendo la latenza.
- Connettività: il fog computing richiede una connessione ad alta velocità tra i dispositivi periferici e il resto della rete, che può essere ottenuta attraverso connettività cablata o wireless.
I benefici per l’IoT
L’Internet of Things (IoT) è un sistema di dispositivi, sensori e software interconnessi che condividono dati e informazioni. L’efficacia dell’IoT risiede nella sua capacità di raccogliere e analizzare grandi quantità di dati da fonti diverse, migliorando così l’efficienza, ottimizzando le operazioni e supportando decisioni migliori.
Il fog computing è un modello di elaborazione decentralizzata che porta l’elaborazione e l’archiviazione dei dati ai margini della rete nell’ambito dell’IoT. In altre parole, il fog computing sposta la potenza di elaborazione e archiviazione dei dati dalle server farm centralizzate alle reti locali in cui si trovano i dispositivi IoT.
Vantaggi e svantaggi
Il modello di fog computing offre diversi vantaggi, tra cui la riduzione della latenza, il miglioramento della sicurezza e della privacy, e la maggiore scalabilità. Grazie alla sua architettura decentralizzata, l’elaborazione dei dati può avvenire in prossimità della periferia della rete, migliorando così le prestazioni. Inoltre, mantenere i dati e le applicazioni più vicini all’utente può contribuire a una maggiore sicurezza e privacy dei dati. Infine, la scalabilità del sistema può essere migliorata grazie alla possibilità di aggiungere risorse ai margini della rete.
Tuttavia, ci sono anche alcuni svantaggi nell’utilizzo del fog computing. In primo luogo, le risorse disponibili possono essere limitate poiché il sistema si basa su dispositivi distribuiti. Ciò potrebbe influire sulle prestazioni e sulla capacità di gestire grandi quantità di dati. Inoltre, l’architettura decentralizzata del fog computing può essere complessa da implementare e gestire. Infine, poiché il fog computing è ancora una tecnologia relativamente nuova, potrebbe esserci una copertura limitata in termini di dispositivi e posizioni che lo supportano.
Il paragone con l’edge computing
Il modello di calcolo distribuito noto come edge computing elabora dati e applicazioni vicino all’origine dati, ai margini della rete. In contrasto con il tradizionale modello centralizzato di cloud computing, in cui i dati e le applicazioni sono archiviati in una posizione centrale e accessibili tramite la rete. La differenza principale tra edge e fog computing è che l’edge computing avvicina il calcolo e l’archiviazione dei dati ai dispositivi ai margini della rete, senza estendere i servizi cloud e la connettività. Al contrario, il fog computing estende tali servizi ai dispositivi ai margini della rete.
Esempi pratici
Per fornire un’idea concreta, elenchiamo alcune piattaforme di fog computing.
- Cisco IOx: è una piattaforma di fog computing basata su Cisco Industrial Router, progettata per consentire l’elaborazione dei dati ai margini della rete, vicino ai dispositivi IoT.
- Microsoft Azure IoT Edge: è una piattaforma di fog computing che estende la piattaforma Azure Cloud ai margini della rete, consentendo l’elaborazione dei dati e l’esecuzione di applicazioni ai margini della rete.
- Amazon Web Services Greengrass: è una piattaforma di fog computing di Amazon Web Services che estende i servizi cloud ai dispositivi ai margini della rete. Consente di eseguire codice AWS Lambda, ovvero codice serverless, sui dispositivi IoT.
- FogHorn Lightning: è una piattaforma di fog computing basata su container, progettata per eseguire l’elaborazione dei dati ai margini della rete, vicino ai dispositivi IoT. È in grado di eseguire l’elaborazione dei dati in tempo reale e di fornire analisi predittive.
- Google Cloud IoT Edge: è una piattaforma di fog computing di Google Cloud che consente di eseguire l’elaborazione dei dati e l’esecuzione di applicazioni ai margini della rete. Utilizza Kubernetes per la gestione dei container e TensorFlow per l’elaborazione dei dati e l’apprendimento automatico.
Il fog computing si presenta come una soluzione promettente per gestire l’enorme quantità di dati generati dalle applicazioni IoT e dalla crescente mobilità degli utenti. La sua architettura distribuita permette di ottenere una maggiore efficienza energetica e di migliorare la latenza dei servizi, garantendo al contempo una maggiore sicurezza e privacy dei dati. Tuttavia, rimangono ancora alcune sfide da affrontare, come la necessità di standardizzare le interfacce tra i nodi fog e di sviluppare nuovi algoritmi di gestione delle risorse. In ogni caso, il fog computing rappresenta un’importante evoluzione dell’edge computing e del cloud computing, destinata a giocare un ruolo sempre più centrale nell’era digitale in cui viviamo.