Bug 1271205

Summary: [Host QoS] - Host QoS is not working for vlan tagged networks
Product: [oVirt] vdsm Reporter: Michael Burman <mburman>
Component: CoreAssignee: Ido Barkan <ibarkan>
Status: CLOSED CURRENTRELEASE QA Contact: Michael Burman <mburman>
Severity: urgent Docs Contact:
Priority: high    
Version: ---CC: bugs, danken, gklein, ibarkan, myakove, ylavi
Target Milestone: ovirt-3.6.1Flags: rule-engine: ovirt-3.6.z+
rule-engine: blocker+
ylavi: Triaged+
ylavi: planning_ack+
rule-engine: devel_ack+
myakove: testing_ack+
Target Release: 4.17.11   
Hardware: x86_64   
OS: Linux   
Whiteboard: network
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-12-22 13:28:07 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Network RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1043226, 1043230    

Description Michael Burman 2015-10-13 11:35:48 UTC
Description of problem:
[Host QoS] - Host QoS is not working for vlan tagged networks

Vlan tagged networks with host QoS defined are not sending traffic according to the QoS configured on the network. The traffic is sent as 'Unlimited' QoS on vlan networks. QoS is not forced.


Version-Release number of selected component (if applicable):
3.6.0-0.18.el6

How reproducible:
100

Steps to Reproduce:
1. Create vlan tagged network with host QoS defined and attach to 2 servers.
2. Send traffic between the 2 servers via this network(iperf). Or between 2 VMs, while each VM running on different server. 
3. Verify that QoS is forced and traffic is sent according to the QoS configured on the network.

Actual results:
Traffic is sent according to 'Unlimited' QoS and not according the QoS that was configured on the network. QoS is not forced for vlan networks. 

Expected results:
Traffic should sent according to the QoS configured on the network and should be forced.

Additional info:
non-Vlan networks sending traffic according to the QoS configured and QoS is forced.

Comment 1 Michael Burman 2015-10-13 11:36:17 UTC
Tested on vdsm-4.17.8-1.el7ev.noarch

Comment 2 Ido Barkan 2015-10-13 11:46:24 UTC
Apparently, the tc filter that VDSM uses to classify 802.1q traffic is not working when the kernel offloads VLAN tagging to the underlying physical nic.
 This is because the VLAN field in the link layer header is only added by the hardware and is not present by the time the filter inspects it.
since the filter uses a straight forward matcher which only looks at the headers it fails to match and the packets aren't classified to the desired queuing discipline (qdisc).
Using a kernel packet meta data matcher should work regardless of VLAN tagging offloading is enabled.

Comment 3 Dan Kenigsberg 2015-10-13 15:25:43 UTC
It is a very sad finding regarding a core new feature, but it should not delay 3.6.0, as it is no regression.

Comment 4 Red Hat Bugzilla Rules Engine 2015-10-19 11:00:05 UTC
Target release should be placed once a package build is known to fix a issue. Since this bug is not modified, the target version has been reset. Please use target milestone to plan a fix for a oVirt release.

Comment 5 Yaniv Lavi 2015-10-29 12:41:50 UTC
In oVirt testing is done on single release by default. Therefore I'm removing the 4.0 flag. If you think this bug must be tested in 4.0 as well, please re-add the flag. Please note we might not have testing resources to handle the 4.0 clone.

Comment 6 Sandro Bonazzola 2015-11-24 16:43:11 UTC
Please set target release or I can't move the bug to ON_QA automatically.

Comment 7 Red Hat Bugzilla Rules Engine 2015-11-24 18:07:11 UTC
Bug tickets that are moved to testing must have target release set to make sure tester knows what to test. Please set the correct target release before moving to ON_QA.

Comment 8 Michael Burman 2015-11-26 13:00:57 UTC
Verified on -  3.6.1-0.2.el6 and vdsm-4.17.11-0.el7ev.noarch

Comment 9 Sandro Bonazzola 2015-12-16 12:22:16 UTC
Accordiing to target milestone and verification status this bug should be solved in oVirt 3.6.1. However, missing the target release field, this bug can't be moved to closed current release automatically.
Please check target_milestone and target_release and move to closed current release if included in oVirt <= 3.6.1.
Thanks.

Comment 10 Sandro Bonazzola 2015-12-22 13:28:07 UTC
oVirt 3.6.1 has been released and bz verified, moving to closed current release