Underwater Acoustic Network (UAN)

354 views
Skip to first unread message

Andrea Sacco

unread,
Dec 10, 2009, 10:59:27 AM12/10/09
to ns-3-users
Hi everybody, I'm new to this group and to the NS-3 simulator. I would
like to use it to simulate an underwater acoustic network. I've found
a module that implement the acoustic underwater channel and some layer
2 protocols here http://ee.washington.edu/research/funlab/uan/uansim.html
. Does anybody have used it? I've managed to compile the sources from
here http://code.nsnam.org/ltracy/ns-3-dev-uan/ , but I've found no
documentation, anywhere..
Somebody can help me??

Thanks a lot

Andrea

Leonard Tracy

unread,
Dec 14, 2009, 10:26:41 AM12/14/09
to ns-3-...@googlegroups.com
Hi Andrea,

There is documentation of the API in doxygen which you can build.  I'm slowly extending this, but I've been having trouble finding the time.  Please take a look at the provided doxygen, and if you have any specific questions, I'll try to answer promptly.

Thanks,
Leonard



--

You received this message because you are subscribed to the Google Groups "ns-3-users" group.
To post to this group, send email to ns-3-...@googlegroups.com.
To unsubscribe from this group, send email to ns-3-users+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/ns-3-users?hl=en.



Andrea Sacco

