CPU is very spikey and erratic, network latency. Windows Server 2003

cpu-usageperformancewindows-server-2003

Something is making my server go crazy. First it was just the network had some bad latency, then I noticed it was on the server, not the network.
I thought it to be HDD related but I am not sure.
It seems to spike every few seconds for less than a second.
I shutdown Hmail and Apache, neither were the issue.

A link to 2 images, one of the CPU graph and one of the Process list sorted by CPU time. Also in there are a couple text files with Ping from anotehr machine and a netstat -a -b .
http://www.rscivil.com/dell/

enter image description here
enter image description here

Reply from 10.0.0.5: bytes=32 time<1ms TTL=128
Reply from 10.0.0.5: bytes=32 time=2898ms TTL=128
Reply from 10.0.0.5: bytes=32 time<1ms TTL=128
Reply from 10.0.0.5: bytes=32 time<1ms TTL=128
Reply from 10.0.0.5: bytes=32 time=2026ms TTL=128
Reply from 10.0.0.5: bytes=32 time<1ms TTL=128
Reply from 10.0.0.5: bytes=32 time<1ms TTL=128
Reply from 10.0.0.5: bytes=32 time=2022ms TTL=128
Reply from 10.0.0.5: bytes=32 time=2ms TTL=128

Win Server 2003 SP2
Dell PowerEdge sc1425
Xeon 3.4GHZ (Dual Core)
2GB Ram
RAID 1 (mirror )with 2x 1TB Hard Drives

Used mainly as a file server and Active directory and DNS server.
Also runs Apache (very light load) and HMailServer for email.

It rarely has load issues.
The RAID controller shows the raid (and each drive) as Optimal.

Any Suggestions where to go from here?

Solution:
I have 4 external drive bays hooked up to a pci-x raid controller.
One of these bays took a crap and was generating a ton of interrupts.
Turned it off and voila.
I found out it was the interrupts by using process explorer.

Best Answer

Take a swing at it with process explorer: http://technet.microsoft.com/en-us/sysinternals/bb896653

See if you can see a process spiking periodically. Are you pinging the host from the same network, or from remote (like over a vpn?).