Hi Folks, I'm using lagg(4) on some of our servers and I'm just wondering how the failover is implemented. The manpage isn't quite clear: failover Sends and receives traffic only through the master port. If the master port becomes unavailable, the next active port is used. The first interface added is the master port; any interfaces added after that are used as failover devices. What is meant by "becomes unavailable"? Is it just the physical link which needs to become unavailable to trigger a failover? I do wonder, because there might be other faults where the link is still active, but the port is unusable. Think of a wrong vlan on the switch itself. When using bonding under Linux (yeah, I know, the configuration sucks ;) ), I can configure the device to check for arp respones of it's default gateway. If arp to the default gw becomes unavailable, bonding fails over to the next interface and tries it luck over there. With that kind of configuration, I could cover a misconfigured switch port and still have failover. Long Story short: How is failover in lagg(4) implemented? Thanks for any hints :) Or should I ask the OpenBSD boys, since lagg(4) seems to be a port of trunk(4)?? :) best regards, Marian
On Tue, Aug 12, 2008 at 12:37:15PM +0200, Marian Hettwer wrote:> I'm using lagg(4) on some of our servers and I'm just wondering how the > failover is implemented. > The manpage isn't quite clear: > > failover Sends and receives traffic only through the master port. > If > the master port becomes unavailable, the next active port > is > used. The first interface added is the master port; any > interfaces added after that are used as failover devices. > > What is meant by "becomes unavailable"? Is it just the physical link which > needs to become unavailable to trigger a failover?Yes. It seems you need lacp protocol described later in the manual. Eugene Grosbein
On Tue, Aug 12, 2008 at 12:37:15PM +0200, Marian Hettwer wrote:> Hi Folks, > > I'm using lagg(4) on some of our servers and I'm just wondering how the > failover is implemented. > The manpage isn't quite clear: > > failover Sends and receives traffic only through the master port. > If > the master port becomes unavailable, the next active port > is > used. The first interface added is the master port; any > interfaces added after that are used as failover devices. > > What is meant by "becomes unavailable"? Is it just the physical link which > needs to become unavailable to trigger a failover? > > I do wonder, because there might be other faults where the link is still > active, but the port is unusable. Think of a wrong vlan on the switch > itself. > > When using bonding under Linux (yeah, I know, the configuration sucks ;) ), > I can configure the device to check for arp respones of it's default > gateway. If arp to the default gw becomes unavailable, bonding fails over > to the next interface and tries it luck over there. > With that kind of configuration, I could cover a misconfigured switch port > and still have failover. > > Long Story short: How is failover in lagg(4) implemented?It is simply performed on the physical link state, nothing more. Adding smarter methods of detecting the link such as what Linux does are very welcome. You may want to also look at LACP mode where heatbeat frames are exchanged with the peer. Andrew