Subscribe to Windows IT Pro
August 01, 1997 12:00 AM

The Beginner's Guide to Optimizing Windows NT Server

Windows IT Pro
InstantDoc ID #501
Rating: (0)

Here's what you can do to tune NT Server's network I/O, disk I/O, and CPU utilization
Now that you've made a strategic decision on a server that supports your requirements today and has room to grow tomorrow, you want it to run at its very best. In my June article, "The Beginner's Guide to Optimizing Windows NT Server, Part 1," I focused on optimizing Windows NT Server's memory subsystem. This month, I'll examine tuning NT Server's other subsystems, such as the network I/O, disk I/O, and CPU. Let's review some basic tuning concepts.

Basic Tuning Strategy
To optimize NT Server's performance, develop baselines for each subsystem. Monitor the system closely to identify bottlenecks and plan for future capacity requirements. Finding the cause of a bottleneck can be difficult because all the server's major resources--CPU, memory, disk I/O, network I/O, and applications--are interrelated. Solving one problem can cause another. Try one change at a time and compare the results to see whether the change was helpful. Always test your new configuration, and then test it again to be sure changes haven't adversely affected your server. I will discuss only NT Server's built-in monitoring tools: Performance Monitor (Perfmon), Network Monitor, and Task Manager.

Tuning the Hardware
Hardware tuning is as important for disk optimization as it is for memory optimization. Set your disk adapter's BIOS settings for maximum performance and stability. Be sure you have turned on write-back cache and set the SCSI channel to negotiate for the fastest setting the disks can handle. Many drives support the Ultra Fast/Wide SCSI (40MB per second) standard. Many disk adapters sold in the last year support Ultra Fast/Wide SCSI but were set to the slower Fast/Wide settings of 20MBps, the speed that the typical disk drive supported. Ask your hardware manufacturer for the most recent BIOS release level and optimum BIOS settings for disk adapter/disk drive combination.

For network I/O connections, set the adapter appropriately for your network. Many of today's adapters support multiple network speeds, including autosense mode. In autosense mode, the network adapter tries to automatically determine your network's speed and then sets itself to operate at that speed. I prefer to set the adapter to the exact speed of the network devices the server will be interacting with to ensure the best performance possible. Not all servers and network devices want to play together nicely when you've set them to run at peak throughput settings. Be sure that you are using the most recent device drivers for disk and network adapters. You will often see improved throughput and efficiency just by using the most recent release. Most hardware manufacturers have this information on their Web sites. Microsoft keeps similar information on its Web site about NT Server patches or service packs. These patches attempt to fix known problems and occasionally include performance enhancements. Always test new drivers or patches to guarantee that they operate as advertised.

Network I/O
NT Server's network I/O subsystem becomes a bottleneck when demand for network resources outpaces what NT Server can provide. Clients and other server systems must be able to connect to NT Server with sufficient bandwidth and low enough latency to provide adequate response times to support customers' requirements. Therefore, you need to understand what type of workload your client systems generate and which key network architecture components are in use. To determine where your bottlenecks are and how to fix them, you must understand the type of network protocol (e.g., Ethernet, NetBEUI) and physical network (e.g., Ethernet, Fiber Distributed Data Interface--FDDI) you're using.

Perfmon. The two primary tools for sleuthing out network I/O bottlenecks in NT Server are Perfmon and Network Monitor. You can use Perfmon in logging mode over a period of time to develop a baseline and to analyze the server's resources. Start Perfmon from Start, Programs, Administrative Tools. To enter logging mode, select View, Log, Edit, Add To Log. The key object to observe is Network Interface. (To access the Network Interface object, first install the Simple Network Management Protocol--SNMP--from Control Panel, Network, Services; then reboot.) Select the Network Interface object, click Add, and then Done. To begin the logging session, select Options, Log. Enter the name of your log file, specify a sampling interval, and then click Start Log. If you want to look at data the system is currently monitoring, you need to start a second copy of Perfmon and select Current Activity. (Perfmon stops logging when you view an active log file.)

To access the data that Perfmon collects in the log file, you need to stop logging and look at the log file. To stop collecting, select Options, Log, Stop Log. To read the log file, click Options, Data From, Log File and enter the name of the log file. From View, select Chart (or Report or Alert). Now choose Edit and Add To Chart and select the counters you want to observe. (For more information about using Perfmon for logging, see Part 1 of this article in the June issue and Michael D. Reilly, "The Windows NT Performance Monitor," March 1997.)

Perfmon collects data for each separate physical network adapter instance. Traditionally, the Network Interface object has had two notable counters:

  • Output Queue Length, which measures the length of the output packet queue
  • Bytes Total/sec, which measures all network traffic that moves through the particular network adapter and includes all overhead incurred by the protocol in use (TCP/IP, NetBEUI, etc.) and by the physical protocol (Ethernet, FDDI, etc.)

The first step in detecting a network bottleneck is looking for symptoms. Are users complaining about slow downloads from your server? Are applications that involve the network and the particular server you are investigating running sluggishly? In NT 3.51 the Output Queue Length counter is a good indicator. A value of 1 or 2 in the Output Queue Length counter is acceptable. However, if this measurement begins increasing (particularly above a value of 3 or 4), your network I/O adapter is waiting on the network and can't keep up with the server's requests to move data onto the network. If the length of the output packet queue is frequently higher than baseline, a bottleneck might be occurring. In NT 4.0, the help information states that because the Network Driver Interface Specification (NDIS) queues the requests, the counter's value is always 0. However, research and testing show that this statement is false. The Output Queue Length counter provides useful information in NT 4.0.

Related Content:

ARTICLE TOOLS

Comments
    There are no comments to display. Be the first one!
You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.