DE102022202570A1 - Verteilte pfadauswahl in informationszentrischen netzwerken - Google Patents

Verteilte pfadauswahl in informationszentrischen netzwerken Download PDF

Info

Publication number
DE102022202570A1
DE102022202570A1 DE102022202570.9A DE102022202570A DE102022202570A1 DE 102022202570 A1 DE102022202570 A1 DE 102022202570A1 DE 102022202570 A DE102022202570 A DE 102022202570A DE 102022202570 A1 DE102022202570 A1 DE 102022202570A1
Authority
DE
Germany
Prior art keywords
metric
node
icn
path strength
network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102022202570.9A
Other languages
English (en)
Inventor
Yi Zhang
Hao Feng
Nageen Himayat
Srikathyayani Srikanteswara
Xiruo Liu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE102022202570A1 publication Critical patent/DE102022202570A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/26Route discovery packet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0811Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Ein System und Techniken zur verteilten Pfadauswahl in informationszentrischen Netzwerken (ICN) sind hierin beschrieben. Ein ICN-Knoten überträgt eine Sondierungsnachricht an andere ICN-Knoten. Der ICN-Knoten empfängt eine Antwort auf die Sondierungsnachricht und leitet eine Pfadstärkenmetrik aus der Antwort ab. Später, wenn ein Entdeckungspaket durch den ICN-Knoten empfangen wird, wird die Pfadstärkenmetrik zu dem Entdeckungspaket hinzugefügt.

