'burst' does not take effect for neutron egress qos bindlimit by ovs

Bug #1776160 reported by sunzuohua
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Incomplete
Undecided
Rodolfo Alonso

Bug Description

1. openstack version: newton(same with master)
2. neutron --version 11.0.1
3. ovs-vsctl (Open vSwitch) 2.7.2
4. iperf3

The ovs config is as follow:
[root@cdpm04 common]# ovs-vsctl list qos
_uuid : b90a11e9-ea70-4908-8cb2-bab21e117312
external_ids : {id="qvocd3421e0-43"}
other_config : {max-rate="3000000"}
queues : {0=22ba7a96-328c-4876-b7ac-b35d77ce3a09}
type : linux-htb
[root@cdpm04 common]# ovs-vsctl list queue
_uuid : 22ba7a96-328c-4876-b7ac-b35d77ce3a09
dscp : []
external_ids : {id="qvocd3421e0-43", queue_type="0"}
other_config : {burst="300000", max-rate="3000000"}

The burst does not take effect.Even I change the value of burst, the result does not change.
The result is as follows:

[ ID] Interval Transfer Bandwidth Retr
[ 5] 0.00-11.27 sec 4.50 MBytes 3.35 Mbits/sec 0 sender
[ 5] 0.00-11.27 sec 3.87 MBytes 2.88 Mbits/sec receiver

I think this problem is related to [1][2].
Maybe we do not have to change like that.After I revert the code, the result is accurate and the burst take effect.

[1]https://bugs.launchpad.net/neutron/+bug/1730605
[2]https://review.openstack.org/519573

Tags: qos
sunzuohua (zuohuasun)
tags: added: qos
sunzuohua (zuohuasun)
description: updated
Revision history for this message
Slawek Kaplonski (slaweq) wrote :

I was checking it on my devstack and I have couple of questions to You about it.

1. Is Your problem with ingress or egress traffic (from instance PoV)? In bug title You said egress but qos and queue is set in ovs for ingress bw limit only.

2. For tcp traffic burst should be set for about 80% of bandwidth rate. So in Your example it should be about 2400000 instead of 300000.

3. Result which You paste here looks quite good for me. What results You are expecting exactly?

4. Can You give me more details how to reproduce this issue exactly? So output of how exactly Your bw limit rule was created in Neutron, between what nodes You are doing test (two instances or instance and some outside server) and also how exactly You run iperf3 client and server on those test nodes.

Changed in neutron:
status: New → Incomplete
Revision history for this message
Slawek Kaplonski (slaweq) wrote :

For now I set it as "incomplete" but I will change it when You will provide informations which I asked in comment above.

Revision history for this message
sunzuohua (zuohuasun) wrote :

@Slawek Kaplonski,
1.Sorry, I take a mistake in bug title. My problem is with ingress.
2.Results I expect are as follows:
Change value of max-burst-kbp and not change value of max-kbps and use tc(tc show class dev qvocd3421e0-43) to check the config, the burst value in result of tc command should be changed and the Bandwidth test result should be diffrent.

Changed in neutron:
status: Incomplete → New
Revision history for this message
Rodolfo Alonso (rodolfo-alonso-hernandez) wrote :

Hi @sunzuohua:

I reviewed the documentation you sent. According to your description, your configuration is:
- QoS -> max-rate: 3000000 (3 Mbps)
- Queue -> max-rate: 3000000 (3 Mbps), burst: 300000 (300 kbits)

And the ipferf3 results are around 3 Mbits (more or less):
[ ID] Interval Transfer Bandwidth Retr
[ 5] 0.00-11.27 sec 4.50 MBytes 3.35 Mbits/sec 0 sender
[ 5] 0.00-11.27 sec 3.87 MBytes 2.88 Mbits/sec receiver

What is the problem with those results? The incoming traffic is limited to 3 Mbps, as defined in the QoS configuration.

Please, can you provide what results are you expecting?

Changed in neutron:
status: New → Incomplete
assignee: nobody → Rodolfo Alonso (rodolfo-alonso-hernandez)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.