Cos'è l'edge computing, perché se ne parla, in cosa differisce dal fog computing e quali sono le sue implementazioni ed applicazioni principali


Nel lessico delle tecnologie emergenti, l’edge computing sta assumendo una posizione sempre più rilevante, grazie ad una architettura IT al tempo stesso innovativa e straordinariamente flessibile, che consente approcci creativi finalizzati a dare forma a tantissime applicazioni, in ambiti di business anche molto differenti tra loro, che spaziano dalla fabbrica 4.0 alla guida autonoma fino alla ormai cosiddetta Industria 5.0.

Nell’immaginario comune, la dichiarata priorità alla distribuzione periferica ha posto molto spesso l’edge computing agli antipodi rispetto al cloud computing, che fa della logica centralizzata il suo principale carattere distintivo. In realtà non esiste, e probabilmente non ha nemmeno ragione di esistere, una linea di demarcazione netta tra queste due dimensioni informatiche, in quanto per permettere il funzionamento di un ecosistema tecnologico è assai frequente il ricorso a configurazioni ibride, in grado di sfruttare i principali punti di forza delle principali architetture computazionali attualmente disponibili.

L’edge computing include diverse tecnologie molto giovani, sui cui versa un enorme interesse, come testimoniato dagli insight dei principali analisti, ma al tempo stesso richiederà nei prossimi anni una crescita sostanziale per tutti i principali elementi che la contraddistinguono, a cominciare dalle connessioni di rete su cui si basa. Partiamo dunque per un rapido viaggio di scoperta all’insegna dell’edge computing, per capire quali sono le sue principali caratteristiche, dove possiamo già oggi vederla all’opera e quali saranno le sue evoluzioni nel prossimo futuro.

Cos’è e come funziona l’edge computing

Secondo quanto riportato su Wikipedia, l’edge computing è un modello di calcolo distribuito nel quale l’elaborazione dei dati avviene il più vicino possibile a dove i dati vengono richiesti. Perché ciò accade? Quali sono le principali esigenze che questa architettura è chiamata a risolvere nelle sue applicazioni?

Per descrivere i concetti fondamentali dell’edge computing è utile sottolineare come sia, tra l’altro, l’architettura IT di riferimento per la Internet of Things nelle sue varie declinazioni applicative, a partire dalla principale ragione del suo successo. I dispositivi informatici, che costituiscono i terminali ai margini della rete, sono sempre più diffusi, economici, potenti e connessi. Pensiamo agli oggetti che utilizziamo quotidianamente, come gli smartphone, le videocamere, i POS e più in generale tutti i device small form factor (SFF) dotati di unità computazionale e connettività di rete, che consente loro di svolgere in locale l’elaborazione dei dati con cui si interfacciano, prima di condividerli con i data center on premise e in cloud per l’archiviazione e la condivisione con quelle applicazioni che non necessitano di un’operatività in tempo reale.

Il principale limite dell’architettura cloud è infatti generato dalla latenza, che vede nella rete internet un collo di bottiglia al momento difficilmente aggirabile. Il modello cloud convenzionale, non è infatti in grado di garantire da remoto una disponibilità di elaborazione capace di supportare le applicazioni real time.

L’approccio cloud to edge, che in un primo momento gli analisti ipotizzavano nella logica di un trasferimento di funzioni oggi si configura sempre più come un’estensione del cloud pubblico centralizzato, con l’obiettivo trovare la miglior soluzione possibile per far dialogare le due architetture, sfruttando i loro principali punti di forza.

Edge computing, cloud computing, IoT
Dal Cloud all’Edge: l’edge computing cresce anche e grazie all’IoT

