importing GT-ITM file with BRITE

141 views
Skip to first unread message

Marwa Dammak

unread,
Jan 14, 2015, 9:54:23 AM1/14/15
to ns-3-...@googlegroups.com
hello,
i have a topology generated by GT-ITM and i want to use it with ns3. Therefor , i used BRITE to import the GT-ITM file. However, when i run the code i have an error indicating that the gt-itm file can't be opened:
Importing gtitm...
Parse(): cannot open input file ../BRITE/conf_files/sample_graphs/test.gtitm.
I even used the example "file.gtitm" provided by BRITE but it didn't work. I modified the format to test.alt and it didn't work . Does anyone have an idea where is the problem?
Thanx.

Konstantinos

unread,
Jan 14, 2015, 10:08:06 AM1/14/15
to ns-3-...@googlegroups.com
Hi,

The problem could be simply the path you are using.
When you call WAF to build/run your scenario, you use that folder as base. Is "BRITE/" folder one step before your /waf?

I would suggest to copy your file in the folder you call "./waf" and use it simply with "test.gtitm".

Marwa Dammak

unread,
Jan 15, 2015, 11:01:07 AM1/15/15
to ns-3-...@googlegroups.com
Hi,
 actually the path is as indicated in the configuration file "RTImport_GTITM.conf" and the file "file.gtitm" already exists in that path. BRITE is in the same folder from witch i call WAF. How can i directly run test.gtitm with ./waf? I didn't get it.

Konstantinos

unread,
Jan 15, 2015, 11:10:01 AM1/15/15
to ns-3-...@googlegroups.com
When I say run it as 'test.gtitm' with ./waf, I mean that if the file test.gtitm is in the same folder as ./waf, then when you want to call/use it, the path is simply 'test.gtitm'. 
Now that you have it in a different folder within BRITE, the path should be "./BRITE/<path>/test.gtitm". 

In your first post you had "../BRITE/<path>/test.gtitm" which assumed that BRITE is not in the same folder as /waf but one step back.

Marwa Dammak

unread,
Jan 20, 2015, 11:17:31 AM1/20/15
to ns-3-...@googlegroups.com
hi,
the problem is solved. thank you :)
Unfortunately, after importing the topology i had a problem when dealing with the nodes interfaces.Actually for some nodes there are no interfaces so i add an interface to use. But when i use the command (even for nodes where i already have interfaces) :
Ipv4InterfaceContainer serverInterfaces;
 serverInterfaces = address.Assign (p2pServerDevices);
UdpEchoClientHelper echoClient (serverInterfaces.GetAddress (1), 9);
i got error :
Command ['/home/marwa/tarballs/ns-allinone-3.21/ns-3.21/build/src/brite/examples/ns3.21-brite-generic-example-debug'] terminated with signal SIGSEGV. Run it under a debugger to get more information (./waf --run <program> --command-template="gdb --args %s <args>").
 I couldn't find a solution for this problem. Does any one have a solution?

Konstantinos

unread,
Jan 20, 2015, 11:24:55 AM1/20/15
to ns-3-...@googlegroups.com
Have you run the scenario under the debugger (gdb) or a visual one (e.g. Eclipse/Netbeans) as the output you get suggests?

Marwa Dammak

unread,
Jan 20, 2015, 11:35:38 AM1/20/15
to ns-3-...@googlegroups.com
yes i used gdb but it couldn't find a solution. This this what i got:
Program received signal SIGSEGV, Segmentation fault.
0x000000000040eaa3 in ns3::SimpleRefCount<ns3::Object, ns3::ObjectBase, ns3::ObjectDeleter>::Ref (this=0x1e8480) at ./ns3/simple-ref-count.h:94
94        NS_ASSERT (m_count < std::numeric_limits<uint32_t>::max());

 I understand that  this error means that there is a problem with memory segmentation but i don't know why or how to correct this.

Konstantinos

unread,
Jan 20, 2015, 11:46:50 AM1/20/15
to ns-3-...@googlegroups.com
You should USE the debugger, not just run the script. 
Use the commands it provides (e.g. backtrace, brakepoints etc) to identify the problem.

More probably you are trying to access something that is not there (e.g. from a vector). It could be that there is not interface as you mention in your previous email.
You said "Actually for some nodes there are no interfaces so i add an interface to use". Make sure that the nodes get their interfaces installed. 

Marwa Dammak

unread,
Jan 21, 2015, 11:23:30 AM1/21/15
to ns-3-...@googlegroups.com
As i mentioned , a added interfaces to those nodes and i verified that they are installed in the node by  this function :
int numserver=serverInterfaces.GetN ();
i got the numbre of interfaces aqual to the numbre of interfaces that i added so normally there are interfaces in the server. I will try to find more about the source of the problem with the debugger as you suggested.
Reply all
Reply to author
Forward
0 new messages