PRELIMINARY FHMIP upgraded for ns2.31

I've upgraded the Robert Hsieh's FHMIP code in order to compile in latest
ns2.31. I've also added to it the modifications detailed in appendix B of
this report (Handover Blackout Duration of Layer 3 Mobility Management
Schemes",
http://www.tkn.tu-berlin.de/publications/papers/Handover_Blackout_Duration_o
f_L3_Mobility_Management_Schemes1.pdf)

However, when I've tried the HMIP part of the extension (the MAP), the
simulation continues to crash in a failed assert; however, I've tried the
FMIP part alone, and it seems to run OK.

__Please note that I did not test this extension any further__ 

To install: 
first, install NS-allinone-2.31; 
then, uncompress and apply the patch
(http://tagus.inesc-id.pt/~pestrela/ns2/files/ns2.31_fhmip.patch.gz)
, then reconfigure and recompile ns2 again. 
The original FHMIP example is located in /tcl/ex/fhmip 

ns2.31>  cat ns2.31_fhmip.patch | patch -p1

ns2.31>  ./configure --enable-debug

ns2.31>  make

ns2.31/tcl/ex/fhmip>  ../../../ns fhmip_simula.tcl


__again, Please note that I did not test this extension any further__

Pedro Vale Estrela
http://tagus.inesc-id.pt/~pestrela/ns2/mobility.html#_Toc147660119




> Pedro Vale Estrela schrieb:
> > Hi all,
> > Previously, I've asked in the NS2 list if anyone had a copy of Robert
> > Hsieh's FHMIP NS2 extension for NS2.1b7; with the reply, I've updated my
> NS2
> > mobility page with the available source code:
> > http://tagus.inesc-id.pt/~pestrela/ns2/mobility.html#_Toc147660119
> >
> > Currently, I'm trying to upgrade and put this extension to work.
> > I've already got it compiling in NS2.31, but when I run the
> __unmodified__
> > example (simula.tcl), I got this failed assertion:
> >
> > --------
> > BS Setting up encapsulate mechanism [1.0.1]->[2.0.0]
> > 7.093759 HA 1.0.0 updated (FA 2.0.0), packet 32
> > 7.150404 BS 3.1.0 received reply from BS 1.0.0, packet 32
> > mipmh->coa_ 2.0.0   nodeaddr  3.1.0
> > ns: mobile/mip-reg.cc:261: virtual void MIPBSAgent::recv(Packet*,
> Handler*):
> > Assertion `miph->coa_ == nodeaddr' failed.
> > Aborted (core dumped)
> > --------
> >
> > This happens in this part of the code:
> >
> > --------
> > case MIPT_REG_REPLY:
> > {
> > #ifndef MIP_QUIET
> >     printf("%f BS %s received reply from BS %s, packet %i\n",
> > Scheduler::instance().clock(),
> >            Address::instance().print_nodeaddr(addr()),
> >            Address::instance().print_nodeaddr(iph->saddr()), ch->uid());
> > // JCW
> > #endif
> >
> >     assert(miph->coa_ == nodeaddr);         // <<<< crashes here
> >     tcl.evalf("%s get-link %d %d", name_, nodeaddr, miph->haddr_);
> >     //
> >     // XXX hacking mobileip. all this should go away
> >     // when mobileIP for sun-wired model is no longer reqd.
> >     //
> >     ...
> > --------
> >
> > Thus, my questions are:
> > a) has somebody got an working FHMIP extension?
> > b) Is it necessary to modify simula.tcl or mip-reg.cc use another
> simulation
> > scenario, as to avoid this bug?
> >
> > If yes, please send me the modified code and I'll upgrade it to ns2.31,
> and
> > give credit to the person in my NS2 mobility page.
> >
> > Pedro Vale Estrela
> >
> >
> >


Reply via email to