Un esempio è dato dalle applicazioni di analisi dei dati, ad esempio nell’ambito della manutenzione predittiva dei sistemi industriali. Un sistema di monitoraggio di un impianto, dotato di adeguati sensori, è capace di svolgere in locale una prima analisi computazionale delle informazioni rilevate, per evidenziare eventuali anomalie di stato o funzionamento. Questo avviene “a latenza zero”, sul campo, direttamente in fabbrica. I dati pre-elaborati vengono dunque trasmessi in cloud, dove i data scientist e i responsabili della manutenzione di tutti gli impianti gestiscono il dataset generale, analizzato con sistemi più complessi ed impegnativi a livello computazionale, come il machine learning ed altre tecniche di intelligenza artificiale. L’adozione di un sistema basato sull’edge computing e sull’edge analytics consente quindi essere operativi in tempo reale sull’impianto per anticipare eventuali guasti, ordinando interventi manutentivi o limitando i cicli per scongiurare un totale fermo macchina. Tale workflow consente inoltre di ridurre drasticamente la quantità di dati da inviare in cloud, grazie al lavoro di elaborazione preassolto in maniera capillare su tutta la rete da monitorare.

Connettività e protocolli per l’edge computing

A livello hardware gli SFF Edge comunicano con i sensori e la rete grazie ad unità di calcolo molto diffuse, sempre più miniaturizzate, performanti e a basso consumo, come i chip programmabili ASIC (application-specific-integrated-circuit) e riprogrammabili FPGA (field-programmable-gate-array), oltre ai SoC FPGA, che a loro volta combinano le funzionalità di un FPGA con un CPU (GPU) e RAM sulla stessa scheda. I SoC (sistemi-on-chip) sono ormai il modello più diffuso per le architetture hardware dei sistemi di comunicazione mobile, grazie alla capacità di integrare su un unico circuito stampato (PCB) tutti i principali elementi necessari al funzionamento di un dispositivo informatico, riducendo al minimo sia la latenza tra le comunicazioni dei vari moduli che i consumi generali.

Un ruolo fondamentale per la connettività dell’edge computing risiede nella costruzione dell’architettura di rete ed in particolare dai protocolli utilizzati per le comunicazioni, di natura cablata (wired) e/o remota (wireless). Per quanto riguarda le reti locali, si annoverano una serie di protocolli caratterizzati da una grandissima tradizione, come l’Ethernet, i cui fondamentali risalgono addirittura agli anni ‘70. Alla base del suo funzionamento c’è una scheda di rete contrassegnata da un codice a 48 numeri binari (MAC address) capace di identificare il dispositivo su cui è collocata. Ogni ambito ha inoltre dei protocolli specifici. Nel caso della domotica ritroviamo ad esempio lo standard X10, un protocollo industriale attivo ormai da oltre 40 anni, e le sue derivazioni, come l’UPB (Universal Powerline Bus), più stabile e veloce per le applicazioni smart home. Tra gli altri sistemi per le connessioni cablate ritroviamo il BACnet, INSTEON e KNX.

Per quanto riguarda i protocolli wireless lo scenario è in continua evoluzione, ed in questo caso troviamo una notevole varietà tecnologica, a partire dai celebri Wi-Fi e Bluetooth, nei loro vari standard, che di recente sono stati notevolmente ottimizzati dal punto di vista del consumo energetico, soprattutto grazie alla capacità di attivare la connessione soltanto quando questa si rende effettivamente necessaria. Altri protocolli wireless molto utilizzati in ambito IoT sono lo Zigbee, lo Z-Wave, EnOcean, 6LoWPAN (basato su IPv6 e molto utilizzato nella domotica), mentre il LoRa costituisce una tecnologia più recente, molto interessante per le soluzioni a basso consumo e a lungo raggio, data la sua capacità di coprire fino a 5km nei contesti urbani e 30 km nei contesti rurali.

Progettare la rete di un sistema edge, capace di garantire la connessione di tutti i terminali della rete stessa, è tutt’altro che elementare, in quanto occorre valutare e bilanciare i punti di forza delle varie tecnologie disponibili e combinarle in funzione delle esigenze da soddisfare e del budget a disposizione, oltre a garantire la scalabilità del sistema in favore delle future implementazioni.