unread,
Dec 14, 2009, 11:51:21 AM12/14/09
to ns-3-users
Hi Leonard,
thanks for the help, I thought there was a separate documentation..
I've build the doxygen docs and now I will start to read them. A quick
question, what is the difference between the ns-3-dev-uan and the ns-3-
uan-bh (that don't build..)??

Thanks a lot,
Andrea

P.S. The link http://code.nsnam.org/ltracy/ns-3-dev-uan in the page
http://ee.washington.edu/research/funlab/uan/uansim.html it's wrong,
it gets to http://code.nsnam.org/ltracy/ns-3-dev, it lacks the -uan at
the end.

On 14 Dic, 15:26, Leonard Tracy <lentr...@u.washington.edu> wrote:
> Hi Andrea,
>
> There is documentation of the API in doxygen which you can build.  I'm
> slowly extending this, but I've been having trouble finding the time.
> Please take a look at the provided doxygen, and if you have any specific
> questions, I'll try to answer promptly.
>
> Thanks,
> Leonard
>
> On Thu, Dec 10, 2009 at 7:59 AM, Andrea Sacco <andrea.sacc...@gmail.com>wrote:
>
> > Hi everybody, I'm new to this group and to the NS-3 simulator. I would
> > like to use it to simulate an underwater acoustic network. I've found
> > a module that implement the acoustic underwater channel and some layer
> > 2 protocols herehttp://ee.washington.edu/research/funlab/uan/uansim.html
> > . Does anybody have used it? I've managed to compile the sources from
> > herehttp://code.nsnam.org/ltracy/ns-3-dev-uan/, but I've found no
> > documentation, anywhere..
> > Somebody can help me??
>
> > Thanks a lot
>
> > Andrea
>
> > --
>
> > You received this message because you are subscribed to the Google Groups
> > "ns-3-users" group.
> > To post to this group, send email to ns-3-...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > ns-3-users+...@googlegroups.com<ns-3-users%2Bunsu...@googlegroups.com>
> > .

Leonard Tracy

unread,
Dec 15, 2009, 1:08:51 PM12/15/09
to ns-3-...@googlegroups.com
The other repository was only to test some changes to one of the propagation models (which didn't work out).  The ns-3-dev-uan repository is the one to use.

Thanks,
Leonard


To unsubscribe from this group, send email to ns-3-users+...@googlegroups.com.

Andrea Sacco

unread,
Jan 20, 2010, 8:29:43 PM1/20/10
to ns-3-users
Hi Leonard,
I've been having some troubles with your branch.. Here what's up: I've
managed to checkout and build your code from the ns-3-dev-uan repo.
Now I would like to add the python bindings and all the rest that
comes with ns-3. So I've tried some ways..

1) checkout an ns-3-dev branch and add your module in: I have copied
the uan folder inside the devices floder into the devices folder of
the newly checked out ns-3-dev; I have modified the wscript inside the
src folder to add your module (as described in
http://www.nsnam.org/wiki/index.php/Developer_FAQ#How_to_add_new_ns-3_modules);
when I try to build i get this:

[ 838/1059] cxx: src/devices/uan/uan-test.cc -> build/debug/src/
devices/uan/uan-test_1.o
../src/devices/uan/uan-test.cc:44: error: expected class-name before
‘{’ token
../src/devices/uan/uan-test.cc: In constructor ‘ns3::UanTest::UanTest
()’:
../src/devices/uan/uan-test.cc:61: error: class ‘ns3::UanTest’ does
not have any field named ‘Test’
In file included from debug/ns3/net-device.h:27,
from ../src/devices/uan/uan-net-device.h:26,
from ../src/devices/uan/uan-test.cc:25:
debug/ns3/object.h: In function ‘ns3::Ptr<T> ns3::CreateObject() [with
T = ns3::UanNetDevice]’:
../src/devices/uan/uan-test.cc:86: instantiated from here
debug/ns3/object.h:515: error: cannot allocate an object of abstract
type ‘ns3::UanNetDevice’
../src/devices/uan/uan-net-device.h:46: note: because the following
virtual functions are pure within ‘ns3::UanNetDevice’:
debug/ns3/net-device.h:104: note: virtual void
ns3::NetDevice::SetAddress(ns3::Address)
debug/ns3/net-device.h:137: note: virtual void
ns3::NetDevice::AddLinkChangeCallback(ns3::Callback<void, ns3::empty,
ns3::empty, ns3::empty, ns3::empty, ns3::empty, ns3::empty,
ns3::empty, ns3::empty, ns3::empty>)
Waf: Leaving directory `/home/socket/ns-3-allinone/ns-3-dev/build'
Build failed
-> task failed (err #1):
{task: cxx uan-test.cc -> uan-test_1.o}


If I remove the uan-test.cc from the wscript into the uan folder, then
it compiles without problems. But when I add yours examples I get
another error:

[ 899/1066] cxx: examples/uan/uan-cw-example.cc -> build/debug/
examples/uan/uan-cw-example_1.o
../examples/uan/uan-cw-example.cc:72: error: ‘UanHelper’ has not been
declared
../examples/uan/uan-cw-example.cc:155: error: ‘ns3::Gnuplot2dDataset
Experiment::Run’ is not a static member of ‘class Experiment’
../examples/uan/uan-cw-example.cc:155: error: ‘UanHelper’ was not
declared in this scope
../examples/uan/uan-cw-example.cc:155: error: ‘uan’ was not declared
in this scope
../examples/uan/uan-cw-example.cc:156: error: expected ‘,’ or ‘;’
before ‘{’ token
Waf: Leaving directory `/home/socket/ns-3-allinone/ns-3-dev/build'
Build failed
-> task failed (err #1):
{task: cxx uan-cw-example.cc -> uan-cw-example_1.o}

It seems to miss some dependencies..


2) use the ns-3-allinone: i have used the download.py script to
download your branch and all the others files (nsc,pybindgen,etc.); i
launch the build.py but seems to have some trouble with pybindgen:

[660/730] cxx: build/debug/bindings/python/ns3_module_uan.cc -> build/
debug/bindings/python/ns3_module_uan_3.o
debug/bindings/python/ns3_module_uan.cc: In function ‘int
_wrap_convert_py2c__std__list__lt___ns3__UanPacketArrival___gt__
(PyObject*, std::list<ns3::UanPacketArrival,
std::allocator<ns3::UanPacketArrival> >*)’:
debug/bindings/python/ns3_module_uan.cc:31118: error: no matching
function for call to ‘ns3::UanPacketArrival::UanPacketArrival()’
debug/ns3/uan-transducer.h:49: note: candidates are:
ns3::UanPacketArrival::UanPacketArrival(ns3::Ptr<ns3::Packet>, double,
ns3::UanTxMode, ns3::UanPdp, ns3::Time)
debug/ns3/uan-transducer.h:47: note:
ns3::UanPacketArrival::UanPacketArrival(const ns3::UanPacketArrival&)
Waf: Leaving directory `/home/socket/uan/ns-3-allinone/ns-3-dev-uan/
build'
Build failed
-> task failed (err #1):
{task: cxx ns3_module_uan.cc -> ns3_module_uan_3.o}
Traceback (most recent call last):
File "./build.py", line 117, in <module>
sys.exit(main(sys.argv))
File "./build.py", line 108, in main
build_ns3(config)
File "./build.py", line 56, in build_ns3
run_command(["python", "waf"])
File "/home/socket/uan/ns-3-allinone/util.py", line 24, in
run_command
raise CommandError("Command %r exited with code %i" % (argv,
retval))
util.CommandError: Command ['python', 'waf'] exited with code 1

With the second way, using the --disable-python flag with the ./waf
configure, waf seems to compile everything without problem. I've also
tried to run yours examples, and they run well.

Now my questions, there is a way to get your module working with all
the ns-3 stuff like python bindings?
Can I manage to add your uan module inside an ns-3-dev branch? How I
can do that?

Thanks a lot for your help.

Andrea

On 15 Dic 2009, 19:08, Leonard Tracy <lentr...@u.washington.edu>
wrote:


> The other repository was only to test some changes to one of the propagation
> models (which didn't work out). The ns-3-dev-uan repository is the one to
> use.
>
> Thanks,
> Leonard
>

> On Mon, Dec 14, 2009 at 8:51 AM, Andrea Sacco <andrea.sacc...@gmail.com>wrote:
>
> > Hi Leonard,
> > thanks for the help, I thought there was a separate documentation..
> > I've build the doxygen docs and now I will start to read them. A quick
> > question, what is the difference between the ns-3-dev-uan and the ns-3-
> > uan-bh (that don't build..)??
>
> > Thanks a lot,
> > Andrea
>
> > P.S. The linkhttp://code.nsnam.org/ltracy/ns-3-dev-uanin the page
> >http://ee.washington.edu/research/funlab/uan/uansim.htmlit's wrong,

> > it gets tohttp://code.nsnam.org/ltracy/ns-3-dev, it lacks the -uan at

> > <ns-3-users%2Bunsu...@googlegroups.com<ns-3-users%252Buns...@googlegroups.com>

Reply all
Reply to author
Forward
0 new messages