Description

  • PRIORITÄTSANSPRUCH
  • Diese Patentanmeldung beansprucht den Nutzen der Priorität der vorläufigen US-Anmeldung mit der Seriennummer 63/173,830 mit dem Titel „DYNAMIC ORCHESTRATION IN DISTRIBUTED WIRELESS EDGE NETWORK“ und eingereicht am 12. April 2021, und beansprucht auch die Priorität der vorläufigen US-Anmeldung mit der Seriennummer 63/173,860 mit dem Titel „ENHANCED DISTRIBUTED PATH SELECTION MECHANISM IN NAMED DATA NETWORKING (NDN)“ und eingereicht am 12. April 2021, die alle hiermit vollständig durch Bezugnahme aufgenommen werden.
  • TECHNISCHES GEBIET
  • Hier beschriebene Ausführungsformen betreffen allgemein eine informationszentrische Vernetzung und insbesondere eine verteilte Pfadauswahl in informationszentrischen Netzwerken.
  • HINTERGRUND
  • Informationszentrische Vernetzung (ICN) ist ein Oberbegriff für ein neues Vernetzungsparadigma, bei dem Informationen selbst benannt und von dem Netzwerk anstelle von Hosts (z. B. Maschinen, die Informationen bereitstellen) angefordert werden. Um Inhalt zu erhalten, fordert eine Vorrichtung benannten Inhalt von dem Netzwerk selbst an. Die Inhaltsanforderung kann als ein Interesse bezeichnet und über ein Interessenpaket übertragen werden. Wenn das Interessenpaket Netzwerkvorrichtungen (z. B. Router) durchläuft, wird eine Aufzeichnung des Interesses gehalten. Wenn eine Vorrichtung angetroffen wird, die Inhalt aufweist, der mit dem Namen im Interesse übereinstimmt, kann diese Vorrichtung als Antwort auf das Interessenpaket ein Datenpaket senden. Typischerweise wird das Datenpaket durch das Netzwerk zu der Quelle zurückverfolgt, indem den in den Netzwerkvorrichtungen hinterlassenen Spuren des Interesses gefolgt wird.
  • Figurenliste
  • In den Zeichnungen, die nicht notwendigerweise maßstabsgetreu gezeichnet sind, können gleiche Ziffern ähnliche Komponenten in unterschiedlichen Ansichten beschreiben. Gleiche Ziffern mit unterschiedlichen Buchstabensuffixen können unterschiedliche Instanzen ähnlicher Komponenten repräsentieren. Die Zeichnungen veranschaulichen allgemein beispielhaft, aber nicht einschränkend, verschiedene Ausführungsformen, die im vorliegenden Dokument besprochen werden.
    • 1 ist ein Blockdiagramm eines Beispiels für eine Umgebung, die ein System zur Fähigkeitenentdeckung in einem ICN beinhaltet.
    • 2 ist ein Diagramm von Leistungsfähigkeitsbewertungen bei minimaler Hop-Anzahl.
    • 3 ist ein Diagramm eines Leistungsfähigkeitsvergleichs mit M-NDN-RPC.
    • 4 ist ein Diagramm einer Gesamtlatenz bei unterschiedlichen Entdeckungszeiten.
    • 5 veranschaulicht eine verbesserte Inhaltsspeicher-Treffer-Pipeline innerhalb einer eingehenden Interessen-Pipeline.
    • 6 veranschaulicht eine beispielhafte Abbildung von Knotenfähigkeiten.
    • 7 veranschaulicht eine Swimlane der Aufgabenorchestrierung.
    • 8 veranschaulicht eine Swimlane der Aufgabenorchestrierung.
    • 9 veranschaulicht eine Swimlane der Aufgabenorchestrierung.
    • 10 veranschaulicht eine Swimlane der Aufgabenorchestrierung.
    • 11 veranschaulicht eine Swimlane der Aufgabenorchestrierung.
    • 12 veranschaulicht ein Beispiel für eine Rechenknotenauswahl.
    • 13 veranschaulicht ein Flussdiagramm eines Beispiels für ein Verfahren zur Fähigkeitenentdeckung in einem informationszentrischen Netzwerk.
    • 14 veranschaulicht einen Überblick über eine Edge-Cloud-Konfiguration für Edge-Computing.
    • 15 veranschaulicht Betriebsschichten zwischen Endpunkten, einer Edge-Cloud und Cloud-Computing-Umgebungen.
    • 16 veranschaulicht einen beispielhaften Ansatz für Vernetzung und Dienste in einem Edge-Computing-System.
    • 17 veranschaulicht ein beispielhafte Softwareverteilungsplattform 1105 zum Verteilen von Software.
    • 18 veranschaulicht ein beispielhaftes informationszentrisches Netzwerk (ICN) gemäß einem Beispiel.
    • 19 ist ein Blockdiagramm, das ein Beispiel für eine Maschine veranschaulicht, auf der eine oder mehrere Ausführungsformen implementiert werden können.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Rechenressourcen kommen zunehmend nahe an Benutzer heran, um die sich entwickelnden Anforderungen von Netzwerkdienstanwendungen der nächsten Generation zu erfüllen. Immer mehr Daten werden an der Edge erzeugt. Diesem Trend entsprechend, bewegen sich Intelligenz, Entscheidungsfindung und Berechnung auch zur Edge, häufig in hybride Clouds und Client-Edge-Vorrichtungen. Diejenigen Anwendungen, die für eine zufriedenstellende Leistungsfähigkeit auf die Edge angewiesen sind, umfassen eine Klasse von Edge-abhängigen Anwendungen (EDAs). Diese Anwendungen können Clients einbeziehen, die entweder mobil (z. B. Smartphones oder fahrzeuginterne Sensoren) oder statisch (z. B. urbane Kameras, Basisstationen, Straßenrandeinheiten (RSUs)) sind. EDAs repräsentieren eine signifikante Möglichkeit, die Berechnung näher an den Ort zu bringen, an dem die Ergebnisse verwendet werden, da EDAs eine optimierte Kombination von Edge-Computing, Vernetzung, Daten, Speicherung oder Grafik einbeziehen. Diese Verwendungen der Edge bieten Herausforderungen, da die Edge häufig ein dynamisches Netzwerk mit heterogenen Ressourcen ist, die beschränkt sein können, und sich Rechenanforderungen schnell ändern können. Dynamismus bei Rechenanforderungen kann unter anderem aus Mobilität, Bedingungen von drahtlosen Links, Energieeffizienzzielen oder sich ändernden Kontexten resultieren. Um diese Bedürfnisse zu erfüllen, müssen Edge-Dienste im Allgemeinen schnell geladen oder instanziiert werden, wenn der Bedarf entsteht.
  • Verteilte Rechenvernetzungsparadigmen ermöglichen die Dienste, die zur Verarbeitung auf nahegelegenen Rechenressourcen verfügbar sind - z. B. auf Rechenservern, Zugangspunkten oder Endgeräten in der Nähe des Benutzers. Aufwändige Implementierungen beinhalten, dass unterschiedliche Dienste - wie etwa Rechenressourcen, Rohdaten, Funktionen oder Software usw. - in unterschiedlichen Knoten verfügbar gemacht werden. Das Orchestrieren verschiedener Dienste an verschiedenen Knoten in einer dynamischen Umgebung stellt mehrere Herausforderungen dar. In einem drahtlosen Multi-Hop-Netzwerk, in dem sich die Funkverbindungsqualität kontinuierlich ändern kann, kann es mehrere drahtlose Multi-Hop-Pfade geben, die zu jedem Dienstanbieter führen. Hier ist das Optimieren der Gesamtlatenz, einschließlich der Zeit, die bei Ressourcenentdeckung, Übertragung des Dienstanrufs und Berechnung verbraucht wird, eine bestehende Herausforderung.
  • Um das Problem des Auswählens von Netzwerkpfaden zu variierenden Ressourcen (die z. B. an verschiedenen Knoten gehostet werden) in einem Edge-Netzwerk zu behandeln, kann ein verteilter Pfadauswahlmechanismus verwendet werden, um die Ende-zu-Ende-Übertragungslatenz zu optimieren. Da ICNs ideal für verteilte Echtzeit-Edge-Computing-Netzwerke sind, stellen die Beispiele hierin eine ICN-basierte verteilte Pfadauswahltechnik zum dynamischen Entdecken und Zusammenstellen unterschiedlicher Ressourcen zum Abschließen einer Aufgabe dar. Die offenbarte verteilte Pfadauswahltechnik behandelt mehrere Probleme bei der verteilten Pfadausführung. Zum Beispiel ermöglicht die Technik die Auswahl eines Dienstanbieters unter mehreren Dienstanbietern, der eine gute (z. B. die beste) Chance hat, eine Diensterbringung auszuführen, und die Auswahl, über welchen Pfad die Dienstaufrufanforderung oder -antwort gesendet wird. Dies wird erreicht, indem sowohl die Fähigkeit eines Knotens als auch die Robustheit des Pfades zu dem Knoten berücksichtigt wird. Die Pfadrobustheit kann unter Verwendung mehrerer Metriken bewertet werden, die von Teilnehmern im Netzwerk formuliert werden. Somit können unter Verwendung von Pfadrobustheitsmetriken Knoten mit ähnlichen Fähigkeiten geordnet werden, um jene Knoten auszuwählen, die nicht nur die Aufgabe erfüllen können, sondern dies wahrscheinlich mit minimaler Latenz tun. Ferner kann durch Verwenden der hier beschriebenen Fähigkeitenentdeckungstechnik die Entdeckungseffizienz gegenüber anderen Techniken verbessert werden. Dies kann Latenzen bei der Edge-Netzwerk-Aufgabenorchestrierung weiter reduzieren.
  • Manche Versuche, die Pfadlatenz zu behandeln, beinhalteten verteilte Schemata zum Auswählen entfernter Gateways, um auf Netzwerke durch Berechnen einer zusammengesetzten Bewertungsmetrik, die basierend auf unterschiedlichen Untermatrizen entwickelt wurde, zuzugreifen. Zum Beispiel entdeckte Hop-Anzahlen und Gateway-Fähigkeiten, wie etwa restlicher Energiepegel, Stärke des mit dem Netzwerk verbindenden Funksignals usw. Dies kann als eine minimale Hop-Anzahl bezeichnet werden. Die minimale Hop-Anzahl ist eine weit verbreitete Route-Metrik. Im Allgemeinen ist die Übertragungslatenz umso kürzer, je geringer die Hop-Anzahl ist. Diese Technik funktioniert gut in festen Netzwerken. Die minimale Hop-Anzahl schneidet jedoch schlecht bei drahtlosen Ad-Hoc-Netzwerken ab, bei denen der Funkkanal instabil ist und sich die Umgebung aufgrund von Mobilität schnell ändert. Pfade, die durch die minimale Hop-Anzahl gefunden werden, können schlechte Leistungsfähigkeit aufweisen, da sie dazu neigen, drahtlose Links zwischen entfernten Knoten auszuwählen. Diese langen drahtlosen Links können langsam und verlustbehaftet sein, was zu mehr Wiederholungsübertragungen und schlechter Durchsatzleistungsfähigkeit führt. Daher stellt die Hop-Anzahl allein im Allgemeinen nicht die optimale Näherung an die Übertragungslatenz bereit.
  • Die erwartete Übertragungsanzahl (Expected Transmission Count, ETX) neigt dazu, Pfade mit der geringsten erwarteten Anzahl von Übertragungen, einschließlich Wiederholungsübertragungen, zu finden, die erforderlich sind, um ein Paket an sein Ziel zu liefern. Die Metrik sagt die Anzahl an Wiederholungsübertragungen unter Verwendung von Pro-Link-Messungen von Paketverlustverhältnissen in beiden Richtungen jedes drahtlosen Links voraus. Das Hauptziel des ETX-Designs besteht darin, Pfade mit hohem Durchsatz in beiden Richtungen trotz Verlusten zu finden. Das ETX-Ziel - eine Route mit den optimalen Paketverlustverhältnissen über reziproke Richtungen drahtloser Links zu finden - ist nur in Szenarien mit symmetrischem Übertragungsdatenvolumen auf dem Vorwärts- und dem Rückwärtslink anwendbar. Somit sind die Größen der ausgehenden Pakete und Rückkehrpakete gleich. In den meisten Fällen trifft diese Annahme jedoch nicht zu. Bestätigungen (ACKs) sind zum Beispiel typischerweise viel kleiner als jene der Daten. Dies gilt insbesondere, wenn Datenblöcke (z. B. eine Gruppe von Daten) von einem Datenerzeuger zu einem Rechenknoten oder von einem Rechenknoten zu dem Datenverbraucher übertragen werden.
  • Die erwartete Übertragungszeit (Expected Transmission Time, ETT) ist eine andere Technik, die dazu neigt, einen Pfad mit den geringsten Übertragungskosten zu finden. Die geringsten Übertragungskosten ergeben sich aus einer momentanen Kapazität aller Links. Die Kosten des Links über den Hop n werden durch die Metrik 1 C n
    Figure DE102022202570A1_0001
    repräsentiert, die dann über alle Links akkumuliert wird. ETT verwendet jedoch einen Kanal mit additivem weißem gaußschem Rauschen (AWGN), um den Link zu modellieren, und berücksichtigt keine Störung oder Schwund. Währenddessen wird die erwartete Übertragungszeit basierend auf einem momentanen Signal-Rausch-Verhältnis berechnet, das nur auf den AWGN-Kanal angewendet wird.
  • Bei standardmäßigen Named Data Networking (NDN)-Implementierungen wird ein Entdeckungsinteressenpaket in das Netzwerk geflutet, falls der Verbraucher oder die Zwischenknoten keine Kenntnis von einer guten Route in einer Weiterleitungsinformationsbasis (Forwarding Information Base, FIB) haben. Sobald das Interesse einen Knoten mit der benannten Ressource erreicht, stoppt der Entdeckungsprozess, und ein Datenpaket wird zurückgesendet. Dieser Entdeckungsprozess wird im Allgemeinen fortgesetzt, bis die Ressource gefunden oder ein Timeout erreicht ist. Dieses Design funktioniert gut zum Datenabruf, da es typischerweise Duplikat-Datenantworten beseitigt, die von verschiedenen Erzeugern an den Verbraucher gesendet werden. Die Technik beschränkt jedoch ihre Verwendung beim Edge-Computing. Zum Beispiel versucht ein Verbraucher üblicherweise, mehr als einen Rechenknoten innerhalb eines vordefinierten Zeitfensters zu finden, um Optionen zu haben, aus denen der beste Rechenknoten ausgewählt werden soll.
  • Um das vorstehende Problem bezüglich der Pfadmetriken zu behandeln, die zum Unterscheiden zwischen Erzeugern verwendet werden, setzt die vorliegende Technik zwei Metriken ein, um die Ende-zu-Ende-Übertragungslatenz über einen Multi-Hop-Pfad widerzuspiegeln. Die erste Metrik (Metric 1) kann aus einer geschätzten Übertragungserfolgswahrscheinlichkeit über die Links des gesamten Pfades abgeleitet werden. Die zweite Metrik (Metric 2) kann aus einer erwarteten maximalen Übertragungsrate über die Links des gesamten Pfades abgeleitet werden. In einem Beispiel verwenden eine oder beide Metriken einen unidirektionalen Linkstatus, um das asymmetrische Übertragungsdatenvolumen widerzuspiegeln, das das häufigste Szenario in realen Netzwerkimplementierungen ist. In einem Beispiel können die zwei Metriken kombiniert werden, was zu einer hybriden Metrik führt.
  • 1 ist ein Blockdiagramm eines Beispiels für eine Umgebung, die ein System zur Fähigkeitenentdeckung in einem ICN beinhaltet, gemäß einer Ausführungsform. Wie veranschaulicht, sind verschiedene ICN-Knoten über mehrere unterschiedliche Pfade verbunden. Der Verbraucherknoten 105 nutzt gemeinsam verschiedene Pfade (PAn) zu Erzeugerknoten (P), wie etwa dem Erzeugerknoten P1 115 und dem Erzeugerknoten P2 120, über verschiedene Zwischenknoten In, wie etwa den Knoten 14 110. Der Verbraucherknoten 105 kann Aufgaben haben, die darauf warten, ausgeführt zu werden. Aufgrund des Fehlens lokaler Rechenressourcen sucht der Verbraucherknoten 105 nach zusätzlichen Rechenknoten, um die Aufgaben auszuführen. Der Verbraucherknoten 105 sendet eine Entdeckungsanforderung aus (z. B. ein Interessenpaket mit einem Namenspräfix oder einem Merker, der angibt, dass es sich um ein Entdeckungspaket handelt), um verfügbare Rechenressourcen in der Nachbarschaft zu entdecken (z. B. Knoten, die über eine Schwelle oder weniger Hops verbunden sind). In dem veranschaulichten Szenario erhält der Verbraucherknoten 105 Kenntnis von mehreren Erzeugern, dem Erzeugerknoten P1 115 und dem Erzeugerknoten P2 120, die zum Bereitstellen von Rechenressourcen verfügbar sind. Für jeden der Erzeugerknoten gibt es mehrere Pfade zu dem Verbraucherknoten 105. Die Pfade sind der Pfad PAnP1, wobei n = [1, 2, 3], und der Pfad PAnP2, wobei n = [1, 2], für den Erzeugerknoten P1 115 bzw. den Erzeugerknoten P2 120.
  • Um während des Entdeckens Pfadmetriken zu ermöglichen, können die Knoten (z. B. der Knoten vier 110) periodisch Sondierungsnachrichten an Nachbarknoten rundsenden, um Linkbedingungen zu beobachten. Die Sondierungsnachrichten sind klein und transportieren üblicherweise nur ausreichend Informationen, um sie als eine Sondierungsnachricht zu identifizieren und eine Messung der Linkcharakteristiken zu ermöglichen. Allgemein wird für den Knoten vier 110 die Beobachtung von Ein-Hop-Nachbarlinkinformationen durch den Empfang der Sondierungsnachrichten gemessen. In drahtlosen Szenarien können die Zwischenknoten (I) den Empfangsstatus - wie etwa Erfolg, Fehlschlag, ein Signal-Rausch-Verhältnis (SINR) usw. - der Sondierungsnachrichten beobachten und den Linkstatus schätzen. Aus diesen Messungen kann eine Ein-Hop-Link-Übertragungserfolgswahrscheinlichkeit oder eine erwartete maximale Übertragungsrate abgeleitet werden (z. B. von jedem Nachbarn), indem ein momentaner Linkstatus durch mehrere Empfänge der Sondierungsnachrichten innerhalb eines Zeitraums (z. B. Fenster oder Zeitfenster) gemittelt wird. Einzelheiten sowohl über Metric 1 als auch Metric 2 sind nachstehend beschrieben.
  • Für Metric 1 schätzt jeder Knoten i die Übertragungserfolgswahrscheinlichkeit des Rückwärtslinks von jedem Nachbarn j - repräsentiert als Pji (t) - durch Aufzeichnen und Mitteln der Anzahlen erfolgreicher Übertragungen, die während der Sondierungsnachrichtenübertragungen erfahren werden. In einem Beispiel finden die Messungen während eines Zeitraums w mit gleitender Fenstergröße statt. Falls mji (t) die Anzahl von Sondierungsnachrichten repräsentiert, die durch den Knoten i vom Nachbarn j in dem Zeitfenster w vom Zeitpunkt t - w + 1 zum Zeitpunkt t empfangen werden, dann kann der abstrakte Linkabstand vom Knoten j zum Knoten i im Schlitz t als Lji (t) = 1/Pji (t) repräsentiert werden, wobei P j i ( t ) = m i j ( t ) n j ( t )
    Figure DE102022202570A1_0002
    annimmt, dass es nj(t) Sondierungsnachrichten gibt, die durch den Knoten j in dem gleitenden Zeitfenster vom Zeitpunkt t - w + 1 zum Zeitpunkt t übertragen werden.
  • Für Metric 2 schätzt jeder Knoten i die erwartete maximale Übertragungsrate des Rückwärtslinks vom Nachbarn j - repräsentiert als C ji - durch Aufzeichnen und Mitteln von Kanalrealisierungen, die während der Sondierungsnachrichtenübertragungen erfahren werden. In einem Beispiel wird der Mittelwert über ein gleitendes Fenster genommen, wie vorstehend besprochen ist. In diesem Fall kann der abstrakte Linkabstand vom Knoten j zum Knoten i im Zeitschlitz t als Lji(t) = 1/C ji(t) repräsentiert werden, wobei C j i ( t ) = 1 m i j ( t ) k = 1 m i j ( t ) log ( 1 + S N R i j ( k ) ) .
    Figure DE102022202570A1_0003
     
    Figure DE102022202570A1_0004
    Das Ergebnis steht für den Mittelwert der Kanalrealisierungen, die durch das Empfangen von Sondierungsnachrichten innerhalb des gleitenden Fensters mit der Größe w, das zum Zeitpunkt t endet, erfahren wird.
  • In einem Beispiel können Metric 1 und Metric 2 kombiniert werden, um eine hybride Metrik zu erzeugen. In einem Beispiel wird die Kombination über einfache additive Gewichtung (Single Additive Weighting, SAW) durchgeführt. Die hybride Metrik ist hier eine gewichtete Summe aller Metrikwerte. In einem Beispiel ist der akkumulierte abstrakte Abstand zwischen Verbraucher und Erzeuger über den Pfad R Σ(j,i)∈R Lji, berechnet als: ( i , j ) R L j i = { ( j , i ) R 1 / P j i , for Metric 1 ( j , i ) R 1 / C ¯ j i , for Metric 2
    Figure DE102022202570A1_0005
  • Im Allgemeinen stellt Metric 1, wenn sie allein verwendet wird, eine bessere Leistungsfähigkeit als Metric 2 bereit. Ferner ist Metric 1 tendenziell einfacher zu implementieren, da das Berechnen von Metric 1 keine schichtübergreifenden Informationen verwendet. Beide Metriken allein oder in Kombination führen jedoch in bestimmten Netzwerkumgebungen andere Techniken zur Pfadrobustheitsschätzung aus. Im Allgemeinen ist die Pfadrobustheitsmetrik auf alle Szenarien anwendbar, bei denen die Multi-Hop-Übertragungslatenz die Ende-zu-Ende-Diensterbringungslatenz dominiert, die sowohl Dienstverarbeitungszeit als auch Datenübertragungszeit beinhaltet.
  • Die folgenden Beispiele veranschaulichen die Technik aus der Perspektive des Knotens vier 110. Der Knoten vier 110 beinhaltet Hardware - wie etwa einen Speicher, eine Verarbeitungsschaltungsanordnung und Netzwerkschnittstellen -, die zum Durchführen der Operationen verwendet wird. Dementsprechend beinhaltet der Knoten vier 110 eine Verarbeitungsschaltungsanordnung, die dazu ausgelegt ist, über eine Netzwerkschnittstelle (z. B. Face) eine Sondierungsnachricht an andere ICN-Knoten, wie etwa dem Knoten fünf, zu senden. Die Verarbeitungsschaltungsanordnung ist dazu ausgelegt, eine Antwort auf die Sondierungsnachricht über die Netzwerkschnittstelle zu empfangen.
  • Die Verarbeitungsschaltungsanordnung ist dazu ausgelegt, eine Pfadstärkenmetrik (z. B. Pfadrobustheit) aus der Antwort abzuleiten. In einem Beispiel beinhaltet das Ableiten der Pfadstärkenmetrik, eine Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort zu berechnen. Hier zählt die Übertragungserfolgswahrscheinlichkeit einfach die Anzahl an Sondierungen oder Antworten, die erfolgreich empfangen wurden. Somit werden sehr rauschbehaftete oder inkohärente Links im Allgemeinen geringe Übertragungserfolgswahrscheinlichkeiten aufgrund verlorener, verstümmelter oder anderweitig erfolgloser Pakete erfahren. In einem Beispiel entspricht die Übertragungserfolgswahrscheinlichkeitsmetrik einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem Knoten vier 110. Um die Übertragungserfolgswahrscheinlichkeitsmetrik zu berechnen, ist die Verarbeitungsschaltungsanordnung in einem Beispiel dazu ausgelegt, Anzahlen erfolgreicher Übertragungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten zu mitteln. In einem Beispiel erfolgt das Mitteln über einen Zeitraum eines gleitenden Fensters. Diese Beispiele beziehen sich auf Metric 1.
  • In einem Beispiel ist die Verarbeitungsschaltungsanordnung zum Ableiten der Pfadstärkenmetrik dazu ausgelegt, eine Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort zu berechnen. In einem Beispiel beinhaltet das Berechnen der Metrik der erwarteten maximalen Übertragungsrate das Mitteln von Kanalrealisierungen zu einem Nachbar-ICN-Knoten über mehrere Sondierungsnachrichten. Die Kanalrealisierungen messen den Durchsatz (z. B. die Bandbreite) über einen Zeitraum. Während sich die vorherige Metrik auf die Linkstabilität konzentriert, berücksichtigt diese Metrik somit die Fähigkeit des Links, einen bestimmten Datenumfang zu handhaben. In einem Beispiel entspricht die Metrik der erwarteten maximalen Übertragungsrate einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem Knoten vier 110.
  • In einem Beispiel wird der Mittelwert der Kanalrealisierungen über die mehreren Sondierungsnachrichten über einen gleitenden Fensterzeitraum genommen. In einem Beispiel wird die Metrik der erwarteten maximalen Übertragungsrate C ij berechnet durch: C ¯ i j ( t ) = 1 m j i ( t ) k = 1 m j i ( t ) log ( 1 + S N R j i ( k ) )
    Figure DE102022202570A1_0006
    wobei mji(t) eine Anzahl der Antworten ist, die von dem Nachbar-ICN-Knoten j empfangen werden, die einer Sondierungsnachricht von dem ICN-Knoten i im Zeitraum t entsprechen. Diese Beispiele beziehen sich auf Metric 2.
  • In einem Beispiel ist die Verarbeitungsschaltungsanordnung zum Ableiten der Pfadstärkenmetrik dazu ausgelegt, eine Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort zu berechnen, eine Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort zu berechnen und die Übertragungserfolgswahrscheinlichkeitsmetrik und die erwartete maximale Übertragungsrate zu kombinieren, um die Pfadstärkenmetrik zu erzeugen. Dieses Beispiel repräsentiert die hybride Metrik. In einem Beispiel beinhaltet das Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate das Verwenden einer einfachen additiven Gewichtung (SAW).
  • Da die vorherigen Metriken aus der kontinuierlichen Sondierungsnachrichtenübermittlung der Knoten abgeleitet werden, stehen die Metriken dem Knoten vier 110 (und anderen Knoten) zur Verfügung, um das Entdecken durch den Verbraucherknoten 105 zu ermöglichen. Somit ist der Knoten vier 110 in einem Beispiel dazu ausgelegt, ein Entdeckungspaket zu empfangen (z. B. über eine Netzwerkschnittstelle). In einem Beispiel ist das Entdeckungspaket ein Interessenpaket.
  • Die Verarbeitungsschaltungsanordnung ist dazu ausgelegt, die Pfadstärkenmetrik zu dem Entdeckungspaket hinzuzufügen. In einem Beispiel wird die Pfadstärkenmetrik vor dem Weiterleiten des Entdeckungspakets hinzugefügt. In einem Beispiel beinhaltet das Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket, das Extrahieren eines Pfadstärkenwerts aus dem Entdeckungspaket, das Hinzufügen der Pfadstärkenmetrik zu dem Pfadstärkenwert, um einen modifizierten Pfadstärkenwert zu erzeugen, und das Ersetzen des Pfadstärkenwerts in dem Entdeckungspaket durch den modifizierten Pfadstärkenwert. Somit werden die Links zu Nachbarn des Knotens vier 110 an andere Pfadstärkenmetriken von zum Beispiel dem Knoten drei angehängt, um zum Beispiel eine vollständige Pfadstärkenmetrik von dem Erzeugerknoten P2 120 zu dem Verbraucherknoten 105 zusammenzustellen.
  • 2 ist ein Diagramm von Leistungsfähigkeitsbewertungen bei minimaler Hop-Anzahl (nur Übertragungslatenz). Der veranschaulichte Leistungsfähigkeitsvergleich ist eine Ende-zu-Ende-Übertragungslatenz zwischen Metric 1, Metric 2, der hybriden Metrik und der minimalen Hop-Anzahl unter unterschiedlichen Entdeckungszeiten. Wie veranschaulicht, arbeiten die hier offenbarten Metriken besser als die minimale Hop-Anzahl, deren Leistungsfähigkeit sich im Gegensatz zu der stabilen Leistungsfähigkeit der hier offenbarten Metriken mit zunehmender Entdeckungszeit signifikant ändert.
  • 3 ist ein Diagramm eines Leistungsfähigkeitsvergleichs mit M-NDN-RPC (reine Übertragungslatenz) bei unterschiedlichen Entdeckungszeiten. Bei M-NDN-RPC können mehrere Entdeckungsdatenpakete zurück an den Verbraucherknoten 105 weitergeleitet werden. Das heißt, Zwischenknoten können weiterhin Datenpakete weiterleiten, selbst wenn sie bereits ein Datenpaket zurück weitergeleitet haben. Dies ermöglicht es dem Verbraucherknoten 105, mehr als einen Erzeuger in einem ICN zu entdecken. Im Allgemeinen wird unter M-NDN-RPC, falls der Verbraucherknoten 105 nur ein Entdeckungsdatenpaket empfängt, die Erzeugerauswahl vorgenommen. Wenn mehrere Entdeckungsdatenpakete empfangen werden, wählt der Verbraucherknoten 105 den Erzeuger mit der höchsten Berechnungsressource aus. Wie veranschaulicht, geben experimentelle Ergebnisse an, dass die offenbarten Metriken eine viel stabilere Leistungsfähigkeit als M-NDN-RPC bereitstellen.
  • 4 ist ein Diagramm einer Gesamtlatenz (Übertragung + Berechnung) bei unterschiedlichen Entdeckungszeiten. Die Gesamtlatenz kann von der hierin beschriebene Serverfähigkeitenentdeckungstechnik unterstützt werden, die die Entdeckungseffizienz stark verbessern kann, insbesondere bei extrem kurzen Entdeckungs-Timeouts. Somit beinhaltet die veranschaulichte Gesamtlatenz die Zeit zur Ressourcenentdeckung, Übertragung des Dienstanrufs und Berechnung. Wieder ist die Verbesserung der hier beschriebenen Techniken gegenüber M-NDN-RPC ersichtlich.
  • Die Daten zum Berechnen von Metric 2, wie etwa SINR, werden im Allgemeinen von der Bitübertragungsschicht des Netzwerkstapels gesammelt. Dies bringt häufig einen zusätzlichen schichtübergreifenden Informationsaustausch im Vergleich zu Metric 1 mit sich, da Metric 1 einfach die Übertragungserfolgsrate berechnet.
  • 5 veranschaulicht eine verbesserte Inhaltsspeicher-Treffer-Pipeline innerhalb einer eingehenden Interessen-Pipeline. Herkömmliche ICN ist für den Datenabruf ausgelegt, wobei versucht wird, Duplikat-Daten zu beseitigen, die von verschiedenen Erzeugern zum Verbraucherknoten 105 zurückgesendet werden. Dieses Verhalten kann die ICN-Effizienz bei der Edge-Orchestrierung beschränken, da der Verbraucherknoten 105 davon profitiert, mehr als einen Erzeugerknoten innerhalb eines vordefinierten Zeitfensters zu finden, um den besten auszuwählen. Das Modifizieren des Entdeckungsmechanismus (z. B. Spezialinteressenpakete, die Vorwärtsausbreitung ermöglichen) basierend auf einer anderen Abschlussbedingung als einem die Anforderung erfüllenden Erzeugerknoten und das Weiterleiten von Antwortdatenpaketen - z. B. PIT-Einträgen, die ermöglichen, dass mehr als ein übereinstimmendes Datenpaket zu dem Verbraucherknoten 105 zurückgeht - unterstützen die Knotenentdeckung mehrerer Erzeuger. Solche Techniken sind jedoch im Allgemeinen auf Einzelpfadinformationen zu den Erzeugerknoten beschränkt, da nur Antworten auf das erste empfangene Interessenpaket weitergeleitet werden; der Rest der Interessen, die anschließend von unterschiedlichen Nachbarknoten empfangen werden, wird ignoriert. Dieses Verhalten beseitigt die Möglichkeit, mehrere Pfade zu demselben Erzeugerknoten zu entdecken. Das Einzelpfad-Verhalten soll Bandbreite sparen und unnötige Datenpaketübertragung im Netzwerk reduzieren. Dies kann in drahtgebundenen Netzwerken gut funktionieren, wobei angenommen wird, dass alle Pfade stabil sind und einen ähnlichen Paketdatenverlust erfahren. In einem drahtlosen Mesh-Netzwerk, in dem der Linkstatus sehr unzuverlässig und unvorhersehbar sein kann, ist es jedoch nicht der Fall.
  • 5 veranschaulicht Modifikationen an einer herkömmlichen ICN-Pipeline zum Handhaben von Interessenpaketen, um die vorliegende Technik zu implementieren. Die Elemente 545 und 580 repräsentieren die Änderungen an der Standard-ICN-Technik zum Ermöglichen von Mehrfachpfadentdeckung durch Entdeckungsinteressen- und Entdeckungsdatenpakete und durch Metrikinformationen, die als Entdeckungspakete (z. B. Entdeckungsinteressen- oder Entdeckungsdatenpakete) akkumuliert (z. B. aktualisiert) werden, wenn sie unterschiedliche Pfade durchlaufen. Die endgültige akkumulierte Pfadstärkenmetrik kann vom Verbraucherknoten verwendet werden, um die Auswahl eines Erzeugerknotens (z. B. Rechenknoten oder Datenknoten) zu ermöglichen.
  • Wie in 5 veranschaulicht, wird in der eingehenden Interessen-Pipeline 505 ein Interessenpaket empfangen (Operation 510). Falls das Interessenpaket ein Kriterium (z. B. Trust) des lokalen Hosts verletzt, wird das Paket verworfen (Entscheidung 515). Andernfalls, falls das Paket basierend auf einer Liste bekannter Duplikate ein Duplikat ist (Entscheidung 520), wird das Paket an die Interessenschleife gesendet (Operation 550). Andernfalls wird das Paket geprüft, um zu bestimmen, ob ein Weiterleitungshinweis angibt, dass sich der Empfangsknoten in der Empfangsregion befindet (Entscheidung 525). Falls ja, wird der Hinweis zerlegt (Operation 530). Das Paket wird dann in die PIT eingefügt (Operation 535). Der PIT-Eintrag wird verwendet, um zu ermitteln, ob es einen anderen PIT-Eintrag gibt, der ein Duplikat angibt (Entscheidung 540). Falls ja, wird das Paket geprüft, um zu bestimmen, ob die Schnittstelle, in der das Paket empfangen wird, gleich dem PIT-Eintrag ist (Entscheidung 545). Falls ja, wird das Paket an die Interessenschleife gesendet (Operation 740). Andernfalls wird ein Ablauftimer zurückgesetzt (Operation 550). Die Entscheidung 545 unterstützt die Mehrfachpfaddetektion, da nur Interessenpakete mit gleicher Nonce (z. B. Zufallszahl zum Bereitstellen einer Unterscheidung, wenn Paketnamen übereinstimmen) als eine Schleife betrachtet werden, falls sie von derselben Schnittstelle kommen. Hier zeichnet jeder Zwischenknoten und Erzeugerknoten die Schnittstellenkennung (Face-ID) auf, falls die Interessenpakete mit derselben Nonce von unterschiedlichen Faces stammen.
  • Wenn das Paket ein Duplikat mit einer anderen Schnittstelle ist (Entscheidung 545) oder kein Duplikat ist (Entscheidung 540), wird der Ablauftimer gelöscht (Operation 560). Das Paket wird dann geprüft, um zu bestimmen, ob es ausstehend ist (Entscheidung 565), falls ja, dann wird ein Inhaltsspeicher-Fehltreffer angegeben (Operation 555). Andernfalls erfolgt eine Suche in dem Inhaltsspeicher (Entscheidung 570), und, falls die Suche fehlschlägt, wird auch der Inhaltsspeicher-Fehltreffer angegeben (Operation 555). Andernfalls geht die Verarbeitung zu der Inhaltsspeicher-Treffer-Pipeline 575 eines Erzeugerknotens über (z. B. einem Knoten, der auf das Interessenpaket mit einem Datenpaket antwortet).
  • Hier wird ein Mehrfachdatenpakettimer überprüft (Entscheidung 580). Falls der Timer nicht abgelaufen ist, dann werden die CS-Trefferoperationen durchgeführt (Operation 585). Andernfalls wird ein PIT-Eintrags-Ablauftimer für das Interessenpaket gesetzt (Operation 590). Nach Ablauf dieses Timers wird die Nonce des Pakets in die Dead-Nonce-Liste eingefügt (Operation 595), und der entsprechende PIT-Eintrag wird entfernt. Diese Operationen unterstützen, dass Mehrfachdatenpakete von einem Erzeugerknoten zurückgegeben werden, wodurch eine Mehrfachpfadentdeckung ermöglicht wird. Der Erzeugerknoten kann den PIT-Eintrag halten, bis der Mehrfachdatentimer abläuft. Wie veranschaulicht, wird der Timer gestartet, wenn das erste Datenpaket gesendet wird, was ermöglicht, dass, bevor dieser Timer abläuft, der Erzeugerknoten das Datenpaket erneut zurück zum Verbraucherknoten sendet, wenn ein Interessenpaket mit derselben Nonce von einer anderen Schnittstelle empfangen wird.
  • 6 veranschaulicht Knotenfähigkeiten. Unterschiedliche Edge-Knoten weisen unterschiedliche Fähigkeiten auf, wobei einige nur Rechenfähigkeit (z. B. Hardware oder HW) aufweisen, einige nur Funktionen (z. B. Software oder SW) aufweisen können, und einige Rohdaten (z. B. Sensoren oder Kameras) aufweisen können, die vor der Verwendung verarbeitet werden müssen. Manche Knoten weisen mehr als eine Fähigkeit auf, z. B. kann ein Knoten sowohl Rechenfähigkeit als auch erforderliche Funktionen (HW + SW), aber keine Daten aufweisen, oder ein Knoten weist alle Fähigkeiten (HW + SW + Rohdaten) auf.
  • Das Netzwerk kann auch einen „normalen Knoten“ beinhalten, der keine anwendbare Fähigkeit aufweist (z. B. weist er keine HW, SW oder Rohdaten auf). Fahrzeuge, die möglicherweise keine HW-, SW- oder Rohdatenressourcen zur Verwendung für andere aufweisen, können zum Beispiel verarbeitete Daten verbrauchen, wie etwa Beobachtungen über die Umgebung anhand des Extrahierens und Fusionierens von Ausgaben unterschiedlicher Sensoren.
  • In vorhandenen Edge-Computing-Architekturen abonnieren die Clients typischerweise eine Anwendung, und die Anwendung kann Instanzen auf einem Edge-Server aufweisen. Wenn die Anforderung von dem Client eingeht, kann die Anforderung unter Verwendung eines lokalen Breakouts an den Edge-Server geroutet werden. Falls die Anwendung nicht bereits auf einem bekannten Edge-Server installiert ist, kann die Anforderung an die Cloud geroutet werden.
  • Heutige Rechenorchestrierungs-Frameworks, wie Kubernetes, stellen eine automatisierte Verwaltung der Rechenkomponenten eines großen Systems für hohe Verfügbarkeit und Persistenz bereit. Diese Frameworks können Container an unterschiedliche Maschinen ausschieben, wodurch sichergestellt wird, dass die Container laufen. Die Frameworks können es Benutzern auch ermöglichen, einige wenige weitere Container mit einer spezifischen Anwendung zu instanziieren (z. B. hochzudrehen), wenn der Bedarf zunimmt. Diese Frameworks stellen eine Plattform bereit, die es großen Anzahlen von Containern ermöglicht, harmonisch zusammenzuarbeiten, und die die Betriebslast reduziert.
  • Die ICN-Forschung hat die Eignung von ICN-Frameworks für verteilte Echtzeit-Edge-Computing-Anwendungen hervorgehoben. An der Rechenfront kommt Function as a Service (FaaS) auf, die die verteilte Implementierung von Berechnung ermöglicht. ICN-basierte Rechenorchestrierung lässt eine erfolgreiche Zukunft für die verteilte und dynamische Architektur, dynamisches Entdecken und Datenabruf erkennen.
  • Obwohl die vorstehend erwähnten Frameworks Orchestrierung bereitstellen können, weisen sie immer noch Einschränkungen auf. Falls in vorhandenen Edge-Computing-Lösungen eine Anwendung zum Beispiel nicht bereits an der Edge installiert ist, muss die Anforderung im Allgemeinen zu der Cloud geroutet werden. Die Latenz kann hoch sein, und Netzwerküberlastung kann sich manifestieren, falls viele Anforderungen zu der Cloud geroutet werden. Falls die Clients ein breites Spektrum von Anwendungen anfordern oder falls beliebte Anwendungen sich an der Edge schnell ändern, wird die heutige Orchestrierung nicht in der Lage sein, mit der die Arbeitslast Schritt zu halten, und möglicherweise werden viele Anforderungen an die Cloud gesendet. Falls keine vollständige Anwendung vorhanden ist, gibt es außerdem im Allgemeinen keinen Mechanismus, die Anwendung spontan zusammenzustellen.
  • Heutige Rechenorchestrierungs-Frameworks sind größtenteils zentralisiert und out-ofband und werden verwendet, um die Berechnung oder Sammlung von Telemetriedaten zu planen. Sie weisen eine begrenzte Fähigkeit auf, sich dynamisch ändernde Dienstanforderungen an der Edge zu unterstützen, und weisen typischerweise nicht die Fähigkeit auf, Edge-Vorrichtungen dynamisch in den Berechnungspool zu rekrutieren, wie etwa einen Prozessor auf einer Mobilvorrichtung mit sich ändernder Konnektivität, der Rechendienste anbieten kann.
  • Heutigen Orchestratoren, wie etwa Kubernetes (K8s), fehlt das Konzept der Aktualität (z. B. Echtzeit) oder von Netzwerkressourcenbeschränkungen (z. B. verfügbare Bandbreite und Konnektivität). Dies beschränkt ihre Effektivität zur Unterstützung drahtloser Edge-Netzwerke weiter. Frameworks, die dynamische Berechnung und Orchestrierung in mobilen Edge-Netzen handhaben können - in denen sich sowohl die Rechenanforderungen als auch die Rechenknoten dynamisch ändern - sind nicht weit entwickelt.
  • ICN-basierte Orchestrierung stellt auch viele Herausforderungen dar, bevor ihr volles Potential realisiert werden kann. Aktuelle ICN-Designs konzentrieren sich zum Beispiel häufig auf den reinen Datenabruf, der nur eine Datenpaketrückmeldung unterstützt - so dass nur das erste empfangene Datenpaket an einem ICN-Knoten an den Verbraucher zurückgesendet wird, wobei nachfolgende Datenpakete von verschiedenen Knoten gelöscht werden. Dies ist zur Inhaltsentdeckung nicht geeignet.
  • Um diese Probleme zu behandeln, wird eine effiziente Orchestrierung von Edge-Knoten zu Knoten mit unterschiedlichen Fähigkeiten beschrieben, um Dienstanforderungen in Echtzeit und verteilt in der hochdynamischen Umgebung aufzunehmen. Hier arbeiten das Netzwerk und der Client zusammen, um eine Aufgabe (z. B. Untereinheit einer orchestrierten Anwendung) an einem Edge-Knoten zu erfüllen. Die Erörterung hierin stellt Techniken bereit, um komplexe Anwendungen spontan zusammenzustellen, indem sie sie in kleinere Funktionen zerlegen. Das beschriebene Orchestrierungs-Framework deckt verschiedene Beispiele ab, die Edge-Knoten mit unterschiedlichen Fähigkeiten effizient orchestrieren, um die Arbeitsaufgaben in Echtzeit basierend auf den Kenntnissen des Netzwerks zu erfüllen.
  • Knoten können Smartphones, Basisstationen, Fahrzeuge, RSUs, Sensoren, Kameras oder andere netzwerkverbundene Vorrichtungen sein. Die Knoten können statisch sein oder sich von Zeit zu Zeit bewegen, wie etwa ein Fahrzeug oder ein Mobiltelefon. Drahtlose Netzwerke mit oder ohne Infrastrukturunterstützung können verwendet werden. Knoten können mit Drahtlostechnologien - wie etwa DSRC, zellularen oder drahtgebundenen Technologien - wie etwa Glasfaser, Kupfer usw. - kommunizieren. Somit sind die Knoten für manche Anwendungsfälle über drahtgebundene Verbindungen verbunden, wie etwa Basisstationen, die über ein drahtgebundenes (z. B. Ethernet) Netzwerk verbunden sind. Inhalt bezieht sich auf eine Rechenressource (HW), eine Funktion (SW) oder Daten. Drei Prozeduren zur Inhaltsentdeckung und auslagernden Edge-Entscheidungsfindung sind nachstehend beschrieben.
  • Die erste Prozedur beinhaltet, dass ein Client ein Entdecken aller erforderlichen Inhalte durchführt und Orchestrierungsentscheidungen trifft. Hier wird angenommen, dass der Client keine HW, SW oder Daten aufweist (z. B. ein normaler Knoten ist). Der Client entdeckt alle notwendigen Inhalte - wie etwa Rechenressourcen, Funktionen und Daten - und gewinnt die Kenntnis darüber, wo die Inhalte sind. Zu diesem Zeitpunkt befinden sich die Inhalte immer noch in den entfernten Knoten; der Client kennt nur den Ort der Inhalte und wie sie abzurufen sind. Der Client kann dann einen oder mehrere Knoten mit HW auswählen, um die Berechnungsaufgabe durchzuführen, und entscheidet, wie die Funktionen und Daten abzurufen sind. Es gibt zwei Alternativen zum Abrufen der Funktionen und Daten.
  • 7 veranschaulicht eine Swimlane-Aufgabenorchestrierung gemäß einer Ausführungsform. Dies ist die erste Alternative. Wie veranschaulicht, startet der Client durch Erfassen des Ortes von Inhalten (Operation 705) und wählt aus, welche Knoten zu verwenden sind (Operation 710). Der Client bestimmt, die Funktionen und Daten abzurufen (Operation 715).
  • Der Client ruft dann die notwendigen Funktionen (Austausch 720) und Daten (Austausch 725) ab und leitet die Funktionen und Daten zusammen mit der Rechenaufgabenanforderung an den oder die ausgewählten Knoten weiter, die die erforderlichen Rechenressourcen aufweisen (Austausch 735). Vor dem Senden der Rechenaufgabenanforderung kann der Client mit dem ausgewählten Rechenknoten verhandeln und wartet auf die Bestätigung von ihm (Austausch 730).
  • Falls ICN verwendet wird, sendet der Client, nachdem er die auslagernde Edge-Entscheidung getroffen hat, Interessenpakete, um die Funktionen und Daten separat abzurufen. Nachdem er die Datenpakete erhalten hat, die die angeforderten Funktionen und Daten transportiert, sendet er ein Interessenpaket, das das Rechenaufgabenverhandeln transportiert, zu dem Rechenknoten. Der Rechenknoten gibt ein Datenpaket zurück, das die Rechenaufgabenverhandlungsrückmeldung transportiert. Und dann sendet der Client ein anderes Interessenpaket, um die Rechenaufgabenanforderung zu transportieren und auf das Datenpaket zu warten, das die Rechenaufgabenantwort vom Rechenknoten transportiert (Austausch 740).
  • 8 veranschaulicht eine Swimlane-Aufgabenorchestrierung gemäß einer Ausführungsform. Dies ist die zweite Alternative. Wieder startet der Client durch Erfassen des Ortes von Inhalten (Operation 805) und wählt aus, welche Knoten zu verwenden sind (Operation 810). Nun signalisiert der Client jedoch dem Rechenknoten, wo die Funktion oder Daten zu finden sind (Operation 815). Der Client wird diese Informationen unter Verwendung von Modifikationen an dem hierin beschriebenen Interessenpaket bereitstellen. In dem veranschaulichten Beispiel bestätigt der Client, dass der Rechenknoten die Anforderung handhaben wird (Austausch 820), empfängt eine Bestätigung (Austausch 825) und informiert den Rechenknoten, wie die Daten abgerufen werden sollen (Austausch 830). In einem Beispiel teilt der Client den ausgewählten Knoten mit, wie die Funktionen und Daten in der Rechenaufgabenanforderung abzurufen sind (Austausch 820). Nachdem der eine oder die mehreren Knoten, die Rechenressourcen aufweisen, die Anforderung empfangen, initiiert er die Prozeduren zum Abrufen der Funktionen (Austausch 835) und Daten (Austausch 840).
  • In der Rechenaufgabenanforderung, die ein Interessenpaket sein kann, beinhaltet der Client die Informationen zum Unterstützen des Rechenknotens beim Finden der entsprechenden Funktion oder Daten. In einem Beispiel sind die Informationen in dem ApplicationParameters-Feld des Interessenpakets beinhaltet. Hier verwendet der Rechenknoten, nachdem der Rechenknoten das Rechenaufgabenanforderungspaket empfangen hat, die im ApplicationParameters-Feld transportierten Informationen, um die Funktion (Austausch 835) oder die Daten (Austausch 840) abzurufen. Das ApplicationParameters-Feld kann den Namen des Erzeugers beinhalten, der die Informationen aufweist, das ApplicationParameters-Feld kann den vollständigen Namen der Funktion (der z. B. die Versionsnummer beinhaltet) beinhalten, oder das ApplicationParameters-Feld kann eine Knoten-ID beinhalten, die die Informationen aufweist.
  • Der Rechenknoten kann einen ForwardingHint verwenden, um den Zwischenroutern beim Weiterleiten des Interessenpakets - zum Abrufen der Funktionen oder Daten - an die korrekte Netzwerkregion zu unterstützen, oder die ID des Funktionsknotens oder des Datenknotens in den Namen des Interessenpakets setzen, um Routing zu ermöglichen. Hier kann ein ForwardingHint in ein Interessenpaket eingebettet sein, um die Weiterleitung zu unterstützen. Dies ist insbesondere nützlich, falls die Zwischenknoten keine vollständigen Informationen darüber aufweisen, wo der Inhalt in ihren FIBs zu finden ist.
  • 9 veranschaulicht eine Swimlane-Aufgabenorchestrierung gemäß einer Ausführungsform. Hier führt der Client nur Rechenknotenentdeckung durch. Somit wird angenommen, dass der Client keine HW, SW oder Daten aufweist, sondern dass der Client nur Rechenressourcen entdeckt. Nachdem die Entdeckungsphase (Operation 905) abgeschlossen ist, erhält der Client die Kenntnis von den Knoten mit Rechenressource (Operation 910). Der Client wählt dann einen oder mehrere Rechenknoten zum Durchführen der Rechenaufgabe aus (Operation 915) und sendet die Rechenaufgabenanforderung (Austausch 920). Zusammen mit der Rechenaufgabenanforderung werden auch die Anforderungen an die Funktionen und Daten transportiert (Operation 925). Einmal willigt der Rechenknoten in die Aufgabe ein (Austausch 930). Der eine oder die mehreren Rechenknoten entdecken die Funktionen und Daten für den Client (Operation 940). Dies kann durch eine Rechenaufgabenantwort (Austausch 935) ermöglicht werden, die angibt, dass der Rechenknoten fortfahren sollte. Im Anschluss an das Entdecken (Operation 940) ruft der Rechenknoten dann die Funktionen (Austausch 945) oder Daten (950) ab und stellt die Ergebnisse dem Client (Austausch 935) als Antwort auf eine Client-Anforderung für die Ergebnisse bereit (Austausch 960). In einem Beispiel kann der Rechenknoten den Client benachrichtigen, wann die Ergebnisse vollständig sind (Austausch 955).
  • In einem Beispiel veröffentlicht der Client die Rechenaufgabenanforderung und wartet auf die Ergebnisse. Hier veröffentlicht der Client die Anforderung - die die Anforderungen an Rechenressource, Funktionen oder Daten transportiert - an alle Rechenknoten. Jeder Knoten, der diese Anforderung empfängt, kann basierend auf seinen Fähigkeiten zum Erfüllen der Anforderung wählen, Zuständigkeit (oder teilweise Zuständigkeit) zu übernehmen. Diese Technik ist dynamisch und ermöglicht es dem Netzwerk, die Orchestrierung effektiv bereitzustellen.
  • 10 veranschaulicht eine Swimlane-Aufgabenorchestrierung gemäß einer Ausführungsform. Hier kann ein Knoten die vollständige Zuständigkeit für die angeforderte Dienstaufgabe übernehmen und als ein Leiter zum Erfüllen der Aufgabe fungieren. Hier bestimmt der Client, dass er keine Inhalte auffinden kann (Operation 1005), und rundsendet eine Anforderung zum Berechnen einer Aufgabe aus (Austausch 1010). Wenn ein Knoten mit ausreichend Rechenressource diese Anforderung empfängt, kann er alle Zuständigkeiten zum Entdecken (Operation 1030 und Austausch 1020 und 1025) und Abrufen der Funktionen (Austausch 1035) oder Daten (Austausch 1040) übernehmen (Operation 1015), falls sie auf dem Rechenknoten nicht verfügbar sind. Der Rechenknoten kann die Rechenaufgabe auch abschließen, nachdem Funktionen und Daten abgerufen wurden; 4) Zurückgeben der Ergebnisse an den Client (Austausch 1050), vielleicht nach Warnen des Clients, dass die Ergebnisse vollständig sind (Austausch 1045).
  • Bei dieser Technik entscheidet das Netzwerk vollständig darüber, wie die Rechenaufgabe erfüllt werden soll. Dies ist insofern einzigartig, als wenn ein Rechenknoten entscheidet, die Aufgabe zu übernehmen, er nicht nur eine Unicast-Rechenaufgabenantwort (die ein Datenpaket im Austausch 1020 ist) an den Client sendet, um anzugeben, dass er die Aufgabe übernehmen wird, sondern auch „Ich übernehme die Aufgabe“ an Nachbarn (Austausch 1025) rundsendet, um zu vermeiden, dass mehrere Rechenknoten an derselben Aufgabe arbeiten. Diese Broadcast-Nachricht (Austausch 1025) kann entweder ein spezifisches Interessenpaket, das kein Datenpaket hervorruft, oder ein Push-basiertes Datenpaket sein. Der Rechenknoten kann festlegen, wie viele Hops die Broadcast-Nachricht (Austausch 1025) weitergeleitet werden wird. Hier wird jeder Zwischenknoten, der diese Broadcast-Nachricht empfängt, sie weiterhin durch alle verfügbaren Faces aussenden, mit Ausnahme der sie empfangenden.
  • Falls ein spezifisches Interessenpaket verwendet wird, können in einem Beispiel zwei Alternativen in Betracht gezogen werden, um anzugeben, dass dies ein Interesse ohne Datenpaketantwort ist. Zuerst kann ein spezifischer Name - wie etwa /InfoSharing/ - definiert werden, um dem empfangenden Knoten zu melden, dass dies nur ein Interesse ist, das Informationen gemeinsam nutzt, und dass die entsprechende gemeinsam genutzte Info (z. B. Beschreibung der Aufgabe, die bereits vorgenommen wird) im ApplicationParameters-Feld gefunden werden kann. Zweitens kann ein neues Feld in dem Interessenpaket transportiert werden, das beide Aufgabenbeschreibungen beinhaltet. Die folgende Tabelle veranschaulicht diese Alternative:
    Name HopLimit ... Neues Feld für „Aufgabenbeschreibung“ und Angabe, dass keine Rückmeldung erforderlich ApplicationParameter
  • Falls ein Push-basiertes Datenpaket verwendet wird, kann MetaInfo (z. B. ein Feld) definiert werden, um anzugeben, dass dieses Datenpaket eine Push-basierte Broadcast-Nachricht ist. Hier kann die Aufgabenbeschreibung in dem Inhaltsteil des Datenpakets transportiert werden.
  • Die „Beschreibung der Aufgabe“ kann die ursprüngliche Aufgabenanforderung, die von dem Client empfangen wird, Client-Informationen, falls verfügbar - die verwendet werden können, um die Clients zu unterscheiden, weil es möglich ist, dass es mehrere Clients gibt, die dieselbe Aufgabe initiieren, die nach derselben Funktion und denselben Daten fragt, oder einen gültigen Timer zum Übernehmen dieser Aufgabe beinhalten. Nachdem zum Beispiel ein Knoten eine Broadcast-Nachricht „Ich übernehme die Aufgabe“ empfängt, ignoriert er jede Nachricht ,Rechenaufgabenanforderung‘, die empfangen wird, bevor der Timer abläuft.
  • Zusätzlich zum Rundsenden der Info „Ich übernehme die Aufgabe“ kann der Rechenknoten auch „Ich habe bereits die Rechenergebnisse“ rundsenden, falls eine ähnliche Rechenaufgabenanforderung später von einem anderen Client kommt und der Rechenknoten das Ergebnis speichert. Dies ermöglicht Wiederverwendung von Daten, um die Rechenressource zu sparen und den Overhead des Netzwerks zu reduzieren.
  • 11 veranschaulicht eine Swimlane-Aufgabenorchestrierung gemäß einer Ausführungsform. In diesem Beispiel kann ein Knoten teilweise Zuständigkeit für die Aufgabe übernehmen und mit anderen Knoten kooperieren, um die Dienstanforderung gemeinsam zu erfüllen, die durch den Client veröffentlicht wird. Wiederum kann der Client die Inhalte nicht entdecken (Operation 1105) und rundsendet die Anforderung (Austausch 1110). Wenn zum Beispiel ein Knoten mit Funktionen diese Anforderung empfängt (Operation 1115), fügt er seine Knoteninformationen (z. B. ID, Ort, Bewegungsgeschwindigkeit usw.) an die ursprüngliche Anforderung an und leitet sie an andere Knoten weiter (Austausch 1120). Die Knoten mit Daten führen die gleiche Operation durch (Operation 1125 und Austausch 1130). Schließlich empfängt ein Knoten mit ausreichend Rechenressource zum Abschließen der die erweiterte Anforderung mit den Informationen über die Verfügbarkeit von Funktionen und Daten (Operation 1135). Sobald dieser Knoten entscheidet, die Rechenaufgabe zu übernehmen, kann er Funktionen und Daten schnell abrufen und spart die Zeit zum Entdecken ein.
  • Jeder Zwischenknoten ist in der Lage, seine Info in die Rechenaufgabenanforderung einzufügen und sie dann weiterzuleiten, egal ob es sich um den Knoten mit HW, SW oder Daten handelt. Wenn ein Knoten diese Anforderungsnachricht empfängt und das Auffinden jeder in dieser Nachricht eingefügten Info die Anforderung der Aufgabe erfüllen kann, wird er eine Entscheidung treffen. Wenn zum Beispiel ein Knoten mit Funktion diese Nachricht empfängt und feststellt, dass die Info von Knoten mit Berechnung und Daten bereits in dieser Nachricht eingefügt ist, stoppt er das Rundsenden, hängt seine Info in der Anforderungsnachricht an, wählt den Rechenknoten aus und sendet die Anforderung an den ausgewählten Rechenknoten zurück.
  • Die Rechenaufgabenantwort (die ein Datenpaket sein kann) wird entlang des exakten Rückgabepfads zum Client zurück zum Client gesendet (Austausch 1155). Rechenknoten nehmen zwei Interessenpakete (Austausch 1140 und 1145) huckepack, die verwendet werden, um Funktionen (Austausch 1160) und Daten (Austausch 1165) in der Rechenaufgabenantwort abzurufen. Jeder Knoten auf dem Rückwärtslink erzeugt PIT-Einträge für die huckepack genommenen Interessenpakete. Wenn die Rechenaufgabenantwort den Datenknoten und Funktionsknoten durchläuft, werden die erforderliche Funktion und Daten in separaten Datenpaketen an den Rechenknoten gesendet. Die Berechnung ist abgeschlossen, das Ergebnis wird an den Client geliefert (Austausch 1170).
  • 12 veranschaulicht ein Beispiel für eine Rechenknotenauswahl. Beispiele für die Informationen, die in verschiedenen ICN-Paketen transportiert werden, um das Vorstehende zu implementieren, sind in den Tabellen 1 - 4 bereitgestellt. Diese Tabellen listen nur die in den Nachrichten zu transportierenden Informationselemente auf, es können jedoch andere Felder verwendet werden, zum Beispiel bei unterschiedlichen Netzwerktechnologien (z. B. Internetprotokoll (IP)), die unterschiedliche Datenformate aufweisen können. Tabelle 1: Rechenaufgabenanforderung
    Informationselement Vorhandensein Beschreibung
    Aufgabenbeschreibung M Beschreibung der Aufgabe
    > Datenname Erforderlicher Datenname
    > Datenverfügbarkeit „1“ - Daten sind auf dem Client verfügbar; „0“ - Daten sind auf dem Client nicht verfügbar;
    > Datengröße Falls Daten auf dem Client nicht verfügbar sind, ist dies der Schätzwert der Datengröße
    > Funktionsname Erforderlicher Funktionsname
    > Funktionsverfügbarkeit „1“ - Funktion ist auf dem Client verfügbar; „0“ - Funktion ist auf dem Client nicht verfügbar;
    > Zeit Zeitpunkt, zu dem der Client die Nachricht aussendet. Zeit ist ein zusammengesetzter Wert, der aus Sequenzen endlicher Länge ganzer Zahlen (nicht Zeichen) besteht, z. B. der Form „HH, MM, SS“
    > Gültigkeitsdauer Sie gibt die gültige Zeitdauer dieser Anforderungsnachricht an. Es handelt sich um eine relative Zeitdauer, und jeder Weiterleiter muss prüfen, ob die Anforderungsnachricht noch gültig ist oder nicht.
    Client-Info M Beschreibung des Clients
    > ID Schicht-2 ID des Knotens, der die Antwort sendet
    > Ort Ortsinformationen, die Breiten- und Längengrad beinhalten
    > Bewegungsgeschwindigkeit Bewegungsgeschwindigkeit des Clients
    Tabelle 2: Rechenaufgabenantwort
    Informationselement Vorhandensein Beschreibung
    Rückmeldung M ,1' - übernehme die Aufgabe; ,0' - übernehme die Aufgabe nicht;
    Knoten-Info O Info des Knotens, der diese Antwortnachricht sendet. Soll vorhanden sein, falls „Rückmeldung“ auf, 1' gesetzt ist
    > ID Schicht-2 ID des Knotens, der die Antwort sendet
    > Ort Ortsinformationen, die Breiten- und Längengrad beinhalten
    > Bewegungsgeschwindigkeit Bewegungsgeschwindigkeit des Knotens
    Datenverfügbarkeit M „1“ - sende mir Daten „0“ - ich habe die Daten bereits
    Funktionsverfügbarkeit M „1“ - sende mir Funktion „0“ - ich habe die Funktion bereits
    Ergebnisname O Der Name für das Ergebnis bei „Rückmeldung“ ist auf, 1' gesetzt
    Zeit für die Aufgabe O Ungefähre Zeit zum Abschließen dieser Aufgabe, falls „Rückmeldung“ auf „1“ gesetzt ist
    Tabelle 3: Ergebnisabrufanforderung
    Informationselement Vorhandensein Beschreibung
    Client-Info M
    > ID Schicht-2 ID des Knotens, der die Anforderung sendet
    > Ort Ortsinformationen, die Breiten- und Längengrad beinhalten
    > Bewegungsgeschwindigkeit Bewegungsgeschwindigkeit des Clients
    Zielknoten-Info M
    > ID Schicht-2 ID des Zielknotens
    > Ort Ortsinformationen, die Breiten- und Längengrad beinhalten
    Ergebnisname M Der Name für das Ergebnis
    Tabelle 4: Ergebnisabrufantwort
    Informationselement Vorhandensein Beschreibung
    Ergebnisname M Ergebnisname
    Ergebnis M Ergebnisse
    Client-Info M Die Info des Knotens, der die Ergebnisse empfangen wird
    > ID Schicht-2 ID des Zielknotens
    > Ort Ortsinformationen, die Breiten- und Längengrad beinhalten
  • Eine vollständige Orchestrierungsprozedur kann eine Sequenz von Aufgabenauslagerungsprozeduren bereitstellen. Hier kann eine „Aufgabe“ das Abrufen von Daten, das Abrufen einer Funktion oder das Übernehmen der Berechnungszuständigkeit sein. Ein Knoten mit begrenzten Ressourcen lagert eine oder mehrere Aufgaben an einen oder mehrere Knoten mit Aufgabenhandhabungsfähigkeiten durch Aussenden der Verhandlungsnachrichten aus. Der Knoten, der eine Aufgabe auslagert, kann als „Mapper“ bezeichnet werden. Zum Beispiel können der Client, der vorstehend eine Rechenaufgabe auslagert, und der Knoten mit Rechenressourcen, der oben eine Funktionsabrufaufgabe auslagert, beide Mapper sein. Der Knoten mit Aufgabenbehandlungsfähigkeiten kann als „Arbeiter“ bezeichnet werden, wie etwa der Knoten mit Rechenressourcen zum Implementieren einer Rechenaufgabe oder der Knoten, der eine benötigte Funktion speichert, wie vorstehend beschrieben.
  • Eine Aufgabenauslagerungsprozedur reicht von dem Zeitpunkt, zu dem der Mapper eine Verhandlungsnachricht an einen Arbeiter sendet, der potenziell die Aufgabe behandeln kann, bis zu dem Zeitpunkt, zu dem der Mapper die Rückmeldungen (z. B. Datenpakete) empfängt, wie etwa das Aufgabenbehandlungsergebnis oder eine Abweisungsnachricht. Zum Beispiel wird die Prozedur zum Behandeln einer Rechenaufgabe von dem Zeitpunkt an beurteilt, zu dem der Client (Mapper) das Rechenaufgabenverhandeln an einen Knoten (Arbeiter) mit Rechenressource sendet, bis zu dem Zeitpunkt, zu dem der Client die Rechenergebnisse von diesem Knoten empfängt.
  • Dynamische Netzwerkumgebungen bringen Unsicherheiten in das Orchestrierungssystem ein. Während ein Mapper möglicherweise mehrere Knoten mit verfügbaren Ressourcen entdeckt hat, um die gesamte oder einen Teil der Aufgabe nach der Inhaltsentdeckungsprozedur zu behandeln. Hier trifft der Mapper dynamisch Entscheidungen über das Wählen des besten Arbeiters unter den entdeckten Arbeitern, um die Aufgabe auszulagern, und das Ziel besteht darin, die durchschnittliche Verzögerung von Sequenzen von Aufgabenauslagerungsprozeduren zu minimieren.
  • Eine dynamische Orchestrierungsstrategie arbeitet durch Ausgleichen des Erkundungs- und Nutzungskompromisses zwischen den Kandidatenarbeitern. Für jeden entdeckten Arbeiter berechnet der Mapper rekursiv eine Dienstprogrammfunktion, deren Wert eine geschätzte potenzielle Fähigkeit der Aufgabenbehandlung repräsentiert. Diese Dienstprogrammfunktion jedes Arbeiters besteht aus zwei Kompromissfaktoren. Erstens die erfahrene durchschnittliche Verzögerung des Behandelns vorheriger Aufgaben. Zweitens nimmt die potenzielle Verzögerung ab, falls festgelegt wird, die aktuelle Aufgabe zu behandeln. Zu jedem Zeitpunkt des Treffens einer Auslagerungsentscheidung gewinnt der Arbeiter mit dem kleinsten Dienstprogrammwert die Aufgabenbehandlungszuständigkeit in der aktuellen Runde. Diese Strategie untersucht dynamisch verschiedene Arbeiter, um jedes ihrer Leistungsfähigkeitspotentiale kennenzulernen, während sie gleichzeitig so viel wie möglich den empirisch besten Arbeiter auswählt.
  • 13 veranschaulicht ein Flussdiagramm eines Beispiels für ein Verfahren 1300 zur Fähigkeitenentdeckung in einem informationszentrischen Netzwerk gemäß einer Ausführungsform. Die Operationen des Verfahrens 1300 werden durch Computerhardware durchgeführt, wie etwa jene vorstehend oder nachstehend beschriebene (z. B. Verarbeitungsschaltungsanordnung).
  • In der Operation 1305 wird eine Sondierungsnachricht durch einen ICN-Knoten an andere ICN-Knoten übertragen.
  • In der Operation 1310 empfängt der ICN-Knoten eine Antwort auf die Sondierungsnachricht.
  • In der Operation 1315 wird eine Pfadstärkenmetrik aus der Antwort abgeleitet. In einem Beispiel beinhaltet das Ableiten der Pfadstärkenmetrik, eine Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort zu berechnen. In einem Beispiel entspricht die Übertragungserfolgswahrscheinlichkeitsmetrik einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten. In einem Beispiel beinhaltet das Berechnen der Übertragungserfolgswahrscheinlichkeitsmetrik das Mitteln der Anzahlen erfolgreicher Übertragungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten. In einem Beispiel erfolgt das Mitteln über einen Zeitraum eines gleitenden Fensters. In einem Beispiel gilt:
  • In einem Beispiel beinhaltet das Ableiten der Pfadstärkenmetrik das Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort. In einem Beispiel beinhaltet das Berechnen der Metrik der erwarteten maximalen Übertragungsrate das Mitteln von Kanalrealisierungen zu einem Nachbar-ICN-Knoten über mehrere Sondierungsnachrichten. In einem Beispiel entspricht die Metrik der erwarteten maximalen Übertragungsrate einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten.
  • In einem Beispiel wird der Mittelwert der Kanalrealisierungen über die mehreren Sondierungsnachrichten über einen gleitenden Fensterzeitraum genommen. In einem Beispiel wird die Metrik der erwarteten maximalen Übertragungsrate C ij berechnet durch: C ¯ i j ( t ) = 1 m j i ( t ) k = 1 m j i ( t ) log ( 1 + S N R j i ( k ) )
    Figure DE102022202570A1_0007
    wobei mji(t) eine Anzahl der Antworten ist, die von dem Nachbar-ICN-Knoten j empfangen werden, die einer Sondierungsnachricht von dem ICN-Knoten i im Zeitraum t entsprechen.
  • In einem Beispiel beinhaltet das Ableiten der Pfadstärkenmetrik das Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort, das Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort und das Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der erwarteten maximalen Übertragungsrate, um die Pfadstärkenmetrik zu erzeugen. In einem Beispiel beinhaltet das Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate das Verwenden einer einfachen additiven Gewichtung (SAW).
  • In der Operation 1320 wird ein Entdeckungspaket empfangen. In einem Beispiel ist das Entdeckungspaket ein Interessenpaket.
  • In der Operation 1325 wird die Pfadstärkenmetrik zu dem Entdeckungspaket hinzugefügt. In einem Beispiel wird, wenn das Entdeckungspaket ein Interessenpaket ist, die Pfadstärkenmetrik vor dem Weiterleiten des Interessenpakets hinzugefügt. In einem Beispiel beinhaltet das Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket, das Extrahieren eines Pfadstärkenwerts aus dem Entdeckungspaket, das Hinzufügen der Pfadstärkenmetrik zu dem Pfadstärkenwert, um einen modifizierten Pfadstärkenwert zu erzeugen, und das Ersetzen des Pfadstärkenwerts in dem Entdeckungspaket durch den modifizierten Pfadstärkenwert.
  • 14 ist ein Blockdiagramm 1400, das einen Überblick über eine Konfiguration für Edge-Computing zeigt, die eine Verarbeitungsschicht beinhaltet, die in vielen der folgenden Beispiele als eine „Edge-Cloud“ bezeichnet wird. Wie gezeigt, befindet sich die Edge-Cloud 1410 gemeinsam an einem Edge-Ort, wie etwa einem Zugangspunkt oder einer Basisstation 1440, einem lokalen Verarbeitungs-Hub 1450 oder einer Zentrale 1420, und kann somit mehrere Entitäten, Vorrichtungen und Geräteinstanzen beinhalten. Die Edge-Cloud 1410 befindet sich viel näher an den Endpunkt (Verbraucher und Erzeuger)-Datenquellen 1460 (z. B. autonome Fahrzeuge 1461, Benutzergeräte 1462, Unternehmens- und Industriegeräte 1463, Videoaufnahmevorrichtungen 1464, Drohnen 1465, intelligente Städte und Gebäudevorrichtungen 1466, Sensoren und IoT-Vorrichtungen 1467 usw.) als das Cloud-Datenzentrum 1430. Rechen-, Speicher- und Speicherungsressourcen, die an den Edges in der Edge-Cloud 1410 angeboten werden, sind kritisch für das Bereitstellen von Antwortzeiten mit ultraniedriger Latenz für Dienste und Funktionen, die durch die Endpunktdatenquellen 1460 verwendet werden, sowie für das Reduzieren von Netzwerk-Backhaul-Verkehr von der Edge-Cloud 1410 zu dem Cloud-Datenzentrum 1430, wodurch Energieverbrauch und Gesamtnetzwerkverwendungen unter anderen Vorteilen verbessert werden.
  • Berechnung, Speicher und Speicherung sind knappe Ressourcen und nehmen im Allgemeinen in Abhängigkeit von dem Edge-Standort ab (z. B. sind weniger Verarbeitungsressourcen an Verbraucherendpunktvorrichtungen verfügbar als an einer Basisstation, als an einer Zentrale). Je näher sich der Edge-Standort jedoch am Endpunkt (z. B. dem Benutzergerät (UE)) befindet, desto mehr sind Raum und Leistung häufig eingeschränkt. Somit versucht Edge-Computing die Menge an Ressourcen, die für Netzwerkdienste benötigt werden, durch die Verteilung von mehr Ressourcen, die sich sowohl geografisch als auch in der Netzwerkzugriffszeit näher befinden, zu reduzieren. Auf diese Weise versucht Edge-Computing, die Rechenressourcen gegebenenfalls zu den Arbeitslastdaten zu bringen oder die Arbeitslastdaten zu den Rechenressourcen zu bringen.
  • Das Folgende beschreibt Aspekte einer Edge-Cloud-Architektur, die mehrere potenzielle Einsätze abdeckt und Einschränkungen behandelt, die manche Netzbetreiber oder Dienstanbieter in ihren eigenen Infrastrukturen aufweisen können. Diese beinhalten die Variation von Konfigurationen basierend auf dem Edge-Ort (weil Edges auf einer Basisstationsebene zum Beispiel weiter eingeschränkte Leistungsfähigkeit und Fähigkeiten in einem mandantenfähigen Szenario aufweisen können); Konfigurationen basierend auf der Art der Berechnung, des Speichers, der Speicherung, der Fabric, der Beschleunigung oder ähnlichen Ressourcen, die für Edge-Orte, Ebenen von Orten oder Gruppen von Orten verfügbar sind; die Dienst-, Sicherheits- und Verwaltungs- und Orchestrierungsfähigkeiten; und verwandte Ziele, um Nutzbarkeit und Leistungsfähigkeit von Enddiensten zu erreichen. Diese Einsätze können die Verarbeitung in Netzwerkschichten bewerkstelligen, die in Abhängigkeit von Latenz-, Abstands- und Timing-Charakteristiken als Schichten „Near Edge“, „Close Edge“, „Local Edge“, „Middle Edge“ oder „Far Edge“ betrachtet werden können.
  • Edge-Computing ist ein sich entwickelndes Paradigma, bei dem das Berechnen am oder näher an der „Edge“ eines Netzwerks durchgeführt wird, typischerweise durch die Verwendung einer Rechenplattform (z.B. x86 oder ARM-Rechenhardwarearchitektur), die auf Basisstationen, Gateways, Netzwerkroutern oder anderen Vorrichtungen implementiert ist, die sich viel näher an Endpunktvorrichtungen befinden, die die Daten erzeugen und verwenden. Edge-Gateway-Server können zum Beispiel mit Pools von Arbeitsspeicher- und Datenspeicherressourcen ausgestattet sein, um Berechnung für Nutzungsfälle mit niedriger Latenz (z. B. autonomes Fahren oder Videoüberwachung) für verbundene Client-Vorrichtungen in Echtzeit durchzuführen. Oder als ein Beispiel können Basisstationen mit Rechen- und Beschleunigungsressourcen erweitert werden, um Dienstarbeitslasten für verbundene Benutzergeräte direkt zu verarbeiten, ohne weiter Daten über Backhaul-Netzwerke zu kommunizieren. Oder als weiteres Beispiel kann Zentralnetzwerkmanagementhardware durch standardisierte Rechenhardware ersetzt werden, die virtualisierte Netzwerkfunktionen durchführt und Rechenressourcen für die Ausführung von Diensten und Verbraucherfunktionen für verbundene Vorrichtungen bietet. Innerhalb von Edge-Computing-Netzwerken kann es Szenarien in Diensten geben, in denen die Rechenressource zu den Daten „bewegt“ wird, sowie Szenarien, in denen die Daten zu der Rechenressource „bewegt“ werden. Oder als ein Beispiel können Basisstationsberechnungs-, Beschleunigungs- und Netzwerkressourcen Dienste bereitstellen, um die Arbeitslastanforderungen nach Bedarf durch Aktivieren inaktiver Kapazität (Subskription, Kapazität nach Bedarf) anzupassen, um selten auftretende Fälle, Notfälle zu managen oder Langlebigkeit für eingesetzte Ressourcen über einen wesentlich längeren implementierten Lebenszyklus bereitzustellen.
  • 15 veranschaulicht Betriebsschichten zwischen Endpunkten, einer Edge-Cloud und Cloud-Computing-Umgebungen. Insbesondere stellt 15 Beispiele für Rechenanwendungsfälle 1505 dar, die die Edge-Cloud 1410 unter mehreren veranschaulichenden Schichten der Netzwerkberechnung nutzen. Die Schichten beginnen an einer Endpunkt-Schicht (Vorrichtungen und Dinge) 1500, die auf die Edge-Cloud 1410 zugreift, um Datenerzeugungs-, Analyse- und Datenverwendungsaktivitäten durchzuführen. Die Edge-Cloud 1410 kann mehrere Netzwerkschichten umspannen, wie etwa eine Edge-Vorrichtungsschicht 1510 mit Gateways, On-Premise-Servern oder Netzwerkgeräten (Knoten 1515), die sich in physisch nahen Edge-Systemen befinden; eine Netzwerkzugangsschicht 1520, die Basisstationen, Funkverarbeitungseinheiten, Netzwerk-Hubs, regionale Datenzentren (DC) oder lokale Netzwerkgeräte (Gerät 1525) umfasst; und beliebige Geräte, Vorrichtungen oder Knoten, die sich dazwischen befinden (in der Schicht 1512, nicht ausführlich veranschaulicht). Die Netzwerkkommunikationen innerhalb der Edge-Cloud 1410 und zwischen den verschiedenen Schichten können über eine beliebige Anzahl drahtgebundener oder drahtloser Medien stattfinden, einschließlich über Konnektivitätsarchitekturen und -technologien, die nicht abgebildet sind.
  • Beispiele für Latenz, die aus Netzwerkkommunikationsabstands- und Verarbeitungszeitbeschränkungen resultieren, können von weniger als einer Millisekunde (ms), wenn in der Endpunktschicht 1500, unter 5 ms auf der Edge-Vorrichtungsschicht 1510, sogar bis zu zwischen 10 und 40 ms, wenn mit Knoten auf der Netzwerkzugangsschicht 1520 kommuniziert wird, reichen. Jenseits der Edge-Cloud 1410 befinden sich Schichten des Kernnetzwerks 1530 und des Cloud-Datenzentrums 1540, jeweils mit zunehmender Latenz (z. B. zwischen 50 - 60 ms auf der Kernnetzwerkschicht 1530, bis 100 oder mehr ms auf der Cloud-Datenzentrumschicht). Infolgedessen werden Operationen in einem Kernnetzwerk-Datenzentrum 1535 oder einem Cloud-Datenzentrum 1545 mit Latenzen von mindestens 50 bis 100 ms oder mehr nicht in der Lage sein, viele zeitkritische Funktionen der Anwendungsfälle 1505 zu erfüllen. Jeder dieser Latenzwerte wird zu Veranschaulichungs- und Kontrastzwecken bereitgestellt; es versteht sich, dass die Verwendung anderer Zugangsnetzwerkmedien
    und -technologien die Latenzen weiter reduzieren kann. In manchen Beispielen können jeweilige Abschnitte des Netzwerks relativ zu einer Netzwerkquelle und einem Netzwerkziel als Schichten „Close Edge“, „Local Edge“, „Near Edge“, „Middle Edge“ oder „Far Edge“ kategorisiert werden. Beispielsweise kann aus der Perspektive des Kernnetz-Datenzentrums 1535 oder eines Cloud-Datenzentrums 1545 ein Zentralen- oder Inhaltsdatennetzwerk als innerhalb einer „Near Edge“-Schicht („nahe“ an der Cloud, mit hohen Latenzwerten beim Kommunizieren mit den Vorrichtungen und Endpunkten der Anwendungsfälle 1505) befindlich betrachtet werden, wohingegen ein Zugangspunkt, eine Basisstation, ein On-Premise-Server oder ein Netzwerk-Gateway als innerhalb einer „Far Edge“-Schicht („fern“ von der Cloud, mit niedrigen Latenzwerten beim Kommunizieren mit den Vorrichtungen und Endpunkten der Anwendungsfälle 1505) befindlich betrachtet werden können. Es versteht sich, dass andere Kategorisierungen einer speziellen Netzwerkschicht als eine „Close“, „Local“, „Near“, „Middle“ oder „Far“ Edge bildend auf der Latenz, dem Abstand, der Anzahl von Netzwerk-Hops oder anderen messbaren Charakteristiken basieren können, wie sie von einer Quelle in einer beliebigen der Netzwerkschichten 1500 - 1540 gemessen werden.
  • Die verschiedenen Anwendungsfälle 1505 können unter Verwendungsdruck von eingehenden Strömen aufgrund mehrerer Dienste, die die Edge-Cloud nutzen, auf Ressourcen zugreifen. Um Ergebnisse mit niedriger Latenz zu erzielen, gleichen die Dienste, die innerhalb der Edge-Cloud 1410 ausgeführt werden, variierende Anforderungen in Bezug auf Folgendes aus: (a) Priorität (Durchsatz oder Latenz) und Dienstqualität (QoS) (z. B. kann der Verkehr für ein autonomes Auto eine höhere Priorität hinsichtlich der Antwortzeitanforderung als ein Temperatursensor aufweisen; oder eine Empfindlichkeit bzw. eine Engstelle der Leistungsfähigkeit kann an einer Rechen-/Beschleuniger-, Speicher-, Speicherungs- oder Netzwerkressource je nach Anwendung vorhanden sein); (b) Zuverlässigkeit und Widerstandsfähigkeit (z. B. muss auf manche Eingangsströme reagiert und der Verkehr mit missionskritischer Zuverlässigkeit geroutet werden, wohingegen manche anderen Eingangsströme je nach Anwendung eine gelegentliche Störung tolerieren können); und (c) physikalische Beschränkungen (z. B. Leistung, Kühlung und Formfaktor usw.).
  • Die Ende-zu-Ende-Dienstansicht für diese Anwendungsfälle beinhaltet das Konzept eines Dienstflusses und ist mit einer Transaktion assoziiert. Die Transaktion gibt die Gesamtdienstanforderung für die Entität an, die den Dienst in Anspruch nimmt, sowie die assoziierten Dienste für die Ressourcen, Arbeitslasten, Arbeitsabläufe und Unternehmensfunktions- und Unternehmensebenenanforderungen. Die Dienste, die mit den beschriebenen „Begriffen“ ausgeführt werden, können auf jeder Schicht auf eine Weise verwaltet werden, dass Echtzeit- und Laufzeitvertragskonformität für die Transaktion während des Lebenszyklus des Dienstes sichergestellt wird. Wenn eine Komponente in der Transaktion ihre vereinbarte Dienstgütevereinbarung (SLA, Service Level Agreement) verfehlt, kann das System als Ganzes (Komponenten in der Transaktion) die Fähigkeit bereitstellen, (1) die Auswirkung der SLA-Verletzung zu verstehen und (2) andere Komponenten in dem System zu erweitern, um die gesamte Transaktions-SLA wiederaufzunehmen, und (3) Schritte zu implementieren, um Abhilfe zu schaffen.
  • Dementsprechend kann unter Berücksichtigung dieser Variationen und Dienstleistungsmerkmale Edge-Computing innerhalb der Edge-Cloud 1410 die Fähigkeit bereitstellen, mehrere Anwendungen der Anwendungsfälle 1505 (z. B. Objektverfolgung, Video Überwachung, verbundene Autos usw.) in Echtzeit oder nahezu Echtzeit zu versorgen und auf diese zu reagieren und Voraussetzungen für ultraniedrige Latenz für diese mehreren Anwendungen zu erfüllen. Diese Vorteile ermöglichen eine ganz neue Klasse von Anwendungen (z. B. Virtual Network Functions (VNFs), Function as a Service (FaaS), Edge as a Service (EaaS), Standardprozesse usw.), die herkömmliches Cloud-Computing aufgrund von Latenz oder anderen Einschränkungen nicht nutzen können.
  • Mit den Vorteilen des Edge-Computing ergeben sich jedoch die folgenden Vorbehalte. Die an der Edge befindlichen Vorrichtungen sind häufig ressourcenbeschränkt, und deshalb besteht Druck auf die Verwendung von Edge-Ressourcen. Typischerweise wird dies durch das Pooling von Speicher- und Speicherungsressourcen zur Verwendung durch mehrere Benutzer (Mandanten) und Vorrichtungen behandelt. Die Edge kann in Leistung und Kühlung eingeschränkt sein, und daher muss der Leistungsverbrauch durch die Anwendungen berücksichtigt werden, die die meiste Leistung verbrauchen. Es kann inhärente Leistungs-Leistungsfähigkeits-Kompromisse in diesen gepoolten Speicherressourcen geben, da viele von ihnen wahrscheinlich neu entwickelte Speichertechnologien verwenden, bei denen bei mehr Leistung eine größere Speicherbandbreite notwendig ist. Gleichermaßen sind verbesserte Sicherheit von Hardware und vertrauenswürdigen Root-of-Trust-Funktionen ebenfalls erforderlich, da Edge-Orte unbemannt sein können und sogar zugelassenen Zugriff benötigen können (z. B., wenn sie an einem Standort eines Dritten untergebracht sind). Solche Probleme vergrößern sich in der Edge-Cloud 1410 bei einer Multi-Mandanten-, Multi-Eigentümer- oder Multi-Zugriffseinstellung, bei der Dienste und Anwendungen von vielen Benutzern angefordert werden, insbesondere da die Netzwerkverwendung dynamisch schwankt und sich die Zusammensetzung der mehreren Stakeholder, Anwendungsfälle und Dienste ändert.
  • Auf einer allgemeineren Ebene kann ein Edge-Computing-System so beschrieben werden, dass es eine beliebige Anzahl von Einsätzen auf den zuvor erörterten Schichten umfasst, die in der Edge-Cloud 1410 arbeiten (Netzwerkschichten 1500 - 1540), die eine Koordination von Client- und verteilten Datenverarbeitungsvorrichtungen bereitstellen. Ein oder mehrere Edge-Gateway-Knoten, ein oder mehrere Edge-Aggregationsknoten und ein oder mehrere Kerndatenzentren können über Schichten des Netzwerks verteilt sein, um eine Implementierung des Edge-Computing-Systems durch oder im Auftrag eines Telekommunikationsdienstanbieters („telco“ oder „TSP“), Internet-der-Dinge-Dienstanbieters, Cloud-Dienstanbieters (CSP), einer Unternehmensentität oder einer beliebigen anderen Anzahl von Entitäten bereitzustellen. Verschiedene Implementierungen und Konfigurationen des Edge-Computing-Systems können dynamisch bereitgestellt werden, wie etwa, wenn sie orchestriert sind, um Dienstziele zu erfüllen.
  • In Übereinstimmung mit den hierin bereitgestellten Beispielen kann ein Client-Rechenknoten als eine beliebige Art von Endpunktkomponente, Vorrichtung, Gerät oder anderem umgesetzt sein, die dazu in der Lage ist, als ein Erzeuger oder Verbraucher von Daten zu kommunizieren. Ferner bedeutet die Bezeichnung „Knoten“ oder „Vorrichtung“, wie sie bei dem Edge-Computing-System verwendet wird, nicht notwendigerweise, dass ein solcher Knoten oder Vorrichtung in einer Client- oder Agent-/Minion-/Folgerrolle arbeitet; vielmehr beziehen sich beliebige der Knoten oder Vorrichtungen in dem Edge-Rechensystem auf einzelne Entitäten, Knoten oder Subsysteme, die diskrete oder verbundene Hardware- oder Softwarekonfigurationen beinhalten, um die Edge-Cloud 1410 zu ermöglichen oder zu verwenden.
  • Von daher ist die Edge-Cloud 1410 aus Netzwerkkomponenten und Funktionsmerkmalen gebildet, die durch und innerhalb von Edge-Gateway-Knoten, Edge-Aggregationsknoten oder anderen Edge-Rechenknoten unter den Netzwerkschichten 1510 - 1530 betrieben werden. Die Edge-Cloud 1410 kann somit als eine beliebige Art von Netzwerk realisiert sein, das Edge-Computing- oder Speicherressourcen bereitstellt, die sich in der Nähe von Funkzugangsnetzwerk (RAN)-fähigen Endpunktvorrichtungen (z. B. mobilen Rechenvorrichtungen, IoT-Vorrichtungen, Smart-Vorrichtungen usw.) befinden, die hierin erörtert sind. Mit anderen Worten kann die Edge-Cloud 1410 als eine „Edge“ angesehen werden, die die Endpunktvorrichtungen und herkömmliche Netzwerkzugangspunkte verbindet, die als ein Eintrittspunkt in Dienstanbieter-Kernnetzwerke dienen, einschließlich Netzwerke von Mobilfunkbetreibern (z. B. Global System for Mobile Communications (GSM)-Netzwerke, Long-Term Evolution (LTE)-Netzwerke, 5G/6G-Netzwerke usw.), während sie auch Speicher- oder Rechenfähigkeiten bereitstellt. Andere Arten und Formen des Netzwerkzugangs (z. B. Wi-Fi, Long-Range-Wireless, drahtgebundene Netzwerke einschließlich optischer Netzwerke) können ebenfalls anstelle von oder in Kombination mit solchen 3GPP-Betreibernetzwerken genutzt werden.
  • Die Netzwerkkomponenten der Edge-Cloud 1410 können Server, mandantenfähige Server, Geräterechenvorrichtungen oder eine beliebige andere Art von Rechenvorrichtung sein. Zum Beispiel kann die Edge-Cloud 1410 eine Geräterechenvorrichtung beinhalten, die eine eigenständige elektronische Vorrichtung einschließlich eines Gehäuses, eines Chassis, einer Hülle oder einer Ummantelung ist. Unter Umständen kann das Gehäuse zur Portabilität dimensioniert sein, so dass es von einem Menschen transportiert oder versendet werden kann. Beispielhafte Gehäuse können Materialien beinhalten, die eine oder mehrere Außenflächen bilden, die den Inhalt des Geräts teilweise oder vollständig schützen, wobei der Schutz Wetterschutz, Schutz in gefährlichen Umgebungen (z. B. elektromagnetische Interferenz (EMI), Vibration, extreme Temperaturen) beinhalten oder Tauchfähigkeit ermöglichen kann. Beispielhafte Gehäuse können Leistungsschaltungsanordnungen beinhalten, um Leistung für stationäre oder portable Implementierungen bereitzustellen, wie etwa Wechselstrom (AC)-Leistungseingänge, Gleichstrom (DC)-Leistungseingänge, AC/DC-Wandler, DC/AC-Wandler, DC/DC-Wandler, Leistungsregler, Transformatoren, Ladeschaltungsanordnungen, Batterien, drahtgebundene Eingänge oder drahtlose Leistungseingänge. Beispielhafte Gehäuse oder Oberflächen davon können Montagehardware beinhalten oder damit verbunden sein, um eine Befestigung an Strukturen, wie etwa Gebäuden, Telekommunikationsstrukturen (z. B. Masten, Antennenstrukturen usw.) oder Racks (z. B. Server-Racks, Blade-Halterungen usw.), zu ermöglichen. Beispielhafte Gehäuse oder Oberflächen davon können einen oder mehrere Sensoren (z. B. Temperatursensoren, Vibrationssensoren, Lichtsensoren, Akustiksensoren, kapazitive Sensoren, Näherungssensoren, Infrarot- oder andere visuell-thermische Sensoren usw.) unterstützen. Ein oder mehrere solche Sensoren können in der Oberfläche enthalten sein, von dieser getragen werden oder anderweitig in diese eingebettet sein oder an der Oberfläche des Geräts montiert sein. Beispielhafte Gehäuse oder Oberflächen davon können mechanische Konnektivität unterstützen, wie etwa Antriebshardware (z. B. Räder, Rotoren, wie etwa Propeller usw.) oder Gelenkhardware (z. B. Roboterarme, schwenkbare Fortsätze usw.). Unter Umständen können die Sensoren eine beliebige Art von Eingabevorrichtungen beinhalten, wie etwa Benutzerschnittstellenhardware (z. B. Tasten, Schalter, Wählscheiben, Schieber, Mikrofone usw.). Unter Umständen beinhalten beispielhafte Gehäuse Ausgabevorrichtungen, die darin enthalten, von diesen getragen, darin eingebettet oder daran angebracht sind. Ausgabevorrichtungen können Anzeigen, Touchscreens, Leuchten, Leuchtdioden (LEDs), Lautsprecher, Eingabe/Ausgabe (E/A)-Ports (z. B. Universal Serial Bus (USB)) usw. beinhalten. Unter Umständen sind Edge-Vorrichtungen Vorrichtungen, die in dem Netzwerk für einen spezifischen Zweck (z. B. eine Ampel) ausgestellt werden, können aber Verarbeitungs- oder andere Kapazitäten aufweisen, die für andere Zwecke genutzt werden können. Solche Edge-Vorrichtungen können unabhängig von anderen vernetzten Vorrichtungen sein und können mit einem Gehäuse bereitgestellt sein, das einen Formfaktor aufweist, der für ihren primären Zweck geeignet ist, aber dennoch für andere Rechenaufgaben verfügbar sein, die ihre primäre Aufgabe nicht stören. Edge-Vorrichtungen beinhalten Vorrichtungen des Internets der Dinge. Die Geräterechenvorrichtung kann Hardware- und Softwarekomponenten beinhalten, um lokale Probleme, wie etwa Vorrichtungstemperatur, Vibration, Ressourcennutzung, Aktualisierungen, Leistungsversorgungsprobleme, physische und Netzwerksicherheit usw., zu verwalten. Die Edge-Cloud 1410 kann auch einen oder mehrere Server oder einen oder mehrere mandantenfähige Server beinhalten. Ein solcher Server kann ein Betriebssystem beinhalten und eine virtuelle Rechenumgebung implementieren. Eine virtuelle Rechenumgebung kann einen Hypervisor beinhalten, der eine oder mehrere virtuelle Maschinen, einen oder mehrere Container usw. verwaltet (z. B. spawnt, einsetzt, in Betrieb setzt, zerstört, außer Betrieb setzt usw.). Solche virtuellen Rechenumgebungen stellen eine Ausführungsumgebung bereit, in der eine oder mehrere Anwendungen oder andere Software, anderer Code oder andere Skripte ausgeführt werden können, während sie von einer oder mehreren anderen Anwendungen, Software, Code oder Skripten isoliert sind.
  • In 16 tauschen verschiedene Client-Endpunkte 1610 (in der Form von Mobilvorrichtungen, Computern, autonomen Fahrzeugen, Unternehmensrechenanlagen, industriellen Verarbeitungsanlagen) Anfragen und Antworten aus, die für die Art der Endpunktnetzwerkaggregation spezifisch sind. Beispielsweise können Client-Endpunkte 1610 Netzwerkzugang über ein drahtgebundenes Breitbandnetzwerk erhalten, indem sie Anforderungen und Antworten 1622 durch ein On-Premise-Netzwerksystem 1632 austauschen. Manche Client-Endpunkte 1610, wie etwa mobile Rechenvorrichtungen, können Netzwerkzugang über ein drahtloses Breitbandnetzwerk erhalten, indem sie Anforderungen und Antworten 1624 durch einen Zugangspunkt (z. B. einen Mobilfunkturm) 1634 austauschen. Manche Client-Endpunkte 1610, wie etwa autonome Fahrzeuge, können Netzwerkzugang für Anfragen und Antworten 1626 über ein drahtloses Fahrzeugnetzwerk durch ein auf Straßen angeordnetes Netzwerksystem 1636 erhalten. Unabhängig von der Art des Netzwerkzugangs kann der TSP jedoch Aggregationspunkte 1642, 1644 innerhalb der Edge-Cloud 1410 einsetzen, um Verkehr und Anforderungen zu aggregieren. Somit kann der TSP innerhalb der Edge-Cloud 1410 verschiedene Rechen- und Speicherungsressourcen einsetzen, wie etwa an Edge-Aggregationsknoten 1640, um angeforderten Inhalt bereitzustellen. Die Edge-Aggregationsknoten 1640 und andere Systeme der Edge-Cloud 1410 sind mit einer Cloud oder einem Datenzentrum 1660 verbunden, das ein Backhaul-Netzwerk 1650 verwendet, um Anforderungen mit höherer Latenz von einer Cloud/einem Datenzentrum für Websites, Anwendungen, Datenbankserver usw. zu erfüllen. Zusätzliche oder konsolidierte Instanzen der Edge-Aggregationsknoten 1640 und der Aggregationspunkte 1642, 1644, einschließlich jener, die in einem einzigen Server-Framework eingesetzt werden, können auch innerhalb der Edge-Cloud 1410 oder anderer Bereiche der TSP-Infrastruktur vorhanden sein.
  • In weiteren Beispielen können jeweilige Edge-Rechenknoten als eine Art von Vorrichtung, Gerät, Computer oder anderem „Ding“ umgesetzt sein, das in der Lage ist, mit anderen Edge-, Vernetzungs- oder Endpunktkomponenten zu kommunizieren. Zum Beispiel kann eine Edge-Rechenvorrichtung als ein Personalcomputer, ein Server, ein Smartphone, eine mobile Rechenvorrichtung, ein Smart-Gerät, ein fahrzeuginternes Rechensystem (z. B. ein Navigationssystem), eine eigenständige Vorrichtung mit einem Außengehäuse, einer Ummantelung usw. oder eine andere Vorrichtung oder ein anderes System, das in der Lage ist, die beschriebenen Funktionen durchzuführen, umgesetzt sein.
  • In einem Beispiel ist der Speichervorrichtung (z. B. Speicherschaltungsanordnung) eine beliebige Anzahl von blockadressierbaren Speichervorrichtungen, wie etwa jene, die auf NAND- oder NOR-Technologien basieren (zum Beispiel Single-Level Cell („SLC“), Multi-Level Cell („MLC“), Quad-Level Cell („QLC“), Tri-Level-Cell („TLC“) oder irgendein anderes NAND). In manchen Beispielen beinhaltet/beinhalten die Speichervorrichtung(en) eine byteadressierbare dreidimensionale Write-in-Place-Crosspoint-Speichervorrichtung oder andere byteadressierbare nichtflüchtige Write-in-Place-Speichervorrichtungen (NVM), wie etwa Ein- oder Mehrpegelphasenwechselspeicher (PCM) oder Phasenwechselspeicher mit einem Schalter (PCMS), NVM-Vorrichtungen, die Chalkogenid-Phasenwechselmaterial (zum Beispiel Chalkogenidglas) verwenden, resistiven Speicher einschließlich Metalloxidbasis, Sauerstoffleerstellenbasis und Leitbrücken-Direktzugriffsspeicher (CB-RAM), Nanodrahtspeicher, ferroelektrischen Transistor-Direktzugriffsspeicher (FeTRAM), magnetoresistiven Direktzugriffsspeicher (MRAM) mit Memristortechnologie, Spin Transfer Torque (STT)-MRAM, eine auf spintronischem Magnetübergangsspeicher basierende Vorrichtung, eine auf Magnettunnelkontakt (MTJ) basierende Vorrichtung, eine auf Domänenwand (DW) und SOT (Spin-Orbit-Übertragung) basierende Vorrichtung, eine auf Thyristor basierende Speichervorrichtung, eine Kombination aus beliebigen der vorstehenden oder einen anderen geeigneten Speicher beinhalten. Eine Speichervorrichtung kann auch eine dreidimensionale Crosspoint-Speichervorrichtung (z. B. Intel® 3D XPoint™-Speicher) oder andere byteadressierbare nichtflüchtige Write-in-Place-Speichervorrichtungen beinhalten. Die Speichervorrichtung kann den Die selbst oder ein gehäustes Speicherprodukt bezeichnen. In einigen Beispielen kann der 3D-Kreuzpunktspeicher (z.B. Intel® 3D XPoint™-Speicher) eine transistorlose stapelbare Crosspoint-Architektur beinhalten, bei der Speicherzellen am Schnittpunkt von Wortleitungen und Bitleitungen sitzen und einzeln adressierbar sind und bei der die Bitspeicherung auf einer Änderung des Bahnwiderstands basiert. In manchen Beispielen kann der gesamte oder ein Teil des Speichers verschiedene Software und Daten speichern, die während des Betriebs verwendet werden, wie etwa eine oder mehrere Anwendungen, Daten, mit denen von der/den Anwendung(en) gearbeitet wird, Bibliotheken und Treiber.
  • In manchen Beispielen beinhalten widerstandsbasierte oder transistorlose Speicherarchitekturen Phasenwechselspeicher (PCM)-Vorrichtungen im Nanometermaßstab, in denen sich ein Volumen an Phasenwechselmaterial zwischen mindestens zwei Elektroden befindet. Teile des beispielhaften Phasenwechselmaterials zeigen variierende Grade an kristallinen Phasen und amorphen Phasen auf, wobei variierende Grade an Widerstand zwischen den wenigstens zwei Elektroden gemessen werden können. In manchen Beispielen ist das Phasenwechselmaterial ein Chalkogenid-basiertes Glasmaterial. Solche resistiven Speichervorrichtungen werden manchmal als memristive Vorrichtungen bezeichnet, die sich an die Historie des Stroms erinnern, der zuvor durch sie geflossen ist. Gespeicherte Daten werden von beispielhaften PCM-Vorrichtungen abgerufen, indem der elektrische Widerstand gemessen wird, wobei die kristallinen Phasen einen oder mehrere relativ niedrigere Widerstandswerte (z. B. logisch „0“) im Vergleich zu den amorphen Phasen mit einem oder mehreren relativ höheren Widerstandswerten (z. B. logisch „1“) aufweisen.
  • Beispielhafte PCM-Vorrichtungen speichern Daten für lange Zeiträume (z. B. ungefähr 10 Jahre bei Raumtemperatur). Schreiboperationen in beispielhafte PCM-Vorrichtungen (z. B. Setzen auf logisch „0“, Setzen auf logisch „1“, Setzen auf einen Zwischenwiderstandswert) werden durch Anlegen eines oder mehrerer Strompulse an die mindestens zwei Elektroden erreicht, wobei die Impulse eine bestimmte Stromstärke und -dauer aufweisen. Beispielsweise bewirkt ein langer niedriger Stromimpuls (SET), der an die wenigstens zwei Elektroden angelegt wird, dass sich die beispielhafte PCM-Vorrichtung in einem kristallinen Zustand mit niedrigem Widerstand befindet, während ein vergleichsweise kurzer hoher Stromimpuls (RESET), der an die wenigstens zwei Elektroden angelegt wird, bewirkt, dass sich die beispielhafte PCM-Vorrichtung in einem amorphen Zustand mit hohem Widerstand befindet.
  • In einigen Beispielen ermöglicht die Implementierung von PCM-Vorrichtungen Nichtvon-Neumann-Rechenarchitekturen, die In-Memory-Rechenfähigkeiten ermöglichen. Allgemein gesprochen beinhalten herkömmliche Rechenarchitekturen eine Zentralverarbeitungseinheit (CPU), die über einen Bus kommunikativ mit einer oder mehreren Speichervorrichtungen verbunden ist. Von daher wird eine endliche Energiemenge und Zeit verbraucht, um Daten zwischen der CPU und dem Speicher zu übertragen, was ein bekannter Engpass von von-Neumann-Rechenarchitekturen ist. PCM-Vorrichtungen minimieren und eliminieren jedoch in manchen Fällen Datentransfers zwischen der CPU und dem Speicher, indem manche Rechenoperationen speicherintern durchgeführt werden. Anders ausgedrückt speichern PCM-Vorrichtungen nicht nur Informationen, sondern führen auch Rechenaufgaben aus. Solche Nichtvon-Neumann-Rechenarchitekturen können Vektoren mit einer relativ hohen Dimensionalität implementieren, um hyperdimensionales Berechnen zu ermöglichen, wie etwa Vektoren mit 10000 Bits. Vektoren mit relativ großer Bitbreite ermöglichen Berechnungsparadigmen, die nach dem menschlichen Gehirn modelliert sind, das auch zu breiten Bitvektoren analoge Informationen verarbeitet.
  • 17 veranschaulicht eine beispielhafte Softwareverteilungsplattform 1705 zum Verteilen von Software, wie etwa der beispielhaften computerlesbaren Anweisungen Fehler! Verweisquelle konnte nicht gefunden werden. 82, an eine oder mehrere Vorrichtungen, wie etwa die beispielhaften Prozessorplattform(en) 1700 oder verbundene Edge-Vorrichtungen. Die beispielhafte Softwareverteilungsplattform 1705 kann durch einen beliebigen Computerserver, eine Dateneinrichtung, einen Cloud-Dienst usw. implementiert werden, der in der Lage ist, Software zu speichern und zu anderen Rechenvorrichtungen (z. B. an Dritte) zu übertragen. Beispielhafte verbundene Edge-Vorrichtungen können Kunden, Clients, Verwaltungsvorrichtungen (z. B. Server), Dritte (z. B. Kunden einer Entität, die die Softwareverteilungsplattform 1705 besitzt oder betreibt) sein. Beispielhafte verbundene Edge-Vorrichtungen können in kommerziellen oder Hausautomatisierungsumgebungen arbeiten. In manchen Beispielen ist ein Dritter ein Entwickler, ein Verkäufer oder ein Lizenzgeber von Software, wie etwa der beispielhaften computerlesbaren Anweisungen 1782. Die Dritten können Verbraucher, Benutzer, Einzelhändler, OEMs usw. sein, die die Software zur Verwendung oder zum Weiterverkauf oder zum Sublizenzieren erwerben oder lizenzieren. In manchen Beispielen bewirkt verteilte Software, dass die Anzeige einer oder mehrerer Benutzeroberflächen (UIs) oder grafischer Benutzeroberflächen (GUIs) die eine oder die mehreren Vorrichtungen identifiziert (z. B. verbundene Edge-Vorrichtungen), die geografisch oder logisch voneinander getrennt sind (z. B. physisch getrennte IoT-Vorrichtungen, gekennzeichnet durch die Zuständigkeit für Wasserverteilungssteuerung (z. B. Pumpen), Stromverteilungssteuerung (z. B. Relais) usw.).
  • In dem veranschaulichten Beispiel von 17 beinhaltet die Softwareverteilungsplattform 1705 einen oder mehrere Server und eine oder mehrere Speichervorrichtungen. Die Speichervorrichtungen speichern die computerlesbaren Anweisungen 1782, die den hierin beschriebenen beispielhaften computerlesbaren Anweisungen entsprechen können. Der eine oder die mehreren Server der beispielhaften Softwareverteilungsplattform 1705 stehen in Kommunikation mit einem Netzwerk 1710, das dem Internet oder einem der hierin beschriebenen beispielhaften Netzwerke entsprechen kann. In manchen Beispielen reagieren der eine oder die mehreren Server auf Anforderungen, die Software als Teil einer kommerziellen Transaktion an eine anfordernde Partei zu übertragen. Die Zahlung für die Lieferung, den Verkauf oder die Lizenz der Software kann durch den einen oder die mehreren Server der Softwareverteilungsplattform oder über eine Zahlungsentität eines Dritten gehandhabt werden. Die Server ermöglichen Käufern oder Lizenzgebern, die computerlesbaren Anweisungen 1782 von der Softwareverteilungsplattform 1705 herunterzuladen. Zum Beispiel kann die Software, die den an anderer Stelle hierin besprochenen beispielhaften computerlesbaren Anweisungen entsprechen kann, auf die beispielhafte(n) Prozessorplattform(en) 1720 (z. B. beispielhafte verbundene Edge-Vorrichtungen) heruntergeladen werden, die die computerlesbaren Anweisungen 1782 ausführen sollen, um hierin beschriebene Techniken zu implementieren. In manchen Beispielen sind ein oder mehrere Server der Softwareverteilungsplattform 1705 kommunikativ mit einer oder mehreren Sicherheitsdomänen oder Sicherheitsvorrichtungen verbunden, durch die Anforderungen und Übertragungen der beispielhaften computerlesbaren Anweisungen 1782 laufen müssen. In manchen Beispielen bieten ein oder mehrere Server der Softwareverteilungsplattform 1705 periodisch Aktualisierungen der Software (z. B. der beispielhaften computerlesbaren Anweisungen 1782) an, übertragen oder erzwingen diese, um sicherzustellen, dass Verbesserungen, Patches, Aktualisierungen usw. verteilt und auf die Software in den Endbenutzervorrichtungen angewendet werden.
  • In dem veranschaulichten Beispiel von 17 sind die computerlesbaren Anweisungen 1782 auf Speichervorrichtungen der Softwareverteilungsplattform 1705 in einem speziellen Format gespeichert. Ein Format computerlesbarer Anweisungen beinhaltet unter anderem eine spezielle Codesprache (z. B. Java, JavaScript, Python, C, C#, SQL, HTML usw.) oder einen speziellen Codezustand (z. B. unkompilierten Code (z. B. ASCII), interpretierten Code, verknüpften Code, ausführbaren Code (z. B. eine Binärdatei) usw.). In manchen Beispielen liegen die computerlesbaren Anweisungen 1782, die in der Softwareverteilungsplattform 1705 gespeichert sind, in einem ersten Format vor, wenn sie an die beispielhafte(n) Prozessorplattform(en) 1720 übertragen werden. In einigen Beispielen ist das erste Format eine ausführbare Binärdatei, in dem bestimmte Arten der Prozessorplattform(en) 1720 arbeiten können. In einigen Beispielen ist das erste Format jedoch unkompilierter Code, der eine oder mehrere Vorbereitungsaufgaben erfordert, um das erste Format in ein zweites Format umzuwandeln, um die Ausführung auf der/den beispielhaften Prozessorplattform(en) 1720 zu ermöglichen. Beispielsweise müssen die empfangende(n) Prozessorplattform(en) 1720 möglicherweise die computerlesbaren Anweisungen 1782 im ersten Format kompilieren, um ausführbaren Code in einem zweiten Format zu erzeugen, der auf der/den Prozessorplattform(en) 1720 ausgeführt werden kann. In noch anderen Beispielen ist das erste Format interpretierter Code, der beim Erreichen der Prozessorplattform(en) 1720 durch ein Übersetzungsprogramm interpretiert wird, um die Ausführung von Anweisungen zu ermöglichen.
  • 18 veranschaulicht ein beispielhaftes informationszentrisches Netzwerk (ICN) gemäß einer Ausführungsform. ICNs arbeiten anders als herkömmliche hostbasierte (z. B. adressbasierte) Kommunikationsnetzwerke. ICN ist ein Oberbegriff für ein Vernetzungsparadigma, bei dem Informationen und/oder Funktionen selbst benannt und vom Netzwerk anstelle von Hosts (z. B. Maschinen, die Informationen bereitstellen) angefordert werden. In einem hostbasierten Vernetzungsparadigma, wie es etwa im Internetprotokoll (IP) verwendet wird, lokalisiert eine Vorrichtung einen Host und fordert Inhalt von dem Host an. Das Netzwerk versteht, wie Pakete basierend auf der in dem Paket spezifizierten Adresse zu routen (z. B. zu leiten) sind. Im Gegensatz dazu beinhaltet ICN keine Anforderung für eine bestimmte Maschine und verwendet keine Adressen. Stattdessen fordert eine Vorrichtung 1805 (z. B. Teilnehmer), um Inhalt zu erhalten, benannten Inhalt von dem Netzwerk selbst an. Die Inhaltsanforderung kann als ein Interesse bezeichnet und über ein Interessenpaket 1830 übertragen werden. Während das Interessenpaket Netzwerkvorrichtungen (z. B. Netzwerkelemente, Router, Switches, Hubs usw.) - wie etwa die Netzwerkelemente 1810, 1815 und 1820 - durchläuft, wird an jedem Netzwerkelement eine Aufzeichnung des Interesses gehalten, zum Beispiel in einer Tabelle anhängiger Interessen (Pending Interest Table, PIT). Somit hält das Netzwerkelement 1810 einen Eintrag in seiner PIT 1835 für das Interessenpaket 1830, das Netzwerkelement 1815 hält den Eintrag in seiner PIT, und das Netzwerkelement 1820 hält den Eintrag in seiner PIT.
  • Wenn eine Vorrichtung, wie etwa der Publisher 1840, angetroffen wird, die Inhalt aufweist, der mit dem Namen in dem Interessenpaket 1830 übereinstimmt, kann diese Vorrichtung 1840 ein Datenpaket 1845 als Antwort auf das Interessenpaket 1830 senden. Typischerweise wird das Datenpaket 1845 durch das Netzwerk zu der Quelle (z. B. Vorrichtung 1805) zurückverfolgt, indem den Spuren des Interessenpakets 1830 gefolgt wird, die in den Netzwerkelement-PITs verbleiben. Somit legt die PIT 1835 an jedem Netzwerkelement einen Pfad zurück zu dem Teilnehmer 1805 fest, dem das Datenpaket 1845 folgen soll.
  • Das Abgleichen der benannten Daten in einem ICN kann mehreren Strategien folgen. Im Allgemeinen werden die Daten hierarchisch benannt, wie etwa mit einer universellen Ressourcenkennung (URI). Zum Beispiel kann ein Video www.somedomain.com oder Videos oder v8675309 genannt werden. Hier kann die Hierarchie als der Publisher „www.somedomain.com“, eine Unterkategorie „Videos“ und die kanonische Identifikation „v8675309“ gesehen werden. Wenn ein Interesse 1830 das ICN durchläuft, werden ICN-Netzwerkelemente im Allgemeinen versuchen, dass der Name zu einem größten Grad übereinstimmt. Falls also ein ICN-Element ein gecachtes Element oder eine gecachte Route sowohl für „www.somedomain.com oder Videos“ als auch für „www.somedomain.com oder Videos oder v8675309“ aufweist, stimmt das ICN-Element mit letzterem für ein Interessenpaket 1830 überein, das „www.somedomain.com oder Videos oder v8675309“ spezifiziert. In einem Beispiel kann ein Ausdruck beim Abgleich durch die ICN-Vorrichtung verwendet werden. Zum Beispiel kann das Interessenpaket „www.somedomain.com oder Videos oder v8675*“ spezifizieren, wobei ,*' ein Platzhalter ist. Somit wird ein beliebiges gecachtes Element oder eine beliebige gecachte Route, die andere Daten außer dem Platzhalter beinhalten, übereinstimmend sein.
  • Der Gegenstandsabgleich beinhaltet das Abgleichen des Interesses 1830 mit Daten, die in dem ICN-Element gecacht sind. Falls also zum Beispiel die im Interesse 1830 genannten Daten 1845 in dem Netzwerkelement 1815 gecacht sind, dann wird das Netzwerkelement 1815 die Daten 1845 über das Netzwerkelement 1810 an den Teilnehmer 1805 zurückgeben. Falls die Daten 1845 jedoch nicht im Netzwerkelement 1815 gecacht sind, routet das Netzwerkelement 1815 das Interesse 1830 weiter (z. B. an das Netzwerkelement 1820). Um Routing zu ermöglichen, können die Netzwerkelemente eine Weiterleitungsinformationsbasis 1825 (FIB) verwenden, um benannte Daten mit einer Schnittstelle (z. B. physischer Port) für die Route abzugleichen. Dementsprechend arbeitet die FIB 1825 fast wie eine Routingtabelle in einer herkömmlichen Netzwerkvorrichtung.
  • In einem Beispiel können zusätzliche Metadaten an das Interessenpaket 1830, die gecachten Daten oder die Route angefügt werden (z. B. in der FIB 1825), um einen zusätzlichen Übereinstimmungsgrad bereitzustellen. Zum Beispiel kann der Datenname als „www.somedomain.com oder Videos oder v8675309“ spezifiziert sein, aber auch eine Versionsnummer - oder einen Zeitstempel, einen Zeitbereich, eine Bestätigung usw. - beinhalten. In diesem Beispiel kann das Interessenpaket 1830 den gewünschten Namen, die Versionsnummer oder den Versionsbereich spezifizieren. Der Abgleich kann dann Routen oder gecachte Daten lokalisieren, die mit dem Namen übereinstimmen, und den zusätzlichen Vergleich von Metadaten oder dergleichen durchführen, um zu einer endgültigen Entscheidung darüber zu gelangen, ob Daten oder eine Route mit dem Interessenpaket 1830 übereinstimmen, um jeweils mit dem Datenpaket 1845 auf das Interessenpaket 1830 zu antworten oder das Interessenpaket 1830 weiterzuleiten.
  • ICN weist gegenüber hostbasierter Vernetzung Vorteile auf, da die Datensegmente einzeln benannt werden. Dies ermöglicht aggressives Caching im gesamten Netzwerk, da ein Netzwerkelement als Antwort auf ein Interesse 1830 ein Datenpaket 1830 so einfach wie ein ursprünglicher Autor 1840 bereitstellen kann. Dementsprechend ist es weniger wahrscheinlich, dass dasselbe Segment des Netzwerks Duplikate derselben Daten übertragen wird, die durch unterschiedliche Vorrichtungen angefordert werden.
  • Feingranulare Verschlüsselung ist ein anderes Merkmal vieler ICN-Netzwerke. Ein typisches Datenpaket 1845 beinhaltet einen Namen für die Daten, der mit dem Namen in dem Interessenpaket 1830 übereinstimmt. Ferner beinhaltet das Datenpaket 1845 die angeforderten Daten und kann zusätzliche Informationen zum Filtern ähnlich benannter Daten (z. B. nach Erzeugungszeit, Ablaufzeit, Version usw.) beinhalten. Um bösartige Entitäten zu behandeln, die falsche Informationen unter demselben Namen bereitstellen, kann das Datenpaket 1845 auch seine Inhalte mit einem Publisherschlüssel verschlüsseln oder einen kryptografischen Hash der Daten und des Namens bereitstellen. Somit ermöglicht die Kenntnis des Schlüssels (z. B. aus einem Zertifikat eines erwarteten Publishers 1840) dem Empfänger, festzustellen, ob die Daten von diesem Publisher 1840 stammen. Diese Technik ermöglicht auch das aggressive Caching der Datenpakete 1845 im gesamten Netzwerk, da jedes Datenpaket 1845 in sich geschlossen und sicher ist. Im Gegensatz dazu beruhen viele hostbasierte Netzwerke auf dem Verschlüsseln einer Verbindung zwischen zwei Hosts, um Kommunikationen zu sichern. Dies kann die Latenzen erhöhen, während Verbindungen aufgebaut werden, und verhindert ein Daten-Caching durch Verbergen der Daten gegenüber den Netzwerkelementen.
  • Beispielhafte ICN-Netzwerke beinhalten inhaltszentrische Vernetzung (CCN), wie in den Internet Engineering Task Force (IETF)-Entwurfsspezifikationen für CCNx 0.x und CCN 1.x spezifiziert ist, und benannte Datenvernetzung (NDN), wie in dem technischen NDN-Bericht DND-0001 spezifiziert ist.
  • 19 veranschaulicht ein Blockdiagramm einer beispielhaften Maschine 1900, auf der eine beliebige oder mehrere der hierin besprochenen Techniken (z. B. Methodologien) durchgeführt werden können. Beispiele, wie hierin beschrieben, können Logik oder eine Reihe von Komponenten oder Mechanismen in der Maschine 1900 beinhalten oder durch diese funktionieren. Eine Schaltungsanordnung (z. B. Verarbeitungsschaltungsanordnung) ist eine Sammlung von Schaltungen, die in dinghaften Entitäten der Maschine 1900 implementiert sind, die Hardware (z. B. einfache Schaltungen, Gatter, Logik usw.) beinhalten. Die Zugehörigkeit zu einer Schaltungsanordnung kann im zeitlichen Verlauf flexibel sein. Schaltungsanordnungen beinhalten Mitglieder, die bei deren Ausführung allein oder in Kombination spezifizierte Operation durchführen können. In einem Beispiel kann Hardware der Schaltungsanordnung unveränderbar gestaltet sein, um eine spezifische Operation auszuführen (z. B. festverdrahtet). In einem Beispiel kann die Hardware der Schaltungsanordnung variabel verbundene physische Komponenten (z. B. Ausführungseinheiten, Transistoren, einfache Schaltungen usw.) beinhalten, einschließlich eines maschinenlesbaren Mediums, das physisch modifiziert wird (z. B. magnetische, elektrische, bewegbare Platzierung von Partikeln mit invarianter Masse usw.), um Anweisungen der spezifischen Operation zu codieren. Durch das Verbinden der physischen Komponenten werden die zugrundeliegenden elektrischen Eigenschaften eines Hardwarebestandteils geändert, zum Beispiel von einem Isolator zu einem Leiter oder umgekehrt. Die Anweisungen ermöglichen eingebetteter Hardware (z. B. den Ausführungseinheiten oder einem Lademechanismus), Mitglieder der Schaltungsanordnung in Hardware über die variablen Verbindungen zu erzeugen, um im Betrieb Abschnitte der spezifischen Operation auszuführen. Dementsprechend sind die maschinenlesbaren Medienelemente in einem Beispiel Teil der Schaltungsanordnung oder sind kommunikativ mit den anderen Komponenten der Schaltungsanordnung gekoppelt, wenn sich die Vorrichtung in Betrieb befindet. In einem Beispiel können beliebige der physischen Komponenten in mehr als einem Mitglied mehr als einer Schaltungsanordnung verwendet werden. Im Betrieb können zum Beispiel Ausführungseinheiten in einer ersten Schaltung einer ersten Schaltungsanordnung zu einem Zeitpunkt verwendet und durch eine zweite Schaltung in der ersten Schaltungsanordnung oder durch eine dritte Schaltung in einer zweiten Schaltungsanordnung zu einer anderen Zeit wiederverwendet werden. Zusätzliche Beispiele für diese Komponenten bezüglich der Maschine 1900 folgen.
  • In alternativen Ausführungsformen kann die Maschine 1900 als eine eigenständige Vorrichtung arbeiten oder mit anderen Maschinen verbunden (z. B. vernetzt) sein. Bei einem vernetzten Einsatz kann die Maschine 1900 in der Eigenschaft einer Servermaschine, einer Client-Maschine oder beider in Server-Client-Netzwerkumgebungen arbeiten. In einem Beispiel kann die Maschine 1900 als eine Peer-Maschine in einer Peer-to-Peer- (P2P-) (oder einer anderen verteilten) Netzwerkumgebung fungieren. Die Maschine 1900 kann ein Personal Computer (PC), ein Tablet-PC, eine Set-Top-Box (STB), ein Personal Digital Assistant (PDA), ein Mobiltelefon, ein Web-Gerät, ein Netzwerkrouter, ein Switch oder eine Bridge oder eine beliebige Maschine sein, die zum Ausführen von Anweisungen (sequenziell oder anders), die Handlungen spezifizieren, die durch diese Maschine durchgeführt werden sollen, in der Lage ist. Obwohl nur eine einzige Maschine veranschaulicht ist, ist der Begriff „Maschine“ ferner auch so zu verstehen, dass er eine beliebige Sammlung von Maschinen beinhaltet, die einzeln oder gemeinsam einen Satz (oder mehrere Sätze) von Anweisungen ausführen, um eine oder mehrere der hierin besprochenen Methodologien durchzuführen, wie etwa Cloud-Computing, Software as a Service (SaaS), andere Computer-Clusterkonfigurationen.
  • Die Maschine (z. B. Computersystem) 1900 kann einen Hardwareprozessor 1902 (z. B. eine Zentralverarbeitungseinheit (CPU), eine Grafikverarbeitungseinheit (GPU), einen Hardwareprozessorkern oder eine beliebige Kombination davon), einen Hauptspeicher 1904, einen statischen Speicher (z. B. Speicher oder Speicherung für Firmware, Mikrocode, ein Basic Input/Output System (BIOS), eine Unified Extensible Firmware Interface (UEFI) usw.) 1906 und einen Massenspeicher 1908 (z. B. Festplatten, Bandlaufwerke, Flash-Speicher oder andere Blockvorrichtungen) beinhalten, von denen einige oder alle über eine Verbindung (z. B. Bus) 1930 miteinander kommunizieren können. Die Maschine 1900 kann ferner eine Anzeigeeinheit 1910, eine alphanumerische Eingabevorrichtung 1912 (z. B. eine Tastatur) und eine Benutzeroberflächen (UI)-Navigationsvorrichtung 1914 (z. B. eine Maus) beinhalten. In einem Beispiel können die Anzeigeeinheit 1910, die Eingabevorrichtung 1912 und die UI-Navigationsvorrichtung 1914 eine Touchscreen-Anzeige sein. Die Maschine 1900 kann zusätzlich eine Speicherungsvorrichtung (z. B. eine Laufwerkeinheit) 1908, eine Signalerzeugungsvorrichtung 1918 (z. B. einen Lautsprecher), eine Netzwerkschnittstellenvorrichtung 1920 und einen oder mehrere Sensoren 1916, wie etwa einen Sensor eines globalen Positionsbestimmungssystems (Global Positioning System, GPS), einen Kompass, einen Beschleunigungsmesser oder einen anderen Sensor, beinhalten. Die Maschine 1900 kann eine Ausgangssteuerung 1928, wie etwa eine serielle (z. B. Universal Serial Bus (USB), eine parallele oder eine andere drahtgebundene oder drahtlose (z. B. Infrarot (IR), Nahfeldkommunikation (NFC) usw.) Verbindung beinhalten, um mit einer oder mehreren Peripherievorrichtungen zu kommunizieren oder sie zu steuern (z. B. einen Drucker, einen Kartenleser usw.).
  • Register des Prozessors 1902, des Hauptspeichers 1904, des statischen Speichers 1906 oder des Massenspeichers 1908 können ein maschinenlesbares Medium 1922 sein oder beinhalten, auf dem ein oder mehrere Sätze von Datenstrukturen oder Anweisungen 1924 (z. B. Software) gespeichert sind, die eine beliebige oder mehrere der hierin beschriebenen Techniken oder Funktionen verkörpern oder von diesen genutzt werden. Die Anweisungen 1924 können sich auch vollständig oder zumindest teilweise innerhalb beliebiger Register des Prozessors 1902, des Hauptspeichers 1904, des statischen Speichers 1906 oder des Massenspeichers 1908 während ihrer Ausführung durch die Maschine 1900 befinden. In einem Beispiel kann einer von oder eine beliebige Kombination des Hardwareprozessors 1902, des Hauptspeichers 1904, des statischen Speichers 1906 oder des Massenspeichers 1908 die maschinenlesbaren Medien 1922 bilden. Obwohl das maschinenlesbare Medium 1922 als ein einzelnes Medium veranschaulicht ist, kann der Begriff „maschinenlesbares Medium“ ein einzelnes Medium oder mehrere Medien beinhalten (z. B. eine zentrale oder verteilte Datenbank und/oder assoziierte Caches und Server), die dazu ausgelegt sind, die eine oder die mehreren Anweisungen 1924 zu speichern.
  • Der Begriff „maschinenlesbares Medium“ kann ein beliebiges Medium beinhalten, das zum Speichern, Codieren oder Transportieren von Anweisungen zur Ausführung durch die Maschine 1900 imstande ist und das die Maschine 1900 veranlasst, eine oder mehrere beliebige der Techniken der vorliegenden Offenbarung durchzuführen, oder das zum Speichern, Codieren und Transportieren von Datenstrukturen imstande ist, die durch solche Anweisungen verwendet werden oder damit assoziiert sind. Nicht beschränkende Beispiele für maschinenlesbare Medien können Festkörperspeicher, optische Medien, magnetische Medien und Signale (z. B. Funkfrequenzsignale, andere photonenbasierte Signale, Schallsignale usw.) beinhalten. In einem Beispiel umfasst ein nichtflüchtiges maschinenlesbares Medium ein maschinenlesbares Medium mit mehreren Partikeln mit invarianter Masse (z. B. Restmasse), und sie sind somit Materiezusammensetzungen. Dementsprechend sind nichtflüchtige maschinenlesbare Medien maschinenlesbare Medien, die keine sich ausbreitenden transitorischen Signale beinhalten. Spezifische Beispiele für nichtflüchtige maschinenlesbare Medien können beinhalten: nichtflüchtigen Speicher, wie etwa Halbleiterspeichervorrichtungen (z. B. elektrisch programmierbarer Nur-Lese-Speicher (EPROM), elektrisch löschbarer programmierbarer Nur-Lese-Speicher (EEPROM)) und Flash-Speichervorrichtungen; Magnetplatten, wie etwa interne Festplatten und austauschbare Platten; magnetooptische Platten und CD-ROM- und DVD-ROM-Disks.
  • In einem Beispiel können auf dem maschinenlesbaren Medium 1922 gespeicherte oder anderweitig bereitgestellte Informationen die Anweisungen 1924 repräsentieren, wie etwa die Anweisungen 1924 selbst oder ein Format, aus dem die Anweisungen 1924 abgeleitet werden können. Dieses Format, aus dem die Anweisungen 1924 abgeleitet werden können, kann Quellcode, codierte Anweisungen (z. B. in komprimierter oder verschlüsselter Form), verpackte Anweisungen (z. B. in mehrere Pakete aufgeteilt) oder dergleichen beinhalten. Die die Anweisungen 1924 repräsentierenden Informationen im maschinenlesbaren Medium 1922 können durch eine Verarbeitungsschaltungsanordnung in die Anweisungen zum Implementieren beliebiger der hierin besprochenen Operationen verarbeitet werden. Das Ableiten der Anweisungen 1924 aus den Informationen (z. B. Verarbeitung durch die Verarbeitungsschaltungsanordnung) kann zum Beispiel beinhalten: Kompilieren (z. B. aus Quellcode, Objektcode usw.), Interpretieren, Laden, Organisieren (z. B. dynamisches oder statisches Verknüpfen), Codieren, Decodieren, Verschlüsseln, Entschlüsseln, Verpacken, Entpacken oder anderweitiges Manipulieren der Informationen in die Anweisungen 1924.
  • In einem Beispiel kann die Ableitung der Anweisungen 1924 Assemblieren, Kompilieren oder Interpretieren der Informationen (z. B. durch die Verarbeitungsschaltungsanordnung) beinhalten, um die Anweisungen 1924 aus einem Zwischenformat oder vorverarbeiteten Format zu erzeugen, das durch das maschinenlesbare Medium 1922 bereitgestellt wird. Wenn die Informationen in mehreren Teilen bereitgestellt werden, können sie kombiniert, entpackt und modifiziert werden, um die Anweisungen 1924 zu erzeugen. Die Informationen können sich zum Beispiel in mehreren komprimierten Quellcodepaketen (oder Objektcode oder ausführbarem Binär-Code usw.) auf einem oder mehreren entfernten Servern befinden. Die Quellcodepakete können verschlüsselt werden, wenn sie über ein Netzwerk übertragen werden, und können an einer lokalen Maschine falls notwendig entschlüsselt, dekomprimiert, zusammengesetzt (z. B. verknüpft) und kompiliert oder interpretiert werden (z. B. in eine Bibliothek, eigenständige ausführbare Datei usw.) und durch die lokale Maschine ausgeführt werden.
  • Die Anweisungen 1924 können ferner über ein Kommunikationsnetzwerk 1926 unter Verwendung eines Übertragungsmediums über die Netzwerkschnittstellenvorrichtung 1920 unter Verwendung eines beliebigen einer Reihe von Übertragungsprotokollen (z. B. Frame Relay, Internet Protocol (IP), Transmission Control Protocol (TCP), User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP) usw.) übertragen oder empfangen werden. Beispielhafte Kommunikationsnetzwerke können unter anderem ein Local Area Network (LAN), ein Weitverkehrsnetzwerk (WAN), ein Paketdatennetzwerk (z. B. das Internet), LoRa/LoRaWAN oder Satellitenkommunikationsnetzwerke, Mobiltelefonnetzwerke (z. B. zellulare Netzwerke, wie etwa jene, die 3G, 4G LTE/LTE-A oder 5G-Standards erfüllen), einfache Telefondienst (Plain Old Telephone, POTS)-Netzwerke und drahtlose Datennetzwerke (z. B. die Familie der Institute of Electrical and Electronics Engineers (IEEE) 802.11-Standards, bekannt als Wi-Fi®, die Familie der IEEE 802.16-Standards, die Familie der IEEE 802.15.4-Standards, Peer-to-Peer (P2P)-Netzwerke beinhalten. In einem Beispiel kann die Netzwerkschnittstellenvorrichtung 1920 eine oder mehrere physische Buchsen (z. B. Ethernet-, Koaxial- oder Telefonbuchsen) oder eine oder mehrere Antennen zur Verbindung mit dem Kommunikationsnetzwerk 1926 beinhalten. In einem Beispiel kann die Netzwerkschnittstellenvorrichtung 1920 mehrere Antennen beinhalten, um drahtlos unter Verwendung zumindest einer von folgenden Techniken zu kommunizieren, Single-Input Multiple-Output (SIMO), Multiple-Input Multiple-Output (MIMO) oder Multiple-Input Single-Output (MISO). Der Begriff „Übertragungsmedium“ ist so aufzufassen, dass er ein beliebiges nicht dinghaftes Medium beinhaltet, das zum Speichern, Codieren oder Ausführen von Anweisungen zur Ausführung durch die Maschine 1900 imstande ist, und beinhaltet digitale oder analoge Kommunikationssignale oder ein anderes nicht dinghaftes Medium, um die Kommunikation solcher Software zu ermöglichen. Ein Übertragungsmedium ist ein maschinenlesbares Medium.
  • 19 veranschaulicht ein Blockdiagramm einer beispielhaften Maschine 1900, auf der eine beliebige oder mehrere der hierin besprochenen Techniken (z. B. Methodologien) durchgeführt werden können. Beispiele, wie hierin beschrieben, können Logik oder eine Reihe von Komponenten oder Mechanismen in der Maschine 1900 beinhalten oder durch diese funktionieren. Eine Schaltungsanordnung (z. B. Verarbeitungsschaltungsanordnung) ist eine Sammlung von Schaltungen, die in dinghaften Entitäten der Maschine 1900 implementiert sind, die Hardware (z. B. einfache Schaltungen, Gatter, Logik usw.) beinhalten. Die Zugehörigkeit zu einer Schaltungsanordnung kann im zeitlichen Verlauf flexibel sein. Schaltungsanordnungen beinhalten Mitglieder, die bei deren Ausführung allein oder in Kombination spezifizierte Operation durchführen können. In einem Beispiel kann Hardware der Schaltungsanordnung unveränderbar gestaltet sein, um eine spezifische Operation auszuführen (z. B. festverdrahtet). In einem Beispiel kann die Hardware der Schaltungsanordnung variabel verbundene physische Komponenten (z. B. Ausführungseinheiten, Transistoren, einfache Schaltungen usw.) beinhalten, einschließlich eines maschinenlesbaren Mediums, das physisch modifiziert wird (z. B. magnetische, elektrische, bewegbare Platzierung von Partikeln mit invarianter Masse usw.), um Anweisungen der spezifischen Operation zu codieren. Durch das Verbinden der physischen Komponenten werden die zugrundeliegenden elektrischen Eigenschaften eines Hardwarebestandteils geändert, zum Beispiel von einem Isolator zu einem Leiter oder umgekehrt. Die Anweisungen ermöglichen eingebetteter Hardware (z. B. den Ausführungseinheiten oder einem Lademechanismus), Mitglieder der Schaltungsanordnung in Hardware über die variablen Verbindungen zu erzeugen, um im Betrieb Abschnitte der spezifischen Operation auszuführen. Dementsprechend sind die maschinenlesbaren Medienelemente in einem Beispiel Teil der Schaltungsanordnung oder sind kommunikativ mit den anderen Komponenten der Schaltungsanordnung gekoppelt, wenn sich die Vorrichtung in Betrieb befindet. In einem Beispiel können beliebige der physischen Komponenten in mehr als einem Mitglied mehr als einer Schaltungsanordnung verwendet werden. Im Betrieb können zum Beispiel Ausführungseinheiten in einer ersten Schaltung einer ersten Schaltungsanordnung zu einem Zeitpunkt verwendet und durch eine zweite Schaltung in der ersten Schaltungsanordnung oder durch eine dritte Schaltung in einer zweiten Schaltungsanordnung zu einer anderen Zeit wiederverwendet werden. Zusätzliche Beispiele für diese Komponenten bezüglich der Maschine 1900 folgen.
  • In alternativen Ausführungsformen kann die Maschine 1900 als eine eigenständige Vorrichtung arbeiten oder mit anderen Maschinen verbunden (z. B. vernetzt) sein. Bei einem vernetzten Einsatz kann die Maschine 1900 in der Eigenschaft einer Servermaschine, einer Client-Maschine oder beider in Server-Client-Netzwerkumgebungen arbeiten. In einem Beispiel kann die Maschine 1900 als eine Peer-Maschine in einer Peer-to-Peer- (P2P-) (oder einer anderen verteilten) Netzwerkumgebung fungieren. Die Maschine 1900 kann ein Personal Computer (PC), ein Tablet-PC, eine Set-Top-Box (STB), ein Personal Digital Assistant (PDA), ein Mobiltelefon, ein Web-Gerät, ein Netzwerkrouter, ein Switch oder eine Bridge oder eine beliebige Maschine sein, die zum Ausführen von Anweisungen (sequenziell oder anders), die Handlungen spezifizieren, die durch diese Maschine durchgeführt werden sollen, in der Lage ist. Obwohl nur eine einzige Maschine veranschaulicht ist, ist der Begriff „Maschine“ ferner auch so zu verstehen, dass er eine beliebige Sammlung von Maschinen beinhaltet, die einzeln oder gemeinsam einen Satz (oder mehrere Sätze) von Anweisungen ausführen, um eine oder mehrere der hierin besprochenen Methodologien durchzuführen, wie etwa Cloud-Computing, Software as a Service (SaaS), andere Computer-Clusterkonfigurationen.
  • Die Maschine (z. B. Computersystem) 1900 kann einen Hardwareprozessor 1902 (z. B. eine Zentralverarbeitungseinheit (CPU), eine Grafikverarbeitungseinheit (GPU), einen Hardwareprozessorkern oder eine beliebige Kombination davon), einen Hauptspeicher 1904, einen statischen Speicher (z. B. Speicher oder Speicherung für Firmware, Mikrocode, ein Basic Input/Output System (BIOS), eine Unified Extensible Firmware Interface (UEFI) usw.) 1906 und einen Massenspeicher 1908 (z. B. Festplatten, Bandlaufwerke, Flash-Speicher oder andere Blockvorrichtungen) beinhalten, von denen einige oder alle über eine Verbindung (z. B. Bus) 1930 miteinander kommunizieren können. Die Maschine 1900 kann ferner eine Anzeigeeinheit 1910, eine alphanumerische Eingabevorrichtung 1912 (z. B. eine Tastatur) und eine Benutzeroberflächen (UI)-Navigationsvorrichtung 1914 (z. B. eine Maus) beinhalten. In einem Beispiel können die Anzeigeeinheit 1910, die Eingabevorrichtung 1912 und die UI-Navigationsvorrichtung 1914 eine Touchscreen-Anzeige sein. Die Maschine 1900 kann zusätzlich eine Speicherungsvorrichtung (z. B. eine Laufwerkeinheit) 1908, eine Signalerzeugungsvorrichtung 1918 (z. B. einen Lautsprecher), eine Netzwerkschnittstellenvorrichtung 1920 und einen oder mehrere Sensoren 1916, wie etwa einen Sensor eines globalen Positionsbestimmungssystems (Global Positioning System, GPS), einen Kompass, einen Beschleunigungsmesser oder einen anderen Sensor, beinhalten. Die Maschine 1900 kann eine Ausgangssteuerung 1928, wie etwa eine serielle (z. B. Universal Serial Bus (USB), eine parallele oder eine andere drahtgebundene oder drahtlose (z. B. Infrarot (IR), Nahfeldkommunikation (NFC) usw.) Verbindung beinhalten, um mit einer oder mehreren Peripherievorrichtungen zu kommunizieren oder sie zu steuern (z. B. einen Drucker, einen Kartenleser usw.).
  • Register des Prozessors 1902, des Hauptspeichers 1904, des statischen Speichers 1906 oder des Massenspeichers 1908 können ein maschinenlesbares Medium 1922 sein oder beinhalten, auf dem ein oder mehrere Sätze von Datenstrukturen oder Anweisungen 1924 (z. B. Software) gespeichert sind, die eine beliebige oder mehrere der hierin beschriebenen Techniken oder Funktionen verkörpern oder von diesen genutzt werden. Die Anweisungen 1924 können sich auch vollständig oder zumindest teilweise innerhalb beliebiger Register des Prozessors 1902, des Hauptspeichers 1904, des statischen Speichers 1906 oder des Massenspeichers 1908 während ihrer Ausführung durch die Maschine 1900 befinden. In einem Beispiel kann einer von oder eine beliebige Kombination des Hardwareprozessors 1902, des Hauptspeichers 1904, des statischen Speichers 1906 oder des Massenspeichers 1908 die maschinenlesbaren Medien 1922 bilden. Obwohl das maschinenlesbare Medium 1922 als ein einzelnes Medium veranschaulicht ist, kann der Begriff „maschinenlesbares Medium“ ein einzelnes Medium oder mehrere Medien beinhalten (z. B. eine zentrale oder verteilte Datenbank und/oder assoziierte Caches und Server), die dazu ausgelegt sind, die eine oder die mehreren Anweisungen 1924 zu speichern.
  • Der Begriff „maschinenlesbares Medium“ kann ein beliebiges Medium beinhalten, das zum Speichern, Codieren oder Transportieren von Anweisungen zur Ausführung durch die Maschine 1900 imstande ist und das die Maschine 1900 veranlasst, eine oder mehrere beliebige der Techniken der vorliegenden Offenbarung durchzuführen, oder das zum Speichern, Codieren und Transportieren von Datenstrukturen imstande ist, die durch solche Anweisungen verwendet werden oder damit assoziiert sind. Nicht beschränkende Beispiele für maschinenlesbare Medien können Festkörperspeicher, optische Medien, magnetische Medien und Signale (z. B. Funkfrequenzsignale, andere photonenbasierte Signale, Schallsignale usw.) beinhalten. In einem Beispiel umfasst ein nichtflüchtiges maschinenlesbares Medium ein maschinenlesbares Medium mit mehreren Partikeln mit invarianter Masse (z. B. Restmasse), und sie sind somit Materiezusammensetzungen. Dementsprechend sind nichtflüchtige maschinenlesbare Medien maschinenlesbare Medien, die keine sich ausbreitenden transitorischen Signale beinhalten. Spezifische Beispiele für nichtflüchtige maschinenlesbare Medien können beinhalten: nichtflüchtigen Speicher, wie etwa Halbleiterspeichervorrichtungen (z. B. elektrisch programmierbarer Nur-Lese-Speicher (EPROM), elektrisch löschbarer programmierbarer Nur-Lese-Speicher (EEPROM)) und Flash-Speichervorrichtungen; Magnetplatten, wie etwa interne Festplatten und austauschbare Platten; magnetooptische Platten und CD-ROM- und DVD-ROM-Disks.
  • In einem Beispiel können auf dem maschinenlesbaren Medium 1922 gespeicherte oder anderweitig bereitgestellte Informationen die Anweisungen 1924 repräsentieren, wie etwa die Anweisungen 1924 selbst oder ein Format, aus dem die Anweisungen 1924 abgeleitet werden können. Dieses Format, aus dem die Anweisungen 1924 abgeleitet werden können, kann Quellcode, codierte Anweisungen (z. B. in komprimierter oder verschlüsselter Form), verpackte Anweisungen (z. B. in mehrere Pakete aufgeteilt) oder dergleichen beinhalten. Die die Anweisungen 1924 repräsentierenden Informationen im maschinenlesbaren Medium 1922 können durch eine Verarbeitungsschaltungsanordnung in die Anweisungen zum Implementieren beliebiger der hierin besprochenen Operationen verarbeitet werden. Das Ableiten der Anweisungen 1924 aus den Informationen (z. B. Verarbeitung durch die Verarbeitungsschaltungsanordnung) kann zum Beispiel beinhalten: Kompilieren (z. B. aus Quellcode, Objektcode usw.), Interpretieren, Laden, Organisieren (z. B. dynamisches oder statisches Verknüpfen), Codieren, Decodieren, Verschlüsseln, Entschlüsseln, Verpacken, Entpacken oder anderweitiges Manipulieren der Informationen in die Anweisungen 1924.
  • In einem Beispiel kann die Ableitung der Anweisungen 1924 Assemblieren, Kompilieren oder Interpretieren der Informationen (z. B. durch die Verarbeitungsschaltungsanordnung) beinhalten, um die Anweisungen 1924 aus einem Zwischenformat oder vorverarbeiteten Format zu erzeugen, das durch das maschinenlesbare Medium 1922 bereitgestellt wird. Wenn die Informationen in mehreren Teilen bereitgestellt werden, können sie kombiniert, entpackt und modifiziert werden, um die Anweisungen 1924 zu erzeugen. Die Informationen können sich zum Beispiel in mehreren komprimierten Quellcodepaketen (oder Objektcode oder ausführbarem Binär-Code usw.) auf einem oder mehreren entfernten Servern befinden. Die Quellcodepakete können verschlüsselt werden, wenn sie über ein Netzwerk übertragen werden, und können an einer lokalen Maschine falls notwendig entschlüsselt, dekomprimiert, zusammengesetzt (z. B. verknüpft) und kompiliert oder interpretiert werden (z. B. in eine Bibliothek, eigenständige ausführbare Datei usw.) und durch die lokale Maschine ausgeführt werden.
  • Die Anweisungen 1924 können ferner über ein Kommunikationsnetzwerk 1926 unter Verwendung eines Übertragungsmediums über die Netzwerkschnittstellenvorrichtung 1920 unter Verwendung eines beliebigen einer Reihe von Übertragungsprotokollen (z. B. Frame Relay, Internet Protocol (IP), Transmission Control Protocol (TCP), User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP) usw.) übertragen oder empfangen werden. Beispielhafte Kommunikationsnetzwerke können unter anderem ein Local Area Network (LAN), ein Weitverkehrsnetzwerk (WAN), ein Paketdatennetzwerk (z. B. das Internet), LoRa/LoRaWAN oder Satellitenkommunikationsnetzwerke, Mobiltelefonnetzwerke (z. B. zellulare Netzwerke, wie etwa jene, die 3G, 4G LTE/LTE-A oder 5G-Standards erfüllen), einfache Telefondienst (Plain Old Telephone, POTS)-Netzwerke und drahtlose Datennetzwerke (z. B. die Familie der Institute of Electrical and Electronics Engineers (IEEE) 802.11-Standards, bekannt als Wi-Fi®, die Familie der IEEE 802.15.4-Standards, Peer-to-Peer (P2P)-Netzwerke beinhalten. In einem Beispiel kann die Netzwerkschnittstellenvorrichtung 1920 eine oder mehrere physische Buchsen (z. B. Ethernet-, Koaxial- oder Telefonbuchsen) oder eine oder mehrere Antennen zur Verbindung mit dem Kommunikationsnetzwerk 1926 beinhalten. In einem Beispiel kann die Netzwerkschnittstellenvorrichtung 1920 mehrere Antennen beinhalten, um drahtlos unter Verwendung zumindest einer von folgenden Techniken zu kommunizieren, Single-Input Multiple-Output (SIMO), Multiple-Input Multiple-Output (MIMO) oder Multiple-Input Single-Output (MISO). Der Begriff „Übertragungsmedium“ ist so aufzufassen, dass er ein beliebiges nicht dinghaftes Medium beinhaltet, das zum Speichern, Codieren oder Ausführen von Anweisungen zur Ausführung durch die Maschine 1900 imstande ist, und beinhaltet digitale oder analoge Kommunikationssignale oder ein anderes nicht dinghaftes Medium, um die Kommunikation solcher Software zu ermöglichen. Ein Übertragungsmedium ist ein maschinenlesbares Medium.
  • Zusätzliche Anmerkungen und Beispiele
  • Beispiel 1 ist ein informationszentrischer Netzwerk (ICN)-Knoten zur verteilten ICN-Pfadauswahl, wobei der ICN-Knoten Folgendes umfasst: einen Satz von Netzwerkschnittstellen, und eine Verarbeitungsschaltungsanordnung, die zu Folgendem ausgelegt ist: Übertragen, über den Satz von Netzwerkschnittstellen, einer Sondierungsnachricht an andere ICN-Knoten; Empfangen, über den Satz von Netzwerkschnittstellen, einer Antwort auf die Sondierungsnachricht; Ableiten einer Pfadstärkenmetrik aus der Antwort; Empfangen, über den Satz von Netzwerkschnittstellen, eines Entdeckungspakets; und Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket.
  • In Beispiel 2 beinhaltet der Gegenstand des Beispiels 1, dass, um die Pfadstärkenmetrik abzuleiten, die Verarbeitungsschaltungsanordnung zu Folgendem ausgelegt ist: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort.
  • In Beispiel 3 beinhaltet der Gegenstand des Beispiels 2, dass, um die Übertragungserfolgswahrscheinlichkeitsmetrik zu berechnen, die Verarbeitungsschaltungsanordnung zu Folgendem ausgelegt ist: Mitteln der Anzahlen erfolgreicher Übertragungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  • In Beispiel 4 beinhaltet der Gegenstand des Beispiels 3, dass die Übertragungserfolgswahrscheinlichkeitsmetrik einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  • In Beispiel 5 beinhaltet der Gegenstand der Beispiele 3 - 4, dass das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  • In Beispiel 6 beinhaltet der Gegenstand der Beispiele 1 - 5, dass zum Ableiten der Pfadstärkenmetrik die Verarbeitungsschaltungsanordnung zu Folgendem ausgelegt ist: Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort.
  • In Beispiel 7 beinhaltet der Gegenstand des Beispiels 6, dass, um die Metrik der erwarteten maximalen Übertragungsrate zu berechnen, die Verarbeitungsschaltungsanordnung zu Folgendem ausgelegt ist: Mitteln von Kanalrealisierungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  • In Beispiel 8 beinhaltet der Gegenstand des Beispiels 7, dass die Metrik der erwarteten maximalen Übertragungsrate einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  • In Beispiel 9 beinhaltet der Gegenstand der Beispiele 7 - 8, dass das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  • In Beispiel 10 beinhaltet der Gegenstand der Beispiele 1-9, dass zum Ableiten der Pfadstärkenmetrik die Verarbeitungsschaltungsanordnung zu Folgendem ausgelegt ist: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort; Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort; und Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate, um die Pfadstärkenmetrik zu erzeugen.
  • In Beispiel 11 beinhaltet der Gegenstand des Beispiels 10, dass, um die Übertragungserfolgswahrscheinlichkeitsmetrik und die Metrik der erwarteten maximalen Übertragungsrate zu kombinieren, die Verarbeitungsschaltungsanordnung zu Folgendem ausgelegt ist: Verwenden einer einfachen additiven Gewichtung (SAW).
  • In Beispiel 12 beinhaltet der Gegenstand der Beispiele 1 - 11, dass, um die Pfadstärkenmetrik zu dem Entdeckungspaket hinzuzufügen, die Verarbeitungsschaltungsanordnung zu Folgendem ausgelegt ist: Extrahieren eines Pfadstärkenwerts aus dem Entdeckungspaket; Hinzufügen der Pfadstärkenmetrik zu dem Pfadstärkenwert, um einen modifizierten Pfadstärkenwert zu erzeugen; und Ersetzen des Pfadstärkenwerts in dem Entdeckungspaket durch den modifizierten Pfadstärkenwert.
  • Beispiel 13 ist ein Verfahren zur verteilten Pfadauswahl in informationszentrischen Netzwerken (ICN), wobei das Verfahren Folgendes umfasst: Übertragen, durch einen ICN-Knoten, einer Sondierungsnachricht an andere ICN-Knoten; Empfangen, durch den ICN-Knoten, einer Antwort auf die Sondierungsnachricht; Ableiten einer Pfadstärkenmetrik aus der Antwort; Empfangen eines Entdeckungspakets; und Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket.
  • In Beispiel 14 beinhaltet der Gegenstand des Beispiels 13, dass das Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort.
  • In Beispiel 15 beinhaltet der Gegenstand des Beispiels 14, dass das Berechnen der Übertragungserfolgswahrscheinlichkeitsmetrik Folgendes beinhaltet: Mitteln der Anzahlen erfolgreicher Übertragungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  • In Beispiel 16 beinhaltet der Gegenstand des Beispiels 15, dass die Übertragungserfolgswahrscheinlichkeitsmetrik einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  • In Beispiel 17 beinhaltet der Gegenstand der Beispiele 15 - 16, dass das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  • In Beispiel 18 beinhaltet der Gegenstand der Beispiele 13 - 17, dass das Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort.
  • In Beispiel 19 beinhaltet der Gegenstand des Beispiels 18, dass das Berechnen der Metrik der erwarteten maximalen Übertragungsrate Folgendes beinhaltet: Mitteln von Kanalrealisierungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  • In Beispiel 20 beinhaltet der Gegenstand des Beispiels 19, dass die Metrik der erwarteten maximalen Übertragungsrate einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  • In Beispiel 21 beinhaltet der Gegenstand der Beispiele 19 - 20, dass das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  • In Beispiel 22 beinhaltet der Gegenstand der Beispiele 13 - 21, dass das Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort; Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort; und Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate, um die Pfadstärkenmetrik zu erzeugen.
  • In Beispiel 23 beinhaltet der Gegenstand des Beispiels 22, dass das Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate Folgendes beinhaltet: Verwenden einer einfachen additiven Gewichtung (SAW).
  • In Beispiel 24 beinhaltet der Gegenstand der Beispiele 13 bis 23, dass das Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket Folgendes beinhaltet: Extrahieren eines Pfadstärkenwerts aus dem Entdeckungspaket; Hinzufügen der Pfadstärkenmetrik zu dem Pfadstärkenwert, um einen modifizierten Pfadstärkenwert zu erzeugen; und Ersetzen des Pfadstärkenwerts in dem Entdeckungspaket durch den modifizierten Pfadstärkenwert.
  • Beispiel 25 ist mindestens ein maschinenlesbares Medium, das Anweisungen für verteilte Pfadauswahl in informationszentrischen Netzwerken (ICN) beinhaltet, wobei die Anweisungen, wenn sie durch eine Verarbeitungsschaltungsanordnung ausgeführt werden, bewirken, dass die Verarbeitungsschaltungsanordnung Operationen durchführt, die Folgendes umfassen: Übertragen, durch einen ICN-Knoten, einer Sondierungsnachricht an andere ICN-Knoten; Empfangen, durch den ICN-Knoten, einer Antwort auf die Sondierungsnachricht; Ableiten einer Pfadstärkenmetrik aus der Antwort; Empfangen eines Entdeckungspakets; und Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket.
  • In Beispiel 26 beinhaltet der Gegenstand des Beispiels 25, dass das Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort.
  • In Beispiel 27 beinhaltet der Gegenstand des Beispiels 26, dass das Berechnen der Übertragungserfolgswahrscheinlichkeitsmetrik Folgendes beinhaltet: Mitteln der Anzahlen erfolgreicher Übertragungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  • In Beispiel 28 beinhaltet der Gegenstand des Beispiels 27, dass die Übertragungserfolgswahrscheinlichkeitsmetrik einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  • In Beispiel 29 beinhaltet der Gegenstand der Beispiele 27 - 28, dass das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  • In Beispiel 30 beinhaltet der Gegenstand der Beispiele 25 - 29, dass das Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort.
  • In Beispiel 31 beinhaltet der Gegenstand des Beispiels 30, dass das Berechnen der Metrik der erwarteten maximalen Übertragungsrate Folgendes beinhaltet: Mitteln von Kanalrealisierungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  • In Beispiel 32 beinhaltet der Gegenstand des Beispiels 31, dass die Metrik der erwarteten maximalen Übertragungsrate einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  • In Beispiel 33 beinhaltet der Gegenstand der Beispiele 31 - 32, dass das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  • In Beispiel 34 beinhaltet der Gegenstand der Beispiele 25 - 33, dass das Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort; Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort; und Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate, um die Pfadstärkenmetrik zu erzeugen.
  • In Beispiel 35 beinhaltet der Gegenstand des Beispiels 34, dass das Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate Folgendes beinhaltet: Verwenden einer einfachen additiven Gewichtung (SAW).
  • In Beispiel 36 beinhaltet der Gegenstand der Beispiele 25 bis 35, dass das Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket Folgendes beinhaltet: Extrahieren eines Pfadstärkenwerts aus dem Entdeckungspaket; Hinzufügen der Pfadstärkenmetrik zu dem Pfadstärkenwert, um einen modifizierten Pfadstärkenwert zu erzeugen; und Ersetzen des Pfadstärkenwerts in dem Entdeckungspaket durch den modifizierten Pfadstärkenwert.
  • Beispiel 37 ist ein System zur verteilten Pfadauswahl in informationszentrischen Netzwerken (ICN), wobei das System Folgendes umfasst: Mittel zum Übertragen, durch einen ICN-Knoten, einer Sondierungsnachricht an andere ICN-Knoten; Mittel zum Empfangen, durch den ICN-Knoten, einer Antwort auf die Sondierungsnachricht; Mittel zum Ableiten einer Pfadstärkenmetrik aus der Antwort; Mittel zum Empfangen eines Entdeckungspakets; und Mittel zum Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket.
  • In Beispiel 38 beinhaltet der Gegenstand des Beispiels 37, dass das Mittel zum Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Mittel zum Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort.
  • In Beispiel 39 beinhaltet der Gegenstand des Beispiels 38, dass das Mittel zum Berechnen der Übertragungserfolgswahrscheinlichkeitsmetrik Folgendes beinhaltet: Mittel zum Mitteln der Anzahlen erfolgreicher Übertragungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  • In Beispiel 40 beinhaltet der Gegenstand des Beispiels 39, dass die Übertragungserfolgswahrscheinlichkeitsmetrik einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  • In Beispiel 41 beinhaltet der Gegenstand der Beispiele 39 - 40, dass das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  • In Beispiel 42 beinhaltet der Gegenstand der Beispiele 37 - 41, dass das Mittel zum Ableiten der Pfadstärkenmetrik Folgendes beinhalten: Mittel zum Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort.
  • In Beispiel 43 beinhaltet der Gegenstand des Beispiels 42, dass das Mittel zum Berechnen der Metrik der erwarteten maximalen Übertragungsrate Folgendes beinhaltet: Mittel zum Mitteln von Kanalrealisierungen über mehrere Sondierungsnachrichten zu einem Nachbar-ICN-Knoten.
  • In Beispiel 44 beinhaltet der Gegenstand des Beispiels 43, dass die Metrik der erwarteten maximalen Übertragungsrate einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  • In Beispiel 45 beinhaltet der Gegenstand der Beispiele 43 - 44, dass das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  • In Beispiel 46 beinhaltet der Gegenstand der Beispiele 37 - 45, dass das Mittel zum Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Mittel zum Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort; Mittel zum Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort; und Mittel zum Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate, um die Pfadstärkenmetrik zu erzeugen.
  • In Beispiel 47 beinhaltet der Gegenstand des Beispiels 46, dass das Mittel zum Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate Folgendes beinhaltet: Mittel zum Verwenden einer einfachen additiven Gewichtung (SAW).
  • In Beispiel 48 beinhaltet der Gegenstand der Beispiele 37 - 47, dass das Mittel zum Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket Folgendes beinhaltet: Mittel zum Extrahieren eines Pfadstärkenwerts aus dem Entdeckungspaket; Mittel zum Addieren der Pfadstärkenmetrik zu dem Pfadstärkenwert, um einen modifizierten Pfadstärkenwert zu erzeugen; und Mittel zum Ersetzen des Pfadstärkenwerts in dem Entdeckungspaket durch den modifizierten Pfadstärkenwert.
  • Beispiel 49 ist mindestens ein maschinenlesbares Medium, das Anweisungen beinhaltet, die, wenn sie durch eine Verarbeitungsschaltungsanordnung ausgeführt werden, die Verarbeitungsschaltungsanordnung veranlassen, Operationen zum Implementieren eines der Beispiele 1 - 48 durchzuführen.
  • Beispiel 50 ist eine Einrichtung, die Mittel zum Implementieren eines der Beispiele 1 - 48 umfasst.
  • Beispiel 51 ist ein System zum Implementieren eines der Beispiele 1 - 48.
  • Beispiel 52 ist ein Verfahren zum Implementieren eines der Beispiele 1 - 48.
  • Die vorstehende ausführliche Beschreibung beinhaltet Bezugnahmen auf die begleitenden Zeichnungen, die einen Teil der ausführlichen Beschreibung bilden. Die Zeichnungen zeigen zur Veranschaulichung spezifische Ausführungsformen, die umgesetzt werden können. Diese Ausführungsformen werden hierin auch als „Beispiele“ bezeichnet. Solche Beispiele können Elemente zusätzlich zu den gezeigten oder beschriebenen beinhalten. Allerdings ziehen die gegenwärtigen Erfinder auch Beispiele in Betracht, in denen nur die gezeigten oder beschriebenen Elemente bereitgestellt werden. Außerdem ziehen die gegenwärtigen Erfinder auch Beispiele in Betracht, die irgendeine Kombination oder Umsetzung dieser gezeigten oder beschriebenen Elemente (oder eines oder mehrerer Aspekte von diesen) verwenden, entweder in Bezug auf ein bestimmtes Beispiel (oder eines oder mehrerer Aspekte von diesem) oder in Bezug auf andere hier gezeigte oder beschriebene Beispiele (oder eines oder mehrerer Aspekte von diesen).
  • Alle Veröffentlichungen, Patente und Patentdokumente, auf die in diesem Dokument Bezug genommen wird, sind hierin in ihrer Gesamtheit durch Bezugnahme aufgenommen, als wenn sie einzeln durch Bezugnahme aufgenommen wären. Im Falle von widersprüchlichen Verwendungen zwischen diesem Dokument und den so durch Bezugnahme aufgenommenen Dokumenten sollte die Verwendung in der/den aufgenommenen Referenz(en) als ergänzend zu jener von diesem Dokument angesehen werden; bei unüberwindbaren Widersprüchen hat die Verwendung in diesem Dokument Vorrang.
  • In diesem Dokument wird der Begriff „ein/eine“ verwendet, wie es in Patentschriften üblich ist, um eins oder mehr als eins einzuschließen, unabhängig von anderen Fällen oder Verwendungen von „mindestens ein/eine“ oder „ein/eine oder mehrere“. In diesem Dokument wird der Begriff „oder“ verwendet, um sich auf ein nicht ausschließliches Oder zu beziehen, so dass „A oder B“ sowohl „A, aber nicht B“, „B, aber nicht A“ und „A und B“ einschließt, sofern nichts anderes angegeben ist. In den beigefügten Ansprüchen werden die Begriffe „einschließlich“ und „in denen“ als Äquivalente der entsprechenden Begriffe „umfassend“ und „wobei“ verwendet. Auch werden in den folgenden Ansprüchen die Begriffe „einschließlich“ und „umfassend“ offen verwendet, das heißt, ein System, eine Vorrichtung, ein Artikel oder ein Prozess, das/die/der Elemente zusätzlich zu jenen beinhaltet, die nach solch einem Begriff in einem Anspruch aufgelistet sind, werden noch als in den Schutzbereich dieses Anspruchs fallend angesehen. Außerdem werden in den folgenden Ansprüchen die Begriffe „erster“, „zweiter“ und „dritter“ usw. nur als Bezeichnungen verwendet und sollen ihren Objekten keine numerischen Anforderungen aufzwingen.
  • Die vorstehende Beschreibung soll veranschaulichend und nicht einschränkend sein. Zum Beispiel können die vorstehend beschriebenen Beispiele (oder ein oder mehrere Aspekte davon) in Kombination miteinander verwendet werden. Andere Ausführungsformen können verwendet werden, wie etwa durch Durchschnittsfachleute nach Durchsicht der vorstehenden Beschreibung. Die Zusammenfassung soll dem Leser ermöglichen, das Wesen der technischen Offenbarung schnell zu ermitteln, und wird mit dem Verständnis eingereicht, dass sie nicht zum Interpretieren oder Beschränken des Schutzumfangs oder der Bedeutung der Ansprüche verwendet wird. In der vorstehenden ausführlichen Beschreibung können außerdem verschiedene Merkmale zusammen gruppiert sein, um die Offenbarung zu straffen. Dies sollte nicht dahingehend interpretiert werden, dass beabsichtigt ist, dass ein nicht beanspruchtes offenbartes Merkmal für irgendeinen Anspruch wesentlich ist. Vielmehr kann der erfinderische Gegenstand in weniger als allen Merkmalen einer bestimmten offenbarten Ausführungsform liegen. Deshalb sind die folgenden Ansprüche hiermit in die ausführliche Beschreibung aufgenommen, wobei jeder Anspruch eigenständig als eine separate Ausführungsform steht. Der Schutzumfang der Ausführungsformen sollte unter Bezugnahme auf die beigefügten Ansprüche zusammen mit dem vollen Schutzumfang von Äquivalenten, zu denen diese Ansprüche berechtigt sind, bestimmt werden.

Claims (20)

  1. Verfahren zur verteilten Pfadauswahl in informationszentrischen Netzwerken (ICN), wobei das Verfahren Folgendes umfasst: Übertragen, durch einen ICN-Knoten, einer Sondierungsnachricht an andere ICN-Knoten; Empfangen, durch den ICN-Knoten, einer Antwort auf die Sondierungsnachricht; Ableiten einer Pfadstärkenmetrik aus der Antwort; Empfangen eines Entdeckungspakets; und Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket.
  2. Verfahren nach Anspruch 1, wobei das Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort.
  3. Verfahren nach Anspruch 2, wobei das Berechnen der Übertragungserfolgswahrscheinlichkeitsmetrik Folgendes beinhaltet: Mitteln der Anzahlen erfolgreicher Übertragungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  4. Verfahren nach Anspruch 3, wobei die Übertragungserfolgswahrscheinlichkeitsmetrik einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  5. Verfahren nach einem der Ansprüche 3-4, wobei das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  6. Verfahren nach einem der Ansprüche 1-5, wobei das Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort.
  7. Verfahren nach Anspruch 6, wobei das Berechnen der Metrik der erwarteten maximalen Übertragungsrate Folgendes beinhaltet: Mitteln von Kanalrealisierungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  8. Verfahren nach Anspruch 7, wobei die Metrik der erwarteten maximalen Übertragungsrate einem Rückwärtslink von dem Nachbar-ICN-Knoten zu dem ICN-Knoten entspricht.
  9. Verfahren nach einem der Ansprüche 7-8, wobei das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  10. Verfahren nach einem der Ansprüche 1-9, wobei das Ableiten der Pfadstärkenmetrik Folgendes beinhaltet: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort; Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort; und Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate, um die Pfadstärkenmetrik zu erzeugen.
  11. Verfahren nach Anspruch 10, wobei das Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate Folgendes beinhaltet: Verwenden einer einfachen additiven Gewichtung (SAW).
  12. Verfahren nach einem der Ansprüche 1-11, wobei das Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket Folgendes beinhaltet: Extrahieren eines Pfadstärkenwerts aus dem Entdeckungspaket; Addieren der Pfadstärkenmetrik zu dem Pfadstärkenwert, um einen modifizierten Pfadstärkenwert zu erzeugen; und Ersetzen des Pfadstärkenwerts in dem Entdeckungspaket durch den modifizierten Pfadstärkenwert.
  13. Mindestens ein maschinenlesbares Medium, das Anweisungen beinhaltet, die bei Ausführung durch eine Verarbeitungsschaltungsanordnung bewirken, dass die Verarbeitungsschaltungsanordnung ein Verfahren nach den Ansprüchen 1-12 durchführt.
  14. System, das Mittel zum Durchführen eines Verfahrens nach den Ansprüchen 1 -12 umfasst.
  15. Informationszentrischer Netzwerk (ICN)-Knoten zur verteilten ICN-Pfadauswahl, wobei der ICN-Knoten Folgendes umfasst: einen Satz von Netzwerkschnittstellen; und eine Verarbeitungsschaltungsanordnung, die zu Folgendem ausgelegt ist: Übertragen, über den Satz von Netzwerkschnittstellen, einer Sondierungsnachricht an andere ICN-Knoten; Empfangen, über den Satz von Netzwerkschnittstellen, einer Antwort auf die Sondierungsnachricht; Ableiten einer Pfadstärkenmetrik aus der Antwort; Empfangen, über den Satz von Netzwerkschnittstellen, eines Entdeckungspakets; und Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket.
  16. ICN-Knoten nach Anspruch 15, wobei die Verarbeitungsschaltungsanordnung zum Ableiten der Pfadstärkenmetrik zu Folgendem ausgelegt ist: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort.
  17. ICN-Knoten nach Anspruch 16, wobei die Verarbeitungsschaltungsanordnung zum Berechnen der Übertragungserfolgswahrscheinlichkeitsmetrik zu Folgendem ausgelegt ist: Mitteln durchschnittlicher Anzahlen erfolgreicher Übertragungen über mehrere Sondierungsnachrichten an einen Nachbar-ICN-Knoten.
  18. ICN-Knoten nach Anspruch 17, wobei das Mitteln über einen gleitenden Fensterzeitraum erfolgt.
  19. ICN-Knoten nach einem der Ansprüche 15-18, wobei die Verarbeitungsschaltungsanordnung zum Ableiten der Pfadstärkenmetrik zu Folgendem ausgelegt ist: Berechnen einer Übertragungserfolgswahrscheinlichkeitsmetrik basierend auf der Antwort; Berechnen einer Metrik der erwarteten maximalen Übertragungsrate basierend auf der Antwort; und Kombinieren der Übertragungserfolgswahrscheinlichkeitsmetrik und der Metrik der erwarteten maximalen Übertragungsrate, um die Pfadstärkenmetrik zu erzeugen.
  20. ICN-Knoten nach einem der Ansprüche 15-19, wobei die Verarbeitungsschaltungsanordnung zum Hinzufügen der Pfadstärkenmetrik zu dem Entdeckungspaket die Verarbeitungsschaltungsanordnung zu Folgendem ausgelegt ist: Extrahieren eines Pfadstärkenwerts aus dem Entdeckungspaket; Addieren der Pfadstärkenmetrik zu dem Pfadstärkenwert, um einen modifizierten Pfadstärkenwert zu erzeugen; und Ersetzen des Pfadstärkenwerts in dem Entdeckungspaket durch den modifizierten Pfadstärkenwert.
DE102022202570.9A 2021-04-12 2022-03-15 Verteilte pfadauswahl in informationszentrischen netzwerken Pending DE102022202570A1 (de)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US202163173860P 2021-04-12 2021-04-12
US202163173830P 2021-04-12 2021-04-12
US63/173,860 2021-04-12
US63/173,830 2021-04-12
US17/559,577 2021-12-22
US17/559,577 US20220116315A1 (en) 2021-04-12 2021-12-22 Information centric network distributed path selection

Publications (1)

Publication Number Publication Date
DE102022202570A1 true DE102022202570A1 (de) 2022-10-13

Family

ID=81078002

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022202570.9A Pending DE102022202570A1 (de) 2021-04-12 2022-03-15 Verteilte pfadauswahl in informationszentrischen netzwerken

Country Status (2)

Country Link
US (1) US20220116315A1 (de)
DE (1) DE102022202570A1 (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240064085A1 (en) * 2022-08-16 2024-02-22 Cisco Technology, Inc. Method to select best path for saas using application and network telemetry

Also Published As

Publication number Publication date
US20220116315A1 (en) 2022-04-14

Similar Documents

Publication Publication Date Title
DE112020004736T5 (de) Edge-computing-technologien für transportschichtüberlastregelung und point-of-presence-optimierungen auf grundlage erweiterter vorab-dienstgüte-benachrichtigungen
US10572312B2 (en) Method and apparatus for the virtualization of resources using a virtualization broker and context information
US10681167B2 (en) Distributed computing resources in an information centric network
DE102020202398A1 (de) Edge-server-cpu mit dynamischer deterministischer skalierung
DE102022200847A1 (de) Bestärkendes lernen für mehrfachzugriffsverkehrsverwaltung
DE102021209988A1 (de) Techniken zur klassifizierung und priorisierung von mehrfachzugangsverwaltungsdienstpaketen
DE112020002310T5 (de) V2x-dienste zur bereitstellung fahrtspezifischer qos-vorhersagen
DE112020007134T5 (de) Edge-computing in satellitenkonnektivitätsumgebungen
DE102019217367A1 (de) VERWALTUNG DER DIENSTQUALITÄT (QoS) IN EDGE-COMPUTING-UMGEBUNGEN
DE112013002674B4 (de) Bewerben, Ermitteln und Verwenden von Diensten durch virtuelle Zugriffspunkt-Schnittstellen
DE102023200988A1 (de) Dynamische latenz-responsive cache-verwaltung
DE102022202963A1 (de) Verkehrsaufteilungs- und neuübertragungsmechanismen mit schichtübergreifender und zugangsübergreifender technologie
DE112012006217T5 (de) Techniken zur Überwachung von Verbindungspfaden bei vernetzten Geräten
DE102022211529A1 (de) Methoden zum einreihen und neuordnen für mehrfachzugangsverwaltungsdienste
US11363679B2 (en) Facilitating integrated management of connected assets in 5G and other advanced networks
DE102020203746A1 (de) Interworking-techniken informationszentrischer netzwerke
DE102021210882A1 (de) Erweitertes peer-to-peer (p2p) mit edge-vernetzung
DE102022203249A1 (de) Mehrfachzugriff-edge-computing- (mec-) fahrzeug-zu-alles-(v2x-) interoperabilitätsunterstützung für mehrere v2x-nachrichtenbroker
US12003404B2 (en) Information centric network protocol for federated learning
EP4156642B1 (de) Informationszentrisches netzwerktunneln
DE102020203393A1 (de) Missionskritische push-benachrichtigung in einem hochzuverlässigen informationszentrischen netzwerk
CN107211014B (zh) 用于事件响应工具的系统和方法及计算机可读介质
Li et al. 6G cloud-native system: Vision, challenges, architecture framework and enabling technologies
DE102022202570A1 (de) Verteilte pfadauswahl in informationszentrischen netzwerken
DE112017007523T5 (de) Erstellen eines computersystems