WO2002084958A1 - Method and apparatus for facilitating instant failover during packet routing, and computer-readable storage medium - Google Patents

Method and apparatus for facilitating instant failover during packet routing, and computer-readable storage medium Download PDF

Info

Publication number
WO2002084958A1
WO2002084958A1 PCT/US2002/011562 US0211562W WO02084958A1 WO 2002084958 A1 WO2002084958 A1 WO 2002084958A1 US 0211562 W US0211562 W US 0211562W WO 02084958 A1 WO02084958 A1 WO 02084958A1
Authority
WO
WIPO (PCT)
Prior art keywords
packet
sequence number
seen before
intermediate node
source
Prior art date
Application number
PCT/US2002/011562
Other languages
French (fr)
Inventor
Radia Perlman
John Reynders
Original Assignee
Sun Microsystems, 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 Sun Microsystems, Inc. filed Critical Sun Microsystems, Inc.
Publication of WO2002084958A1 publication Critical patent/WO2002084958A1/en

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
    • 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/32Flooding

Abstract

One embodiment of the present invention provides a system that facilitates instant failover during packet routing by employing a flooding protocol to send packets between a source and a destination. Upon receiving a packet containing data at an intermediate node located between the source and the destination, the system determines whether the packet has been seen before at the intermediate node. If not, the system forwards the packet to neighboring nodes of the intermediate node. In one embodiment of the present invention, forwarding the packet to neighboring needs involves forwarding the packet to all neighboring nodes except the node from which the packet was received. In one embodiment of the present invention, determining whether the packet has been seen before involves examining a sequence number, SR, contained within the packet to determine whether the sequence number has been seen before. The method is particularly for data packets wherein the sequence number can include a sequence number inserted into a payload of the packet; a sequence number located within an Internet Protocol (IP) header of the packet; or a sequence number located within a layer (4) header of the packet.

Description

