Skip to content

Networking

Loong edited this page May 21, 2020 · 6 revisions

Work in progress!

Hyperdrive exposes a simple networking interface that must be implemented by the user. It assumes that broadcasting a message to the network will eventually result in all network participants seeing the message. However, it does not assume that the latency of this broadcast is known. This is important, because is no way to know how much work happens between Hyperdrive initiating a broadcast and the broadcast actually happening.

It is explicitly worth noting that in practice not all messages need to exhibit this property, and indeed it is sometimes impossible when nodes are offline for extended periods of time, without using expensive resynchronisation. However, Hyperdrive requires that all commitments to rebase/base blocks will eventually be seen. This is much easier to guarantee, since these blocks occur much less frequently.

Clone this wiki locally