Hi Musab,

See inline.

On Tue, Jan 19, 2016 at 12:06 PM, MUSAB MUHAMMAD <[email protected]> wrote:

> Hi Alberto,
>
> Thanks for your reply once again. As a follow up:
>
> "Well, since LISPmob is written in C there is no "Object" you can hook for
> events. I'd recommend to start at the code that builds a Map-Register (it
> should be on the lispmob-xtr.c file), and follow back the function calls to
> find where it is used."
>
> I forgot to mention that I'm using lispmob 0.5, which doesn't appear to
> have lispmob-xtr.c file; I presume it's in an earlier version. Perhaps it
> roughly corresponds to control/lisp_xtr.c in this version. And by 'object',
> I mean such things as the lisp_xtr_t object pointed to as first argument in
> most functions in lisp_xtr.c.
>
> You got the right file. I believe that control/lisp_xtr.c is the file you
should modify to achieve your goals.


>     "LISPmob only monitors interfaces going up or down so handling signal
> levels may be a bit tricky :S"
>
> Actually, I already have a crude plan to have an external process detect
> this, and inform lispd via a FIFO, which is enough for my purposes for the
> time being.
>

That's quite cool. Maybe you can share the final prototype with the
community once you are done. I'm sure that more users will find it
interesting!

Best,
Alberto

>
> Regards,
>
>
>
> Musab Isah
> Research Student,
> School of Computing and Communications,
> D29, InfoLab21
> Lancaster University
>
>
> On Friday, January 15, 2016 9:31 AM, Alberto Rodriguez-Natal <
> [email protected]> wrote:
>
>
> Hi Musab,
>
> Some info below.
>
> On Wed, Jan 13, 2016 at 11:57 AM, MUSAB MUHAMMAD <[email protected]>
> wrote:
>
> Hi all,
>
> As part of my PhD work I have built an area information server (AIS) which
> main purpose is serving LISP-MNs. I am trying to integrate it with LISP and
> needing some help from you to do the following:
>
> (1) Configure lispd with an additional map_server (my AIS) either in the
> configuration file or hard coded somewhere in the code.
>
>
> This should be easy, you could take a look at the current code to
> configure a MS today (look in lispd_config_functions.c) and
> copy/paste/adapt to your needs.
>
>
> (2) On command, in additional to the regular control messages, get lispd
> to send map-register (with NULL RLOC) to my AIS as well. Specifically, I
> need to know what object to use as the context for my event handler, such
> that it will have the newly configured AIS available, and the means to
> transmit the messages out to it.
>
>
> Well, since LISPmob is written in C there is no "Object" you can hook for
> events. I'd recommend to start at the code that builds a Map-Register (it
> should be on the lispmob-xtr.c file), and follow back the function calls to
> find where it is used.
>
>
>
> (3) On signal strength going down to a certain threshold, send an smr to
> PxTR and the subsequent map-reply that is invoked by the encapsulated
> map-request from the pxtr should carry the address of my AIS rather than
> the MN's RLOC.
>
>
> LISPmob only monitors interfaces going up or down so handling signal
> levels may be a bit tricky :S
>
> (4) On link coming up,  in additional to the regular control messages,
> send map-register (similar to the one sent to the map-server) to the AIS. I
> just want to tack the extra-message to the already existing control
> messages sent.
>
>
> Here you can probably hack again the map-register code as in point (2) to
> suit your needs.
>
>
> Hopefully, you can point me to the exact functions that respond to these
> events and how best to go about making changes to the lispmob code. All
> help is welcomed please.
>
> Bear in mind that there are several tight control-data plane interactions
> in LISPmob, and thus it is not easy to point to an "exact" function. In
> other words, when LISPmob has to take action on something, it may require
> interactions from several different parts of the code.
>
> I'd recommend that, instead of jumping in directly into the details, try
> first to follow the normal execution flow of the code. Once you have a
> general understanding of it, modifying it to your needs should be easy.
>
> The main loop listens for both data packets and the different control
> messages. It then has specific callbacks for each when LISPmob receives
> them. That should be a good point to start following the execution :)
>
> Best,
> Alberto
>
>
>
> Regards,
>
> Musab Isah
> Research Student,
> School of Computing and Communications,
> D29, InfoLab21
> Lancaster University
>
>
>
>
>

Reply via email to