Okay to clarify and for the archives,

original VLAN_ID field = 0x1001

oxm_mask = 0x1002
oxm_value = 0x1002

result = 0x1003

where in 0x*1*00 the *1* is the OFPVID_PRESENT bit

Thank you for your help!


On Wed, Jul 13, 2016 at 4:02 PM, Ben Pfaff <b...@ovn.org> wrote:

> On Wed, Jul 13, 2016 at 09:16:20AM -0500, chris annonch wrote:
> > Hello all,
> >
> > On page 99 the documentation states that if oxm_hasmask is set to 1 that
> > when setting a field with oxm_value, oxm_mask is used.
> >
> > The documentation further states that for each 1 bit in oxm_mask, the
> > corresponding bit is written in, and for each 0 in oxm_mask the header
> > field is preserved.
> >
> > Does this mean that the if if the vlan field is 01 0000 0000 0000
> >
> > oxm_mask = 00 0000 0000 0001
> >
> > oxm_value = 00 0000 0000 0001
> >
> > that the resulting vlan after processing should be: 01 0000 0000 0001 ?
>
> That would be true for any other field that is modifiable, but the VLAN
> field is special, see this sentence on the same page:
>
>     In an OXM_OF_VLAN_VID set-field action, the OFPVID_PRESENT bit must
>     be a 1-bit in oxm_value and in oxm_mask.
>
> Thus, a conformant switch will reject the set_field that you describe.
>
> > Or does the original vlan get clobbered?
>
> No.
>
> > If anyone has experience with this I would really appreciate your input.
>
>
_______________________________________________
openflow-discuss mailing list
openflow-discuss@lists.stanford.edu
https://mailman.stanford.edu/mailman/listinfo/openflow-discuss

Reply via email to