Versions Compared

Key

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

...

This is a project suggested by Bebo White to build PingER monitoring host and validate a PingER Measurement Agent (MA) based on an inexpensive piece of hardware called a Raspberry Pi (see more about Raspberry Pi) using a linux distribution as the Operating System (see more about Raspbian). If successful one could consider using these in production: reducing the costs, power drain (they draw about 2W of 5V DC power compared to typically over 100W for a deskside computer or 20W for a laptop) and space (credit card size). This is the same type of power required for a smartphone so appropriate off the shelf products including a battery and solar cells are becoming readily available. Thus the Raspberry could be very valuable for sites in developing countries where cost, power utilization and to a lesser extent space may be crucial. 

...

PingER (Ping End-to-end Reporting) is the name given to the Internet End-to-end Performance Measurement (IEPM) project to monitor end-to-end performance of Internet links. It is led by SLAC and development includes has included NUST/SEECS (formerly NIIT), FNAL, and ICTP/Trieste, together with UM,UNIMAS and UTM in Malaysia. Originally, in 1995 it was for the High Energy Physics community, however, this century it has been more focused on measuring the Digital Divide from an Internet Performance viewpoint. The project now involves measurements to over 700 sites in over 160 countries, and we are actively seeking new sites to monitor and monitoring MA sites for this project, as well as people interested in our data. It uses the ubiquitous ping facility so no special software has to be installed on the targets.

Measurements are made by ~60 measurement Agents (MAs) in 23 countries. They make measurements to over 700 targets in ~ 160 countries containing more than 99% of the world's connected population. The measurement cycle is scheduled at roughly 30 minute intervals. At each measurement cycle, each MA issues a set of pings to each target, stopping when it receives 10 ping responses or it has issued 30 ping requests. From each  set of pings one can derive various metrics such as minimum (Min) ping Round Trip Time (RTT) response, average (Avg) RTT, maximum (Max)  RTT, standard deviation (Stdev) of RTTs, 25% probability of RTT, 75% probability of RTT, Inter Quartile Range (IQR, ), loss, and reachability (host is unreachable if get 100 % loss).

The data is publicly available and since the online data goes back to January 1998, it provides 19 years of historical data on Internet performance.

Raspberry Pi Model and Specifications

The Raspberry belongs to Bebo White and it is the version 1 of Raspberry Pi, model B. The cost is about $25/each + costs of the SD card. The Raspberry purchased each has  has 512MB RAM, on a 700Mhz ARM CPU and a 32GB SD Card ($18)  was used. They have It has 2 USB ports and , 1 100Mb/s Ethernet interfaces interface and 1 HDMI port. For reasons of economy it also does not have a Real Time Clock (RTC).  Instead, the Pi is intended to be connected to the Internet via Ethernet or WiFi, updating the time automatically from the global ntp (nework time protocol) servers (see https://learn.adafruit.com/adding-a-real-time-clock-to-raspberry-pi/overview).

The Voltage requirement for the power is 5V+-5%. Keep in mind that it is necessary to have a keyboard, a mouse and a HDMI monitor to do the installation process, but once PingER is working they are not necessary anymore.  We measured the power (Wattage) during normal use and it is 2.7 Watts. When using the Dell mouse, with an LED, powered from the Raspberry Pi it crept up to 3.2Watts. If we have a 5000mA-hour fully charged solar cell battery, Then then the Raspberry Pi might be expected to run for ~ 25 hours. However we need to be able to recharge from the sun. If we had a 10W 5V solar panel then with an efficiency factor of 2.5 we may estimate the recharge time of the battery as about 6.25hoursto be ~6.25 hours.

Operating System

The installed system is called Raspbian a Debian Linux variant. The OS had Perl, Make, dig, ping and mail installed. We accessed it through the graphic interface of Raspbian. We just had to install: Apache and XML::Simple.

...

We chose to make detailed measurements from two monitors MAs at SLAC.

  1. The Dell Poweredge 2650 bare metal pinger.slac.stanford.edu server running Red Hat Linux  2.6.32-504.8.1.el6.i686

    Code Block
    pi@pinger-raspberry ~ $ uname -a
    Linux pinger-raspberry.slac.stanford.edu 3.18.11+ #781 PREEMPT Tue Apr 21 18:02:18 BST 2015 armv6l GNU/Linux
  2. The Raspberry Pi pinger-raspberry.slac.stanford.edu an armv61 running Gnu Linux (see above).

    Code Block
    103cottrell@pinger:~$uname -a
    Linux pinger 2.6.32-504.8.1.el6.i686 #1 SMP Fri Dec 19 12:14:17 EST 2014 i686 i686 i386 GNU/Linux

Both were in the same building at SLAC, i.e. roughly at latitude 37.4190 N, longitude 122.2085 W, but on different floors. The machines are about 30 metres apart or about 0.0003 msec based on the speed of light in fibre. 

...

  • between pinger.slac.stanford.edu and pinger-raspberry.slac.stanford.edu
  • from both pinger.slac.stanford.edu and  pinger-raspberry.slac.stanford.edu to targets at varying distances and hence varying minimum RTTs from SLAC.
  • from MAs at sitka.triumf.ca and ping.cern.ch to pinger.slac.stanford.edu and pinger-raspberry.edu

The Directivity Information on the various hosts involved is given in the table below

The Directivity in the table below provides a measure of how direct the route is between the MA and target. The Directivity is given as:
 Directivity = great circle distance between MA & target [in km] / (RTT [ms] * 100 [km/ms]

Information on the various hosts involved is given in the table below. 

The Directivity is <=  of 1 1, and a value of 1 means the RTT is the same as given by the speed of light in a fibre. 

HostLatLongGreat Circle distance from SLACMin RTT (as constrained by speed of light in fibre) Directivity based on measured min RTT
pinger.slac.stanford.edu37.4190 N122.2085 W0 km0.0003 ms0.001
pinger-raspberry.slac.stanford.edu37.4190 N122.2085 W0 km0.0003 ms0.001
sitka.triumf.ca
49.2475 N 
123.2308 W
1319.6 km13.196 ms0.6
ping.cern.ch
46.23 N
6.07 E
9390.6 km93.90 ms0.63

Analysis

Two major points need to be addressed before we can comfortably deploy Raspberry PI MAs.

  1. The Raspberry Pi PingER MA must be robust and reliable. It needs to run for months to years with no need for intervention. This still needs to be verified, so far the Raspberry Pi has successfully run without intervention for over a month. This has included automatic recovery after two test power outages. 
  2. The important metrics derived from the measurements made by the Raspberry Pi should not be significantly different from those made by a bare metal PingER MA, or if they are then this needs to be understood.

We define the important metrics measured by PingER as being the minimum, average, median and jitter of the RTTs, the packet loss, together with the reachability (i.e. a target host is unreachable when no ping requests are responded by the target host). These are the main metrics Looking for significant differences in the measurements of the more important metrics (minimum, average, median and jitter of RTT and the loss) measured by PingER that impact applications such as throughput, voice over IP, streaming video, haptics, and estimating the geolocation of a host by pinging it from well know landmarks.  Such differences might result in significant discontinuities in the metric measurements if we were to change the monitoring host from a bare metal server to a Raspberry Pi.

In this report the jitter is represented by the Inter Packet Delay (IPD), the absolute values of the IPF (Abs(IPD)) and the Stdev(IPD).

The following plots are the raw metric data from the MA measurements from which we have to craft our text (with some plot examples).

Example target = pinger.unimas.my (~220 msec.)

...