<div dir="ltr"><div>Hi Puming</div><div><br></div><div>Node1 does not have a route for the /b prefix, so that the Interest is dropped right there without leaving Node1.</div><div><br></div><div>Even if the Interest somehow reached Node3, the forwarder on that node would not accept the Data from the application face, because the Interest was never forwarded to the application.</div><div>See <a href="https://www.lists.cs.ucla.edu/pipermail/ndn-interest/2018-April/002147.html">https://www.lists.cs.ucla.edu/pipermail/ndn-interest/2018-April/002147.html</a> for rationale.</div><div><br></div><div>Yours, Junxiao<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Apr 24, 2021 at 5:53 PM Puming Fang <<a href="mailto:pfang@umass.edu">pfang@umass.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="overflow-wrap: break-word;" lang="EN-US"><p style="text-align:center"><font color="red"><b>External Email</b><br></font></p><div class="gmail-m_2378465359019534856WordSection1"><p class="MsoNormal">Dear NDN team,</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">My name is  Puming Fang. I am  a newbie to ndnSIM, and have introduced myself to ndnSIM by implementing a few interesting experiments.</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Here is one of them and I am very curious about why this happened.</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal" style="text-indent:9.75pt">           Node1</p><p class="MsoNormal" style="text-indent:9.75pt">                 |</p><p class="MsoNormal">Node 0---Node2---Node3</p><p class="MsoNormal"><u></u> <u></u></p><ol style="margin-top:0in" type="1" start="1"><li class="gmail-m_2378465359019534856MsoListParagraph" style="margin-left:0in">Node 0 sends out Interest “/a/b” to request Data.</li><li class="gmail-m_2378465359019534856MsoListParagraph" style="margin-left:0in">Node 1 sends out Interest “/b” to request Data.</li><li class="gmail-m_2378465359019534856MsoListParagraph" style="margin-left:0in">Node 3 is initialized with a producer of “/a/b”, but I made a slight change on Node 3 in producing Data: When Node 3 receives the Interest “/a/b”, it removes “/a” from “/a/b” and then responds with Data “/b”.</li></ol><p class="MsoNormal">Below is how node 3 removes “/a” from “/a/b” in Function Producer::OnInterest.</p><p class="MsoNormal">---------------------------------------------------------------</p><p class="MsoNormal">App::OnInterest(interest); // tracing inside</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">  if (!m_active)</p><p class="MsoNormal">    return;</p><p class="MsoNormal">    </p><p class="MsoNormal">  Name dataName(interest->getName());</p><p class="MsoNormal">  dataName.erase(0);</p><p class="MsoNormal">------------------------------------------------------------------</p><p class="gmail-m_2378465359019534856MsoListParagraph"><u></u> <u></u></p><p class="MsoNormal">Obviously Node 0 didn’t receive the requested Data  from Node 3. The interesting thing is that Node 1 didn’t receive Data “/b” from Node 3 either.  Can anyone please explain to me why this happened?</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Your help would be greatly appreciated.</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Thanks,</p><p class="MsoNormal">Puming</p><p class="MsoNormal"> <br>
</p></div></div></blockquote></div></div>