Topology Input ReadersΒΆ

The topology modules aim at reading a topology file generated by an automatic topology generator.

The process is divided in two steps:

  • running a topology generator to build a topology file
  • reading the topology file and build a ns-3 simulation

Hence, model is focused on being able to read correctly the various topology formats.

Currently there are three models:

  • ns3::OrbisTopologyReader for Orbis 0.7 traces
  • ns3::InetTopologyReader for Inet 3.0 traces
  • ns3::RocketfuelTopologyReader for Rocketfuel traces

An helper ns3::TopologyReaderHelper is provided to assist on trivial tasks.

A good source for topology data is also Archipelago.

The current Archipelago Measurements, monthly updated, are stored in the CAIDA website using a complete notation and triple data source, one for each working group.

A different and more compact notation reporting only the AS-relationships (a sort of more Orbis-like format) is here: as-relationships.

The compact notation can be easily stripped down to a pure Orbis format, just removing the double relationships (the compact format use one-way links, while Orbis use two-way links) and pruning the 3rd parameter. Note that with the compact data Orbis can then be used create a rescaled version of the topology, thus being the most effective way (to my best knowledge) to make an internet-like topology.

Examples can be found in the directory src/topology-read/examples/