From owner-freebsd-net@freebsd.org  Sat Aug 15 14:48:02 2020
Return-Path: <owner-freebsd-net@freebsd.org>
Delivered-To: freebsd-net@mailman.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.nyi.freebsd.org (Postfix) with ESMTP id F15063BC40D
 for <freebsd-net@mailman.nyi.freebsd.org>;
 Sat, 15 Aug 2020 14:48:02 +0000 (UTC)
 (envelope-from asomers@gmail.com)
Received: from mailman.nyi.freebsd.org (unknown [127.0.1.3])
 by mx1.freebsd.org (Postfix) with ESMTP id 4BTNTG5Jjzz4Cyt
 for <freebsd-net@freebsd.org>; Sat, 15 Aug 2020 14:48:02 +0000 (UTC)
 (envelope-from asomers@gmail.com)
Received: by mailman.nyi.freebsd.org (Postfix)
 id B32103BBD76; Sat, 15 Aug 2020 14:48:02 +0000 (UTC)
Delivered-To: net@mailman.nyi.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.nyi.freebsd.org (Postfix) with ESMTP id B281E3BC3BD;
 Sat, 15 Aug 2020 14:48:02 +0000 (UTC)
 (envelope-from asomers@gmail.com)
Received: from mail-oi1-f178.google.com (mail-oi1-f178.google.com
 [209.85.167.178])
 (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)
 key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256
 client-signature RSA-PSS (2048 bits) client-digest SHA256)
 (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 4BTNTF5NzWz4CsL;
 Sat, 15 Aug 2020 14:48:01 +0000 (UTC)
 (envelope-from asomers@gmail.com)
Received: by mail-oi1-f178.google.com with SMTP id o21so10758532oie.12;
 Sat, 15 Aug 2020 07:48:01 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=xGjUfKxn9PfIdLBCx9jG/5F1X1T8UbpBBrQCqcW2N5g=;
 b=TAxsJ3ivYmXWVCMyQg1mQY9Ggwo4jmg8PHt+Djgzs59cWBgQN+R/QgqM2A0mwdzJDy
 R7syZix4vvhluaUbIB3UYRcjn7T5rPVDz93YJlFUSjAIapzlFeGP0i4USuyDBalnD+QH
 JzZB6CnG/y8nUhtWgjITXxKfg7/cnyCwRQ3oh0j255rFv/WIgPtQTcyDGJwg0g0c4OOU
 7E/vBlkNKEd1qPnwns54XPvBMowkrzwB9UdwIQruuSr7HALL9S8Gf2vigQbUB5rMsgFm
 n3pApv54oaEJI7CiXpe2AH0O8mKVrbQtMN+lKag6Pff/vO63MzjH6NuS6ocyBUiFQw4x
 0k1Q==
X-Gm-Message-State: AOAM530mFm4YCNfJMXOSKuUZGPOEqESQzt1QbpUT4x+beqGulCN0q8M3
 81bnEm8MFsjFPuw7WCXuMimd3pYREL7+A/1ryGOypsPJkUU=
X-Google-Smtp-Source: ABdhPJwR1se2wLNXDPidVQouTiRnBcgdFM+UESssvfvbwGFr52Z1+1azCPvJElk6SnoLVKn1FjlR5oEmF7xECl9b8/o=
X-Received: by 2002:aca:1c0c:: with SMTP id c12mr4585022oic.73.1597502879817; 
 Sat, 15 Aug 2020 07:47:59 -0700 (PDT)
MIME-Version: 1.0
References: <236161595078191@mail.yandex.ru> <348771597489519@mail.yandex.ru>
In-Reply-To: <348771597489519@mail.yandex.ru>
From: Alan Somers <asomers@freebsd.org>
Date: Sat, 15 Aug 2020 08:47:48 -0600
Message-ID: <CAOtMX2jgFkSh6uPwhxpZKKTauWQvr2W1s5wQE1FYvXzRBjHapA@mail.gmail.com>
Subject: Re: net.add_addr_allfibs=1 behaviour deprecation
To: "Alexander V. Chernikov" <melifaro@ipfw.ru>
Cc: "current@FreeBSD.org" <current@freebsd.org>, 
 FreeBSD Stable Mailing List <freebsd-stable@freebsd.org>, net <net@freebsd.org>
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org;
 s=dkim; t=1597502882;
 h=from:from:reply-to:subject:subject:date:date:message-id:message-id:
 to:to:cc:cc:mime-version:mime-version:content-type:content-type:
 in-reply-to:in-reply-to:references:references;
 bh=xGjUfKxn9PfIdLBCx9jG/5F1X1T8UbpBBrQCqcW2N5g=;
 b=WdY0jVdn1BlbqxG5m+nvFY38qIuSOnEYKZW/QE9nKzOAbkAKQpZB+RRUHaklXE4kj3MCYA
 GDwH3oPk/oZbloOv8iEfu0j8Fu8YXdnZyZMKhDDTJU+PsT9TSWqWOuR6q5ZA2KUx1ib25z
 uXBa2myup8bGUiAUgxL7p3kTB7rUWhR2EeAKKHX+mh9fbmezEsj//uUx1ZhS9HMxukaWQN
 k671Pjqkak9a1VAqbAev/5pWNuVzCH16Jl/hNtWni11MNIRPW8N4XBcRifhlpctdC2Xcal
 SFE9bhzwQYBLXLub9pR6bQBTJMer6bMsnt2UBck2M93nj7kvk0fe0TWoqNstRQ==
ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1597502882; a=rsa-sha256; cv=none;
 b=XwDNAhwCzQWuNl5rwbLZ7vhn/pvr7x4/WC2Aff4jVQ930Sbbg88G46ouaZckjtMbnMdRzA
 gpJOF3h4VGUlKqNyUFOCFPPUDo2YEKHqanI0BxfudHKREulp94xDD6Rp5eXcZCjdtPJlle
 q0Ym5cpc70/pMi7rr5bijB8+vRL+AfWo6jK7kY+fiVzYGX1ID5RjEfsPOwRr88ZwH6DEMd
 TanUOlKq7zlD2d7Cexgn+rcQ2o8c1Z44Wrv+25FD1gWh8LCWEQh4zmVur4JvfVUrNBSy/3
 Tbq+gtAKfkjpdefa/+eYM21WzMNfZoy8yel43Nz6FNBeVgWNPj0HiidoqwiYzg==
ARC-Authentication-Results: i=1; mx1.freebsd.org; dkim=none; dmarc=none;
 spf=pass (mx1.freebsd.org: domain of asomers@gmail.com designates
 209.85.167.178 as permitted sender) smtp.mailfrom=asomers@gmail.com
X-Rspamd-Queue-Id: 4BTNTF5NzWz4CsL
X-Spamd-Bar: /
Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none;
 spf=pass (mx1.freebsd.org: domain of asomers@gmail.com designates
 209.85.167.178 as permitted sender) smtp.mailfrom=asomers@gmail.com
X-Spamd-Result: default: False [0.03 / 15.00]; ARC_NA(0.00)[];
 TO_DN_EQ_ADDR_SOME(0.00)[]; RCVD_TLS_ALL(0.00)[];
 FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4];
 R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17:c];
 NEURAL_HAM_LONG(-0.59)[-0.591];
 MIME_GOOD(-0.10)[multipart/alternative,text/plain];
 DMARC_NA(0.00)[freebsd.org]; ARC_SIGNED(0.00)[i=1];
 TO_DN_SOME(0.00)[]; URI_COUNT_ODD(1.00)[1];
 TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_HAM_SHORT(-0.24)[-0.242];
 RCVD_IN_DNSWL_NONE(0.00)[209.85.167.178:from];
 NEURAL_HAM_MEDIUM(-0.14)[-0.136];
 FORGED_SENDER(0.30)[asomers@freebsd.org,asomers@gmail.com];
 RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.167.178:from];
 R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+,1:+,2:~];
 ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US];
 FROM_NEQ_ENVFROM(0.00)[asomers@freebsd.org,asomers@gmail.com];
 FREEMAIL_ENVFROM(0.00)[gmail.com]; RCVD_COUNT_TWO(0.00)[2]
