Safe Network Entwickler Update đŸ‡©đŸ‡Ș 19. Oktober 2023

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

Es ist großartig, dass wir zumindest auf Kundenseite im Forum nachsehen, Protokolle anfordern können, wenn etwas nicht funktioniert, und es im Handumdrehen beheben können. Ein typisches Beispiel ist das Problem mit fehlenden Blöcken beim Herunterladen großer Dateien. In diesem Fall ging es darum, beim Herunterladen Blöcke zu stapeln.

TatsĂ€chlich war es eine rundum gute Woche fĂŒr Korrekturen, von denen viele mit unseren internen Tests und der Integration zu tun hatten, einige aber auch sichtbarer waren. Einer, der gerade veröffentlicht wurde, befasst sich mit einem Problem, bei dem Kunden zu viel fĂŒr Uploads bezahlten. Jedes Mal, wenn eine RĂŒckzahlung erforderlich war, zahlt der Kunde (derzeit) alle Knoten in der nahen Gruppe zurĂŒck und nicht nur den Knoten mit der höheren Rate. Obwohl wir dies verbessern mĂŒssen (um nicht zu viel zu bezahlen), haben die Knoten tatsĂ€chlich nur das kostenlose Geld verworfen, das ihnen gesendet wurde, wenn sie bereits ĂŒber die Daten verfĂŒgten. Jetzt nehmen sie alle ihnen zugesandten Token entgegen und prĂŒfen dann, ob diese tatsĂ€chlich ausreichen (die Übertragung der Token kann ohnehin nicht rĂŒckgĂ€ngig gemacht werden).

Bei der Untersuchung eines Client-Protokolls von @Toivo, das zeigte, dass der Client bei Chunk-Uploads eine Schleife durchfĂŒhrte, fand Qi die Ursache im Verlust von Netzwerkverbindungen und Routing-Tabellen. In diesem Fall ist es möglicherweise am besten, den Client einfach zu beenden und ihn erneut zu starten.

Es war auch eine großartige Woche fĂŒr die externe Zusammenarbeit. Wir hatten ein produktives Treffen mit Max Inden von IPFS, einem der wichtigsten „libp2p“-Rust-Leute, in dem wir erklĂ€rten, wie wir Kademlia/Libp2p verwenden, was sich deutlich von der Art und Weise unterscheidet, wie IPFS es verwendet. Bei IPFS geht es darum, zu verfolgen, wer die Daten speichert, und nicht darum, die Daten selbst zu verwalten. Daher ist es fĂŒr kleine DatenĂŒbertragungen konzipiert, wĂ€hrend Safe fĂŒr große DatenĂŒbertragungen konzipiert ist, weshalb wir ĂŒber einen eigenen Replikationsmechanismus verfĂŒgen. Wie auch immer, es war ein gutes Treffen und wir freuen uns auf die weitere Zusammenarbeit und darauf, zu sehen, wie wir im Vorfeld einen Beitrag leisten können, wobei AutoNat ein Hauptziel ist.

Vielen Dank an alle, die Anomalien entdeckt und Protokolle gesendet haben. Sehr geschĂ€tzt. Manchmal ist es fĂŒr uns schwierig, Fehler zu reproduzieren, deshalb können sie sehr hilfreich sein. Josh, Qi und Roland haben sie durchgesehen und uns diese Woche dabei geholfen, eine Reihe von Störungen zu beheben.

Wir haben die Ursache des Hauptspeicherverlusts bei Knoten aufgespĂŒrt, die „zurĂŒckrufen“, wenn sie bemerken, dass einer verloren geht oder sich offenbar hinter einem NAT befindet. Dieser Prozess bricht nicht so ab, wie er sollte, daher haben wir einen Teil des Codes entfernt und einen deutlichen RĂŒckgang des Speichers festgestellt. Wir verfolgen jetzt die Auswirkungen dieser Maßnahme und prĂŒfen, ob es hier noch andere Bereiche gibt, in denen wir uns verbessern könnten.

HeapNet2 erweist sich als robustes Biest. Wir freuten uns ĂŒber @neiks Kommentar: „Die Stille im Hören ist ohrenbetĂ€ubend, was bedeutet, dass wir immer weniger Grund zum Jammern finden, lol.“ ”

