Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Setting up the WHP

There are two options for the WHP installation:

  1. Installation and configuration from the prepared WiFiMon WHP image (Installation option 1)
  2. Installation and configuration on the Raspberry Pi with already installed Raspberry Pi OS (Stretch or later) (Installation option 2)

Installation and configuration

The following steps apply for both installation options. WiFiMon administrators who will use the prepared WHP image (installation option 1) should simply edit the crontab and wireless.py and twping_parser.py files as discussed in the following. WiFiMon administrators who will not use the prepared WIFiMon WHP image (installation option 2) should follow the steps 2 up to 5.

Step 1: Write the image to the micro SD card

Follow the instructions at the official Raspberry Pi site. Skip the "Download the image" step and use the WiFiMon Raspberry Pi operating system image instead (download size is approx. 3.5 GB).

...

We advise the WiFiMon administrator to always secure Raspberry Pi by changing the default password.

Step 2: Start the Raspberry Pi

Follow the simple steps below:

...

You should see a red light on the Raspberry Pi and raspberries on the monitor. The WiFiMon Hardware Probe will boot up into a graphical desktop.

Step 3: Configure the Raspberry Pi

Secure the Raspberry Pi by changing the default password. Optionally, you may enable SSH to access the command line of a Raspberry Pi remotely or setup remote desktop. Next, you have to connect to the wireless network you want to measure.

...

The WiFiMon Hardware Probe (WHP) performs performance tests towards the WiFiMon Test Server (WTS) in an automated manner. It uses crontab to schedule the tests. To do that, open the terminal (as user "pi") and enter the command: crontab -e. You will have to pick the text editor that you prefer. Then scroll to the bottom of the file and add the following code block (which you will modify as explained below):

00,10,20,30,40,50 * * * * Xvfb :100 &
02,12,22,32,42,52 * * * *  export DISPLAY=:100 && firefox-esr --new-tab URL_TO_nettest.html /usr/local/bin/nettest.sh >/dev/null 2>&1
04,14,24,34,44,54 * * * *  
export DISPLAY=:100 && firefox-esr --new-tab URL_TO_speedworker.html /usr/local/bin/boomerang.sh >/dev/null 2>&1
06,16,26,36,46,56 * * * *  
export DISPLAY=:100 && firefox-esr --new-tab URL_TO_boomerang.html /usr/local/bin/speedtest.sh >/dev/null 2>&159 * * * * sudo killall firefox-esr

You have to modify the following parts of the crontab in lines 2-4:

  • URL_TO_nettest
  • URL_TO_speedworker
  • URL_TO_boomerang

appropriate lines within nettest.sh, boomerang.sh and speedtest.sh scripts to point to the testpages URL.

You should put the URL or IP address of the WTS in which the NetTest, LibreSpeed Speedtest and Akamai Boomerang JS scripts are injected. Details about the configuration of the WiFiMon testtools are included in the WiFiMon Test Server (WTS) installation documentation. Following the assumptions/notations of the WTS guide, examples of the URLs for NetTest, speedtest and boomerang respectively are (i) https://WTS_FQDN/wifimon/measurements/nettest.html, (ii) https://WTS_FQDN/wifimon/measurements/speedworker.html and (iii) https://WTS_FQDN/wifimon/measurements/boomerang.html.

...

Line 2 of the crontab is related to the streaming of TWAMP measurement results to the WiFiMon Analysis Server (WAS).

Step 4: Streaming Wireless Network Interface Metrics to the WiFiMon Analysis Server (WAS)

In /home/pi, you will find the Python script wireless.py. The contents of the script are the following:
wireless.py

...

sudo apt install -y sysstat

Step 5: Streaming TWAMP Measurement Results to the WiFiMon Analysis Server (WAS)

In /home/pi, you will find the Python script twping_parser.py. The contents of the script are the following:
twping_parser.py

...

sudo apt update
sudo apt install -y ntpstat

Step

...

6: Support for distributed control

sudo apt install -y salt-minion

...

Note: This setup requires you to name WHP testpages with names matching the WHP description, e.g. for "wifimon-5", testpages should be named nettestwifimon-5.html, boomerangwifimon-5.html and speedworkerwifimon5.html

Security Issues


We suggest that you take additional efforts to safeguard the security of your probes:

...