MaraMap

Completed • June 2021 - August 2023

Node.js • Python • BGP • RIPE Atlas • Routeviews

Collaborators: Ella Lu, Shihan Lin, Dr. Xiao Zhang, Dr. Xiaowei Yang

In the summer of 2021, I joined Dr. Xiaowei Yang's computer network research group as part of Duke's CS+ program. There, I worked alongside her and PhD candidate Shane Zhang to study anycast networks and how their configuration impacts their performance, using data from RIPE Atlas and Routeviews on the 13 root DNS servers for comparison.

The presentation my partner and I gave for the CS+ program.

I continued working with the team throughout my sophomore year, expanding our research to investigate more configuration parameters. During this time, I drew from academic literature and industry knowledge to develop new data processing methods that allowed us to look into special network configurations. One such method was moving the endpoint of our traceroute analysis to well-known “anchor” AS numbers, which removed a roadblock we ran into analyzing root servers A and J (both operated by Verisign, these root servers' IP addresses are advertised from a multitude of ASes but are all funneled through AS7342, which became their anchor AS number).

In my junior year, I became a mentor for the ReLCS program that Dr. Yang, Shane and PhD candidate Shihan Lin were running, which was aimed at getting high schoolers into computer science research. Utilizing what I had learned from CS+ and my independent studies sophomore year, I guided the students toward our end goal of building an Internet topology visualization web app, which would later be named MaraMap.

MaraMap allows users to enter in their own traceroute outputs and see a map visualization of them. Each hop in the provided traceroutes is indicated with a pinpoint and is connected with lines to other adjacent hops. Clicking on a pinpoint shows information about the node, including the IP addresses and AS numbers associated with each of its interfaces. The location of each node on the map is determined using various techniques as opposed to simply looking it up in the RIR Whois databases.

Throughout MaraMap's development, I advised the students on how to design network experiments that account for the various situations they would encounter on the Internet, how to structure the (often massive amounts of) information they retrieved so they could analyze it efficiently and properly, and how to present their findings in a meaningful way. I also assisted with writing the software for MaraMap when necessary.

MaraMap was published as a demo in IEEE ICNP (International Conference on Network Protocols) 2023. The paper writeup can soon be found on IEEE Xplore.