[ovs-discuss] Cannot match correct ethertype after POP vlan and GOTO table

Ben Pfaff blp at ovn.org
Thu Jul 13 18:17:01 UTC 2017

On Tue, Jul 04, 2017 at 03:27:50PM +0800, Dickens Yeh wrote:
> Hi,
> I have an question, and I haven't found any OpenFlow Spec to defined it ,
> please give me a help.
> I am trying to work with 3 vlan tags, but it cannot match correct ethertype
> after pop 1 vlan tag.
> OVS Bridge already set with vlan-limit = 0, and it can watch over 2 vlan
> and match the correct ethertype like ARP.
> My question is:  the packet have 3 vlan tags, pop 1 vlan tag and goto-table
> 1. In table 1, will it match with the new packet (modified) or the original
> packet like in table 0?

The OVS documentation says:

       other_config  :  vlan-limit: optional string, containing an integer, at
       least 0
              Limits the number of VLAN headers that can  be  matched  to  the
              specified  number.  Further VLAN headers will be treated as pay‐
              load, e.g. a packet with more 802.1q headers will match Ethernet
              type 0x8100.

              Value  0  means  unlimited.  The actual number of supported VLAN
              headers is the smallest of vlan-limit, the number of VLANs  sup‐
              ported  by  Open vSwitch userspace (currently 2), and the number
              supported by the datapath.

              If this value is absent, the default is currently 1. This  main‐
              tains backward compatibility with controllers that were designed
              for use with Open vSwitch versions earlier than 2.8, which  only
              supported one VLAN.

It's not clear to me whether you're describing a bug.  Does OVS behavior
differ from what is documented abovve?

More information about the discuss mailing list