 |
» |
|
|
 |
The first step in configuring HPUX to be able to support a
large number of clients on a HP CIFS server is to adjust the maxusers
kernel parameter. The second step involves adjusting nproc, nfile, nflocks and ninode individually
so as to allow a large number of users to be connected simultaneously. Configuring maxusers Determine the maximum number of simultaneous clients that
will be connected and add this number to the current value of maxusers.
For example, if 2048 clients are to be supported, simply add 2048
to the current value of maxusers. Note that,
unless the parameters have been manually changed, adjusting maxusers automatically
adjusts the corresponding values for nproc, nfile and ninodes. For example, if the default maxusers value
of 32 is adjusted to 32+2048 or 2080 to support the maximum allowable
clients of 2048, the other parameters will be adjusted as follows
on a typical system: nproc will be increased to 8,468 nfile will be increased to 15,656 ninode will be increased to 9,692 If these values are found to be too large or too small for
that matter, then the individual kernel parameters can be adjusted
as described below. Configuring nproc, nfile and ninode. nproc: since
each client will be handled by one unique smbd process,
and each process will take up one entry in the process table, this
parameter has to be at least equal to the maximum number of simultaneously
connected clients. This is a necessary condition, but it will obviously
not be sufficient since there will be others processes, including
system processes beyond your control, that will take up proc table
entries. In practice then, this parameter needs to be set to the
anticipated maximum number of clients plus the number of the other
processes that will also be running concurrent with HP CIFS. nfile: when an SMBD process
is launched, it will, right at the beginning, take up 23 entries
in the system file table. This does not include any other files that the client will
open and operate on. At a minimum, therefore, the value of nfile,
should be equal to the anticipated number of simultaneous clients
times (23 + the anticipated number of files simultaneously opened
by each client). Again, this is necessary, but it may not be sufficient, since
there will be other non-HP CIFS processes that will have files opened,
concurrent with HP CIFS. ninode: unlike nfile,
each instance on an open will NOT increase the number of inode entries.
Rather, each unique opened file will only take up one entry, regardless
of how many times it is opened. Therefore this parameter should
be set to the anticipated number of UNIQUE open files used by HP
CIFS plus the number opened by other processes in the system. nflocks: each
smbd process will utilize at least ten file locks. Therefore, the
value of nflocks should, at least, be equal
to the anticipated number of simultaneous clients, multiplied by
ten (10). The use of nflocks by other applications
must also be considered.
Swap
Space Requirements |  |
Due to the one-process-per-client model of HP CIFS, perhaps
the most stringent requirement imposed on the system is that of
swap space. HPUX reserves a certain amount of swap space for each
process that is launched, to prevent it from being aborted in case
it needs to swap out some pages during times of memory pressure.
Other operating systems, only reserve swap space when it is needed.
This results in the process not finding the swap space that it needs,
in which case it has to be terminated by the OS. Each smbd process will reserve about
1.7MB of swap space. For a maximum of 2048 clients, 1.7 * 2048 or
about 4GB of swap space would be required. Therefore, HP recommends
configuring enough swap space to accommodate the maximum number
of simultaneous clients connected to the HP CIFS server. Memory
Requirements |  |
Each smbd process will need approximate
1/2 MB of memory. For 2048 clients, therefore, the system should
have at least 1 GB of physical memory. This is over and above the
requirements of other applications that will be running concurrent
with HP CIFS.
|