55 Commits
Author SHA1 Message Date
Glen Gibb bd9dd43554 spec: clarify actions field in ofp_switch_features
Clarify that the actions field is used only for reporting back the
standard actions defined in the Actions section of the document, not for
vendor-specific actions.
2009-12-31 15:51:34 -08:00
Yiannis Yiakoumis cb38fcc3fb spec : Clarify valid ports for enqueue action.
- Only ports < OFPP_MAX and OFPP_IN_PORT are valid ports
  for enqueuing.
- Also fixed spec typo (thanks to Reid Price for reporting).
2009-12-16 01:57:16 -08:00
Brandon Heller 0bfd742cbf Spec: now with extra tuple 2009-12-15 21:28:12 -08:00
Brandon Heller 56d76b87f0 Spec: consistent formatting for desc_stats 2009-12-15 21:28:12 -08:00
Brandon Heller 4a79c66d4e Spec: clarify 0 bytes ambiguity 2009-12-15 21:28:12 -08:00
Brandon Heller 6c9c9b1b80 Spec: reword port stats description 2009-12-15 21:28:12 -08:00
Brandon Heller 58cf3b78b3 Spec: include port mod failed errors 2009-12-11 18:16:08 -08:00
Brandon Heller fde98c8df4 Spec: replace SSL refs with TLS
Thanks to Peter Balland for pointing this one out.
2009-12-11 18:14:38 -08:00
Glen Gibb 47a0ed66bc Merge branch 'devel/yiannisy/slicing'
Conflicts:
	include/openflow/openflow.h
	regress/lib/Perl5/OF/OFUtil.pm
	regress/projects/black_box/regress/tests.txt
	udatapath/datapath.c
	utilities/wireshark_dissectors/openflow/packet-openflow.c
2009-12-11 18:11:16 -08:00
Glen Gibb b2ea92008e Updated spec for selective port stats 2009-12-11 15:43:37 -08:00
Justin Pettit d216ae2782 Document flow cookies for the OpenFlow spec. 2009-12-11 15:43:36 -08:00
Rob Sherwood 20634da473 added dp_desc field to ofp_stats_desc
added a human readable string to ofp_stats_desc to describe
the datapath, e.g., "switch4 in closet 3b of Gates"

* updated openflow.h
* updated udatapath: defaults to "$HOSTNAME pid=$$"
* updated kernel datapath: defaults to "$HOSTNAME idx=$i"
* updated wireshark plugin
* added regression test for ofp_desc_stats
* addressed KK's review comments from:
    https://mailman.stanford.edu/pipermail/openflow-dev/2009-December/000545.html
2009-12-11 15:43:35 -08:00
David Erickson e224493afd Addresses issues raised by Brandon Heller's review 2009-12-11 15:43:35 -08:00
David Erickson bc94ac2e58 Improve flow duration precision
Improve precision of flow duration (time a flow has
been installed in a switch) from seconds to nanoseconds
to improve throughput measurement accuracy when using
flow stats messages. This implementation splits the
existing duration fields into duration_sec and
duration_nsec for both flow expiration and flow stats
messages. Passes included unit tests on Ubuntu 8.04.
2009-12-11 15:43:35 -08:00
Yiannis Yiakoumis 7ef69e0259 Introduce slicing mechanism changes in spec and openflow.h
For further details refer to this feature wiki-page:
http://openflowswitch.org/wk/index.php/Slicing
2009-12-04 14:44:39 -08:00
Brandon Heller 45e7855e46 Spec: Fix build (unescaped underscore) 2009-07-16 09:55:17 -07:00
Brandon Heller fcb27f377b Spec: Zero-size action outputs
Note interpretation of a zero-size max_len field in an action_output.
2009-07-15 12:56:14 -07:00
Brandon Heller 0bd33bf82e Spec: Define meaning of a zero-size miss_send_len
Clarify that when the miss_send_len switch config value is set to 0, an
empty packet-in message should be sent, rather than no packet-in at all.
2009-07-15 09:42:53 -07:00
Brandon Heller 3087ecedcf Spec: Make datapath ID 64 bits, up from 48
This commit allows multiple virtual switch instances to share a single
physical switch.
2009-07-15 09:42:37 -07:00
Mikio Hara aefade8e40 Spec: Rename flow expiration messages to flow removed
Now that delete operations can cause flow expirations, it makes sense
to rename them as flow removed messages.
2009-07-02 05:31:00 -07:00
Brandon Heller b1e7cc00bc Spec: Add IP ToS rewrite action
Enable additional basic QoS support, without requiring a full QoS
framework.  This commit defines a flow action to rewrite the DiffServ
CodePoint bits of the IP ToS field in the IP header.
2009-06-30 22:07:13 -07:00
Brandon Heller 0f73f42fa6 Spec: Define failover behavior
Add notes about emergency vs normal flows, and define an expectation
for the switch to support multiple controller strings.
2009-06-30 18:02:54 -07:00
Brandon Heller 98ee054722 Spec: Minor change to CHECK_OVERLAP text 2009-06-29 11:37:28 -07:00
Brandon Heller 1a5762fbd2 Spec: Fix ambiguity regarding the duration field in Flow Expirations
Before this spec change, flow expiration messages included a duration
field for the time the flow was active.  To find out the amount of time
the flow received traffic would have been much harder - the controller
would need to store a record of all flow mods it has sent, to know the
idle_timeout of this flow.  Additionally, both phrases, 'time flow was
active' and 'time traffic was received' were used in the spec for the
duration field.

