<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>I mean does not converge even in 3 minutes.</p>
<p><br>
</p>
<p>Ashlesh</p>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Ashlesh Gawande (agawande)<br>
<b>Sent:</b> Tuesday, August 2, 2016 4:19:39 PM<br>
<b>To:</b> Lan Wang (lanwang); Junxiao Shi<br>
<b>Cc:</b> nfd-dev@lists.cs.ucla.edu<br>
<b>Subject:</b> Re: [Nfd-dev] Help needed with debugging duplicate Nonce</font>
<div> </div>
</div>
<div>
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p>Hi Junxiao</p>
<p><br>
</p>
<p>I am trying to test multicast v2 (<a href="https://gerrit.named-data.net/#/c/3013/1" class="OWAAutoLink" id="LPlnk960089">https://gerrit.named-data.net/#/c/3013/1</a>) before I push the code review ready patches to resolve our issue.</p>
<p>(Issue 3176 and issue 2602).</p>
<p><br>
</p>
<p>Number of duplicate NACKs have increased.</p>
<p>For 3 node topology:</p>
<p>NACKs increase from 58 (v1) to 132 (v2) for 30 second convergence time. </p>
<p><br>
</p>
<p>For a 58 node topology:</p>
<p>In multicast v2, NACKs increase from 913073 (v1) to 5624592(v2) and topology does not converge in 30 seconds as it does with v1 (most of them are duplicate NACK). The topology does converge even in 3 minutes. The increased NACK processing seems to take the
 blame for increased convergence time.</p>
<p><br>
</p>
<p>I have attached the 3 node topology test with ndnump and logs.</p>
<p>Maybe I am doing something wrong in the patch. Could you please take a look?</p>
<p><br>
</p>
<p>Thanks</p>
<p>Ashlesh</p>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Lan Wang (lanwang)<br>
<b>Sent:</b> Wednesday, July 13, 2016 2:37:19 PM<br>
<b>To:</b> Junxiao Shi<br>
<b>Cc:</b> Ashlesh Gawande (agawande); nfd-dev@lists.cs.ucla.edu<br>
<b>Subject:</b> Re: [Nfd-dev] Help needed with debugging duplicate Nonce</font>
<div> </div>
</div>
<div>Junxiao,
<div class=""><br class="">
</div>
<div class="">Ashlesh can work on these two issues if no one else volunteers.<br class="">
<div class="">
<div style="color: rgb(0, 0, 0); font-family: Helvetica;  font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; " class="">
<div style="color: rgb(0, 0, 0); font-family: Helvetica;  font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; " class="">
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; border-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;  ">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; " class="">
<div class=""><br class="Apple-interchange-newline">
Lan</div>
</div>
</span></div>
</div>
</div>
<br class="">
<div>
<blockquote type="cite" class="">
<div class="">On Jul 13, 2016, at 8:54 AM, Junxiao Shi <<a href="mailto:shijunxiao@email.arizona.edu" class="">shijunxiao@email.arizona.edu</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div class="WordSection1" style="page: WordSection1; font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Hi Lan</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<o:p class=""> </o:p></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Multicast strategy v1 does not have any of the desired behaviors.</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
It neither allows consumer retransmission, nor processes incoming Nacks.</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<o:p class=""> </o:p></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
ChronoSync developers could pick up the work on multicast strategy:</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Feature #2063: permit consumer retransmission<o:p class=""></o:p></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Feature #3176: Nack processing<o:p class=""></o:p></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<o:p class=""> </o:p></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Yours, Junxiao</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
<div style="border-style: solid none none; border-top-color: rgb(225, 225, 225); border-top-width: 1pt; padding: 3pt 0in 0in;" class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; border: none; padding: 0in;" class="">
<b class="">From:<span class="Apple-converted-space"> </span></b><a href="mailto:lanwang@memphis.edu" style="color: rgb(149, 79, 114); text-decoration: underline;" class="">Lan Wang (lanwang)</a><br class="">
<b class="">Sent:<span class="Apple-converted-space"> </span></b>Wednesday, July 13, 2016 06:46<br class="">
<b class="">To:<span class="Apple-converted-space"> </span></b><a href="mailto:shijunxiao@email.arizona.edu" style="color: rgb(149, 79, 114); text-decoration: underline;" class="">Junxiao Shi</a><br class="">
<b class="">Cc:<span class="Apple-converted-space"> </span></b><a href="mailto:agawande@memphis.edu" style="color: rgb(149, 79, 114); text-decoration: underline;" class="">Ashlesh Gawande (agawande)</a>;<span class="Apple-converted-space"> </span><a href="mailto:nfd-dev@lists.cs.ucla.edu" style="color: rgb(149, 79, 114); text-decoration: underline;" class="">nfd-dev@lists.cs.ucla.edu</a><br class="">
<b class="">Subject:<span class="Apple-converted-space"> </span></b>Re: [Nfd-dev] Help needed with debugging duplicate Nonce</div>
</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class="">Junxiao,</span><span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""></o:p></span></div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
<div class="">
<blockquote style="margin-top: 5pt; margin-bottom: 5pt;" class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class="">On Jul 12, 2016, at 12:58 PM, Junxiao Shi <<a href="mailto:shijunxiao@email.arizona.edu" style="color: rgb(149, 79, 114); text-decoration: underline;" class="">shijunxiao@email.arizona.edu</a>>
 wrote:<o:p class=""></o:p></span></div>
</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
<div class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Hi Lan<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Look at this topology:<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">A---B</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">\ /</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">  C</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Assume every link has the same delay, and the processing delay at each node is zero.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
When C sends the same Interest to both A and B, A and B would forward the Interest to each other, and get Nack-Duplicate from each other.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Per ChronoSync protocol, the applications on A and B should express Interests with the same name. Since A and B are symmetric, let’s look at A.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
There could be three different timings:<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<b class="">TIMING0</b><span class="apple-converted-space"> </span>AppA expresses the Interest before C’s Interest arrives at A.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
If we relabel A->C B->A C->B, it becomes either TIMING1 or TIMING2.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<b class="">TIMING1</b><span class="apple-converted-space"> </span>AppA expresses the Interest after C’s Interest has been forwarded to B, but before B responds Nack-Duplicate.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
The duration between A forwarding C’s Interest to B and A receiving Nack-Duplicate from B is most likely shorter than the suppression interval, so appA’s Interest would be suppressed.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color: rgb(255, 38, 0);" class="">When Nack-Duplicate against C’s Interest arrives from B, strategy at A should send appA’s Interest to B.</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<b class="">TIMING2</b><span class="apple-converted-space"> </span>AppA expresses the Interest after B responds Nack-Duplicate.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
When Nack-Duplicate against C’s Interest arrives from B, strategy at A should not return the Nack to C, because appA is another upstream which has not Nacked.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color: rgb(255, 38, 0);" class="">When appA expresses the Interest, strategy at A should not suppress this Interest, because the sole pending upstream (appA) is now a downstream. The strategy should forward the Interest to both B and C.</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
When the strategy behaves as what I describe above, everyone should be getting Data.<o:p class=""></o:p></div>
</div>
</div>
</blockquote>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
</div>
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class="">Question is whether the multicast strategy ChronoSync uses has the above behavior or not (e.g., "</span><span style="font-size: 13.5pt; color: rgb(255, 38, 0);" class="">When Nack-Duplicate
 against C’s Interest arrives from B, strategy at A should send appA’s Interest to B.</span><span style="font-size: 11.5pt; color: rgb(255, 38, 0);" class="">”</span><span style="font-size: 13.5pt; color: rgb(255, 38, 0);" class="">)</span><span style="font-size: 13.5pt;" class="">.
  I doubt it is the case based on the following.</span><span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 13.5pt;" class="">Below is from your earlier email:</span><span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class="">============== below is from Junxiao’s email ========<o:p class=""></o:p></span></div>
</div>
<div class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
>From A’s point of view, face261 is the local app, face262 is B, face263 is C.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Incoming+outgoing Interests, and PIT entry contents are as follows:<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">52.39 from=C=4168 to=app</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">      PIT in=[C=4168@52.39] out=[app@52.39]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">52.72 from=B=6605</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">      PIT in=[C=4168@52.39,B=6605@52.72] out=[app@52.39]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">52.74 from=app=7385 to=B,C</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">      PIT in=[C=4168@52.39,B=6605@52.72,app=7385@52.74] out=[app@52.39,B@52.74,C@52.74]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">56.39 PIT in=[B=6605@52.72,app=7385@52.74]+expired[C=4168@52.39] out=[B@52.74,C@52.74]+expired[app@52.39]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">56.72 PIT in=[app=7385@52.74]+expired[C=4168@52.39,B=6605@52.72] out=[B@52.74,C@52.74]+expired[app@52.39]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">56.74 Interest unsatisfied, PIT erased</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class=""> </span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">56.89 from=C=0641 to=app</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">      PIT in=[C=0641@56.89] out=[app@56.89]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">56.90 from=app=7567 to=B,C</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">      PIT in=[C=0641@56.89,app=7567@56.90] out=[app@56.89,B@56.90,C@56.90]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">57.06 from=B=1547</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">      PIT in=[C=0641@56.89,app=7567@56.90,B=1547@57.06] out=[app@56.89,B@56.90,C@56.90]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">60.89 PIT in=[app=7567@56.90,B=1547@57.06]+expired[C=0641@56.89] out=[B@56.90,C@56.90]+expired[app@56.89]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">60.90 PIT in=[B=1547@57.06]+expired[C=0641@56.89,app=7567@56.90] out=[]+expired[app@56.89,B@56.90,C@56.90]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class=""> </span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">61.05 from=C=6600 to=app,B,C</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-family: 'Courier New';" class="">      PIT in=[B=1547@57.06,C=6600@61.05]+expired[app=7567@56.90] out=[app@61.05,B@61.05,C@61.05]</span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Time is represented with last two digits of integral part and first two digits of fractional part. Nonce is represented with last four digits. PIT in-record is represented as <downstream>=<nonce>@<time>. PIT out-record is represented as <upstream>@<time>.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
The PIT entry has been erased at 56.74, so anything before that does not affect the later part.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
At 61.05, an Interest with nonce 6600 is received from C. Before processing this Interest, the PIT entry has one unexpired in-record from B which has nonce 1547 and was created at 57.06; all out-records have been expired.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
This Interest is forwarded with nonce 6600 to both app and B.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Since the PIT entry indicates B still wants the Data, the strategy also forwards the Interest with nonce 1547 (which came from B at 57.06) back to C. <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
While this may not be the best idea for multicast strategy, and using a nonce from non-local-app may be problematic with /localhop, this forwarding is valid in general: nonce 1547 has never been forwarded earlier, and downstream B still wants the Data, so the
 strategy can certainly forward the Interest to C using this nonce.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
============ above is from Junxiao’s email =========<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<o:p class=""> </o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
The above trace did not include some important information, i.e. (1) the NACK-duplicate messages and (2) what happens after receiving the NACKs.  So I searched a’s nfd log from Ashlesh’s email and found the following which I hope are the relevant messages.<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<o:p class=""> </o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225861.054557 DEBUG: [Forwarder] onIncomingInterest face=263 interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b (A received sync interest from C with nonce 6600 — the nonce
 is inferred from your email, I didn’t check the ndndump log)</span><span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225861.054705 DEBUG: [Forwarder] onOutgoingInterest face=262 interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b  </span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class=""> (A sent sync interest to B with the nonce 6600 - again nonce value is inferred from your email)<o:p class=""></o:p></span></div>
</div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225861.054736 DEBUG: [Forwarder] onOutgoingInterest face=263 interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b</span><span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class=""> (A sent sync interest to C with the nonce 1547 - again nonce value is inferred from your email) </span><span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">— the above three correspond to the last line in your trace ----</span><span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225861.075402 DEBUG: [Forwarder] onIncomingNack face=263 nack=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b~Duplicate OK</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225861.075601 DEBUG: [Forwarder] onIncomingNack face=262 nack=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b~Duplicate OK</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">— the above two message show that both B and C sent NACK-duplicate back to A — C has previously received the nonce 1547 from A I think (A has expired the corresponding out record, but C has not deleted the in-record
 I guess).  I’m not sure why B would also send a NACK-duplicate.  Did it receive one with the nonce 6600 before from A?</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">— according to your earlier email, these two NACKs would erase the corresponding in record at B and C.</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225861.224289 DEBUG: [Forwarder] onIncomingInterest face=262 interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b (B sent another sync interest to A)</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225861.378008 DEBUG: [Forwarder] onIncomingInterest face=261 interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b (A’s app sent a sync interest to A’s nfd)</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class=""><o:p class=""> </o:p></span></div>
</div>
</div>
<div class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225861.378105 DEBUG: [Forwarder] onContentStoreMiss interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225865.378406 DEBUG: [Forwarder] onInterestUnsatisfied interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225865.378471 DEBUG: [Forwarder] onInterestFinalize interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b unsatisfied</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225865.528040 DEBUG: [Forwarder] onIncomingInterest face=263 interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225865.528083 DEBUG: [Forwarder] onContentStoreMiss interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">1467225865.528126 DEBUG: [Forwarder] onOutgoingInterest face=261 interest=/localhop/NLSR/sync/e4c858598a526f7f25d42f4da49cb51b7950cf352e26d5092bd35126b509101b</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt;" class=""><o:p class=""> </o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">— the above shows that A did not send a sync interest to B and C after A’s app sent a sync interest to A’s nfd (there were no such messages between 61.3 and 65), which means that B and C won’t have the corresponding
 in record (but for ChronoSync to work there needs to be a pending interest on each direction in every link).</span><span style="font-size: 12pt;" class=""><o:p class=""></o:p></span></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class=""><o:p class=""> </o:p></span></div>
</div>
</div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 11.5pt;" class="">Lan</span><span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""><o:p class=""></o:p></span></div>
</div>
<blockquote style="margin-top: 5pt; margin-bottom: 5pt;" class="">
<div class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
Yours, Junxiao<o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
 <o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""> </span><o:p class=""></o:p></div>
</div>
<div style="border-style: solid none none; border-top-color: rgb(225, 225, 225); border-top-width: 1pt; padding: 3pt 0in 0in;" class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<b class="">From:<span class="apple-converted-space"> </span></b><a href="mailto:lanwang@memphis.edu" style="color: rgb(149, 79, 114); text-decoration: underline;" class=""><span style="color: rgb(149, 79, 114);" class="">Lan Wang (lanwang)</span></a><br class="">
<b class="">Sent:<span class="apple-converted-space"> </span></b>Tuesday, July 12, 2016 09:28<br class="">
<b class="">To:<span class="apple-converted-space"> </span></b><a href="mailto:shijunxiao@email.arizona.edu" style="color: rgb(149, 79, 114); text-decoration: underline;" class=""><span style="color: rgb(149, 79, 114);" class="">Junxiao Shi</span></a><br class="">
<b class="">Cc:<span class="apple-converted-space"> </span></b><a href="mailto:agawande@memphis.edu" style="color: rgb(149, 79, 114); text-decoration: underline;" class=""><span style="color: rgb(149, 79, 114);" class="">Ashlesh Gawande (agawande)</span></a>;<span class="apple-converted-space"> </span><a href="mailto:nfd-dev@lists.cs.ucla.edu" style="color: rgb(149, 79, 114); text-decoration: underline;" class=""><span style="color: rgb(149, 79, 114);" class="">nfd-dev@lists.cs.ucla.edu</span></a><br class="">
<b class="">Subject:<span class="apple-converted-space"> </span></b>Re: [Nfd-dev] Help needed with debugging duplicate Nonce<o:p class=""></o:p></div>
</div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""> </span><o:p class=""></o:p></div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="color: rgb(255, 38, 0);" class="">When strategy instructs forwarder to<span class="apple-converted-space"> </span><u class="">send</u><span class="apple-converted-space"> </span>a Nack to face B, it removes the PIT in-record of face B. In case
 the PIT entry is later satisfied by Data, face B would not receive a copy of this Data.</span><o:p class=""></o:p></div>
</div>
<div class="">
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class=""> </span><o:p class=""></o:p></div>
</div>
</div>
<div class="">
<div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif;" class="">
<span style="font-size: 12pt; font-family: 'Times New Roman', serif;" class="">The above highlighted part is the problem.  Since the in-record of face B is removed after sending the Nack, any Sync data packet generated by ChronoSync cannot be delivered to the
 neighbor on face B.  The neighbor would wait for the sync period to expire and resend the next Sync Interest to receive the data.  This is the major problem caused by the duplicate Nacks (not just pure message overhead).  </span></div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
</div>
</div>
</body>
</html>