diff options
author | Guoshuai Li <ligs@dtdream.com> | 2018-01-26 16:34:39 +0800 |
---|---|---|
committer | Ben Pfaff <blp@ovn.org> | 2018-02-01 13:39:16 -0800 |
commit | 5ee33cbdceb042d18416900061329f25e04f98a4 (patch) | |
tree | 8c6e71d52065cdad91e51378d0fb001eea4d256f /tests | |
parent | d1ba7d54c2b917694bbe255ad890b0140ec9c9b9 (diff) | |
download | openvswitch-5ee33cbdceb042d18416900061329f25e04f98a4.tar.gz |
ovn-nbctl: Add QoS commands.
This patch provides the command line to add/delete/list QoS rule on the
logical switch.
Signed-off-by: Guoshuai Li <ligs@dtdream.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/ovn-nbctl.at | 74 | ||||
-rw-r--r-- | tests/ovn.at | 6 |
2 files changed, 79 insertions, 1 deletions
diff --git a/tests/ovn-nbctl.at b/tests/ovn-nbctl.at index 5ac4a6d9b..4921417f3 100644 --- a/tests/ovn-nbctl.at +++ b/tests/ovn-nbctl.at @@ -230,6 +230,80 @@ OVN_NBCTL_TEST_STOP AT_CLEANUP dnl --------------------------------------------------------------------- + +AT_SETUP([ovn-nbctl - QoS]) +OVN_NBCTL_TEST_START + +AT_CHECK([ovn-nbctl ls-add ls0]) +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 tcp dscp=63]) +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 500 udp rate=100 burst=1000]) +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 400 tcp dscp=0 rate=300 burst=3000]) +AT_CHECK([ovn-nbctl qos-add ls0 to-lport 300 tcp dscp=48]) +AT_CHECK([ovn-nbctl qos-add ls0 to-lport 200 ip rate=101]) +AT_CHECK([ovn-nbctl qos-add ls0 to-lport 100 ip4 dscp=13 rate=301 burst=30000]) + +dnl Add duplicated qos +AT_CHECK([ovn-nbctl qos-add ls0 to-lport 100 ip4 dscp=11 rate=302 burst=30002], [1], [], [stderr]) +AT_CHECK([grep 'already existed' stderr], [0], [ignore]) +AT_CHECK([ovn-nbctl --may-exist qos-add ls0 to-lport 100 ip4 dscp=11 rate=302 burst=30002]) + +AT_CHECK([ovn-nbctl qos-list ls0], [0], [dnl +from-lport 600 (tcp) dscp=63 +from-lport 500 (udp) rate=100 burst=1000 +from-lport 400 (tcp) rate=300 burst=3000 dscp=0 + to-lport 300 (tcp) dscp=48 + to-lport 200 (ip) rate=101 + to-lport 100 (ip4) rate=301 burst=30000 dscp=13 +]) + +dnl Delete in one direction. +AT_CHECK([ovn-nbctl qos-del ls0 to-lport]) +AT_CHECK([ovn-nbctl qos-list ls0], [0], [dnl +from-lport 600 (tcp) dscp=63 +from-lport 500 (udp) rate=100 burst=1000 +from-lport 400 (tcp) rate=300 burst=3000 dscp=0 +]) + +dnl Delete all qos_rules. +AT_CHECK([ovn-nbctl qos-del ls0]) +AT_CHECK([ovn-nbctl qos-list ls0], [0], [dnl +]) + +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip rate=1000101]) +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 400 tcp dscp=44]) +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 200 ip burst=1000102 rate=301 dscp=19]) + +dnl Delete a single flow. +AT_CHECK([ovn-nbctl qos-del ls0 from-lport 400 tcp]) +AT_CHECK([ovn-nbctl qos-list ls0], [0], [dnl +from-lport 600 (ip) rate=1000101 +from-lport 200 (ip) rate=301 burst=1000102 dscp=19 +]) + +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip rate=100010111111], [1], [], +[ovn-nbctl: 100010111111: rate must in range 1...4294967295. +]) + +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip burst=100010111112 rate=100010], [1], [], +[ovn-nbctl: 100010111112: burst must in range 1...4294967295. +]) + +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip dscp=-1], [1], [], +[ovn-nbctl: -1: dscp must in range 0...63. +]) + +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip dscpa=-1], [1], [], +[ovn-nbctl: dscpa=-1: must be start of "dscp=", "rate=", "burst=". +]) + +AT_CHECK([ovn-nbctl qos-add ls0 from-lport 600 ip burst=123], [1], [], +[ovn-nbctl: One of the rate or dscp must be configured. +]) + +OVN_NBCTL_TEST_STOP +AT_CLEANUP + +dnl --------------------------------------------------------------------- AT_SETUP([ovn-nbctl - NATs]) OVN_NBCTL_TEST_START AT_CHECK([ovn-nbctl lr-add lr0]) diff --git a/tests/ovn.at b/tests/ovn.at index d02915e82..734dc6c1d 100644 --- a/tests/ovn.at +++ b/tests/ovn.at @@ -6033,6 +6033,8 @@ check_tos 0 # Mark DSCP with a valid value qos_id=$(ovn-nbctl --wait=hv -- --id=@lp1-qos create QoS priority=100 action=dscp=48 match="inport\=\=\"lp1\"" direction="from-lport" -- set Logical_Switch lsw0 qos_rules=@lp1-qos) +AT_CHECK([as hv ovn-nbctl qos-list lsw0 | wc -l], [0], [1 +]) check_tos 48 # check at hv without qos meter @@ -6065,7 +6067,9 @@ ovn-nbctl --wait=hv set QoS $qos_id match="outport\=\=\"lp2\"" direction="to-lpo check_tos 63 # Disable DSCP marking -ovn-nbctl --wait=hv clear Logical_Switch lsw0 qos_rules +ovn-nbctl --wait=hv qos-del lsw0 +AT_CHECK([as hv ovn-nbctl qos-list lsw0 | wc -l], [0], [0 +]) check_tos 0 # check at hv without qos meter |