[ndnSIM] Relationship between ndnSIM (2.0) and NFD.

Anil Jangam anilj.mailing at gmail.com
Thu May 14 01:18:24 PDT 2015


Hello Alex,

Can you please share your opinions on this problem? Thanks.

/anil.
On May 12, 2015 7:29 PM, "Spyridon (Spyros) Mastorakis" <
spiros.mastorakis at gmail.com> wrote:

> Unfortunately, I am not sure whether there is such a simple workaround for
> this thing. There are currently some suggestions/thoughts on the table, but
> they are not so trivial.
>
> I am afraid that I do not have a clear timeline for this task right now.
> It should be done, though, in the near future.
>
> --
> Spyridon (Spyros) Mastorakis
> Personal Website: http://cs.ucla.edu/~mastorakis/
> Internet Research Laboratory
> PhD Computer Science
> UCLA
>
>
>
>
> > On May 12, 2015, at 11:54 AM, Anil Jangam <anilj.mailing at gmail.com>
> wrote:
> >
> > Hello Spyros,
> >
> > Thanks for the detailed elaboration! I have ported the NLSR to ndnSIM
> already, and doing some basic tests right now. For this porting, I have
> taken ndnSIM code into my own git repo (its an independent one, and not a
> branch) . So for now, focus is on porting, and getting it up.
> >
> > So far, I was not clear and assuming that NFD needed to be running from
> outside. Now, I will stop my NFD instance before I launch ndnSIM. AFA
> ndn::Face in ndnSIM is concerned, what workaround would you suggest? I read
> the redmine 2370, and it does not appear to be a quick change. Also I am
> not sure of its timelines. Alex perhaps can comment on this.
> >
> > /anil.
> >
> >
> >
> >
> > On Tue, May 12, 2015 at 8:18 AM, Spyridon (Spyros) Mastorakis <
> spiros.mastorakis at gmail.com> wrote:
> > Hi Anil,
> >
> > currently the code of NFD version 0.2.0 (or at least a big part of it
> including all the forwarding pipelines, CS, FIB, PIT etc) is a part of the
> ndnSIM 2.0 codebase. The near future plan is to decouple NFD from ndnSIM,
> so that we can port new versions of NFD in an easy way (actually this has
> already been done, since I have a workable version of ndnSIM 2.0 using NFD
> 0.3.1 as a submodule. I am not sure, though, when these changes would be
> merged). In the current ndnSIM codebase, you can see how we ported NFD to
> ndnSIM by looking for 4 or 5 commits, the title of which starts with
> “NFD:”. For example:
> >
> >
> https://github.com/NDN-Routing/ndnSIM/commit/542a62381aa36bdf6d936893270f2cb60f9f6ea9
> >
> > Currently, the NFD ported in ndnSIM is being started by ndnSIM itself:
> >
> >
> https://github.com/NDN-Routing/ndnSIM/blob/master/helper/ndn-stack-helper.cpp#L156
> >
> > You cannot start a NFD instance externally to the simulator, since NFD
> is currently a part of the simulator and is controlled by the simulator.
> You cannot set up any IP addresses or UDP/TCP transport, since this NFD
> works “locally” on each simulated node.
> >
> > Did you try to port NLSR directly to the simulator? Or you are working
> on a custom NLSR version? From the logs, I guess that the first one is the
> case. I can see that you are trying to use ndn::Face, however, this is not
> currently supported by ndnSIM. The plan is to be supported in the near
> future. Here is the redmine issue for that:
> >
> > http://redmine.named-data.net/issues/2370
> >
> > When this task is done, you will be able to port directly real-world
> applications to ndnSIM.
> >
> > Please let me know if you need anything else.
> >
> > --
> > Spyridon (Spyros) Mastorakis
> > Personal Website: http://cs.ucla.edu/~mastorakis/
> > Internet Research Laboratory
> > PhD Computer Science
> > UCLA
> >
> >
> >
> >
> > > On May 12, 2015, at 1:07 AM, Anil Jangam <anilj.mailing at gmail.com>
> wrote:
> > >
> > > Hi,
> > >
> > > In ndnSIM 2.0, is it required to run the NFD in the background for the
> simulator to run? I want to understand the relationship of NFD wrt ndnSIM.
> > >
> > > The release notes of ndnSIM 2.0 says that NDN forwarding and
> management is implemented using NFD source. What does this really mean? For
> example, when we configure the face-uri of the link between the nodes in
> the scenario, do we have to provide a real IP address and port or just any
> arbitrary name (e.g. udp://cs.com) would work?
> > >
> > > The initial 3 node scenario that I am currently testing, I am getting
> the following exception.
> > >
> > > Installing NDN stack on nodes
> > > Installing global routing interface on nodes
> > > terminate called after throwing an instance of 'ndn::Transport::Error'
> > >   what():  error while connecting to the forwarder
> > >
> > > Thread [1] 4723 [core: 2] (Suspended : Signal : SIGABRT:Aborted)
> > > __GI_raise() at raise.c:56 0x7fffe90a1cc9
> > > __GI_abort() at abort.c:89 0x7fffe90a50d8
> > > __gnu_cxx::__verbose_terminate_handler() at 0x7fffe99ac6b5
> > > 0x7fffe99aa836
> > >
> > > std::terminate() at 0x7fffe99aa863
> > > __cxa_rethrow() at 0x7fffe99aaaf6
> > > ndn::Face::processEvents() at face.cpp:445 0x7ffff5ac9572
> > > ns3::ndn::NlsrApp::startEventLoop() at ndn-nlsr-app.cpp:288
> 0x7ffff58b47da
> > > ns3::ndn::NlsrApp::StartApplication() at ndn-nlsr-app.cpp:346
> 0x7ffff58b4e6c
> > > ns3::EventMemberImpl0::Notify() at make-event.h:94 0x7fffef3643b6
> > >
> > > <...more frames...>
> > >
> > > I looked for references the error, and it says (according to this
> note), that NFD is not running.
> > >
> > > I have configured the node as follows.
> > >
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Router Name: /cs/memphis/rtr0
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Site Name: /edu/memphis
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Network: /ndn
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Router Prefix:
> /ndn/edu/memphis/cs/memphis/rtr0
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] ChronoSync sync Prefix:
> /ndn/NLSR/sync
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] ChronoSync LSA prefix:
> /ndn/NLSR/LSA
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Hello Interest retry number: 10
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Hello Interest resend second: 1
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Info Interest interval: 60
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] LSA refresh time: 1800
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] LSA Interest lifetime: 4 seconds
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Router dead interval: 3600
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Max Faces Per Prefix: 3
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Hyperbolic Routing: 0
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Hyp R: 123.45
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Hyp theta: 1.45
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Log Directory:
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Seq Directory:
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Adjacency LSA build interval: 5
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] First Hello Interest interval:
> 10
> > > 0s 0 ConfParameter:writeLog(): [DEBUG] Routing calculation interval: 15
> > > 0s 0 AdjacencyList:writeLog(): [DEBUG] -------Adjacency List--------
> > > 0s 0 AdjacencyList:writeLog(): [DEBUG] Number of neighbors: 1
> > > 0s 0 Adjacent:writeLog(): [DEBUG] Adjacent : /toNode
> > > 0s 0 Adjacent:writeLog(): [DEBUG] Connecting FaceUri: udp://cs.com
> > > 0s 0 Adjacent:writeLog(): [DEBUG] Link Cost: 20
> > > 0s 0 Adjacent:writeLog(): [DEBUG] Status: 0
> > > 0s 0 Adjacent:writeLog(): [DEBUG] Interest Timed out: 0
> > > 0s 0 NlsrApp:initialize(): [DEBUG] Default NLSR identity: /
> > > 0s 0 NlsrApp:setInfoInterestFilter(): [DEBUG] Setting interest filter
> for name: /ndn/edu/memphis/cs/memphis/rtr0
> > > 0s 0 NlsrApp:setLsaInterestFilter(): [DEBUG] Setting interest filter
> for name: /ndn/NLSR/LSA/
> > >
> > > Can you please elaborate.
> > >
> > > /anil.
> > >
> >
> >
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150514/6a1ea25e/attachment.html>


More information about the ndnSIM mailing list