-
Die
vorliegende Erfindung bezieht sich auf Telekommunikationsnetzwerke,
deren Knoten in der Lage sind, die Informationsmeldungen, die sie
empfangen, auf spezifische Weise zu verarbeiten.
-
Die
Erfindung bezieht sich insbesondere auf aktive Netzwerke. Das Konzept
des aktiven Netzwerks wurde 1994 in den Arbeiten der DARPA eingeführt und
war Gegenstand mehrerer internationaler Konferenzen, wie z.B. IWAN
99 (International Workshop an Active Networks) oder IWAN 2000. Im
Dokument „Implementation
of a Prototype Active Network" (A.B.
Kulkarni et al.) wird beispielsweise ein solches aktives Netzwerk
beschrieben.
-
Ein
aktives Netzwerk ist ein Netzwerk, in dem die Knoten, bzw. bestimmte
Knoten, in der Lage sind, bestimmte, über das Netzwerk übertragene Meldungen
auf spezifische Weise zu verarbeiten. Anders ausgedrückt bedeutet
dies, dass diese Knoten in der Lage sein müssen, einen anderen Algorithmus zu
verarbeiten als den, mit dem sie bei ihrer Entwicklung ausgestattet
wurden.
-
Innerhalb
des aktiven Netzwerks sind nicht unbedingt alle Knoten mit dieser
Verarbeitungskapazität
ausgerüstet:
Man unterscheidet daher zwischen aktiven Knoten und nicht aktiven
(d.h. normalen) Knoten.
-
In
gleicher Weise erfordern nicht alle Meldungen zwingend eine spezifische
Verarbeitung: Man unterscheidet daher zwischen aktiven Meldungen
(oder Paketen) und nicht aktiven (oder normalen) Meldungen.
-
Auf
an sich bekannte Weise kann eine aktive Meldung eine Kennung für eine aktive
Anwendung beinhalten. Beim Empfang einer aktiven Meldung kann ein
aktiver Router den dieser aktiven Anwendung zugeordneten Code ausführen.
-
Ein
aktiver Knoten verfügt
jedoch über
eingeschränkte
Speicherressourcen, während
die Anzahl an aktiven Anwendungen nicht von vornherein beschränkt ist.
-
Daher
besteht eine Lösung
nach dem aktuellen Stand der Technik darin, einen Server für aktive Anwendungen
bereitzustellen: Beim Empfang einer aktiven Meldung nimmt der aktive
Knoten mit dem Server für
aktiven Anwendungen Verbindung auf, um den entsprechenden Code für die aktive
Anwendung, die durch die aktive Meldung gekennzeichnet ist, herunterzuladen.
-
Diese
Lösung
nach dem aktuellen Stand der Technik ist jedoch unzureichend, da
sie davon ausgeht, dass einer aktiven Anwendung nur ein einziger möglicher
Code entspricht. Der Antragsteller hat jedoch festgestellt, dass
ein und dieselbe aktive Anwendung in Abhängigkeit von den Besonderheiten des
aktiven Knotens zu unterschiedlichen Codes führen könnte.
-
Die
verschiedenen aktiven Knoten eines aktiven Netzwerks können beispielsweise
unterschiedliche Ausführungsumgebungen
aufweisen. Dies ist typischerweise der Fall, wenn sie von verschiedenen Anbietern
stammen und/oder wenn sie unterschiedliche Betriebssysteme ausführen (spezifisches
Betriebssystem des Anbieters, Betriebssystem vom Typ Unix etc.).
-
Ein
weiteres Beispiel ist die Funktionsweise des aktiven Knotens. Ein
klassischer Fall ist die Unterscheidung zwischen internen Routern
(Core Router entsprechend der Terminologie in englischer Sprache)
und Kantenroutern (Edge Router).
-
Das
Ziel der vorliegenden Erfindung besteht darin, die Berücksichtigung
der Besonderheiten des aktiven Knotens bei der Ermittlung des entsprechenden
Codes für
eine aktive Anwendung zu ermöglichen.
-
Zu
diesem Zweck besteht ein erster Gegenstand der Erfindung in einem
Knoten, der eine Vorrichtung zum Empfang einer aktiven Meldung umfasst,
wobei diese aktive Meldung eine Kennung für eine aktive Anwendung, eine
Vorrichtung zur Übertragung
der Kennung für
die aktive Anwendung an einen Server für aktive Anwendungen und eine
Vorrichtung zum Empfang eines Codes von dem Server für aktive
Anwendungen und zu dessen Ausführung
umfasst. Dieser Knoten ist dadurch gekennzeichnet, dass er außerdem eine
Vorrichtung zur Übertragung von
Informationen in Bezug auf seine Umgebung an den Server für aktive
Anwendungen umfasst.
-
Der
zweite Gegenstand der Erfindung besteht in einem Server für aktive
Anwendungen, der eine Vorrichtung zum Empfang einer Kennung für eine aktive
Anwendung von einem aktiven Knoten, eine Verknüpfungsvorrichtung zur Festlegung
eines entsprechenden Codes in Abhängigkeit von der Kennung der
aktiven Anwendung und eine Vorrichtung zur Übertragung dieses zugeordneten
Codes an den aktiven Knoten umfasst. Dieser Server für aktive
Anwendungen ist dadurch gekennzeichnet, dass er außerdem eine
Vorrichtung zum Empfang der Informationen in Bezug auf die Umgebung
des aktiven Knotens umfasst, sowie dadurch, dass die Verknüpfungsvorrichtung
den entsprechenden Code in Abhängigkeit
von diesen Informationen festlegt.
-
Ein
dritter Gegenstand der Erfindung besteht schließlich in einem Verfahren zur Übertragung
einer aktiven Meldung durch einen aktiven Knoten, das Folgendes
umfasst:
- • Empfang
der aktiven Meldung, wobei die aktive Meldung eine Kennung für die aktive
Anwendung umfasst;
- • Übertragung
einer Anfragemeldung an einen Server für aktive Anwendungen (S), die
diese Kennung für
die aktive Anwendung umfasst;
- • Festlegung
eines zugeordneten Codes durch den Server für aktive Anwendungen in Abhängigkeit
von der Kennung für
die aktive Anwendung;
- • Übertragung
dieses zugeordneten Codes an den aktiven Knoten;
- • Ausführung des
zugeordneten Codes und Übertragung
der aktiven Meldung an den folgenden aktiven Knoten.
-
Dieses
Verfahren ist dadurch gekennzeichnet, dass die Anfragemeldung außerdem Informationen
in Bezug auf die Umgebung des aktiven Knotens enthält, sowie
dadurch, dass die Festlegung des zugeordneten Codes in Abhängigkeit
von diesen Informationen erfolgt.
-
Gemäß einer
Ausführungsvariante
der Erfindung umfassen die Informationen in Bezug auf die Umgebung
eine Kennung für
die Ausführungsumgebung
des aktiven Knotens.
-
Gemäß einer
Ausführungsvariante
der Erfindung umfassen die Informationen in Bezug auf die Umgebung
eine Kennung für
das interne Merkmal des aktiven Knotens.
-
Gemäß einer
Ausführungsvariante
der Erfindung entspricht die Anfragemeldung dem HTTP-Protokoll.
-
Die
Erfindung und ihre Vorteile werden beim Durchlesen der folgenden
Beschreibung der Ausführungsvarianten
in Bezug auf die beiliegenden Zeichnungen deutlich.
-
1 stellt
eine erste Ausführungsvariante der
Erfindung dar.
-
2 ist
eine schematische Darstellung der Verknüpfungsvorrichtung im Fall dieser
ersten Ausführungsvariante.
-
3 stellt
eine zweite Ausführungsvariante
der Erfindung dar.
-
4 ist
eine schematische Darstellung der Verknüpfungsvorrichtung im Fall dieser
zweiten Ausführungsvariante.
-
1 stellt
ein aktives Netzwerk AN dar, das aus den aktiven Knoten R1, R2, R3...
Rn besteht.
-
Von
diesem Netzwerk wird eine aktive Meldung empfangen und über die
aktiven Knoten dieses Netzwerks übertragen.
Diese aktive Meldung beinhaltet die Kennung einer aktiven Anwendung.
-
Beim
Empfang der aktiven Meldung überträgt der aktive
Knoten R1 einem Server für aktive Anwendungen S eine
Anfragemeldung Req1, die die Kennung der
aktiven Anwendung beinhaltet. Er überträgt außerdem Informationen in Bezug
auf seine Umgebung.
-
Gemäß dieser
Ausführungsvariante
können diese
Informationen eine Kennung für
die zugeordnete Ausführungsumgebung
umfassen: Betriebssystem, verfügbare
Zusatzmodule, Anbieter des aktiven Knotens...
-
Der
Anwendungsserver S verfügt über eine Vorrichtung
zum Empfang dieser beiden Kennungstypen sowie über eine Verknüpfungsvorrichtung
für die
Kennungen für
die aktiven Anwendungen, die Informationen in Bezug auf die Umgebung der
aktiven Knoten und den zugeordneten Code.
-
Diese
Verknüpfungsvorrichtung
kann die Form einer Zuordnungstabelle annehmen, wie in 2 dargestellt.
-
In
der Zuordnungstabelle T sind die Kennungen der Anwendung A1, A2, A3...
Ap in der linken Spalte dargestellt.
-
Die
mittlere Spalte enthält
die Informationen in Bezug auf die aktiven Knoten. In dieser Ausführungsvariante
ist aus Gründen
der besseren Klarheit nur der Anbieter des aktiven Knotens abgebildet.
Es sind zwei Anbieter F1 und F2 angegeben.
-
Die
rechte Spalte enthält
den zugeordneten Code. Es kann sich beispielsweise um einen Pointer auf
eine Speicherstelle handeln, die diesen Code enthält.
-
Somit
enthält
die aktive Meldung die Kennung der Anwendung A2 und
der aktive Knoten R1 stammt vom Anbieter
F1, während
es sich bei dem zugeordneten Code um den Code C21 handelt.
-
Dieser
zugeordnete Code C21 wird dann an den aktiven
Knoten R1 übertragen, wo er ausgeführt werden
kann.
-
Die
aktive Meldung kann dann an den Knoten R2 übertragen
werden. Man geht davon aus, dass dieser aktive Knoten vom Anbieter
F2 stammt.
-
Beim
Empfang der aktiven Meldung überträgt der aktive
Knoten dann eine Anfragemeldung Req2, die
einerseits eine Kennung dieses Anbieters F2 und
andererseits die Kennung der aktiven Anwendung A2 enthält. Der
Server für
aktive Anwendungen S kann dann mit Hilfe der in 2 dargestellten
Verknüpfungsvorrichtung
T ermitteln, dass es sich bei dem herunterzuladenden Code um den
Code22 handelt. Der Knoten R2 kann
dann diesen ihm angepassten Code22 ausführen.
-
3 stellt
eine zweite Ausführungsvariante
der Erfindung dar.
-
Das
aktive Netzwerk AN besteht aus den aktiven Knoten R1,
R2, R3... Rn. Bei den aktiven Knoten R1 und
R3 handelt es sich um Kantenknoten (Edge Routers),
während
es sich bei den Knoten R2 und Rn um
interne Knoten (Core Routers) handelt. Die Kantenknoten können mit
nicht zum Netzwerk AN gehörenden
Knoten kommunizieren, während
die internen Knoten nur mit Knoten des aktiven Netzwerks kommunizieren
können.
-
Dieser
Unterschied kann Einfluss auf die Architektur dieser verschiedenen
Knotentypen haben:
- • Die internen Knoten sind speziell
für die
Weiterleitung von Meldungen konzipiert und verfügen über eine bessere Hardware-Ausstattung zum Routing,
die zu Lasten der Softwareleistungen geht.
- • Im
Gegensatz dazu verfügen
die Kantenknoten über
bessere Softwareleistungen, da sie im Allgemeinen mehr Funktionen
(Zugangskontrolle etc.) umsetzen müssen.
-
Wenn
ein Kantenrouter, z.B. R1, eine aktive Meldung
empfängt, überträgt er einerseits
die Kennung der aktiven Anwendung, die sie enthält, und andererseits Informationen
in Bezug auf seine Umgebung, d.h. in dieser Ausführungsvariante eine Kennung
des internen Merkmals des betroffenen aktiven Knotens.
-
Wenn
also der aktive Knoten R1 eine aktive Meldung
empfängt, übermittelt
er einem Server für aktive
Anwendungen S, über
eine Anfragemeldung Req1, einerseits eine
Kennung für
die aktive Anwendung, die in der empfangenen aktiven Meldung enthalten
ist, und andererseits eine Kennung für das Internheitsmerkmal des
betroffenen aktiven Knotens.
-
Der
Server für
aktive Anwendungen S verfügt über Vorrichtungen
zum Empfang dieser beiden Kennungstypen sowie über eine Verknüpfungsvorrichtung
zur Festlegung eines zugeordneten Codes in Abhängigkeit von diesen beiden
Kennungen.
-
Eine
mögliche
Ausführungsvariante
dieser Verknüpfungsvorrichtung
ist in 4 dargestellt. Gemäß dieser Ausführungsvariante
handelt es sich bei der Verknüpfungsvorrichtung
um eine Zuordnungstabelle T.
-
Die
erste Spalte enthält
die Kennung für
die aktive Anwendung; ihr Wert beträgt hier A1 oder
A2.
-
Die
zweite Spalte beinhaltet die Funktion als interner Knoten/Kantenknoten:
Sie kann nur zwei Werte enthalten: F für „Kantenknoten" und Int für „Intern".
-
Die
dritte Spalte enthält
schließlich
den zugeordneten Code, C1F, C1Int,
C2F und C2Int.
-
Wenn
die von R1 empfangene aktive Meldung die
Kennung für
die aktive Anwendung A2 enthält, übermittelt
der aktive Knoten R1 dem Server für aktive
Anwendungen S eine Anfragemeldung Req1, die
einerseits die Kennung für
die aktive Anwendung A2 und andererseits
die Kennung des Interheitsmerkmals, hier mit dem Wert „F" beinhaltet.
-
Der
Server für
aktive Anwendungen S kann dann mit Hilfe der Verknüpfungsvorrichtung
T ermitteln, dass es sich bei dem zugeordneten Code um den Code2F handelt.
-
Dieser
Code2F kann dann an den anfragenden, aktiven
Knoten R1 übertragen und dort ausgeführt werden.
-
Der
aktive Knoten R1 kann anschließend die aktive
Meldung an den aktiven Knoten R2 übertragen, bei
dem es sich um einen internen Knoten handelt (d.h. er verfügt über keine
Kommunikationsverbindungen mit Knoten, die sich außerhalb
des betreffenden aktiven Netzwerks befinden).
-
Wie
zuvor überträgt der aktive
Knoten R2 beim Empfang der aktiven Meldung
eine Anfragemeldung Req2 an den Server für aktive
Anwendungen S, die einerseits eine Kennung für die aktive Anwendung A2 und andererseits eine Kennung für das Internheitsmerkmal,
hier mit dem Wert „Int" beinhaltet.
-
Wie
zuvor kann der Server für
aktive Anwendungen S mit Hilfe seiner Verknüpfungsvorrichtung T ermitteln,
dass es sich bei dem zugeordneten Code um den Code2Int handelt.
-
Der
Code2Int wird anschließend an den anfragenden aktiven
Knoten R2 übertragen. Dieser aktive Knoten
R2 kann diesen dann ausführen und die aktive Meldung
an den folgenden Knoten übertragen, beispielsweise
an den aktiven Knoten R3.
-
Die
Erfindung beschränkt
sich nicht auf die oben beschriebenen Ausführungsvarianten, sondern kann
auf alle Arten von Informationen in Bezug auf die Umgebung aktiver
Knoten angewandt werden.
-
Insbesondere
findet die Erfindung bei der Kombination mehrerer Typen von Informationen
in Bezug auf die Umgebung aktiver Knoten Anwendung.
-
Beispielsweise
können
die aktiven Knoten sowohl eine Kennung für den Anbieter als auch eine Kennung
für das
Internheitsmerkmal des betroffenen aktiven Knotens übertragen.
-
Gemäß einer
besonderen Ausführungsvariante
erfolgt die Kommunikation zwischen den aktiven Knoten und dem Server
für aktive
Anwendungen, d.h. die Anfragemeldungen Req1 und
Req2, gemäß dem Protokoll HTTP (HyperText
Transfer Protocol). In dieser Ausführungsvariante werden die Informationen über die
Umgebung des aktiven Knotens gemäß einem
Verfahren entsprechend dem HTTP-Protokoll an
den Server für
aktive Anwendungen übertragen und
der entsprechende Code wird ebenfalls auf eine diesem HTTP-Protokoll
entsprechende Weise zurückgesandt.
-
Die
vorliegende Erfindung beschränkt
sich natürlich
nicht auf diese Ausführungsvariante,
sondern kann mit einem beliebigen anderen Kommunikations- und Datenaustauschprotokoll
umgesetzt werden. Dies kann ein Anwendungsprotokoll wie FTP (File
Transfer Protocol) oder ein anderes Protokoll (Kommunikation über Sockets)
sein. Es kann sich auch um ein Sicherheitsprotokoll wie z.B. SSL
(Secure Socket Lager) handeln.