[Nfd-dev] How to physically separate FIB and PIT ?

Junxiao Shi shijunxiao at email.arizona.edu
Thu Apr 20 23:25:23 PDT 2017


Hi Ilya

NFD puts FIB and PIT together for a reason: FIB and PIT lookups are often
used together during Interest packet processing. They achieve a speed-up
via NameTree::get() functions which take advantage of the shortcuts between
table entries.

"allocate secondary nameTree and feed it to PIT" does not work because
NameTree::get() functions are still assuming PIT and other tables are on
the same NameTree. You'll need to change that function to always use
name-based lookups and not use the shortcuts.

During 4th NDN hackathon, my project was an initial implementation of
Interest digest in NFD.
https://github.com/4th-ndn-hackathon/Initial-Implementation-of-Interest-Digest-in-NFD
In this project, the PIT is switched to a digest index and is thus taken
off the NameTree. You may get some ideas on how much work is needed to
separate PIT and FIB.

Yours, Junxiao

On Thu, Apr 20, 2017 at 10:25 PM, Ilya Moiseenko <iliamo at mailbox.org> wrote:

> Hi NFD developers,
> I insert 10K to 1M FIB entries in NFD for some performance tests related
> to FIB lookup speed. As a result PIT lookups become proportionally slower
> to the FIB size, which prevents me from getting correct results. I noticed
> that PIT and FIB physically share the same data structure - NameTree, and
> tried to allocate secondary nameTree and feed it to PIT. Unfortunately, it
> seems that there is an additional interplay between PIT, FIB,
> StrategyChoice, Measurements which results in NFD termination once I pass
> Interest/Data through it.
>
> Does anyone have an idea how to disintegrate PIT and FIB ? I don’t really
> need Measurement and StrategyChoice in working condition.
>
> Thanks
> Ilya
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/nfd-dev/attachments/20170420/12576608/attachment.html>


More information about the Nfd-dev mailing list