North American Network Operators Group

Date Prev | Date Next | Date Index | Thread Index | Author Index | Historical

RE: pop server in an ISP environment

  • From: Greg A. Woods
  • Date: Mon May 29 18:55:18 2000

[ On Monday, May 29, 2000 at 10:16:03 (-0700), Roeland Meyer (E-mail) wrote: ]
> Subject: RE: pop server in an ISP environment
> The theoretical limit, on most Unix kernels, is 64K users. This
> is only because the internal representation of the uuid is
> usually an int.

You're about six years behind the times, I think!  ;-)

I'd bet that 99.9% of running Unix and Unix-like kernels that are
capable of running TCP/IP and would be used in production in an ISP
setting today are good to at least 2^31 users, if not 2^32.

The first widely used 32-bit system, Unix 32V, used a "short" to
represent the UID in the kernel (in struct proc, for example).  IIRC a
short was indeed still 16 bits on a VAX (and thus a UID was effectively
restricted to 15 bits).  By the time AT&T UNIX SysIII came along it was
a "ushort", and so definitely 16 bits.  4.3net2 still uses a u_short,
but I doubt any ISPs are using any such kernels in production.

By the time 4.4BSD is available (1994) uid_t is an "unsigned long", so
even on a 32-bit machine that's 2^32 users!  ;-)

AT&T System Vr4 (and thus SunOS-5.x) still calls uid_t just a "long" so
it's only good for 2^31 users on 32-bit system, making 32-bit 4.4BSD
boxes ~2 billion (and that's an American Billion!) times better than
32-bit SunOS-5 boxes!  ;-)  [and 64-bit 4.4BSD boxes are "about"
16140901064495857664 times better than 64-bit SunOS-5 boxes! 2^ ;-)]

> Your 5000 user limit, based on /etc/passwd, is bogus. For
> example, on Intel hardware, you will never approach even 500
> concurrent shell users (developers) without the silicon melting
> down. However, a Sun e10K can handle 5000 of such users easily.
> That same Intel box can handle over 10000 mailboxen, if you give
> it enough disk space (RAID0 spool) and memory (RAM cache) [but
> not on a single 56Kbps port <g>].

On machines which do not use a hashed database (dbm, db, etc.) for
/etc/passwd (eg. un-adorned SunOS-5.x not using NIS+) there may be some
issue with having more than say 20-30 thousand users.  More CPU and RAM
will offset this limit somewhat of course.

							Greg A. Woods

+1 416 218-0098      VE3TCP      <[email protected]>      <robohack!woods>
Planix, Inc. <[email protected]>; Secrets of the Weird <[email protected]>