commit d4176e168ef74d4b436ae7b628b33f58081ff7a5
Author: Jiri Prochazka <jprochaz(a)redhat.com>
Date: Tue Jan 20 10:58:55 2015 +0100
Added IPv6 tests for all the tests in phase 1 and phase 2
Prefix 2002::/112 is used for testing, link-local did not work with netperf.
Known issues on VMs:
- Ping across different VLANs in different subnets work, even if they should not
- ping6 does sometime use source address from different subinterface
Signed-off-by: Jiri Pirko <jiri(a)resnulli.us>
recipes/regression_tests/phase1/3_vlans.py | 109 +++++++++++--
recipes/regression_tests/phase1/3_vlans.xml | 9 +
.../phase1/3_vlans_over_active_backup_bond.xml | 16 ++-
.../regression_tests/phase1/3_vlans_over_bond.py | 113 +++++++++++--
.../phase1/3_vlans_over_round_robin_bond.xml | 9 +
.../regression_tests/phase1/active_backup_bond.xml | 5 +
.../phase1/active_backup_double_bond.xml | 5 +
recipes/regression_tests/phase1/bonding_test.py | 116 +++++++------
recipes/regression_tests/phase1/ping_flood.xml | 9 +-
.../regression_tests/phase1/round_robin_bond.xml | 5 +
.../phase1/round_robin_double_bond.xml | 5 +
recipes/regression_tests/phase1/simple_ping.py | 36 +++--
...tual_bridge_2_vlans_over_active_backup_bond.xml | 7 +
.../phase1/virtual_bridge_2_vlans_over_bond.py | 132 +++++++++++++--
.../phase1/virtual_bridge_vlan_in_guest.py | 83 +++++++++-
.../phase1/virtual_bridge_vlan_in_guest.xml | 5 +
.../phase1/virtual_bridge_vlan_in_host.py | 79 ++++++++-
.../phase1/virtual_bridge_vlan_in_host.xml | 5 +
.../phase2/3_vlans_over_active_backup_team.xml | 9 +
.../phase2/3_vlans_over_round_robin_team.xml | 9 +
.../regression_tests/phase2/3_vlans_over_team.py | 113 +++++++++++--
.../phase2/active_backup_double_team.xml | 2 +
.../regression_tests/phase2/active_backup_team.xml | 2 +
.../active_backup_team_vs_active_backup_bond.xml | 2 +
.../active_backup_team_vs_round_robin_bond.xml | 2 +
.../phase2/round_robin_double_team.xml | 2 +
.../regression_tests/phase2/round_robin_team.xml | 2 +
.../round_robin_team_vs_active_backup_bond.xml | 2 +
.../round_robin_team_vs_round_robin_bond.xml | 2 +
recipes/regression_tests/phase2/team_test.py | 173 ++++++++++++++++----
...l_ovs_bridge_2_vlans_over_active_backup_bond.py | 135 ++++++++++++++--
..._ovs_bridge_2_vlans_over_active_backup_bond.xml | 7 +
.../phase2/virtual_ovs_bridge_vlan_in_guest.py | 81 ++++++++-
.../phase2/virtual_ovs_bridge_vlan_in_guest.xml | 5 +
.../phase2/virtual_ovs_bridge_vlan_in_host.py | 79 ++++++++-
.../phase2/virtual_ovs_bridge_vlan_in_host.xml | 7 +-
36 files changed, 1171 insertions(+), 211 deletions(-)
---
diff --git a/recipes/regression_tests/phase1/3_vlans.py
b/recipes/regression_tests/phase1/3_vlans.py
index 4681d8a..c7f8824 100644
--- a/recipes/regression_tests/phase1/3_vlans.py
+++ b/recipes/regression_tests/phase1/3_vlans.py
@@ -7,8 +7,8 @@ from lnst.Controller.Task import ctl
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Netperf"])
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -17,40 +17,83 @@ m2.sync_resources(modules=["IcmpPing",
"Netperf"])
vlans = ["vlan10", "vlan20", "vlan30"]
offloads = ["gso", "gro", "tso"]
+ipv = ctl.get_alias('ipv')
+
for vlan1 in vlans:
for vlan2 in vlans:
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : m2.get_ip(vlan2),
+ "addr" : m2.get_ip(vlan2, 0),
"count" : 100,
"iface" : m1.get_devname(vlan1),
"interval" : 0.1
})
+
+ ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : m2.get_ip(vlan2, 1),
+ "count" : 100,
+ "iface" : m1.get_devname(vlan1),
+ "interval" : 0.1
+ })
+
netperf_srv = ctl.get_module("Netperf",
options={
"role" : "server",
- "bind" : m1.get_ip(vlan1),
+ "bind" : m1.get_ip(vlan1, 0),
})
+
+ netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : m1.get_ip(vlan1, 1),
+ "netperf_opts" : " -6",
+ })
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
"netperf_server" :
- m1.get_ip(vlan1),
+ m1.get_ip(vlan1, 0),
"duration" : 60,
"testname" :
"TCP_STREAM",
"netperf_opts" :
"-L %s" % m2.get_ip(vlan1)
})
+
netperf_cli_udp = ctl.get_module("Netperf",
options={
"role" : "client",
"netperf_server" :
- m1.get_ip(vlan1),
+ m1.get_ip(vlan1, 0),
"duration" : 60,
"testname" :
"UDP_STREAM",
"netperf_opts" :
"-L %s" % m2.get_ip(vlan1)
})
+
+ netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m1.get_ip(vlan1, 1),
+ "duration" : 60,
+ "testname" :
"TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" % m2.get_ip(vlan1,
1)
+ })
+
+ netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m1.get_ip(vlan1, 1),
+ "duration" : 60,
+ "testname" :
"UDP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" % m2.get_ip(vlan1,
1)
+ })
+
for offload in offloads:
# These tests should pass
# Ping between same VLANs
@@ -61,16 +104,44 @@ for vlan1 in vlans:
offload, state))
m2.run("ethtool -K %s %s %s" %
(m2.get_devname("eth1"),
offload, state))
+ if ipv == 'ipv4':
+ # Ping test
+ m1.run(ping_mod)
+
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ srv_proc.intr()
+ elif ipv == 'ipv6':
+ # Ping test
+ m1.run(ping_mod6)
+
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ srv_proc.intr()
+ else:
+ # Ping tests
+ m1.run(ping_mod)
+ m1.run(ping_mod6)
- # Ping test
- m1.run(ping_mod)
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ srv_proc.intr()
- # Netperf test (both TCP and UDP)
- srv_proc = m1.run(netperf_srv, bg=True)
- ctl.wait(2)
- m2.run(netperf_cli_tcp, timeout=65)
- m2.run(netperf_cli_udp, timeout=65)
- srv_proc.intr()
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ srv_proc.intr()
# These tests should fail
# Ping across different VLAN
@@ -82,5 +153,11 @@ for vlan1 in vlans:
m2.run("ethtool -K %s %s %s" %
(m2.get_devname("eth1"),
offload, state))
- # Ping test
- m1.run(ping_mod, expect="fail")
+ if ipv == 'ipv4':
+ # Ping test
+ m1.run(ping_mod, expect="fail")
+ elif ipv == 'ipv6':
+ m1.run(ping_mod6, expect="fail")
+ else:
+ m1.run(ping_mod, expect="fail")
+ m1.run(ping_mod6, expect="fail")
diff --git a/recipes/regression_tests/phase1/3_vlans.xml
b/recipes/regression_tests/phase1/3_vlans.xml
index faa5045..a5c47fb 100644
--- a/recipes/regression_tests/phase1/3_vlans.xml
+++ b/recipes/regression_tests/phase1/3_vlans.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="testmachine1">
<interfaces>
@@ -12,6 +15,7 @@
</slaves>
<addresses>
<address value="192.168.10.1/24" />
+ <address value="2002::10:1/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -23,6 +27,7 @@
</slaves>
<addresses>
<address value="192.168.20.1/24" />
+ <address value="2002::20:1/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -34,6 +39,7 @@
</slaves>
<addresses>
<address value="192.168.30.1/24" />
+ <address value="2002::30:1/112" />
</addresses>
</vlan>
</interfaces>
@@ -50,6 +56,7 @@
</slaves>
<addresses>
<address value="192.168.10.2/24" />
+ <address value="2002::10:2/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -61,6 +68,7 @@
</slaves>
<addresses>
<address value="192.168.20.2/24" />
+ <address value="2002::20:2/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -72,6 +80,7 @@
</slaves>
<addresses>
<address value="192.168.30.2/24" />
+ <address value="2002::30:2/112" />
</addresses>
</vlan>
</interfaces>
diff --git a/recipes/regression_tests/phase1/3_vlans_over_active_backup_bond.xml
b/recipes/regression_tests/phase1/3_vlans_over_active_backup_bond.xml
index d125971..ce12030 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_active_backup_bond.xml
+++ b/recipes/regression_tests/phase1/3_vlans_over_active_backup_bond.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="testmachine1">
<interfaces>
@@ -14,7 +17,7 @@
<slave id="eth2" />
</slaves>
<addresses>
- <address value="1.2.3.4/24" />
+ <address value="2002::1/112" />
</addresses>
</bond>
<vlan id="vlan10">
@@ -26,6 +29,7 @@
</slaves>
<addresses>
<address value="192.168.10.1/24" />
+ <address value="2002::10:1/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -37,6 +41,7 @@
</slaves>
<addresses>
<address value="192.168.20.1/24" />
+ <address value="2002::20:1/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -48,6 +53,7 @@
</slaves>
<addresses>
<address value="192.168.30.1/24" />
+ <address value="2002::30:1/112" />
</addresses>
</vlan>
</interfaces>
@@ -55,6 +61,11 @@
<host id="testmachine2">
<interfaces>
<eth id="eth1" label="tnet" />
+ <eth id="eth2" label="tnet">
+ <addresses>
+ <address value="2002::2/112" />
+ </addresses>
+ </eth>
<vlan id="vlan10">
<options>
<option name="vlan_tci" value="10" />
@@ -64,6 +75,7 @@
</slaves>
<addresses>
<address value="192.168.10.2/24" />
+ <address value="2002::10:2/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -75,6 +87,7 @@
</slaves>
<addresses>
<address value="192.168.20.2/24" />
+ <address value="2002::20:2/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -86,6 +99,7 @@
</slaves>
<addresses>
<address value="192.168.30.2/24" />
+ <address value="2002::30:2/112" />
</addresses>
</vlan>
</interfaces>
diff --git a/recipes/regression_tests/phase1/3_vlans_over_bond.py
b/recipes/regression_tests/phase1/3_vlans_over_bond.py
index 1c95ed2..a9a0eb8 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/3_vlans_over_bond.py
@@ -7,8 +7,8 @@ from lnst.Controller.Task import ctl
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Netperf"])
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -17,40 +17,83 @@ m2.sync_resources(modules=["IcmpPing",
"Netperf"])
vlans = ["vlan10", "vlan20", "vlan30"]
offloads = ["gso", "gro", "tso"]
+ipv = ctl.get_alias('ipv')
+
for vlan1 in vlans:
for vlan2 in vlans:
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : m2.get_ip(vlan2),
+ "addr" : m2.get_ip(vlan2, 0),
"count" : 100,
"iface" : m1.get_devname(vlan1),
"interval" : 0.1
})
+
+ ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : m2.get_ip(vlan2, 1),
+ "count" : 100,
+ "iface" : m1.get_devname(vlan1),
+ "interval" : 0.1
+ })
+
netperf_srv = ctl.get_module("Netperf",
options={
"role" : "server",
- "bind" : m1.get_ip(vlan1),
+ "bind" : m1.get_ip(vlan1, 0),
})
+
+ netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : m1.get_ip(vlan1, 1),
+ "netperf_opts" : " -6",
+ })
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
"netperf_server" :
- m1.get_ip(vlan1),
+ m1.get_ip(vlan1, 0),
"duration" : 60,
"testname" :
"TCP_STREAM",
"netperf_opts" :
- "-L %s" % m2.get_ip(vlan1)
+ "-L %s" % m2.get_ip(vlan1,
0)
})
+
netperf_cli_udp = ctl.get_module("Netperf",
options={
"role" : "client",
"netperf_server" :
- m1.get_ip(vlan1),
+ m1.get_ip(vlan1, 0),
"duration" : 60,
"testname" :
"UDP_STREAM",
"netperf_opts" :
- "-L %s" % m2.get_ip(vlan1)
+ "-L %s" % m2.get_ip(vlan1,
0)
})
+
+ netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m1.get_ip(vlan1, 1),
+ "duration" : 60,
+ "testname" :
"TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" % m2.get_ip(vlan1,
1)
+ })
+
+ netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m1.get_ip(vlan1, 1),
+ "duration" : 60,
+ "testname" :
"UDP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" % m2.get_ip(vlan1,
1)
+ })
+
for offload in offloads:
# These tests should pass
# Ping between same VLANs
@@ -63,16 +106,44 @@ for vlan1 in vlans:
offload, state))
m2.run("ethtool -K %s %s %s" %
(m2.get_devname("eth1"),
offload, state))
+ if ipv == 'ipv4':
+ # Ping test
+ m1.run(ping_mod)
+
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ srv_proc.intr()
+ elif ipv == 'ipv6':
+ # Ping test
+ m1.run(ping_mod6)
+
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ srv_proc.intr()
+ else:
+ # Ping tests
+ m1.run(ping_mod)
+ m1.run(ping_mod6)
- # Ping test
- m1.run(ping_mod)
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ srv_proc.intr()
- # Netperf test (both TCP and UDP)
- srv_proc = m1.run(netperf_srv, bg=True)
- ctl.wait(2)
- m2.run(netperf_cli_tcp, timeout=65)
- m2.run(netperf_cli_udp, timeout=65)
- srv_proc.intr()
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ srv_proc.intr()
# These tests should fail
# Ping across different VLAN
@@ -86,5 +157,11 @@ for vlan1 in vlans:
m2.run("ethtool -K %s %s %s" %
(m2.get_devname("eth1"),
offload, state))
- # Ping test
- m1.run(ping_mod, expect="fail")
+ if ipv == 'ipv4':
+ # Ping test
+ m1.run(ping_mod, expect="fail")
+ elif ipv == 'ipv6':
+ m1.run(ping_mod6, expect="fail")
+ else:
+ m1.run(ping_mod, expect="fail")
+ m1.run(ping_mod6, expect="fail")
diff --git a/recipes/regression_tests/phase1/3_vlans_over_round_robin_bond.xml
b/recipes/regression_tests/phase1/3_vlans_over_round_robin_bond.xml
index 2d4aac3..a0a290b 100644
--- a/recipes/regression_tests/phase1/3_vlans_over_round_robin_bond.xml
+++ b/recipes/regression_tests/phase1/3_vlans_over_round_robin_bond.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="testmachine1">
<interfaces>
@@ -26,6 +29,7 @@
</slaves>
<addresses>
<address value="192.168.10.1/24" />
+ <address value="2002::10:1/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -37,6 +41,7 @@
</slaves>
<addresses>
<address value="192.168.20.1/24" />
+ <address value="2002::20:1/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -48,6 +53,7 @@
</slaves>
<addresses>
<address value="192.168.30.1/24" />
+ <address value="2002::30:1/112" />
</addresses>
</vlan>
</interfaces>
@@ -64,6 +70,7 @@
</slaves>
<addresses>
<address value="192.168.10.2/24" />
+ <address value="2002::10:2/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -75,6 +82,7 @@
</slaves>
<addresses>
<address value="192.168.20.2/24" />
+ <address value="2002::20:2/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -86,6 +94,7 @@
</slaves>
<addresses>
<address value="192.168.30.2/24" />
+ <address value="2002::30:2/112" />
</addresses>
</vlan>
</interfaces>
diff --git a/recipes/regression_tests/phase1/active_backup_bond.xml
b/recipes/regression_tests/phase1/active_backup_bond.xml
index 760ff8d..bfe05c5 100644
--- a/recipes/regression_tests/phase1/active_backup_bond.xml
+++ b/recipes/regression_tests/phase1/active_backup_bond.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="testmachine1">
<interfaces>
@@ -15,6 +18,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112"/>
</addresses>
</bond>
</interfaces>
@@ -24,6 +28,7 @@
<eth id="test_if" label="tnet">
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112"/>
</addresses>
</eth>
</interfaces>
diff --git a/recipes/regression_tests/phase1/active_backup_double_bond.xml
b/recipes/regression_tests/phase1/active_backup_double_bond.xml
index 9fa6286..a09163e 100644
--- a/recipes/regression_tests/phase1/active_backup_double_bond.xml
+++ b/recipes/regression_tests/phase1/active_backup_double_bond.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="testmachine1">
<interfaces>
@@ -15,6 +18,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112"/>
</addresses>
</bond>
</interfaces>
@@ -34,6 +38,7 @@
</slaves>
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112"/>
</addresses>
</bond>
</interfaces>
diff --git a/recipes/regression_tests/phase1/bonding_test.py
b/recipes/regression_tests/phase1/bonding_test.py
index 38e058b..f7d45d6 100644
--- a/recipes/regression_tests/phase1/bonding_test.py
+++ b/recipes/regression_tests/phase1/bonding_test.py
@@ -7,11 +7,9 @@ from lnst.Controller.Task import ctl
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Netperf"])
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
-m1_ip = m1.get_ip("test_if")
-m2_ip = m2.get_ip("test_if")
# ------
# TESTS
@@ -19,9 +17,19 @@ m2_ip = m2.get_ip("test_if")
offloads = ["tso", "gro", "gso"]
+ipv = ctl.get_alias('ipv')
+
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : m2_ip,
+ "addr" : m2.get_ip("test_if", 0),
+ "count" : 100,
+ "iface" : m1.get_devname("test_if"),
+ "interval" : 0.1
+ })
+
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : m2.get_ip("test_if", 1),
"count" : 100,
"iface" : m1.get_devname("test_if"),
"interval" : 0.1
@@ -30,70 +38,53 @@ ping_mod = ctl.get_module("IcmpPing",
netperf_srv = ctl.get_module("Netperf",
options = {
"role" : "server",
- "bind" : m1_ip
+ "bind" : m1.get_ip("test_if", 0)
+ })
+
+netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : m1.get_ip("test_if", 1),
+ "netperf_opts" : " -6",
})
netperf_cli_tcp = ctl.get_module("Netperf",
options = {
"role" : "client",
- "netperf_server" : m1_ip,
+ "netperf_server" :
m1.get_ip("test_if", 0),
"duration" : 60,
"testname" : "TCP_STREAM",
- "netperf_opts" : "-L %s" %
m2_ip
+ "netperf_opts" : "-L %s" %
m2.get_ip("test_if", 0)
})
netperf_cli_udp = ctl.get_module("Netperf",
options = {
"role" : "client",
- "netperf_server" : m1_ip,
+ "netperf_server" :
m1.get_ip("test_if", 0),
"duration" : 60,
"testname" : "UDP_STREAM",
- "netperf_opts" : "-L %s" %
m2_ip
+ "netperf_opts" : "-L %s" %
m2.get_ip("test_if", 0)
})
-for offload in offloads:
- for state in ["on", "off"]:
- m1.run("ethtool -K %s %s %s" % (m1.get_devname("test_if"),
offload,
- state))
- m2.run("ethtool -K %s %s %s" % (m2.get_devname("test_if"),
offload,
- state))
- m1.run(ping_mod)
- server_proc = m1.run(netperf_srv, bg=True)
- ctl.wait(2)
- m2.run(netperf_cli_tcp, timeout=65)
- m2.run(netperf_cli_udp, timeout=65)
- server_proc.intr()
-ping_mod = ctl.get_module("IcmpPing",
- options={
- "addr" : m1_ip,
- "count" : 100,
- "iface" : m2.get_devname("test_if"),
- "interval" : 0.1
- })
-
-
-netperf_srv = ctl.get_module("Netperf",
- options = {
- "role" : "server",
- "bind" : m2_ip
- })
-
-netperf_cli_tcp = ctl.get_module("Netperf",
- options = {
+netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
"role" : "client",
- "netperf_server" : m2_ip,
+ "netperf_server" :
+ m1.get_ip("test_if", 1),
"duration" : 60,
"testname" : "TCP_STREAM",
- "netperf_opts" : "-L %s" %
m1_ip
+ "netperf_opts" :
+ "-L %s -6" %
m2.get_ip("test_if", 1)
})
-
-netperf_cli_udp = ctl.get_module("Netperf",
- options = {
+netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
"role" : "client",
- "netperf_server" : m2_ip,
+ "netperf_server" :
+ m1.get_ip("test_if", 1),
"duration" : 60,
"testname" : "UDP_STREAM",
- "netperf_opts" : "-L %s" %
m1_ip
+ "netperf_opts" :
+ "-L %s -6" %
m2.get_ip("test_if", 1)
})
for offload in offloads:
@@ -102,9 +93,30 @@ for offload in offloads:
state))
m2.run("ethtool -K %s %s %s" % (m2.get_devname("test_if"),
offload,
state))
- m2.run(ping_mod)
- server_proc = m2.run(netperf_srv, bg=True)
- ctl.wait(2)
- m1.run(netperf_cli_tcp, timeout=65)
- m1.run(netperf_cli_udp, timeout=65)
- server_proc.intr()
+ if ipv == 'ipv4':
+ m1.run(ping_mod)
+ server_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+ elif ipv == 'ipv6':
+ m1.run(ping_mod6)
+ server_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
+ else:
+ m1.run(ping_mod)
+ m1.run(ping_mod6)
+ server_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+ server_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
\ No newline at end of file
diff --git a/recipes/regression_tests/phase1/ping_flood.xml
b/recipes/regression_tests/phase1/ping_flood.xml
index 3f466d9..881f5a5 100644
--- a/recipes/regression_tests/phase1/ping_flood.xml
+++ b/recipes/regression_tests/phase1/ping_flood.xml
@@ -1,10 +1,14 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="machine1">
<interfaces>
<eth id="testiface" label="testnet">
<addresses>
- <address>192.168.100.10/24</address>
+ <address>192.168.101.10/24</address>
+ <address>2002::1/112</address>
</addresses>
</eth>
</interfaces>
@@ -13,7 +17,8 @@
<interfaces>
<eth id="testiface" label="testnet">
<addresses>
- <address>192.168.100.11/24</address>
+ <address>192.168.101.11/24</address>
+ <address>2002::2/112</address>
</addresses>
</eth>
</interfaces>
diff --git a/recipes/regression_tests/phase1/round_robin_bond.xml
b/recipes/regression_tests/phase1/round_robin_bond.xml
index 237cced..63b0f26 100644
--- a/recipes/regression_tests/phase1/round_robin_bond.xml
+++ b/recipes/regression_tests/phase1/round_robin_bond.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="testmachine1">
<interfaces>
@@ -15,6 +18,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112"/>
</addresses>
</bond>
</interfaces>
@@ -24,6 +28,7 @@
<eth id="test_if" label="tnet">
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112"/>
</addresses>
</eth>
</interfaces>
diff --git a/recipes/regression_tests/phase1/round_robin_double_bond.xml
b/recipes/regression_tests/phase1/round_robin_double_bond.xml
index 556fbd2..0e27fcf 100644
--- a/recipes/regression_tests/phase1/round_robin_double_bond.xml
+++ b/recipes/regression_tests/phase1/round_robin_double_bond.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="testmachine1">
<interfaces>
@@ -15,6 +18,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112"/>
</addresses>
</bond>
</interfaces>
@@ -34,6 +38,7 @@
</slaves>
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112"/>
</addresses>
</bond>
</interfaces>
diff --git a/recipes/regression_tests/phase1/simple_ping.py
b/recipes/regression_tests/phase1/simple_ping.py
index 400104a..b19b2d7 100644
--- a/recipes/regression_tests/phase1/simple_ping.py
+++ b/recipes/regression_tests/phase1/simple_ping.py
@@ -3,17 +3,31 @@ from lnst.Controller.Task import ctl
hostA = ctl.get_host("machine1")
hostB = ctl.get_host("machine2")
-hostA.sync_resources(modules=["IcmpPing"])
-hostB.sync_resources(modules=["IcmpPing"])
-
-hostA_devices = hostA.get_interface("testiface")
-hostB_devices = hostB.get_interface("testiface")
+hostA.sync_resources(modules=["Icmp6Ping", "IcmpPing"])
+hostB.sync_resources(modules=["Icmp6Ping", "IcmpPing"])
ping_mod = ctl.get_module("IcmpPing",
- options={
- "addr": hostB.get_ip("testiface", 0),
- "count": 100,
- "interval": 0.2,
- "limit_rate": 95})
+ options={
+ "addr": hostB.get_ip("testiface", 0),
+ "count": 100,
+ "interval": 0.2,
+ "iface" :
hostA.get_devname("testiface"),
+ "limit_rate": 90})
+
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr": hostB.get_ip("testiface", 1),
+ "count": 100,
+ "interval": 0.2,
+ "iface" :
hostA.get_devname("testiface"),
+ "limit_rate": 90})
+
+if ctl.get_alias('ipv') == 'ipv6':
+ hostA.run(ping_mod6)
+
+elif ctl.get_alias('ipv') == 'ipv4':
+ hostA.run(ping_mod)
-hostA.run(ping_mod)
+else:
+ hostA.run(ping_mod)
+ hostA.run(ping_mod6)
diff --git
a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_active_backup_bond.xml
b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_active_backup_bond.xml
index 950bf0d..695a544 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_active_backup_bond.xml
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_active_backup_bond.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="host1">
<interfaces>
@@ -60,6 +63,7 @@
<eth id="guestnic" label="to_guest1">
<addresses>
<address>192.168.10.100/24</address>
+ <address value="2002::10:100/112"/>
</addresses>
</eth>
</interfaces>
@@ -69,6 +73,7 @@
<eth id="guestnic" label="to_guest2">
<addresses>
<address>192.168.20.100/24</address>
+ <address value="2002::20:100/112"/>
</addresses>
</eth>
</interfaces>
@@ -134,6 +139,7 @@
<eth id="guestnic" label="to_guest3">
<addresses>
<address>192.168.10.101/24</address>
+ <address value="2002::10:101/112"/>
</addresses>
</eth>
</interfaces>
@@ -143,6 +149,7 @@
<eth id="guestnic" label="to_guest4">
<addresses>
<address>192.168.20.101/24</address>
+ <address value="2002::20:101/112"/>
</addresses>
</eth>
</interfaces>
diff --git a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
index 36eabd3..6f024ed 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_2_vlans_over_bond.py
@@ -7,16 +7,16 @@ from lnst.Controller.Task import ctl
# Host 1 + guests 1 and 2
#h1 = ctl.get_host("host1")
g1 = ctl.get_host("guest1")
-g1.sync_resources(modules=["IcmpPing", "Netperf"])
+g1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
g2 = ctl.get_host("guest2")
-g2.sync_resources(modules=["IcmpPing", "Netperf"])
+g2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# Host 2 + guests 3 and 4
#h2 = ctl.get_host("host2")
g3 = ctl.get_host("guest3")
-g3.sync_resources(modules=["IcmpPing", "Netperf"])
+g3.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
g4 = ctl.get_host("guest4")
-g4.sync_resources(modules=["IcmpPing", "Netperf"])
+g4.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -24,26 +24,52 @@ g4.sync_resources(modules=["IcmpPing",
"Netperf"])
offloads = ["gso", "gro", "tso"]
+ipv = ctl.get_alias("ipv")
+
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : g3.get_ip("guestnic"),
+ "addr" : g3.get_ip("guestnic", 0),
"count" : 100,
"iface" : g1.get_devname("guestnic"),
"interval" : 0.1
})
ping_mod2 = ctl.get_module("IcmpPing",
options={
- "addr" : g2.get_ip("guestnic"),
+ "addr" : g2.get_ip("guestnic", 0),
"count" : 100,
"iface" : g4.get_devname("guestnic"),
"interval" : 0.1
})
+
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : g3.get_ip("guestnic", 1),
+ "count" : 100,
+ "iface" : g1.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
+ping_mod62 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : g2.get_ip("guestnic", 1),
+ "count" : 100,
+ "iface" : g4.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
netperf_srv = ctl.get_module("Netperf",
options={
"role": "server",
"bind" : g1.get_ip("guestnic")
})
+netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : g1.get_ip("guestnic", 1),
+ "netperf_opts" : " -6",
+ })
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -63,6 +89,29 @@ netperf_cli_udp = ctl.get_module("Netperf",
"netperf_opts" : "-L %s" %
g3.get_ip("guestnic")
})
+
+netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("guestnic", 1),
+ "duration" : 60,
+ "testname" : "TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
g3.get_ip("guestnic", 1)
+ })
+
+netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("guestnic", 1),
+ "duration" : 60,
+ "testname" : "UDP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
g3.get_ip("guestnic", 1)
+ })
+
ping_mod_bad = ctl.get_module("IcmpPing",
options={
"addr" : g4.get_ip("guestnic"),
@@ -70,6 +119,7 @@ ping_mod_bad = ctl.get_module("IcmpPing",
"iface" :
g1.get_devname("guestnic"),
"interval" : 0.1
})
+
ping_mod_bad2 = ctl.get_module("IcmpPing",
options={
"addr" : g2.get_ip("guestnic"),
@@ -78,6 +128,22 @@ ping_mod_bad2 = ctl.get_module("IcmpPing",
"interval" : 0.1
})
+ping_mod6_bad = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : g4.get_ip("guestnic", 1),
+ "count" : 100,
+ "iface" : g1.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
+ping_mod6_bad2 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : g2.get_ip("guestnic", 1),
+ "count" : 100,
+ "iface" : g3.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
for offload in offloads:
for state in ["on", "off"]:
g1.run("ethtool -K %s %s %s" % (g1.get_devname("guestnic"),
@@ -88,12 +154,48 @@ for offload in offloads:
offload, state))
g4.run("ethtool -K %s %s %s" % (g4.get_devname("guestnic"),
offload, state))
- g1.run(ping_mod)
- g4.run(ping_mod2)
- g1.run(ping_mod_bad, expect="fail")
- g3.run(ping_mod_bad2, expect="fail")
-
- g1.run(netperf_srv, bg=True, timeout=125)
- ctl.wait(2)
- g3.run(netperf_cli_tcp, timeout=65)
- g3.run(netperf_cli_udp, timeout=65)
+ if ipv == 'ipv4':
+ g1.run(ping_mod)
+ g4.run(ping_mod2)
+ g1.run(ping_mod_bad, expect="fail")
+ g3.run(ping_mod_bad2, expect="fail")
+
+ server_proc = g1.run(netperf_srv, bg=True, timeout=125)
+ ctl.wait(2)
+ g3.run(netperf_cli_tcp, timeout=65)
+ g3.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+ elif ipv == 'ipv6':
+ g1.run(ping_mod6)
+ g4.run(ping_mod62)
+ g1.run(ping_mod6_bad, expect="fail")
+ g3.run(ping_mod6_bad2, expect="fail")
+
+ server_proc = g1.run(netperf_srv6, bg=True, timeout=125)
+ ctl.wait(2)
+ g3.run(netperf_cli_tcp6, timeout=65)
+ g3.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
+ else:
+ # IPv4
+ g1.run(ping_mod)
+ g4.run(ping_mod2)
+ g1.run(ping_mod_bad, expect="fail")
+ g3.run(ping_mod_bad2, expect="fail")
+
+ server_proc = g1.run(netperf_srv, bg=True, timeout=125)
+ ctl.wait(2)
+ g3.run(netperf_cli_tcp, timeout=65)
+ g3.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+ # IPv6
+ g1.run(ping_mod6)
+ g4.run(ping_mod62)
+ g1.run(ping_mod6_bad, expect="fail")
+ g3.run(ping_mod6_bad2, expect="fail")
+
+ server_proc = g1.run(netperf_srv6, bg=True, timeout=125)
+ ctl.wait(2)
+ g3.run(netperf_cli_tcp6, timeout=65)
+ g3.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
index 71c7f4d..41dd0b5 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.py
@@ -9,8 +9,8 @@ g1 = ctl.get_host("guest1")
h2 = ctl.get_host("host2")
-g1.sync_resources(modules=["IcmpPing", "Netperf"])
-h2.sync_resources(modules=["IcmpPing", "Netperf"])
+g1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
+h2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -18,19 +18,37 @@ h2.sync_resources(modules=["IcmpPing",
"Netperf"])
offloads = ["gso", "gro", "tso"]
+ipv = ctl.get_alias("ipv")
+
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : h2.get_ip("vlan10"),
+ "addr" : h2.get_ip("vlan10", 0),
+ "count" : 100,
+ "iface" : g1.get_devname("vlan10"),
+ "interval" : 0.1
+ })
+
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : h2.get_ip("vlan10", 1),
"count" : 100,
"iface" : g1.get_devname("vlan10"),
"interval" : 0.1
})
+
netperf_srv = ctl.get_module("Netperf",
options={
"role" : "server",
"bind" : g1.get_ip("vlan10")
})
+netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : g1.get_ip("vlan10", 1),
+ "netperf_opts" : " -6",
+ })
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -50,16 +68,63 @@ netperf_cli_udp = ctl.get_module("Netperf",
"netperf_opts" : "-L %s" %
h2.get_ip("vlan10")
})
+
+netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("vlan10", 1),
+ "duration" : 60,
+ "testname" : "TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
h2.get_ip("vlan10", 1)
+ })
+
+netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("vlan10", 1),
+ "duration" : 60,
+ "testname" : "UDP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
h2.get_ip("vlan10", 1)
+ })
+
for offload in offloads:
for state in ["on", "off"]:
g1.run("ethtool -K %s %s %s" % (g1.get_devname("guestnic"),
offload, state))
h2.run("ethtool -K %s %s %s" % (h2.get_devname("nic"),
offload, state))
- g1.run(ping_mod)
- server_proc = g1.run(netperf_srv, bg=True)
- ctl.wait(2)
- h2.run(netperf_cli_tcp, timeout=65)
- h2.run(netperf_cli_udp, timeout=65)
- server_proc.intr()
+ if ipv == 'ipv4':
+ g1.run(ping_mod)
+ server_proc = g1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp, timeout=65)
+ h2.run(netperf_cli_udp, timeout=65)
+
+ server_proc.intr()
+ elif ipv == 'ipv6':
+ g1.run(ping_mod6)
+ server_proc = g1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp6, timeout=65)
+ h2.run(netperf_cli_udp6, timeout=65)
+
+ server_proc.intr()
+ else:
+ g1.run(ping_mod)
+ server_proc = g1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp, timeout=65)
+ h2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+
+ g1.run(ping_mod6)
+ server_proc = g1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp6, timeout=65)
+ h2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
\ No newline at end of file
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.xml
b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.xml
index 95ec86f..26347b8 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.xml
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_guest.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="host1">
<interfaces>
@@ -27,6 +30,7 @@
</slaves>
<addresses>
<address>192.168.10.10/24</address>
+ <address>2002::10:10/112</address>
</addresses>
</vlan>
</interfaces>
@@ -43,6 +47,7 @@
</slaves>
<addresses>
<address>192.168.10.11/24</address>
+ <address>2002::10:11/112</address>
</addresses>
</vlan>
</interfaces>
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
index 4543387..3344d81 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.py
@@ -9,8 +9,8 @@ g1 = ctl.get_host("guest1")
h2 = ctl.get_host("host2")
-g1.sync_resources(modules=["IcmpPing", "Netperf"])
-h2.sync_resources(modules=["IcmpPing", "Netperf"])
+g1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
+h2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -18,6 +18,8 @@ h2.sync_resources(modules=["IcmpPing", "Netperf"])
offloads = ["gso", "gro", "tso"]
+ipv = ctl.get_alias("ipv")
+
ping_mod = ctl.get_module("IcmpPing",
options={
"addr" : h2.get_ip("vlan10"),
@@ -25,12 +27,28 @@ ping_mod = ctl.get_module("IcmpPing",
"iface" : g1.get_devname("guestnic"),
"interval" : 0.1
})
+
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : h2.get_ip("vlan10", 1),
+ "count" : 100,
+ "iface" : g1.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
netperf_srv = ctl.get_module("Netperf",
options={
"role" : "server",
"bind" : g1.get_ip("guestnic")
})
+netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : g1.get_ip("guestnic", 1),
+ "netperf_opts" : " -6",
+ })
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -51,16 +69,61 @@ netperf_cli_udp = ctl.get_module("Netperf",
h2.get_ip("vlan10")
})
+netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("guestnic", 1),
+ "duration" : 60,
+ "testname" : "TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
h2.get_ip("vlan10", 1)
+ })
+
+netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("guestnic", 1),
+ "duration" : 60,
+ "testname" : "UDP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
h2.get_ip("vlan10", 1)
+ })
+
for offload in offloads:
for state in ["on", "off"]:
g1.run("ethtool -K %s %s %s" %
(g1.get_devname("guestnic"),
offload, state))
h2.run("ethtool -K %s %s %s" % (h2.get_devname("nic"),
offload, state))
- g1.run(ping_mod)
- server_proc = g1.run(netperf_srv, bg=True)
- ctl.wait(2)
- h2.run(netperf_cli_tcp, timeout=65)
- h2.run(netperf_cli_udp, timeout=65)
+ if ipv == 'ipv4':
+ g1.run(ping_mod)
+ server_proc = g1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp, timeout=65)
+ h2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+
+ elif ipv == 'ipv6':
+ g1.run(ping_mod6)
+ server_proc = g1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp6, timeout=65)
+ h2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
+
+ else:
+ g1.run(ping_mod)
+ server_proc = g1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp, timeout=65)
+ h2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
- server_proc.intr()
+ g1.run(ping_mod6)
+ server_proc = g1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp6, timeout=65)
+ h2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
diff --git a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.xml
b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.xml
index 5508c33..e2b23d1 100644
--- a/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.xml
+++ b/recipes/regression_tests/phase1/virtual_bridge_vlan_in_host.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="host1">
<interfaces>
@@ -28,6 +31,7 @@
<eth id="guestnic" label="to_guest">
<addresses>
<address>192.168.10.10/24</address>
+ <address>2002::10:10/112</address>
</addresses>
</eth>
</interfaces>
@@ -44,6 +48,7 @@
</slaves>
<addresses>
<address>192.168.10.11/24</address>
+ <address>2002::10:11/112</address>
</addresses>
</vlan>
</interfaces>
diff --git a/recipes/regression_tests/phase2/3_vlans_over_active_backup_team.xml
b/recipes/regression_tests/phase2/3_vlans_over_active_backup_team.xml
index 59ff534..225f76d 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_active_backup_team.xml
+++ b/recipes/regression_tests/phase2/3_vlans_over_active_backup_team.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="testmachine1">
<interfaces>
@@ -32,6 +35,7 @@
</slaves>
<addresses>
<address value="192.168.10.1/24" />
+ <address value="2002::10:1/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -43,6 +47,7 @@
</slaves>
<addresses>
<address value="192.168.20.1/24" />
+ <address value="2002::20:1/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -54,6 +59,7 @@
</slaves>
<addresses>
<address value="192.168.30.1/24" />
+ <address value="2002::30:1/112" />
</addresses>
</vlan>
</interfaces>
@@ -70,6 +76,7 @@
</slaves>
<addresses>
<address value="192.168.10.2/24" />
+ <address value="2002::10:2/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -81,6 +88,7 @@
</slaves>
<addresses>
<address value="192.168.20.2/24" />
+ <address value="2002::20:2/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -92,6 +100,7 @@
</slaves>
<addresses>
<address value="192.168.30.2/24" />
+ <address value="2002::30:2/112" />
</addresses>
</vlan>
</interfaces>
diff --git a/recipes/regression_tests/phase2/3_vlans_over_round_robin_team.xml
b/recipes/regression_tests/phase2/3_vlans_over_round_robin_team.xml
index 0e9f009..cdcec31 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_round_robin_team.xml
+++ b/recipes/regression_tests/phase2/3_vlans_over_round_robin_team.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="testmachine1">
<interfaces>
@@ -32,6 +35,7 @@
</slaves>
<addresses>
<address value="192.168.10.1/24" />
+ <address value="2002::10:1/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -43,6 +47,7 @@
</slaves>
<addresses>
<address value="192.168.20.1/24" />
+ <address value="2002::20:1/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -54,6 +59,7 @@
</slaves>
<addresses>
<address value="192.168.30.1/24" />
+ <address value="2002::30:1/112" />
</addresses>
</vlan>
</interfaces>
@@ -70,6 +76,7 @@
</slaves>
<addresses>
<address value="192.168.10.2/24" />
+ <address value="2002::10:2/112" />
</addresses>
</vlan>
<vlan id="vlan20">
@@ -81,6 +88,7 @@
</slaves>
<addresses>
<address value="192.168.20.2/24" />
+ <address value="2002::20:2/112" />
</addresses>
</vlan>
<vlan id="vlan30">
@@ -92,6 +100,7 @@
</slaves>
<addresses>
<address value="192.168.30.2/24" />
+ <address value="2002::30:2/112" />
</addresses>
</vlan>
</interfaces>
diff --git a/recipes/regression_tests/phase2/3_vlans_over_team.py
b/recipes/regression_tests/phase2/3_vlans_over_team.py
index 645e2cf..2ede5d4 100644
--- a/recipes/regression_tests/phase2/3_vlans_over_team.py
+++ b/recipes/regression_tests/phase2/3_vlans_over_team.py
@@ -7,8 +7,8 @@ from lnst.Controller.Task import ctl
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Netperf"])
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -17,40 +17,82 @@ m2.sync_resources(modules=["IcmpPing",
"Netperf"])
vlans = ["vlan10", "vlan20", "vlan30"]
offloads = ["gso", "gro", "tso"]
+ipv = ctl.get_alias('ipv')
+
for vlan1 in vlans:
for vlan2 in vlans:
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : m2.get_ip(vlan2),
+ "addr" : m2.get_ip(vlan2, 0),
+ "count" : 100,
+ "iface" : m1.get_devname(vlan1),
+ "interval" : 0.1
+ })
+
+ ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : m2.get_ip(vlan2, 1),
"count" : 100,
"iface" : m1.get_devname(vlan1),
"interval" : 0.1
})
+
netperf_srv = ctl.get_module("Netperf",
options={
"role" : "server",
- "bind" : m1.get_ip(vlan1),
+ "bind" : m1.get_ip(vlan1, 0),
+ })
+
+ netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : m1.get_ip(vlan1, 1),
+ "netperf_opts" : " -6",
})
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
"netperf_server" :
- m1.get_ip(vlan1),
+ m1.get_ip(vlan1, 0),
"duration" : 60,
"testname" :
"TCP_STREAM",
"netperf_opts" :
- "-L %s" % m2.get_ip(vlan1)
+ "-L %s" % m2.get_ip(vlan1,
0)
})
+
netperf_cli_udp = ctl.get_module("Netperf",
options={
"role" : "client",
"netperf_server" :
- m1.get_ip(vlan1),
+ m1.get_ip(vlan1, 0),
"duration" : 60,
"testname" :
"UDP_STREAM",
"netperf_opts" :
- "-L %s" % m2.get_ip(vlan1)
+ "-L %s" % m2.get_ip(vlan1,
0)
})
+
+ netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m1.get_ip(vlan1, 1),
+ "duration" : 60,
+ "testname" : "TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" % m2.get_ip(vlan1, 1)
+ })
+ netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m1.get_ip(vlan1, 1),
+ "duration" : 60,
+ "testname" : "UDP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" % m2.get_ip(vlan1, 1)
+ })
+
for offload in offloads:
# These tests should pass
# Ping between same VLANs
@@ -65,15 +107,44 @@ for vlan1 in vlans:
offload, state))
m2.run("ethtool -K %s %s %s" %
(m2.get_devname("eth1"),
offload, state))
- # Ping test
- m1.run(ping_mod)
- # Netperf test (both TCP and UDP)
- srv_proc = m1.run(netperf_srv, bg=True)
- ctl.wait(2)
- m2.run(netperf_cli_tcp, timeout=65)
- m2.run(netperf_cli_udp, timeout=65)
- srv_proc.intr()
+ if ipv == 'ipv4':
+ # Ping test
+ m1.run(ping_mod)
+
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ srv_proc.intr()
+ elif ipv == 'ipv6':
+ m1.run(ping_mod6)
+
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ srv_proc.intr()
+ else:
+ m1.run(ping_mod)
+
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ srv_proc.intr()
+
+ m1.run(ping_mod6)
+
+ # Netperf test (both TCP and UDP)
+ srv_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ srv_proc.intr()
# These tests should fail
# Ping across different VLAN
@@ -88,6 +159,12 @@ for vlan1 in vlans:
offload, state))
m2.run("ethtool -K %s %s %s" %
(m2.get_devname("eth1"),
offload, state))
-
# Ping test
- m1.run(ping_mod, expect="fail")
+ if ipv == 'ipv4':
+ m1.run(ping_mod, expect="fail")
+ elif ipv == 'ipv6':
+ m1.run(ping_mod6, expect="fail")
+ else:
+ m1.run(ping_mod, expect="fail")
+ m1.run(ping_mod6, expect="fail")
+
diff --git a/recipes/regression_tests/phase2/active_backup_double_team.xml
b/recipes/regression_tests/phase2/active_backup_double_team.xml
index 0f98b40..9ecefe2 100644
--- a/recipes/regression_tests/phase2/active_backup_double_team.xml
+++ b/recipes/regression_tests/phase2/active_backup_double_team.xml
@@ -21,6 +21,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112" />
</addresses>
</team>
</interfaces>
@@ -46,6 +47,7 @@
</slaves>
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112" />
</addresses>
</team>
</interfaces>
diff --git a/recipes/regression_tests/phase2/active_backup_team.xml
b/recipes/regression_tests/phase2/active_backup_team.xml
index 44a6430..15ad59a 100644
--- a/recipes/regression_tests/phase2/active_backup_team.xml
+++ b/recipes/regression_tests/phase2/active_backup_team.xml
@@ -21,6 +21,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112" />
</addresses>
</team>
</interfaces>
@@ -30,6 +31,7 @@
<eth id="test_if" label="tnet">
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112" />
</addresses>
</eth>
</interfaces>
diff --git a/recipes/regression_tests/phase2/active_backup_team_vs_active_backup_bond.xml
b/recipes/regression_tests/phase2/active_backup_team_vs_active_backup_bond.xml
index 621a4e8..445123c 100644
--- a/recipes/regression_tests/phase2/active_backup_team_vs_active_backup_bond.xml
+++ b/recipes/regression_tests/phase2/active_backup_team_vs_active_backup_bond.xml
@@ -21,6 +21,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112" />
</addresses>
</team>
</interfaces>
@@ -42,6 +43,7 @@
</slaves>
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112" />
</addresses>
</bond>
</interfaces>
diff --git a/recipes/regression_tests/phase2/active_backup_team_vs_round_robin_bond.xml
b/recipes/regression_tests/phase2/active_backup_team_vs_round_robin_bond.xml
index e7119a7..fc8a6a5 100644
--- a/recipes/regression_tests/phase2/active_backup_team_vs_round_robin_bond.xml
+++ b/recipes/regression_tests/phase2/active_backup_team_vs_round_robin_bond.xml
@@ -21,6 +21,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112" />
</addresses>
</team>
</interfaces>
@@ -42,6 +43,7 @@
</slaves>
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112" />
</addresses>
</bond>
</interfaces>
diff --git a/recipes/regression_tests/phase2/round_robin_double_team.xml
b/recipes/regression_tests/phase2/round_robin_double_team.xml
index fe6bdfe..624d6c9 100644
--- a/recipes/regression_tests/phase2/round_robin_double_team.xml
+++ b/recipes/regression_tests/phase2/round_robin_double_team.xml
@@ -21,6 +21,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::2/112" />
</addresses>
</team>
</interfaces>
@@ -46,6 +47,7 @@
</slaves>
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112" />
</addresses>
</team>
</interfaces>
diff --git a/recipes/regression_tests/phase2/round_robin_team.xml
b/recipes/regression_tests/phase2/round_robin_team.xml
index 4a69db9..030aaf4 100644
--- a/recipes/regression_tests/phase2/round_robin_team.xml
+++ b/recipes/regression_tests/phase2/round_robin_team.xml
@@ -21,6 +21,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112" />
</addresses>
</team>
</interfaces>
@@ -30,6 +31,7 @@
<eth id="test_if" label="tnet">
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112" />
</addresses>
</eth>
</interfaces>
diff --git a/recipes/regression_tests/phase2/round_robin_team_vs_active_backup_bond.xml
b/recipes/regression_tests/phase2/round_robin_team_vs_active_backup_bond.xml
index d645f1f..c33414a 100644
--- a/recipes/regression_tests/phase2/round_robin_team_vs_active_backup_bond.xml
+++ b/recipes/regression_tests/phase2/round_robin_team_vs_active_backup_bond.xml
@@ -21,6 +21,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112" />
</addresses>
</team>
</interfaces>
@@ -42,6 +43,7 @@
</slaves>
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112" />
</addresses>
</bond>
</interfaces>
diff --git a/recipes/regression_tests/phase2/round_robin_team_vs_round_robin_bond.xml
b/recipes/regression_tests/phase2/round_robin_team_vs_round_robin_bond.xml
index d134119..2641b0d 100644
--- a/recipes/regression_tests/phase2/round_robin_team_vs_round_robin_bond.xml
+++ b/recipes/regression_tests/phase2/round_robin_team_vs_round_robin_bond.xml
@@ -21,6 +21,7 @@
</slaves>
<addresses>
<address value="192.168.0.1/24" />
+ <address value="2002::1/112" />
</addresses>
</team>
</interfaces>
@@ -42,6 +43,7 @@
</slaves>
<addresses>
<address value="192.168.0.2/24" />
+ <address value="2002::2/112" />
</addresses>
</bond>
</interfaces>
diff --git a/recipes/regression_tests/phase2/team_test.py
b/recipes/regression_tests/phase2/team_test.py
index 38e058b..78e9efe 100644
--- a/recipes/regression_tests/phase2/team_test.py
+++ b/recipes/regression_tests/phase2/team_test.py
@@ -7,11 +7,8 @@ from lnst.Controller.Task import ctl
m1 = ctl.get_host("testmachine1")
m2 = ctl.get_host("testmachine2")
-m1.sync_resources(modules=["IcmpPing", "Netperf"])
-m2.sync_resources(modules=["IcmpPing", "Netperf"])
-
-m1_ip = m1.get_ip("test_if")
-m2_ip = m2.get_ip("test_if")
+m1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
+m2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -19,9 +16,19 @@ m2_ip = m2.get_ip("test_if")
offloads = ["tso", "gro", "gso"]
+ipv = ctl.get_alias('ipv')
+
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : m2_ip,
+ "addr" : m2.get_ip("test_if", 0),
+ "count" : 100,
+ "iface" : m1.get_devname("test_if"),
+ "interval" : 0.1
+ })
+
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : m2.get_ip("test_if", 1),
"count" : 100,
"iface" : m1.get_devname("test_if"),
"interval" : 0.1
@@ -30,70 +37,156 @@ ping_mod = ctl.get_module("IcmpPing",
netperf_srv = ctl.get_module("Netperf",
options = {
"role" : "server",
- "bind" : m1_ip
+ "bind" : m1.get_ip("test_if", 0)
+ })
+
+netperf_srv6 = ctl.get_module("Netperf",
+ options = {
+ "role" : "server",
+ "bind" : m1.get_ip("test_if", 1),
+ "netperf_opts" : " -6"
})
netperf_cli_tcp = ctl.get_module("Netperf",
options = {
"role" : "client",
- "netperf_server" : m1_ip,
+ "netperf_server" :
m1.get_ip("test_if", 0),
"duration" : 60,
"testname" : "TCP_STREAM",
- "netperf_opts" : "-L %s" %
m2_ip
+ "netperf_opts" : "-L %s" %
m2.get_ip("test_if", 0)
})
netperf_cli_udp = ctl.get_module("Netperf",
options = {
"role" : "client",
- "netperf_server" : m1_ip,
+ "netperf_server" :
m1.get_ip("test_if", 0),
+ "duration" : 60,
+ "testname" : "UDP_STREAM",
+ "netperf_opts" : "-L %s" %
m2.get_ip("test_if", 0)
+ })
+
+netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m1.get_ip("test_if", 1),
+ "duration" : 60,
+ "testname" : "TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
m2.get_ip("test_if", 1)
+ })
+netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m1.get_ip("test_if", 1),
"duration" : 60,
"testname" : "UDP_STREAM",
- "netperf_opts" : "-L %s" %
m2_ip
+ "netperf_opts" :
+ "-L %s -6" %
m2.get_ip("test_if", 1)
})
+
for offload in offloads:
for state in ["on", "off"]:
m1.run("ethtool -K %s %s %s" % (m1.get_devname("test_if"),
offload,
state))
m2.run("ethtool -K %s %s %s" % (m2.get_devname("test_if"),
offload,
state))
- m1.run(ping_mod)
- server_proc = m1.run(netperf_srv, bg=True)
- ctl.wait(2)
- m2.run(netperf_cli_tcp, timeout=65)
- m2.run(netperf_cli_udp, timeout=65)
- server_proc.intr()
+ if ipv == "ipv4":
+ m1.run(ping_mod)
+ server_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+ elif ipv == "ipv6":
+ m1.run(ping_mod6)
+ server_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
+ else:
+ m1.run(ping_mod)
+ server_proc = m1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp, timeout=65)
+ m2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+
+ m1.run(ping_mod6)
+ server_proc = m1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m2.run(netperf_cli_tcp6, timeout=65)
+ m2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : m1_ip,
+ "addr" : m1.get_ip("test_if", 0),
"count" : 100,
"iface" : m2.get_devname("test_if"),
"interval" : 0.1
})
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : m1.get_ip("test_if", 1),
+ "count" : 100,
+ "iface" : m2.get_devname("test_if"),
+ "interval" : 0.1
+ })
netperf_srv = ctl.get_module("Netperf",
options = {
"role" : "server",
- "bind" : m2_ip
+ "bind" : m2.get_ip("test_if", 0)
+ })
+
+netperf_srv6 = ctl.get_module("Netperf",
+ options = {
+ "role" : "server",
+ "bind" : m2.get_ip("test_if", 1),
+ "netperf_opts" : " -6"
})
netperf_cli_tcp = ctl.get_module("Netperf",
options = {
"role" : "client",
- "netperf_server" : m2_ip,
+ "netperf_server" :
m2.get_ip("test_if", 0),
"duration" : 60,
"testname" : "TCP_STREAM",
- "netperf_opts" : "-L %s" %
m1_ip
+ "netperf_opts" : "-L %s" %
m1.get_ip("test_if", 0)
})
netperf_cli_udp = ctl.get_module("Netperf",
options = {
"role" : "client",
- "netperf_server" : m2_ip,
+ "netperf_server" :
m2.get_ip("test_if", 0),
+ "duration" : 60,
+ "testname" : "UDP_STREAM",
+ "netperf_opts" : "-L %s" %
m1.get_ip("test_if", 0)
+ })
+
+netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m2.get_ip("test_if", 1),
+ "duration" : 60,
+ "testname" : "TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
m1.get_ip("test_if", 1)
+ })
+netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ m2.get_ip("test_if", 1),
"duration" : 60,
"testname" : "UDP_STREAM",
- "netperf_opts" : "-L %s" %
m1_ip
+ "netperf_opts" :
+ "-L %s -6" %
m1.get_ip("test_if", 1)
})
for offload in offloads:
@@ -102,9 +195,31 @@ for offload in offloads:
state))
m2.run("ethtool -K %s %s %s" % (m2.get_devname("test_if"),
offload,
state))
- m2.run(ping_mod)
- server_proc = m2.run(netperf_srv, bg=True)
- ctl.wait(2)
- m1.run(netperf_cli_tcp, timeout=65)
- m1.run(netperf_cli_udp, timeout=65)
- server_proc.intr()
+ if ipv == 'ipv4':
+ m2.run(ping_mod)
+ server_proc = m2.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m1.run(netperf_cli_tcp, timeout=65)
+ m1.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+ elif ipv == 'ipv6':
+ m2.run(ping_mod6)
+ server_proc = m2.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m1.run(netperf_cli_tcp6, timeout=65)
+ m1.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
+ else:
+ m2.run(ping_mod)
+ server_proc = m2.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ m1.run(netperf_cli_tcp, timeout=65)
+ m1.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+
+ m2.run(ping_mod6)
+ server_proc = m2.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ m1.run(netperf_cli_tcp6, timeout=65)
+ m1.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
\ No newline at end of file
diff --git
a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
index 36eabd3..a4cfdd8 100644
---
a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
+++
b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.py
@@ -7,16 +7,16 @@ from lnst.Controller.Task import ctl
# Host 1 + guests 1 and 2
#h1 = ctl.get_host("host1")
g1 = ctl.get_host("guest1")
-g1.sync_resources(modules=["IcmpPing", "Netperf"])
+g1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
g2 = ctl.get_host("guest2")
-g2.sync_resources(modules=["IcmpPing", "Netperf"])
+g2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# Host 2 + guests 3 and 4
#h2 = ctl.get_host("host2")
g3 = ctl.get_host("guest3")
-g3.sync_resources(modules=["IcmpPing", "Netperf"])
+g3.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
g4 = ctl.get_host("guest4")
-g4.sync_resources(modules=["IcmpPing", "Netperf"])
+g4.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -24,26 +24,53 @@ g4.sync_resources(modules=["IcmpPing",
"Netperf"])
offloads = ["gso", "gro", "tso"]
+ipv = ctl.get_alias("ipv")
+
ping_mod = ctl.get_module("IcmpPing",
options={
- "addr" : g3.get_ip("guestnic"),
+ "addr" : g3.get_ip("guestnic", 0),
"count" : 100,
"iface" : g1.get_devname("guestnic"),
"interval" : 0.1
})
+
ping_mod2 = ctl.get_module("IcmpPing",
options={
- "addr" : g2.get_ip("guestnic"),
+ "addr" : g2.get_ip("guestnic", 0),
"count" : 100,
"iface" : g4.get_devname("guestnic"),
"interval" : 0.1
})
+
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : g3.get_ip("guestnic", 1),
+ "count" : 100,
+ "iface" : g1.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
+ping_mod62 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : g2.get_ip("guestnic", 1),
+ "count" : 100,
+ "iface" : g4.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
netperf_srv = ctl.get_module("Netperf",
options={
"role": "server",
"bind" : g1.get_ip("guestnic")
})
+netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : g1.get_ip("guestnic", 1),
+ "netperf_opts" : " -6",
+ })
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -63,6 +90,29 @@ netperf_cli_udp = ctl.get_module("Netperf",
"netperf_opts" : "-L %s" %
g3.get_ip("guestnic")
})
+
+netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("guestnic", 1),
+ "duration" : 60,
+ "testname" : "TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
g3.get_ip("guestnic", 1)
+ })
+
+netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("guestnic", 1),
+ "duration" : 60,
+ "testname" : "UDP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
g3.get_ip("guestnic", 1)
+ })
+
ping_mod_bad = ctl.get_module("IcmpPing",
options={
"addr" : g4.get_ip("guestnic"),
@@ -70,6 +120,8 @@ ping_mod_bad = ctl.get_module("IcmpPing",
"iface" :
g1.get_devname("guestnic"),
"interval" : 0.1
})
+
+
ping_mod_bad2 = ctl.get_module("IcmpPing",
options={
"addr" : g2.get_ip("guestnic"),
@@ -78,6 +130,23 @@ ping_mod_bad2 = ctl.get_module("IcmpPing",
"interval" : 0.1
})
+ping_mod6_bad = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : g4.get_ip("guestnic", 1),
+ "count" : 100,
+ "iface" : g1.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
+ping_mod6_bad2 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : g2.get_ip("guestnic", 1),
+ "count" : 100,
+ "iface" : g3.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
+
for offload in offloads:
for state in ["on", "off"]:
g1.run("ethtool -K %s %s %s" % (g1.get_devname("guestnic"),
@@ -88,12 +157,48 @@ for offload in offloads:
offload, state))
g4.run("ethtool -K %s %s %s" % (g4.get_devname("guestnic"),
offload, state))
- g1.run(ping_mod)
- g4.run(ping_mod2)
- g1.run(ping_mod_bad, expect="fail")
- g3.run(ping_mod_bad2, expect="fail")
-
- g1.run(netperf_srv, bg=True, timeout=125)
- ctl.wait(2)
- g3.run(netperf_cli_tcp, timeout=65)
- g3.run(netperf_cli_udp, timeout=65)
+ if ipv == 'ipv4':
+ g1.run(ping_mod)
+ g4.run(ping_mod2)
+ g1.run(ping_mod_bad, expect="fail")
+ g3.run(ping_mod_bad2, expect="fail")
+
+ server_proc = g1.run(netperf_srv, bg=True, timeout=125)
+ ctl.wait(2)
+ g3.run(netperf_cli_tcp, timeout=65)
+ g3.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+ elif ipv == 'ipv6':
+ g1.run(ping_mod6)
+ g4.run(ping_mod62)
+ g1.run(ping_mod6_bad, expect="fail")
+ g3.run(ping_mod6_bad2, expect="fail")
+
+ server_proc = g1.run(netperf_srv6, bg=True, timeout=125)
+ ctl.wait(2)
+ g3.run(netperf_cli_tcp6, timeout=65)
+ g3.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
+ else:
+ # IPv4
+ g1.run(ping_mod)
+ g4.run(ping_mod2)
+ g1.run(ping_mod_bad, expect="fail")
+ g3.run(ping_mod_bad2, expect="fail")
+
+ server_proc = g1.run(netperf_srv, bg=True, timeout=125)
+ ctl.wait(2)
+ g3.run(netperf_cli_tcp, timeout=65)
+ g3.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+ # IPv6
+ g1.run(ping_mod6)
+ g4.run(ping_mod62)
+ g1.run(ping_mod6_bad, expect="fail")
+ g3.run(ping_mod6_bad2, expect="fail")
+
+ server_proc = g1.run(netperf_srv6, bg=True, timeout=125)
+ ctl.wait(2)
+ g3.run(netperf_cli_tcp6, timeout=65)
+ g3.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
diff --git
a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.xml
b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.xml
index c901b16..1347e38 100644
---
a/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.xml
+++
b/recipes/regression_tests/phase2/virtual_ovs_bridge_2_vlans_over_active_backup_bond.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="host1">
<interfaces>
@@ -41,6 +44,7 @@
<eth id="guestnic" label="to_guest1">
<addresses>
<address>192.168.10.100/24</address>
+ <address>2002::10:100/112</address>
</addresses>
</eth>
</interfaces>
@@ -50,6 +54,7 @@
<eth id="guestnic" label="to_guest2">
<addresses>
<address>192.168.20.100/24</address>
+ <address>2002::20:100/112</address>
</addresses>
</eth>
</interfaces>
@@ -96,6 +101,7 @@
<eth id="guestnic" label="to_guest3">
<addresses>
<address>192.168.10.101/24</address>
+ <address>2002::10:101/112</address>
</addresses>
</eth>
</interfaces>
@@ -105,6 +111,7 @@
<eth id="guestnic" label="to_guest4">
<addresses>
<address>192.168.20.101/24</address>
+ <address>2002::20:100/112</address>
</addresses>
</eth>
</interfaces>
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
index 71c7f4d..0d6aba8 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.py
@@ -9,8 +9,8 @@ g1 = ctl.get_host("guest1")
h2 = ctl.get_host("host2")
-g1.sync_resources(modules=["IcmpPing", "Netperf"])
-h2.sync_resources(modules=["IcmpPing", "Netperf"])
+g1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
+h2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -18,6 +18,8 @@ h2.sync_resources(modules=["IcmpPing", "Netperf"])
offloads = ["gso", "gro", "tso"]
+ipv = ctl.get_alias("ipv")
+
ping_mod = ctl.get_module("IcmpPing",
options={
"addr" : h2.get_ip("vlan10"),
@@ -25,12 +27,28 @@ ping_mod = ctl.get_module("IcmpPing",
"iface" : g1.get_devname("vlan10"),
"interval" : 0.1
})
+
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : h2.get_ip("vlan10", 1),
+ "count" : 100,
+ "iface" : g1.get_devname("vlan10"),
+ "interval" : 0.1
+ })
+
netperf_srv = ctl.get_module("Netperf",
options={
"role" : "server",
"bind" : g1.get_ip("vlan10")
})
+netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : g1.get_ip("vlan10", 1),
+ "netperf_opts" : " -6",
+ })
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -50,16 +68,63 @@ netperf_cli_udp = ctl.get_module("Netperf",
"netperf_opts" : "-L %s" %
h2.get_ip("vlan10")
})
+
+netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("vlan10", 1),
+ "duration" : 60,
+ "testname" : "TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
h2.get_ip("vlan10", 1)
+ })
+
+netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("vlan10", 1),
+ "duration" : 60,
+ "testname" : "UDP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
h2.get_ip("vlan10", 1)
+ })
+
+
for offload in offloads:
for state in ["on", "off"]:
g1.run("ethtool -K %s %s %s" % (g1.get_devname("guestnic"),
offload, state))
h2.run("ethtool -K %s %s %s" % (h2.get_devname("nic"),
offload, state))
- g1.run(ping_mod)
- server_proc = g1.run(netperf_srv, bg=True)
- ctl.wait(2)
- h2.run(netperf_cli_tcp, timeout=65)
- h2.run(netperf_cli_udp, timeout=65)
+ if ipv == 'ipv4':
+ g1.run(ping_mod)
+ server_proc = g1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp, timeout=65)
+ h2.run(netperf_cli_udp, timeout=65)
+
+ server_proc.intr()
+ elif ipv == 'ipv6':
+ g1.run(ping_mod6)
+ server_proc = g1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp6, timeout=65)
+ h2.run(netperf_cli_udp6, timeout=65)
+
+ server_proc.intr()
+ else:
+ g1.run(ping_mod)
+ server_proc = g1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp, timeout=65)
+ h2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
- server_proc.intr()
+ g1.run(ping_mod6)
+ server_proc = g1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp6, timeout=65)
+ h2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.xml
b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.xml
index 4442e4a..dfab509 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.xml
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_guest.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="host1">
<interfaces>
@@ -24,6 +27,7 @@
</slaves>
<addresses>
<address>192.168.10.10/24</address>
+ <address>2002::10:10/112</address>
</addresses>
</vlan>
</interfaces>
@@ -40,6 +44,7 @@
</slaves>
<addresses>
<address>192.168.10.11/24</address>
+ <address>2002::10:11/112</address>
</addresses>
</vlan>
</interfaces>
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
index 4543387..3344d81 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.py
@@ -9,8 +9,8 @@ g1 = ctl.get_host("guest1")
h2 = ctl.get_host("host2")
-g1.sync_resources(modules=["IcmpPing", "Netperf"])
-h2.sync_resources(modules=["IcmpPing", "Netperf"])
+g1.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
+h2.sync_resources(modules=["IcmpPing", "Icmp6Ping",
"Netperf"])
# ------
# TESTS
@@ -18,6 +18,8 @@ h2.sync_resources(modules=["IcmpPing", "Netperf"])
offloads = ["gso", "gro", "tso"]
+ipv = ctl.get_alias("ipv")
+
ping_mod = ctl.get_module("IcmpPing",
options={
"addr" : h2.get_ip("vlan10"),
@@ -25,12 +27,28 @@ ping_mod = ctl.get_module("IcmpPing",
"iface" : g1.get_devname("guestnic"),
"interval" : 0.1
})
+
+ping_mod6 = ctl.get_module("Icmp6Ping",
+ options={
+ "addr" : h2.get_ip("vlan10", 1),
+ "count" : 100,
+ "iface" : g1.get_devname("guestnic"),
+ "interval" : 0.1
+ })
+
netperf_srv = ctl.get_module("Netperf",
options={
"role" : "server",
"bind" : g1.get_ip("guestnic")
})
+netperf_srv6 = ctl.get_module("Netperf",
+ options={
+ "role" : "server",
+ "bind" : g1.get_ip("guestnic", 1),
+ "netperf_opts" : " -6",
+ })
+
netperf_cli_tcp = ctl.get_module("Netperf",
options={
"role" : "client",
@@ -51,16 +69,61 @@ netperf_cli_udp = ctl.get_module("Netperf",
h2.get_ip("vlan10")
})
+netperf_cli_tcp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("guestnic", 1),
+ "duration" : 60,
+ "testname" : "TCP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
h2.get_ip("vlan10", 1)
+ })
+
+netperf_cli_udp6 = ctl.get_module("Netperf",
+ options={
+ "role" : "client",
+ "netperf_server" :
+ g1.get_ip("guestnic", 1),
+ "duration" : 60,
+ "testname" : "UDP_STREAM",
+ "netperf_opts" :
+ "-L %s -6" %
h2.get_ip("vlan10", 1)
+ })
+
for offload in offloads:
for state in ["on", "off"]:
g1.run("ethtool -K %s %s %s" %
(g1.get_devname("guestnic"),
offload, state))
h2.run("ethtool -K %s %s %s" % (h2.get_devname("nic"),
offload, state))
- g1.run(ping_mod)
- server_proc = g1.run(netperf_srv, bg=True)
- ctl.wait(2)
- h2.run(netperf_cli_tcp, timeout=65)
- h2.run(netperf_cli_udp, timeout=65)
+ if ipv == 'ipv4':
+ g1.run(ping_mod)
+ server_proc = g1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp, timeout=65)
+ h2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
+
+ elif ipv == 'ipv6':
+ g1.run(ping_mod6)
+ server_proc = g1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp6, timeout=65)
+ h2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
+
+ else:
+ g1.run(ping_mod)
+ server_proc = g1.run(netperf_srv, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp, timeout=65)
+ h2.run(netperf_cli_udp, timeout=65)
+ server_proc.intr()
- server_proc.intr()
+ g1.run(ping_mod6)
+ server_proc = g1.run(netperf_srv6, bg=True)
+ ctl.wait(2)
+ h2.run(netperf_cli_tcp6, timeout=65)
+ h2.run(netperf_cli_udp6, timeout=65)
+ server_proc.intr()
diff --git a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.xml
b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.xml
index 50eb792..13a71cd 100644
--- a/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.xml
+++ b/recipes/regression_tests/phase2/virtual_ovs_bridge_vlan_in_host.xml
@@ -1,4 +1,7 @@
<lnstrecipe>
+ <define>
+ <alias name="ipv" value="both" />
+ </define>
<network>
<host id="host1">
<interfaces>
@@ -22,6 +25,7 @@
<eth id="guestnic" label="to_guest">
<addresses>
<address>192.168.10.10/24</address>
+ <address>2002::10:10/112</address>
</addresses>
</eth>
</interfaces>
@@ -42,11 +46,12 @@
</slaves>
<addresses>
<address>192.168.10.11/24</address>
+ <address>2002::10:11/112</address>
</addresses>
</vlan>
</interfaces>
</host>
</network>
- <task python="./virtual_ovs_bridge_vlan_in_host.py" />
+ <task python="virtual_ovs_bridge_vlan_in_host.py" />
</lnstrecipe>