[ndnSIM] Testing mobility impact on caching (interest packets are not forwarded)

Spyridon (Spyros) Mastorakis mastorakis at cs.ucla.edu
Thu Apr 20 19:44:45 PDT 2017


Hi,

probably you need a pure broadcast strategy and some changes in the NetDeviceTransport class. Please take a look here:

https://github.com/4th-ndn-hackathon/ndnSIM-Mobile-Simulation-Package/commit/d6bce17032111bdf8c170b9c694dced7f0796b14 <https://github.com/4th-ndn-hackathon/ndnSIM-Mobile-Simulation-Package/commit/d6bce17032111bdf8c170b9c694dced7f0796b14>

You might also need to allow NFD to forward a Data packet through the face that it was received:

https://github.com/4th-ndn-hackathon/ndnSIM-Mobile-Simulation-Package/commit/cadcfc41ff1b6bed617f700f822507c4dcd0f63c

Thanks,
 
Spyridon (Spyros) Mastorakis
Personal Website: http://cs.ucla.edu/~mastorakis/ <http://cs.ucla.edu/~mastorakis/>
Internet Research Laboratory
Computer Science Department
UCLA

> On Apr 20, 2017, at 9:33 AM, Amir Ibrahim <a.ibrahim at fci-cu.edu.eg> wrote:
> 
> Hi,
>    I modified one of the examples to simulate the mobility impact on caching.
> My scenario is:
> 1. a grid of routers (4*4)
> 2. 8 WiFi access points 
> 3. 25 mobile wifi consumers
> 
> - both routers and APs are cache enabled, WiFi consumers are unable to cache.
> - scenario code attached
> 
> When I run the scenario, I get lot of NACKs with no route reason (when I use Best-route forwarding), and re-transmission trials when I use (multicast) forwarding strategy.
> 
> as below:
> 
> Any clue why nodes aren't forwarding interest packets
> 
> ns3 at ubuntu:~/ndnSIM/ns-3$ NS_LOG=ndn.Consumer:ndn.Producer ./waf --run scratch/project-simulation --vis
> Waf: Entering directory `/home/ns3/ndnSIM/ns-3/build'
> Waf: Leaving directory `/home/ns3/ndnSIM/ns-3/build'
> Build commands will be stored in build/compile_commands.json
> 'build' finished successfully (3.637s)
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Consumer:Consumer()
> 0s -1 ndn.Producer:Producer()
> 0s 24 ndn.Producer:StartApplication()
> 0s 33 ndn.Consumer:StartApplication()
> 0s 34 ndn.Consumer:StartApplication()
> 0s 35 ndn.Consumer:StartApplication()
> 0s 36 ndn.Consumer:StartApplication()
> 0s 37 ndn.Consumer:StartApplication()
> 0s 38 ndn.Consumer:StartApplication()
> 0s 39 ndn.Consumer:StartApplication()
> 0s 40 ndn.Consumer:StartApplication()
> 0s 41 ndn.Consumer:StartApplication()
> 0s 42 ndn.Consumer:StartApplication()
> 0s 43 ndn.Consumer:StartApplication()
> 0s 44 ndn.Consumer:StartApplication()
> 0s 45 ndn.Consumer:StartApplication()
> 0s 46 ndn.Consumer:StartApplication()
> 0s 47 ndn.Consumer:StartApplication()
> 0s 33 ndn.Consumer:SendPacket()
> 0s 33 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 33 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 34 ndn.Consumer:SendPacket()
> 0s 34 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 34 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 35 ndn.Consumer:SendPacket()
> 0s 35 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 35 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 36 ndn.Consumer:SendPacket()
> 0s 36 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 36 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 37 ndn.Consumer:SendPacket()
> 0s 37 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 37 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 38 ndn.Consumer:SendPacket()
> 0s 38 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 38 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 39 ndn.Consumer:SendPacket()
> 0s 39 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 39 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 40 ndn.Consumer:SendPacket()
> 0s 40 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 40 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 41 ndn.Consumer:SendPacket()
> 0s 41 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 41 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 42 ndn.Consumer:SendPacket()
> 0s 42 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 42 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 43 ndn.Consumer:SendPacket()
> 0s 43 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 43 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 44 ndn.Consumer:SendPacket()
> 0s 44 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 44 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 45 ndn.Consumer:SendPacket()
> 0s 45 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 45 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 46 ndn.Consumer:SendPacket()
> 0s 46 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 46 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0s 47 ndn.Consumer:SendPacket()
> 0s 47 ndn.Consumer:SendPacket(): [INFO ] > Interest for 0
> 0s 47 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 0 with +0.0ns. already 0 items
> 0.5s 33 ndn.Consumer:SendPacket()
> 0.5s 33 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 33 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 34 ndn.Consumer:SendPacket()
> 0.5s 34 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 34 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 35 ndn.Consumer:SendPacket()
> 0.5s 35 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 35 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 36 ndn.Consumer:SendPacket()
> 0.5s 36 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 36 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 37 ndn.Consumer:SendPacket()
> 0.5s 37 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 37 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 38 ndn.Consumer:SendPacket()
> 0.5s 38 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 38 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 39 ndn.Consumer:SendPacket()
> 0.5s 39 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 39 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 40 ndn.Consumer:SendPacket()
> 0.5s 40 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 40 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 41 ndn.Consumer:SendPacket()
> 0.5s 41 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 41 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 42 ndn.Consumer:SendPacket()
> 0.5s 42 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 42 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 43 ndn.Consumer:SendPacket()
> 0.5s 43 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 43 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 44 ndn.Consumer:SendPacket()
> 0.5s 44 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 44 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 45 ndn.Consumer:SendPacket()
> 0.5s 45 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 45 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 46 ndn.Consumer:SendPacket()
> 0.5s 46 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 46 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.5s 47 ndn.Consumer:SendPacket()
> 0.5s 47 ndn.Consumer:SendPacket(): [INFO ] > Interest for 1
> 0.5s 47 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 1 with +500000000.0ns. already 1 items
> 0.500489s 37 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%01, reason: NoRoute
> 0.500498s 43 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%01, reason: NoRoute
> 0.501802s 39 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%01, reason: NoRoute
> 0.502403s 41 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%01, reason: NoRoute
> 0.502652s 38 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%01, reason: NoRoute
> 0.503541s 35 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%01, reason: NoRoute
> 1s 33 ndn.Consumer:SendPacket()
> 1s 33 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 33 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 34 ndn.Consumer:SendPacket()
> 1s 34 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 34 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 35 ndn.Consumer:SendPacket()
> 1s 35 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 35 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 36 ndn.Consumer:SendPacket()
> 1s 36 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 36 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 37 ndn.Consumer:SendPacket()
> 1s 37 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 37 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 38 ndn.Consumer:SendPacket()
> 1s 38 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 38 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 39 ndn.Consumer:SendPacket()
> 1s 39 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 39 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 40 ndn.Consumer:SendPacket()
> 1s 40 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 40 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 41 ndn.Consumer:SendPacket()
> 1s 41 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 41 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 42 ndn.Consumer:SendPacket()
> 1s 42 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 42 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 43 ndn.Consumer:SendPacket()
> 1s 43 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 43 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 44 ndn.Consumer:SendPacket()
> 1s 44 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 44 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 45 ndn.Consumer:SendPacket()
> 1s 45 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 45 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 46 ndn.Consumer:SendPacket()
> 1s 46 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 46 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s 47 ndn.Consumer:SendPacket()
> 1s 47 ndn.Consumer:SendPacket(): [INFO ] > Interest for 2
> 1s 47 ndn.Consumer:WillSendOutInterest(): [DEBUG] Trying to add 2 with +1000000000.0ns. already 2 items
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1s -1 ndn.Consumer:OnTimeout(0)
> 1.0005s 37 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%02, reason: NoRoute
> 1.00056s 43 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%02, reason: NoRoute
> 1.00178s 41 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%02, reason: NoRoute
> 1.00196s 38 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%02, reason: NoRoute
> 1.00229s 39 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%02, reason: NoRoute
> 1.00395s 35 ndn.Consumer:OnNack(): [INFO ] NACK received for: /prefix/%FE%02, reason: NoRoute
> 1.5s 33 ndn.Consumer:SendPacket()
>    
> 
> -- 
>    Regards
> Amir I. Mohamad
> Assistant Lecturer 
> Faculty of Computers & Information
> IT Dept. Cairo University
> 

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


More information about the ndnSIM mailing list