Wi-Fi is one of the most popular Internet access methods. Monitoring Wi-Fi networks to ensure their normal operation is essential. WiFiMon (website, paper) is a GÉANT service offering open-source tools for efficient Wi-Fi network performance monitoring. The purpose of WiFiMon is to assist administrators in identifying underperforming segments within their networks and optionally enhance performance, for example, by installing more Access Points (APs).
WiFiMon data sources
WiFiMon combines various data sources, including WiFiMon Software Probes (WSPs) and WiFiMon Hardware Probes (WHPs). WSPs deliver crowdsourced measurements by reporting performance as experienced by end users roaming the Wi-Fi network, whereas WHPs trigger equivalent measurements from fixed network positions (Figure 1). WHPs complement WSPs by facilitating baseline performance comparisons, hence WHPs are integral to WiFiMon’s operation. WHP measurements mainly rely on Raspberry Pi devices, although any Unix-based device may be used.
Shortcomings of the old approach for configuring and controlling WHPs
WHPs are installed and operated by various universities and National Research and Education Networks (NRENs). By supporting these organizations, the WiFiMon team gathered important feedback on the shortcomings of WHP configuration and control. Specifically, reconfiguring WHPs after their initial installation proved time-consuming and costly. Administrators were previously required to connect to WHPs either physically by plugging the appropriate equipment or remotely via SSH.
However, in experimental setups with various WHPs distributed across many sites, physically connecting to them proved demanding. Moreover, enabling remote access required allocating static public address space, thus reducing flexibility, despite WHPs’ ability to operate without such addresses, even behind NAT networks. Additionally, upon connecting to WHPs, WiFiMon administrators were required to follow difficult and error-prone steps, including directly editing various configuration files (Figure 2).
A new approach for distributed WHP configuration and control
To address these shortcomings and simplify WHP operation, the WiFiMon team has developed user-friendly methods that enable the configuration and control of WHPs distributed across monitored networks from a centralized location. All operations are now performed from the central processing component of WiFiMon (Figure 3) — the WiFiMon Analysis Server (WAS).
Furthermore, a new graphical method integrated within the WiFiMon User Interface allows administrators to insert all the information required by WHPs in a single prompt (Figure 4). Based on Jinja2 templating, the necessary configuration files are generated and they are subsequently propagated to the specified WHPs distributed across the monitored network.
Communication between the WAS and the underlying WHPs is possible via the Salt infrastructure management tool. Salt establishes application layer communication among devices, therefore enabling WiFiMon administrators to control and reconfigure WHPs, such as modifying measurement intervals, without physically connecting to them. Moreover, WiFiMon takes advantage of important features provided by Salt. Specifically, by relying on the ZeroMQ message broker, Salt is scalable and allows for reconfiguring the available WHPs in parallel regardless of their total number.
Finally, as Salt establishes communication in the application layer, reconfiguring the WHPs is possible even if static IP addresses are not assigned to them, therefore supporting the monitoring of NAT networks and enabling more flexible control.
Nikos Kostopoulos is a PhD Candidate at the National Technical University of Athens (NTUA), Greece focusing on network security. He participates in WiFiMon as a software developer.
Co-authored by Elisantila Gaci, RASH.
The views expressed by the authors of this blog are their own and do not necessarily reflect the views of APNIC. Please note a Code of Conduct applies to this blog.