METHOD AND APPARATUS FOR FACIITATING INSTANT FAILOVER DURING PACKET ROUTING, A ND COMPUTER-READABLE STORAGE MEDIUM
Inventor(s): Radia J. Perlman and John V. W. Reynders
BACKGROUND
Field of the Invention
The present invention relates to transferring data packets across a network. More specifically, the present invention relates to a method and an apparatus for facilitating instant failover during packet routing by employing a flooding protocol to send packets on all possible paths between a source and a destination.
Related Art
Fault tolerant networks commonly provide redundant communication links between machines that are communicating with each other. If one link fails, the system will ideally failover instantly to another link.
However, traditional routing techniques take a significant amount of time to detect and route around a failure. Consequently, these traditional routing techniques will not work for systems that require instant failover. Instead of these traditional techniques, a flooding protocol can be used that sends all packets everywhere. This is typically accomplished by configuring intermediate nodes between a source and a destination so that they forward a packet to all neighboring nodes except the node from which the packet was received. A flooding protocol has the property that if there is any path between the source and the destination, the packet will be delivered. It does not depend on intermediate routers having consistent forwarding tables or knowing the topology of the network.
In theory, a flooding protocol can create an exponential number of packets, which can seriously degrade network performance. However, a "link-state routing protocol" uses flooding with reasonable efficiency for distributing routing information throughout a network. The reason the link-state routing protocol can be efficient is that each router stores a link state packet (LSP) with the highest sequence number from each source. When a router receives an LSP from a source, it checks its database and only stores and floods the LSP if the sequence number is higher than the one in the database for the source. In this way, a router will not reflood the same packet or an older packet.
Unfortunately, the same technique will not work for data packets because routers do not store data packets and consequently cannot recognize duplicates.
Moreover, data packets may arrive out-of-order, and unlike LSPs, where only the most recently generated LSP is of interest, a large number of data packets may be en route at any one time, and all of these data packets are of interest.
What is needed is a method and apparatus for facilitating flooding of data packets without seriously degrading network performance.
SUMMARY
One embodiment of the present invention provides a system that facilitates instant failover during packet routing by employing a flooding protocol to send packets between a source and a destination. Upon receiving a packet containing data at an intermediate node located between the source and the destination, the system determines whether the packet has been seen before at the intermediate node. If not, the system forwards the packet to neighboring nodes of the intermediate node.
In one embodiment of the present invention, forwarding the packet to neighboring needs involves forwarding the packet to all neighboring nodes except the node from which the packet was received. In one embodiment of the present invention, determining whether the packet has been seen before involves examining a sequence number, SR, contained within the packet to determine whether the sequence number has been seen before.
In a variation in this embodiment, the sequence number can include a sequence number inserted into a pay load of the packet; a sequence number located within an Internet Protocol (IP) header of the packet; or a sequence number located within a layer 4 header of the packet.
In a variation in this embodiment, examining the sequence number involves looking up a highest received sequence number, SH, stored at the intermediate node based upon the source of the packet (and possibly based on the destination of the packet as well).
In a variation in this embodiment, determining whether the packet has been seen before involves examining a record, R, indicating which of N possible sequence numbers preceding a highest received sequence number, S , have" been seen before. In a variation in this embodiment, in determining whether the packet has been seen before, the system looks up a highest received sequence number, 8H. l SR > SH, the system overwrites SH with SR and updates a record, R, to indicate which of N possible sequence numbers preceding SH have been seen before. The system also forwards the packet to neighboring nodes. lfSH-N > SR, the system discards the packet. Finally, in the case where SH ≥ SR ≥ SH-N, the system discards the packet if R indicates that SR has been seen before. Otherwise, if R indicates the packet has not been seen before, the system updates R to indicate that SR has been seen, and forwards the packet to the neighboring nodes. Note that in one embodiment of the present invention, the record, R, is a bit vector of size N.
BRIEF DESCRIPTION OF THE FIGURES
FIG. 1 illustrates a network in accordance with an embodiment of the present invention.
FIG. 2 illustrates how a sequence number is compared at a router in accordance with an embodiment of the present invention. FIG. 3 is a flow chart illustrating the process of forwarding a data packet in accordance with an embodiment of the present invention.
DETAILED DESCRIPTION The following description is presented to enable any person skilled in the art to make and use the invention, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present invention. Thus, the present invention is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.
The data structures and code described in this detailed description are typically stored on a computer readable storage medium, which may be any device or medium that can store code and/or data for use by a computer system. This includes, but is not limited to, magnetic and optical storage devices such as disk drives, magnetic tape, CDs (compact discs) and DVDs (digital versatile discs or digital video discs), and computer instruction signals embodied in a transmission medium (with or without a carrier wave upon which the signals are modulated). For example, the transmission medium may include a communications network, such as the Internet.
Network
FIG. 1 illustrates a network 100 in accordance with an embodiment of the present invention. Network 100 includes a number of source nodes 102-104, which send packets to a number of destination nodes 106-107. These packets pass through a number of intermediate nodes 120-126, which ultimately route the packets to their specified destinations. Note that source nodes 102-104 and destination nodes 106-107 can include any type of computing device, including, but not limited to, a computer system based on a microprocessor, a mainframe computer, a digital signal processor, a portable computing device, a personal organizer, a device controller, and a computational engine within an appliance. Intermediate nodes 120-126 can also include any type of router or computing device that can be used to forward packets between source nodes 102-104 and destination nodes 106-107.
Note that the nodes in network 100 can be located at geographically distributed locations on the Internet, or alternatively, within a local intranet inside of an organization. Furthermore, the flooding protocols disclosed in this specification can additionally be applied to routing data packets inside of a computer system.
Also note that network 100 contains redundant links that provide multiple pathways between each source node 102-104 and each destination node 106-107. This provides a level of fault tolerance if one or more links or nodes fail. For example, consider the case where source node 104 is sending packets to destination node 107 along path A, which passes through intermediate nodes 125 and 126. If one of the nodes or links along path A fails, the system can perform a rerouting operation to send packets along path B, which passes through intermediate nodes 122, 123, 120, 121 and 124. Unfortunately, this rerouting process can require a great amount of time, which makes it impossible to perform an instant failover.
In order to make an instant failover possible, the present invention uses a flooding protocol to distribute packets between source nodes 102-104 and destination nodes 106-107. In this way, if a link or a node fails, the packets that are in transit at the time of the failure will be received along an alternate pathway. This flooding protocol is described in more detail with reference to FIGs. 2-3 below.
Comparing Sequence Numbers
The present invention uses sequence numbers within packets to prevent a potential exponential explosion in packets during the flooding protocol. These sequence numbers can be created through a number of different mechanisms. In one embodiment of the present invention, each source node explicitly creates and inserts a sequence number into each packet. In another embodiment, a sequence number from an Internet Protocol (IP) header of the packet is used. In yet another embodiment, a sequence number located within a layer 4 header of the packet, such as a transmission control protocol (TCP) sequence number, is used.
Referring to FIG. 2, each intermediate node 120-126 records a highest received sequence number SH 208 and a bit vector R 209 of size N for each source node within a local database 207. Bit vector R 209 is used to indicate which of the N possible sequence numbers preceding the highest received sequence number S 208 have been seen before.
Note that some IP implementations maintain sequence numbers for each source-destination pair. In this case, the present invention correspondingly keeps track of the highest sequence number received SR 208 and keeps track of bit vector R
209 for each source-destination pair.
When a packet 200 is received at an intermediate node, the source address
(and possibly the destination address) is used to lookup the highest received sequence number SR 208 and bit vector R 209 in database 207. This highest received sequence SR 208 number and bit vector R 209 are compared with the sequence number SR 201 retrieved from packet 200 as is described in more detail below with reference to FIG.
3 below.
Within this specification and within the attached claims, a first sequence number is often described as being "greater than" a second sequence number. The term "greater than" for purposes of this specification and the attached claims means that the first sequence number occurs later in the sequence than the second sequence number. However, because sequence numbers can wrap around to zero when they reach a maximum value, the actual numerical value of the first sequence number may be less than the actual numerical value of the second sequence number. Similarly, if a first sequence number is described as being "less than" a second sequence number, this means that the first sequence number occurs earlier in the sequence than the second sequence number.
Traditionally, the method of comparing sequence numbers in a sequence number space of size N is as follows. Given two sequence numbers A and B, A is considered to be less than B if the absolute value of A-B is less than or equal to N/2, and A is less than B, or if the absolute value of A-B is greater than N/2, and A is greater than B. It is preferable if this sequence number space is large enough that it is highly unlikely for an old packet to be mistaken for a new packet.
One case that needs to be handled arises when a source restarts having forgotten is previously used sequence number, or when the network has partitioned, and an intermediate node has not seen the most recent packets from the source, so that the source's current sequence number would look old. In this case, an intermediate node, who has seen no packet from a particular source for some amount of time, could note that its current knowledge of the sequence number is out-of-date and the next packet seen from that source should be accepted regardless of sequence number. Note that "being accepted" in this context means that the packet's sequence number is taken to be highest sequence number seen so far.
Process of Forwarding a Data Packet FIG. 3 is a flow chart illustrating the process of forwarding a data packet in accordance with an embodiment of the present invention. The general idea is to recognize when a packet has already been flooded. This is accomplished by storing the highest received sequence number, SH, for each source. If a packet is received from a source with a higher sequence number, SR, the highest received sequence number SR is replaced with SH- Additionally, the associated bit vector R 209 is shifted to throw away information about any sequence numbers that are more than N smaller than the new highest received sequence number, SH. The packet is also flooded to all neighboring nodes, expect the node from which it was received.
More specifically, the process starts when a source node 104 generates and sends a packet 200 with a sequence number 201 to a destination (step 302). As mentioned before, this sequence number can be assigned across all packets that originate from source node 104, or can be assigned separately for each individual destination.
Next, an intermediate node 123 receives packet 200 from a neighboring node 125 (step 304). Intermediate node 123 then retrieves sequence number SR 201 and source address 203 from packet 200 (step 306). Intermediate node 123 uses source address 203 to lookup a highest received sequence number SH 208 and bit vector R 209 for source node 104 in local database 207 (step 308). Next, intermediate node 123 compares sequence number SR 201 with highest received sequence number SH 208 and bit vector R 209 (step 309).
If SK > SH, the received sequence number, SR, is higher than the highest received sequence number, SH- In this case, the system forwards packet 200 to all neighboring nodes 120, 122 and 124, except the neighboring node 125 from which the packet was received. The system also overwrites S# with S^ and updates bit vector R 209 by shifting it by a number of bits equal to the difference between the sequence numbers SR - SH, so that the updated bit vector R 209 applies to the updated highest received sequence number, S (step 310).
If SH- N > SR, the sequence number SR is lower than any sequence numbers that are associated with the bit vector R 209. In this case, the system discards packet 200 (step 312). Note that in this embodiment of the present invention, we assume that, unlike LSPs, which must be reliably delivered, it is acceptable to have "reasonable" service for data packets. We are willing to lose some data packets due to congestion or transmission errors, because the alternative is to store packets at each intermediate hop until they are acknowledged, which takes up too much memory. If SH- ≥ SR ≥ SH-N, the system looks up SR in bit vector R. If SR has been seen before, the system discards packet 200. Otherwise, if SR has not been seen before, the system updates R to indicate that SR has been seen, and forwards packet 200 to all neighboring nodes 120, 122 and 125, except the node 125 from which packet 200 was received (step 314). The foregoing descriptions of embodiments of the present invention have been presented for purposes of illustration and description only. They are not intended to be exhaustive or to limit the present invention to the forms disclosed. Accordingly, many modifications and variations will be apparent to practitioners skilled in the art. Additionally, the above disclosure is not intended to limit the present invention. The scope of the present invention is defined by the appended claims.

