DE60124722T2 - Verfahren zur übertragung eines mobilen agenten in einem netzwerk; sender, empfänger und zugehöriger mobiler agent - Google Patents

Verfahren zur übertragung eines mobilen agenten in einem netzwerk; sender, empfänger und zugehöriger mobiler agent Download PDF

Info

Publication number
DE60124722T2
DE60124722T2 DE60124722T DE60124722T DE60124722T2 DE 60124722 T2 DE60124722 T2 DE 60124722T2 DE 60124722 T DE60124722 T DE 60124722T DE 60124722 T DE60124722 T DE 60124722T DE 60124722 T2 DE60124722 T2 DE 60124722T2
Authority
DE
Germany
Prior art keywords
mobile agent
node
transmitting
data
agent
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.)
Expired - Fee Related
Application number
DE60124722T
Other languages
English (en)
Other versions
DE60124722D1 (de
Inventor
Antoine Thales Intellectual Property DELAUTRE
Sebastien Thales Intellectual Prop. GILLARDEAU
Pascal Thales Intellectual Property RUIZ
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.)
Thales SA
Original Assignee
Thales SA
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 Thales SA filed Critical Thales SA
Publication of DE60124722D1 publication Critical patent/DE60124722D1/de
Application granted granted Critical
Publication of DE60124722T2 publication Critical patent/DE60124722T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • G06F9/4862Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration the task being a mobile agent, i.e. specifically designed to migrate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/323Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the physical layer [OSI layer 1]

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)
  • Treatments For Attaching Organic Compounds To Fibrous Goods (AREA)
  • Radar Systems Or Details Thereof (AREA)

