06-28-2008 03:57 PM - edited 03-05-2019 11:53 PM
I am implementing NIC bonding/teaming with Catalyst 2960.
Linux_A has both NICs connected to the Catalyst 2960 with
a bonding interface. I setup the catalyst with EtherChannel
as follows:
interface GigabitEthernet0/2
description Generic dual-processor eth1
switchport access vlan 140
switchport mode access
load-interval 30
channel-group 1 mode on
spanning-tree portfast
end
C2960#sh run int g0/8
Building configuration...
Current configuration : 196 bytes
!
interface GigabitEthernet0/8
description Generic dual-processor eth0
switchport access vlan 140
switchport mode access
load-interval 30
channel-group 1 mode on
spanning-tree portfast
end
C2960#sh run inter port-channel1
Building configuration...
Current configuration : 101 bytes
!
interface Port-channel1
switchport access vlan 140
switchport mode access
load-interval 30
end
C2960#
port-channel load-balance src-dst-ip
Here is an issue I am facing:
From Linux_A, I can send almost 200Mbps in total output to
Linux_B and Linux_C, I use Iperf to test this. I also
verified this with "show interface g0/2 and show interface
g0/8" that eth1 and eth0 of Linux_A is connected to,
respectively.
From both Linux_B and Linux_C, I can send only 100Mbps
total to Linux_A. Again, I use Iperf to verify this
and show interface as well. I see that interface g0/2
has no traffics.
Can someone explain to me why it behaves that way?
IOS running on Catlyst 2960 is c2960-lanbasek9-mz.122-25.SEE4.bin
Thanks
06-28-2008 04:35 PM
What speed is the port speed that these negotiated at ? Are all 3 servers 100 meg connected ? Just a guess here , from linux "A" to linux B and c , the channel hashing algoritm is using a separate channel for each conversation going out so you get the full 200 meg . The conversation from b and c coming back in due to the algoritm the switch is using is probably riding a single port back in restricting it to 100 meg total. You may have to play with the etherchannel algorithm whether it be by mac address or ip address though its pretty hard to get an idea on how it will balance out with just 2 conversations . Etherchannel does not mean a conversation will use both ports for a given conversation , a single conversation will always ride down a single link in the channel.
06-28-2008 05:04 PM
All of the servers are 100Meg connected.
Actually, I have Linux_B, Linux_C, Linux_D,..
Linux_Z (via vmware ESX) and I noticed the
same result. In other words, I have about 20
conversations and I noticed the same thing.
It maxes out at 100mbps when everything tries
to send files to Linux_A.
I have tried different combinations but no luck so far:
C2960(config)#port-channel lo
C2960(config)#port-channel load-balance ?
dst-ip Dst IP Addr
dst-mac Dst Mac Addr
src-dst-ip Src XOR Dst IP Addr
src-dst-mac Src XOR Dst Mac Addr
src-ip Src IP Addr
src-mac Src Mac Addr
Any more ideas please? Thanks.
06-29-2008 03:21 AM
update!
After removing "channel-group 1 mode on" from
interface g0/2 and g0/8, I can now send about
a total of 200Mbps From Linux_A to B and C and
that from Linux_B and C, I can send about a
total of 125Mbps, 67mbps on g0/2 and 58mbs
on g0/8.
anyone know why it behaves this way? Thanks.
04-22-2010 05:22 AM
I believe it would be because only one nic card at a time can respond to your ip address. When you send out the bonding interleaves traffic between the two interfaces; but recieving traffic is different. Only one card can respond to the IP address at a time.
Discover and save your favorite ideas. Come back to expert answers, step-by-step guides, recent topics, and more.
New here? Get started with these tips. How to use Community New member guide