[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