1428 Commits
Author SHA1 Message Date
Mikio Hara e1e8bccbaa Change package version to 0.9.0 2009-07-20 16:15:31 -07:00
Mikio Hara 15286eab9b Change package version to 0.9.0-rc2 2009-07-16 14:25:28 -07:00
Mikio Hara 1a9e53a083 Remove boost dependency 2009-07-16 14:08:37 -07:00
Mikio Hara 247b607d6c Readjust wireshark dissector for 64-bit protocol sturct alignment 2009-07-16 13:52:07 -07:00
Mikio Hara 59c9a188d6 Cosmetic change: Made use of definition instead of raw value 2009-07-16 12:53:19 -07:00
Brandon Heller 45e7855e46 Spec: Fix build (unescaped underscore) 2009-07-16 09:55:17 -07:00
Mikio Hara 3f3dc5f1fc Remove experimental XEN adaptation 2009-07-16 09:26:26 -07:00
Mikio Hara 623e899a93 Bug fix: Restore 64-bit struct alignment
Commit 238c5065 (Vlan pcp match: Reorder VLAN priority field...)
changed ofp_match from 36B to 40B, breaking the 8B alignment of a
number of structs.  This commit modifies those structs to at least
pass the assertion tests and regression tests.
2009-07-16 09:23:19 -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
Mikio Hara ad94e12a04 Change meaning miss_send_len of set config and max_len field of output
action

If "max_send_len" (or the "max_len" field for the controller output
action) is zero, then send a packet-in with zero bytes of the packet
data.
2009-07-15 09:47:15 -07:00
Brandon Heller 6b3c54675b Spec: Clarify emergency mode behavior to match implementation
Add requirement to break TCP connection when disconnecting.
Note that when entering normal mode, emergency entries remain.
Also define startup flow entries as outside of the OFP scope.
2009-07-15 09:43:18 -07:00
Brandon Heller b23d253928 Spec: Don't send flow removed messages for emergency deletions
Bring spec in line with reference implementation: don't send flow
removed messages when an emergency flow entry is deleted.
2009-07-15 09:43:03 -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
Brandon Heller 7e640ed0b4 Spec: Note that emergency flow mods must have zeroed timerouts 2009-07-15 09:42:17 -07:00
Mikio Hara cafe218f52 Bug fix: Remove deprecated API proto_tree_add_item_hidden use in
OpenFlow wireshark dissector
2009-07-15 09:41:30 -07:00
Mikio Hara 11c56dc4c2 Bug fix: Modify test scripts to use correct ethernet ports 2009-07-15 09:40:50 -07:00
Mikio Hara 9656de8a28 Vlan pcp match: Reorder VLAN priority field in ofp_match structure to
order their appearance on the wire
2009-07-15 09:38:55 -07:00
Mikio Hara 034c75b75d Emergency flow cache: Rename error code from OFPFMFC_EMERG to
OFPFMFC_BAD_EMERG_TIMEOUT
2009-07-15 09:38:15 -07:00
Mikio Hara 36a60a74fc Emergency flow cache: Suppress flow removed notification for flows in
emergency flow table, add logic to emergency flow to reject entries
with timer
2009-07-11 21:02:04 -07:00
Mikio Hara 46c78aa8aa Change wire protocol version to 0x98 and package version to 0.9.0-rc1 2009-07-02 06:28:15 -07:00
Mikio Hara 9b3b165270 Change manufacturer information 2009-07-02 05:46:48 -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
Mikio Hara 01593f3c49 Namespace change: Rename flow expiration to flow removed 2009-07-01 19:58:06 -07:00
Mikio Hara 0f3d726853 Protocol stats: Revise to support new protocol messages and error codes 2009-07-01 13:27:21 -07:00
Mikio Hara 680f63b514 Rewrite IP ToS/DSCP: Add IP ToS/DSCP field rewrite feature 2009-07-01 11:28:51 -07:00
Brandon Heller b008eb8126 Fix typo
DSCP, not DCSP
2009-06-30 23:24:30 -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
Mikio Hara ed0d7bc8e8 Bug fix: Fix memory leak in stats reqeust handler 2009-06-30 20:46:41 -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 25d7c2ecd2 Spec: Fix typo in diagram
In the flow table matching picture, Ethernet type was compared to 0x8000
when 0x0800 was intended.
2009-06-29 22:42:40 -07:00
Brandon Heller 1e12e0771e Spec: Fix build error
Removed extra line
2009-06-29 22:31:08 -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 4f0da65910 Spec: Define behavior for conflicting flow mods
Define a CHECK_OVERLAP flag for flow mods which requires the switch to
check for conflicting entries with the same priority, i.e., those for
which at least one packet could match multiple entries.

This flags is intended to be used for debugging purposes; in the worst
case, it may require a linear check through the flow table.
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 f874420531 Spec: Start port enumeration at 1
A number of protocols such as SNMP and STP start counting ports at one. To
increase compatibility, this commit adds a requirement that OpenFlow
ingress port values start at one.
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 c249b48f83 Spec: Replace hardcoded constant for MISS_SEND_LEN 2009-06-29 11:36:33 -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 4b969c68f3 Spec: Clarify matching for disabled STP ports
Packets received on ports that are disabled by spanning tree must follow
the normal flow table processing path.
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 1592042b19 Spec: Minor rearrangement of flow add text 2009-06-29 11:36:32 -07:00
Brandon Heller 0c370a5ef9 Spec: Remove distinction between Type 0 and Type 1
People tend to get confused about "Type 0" and "Type 1" vs "Version 1.0" and
"Version 2.0".  To simplify, we'll drop the reference to types.
2009-06-29 11:36:32 -07:00
Mikio Hara 0e59606d43 Remove experimental bridge compat header file 2009-06-29 11:36:09 -07:00
tyabe c5ca36a509 Emergency flow cache: Add regression test for emergency flow cache 2009-06-29 11:31:14 -07:00
Mikio Hara 292ffb1f39 Barrier command: Add new protocol messages: barrier request and reply
When a switch receives a barrier message it must first complete all
commands sent before the barrier message before executing any commands
after it. When all commands before the Barrier message have completed,
it must send a barrier reply message back to the controller.
2009-06-29 11:21:40 -07:00