LACP (Link Aggregation Control Protocol)
What it is for
You need more bandwidth between two switches, so you add a second cable -- but that is an L2 loop, and STP will block one, making it pointless.
★★★ LACP bundles several cables into one logical port. To STP that is a single link with no loop, so both cables can forward.
How traffic is spread
★★★ The key: hash per flow, not round-robin per packet.
The device hashes the five-tuple (or MAC pair) to pick which member link this flow uses. Every packet of that flow always takes the same cable.
★★★ Why not round-robin? Because it delivers packets out of order, TCP reads that as loss and slows down -- so the bundle would make things worse.
★★ The direct consequence: a single flow cannot use the aggregate bandwidth. Bond two 10G links and one big file transfer still gets 10G.
★ Common misconceptions
★★★ "Bond two 10G links and one download gets 20G" -- no. A single flow uses one member; only multiple flows can fill the aggregate.
★★★ "Static bonding is the same as LACP" -- the difference is fatal. Static means "I have decided these are bundled", so configuring one end and not the other creates a loop (nobody negotiated). LACP handshakes first and refuses to bundle without a reply -- far safer.
★★ "Losing a member requires reconvergence" -- it does not. LACP simply removes that member; the logical port stays up and the layers above (STP, routing) never notice.