chesteve / mn-ccnx

mn-ccnx
Other
32 stars 22 forks source link

Is it possible that I modify the code so as to use NDNx instead of CCNx? #10

Open Yunmei-Xiao opened 9 years ago

Yunmei-Xiao commented 9 years ago

I plan to use NDNx instead of CCNx. I guess Mini-CCNx calls commands like "export" "ccndstart" "ccndc" and so on, then I need to replace these CCNx-related commands with respective NDNx commands. Is that correct? Is it possible that I modify the code so as to use NDNx instead of CCNx?

Thanks for your time!

Yunmei Xiao

chesteve commented 9 years ago

Hi Yunmei,

yes, it is possible and should be straightforward as you guess. It is in our roadmap to include support for NDNx in addition to CCNx but until Q1 of 2015 we wont be able to fully commit to this task. We welcome any contribution on that front!

Let us know how it goes and if you need any help.

Cheers, Christian

shockjiang commented 9 years ago

Hi Christian, I switch my experiments platform from CCNx/NDNx to NFD/ndn-cxx, do you have any schedule to support NFD/ndn-cxx for mini-ccnx?

On 2 Nov, 2014, at 7:29 am, Christian Esteve Rothenberg notifications@github.com wrote:

Hi Yunmei,

yes, it is possible and should be straightforward as you guess. It is in our roadmap to include support for NDNx in addition to CCNx but until Q1 of 2015 we wont be able to fully commit to this task. We welcome any contribution on that front!

Let us know how it goes and if you need any help.

Cheers, Christian

— Reply to this email directly or view it on GitHub https://github.com/chesteve/mn-ccnx/issues/10#issuecomment-61410944.

chesteve commented 9 years ago

According to our estimates we shall have something working for NFD during January 2015.

Christian

On Sun, Nov 2, 2014 at 4:36 PM, Shock Jiang notifications@github.com wrote:

Hi Christian, I switch my experiments platform from CCNx/NDNx to NFD/ndn-cxx, do you have any schedule to support NFD/ndn-cxx for mini-ccnx?

On 2 Nov, 2014, at 7:29 am, Christian Esteve Rothenberg < notifications@github.com> wrote:

Hi Yunmei,

yes, it is possible and should be straightforward as you guess. It is in our roadmap to include support for NDNx in addition to CCNx but until Q1 of 2015 we wont be able to fully commit to this task. We welcome any contribution on that front!

Let us know how it goes and if you need any help.

Cheers, Christian

— Reply to this email directly or view it on GitHub < https://github.com/chesteve/mn-ccnx/issues/10#issuecomment-61410944>.

— Reply to this email directly or view it on GitHub https://github.com/chesteve/mn-ccnx/issues/10#issuecomment-61417798.

ocaio commented 9 years ago

Hi everyone, Just to give a heads-up, this week Christian and I will start working on updating the GUI of the configuration file generator (mn-ccnx edit) and as soon as we finish, we'll start working on migrating mn-ccnx to support the NDN platform (something around the following week). Please let us know if you have done any work in that regard by them!

Caio.

chesteve commented 9 years ago

Thanks for the update Caio. I will also create a mailing list since it would be more convenient to sync this type of information among the growing number of users and interested parties in evolving mini-ccnx.

Cheers, Christian

Christian

On Tue, Nov 4, 2014 at 3:41 PM, Caio notifications@github.com wrote:

Hi everyone, Just to give a heads-up, this week Christian and I will start working on updating the GUI of the configuration file generator (mn-ccnx edit) and as soon as we finish, we'll start working on migrating mn-ccnx to support the NDN platform (something around the following week). Please let us know if you have done any work in that regard by them!

Caio.

— Reply to this email directly or view it on GitHub https://github.com/chesteve/mn-ccnx/issues/10#issuecomment-61681865.

Yunmei-Xiao commented 9 years ago

Hi Christian,

I am trying to modify the code to support NDNx and I met a problem.