Content-Type: text/plain; charset="UTF-8"
X-Content-Filtered-By: Mailman/MimeDel 2.1.33
X-BeenThere: freebsd-net@freebsd.org
X-Mailman-Version: 2.1.33
Precedence: list
List-Id: Networking and TCP/IP with FreeBSD <freebsd-net.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/freebsd-net>,
 <mailto:freebsd-net-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-net/>
List-Post: <mailto:freebsd-net@freebsd.org>
List-Help: <mailto:freebsd-net-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/freebsd-net>,
 <mailto:freebsd-net-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 15 Aug 2020 14:48:03 -0000

On Sat, Aug 15, 2020 at 5:25 AM Alexander V. Chernikov <melifaro@ipfw.ru>
wrote:

> 18.07.2020, 14:22, "Alexander V. Chernikov" <melifaro@freebsd.org>:
> > Dear FreeBSD users,
> >
> > I would like to make net.add_addr_allfibs=0 as the default system
> behaviour and remove net.add_addr_allfibs.
> > To do so, I would like to collect use cases with net.add_addr_allfibs=1
> and multiple fibs, to ensure they can still be supported after removal.
> >
> > Background:
> >
> > Multi-fib support was added in r178888 [1], 12 years ago. Addition of
> interface addresses to all fibs was a feature from day 1.
> > The `net.add_addr_allfibs` sysctl  was added in r180840 [2], 12 years
> ago.
> >
> > Problem:
> > The goal of the fib support is to provide multiple independent routing
> tables, isolated from each other.
> > `net.add_addr_allfibs` default tries to shift gears in the opposite
> direction, unconditionally inserting all addresses to all of the fibs.
> >
> > It complicates the logic, kernel code and makes control plane
> performance decrease with the number of fibs.
> > It make impossible to use the same prefixes in multiple fibs, which may
> be desired given shortage of IPv4 address space.
> >
> > I do understand that there are some cases where such behaviour is
> desired.
> > For example, it can be used to achieve VRF route leaking or binding on
> address from different fibs.
> > I would like to collect such cases to consider supporting them in a
> different way.
> >
> > The goal is to make net.add_addr_allfibs=0 default behaviour and remove
> net.add_addr_allfibs.
> > It will simplify kernel fib-related code and allow bringing more
> fib-related features. It will also improve fib scaling.
> No objections has been received.
> Next steps:
> * Switch net.add_addr_allfibs to 0 ( https://reviews.freebsd.org/D26076 )
> * Provide an ability to use nexthops from different fibs
> * Remove net.add_addr_allfibs
> > Timeline:
> > Aug 1: summarising feedback and the usecases, decision on proceeding
> further
> > Aug 20 (tentative):  patches for supported usecases
> > Sep 15 (tentative):  net.add_addr_allfibs removal.
> >
> > [1]: [base Contents of /head/sys/net/route.c](
> https://svnweb.freebsd.org/base/head/sys/net/route.c?revision=178888&view=markup
> )
> > [2]: [base Diff of /head/sys/net/route.c](
> https://svnweb.freebsd.org/base/head/sys/net/route.c?r1=180839&r2=180840&)
> >
> > /Alexander
>

I just want to say that I completely agree with this proposal.
-Alan