On Thu, Feb 6, 2025 at 3:57 AM Ilya Maximets <[email protected]> wrote:
>
> This patch set introduces ability to directly connect switches,
> including transit switches, in order to achieve higher total port count
> and locality of changes in L2 topologies spread across multiple
> availability zones.  And while tailored for this use case, the changes
> do not impose any limitations and should allow for all kinds of other
> different topologies.
>
> Amount of the logic code changes is relatively small, most of the diff
> are new tests for the introduced functionality.
>
>
> Version 2:
>
>   * Rebased on top of latest changes on the main branch.
>   * Improved validation of the peer in northd. [Mark]
>   * Added a test for a switch port with an address set. [Mark]
>
>
> Ilya Maximets (2):
>   northd: Add support for spine-leaf logical switch topology.
>   ic: Add support for spine-leaf topology for transit switches.

Hi Ilya,

Thanks for adding this feature.  I applied both the patches to the
main.  I had to do a minor rebase.

I see one small issue  with the spine switch.  Since all the spine
switch ports have unknown address,
the packet will be cloned to N - 1 logical switches if N switches connect to it.

I think we should enable "fdb learn" in the spine switch with the below changes

-----------------------------------------------
diff --git a/northd/northd.c b/northd/northd.c
index 880112c3b9..e77936fbe9 100644
--- a/northd/northd.c
+++ b/northd/northd.c
@@ -5682,6 +5682,7 @@ build_lswitch_learn_fdb_op(
     ovs_assert(op->nbsp);

     if (!op->n_ps_addrs && op->has_unknown && (!strcmp(op->nbsp->type, "") ||
+        !strcmp(op->nbsp->type, "switch") ||
         (lsp_is_localnet(op->nbsp) && localnet_can_learn_mac(op->nbsp)))) {
         ds_clear(match);
         ds_clear(actions);
-----------------------------------------------

What do you think ?  Any concerns or objections ?   If not, can you
submit a follow up patch to enable this ?

Thanks
Numan



>
>  NEWS                      |   3 +
>  controller/binding.c      |  45 ++++++--
>  ic/ovn-ic.c               |  56 +++++++--
>  lib/ovn-util.c            |   1 +
>  northd/northd.c           |  57 +++++++++-
>  northd/northd.h           |   2 +
>  ovn-nb.ovsschema          |   5 +-
>  ovn-nb.xml                |  21 ++++
>  tests/ovn-ic.at           | 161 ++++++++++++++++++++++++++
>  tests/ovn-nbctl.at        |  21 +++-
>  tests/ovn-northd.at       |  72 ++++++++++++
>  tests/ovn.at              | 233 ++++++++++++++++++++++++++++++++++++++
>  utilities/ovn-nbctl.8.xml |  10 +-
>  utilities/ovn-nbctl.c     |  21 +++-
>  14 files changed, 676 insertions(+), 32 deletions(-)
>
> --
> 2.47.0
>
> _______________________________________________
> dev mailing list
> [email protected]
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to