[ndnSIM] Packet drops

Alex Afanasyev alexander.afanasyev at ucla.edu
Mon Mar 11 13:12:35 PDT 2013


Hi Mohammad,

That's great!  Can you make a very simple example like http://ndnsim.net/metric.html#example-of-packet-level-trace-helpers that demonstrates how to use L2Tracer and what results you can get (I can help with picture, if you want).

If you do it in your github fork, then just tell me which commit or make a pull request. I'll be happy to merge the code and put example to the website.  I can update description myself, but in case you want to update metric section of the website, the source for ndnsim.net website is in docs/source and metric page is docs/source/metrics.rst.

--
Alex

On Mar 11, 2013, at 2:04 AM, Hovaidi Ardestani Mohammad <mohammad.hovaidi.ardestani at aalto.fi> wrote:

> Hello Alex!
> Sorry for the delay.
> Yes, the code worked on my system as well!
> I have modified your code as you suggested and tested my own scenario.
> What do you want to have? I will be more than happy if I can contribute.
> Let me know exactly what should I send.
> -Mohammad
> 
> -----Original Message-----
> From: Alexander Afanasyev [mailto:cawka1 at gmail.com] On Behalf Of Alex Afanasyev
> Sent: Friday, March 8, 2013 9:50 PM
> To: Hovaidi Ardestani Mohammad
> Cc: ndnsim
> Subject: Re: [ndnSIM] Packet drops
> 
> Hi Mohammad,
> 
> Let me know after you tested if the code works as it should, so I can safely merge it to the master branch.
> 
> Also, if you will be able to make a simple usage example, I can also put it on ndnsim.net website.
> 
> Thanks!
> 
> ---
> Alex
> 
> 
> On Mar 8, 2013, at 1:02 AM, Hovaidi Ardestani Mohammad <mohammad.hovaidi.ardestani at aalto.fi> wrote:
> 
>> Oh, sorry for misunderstanding!
>> Great help.
>> Thank you so much!
>> -Mohammad
>> 
>> -----Original Message-----
>> From: Alexander Afanasyev [mailto:cawka1 at gmail.com] On Behalf Of Alex Afanasyev
>> Sent: Friday, March 8, 2013 12:18 AM
>> To: Hovaidi Ardestani Mohammad
>> Subject: Re: [ndnSIM] Packet drops
>> 
>> L2RateTracer is not a member of ns3::ndn, as it is pretty general thing and I would strongly recommend to not put it in ndn namespace.  You could have solved the usage problem by removing ndn:: prefix before L2RateTracer.
>> 
>> Can you retry?
>> 
>> Thanks,
>> Alex
>> 
>> On Mar 7, 2013, at 7:38 AM, Hovaidi Ardestani Mohammad <mohammad.hovaidi.ardestani at aalto.fi> wrote:
>> 
>>> Dear Alex
>>> I am trying to compile the l2-rate-tracer as you recommended,but there are some errors.
>>> When I want to run your code,I  encounter with error of " 'L2RateTracer' is not a member of 'ns3::ndn' ".
>>> I changed the code with namespace of ndn, and there were lots of other errors.Do you have any idea how I can modify the code to have the number of dropped packets.
>>> I really appreciate your help.
>>> ________________________________________
>>> From: Alexander Afanasyev [cawka1 at gmail.com] on behalf of Alex Afanasyev [alexander.afanasyev at ucla.edu]
>>> Sent: Thursday, February 28, 2013 9:08 PM
>>> To: Hovaidi Ardestani Mohammad
>>> Cc: ndnsim at lists.cs.ucla.edu
>>> Subject: Re: [ndnSIM] Packet drops
>>> 
>>> Hi Mohammad,
>>> 
>>> Sorry for the confusion.  What I meant is that NS-3 provides you callback mechanism inside a transmission queue, to which you can "connect" and get data.  ndn-l3-rate-tracer is really a helper class that is pretty useful, but it is just a helper.
>>> 
>>> I have sketch out a draft implementation of another helper, l2-rate-tracer (you can check the code from feature-l2-tracer branch, or get this commit https://github.com/NDN-Routing/ndnSIM/commit/c759762fb12bfb5219715c5699ca8370d8ee6402).  This is basically one of zillion ways to "connect" to /NodeList/*/DeviceList/*/TxQueue/Drop trace (see https://github.com/NDN-Routing/ndnSIM/commit/c759762fb12bfb5219715c5699ca8370d8ee6402#L2R50) and do some basic preprocessing.
>>> 
>>> I have not fully tested the code, but it compiles on my machine.
>>> 
>>> As for other types of drops that I mentioned (by ndnSIM itself), which are "exposed" through DropData/DropInterest NS-3 trace sources.  This info is already aggregated by ndn-l3-rate-tracer, but I just commented out lines to print them (https://github.com/NDN-Routing/ndnSIM/blob/master/utils/tracers/ndn-l3-rate-tracer.cc#L173).  You can uncomment and see if anything useful is there.  But again, these "NDN" drops are specific to the forwarding strategy used, and you may be seeing zeroes here.
>>> 
>>> Hope I clarified confusion. Let me know if I should explain more.
>>> 
>>> ---
>>> Alex
>>> 
>>> On Feb 28, 2013, at 12:44 AM, Hovaidi Ardestani Mohammad <mohammad.hovaidi.ardestani at aalto.fi> wrote:
>>> 
>>>> Hi Alex
>>>> To tell the truth I didn't get your point. Let me explain what I am going to do. Actually, I need to have one tracer like "ndn-l3-rate-tracer.h" in which I can see the exact number of dropped packets due to buffer overflow or other possible reasons in each router. Could you please guide me more elaborately?
>>>> Thank you in advance!
>>>> -Mohammad
>>>> -----Original Message-----
>>>> From: Alexander Afanasyev [mailto:cawka1 at gmail.com] On Behalf Of Alex Afanasyev
>>>> Sent: Wednesday, February 27, 2013 10:27 PM
>>>> To: Hovaidi Ardestani Mohammad
>>>> Cc: ndnsim at lists.cs.ucla.edu
>>>> Subject: Re: [ndnSIM] Packet drops
>>>> 
>>>> Hi Mohammad,
>>>> 
>>>> If you're talking about normal drops due to queue overflows, then you can use packet drop traces from NetDevice queue (you can check examples in src/visualizer/model/pyviz.cc):
>>>> 
>>>> - /NodeList/*/DeviceList/*/TxQueue/Drop
>>>> 
>>>> If you want to factor in cases when ndnSIM stops forwarding packet (which is not exactly a drop), then you may want to also use
>>>> 
>>>> - /NodeList/*/$ns3::ndn::ForwardingStrategy/DropInterests
>>>> - /NodeList/*/$ns3::ndn::ForwardingStrategy/DropData
>>>> 
>>>> However, I'm not confident 100% that right now ndnSIM tracks all the cases of stopped forwarding of Interst/Data.
>>>> 
>>>> ---
>>>> Alex
>>>> 
>>>> On Feb 27, 2013, at 5:51 AM, Hovaidi Ardestani Mohammad <mohammad.hovaidi.ardestani at aalto.fi> wrote:
>>>> 
>>>>> Hello everybody!
>>>>> I have several scenarios in which congestion happens. I am wondering how I can trace dropped packets or know when packet dropping has been started?
>>>>> Any help is appreciated in advance
>>>>> BR
>>>>> -Mohammad
>>> 
>> 
> 





More information about the ndnSIM mailing list