Date: Sat, 19 Dec 2015 20:35:45 -0500 From: "Jonathan T. Looney" <jtl@freebsd.org> To: Patrick Kelsey <kelsey@ieee.org>, Ryan Stone <rysto32@gmail.com> Cc: "freebsd-transport@freebsd.org" <freebsd-transport@freebsd.org>, "Gleb Smirnoff" <glebius@freebsd.org> Subject: Re: Extending FIBs to support multi-tenancy Message-ID: <D29B6D9E.4E007%jlooney@juniper.net> In-Reply-To: <CAD44qMWbLMO%2BD0qsFs6=zb64TW_VQTOKVSTHC3QrND8_%2BUDTzA@mail.gmail.com> References: <CAFMmRNxVUDNQ-H=r24iOQOAbnvXi17s77HC-ap%2B4_K1AHEbSvA@mail.gmail.com> <D29A146A.4DCC0%jlooney@juniper.net> <CAD44qMWbLMO%2BD0qsFs6=zb64TW_VQTOKVSTHC3QrND8_%2BUDTzA@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, Dec 18, 2015 at 9:07 PM, Patrick Kelsey <kelsey@ieee.org <mailto:jtl@freebsd.org>> 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D29B6D9E.4E007%jlooney>