3 INTERNET ELEMENTS AND
INTERCONNECTIONS
3.1 Nodes
The Internet graph nodes will be all known IX
and landing points from submarine cables from
data publicly available compiled by TeleGeog-
raphy. Submarine cable information is available
on website TeleGeography Submarine Cable
Map (www.submarinecablemap.com) and re-
spective repository (github.com/telegeography/
www.submarinecablemap.com). Internet exchanged
information is available on website TeleGeography
Internet Exchange Map (internetexchangemap.com)
and respective repository (github.com/telegeography/
www.internetexchangemap.com).
The available data in December 5
th
2016, listed
1202 IX, however only 600 where considered. IX
from the same provider at the same building or nearby
buildings were merged and considered as a single
IX node. At the same date, there were 368 listed
submarine cables, with a total of 947 unique land-
ing points (considering its identifier and geographi-
cal location). From the 947 unique landing points,
two pairs of nodes had the same identifier but dif-
ferent however close geographic locations. Each of
these pairs of points were merged into a single land-
ing point. Therefore, only 945 landing points nodes
were integrated into the graph.
3.2 Links
Internet link information is almost inexistent. The
only real information must be extracted from the
known submarine cables information, where is pos-
sible to assume that each cable landing point has a di-
rect connection to all other landing points. However,
the publicly available information does not define the
order by which the landing points are connected, nei-
ther the geographic path that the cable follows. There-
fore, all Internet oceanic links and respective path can
be closely inferred from the available data by impos-
ing constrains has geographic elevation (ocean depth)
and geographic distances between points.
For Internet land links, available information is re-
ally limited by service providers and difficult to corre-
late with IX and landing points locations. Portals like
Internet Atlas have information about some providers
in restricted areas of the world, but is difficult to in-
fer inter-connections between providers. In this work
was choose a more heuristic approach in which land
links were defined based on basic rules constrained
LP2
LP3
LP4 IX3
LP1
IX1
IX2
LP1,LP3,path:[A,B,C,D,E,F,G,H]
LP1,LP4,path:[A,B,C,D,E,F,G,H,I,J,K,L]
LP1,LP2,path:[A,B,C,D,E,F]
LP1,IX1,path:[T,S,M]
IX1,IX3,path:[M,R,Q,P]
IX3,IX2,path:[P,O,N]IX2,LP4,path:[N,X,Y]
IX2,IX1,path:[N,M]
LP2,LP4
path:[F,G,H,I,J,K,L]
LP2,LP3,path:[F,G,H]
LP3,LP4
path:[H,I,J,K,L]
LP3,IX2,path:[V,W,N]
Figure 1: Graph logical representation.
by the maximum number of neighbor nodes within a
geographical range.
4 GRAPH STRUCTURE AND
DYNAMICS
It was assumed that Python is the nowadays language
of election for fast and lightweight development.
Therefore, the Internet graph was constructed using
the Python package NetworkX (networkx.github.io/)
which allows the creation, manipulation, and analysis
of the structure and dynamics of complex networks. It
was chosen a NetworkX Undirected Simple Graph for
modeling the Internet nodes and inter-connections,
because it is assumed that the link properties between
two nodes is the same for both directions.
A NetworkX allows the addition of arbitrary at-
tributes for graph nodes and links. Nodes will an iden-
tifier and two attributes ntype and coord, the first
defines the type of node (IX or Landing Point - LP)
and the second the geographic coordinate as a 2-tuple
with latitude and longitude. Links (or edges under
NetworkX nomenclature) are defined by the two end-
point nodes and have three attributes etype, dist and
path, the first defines the type of the link (Ocean,
Land, Land to Ocean, etc. . . ), the second attribute de-
fines the geographical distance of the link and the final
attribute defines the geographical path of the link as a
list of geographical coordinates. The unidirectional
nature of the graph implies that the attributes between
node1 and node2, are the same as the ones between
node2 and node1. Therefore, the geographical path
may have to be inverted when starting from the node
considered as the end of the path.
Figure 1 depicts a logical representation of the
graph, where letters represent the geographic coordi-
nates of the respective points.
DCNET 2017 - 8th International Conference on Data Communication Networking
28