How we do it

Our Internet Autonomous Systems' maps are obtained from data provided by different exploration projects like CAIDA [CAIDA98], DIMES [DIMES04] and Oregon RouteViews [ORV01]. These projects make available to scientists several sets of data related to the exploration of the Internet.

In particular, we are now using the data from CAIDA: "The Cooperative Association for Internet Data Analysis", but we are planning to expand our software to use the other sources as well. In order to discover the topology of the Internet, CAIDA makes use of about fifty probes distributed throughout the world. These probes discover paths sending packets to different Internet addresses; finally these paths are merged to obtain maps at different levels; here we focus only on the Autonomous Systems (AS) level.

We render the Internet map with the aid of LaNet-vi, a software for network visualization based on k-core decomposition. See the right column "What does it mean?"

From the connection between the client browser and our web server, we discover the following information: client's IP address, client's country, client's AS number and client's AS name.

Client's IP address: Is the "From" IP from the HTTP connection headers. In case of establishing the connection through an HTTP proxy, we see the proxy's IP address.

AS number: We use the information from CAIDA obtained with RouteViews, this Dataset contains IP Prefix to AS mappings derived from RouteViews [ORV01] data.

AS name: provides a text file as with a mapping between AS numbers and AS names. This type of information is available in the Internet by means of the WHOIS service.

Country: It's obtained from the regional Internet registries (RIRs), i.e., APNIC, ARIN, IANA, LACNIC, RIPENCC. The RIR statistics files summarize the current state of allocations and assignments of Internet number resources to each AS.

Python CGIs are used for the entire process.

We update all the maps and information once a week.

What does it mean?

The Internet Autonomous Systems' initial structure was referred to as "Tiers". Starting from the bottom, the Stubs were the ASes consuming from and/or furnishing contents into the Internet. Tier 3 was formed by the ASes providing Internet connection to Stubs (users' carriers); Tier 2 was the set of ASes providing service to Tier 3 (carriers' providers); and finally Tier 1 was the Internet backbone, and provided connectivity to the Tier 2. This hierarchical structure was maintained just by avoiding any connection but those between Tiers of the same level or either between adjacent ones, e.g., Tier 3 or Stub ASes never would be connected to Tier 1 ASes. Besides, Tier 1 ASes maintained a full-mesh connectivity among them. A study about this structure can be found in [SARK02] and [CGJSW04], where the last work found 5 levels of tiers in 2004, and so called Stubs to those ASes in Tier 5.

We will briefly introduce some AS map sources. Oregon Route Views [ORV01] generates maps composed by the BGP up-dates and routing tables dump of several "core" Internet routers (about ten of them). These data is not complete because it lacks of some peer-relationships that are not propagated through the whole Internet. Therefore, other mapping projects, like CAIDA [CAIDA98] and DIMES [DIMES04], use traceroute-like tools from several sources in order to unveil the Internet. These projects obtain a list of IP addresses pointing out the path that the packets followed. This addresses can be converted to AS-numbers, obtaining paths in the AS-map. A common practice is to consider path steps as undirected because the underlying links are bidirectional. The obtained data has no information about peers relationships, that is, customer-provider or peer-to-peer, but it shows the real path that packets follow. Our work is based on these kind of AS maps.

Continuing with the hierarchy of AS maps, it is worth to remark that since some years ago Tiers 2 and 1 started providing connectivity directly to Stubs, and therefore the hierarchy was broken. Despite these changes, some hierarchy does survive today, but much more complex than that of Tiers, and it can be depicted by the k-core decomposition. Indeed, this decomposition shows which portions of the network have a certain local connectivity. A k-core is the maximal subset of nodes (i.e., a subgraph) having at least k neighbors between them. It is shown that, under certain hypothesis, a k-core is k-connected [AHBB11]. In conclusion, we propose the actual hierarchy of the Internet as the maximum core in which some node remains, and this is shown in our visualizations of AS Internet maps [AHDBV06,BAHB08].

[AHBB11] J.I. Alvarez-Hamelin, M.G. Beiró, and J.R. Busch. Understanding Edge Connectivity in the Internet through Core Decomposition. Internet Mathematics, 7(1):45-66, 2011.

[AHDBV06] J.I. Alvarez-Hamelin, L. Dall'Asta, A. Barrat, and A. Vespignani. Large scale networks fingerprinting and visualization using the k-core decomposition. In Y. Weiss, B. Schölkopf, and J. Platt, editors, Advances in Neural Information Processing Systems 18, pages 41-50, Cambridge, MA, 2006. MIT Press.

[BAHB08] M.G. Beiró, J.I. Alvarez-Hamelin, and J.R. Busch. A low complexity visualization tool that helps to perform complex systems analysis. New J. Phys, 10(12):125003, 2008.

[CAIDA98] CAIDA (1998). Cooperative Association for Internet Data Analysis , Router-Level Topology Measurements.

[DIMES04] DIMES (2004). Distributed Internet MEasurements and Simulations.

[CGJSW04] H. Chang, R. Govindan, S. Jamin, S. J. Shenker, W. Willinger, "Towards capturing representative AS-level Internet topologies", Computer Networks, Volume 44, Issue 6, 22 April 2004, pp 737-755.

[ORV01] ORV (2001). University of Oregon Route Views Project.

[SARK02] L. Subramanian, S. Agarwal, J. Rexford, R.H. Katz, "Characterizing the Internet hierarchy from multiple vantage points", in INFOCOM 2002. Twenty-First Annual Joint Conference of the IEEE Computer and Communications Societies. Proceedings. IEEE, pp 618-627 vol.2, 2002.