[ndnSIM] Problem with receiving data in my 3 noded scenario

Marzieh Babaeianjelodar babaeim at clarkson.edu
Mon Aug 7 11:58:45 PDT 2017


Dear ndnSIM friends,

I made my own Wifi (adhoc) scenario. I have three nodes in my scenario, Consumer on node No. 0, producer on node No. 2 and node 1 is a relay node. My nodes are far from each other with the same distance from each other. The nodes are just one hop reachable, so for sending interest from node 0 to node 2, node 1 has to be used in the middle. 

I installed wifi on all of the nodes. I added another wifi card to the channel. I used Constant Speed Propagation Delay Model and used “Three Log Distance Propagation Delay Model” and “Nakagami Propagation Loss Model”. I used “Yans Wifi Phy Helper” for creating the wifi channel. I used “Nqos Wifi Mac helper” for configuring the Mac model. 

I have disabled the set default routes and created my own routes, and used “best-route 2” for the strategy for all of the three nodes. The following are my routes: 
ns3::ndn::FibHelper::AddRoute(waypointnode.Get(0), "/test/prefix", 257, 1);
ns3::ndn::FibHelper::AddRoute(waypointnode.Get(1), "/test/prefix", 256, 1);
ns3::ndn::FibHelper::AddRoute(waypointnode.Get(1), "/test/prefix", 257, 1);

My strategy is as follows:
ndn::StrategyChoiceHelper::Install(waypointnode.Get(0), "/test/prefix", "/localhost/nfd/strategy/best-route2");
ndn::StrategyChoiceHelper::Install(waypointnode.Get(1), "/test/prefix", "/localhost/nfd/strategy/best-route2");
ndn::StrategyChoiceHelper::Install(waypointnode.Get(2), "/test/prefix", "/localhost/nfd/strategy/best-route2");

For the consumer I have Consumer Batches which sends an interest on seconds, 2s - 4s - 6s - 8s with the name test/prefix.

I printed out some checking statements inside the functions (such as LinkService and Start Process Data) for receiving data to see the interactions. When I enable the log I can see that my interest goes through from node 0 to node 1, and from node 1 to node 2, and node 2 gets satisfied, and node 2 sends the data back to node 1, but node 1 never receives the data. Node 1 and 0 are unsatisfied. I was wondering why node 1 is not getting the data back?

This is the log for one interest (Interest 0) going from node 0 to node 2 and the data process:
2s 0 ndn.MarziehConsumer:SendPacket()
2s 0 ndn.MarziehConsumer:SendPacket(): [INFO ] > Interest for 0
2s 0 nfd.LinkService:receiveInterest(): [LOGIC] [id=259,local=appFace://,remote=appFace://] receiveInterest
2s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=259 interest=/test/prefix/%FE%00
2s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/prefix/%FE%00
2s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=257 interest=/test/prefix/%FE%00
2s 0 nfd.LinkService:sendInterest(): [LOGIC] [id=257,local=netdev://[00:00:00:00:00:04],remote=netdev://[ff:ff:ff:ff:ff:ff]] sendInterest
2s 0 ndn.MarziehConsumer:SendPacket()
2.00005s 1 nfd.LinkService:receiveInterest(): [LOGIC] [id=257,local=netdev://[00:00:00:00:00:05],remote=netdev://[ff:ff:ff:ff:ff:ff]] receiveInterest
2.00005s 1 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=257 interest=/test/prefix/%FE%00
2.00005s 1 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/prefix/%FE%00
2.00005s 1 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/test/prefix/%FE%00
2.00005s 1 nfd.LinkService:sendInterest(): [LOGIC] [id=256,local=netdev://[00:00:00:00:00:02],remote=netdev://[ff:ff:ff:ff:ff:ff]] sendInterest
2.0001s 0 nfd.LinkService:receiveInterest(): [LOGIC] [id=256,local=netdev://[00:00:00:00:00:01],remote=netdev://[ff:ff:ff:ff:ff:ff]] receiveInterest
2.0001s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/prefix/%FE%00
2.0001s 0 nfd.Forwarder:onInterestLoop(): [DEBUG] onInterestLoop face=256 interest=/test/prefix/%FE%00 send-Nack-duplicate
2.0001s 0 nfd.LinkService:sendNack(): [LOGIC] [id=256,local=netdev://[00:00:00:00:00:01],remote=netdev://[ff:ff:ff:ff:ff:ff]] sendNack
2.0001s 2 nfd.LinkService:receiveInterest(): [LOGIC] [id=256,local=netdev://[00:00:00:00:00:03],remote=netdev://[ff:ff:ff:ff:ff:ff]] receiveInterest
2.0001s 2 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/prefix/%FE%00
2.0001s 2 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/prefix/%FE%00
2.0001s 2 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=259 interest=/test/prefix/%FE%00
2.0001s 2 nfd.LinkService:sendInterest(): [LOGIC] [id=259,local=appFace://,remote=appFace://] sendInterest
2.0001s 2 ndn.Producer:OnInterest(0x81a44e8, 0xaad1b8fc)
2.0001s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with Data: /test/prefix/%FE%00
2.0001s 2 nfd.LinkService:receiveData(): [LOGIC] [id=259,local=appFace://,remote=appFace://] receiveData
start process data, marzieh
2.0001s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=259 data=/test/prefix/%FE%00
2.0001s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/test/prefix/%FE%00
2.0001s 2 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=256 data=/test/prefix/%FE%00
2.0001s 2 nfd.LinkService:sendData(): [LOGIC] [id=256,local=netdev://[00:00:00:00:00:03],remote=netdev://[ff:ff:ff:ff:ff:ff]] sendData
2.1001s 2 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/prefix/%FE%00 satisfied
4.00005s 1 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/test/prefix/%FE%00
4.00005s 1 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/prefix/%FE%00 unsatisfied

Best Regards,
Marzieh

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


More information about the ndnSIM mailing list