Visualising the Internet
If you ask an engineer at any leading R&D lab anywhere in the world where their craziest and best ideas came from, they'll probably say 'round the canteen table' or words to that effect. Little Sun, the anti-design festival, Virtual Maestro and Light-Graffiti are all examples of extracurricular work that were orphans to any one of our specific core work streams, but embodied many of the concepts and ideas across different strands of work in the lab. These short term sprints tend to be excellent breeding grounds for cross-disciplinary thinking and are amazing vehicles for exploration of new areas which is, of course, massively valuable to the department.
As these projects tend to have a much quicker and more agile development cycle without any attachment to the heavy machinery of the core work streams, it means they can be let out into the wild to be seen by audiences within a much shorter time period.
One such kitchen table discussion, possibly spurred on by current news events, was around the nature of routing on the internet and the massively distributed nature both geographically and in terms of ownership of the servers that support the websites and services that we all use on a day to day basis. Within the technical community we're pretty familiar with this concept, but due to the massivly complex nature of the infrastructure and technology that drive the connected devices we all use everyday, it is often a mystery to many people how any of this stuff actually works.
Wouldn't it be cool to try and visualise the geographical nature of the internet in real time, and to show the organisations involved in the billions of transactions that occur daily in a way that was accessible to any member of the public? We thought so, and with the annual Makerfaire at the Manchester Museum of Science and Industry on the horizon, we'd have a perfect platform to explore this with a broad demographic of the BBC audience.
The Makerfaire is a weekend-long celebration of all things hacker, tinker and inventor, and BBC R&D has contributed to the Newcastle event in many years past, showcasing some of our more experimental and accessible work to the public. It's rare that we get the time to break off from our work in the lab and interface directly with license payers (many of whom don't know the BBC has an R&D department), and events like the Makerfaire provide us with a perfect forum to do this. Outreach events like these are also great for capturing the state of the grass-roots parts of our industry, something you can't really do at mega-shows such as IBC or the CHI Conference.
'What does the internet look like?' is a pretty broad question, but after a few rapid prototyping sessions, we quickly whittled it down to its basic form. We decided to try and expose an open wifi network and mirror all outbound traffic to a computer running a traffic analysis program. This server program would then communicate with a visualisation and sonification via a websocket to relay the information back to the onlookers in a meaningful way.
For the open Wifi point we used a consumer grade wireless router running the alternative OpenWRT firmware. This allowed us to set up custom iptable rules to mirror all ip level wireless traffic to a dedicated analysis sever.
On the analysis server side we captured all the traffic using the pcapy Python library. We then extracted the packet headers and performed some extra analysis on them such as looking up geographical locations for IP addresses using the MaxMind database, performing traceroutes, reverse DNS lookups, WhoIS lookups, and user-agent string analysis using the OpenDDR database. This gave us a range of information for each packet which was then passed to a Python Twisted server which, using the Autobahn libraries, was able to create a websocket connection to the visualisation and sonification clients.
We decided to render the visualisation within a full-screen web-browser rather than go down any native/standalone application. This would allow for both rapid development and easy access to a huge number of available open-source toolkits, and served as a brilliant platform to experiment with the HTML5 canvas. The audio engine took each arriving packet and generated a 'sonic hash' for each traffic source which was used to drive Ableton Live, a real time music performance program, to create the 'sound' of the IP traffic coming to and from everyones devices.
A large world map (in obligatory 90s Hollywood cyber-baddie decor) showing the destinations of the connections made by each device together with a running-total screen displaying some of the trends exhibited by all the devices that had connected was set up side-by-side, projected on to a pair of large screens by two digital cinema projectors. Allowing people to see in real-time, the sheer number of separate connections made by their devices when browsing the web, using apps and even using the basic supposedly 'non-connected' features of their devices was incredibly effective in illustrating the distributed nature of the internet and the incredible amount of digital chatter happening between our devices and the wider internet.
The Makerfaire itself was an excellent weekend as usual, and we had the good fortune to be joined by a team from TV Platforms, showing off some of their wackier dalek-related side projects. We had many excellent conversations with people of all ages and all walks of life, from members of the public with no technical background to senior software developers, all of whom found the installation fascinating and thought provoking.
Matt Brooks, Matt Shotton, Max Leonard, Joel Merrick: Development
Mike Armstrong: Logistics
Many thanks to MOSI and Makerfaire for hosting us, and to the volunteers who came down to MOSI to help run the installation.