Safe Network Entwickler Update đŸ‡©đŸ‡Ș 10. August 2023

Dies ist eine maschinelle Übersetzung. Das Original in Englisch ist hier: Update 10 August, 2023

Das nĂ€chste Testnetz, das jeden Tag gestartet werden soll, wird sich mit den variablen Filialkosten befassen. Zur Erinnerung: Wenn die Knoten voll sind, steigt der Preis fĂŒr die Datenspeicherung, um mehr Knoten in das Netzwerk zu locken. Umgekehrt sinken die Ladenkosten, wenn im Netzwerk ausreichend Platz vorhanden ist.

Bevor ein Datenblock gespeichert wird, fragt ein Client nun eine Auswahl von Knoten im Adressbereich (eine enge Gruppe) nach einem Preis. Der von jedem Knoten angebotene Preis hĂ€ngt davon ab, wie viele Daten ein Knoten derzeit verwaltet. Wie wir wĂ€hrend der Testnetze gesehen haben, werden die freie KapazitĂ€t und damit der Preis bei einer Verteilung sinken. WĂ€hrend im letzten Testnetz einige Knoten vollstĂ€ndig gefĂŒllt waren, waren die meisten irgendwo zwischen halbvoll und voll.

Wenn man bedenkt, dass jeder gespeicherte Block ĂŒber eine Reihe von Knoten (derzeit 8) repliziert wird, ist es fĂŒr den Kunden sinnvoll, nicht den niedrigsten Preis auszuwĂ€hlen, da dies dazu fĂŒhren könnte, dass nicht genĂŒgend Knoten die Zahlung aufrechterhalten und die Replikation verhindern, sondern stattdessen einen auszuwĂ€hlen Laden Sie die Kosten in Richtung der Spitze des angebotenen Bereichs, was ein Preis ist, der fĂŒr die Mehrheit der Knoten in der Gruppe akzeptabel ist. Zusammenfassend sollte der Kunde den niedrigsten Preis anstreben, der dennoch garantiert, dass ein Großteil der geschlossenen Gruppe den Block speichert.

Um dies richtig zu machen, werden einige Testnet-Iterationen erforderlich sein, aber wir freuen uns, endlich damit beginnen zu können.

Wir beschĂ€ftigen uns auch damit, wie man DBCs ĂŒber das Netzwerk austauschen kann. Im Moment mĂŒssen DBCs außer Band ausgetauscht werden – per Messaging, E-Mail oder Ă€hnlichem – aber @anselme und @dirvine arbeiten an einem Prozess, bei dem die DBCs, die in einer Transaktion ausgegeben werden, sicher im Netzwerk verfĂŒgbar gemacht werden, so die Der EmpfĂ€nger kann sie abholen, sofern er die Adresse kennt und den richtigen SchlĂŒssel hat.

An anderer Stelle arbeiten wir an einigen Fehlern aus dem letzten Testnetz. Es gibt immer noch einige Probleme mit Verbindungen, da einige Knoten nicht ordnungsgemĂ€ĂŸ zu den Routing-Tabellen anderer Knoten hinzugefĂŒgt werden. Ein weiteres Problem ist die Geschwindigkeit der DatenĂŒberprĂŒfung, die recht langsam ist. Wir haben jetzt eine CLI-Option eingefĂŒhrt, um PUTs nicht zu ĂŒberprĂŒfen, um Uploads zu beschleunigen. Dies kann jedoch bei grĂ¶ĂŸeren Dateien zu Problemen fĂŒhren. Das Warten auf die Antwort von 20 Knoten, bevor ein Client eine Verbindung zum Netzwerk herstellen kann, war ebenfalls ziemlich langsam, daher haben wir diese Anzahl auf 8 Knoten reduziert, was die Sache etwas schneller macht.

Positiv zu vermerken ist, dass die Zahlungen fĂŒr die Datenspeicherung recht schnell abgewickelt wurden, sodass wir damit sehr zufrieden sind.

Allgemeiner Fortschritt

@joshuef hat die KostenbemĂŒhungen fĂŒr die Filialen vorangetrieben und den oben erwĂ€hnten Mehrheitsknotenpreis implementiert. Er hat auch eine PR fĂŒr Cache-Speicherkosten beim Client erstellt und diese genutzt, um sicherzustellen, dass die Routing-Tabellen des Knotens aktualisiert werden, anstatt jeden Knoten anzupingen Zeit. Dies sollte PUT-Anfragen beschleunigen.

Der allgemeine Bugfinder @Qi_Ma hat einen Fehler in der Bereinigungslogik behoben und die Grundursache fĂŒr die ÜberprĂŒfung der doppelten Ausgaben, ĂŒber die wir letzte Woche gesprochen haben, aufgespĂŒrt das auch beheben.

In der Zwischenzeit hat @Chriso die Möglichkeit eingefĂŒhrt, benutzerdefinierte Zweige von Safenode zu erstellen und zum Testen bereitzustellen, sodass wir jetzt nicht zusammengefĂŒhrten Code testen können unsere moderne Rusty-Version des Testnet-Deployer-Tools.

@Aed900 arbeitet weiterhin an „Knoten von zu Hause aus“. Er hat eine Prototyp-Relay-Funktion entwickelt, die es Knoten, die einen privaten Autonat-Status vom Netzwerk erhalten (d. h. sie befinden sich hinter einem Router oder einer Firewall), ermöglicht, mit dem Netzwerk zu kommunizieren und dabei einen anderen Knoten als Relay zu verwenden.

Auf einem Ă€hnlichen Gebiet untersuchte @bzee ein Problem mit nicht routbaren Knoten in „libp2p“, das Probleme verursachte. Es kann an einer kĂŒrzlichen Änderung in „libp2p“ liegen, aber es sind weitere Nachforschungen erforderlich, und das erfordert offenbar spezielle Debug-Tools im Netzwerk-Stack.

Und @roland hat einen Fehler im Testnet-Code behoben, bei dem beim Starten des Faucets kein Bootstrap-Peer bereitgestellt wurde.


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!