Description

  • Die Erfindung betrifft die Übertragung eines in einem Netz ausführbaren Codes.
  • Eine Lösung ist die Verwendung eines mobilen Agenten. Der mobile Agent enthält einen ausführbaren Code, Daten und den Ausführungszustand. Er wird als mobil bezeichnet, da er in der Lage ist, sich selbst auszuführen und autonom zu verschiedenen Zeitpunkten zu verschiedenen Knoten eines Netzes zu wandern. Die Übertragung nicht nur eines ausführbaren Codes C, sondern auch der Elemente wie insbesondere der Daten D, einer Durchlaufstrecke P, ermöglicht es dem Code C, autonom ausführbar zu sein.
  • Allgemein wird der mobile Agent von einem Knoten zum anderen in Form einer Datei übertragen, zum Beispiel einer Code-Datei, die durch die Kompilierung des Quellencodes erzeugt wird, die zu einem ausführbaren oder interpretierbaren Code führt.
  • Die Patentanmeldung EP 0 961 205 schlägt einen solchen mobilen Agenten vor: Der Objektcode wird zunächst in einen MPU-Code und dann in einen Zwischencode konvertiert, d.h. in einen systemeigenen Code, der als ein ausführbarer Code sowohl für eine Kommunikationsvorrichtung mit einer üblichen MPU als auch mit einer virtuellen JAVA-Maschine verwendet werden kann, ehe er zu einer Liste von Durchläufen hinzugefügt wird, um den ausgegebenen Agenten zu bilden.
  • Die Veröffentlichung von Kulkarni "Implementation of a prototype active network" open architectures and network programming, 1998 IEEE San Francisco, CA, USA 3–4 April 1998, New York, NY, USA, IEEE, US, 3. April 1998 Seiten 130–142 XP010272580, betrifft die Implementierung eines aktiven Netzes, bei dem der Code und die Daten eines Programms in spezialisierten Paketen angeordnet sind. In Abhängigkeit von der Beschaffenheit des Codes des spezifischen Pakets verändert das Paket das Verhalten eines aktiven Knotens oder wandelt den Datenwert um, den es überträgt. Diese Implementierung weist insbesondere einen Schritt auf, in dem eine neue Netzstruktur in einem aktiven Netz erzeugt wird. Sie weist nicht das Problem des Funknetzes auf, dessen Verbindungen schwankend sein können.
  • Die Übertragung eines mobilen Agenten in einem Netz führt zu mit dem Typ des benutzten Netzes verbundenen Problemen. Es sei zum Beispiel das Funknetz in Betracht gezogen, bei dem die Hauptschwierigkeiten folgende sind:
    • • der geringe Übertragungsdurchsatz,
    • • die starken Störungen,
    • • die undefinierte und schwankende Sichtbarkeit...
  • Es wurden wirksame und an den ausführbaren Objektcode, dessen Standardformat vom Typ Bytecode-Datei ist, angepasste Verarbeitungen untersucht und entwickelt, um seine Übertragung zu erlauben. Die Wirksamkeit der fraglichen Verarbeitungen ist proportional zur Größe der Datei (je größer die Datei, desto wirksamer ist die Verarbeitung). Für "klassische" Techniken des Austauschs von Mitteilungen, die mobile Agenten enthalten, ist es notwendig, ein Protokoll zu entwickeln, da die erwähnten Techniken nicht mehr durchführbar sind. Ein Protokoll ist aber im Allgemeinen schwerfällig, teuer und komplex.
  • Die vorliegende Erfindung ermöglicht es, diese Nachteile mit Hilfe der Merkmale des Anspruchs 1 zu beseitigen. Ein mobiler Agent A, der mindestens einen ausführbaren autonomen Code C und zugeordnete Daten D enthält und einem Durchlauf P folgt, wird in Form eines Bitstroms übertragen. Dieser Code C führt sich autonom an den Knoten N des Durchlaufs P aus, wobei er die erhaltenen Daten DR und den Ausführungskontext bei der Übertragung DE speichert.
  • Die Erfindung schlägt ein Verfahren gemäß Anspruch 1 zur Übertragung eines mobilen Agenten (A) in einem Funknetz (R) vor, dessen Verbindungen schwankend sind. Der mobile Agent weist mindestens einen ausführbaren Code (C), dem mobilen Agenten (A) zugeordnete Daten (D) und eine Durchlaufmethode P der Zielknoten auf, an denen der mobile Agent sich ausführen soll. Die Übertragung nicht nur des ausführbaren Codes (C), sondern auch der zugeordneten Daten (D) und der Durchlaufmethode (P) ermöglicht es dem ausführbaren Code (C), autonom ausführbar zu sein, insbesondere dadurch, dass der Durchlaufbefehl der Knoten nicht von vorneherein definiert ist, und dass man den mobilen Agenten seinen Durchlauf durchführen lässt, indem er die Durchlaufmethode ausführt, unter Berücksichtigung der im Lauf der Zeit veränderlichen Qualität der Funkverbindungen. Das Verfahren zur Übertragung eines mobilen Agenten weist auf:
    • • [T2–T3]: die Konvertierung (A/F) des mobilen Agenten (A) in einen von einem Sender (EA) eines Sendeknotens (NE) zu sendenden Bitstrom (fA),
    • • [T5–T6]: die Erzeugung einer Verbindung zwischen dem Sendeknoten (NE) und dem/den mindestens einem Empfangsknoten (NR) in dem Netz (R), in dem der Bitstrom (fA) gesendet wird,
    • • [T7]: das Senden des Bitstroms (fA) durch den Sender (EA) des Sendeknotens (NE) zu dem/den mindestens einen Empfangsknoten (NR).
  • Die Erzeugung einer Verbindung enthält mindestens die folgenden Schritte:
    • • [T5]: die Ausführung der Durchlaufmethode (P) der Zielknoten, an denen der mobile Agent (A) ausgeführt werden soll, mittels des die Durchlaufmethode (P) enthaltenden mobilen Agenten (A),
    • • die Erzeugung von Transferparametern des Sendeknotens zu dem/den mindestens einen Empfangsknoten durch die Ausführung der Durchlaufmethode (P),
    • • die Verwendung dieser Parameter, um einen Kommunikationskanal zwischen dem Sendeknoten (NE) und dem/den mindestens einen Empfangsknoten (NR) zu öffnen,
    • • das Schließen des Kanals, wobei dieses Schließen nach dem Schritt des Sendens des Bitstroms erfolgt.
  • Die verschiedenen Schritte dieses Transferverfahrens können von einem Sender eines mobilen Agenten in einem Netz durchgeführt werden, der aufweist:
    • • einen allgemeiner Umsetzer eines mobilen Agenten in einen zu sendenden Bitstrom, der mindestens die folgenden Attribute aufweist: – einen einen mobilen Agenten empfangenden Eingang, – einen den resultierenden zu sendenden Bitstrom liefernden Ausgang,
    • • einen Bitstrom-Sender, der einen Eingang aufweist, der den zu sendenden Bitstrom empfängt, der mindestens einen Verbindungserzeuger (CL) zwischen dem Sender des mobilen Agenten (EA) und mindestens einem Empfänger (RA) des Netzes (R) aufweist, der mindestens die folgenden Attribute aufweist:
    • • ein Mittel zur Verwaltung der Ausführung einer Durchlaufmethode (P) der Zielknoten, an denen der mobile Agent (A) sich ausführen soll, wobei der mobile Agent (A) die Durchlaufmethode (P) aufweist, wobei die Ausführung mindestens einen Öffnungsbefehl eines die Verbindung bildenden Kommunikationskanals erzeugt, der die Transferparameter enthält, die bei der Ausführung der Durchlaufmethode (P) erzeugt werden,
    • • einen Ausgang, an dem ein Signal geliefert wird, das mindestens die folgenden Befehle aufweist: – Öffnung eines die Verbindung bildenden Kommunikationskanals, und – Unterbrechung der erzeugten Verbindung.
  • Der mobile Agent kann von einem Empfänger eines mobilen Agenten empfangen werden, der die folgenden Mittel aufweist:
    • • einen Bitstromempfänger, der einen Bitstrom empfängt,
    • • eine Entnahmeeinrichtung eines mobilen Agenten aus einem Bitstrom, die mindestens eines der folgenden Attribute aufweist: – einen den empfangenen Bitstrom empfangenden Eingang, – einen den entnommenen mobilen Agenten liefernden Ausgang,
    der mindestens aufweist:
    • • einen Prüfer (VA) der Autorisation zur Ausführung des mobilen Agenten (A) am Empfangsknoten (NR), der mindestens die folgenden Attribute aufweist: – einen Eingang, der mit dem Ausgang des Bitstromempfängers verbunden ist, der den empfangenen Bitstrom (fA) empfängt, – einen Ausgang, der an die Entnahmeeinrichtung des mobilen Agenten den Bitstrom (fA) liefert, wenn die Prüfung positiv ist,
    • • wobei die Entnahmeeinrichtung des mobilen Agenten (EXa) die folgenden Attribute aufweist: – eine Code-Entnahmeeinrichtung, die mit dem Eingang verbunden ist, der den Strom (fA) empfängt und den ausführbaren Code (C) des mobilen Agenten (A) liefert, der aus dem Strom (fA) entnommen wird, – eine Daten-Entnahmeeinrichtung, die mit dem Eingang verbunden ist, der den Strom (fA) empfängt und die Daten (D) liefert, die dem mobilen Agenten (A) zugeordnet sind und aus dem Fluss (fA) entnommen werden,
    ein Mittel (PP) zur Positionierung der Ausführungsparameter DE, die in den entnommenen Daten (D) enthalten sind oder nicht.
  • Allgemeiner weist ein Knoten eines Netzes, das den Sender eines mobilen Agenten und/oder den Empfänger eines mobilen Agenten enthält, mindestens einen Mikroprozessor auf, der eine Schnittstelle mit einem mobilen Agenten besitzt, die es dem einen Code enthaltenden mobilen Agenten ermöglicht, autonom mindestens die Ausführung des Codes durch den Mikroprozessor zu verwalten, wobei der Knoten (N) mindestens eine Quelle (SA) eines mobilen Agenten aufweist:
    • – eine Schnittstelle (I), die mindestens die folgenden Eingänge aufweist: • einen Eingang, der die Wahl des ausführbaren Codes (C) des mobilen Agenten (A) empfängt, • einen Eingang, der die Wahl der dem mobilen Agenten (A) zugeordneten Daten (D) empfängt,
    • – ein Leseorgan, das mindestens die folgenden Attribute aufweist: • eine Verbindung mit der Schnittstelle, • einen Zeiger, der den eingehenden Daten eine Adresse in mindestens einem internen oder externen Speicher zuweist, an welcher Adresse sich mindestens der ganze oder ein Teil des mobilen Agenten (A) befindet,
    wobei ein Ausgang den gelesenen mobilen Agenten (A) an einen Sender liefert.
  • Der mobile Agent kann zusätzlich zum ausführbaren Code (C) und den zugeordneten Daten (D) eine Schnittstelle mit einem Knoten, Host-Knoten genannt, aufweisen, die mindestens die folgenden Mittel aufweist:
    • • Mittel zur Verifizierung der Zugehörigkeit des Host-Knotens zur Einheit von Knoten, an denen der mobile Agent (A) sich ausführen soll, die mindestens die folgenden Mittel aufweisen: – Mittel zum Auslösen der Verwaltung der Ausführung des Codes (C) des mobilen Agenten (A), die aktiv sind, wenn die Verifizierung positiv ist, – Mittel zur Übertragung des mobilen Agenten (A) zum Sender eines mobilen Agenten des Host-Knotens, die aktiv sind, wenn die Verifizierung negativ ist,
    • • Mittel zur Übertragung des aktualisierten mobilen Agenten (A) an den Sender eines mobilen Agenten des Host-Knotens,
    • • Mittel zum Test der Transfermethode der Daten (DR), die das Ergebnis der Ausführung des Codes (C) sind, die mindestens die folgenden Mittel aufweisen: – Mittel zum Auslösen der Verwaltung der Ausführung der Methode, die aktiv sind, wenn der Test positiv ist, – Mittel zur Übertragung des mobilen Agenten (A), der mindestens den Code (C) und die aktualisierten Daten (D) aufweist, denen die Daten (DR) hinzugefügt wurden, an den Sender eines mobilen Agenten des Host-Knotens, die aktiv sind, wenn der Test negativ ist, – Mittel zur Erzeugung eines mobilen Agenten Ergebnisse A', der mindestens die Daten (DR) enthält, und die Übertragung des mobilen Agenten Ergebnisse A' an den Sender eines mobilen Agenten des Host-Knotens.
  • Die Merkmale und Vorteile der Erfindung gehen klarer aus der als Beispiel dienenden Beschreibung und den sich darauf beziehenden Figuren hervor. Es zeigen:
  • 1 ein schematisches Schaltbild des Wanderns eines Agenten in einem Netz,
  • 2 ein Übertragungsbeispiel eines mobilen Agenten A von einem Sendeknoten NE zu einem Empfängerknoten NR,
  • 3 ein schematisches Schaltbild der Initialisierung der Wanderung eines Agenten im Netz gemäß einer Ausführungsform der Erfindung,
  • 4 ein schematisches Schaltbild des Transferverfahrens eines Agenten von einem Knoten zu einem anderen Knoten des Netzes gemäß der Erfindung,
  • 5 ein schematisches Schaltbild des Empfangsverfahrens eines Agenten an einem Knoten des Netzes gemäß der Erfindung,
  • 6 ein schematisches Schaltbild der Ausführung des Codes des Agenten am Empfangsknoten.
  • Die Knoten N eines Netzes R weisen zum Beispiel drei Arten einer Empfangsstruktur eines mobilen Agenten A auf
    • • Quelle. Diese Struktur ermöglicht es, einen mobilen Agenten A (Wahl des Codes, der Parameter) zu bilden, seinen Durchlauf P zu definieren und seine Wanderung im Netz R zu initialisieren. Sie weist also eine Quelle eines mobilen Agenten SA und einen Sender eines mobilen Agenten EA auf.
    • • Zwischenstruktur. Diese Struktur empfängt einen mobilen Agenten A, sie ermöglicht es ihm, sich auszuführen, und sendet ihn zu mindestens einem neuen Knoten N weiter. Sie weist also einen Sender EA und einen Empfänger RA eines mobilen Agenten auf.
    • • Ende. Diese Struktur empfängt einen mobilen Agenten A und gewinnt die Gesamtheit der Daten DR wieder, die aus den Ausführungen des Codes C des mobilen Agenten A an verschiedenen Knoten N des Durchlaufs P resultieren. Sie weist also einen Empfänger eines mobilen Agenten RA auf.
  • Der gleiche Knoten kann also die Quelle NS für einen ersten mobilen Agenten A1, eine Zwischenquelle NI für einen zweiten Agenten A2 und eine letzte Quelle NF für einen dritten Agenten A3 sein. Außerdem kann der Quellenknoten NS für einen gegebenen mobilen Agenten A auch der Endknoten NF des gleichen mobilen Agenten A sein.
  • Der mobile Agent A weist den ausführbaren Code C, die zugehörigen Daten D, die Durchlaufmethode P des Netzes R und verschiedene Schnittstellen I entsprechend seinem Host-Knoten NH auf, zum Beispiel:
    • • eine Initialisierungsschnittstelle mit dem Quellenknoten NS, die es ermöglicht, die Parameter D des mobilen Agenten A zu empfangen und den zu durchlaufenden Weg anzuzeigen,
    • • eine Schnittstelle "run" (deutsch: Ausführungsschnittstelle), die es ermöglicht, die Ressourcen der Zwischenknoten NI bei der Ausführung des Codes C des mobilen Agenten A zu verwenden,
    • • eine Schnittstelle zur folgenden Maschine, die es ermöglicht, den Zwischenknoten NI den nächsten Zielknoten N anzuzeigen,
    • • eine Antwort-Schnittstelle, die es dem Endknoten NF ermöglicht, Daten D wiederzugewinnen.
  • Außerdem entspricht der mobile Agent A den folgenden Eigenschaften:
    • • der Unabhängigkeit des Host-Knotens NH, da sein Code C in verschiedenen Rechnern ausgeführt werden kann, die umfassen: – verschiedene Mikroprozessoren (Maschinensprache, Größe der Maschinenworte,...), – unterschiedliche Betriebssysteme, – einen Zugang zu codierten Daten, der in verschiedenen Sprachen (C, ADA,...) ausgeführt wird, – unterschiedliche Basistyp-Darstellungen (CHAR, INT, BYTE,...)...,
    • • dem Transfer des ausführbaren Codes C des mobilen Agenten A sowie seines Ausführungskontexts von einem Knoten N zum anderen. Hierzu wird ein Mechanismus zur Konvertierung des Agenten in einen Bitstrom fA in Höhe jeder Empfangsstruktur angeordnet,
    • • dem Laden und der Ausgabe einer dynamischen Verbindung, da die Ausführung des Codes C des mobilen Agenten A in der Empfangsstruktur des Knotens N auf die Ladungs- und Ausgabeprinzipien einer dynamischen Verbindung zurückgreift, wenn keine lokale Verbindungsausgabe am Host-Knoten N vorgesehen ist.
  • Der mobile Agent A kann zum Beispiel in der JAVA-Programmiersprache hergestellt werden. Um es einer virtuellen JAVA-Maschine (JVM = englische Abkürzung von JAVA Virtual Machine), d.h. dem Ausführungssystem des JAVA-Bytecodes, zu ermöglichen, muss der Standard-ClassLoader erweitert werden. Der ClassLoader, der entwickelt wurde, lädt nämlich nicht die Klassen ausgehend von einer Datei, sondern von einer Byte-Tabelle. Dieses Format, das äußerst einfach und weit verbreitet ist, ermöglicht es, sich vollkommen vom Übertragungskanal der Klassen sowie von ihrem Speichermodus zu befreien. Es ist also von jedem Maschinen-Protokoll unabhängig.
  • (INITIALISIERUNG NS)
  • 1 zeigt ein schematisches Schaltbild der Wanderung eines mobilen Agenten A in einem Netz R. Der mobile Agent A wird in Höhe des Quellenknotens NS definiert, und seine Wanderung im Netz R wird ausgehend von diesem gleichen Quellenknoten NS initialisiert, wie es 3 zeigt.
  • Die Definition des mobilen Agenten A besteht darin, den ausführbaren Code C (Schritt S1), die Transfermethode der Daten DR, die aus der Ausführung dieses Codes C an jedem Knoten N resultieren, zum Endknoten NF (Schritt S2), den Durchlauf P der Wanderung des Agenten A über die Zielknoten NC des Netzes R (Schritt S2) und die Anfangsausführungsparameter D0E des ausführbaren Codes C (Schritt S4) zu wählen. Die im Agenten A enthaltenen Daten D können zum Beispiel Informationen, Mitteilungen, Parameter usw. sein.
  • Die Definition der Transfermethode der aus der Ausführung eines Codes C resultierenden Daten zum Endknoten NF besteht zum Beispiel in Höhe jedes Knotens N darin, gemäß einem Auswahlkriterium, das das Volumen der erhaltenen resultierenden Daten DR sein kann, die direkte oder indirekte Übertragung der resultierenden Daten DR zum Endknoten NF zu wählen. Die Definition des Durchlaufs P erfolgt durch die Wahl einer Durchlaufmethode P der Zielknoten NC. Diese Durchlaufmethode P kann zum Beispiel einfach ein Auswahlkriterium der Zielknoten {N} sein.
  • Alle Schritte S werden von einer Quelle eines mobilen Agenten SA innerhalb des Quellenknotens NS durchgeführt, die in jedem Knoten N des Netzes R vorhanden sind, wie 2 zeigt.
  • (SENDEN NS → NI1)
  • Um den Transfer des mobilen Agenten A zu ermöglichen (Schritte T), d.h. des autonomen ausführbaren Codes C, der zugeordneten Parameter D und der Durchlaufmethode, wird der mobile Agent A zunächst in einen Bitstrom fA umgewandelt, der vom Sender des mobilen Agenten EA des Quellenknotens NS gleich demjenigen, der zum Beispiel in 2 vorgeschlagen wird, zu senden ist, dann wird eine Verbindung zwischen dem Sendeknoten und mindestens einem Empfangsknoten erzeugt, und schließlich wird der Strom fA in einem gegebenen Kommunikationskanal gesendet, wie zum Beispiel durch 4 vorgeschlagen wird.
  • Die Umwandlung des Codes C in einen Bitstrom entspricht einer Umwandlung nicht seiner eigentlichen Beschaffenheit, sondern der Art, wie er von der Umgebung, in der er sich befindet, wahrgenommen wird. Es ist in gewisser Weise eine "Status"-Veränderung. Die Übertragung in Form von Bitströmen ermöglicht nicht nur die Übertragung des Codes C, sondern auch der Daten D, wobei die Durchlaufmethode P und ggf. andere Elemente es so dem ausführbaren Code ermöglichen, autonom ausführbar zu sein.
  • Der Name des mobilen Agenten Name [A], der ausführbare Code C dieses mobilen Agenten A und die dem Code C dieses mobilen Agenten A zugeordneten Parameter D werden durch verschiedene Elementarwandler: C/F für den Code, D/F für die Daten,... in die Form von Bitströmen gebracht (Schritt T1 bis T3). Die verschiedenen Bitströme werden in einen zu sendenden Strom fA umgewandelt, d.h. werden mit Hilfe des Synthetisierers SF in einem einzigen Strom zusammengefasst und erfahren die üblichen Verarbeitungen TN, die die Übertragung von digitalen Daten erlauben, wie zum Beispiel die Komprimierung, die Fehlerkorrekturcodierung, die Verschlüsselung,... (Schritt T4). Die Ausführung der Durchlaufmethode P der Zielknoten N durch den mobilen Agenten A ermöglicht es, die Transferparameter des Quellenknotens NS zum ersten Zwischen-Zielknoten NI1 zu bestimmen (Schritt T5). Diese Parameter ermöglichen es dem Verbindungserzeuger CL, einen Kommunikationskanal zwischen dem Sendeknoten NE, der hier der Quellenknoten NS ist, und dem Empfangsknoten NR zu öffnen, der hier der erste Zwischenknoten NI1 ist (Schritt T6). Der Bitstrom fAS→1, der den mobilen Agenten A enthält, wird dann vom Bitstromsender EF in dem offenen Kanal zum ersten Zwischen-Zielknoten NI1 gesendet (Schritt T7). wenn das Senden beendet ist, wird der Kanal geschlossen (Schritt T8).
  • Der Transfer erfolgt über Funkwellen. Zum Beispiel kann die Definition des Durchlaufs P einer Anzahl von Funksprüngen oder einem Funknetz R entsprechen. In diesem Fall speichert der Agent A seinen Durchlauf P und weist entweder einen Algorithmus auf, der es ihm ermöglicht, den folgenden Knoten NR zu bestimmen, oder greift auf einen lokalen Dienst mit der Empfangsstruktur zu, um den folgenden Knoten NR zu bestimmen. Da die Funkverbindungen schwankend sind (mit im Lauf der Zeit variabler Qualität), ist es von vorneherein schwierig, den Durchlaufbefehl der Knoten N zu definieren. Es ist also vorzuziehen, den Agenten A seinen Durchlauf P durchführen zu "lassen", indem ihm bei der Initialisierung eine Verbindungstabelle des Netzes R und ein zugeordneter Auflösungsalgorithmus angezeigt werden.
  • (EMPFANG NI1)
  • 4 zeigt das Verfahren, das für den Empfang eines mobilen Agenten A vom Empfänger eines mobilen Agenten RA des Empfangsknotens NR, des Zwischenknotens NI1, angewendet wird. Zunächst wurde der Kommunikationskanal zwischen dem Sendeknoten NE (Quellenknoten NS) und dem Empfangsknoten NR (erster Zwischenknoten NI1) geöffnet, wie oben für 3 beschrieben (Schritt R1 ↔ Schritt T6). Der Bitstromempfänger RF des Zwischenknotens NI1 empfängt also den Bitstrom fAS→1, der den vom Quellenknoten NS gesendeten mobilen Agenten A enthält (Schritt R2). Wenn die Integrität des empfangenen Stroms fAS→1 verifiziert ist (Schritt R3), wird der empfangene Strom fAS→1 authentifiziert, zum Beispiel mit Hilfe einer Verschlüsselung (Schritt R4). Diese Schritte werden von digitalen Verarbeitungsvorrichtungen TN–1 durchgeführt. Wenn der den mobilen Agenten A enthaltende Bitstrom fAS→1 empfangen wurde, wird der Kommunikationskanal wie oben bei der Beschreibung der 3 angegeben geschlossen (Schritt R5 ↔ Schritt T8).
  • Wenn der den mobilen Agenten A enthaltende Strom fAS→1 verifiziert und authentifiziert wurde (Schritte R3 und R4), wird der Name des mobilen Agenten NAME [A] aus dem Strom fAS→1 entnommen (Schritt R6).
  • Die Autorisation, den Agenten A am Zwischenknoten NI1 auszuführen, wird von einem Autorisationsprüfer VA verifiziert (Schritt R7). Diese Autorisation erlaubt dem Code C des mobilen Agenten A den Zugang zu den Ressourcen des Empfangsknotens NR (erster Zwischenknoten NI1). Die Autorisation besteht darin, dass zum Beispiel im Fall einer Inkohärenz zwischen den Empfangsstrukturen und den Agenten der mobile Agent A sich nicht ausführen kann. Die Verwendung zum Beispiel für die Schnittstellen des Schnittstellenagenten vom Typ "Eigentümer", die in der Lage sind, explizit (dedizierte Schnittstelle) oder implizit die Aufgabe eines Zugangsschlüssels zu übernehmen, ermöglicht es, die Einführung eines externen und nicht erwünschten Agenten in das System zu verhindern.
  • Wenn der Agent A nicht autorisiert ist, sich am Knoten NI1 auszuführen, kann er zum Beispiel vom Sender EA des Knotens NI1 sofort zu einem neuen Knoten, entweder dem Zwischenknoten NI2 oder dem Endknoten NF, des Netzes R weitergesendet werden.
  • Wenn der Agent A autorisiert ist, sich am Knoten NI1 auszuführen, werden der ausführbare Code C aus dem empfangenen Strom fAS→1 (Schritt R8) sowie die dem Code C zugeordneten Parameter D (Schritt R9) vom Extrahierer eines mobilen Agenten EXa entnommen. Die Parameter D0E sind so positioniert, dass sie die Ausführung des Codes C durch die Positioniervorrichtung PP initialisieren (Schritt R10). Dann kann der Agent A sich ausführen (Schritte E), ehe er an einen neuen Knoten, entweder einen Zwischenknoten NI2 oder einen Endknoten NF, übertragen wird (Schritte T).
  • (AUSFÜHRUNG NI1)
  • 5 schlägt ein Ausführungsverfahren des mobilen Agenten A vor. Der Agent A verifiziert zunächst, ob der Zwischenknoten NI1 ein Zielknoten NC ist (Schritt E1). Wenn dies nicht der Fall ist, löst er sofort seinen Transfer zu einem neuen Knoten, entweder einem Zwischenknoten NI2 oder einem Endknoten NF, aus (Schritte T). Wenn der Zwischenknoten NI1 ein Zielknoten ist, wird der Code unter Verwendung der Ressourcen (Mikroprozessor μP,...) des Host-Knotens NH, des Zwischenknotens NI1, ausgeführt (Schritt E2). Die Daten D, die die Parameter D des Codes C enthalten, und die resultierenden Daten DR der Ausführung des Codes C werden aktualisiert (Schritt E3). Die aktualisierten Parameter D enthalten die Daten, die es ermöglichen, die Ausführung des Codes C an einem neuen Knoten fortzusetzen. Sie speichern den Kontext, in. dem sich der Code C in dem Moment befindet, in dem seine Ausführung vor dem Transfer des mobilen Agenten A zu diesem neuen Knoten eingefroren wird.
  • Die resultierenden Daten DR können ihrerseits auf verschiedene weisen übertragen werden, zum Beispiel mit dem mobilen Agenten A wie die Parameter D, oder mit einem neuen mobilen Agenten A'. Es wird ein Test durchgeführt, um die Transfermethode der Daten DR zu kennen, die verwendet werden wird (Schritt E4). Dieser Test kann zum Beispiel auf dem Volumen der zu übertragenden Daten DR basieren. Unterhalb eines gewissen Volumens (Zweig 1) werden die Daten DR wie die Parameter D mit dem mobilen Agenten A transferiert (Schritte T). Oberhalb dieses Volumens (Zweig 2) ermöglicht die Transfermethode der Daten die Herstellung eines neuen Agenten A', der diese Daten DR enthält (Schritt E5).
  • Die Zwischenübertragung der Daten DR ermöglicht es, den Transfer eines mobilen Agenten großen Volumens zu vermeiden, also eine starke Nutzung des Durchlassbands zu vermeiden, was es ermöglicht, die Übertragungsfehler zu begrenzen. Wenn ein mobiler Agent A Informationen sammelt, wird er nämlich in der Lage sein, die Zwischenergebnisse DR an den Endknoten NF entweder durch den Aufbau einer direkten oder indirekten Verbindung oder durch die Erzeugung eines Transportagenten A' zu übertragen (Schritt E5).
  • (SENDEN NI1 → NI2)
  • Dann wird dieser neue mobile Agent A', der die Ergebnisse DR enthält, zum Endknoten NF transferiert, und der ursprüngliche mobile Agent A wird zu einem neuen Knoten N transferiert. Die Transfers der mobilen Agenten A und A' erfolgen zum Beispiel von diesem ersten Zwischenknoten NI1 zu einem neuen Knoten N bzw. dem Endknoten NF, in gleicher Weise wie der Transfer des mobilen Agenten A des Quellenknotens NS zum Knoten NI1 (Schritte T) durch einen Sender EA gleicher Struktur wie der Sender EA des Quellenknotens NS.
  • (EMPFANG NI2)
  • Wenn der mobile Agent A erneut an einem Zwischenknoten NI empfangen wird, sind die Schritte R des Empfangs, E der Ausführung und T des Transfers des mobilen Agenten A gleich denjenigen, die am ersten Zwischenknoten durchgeführt werden, und werden von einem Empfänger RA durchgeführt, der gleich demjenigen des ersten Zwischenknotens ist.
  • (ENDEMPDFANG)
  • Der Empfang eines mobilen Agenten A an einem Endknoten NF weist die gleichen Schritte R1 bis R10 auf und wird vom gleichen Typ Empfänger RA durchgeführt, wie er oben für den Empfang eines Agenten A an einem Zwischenknoten NI beschrieben wurde. Wie 4 zeigt, ist der zusätzliche Schritt bei einem Endempfang derjenige der Wiedergewinnung der Ergebnisse der Ausführung DR (Schritt R11). Die Wiedergewinnung der Gesamtheit der Ergebnisse der Ausführung des Codes C eines mobilen Agenten A an allen Knoten N seines Durchlaufs P kann ausgehend von einem oder mehreren mobilen Agenten A, sogar A',..., durch ein zusätzliches Mittel des Empfängers RA durchgeführt werden: Eine Vorrichtung zur Wiedergewinnung der Ergebnisse RR.
  • Gemäß einem Verfahren, das nicht vom Anspruch 1 abgedeckt wird, ist es zur Reduzierung der Größe des mobilen Agenten A und zur Erhöhung seiner Effizienz möglich, einen Teil der Funktionalitäten des mobilen Agenten A, d.h. einen Teil des Codes C, in die Empfangsstruktur der Knoten N zu implementieren. Der transferierte mobile Agent A weist dann die Parameter und den restlichen Teil des Codes auf, die nicht in die Empfangsstruktur implementiert wurden. In diesem Fall ist das generische Vermögen der Struktur verschlechtert, was zur Folge hat, die Entwicklungsmöglichkeiten der mobilen Agenten zu reduzieren. Dies ist eine Lösung, um ein hohes Sicherheitsniveau zu erhalten. Außerdem ist dies gut geeignet für den Zugang und die Aktualisierung der Betriebsparameter eines Knotens N. Bei einem neuen Typen eines Agenten A ist es dann notwendig, eine neue Empfangsstruktur bereitzustellen.
  • Die oben beschriebenen Vorrichtungen können in jedem Knoten gleich oder für jeden Knoten oder ein Unter-Netz spezifisch sein. Zum Beispiel können die Quelle eines mobilen Agenten SA und/oder die Wiedergewinnungsvorrichtung RR des Empfängers RA nur in einem Überwachungsknoten vorhanden sein.
  • Die Verwendung eines mobilen Agenten A in einem Netz R ermöglicht unter anderen die Überwachung und die Verwaltung des Netzes R bei Anwendungen wie zum Beispiel:
    • • der Konfiguration und der Aktualisierung des Inhalts der Knoten N (Aussenden von Information an ein Netz, ein Unter-Netz,...),
    • • dem Sammeln von Informationen (Wiedergewinnung von Zuständen, Zentralisierung von Betriebsdaten,...),
    • • der Einwirkung aus der Ferne (Ausführung: Mehrfachkriterien-Recherche an jedem Knoten zum Beispiel),
    • • der Entdeckung der Topologie,
    • • der Durchsuchung (Validierung jeder der Verbindungen eines Netzes, automatische Erfassung des Hinzufügens oder Entfernens eines Knotens ohne menschliche Intervention, zum Beispiel),
    • • dem Speichern oder dem Lernen des vom mobilen Agenten A durchgeführten Durchlaufs PE (dies ermöglicht es dem mobilen Agenten A, "seinen Weg wieder zu finden": Funksprung, Neuaussendung, Datenübertragung mit Verwendung dieses Durchlaufs PE,...)
    • • der Verifizierung eines Netzes durch Aussenden einer Authentifizierungsanforderung....
  • Jeder Knoten ist in der Lage, einen Dienst zu enthalten (nicht notwendigerweise den gleichen) und ihn dem Verbund von Knoten zur Verfügung zu stellen, mit dem er sich verbindet. So ist es möglich, die Anzahl von Funktionalitäten signifikant zu erhöhen, indem sie zwischen den verschiedenen Knoten aufgeteilt werden. Jeder zu einem Verbund gehörende Knoten kann die von den anderen Knoten dieses gleichen Verbunds dargestellten Funktionalitäten nutzen. Hierzu adressiert er eine Anforderung in Form eines mobilen Agenten ARL an den lookup-Dienst, der die Verbindung mit einem Knoten NC aufbaut, der über diese Funktionalität verfügt. Der Code C wird dann in Form eines mobilen Agenten A zum Kundenknoten heruntergeladen, wo er ausgeführt wird.
  • Der den lookup-Prozess aufweisende Knoten verteilt die Anforderungen in Abhängigkeit von der Verfügbarkeit der Dienste und der Belastung. Er kann auch Nutzungsstatistiken der verschiedenen Dienste liefern, um ihre Verteilung auf die verschiedenen Knoten zu optimieren.
  • Die Erfindung betrifft ein Funknetz, dessen Verbindungen schwankend sind. Der Kommunikationskanal eines Funknetzes ist eine begrenzte Ressource mit zeitlich variabler Qualität. Die Verwendung des mobilen Agenten passt sich also gut an den Kontext der mobilen Funkkommunikation an, da er es ermöglicht, nur die notwendigen Daten zu transferieren, im Gegensatz zu einem "klassischen" Frage/Antwort-Mechanismus.
  • Da der mobile Agent A in Form eines Bitstroms fA übertragen wird, kann er die gleichen Verarbeitungen wie ein beliebiger Strom von digitalen Daten erfahren, wie:
    • • die Komprimierung, die es ermöglicht, das verwendete Durchlassband zu reduzieren,
    • • die Verifizierung der Integrität des Transfers (zum Beispiel durch Software-Wasserzeicheneinfügung). Die Methode der Integritätverifizierung des Transfers kann zum Beispiel den Verbindungsdurchsatz (Codierung) und die Größe der übertragenen Pakete in Abhängigkeit von der Verbindungsqualität anpassen, indem sie Dienste vom Typ cheksum und Segmentierung/Wiederzusammensetzen anbietet,
    • • die Anordnung in Paketen,
    • • die Codierung.
  • Eine der Eigenschaften eines mobilen Agenten A ist zum Beispiel im Funkfall die Tatsache, dass die Ausführung des Codes C des mobilen Agenten A nicht den Nennbetrieb stört, oder zumindest die Verwendung RAM oder CPU so gesteuert wird, dass eine dauerhafte Verschlechterung der Leistungen verhindert wird.
  • Außerdem ermöglicht das Funknetz die Aussendung des mobilen Agenten in Form eines Bitstroms anstelle der "klassischen" Punkt-zu-Punkt-Übertragung. Die Aussendung eines mobilen Agenten A ermöglicht es, die Nutzung des Funkdurchlassbands zu reduzieren. Das Senden des mobilen Agenten A wird zu allen Knoten N in Funksichtweite durchgeführt. Der mobile Agent A ist dann mit sich selbst kollaborativ, da er in der Lage ist, mehrfach von dem gleichen Knoten N empfangen zu werden. Zum Beispiel besitzt der mobile Agent A eine Kennung (Form der Konfigurationsverwaltung), um nicht mehrere Male vom gleichen Knoten N ausgeführt zu werden. Eine Markierungsvorrichtung MQ, die zum Beispiel die Kennung des mobilen Agenten A verwendet, kann bei einem der Prozesse verwendet werden, der den mobilen Agenten in Höhe eines Knotens verwendet, wie zum Beispiel die Ausführung des mobilen Agenten, das Senden des mobilen Agenten, der Empfang des mobilen Agenten (siehe 2),.... Der mobile Agent A ist dann in der Lage, die Synthese der bei den verschiedenen Durchläufen gesammelten Daten DR durchzuführen.