Claims

What Is Claimed Is:
1. A method for facilitating instant failover during packet routing by employing a flooding protocol to send packets between a source and a destination, the method comprising: receiving a packet containing data at an intermediate node located between the source and the destination; wherein the packet is received from a first neighboring node; determining whether the packet has been seen before at the intermediate node; and if the packet has not been seen before, forwarding the packet to neighboring nodes of the intermediate node.
2. The method of claim 1, wherein forwarding the packet to neighboring needs involves forwarding the packet to all neighboring nodes except the first neighboring node from which the packet was received.
3. The method of claim 1, wherein determining whether the packet has been seen before involves examining a sequence number, SR, contained within the packet to determine whether the sequence number has been seen before.
4. The method of claim 3, wherein the sequence number includes one of: a sequence number inserted into a pay load of the packet; a sequence number located within an Internet Protocol (IP) header of the packet; and a sequence number located within a layer 4 header of the packet.
5. The method of claim 3, wherein examining the sequence number involves looking up a highest received sequence number, SH, stored at the intermediate node based upon the source of the packet.
6. The method of claim 3, wherein examining the sequence number involves looking up a highest received sequence number, SH, stored at the intermediate node based upon the source and the destination of the packet.
7. The method of claim 3, wherein determining whether the packet has been seen before involves examining a record, R, indicating which of N possible sequence numbers preceding a highest received sequence number, SH, ha e been seen before.
8. The method of claim 3, wherein determining whether the packet has been seen before involves: looking up a highest received sequence number, S ; ifSR > SH, overwriting S with SR, updating a record, R, indicating which of N possible sequence numbers preceding S have been seen before, and forwarding the packet to the neighboring nodes; if S -N > SR, discarding the packet; and if SH ≥ SR ≥ SH -N, then if R indicates that SR has been seen before, discarding the packet, and if R indicates the packet has not been seen before, updating R to indicate that SR has been seen, and forwarding the packet to the neighboring nodes.
9. The method of claim 8, wherein the record, R, is a bit vector of size N.
10. A computer-readable storage medium storing instructions that when executed by a computer cause the computer to perfoπn a method for facilitating instant failover during packet routing by employing a flooding protocol to send packets between a source and a destination, the method comprising: receiving a packet containing data at an intermediate node located between the source and the destination; wherein the packet is received from a first neighboring node; determining whether the packet has been seen before at the intermediate node; and if the packet has not been seen before, forwarding the packet to neighboring nodes of the intermediate node.
11. The computer-readable storage medium of claim 10, wherein forwarding the packet to neighboring needs involves forwarding the packet to all neighboring nodes except the first neighboring node from which the packet was received.
12. The computer-readable storage medium of claim 10, wherein determining whether the packet has been seen before involves examining a sequence number, SR, contained within the packet to determine whether the sequence number has been seen before.
13. The computer-readable storage medium of claim 12, wherein the sequence number includes one of: a sequence number inserted into a pay load of the packet; a sequence number located within an Internet Protocol (IP) header of the packet; and a sequence number located within a layer 4 header of the packet.
14. The computer-readable storage medium of claim 12, wherein examining the sequence number involves looking up a highest received sequence number, SH, stored at the intermediate node based upon the source of the packet.
15. The computer-readable storage medium of claim 12, wherein examining the sequence number involves looking up a highest received sequence number, SH, stored at the intermediate node based upon the source and the destination of the packet.
16. The computer-readable storage medium of claim 12, wherein determining whether the packet has been seen before involves examining a record, R, indicating which of N possible sequence numbers preceding a highest received sequence number, SH, have been seen before.
17. The computer-readable storage medium of claim 12, wherein determining whether the packet has been seen before involves: looking up a highest received sequence number, S ; if SR > SH, overwriting SH with SR, updating a record, R, indicating which of N possible sequence numbers preceding S# have been seen before, and forwarding the packet to the neighboring nodes; if S -N > SR, discarding the packet; and ifS > SΛ > S/-N, then if R indicates that SR has been seen before, discarding the packet, and if R indicates the packet has not been seen before, updating R to indicate that S^ has been seen, and forwarding the packet to the neighboring nodes.
18. The computer-readable storage medium of claim 17, wherein the record, R, is a bit vector of size N.
19. An apparatus that facilitates instant failover during packet routing by employing a flooding protocol to send packets between a source and a destination, the apparatus comprising: a receiving mechanism that is configured to receive a packet containing data at an intermediate node located between the source and the destination; wherein the packet is received from a first neighboring node; a determination mechanism that is configured to determine whether the packet has been seen before at the intermediate node; and a forwarding mechanism that is configured to forward the packet to neighboring nodes of the intermediate node if the packet has not been seen before.
20. The apparatus of claim 19, wherein the forwarding mechanism is configured to forward the packet to all neighboring nodes except the first neighboring node from which the packet was received.
21. The apparatus of claim 19, wherein the determination mechanism is configured to examine a sequence number, SR, contained within the packet to determine whether the sequence number has been seen before.
22. The apparatus of claim 21, wherein the sequence number includes one of: a sequence number inserted into a payload of the packet; a sequence number located within an Internet Protocol (IP) header of the packet; and a sequence number located within a layer 4 header of the packet.
23. The apparatus of claim 21, wherein the determination mechanism is configured to look up a highest received sequence number, SH, stored at the intermediate node based upon the source of the packet.
24. The apparatus of claim 21, wherein the determination mechanism is configured to look up a highest received sequence number, SH, stored at the intermediate node based upon the source and the destination of the packet.
25. The apparatus of claim 21, wherein the determination mechanism is configured to examine a record, R, indicating which of N possible sequence numbers preceding a highest received sequence number, SH, have been seen before.
26. The apparatus of claim 21, wherein the determination mechanism is configured to: look up a highest received sequence number, SH; if SΛ > SH, to overwrite H with SR, update a record, R, indicating which of N possible sequence numbers preceding SH have been seen before, and to forward the packet to the neighboring nodes; if S -N > SR, to discard the packet; and if SH ≥ SR ≥ SH -N, to discard the packet, if R indicates that SR has been seen before, and to update R to indicate that SR has been seen, and to forward the packet to the neighboring nodes, if R indicates the packet has not been seen before.
27. The apparatus of claim 26, wherein the record, R, is a bit vector of size
N.
PCT/US2002/011562 2001-04-13 2002-04-11 Method and apparatus for facilitating instant failover during packet routing, and computer-readable storage medium WO2002084958A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/834,771 US7068595B2 (en) 2001-04-13 2001-04-13 Method and apparatus for facilitating instant failover during packet routing
US09/834,771 2001-04-13

