[NB DB] Announcements are not withdrawn from bgp-nic in timely manner
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
ovn-bgp-agent |
New
|
Undecided
|
Unassigned |
Bug Description
In non-DVR scenario when router is moved from one gateway node to another, router IP announcements remain on bgp-nic interface for around 5 minutes, after router is being failovered to another net node.
In the meanwhile, outgoing traffic is stuck during this time:
# ovn-nbctl list Logical_router_port db79bd3a-
_uuid : db79bd3a-
enabled : []
external_ids : {"neutron:
gateway_chassis : [2f89e011-
ha_chassis_group : []
ipv6_prefix : []
ipv6_ra_configs : {}
mac : "fa:16:3e:ce:f7:a3"
name : lrp-16555e74-
networks : ["203.0.113.54/28"]
options : {reside-
peer : []
status : {hosting-
#
# openstack network agent show 67b47de0-
+------
| Field | Value |
+------
| agent_type | OVN Controller Gateway agent |
| alive | :-) |
| configuration | {'chassis_name': '67b47de0-
| host | os-net01-az1 |
+------
root@os-
38: bgp-nic: <BROADCAST,
link/ether 2e:82:37:d0:1e:8d brd ff:ff:ff:ff:ff:ff
inet 203.0.113.60/32 scope global bgp-nic
valid_lft forever preferred_lft forever
inet 203.0.113.54/32 scope global bgp-nic
valid_lft forever preferred_lft forever
inet6 fe80::2c82:
valid_lft forever preferred_lft forever
root@os-
root@os-net01-az1# ip a sh bgp-nic
23: bgp-nic: <BROADCAST,
link/ether 2e:ba:cb:41:49:20 brd ff:ff:ff:ff:ff:ff
inet6 fe80::2cba:
valid_lft forever preferred_lft forever
root@os-net01-az1#
root@os-
Thu Mar 14 18:25:29 UTC 2024
root@os-
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on bond0.3114, link-type EN10MB (Ethernet), snapshot length 262144 bytes
18:28:12.118309 IP 203.0.113.54 > 8.8.8.8: ICMP echo request, id 5264, seq 772, length 64
18:28:13.142381 IP 203.0.113.54 > 8.8.8.8: ICMP echo request, id 5264, seq 773, length 64
18:28:14.166532 IP 203.0.113.54 > 8.8.8.8: ICMP echo request, id 5264, seq 774, length 64
18:28:15.190529 IP 203.0.113.54 > 8.8.8.8: ICMP echo request, id 5264, seq 775, length 64
18:28:16.214656 IP 203.0.113.54 > 8.8.8.8: ICMP echo request, id 5264, seq 776, length 64
^C
5 packets captured
5 packets received by filter
0 packets dropped by kernel
root@os-
This issue does not happen with SB DB driver, where announcements are synced instantly on action in NB DB.
summary: |
- [NB DB] Announcements are not withdrawn from bgp-nic + [NB DB] Announcements are not withdrawn from bgp-nic in timely manner |
summary: |
- [SB DB] Announcements are withdrawn from bgp-nic prematurely causing - downtimes + [NB DB] Announcements are not withdrawn from bgp-nic in timely manner |
Actually, after checking more on that, I assume that this report is invalid. It;s just NB/SB drivers behaviour difference that makes think there's smth wrong with the driver.
While SB DB driver does move IPs announcements right away - hosts are still being unreachable for significant amount of time, since routes are not withdrawn by FRR.
At the same time NB DB driver just moves IPs together with FRR reconciliation from what I got.
So feel free to mark as invalid (or maybe it's just a thing that worth documenting).