Hi tech@.

Two machines (A and B) running recent 5.4-stable plugged into same switch.

A has:

em0 at pci4 dev 0 function 0 "Intel 82573E" rev 0x03: msi, address
00:30:48:66:a0:ec
em1 at pci5 dev 0 function 0 "Intel 82573L" rev 0x00: msi, address
00:30:48:66:a0:ed

B has:

bnx0 at pci2 dev 0 function 0 "Broadcom BCM5716" rev 0x20: apic 0 int 16
bnx1 at pci2 dev 0 function 1 "Broadcom BCM5716" rev 0x20: apic 0 int 17

bnx0: address b8:ac:6f:91:48:da
brgphy0 at bnx0 phy 1: BCM5709 10/100/1000baseT PHY, rev. 8
bnx1: address b8:ac:6f:91:48:db
brgphy1 at bnx1 phy 1: BCM5709 10/100/1000baseT PHY, rev. 8

Both servers have LACP trunk(4)s built on-top the above mentioned interfaces:

A has:

em0: 
flags=28b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST,NOINET6>
mtu 1500
    lladdr 00:30:48:66:a0:ec
    priority: 0
    trunk: trunkdev trunk0
    media: Ethernet autoselect (1000baseT full-duplex,master)
    status: active
em1: 
flags=28b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST,NOINET6>
mtu 1500
    lladdr 00:30:48:66:a0:ec
    priority: 0
    trunk: trunkdev trunk0
    media: Ethernet autoselect (1000baseT full-duplex,master)
    status: active
trunk0: flags=28943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,NOINET6>
mtu 1500
    lladdr 00:30:48:66:a0:ec
    priority: 0
    trunk: trunkproto lacp
    trunk id: [(8000,00:30:48:66:a0:ec,402C,0000,0000),
         (0001,ec:30:91:25:c0:4f,03E8,0000,0000)]
        trunkport em1 active,collecting,distributing
        trunkport em0 active,collecting,distributing
    groups: trunk
    media: Ethernet autoselect
    status: active

B has:

bnx0: 
flags=28b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST,NOINET6>
mtu 1500
    lladdr b8:ac:6f:91:48:da
    priority: 0
    trunk: trunkdev trunk0
    media: Ethernet autoselect (1000baseT full-duplex)
    status: active
bnx1: 
flags=28b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST,NOINET6>
mtu 1500
    lladdr b8:ac:6f:91:48:da
    priority: 0
    trunk: trunkdev trunk0
    media: Ethernet autoselect (1000baseT full-duplex,master)
    status: active
trunk0: flags=28843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,NOINET6> mtu 1500
    lladdr b8:ac:6f:91:48:da
    priority: 0
    trunk: trunkproto lacp
    trunk id: [(8000,b8:ac:6f:91:48:da,402C,0000,0000),
         (0001,ec:30:91:25:c0:4f,03EA,0000,0000)]
        trunkport bnx1 active,collecting,distributing
        trunkport bnx0 active,collecting,distributing
    groups: trunk
    media: Ethernet autoselect
    status: active

Now about the difference.

The A receives on both em0 and em1 and transmits on em0:

IFACE     STATE DESC             IPKTS IBYTES  IERRS  OPKTS OBYTES  OERRS  COLLS
em0       up:U                    2711  2859K      0   5593  5222K      0      0
em1       up:U                    2867  2343K      0     10   3226      0      0
trunk0    up:U                    5578  5202K      0   5603  5225K      0      0

The B receives *only* on bnx0 and transmits *only* on bnx1:

IFACE     STATE DESC             IPKTS IBYTES  IERRS  OPKTS OBYTES  OERRS  COLLS
bnx0      up:U                    2873  2956K      0      2    977      0      0
bnx1      up:U                       5    360      0   3119  2604K      0      0
trunk0    up:U                    2878  2956K      0   3121  2605K      0      0

The only difference ifconfig shows, both em(4)s are master interfaces
on A, but only
bnx1 is a master interface on B (I haven't found any description of
"master" media option
in ifconfig man page, trunk man page saying about "master" but only
wrt failover mode).

Whole situation smells like trunk(4) receives on *all* master
interfaces, but transmits
on *first available* master.

The question here is, why both em(4)s are master interfaces on A, but
only bnx1 is
master interface on B?

Another question is, what is transmit hash policy for a trunk in LACP
mode? If it matters,
while testing on B, different MACs and different VLANs been used, but
effect is same:
bnx0 only receives, bnx1 only transmits.

Anybody with trunking experience please speak up.

Thanks,
Alexey

Reply via email to