diff options
author | Ian Stokes <ian.stokes@intel.com> | 2016-03-02 20:35:54 +0000 |
---|---|---|
committer | Daniele Di Proietto <diproiettod@vmware.com> | 2016-03-02 17:46:27 -0800 |
commit | 0bf765f753fd6cfde4918be49474fcd20659ceaa (patch) | |
tree | 75441bac1a48afbdcb418b565b82b93566e8a72e /INSTALL.DPDK.md | |
parent | d0a46cb4608e632f5028034762f0adde2ce947a0 (diff) | |
download | openvswitch-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.md | 20 |
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: ------------------- |