Data Network Resource
       Earn on the Web


25. NT Analysis and Optimisation




Memory, Processor, Disks and the Network all have an impact on server performance and these need to be monitored as units and as a whole system.

IDE controllers have a throughput of 2.5Mb/s, SCSI - 3Mb/s, SCSI-2 - 5Mb/s, Fast SCSI-2 - 10Mb/s and PCI controllers - 40Mb/s. Hardware RAID controllers can offer up to 20% faster write speeds than their software counterparts.

8-bit network adapters move data at 400Kb/s, 16-bit adapaters at 800Kb/s whilst 32-bit adapters move data at 1.2Mb/s. Multiple adapters can be used, perhaps one for each protocol.

Performance monitor can export data to spreadsheets or Visual Basic or C programs and it measures the behaviour of computer objects which sometimes have multiple instances. The core objects are as follows:

  • Cache
  • LogicalDisk
  • Memory
  • Objects (software)
  • Paging File
  • PhysicalDisk
  • Process
  • Processor
  • System
  • Thread

Setting high sample rates can have a negative effect on the computer's performance.

There are three types of counters used for each object; Instantaneous, Averaging and Difference. The Time counter for the Processor object is referred to as % Processor Time.

The following views are available in Performance Monitor:

  • Chart - displays the counter value over time.
  • Report - shows the value of a counter plus other counters being examined.
  • Alert - sets alerts on counters and these appear as events, for a particular object only one alert will work on one instance.
  • Log - records the counters on to disk for future analysis and can be fed back into Performance Monitor to be displayed.

The log view can be set up to monitor multiple servers (up to 25), the alert view can be set up to alert individuals of objects such as % Free Space. It is best to use a non-domain controller or Workstation to perform domain administration and Performance Monitoring as these machines have less work to do.

Microsoft Systems Management Server (SMS) can be used to monitor desktop computers, both hardware and software.

Centralised monitoring increases network traffic but allows the data to be stored in one central log file and is useful if you have less than 25 servers. For decentalised monitoring the at command can be used to schedule monitoring at the beginning of peak activity (mid-morning and mid-afternoon) and to stop after the peak activity. The Schedule service is required for at to function. The syntax for starting and stopping the monitoring is at \\computername 9:30 /date:M,T,W,Th,F "monitor START and at \\computername 11:00 /date:M,T,W,Th,F "monitor STOP. This uses the .pmw file containing the objects and interval for logging by Performance monitor.

A baseline measurement is a must when monitoring. Include file, print, application and domain servers plus memory, processor, disks, networks and specific objects that the network particularly uses. Monitoring should occur for at least a week for a proper baseline.

Use diskperf -ye when monitoring RAID disks. Set the Time Interval in Log Option to a suitable value e.g. 600 seconds for server analysis and append log files to a master log file.

In an NT Server environment the most common Workload Characteristics are the number of users and the response times for a particular task. Sometimes a bottleneck in performance of say the disk speed may be caused by another bottleneck such as lack of RAM, this is very common. RAM bottlenecks can be found by examining the following:

  • Pages/sec
  • Available Bytes (if this is below 4Mb then there is likely to be excessive paging)
  • Committed Bytes (if this more than the physical memory then there is need for more RAM)
  • Pool Nonpaged Bytes (a steady increase indicates a memory leak).

Processor bottlenecks are found using the following:

  • % Processor Time (< 75%)
  • % Privileged Time (< 75%)
  • % User Time (< 75%)
  • Interrupts/Sec
  • System: Processor Queue Length (< 2)
  • Server Work Queues: Queue Length (< 2).

You must activate disk counters manually by typing diskperf -y (local) or diskperf -y \\servername for a remote server. The counters that are required for looking at the disks are:

  • % Disk Time (< 50%)
  • Disk Queue Length (< 3)
  • Avg. Disk Bytes/Transfer
  • Disk Bytes/sec

Overall server performance is examined using the following:

  • Server: Bytes Total/sec
  • Server: Logon/sec
  • Server: Logon Total
  • Network Segment: % Network Utilisation (< 30%)
  • Network Interface: Bytes Sent/sec
  • Network Interface: Bytes Total/sec

NetBEUI and NWLink use the following counters:

  • Bytes Total/sec
  • Datagrams/sec
  • Frames/sec

TCP/IP uses the following counters:

  • TCP Segments/sec
  • TCP Segments Re-translated/sec
  • UDP Datagrams/sec
  • Network Interface: Output Queue Length

Measuring the performance of a File or Print server is achieved using the following counters:

  • Server: Server Sessions
  • Server: Files Open
  • PhysicalDisk: Avg. Disk Bytes/Transfer
  • PhysicalDisk: % Disk Time
  • PhysicalDisk: % Disk Read Time
  • PhysicalDisk: % Disk Write Time
  • Network Segment: %Network Utilisation

With IIS, cache is the most important aspect of the service as it maximises performance. The cache can be adjusted using the following registry key HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters\MemoryCacheSize and can go up to 4Gb.

The following are useful IIS counters:

  • Cache Flushes
  • Cache Hits %
  • Cache Misses
  • Cache Size
  • Cache Used
  • Cached Files Handles
  • Directory Listings
  • Objects

An Application server is characterised by many more smaller requests than a File and Print server. Some applications have their own specific counters but the general ones are:

  • Server: Server Sessions
  • Processor: % Processor Time
  • PhysicalDisk: Avg. Disk Bytes/Transfer
  • PhysicalDisk: % Disk Time
  • Network Segment: % Network Utilization
  • Memory: Available Bytes
  • Memory: Pages/sec
  • Cache: Copy Read Hits %

Performance for disk bound applications is improved by using software or hardware RAID and additional controllers.

For memory up to 32Mb use 256Kb secondary cache and use 512Kb for higher memory amounts.

Calculation of the number of users a particular server can cope with involves monitoring all the counters whilst on user is operating and then multiplying the values by the number of users likely to be using the server at any one time.

A Domain server will require the monitoring of the following counters:

  • Server: Logon/sec
  • Server: Error Logon
  • Server: Logon Total
  • Memory: Available Bytes
  • Memory: Committed Bytes
  • Network Segment: % Network Utilization
  • WINS Server: Total Number of Registrations/sec
  • WINS Server: Queries/sec

Activities that affect the system without user involvement include synchronisation, WINS database replication, DHCP IP address lease renewals, Browser updates and verifications on logons. WINS and synchronisation are the most significant.

The Server option under Services in Control Panel allows you to configure the server service for the four following environments:

  • Minimise Memory Used - 10 simultaneous users
  • Balance - 64 simultaneous users
  • Maximise Throughput for File Sharing - larger numbers in a File and Print sharing environment
  • Maximise Throughput for Network Applications - Application server environment


Valid HTML 4.01 Transitional




Earn on the Web    


All rights reserved. All trademarks, logos, and copyrights are property of their respective owners.