(1/27) Sequencing: From the Fundamentals to Based Rollups
Looking to understand sequencing? Hearing that the rollup-centric roadmap was a mistake? Thinking @ethereum's execution-layer might be compromising on centralization?
All about sequencing and where we are headed!
(2/27) Although blockchains come in many different shapes and sizes, (in general) they all have the same goal: decentralized computing.
The objective is to create a single shared computing environment that exists across many/hundreds/thousands of computers simultaneously.
(3/27) Users interact with blockchains via transactions (txns), which contain instructions that tell the blockchain how to update the shared environment.
For example: if I want to buy $COW, I send a txn to @ethereum that instructs Ethereum to trade my $ETH for the $COW token.
(4/27) In traditional computing, if I want my computer to take an action, I send a command and the computer executes it.
Things change, however, in the blockchain world because we have a shared computing environment. One person's txn may affect the results of the next person's.
(5/27) Let's imagine two users: Alice wants to sell 1,000,000 $ETH and Bob wants to sell 1 $ETH. Both submit a txn.
The order of which txn gets executed first is incredibly important, particularly for Bob. If Alice's txn goes first, he will get SIGNIFICANTLY less for his $ETH.
(6/27) Or let's say that both Alice and Bob notice that @TrustlessState put his @cryptopunksnfts up for sale and submit a buy txn at the exact same moment.
There's only one CryptoPunk #1118, so only one txn can be successfully executed; the other will fail.
(7/27) One more example: let's say Alice wants to buy $REX, a niche token with little liquidity.
If Bob moves quickly, he can sandwich Alice's txn with his own, first buying and then selling $REX. Result: Alice will buy $REX at a worse price, and Bob will extract the delta.
(8/27) The last example is important as it is the prototypical example of Maximum Extractable Value (MEV).
Though out of scope of this thread, MEV is very important to blockchains because it represents an existential threat. Left unsolved, MEV will render a blockchain worthless.
x.com/LogarithmicRex/status/1556448359300227072
(9/27) The point is that the sequence by which pending txns are executed is extremely important in determining their outcome, and ultimately state of the shared computing environment.
And so, a critical questions for all blockchains is "who controls the sequencing?"
(10/27) There are many approaches, implementations and nuances between the different ways different blockchains approach sequencing. So much so that it is very challenging to speak in broad strokes.
So let's get specific and look at Ethereum.
(11/27) Ethereum is made up of a network of computers (nodes) that each run a local copy of the shared computing environment. These copies are kept perfectly in sync via a process called Proof of Stake (PoS).
Once every 12 secs (slot), a node is selected to progress Ethereum.
x.com/LogarithmicRex/status/1579594609855934465
(12/27) This node (called the proposer) is responsible for viewing all of the pending txns and selecting which ones will be executed in which order.
They bundle up the sequence of txns and package them into a block, which is then sent to and executed locally on all other nodes.
(13/27) [SIDE NOTE] In practice, the proposer isn't usually doing the sequencing. Though they have the option to do it locally, building a block is hard, and so most proposers defer to a third party called a builder.
Even still, proposers are ultimately in charge of sequencing.
x.com/SalomonCrypto/status/1570557757190983680
(14/27) The point: during every slot, the proposer is the only person deciding the sequence of txns. On a per-slot basis, sequencing is centralized to a specific node.
However, the proposer changes every single slot... so over time, sequencing is distributed across all nodes.
(15/27) Therefore, we say that Ethereum has decentralized sequencing; no one party controls the sequencing of transactions.
Decentralized sequencing is one of the cornerstones of Ethereum’s credible neutrality. And credible neutrality is what makes Ethereum valuable.
x.com/logarithmicrex/status/1559920665477595137?s=46&t=a-_27ks-01Qh0N76AOoudw
(16/27) However, decentralized sequencing isn’t the only way to build a blockchain. Take, for example, rollups.
Rollups are high performance blockchains that operate their own computing environments while settling to Ethereum.
Today, most rollups use centralized sequencers.
x.com/LogarithmicRex/status/1591614638138875905
(17/27) Rollups are a new technology, and so today are deployed with training wheels. For the most part, rollups exist as protocols that are entirely owned and operated (and profited) by the companies that built them.
The tech is new, the stakes are enormous - it makes sense.
(18/27) Most rollups have explicit intensions/plans to eventually decentralize, achieve credible neutrality and become a true extension of Ethereum, but by their nature decentralization isn't critical.
Regardless, the result is that most rollups have centralized sequencers.
(19/27) This means that every rollup block is sequenced by the same computer, controlled by a single party. They get to decide which txns are included, which are banned and what order they appear in.
It also means that 100% of the fees generated are captured by that same party.
(20/27) Rollups are still a young technology - there are definitely growing pains, but the roadmap is beginning to come together with a lot of huge implications for sequencing.
So let's end this thread with a few hints on what's coming next!
(21/27) First - efforts to progressively decentralize sequencers. Decentralization isn't just a tech problem, it's an ownership/control problem.
@arbitrum is the biggest rollup leading in this aspect, actively working towards decentralized sequencing.
(22/27) Today's implementation of centralized sequencing has another consequence: isolated sequencing. Each rollup has its own sequencer, so that that means txns can't operate cross-rollup.
This is the underlying cause of Ethereum's current fragmentation problem.
(23/27) Fortunately, there has been an incredible amount of work bringing shared sequencing to life.
Companies like @AstriaOrg and @EspressoSys have built the complex infrastructure needed to not only operate shared sequencing, but make cross-rollup composability easy.
(24/27) The big problem with shared sequencing: you need to have people that are willing to share. It always comes down to the same thing: who has control and who is going to capture the value?
If you think about it long enough, you'll realize we already know the answer...
(25/27) The more credibly neutral a shared sequencer, the more rollups will join and the stronger the network effects will be.
There's one blockchain that maximizes for decentralization, that actually achieves credible neutrality...
and it already has decentralized sequencing.
(26/27) Coined and championed by @drakefjustin, based rollups will leverage Ethereum's decentralized node-set to serve as a shared, decentralized, credibly neutral sequencer.
Danksharding was the first upgrade to directly support rollups. Based rollups will be the next.
(27/27) The idea is complicated, but electric. It's far too much for just one thread. Make sure to follow and keep an eye out. I'll be writing much more on based rollups, how they work and how they will change Ethereum.
But I promise you, it's worth it.