We use a database that has separate client and server programs and they communicate with each other using RPC. We have one computer running Windows Server 2003 SP2 and six workstations running Windows 7 Pro 32bit. The network is a simple 100Mbps network with one network switch.
The server computer and two of the workstations have Gigabyte G31M-ES2L motherboards which have integrated Atheros network controllers. The other workstations have Gigabyte H61MA-D2V motherboards which have integrated Realtek network controllers.
We are finding that the database performance is very good for the computers with the Atheros NICs but very poor for the computers with the Realtek NICs.
Thinking that the problem was to do with the database program itself, I decided to test the performance of the RPC protocol by using the program RpcPing.exe.
I have been using the following command to time how long it takes to do 1000 RPCs to various computers on the network:
rpcping -u 10 -a connect -s [ip address] -i 1000
My results, on average, are as follows:
Atheros to any Atheros: 200-250ms Atheros to any Realtek: 800-1000ms Realtek to any Atheros: 800-1000ms Realtek to any Realtek: 1100-1200ms
The results are the same, regardless of whether the operating system is Windows Server 2003 or Windows 7.
As a test, I installed Windows XP on one of the boards with a Realtek NIC and found that I would get 200-250ms communicating with any Atheros NIC and 800-1000ms communicating with any Windows 7 computer with a Realtek NIC. I also tested a basic install of Windows 7, just to make sure no programs were interfering with it, and the results were as bad as usual.
I have tried the latest NIC drivers as well as several earlier versions and have ruled out any physical problem with the network. I have also tested it on other networks and occasionally find similar results to mine. Certainly it makes no difference if it's a megabit or gigabit network.
So please can anyone offer an explanation as to why RPC performance is so poor for Windows 7 with these Realtek chipset NICs?