<div dir="ltr"><div dir="ltr">Hi Eric<div><br></div><div>It isn't possible for a forwarder to know the origin <i>node</i> of an Interest, unless the consumer explicitly identifies itself as part of the Interest name.</div><div>The forwarder can only know the incoming <i>face</i> of an Interest, which is either the consumer node or another forwarder closer to the consumer.</div><div><br></div><div>This is a privacy property of the NDN network: it maintains that the consumer would remain anonymous to network forwarders and producers, except the forwarder directly adjacent to the consumer.</div><div>In comparison, an IP packet would always identify the origin node in the source IP address field.<br></div><div><br></div><div>Yours, Junxiao</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, May 14, 2021 at 5:03 PM Eric Binnendyk via ndnSIM <<a href="mailto:ndnsim@lists.cs.ucla.edu">ndnsim@lists.cs.ucla.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"><p style="text-align:center"><font color="red"><strong>External Email</strong><br></font></p><div dir="ltr"><div>Hi,</div><div><br></div><div>In the forwarding strategy code, I am trying to find the node that an incoming Interest originated from. I suspect that this information is somewhere in the PIT entry (possibly in pitEntry->getInRecords()), however I cannot figure out how to find it.</div><div><br></div><div>Does anyone know how to find the origin node of an Interest? I expect the code will look something like this:</div><div><br></div><div><div style="color:rgb(212,212,212);background-color:rgb(30,30,30);font-family:"Droid Sans Mono",monospace,monospace,"Droid Sans Fallback";font-weight:normal;font-size:14px;line-height:19px;white-space:pre-wrap"><div><span style="color:rgb(197,134,192)">if</span><span style="color:rgb(212,212,212)"> (</span><span style="color:rgb(156,220,254)">pitEntry</span><span style="color:rgb(220,220,170)">-></span><span style="color:rgb(220,220,170)">getInRecord</span><span style="color:rgb(212,212,212)">()->...->origin == </span><span style="color:rgb(156,220,254)">nodes</span><span style="color:rgb(212,212,212)">.</span><span style="color:rgb(220,220,170)">Get</span><span style="color:rgb(212,212,212)">(i)) {</span></div><div><div style="color:rgb(212,212,212);background-color:rgb(30,30,30);font-family:"Droid Sans Mono",monospace,monospace,"Droid Sans Fallback";font-weight:normal;font-size:14px;line-height:19px;white-space:pre-wrap"><div><span style="color:rgb(212,212,212)">        </span><span style="color:rgb(156,220,254)">num_interests_per_origin</span><span style="color:rgb(212,212,212)">[</span><span style="color:rgb(156,220,254)">i</span><span style="color:rgb(212,212,212)">] += </span><span style="color:rgb(181,206,168)">1</span><span style="color:rgb(212,212,212)">;</span></div><div><span style="color:rgb(212,212,212)">    }</span></div><div><span style="color:rgb(212,212,212)">}<br></span></div></div><span style="color:rgb(212,212,212)"></span></div></div></div><div><br></div><div>Thanks,</div><div><br></div><div>Eric<br></div></div><br>
</blockquote></div></div>