In generale i punti di forza delle reti cablate risiedono nella velocità, nella sicurezza, nell’affidabilità e nella semplicità d’uso, a fronte di costi per device mediamente maggiori rispetto ad una rete wireless, che si presenta più facilmente scalabile, indipendente dal posizionamento esatto dei dispositivi connessi e molto meno invasiva nel processo di installazione. Gli attuali sistemi di access point hanno anche ridotto il problema della portata del segnale wireless, naturalmente soggetti a decadimento e molto sensibili agli ostacoli che il segnale stesso incontra lungo il suo tragitto.

A monte di tutto ciò, per il futuro la grande sfida nell’ambito della connettività è rappresentata dalle reti 5G, capaci di aumentare notevolmente la velocità e la banda di trasmissione senza dover ricorrere ad infrastrutture esclusivamente cablate. Questo renderebbe possibili dei modelli distributivi basati sui data center locali, capaci di archiviare ed elaborare una enorme quantità di dati, a bassa latenza, in prossimità dei dispositivi edge. Non è un caso che gli insight dei principali analisti prevedano un notevole incremento dell’edge computing nei prossimi cinque anni, parallelamente alla diffusione delle reti 5G, che sta andando più a rilento di quanto inizialmente preventivato, a causa di costi piuttosto elevati, mancanza di applicazioni dedicate e soprattutto di eccessive aspettative generate da dinamiche speculative di larga portata. È pertanto lecito aspettarsi che i tempi di diffusione delle applicazioni basate sull’edge computing si rivelino anche più lunghi.

Edge vs Fog computing

Spesso confuse, edge computing e cloud computing rappresentano due realtà che possono coesistere, ma si distinguono per un fattore principale. Mentre l’edge computing sfrutta il calcolo e l’elaborazione dei device interconnessi, in una posizione quanto più possibile prossima rispetto alle operazioni sui dati, un modello basato sul fog computing tende a collocare l’elaborazione nei nodi e nei gateway della rete che li connette.

Queste considerazioni valgono soprattutto in linea teorica, in quanto nelle applicazioni pratiche non sussiste l’esigenza di soffermarsi su una reale distinzione tra le due tecnologie computazionali. L’obiettivo comune è dato dal garantire una risposta in tempo reale delle applicazioni, ossia l’adeguata capacità di calcolo con la minor latenza possibile.

Il fog computing opera di base con un layer funzionale in più rispetto all’edge computing puro, ma può contare su nodi di calcolo più potenti, senza dover ricorrere per forza alle risorse allocate in cloud, dove le condizioni di latenza legate alle operazioni risulterebbero oltre modo critiche per le operazioni sul campo.

Edge computing e fog computing
Edge computing e fog computing spesso vengono usati come sinonimi ma ci sono alcune piccole differenze importanti

L’impressione è che una volta che le connessioni di rete diventeranno progressivamente più performanti, sarà possibile un approccio sempre più votato all’ibridazione per modellare in maniera puntuale delle architetture IT capaci di rispondere in maniera capillare alle esigenze delle applicazioni, coinvolgendo non soltanto edge e fog computing, ma anche modelli basati sul cloud distribuito, che attualmente ritrovano troppo spesso un collo di bottiglia nelle infrastrutture di rete.

I vantaggi di utilizzo

