This is a first step in the effort to enhance dynamic routing support
(added in 25.03 [0]) in order to support integration with BGP EVPN
speakers in the fabric.

The series introduces a couple of new modules in ovn-controller that
allow it to interact with the Linux neighbor tables through Netlink.

The end goal is to provide ovn-controller with the ability to detect
dynamically learned remote EVPN VTEPs and remote MAC / MAC+IP entries.
It also allows ovn-controller to inject neighbor entries for locally
reachable (through OVN) workload MAC and IP addresses.

NOTE: this series is sent as RFC because it's only part of the complete
EVPN integration solution.  The proposed solution has been discussed in
the recent OVN technical community meetings [1] [2] [3] and, in summary,
consists of implementing the following tasks:

1. Support for neighbor table interaction:
   https://issues.redhat.com/browse/FDP-1416
   [this series]
2. Support for learning remote EVPN VTEPs:
   https://issues.redhat.com/browse/FDP-1385
   [to be implemented]
3. Support for learning remote MACs through EVPN:
   https://issues.redhat.com/browse/FDP-1387
   [to be implemented]
4. Support for learning remote IPs through EVPN:
   https://issues.redhat.com/browse/FDP-1388
   [to be implemented]
5. Support for advertising OVN owned MAC addresses through EVPN:
   https://issues.redhat.com/browse/FDP-1389
   [to be implemented]
6. Support for advertising OVN owned IPs through EVPN:
   https://issues.redhat.com/browse/FDP-1390
   [to be implemented]
7. Ensuring that L3 EVPNs work with the OVN EVPN integration:
   https://issues.redhat.com/browse/FDP-1391
   [to be implemented]

[0] 
https://github.com/ovn-org/ovn/blob/342eb7fec33392642bb7b79526851bb1f4eda880/NEWS#L89-L117
[1] 
https://docs.google.com/presentation/d/10uXTbC23895nDouCI27SWDr5RTxHvQ2Gmjn1YGG_XjY
[2] https://mail.openvswitch.org/pipermail/ovs-dev/2025-May/423330.html
[3] https://mail.openvswitch.org/pipermail/ovs-dev/2025-June/424289.html

Dumitru Ceara (5):
  ovs: Bump submodule to get sparse AF_BRIDGE definition.
  controller: Support monitoring/updating neighbor entries through
    Netlink.
  controller: Watch for (Linux) neighbor changes.
  controller: Add host-if-monitor to track (Linux) interface indices.
  controller: Add I-P to monitor host interfaces and synchronize
    neighbors.

 controller/automake.mk                  |  15 +-
 controller/host-if-monitor-stub.c       |  43 +++
 controller/host-if-monitor.c            | 141 +++++++
 controller/host-if-monitor.h            |  30 ++
 controller/neighbor-exchange-netlink.c  | 475 ++++++++++++++++++++++++
 controller/neighbor-exchange-netlink.h  |  66 ++++
 controller/neighbor-exchange-stub.c     |  30 ++
 controller/neighbor-exchange.c          |  85 +++++
 controller/neighbor-exchange.h          |  36 ++
 controller/neighbor-table-notify-stub.c |  57 +++
 controller/neighbor-table-notify.c      | 244 ++++++++++++
 controller/neighbor-table-notify.h      |  45 +++
 controller/neighbor.c                   |  69 ++++
 controller/neighbor.h                   |  72 ++++
 controller/ovn-controller.c             | 239 +++++++++++-
 ovs                                     |   2 +-
 16 files changed, 1645 insertions(+), 4 deletions(-)
 create mode 100644 controller/host-if-monitor-stub.c
 create mode 100644 controller/host-if-monitor.c
 create mode 100644 controller/host-if-monitor.h
 create mode 100644 controller/neighbor-exchange-netlink.c
 create mode 100644 controller/neighbor-exchange-netlink.h
 create mode 100644 controller/neighbor-exchange-stub.c
 create mode 100644 controller/neighbor-exchange.c
 create mode 100644 controller/neighbor-exchange.h
 create mode 100644 controller/neighbor-table-notify-stub.c
 create mode 100644 controller/neighbor-table-notify.c
 create mode 100644 controller/neighbor-table-notify.h
 create mode 100644 controller/neighbor.c
 create mode 100644 controller/neighbor.h

-- 
2.49.0

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to