History log of /vpp/src/plugins/lacp/ptx_machine.c
Revision Date Author Comments
# 92e1b83a 07-May-2020 Elias Rudberg <elias.rudberg@bahnhof.net>

lacp: fix regarding vm arg for vlib_time_now calls

Use thread-specific vlib_main_t *vm pointers to avoid problems with
different threads accessing the same vlib_main_t data structure.
This avoids assertion failure when vlib_time_now() is called with a vm
corresponding to a different thread.

Type: fix

Signed-off-by: Elias Rudberg <elias.rudberg@bahnhof.net>
Change-Id: I359596ecff86e03d57aa8d2330f77bf9a913485f


# b98dbb1f 20-Jun-2019 Steven Luong <sluong@cisco.com>

lacp: convert clib_warning to event logger

Replace clib_warning with event logger. The messages for the latter are
stored in the event buffers which can be viewed with debug CLI anytime.

Type: fix

Change-Id: I5ede4d1f1f9f0ab8d66394f49383fc1838d397ae
Signed-off-by: Steven Luong <sluong@cisco.com>


# 91c51291 11-Jun-2019 Zhiyong Yang <zhiyong.yang@intel.com>

lacp: cleanup unnecessary pointer cast

Change-Id: Idc3a7588dc73e7180a15b6ace3684d3c12986b9d
Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>


# 82c5dda4 05-Mar-2019 Steven Luong <sluong@cisco.com>

lacp: passive mode support [VPP-1551]

By definition, passive mode means the node does not start sending lacp pdu until
it first hears from the partner or remote.

- Rename ptx machine's BEGIN state to NO_PERIODIC state.
- Put periodic machine in NO_PERIDOIC state when the interface is enabled for
lacp. ptx machine will transition out of NO_PERIODIC state when the local node
hears from the remote or when the local node is configured for active mode.
- Also add send and receive statistics for debugging.

Change-Id: I747953b9595ed31328b2f4f3e7a8d15d01e04d7f
Signed-off-by: Steven Luong <sluong@cisco.com>


# dd4889e2 29-Mar-2018 Steven <sluong@cisco.com>

lacp: faster convergence for slow-rate config option

Do fast-rate if we are not yet synchronized with the partner.

Stop sending LACP updates as a flash in the worker thread. Just expire the
timer and let the lacp_process handle sending LACP PDU.

Change-Id: I8b36fe74e752e7f45bd4a8d70512c0341cc197a1
Signed-off-by: Steven <sluong@cisco.com>


# 9cd2d7a5 20-Dec-2017 Steven <sluong@cisco.com>

bond: Add bonding driver and LACP protocol

Add bonding driver to support creation of bond interface which composes of
multiple slave interfaces. The slave interfaces could be physical interfaces,
or just any virtual interfaces. For example, memif interfaces.

The syntax to create a bond interface is
create bond mode <lacp | xor | acitve-backup | broadcast | round-robin>

To enslave an interface to the bond interface,
enslave interface TenGigabitEthernet6/0/0 to BondEthernet0

Please see src/plugins/lacp/lacp_doc.md for more examples and additional
options.

LACP is a control plane protocol which manages and monitors the status of
the slave interfaces. The protocol is part of 802.3ad standard. This patch
implements LACPv1. LACPv2 is not supported.
To enable LACP on the bond interface, specify "mode lacp" when the bond
interface is created. The syntax to enslave a slave interface is the same as
other bonding modes.

Change-Id: I06581d3b87635972f9f0e1ec50b67560fc13e26c
Signed-off-by: Steven <sluong@cisco.com>