Claims (7)

  1. Verfahren zur Übertragung eines mobilen Agenten (A) in einem Funknetz (R), dessen Verbindungen schwankend sind, wobei der mobile Agent mindestens einen ausführbaren Code (C), dem mobilen Agenten (A) zugeordnete Daten (D) und eine Durchlaufmethode P der Zielknoten aufweist, an denen der mobile Agent ausgeführt werden soll, wobei die Übertragung nicht nur des ausführbaren Codes (C), sondern auch der zugeordneten Daten (D) und der Durchlaufmethode (P) es dem ausführbaren Code (C) ermöglicht, autonom ausführbar zu sein, insbesondere dadurch, dass der Durchlaufbefehl der Knoten nicht von vorneherein definiert ist, und dass man den mobilen Agenten (A) seinen Durchlauf durchführen lässt, indem er die Durchlaufmethode ausführt, unter Berücksichtigung der im Lauf der Zeit veränderlichen Qualität der Funkverbindungen, wobei das Verfahren zur Übertragung eines mobilen Agenten aufweist: • [T2–T3]: die Konvertierung (A/F) des mobilen Agenten (A) in einen von einem Sender (EA) eines Sendeknotens (NE) zu sendenden Bitstrom (fA), • [T5–T6]: die Erzeugung einer Verbindung zwischen dem Sendeknoten (NE) und mindestens einem Empfangsknoten (NR) in dem Netz (R), in dem der Bitstrom (fA) gesendet wird, • [T7]: das Senden des Bitstroms (fA) durch den Sender (EA) des Sendeknotens (NE) zu dem/den mindestens einen Empfangsknoten (NR), wobei die Erzeugung einer Verbindung mindestens die folgenden Schritte enthält: • [T5]: die Ausführung der Durchlaufmethode (P) der Zielknoten, an denen der mobile Agent (A) ausgeführt werden soll, mittels des die Durchlaufmethode (P) enthaltenden mobilen Agenten (A), • die Erzeugung von Transferparametern des Sendeknotens zu dem/den mindestens einen Empfangsknoten durch die Ausführung der Durchlaufmethode (P), • die Verwendung dieser Parameter, um einen Kommunikationskanal zwischen dem Sendeknoten (NE) und dem/den mindestens einen Empfangsknoten (NR) zu öffnen, • das Schließen des Kanals, wobei dieses Schließen nach dem Schritt des Sendens des Bitstroms erfolgt.
  2. Übertragungsverfahren nach Anspruch 1, das mindestens die folgenden Schritte aufweist: • [T2]: die Konvertierung des ausführbaren Codes (C) des mobilen Agenten (A) in Bitströme bei der Konvertierung (A/F), • [T3]: die Konvertierung der dem mobilen Agenten (A) zugeordneten Daten (D) in Bitströme bei der Konvertierung (A/F), • [T4]: die Synthese mehrerer Bitströme, die mindestens den Bitstrom, der durch Konvertierung des ausführbaren Codes erhalten wurde, und den Bitstrom aufweisen, der durch Konvertierung der Daten erhalten wurde, in einen den mobilen Agenten (A) enthaltenden Bitstrom (fA) bei der Konvertierung (A/F).
  3. Übertragungsverfahren nach einem der vorhergehenden Ansprüche, das außerdem einen Schritt der Markierung des Sendeknotens (NE) durch eine Kennung des mobilen Agenten (A) aufweist.
  4. Übertragungsverfahren nach einem der vorhergehenden Ansprüche, das außerdem mindestens die folgenden Schritte aufweist: • [R2]: den Empfang eines Bitstroms (fA), • [R6 bis R9]: die Entnahme des mobilen Agenten (A) aus dem empfangenen Bitstrom (fA).
  5. Verfahren zur Übertragung eines mobilen Agenten (A) nach Anspruch 4, das außerdem mindestens die folgenden Schritte aufweist: • [R8]: die Entnahme des ausführbaren Codes (C) aus dem empfangenen Bitstrom (fA) bei der Entnahme des mobilen Agenten (A), • [R9]: die Entnahme der zugeordneten Daten (D) aus dem empfangenen Bitstrom (fA) bei der Entnahme des mobilen Agenten (A), • [R10]: die Positionierung der Ausführungsparameter DE, die in den entnommenen Daten (D) enthalten sind oder nicht.
  6. Verfahren zur Übertragung eines mobilen Agenten (A) nach einem der Ansprüche 4 oder 5, das außerdem mindestens die folgenden Schritte aufweist: • [R2 bis R4]: eine oder mehrere digitale Verarbeitungen (TN1 –1,..., TNj –1) des empfangenen Bitstroms (fA), • [R7]: die Prüfung der Ausführungsberechtigung an dem/den mindestens einen Empfangsknoten (NR) des im empfangenen Bitstrom (fA) enthaltenen mobilen Agenten (A), was die Entnahme des mobilen Agenten (A) auslöst.
  7. Verfahren zur Übertragung eines mobilen Agenten (A) nach Anspruch 6, das außerdem die Markierung des/der mindestens einen Empfangsknoten(s) (NR) durch eine Kennung des mobilen Agenten (A) aufweist.
