]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Merge "SR-IOV: Add Agent QoS driver to support bandwidth limit" into feature/qos
authorJenkins <jenkins@review.openstack.org>
Wed, 12 Aug 2015 19:12:11 +0000 (19:12 +0000)
committerGerrit Code Review <review@openstack.org>
Wed, 12 Aug 2015 19:12:11 +0000 (19:12 +0000)
1  2 
doc/source/devref/quality_of_service.rst
neutron/plugins/ml2/drivers/mech_sriov/agent/eswitch_manager.py
neutron/tests/unit/plugins/ml2/drivers/mech_sriov/agent/test_eswitch_manager.py

index 3a4d6f3c943d033ecd8cd8e5ac77009a233c7566,0418aa2a35d66d5d31484965b7dd6e125888fff4..bd4a8c716dcde1526d6623734feea35870f3ab77
@@@ -262,18 -267,39 +267,36 @@@ Open vSwitc
  
  Open vSwitch implementation relies on the new ovs_lib OVSBridge functions:
  
 -* create_qos_bw_limit_for_port
 -* get_qos_bw_limit_for_port
 -* del_qos_bw_limit_for_port
 +* get_egress_bw_limit_for_port
 +* create_egress_bw_limit_for_port
 +* delete_egress_bw_limit_for_port
  
 -An egress bandwidth limit is effectively configured on the port by creating a
 -single QoS queue with min-rate=rule.max_kbps, max-rate=rule.max_kbps and
 -burst=rule.max_burst_kbps. Then a linux-htb QoS policy is defined on the port,
 -attached to the queue.
 -
 -HTB queues are supported at least in all 2.x versions of Open vSwitch.
 -
 -More details about HTB in `the blog post
 -<https://virtualandy.wordpress.com/2013/04/29/deep-dive-htb-rate-limiting-qos-on-with-open-vswitch-and-xenserver/>`_.
 +An egress bandwidth limit is effectively configured on the port by setting
 +the port Interface parameters ingress_policing_rate and
 +ingress_policing_burst.
  
 +That approach is less flexible than linux-htb, Queues and OvS QoS profiles,
 +which we may explore in the future, but which will need to be used in
 +combination with openflow rules.
  
+ SR-IOV
+ ~~~~~~
+ SR-IOV bandwidth limit implementation relies on the new pci_lib function:
+ * set_vf_max_rate
+ As the name of the function suggests, the limit is applied on a Virtual
+ Function (VF).
+ ip link interface has the following limitation for bandwidth limit: it uses
+ Mbps as units of bandwidth measurement, not kbps, and does not support float
+ numbers. So in case the limit is set to something less than 1000 kbps, it's set
+ to 1 Mbps only. If the limit is set to something that does not divide to 1000
+ kbps chunks, then the effective limit is rounded to the nearest integer Mbps
+ value.
  Configuration
  =============