On Fri, Dec 18, 2015 at 9:07 PM, Patrick Kelsey <[email protected]
<mailto:[email protected]>> wrote:

> > Further, per-thread FIBs may not solve your scaling problem. You
>initially
> > stated that your objection to VNET was that you would need a minimum
>of "A
> > * B * C threads to ensure that any given service on any single tenant
> > network could fully utilize the system's resources to process
>requests".
> > If you assign threads to a particular FIB, then you are back in the A
>* B
> > * C scaling model that you didn't want.
>
> I think it would be reduced to A * C threads, where A was the number of
> services and C the number of CPUs - what you would drop is the B
>dimension
> (replication of service connections across all tenant networks).

I may not have stated this clearly, so I'll restate it.

I see two main alternatives:

1. There is a stable relationship between threads and FIBs. This requires
dedicating threads to a particular FIB (and potentially leads back to the
A * B * C scaling model, although I admit that depends on some of the
implementation details).

2. Threads service requests from multiple FIBs. This requires changing the
default FIB for a thread every time it switches to servicing a different
request. This could be quite complex.

If Ryan is thinking about a different model, he can correct me. :-)

Jonathan


_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-transport
To unsubscribe, send any mail to "[email protected]"

Reply via email to