X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=OPENFLOW-1.1%2B;h=f978cb55ede64a65848f73a0e63f4fb779d3105e;hb=5ea1eab089607de8f87189fe4463364e26576070;hp=190dd2913277d035212ec1fabc2bcb20ca52e720;hpb=0d56eaf2e00b9d0e4d9cbc5d5b360191e5c16ded;p=sliver-openvswitch.git diff --git a/OPENFLOW-1.1+ b/OPENFLOW-1.1+ index 190dd2913..f978cb55e 100644 --- a/OPENFLOW-1.1+ +++ b/OPENFLOW-1.1+ @@ -54,9 +54,6 @@ OpenFlow 1.1 The list of remaining work items for OpenFlow 1.1 is below. It is probably incomplete. - * Implement Write-Actions instruction. - [required for 1.1+] - * The new in_phy_port field in OFPT_PACKET_IN needs some kind of implementation. It has a sensible interpretation for tunnels but in general the physical port is not in the datapath for OVS @@ -69,18 +66,6 @@ probably incomplete. behavior does not change. [required for OF1.1 and OF1.2] - * Flow table stats (OFPST_TABLE). - - * Reference count (active entries) - [implemented] - [required for OF1.1 and OF1.2] - - * Packet Lookups - [required for OF1.1; optional for OF1.2] - - * Packet Matches - [required for OF1.1; optional for OF1.2] - * MPLS. Simon Horman maintains a patch series that adds this feature. This is partially merged. [optional for OF1.1+] @@ -93,40 +78,18 @@ probably incomplete. reasonable performance. [required for OF1.1+] - * Groups. - - * Type all - [required for OF1.1+] - - * Type select - [optional for OF1.1+] - - * Type indirect - [required for OF1.1+] - - * Type fast failover - [optional for OF1.1+] - - * Statistics - [optional for OF1.1+] - OpenFlow 1.2 ------------ -OpenFlow 1.2 support requires OpenFlow 1.1 as a prerequisite, plus the -following additional work. (This is based on the change log at the -end of the OF1.2 spec. I didn't compare the specs carefully yet.) - - * OFPT_FLOW_MOD: - - * New flag OFPFF_RESET_COUNTS. - [required for OF1.2+] - - * Add ability to delete flow in all tables. - [required for OF1.2+] +OpenFlow 1.2 support requires OpenFlow 1.1 as a prerequisite. All the +additional work specific to Openflow 1.2 are complete. (This is based +on the change log at the end of the OF1.2 spec. I didn't compare the +specs carefully yet.) - * Update DESIGN to describe OF1.2 behavior also. - [required for OF1.2+] + * Action translation needs some work to transform OpenFlow 1.1 + field modification actions into OpenFlow 1.2+ "set-field" + actions, because OpenFlow 1.2 dropped support for the OF1.1 + actions. OpenFlow 1.3 ------------ @@ -136,16 +99,18 @@ following additional work. (This is based on the change log at the end of the OF1.3 spec, reusing most of the section titles directly. I didn't compare the specs carefully yet.) - * Send errors for unsupported multipart requests. - [required for OF1.3+] - * Add support for multipart requests. + Currently we always report OFPBRC_MULTIPART_BUFFER_OVERFLOW. [optional for OF1.3+] * Add OFPMP_TABLE_FEATURES statistics. [optional for OF1.3+] * More flexible table miss support. + This requires the following. + - Change the default table-miss action (in the absense of table-miss + entry) from packet_in to drop for OF1.3+. Decide what to do if + a switch is configured to support multiple OF versions. [required for OF1.3+] * IPv6 extension header handling support. Fully implementing this @@ -190,9 +155,95 @@ didn't compare the specs carefully yet.) optimization in some cases for the software switch. [optional for OF1.3+] - * Duration Statistics - - New for Per Port, Per Queue, Per Group - [required for v1.3+] +ONF OpenFlow Exensions for 1.3.X Pack1 +-------------------------------------- + +OpenFlow 1.3 has a bunch of ONF extentions. +Many of them are necessary for OpenFlow 1.4 as well. + + * Flow entry notifications + This seems to be modelled after OVS's NXST_FLOW_MONITOR. + [EXT-187] + [required for OF1.4+] + + * Role Status + [EXT-191] + [required for OF1.4+] + + * Flow entry eviction + OVS has flow eviction functionality. + table_mod OFPTC_EVICTION, flow_mod 'importance', and + table_desc ofp_table_mod_prop_eviction need to be implemented. + [EXT-192-e] + [optional for OF1.4+] + + * Vacancy events + [EXT-192-v] + [optional for OF1.4+] + + * Bundle + Transactional modification. OpenFlow 1.4 requires to support + flow_mods and port_mods in a bundle. + (Not related to OVS's 'ofbundle' stuff.) + [EXT-230] + [required for OF1.4+] + + * Table synchronisation + [EXT-232] + [optional for OF1.4+] + + * Group notifications + [EXT-235] + [optional for OF1.4+] + + * Bad flow entry priority error + Probably not so useful to the software switch. + [EXT-236] + [optional for OF1.4+] + + * Set async config error + [EXT-237] + [optional for OF1.4+] + + * PBB UCA header field + [EXT-256] + [optional for OF1.4+] + + * Duplicate instruction error + We already have ONFBIC_DUP_INSTRUCTION. + [EXT-260] + [required for OF1.4+] + + * Multipart timeout error + [EXT-264] + [required for OF1.4+] + +OpenFlow 1.4 +------------ + + * More extensible wire protocol + Many on-wire structures got TLVs. + [EXT-262] + [required for OF1.4+] + + * More descriptive reasons for packet-in + Distinguish OFPR_APPLY_ACTION, OFPR_ACTION_SET, OFPR_GROUP, + OFPR_PACKET_OUT. NO_MATCH was renamed to OFPR_TABLE_MISS. + [EXT-136] + [required for OF1.4+] + + * Optical port properties + [EXT-154] + [optional for OF1.4+] + + * Flow-removed reason for meter delete + Report flow removal due to meter deletion with OFPRR_METER_DELETE. + [EXT-261] + [optional for OF1.4+] + + * Meter notifications + [EXT-235] + [optional for OF1.4+] How to contribute -----------------