[ndnSIM] [EXT] Packets Processing on Consumer

Puming Fang pfang at umass.edu
Sat Apr 24 18:52:53 PDT 2021


Hi Junxiao,

The thing that confuses me here is that it seems that the forwarder on the Node 3 accepts unrequested Data “/b” from the application face and forwards it to Node 1. I am looking forward to your reply. Thank you.

Best,
Puming

> On Apr 24, 2021, at 9:20 PM, Puming Fang <pfang at engin.umass.edu> wrote:
> 
> Hi Junxiao,
> 
> Thanks for your reply.
> 
> To guarantee that the Interest “/b" can reach Node 3, I changed the forwarding strategy to broadcast (custom strategy).
> 
> Interesting thing happens. Node 1 starts to accept Data “/b" from Node 3.
> 
> In this experiment the Interest “/a/b” is forwarded to the application in Node 3, and the application responds with Data “/b”, then Data “/b” is forwarded to node 1 that requests “/b”.
> 
> Is that what’s happening in the experiment?
> 
> Thank you,
> Puming
> 
>> On Apr 24, 2021, at 6:18 PM, Junxiao Shi <shijunxiao at email.arizona.edu <mailto:shijunxiao at email.arizona.edu>> wrote:
>> 
>> Hi Puming
>> 
>> Node1 does not have a route for the /b prefix, so that the Interest is dropped right there without leaving Node1.
>> 
>> 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.
>> See 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> for rationale.
>> 
>> Yours, Junxiao
>> 
>> On Sat, Apr 24, 2021 at 5:53 PM Puming Fang <pfang at umass.edu <mailto:pfang at umass.edu>> wrote:
>> External Email
>> 
>> Dear NDN team,
>> 
>>  
>> 
>> My name is  Puming Fang. I am  a newbie to ndnSIM, and have introduced myself to ndnSIM by implementing a few interesting experiments.
>> 
>>  
>> 
>> Here is one of them and I am very curious about why this happened.
>> 
>>  
>> 
>>            Node1
>> 
>>                  |
>> 
>> Node 0---Node2---Node3
>> 
>>  
>> 
>> Node 0 sends out Interest “/a/b” to request Data.
>> Node 1 sends out Interest “/b” to request Data.
>> 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”.
>> Below is how node 3 removes “/a” from “/a/b” in Function Producer::OnInterest.
>> 
>> ---------------------------------------------------------------
>> 
>> App::OnInterest(interest); // tracing inside
>> 
>>  
>> 
>>   if (!m_active)
>> 
>>     return;
>> 
>>     
>>   Name dataName(interest->getName());
>> 
>>   dataName.erase(0);
>> 
>> ------------------------------------------------------------------
>> 
>>  
>> 
>> 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?
>> 
>>  
>> 
>> Your help would be greatly appreciated.
>> 
>>  
>> 
>> Thanks,
>> 
>> Puming
>> 
>>  
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20210424/d4c6978a/attachment-0001.html>


More information about the ndnSIM mailing list