Safe Network Entwickler Update 🇩🇪 19. August 2021

Dies ist eine maschinelle Übersetzung. Das Original in Englisch ist hier: Update 19th August, 2021

Diese Woche war in vielerlei Hinsicht eine schwierige nach den traurigen Nachrichten der letzten Woche. Manchmal erkennen wir nicht, wie nah wir uns alle sind und auf all unsere unterschiedlichen Arten wollen alle dasselbe, eine bessere Welt. Menschen gehen mit solchen Nachrichten unterschiedlich um. Die Einstellung im Haus war, sich so gut wie möglich auf die Arbeit zu konzentrieren und das nächste Testnetz voranzutreiben.

Die jüngsten Forendiskussionen haben ein starkes Interesse daran gezeigt, wie die sichere Wirtschaft funktionieren wird. Unweigerlich hat sich das Modell mit der Einführung von DBCs als Tauschmittel ein wenig verändert. Um jedem eine bessere Chance zu geben, den Fortschritt zu verfolgen, werden wir in Kürze eine mehrteilige Serie starten, die mit einem Blick auf die aktuellen Änderungen der Token-Infrastruktur beginnt.

In der Zwischenzeit…

Allgemeiner Fortschritt

@lionel.faber und @chris.connelly haben einige produktive Gespräche mit dem Quinn-Team über Timeouts und Fehlerbehandlung geführt. QUIC Peer-to-Peer (qp2p) verwendet die quinn-Bibliothek, um Clients mit dem Netzwerk zu verbinden, und einige der Konnektivitätsprobleme, die wir gesehen haben, sind auf die Art und Weise zurückzuführen, wie die beiden Systeme interagieren. Das quinn-Team ist offen für Pull-Requests und wir machen Fortschritte. Gleichzeitig vereinfachen wir qp2p, indem wir einen Teil des Caching-Verhaltens entfernen, das wir nicht mehr benötigen.

@yogesh hat auch Zeitüberschreitungen und Fehler beim Löschen von Nachrichten aus dem Blickwinkel des Client-Routings aufgespürt, bei denen ein Mangel an CPU-Zyklen die Verbindungsströme von qp2p zu beeinflussen scheint, was schließlich zum Verwerfen von Nachrichten und damit zu Auswirkungen auf die Flüsse führt. Dies sind, zusammen mit AE-Bugs, die Hauptprobleme, die das nächste Testnetz aufhalten. Anti-Entropie ist jetzt meistens für alle Nachrichten implementiert, die Daten mutieren, aber es gibt noch Knicke, die ausgebügelt werden müssen. Da der Client das AE-Paradigma implementiert, werden SectionInfoMsgs redundant und werden nur noch zu einem Overhead für den Bootstrap-Prozess, daher wird es jetzt auch entfernt, wobei AE die Verantwortung dafür übernimmt, den Client mit der Netzwerkinfrastruktur auf dem neuesten Stand zu halten.

Zur Vereinfachung des Messaging hat @anselme PrefixMap, eine Struktur, die Abschnittspräfixen entspricht, von der Knotenfunktionalität in einen generischen Typ verschoben.

Darüber hinaus wurde auch bei der Selbstverschlüsselungskiste eine Vereinfachung erreicht. @oetyng hat es versucht, nicht mehr als nötig tun zu lassen und (bereits letzte Woche erwähnt) die Arbeit auf alle verfügbaren Kerne aufzuteilen. Die erwähnten 459 % Schreibgeschwindigkeitsverbesserungen sind nun 1478 % schneller. (Dies wird wiederum auf einem 6-Kern-Rechner gemessen. Je mehr Kerne, desto höher die prozentuale Verbesserung.) Lesevorgänge sind „nur“ 290 % schneller.

Ansonsten arbeiten wir an einem größeren Feature-Zweig, wie einige Leute bemerkt haben, und machen einen weiteren Schritt in Richtung Zusammenführung von Knoten und Routing Ordner im safe_network-Repository. Dies hat dazu beigetragen, die Parallelität zu erhöhen, und wir haben das Routing mit den AntiEntropy-Änderungen weiter vereinfacht.

Wir haben die Speichernutzung (die nach dem Refactor und AE wieder angestiegen ist) reduziert, indem wir einige zuvor wiederholte Nachrichten abgefangen haben (wir sind bei intensiven Testläufen höchstens auf ein paar hundert MB heruntergekommen). Und wir prüfen jetzt, wie wir auch die CPU-Auslastung reduzieren können!

All dies kommt gut voran, obwohl wir unser Ziel der Stabilisierung von CI noch nicht erreicht haben (was ein ~40-Knoten-Netzwerk mit zwei Abschnitten erfordert, das alle Client-Tests auf CI besteht). Wir führen also weiterhin Fixes und Debugging in diesem Zweig zusammen, bevor wir ihn in main zusammenführen.


Nützliche Links

Fühlen Sie sich frei, unten mit Links zu Übersetzungen dieses Entwicklungsupdates zu antworten, und die Moderatoren werden sie hier hinzufügen.

Als Open Source-Projekt sind wir immer auf der Suche nach Feedback, Kommentaren und Community-Beiträgen. Seien Sie also nicht schüchtern, machen Sie mit und lassen Sie uns gemeinsam das sichere Netzwerk erstellen!