Grazie alla sua estrema configurabilità e possibilità di personalizzazione, l’edge computing rappresenta un’architettura capace di supportare ecosistemi applicativi anche molto complessi, a prescindere dalla loro dimensione, avendo quale denominatore comune l’esigenza di capacità computazionale a bassa latenza in prossimità dei dati con cui si interfaccia. I vantaggi derivanti dall’adozione di sistemi basati sull’edge computing sono moltissimi, e potremmo esemplificare una sintesi come segue:

  • Scalabilità: rispetto ai modelli tradizionali, la configurazione agile dei modelli edge consente di essere meno vincolati dalle risorse centralizzate. Espandere un sistema edge è possibile grazie all’aumento dei dispositivi IoT e dei micro data center collocati ai margini della rete. Dal momento che la capacità computazionale per le operazioni in tempo reale è per natura allocata sui dispositivi perimetrali, è possibile demandare le funzioni più gravose in cloud, sfruttando anche la proverbiale scalabilità dei data center nella nuvola. Oltre ad essere facilmente scalabile, un’architettura IT basata sull’edge computing consente di espandere la dotazione con costi mediamente più contenuti rispetto ai modelli distributivi tradizionali o al semplice cloud, in quanto la dotazione di nuovi device perimetrali sarebbe comunque necessaria per poter abilitare le pipeline di lavoro. Questa versatilità si paga naturalmente sul fronte della complessità IT, ma è lecito attendersi che la progressiva diffusione dell’edge computing renda più semplice anche l’implementazione delle architetture stesse.
  • Velocità: facendo di necessità virtù, l’edge computing costituisce la miglior alternativa per ridurre i tempi di latenza delle operazioni, anche in funzione delle applicazioni legate alla mobilità, che sarebbe altrimenti pressoché impossibile connettere in cloud o a data center locali, a prescindere dall’impossibilità di farlo in tempo reale.
  • Sicurezza: prima di configurarsi quale un vantaggio, si prospetta in verità quale un’arma a doppio taglio. Da un lato, l’architettura edge comporta molti nodi e gateway di accesso, che costituiscono potenziali vulnerabilità per gli attacchi provenienti dalla rete. Tuttavia, una consapevole strategia di cybersecurity può facilmente isolare le zone della rete in modo da neutralizzarle automaticamente nel caso in cui vengano compromesse da azioni malevole. I protocolli di sicurezza possono infatti isolare tutti gli elementi che compongono il sistema: dal singolo terminale fino ad interi comparti funzionali interconnessi ad uno o più nodi e/o micro data center. Se un cyberattacco andasse a segno, potrebbe essere facilmente circoscritto, dunque il problema non risiede tanto nell’architettura, quanto nella strategia di utilizzo dei dati presenti nella rete. I dati più sensibili non andranno conservati nei punti più vulnerabili della rete, dove sarà invece possibile gestire quei dati di utilizzo che, anche qualora venissero compromessi, potrebbero essere facilmente ripristinati, o persi senza eccessive conseguenze.
  • Resilienza: la gestione dei dati di un sistema edge non è rilevante soltanto ai fini della sicurezza, ma anche in funzione della continuità di utilizzo. L’edge computing riduce la quantità di dati proveniente dalla rete primaria, riducendo come abbiamo visto in più occasioni la latenza, a tutto vantaggio della velocità operativa. Al tempo stesso, la disponibilità dei dati a livello perimetrale consente di avere una gestione delle informazioni ridondante e meno vincolata dalla disponibilità dei servizi centralizzati. Nel caso in cui un data server in cloud fosse interessato da un down, un sistema basato sull’edge computing potrebbe addirittura non risentirne, in quanto i dati utili per l’utilizzo a breve termine molto probabilmente saranno allocati anche nelle periferie della rete, dove vengono effettivamente svolte le operazioni. Questo garantisce delle pipeline molto flessibili, in cui è sufficiente una sincronia periodica e non continua tra i dati in locale, che possono essere conservati in maniera resiliente su più micro data center, se non addirittura sugli stessi terminali, e i dati in cloud, che possono essere aggiornati con una frequenza più rilassata.

Alcuni esempi applicativi

