[ndnSIM] structure of fib in ndnsim
huyao0107 at gmail.com
Fri Mar 15 10:48:16 PDT 2013
Thanks for your clarification. I have understood what you said. It was my
Yes. I looked into the ndnsim API and felt a little curious that why FIB
does not have a lookup functionality like PIT. I really appreciate if you
can provide this functionality. Thanks very much!
Besides, regarding the fib structure, I have one more question. In the
default fib structure, one specific face (like face 1) in one fib entry
appears just once. If I use Add() or AddRoute() to add a same ndn route
twice or more, face 1 in this fib entry is still only one. My question is,
is there a possibility or a way to record the `twice` or more? A very
direct thought is could I store one specific face twice or more in one fib
entry? Or are there any other ways to do such a behavior?
Thanks for your answer in advance!
2013/3/16 Alex Afanasyev <alexander.afanasyev at ucla.edu>
> Hi huyao,
> fib::Entry object associated with exactly one prefix, so RemoveFace method
> on fib::Entry will not have impact on any other entries.
> Let me show an example:
> # step one: find a FIB entry for the prefix associated with Interest
> Ptr<fib::Entry> entry = fib->LongestPrefixMatch (interest);
> # remove a specific face
> entry->RemoveFace (face_to_remove);
> This will not impact any other FIB entries.
> I just realized that the current FIB interface doesn't provide direct way
> to do lookup just using Name (=NameComponents). But it would be trivial to
> add this functionality, as underlying data structures fully support that.
> Let me know if you need it. (Alternatively, you can also enumerate all FIB
> entries using Begin/End/Next methods and find the one you need, but it can
> be too inefficient.)
> On Mar 15, 2013, at 1:33 AM, yao hu <huyao0107 at gmail.com> wrote:
> Hi Alex,
> Thanks for your explanation!
> I am sorry I still have the perplexity. I saw that fib::Entry->RemoveFace
> call just has one parameter (const Ptr< Face<http://ndnsim.net/doxygen/classns3_1_1ndn_1_1_face.html> >
> &face) without relation to some specific prefix, so I guess if I want to
> delete one specific face from one specific prefix, it will have the same
> impact to other prefixes which also have the face.
> My intention is to delete one specific face from a specific prefix, while
> any other prefix still retains the face if it has. Is it feasible in the
> current ndnsim? If not, how do I do to implement such a functionality? Or
> my understanding for this issue has some error?
> 2013/3/15 Alex Afanasyev <alexander.afanasyev at ucla.edu>
>> My small correction :). I meant that it is forwarding strategy job to
>> pick a particular face from FIB entry.
>> On Mar 14, 2013, at 7:55 PM, Alex Afanasyev <alexander.afanasyev at ucla.edu>
>> Hi huyao,
>> You are right, for the single prefix there will be only one FIB entry
>> created and it is forwarding strategy job to pick a particular one to
>> forward an Interest in this prefix.
>> There is an interface in fib::Entry to remove a specific face from s
>> specific FIB entry. You can also check recent conversation
>> http://www.lists.cs.ucla.edu/pipermail/ndnsim/2013-March/000242.htmlwith more details about that.
>> On Mar 14, 2013, at 7:28 PM, yao hu <huyao0107 at gmail.com> wrote:
>> a supplement.. If so, is there a way to delete just some face like face 0
>> from the fib entry with the prefix /data without deleting face 1?
>> Thanks for your reply!
>> 2013/3/15 yao hu <huyao0107 at gmail.com>
>>> Dear ndnsimers,
>>> Assume that there is an existing fib entry with the prefix /data, face 0
>>> in some specific node. Now by using the function Add() or AddRoute(), a new
>>> fib entry will be added with the same prefix /data, but with the different
>>> face 1. So I wonder in ndnsim, they are counted as two fib entries in FIB
>>> or just seemed as one. For my understanding, the answer is the latter.
>>> Here, in Fib class, GetSize<http://ndnsim.net/doxygen/classns3_1_1ndn_1_1_fib.html#a93a184d9fdc1ace4ea82647c5834ff9c> ()
>>> still equals to 1. Am I right?
>> ndnSIM mailing list
>> ndnSIM at lists.cs.ucla.edu
> ndnSIM mailing list
> ndnSIM at lists.cs.ucla.edu
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the ndnSIM