.. ndnSIM: NS-3 based NDN simulator documentation master file

Welcome
=======

The ndnSIM 2.0 is NS-3 module that implements Named Data Networking (NDN) communication
model, the clean slate Internet design. ndnSIM is specially optimized for simulation
purposes and has a cleaner and more extensible internal structure comparing to the
existing NDN implementation (NDNx).

We invite you to `join our mailing list
<http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim>`_ to see and participate in
discussions about ndnSIM implementation and simulations in general (`mailing list archives
<http://www.lists.cs.ucla.edu/pipermail/ndnsim/>`_).

Contents:

.. toctree::
    :maxdepth: 4

    intro
    getting-started
    faq
    examples   
    helpers
    cs
    fw
    applications
    metric
    parallel-simulations
    guide-to-simulate-real-apps
    ndnsim-research-papers


.. toctree::
    :hidden:
    :glob:

    meta/*
    RELEASE_NOTES


-------

If you refer to ndnSIM in a published work, please cite the following papers, not just the ndnSIM website. Thank you!
    **S. Mastorakis, A. Afanasyev, I. Moiseenko, and L. Zhang, "ndnSIM 2.0: A new version of the NDN simulator for NS-3," NDN, Technical Report NDN-0028, 2015** (`PDF <http://named-data.net/techreport/ndn-0028-1-ndnsim-v2.pdf>`__, `BibTex <http://lasr.cs.ucla.edu/afanasyev/bibwiki/bibtex/399>`__)

    **A. Afanasyev, I. Moiseenko, and L. Zhang, "ndnSIM: NDN simulator for NS-3," NDN, Technical Report NDN-0005, 2012** (`PDF <http://named-data.net/wp-content/uploads/TRndnsim.pdf>`__, `BibTex <http://lasr.cs.ucla.edu/afanasyev/bibwiki/bibtex/367>`__)

.. * :ref:`search`
