[ndnSIM] ndnSIM compatibility with packet loss simulation

Alex Afanasyev alexander.afanasyev at ucla.edu
Mon Apr 15 11:12:37 PDT 2013


Hi Saran,

I'm not sure that it is entirely ContentStore's task to decide whether or not to cache specific content objects.  If you're using ContentStore that respects freshness (http://ndnsim.net/cs.html#content-stores-respecting-freshness-field-of-contentobjects), then you can set from the application an amount of time a specific ContentObject is allowed to stay in the cache.

On the other hand, if you want to cache some prefixes in one content store, and don't cache in the other, the application-based approach will not work anymore.  To solve this in a real system we would need some kind of "caching policies".  I'm not yet really sure how can we formalize such policies in the simulator (=what data structure to use), which will give us the solution, but will not incur too much computational overhead (in other words, I don't want to use XML-based policies...).

After we decide on how to capture this policies (may be using something like FIB?), it should be relatively easy to implement a customized version of content store, similar to ns3::ndn::cs::Freshness::* and ns3::ndn::cs::Stats::*.

---
Alex

On Apr 15, 2013, at 2:42 AM, Saran Tarnoi <sarantarnoi at gmail.com> wrote:

> Hi Alex,
> 
> Thank you very much for your time writing the much improved codes.
> It works properly.
> 
> I have a suggestion for ndnSIM. To be honest with you, I want to do this but I have some difficulties studying the codes. :)
> Each node should be able to selectively cache the ContentObject based on its name prefix.
> For instance, node A will always cache the ContentObject whose prefix is led by "/prefix1/" but it will never cache the content whose prefix is led by "/prefix2/..." in its Content Store.
> This will make routing more fancy, leading to a more sophisticated flow control. 
> Could you give me some ideas?
> 
> Thanks,
> 
> regards,
> Saran
> 
> 
> 
> 2013/4/15 Alex Afanasyev <alexander.afanasyev at ucla.edu>
> Hi Saran,
> 
> Thank you very much for your time!
> I made another variation of implementation based on your code.  Instead of hard coding ErrorModel parameters, I decided to allow users to specify both specific error model, as well as error model parameters (like this ns3::RateErrorModel,ErrorUnit=ERROR_UNIT_PACKET,ErrorRate=0.9).   
> 
> Can you check out code from "feature/topology-reader-error-model" branch on github and tell me what you think (I hope it works)?
> 
> Thanks again,
> Alex
> 
> On Apr 14, 2013, at 9:18 PM, Saran Tarnoi <sarantarnoi at gmail.com> wrote:
> 
>> Dear Alex,
>> 
>> I spent some time this morning to implement a simple link-error-rate configuration ability in Topology file.
>> As you have told me, it's quite simple.
>> I added several lines to AnnotatedTopologyReader.cc.
>> Would you kindly check it.
>> The usage is just adding some loss rate data in the most right column of the link section in the Topology file.
>> I will added more functions and let you consider binding it to the official branch of ndnSIM in the future.
>> 
>> Thanks,
>> Saran Tarnoi
>> 
>> 
>> 2013/4/13 Saran Tarnoi <sarantarnoi at gmail.com>
>> Hi Alex,
>> 
>> The simulation of different error rates on different links is my intention.
>> 
>> I think It does make sense to create a solution that fits well any of error model.
>> Once ndnSim is used for the simulation of multimedia streaming, the different error models may result in different quality of the received data at a destination.
>> I think It is positive to have this function, though it is not necessary for my case now.
>> 
>> Thanks,
>> Saran
>> 
>> On Apr 13, 2013 2:40 AM, "Alex Afanasyev" <alexander.afanasyev at ucla.edu> wrote:
>> Hi Saran,
>> 
>> Do you need a precise control over which error rate is set on which link, or you want to just set the same error rate on all links?
>> 
>> I think, it could be possible and relatively simple to add this function to AnnotatedTopologyReader.  Are there just two parameters you mentioned or there is something else to be configured?  I see that there are also other error models available in NS-3 (BinaryErrorModel, ListErrorModel, and ReceiveListErrorModel).  Would it make sense to create a solution to allow any of these models?   I'm not quite sure how exactly to extend the reader, so the solution is general enough...
>> 
>> ---
>> Alex
>> 
>> On Apr 11, 2013, at 11:12 PM, Saran Tarnoi <sarantarnoi at gmail.com> wrote:
>> 
>> > Dear Alex and All,
>> >
>> > I see an example code in ns-3 that simulates simple packet loss by setting an attribute of RateErrorMode in Netdevice.
>> > I guest that ndnSIM also support this.
>> >
>> > There will be hundreds of links in my simulating networks.
>> > I cannot do manually link configuration, so using topology file is my choice.
>> > However, I have no idea how to set the ErrorRate and ErrorUnit of each link in the topology file that will be later read by using AnnotatedTopologyReader.
>> >
>> > If you know the solution, please give me some ideas.
>> > Thanks a lot in advance for your time.
>> >
>> > --
>> > Regards,
>> > Saran
>> >
>> > _______________________________________________
>> > ndnSIM mailing list
>> > ndnSIM at lists.cs.ucla.edu
>> > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim
>> 
>> 
>> 
>> 
>> -- 
>> Regards,
>> Saran Tarnoi
>> Graduate Student
>> Department of Informatics
>> The Graduate University for Advanced Studies (Sokendai)
>> Tokyo, Japan
>> http://sarantarnoi.blogspot.jp
>> <annotated-topology-reader.cc>_______________________________________________
>> 
>> ndnSIM mailing list
>> ndnSIM at lists.cs.ucla.edu
>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim
> 
> 
> 
> 
> -- 
> Regards,
> Saran Tarnoi
> Graduate Student
> Department of Informatics
> The Graduate University for Advanced Studies (Sokendai)
> Tokyo, Japan
> http://sarantarnoi.blogspot.jp
> _______________________________________________
> ndnSIM mailing list
> ndnSIM at lists.cs.ucla.edu
> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim

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


More information about the ndnSIM mailing list