# HG changeset patch # Parent 5fc6809dfbbb38233bca32e1bf68dd14608b2747 # User Tommaso Pecorella # Date 1320439003 -3600 Topology reader docs fixings diff --git a/src/topology-read/doc/topology.h b/src/topology-read/doc/topology.h --- a/src/topology-read/doc/topology.h +++ b/src/topology-read/doc/topology.h @@ -16,23 +16,6 @@ * - ns3::InetTopologyReader for Inet 3.0 traces (http://topology.eecs.umich.edu/inet/) * - ns3::RocketfuelTopologyReader for Rocketfuel traces (http://www.cs.washington.edu/research/networking/rocketfuel/) * - * An helper ns3::TopologyReaderHelper is provided to assist on trivial tasks. - * - * A good source for topology data is also Archipelago (http://www.caida.org/projects/ark/) - * - * The current Archipelago Measurements, monthly updated, are stored here: - * http://data.caida.org/datasets/topology/ipv4.allpref24-aslinks/ - * (complete notation and triple data source, one for each working group) - * - * A different and more compact notation that signs only the AS-relationships is here: - * http://www.caida.org/data/active/as-relationships/index.xml - * (a sort of more Orbis-like format) - * - * 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. - * + * See the ns-3 manual for further informations. * Examples can be found in the directory src/topology-read/examples/ */ diff --git a/src/topology-read/doc/topology.rst b/src/topology-read/doc/topology.rst new file mode 100644 --- /dev/null +++ b/src/topology-read/doc/topology.rst @@ -0,0 +1,39 @@ +.. include:: replace.txt + +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 (http://sysnet.ucsd.edu/~pmahadevan/topo_research/topo.html) +* ``ns3::InetTopologyReader`` for Inet 3.0 traces (http://topology.eecs.umich.edu/inet/) +* ``ns3::RocketfuelTopologyReader`` for Rocketfuel traces (http://www.cs.washington.edu/research/networking/rocketfuel/) + +An helper ``ns3::TopologyReaderHelper`` is provided to assist on trivial tasks. + +A good source for topology data is also Archipelago (http://www.caida.org/projects/ark/) + +The current Archipelago Measurements, monthly updated, are stored here: +http://data.caida.org/datasets/topology/ipv4.allpref24-aslinks/ +(complete notation and triple data source, one for each working group) + +A different and more compact notation that signs only the AS-relationships is here: +http://www.caida.org/data/active/as-relationships/index.xml +(a sort of more Orbis-like format) + +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/`` + + diff --git a/src/topology-read/helper/topology-reader-helper.h b/src/topology-read/helper/topology-reader-helper.h --- a/src/topology-read/helper/topology-reader-helper.h +++ b/src/topology-read/helper/topology-reader-helper.h @@ -28,6 +28,8 @@ namespace ns3 { /** + * \ingroup topology + * * \brief Helper class which makes it easier to configure and use a generic TopologyReader. */ class TopologyReaderHelper diff --git a/src/topology-read/model/inet-topology-reader.h b/src/topology-read/model/inet-topology-reader.h --- a/src/topology-read/model/inet-topology-reader.h +++ b/src/topology-read/model/inet-topology-reader.h @@ -23,7 +23,6 @@ #define INET_TOPOLOGY_READER_H #include "ns3/nstime.h" - #include "topology-reader.h" namespace ns3 { @@ -32,6 +31,8 @@ // ------------------------------------------------------------ // -------------------------------------------- /** + * \ingroup topology + * * \brief Topology file reader (Inet-format type). * * This class takes an input file in Inet format and extracts all diff --git a/src/topology-read/model/orbis-topology-reader.h b/src/topology-read/model/orbis-topology-reader.h --- a/src/topology-read/model/orbis-topology-reader.h +++ b/src/topology-read/model/orbis-topology-reader.h @@ -23,7 +23,6 @@ #define ORBIS_TOPOLOGY_READER_H #include "ns3/nstime.h" - #include "topology-reader.h" namespace ns3 { @@ -32,6 +31,8 @@ // ------------------------------------------------------------ // -------------------------------------------- /** + * \ingroup topology + * * \brief Topology file reader (Orbis-format type). * * This class takes an input file in Orbis format and extracts all diff --git a/src/topology-read/model/rocketfuel-topology-reader.h b/src/topology-read/model/rocketfuel-topology-reader.h --- a/src/topology-read/model/rocketfuel-topology-reader.h +++ b/src/topology-read/model/rocketfuel-topology-reader.h @@ -22,7 +22,6 @@ #define ROCKETFUEL_TOPOLOGY_READER_H #include "ns3/nstime.h" - #include "topology-reader.h" namespace ns3 { @@ -31,6 +30,8 @@ // ------------------------------------------------------------ // -------------------------------------------- /** + * \ingroup topology + * * \brief Topology file reader (Rocketfuel-format type). * * http://www.cs.washington.edu/research/networking/rocketfuel/ diff --git a/src/topology-read/model/topology-reader.h b/src/topology-read/model/topology-reader.h --- a/src/topology-read/model/topology-reader.h +++ b/src/topology-read/model/topology-reader.h @@ -33,6 +33,8 @@ namespace ns3 { /** + * \ingroup topology + * * \brief Interface for input file readers management. * * This interface perform the shared tasks among all possible input file readers. @@ -52,8 +54,18 @@ class Link { public: + /** + * \brief Constant iterator to scan the map of link attributes. + */ typedef std::map::const_iterator ConstAttributesIterator; + /** + * \brief Constructor + * \param fromPtr Ptr to the node the link is orginating from + * \param fromName name of the node the link is orginating from + * \param toPtr Ptr to the node the link is directed to + * \param toName name of the node the link is directed to + */ Link ( Ptr fromPtr, std::string fromName, Ptr toPtr, std::string toName ); /**