-
Die
vorliegende Erfindung bezieht sich auf den Bereich der Verkehrswege
zwischen Endgeräten in
einem Netzwerk, und insbesondere auf den Bereich der Weglenkung
(oder Streckenlenkung) von Daten zwischen Quell- und Empfängergerät(en).
-
Auf
Grund des exponentiellen Anstiegs des Verkehrs in den öffentlichen
Kommunikationsnetzen, wie z.B. Internet, sehen sich die Netzbetreiber
immer häufiger
Problemen dahingehend gegenüber,
dass das Netz verstopft ist. Dieses resultiert vor allem aus den
Verfahren, die eingesetzt werden, um die Weglenkung der Daten zwischen
den Netzknoten zu bestimmen. Da die herkömmlichen Verfahren zur Leitweglenkung
nicht Bedingungen sind, und die meisten von ihnen auf der Bestimmung
des kürzesten
Wegs zwischen Quell- und Empfängergerät(en) beruhen, wird
der Verkehr zum größten Teil
gemäß ein und demselben
Weg gelenkt, der aus diesem Grund verstopft, wohingegen zahlreiche
andere Wege, die sich unter Berücksichtigung
anderer Kriterien als der Länge
als besser geeignet erweisen könnten,
unter ihren Nutzungsmöglichkeiten
bleiben.
-
Außerdem ist
die Länge
des Routingwegs nicht unbedingt das wichtigste Kriterium. Andere
Kriterien können
sich bei manchen Anwendungen als viel sachdienlicher erweisen, wie
beispielsweise der erforderliche Durchlassbereich.
-
Bei
dem Versuch, diesem Nachteil abzuhelfen, wurden mehrere Lösungen ins
Auge gefasst. So wurde vorgeschlagen, die Weglenkung mit Hilfe von linearen
Kombinationen aus additiven Kriterien zu bestimmen. Aber zum einen
hat die Zusammenballung von heterogenen Komponenten mit Hilfe von
linearen Kombinationen keine wirkliche Bedeutung und zum anderen
liefert das einen Satz von Wegen, der nicht zwangsläufig den
besten enthält.
-
Vor
kurzem wurden zwei andere Lösungen vorgeschlagen,
um zu versuchen, die Situation zu verbessern, entweder für die Standard-Leitweglenkung
(oder „best
effort routing"),
die gekennzeichnet ist durch die Berücksichtigung von Kriterien
bei Nichtvorhandensein von Bedingungen, oder für die Leitweglenkung, die die
Dienstqualität
einschließt
(oder QoS routing für „Quality
of Service routing"),
gekennzeichnet durch die Berücksichtigung
von Kriterien bei Vorhandensein von Bedingungen.
-
Eine
erste Lösung
betrifft die Multikriterienleitweglenkung vom Typ best effort. Sie
besteht darin, Wege sequentiell unter Verwendung von additiven Kriterien
zu berechnen, sie dann unter Verwendung von additiven und nicht
additiven Kriterien zu vergleichen. Auf Grund der sequentiellen
Verarbeitung erfordert diese Lösung
viel Zeit zum Berechnen. Außerdem zwingt
diese Lösung
dazu, einen Weg aus einem Satz Wege auszuwählen, der nicht unbedingt den
besten Weg enthält.
-
Eine
zweite Lösung
bezieht sich auf die Multikriterienleitweglenkung vom Typ QoS. Diese
Lösung,
die unter dem englischen Akronym TAMCRA (für „Tunable Accuracy Multiple
Constraints Routing Algorithm")
bekannt ist, besteht darin, auf der Ebene jedes Zwischenknotens
des Netzwerks die k kleinsten Wegen aus einem Satz so genannter „nicht
dominierter" Wege
auszuwählen.
Die bei der Berechnung verwendeten Kriterien sind alle vom additiven
Typ, und werden jeweils durch eine obere Grenze bedingt. Die Kriterien
des nicht additiven Typs, wie z.B. der Durchlassbereich werden vor
Beginn der Berechnung in Form von Bedingungen eingeführt, mit
dem Zweck die Verknüpfungen
zwischen den Knoten zu unterdrücken,
die nicht mindestens einer dieser Bedingungen genügen. Diese
Lösung
wird hauptsächlich
beschrieben in dem Dokument von H. De Neve und P. Van Mieghem „A Tunable
Accuracy Multiple Constraints Routing Algorithm", Computer Communication, Band 23, Seite
667-670, 2000.
-
Eine
verbesserte Version des Algorithmus mit der Bezeichnung SAMCRA (Self-Adaptive
Multiple Constraints Routing Algorithm) wurde im Artikel „Hop-by-hop
quality of service routing" von
Piet Van Mieghem, Hans De Neve und Fernando Kuipers vorgestellt,
der in der Zeitschrift „Computer
Networks", Band
37, 2001, erschienen ist.
-
Wie
bei der ersten Lösung
kann es sein, dass diese zweite Lösung (sowohl TAMCRA als auch die
verbesserte Version SAMCRA) nicht den besten Weg liefert, da sie
nicht alle Zwischenwege berücksichtigt.
Außerdem
kann diese Lösung
nur auf die Leitweglenkung vom Typ QoS angewandt werden, da die
Bestimmung der Wege auf einem Vergleich mit Schwellenwerten beruht,
die Bedingungen bilden, und auf Kriterien angewandt werden.
-
Keine
der bekannten Lösungen
ist also vollständig
zufrieden stellend, insbesondere was die Berücksichtigung des Kriteriums
Durchlassbereich während
der Phase der Bestimmung der Weglenkung und/oder die Verwendungseignung
sowohl für
die Leitweglenkung vom Typ best effort als auch für die Leitweglenkung
vom Typ QoS betrifft.
-
Zweck
der Erfindung ist es also, den vorgenannten Nachteilen ganz oder
teilweise abzuhelfen.
-
Hierfür schlägt sie ein
Verfahren zur Bestimmung der Weglenkung von Daten in einem Kommunikationsnetzwerk
vor, das eine Vielzahl von Netzknoten enthält und die folgenden Schritte
einschließt:
- a) sich von der Konnexität zumindest eines Teils der
Vielzahl von Netzknoten vergewissern,
- b) aus den Netzknoten dieses Teils mögliche Wege zwischen einem
Ausgangsknoten und einem Zielknoten berechnen, unter Berücksichtigung
von mindestens zwei gewählten
Kriterien, dann ausgehend von Leistungen der möglichen Wege hinsichtlich der
Kriterien eine ideale Lösung herleiten,
- c) unter Berücksichtigung
der idealen Lösung
jedem möglichen
Weg einen Bedeutungswert zuweisen, dann die möglichen Wege unter Berücksichtigung
ihres jeweiligen Bedeutungswertes klassifizieren, und
- d) aus den klassifizierten möglichen
Wegen die k am besten klassifizierten Wege auswählen, so dass Daten über einen
dieser k Wege gelenkt werden.
-
Definitionsgemäß werden
zwei Knoten als „zusammenhängend" bezeichnet, wenn
sie untereinander direkt oder indirekt Daten über einen oder mehrere andere
Knoten austauschen können.
Mit anderen Worten: wenn man einen Graph aus Knoten betrachtet,
wird dieser Graph als zusammenhängend bezeichnet,
wenn jedes Knotenpaar durch einen Weg verbunden werden kann.
-
Das
Verfahren gemäß der Erfindung,
das beim oben stehenden Basismodus der Leitweglenkung vom Typ best
effort dienen kann, kann ebenfalls der Leitweglenkung vom Typ QoS
dienen. Hierfür kann
man zu Beginn des Schritts a) damit beginnen, unter der Vielzahl
von Netzknoten alle Paare von Netzknoten zu ermitteln, die untereinander
eine gerichtete Verbindung aufbauen können, die alle gewählten lokalen
Bedingungen unterstützt,
sich dann von der Konnexität
sämtlicher
Knoten dieser Paare überzeugen.
Als Variante oder Ergänzung
kann man am Ende von Schritt b) unter den möglichen Wegen diejenigen festhalten,
die allen gewählten
globalen Bedingungen genügen,
so dass man bei Schritt c) den festgehaltenen möglichen Wegen Bedeutungswerte
zuweist.
-
Unter „lokaler
Bedingung" versteht
man hier eine Bedingung, die auf gerichtete Verknüpfungen (oder
Verbindungen) angewandt wird, beispielsweise auf Bögen. Außerdem verstehen
wir hier unter „globaler
Bedingung" eine
Bedingung, die auf einen Weg angewandt wird, wie beispielsweise
die Anzahl der Sprünge
des Wegs oder die maximale Dauer des Wegs.
-
Bei
einer Leitweglenkung vom Typ best effort ist es besser, sich von
der Konnexität
sämtlicher
Knoten aus der Vielzahl zu überzeugen,
da diese Knoten nicht Gegenstand einer Vorauswahl, beispielsweise anhand
von lokalen Bedingungen, sind.
-
Vorzugsweise
ist mindestens eines der verwendeten Kriterien vom nicht additiven
Typ. In diesem Fall ist es vorteilhaft bei Schritt b) eine Spur
zu integrieren, die eine Strecke speichert, die einem Teilweg entspricht,
so dass das Auftreten von Zyklen (oder Schleifen) in den im Aufbau
befindlichen Wegen erfasst und ihm vorgebeugt wird. Und es ist noch günstiger,
bei dem Verfahren zur Elimination der Teilwege manche so genannte „schwach
nicht dominierte" Lösungen hinsichtlich
des nicht additiven Kriteriums zu behalten.
-
Das
Verfahren gemäß der Erfindung
kann zahlreiche ergänzende
Kennzeichen enthalten, die getrennt und/oder kombiniert genommen
werden können,
und insbesondere:
- – wird die Konnexität (die eine
Bedingung ist) vorzugsweise durch einen Ausbreitungsmechanismus
vom Ausgangsknoten hin zu allen anderen Knoten der Vielzahl von
Knoten überprüft, damit jeder
Knoten besucht wird. Hierfür
kann man beispielsweise den Tarjan-Algorithmus verwenden;
- – kann
man bei Schritt b) für
jeden Weg Werte ermitteln, die für
dessen „Leistung" bezogen jeweils auf
die gewählten
Kriterien stehen, dann jeden Weg, dessen Leistungswerte „nicht
dominiert" sind,
als möglichen
Weg qualifizieren. In diesem Fall kann man immer noch bei Schritt
b) und für
jedes Kriterium den besten Leistungswert, der auf den möglichen
Wegen festgestellt wurde, den so genannten optimalen Wert ermitteln,
dann die ideale Lösung
in Form eines Multipletts aus Komponenten konstruieren, die aus
den verschiedenen ermittelten optimalen Werten gebildet werden.
In der Tat stellen die Verbindungen, auf denen die optimalen Werte
beobachtet werden, selten eine zusammenhängende Folge dar. Anders ausgedrückt: nur
ausnahmsweise existiert ein idealer Weg, der einer idealen Lösung entspricht;
- – kennzeichnet
bei Schritt c) der jedem möglichen Weg
zugewiesene Bedeutungswert vorzugsweise den größten Wert der Komponenten,
verknüpft mit
den verschiedenen gewählten
Kriterien einer gewogenen Tchebychev-Funktion, die eine Funktion
der Differenzen zwischen dem Leistungswert des betreffenden Wegs
und der entsprechenden Komponente der idealen Lösung ist. In diesem Fall stellen
die festgehaltenen k möglichen
Wege die k kleinsten Bedeutungswerte dar.
-
Die
Erfindung erstreckt sich auch auf eine Vorrichtung zur Bestimmung
der Weglenkung von Daten in einem Kommunikationsnetzwerk, das eine Vielzahl
von Netzknoten enthält.
Diese Vorrichtung wird dadurch gekennzeichnet, dass sie Verarbeitungsmittel
einschließt,
die imstande sind:
- a) sich von der Konnexität zumindest
eines Teils der Vielzahl von Netzknoten zu vergewissern,
- b) aus den Netzknoten dieses Teils mögliche Wege zwischen einem
Ausgangsknoten und einem Zielknoten zu berechnen, unter Berücksichtigung
von mindestens zwei gewählten
Kriterien, dann ausgehend von Leistungen der möglichen Wege hinsichtlich der
Kriterien eine ideale Lösung herzuleiten,
- c) unter Berücksichtigung
der idealen Lösung
jedem möglichen
Weg einen Bedeutungswert zuzuweisen, dann die möglichen Wege unter Berücksichtigung
ihres jeweiligen Bedeutungswertes zu klassifizieren, und
- d) aus den klassifizierten möglichen
Wegen die k am besten klassifizierten Wege auszuwählen, so dass
Daten über
einen dieser k Wege gelenkt werden.
-
Die
Vorrichtung gemäß der Erfindung,
die beim oben stehenden Basismodus der Leitweglenkung vom Typ best
effort dienen kann, kann ebenfalls der Leitweglenkung vom Typ QoS
dienen. Hierfür können die
Verarbeitungsmittel so aufgebaut sein, dass damit begonnen wird
unter der Vielzahl von Netzknoten alle Paare von Netzknoten zu ermitteln, die
untereinander eine gerichtete Verbindung aufbauen können, die
alle gewählten
lokalen Bedingungen unterstützt,
sich dann von der Konnexität
sämtlicher
Knoten dieser Paare überzeugen.
Als Variante oder Ergänzung
können
die Verarbeitungsmittel so aufgebaut sein, dass sie unter den möglichen
Wegen nur diejenigen festhalten, die allen gewählten globalen Bedingungen
genügen,
so dass nur den festgehaltenen möglichen
Wegen Bedeutungswerte zugewiesen werden.
-
Wenn
mindestens eines der verwendeten Kriterien vom nicht additiven Typ
ist, ist es vorteilhaft, dass die Verarbeitungsmittel so aufgebaut
sind, dass in die Berechnung der möglichen Wege eine Spur integriert
wird, die eine Strecke speichert, die einem Teilweg entspricht,
so dass das Auftreten von Zyklen in den im Ausbau befindlichen Wegen
erfasst und ihm vorgebeugt wird. Und es ist noch günstiger,
dass die Verarbeitungsmittel imstande sind, bei dem Verfahren zur
Elimination der Teilwege manche so genannte „schwach nicht dominierte" Lösungen hinsichtlich
des nicht additiven Kriteriums zu behalten.
-
Die
Verarbeitungsmittel der Vorrichtung gemäß der Erfindung können zahlreiche
ergänzende Kennzeichen
enthalten, die getrennt und/oder kombiniert genommen werden können, und
insbesondere können
sie:
- – sich überzeugen
von der Konnexität
auf der Grundlage eines Ausbreitungsmechanismus vom Ausgangsknoten
hin zu allen anderen Knoten der Vielzahl von Knoten, damit jeder
Knoten besucht (oder getestet) wird.
- – bei
der Berechnung der möglichen
Wege für
jeden Weg Werte ermitteln, die für
dessen „Leistung" bezogen jeweils
auf die gewählten
Kriterien stehen, dann jeden Weg, dessen Leistungswerte „nicht
dominiert" sind,
als möglichen
Weg qualifizieren. In diesem Fall können die Verarbeitungsmittel
so aufgebaut sein, dass für
jedes Kriterium der beste Leistungswert ermittelt wird, der auf
den möglichen
Wegen festgestellt wurde, der so genannte „optimale Wert", dann die ideale
Lösung
in Form eines Multipletts aus Komponenten konstruieren, die aus
den verschiedenen ermittelten optimalen Werten gebildet werden.
- – jedem
möglichen
Weg einen Bedeutungswert zuweisen, der vorzugsweise den größten Wert der
Komponenten kennzeichnet, verknüpft
mit den verschiedenen gewählten
Kriterien einer gewogenen Tchebychev-Funktion, die eine Funktion der
Differenzen zwischen dem Leistungswert des betreffenden Wegs und
der entsprechenden Komponente der idealen Lösung ist. In diesem Fall stellen
die festgehaltenen k möglichen
Wege die k kleinsten Bedeutungswerte dar.
-
Unabhängig davon,
ob es sich um das Verfahren oder die Vorrichtung gemäß der Erfindung handelt,
ist es besser, wenn:
- – die etwaigen lokalen und/oder
globalen Bedingungen aus einer Gruppe ausgewählt werden, die mindestens
den erforderlichen Mindestdurchlassbereich, die maximale Länge des
Wegs, die maximale Dauer des Wegs, mindestens eine verbotene Verbindung,
die Anzahl der Sprünge
des Wegs und eine Farbbeschränkung
des Wegs beinhaltet;
- – die
Kriterien aus einer Gruppe ausgewählt werden, die mindestens
den verfügbaren
Durchlassbereich, die Anzahl der Sprünge des Wegs und die Dauer
des Wegs einschließt.
In diesem Fall ist es noch besser, wenn die zwei gewählten Kriterien
der verfügbare
Durchlassbereich und die Dauer des Wegs sind. Während des Schritts b) (oder mit
Hilfe der Verarbeitungsmittel) kann man dann günstig das Kriterium, das sich
auf die Dauer des Wegs bezieht, durch eine Strafe, beispielsweise betreffend
die Verwaltungskosten des Wegs beeinflussen. (oder gewichten);
- – die
Kriterien in Abhängigkeit
von der erforderlichen Dienstart gewählt werden;
- – die
gewählten
Kriterien in Abhängigkeit
von ihrer Bedeutung unter Berücksichtigung
von Verwaltungsinformationen gewichtet werden;
- – die
etwaigen Bedingungen und die damit verknüpften Werte in Abhängigkeit
von der erforderlichen Dienstqualität gewählt werden.
-
Außerdem kann
die Erfindung vor allem in IP-Kommunikationsnetzen eingesetzt werden.
-
Weitere
Kennzeichen und Vorteile der Erfindung treten bei der Analyse der
nachfolgenden detaillierten Beschreibung und der beigefügten Zeichnungen
zutage, wobei:
-
1 schematisch
einen Teil eines Kommunikationsnetzwerks veranschaulicht, das eine
Vielzahl von Knoten enthält,
die mit einer Vorrichtung zur Berechnung der Weglenkung gemäß der Erfindung ausgestattet
sind, und
-
2 ein
Graph ist, der schematisch die Art der Bestimmung von Lösungen mit
der Bezeichnung „nicht
dominiert" veranschaulicht.
-
Die
beigefügten
Zeichnungen sind im Wesentlichen von gesicherter Beschaffenheit.
Folglich können
sie nicht nur zur Ergänzung
der Erfindung, sondern gegebenenfalls auch zu ihrer Definition beitragen.
-
Wie
auf 1 veranschaulicht enthält ein IP-Kommunikationsnetzwerk
im Allgemeinen eine Vielzahl von Vermittlungs- oder Leitweglenkungs-Terminals
Nn (hier n = 1 bis 7, die auch als Knoten bezeichnet werden, wobei
an einige davon Nutzer- oder Unternehmensgeräte Tm (hier m = 1 bis 4) angeschlossen
sind. Wenn ein Nutzer- oder Unternehmensendgerät, das so genannte Quellgerät, Daten
zu einem oder mehreren anderen Nutzer- oder Unternehmensendgeräten übertragen
möchte,
die als Empfängergeräte bezeichnet
werden, gewinnt er die IP-Adresse oder -Adressen des oder der Empfängergeräte zurück, anschließend ermittelt
der Knoten Nn, an den er angeschlossen ist, mit Hilfe eines Wegeberechnungsmoduls
und gemäß dem verteilten Weglenkungsprotokoll
des Netzwerks, wie beispielsweise OSPF (für „Open Shortest Path First") den Weg (oder die
Strecke), der/die es ermöglichen
soll, die Daten vom Quellgerät
am besten zu den Empfängergeräten weiter
zu leiten. Jeder Knoten eines IP-Netzwerks
enthält
ein Wegeberechnungsmodul, das den nächsten benachbarten Knoten
(„next
hop") ermittelt,
an den er die Datenpakete übertragen
soll, die somit Schritt für
Schritt weiter geleitet werden.
-
Unter „Weg" versteht man hier
eine geordnete Folge von Knoten oder Verbindungen (zwischen zwei
Knoten i und j). Natürlich
kann ein Weg im Verlauf des Datentransfers abgeändert werden, beispielsweise
um einem Hardware-Problem Rechnung zu tragen. Folglich sind alle
Knoten Nn eines Netzwerks im Allgemeinen fähig, eine Weglenkung gemäß dem verteilten
Weglenkungsprotokoll des Netzwerks zu berechnen.
-
Im
Nachfolgenden betrachtet man das Kommunikationsnetzwerk als ein
IP-Netzwerk.
-
Die
Vorrichtung aus der Erfindung ist ein Modul zur Berechnung von Weglenkungen.
Es soll also in jedem Knoten Nn eines Kommunikationsnetzwerks installiert
werden, so dass der Weg berechnet wird, der am besten geeignet ist
für die
Datenübertragung
zwischen einem Quellgerät
und einem (oder mehreren) Empfängergeräten. Es
kann außerdem
an ein Leitweglenkungsprotokoll gekoppelt werden, wie beispielsweise
das Verbindungsstatus-Routingprotokoll
OSPF, sobald dieses Protokoll eine Verkehrsverwaltung vom Typ TE-LSA
(für „Trafic
Engineering – Link
State Advertisement")
unterstützt.
-
Die
Vorrichtung D gemäß der Erfindung
ist für
die Berechnung von Multikriterien-Weglenkungen mit oder ohne Bedingungen
bestimmt. Sie ist also für die
Leitweglenkung vom Typ best effort ebenso wie für die Leitweglenkung vom Typ
QoS geeignet.
-
Die
Vorrichtung D enthält
ein Verarbeitungsmodul M, das in Form von elektronischen Schaltungen,
Software-(oder EDV-)Modulen oder von einer Kombination aus Schaltungen
und Software ausgeführt
sein kann. Dieses Verarbeitungsmodul M kann auf die Informationen über den
Nutzungsstatus des Netzwerks via die TE-LSAs zugreifen, sowie auf
die Netzwerktopologie, und folglich auf die Liste seiner Knoten
Nn, die im Allgemeinen in einem Speicher des Knotens gespeichert
ist, in dem es angesiedelt ist, der regelmäßig aktualisiert wird.
-
Nachstehend
werden wir eine Ausführungsart
der Vorrichtung gemäß der Erfindung
beschreiben, die für
die Leitweglenkung vom Typ QoS geeignet ist, und gekennzeichnet
wird durch die Berücksichtigung
von Kriterien bei Vorhandensein von lokalen und/oder globalen Bedingungen.
Aber wie vorstehend erwähnt
ist die Vorrichtung ebenfalls geeignet für Basis-Leitweglenkung vom Typ best effort,
die gekennzeichnet ist durch die Berücksichtigung von Kriterien
bei Nichtvorhandensein von Bedingungen.
-
Wenn
das Verarbeitungsmodul M eine Anforderung Wegeberechnung empfängt, beginnt
es zunächst
damit, sich die Topologie und den Nutzungsstatus des Netzwerks zu
beschaffen, um alle Knotenpaare zu ermitteln, die untereinander
eine Verbindung (oder eine Verknüpfung,
die durch ein Paar (i, j) definiert wird, welches zwei Knoten bezeichnet)
aufbauen können,
die jede gewählte
lokale Bedingung unterstützt.
-
Unter „lokaler
Bedingung" verstehen
wir hier jedwede Bedingung, die auf eine gerichtete Verbindung eines
Netzwerks, beispielsweise einen Bogen, anwendbar ist, und vor allem
den erforderlichen Mindestdurchlassbereich, die maximale Länge einer
Verbindung, die maximale Dauer einer Verbindung, eine oder mehrere
verbotene Verbindungen.
-
Im
Falle einer Leitweglenkung vom Typ best effort wird dieser Anfang
der Verarbeitung natürlich weggelassen,
denn man verwendet keine Bedingungen.
-
Vorzugsweise
erfolgt diese Ermittlung von Paaren auf der Grundlage der Erstellung
eines Filterungsgraphen G(X,U), wo X für den Satz Knoten Nn des Netzwerks
und U für
den Satz gerichtete Verknüpfungen
(oder Verbindungen) (i,j) steht. Alle Verbindungen des Graphen G(X,U),
die mindestens eine der gewählten
lokalen Bedingungen verletzen, werden aus diesem Graphen eliminiert,
was einen „gefilterten" Graphen erzeugt.
-
Das
Verarbeitungsmodul M vergewissert sich anschließend, dass der gefilterte Graph
G(X,U) (im mathematischen Sinn des Begriffs) zusammenhängend ist.
Hierfür
verwendet es vorzugsweise eine Technik zur Informationsausbreitung
vom Quellknoten Ns zu sämtlichen
Knoten Nn des gefilterten Graphen, so dass alle Knoten überprüft (oder
getestet) werden. Diese Überprüfung der
Konnexität
des Graphen kann beispielsweise mit dem Tarjan-Algorithmus erfolgen.
-
Im
Falle einer Leitweglenkung vom Typ best effort stellt die Überprüfung der
Konnexität
betreffend zumindest einen Teil der Knoten des Graphen, aber vorzugsweise
bezogen auf alle Knoten des Graphen, den Anfang der Verarbeitung
dar.
-
Fehlt
die Konnexität
des gefilterten Graphen (oder nicht gefilterten Graphen, im Fall
des best effort) kann der Rest der Verarbeitung nicht durchgeführt werden.
-
Wenn
der gefilterte (oder nicht gefilterte) Graph zusammenhängend ist,
berechnet das Verarbeitungsmodul M aus den Knoten der festgehaltenen Paare
(oder Verbindungen (i,j)) alle möglichen
Wege (oder „efficient
paths") r* zwischen
einem Ausgangsknoten, beispielsweise N3, an den das Quellgerät angeschlossen
ist, z.B. T1, und einem Zielknoten, beispielsweise N6, an den das
Empfängergerät, z.B.
T3, angeschlossen ist, wobei mindestens zwei gewählte Kriterien berücksichtigt
werden.
-
Unter „möglicher
Weg" verstehen wir
hier einen als „effektiv" oder „pareto-optimal" bezeichneten Weg,
dessen Leistungswerte, auf die wir später zurückkommen werden, „nicht
dominiert" sind.
Außerdem
versteht man hier unter „Kriterium" jegliche Art von
Kriterium (oder Metrik), die in einem Netzwerk berücksichtigt
werden kann, unabhängig
davon, ob es vom additiven Typ ist, wie zum Beispiel die Dauer des
Wegs C1 oder die Anzahl der Sprünge
des Wegs C3, oder vom nicht additiven Typ, wie zum Beispiel der
verfügbare
Durchlassbereich C2 (der außerdem vom
Typ „Minimum-Maximum" ist). C1 und C2
sind so genannte Hochpegelkriterien, während C3 ein so genanntes Niedrigpegelkriterium
ist. Folglich werden die Kriterien C1 und C2 vorzugsweise immer
berücksichtigt,
während
das Kriterium C3 optional ist.
-
Außerdem kann
es von Bedeutung sein, das Kriterium C1 (Dauer des Wegs) mit einer
Strafe zu beeinflussen (oder zu gewichten), die sich beispielsweise
auf die Verwaltungskosten des Wegs CA bezieht. Dieses ermöglicht eine
Verringerung der Rechenvektoren, auf die wir später zurückkommen werden, um eine Dimension
und folglich die Begrenzung der Berechnungszeit und des Speichers,
der für
diese Berechnung erforderlich ist.
-
Vorzugsweise
wird ein möglicher
Weg r* wie nachstehend angegeben berechnet. Zunächst wird ein Weg durch eine
Variable r(s,t) bezeichnet, wobei s den Quellknoten bezeichnet und
t den Empfängerknoten,
sowie durch einen Leistungsvektor Z(r), der durch ein Multiplett
von Komponenten (Z1(r), Z2(r), ..., Zp(r)) definiert wird, die jeweils
mit einem der p verwendeten Kriterien verknüpft sind. Die Komponente Z1(r)
stellt beispielsweise die Leistung des Wegs r bezogen auf das Kriterium
Cl dar und die Komponente Z2(r) steht für die Leistung des Wegs r bezogen
auf das Kriterium C2.
-
Für ein Kriterium
des additiven Typs, wie z.B. C1, wird die Komponente Z1(r) der Leistung
Z(r) definiert durch die Relation Z1(r) = Σ(i,j)∊rC1(i,j).
-
Wenn
das Kriterium C2 durch die Strafe CA beeinflusst (oder gewichtet)
wird, wird die vorstehende Relation geschrieben als Z1(r) = Σ(i,j)∊rC1(i,j)·CA(i,j).
-
Bei
einem Kriterium des nicht additiven Typs wie z.B. C2, wird die Komponente
Z2(r) der Leistung Z(r) definiert durch die Relation Z2(r) = MIN(i,j)∊rC2(i,j).
-
Hier
bezeichnet Cp(i,j) den Wert des Kriteriums Cp für einen Bogen (i,j).
-
Unter
Berücksichtigung
dieser Definitionen wird ein Weg als möglicher Weg r·(s,t),
das heißt
als „effektiv" qualifiziert, wenn
es keinen denkbaren Weg zwischen den Knoten s und t gibt, der die
Relation Zp(r) ≤ Zp(r*), ∀ p = 1
bis P (wobei P die Gesamtzahl der verwendeten Kriterien ist) bestätigt, und
Zp'(r) < Zp'(r*) für eine beliebige
dieser Komponenten p, die zu dem Komplex {1, ...,P} gehört.
-
Der
Leistungsvektor Z(r*) des Wegs r* wird dann als „nicht dominierte" Lösung (oder
NDS für „Non-Dominated
Solution") bezeichnet,
wenn jedweder andere Weg r' einen
Leistungsvektor Z(r')
besitzt, von dem mindestens eine der Komponenten Zp(r') „weniger
gut" (oder „weniger
leistungsfähig") ist als die entsprechende
Komponente Zp(r*) des Wegs r*. Ein solcher Weg r* verknüpft mit
einem nicht dominierten Leistungsvektor wird dann als möglicher
Weg (oder „efficient
path") oder „pareto-optimal" bezeichnet.
-
Ein
Beispiel für
die Ermittlung einer nicht dominierten Lösung (oder NDS) wird auf 2 für den Fall
von zwei Kriterien C1 und C2 des kommensurablen Typs veranschaulicht,
d.h. deren metrische Abmessungen addiert und multipliziert werden
können. Das
gilt ebenfalls für
inkommensurable Größen, wie z.B.
den Durchlassbereich C2. Das gilt ebenfalls für Komplexe inkommensurabler
Größen untereinander wie
z.B. die Dauer des Wegs C1 und den Durchlassbereich C2.
-
In
diesem Beispiel ist Z(r*) eine nicht dominierte Lösung (oder
NDS), denn es gibt keinen anderen Punkt, dessen sämtliche
Koordinaten streng kleiner sind als diejenigen von Z(r*). Jeder
andere Punkt Z(r) besitzt mindestens eine Komponente, die weniger
gut ist als die entsprechende Komponente von Z(r*). Mit anderen
Worten, der Kegel, welcher materialisiert wird durch Trennstriche
und unterhalb und links von Z(r*) angeordnet ist, ist leer. Bei
diesem Beispiel wird Z(r')
von vier Punkten dominiert, darunter Z(r*), die sich in dem Kegel
befinden, welcher durch Trennstriche materialisiert wird und unter
ihm liegt, aber nicht durch die Endpunkte Z1(r)min/C1,
verknüpft mit
C1, und Z2(r)min/C2, verknüpft mit
C2, die also ebenfalls nicht dominiert sind. Lediglich Z(r') ist hier eine dominierte
Lösung.
Außerdem
ist Z(r') eine Lösung, die
als von Z(r°) „schwach
nicht dominierte" Lösung bezeichnet
wird, da mindestens eine der Komponenten von Z(r°) gleich (und nicht strikt kleiner)
seinem Homolog in Z(r'') ist.
-
Um
die verschiedenen möglichen
Wege r* zu berechnen, die durch die vorstehende Methode erzielt
werden, kann man eine Anpassung eines Labelzuweisungsalgorithmus
verwenden, von der Art, die im Dokument von E. Martins „On a multi-criteria
shortest path problem",
European Journal Of Operational Research, Band 16, Seite 236-245,
1984 beschrieben wird.
-
Die
Anpassung besteht vor allem darin, in die additiven Kriterien, die
durch den Martins-Algorithmus
verarbeitet werden, ein Kriterium des nicht additiven Typs zu integrieren,
wie zum Beispiel ein Kriterium des Typs „Minimum-Maximum". Die Integration eines
solchen Kriteriums erfordert Abänderungen des
Algorithmus, wie beispielsweise die unten genannten.
-
Eine
erste Abänderung
kann darin bestehen, in den Algorithmus zur Wegeberechnung (entspricht dem
Schritt b) des Verfahrens) eine Spur zu integrieren, die die Strecke
speichert, welche einem Teilweg entspricht, um bei der Progression
des Algorithmus das Auftreten von Zyklen (oder Schleifen) in den
in der Errichtung befindlichen Wegen zu erfassen und ihm vorzubeugen.
-
Eine
zweite Abänderung
vorzugsweise mit der ersten kombiniert kann darin bestehen, bei
dem Verfahren zur Eliminierung der Teilwege Lösungen beizubehalten, die bezogen
auf das Kriterium „Minimum-Maximum" schwach nicht dominiert
sind. Wenn man zum Beispiel drei Kriterien C1, C2, C3 betrachtet,
von denen die ersten beiden additiv sind und das dritte vom Typ „Minimum-Maximum", wird der Punkt z
= (3, 2, 4) durch den Punkt z° =
(1, 1, 4) für
die Kriterien C1 und C2 dominiert, aber schwach nicht dominiert
für das
Kriterium C3. z und der entsprechende Teilweg werden also beibehalten.
Dieses ermöglicht es,
alle möglichen
effektiven Wege zu betrachten. Jedoch sind die Lösungen, die den effektiven
Endwegen (in Schritt b) des Verfahrens erzeugt) entsprechen, alle
nicht dominiert und nicht schwach nicht dominiert.
-
Alle
ermittelten möglichen
Wege r* werden dann in einem Speicher der Vorrichtung D (nicht dargestellt)
gespeichert, was gewährleistet,
dass der beste davon, unter Berücksichtigung
der verwendeten Kriterien und Bedingungen, nicht ausgelassen wurde.
-
Das
Verarbeitungsmodul M bildet dann eine ideale Lösung
Genauer
gesagt ist die ideale Lösung
ein
Vektor, der sich in Form eines Komponentenmultipletts darstellt.
-
Diese
Komponenten werden folgendermaßen
berechnet. Für
jedes Kriterium Cp ruft man den besten Leistungswert Z*p ab, der
auf den möglichen Wegen
festgestellt wurde. Jeder beobachtete beste Leistungswert Z*p wird
bezeichnet als optimaler Wert verknüpft mit dem entsprechenden
Kriterium. Die verschiedenen optimalen Werte bilden also die Komponenten
der idealen Lösung
=
(Z*1, Z*2, ..., Z*p), die für
einen idealen Weg
steht.
-
Es
ist wichtig, darauf hinzuweisen, dass der ideale Weg
der
durch die ideale Lösung
dargestellt
wird, nicht unbedingt einem der möglichen Wege r* des Satzes
von ermittelten möglichen
Wegen entspricht. Das ist sogar selten der Fall, insofern als die
Verbindungen, an denen die optimalen Werte beobachtet werden, selten
eine zusammenhängende Folge
bilden. Wenn es jedoch der Fall ist, so bildet er den einzigen möglichen
Weg r*, denn er dominiert alle anderen.
-
Das
Verarbeitungsmodul M unterwirft anschließend die verschiedenen möglichen
Wege mindestens einer gewählten
globalen Bedingung.
-
Unter „globalen
Bedingungen" versteht
man hier Bedingungen, die auf Wege angewandt werden können, im
Gegensatz zu den lokalen Bedingungen, die für Verbindungen (oder Verknüpfungen)
zwischen Knoten angewandt werden. Es kann sich beispielsweise um
den erforderlichen Mindestdurchlassbereich, die maximale Länge des
Wegs, die maximale Anzahl der Sprünge des Wegs und die maximale Dauer
des Wegs handeln.
-
Das
Verarbeitungsmodul M hält
diejenigen möglichen
Wege r* fest, die die verwendete globale Bedingung oder die verwendeten
globalen Bedingungen nicht verletzt. Im Falle einer Leitweglenkung
vom Typ best effort wird diese Verarbeitung natürlich ausgelassen.
-
Anschließend weist
das Verarbeitungsmodul M jedem möglichen
Weg r* einen Bedeutungswert (oder „path value") U(r) zu, unter
Berücksichtigung der
idealen Lösung
.
-
Zu
diesem Zweck kann man eine klassische Skalarisierungsfunktion, wie
zum Beispiel eine gewichtete Tchebychev-Funktion verwenden, die
abhängig
ist von den Differenzen zwischen den Komponenten Zp(r) des Leistungswertes
Z(r) des betreffenden Wegs r und den entsprechenden Komponenten
die
für einen
idealen Weg
stehen.
Eine solche Funktion kann sich darstellen in der Form
wobei Wp ein Koeffizient
zur Gewichtung des Kriteriums Cp ist, das bei der Konfiguration
der Vorrichtung gewählt
wird und es erlaubt den Kriterien eventuell verschiedene relative
Gewichte zu geben. Dieser Bedeutungswert quantifiziert den Leistungsabstand,
der einen möglichen
Weg r* vom idealen Weg
trennt, unter
Berücksichtigung
der jeweiligen Gewichte, die den verschiedenen verwendeten Kriterien
zugewiesen werden.
-
Das
Verarbeitungsmodul M klassifiziert anschließend die möglichen Wege r* unter Berücksichtigung
ihrer jeweiligen Bedeutungswerte U(r). Mit der oben angegebenen
Definition des Bedeutungswertes U(r) werden die möglichen
Wege entsprechend der ansteigenden Reihenfolge des Bedeutungswerts klassifiziert,
wobei der kleinste Bedeutungswert U(r) dem möglichen Weg r* entspricht,
der am besten für die
Datenübertragung
unter Berücksichtigung
der verwendeten Kriterien und Bedingungen geeignet ist. Die Klassifizierung
erfolgt also bezogen auf einen idealen Punkt, der von den Daten
abgeleitet wird, und nicht auf der Grundlage eines Vergleichs, der
auf willkürlichen
Wegen beruht.
-
Dann
wählt es
aus den klassifizierten möglichen
Wegen die k Wege, die am besten klassifiziert sind, so dass Daten
via einen dieser k Wege weitergeleitet werden, und vorzugsweise
denjenigen, der am besten klassifiziert ist (bei dem beschriebenen Beispiel
der kleinste Bedeutungswert U(r). K ist eine ganze Zahl, die beispielsweise
zwischen 1 und 5 liegen kann. Es ist wichtig festzuhalten, dass
die Anzahl der Wege, die durch die vorstehend beschriebene Verarbeitung
gefunden werden, kleiner als k sein kann.
-
Vorstehend
ging es um Kriterien und Bedingungen (lokale und globale), die in
manchen Fällen etwa
identisch scheinen können.
In der Tat können sie
als Auswahlattribute betrachtet werden, die sich bisweilen in Form
von Kriterien, bisweilen in Form von Bedingungen materialisieren,
wobei bekannt ist, dass ein Kriterium im Allgemeinen Gegenstand
einer Maximierung oder Minimierung ist, wohingegen eine Bedingung
im Allgemeinen definiert wird durch einen oder zwei Werte, die festgelegt
oder einschränkend sind.
-
Diese
Auswahlattribute werden vom Netzbetreiber bei der Konfiguration
des Netzes festgelegt, und hängen
von der erforderlichen Dienstart ab, zum Beispiel Senden einer E-Mail
oder Anforderung betreffend den Aufbau einer Videokonferenz, und/oder von
der erforderlichen Dienstqualität
(oder QoS) bei der ursprünglichen
Reservierung von Mitteln. Noch genauer gesagt wählt man die Kriterien in Abhängigkeit
von der erforderlichen Dienstart, während man die Bedingungen und
ihre Werte in Abhängigkeit
von der erforderlichen Dienstqualität wählt.
-
Die
Erfindung bietet ebenfalls ein Verfahren zur Bestimmung der Weglenkung
von Daten in einem Kommunikationsnetzwerk an, das eine Vielzahl
von Knoten enthält.
-
Dieses
kann mit Hilfe der vorstehend vorgestellten Vorrichtung D ausgeführt werden.
Da die hauptsächlichen
und optionalen Funktionen und Unterfunktionen, die von den Schritten
dieses Verfahrens gewährleistet
werden, etwa identisch sind mit denjenigen, die von den verschiedenen
die Vorrichtung D bildenden Mitteln gewährleistet werden, werden nachstehend
nur diejenigen Schritte zusammengefasst, die die Hauptfunktionen
des Verfahrens gemäß der Erfindung
ausführen.
-
Dieses
Verfahren wird gekennzeichnet durch die folgende Kombination der
Schritte:
- a) sich von der Konnexität zumindest
eines Teils der Vielzahl von Netzknoten vergewissern,
- b) aus den Netzknoten dieses Teils mögliche Wege r* zwischen einem
Ausgangsknoten Ns und einem Zielknoten Nt berechnen, unter Berücksichtigung
von mindestens zwei gewählten
Kriterien (wovon eines vorzugsweise vom nicht additiven Typ ist,
wie der Durchlassbereich), dann ausgehend von Leistungen Z(r*) der
möglichen
Wege r* hinsichtlich dieser Kriterien eine ideale Lösung herleiten,
- c) unter Berücksichtigung
der idealen Lösung jedem
möglichen
Weg r* einen Bedeutungswert U(r*) zuweisen, dann die möglichen
Wege r* unter Berücksichtigung
ihres jeweiligen Bedeutungswertes klassifizieren, und
- d) aus den klassifizierten möglichen
Wegen die k am besten klassifizierten Wege auswählen, so dass Daten über einen
dieser k Wege gelenkt werden.
-
Um
eine Leitweglenkung vom Typ QoS zu ermöglichen kann man zu Beginn
von Schritt a) damit beginnen, unter der Vielzahl von Netzknoten
alle Paare von Netzknoten zu ermitteln, die untereinander eine gerichtete
Verbindung aufbauen können,
die alle gewählten
lokalen Bedingungen unterstützt,
sich dann von der Konnexität
sämtlicher
Knoten dieser Paare überzeugen.
Als Variante oder Ergänzung kann
man am Ende von Schritt b) unter den möglichen Wegen diejenigen festhalten,
die allen gewählten
globalen Bedingungen genügen,
so dass man in Schritt c) den festgehaltenen möglichen Wegen Bedeutungswerte
zuweist.
-
Die
Erfindung beschränkt
sich nicht auf die vorstehend lediglich beispielhaft beschriebenen
Ausführungsarten
von Verfahren und Vorrichtungen, sondern schließt alle Varianten ein, die
für den
Fachmann im Rahmen der nachstehenden Ansprüche denkbar sind.
-
So
wurde vorstehend eine Betriebsart vom Typ QoS beschrieben, bei der
man Kriterien (mindestens zwei), mindestens eine lokale Bedingung
und mindestens eine globale Bedingung berücksichtigte. Aber es können andere
Betriebsarten ins Auge gefasst werden. So kann man einen vereinfachten
Betriebsmodus vom Typ QoS ins Auge fassen, bei dem man Kriterien
(mindestens zwei) und mindestens eine lokale Bedingung berücksichtigt,
ohne globale Bedingung. Man kann auch einen anderen vereinfachten
Betriebsmodus vom Typ QoS ins Auge fassen, bei dem man Kriterien
(mindestens zwei) und mindestens eine globale Bedingung berücksichtigt, ohne
lokale Bedingung. Schließlich
kann man wie zuvor angesprochen auch einen Betriebsmodus vom Typ
best effort ins Auge fassen, bei dem man nur Kriterien (mindestens
zwei) berücksichtigt.