README
author Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
Thu, 17 May 2007 15:59:23 +0200
changeset 643 0d98b6622dfd
parent 641 c55da3a2f496
child 655 f2ee52034178
permissions -rw-r--r--
add gcc 4.2 to list of supported compilers
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
     1
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
     2
    The Network Simulator Version 3
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
     3
    -------------------------------
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
     4
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
     5
Table of Content:
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
     6
-----------------
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
     7
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
     8
1) An Open Source project
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
     9
2) An overview of the ns-3 project
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    10
3) Building ns-3
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    11
4) Running ns-3
641
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
    12
5) Getting access to the ns-3 documentation
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
    13
6) Working with the development version of ns-3
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    14
421
56928998e05c Final pre-release files
Tom Henderson <tomh@tomh.org>
parents: 314
diff changeset
    15
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    16
1) An Open Source project
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    17
-------------------------
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    18
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    19
ns-3 is an Open Source project and we intend to make this
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    20
project a successful collaborative project: we hope that 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    21
the missing pieces of the models we have not yet implemented
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    22
will be contributed by the community in an open collaboration
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    23
process.
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    24
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    25
Contributing to the ns-3 project is still a very informal
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    26
process because that process depends heavily on the personality
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    27
of the people involved, the amount of time they can invest
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    28
and the type of model they want to work on.
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    29
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    30
Despite this lack of a formal process, there are a number of 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    31
steps which naturally stem from the open-source roots of the
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    32
project. These steps are described in doc/contributing.txt
263
618a886c7130 Test of commit access with Mercurial cheat sheet
Tom Henderson <tomh@tomh.org>
parents: 217
diff changeset
    33
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    34
2) An overview of the ns-3 project
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    35
----------------------------------
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    36
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    37
This package contains the latest version of ns-3 which is aims 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    38
at being a replacement for ns-2. Currently, ns-3 provides a 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    39
number of very simple network simulation models:
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    40
  - an ipv4 and udp stack
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    41
  - arp support at the bottom of the stack
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    42
  - point-to-point physical-layer links
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    43
  - OnOff traffic generator
3
bb3d6a584b09 This is an important bugfix for Bilbo The Hobbit
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 1
diff changeset
    44
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    45
However, the framework is there to make adding new models as 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    46
simple as possible:
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    47
  - an extensive tracing system can be used to connect
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    48
    any number of arbitrary trace sources to any number
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    49
    of trace sinks. This tracing system is decoupled
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    50
    from the act of serializing the trace events to a 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    51
    file: users can and should provide their own
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    52
    trace handling routines.
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    53
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    54
  - simple file trace serialization support is included
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    55
    to both text and pcap files.
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    56
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    57
  - adding new MAC-level models simply requires subclassing
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    58
    the pair of classes NetDevice and Channel.
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    59
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    60
  - adding new traffic generation algorithms is also very 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    61
    simple through the Application and the Socket classes.
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    62
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    63
3) Building ns-3
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    64
----------------
7
e53ac3c458e9 test of commit
tomh@powerbook.local
parents: 3
diff changeset
    65
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    66
The code for the framework and the default models provided
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    67
by ns-3 is built as a set of libraries. User simulations
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    68
are expected to be written as simple programs which make
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    69
use of these ns-3 libraries.
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    70
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    71
To build the set of default libraries and the example
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    72
programs included in this package, you need to use the
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    73
tool 'scons'. Detailed information on how to install
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    74
and use scons is included in the file doc/build.txt
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    75
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    76
However, the real quick and dirty way to get started is to
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    77
type the command "scons" the the directory which contains
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    78
this README file. The files built will be copied in the
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    79
build-dir/dbg-shared/bin and build-dir/dbg-shared/lib
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    80
directories. build-dir/dbg-shared/bin will contain
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    81
one binary for each of the sample code in the 'samples'
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    82
directory and one binary for each of the detailed examples
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    83
found in the 'examples' directory.
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    84
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    85
The current codebase is expected to build and run on the
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    86
following set of platforms:
643
0d98b6622dfd add gcc 4.2 to list of supported compilers
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 641
diff changeset
    87
  - linux x86 gcc 4.2, 4.1, and, 3.4.
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    88
  - MacOS X ppc and x86
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    89
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    90
The current codebase is expected to fail to build on
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    91
the following platforms:
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    92
  - gcc 3.3 and earlier
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    93
  - optimized builds on linux x86 gcc 4.0 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    94
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    95
Other platforms might or might not work: we welcome 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    96
patches to improve the portability of the code to these
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    97
other platforms.
217
1df7792bdc0c Raj test commit
raj@igloo.ece.gatech.edu
parents: 7
diff changeset
    98
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
    99
4) Running ns-3
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   100
---------------
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   101
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   102
On Recent Linux systems, once you have built ns-3, it 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   103
should be easy to run the sample programs with the
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   104
following command:
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   105
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   106
./build-dir/dbg-shared/bin/simple-p2p
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   107
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   108
or:
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   109
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   110
cd build-dir/dbg-shared/bin
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   111
./simple-p2p
263
618a886c7130 Test of commit access with Mercurial cheat sheet
Tom Henderson <tomh@tomh.org>
parents: 217
diff changeset
   112
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   113
That program should generate a simple-p2p.tr text 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   114
trace file and a set of simple-p2p-xx-xx.pcap binary
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   115
pcap trace files.
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   116
641
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   117
5) Getting access to the ns-3 documentation
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   118
-------------------------------------------
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   119
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   120
Once you have verified that your build of ns-3 works by running
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   121
the simple-p2p example as outlined in 4) above, it is
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   122
quite likely that you will want to get started on reading
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   123
some ns-3 documentation. 
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   124
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   125
All of that documentation should always be available from
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   126
the ns-3 website: http:://www.nsnam.org/
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   127
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   128
It includes:
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   129
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   130
  - an architecture document which describes a very 
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   131
    high-level view of ns-3: it tries to explain the
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   132
    use-cases the ns-3 developers really focused on when
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   133
    doing the initial design and then goes on to explain
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   134
    the structure of the resulting framework.
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   135
    XXX introduce url link
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   136
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   137
  - a user manual: XXX
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   138
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   139
  - a wiki for user-contributed tips: http://www.nsnam.org/wiki/
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   140
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   141
  - an API documentation generated using doxygen: this is
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   142
    a reference manual, most likely not very well suited 
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   143
    as introductory text:
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   144
    http://www.nsnam.org/doxygen/index.html
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   145
c55da3a2f496 add reference to architecture document
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 635
diff changeset
   146
6) Working with the development version of ns-3
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   147
-----------------------------------------------
263
618a886c7130 Test of commit access with Mercurial cheat sheet
Tom Henderson <tomh@tomh.org>
parents: 217
diff changeset
   148
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   149
If you want to download and use the development version 
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   150
of ns-3, you need to use the tool 'mercurial'. A quick and
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   151
dirty cheat sheet is included in doc/mercurial.txt but
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   152
reading through the mercurial tutorials included on the
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   153
mercurial website is usually a good idea if you are not
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   154
familiar with it.
314
2a105293177d touch a file
tomh@ubuntu
parents: 263
diff changeset
   155
635
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   156
If you have successfully installed mercurial, you can get
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   157
a copy of the development version with the following
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   158
command:
71b92dfe5f55 write README, contributing.txt, reorganize the other documentation files
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents: 421
diff changeset
   159
"hg clone http://code.nsnam.org/ns-3-dev"