Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 9 Jul 2012 17:38:24 -0700
From:      Adarsh Joshi <adarsh.joshi@qlogic.com>
To:        "freebsd-net@freebsd.org" <freebsd-net@freebsd.org>
Subject:   lacp lagg port flags do not show correctly resulting in poor traffic distribution/performance
Message-ID:  <5E4F49720D0BAD499EE1F01232234BA877435B2E28@AVEXMB1.qlogic.org>

next in thread | raw e-mail | index | archive | help
Hi,

I am trying to configure lacp lagg interfaces with 2 systems connected back=
 to back as follows:

Ifconfig lagg0 create
Ifconfig lagg0 laggproto lacp laggport ql0 laggport ql1 192.168.100.1 netma=
sk 255.255.255.0

Sometimes, the lag interface comes up correctly but sometimes the laggport =
flags do not show properly. Instead of 1c<ACTIVE,COLLECTING,DISTRIBUTING>, =
it shows values of 18. I have seen similar issues reported on various forum=
s with no solution.
Looking at the lagg driver code and reading the standard, I thought the lag=
gport flags ( defined in if_lagg.h) are based on the LACP_STATE_BITS in fil=
e ieee8023ad_lacp.h. But the following ifconfig -v output does not make any=
 sense to me.

My concern is that when all the interfaces show flags as 1c, the traffic is=
 distributed across both the interfaces uniformly and I get aggregated thro=
ughput. If not, the traffic flows only on 1 interface.

Is this a bug? How do I solve this? Or am I doing something wrong?

I am using Free-BSD 9.0 release.

System 1:
# ifconfig -v lagg0
lagg0: flags=3D8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 15=
00
        options=3D13b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,TSO4>
        ether 00:0e:1e:08:05:20
        inet 192.168.100.1 netmask 0xffffff00 broadcast 192.168.100.255
        nd6 options=3D29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet autoselect
        status: active
        groups: lagg
        laggproto lacp
        lag id: [(8000,00-0E-1E-08-05-20,0213,0000,0000),
                 (8000,00-0E-1E-04-2C-F0,0213,0000,0000)]
        laggport: ql1 flags=3D18<COLLECTING,DISTRIBUTING> state=3D7D
                [(8000,00-0E-1E-08-05-20,0213,8000,000F),
                 (FFFF,00-00-00-00-00-00,0000,FFFF,0000)]
        laggport: ql0 flags=3D1c<ACTIVE,COLLECTING,DISTRIBUTING> state=3D3D
                [(8000,00-0E-1E-08-05-20,0213,8000,000E),
                 (8000,00-0E-1E-04-2C-F0,0213,8000,000E)]

System 2:

# ifconfig -v lagg0
lagg0: flags=3D8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 15=
00
        options=3D13b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,JUMBO_MTU,TSO4>
        ether 00:0e:1e:04:2c:f0
        inet 192.168.100.2 netmask 0xffffff00 broadcast 192.168.100.255
        nd6 options=3D29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
        media: Ethernet autoselect
        status: active
        groups: lagg
        laggproto lacp
        lag id: [(8000,00-0E-1E-04-2C-F0,0213,0000,0000),
                 (FFFF,00-00-00-00-00-00,0000,0000,0000)]
        laggport: ql1 flags=3D1c<ACTIVE,COLLECTING,DISTRIBUTING> state=3D7D
               [(8000,00-0E-1E-04-2C-F0,0213,8000,000F),
                 (FFFF,00-00-00-00-00-00,0000,FFFF,0000)]
        laggport: ql0 flags=3D18<COLLECTING,DISTRIBUTING> state=3D3D
                [(8000,00-0E-1E-04-2C-F0,0213,8000,000E),
                 (8000,00-0E-1E-08-05-20,0213,8000,000E)]


thanks
Adarsh


________________________________
This message and any attached documents contain information from QLogic Cor=
poration or its wholly-owned subsidiaries that may be confidential. If you =
are not the intended recipient, you may not read, copy, distribute, or use =
this information. If you have received this transmission in error, please n=
otify the sender immediately by reply e-mail and then delete this message.



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