diff options
author | William Tu <u9012063@gmail.com> | 2021-02-18 07:24:49 -0800 |
---|---|---|
committer | Ilya Maximets <i.maximets@ovn.org> | 2021-03-01 19:37:57 +0100 |
commit | f013e6f2d608719f190c7dadb6849bed07a9e6eb (patch) | |
tree | 173bdb564c3197581b9b934947c621b08e655863 | |
parent | 39b937f064347884614002c9bdac79382a144fca (diff) | |
download | openvswitch-f013e6f2d608719f190c7dadb6849bed07a9e6eb.tar.gz |
Documentation: Fix DPDK qos example.
Fix the example use case based on the decription.
EIR and CIR are measured in bytes/sec and considered 64-byte
IP packets size withtout 14-byte Ethernet header.
So fix the 1000pps example by: (64 - 14) * 1000 = 50,000
If the frame includes 4-byte FCS header, then it's
(64 - 14 - 4) * 1000 = 46,000
Fixes: e61bdffc2a98 ("netdev-dpdk: Add new DPDK RFC 4115 egress policer")
Signed-off-by: William Tu <u9012063@gmail.com>
Acked-by: Eelco Chaudron <echaudro@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
-rw-r--r-- | Documentation/topics/dpdk/qos.rst | 14 | ||||
-rw-r--r-- | vswitchd/vswitch.xml | 6 |
2 files changed, 12 insertions, 8 deletions
diff --git a/Documentation/topics/dpdk/qos.rst b/Documentation/topics/dpdk/qos.rst index 103495415..a98ec672f 100644 --- a/Documentation/topics/dpdk/qos.rst +++ b/Documentation/topics/dpdk/qos.rst @@ -69,22 +69,24 @@ to prioritize certain traffic over others at a port level. For example, the following configuration will limit the traffic rate at a port level to a maximum of 2000 packets a second (64 bytes IPv4 packets). -100pps as CIR (Committed Information Rate) and 1000pps as EIR (Excess -Information Rate). High priority traffic is routed to queue 10, which marks +1000pps as CIR (Committed Information Rate) and 1000pps as EIR (Excess +Information Rate). CIR and EIR are measured in bytes without Ethernet header. +As a result, 1000pps means (64-byte - 14-byte) * 1000 = 50,000 in the +configuration below. High priority traffic is routed to queue 10, which marks all traffic as CIR, i.e. Green. All low priority traffic, queue 20, is marked as EIR, i.e. Yellow:: $ ovs-vsctl --timeout=5 set port dpdk1 qos=@myqos -- \ --id=@myqos create qos type=trtcm-policer \ - other-config:cir=52000 other-config:cbs=2048 \ - other-config:eir=52000 other-config:ebs=2048 \ + other-config:cir=50000 other-config:cbs=2048 \ + other-config:eir=50000 other-config:ebs=2048 \ queues:10=@dpdk1Q10 queues:20=@dpdk1Q20 -- \ --id=@dpdk1Q10 create queue \ - other-config:cir=41600000 other-config:cbs=2048 \ + other-config:cir=100000 other-config:cbs=2048 \ other-config:eir=0 other-config:ebs=0 -- \ --id=@dpdk1Q20 create queue \ other-config:cir=0 other-config:cbs=0 \ - other-config:eir=41600000 other-config:ebs=2048 \ + other-config:eir=50000 other-config:ebs=2048 This configuration accomplishes that the high priority traffic has a guaranteed bandwidth egressing the ports at CIR (1000pps), but it can also diff --git a/vswitchd/vswitch.xml b/vswitchd/vswitch.xml index a2ad84ede..4597a215d 100644 --- a/vswitchd/vswitch.xml +++ b/vswitchd/vswitch.xml @@ -4660,7 +4660,8 @@ ovs-vsctl add-port br0 p0 -- set Interface p0 type=patch options:peer=p1 \ packets per second the CIR would be set to to to 46000000. This value can be broken into '1,000,000 x 46'. Where 1,000,000 is the policing rate for the number of packets per second and 46 represents the size - of the packet data for a 64 byte ip packet. + of the packet data for a 64 bytes IP packet without 14 bytes Ethernet + and 4 bytes FCS header. </column> <column name="other_config" key="cbs" type='{"type": "integer"}'> The Committed Burst Size (CBS) is measured in bytes and represents a @@ -4681,7 +4682,8 @@ ovs-vsctl add-port br0 p0 -- set Interface p0 type=patch options:peer=p1 \ packets per second the EIR would be set to to to 46000000. This value can be broken into '1,000,000 x 46'. Where 1,000,000 is the policing rate for the number of packets per second and 46 represents the size - of the packet data for a 64 byte ip packet. + of the packet data for a 64 bytes IP packet without 14 bytes Ethernet + and 4 bytes FCS header. </column> <column name="other_config" key="ebs" type='{"type": "integer"}'> The Excess Burst Size (EBS) is measured in bytes and represents a |