Gentle ping on this series. All feedback from the v6 review has been addressed in v7:
- Dropped the Advertised_MAC_Binding "type" column entirely. northd now only populates rows that are meant to be advertised, so ovn-controller advertises every row as a Type-2 MAC+IP neighbor and checks the 'fdb' token separately. - Split the incremental advertised-MAC-binding sync change handler into its own patch (2/3), together with a test for the previously broken toggle behaviour. - Simplified neighbor_collect_advertised_mac_bindings() (no more per-row type / is_nat branching). It still applies cleanly on current main. I'd appreciate another look whenever you have a chance. Thanks, Chanyeol 2026년 6월 28일 (일) 오후 7:12, chanyeol yoon <[email protected]>님이 작성: > > From: Chanyeol Yoon <[email protected]> > > A distributed dnat_and_snat NAT entry (an OpenStack-style floating IP, > with both 'external_mac' and 'logical_port' set) is not advertised over > BGP-EVPN: only ports attached to the EVPN-enabled provider Logical > Switch are covered, so floating IPs stay unreachable from EVPN peers. > > This series advertises those floating IPs as EVPN Type-2 MAC+IP routes. > ovn-northd publishes the NAT's external IP/MAC into the SB > Advertised_MAC_Binding table of the provider Logical Switch that carries > the NAT's distributed gateway port, gated by a new 'nat' token of the > switch 'dynamic-routing-redistribute' option (independent of 'ip'). > ovn-controller then programs those into the EVPN advertise interface. > > v6 -> v7: > - Dropped the Advertised_MAC_Binding 'type' column entirely. As Ales > pointed out, ovn-northd already only populates a row when the > datapath opted into advertising it (via the 'ip'/'nat' tokens), so > ovn-controller can advertise every row it finds and only needs to > gate the FDB on the 'fdb' token -- no per-row token re-check. This > removes the SB schema change from the series. > - Simplified the controller side accordingly: a single pass over the > Advertised_MAC_Binding rows, advertised as Type-2 MAC+IP neighbors, > additionally programmed into the FDB when 'fdb' is set. > - Split the en-advertised-mac-binding-sync northd change handler into > its own patch (2/3) with a test exercising the distributed NAT path > through incremental processing. > - Rebased onto current main. > > v5 -> v6: > - Rebased onto main (resolved ovn-sb.ovsschema and NEWS conflicts with > the EVPN ARP/ND suppression series). > > Earlier revisions addressed Ales' v4 review (NAT advertise documentation > on the 'dynamic-routing-advertise' option, dropping comments on > NULL/handler inputs, and gating the recompute on the northd tracked > data instead of a full recompute). > > Chanyeol Yoon (3): > northd: Advertise distributed NAT IPs over EVPN. > northd: Handle advertised MAC binding sync incrementally. > controller: Advertise EVPN MAC bindings. > > .../topics/dynamic-routing/architecture.rst | 12 ++ > NEWS | 6 + > controller/neighbor.c | 52 ++++-- > lib/ovn-util.c | 3 + > lib/ovn-util.h | 3 +- > northd/en-advertised-route-sync.c | 132 ++++++++++++++- > northd/en-advertised-route-sync.h | 3 + > northd/inc-proc-northd.c | 7 +- > ovn-nb.xml | 27 +++ > tests/ovn-inc-proc-graph-dump.at | 3 +- > tests/ovn-northd.at | 154 ++++++++++++++++++ > 11 files changed, 374 insertions(+), 28 deletions(-) > > > base-commit: d34f9316b2076f0a55b141a7434a3a66eac9a630 > -- > 2.54.0 (Apple Git-157) > _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
