Build #1,675

FreeRangeRouting Protocol Suite

Build: #1675 was successful Changes by Russ White <russ@riw.us>

Build result summary

Details

Completed
Duration
116 minutes
Labels
version=frr-6_1-dev-743-g2379dbecbgit=https_//github_com/frrouting/frr_gitbuildurl=https_//ci1_netdef_org/browse/frr-frr-1675branch=master
Revision
2379dbecbd3b56ef1affc9127b8eb44f61d591fa 2379dbecbd3b56ef1affc9127b8eb44f61d591fa
Total tests
7016
First to pass since
#1674 (Changes by Donald Sharp and Ruben Kerkhof <ruben@rubenkerkhof.com>)

Code commits

Author Commit Message Commit date
Russ White <russ@riw.us> Russ White <russ@riw.us> 2379dbecbd3b56ef1affc9127b8eb44f61d591fa 2379dbecbd3b56ef1affc9127b8eb44f61d591fa Merge pull request #3202 from donaldsharp/evpn_dump
Evpn dump
Anuradha Karuppiah <anuradhak@cumulusnetworks.com> Anuradha Karuppiah <anuradhak@cumulusnetworks.com> 3e3aa88e5fbd6a19e37b7c211013b8dc73d61ef7 m 3e3aa88e5fbd6a19e37b7c211013b8dc73d61ef7 bgpd: perform route selection again when the local path is deleted
This is needed to install the remote dst when a more preferred local
path is removed.

Ticket: CM-22685
Reviewed By: CCR-7936

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Anuradha Karuppiah <anuradhak@cumulusnetworks.com> Anuradha Karuppiah <anuradhak@cumulusnetworks.com> 6d8c603a930f229aac931aac2f556f79f4b7b437 m 6d8c603a930f229aac931aac2f556f79f4b7b437 bgpd: use IP address as tie breaker if the MM seq number is the same
Same sequence number handling is specified by RFC 7432 -
[
If two (or more) PEs advertise the same MAC address with the same
sequence number but different Ethernet segment identifiers, a PE that
receives these routes selects the route advertised by the PE with the
lowest IP address as the best route.

If the PE is the originator of the MAC route and it receives the same
MAC address with the same sequence number that it generated, it will
compare its own IP address with the IP address of the remote PE and
will select the lowest IP.  If its own route is not the best one, it
will withdraw the route.
]

To implement that specification this commit uses nexthop IP as a tie
breaker between two paths of equal seq number with lower IP winning.

Now if a local path already exists with the same sequence number but higher
(local-VTEP) IP it is evicted (deleted and withdrawn from the peers) and
the winning new remote path is installed in zebra. This is existing code
and handled implicitly via evpn_route_select_install.

If a local path is rxed from zebra with the same sequence as the
current remote winner it is rejected (not installed in the bgp
routing tables) and zebra is asked to re-install the older/remote winner.
This is a race condition that can only happen if bgp's add and zebra's add
cross paths. Additional handling has been added in this commit via
evpn_cleanup_local_non_best_route to take care of the race condition.

Ticket: CM-22674
Reviewed By: CCR-7937

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Anuradha Karuppiah <anuradhak@cumulusnetworks.com> Anuradha Karuppiah <anuradhak@cumulusnetworks.com> 4fd5ea4b3edf602e35373b6548639aa0a6dda6c2 m 4fd5ea4b3edf602e35373b6548639aa0a6dda6c2 zebra: make neigh active when it is modified from local to remote
This is a fixup to commit -
f32ea5c07 - zebra: act on kernel notifications for remote neighbors

The original commit handled a race condition between kernel and zebra
that would result in an inconsistent state i.e.
kernel has an offload/remote neigh
zebra has a local neigh

The original commit missed setting the neigh to active when zebra
tried to resolve the inconsistency by modifying the local neigh to
remote neigh on hearing back its own kernel update. Fixed here.

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>
Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com>

Ticket: CM-22700
Anuradha Karuppiah <anuradhak@cumulusnetworks.com> Anuradha Karuppiah <anuradhak@cumulusnetworks.com> 8029b21687a4de7364607fc2aa9925d770a73507 m 8029b21687a4de7364607fc2aa9925d770a73507 bgpd: hidden commands to add/del a local mac
local mac add/del comes from zebra. the hidden commands help verify
various race conditions between bgp and zebra.

Ticket: CM-22687
Reviewed By: CCR-7939

Signed-off-by: Anuradha Karuppiah <anuradhak@cumulusnetworks.com>

Tests

Fixed tests 3
Status Test Failing since View job Duration
Successful test_bfd_topo1 test_bgp_convergence History
Failing since build #1674 (Changes by Donald Sharp and Ruben Kerkhof <ruben@rubenkerkhof.com>) Topology Tests on Ubuntu 16.04 arm8 3 secs
Successful test_bfd_topo1 test_bgp_fast_convergence History
Failing since build #1674 (Changes by Donald Sharp and Ruben Kerkhof <ruben@rubenkerkhof.com>) Topology Tests on Ubuntu 16.04 arm8 3 secs
Successful test_bfd_topo1 test_bgp_fast_reconvergence History
Failing since build #1674 (Changes by Donald Sharp and Ruben Kerkhof <ruben@rubenkerkhof.com>) Topology Tests on Ubuntu 16.04 arm8 3 secs