DE60124722T 2000-06-30 2001-06-29 Verfahren zur übertragung eines mobilen agenten in einem netzwerk; sender, empfänger und zugehöriger mobiler agent Expired - Fee Related DE60124722T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR0008515 2000-06-30
FR0008515A FR2811094B1 (fr) 2000-06-30 2000-06-30 Procedes et dispositifs d'emission et reception d'un agent mobile dans un reseau
PCT/FR2001/002096 WO2002001313A2 (fr) 2000-06-30 2001-06-29 Procede de transmission d'un agent mobile dans un reseau; emetteur, recepteur, et agent mobile associes

Publications (2)

Publication Number Publication Date
DE60124722D1 DE60124722D1 (de) 2007-01-04
DE60124722T2 true DE60124722T2 (de) 2007-10-04

Family

ID=8851960

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60124722T Expired - Fee Related DE60124722T2 (de) 2000-06-30 2001-06-29 Verfahren zur übertragung eines mobilen agenten in einem netzwerk; sender, empfänger und zugehöriger mobiler agent

Country Status (8)

Country Link
US (1) US20040037315A1 (de)
EP (1) EP1303812B1 (de)
AT (1) ATE346336T1 (de)
AU (1) AU2001270719A1 (de)
CA (1) CA2414533A1 (de)
DE (1) DE60124722T2 (de)
FR (1) FR2811094B1 (de)
WO (1) WO2002001313A2 (de)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266631B1 (en) 2004-10-28 2012-09-11 Curen Software Enterprises, L.L.C. Calling a second functionality by a first functionality
US7774789B1 (en) * 2004-10-28 2010-08-10 Wheeler Thomas T Creating a proxy object and providing information related to a proxy object
US7823169B1 (en) 2004-10-28 2010-10-26 Wheeler Thomas T Performing operations by a first functionality within a second functionality in a same or in a different programming language
US7861212B1 (en) 2005-03-22 2010-12-28 Dubagunta Saikumar V System, method, and computer readable medium for integrating an original application with a remote application
US8578349B1 (en) 2005-03-23 2013-11-05 Curen Software Enterprises, L.L.C. System, method, and computer readable medium for integrating an original language application with a target language application
US7810140B1 (en) 2006-05-23 2010-10-05 Lipari Paul A System, method, and computer readable medium for processing a message in a transport
US7844759B1 (en) 2006-07-28 2010-11-30 Cowin Gregory L System, method, and computer readable medium for processing a message queue
US7949626B1 (en) 2006-12-22 2011-05-24 Curen Software Enterprises, L.L.C. Movement of an agent that utilizes a compiled set of canonical rules
US7970724B1 (en) 2006-12-22 2011-06-28 Curen Software Enterprises, L.L.C. Execution of a canonical rules based agent
US7698243B1 (en) * 2006-12-22 2010-04-13 Hauser Robert R Constructing an agent in a first execution environment using canonical rules
US9311141B2 (en) 2006-12-22 2016-04-12 Callahan Cellular L.L.C. Survival rule usage by software agents
US7660780B1 (en) * 2006-12-22 2010-02-09 Patoskie John P Moving an agent from a first execution environment to a second execution environment
US8132179B1 (en) 2006-12-22 2012-03-06 Curen Software Enterprises, L.L.C. Web service interface for mobile agents
US8200603B1 (en) 2006-12-22 2012-06-12 Curen Software Enterprises, L.L.C. Construction of an agent that utilizes as-needed canonical rules
US8423496B1 (en) 2006-12-22 2013-04-16 Curen Software Enterprises, L.L.C. Dynamic determination of needed agent rules
US7860517B1 (en) 2006-12-22 2010-12-28 Patoskie John P Mobile device tracking using mobile agent location breadcrumbs
US9094385B2 (en) * 2011-08-05 2015-07-28 Battelle Memorial Institute Intelligent sensor and controller framework for the power grid
US8676954B2 (en) * 2011-12-06 2014-03-18 Kaseya International Limited Method and apparatus of performing simultaneous multi-agent access for command execution through a single client

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US749083A (en) * 1904-01-05 Water closet seat
US848043A (en) * 1906-05-11 1907-03-26 Ralph Mccord Closet-seat.
US1290611A (en) * 1917-08-23 1919-01-07 Rosario C Lussier Closet-seat.
US2047480A (en) * 1934-05-08 1936-07-14 Macdonald Herbert Cumming Toilet seat and cover
US2155286A (en) * 1937-07-08 1939-04-18 Winding Bess Toilet seat and cover
US2185169A (en) * 1939-05-11 1939-12-26 Al Schwartz Toilet seat
US3331085A (en) * 1964-02-10 1967-07-18 Joseph R Potosky Auxiliary toilet seat
US3517396A (en) * 1964-08-20 1970-06-30 Goodyear Tire & Rubber Cushion toilet seat structure
US3671981A (en) * 1970-10-20 1972-06-27 Sarah B Smith Invalid or geriatric toilet seat
US3863277A (en) * 1972-08-08 1975-02-04 Beneke Division Beatrice Foods Soft toilet seat
US4318213A (en) * 1972-09-13 1982-03-09 New Century Products, Inc. Method of making resilient seats and cover lids therefor for water closets
US3988789A (en) * 1972-09-13 1976-11-02 New Century Products, Inc. Resilient seats and cover lids therefor for water closets
US5726984A (en) * 1989-01-31 1998-03-10 Norand Corporation Hierarchical data collection network supporting packetized voice communications among wireless terminals and telephones
US5648431A (en) * 1990-09-27 1997-07-15 Michael Demuth Process for the utilization of plastics
US5209968A (en) * 1991-07-22 1993-05-11 Diversitech Corporation Composite structure with waste plastic core and method of making same
US5192809A (en) * 1992-03-30 1993-03-09 Arco Chemical Technology, L.P. Process for reclaiming a thermoset polymer
US5818838A (en) * 1995-10-12 1998-10-06 3Com Corporation Method and apparatus for transparent intermediate system based filtering on a LAN of multicast packets
US5850388A (en) * 1996-08-02 1998-12-15 Wandel & Goltermann Technologies, Inc. Protocol analyzer for monitoring digital transmission networks
JPH11282683A (ja) * 1998-03-26 1999-10-15 Omron Corp エージェントシステム
JP3606355B2 (ja) * 1998-04-13 2005-01-05 オムロン株式会社 エージェントシステム及び通信方法
US5991935A (en) * 1998-04-21 1999-11-30 Wang; Shih Kai Resilient toilet seat device
US6154892A (en) * 1998-06-02 2000-12-05 Hogue; Aaron G. Toilet seat and lid assembly

