[ovs-dev] [PATCH] ofp-actions: Don't encode variable length fields using NXAST_REG_LOAD.
jesse at nicira.com
Fri Aug 28 18:26:42 UTC 2015
On Fri, Aug 28, 2015 at 11:15 AM, Ben Pfaff <blp at nicira.com> wrote:
> On Thu, Aug 27, 2015 at 07:06:51PM -0700, Jesse Gross wrote:
>> Currently, when using an OpenFlow 1.0 connection to encode a
>> tunnel metadata set field action, a series of NXAST_REG_LOADs
>> are emitted. The result is something like this:
>> This happens because tunnel metadata is seen as a maximum size field
>> and so many loads need to be emitted to cover the entire thing. Besides
>> being ugly (this shows up when using ovs-ofctl in the default
>> configuration), it exposes the internal size of the field. While this
>> shouldn't be an issue since specific protocol fields (such as Geneve
>> options) have fixed max sizes even if the OVS implementation is extended,
>> it's still not a great idea.
>> If we instead use NXAST_REG_LOAD2 in cases where there isn't a suitable
>> OpenFlow alternative, both problems are avoided:
>> This prefers NXAST_REG_LOAD2 for variable length fields since they would
>> all generally have the same problems. In addition, since the concept of
>> this type of field is fairly new, there are no backwards compatibility
>> Signed-off-by: Jesse Gross <jesse at nicira.com>
> Acked-by: Ben Pfaff <blp at nicira.com>
Thanks, applied to master.
More information about the dev