<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">Hi Musab,<br>
      <br>
      First I would like to let you know that we are now <a
        href="http://www.openoverlayrouter.org/">OpenOverlayRouter</a>.
      If possible use the new OOR mailing lists to contact us from now
      on :)<br>
      <br>
      I will try to give you some answers inline:<br>
      <br>
      On 01/03/16 18:40, MUSAB MUHAMMAD wrote:<br>
    </div>
    <blockquote
      cite="mid:532046786.1794888.1456854014001.JavaMail.yahoo@mail.yahoo.com"
      type="cite">
      <div style="color:#000; background-color:#fff;
        font-family:HelveticaNeue-Light, Helvetica Neue Light, Helvetica
        Neue, Helvetica, Arial, Lucida Grande,
        sans-serif;font-size:16px">
        <div id="yui_3_16_0_1_1456853527172_2190"><span>Hi all,</span></div>
        <div id="yui_3_16_0_1_1456853527172_2190"><span><br>
          </span></div>
        <div id="yui_3_16_0_1_1456853527172_2190" class=""><span
            style="font-family: 'Segoe UI', Helvetica, Arial,
            sans-serif; font-size: medium;"
            id="yui_3_16_0_1_1456853527172_2738" class="">I want to
            introduce a new network entity, Location Server (LS) for
            some reason, and have MNs and PITRs interact with it as
            follows:</span><br style="font-family: 'Segoe UI',
            Helvetica, Arial, sans-serif; font-size: medium;"
            id="yui_3_16_0_1_1456853527172_2740" class="">
        </div>
        <ul style="font-family: 'Segoe UI', Helvetica, Arial,
          sans-serif; font-size: medium; margin-top: 14pt;
          margin-bottom: 14pt;" id="yui_3_16_0_1_1456853527172_2742"
          class="">
          <li id="yui_3_16_0_1_1456853527172_2744" class="">When an MN
            detects its interface signal dropping (which is going to be
            determined by an external program), <i
              id="yui_3_16_0_1_1456853527172_2746" class="">MN should
              issue Map-Reply(LS) to PITR, and Map-Reply(NULL) to LS</i>.</li>
          <li id="yui_3_16_0_1_1456853527172_2748" class="">When an MN's
            interface comes back up after binding to a new address RLOC,
            and the MN (eventually) issues Map-Reply(RLOC) to PITR, <i
              id="yui_3_16_0_1_1456853527172_2750" class="">MN should
              also issue Map-Reply(RLOC) to LS</i>.</li>
        </ul>
      </div>
    </blockquote>
    Are you trying to modify the SMR process to also send a Map Reply to
    the LS with the specified RLOCs of the previous point, or you are
    sending directly map replys? <br>
    <br>
    <blockquote
      cite="mid:532046786.1794888.1456854014001.JavaMail.yahoo@mail.yahoo.com"
      type="cite">
      <div style="color:#000; background-color:#fff;
        font-family:HelveticaNeue-Light, Helvetica Neue Light, Helvetica
        Neue, Helvetica, Arial, Lucida Grande,
        sans-serif;font-size:16px">
        <div style="font-family: 'Segoe UI', Helvetica, Arial,
          sans-serif; font-size: medium; margin-top: 14pt;
          margin-bottom: 14pt;" id="yui_3_16_0_1_1456853527172_2752"
          class="">As we know, a Solicit-Map-Request (SMR) is sent to
          PITR at interface up, and the PITR sends a Map-Request to the
          MN, which then sends a Map-Reply with its new RLOC. 
          tr_recv_map_request() in control/lisp_xtr.c appears to handle
          the incoming Map-Request and respond with a Map-Reply, so I
          intend to modify this function to deal with both interaction,
          and supply it through the lisp_xtr_r structure with a flag to
          distinguish the two behaviours, and the LS address.  The flag
          will be set if the signal drop has been detected, and cleared
          if the interface has come back up.  There are two
          modifications:<br>
        </div>
        <ul style="font-family: 'Segoe UI', Helvetica, Arial,
          sans-serif; font-size: medium; margin-top: 14pt;
          margin-bottom: 14pt;" id="yui_3_16_0_1_1456853527172_2760"
          class="">
          <li id="yui_3_16_0_1_1456853527172_2762" class="">If the flag
            is set, Map-Reply(LS) will be sent to PITR instead of
            Map-Reply(RLOC).</li>
          <li id="yui_3_16_0_1_1456853527172_2764" class="">An
            additional Map-Reply(flag ? NULL : RLOC) will be sent to LS.</li>
        </ul>
      </div>
    </blockquote>
    The SMR process not only affects to the PiTR but also all the
    entries of the map cache. <br>
    <blockquote
      cite="mid:532046786.1794888.1456854014001.JavaMail.yahoo@mail.yahoo.com"
      type="cite">
      <div style="color:#000; background-color:#fff;
        font-family:HelveticaNeue-Light, Helvetica Neue Light, Helvetica
        Neue, Helvetica, Arial, Lucida Grande,
        sans-serif;font-size:16px">
        <div dir="ltr" id="yui_3_16_0_1_1456853527172_2783"><span
            style="font-family: 'Segoe UI', Helvetica, Arial,
            sans-serif; font-size: medium;"
            id="yui_3_16_0_1_1456853527172_2766" class="">For the first
            change, can someone explain how the RLOC currently gets set
            in the new message?  Is it uc->la, for example?  Or do I
            need to build a new mapping_t?</span><br style="font-family:
            'Segoe UI', Helvetica, Arial, sans-serif; font-size:
            medium;" id="yui_3_16_0_1_1456853527172_2768" class="">
        </div>
      </div>
    </blockquote>
    uc is just used to indicate the IPs and the udp ports to be used to
    send the packet. You will probably have to generate a mapping with
    the new RLOCs you want to use<br>
    <blockquote
      cite="mid:532046786.1794888.1456854014001.JavaMail.yahoo@mail.yahoo.com"
      type="cite">
      <div style="color:#000; background-color:#fff;
        font-family:HelveticaNeue-Light, Helvetica Neue Light, Helvetica
        Neue, Helvetica, Arial, Lucida Grande,
        sans-serif;font-size:16px">
        <div dir="ltr" id="yui_3_16_0_1_1456853527172_2783"><br
            style="font-family: 'Segoe UI', Helvetica, Arial,
            sans-serif; font-size: medium;"
            id="yui_3_16_0_1_1456853527172_2770" class="">
          <span style="font-family: 'Segoe UI', Helvetica, Arial,
            sans-serif; font-size: medium;"
            id="yui_3_16_0_1_1456853527172_2772" class="">For the second
            change, I don't strictly have to use a Map-Reply, as my code
            will be talking to my LS, but it would be nice to re-use the
            message type.  What could I do to express some sort of
            Map-Reply(NULL)?  Use lisp_msg_put_neg_mapping, perhaps?  Or
            just an all-zero IP address?</span><br style="font-family:
            'Segoe UI', Helvetica, Arial, sans-serif; font-size:
            medium;" id="yui_3_16_0_1_1456853527172_2774" class="">
        </div>
      </div>
    </blockquote>
    Yes, using a negative map reply (locator_count = 0) will be useful.
    Other possibilities could be to use priority 255 in order to
    indicate to not use the locators. When you create the mapping you
    also add a locator for the LS and then you change priority to 255 of
    the locators you don't want to be used.<br>
    <blockquote
      cite="mid:532046786.1794888.1456854014001.JavaMail.yahoo@mail.yahoo.com"
      type="cite">
      <div style="color:#000; background-color:#fff;
        font-family:HelveticaNeue-Light, Helvetica Neue Light, Helvetica
        Neue, Helvetica, Arial, Lucida Grande,
        sans-serif;font-size:16px">
        <div dir="ltr" id="yui_3_16_0_1_1456853527172_2783"><br
            style="font-family: 'Segoe UI', Helvetica, Arial,
            sans-serif; font-size: medium;"
            id="yui_3_16_0_1_1456853527172_2776" class="">
          <br style="font-family: 'Segoe UI', Helvetica, Arial,
            sans-serif; font-size: medium;"
            id="yui_3_16_0_1_1456853527172_2780" class="">
          <span style="font-family: 'Segoe UI', Helvetica, Arial,
            sans-serif; font-size: medium;"
            id="yui_3_16_0_1_1456853527172_2782" class="">It looks like
            send_all_smr_and_reg() sends SMR, so that will result in a
            later invocation of tr_recv_map_request().  It is only
            invoked from send_all_smr_cb(), which appears to be invoked
            by a timer.  Is that timer set as a result of a new binding,
            i.e., so that SMR will be sent a short moment after the new
            binding is established?  IOW, does the invocation of
            send_all_smr_cb() imply that the lisp_xtr object has learned
            of the new binding?  If so, I intend to clear the flag
            inside send_all_smr_cb(), so that the subsequent (indirect)
            invocation of tr_recv_map_request() will behave normally to
            PITR (as well as send an additional message to LS).  I will
            also add a non-static function to set the flag, and then
            call send_all_smr_and_reg().  I will later arrange to call
            this new function when the signal drop is detected.</span><span><br>
          </span></div>
      </div>
    </blockquote>
    We have a structure for each interface (iface_locators) which
    contain the changes produced in the interface. When we receive a
    netlink message we update this structure and we program the SMR
    timer. If we receive a new netlink message before the timer expires,
    we reprogram the timer again. When timer expires we call <span
      style="font-family: 'Segoe UI', Helvetica, Arial, sans-serif;
      font-size: medium;" id="yui_3_16_0_1_1456853527172_2782" class="">send_all_smr_cb

      where</span> we check the iface_locators structures to decide if
    we have to do a SMR or if we had a flapping situation and we don't
    need to initiate the SMR.<br>
    <br>
    I hope with this information you can proceed with your development.<br>
    <br>
    Best regards<br>
    <br>
    Albert<br>
    <blockquote
      cite="mid:532046786.1794888.1456854014001.JavaMail.yahoo@mail.yahoo.com"
      type="cite">
      <div style="color:#000; background-color:#fff;
        font-family:HelveticaNeue-Light, Helvetica Neue Light, Helvetica
        Neue, Helvetica, Arial, Lucida Grande,
        sans-serif;font-size:16px">
        <div dir="ltr" id="yui_3_16_0_1_1456853527172_2783"><span
            style="font-family: 'Segoe UI', Helvetica, Arial,
            sans-serif; font-size: medium;" class=""><br>
          </span></div>
        <div dir="ltr" id="yui_3_16_0_1_1456853527172_2783"><span
            style="font-family: 'Segoe UI', Helvetica, Arial,
            sans-serif; font-size: medium;" class=""
            id="yui_3_16_0_1_1456853527172_2967">Regards,</span></div>
        <div id="yui_3_16_0_1_1456853527172_2735"> </div>
        <div class="signature" id="yui_3_16_0_1_1456853527172_2726">
          <div id="yui_3_16_0_1_1456853527172_2725">
            <div style="font-family:Tahoma;font-size:13px;"
              class="yui_3_2_0_18_1337194888927129"
              id="yui_3_16_0_1_1456853527172_2724">
              <div style="font-family:arial;font-size:13px;"
                id="yui_3_16_0_1_1456853527172_2723">
                <div class="MsoNormal"
                  id="yui_3_16_0_1_1456853527172_2734"><span
                    style="color:rgb(79, 129, 189);font-family:Euphemia,
                    sans-serif;font-size:10pt;"
                    id="yui_3_16_0_1_1456853527172_2733">Musab Isah</span><br>
                </div>
                <div class="MsoNormal"
                  id="yui_3_16_0_1_1456853527172_2732"><span
                    style="font-size:10.0pt;color:#4F81BD;"
                    id="yui_3_16_0_1_1456853527172_2731">Research
                    Student,</span></div>
                <div class="MsoNormal"
                  id="yui_3_16_0_1_1456853527172_2730"><span
                    style="font-size:10.0pt;color:#4F81BD;"
                    id="yui_3_16_0_1_1456853527172_2729">School of
                    Computing and Communications,</span></div>
                <div class="MsoNormal"
                  id="yui_3_16_0_1_1456853527172_2728"><span
                    style="font-size:10.0pt;color:#4F81BD;"
                    id="yui_3_16_0_1_1456853527172_2727">D29, InfoLab21</span></div>
                <div class="MsoNormal"
                  id="yui_3_16_0_1_1456853527172_2722"><span
                    style="font-size:10.0pt;color:#4F81BD;"
                    id="yui_3_16_0_1_1456853527172_2721">Lancaster
                    University</span></div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    <br>
  </body>
</html>