[ovs-dev] Length of OXM_OF_IPV6_FLABEL and OXM_OF_MPLS_LABEL
Ben Pfaff
blp at nicira.com
Mon Jun 18 16:13:04 UTC 2012
On Mon, Jun 18, 2012 at 12:58:24PM +0900, Simon Horman wrote:
> I am a little unsure what the correct length of the payload of
> OXM_OF_IPV6_FLABEL and OXM_OF_MPLS_LABEL should be. The Open Flow 1.2
> specification gives them both a length of 20 bits. Should this be
> interpreted as 3 or 4 bytes?
openflow.h from OF1.2 says:
/* The IPv6 Flow Label
*
* Prereqs:
* OXM_OF_ETH_TYPE must match 0x86dd exactly
*
* Format: 32-bit integer with 12 most-significant bits forced to 0.
* Only the lower 20 bits have meaning.
*
* Masking: Maskable. */
#define OXM_OF_IPV6_FLABEL OXM_HEADER (0x8000, OFPXMT_OFB_IPV6_FLABEL, 4)
/* The LABEL in the first MPLS shim header.
*
* Prereqs:
* OXM_OF_ETH_TYPE must match 0x8847 or 0x8848 exactly.
*
* Format: 32-bit integer in network byte order with 12 most-significant
* bits forced to 0. Only the lower 20 bits have meaning.
*
* Masking: Not maskable. */
#define OXM_OF_MPLS_LABEL OXM_HEADER (0x8000, OFPXMT_OFB_MPLS_LABEL, 4)
That is, each one is 4 bytes.
It doesn't seem to be easy to obtain openflow.h for OF1.2, but it's
available in the ONF Git repository, if you have access to it.
More information about the dev
mailing list