What I did: I modified the file mn-ccnx/mininet/node.py and rebuild. I replaced all the "ccn" and "CCN" with "ndn" and "NDN". I installled ndnping, started ndnd, wrote a miniccnx.conf file, and then ran command "sudo miniccnx".

What happened: The command "sudo miniccnx" only worked for the first time. The hosts could ndnping each other, proving that NDNx worked fine in the virtual hosts. If I typed in "exit" and exited mn-ccnx, then the next time "sudo miniccnx" would stop at the position of "*\ Adding hosts:". If I typed in control+c, I would see a list of tracebak and original exceptions.

I don't understand why it could run at the first time but could not run again, unless I reboot ubuntu. I guess there are some resources that are still possessed by the first time process.

Would you please help me with this problem? What are the possible reasons?

Thanks for your time.

Yunmei Xiao

I paste the traceback and original exceptions information here:

^CTraceback (most recent call last): File "/usr/local/bin/miniccnx", line 5, in pkg_resources.run_script('mininet==2.0.0', 'miniccnx') File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 499, in run_script self.require(requires)[0].run_script(script_name, ns) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1235, in run_script execfile(script_filename, namespace, namespace) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 129, in execute(template, testbed) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 90, in execute net = Mininet(topo,host=CCNHost,link=TCLink) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 164, in init self.build() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 332, in build self.buildFromTopo( self.topo ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 300, in buildFromTopo self.addHost( hostName, _topo.nodeInfo( hostName ) ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 193, in addHost h = cls( name, _defaults ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 729, in init self.cmd("export NDND_DEBUG=6") File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 280, in cmd return self.waitOutput( verbose ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 268, in waitOutput data = self.monitor() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 241, in monitor self.waitReadable( timeoutms ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 194, in waitReadable self.pollOut.poll( timeoutms ) KeyboardInterrupt Error in sys.excepthook: Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/apport_python_hook.py", line 44, in apport_excepthook try: KeyboardInterrupt

Original exception was: Traceback (most recent call last): File "/usr/local/bin/miniccnx", line 5, in pkg_resources.run_script('mininet==2.0.0', 'miniccnx') File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 499, in run_script self.require(requires)[0].run_script(script_name, ns) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1235, in run_script execfile(script_filename, namespace, namespace) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 129, in execute(template, testbed) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 90, in execute net = Mininet(topo,host=CCNHost,link=TCLink) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 164, in init self.build() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 332, in build self.buildFromTopo( self.topo ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 300, in buildFromTopo self.addHost( hostName, _topo.nodeInfo( hostName ) ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 193, in addHost h = cls( name, _defaults ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 729, in init self.cmd("export NDND_DEBUG=6") File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 280, in cmd return self.waitOutput( verbose ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 268, in waitOutput data = self.monitor() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 241, in monitor self.waitReadable( timeoutms ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 194, in waitReadable self.pollOut.poll( timeoutms ) KeyboardInterrupt

I could find the code " self.cmd("export NDND_DEBUG=6")" in mininet/node.py, the next lines are self.cmd("export NDND_DEBUG=6") self.cmd("export NDND_LOG=./log.{0}".format(self.name))

print self.params['cache']

if self.params['cache'] != None:
    self.cmd("export NDND_CAP={0}".format(self.params['cache']))

    self.cmd("export NDN_LOCAL_SOCKNAME=/tmp/.sock.ndnx.{0}".format(self.name))
    self.cmd("ndndstart")
    self.peerList = {}
chesteve commented 9 years ago

Hi Yunmei,

I am afraid I am not able to help you forward with that issue. I have added your info to a related Email discussion.

cheers, ch

Christian

On Thu, Dec 4, 2014 at 12:32 PM, Yunmei-Xiao notifications@github.com wrote:

Hi Christian,

I am trying to modify the code to support NDNx and I met a problem.

What I did: I modified the file mn-ccnx/mininet/node.py and rebuild. I replaced all the "ccn" and "CCN" with "ndn" and "NDN". I installled ndnping, started ndnd, wrote a miniccnx.conf file, and then ran command "sudo miniccnx".

What happened: The command "sudo miniccnx" only worked for the first time. The hosts could ndnping each other, proving that NDNx worked fine in the virtual hosts. If I typed in "exit" and exited mn-ccnx, then the next time "sudo miniccnx" would stop at the position of "*\ Adding hosts:". If I typed in control+c, I would see a list of tracebak and original exceptions.

I don't understand why it could run at the first time but could not run again, unless I reboot ubuntu. I guess there are some resources that are still possessed by the first time process.

Would you please help me with this problem? What are the possible reasons?

Thanks for your time.

Yunmei Xiao

I paste the traceback and original exceptions information here:

^CTraceback (most recent call last): File "/usr/local/bin/miniccnx", line 5, in pkg_resources.run_script('mininet==2.0.0', 'miniccnx') File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 499, in run_script self.require(requires)[0].run_script(script_name, ns) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1235, in run_script execfile(script_filename, namespace, namespace) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 129, in execute(template, testbed) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 90, in execute net = Mininet(topo,host=CCNHost,link=TCLink) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 164, in init self.build() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 332, in build self.buildFromTopo( self.topo ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 300, in buildFromTopo self.addHost( hostName, _topo.nodeInfo( hostName ) ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 193, in addHost h = cls( name, _defaults ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 729, in init self.cmd("export NDND_DEBUG=6") File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 280, in cmd return self.waitOutput( verbose ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 268, in waitOutput data = self.monitor() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 241, in monitor self.waitReadable( timeoutms ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 194, in waitReadable self.pollOut.poll( timeoutms ) KeyboardInterrupt Error in sys.excepthook: Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/apport_python_hook.py", line 44, in apport_excepthook try: KeyboardInterrupt

Original exception was: Traceback (most recent call last): File "/usr/local/bin/miniccnx", line 5, in pkg_resources.run_script('mininet==2.0.0', 'miniccnx') File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 499, in run_script self.require(requires)[0].run_script(script_name, ns) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1235, in run_script execfile(script_filename, namespace, namespace) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 129, in execute(template, testbed) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 90, in execute net = Mininet(topo,host=CCNHost,link=TCLink) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 164, in init self.build() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 332, in build self.buildFromTopo( self.topo ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 300, in buildFromTopo self.addHost( hostName, _topo.nodeInfo( hostName ) ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 193, in addHost h = cls( name, _defaults ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 729, in init self.cmd("export NDND_DEBUG=6") File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 280, in cmd return self.waitOutput( verbose ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 268, in waitOutput data = self.monitor() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 241, in monitor self.waitReadable( timeoutms ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 194, in waitReadable self.pollOut.poll( timeoutms ) KeyboardInterrupt

I could find the code " self.cmd("export NDND_DEBUG=6")" in mininet/node.py, the next lines are self.cmd("export NDND_DEBUG=6") self.cmd("export NDND_LOG=./log.{0}".format(self.name)) print self.params['cache']

if self.params['cache'] != None: self.cmd("export NDND_CAP={0}".format(self.params['cache']))

self.cmd("export NDN_LOCAL_SOCKNAME=/tmp/.sock.ndnx.{0}".format(self.name))
self.cmd("ndndstart")
self.peerList = {}

— Reply to this email directly or view it on GitHub https://github.com/chesteve/mn-ccnx/issues/10#issuecomment-65639580.

chesteve commented 9 years ago

here is a pointer to the related efforts to support NDNx: http://redmine.named-data.net/projects/mini-ndn

We will also point to the related tools and github report in the Mini-CCNx wiki

Christian

On Mon, Dec 8, 2014 at 5:26 PM, Christian Esteve Rothenberg < chesteve@dca.fee.unicamp.br> wrote:

Hi Yunmei,

I am afraid I am not able to help you forward with that issue. I have added your info to a related Email discussion.

cheers, ch

Christian

On Thu, Dec 4, 2014 at 12:32 PM, Yunmei-Xiao notifications@github.com wrote:

Hi Christian,

I am trying to modify the code to support NDNx and I met a problem.

What I did: I modified the file mn-ccnx/mininet/node.py and rebuild. I replaced all the "ccn" and "CCN" with "ndn" and "NDN". I installled ndnping, started ndnd, wrote a miniccnx.conf file, and then ran command "sudo miniccnx".

What happened: The command "sudo miniccnx" only worked for the first time. The hosts could ndnping each other, proving that NDNx worked fine in the virtual hosts. If I typed in "exit" and exited mn-ccnx, then the next time "sudo miniccnx" would stop at the position of "*\ Adding hosts:". If I typed in control+c, I would see a list of tracebak and original exceptions.

I don't understand why it could run at the first time but could not run again, unless I reboot ubuntu. I guess there are some resources that are still possessed by the first time process.

Would you please help me with this problem? What are the possible reasons?

Thanks for your time.

Yunmei Xiao

I paste the traceback and original exceptions information here:

^CTraceback (most recent call last): File "/usr/local/bin/miniccnx", line 5, in pkg_resources.run_script('mininet==2.0.0', 'miniccnx') File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 499, in run_script self.require(requires)[0].run_script(script_name, ns) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1235, in run_script execfile(script_filename, namespace, namespace) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 129, in execute(template, testbed) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 90, in execute net = Mininet(topo,host=CCNHost,link=TCLink) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 164, in init self.build() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 332, in build self.buildFromTopo( self.topo ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 300, in buildFromTopo self.addHost( hostName, _topo.nodeInfo( hostName ) ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 193, in addHost h = cls( name, _defaults ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 729, in init self.cmd("export NDND_DEBUG=6") File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 280, in cmd return self.waitOutput( verbose ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 268, in waitOutput data = self.monitor() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 241, in monitor self.waitReadable( timeoutms ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 194, in waitReadable self.pollOut.poll( timeoutms ) KeyboardInterrupt Error in sys.excepthook: Traceback (most recent call last): File "/usr/lib/python2.7/dist-packages/apport_python_hook.py", line 44, in apport_excepthook try: KeyboardInterrupt

Original exception was: Traceback (most recent call last): File "/usr/local/bin/miniccnx", line 5, in pkg_resources.run_script('mininet==2.0.0', 'miniccnx') File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 499, in run_script self.require(requires)[0].run_script(script_name, ns) File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 1235, in run_script execfile(script_filename, namespace, namespace) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 129, in execute(template, testbed) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/EGG-INFO/scripts/miniccnx", line 90, in execute net = Mininet(topo,host=CCNHost,link=TCLink) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 164, in init self.build() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 332, in build self.buildFromTopo( self.topo ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 300, in buildFromTopo self.addHost( hostName, _topo.nodeInfo( hostName ) ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/net.py", line 193, in addHost h = cls( name, _defaults ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 729, in init self.cmd("export NDND_DEBUG=6") File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 280, in cmd return self.waitOutput( verbose ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 268, in waitOutput data = self.monitor() File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 241, in monitor self.waitReadable( timeoutms ) File "/usr/local/lib/python2.7/dist-packages/mininet-2.0.0-py2.7.egg/mininet/node.py", line 194, in waitReadable self.pollOut.poll( timeoutms ) KeyboardInterrupt

I could find the code " self.cmd("export NDND_DEBUG=6")" in mininet/node.py, the next lines are self.cmd("export NDND_DEBUG=6") self.cmd("export NDND_LOG=./log.{0}".format(self.name)) print self.params['cache']

if self.params['cache'] != None: self.cmd("export NDND_CAP={0}".format(self.params['cache']))

self.cmd("export NDN_LOCAL_SOCKNAME=/tmp/.sock.ndnx.{0}".format(self.name))
self.cmd("ndndstart")
self.peerList = {}

— Reply to this email directly or view it on GitHub https://github.com/chesteve/mn-ccnx/issues/10#issuecomment-65639580.