Each node plays one or more roles. Proposers suggest values, acceptors vote on them, and learners observe the final outcome. A single round of agreement on one value is called Basic Paxos, and it runs in two phases.
In Phase 1, a proposer picks a unique, increasing proposal number n and sends a prepare(n) message to the acceptors. Each acceptor that has not already seen a higher number promises not to accept anything numbered below n, and reports back any value it previously accepted. Once a proposer hears promises from a majority, it moves on.
In Phase 2, the proposer sends accept(n, value). The critical rule: if any acceptor already reported an accepted value in Phase 1, the proposer must reuse the value tied to the highest proposal number it heard about, not its own. This is what prevents two values from ever winning. When a majority of acceptors accept, the value is chosen and learners are told.
Because a value is chosen by a majority, any future majority must overlap in at least one acceptor that remembers it. That overlap is the whole trick. Running a fresh two-phase round for every single decision is expensive, so Multi-Paxos elects a stable leader that skips Phase 1 for a stream of decisions, getting you down to one round trip per value in the common case.