DE112020003252T5 - Orchestrierung von dynamischer berechnung in informationszentrierten netzwerken - Google Patents

Orchestrierung von dynamischer berechnung in informationszentrierten netzwerken Download PDF

Info

Publication number
DE112020003252T5
DE112020003252T5 DE112020003252.3T DE112020003252T DE112020003252T5 DE 112020003252 T5 DE112020003252 T5 DE 112020003252T5 DE 112020003252 T DE112020003252 T DE 112020003252T DE 112020003252 T5 DE112020003252 T5 DE 112020003252T5
Authority
DE
Germany
Prior art keywords
packet
interest
interest packet
discovery
node
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
DE112020003252.3T
Other languages
English (en)
Inventor
Srikathyayani Srikanteswara
Daojing Guo
Nageen Himayat
Krishna Bhuyan
Gabriel Arrobo Vidal
Yi Zhang
Rustam Pirmagomedov
Dmitri Moltchanov
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 DE112020003252T5 publication Critical patent/DE112020003252T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • 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/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/31Flow control; Congestion control by tagging of packets, e.g. using discard eligibility [DE] bits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

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

Abstract

Systeme und Verfahren zur Orchestrierung von dynamischer Berechnung umfassen Empfangen, an einem Netzwerkknoten eines informationszentrierten Netzwerks, eines ersten Interessenpakets, das ein Namensfeld, das eine benannte Funktion angibt, und eine oder mehrere Einschränkungen umfasst, die Berechnungsanforderungen für einen Berechnungsknoten angeben, um die benannte Funktion auszuführen, wobei das erste Interessenpaket von einem Client-Knoten empfangen wird. Es werden mehrere Berechnungsknoten identifiziert, die die Berechnungsanforderungen zur Ausführung der genannten Funktion erfüllen. Das erste Interessenpaket wird an mindestens einige der mehreren Berechnungsknoten weitergeleitet. Datenpakete werden von mindestens einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket empfangen. Einer der mehreren Berechnungsknoten wird basierend auf den empfangenen Datenpaketen ausgewählt, und ein zweites Interessenpaket wird an den ausgewählten der mehreren Berechnungsknoten gesendet, das den ausgewählten der mehreren Berechnungsknoten anweist, die benannte Funktion auszuführen.

