Will Nexus load-balance method “src-dst-port” help balance link usage between two servers on same subnet

cisco-nexus-7kload balancingport-channel

enter image description here

I'm sending data on multiple ports evenly, but only receiving data on two ports at my receiver. Both servers (on the same tcp subnet) are connected to pair of Nexus 7K switches (I believe they are setup as peer switches), and each are connected to 4 port LACP port channel (My understand is these are virtual port channels, Layer 2 Port-Channels) with the default load balance method. Would changing the Nexus load balance method to src-dst-port help me spread data? Even if the port channel is a layer 2 port channel, for IP traffic, could it use the tcp port ? I'm not a network engineer, but need work with network engineers, so I want to try and understand as much as possible so I don't waste their time. Thanks for any thoughts 😉

Best Answer

I'm sending data on multiple ports evenly,

If your goal is to do round-robin load balancing, then I would highly discourage that because it leads to out-of-order data delivery that can actually slow things down.

Your switches will balance flows across a channel not spread a single flow across multiple channel links. A single flow will use a single link. The hash algorithm used will determine what is considered a flow. For example, if you use the src-dst-port hash, and the data you are sending across is only using the same source and destination ports, then you will have a single flow that uses a single link of the channel.

The channel can balance with multiple flows in aggregate, allowing you to use the full channel bandwidth when you have multiple flows, but a single flow will only use a single link in the channel. This avoids problems created when spreading a single flow across multiple links.

If you want greater bandwidth for a single flow, then you need to upgrade the speed of the links.

Related Topic