DE60309197T2 - Wegewahlsystem und synchronisierungsverfahren dafür - Google Patents

Wegewahlsystem und synchronisierungsverfahren dafür Download PDF

Info

Publication number
DE60309197T2
DE60309197T2 DE60309197T DE60309197T DE60309197T2 DE 60309197 T2 DE60309197 T2 DE 60309197T2 DE 60309197 T DE60309197 T DE 60309197T DE 60309197 T DE60309197 T DE 60309197T DE 60309197 T2 DE60309197 T2 DE 60309197T2
Authority
DE
Germany
Prior art keywords
routing
routes
route
peer
processor
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
Application number
DE60309197T
Other languages
English (en)
Other versions
DE60309197D1 (de
Inventor
Galen John Ann Arbor SCUDDER
Delano David Somerset WARD
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of DE60309197D1 publication Critical patent/DE60309197D1/de
Application granted granted Critical
Publication of DE60309197T2 publication Critical patent/DE60309197T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft Routingsysteme und im Besonderen Failover von Routingsystemen und ganz besonders Neusynchronisierung mit Peer-Routingsystemen nach einem Failover.
  • Allgemeiner Stand der Technik
  • Router und Routingsysteme sorgen für das Routing von Paketen zwischen Knoten eines paketvermittelten Netzes. Um die Zuverlässigkeit des paketvermittelten Netzes zu steigern, können Routingsysteme, die an Knoten des Netzes arbeiten, redundante Routingeinrichtungen enthalten. Zum Beispiel kann ein Routingsystem einen primären oder aktiven Routingprozessor, der gewöhnlich die Paketweiterleitung durchführt oder verwaltet, und einen sekundären oder Backup-Routingprozessor, um nach einem Ausfall von dem primären Routingprozessor zu übernehmen, enthalten. Bei der Umschaltung (d. h. dem Failover) von einem primären zu einem sekundären Routingprozessor handelt es sich jedoch oft um ein Störereignis. Zum Zeitpunkt des Failovers sollte der aktuelle Zustand des primären Routingprozessors von dem sekundären Routingprozessor widergespiegelt werden. Viele herkömmliche Routingsysteme wenden eine aktive Replikationstechnik an, um Ausfälle einzuplanen. In diesen Systemen werden Zustandsinformationen ständig auf dem Backup-Prozessor gespeichert (d. h. es werden Prüfpunkte erstellt). Bei der aktiven Replikation kann die Wiederherstellung nach Ausfällen schnell erfolgen, bei der gewöhnlichen Ausführung liegt jedoch ein großer Overhead vor. Die aktive Replikation setzt eine redundante Struktur ein, die aus zwei Prozessorressourcen (z. B. zwei Prozessoren und einem Speicher) besteht. Ein Problem mit der aktiven Replikation besteht darin, dass, weil die Replikation ständig durchgeführt wird, während das System läuft, die Verarbeitungsressourcen verschwenderisch verwendet werden.
  • Das Routingprotokoll BGP-4 (Border-Gateway-Protokoll) ist eines der primären Protokolle, das für Internet-Routing verwendet wird, und ist ein inkrementelles Protokoll, das auf dem TCP-Transport basiert. Eine BGP-Version wird im Request for Comments (RFC) 1771, als RFC 1771 bezeichnet, der Network Working Group mit dem Titel „A Border Gateway Protocol 4 (BGP-4)", herausgegeben von Y. Rekhter und T. Li und mit März 1995 datiert, beschrieben, während andere Versionen in folgenden Aktualisierungen und Überarbeitungen von RFC 1771 beschrieben werden. Der dynamische Austausch von Routinginformationen für das BGP wird im RFC 2918 der Network Working Group mit dem Titel „Route Refresh Capability for BGP-4" von E. Chen und mit September 2000 datiert beschrieben. Die Tatsache, dass das TCP-Transportprotokoll selbst ziemlich komplex ist, in Verbindung mit der Komplexität des BGP-Protokolls und des schieren Umfangs der Daten, der in der Regel involviert ist, hat es schwierig gestaltet, ein hoch zuverlässiges BGP-Routingsystem unter Verwendung von primären und Backup-Routingprozessoren zu unterstützen, da es schwierig ist, den TCP-Zustand aufrechtzuerhalten, und es schwierig ist, einen BGP-Router nach einem Failover mit BGP-Peer-Routern zu synchronisieren. Herkömmliche Systeme wechseln entweder das Protokoll oder setzen ein umfangreiches Erstellen von Prüfpunkten (Checkpointing) ein. Zum Beispiel erstellen einige herkömmliche Ansätze Prüfpunkte von im Wesentlichen allen Zustandsdaten (sowohl TCP-Zustand als auch BGP-Protokoll-Zustand). Dieses umfangreiche Checkpointing verbraucht unmäßige Ressourcen eines Systems, was die Systemleistung mindert.
  • Folglich besteht ein allgemeiner Bedarf an einem verbesserten Routingsystem und Routingverfahren. Folglich besteht außerdem Bedarf an einem Routingsystem und -verfahren, das das Ausmaß an Checkpointing reduziert, das während normalen Routingvorgängen erforderlich ist. Es besteht außerdem Bedarf an einem Routingsystem und -verfahren, das nach Ausfall eines primären Routingprozessors mit Peer-Routingsystemen neu synchronisiert. Es besteht außerdem Bedarf an einem Routingsystem und -verfahren, das ein Border-Gateway-Protokoll (BGP) unterstützt und nach Ausfall eines primären Routingprozessors mit Peer-Routingsystemen ohne unmäßiges Checkpointing neu synchronisiert. Es besteht außerdem Bedarf an einem Routingsystem und -verfahren, das nach Ausfall eines primären Routingprozessors mit Peer-Routingsystemen neu synchronisiert, ohne dass erforderlich ist, dass die Peer-Systeme ihre Software aktualisieren.
  • US-A-6148410 offenbart primäre und Backup-Router, deren Tabellen synchronisiert sind, um einen Transfer zum Backup-Router zu ermöglichen.
  • Die Erfindung stellt ein Schaltverfahren, ein Routingsystem und eine Schaltvorrichtung bereit, wie in den Ansprüchen 1, 13 und 17 definiert.
  • In einer Ausführungsform stellt die vorliegende Erfindung ein Verfahren zum Synchronisieren eines BGP-Routingsystems (BGP = Border-Gateway-Protokoll) mit Peer-BGP-Routingsystemen nach Ausfall eines primären Prozessors des BGP-Routingsystems bereit. In dieser Ausführungsform setzt der primäre Prozessor eine ursprüngliche Routingdatenbank zum Durchführen von Routing ein und erhält eine Präfixtabelle aufrecht, auf die ein Backup-Routingprozessor zugreifen kann und die Präfixe von Routen der ursprünglichen Routendatenbank aufführt. Die Präfixtabelle steht dem Backup-Routingprozessor nach einem Ausfall des primären Routingprozessors zur Verfügung. Das Verfahren, das von dem Backup-Prozessor nach Erkennung eines Ausfalls des primären Routingprozessors durchgeführt wird, umfasst das Senden von BGP-Routenauffrischungsnachrichten an die BGP-Peer-Routingsysteme. Die BGP-Routenauffrischungsnachrichten fordern Routen an, die von den BGP-Routingsystemen unterstützt werden. In dieser Ausführungsform beinhaltet das Verfahren außerdem das Empfangen von Routen von den BGP-Peer-Routingsystemen als Reaktion auf die BGP-Routenauffrischungsnachrichten und das Erstellen einer Backup-Routingdatenbank (d. h. regenerierten Routingdatenbank) aus den Routen, die von den BGP-Peer-Routingsystemen empfangen wurden. Präfixe von Routen in der Backup-Routingdatenbank werden mit Präfixen in der Präfixtabelle verglichen und BGP-Routenrückzugsnachrichten werden an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind, jedoch nicht in der Backup-Routingdatenbank identifiziert wurden, gesendet.
  • In einer anderen Ausführungsform stellt die vorliegende Erfindung ein Routingsystem bereit. Das Routingsystem umfasst einen primären Routingprozessor, einen Backup-Routingprozessor und mehrere Leitungsschnittstellen zum Routen von Kommunikationen gemäß einer Routingdatenbank, die von den Routingprozessoren verwaltet wird. Als Reaktion auf die Erkennung eines Ausfalls des primären Routingprozessors erstellt der Backup-Routingprozessor eine Backup-Routingdatenbank aus Routen, die von Peer-Routingsystemen empfangen wurden, vergleicht Präfixe von Routen in der Backup-Routingdatenbank mit Präfixen in einer Präfixtabelle und sendet Routenrückzugsnachrichten an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind und nicht in der Backup-Routingdatenbank identifiziert wurden. Bei Erkennung eines Ausfalls des primären Routingprozessors wird der Backup-Routingprozessor angewiesen, einen Failover-Prozess durchzuführen, um die Durchführung von Routingmanagement durch den Backup-Prozessor zu ermöglichen. Der Failover-Prozess beinhaltet das Abrufen der Routen von Peer-Routingsystemen. Der Backup-Routingprozessor kann die Backup-Routingdatenbank mittels Löschen von redundanten Routen erstellen, indem er einen „Best-Path"-Algorithmus implementiert, um die redundanten Routen, die von Peer-Routingsystemen empfangen wurden, zu eliminieren.
  • Wenn eine Routenaktualisierungsnachricht von einem der Peer-Routingsysteme empfangen wird, die eine neue Route anzeigt, die von diesem Peer-Routingsystem gehandhabt wird, kann die neue Route zu der aktuellen Routingdatenbank hinzufügt werden. Als Teil des Checkpointing kann die Präfixtabelle mit einem Präfix der neuen Route aktualisiert werden, wenn das Präfix nicht bereits in der Präfixtabelle aufgeführt ist.
  • Kurzbeschreibung der Zeichnungen
  • Die angefügten Ansprüche sind auf einige der verschiedenen Ausführungsformen der vorliegenden Erfindung ausgerichtet. Die ausführliche Beschreibung bietet jedoch ein vollständigeres Verständnis der vorliegenden Erfindung, wenn sie in Verbindung mit den Figuren betrachtet wird, in denen gleiche Bezugsziffern sich auf ähnliche Elemente in den gesamten Figuren beziehen und:
  • 1 stellt ein Netz von Routingsystemen gemäß einer Ausführungsform der vorliegenden Erfindung dar;
  • 2 ist ein Beispiel einer Routingdatenbank gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 3 ist ein Funktionsblockdiagramm eines Routingsystems gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 4 ist ein Beispiel einer Präfixtabelle gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 5 ist ein Ablaufdiagramm eines Routingsystem-Synchronisierungsvorgangs gemäß einer Ausführungsform der vorliegenden Erfindung und
  • 6 ist ein Ablaufdiagramm eines Wiederherstellungsvorgangs gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Ausführliche Beschreibung
  • Die folgende Beschreibung und die Zeichnungen veranschaulichen spezifische Ausführungsformen der Erfindung ausreichend, um Fachmännern zu ermöglichen, sie auszuüben.
  • Andere Ausführungsformen können strukturelle, logische, elektrische, Verfahrens- und andere Veränderungen einbinden. Beispiele exemplifizieren lediglich mögliche Variationen. Der Schutzumfang der Erfindung umfasst den kompletten Umfang der Ansprüche.
  • In verschiedenen Ausführungsformen stellt die vorliegende Erfindung ein verbessertes Routingsystem und Routingverfahren bereit. In Ausführungsformen stellt die vorliegende Erfindung außerdem ein Routingsystem und -verfahren bereit, das das Ausmaß an Checkpointing reduziert, das während normalen Routingvorgängen erforderlich ist. In anderen Ausführungsformen stellt die vorliegende Erfindung ein Routingsystem und -verfahren bereit, das nach Ausfall eines primären Routingprozessors mit Peer-Routingsystemen neu synchronisiert. In anderen Ausführungsformen stellt die vorliegende Erfindung außerdem ein Routingsystem und -verfahren bereit, das ein Border-Gateway-Protokoll (BGP) unterstützt und nach Ausfall eines primären Routingprozessors mit Peer-Routingsystemen ohne unmäßiges Checkpointing neu synchronisiert. In anderen Ausführungsformen stellt die vorliegende Erfindung außerdem Bedarf an einem Routingsystem und -verfahren bereit, das nach Ausfall eines primären Routingprozessors mit Peer-Routingsystemen neu synchronisiert, ohne dass erforderlich ist, dass die Peer-Systeme ihre Software aktualisieren. In verschiedenen Ausführungsformen kann die vorliegende Erfindung das BGP zum Routen von IPv4-Protokoll-Paketen, IPv6-Protokoll-Paketen, CLNS-Paketen (CLNS = connectionless network service, verbindungsloser Betrieb) sowie gemäß anderen Protokollen konfigurierten Paketen unterstützen.
  • Ausführungsformen der vorliegenden Erfindung stellen ein transparentes Routingsystem-Failover bereit, indem während des normalen Betriebs Prüfpunkte von Routenpräfixen in einer Routenpräfixtabelle erstellt werden. Wenn einer Routingdatenbank neue Routen hinzugefügt werden, wird die Routenpräfixtabelle aktualisiert, wenn ein Präfix für die neue Route nicht in der Präfixtabelle ist. Nach Ausfall eines primären Routingprozessors wird das Routing mit Peer-Routingsystemen mittels Verwendung dieser Präfixtabelle synchronisiert. Bei Erkennung eines Ausfalls ruft ein Backup-Routingprozessor als Reaktion auf den Ausfall Routen von Peer-Routingsystemen ab und erstellt eine Backup-Routingdatenbank aus den Routen, die von Peer-Routingsystemen empfangen wurden. Der Backup-Routingprozessor sendet dann Routenankündigungsnachrichten an die Peer-Routingsysteme für Routen in der Backup-Routingtabelle. Der Backup-Routingprozessor vergleicht außerdem Präfixe von Routen in der Backup-Routingdatenbank mit Präfixen in der Präfixtabelle und sendet Routenrückzugsnachrichten an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind und nicht in der Backup-Routingdatenbank identifiziert wurden.
  • In einigen Ausführungsformen der vorliegenden Erfindung kann ein Border-Gateway-Protokoll (BGP) unterstützt werden. Ein Beispiel des BGP ist in der Schrift Request for Comments: 1771, als RFC 1771 bezeichnet, von der Network Working Group mit dem Titel „A Border Gateway Protocol 4 (BGP-4)", datiert mit März 1995, herausgegeben von Y. Rekhter und T. Li, beschrieben. Diese Überarbeitung von RFC 1771 und etwaige spätere Versionen und Überarbeitungen sind hierin durch Bezugnahme aufgenommen.
  • 1 stellt ein Netz von Routingsystemen gemäß einer Ausführungsform der vorliegenden Erfindung dar. Ein Netz 100 enthält mehrere Routingsysteme (RS) 102, die über Verbindungsstrecken 104 mit Peer-Routingsystemen kommunizieren. Peer-Routingsysteme beziehen sich auf Routingsysteme, auf die ein bestimmtes Routingsystem direkt zugreifen kann, ohne durch ein Zwischenroutingsystem routen zu müssen. Zum Beispiel können die Peer-Routingsysteme von Routingsystem 106 die Routingsysteme 108, 110, 112 und 114 beinhalten. Peer-Routingsysteme beinhalten außerdem Routingsysteme, die möglicherweise nicht direkt mittels einer Verbindungsstrecke gekoppelt sind, jedoch kommunizieren, als wenn sie direkt gekoppelt wären. 1 kann nur einen kleinen Teil des Netzes 100 darstellen, das viele Zehntausende oder mehr Routingsysteme 102 umfassen kann. Die Verbindungsstrecken 104 können eine beliebige Art von Kommunikationsverbindung umfassen, die für die Kommunikation von paketierten Daten zwischen Routingsystemen sorgt. Die Verbindungsstrecken 104 können eine beliebige Art von Kommunikationsverbindung beinhalten, einschließlich drahtloser Verbindungsstrecken, optischer Verbindungsstrecken, verdrahteter Verbindungsstrecken und anderer Verbindungsstrecken, die nicht hierin aufgezählt sind.
  • In einer Ausführungsform können mindestens einige der Routingsysteme 102 eine Paketweiterleitung in Übereinstimmung mit dem BGP durchführen. Gemäß dieser Ausführungsform werden zunächst Routingtabellen zwischen den Knoten (z. B. den Systemen 102) ausgetauscht und das Routing kann von jedem Knoten gemäß seiner lokal gespeicherten Routingdatenbank durchgeführt werden. Inkrementelle Aktualisierungen werden zwischen Knoten gesendet, um deren Routingdatenbanken zu aktualisieren. Jedes Routingsystem kann eine Routingdatenbank bewahren, die aktuelle Routinginformatio nen von ihren Peer-Systemen für die Dauer der Verbindung enthält. Keep-Alive-Nachrichten können periodisch gesendet werden, um dabei zu helfen, die Lebendigkeit der Verbindung sicherzustellen.
  • 2 ist ein Beispiel eines Teils einer Routingdatenbank gemäß einer Ausführungsform der vorliegenden Erfindung. Die Routingdatenbank 200 kann von einem Routingsystem aus Routinginformationen, die von Peer-Knoten empfangen wurden, erstellt werden. Die Routinginformationen, die von Peer-Knoten empfangen wurden, können Routingtabellen enthalten oder können in Form von Routingaktualisierungsnachrichten sein. Wie hierin verwendet, kann der Ausdruck „Routingdatenbank" eine beliebige Datenstruktur beinhalten, die zum Routen verwendet wird. In einigen Ausführungsformen, einschließlich der BGP-Ausführungsformen, kann sich der Ausdruck „Routingdatenbank" auf eine Routinginformationsdatenbank (RIB) beziehen. In den BGP-Ausführungsformen wird eine lokale Backup-RIB erstellt und dazu verwendet, eine Backup-Weiterleitungsinformationsdatenbank (forwarding information base, FIB) zu erstellen, in der die Daten auf Leitungskarten heruntergeladen werden können.
  • Die Routingdatenbank 200 kann eine Präfixspalte 202 beinhalten, die ein Präfix, wie ein IP-Adressen-Präfix, enthalten kann. Ein beispielhaftes IP-Adressen-Präfix ist „192.168.42/24", wobei „/24" eine Anzahl von Bits in dem Präfix bezeichnen kann. Dieses beispielhafte IP-Präfix kann ein Teil einer IP-Adresse sein. Dieses beispielhafte IP-Präfix 192.168.42/23 wäre ein 23-Bit-Präfix, das in sich selbst sowohl 192.168.42/24 als auch 192.168.43/24 sowie alle längeren Präfixe (d. h. 192.168.42.*/[25-32] und 192.168.43.*/[25-32]) beinhaltet. Eine andere Methode zum Schreiben von 192.168.42/24 ist mit einer „Netzmaske", die die signifikanten Bits anzeigt. Wenn sie auf diese Weise dargestellt wird, wäre sie 192.168.42.0 255.255.255.0, wobei das erste mit Punkten versehene Quad die Adresse und das zweite die Maske ist. Für eine IPv4-Adresse kann es bis zu 2^32 Präfixe geben. Identische Präfixe in Spalte 202 können mit mehr als einer Route oder einem Pfad zum Routen von Daten in Zusammenhang gebracht werden. Die Spalte 204 identifiziert eine Next-Hop-Adresse für eine bestimmte Route. Die Next-Hop-Adresse kann die IP-Adresse eines Grenzrouters sein, der als der nächste Hop zu einem in einer Aktualisierungsnachricht identifizierten Ziel verwendet werden sollte.
  • Einträge in der Routingdatenbank 200 können außerdem die Spalte 206 beinhalten, die ein AS-Pfad-Attribut (AS = autonomes System) für jede Route identifizieren kann. In einer Ausführungsform, die BGP-4 unterstützt, kann eine Menge erreichbarer Ziele durch ein einziges IP-Präfix ausgedrückt werden. Routen mit demselben Präfix in Spalte 202 können einen unterschiedlichen, in Spalte 206 identifizierten AS-Pfad aufweisen. Routingdatenbanken 200 können voneinander unterschieden werden, indem sie entweder einen unterschiedlichen, in Spalte 206 identifizierten AS-Pfad oder unterschiedliche, in Spalte 208 identifizierte Pfadattribute aufweisen. Pfadattribute können beispielsweise das Peer-System identifizieren, das eine bestimmte Route gesendet hat. In einigen Ausführungsformen (z. B. einigen Nicht-BGP-Ausführungsformen) kann die Routingdatenbank 200 eine höhere oder niedrigere Anzahl von Spalten für jede Route als die angezeigten beinhalten.
  • Ein Routingsystem, wie das Routingsystem 102 (1), kann die Routingdatenbank 200 aus Routinginformationen (z. B. Aktualisierungsnachrichten) erstellen, die von Peer-Routingsystemen empfangen werden können. Eine Aktualisierungsnachricht kann Routen identifizieren, die von einem Peer-Routingsystem unterstützt werden, und kann ein Präfix und einen AS-Pfad enthalten. Eine Aktualisierungsnachricht kann auch Routen identifizieren, die ein Peer-Routingsystem nicht mehr unterstützt. In diesem Fall kann eine Route in einem „Zurückgezogene Routen"-Feld einer Aktualisierungsnachricht angezeigt werden, die von dem Peer-System empfangen wird.
  • In einer Ausführungsform können Aktualisierungsnachrichten zum Übertragen von Routinginformationen zwischen Peer-Routingsystemen verwendet werden. Die Informationen in einem Aktualisierungspaket können dazu verwendet werden, einen Graph zu konstruieren, der die Beziehungen der verschiedenen autonomen Systeme beschreibt. Mittels Anwendung von Richtlinien können Routinginformationsschleifen und einige andere Anomalien erkannt und aus dem Routing zwischen autonomen Systemen gelöscht werden. In dieser Ausführungsform kann eine Aktualisierungsnachricht einem Peer eine oder mehrere durchführbare Routen ankündigen oder mehrere undurchführbare Routen aus dem Dienst genommen. Eine Aktualisierungsnachricht kann auch gleichzeitig eine oder mehrere durchführbare Routen ankündigen und mehrere undurchführbare Routen aus dem Dienst nehmen. Eine Aktualisierungsnachricht kann einen Kopfteil fester Länge enthalten und kann gegebenenfalls die anderen Felder enthalten, wie ein „Länge von undurchführbaren Routen"-Feld, ein „Zurückgezogene Routen"-Feld, ein „Pfadattributgesamtlänge"-Feld, ein „Pfadattribute"-Feld und ein „Vermittlungsschicht-Erreichbarkeitsinformationen"-Feld.
  • Das „Länge von undurchführbaren Routen"-Feld kann eine vorzeichenlose ganze Zahl von zwei Oktetten umfassen, die die Gesamtlänge des „Zurückgezogene Routen"-Felds in Oktetten anzeigt. Sein Wert kann auch ermöglichen, die Länge des „Vermittlungsschicht-Erreichbarkeitsinformationen"-Felds zu bestimmen. Ein Wert von Null kann anzeigen, dass keine Routen aus dem Dienst genommen sind und dass das „Zurückgezogene Routen"-Feld in dieser Aktualisierungsnachricht nicht vorliegt. Das „Zurückgezogene Routen"-Feld kann ein Feld variabler Länge sein, das eine Liste von Präfixen von IP-Adressen für die Routen enthält, die aus dem Dienst genommen werden. Jedes IP-Adressen-Präfix kann als ein 2-Tupel der Form <Länge, Präfix> kodiert werden. Das „Länge"-Feld kann die Länge in Bits des IP-Adressen-Präfixes anzeigen. Eine Länge von Null kann ein Präfix anzeigen, das auf alle IP-Adressen passt. Das Präfix-Feld kann IP-Adressen-Präfixe enthalten, auf die genügend nachlaufende Bits folgen, um zu bewirken, dass das Ende des Felds auf eine Oktettgrenze fällt. Die Pfadattributgesamtlänge kann eine vorzeichenlose ganze Zahl von zwei Oktetten sein, die dazu verwendet wird, die Gesamtlänge des „Pfadattribute"-Felds in Oktetten anzeigt. Ein Wert von Null kann anzeigen, dass in dieser Aktualisierungsnachricht kein „Vermittlungsschicht-Erreichbarkeitsinformationen"-Feld vorliegt. Die Pfadattribute können eine Sequenz variabler Länge von Pfadattributen sein. Pfadattribute können einen Ursprung enthalten, der den Ursprung der Pfadinformationen definiert. Der AS-Pfad ist ein Attribut, das sich aus einer Sequenz von AS-Pfadsegmenten zusammensetzen kann. Jedes AS-Pfadsegment kann von einem Tripel <Pfadsegmenttyp, Pfadsegmentlänge, Pfadsegmentwert> dargestellt werden. Obwohl Ausführungsformen der vorliegenden Erfindung hierin für die Unterstützung des BGP für IPv4-Pakete beschrieben werden, kann die vorliegende Erfindung in anderen Ausführungsformen das BGP zum Routen von IPv6-Protokoll-Paketen, CLNS-Paketen (CLNS = connectionless network service, verbindungsloser Betrieb) sowie gemäß anderen Protokollen konfigurierten Paketen unterstützen. In einer Ausführungsform müssen Aktualisierungsnachrichten nur eine zurückgezogene Route durch das Präfix identifizieren.
  • 3 ist ein Funktionsblockdiagramm eines Routingsystems gemäß einer Ausführungsform der vorliegenden Erfindung. Das Routingsystem 300 kann das Routing zwischen Peer-Routingsystemen wie hierin beschrieben durchführen. Das Routingsystem 300 kann zur Verwendung als eines der Routingsysteme 102 (1) geeignet sein, obwohl andere Routingsysteme ebenfalls geeignet sind. Das Routingsystem 300 kann einen primären Routingprozessor 302, einen Backup-Routingprozessor 304 und mehrere Leitungsschnittstellen 306 zum Routen von Kommunikationen, die über Verbindungsstrecken 308 empfangen wurden, gemäß einer Routingdatenbank, die von den Routingprozessoren verwaltet wird, beinhalten. Die Routingdatenbank 200 (2) ist ein Beispiel einer geeigneten Routingdatenbank zur Verwendung durch Routingprozessoren. Das Routingsystem 300 kann ein transparentes Failover bereitstellen, indem während des normalen Betriebs Prüfpunkte von Routenpräfixen erstellt werden, indem eine Routenpräfixtabelle aufrechterhalten wird. Ein Beispiel einer geeigneten Präfixtabelle ist in 4 dargestellt. Als Reaktion auf die Erkennung eines Ausfalls eines primären Routingprozessors 302 erstellt der Backup-Routingprozessor 304 eine Backup-Routingdatenbank (z. B. regenerierte Routingdatenbank) aus Routen, die von Peer-Routingsystemen empfangen wurden. Der Backup-Routingprozes sor 304 kann auch Routenankündigungsnachrichten an Peer-Routingsysteme für Routen, die in der Backup-Routingdatenbank identifiziert wurden, senden. Der Backup-Routingprozessor 304 kann auch Präfixe von Routen in der Backup-Routingdatenbank mit Präfixen in einer Präfixtabelle vergleichen und kann Routenrückzugsnachrichten an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind und nicht in der Backup-Routingdatenbank identifiziert wurden, senden. In einer BGP-Ausführungsform können eine Routenankündigungsnachricht und eine Routenrückzugsnachricht beide berücksichtigte Formen einer BGP-Aktualisierungsnachricht sein.
  • In einer Ausführungsform kann der Backup-Routingprozessor 304 bei Erkennung eines Ausfalls des primären Routingprozessors 302 angewiesen werden, einen Failover-Prozess durchzuführen, um die Durchführung von Routingmanagement durch den Backup-Prozessor 304 zu ermöglichen. Der Failover-Prozess kann das Abrufen der Routen von Peer-Routingsystemen beinhalten. Der Backup-Routingprozessor 304 kann eine Backup-Routingdatenbank mittels Löschen von redundanten Routen erstellen, indem er einen „Best-Path"-Algorithmus implementiert, um die redundanten Routen, die von Peer-Routingsystemen empfangen wurden, zu eliminieren. Jedes Routingsystem 302, 304 kann mindestens ein Verarbeitungselement und einen zugehörigen Speicher enthalten. In den BGP-Ausführungsformen wird eine lokale Backup-RIB erstellt und dazu verwendet, eine Backup-Weiterleitungsinformationsdatenbank (forwarding information base, FIB) zu erstellen, in der die Daten auf Leitungskarten heruntergeladen werden können.
  • Während normaler Vorgänge kann der gegenwärtig aktive Routingprozessor (entweder Routingprozessor 302 oder 304) eine Routenaktualisierungsnachricht von einem der Peer-Routingsysteme empfangen, die eine neue Route anzeigt, die von dem Peer-Routingsystem gehandhabt wird. Der gegenwärtig aktive Routingprozessor kann die neue Route zu einer aktuellen Routingdatenbank hinzufügen. Der gegenwärtig aktive Routingprozessor kann auch einen Prüfpunkt des Präfixes erstellen, indem er die Präfixtabelle mit einem Präfix der neuen Route aktualisiert, wenn das Präfix nicht in der Präfixtabelle aufgeführt ist. Die Präfixtabelle kann in einem Speicher des Backup-Routingverarbeitungssystems gespeichert sein.
  • In einer Ausführungsform, wenn der gegenwärtig aktive Routingprozessor eine Routenaktualisierungsnachricht von einem der Peer-Routingsysteme empfängt, die eine zurückzuziehende Route identifiziert, kann die Routenaktualisierungsnachricht eine zurückgezogene Route anzeigen, die nicht mehr von diesem Peer-Routingsystem gehandhabt wird. Der gegenwärtig aktive Routingprozessor kann die zurückgezogene Route aus der aktuellen Routingdatenbank löschen. Der gegenwärtig aktive Routingprozessor kann auch ein Präfix der zurückgezogenen Route aus der Präfixtabelle löschen, wenn die aktuelle Routingdatenbank keine Routen mit diesem bestimmten Präfix enthält.
  • Die Leitungsschnittstellen 306 routen Pakete gemäß der Routingdatenbank, die von dem gegenwärtig aktiven Routingprozessor über einen Kommunikationspfad 310, bei dem es sich um einen Bus handeln kann, bereitgestellt werden kann. In einer Ausführungsform, nachdem die Routingdatenbank durch den aktiven Routingprozessor aktualisiert wurde, kann die Aktualisierung den Leitungsschnittstellen 306 bereitge stellt werden. Während Failover-Vorgängen können die Leitungsschnittstellen 306 fortfahren, die Paketweiterleitung gemäß der vor kürzester Zeit empfangenen Routingdatenbank durchzuführen, bis die regenerierte Routingdatenbank empfangen wird. In einer Ausführungsform kann ein Systemmanager 312 dazu verwendet werden, einen Ausfall des primären Routingprozessors 302 auf viele verschiedene Weisen zu erkennen, einschließlich mittels Überwachen von Signalen, wie Heartbeat-Nachrichten, vom Routingprozessor.
  • Obwohl System 300 als mehrere separate Funktionselemente aufweisend dargestellt ist, können ein oder mehrere der Funktionselemente kombiniert und durch Kombinationen von durch Software konfigurierten Elementen, wie Prozessoren, einschließlich digitalen Signalprozessoren (DSPs), und/oder anderen Hardwareelementen, implementiert werden. Sofern nicht spezifisch anders angegeben, können sich Ausdrücke wie Verarbeitung, Datenverarbeitung, Berechnung, Bestimmung, Anzeige oder dergleichen auf eine Aktion und/oder einen Prozess eines oder mehrerer Verarbeitungs- oder Datenverarbeitungssysteme oder ähnlicher Einrichtungen beziehen, die Daten, die als physikalische (z. B. elektronische) Mengen in den Verzeichnissen und dem Speicher eines Verarbeitungssystems dargestellt sind, verarbeiten und in andere Daten, die in ähnlicher Weise als physikalische Mengen in den Verzeichnissen oder Speichern des Verarbeitungssystems oder anderen derartigen Informationsspeicher-, -übermittlungs- oder -anzeigeeinrichtungen dargestellt sind, umwandeln können. Des Weiteren, wie hierin verwendet, beinhaltet eine Datenverarbeitungseinrichtung ein oder mehrere Verarbeitungselemente, die mit rechnerlesbarem Speicher gekoppelt sind, bei dem es sich um einen flüchtigen oder einen nichtflüchtigen Speicher oder eine Kombination davon handeln kann. Darüber hinaus, wie hierin verwendet, beziehen sich Daten auf ein oder mehrere Speicherdatenelemente, die Teile von Dateien, eine einzige Datei, einen Dateibereich, eine Datenbank, eine Speichereinrichtungspartition, einen Datenträger, Mengen von Datenträgern und dergleichen beinhalten können. Die Daten müssen sich nicht auf einer einzigen Speichereinrichtung befinden und können sich über mehrere Speichereinrichtungen erstrecken.
  • 4 ist ein Beispiel einer Präfixtabelle gemäß einer Ausführungsform der vorliegenden Erfindung. Die Präfixtabelle 400 kann eine Liste von IP-Adressen-Präfixen 402 für Routen enthalten, die von einem Routingsystem, wie dem Routingsystem 300 (3), unterstützt werden. Die Präfixtabelle 300 wird von dem primären Routingprozessor verwaltet und ein Backup-Routingprozessor kann zumindest nach einem Ausfall des primären Routingprozessors auf sie zugreifen. In einer Ausführungsform müssen Präfixe der Tabelle 400 nur hinzugefügt werden, wenn der Routingdatenbank eine neue Route hinzugefügt wird, die ein Präfix aufweist, das nicht bereits in der Präfixtabelle aufgeführt ist. Zudem können Präfixe aus der Tabelle 400 gelöscht werden, wenn eine Route aus der Routingdatenbank zurückgezogen wird und keine weiteren Routen mit demselben Präfix in der Routingdatenbank enthalten sind. Demgemäß kann die Verwendung einer Präfixtabelle das Ausmaß an Checkpointing, das zur Neusynchronisierung mit Peer-Routingsystemen erforderlich ist, erheblich reduzieren. Von einem Präfix wird ein Prüfpunkt in der Tabelle 400 erstellt, bevor die entsprechende Route bzw. die entsprechenden Routen Peer-Systemen angekündigt werden. Andererseits müssen Routen nicht unbedingt zurückgezogen werden, bevor ein entsprechendes Präfix aus der Tabelle 400 gelöscht wird.
  • 5 ist ein Ablaufdiagramm eines Routingsystem-Synchronisierungsvorgangs gemäß einer Ausführungsform der vorliegenden Erfindung. Der Synchronisierungsvorgang 500 kann von einem Routingsystem, wie System 300 von 3, implementiert werden, obwohl andere Routingsysteme zum Implementieren des Vorgangs 500 geeignet sein können. Im Allgemeinen kann der Vorgang 500 Peer-Routingsysteme mittels Anwendung von Checkpointing synchronisieren und in einem im Wesentlichen transparenten Failover resultieren. In einer Ausführungsform kann der Routingsystem-Durchführungsvorgang 500 ein Border-Gateway-Protokoll, wie das oben erörterte BGP, unterstützen, obwohl dies keine Bedingung ist, und kann ein transparentes BGP-Failover bereitstellen. In einer Ausführungsform kann der Vorgang 500 in Kombination mit einer TCP-Sitzungswiederherstellungstechnik implementiert werden.
  • Der Vorgang 500 kann als ein Vorgang angesehen werden, der während normaler Vorgänge durchgeführt wird, was Checkpointing und Routing beinhaltet. Nach einem Ausfall kann ein Wiederherstellungsvorgang, wie der Vorgang 600 (6), durchgeführt werden, der ein erneutes Beziehen und eine Neuverteilung von Routen beinhaltet.
  • In Vorgang 502 kann das Routingsystem Kommunikationen gemäß einer oder mehrerer Routingdatenbanken routen. In einer Ausführungsform kann das Routingsystem mehrere Leitungsschnittstellen, wie Schnittstellenkarten, für bestimmte Kommunikationsstrecken beinhalten. Die Leitungsschnittstellen können eine aktuelle Routingdatenbank, wie die Routingdatenbank 200 (2), zur Verwendung beim Routen von Kommunikationen speichern. Die aktuelle Routingdatenbank kann von einem aktiven Routingprozessor bereitgestellt werden, der unter anderem die Routingdatenbank verwaltet.
  • In Vorgang 504 kann eine neue Route von einem Peer-Routingsystem empfangen werden. In einer Ausführungsform kann die neue Route als Teil einer Routenaktualisierungsnachricht empfangen werden, die in Übereinstimmung mit dem BGP sein kann. Wenn eine neue Route empfangen wird, kann der aktive Routingprozessor die aktuelle Routingdatenbank in Vorgang 506 aktualisieren. Wenn in Vorgang 504 keine neue Route empfangen wird, kann Vorgang 502 wiederholt werden.
  • In Vorgang 508 wird ein Prüfpunkt der neuen Route erstellt. In einer Ausführungsform beinhaltet der Vorgang 508 das Hinzufügen eines Präfixes für die neue Route zu einer Präfixtabelle, auf die ein Backup-Routingprozessor zugreifen kann. Der Backup-Routingprozessor kann vorzugsweise zumindest nach einem Ausfall des primären Routingprozessors auf die Präfixtabelle zugreifen. Die Präfixtabelle 400 (4) ist ein Beispiel einer geeigneten Präfixtabelle, die von dem Routingsystem eingesetzt wird. Das Präfix für eine bestimmte Route wird der Präfixtabelle hinzugefügt, wenn die empfangene Route für ein Präfix ist, das nicht zuvor in der Präfixtabelle dargestellt wurde. Da eine Routingdatenbank viele alternative Routen für dasselbe Präfix enthalten kann, kann eine erhebliche Reduzierung des Checkpointing im Vergleich zu einem herkömmlichen Verfahren, das von jeder Route einen Prüfpunkt erstellt, erzielt werden. In einer Ausführungsform wird nur von dem Präfix selbst ein Prüfpunkt erstellt (z. B. fünf Byte oder weniger für eine IPv4-Route).
  • In einer Ausführungsform, wenn in Vorgang 508 der aktuellen Routingdatenbank eine Route hinzugefügt wird, kann der aktive Routingprozessor Leitungsschnittstellen, wie die Leitungsschnittstellen 306 (3), mit aktualisierten Routinginformationen versorgen. Zudem, wenn der aktuellen Routingdatenbank eine neue Route hinzugefügt wird, können Peer-Routingsystemen mitgeteilt werden, dass das Routingsystem das Routing gemäß der empfangenen Route durchgeführt werden wird. In einer BGP-Ausführungsform sowie in einigen anderen Ausführungsformen wird Checkpointing durchgeführt, bevor eine entsprechende Route Peers angekündigt wird. Der Vorgang 500 kann auch das Löschen von Routen als Reaktion auf Routenaktualisierungsnachrichten bezüglich des Zurückziehens einer oder mehrerer Routen, die von Peer-Routingsystemen empfangen werden, beinhalten. In diesem Fall kann Vorgang 508 das Löschen von Präfixen aus der Präfixtabelle beinhalten, wenn für ein bestimmtes Präfix keine Routen unterstützt werden.
  • In Vorgang 510 können Aktualisierungsnachrichten an Peer-Routingsysteme gesendet werden. Die Aktualisierungsnachrichten können Peer-Routingsysteme über Routen, die jetzt von dem derzeitigen Routingsystem gehandhabt werden, zusätzlich zu Routen, die nicht mehr von dem derzeitigen Routingsystem gehandhabt werden, informieren. In einer BGP-Ausführungsform kann Vorgang 510 das Senden von Routenaktualisierungsnachrichten in Übereinstimmung mit dem BGP beinhalten.
  • Während der Durchführung von Vorgang 500 können Signale von dem gegenwärtig aktiven (d. h. primären) Routingprozessor überwacht werden, um einen Ausfall zu erkennen. Zum Beispiel können Heartbeat-Nachrichten von dem aktiven Routingprozessor überwacht werden, um einen Ausfall zu erkennen. Ein Ausfall kann zu einem beliebigen Punkt während der Durchführung von Vorgang 500 erkannt werden. Wenn ein Ausfall des gegenwärtig aktiven Routingprozessors erkannt wird, wird ein Wiederherstellungsvorgang eingeleitet, bei dem ein Backup-Prozessor Routen von Peer-Routingsystemen abruft, um eine Backup-Routingdatenbank zu erstellen. Wenn ein Ausfall des gegenwärtig aktiven Routingprozessors nicht erkannt wird, werden die Vorgänge 502 bis 510 wiederholt und das Routingsystem kann seine normalen Vorgänge fortsetzen, einschließlich des Routens von Paketen und Erstellens von Prüfpunkten von Präfixen von neuen Routen wie oben beschrieben.
  • Obwohl die einzelnen Vorgänge von Vorgang 500 als separate Vorgänge dargestellt und beschrieben werden, können einer oder mehrere der einzelnen Vorgänge gleichzeitig durchgeführt werden und nichts macht erforderlich, dass die Vorgänge in der dargestellten Reihenfolge durchgeführt werden.
  • 6 ist ein Ablaufdiagramm eines Wiederherstellungsvorgangs gemäß einer Ausführungsform der vorliegenden Erfindung. Der Wiederherstellungsvorgang 600 kann zur Verwendung geeignet sein, wenn ein Ausfall des gegenwärtig aktiven (d. h. primären) Routingprozessors erkannt wird. Der Vorgang 600 kann als ein Failover-Prozess angesehen werden, der einem Backup-Prozessor ermöglicht, Routingmanagement durchzuführen. Der Vorgang 600 kann zur Verwendung geeignet sein, wenn ein Ausfall während der Durchführung des Vorgangs 500 (5) erkannt wird. Unter anderem ruft ein Backup-Prozessor während der Durchführung des Vorgangs 500 Routen von Peer-Routingsystemen ab, um eine neue Routingdatenbank zu erstellen. In Vorgang 602 ruft der Backup-Prozessor Routen von Peer-Routingsystemen ab und kann in einer BGP-Ausführungsform Routenauffrischungs-/-anforderungsnachrichten an die Peer-Systeme senden. Als Reaktion auf die Anforderung von Routen kann der Backup-Routingprozessor die Routen des Peers von den Peer-Systemen empfangen, die als Teil von Routenaktualisierungsnachrichten empfangen werden können. Vorgang 602 kann auch das Bestimmen beinhalten, wann alle oder genug Peer-Routen empfangen wurden, das durch eine Heuristik (z. B. Empfangen einer Keep-Alive-Nachricht oder einer leeren Aktualisierungsnachricht) implementiert werden kann. Es kann auch eine Zeitabschaltung in dem Fall verwendet werden, in dem die Keep-Alive- oder Aktualisierungsnachrichten nicht von einem bestimmten Peer innerhalb einer vorbestimmten Zeitspanne als Reaktion auf das Abrufen von Routen empfangen werden.
  • In Vorgang 604 kann eine neue Routingdatenbank aus den Routen erstellt werden, die von den Peer-Routingsystemen empfangen wurden. Redundante Routen, die von den Peer-Routingsystemen empfangen wurden, können aus der Datenbank gelöscht werden. In einer Ausführungsform kann der Vorgang 604 einen „Best-Path"-Algorithmus implementieren, um Routen mit redundanten Präfixen, die von den Peer-Routingsystemen empfangen wurden, zu eliminieren. In BGP-Ausführungsformen kann der Vorgang 604 die lokale Backup-RIB dazu verwenden, eine Backup-Weiterleitungsinformationsdatenbank (forwarding Information base, FIB) zu erstellen. Andere Verfahren zum Erstellen einer Routingdatenbank können ebenfalls für verschiedene Ausführungsformen geeignet sein.
  • In Vorgang 606 werden die neuen Routen an die Peer-Routingsysteme gesendet (z. B. diesen angekündigt). Gemäß einer BGP-Ausführungsform werden die neuen Routen als Teil von BGP-Aktualisierungsnachrichten gesendet. Diese Aktualisierung kann Peer-Systemen mitteilen, welche Routen von dem Routingsystem unterstützt werden, das die neuen Routen sendet. In Vorgang 608 werden die Präfixe, von denen in der Präfixtabelle ein Prüfpunkt erstellt wurde, mit Präfixen von Routen in der neuen Routingdatenbank verglichen, die in Vorgang 604 erstellt wurde. Wenn Vorgang 608 ein Präfix in der Präfixtabelle identifiziert, das nicht mit einer beliebigen Route in der neuen Routingdatenbank zusammenhängt, kann der Vorgang 610 eine Rückzugsnachricht an Peer-Routingsysteme senden, die anfordert, dass die Peer-Routingsysteme Routen mit dieser Präfix zurückziehen. Der Vorgang 610 zieht Routen zurück, die zuvor als von dem ausgefallenen Routingprozessor gehandhabt angekündigt wurden, und die Routen sind nicht mehr in der Routingdatenbank. In einer Ausführungsform kann eine BGP-Aktualisierungsnachricht (die anzeigt, ein Präfix zurückzuziehen) für jedes in der Präfixtabelle vorliegende Präfix gesendet werden, das nicht in der neuen Routingdatenbank (d. h. der wiederhergestellten Datenbank) vorliegt. Beim Abschluss von Vorgang 610 sollten die Zustände der Peer-Routingsysteme mit dem Zustand des derzeitigen Routingsystems synchronisiert werden.
  • In Vorgang 612 kann die von dem Backup-Routingprozessor aufrechterhaltene Präfixtabelle aktualisiert werden, wobei die in Vorgang 610 identifizierten Präfixe gelöscht werden können. Der Backup-Routingprozessor kann jetzt als der primäre oder aktive Routingprozessor angesehen werden und kann den Vorgang 614 durchführen. In Vorgang 614 kann der jetzt aktive Routingprozessor das Routing und die Routensynchronisierung unter Einsatz der neuen (d. h. wiederhergestellten) Routingdatenbank und Präfixen, von denen ein Prüfpunkt erstellt wurde, durchführen, wie beispielsweise mittels Vorgang 500 (5) beschrieben. In einer Ausführungsform kann der ausgefallene Routingprozessor beispielsweise ersetzt, repariert oder wieder in Dienst gestellt (z. B. neu gestartet) werden. Er kann dann als ein Backup-Routingprozessor dienen.
  • Obwohl die einzelnen Vorgänge von Vorgang 600 als separate Vorgänge dargestellt und beschrieben werden, können einer oder mehrere der einzelnen Vorgänge gleichzeitig durchgeführt werden und nichts macht erforderlich, dass die Vorgänge in der dargestellten Reihenfolge durchgeführt werden. In einigen Ausführungsformen sollte die Hinzufügung von Präfixen zu der Präfixtabelle (d. h. der Prüfpunkt) jedoch abgeschlossen werden, bevor Peer-Routingsysteme über Routen informiert werden, die diesen Präfixen entsprechen.
  • In mehreren anderen Ausführungsformen stellt die vorliegende Erfindung einen Gegenstand bereit, der einen Speicherdatenträger umfasst, auf dem Anweisungen gespeichert sind, die, wenn sie auf einer digitalen Datenverarbeitungsplattform ausgeführt werden, im Abrufen von Routen von Peer-Routingsystemen als Reaktion auf den Ausfall, Erstellen einer Backup-Routingdatenbank aus den Routen, die von Peer-Routingsystemen empfangen wurden, Vergleichen von Präfixen von Routen in der Backup-Routingdatenbank mit Präfixen in einer Präfixtabelle und Senden von Routenrückzugsnachrichten an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind und nicht in der Backup-Routingdatenbank identifiziert wurden, resultieren. Der Gegenstand kann beispielsweise eine Computerdiskette (z. B. Magnetplatte oder CD) oder Computerspeicher sein und der Speicherdatenträger kann ein beliebiger rechnerlesbarer Datenträger sein, einschließlich eines magnetischen oder optischen Datenträgers, der zum Speichern von digitalen Informationen geeignet ist.
  • Folglich wurden ein System und ein Verfahren zum Schalten von Routingmanagement zu einem Backup-Routingprozessor bei Ausfall eines primären Routingprozessors beschrieben. Das System und das Verfahren können ein im Wesentlichen transparentes Failover mittels Verwendung von Routenpräfixen, von denen Prüfpunkte erstellt wurden, bereitstellen.
  • Die vorstehende Beschreibung von spezifischen Ausführungsformen offenbart die allgemeine Beschaffenheit der Erfindung ausreichend, so dass andere sie unter Anwendung geläufigen Wissens leicht für verschiedene Anwendungen modifizieren und/oder anpassen können, ohne vom allgemeinen Konzept abzuweichen. Folglich befinden sich solche Anpassungen und Modifizierungen innerhalb der Bedeutung und des Bereichs von Äquivalenten der offenbarten Ausführungsformen. Die hierin eingesetzte Phraseologie oder Terminologie ist zum Zwecke der Beschreibung und nicht zum Zwecke der Einschränkung. Demgemäß umspannt die Erfindung alle derartigen Alternativen, Modifizierungen, Äquivalente und Variationen, wie sie in die angefügten Ansprüche fallen.

Claims (28)

  1. Verfahren zum Schalten von Routingmanagement zu einem Backup-Routingprozessor bei Ausfall eines primären Routingprozessors, wobei das Verfahren Folgendes umfasst: Erstellen einer Backup-Routingdatenbank aus Routen, die von Peer-Routingsystemen empfangen und als Reaktion auf den Ausfall angefordert wurden; Vergleichen von Präfixen von Routen in der Backup-Routingdatenbank mit Präfixen in einer Präfixtabelle und Senden von Routenrückzugsnachrichten an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind und nicht in der Backup-Routingdatenbank identifiziert wurden, wobei die Präfixtabelle Präfixe von Routen enthält, die vom primären Routingprozessor vor dem Ausfall unterstützt wurden.
  2. Verfahren nach Anspruch 1, das weiterhin Folgendes umfasst: Abrufen von Routen von Peer-Routingsystemen als Reaktion auf den Ausfall und Senden von Routenankündigungsnachrichten an die Peer-Routingsysteme für die Routen, die in der Backup- Routingtabelle identifiziert wurden.
  3. Verfahren nach Anspruch 1, wobei der primäre Routingprozessor vor Erkennung des Ausfalls eine ursprüngliche Routingdatenbank zum Durchführen von Routing verwendet und der primäre Routingprozessor die Präfixtabelle aktualisiert, um Präfixe von Routen aus der ursprünglichen Routingdatenbank aufzuführen, wobei die Präfixtabelle in einem Speicher gespeichert ist, auf den der Backup-Routingprozessor zumindest nach dem Ausfall des primären Routingprozessors zugreifen kann.
  4. Verfahren nach Anspruch 1, wobei der Backup-Routingprozessor bei Erkennung eines Ausfalls des primären Routingprozessors angewiesen wird, einen Failover-Prozess durchzuführen, um die Durchführung von Routingmanagement durch den Backup-Prozessor zu ermöglichen, wobei der Failover-Prozess das Senden von Routenauffrischungsnachrichten an die Peer-Routingsysteme, das Empfangen der Routen von den Peer-Routingsystemen, das Erstellen der Backup-Routingdatenbank aus den empfangenen Routen, das Vergleichen von Präfixen von Routen in der Backup-Routingdatenbank mit Präfixen in der Präfixtabelle und das Senden von Routenrückzugsnachrichten an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind, jedoch nicht in der Backup-Routingdatenbank identifiziert wurden, beinhaltet.
  5. Verfahren nach Anspruch 2, wobei das Abrufen von Routen bei Erkennung eines Ausfalls des primären Routingprozessors Folgendes umfasst: Senden von Routenauffrischungsnachrichten an die Peer- Routingsysteme und Empfangen von Routen von den Peer-Routingsystemen als Reaktion auf die Routenauffrischungsnachrichten, wobei die Routenauffrischungsnachrichten Routen anfordern, die von den Peer-Routingsystemen unterstützt werden.
  6. Verfahren nach Anspruch 1, wobei das Erstellen der Backup-Routingdatenbank aus den empfangenen Routen das Löschen von redundanten Routen, die von den Peer-Routingsystemen empfangen wurden, umfasst.
  7. Verfahren nach Anspruch 6, wobei das Löschen von redundanten Routen das Implementieren eines „Best-Path"-Algorithmus, um die redundanten Routen zu eliminieren, beinhaltet.
  8. Verfahren nach Anspruch 1, wobei mehrere Leitungsschnittstellen Kommunikationen gemäß einer ursprünglichen Routingdatenbank routen, wobei die ursprüngliche Routingdatenbank nach Ausfall des primären Routingprozessors durch die Backup-Routingdatenbank ersetzt wird.
  9. Verfahren nach Anspruch 1, wobei der primäre Routingprozessor und der Backup-Routingprozessor Teil eines Routingsystems sind und wobei die Peer-Routingsysteme als Reaktion auf die vom Routingsystem gesendeten Routenrückzugsnachrichten Routen aus der aktuellen Routingdatenbank dieser löschen, die mit Routen zusammenhängen, die vom Routingsystem gehandhabt werden.
  10. Verfahren nach Anspruch 9, wobei das Routingsystem ein Border-Gateway-Protokoll (BGP) für das Routing verwendet, wobei Routenauffrischungsnachrichten und die Routenrückzugsnachrichten in Übereinstimmung mit dem BGP sind und wobei, nachdem das Peer-Routingsystem die doppelten Präfixe gelöscht hat, das Routingsystem im Wesentlichen mit den Peer-Routingsystemen synchronisiert ist.
  11. Verfahren nach Anspruch 3, das weiterhin Folgendes umfasst: Empfangen einer Routenaktualisierungsnachricht von mindestens einem der Peer-Routingsysteme, die eine neue Route anzeigt, die von dem mindestens einen Peer-Routingsystem gehandhabt wird; Hinzufügen der neuen Route zu einer aktuellen Routingdatenbank und Aktualisieren der Präfixtabelle mit einem Präfix der neuen Route, wenn das Präfix nicht in der Präfixtabelle aufgeführt ist.
  12. Verfahren nach Anspruch 3, das weiterhin Folgendes umfasst: Empfangen einer Routenrückzugsnachricht von mindestens einem der Peer-Routingsysteme, wobei die Routenrückzugsnachricht eine zurückgezogene Route anzeigt, die nicht mehr von dem mindestens einen Peer-Routingsystem gehandhabt wird; Löschen der zurückgezogenen Route aus einer aktuellen Routingdatenbank und Löschen eines Präfixes der zurückgezogenen Route aus der Präfixtabelle, wenn die aktuelle Routingdatenbank keine Routen mit dem Präfix aufführt.
  13. Routingsystem, das Folgendes umfasst: einen primären Routingprozessor; einen Backup-Routingprozessor und mehrere Leitungsschnittstellen zum Routen von Kommunikationen gemäß einer Routingdatenbank, die von den Routingprozessoren verwaltet wird, wobei der Backup-Routingprozessor als Reaktion auf einen Ausfall des primären Routingprozessors eine Backup-Routingdatenbank aus Routen, die von Peer-Routingsystemen empfangen wurden, erstellt, Präfixe von Routen in der Backup-Routingdatenbank mit Präfixen in einer Präfixtabelle vergleicht und Routenrückzugsnachrichten an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind und nicht in der Backup-Routingdatenbank identifiziert wurden, sendet, wobei die Präfixtabelle Präfixe von Routen enthält, die vom primären Routingprozessor vor dem Ausfall unterstützt wurden.
  14. System nach Anspruch 13, wobei der Backup-Routingprozessor bei Erkennung eines Ausfalls des primären Routingprozessors angewiesen wird, einen Failover-Prozess durchzuführen, um die Durchführung von Routingmanagement durch den Backup-Prozessor zu ermöglichen, wobei der Failover-Prozess das Abrufen der Routen von Peer-Routingsystemen beinhaltet und wobei der Backup-Routingprozessor die Backup-Routingdatenbank mittels Löschen von redundanten Routen erstellt, indem er einen „Best-Path"-Algorithmus implementiert, um die redundanten Routen, die von Peer-Routingsystemen empfangen wurden, zu eliminieren.
  15. System nach Anspruch 13, wobei ein gegenwärtig aktiver Routingprozessor eine Routenaktualisierungsnachricht von einem der Peer-Routingsysteme empfängt, die eine neue Route anzeigt, die von dem einen Peer-Routingsystem gehandhabt wird, die neue Route zu einer aktuellen Routingdatenbank hinzufügt und die Präfixtabelle mit einem Präfix der neuen Route aktualisiert, wenn das Präfix nicht in der Präfixtabelle aufgeführt ist, wobei der gegenwärtig aktive Routingprozessor vor dem Ausfall der primäre Prozessor ist und der gegenwärtig aktive Routingprozessor nach dem Ausfall der Backup-Prozessor ist.
  16. System nach Anspruch 15, wobei der gegenwärtig aktive Routingprozessor eine Routenrückzugsnachricht von einem der Peer-Routingsysteme empfängt, wobei die Routenrückzugsnachricht eine zurückgezogene Route anzeigt, die nicht mehr von dem einen Peer-Routingsystem gehandhabt wird, die zurückgezogene Route aus einer aktuellen Routingdatenbank löscht und ein Präfix der zurückgezogenen Route aus der Präfixtabelle löscht, wenn die aktuelle Routingdatenbank keine Routen mit dem Präfix aufführt.
  17. Vorrichtung zum Schalten von Routingmanagement zu einem Backup-Routingprozessor bei Ausfall eines primären Routingprozessors, wobei die Vorrichtung Folgendes umfasst: Mittel zum Erstellen einer Backup-Routingdatenbank aus Routen, die von Peer-Routingsystemen empfangen und als Reaktion auf den Ausfall angefordert wurden; Mittel zum Vergleichen von Präfixen von Routen in der Backup-Routingdatenbank mit Präfixen in einer Präfixtabelle und Mittel zum Senden von Routenrückzugsnachrichten an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind und nicht in der Backup-Routingdatenbank identifiziert wurden, wobei die Präfixtabelle Präfixe von Routen enthält, die vom primären Routingprozessor vor dem Ausfall unterstützt wurden.
  18. Vorrichtung nach Anspruch 17, die weiterhin Folgendes umfasst: Mittel zum Abrufen von Routen von Peer-Routingsystemen als Reaktion auf den Ausfall und Mittel zum Senden von Routenankündigungsnachrichten an die Peer-Routingsysteme für die Routen, die in der Backup-Routingtabelle identifiziert wurden.
  19. Vorrichtung nach Anspruch 17, wobei der primäre Routingprozessor vor Erkennung des Ausfalls Mittel zum Verwenden einer ursprünglichen Routingdatenbank zum Durch führen von Routing enthält und der primäre Routingprozessor Mittel zum Aktualisieren der Präfixtabelle enthält, um Präfixe von Routen aus der ursprünglichen Routingdatenbank aufzuführen, wobei die Präfixtabelle in einem Speicher gespeichert ist, auf den der Backup-Routingprozessor zumindest nach dem Ausfall des primären Routingprozessors zugreifen kann.
  20. Vorrichtung nach Anspruch 17, wobei der Backup-Routingprozessor bei Erkennung eines Ausfalls des primären Routingprozessors Mittel zum Durchführen eines Failover-Prozesses enthält, um die Durchführung von Routingmanagement durch den Backup-Prozessor zu ermöglichen, wobei die Mittel zum Durchführen des Failover-Prozesses Mittel zum Senden von Routenauffrischungsnachrichten an die Peer-Routingsysteme, Mittel zum Empfangen der Routen von den Peer-Routingsystemen, Mittel zum Erstellen der Backup-Routingdatenbank aus den empfangenen Routen, Mittel zum Vergleichen von Präfixen von Routen in der Backup-Routingdatenbank mit Präfixen in der Präfixtabelle und Mittel zum Senden von Routenrückzugsnachrichten an die Peer-Routingsysteme für Routen mit Präfixen, die in der Präfixtabelle aufgeführt sind, jedoch nicht in der Backup-Routingdatenbank identifiziert wurden, enthalten.
  21. Vorrichtung nach Anspruch 18, wobei das Mittel zum Abrufen von Routen Folgendes umfasst: Mittel zum Senden von Routenauffrischungsnachrichten an die Peer-Routingsysteme und Mittel zum Empfangen von Routen von den Peer-Routingsystemen als Reaktion auf die Routenauffrischungsnachrichten, wobei die Routenauffrischungsnachrichten Routen anfordern, die von den Peer-Routingsystemen unterstützt werden.
  22. Vorrichtung nach Anspruch 17, wobei das Mittel zum Erstellen der Backup-Routingdatenbank aus den empfangenen Routen Mittel zum Löschen von redundanten Routen, die von den Peer-Routingsystemen empfangen wurden, umfasst.
  23. Vorrichtung nach Anspruch 22, wobei das Mittel zum Löschen von redundanten Routen Mittel zum Implementieren eines „Best-Path"-Algorithmus, um die redundanten Routen zu eliminieren, enthält.
  24. Vorrichtung nach Anspruch 17, wobei mehrere Leitungsschnittstellen Mittel zum Routen von Kommunikationen gemäß einer ursprünglichen Routingdatenbank enthalten, wobei die ursprüngliche Routingdatenbank nach Ausfall des primären Routingprozessors durch die Backup-Routingdatenbank ersetzt wird.
  25. Vorrichtung nach Anspruch 17, wobei der primäre Routingprozessor und der Backup-Routingprozessor Teil eines Routingsystems sind und wobei die Peer-Routingsysteme Mittel zum Löschen von Routen aus der aktuellen Routingdatenbank dieser, die mit Routen zusammenhängen, die vom Routingsystem gehandhabt werden, als Reaktion auf die vom Routingsystem gesendeten Routenrückzugsnachrichten enthalten.
  26. Vorrichtung nach Anspruch 25, wobei das Routingsystem Mittel zum Verwenden eines Border-Gateway-Protokolls (BGP) für das Routing enthält, wobei Routenauffrischungsnachrich ten und die Routenrückzugsnachrichten in Übereinstimmung mit dem BGP sind und wobei, nachdem das Peer-Routingsystem die doppelten Präfixe gelöscht hat, das Routingsystem im Wesentlichen mit den Peer-Routingsystemen synchronisiert ist.
  27. Vorrichtung nach Anspruch 19, die weiterhin Folgendes umfasst: Mittel zum Empfangen einer Routenaktualisierungsnachricht von mindestens einem der Peer-Routingsysteme, die eine neue Route anzeigt, die von dem mindestens einen Peer-Routingsystem gehandhabt wird; Mittel zum Hinzufügen der neuen Route zu einer aktuellen Routingdatenbank und Mittel zum Aktualisieren der Präfixtabelle mit einem Präfix der neuen Route, wenn das Präfix nicht in der Präfixtabelle aufgeführt ist.
  28. Vorrichtung nach Anspruch 19, die weiterhin Folgendes umfasst: Mittel zum Empfangen einer Routenrückzugsnachricht von mindestens einem der Peer-Routingsysteme, wobei die Routenrückzugsnachricht eine zurückgezogene Route anzeigt, die nicht mehr von dem mindestens einen Peer-Routingsystem gehandhabt wird; Mittel zum Löschen der zurückgezogenen Route aus einer aktuellen Routingdatenbank und Mittel zum Löschen eines Präfixes der zurückgezogenen Route aus der Präfixtabelle, wenn die aktuelle Routingdatenbank keine Routen mit dem Präfix aufführt.
DE60309197T 2002-11-12 2003-11-12 Wegewahlsystem und synchronisierungsverfahren dafür Expired - Fee Related DE60309197T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US293162 1989-01-03
US10/293,162 US7286468B2 (en) 2002-11-12 2002-11-12 Routing system and method for synchronizing a routing system with peers after failover
PCT/US2003/036099 WO2004045169A2 (en) 2002-11-12 2003-11-12 Routing system and method for synchronizing

Publications (2)

Publication Number Publication Date
DE60309197D1 DE60309197D1 (de) 2006-11-30
DE60309197T2 true DE60309197T2 (de) 2007-08-23

Family

ID=32229615

Family Applications (2)

Application Number Title Priority Date Filing Date
DE60309197T Expired - Fee Related DE60309197T2 (de) 2002-11-12 2003-11-12 Wegewahlsystem und synchronisierungsverfahren dafür
DE60328137T Expired - Lifetime DE60328137D1 (de) 2002-11-12 2003-11-12 Wegewahlsystem und Synchronisierungsverfahren dafür

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE60328137T Expired - Lifetime DE60328137D1 (de) 2002-11-12 2003-11-12 Wegewahlsystem und Synchronisierungsverfahren dafür

Country Status (8)

Country Link
US (1) US7286468B2 (de)
EP (2) EP1561313B1 (de)
CN (1) CN100456738C (de)
AT (2) ATE434884T1 (de)
AU (1) AU2003291516A1 (de)
CA (1) CA2504825C (de)
DE (2) DE60309197T2 (de)
WO (1) WO2004045169A2 (de)

Families Citing this family (102)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6360100B1 (en) * 1998-09-22 2002-03-19 Qualcomm Incorporated Method for robust handoff in wireless communication system
US7191168B1 (en) 1999-08-27 2007-03-13 At&T Corp. Fast prefix matching of bounded strings
US6928485B1 (en) * 1999-08-27 2005-08-09 At&T Corp. Method for network-aware clustering of clients in a network
US7219160B1 (en) 1999-08-27 2007-05-15 At&T Corp. Method for fast network-aware clustering
US20020198961A1 (en) * 1999-08-27 2002-12-26 Balachander Krishnamurthy Method for improving web performance by client characterization-driven server adaptation
US7296089B2 (en) * 1999-08-27 2007-11-13 At&T Corp. Method for improving web performance by adapting servers based on client cluster characterization
US7376749B2 (en) * 2002-08-12 2008-05-20 Sandvine Incorporated Heuristics-based peer to peer message routing
US6850492B2 (en) * 2002-11-22 2005-02-01 Nokia Corporation Method and system for enabling a route and flow table update in a distributed routing platform
US7515600B1 (en) * 2003-01-28 2009-04-07 Cisco Technology, Inc. Synchronizing portions of a database with different databases on different nodes of a network
US7668541B2 (en) 2003-01-31 2010-02-23 Qualcomm Incorporated Enhanced techniques for using core based nodes for state transfer
KR100645428B1 (ko) * 2003-05-05 2006-11-15 삼성전자주식회사 개인 통신무선 네트워크에서 라우팅 경로 설정 장치 및 방법
JP2004364109A (ja) * 2003-06-06 2004-12-24 Canon Inc テンポラリアドレス通信装置、プログラム、記録媒体、および方法
US8009556B2 (en) * 2003-10-17 2011-08-30 Ip Infusion, Inc. System and method for providing redundant routing capabilities for a network node
WO2005109153A2 (en) * 2004-05-04 2005-11-17 Nexthop Technologies, Inc. Method and apparatus for bgp peer prefix limits exchange with multi-level control
US7428221B2 (en) * 2004-06-01 2008-09-23 Cisco Technology, Inc. Arrangement for providing network prefix information from attached mobile routers to a clusterhead in a tree-based ad hoc mobile network
US7512064B2 (en) 2004-06-15 2009-03-31 Cisco Technology, Inc. Avoiding micro-loop upon failure of fast reroute protected links
US7447225B2 (en) * 2004-07-23 2008-11-04 Cisco Technology, Inc. Multiple multicast forwarder prevention during NSF recovery of control failures in a router
DE102004037024B4 (de) * 2004-07-30 2006-07-13 Siemens Ag Verfahren und Netzelement für ein die Dienstgüte erhaltendes Umrouten von Verkehr in Netzen mit langsamer Routenkonvergenz
US7515525B2 (en) * 2004-09-22 2009-04-07 Cisco Technology, Inc. Cooperative TCP / BGP window management for stateful switchover
US8098571B2 (en) * 2004-10-28 2012-01-17 Alcatel Lucent Stack manager protocol with automatic set up mechanism
US9014181B2 (en) * 2004-11-01 2015-04-21 Alcatel Lucent Softrouter separate control network
US7715382B2 (en) * 2004-11-01 2010-05-11 Alcatel-Lucent Usa Inc. Softrouter
US8068408B2 (en) * 2004-11-01 2011-11-29 Alcatel Lucent Softrouter protocol disaggregation
US8953432B2 (en) * 2004-11-01 2015-02-10 Alcatel Lucent Softrouter dynamic binding protocol
US9100266B2 (en) * 2004-11-01 2015-08-04 Alcatel Lucent SoftRouter protocol failovers
US8996722B2 (en) 2004-11-01 2015-03-31 Alcatel Lucent Softrouter feature server
US7515529B2 (en) * 2004-12-14 2009-04-07 Cisco Technology, Inc. Efficient mechanism for fast recovery in case of border router node failure in a computer network
US7512063B2 (en) * 2004-12-14 2009-03-31 Cisco Technology, Inc. Border router protection with backup tunnel stitching in a computer network
US7590119B2 (en) * 2005-01-27 2009-09-15 Cisco Technology, Inc. Method and apparatus for context-based prefix updates in border gateway protocol
FR2881904A1 (fr) * 2005-02-04 2006-08-11 France Telecom Procede de gestion de reinitialisation de session selon un protocole de routage
US20060198322A1 (en) * 2005-03-03 2006-09-07 Susan Hares Method and apparatus for BGP peer prefix limits exchange with multi-level control
US9306831B2 (en) * 2005-02-14 2016-04-05 Cisco Technology, Inc. Technique for efficient load balancing of TE-LSPs
GB0503437D0 (en) * 2005-02-18 2005-03-30 Nokia Corp Video traffic in a communications system
US7710865B2 (en) * 2005-02-25 2010-05-04 Cisco Technology, Inc. Disaster recovery for active-standby data center using route health and BGP
US7385988B2 (en) * 2005-02-28 2008-06-10 Cisco Technology, Inc. Method and apparatus for limiting VPNv4 prefixes per VPN in an inter-autonomous system environment
US7814227B2 (en) * 2005-03-04 2010-10-12 Cisco Technology, Inc. Computation of a shortest inter-domain TE-LSP across a set of autonomous systems
US7609617B2 (en) * 2005-04-14 2009-10-27 Cisco Technology, Inc. BGP hitless upgrade approaches
US7586841B2 (en) 2005-05-31 2009-09-08 Cisco Technology, Inc. System and method for protecting against failure of a TE-LSP tail-end node
US7688743B2 (en) * 2005-07-29 2010-03-30 Opnet Technologies, Inc. Tracing routing differences
US7710899B1 (en) * 2005-08-16 2010-05-04 Cisco Technology, Inc. System and method for speeding border gateway protocol graceful restart
US9166904B2 (en) * 2005-09-08 2015-10-20 Cisco Technology, Inc. Method and apparatus for transferring BGP state information during asynchronous startup
US8509799B2 (en) 2005-09-19 2013-08-13 Qualcomm Incorporated Provision of QoS treatment based upon multiple requests
US9066344B2 (en) * 2005-09-19 2015-06-23 Qualcomm Incorporated State synchronization of access routers
US8982778B2 (en) 2005-09-19 2015-03-17 Qualcomm Incorporated Packet routing in a wireless communications environment
US8983468B2 (en) * 2005-12-22 2015-03-17 Qualcomm Incorporated Communications methods and apparatus using physical attachment point identifiers
US9078084B2 (en) 2005-12-22 2015-07-07 Qualcomm Incorporated Method and apparatus for end node assisted neighbor discovery
US9736752B2 (en) 2005-12-22 2017-08-15 Qualcomm Incorporated Communications methods and apparatus using physical attachment point identifiers which support dual communications links
US7948873B2 (en) * 2005-10-17 2011-05-24 Cisco Technology, Inc. Method for recovery of a controlled failover of a border gateway protocol speaker
US7855953B2 (en) 2005-10-20 2010-12-21 Cisco Technology, Inc. Method and apparatus for managing forwarding of data in an autonomous system
US7852772B2 (en) * 2005-10-20 2010-12-14 Cisco Technology, Inc. Method of implementing a backup path in an autonomous system
US7864669B2 (en) * 2005-10-20 2011-01-04 Cisco Technology, Inc. Method of constructing a backup path in an autonomous system
US7693047B2 (en) * 2005-11-28 2010-04-06 Cisco Technology, Inc. System and method for PE-node protection
CN1980224A (zh) * 2005-12-01 2007-06-13 华为技术有限公司 基于主备网关设备状态切换后业务恢复的方法及系统
US7570580B1 (en) * 2005-12-02 2009-08-04 At&T Corp. Automatic problem isolation for multi-layer network failures
US8441919B2 (en) 2006-01-18 2013-05-14 Cisco Technology, Inc. Dynamic protection against failure of a head-end node of one or more TE-LSPs
US8082340B2 (en) * 2006-01-30 2011-12-20 Cisco Technology, Inc. Technique for distinguishing between link and node failure using bidirectional forwarding detection (BFD)
US8072879B2 (en) 2006-02-03 2011-12-06 Cisco Technology, Inc. Technique for determining whether to reestablish fast rerouted primary tunnels based on backup tunnel path quality feedback
US8644137B2 (en) * 2006-02-13 2014-02-04 Cisco Technology, Inc. Method and system for providing safe dynamic link redundancy in a data network
US9083355B2 (en) 2006-02-24 2015-07-14 Qualcomm Incorporated Method and apparatus for end node assisted neighbor discovery
US8543718B2 (en) 2006-03-02 2013-09-24 Cisco Technology, Inc. Technique for efficiently and dynamically maintaining bidirectional forwarding detection on a bundle of links
US7702816B2 (en) * 2006-03-31 2010-04-20 Cisco Technology, Inc. Facilitating application synchronization with a reservation protocol at a sender without application receiver participation
US9043487B2 (en) * 2006-04-18 2015-05-26 Cisco Technology, Inc. Dynamically configuring and verifying routing information of broadcast networks using link state protocols in a computer network
US20070268817A1 (en) * 2006-05-22 2007-11-22 Nortel Networks Limited Method and system for protecting a sub-domain within a broadcast domain
US8208372B2 (en) * 2006-06-02 2012-06-26 Cisco Technology, Inc. Technique for fast activation of a secondary head-end node TE-LSP upon failure of a primary head-end node TE-LSP
US8111616B2 (en) * 2006-09-08 2012-02-07 Cisco Technology, Inc. Constructing a repair path in the event of failure of an inter-routing domain system link
US8254396B2 (en) * 2006-10-13 2012-08-28 Cisco Technology, Inc. Fast border gateway protocol synchronization
JP2008152594A (ja) * 2006-12-19 2008-07-03 Hitachi Ltd マルチコアプロセッサ計算機の高信頼化方法
US9155008B2 (en) 2007-03-26 2015-10-06 Qualcomm Incorporated Apparatus and method of performing a handoff in a communication network
US8830818B2 (en) 2007-06-07 2014-09-09 Qualcomm Incorporated Forward handover under radio link failure
US9094173B2 (en) 2007-06-25 2015-07-28 Qualcomm Incorporated Recovery from handoff error due to false detection of handoff completion signal at access terminal
US20090003348A1 (en) * 2007-06-29 2009-01-01 Nagalingswami Kulkarni IP aggregation with blackhole entry
CN101471940B (zh) * 2007-12-28 2012-09-05 华为技术有限公司 一种边界网关协议路由同步的方法、系统及装置
US20090288811A1 (en) * 2008-05-20 2009-11-26 Bolla James D Aluminum plate-fin heat exchanger utilizing titanium separator plates
CN101610210A (zh) * 2008-06-18 2009-12-23 鸿富锦精密工业(深圳)有限公司 具有冗余结构的组播传输系统及方法
WO2010073674A1 (ja) * 2008-12-26 2010-07-01 日本電気株式会社 経路制御装置、経路制御方法、経路制御プログラム、ネットワークシステム
JP2011087302A (ja) * 2009-10-19 2011-04-28 Ip Infusion Inc Bgp経路監視装置、bgp経路監視方法、およびプログラム
US8615241B2 (en) 2010-04-09 2013-12-24 Qualcomm Incorporated Methods and apparatus for facilitating robust forward handover in long term evolution (LTE) communication systems
US8959139B2 (en) 2010-05-28 2015-02-17 Juniper Networks, Inc. Application-layer traffic optimization service endpoint type attribute
US8614941B2 (en) 2011-05-09 2013-12-24 Telefonaktiebolaget L M Ericsson (Publ) Hitless switchover from active TCP application to standby TCP application
ES2444277B1 (es) * 2012-08-22 2015-06-16 Vodafone España, S.A.U. Sistema y método de manejo de fallos en una red de acceso radio
US9237066B2 (en) 2012-11-16 2016-01-12 Dell Products, L.P. Packet switch modules for computer networks with efficient management of databases used in forwarding of network traffic
US9294384B2 (en) 2013-03-01 2016-03-22 Skytap Distributed service routing protocol suitable for virtual networks
US9282026B2 (en) * 2013-03-11 2016-03-08 Dell Products L.P. System and method for improved routing in autonomous systems
CN104468347B (zh) * 2013-09-18 2019-04-02 中兴通讯股份有限公司 网络数据自环回的控制方法及装置
US9590914B2 (en) * 2013-11-05 2017-03-07 Cisco Technology, Inc. Randomized per-packet port channel load balancing
US9794114B2 (en) * 2014-10-31 2017-10-17 Dell Products Lp Preventing or reducing traffic losses
CN107409094B (zh) * 2015-03-25 2018-11-27 英国电讯有限公司 通信路由管理服务器、系统和用于处理路由请求的方法
US9985875B1 (en) * 2015-03-31 2018-05-29 Juniper Networks, Inc. Route signalling based resilient application overlay network
US10250562B1 (en) 2015-03-31 2019-04-02 Juniper Networks, Inc. Route signaling driven service management
US10630585B2 (en) * 2015-04-16 2020-04-21 Arista Networks, Inc. Method and system for withdrawing programmed routes in network devices
US9935869B1 (en) * 2016-03-31 2018-04-03 Juniper Networks, Inc. Installing active flows in a forwarding table
US11258694B2 (en) * 2017-01-04 2022-02-22 Cisco Technology, Inc. Providing dynamic routing updates in field area network deployment using Internet Key Exchange v2
US10623322B1 (en) * 2017-09-15 2020-04-14 Juniper Networks, Inc. Dynamic prefix list for route filtering
CN111869248B (zh) 2018-03-28 2023-06-27 英国电讯有限公司 管理通过ipx网络的业务流的方法、网络路由节点
US10681091B2 (en) 2018-07-31 2020-06-09 Juniper Networks, Inc. N:1 stateful application gateway redundancy model
EP3641278A1 (de) * 2018-10-17 2020-04-22 Siemens Aktiengesellschaft Verfahren zur bereitstellung redundanter relay-, insbesondere routing funktion, system, computerprogramm und computerlesbares medium
CN113169929B (zh) 2018-11-26 2022-10-21 阿尔库斯有限公司 包括分解式网络元件的逻辑路由器
CN115208824A (zh) * 2019-03-13 2022-10-18 华为技术有限公司 路由信息管理方法、装置及计算机存储介质
US11563671B2 (en) * 2020-06-24 2023-01-24 Juniper Networks, Inc. Routing engine switchover based on health determined by support vector machine
CN113973075A (zh) * 2020-07-22 2022-01-25 北京金山云网络技术有限公司 一种数据处理方法及装置
US20220224638A1 (en) * 2021-01-08 2022-07-14 Hewlett Packard Enterprise Development Lp Preventing generation of duplicate network routes in a software defined wide area network
US20240073135A1 (en) * 2022-08-26 2024-02-29 Ciena Corporation BGP Segment Routing optimization by packing multiple prefixes in an update

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6233702B1 (en) * 1992-12-17 2001-05-15 Compaq Computer Corporation Self-checked, lock step processor pairs
FR2762462B1 (fr) * 1997-04-21 1999-05-28 Alsthom Cge Alcatel Systeme a stations receptrices de donnees installees en reseau
US6151315A (en) * 1997-06-02 2000-11-21 At&T Corp Method and apparatus for achieving fabric independent routing technique
US6148410A (en) 1997-09-15 2000-11-14 International Business Machines Corporation Fault tolerant recoverable TCP/IP connection router
US6286048B1 (en) * 1998-12-04 2001-09-04 Cisco Technology, Inc. System and method for discovering relative states of processors
US6457138B1 (en) * 1999-04-19 2002-09-24 Cisco Technology, Inc. System and method for crash handling on redundant systems
US20010048661A1 (en) * 2000-05-24 2001-12-06 David Clear Method and apparatus for multi-protocol redundant router protocol support
US6876625B1 (en) 2000-09-18 2005-04-05 Alcatel Canada Inc. Method and apparatus for topology database re-synchronization in communications networks having topology state routing protocols

Also Published As

Publication number Publication date
ATE434884T1 (de) 2009-07-15
US20040090913A1 (en) 2004-05-13
DE60328137D1 (de) 2009-08-06
EP1561313A2 (de) 2005-08-10
ATE343283T1 (de) 2006-11-15
EP1561313B1 (de) 2006-10-18
CN100456738C (zh) 2009-01-28
EP1768331B1 (de) 2009-06-24
US7286468B2 (en) 2007-10-23
WO2004045169A2 (en) 2004-05-27
CA2504825C (en) 2008-07-22
DE60309197D1 (de) 2006-11-30
CA2504825A1 (en) 2004-05-27
WO2004045169A3 (en) 2004-08-12
AU2003291516A1 (en) 2004-06-03
EP1768331A1 (de) 2007-03-28
CN1711729A (zh) 2005-12-21

Similar Documents

Publication Publication Date Title
DE60309197T2 (de) Wegewahlsystem und synchronisierungsverfahren dafür
DE602004002858T2 (de) Vorrichtung und Verfahren zur Datenarchivierung in einem Clustersystem
DE60014645T2 (de) Datensicherungsvorrichtung für eine internet-server-sitzung
US6411967B1 (en) Distributed processing system with replicated management information base
DE112020001459T5 (de) Konsistente Route-Ankündigungen zwischen redundanten Controllern im globalen Netzwerk-Access-Point
DE602005000972T2 (de) Speichersystem und Datenverarbeitungssystem
DE69628718T2 (de) Netzwerk - Topologie-Verwaltungssystem
DE602005001601T2 (de) Protokoll-Failover in einem Softrouter
US9053166B2 (en) Dynamically varying the number of database replicas
DE602004010872T9 (de) Systeme und Verfahren zur Dateisicherung
DE10112941A1 (de) System und Verfahren für das parallele Lesen von primären und sekundären Sicherungen zur Wiederherstellung mehrerer gemeinsam benutzter Datenbankdateien
DE102010056369A1 (de) Routed Split Multilink Trunking für IPv6
CN107018185A (zh) 云存储系统的同步方法和装置
JPH11327912A (ja) ソフトウェア自動配布システム
WO2006040139A1 (de) Serverlose replikation von datenbanken
DE602005002325T2 (de) Verfahren zur Verkehrsweiterlenkung, die Verkehrsgewichtungsfaktoren verwendet
DE112012000305B4 (de) Gemeinsame Wiederherstellung von Datenquellen
CN106789624A (zh) 一种失效路由恢复方法
CN104991739B (zh) 元数据服务器失效接替中精确一次执行语义的方法及系统
DE112017006045B4 (de) Übertragungsvorrichtung und verfahren zum hinzufügen einer route
DE19900636B4 (de) Datenzugriffs- und -verwaltungssystem sowie Verfahren zum Datenzugriff und zur Datenverwaltung für ein Rechnersystem sowie deren Verwendung
DE112011104020T5 (de) Validierung des Zugriffs auf einen gemeinsam genutzen Datensatz bei Lese- und Schreibzugriff mehrerer Anforderer
Dahan Distributed Spanning Tree algorithms for large scale traversals
DE60311157T2 (de) Verfahren und Vorrichtung um redundante Kommunikationsaufgaben zu synchronisieren
CN116668296B (zh) 一种网关节点调度方法、系统、设备以及存储介质

Legal Events

Date Code Title Description
8339 Ceased/non-payment of the annual fee