summaryrefslogtreecommitdiff
path: root/INSTALL.DPDK.md
diff options
context:
space:
mode:
authorIan Stokes <ian.stokes@intel.com>2016-03-02 20:35:54 +0000
committerDaniele Di Proietto <diproiettod@vmware.com>2016-03-02 17:46:27 -0800
commit0bf765f753fd6cfde4918be49474fcd20659ceaa (patch)
tree75441bac1a48afbdcb418b565b82b93566e8a72e /INSTALL.DPDK.md
parentd0a46cb4608e632f5028034762f0adde2ce947a0 (diff)
downloadopenvswitch-0bf765f753fd6cfde4918be49474fcd20659ceaa.tar.gz
netdev_dpdk.c: Add QoS functionality.
This patch provides the modifications required in netdev-dpdk.c and vswitch.xml to allow for a DPDK user space QoS algorithm. This patch adds a QoS configuration structure for netdev-dpdk and expected QoS operations 'dpdk_qos_ops'. Various helper functions are also supplied. Also included are the modifications required for vswitch.xml to allow a new QoS implementation for netdev-dpdk devices. This includes a new QoS type `egress-policer` as well as its expected QoS table entries. The QoS functionality implemented for DPDK devices is `egress-policer`. This can be used to drop egress packets at a configurable rate. The INSTALL.DPDK.md guide has also been modified to provide an example configuration of `egress-policer` QoS. Signed-off-by: Ian Stokes <ian.stokes@intel.com> Acked-by: Flavio Leitner <fbl@sysclose.org> Acked-by: Daniele Di Proietto <diproiettod@vmware.com>
Diffstat (limited to 'INSTALL.DPDK.md')
-rw-r--r--INSTALL.DPDK.md20
1 files changed, 20 insertions, 0 deletions
diff --git a/INSTALL.DPDK.md b/INSTALL.DPDK.md
index dca79bd35..b33f75e3c 100644
--- a/INSTALL.DPDK.md
+++ b/INSTALL.DPDK.md
@@ -207,6 +207,26 @@ Using the DPDK with ovs-vswitchd:
./ovs-ofctl add-flow br0 in_port=2,action=output:1
```
+8. QoS usage example
+
+ Assuming you have a vhost-user port transmitting traffic consisting of
+ packets of size 64 bytes, the following command would limit the egress
+ transmission rate of the port to ~1,000,000 packets per second:
+
+ `ovs-vsctl set port vhost-user0 qos=@newqos -- --id=@newqos create qos
+ type=egress-policer other-config:cir=46000000 other-config:cbs=2048`
+
+ To examine the QoS configuration of the port:
+
+ `ovs-appctl -t ovs-vswitchd qos/show vhost-user0`
+
+ To clear the QoS configuration from the port and ovsdb use the following:
+
+ `ovs-vsctl destroy QoS vhost-user0 -- clear Port vhost-user0 qos`
+
+ For more details regarding egress-policer parameters please refer to the
+ vswitch.xml.
+
Performance Tuning:
-------------------