[Ns-developers] [ns3] Availability of output format?
Raj Bhattacharjea
raj.b at gatech.edu
Fri May 23 07:27:45 PDT 2008
On Thu, May 22, 2008 at 12:09 PM, <alrowe at mines.edu> wrote:
> Greetings,
>
> I'm currently working on the newest iteration of the iNSpect project
> (http://toilers.mines.edu/Toilers/NsInspectProject), and would like to add
> the ability to parse and visualize NS-3 wired and wireless trace files. I
> did some minimal digging through the Ns-developers archive, and didn't see a
> concrete description of the output trace file format. If you have a format
> available, or perhaps some sample trace files from NS-3, I would appreciate
> having them so that I can implement NS-3 functionality into iNSpect.
>
> Thanks you for your time,
>
> Alan Rowe
>
NS-3 provides a bunch of trace hooks down in the bowels of the system
which can be selectively hooked into specific trace sink functions to
get whatever information is desired about your simulation. That said,
we have so far provided two premade sets of sinks which do some
formatting and output to file. The first is an ASCII trace which
looks kind of like NS-2 traces, which I describe below. The second is
a libpcap compatible packet capture trace file, which has a well
documented format. Both of these probably have most of the
information you need to visualize wired networks, except perhaps
explicit description of network topology.
If you don't want to download ns-3 and generate some traces, we have a
set of reference traces used for regression testing that you might
find useful: http://code.nsnam.org/ns-3-dev-ref-traces/
If you use the manifest to navigate into a specific example's trace
directory, you'll find both *.pcap and *.tr traces, the latter being
our "ASCII" format. It is in the following format:
1. The first field is the type of event, enqueue, dequeue, or
receive, coded by +,-,r
2. The next field is the timestamp of the event.
3. The next long string is our ns-3 specific path to the event, which
essentially encodes on which network interface of which node the event
occurred, and redundantly encodes the event type as well.
4. What follows is a list of the types of headers that are present on
the packet/frame, encoded as an ns3 class name. Each header type is
followed by some information in parentheses indicating protocol
specific information about that header.
You can use mercurial to get a copy of the references traces, of you
can use the web interface's "raw" option to download a few samples. I
hope this helps!
--
Raj Bhattacharjea
Georgia Institute of Technology
School of Electrical and Computer Engineering
Systems Analyst
404.894.2955
More information about the Ns-developers
mailing list