Description

  • PRIORITÄTSANSPRUCH
  • Diese Anmeldung beansprucht den Vorteil der Priorität der vorläufigen US-Anmeldung mit der Seriennummer 62/870,971 , eingereicht am 5. Juni 2019, und der vorläufigen US-Anmeldung mit der Seriennummer 63/046,952 , eingereicht am 1. Juli 2020, die beide hiermit durch Bezugnahme in ihrer Gesamtheit aufgenommen werden.
  • TECHNISCHES GEBIET
  • Hier beschriebene Ausführungsformen betreffen allgemein informationszentrierte Netzwerke (ICN) und insbesondere dynamische Berechnung in ICN-Netzwerken.
  • STAND DER TECHNIK
  • Informationszentrierte Netzwerke (ICN) sind eine Vernetzungsarchitektur, die auf Inhalt nach Name zugreift, was eine Paradigmenverschiebung von herkömmlicher Vernetzungsarchitektur ist, die auf dem Internetprotokoll (IP) basiert. Bei IP-Netzwerken erfolgt die Kommunikation Host-zu-Host, und die Inhaltsbereitstellung beruht auf Sitzungen zwischen zwei Endpunkten.
  • Benannte Datennetzwerke (NDN) sind eine weit verbreitete Spielart von ICN, bei dem ein Interessenpaket gesendet wird, um ein spezifisches Datenelement anzufordern, das durch seinen Namen (und nicht eine IP-Adresse oder einen anderen Ort) identifiziert wird. Knoten, die den Inhalt aufweisen, antworten mit einem Datenpaket. Gleichermaßen sind benannte Funktionsnetzwerke (NFN) und benannte Funktionen als Dienst (NFaaS) (hier kollektiv als NFN bezeichnet) zwei Erweiterungen des ICN, die eine namensbasierte Fernfunktionsausführung ermöglichen. Ähnlich wie bei NDN wird ein Interessenpaket ausgesendet, um die Ausführung einer Funktion anzufordern, die durch ihren Namen (statt Ort) identifiziert wird.
  • Die Parameterweiterleitung ist ein wichtiger zu berücksichtigender Aspekt bei NFN. Allgemein arbeiten nützliche Funktionen an teilweise großen Datensätzen, die als Argumente oder Parameter an die Funktion übergeben werden. Zum Beispiel beinhaltet das Transcodieren einer Videoeinspeisung von einer mobilen Kamera das Übertragen von Daten in der Größenordnung von wenigen Megabytes.
  • Figurenliste
  • In den Zeichnungen, die nicht notwendigerweise maßstabsgetreu gezeichnet sind, können ähnliche Bezugszeichen ähnliche Komponenten in unterschiedlichen Ansichten beschreiben. Ähnliche Bezugszeichen mit unterschiedlichen Buchstabensuffixen können unterschiedliche Instanzen ähnlicher Komponenten darstellen. Einige Ausführungsformen sind beispielhaft und nicht beschränkend in den Figuren der begleitenden Zeichnungen veranschaulicht, in denen gilt:
    • 1 veranschaulicht ein beispielhaftes ICN gemäß einer Ausführungsform.
    • 2 veranschaulicht ein Beispiel für eine ICN-Umgebung zum Ausführen einer Funktion an einem entfernten Knoten gemäß einer Ausführungsform.
    • 3 ist ein Beispiel für einen Datenfluss zum Orchestrieren von Fernberechnung in einem ICN gemäß einer Ausführungsform.
    • 4 ist ein Diagramm, das einen beispielhaften Paket- und Datenfluss für einen Knoten eines ICN-Netzwerks veranschaulicht, der eine Entdeckungspräfixtabelle beinhaltet.
    • 5 ist ein Diagramm, das ein beispielhaftes Interessenpaket für ein ICN-Netzwerk veranschaulicht.
    • 6 ist ein Flussdiagramm, das ein Verfahren zum Orchestrieren von dynamischer Berechnung in ICN-Netzwerken veranschaulicht.
    • 7 ist ein Blockdiagramm, das ein Beispiel einer Maschine veranschaulicht, auf welcher eine oder mehrere Ausführungsformen implementiert werden können.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Systeme und Verfahren sind hier für Orchestrierung von dynamischer Berechnung in informationszentrierten Netzwerken (ICN) offenbart. Das benannte Datennetzwerk (NDN) ist eine beliebte Spielart von ICN, um dynamische Berechnung (z. B. Edge Computing) und Just-intime-Bereitstellung von Berechnung zu orchestrieren. Berechnungsorchestrierung in NDN basiert im Allgemeinen auf der Verwendung eines einzigen Berechnungsservers. In diesen Fällen gibt es keine Mehrdeutigkeit hinsichtlich des Routens von Interessenpaketen für Berechnungen, da es nur einen Server in der Nähe gibt. Einige NDN-Mechanismen zur ICN-Berechnung beinhalten Fernaufruf über ICN (RICE) und Prozedurfernaufruf in benanntem Datennetzwerk (NDN-RPC).
  • RICE arbeitet durch Modifizieren der Routing-Tabellen und Netzwerktimer von Zwischenknoten in ICN basierend auf den Paketen, die von dem Client gesendet werden, und der Client hat keine Angaben dahingehend, welcher Server die Berechnung durchführt, was Bedenken zu Sicherheit und Datenschutz aufwerfen kann. Es gibt auch keine Garantie, dass die Berechnung durch den geeignetsten Server durchgeführt wird, und es kann sein, dass am Ende mehrere Server dieselben Berechnungen durchführen, falls ein Interessenpaket beim Erreichen seines Ziels verzögert wird.
  • NDN-RPC löst einige dieser mit RICE assoziierten Probleme, ist aber für einen einzigen Server konzipiert und unterstützt im Allgemeinen keine Szenarien mit mehreren Servern. NFN konzentriert sich auf die Verwendung eines Lambda-Kalküls zum Reduzieren und Zerlegen von Funktionen, adressiert aber im Allgemeinen keine Orchestrierung von Berechnung mit mehreren Servern. Ferner ermöglichen viele dieser Techniken einem Client nicht, Angaben darüber zu haben, wie (z. B. welcher Algorithmus, welche Sicherheitsstufen usw.) oder wo die Berechnungen ausgeführt werden.
  • Um diese Probleme zu adressieren, ermöglichen die hier beschriebenen Techniken einem Client, einen gewünschten Server zum Durchführen der Berechnung auszuwählen, wenn es in unmittelbarer Nähe mehrere Server gibt, die in der Lage sind, die Berechnungen durchzuführen (z. B. innerhalb einer tolerierbaren Latenz, Anzahl von Hops usw.). In einem Beispiel kann das Netzwerk diese Auswahl basierend auf Berechnungsbedingungen treffen, die durch den Client bereitgestellt werden. Ein Interessen- und Datenaustausch kann verwendet werden, der ermöglicht, dass solche Berechnungsknotenauswahlen auf Prioritäten des anfordernden Knotens basieren. Ferner kann der anfordernde Knoten die Ergebnisse empfangen, selbst wenn sich der anfordernde Knoten zu einem anderen Netzwerk bewegt, nachdem die Berechnung gestartet wurde.
  • In einem Beispiel sendet der Knoten, der die Berechnung anfordert, ein Entdeckungsinteressenpaket für die Funktion zusammen mit relevanten Details über die Daten (zum Beispiel Größe von Daten und anderen Parametern, die sich auf die Berechnungszeit auswirken können) aus. Die Netzwerkknoten können das Entdeckungspaket unter Verwendung einer Entdeckungspräfixtabelle verfolgen, um mehrere Antworten für das einzelne Interesse zu ermöglichen. Das Entdeckungsinteressenpaket kann an alle Server in der Nähe geroutet werden, die mit Datenpaketen antworten, die zum Beispiel jeweilige Berechnungszeiten angeben. Der Client empfängt diese mehreren Datenpakete und kann unter Verwendung der Informationen aus den Datenpaketen einen Server zum Durchführen der Berechnung auswählen. Der Client kann dann ein aktualisiertes Interessenpaket senden, wobei der ausgewählte Server zum Durchführen der Funktion angegeben ist.
  • Die Orchestrierung der ICN-Berechnung hat wesentliche Vorteile. Intelligenz und Berechnung bewegen sich zum Rand. An der Berechnungsfront wird Funktion als Dienst (FaaS), was eine verteilte Implementierung der Berechnung ermöglicht, immer häufiger. Die Software- und Hardwarebereitstellung für diese Systeme ist jedoch weitgehend statisch und zentralisiert. Dies ist der dynamischen und verteilten Natur der randseitig erforderlichen Berechnung nicht förderlich. Im Gegensatz dazu sind die hier beschriebenen Berechnungsorchestrierungs- und - bereitstellungstechniken über ICN verteilt und dynamisch. Falls sich der Client, der die Berechnung anfordert, zum Beispiel vollständig zu einer anderen Basisstation oder einem anderen Zugangspunkt (AP) oder zu einem anderen Netzwerk bewegt, bevor die Ergebnisse verfügbar werden, kann der Client immer noch nahtlos auf die Ergebnisse der früheren Anforderung zugreifen. Außerdem wird dem Client, indem dem Client ermöglicht wird, einen gewünschten Server innerhalb des ICN-Frameworks auszuwählen, mehr Kontrolle darüber gegeben, wo die Funktion ausgeführt wird, die Sicherheit und Effizienz verbessernd.
  • 1 veranschaulicht ein beispielhaftes ICN gemäß einer Ausführungsform. ICNs arbeiten anders als herkömmliche hostbasierte (z. B. adressbasierte) Kommunikationsnetzwerke. ICN ist ein Oberbegriff für ein Netzwerkparadigma, 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 Netzwerkparadigma, wie etwa das, das in dem 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. weiterzuleiten) sind. Im Gegensatz dazu beinhaltet ICN keine Anforderung für eine bestimmte Maschine und verwendet keine Adressen. Stattdessen fordert eine Vorrichtung 105 (z. B. Teilnehmer), um Inhalt zu erhalten, benannten Inhalt von dem Netzwerk selbst an. Die Inhaltsanfrage kann als ein Interesse bezeichnet werden und über ein Interessenpaket 130 übertragen werden. Während das Interessenpaket Netzwerkvorrichtungen (z. B. Netzwerkelemente, Router, Switches, Hubs usw.) -wie etwa Netzwerkelemente 110, 115 und 120 - durchläuft, wird eine Aufzeichnung des Interesses zum Beispiel in einer Tabelle anhängiger Interessen (PIT) an jedem Netzwerkelement geführt. Somit hält das Netzwerkelement 110 einen Eintrag in seiner PIT 135 für das Interessenpaket 130, das Netzwerkelement 115 hält den Eintrag in seiner PIT, und das Netzwerkelement 120 hält den Eintrag in seiner PIT.
  • Wenn eine Vorrichtung, wie etwa der Publisher 140, angetroffen wird, die Inhalt aufweist, der mit dem Namen in dem Interessenpaket 130 übereinstimmt, kann diese Vorrichtung 140 ein Datenpaket 145 als Antwort auf das Interessenpaket 130 senden. Typischerweise wird das Datenpaket 145 durch das Netzwerk zu der Quelle (z. B. Vorrichtung 105) zurückverfolgt, indem es den Spuren des Interessenpakets 130 folgt, die in den Netzwerkelement-PITs verbleiben. Somit legt die PIT 135 an jedem Netzwerkelement einen Pfad zurück zu dem Teilnehmer 105 fest, dem das Datenpaket 145 folgt.
  • Der Abgleich der genannten Daten in einem ICN kann mehreren Strategien folgen. Allgemein 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. Während ein Interesse 130 das ICN durchläuft, werden ICN-Netzwerkelemente im Allgemeinen versuchen, mit dem Namen zu einem größten Grad übereinzustimmen. Falls also ein ICN-Element ein zwischengespeichertes Element oder eine zwischengespeicherte Route für sowohl „www.somedomain.com oder Videos“ als auch „www.somedomain.com oder Videos oder v8675309“ aufweist, stimmt das ICN-Element mit letzterem für ein Interessenpaket 130 überein, das „www.somedomain.com oder Videos oder v8675309“ spezifiziert. In einem Beispiel kann ein Ausdruck beim Abgleich durch die ICN-Vorrichtung verwendet werden. Beispielsweise kann das Interessenpaket „www.somedomain.com oder Videos oder v8675*“ spezifizieren, wobei „*“ ein Platzhalter ist. Somit wird ein beliebiges zwischengespeichertes Element oder eine beliebige zwischengespeicherte Route, das/die die Daten außer dem Platzhalter beinhaltet, abgeglichen.
  • Der Gegenstandsabgleich beinhaltet das Abgleichen des Interesses 130 mit Daten, die in dem ICN-Element zwischengespeichert sind. Falls also zum Beispiel die im Interesse 130 genannten Daten 145 in dem Netzwerkelement 115 zwischengespeichert werden, dann wird das Netzwerkelement 115 die Daten 145 über das Netzwerkelement 110 an den Teilnehmer 105 zurückgeben. Falls die Daten 145 jedoch nicht am Netzwerkelement 115 zwischengespeichert werden, leitet das Netzwerkelement 115 das Interesse 130 weiter (z. B. an das Netzwerkelement 120). Um Routing zu erleichtern, können die Netzwerkelemente eine Weiterleitungsinformationsbasis 125 (FIB) verwenden, um benannte Daten mit einer Schnittstelle (z. B. physischer Port) für die Route abzugleichen. Dementsprechend arbeitet die FIB 125 ähnlich wie eine Routingtabelle auf einer herkömmlichen Netzwerkvorrichtung.
  • In einem Beispiel können zusätzliche Metadaten an das Interessenpaket 130, die zwischengespeicherten Daten oder die Route (z. B. in der FIB 125) angehängt werden, 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, Zeitbereich, Bestätigung usw. - beinhalten. In diesem Beispiel kann das Interessenpaket 130 den gewünschten Namen, die Versionsnummer oder den Versionsbereich spezifizieren. Der Abgleich kann dann Routen oder zwischengespeicherte 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 130 übereinstimmen, um jeweils mit dem Datenpaket 145 auf das Interessenpaket 130 zu antworten oder das Interessenpaket 130 weiterzuleiten.
  • ICN hat Vorteile gegenüber hostbasierten Netzwerken, da die Datensegmente einzeln benannt werden. Dies ermöglicht aggressives Caching im gesamten Netzwerk, da ein Netzwerkelement ein Datenpaket 130 als Antwort auf ein Interesse 130 so einfach wie ein Originalautor 140 bereitstellen kann. Dementsprechend ist es weniger wahrscheinlich, dass dasselbe Segment des Netzwerks Duplikate derselben Daten übertragen wird, die durch unterschiedliche Vorrichtungen angefordert werden.
  • Eine feinkörnige Verschlüsselung ist ein weiteres Merkmal vieler ICN-Netzwerke. Ein typisches Datenpaket 145 enthält einen Namen für die Daten, der mit dem Namen in dem Interessenpaket 130 übereinstimmt. Ferner beinhaltet das Datenpaket 145 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 adressieren, die falsche Informationen unter demselben Namen bereitstellen, kann das Datenpaket 145 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 140) dem Empfänger, festzustellen, ob die Daten von diesem Publisher 140 stammen. Diese Technik erleichtert auch das aggressive Zwischenspeichern der Datenpakete 145 im gesamten Netzwerk, da jedes Datenpaket 145 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 Latenzen erhöhen, während Verbindungen aufgebaut werden, und verhindert eine Datenzwischenspeicherung durch Verbergen der Daten von den Netzwerkelementen.
  • Beispielhafte ICN-Netzwerke beinhalten inhaltszentrierte Netzwerke (CCN), wie in den Spezifikationsentwürfen der IETF (Internet Engineering Task Force) für CCNx 0.x und CCN 1.x spezifiziert, und benannte Datennetzwerke (NDN), wie im NDN Technical Report DND-0001 spezifiziert.
  • 2 veranschaulicht ein Beispiel für eine ICN-Umgebung zum Ausführen einer Funktion an einem entfernten Knoten gemäß einer Ausführungsform. ICN-basierte Fernfunktionsausführungstechniken können eine Fernfunktionsausführung durch dynamisches Auflösen von Funktionen innerhalb eines Netzwerks durchführen. Zum Beispiel kann ein Funktionsparameter als ein spezielles Feld oder Metadaten in einem Interessenpaket 215 übergeben werden. In einem Beispiel kann ein Handshake-Mechanismus zum Übertragen von Funktionsparametern in einem speziellen Datenpaket verwendet werden.
  • In einem NFN sendet ein Dienstanforderungsknoten 205 das Interessenpaket 215 mit dem auszuführenden Funktionsnamen. In einem Beispiel enthält das Interessenpaket 215 alle notwendigen Eingabeparameter für die Funktion. Beim Empfangen des Interessenpakets 215 prüft ein Weiterleitungsknoten, ob er in der Lage sein wird, die Funktion durchzuführen. der Weiterleitungsknoten hat die ausführbare Funktion lokal gespeichert und genügend Berechnungsressourcen verfügbar. Falls ja, wird der Weiterleitungsknoten der Dienstanbieter 210 und er instanziiert die Funktion mit den Eingabeparametern, die in dem Interessenpaket 215 empfangen werden. Sobald die Ausführung abgeschlossen ist, werden Ergebnisse nach ICN-Standardvorgehensweise als ein Datenpaket 220 an den Dienstanforderer 205 zurückgegeben.
  • Da der Dienstanbieterknoten 210 in der Lage sein kann, mehrere Funktionen gleichzeitig auszuführen - z. B. auf verschiedenen virtuellen Maschinen oder Containern - kann die Systemausnutzung für den Dienstanbieterknoten 210 von Moment zu Moment variieren. Dementsprechend kann der Dienstanbieterknoten 210 in Abhängigkeit von der Last des Dienstanbieterknotens und minimalen Ressourcenanforderungen einer angeforderten Funktion möglicherweise nicht in der Lage sein, eine Funktion zu einer gegebenen Zeit auszuführen.
  • In einem Beispiel ist es aufgrund der Dynamik der Systemausnutzung möglicherweise nicht effizient, solche Lastinformationen periodisch an den Dienstanforderer 205 zu teilen, da die Lastinformationen bald veraltet werden können. In diesem Fall kann ein proaktiver Abfragemechanismus verwendet werden, um durch einen Dienstanforderungsknoten 205 verfügbare Funktionsimplementierungen oder assoziierte Metadaten von dem Dienstanbieterknoten 210 abzurufen. Solche Metadaten können Dinge wie geschätzte Ausführungszeit, Ausgabespezifikationen, Funktionsversion und dergleichen beinhalten. In einem Beispiel ist der Abfragemechanismus als ein eigenständiges Verfahren implementiert. Dieses Verfahren weist eine wohldefinierte Schnittstelle zu einer auf dem Dienstanforderungsknoten 205 laufenden Dienstanforderungsanwendung auf. In einem Beispiel ist der Abfragemechanismus als ein zugrundeliegendes Verfahren für existierende NFN-Frameworks implementiert. Hier kann der Mechanismus bei Empfang eines NFN-Interessenpakets an dem Dienstanbieterknoten 210 ausgelöst werden und bleibt transparent für andere NFN-Prozeduren.
  • In einem Beispiel weist der Interessenpaketname drei Teile auf. Der erste Teil ist ein Präfix für die Funktionsausführung. Obwohl ein beliebiges Präfix verwendet werden kann, das der Dienstanbieterknoten 210 als ein Funktionsausführungsinteressen versteht, ist das veranschaulichte Beispiel „/EXEC“. Der zweite Teil des Namens ist der angeforderte Funktionsname (z. B. Name der auszuführenden Funktion).
  • Der dritte Teil des Namens ist eine Angabe der Eingabeparameter. In einem Beispiel kann die Angabe der Eingabeparameter eine Angabe der Eingabeparameter auf hoher Ebene sein. Bei der Spezifikation der Eingangsparameter auf hoher Ebene kann es sich um Details zu jedem Funktionsparameter handeln. Solche Details können einen Typ von Eingabedaten oder eine Größe von Eingabedaten beinhalten. Falls die Eingabedaten klein genug sind (z. B. unter einer Schwelle), können in einem Beispiel die Eingabedaten selbst enthalten sein. In einem Beispiel ist die Spezifikation auf hoher Ebene eine zeichenfolgenserialisierte Version mehrerer Datenfelder. Ein Beispiel für eine solche Struktur ist das JSON-Zeichenfolgenformat (JavaScript Object Notation).
  • In einem Beispiel kann das Interessenpaket 215 einen Namen des Publisherfeldes beinhalten. Obwohl manche Dienstanforderungsknoten zum Beispiel möglicherweise nicht pflegen (z. B. keine Einschränkung darauf aufweisen), welche Funktionsimplementierung verwendet wird, können andere Knoten dahingehend beschränkt sein, welche Implementierung verwendet wird. Unterschiedliche Publisher (z. B. Funktionsimplementierer oder Anforderer) können auch wünschen, dass die Eingabeparameter auf eine gewisse Weise formatiert sind. Dementsprechend kann das Einschließen des Namens des Publishers in das Interessenpaket 215 verwendet werden, um diese Unterscheidungen dem Dienstanbieterknoten 210 bereitzustellen.
  • In einem Beispiel kann das Interessenpaket 215 ein erforderliches Abschlusszeitfeld beinhalten. Dieses Feld hilft, eine Übertragung von dem Dienstanbieterknoten 210 zu sparen, falls es bestimmt, dass die erwartete Ausführungszeit größer als die benötigte Zeit ist. Für auf maschinellem Lernen (ML) basierende Funktionen - wie etwa jene, die durch ein künstliches neuronales Netzwerk (ANN) implementiert werden - können zusätzliche Unterfelder verwendet werden, um ein Fehlertoleranzniveau, eine minimale Anzahl von Gradienteniterationen, eine maximale Stapelgröße usw. zu spezifizieren, von denen viele auch die Funktionsausführungszeit informieren können. In einem Beispiel kann eine ML-Architektur spezifiziert sein. Zum Beispiel die Anzahl der zu verwendenden ANN-Schichten. In einem Beispiel kann der Dienstanbieterknoten 210 mit ML-Optionen antworten, die vielleicht Kompromisse zwischen Optionen hinsichtlich ihrer Genauigkeit oder ihrer Ausführungszeit detaillieren.
  • In einem Beispiel kann das Interessenpaket 215 ein Sicherheitsanforderungsfeld beinhalten. Manche Berechnungen für den Dienstanforderer 10 können zum Beispiel sensible Informationen (z. B. Daten anderer Personen, geschützte Regierungsdaten usw.) enthalten. Unter diesen Umständen können Sicherheitsgarantien für die Ausführung, wie etwa das Ausführen der Funktion auf einer Sicherheitsenklave, durch den Dienstanforderungsknoten 205 benötigt werden. Indem sie in das Zulassungssonden-Interessenpaket 215 aufgenommen wird, kann der Dienstanbieterknoten 210 in der Lage sein, die Anforderung abzulehnen, bevor die Eingabedaten gesendet werden.
  • Bei Empfang des Interessenpakets 215 überprüft der Dienstanbieterknoten 210 seinen Funktionsspeicher und bestimmt verfügbare Implementierungen der angeforderten Funktionen. Die verfügbaren Implementierungen können von verschiedenen Publishern bereitgestellt werden oder können in Version oder Art variieren. Der Typ bezieht sich hier auf verschiedene Optionen, wie etwa eine Einzelthread- oder Multithread-Implementierung, eine speicheroptimierte oder CPU-intensive Version, unterschiedliche Ausgabespezifikationen usw. Wenn der Dienstanbieterknoten 210 in der Lage ist, die Funktion auszuführen, kann er das Ergebnis zwischenspeichern und gibt das Ergebnis in dem Datenpaket 220 zurück. Andernfalls wird das Interessenpaket 215 gemäß ICN- oder NFN-Prozedur an einen anderen Berechnungsknoten weitergeleitet.
  • 3 ist ein Beispiel für einen Datenfluss zum Orchestrieren von Fernberechnung in einem ICN gemäß einer Ausführungsform. Die nachfolgende Beschreibung trifft folgende Annahmen: (1) Das Netzwerk ist in der Lage, ICN-Nachrichten (z. B. NDN) zu decodieren. (2) Jede Funktion hat einen eindeutigen Namen. Falls beispielsweise zwei verschiedene Publisher eine Funktion erzeugen, die Bilderkennung durchführt, können die Funktionen john/image recognition und jim/image_recognition genannt werden. Auf diese Weise kann, wenn der Client an einer bestimmten Implementierung einer Funktion interessiert ist, wenn dem Client der Name der Funktion bekannt ist, die Funktion angefordert werden. Sind die Funktionen a priori nicht gut bekannt, so wird davon ausgegangen, dass es eine Verzeichnisdienstanwendung gibt, von der das Layout des Namensraums angefordert werden kann. (3) Es wird angenommen, dass die Routing-Tabellen, FIBs (Forwarding Information Bases), sich der Berechnungsserver in der Nähe bewusst sind.
  • In 3 fordert der Client-Knoten (als ein Laptop veranschaulicht) an, dass eine Funktion F(x) an Daten durchgeführt wird. In einem Beispiel weist der Client-Knoten die Daten auf. In einem Beispiel weist der Client-Knoten die Daten nicht auf. Falls der Client-Knoten die Daten nicht aufweist, kann der Client-Knoten diese Daten von dem Netzwerk anfordern. In einem Beispiel verwendet der Client-Knoten einen eindeutigen Namen der Daten als einen Parameter für F(x). Der Server (z. B. ein Berechnungsknoten) kann dann anfordern, dass Daten von dem Netzwerk die Berechnung durchführen. In jedem Fall werden die Daten an den Berechnungsknoten geliefert, der dann die Berechnung durchführt und das Ergebnis an den Client-Knoten liefert.
  • In einem Beispiel wählt der Client-Knoten aus, welcher von mehreren verfügbaren Berechnungsknoten zu verwenden ist. In einem Beispiel arbeitet die Berechnungsorchestrierung für mehrere Knoten wie folgt:
  • Zuerst überträgt der Client-Knoten ein Interessenpaket mit einem Namen, wie etwa „john/F(x)“. Falls kein spezifischer Publisher von F(x) gegeben ist, dann wird das Interesse an Berechnungsknoten gesendet, die eine beliebige Version von F(x) aufweisen könnten. Das Interessenpaket enthält auch Informationen über die angeforderte Berechnung - etwa in diesem Fall die Größe des Bildes. Die Parameter der Funktion, die ihre Berechnungszeit bestimmt, können auch Teil des Interessenpakets sein. Zusätzlich dazu können auch andere Einschränkungen, die der Client spezifizieren kann, Teil des Interessenpakets sein. Beispiele für diese Einschränkungen können die minimale Sicherheitsstufe, die an dem Server benötigt wird, die Anzahl von Hops oder einen geographischen Bereich, der definiert, wie weit ein Interessenpaket gesendet werden kann, usw. beinhalten. In einem Beispiel wird ein Kennzeichen in dem Interessenpaket hinzugefügt, das angibt, dass mehrere Antworten für das Interessenpaket empfangen werden können (siehe 5).
  • Das Netzwerk leitet das Interessenpaket an alle Berechnungsknoten weiter, die die Einschränkungen des Interessenpakets erfüllen. In einem Beispiel, wenn das Kennzeichen zum Empfangen mehrerer Antworten gesetzt ist, werden die anhängigen Interessentabellen- bzw. PIT-Einträge nicht gelöscht, wenn eine Antwort gesetzt ist - vielmehr wird der PIT-Eintrag nach der Zeitüberschreitung, die in dem Interessenpaket gegeben ist, oder nach einer designierten Anzahl von empfangenen Antworten gelöscht. Dies kann unter Verwendung einer Entdeckungspräfixtabelle, wie mit Bezug auf 4 erörtert, erreicht werden.
  • Zweitens geben die Berechnungsknoten, die bereit sind, die Berechnung durchzuführen, ein Datenpaket mit Angaben darüber zurück, wie der antwortende Berechnungsknotenserver erreicht werden soll. Beispielsweise kann Server1, der „john/F(x)“ implementiert, ein Datenpaket mit der Zeit senden, die benötigt wird, um die Berechnung abzuschließen, und den eindeutigen Namen, um Server1 zu erreichen. Beispielsweise „server1/john/F(x)“.
  • Drittens wählt der Client-Knoten aus, welcher Server zu verwenden ist, basierend auf der lokalen Richtlinie des Client-Knotens und den Datenpaketen, die er empfängt. Beispielsweise kann der Client-Knoten die erste Antwort verwenden, die er empfängt. Alternativ dazu kann der Client-Knoten die niedrigste Ausführungszeit, den nächstliegenden Knoten oder dergleichen auswählen. Sobald der Client-Knoten einen Berechnungsknoten auswählt, sendet der Client-Knoten ein Interessenpaket, zum Beispiel mit dem Namen „server1/john/F(x)“ zusammen mit den Daten für diese Berechnung.
  • Als viertes sendet der Berechnungsknoten, sobald der ausgewählte Berechnungsknoten das Interessenpaket empfängt, ein Datenpaket mit den Informationen über den Namen des Ergebnisses und eine geschätzte Zeit, zu der das Ergebnis verfügbar sein wird. Beispielsweise kann der Server 1 mit einem Namen für das Ergebnis als „server1/john/F(x)/results/data1“ antworten. Sobald erwartet wird, dass die Daten bereit sind, überträgt der Client-Knoten ein Interessenpaket für die Ergebnisse. Der Client-Knoten kann sich in einem anderen Netzwerk befinden, aber da die Ergebnisse einen eindeutigen Namen aufweisen, werden die Daten unabhängig von den Standorten des jeweiligen Client-Knotens und des jeweiligen Berechnungsknotens an den richtigen Standort geroutet.
  • In einem Beispiel wählt das Netzwerk aus, welcher von mehreren verfügbaren Berechnungsknoten zu verwenden ist. In diesem Beispiel sendet der Client-Knoten ein Interessenpaket, das F(x) anfordert, und stellt Einzelheiten von Einschränkungen und Informationen über die Datengröße usw. bereit. In diesem Fall trifft das Netzwerk jedoch die Entscheidung, welcher Berechnungsknoten das Interessenpaket weiterleiten soll, und gibt nur ein Datenpaket an den Client mit Angaben darüber zurück, wie die Daten und andere Informationen in dem folgenden Interessenpaket gesendet werden sollen. Wie bei herkömmlichen ICN wird der PIT-Eintrag gelöscht, sobald eine Antwort erhalten wird.
  • In dem Beispiel, in dem der Client-Knoten die Entscheidung trifft, welcher Berechnungsknoten zu verwenden ist, müssen nicht auf jedem ICN-Knoten zusätzliche Software und Intelligenz zum Durchsortieren der Anforderungen und Treffen der Entscheidung installiert sein. Stattdessen weisen nur die Client-Knoten, die Berechnungen anfordern wollen, diese Schicht auf. Diese Technik eignet sich auch besser für Ad-hoc-Netzwerke, bei denen der nächste Knoten vom Client möglicherweise kein Zugangspunkt oder keine Basisstation ist. Stattdessen kann der nächste Knoten ein Knoten wie der Client-Knoten sein, und Belasten dieser Knoten mit zusätzlichen Aufgaben - z. B. zusätzlich zum Weiterleiten von Paketen an die Server - kann unerwünschten Overhead erzeugen. Bei dem zweiten Ansatz sendet der Client die Anforderung zur Berechnung aus und muss nicht mit entscheiden, welcher Server die Anforderung verarbeitet, und er kann sich sicher sein, dass der Server, der seine Einschränkungen erfüllt, die Anforderung verarbeitet.
  • 4 ist ein Diagramm, das einen beispielhaften Paket- und Datenfluss für einen Knoten eines ICN-Netzwerks, wie etwa ein beliebiges der Netzwerkelemente 110, 115 und/oder 120 von 1, unter Verwendung einer Entdeckungspräfixtabelle veranschaulicht. Der Knoten umfasst einen oder mehrere Inhaltsspeicher 400, eine oder mehrere PITs 402, eine oder mehrere FIBs 404 und eine oder mehrere Entdeckungspräfixtabellen (DPT) 406. Die DPTs 406 können verwendet werden, um Informationen bezüglich Entdeckungsinteressenpaketen zu speichern, um zum Beispiel den Empfang mehrerer Datenpakete für ein einziges Interesse zu erleichtern.
  • Um Daten abzurufen, prüft der Knoten, wenn ein Knoten ein Interessenpaket 130 empfängt, zuerst, ob der Inhalt innerhalb des Inhaltsspeichers 400 zwischengespeichert ist. Falls der Inhalt nicht zwischengespeichert ist, wird das Interessenpaket 130 an die PIT 402 und die DPT 406 weitergeleitet. Ein Name aus dem Interessenpaket 130 wird verwendet, um zu prüfen, ob die PIT 402 und die DPT 406 einen mit dem Namen übereinstimmenden Eintrag aufweisen. Falls keine Übereinstimmung gefunden wird, zeichnet der Knoten das Interesse in der PIT 402 auf und zeichnet, falls das Interessenpaket 130 ein Entdeckungspaket ist, das Interesse in der DPT 406 auf und leitet das Interessenpaket 130 basierend auf Informationen in der FIB 404 weiter.
  • Herkömmliche ICN-Architekturen löschen bei Empfang eines entsprechenden Datenpakets den jeweiligen PIT-Eintrag. Für Entdeckungspakete, wie hier besprochen, ist es jedoch wünschenswert, mehrere Datenpakete zu empfangen, um es einem Client-Knoten oder einem jeweiligen Berechnungsknoten zu ermöglichen, einen Berechnungsknoten zum Ausführen einer Funktion, zum Beispiel in einem NFN, auszuwählen. Somit kann das Interessenpaket 130 beim Empfang überprüft werden, um zu bestimmen, ob es ein Entdeckungspaket ist. Dies kann durch ein Namensfeld, ein separates Entdeckungspaketindikatorfeld, ein Parameterfeld oder auf eine beliebige andere Weise bezeichnet werden.
  • 5 veranschaulicht ein beispielhaftes Interessenpaket 500, das eine Angabe beinhaltet, dass das Paket 500 ein Entdeckungspaket ist. Das Paket 500 umfasst ein Namensfeld 502, ein optionales Entdeckungsindikatorfeld 504, ein Parameterfeld 506 und ein Interessenlebensdauerfeld 508. Das Paket 500 kann zusätzliche Felder umfassen, die in 5 nicht veranschaulicht sind. Das Namensfeld 502 umfasst einen Namen für die Funktion des Interesses. Das Namensfeld 502 kann auch einen Indikator umfassen, dass das Paket 500 ein Entdeckungspaket ist. Zum Beispiel kann der Name ein speziell zugewiesenes Schlüsselwort umfassen, das in den Interessennamenraum eingebettet sein kann. Der Namensraum kann zum Beispiel mit einem Schlüsselwort-Präfix wie etwa „/discovery/service/“ beginnen. Jeder Name, der mit dem Schlüsselwort beginnt, gibt an, dass das jeweilige Paket 500 ein Entdeckungspaket ist. In diesem Beispiel umfasst das Paket 500 möglicherweise nicht das optionale Entdeckungsindikatorfeld 504. In einem anderen Beispiel kann das Anwendungsparameterfeld 506 ein Schlüsselwort umfassen, das angibt, dass das Paket 500 ein Entdeckungspaket ist. In diesem Beispiel umfasst das Namensfeld nicht das Schlüsselwort.
  • In einem anderen Beispiel umfasst das Paket 500 das optionale Entdeckungsindikatorfeld 504, um anzugeben, ob das Paket 500 ein Entdeckungspaket ist. Das Entdeckungsindikatorfeld 504 kann ein einzelnes Bit sein, um eine binäre Angabe darüber bereitzustellen, ob das Paket 500 ein Entdeckungspaket ist. Zum Beispiel kann eine „1“ angeben, dass das Paket 500 ein Entdeckungspaket ist, während eine „0“ angeben kann, dass das Paket 500 kein Entdeckungspaket ist. In diesem Beispiel kann die Interessenaggregation in dem jeweiligen Knoten deaktiviert sein oder der Knoten kann Logik aufweisen, um zwischen Paketen 500 zu unterscheiden, die von verschiedenen Benutzern kommen, da die Namen zwischen Entdeckungs- und Nicht-Entdeckungspaketen gleich sein können.
  • Ein Entdeckungsinteressenpaket 500 enthält die gewünschte Anzahl von Antworten, die der Client zurückempfangen möchte, wie etwa in dem Parameterfeld 506. Das Interessenlebensdauerfeld 508 wird verwendet, um eine Zeitdauer festzulegen, die ein Client auf entsprechende Datenpakete als Antwort auf das Entdeckungsinteressenpaket 500 warten möchte (d. h. eine Zeitüberschreitungsperiode). Die gewünschte Anzahl von Antworten und die Interessenlebensdauer werden für die PIT 402 verwendet, um zu bestimmen, wann ein entsprechender Eintrag in der PIT 402 für das jeweilige Interesse gelöscht werden kann.
  • Knoten, wie Router, können die Parameter zum Beispiel mit gespeicherten Richtlinien vergleichen, und falls die Parameter richtlinienkonform sind, können die Parameter auf den jeweiligen Eintrag in der PIT 402 angewendet werden. Zum Beispiel kann die Anzahl von Antworten durch einen Router gemäß der internen Richtlinie des Routers verringert werden. Der Router kann eine Richtlinie einsetzen, um den Router vor PIT-Einträgen für eine sehr lange Zeit (z. B. Tage, Monate, Jahre usw.) zu schützen und die Anzahl von Antworten, die an den Client-Knoten zurückgesendet werden, zu begrenzen. Die Richtlinie kann auch Schutz gegen Sicherheitsangriffe bieten, die das ICN-Netzwerk überfluten können.
  • Bei der Bestimmung, dass das Interessenpaket 130 ein Entdeckungspaket ist, kann der Knoten die DPT 406 prüfen, um zu sehen, ob bereits ein Eintrag existiert. Falls nicht, erzeugt der jeweilige Berechnungsknoten einen Eintrag in der DPT 406 und kann dann das Interesse entsprechend weiterleiten. Wenn Daten zurückgegeben werden, während der Eintrag in der PIT 402 nicht abgelaufen ist, erfüllt der Weiterleiter das Interesse, indem er das Datenpaket abwärts sendet und den Zähler für den PIT-Eintrag um 1 dekrementiert. Wenn der Zähler 0 erreicht (d. h. die Anzahl von zurückgegebenen Datenpaketen hat die spezifizierte Anzahl von Antworten in dem Interessenpaket erreicht), wird der PIT-Eintrag als abgelaufen markiert und wird gelöscht. Der Eintrag in der DPT 406 kann gleichzeitig mit dem jeweiligen PIT-Eintrag gelöscht werden. Der Zähler kann in der DPT 406, der PIT 402 oder einem beliebigen anderen Ort innerhalb des jeweiligen Knotens gespeichert sein.
  • 6 ist ein Flussdiagramm, das ein Verfahren 600 zum Orchestrieren dynamischer Berechnung in ICN-Netzwerken durch Ermöglichen mehrerer Datenpaketantworten für ein einziges Interesse veranschaulicht. Bei Schritt 602 empfängt ein Netzwerkknoten ein Interessenpaket und identifiziert das Paket als ein „Entdeckungs“-Interessenpaket. Da das Paket als ein Entdeckungsinteressenpaket identifiziert wird, weiß der Netzwerkknoten, dass das Interesse mehrere Datenantworten erfordern kann. In einem Beispiel können, um das Paket als ein Entdeckungspaket zu identifizieren, vordefinierte Schlüsselwörter zum Identifizieren eines Pakets als ein Entdeckungsinteressenpaket reserviert sein. Beispielsweise kann das vordefinierte Schlüsselwort die Form aufweisen: „/discovery/service/“. Um Konflikte zu vermeiden, kann verhindert werden, dass diese Schlüsselwörter als die Wurzel eines beliebigen anderen Namensraums zugewiesen werden. In einem anderen Beispiel kann das Schlüsselwort in einem Anwendungsparameterfeld des Interessenpakets enthalten sein. In einem anderen Beispiel kann anstelle des Verwendens eines Schlüsselworts ein Feld zu dem Interessenpaket hinzugefügt werden, um anzugeben, ob das Paket ein Entdeckungsinteressenpaket ist. Beispielsweise kann das Feld ein binäres Feld sein, sodass, falls vorhanden, das Feld angibt, dass das Interessenpaket ein „Entdeckungspaket“ ist, und, falls nicht vorhanden, das Paket durch Zwischenknoten als ein herkömmliches Interessenpaket behandelt werden kann. Dieses Beispiel ermöglicht eine Rückwärtskompatibilität für Zwischenknoten, die nicht in der Lage sind, ein Entdeckungsinteressenpaket zu identifizieren.
  • Bei Schritt 604 werden Parameter aus dem Entdeckungsinteressenpaket extrahiert. Zum Beispiel kann jedes Dienstentdeckungsinteresse eine gewünschte Anzahl von Antworten enthalten, die der Client als Antwort auf das Entdeckungsinteressenpaket empfangen möchte. Zusätzlich dazu kann das Entdeckungsinteressenpaket ein Interessenlebensdauerfeld beinhalten, das angibt, wie lange der Client auf Antworten auf das Entdeckungsinteressenpaket warten möchte. Die Parameter können auch Berechnungsparameter, wie etwa die Größe der Daten für die Funktion und andere Parameter, die die Berechnungszeit beeinflussen können, beinhalten. Zusätzlich dazu können auch andere Einschränkungen, die der Client spezifizieren kann, Teil des Interessenpakets sein. Beispiele für diese Einschränkungen können die minimale Sicherheitsstufe, die an dem Server benötigt wird, die Anzahl von Hops oder ein geographisches Gebiet, das definiert, wie weit ein Interessenpaket gesendet werden kann, beinhalten. Der Netzwerkknoten fügt einen Eintrag zu seiner Entdeckungspräfixtabelle hinzu, der das Entdeckungsinteressenpaket, die Interessenlebensdauer und eine Zählung verbleibender Antworten (anfänglich gleich der spezifizierten gewünschten Anzahl von Antworten in dem Interessenpaket) identifiziert. Auch für das Interesse kann ein PIT-Eintrag erfolgen. Bei Schritt 606 identifiziert der Netzwerkknoten das Interessenpaket und leitet es an die Berechnungsknoten weiter, die die durch den Client in dem Interessenpaket spezifizierten Einschränkungen erfüllen.
  • Das Verfahren 600 führt die Schritte 608-614 aus, um Antworten für das jeweilige Entdeckungsinteressenpaket zu empfangen. Bei Schritt 608 geht das Verfahren 600 zu Schritt 618 über und löscht den PIT-Eintrag und den DPT-Eintrag für das Entdeckungsinteressenpaket, falls die durch das Entdeckungsinteressenpaket designierte Zeitdauer verstrichen ist. Auf diese Weise werden, falls nach dieser Zeit neue Datenpakete zurückgegeben werden, die Datenpakete nicht an den Client-Knoten weitergeleitet. Der Knoten kann optional das Interesse erneut senden, falls weniger als eine gewünschte Anzahl von Datenpaketen als Antwort auf das Entdeckungsinteresse empfangen wurde.
  • Falls bei Schritt 610 ein Datenpaket empfangen wird, geht das Verfahren 600 zu Schritt 612 über, andernfalls kehrt das Verfahren 600 zu Schritt 608 zurück. Bei Schritt 612 wird die jeweilige Antwortzählung, die in der DPT verbleibt, dekrementiert, und das Datenpaket wird zu dem Client-Knoten weitergeleitet. Bei Schritt 614 fährt das Verfahren 600, falls die jeweilige Zählung in der DPT für das Entdeckungspaket gleich null ist (die Anzahl an zurückgesendeten Datenpaketen ist gleich der Anzahl, die durch das Entdeckungspaket designiert wird), mit Schritt 616 fort, und der PIT-Eintrag und der DPT-Eintrag werden gelöscht. Falls die jeweilige Zählung in der DPT nicht null ist, kehrt das Verfahren 600 zu Schritt 608 zurück und fährt mit dem Empfangen von Datenpaketen für das Entdeckungsinteresse fort. Auf diese Weise können mehrere Datenpakete für ein einziges Interesse zurückgegeben werden.
  • 7 veranschaulicht ein Blockdiagramm einer beispielhaften Maschine 700, bei welcher eine oder mehrere der hierin erörterten Techniken (z. B. Methodologien) durchgeführt werden können. Beispiele, wie hierin beschrieben, können Logik oder eine Anzahl von Komponenten oder Mechanismen in der Maschine 700 umfassen oder durch diese funktionieren. Eine Schaltungsanordnung (z. B. Verarbeitungsschaltungsanordnung) ist eine Sammlung von Schaltungen, die in greifbaren Entitäten der Maschine 700 implementiert werden, die Hardware (z. B. einfache Schaltungen, Gatter, Logik usw.) enthalten. Die Mitgliedschaft bei einer Schaltungsanordnung kann mit der Zeit flexibel sein. Schaltungsanordnungen beinhalten Mitglieder, die bei deren Ausführung alleine 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 variierbar verbundene physische Komponenten (z. B. Ausführungseinheiten, Transistoren, einfache Schaltungen usw.) beinhalten, einschließlich eines maschinenlesbaren Mediums, das physisch modifiziert ist (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 zum Beispiel von einem Isolator zu einem Leiter oder umgekehrt geändert. Die Anweisungen ermöglichen eingebetteter Hardware (z. B. den Ausführungseinheiten oder einem Lademechanismus), Mitglieder der Schaltungsanordnung in Hardware über die variierbaren 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 die Vorrichtung arbeitet. In einem Beispiel können beliebige der physischen Komponenten in mehr als einem Mitglied von mehr als einer Schaltungsanordnung verwendet werden. Im Betrieb können beispielsweise 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 dieser Komponenten bezüglich der Maschine 700 folgen.
  • Bei alternativen Ausführungsformen kann die Maschine 700 als selbständige Vorrichtung funktionieren oder mit anderen Maschinen verbunden (z. B. vernetzt) sein. Bei einer vernetzten Anwendung kann die Maschine 700 in der Eigenschaft einer Servermaschine, einer Client-Maschine oder beider in Server-Client-Netzwerkumgebungen arbeiten. In einem Beispiel kann die Maschine 700 als eine Peer-Maschine in einer Peer-zu-Peer- (P2P) (oder anderen verteilten) Netzwerkumgebung fungieren. Die Maschine 700 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 Brücke, oder eine beliebige Maschine sein, die zum Ausführen von Anweisungen (sequenziell oder anderweitig) in der Lage ist, welche Handlungen spezifizieren, die durch diese Maschine durchgeführt werden sollen. Obwohl nur eine einzige Maschine veranschaulicht ist, ist der Begriff „Maschine“ ferner auch so zu verstehen, dass er eine Sammlung von Maschinen einschließt, die individuell oder gemeinsam einen Satz (oder mehrere Sätze) von Anweisungen ausführen, um eine oder mehrere beliebige der hierin besprochenen Methodologien durchzuführen, wie etwa Cloud-Computing, Software als Dienst (SaaS), andere Computer-Clusterkonfigurationen.
  • Die Maschine (z. B. Computersystem) 700 kann einen Hardwareprozessor 702 (z. B. eine Zentralverarbeitungseinheit (CPU), eine Grafikverarbeitungseinheit (GPU), einen Hardwareprozessorkern oder eine beliebige Kombination davon), einen Hauptspeicher 704, einen statischen Speicher (z. B. Speicher oder Speicherung für Firmware, Mikrocode, ein grundlegendes Eingabe/Ausgabe-System (BIOS), eine vereinheitlichte erweiterbare Firmware-Schnittstelle (UEFI) usw.) 706 und eine Massenspeicherung 708 (z. B. Festplatten, Bandlaufwerke, Flash-Speicherung oder andere Blockvorrichtungen) umfassen, von denen einige oder alle über eine Verbindung (z. B. Bus) 730 miteinander kommunizieren können. Die Maschine 700 kann ferner eine Anzeigeeinheit 710, eine alphanumerische Eingabevorrichtung 712 (z. B. eine Tastatur) und eine Benutzeroberflächen(UI)-Navigationsvorrichtung 714 (z. B. eine Maus) aufweisen. In einem Beispiel können die Anzeigeeinheit 710, die Eingabevorrichtung 712 und UI-Navigationsvorrichtung 714 eine Touchscreen-Anzeige sein. Die Maschine 700 kann außerdem eine Speicherungsvorrichtung (z. B. eine Laufwerkeinheit) 708, eine Signalerzeugungsvorrichtung 718 (z. B. einen Lautsprecher), eine Netzwerkschnittstellenvorrichtung 720 und einen oder mehrere Sensoren 716, wie etwa einen Sensor eines globalen Positionsbestimmungssystems (GPS - Global Positioning System), einen Kompass, einen Beschleunigungsmesser oder einen anderen Sensor, umfassen. Die Maschine 700 kann eine Ausgangssteuerung 728, wie etwa eine serielle (z. B. USB (Universal Serial Bus)), parallele oder andere drahtgebundene oder drahtlose (z. B. Infrarot (IR), Nahfeldkommunikation (NFC) usw.) Verbindung zum Kommunizieren mit einer oder mehreren Peripherievorrichtungen (z. B. Drucker, Kartenlesegerät usw.) oder Steuern derselben umfassen.
  • Register des Prozessors 702, des Hauptspeichers 704, des statischen Speichers 706 oder der Massenspeicherung 708 können ein maschinenlesbares Medium 722 sein oder beinhalten, auf dem ein oder mehrere Sätze von Datenstrukturen oder Anweisungen 724 (z. B. Software) gespeichert sind, die eine oder mehrere der hierin beschriebenen Techniken oder Funktionen verkörpern oder von diesen genutzt werden. Die Anweisungen 724 können sich außerdem vollständig oder zumindest teilweise innerhalb beliebiger der Register des Prozessors 702, des Hauptspeichers 704, des statischen Speichers 706 oder der Massenspeicherung 708 während ihrer Ausführung durch die Maschine 700 befinden. In einem Beispiel kann eine oder eine beliebige Kombination des Hardwareprozessors 702, des Hauptspeichers 704, des statischen Speichers 706 oder der Massenspeicherung 708 die maschinenlesbare Medien 722 bilden. Obwohl das maschinenlesbare Medium 722 als ein einziges Medium veranschaulicht ist, kann der Begriff „maschinenlesbares Medium“ ein einziges Medium oder mehrere Medien (z. B. eine zentrale oder verteilte Datenbank und/oder assoziierte Caches und Server) einschließen, welche dazu ausgelegt sind, die eine oder die mehreren Anweisungen 724 zu speichern.
  • Der Begriff „maschinenlesbares Medium“ kann jedes Medium beinhalten, das zum Speichern, Codieren oder Ausführen von Anweisungen zur Ausführung durch die Maschine 700 imstande ist und das die Maschine 700 veranlasst, eine oder mehrere der Techniken der vorliegenden Offenbarung durchzuführen, oder das zum Speichern, Codieren und Führen von Datenstrukturen imstande ist, die von solchen Anwendungen 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. Hochfrequenzsignale, andere photonenbasierte Signale, Tonsignale usw.) beinhalten. In einem Beispiel umfasst ein nicht-flüchtiges maschinenlesbares Medium ein maschinenlesbares Medium mit mehreren Teilchen mit invarianter (z. B. Rest) Masse und sind somit Stoffzusammensetzungen. Dementsprechend sind nicht-flüchtige maschinenlesbare Medien maschinenlesbare Medien, die keine vorübergehenden Ausbreitungssignale beinhalten. Spezielle Beispiele für nicht-flüchtige maschinenlesbare Medien können Folgendes beinhalten: nicht-flüchtige Speicher, wie etwa Halbleiterspeichervorrichtungen (z. B. elektrisch programmierbaren Nur-Lese-Speicher (EPROM), elektrisch löschbaren programmierbaren Nur-Lese-Speicher (EEPROM)) und Flash-Speichervorrichtungen; Magnetplatten, wie etwa interne Festplatten und herausnehmbare Platten; magneto-optische Platten; und CD-ROM- sowie DVD-ROM-Disks.
  • Ein maschinenlesbares Medium kann durch eine Speicherungsvorrichtung oder eine andere Einrichtung bereitgestellt werden, die dazu in der Lage ist, Daten in einem nichtflüchtigen Format zu hosten. In einem Beispiel können auf einem maschinenlesbaren Medium gespeicherte oder anderweitig bereitgestellte Informationen die Anweisungen repräsentieren, wie etwa die Anweisungen selbst oder ein Format, aus dem die Anweisungen abgeleitet werden können. Dieses Format, aus dem die Anweisungen 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 repräsentierenden Informationen im maschinenlesbaren Medium können durch eine Verarbeitungsschaltungsanordnung in die Anweisungen zum Implementieren beliebiger der hierin besprochenen Operationen verarbeitet werden. Das Ableiten der Anweisungen aus den Informationen (z. B. Verarbeitung durch die Verarbeitungsschaltungsanordnung) kann beispielsweise 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 anderweitig Manipulieren der Informationen in die Anweisungen.
  • In einem Beispiel kann die Ableitung der Anweisungen Zusammenstellung, Kompilierung oder Interpretation der Informationen (z. B. durch die Verarbeitungsschaltungsanordnung) beinhalten, um die Anweisungen aus einem Zwischenformat oder vorverarbeiteten Format, das durch das maschinenlesbare Medium bereitgestellt wird, zu erzeugen. Wenn die Informationen in mehreren Teilen bereitgestellt werden, können sie kombiniert, entpackt und modifiziert werden, um die Anweisungen 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 Fernservern befinden. Die Quellcodepakete können verschlüsselt sein, wenn sie sich über ein Netzwerk bewegen, und entschlüsselt, unkomprimiert, bei Bedarf zusammengesetzt (z. B. verknüpft) und an einer lokalen Maschine kompiliert oder interpretiert (z. B. in eine Bibliothek, eigenständig ausführbare Datei usw.) sein und durch die lokale Maschine ausgeführt werden.
  • In einem Beispiel können auf dem maschinenlesbaren Medium 722 gespeicherte oder anderweitig bereitgestellte Informationen die Anweisungen 724 repräsentieren, wie etwa die Anweisungen 724 selbst oder ein Format, aus dem die Anweisungen 724 abgeleitet werden können. Dieses Format, aus dem die Anweisungen 724 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 724 repräsentierenden Informationen im maschinenlesbaren Medium 722 können durch eine Verarbeitungsschaltungsanordnung in die Anweisungen zum Implementieren beliebige der hierin besprochenen Operationen verarbeitet werden. Das Ableiten der Anweisungen 724 aus den Informationen (z. B. Verarbeitung durch die Verarbeitungsschaltungsanordnung) kann beispielsweise 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 anderweitig Manipulieren der Informationen in die Anweisungen 724.
  • In einem Beispiel kann die Ableitung der Anweisungen 724 Zusammenstellung, Kompilierung oder Interpretation der Informationen (z. B. durch die Verarbeitungsschaltungsanordnung) beinhalten, um die Anweisungen 724 aus einem Zwischenformat oder vorverarbeiteten Format, das durch das maschinenlesbare Medium 722 bereitgestellt wird, zu erzeugen. Wenn die Informationen in mehreren Teilen bereitgestellt werden, können sie kombiniert, entpackt und modifiziert werden, um die Anweisungen 724 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 Fernservern befinden. Die Quellcodepakete können verschlüsselt sein, 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 (z. B. in eine Bibliothek, alleinstehende ausführbare Datei usw.) werden und durch die lokale Maschine ausgeführt werden.
  • Die Anweisungen 724 können ferner über ein Kommunikationsnetzwerk 726 unter Verwendung eines Übertragungsmediums über die Netzwerkschnittstellenvorrichtung 720 unter Verwendung eines beliebigen einer Anzahl von Übertragungsprotokollen (z. B. Frame Relay, IP (Internet Protocol), TCP (Transmission Control Protocol), UDP (User Datagram Protocol), HTTP (Hypertext Transfer Protocol) usw.) gesendet oder empfangen werden. Beispielhafte Kommunikationsnetzwerke können ein lokales Netzwerk (LAN), ein Weitbereichsnetzwerk (WAN), ein Paketdatennetzwerk (z. B. das Internet), Mobiltelefonnetzwerke (z. B. zellulare Netzwerke), Plain-Old-Telephone- bzw. POTS-Netzwerke und drahtlose Datennetzwerke (z. B. Institute of Electrical and Electronics Engineers (IEEE) 802.11-Standardfamilie, bekannt als Wi-Fi®, 3 GPP 4G/5G-Drahtloskommunikationsnetze), Bluetooth oder IEEE 802.15.4-Standardfamilie, Peer-to-Peer- bzw. P2P-Netzwerke u.a. umfassen. In einem Beispiel kann die Netzwerkschnittstellenvorrichtung 720 eine oder mehrere physische Buchsen (z. B. Ethernet-, Koaxial- oder Telefonbuchsen) oder eine oder mehrere Antennen zur Verbindung mit dem Kommunikationsnetzwerk 726 aufweisen. In einem Beispiel kann die Netzwerkschnittstellenvorrichtung 720 mehrere Antennen zur drahtlosen Kommunikation unter Verwendung von Techniken mit Einzeleingang-Mehrfachausgang (SIMO, Single-Input Multiple-Output) und/oder Mehrfacheingang-Mehrfachausgang (MIMO, Multiple-Input Multiple-Output) und/oder Mehrfacheingang-Einzelausgang (MISO, Multiple-Input Single-Output) umfassen. Der Begriff „Übertragungsmedium“ ist so aufzufassen, dass er ein beliebiges greifbares Medium umfasst, das zum Speichern, Codieren oder Ausführen von Anweisungen zur Ausführung durch die Maschine 700 imstande ist, und schließt digitale oder analoge Kommunikationssignale oder ein anderes nicht greifbares Medium ein, um die Kommunikation solcher Software zu ermöglichen. Ein Übertragungsmedium ist ein maschinenlesbares Medium.
  • Zusätzliche Beispiele für die vorliegend beschriebenen Verfahrens-, System- und Vorrichtungsausführungsformen umfassen die folgenden, nicht einschränkenden Konfigurationen. Jedes der folgenden nicht einschränkenden Beispiele kann für sich allein stehen oder kann in einer beliebigen Permutation oder Kombination mit einem oder mehreren der anderen Beispiele, die unten oder in der gesamten vorliegenden Offenbarung bereitgestellt werden, kombiniert werden.
  • Beispiel 1 ist ein Verfahren zum Ermöglichen dynamischer Berechnung in informationszentrierten Netzwerken (ICN), wobei das Verfahren Folgendes umfasst: Empfangen, an einem Netzwerkknoten eines ICN-Netzwerks, eines ersten Interessenpakets, das ein Namensfeld, das eine benannte Funktion angibt, und eine oder mehrere Einschränkungen umfasst, die Berechnungsanforderungen für einen Berechnungsknoten zum Ausführen der benannten Funktion spezifizieren, wobei das erste Interessenpaket von einem Client-Knoten empfangen wird; Identifizieren einer Vielzahl von Berechnungsknoten, die Berechnungsanforderungen zum Ausführen der benannten Funktion erfüllen; Weiterleiten des ersten Interessenpakets an zumindest einige der mehreren Berechnungsknoten; Empfangen von Datenpaketen von zumindest einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket; Auswählen eines der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen; und Senden eines zweiten Interessenpakets an den ausgewählten der mehreren Berechnungsknoten, das den ausgewählten der mehreren Berechnungsknoten anweist, die benannte Funktion auszuführen.
  • In Beispiel 2 beinhaltet der Gegenstand aus Beispiel 1, dass das Auswählen des einen der mehreren Berechnungsknoten, der die Berechnungsanforderungen erfüllt, Folgendes umfasst: Weiterleiten jedes der empfangenen Datenpakete an den Client-Knoten; und Empfangen, von dem Client-Knoten, des zweiten Interessenpakets, das den ausgewählten der mehreren Berechnungsknoten spezifiziert.
  • In Beispiel 3 beinhaltet der Gegenstand aus den Beispielen 1-2, dass das Auswählen des einen der mehreren Berechnungsknoten ferner Folgendes umfasst: Auswählen, durch den Netzwerkknoten, des einen der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen und einer gespeicherten Richtlinie des Netzwerkknotens.
  • In Beispiel 4 beinhaltet der Gegenstand aus den Beispielen 1-3, dass das Weiterleiten des ersten Interessenpakets an jeden der mehreren Berechnungsknoten Folgendes umfasst: Speichern eines Eintrags für das erste Interessenpaket in einer Entdeckungspräfixtabelle des Netzwerkknotens, wobei der Eintrag eine Anzahl von Antworten und eine durch das erste Interessenpaket spezifizierte Zeitüberschreitungsperiode enthält; und Dekrementieren der Anzahl von Antworten in der Entdeckungspräfixtabelle des Netzwerkknotens bei Empfang eines Datenpakets als Antwort auf das erste Interessenpaket.
  • In Beispiel 5 beinhaltet der Gegenstand aus Beispiel 4 Löschen des Eintrags in der Entdeckungspräfixtabelle, falls die Zählung null erreicht oder die Zeitüberschreitungsperiode verstrichen ist.
  • In Beispiel 6 beinhaltet der Gegenstand aus den Beispielen 1-5, dass das Empfangen des ersten Interessenpakets Folgendes umfasst: Prüfen mindestens eines Felds des ersten Interessenpakets, um zu bestimmen, ob das Interessenpaket ein Entdeckungsinteressenpaket ist; und Identifizieren des Interessenpakets als ein Entdeckungsinteressepaket basierend auf einem Wert von mindestens einem Feld, wobei das Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket es dem Netzwerkknoten ermöglicht, die Datenpakete als Antwort auf das erste Interessenpaket zu empfangen und weiterzuleiten.
  • In Beispiel 7 beinhaltet der Gegenstand aus Beispiel 6, dass das mindestens eine Feld das Namensfeld ist und dass der Wert ein vordefiniertes Schlüsselwort innerhalb des Namensfeldes ist.
  • In Beispiel 8 beinhaltet der Gegenstand aus den Beispielen 6-7, dass das mindestens eine Feld ein Entdeckungspaketfeld ist, das ein einzelnes Bit umfasst, und dass das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket umfasst, falls das einzelne Bit angibt, dass das erste Interessenpaket ein Entdeckungspaket ist.
  • In Beispiel 9 beinhaltet der Gegenstand aus den Beispielen 1-8 Empfangen, als Antwort auf das zweite Interessenpaket, eines Ergebnisdatenpakets, das einen Namen zum Abrufen von Ergebnissen der ausgeführten benannten Funktion spezifiziert.
  • Beispiel 10 ist ein System zum Ermöglichen dynamischer Berechnung in informationszentrierten Netzwerken (ICN), wobei das System Folgendes umfasst: einen Client-Knoten, der dazu ausgelegt ist, ein erstes Interessenpaket zu erzeugen, um die Ausführung einer benannten Funktion anzufordern, wobei das erste Interessenpaket ein Namensfeld, das die benannte Funktion angibt, und eine oder mehrere Beschränkungen, die Berechnungsanforderungen für einen Berechnungsknoten angeben, umfasst, um die benannte Funktion auszuführen; einen Netzwerkknoten, der ausgelegt ist zum: Empfangen des ersten Interessenpakets; Identifizieren von mehreren Berechnungsknoten, die die Berechnungsanforderungen zum Ausführen der benannten Funktion erfüllen; Weiterleiten des ersten Interessenpakets an zumindest einige der mehreren Berechnungsknoten; Empfangen von Datenpaketen von zumindest einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket; Weiterleiten jedes der empfangenen Datenpakete an den Client-Knoten; und Empfangen, von dem Client-Knoten, eines zweiten Interessenpakets, das einen ausgewählten der mehreren Berechnungsknoten zur Ausführung der benannten Funktion spezifiziert.
  • In Beispiel 11 beinhaltet der Gegenstand aus Beispiel 10, dass der Netzwerkknoten dazu ausgelegt ist, das erste Interessenpaket zu jedem der mehreren Berechnungsknoten weiterzuleiten durch: Speichern eines Eintrags für das erste Interessenpaket in einer Entdeckungspräfixtabelle des Netzwerkknotens, wobei der Eintrag eine Anzahl von Antworten und eine durch das erste Interessenpaket spezifizierte Zeitüberschreitungsperiode enthält; und Dekrementieren der Anzahl von Antworten in der Entdeckungspräfixtabelle des Netzwerkknotens bei Empfang eines Datenpakets als Antwort auf das erste Interessenpaket.
  • In Beispiel 12 beinhaltet der Gegenstand aus Beispiel 11, dass der Netzwerkknoten ferner dazu ausgelegt ist, den Eintrag in der Entdeckungspräfixtabelle zu löschen, falls die Zählung null erreicht oder die Zeitüberschreitungsperiode verstrichen ist.
  • In Beispiel 13 beinhaltet der Gegenstand aus den Beispielen 10-12, dass der Netzwerkknoten dazu ausgelegt ist, das erste Interessenpaket zu empfangen durch: Prüfen mindestens eines Felds des ersten Interessenpakets, um zu bestimmen, ob das Interessenpaket ein Entdeckungsinteressenpaket ist; und Identifizieren des Interessenpakets als ein Entdeckungsinteressepaket basierend auf einem Wert von mindestens einem Feld, wobei das Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket es dem Netzwerkknoten ermöglicht, die Datenpakete als Antwort auf das erste Interessenpaket zu empfangen und weiterzuleiten.
  • In Beispiel 14 beinhaltet der Gegenstand aus Beispiel 13, dass das mindestens eine Feld das Namensfeld ist und dass der Wert ein vordefiniertes Schlüsselwort innerhalb des Namensfeldes ist.
  • In Beispiel 15 beinhaltet der Gegenstand aus den Beispielen 13-14, dass das mindestens eine Feld ein Entdeckungspaketfeld ist, das ein einzelnes Bit umfasst, und dass das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket umfasst, falls das einzelne Bit angibt, dass das erste Interessenpaket ein Entdeckungspaket ist.
  • In Beispiel 16 beinhaltet der Gegenstand aus den Beispielen 10-15, dass der Netzwerkknoten ferner dazu ausgelegt ist, als Antwort auf das zweite Interessenpaket, ein Ergebnisdatenpaket zu empfangen, das einen Namen zum Abrufen von Ergebnissen der ausgeführten benannten Funktion spezifiziert, und das resultierende Datenpaket an den Client-Knoten weiterzuleiten.
  • Beispiel 17 ist ein System zum Ermöglichen dynamischer Berechnung in informationszentrierten Netzwerken (ICN), wobei das System Folgendes umfasst: einen Client-Knoten, der dazu ausgelegt ist, ein erstes Interessenpaket zu erzeugen, um die Ausführung einer benannten Funktion anzufordern, wobei das erste Interessenpaket ein Namensfeld, das die benannte Funktion angibt, und eine oder mehrere Beschränkungen, die Berechnungsanforderungen für einen Berechnungsknoten angeben, umfasst, um die benannte Funktion auszuführen; einen Netzwerkknoten, der ausgelegt ist zum: Empfangen des ersten Interessenpakets; Identifizieren von mehreren Berechnungsknoten, die die Berechnungsanforderungen zum Ausführen der benannten Funktion erfüllen; Weiterleiten des ersten Interessenpakets an zumindest einige der mehreren Berechnungsknoten; Empfangen von Datenpaketen von zumindest einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket; Auswählen eines der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen; und Senden eines zweiten Interessenpakets an den ausgewählten der mehreren Berechnungsknoten zum Ausführen der benannten Funktion.
  • In Beispiel 18 beinhaltet der Gegenstand aus Beispiel 17, dass der Netzwerkknoten dazu ausgelegt ist, das erste Interessenpaket zu jedem der mehreren Berechnungsknoten weiterzuleiten durch: Speichern eines Eintrags für das erste Interessenpaket in einer Entdeckungspräfixtabelle des Netzwerkknotens, wobei der Eintrag eine Anzahl von Antworten und eine durch das erste Interessenpaket spezifizierte Zeitüberschreitungsperiode enthält; und Dekrementieren der Anzahl von Antworten in der Entdeckungspräfixtabelle des Netzwerkknotens bei Empfang eines Datenpakets als Antwort auf das erste Interessenpaket.
  • In Beispiel 19 beinhaltet der Gegenstand aus den Beispielen 17-18, dass der Netzwerkknoten ferner dazu ausgelegt ist, den Eintrag in der Entdeckungspräfixtabelle zu löschen, falls die Zählung null erreicht oder die Zeitüberschreitungsperiode verstrichen ist.
  • In Beispiel 20 beinhaltet der Gegenstand aus den Beispielen 17-19, dass der Netzwerkknoten dazu ausgelegt ist, das erste Interessenpaket zu empfangen durch: Prüfen mindestens eines Felds des ersten Interessenpakets, um zu bestimmen, ob das Interessenpaket ein Entdeckungsinteressenpaket ist; und Identifizieren des Interessenpakets als ein Entdeckungsinteressepaket basierend auf einem Wert von mindestens einem Feld, wobei das Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket es dem Netzwerkknoten ermöglicht, die Datenpakete als Antwort auf das erste Interessenpaket zu empfangen und weiterzuleiten.
  • In Beispiel 21 beinhaltet der Gegenstand aus den Beispielen 19-20, dass das mindestens eine Feld das Namensfeld ist und dass der Wert ein vordefiniertes Schlüsselwort innerhalb des Namensfeldes ist.
  • In Beispiel 22 beinhaltet der Gegenstand aus den Beispielen 19-21, dass das mindestens eine Feld ein Entdeckungspaketfeld ist, das ein einzelnes Bit umfasst, und dass das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket umfasst, falls das einzelne Bit angibt, dass das erste Interessenpaket ein Entdeckungspaket ist.
  • In Beispiel 23 beinhaltet der Gegenstand aus den Beispielen 17-22, dass der Netzwerkknoten ferner dazu ausgelegt ist, als Antwort auf das zweite Interessenpaket, ein Ergebnisdatenpaket zu empfangen, das einen Namen zum Abrufen von Ergebnissen der ausgeführten benannten Funktion spezifiziert, und das resultierende Datenpaket an den Client-Knoten weiterzuleiten.
  • Beispiel 24 ist ein System zum Ermöglichen dynamischer Berechnung in informationszentrierten Netzwerken (ICN), wobei das System Folgendes umfasst: Mittel zum Empfangen eines ersten Interessenpakets, das ein Namensfeld, das eine benannte Funktion angibt, und eine oder mehrere Einschränkungen umfasst, die Berechnungsanforderungen für einen Berechnungsknoten zum Ausführen der benannten Funktion spezifizieren, Mittel zum Identifizieren einer Vielzahl von Berechnungsknoten, die Berechnungsanforderungen zum Ausführen der benannten Funktion erfüllen; Mittel zum Weiterleiten des ersten Interessenpakets an zumindest einige der mehreren Berechnungsknoten; Mittel zum Empfangen von Datenpaketen von zumindest einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket; Mittel zum Auswählen eines der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen; und Mittel zum Senden eines zweiten Interessenpakets an den ausgewählten der mehreren Berechnungsknoten, das den ausgewählten der mehreren Berechnungsknoten anweist, die benannte Funktion auszuführen.
  • In Beispiel 25 beinhaltet der Gegenstand aus Beispiel 24, dass das Mittel zum Auswählen des einen der mehreren Berechnungsknoten, der die Berechnungsanforderungen erfüllt, Folgendes umfasst: Mittel zum Weiterleiten jedes der empfangenen Datenpakete an den Client-Knoten, der das erste Interessenpaket erzeugt hat; und Mittel zum Empfangen, von dem Client-Knoten, des zweiten Interessenpakets, das den ausgewählten der mehreren Berechnungsknoten spezifiziert.
  • In Beispiel 26 beinhaltet der Gegenstand aus den Beispielen 24-25, dass das Mittel zum Weiterleiten des ersten Interessenpakets an jeden der mehreren Berechnungsknoten Folgendes umfasst: Mittel zum Speichern eines Eintrags für das erste Interessenpaket in einer Entdeckungspräfixtabelle des Netzwerkknotens, wobei der Eintrag eine Anzahl von Antworten und eine durch das erste Interessenpaket spezifizierte Zeitüberschreitungsperiode enthält; und Mittel zum Dekrementieren der Anzahl von Antworten in der Entdeckungspräfixtabelle des Netzwerkknotens bei Empfang eines Datenpakets als Antwort auf das erste Interessenpaket.
  • In Beispiel 27 beinhaltet der Gegenstand aus Beispiel 26 Mittel zum Löschen des Eintrags in der Entdeckungspräfixtabelle, falls die Zählung null erreicht oder die Zeitüberschreitungsperiode verstrichen ist.
  • In Beispiel 28 beinhaltet der Gegenstand aus den Beispielen 24-27, dass das Mittel zum Empfangen des ersten Interessenpakets Folgendes umfasst: Mittel zum Prüfen mindestens eines Felds des ersten Interessenpakets, um zu bestimmen, ob das Interessenpaket ein Entdeckungsinteressenpaket ist; und Mittel zum Identifizieren des Interessenpakets als ein Entdeckungsinteressepaket basierend auf einem Wert von mindestens einem Feld, wobei das Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket es dem Netzwerkknoten ermöglicht, die Datenpakete als Antwort auf das erste Interessenpaket zu empfangen und weiterzuleiten.
  • In Beispiel 29 beinhaltet der Gegenstand aus Beispiel 28, dass das mindestens eine Feld das Namensfeld ist und dass der Wert ein vordefiniertes Schlüsselwort innerhalb des Namensfeldes ist.
  • In Beispiel 30 beinhaltet der Gegenstand aus den Beispielen 28-29, dass das mindestens eine Feld ein Entdeckungspaketfeld ist, das ein einzelnes Bit umfasst, und dass das Mittel zum Identifizieren des ersten Interessenpakets als ein Entdeckungspaket Mittel zum Identifizieren des ersten Interessenpakets als ein Entdeckungspaket umfasst, falls das einzelne Bit angibt, dass das erste Interessenpaket ein Entdeckungspaket ist.
  • In Beispiel 31 beinhaltet der Gegenstand aus den Beispielen 24-30 Mittel zum Empfangen, als Antwort auf das zweite Interessenpaket, eines Ergebnisdatenpakets, das einen Namen zum Abrufen von Ergebnissen der ausgeführten benannten Funktion spezifiziert.
  • Beispiel 32 ist eine Einrichtung, die Folgendes umfasst: einen oder mehrere Prozessoren und ein oder mehrere computerlesbare Medien, die Anweisungen umfassen, die, wenn sie von dem einen oder den mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren veranlassen, Operationen auszuführen, die Folgendes umfassen: Empfangen eines ersten Interessenpakets, das ein Namensfeld, das eine benannte Funktion angibt, und eine oder mehrere Einschränkungen umfasst, die Berechnungsanforderungen für einen Berechnungsknoten zum Ausführen der benannten Funktion spezifizieren, wobei das erste Interessenpaket von einem Client-Knoten empfangen wird; Identifizieren einer Vielzahl von Berechnungsknoten, die Berechnungsanforderungen zum Ausführen der benannten Funktion erfüllen; Weiterleiten des ersten Interessenpakets an zumindest einige der mehreren Berechnungsknoten; Empfangen von Datenpaketen von zumindest einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket; Auswählen eines der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen; und Senden eines zweiten Interessenpakets an den ausgewählten der mehreren Berechnungsknoten, das den ausgewählten der mehreren Berechnungsknoten anweist, die benannte Funktion auszuführen.
  • In Beispiel 33 beinhaltet der Gegenstand aus Beispiel 32, dass die Operation des Auswählens des einen der mehreren Berechnungsknoten, der die Berechnungsanforderungen erfüllt, Folgendes umfasst: Weiterleiten jedes der empfangenen Datenpakete an den Client-Knoten; und Empfangen, von dem Client-Knoten, des zweiten Interessenpakets, das den ausgewählten der mehreren Berechnungsknoten spezifiziert.
  • In Beispiel 34 beinhaltet der Gegenstand aus den Beispielen 32-33, dass die Operation des Auswählens des der mehreren Berechnungsknoten das Auswählen des einen der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen und einer gespeicherten Richtlinie umfasst.
  • In Beispiel 35 beinhaltet der Gegenstand aus den Beispielen 32-34, dass die Operation des Weiterleitens des ersten Interessenpakets an jeden der mehreren Berechnungsknoten Folgendes umfasst: Speichern eines Eintrags für das erste Interessenpaket in einer Entdeckungspräfixtabelle des Netzwerkknotens, wobei der Eintrag eine Anzahl von Antworten und eine durch das erste Interessenpaket spezifizierte Zeitüberschreitungsperiode enthält; und Dekrementieren der Anzahl von Antworten in der Entdeckungspräfixtabelle des Netzwerkknotens bei Empfang eines Datenpakets als Antwort auf das erste Interessenpaket.
  • In Beispiel 36 beinhaltet der Gegenstand aus Beispiel 35, dass die Operationen ferner Folgendes umfassen: Löschen des Eintrags in der Entdeckungspräfixtabelle, falls die Zählung null erreicht oder die Zeitüberschreitungsperiode verstrichen ist.
  • In Beispiel 37 beinhaltet der Gegenstand aus den Beispielen 32-36, dass die Operation des Empfangens des ersten Interessenpakets Folgendes umfasst: Prüfen mindestens eines Felds des ersten Interessenpakets, um zu bestimmen, ob das Interessenpaket ein Entdeckungsinteressenpaket ist; und Identifizieren des Interessenpakets als ein Entdeckungsinteressepaket basierend auf einem Wert von mindestens einem Feld, wobei das Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket es dem Netzwerkknoten ermöglicht, die Datenpakete als Antwort auf das erste Interessenpaket zu empfangen und weiterzuleiten.
  • In Beispiel 38 beinhaltet der Gegenstand aus Beispiel 37, dass das mindestens eine Feld das Namensfeld ist und dass der Wert ein vordefiniertes Schlüsselwort innerhalb des Namensfeldes ist.
  • In Beispiel 39 beinhaltet der Gegenstand aus den Beispielen 37-38, dass das mindestens eine Feld ein Entdeckungspaketfeld ist, das ein einzelnes Bit umfasst, und dass das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket umfasst, falls das einzelne Bit angibt, dass das erste Interessenpaket ein Entdeckungspaket ist.
  • In Beispiel 40 beinhaltet der Gegenstand aus den Beispielen 32-39, dass die Operationen ferner Folgendes umfassen: Empfangen, als Antwort auf das zweite Interessenpaket, eines Ergebnisdatenpakets, das einen Namen zum Abrufen von Ergebnissen der ausgeführten benannten Funktion spezifiziert.
  • Eine beispielhafte Umsetzung ist ein Edge-Computing-System, das jeweilige Randverarbeitungsvorrichtungen und Knoten zum Aufrufen oder Durchführen der Operationen der Beispiele 1-40 oder anderer hierin beschriebener Gegenstände beinhaltet.
  • Eine andere beispielhafte Umsetzung ist ein Aggregationsknoten, Netzwerkhubknoten, Gateway-Knoten oder Kerndatenverarbeitungsknoten, innerhalb oder gekoppelt mit einem Edge-Computing-System, betreibbar zum Aufrufen oder Durchführen der Operationen der Beispiele 1-40 oder anderer hierin beschriebener Gegenstände.
  • Eine andere beispielhafte Umsetzung ist ein Zugangspunkt, eine Basisstation, eine Land- oder Stadtstraßenrandeinheit oder eine Vor-Ort-Einheit, innerhalb oder gekoppelt mit einem Edge-Computing-System, betreibbar zum Aufrufen oder Durchführen der Operationen der Beispiele 1-40 oder anderer hierin beschriebener Gegenstände.
  • Eine andere beispielhafte Umsetzung ist ein Randbereitstellungsknoten, ein Dienstorchestrierungsknoten, ein Anwendungsorchestrierungsknoten oder ein mandantenfähiger Verwaltungsknoten, innerhalb oder gekoppelt mit einem Edge-Computing-System, betreibbar zum Aufrufen oder Durchführen der Operationen der Beispiele 1-40 oder anderer hierin beschriebener Gegenstände.
  • Eine andere beispielhafte Umsetzung ist ein Randknoten, der einen Randbereitstellungsdienst, eine Anwendung oder einen Dienstorchestrierungsdienst, einen Virtuelle-Maschine-Einsatz, einen Container-Einsatz, einen Funktionseinsatz und eine Berechnungsverwaltung innerhalb oder gekoppelt mit einem Edge-Computing-System betreibt, das betreibbar ist, um die Operationen der Beispiele 1-40 oder andere hierin beschriebene Gegenstände aufzurufen oder durchzuführen.
  • Eine andere beispielhafte Umsetzung ist ein Edge-Computing-System, das Aspekte von Netzwerkfunktionen, Beschleunigungsfunktionen, Beschleunigungshardware, Speicherhardware oder Berechnungshardwareressourcen beinhaltet, betreibbar zum Aufrufen oder Durchführen der hier besprochenen Verwendungsfälle unter Verwendung der Beispiele 1-40 oder anderer hier beschriebener Gegenstände.
  • Eine andere beispielhafte Umsetzung ist ein Edge-Computing-System, das angepasst ist zum Unterstützen von Client-Mobilität, Fahrzeug-zu-Fahrzeug- (V2V), Fahrzeug-zu-allem-(V2X) oder Fahrzeug-zu-Infrastruktur-Szenarien (V21) und optional zum Betreiben, gemäß ETSI (Europäisches Institut für Telekommunikationsnormen), von Edge-Computing-Spezifikationen mit Mehrfachzugriff (MEC), betreibbar zum Aufrufen oder Durchführen der hierin besprochenen Verwendungsfälle unter Verwendung der Beispiele 1-40 oder anderer hierin beschriebener Gegenstände.
  • Eine andere beispielhafte Umsetzung ist ein Edge-Computing-System, das für mobile drahtlose Kommunikationen angepasst ist, einschließlich Auslegungen gemäß 3GPP-4G/LTE- oder 5G-Netzwerkfähigkeiten, betreibbar zum Aufrufen oder Durchführen der hier besprochenen Verwendungsfälle unter Verwendung der Beispiele 1-40 oder anderer hier beschriebener Gegenstände.
  • Eine andere beispielhafte Umsetzung ist ein Edge-Computing-Knoten, der in einer Schicht eines Edge-Computing-Netzwerks oder Edge-Computing-Systems als ein Aggregationsknoten, Netzwerkhubknoten, Gateway-Knoten oder Kerndatenverarbeitungsknoten betreibbar ist, der in einer Close-Edge-, Local-Edge-, Enterprise-Edge-, On-Premise-Edge-, Near-Edge-, Middle-Edge- oder Far-Edge-Netzwerkschicht betreibbar ist oder in einem Satz von Knoten mit gemeinsamen Latenz-, Timing- oder Entfernungscharakteristiken betreibbar ist, betreibbar zum Aufrufen oder Durchführen der hier besprochenen Verwendungsfälle unter Verwendung der Beispiele 1-40 oder anderer hier beschriebener Gegenstände.
  • Eine andere beispielhafte Umsetzung ist Netzwerkhardware, Beschleunigungshardware, Speicherhardware oder Berechnungshardware mit darauf implementierten Fähigkeiten, die in einem Edge-Computing-System betreibbar sind zum Aufrufen oder Durchführen der hier besprochenen Verwendungsfälle unter Verwendung der Beispiele 1-40 oder anderer hier beschriebener Gegenstände.
  • Eine andere beispielhafte Umsetzung ist ein Edge-Computing-System, das dazu ausgelegt ist, Verwendungsfälle auszuführen, die von einem oder mehreren der Folgenden bereitgestellt werden: Berechnungs-Offload, Daten-Caching, Videoverarbeitung, Netzwerkfunktionsvirtualisierung, Funkzugangsnetzverwaltung, Augmented Reality, Virtual Reality, industrielle Automatisierung, Einzelhandelsdienste, Herstellungsoperationen, intelligente Gebäude, Energiemanagement, autonomes Fahren, Fahrzeugassistenz, Fahrzeugkommunikation, Internet-der-Dinge-Operationen, Objektdetektion, Spracherkennung, Gesundheitspflegeanwendungen, Spieleanwendungen oder beschleunigte Inhaltsverarbeitung unter Verwendung von 1-40 oder anderen hierin beschriebenen Gegenständen.
  • Eine andere beispielhafte Umsetzung ist eine Vorrichtung eines Edge-Computing-Systems, das Folgendes umfasst: einen oder mehrere Prozessoren und ein oder mehrere computerlesbare Medien, die Anweisungen umfassen, die, wenn sie durch den einen oder die mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren veranlassen zum Aufrufen oder Durchführen der hier besprochenen Verwendungsfälle unter Verwendung der Beispiele 1-40 oder anderer hier beschriebener Gegenstände.
  • Eine andere beispielhafte Umsetzung ist ein oder mehrere computerlesbare Speichermedien, die Anweisungen umfassen, um eine elektronische Vorrichtung eines Edge-Computing-Systems zu veranlassen, bei Ausführung der Anweisungen durch einen oder mehrere Prozessoren der elektronischen Vorrichtung die hier besprochenen Verwendungsfälle unter Verwendung der Beispiele 1-40 oder andere hier beschriebene Gegenstände aufzurufen oder durchzuführen.
  • Eine andere beispielhafte Umsetzung ist eine Einrichtung eines Edge-Computing-Systems, die Mittel, Logik, Module oder Schaltungsanordnungen zum Aufrufen oder Durchführen der hier besprochenen Verwendungsfälle unter Verwendung der Beispiele 1-40 oder anderer hier beschriebener Gegenstände umfasst.
  • Obwohl diese Umsetzungen unter Bezugnahme auf spezifische beispielhafte Aspekte beschrieben wurden, versteht es sich, dass verschiedene Modifikationen und Änderungen an diesen Aspekten vorgenommen werden können, ohne von dem breiteren Schutzumfang der vorliegenden Offenbarung abzuweichen. Viele der hierin beschriebenen Anordnungen und Prozesse können in Kombination oder in parallelen Umsetzungen verwendet werden, um eine größere Bandbreite/einen größeren Durchsatz bereitzustellen und Randdienstauswahlen zu unterstützen, die den zu bedienenden Randsystemen zur Verfügung gestellt werden können. Entsprechend sind die Beschreibung und die Zeichnungen in einem veranschaulichenden und nicht in einem einschränkenden Sinne aufzufassen. Die begleitenden Zeichnungen, die einen Teil hiervon bilden, zeigen spezielle Aspekte, in denen der Gegenstand ausgeführt werden kann, als Veranschaulichung und nicht als Beschränkung. Die veranschaulichten Aspekte sind hinreichend detailliert beschrieben, um einen Fachmann zu befähigen, die hier offenbarten Lehren auszuüben. Andere Aspekte können genutzt und aus diesen abgeleitet werden, so dass strukturelle und logische Substitutionen und Änderungen vorgenommen werden können, ohne den Schutzumfang dieser Offenbarung zu verlassen. Diese ausführliche Beschreibung ist daher nicht in einem beschränkenden Sinn aufzufassen und der Schutzumfang verschiedener Aspekte ist nur durch die angehängten Ansprüche, zusammen mit dem vollen Umfang von Äquivalenten, zu denen solche Ansprüche berechtigt sind, definiert.
  • Auf solche Aspekte des Erfindungsgegenstands kann hier einzeln und/oder gemeinsam Bezug genommen werden, lediglich der Einfachheit halber und ohne zu beabsichtigen, den Schutzumfang dieser Anmeldung willkürlich auf einen beliebigen einzelnen Aspekt oder einen beliebigen einzelnen Erfindungsgedanken zu beschränken, sofern tatsächlich mehr als einer offenbart ist. Obwohl spezielle Aspekte hierin veranschaulicht und beschrieben wurden, sollte man daher verstehen, dass eine beliebige Einrichtung, die berechnet ist, um denselben Zweck zu erfüllen, die gezeigten speziellen Ausführungsformen ersetzen kann. Diese Offenbarung soll beliebige und alle Anpassungen oder Variationen verschiedener Aspekte abdecken. Kombinationen der obigen Aspekte und andere Aspekte, die hierin nicht speziell beschrieben sind, ergeben sich für Fachleute bei der Durchsicht der oben stehenden Beschreibung.
  • Die vorstehende ausführliche Beschreibung beinhaltet Bezüge auf die begleitenden Zeichnungen, welche einen Teil der ausführlichen Beschreibung bilden. Die Zeichnungen zeigen veranschaulichend spezielle 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 eine beliebige Kombination oder Permutation 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 hierin gezeigte oder beschriebene Beispiele (oder eines oder mehrerer Aspekte von diesen).
  • In diesem Dokument werden die Begriffe „ein“ oder „eine“ verwendet, wie es in Patentdokumenten üblich ist, um ein oder mehr als eines unabhängig von anderen Instanzen oder Verwendungen von „mindestens ein“ oder „ein oder mehr“ einzuschließen. In diesem Dokument wird der Begriff „oder“ verwendet, um sich auf ein nicht ausschließliches oder zu beziehen, derart, dass „A oder B“ sowohl „A, aber nicht B“, „B, aber nicht A“ und „A und B“ einschließt, sofern nicht anders angegeben wird. In den angehängten 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 enthält, die nach solch einem Begriff in einem Anspruch aufgelistet sind, werden noch als in den Schutzbereich dieses Anspruchs fallend angesehen. Außerdem sind in den folgenden Ansprüchen die Begriffe „erste/r“, „zweite/r“, „dritte/r“ usw. lediglich als Bezeichnungen verwendet und sollen keine zahlenmäßigen Anforderungen an ihre Objekte darstellen.
  • Die vorstehende Beschreibung soll veranschaulichend sein und nicht einschränkend. Zum Beispiel können die oben beschriebenen Beispiele (oder einer oder mehrere ihrer Aspekte) in Kombination miteinander verwendet werden. Andere Ausführungsformen können verwendet werden, wie zum Beispiel von einem Durchschnittsfachmann nach Durchsicht der obigen 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. Auch können in der vorstehenden ausführlichen Beschreibung verschiedene Merkmale zusammengefasst sein, um die Offenbarung zu optimieren. Dies sollte nicht so gedeutet werden, dass ein nicht beanspruchtes offenbartes Merkmal wesentlich für irgendeinen Anspruch ist. Stattdessen kann ein erfindungsgemäßer Gegenstand in weniger als allen Merkmalen einer bestimmten offenbarten Ausführungsform liegen. Dementsprechend werden die folgenden Ansprüche hiermit in die ausführliche Beschreibung aufgenommen, wobei jeder Anspruch für sich alleine als separate Ausführungsform steht. Der Schutzumfang der Erfindung sollte unter Bezugnahme auf die angehängten Ansprüche zusammen mit dem vollen Schutzumfang von Äquivalenten, zu denen diese Ansprüche berechtigt sind, bestimmt werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 62/870971 [0001]
    • US 63/046952 [0001]

