Mobile IPv6/NEMO (UMIP) support on ns-3-dce

2,248 views
Skip to first unread message

Hajime Tazaki

unread,
Jul 16, 2012, 9:42:10 PM7/16/12
to ns-3-...@googlegroups.com

Hello,

I have updated the DCE UMIP integration. UMIP is a software
to support Mobile IPv6, NEMO, and so on with the Linux kernel
support, which is already merged in the main-line
kernel. This DCE extension also interact between UMIP
(user-land) and kernel via DCE (ns-3-linux).

The code (helper, example) is available:

http://code.nsnam.org/thehajime/ns-3-dce-umip

For the starter, you can take a look the manual.

http://www.nsnam.org/~thehajime/ns-3-dce-umip/index.html

The helper (Mip6dHelper) now only support (pure) mobile
ipv6 (CMIP6) and network mobility (NEMO), but I plan to add
several methods and example for DSMIPv6 and PMIP6 in the
future (several piece of codes are already checked in).

This code is tested under the following distributions:

Fedora 14 32bits,64bits
Fedora 15 32bits,64bits
Fedora 16 32bits,64bits
Ubuntu 1004 32bits,64bits
Ubuntu 1010 32bits,64bits
Ubuntu 1104 32bits,64bits
Ubuntu 1110 32bits,64bits


Any comments, suggestions, bug reports, and feature requests
are of course welcome!


regards,
hajime

Sahar ZAKI

unread,
Jul 27, 2012, 10:26:24 AM7/27/12
to ns-3-...@googlegroups.com
Hi hajime,

First I would like to thank you so much for your work.

I have a question regarding your update:

1. When I followed all of the instructions mentioned in your manuel, I noticed that the module visualizer is not built. I also noticed that you have removed the visualizing part in your nemo example (comparing to your old version). I obtained while configuring ns-3-dev the following:
Python module pybindgen                                                   : ok 
Checking for pybindgen version                                            : 0.11.0 
pybindgen (found 0.11.0), (need 0.15.0.797)

So I installed the required pybindgen version and the configuration went well BUT the Build has failed. So my question is have you intentially removed the visualizer module from your updated version due to some problems or the problem comes from my side?
Do you know if there is another way to visualize the simulation without using the visualizer module?

Thank you so much again for your help...
Sahar

Goran Shekerov

unread,
Aug 19, 2012, 9:39:06 AM8/19/12
to ns-3-...@googlegroups.com

Hi, 

need a little bit of help, pleaseJ

I can’t manage ro run my own scripts with waf, It's not like in the tutorial, manual..:)

I've followed the instructions and build the ns-3-dce-umip, build finished succesfuly, but when i try, for example (I’ve copied and renamed dce-umip-nemo into mydce-umip-nemo in the example folder):

 

ns-3-dce-umip# ./waf --run example/mydce-umip-nemo           

..

waf: error: no such option: --run

 

(executing  “ns-3-dev#./waf --run scratch/myfirst”  is Ok. )

I’m  able to build myscript only editing wscript, executing  “./waf” and calling the executable from build/bin/.

Is there an easier way to control the source script for building and executing and the destination path for the generated files?

 

By the way - great work , regards,

Goran. 

Till

unread,
Aug 19, 2012, 3:45:27 PM8/19/12
to ns-3-...@googlegroups.com
Hi Goran!
Did you try to copy your script into the scratch folder and execute it in the same way you did it with myfirst?
Regards,
Till
Message has been deleted

Goran Shekerov

unread,
Sep 3, 2012, 9:19:14 PM9/3/12
to ns-3-...@googlegroups.com
Hi Hajime, 
I'm trying to modify your'e dce-umip-cmip example script in order to aggregate the ns3::OnOffApplication in the mobile node but It seems to me that there is some conflict with the native linux network stack.
While executing I get the folowing error: assert failed. cond="socketFactory != 0", file=../src/network/model/socket.cc, line=62
Is it posssible to use the ns3-Applications in the node where the network stack is loaded with dce?

Everything best, Goran
 

Hajime Tazaki

unread,
Sep 4, 2012, 8:00:12 PM9/4/12
to ns-3-...@googlegroups.com

Hi Goran,

Is it posssible to use the ns3-Applications in the node where the network stack is loaded with dce?

No, that is one of missing feature that current DCE doesn't have. 
The following GSoC project, which has no progress so far, exactly matches above feature.


At this moment, we can't use ns-3 applications on the node loads Linux kernel stack.
You can outsource the traffic generator (i.e., OnOffApp) to the other node like NEMO example does.

regards,
hajime
--
You received this message because you are subscribed to the Google Groups "ns-3-users" group.
To view this discussion on the web visit https://groups.google.com/d/msg/ns-3-users/-/hxHG_9RNTbsJ.
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.

Hajime Tazaki

unread,
Sep 4, 2012, 11:59:40 PM9/4/12
to ns-3-...@googlegroups.com

Hi,

sorry to be late.

At Fri, 27 Jul 2012 07:26:24 -0700 (PDT),
Sahar ZAKI wrote:
>
> Hi hajime,
>
> First I would like to thank you so much for your work.
>
> I have a question regarding your update:
>
> 1. When I followed all of the instructions mentioned in your manuel, I
> noticed that the module visualizer is not built. I also noticed that you
> have removed the visualizing part in your nemo example (comparing to your
> old version). I obtained while configuring ns-3-dev the following:
>
> Python module pybindgen : ok
> Checking for pybindgen version : 0.11.0
> pybindgen (found 0.11.0), (need 0.15.0.797)
>
>
> So I installed the required pybindgen version and the configuration went
> well BUT the Build has failed. So my question is have you intentially
> removed the visualizer module from your updated version due to some
> problems or the problem comes from my side?
> Do you know if there is another way to visualize the simulation without
> using the visualizer module?

No, I didn't remove the visualizer support in this module,
though I didn't test with pyviz at this release.
If ns-3-dev is appropriately built/installed, ns-3-dce-umip
can detect visualizer module.

and current build script (wscript) doesn't include linker
indication of visualizer module. so you need to add the link
indication as follows.

- module.add_example(needed = ['core', 'internet', 'dce', 'csma', 'mobility', 'wifi', 'dce-quagga', 'dce-umip'],
+ module.add_example(needed = ['core', 'internet', 'dce', 'csma', 'mobility', 'wifi', 'dce-quagga', 'dce-umip', 'visualizer'],

then, you can use visualizer with configuring several
parameters like follows.

% export PYTHONPATH=../ns-3-dev/build/debug/bindings/python:../ns-3-dev/src/visualizer:../pybindgen-0.15.0.809:../build/lib/python2.6/site-packages
% ./build/bin/dce-umip-cmip6 --SimulatorImplementationType=ns3::VisualSimulatorImpl


regards,
hajime

Renato Martins

unread,
Oct 8, 2012, 10:38:19 AM10/8/12
to ns-3-...@googlegroups.com
Hi Hajime,

I have tried to install your contribution. 
When I run this command ns-3-dce/utils/clone_and_compile_ns3_dce.sh -k, I get the following error.

Launch NS3TEST-DCE
assert failed. cond="handle != 0", msg="Could not open elf-cache/0/libpthread-ns3.so elf-cache/0/libc-ns3.so: version `GLIBC_2.0' not found (required by elf-cache/0/libpthread-ns3.so)", file=../model/cooja-loader-factory.cc, line=225
terminate called without an active exception
ns-3-dce/utils/clone_and_compile_ns3_dce.sh: linha 116:  9151 Abortado                ./build/bin/ns3test-dce --verbose

I need to use your contribution for my thesis. May you help me, please? 

Thanks a lot.

Hajime Tazaki

unread,
Oct 9, 2012, 11:32:58 PM10/9/12
to ns-3-...@googlegroups.com

Hello Renato,

Now I understand you're using i386 system, (I was thinking
you're using 64bits machine...) and your machine has
libc6-amd64 library, for the cross-compilation.

quick hacks for your case are:
1) remove libc6-amd64 package: apt-get remove libc6-amd64
2) patch the attached at ns-3-dce
% cd ns-3-dce
% patch -p1 < wscript.patch
3) wait a bit for upcoming ns-3-dce version :-

thank you for your feedback.

-- Hajime

