Background
Today's home networks are a bit of a mystery when end-users wish to
know what is `happening on the inside'.
Typical broadband-connected homes will have an IP gateway attached to
an ADSL or DOCSIS modem for their link to the outside world.
Communication within the home will be a mix of wired Ethernet, 802.11
WiFi and related technologies (such as
HomePlug AV).
The gateway, 802.11 access point (AP) and PowerlineAV interfaces may be
separate devices or integrated within the home's broadband modem.
Industry efforts, such as the IETF's
Homenet WG, the
Home Gateway Initiative, and the
UPnP Forum,
are developing standards for home networks to self-configure and
operate in as much of a plug-n-play manner. Yet consumer-grade devices
provide limited mechanisms for end-users to monitor things like
aggregate & application-specific bandwidth in/out of the home,
number of active NAT sessions, current/time-specific firewall rules,
number of clients currently associated with their WiFi AP, lists of
DHCP-assigned internal IPv4 or IPv6 addresses, lists of ad-hoc or
auto-configured internal IPv6 hosts, etc. Usually the best an end-user
can hope for is cryptic text information via a web GUI.
Our premise is that a qualitative, non-technical view of the home
network's current state may be created through the use of suitably
animated & designed objects in a virtual 3D environment.
Furthermore, that network configuration changes might be effected
through an end-user's interaction with objects inside the virtual world.
Related work
The basic idea is not new. The SGI
File System Navigator
turned up in 1993's
Jurassic Park,
sporting a navigatable 3D representation of the unix file system.
Examples since then include network activity visualisation [1, 2, 3, 4,
5], virtual-world metaphors for interacting with computer process space
[6][7][8] and virtual world collaboration systems [9][10].
Our own earlier
L3DGEWorld
project [5] involved creating a virtual world where multiple network
states are concurrently rendered in real-time using 3D objects having
visually-orthogonal attributes, and network elements are controlled
using metaphors for interaction that seem intuitive and familiar to the
human operators. An example of visually orthogonal might be a pyramid
shape's spin rate and rate of bouncing up-and-down -- we might make
spin rate and bounce rate proportional to separate network states
because spin is unlikely to be mistake for bounce.
L3DGEWorld re-purposed a 3D first person shooter (FPS) game server and
client (Quake III Arena) to provide a virtual representation of the
network(s) being monitored to multiple clients at the same time. Using
a proven FPS engine ensured efficient use of network resources between
clients and server.
In 2012 it is entirely possible to run a Quake III Arena-class game
client on modest, consmer-grade laptops, tablets and smartphones. It
seems plausible for Figure 1 to be instantiated using a L3DGEWorld-like
approach.
However, multiplayer games are no longer the only place to find 3D
rendering and networking capabilities. The emergence of
HTML5/WebGL
standards opens up the potential for 3D virtual environments being
created in-browser on modern consumer devices. Toolkits like
Processing.js and
Three.js already enable
dynamic and interactive in-browser 3D applications. HTML5's
WebSockets
enable a browser-based, 3D world to be created and continuously updated
based on network state fed in from elsewhere on the home network. In
other words, Figure 1's client may be an HTML5-compliant web browser
coupled to a custom WebSockets-based environment server. Our initial
proof-of-concept HTML5 version of L3DGEWorld is called
W3bworld.
References
[1] P. Abel, P. Gros, C. Santos, D. Loisel, and J. Paris, “Automatic
construction of dynamic 3d metaphoric worlds: An application to network
management,” Visual Data Exploration and Analysis VII, vol. 3960, pp.
312–323,January 2000.
[2] S. Lau, “The Spinning Cube of Potential Doom,” Communications of
the ACM, vol. 47, no. 6, June 2004.
[3] W.Harrop and G.Armitage, “Intuitive Real-Time Network Monitoring
Using Visually Orthogonal 3D Metaphors,” in Australian
Telecommunications Networks & Applications Conference 2004,
(ATNAC2004), Sydney, Australia, December 2004.
[4] W. Harrop and G. Armitage, “Real-Time Collaborative Network
Monitoring and Control Using 3D Game Engines for Representation and
Interaction,” in VizSEC’06 Workshop on Visualization for Computer
Security, Virginia, USA, 03 November 2006, pp. 31–40. [Online].
Available:
http://doi.acm.org/10.1145/1179576.1179583
[5] “Leveraging 3D Game Engines,” 2007. [Online]. Available:
http://caia.swin.edu.au/urp/l3dge
[6] D. Chao, “Doom as an Interface for Process Management,” in SIGCHI
conference on Human factors in computing systems, Seattle, Washington,
March 2001.
[7] “Brutal File Manager,” January 2006. [Online]. Available:
http://www.forchheimer.se/bfm/
[8] “Sun Microsystems Project Looking Glass,” February 2006. [Online].
Available:
http://www.sun.com/software/looking_glass
[9] P. Frost, M. Johansson, and P. Warren, “A Computer Game Virtual
Environment for Collaboration,” in GROUP ’01: Proceedings of the 2001
International ACM SIGGROUP Conference on Supporting Group Work,
Boulder, Colorado, USA, September 2001.
[10] B. Kot, B. Wuensche, J. Grundy, and J. Hosking, “Information
Visualisation Utilising 3D Computer Game Engines Case Study: A source
code comprehension tool,” in CHINZ ’05: Proceedings of the 6th ACM
SIGCHI New Zealand chapter’s international conference on Computer-human
interaction, Auckland, New Zealand, July 2005.