Publications (1)

Publication Number Publication Date
WO2002084958A1 true WO2002084958A1 (en) 2002-10-24

Family

ID=25267764

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2002/011562 WO2002084958A1 (en) 2001-04-13 2002-04-11 Method and apparatus for facilitating instant failover during packet routing, and computer-readable storage medium

Country Status (2)

Country Link
US (1) US7068595B2 (en)
WO (1) WO2002084958A1 (en)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7953094B1 (en) * 2002-02-06 2011-05-31 Juniper Networks, Inc. Systems and methods for order preserving data
US8117333B1 (en) 2002-05-22 2012-02-14 Juniper Networks, Inc. Systems and methods for distributed data forwarding
US7796503B2 (en) * 2002-09-03 2010-09-14 Fujitsu Limited Fault tolerant network routing
US7289508B1 (en) 2003-03-12 2007-10-30 Juniper Networks, Inc. Systems and methods for processing any-to-any transmissions
US7706378B2 (en) * 2003-03-13 2010-04-27 Sri International Method and apparatus for processing network packets
JP3986528B2 (en) * 2003-05-14 2007-10-03 富士通株式会社 Transmission equipment
US20050047439A1 (en) * 2003-08-26 2005-03-03 Madajczak Tomasz Bogdan System to process packets according to an assigned sequence number
US7586917B1 (en) * 2003-09-30 2009-09-08 Juniper Networks, Inc. Systems and methods for re-ordering data in distributed data forwarding
US8072907B2 (en) * 2005-04-28 2011-12-06 Cisco Technolgy, Inc. Method and system to restart IS-IS when LSP wraps
WO2007035655A2 (en) 2005-09-16 2007-03-29 The Trustees Of Columbia University In The City Of New York Using overlay networks to counter denial-of-service attacks
US8533255B2 (en) * 2005-12-13 2013-09-10 Panasonic Corporation Systems and methods for handling failover in a distributed routing environment
US20090196300A1 (en) * 2006-06-27 2009-08-06 Universitat Zurich Prorektorat Forschung Method for forwarding data packets and communication network having flooding transport properties
EP2225857A1 (en) * 2007-10-22 2010-09-08 University College Cork - National University of Ireland, Cork Robust routing of data in wireless networks
US8995274B2 (en) * 2008-07-03 2015-03-31 The Trustees Of Columbia University In The City Of New York Methods and systems for controlling traffic on a communication network
US10868708B2 (en) 2015-11-02 2020-12-15 Google Llc System and method for handling link loss in a network
US10616088B2 (en) * 2017-07-13 2020-04-07 Avago Technologies International Sales Pte. Limited Apparatus and method for measurements at intermediate nodes in end-to-end performance test

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0461279A1 (en) * 1989-04-11 1991-12-18 METRICOM, INC. (a Delaware corp.) Method for routing packets by squelched flooding
US5455865A (en) * 1989-05-09 1995-10-03 Digital Equipment Corporation Robust packet routing over a distributed network containing malicious failures
EP0912028A2 (en) * 1997-10-02 1999-04-28 Sun Microsystems, Inc. Mechanism for dispatching packets via a telecommunications network

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2234314C (en) * 1997-04-09 2002-06-04 Nec Corporation Fault recovery system and transmission path autonomic switching system
US6741552B1 (en) * 1998-02-12 2004-05-25 Pmc Sierra Inertnational, Inc. Fault-tolerant, highly-scalable cell switching architecture
JP3072728B2 (en) * 1998-07-16 2000-08-07 日本電気株式会社 Multipoint connection failure recovery method and system
US6856627B2 (en) * 1999-01-15 2005-02-15 Cisco Technology, Inc. Method for routing information over a network
US6530032B1 (en) * 1999-09-23 2003-03-04 Nortel Networks Limited Network fault recovery method and apparatus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0461279A1 (en) * 1989-04-11 1991-12-18 METRICOM, INC. (a Delaware corp.) Method for routing packets by squelched flooding
US5455865A (en) * 1989-05-09 1995-10-03 Digital Equipment Corporation Robust packet routing over a distributed network containing malicious failures
EP0912028A2 (en) * 1997-10-02 1999-04-28 Sun Microsystems, Inc. Mechanism for dispatching packets via a telecommunications network

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MCQUILLAN J M ET AL: "THE NEW ROUTING ALGORITHM FOR THE ARPANET", IEEE TRANSACTIONS ON COMMUNICATIONS, IEEE INC. NEW YORK, US, vol. COM-28, no. 5, May 1980 (1980-05-01), pages 711 - 719, XP000836471, ISSN: 0090-6778 *
PERLMAN R: "FAULT-TOLERANT BROADCAST OF ROUTING INFORMATION", COMPUTER NETWORKS, NORTH HOLLAND, AMSTERDAM,, NL, 1983, pages 395 - 405, XP000836462, ISSN: 0376-5075 *

