[ndnSIM] Packet drops

Alex Afanasyev alexander.afanasyev at ucla.edu
Thu Feb 28 11:08:01 PST 2013

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.


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