Now we return the idle timeout in the flow expiration message, and ensure
duration is the time the entry was present in the flow table.  The hard
timeout will be obvious if it is the reason for the deletion, since the
reason field will be OFPER_HARD_TIMEOUT, and the duration will be the hard
timeout value.  From the duration and the idle_timeout, we can also
compute the time the flow received traffic.
2009-06-29 11:37:28 -07:00
Brandon Heller 91617a4690 Spec: Add VLAN priority bits
The OpenFlow 10-tuple is now officially an 11-tuple, with the addition of
the VLAN priority (PCP) field.
2009-06-29 11:37:28 -07:00
Brandon Heller 90bdc8626b Spec: Add barrier commands
Add barrier request message, which ensures that all previously received
commands are complete before executing ones past the barrier message.  A
barrier reply must be sent for each barrier request.

We expect this command to be useful for testing and wireless handover
purposes.
2009-06-29 11:37:28 -07:00
Brandon Heller e9353ae079 Spec: Add _EPERM error codes
An OpenFlow hypervisor might choose to reject an OpenFlow request, but
currently has no message type defined for this error. It is not a
vendor-specific error, thus we define an _EPERM error code for each error
type.

Also remove unused, commented-out text.
2009-06-29 11:37:14 -07:00
Brandon Heller 31955e3ea4 Spec: Clarify buffer behavior 2009-06-29 11:36:33 -07:00
Brandon Heller cec522cd66 Spec: Clarify format for Strip VLAN action
Clarify that the OFPAT_STRIP_VLAN action takes no argument and strips the
VLAN tag if one is present. The header is the generic action header.
2009-06-29 11:36:33 -07:00
Brandon Heller 16e2b8ba6d Spec: Clarify transaction ID for error messages
Note that if an error is in response to a specific message from the
controller, the transaction ID should match that from the original
request.
2009-06-29 11:36:32 -07:00
Brandon Heller 3a7d98b612 Spec: Clarify matching behavior for flow mods and stats
The spec does not currently define how wildcard matching should behave for
flow modification (specifically DELETE and MODIFY commands) and stats.
This commit adds text to define behavior when some fields are wildcarded
and others are left exact.
2009-06-29 11:36:32 -07:00
Brandon Heller a00b917457 Spec: Selective flow expirations
Make flow expirations per-flow-entry, rather than per-switch.

This commit should give controllers extra flexibility to decide when they
want expirations, will simplify the job of an OpenFlow hypervisor, and may
reduce CPU load at the switch.
2009-06-29 07:02:44 -07:00
Glen Gibb bdbd57b546 Add missing codes in Error Message section
Error Messages section was missing the codes for:
 - OFPET_BAD_ACTION
 - OFPET_FLOW_MOD_FAILED
2008-12-09 13:37:45 -08:00
Glen Gibb a3f6caf703 Clarified Error Message section
Clarified the wording in the Error Message section slightly:
 - currently defined error types
 - data field for OFPET_HELLO_FAILED
 - codes for OFPET_BAD_REQUEST
2008-12-09 13:37:45 -08:00
Brandon Heller c5242793ba Spec: update for delete+out_port changes, plus remove action interleaving restrictions text (not implemented yet). 2008-12-02 02:13:08 -08:00
Brandon Heller 26b907fb3a Spec: minor changes, plus version number set to 0.8.9 2008-11-22 19:14:14 -08:00
Brandon Heller 99aa32b737 Spec: removed version number dependence from makefile (it's printed on the first page) and added each action struct 2008-11-21 16:58:15 -08:00
Brandon Heller f1918e584b Spec: minor formatting changes 2008-11-21 16:57:34 -08:00
Brandon Heller f0137e8bfa Spec: added IP netmask text from wiki 2008-11-21 16:57:33 -08:00
Brandon Heller 1841cd3424 Spec: added details on STP from wiki 2008-11-21 16:57:33 -08:00
Brandon Heller ed9b91aa07 Spec: added vendor stats type and wiki info on Vendor message type 2008-11-21 16:57:33 -08:00
Brandon Heller 7e22df2cfb Spec: added line about IP fragment handling 2008-11-21 16:57:33 -08:00
Brandon Heller 0ba5844d12 Spec: added Hello message and handshake details 2008-11-21 16:57:33 -08:00
Brandon Heller cd8f6a194c Spec: updated VLAN actions 2008-11-21 16:57:33 -08:00
Brandon Heller 194338150f Spec: added and refined text, some of which comes from the wiki entry on v0.9 2008-11-21 16:57:33 -08:00
Brandon Heller db10aa66c6 Spec: add Vendor message type to protocol overview 2008-11-21 16:57:33 -08:00
Brandon Heller 1828576ad6 Spec: updated symmetric messages section, added Vendor message type 2008-11-21 16:57:33 -08:00
Brandon Heller d356960ad3 Spec: changed error text 2008-11-21 16:57:33 -08:00
Brandon Heller 21410057cc Spec: update flow expiration text and add reason enum 2008-11-21 16:57:33 -08:00
Brandon Heller 09d526fa11 Spec: update text for stats replies 2008-11-21 16:57:33 -08:00