Da die Chunk-Uploads und -Downloads nun stabil zu sein scheinen, können wir uns auf die Registrierung, die Bezahlung der Foundation und die Optimierung der Replikation konzentrieren.

Wir hoffen, Sie haben bemerkt, dass die Jungs diese Woche im Forum unterwegs waren. Wenn Sie feststellen, dass etwas nicht stimmt, rufen Sie uns einfach an. Beim nĂ€chsten Testnetz sollte es um LizenzgebĂŒhrenzahlungen gehen. Wir arbeiten gerade an einem neuen Setup, um die Dinge dort zu ĂŒberprĂŒfen.

Allgemeiner Fortschritt

@anselme hat Zahlungen schneller und effizienter gemacht, indem er CashNotes (schwer) im Code so schnell wie möglich in Überweisungen (leicht) umgewandelt hat, um dies zu vermeiden Umgang mit großen CashNotes, die von der Festplatte gelesen werden mĂŒssen. Dies fĂŒhrt zu einem geringeren Speicherbedarf, da Übertragungen viel einfacher sind als bei CashNotes und viel weniger Festplatten-I/O erfordern.

Er hat auch einen potenziellen möglichen Double Spend-Fehler behoben, indem er jede Aufteilung zu einem Fehler gemacht hat, mit Ausnahme von Registern, fĂŒr die Aufteilungen als CRDTs behandelt werden Client-Seite.

@roland hat eine PR eröffnet, um Benutzern die Konfiguration des Open Metrics Server-Ports zu ermöglichen. Er befasst sich auch mit der Selbstheilung durch Abfragen und potenzielle Caching-AnsÀtze.

@chriso hat eine neue Kiste namens „sn_releases“ erstellt, um ein Repository zum Herunterladen und Extrahieren unserer Release-BinĂ€rdateien bereitzustellen. Er machte auch eine PR fĂŒr eine Rostkiste zur Verwaltung von Systemdiensten. Diese Arbeit wird die TĂŒr zu einem Tool zum Verwalten von Knoten öffnen (um automatisierte Updates zu ermöglichen).

Frisch nach seinem Sieg bei der Lösung des Mysteriums der fehlenden Chunks beim Download und der Lösung des Client-Loop-RĂ€tsels lĂŒftet @qi_ma nun ein Ă€hnliches RĂ€tsel: das Chunkless-Node-Syndrom. Er hat einige interessante Hinweise zum „PeerId“-Bias, was möglicherweise einige ungleichmĂ€ĂŸige Node-/Chunk-/Reward-Verteilungen erklĂ€rt. :mĂ€nnlicher_detektiv:

@bochaco hat die Netzwerk-LizenzgebĂŒhrenzahlungen so gut wie abgeschlossen, einschließlich der Validierung der pro Knotenadresse gezahlten BetrĂ€ge. Dies ist nun zumindest der erste Schritt, um die Zahlung von NettolizenzgebĂŒhren durch Kunden zu ermöglichen, diese durch Knoten zu verifizieren und Benachrichtigungen von Knoten ĂŒber GossipSub zu versenden. Alle Knoten haben standardmĂ€ĂŸig das GossipSub-Thema abonniert, aber nur die LizenzgebĂŒhren zahlen michnt-Benachrichtigungen werden ĂŒber das Thema gesendet.

@joshuef hat sich angeschaut, wie viele Knoten fĂŒr das Halten eines Chunks bezahlt werden mĂŒssen. Theoretisch könnte es nur eine sein, was den großen Vorteil der Einfachheit hat, aber riskant sein könnte, wenn der Knoten ausfĂ€llt, bevor die Replikation stattfinden kann. @bzee fĂŒhrt Tests zu diesem Szenario durch. Josh und @dirvine arbeiten auch daran, fehlerhafte Knoten zu identifizieren und auszuwerfen/ignorieren.


Liens utiles

N’hĂ©sitez pas Ă  rĂ©pondre ci-dessous avec des liens vers les traductions de cette mise Ă  jour de dĂ©veloppement et les modĂ©rateurs les ajouteront ici.

En tant que projet open source, nous sommes toujours à la recherche de commentaires, de commentaires et de contributions de la communauté. Ne soyez donc pas timide, rejoignez-nous et créons ensemble le réseau sécurisé!