I needed more bandwidth to the network for our storage server, so as FreeBSD now supports LAG, we might as well use it. First job is to configure the switch with a port channel. We are using a Cisco 2960G
interface GigabitEthernet0/8 description *** NAS1 Pt1 *** switchport access vlan XX switchport mode access channel-protocol lacp channel-group 1 mode active interface GigabitEthernet0/9 description *** NAS1 Pt2 *** switchport access vlan XX switchport mode access channel-protocol lacp channel-group 1 mode active
Next we need to add the FreeBSD config. Normally you can add this straight in, but i did it remotely so set up the /etc/rc.conf file in advance, then rebooted for it to take effect. Here is the snippet from the /etc/rc.conf
# # LAG CONFIG # ifconfig_bce0="up" ifconfig_bce1="up" cloned_interfaces="lagg0" ifconfig_lagg0="laggproto lacp laggport bce0 laggport bce1 172.16.0.243/24"
All came back after a reboot, we can check the status of the interface with:
ifconfg bce0: flags=8843metric 0 mtu 1500 options=c01bb ether 78:2b:cb:2a:18:07 inet6 fe80::7a2b:cbff:fe2a:1807%bce0 prefixlen 64 scopeid 0x1 nd6 options=29 media: Ethernet autoselect (1000baseT ) status: active bce1: flags=8843 metric 0 mtu 1500 options=c01bb ether 78:2b:cb:2a:18:07 inet6 fe80::7a2b:cbff:fe2a:1808%bce1 prefixlen 64 scopeid 0x2 nd6 options=29 media: Ethernet autoselect (1000baseT ) status: active lagg0: flags=8843 metric 0 mtu 1500 options=c01bb ether 78:2b:cb:2a:18:07 inet 172.16.0.243 netmask 0xffffff00 broadcast 172.16.0.255 inet6 fe80::7a2b:cbff:fe2a:1807%lagg0 prefixlen 64 scopeid 0xd nd6 options=29 media: Ethernet autoselect status: active laggproto lacp laggport: bce1 flags=1c laggport: bce0 flags=1c
Now we can check the switch is ‘lagging’ nicely on the switch:
GCIFL-ACC4#sh lacp neighbor Flags: S - Device is requesting Slow LACPDUs F - Device is requesting Fast LACPDUs A - Device is in Active mode P - Device is in Passive mode Channel group 1 neighbors Partner's information: LACP port Admin Oper Port Port Port Flags Priority Dev ID Age key Key Number State Gi0/8 SA 32768 782b.cb2a.1807 21s 0x0 0x1B0 0x1 0x3D Gi0/9 SA 32768 782b.cb2a.1807 21s 0x0 0x1B0 0x2 0x3D
All looks good so I’ll be doing some speed tests later on.
UPDATE: As expected we don’t see 2GB on a single stream, but as soon as multiple machines connect to the test server the counters start to move on both ‘member’ interfaces.