Link to home
Start Free TrialLog in
Avatar of chiprule
chipruleFlag for Italy

asked on

Cisco LAG + Windows Server NIC teaming slow upload

Cisco LAG + Windows Server NIC teaming slow upload

Hi Team,
I set LAG in my cisco sg300 with 2 1Gb port.
I set window server nic teaming static + dynamic, this server have a ssd disk
I have 2 physical clients both with 1gb eth port. One client with ssd, other with nvme.

I do this test:
Transfer big file from server to clients simultaneously: speed is 2Gb
Transfer big file from clients to server simultaneously: speed is 1Gb

I don't understand why upload speed from client to server is cut in half.


Client 1:
User generated image
Client 2:
User generated image
Server:
User generated image

Thanks
Avatar of Hayes Jupe
Hayes Jupe
Flag of Australia image

if the clients have a 1GB connection - i dont understand why you are expecting to get more than 1GB with a file transfer to/from them - ?
Not sure what you are testing. A lag on server means that two clients at the same time can max transfer
So the maximum through put on the server of all outgoing/incoming data is
The clients have a max throughput of 1GB each way.
Avatar of chiprule

ASKER

Hi Guys,
maybe I explained myself wrong.
I make 2 test.

Test1:
Moving files from server --> to my 2 clients (1pc and 1 laptop) at the same time. Total throughput on server NIC TEAMING upload 2Gbps

Test2:
Moving files from my 2 clients (1 pc and 1 laptop) at the same time --> to server. Total throughput on server NIC TEAMING download 1Gbps

Thnaks
Distinction push and pull.
Client OS commonly has a limit on how much of the network it allocates. Per process
Hi Arnold,
Yes, client OS can limit..but
When I move file from 1 single client to ----> server, the client send at full 1GBps and server recive obiviously at full 1Gbps
When I move file from 2 clients at the same time to ----> server, clients fighting between us for 1GB connection, and server recive at 1Gbps.

It seem that when server send packet to the 2 clients at the same time use both interface on LAG (2Gbps), but when it recive use only 1 port (1Gbps)
The two ports on the switch are seen as one.
When Emirates from server whether the OS manages a feed distribution where each session is originating from ...

When the client sends the server handling of which Nic handles the stream....

On the sending, side potentially if you start 10 clients to push this information the server bandwidth might start getting closer to the 2GB throughput.
Hi Arnold,
how is possible that 1 client push to server full 1Gbps, and 2 client at the same time push the same (full 1Gbps)?
I think this is some setting to manage..smb multichannel maybe?

Thanks
ON the switch LAG port and on the SERVER's NIC the feed from the clients is not guaranteed to be handled by two NICs/

Consider it this way, a store has two employees on the loading bay,
When the stores sells products, both employees load the purchased items into the respective clients cars.

Now if you see two clients return to the store indicating the wrong things were loaded into their car.
A possibility exists that while one employee continues to serve cleints that bought stuff from the store or is taking a break. while one employee who is thought to have screwed up is the one who is charged with unloading the two client cards.

.Often the idea behind a LAG setup on a server is to on one side handle the ability to push data out.
The other is to handle a huge amount of data flow in.

Your test though, relies on file transfer.
Are you using explorer visual drag and drop or using robocopy as an example to push files in.


If you use the same tool to poll network data on each side I doubt the client pushing data will be at 1GB rate
is your NIC teaming configured as an etherchannel?
having standalone interfaces with active active configuration is not a good solution, check your cisco logs
do you have mac flapping?
Hi team,
this is my config
User generated image
User generated image
User generated image

User generated image






User generated image

User generated image
User generated image

User generated image

User generated image
I test robocopy from 2 pc to server, the speed is the same...1GB

There are no error in switch log
make sure it is LACP on both sides
you would then have a single logical 2Gb interface
but note that with one to one test you would only see a performance of 1 Gb
the combined throughput is for load balancing based on source destination
advanced configuration can tweak the balancing mechanism depending on projected traffic
Hi Wissam, my tests are file trasfert from 2 different client - to the server at the SAME TIME.
Both clients have 1Gbps connection!

Computer 1 ---------> SERVER
+
Computer 2 ----------> SERVER



that wouldn’t 100% guarantee you would be able to see the aggregated speed of 2Gb, the reason is due to load balancing xor mechanism. the ip addresses or mac addresses depending on the load balancing mechanism may pick the same physical interface for both flows.
does they show as a single interfaces with your configuration?
all seems in order, try to remove the LACP configuration and reconfigure the same
@chiprule Hi
do you have an update on this?
Hi @Wissam,
sorry for delay, i've do some testing.
I recreate the teaming = same result
I create team in a new physical server = same result

After that I do another test.
I configure on the nic teaming interface two ip address...
NIC TEAMING 1
ip address 1: 172.16.100.20
ip address 2: 172.16.100.21

TEST (at the same time obiviously):
Trasfer file from client 1 to ip 172.16.100.20
transfer file from client 2 to ip: 172.16.100.21

With this test I REACH 2 Gbps in inbound....

I don't understand if it's a LACP or Windows Teaming problem...
Standard mode of load balancing packets across LACP EtherChannel is per flow so each flow will always get one of the bundled links to get to the other side. This makes sure no congestion will happen but they will not speed up each specific transfer. Each transfer of IP communication (each flow) will get his own link from bundled links and still get 1G max of speed in your case where 1G interfaces are bundled.

On some switches, you can even change the load balancing so that it works per packet and not per flow, but that is not best practice, which I don’t think is supported by the SG300.


The SG300 supports 2 load balancing mechanisms as per  

https://www.cisco.com/c/en/us/support/docs/smb/switches/cisco-small-business-200-series-smart-switches/smb97-link-aggregate-group-lag-configuration-on-200-300-series-man.html

#################################
LAG Management

Step 1. Log in to the web configuration utility and choose Port Management > Link Aggregation > LAG Management. The LAG Management page opens:

Step 2. Click the respective radio button of the desired algorithm in the Load Balance Algorithm field. Load Balancing is a method that maximizes throughput on a network to optimize resource usage.
• MAC Address — Load balancing is performed based on the source and destination MAC addresses of all packets.
• IP / MAC Address — Load balancing is performed based on the source and destination IP addresses of IP packets and by the source and destination MAC addresses on non-IP packets.
Step 3. Click Apply.

############################


A question here, is the source of your traffic coming from a different VLAN?
if so and you ultimately will have a single IP configured on the server it may be necessary to make sure that you have IP/Mac balancing configured and not Mac. as with only MAC algorithm you will always get only 1 Gig (since both source and Mac addresses are going to be always the same).
if the source traffic is within the same VLAN, then it just happened that calculation of both devices happened to result the usage of the same interface
Hi Wissam,
I've already change cisco sg300 to IP / MAC Address - Load Balacing.
I transfer file from the same vlan and from different vlan and the result is same. Inbound traffic is always 1Gbps
Hi Chiprule, inbound on the Cisco portchannel interface is controlled from the server load balancing mechanism.
the switch decide how he send the traffic to server, so outbound based on the algorithm
did you check the load balancing mechanism from server side?
On server side this is the config:
User generated image
what options do we have under the load balancing mode ; dynamic ?
-Address Hash
-Hyper-V Port
-Dynamic
ASKER CERTIFIED SOLUTION
Avatar of Wissam
Wissam
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
With Address Hash i reach 2Gbps inbound..but outbound drop from 2Gbps to 1Gbps
User generated image
outbound from switch is controlled by the switch as long as the portchannel is up its a single logical interface
After setting "Administrative flow control" to "Auto-negotiation" both server inbound and outbound works at 2Gbps!
User generated image