At Mon, 8 Oct 2012 07:38:19 -0700 (PDT),
Renato Martins wrote:
>
> [1 <text/plain; ISO-8859-1 (7bit)>]
> Hi Hajime,
>
> I have tried to install your contribution.
> When I run this command *ns-3-dce/utils/clone_and_compile_ns3_dce.sh -k, *I
> get the following error.
>
> *Launch NS3TEST-DCE*
> *assert failed. cond="handle != 0", msg="Could not open
> elf-cache/0/libpthread-ns3.so elf-cache/0/libc-ns3.so: version `GLIBC_2.0'
> not found (required by elf-cache/0/libpthread-ns3.so)",
> file=../model/cooja-loader-factory.cc, line=225*
> *terminate called without an active exception*
> *ns-3-dce/utils/clone_and_compile_ns3_dce.sh: linha 116: 9151 Abortado
> ./build/bin/ns3test-dce --verbose*
>
> I need to use your contribution for my thesis. May you help me, please?
>
> Thanks a lot.
>
> --
> You received this message because you are subscribed to the Google Groups "ns-3-users" group.
> To view this discussion on the web visit https://groups.google.com/d/msg/ns-3-users/-/i05F2wr3VxAJ.
> 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.
>
> [2 <text/html; ISO-8859-1 (quoted-printable)>]
>
wscript.patch

Hajime Tazaki

unread,
Oct 11, 2012, 7:52:35 PM10/11/12
to Hajime Tazaki, ns-3-...@googlegroups.com

On 2012/10/10, at 12:32, Hajime Tazaki<theh...@gmail.com> wrote:

> 3) wait a bit for upcoming ns-3-dce version :-

The issue has fixed. You can try again from the beginning.

-- Hajime

Goran Shekerov

unread,
Jan 23, 2013, 6:08:41 PM1/23/13
to ns-3-...@googlegroups.com, Hajime Tazaki

Hi all dce-umip'ers :) 

I'm trying to modify the dce-umip-cmip example script in order to tag packets, but :), when any tagged packet passes a node that has DCE implemented in it -  the tag disappears. 

For example, I’m generating traffic from CN to MN and analyzing the traffic from the WifiNetDevice/Mac/MacRx callback in the MN. Any suggestion how to filter the application flow (application packets) from the rest of the received packets in the MN?

 PS. I’ve successfully compiled MyTag class (MyTag.h and MyTag.cc) in ns3-dev, but J,  it doesn’t work in dce-umip, so I have to put the whole class-code in the running script. What should I do in order to compile the script and use MyTag class members only by #include <ns3/mytag.h> ? 

Best regards, Goran. 

Renato Martins

unread,
Feb 5, 2013, 5:46:11 AM2/5/13
to ns-3-...@googlegroups.com
Hi Hajime,

the manual page of MIPv6 isn't available.
Do you know why?

Thanks very much.

Hajime Tazaki

unread,
Feb 5, 2013, 9:58:43 PM2/5/13
to ns-3-...@googlegroups.com

Hi,

At Tue, 5 Feb 2013 02:46:11 -0800 (PST),
Renato Martins wrote:
>
> [1 <text/plain; ISO-8859-1 (quoted-printable)>]
> Hi Hajime,
>
> the manual page of MIPv6 isn't available.
> Do you know why?

it should work now.
thank you for your report.

-- Hajime

Hajime Tazaki

unread,
Feb 5, 2013, 10:14:04 PM2/5/13
to goran.s...@gmail.com, ns-3-...@googlegroups.com

Hi Goran,

At Wed, 23 Jan 2013 15:08:41 -0800 (PST),
Goran Shekerov wrote:
>
>
>
> Hi all dce-umip'ers :)
>
> I'm trying to modify the dce-umip-cmip example script in order to tag
> packets, but :), when any tagged packet passes a node that has DCE
> implemented in it - the tag disappears.

since DCE uses their own stack (i.e., Linux kernel), tags
appended by ns-3 is removed when packets go to Linux-side,
and no tag information is available after receiving a packet
from Linux (and forwarded up to applications).

> For example, I’m generating traffic from CN to MN and analyzing the traffic
> from the WifiNetDevice/Mac/MacRx callback in the MN. Any suggestion how to
> filter the application flow (application packets) from the rest of the
> received packets in the MN?

I don't know whether you're aware of the following test
program in ns-3-dce-umip, but the
DceUmipTestCase::WifiRxCallback method is what you expected,
though it's a very simple filtering.

http://code.nsnam.org/thehajime/ns-3-dce-umip/file/5c18d1b0d138/test/dce-umip-test.cc#l114

other option might be to extend the existing
ns3::FlowMonitor class with DCE extension and provide
similar feature what FlowMonitor does.

> PS. I’ve successfully compiled MyTag class (MyTag.h and MyTag.cc) in
> ns3-dev, but J, it doesn’t work in dce-umip, so I have to put the whole
> class-code in the running script. What should I do in order to compile the
> script and use MyTag class members only by #include <ns3/mytag.h> ?

did you add your header file (mytag.h) in wsciprt file (of
headers.source section) so that the file will be exported to
others ?

http://www.nsnam.org/docs/release/3.13/manual/html/new-modules.html#step-4-specify-your-module-s-header-files

-- Hajime

Renato Martins

unread,
Feb 8, 2013, 7:39:15 AM2/8/13
to ns-3-...@googlegroups.com
Hi Hajime,

I am trying to install your contribution on Ubuntu 11.10.

When I execute the command

ns-3-dce/utils/clone_and_compile_ns3_dce.sh -k

appear the following error:

Launch NS3TEST-DCE
Waf: Entering directory `/home/renato/test_build_ns3_dce/ns-3-dce/build'
[ 9/304] lib/pkgconfig/libns3-dev-netlink-debug.pc: -> build/lib/pkgconfig/libns3-dev-netlink-debug.pc
[ 90/304] lib/pkgconfig/libns3-dev-dce-debug.pc: -> build/lib/pkgconfig/libns3-dev-dce-debug.pc
[ 93/304] cxx: ../../../../tmp/tmpXtDXUv.cc -> build/__root__/tmp/tmpXtDXUv.cc.13.o
[ 96/304] cxx: ../../../../tmp/tmpV35g6k.cc -> build/__root__/tmp/tmpV35g6k.cc.16.o
[ 97/304] cxxprogram: build/__root__/tmp/tmpV35g6k.cc.16.o build/test/dce-manager-test.cc.14.o build/test/with-kernel.cc.15.o -> build/bin/ns3test-dce-vdl
[224/304] cxx: ../../../../tmp/tmpc0pKie.cc -> build/__root__/tmp/tmpc0pKie.cc.80.o
[225/304] cxxprogram: build/__root__/tmp/tmpc0pKie.cc.80.o build/test/netlink-socket-test.cc.79.o -> build/bin/ns3test-dce-netlink
[289/304] cxxprogram: build/__root__/tmp/tmpXtDXUv.cc.13.o build/test/dce-manager-test.cc.14.o build/test/with-kernel.cc.15.o -> build/bin/ns3test-dce
Waf: Leaving directory `/home/renato/test_build_ns3_dce/ns-3-dce/build'
'build' finished successfully (6.586s)
assert failed. cond="filePath.length () > 0", msg="Stack file 'liblinux.so' not found ! Please check your DCE_PATH environment variable.", file=../model/linux-socket-fd-factory.cc, line=550

terminate called without an active exception
Command ['/home/renato/test_build_ns3_dce/ns-3-dce/build/bin/ns3test-dce', '--verbose'] terminated with signal SIGIOT. Run it under a debugger to get more information (./waf --run <program> --command-template="gdb --args %s <args>").

Can you help me to find the problem?

Thanks very much,
Renato Martins


Hajime Tazaki

unread,
Feb 8, 2013, 9:15:53 AM2/8/13
to ns-3-...@googlegroups.com

At Fri, 8 Feb 2013 04:39:15 -0800 (PST),
Renato Martins wrote:
>
> [1 <text/plain; ISO-8859-1 (7bit)>]
This message means your ns-3-linux wasn't built correctly.
Did you see other messages from the build command
(ns-3-dce/utils/clone_and_compile_ns3_dce.sh -k) ?

-- Hajime

Renato Martins

unread,
Feb 8, 2013, 10:21:00 AM2/8/13
to ns-3-...@googlegroups.com
Thanks for your reply,

The output of the terminal is attached.

at my university we have a proxy server and I don't know if that's the problem, maybe it is blocking downloads from the repository.
myLog.txt

Hajime Tazaki

unread,
Feb 8, 2013, 11:06:31 AM2/8/13
to ns-3-...@googlegroups.com

At Fri, 8 Feb 2013 07:21:00 -0800 (PST),
Renato Martins wrote:
>
> [1 <multipart/alternative (7bit)>]
> [1.1 <text/plain; ISO-8859-1 (7bit)>]
> Thanks for your reply,
>
> The output of the terminal is attached.
>
> at my university we have a proxy server and I don't know if that's the
> problem, maybe it is blocking downloads from the repository.

the following part shows what you expected.

git clone git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git net-next-2.6; cd net-next-2.6 && git reset --hard \
fed66381d65a35198639f564365e61a7f256bf79
git.kernel.org[0: 149.20.20.136]: errno=Connection refused
git.kernel.org[0: 149.20.4.72]: errno=Connection refused
fatal: unable to connect a socket (Connection refused)

probably, git is not available in your machine.
you can download manually instead of using git command.

% cd ns-3-linux
% git clone http://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git net-next-2.6; cd net-next-2.6

use http:// instead of git://.

then,

% make clean
% make config
% make
% cp libnet-next-2.6 ../build/bin/liblinux.so

-- Hajime

Renato Martins

unread,
Feb 10, 2013, 3:04:59 PM2/10/13
to ns-3-...@googlegroups.com
Hi Hajime,

I've tried to install in my home and that problem didn't occur but after that appeared another error when I was tried to install ns3-quagga.

So, I've decided don't use ubuntu 11.10 and continue to use ubuntu 10.04.

Thanks very much.

Hitesh Rathi

unread,
Apr 10, 2013, 11:43:10 AM4/10/13
to ns-3-...@googlegroups.com
Hi Hajime
 I am following all the instructions given in the manual , during the instruction ../bake.py download I received the message....:
>> Downloading pybindgen-user - OK
 >> Downloading elf-loader - OK
 >> Downloading libpcap-dev - OK
 >> Downloading iperf - OK
 >> Downloading libdb-dev - OK
 >> Downloading bison - OK
 >> Downloading flex - OK
 >> Downloading libsysfs-dev - OK
 >> Downloading libssl-dev - OK
 >> Downloading net-next-sim-2.6.36 - OK
 >> Downloading wget - OK
 >> Downloading thttpd - OK
 >> Downloading iputils - OK
 >> Downloading umip - Problem
Subprocess failed with error 128: ['git', 'fetch', '--depth=0']
 > Error:  Unmet critical dependency on module: umip
   For more information call Bake with --debug and/or -vvv (bake --help)

Sir please help me in this regard .Whether i need to install ns3 first  before following the instructions.

Hajime Tazaki

unread,
Apr 10, 2013, 8:10:48 PM4/10/13
to ns-3-...@googlegroups.com

Hi,

Please make it sure that git protocol can be used in your network. 

This is because umip (Mobile IPv6 daemon) is only available via git repository server by git protocol. 

If your firewall blocks git protocol, download umip code elsewhere and put the umip directory under source dir of bake building directory. 

Btw, the installation of ns-3 will be done by this bake command: you don't need to do it by yourself if everything goes fine. 


-- Hajime
--
You received this message because you are subscribed to the Google Groups "ns-3-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+...@googlegroups.com.

To post to this group, send email to ns-3-...@googlegroups.com.

Goran Shekerov

unread,
Jun 9, 2013, 2:15:00 PM6/9/13
to ns-3-...@googlegroups.com, goran.s...@gmail.com

Hi Hajime,

I'm  trying to simulate VoIP and Video in dce-umip  by outsourcing  the onoff application in the CN. My goal is to analyze the VoIP traffic and in that direction  I have to uniquely identify each application packet traversing form CN to MN in order to get the traffic metrics like latency, delay e.t.c.. 
The restrictions from the incompatibility with the current sockets implementation and dce, and also the packet tags didn't solve my problem. You suggested me to extend the ns3::FlowMonitor class with DCE extension but I'm not experienced enough and lacking knowledge to do that.

I came up with an idea to insert an identifier in the payload of the generated application packets by modifying the onoffapplication.cc in ns3-dev:

Instead of
Ptr<Packet> packet = Create<Packet> (m_pktSize);

I've put integer value in the packet by :
uint8_t i=133;

uint8_t * PacketNumberBuffer=&i;

Ptr<Packet> packet = Create<Packet> (PacketNumberBuffer, m_pktSize);

Although the identifier is constant and it's uint8_t type I think that would be solvable. The idea worked well in ns3-dev, but :) at last, here comes the question:

In dce-umip when I try to PeekData from the packet in the trace sink the inserted identifier is zero? I've also noticed that PeekData() in other non-application packets usually returns a value of 51 (I've expected zeroed payload). Also when rebuilding DCE the modified onoffapplication.cc file is renamed in onoffapplication.cc.orig and is replaced with the original onoffapplication.cc file. 

Is it possible in dce-umip to insert identifier in the payload in order to use it for calculating traffic metrics like delay, jitter? Am I doing something wrong?

I don't have any other idea to achieve my goals?

Goran Shekerov

unread,
Jun 15, 2013, 2:47:58 AM6/15/13
to ns-3-...@googlegroups.com
Hi Hajime
hi everybody else.

In order to simulate VoIP using MIPv6 and analyze the traffic metrics, I've read the following in the ns-3 Model Library "Note that, even if you are in the application layer, handling packets, and want to write application data you write it as an ns3::Header..". Although I have very little experience in C++ I'll try this days to implement a  header class and insert a packet identifier wright after the zeroed application payload, hoping that I will succeed to identify the packet in the mobile node.

Didn't anyone succeeded in this before?

Hajime Tazaki

unread,
Jun 17, 2013, 3:02:00 AM6/17/13
to ns-3-...@googlegroups.com, goran.s...@gmail.com

Hi,

At Sun, 9 Jun 2013 11:15:00 -0700 (PDT),
Goran Shekerov wrote:

> I came up with an idea to insert an identifier in the payload of the
> generated application packets by modifying the onoffapplication.cc in
> ns3-dev:
>
> Instead of
> Ptr<Packet> packet = Create<Packet> (m_pktSize);
>
> I've put integer value in the packet by :
> uint8_t i=133;
>
> uint8_t * PacketNumberBuffer=&i;
>
> Ptr<Packet> packet = Create<Packet> (PacketNumberBuffer, m_pktSize);
>
> Although the identifier is constant and it's uint8_t type I think that
> would be solvable. The idea worked well in ns3-dev, but :) at last, here
> comes the question:
>
> In dce-umip when I try to PeekData from the packet in the trace sink the
> inserted identifier is zero? I've also noticed that PeekData() in other
> non-application packets usually returns a value of 51 (I've expected zeroed
> payload). Also when rebuilding DCE the modified onoffapplication.cc file is
> renamed in onoffapplication.cc.orig and is replaced with the original onoffapplication.cc
> file.
>
> Is it possible in dce-umip to insert identifier in the payload in order to
> use it for calculating traffic metrics like delay, jitter? Am I doing
> something wrong?
>
> I don't have any other idea to achieve my goals?


dce-umip itself doesn't restrict any contents of packet
payloads, thus your idea seems to be okay to analyze a set
of packets between MN and CN.

would you mind to share your simulation script and modified
OnOffappcliation so that we can spot the issue that you're
going to solve ?

patesbin.com or gist.github.com would be great to share your
codes.

-- Hajime
Message has been deleted
Message has been deleted

Goran Shekerov

unread,
Jun 27, 2013, 9:39:06 AM6/27/13
to ns-3-...@googlegroups.com, goran.s...@gmail.com
Hi Hajime,
hi everybody,

I've  finally succeeded  to uniquely identify each application packet  using MIPv6 (dce-umip) and now I have all the information I need in order to analyze the VoIP traffic metrics like delay and jitter. Although it took me a pretty much time, considering that Einstein proved that time is relative and I've started from C++ for dumies :) I'm happy to share my work with you.

In the attached rar file there are three folders:
- The folder packetidheader is the implemented module witch is used in order to insert unique identifier in every application packet. It should be placed in ../ns-3.17/src/
- The folder applications contains the modified on-off-application. In the SendPacket () method the application uses and inserts the identification header and correspondingly reduces the payload size by two bytes.
- The folder pihtest contains the modified  dce-umip-cmip.cc script in order to simulate VoIP traffic between MN and CN. It's placed it in 
ns-3-dce/myscripts.
All the corresponding wscripts are in there. Rebuild everything and Voila :). Now we can play with the environment and see why are those unreceived packet intervals in the VoIP traffic.

Thanks to Hajime and Mahieu for their unselfish contribution. 

Hajime, why not another question :), can you please explain in more details what do you mean by "if you wanna configure the “route optimization” for triangle route by Mobile IPv6, you do have to extend Mip6dHelper (mip6d-helper.cc) to generate the following configuration for example: DoRouteOptimizationMN enabled"?

All best, Goran.
dce-umip files attachment 27.06.2013.rar

Goran Shekerov

unread,
Jun 28, 2013, 7:18:30 PM6/28/13
to ns-3-...@googlegroups.com, goran.s...@gmail.com, taz...@sfc.wide.ad.jp
Hi Hajime,
one more question please?

the recent release of umip supports RFC6275, does  dce-umip-1.0 (ns3.17) uses these release or it conforms with RFC3775 because the current status of the documentation is june 2012?

--Goran.

Hajime Tazaki

unread,
Jun 30, 2013, 10:45:12 PM6/30/13
to ns-3-...@googlegroups.com, goran.s...@gmail.com

Hello Goran,

sorry to be late.

At Thu, 27 Jun 2013 06:39:06 -0700 (PDT),
Goran Shekerov wrote:
>
> Hi Hajime,
> hi everybody,
>
> I've finally succeeded to uniquely identify each application packet
> using MIPv6 (dce-umip) and now I have all the information I need in order
> to analyze the VoIP traffic metrics like delay and jitter. Although it took
> me a pretty much time, considering that Einstein proved that time is
> relative and I've started from C++ for dumies :) I'm happy to share my work
> with you.

great.

> In the attached rar file there are three folders:
> - The folder packetidheader is the implemented module witch is used in
> order to insert unique identifier in every application packet. It should be
> placed in ../ns-3.17/src/
> - The folder applications contains the modified on-off-application. In the
> SendPacket () method the application uses and inserts the identification
> header and correspondingly reduces the payload size by two bytes.
> - The folder pihtest contains the modified dce-umip-cmip.cc script in
> order to simulate VoIP traffic between MN and CN. It's placed it in
> ns-3-dce/myscripts.
> All the corresponding wscripts are in there. Rebuild everything and Voila
> :). Now we can play with the environment and see why are those unreceived
> packet intervals in the VoIP traffic.
>
> Thanks to Hajime and Mahieu for their unselfish contribution.

my pleasure.

> Hajime, why not another question :), can you please explain in more details
> what do you mean by "if you wanna configure the “route optimization” for
> triangle route by Mobile IPv6, you do have to extend Mip6dHelper
> (mip6d-helper.cc) to generate the following configuration for example: DoRouteOptimizationMN
> enabled"?

current Mip6dHelper generates only basic configurations for
mip6d. if you would like to use some optional features of
mip6d like route optimization, you may need to extend
Mip6dHelper class to have them. that's what I meant in the
document.

-- Hajime

Hajime Tazaki

unread,
Jun 30, 2013, 10:54:47 PM6/30/13
to goran.s...@gmail.com, ns-3-...@googlegroups.com

Hi Goran,

At Fri, 28 Jun 2013 16:18:30 -0700 (PDT),
Goran Shekerov wrote:
>
> [1 <multipart/alternative (7bit)>]
> [1.1 <text/plain; UTF-8 (7bit)>]
> Hi Hajime,
> one more question please?

sure.

> the recent release of umip supports RFC6275, does dce-umip-1.0 (ns3.17) uses
> these release or it conforms with RFC3775 because the current status of the
> documentation is june 2012?

although the document of 'current status' wasn't updated,
dce-umip-1.0 is based on umip v1.0 (which released on March 2013).

if umip.org supports the RFC (6275), dce-umip also does.

-- Hajime

Goran Shekerov

unread,
Jul 2, 2013, 5:53:26 PM7/2/13
to ns-3-...@googlegroups.com, goran.s...@gmail.com
Hi everybody, 
I want to note that the before mentioned VoIP model is based on (Hassan, Garcia and Burn n.d.) proposal and represents only one side of a two way voice call. It is generated in CN routed through the HA to the MN (this is the case of MIPv6 without route optimization). 
The other flow, that is not included, is supposed to be generated in the MN and is directly routed to CN - triangular routing, (in this case dce restricts the use the ns-3 OnOff application in MN). 
Im, working hard on my master thesis and will share my work with you. If somebody has any experience or ideas about simulating VoIP and Video over MIPv6 and analyzing the traffic metrics is welcomed to share his work.
Best regards, Goran.

Hajime Tazaki

unread,
Jul 4, 2013, 3:12:39 AM7/4/13
to ns-3-...@googlegroups.com, goran.s...@gmail.com

At Tue, 2 Jul 2013 14:53:26 -0700 (PDT),
Goran Shekerov wrote:
>
> [1 <text/plain; ISO-8859-1 (7bit)>]
Hi,

my friends were working on the similar topic in the past.

http://www.asiafi.net/meeting/2010/winterschool/asiafi-papers/afiwinter2010_Adisorn_Lertsinsrubtavee.pdf

# I'm not sure whether this analysis (using ITU-T E model)
meets what you need though.

it'll be so nice if you would share your experience and your
codes/tools for ns-3 once you come up with.

btw, DCE now has a support, called DCE Cradle, using OnOff
application with Linux network stack (over DCE). but it only
works with IPv4 socket at this moment so, your contribution
is also really welcome ;-)

http://www.nsnam.org/docs/dce/release/1.0/manual/html/dce-cradle.html
http://hal.archives-ouvertes.fr/docs/00/78/15/91/PDF/wns3-2013.pdf

-- Hajime

Goran Shekerov

unread,
Jul 6, 2013, 5:17:42 PM7/6/13
to ns-3-...@googlegroups.com

Hi Hajime,

On Thu, Jul 4, 2013 at 9:12 AM, Hajime Tazaki wrote:
...
http://www.asiafi.net/meeting/2010/winterschool/asiafi-papers/afiwinter2010_Adisorn_Lertsinsrubtavee.pdf

# I'm not sure whether this analysis (using ITU-T E model)
  meets what you need though.


This is exactly what I needed, it gave me few ideas and directions for my work, thank you very much. 
 
it'll be so nice if you would share your experience and your
codes/tools for ns-3 once you come up with.

btw, DCE now has a support, called DCE Cradle, using OnOff
application with Linux network stack (over DCE). but it only
works with IPv4 socket at this moment so, your contribution
is also really welcome ;-)

http://www.nsnam.org/docs/dce/release/1.0/manual/html/dce-cradle.html
http://hal.archives-ouvertes.fr/docs/00/78/15/91/PDF/wns3-2013.pdf

-- Hajime

Sadly, I have very little experience in programming and lacking a fundamental understanding of dce-linux implementation (although I've red the Mathieus thesis and every ns--3 documentation I've run across :). Looking at the code in the DCE Cradle patch,  I'm not feeling confident at all, it looks like a mission impossible for me to contribute, but of course I will share my future work and results in the mailing list. Can I help in some other way?

Is it planed for near future to add IPv6 sockets support in DCE Cradle?

Regards, Goran   

Hajime Tazaki

unread,
Jul 8, 2013, 7:36:08 AM7/8/13
to ns-3-...@googlegroups.com

> >> Sadly, I have very little experience in programming and lacking a
> > fundamental understanding of dce-linux implementation (although I've red
> > the Mathieus thesis and every ns--3 documentation I've run across :).
> > Looking at the code in the DCE Cradle patch, I'm not feeling confident at
> > all, it looks like a mission impossible for me to contribute, but of course
> > I will share my future work and results in the mailing list. Can I help in
> > some other way?
> >
> > Is it planed for near future to add IPv6 sockets support in DCE Cradle?

I'll do it in near future, but not well planed yet.

-- Hajime

Peer Azmat Shah

unread,
Aug 11, 2013, 5:55:17 AM8/11/13
to ns-3-...@googlegroups.com
I am trying to install DCE for mobile IPv6 simulation on ns3.
Ns3 is running but when tried to install DCE using this command:

../bake.py configure -e dce-linux-1.0 -e dce-umip-1.0

it gives error
../bake no command found.

How to fix it?

Hajime Tazaki

unread,
Sep 14, 2013, 7:48:57 PM9/14/13
to ns-3-...@googlegroups.com

Hello,

sorry to be late.

At Sun, 11 Aug 2013 02:55:17 -0700 (PDT),
Peer Azmat Shah wrote:
>
> [1 <text/plain; ISO-8859-1 (7bit)>]
> I am trying to install DCE for mobile IPv6 simulation on ns3.
> Ns3 is running but when tried to install DCE using this command:
>
> ../bake.py configure -e dce-linux-1.0 -e dce-umip-1.0
>
> it gives error
> ../bake no command found.

the document has errors. it should be:

bake.py configure -e dce-linux-1.0 -e dce-umip-1.0

if you edited PATH environment variable with where bake is
installed.

# note that we had dce version 1.1 release so, you can also
specify dce-umip-1.1 and dce-linux-1.1 instead.

you can also specify 'full path (or relative path)' to
bake.py like "../bake/bake.py".

-- Hajime
> --
> You received this message because you are subscribed to the Google Groups "ns-3-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+...@googlegroups.com.
> To post to this group, send email to ns-3-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/ns-3-users.
> For more options, visit https://groups.google.com/groups/opt_out.
> [2 <text/html; ISO-8859-1 (quoted-printable)>]
>

Goran Shekerov

unread,
Dec 10, 2013, 7:59:08 PM12/10/13
to ns-3-...@googlegroups.com
Hi Hajime,
hope you doing well.

Just to notice that dce-umip-cmip6 example in ns-3.18.1 compiles  but in the pcap files there are not echo request and reply packets. Also I thihk that  dce-umip-pmip6 example doesn't  compile. Although dce-umip-nemo is OK. I'm ussing ubuntu 10.0.4 x64.
I cant find whats wrong so I'm going back to ns-3.17 :)
I believe that in the next few mounts I'll share my results on the list.

Everything best, Goran.

Hajime Tazaki

unread,
Dec 16, 2013, 3:20:53 AM12/16/13
to ns-3-...@googlegroups.com

At Tue, 10 Dec 2013 16:59:08 -0800 (PST),
Goran Shekerov wrote:
>
> [1 <text/plain; ISO-8859-1 (7bit)>]
>
> >
> > Hi Hajime,
>
> hope you doing well.
>
> Just to notice that dce-umip-cmip6 example in ns-3.18.1 compiles but in
> the pcap files there are not echo request and reply packets. Also I thihk
> that dce-umip-pmip6 example doesn't compile. Although dce-umip-nemo is
> OK. I'm ussing ubuntu 10.0.4 x64.

thank you for the info.

PMIP6 one is meant not to build; it is an example when
someone port PMIP supported umip (I had, but not integrated
into dce).

I confirmed CMIP6 has the issue. it seems to be something
like a timing issue; if I changed like following, it works fine.

diff -r 8804dc9637bc example/dce-umip-cmip6.cc
--- a/example/dce-umip-cmip6.cc Mon Aug 26 18:41:58 2013 +0900
+++ b/example/dce-umip-cmip6.cc Mon Dec 16 17:19:28 2013 +0900
@@ -176,8 +176,8 @@

// For MN
RunIp (mn.Get (0), Seconds (0.11), "link set lo up");
- RunIp (mn.Get (0), Seconds (0.11), "link set sim0 up");
- RunIp (mn.Get (0), Seconds (3.0), "link set ip6tnl0 up");
+ RunIp (mn.Get (0), Seconds (4.11), "link set sim0 up");
+ RunIp (mn.Get (0), Seconds (5.0), "link set ip6tnl0 up");
// RunIp (mn.Get (0), Seconds (3.1), "addr list");


I don't know what this is right now. will see in detail.

thanks.
-- Hajime


> I cant find whats wrong so I'm going back to ns-3.17 :)
> I believe that in the next few mounts I'll share my results on the list.
>
> Everything best, Goran.
>

Goran Shekerov

unread,
Mar 29, 2014, 4:28:21 AM3/29/14
to ns-3-...@googlegroups.com
Hi Hajime, sorry for not sharing in the group, here I come again,

I'v tried everything I can but can't make it. I'm simulating modified version of your dce-umip-cmip script (using dce 1.2, placed the attached mipv6test folder in ../ns-3-dce/myscripts/).
When MN is in the foreign link (l5 in the script) MIPv6 is working fine.
But, when MN is in the home link (l4), AR1 can't reslove MNs CoA and CN can't ping MN? (though AR1 resolves the CoA when the HA defends it while MN is in foreign).
If you are willing to help me, please?

When is expected the new dce 1.3 release :)?

Thanks a lot,
Goran.
mipv6test.tar.gz

Goran Shekerov

unread,
Mar 29, 2014, 4:50:56 AM3/29/14
to ns-3-...@googlegroups.com
Correction :) AR1 can't resolve MNs HoA.
Regards, Goran 

Hajime Tazaki

unread,
Mar 31, 2014, 11:02:51 AM3/31/14
to ns-3-...@googlegroups.com

Hi,

I'm not sure whether this is the reason, but AR1 has two
interfaces with same prefix (2001:4::200::/64).

AddAddress (ar1, Seconds (0.12), "sim1", "2001:4::200:ff:fe00:7/64");
RunIp (ar1, Seconds (0.13), "link set sim1 up");

AddAddress (ar1, Seconds (0.14), "sim2", "2001:4::200:ff:fe00:9/64");
RunIp (ar1, Seconds (0.15), "link set sim2 up");

if you didn't configure a bridge, the packet arrived at sim2
interface won't forwarded to HA (via sim1).

btw, what about having two interfaces at the home agent,
serving wifi with home address and csma interfaces to the ARs ?

-- Hajime

At Sat, 29 Mar 2014 01:28:21 -0700 (PDT),
Goran Shekerov wrote:
>
> [1 <multipart/alternative (7bit)>]
> [1.1 <text/plain; UTF-8 (7bit)>]
> --
> You received this message because you are subscribed to the Google Groups "ns-3-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+...@googlegroups.com.
> To post to this group, send email to ns-3-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/ns-3-users.
> For more options, visit https://groups.google.com/d/optout.
> [1.2 <text/html; UTF-8 (quoted-printable)>]
>
> [2 mipv6test.tar.gz <application/octet-stream (base64)>]
>

Goran Shekerov

unread,
Apr 2, 2014, 2:52:28 PM4/2/14
to ns-3-...@googlegroups.com
Hi Hajime,
first of all thank you very much for your support and help!!!

I've finally make it:) I've put L2 bridge between AR1 and HA hosting the Access Point in the Home Network and it worked out :) The script is attached if someone can use it.

P.S. I've tried to host the wifi AP in HA (bridging the HA devices) but it didn't worked for me.

Thanks a lot :)

Few questions of course :)

I got MIPv6 handover delay, when moving from home to foreign network, of about 6 seconds. Whats is your experience, isn't it bit too much?

What is the plan about releasing dce 1.3?

Greetings,
Goran.


 




mipv6test.cc

Hajime Tazaki

unread,
Apr 3, 2014, 5:06:39 AM4/3/14
to ns-3-...@googlegroups.com

Hi,

At Wed, 2 Apr 2014 11:52:28 -0700 (PDT),
Goran Shekerov wrote:
>
> [1 <multipart/alternative (7bit)>]
> [1.1 <text/plain; UTF-8 (7bit)>]
> Hi Hajime,
> first of all thank you very much for your support and help!!!
>
> I've finally make it:) I've put L2 bridge between AR1 and HA hosting the
> Access Point in the Home Network and it worked out :) The script is
> attached if someone can use it.
>
> P.S. I've tried to host the wifi AP in HA (bridging the HA devices) but it
> didn't worked for me.
>
> Thanks a lot :)

nice.

> Few questions of course :)
>
> I got MIPv6 handover delay, when moving from home to foreign network, of
> about 6 seconds. Whats is your experience, isn't it bit too much?

if I remember correctly, it's almost the same.
since ours do not have layer 2 indications (link up/down
notifications), movement detection is not so fast, depending
on the timeout of RA, then update binding registration after
handoff. so that would be reasonable duration though it's a
bit long.

you may be interested to analyze pcap during the handoff
which part takes long.

> What is the plan about releasing dce 1.3?

we plan to release it on coming April. more information will
be available at:

https://www.nsnam.org/wiki/Dce-1.3

-- Hajime

Gaurav Gupta

unread,
Jul 8, 2014, 2:22:53 PM7/8/14
to ns-3-...@googlegroups.com

Hi Hajime,

Thanks for the dce in ns3 and i have installed the dce 1.2  in ubuntu 14.04 to simulate mipv6 and thanks for the good documentation
I want to ask u that if we can use netanim  to check the animation of mipv6 file because then only we can get the packet flow

reply as soon as possible

Message has been deleted

Alexandre Vargas

unread,
Aug 26, 2014, 2:17:03 PM8/26/14
to ns-3-...@googlegroups.com
Hi Goran Shekerov,

I installed Ubuntu 14.04 (64bits), also ns-allinone-3.20 and DCE 1.3, so I tried use your code MIPv6, but I received error message, according below:

root@vargas:/home/vargas/repos_0/ns-allinone-3.20/ns-3.20# ./waf --run mipv6test
Waf: Entering directory `/home/vargas/repos_0/ns-allinone-3.20/ns-3.20/build'
[ 838/2185] cxx: scratch/test1.cc -> build/scratch/test1.cc.1.o
../scratch/test1.cc: In member function ‘virtual void MobilityTraceTestCase::DoRun()’:
../scratch/test1.cc:91:15: error: ‘NS_TEST_SOURCEDIR’ was not declared in this scope
   SetDataDir (NS_TEST_SOURCEDIR);
               ^
