2
0
mirror of https://github.com/openvswitch/ovs synced 2025-10-25 15:07:05 +00:00

lacp: Require successful LACP negotiations when configured.

In the original Open vSwitch LACP implementation, when no slaves
found a LACP partner, the LACP module would attach all of them.
This allowed the LACP bond to fall back to a standard bond when
partnered with a non-LACP switch.  In practice, this has caused
confusion with marginal benefit, so this feature is removed with
this patch.

Signed-off-by: Ethan Jackson <ethan@nicira.com>
This commit is contained in:
Ethan Jackson
2011-11-28 13:54:08 -08:00
parent 26fbdf773f
commit bdebeece55
8 changed files with 85 additions and 61 deletions

View File

@@ -29,6 +29,12 @@ enum lacp_time {
LACP_TIME_CUSTOM /* Nonstandard custom mode. */
};
enum lacp_status {
LACP_NEGOTIATED, /* Successful LACP negotations. */
LACP_CONFIGURED, /* LACP is enabled but not negotiated. */
LACP_DISABLED /* LACP is not enabled. */
};
struct lacp_settings {
char *name; /* Name (for debugging). */
uint8_t id[ETH_ADDR_LEN]; /* System ID. Must be nonzero. */
@@ -48,7 +54,7 @@ bool lacp_is_active(const struct lacp *);
void lacp_process_packet(struct lacp *, const void *slave,
const struct ofpbuf *packet);
bool lacp_negotiated(const struct lacp *);
enum lacp_status lacp_status(const struct lacp *);
struct lacp_slave_settings {
char *name; /* Name (for debugging). */