Claims (33)

  1. Verfahren zum Ermöglichen einer dynamischen Berechnung in informationszentrierten Netzwerken (ICN), wobei das Verfahren Folgendes umfasst: Empfangen, an einem Netzwerkknoten eines ICN-Netzwerks, eines ersten Interessenpakets, das ein Namensfeld, das eine benannte Funktion angibt, und eine oder mehrere Einschränkungen umfasst, die Berechnungsanforderungen für einen Berechnungsknoten angeben, um die benannte Funktion auszuführen, wobei das erste Interessenpaket von einem Client-Knoten empfangen wird; Identifizieren von mehreren Berechnungsknoten, die die Berechnungsanforderungen zum Ausführen der benannten Funktion erfüllen; Weiterleiten des ersten Interessenpakets an mindestens einige der mehreren Berechnungsknoten; Empfangen von Datenpaketen von zumindest einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket; Auswählen eines der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen; und Senden eines zweiten Interessenpakets an den ausgewählten der mehreren Berechnungsknoten, das den ausgewählten der mehreren Berechnungsknoten anweist, die benannte Funktion auszuführen.
  2. Verfahren nach Anspruch 1, wobei das Auswählen des einen der mehreren Berechnungsknoten, die die Berechnungsanforderungen erfüllen, Folgendes umfasst: Weiterleiten jedes der empfangenen Datenpakete an den Client-Knoten; und Empfangen, von dem Client-Knoten, des zweiten Interessenpakets, das den ausgewählten der mehreren Berechnungsknoten spezifiziert.
  3. Verfahren nach Anspruch 1, wobei das Auswählen des einen der mehreren Berechnungsknoten ferner Folgendes umfasst: Auswählen, durch den Netzwerkknoten, des einen der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen und einer gespeicherten Richtlinie des Netzwerkknotens.
  4. Verfahren nach Anspruch 1, wobei das Weiterleiten des ersten Interessenpakets an jeden der mehreren Berechnungsknoten Folgendes umfasst: Speichern eines Eintrags für das erste Interessenpaket in einer Entdeckungspräfixtabelle des Netzwerkknotens, wobei der Eintrag eine Anzahl von Antworten und eine durch das erste Interessenpaket spezifizierte Zeitüberschreitungsperiode umfasst; und Dekrementieren der Anzahl von Antworten in der Entdeckungspräfixtabelle des Netzwerkknotens bei Empfang eines Datenpakets als Antwort auf das erste Interessenpaket.
  5. Verfahren nach Anspruch 4, das ferner Folgendes umfasst: Löschen des Eintrags in der Entdeckungspräfixtabelle, falls die Zählung null erreicht oder die Zeitüberschreitungsperiode verstrichen ist.
  6. Verfahren nach Anspruch 1, wobei das Empfangen des ersten Interessenpakets Folgendes umfasst: Überprüfen mindestens eines Feldes des ersten Interessenpakets, um zu bestimmen, ob das Interessenpaket ein Entdeckungsinteressenpaket ist; und Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket basierend auf einem Wert von mindestens einem Feld, wobei das Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket es dem Netzwerkknoten ermöglicht, die Datenpakete als Antwort auf das erste Interessenpaket zu empfangen und weiterzuleiten.
  7. Verfahren nach Anspruch 6, wobei das mindestens eine Feld das Namensfeld ist und wobei der Wert ein vordefiniertes Schlüsselwort innerhalb des Namensfeldes ist.
  8. Verfahren nach Anspruch 6, wobei das mindestens eine Feld ein Entdeckungspaketfeld ist, das ein einzelnes Bit umfasst, und wobei das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket umfasst, falls das einzelne Bit angibt, dass das erste Interessenpaket ein Entdeckungspaket ist.
  9. Verfahren nach Anspruch 1, ferner umfassend Empfangen, als Antwort auf das zweite Interessenpaket, eines Ergebnisdatenpakets, das einen Namen zum Abrufen von Ergebnissen der ausgeführten benannten Funktion spezifiziert.
  10. System zum Ermöglichen einer dynamischen Berechnung in informationszentrierten Netzwerken (ICN), wobei das System Folgendes umfasst: einen Client-Knoten, der ausgelegt ist zum Erzeugen eines ersten Interessenpakets, um die Ausführung einer benannten Funktion anzufordern, wobei das erste Interessenpaket ein Namensfeld, das die benannte Funktion anzeigt, und eine oder mehrere Beschränkungen umfasst, die Berechnungsanforderungen für einen Berechnungsknoten spezifizieren, um die benannte Funktion auszuführen; einen Netzwerkknoten, der ausgelegt ist zum: Empfangen des ersten Interessenpakets; Identifizieren von mehreren Berechnungsknoten, die die Berechnungsanforderungen zum Ausführen der benannten Funktion erfüllen; Weiterleiten des ersten Interessenpakets an mindestens einige der mehreren Berechnungsknoten; Empfangen von Datenpaketen von zumindest einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket; Weiterleiten jedes der empfangenen Datenpakete an den Client-Knoten; und Empfangen, von dem Client-Knoten, eines zweiten Interessenpakets, das einen ausgewählten der mehreren Berechnungsknoten zur Ausführung der benannten Funktion spezifiziert.
  11. System nach Anspruch 10, wobei der Netzwerkknoten ausgelegt ist zum Weiterleiten des ersten Interessenpakets an jeden der mehreren Berechnungsknoten durch: Speichern eines Eintrags für das erste Interessenpaket in einer Entdeckungspräfixtabelle des Netzwerkknotens, wobei der Eintrag eine Anzahl von Antworten und eine durch das erste Interessenpaket spezifizierte Zeitüberschreitungsperiode umfasst; und Dekrementieren der Anzahl von Antworten in der Entdeckungspräfixtabelle des Netzwerkknotens bei Empfang eines Datenpakets als Antwort auf das erste Interessenpaket.
  12. System nach Anspruch 11, wobei der Netzwerkknoten ferner ausgelegt ist zum Löschen des Eintrags in der Entdeckungspräfixtabelle, falls die Zählung null erreicht oder die Zeitüberschreitungsperiode verstrichen ist.
  13. System nach einem der Ansprüche 10, wobei der Netzwerkknoten ausgelegt ist zum Empfangen des ersten Interessenpakets durch: Überprüfen mindestens eines Feldes des ersten Interessenpakets, um zu bestimmen, ob das Interessenpaket ein Entdeckungsinteressenpaket ist; und Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket basierend auf einem Wert von mindestens einem Feld, wobei das Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket es dem Netzwerkknoten ermöglicht, die Datenpakete als Antwort auf das erste Interessenpaket zu empfangen und weiterzuleiten.
  14. System nach Anspruch 13, wobei das mindestens eine Feld das Namensfeld ist und wobei der Wert ein vordefiniertes Schlüsselwort innerhalb des Namensfelds ist.
  15. System nach Anspruch 13, wobei das mindestens eine Feld ein Entdeckungspaketfeld ist, das ein einzelnes Bit umfasst, und wobei das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket umfasst, falls das einzelne Bit angibt, dass das erste Interessenpaket ein Entdeckungspaket ist.
  16. System nach einem der Ansprüche 10, wobei der Netzwerkknoten ferner ausgelegt ist zum Empfangen, als Antwort auf das zweite Interessenpaket, eines Ergebnisdatenpakets, das einen Namen zum Abrufen von Ergebnissen der ausgeführten benannten Funktion spezifiziert, und Weiterleiten des resultierenden Datenpakets an den Client-Knoten.
  17. System zum Ermöglichen einer dynamischen Berechnung in informationszentrierten Netzwerken (ICN), wobei das System Folgendes umfasst: einen Client-Knoten, der ausgelegt ist zum Erzeugen eines ersten Interessenpakets, um die Ausführung einer benannten Funktion anzufordern, wobei das erste Interessenpaket ein Namensfeld, das die benannte Funktion anzeigt, und eine oder mehrere Beschränkungen umfasst, die Berechnungsanforderungen für einen Berechnungsknoten spezifizieren, um die benannte Funktion auszuführen; einen Netzwerkknoten, der ausgelegt ist zum: Empfangen des ersten Interessenpakets; Identifizieren von mehreren Berechnungsknoten, die die Berechnungsanforderungen zum Ausführen der benannten Funktion erfüllen; Weiterleiten des ersten Interessenpakets an mindestens einige der mehreren Berechnungsknoten; Empfangen von Datenpaketen von zumindest einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket; Auswählen eines der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen; und Senden eines zweiten Interessenpakets an den ausgewählten der mehreren Berechnungsknoten, das den ausgewählten der mehreren Berechnungsknoten anweist, die benannte Funktion auszuführen.
  18. System nach Anspruch 17, wobei der Netzwerkknoten ausgelegt ist zum Weiterleiten des ersten Interessenpakets an jeden der mehreren Berechnungsknoten durch: Speichern eines Eintrags für das erste Interessenpaket in einer Entdeckungspräfixtabelle des Netzwerkknotens, wobei der Eintrag eine Anzahl von Antworten und eine durch das erste Interessenpaket spezifizierte Zeitüberschreitungsperiode umfasst; und Dekrementieren der Anzahl von Antworten in der Entdeckungspräfixtabelle des Netzwerkknotens bei Empfang eines Datenpakets als Antwort auf das erste Interessenpaket.
  19. System nach Anspruch 17, wobei der Netzwerkknoten ferner ausgelegt ist zum Löschen des Eintrags in der Entdeckungspräfixtabelle, falls die Zählung null erreicht oder die Zeitüberschreitungsperiode verstrichen ist.
  20. System nach einem der Ansprüche 19, wobei der Netzwerkknoten ausgelegt ist zum Empfangen des ersten Interessenpakets durch: Überprüfen mindestens eines Feldes des ersten Interessenpakets, um zu bestimmen, ob das Interessenpaket ein Entdeckungsinteressenpaket ist; und Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket basierend auf einem Wert von mindestens einem Feld, wobei das Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket es dem Netzwerkknoten ermöglicht, die Datenpakete als Antwort auf das erste Interessenpaket zu empfangen und weiterzuleiten.
  21. System nach einem der Ansprüche 19, wobei das mindestens eine Feld das Namensfeld ist und wobei der Wert ein vordefiniertes Schlüsselwort innerhalb des Namensfelds ist.
  22. System nach Anspruch 19, wobei das mindestens eine Feld ein Entdeckungspaketfeld ist, das ein einzelnes Bit umfasst, und wobei das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket das Identifizieren des ersten Interessenpakets als ein Entdeckungspaket umfasst, falls das einzelne Bit angibt, dass das erste Interessenpaket ein Entdeckungspaket ist.
  23. System nach einem der Ansprüche 17, wobei der Netzwerkknoten ferner ausgelegt ist zum Empfangen, als Antwort auf das zweite Interessenpaket, eines Ergebnisdatenpakets, das einen Namen zum Abrufen von Ergebnissen der ausgeführten benannten Funktion spezifiziert, und Weiterleiten des resultierenden Datenpakets an den Client-Knoten.
  24. System zum Ermöglichen einer dynamischen Berechnung in informationszentrierten Netzwerken (ICN), wobei das System Folgendes umfasst: Mittel zum Empfangen eines ersten Interessenpakets, umfassend ein Namensfeld, das eine benannte Funktion anzeigt, und eine oder mehrere Beschränkungen umfasst, die Berechnungsanforderungen für einen Berechnungsknoten spezifizieren, um die benannte Funktion auszuführen; Mittel zum Identifizieren von mehreren Berechnungsknoten, die die Berechnungsanforderungen zum Ausführen der benannten Funktion erfüllen; Mittel zum Weiterleiten des ersten Interessenpakets an mindestens einige der mehreren Berechnungsknoten; Mittel zum Empfangen von Datenpaketen von zumindest einigen der mehreren Berechnungsknoten als Antwort auf das erste Interessenpaket; Mittel zum Auswählen eines der mehreren Berechnungsknoten basierend auf den empfangenen Datenpaketen; und Mittel zum Senden eines zweiten Interessenpakets an den ausgewählten der mehreren Berechnungsknoten, das den ausgewählten der mehreren Berechnungsknoten anweist, die benannte Funktion auszuführen.
  25. System nach Anspruch 24, wobei das Mittel zum Auswählen des einen der mehreren Berechnungsknoten, die die Berechnungsanforderungen erfüllen, Folgendes umfasst: Mittel zum Weiterleiten jedes der empfangenen Datenpakete an einen Client-Knoten, der das erste Interessenpaket erzeugt hat; und Mittel zum Empfangen, von dem Client-Knoten, des zweiten Interessenpakets, das den ausgewählten der mehreren Berechnungsknoten spezifiziert.
  26. System nach Anspruch 24, wobei das Mittel zum Weiterleiten des ersten Interessenpakets an jeden der mehreren Berechnungsknoten Folgendes umfasst: Mittel zum Speichern eines Eintrags für das erste Interessenpaket in einer Entdeckungspräfixtabelle des Netzwerkknotens, wobei der Eintrag eine Anzahl von Antworten und eine durch das erste Interessenpaket spezifizierte Zeitüberschreitungsperiode umfasst; und Mittel zum Dekrementieren der Anzahl von Antworten in der Entdeckungspräfixtabelle des Netzwerkknotens bei Empfang eines Datenpakets als Antwort auf das erste Interessenpaket.
  27. System nach Anspruch 26, das ferner Folgendes umfasst: Mittel zum Löschen des Eintrags in der Entdeckungspräfixtabelle, falls die Zählung null erreicht oder die Zeitüberschreitungsperiode verstrichen ist.
  28. System nach einem der Ansprüche 24, wobei das Mittel zum Empfangen des ersten Interessenpakets Folgendes umfasst: Mittel zum Überprüfen mindestens eines Feldes des ersten Interessenpakets, um zu bestimmen, ob das Interessenpaket ein Entdeckungsinteressenpaket ist; und Mittel zum Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket basierend auf einem Wert von mindestens einem Feld, wobei das Identifizieren des Interessenpakets als ein Entdeckungsinteressenpaket es dem Netzwerkknoten ermöglicht, die Datenpakete als Antwort auf das erste Interessenpaket zu empfangen und weiterzuleiten.
  29. System nach Anspruch 28, wobei das mindestens eine Feld das Namensfeld ist und wobei der Wert ein vordefiniertes Schlüsselwort innerhalb des Namensfelds ist.
  30. System nach Anspruch 28, wobei das mindestens eine Feld ein Entdeckungspaketfeld ist, das ein einzelnes Bit umfasst, und wobei das Mittel zum Identifizieren des ersten Interessenpakets als ein Entdeckungspaket das Mittel zum Identifizieren des ersten Interessenpakets als ein Entdeckungspaket umfasst, falls das einzelne Bit angibt, dass das erste Interessenpaket ein Entdeckungspaket ist.
  31. System nach Anspruch 24, ferner umfassend Mittel zum Empfangen, als Antwort auf das zweite Interessenpaket, eines Ergebnisdatenpakets, das einen Namen zum Abrufen von Ergebnissen der ausgeführten benannten Funktion spezifiziert.
  32. Router in einem informationszentrierten Netzwerk, wobei der Router Folgendes umfasst: einen oder mehrere Prozessoren und ein oder mehrere computerlesbare Medien, die Anweisungen umfassen, die, wenn sie von dem einen oder den mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren veranlassen, das Verfahren nach einem der Ansprüche 1-9 durchzuführen.
  33. Netzwerkknoten eines informationszentrierten Netzwerks, wobei der Netzwerkknoten Folgendes umfasst: einen oder mehrere Prozessoren und eine oder mehrere Speichervorrichtungen, die Anweisungen speichern, die, wenn sie von dem einen oder den mehreren Prozessoren ausgeführt werden, den einen oder die mehreren Prozessoren veranlassen, das Verfahren nach einem der Ansprüche 1-9 durchzuführen.
