Electric-Coin-Company / tfl-book

A Trailing Finality Layer book for a proposed Zcash protocol change.
MIT License
5 stars 2 forks source link

Streamlet: "Sequential composition of single-shot consensus": clarify single-shot vs "direct blockchain construction". #44

Closed nathan-at-least closed 11 months ago

nathan-at-least commented 1 year ago

Question

After reading this section I have no clarity about the distinction being made here:

Sequential composition of single-shot consensus. Finally, Byzantine Agreement or Byzantine Broadcast [16] is a single shot consensus abstraction often studied in the theoretical literature. An alternative for constructing a blockchain is through sequential/parallel composition of singleshot consensus. However, cross-instance pipelining is difficult to accomplish in practice. Partly due to this reason, to the best of our knowledge, most practically deployed schemes employ the “direct blockchain construction” approach. Typically, in a directly constructed blockchain, the entire protocol is streamlined and there is no clear-cut boundary between single-shot instances. Directly constructed blockchains are often easier to optimize in practice.

Streamlet is a directly constructed blockchain, and we take the streamlining idea to its extreme, such that the entire protocol is a streamlined, unified path of “propose-vote” actions.

So if I want to understand it better, I should dig into [16]:

[16] Leslie Lamport, Robert Shostak, and Marshall Pease. The byzantine generals problem. ACM Trans. Program. Lang. Syst., 1982.

nathan-at-least commented 1 year ago

My guess is that "streamlining" may be the possibility of making progress on newer and older proposed blocks simultaneously, such as proposing a block in the current epoch while also voting for blocks proposed in previous epochs.

nathan-at-least commented 11 months ago

This distinction is well covered in a comment by @daira in the Crosslink Construction - Conventions section in a note.