Also Published As

Publication number Publication date
FR2811094A1 (fr) 2002-01-04
EP1303812B1 (de) 2006-11-22
DE60124722D1 (de) 2007-01-04
WO2002001313A2 (fr) 2002-01-03
FR2811094B1 (fr) 2006-06-23
CA2414533A1 (fr) 2002-01-03
AU2001270719A1 (en) 2002-01-08
US20040037315A1 (en) 2004-02-26
ATE346336T1 (de) 2006-12-15
EP1303812A2 (de) 2003-04-23
WO2002001313A3 (fr) 2002-06-06

Similar Documents

Publication Publication Date Title
DE60124722T2 (de) Verfahren zur übertragung eines mobilen agenten in einem netzwerk; sender, empfänger und zugehöriger mobiler agent
DE69533122T2 (de) Rechnernetzwerkdurchschaltvermittlung
DE69533349T2 (de) Persistenzspezifizierungssystem und Verfahren für Hochleistungssubkarten auf Anfrage
DE69032191T2 (de) Anordnung und Verfahren zur Realisierung von Hochleistungskommunikation zwischen Softwareprozessen
DE602005000984T2 (de) Verfahren und Vorrichtung zur Speicherung von Eingangs-Filterkriterien und zur Spezifizierung von Triggerpunkt-Vorlagen zum Zeitpunkt der Diensteimplementierung
DE69937248T2 (de) Routers und verfahren für optimale leitwegtabellenkomprimierung
DE3853122T2 (de) Vorrichtung und Verfahren zur Verbindung von einer Anwendung einer Zugriffseinrichtung für transparente Dienste mit einer entfernt aufgestellten Quelle.
DE69821050T2 (de) Datenstromdifferenzierungssystem für Endgerätemulator
DE3382775T2 (de) Elektronisches Dokumentenverteilnetzwerk mit gleichmässigem Datenstrom.
DE68928433T2 (de) Verwaltungssystem für verbundene einheiten in einem verteilten rechnersystem
DE69827747T2 (de) Druckersystem und Übertragungsvorrichtung um Druckersteuerungsprogramm zu übertragen
DE69838443T2 (de) Verteiltes Netzwerkrechnersystem
DE602005002132T2 (de) System und verfahren zur fernüberwachung von geräten mit hilfe eines steuer-, einrichtungs-, funkkommunikationsmoduls und entsprechendes programm
DE69209193T2 (de) Netzwerkverwaltungsagent mit vom Bediener geschaffenen Objekten
DE60205485T2 (de) Paketorientierter datenaustausch zwischen beweglichen und örtlich festgelegten datennetzen
DE69828233T2 (de) Hardware Erzeugung von Kontrollsumme für Netzwerkprotokollstapel
DE69733739T2 (de) Rechnersystem und Verfahren zum Testen eines Netzwerkmanagement-Agenten (TMN-Agenten)
DE10297269T5 (de) Kennzeichnung von Paketen mit einem Nachschlageschlüssel zur leichteren Verwendung eines gemeinsamen Paketweiterleitungs-Cache
DE60123716T2 (de) System und Verfahren zur Bildkommunikation
DE19835647A1 (de) Computersystem und Verfahren zum Lesen von HID-Dateneinheiten
DE102005013301A1 (de) Verteiltes Datenmodell
DE19810807A1 (de) Gerät und Verfahren zum Umsetzen von Meldungen
DE112010003149T5 (de) Gemeinschaftliche Verschlüsselung und Entschlüsselung durch Agenten
DE60122671T2 (de) Anforderungsbedingte dynamische Schnittstellengenerierung
DE69932734T2 (de) Verfahren zur bandbreitenverwaltung innerhalb eines eine drahtlose verbindung enthaltenden netzes

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee