Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[neighbour-mac-noptf] Fix issue 2414 by always using static arp/neighbour entry #1026

Merged
merged 9 commits into from
Aug 1, 2019
Merged

[neighbour-mac-noptf] Fix issue 2414 by always using static arp/neighbour entry #1026

merged 9 commits into from
Aug 1, 2019

Conversation

stephenxs
Copy link
Contributor

@stephenxs stephenxs commented Jul 23, 2019

Description of PR

Summary:
Fix issue 2414 by always using static arp/neighbour entry for the neighbour-mac-noptf testcase

Type of change

  • Bug fix
  • [] Testbed and Framework(new/improvement)
  • [] Test case(new/improvement)

Approach

How did you do it?

  1. alway use a static arp/neighbour for testing, since the dynamic entries are of the BGP neighbors and to change their mac address causes bgp neighbour down and route withdrew, making system busy and unable to handle mac update in time.
    we choose an interface meeting 1. routing interface 2. oper_state is up from the output of "show interface status" for the test.
  2. don't use "when" inside a nested "block" statement

How did you verify/test it?

run the testcase on t0, t1 t1-lag and ptf32

Any platform specific information?

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

Documentation

Stephen Sun added 6 commits July 22, 2019 10:38
1. fix the issue which "when" doesn't work when it is in a nested "block" statement
2. don't use the hardcoded "Ethernet0" since in topo t1-lag it belongs a PortChannel and to set ip address on such kind of interface causes orchagent terminated.
   choice a valiable routed interface for test instead.
[show_interface.py]
1. add "vlan" to int_status dict
don't use an ary/neighbour which is a bgp neighbour to do the updating neighbour's mac test,
doing in that way can cause bgp connection down and a large number of routing entries withdrawed,
failing orchagent to handle neighbour mac update in time.
use a newly added address and neighbor on an automatically selected routing interface for that test instead.
…hose oper_state are 'up' and remove startup interface stuffs
1. fix the issue which "when" doesn't work when it is in a nested "block" statement
2. alway use a static arp/neighbour for testing, since the dynamic entries are of the BGP neighbors and to change their mac address causes bgp neighbour down and route withdrew, making system busy and unable to handle mac update in time.
   we use Ethernet0 for t0 and t1, PortChannel0002 for t1-lag
Stephen Sun added 2 commits July 23, 2019 16:27
dynamically choose an interface from the output of show interface status which meets the following conditions for the test:
  1. it is a routing interface
  2. it is up.
[show_interface]
add support for the "vlan" column.
@prsunny
Copy link
Contributor

prsunny commented Aug 1, 2019

@stephanxs, I see that the test now uses 'vlan' interface. But this is not present in t1 topologies. How does it work on t1 topology?

@stephenxs
Copy link
Contributor Author

stephenxs commented Aug 1, 2019

hi Prince, it doesn't choose a vlan interface to do the test. it choose an interface which satisfies both 'up' and 'routed interface' on the dut.

@prsunny prsunny merged commit c1761f3 into sonic-net:master Aug 1, 2019
@stephenxs stephenxs deleted the pr-neighbour-mac-noptf branch August 2, 2019 05:48
lguohan pushed a commit that referenced this pull request Sep 11, 2019
[neighbour-mac-noptf] Fix issue 2414 by always using static arp/neighbour entry (#1026)

backport #1026 to 201811
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants