Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 29 Sep 2011 19:07:42 +0200
From:      Damien Fleuriot <ml@my.gd>
To:        freebsd-drivers@freebsd.org
Subject:   Re: Link aggregation using LACP
Message-ID:  <4E84A5DE.8070804@my.gd>
In-Reply-To: <161553F2-FE14-417C-94C6-11ACBD28E06E@gmail.com>
References:  <161553F2-FE14-417C-94C6-11ACBD28E06E@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 9/29/11 6:42 PM, Naresh wrote:
> Hi All,
> 
> I am working on a 10Gb Ethernet driver for FreeBsd 8.2. When I enable link aggregation using LACP mode on two ports of our card, I expected load to be balanced on two ports(both are up). But interestingly traffic is flowing on only one interface. 
> 
> If I administratively bring down the interface on which traffic is flowing, I see lot of packet loss for about 30 secs, After that it picks up.
> 
> I think this is not expected. Are there any known issues with FreeBsd 8.2 ?
> 
> Thanks,
> Naresh._______________________________________________
> freebsd-drivers@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-drivers
> To unsubscribe, send any mail to "freebsd-drivers-unsubscribe@freebsd.org"

I've run the tests on a link aggregate with 2x 1GBs interfaces on
FreeBSD 8.2



lagg0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric
0 mtu 1500
	options=9b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM>
	ether 00:13:72:5e:27:66
	media: Ethernet autoselect
	status: active
	laggproto failover
	laggport: em1 flags=0<>
	laggport: em0 flags=5<MASTER,ACTIVE>




See below my results:
PING pf2.multiprojet.hi-media-techno.com (192.168.27.243): 56 data bytes
64 bytes from 192.168.27.243: icmp_seq=0 ttl=63 time=1.920 ms
64 bytes from 192.168.27.243: icmp_seq=1 ttl=63 time=1.724 ms
64 bytes from 192.168.27.243: icmp_seq=2 ttl=63 time=2.071 ms
64 bytes from 192.168.27.243: icmp_seq=3 ttl=63 time=2.522 ms
# ifconfig em0 down ; and clear ARP cache on switch port.
# em1 moves as ACTIVE on lagg0
# em0 remains as MASTER on lagg0
64 bytes from 192.168.27.243: icmp_seq=4 ttl=63 time=25.868 ms

64 bytes from 192.168.27.243: icmp_seq=5 ttl=63 time=2.327 ms
64 bytes from 192.168.27.243: icmp_seq=6 ttl=63 time=2.346 ms
64 bytes from 192.168.27.243: icmp_seq=7 ttl=63 time=2.176 ms
64 bytes from 192.168.27.243: icmp_seq=8 ttl=63 time=2.105 ms
[snip]
64 bytes from 192.168.27.243: icmp_seq=21 ttl=63 time=3.147 ms
64 bytes from 192.168.27.243: icmp_seq=22 ttl=63 time=2.017 ms
64 bytes from 192.168.27.243: icmp_seq=23 ttl=63 time=2.038 ms
64 bytes from 192.168.27.243: icmp_seq=24 ttl=63 time=2.346 ms
# ifconfig em0 up ; and clear ARP cache on switch port.
# em0 moves as ACTIVE,MASTER on lagg0
64 bytes from 192.168.27.243: icmp_seq=25 ttl=63 time=10.332 ms

64 bytes from 192.168.27.243: icmp_seq=26 ttl=63 time=2.104 ms
64 bytes from 192.168.27.243: icmp_seq=27 ttl=63 time=2.395 ms
^C



Notice I've not lost a single ping.

It's your switch's ARP cache.

Your problem is that your interface x0 goes down, but the switch still
thinks that lagg0's MAC address is on that port.
Clear the cache, problem solved.


If you're using cisco, run this on the 2 switches that connect to your host:
sw29.gs.hi-media# clear arp-cache interface ten1/0/1 ;for example

You'll notice much faster convergence.


At the global configuration prompt:
sw29.gs.hi-media(config)#mac address-table aging-time ?



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4E84A5DE.8070804>