18/07/2019 -
Internet, oggi, è uno strumento sempre più diffuso ed utilizzato da miliardi di utenti. La rapida evoluzione della tecnologia, e il continuo progresso che interessa particolarmente il mondo dell'informatica e delle comunicazioni, hanno fatto - della rete globale - un mezzo necessario per lo svolgersi di molte attività ordinarie: email, messaggistica, telefonate, pagamenti, videosorveglianza sono solo alcune delle operazioni che, quotidianamente, sfruttano l'accesso ad Internet.
La sua distribuzione e la vasta infrastruttura che ne garantisce l'utilizzabilità da parte di utenti dislocati in tutto il mondo è senza dubbio un'opera unica, che non ha precedenti per dimensioni e complessità. Si tratta di un sistema perlopiù efficiente e robusto, ma soggetto alle vulnerabilità di qualsiasi impianto. Garantire un accesso ad Internet in situazioni di emergenza, infatti, potrebbe risultare difficoltoso in seguito all'interruzione di linee di trasmissione dovuta a calamità naturali o incidenti.
Analogamente, vi sono ancora parecchie zone in cui una connessione ad Internet non è presente con copertura sufficiente; anche in questi luoghi, in caso di necessità, garantire una copertura potrebbe non essere agevole. L'idea considerata per questo progetto consiste nell'utilizzo di algoritmi di mesh-networking al fine di realizzare reti per situazioni come quelle sopra descritte.
Le mesh-network (spesso abbreviate in "mesh-net") sono reti che - tra le varie e numerose topologie realizzabili - si caratterizzano per funzionalità di auto-configurazione e ottimizzazione. Una rete informatica può di fatto essere strutturata in molti modi differenti, con schemi di connessione tra i vari nodi (detti, appunto, "topologie") anche fortemente diversi tra loro. Se, tradizionalmente, il grafo della topologia è una caratteristica di progetto che permane costantemente nell'esercizio della rete, le mesh-network introducono a riguardo un concetto nuovo e di grandi potenzialità. Esse sono in grado di stabilire nuove connessioni tra i nodi che le compongono o di interromperne altre, al fine di mutare continuativamente la topologia adattandola ai requisiti dello scenario in cui operano.
Il comportamento dinamico delle mesh-network non si limita ad ottimizzare le prestazioni realizzando sempre topologie prestanti, ma contribuisce fortemente alla facilità di installazione. Una rete di questo genere non richiede grandi operazioni di configurazione iniziale: non è necessario decidere quali router serviranno quali utenti, né come i vari dispositivi dovranno connettersi tra loro. Si può dire, semplificando, che la rete è in grado di avviarsi e svilupparsi autonomamente.
Allo stesso modo, la dinamicità e la predisposizione ai cambiamenti di una mesh-network, la rendono efficiente in caso di guasti o interruzioni di collegamenti: essa - grazie alla sua capacità di riconfigurazione e riorganizzazione della topologia - è in grado di far fronte ad eventi di questo tipo reagendo in tempi utili e ripristinando - limitatamente a quanto reso possibile dalla presenza fisica di dispositivi nelle aree interessate - la corretta copertura di rete.
Tra le tante soluzioni disponibili, si è individuato un software di mesh-networking, chiamato LibreMesh. Si tratta di un progetto open source italiano, il cui scopo è quello di fornire firmware per trasformare dispositivi di rete ordinari in nodi di una mesh-network. Sono state svolte numerose prove su una rete sviluppata con LibreMesh, allo scopo di verificarne il corretto funzionamento, osservarne il comportamento studiando le strategie e le decisioni che la rete prende in autonomia, e valutando quantitativamente le prestazioni che questa riesce a fornire agli utenti.
Per un corretto e veritiero svolgimento delle prove, si è deciso di procedere, anziché tramite simulazioni con macchine virtuali, installando LibreMesh su dei dispositivi fisici. Sono stati scelti per tale scopo i mini-router di GL.iNet Ar300m. Questi dispositivi si distinguono per dimensioni fisiche molto ridotte, peso esiguo e consumi limitati, pur garantendo funzionalità e prestazioni di livello.
I test svolti con la combinazione di LibreMesh e GL.iNet AR300M hanno interessato al massimo 3 router e 3 host, ed hanno permesso di mettere in luce i vantaggi e i punti di forza della rete mesh, ma anche alcune debolezze. Per la valutazione numerica delle prestazioni è stato impiegato il software iperf3, che ha permesso di osservare - nei diversi scenari realizzati - il comportamento della rete al trasferimento di pacchetti di dati, e di valutare la Bandwidth media fornita in tali processi di trasferimento.
Complessivamente, si è concluso che l'esito delle prove svolte sulla combinazione di hardware e software individuata è positivo. La rete mesh sviluppata si comporta in maniera intelligente ed efficiente, sviluppando topologie ottimizzate sulla base delle caratteristiche dello scenario. Le prestazioni osservate sono altresì soddisfacenti, e delineano un'efficienza dell'algoritmo di mesh-networking conforme a quanto atteso.
Valutati hardware e software, e constatata la loro compatibilità, si è ipotizzato uno scenario che preveda dei droni per il trasporto dei dispositivi di rete, al fine di realizzare una mesh-network adatta a situazioni di emergenza come descritto in apertura. Una rete di questo tipo, infatti, potrebbe - grazie all'utilizzo di velivoli per la realizzazione della copertura di segnale - adattarsi a situazioni di conformazione geografica differente sfruttando la possibilità di movimento dei nodi. Sono state quindi stimate le caratteristiche che una rete di questo genere dovrebbe avere, a partire dalla definizione del numero di droni necessari a coprire una determinata area. Per facilitare ed automatizzare questo calcolo è stato realizzato uno script che permette - inseriti alcuni dati relativi alla situazione che si intende prendere in esame - di simulare la copertura di una zona geografica con dei droni in volo, determinando in primis quanti questi dovrebbero essere. Alcune informazioni aggiuntive relative alle prestazioni - come la posizione ideale del nodo di rete fornito di accesso ad Internet - sono calcolate autonomamente dallo script.
Il tool funziona online, ed è disponibile al seguente link:
StarMesh script
Una comparazione della rete mesh con un'ipotetica rete tradizionale impiegata allo stesso scopo ha confermato che il mesh-networking è la soluzione più indicata per uno scenario simile, e che la sua autonomia nella configurazione è condizione pressoché necessaria per l'applicazione con i droni.
Sono stati successivamente discusse le funzionalità aggiuntive che possono derivare dalla possibilità dei droni di spostarsi liberamente nello spazio, caratteristica insolita per un nodo di rete. Sono state considerate, a riguardo, numerose ipotesi di comportamenti dinamici come scambi di posizioni e sorvolo di aree sovraffollate da parte di droni ausiliari, al fine di determinare un incremento della stabilità della rete e delle sue prestazioni.
Infine è stata avanzata una proposta di progetto. Non si tratta di una progettazione dettagliata e completa, ma di un'idea più concreta e pratica di come le tecnologie testate e gli scenari discussi potrebbero essere uniti per la realizzazione di una mesh-network con i droni. Sono state affrontate alcune problematiche che si incontrerebbero indubbiamente nello sviluppo del progetto, come disservizi legati all'autonomia limitata delle batterie o a condizioni atmosferiche sfavorevoli al volo dei droni. L'analisi di queste eventualità e la proposta di soluzioni è stata affiancata, in conclusione, dall'enumerazione dei requisiti che un drone dovrebbe possedere per essere impiegato nel progetto. Il velivolo DJI m200 è stato scelto come modello per le sue caratteristiche e funzionalità, rendendo possibile un calcolo sommario delle prestazioni attese dalla rete.
Il progetto, sviluppato come tesi per la laurea in Ingegneria dell'informazione e delle comunicazioni sotto la supervisione del prof. Granelli presso l'università di Trento, è descritto e documentato nell'elaborato finale, disponibile al seguente link:
Download tesi PDF
Analogamente, vi sono ancora parecchie zone in cui una connessione ad Internet non è presente con copertura sufficiente; anche in questi luoghi, in caso di necessità, garantire una copertura potrebbe non essere agevole. L'idea considerata per questo progetto consiste nell'utilizzo di algoritmi di mesh-networking al fine di realizzare reti per situazioni come quelle sopra descritte.
Le mesh-network (spesso abbreviate in "mesh-net") sono reti che - tra le varie e numerose topologie realizzabili - si caratterizzano per funzionalità di auto-configurazione e ottimizzazione. Una rete informatica può di fatto essere strutturata in molti modi differenti, con schemi di connessione tra i vari nodi (detti, appunto, "topologie") anche fortemente diversi tra loro. Se, tradizionalmente, il grafo della topologia è una caratteristica di progetto che permane costantemente nell'esercizio della rete, le mesh-network introducono a riguardo un concetto nuovo e di grandi potenzialità. Esse sono in grado di stabilire nuove connessioni tra i nodi che le compongono o di interromperne altre, al fine di mutare continuativamente la topologia adattandola ai requisiti dello scenario in cui operano.
Il comportamento dinamico delle mesh-network non si limita ad ottimizzare le prestazioni realizzando sempre topologie prestanti, ma contribuisce fortemente alla facilità di installazione. Una rete di questo genere non richiede grandi operazioni di configurazione iniziale: non è necessario decidere quali router serviranno quali utenti, né come i vari dispositivi dovranno connettersi tra loro. Si può dire, semplificando, che la rete è in grado di avviarsi e svilupparsi autonomamente.
Allo stesso modo, la dinamicità e la predisposizione ai cambiamenti di una mesh-network, la rendono efficiente in caso di guasti o interruzioni di collegamenti: essa - grazie alla sua capacità di riconfigurazione e riorganizzazione della topologia - è in grado di far fronte ad eventi di questo tipo reagendo in tempi utili e ripristinando - limitatamente a quanto reso possibile dalla presenza fisica di dispositivi nelle aree interessate - la corretta copertura di rete.
Tra le tante soluzioni disponibili, si è individuato un software di mesh-networking, chiamato LibreMesh. Si tratta di un progetto open source italiano, il cui scopo è quello di fornire firmware per trasformare dispositivi di rete ordinari in nodi di una mesh-network. Sono state svolte numerose prove su una rete sviluppata con LibreMesh, allo scopo di verificarne il corretto funzionamento, osservarne il comportamento studiando le strategie e le decisioni che la rete prende in autonomia, e valutando quantitativamente le prestazioni che questa riesce a fornire agli utenti.
Per un corretto e veritiero svolgimento delle prove, si è deciso di procedere, anziché tramite simulazioni con macchine virtuali, installando LibreMesh su dei dispositivi fisici. Sono stati scelti per tale scopo i mini-router di GL.iNet Ar300m. Questi dispositivi si distinguono per dimensioni fisiche molto ridotte, peso esiguo e consumi limitati, pur garantendo funzionalità e prestazioni di livello.
I test svolti con la combinazione di LibreMesh e GL.iNet AR300M hanno interessato al massimo 3 router e 3 host, ed hanno permesso di mettere in luce i vantaggi e i punti di forza della rete mesh, ma anche alcune debolezze. Per la valutazione numerica delle prestazioni è stato impiegato il software iperf3, che ha permesso di osservare - nei diversi scenari realizzati - il comportamento della rete al trasferimento di pacchetti di dati, e di valutare la Bandwidth media fornita in tali processi di trasferimento.
Complessivamente, si è concluso che l'esito delle prove svolte sulla combinazione di hardware e software individuata è positivo. La rete mesh sviluppata si comporta in maniera intelligente ed efficiente, sviluppando topologie ottimizzate sulla base delle caratteristiche dello scenario. Le prestazioni osservate sono altresì soddisfacenti, e delineano un'efficienza dell'algoritmo di mesh-networking conforme a quanto atteso.
Valutati hardware e software, e constatata la loro compatibilità, si è ipotizzato uno scenario che preveda dei droni per il trasporto dei dispositivi di rete, al fine di realizzare una mesh-network adatta a situazioni di emergenza come descritto in apertura. Una rete di questo tipo, infatti, potrebbe - grazie all'utilizzo di velivoli per la realizzazione della copertura di segnale - adattarsi a situazioni di conformazione geografica differente sfruttando la possibilità di movimento dei nodi. Sono state quindi stimate le caratteristiche che una rete di questo genere dovrebbe avere, a partire dalla definizione del numero di droni necessari a coprire una determinata area. Per facilitare ed automatizzare questo calcolo è stato realizzato uno script che permette - inseriti alcuni dati relativi alla situazione che si intende prendere in esame - di simulare la copertura di una zona geografica con dei droni in volo, determinando in primis quanti questi dovrebbero essere. Alcune informazioni aggiuntive relative alle prestazioni - come la posizione ideale del nodo di rete fornito di accesso ad Internet - sono calcolate autonomamente dallo script.
Il tool funziona online, ed è disponibile al seguente link:
Una comparazione della rete mesh con un'ipotetica rete tradizionale impiegata allo stesso scopo ha confermato che il mesh-networking è la soluzione più indicata per uno scenario simile, e che la sua autonomia nella configurazione è condizione pressoché necessaria per l'applicazione con i droni.
Sono stati successivamente discusse le funzionalità aggiuntive che possono derivare dalla possibilità dei droni di spostarsi liberamente nello spazio, caratteristica insolita per un nodo di rete. Sono state considerate, a riguardo, numerose ipotesi di comportamenti dinamici come scambi di posizioni e sorvolo di aree sovraffollate da parte di droni ausiliari, al fine di determinare un incremento della stabilità della rete e delle sue prestazioni.
Infine è stata avanzata una proposta di progetto. Non si tratta di una progettazione dettagliata e completa, ma di un'idea più concreta e pratica di come le tecnologie testate e gli scenari discussi potrebbero essere uniti per la realizzazione di una mesh-network con i droni. Sono state affrontate alcune problematiche che si incontrerebbero indubbiamente nello sviluppo del progetto, come disservizi legati all'autonomia limitata delle batterie o a condizioni atmosferiche sfavorevoli al volo dei droni. L'analisi di queste eventualità e la proposta di soluzioni è stata affiancata, in conclusione, dall'enumerazione dei requisiti che un drone dovrebbe possedere per essere impiegato nel progetto. Il velivolo DJI m200 è stato scelto come modello per le sue caratteristiche e funzionalità, rendendo possibile un calcolo sommario delle prestazioni attese dalla rete.
Il progetto, sviluppato come tesi per la laurea in Ingegneria dell'informazione e delle comunicazioni sotto la supervisione del prof. Granelli presso l'università di Trento, è descritto e documentato nell'elaborato finale, disponibile al seguente link: