图片

Grenz-Nodes sind die Einstiegspunkte des Internet-Computers. Jede Benutzeranfrage muss über einen dieser Knoten geleitet werden, bevor sie das Ziel-Container erreicht. Dieser Artikel bietet einen detaillierten Überblick über die neue Grenz-Node-Architektur, die ein wichtiges Ergebnis des Solenoid-Meilensteins ist, und untersucht die Funktionen, die sie freischaltet.

Die Postboten des Internet-Computers

Auf hoher Ebene können Grenz-Nodes als die Postboten des Internet-Computers angesehen werden, die Anfragen von Clients entgegennehmen und sicherstellen, dass sie an das richtige Ziel geliefert werden. Um ihre Rolle besser zu verstehen, ist es wichtig, die Kernstruktur des Internet-Computers zuerst zu verstehen.

Der Kern des Internet-Computers ist in mehrere Subnetze unterteilt, von denen jedes aus mehreren Kopien besteht. Container (die intelligenten Verträge des Internet-Computers) werden in diesen Subnetzen gehostet. Um mit einem Container zu interagieren (z. B. um eine Überweisung im ICP-Ledger einzuleiten), muss der Client die Anfrage an eine der Kopien im entsprechenden Subnetz weiterleiten.

Hier kommen die Grenz-Nodes ins Spiel: Der Client sendet einfach seine Anfrage an einen beliebigen Grenz-Node, und der Grenz-Node sorgt dafür, dass die Anfrage an das richtige Ziel weitergeleitet wird - eine Kopie im entsprechenden Subnetz. Dieses Design ermöglicht es dem Client, die komplexen internen Abläufe des Internet-Computers nicht zu verstehen oder zu verwalten.

Ohne Grenz-Nodes wäre der Client mit erheblichen Herausforderungen konfrontiert: Er müsste wissen, in welchem Subnetz sich der Container befindet, die Kopien innerhalb dieses Subnetzes identifizieren und überprüfen, welche Kopien aktiv sind und bereit sind, Anfragen zu bearbeiten.

Die Rolle der Grenz-Nodes beschränkt sich jedoch nicht nur auf die Weiterleitung von Anfragen, sie verbessern die Leistung durch Caching, setzen Einschränkungen und Sicherheitsregeln durch, um den Kern der Internet-Computer zu schützen, und fungieren als Konverter, der HTTP-Anfragen in IC-API-Aufrufe umwandelt, was es dem Browser ermöglicht, direkt auf Container zuzugreifen, eine der einzigartigen Funktionen des Internet-Computer-Protokolls.

Bis jetzt wurden die Grenz-Nodes von der DFINITY-Stiftung betrieben, jedoch ändert sich dies mit dem Abschluss der Meilensteine des Solenoid-Roadmaps: Die Randinfrastruktur des Internet-Computers ist jetzt vollständig dezentralisiert.

Neue Randarchitektur

图片

Grenz-Nodes waren einst eine einzelne Entität in der alten Randarchitektur, wurden jedoch in zwei verschiedene Komponenten - API-Grenz-Nodes und HTTP-Gateways - aufgeteilt, wobei jede Komponente unterschiedliche Aufgaben übernimmt:

  • API-Grenz-Nodes, die als öffentlicher Rand des Internet-Computers fungieren und IC-API-Endpunkte offenlegen.

  • HTTP-Gateways fungieren als Umwandlungsschicht für HTTP-Anfragen, die über API-Grenz-Nodes liegen und es Browsern ermöglichen, auf Container zuzugreifen.

Darüber hinaus kann die Entdeckungsbibliothek auch IC-native Clients (z. B. HTTP-Gateway) dabei helfen, API-Grenz-Nodes zu entdecken und sich mit ihnen zu verbinden.

API-Grenz-Node - Öffentlicher Rand von IC

API-Grenz-Nodes fungieren als die zuvor beschriebenen Postboten, die Anfragen an das geeignete Ziel weiterleiten.

Da API-Grenz-Nodes auf den Maschinen der Knotenanbieter betrieben werden (genauso wie Kopien) und vollständig über NNS kontrolliert werden (Hinzufügen, Entfernen und Aktualisieren durch Vorschlagsmanagement), ist der öffentliche Rand des Internet-Computers jetzt vollständig dezentralisiert.

Technische Details

Der Kern des API-Grenz-Node ist der ic-boundary Dienst, der alle wichtigen Aufgaben übernimmt, von der Beendigung der TLS-Verschlüsselung und der Anforderungsanalyse bis hin zur Weiterleitung an die entsprechenden Kopien.

Darüber hinaus umfasst es auch einen Abfrageantwort-Cache und mehrere Schutzmaßnahmen, um sich selbst und den IC-Kern zu schützen. Der Internet-Computer verwendet ein einheitliches VM-Image für Kopien und API-Grenz-Nodes.

Je nach Rolle des Knotens startet der Orchestrator einfach ic-replica für Kopien oder ic-boundary für API-Grenz-Nodes.

图片

HTTP-Gateway - Direkter Browserzugang aktivieren

HTTP-Gateways fügen dem Internet-Computer eine zusätzliche Schicht hinzu, indem sie HTTP-Anfragen in IC-API-Aufrufe umwandeln und an API-Grenz-Nodes weiterleiten. Mit diesen Gateways können Browser und andere HTTP-nutzende Clients direkt mit Containern auf dem Internet-Computer interagieren.

Deshalb können Sie über den Browser auf die Website des Internet-Computers internetcomputer.org zugreifen, ohne zusätzliche Software, selbst wenn die Website vollständig on-chain gehostet wird.

Da das HTTP-Gateway als Umwandlungsschicht fungiert, ist es kein Teil des IC-Kerns und kann von jedem bereitgestellt werden.

Technische Details

Der Kern des HTTP-Gateways ist der ic-gateway Dienst, der Aufgaben wie das Beenden von TLS, HTTP-Caching, das Umwandeln von HTTP-Anfragen in IC-API-Aufrufe sowie das Umwandeln von Antworten zurück in das HTTP-Format verarbeitet.

HTTP-Gateways haben verschiedene Verpackungsformate und können als einzelne Instanz ausgeführt oder wie die DFINITY-Stiftung als Cluster skaliert werden.

Entdeckungsbibliothek - Erleichterung der Verbindung zu IC

Die Entdeckungsbibliothek hilft IC-native Clients (z. B. HTTP-Gateway), verfügbare API-Grenz-Nodes zu finden und sich mit ihnen zu verbinden, indem sie Anfragen an das entsprechende Ziel weiterleitet. Sie bietet verschiedene Strategien, von einfachen Methoden (z. B. zufällige Auswahl von API-Grenz-Nodes) bis hin zu fortgeschritteneren Methoden (fortlaufende Überwachung der Knotenverfügbarkeit und -latenz), um sicherzustellen, dass Anfragen an den besten Knoten weitergeleitet werden.

Technische Details

Die Entdeckungsbibliothek ist in agent-rs verpackt, die Dokumentation ist hier zu finden:

  • internetcomputer.org/docs/current/developer-docs/developer-tools/off-chain/agents/rust-agent#using-dynamic-routing

图片

Transformation

Das Ziel des Übergangs von der alten Architektur zur neuen Architektur besteht darin, den Endbenutzern ein nahtloses Erlebnis zu bieten und gleichzeitig Entwicklern zu ermöglichen, neue Dienste zu erstellen und Innovationen voranzutreiben.

DFINITY wird weiterhin eine Reihe von HTTP-Gateways betreiben, die die vertrauten Domains ic0.app, icp0.io und icp-api.io bedienen.

Entwickler können die Entdeckungsbibliothek nutzen, um direkt mit API-Grenz-Nodes zu verbinden, wodurch sie effektiv das HTTP-Gateway umgehen und die neue Architektur vollständig nutzen.

Aktueller Stand

Alle Komponenten (ic-boundary, ic-gateway und Entdeckungsbibliothek) wurden umfassend getestet und liefen bereits einige Zeit in der Produktion.

Mit der Genehmigung des Vorschlags #134902 gibt es jetzt 20 API-Grenz-Nodes, die den öffentlichen Rand des Internet-Computers bilden. Darüber hinaus hat die DFINITY-Stiftung mehrere HTTP-Gateways zu Test- und Validierungszwecken betrieben und ersetzt nun die verbleibenden Grenz-Nodes nacheinander durch HTTP-Gateways.

Bitte teilen Sie uns Ihr Feedback mit. Sie können jederzeit Ihre Gedanken im DFINITY Developers X-Kanal und im Entwicklerforum mitteilen und bleiben Sie dran für weitere technische Roadmap-Updates, die bald veröffentlicht werden.

图片

#DFINITY #ICP #IC

IC-Inhalte, die Sie interessieren

Technologischer Fortschritt | Projektinformationen | Globale Ereignisse

Folgen Sie dem IC Binance-Kanal

Immer auf dem neuesten Stand