fnss.topologies.parsers.parse_rocketfuel_isp_map

parse_rocketfuel_isp_map(path)[source]

Parse a network topology from RocketFuel ISP map file.

The ASes provided by the RocketFuel dataset are the following:

ASN Name Span Region Nodes (r1) Nodes (r0)
1221 1239 1755 2914 3257 3356 3967 4755 6461 7018 Telstra (Australia) Sprintlink (US) EBONE (Europe) Verio (US) Tiscali (Europe) Level 3 (US) Exodus (US) VSNL (India) Abovenet (US) AT&T (US) world world world world world world world world world world AUS US Europe US Europe US US India US US

2999 8352

609
7109
855
3447

917 121

0

10152

378 (318) 700 (604) 172
1013

248 (240) 652 215 (201)

12

202 656 (631)

Parameters:
path : str

The path of the file containing the RocketFuel map. It should have extension .cch

Returns:
topology : DirectedTopology

The object containing the parsed topology.

Raises:
ValueError

If the provided file cannot be parsed correctly.

Notes

The returned topology is always directed. If an undirected topology is desired, convert it using the DirectedTopology.to_undirected() method.

Each node of the returned graph has the following attributes:
  • type: string
  • location: string (optional)
  • address: string
  • r: int
  • backbone: boolean (optional)
Each edge of the returned graph has the following attributes:
  • type : string, which can either be internal or external

If the topology contains self-loops (links starting and ending in the same node) they are stripped from the topology.

Examples

>>> import fnss
>>> topology = fnss.parse_rocketfuel_isp_map('1221.r0.cch')