7    Tuning ASU

This chapter describes how to specify the number of clients, transport sessions, server processes, and open files for the ASU server. You might need to specify these if you want to:

7.1    Specifying the Number of Clients

By default, the ASU server is configured to service 200 clients. You can increase this number, however the ASU server will service only as many clients as there are ASU licenses.

To change the number of clients that the ASU server services, change the value of the maxclients parameter in the [ server ] section of the lanman.ini file. If you increase the number of clients, you might need to increase the number of transport sessions that the ASU server can support as described in Section 7.2.

See Appendix C for information on modifying parameters in the lanman.ini file.

7.2    Specifying the Number of Transport Sessions

If you increase the number of clients that the ASU server services, then you might need to increase the number of transport sessions that the ASU server can open. Each Windows 95 and Windows 98 client uses one session. Each Windows NT client uses two sessions. The following table shows the default session limits for the ASU transports.

Transport Default Session Limit
NetBEUI 256
TCP/IP Unlimited

Follow these steps to change the number of NetBEUI sessions:

  1. Stop the ASU server by entering the following command:

    # net stop server

  2. Stop the NetBEUI transport by entering the following command:

    # /sbin/init.d/asunbelink stop

  3. Create a stanza format attributes file. For example, to create a stanza format attributes file to increase the NetBEUI sessions to 1024, enter:

    # cat > netbeui.stanza
    netbeui:
    nb_sessions = 1024
    ^D
    

  4. Merge the attributes into the /etc/sysconfigtab file by entering the following command:

    # sysconfigdb -a -f netbeui.stanza netbeui

    If there is an existing entry in the sysconfigtab file for knbtcp or netbeui, use the -u flag to update the entry instead of the -a option to add an entry.

  5. Restart the NetBEUI transport by entering the following command:

    # /sbin/init.d/asunbelink start

  6. Restart the ASU server by entering the following command:

    # net start server

  7. Enter the following command to show the new number of NetBEUI sessions:

    # nbemon -i1

7.3    Specifying the Number of Server Processes

By default, each client acquires its own lmx.srv process until a maximum is reached. Then, the existing lmx.srv processes are assigned to additional clients in a rotating fashion.

By default, the maximum number of lmx.srv processes that the ASU server creates to service client requests is computed from the VCDistribution registry value entry and from the maxclients parameter in the lanman.ini file.

To change the default value, you assign a value to the maxserverprocs parameter in the [ server ] section of the lanman.ini file. Assigning a value to the maxserverprocs parameter overrides the value of the MinVCPerProc, MaxVCPerProc, and VCDistribution registry entries. If you set the maxserverprocs parameter, choose the largest number possible before memory swapping occurs. For example, a 2 GB system can support 350 server processes before memory swapping occurs, if no other applications are run on that system.

If you set the maxserverprocs parameter above 100, you must also change the maximum number of NetBIOS names. See Section 7.4 for information on changing the number of NetBIOS names.

See Appendix C for information on modifying parameters in the lanman.ini file.

7.4    Specifying the Number of NetBIOS Names

Each lmx.srv process needs a NetBIOS name to send datagrams. These names are lmxname#pid, where lmxname is the listen name of the ASU server and pid is the PID of the server process. The default number of NetBIOS names is 128 for TCP/IP and NetBEUI.

Follow these steps to set the number NetBIOS names for TCP/IP and NetBEUI to 200:

  1. Stop the ASU server by entering the following command:

    # net stop server

  2. Stop the ASU transports by entering the following command:

    # /sbin/init.d/asutcp stop

    To stop the NetBEUI transport, enter:

    # /sbin/init.d/asunbelink stop

  3. Create a stanza format attributes file. For example, to create a stanza format attributes file to increase the TCP/IP names to 200, enter:

    # cat > knbtcp.stanza
    knbtcp:
    knbnames = 200
    ^D
    

    To create a stanza format attributes file to increase the NetBEUI names to 200, enter:

    # cat > netbeui.stanza
    netbeui:
    nb_names = 200
    ^D
    

  4. Merge the attributes in to the /etc/sysconfigtab file. To merge the TCP/IP changes, enter:

    # sysconfigdb -a -f knbtcp.stanza knbtcp

    To merge the NetBEUI changes, enter:

    # sysconfigdb -a -f netbeui.stanza netbeui

    If there is an existing entry in the sysconfigtab file for knbtcp or netbeui, use the -u flag to update the entry instead of the -a option to add an entry.

  5. Restart the ASU transports. To start the TCP/IP transport, enter:

    # /sbin/init.d/asutcp start

    To start the NetBEUI transport, enter:

    # /sbin/init.d/asunbelink start

  6. Restart the ASU server by entering the following command:

    # net start server

7.5    Support for HSM

The Hierarchical Storage Manager (HSM) migrates infrequently used files to tape, and recalls them automatically when the file is referenced. The process that opens the file is blocked until the file is retrieved from tape. This can cause denial-of-service problems if the process is the ASU lmx.srv process that is serving more than one client.

To avoid this problem, ensure that each client gets its own lmx.srv process by setting the maxserverprocs parameter in the [ server ] section of the lanman.ini file to the same value as maxclients parameter in the [ server ] section of the lanman.ini file. Each client then gets its own lmx.srv process and no client blocks another client by opening a file that was migrated to tape. See Appendix C for information on modifying parameters in the lanman.ini file.

If you set the maxserverprocs parameter above 100, you must change the number of NetBIOS names. See Section 7.4 for information on changing the number of NetBIOS names.

7.6    Specifying the Number of Open Files and Record Locks

The ASU server can run out of structures in shared memory if:

If the ASU server runs out of structures, users receive error messages when they try to open files, and a message is logged in the system event log. The log can be viewed either by running the Event Viewer application on a Windows NT system and connecting to the ASU server, or by running the elfread utility on the Tru64 UNIX command line.

You can allocate additional structures to the ASU server by changing the value of the NumUStructs value entry in the ASU registry, which by default is 1000. Three structures are used for each open file and one structure is used for each byte range lock. You can estimate the number of open files and locks that each user might use and multiply by the number of users to determine the number of structures. If you increase the NumUStructs value entry, you might also need to increase the parameters that specify the amount of Tru64 UNIX shared memory. See System Tuning for more information on shared memory.

You use a registry editor to change the value of the NumUStructs value entry. For example, follow these steps to use the regconfig registry editor to increase the NumUStructs value entry to 5000. The backslash ( \ ) at the end of a line indicates continuation. Enter the entire command, then press the Enter key.

  1. Change the NumUStructs entry by entering the following command:

    # regconfig SYSTEM/CurrentControlSet/Services/\ 
    AdvancedServer/ProcessParameters \                
    NumUStructs REG_DWORD 5000
    

  2. Restart the ASU server by entering the following commands:

    # net stop server

    # net start server