header-langage
简体中文
繁體中文
English
Tiếng Việt
Scan to Download the APP
Partnered With:

Behind the scenes at Witti

Read this article in 12 Minutes
The Schlesi test network was found to have failed to obtain determinism for nearly 50 periods, resulting in the instability of the chain and the occurrence of several temporary bifurcations

Original author: Somer Esat

Source: ethereum lovers

A sword

Original title: notice | Schlesi test net ends, Witti rises!


Schlesi, a multi-client test network for ethereum 2.0, has now completed its historic mission and is about to stop running.

It's no exaggeration to say that Schlesi has achieved an important milestone on the ethereum 2.0 roadmap: the successful launch of a public multi-client testing network. In this article I'm going to talk about the Schlesi test network and its successor, the Witti test network.

Some important definitions

Let's talk about some terms first.

What is a test network?


The test network is an alternate network used for testing, and it is desirable to simulate the production environment of the target network as much as possible to test the actual capabilities of the software and protocols. Users who plan to use the target network for production can use the test network to test the capabilities of the client to ensure that they do not encounter bugs. The test network is important because it helps you find bugs before they actually go into production.

What is ethereum 2.0 test web?


The first Phase of ethereum 2.0, Phase 0, exits the Beacon Chain. Bed Edgington gave a good explanation of what a beacon chain is in October 2018:

"Beacon chain's core function is for itself and fragmentation chain management rights to prove that the operation of the agreement. This management include: management validation and a piece of weight; arrange blocks for each time slot in each shard proposal; organization verifier, divided into committee, participate in the vote on the proposed block; perform common rules, grant rewards and punishment; become the shard registration status of the anchor, to assist in the shard deal."

To test the beacon chain, we need to have one or more clients working together to form a network. The ethereum 2.0 test network is a Phase 0 beacon chain instance running in a test environment. One single client testing network that is currently in operation is the Topaz testing network initiated by Prysmatic Labs.

What is a multi-client test network?

The multi-client test network is a test network composed of the clients developed by different development teams. Both Schlesi and Witti are multi-client test networks. Multi-client testing networks are more challenging because different clients have their own features, bugs, and configurations. Most clients run a private test network before participating in the multi-client test network. Afri Schoedon put it well:

"Before we can launch the main network, we need to launch a test network that mimics the conditions of the main network as much as possible. This requires that we have a stable, long-term, and durable test network, and it is not enough to have only one kind of client support, but to have multiple clients support and even all clients can participate." (source)

How did the ethereum 2.0 test network split?


The beacon chain is supported by an equity proof agreement. When two-thirds of the verifiers have witnessed the validity of certain blocks, a batch of blocks will be confirmed. This is known as "reaching certainty", after which the previous block can never be changed. When blockchain cannot reach certainty, it will become unstable and may diverge. Bifurcation occurs when different validators support competing blocks. This is what happens on the Schlesi test network.

Multi-client test network history

Schlesi is not actually the first multi-client testing network. There is an earlier test network, called "multinet" was launched in October 24, 2019 (lot), and participation of multiple clients: Nimbus, Trinity, Lighthouse, Prysm, Lodestar and Artemis (now Teku client). However, it is more like a simulated multi-client test network. Afri Schoedon explains:

"Eth2.0 Multinet is a series of simulations of multiple clients set of testing script, it can adjust various parameters to simulate the test results, such as the verifier. Multinet is used to minimize Eth2.0 specification." (source)

In March 2020, during a developer conference call, ethereum foundation researcher Danny Ryan expressed his desire to "launch the multi-client test network." Then came the Schlesi test network.

The name comes from the Schlesisches Tor train station in Berlin, Germany. The Schlesi multi-client test network was launched on April 27, 2020.

During its operation, the goal of the Schlesi test network was to test the ethereum 2.0 v0.11.1 and v0.11.2 specifications. In the past, those test networks targeted at v0.10 were stopped because of instability.

When Schlesi started, it was successful in interconnecting two batches of verifiers running various ethane 2.0 clients (Lighthouse and prching), and later Teku was successfully added. Nimbus and Lodestar are slightly behind schedule, but are catching up.

Then, on May 17th, Afri Schoedon announced a split in the test web.




Despite its short existence, Schlesi gave rise to the opportunity to organize documentation, write configurations, and bootstrap launches, and to allow multiple clients to join at the same time; You can openly deploy the nodes, synchronize with the test blockchain, and pledge the Goerli ETH test network to be the verifier; Developers were also pleasantly surprised to find that Schlesi took so long to run and that client teams were recognized for quickly fixing problems in their software implementations. All in all, it was a happy ending.

So what caused the Schlesi test network to stop? Ivan Martinez from the Prysmatic Labs team summed up the problem in their update log:

"On 15 May, at around 11am utc, the Schlesi test network was found to have failed to obtain certainty for nearly 50 periods... eventually leading to instability in the chain, with several temporary forks.

After failing to obtain certainty for more than 300 sessions, the prching client and Lighthouse client bifocalized at time slot 150496. One block confiscated a witness at the time of submission, but different clients did not agree when calculating rewards and penalties for the confiscated verifiers. This exposes two different bugs in the penalty computation of the prching client! After the chain split, we decided the best thing to do was to start over. While Schlesi was able to recover from the error at the time, we felt it would be best to immediately learn the lessons we learned from the incident and launch a new multi-client testing network. "

Then the curtain fell on Schlesi. Witti will rise soon!

Witti multi-client test network

Witti is the latest multi-client testing network. Its margin contracts were all deployed on May 25th, on the Goerli test site.

Like Schlesi, Witti takes its name from a metro station in Berlin (Wittenberglatz). According to its GitHub page, Witti will support three ethane 2.0 clients: Lighthouse, prching, and Teku. Nimbus and Lodestar are still under development.

The ethereum 2.0 v0.11.3 specification is a test target for Witti, as most clients have already implemented or are close to implementing the functionality of this specification. Despite the recent release of v0.12, it is reasonable to assume that Witti and future test networks will be able to absorb these changes.

Witti testing has been started on May 27, but in the case of block browser https://witti.beaconcha.in/ it.

conclusion

To summarize, we will soon have a new ethereum 2.0 multi-client test network called Witti; Its predecessor, Schelesi, will no longer operate, though it represents an important choice.

Personally, I am very excited to be able to deploy a node adoption with Witti. In addition to helping developers with testing, I have a lot of fun myself. I think everyone should try it. I wrote a guideline for participating in the Topaz test network using the Prysm client, and I will write a similar one when Witti is started.

Finally, I would like to express my gratitude to all the developers. The ethereum ecosystem and community are full of ambitious people working towards a common goal, ethereum 2.0. Countless developers, researchers, thinkers, and community leaders have worked tirelessly to make this possible. Thank you!



Welcome to join the official BlockBeats community:

Telegram Subscription Group: https://t.me/theblockbeats

Telegram Discussion Group: https://t.me/BlockBeats_App

Official Twitter Account: https://twitter.com/BlockBeatsAsia

举报 Correction/Report
Choose Library
Add Library
Cancel
Finish
Add Library
Visible to myself only
Public
Save
Correction/Report
Submit