Network Performance on Windows Platform (iperf, iperf3 or iometer)

Your backups are running slow or restore is slow, provided you have the fastest backup target without any limitation and so there are no bottlenecks for writing or reading from the source, still, you are not getting the optimal XGB/s of backup and restore performance. Your backup ecosystem can have various components such as Proxies, data movers, targets, and sources and applications you are protecting. And sometimes if the data movers are based on Windows if your networking is not setup correctly you may see the bottleneck, and I will explain in this blog how to use an IO meter to detect any performance bottleneck, and it is very useful when you are seeking 10+GB/s of throughput.

Step 1: Identify two Windows servers it can be two data movers (in the backup ecosystem) to have client-server relationship.

Step 2: Download and install iometer,

Step 3: Server1, go to the IO meter download directory and the executable iometer.exe as shown in below example

Run the IO meter on Window Server 1 to test the network bandwidth

Step 4: By default, the disk workers are created when starting the application, we need to delete all these workers’ threads and then create a network targets worker threads.

Delete the disk worker threads.

Step 5: Create the Network worker threads on Windows Server 1

Step 6: Create Network worker threads on IO Meter by clicking the creat network threads.

Step 6: Go to Window Server 2, download the iometer packages and wait DO NOT START IOMETER in Windows server 2, instead go to command line to the download folder and start dynamo.exe.

C:\iometer-1.1.0-win64.x86_64-bin>Dynamo.exe -i 10.21.xx.xx(ipforwindowserve1-whereiometerisrunning) -m 10.21.xx.xx (ipaddressforwindowserver2-dynamo.exe-is-running)

Step 7: Now you will second the server list on iometer UI.

Step 8: For each Network thread created for Windows server 1 select the target interface for Windows server 2 as shown in the above screenshot,

Step 9: Assign the access specification for each worker thread, like 100% Read sequential and block size for the test.

Step 10 Run the test

Now, why use IO meter, it is much more reliable to do a benchmark for disk and network since it has various options for benchmark, and iperf and iperf3 was not reliable in my tests.