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

Kanin Assantachai kanin at inl.ics.keio.ac.jp
Sun Feb 22 08:45:40 PST 2015


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 
- 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 

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
>> 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