Re: per-FIB socket binding

Paul Vixie <[email protected]>
Newsgroups gmane.os.freebsd.devel.net
Organization FW
Message-ID <[email protected]>
> On 21.12.2024 19:34, Bjoern A. Zeeb wrote:
> > How much use are FIBs still these days?  Half of the original use cases
> > I can think of could easily and better be overcome by using vnet jails
> > with a physical or virtual interface (e.g, vcc) being delegated to the
> > vnet.

Among the other half is simple multihoming. If a host has interfaces on two networks 
then it needs two default routes which means two FIBs. Many of us use ipfw to select a 
FIB for an outbound packet based on its IP source address. Without this the next-next-
hop will wonder why we're failing BCP38 source address validation, and it may be a 
firewall which only passes traffic it expects, and it may be a differently congested network 
that upsets TCP pacing since the payloads take one path and the ACKs take the other. 
Path symmetry is an unalloyed good. Path assymetry is a livable problem but worthy of 
avoidance. Some operators just avoid multi-homing. As an operator I often don't have a 
choice about multi-homing or else my other choices are worse. FIBs make all of this 
better, and easily.

> > I would honestly know who and how FIBs are still in use today or if they
> > should be put on a list to be removed for 16 (I assume I might be
> > surprised).

I have a refactor to propose for the networking stack in 16 but more for performance and 
clarity than for correctness or simplicity. More on that another day. In any case I use FIBs 
everywhere all the time.

On Monday, December 23, 2024 10:29:01 AM UTC Andrey V. Elsukov wrote:
> Some might say that VNET is useless and should be removed instead. We
> have bhyve and old-style jails. Without VNET the kernel code will be
> robust and simple again, and easy for debugging.

I introduced Mr. Zec to NL-Net when he was first looking for sponsors, and I was very 
happy with the results, and even more so when the FreeBSD Foundation got involved and 
more so after that when Mr. Zeeb got involved. I think VNET has earned a place in 
FreeBSD's pantheon but that the form it takes in the source code (all those macros) could 
be simplified.

> FIBs are useful as is, but also can be used with "ipfw setfib" that make
> it irreplaceable.

For my primary FIB use case, ipfw is OK, but I think we need a different default. To that 
end, see Message-ID <[email protected]>.

-- 
Paul Vixie
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.