<div dir="ltr"><div dir="ltr">Hi Suravi<div><br></div><div>Are you looking toward the algorithm side of things or a visualization?</div><div><br></div><div><br></div><div>If you need the algorithms, see NDN-Lite <a href="https://github.com/named-data-iot/ndn-lite/blob/3e6e9dde0d7660202aa744355e6d723f4a4e6de0/forwarder/name-tree.h">name-tree.h</a> and python-ndn <a href="https://github.com/named-data/python-ndn/blob/e314853af5d0751fce7274be0decfa91acc5e548/src/ndn/name_tree.py">NameTree</a>.</div><div><br></div>For visualization, I have a webapp that passively captures real-time network traffic and displays the observed name structure, see <a href="https://youtu.be/6t2y_-8asiw">video demo</a>.</div><div dir="ltr"><div>I haven't maintained this codebase for a few years so that it may not work right now.</div><div>If this is what you are looking for, I can fix it up so that it runs on the current version.</div><div><br></div><div><br></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div dir="ltr"><div>3/ I had long proposed to support such functions, by having each node keep a piece of metadata for the immediate children's names.</div></div></blockquote><div dir="ltr"><div><br></div><div>This is tracked as <a href="https://redmine.named-data.net/issues/4666">Feature 4666 namespace catalog protocol</a>.</div><div>The visualization demo above is passive, while this protocol allows enumerating the namespace by actively querying producers and possibly routers.</div><div>It's natural for file servers and data repositories to support such features: ndn-hydra <a href="https://ndn-hydra.readthedocs.io/src/specification/client.html#queries">files query</a> and ndn6-file-server <a href="https://github.com/yoursunny/ndn6-tools/blob/dfabc3585e37111240f6041c8417149767c6d0c4/file-server.md">directory listing</a> are custom protocols that provide similar functionality.</div><div><br></div><div>Yours, Junxiao</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Feb 24, 2022 at 11:15 AM Suravi Regmi (sregmi1) <<a href="mailto:sregmi1@memphis.edu">sregmi1@memphis.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">




<div dir="ltr"><p style="text-align:center"><font color="red"><strong>External Email</strong><br></font></p>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif;font-size:12pt;color:rgb(0,0,0)">
<div style="margin:0px;font-size:12pt"><span style="margin:0px">Hello Everyone,</span></div>
<div style="margin:0px;font-size:12pt">
<div style="margin:0px"><br>
</div>
<div style="margin:0px"> I would really appreciate to know if there exists an implementation for a hierarchical name tree for NDN names. I am looking to implement a way to store and retrieve names (possibly a trie?).</div>
<div style="margin:0px"><br>
</div>
<div style="margin:0px">Each node in the tree (ref:attached) is a name component.</div>
<div style="margin:0px"><br>
</div>
<div style="margin:0px">e.g. : /org/resource/attribute/details</div>
<div style="margin:0px"><br>
</div>
<div style="margin:0px">For the above name we will have node org with child resource with child attribute and so on.</div>
<div style="margin:0px"><br>
</div>
<div style="margin:0px">Few of the features that I want to implement are as follows:</div>
<div style="margin:0px">Traverse along the tree</div>
<div style="margin:0px">Given a node get all its children</div>
<div style="margin:0px">Searching<span> </span></div>
<div style="margin:0px">Longest prefix match and so on.</div>
<div style="margin:0px"><br>
</div>
<span style="margin:0px"></span><br>
</div>
<div style="margin:0px;font-size:12pt">Best,</div>
<span style="margin:0px;font-size:12pt">Suravi Regmi</span><br>
</div>
</div><br>
</blockquote></div></div>