In der vergangenen Woche gelang es sieben der acht ETH2-Kunden unter aktiver Entwicklung, den Hauptmeilenstein zu markieren, bei der “Interop-Lock-In” von einzelnen Klienten zu Multi-Client-Testnets zu wechseln. Mit diesem aufregenden Erfolg in der ETH2 -Entwicklung wollten wir darüber nachdenken, wie dieser Punkt erreicht wurde und was es für das Ethereum -Netzwerk und das Ökosystem bedeutet.
Jeder, der Ethereum in den letzten Jahren folgt, ist wahrscheinlich mit Begriffen wie “Ethereum 2.0”, “Eth2” oder “Serenity” vertraut. Jedes von diesen bezieht sich auf wesentliche Upgrades, die für das Ethereum -Protokoll vorgesehen sind, das seit dem Netzwerk im Jahr 2015 in irgendeiner Form vorgesehen ist.
In den frühen Jahren von Ethereum wurde die bahnbrechende Forschung parallel zur ursprünglichen Kette (ETH1) durchgeführt, während das massive Wachstum der Ethereum -Community, die folgte, die anfängliche Einführung dezentraler Bewerbungen unterstützte. Trotzdem war die Straße von diesen frühen Durchbrüchen zu einer hoch dezentralen, aber skalierbaren Proof-of-Stake-Blockchain lang. In den letzten 18 Monaten hat die Forschung jedoch schließlich zu einer zusammenhängenden und vollständigen Vision für die kommenden wichtigen Upgrades, die als ETH2 bezeichnet werden, gestaltet.
Als Forschung gegen Ende 2018 in die Spezifikationen wechselte, viele Teams (Kundenteams) aus der gesamten Community stieg, um Kernimplementierungen des Protokolls (Clients) aufzubauen. Seitdem gab es ein dynamisches Spiel zwischen Spezifikation und Implementierung. Fort-Mal Anrufe und eine gemeinsame Spezifisches Repository Organisation der Kommunikation und des Austauschs von Ideen, aber Kundenteams haben in erster Linie in der relativen Isolation und dem Aufbau und Test ihrer Implementierungen des Protokolls gearbeitet.
Während die Spezifikation ein bewegliches Ziel war, konnten die Kunden nur so tief in Interoperabilität und Optimierungen eintauchen, aber sobald die Phase 0 -Spezifikation von ETH2 als als angesehen wurde “gefroren” Am 1. Juli 2019 machten die Kunden enorme Fortschritte und machten konkrete Schritte in Richtung Produktion.
Interop
Joseph Delong von Pegasys Hatte die verrückte Idee, Mitglieder aus jedem der Kunden -Engineering -Teams an einem abgelegenen Ort für eine Woche der Interoperabilitätsarbeit zu versammeln. Die Veranstaltung galt als “Interop Lock-In” oder wie es allgemein verwiesen wurde-“Interop”. Mit dem technischen Einfrieren in Sicht und devBeton am Horizont, Interop im September war eine Gelegenheit, in der all diese Stakeholder anfänglichen Interop-Ausgaben persönlich durcharbeiten.
Der Hauptzweck Von der Veranstaltung war jeder teilnehmende Kunde, um eine paarige Interoperabilität miteinander in kleinen Testnetzwerken zu erreichen- Leuchtturm <--> artemisAnwesend Lodestar <--> LeuchtturmAnwesend Lodestar <-> Artemisusw.
Die teilnehmenden Kundenteams gehörten:
Zusätzliche Ziele umfassten das Testen (1) größere Netzwerke sowohl in der Anzahl der Knoten und (2) Validator Count, (3) Netzwerke mit 3+ Clients, (4) Verbesserung der Tools zur Überwachung und Debugie von ETH2 -Netzwerken und (5) andere lustige Dinge wie das Erhalten von Raspberry -PIs und das Erstellen von Visualisierern.
Vor der Veranstaltung schienen einige Tore wie eine Strecke zu sein, aber die Teams arbeiteten fleißig bis zur Frist und erzielten erstaunliche Fortschritte. Bis zum Ende der Woche übertroffene Kundenteams die ursprünglichen Erwartungen, einige paarweise Netzwerke zu haben, sondern die gesamten paarigen Tests abzuschließen, um ein kleines Netzwerk von zu erstellen alle 7 teilnehmende Kunden und mehr.
Das Folgende ist ein Blick auf die Höhepunkte der Kundenerfolge, ist jedoch sicherlich nicht erschöpfend:
Multi-Client-Testnetze
- Alle 7 teilnehmenden Kunden erreichten Paarweise Interoperabilitätund obwohl ein 8., Shasperkonnte nicht anwesend sein, sie haben es begonnen Auch diesen Meilenstein durcharbeiten.
- Zwischen 3+ Clients, 3+ Knoten und höher als minimaler Validatorzahlen wurden viele größere Testnetze gebildet.
- Alle 7 Kunden Anwesend wurden erfolgreich in einem einzigen Netzwerk betrieben.
- Alle LIBP2P -Implementierungen der teilnehmenden Sprachen sind nun nach dem Debuggen einiger kleinerer Themen interoperabel.
Netzwerkdebugging und Tools

- Manche Konsensfehler zwischen den Kunden wurden identifiziert, debugiert und als Teile des Zustandsübergangs aufgezeichnet, die eine erhöhte Testabdeckung erfordern.
- Befehlszeilen -Tools wurden entwickelt, um SSZ -Objekte und Zustandsübergänge besser zu debuggen (ÜbergängeZcliAnwesend Pycliund ähnliche Tools, die in Clients eingebettet sind).
- Fortschritte bei Metriken -Dashboards, einem Gabel -Visualizer und anderen Tools, um Kunden und Netzwerke besser zu verstehen
- Die Clients wurden in Container verpackt, um groß angelegte Netzwerktests innerhalb der Durchführung Whiteblock Genesis -Plattform.
Und noch einige

- Kundenteams dienten als die ersten Alpha -Benutzer des anderen, was zu umfangreicher führte Skripte erstellen/ausführen und verwandte Dokumentation.
- Isolierte Lasttests mit Nimbus und Lighthouse haben über 2000 Validatoren auf einer einzelnen Maschine mit ähnlich vollen Knoten über LAN gepaart.
- Mehrere Kunden wurden auf einem gebaut und getestet kleines Himbeer -Pi -Netzwerk.
Und darüber hinaus
Interop markierte einen wichtigen Wendepunkt für ETH2. Vor dem Start gibt es noch viel Arbeit zu erreichen, aber die technischen Bemühungen werden zunehmend auf Testnetze, Optimierungen und Benutzerfreundlichkeiten ausgerichtet – Arbeiten, die diese Software in die Hände von Benutzern verschieben.
Was ist als nächstes für Kundenteams und ETH2 -Entwicklung los?
- Benchmarks und Optimierungen
- Testsynchronisation, Stresstestnetzwerke usw.
- Öffentliche und angereicherte Testnetze
- Audits von Drittanbietern
- Polieren der Validator -Benutzererfahrung
Schließlich verdanken wir uns ein besonderes Dankeschön an die Konsensys Team, um zu organisieren, zu veranstalten und Ressourcen bereitzustellen, die die Interop ermöglichten.

