I'm fairly new to ROS so I'm guessing there is a gap in my understanding, and would appreciate someone explaining to me where I'm going wrong. I have a CCR2004-16G-2S+.
I have a BRIDGE with a BOND (802.3ad) as a member port, that in turn has two ETH interfaces as slaves, feeding upstream to a Unifi USW-8. All settings mostly as default (inc. ARP & HW Offload). When the LAG came up I was seeing insane amount of packet loss. Monitoring the BOND I would see flags (C) and (D) flapping. Disabling one of the slave ETH's alleviated the packet loss.
Code: Select all
BRIDGE <--> BOND <--> ETH01 <--> USW-8
<--> ETH02 <-->
I first built a basic BOND with two ETHs, with all default settings (ARP Enabled), and everything worked fine. No packet loss. Then I created the BRIDGE and added the BOND to it, swapped the IP address from the BOND to the BRIDGE, and the packet loss returned.
When I disabled HW Offload for the bridge port (BOND), everything returned to normal.
Would someone please explain to me what's happening in the switch chip with the config I had, and why disabling HW Offload fixes the problem? Also is there a way I can correctly re-configure the stack to take advantage of HW Offload?
Thanks so much.