eyep6

Earlier this year we successfully launched public access to our EyeP website, the visualization tool for IPv4 address space allocation and usage. EyeP's front page shows a summary of the entire IPv4 address space allocations, from there one can dive into any specific address block for detailed allocation and usage information.

EyeP(v4) resulted from our research and development efforts over the last three years. EyeP6 takes after EyeP, aiming to visualize IPv6 address space allocation and usage. Although we have succeeded in building EyeP for IPv4, developing EyeP6 faces a daunting challenge: how to visualize a summary of the overall allocation and usage status of a huge IPv6 address space.

We illustrate our plan of building the EyeP6 using a top-down approach. That is, we first explain the functionalities, and requirements we want to achieve. Then we talk about our user interface design of the website. Last, we go through our architectural design, and explain each component of the system.

Functionalities and requirements

  • EyeP6 should collect and visualize all the IPv6 factors equivalent to what EyeP4 has.  Specifically, it should (1) visualize IPv6 address allocation status, both in the whole address space and in any specific address block; (2) present IPv6 addresses' owner and geographic information, if available in whois database; (3) visualize announced IPv6 address prefixes in BGP routing tables; (4) be able to correlate address allocation and routing announcement.
  • Performance and responsiveness of EyeP6 website should give users a pleasant browsing experience.  According to a study by John A. Hoxmeier et al., user satisfaction decreases as response time increases, and dissatisfaction leads to discontinued use.
  • The system should be robust against abnormal conditions, including data collection failure, mis-formatted data, malicious input from website users, etc.

Prototype

The current prototype version of EyeP6 visualizes only IPv6 address allocations in form of a picture with 256 rows and 256 columns. Each cell in this picrute represents a /16 IPv6 address block.  A color coding is used to represent blocks allocated to different RIRs: for ArfiNIC, for APNIC, for ARIN, for LACNIC, and for RIPE.

If a /16 address block could be sliced among multiple RIRs, it is possible to click on the corresponding cell, and zoom in to get a more detailed view.