[nox-dev] A general question regarding discovery module
It seems this module will periodically construct the topology. I dont know why it will periodically time_out the links. I want to know in what situations the links will time_out. Thanks. ___ nox-dev mailing list nox-dev@noxrepo.org http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
Re: [nox-dev] Need help regarding querying statistics from switches
We are recently confirmed the switch itself has some bug, it cant collect byte statistics. Thanks all. On Thu, Dec 10, 2009 at 6:02 PM, Guanyao Huang wrote: > Hello > Sorry to bother others. I one question regarding querying flow > statistics from switches through struct ofp_stats_request. I am using > nox 5.0 > > In my topology I periodically ping between hosts. However, I find the > packet_count and byte_count from the switch are always 0. I am > confirmed that I successfully received ofp_flow_stats from the desired > switch. The central controller maintains flow information and I query > flows with desired nw_proto, nw_src, nw_dst, tp_src, tp_dst, and > in_port. Other fields I use wildcard. > > When I use tcpreplay to replay some big packets, I find that the > returned size are not always 0. However, flows in pcap file expire > quickly and it is not easy to debug. > > Is it true that the returned size will always be 0 if the packet is small? > ___ nox-dev mailing list nox-dev@noxrepo.org http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
[nox-dev] OpenFlow 0x98
Hi, I'm trying to get a version of NOX which is compatible with OpenFlow 0x98. Compiling the version from git://noxrepo.org/nox or git://noxrepo.org/noxcore both give me compile errors about undefined classes when setting --with-openflow to any of 0.8.9r2, 0.9.0 or the openflow git. Can anyone point me at somewhere I can get a newer version of NOX? The specific compiler errors I'm getting (against openflow from git) are: In file included from ../../../src/lib/openflow-event.cc:43: ../../../src/include/flow-expired.hh: At global scope: ../../../src/include/flow-expired.hh:43: error: ISO C++ forbids declaration of ‘ofp_flow_expired’ with no type ../../../src/include/flow-expired.hh:43: error: expected ‘,’ or ‘...’ before ‘*’ token ../../../src/include/flow-expired.hh:58: error: ISO C++ forbids declaration of ‘ofp_flow_expired’ with no type ../../../src/include/flow-expired.hh:58: error: expected ‘;’ before ‘*’ token ../../../src/include/flow-expired.hh:62: error: expected ‘;’ before ‘static’ ../../../src/include/flow-expired.hh: In member function ‘virtual const ofp_match* vigil::Flow_expired_event::get_flow() const’: ../../../src/include/flow-expired.hh:55: error: ‘get_flow_expired’ was not declared in this scope ../../../src/include/flow-expired.hh: At global scope: ../../../src/include/flow-expired.hh:69: error: ISO C++ forbids declaration of ‘ofp_flow_expired’ with no type ../../../src/include/flow-expired.hh:69: error: expected ‘,’ or ‘...’ before ‘*’ token ../../../src/include/flow-expired.hh: In constructor ‘vigil::Flow_expired_event::Flow_expired_event(vigil::datapathid, int)’: ../../../src/include/flow-expired.hh:71: error: ‘ofe’ was not declared in this scope ../../../src/lib/openflow-event.cc: At global scope: ../../../src/lib/openflow-event.cc:68: error: ISO C++ forbids declaration of ‘ofp_flow_expired’ with no type ../../../src/lib/openflow-event.cc:68: error: expected ‘,’ or ‘...’ before ‘*’ token ../../../src/lib/openflow-event.cc: In function ‘vigil::Event*::handle_flow_expired(vigil::datapathid, int)’: ../../../src/lib/openflow-event.cc:72: error: ‘ofe’ was not declared in this scope ../../../src/lib/openflow-event.cc:72: error: ‘buf’ was not declared in this scope ../../../src/lib/openflow-event.cc: In function ‘vigil::Event* vigil::openflow_packet_to_event(vigil::datapathid, std::auto_ptr)’: ../../../src/lib/openflow-event.cc:277: error: ‘OFPT_FLOW_EXPIRED’ was not declared in this scope ../../../src/lib/openflow-event.cc:278: error: no matching function for call to ‘handle_packet(vigil::Event* (&)(vigil::datapathid, int), vigil::datapathid&, const ofp_header*&, std::auto_ptr&)’ Thanks, Daniel ___ nox-dev mailing list nox-dev@noxrepo.org http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
Re: [nox-dev] OpenFlow 0x98
Hi Daniel, Are you compiling NOX for OpenFlow v0.9? Basically, I would like to know where and how you got the OpenFlow source. That will help in resolving your question. Regards KK 2009/12/17 : > Hi, > > I'm trying to get a version of NOX which is compatible with OpenFlow 0x98. > Compiling the version from git://noxrepo.org/nox or git://noxrepo.org/noxcore > both give me compile errors about undefined classes when setting > --with-openflow to any of 0.8.9r2, 0.9.0 or the openflow git. Can anyone > point me at somewhere I can get a newer version of NOX? > > The specific compiler errors I'm getting (against openflow from git) are: > > In file included from ../../../src/lib/openflow-event.cc:43: > ../../../src/include/flow-expired.hh: At global scope: > ../../../src/include/flow-expired.hh:43: error: ISO C++ forbids declaration > of ‘ofp_flow_expired’ with no type > ../../../src/include/flow-expired.hh:43: error: expected ‘,’ or ‘...’ before > ‘*’ token > ../../../src/include/flow-expired.hh:58: error: ISO C++ forbids declaration > of ‘ofp_flow_expired’ with no type > ../../../src/include/flow-expired.hh:58: error: expected ‘;’ before ‘*’ token > ../../../src/include/flow-expired.hh:62: error: expected ‘;’ before ‘static’ > ../../../src/include/flow-expired.hh: In member function ‘virtual const > ofp_match* vigil::Flow_expired_event::get_flow() const’: > ../../../src/include/flow-expired.hh:55: error: ‘get_flow_expired’ was not > declared in this scope > ../../../src/include/flow-expired.hh: At global scope: > ../../../src/include/flow-expired.hh:69: error: ISO C++ forbids declaration > of ‘ofp_flow_expired’ with no type > ../../../src/include/flow-expired.hh:69: error: expected ‘,’ or ‘...’ before > ‘*’ token > ../../../src/include/flow-expired.hh: In constructor > ‘vigil::Flow_expired_event::Flow_expired_event(vigil::datapathid, int)’: > ../../../src/include/flow-expired.hh:71: error: ‘ofe’ was not declared in > this scope > ../../../src/lib/openflow-event.cc: At global scope: > ../../../src/lib/openflow-event.cc:68: error: ISO C++ forbids declaration of > ‘ofp_flow_expired’ with no type > ../../../src/lib/openflow-event.cc:68: error: expected ‘,’ or ‘...’ before > ‘*’ token > ../../../src/lib/openflow-event.cc: In function > ‘vigil::Event*::handle_flow_expired(vigil::datapathid, int)’: > ../../../src/lib/openflow-event.cc:72: error: ‘ofe’ was not declared in this > scope > ../../../src/lib/openflow-event.cc:72: error: ‘buf’ was not declared in this > scope > ../../../src/lib/openflow-event.cc: In function ‘vigil::Event* > vigil::openflow_packet_to_event(vigil::datapathid, > std::auto_ptr)’: > ../../../src/lib/openflow-event.cc:277: error: ‘OFPT_FLOW_EXPIRED’ was not > declared in this scope > ../../../src/lib/openflow-event.cc:278: error: no matching function for call > to ‘handle_packet(vigil::Event* (&)(vigil::datapathid, int), > vigil::datapathid&, const ofp_header*&, std::auto_ptr&)’ > > > Thanks, > > Daniel > > > ___ > 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
Re: [nox-dev] A general question regarding discovery module
Discovery times out links when no LLDP packets have been received over some timeout period. Timer values are documented within discovery.py. It seems this module will periodically construct the topology. I dont know why it will periodically time_out the links. I want to know in what situations the links will time_out. Thanks. ___ 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
Re: [nox-dev] OpenFlow 0x98
Sorry for double-message KK: replied rather than replied all, using an email client I've never used before! I'm using NOX straight from git://noxrepo.org/nox - `git log` shows the last commit as: da...@bruckner:~/nox$ git log commit 24800254eac4a8c25de091f6fc8562ad4fdb1cce Author: Martin Casado Date: Fri Mar 6 22:10:01 2009 -0800 Bugfix submitted by Ye Deng I've tried against OpenFlow 0.8.9r2 from this tar: http://openflowswitch.org/downloads/openflow-0.8.9~2.tar.gz as well as 0.9.0r1 from this tar: http://openflowswitch.org/downloads/openflow-0.9.0-rev1.tar.gz and OpenFlow (1.0) straight from git://openflowswitch.org/openflow with last commit: da...@bruckner:~/openflow$ git log commit 951f4ca9f573afda40c7c9b17c2e8cc2f801ae7a Author: Justin Pettit Date: Mon Dec 7 23:45:02 2009 -0800 Add new OpenFlow error messages for 1.0 release. The quoted compile error is against the git openflow release, though I get similar ones against openflow 0.9.0, referring to expire events not existing. Compiling against 0.9.8 I get told: ../../../src/lib/openflow.cc: In member function ‘int vigil::Openflow_connection::send_add_snat(uint16_t, uint32_t, uint32_t, uint16_t, uint16_t, uint16_t, uint16_t, vigil::ethernetaddr, uint16_t)’: ../../../src/lib/openflow.cc:612: error: ‘struct nx_snat_config’ has no member named ‘mac_addr’ I am always compiling using: make clean && ../configure --with-python=yes --with-openflow=/home/daw63/openflow && make with /home/daw63/openflow being a symlink to the relevant release I'm trying to use. Thanks for getting back to me, Daniel On Thu 17/12/09 23:30 , kk yap wrote:: Hi Daniel, Are you compiling NOX for OpenFlow v0.9? Basically, I would like to know where and how you got the OpenFlow source. That will help in resolving your question. Regards KK 2009/12/17 n...@illicitonion.com>: > Hi, > > I'm trying to get a version of NOX which is compatible with OpenFlow 0x98. > Compiling the version from git://noxrepo.org/nox or git://noxrepo.org/noxcore > both give me compile errors about undefined classes when setting > --with-openflow to any of 0.8.9r2, 0.9.0 or the openflow git. Can anyone > point me at somewhere I can get a newer version of NOX? > > The specific compiler errors I'm getting (against openflow from git) are: > > In file included from ../../../src/lib/openflow-event.cc:43: > ../../../src/include/flow-expired.hh: At global scope: > ../../../src/include/flow-expired.hh:43: error: ISO C++ forbids declaration > of ‘ofp_flow_expired’ with no type > ../../../src/include/flow-expired.hh:43: error: expected ‘,’ or ‘...’ before > ‘*’ token > ../../../src/include/flow-expired.hh:58: error: ISO C++ forbids declaration > of ‘ofp_flow_expired’ with no type > ../../../src/include/flow-expired.hh:58: error: expected ‘;’ before ‘*’ token > ../../../src/include/flow-expired.hh:62: error: expected ‘;’ before ‘static’ > ../../../src/include/flow-expired.hh: In member function ‘virtual const > ofp_match* vigil::Flow_expired_event::get_flow() const’: > ../../../src/include/flow-expired.hh:55: error: ‘get_flow_expired’ was not > declared in this scope > ../../../src/include/flow-expired.hh: At global scope: > ../../../src/include/flow-expired.hh:69: error: ISO C++ forbids declaration > of ‘ofp_flow_expired’ with no type > ../../../src/include/flow-expired.hh:69: error: expected ‘,’ or ‘...’ before > ‘*’ token > ../../../src/include/flow-expired.hh: In constructor > ‘vigil::Flow_expired_event::Flow_expired_event(vigil::datapathid, int)’: > ../../../src/include/flow-expired.hh:71: error: ‘ofe’ was not declared in > this scope > ../../../src/lib/openflow-event.cc: At global scope: > ../../../src/lib/openflow-event.cc:68: error: ISO C++ forbids declaration of > ‘ofp_flow_expired’ with no type > ../../../src/lib/openflow-event.cc:68: error: expected ‘,’ or ‘...’ before > ‘*’ token > ../../../src/lib/openflow-event.cc: In function > ‘vigil::Event*::handle_flow_expired(vigil::datapathid, int)’: > ../../../src/lib/openflow-event.cc:72: error: ‘ofe’ was not declared in this > scope > ../../../src/lib/openflow-event.cc:72: error: ‘buf’ was not declared in this > scope > ../../../src/lib/openflow-event.cc: In function ‘vigil::Event* > vigil::openflow_packet_to_event(vigil::datapathid, std::auto_ptr)’: > ../../../src/lib/openflow-event.cc:277: error: ‘OFPT_FLOW_EXPIRED’ was not > declared in this scope > ../../../src/lib/openflow-event.cc:278: error: no matching function for call > to ‘handle_packet(vigil::Event* (&)(vigil::datapathid, int), > vigil::datapathid&, const ofp_header*&, std::auto_ptr&)’ > > > Thanks, > > Daniel > > > ___ > 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
Re: [nox-dev] OpenFlow 0x98
Hi, This is probably because --with-openflow is somewhat hard to maintain. We are doing away with it for further versions. If you do not need any specific feature in 0x98, I would recommend going with 0x97 in * openflowswitch.org/openflow (release/0.8.9) * noxrepo.org/nox (do not use --with-openflow option in configure) If you need some particular feature beyond v0.8.9, let us know. We can figure something out then. Hope this is helpful. Regards KK 2009/12/17 : > Sorry for double-message KK: replied rather than replied all, using an email > client I've never used before! > > I'm using NOX straight from git://noxrepo.org/nox - `git log` shows the last > commit as: > > da...@bruckner:~/nox$ git log > commit 24800254eac4a8c25de091f6fc8562ad4fdb1cce > Author: Martin Casado > Date: Fri Mar 6 22:10:01 2009 -0800 > > Bugfix submitted by Ye Deng > > I've tried against OpenFlow 0.8.9r2 from this tar: > http://openflowswitch.org/downloads/openflow-0.8.9~2.tar.gz as well as > 0.9.0r1 from this tar: > http://openflowswitch.org/downloads/openflow-0.9.0-rev1.tar.gz and OpenFlow > (1.0) straight from git://openflowswitch.org/openflow with last commit: > > da...@bruckner:~/openflow$ git log > commit 951f4ca9f573afda40c7c9b17c2e8cc2f801ae7a > Author: Justin Pettit > Date: Mon Dec 7 23:45:02 2009 -0800 > > Add new OpenFlow error messages for 1.0 release. > > The quoted compile error is against the git openflow release, though I get > similar ones against openflow 0.9.0, referring to expire events not existing. > > Compiling against 0.9.8 I get told: > > ../../../src/lib/openflow.cc: In member function ‘int > vigil::Openflow_connection::send_add_snat(uint16_t, uint32_t, uint32_t, > uint16_t, uint16_t, uint16_t, uint16_t, vigil::ethernetaddr, uint16_t)’: > ../../../src/lib/openflow.cc:612: error: ‘struct nx_snat_config’ has no > member named ‘mac_addr’ > > I am always compiling using: > > make clean && ../configure --with-python=yes > --with-openflow=/home/daw63/openflow && make > > with /home/daw63/openflow being a symlink to the relevant release I'm trying > to use. > > Thanks for getting back to me, > > Daniel > > On Thu 17/12/09 23:30 , kk yap wrote:: > > Hi Daniel, > > Are you compiling NOX for OpenFlow v0.9? Basically, I would like to > know where and how you got the OpenFlow source. That will help in > resolving your question. > > Regards > KK > > 2009/12/17 ...@illicitonion.com>: >> Hi, >> >> I'm trying to get a version of NOX which is compatible with OpenFlow 0x98. >> Compiling the version from git://noxrepo.org/nox or >> git://noxrepo.org/noxcore both give me compile errors about undefined >> classes when setting --with-openflow to any of 0.8.9r2, 0.9.0 or the >> openflow git. Can anyone point me at somewhere I can get a newer version of >> NOX? >> >> The specific compiler errors I'm getting (against openflow from git) are: >> >> In file included from ../../../src/lib/openflow-event.cc:43: >> ../../../src/include/flow-expired.hh: At global scope: >> ../../../src/include/flow-expired.hh:43: error: ISO C++ forbids declaration >> of ‘ofp_flow_expired’ with no type >> ../../../src/include/flow-expired.hh:43: error: expected ‘,’ or ‘...’ before >> ‘*’ token >> ../../../src/include/flow-expired.hh:58: error: ISO C++ forbids declaration >> of ‘ofp_flow_expired’ with no type >> ../../../src/include/flow-expired.hh:58: error: expected ‘;’ before ‘*’ token >> ../../../src/include/flow-expired.hh:62: error: expected ‘;’ before ‘static’ >> ../../../src/include/flow-expired.hh: In member function ‘virtual const >> ofp_match* vigil::Flow_expired_event::get_flow() const’: >> ../../../src/include/flow-expired.hh:55: error: ‘get_flow_expired’ was not >> declared in this scope >> ../../../src/include/flow-expired.hh: At global scope: >> ../../../src/include/flow-expired.hh:69: error: ISO C++ forbids declaration >> of ‘ofp_flow_expired’ with no type >> ../../../src/include/flow-expired.hh:69: error: expected ‘,’ or ‘...’ before >> ‘*’ token >> ../../../src/include/flow-expired.hh: In constructor >> ‘vigil::Flow_expired_event::Flow_expired_event(vigil::datapathid, int)’: >> ../../../src/include/flow-expired.hh:71: error: ‘ofe’ was not declared in >> this scope >> ../../../src/lib/openflow-event.cc: At global scope: >> ../../../src/lib/openflow-event.cc:68: error: ISO C++ forbids declaration of >> ‘ofp_flow_expired’ with no type >> ../../../src/lib/openflow-event.cc:68: error: expected ‘,’ or ‘...’ before >> ‘*’ token >> ../../../src/lib/openflow-event.cc: In function >> ‘vigil::Event*::handle_flow_expired(vigil::datapathid, int)’: >> ../../../src/lib/openflow-event.cc:72: error: ‘ofe’ was not declared in this >> scope >> ../../../src/lib/openflow-event.cc:72: error: ‘buf’ was not declared in this >> scope >> ../../../src/lib/openflow-event.cc: In function ‘vigil::Event* >> vigil::openflow_packet_to_event(vigil::datapathid, std::auto_ptr)’: >> ../../../src/lib/openflow-event.cc: