Skip to content

Comments

Adjusting test_stress_arp is it can handle cases of ipv6-only topologies .#20932

Merged
roy-sror merged 95 commits intosonic-net:masterfrom
gshemesh2:stress_arp_ipv6
Oct 28, 2025
Merged

Adjusting test_stress_arp is it can handle cases of ipv6-only topologies .#20932
roy-sror merged 95 commits intosonic-net:masterfrom
gshemesh2:stress_arp_ipv6

Conversation

@gshemesh2
Copy link
Contributor

Description of PR

Summary:
Fixes # (issue)

Type of change

  • Bug fix
  • Testbed and Framework(new/improvement)
  • New Test case
    • Skipped for non-supported platforms
  • Test case improvement

Back port request

  • 202205
  • 202305
  • 202311
  • 202405
  • 202411
  • 202505

Approach

What is the motivation for this PR?

Adjusting test_stress_arp is it can handle cases of ipv6-only topologies .

How did you do it?

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.

How did you verify/test it?

Ran it on Nvidia platforms in IPv6 and IPv4 topologies.

Any platform specific information?

No

Supported testbed topology if it's a new test case?

IPv6 and IPv4 topologies.

Documentation

yifan-nexthop pushed a commit to nexthop-ai/sonic-mgmt that referenced this pull request Jan 14, 2026
…ies . (sonic-net#20932)

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.

Signed-off-by: YiFan Wang <yifan@nexthop.ai>
yifan-nexthop pushed a commit to nexthop-ai/sonic-mgmt that referenced this pull request Jan 14, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
Signed-off-by: YiFan Wang <yifan@nexthop.ai>
mssonicbld pushed a commit to mssonicbld/sonic-mgmt that referenced this pull request Jan 20, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
PriyanshTratiya pushed a commit to PriyanshTratiya/sonic-mgmt that referenced this pull request Jan 21, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
Signed-off-by: Priyansh Tratiya <ptratiya@microsoft.com>
r12f pushed a commit to Azure/sonic-mgmt.msft that referenced this pull request Jan 23, 2026
…cases of ipv6-only topologies . #20932 (#923)

Manual cherry-pick of PR
sonic-net/sonic-mgmt#20932

Adjusting test_stress_arp is it can handle cases of ipv6-only topologies
.
mssonicbld pushed a commit to mssonicbld/sonic-mgmt that referenced this pull request Jan 23, 2026
…ies . (sonic-net#20932)

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.
@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202511: #22112

gshemesh2 added a commit to gshemesh2/sonic-mgmt that referenced this pull request Jan 26, 2026
…ies . (sonic-net#20932)

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.

Signed-off-by: Guy Shemesh <gshemesh@nvidia.com>
lakshmi-nexthop pushed a commit to lakshmi-nexthop/sonic-mgmt that referenced this pull request Jan 28, 2026
…ies . (sonic-net#20932)

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.

Signed-off-by: Lakshmi Yarramaneni <lakshmi@nexthop.ai>
StormLiangMS pushed a commit that referenced this pull request Jan 29, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by #20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
Co-authored-by: vkjammala-arista <152394203+vkjammala-arista@users.noreply.github.com>
ytzur1 pushed a commit to ytzur1/sonic-mgmt that referenced this pull request Jan 29, 2026
…ies . (sonic-net#20932)

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.
ytzur1 pushed a commit to ytzur1/sonic-mgmt that referenced this pull request Feb 2, 2026
…ies . (sonic-net#20932)

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.

Signed-off-by: Yael Tzur <ytzur@nvidia.com>
ytzur1 pushed a commit to ytzur1/sonic-mgmt that referenced this pull request Feb 2, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
Signed-off-by: Yael Tzur <ytzur@nvidia.com>
abhishek-nexthop pushed a commit to nexthop-ai/sonic-mgmt that referenced this pull request Feb 6, 2026
…ies . (sonic-net#20932)

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.
abhishek-nexthop pushed a commit to nexthop-ai/sonic-mgmt that referenced this pull request Feb 6, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
lakshmi-nexthop pushed a commit to lakshmi-nexthop/sonic-mgmt that referenced this pull request Feb 11, 2026
…) (sonic-net#22066)

1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
Co-authored-by: vkjammala-arista <152394203+vkjammala-arista@users.noreply.github.com>
Signed-off-by: Lakshmi Yarramaneni <lakshmi@nexthop.ai>
nnelluri-cisco pushed a commit to nnelluri-cisco/sonic-mgmt that referenced this pull request Feb 12, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
Signed-off-by: nnelluri-cisco <nnelluri@cisco.com>
rraghav-cisco pushed a commit to rraghav-cisco/sonic-mgmt that referenced this pull request Feb 13, 2026
…ies . (sonic-net#20932)

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.

Signed-off-by: Raghavendran Ramanathan <rraghav@cisco.com>
rraghav-cisco pushed a commit to rraghav-cisco/sonic-mgmt that referenced this pull request Feb 13, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
Signed-off-by: Raghavendran Ramanathan <rraghav@cisco.com>
rraghav-cisco pushed a commit to rraghav-cisco/sonic-mgmt that referenced this pull request Feb 18, 2026
…ies . (sonic-net#20932)

In IPv6-only topologies, use 'ip -6 neigh flush all' insted of 'ip -stats neigh flush all' to make it more focus on IPv6 only, and reduce the chance of unsuccessful execution of a command.

Add skip for test_ipv4_arp in case of ipv6 only topology.

Signed-off-by: Raghavendran Ramanathan <rraghav@cisco.com>
rraghav-cisco pushed a commit to rraghav-cisco/sonic-mgmt that referenced this pull request Feb 18, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
Signed-off-by: Raghavendran Ramanathan <rraghav@cisco.com>
anilal-amd pushed a commit to anilal-amd/anilal-forked-sonic-mgmt that referenced this pull request Feb 19, 2026
1) Use "enum_rand_one_per_hwsku_frontend_hostname" for "test_ipv6_nd_incomplete"
   to select the duthost (as being used by other config fixtures like "config_facts",
   "ip_and_intf_info" etc). [Test was updated recently in PR20780 to use
   "enum_rand_one_per_hwsku_frontend_hostname" fixture but it seems mistakenly
   reverted by sonic-net#20932]

2) Most of testcases are sending protocol packets (arp, ipv6_echo requests etc) from
   server towards ToR device. On dualtor, these protocol packets will be processed by
   both the ToR duts and thus NEIGH_TABLE in APPL_DB will be populated in both the
   duts (though hardware/ASIC_DB programming will happen only on active ToR).

   Fix: It's always better to clear arp and fdb tables on both the ToRs before and
   after the testcase by updating "arp_cache_fdb_cleanup" fixture to iterate over
   "duthosts" for cleanup.

Signed-off-by: Vinod <vkjammala@arista.com>
Signed-off-by: Zhuohui Tan <zhuohui.tan@amd.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants