← Back to Projects

Crossfiltering Webpass Ping Logs

Measurements by Date
Packet Loss (%)
Avg. RTT to google.com (ms)
Day of Week
Hour of Day
- of - logs selected.

My apartment in San Francisco got its Internet access through WebPass. WebPass uses point-to-point microwave radios to connect its residential network together rather than running cables. My experience with WebPass was overwhelmingly positive; it was really fast and their customer service is top-notch.

However, after seeing a couple of bursts of packet loss, I was interested in doing a little bit of basic measurement to see if bursty loss occurred regularly and if it was correlated with anything in particular. I was also looking for an excuse to play around with D3 and Crossfilter, and this sort of analysis is a perfect fit.

The measurements I performed are hardly scientific; I hooked a Rasberry Pi to my router and had it ping google.com for 30 seconds every 15 minutes. Once I had enough data, I passed the results through a Python script (source code available on GitHub) to produce a CSV. I started with Crossfilter’s example code, hacked it up a little, and produced what you (should) see above.

If you make a selection in one of the charts, it should update the others. You can make selections in multiple charts at once. For example, you can find a few periods with 10% or more packet loss, isolate a particular lossy period on June 16th or notice that high ping latencies to Google occur more frequently on Saturdays.