summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2015-04-08packet_data_generator2: Add flow_modYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-08test_parser: Add a expected result (bundle_ctrl)YAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-08packet_data: regen (bundle_ctrl)YAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-08packet_data_generator2: Add bundle_ctrlYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-08of15: Implement OFPBundleCtrlMsg parserYAMAMOTO Takashi
TODO: backport to of14 Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-08packet_data_generator2: READMEYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-08Show warning when Datapath#ports is readSatoshi Kobayashi
Datapath#ports is kept for compatibility with the previous openflow versions (< 1.3). Datapath#ports is not updated when received EventOFPPortStatus. This behavior may confuse users. Wherefore, showing warning message when the user accesses to Datapath#ports with the currently openflow versions (>= 1.3) is friendly. Signed-off-by: Satoshi Kobayashi <satoshi-k@stratosphere.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-08Syntax level compatibility with Python 3Satoshi Kobayashi
We use syntaxes which can be used only in Python2 at many locations. But we should reduce the use of the syntaxes. This patch serves syntax level compatibility with Python3. However, for full compatibility is required still a lot of work because many API changes are made between 2 to 3. Signed-off-by: Satoshi Kobayashi <satoshi-k@stratosphere.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-03Ryu 3.20FUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-03rest_firewall: Prevent adding fields which is unrelated to matchYusuke Iwase
This patch prevent rest_firewall.py from adding unrelated fields (e.g. priority, actions) into match fields. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-03ofctl_v1_[23]: Ignore unkown match fieldsYusuke Iwase
Currently, ofctl_v1_[23].py adds non-existing match fields when getting unknown match fields, then parser returns KeyError. This patch fixes ofctl_v1_[23].py to ignore unkown match fields and output error messages. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-03Revert "pip-requires: Remove comments"YAMAMOTO Takashi
This reverts commit 8fc25ca6c8c3f4510980b14db2604e62af043a2d. The workaround is no longer necessary because the relevant fix in devstack [1] has been merged. [1] https://review.openstack.org/#/c/165709/ Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-03test_parser: Enable OpenFlow 1.5 testsYAMAMOTO Takashi
Dig into the "of15" directory. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-03test_parser: Add a expected resultYAMAMOTO Takashi
For OpenFlow 1.5. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-03packet_data: regenYAMAMOTO Takashi
For OpenFlow 1.5. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-04-03packet_data_generator2: another packet data generator using libofprotoYAMAMOTO Takashi
For OpenFlow 1.5. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-22pip-requires: Remove commentsYAMAMOTO Takashi
This partially reverts commit bf58a6dcf3dcf6241fc1c9e58f3e43d2aa9ea7f2. devstack (stable/juno) fails to process comments in this file. While a fix for devstack has been proposed [1], it might take some time to be merged. I guess it's best to fix it in ryu, at least for a while. [1] https://review.openstack.org/#/c/165709/ Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-22lib.ovs.vsctl: Fix a crashYAMAMOTO Takashi
Fix some typos in the code. This fixes a crash reported on ryu-devel@. http://sourceforge.net/p/ryu/mailman/message/33607025/ Reported-by: Jason Syu <newdongfong@gmail.com> Tested-by: Jason Syu <newdongfong@gmail.com> Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-22bmp: fix bug of logging format in bmpstationToshiki Tsuboi
% ryu-manager bmpstation.py --verbose loading app bmpstation.py instantiating app bmpstation.py of BMPStation BRICK bmpstation listening on 0.0.0.0:11019 Traceback (most recent call last): File "/usr/lib/python2.7/logging/__init__.py", line 851, in emit msg = self.format(record) File "/usr/lib/python2.7/logging/__init__.py", line 724, in format return fmt.format(record) File "/usr/lib/python2.7/logging/__init__.py", line 464, in format record.message = record.getMessage() File "/usr/lib/python2.7/logging/__init__.py", line 328, in getMessage msg = msg % self.args TypeError: not enough arguments for format string Logged from file bmpstation.py, line 51 Signed-off-by: Toshiki Tsuboi <t.tsubo2000@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-18ofctl_rest: Reduce pylint warningsYusuke Iwase
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-18doc/app/ofctl_rest: Fix example of ipv6_exthdr match fieldYusuke Iwase
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-18test_ofctl: Add unit test for masked ipv6_exthdr match fieldYusuke Iwase
Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-18ofctl_v1_3: Support masked ipv6_exthdr match fieldYusuke Iwase
In OpenFlow Spec 1.3.4, ipv6_exthdr is maskable match field, but ofctl_v1_3 does not support mask. This patch makes ofctl_v1_3 enable to set masked ipv6_exthdr. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-17requirements: Drop some optional requirementsYAMAMOTO Takashi
Move some non pure python requirements (namely lxml and paramiko) from pip-requires to test-requires. Document it in README.rst. Motivations: - Make this pip-installable with pypy - Less distribution package requirements (deb/rpm/etc) in case a user do not actually need the functionality Note: while paramiko itself is pure python, it requires pycrypto. Note: msgpack has pure python fallback implementation. Separating ryu into smaller packages would be a better alternative. However, it would involve a lot more work than this workaround. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-17README.rst: Replace a reference to ryu-plugin with ofagentYAMAMOTO Takashi
Ryu-plugin is obsolete and has been removed in the development version of OpenStack/Networking. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-17pip-requires: Add comments to say what's required by whatYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-17UT: Remove unused importsYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-17bgp: Remove an unused importYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-17yet more logging call cleanupsMark Lentczner
Signed-off-by: Jerry Cen <zhiweic@google.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-16ryu.app.ofctl: Handle a race with connection closeYAMAMOTO Takashi
Report the failure to the client rather than crashing. Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-16silence pep8 warnings to the previous commitFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-16Reduce logging overhead by cleaning up logging callsMark Lentczner
Deferred formatting to the logging system: --------------------------------------------- In general logger.debug('xxx %s yyy %d zzz' % (a, b, c)) can be written as: logger.debug('xxx %s yyy %d %zzz', a, b, c) This is faster, as Python logging doesn't bother doing the format operation (which is slow) if the log message won't be logged. We measured that a significant amount of CPU time in the BGP service was attributable to these formatting operations. Removed unneeded calls to str() and repr() ------------------------------------------ since formatting operations %s and %r will make these calls when (and if) the formatting is performed. Signed-off-by: Jerry Cen <zhiweic@google.com> Acked-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-02Ryu 3.19FUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-03-02snortlib: Remove disabled flag MSG_WAITALLYusuke Iwase
Because Ryu is based on Eventlet, GreenSocket is used by default and blocking flags is disabled. So MSG_WAITALL flag is not available. This patch removes MSG_WAITALL flag, and fixes snortlib.py to check received buffer size in _recv_loop_nw_sock(). Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-26ryu.cfg: Use a dedicated ConfigOpt instanceYAMAMOTO Takashi
This might be necessary for future vesions of Neutron OVS agent. 1. The agent parses options, including command line options, using oslo.config.cfg.CONF ConfigOpt instance. 2. Depending on options, it might lazily import ryu modules. 3. The ryu modules might have import-time register_cli_opts calls against ryu.cfg.CONF. 3. As ryu.cfg.CONF is same as oslo.config.cfg.CONF, oslo.config raises an exception, complaining register_cli_opts is used after parsing command line options. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-25snortlib: Fix nw_sock handlingYusuke Iwase
Currently, snortlib cannot receive reconnect request from Snort client program (e.g. pigrelay.py). This patch fixes this problem. Signed-off-by: IWASE Yusuke <iwase.yusuke0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-25of: Prevent __str__() methods from raising exceptionsAkihiro Suda
ofproto_parser.MsgBase.__str__(): avoid "TypeError: %x format: a number is required, not NoneType"
2015-02-25bgp: Prevent __str__() methods from raising exceptionsAkihiro Suda
bgp.BadMsg.__str__(): avoid "AttributeError: 'BadMsg' object has no attribute 'msg'" Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-20packet lib: dhcp: Fix to calculate Hardware address lengthMinoru TAKAHASHI
Reported-by: Sam Russell <sam.h.russell@gmail.com> Signed-off-by: Minoru TAKAHASHI <takahashi.minoru7@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-16travis-ci: use container-based infrastructure for faster testingsFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-16Move msg_pack_into from ofproto to libYAMAMOTO Takashi
A motivation of this change is a better modularity. I.e. Make packet lib independent from ofproto. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-16tox.ini: Disable pep8 W503 for nowYAMAMOTO Takashi
Disable pep8 "W503 line break before binary operator" warning for now. The check was recently introduced by pep8 1.6.2. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-15bgp/bmp: bug fix. remove redundant construction of path attributesISHIDA Wataru
BGPPathAttributeNextHop and BGPPathAttributeMpReachNLRI is already in new_pathattr. so stop construct and append it to new_pathattr list. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-15Move the definitions of ether types and inet protocols to lib.packetYAMAMOTO Takashi
A motivation of this change is a better modularity. I.e. Make packet lib independent from ofproto. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-15ofproto: Fix invalid error code OFPQCFC_EPERM -> OFPSCFC_EPERM (EXT-208)Shu Shen
Invalid error code OFPQCFC_EPERM should be OFPSCFC_EPERM instead. This is EXT-208 that was included in Openflow v1.3.1. OFPSCFC_EPERM is backported to ofproto_v1_2 so that any new or updated application could consistently use OFPSCFC_EPERM to handle all protocol versions. OFPQCFC_EPERM is left in ofproto_v1_2 and ofproto_v1_3 definitions for backward compatibility. Signed-off-by: Shu Shen <shu.shen@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-15ofproto: Openflow 1.5 support (work-in-progress)Shu Shen
Work done: - The baseline is copied over from ofproto_v1_4.py and ofproto_v1_4_parser.py and into ofproto_v1_5.py and ofproto_v1_5_parser.py respectively. - Most of structs, enums, and pack strings in ofproto_v1_5.py has been updated to spec. Exception is oxs_fields has not been done yet. - ofproto_v1_5_parser.py has not been updated except those necessary to allow run_tests.sh to complete successfully - ofproto_protocol.py imports ofproto_v1_5 and ofproto_v1_5_parser now - oxm_fields.py is updated for OFPXMC_PACKET_REGS - Tests are updated to include Openflow v1.5 when it's obvious. But not much work has been done to acutally test v1.5 yet. I also found tests for v1.4 are scarce. TODO: - Add oxs_fields support. It shall be similar to oxm_fields - Update and implement ofproto_v1_5_parser.py - More tests, tests, tests. Signed-off-by: Shu Shen <shu.shen@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-08ignore some pep8 errors for nowFUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-08test_oxm: Add tests for EXT-109 and EXT-233YAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-08ofproto_v1_3: Implement EXT-109 and EXT-233YAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2015-02-08oxm_fields: Rename ONFExperimenter to OldONFExperimenterYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>