ns-3 Documentation
ns-3 documentation is maintained using
Doxygen. Doxygen is typically used for API documentation, and organizes such documentation across different modules. This project uses Doxygen both for building the manual around the API documentation, and a separate GNU texinfo document is used for the manual.
The ns-3 project documentation is organized as follows:
- modules: The "Modules" tab (above) organizes all of the public API and supporting manual text along the source code directory structure. This forms the "ns-3 manual", and it is available in HTML and PDF forms.
- HOWTOs: A set of HOWTOs and FAQs is maintained on another Doxygen "Related Page"
- tutorial: The ns-3 tutorial is a separate document maintained in GNU Texinfo.
- The ns-3 wiki contains additional user-contributed material. Some wiki-contributed material may migrate to and overlap with the Doxygen information.
ns-3 requires Doxygen version 1.5.4 or greater to fully build all items, although earlier versions of Doxygen will mostly work.
Type "./waf --check" followed by "./waf --doxygen" to build the documentation. There is a program that runs during "./waf --check" that builds pieces of the documentation through introspection. The doc/ directory contains configuration for Doxygen (doxygen.conf and main.txt). The Doxygen build process puts html files into the doc/html/ directory, and latex filex into the doc/latex/ directory.
The ns-3 library is split across multiple modules:
- core: located in src/core and contains a number of facilities which do not depend on any other module. Some of these facilities are OS-dependent.
- simulator: located in src/simulator and contains event scheduling facilities.
- common: located in src/common and contains facilities specific to network simulations but shared by pretty much every model of a network component.
- node: located in src/node. Defines the abstract interfaces which must be implemented by every node and more specifically, by ipv4 nodes.
- devices: located in src/devices. Contains a set of MAC-level models
More detail can be found in the Modules tab.
Refer to the
RapidNet page for documentation on RapidNet.