DE112020003252.3T 2019-07-05 2020-07-02 Orchestrierung von dynamischer berechnung in informationszentrierten netzwerken Pending DE112020003252T5 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962870971P 2019-07-05 2019-07-05
US62/870,971 2019-07-05
US202063046952P 2020-07-01 2020-07-01
US63/046,952 2020-07-01
PCT/US2020/040761 WO2021007115A1 (en) 2019-07-05 2020-07-02 Information centric network dynamic compute orchestration

Publications (1)

Publication Number Publication Date
DE112020003252T5 true DE112020003252T5 (de) 2022-04-07

Family

ID=74114207

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020003252.3T Pending DE112020003252T5 (de) 2019-07-05 2020-07-02 Orchestrierung von dynamischer berechnung in informationszentrierten netzwerken

Country Status (4)

Country Link
US (1) US11792113B2 (de)
CN (1) CN114521321A (de)
DE (1) DE112020003252T5 (de)
WO (1) WO2021007115A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11792113B2 (en) 2019-07-05 2023-10-17 Intel Corporation Information centric network dynamic compute orchestration

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11659066B2 (en) * 2019-09-17 2023-05-23 Intel Corporation Dynamic computation in an information centric network
CN116305220B (zh) * 2023-05-18 2023-08-08 天云融创数据科技(北京)有限公司 一种基于大数据的资源数据处理方法及系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2785017B1 (de) 2013-03-28 2018-07-11 Alcatel Lucent Inhaltzentriertes Netzwerken
US9577949B2 (en) * 2014-08-11 2017-02-21 Cisco Technology, Inc. Maintaining named data networking (NDN) flow balance with highly variable data object sizes
EP3032803B1 (de) * 2014-12-12 2021-08-25 Tata Consultancy Services Limited Lieferung angeforderter inhalte in einer informationszentrierten überlagerungsnetzwerkarchitektur
US10164910B2 (en) * 2016-07-13 2018-12-25 Futurewei Technologies, Inc. Method and apparatus for an information-centric MAC layer
US10356197B2 (en) * 2016-11-21 2019-07-16 Intel Corporation Data management in an information-centric network
US10924540B2 (en) * 2018-04-03 2021-02-16 Cisco Technology, Inc. Lightweight naming scheme for aggregating requests in information-centric networking
WO2020176890A1 (en) * 2019-02-28 2020-09-03 Apple Inc. Methods and systems for compression and decompression of information centric networking names at the packet data convergence protocol (pdcp)
WO2021007115A1 (en) 2019-07-05 2021-01-14 Intel Corporation Information centric network dynamic compute orchestration

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11792113B2 (en) 2019-07-05 2023-10-17 Intel Corporation Information centric network dynamic compute orchestration