L’edge computing è sempre più diffuso, in ambiti eterogenei e tra loro molto differenti. Una rassegna completa e circostanziata degli esempi di applicazioni basate sull’edge computing sarebbe dunque improbabile ed anacronistico, a fronte delle nuove implementazioni, che si aggiungono costantemente a quelle ormai consolidate, per quanto questo termine vada intepretato con cautela nel caso delle tecnologie emergenti. L’elenco che segue è caratterizzato da ambiti di adozione particolarmente rilevanti, ma il metodo migliore per contestualizzare l’edge computing riteniamo sia considerarlo quale l’architettura IT di riferimento per le applicazioni Internet of Things e tutte le sue derivazioni. In questa logica, sarà anche più semplice comprenderne gli sviluppi futuri e la sua ibridazione con il cloud computing e i sistemi di connettività che si imporranno sul mercato nei prossimi anni.

  • Industria 4.0: la fabbrica intelligente (smart factory) è il terreno d’azione privilegiato per l’edge computing, chiamato a gestire gli smart device interconnessi con i sensori degli impianti e i sistemi di monitoraggio e controllo della qualità. Siamo nell’ambito della Industrial Internet of Things (IIoT) alla base delle operazioni sul campo, finalizzate alla manutenzione predittiva, all’assistenza in remoto, alle procedure guidate, all’ottimizzazione dei processi di assemblaggio, sia in funzione di una maggior efficienza che di un sensibile incremento della sicurezza generale, per gli impianti e per la salute degli operatori coinvolti.
  • Guida autonoma: un veicolo di ultima generazione può vantare oltre 50 unità computazionali a bordo, per svolgere le varie funzioni digitali previste, che vanno dal pilota automatico fino ai vari sistemi di rilevamento, oltre ad un ricco assortimento di tecnologie orientate alla comunicazione e al multimedia, come il bluetooth per connettere lo smartphone ed abilitare le conversazioni vocali, oltre agli assistenti virtuali e chi più ne ha più ne metta. L’edge computing consente di eseguire e connettere i vari dispositivi, rendendoli efficienti in una logica di operazioni che devono essere svolte necessariamente in locale, come il rilevamento degli ostacoli sul percorso e funzioni che necessitano di dati provenienti da remoto, come l’assistenza sulle condizioni generali del traffico, su cui si basa la scelta degli itinerari di navigazione. I veicoli non sono più soltanto strumenti di trasporto, ma si apprestano a diventare a tutto sesto dei veri spazi dell’abitare, integrando servizi che fanno a loro volta largo uso di applicazioni IoT. L’edge computing rappresenta l’habitat ideale per sviluppare i veicoli del futuro.
  • Transazioni finanziarie: l’edge computing viene utilizzato per applicazioni fintech in vari ambiti applicativi. Un esempio ricorrente è dato dal POS, che deve validare le transazioni eseguite in locale, connettendosi al tempo stesso con i dati presenti nel sistema centrale, che possono essere resi disponibili anche nelle periferie. Oltre a garantire il normale flusso autorizzativo per i pagamenti eseguiti dagli utenti, il POS deve abilitare in tempo reale i sistemi di controllo atti a prevenire le frodi. Queste applicazioni necessitano una rielaborazione in prossimità delle operazioni eseguite, per rilevare e bloccare automaticamente eventuali procedure autonome, sviluppando un report da trasmettere al sistema centrale per eseguire ulteriori verifiche. Per quando semplice a dirsi, tutto ciò sarebbe decisamente complesso a farsi, se non fosse supportato da un’architettura edge computing, capace di consentire il dialogo costante con i micro data center in locale, capaci di svolgere in tempo reale le operazioni richieste dai terminali stessi.
  • Videosorveglianza: costituisce un esempio ricorrente dell’applicazione degli edge analytics, grazie alla capacità delle camere o dei micro data center cui sono connesse di elaborare le immagini per rilevare automaticamente eventuali anomalie e far scattare i protocolli di sicurezza ed emergenza previsti dal sistema. L’edge computing consente anche in questo caso di agire a latenza zero sfruttando la potenza di calcolo disponibile in locale, risparmiando una quantità enorme di banda rispetto ad una pipeline che prevede un’analisi dei dati su un sistema centralizzato, che può essere eventualmente utilizzato soltanto come archivio, per conservare i dati obbligatori, senza gravare sull’operatività in tempo reale dell’intero sistema.
  • Retail: anche in questo caso, si tratta in prevalenza di applicazioni basate su funzioni di edge analytics, capaci di interpretare il comportamento dei consumatori ed abilitare azioni di marketing automatizzato, per inoltrare dei push sugli smartphone o garantire un’esperienza personalizzata ai clienti nei vari touchpoint presenti all’interno del punto vendita. Le customer experience digitali, in particolare quelle basate sulle strategie online-to-offline, generano un continuo scambio di dati relativi alle interazioni dell’utente, che può essere sfruttato in vari modi dai brand, grazie all’utilizzo di chatbot, suggeritori automatici ed altre feature capaci di ottimizzare le conversioni.
  • Telecomunicazioni e Broadcasting: quante volte ci è capitato di connetterci ad internet per seguire una partita il sabato sera? Quante volte ci è capitato di vedere dei rallentamenti, se non addirittura dei blocchi, risolti per così dire grazie ad una riduzione della qualità visiva del segnale trasmesso? Questo accade quando ci sono troppi utenti connessi in relazione alla capacità di banda disponibile per garantire a tutti la visione dell’evento. Il limite è dato dal fatto che, attraverso la rete internet, ci sono tantissime richieste a pochi nodi centralizzati nella rete. Aumentare la banda, sfruttando la scalabilità dei servizi in cloud, è una soluzione possibile, ma non è certamente la più efficace. Le connessioni 5G consentiranno finalmente un sistema di broadcasting basato sull’edge computing, che riconosce i device degli utenti quali terminali edge connessi ad una serie di micro data center in cui è possibile distribuire lo streaming degli eventi da seguire ed il conseguente load balancing in termini di banda verso le singole richieste. I vantaggi sarebbero molteplici, spaziando dalla riduzione generale dei costi IT al drastico miglioramento della qualità del servizio, grazie alla minor latenza, fino alla possibilità di agire in prossimità dei clienti e delle loro interazioni, con la possibilità di offrire servizi personalizzati sulla base delle loro esigenze.
  • Smart Home: insieme alle applicazioni industriali, la domotica intelligente costituisce la forma di adozione più antica dell’IoT, avendo vissuto ormai diverse generazioni, capaci di sfruttare sempre meglio la connettività e le potenzialità dei device coinvolti. Si tratta per lo più di sistemi ibridi, basati su applicazioni cloud ed edge, con cui ci relazioniamo in maniera spesso inconsapevole dal punto di vista tecnologico.
  • Smart City: ragionando su scala urbana, è impossibile non pensare all’edge computing in funzione delle applicazioni della smart city, abilitate da sensori e terminali IoT con cui è possibile acquisire ed elaborare un’enorme quantità di dati, per gestire una serie di servizi essenziali alla cittadinanza: parcheggi intelligenti, gestione dei rifiuti, gestione risorse idriche, rilevamento rumore, qualità dell’aria, livelli del campo elettromagnetico, manutenzione predittiva, monitoraggio strutturale, gestione mobilità, ecc.
  • Monitoraggio Ambientale: in senso più ampio, si applicano i concetti descritti per la smart city, che in questo caso non sono direttamente connessi all’esecuzione di un servizio utile al cittadino, quanto piuttosto ad automatizzare il rilevamento ed il supporto decisionale per le azioni previste. La natura del monitoraggio ambientale è ampia e varia quanto la ricchezza dell’ambiente stesso ed anche in questo caso l’edge computing costituisce un’architettura privilegiata per abilitare i terminali IoT e l’analisi dei dati. Tra i sistemi di monitoraggio ambientale più diffusi ritroviamo quelli relativi alla qualità atmosferica, all’ambiente idrico e alle componenti biologiche degli ecosistemi oggetto di indagine.