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
|