The Whitebox runs tests against popular websites and network test nodes that are provided by SamKnows (Off-Net) or your ISP (On-Net). SamKnows utilises the On-Net data for validation of the Off-Net results. The Whitebox then sends the results to the secure SamKnows reporting servers which then presents the results back to you either via Samknows Analytics, the SamKnows App, and the monthly personalised SamKnows Report Card.
The SamKnows architecture is split into two distinct parts: The measurement client testing infrastructure, and the back end storage, processing, and visualisation of the data. This section endeavours to explain how SamKnows generates and handles the data and the different ways it can be displayed to end users.
When a Whitebox is shipped to an end user the details are automatically entered into the SamKnows database. This includes information such as MAC address, email address to identify the customer and what panel and ISP the Whitebox should be assigned to.
When the Whitebox has been received by the end user and plugged in, it ‘talks’ to the SamKnows Data Collection Servers (DCS), passing through the MAC address of the device as an identifier for the device.
The mobile clients work slightly differently. The application is downloaded by the user and activated when opened. The activation process allows the app to ‘talk’ to the SamKnows Data Collection Servers (DCS).
Test nodes are servers on the Internet that the Measurement Client tests against. There are 2 types of test node, Off-Net and On-Net. Off-Net servers are located in neutral areas which are considered fair for all participating ISPs. They are often provided by research groups such as Level 3 or M-Lab or by hosting companies where SamKnows pays for dedicated hardware. On-Net servers are hosted by an ISP on their own network. While the ISP provides the hardware and connectivity, SamKnows works with the ISP to ensure the server is correctly configured and monitored. Only users on that particular ISP’s network would test against that On-Net server.
The test nodes run SamKnows developed software and act as endpoints for the tests that the Measurement Client’s run. No test results are stored on the test nodes themselves. Additionally, we keep the test servers up to date with the latest codebase via a central management system, run by SamKnows.
The DCS handles all the configuration for the Measurement Client and once the initial contact has been made the DCS will send through the specific testing schedule appropriate to that panel as well as any updated binaries & scripts for the tests themselves.
On receiving this information the Measurement Client will look to find the correct test server targets. The Measurement Client runs through the list that is provided and determines which server is closest, in network terms, via a simple latency test. The test parameters are also provided with the list of servers.
SamKnows' reporting platform, dubbed SamKnows Analytics, providers consumers, ISPs and regulators with a highly flexible and customisable interface for analysing measurement results. All of the metrics can be displayed in here using a variety of different charts (line charts, scatter plots, histograms, CDFs, and more), and the data can be joined with an external metadata feed to allow even greater reporting granularity. SamKnows Analytics is built with a responsive user interface and is accessible from desktop computers, phones and tablets alike.
To discuss your measurement requirements and what we can do to help you please get in touch.