Date: Fri, 14 Nov 2003 11:22:58 -0800 From: Brooks Davis <brooks@one-eyed-alien.net> To: John Polstra <jdp@polstra.com> Cc: freebsd-net@freebsd.org Subject: Re: what about 5000 .. 10000 VLANs in one system? Message-ID: <20031114192258.GD28455@Odin.AC.HMC.Edu> In-Reply-To: <XFMail.20031114105355.jdp@polstra.com> References: <20031114184700.GC28455@Odin.AC.HMC.Edu> <XFMail.20031114105355.jdp@polstra.com>
next in thread | previous in thread | raw e-mail | index | archive | help
--EY/WZ/HvNxOox07X Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Nov 14, 2003 at 10:53:55AM -0800, John Polstra wrote: > On 14-Nov-2003 Brooks Davis wrote: > >=20 > > I think is should work, but performance may be poor. Currently, > > vlan_input() finds the correct vlan by searching the list of all vlans > > until it finds the correct one. For that many vlans, it might be > > necessicary to modify the code to use some form of balanced tree instead > > of a simple list. This should be fairly straight forward to fix. >=20 > Why not simply index directly into an array of 4096 pointers? Anybody > running that many VLANs can afford the extra 16 kB per physical > interface. I suggested the balanced tree because we've got two implementations in sys/tree.h, but you are correct that the space probably isn't worth the overhead of the trees. You'd have to use per physical interface trees anyway, so that part would be the same. -- Brooks --=20 Any statement of the form "X is the one, true Y" is FALSE. PGP fingerprint 655D 519C 26A7 82E7 2529 9BF0 5D8E 8BE9 F238 1AD4 --EY/WZ/HvNxOox07X Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQE/tSuQXY6L6fI4GtQRAisYAJ48TiJjeeMm2Wyd4tpQhuU5q6xg1gCgkJPD aJwpoqSPe3Hzz0ltYvhSHYQ= =ZCHr -----END PGP SIGNATURE----- --EY/WZ/HvNxOox07X--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031114192258.GD28455>