--------------------------------------------------------------- NOV-SET.DOC -- 19980119 -- Email thread on NetWare SET Commands --------------------------------------------------------------- Feel free to add or edit this document and then email it back to faq@jelyon.com Date: Wed, 10 Apr 1996 11:10:04 -0600 From: Todd Herring Subject: Re: faq addition -Reply Netware console SET commands What Are Set Commands And How Do I Use Them? The SET commands allow an administrator to change operating system parameters in order to maximize a server's performance. The SET commands are easy to use, but often hard to remember. They can be issued at the server console, or put into either the STARTUP.NCF or AUTOEXEC.NCF files (or any NCF file for that matter). It's always a good idea, once you've found a parameter you want to change, to put that SET command in one of those two files. Most of the server's parameters are changeable "on the fly", so for a parameter change to take effect you need only type the SET command at the console and hit the Enter key. Example: SET REPLY TO GET NEAREST SERVER=OFF. However, some parameters are settable only in the STARTUP.NCF file, which means changes do not take effect on the fly. Such commands must be placed in STARTUP.NCF, and the server must be restarted for the parameter to take affect. Example: SET AUTO REGISTER MEMORY ABOVE 16 MEGABYTES=OFF. How Do I Find Out The Proper Syntax Of Each Command? There are three resources available to find out. First, read the manuals. In the "Utilities" book of the Netware manuals (3.x and 4.x), there's a whole section devoted to the topic. You'll find out not only the proper syntax, but the default value, a description of what the values mean, and whether it must be set in STARTUP.NCF. Second, type the word SET at the console (3.x and 4.x). After doing so, a list of categories will appear. Press the number of the category you wish to investigate. You'll find out not only the proper syntax, but also the *current* setting, the default value, a description of what the values mean (though it's not always comprehensible), and whether the SET command must be placed in STARTUP.NCF. The third method is available only on 4.x servers. At the server console, type LOAD SERVMAN. At the SERVMAN screen, choose "Server parameters", then select a parameter category. SERVMAN shows you the current settings and gives a description of each parameter. With SERVMAN, you don't need to know the syntax, since you can choose to have SERVMAN update the AUTOEXEC.NCF and STARTUP.NCF as you exit. However, the manner in which SERVMAN displays the parameters and their current values gives you a good guess as to the proper syntax should you wish to issue the command at the console. Aren't The Default Values Always Right? No, not hardly. What's right for your server may be wrong for mine, and there are dozens of reasons why that may be so. However, there are some generalizations which can be made. The default value for MAXIMUM PHYSICAL RECEIVE PACKET SIZE is too high for most environments, at 4202 bytes. If the largest packets (frames really) you have on the wire are ETHERNET_II, then set this value down to 1518. It'll save you 2684 bytes of memory per packet receive buffer. The default value for MAXIMUM PACKET RECEIVE BUFFERS is generally too low, at 100, but this depends greatly on your situation. Look at MONITOR to verify your needs. NW will allocate new packet receive buffers as needed, but only up to the maximum. After the ceiling is reached, packets start getting dropped if receive buffers don't get released. As a rule of thumb, you need one buffer per connection, but it doesn't hurt to overestimate. If your server consistently gets up to 100 (or more) packet receive buffers, you may want to increase the value for MINIMUM PACKET RECEIVE BUFFERS. Having too few receive buffers at boot up can affect performance because the server will struggle to allocate more receive buffers to service the growing number of client requests. Don't go overboard with this setting, though, since these buffers are allocated whether they are needed or not, and they take up valuable RAM. The default value for MAXIMUM SERVICE PROCESSES is often too low on 3.x servers, at 20. Your situation is unique, so check MONITOR and make your own assessment. To make a proper assessment, check the current number of service processes after your server has been up for at least one week. Increase only if it is currently maxed out. The default setting for ENABLE DISK READ AFTER WRITE VERIFY, which is set to ON, may be causing undue loss of performance in your server. If your server's disks/disk drivers have this sort feature built in, by all means turn this setting off. Disk write performance can be increased by nearly 100%. For more information, take a look at "Netware 3.12 Performance" by Michael Price and Edward Liebing in the Sept./Oct. 1994 issue of _Netware Connection_. Anyone seen a comprehensive, more up-to-date article than this? ------------------------------ Date: Thu, 4 Apr 1996 11:47:53 EST From: Jayson Agagnier Subject: Re: All Buffers are in USE!! Try using the following settings: StartUp.Ncf set concurrent remirror requests = 16 set cache buffer size=4096 set minimum packet receive buffers=400 set maximum packet receive buffers=1500 set maximum physical receive packet size= 1538 AutoExec.Ncf #Tune Server Set Maximum Packet Receive Buffers = 1000 Set Volume Low Warn All Users = Off Set Enable Read After Write Verify = Off #Compaq Tuning Parameters Set New Services Process Wait Time = 0.03 Set Maximum Service Processes = 25 Set NCP File Commit = Off Set Maximum Concurrent Disk Cache Writes = 100 Set Immediate Purge of Deleted Files = Off Set Directory Cache Allocation Wait Time = 0.5 Set Reply to Get Nearest Server = Off #Parameters for large servers Set Maximum Alloc Short Term Memory = 8000000 Set Maximum Directory Cache Buffers = 4000 Set Minimum File Cache Buffers = 500 Set Minimum Directory Cache Buffers = 2000 Set Dirty Directory Cache Delay Time = 2 Set Directory Cache Buffer NonReferenced Delay = 3Min Set Maximum Percent of Volume Used by Directory = 30 These settings should help tune your disk channel and NIC performance. These setting are ideal for our servers, but they might not be ideal for your, it all depends on disk size, read/write requests, and number of clients making the requests. Good luck. ------------------------------ Date: Sat, 20 Dec 1997 13:23:08 +0000 From: Randy Richardson Subject: >Where can I find list of SET commands and descriptions. You can make your own list this way: 1. Start CONLOG.NLM (see documentation for details) 2. Type "Set" 3. Type "1" 4. Press [Enter] repeatedly until you return to the Console prompt 5. Cycle through all groups of Set parameters by typing the next number (instead of "1") in step 3, after cycling back to step 2 6. Stop CONLOG.NLM In the log file that CONLOG.NLM created, you will have all the information you were looking for, and it can be printed out for an easy off-line reference. You could also use "SERVMAN.NLM" to see the pop-up description of each Set parameter as you highlight it with the cursor. --------- Date: Sun, 21 Dec 1997 18:16:28 -0500 From: "Deborah J. Becker" Subject: Re: SET Commands >>Where can I find list of SET commands and descriptions. You can also load SERVMAN.NLM and choose the Server Parameters Options. Hit and then hit -- pick the "Copy all parameters to file" option and the program will copy all SET parameters to a text file for you to view. ------------------------------ Date: Mon, 19 Jan 1998 21:57:25 +0100 From: Marcel Cox Subject: Re: Detected a Bug with using SET BINDERY CONTEXT >The Online-docs as well as the Helpscreens at the serverconsole >report that the whole length of the SET BINDERY CONTEXT - Command has >to be not longer than 2047 bytes. > >But as soon as the length exceeds 512 bytes, the command begins >overwriting the stack of other modules. This is a known bug. See http://support.novell.com/cgi-bin/search/tidfinder.cgi?2919840 for details. ------------------------------