Also Published As

Publication number Publication date
US7068595B2 (en) 2006-06-27
US20020150043A1 (en) 2002-10-17

Similar Documents

Publication Publication Date Title
US11012353B2 (en) Using in-band operations data to signal packet processing departures in a network
US7068595B2 (en) Method and apparatus for facilitating instant failover during packet routing
US9692687B2 (en) Method and apparatus for rapid rerouting of LDP packets
US7957306B2 (en) Providing reachability information in a routing domain of an external destination address in a data communications network
US8374092B2 (en) Technique for protecting against failure of a network element using multi-topology repair routing (MTRR)
JP4860949B2 (en) Method and apparatus for providing fast end-to-end failover in a packet switched communication network
EP1856862B1 (en) System and method for network reachability detection
US7987288B2 (en) Method and arrangement for routing data packets in a packet-switching data network
US7234001B2 (en) Dormant backup link for OSPF network protection
JP4491397B2 (en) A packet transfer device having a traffic bypass function.
US7706281B2 (en) Selecting paths in multi-homed transport-layer network associations
US8908676B2 (en) Automatically detecting best paths from shadow route reflectors
KR20230022265A (en) Interior gateway protocol flood minimization
US20020167898A1 (en) Restoration of IP networks using precalculated restoration routing tables
US20100008375A1 (en) Label switching in fibre channel networks
US7885179B1 (en) Method and apparatus for constructing a repair path around a non-available component in a data communications network
CA2567512C (en) Method and apparatus for maintaining network connectivity via label switched path(s)
US20060153193A1 (en) Network routing control method and apparatus
EP3192221B1 (en) Method and network node for scalable computer network partitioning
US20070076706A1 (en) Fast reroute in a multiprotocol label switching network
JPWO2005117365A1 (en) Communication control device and communication control method
KR100625764B1 (en) A methodology of resilient mpls/vpn backup path availability under multiple link failures
US9372821B2 (en) Limited functionality link state protocol node
Perlman Routing protocols resistant to sabotage
Motiwala et al. Better interdomain path diversity with BGP path splicing

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ OM PH PL PT RO RU SD SE SG SI SK SL TJ TM TN TR TT TZ UA UG UZ VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

WWW Wipo information: withdrawn in national office

Country of ref document: JP