Waf: Leaving directory `/home/vargas/repos_0/ns-allinone-3.20/ns-3.20/build'
Build failed
 -> task in 'test1' failed (exit status 1): 
{task 3062897548L: cxx test1.cc -> test1.cc.1.o}
['/usr/bin/g++', '-O0', '-ggdb', '-g3', '-Wall', '-Werror', '-Wno-error=deprecated-declarations', '-fstrict-aliasing', '-Wstrict-aliasing', '-pthread', '-pthread', '-I.', '-I..', '-I/usr/include/gtk-2.0', '-I/usr/lib/i386-linux-gnu/gtk-2.0/include', '-I/usr/include/atk-1.0', '-I/usr/include/cairo', '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', '-I/usr/include/glib-2.0', '-I/usr/lib/i386-linux-gnu/glib-2.0/include', '-I/usr/include/pixman-1', '-I/usr/include/libpng12', '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '-DHAVE_SYS_IOCTL_H=1', '-DHAVE_IF_NETS_H=1', '-DHAVE_NET_ETHERNET_H=1', '-DHAVE_PACKET_H=1', '-DHAVE_IF_TUN_H=1', '-DHAVE_GSL=1', '../scratch/test1.cc', '-c', '-o', 'scratch/test1.cc.1.o']
root@vargas:/home/vargas/repos_0/ns-allinone-3.20/ns-3.20#

I don't found in code "NS_TEST_SOURCEDIR’ was not declared in this scope SetDataDir (NS_TEST_SOURCEDIR)".

Could you please help me to solve it?

Thanks in advance!

Alexandre Amador


 Goran Shekero

Alexandre Vargas

unread,
Aug 26, 2014, 3:25:15 PM8/26/14
to ns-3-...@googlegroups.com
Hi,

I installed in Ubuntu 14.04 (32bits) and same error:

I installed in both version (32/64bits):

repos_0 - ns-allinone-3.20 (ns-allinone-3.20.tar.bz2)
repos_1 - dce-1.3
repos_2 - umip

May you help me about it?

King regards,
Alexandre Amador

Hajime Tazaki

unread,
Sep 4, 2014, 8:13:06 PM9/4/14
to ns-3-...@googlegroups.com

hi,

if you want to try dce-umip, I'd suggest to use bake to
build it.

http://www.nsnam.org/docs/dce/release/1.3/manual-umip/html/getting-started.html#getting-started

% bake.py configure -e dce-linux-1.3 -e dce-umip-1.3

hope that helps.

-- Hajime

At Tue, 26 Aug 2014 12:25:15 -0700 (PDT),
Alexandre Vargas wrote:
>
> [1 <text/plain; UTF-8 (quoted-printable)>]
> --
> You received this message because you are subscribed to the Google Groups "ns-3-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+...@googlegroups.com.
> To post to this group, send email to ns-3-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/ns-3-users.
> For more options, visit https://groups.google.com/d/optout.
> [2 <text/html; UTF-8 (quoted-printable)>]
>

Alexandre Vargas

unread,
Sep 5, 2014, 10:30:53 PM9/5/14
to ns-3-...@googlegroups.com
Hi Hajime,

I try that you told, but...

Take looking:

Before all steps accomplished.

root@vargas:/home/vargas/repos_0/bake/source/ns-3-dce# ./test.py -s dce-umip
Traceback (most recent call last):
  File "./test.py", line 1943, in <module>
    sys.exit(main(sys.argv))
  File "./test.py", line 1940, in main
    return run_tests()
  File "./test.py", line 1017, in run_tests
    read_waf_config()
  File "./test.py", line 555, in read_waf_config
    for line in open(".lock-waf_" + sys.platform + "_build", "rt"):
IOError: [Errno 2] No such file or directory: '.lock-waf_linux2_build'


May you help me?

Kind regards,
Alexandre Amador


>

--
You received this message because you are subscribed to a topic in the Google Groups "ns-3-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ns-3-users/SJl_9bl-Cm0/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ns-3-users+...@googlegroups.com.

Alexandre Vargas

unread,
Sep 8, 2014, 8:42:02 PM9/8/14
to ns-3-...@googlegroups.com
Hi Hajime,

I would like to test with MIPv6 (Mobile IPv6) and PMIPv6 (Proxy Mobile IPv6) in NS3, but there is always something to complement or proceed to completion and prevents the use of existing models. 

I found this UMIP project as an example of MIPv6, but I would only use NS3. 

I would like some help to perform these tests, if possible? 

Kind regards,
Alexandre



Hajime Tazaki

unread,
Sep 12, 2014, 2:41:40 AM9/12/14
to ns-3-...@googlegroups.com

> > http://www.nsnam.org/docs/dce/release/1.3/manual-umip/html/getting-started.html#getting-started
> >
> > % bake.py configure -e dce-linux-1.3 -e dce-umip-1.3

sorry my suggestion was not enough to explain..

I meant you should build it after bake configuration (above)
like this.

% bake.py download
% bake.py build

the error you faced is simply due to missing build phase.
please try it again.

-- Hajime

At Fri, 5 Sep 2014 23:30:25 -0300,

Hajime Tazaki

unread,
Sep 12, 2014, 2:46:48 AM9/12/14
to ns-3-...@googlegroups.com
At Mon, 8 Sep 2014 21:41:34 -0300,
Alexandre Vargas wrote:
>
> [1 <text/plain; UTF-8 (quoted-printable)>]
> Hi Hajime,
>
> I would like to test with MIPv6 (Mobile IPv6) and PMIPv6 (Proxy Mobile
> IPv6) in NS3, but there is always something to complement or proceed to
> completion and prevents the use of existing models.
>
> I found this UMIP project as an example of MIPv6, but I would only use NS3.

I guess there was PMIPv6 model for ns-3 but it seems to be a
bit outdated. I'm only aware of UMIP version of pmip6, which
was not integrated for DCE.

http://www.umip.org/contrib/umip-pmipv6.html


-- Hajime

Alexandre Vargas

unread,
Sep 12, 2014, 8:58:24 AM9/12/14
to ns-3-...@googlegroups.com

Hi Hajime,

So sorry I don't said my objective. I'm doing final test on my university and I would like show compares between MIPv6 and PMIPv6.

I try that told.

Thanks a lot again

Kind regards
Alexandre

Gaurav Gupta

unread,
Sep 15, 2014, 1:00:46 AM9/15/14
to ns-3-...@googlegroups.com
Hi Hajime 

I am working on Security Issues in Mobile IPv6 and I want to ask whether we have any security implementation in ns3-dce 1.3 or in any version like RRP or CGA or we have to design from scratch and how much support is available for that 

Alexandre Vargas

unread,
Sep 17, 2014, 8:23:24 PM9/17/14
to ns-3-...@googlegroups.com
Hi Hajime,

I tried and tried... but I cant implemation with Ubuntu 14.10 64bits, I belived that didn't work because de kernel version. So I don't give up yet.
I installed Ubuntu 11.10 and modify the "source.list" file, installed according the documentation (http://www.nsnam.org/docs/dce/manual-umip/html/getting-started.html), so on the last step

root@vargas1:/home/vargas/repos_0/dce# uname -a
Linux vargas1 3.0.0-12-generic #20-Ubuntu SMP Fri Oct 7 14:50:42 UTC 2011 i686 i686 i386 GNU/Linux
--> Ubuntu 11.10 Oneric 32Bits
bake.py build
Show to me theses error (1 problem and 1 error)

%bake.py build

>> Building pybindgen-0.17.0.868 - Problem
   > Subprocess failed with error 1: ['/home/vargas/repos_0/dce/source/pybindgen-0.17.0.868/waf', 'configure', '--prefix=/home/vargas/repos_0/dce/build']
 > Problem: Optional dependency, module "pybindgen-0.17.0.868" failed
   This may reduce the  functionality of the final build. 
   However, bake will continue since "pybindgen-0.17.0.868" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

(resume)
>> Building iperf - OK
 >> Building net-next-sim-2.6.36 - OK
 >> Building wget - OK
 >> Building thttpd - OK
 >> Building umip - OK
 >> Building elf-loader - OK
 >> Building netanim-3.105 - OK
 >> Building ccnx - O

 >> Building iproute-2.6.38-fix-01 - Problem
   > Patch file is not present! missing file: /home/vargas/repos_0/dce/source/iproute-2.6.38-fix-01/../ns-3-dce/utils/iproute-2.6.38-fix-01.patch, in: iproute-2.6.38-fix-01
 > Error:  Critical dependency, module "iproute-2.6.38-fix-01" failed 
   For more information call Bake with --debug and/or -v, -vvv, for full verbose mode (bake --help)

#########################################
--debug (information)

Follow up ""%./bake.py --debug build
root@vargas1:/home/vargas/repos_0/dce# /home/vargas/repos_0/bake/bake.py --debug build
 >> Building pybindgen-0.17.0.868 - Problem

TaskError: <bake.Exceptions.TaskError instance at 0xa1d55cc>

  File "/home/vargas/repos_0/bake/bake/Module.py", line 423, in build
    self._build.build(env, jobs)
  File "/home/vargas/repos_0/bake/bake/ModuleBuild.py", line 414, in build
    env=self._env(env.objdir))
  File "/home/vargas/repos_0/bake/bake/ModuleEnvironment.py", line 533, in run
    raise TaskError('Subprocess failed with error %d: %s' % (retcode, str(args)))
 > Problem: Optional dependency, module "pybindgen-0.17.0.868" failed
   This may reduce the  functionality of the final build. 
   However, bake will continue since "pybindgen-0.17.0.868" is not an essential dependency.
   For more information call bake with -v or -vvv, for full verbose mode.

(resume)
>> Building iperf - OK
 >> Building net-next-sim-2.6.36 - OK
 >> Building wget - OK
 >> Building thttpd - OK
 >> Building umip - OK
 >> Building elf-loader - OK
 >> Building netanim-3.105 - OK
 >> Building ccnx - OK

>> Building iproute-2.6.38-fix-01 - Problem

TaskError: <bake.Exceptions.TaskError instance at 0xa03de2c>

  File "/home/vargas/repos_0/bake/bake/Module.py", line 421, in build
    self._build.threat_patch(env, self._build.attribute('patch').value)
  File "/home/vargas/repos_0/bake/bake/ModuleBuild.py", line 172, in threat_patch
    ' %s, in: %s' % (item, env._module_name))
 > Error:  Critical dependency, module "iproute-2.6.38-fix-01" failed 

DependencyUnmet: <bake.Dependencies.DependencyUnmet instance at 0xa166e4c>

  File "/home/vargas/repos_0/bake/bake/Bake.py", line 569, in _iterate
    deps.resolve(targets)
  File "/home/vargas/repos_0/bake/bake/Dependencies.py", line 188, in resolve
    self._resolve_serial(targets, callback)
  File "/home/vargas/repos_0/bake/bake/Dependencies.py", line 404, in _resolve_serial
    finished = self._resolve_one_iteration(targets, callback)
  File "/home/vargas/repos_0/bake/bake/Dependencies.py", line 382, in _resolve_one_iteration
    raise DependencyUnmet(i.dst(), tailError)

Please, may you help me?

Thanks in advance!

Alexandre Vargas

2014-09-15 2:00 GMT-03:00 Gaurav Gupta <gauravg...@gmail.com>:
Hi Hajime 

I am working on Security Issues in Mobile IPv6 and I want to ask whether we have any security implementation in ns3-dce 1.3 or in any version like RRP or CGA or we have to design from scratch and how much support is available for that 

--

Hajime Tazaki

unread,
Sep 17, 2014, 8:51:52 PM9/17/14
to ns-3-...@googlegroups.com

Hi,

I assumed you used 'bake.py configure -e dce-linux-1.3'.
I have mistaken to update bakeconf.xml: now I fixed it and
it should be fine.

please download bake again and build dce-linux-1.3 again.

% hg clone http://code.nsnam.org/bake

-- Hajime

At Wed, 17 Sep 2014 21:22:50 -0300,
Alexandre Vargas wrote:
>
> [1 <text/plain; UTF-8 (7bit)>]
> You received this message because you are subscribed to the Google Groups "ns-3-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to ns-3-users+...@googlegroups.com.
> To post to this group, send email to ns-3-...@googlegroups.com.
> Visit this group at http://groups.google.com/group/ns-3-users.
> For more options, visit https://groups.google.com/d/optout.
> [2 <text/html; UTF-8 (quoted-printable)>]
>

Alexandre Vargas

unread,
Sep 17, 2014, 9:24:59 PM9/17/14
to ns-3-...@googlegroups.com
Hi,

Restart!

root@vargas1:/home/vargas# rm -R repos_0/
root@vargas1:/home/vargas# mkdir repos_0
oot@vargas1:/home/vargas/repos_0# hg clone http://code.nsnam.org/bake
diretório de destino: bake
pedindo todas as mudanças
adicionando revisões
adicionando manifestos
adicionando mudanças em arquivos
adicionadas 330 revisões com 786 mudanças em 63 arquivos
atualizando para o ramo default
45 arquivos atualizados, 0 arquivos mesclados, 0 arquivos removidos, 0 arquivos não resolvidos
root@vargas1:/home/vargas/repos_0# ls
bake
root@vargas1:/home/vargas/repos_0# export BAKE_HOME=`pwd`/bake
root@vargas1:/home/vargas/repos_0# export PATH=$PATH:$BAKE_HOME
root@vargas1:/home/vargas/repos_0# export PYTHONPATH=$PYTHONPATH:$BAKE_HOME
root@vargas1:/home/vargas/repos_0# mkdir dce
root@vargas1:/home/vargas/repos_0# cd dce
root@vargas1:/home/vargas/repos_0/dce# bake.py configure -e dce-linux-1.3
root@vargas1:/home/vargas/repos_0/dce# bake.py download
 >> Searching for system dependency libpcap-dev - OK
 >> Searching for system dependency libexpat-dev - OK
 >> Downloading iperf - OK
 >> Searching for system dependency libdb-dev - OK
 >> Searching for system dependency bison - OK
 >> Searching for system dependency flex - OK
 >> Searching for system dependency libssl-dev - OK
 >> Downloading net-next-sim-2.6.36 (target directory:net-next-sim-2.6.36) - Problem
 > Error:  Critical dependency, module "net-next-sim-2.6.36" failed 

Have you other idea?

Thanks in advance

Alexandre Vargas

unread,
Sep 18, 2014, 10:07:10 PM9/18/14
to ns-3-...@googlegroups.com
I got...

FIRST
root@vargas1:/home/vargas/repos_0/dce# bake.py download
 >> Searching for system dependency libpcap-dev - OK
 >> Searching for system dependency libexpat-dev - OK
 >> Downloading iperf - (Nothing to do, source directory already exists) - OK
 >> Searching for system dependency libdb-dev - OK
 >> Searching for system dependency bison - OK
 >> Searching for system dependency flex - OK
 >> Searching for system dependency libssl-dev - OK
 >> Downloading net-next-sim-2.6.36 (target directory:net-next-sim-2.6.36) - (Nothing to do, source directory already exists) - OK
 >> Downloading wget - (Nothing to do, source directory already exists) - OK
 >> Downloading thttpd - (Nothing to do, source directory already exists) - OK
 >> Searching for system dependency python-dev - OK
 >> Searching for system dependency pygraphviz - OK
 >> Searching for system dependency pygoocanvas - OK
 >> Downloading pybindgen-0.17.0.868 - (Nothing to do, source directory already exists) - OK
 >> Searching for system dependency g++ - OK
 >> Searching for system dependency qt4 - OK
 >> Searching for system dependency libc-debug - OK
 >> Downloading ccnx - (Nothing to do, source directory already exists) - OK
 >> Downloading iproute-2.6.38 - (Nothing to do, source directory already exists) - OK
 >> Downloading elf-loader - (Nothing to do, source directory already exists) - OK
 >> Downloading netanim-3.105 - (Nothing to do, source directory already exists) - OK
 >> Downloading ns-3.20 - (Nothing to do, source directory already exists) - OK
 >> Downloading dce-meta-1.3 (target directory:ns-3-dce) - (Nothing to do, source directory already exists) - OK
 >> Downloading dce-linux-1.3 (target directory:ns-3-dce) - (Nothing to do, source directory already exists) - OK

SECOND 
root@vargas1:/home/vargas/repos_0/dce# bake.py build

... COMPLETE

And I will test according bellow:

root@vargas1:/home/vargas/repos_0/dce/source/ns-3-dce# ./test.py -c core
Waf: Entering directory `/home/vargas/repos_0/dce/source/ns-3-dce/build'
[ 10/361] lib/pkgconfig/libns3-dev-netlink-debug.pc:  -> build/lib/pkgconfig/libns3-dev-netlink-debug.pc
[115/361] lib/pkgconfig/libns3-dev-dce-debug.pc:  -> build/lib/pkgconfig/libns3-dev-dce-debug.pc
Waf: Leaving directory `/home/vargas/repos_0/dce/source/ns-3-dce/build'
'build' finished successfully (0.764s)
PASS: TestSuite netlink-socket
PASS: TestSuite process-manager
PASS: TestSuite dce-cradle
PASS: TestSuite dce-mptcp
4 of 4 tests passed (4 passed, 0 skipped, 0 failed, 0 crashed, 0 valgrind errors)

-- So for now... How I test MIPv6?

Regards,
Alexandre Vargas


Hajime Tazaki

unread,
Sep 21, 2014, 9:03:21 AM9/21/14
to ns-3-...@googlegroups.com

you need to configure with dce-umip-1.3 and dce-linux-1.3.

% bake.py configure -e dce-linux-1.3 -e dce-umip-1.3

please read the manual again.

http://www.nsnam.org/docs/dce/release/1.4/manual-umip/html/getting-started.html#getting-started

-- Hajime

At Thu, 18 Sep 2014 23:06:42 -0300,

Gaurav Gupta

unread,
Sep 21, 2014, 9:34:43 AM9/21/14
to ns-3-...@googlegroups.com
Hi Hajime,

can we implement any security method for mobile ipv6 in dce-ns3 

--
You received this message because you are subscribed to a topic in the Google Groups "ns-3-users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ns-3-users/SJl_9bl-Cm0/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ns-3-users+...@googlegroups.com.
To post to this group, send email to ns-3-...@googlegroups.com.
Visit this group at http://groups.google.com/group/ns-3-users.
For more options, visit https://groups.google.com/d/optout.



--
GAURAV GUPTA
PC M.Tech. CSE-IS
09414381544
NITK SURATHKAL

Hajime Tazaki

unread,
Sep 21, 2014, 10:15:37 AM9/21/14
to ns-3-...@googlegroups.com

At Sun, 14 Sep 2014 22:00:46 -0700 (PDT),
Gaurav Gupta wrote:
>
> [1 <text/plain; UTF-8 (7bit)>]
>
> >
I'm not aware of any implementation on CGA with umip.
You may ask on the umip mailing list for more detail.

ns-3-dce-umip just provides a bridge to utilize umip
application on top of ns-3; if you want to extend some
feature on mip6 or nemo, you need to extend umip.

-- Hajime

Alexandre Vargas

unread,
Sep 21, 2014, 1:00:15 PM9/21/14
to ns-3-...@googlegroups.com
Hi Hajime,

I restarted again... I tested - All that's ok!

root@vargas1:/home/vargas/repos_0/dce/source/ns-3-dce# ./test.py -s dce-umip
Waf: Entering directory `/home/vargas/repos_0/dce/source/ns-3-dce/build'
[ 12/405] lib/pkgconfig/libns3-dev-netlink-debug.pc:  -> build/lib/pkgconfig/libns3-dev-netlink-debug.pc
[117/405] lib/pkgconfig/libns3-dev-dce-debug.pc:  -> build/lib/pkgconfig/libns3-dev-dce-debug.pc
[135/405] lib/pkgconfig/libns3-dev-dce-umip-debug.pc:  -> build/myscripts/ns-3-dce-umip/lib/pkgconfig/libns3-dev-dce-umip-debug.pc
[168/405] lib/pkgconfig/libns3-dev-dce-quagga-debug.pc:  -> build/myscripts/ns-3-dce-quagga/lib/pkgconfig/libns3-dev-dce-quagga-debug.pc
Waf: Leaving directory `/home/vargas/repos_0/dce/source/ns-3-dce/build'
'build' finished successfully (0.516s)
PASS: TestSuite dce-umip
1 of 1 tests passed (1 passed, 0 skipped, 0 failed, 0 crashed, 0 valgrind errors)
root@vargas1:/home/vargas/repos_0/dce/source/ns-3-dce# 

I am without words to thank you! Thanks a lot!

So I have one doubt about PMIPv6. About the installation PMIPv6. Installing it should be along with MIPv6 (tested above), or in another Virtual Machine in new installation linux (Ubuntu 11.10)?

Kind regards,
Alexandre Vargas

Message has been deleted

Gaurav Gupta

unread,
Oct 3, 2014, 11:24:23 PM10/3/14
to ns-3-...@googlegroups.com
Hi hajime

Can you tell me how to enable RouteOptimization in dce-ns3 and if u have already enabled can u upload your mip6d-helper.cc file 

thanks in advance

Fayruz Rahma

unread,
Nov 2, 2014, 5:28:27 AM11/2/14
to ns-3-...@googlegroups.com
Hi guys,

I'm a newbie here.
I installed ns-3-dce (ns3.21, dce-ns3-1.4) using bake on Ubuntu 14.04 (on VirtualBox) and encountered a problem when trying to simulate dce-umip-nemo.cc

When I executed:
./waf --run dce-umip-nemo

'build' finished successfully, there was no error message, but there was no output like the one showed here: http://www.nsnam.org/docs/dce/manual-umip/html/getting-started.html

There were some pcap files created, but those files showed that no ping packet had been sent from MNN to CN.
Only Router Solicitation messages had been passed between the nodes. The source & destination IPv6 addresses of the nodes are not even close with the configured addresses. (example: the source address recorded in pcap is fe80::200:ff:fe00:8. In the script, the source address' prefix should be 2001:1:2::0)

I also try to visualize the simulation by executing:
./waf --run dce-umip-nemo --vis

The visualization of simulation showed the same: in the first 10 seconds the nodes exchanged some messages, then MR sent Router Solicitation message to ARs. No ping packet sent from MNN to MR after 20 seconds.

Can you help me, why I got this kind of result?
Is it because I'm using DCE on virtualbox?
Or, from where I should start the troubleshooting process?

I attached some of the pcap files for your information.

Thank you so much for your kind attention.

Regards,
Fayruz
dce-umip-nemo-2-1.pcap
dce-umip-nemo-5-0.pcap
dce-umip-nemo-3-1.pcap
dce-umip-nemo-1-1.pcap

Hajime Tazaki

unread,
Nov 6, 2014, 8:59:43 AM11/6/14
to ns-3-...@googlegroups.com

At Sun, 21 Sep 2014 13:59:43 -0300,
Alexandre Vargas wrote:

> So I have one doubt about PMIPv6. About the installation PMIPv6. Installing
> it should be along with MIPv6 (tested above), or in another Virtual Machine
> in new installation linux (Ubuntu 11.10)?

you should use dce-umip (tested above).

you may need to manually apply patches, explained in the
following document if you want to use PMIPv6.

http://umip.org/contrib/umip-pmipv6.html

-- Hajime

Hajime Tazaki

unread,
Nov 6, 2014, 9:02:33 AM11/6/14
to ns-3-...@googlegroups.com

At Fri, 3 Oct 2014 20:24:23 -0700 (PDT),
Gaurav Gupta wrote:
>
> [1 <text/plain; UTF-8 (7bit)>]
> Hi hajime
>
> Can you tell me how to enable RouteOptimization in dce-ns3 and if u have
> already enabled can u upload your mip6d-helper.cc file

I don't have updated mip6-helper for RouteOptimization
option.

but you can use hand-written mip6d.conf with a method
ns3::Mip6dHelper::UseManualConfig(), containing
RouteOptimization configuration.

http://www.nsnam.org/docs/dce/doxygen/classns3_1_1_mip6d_helper.html#a6398182877ae31acd8f858acd0293e27

-- Hajime

Goran Shekerov

unread,
May 3, 2015, 5:32:29 PM5/3/15
to ns-3-...@googlegroups.com
"Sarah SANFILIPPO
Hi,

Please can you tell me why when you went to use an application other than the ping you configure the address without the function RUNIP why did TCP UDP .. not work if we confieur CN node with RUNIP et Adress"



Hi,
I did this in june 2014 using dce-umip 1.2 so there was not support for IPv6 sockets in DCE. 

The ping application is dce-application and it uses dce-linux TCP/IP stack. The ns3 OnOff application is native ns3 application, and because the lack of  IPv6 sockets (in that time) it was used with native ns3 TCP/IP stack. 

From dce 1.3 on dce-creadle has support for IPv6 sockets and native ns3 applications can be used with dce-linux TCP/IP stack.

Greetings to Hajime.

Everything best, Goran

Sarah San

unread,
May 4, 2015, 5:13:26 AM5/4/15
to ns-3-...@googlegroups.com
Thank you Goran

vahid Saber

unread,
Nov 23, 2015, 6:05:52 AM11/23/15
to ns-3-users
It has been a while since the last platform test report and it would be worthwhile to mention which version of ubuntu(or anything else) works with which version of dce and umip. This worked for me:
*used ubuntu 11.10 32 bit. this is a very old version. you must follow thiese instructions before you can even start downloading prerequisites: http://askubuntu.com/questions/91815/how-to-install-software-or-upgrade-from-an-old-unsupported-release   
*bake.py configure -e dce-linux-1.3 -e dce-umip-1.3
*if iputils build failed, you may need to do this: 
cp source/ns-3-dce/myscripts/ns-3-dce-quagga/utils/iputils-ping6.patch source/iputils/../ns-3-dce/utils

Still, it is better hajime give us the laest buildable version combinations.
vahid



On Tuesday, July 17, 2012 at 3:42:10 AM UTC+2, Hajime wrote:

Hello,

I have updated the DCE UMIP integration. UMIP is a software
to support Mobile IPv6, NEMO, and so on with the Linux kernel
support, which is already merged in the main-line
kernel. This DCE extension also interact between UMIP
(user-land) and kernel via DCE (ns-3-linux).

The code (helper, example) is available:

http://code.nsnam.org/thehajime/ns-3-dce-umip

For the starter, you can take a look the manual.

http://www.nsnam.org/~thehajime/ns-3-dce-umip/index.html

The helper (Mip6dHelper) now only support (pure) mobile
ipv6 (CMIP6) and network mobility (NEMO), but I plan to add
several methods and example for DSMIPv6 and PMIP6 in the
future (several piece of codes are already checked in).

This code is tested under the following distributions:

Fedora 14 32bits,64bits
Fedora 15 32bits,64bits
Fedora 16 32bits,64bits
Ubuntu 1004 32bits,64bits
Ubuntu 1010 32bits,64bits
Ubuntu 1104 32bits,64bits
Ubuntu 1110 32bits,64bits


Any comments, suggestions, bug reports, and feature requests
are of course welcome!


regards,
hajime
Reply all
Reply to author
Forward
0 new messages