-
GEBIET DER ERFINDUNG
-
Die
Erfindung betrifft das Gebiet der Kommunikationsnetzwerke und, konkreter,
das Routen von Verkehr durch ein Kommunikationsnetzwerk.
-
ALLGEMEINER STAND DER TECHNIK
-
In
einem gegebenen Kommunikationsnetzwerk kann das Routen von Verkehr
von einer Quelle zu einem Ziel durch eine Vielfalt an Verfahren
erreicht werden. In den traditionellen Routingschemen des Pipe-Modells
wird Verkehr zwischen Netzwerkzugangspunkten durch Punkt-zu-Punkt-Pipes transportiert,
welche vorab zugewiesene Kapazitäten
aufweisen. In einer Variation dieses Modells ist eine Pipe für den Verkehr
im ungünstigsten
Fall zwischen jedem Knotenpaar im Netzwerk zugewiesen, und die Kapazitäten dieser
Pipes werden addiert, um die erforderliche Kapazität eines
Links, welcher diese Knoten verbindet, zu berechnen. In zahlreichen
Modellen ist Kenntnis des tatsächlichen
Verkehrs im Netzwerk (d.h. der Verkehrsmatrix) erforderlich, um
den Verkehr effizient zu routen. Ein Beispiel ist in der
US-Patentschrift 2004/0064583 zu
finden.
-
Die
Verkehrsmatrix ist typischerweise schwierig zu bestimmen, wobei
häufig
der Einsatz beträchtlicher
Rechnerressourcen erforderlich ist. Außerdem ändert sich Verkehr in einem
Netzwerk mit der Zeit ständig,
wodurch noch größere Netzwerkressourcen
erforderlich werden, um die Änderungen
des Netzwerkverkehrs zu verfolgen und darauf zu reagieren. Idealerweise
sollte das Routingschema in einem Netzwerk geändert werden, um dynamische Änderungen
in der Verkehrsmatrix aufzunehmen. Häufig treten bei Implementieren
dieses Ansatzes Probleme auf. Leider liegt es in der Natur der Sache,
dass es schwierig ist, ein Routingschema rasch genug zu ändern, um
derartige dynamische Verkehrsänderungen aufzunehmen.
-
Da
es in der Praxis schwierig ist, die vollständige Verkehrsmatrix eines
Netzwerks zu kennen, gibt es alternierende Ansätze, die Verkehrsmatrix zu
spezifizieren. Ein derartiges Verfahren, das derzeit vorgeschlagen
wird, ist das Hose-Modell. Im Hose-Modell ist Netzwerkverkehr dadurch
charakterisiert, dass aggregierte Volumina des eingehenden und ausgehenden
Verkehrs pro Knoten verwendet werden, an Stelle eines Verwendens
einer Verkehrsmatrix des Punkt-zu-Punkt-Bedarfs für jedes Knotenpaar im Netzwerk.
In anderen Worten werden im Hose-Modell die Eingangs- und Ausgangskapazitäten für jeden
der Knoten in einem Netzwerk als bekannt angenommen; allerdings
sind die exakten Verkehrsaufteilungen unter den Knoten nicht bekannt.
Ein Hauptkritikpunkt des Hose-Modells besteht darin, dass, verglichen
mit einem Netzwerk, in welchen die gesamte Verkehrsbedarfsmatrix
bekannt ist, beträchtliche
Ressourcen und übermäßiges Aufbieten von
Kapazität
erforderlich sind, um Verkehr zu routen.
-
Baumförmiges Routen
ist eine Variation des Hose-Modells,
in welchem ein Pfad durch ein Netzwerk unter Verwendung eines Baumansatzes
errechnet wird, in welchem Verbindungen durch das Netzwerk darauf
beschränkt
werden, eine baumförmige Unterstruktur
der ursprünglichen
Topologie des Netzwerks zu verwenden. Da das Routen in diesem Fall auf
die Verwendung eines Baumes begrenzt bleibt, kann die Länge des
Pfads wesentlich länger
sein als in anderen Variationen des Hose-Modells, und zusätzliche
Kapazität
kann erforderlich sein, um Redundanz zu implementieren. So gibt
es keine Garantie, dass der Routing-Algorithmus, selbst eine optimale
Lösung
des Algorithmus, bandbreiteneffizient sein wird.
-
Für den Fall,
in welchem die Ungewissheit der Verkehrsverteilung innerhalb eines
Netzwerks hoch ist, machen die Flexibilität, die kleineren Blöcke, der
geringere Verkehrsverlust, sowie das erleichterte Spezifizieren
der unterschiedlichen Variationen des Hose-Modells das Hose-Modell
zu einer attraktiven Alternative zum traditionellen Pipe-Modell
des Routens. Leider bleibt das übermäßige Ressourcenaufbieten,
das aktuell erforderlich ist, um die unterschiedlichen Variationen
des Hose-Modells zu implementieren, nach wie vor ein wesentlicher
Nachteil des Hose-Modells, besonders, da der Faktor des erforderlichen Überaufgebots
für bestehende
Variationen des Hose-Modells
Tendenz zeigt, mit der Netzwerkgröße zu steigen.
-
KURZDARSTELLUNG DER ERFINDUNG
-
Die
Erfindung umfasst ein Verfahren zum Routen von Verkehr von wenigstens
einem von mehreren ersten Knoten zu mehreren Zwischenknoten, entsprechend
jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren. Konkret umfasst
ein Verfahren, gemäß einer
Ausführungsform,
Empfangen von Verkehr an mehreren ersten Knoten, Identifizieren
mehrerer Zwischenknoten zwischen den mehreren ersten Knoten und
wenigstens einem Zielknoten, Bestimmen jeweiliger Zwischenknoten-Verkehrsgewichtungsfaktoren
und Routen von Abschnitten des Verkehrs zu den mehreren Zwischenknoten,
entsprechend den Zwischenknoten-Verkehrsgewichtungsfaktoren.
-
In
einer Ausführungsform
umfasst die Erfindung ein computerlesbares Medium, welches ein Softwareprogramm
speichert, das, wenn es von einem Computer ausgeführt wird,
bewirkt, dass der Computer ein Verfahren durchführt, das Empfangen von Verkehr
an einem ersten Knoten umfasst, wobei der Verkehr angepasst ist,
zu jedem von mehreren Zwischenknoten geroutet zu werden, und der
erste Knoten jedem der Zwischenknoten einen jeweiligen Verkehrsgewichtungsfaktor
zuordnet, und Routen jeweiliger Abschnitte des Verkehrs zu jedem
der mehreren Zwischenknoten, entsprechend den jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren.
-
KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
Die
Lehren der vorliegenden Erfindung sind gut zu verstehen durch Kenntnisnahme
der folgenden ausführlichen
Beschreibung, im Zusammenhang mit den begleitenden Zeichnungen,
in welchen:
-
1 ein
Blockdiagramm höherer
Ebene einer Architektur eines Kommunikationsnetzwerks abbildet;
-
2 ein
Blockdiagramm höherer
Ebene einer Steuerung, die zur Verwendung in der Architektur des
Kommunikationsnetzwerks in 1 geeignet
ist, abbildet;
-
3 ein
Ablaufschema eines Verfahrens gemäß der vorliegenden Erfindung
abbildet;
-
4 ein
Ablaufschema eines Verfahrens gemäß der vorliegenden Erfindung
abbildet; und
-
5 ein
Ablaufschema eines Verfahrens gemäß der vorliegenden Erfindung
abbildet.
-
Zur
besseren Verständlichkeit
sind identische Bezugszeichen verwendet, wo das möglich ist, um
identische Elemente zu bezeichnen, die den Figuren gemeinsam sind.
-
AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
-
Die
Erfindung ist im Kontext einer Architektur eines Virtuellen Privaten
Netzwerks erörtert,
welches mehrere erste Knoten, mehrere Zwischenknoten und mehrere
Zielknoten enthält.
Allerdings kann die Verfahrensweise der Erfindung ohne weiteres
an anderen Netzwerkarchitekturen und Netzwerktopologien angewendet
werden. Eine Ausführungsform
der Erfindung umfasst ein Verfahren zum Routen von Netzwerkverkehr
von einem ersten Knoten zu mehreren Zwischenknoten, entsprechend
jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren, welche den mehreren
Zwischenknoten zugeordnet sind.
-
Dieses
Verfahren schafft die Notwendigkeit einer Kenntnis des tatsächlichen
Verkehrs im Netzwerk (der Verkehrsmatrix) ab, da nur die Eingangs- und
Ausgangskapazitäten,
welche jedem der Knoten im Netzwerk zugeordnet sind, erforderlich
sind, um das Routen von Verkehr durch das Netzwerk zu optimieren.
Außerdem
resultiert sorgfältige
Auswahl der Gewichtungsfaktoren in einer Verbesserung der Bandbreiteneffizienz
des Netzwerks.
-
1 bildet
ein Blockdiagramm höherer Ebene
einer Architektur eines Kommunikationsnetzwerks ab, welche die Vorteile
der vorliegenden Erfindung aufweist. Konkret umfasst die Architektur 100 des
Kommunikationsnetzwerks in 1 ein Kommunikationsnetzwerk 110 in
Kommunikation mit einem Verwaltungssystem 120, über einen
Kommunikationslink 130. Das Kommunikationsnetzwerk 110 umfasst
mehrere erste Knoten 1121 bis 112N (zusammen erste Knoten 112),
mehrere Zwischenknoten 1141 bis 1149 (zusammen Zwischenknoten 114)
und mehrere Zielknoten 1161 bis 116N , (zusammen Zielknoten 116).
Zu Zwecken der Klarheit des Beispiels sind neun Zwischenknoten in 1 dargestellt;
allerdings können
weniger oder mehr Zwischenknoten verwendet werden.
-
Wie
in 1 abgebildet, kommunizieren die ersten Knoten 112,
die Zwischenknoten 114 und die Zielknoten 116 über Kommunikationslinks 118. Wenngleich
in 1 nicht abgebildet, können alle ersten Knoten 112 direkt
miteinander über
zusätzliche
Kommunikationslinks verbunden sein. In ähnlicher Weise können, wenngleich
in 1 nicht abgebildet, alle Zielknoten 116 direkt
miteinander über
zusätzliche
Kommunikationslinks verbunden sein. Außerdem können, wenngleich in 1 nicht
abgebildet, alle ersten Knoten 112 direkt mit jedem der
Zielknoten über
zusätzliche
Kommunikationslinks verbunden sein.
-
Außerdem kann,
wenngleich als in Ausführung
nur einer Rolle abgebildet, jeder der ersten Knoten 112 als
ein Zwischenknoten und als ein Zielknoten funktionieren, zusätzlich zum
Funktionieren als ein erster Knoten. In ähnlicher Weise kann, wenngleich
als in Ausführung
nur einer Rolle abgebildet, jeder der Zwischenknoten 114 als
ein erster Knoten und als ein Zielknoten funktionieren, zusätzlich zum Funktionieren
als ein Zwischenknoten. In ähnlicher Weise
kann, wenngleich als in Ausführung
nur einer Rolle abgebildet, jeder der Zielknoten 116 als
ein erster Knoten und als ein Zwischenknoten funktionieren, zusätzlich zum
Funktionieren als ein Zielknoten.
-
Bei
einem gegebenen beliebigen der ersten Knoten 112 weist
jeder von entsprechenden mehreren Zwischenknoten 114, ihm
zugeordnet, einen jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktor auf, derart,
dass die Summe der jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren eins (einhundert
Prozent) ergibt. So werden die Zwischenknoten-Verkehrsgewichtungsfaktoren ungeachtet
des ersten Knotens 112 gesetzt, welcher den Verkehr empfängt. Ein
Unterset von Zwischenknoten 114, zugeordnet einem gegebenen
beliebigen der ersten Knoten 112, kann jeweilige Verkehrsgewichtungsfaktoren
gleich null aufweisen.
-
In
einer Ausführungsform
umfasst die Erfindung ein Verfahren zum Routen von Verkehr von einem
der ersten Knoten 112 zu den Zwischenknoten 114,
wobei das Verfahren Empfangen von Verkehr an einem der ersten Knoten 112 umfasst,
und Routen des Verkehrs zu den Zwischenknoten 114, entsprechend
jeweiligen Verkehrsgewichtungsfaktoren, welche jedem der Zwischenknoten 114 zugeordnet
sind. Das Routen von Netzwerkverkehr von einem der ersten Knoten 112 zu
einem der Zwischenknoten 114, entsprechend einem Zwischenknoten-Verkehrsgewichtungsfaktor,
ist eine erste Stufe (Phase) des Routens von Netzwerkverkehr von
einem der ersten Knoten 112 zu einem der Zielknoten 116.
-
Zum
Beispiel, angenommen, Verkehr wird an erstem Knoten 1122 empfangen und von erstem Knoten 1122 zu Zwischenknoten 1144 , 1145 und 1146 geroutet,
wobei jeder der Zwischenknoten 1144 , 1145 und 1146 ,
ihm zugeordnet, einen jeweiligen Verkehrsgewichtungsfaktor aufweist.
Für die
Zwecke dieses Beispiels sei angenommen, dass die Verkehrsgewichtungsfaktoren,
welche den Zwischenknoten 1144 , 1145 und 1146 zugeordnet
sind, jeweils 0,3, 0,4 und 0,3 betragen. So werden, entsprechend
diesem Beispiel, dreißig
Prozent des Verkehrs, welcher an erstem Knoten 1122 empfangen
wird, zu Zwischenknoten 1144 geroutet,
vierzig Prozent des Verkehrs, welcher an erstem Knoten 1122 empfangen wird, werden zu Zwischenknoten 1145 geroutet, und dreißig Prozent des Verkehrs, welcher
an erstem Knoten 1122 empfangen
wird, werden zu Zwischenknoten 1146 geroutet.
-
Das
Routen des Netzwerkverkehrs wird durch wenigstens eines von mehreren
Verfahren erreicht. In einer Ausführungsform wird der Verkehr, welcher
an einem der ersten Knoten 112 empfangen wird, zu Zwischenknoten 114 im
Random-Verfahren geroutet, derart, dass jeder der jeweiligen Verkehrsgewichtungsfaktoren
auf einem konstanten Wert gehalten wird. In einer weiteren Ausführungsform
wird der Netzwerkverkehr, welcher an einem der ersten Knoten 112 empfangen
wird, zu den Zwischenknoten 114 entsprechend einem Round-Robin- Algorithmus geroutet,
derart, dass jeder der jeweiligen Verkehrsgewichtungsfaktoren auf
einem konstanten Wert gehalten wird.
-
In
einer weiteren Ausführungsform
des vorliegenden Verfahrens wird der Netzwerkverkehr, welcher von
einem der ersten Knoten 112 zu den Zwischenknoten 114 geroutet
wird, von den Zwischenknoten 114 zu den Zielknoten 116 geroutet.
Das Routen des Netzwerkverkehrs von einem der Zwischenknoten 114 zu
einem der Zielknoten 116 ist eine zweite Stufe des Routens
von Netzwerkverkehr von einem der ersten Knoten 112 zu
einem der Zielknoten 116. In Fortsetzung des obigen Beispiels
wird der Verkehr, der von erstem Knoten 1122 zu
Zwischenknoten 1144 , 1145 und 1146 geroutet
wird, danach von jedem dieser Zwischenknoten 1144 , 1145 und 1146 zu den
Zielknoten 116 geroutet.
-
In
einer derartigen Ausführungsform
gehört der
Verkehr, welcher, illustrativ, durch ersten Knoten 1122 geroutet wird, zu einer einzigen Verbindung,
die zu einem der Zielknoten 116 geroutet wird. In dieser Ausführungsform
wird der Verkehr, welcher an Zwischenknoten 1144 , 1145 und 1146 empfangen
wird, zu einem der Zielknoten 116 (Zielknoten 1161 , zum Beispiel) geroutet. In einer
weiteren derartigen Ausführungsform,
in welcher der Verkehr, welcher durch ersten Knoten 1122 geroutet wird, zu mehreren Verbindungen
gehört,
wird der Verkehr, welcher an Zwischenknoten 1144 , 1145 und 1146 empfangen
wird, zu wenigstens einem der Zielknoten 116 geroutet.
-
Die
Zielknoten 116, zu welchen der Verkehr geroutet wird, werden
bestimmt durch die Zwischenknoten 114, durch Prüfen von
Paket-Headern des Netzwerkverkehrs, welcher geroutet wird. Nach
Bestimmen des Zielknotens, für
welchen der Verkehr beabsichtigt ist, wird das Routen von Verkehr
von den Zwischenknoten 114 zu Zielknoten 116 durch wenigstens
eines von mehreren Verfahren erreicht. In einer Ausführungsform
wird das Routen von Verkehr von Zwischenknoten 114 zu Zielknoten 116 unter
Verwendung eines konventionellen Verfahrens des Routens von Verkehr
in einem Netzwerk durchgeführt,
wie etwa von Routing-Algorithmen des Pfads der geringsten Kosten,
Routing-Algorithmen des kürzesten
Pfads, und Ähnlichem.
-
In
einer weiteren Ausführungsform
wird das Verfahren iterativ durch jeden einer ersten Gruppe mehrerer
Zwischenknoten durchgeführt,
um den Verkehr zu wenigstens einer weiteren Gruppe mehrerer Zwischenknoten
zu Routen, vor Routen des Verkehrs zu den Zielknoten 116.
In dieser Ausführungsform funktioniert
jeder der ersten Gruppe mehrerer Zwischenknoten, welcher Verkehr
von einem der ersten Knoten 112 empfängt, als ein erster Knoten,
wie oben beschrieben, für
die wenigstens eine weitere Gruppe mehrerer Zwischenknoten, zu welchen
der Verkehr geroutet wird, bevor er zu den Zielknoten 116 geroutet
wird.
-
In ähnlicher
Weise ist diese Ausführungsform
erweiterbar, zusätzliche
Gruppen mehrerer Zwischenknoten zwischen den mehreren ersten Knoten und
den mehreren Zielknoten zu unterstützen. Also gibt es keinerlei
Limitierung in der Anzahl von Gruppen (Stufen) mehrerer Zwischenknoten,
die definiert werden können,
um Verkehr zu empfangen, zu verarbeiten und zu routen, entsprechend
zugeordneten Verkehrsgewichtungsfaktoren, vor dem Routen des Verkehrs
zu den Zielknoten 116.
-
Wie
oben erwähnt,
wird das Routen von Verkehr von den Zwischenknoten 114 zu
Zielknoten 116 unter Verwendung von wenigstens einem von
mehreren Verfahren erreicht. In einer Ausführungsform wird das Routen
von Verkehr von Zwischenknoten 114 zu Zielknoten 116 unter
Verwendung eines konventionellen Verfahrens des Routens von Verkehr
innerhalb eines Netzwerks durchgeführt, wie etwa von Routing-Algorithmen
des Pfads der geringsten Kosten Routing-Algorithmen des kürzesten
Pfads, und Ähnlichem.
In einer weiteren Ausführungsform
routen die Zwischenknoten 114 Verkehr zu Zielknoten 116,
entsprechend wenigstens einem weiteren Verkehrsgewichtungsfaktor,
welcher wenigstens einem der Zwischenknoten zugeordnet ist, welche
den Verkehr routen, und dem Zielknoten, für welchen der Verkehr beabsichtigt
ist.
-
Zurück zu dem
oben beschriebenen Beispiel, in welchem ein Anteil des Verkehrs,
welcher an erstem Knoten 1122 empfangen
wird, von erstem Knoten 1122 zu
dem Zwischenknoten 1145 , entsprechend
einem ersten Zwischenknoten-Verkehrsgewichtungsfaktor von 0,4, geroutet
wird. In der vorliegenden Ausführungsform
wird der Verkehr, welcher an Zwischenknoten 1145 empfangen
wird, danach zu Zielknoten 1161 geroutet,
unter Verwendung wenigstens eines konventionellen Verfahrens des
Routens von Verkehr innerhalb eines Netzwerks und wenigstens eines
weiteren Verkehrsgewichtungsfaktors.
-
Unter
Verwendung der Verfahrensweisen der vorliegenden Erfindung ist die
gesamte Menge an Verkehr, welcher von Knoteni zu
Knotenj geroutet wird, gegeben durch die
Gleichung ΘjRi + ΘiCj. In dieser Gleichung
stellt der erste Term ΘjRi die Menge an Netzwerkverkehr
dar, welcher von Knoteni zu Knotenj geroutet wird, welcher sich aktuell in
der ersten Phase des Routens von einem der ersten Knoten 112 zu einem
der Zwischenknoten 114 befindet, und der zweite Term ΘiCj stellt die Menge
an Netzwerkverkehr dar, welcher von Knoteni zu
Knotenj geroutet wird, welcher sich aktuell
in der zweiten Phase des Routens, von einem der Zwischenknoten 114 zu
einem der Zielknoten 116, befindet.
-
In
dem ersten Term ΘjRi ist Θj der Knotenj zugeordnete
Zwischenknoten-Verkehrsgewichtungsfaktor, und Ri ist
die gesamte Eingangskapazität
von Knoteni. In dem zweiten Term ΘiCj ist Θi der Knoteni zugeordnete
Zwischenknoten-Verkehrsgewichtungsfaktor,
und Cj ist die gesamte Ausgangskapazität von Knotenj. Wie oben beschrieben, stellen die Zwischenknoten-Verkehrsgewichtungsfaktoren Θi und Θj den Anteil des Verkehrs dar, welcher, zu
jenen jeweiligen Knoten, von den ersten Knoten 112 geroutet wird.
Also ist die gesamte Menge an Verkehr zwischen Knoteni und
Knotenj (und daher die gesamte zwischen
Knoteni und Knotenj erforderliche
Menge an Kapazität)
unabhängig
von der Verkehrsmatrix des Kommunikationsnetzwerks 110.
-
Um,
zum Beispiel, die Menge an Verkehr zu bestimmen, welcher von dem
Zwischenknoten 1142 zu dem Zwischenknoten 1148 geroutet wird, wird Netzwerkverkehr
sowohl in der ersten Stufe als auch in der zweiten Stufe des Routens
zwischen Zwischenknoten 1142 und 1148 gezählt. In diesem Beispiel sei
angenommen, dass Netzwerkverkehr von dem ersten Knoten 1122 zu dem Zwischenknoten 1148 durch Zwischenknoten 1142 und 1145 ,
entsprechend einem Zwischenknoten-Verkehrsgewichtungsfaktor geroutet wird.
Da dieser Netzwerkverkehr in der ersten Stufe (Phase) des Routens
geroutet wird, gemäß der vorliegenden
Erfindung, wird dieser Netzwerkverkehr als ein Abschnitt des ersten Terms ΘjRi der oben definierten
Gleichung gezählt.
-
In
Fortsetzung dieses Beispiels sei angenommen, dass Netzwerkverkehr
von dem ersten Knoten 1121 zu dem
Zwischenknoten 1142 geroutet wird,
entsprechend einem Zwischenknoten-Verkehrsgewichtungsfaktor. Ferner
sei angenommen, dass der Netzwerkverkehr, der zu dem Zwischenknoten 1142 geroutet wird, danach zu dem Zielknoten 1162 geroutet wird, durch Zwischenknoten 1145 und 1148 .
Da dieser Netzwerkverkehr von Zwischenknoten 1142 zu
Zwischenknoten 1148 in der zweiten
Stufe (Phase) des Routens geroutet wird, gemäß der vorliegenden Erfindung,
wird dieser Netzwerkverkehr als ein Abschnitt des zweiten Terms
(ΘiCj) der oben definierten Gleichung
gezählt.
-
Die
ersten Zwischenknoten-Verkehrsgewichtungsfaktoren können auf
eine Weise erstellt werden, die dazu tendiert, eine im Wesentlichen
konstante Nutzung eines Pfads zwischen zwei Knoten in dem Netzwerk 110 (illustrativ
zwischen Zwischenknoten 1142 und
Zwischenknoten 1148 ) zu bewirken.
Der Pfad, welcher eine im Wesentlichen konstante Nutzung aufweist,
hat eine Kapazität,
die durch die Gleichung ΘiRi + ΘjCi gegeben ist,
wie oben beschrieben. Das Erstellen derartiger Pfade, welche eine
im Wesentlichen konstante Nutzung aufweisen, resultiert in einem
Routen von Verkehr, das unabhängig
von der Verkehrsmatrix des Netzwerks ist. Also bietet die vorliegende
Erfindung eine effiziente Nutzung von Netzwerkkapazität, ohne
Kenntnis der Verkehrsmatrix des Netzwerks zu erfordern.
-
In
einer Ausführungsform
weisen Zwischenknoten 114 des Kommunikationsnetzwerks 110 aktuell
keine jeweiligen Verkehrsgewichtungsfaktoren auf, die ihnen zugeordnet
sind. Also kann das Routen von Verkehr durch das Netzwerk auf jeglichem
konventionellen Verfahren zum Routen von Verkehr durch ein Netzwerk
beruhen. In dieser Ausführungsform
umfasst die Erfindung ein Verfahren zum Anpassen von Verkehrsfluss
innerhalb eines bestehenden Netzwerks. Wie in dieser Schrift beschrieben, kann
wenigstens ein Set jeweiliger Verkehrsgewichtungsfaktoren verwendet
werden, um den Verkehrsfluss innerhalb eines Netzwerks zu steuern.
-
In
einer Ausführungsform
werden jeweilige Verkehrsgewichtungsfaktoren für jeden der Zwischenknoten 114 erstellt.
Die jeweiligen Verkehrsgewichtungsfaktoren werden verwendet, um
das Routen von Verkehr von den ersten Knoten 112 zu den Zwischenknoten 114 anzupassen.
In einer weiteren Ausführungsform
werden nächste
jeweilige Verkehrsgewichtungsfaktoren erstellt, für eine nächste Gruppe
mehrerer Zwischenknoten, wobei die nächsten jeweiligen Verkehrsgewichtungsfaktoren
funktionieren, das Routen von Verkehr von der ersten Gruppe mehrerer
Zwischenknoten zu der nächsten
Gruppe mehrere Zwischenknoten anzupassen. Da es keinerlei Limitierung
in der Anzahl an Stufen von Zwischenknoten zwischen den Startknoten 112 und
den Zielknoten 116 gibt, besteht keinerlei Limitierung
in der Anzahl jeweiliger Verkehrsgewichtungsfaktoren, welche jenen
Stufen von Zwischenknoten zugeordnet sind.
-
Das
Erstellen der jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren, welche
den Zwischenknoten 114 zugeordnet sind, wird durch wenigstens
eines von mehreren Verfahren erreicht. In einer Ausführungsform
werden die jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren durch ein
Verwaltungssystem erstellt, durch Verwaltungssystem 120,
wie abgebildet in 1, zum Beispiel. In dieser Ausführungsform
werden die jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren danach an
die ersten Knoten 112, die Zwischenknoten 114 und
die Zielknoten 116 kommuniziert, zur Verwendung beim Routen
des Verkehrs. In einer weiteren Ausführungsform werden die jeweiligen
Zwischenknoten-Verkehrsgewichtungsfaktoren von wenigstens einem
der ersten Knoten 112, der Zwischenknoten 114 und
der Zielknoten 116 bestimmt, und werden danach unter den
Knoten innerhalb des Kommunikationsnetzwerks 110 kommuniziert.
In beiden Ausführungsformen
werden die jeweiligen Verkehrsgewichtungsfaktoren unter Verwendung
jeglicher geeigneter Kommunikationsmittel zwischen Netzwerkelementen
kommuniziert.
-
Das
Anpassen von Verkehrsfluss in einem bestehenden Netzwerk über Verwaltungssystem 120 wird
unter Verwendung wenigstens eines von mehreren Verfahren erreicht.
In einer Ausführungsform
liest das Verwaltungssystem 120 ein Softwareprogramm, führt das Softwareprogramm
aus und kommuniziert die resultierenden Anweisungen zum Routen des Verkehrs
an die Knoten in Kommunikationsnetzwerk 110. In dieser
Ausführungsform
werden die resultierenden Anweisungen zum Routen des Verkehrs verwendet,
um den Verkehrsfluss innerhalb des Netzwerks anzupassen.
-
In
einer weiteren Ausführungsform
kommuniziert Verwaltungssystem 120 wenigstens einen Abschnitt
eines Softwareprogramms an wenigstens einen der Knoten in Kommunikationsnetzwerk 110.
In dieser Ausführungsform
führt ein
Knoten, welcher wenigstens einen Abschnitt eines Softwareprogramms
empfängt,
den empfangenen Abschnitt des Softwareprogramms aus, derart, dass
die resultierenden Anweisungen zum Routen des Verkehrs von diesem
Knoten verwendet werden, um den Fluss des Verkehrs innerhalb des
Netzwerks anzupassen.
-
2 bildet
ein Blockdiagramm höherer Ebene
einer Steuerung ab, die zur Verwendung in der Architektur 100 des
Kommunikationsnetzes in 1 geeignet ist. Konkret umfasst
die exemplarische Steuerung 200 in 2 einen
Prozessor 210, einen Speicher 220, zum Speichern
unterschiedlicher Elementeverwaltungs-, Netzwerkverwaltungs-, Verkehrsverwaltungs-
und Steuerprogramme 225, unterstützende Schaltungen 230,
und Eingangs-/Ausgangsschaltung 240. Wie in 2 abgebildet,
sind der Speicher 220, die unterstützenden Schaltungen 230 und
die Eingabe-/Ausgabeschaltung 240 mit dem Prozessor 210 gekoppelt.
-
Der
Prozessor 210 wirkt mit konventionellen unterstützenden
Schaltungen 230 zusammen, wie etwa Stromversorgungen, Uhrenschaltungen,
Cache-Speicher und Ähnlichem,
sowie mit Schaltungen, die beim Ausführen der Programme 225 unterstützen, die
in Speicher 220 gespeichert sind. Also ist es denkbar,
dass einige der Prozessschritte, die in dieser Schrift als Softwareprozesse
offenbart sind, innerhalb der Hardware implementiert werden können, zum
Beispiel als die unterstützenden
Schaltungen 230, die mit dem Prozessor 210 zusammenwirken, um
verschiedene Schritte auszuführen.
-
Die
Steuerung 200 umfasst Eingabe-/Ausgabeschaltung 240,
die eine Schnittstelle zwischen den verschiedenen funktionalen Elementen
der Steuerung 200 zum Kommunizieren mit dem Netzwerk 110 in 1 bildet.
In einer Ausführungsform
ist die Steuerung 200 in 2 als das
Verwaltungssystem 120 in 1 implementiert.
In dieser Ausführungsform kommuniziert,
wie abgebildet in 1, Verwaltungssystem 120 mit
Kommunikationsnetzwerk 110 über Kommunikationslink 130.
-
Wenngleich
die Steuerung 200 in 2 als ein
Rechner für
allgemeine Zwecke abgebildet ist, der programmiert ist, verschiedene
Funktionen zum Routen von Verkehr, gemäß der vorliegenden Erfindung,
auszuführen,
kann die Erfindung in Hardware implementiert werden, zum Beispiel
als eine applikationsspezifische integrierte Schaltung. Es ist also
beabsichtigt, dass die in dieser Schrift beschriebenen Prozessschritte
breit zu interpretieren sind, als gleichermaßen durch Software oder durch
Hardware auszuführen,
entweder einzeln oder in Kombination.
-
3 bildet
ein Ablaufschema eines Verfahrens gemäß der vorliegenden Erfindung
ab. Konkret bildet 3 ein Ablaufschema eines Verfahrens 300 zum
Routen von Netzwerkverkehr von wenigstens einem von mehreren ersten
Knoten zu wenigstens einer Gruppe mehrerer Zwischenknoten ab, entsprechend
jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren; und optional,
wenigstens einem Zielknoten. Das Verfahren 300 in 3 wird
mit Schritt 310 eingeleitet und fortgeführt zu Schritt 320,
wo Verkehr durch wenigstens einen der mehreren ersten Knoten empfangen
wird. Der Verkehr wird entsprechend einem beliebigen geeigneten Verfahren
zum Durchführen
dieser Funktionen, wie im Fach bekannt, empfangen und verarbeitet.
-
Mit
Schritt 330 wird Netzwerkverkehr, der durch die mehreren
ersten Knoten während
des Schritts 320 empfangen wird, zu wenigstens einem der
mehreren Zwischenknoten, entsprechend jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren, geroutet.
Die Zwischenknoten, zu welchen der Netzwerkverkehr geroutet wird,
sind nicht notwendigerweise direkt mit dem ersten Knoten gekoppelt,
welcher den Netzwerkverkehr routet. In einer Ausführungsform
endet das Verfahren 300 optional nach Schritt 330.
In einer weiteren Ausführungsform
wird Verfahren 300 fortgeführt zu Schritt 340.
-
Mit
Schritt 340 bestimmen Zwischenknoten, die mit Schritt 330 Verkehr
empfangen haben, ob der Verkehr direkt zu wenigstens einem der mehreren Zielknoten
geroutet werden soll, oder ob der Verkehr zu einer nächsten Gruppe
mehrerer Zwischenknoten geroutet werden soll, bevor er zu wenigstens
einem der mehreren Zielknoten geroutet wird. Wenn der Verkehr zu
einer nächsten
Gruppe mehrerer Zwischenknoten geroutet werden soll, wird das Verfahren 300 fortgeführt zu Schritt 350.
Wenn der Verkehr direkt zu wenigstens einem der mehreren Zielknoten geroutet
werden soll, wird das Verfahren 300 fortgeführt zu Schritt 360.
-
Mit
Schritt 350 routen die Zwischenknoten, die zuletzt Netzwerkverkehr
empfangen haben, diesen Verkehr zu der nächsten Gruppe mehrerer Zwischenknoten.
In einer Ausführungsform
wird das Routen von Netzwerkverkehr zu der nächsten Gruppe mehrerer Zwischenknoten
unter Verwendung eines konventionellen Verfahrens zum Routen von
Verkehr in einem Netzwerk durchgeführt, wie etwa von Routing-Algorithmen
des Pfads der geringsten Kosten, Routing-Algorithmen des kürzesten
Pfads, und Ähnlichem.
In einer weiteren Ausführungsform
wird das Routen von Verkehr zu der nächsten Gruppe mehrerer Zwischenknoten
entsprechend jeweiligen nächsten
Zwischenknoten-Verkehrsgewichtungsfaktoren durchgeführt, welche
der nächsten
Gruppe mehrerer Zwischenknoten zugeordnet sind.
-
Die
Schritte 340 und 350 werden danach rekursiv durchgeführt, bis
der Verkehr zu den mehreren Zwischenknoten geroutet wird, welche
den Verkehr direkt zu wenigstens einem der mehreren Zielknoten routen
werden. Sowie Verkehr von der letzten Gruppe mehrerer Zwischenknoten
empfangen wird, welche den Verkehr direkt zu wenigstens einem der mehreren
Zielknoten routen, wird das Verfahren 300 fortgeführt zu Schritt 360.
-
Mit
Schritt 360 routet die letzte Gruppe mehrerer Zwischenknoten,
die Verkehr empfangen, diesen Verkehr zu wenigstens einem der mehreren
Zielknoten. Die Zielknoten, zu welchen der Verkehr geroutet wird,
sind nicht notwendigerweise direkt mit den mehreren Zwischenknoten
gekoppelt, von welchen der Verkehr geroutet wird. In einer Ausführungsform
extrahiert, um den Zielknoten, für
welchen ein Datenpaket beabsichtigt ist, der Zwischenknoten, welcher
das Datenpaket routet, den Header des Datenpakets und liest ihn,
um den beabsichtigten Zielknoten zu bestimmen.
-
Das
Routen von Verkehr von der letzten Gruppe mehrerer Zwischenknoten
zu den mehreren Zielknoten wird durch wenigstens eines von mehreren
Verfahren erreicht. In einer Ausführungsform wird das Routen
von Verkehr von der letzten Gruppe mehrerer Zwischenknoten zu wenigstens
einem der mehreren Zielknoten unter Verwendung eines konventionellen
Verfahrens zum Routen von Verkehr in einem Netzwerk durchgeführt, wie
etwa von Routing-Algorithmen des Pfads der geringsten Kosten, Routing-Algorithmen
des kürzesten
Pfads, und Ähnlichem.
-
In
einer weiteren Ausführungsform
wird das Routen von Verkehr von der letzten Gruppe mehrerer Zwischenknoten
zu wenigstens einem der mehreren Zielknoten entsprechend jeweiligen
Verkehrsgewichtungsfaktoren durchgeführt, welche jedem der letzten Gruppe
mehrerer Zwischenknoten zugeordnet sind. Nachdem der Netzwerkverkehr
zu wenigstens einem der mehreren Zielknoten geroutet worden ist,
wird das Verfahren 300 fortgeführt zu Schritt 370,
wo Verfahren 300 endet.
-
4 bildet
ein Ablaufschema eines Verfahrens gemäß der vorliegenden Erfindung
ab. Konkret bildet 4 ein Ablaufschema eines Verfahrens 400 ab,
zum Routen von Netzwerkverkehr von mehreren ersten Knoten zu mehreren
Zwischenknoten, entsprechend ersten jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren;
und, optional, mehreren Zielknoten. Das Verfahren 400 in 4 wird
mit Schritt 402 eingeleitet und fortgeführt zu Schritt 404, wo
Verkehr durch mehrere erste Knoten empfangen wird. Der Netzwerkverkehr
wird entsprechend einem beliebigen geeigneten Verfahren zum Durchführen dieser
Funktionen, wie im Fach bekannt, empfangen und verarbeitet.
-
Mit
Schritt 406 identifiziert jeder der mehreren ersten Knoten
die Zwischenknoten, zu welchen der Verkehr zu routen ist. Die Zwischenknoten,
zu welchen der Verkehr (die Datenpakete) zu routen ist, werden durch
wenigstens eines von mehreren Verfahren bestimmt, umfassend die
Verwendung von Signalverkehr mit Verwaltungssystem 120 über Kommunikationslink 130,
wenigstens ein Nachschlagen in einer Tabelle innerhalb eines der
mehreren ersten Knoten 112, Lesen jeweiliger Header der
Datenpakete, und Ähnliches.
-
Mit
Schritt 408 bestimmt jeder der mehreren ersten Knoten die
jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren;
die jedem der mehreren mit Schritt 406 bestimmten Zwischenknoten
zugeordnet sind. Für
jeden der mehreren ersten Knoten ergeben die jeweiligen Verkehrsgewichtungsfaktoren,
die jedem der entsprechenden Gruppe mehrerer Zwischenknoten zugeordnet
sind, eine Summe von eins (einhundert Prozent), wie oben beschrieben.
-
Mit
Schritt 410 wird der Verkehr, welcher durch die mehreren
ersten Knoten mit Schritt 404 empfangen wird, zu den mehreren
Zwischenknoten geroutet, entsprechend jeweiligen Verkehrsgewichtungsfaktoren,
welche jedem der mehreren Zwischenknoten zugeordnet sind. Die Zwischenknoten, zu
welchen Verkehr geroutet wird, sind nicht notwendigerweise direkt
gekoppelt mit den mehreren ersten Knoten, die den Verkehr routen.
In einer Ausführungsform
endet das Verfahren 400 optional nach Schritt 410.
In einer weiteren Ausführungsform
wird das Verfahren 400 fortgeführt zu Schritt 412.
-
Mit
Schritt 412 bestimmt jeder der mehreren Zwischenknoten,
ob der Netzwerkverkehr direkt zu den mehreren Zielknoten geroutet
werden soll, oder ob der Verkehr zu einer nächsten Gruppe mehrerer Zwischenknoten
geroutet werden soll, bevor er zu den mehreren Zielknoten geroutet
wird. Wenn der Netzwerkverkehr zu einer nächsten Gruppe mehrerer Zwischenknoten
geroutet wird, wird das Verfahren 400 fortgeführt zu Schritt 414.
Wenn der Netzwerkverkehr direkt zu den mehreren Zielknoten geroutet
wird, wird das Verfahren 400 fortgeführt zu Schritt 420.
-
Die
Schritte 414, 416 und 418, wie abgebildet
in 4, entsprechen den Schritten 406, 408 und 410,
wie abgebildet in 4 und in dieser Schrift beschrieben,
und werden auf im Wesentlichen dieselbe Weise durchgeführt. An
Stelle der ersten jeweiligen Verkehrsgewichtungsfaktoren, welche
der ersten Gruppe mehrerer Zwischenknoten zugeordnet sind, werden
die Schritte 414, 416 und 418, entsprechend jeweiligen nächsten Zwischenknoten-Verkehrsgewichtungsfaktoren
durchgeführt,
welche jedem der nächsten
Gruppe mehrerer Zwischenknoten zugeordnet sind.
-
Die
Schritte 412, 414, 416 und 418 werden danach
rekursiv durchgeführt,
bis der Netzwerkverkehr zu den mehreren Zwischenknoten geroutet
wird, die den Netzwerkverkehr direkt zu wenigstens einem der mehreren
Zielknoten routen werden. Sowie der Verkehr von jedem der mehreren
Zwischenknoten empfangen wird, die den Verkehr direkt zu wenigstens
einem der mehreren Zielknoten routen, wird das Verfahren 400 fortgeführt zu Schritt 420.
-
Mit
Schritt 420 routet jeder der letzten Gruppe mehrerer Zwischenknoten,
welcher den Verkehr empfängt,
den Verkehr zu wenigstens einem der mehreren Zielknoten. Die Zielknoten,
zu welchen der Verkehr geroutet wird, sind nicht notwendigerweise direkt
mit jedem der mehreren Zwischenknoten gekoppelt, von welchen der
Verkehr geroutet wird. In einer Ausführungsform werden die Zielknoten,
zu welchen der Verkehr geroutet wird, durch die Zwischenknoten bestimmt,
von welchen der Verkehr geroutet wird (durch Zugreifen auf jeweilige
Header jedes der Datenpakete). Das Routen von Verkehr von der letzten
Gruppe mehrerer Zwischenknoten zu den mehreren Zielknoten wird durch
wenigstens eines von mehreren Verfahren erreicht.
-
In
einer Ausführungsform
wird das Routen von Verkehr von jedem der letzten Gruppe mehrerer Zwischenknoten
zu wenigstens einem von mehreren Zielknoten unter Verwendung eines
konventionellen Verfahrens zum Routen von Verkehr innerhalb eines Netzwerks
durchgeführt,
etwa von Routing-Algorithmen des Pfads der geringsten Kosten, Routing-Algorithmen
des kürzesten
Pfads, und Ähnlichem.
In einer weiteren Ausführungsform
wird das Routen von Verkehr von jedem der letzten Gruppe mehrerer
Zwischenknoten zu wenigstens einem von mehreren Zielknoten, entsprechend
jeweiligen Verkehrsgewichtungsfaktoren, durchgeführt, welche jedem der letzten
Gruppe mehrerer Zwischenknoten zugeordnet sind. Nachdem der Verkehr
zu wenigstens einem der mehreren Zielknoten geroutet worden ist,
wird das Verfahren 400 fortgeführt zu Schritt 422,
wo Verfahren 400 endet.
-
5 bildet
ein Ablaufschema eines Verfahrens gemäß der Erfindung ab. Konkret
bildet 5 ein Ablaufschema eines Verfahrens 500 zum
Anpassen von Verkehrsfluss innerhalb eines bestehenden Netzwerks
ab, welches mehrere erste Knoten aufweist, mehrere Zwischenknoten
und mehrere Zielknoten. Das Verfahren 500 in 5 wird
mit Schritt 510 eingeleitet und fortgeführt zu Schritt 520.
-
Mit
Schritt 520 werden die jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren,
welche den mehreren Zwischenknoten zugeordnet sind, erstellt. Wie
oben beschrieben, entsprechen die jeweiligen Verkehrsgewichtungsfaktoren
dem Anteil des an einem der mehreren ersten Knoten empfangenen Verkehrs,
welcher zu einem der mehreren Zwischenknoten geroutet wird, welche
diesem ersten Knoten zugeordnet sind.
-
In
einer Ausführungsform
werden die jeweiligen Verkehrsgewichtungsfaktoren von dem Verwaltungssystem 120 bestimmt,
und an Kommunikationsnetzwerk 110 kommuniziert, über Kommunikationslink 130.
In einer weiteren Ausführungsform
werden die jeweiligen Verkehrsgewichtungsfaktoren durch wenigstens
einen der mehreren ersten Knoten, der mehreren Zwischenknoten und
der mehreren Zielknoten berechnet, und unter den Knoten innerhalb des
Kommunikationsnetzwerks 110 kommuniziert. Für jeden
der mehreren ersten Knoten ergeben die jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren
eine Summe von eins (einhundert Prozent).
-
Mit
Schritt 530, folgend dem Erstellen der jeweiligen Zwischenknoten-Verkehrsgewichtungsfaktoren,
wird das Routen von Verkehr innerhalb des Netzwerks entsprechend
den jeweiligen Verkehrsgewichtungsfaktoren angepasst. Das Routen
von Verkehr entsprechend erstellten jeweiligen Verkehrsgewichtungsfaktoren
wird unter Verwendung eines beliebigen geeigneten, in dieser Schrift
beschriebenen, Verfahrens zum Routen von Verkehr erreicht. Das Verfahren 500 wird
danach fortgeführt
zu Schritt 540, wo das Verfahren 500 endet.
-
In
einer Ausführungsform
gemäß dem oben beschriebenen
Verfahren 500, in welcher wenigstens eine weitere Gruppe
mehrerer Zwischenknoten verwendet wird, um Verkehr von den mehreren
ersten Knoten zu den mehreren Zielknoten zu routen, werden weitere
jeweilige Verkehrsgewichtungsfaktoren erstellt, derart, dass jeder
der wenigstens einen Gruppe mehrerer Zwischenknoten, ihm zugeordnet, die
weiteren jeweiligen Verkehrsgewichtungsfaktoren aufweist. In dieser
Ausführungsform
ist das Routen von Verkehr innerhalb des Netzwerks ferner entsprechend
den weiteren Verkehrsgewichtungsfaktoren angepasst.
-
In
jeder der oben beschriebenen Ausführungsformen können die
jeweiligen Verkehrsgewichtungsfaktoren derart berechnet und erstellt
werden, dass ein Pfad, welcher eine im Wesentlichen konstante Nutzung
aufweist, zwischen zwei Knoten eines Kommunikationsnetzwerks erstellt
wird. Wie oben beschrieben, ist die Gesamtkapazität des Pfads,
welcher eine im Wesentlichen konstante Nutzung aufweist, gegeben
durch die Gleichung ΘjRi + ΘiCj. In dieser Gleichung
stellt der erste Term ΘjRi die Menge an
Netzwerkverkehr dar, welcher von Knoteni zu
Knotenj geroutet wird, welcher sich aktuell
in der ersten Phase des Routens (illustrativ von einem der ersten
Knoten 112 zu einem der Zwischenknoten 114) befindet.
In ähnlicher
Weise stellt der zweite Term ΘiCj die Menge an Netzwerkverkehr
dar, welcher von Knoteni zu Knotenj geroutet wird, welcher sich aktuell in
einer zweiten Phase des Routens (illustrativ von einem der Zwischenknoten 114 zu
einem der Zielknoten 116) befindet.
-
In
dem ersten Term ΘjRi ist Θj der Knotenj zugeordnete
Zwischenknoten-Verkehrsgewichtungsfaktor, und Ri ist
die gesamte Eingangskapazität
von Knoteni. In dem zweiten Term ΘiCj ist Θi der Knoteni zugeordnete
Zwischenknoten-Verkehrsgewichtungsfaktor,
und Cj ist die gesamte Ausgangskapazität von Knotenj. Wie oben beschrieben, stellen die Zwischenknoten-Verkehrsgewichtungsfaktoren Θi und Θj den Anteil des Verkehrs dar, welcher, zu
jenen jeweiligen Knoten, von den ersten Knoten 112 geroutet wird.
Also ist die gesamte Menge an Verkehr zwischen Knoteni und
Knotenj (und daher die gesamte zwischen
Knoteni und Knotenj erforderliche
Menge an Kapazität)
unabhängig
von der Verkehrsmatrix des Kommunikationsnetzwerks 110.
-
In
einer Ausführungsform
der vorliegenden Erfindung wird Verkehr an den mehreren ersten Knoten
auf der Paketebene aufgeteilt, derart, dass die Pakete, die zu derselben
Verbindung gehören,
unterschiedliche Pfade nehmen, von einem der ersten Knoten zu einem
der mehreren Zielknoten. In dieser Ausführungsform können Pakete,
welche unterschiedliche Pfade nehmen, unterschiedliche Netzwerklatenzen
erleiden, und können
daher aus der Reihenfolge am Zielknoten ankommen. In dieser Ausführungsform
ist die Verwendung wenigstens eines Puffers zum erneuten Anordnen
am Zielknoten erforderlich, um die Pakete einer Verbindung erneut in
die korrekte Reihenfolge zu bringen.
-
In
einer weiteren Ausführungsform
der vorliegenden Erfindung wird Verkehr an den mehreren ersten Knoten
auf der Flussebene aufgeteilt, derart, dass die Pakete, die zu derselben
Verbindung gehören,
denselben Pfad zurücklegen,
von einem der mehreren ersten Knoten zu einem der mehreren Zielknoten.
In dieser Ausführungsform
werden Flussstatusinformationen an jedem der mehreren Zwischenknoten
aufgenommen. Eine Flussebene weist, ihr zugeordnet, einen Port des
ersten Knotens auf, eine Adresse des ersten Knotens, einen Port
des Zielknotens, eine Adresse des Zielknotens und ein Protokoll. Das
Protokoll ist ein beliebiges geeignetes Protokoll zum Routen von
Verkehr von einem ersten Knoten zu einem Zielknoten, während der
Flussstatus aufgenommen wird.
-
Wie
in dieser Schrift erörtert,
umfasst, in einer Ausführungsform,
die Erfindung ein Verfahren zum Routen von Verkehr zu einem Zielknoten über einen
Nicht-Zielknoten,
innerhalb eines Kommunikationspfads, der angepasst ist, Verkehr
zu dem Zielknoten zu befördern.
In dieser Ausführungsform
ordnet der Nicht-Zielknoten einen Verkehrsgewichtungsfaktor wenigstens
einem von mehreren Knoten zwischen dem Nicht-Zielknoten und dem
Zielknoten zu, und der Nicht-Zielknoten routet jeweilige Abschnitte des
Verkehrs zu den Zwischenknoten, entsprechend den jeweiligen Verkehrsgewichtungsfaktoren.
-
In
den in dieser Schrift beschriebenen unterschiedlichen Ausführungsformen
kann die Abhängigkeit
der Zwischenknoten-Verkehrsgewichtungsfaktoren
von den ersten Knoten und den Zielknoten variieren. In einer Ausführungsform
sind die Zwischenknoten-Verkehrsgewichtungsfaktoren sowohl unabhängig von
den mehreren ersten Knoten als auch von den mehreren Zielknoten.
In einer weiteren Ausführungsform
sind die Zwischenknoten-Verkehrsgewichtungsfaktoren
abhängig
von den mehreren ersten Knoten und unabhängig von den mehreren Zielknoten.
In einer weiteren Ausführungsform
sind die Zwischenknoten-Verkehrsgewichtungsfaktoren sowohl abhängig von
den mehreren ersten Knoten als auch von den mehreren Zielknoten.
-
In
den Verfahren gemäß der vorliegenden Erfindung,
wie oben ausführlich
beschrieben, ist Kenntnis des tatsächlichen Verkehrs innerhalb
eines Netzwerks nicht erforderlich, um das Routen des Verkehrs durch
das Netzwerk zu optimieren. Vielmehr ist nur Kenntnis der Eingangs-
und Ausgangskapazitäten,
welche jedem der Knoten im Netzwerk zugeordnet sind, erforderlich,
um das Routen des Verkehrs durch das Netzwerk zu optimieren.
-
Wenngleich
verschiedene Ausführungsformen,
welche die Lehren der vorliegenden Erfindung verkörpern, in
dieser Schrift ausführlich
gezeigt und beschrieben sind, kann der Durchschnittsfachmann ohne
Schwierigkeit zahlreiche weitere variierte Ausführungsformen erdenken, welche
dennoch stets diese Lehren verkörpern.