openvswitch / ovs-issues

Issue tracker repo for Open vSwitch
10 stars 3 forks source link

OVS erroneously stripps VLAN tags with ID=0 and priority=0 #221

Open atockhorn opened 3 years ago

atockhorn commented 3 years ago

The OpenvSwitch strips VLAN tags in situations where the ID and the priority is 0. Is this intended or faulty behavior? In our environment it results in discarded packets when they are 64 byte long before and 60 bytes after being stripped, since they are too short regarding Ethernet rules (our physical NIC drops these short frames). We discover this stripping using veth virtual ports as well as physical ports attached to OVS.

IEEE 802.1Q names frames tagged with VLAN ID equal 0 as priority tagged frames. There is no restriction stated priority equal 0 was not allowed.

Attached you can see 4 frames captured twice. Once ingressing OVS (at port s1-eth1) and second time egressing (at port s1-eth2). The 4 frames cover all combinations of VLAN ID and priority being 0 or unequal 0. As described and observable in the pcap only TAGs with ID and priority equal to 0 are stripped. ovs_vlan_stipping_issue.zip

our setup

OVS version 2.15.90

mn --topo=single,3 --mac --controller none ovs-ofctl add-flow s1 actions=normal

VLAN tagged frames created with custom scapy script

Thanks in advance for any hints regarding relevant configuration or any other clarification.