DE69118974T2 - Überlastungsregelung für verbindungslosen Verkehr in Datennetzen durch Umweglenkung - Google Patents
Überlastungsregelung für verbindungslosen Verkehr in Datennetzen durch UmweglenkungInfo
- Publication number
- DE69118974T2 DE69118974T2 DE69118974T DE69118974T DE69118974T2 DE 69118974 T2 DE69118974 T2 DE 69118974T2 DE 69118974 T DE69118974 T DE 69118974T DE 69118974 T DE69118974 T DE 69118974T DE 69118974 T2 DE69118974 T2 DE 69118974T2
- Authority
- DE
- Germany
- Prior art keywords
- node
- nodes
- path
- routes
- routing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims description 61
- 238000012544 monitoring process Methods 0.000 claims description 3
- 230000015654 memory Effects 0.000 description 32
- 230000007717 exclusion Effects 0.000 description 27
- 230000008569 process Effects 0.000 description 18
- 230000000903 blocking effect Effects 0.000 description 15
- 239000000872 buffer Substances 0.000 description 8
- 238000013459 approach Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000005259 measurement Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 102100036255 Glucose-6-phosphatase 2 Human genes 0.000 description 2
- 101000930907 Homo sapiens Glucose-6-phosphatase 2 Proteins 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011217 control strategy Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000000116 mitigating effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 235000008694 Humulus lupulus Nutrition 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000006727 cell loss Effects 0.000 description 1
- 238000010835 comparative analysis Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/64—Distributing or queueing
- H04Q3/66—Traffic distributors
- H04Q3/665—Circuit arrangements therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/122—Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/18—Loop-free operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
- H04L45/247—Multipath using M:N active or standby paths
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/122—Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/29—Flow control; Congestion control using a combination of thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
- Die vorliegende Erfindung bezieht sich auf Verfahren und Vorrichtungen zur Regelung von Überlast in dem Wege in einem Netz von zusammengeschalteten Knoten durchlaufenden Fluß von Nachrichtenpaketen.
- Verbindungslose Datennetze (wie zum Beispiel das ARPANET-Netz) erlauben den Austausch paketierter Daten zwischen zusammengeschalteten Knoten ohne die Notwendigkeit für feste oder zentralisierte Netzleitwegsverwaltung. Jeder Knoten untersucht Paketkopfinformationen und trifft Leitwegentscheidungen lediglich auf der Basis lokal verfügbarer Informationen, ohne explizites Wissen über den Paketursprung oder über den gesamten Leitweg bis zum Zielknoten. In dieser Umgebung können traditionelle Überlastregelungsstrategien wie z.B. Fenster-Flußsteuerung oder über Pufferung mit virtuellen Verbindungen und Nachrichtenmengendosierung aufgrund der Abwesenheit durchgehender Bestätigungen nicht verwendet werden.
- Ein Ansatz zur Überlastregelung, der in einigen verbindungslosen Netzen immplementiert worden ist, ist die Verwendung von Drosselungsmeldungen. Bei diesem Verfahren sendet ein überlasteter Knoten Rückmeldungen an andere Knoten und bittet sie, ihm bis auf weiteres keinen Verkehr mehr zu senden. Dieser Ansatz hat verschiedene Nachteile: erstens ist zu dem Zeitpunkt, zu dem die Drosselungsmeldung den störenden Knoten erreicht, schon eine beträchtliche Menge von Verkehr übertragen worden. So zum Beispiel benötigt in einem Netz, das aus 150-Mb/s- Leitungen besteht, ein über eine 1000 Meilen lange Verbindung gesendetes Drosselungspaket eine Laufzeit von 10 ms. In dieser Zeit sind schon 1,5 Mb im Durchlauf und tragen zur bereits bestehenden Überlastung bei. Zweitens liegt bei einem verbindungslosen Netz über den Weg, den ein Paket durchquert, vor Ankunft bei einem gegebenen Knoten kein Wissen vor, so daß Drosselungsmeldungen zu allen Nachbarn geschickt werden müssen, auch zu denjenigen, die nicht zur Überlastung beitragen. Dies führt zu Unterbelastung des Netzes. Eine weitere Schwierigkeit bei diesem Verfahren liegt in der Handlung, die ein Knoten bei Empfang eines Drosselungspakets vornimmt. Läßt er alle für den überlasteten Knoten bestimmte Pakete fallen, so tragen nachfolgende Wiederholungen zu einer noch größeren Überlastung bei. Da keine verbindungsorientierte Schicht vorliegt, mit der das Netz in Wechselwirkung steht, ist es schwierig, den Verkehr an den für die Verursachung der Überlast verantwortlichen Quellen zu stoppen. Aus diesem Grund scheinen Drosselungsmeldungen kein wirksames Mittel zur Überlastregelung in verbindungslosen Netzen darzustellen.
- Bei verschiedenen anderen Ansätzen, die in verbindungslosen Netzen wie zum Beispiel dem ARPANET probiert worden sind, geht es darum, die Netzleitweglenkung als Reaktion auf Veränderungen in den Verkehrsbedingungen durch dynamisches Neuberechnen der Wege zwischen Knoten auf vollständig verteilte Weise zu verändern. Dies kann veranschaulicht werden, indem man das RIP-Verfahren betrachtet, das im ARPANET ausprobiert worden ist. Bei RIP speichert jeder Knoten die gesamte Topologie des Netzes und überträgt Leitwegaktualisierungsmeldungen periodisch an seine Nachbarknoten. Die Leitwegaktualisierungsmeldungen liefern Erreichbarkeitsinformationen, die jedem Nachbarknoten sagen, wie der Ursprungsknoten die anderen Knoten im Netz erreichen kann, zusammen mit einem bestimmten Maß für die Mindestentfernung in den verschiedenen Knoten. In den verschiedenen Versionen von RIP werden verschiedene Entfernungsmessungen verwendet. Von dem ursprünglichen RIP-Protokoll wurden Abschnittszählungen verwendet, um die Entfernung zu messen, wohingegen die nachfolgenden Modifikationen als Maß für die Entfernung Schätzwerte hinsichtlich der Laufzeit, um ein Ziel zu erreichen, verwenden.
- Das Problem bei dem RIP-Verfahren liegt darin, daß es verschiedene schwerwiegende Nachteile aufweist: erstens muß zwischen den Knoten eine große Informationsmenge ausgetauscht werden, um einheitliche Veränderungen bei der Leitweglenkung sicherzustellen, was selbst wiederum beträchtliche Netzbetriebsmittel belegen kann. Da die Wege dynamisch neu berechnet werden, besteht zweitens ein ernsthaftes Potential für Probleme wie zum Beispiel Paketschleifenbildung, Paketfehlreihung und Leitwegpendeln. Außerdem können aufgrund der Ausbreitungslaufzeit die zwischen den Knoten ausgetauschten Informationen veraltet und deshalb für eine Veränderung des Leitweges unzuverlässig sein. Dieses Problem ist bei Hochgeschwindigkeitsnetzen (> 45Mb/s) besonders gravierend.
- Ein zweites dynamisches Leitweglenkungsprotokoll mit der Bezeichnung IGRP verwendet eine zusammengesetzte Metrik, die die Laufzeit, die Wegbandbreite, die Wegnutzung und die Wegzuverlässigkeit als Maß für die Entfernung enthält. Wenn der Weg mit der Mindestentfernung ein anderer ist als der gegenwärtig verwendete, so wird der ganze Verkehr auf den neuberechneten kürzesten Weg geschaltet. Wenn eine Menge von Wegen "gleichwertig" ist, so wird Lastausgleich verwendet.
- Wenn dynamische Veränderungen in der Leitweglenkung von dem IGRP-Protokoll hervorgeruf en werden, verschiebt sich Verkehr von einem Weg zum anderen, was eine Überlastung auf dem neuen Weg verursachen kann. Durch eine anschließende Berechnung der Entfernung und des kürzesten Weges könnte dann der Verkehr auf den ursprünglichen Weg zurückgeschaltet werden. Auf diese Weise wärde jeder Weg Pendelungen im angebotenen Verkehr erfahren, und das Endergebnis könnte sein, daß kein Weg voll genutzt wird. Dadurch, daß die Entfernungsmessungen vor der Übertragung an die anderen Knoten über eine Zeitspanne gemittelt werden, wird dieses Problem nur teilweise gemildert.
- Eine dritte, erst in jüngster Zeit vorgeschlagene Verbesserung des ARPANET-Leitweglenkungsprotokolls, die in "An Extended Least-Hop Distributed Routing Algorithm" [Ein erweiterter verteilter Leitweglenkungsalgorithmus mit kleinsten Abschnitten], verfaßt von D. J. Nelson, K. Sayood und H. Chang, veröffentlicht in IEEE Transactions on Communications, Band 38, Nr. 4, April 1990, Seiten 520-580 beschrieben wird, erhöht die Menge der zur Verfügung stehenden Leitwege mit den kürzesten Wegen, um Pakete zu einem gegebenen Ziel zu tragen, indem Leitwege miteinbezogen werden, die einen Abschnitt länger sind als die Leitwege mit dem kürzesten Weg. Jeder Knoten unterhält einen Schätzwert der zum Erreichen jedes Ziels benötigten Gesamtlaufzeit. Aus der Menge der zum Tragen von Verkehr zu einem gegebenen Ziel zur Verfügung stehenden Leitwege wird dann der Leitweg mit dem Minimum an Laufzeit zu diesem Ziel ausgewählt. Obwohl dieser Ansatz im Vergleich zur bestehenden ARPANET-Leitweglenkung beträchtliche Verbesserungen zeigt, weist er doch verschiedene Nachteile auf. Erstens muß für jedes Paket der optimale Weg mit der minimalen Laufzeit ausgewählt werden, was in der Vermittlung zu mehr Verarbeitungsaufwand führt. Zweitens ist zu jeder beliebigen Zeit nur ein Weg aktiv, weshalb die Vorstellung von Lastausgleich ausgeschlossen ist. Der ganze Verkehr wird über den gleichen Weg geleitet, bis ein Weg mit einem besseren Laufzeitschätzwert zur Verfügung steht. Die Knoten müssen drittens Laufzeitinformationen aus tauschen, was zwischen den Knoten irgendeine Form von Zeichengabe erforderlich macht. Als letztes werden zusätzlich zu den kürzesten Wegen nur diejenigen Wege in Betracht gezogen, die einen Abschnitt länger sind. Somit werden irgendwelche längeren, freien Wege nicht gewählt, selbst wenn sie den Verkehr erfolgreich hätten tragen können.
- Noch eine weitere Möglichkeit, wie man mit Überlast fertig werden kann, ist der Versuch, die Auswirkung ihrer Folgen zu verringern. Zum Beispiel besteht ein Weg, wie man Paketverluste aufgrund von Pufferüberlauf vermeiden kann, darin, die Größe der Verbindungsstreckenspeicher zu erhöhen. Dieser Ansatz hat einen ernsthaften Nachteil: falls die Speichergröße sehr groß gewählt wird, erfahren die Zellen hohe Wartezeiten, und die Gesamtleistung wird u.U. derart beeinflußt, daß möglicherweise die Wartezeit der Endsysteme abläuft und sie die Übertragung wiederholen. Wird auf der anderen Seite die Speichergröße so ausgelegt, daß die maximale Wartezeit innerhalb annehmbarer Grenzen gehalten wird, so werden aufgrund der Tatsache, daß bei Annäherung der Streckenauslastung an den Wert Eins die Speicherbelegung exponentiell anwächst, die Speicher angesichts der anhaltenden, konzentrierten Überlast auf der Leitung schließlich überlaufen und die resultierenden Zellenverluste die Endsysteme zur Wiederholung veranlassen. Die Erhöhung der Speichergröße ist somit keine sinnvolle Überlaststeuerungsstrategie.
- In "Comparative Evaluation of Path Routing Strategies for Mixed Voice and Data Communication Network" [Vergleichende Bewertung der Leitweglenkungsstrategien für ein gemischtes Sprach- und Datenkommunikationsnetz] von J. Kao, J. Wang und T. Kuo werden verschiedene Leitweglenkungsstrategien beschrieben und verglichen, einschließlich einer festen Einzelwegleitweglenkungsstrategie und einer adaptiven Hybridstrategie "kürzester Weg zuerst". Die verschiedenen Strategien führen zu verschiedenen Netzwerkdurchsätzen und Laufzeiten.
- Gemäß einem Aspekt der vorliegenden Erfindung wird ein Verfahren nach Anspruch 1 bereitgestellt.
- Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird eine Vorrichtung nach Anspruch 7 bereitgestellt.
- Bei einer Ausführungsform der Erfindung wird durch vorübergehende konzentrierte Überlast in verbindungslosen Netzen verursachte Blockierung durch Leiten eines Teils des für einen blockierten Erstweg bestimmten Verkehrs auf einen vorbestimmten Zweitweg abgebaut. Um Zweitwege derart auszubilden, daß sie garantiert schleifenfrei sind, wird ein expliziter Algorithmus verwendet. Kurz dargestellt geschieht dies so, daß einem gegebenen Knoten benachbarte Knoten derart in Schichten organisiert werden, daß Knoten, die von einem gegebenen Ziel (abschnittsmäßig) die gleiche Entfernung haben, in der gleichen Schicht liegen. Jedem möglichen Weg zwischen (a) dem gegebenen Knoten und jedem Nachbar in der gleichen Schicht und (b) jedem Nachbar und einem Knoten in einer (abschnittsmäßig) näheren Schicht, mit dem der benachbarte Knoten verbunden ist, wird dann ein Gewicht zugewiesen. Die paarweise Summe der Gewichte für jede Kombination aus Wegen wird dann berechnet, und der Weg mit der niedrigsten Summe wird dann als der Zweitweg bestimmt. Weiterhin wird dafür gesorgt, daß das Ausbreiten der Überlast auf Zweitwege durch Markieren von alternativ geleiteten Paketen vermieden wird, so daß sie im Fall, daß an Knoten weiter entlang des Zweitweges wieder Überlast angetroffen wird, eher fallengelassen werden. Durch entsprechende Wahl von Schwellwerten zur Einleitung eines Übergangs zu einem Zweitweg und zur Rückkehr zu einem Erstweg können Leitwegpendelungen vermieden werden. Die Bestimmungen der Leitwege und die Handlungen zur Netzregelung werden auf völlig verteilte Weise lediglich auf der Basis örtlicher Messungen vorgenommen, weshalb zwischen Netzknoten keine Signalisierungsmeldungen oder Leitwegdaten ausgetauscht werden müssen. Im Zusammenhang mit Datennetzen, wo der Verkehr sehr diskontinuierlich auftritt, kann die Erfindung mit dem größten Nutzen angewendet werden, denn wenn einige Wege belegt sind, ist es durchaus möglich, daß andere relativ frei sind. Dementsprechend wird aus der vorliegenden Erfindung der größte Nutzen gezogen, wenn Überlastungen auf verschiedenen Teilen des Netzes nicht zusammenfallen.
- Die vorliegende Erfindung wird unter Bezug auf die nachfolgende detaillierte Beschreibung besser verstanden, wenn sie unter Zuhilfenahme der beiliegenden Zeichnung gelesen wird, in der
- Figur 1 ein Diagramm ist, das die Zusammenschaltung eines beispielhaften Netzes mit sieben Knoten zeigt;
- Figuren 2-4 die von einem der Knoten im Netz von Figur 1 entwickelten "Ausschließungsbäume" zeigen;
- Figuren 5-7 den von einem der Knoten im Netz von Figur 1 empfangenen "Ausschließungsbaum" zeigen;
- Figuren 8-10 jeweils die "Ausschließungsbäume" der Figuren 5-7 zeigen, die so neugezeichnet wurden, daß jeder von einem Wurzelknoten absteigende nachfolgende Knoten auf der gleichen vertikalen Ebene liegt;
- Figur 11 das Ergebnis zeigt, wenn die "Ausschließungsbäume" von Figuren 8-10 zusammengeführt werden;
- Figur 12 das "Schichten" von Knoten in einem Netz bezüglich eines Zielknotens zeigt;
- Figur 13 Erst- und Zweitwege zwischen einigen der Knoten in Figur 12 zeigt;
- Figuren 14 und 15 zwischen einem Paar Knoten eine unerwünschte Einzelstreckenschleifenbildung zeigen;
- Figur 16 ein Beispiel der vorliegenden Umweglenkungstechnik zeigt, mit Anwendung auf ein Netz mit vier Knoten, bei dem drei Knoten in einer ersten Schicht liegen und der vierte Knoten in einer zweiten Schicht liegt;
- Figur 17 eine neugezeichnete Version von Figur 16 ist, bei der der vierte Knoten durch drei "gleichwertige" Knoten ersetzt ist;
- Figur 18 Erst- und Zweitwege zwischen einem ersten Knoten i und einem zweiten Knoten j zeigt;
- Figur 19 einen Zweitweg zwischen den drei Knoten in der ersten Schicht von Figur 17 zeigt, der zu unerwunschter Schleifenbildung führen würde;
- Figur 20 mehrere Knoten in einem Netz zeigt und die Anordnung derartiger Knoten in k Schichten;
- Figur 21 ein Flußdiagramm ist, das den Gesamtprozeß zum Erzeugen von Zweitwegen zeigt;
- Figuren 22 und 23 ein Flußdiagramm (in zwei Teilen) sind, das den Prozeß zur Ausführung des Schichtungsschrittes 2103 von Figur 21 zeigt;
- Figuren 24 und 25 ein Flußdiagramm (in zwei Teilen) sind, das den Prozeß des Erzeugens von Zweitwegen ausführlicher zeigt; und
- Figur 26 ein Flußdiagramm ist, das den Prozeß zeigt, wie Pakete, die auf nichtüberlasteten Leitwegen geleitet werden, eine höhere Priorität erhalten, und wie markierte Pakete, die wegen Überlast Zweitwege durchlaufen, für den Fall verworfen werden können, daß starker Verkehr angetroffen wird;
- Figur 27 eine typische Funktionsarchitektur für die Knoten in den Netzen von Figuren 1-20 ist;
- Figur 28 ein Funktionsdiagramm der Anordnung des Knotenprozessors 2730 von Figur 27 ist;
- Figur 29 ein bei den Simulationen der vorliegenden Erfindung verwendetes Netzmodell mit drei Knoten ist;
- Figur 30 ein dem Netz von Figur 29 entsprechendes Warteschlangenmodell ist;
- Figur 31 ein Graph ist, der die Blockierwahrscheinlichkeit mit und ohne Zweitweg in Abhängigkeit von der angebotenen Last zeigt; und
- Figur 32 eine Version des Graphen von Figur 31 mit verändertem Maßstab ist.
- Um das Umweglenkungsverfahren der vorliegenden Erfindung voll und ganz zu verstehen, ist es lehrreich, als erstes ein Verfahren zu betrachten, das angewandt werden kann, um den Erstweg von Meldungen zu bestimmen, die unter normalen Bedingungen (d.h. nicht überlastet) ein verbindungsloses Netz zwischen Knoten durchlaufen. Bei diesem Verfahren handelt es sich um die Leitweglenkung nach einem geteilten adaptiven Baum mit minimaler Spanne, manchmal auch als "Ausschließungsbaum"-Leitweglenkung bekannt, die in dem am 14. August 1984 an G. G. Riddle erteilten Patent Nr. 4 466 060 näher beschrieben wird. Weitere Leitweglenkungsverfahren werden in dem Buch von D. E. Comer "Internetworking With TCP/IP: Principles, Protocols and Architecture" [Netzüberschreitende Kommunikation mit TCP/IP: Grundlagen, Protokolle und Architekturen], Kapitel 15: Interior Gateway Protocols [Innere Kommunikationsprotokolle], Prentice Hall, 1988 beschrieben. Die Hauptaufgabe des Ausschließungsbaumverfahrens besteht darin, bei jedem Knoten des Netzes eine Tabelle der korrekten kürzesten Wege zu allen Zielen zu unterhalten. Aus diesem Zweck werden anfänglich Leitwegtabellen erstellt und immer dann aktualisiert, wenn das Netz topologische Veränderungen erfährt, wenn also zum Beispiel ein Knoten bzw. eine Verbindung hinzugefügt bzw. entfernt wird. Die Aktualisierungsprozeduren werden auf verteilte Weise bei jedem Knoten unabhängig realisiert.
- Die resultierenden Leitwegtabellen sind so ausgelegt, daß sie für alle Ziele Wege mit einer minimalen Anzahl von Abschnitten liefern, und zwar ohne Schleifenbildung.
- Im Zentrum des Ausschließungsbaumleitweglenkungsverfahrens sind zwei Hauptschritte: (1) Jeder Knoten sendet jedem seiner Nachbarn einen Ausschließungsbaum, und (2) bei jedem der Knoten wird eine vorgeschriebene Prozedur angewendet, um die empfangenen Ausschließungsbäume in eine Leitwegtabelle zu mischen. Diese zwei Schritte werden bei jedem Knoten solange wiederholt, bis die Leitwegtabellen konvergieren.
- Anhand des folgenden Beispiels kann das Ausschließungsbaumleitweglenkungsverfahren am besten beschrieben werden. Es wird das aus den in Figur 1 gezeigten sieben Knoten 1-7 bestehende Netz betrachtet. Jeder Knoten sendet jedem seiner Nachbarn einen Ausschließungsbaum. Ein Ausschließungsbaum ist der Baum der kürzesten Wege, den man nach Löschen aller mit dem Empfangsknoten verbundenen Verbindungen erhält. Figuren 2-4 zeigen die von Knoten 1 an seine Nachbarn, nämlich Knoten 6, 5 bzw. 2, geschickten Ausschließungsbäume. Figuren 5-7 zeigen die von Knoten 1 von seinen Nachbarn, Knoten 6, 4 bzw. 2, erhaltenen Ausschließungsbäume. Als erstes werden die empfangenen Ausschließungsbäume neu gezeichnet, wobei ihre Knoten von der Wurzel ausgehend herabsteigen, und wobei jeder nachfolgende Knoten eine vertikale Ebene gelegt wird, die abschnittsmäßig seiner Entfernung vom Knoten 1 entspricht wie in Figuren 8-10 gezeigt. Den in Figur 11 gezeigten kombinierten Baum für Knoten 1 erhält man durch Kombinieren der von Knoten 1 von seinen Nachbarn erhaltenen Ausschließungsbäume von Figuren 8-10, und zwar gemäß folgender Prozedur: die Knoten der empfangenen Ausschließungsbäume mit einer Entfernung von einem Abschnitt werden von links nach rechts aufgesucht (im Beispiel Knoten 6, dann Knoten 5, dann Knoten 2) und in den kombinierten Baum von Figur 11 gelegt). Als nächstes werden die Knoten mit einer Entfernung von zwei Abschnitten in der gleichen Reihenfolge (von links nach rechts) aufgesucht und an ihre Hauptknoten angehängt, sofern sie sich nicht schon unter einer geringeren Entfernung dort befinden. Diese Prozedur wird zur Erzeugung eines kombinierten Baumes nacheinander wiederholt. Falls der betrachtete Knoten in mehr als einem empfangenen Ausschließungsbaum abschnittsmäßig in gleicher Entfernung vorhanden ist, dann ist jeder Wurzelknoten in dem kombinierten Baum dargestellt, mit dem Ergebnis mehrfacher Einträge für Knoten mit mehreren Leitwegen gleicher Länge. Diese Situation trat in Figur 11 nicht auf. Immer dann, wenn mehrere Leitwege gleicher Länge existieren, wird der Verkehr zur Erzielung von Lastausgleich über alle derartigen Leitwege verteilt. Es sei hier angemerkt, daß auch andere Verfahren verwendet werden können, um das in der Abwesenheit von Überlast verwendete Netz von Erstwegen zu bestimmen.
- Während Überlastzeiten wird ein gewisser Anteil der normalerweise über Erstwege geleiteten Pakete stattdessen über sekundäre bzw. Zweitwege geleitet, die nur wenig belastet sind. Die Art und Weise, in der Zweitwege ausgewählt werden, wird besser verstanden, indem als erstes ein willkürliches Netz betrachtet wird, das in Figur 12 in Form einer geschichteten Architektur dargestellt ist. Die Schichtenbildung in Figur 12 erfolgt in Hinblick auf Zielknoten D, und zwar derart, daß die Knoten 1231-1233 in Schicht k (k ist eine ganze Zahl) zu D mindestens einen kürzesten Weg mit k Abschnitten aufweisen. Das bedeutet, daß jeder Knoten in Schicht k mindestens eine Verbindung aufweisen muß, die ihn mit einem Knoten in Schicht (k-1) verbindet. Ist ein Knoten in Schicht k mit mehr als einem Knoten (1221-1223) in Schicht (k-1) verbunden, so weist er zu D mehr als einen kürzesten Weg mit k Abschnitten auf. Hierbei handelt es sich genau um die mehreren kürzesten Wege, die von dem oben beschriebenen Ausschließungsbaumleitweglenkungsalgorithmus gebildet werden. Durch Ausnutzen der Verknüpfbarkeit zwischen Knoten 1231-1233 in Schicht k wird das vorliegende Verfahren dazu verwendet, schleifenfreie Zweitwege zu D zu erzeugen, die mindestens die Länge von (k+1) Abschnitten aufweisen. Dies kann auf zweierlei Weise geschehen. In beiden wird angenommen, daß nur die kürzesten Erstwege zugelassen sind.
- Bei dem ersten Verfahren kann unter der Voraussetzung, daß alle Knoten numeriert sind und die Knoten i und j (i und j sind ganze Zahlen) zur Schicht k gehören und i und j durch eine Verbindung verbunden sind, der Knoten i für das Ziel D bestimmte Pakete alternativ über Knoten j leiten, wenn i< j ist. Dieses Verfahren ist schleifenfrei, da die Erstwege in der Hierarchie die kürzesten Leitwege sind, wohingegen die sekundären (Zweit-)Leitwege im wesentlichen eine Hierarchie innerhalb der Schicht k erzeugen. So zeigt zum Beispiel Figur 13 in der Schicht k 4 mit 1301-1304 numerierte Knoten, die mit 4 mit 1311-1314 numerierten Knoten in Schicht (k-1) verbunden sind.
- In Figur 13 handelt es sich bei den mit Ziffer 1 markierten ausgewählten Leitwegen um Erstwege und bei den mit Ziffer 2 markierten ausgewählten Leitwegen um Zweitwege. Es ist klar, daß sich zwischen den Schichten keine Schleifen bilden können, da nach unten keine Leitwege vorhanden sind - ein Knoten in Schicht (k-1) kann nicht zu einem Knoten in Schicht k leiten. Innerhalb einer Schicht kann sich keine Schleife bilden, da Knoten 1304 zu keinem der anderen Knoten (mit niedrigerer Zahl) einen Zweitweg bilden kann. Das erste Verfahren ist einfach zu realisieren, weist jedoch den Nachteil auf, daß dem Knoten mit der höchsten Zahl (z.B. Knoten 1304) in jeder Schicht ein Zweitweg verweigert wird. Dieser Nachteil wird bei dem zweiten Verfahren überwunden, allerdings um den Preis zusätzlicher Komplexität.
- Bei dem zweiten Verfahren sind zwei zusätzliche Informationen erforderlich. Es sind dies:
- (i) die Fähigkeit, Einzelverbindungsstreckenschleifen der in Figur 14 gezeigten Form zu vermeiden, wobei Knoten i erkennen muß, daß Knoten j ihm ein Paket zugeleitet hat, und das Paket daran hindern muß, zum Knoten j zurückzukehren. Das ist notwendig, um Schleifenbildung zwischen Knoten i und j zu vermeiden, wenn i und j auf der Basis der zweiten Wahl einander zuleiten. Wie in Figur 15 gezeigt, d.h. wenn die primären Wege aus jedem der beiden Knoten i und j heraus (aufgrund von Überlast) nicht verfügbar sind, dürfen Pakete zwischen i und j keine Schleife durchlaufen, sondern müssen fallengelassen werden.
- (ii) Jedem Knoten i müssen hinsichtlich aller anderen Knoten j, mit denen er verbunden ist, Gewichte w(i,j) zugewiesen werden. Weiterhin müssen die Gewichte mit folgender Maßgabe ausgewählt werden:
- (a) sie müssen symmetrisch sein, d.h. w(i,j)=w(j,i) für alle i und j, und
- (b) w(i,j) + w(j,k) ist eindeutig, in dem Sinne, daß w(i,j) + w(j,k) = w(i,l) + w(l,m) => j=l und k=m ist.
- Diese Bedingung bedeutet, daß es für beliebige zwei Knoten, die durch mindestens einen Weg mit zwei Abschnitten verbunden werden, einen eindeutigen Weg mit zwei Abschnitten und kleinstem Gewicht gibt, der die beiden Knoten verbindet. Ein Weg, wie man der Bedingung (b) genügen kann, besteht darin, die Gewichte derart zu wählen, daß die paarweise Summe eindeutig ist, d.h. daß keine zwei Summen gleich sind. Wie weiter unten beschrieben wird, kann die Gewichtsinformation zusammen mit der Ausschließungsbaumleitweginformation zu jedem Knoten übertragen werden. Der Grund, weshalb die Zuweisung dieser Gewichte notwendig ist, wird ebenfalls weiter unten erklärt.
- Die Tatsache, daß das vorliegende Umweglenkungsverfahren schleifenfrei ist, kann unter den oben genannten Bedingungen wie folgt demonstriert werden:
- Es wird angenommen, die Knoten 1,2,...m seien in Schicht k und die Knoten 1',2',3',...m' seien in Schicht (k-1). Die Knoten in Schicht (k-1) können sich wiederholen und sind (aus Gründen der einfachen Notation) nicht unbedingt eindeutig. Angenommen, Knoten i in Schicht k ist mit Knoten i' in Schicht (k-1) verbunden. Die Allgemeingültigkeit erleidet dabei keine Einbuße, da dieser Vorgang m-mal wiederholt werden kann, selbst wenn Schicht (k-1) nur einen einzigen Knoten aufweist. So kann zum Beispiel Figur 16, die Verbindungsstrecken zwischen Knoten 1-3 von Schicht k und Knoten 4 von Schicht k-1 zeigt, als Figur 17 neu gezeichnet werden, in der Knoten 1 mit Knoten 1', Knoten 2 mit Knoten 2' und Knoten 3 mit Knoten 3' verbunden sind, solange Knoten 1', 2' und 3' jeweils 'gleich' Knoten 4 sind.
- Für alle Pakete zu einem bestimmten Ziel D (hinsichtlich dessen das Netz geschichtet worden ist) ist der Leitweg i T i' immer der vom Knoten i ausgehende Erstweg. Unter Beibehaltung dieser Notation kann das vorliegende schleifenfreie Umweglenkungsverfahren auf folgende Weise ausgedrückt werden:
- Leitweglenkungsregel: die Knoten i, j und l sollen zu Schicht k und die Knoten j' und l' zu Schicht k-1 gehören. Der Knoten i sucht dann einen Zweitweg zu Knoten j, aber nur, wenn Schicht
- In Figur 18, in der die Knoten i, j und j' gezeigt werden, ist Gleichung 1 schematisch dargestellt. Bei dieser Figur ist die Verbindungsstrecke zwischen den Knoten i und j durch Ziffer 2 markiert, was anzeigt, daß es sich hierbei um den sekundären Weg von Knoten i zu Knoten j in Schicht k handelt; die Verbindungsstrecke zwischen den Knoten j und j' ist mit Ziffer 1 markiert, was anzeigt, daß es sich hierbei um den primären Weg von Knoten j in Schicht k zu Knoten j' in Schicht k-1 handelt. Gemäß dem vorliegenden Verfahren ist w(i,j)+w(j,j') dann der eindeutige Weg mit 2 Abschnitten mit kleinstem Gewicht, um von Knoten i zu irgendeinem Knoten in Schicht (k-1) zu gelangen.
- Daß das vorliegende Verfahren die Eigenschaft der Schleifenfreiheit aufweist, kann dadurch demonstriert werden, daß als erstes der Fall betrachtet wird, daß m=3 ist, d.h. drei Knoten in Schicht k. Es sei angenommen, daß die Knoten in Schicht k voll verbunden sind. In Figur 17 wird das entsprechende Netz gezeigt. Die Verknüpfbarkeit zwischen den Knoten in Schicht (k-1) ist unwichtig und wird somit nicht gezeigt. Die einzige Möglichkeit der Schleifenbildung tritt auf, wenn jeder Knoten in Schicht k einen Zweitweg zu einem Knoten in Schicht k sucht, der bis dahin noch nicht als Zweitweg gedient hat. Zum Beispiel handelt es sich bei der in Figur 19 gezeigten Situation um eine Schleife, da Knoten 1 einen (mit "2" markierten) Zweitweg zu Knoten 2 sucht, Knoten 2 einen Zweitweg zu Knoten 3 sucht und Knoten 3 einen Zweitweg zurück zu Knoten 1 sucht. Unter Verwendung des vorliegenden Verfahrens kann keine derartige Schleife auftreten, da Knoten 3 einen Zweitweg zu Knoten 2 suchen muß, wenn Knoten 1 einen Zweitweg zu Knoten 2 sucht und Knoten 2 einen Zweitweg zu Knoten 3 sucht, so daß eine Schleife nicht auftreten kann. Die Tatsache, daß Knoten 1 einen Zweitweg zu Knoten 2 sucht, bedeutet nun, daß:
- w(1,2)+w(2,2')< w(1,3)+w(3,3') (2)
- Weiterhin bedeutet die Tatsache, daß Knoten 2 einen Zweitweg zu Knoten 3 sucht, daß
- w(2,3)+w(3,3')< w(2,1)+w(1,1') (3)
- Durch Addition der Ungleichungen (2) und (3) und unter Hinweis darauf, daß w(i,j)=w(j,i) ist, erhält man
- w(3,2)+w(2,2')< w(3,1)+w(1,1') (4)
- was bedeutet, daß Knoten 3 einen Zweitweg zu Knoten 2 sucht.
- Somit kann eine Schleife aus drei Verbindungsstrecken nicht auftreten. Allerdings kann eine Einzelverbindungsstreckenschleife auftreten, weshalb die Knoten die Fähigkeit haben müssen, eine Einzelverbindungsstreckenschleife zu erkennen und zu verhindern. Diese Fähigkeit kann bei jedem Knoten ganz einfach dadurch realisiert werden, daß Meldungen oder Pakete daran gehindert werden, den Knoten auf der gleichen Verbindungsstrecke zu verlassen, auf der sie angekommen sind. Dies wird weiter unten im einzelnen erörtert.
- Es sei darauf hingewiesen, daß für den Fall, daß die tatsächliche Entfernung d(i,j) zwischen den Knoten i und j als Gewichte w(i,j) ausgewählt wird, die vorliegende Erfindung zur Umweglenkung mit den kürzesten Entfernungen führt, was bei einem geographisch ausgedehnten Netz sehr wichtig sein könnte. Während aber einerseits zwar die Symmetrieeigenschaft, d.h. d(i,j)=d(j,i), gewahrt ist, ist andererseits die Eigenschaft der Eindeutigkeit nicht gewährleistet. Um Eindeutigkeit sicherzustellen, müssen die Abstände zwischen den Knoten möglicherweise infinitesimal gestört werden, so daß für den Fall
- d(i,j)+d(j,j')=d(i,k)+d(k,k'), (5)
- d(i,j) zu d(i,j)+ ε abgeändert wird, wobei ε eine beliebige kleine Zahl ist. Es sei allerdings darauf hingewiesen, daß aufgrund der Tatsache, daß es sich bei d(i,j) um reale Zahlen handelt, die Bedingung der Eindeutigkeit praktisch gesprochen allgemein erfüllt wird. Die Abstandsinformation kann jedem Knoten leicht geliefert werden, wenn der Leitweg verteiltem kürzesten Weg bestimmt wird, indem V,H-Koordinaten bereitgestellt werden. Wenn ViHi und VjHj Koordinaten für die beiden verbundenen Knoten i und j sind, ergibt sich der Abstand d(i,j) durch
- Andere komplett verteilte Verfahren können verwendet werden, um zwischen den bei der Zweitweglenkung verwendeten Knoten i, j und j' und den den Verbindungsstrecken zwischen den Knoten zugeordneten Gewichten w(i,j), w(j,j') eine Abbildung zu finden. So kann zum Beispiel, wenn jeder Knoten i, j, j' eine eindeutige ganze Zahl aufweist, w(i,j) willkürlich als (iq+jq) definiert und w(j,j') gleichermaßen als (jq+j'q) definiert werden, wobei es sich bei q um eine geeignet ausgewählte ganze Zahl handelt. Es können auch andere Abbildungen (i,j) T w(i,j), derart, daß w(i,j) = w(j,i) und w(i,j)+w(j,j')=w(i,2)+w(l,l')=> j=l, gefunden werden. Allerdings können auch die Gewichtszuweisungen zentral verwaltet und die entsprechenden Gewichte im Fall einer topographischen Veränderung im Netz periodisch zu jedem Knoten heruntergeladen werden, ohne die Leistung des Netzes wesentlich zu mindern.
- Die obige Diskussion macht deutlich, daß es sich bei der topologischen Information, die zum Bilden eines schleifenfreien Zweitweges gemäß der vorliegenden Erfindung benötigt wird, um die Schichtung des Netzes in bezug auf jeden Zielknoten handelt. Diese Information kann leicht aus der in jedem Knoten schon vorliegenden Ausschließungsbauminformation erhalten werden. Man betrachte dazu die in Figur 20 gezeigte Schichtenbildung in bezug auf den Zielknoten D. Angenommen, Knoten S in Schicht k ist der Knoten, an dem die Leitwegtabelle gebildet wird. Der Knoten S sei mit den Knoten S&sub1;,...Sk in Schicht k verbunden. Der Knoten S weiß nun durch seine eigene (unter Verwendung der Ausschließungsbaumleitweglenkung gebildete) Erstwegtabelle, daß er sich in bezug auf D in Schicht k befindet. Durch die von S&sub1;,...Sk erhaltenen Ausschließungsbäume weiß er auch, daß sie sich in bezug auf D ebenfalls in Schicht k befinden. In Schicht k können weitere Knoten vorliegen, die S nicht kennt. Dies spielt jedoch keine Rolle, da S mit diesen Knoten nicht verbunden ist und somit zu keinem von ihnen einen Zweitweg führen kann. Der Schlüssel liegt darin, daß die Ausschließungsbauminformation für einen Knoten ausreicht, um zu bestimmen, welcher seiner Nachbarn sich in bezug auf irgendeinen gegebenen Zielknoten in der gleichen Schicht wie er selbst befindet. (Dies ist der Unterschied zu einem zentralisierten Algorithmus, bei dem alle Knoten über ein globales Wissen über die Netztopologie verfügen und jeder Knoten somit alle anderen Knoten in seiner Schicht kennt. Dies ist mehr Information, als benötigt wird, da ein Knoten lediglich die anderen Knoten in der Schicht zu kennen braucht, mit denen er verbunden ist.)
- Der Gesamtprozeß, mit Hilfe dessen jeder Knoten seine Sekundärwegtabelle bestimmt, wird im Flußdiagramm von Figur 21 gezeigt. Zu Anfang wird im Schritt 2101 aus der in dem Knoten schon vorliegenden Ausschließungsbaumleitweglenkungsinformation die Netztopologieinformation bestimmt, d.h. die Identität der dem gegenwärtigen Knoten benachbarten Knoten. Wird ein anderes Verfahren zur Erzeugung des Erstweges verwendet, so wird dennoch angenommen, daß diese Topologieinformation zur Verfügung steht. Auf gleiche Weise werden in Schritt 2102, wie oben beschrieben, die den Wegen zwischen dem gegenwärtigen Knoten und seinen Nachbarn zugeordneten Gewichte wi,j aus den V, H-Koordinaten berechnet, wenn der Zwischenknotenabstand als Gewichtungskriterium verwendet wird. Anderenfalls werden die entsprechenden Gewichte im Knoten gespeichert.
- Als nächstes wird in Schritt 2103 für ein Ziel D das Netz der Knoten unter Verwendung des in Figuren 22 und 23 ausführlicher beschriebenen Verfahrens in Schichten organisiert. Wie oben schon erwähnt, enthält jede Schicht alle Knoten, die von dem Ziel abschnittsmäßig den gleichen Abstand haben, unter Verwendung des kürzesten verfügbaren Wegs.
- Im Schritt 2104 wird unter Verwendung des in Figuren 24-25 ausführlicher beschriebenen Verfahrens ein Zweitweg zum Ziel D erzeugt. Dieses Verfahren ist verteilt, d.h. es wird in jedem Knoten unabhängig ausgeführt.
- Nachdem für ein gegebenes Ziel der Zweitweg bestimmt worden ist, wird in Schritt 2105 entschieden, ob alle Ziele verarbeitet worden sind. Falls nicht, werden Schritte 2103 und 2104 für die anderen Ziele wiederholt. Wenn die Leitwege für alle Ziele bestimmt worden sind, hält das Verfahren in Schritt 2106 an.
- Der Schichtenerzeugungs- bzw. Organisationsschritt 2103 von Figur 21 wird in Figuren 22 und 23 ausführlicher gezeigt. Zu Anfang wird in Schritt 2201 die Identität von jedem der Nachbarn des gegenwärtigen Knotens i in einem Speicher oder in einer anderen geeigneten Speichervorrichtung gespeichert. Diese Information würde an jedem Knoten verfügbar sein, falls das Ausschließungsbaumleitwegverfahren verwendet wird. In Schritt 2202 wird der abschnittsinäßig kürzeste Abstand (k) zwischen i und dem Zielknoten D berechnet. Diese Information liegt als Ergebnis des Ausschließungsbaumlei twegverfahrens ebenfalls vor. Es sei jedoch darauf hingewiesen, daß zur Auswahl des Erstweges ein beliebiger anderer Algorithmus des verteilten kürzesten Weges verwendet werden kann, und daß man durch einen beliebigen derartigen Algorithmus die abschnittsmäßig kürzeste Entfernung erhalten würde. In Schritt 2203 wird dann für jeden Nachbarn j von i eine ähnliche Prozedur wiederholt, um die abschnittsmäßige Entfernung in zwischen j und D zu bestimmen. Wenn die beiden Ergebnisse der Schritte 2202 und 2203 vorliegen, wird in Schritten 2204 und 2214 ein Vergleich zwischen in und k gezogen. Wenn sich in Schritt 2204 herausstellt, daß in und k gleich sind, so wird daraus der Schluß gezogen, daß j und i in der gleichen Schicht k liegen (Schritt 2205), und diese Information wird gespeichert (Schritt 2206). Falls sich in Schritt 2214 herausstellt, daß m = k-1 ist, so wird daraus der Schluß gezogen, daß j in Schicht k-1 liegt (Schritt 2215), und diese Information wird gespeichert (Schritt 2216). Falls das Ergebnis der Schritte 2204 und 2214 anzeigt, daß in nicht gleich k oder k-1 ist, so wird daraus der Schluß gezogen, daß j in einer entfernteren Schicht k+1 von D liegt (Schritt 2225). Diese Information wird deshalb nicht benötigt und in Schritt 2226 verworfen.
- Der Schichtenbildungsprozeß wird in Figur 23, die eine Fortführung von Figur 22 ist, weiter beschrieben. Nachdem ein bestimmter Nachbar j des gegenwärtigen Knotens i untersucht worden ist, um zu bestimmen, ob er in der gleichen Schicht k liegt, in einer näheren Schicht k-1 oder in einer entfernteren Schicht k+1, wird in Schritt 2230 bestimmt, ob alle Nachbarn j des Knotens i untersucht worden sind. Falls nicht, wird der bei Schritt 2203 beginnende Teil des Verfahrens wiederholt. Nachdem alle Nachbarn von Knoten i untersucht worden sind, wird in Schritt 2240 bestimmt, ob alle Ziele D untersucht worden sind. Falls nicht, wird der bei Schritt 2202 beginnende gesamte Schichtenerzeugungsprozeß für das nächste Ziel wiederholt. Wenn alle Ziele untersucht worden sind, wird der Schichtenbildungsprozeß im Schritt 2250 angehalten.
- Das Zweitwegerzeugungsverfahren von Schritt 2104 von Figur 21 wird in Figuren 24 und 25 ausführlicher beschrieben. Zunächst werden für jedes Ziel D alle Nachbarn des Knotens i, die sich (in bezug auf Ziel D) in der gleichen Schicht k befinden wie i, in Schritt 2401 gespeichert. Dieser Schritt verwendet somit die Schichtenbildungsinformation, die zuvor durch die in Zusammenhang mit Figuren 22 und 23 beschriebene Prozedur erhalten wurde. Auf gleiche Weise werden in Schritt 2402 auch alle Nachbarn des Knotens i in Schicht k-1 (in bezug auf Ziel D) gespeichert. Nachdem die Information bezüglich der benachbarten Knoten gespeichert worden ist, wird im Schritt 2403 das der Verbindungsstrecke zwischen den Knoten i und j innerhalb von Schicht k zugeordnete Gewicht w(i,j) bestimmt. Ähnlich dazu wird im Schritt 2404 für jeden Nachbarn j' des Knotens j in Schicht k-1 das der Verbindungsstrecke zwischen Knoten j in Schicht k und Knoten j' in Schicht k-1 zugeordnete Gewicht w(j,j') bestimmt. Als nächstes wird im Schritt 2405 die Summe der Gewichte w(i,j) und w(j,j') berechnet und gespeichert. An dieser Stelle wird in Schritt 2406 bestimmt, ob alle Nachbarn j' des Knotens j untersucht worden sind. Falls nicht, werden Schritte 2404 und 2405 für den nächsten Nachbarn j' wiederholt. Nachdem alle Nachbarn j' untersucht worden sind, wird (nun unter Bezug auf Figur 25) in Schritt 2407 bestimmt, ob alle Nachbarn j des Knotens i untersucht worden sind. Falls nicht, wird der mit Schritt 2403 beginnende Berechnungsprozeß wiederholt. Nachdem alle Nachbarn j des Knotens i untersucht worden sind, werden in Schritt 2408 die gespeicherten kombinierten Gewichte verarbeitet, um die Knoten j und j' derart auszuwählen, daß w(i,j) + w(j,j') ein Minimum ist.
- Dieser Minimalwert bestimmt den speziellen Knoten j, der den Zweitweg für den vom Knoten i ausgehenden und für Knoten D bestimmten Verkehr darstellt.
- Nachdem der Zweitweg für ein spezielles Ziel D berechnet worden ist, wird im Schritt 2409 bestimmt, ob alle Ziele D verarbeitet worden sind. Falls nicht, wird der bei Schritt 2401 beginnende Zweitwegerzeugungsprozeß wiederholt, so daß eine Tabelle von Zweitwegen, eine für das Endziel, gebildet werden kann. Wenn alle Ziele D verarbeitet worden sind, wird der Prozeß in Schritt 2410 angehalten.
- Um die Ausbreitung der durch die Umweglenkung verursachten Überlast zu vermeiden, ist ein weiteres Merkmal der vorliegenden Erfindung die Markierung eines Bits im Kopf aller Pakete, die auf den Zweitweg geleitet werden. An allen Knoten auf dem Zweitweg erhalten markierte Pakete eine niedrigere Verlustpriorität. Das bedeutet, daß, falls die Speicherbelegung an diesen Knoten unterhalb einer vorgegebenen Schwelle liegt, das markierte Paket angenommen, ansonsten aber verworfen wird. Ist der Zweitweg ebenfalls belegt, so wird der über den Zweitweg geführte Verkehr fallengelassen und die Ausbreitung der Überlast wird vermieden. Dieser Prozeß wird in Figur 26 dargestellt.
- Für jede von einem Knoten ausgehende Verbindungsstrecke wird in Schritt 2601 die Belegung "x" des dieser Verbindungsstrecke zugeordneten Speichers periodisch gemessen. Falls in Schritt 2602 festgestellt wird, daß x unterhalb eines Schwellwertes Talt liegt, ist der Verkehr auf dieser Verbindungsstrecke nicht überlastet, so daß im Schritt 2603 die Tabelle der nichtüberlasteten Leitwege ausgewählt wird. Falls x außerdem unter einem Schwellwert Taccp liegt, werden sowohl markierte als auch unmarkierte Pakete für die Übertragung über diese Verbindungsstrecke angenommen. Falls jedoch x größer oder gleich Taccp ist, ist der Verkehr auf der Verbindungsstrecke relativ stark (aber noch nicht überlastet). Unter diesen Umständen werden in Schritt 2607 nur nichtmarkierte Pakete für die Übertragung über diese Verbindungsstrecke angenommen.
- Falls in Schritt 2602 festgestellt wird, daß die Speicherbelegung x größer oder gleich Tait ist, wird im Schritt 2604 der Zweitweg ausgewählt. In diesem Fall wird jedoch lediglich ein im voraus ausgewählter Anteil der Pakete tatsächlich von dem Erstweg weg und auf die alternative Verbindungsstrecke geleitet. Als nächstes wird im Schritt 2620 eine Prüfung durchgeführt, um zu bestimmen, ob die von der Zweitweglenkung ausgewählte abgehende Strecke mit dem gleichen Knoten verbunden ist, wie der Knoten, von dem das Paket empfangen wurde. Diese Prüfung wird ausgeführt, um Einzelverbindungsstreckenschleifen zu vermeiden, und sie basiert auf Informationen, die sich auf die ankommenden und abgehenden Verbindungsstrecken beziehen und im Knoten ohne weiteres zur Verfügung stehen. Fällt das Prüfungsergebnis positiv aus, so daß eine Einzelverbindungsstreckenschleife entstehen würde, wird das Paket in Schritt 2621 stattdessen fallengelassen oder verworfen. Anderenfalls wird in Schritt 2608 bestimmt, ob die alternative Leitung zum Leiten des Pakets zum nächsten Knoten verwendet wurde. Falls ja, wird in Schritt 2609 dieses Paket markiert, so daß der Status dieses Paketes als auf einem Zweitweg geführt in nachfolgenden Knoten erkannt wird. Andererseits wird das Paket nicht markiert, (Schritt 2610), wenn keine Zweitweglenkung verwendet wird.
- Es hat sich herausgestellt, daß es vorteilhaft ist, die Verbindungsstreckenspeicherbelegung als Maß für die Verbindungsstreckenüberlastung zu verwenden, um zu bestimmen, wann die Zweitweglenkung eingesetzt werden sollte. Die Aktivierung und Deaktivierung der Zweitweglenkung, wie auch die Entscheidung über die Annahme oder Abweisung einer über einen Zweitweg geführten Zelle, würde dann auf der Basis der gemessenen Verbindungsstreckenspeicherbelegung erfolgen. Zu diesem Zweck können, je nach der Bequemlichkeit der Realisierung, verschiedene spezielle Speicherüberwachungstechniken verwendet werden. So zum Beispiel fluktuiert die Verbindungsstreckenspeicherbelegung mit großer Geschwindigkeit und kann deshalb jede Millisekunde gemessen werden. Ein laufender Mittelwert der 1000 jüngsten Messungen kann dann zur Überwachung der Überlast verwendet werden. Wenn die durchschnittliche Speicherbelegung eine vorbestimmte Überlastschwelle übersteigt, wird ein Teil des Verkehrs über einen Zweitweg geführt, und diese Pakete werden durch Setzen eines Verlustprioritätsbits im Kopf markiert.
- Figur 27 zeigt in vereinfachter Form die Funktionsarchitektur für einen typischen Knoten 2701. Wie in dieser Figur gezeigt, verbindet Knoten 2701 eine Reihe von ankommenden Verbindungsstrecken 2710-2712 mit einer Reihe von abgehenden Verbindungsstrecken 2720-2722. Bei den Verbindungsstrecken 2710-2712 und den Verbindungsstrecken 2720-2722 kann es sich bei einer beliebigen Realisierung jeweils auch um eine oder mehrere Hochgeschwindigkeitdatenleitungen handeln. Die Eingangsspeicher 2715-2717 empfangen jeweils auf den Verbindungsstrecken 2710-2712 angelegte Pakete und legen die Pakete an einen unten zu beschreibenden Knotenprozessor 2730 an. Auf gleiche Weise empfangen die Ausgangsspeicher 2725-2727 vom Knotenprozessor 2730 ausgegebene und jeweils für die Verbindungsstrecken 2720-2722 bestimmte Pakete. Die Belegung bzw. der Füllgrad der Ausgangsspeicher 2725-2727 wird in einem Überlastmonitor 2740, der Teil des Knotenprozessors 2730 ist, überwacht, um zu bestimmen, wann eine oder mehrere der Verbindungsstrecken 2720-2722 überlastet sind. Das Ausgangssignal des Überlastmonitors 2740 steuert den Knotenprozessor 2730 derart, daß bei Abwesenheit von Überlast aus der Tabelle 2750 ein Erstweg zu einem Ziel ausgewählt wird und bei Vorliegen von Überlast aus der Tabelle 2760 ein Zweitweg zu einem Ziel ausgewählt wird. Der Knotenprozessor 2730 enthält auch einen Einzelverbindungsstrecken schleifen-Vermeidungsprozessor 2770, der aktiviert wird, wenn die Überlastleitweglenkung verwendet wird. Die Aufgabe dieses Prozessors besteht darin, sicherzustellen, daß ein bei einem benachbarten Knoten eingeleitetes Paket nicht zu diesem Knoten zurückgeschickt wird und so die Bildung einer Einzelverbindungsstreckenschleife vermieden wird. Dies kann bewerkstelligt werden, indem die Eingangsverbindungsstrecke, über die ein Paket empfangen wird, notiert wird und das Paket fallengelassen wird (d.h. nicht übertragen wird), wenn der von der Tabelle 2760 der überlasteten Wege spezifizierte überlastete Weg über eine Verbindungsstrecke zum gleichen Knoten zurückführt.
- Eine vollständigere Funktionsbeschreibung der Anordnung des Knotenprozessors 2730 ist in Figur 28 enthalten. Der Knotenprozessor 2730 enthält eine Zentraleinheit (CPU) 2810 und einen Speicher 2850 mit mehreren Bereichen. Im Bereich 2802 des Speichers 2850 wird für jeden Zielknoten die Netzschichtenbildungsinformation gespeichert, die sich aus dem in Figuren 22 und 23 gezeigten Prozeß ergibt, während in einem anderen Bereich 2801 des gleichen Speichers 2850 die Netztopologieinformation gespeichert wird. Im gleichen Bereich des Speichers 2850 werden auch verschiedenen Knotenpaaren entsprechende Gewichte gespeichert.
- Immer wenn es eine Veränderung bei der Netztopologie gibt, wird für jeden Zielknoten die Schichtenbildung für das neue Netz berechnet und im Bereich 2802 gespeichert. CPU 2810 verwendet dann diese Netzschichtenbildungsinformation und die Gewichtsinformation, um Erstund Zweitwege zu berechnen, die in Bereichen 2820 und 2830 des Speichers 2850 gespeichert werden. Der Fachmann wird erkennen, daß verschiedene Realisierungen für CPU 2810 und Speicher 2850 ohne weiteres verfügbar sind.
- Die Vorzüge, die das vorliegende Umweglenkungsverfahren bietet, können unter Verwendung eines einfachen 3-Knoten-Modells von Figur 29 veranschaulicht werden, das die Berechnung einer durchgehenden Blockierung mit und ohne Zweitweglenkung für verschiedene angebotene Lasten ermöglicht. Auf Basis dieser Analyse wurde festgestellt, daß Umweglenkung eine durchgehende Blockierung deutlich verbessert.
- In Figur 29 hat Knoten 2901 zwei Verkehrsströme, wobei der eine für Knoten 2902 und der andere für Knoten 2903 bestimmt ist. Der für Knoten 2902 bestimmte Verkehr hat eine mittlere Einfallsintensität von λ&sub1;&sub2;, und der für Knoten 2903 bestimmte Verkehr hat eine mittlere Einfallsintensität von λ&sub1;&sub3;. Der Knoten 2902 hat einen für Knoten 2903 bestimmten einzigen Verkehrsstrom mit einer mittleren Einfallsintensität λ&sub2;&sub3;. Angenommen, n&sub1;&sub2;, n&sub1;&sub3;, n&sub2;&sub3; sind Speicher, in denen Zellen aus den λ&sub1;&sub2;, λ&sub1;&sub3; und λ&sub2;&sub3; entsprechenden Verkehrsströmen auf die Abarbeitung warten. Alle Warteschlangen arbeiten nach dem Durchlaufprinzip (FIFO, first-in, first-out). Es wird angenommen, daß auf alle Eingänge die Poisson'sche Regel zutrifft, und alle Abfertigungszeiten verhalten sich exponentiell. Es wird angenommen, daß der Empfangsspeicher nicht überläuft, weshalb die Empfangsspeicher nicht ausgeführt sind.
- Unter Verwendung dieses Modells wird die Auswirkung der Zweitweglenkung auf den λ&sub1;&sub3;-Verkehr untersucht,
- indem ein Bruchteil des λ&sub1;&sub3;-Verkehrs einer Zweitweglenkung unterzogen wird, so daß für den Fall, daß die Belegung in Speicher n&sub1;&sub3; eine bestimmte vorgegebene, als Rückweisungsschwelle bezeichnete Schwelle übersteigt, der auf einem Zweitweg führbare Anteil von λ&sub1;&sub3; dem Speicher n&sub1;&sub2; zur Übertragung durch Knoten 2 angeboten wird. Speicher n&sub1;&sub2; nimmt den auf einem Zweitweg geführten Verkehr nur dann an, wenn seine Belegung unterhalb einer als Annahmeschwelle bezeichneten vorgegebenen Schwelle liegt; wenn dies nicht der Fall ist, wird der Verkehr zurückgewiesen und geht verloren. Sobald der auf einem Zweitweg geführte Verkehr Knoten 2902 erreicht, wird er von Speicher n&sub2;&sub3; nur dann angenommen, wenn seine Belegung unterhalb der Annahmeschwelle liegt. Es ist wichtig, darauf hinzuweisen, daß die Verkehrsströme von Knoten 2901 nach 2902 und von Knoten 2902 nach 2903 keiner Zweitweglenkung unterworfen werden. Der Grund dafür ist, daß die Auswirkung der Zweitweglenkung auf die durchgehende Blockierung des Verkehrs von Knoten 2901 nach 2903 studiert werden soll, wenn λ&sub1;&sub3; erhöht, λ&sub1;&sub2; und λ&sub2;&sub3; aber konstant gehalten werden. Das dem Netz in Figur 29 entsprechende Warteschlangenmodell wird in Figur 30 gezeigt.
- In Figur 30 bezeichnet λ13d die direkt geleitete Komponente von λ13' und λ13a bezeichnet den über einen Zweitweg führbaren Teil von λ&sub1;&sub3;. Die Gesamteinfallsintensität für den Verkehr von Knoten 2901 nach 2903 beträgt λ&sub1;&sub3; = λ13d + λ13a. Unter Verwendung eines Erneuerungsprozeßmodells wurden die genauen Ausdrücke für die durchgehende Blockierung, die die drei Verkehrsklassen erlitten, abgeleitet. In der Analyse wurde für n&sub1;&sub2;, n&sub1;&sub3; und n&sub2;&sub3; eine Speichergröße von 100 angenommen, da diese bei einer angebotenen Last von 0,9 eine Zellenblockierungswahrscheinlichkeit von ungefähr 10&supmin;&sup6; ergibt. Als Rückweisungsschwelle wurde 70 gewählt und als Annahmeschwelle 50. Das bedeutet, daß immer dann, wenn die Belegung des Speichers n&sub1;&sub3; 70 übersteigt, die Zellen des λ13a-Stroms auf einem Zweitweg zu Speicher n&sub1;&sub2; geführt werden. Der Speicher n&sub1;&sub2; nimmt die über den Zweitweg geführten λ13a-Zellen nur dann an, wenn seine Belegung unterhalb 50 liegt. Auf gleiche Weise werden die über einen Zweitweg geführten λ13a-Zellen nur dann vom Speicher n&sub2;&sub3; zur Übertragung zu Knoten 2903 angenommen, wenn die Belegung bei Speicher n&sub2;&sub3; unter 50 liegt. Alle Zellen, die nicht angenommen werden, gehen verloren. Bei diesem einfachen Modell wurde die Wiederholungssendung von Meldungen nicht berücksichtigt. Die wegen λ&sub1;&sub2; und λ&sub1;&sub3; angebotene Last wurde konstant bei 0,8 gehalten, und die wegen λ&sub1;&sub3; angebotene Last wurde zwischen 0,5 und 2, verändert. 25% des Verkehrs von 1 nach 3 wurden einer Zweitweglenkung unterzogen. Figur 31 zeigt die durchgehende Blockierung des Verkehrs vom Knoten 2901 zum Knoten 2903 bei diesen verschiedenen Belastungen, mit und ohne Umweglenkung. Kurve 3101 zeigt die Blockierungswahrscheinlichkeit ohne Emweglenkung, und Kurve 3102 zeigt die Blockierungswahrscheinlichkeit mit Umweglenkung. Aus Figur 31 ist ersichtlich, daß die durchgehende Blockierung durch Verwendung der Umweglenkung eine wesentliche Abschwächung erfährt. Figur 31 zeigt nicht den steilen Anstieg bei der Blockierung, der normalerweise bei anderen Umweglenkungsverfahren auftritt, die nicht die Pakete markieren, um die Ausbreitung der Überlastung zu vermeiden, wie dies von der vorliegenden Erfindung vorteilhafterweise vorgesehen ist. Figur 32 ist eine Version von Figur 31 mit verändertem Maßstab und zeigt die durchgehende Blockierung, die der Verkehr von Knoten 2901 nach 2903 erfährt, wenn die angebotene Last von 0,8 bis 1,2 reicht. Wiederum stellt Kurve 3201 die Blockierungswahrscheinlichkeit ohne Umweglenkung und die Kurve 3202 die Blockierungswahrscheinlichkeit mit Umweglenkung dar. Figur 32 zeigt deutlich die dramatische Abschwächung der durchgehenden Blockierung für den Verkehr von Knoten 2901 nach 2903 über einen praktisch interessierenden Bereich angebotener Last. Da der direkt geleitete Verkehr Priorität erhält (über einen Zweitweg geführter Verkehr wird nur dann angenommen, wenn die Speicherbelegung unterhalb 50 liegt), erfährt der Verkehr von Knoten 2901 nach 2902 und von Knoten 2902 nach 2903 keine wesentliche Leistungsverschlechterung, selbst wenn die wegen des Verkehrs von Knoten 2901 nach 2903 angebotene Last 2, beträgt. Die durchgehende Blockierung für den Verkehr von Knoten 2901 nach 2902 und Knoten 2902 nach 2903 bleibt praktisch bei null.
- Zusammenfassend weist das Überlastregelungsverfahren die folgenden Eigenschaften auf:
- (a) es garantiert Schleifenfreiheit;
- (b) reagiert auf Messungen und verändert die Wege dynamisch;
- (c) erfordert nur lokale Messungen;
- (d) breitet Überlast nicht aus; und
- (e) trägt Verkehr über wenig belastete Verbindungsstrecken.
- Die Erfindung ermöglicht es tatsächlich einem verbindungslosen Netz, effizient soviel Verkehr wie möglich zu tragen, da der Paketverlust, der gewöhnlicherweise von Speicherüberlauf resultiert, reduziert und das Problem der Wiederholungssendung gemildert wird. Zwischen Netzknoten brauchen keine zusätzlichen Signalisiermeldungen ausgetauscht zu werden.
- Verschiedene Modifikationen und Abänderungen der vorliegenden Erfindung sind für den Durchschnittsfachmann offensichtlich.
Claims (12)
1. Verfahren zur Regelung von Überlast in dem Wege
in einem Netz von zusammengeschalteten Knoten
durchlaufenden Fluß von Nachrichtenpaketen, mit folgenden
Schritten:
Leiten von Paketen von jedem Knoten zu Zielknoten
über erste Leitwege in mehreren Abschnitten;
Überwachung von Überlast in besagten Knoten im
besagten Netz; und
Leiten von Paketen von jeweiligen der besagten
Knoten zu besagten Zielen über zweite Leitwege in
mehreren Abschnitten, sollte Überlast im besagten Netz
auftreten; dadurch gekennzeichnet, daß die besagten zweiten
Leitwege durch folgendes bestimmt werden:
Gruppieren der besagten zusammengeschalteten
Knoten in eine Mehrzahl von Schichten, wobei jede Schicht
Knoten enthält, die im gleichen Abstand in Abschnitten
von einem bestimmten Ziel liegen;
Zuweisen eines Gewichtungsfaktors zu jedem Weg
zwischen zusammengeschalteten Knoten in besagten
Schichten;
Zuweisen eines Gewichtungsfaktors zu jedem Weg
zwischen zusammengeschalteten Knoten in benachbarten
Schichten; und
Auswählen der besagten zweiten Leitwege als
Funktion von Kombinationen der besagten
Gewichtungsfaktoren.
2. Verfahren nach Anspruch 1, wobei der besagte
Erstweg k Abschnitte enthält und der besagte Zweitweg
mindestens k+1 Abschnitte enthält.
3. Verfahren nach Anspruch 1, wobei der besagte
Auswählschritt das Bilden der paarweisen Summe von
während jedem der beiden besagten Zuweisungsschritte
zugewiesenen Gewichtungsfaktoren umfaßt.
4. Verfahren nach Anspruch 1, wobei der besagte
Zuweisungsschritt das Bilden des besagten
Gewichtungsfaktors als Funktion des Abstandes zwischen über die
besagten Wege verbundenen Knoten umfaßt.
5. Verfahren nach Anspruch 1, wobei der besagte
Zweitweg nur für einen Teil der für einen überlasteten
ersten Leitweg bestimmten Pakete benutzt wird.
6. Verfahren nach Anspruch 5, mit folgenden
Schritten:
Markieren jedes über einen zweiten Leitweg
übertragenen Pakets;
Untersuchen jedes Pakete an jedem Knoten vor
seiner Leitweglenkung, um zu bestimmen, ob es markiert
worden ist; und
Leiten von markierten Paketen nur dann, wenn der
besagte Knoten nicht überlastet ist.
7. Vorrichtung (2730) zur Regelung von Überlast in
dem Wege in einem Netz von zusammengeschalteten Knoten
durchlaufenden Fluß von Nachrichtenpaketen, mit
folgenden:
a) einem Mittel (2740) zum Überwachen von
Überlast auf ersten und zweiten Leitwegen in besagten Netzen;
und
b) Mitteln (2750,2760) zum Leiten von Paketen von
jedem Knoten zu Zielknoten über erste Leitwege in
mehreren Abschnitten in der Abwesenheit einer Überlast und
zum Leiten von Paketen von jeweiligen der besagten Knoten
zu besagten Zielen über zweite Leitwege in mehreren
Abschnitten, sollte Überlast auf besagten ersten
Leitwegen auftreten;
dadurch gekennzeichnet, daß die besagten
Leitweglenkungsmittel ein Mittel (2760) für folgendes
umfaßt
(a) Gruppieren der besagten zusammengeschalteten
Knoten in eine Mehrzahl von Schichten, wobei jede
Schicht Knoten enthält, die im gleichen Abstand
in Abschnitten von einem bestimmten Ziel liegen;
(b) Zuweisen eines Gewichtungsfaktors zu jedem
Weg zwischen zusammengeschalteten Knoten in
besagten Schichten und Zuweisen eines
Gewichtungsfaktors zu jedem Weg zwischen
zusammengeschalteten Knoten in benachbarten Schichten; und
(c) Auswählen der besagten zweiten Leitwege als
Funktion von Kombinationen der besagten
Gewichtungsfaktoren.
8. Vorrichtung nach Anspruch 7, wobei der besagte
Erstweg k Abschnitte enthält und der besagte Zweitweg
mindestens k+1 Abschnitte enthält.
9. Vorrichtung nach Anspruch 7 mit einem Mittel
(2810) zum Bilden von paarweisen Summen der besagten
Gewichtungsfaktoren für
a) Wege zwischen Knoten in derselben Schicht und
b) Wege zwischen Knoten in benachbarten
Schichten.
10. Vorrichtung nach Anspruch 7 mit einem Mittel
(2810) zum Bilden des besagten Gewichtungsfaktors als
Funktion des Abstandes zwischen über besagte Wege
verbundenen Knoten.
11. Vorrichtung nach Anspruch 7, so angeordnet, daß
der besagte Zweitweg nur für einen Teil der für einen
überlasteten ersten Leitweg bestimmten Pakete benutzt
wird.
12. Vorrichtung nach Anspruch 11 mit einem Mittel
(2810) zum
a) Markieren jedes über einen zweiten Leitweg
übertragenen Pakets;
b) Untersuchen jedes Pakets an jedem Knoten vor
seiner Leitweglenkung, um zu bestimmen, ob es markiert
worden ist; und
c) Leiten von markierten Paketen nur dann, wenn
besagter Knoten nicht überlastet ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/548,457 US5253248A (en) | 1990-07-03 | 1990-07-03 | Congestion control for connectionless traffic in data networks via alternate routing |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69118974D1 DE69118974D1 (de) | 1996-05-30 |
DE69118974T2 true DE69118974T2 (de) | 1996-10-10 |
Family
ID=24188916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69118974T Expired - Fee Related DE69118974T2 (de) | 1990-07-03 | 1991-06-25 | Überlastungsregelung für verbindungslosen Verkehr in Datennetzen durch Umweglenkung |
Country Status (4)
Country | Link |
---|---|
US (1) | US5253248A (de) |
EP (1) | EP0465090B1 (de) |
JP (1) | JP2679895B2 (de) |
DE (1) | DE69118974T2 (de) |
Families Citing this family (235)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6453406B1 (en) * | 1990-10-17 | 2002-09-17 | Compaq Computer Corporation | Multiprocessor system with fiber optic bus interconnect for interprocessor communications |
US5471623A (en) * | 1991-02-26 | 1995-11-28 | Napolitano, Jr.; Leonard M. | Lambda network having 2m-1 nodes in each of m stages with each node coupled to four other nodes for bidirectional routing of data packets between nodes |
US6400702B1 (en) * | 1991-10-01 | 2002-06-04 | Intermec Ip Corp. | Radio frequency local area network |
US5375124A (en) * | 1992-02-20 | 1994-12-20 | At&T Corp. | Method and apparatus for providing ISDN access |
ES2118106T3 (es) * | 1992-05-08 | 1998-09-16 | Alsthom Cge Alcatel | Medios logicos de encaminamiento. |
MX9306994A (es) * | 1992-12-15 | 1994-06-30 | Ericsson Telefon Ab L M | Sistema de control de flujo para interruptores de paquete. |
GB9303527D0 (en) * | 1993-02-22 | 1993-04-07 | Hewlett Packard Ltd | Network analysis method |
JP3095314B2 (ja) * | 1993-08-31 | 2000-10-03 | 株式会社日立製作所 | パス切替方式 |
US5630129A (en) * | 1993-12-01 | 1997-05-13 | Sandia Corporation | Dynamic load balancing of applications |
JP2639335B2 (ja) * | 1993-12-22 | 1997-08-13 | 日本電気株式会社 | Atm網における輻輳制御方式 |
US5430729A (en) * | 1994-04-04 | 1995-07-04 | Motorola, Inc. | Method and apparatus for adaptive directed route randomization and distribution in a richly connected communication network |
US5488608A (en) * | 1994-04-14 | 1996-01-30 | Metricom, Inc. | Method and system for routing packets in a packet communication network using locally constructed routing tables |
FI98261C (fi) * | 1994-05-24 | 1997-05-12 | Nokia Telecommunications Oy | Menetelmä kehäväylöityksen estämiseksi tietoliikenneverkossa |
US5699520A (en) * | 1994-08-25 | 1997-12-16 | Hewlett-Packard Company | Flow control apparatus and method for a computer interconnect using adaptive credits and flow control tags |
EP0701349A1 (de) * | 1994-09-07 | 1996-03-13 | T.R.T. Telecommunications Radioelectriques Et Telephoniques | Datenübertragungssystem und Knoten mit Überlastüberwachung |
JP2783164B2 (ja) * | 1994-09-14 | 1998-08-06 | 日本電気株式会社 | 通信網 |
US5684956A (en) * | 1994-11-14 | 1997-11-04 | Billings; Roger E. | Data transmission system with parallel packet delivery |
JP3577348B2 (ja) * | 1994-12-07 | 2004-10-13 | 富士通株式会社 | 可変長データ交換機及び同可変長データ交換機に収容された可変長データ端末 |
WO1996021184A1 (en) * | 1994-12-29 | 1996-07-11 | Jones International, Ltd. | Method and system for two-way data transmission with secondary one-way circuit |
US5610904A (en) * | 1995-03-28 | 1997-03-11 | Lucent Technologies Inc. | Packet-based telecommunications network |
US5608721A (en) * | 1995-04-03 | 1997-03-04 | Motorola, Inc. | Communications network and method which implement diversified routing |
US5596722A (en) * | 1995-04-03 | 1997-01-21 | Motorola, Inc. | Packet routing system and method for achieving uniform link usage and minimizing link load |
IT1285179B1 (it) * | 1995-04-24 | 1998-06-03 | Motorola Inc | Procedimento ed apparecchio di controllo di indirizzamento sensibile per sistemi di comunicazioni. |
SE504712C2 (sv) * | 1995-07-04 | 1997-04-07 | Ericsson Telefon Ab L M | Förfarande och anordning för att dirigera trafik i ett kretskopplat nät |
EP0753979A1 (de) * | 1995-07-13 | 1997-01-15 | International Business Machines Corporation | Methode und System für Wegesuche in einem schnellen Paketvermittlungsnetzwerk |
US5727051A (en) * | 1995-07-14 | 1998-03-10 | Telefonaktiebolaget Lm Ericsson (Publ.) | System and method for adaptive routing on a virtual path broadband network |
US5790770A (en) * | 1995-07-19 | 1998-08-04 | Fujitsu Network Communications, Inc. | Method and apparatus for reducing information loss in a communications network |
AU768042B2 (en) * | 1995-07-21 | 2003-11-27 | Coke S. Reed | Multiple level minimum logic network |
US5996020A (en) * | 1995-07-21 | 1999-11-30 | National Security Agency | Multiple level minimum logic network |
AUPN526595A0 (en) | 1995-09-07 | 1995-09-28 | Ericsson Australia Pty Ltd | Controlling traffic congestion in intelligent electronic networks |
WO1997010656A1 (en) * | 1995-09-14 | 1997-03-20 | Fujitsu Network Communications, Inc. | Transmitter controlled flow control for buffer allocation in wide area atm networks |
KR0147136B1 (ko) * | 1995-11-04 | 1998-08-17 | 양승택 | 비동기 전달 모드(atm) 망에서의 폭주 제어 장치 및 그 방법 |
KR0170493B1 (ko) * | 1995-12-08 | 1999-03-30 | 양승택 | 다중 프로세서 시스템을 위한 논블록킹 결함허용 감마 연결망 |
AU1697697A (en) * | 1996-01-16 | 1997-08-11 | Fujitsu Limited | A reliable and flexible multicast mechanism for atm networks |
US5848054A (en) * | 1996-02-07 | 1998-12-08 | Lutron Electronics Co. Inc. | Repeater for transmission system for controlling and determining the status of electrical devices from remote locations |
US5854899A (en) * | 1996-05-09 | 1998-12-29 | Bay Networks, Inc. | Method and apparatus for managing virtual circuits and routing packets in a network/subnetwork environment |
EP0906674A4 (de) * | 1996-06-10 | 1999-10-13 | Epoch Communications Corp | Digitales kommunikationssystem |
US8547849B2 (en) * | 1996-07-05 | 2013-10-01 | Rockstar Consortium Us Lp | ATM telecommunications systems and method for routing narrow band traffic |
US5872930A (en) * | 1996-07-11 | 1999-02-16 | Microsoft Corporation | Load balancing between E-mail servers within a local area network |
US5870557A (en) * | 1996-07-15 | 1999-02-09 | At&T Corp | Method for determining and reporting a level of network activity on a communications network using a routing analyzer and advisor |
US5748905A (en) * | 1996-08-30 | 1998-05-05 | Fujitsu Network Communications, Inc. | Frame classification using classification keys |
SE507754C2 (sv) * | 1996-10-10 | 1998-07-13 | Ericsson Telefon Ab L M | Metod och anordning för nätverkskonfiguration vid hög belasning |
JP4201216B2 (ja) * | 1997-01-20 | 2008-12-24 | 富士通株式会社 | 通信制御装置,通信制御システムおよび通信制御装置切り換え制御方法 |
US5978379A (en) | 1997-01-23 | 1999-11-02 | Gadzoox Networks, Inc. | Fiber channel learning bridge, learning half bridge, and protocol |
US6289021B1 (en) | 1997-01-24 | 2001-09-11 | Interactic Holdings, Llc | Scaleable low-latency switch for usage in an interconnect structure |
US5898673A (en) * | 1997-02-12 | 1999-04-27 | Siemens Information And Communication Networks, Inc. | System and method for prevention of cell loss due to quality of service contracts in an ATM network |
US6078568A (en) * | 1997-02-25 | 2000-06-20 | Telefonaktiebolaget Lm Ericsson | Multiple access communication network with dynamic access control |
DE19708112A1 (de) * | 1997-02-28 | 1998-09-03 | Philips Patentverwaltung | Telekommunikationssystem mit schleifenfreien Vermittlungstabellen |
EP0868104A3 (de) * | 1997-03-27 | 2003-09-17 | Siemens Aktiengesellschaft | Hierarchisch gegliedertes Kommunikationsnetz und Verfahren zum Mitteilen georgrafischer Koordinaten von Netzknoten |
JP2871650B2 (ja) | 1997-04-17 | 1999-03-17 | 日本電気株式会社 | データ伝送システム |
SE510170C2 (sv) | 1997-05-16 | 1999-04-26 | Ericsson Telefon Ab L M | Metod och anordning för styrning av datapaketflöde medelst baktrycksmeddelande |
US6260072B1 (en) * | 1997-06-12 | 2001-07-10 | Lucent Technologies Inc | Method and apparatus for adaptive routing in packet networks |
US6347078B1 (en) * | 1997-09-02 | 2002-02-12 | Lucent Technologies Inc. | Multiple path routing |
US6590928B1 (en) * | 1997-09-17 | 2003-07-08 | Telefonaktiebolaget Lm Ericsson (Publ) | Frequency hopping piconets in an uncoordinated wireless multi-user system |
US6256295B1 (en) * | 1997-09-25 | 2001-07-03 | Nortel Networks Limited | Method and apparatus for determining multiple minimally-overlapping paths between nodes in a network |
DE19743361C2 (de) * | 1997-09-30 | 2001-02-01 | Siemens Ag | Verfahren zur Leitwegsuche in Telekommunikationsnetzen |
JPH11122260A (ja) * | 1997-10-17 | 1999-04-30 | Fujitsu Ltd | 通信制御装置及びその方法 |
EP0932313A1 (de) * | 1998-01-27 | 1999-07-28 | Siemens Aktiengesellschaft | Verfahren zur Überlast-Abwehr für eine Vermittlungsstelle |
US6600724B1 (en) * | 1998-04-28 | 2003-07-29 | Cisco Technology, Inc. | Routing table structures |
US6529498B1 (en) | 1998-04-28 | 2003-03-04 | Cisco Technology, Inc. | Routing support for point-to-multipoint connections |
US6563798B1 (en) | 1998-06-29 | 2003-05-13 | Cisco Technology, Inc. | Dynamically created service class-based routing tables |
FR2778295B1 (fr) * | 1998-04-30 | 2003-01-17 | Canon Kk | Procede et dispositif de communication, de transmission et/ou de reception d'information |
US6876653B2 (en) | 1998-07-08 | 2005-04-05 | Broadcom Corporation | Fast flexible filter processor based architecture for a network device |
WO2000003515A1 (en) | 1998-07-08 | 2000-01-20 | Broadcom Corporation | Network switching architecture with fast filtering processor |
US6430188B1 (en) | 1998-07-08 | 2002-08-06 | Broadcom Corporation | Unified table for L2, L3, L4, switching and filtering |
US6999459B1 (en) * | 1998-07-10 | 2006-02-14 | Pluris, Inc. | System and method for facilitating recovery from communication link failures in a digital data network |
US6327361B1 (en) * | 1998-07-13 | 2001-12-04 | Lucent Technologies Inc. | Multivariate rate-based overload control for multiple-class communications traffic |
US6501732B1 (en) * | 1999-02-25 | 2002-12-31 | 3Com Corporation | System and method for controlling data flow in a wireless network connection |
US7120117B1 (en) | 2000-08-29 | 2006-10-10 | Broadcom Corporation | Starvation free flow control in a shared memory switching device |
DE60034320T2 (de) * | 1999-03-17 | 2007-12-20 | Broadcom Corp., Irvine | Verfahren zur vermeidung von nichtsequentiellen rahmen in einer netzwerkvermittlungsstelle |
US7145869B1 (en) | 1999-03-17 | 2006-12-05 | Broadcom Corporation | Method for avoiding out-of-ordering of frames in a network switch |
US6850521B1 (en) | 1999-03-17 | 2005-02-01 | Broadcom Corporation | Network switch |
US6831895B1 (en) * | 1999-05-19 | 2004-12-14 | Lucent Technologies Inc. | Methods and devices for relieving congestion in hop-by-hop routed packet networks |
US7031302B1 (en) | 1999-05-21 | 2006-04-18 | Broadcom Corporation | High-speed stats gathering in a network switch |
EP1181792B1 (de) | 1999-05-21 | 2010-07-14 | Broadcom Corporation | Netzwerkvermittlungsstapelanordnung |
US6813240B1 (en) | 1999-06-11 | 2004-11-02 | Mci, Inc. | Method of identifying low quality links in a telecommunications network |
US6275470B1 (en) | 1999-06-18 | 2001-08-14 | Digital Island, Inc. | On-demand overlay routing for computer-based communication networks |
US6859454B1 (en) | 1999-06-30 | 2005-02-22 | Broadcom Corporation | Network switch with high-speed serializing/deserializing hazard-free double data rate switching |
US7315552B2 (en) | 1999-06-30 | 2008-01-01 | Broadcom Corporation | Frame forwarding in a switch fabric |
AU7053400A (en) | 1999-09-03 | 2001-04-10 | Broadcom Corporation | Apparatus and method for enabling voice over ip support for a network switch |
US6693877B1 (en) * | 1999-09-07 | 2004-02-17 | Motorola, Inc. | Data discard avoidance method |
US6735393B1 (en) * | 1999-09-24 | 2004-05-11 | Telenor, As | All-optical network with passive wavelength routers |
AU6515399A (en) * | 1999-10-12 | 2001-04-23 | Mindarrow Systems, Inc. | Internal outbound routing based on private peer availability |
US6397066B1 (en) * | 1999-10-29 | 2002-05-28 | Verizon Laboratories Inc. | Fast method for capacity estimation of systems |
US7143294B1 (en) | 1999-10-29 | 2006-11-28 | Broadcom Corporation | Apparatus and method for secure field upgradability with unpredictable ciphertext |
US7131001B1 (en) | 1999-10-29 | 2006-10-31 | Broadcom Corporation | Apparatus and method for secure filed upgradability with hard wired public key |
US7539134B1 (en) | 1999-11-16 | 2009-05-26 | Broadcom Corporation | High speed flow control methodology |
WO2001037484A2 (en) | 1999-11-16 | 2001-05-25 | Broadcom Corporation | Serializing data using hazard-free multilevel glitchless multiplexing |
EP1232612B1 (de) | 1999-11-18 | 2006-11-02 | Broadcom Corporation | Tabellen-nachschlage-mechanismus zur adressauflösung in einer paket-netzwerkvermittlung |
ATE265774T1 (de) | 1999-12-07 | 2004-05-15 | Broadcom Corp | Spiegelung in einer netzwerkvermittlungsstapelanordnung |
GB9930428D0 (en) * | 1999-12-22 | 2000-02-16 | Nortel Networks Corp | A method of provisioning a route in a connectionless communications network such that a guaranteed quality of service is provided |
EP1119178B1 (de) | 1999-12-28 | 2010-04-14 | Sony Corporation | System und Verfahren für den kommerziellen Verkehr von Bildern |
US7117273B1 (en) * | 2000-01-25 | 2006-10-03 | Cisco Technology, Inc. | Methods and apparatus for maintaining a map of node relationships for a network |
US7009973B2 (en) | 2000-02-28 | 2006-03-07 | Broadcom Corporation | Switch using a segmented ring |
US6678678B2 (en) | 2000-03-09 | 2004-01-13 | Braodcom Corporation | Method and apparatus for high speed table search |
US7006453B1 (en) | 2000-03-14 | 2006-02-28 | Lucent Technologies Inc. | Location based routing for mobile ad-hoc networks |
US6816460B1 (en) | 2000-03-14 | 2004-11-09 | Lucent Technologies Inc. | Location based routing for mobile ad-hoc networks |
BR0109370A (pt) | 2000-03-14 | 2003-02-04 | Dexrad Pty Ltd | Geração de imagem impressa não-reproduzìvel |
US7633873B1 (en) | 2000-03-15 | 2009-12-15 | Koehler Stefan | Method and system for communication of data via an optimum data path in a network |
US7730201B1 (en) * | 2000-04-13 | 2010-06-01 | Alcatel-Lucent Canada, Inc. | Method and apparatus for congestion avoidance in source routed signaling protocol communication networks |
US7103053B2 (en) | 2000-05-03 | 2006-09-05 | Broadcom Corporation | Gigabit switch on chip architecture |
US7372805B2 (en) * | 2000-05-09 | 2008-05-13 | Lucent Technologies Inc. | Traffic grooming methods for undersea trunk and branch architectures |
US6826561B2 (en) | 2000-05-22 | 2004-11-30 | Broadcom Corporation | Method and apparatus for performing a binary search on an expanded tree |
US6744984B1 (en) * | 2000-05-24 | 2004-06-01 | Nortel Networks Limited | Method and system for alternative transmission traffic routing in dense wavelength division multiplexing optical networks |
AU2001263378A1 (en) * | 2000-06-07 | 2001-12-17 | Caly Corporation | Multi-path dynamic routing algorithm |
EP1162792B1 (de) | 2000-06-09 | 2012-08-15 | Broadcom Corporation | Gigabitvermittlungseinrichtung mit schneller Rahmenweiterleitung und Adressenlernen |
DE60111457T2 (de) | 2000-06-19 | 2006-05-11 | Broadcom Corp., Irvine | Vermittlungsanordnung mit redundanten Wegen |
US7126947B2 (en) | 2000-06-23 | 2006-10-24 | Broadcom Corporation | Switch having external address resolution interface |
US7111163B1 (en) | 2000-07-10 | 2006-09-19 | Alterwan, Inc. | Wide area network using internet with quality of service |
US6999455B2 (en) | 2000-07-25 | 2006-02-14 | Broadcom Corporation | Hardware assist for address learning |
US7385965B2 (en) * | 2000-08-10 | 2008-06-10 | Alcatel-Lucent Canada Inc. | Multiprocessor control block for use in a communication switch and method therefore |
US20020080780A1 (en) * | 2000-08-10 | 2002-06-27 | Mccormick James S. | Buffering system for use in a communication switch that includes a multiprocessor control block and method therefore |
US7130824B1 (en) * | 2000-08-21 | 2006-10-31 | Etp Holdings, Inc. | Apparatus and method for load balancing among data communications ports in automated securities trading systems |
US7177927B1 (en) * | 2000-08-22 | 2007-02-13 | At&T Corp. | Method for monitoring a network |
US7227862B2 (en) | 2000-09-20 | 2007-06-05 | Broadcom Corporation | Network switch having port blocking capability |
US6988177B2 (en) | 2000-10-03 | 2006-01-17 | Broadcom Corporation | Switch memory management using a linked list structure |
US7274705B2 (en) | 2000-10-03 | 2007-09-25 | Broadcom Corporation | Method and apparatus for reducing clock speed and power consumption |
US6851000B2 (en) | 2000-10-03 | 2005-02-01 | Broadcom Corporation | Switch having flow control management |
US7020166B2 (en) | 2000-10-03 | 2006-03-28 | Broadcom Corporation | Switch transferring data using data encapsulation and decapsulation |
US7420977B2 (en) | 2000-10-03 | 2008-09-02 | Broadcom Corporation | Method and apparatus of inter-chip bus shared by message passing and memory access |
US7120155B2 (en) | 2000-10-03 | 2006-10-10 | Broadcom Corporation | Switch having virtual shared memory |
EP1195952A1 (de) * | 2000-10-09 | 2002-04-10 | Siemens Aktiengesellschaft | Verfahren zur Überlastverwaltung in einem IP-Subnetz |
US6665495B1 (en) * | 2000-10-27 | 2003-12-16 | Yotta Networks, Inc. | Non-blocking, scalable optical router architecture and method for routing optical traffic |
US7035286B2 (en) | 2000-11-14 | 2006-04-25 | Broadcom Corporation | Linked network switch configuration |
US6850542B2 (en) | 2000-11-14 | 2005-02-01 | Broadcom Corporation | Linked network switch configuration |
US7035255B2 (en) | 2000-11-14 | 2006-04-25 | Broadcom Corporation | Linked network switch configuration |
US7424012B2 (en) | 2000-11-14 | 2008-09-09 | Broadcom Corporation | Linked network switch configuration |
US7042843B2 (en) | 2001-03-02 | 2006-05-09 | Broadcom Corporation | Algorithm for time based queuing in network traffic engineering |
US7230924B2 (en) | 2001-03-28 | 2007-06-12 | At&T Corp. | Method and apparatus for communications traffic engineering |
US7031253B1 (en) | 2001-06-01 | 2006-04-18 | Cisco Technology, Inc. | Method and apparatus for computing a path through specified elements in a network |
US7051113B1 (en) | 2001-06-01 | 2006-05-23 | Cisco Technology, Inc. | Method and apparatus for computing a primary path while allowing for computing an alternate path by using a blocked list |
US6975588B1 (en) | 2001-06-01 | 2005-12-13 | Cisco Technology, Inc. | Method and apparatus for computing a path through a bidirectional line switched |
JP2002366416A (ja) * | 2001-06-12 | 2002-12-20 | Fujitsu Ltd | データ配信システム、ネットワークキャッシュ装置、データ配信サーバおよびアクセスサーバ |
US7082124B1 (en) | 2001-07-10 | 2006-07-25 | Cisco Technology, Inc. | Method and apparatus for computing primary and alternate paths in mixed protection domain networks |
US7490165B1 (en) * | 2001-07-18 | 2009-02-10 | Cisco Technology, Inc. | Method and apparatus for computing a path in a system with nodal and link diverse constraints |
US7239636B2 (en) | 2001-07-23 | 2007-07-03 | Broadcom Corporation | Multiple virtual channels for use in network devices |
US7068630B1 (en) | 2001-07-31 | 2006-06-27 | Ricochet Networks, Inc. | Method for measuring load between MCDN devices for use in determining path with optimal throughput |
US6532212B1 (en) * | 2001-09-25 | 2003-03-11 | Mcdata Corporation | Trunking inter-switch links |
DE10147748A1 (de) * | 2001-09-27 | 2003-04-17 | Siemens Ag | Verfahren und Vorrichtung zur Anpassung von Label-Switched-Pfaden in Paketnetzen |
US7355970B2 (en) | 2001-10-05 | 2008-04-08 | Broadcom Corporation | Method and apparatus for enabling access on a network switch |
WO2003053013A2 (en) * | 2001-10-12 | 2003-06-26 | Honeywell International Inc. | Selection of one among several networks for data transmissions |
US7349406B1 (en) * | 2001-10-18 | 2008-03-25 | Network Equipment Technologies Inc. | Method and apparatus for virtual network connection merging |
US7110389B2 (en) * | 2001-11-19 | 2006-09-19 | International Business Machines Corporation | Fanning route generation technique for multi-path networks |
US6981052B1 (en) * | 2001-12-07 | 2005-12-27 | Cisco Technology, Inc. | Dynamic behavioral queue classification and weighting |
JP3897603B2 (ja) * | 2002-01-28 | 2007-03-28 | 富士通株式会社 | フロントエンドプロセッサ、ルーティング管理方法、およびルーティング管理プログラム |
US7085913B2 (en) * | 2002-02-13 | 2006-08-01 | International Business Machines Corporation | Hub/router for communication between cores using cartesian coordinates |
US7719980B2 (en) | 2002-02-19 | 2010-05-18 | Broadcom Corporation | Method and apparatus for flexible frame processing and classification engine |
US6851008B2 (en) | 2002-03-06 | 2005-02-01 | Broadcom Corporation | Adaptive flow control method and apparatus |
US7295555B2 (en) | 2002-03-08 | 2007-11-13 | Broadcom Corporation | System and method for identifying upper layer protocol message boundaries |
US7245620B2 (en) | 2002-03-15 | 2007-07-17 | Broadcom Corporation | Method and apparatus for filtering packet data in a network device |
DE10238291A1 (de) | 2002-08-21 | 2004-03-04 | Siemens Ag | Effizientes Intra-Domain Routing in Paketnetzen |
US7411959B2 (en) | 2002-08-30 | 2008-08-12 | Broadcom Corporation | System and method for handling out-of-order frames |
US7346701B2 (en) | 2002-08-30 | 2008-03-18 | Broadcom Corporation | System and method for TCP offload |
US7934021B2 (en) | 2002-08-29 | 2011-04-26 | Broadcom Corporation | System and method for network interfacing |
US8180928B2 (en) | 2002-08-30 | 2012-05-15 | Broadcom Corporation | Method and system for supporting read operations with CRC for iSCSI and iSCSI chimney |
US7313623B2 (en) | 2002-08-30 | 2007-12-25 | Broadcom Corporation | System and method for TCP/IP offload independent of bandwidth delay product |
US7613796B2 (en) * | 2002-09-11 | 2009-11-03 | Microsoft Corporation | System and method for creating improved overlay network with an efficient distributed data structure |
US8199636B1 (en) * | 2002-10-18 | 2012-06-12 | Alcatel Lucent | Bridged network system with traffic resiliency upon link failure |
US7792991B2 (en) * | 2002-12-17 | 2010-09-07 | Cisco Technology, Inc. | Method and apparatus for advertising a link cost in a data communications network |
US7457302B1 (en) * | 2002-12-31 | 2008-11-25 | Apple Inc. | Enhancement to loop healing for malconfigured bus prevention |
US7792982B2 (en) * | 2003-01-07 | 2010-09-07 | Microsoft Corporation | System and method for distributing streaming content through cooperative networking |
US7496650B1 (en) * | 2003-01-09 | 2009-02-24 | Cisco Technology, Inc. | Identifying and suppressing transient routing updates |
US7707307B2 (en) | 2003-01-09 | 2010-04-27 | Cisco Technology, Inc. | Method and apparatus for constructing a backup route in a data communications network |
US7308506B1 (en) | 2003-01-14 | 2007-12-11 | Cisco Technology, Inc. | Method and apparatus for processing data traffic across a data communication network |
US7869350B1 (en) | 2003-01-15 | 2011-01-11 | Cisco Technology, Inc. | Method and apparatus for determining a data communication network repair strategy |
US7330440B1 (en) | 2003-05-20 | 2008-02-12 | Cisco Technology, Inc. | Method and apparatus for constructing a transition route in a data communications network |
US8078756B2 (en) | 2003-06-03 | 2011-12-13 | Cisco Technology, Inc. | Computing a path for an open ended uni-directional path protected switched ring |
US7864708B1 (en) | 2003-07-15 | 2011-01-04 | Cisco Technology, Inc. | Method and apparatus for forwarding a tunneled packet in a data communications network |
GB2404826B (en) * | 2003-08-01 | 2005-08-31 | Motorola Inc | Re-routing in a data communication network |
US20050050139A1 (en) * | 2003-09-03 | 2005-03-03 | International Business Machines Corporation | Parametric-based control of autonomic architecture |
US7317682B2 (en) * | 2003-09-04 | 2008-01-08 | Mitsubishi Electric Research Laboratories, Inc. | Passive and distributed admission control method for ad hoc networks |
US7466661B1 (en) | 2003-09-22 | 2008-12-16 | Cisco Technology, Inc. | Method and apparatus for establishing adjacency for a restarting router during convergence |
WO2005036839A2 (en) * | 2003-10-03 | 2005-04-21 | Avici Systems, Inc. | Rapid alternate paths for network destinations |
US7580360B2 (en) * | 2003-10-14 | 2009-08-25 | Cisco Technology, Inc. | Method and apparatus for generating routing information in a data communications network |
US7554921B2 (en) * | 2003-10-14 | 2009-06-30 | Cisco Technology, Inc. | Method and apparatus for generating routing information in a data communication network |
US7768909B1 (en) | 2003-10-28 | 2010-08-03 | At&T Intellectual Property Ii, L.P. | Congestion control in an IP network |
US7369493B2 (en) * | 2003-10-28 | 2008-05-06 | At&T Corp. | Congestion control in an IP network |
US7619974B2 (en) | 2003-10-31 | 2009-11-17 | Brocade Communication Systems, Inc. | Frame traffic balancing across trunk groups |
US7542414B1 (en) | 2003-10-31 | 2009-06-02 | Cisco Technology, Inc. | Computing a diverse path while providing optimal usage of line protected links |
US7428213B2 (en) * | 2003-11-21 | 2008-09-23 | Cisco Technology, Inc. | Method and apparatus for determining network routing information based on shared risk link group information |
US7366099B2 (en) * | 2003-12-01 | 2008-04-29 | Cisco Technology, Inc. | Method and apparatus for synchronizing a data communications network |
US7904584B2 (en) | 2004-02-12 | 2011-03-08 | Broadcom Corporation | Source identifier-based trunking for systems of network devices |
US7710882B1 (en) | 2004-03-03 | 2010-05-04 | Cisco Technology, Inc. | Method and apparatus for computing routing information for a data communications network |
US7337258B1 (en) * | 2004-04-12 | 2008-02-26 | Apple Inc. | Dynamically allocating devices to buses |
US7697438B2 (en) * | 2004-05-12 | 2010-04-13 | Hewlett-Packard Development Company, L.P. | Method of routing packet |
US7042838B1 (en) * | 2004-05-18 | 2006-05-09 | Cisco Technology, Inc. | Method and apparatus for forwarding data in a data communications network |
US7848240B2 (en) * | 2004-06-01 | 2010-12-07 | Cisco Technology, Inc. | Method and apparatus for forwarding data in a data communications network |
US20050289101A1 (en) * | 2004-06-25 | 2005-12-29 | Doddaballapur Jayasimha | Methods and systems for dynamic partition management of shared-interconnect partitions |
US7577106B1 (en) | 2004-07-12 | 2009-08-18 | Cisco Technology, Inc. | Method and apparatus for managing a transition for a class of data between first and second topologies in a data communications network |
US7924726B2 (en) * | 2004-07-12 | 2011-04-12 | Cisco Technology, Inc. | Arrangement for preventing count-to-infinity in flooding distance vector routing protocols |
US7701881B1 (en) * | 2004-07-17 | 2010-04-20 | Cisco Technology, Inc. | System and method for determining the mergeability of spanning tree instances |
US7660241B2 (en) | 2004-07-20 | 2010-02-09 | Alcatel Lucent | Load balancing in a virtual private network |
US7630298B2 (en) * | 2004-10-27 | 2009-12-08 | Cisco Technology, Inc. | Method and apparatus for forwarding data in a data communications network |
US7616584B2 (en) * | 2004-11-12 | 2009-11-10 | Cisco Technology, Inc. | Minimizing single points of failure in paths with mixed protection schemes |
US8069265B2 (en) | 2005-01-10 | 2011-11-29 | Broadcom Corporation | Method and system for network rotameter station and service |
US8903074B2 (en) * | 2005-03-04 | 2014-12-02 | Tekelec Global, Inc. | Methods, systems, and computer program products for congestion-based routing of telecommunications signaling messages |
US7852748B2 (en) * | 2005-03-23 | 2010-12-14 | Cisco Technology, Inc. | Method and system for providing voice QoS during network failure |
US20060268691A1 (en) * | 2005-05-31 | 2006-11-30 | International Business Machines Corporation | Divide and conquer route generation technique for distributed selection of routes within a multi-path network |
US7978719B2 (en) * | 2005-06-10 | 2011-07-12 | International Business Machines Corporation | Dynamically assigning endpoint identifiers to network interfaces of communications networks |
US9654383B2 (en) | 2005-08-17 | 2017-05-16 | Avaya Inc. | Route optimization using measured congestion |
US7852778B1 (en) * | 2006-01-30 | 2010-12-14 | Juniper Networks, Inc. | Verification of network paths using two or more connectivity protocols |
US8300798B1 (en) | 2006-04-03 | 2012-10-30 | Wai Wu | Intelligent communication routing system and method |
US20080212585A1 (en) * | 2007-03-01 | 2008-09-04 | Russell White | Preventing Loops during Recovery in Network Rings Using Cost Metric Routing Protocol |
US7636789B2 (en) * | 2007-11-27 | 2009-12-22 | Microsoft Corporation | Rate-controllable peer-to-peer data stream routing |
US8442070B1 (en) * | 2008-02-01 | 2013-05-14 | Hobnob, Inc. | Fractional threshold encoding and aggregation |
US8027273B2 (en) * | 2008-09-24 | 2011-09-27 | The United States Of America As Represented By The Secretary Of The Army | System and method for visually creating, editing, manipulating, verifying, and/or animating desired topologies of a mobile ad hoc network and/or for generating mobility-pattern data |
US8539035B2 (en) * | 2008-09-29 | 2013-09-17 | Fujitsu Limited | Message tying processing method and apparatus |
US8223633B2 (en) | 2008-10-03 | 2012-07-17 | Brocade Communications Systems, Inc. | Port trunking at a fabric boundary |
JP2010108300A (ja) * | 2008-10-30 | 2010-05-13 | Hitachi Ltd | 情報処理システム、及び情報処理システムにおけるi/oのパスへの割り当て方法 |
US20100142522A1 (en) * | 2008-12-04 | 2010-06-10 | James Gardner | Methods and apparatus for adaptive error correction in networks |
US8264988B2 (en) * | 2009-01-30 | 2012-09-11 | Nec Laboratories America, Inc. | Method for inferring physical network topology from end-to-end measurement |
JP4767336B2 (ja) * | 2009-06-10 | 2011-09-07 | 株式会社日立製作所 | メールサーバシステム及び輻輳制御方法 |
US8412831B2 (en) | 2009-08-03 | 2013-04-02 | Brocade Communications Systems, Inc. | Per priority TCP quality of service |
US20120182917A1 (en) * | 2009-09-16 | 2012-07-19 | St. Jude Medical Ab | Implantable medical device communication |
US20110134802A1 (en) * | 2009-12-09 | 2011-06-09 | Cisco Technology, Inc. | Determining A Routing Tree For Networks With Different Routing Protocols |
US8862775B2 (en) * | 2010-11-26 | 2014-10-14 | Industrial Technology Research Institute | Network server and load balancing routing method for networks thereof |
WO2012150943A1 (en) * | 2011-05-05 | 2012-11-08 | Hewlett-Packard Development Company L.P. | Method and system for online planning of a workflow of processing an article in a plant |
SG185834A1 (en) * | 2011-05-11 | 2012-12-28 | Smart Communications Inc | System and method for routing electronic content to a recipient device |
US8902780B1 (en) | 2012-09-26 | 2014-12-02 | Juniper Networks, Inc. | Forwarding detection for point-to-multipoint label switched paths |
US9258234B1 (en) | 2012-12-28 | 2016-02-09 | Juniper Networks, Inc. | Dynamically adjusting liveliness detection intervals for periodic network communications |
US8953460B1 (en) | 2012-12-31 | 2015-02-10 | Juniper Networks, Inc. | Network liveliness detection using session-external communications |
US10003536B2 (en) | 2013-07-25 | 2018-06-19 | Grigore Raileanu | System and method for managing bandwidth usage rates in a packet-switched network |
EP2843886A1 (de) | 2013-08-30 | 2015-03-04 | TELEFONAKTIEBOLAGET LM ERICSSON (publ) | Lastausgleich unter alternativen Pfaden |
US9253079B2 (en) * | 2013-10-11 | 2016-02-02 | Telefonaktiebolaget L M Ericsson (Publ) | High performance LFA path algorithms |
US9769017B1 (en) | 2014-09-26 | 2017-09-19 | Juniper Networks, Inc. | Impending control plane disruption indication using forwarding plane liveliness detection protocols |
US10924408B2 (en) | 2014-11-07 | 2021-02-16 | Noction, Inc. | System and method for optimizing traffic in packet-switched networks with internet exchanges |
US9769070B2 (en) | 2015-01-28 | 2017-09-19 | Maxim Basunov | System and method of providing a platform for optimizing traffic through a computer network with distributed routing domains interconnected through data center interconnect links |
US10374936B2 (en) | 2015-12-30 | 2019-08-06 | Juniper Networks, Inc. | Reducing false alarms when using network keep-alive messages |
US10397085B1 (en) | 2016-06-30 | 2019-08-27 | Juniper Networks, Inc. | Offloading heartbeat responses message processing to a kernel of a network device |
US10291539B2 (en) | 2016-09-22 | 2019-05-14 | Oracle International Corporation | Methods, systems, and computer readable media for discarding messages during a congestion event |
US11750441B1 (en) | 2018-09-07 | 2023-09-05 | Juniper Networks, Inc. | Propagating node failure errors to TCP sockets |
CN110493327B (zh) * | 2019-08-05 | 2022-06-10 | 网宿科技股份有限公司 | 一种数据传输方法及装置 |
US11102138B2 (en) | 2019-10-14 | 2021-08-24 | Oracle International Corporation | Methods, systems, and computer readable media for providing guaranteed traffic bandwidth for services at intermediate proxy nodes |
US11425598B2 (en) | 2019-10-14 | 2022-08-23 | Oracle International Corporation | Methods, systems, and computer readable media for rules-based overload control for 5G servicing |
US11451478B1 (en) * | 2019-11-22 | 2022-09-20 | Juniper Networks, Inc. | Distributed tactical traffic engineering (TE) using loop free alternative (LFA), remote-LFA (R-LFA) and/or topology independent-LFA (TI-LFA) secondary paths |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4466060A (en) * | 1982-02-11 | 1984-08-14 | At&T Bell Telephone Laboratories, Incorporated | Message routing in a computer network |
JPH0681156B2 (ja) * | 1984-02-23 | 1994-10-12 | 中部電力株式会社 | パケツト交換網における輻輳制御方式 |
JPS63155839A (ja) * | 1986-12-19 | 1988-06-29 | Hitachi Ltd | パケツト交換網のル−テイング情報管理方式 |
US4769810A (en) * | 1986-12-31 | 1988-09-06 | American Telephone And Telegraph Company, At&T Bell Laboratories | Packet switching system arranged for congestion control through bandwidth management |
DE3838945A1 (de) * | 1987-11-18 | 1989-06-08 | Hitachi Ltd | Netzwerksystem mit lokalen netzwerken und mit einer hierarchischen wegewahl |
US4811337A (en) * | 1988-01-15 | 1989-03-07 | Vitalink Communications Corporation | Distributed load sharing |
US4967345A (en) * | 1988-06-23 | 1990-10-30 | International Business Machines Corporation | Method of selecting least weight routes in a communications network |
JPH02135839A (ja) * | 1988-11-16 | 1990-05-24 | Nec Corp | パケット交換システム制御方式 |
GB8911395D0 (en) * | 1989-05-18 | 1989-07-05 | British Telecomm | Data communications network |
US5115433A (en) * | 1989-07-18 | 1992-05-19 | Metricom, Inc. | Method and system for routing packets in a packet communication network |
-
1990
- 1990-07-03 US US07/548,457 patent/US5253248A/en not_active Expired - Lifetime
-
1991
- 1991-06-20 JP JP17468791A patent/JP2679895B2/ja not_active Expired - Fee Related
- 1991-06-25 EP EP91305728A patent/EP0465090B1/de not_active Expired - Lifetime
- 1991-06-25 DE DE69118974T patent/DE69118974T2/de not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2679895B2 (ja) | 1997-11-19 |
EP0465090B1 (de) | 1996-04-24 |
US5253248A (en) | 1993-10-12 |
EP0465090A1 (de) | 1992-01-08 |
JPH04233848A (ja) | 1992-08-21 |
DE69118974D1 (de) | 1996-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69118974T2 (de) | Überlastungsregelung für verbindungslosen Verkehr in Datennetzen durch Umweglenkung | |
EP0872090B1 (de) | Verfahren zum bilden von leitweginformation | |
EP2171935B1 (de) | Verfahren, netzwerke und netzknoten zur auswahl einer route | |
DE60029513T2 (de) | Ein auf Diensteklassen basiertes Internet-Protokoll(IP) Wegelenkungsverfahren | |
DE69025558T2 (de) | Verfahren und Vorrichtung zur Überlastregelung in einem Datennetzwerk | |
DE60318428T2 (de) | Verfolgen von verkehr in einem mobil-ad-hoc-netzwerk | |
DE112020002499T5 (de) | System und verfahren zur erleichterung eines datengesteuerten intelligenten netzes mit kreditbasierter flusskontrolle pro fluss | |
DE60214667T2 (de) | Wegbestimmung in einem datennetzwerk | |
DE19528563C2 (de) | Verfahren zur Bewertung von mindestens zwei mehrteiligen Kommunikationsverbindungen zwischen zwei Kommunikationspartnern in einem Mehrknotennetzwerk | |
DE3888818T2 (de) | Aufgeteilte Lastverteilung. | |
DE3780800T2 (de) | Anordnung zur ueberlastregelung fuer paketvermittlungssystem. | |
DE3780799T2 (de) | Anordnung zur ueberlastregelung durch bandbreitenverwaltung fuer paketvermittlungssystem. | |
DE3686254T2 (de) | Verbindung von rundsendenetzwerken. | |
DE60016977T2 (de) | Verfahren und system zur datenübertragung über einen optimierten datenpfad in einem netzwerk | |
DE10100841B4 (de) | Datagramm-Übertragungsvorrichtung mit Lastverteilungsfunktion | |
DE68925786T2 (de) | Steuerverfahren für adaptive Leitweglenkung | |
DE60014138T2 (de) | System um etikettierte wegelenkungsbäume zu kommunizieren | |
DE60123398T2 (de) | Verfahren zur Datenkommunikation im selbstorganisierenden Netz mit Enscheidungsvorrichtung | |
DE69633051T2 (de) | Verfahren zur Kontrolle der Datenstromgeschwindigkeit, des Warteschlangenetzknoten und des Paketvermittlungsnetzwerkes | |
DE102007017515B3 (de) | Verfahren zur Ermittlung eines Pfaddistanzwertes sowie Netzwerkknoten | |
DE60130844T2 (de) | Autonomes OSPF-System mit einem in zwei Teilbereiche getrennten Hauptnetz | |
DE60319250T2 (de) | Verfahren zur routenverteilung bei der mehrdienstoptimierung eines sdh-übertragungsnetzwerks | |
DE102006014910A1 (de) | Verfahren zur Ermittlung eines Pfaddistanzwertes | |
DE602004001605T2 (de) | Verbesserung vom frühen Zufallsverwerfen von Datenpaketen (RED) | |
DE10334104A1 (de) | Verfahren und Netzknoten zur Meldung mindestens eines ausgefallenen Verbindungsweges innerhalb eines Kommunikationsnetzes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |