src/contrib/topology-read/topology.h
author Tommaso Pecorella <tpecorella@mac.com>
Fri, 12 Mar 2010 14:36:38 -0500
changeset 6127 b5bc10de166d
permissions -rw-r--r--
merge topology read system
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6127
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
     1
/**
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
     2
 * \addtogroup topology Topology Input Readers
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
     3
 *
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
     4
 * The topology modules aim at reading a topology file generated by an automatic topology generator.
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
     5
 *
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
     6
 * The process is divided in two steps:
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
     7
 * - running a topology generator to build a topology file
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
     8
 * - reading the topology file and build a ns-3 simulation
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
     9
 *
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    10
 * Hence, model is focused on being able to read correctly the various topology formats.
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    11
 *
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    12
 * Currently there are two models:
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    13
 * - Orbis 0.7
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    14
 * - Inet 3.0
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    15
 *
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    16
 * A good source for topology data is also Archipelago (http://www.caida.org/projects/ark/)
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    17
 *
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    18
 * The current Archipelago Measurements, monthly updated, are stored here:
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    19
 * http://data.caida.org/datasets/topology/ipv4.allpref24-aslinks/
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    20
 * (complete notation and triple data source, one for each working group)
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    21
 *
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    22
 * A different and more compact notation that signs only the AS-relationships is here:
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    23
 * http://www.caida.org/data/active/as-relationships/index.xml
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    24
 * (a sort of more Orbis-like format)
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    25
 *
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    26
 * The compact notation can be easily stripped down to a pure Orbis format, just removing
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    27
 * the double relationships (the compact format use one-way links, while Orbis use two-way
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    28
 * links) and pruning the 3rd parameter. Note that with the compact data Orbis can then be
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    29
 * used create a rescaled version of the topology, thus being the most effective way
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    30
 * (to my best knowledge) to make an internet-like topology.
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    31
 *
b5bc10de166d merge topology read system
Tommaso Pecorella <tpecorella@mac.com>
parents:
diff changeset
    32
 */