Hi Pradeep,

pytopology has a method get_outlinks thats takes a source datapathid and destination datapathid, and returns a list of all of the port pairs that are connected. This is defined in pytopology.i

For example:

if datapath 1's ports 5 and 6 are connected to datapath 2's ports 3 and 4 respectively, you would have the following.

from nox.lib.netinet.netinet import create_datapathid_from_host

dp1 = create_datapathid_from_host(1)
dp2 = create_datapathid_from_host(2)
ports = pytop.get_outlinks(dp1, dp2)

where ports would be a list of PyLinkPorts of length 2, where PyLinkPorts is described in that pytopology.i file. Particularly it would be the equivalent of [ (5, 3), (6, 4) ] , however it's actually a SWIG-ed out list, which needs to be iterated through using begin(), incr(), and end().

Hope that helps,
Natasha

On Oct 14, 2009, at 5:56 PM, Pradeep Padala wrote:

That works for me. I also looked at miscws/noxinfows.py, which seems to
do some of the things I wanted.

I am trying to modify noxinfows.py to return topology. I got a handle
for pytopology with

     self.pytop        = self.resolve(pytopology)

Later, when the GET request comes, I am calling the function I wrote
below

   def _get_nox_topology(self, request, arg):
       try:
           return simplejson.dumps(self.pytop.XXXXXXXXXXXXXXXXX)
       except Exception, e:
           return self.err(Failure(), request, "_get_topology",
                           "Could not retrieve topology")

Now, I don't know how to access the pytopology functions (XXXXXXXXXXXX
part). For example, the get_outlinks() function takes two arguments, but
in the C++ file, I didn't find any comments on what to pass here.

In the manual, there are just a few notes about the topology module,
grepping through the whole source tree, I didn't find any examples of
using pytopology (may be I am missing something).

Any help would be great.

Thanks,
Pradeep


-----Original Message-----
From: Martin Casado [mailto:[email protected]]
Sent: Wednesday, October 14, 2009 3:35 PM
To: Pradeep Padala
Cc: [email protected]
Subject: Re: make check fails "Import by filename is not supported"

Yeah, that page in the manual is a bit out of date.  I appreciate you
pointing this out, I'll clean it up in git.

We use to have a simple webpage for monitoring the state but it didn't keep up with changes to the front-end code so we pulled it out. We'll be pushing out another on with the next change set but that could be a
couple of months yet.

That said, extending the web framework is fairly trivial.  Check out
src/nox/webapps/webserver/dummywebpage.py

.martin

Thanks, I can run nox_core with pyswitch and pyauthenticator.

I was mainly following the instructions at
http://noxrepo.org/manual/vm_environment.html, and was trying

"From your localhost, you can verify that the switches and hosts are
connected by pointing your browser to http://localhost:8888/";

Is this provided by the monitorsui? It would be nice to see the
topologies visually.

Pradeep


-----Original Message-----
From: Martin Casado [mailto:[email protected]]
Sent: Wednesday, October 14, 2009 1:27 PM
To: Pradeep Padala
Cc: [email protected]
Subject: Re: make check fails "Import by filename is not supported"

Yeah sorry, I should have mentioned before.  The monitorsui
component
doesn't exist in 0.5.  The documentation is updated in git but not
online.   I would just use pyswitch to begin with.

.martin


When I ran that, I found that it's still compiled with python 2.6.
Removed all the build files, and recompiled.

ppad...@ppadala-desktop:~/noxcore/build/src$ ./nox_core pyloop
NOX 0.5.0~full~beta (nox_core), compiled Oct 14 2009 12:59:37
Compiled with OpenFlow 0x97 (exp)
Python 2.5.4 (r254:67916, Apr  4 2009, 18:12:40)
[GCC 4.3.3] on linux2

Now make check works fine, but when I run

sudo ./nox_core -v -i ptcp:2525 monitorsui switchstatsws pyswitch
pyauthenticator

I get the error

00027|nox|ERR:Application 'monitorsui' description not found.

Thanks,
Pradeep





_______________________________________________
nox-dev mailing list
[email protected]
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org


_______________________________________________
nox-dev mailing list
[email protected]
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org

Reply via email to