-
PRIORITÄTSANSPRUCH
-
Diese
Patentanmeldung beansprucht Priorität auf die US provisorische
Patentanmeldung Seriennummer 60/315,034, eingereicht am 28. August
2001.
-
TECHNISCHES
GEBIET DER ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich allgemein auf das Gebiet von
Kommunikationen, genauer auf ein Verfahren und eine Vorrichtung
zum Optimieren elastischer Flüsse
in einem Mehrfachpfadnetz für
eine Verkehrsanforderung.
-
HINTERGRUND
DER ERFINDUNG
-
Die
Arbeitsgruppe der Internet Engineering Task Force ("IETF") Multi-Protocol
Label Switching ("MPLS") hat eine Menge
von Standards spezifiziert, die helfen, Dienstgüte ("QoS",
quality of service) für
Anwendungen vorzusehen, die über
das Internetprotokoll ("IP") laufen. Die MPLS-Technologie
ermöglicht IP-Netzbetreibern,
einen spezifischen Pfad Ursprung-Ziel-("O-D")Paaren
explizit zuzuweisen und Ressourcen entlang dieser Pfade zu reservieren.
Wegen dieser Fähigkeit
erlaubt MPLS Netzbetreibern, Verkehrsengineering in dem Sinne auszuüben, dass
falls der Umfang von Verkehr zwischen O-D-Paaren bekannt ist oder
geschätzt
werden kann, dann die Pfade zwischen diesen O-D-Pfaden (realisiert
durch die sogenannten kennzeichen-vermittelten Pfade ("LSP's", label switched paths) und die Bandbreite
der Pfade geeignet konfiguriert werden können.
-
In
der Praxis ist der Umfang von Verkehr, der durch das Netz bedient
werden muss, häufig
nur im Sinne einer minimalen und maximalen erforderlichen Bandbreite
anstatt von im Sinne eines einzelnen Bandbreitenwertes bekannt.
Z.B. können
viele (sogenannte elastische) Anwendungen ihre erforderliche Bandbreite
an Netzbedingungen adaptiv anpassen und können adäquat arbeiten, falls ein minimaler
Betrag an Bandbreite bereitgestellt wird. Andererseits erhöhen sich
Qualität
und Leistungsverhalten vieler Anwendungen nach einem gewissen Grad
nicht, falls das Netz mehr als eine erforderliche "maximale" Bandbreite vorsieht.
-
In
den letzten Jahren gab es beträchtliche
Fortschritte bei Untersuchung und Standardisierung von Mechanismen,
die zum Vorsehen von Dienstdifferenzierung in Mehrfachdienstnetzen
wie dem Internet fähig sind.
Während
es noch einen breiten Bereich der Verfahren zu geben scheint, die
darauf abzielen, QoS-Differenzierung zwischen konkurrierenden Flüssen vorzusehen,
ist weithin akzeptiert, dass es einen Bedarf nach Verkehrsengineeringmechanismen
gibt, die den Zugang der unterschiedlichen Verkehrsklassen zu Netzbandbreiteressourcen
steuern. Insbesondere gibt es ein steigendes Interesse bei der Gestaltung
von Bandbreitemitbenutzungsalgorithmen, die eine hohe Bandbreitennutzung
bewältigen
können
und zur gleichen Zeit irgendeine Auffassung von Fairness aufrechterhalten,
wie etwa die Maximum-Minimum-Fairness ("MMF",
maximum-minimum
Fairness), Fairness proportionaler Rate (PRF, proportional-rate
fairness) und Fairness minimaler Verzögerung (minimum-delay fairness).
-
In
verschiedenen Veröffentlichungen
wurden unterschiedliche Aspekte der MMF-Richtlinie erörtert, meist
im Kontext von im asynchronen Transfermodus ("ATM",
Asynchronous Transfer Mode) verfügbarer
Bitrate ("ABR", Available Bit Rate),
da das ATM-Forum
das MMF-Kriterium angenommen hat, Netzbandbreite für ABR-Verbindungen
zuzuordnen. Diese Veröffentlichungen
betrachten jedoch nicht den Problemkreis von Pfadoptimierung in
der gebundenen elastischen Umgebung. Außerdem betrachten diese Veröffentlichungen
nicht die Probleme, die Maximierung des minimalen Flusses kombiniert
mit Optimierung der Pfade, die durch die Anforderungen verwendet
werden, umgreifen. Z.B. untersuchen diese Veröffentlichungen die Geschwindigkeit von
Konvergenz von MMF-Zuordnungsalgorithmen an Stelle einer Schwerpunktlegung
auf Pfadoptimierung.
-
Außerdem wurde
MMF-Weiterleitung untersucht, die weitestekürzeste, kürzeste-weiteste und kürzeste Abstands-Algorithmen
verwenden. Diese Algorithmen zielen jedoch nicht darauf ab, den
ausgeführten
Verkehr explizit zu maximieren, und folglich wird die Pfadzuordnung
nicht als eine Optimierungsaufgabe formuliert. Außerdem wurde
eine Reihe von Fairnessauffassungen erörtert, und es wurden zugehörige Optimierungsaufgaben
für den
Fall von ungebundenen Flüssen
und fixierten Routen präsentiert.
-
Obwohl
die MMF-Zuordnung in der Literatur weitgehend akzeptiert und untersucht
wurde, kann ihre Eignung wegen der relativ geringen Bandbreitennutzung
in Frage gestellt werden. Als ein Ergebnis ist die PRF-Zuordnung
eine viel versprechende Alternative zu der MMF-Zuordnung. Gemäß dem PRF-Kriterium
in dem unbeschränkten
Fall (d.h. wenn keine minimale oder maximale Bandbreiteanforderung
mit den Flüssen in
Verbindung steht) sind die Ratenzuordnungen xd fair,
falls sie Σdlogxd unter den
Kapazitäts-
und Bandbreiteanforderungseinschränkungen maximieren. Dieses
Ziel kann interpretiert werden, den Gesamtnutzen von Ratenzuordnungen
unter der Annahme zu maximieren, dass jede Route eine logarithmische
Nutzensfunktion hat. Während
die PRF-Zuordnung das Pfadoptimierungsproblem betrachtet, versagt
es, das Problem zu lösen und
sieht nicht einen effizienten Algorithmus für Pfadoptimierung vor, wenn
die Flüsse
gebunden sind.
-
Ein
Artikel, der den Stand der Technik beschreibt, ist L. Massoulie
et al "Bandwidth
sharing: objectives and algorithms", präsentiert
auf der 18th annual joint conference of the IEEE computer and communications societies,
21. März
1999, Seiten 1395–1403.
Dieser Artikel erörtert
die Auslegung von verteilten Algorithmen zur Mitbenutzung von Netzbandbreiteressourcen
unter konkurrierenden Flüssen.
Dieser Artikel erörtert
die klassische MMF-Zuordnung, die neuere PRF-Zuordnung, und schlägt eine
dritte Alternative vor, die im Sinne der Verzögerungen interpretiert wird,
die durch laufende Transfers erfahren wird. Der Artikel untersucht
jedoch die Geschwindigkeit von Konvergenz von MMF- und PRF-Algorithmen,
anstatt sich auf Pfadoptimierung zu konzentrieren.
-
Entsprechend
gibt es einen Bedarf für
ein Verfahren und eine Vorrichtung zum Optimieren elastischer Flüsse in einem
Mehrfachpfadnetz für
eine Verkehrsanforderung.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Die
vorliegende Erfindung sieht ein Verfahren und eine Vorrichtung zum
Optimieren elastischer Flüsse in
einem Mehrfachpfadnetz für
eine Verkehrsanforderung vor. Genauer sieht die vorliegende Erfindung
mehrere Algorithmen zur Verwendung in einem MPLS-Netz vor, wovon
erwartet wird, viele Anwendungen (inkludierend adaptives Audio,
Video und Streaming-Anwendungen) zu unterstützen, die Weiterleitung für die LSPs ausüben und
die Bandbreite bestimmen, die diesen Pfaden zuzuweisen ist, falls
eine Verkehrsanforderungsmatrix im Sinne von Bandbreite zwischen
O-D-Paaren gegeben ist. Diese gemeinsame Op timierung an Stelle getrennter
Optimierung der LSP-Routen und der Bandbreite für derartigen elastischen Verkehr
ist ein extrem komplexes (sogenanntes NP-hartes) Problem, das bis
jetzt nicht gelöst
wurde. Mit anderen Worten besteht die Lösung für die Pfad- und Bandbreiteengineeringprobleme
darin, derartige Optimierungszielfunktionen zu finden, die beide
diese Maße
zur gleichen Zeit inkorporieren. Ein Teil dieser Lösung ist
die Erkennung der Notwendigkeit für ein beliebiges Fairnessmaß zwischen
elastischen Flüssen,
welches Zuweisung von z.B. Null-Bandbreite zu einem Benutzerfluss
verhindert, während
die Bandbreite eines anderen Benutzerflusses maximiert wird.
-
Die
vorliegende Erfindung sieht ein Verfahren zum Optimieren elastischer
Flüsse
in einem Mehrfachpfadnetz für
eine Verkehrsanforderung durch gemeinsames Bestimmen einer Bandbreite
für jeden
Fluss in einer Menge von Flüssen,
die die Verkehrsanforderung realisieren, und eines optimierten Pfades
für die
Verkehrsanforderung durch Maximieren eines Fairnessnutzens vor.
Das Verfahren kann auch Zuordnung der Bandbreite für die Verkehrsanforderung
und Zuweisung des optimalen Pfades für die Verkehrsanforderung inkludieren.
Außerdem
kann die Verkehrsanforderung eine spezifizierte Bandbreite zwischen
einem oder mehr Ursprung-Ziel-Paaren oder eine minimale Bandbreite
und eine maximale Bandbreite zwischen einem oder mehr Ursprung-Ziel-Paaren
sein. Außerdem
kann der Fairnessnutzen ein MMF-Nutzen oder ein PRF-Nutzen sein.
Des weiteren kann der optimierte Pfad ein einzelner optimierter
oder mindestens zwei optimierte Pfade sein.
-
Alle
Aspekte der vorliegenden Erfindung können als ein Computerprogramm
implementiert werden, verkörpert
auf einem computerlesbaren Medium, zum Optimieren elastischer Flüsse in einem
Mehrfachpfadnetz für
eine Verkehrsanforderung, worin die Funktionen oder Schritte des
Verfahrens als Codesegmente implementiert sind, die angepasst sind,
jene Funktionen oder Schritte durchzuführen. Außerdem kann die vorliegende
Erfindung als eine Vorrichtung zum Optimieren elastischer Flüsse in einem
Mehrfachpfadnetz für
eine Verkehrsanforderung implementiert werden, wobei die Vorrichtung
einen Prozessor und eine Schnittstelle, die den Prozessor mit dem
Mehrfachpfadnetz kommunizierbar koppelt, inkludiert. Der Prozessor
bestimmt gemeinsam eine Bandbreite für jeden Fluss in einer Menge
von Flüssen,
die die Verkehrsanforderung realisieren, und einen optimierten Pfad
für die
Verkehrsanforderung durch Maximieren eines Fairnessnutzens.
-
In
einem Aspekt richtet sich die vorliegende Erfindung auf ein Verfahren
zum Optimieren einer Menge elastischer Flüsse, die eine Vielzahl von
Verkehrsanforderungen in einem Mehrfachpfad realisieren, mit einer Vielzahl
von Kommunikationsverknüpfungen,
worin die Flüsse
einer Vielzahl von Pfaden durch das Netz folgen. Das Verfahren inkludiert
die Schritte zum: (a) Initialisieren eines Gesamtflusses, der jeder
Verkehrsanforderung zugeordnet ist, und des Flusses, der jedem Pfad
zugeordnet ist, der jede Verkehrsanforderung realisiert; (b) Bestimmen
eines optimalen Flusses für
jeden Pfad, der eine gegebene Verkehrsanforderung realisiert; (c)
Einstellen der Kapazität
jeder Verknüpfung
auf die Kapazität
der Verknüpfung
minus eine Summe der Flüsse,
zugeordnet jedem Pfad, jede Verkehrsanforderung für alle Pfade
und Verkehrsanforderungen, zu denen die Verknüpfung gehört, realisierend; (d) Einstellen
des Gesamtflusses, der jeder Verkehrsanforderung zugeordnet ist,
auf den Gesamtfluss, der jeder Verkehrsanforderung zugeordnet ist,
plus eine Summe der Flüsse, zugeordnet
jedem Pfad, jede Verkehrsanforderung für alle Pfade realisierend;
(e) Einstellen des Flusses, der dem Pfad zugeordnet ist, der die
gegebene Verkehrsanforderung realisiert, auf den Fluss, der dem
Pfad zugeordnet ist, der die gegebene Verkehrsanforderung realisiert,
plus einen optimalen Fluss, der dem Pfad zugeordnet ist, der die
gegebene Verkehrsanforderung realisiert; (f) Entfernen aller gesättigten
Verknüpfungen,
aller Verkehrsanforderungen, die die gesättigten Verknüpfungen
verwenden, und aller Verkehrsanforderungen mit leeren Listen von
verfügbaren
Pfaden; (g) Bestimmen, ob es zusätzliche
Verkehrsanforderungen gibt; (h) falls es zusätzliche Verkehrsanforderungen
gibt, Wiederholen von Schritten (b) bis (g) für jede Verkehrsanforderung;
und (i) falls es keine zusätzlichen
Verkehrsanforderungen gibt, Beenden des Verfahrens.
-
In
einem anderen Aspekt richtet sich die vorliegende Erfindung auf
ein Verfahren, das die Schritte inkludiert: (a) Initialisieren eines
Gesamtflusses, der jeder Verkehrsanforderung zugeordnet ist, und
des Flusses, der jedem Pfad zugeordnet ist, der jede Verkehrsanforderung
realisiert; (b) Bestimmen eines optimalen Flusses für jeden
Pfad, der eine gegebene Verkehrsanforderung realisiert; (c) Identifizieren
einer Menge von Verkehrsanforderungen, worin der Pfad, der jede
Verkehrsanforderung realisiert, eine gesättigte Verknüpfung enthält; (d)
Einstellen der Kapazität
jeder gesättigten
Verknüpfung
auf die Kapazität
der gesättigten
Verknüpfung minus
eine Summe der Flüsse,
zugeordnet jedem Pfad, jede Verkehrsanforderung für alle Pfade
und Verkehrsanforderungen, zu denen die gesättigte Verknüpfung gehört, realisierend;
(e) für
alle Verkehrsanforderungen in der Menge von Verkehrsanforderungen,
worin der Pfad, der jede Verkehrsanforderung realisiert, eine gesättigte Verknüpfung enthält, Einstellen
des Gesamtflusses, der jeder Verkehrsanforderung zugeordnet ist,
auf den Gesamtfluss, der jeder Verkehrsanforderung zugeordnet ist,
plus eine Summe der Flüsse,
zugeordnet jedem Pfad, jede Verkehrsanforderung für alle Pfade
realisierend; (f) Einstellen des Flusses, der dem Pfad zugeordnet
ist, der die gegebene Verkehrsanforderung realisiert, auf den Fluss,
der dem Pfad zugeordnet ist, der die gegebene Verkehrsanforderung
realisiert, plus einen optimalen Fluss, der dem Pfad zugeordnet ist,
der die gegebene Verkehrsanforderung realisiert; (g) Entfernen aller
gesättigten
Verknüpfungen
und aller Verkehrsanforderungen in der Menge von Verkehrsanforderungen,
worin der Pfad, der jede Verkehrsanforderung realisiert, eine gesättigte Verknüpfung enthält; (h)
Bestimmen, ob es zusätzliche
Verkehrsanforderungen gibt; (i) falls es zusätzliche Verkehrsanforderungen
gibt, Wiederholen von Schritten (b) bis (g) für jede Verkehrsanforderung;
und (j) falls es keine zusätzlichen
Verkehrsanforderungen gibt, Beenden des Verfahrens.
-
Andere
Merkmale und Vorteile der vorliegenden Erfindung sollten einem Durchschnittsfachmann
bei Bezug auf die folgende detaillierte Beschreibung, genommen in
Verbindung mit den begleitenden Zeichnungen, offensichtlich sein.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
Für ein besseres
Verständnis
der Erfindung, und um auf dem Weg eines Beispiels zu zeigen, wie
dieselbe zur Wirkung gebracht werden kann, wird nun Bezug auf die
detaillierte Beschreibung der Erfindung zusammen mit den begleitenden
Figuren genommen, worin entsprechende Bezugszeichen in den unterschiedlichen
Figuren auf entsprechende Teile verweisen, und in denen:
-
1 ein
Flussdiagramm ist, das einen Algorithmus zum Lösen von MMF ohne Abgrenzungen
und optimierten Mehrfachpfaden ("MMF/NB/OP") in Übereinstimmung
mit einer Ausführungsform
der vorliegenden Erfindung veranschaulicht;
-
2 ein
Flussdiagramm ist, das einen Algorithmus zum Lösen von MMF ohne Abgrenzungen
und optimierten einzelnen Pfaden ("MMF/NB/OSP") in Übereinstimmung mit einer anderen
Ausführungsform
der vorliegenden Erfindung veranschaulicht;
-
3 ein
Balkendiagramm der minimalen zugeordneten Bandbreite für verschiedene
Pfadoptimierungen in Übereinstimmung
mit dem Stand der Technik und mehreren Ausführungsformen der vorliegenden
Erfindung ist;
-
4 ein
Balkendiagramm der maximalen zugeordneten Bandbreite für verschiedene
Pfadoptimierungen in Übereinstimmung
mit dem Stand der Technik und mehreren Ausführungsformen der vorliegenden Erfindung
ist;
-
5 ein
Balkendiagramm der mittleren zugeordneten Bandbreite für verschiedene
Pfadoptimierungen in Übereinstimmung
mit dem Stand der Technik und mehreren Ausführungsformen der vorliegenden
Erfindung ist;
-
6 ein
Balkendiagramm des Grades von Unfairness für verschiedene Pfadoptimierungen
in Übereinstimmung
mit dem Stand der Technik und mehreren Ausführungsformen der vorliegenden
Erfindung ist;
-
7 ein
Balkendiagramm der Netznutzung für
verschiedene Pfadoptimierungen unter Verwendung oberer Abgrenzungen
in Übereinstimmung
mit mehreren Ausführungsformen
der vorliegenden Erfindung ist; und
-
8 ein
Balkendiagramm der Varianz der zugeordneten Bandbreite für verschiedene
Pfadoptimierungen unter Verwendung oberer Abgrenzungen in Übereinstimmung
mit mehreren Ausführungsformen
der vorliegenden Erfindung ist.
-
DETAILLIERTE
BESCHREIBUNG DER ERFINDUNG
-
Während das
Herstellen und Verwenden verschiedener Ausführungsformen der vorliegenden
Erfindung nachstehend detail liert erörtert werden, sollte erkannt
werden, dass die vorliegende Erfindung viele anwendbare erfinderische
Konzepte vorsieht, die in einer breiten Vielfalt von spezifischen
Kontexten verkörpert werden
können.
Z.B. kann zusätzlich
zu Telekommunikationssystemen die vorliegende Erfindung auf andere Formen
von Kommunikationen oder allgemeine Datenverarbeitung anwendbar
sein. Andere Formen von Kommunikationen können Kommunikationen zwischen
Netzen, Kommunikationen über
Satellit oder eine beliebige Form von Kommunikationen, die bis zum
Datum der vorliegenden Erfindung noch nicht bekannt sind, inkludieren.
Die hierin erörterten
spezifischen Ausführungsformen
sind lediglich veranschaulichend für spezifische Wege, um die
Erfindung herzustellen und zu verwenden, und begrenzen den Bereich
der Erfindung nicht.
-
Die
vorliegende Erfindung sieht ein Verfahren und eine Vorrichtung zum
Optimieren elastischer Flüsse in
einem Mehrfachpfadnetz für
eine Verkehrsanforderung vor. Genauer sieht die vorliegende Erfindung
mehrere Algorithmen zur Verwendung in einem MPLS-Netz vor, wovon
erwartet wird, dass viele Anwendungen (inkludierend adaptives Audio,
Video und Screening-Anwendungen) unterstützt werden, die Weiterleitung
für die LSPs
ausüben
und die Bandbreite bestimmen, die diesen Pfaden zugewiesen werden
muss, falls eine Verkehrsanforderungsmatrix im Sinne von Bandbreite
zwischen O-D-Paaren gegeben ist. Diese gemeinsame Optimierung, an
Stelle getrennter Optimierung, der LSP-Routen und der Bandbreite
für einen
derartigen elastischen Verkehr ist ein extrem komplexes (so genanntes
NP-hartes) Problem, das bis jetzt nicht gelöst wurde. Mit anderen Worten
besteht die Lösung
für die
und Bandbreiteengineeringprobleme darin, derartige Optimierungszielfunktionen
zu finden, die beide diese Maße
zur gleichen Zeit inkorporieren. Teil dieser Lösung ist die Erkennung der
Notwendigkeit für
irgendein Fairnessmaß zwischen
elastischen Flüssen,
das Zuweisen von z.B. Null-Bandbreite zu einem Benutzerfluss verhindert,
während
die Bandbreite eines anderen Benutzerflusses maximiert wird.
-
Als
ein Ergebnis sieht die vorliegende Erfindung optimale Pfadauswahl
und Bandbreitezuordnungsalgorithmen für elastische Flüsse unter
Fairnesseinschränkungen
in einem Mehrfachpfadnetz für
eine gegebene Verkehrsanforderung vor. Genauer kann die vorliegende
Erfindung verwendet werden, um kennzeichen-vermittelte Pfad-("LSP")Dimensionierung
und Weiterleitung für
elastischen Verkehr in einem Mehrfachprotokoll-Kennzeichen-vermittelten
("MPLS", Multi-protocol
label Switched) Netz vorzusehen. Die Verkehrsanforderungen zwischen
Ursprung-Ziel-(O-D)Paaren
werden durch eine spezifizierte Bandbreitenanforderung ("ohne Abgrenzungen") oder eine minimale
und eine maximale Bandbreitenanforderung ("mit Abgrenzungen") gekennzeichnet. Diese Abgrenzungen
werden durch typische Verkehrsquellencharakteristika impliziert,
und können
auch durch Verkehrsmanagementwerkzeuge auferlegt werden, um individuellen/gesamten
Durchsatz zu steuern. Zwischen jedem O-D-Paar gibt es eine Menge
von zulässigen
Pfaden, durch die die Flüsse,
die die Anforderung realisieren, weitergeleitet werden können. Mit
anderen Worten realisiert eine Menge von Flüssen eine Anforderung, die
mit einem O-D-Paar in Verbindung steht, falls die Summe der zugeordneten
Bandbreiten dieser Flüsse
mindestens diese Anforderung. ist. Somit besteht die Zuordnungsaufgabe
nicht nur darin, die Bandbreite von jedem Fluss zu bestimmen, der
die Anforderungen realisiert, sondern auch den spezifischen Pfad
für jede
Anforderung zu identifizieren, derart, dass ein fairness-spezifischer
Nutzen maximiert wird. In dem Fall von Maximum-Minimum-Fairness
("MMF") impliziert dies
die Maximierung der minimalen zugeordneten Bandbreite, wohingegen
es in dem Fall proportionaler Fairness ("PRF")
die Maximierung einer logarithmischen Nutzensfunktion impliziert.
Außerdem
erlaubt die vorliegende Erfindung, dass Mehrfachpfade eine gegebene
Anforderung reali sieren (Anforderungssplittung). Die vorliegende
Erfindung sieht deshalb effiziente und nützliche Algorithmen vor, die
die jeweiligen Optimierungsaufgaben lösen, die mit den MMF- und PRF-Mitbenutzungseinschränkungen
in Verbindung stehen. Als ein Ergebnis kann die vorliegende Erfindung
beim Verkehrsengineering von MPLS-Netzen verwendet werden, die elastischen
Verkehr übertragen.
-
Die
vorliegende Erfindung sieht auch Algorithmen vor, die eine fairnessspezifische
Quantität
(häufig als
die Nutzensfunktion bekannt) optimieren, unter Annahme, dass entweder
einem einzelnen Fluss (unter Verwendung eines einzelnen Pfades)
oder vielen Flüssen
(unter Verwendung einer Menge von Pfaden) erlaubt wird, die Benutzeranforderungen
zu realisieren. Obwohl die vorliegende Erfindung angepasst werden
kann, verschiedene Fairnesskriterien zu verwenden, werden nachstehend
die MMF- und PRF-Kriterien beschrieben. Pfadoptimierung unter beiden
diesen Fairnesskriterien erhöht
beträchtlich
die minimale zugeordnete Bandbreite (unter allen Flüssen) ohne
große
Verringerung der maximalen zugeordneten Bandbreite und Netznutzung. Es
folgt, dass Pfadoptimierung die Fairness zwischen Verkehrsflüssen durch
Reduzieren der Varianz der Bandbreite, die den unterschiedlichen
Flüssen
zugeordnet ist, erhöht.
-
Wenn
Pfadoptimierung unter Verwendung der vorliegenden Erfindung angewendet
wird, ist der Unterschied zwischen MMF und PRF (im Sinne von Leistungsverhaltensmaßen, wie
etwa der minimalen, maximalen und mittleren zugeordneten Bandbreite,
und Netznutzung) beträchtlich
geringer als ohne Pfadoptimierung. Schließlich erhöht im Sinne dieser Leistungsverhaltensmaße das Zulassen
vieler Flüsse
(unter vielen Pfaden) die Fairness unter den Anforderungen, aber
seine Auswirkung (im Vergleich zu dem Fall eines einzelnen optimierten
Pfades) ist begrenzt. Die vorliegende Erfindung könnte angepasst
werden, über
allen möglichen
Pfaden zwischen den O-D-Paaren (an Stelle einer Optimierung über den
Pfaden einer vordefinierten Menge) zu optimieren oder verteilte
Algorithmen zu verwenden, um die vorgeschlagenen Pfadoptimierungsalgorithmen
zu implementieren.
-
Neueste
Ergebnisse zeigen an, dass es von Bedeutung ist, eine minimale Bandbreitenanforderung
sogar mit elastischem Verkehr in Verbindung zu bringen (und Rufzugangssteuerung
("CAC", call admission
control) auszuüben),
da CAC-Algorithmen in Übereinstimmung
mit QoS-Weiterleitung ein Mittel vorsehen, für Sitzungen, wie etwa TCP, übermäßige Durchsatzverschlechterung
zu verhindern. Aus dieser Sicht ist es wichtig, Modelle und Berechnungstechniken
zu entwickeln, die analytische Untersuchungen des Verhaltens von
derartigen zukünftigen
Typen von Netzen möglich
machen.
-
Das
Problem zum Finden einer geeigneten Menge von Pfaden zwischen jedem
O-D-Paar und Reservieren von Bandbreite entlang jedem dieser Pfade
wird als eine Optimierungsaufgabe formuliert, wobei eine Nutzensfunktion,
die Befriedigung des Benutzers darstellt, unter Kapazitäts- und
Fairnesseinschränkungen
zu maximieren ist. Die Formulierung der Optimierung basiert auf
der Schlüsselbeobachtung,
dass die faire Bandbreitenzuordnung (ohne Abgrenzungen und unter
Annahme eines einzelnen vordefinierten Pfades für jedes O-D-Paar) einfach auf
einem Teilproblem linearer Programmierung ("LP")
basieren kann, das mit einem berechnungsmäßig effizienten Algorithmus
gelöst
werden kann.
-
Speziell
ist die Menge von Anforderungen, die zu erfüllen sind, gegeben und mit
d = 1, 2, 3, ..., D gekennzeichnet. Jede Anforderung d ist zwischen
einem spezifischen O-D-Paar definiert. In dem Fall des vordefinierten
Pfades gibt es einen einzelnen Pfad, der zwischen jedem O-D-Paar
definiert ist, und die Zuordnungsaufgabe besteht darin, die Bandbreite (Fluss)
xd zu bestimmen, die jeder Anforderung d
zugewiesen ist. In dem Fall von Pfadoptimierung gibt es eine Menge
von zulässigen
Pfaden j = 1, 2, ..., m(d) zwischen jedem O-D-Paar, die potenziell verwendet werden
können,
um Flüsse
von Anforderung d zu realisieren. In diesem Fall impliziert die
Zuordnungsaufgabe nicht nur die Bestimmung der Bandbreite des Flusses
xd, der Anforderung d realisiert, sondern
auch die Identifizierung des spezifischen Pfades j(d), der verwendet
wird, um Anforderung d zu realisieren. Wie nachstehend beschrieben
wird, entsteht ein interessanter und praktisch wichtiger Fall des
Pfadoptimierungsproblems, wenn vielen Pfaden ermöglicht wird, jede Anforderung
zu realisieren (Anforderungssplittung). Diese Verallgemeinerung
kann in dem Fall von Nutzen sein, wenn die Anforderung mit z.B.
einer Sitzungsinitiierungsprotokoll-("SIP")Sitzung
in Verbindung steht, die viele IP-Flüsse enthält.
-
In
der Multi-Erzeugnis-Flussnetzsprache kann das MMF-Zuordnungsproblem
mit fixierten Pfaden wie folgt formuliert werden. Es gibt eine gegebene
Menge von Anforderungen (jede Anforderung wird mit dem Pfad zwischen
ihren veranlassenden und Zielknoten identifiziert), gekennzeichnet
mit d = 1, 2, ..., D, eine gegebene Menge von Verknüpfungen,
gekennzeichnet mit e = 1, 2, ..., E, und eine gegebene Verknüpfungspfad-Eintrittsbeziehung,
definiert durch Koeffizienten aed (e = 1,
2, ..., E, d = 1, 2, ..., D) derart, dass aed =
1 ist, falls Verknüpfung
e zu Pfad d gehört,
und anderenfalls 0 ist. Die Flüsse
xd, die den Pfaden zugeordnet sind, erfüllen die Min-Max-Fairnessbedingung,
falls für
jede Anforderung d eine gesättigte
Verknüpfung
e existiert, die zu d gehört,
derart, dass Fluss xd in e maximal ist (d.h.
xd = max{xd':
aed' =
1, d' = 1, 2, ...,
D}). Verknüpfung
e von Kapazität
ye ist gesättigt, wenn Σd'aed'xd' = ye ist.
-
Die
folgende Misch-Integer-Programmierungs-("MIP",
Mixed-Integer Programming)Problemformulierung zeigt, dass es möglich ist,
die obige Charakterisierung des MMF-Zuordnungsproblems als ein mathematisches
Programmierungs-(MIP)Problem auszudrücken. Es sei δde (e
= 1, 2, ..., E, d = 1, 2, ..., D) eine Menge von binären Variablen
derart, dass δde = 0 impliziert, dass e zu d gehört, e gesättigt ist
und der Fluss xd in e maximal ist. Dann
erfüllen
die Flüsse
xd (xd ≥ 0, d = 1,
2, ..., D) die Max-Min-Fairnessbedingung, falls, und nur falls,
sie das folgende MIP-Problem lösen.
-
Einschränkungen
(Gl. 1) stellen sicher, dass Lasten Verknüpfungskapazitäten nicht überschreiten, während (Gl.
2) garantiert, dass mindestens ein δde =
0 für jeden
Pfad d ist. Ferner impliziert (Gl. 3), dass falls δde =
0 ist, dann Verknüpfung
e gesättigt
ist. Schließlich
stellen, unter Verwendung von Hilfsvariablen ze (e
= 1, 2, ..., E), Einschränkungen
(Gl. 4) und (Gl. 5) sicher, dass xd der
maximale Fluss in Verknüpfung
e ist, falls δde = 0 ist.
-
Obwohl
die MIP-Probleme allgemein schwierig zu lösen sind, kann das Problem
(1)–(5)
algorithmisch auf eine einfache und effektive Weise gelöst werden.
Der einfachste Weg zum Erreichen dessen ergibt sich wahrscheinlich
durch den folgenden Algorithmus. Wenn der Algorithmus terminiert,
erfüllen
die resultierenden Flüsse
xd die MMF-Anforderung.
Σ daedxd ≤ ye e = 1, 2, ..., E (Gl. 1)
Σ eaed(1 – δde) ≥ 1 d = 1,
2, ..., D (Gl. 2)
ye ≥ ye – Σ d'aed'xd' d
= 1, 2, ..., D; e = 1, 2, ..., E; aed =
1 (Gl. 3)
δedye ≥ ze – xd d = 1, 2, ..., D; e = 1, 2, ..., E; aed = 1 (Gl. 4)
xd ≤ ze d = 1, 2, ..., D; e = 1, 2, ..., E; aed = 1 (Gl. 5)
-
Entsprechend
kann der folgende Algorithmus verwendet werden, um MMF ohne Abgrenzungen
und mit fixierten Pfaden ("MMF/NB/FP") zu lösen:
Schritt
1: | xd := 0 für
d = 1, 2, ..., D. |
Schritt
2: | tmax = min{ye/(Σdaed)}: e = 1, 2, ..., E. |
Schritt
3: | ye := ye – tmaxΣdaed für e = 1,
2, ..., E.
xd := xd +
tmax für
d = 1, 2, ..., D.
Entfernen aller gesättigten Verknüpfungen
e (mit ye = 0) und aller Pfade (Anforderungen)
d, die die entfernten Verknüpfungen
verwenden (aed = 1). |
Schritt
4: | Falls
keine Anforderungen übrig
sind, dann stoppen, anderenfalls zu Schritt 2 gehen. |
-
Es
wird vermerkt, dass t
max, kalkuliert in
Schritt 2 von MMF/NB/FP, die Lösung
der folgenden LP-Aufgabe ist (hierin nachstehend als "LP1" bezeichnet):
Indizes: | d
= 1, 2, ..., D Anforderungen
e = 1, 2, ..., E Verknüpfungen |
Konstanten: | aed = 1,falls e zu dem Pfad gehört, der
Anforderung d realisiert, anderenfalls 0
ye Kapazität von Verknüpfung e
cd Gewichtung von Anforderung d |
Variablen: | t
Hilfsvariable (kontinuierlich) |
Ziel: | C
= t maximieren (Gl. 6) |
Einschränkungen: | tΣdcdaed ≤ ye e = 1, 2, ..., E (Gl. 7)
t ≥ 0 (Gl. 8) |
-
Die
Lösung
von LP1 ist trivial: tmax = min{ye/Σdcdaed):
e = 1, 2, ..., E}. Daher ist in der Tat, wie oben erwähnt, der
Wert des tmax in MMF/NB/FP die Lösung der
LP1 (für
cd = 1).
-
Das
betrachtete MMF-Problem kann auf den Fall erweitert werden, wenn
Anforderungen mit Koeffizienten cd ≥ 1 (d = 1,
2, ..., D) gewichtet sind, d.h. wenn einige Anforderungen wertvoller
als andere sein können und
dies in der Fairnessdefinition berücksichtigt werden sollte. Ein
derartiges erweitertes Problem wird mit nahezu dem gleichen Algorithmus
wie dem einen für
NIW/NB/FP gelöst.
-
Die
MMF kann erweitert werden, um Bandbreiteabgrenzungen zu behandeln
(noch unter Annahme fixierter und vordefinierter Pfade). Es wird
vermerkt, dass der Einschluss der Bandbreiteabgrenzungen wichtig ist,
da er leicht die Behandlung der starren Verkehrsanforderungen erlaubt.
Eine Erweiterung von MMF wird durch Einführen unterer und oberer Abgrenzungen
für die
Flusszuordnung der Anforderungen erhalten:
hd ≤ xd ≤ Hd d = 1, 2, ..., D (Gl. 9)
-
Der
entsprechende Algorithmus zum Lösen
von MMF mit Abgrenzungen und mit fixierten Pfaden ("MMF/B/FP") ist wie folgt:
Schritt
1: | ye := ye – Σdaedhd für e = 1,
2, ..., E. xd := hd für d = 1, 2,
..., D.
Entfernen aller gesättigten
Verknüpfungen
und aller Anforderungen, die die entfernten Verknüpfungen verwenden. |
Schritt
2: | Lösen von
LP1, um tmax zu erhalten |
Schritt
3: | ye := ye – tmaxΣdcdaed für e = 1,
2, ..., E.
xd := xd +
cdtmax für d = 1,
2, ..., D.
Entfernen aller gesättigten Verknüpfungen
und aller Anforderungen, die die entfernten Verknüpfungen verwenden. |
Schritt
4: | Falls
keine Anforderungen übrig
sind, dann stoppen, anderenfalls zu Schritt 2 gehen. |
-
Es
wird vermerkt, dass die obere Abgrenzung in der Problemvorverarbeitung
durch Einführen
eines Hilfsblattknotens vd für jede Anforderung
d, dann durch Addieren einer zusätzlichen
Verknüpfung
der Kapazität Hd von dem Endknoten des Pfades, der Anforderung
d realisiert, zu Knoten vd, und schließlich durch
Addieren dieser Verknüpfung
zu dem betrachteten Pfad berücksichtigt
wird. Wie zuvor ist, wenn der Algorithmus terminiert, der resultierende
xd (d = 1, 2, ..., D) die angenommene Fairnessflussrealisierungsanforderung
d in seinem Pfad.
-
Das
MMF-Konzept von Fairness wurde kritisiert, da es die Anforderungen,
die lange Pfade verwenden, gleich zu jenen behandelt, die kurze
verwenden, was zu einer Verringerung in dem Gesamtnetzdurchsatz führt. Um
diese Schwierigkeit zu überwinden,
wurde das PRF-Konzept vorgeschlagen. Das PRF-Zuordnungsproblem wird
als das folgende konvexe Programmierungsproblem spezifiziert (hierin
nachstehend als "CP1" bezeichnet).
Variablen: | xd Fluss, der Anforderung d realisiert |
Ziel: | C
= Σdcdlogxd maximieren
(Gl. 10) |
Einschränkungen: | (Gl.
9) und
Σdaedxd ≤ ye e = 1, 2, ..., E. (Gl. 11) |
-
Als
ein konvexes Problem hat CP1 keine lokalen Minima und kann durch
eine multi-variable Funktionsoptimierungsprozedur mit linearen Einschränkungen
gelöst
werden. Ein effizienteres Verfahren ist, das duale Problem zu CP1
zu lösen.
-
Ein
effizienterer Ansatz für
das PRF-Zuordnungsproblem als das Lösen des dualen von CP1 basiert auf
der stückweisen
Annäherung
der logarithmischen Funktion, hierin nachstehend als "PRF/FP" bezeichnet.
Variablen: | xd Fluss, der Anforderung d realisiert
fd nicht-negative kontinuierliche Hilfsvariable,
die mit d in Verbindung steht |
Ziel: | Maximieren
C = Σdcdfd (Gl.
12) |
Einschränkungen: | fd ≤ bkxd + gk d
= 1, 2, ..., D; k = 1, 2, ..., K. (Gl. 13) |
-
Die
Verwendung der LP-Formulierung für
das PRF-Problem ist vorteilhaft, da kommerzielle LP-Löser es effektiv
lösen können und
da es leicht auf den Pfadoptimierungsfall erweitert werden kann.
Es ist wichtig, dass die Annäherung,
die in PRF/LP verwendet wird, nicht begrenzend ist, da sogar mit
einem kleinen Wert von K die Annäherung
praktisch nicht schlechter als die ursprüngliche logarithmische Funktion
ist.
-
Es
entsteht eine natürliche
Frage bezüglich
dessen, wie faire Bandbreitenzuordnungsprobleme zu definieren und
zu lösen
sind, wenn die Pfade, die zur Realisierung der Anforderungen verwendet
werden, auch optimiert sind (in einem gewissen Sinn) im Gegensatz
zu der fixierten (gegebenen) Menge von Pfaden, wie oben beschrieben
wird. Die folgende Erörterung
wird diesen Typ eines fairen Zuordnungsproblems behandeln.
-
Es
wird die folgende, pfad-unabhängige
Version von Aufgabe LP1 betrachtet, hierin nachstehend als "LP2" bezeichnet (MMF
mit vielen Pfaden):
Indizes: | d
= 1, 2, ..., D Anforderungen
j = 1, 2, ..., m(d) Pfade, die
potenziell Anforderung d realisieren können
e = 1, 2, ..., E
Verknüpfungen |
Konstanten: | aedj = 1, falls e zu dem Pfad j gehört, der
Anforderung d realisiert, anderenfalls 0
ye Kapazität von Verknüpfung e
cd Gewichtung von Anforderung d |
Variablen: | xdj Fluss, der Pfad j zugeordnet ist, der
Anforderung d realisiert (nicht-negativkontinuierlich)
t Hilfsvariable
(kontinuierlich) |
Ziel: | C
= t maximieren (Gl. 14) |
Einschränkungen: | Σjxdj = cd·t d =
1, 2, ..., D (Gl. 15)
ΣdΣjaedjxdj ≤ ye e = 1, 2, ..., E (Gl. 16)
t ≥ 0 (Gl. 17) |
-
LP2
erlaubt viele Flüsse,
die die Anforderungen realisieren, und ist ein lineares Programm.
-
Algorithmus
zum Lösen
von MMF ohne Abgrenzungen und optimierten Pfaden ("MMF/NB/OP"):
Schritt
1: | Xd := 0 für
d = 1, 2, ..., D;
xdj := 0 für d = 1,
2, ..., D, j = 1, 2, ..., m(d). |
Schritt
2: | Lösen von
LP2, um optimale Flüsse
zu erhalten
x 0 / dj (d = 1, 2, ..., D, j = 1, 2, ..., m(d)). |
Schritt
3: | ye' :=
ye – ΣdΣjaedjx 0 / dj; für
e = 1, 2, ..., E.
Xd := Xd + Σjx 0 / dj für d = 1,
2, ..., D.
xdj := xdj +
x 0 / dj d = 1, 2, ..., D, j = 1, 2, ..., m(d)).
Entfernen aller gesättigten
Verknüpfungen
und aller Anforderungen, die die entfernten Verknüpfungen verwenden.
Entfernen
aller Anforderungen mit leeren Listen von verfügbaren Pfaden. |
Schritt
4: | Falls
keine Anforderungen übrig
sind, dann stoppen, anderenfalls zu Schritt 2 gehen. |
-
Wenn
der obige Algorithmus beendet wird, gibt Xd den
Gesamtfluss zurück,
der Anforderung d zugeordnet ist, und xdj gibt
die Zuordnung seiner individuellen Flüsse (d.h. pro Pfad) zurück. Unglücklicherweise
ist eine derartige Erweiterung des Falls des fixierten Pfades nicht
vollständig
korrekt. In den MMF-Problemen mit fixierten Pfaden ist die erhaltene
Lösung
in jedem Schritt der interaktiven Algorithmen (vgl. MMF/NB/FP) eindeutig.
Diese Eigenschaft macht in der Tat die MMF-Auffassung in dem Fall
geradlinig, wenn die Pfade fixiert sind. Wenn die Pfade jedoch Gegenstand
einer Optimierung sind, trifft dies nicht länger zu und das Problem besteht
darin, dass die optimalen Lösungen
von LP2 im allgemeinen nicht eindeutig sind. Dies bedeutet, dass wir
mehr als einen Flussvektor x0 = (x 0 / dj, d =
1, 2, ..., D; j = 1, 2, ..., m(d) haben können, die den Wert von t in (Gl.
14) maximieren. Folglich kann die Wahl der optimalen Lösung x0 in Schritt 2 die weitere Entwicklung des Algorithmus
und 'seines endgültigen Ergebnisses
beeinflussen.
-
Daher
wird die Auffassung von MMF in dem Fall von flexiblen (optimierten)
Pfaden weniger klar. Die MMF-Lösung
kann auch auf die folgende Weise charakterisiert werden: falls die
rea- lisierten Anforderungen gemäß ihren
steigenden Werten geordnet sind, dann ist der resultierende Vektor
lexikografisch so groß wie möglich. Unglücklicherweise
ist diese schöne
Charakterisierung nicht leicht auszunutzen, hauptsächlich da
es keinen effizienten Weg gibt, MMF-Lösungen in diesem Sinne zu bestimmen.
Ein anderes Problem besteht darin, dass selbst wenn eine MMF-Lösung gefunden
werden könnte,
die Lösung
den Durchsatz nicht maximieren könnte.
Um diese Schwierigkeit zu überwinden,
kann die folgende Prozedur verwendet werden. Zuerst LP2 lösen, um
das Maximum t (t
max) zu erhalten. Als Nächstes die
folgende LP3-(Durchsatzmaximierung)Aufgabe lösen, die den Netzdurchsatz
maximiert, was sicherstellt, dass jeder Anforderung mindestens t
max Bandbreite zugewiesen wird.
Indizes: | d
= 1, 2, ..., D Anforderungen
j = 1, 2, ..., m(d) Pfade, die
potenziell Anforderung d realisieren können
e = 1, 2, ..., E
Verknüpfungen |
Konstanten: | aedj = 1, falls e zu dem Pfad j gehört, der
Anforderung d realisiert, anderenfalls 0
ye Kapazität von Verknüpfung e
cd Gewichtung von Anforderung d
tmax untere Abgrenzung für Anforderungsrealisierung |
Variablen: | xdj Fluss, der Pfad j zugeordnet ist, der
Anforderung d realisiert |
Ziel: | C
= ΣdcdΣjxdj maximieren (Gl. 18) |
Einschränkungen: | Σjxdj ≥ tmax d = 1, 2, ..., D (Gl. 19)
ΣdΣjaedjxdj ≤ ye e = 1, 2, ..., E (Gl. 20) |
-
Der
obige Ansatz kann etwas als "rohe
Gewalt" aussehen,
da Lösen
von LP3 nicht vollständig
fair ist.
-
Wenn
die Pfade optimiert werden, ist es vernünftig anzunehmen, dass der
Gesamtfluss von jeder Anforderung über einen der möglichen
alternativen Pfade realisiert wird. Die folgende Misch-Integer-Programmierungsaufgabe
löst die
erste Stufe des MMF-Problems mit einzelnen Pfaden, die hierin nachstehend
als "MIP1" (MMF mit einzelnen
Pfaden) bezeichnet wird:
Zusätzliche
Konstante: | M
große
Zahl |
Zusätzliche
Variablen: | ϵdj binäre
Variable, die anzeigt, welcher Pfad gewählt wird, um Anforderung zu übertragen |
Ziel: | (Eq.
14) maximieren |
Einschränkungen: | (Gl.
15), (Gl. 16), (Gl. 17) und
Σjϵdj = 1
d = 1, 2, ..., D (Gl. 21)
xdj ≤ Mϵdj d = 1, 2,..., D, j = 1, 2, ..., m(d) (Gl.
22) |
-
Nachdem
die MIP1-Aufgabe gelöst
ist, können
die Pfade, die aus der optimalen Lösung resultieren, fixiert werden,
und die Lösung
kann fortfahren genau wie in dem Fall von MMF/NB/FP.
-
Wie
in dem Mehrfachpfadfall könnte
die Auffassung der maximalen lexikografischen Reihenfolge verwendet
werden. Dieses Mal ist jedoch bekannt, dass selbst in dem speziellen
Fall der einzelnen Quelle die MMF-Lösung den Durchsatz allgemein
nicht maximiert. Die obige MIP-Formulierung bildet die Basis des
folgenden Algorithmus zum Lösen
von MMF ohne Abgrenzungen und optimierten einzelnen Pfaden ("MMF/NB/OSP"):
Schritt
1: | Xd := 0 für
d = 1, 2, ..., D;
xdj := 0 für d = 1,
2, .., D, j = 1, 2, ..., m(d). |
Schritt
2: | Lösen von
MIP1, um optimale Flüsse
zu erhalten
x 0 / dj (d = 1, 2, ..., D, j = 1, 2, ..., m(d)). |
Schritt
3: | Es
sei A ⊆ {1,
2, ..., D} die Menge von Indizes derart, dass d ∊ A, falls
der Pfad, der die Anforderung d realisiert, eine gesättigte Verknüpfung e
enthält
(d.h. ye =)
Setzen ye :=
ye – Σd AΣjaedjx 0 / dj; für
e = 1, 2, ..., E.
Für
alle d ∊ A setzen Xd := Xd + Σjaedj x 0 / dj
und
xdj := xdj + x 0 / dj;
für j =
1, 2, ..., m(d)).
Entfernen aus dem Netz aller gesättigten
Verknüpfungen
und aller Anforderungen von A. |
Schritt
4: | Falls
keine Anforderungen übrig
sind, dann stoppen, anderenfalls zu Schritt 2 gehen. |
-
Es
wird vermerkt, dass in Schritt 3 des obigen Algorithmus das Netz
nur mit Bezug auf die Flüsse
modifiziert wird, die die entfernten gesättigten Verknüpfungen
verwenden (nur die Kapazität,
die durch diese Flüsse
verwendet wird, wird von den Verknüpfungen subtrahiert).
-
Das
MMF-Zuordnungsproblem mit Abgrenzungen (Gl. 9) und Optimierung von
Pfaden wird durch leichtes Modifizieren der Algorithmen MMF/NB/OP
oder MMF/NB/OSP gelöst.
Für diesen
ersten Algorithmus führt
die Modifikation zu dem Algorithmus, der MMF/B/OP genannt wird,
der wie folgt arbeitet: während
der ersten (und nur der ersten) Ausführung von Schritt 2 wird Einschränkung (Gl.
15) in Aufgabe LP2 mit
Σjxdj = hd +
cdt d = 1, 2, ..., D (Gl. 23) ersetzt.
-
Ähnlich wird
MMF/B/OSP mit der gleichen Modifikation (Einschränkung (Gl. 15) ersetzt mit
(Gl. 23)) von MMF/NB/OSP erhalten. Dieses Mal wird jedoch in Schritt
2 die modifizierte Aufgabe in allen Fällen verwendet. Natürlich werden
in beiden Fällen
die Hilfsverknüpfungen
mit Kapazität
Hd dem Netz hinzugefügt.
-
Die
oben formulierte Aufgabe PRF/LP kann leicht an das PRF-Zuordnungsproblem
mit Pfadoptimierung angepasst werden, hierin nachstehend als ("PRF/OP") oder PRF mit optimierten
Mehrfachpfaden bezeichnet:
Variablen: | xdj Fluss, der Pfad j zugeordnet ist, der
Anforderung d realisiert
fd nicht-negative
kontinuierliche Hilfsvariable, die mit d in Verbindung steht |
Ziel:
C = | Σdcdfd maximieren (Gl. 24) |
Einschränkungen: | hd ≤ Σjxdj ≤ Hd
d = 1, 2, ..., D (Gl. 25)
ΣdΣjaedjxdj ≤ ye, e = 1, 2, ..., E (Gl. 26)
fd ≤ bkΣjxdj + gk d
= 1, 2, ..., D k := 1, 2, ..., K. (Gl. 27) |
-
Ähnlich ist
das PRF-Zuordnungsproblem mit Optimierung einzelner Pfade wie folgt,
hierin nachstehend als "PRF/OSP" oder PRF mit optimiertem
einzelnen Pfad:
Variablen: | ϵdj binäre
Variable, die anzeigt, welcher Pfad gewählt wird, um Anforderung d
zu übertragen
xdj Fluss, der Pfad j zugeordnet ist, der
Anforderung d realisiert
fd nicht-negative
kontinuierliche Hilfsvariable, die mit d in Verbindung steht |
Ziel: | (Gl.
24) maximieren (Gl. 28) |
Einschränkungen: | (Gl.
21), (Gl. 22), (Gl. 25), (Gl. 26), (Gl. 27). |
-
Wie
durch einen Fachmann erkannt wird, können die verschiedenen Ausführungsformen
der vorliegenden Erfindung (MMF/NB/OP, MMF/NB/OSP, MMF/B/OP, MMF/B/OSP,
PRF/OP und PRF/OSP) durch ein Verfahren zum Optimieren elastischer
Flüsse
in einem Mehrfachpfadnetz für
eine Verkehrsanforderung durch gemeinsames Bestimmen einer Bandbreite
für jeden
Fluss in einer Menge von Flüssen,
die die Verkehrsanforderung realisieren, und eines optimierten Pfades
für die
Verkehrsanforderung durch Maximieren eines Fairnessnutzens charakterisiert
werden. Das Verfahren kann auch Zuordnen der Bandbreite für die Verkehrs anforderung
und Zuweisen des optimalen Pfades für die Verkehrsanforderung inkludieren.
Wie zuvor beschrieben, kann die Verkehrsanforderung eine spezifizierte
Bandbreite zwischen einem oder mehr Ursprung-Ziel-Paaren oder eine
minimale Bandbreite und eine maximale Bandbreite zwischen einem
oder mehr Ursprung-Ziel-Paaren sein. Außerdem kann der Fairnessnutzen
ein MMF-Nutzen oder ein PRF-Nutzen sein. Außerdem kann der optimierte
Pfad ein einzelner optimierter Pfad oder mindestens zwei optimierte
Pfade sein.
-
Alle
Aspekte der vorliegenden Erfindung können als ein Computerprogramm
implementiert werden, verkörpert
auf einem computerlesbaren Medium, zum Optimieren elastischer Flüsse in einem
Mehrfachpfadnetz für
eine Verkehrsanforderung, worin die Funktionen oder Schritte des
Verfahrens als Codesegmente implementiert sind, die angepasst sind,
jene Funktionen oder Schritte durchzuführen. Außerdem kann die vorliegende
Erfindung als eine Vorrichtung zum Optimieren elastischer Flüsse in einem
Mehrfachpfadnetz für
eine Verkehrsanforderung implementiert werden, wobei die Vorrichtung
einen Prozessor und eine Schnittstelle, die den Prozessor mit dem
Mehrfachpfadnetz kommunizierbar koppelt, inkludiert. Der Prozessor
bestimmt gemeinsam eine Bandbreite für jeden Fluss in einer Menge
von Flüssen,
die die Verkehrsanforderung realisieren, und einen optimierten Pfad
für die
Verkehrsanforderung durch Maximieren eines Fairnessnutzens.
-
Genauer
ist 1 ein Flussdiagramm, das einen Algorithmus 100
zum Lösen
von MMF ohne Abgrenzungen und optimierten Mehrfachpfaden ("MMF/NB/OP") in Übereinstimmung
mit einer Ausführungsform
der vorliegenden Erfindung veranschaulicht. Der Algorithmus 100,
der eine Implementierung des oben beschriebenen Verfahrens ist,
beginnt in Block 102 und der Gesamtfluss, der jeder Verkehrsanforderung
zugeordnet ist, und der Fluss, der jedem Pfad zugeordnet ist, der
jede Verkehrsanforderung realisiert, werden in Block 104 initialisiert.
Der optimale Fluss, der jedem Pfad zugeordnet ist, der jede Verkehrsanforderung
realisiert, wird in Block 106 bestimmt. Diese Bestimmung
kann durch Verwenden von LP2 oder LP2 gefolgt durch LP3 durchgeführt werden.
Die Kapazität
jeder Verknüpfung
wird in Block 108 auf die Kapazität der Verknüpfung minus die Summe der Flüsse gesetzt,
zugeordnet jedem Pfad, der jede Verkehrsanforderung realisiert,
für alle
Pfade und Verkehrsanforderungen, wozu die Verknüpfung gehört. Jeder Gesamtfluss, der
jeder Verkehrsanforderung zugeordnet ist, wird auf einen Gesamtfluss,
der jeder Verkehrsanforderung zugeordnet ist, plus eine Summe der
Flüsse,
zugeordnet jedem Pfad, der jede Verkehrsanforderung realisiert,
für alle
Pfade in Block 110 gesetzt. Jeder Fluss, der dem Pfad zugeordnet
ist, der die Verkehrsanforderung realisiert, wird in Block 112 auf
den Fluss gesetzt, der dem Pfad zugeordnet ist, der die Verkehrsanforderung
realisiert, plus den optimalen Fluss, der dem Pfad zugeordnet ist,
der die Verkehrsanforderung realisiert. Alle gesättigten Verknüpfungen und
Verkehrsanforderungen, die die entfernten Verknüpfungen verwenden, und alle
Anforderungen mit leeren Listen von verfügbaren Pfaden werden in Block 114 entfernt.
Falls es keine Verkehrsanforderungen mehr gibt, wie in Entscheidungsblock 116 bestimmt,
endet der Prozess in Block 118. Falls es jedoch mehr Verkehrsanforderungen
gibt, verzweigt der Prozess zurück
zu Block 106, und der Block wird wiederholt, bis es keine
Verkehrsanforderungen mehr gibt.
-
Ähnlich ist 2 ein
Flussdiagramm, das einen Algorithmus 200 zum Lösen von MMF ohne Abgrenzungen
und optimierten einzelnen Pfaden ("MMF/NB/OSP") in Übereinstimmung mit einer anderen
Ausführungsform
der vorliegenden Erfindung veranschaulicht. Der Algorithmus 200,
der eine Implementierung des oben beschriebenen Verfahrens ist,
beginnt in Block 204, und der Gesamtfluss, der jeder Verkehrsanforderung zugeordnet
ist, und der Fluss, der jedem Pfad zugeordnet ist, der jede Ver kehrsanforderung
realisiert, werden in Block 204 initialisiert. Der optimale
Fluss, der jedem Pfad zugeordnet ist, der jede Verkehrsanforderung
realisiert, wird in Block 206 bestimmt. Diese Bestimmung
kann unter Verwendung von MIP1 durchgeführt werden. Eine Menge aller
Verkehrsanforderungen, worin der Pfad, der die Verkehrsanforderung
realisiert, eine gesättigte
Verknüpfung
ist, wird in Block 208 identifiziert. Eine Kapazität jeder
Verknüpfung
wird in Block 210 auf die Kapazität der Verknüpfung gesetzt minus die Summe
der Flüsse,
zugeordnet jedem Pfad, der jede Verkehrsanforderung realisiert,
für alle
Pfade und Verkehrsanforderungen, wozu die Verknüpfung gehört, falls die Verknüpfung gesättigt ist.
Für alle
Verkehrsanforderungen in der Menge von Verkehrsanforderungen, worin
der Pfad, der die Verkehrsanforderung realisiert, eine gesättigte Verknüpfung enthält, wird
jeder Gesamtfluss, der jeder Verkehrsanforderung zugeordnet ist,
auf einen Gesamtfluss, der jeder Verkehrsanforderung zugeordnet ist,
plus eine Summe der Flüsse,
zugeordnet jedem Pfad, der jede Verkehrsanforderung realisiert,
für alle
Pfade in Block 212 gesetzt. Jeder Fluss, der dem Pfad zugeordnet
ist, der die Verkehrsanforderung realisiert, wird auf den Fluss,
der dem Pfad zugeordnet ist, der die Verkehrsanforderung realisiert,
plus den optimalen Fluss, der dem Pfad zugeordnet ist, der die Verkehrsanforderung
realisiert, in Block 214 gesetzt. Alle gesättigten
Verknüpfungen
und Verkehrsanforderungen in der Menge von Verkehrsanforderungen,
worin der Pfad, der die Verkehrsanforderung realisiert, eine gesättigte Verknüpfung enthält, werden
in Block 216 entfernt. Falls es keine Verkehrsanforderungen
mehr gibt, wie in Entscheidungsblock 218 bestimmt, endet
der Prozess in Block 220. Falls es jedoch mehr Verkehrsanforderungen
gibt, verzweigt der Prozess zurück
zu Block 206, und der Prozess wird wiederholt, bis es keine
Verkehrsanforderungen mehr gibt.
-
Es
wird ein vereinfachtes Modell des Polnischen Backbone-Netzes betrachtet,
und es wird der Einfluss von Pfadoptimierung auf relevante Leistungsverhaltensmaße untersucht.
Mit Ausnahme in einer nachstehenden Sektion werden die ungebundenen
MMF- und PPF-Zuordnungsverfahren untersucht, unter Vergleich von Nutzung,
mittlerer Bandbreite und der Varianz der zugeordneten Bandbreite
unter diesen zwei Schemata. Es werden 3 Pfadauswahlalgorithmen verwendet:
fixierter Pfad ("FP"), optimierter einzelner
Pfad ("OSP") und optimierter
(viele) Pfad ("OP").
-
Dieses
Beispielnetz enthält
12 Knoten und 18 Verknüpfungen,
mit Benutzeranforderungen zwischen jedem Paar von Knoten, was zu
insgesamt D = 66 Anforderungen führt.
Jede Benutzeranforderung kann durch mehrere (variierend zwischen
6 und 13) alternativen Pfaden übertragen
werden. Um Ergebnisse mit relevantem statistischen Vertrauen zu
erhalten, wurden Bandbreitemitbenutzungsalgorithmen, die zuvor genau
beschrieben wurden, für
die gleiche Netztopologie für
eine Anzahl von Malen angewendet, wobei Verknüpfungskapazitäten zufällig in
den aufeinanderfolgenden experimentellen Kalkulationen gesetzt wurden,
aber die gleiche fixierte gesamte verfügbare Netzbandbreite bewahrt
wurde. In allen Fällen
wurden den Anforderungen gleiche Gewichtungen zugewiesen, unter
Einstellung von cd = 1 und d = 1, 2, ...,
D.
-
Die
zufälligen
Verknüpfungskapazitätswerte
der untersuchten Netztopologie wurden unter Verwendung des folgenden
Algorithmus für
jeden Aufbau festgesetzt. Erste 1-1 Zufallszahlen werden in dem
Intervall [0, 1] generiert, und die Zufallszahlen werden in aufsteigender
Reihenfolge sortiert, wobei das Intervall [0, 1] in "1"-Zufallslängensektionen partitioniert
wird. Jede dieser Sektionen wird mit einer Verknüpfung in Verbindung gebracht,
und die entsprechende Verknüpfungskapazität wird durch
Multiplizieren der Länge
der Sektion mit der als Ziel gesetzten gesamten verfügbaren Netzkapazität erhalten
(360 Bandbreiteeinheiten in dem vorliegenden Fall). Um
Ungenauigkeiten und die Möglichkeit
einer Einbeziehung von Verknüpfungen
extrem niedriger Bandbreite zu vermeiden, werden die Ergebnisse
auf ganzzahlige Werte (> 1)
gerundet und abgestimmt, um die gleiche gesamte Netzbandbreite zu
bewahren.
-
Um
die Vorteile von Pfadoptimierung hervorzuheben, wurde in dem ersten
Experiment das kürzeste (im
Sinne der Zahl von involvierten Verknüpfungen) Pfadverfahren verwendet,
um zwischen den alternativen Routen auszuwählen, um Benutzeranforderungen
zu übertragen.
Nach Auswahl der Pfade wurden die entsprechenden MMF- und PRF-Zuordnungen
kalkuliert. In dem Fall von MMF wurde die LP1-Formulierung zusammen
mit dem MMF/NB/FP-Algorithmus angewendet, während die PRF-Anteile mit PRF/FP
kalkuliert wurden.
-
In
dem Fall von flexiblen (vielen) Pfaden ergeben sich die vielen Routenanteile
durch MMF/NB/OP und PRF/OP. Die numerischen Beispiele für das Einzelroutenszenarium
wurden unter Verwendung von MMF/NB/OSP und PRF/OSP ausgearbeitet.
-
Der
Einfluss von Pfadoptimierung wird in 3 und 4 veranschaulicht,
die die minimale zugeordnete Bandbreite 300 bzw. die maximale
zugeordnete Bandbreite 400 für die Fälle MMF/NB/FP (Stand der Technik),
MMF/NB/OSP (vorliegende Erfindung), MMF/NB/OP (vorliegende Erfindung),
MMF/NB/OSP+ (vorliegende Erfindung), PRF/FP (Stand der Technik),
PRF/OSP (vorliegende Erfindung), PRF/OP (vorliegende Erfindung)
und brutal (Brute)(vorliegende Erfindung) zeigen. Es wird vermerkt,
dass die MMF-Zuordnung die Maximierung des "kleinsten" Flusses impliziert, wie auch in 3 gezeigt
wird. Maximieren der minimalen Bandbreite führt natürlich zu einer kleine ren maximalen
Bandbreite im Vergleich zu der PRF-Zuordnung, siehe die FP-Spalten
in 4.
-
Optimieren
eines einzelnen Pfades hat einen tiefen Einfluss unter beiden Fairnesseinschränkungen: die
Bandbreite der "kleinen" Flüsse erhöht sich
ungefähr
fünfmal
ohne viel Verringerung der maximalen Bandbreite. Auch sind sowohl
die minimalen als auch die maximalen Bandbreitewerte ungefähr die gleichen
unter den MMF- und den PRF-Zuordnungen. Mit anderen Worten verringert
optimale Pfadauswahl die Wichtigkeit der spezifischen Fairnessauffassung.
(Diese Beobachtung wird ferner durch 6 gestützt, die
den Grad von Unfairness 600 zeigt, wo sich die Varianz
der zugeordneten Bandbreite mit optimaler Pfadauswahl verringert.) 5 und 6 zeigen
MMF/NB/FP (Stand der Technik), MMF/NB/OSP (vorliegende Erfindung), MMF/NB/OP
(vorliegende Erfindung), MMF/NB/OSP+ (vorliegende Erfindung), PRF/FP
(Stand der Technik), PRF/OSP (vorliegende Erfindung), PRF/OP (vorliegende
Erfindung) und brutal (Brute)(vorliegende Erfindung).
-
5 zeigt
die mittlere Bandbreite 500, die über alle 66 Flüsse in dem
Netz zugeordnet wird. Es wird vermerkt, dass während Fairness nicht einen
Einfluss in der zugeordneten Bandbreite hat, in dem pfadoptimierten
Fall ihre Relevanz erneut kleiner ist. (MMF führt normalerweise zu einer
kleineren mittleren Bandbreite.) Es wird auch vermerkt, dass während Pfadoptimierung
wichtig ist, da sie dazu beiträgt,
die Nutzensfunktion der Fairnesskriterien zu optimieren, sie die
Nutzung etwas verringert, insbesondere unter Max-Min-Fairness.
-
Der
Einfluss von oberer Abgrenzung der Anforderungen kann in 7 und 8 gesehen
werden, die zeigen, wie Varianz und Nutzung durch das Vorhandensein
von oberen Abgrenzungen beeinflusst werden. 7 und 8 zeigen
MMF/B/OP (702 und 802; vorliegende Erfindung),
MMF/B/OSP (704 und 804; vorliegende Erfindung),
PRF/OP (706 und 806; vorliegende Erfindung) und
PRF/OSP (708 und 808; vorliegende Erfindung).
Wie erwartet erhöht
sich die Nutzung ungefähr
linear mit der oberen Abgrenzung der Anforderung. Der Unterschied
zwischen den Fällen
von einzelnen und vielen Pfaden ist jedoch vernachlässigbar.
-
Die
Ausführungsformen
und Beispiele, die hierin dargelegt werden, werden präsentiert,
um die vorliegende Erfindung und ihre praktische Anwendung am besten
zu erläutern,
und um dadurch einem Fachmann zu ermöglichen, die Erfindung durchzuführen und
zu nutzen. Ein Fachmann wird jedoch erkennen, dass die vorangehende
Beschreibung und die Beispiele nur für den Zweck von Veranschaulichung
und Beispiel präsentiert
wurden. Die Beschreibung, wie sie dargelegt wird, ist nicht gedacht,
erschöpfend
zu sein oder die Erfindung auf die offengelegte genaue Form zu begrenzen.
Angesichts der obigen Unterweisung sind viele Modifikationen und
Variationen möglich,
ohne von dem Bereich der folgenden Ansprüche abzuweichen.
-
ZUSAMMENFASSUNG
-
Die
vorliegende Erfindung sieht ein Verfahren zum Optimieren elastischer
Flüsse
in einem Mehrfachpfadnetz für
eine Verkehrsanforderung durch gemeinsames Bestimmen einer Bandbreite
für jeden
Fluss in einer Menge von Flüssen,
die die Verkehrsanforderung realisieren, und eines optimierten Pfades
für die
Verkehrsanforderung durch Maximieren eines Fairnessnutzens vor.
Die vorliegende Erfindung kann als ein Computerprogramm implementiert
werden, verkörpert
auf einem computerlesbaren Medium, worin die Funktionen oder Schritte
des Verfahrens als Codesegmente implementiert sind. Außerdem kann
die vorliegende Erfindung als eine Vorrichtung implementiert werden,
die einen Prozessor und eine Schnittstelle, die den Prozessor mit dem
Mehrfachpfadnetz kommunizierbar koppelt, inkludiert. Der Prozessor
bestimmt gemeinsam eine Bandbreite für jeden Fluss in einer Menge
von Flüssen,
die die Verkehrsanforderung realisieren, und einen optimierten Pfad
für die
Verkehrsanforderung durch Maximieren eines Fairnessnutzens.