I somehow managed to get the NOX controller with the lavi_networkflow
module up and running. As it turned out, I need to make the following
change to the flowroute_record.cc file to make sure the python can find
the Flow_route_event:
void flowroute_record::configure(const Configuration* c)
{
register_event(Flow_route_event::static_get_name());
}
However, there's no flows information that I can pull out from it when I
query the lavi backend with a flow query, i.e. in the following code block:
while (i != frr->routeMap.end())
{
send_flow_list(i->first, i->second, stream);
flowCnt++;
i++;
}
routeMap from flowroute_record always contain no flows.
I also tried running the routeinstaller module along with the
lavi_networkflow, nothing shows either. At the moment, I'm testing lavi
with the openflowVMS and use the following topology:
host-1 <--> switch-1 <--> switch-2 <--> host-2
Although I can ping the other in either of the hosts, there seems to be
no flow installed. How can I setup a test that actually gives me flow
information? Thank you.
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
On 06/29/2010 09:08 PM, kk yap wrote:
It is under construction and I am not of town. So, you are bleeding
since this is the bleeding edge branch. Sorry.
Regards
KK
On 29 June 2010 14:28, Wenjie Zeng<wz...@bbn.com> wrote:
Hi kk,
I'm having a few problems while extending LAVI to support flow queries. As I
understand, lavi_flows seems to be a empty super-class and the actual work
is handled by lavi_networkflow. However, I'm yet to get the lavi_networkflow
module up and running in NOX. A number of 'cannot find symbol' errors with
regards to operator==, operator!=, and operator()(vigil::Flow), came up when
I tried to run the module unmodified. After I modified a number of source
files, which includes flow.hh, flow.cc, these errors ran away but another
one came:
Event 'Flow_route_event' doesn't exist
which I do not think I know how to fix. Is the lavi_networkflow still under
construction?
Also, I'm just curious at what extra query features does the
lavi_networkflow module provide compared to the standard monitor module.
Thank you.
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
On 06/28/2010 02:15 PM, kk yap wrote:
Hi Wenjie,
Yes, you are right. I am extending to show flows. The other stuff
you mentioned is definitely useful. The mechanism is a bunch of free
form JSON messages, which you can extend at both ends (server and
console).
If you would provide isolated components of each of the interface. We
would be happy to consider pushing them out on the tree, if GPO allows
the GPLv3 license release.
Regards
KK
On 28 June 2010 11:12, Wenjie Zeng<wz...@bbn.com> wrote:
Many thanks, kk. It works! We're planning on extending the set of
commands
lavi takes. I would need one more clarification from you though.
At the moment, the nox-console only supports two query commands: getnodes
and getlinks. Is it because these are the only commands the lavi backend
located at the controller support? Or is it just a limitation of the
nox-console? We are planning to expand this interface to provide other
network-related metrics such as bandwidth, delay, etc.
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
On 06/28/2010 01:54 PM, kk yap wrote:
Hi Wenjie,
Try lavi_switches and lavi_swlinks. LAVI is a dummy component in
destiny as documented in the class.
Regards
KK
On 28 June 2010 10:52, Wenjie Zeng<wz...@bbn.com> wrote:
KK,
Thanks for your timely replies. I am trying to test the NOX-destiny
with
the
OpenFlowVMS. I start destiny as the following:
./nox_core -v -i ptcp:6633 jsonmessenger=tcpport=11222,sslport=0
pyswitch
lavi
and the two hosts are able to ping each other. Then I start the
nox-console
as:
./src/scripts/nox-console.py -v -p 11222 -n 127.0.0.1 getlinks
, but it returns nothing. The output from the nox after I start the
nox-console is:
00325|jsonmessenger|DBG:JSON message of length 18 (connect)
00326|jsonmessenger|DBG:JSON message of length 18
00327|jsonmessenger|DBG:JSON: {"type":"connect"}
00328|messenger_core|DBG:TCP socket connection accepted
00329|messenger_core|DBG:Copy 58 bytes to message
00330|messenger_core|DBG:Received packet of length 58
00331|jsonmessenger|DBG:JSON message of length 58
00332|jsonmessenger|DBG:Message posted as JSONMsg_event
00333|jsonmessenger|DBG:JSON:
{"link_type":"all","command":"request","type":"lavi"}
00334|openflow|DBG:stream: idle 15 seconds, sending inactivity probe
Should I be expecting some output, say the printout of the links, from
the
nox-console? Or am I doing something wrong here? Let me know, thank
you.
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
On 06/28/2010 11:56 AM, kk yap wrote:
Hi Wenjie,
I am not very much into unit test. So, sorry none of that.
You want to look at lavi_switches and lavi_swlinks. They provide the
topology. LAVI is less of a component than a suite of components.
There is a doxygen page of NOX console, and that would be relevant.
Hope this helps.
Regards
KK
On 28 June 2010 07:53, Wenjie Zeng<wz...@bbn.com> wrote:
Also, can you provide me with the unit test file for lavi. I am still
a
little bit confused on which lavi component I should use even I've
read
through the doxygen documentations.
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
On 06/28/2010 08:54 AM, kk yap wrote:
Hi Wenjie,
Did you checkout the destiny branch? Do a
git branch -a
and see which branch you are at. Destiny is an unstable branch, so
it
is not the master branch.
Regards
KK
On 28 June 2010 05:51, Wenjie Zeng<wz...@bbn.com> wrote:
Hi KK,
I've downloaded the nox controller from the git repo. However, a
grep
of
the
key word 'lavi' is not returning anything. Is there a new code name
for
lavi
in destiny?
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
On 06/25/2010 10:30 PM, kk yap wrote:
Hi Wenjie,
You can grab the destiny anytime you want. It is publicly
available
in git://noxrpeo.org/nox. Just expect "rapid" changes and
updates.
Regards
KK
On 25 June 2010 12:07, Wenjie Zeng<wz...@bbn.com> wrote:
Great. So will destiny be ready for alpha-testing? As Lavi can
pretty
much
do what we need, we would wish not to re-invent the wheel.
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
On 06/25/2010 02:58 PM, kk yap wrote:
Hi Wenjie,
The destiny branch is the next release of NOX. It is not
customized
for LAVI, rather LAVI is customized for it and distributed with
it
from there on. It is fully OpenFlow-v1.0 compatible and is
distributed at git://noxrepo.org/nox. This branch is pre-alpha
nonetheless.
The OpenRoads repo is based on NOX 0.4, and no further effort
will
be
made to maintain that.
Hope I have been clearer this time. Feel free to ping me if
this
is
still confusing.
Regards
KK
On 25 June 2010 11:02, Wenjie Zeng<wz...@bbn.com>
wrote:
Hi KK,
I'm a little bit confused here. So destiny sounds like a NOX
branch
customized for Lavi. Is this NOX OpenFlow-1.0 compatible? Where
can
we
download this branch? Or is the one we see in the OpenRoad page
the
latest
release?
Thank you.
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
On 06/23/2010 04:38 PM, kk yap wrote:
Hi Wenjie,
Some comments inline.
- Is NOX controller included in the OpenRoads Lavi
distribution
a
customized
one and is not the same (in terms of the custom events) as
the
latest
NOX
release?
Yes. I made heavy changes to that NOX branch, and changes are
not
being fed back in NOX in any way. Logically identical changes
have
been made for destiny, but they might not be compatible.
- I find that Lavi is spread across the multiple places in
nox/src.
Which
set of files should I copy to the new NOX src folder in order
to
remake
Lavi
using the new NOX? (and since you guys are working with Lavi,
you
may
already have a trunk somewhere that integrate all the tools
with
the
latest
NOX. If that's the case, providing us a copy of that
trunk/branch
will
greatly help)
No. The LAVI in destiny is a rewrite, since many thing have
changed
in NOX since we branched it off to create LAVI for the demos
last
year.
- Can I consider Lavi as NOX component that I can initiate in
command
line
when I am running nox_core? If yes, can you provide me a
simple
example
of
querying the Lavi interface to pull data from the switches?
Yes. It is a component in NOX.
./nox_core -v -i ptcp:6633 lavi
should do the trick (note: I have not tested that this is
true).
Look
at the node query in LAVI for the example. The older LAVI is
binary
format based so you need to get used to that first.
Let me know if you have any other question. I know this is
confusing.
Regards
KK
Thank you. I CC'ed Niky here since she is also working on the
GENI
measurement data collection project.
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
On 06/23/2010 03:52 PM, kk yap wrote:
Hi Wenjie,
I assume you are talking about the binary formatted LAVI in
the
openroads branch. Here's a quick run-through of what I see
need
to
be
done (probably not at the level of a tutorial):
* The LAVI components depends on some changes in the
libraries
in
NOX,
e.g. direct OpenFlow messages in a custom event. This
should
be
in
the latest version of NOX, but there will be a few more of
these.
* We will need some custom stuff like flowdb to show flows.
Topology
is hacked to expose a list of switches too.
* Else, the rest should be copying over the files in the
LAVI
component and compiling.
For the rest, the LAVI files are commented using doxygen
style
comments. You can just run doxygen over the tree and read
those.
The Makefile has not changed very much in my impression.
Maybe
you
want to clarify what you mean by they look different.
Hope this at least clarifies something for you.
Regards
KK
PS>> The destiny branch of NOX now hosts a
JSON-based
LAVI,
which
exposes topology. I am considering if we want to support
flows
out
of
the repo.
On 23 June 2010 11:46, Wenjie Zeng<wz...@bbn.com>
wrote:
Hi all,
I am trying to integrate Lavi the latest NOX-0.8 release.
Is
there
an
easy
way of doing this? I took a quick look at the makefiles of
the
two
different
versions of NOX and they seem quite different. Also, could
someone
please
provide a tutorial for configuring, deploying, and using
Lavi
to
pull
data
from NOX? Thank you.
--
Best regards,
Wenjie Zeng
Raytheon BBN Technologies
10 Moulton Street
Cambridge, MA 02138
(617) 873-3205
wz...@bbn.com
www.geni.net
_______________________________________________
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
_______________________________________________
nox-dev mailing list
nox-dev@noxrepo.org
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org