[ndnSIM] Questions about cache management scheme where nodes cooperate using header messages

Spyridon (Spyros) Mastorakis spiros.mastorakis at gmail.com
Sun Feb 22 21:34:07 PST 2015


Hello,

for your first question: yes, you should start implementing your policy in this directory.

for your second question: to my best knowledge, there are not any other tutorials for implementing cache replacement policies in ndnSIM. For cache replacement algorithms, in general, you can look at related papers on google scholar.

--
Spyridon (Spyros) Mastorakis
Personal Website: http://cs.ucla.edu/~mastorakis/
Internet Research Laboratory
PhD Computer Science
UCLA




> On Feb 22, 2015, at 8:45 AM, Kanin Assantachai <kanin at inl.ics.keio.ac.jp> wrote:
> 
> Hello,
> 
> Thank you Spyridon for your reply. I am sorry for replying back really late. I was busy in the past week and did not have much time to work with the simulator. Also, I am sorry for not explaining my situation clearly last time. Let me clarify it further below.
> 
> I am currently working on implementing algorithms for a cache management scheme that combines concepts of other basic cache management schemes (such as LFU, LRU) as well as adding my own logic to this new scheme. Because I will be creating a new type of cache management policy, I think I need to create more than just simulation scenarios. After searching through various parts of the simulator to look for where to start creating new files to implement the logic, I believe I should start from the directory /ndnSIM/ns-3/src/ndnSIM/utils/trie (version 1.0). For example, maybe I need to create "my-policy.h" file here.
> 
> However after I found where to start, I have a hard time figuring out the relationships between the related ".h files" and ".cc files" as well as which objects or components from other files I can access. I have tried to learn how they work by studying from the similarities between the provided policy files but I still do not feel confident that I understand it enough.
> 
> So, based on this situation, I would like to summarize my questions as follows.
> - Should I start implementing my own scheme at the above mentioned directory of the simulator (/ndnSIM/ns-3/src/ndnSIM/utils/trie)?
> - Besides reading from the documentation in the provided link: http://ndnsim.net/2.0/doxygen/classns3_1_1ndn_1_1ContentStore.html , would you please, if possible, suggest other resources such as another tutorial specific to implementing a separate algorithm that manipulates cached objects for a policy, or customized policies which are publicly available?
> 
> I am looking forward to receiving responses from you. Thank you so much in advance. And as for the version 2.0, I will try to update it soon.
> 
> Kanin Assantachai
> 
> On 17-Feb-15 4:05 AM, Spyridon (Spyros) Mastorakis wrote:
>> Hello,
>> 
>> First of all, as I stated to my previous email, you are encouraged to use ndnSIM 2.0, as this is the version that is undergoing continuous development and support.
>> 
>> I am not sure that I fully understand your approach. However, it seems to me that probably you do not need to modify anything internal of the simulator, but just code a proper simulation scenario.
>> 
>> Probably you will need a way to access the entries of the Content Store.
>> 
>> ndnSIM 2.0 offers two different CS structures to the user. The user can choose one of them.
>> 
>> If you are planning to use the NFD’ CS you can take a look at the documentation here:
>> 
>> http://ndnsim.net/2.0/doxygen/classnfd_1_1Cs.html
>> 
>> If you are planning to use the old ndnSIM 1.0 CS then you may take a look here:
>> 
>> http://ndnsim.net/2.0/doxygen/classns3_1_1ndn_1_1ContentStore.html
>> 
>> --
>> Spyridon (Spyros) Mastorakis
>> Personal Website: http://cs.ucla.edu/~mastorakis/
>> Internet Research Laboratory
>> PhD Computer Science
>> UCLA
>> 
>> 
>>> On Feb 16, 2015, at 1:36 AM, Kanin Assantachai <kanin at inl.ics.keio.ac.jp> wrote:
>>> 
>>> Hello all,
>>> 
>>> My name is Kanin from Thailand, but I am currently studying in Keio University in Japan. This is my first time joining this mailing list and sending a message to ask for your kind help.
>>> 
>>> Currently, I plan to implement a cache management scheme where part of it requires cooperation of nodes using header messages. Some selections of nodes will be programmed to broadcast certain amount of the contents stored in their cache storage to the nearest neighbors. I have already tried to study how different files (or parts) of the simulators (version 1.0) interact with each other, and I have tried to execute many of the provided examples in the tutorials as well. However, I have difficulties understanding how to get started on the actual implementations. I am not sure which parts I need to make changes to implement this idea. Is there any resource or tutorials already provided to help me get started on this? I have read through a lot of old archived emails, but I still cannot find the answers I am looking for.
>>> 
>>> Thank you for your clarifications in advance.
>>> 
>>> Kanin
> 





More information about the ndnSIM mailing list