summaryrefslogtreecommitdiffhomepage
AgeCommit message (Collapse)Author
2014-03-25enable multistage @set_ev_cls or @set_ev_handlerISHIDA Wataru
Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-25ofproto: get rid of fragile and slow glob'ing modulesYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-22topology/switches: duplicate datapath connections handlingWei-Li Tang
The way to handle multiple connections from the same datapath I took is mostly the same as in dpset, but it's always good to reinstall the LDAP Packet-In flows even while switch tries to reconnect to us. Signed-off-by: Wei-Li Tang <alextwl@xinguard.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-21Add request forward message unit testSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-21Add request forward message supportSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-21of14: Add bundle add message unit testSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-21of14: Add bundle add message supportSimon Horman
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-21Allow messages inside messagesSimon Horman
Bundle Add Message and Request Forward Message, which is part of OpenFlow 1.4, encapsulates an OpenFlow message in side an OpenFlow message. This patch prepares for this by adding a MsgInMsgBase class, a subclass of MsgBase which allows its subclasses to include subclasses of either MsgInMsgBase or MsgBase when when parsing classes from JSON: The MsgBase class does not allow this. This change has three parts: * Remove the assertion in ofproto_parser.py:StringifyMixin::cls_from_jsondict_key() that cls is not a subclass of MsgBase. * Pass **additional_args to various stringify.py:StringifyMixin decoder methods to make the datapath available when instantiating MsgBase subclasses. * Override _decode_value() in MsgInMsgBase to pass **additional_args to decoder. The method in the parent class, StringifyMixin, does not pass **additional_args. The effect is to pass a datapath argument if the class is a subclass of MsgInMsgBase but not if the class is a direct subclass of MsgBase. By only making messages which allow messages inside them subclasses of MsgInMsgBase this allows the datapath argument to be passed to the decoder if and only if needed. Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-21ofctl_v1_2:support whole of match fieldsKiyonari Harigae
Hi, I tried to support for whole of match field with ofctl_v1_2.(same as ofctl_v1_3) Also, changed table_id of get_flow_stats method from fixed 0 to OFPTT_ALL for enable to select arbitrary table_id by client side. Thank you. Signed-off-by: Kiyonari Harigae <lakshmi@cloudysunny14.org> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-21rest_router: fix OFPSetAsync bit maskSriram Natarajan
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-18ofp_event: fix a typoYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-18ofctl_v1_2/3: IP arbitrary bitmask supportWei-Li Tang
Openflow 1.1 and later versions allow the use of IP address with arbitrary bitmask in match fields. This adds arbitrary bitmask support to related functions. After applying this patch, it's no longer compatible with ACL hybrid CIDR format (Cisco-like ACL bitmasks) because such format exists only in some router's ACL configuration. Reported-by: Yi-Ching Lee <potatoching11@gmail.com> Reported-by: Li-Der Chou <cld@csie.ncu.edu.tw> Signed-off-by: Wei-Li Tang <alextwl@xinguard.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16sw test tool: Fix a problem for disconnectionYuichi Ito
Disconnection of switches has caused a RyuInternalError because target_sw/tester_sw is set to NoneType. This patch fixes the problem. Signed-off-by: Yuichi Ito <ito.yuichi0@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add bundle control message unit testSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add bundle control message supportSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Remove incorrect OFP_ASYNC_CONFIG_{PACK_STR, SIZE}Simon Horman
OFP_ASYNC_CONFIG_PACK_STR and OFP_ASYNC_CONFIG_SIZE are based on the OpenFlow 1.3 implementation and specification. However, the Openflow 1.4 specification defines a rather different structure: struct ofp_async_config { struct ofp_header header; /* OFPT_GET_ASYNC_REPLY or OFPT_SET_ASYNC. */ /* Async config Property list - 0 or more */ struct ofp_async_config_prop_header properties[0]; }; OFP_ASSERT(sizeof(struct ofp_async_config) == 8); In implementation terms this means that OFP_ASYNC_CONFIG_PACK_STR is empty and OFP_ASYNC_CONFIG_SIZE is zero. In the new implementation these values are unused so simply remove them. Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Update get async reply and set async implementation to follow specSimon Horman
The current get async reply and get async implementations follows that of of_protocol and OpenFlow 1.3. However, OpenFlow 1.4 defines a rather different format. This patch updates the implementation to follow the OpenFlow 1.4 specification. Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add OFPAsyncConfigPropSimon Horman
This will be used by a revised implementations of get async request reply and set async Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add table status unit testSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add table status supportSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add flow monitor reply message unit testSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add flow monitor request unit testSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16packet_data_generator: New ofproto dependency for v5 updatesSimon Horman
Update ofproto dependency to include a merge of the mainline v5 branch which includes: * Bundle messages * Flow monitor messages * Request Forward message * Table Status message * Fix for length of Flow Update Full entry of Flow Monitor reply message Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add flow monitor reply supportSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add flow monitor request supportSimon Horman
Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16of14: Add OFPFlowUpdateSimon Horman
This will be used by flow monitor reply messages Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16dpset: absorb *args, **kwargs passed to __init__ISHIDA Wataru
dpset might be initialied implicitly like OFPHandler. In that case, _CONTEXTS are passed to dpset. so we should ignore them. Signed-off-by: ISHIDA Wataru <ishida.wataru@lab.ntt.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16ofctl_v1_2/3: Convert IP fields to string with dotted decimal maskWei-Li Tang
This enables match_ip*_to_str() functions to output IP address with dotted decimal subnet mask if the mask cannot be represented in CIDR format. Reported-by: Yi-Ching Lee <potatoching11@gmail.com> Reported-by: Li-Der Chou <cld@csie.ncu.edu.tw> Signed-off-by: Wei-Li Tang <alextwl@xinguard.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16sw test tool: avoid test termination in initializationwatanabe.fumitaka
The initialization error of the flow tables causes forced termination of the test, and has become the hindrance of execution of other tests. This patch changes operation of the flow tables initialization error to avoid forced termination of the test. Signed-off-by: WATANABE Fumitaka <watanabe.fumitaka1@gmail.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16ofctl_v1_2: Fix unsuitable logSatoshi Kobayashi
When using type 'ALL', the log unsuitable is outputted: Unknown type: ALL Signed-off-by: Satoshi Kobayashi <satoshi-k@stratosphere.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16ofctl_v1_3: Fix unsuitable logSatoshi Kobayashi
ofproto_v1_3.OFPGT_ALL is 0 and 0 is False on Python. When using type 'ALL', the following is set to True. if not type_: LOG.debug('Unknown type: %s', group.get('type')) Therefore, the log unsuitable is outputted: Unknown type: ALL Signed-off-by: Satoshi Kobayashi <satoshi-k@stratosphere.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16library_packet.rst: fix an example codeYAMAMOTO Takashi
Reported by Sebastian Gebhard on ryu-devel@. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16pyang plugin to generate of_config.generated_classesYAMAMOTO Takashi
the current version of generated_classes was written by hand. this plugin allows it to be auto-generated from the yang module of OF-Config if/when it's available. unfortunately, there seems to be no yang modules usable for this purpose publically available yet, though. the yang module of OF-Config 1.1.1 is embedded in pdf. besides that it's hard to extract from the pdf, its license is unclear. OF-Config 1.2 says that its yang module is distributed as a separate file. but i couldn't find it on ONF site. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16fix NX_EXPERIMENTER_IDYAMAMOTO Takashi
also, comment registry url. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Reviewed-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16reduce direct uses of oslo.config.cfg.CONFYAMAMOTO Takashi
no functional changes are intended. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16ryu.cfg: re-export some frequently used stuff for convenienceYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16add ryu.cfgYAMAMOTO Takashi
also, make CONF accessible via RyuApp.CONF. add a comment to explain the intention. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16ryu.conf: obsoleted argument used in sample configurationWei-Li Tang
ofp_listen_port was obsoleted and users should use ofp_tcp_listen_port (or ofp_ssl_listen_port if ssl enabled) instead. Signed-off-by: Wei-Li Tang <alextwl@xinguard.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-16ofctl_v1_2/3: IPv4 dotted decimal subnet mask supportWei-Li Tang
This enables to_match_ip() to accept IPv4 address with dotted decimal subnet mask or ACL hybrid CIDR. Given 3 match field values below: '192.168.1.0/24' '192.168.1.0/255.255.255.0' '192.168.1.0/0.0.0.255' These addresses are logically equivalent. Signed-off-by: Wei-Li Tang <alextwl@xinguard.com> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-05Ryu 3.7FUJITA Tomonori
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-05test_parser: update expected json representationYAMAMOTO Takashi
Update after experimenter data change. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-05OFPPropCommonExperimenter4ByteData: change payload to bytesYAMAMOTO Takashi
Change experimenter data from a list of 32-bit words to bytes. Discussed on ryu-devel@. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-05Apply normalize_json.pyYAMAMOTO Takashi
Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-04of14: Correct documentation of table mod flags and propertiesSimon Horman
* Document properties * The valid flags for OpenFlow 1.4 are OFPTC_EVICTION and OFPTC_VACANCY_EVENTS Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-04of13: Correct documentation of meter mod flagsSimon Horman
* Flags is a bitmap of OFPMF_* values rather than a single OFPMF_* value Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-04of13: Correct documentation of flow mod flagsSimon Horman
* Flags is a bitmap of OFPFF_* values rather than a single OFPFF_* value Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-04of13: Correct documentation of set config flagsSimon Horman
* Flags is a bitmap of OFPC_FRAG_* values rather than a single OFPC_FRAG_* value * OFPC_FRAG_MASK is not a valid bitmap field Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-04of13: Correct documentation and example of get config reply flagsSimon Horman
* Flags is a bitmap of OFPC_FRAG_* values rather than a single OFPC_FRAG_* value * OFPC_FRAG_MASK is not a valid bitmap field Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-04of14: Correct documentation of flow mod flagsSimon Horman
* Flags is a bitmap of OFPFF_* values rather than a single OFPFF_* value Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
2014-03-04of14: Correct documentation of meter mod flagsSimon Horman
* Flags is a bitmap of OFPMF_* values rather than a single OFPMF_* value Signed-off-by: Simon Horman <horms@verge.net.au> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>