[QoS] QoS policy doesn't restrict traffic on SR-IOV port
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Fuel for OpenStack |
Fix Committed
|
High
|
Sergey Kolekonov | ||
Mitaka |
Fix Released
|
High
|
Sergey Kolekonov | ||
Newton |
Fix Committed
|
High
|
Sergey Kolekonov |
Bug Description
Detailed bug description:
After adding qos policy for vm's SR-IOV port, traffic are not restricted
Steps to reproduce:
1) neutron net-create --provider:
2) neutron subnet-create net01 192.168.112.0/24 --name subnet01
3) neutron router-
4) neutron port-create net01 --binding:vnic-type direct --device_owner nova-compute --name sriov_1
5) neutron port-create net01 --binding:vnic-type direct --device_owner nova-compute --name sriov_2
5) nova boot --flavor m1.small --image tk --nic port-id='port_id_1' qossriov_1 --key-name 'key_name'
6) nova boot --flavor m1.small --image tk --nic port-id='port_id_2' qossriov_2 --key-name 'key_name'
7) neutron qos-policy-create sriov
8) neutron qos-bandwidth-
9) neutron port-update 'port_id_1' --qos-policy sriov
10) on VM qossriov_2 start iperf3 as a server:
iperf3 -s
11) on VM qossriov_1 start iperf3 as a client:
iperf3 -c 'ip_qossriov_2'
12) Look at the traffic on VM qossriov_1
Expected result:
Traffic should be restricted by 8Mbps
Actual result:
there are no restriction/
ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-10.00 sec 16.3 GBytes 14.0 Gbits/sec 0 sender
[ 4] 0.00-10.00 sec 16.3 GBytes 14.0 Gbits/sec receiver
Description of the environment:
fuel_build_id | 113 |
fuel_build_number | 113 |
fuel_release | 9.0 |
fuel_openstack_
Changed in mos: | |
importance: | Undecided → High |
assignee: | nobody → MOS Neutron (mos-neutron) |
milestone: | none → 9.0 |
Changed in mos: | |
status: | New → Confirmed |
Changed in mos: | |
assignee: | MOS Neutron (mos-neutron) → Elena Ezhova (eezhova) |
Changed in mos: | |
assignee: | Elena Ezhova (eezhova) → Sergii (sgudz) |
affects: | mos → fuel |
Changed in fuel: | |
milestone: | 9.0 → none |
status: | Confirmed → In Progress |
Changed in fuel: | |
milestone: | none → 9.0 |
This bug cannot be reproduced on stable/mitaka deployed by DevStack. Rate limiters are correctly applied to VFs:
elena@cz7833: ~/devstack$ neutron qos-bandwidth- limit-rule- show 3d42f456- f21b-4a0a- 9c2b-b1666ad603 ca bw-limiter ------- ---+--- ------- ------- ------- ------- ------- + ------- ---+--- ------- ------- ------- ------- ------- + f21b-4a0a- 9c2b-b1666ad603 ca | ------- ---+--- ------- ------- ------- ------- ------- +
+------
| Field | Value |
+------
| id | 3d42f456-
| max_burst_kbps | 0 |
| max_kbps | 170000 |
+------
elena@cz7833: ~/devstack$ ip l | less MULTICAST, UP,LOWER_ UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
....
5: p514p2: <BROADCAST,
link/ether 0c:c4:7a:bd:42:ad brd ff:ff:ff:ff:ff:ff
vf 0 MAC 00:00:00:00:00:00, spoof checking on, link-state auto
...
vf 6 MAC fa:16:3e:95:f6:ac, vlan 2010, tx rate 170 (Mbps), spoof checking on, link-state enable
...
Meanwhile, it has to be mentioned that max_rate wouldn't get applied to a VF if it's lower than the minimum rate supported by the NIC. For example, the XL710 static rate limiters can be configured to the minimal rate limit of 50Mb/s with a granularity of
50Mb/s.
This *might* be a configuration issue, addition repro is needed. Setting this to Incomplete for now.