Safe Network Entwickler Update đŸ‡©đŸ‡Ș 27. April 2023

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

Ein weiteres relativ kompaktes Update in dieser Woche, wÀhrend wir an der Vorbereitung des nÀchsten Community-Testnetzes arbeiten, das intern etwas mehr optimiert werden muss. Wir haben eigentlich zwei Testnetze geplant. Die erste wird eine relativ einfache Angelegenheit sein, mit im Speicher gespeicherten Daten und ohne NAT-Traversal. Da wir die Neigung der Community kennen, Testnetze mit Schwanzbildern (sic) und Plattensammlungen zu bombardieren, erwarten wir, dass dies eine ziemlich kurzlebige Angelegenheit sein wird, aber es sollte uns ermöglichen zu sehen, was mit dem Nachrichtenaustausch zwischen Knoten passiert. Bald darauf sollten wir jedoch in der Lage sein, einen Schalter umzulegen, um das Speichern auf der Festplatte und danach NAT-Traversal zuzulassen. Also, kleine Schritte, aber es ist das schnellste Baby, das du je gesehen hast.

Außerdem freuen wir uns, Angus (@aed900) im Team willkommen zu heißen :tada:. Angus ist ein Netzwerktechniker, der uns bei Routing und KonnektivitĂ€t helfen wird. Er springt ins kalte Wasser und arbeitet mit @bzee zusammen, um zu sehen, wie libp2p mit NAT-Traversal umgeht und welche Optimierungen fĂŒr Safe erforderlich sein könnten.

Allgemeiner Fortschritt

@Bochaco ist derzeit Sr. Serialisierung und stellt sicher, dass alle Daten effizient im Speicher oder auf der Festplatte ĂŒbertragen und gespeichert werden können, dass die NachrichtenĂŒbermittlung effizient ist und die erwartete AsynchronitĂ€t bewĂ€ltigen kann und dass wir letztendlich mehrere Programmiersprachen unterstĂŒtzen können, indem wir sicherstellen, dass Datenformate vorhanden sind plattformunabhĂ€ngig (z. B. protobuf).

Viele der generischen Dinge, von denen wir glauben, dass sie auf libp2p gepusht werden können, ĂŒberlassen es uns, die spezifischen Anforderungen fĂŒr Apps zu handhaben, die auf Safe laufen.

@roland, @qi_ma und @anselme untersuchen, wie libp2p mit Datenanfragen umgeht. GrundsĂ€tzlich gibt es zwei Szenarien fĂŒr ein GET. Eine davon ist eine einfache Kademlia-Anfrage, die basierend auf der XOR-Adresse der Daten an die nĂ€chstgelegenen Knoten weitergeleitet wird. „libp2p“ hat auch eine Dienstanbieterfunktion, bei der der Client einen Dienst von einem spezialisierten Knoten (z. B. einem Audit- oder einem Archivknoten) anfordert, der dann die Anfrage ausfĂŒhrt. Offensichtlich wird dies spĂ€ter massiv hilfreich sein.

@bzee testet weiterhin NAT-Traversal. Derzeit befasst er sich mit der Relay-FunktionalitÀt, insbesondere wie wir diese als Teil der Startsequenz verwenden können, d. h. zuerst NAT erkennen und dann optional eine Verbindung zu einem Relay herstellen. Er untersucht auch, wie man erkennt, welche Knoten welche FunktionalitÀt bieten (siehe oben).

@joshuef vertieft sich in die Refresh-FunktionalitĂ€t von libp2p. Kademlia zwingt Knoten standardmĂ€ĂŸig, die Lebendigkeit ihrer nĂ€chsten Nachbarn zu ĂŒberprĂŒfen, indem sie regelmĂ€ĂŸig Daten an sie replizieren, aber dies kann in unserem Fall verschwenderisch sein (oder auch nicht). Begrenzte Tests haben keine Probleme ergeben (und es war in der Tat sehr erfreulich zu sehen!), aber wenn wir uns vergrĂ¶ĂŸern, möchten wir diese zeitbasierte FunktionalitĂ€t möglicherweise auf eine ereignisgesteuerte verschieben, bei der ÜberprĂŒfungen durchgefĂŒhrt werden, wenn Änderungen an der enge Gruppen (Joins und Leaves) werden erkannt.

Und mit dem SchraubenschlĂŒssel in der Hand wie ein neuzeitlicher Mario hat @oetyng heldenhaft DBCs in die neue Architektur eingebaut. Unser neues Zuhause hat jetzt einen Wasserhahn fĂŒr jeden, der ein Comnet startet. Diese Person beansprucht den Genesis-DBC und kann ihn dann nach Belieben weitergeben. Wir planen, eine Webseite zu haben, auf der Benutzer selbst auf den Wasserhahn tippen können, um Zahlungen zu leisten. Davor können Zahlungen ĂŒber die CLI getĂ€tigt werden, indem Sie diesen drei Schritten folgen:

  1. Erhalten Sie eine öffentliche Adresse vom EmpfÀnger.
  2. Rufen Sie den Wasserhahn mit der zu erhaltenden Menge an.
  3. Übergeben Sie das resultierende DBC-Hex an den EmpfĂ€nger.

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!