diff options
author | Pravin B Shelar <pshelar@ovn.org> | 2016-12-28 11:41:25 -0800 |
---|---|---|
committer | Pravin B Shelar <pshelar@ovn.org> | 2017-01-28 12:16:34 -0800 |
commit | ed52ca575fcc90e322671750a91ae7d4b5827061 (patch) | |
tree | b1d1b9b8e102e05fa44e7c9ff74e389208411ab5 /tests | |
parent | f36786ce0db4d04273b0c340b63c4e0a8dab2e30 (diff) | |
download | openvswitch-ed52ca575fcc90e322671750a91ae7d4b5827061.tar.gz |
ovs-router: introduce pkt-mark.
OVS router is basically partial copy of linux kernel FIB.
kernel routing table uses skb-mark along with usual routing
parameters. Following patch brings in support for skb-mark
to ovs-router so that we can lookup route for given skb-mark.
Signed-off-by: Pravin B Shelar <pshelar@ovn.org>
Acked-by: Jarno Rajahalme <jarno@ovn.org>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/ovs-router.at | 42 | ||||
-rw-r--r-- | tests/tunnel-push-pop.at | 3 |
2 files changed, 45 insertions, 0 deletions
diff --git a/tests/ovs-router.at b/tests/ovs-router.at index 4e0abdfd2..843776257 100644 --- a/tests/ovs-router.at +++ b/tests/ovs-router.at @@ -19,10 +19,32 @@ AT_CHECK([ovs-appctl netdev-dummy/ip4addr br0 192.0.2.1/24], [0], [OK ]) AT_CHECK([ovs-appctl ovs/route/add 198.51.100.0/24 br0 192.0.2.254], [0], [OK ]) +AT_CHECK([ovs-appctl ovs/route/add 192.0.2.1/24 br0 pkt_mark=123], [0], [OK +]) + +AT_CHECK([ovs-appctl ovs/route/add 198.51.100.200/24 br0 192.0.2.250 pkt_mark=1234], [0], [OK +]) + +AT_CHECK([ovs-appctl ovs/route/show | grep User | sort], [0], [User: 192.0.2.0/24 MARK 123 dev br0 SRC 192.0.2.1 +User: 198.51.100.0/24 MARK 1234 dev br0 GW 192.0.2.250 SRC 192.0.2.1 +User: 198.51.100.0/24 dev br0 GW 192.0.2.254 SRC 192.0.2.1 +]) + AT_CHECK([ovs-appctl ovs/route/lookup 198.51.100.1], [0], [src 192.0.2.1 gateway 192.0.2.254 dev br0 ]) + +AT_CHECK([ovs-appctl ovs/route/lookup 198.51.100.1 pkt_mark=1234], [0], [src 192.0.2.1 +gateway 192.0.2.250 +dev br0 +]) +AT_CHECK([ovs-appctl ovs/route/del 198.51.100.0/24 pkt_mark=1234], [0], [OK +]) +AT_CHECK([ovs-appctl ovs/route/show | grep User | sort], [0], [User: 192.0.2.0/24 MARK 123 dev br0 SRC 192.0.2.1 +User: 198.51.100.0/24 dev br0 GW 192.0.2.254 SRC 192.0.2.1 +]) + OVS_VSWITCHD_STOP AT_CLEANUP @@ -33,9 +55,29 @@ AT_CHECK([ovs-appctl netdev-dummy/ip6addr br0 2001:db8:cafe::1/64], [0], [OK ]) AT_CHECK([ovs-appctl ovs/route/add 2001:db8:babe::/64 br0 2001:db8:cafe::2], [0], [OK ]) +AT_CHECK([ovs-appctl ovs/route/add 2001:db8:babe::/64 br0 2001:db8:cafe::3 pkt_mark=321], [0], [OK +]) + +AT_CHECK([ovs-appctl ovs/route/show | grep User | sort], [0], [dnl +User: 2001:db8:babe::/64 MARK 321 dev br0 GW 2001:db8:cafe::3 SRC 2001:db8:cafe::1 +User: 2001:db8:babe::/64 dev br0 GW 2001:db8:cafe::2 SRC 2001:db8:cafe::1 +]) + AT_CHECK([ovs-appctl ovs/route/lookup 2001:db8:babe::1eaf], [0], [src 2001:db8:cafe::1 gateway 2001:db8:cafe::2 dev br0 ]) + +AT_CHECK([ovs-appctl ovs/route/lookup 2001:db8:babe::1eaf pkt_mark=321], [0], [src 2001:db8:cafe::1 +gateway 2001:db8:cafe::3 +dev br0 +]) + +AT_CHECK([ovs-appctl ovs/route/del 2001:db8:babe::/64 pkt_mark=321], [0], [OK +]) +AT_CHECK([ovs-appctl ovs/route/show | grep User | sort], [0], [dnl +User: 2001:db8:babe::/64 dev br0 GW 2001:db8:cafe::2 SRC 2001:db8:cafe::1 +]) + OVS_VSWITCHD_STOP AT_CLEANUP diff --git a/tests/tunnel-push-pop.at b/tests/tunnel-push-pop.at index 4aaa6697f..4eeac4154 100644 --- a/tests/tunnel-push-pop.at +++ b/tests/tunnel-push-pop.at @@ -40,6 +40,9 @@ AT_CHECK([ovs-appctl netdev-dummy/ip6addr br0 2001:cafe::88/24], [0], [OK AT_CHECK([ovs-appctl ovs/route/add 1.1.2.92/24 br0], [0], [OK ]) +AT_CHECK([ovs-appctl ovs/route/add 1.1.2.92/24 br0 pkt_mark=1234], [0], [OK +]) + AT_CHECK([ovs-ofctl add-flow br0 action=normal]) dnl Check ARP request |