The FLOTO project, an ambitious NSF-funded initiative to advance broadband research through large-scale, real-world data collection, is a collaborative effort between the Internet Equity Initiative (IEI) and the Nimbus Group at the University of Chicago. We aim to deploy approximately a thousand edge devices across mostly urban areas in the United States. These devices, equipped with broadband diagnostic tests, serve as our eyes and ears on the ground, collecting valuable data on access network performance and development.
A key application of the FLOTO project is Netrics, a system originally developed under the BISmark project and now part of the IEI. Netrics, when deployed on a Raspberry Pi connected to a network, measures various aspects of internet performance, such as speed, latency, and packet loss. By deploying Netrics on FLOTO infrastructure, we can gather granular, real-time data on internet performance directly from users’ homes.
The data we collect informs our understanding of internet performance and equity, helping us identify areas where the internet is slow or unreliable. This information is crucial for informing policy decisions, improving internet infrastructure, and ensuring everyone can access fast, reliable internet.
We invite you to explore our website to learn more about the FLOTO project. Together, we can improve our understanding of the infrastructure that connects us all.
How does FLOTO work?
Consider the internet as a system of water pipes, and the data as the water flowing through them. Just like we need to monitor water pressure, flow rate, and pipe conditions to ensure a reliable water supply, we need similar information about our “internet pipes” to improve our internet access. This is where the FLOTO project and Netrics come in. They’re like water pressure monitors for the internet.
Netrics uses small, inexpensive computers (Raspberry Pi devices) to monitor the “pressure” and “flow” of data in our internet pipes. These devices are set up in homes and offices, and they send and receive data over the internet to measure how fast and reliable the internet connection is. It’s like having a water pressure gauge in your living room, constantly checking the conditions of your “internet pipes”.
The FLOTO project takes this idea further. It plans to install thousands of these “pressure gauges” in homes, offices, and university campuses across the city of Chicago. This will give us a much more detailed picture of the conditions in our “internet pipes” across the whole city. By collecting this data, the FLOTO project and Netrics can help us understand where the internet is slow or unreliable, and why these problems occur. This information can then be used to improve our “internet pipes”, ensuring everyone has fast, reliable internet access.
Just as a water pressure monitor helps improve our water supply, the FLOTO project and Netrics are helping to improve our internet. And that’s something that benefits all of us, whether we’re sending an email, streaming a movie, or video calling with friends.
Resources
Foundational Paper: Discovery Testbed: an Observational Instrument for Broadband Research
Software:
- FLOTO Dashboard – The dashboard and API for the FLOTO project.
- FLOTO Data Uploader (FLOTO Application) – This is the source to a FLOTO service that will automatically upload FLOTO data to a configurable remote source. It does this by watching a directory for changes, and then using rclone to sync the data.
- Netrics Measurement (FLOTO Application) – The network measurements execution framework. Netrics streamlines the development, debugging, distribution and periodic execution of tasks – specifically supporting the execution of computer network measurements. This software is both a framework and a bundle: Netrics is distributed with built-in, research-backed measurements, and the installed software may be trivially configured and extended.
Acknowledging and Citing FLOTO:
An acknowledgement of support from the FLOTO project and the National Science Foundation should appear in any publication of material, whether copyrighted or not, that describes work which benefited from access to FLOTO cyberinfrastructure resources. The suggested acknowledgement is as follows: “Results presented in this paper were obtained using the FLOTO instrument supported by the National Science Foundation”.
Published material should also cite the FLOTO paper, which makes it much easier for us to find the specific instances of research produced using FLOTO, and understand better how the instrument is used to support specific experiments. The best reference for FLOTO is:
Kate Keahey, Nick Feamster, Guilherme Martins, Mark Powers, Marc Richardson, Alexis Schrubbe, Michael Sherman. “Discovery Testbed: An Observational Instrument for Broadband Research.” In 2023 IEEE 19th International Conference on e-Science (e-Science). IEEE. Oct. 2023.
BibTex entry:
@incollection{keahey2023floto, title={Discovery Testbed: An Observational Instrument for Broadband Research}, author={Kate Keahey and Nick Feamster and Guilherme Martins and Mark Powers and Marc Richardson and Alexis Schrubbe and Michael Sherman}, booktitle={2023 IEEE 19th International Conference on e-Science (e-Science)}, publisher={IEEE}, month={October}, year={2023} }
Beyond FLOTO
FLOTO is emerging as a powerful tool for multi-sensor data collection and analysis, opening new avenues for scientific exploration and innovation beyond broadband research. We have adapted FLOTO to support the use of peripheral sensors to support emergent applications, including edge computer vision, air quality monitoring, and precision agriculture.
FLOTO supports any Raspberry Pi-compatible peripheral through Linux dev sockets, facilitating the use of environmental sensors, cameras, and more. FLOTO’s device management dashboard simplifies peripheral installation and configuration by automatically detecting connected peripherals and requiring device owners to provide essential metadata and hardware configuration details. This enables developers to access comprehensive documentation and write applications tailored to specific peripherals. When deployed, the application accesses the necessary Linux sockets for data collection, and a customizable data uploader container allows for seamless data upload to cloud storage, showcasing FLOTO’s ability to bridge the gap between device owners and application developers for innovative IoT solutions.
See our Device Operator documentation to learn more about configuring peripherals on FLOTO devices.