How to properly test NIC teaming in Windows Server 2012 R2

bondingnetwork-teamingwindows-server-2012-r2

I'm trying out NIC teaming in Windows Server 2012 R2 and I am not getting the testing results I expect. My setup is a PCI-X 64-bit 133 MHz Intel Pro 1000/GT Quad on one server, and four individual Realtek 8111 gigabit PCI-E x1 cards on the other server. All are connected to a managed gigabit switch that supports LACP. I have configured all of the relevant different NIC teaming modes the same on both servers (switch dependent/switch independent, address hash/dynamic) but I receive the same results of only 1 Gbps transfer rate no matter which of the four possible settings I choose. The NIC team on both servers consists of all four network connections and it appears as a 4 Gbps network adapter to the server.

I am using PassMark Advanced Network test, which includes a server and client component, and performs the network transfers entirely in RAM so as to achieve the full possible throughput.

The way I performed the test was to open two instances of the server component on one 2012 server, and open two instances of the client component on the other 2012 server. I connect both client components to the IP address of the NIC team adapter on the other server, but I use a different port number for each client.

When I perform the test by starting one client, I receive 1 Gbps throughput. When I start the test on the other client, instead of gaining another 1 Gbps, both clients drop to 500 Mbps. I thought that by using different port numbers, the stream would get hashed differently and therefore use another physical connection, resulting in each of the two streams achieving 1 Gbps.

I am beginning to wonder if it is my testing methodology, and perhaps there is a better way to test than the way I am doing it, because it seems like everything is configured correctly by using Switch Dependent mode with Address Hashing (though like I said, I have tried all combinations and received the same results).

Best Answer

I think it would depend on which mode you picked (switch dependent/switch independent) and how your traffic is transferred. Client->Server Server-> Client. If you are in switch independent mode you only have 1 port for inbound on the server and all ports will do outbound. I guess it just depends on how your test is running is it coming from the server or to the server.

Related Topic