Also Published As

Publication number Publication date
WO2021007115A1 (en) 2021-01-14
US20220158934A1 (en) 2022-05-19
CN114521321A (zh) 2022-05-20
US11792113B2 (en) 2023-10-17

Similar Documents

Publication Publication Date Title
US10681167B2 (en) Distributed computing resources in an information centric network
CN109643358B (zh) 跨租户数据泄漏隔离
US11252119B2 (en) Message logging using two-stage message logging mechanisms
DE112020003252T5 (de) Orchestrierung von dynamischer berechnung in informationszentrierten netzwerken
EP3758334B1 (de) Optimierung des betriebs in icn-basierten netzwerken
US20150007199A1 (en) Method and system for extending application programming interfaces
CN104322010B (zh) 用于比较配置文件和生成校正命令的系统和方法
CN103403707B (zh) 用于数据库代理请求交换的系统和方法
CN112534777B (zh) 基于人工智能的分层业务感知引擎
US9608916B2 (en) Collaborative application classification
CN105981331B (zh) 用来支持流量政策执行的实体处理注册表
US9871850B1 (en) Enhanced browsing using CDN routing capabilities
DE202014010930U1 (de) Zugriff auf Objekte in ausgelagerten Speichern
US8458799B2 (en) Method and apparatus for providing a scalable service platform using a network cache
CN102217273A (zh) 用于应用流畅性策略的系统和方法
DE202020005715U1 (de) Dynamische Maskierung geteilter Datenobjekte
JP7065221B2 (ja) パーソナルユーザデバイスおよびデータ分配デバイスを用いたストレージシステムの実現
DE102020204846A1 (de) Inhaltsablieferung auf namenraumrichtlinien-basis in informationszentrischen netzwerken
US20220014466A1 (en) Information centric network tunneling
CN105074688B (zh) 使用对等节点图的基于流的数据去重复
DE112021006319T5 (de) Hochverfügbare kryptografische schlüssel
US11023617B2 (en) System and method for privacy policy enforcement
US20130054691A1 (en) Flexible rule based multi-protocol peer-to-peer caching
DE102020203647A1 (de) Approximations-berechnungszwischenspeicherung in informationszentrischen netzwerken
Li et al. Naming in the Internet of Things

Legal Events

Date Code Title Description
R083 Amendment of/additions to inventor(s)