When people discuss what makes settlement fast on Dusk Network, the conversation almost always jumps straight to consensus. I think that skips a quieter design decision doing real work underneath it: how blocks and votes actually travel between nodes in the first place.

Most blockchains still lean on gossip-style propagation, where nodes forward messages to peers somewhat redundantly until information saturates the network. Dusk replaced that with Kadcast, a structured peer-to-peer protocol built on Kademlia-style routing that forwards blocks, votes and transactions along deterministic paths instead of flooding everyone with duplicate copies. The routing uses XOR distance between node identifiers to decide who forwards what to whom, so a message spreads through a small number of deliberate hops instead of every node echoing it to every neighbor. Research cited in Dusk's design work points to roughly 25% to 50% lower bandwidth usage compared with gossip protocols doing the same job.

Why bother optimizing networking specifically for a consensus that already promises deterministic finality. Because Succinct Attestation depends on committees reaching agreement quickly within each round, and provisioners voting in that round are, in effect, only as fast as Kadcast lets their votes travel. A consensus algorithm engineered for fast, final settlement gains little if the network layer underneath is slow and redundant, wasting bandwidth on duplicate messages while committees wait to hear from each other.

It is easy to give all the credit to consensus design and none to networking, mostly because networking is harder to put in a pitch deck. But a committee-based consensus is only as deterministic in practice as the network carrying its messages, and Kadcast's lower bandwidth footprint also keeps node operation affordable enough that provisioner participation stays decentralized rather than drifting toward whoever affords the heaviest infrastructure. Settlement speed depends on both layers together, not on consensus theory alone.

@Dusk_Foundation $DUSK #dusk