\[Editor's Note: Do you have something to share with other Windows NT Magazine readers? We want to know about it. Write for Reader to Reader online, and you can tell others about your NT discoveries, comments, problems, solutions, and experiences. Email your contributions (700 words or less) to r2ronline@winntmag.com along with your name and phone number. We edit submissions for style, grammar, and length. If we print your submission, you'll get $100.\]

Do you have your network printers connected to Windows NT Server 4.0 with Service Pack 3 (SP3) or later, and do you use TCP/IP printing? If so, you might sometimes notice that printing is slow or even failing, especially when you have more than 10 printers connected to the same server.

This slow down occurs because NT with SP3 (or later) uses, by default, only TCP ports 721 through 731 for the printer connections, which is compliant with Request for Comments (RFC) 1179. The service, therefore, can have only 11 ports in use at one time. And, if one port is in use by a printer, the OS cannot reuse that port for 4 minutes, resulting in slowed or even failed print jobs.

To work around this problem, you have to edit the Registry to let the TCP/IP Print Service use any available port higher than 1023. You have to define these settings on a per printer port basis, so if you haven’t done this yet, be prepared to spend some hours in the Registry.

To speed up your print server, open Registry Editor (regedt32.exe) and go to the subkey HKEY_LOCAL_MACHINE\SOFTWARE\ Microsoft\LPDSVC\lpr. You should see a value with a name of the IP address of the LPR print port. If the value doesn’t exist, you have to add it to the Registry:

Value Name: <IP address of LPR printer port>
Data Type: REG_DWORD
Value: 0 or 1
0 = uses ports 721-731 (default)
1 = uses any port >1024

You have to restart the Spooler service for the changes to take effect. To do so, open a command prompt and stop the service by typing Net Stop Spooler. Next, start the service by typing Net Start Spooler. For print servers with a huge number of printers, I recommend that you change the location of the spool directory. Move the directory to a drive that is not the NT system partition, and make sure you have enough hard disk space available.

After applying these changes to our print servers, speed and reliability have clearly increased. Now all the complaints about failed or slow print jobs are history.