[Mini-NDN] NLSR has not converged - Issue while running minindn

Rajendran Jeeva rajendrj at tcd.ie
Tue Jun 28 12:06:34 PDT 2016


Thanks for the help Ashlesh!

~Jeeva

On 23 June 2016 at 23:31, Ashlesh Gawande (agawande) <agawande at memphis.edu>
wrote:

> If you have installed ndn-tools, it has ndndump in it which can be started
> on every node on every interface:
>
>
> for host in self.net.hosts:
>
>          for intf in host.intfNames():
>                 ndnDumpOutputFile = "dump.%s_%s" % (intf,
> str(host.intf(intf).IP()))
>                 host.cmd("sudo ndndump  -i %s > %s &" % (intf,
> ndnDumpOutputFile))
>
> Then dump files would be available in /tmp/<node-name>/dump_intf*
>
> Else there is this unofficial version of NDN wireshark:
> https://github.com/relue2718/ndn-wireshark-dissector
>
> Ashlesh
>
> ------------------------------
> *From:* Rajendran Jeeva <rajendrj at tcd.ie>
> *Sent:* Thursday, June 23, 2016 5:17:18 PM
>
> *To:* Ashlesh Gawande (agawande)
> *Cc:* mini-ndn at lists.cs.ucla.edu
> *Subject:* Re: [Mini-NDN] NLSR has not converged - Issue while running
> minindn
>
> Hi Ashlesh,
>
> The above scenario is being intermittent now. Sometimes ndnpingserver
> process from setup is running without being killed and in other cases the
> process is getting killed. I noticed the above by doing 'grep' for
> ndnpingserver.
>
> Upon printing ndnpinserver command using 'print(host.cmd.....' , a process
> ID is being printed and this ID is sometimes getting listed in 'ps aux'
> (where the ndnpingserver keeps running) and sometimes not getting listed
> (where the server is killed)
>
> I am still looking into it.
>
> Just by putting the ndnpingserver in ping module, I started working on
> mini-ndn for my project. I like the way mini-ndn is framed.
>
> Meanwhile, Is there is a packet dissector like Wireshark that works for
> minindn ? (I am in need of looking into the packets that get generated out
> of communication between NDN nodes in mini-ndn. Is it possible?)
>
> Please advise
>
> thanks,
> Jeeva
>
> On 17 June 2016 at 17:57, Ashlesh Gawande (agawande) <agawande at memphis.edu
> > wrote:
>
>> I am not sure why ndnpingserver won't work from setup.
>>
>>
>> Were the ndnpingservers running while the experiment ran or did they quit
>> (ps aux | grep ndnpingserver) when you start them from setup?
>>
>>
>> Maybe in setup try:
>>
>>            print(host.cmd("ndnpingserver /ndn/edu/" + str(host) + " >
>> ping-server &"))
>>
>>
>> Ashlesh
>> ------------------------------
>> *From:* Rajendran Jeeva <rajendrj at tcd.ie>
>> *Sent:* Thursday, June 16, 2016 11:44:56 AM
>>
>> *To:* Ashlesh Gawande (agawande)
>> *Cc:* mini-ndn at lists.cs.ucla.edu
>> *Subject:* Re: [Mini-NDN] NLSR has not converged - Issue while running
>> minindn
>>
>> Hi Ashlesh,
>>
>> Thanks for the response.
>>
>> I tried the following (sorry for the long mail)
>>
>> #1 - Manual try
>>
>> When I tried invoking 'ndnpingserver' followed by 'ndnping' manually for
>> a host as follows, ndnping received the contents and meanwhile
>> ndnpingserver file showed the interests that are received
>>
>> //
>>
>> mininet> a ndnpingserver /ndn/edu/a > ndnpingserver &
>>
>> mininet> b ndnping -c 5 /ndn/edu/a
>>
>> //
>>
>> Above commands worked for all the hosts
>>
>> #2. - from minindn script - They seem to be not working while running
>> from minindn script
>>
>> I replicated the above manual scenario in the code in experiment.py file
>> , by replacing this line 'host.cmd("ndnpingserver /ndn/edu/" + str(host) +
>> " > ping-server &")' from setup module to ping module as follows:
>>
>> // ndn/experiments/experiment.py
>>
>> def setup(self):
>>
>> ........
>>
>> #host.cmd("ndnpingserver /ndn/edu/" + str(host) + " > ping-server &")
>>
>> .......
>>
>>  def ping(self, source, dest, nPings):
>>
>> .......
>>
>> *dest.cmd("ndnpingserver /ndn/edu/" + str(dest) + " > ping-server &")*
>> source.cmd("ndnping -t -c "+ str(nPings) + " /ndn/edu/" + dest.name + "
>> >> ping-data/" + dest.name + ".txt &")
>>
>> //
>>
>> as quoted in the code above I tried running ndnpingserver just before
>> calling ndnping client , reinstalled mini-ndn , executed pingall experiment
>> and the ping got content for the interests
>>
>>
>> But, executing ndnpingserver from setup module is not keeping
>> ndnpingserver listening (no change in ping-server file-no interests
>> received expect for the prefix entry)
>>
>> // ndn/experiments/experiment.py
>>
>> def setup(self):
>>
>> ........
>>
>> *host.cmd("ndnpingserver /ndn/edu/" + str(host) + " > ping-server &")*
>>
>> .......
>>
>>  def ping(self, source, dest, nPings):
>>
>> .......
>>
>> *#*dest.cmd("ndnpingserver /ndn/edu/" + str(dest)* + " > ping-server &")*
>> source.cmd("ndnping -t -c "+ str(nPings) + " /ndn/edu/" + dest.name + "
>> >> ping-data/" + dest.name + ".txt &")
>> //
>>
>> when I tried with logging statements for both the scenarios,
>> 'statusRouter' printed our an error message for the last one (scenario
>> where ndnpingserver started from setup module and no content received). The
>> error message is shown below:
>>
>>
>> statusRouter
>> ERROR: Key does not exist:/tmp-identity/%16%1B%CA8/ksk-1466093584396
>>   /ndn/edu/%C1.Router/cs/d nexthops={faceid=261 (cost=30)}
>>   /ndn/edu/%C1.Router/cs/b nexthops={faceid=261 (cost=20)}
>>   /ndn/edu/%C1.Router/cs/c nexthops={faceid=258 (cost=0)}
>>   /ndn/edu/%C1.Router/cs/a nexthops={faceid=261 (cost=10)}
>> For the other case there is no error for statusRouter.
>>
>> Please advise
>>
>> Thank you!
>>
>> ~Jeeva
>>
>>
>> On 15 June 2016 at 18:17, Ashlesh Gawande (agawande) <
>> agawande at memphis.edu> wrote:
>>
>>> So in Mini-NDN did you follow these steps to check whether ndnping works:
>>>
>>>
>>> mininet> a ndnpingserver /ndn/edu/a > ndnpingserver &
>>>
>>> mininet> b ndnping -c5 /ndn/edu/a
>>>
>>>
>>> If this does not work can you check if ndnpingserver output anything to
>>> /tmp/a/ndnpingserver or whether it is running (ps aux | grep
>>> ndndpingserver).
>>>
>>> If it is running can you try:
>>>
>>> mininet> a ndnping -c5 /ndn/edua
>>>
>>> I am not sure about the NFD error, are you running NFD while you are
>>> running Mini-NDN?
>>>
>>>
>>> Ashlesh
>>> ------------------------------
>>> *From:* Rajendran Jeeva <rajendrj at tcd.ie>
>>> *Sent:* Wednesday, June 15, 2016 11:48:36 AM
>>>
>>> *To:* Ashlesh Gawande (agawande)
>>> *Cc:* mini-ndn at lists.cs.ucla.edu
>>> *Subject:* Re: [Mini-NDN] NLSR has not converged - Issue while running
>>> minindn
>>>
>>> I tried running 'NFD' in one terminal (using sudo nfd-start) and
>>> meanwhile checked for the nfd-status in another terminal(using sudo
>>> nfd-status), and I saw the following messages in the terminal where NFD was
>>> running:
>>>
>>> 1466016269.157386 INFO: [UnixStreamTransport]
>>> [id=0,local=unix:///run/nfd.sock,remote=fd://28] Creating transport
>>> 1466016269.157470 INFO: [FaceTable] Added face id=261 remote=fd://28
>>> local=unix:///run/nfd.sock
>>> 1466016269.202716 INFO: [Transport]
>>> [id=261,local=unix:///run/nfd.sock,remote=fd://28] setState UP -> FAILED
>>> 1466016269.202831 INFO: [Transport]
>>> [id=261,local=unix:///run/nfd.sock,remote=fd://28] setState FAILED -> CLOSED
>>> 1466016269.207058 INFO: [FaceTable] Removed face id=261 remote=fd://28
>>> local=unix:///run/nfd.sock
>>>
>>>
>>> Jeeva
>>>
>>> On 15 June 2016 at 17:41, Rajendran Jeeva <rajendrj at tcd.ie> wrote:
>>>
>>>> Thanks Ashlesh!
>>>>
>>>> When I tried pingAll experiment today all the pings were getting timed
>>>> out (no content entries in the text file; only timeout entries)
>>>>
>>>> rajendrj at Jeeva:~$ grep -c content /tmp/*/ping-data/*.txt
>>>> /tmp/a/ping-data/b.txt:0
>>>> /tmp/a/ping-data/c.txt:0
>>>> /tmp/a/ping-data/d.txt:0
>>>> /tmp/b/ping-data/a.txt:0
>>>> /tmp/b/ping-data/c.txt:0
>>>> /tmp/b/ping-data/d.txt:0
>>>> /tmp/c/ping-data/a.txt:0
>>>> /tmp/c/ping-data/b.txt:0
>>>> /tmp/c/ping-data/d.txt:0
>>>> /tmp/d/ping-data/a.txt:0
>>>> /tmp/d/ping-data/b.txt:0
>>>> /tmp/d/ping-data/c.txt:0
>>>> rajendrj at Jeeva:~$ grep -c timeout /tmp/*/ping-data/*.txt
>>>> /tmp/a/ping-data/b.txt:10
>>>> /tmp/a/ping-data/c.txt:10
>>>> /tmp/a/ping-data/d.txt:10
>>>> /tmp/b/ping-data/a.txt:10
>>>> /tmp/b/ping-data/c.txt:10
>>>> /tmp/b/ping-data/d.txt:10
>>>> /tmp/c/ping-data/a.txt:10
>>>> /tmp/c/ping-data/b.txt:10
>>>> /tmp/c/ping-data/d.txt:10
>>>> /tmp/d/ping-data/a.txt:10
>>>> /tmp/d/ping-data/b.txt:10
>>>> /tmp/d/ping-data/c.txt:10
>>>>
>>>> I was running the command from only one terminal (no other terminals
>>>> are open). NFD and NLSR status are getting displayed for all the nodes
>>>>
>>>> I also tried manually 'ndnping' from the node 'a' to the prefix
>>>> '/ndn/edu/b' , but it got timed out as well
>>>>
>>>> Is there a way to track the reason behind these timeouts ?
>>>>
>>>> Please advise
>>>>
>>>> thanks,
>>>> Jeeva
>>>>
>>>>
>>>> On 14 June 2016 at 21:08, Ashlesh Gawande (agawande) <
>>>> agawande at memphis.edu> wrote:
>>>>
>>>>> It is not expected, I think you have timeouts in those, search:
>>>>>
>>>>> grep -c timeout /tmp/*/ping-data/*.txt
>>>>>
>>>>>
>>>>> ndnping is timing out for some reason - either NFD went down during
>>>>> the experiment in another terminal
>>>>>
>>>>> (you can keep checking ps aux | grep "sudo nfd") or ndnpingserver went
>>>>> down on any of the node.
>>>>>
>>>>>
>>>>> Ashlesh
>>>>> ------------------------------
>>>>> *From:* Rajendran Jeeva <rajendrj at tcd.ie>
>>>>> *Sent:* Tuesday, June 14, 2016 2:48:39 PM
>>>>>
>>>>> *To:* Ashlesh Gawande (agawande)
>>>>> *Cc:* mini-ndn at lists.cs.ucla.edu
>>>>> *Subject:* Re: [Mini-NDN] NLSR has not converged - Issue while
>>>>> running minindn
>>>>>
>>>>> Hi Ashlesh,
>>>>>
>>>>> Thank you for sorting out the problem.
>>>>>
>>>>> I am using Ubuntu 14.04 LTS.
>>>>>
>>>>> Yeah. 'nfd-status' was not working even outside the mini-ndn folder
>>>>> (seems like nfd-start and stop were working, I even got 'NFD already
>>>>> running' message when i triggered nfd-start multiple times)
>>>>>
>>>>> When i tried checking out the above patch in NFD folder there was
>>>>> 'fatal: reference not in tree' issue. So, i removed '--depth 1' part from
>>>>> git clone of NFD in install.sh of mini-ndn and reinstalled it
>>>>>
>>>>> I checked out the above patch as well and ran waf configuration and
>>>>> installation
>>>>>
>>>>> Then i executed both 'nfd-status' and pingall experiment and both got
>>>>> executed successfully with the convergence time of 120 instead of 60. Thank
>>>>> you so much for the help.
>>>>>
>>>>> I just have one more query. When I executed the command 'sudo minindn
>>>>> --experiment=pingall --ctime 120 --nPings=50' and checked ping-data , it
>>>>> showed count for only few files . Is this expected ?
>>>>>
>>>>> rajendrj at Jeeva:~$ grep -c content /tmp/*/ping-data/*.txt
>>>>> /tmp/a/ping-data/b.txt:243
>>>>> /tmp/a/ping-data/c.txt:0
>>>>> /tmp/a/ping-data/d.txt:0
>>>>> /tmp/b/ping-data/a.txt:0
>>>>> /tmp/b/ping-data/c.txt:0
>>>>> /tmp/b/ping-data/d.txt:0
>>>>> /tmp/c/ping-data/a.txt:0
>>>>> /tmp/c/ping-data/b.txt:242
>>>>> /tmp/c/ping-data/d.txt:0
>>>>> /tmp/d/ping-data/a.txt:0
>>>>> /tmp/d/ping-data/b.txt:241
>>>>> /tmp/d/ping-data/c.txt:0
>>>>>
>>>>> Please advise.
>>>>>
>>>>> Thanks,
>>>>> ~Jeeva
>>>>>
>>>>>
>>>>>
>>>>> On 14 June 2016 at 19:42, Ashlesh Gawande (agawande) <
>>>>> agawande at memphis.edu> wrote:
>>>>>
>>>>>> Hi
>>>>>>
>>>>>>
>>>>>> Some new information may have come to light, if nfd-status is not
>>>>>> working outside Mini-NDN can you try the following patch:
>>>>>>
>>>>>>
>>>>>> https://github.com/named-data/NFD/commit/ace83ac9384da037a36695888e829d7337ce36b0
>>>>>>
>>>>>>
>>>>>> To do so go to your NFD folder and do
>>>>>>
>>>>>> git checkout ace83ac9384da037a36695888e829d7337ce36b0
>>>>>>
>>>>>> ./waf distclean
>>>>>>
>>>>>> ./waf configure --without-websocket
>>>>>>
>>>>>> ./waf
>>>>>>
>>>>>> sudo ./waf install
>>>>>>
>>>>>>
>>>>>> Then try to run Mini-NDN experiment again.
>>>>>>
>>>>>>
>>>>>> And is your OS, Ubuntu 14.04?
>>>>>>
>>>>>>
>>>>>> Thanks
>>>>>>
>>>>>> Ashlesh
>>>>>>
>>>>>>
>>>>>> ------------------------------
>>>>>> *From:* Mini-NDN <mini-ndn-bounces at lists.cs.ucla.edu> on behalf of
>>>>>> Ashlesh Gawande (agawande) <agawande at memphis.edu>
>>>>>> *Sent:* Tuesday, June 14, 2016 11:29:50 AM
>>>>>> *To:* Rajendran Jeeva
>>>>>>
>>>>>> *Cc:* mini-ndn at lists.cs.ucla.edu
>>>>>> *Subject:* Re: [Mini-NDN] NLSR has not converged - Issue while
>>>>>> running minindn
>>>>>>
>>>>>>
>>>>>> Can you check whether nfd-status works outside of mini-ndn?
>>>>>>
>>>>>> Just do nfd-start and then do nfd-status.
>>>>>>
>>>>>>
>>>>>> Convergence depends on nfd-status as mini-ndn checks whether prefixes
>>>>>> and routers have been installed.
>>>>>>
>>>>>>
>>>>>> > a nfd does not work because we use the a.conf file, if you do" a
>>>>>> nfd -f a.conf &" it should work.
>>>>>>
>>>>>> But the problem seems to be that nfd-status is not working (even
>>>>>> outside of mini-ndn).
>>>>>>
>>>>>>
>>>>>> Ashlesh
>>>>>> ------------------------------
>>>>>> *From:* Rajendran Jeeva <rajendrj at tcd.ie>
>>>>>> *Sent:* Tuesday, June 14, 2016 9:32:55 AM
>>>>>> *To:* Ashlesh Gawande (agawande)
>>>>>> *Cc:* mini-ndn at lists.cs.ucla.edu
>>>>>> *Subject:* Re: [Mini-NDN] NLSR has not converged - Issue while
>>>>>> running minindn
>>>>>>
>>>>>> Hi Ashlesh,
>>>>>>
>>>>>> Thanks for the response.
>>>>>>
>>>>>> I tried running the command 'a nfd-status -b' for node 'a' and for
>>>>>> other nodes as well. It is not displaying anything .
>>>>>>
>>>>>> 1. NFD status:
>>>>>>
>>>>>> mininet> a nfd-status -b
>>>>>> mininet>
>>>>>>
>>>>>>
>>>>>> NLSR status is displaying as follow
>>>>>>
>>>>>> 2. NLSR status:
>>>>>>
>>>>>> mininet> a nlsrc status
>>>>>> NLSR Status
>>>>>> LSDB:
>>>>>>   OriginRouter: /ndn/edu/%C1.Router/cs/a
>>>>>>
>>>>>>     Coordinate LSA:
>>>>>>       info=LsaInfo(OriginRouter: /ndn/edu/%C1.Router/cs/a,
>>>>>> SequenceNumber: 90, ExpirationPeriod: 3591936 milliseconds)
>>>>>>       angle=0
>>>>>>       radius=0
>>>>>>
>>>>>>     Name LSA:
>>>>>>       info=LsaInfo(OriginRouter: /ndn/edu/%C1.Router/cs/a,
>>>>>> SequenceNumber: 90, ExpirationPeriod: 3591932 milliseconds)
>>>>>>       name=/ndn/edu/a
>>>>>>
>>>>>>   OriginRouter: /ndn/edu/%C1.Router/cs/b
>>>>>>
>>>>>> 3. I just tried running 'nfd' command for a node and it displayed
>>>>>> 'Failed to read configuration file: /usr/local/etc/ndn/nfd.conf'
>>>>>>
>>>>>> mininet> a nfd
>>>>>> 1465913606.293515 FATAL: [NFD] Failed to read configuration file:
>>>>>> /usr/local/etc/ndn/nfd.conf [from ../core/config-file.cpp:94 in void
>>>>>> nfd::ConfigFile::parse(const string&, bool)]
>>>>>> mininet>
>>>>>>
>>>>>> I ensured again that NFD is installed when mini-ndn is installed and
>>>>>> the configuration is run.
>>>>>>
>>>>>> Not sure whether the convergence is not happening because the conf
>>>>>> file is missing.
>>>>>>
>>>>>> Any help would be appreciated
>>>>>>
>>>>>> Thanks in advance
>>>>>>
>>>>>> ~Jeeva
>>>>>>
>>>>>>
>>>>>> On 13 June 2016 at 16:56, Ashlesh Gawande (agawande) <
>>>>>> agawande at memphis.edu> wrote:
>>>>>>
>>>>>>> Try to run just:
>>>>>>>
>>>>>>> sudo minindn
>>>>>>>
>>>>>>>
>>>>>>> And when the command line comes up, wait for some time and check the
>>>>>>> FIB of each node:
>>>>>>>
>>>>>>>
>>>>>>> a nfd-status -b
>>>>>>>
>>>>>>> b nfd-status -b
>>>>>>>
>>>>>>> c nfd-status -b
>>>>>>>
>>>>>>> d nfd-status -b
>>>>>>>
>>>>>>>
>>>>>>> They should all have each other prefixes (i.e. /ndn/edu/<node>) and
>>>>>>> routers (/ndn/edu/%C1.Router/<node>).
>>>>>>>
>>>>>>> If not you will get the error you got - NLSR could not converge
>>>>>>> (only if an experiment was run).
>>>>>>>
>>>>>>>
>>>>>>> If they do have each other's prefixes then you can try to increase
>>>>>>> the convergence time:
>>>>>>>
>>>>>>> sudo minindn --experiment=pingall --ctime 100
>>>>>>>
>>>>>>>
>>>>>>> Ashlesh
>>>>>>> ------------------------------
>>>>>>> *From:* Mini-NDN <mini-ndn-bounces at lists.cs.ucla.edu> on behalf of
>>>>>>> Rajendran Jeeva <rajendrj at tcd.ie>
>>>>>>> *Sent:* Sunday, June 12, 2016 10:33:05 AM
>>>>>>> *To:* mini-ndn at lists.cs.ucla.edu
>>>>>>> *Subject:* [Mini-NDN] NLSR has not converged - Issue while running
>>>>>>> minindn
>>>>>>>
>>>>>>> Hi All,
>>>>>>>
>>>>>>> I have installed mini-ndn as follows:
>>>>>>>
>>>>>>> 1. Cloned 'mini-ndn' from github
>>>>>>> 2. $ cd mini-ndn
>>>>>>> 3. Installed it using the command
>>>>>>>
>>>>>>> sudo ./install.sh -mrfti
>>>>>>>
>>>>>>> 4. When the above command got executed , NFD, NLSR, ndn, and
>>>>>>> mininet got installed in the 'mini-ndn' directory(not in the home directory
>>>>>>>
>>>>>>> as I ran install.sh from inside mini-ndn directory )
>>>>>>>
>>>>>>> 5. Once the installation is completed I tried running the --Pingall experiment with
>>>>>>>
>>>>>>> default topology
>>>>>>>
>>>>>>> 6. There was an error stating 'mininet.topo module not found'(Rectified this
>>>>>>>
>>>>>>> problem by installing 'mininet' in the home directory)
>>>>>>>
>>>>>>> 7. When I ran the minindn command again, I got the following output
>>>>>>>
>>>>>>> rajendrj at Jeeva:~$ sudo minindn --experiment=pingall
>>>>>>> No results folder specified; experiment results will remain in the working directory
>>>>>>> Parse of /usr/local/etc/mini-ndn/default-topology.conf done.
>>>>>>> *** Creating network
>>>>>>> *** Adding controller
>>>>>>> *** Adding hosts:
>>>>>>> a b c d
>>>>>>> *** Adding switches:
>>>>>>>
>>>>>>> *** Adding links:
>>>>>>> (10ms delay) (10ms delay) (a, b) (10ms delay) (10ms delay) (a, c) (10ms delay) (10ms delay) (b, d)
>>>>>>> *** Configuring hosts
>>>>>>> a b c d
>>>>>>> Setup time: 8
>>>>>>> *** Starting controller
>>>>>>> c0
>>>>>>> *** Starting 0 switches
>>>>>>>
>>>>>>> Loading experiment: pingall
>>>>>>> Using 1.000000 traffic
>>>>>>> *Waiting 60 seconds for convergence...*
>>>>>>> ...done
>>>>>>> *NLSR has not converged. Exiting...*
>>>>>>> rajendrj at Jeeva:~$
>>>>>>>
>>>>>>> As shown in the last line, the execution exited with 'NLSR has not converged'
>>>>>>>
>>>>>>> ' message
>>>>>>>
>>>>>>> Am I missing something here ? Is this because 'mininet' is running from home directory
>>>>>>>
>>>>>>> but NLSR , NFD and ndn run from 'mini-ndn' directory ? Is there a way to see
>>>>>>>
>>>>>>> the error output?
>>>>>>>
>>>>>>> Please advise and help me here
>>>>>>>
>>>>>>> Thanks in advance,
>>>>>>>
>>>>>>> ~Jeeva
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/mini-ndn/attachments/20160628/0f4662d9/attachment.html>


More information about the Mini-NDN mailing list