[ndnSIM] Confusion about consumer settings

Klaus Schneider klaus at cs.arizona.edu
Mon Apr 29 14:31:06 PDT 2019


Hi again,

Yeah it just looks like randomness to me.

On 4/29/19 2:00 AM, yao930 at mail.ustc.edu.cn wrote:
> Hello Klaus,
> 
> Thanks for your reply.
> 
> The link delay is the same on all links, and consumers starts at the same time. I also disable cache on every node.
> 
> I ran 3 other scenarios and the result is:
> 
> 1. Install consumer on node5, then node6, then node7, the rate-trace count is as follows. I repeated that 3 times, and the result is the same.

The result will always be the same, since ns-3 uses the same seed by 
default.

You can change it via using different seeds or runs:

> RngSeedManager::SetSeed (3);  // Changes seed from default of 1 to 3
> RngSeedManager::SetRun (7);   // Changes run number from default of 1 to 7

https://www.nsnam.org/docs/manual/html/random-variables.html

I'd expect for different seeds you'll get different results.

Best regards,
Klaus


>     A1Packet: 3253
>     A2Packet: 1280
>     A3Packet: 1212
>     totalPacket: 5745
> 
> 2. Install consumer on node7, then node6, then node5, the rate-trace count is as follows, which seems exactly a reverse of scenario 1.
>     A1Packet: 1212
>     A2Packet: 1280
>     A3Packet: 3253
>     totalPacket: 5745
> 
> 3. Increase the queue size to be 600 packets, and the rate-trace count is as follows, the total packet is much less than above scenarios.
>     A1Packet: 325
>     A2Packet: 225
>     A3Packet: 198
>     totalPacket: 748
> 
> Topology files and simulation files are attached.  I put the topology file in ../ndnSIM/examples/topologies, and simulation file in ../ndnSIM/examples, then run ./waf --run=ndn-line to start the simulation.
> 
> Best regards,
> Chris Chen
> 
> 
> 
>> -----Original Messages-----
>> From: "Klaus Schneider" <klaus at cs.arizona.edu>
>> Sent Time: 2019-04-29 09:42:06 (Monday)
>> To: yao930 at mail.ustc.edu.cn, ndnsim <ndnsim at lists.cs.ucla.edu>
>> Cc:
>> Subject: Re: [ndnSIM] Confusion about consumer settings
>>
>> Hey Chris,
>>
>> Can you attach your full simulation file and your topology file?
>>
>> Did you set different link delays for your consumers? Do they all start
>> at the same time?
>>
>> Maybe it's just randomness. Did you try changing the parameters slightly
>> and see a hugely different result?
>>
>> Best regards,
>> Klaus
>>
>>
>>
>> On 4/28/19 9:00 AM, yao930 at mail.ustc.edu.cn wrote:
>>> Hello all,
>>>
>>> I am doing experiment with ndnSIM2.7 recently, and encountered some
>>> strange problems.
>>>
>>> The topology I used has 8 nodes,whick looks like the follows:
>>> 5
>>>    \
>>>     \
>>> 6---4--3--2--1--0
>>>     /
>>>    /
>>> 7
>>> Node 5,6,7 is consumer, and node 0 is producer. Bandwidth in 1-2 and 2-3
>>> is set to be 1Mbps, and others is set to be 5Mbps. Max packet size is
>>> set to be 10 packets. Packet payload is set to be 1024.
>>>
>>>
>>> I use 3 consumerHelper to make node 5,6,7 generate interests with
>>> different prefix, like:
>>>    NodeContainer consumerNodes1;
>>>     NodeContainer consumerNodes2;
>>>     NodeContainer consumerNodes3;
>>>     NodeContainer producerNodes;
>>>     NodeContainer routerNodes;
>>>
>>>
>>>     consumerNodes1.Add(Names::Find<Node>("5"));
>>>     consumerNodes2.Add(Names::Find<Node>("6"));
>>>
>>>     consumerNodes3.Add(Names::Find<Node>("7"));
>>>
>>>     std::string prefix1 = "/A1";
>>>     std::string prefix2 = "/A2";
>>>     std::string prefix3 = "/A3";
>>>
>>>     // Install NDN applications
>>>     ndn::AppHelper consumerHelper1("ns3::ndn::ConsumerZipfMandelbrot");
>>>     consumerHelper1.SetPrefix(prefix1);
>>>     consumerHelper1.SetAttribute("Frequency", StringValue("100")); // 100
>>> interests a second
>>>     consumerHelper1.SetAttribute("NumberOfContents", StringValue("5000"));
>>>     consumerHelper1.Install(consumerNodes1);
>>>
>>>     ndn::AppHelper consumerHelper2("ns3::ndn::ConsumerZipfMandelbrot");
>>>     consumerHelper2.SetPrefix(prefix2);
>>>     consumerHelper2.SetAttribute("Frequency", StringValue("100")); // 100
>>> interests a second
>>>     consumerHelper2.SetAttribute("NumberOfContents", StringValue("5000"));
>>>     consumerHelper2.Install(consumerNodes2);
>>>
>>>     ndn::AppHelper consumerHelper3("ns3::ndn::ConsumerZipfMandelbrot");
>>>     consumerHelper3.SetPrefix(prefix3);
>>>     consumerHelper3.SetAttribute("Frequency", StringValue("100")); // 10
>>> interests a second
>>>     consumerHelper3.SetAttribute("NumberOfContents", StringValue("5000"));
>>>     consumerHelper3.Install(consumerNodes3);
>>>
>>> what I expected is that node5,6,7 should receive data packets equally,
>>> but the actual result is node5 receive most, and node7 receive the
>>> least. I counted the rate-trace.txt, and the result is:
>>>
>>>      A1Packet: 4460
>>>      A2Packet: 1386
>>>      A3Packet: 382
>>>      totalPacket: 6228
>>>
>>>
>>> My questions are:
>>> 1、why the data packets received by the 3 consumer is so different?
>>> 2、I observed that in this scenario 1Mpbs bandwidth can transmit at most
>>> 120 or so,how is this result calculated?
>>>
>>> Thanks in advance!
>>>
>>> Sincerely,
>>> Chris Chen.
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> ndnSIM mailing list
>>> ndnSIM at lists.cs.ucla.edu
>>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim
>>>


More information about the ndnSIM mailing list