WO2009112929A2 - Method and apparatus for link-state handshake for loop prevention - Google Patents

Method and apparatus for link-state handshake for loop prevention Download PDF

Info

Publication number
WO2009112929A2
WO2009112929A2 PCT/IB2009/000477 IB2009000477W WO2009112929A2 WO 2009112929 A2 WO2009112929 A2 WO 2009112929A2 IB 2009000477 W IB2009000477 W IB 2009000477W WO 2009112929 A2 WO2009112929 A2 WO 2009112929A2
Authority
WO
WIPO (PCT)
Prior art keywords
topology
node
network
information
network interface
Prior art date
Application number
PCT/IB2009/000477
Other languages
French (fr)
Other versions
WO2009112929A3 (en
Inventor
János FARKAS
Original Assignee
Telefonaktiebolaget Lm Ericsson (Publ)
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 Telefonaktiebolaget Lm Ericsson (Publ) filed Critical Telefonaktiebolaget Lm Ericsson (Publ)
Priority to EP09719124.1A priority Critical patent/EP2274880B1/en
Priority to RU2010141754/08A priority patent/RU2511605C2/en
Priority to JP2010550279A priority patent/JP5432928B2/en
Priority to US12/922,235 priority patent/US8606961B2/en
Publication of WO2009112929A2 publication Critical patent/WO2009112929A2/en
Publication of WO2009112929A3 publication Critical patent/WO2009112929A3/en
Priority to US14/088,701 priority patent/US20140181320A1/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
    • H04L45/14Routing performance; Theoretical aspects
    • 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/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/02Topology update or discovery
    • H04L45/021Ensuring consistency of routing table updates, e.g. by using epoch numbers
    • 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
    • H04L45/023Delayed use of routing table updates
    • 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
    • H04L45/03Topology update or discovery by updating link state protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/123Evaluation of link metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/18Loop-free operations

Definitions

  • IPFRR IP Fast Re-Route
  • Link-state control protocols are recently proposed to be applied in Ethernet networks too; the architecture is being specified in IEEE 802. laq Shortest Path Bridging (IEEE 802. laq Virtual Bridged Local Area Networks - Amendment 9: Shortest Path Bridging, Draft D0.4, February 19, 2008).
  • Loop prevention is essential for Ethernet networks as an accidental loop may cause network meltdown due to the multiplication of looped multicast or broadcast frames. As opposed to IP there is no TTL field in the header of Ethernet frames thus the frames multiplied because of a loop cannot die out from the network.
  • Ingress checking also referred to as Reverse Path Forwarding Check (RPFC)
  • RPFC Reverse Path Forwarding Check
  • ingress checking does not eliminate all possible loops but only decreases the possibility of temporal loops. That is, accidental loops may appear despite of ingress checking is applied as shown by a couple of examples.
  • the present invention is related to the prevention of a transient loop in a network controlled by a link-state protocol based on blocking forwarding of traffic by a network node when the node receives a message which contains information on a change in topology of the network.
  • This blocking of forwarding of traffic is established towards each neighbor independently of each other, and the blocking is maintained on a link between two neighbor nodes until they agree that they have the very same view on the physical topology of the network, i.e. until they agree that both of them received the very same information on the physical topology of the network, e.g. both received the information on all changes in the physical topology.
  • the forwarding of traffic is unblocked on the link between the neighbor nodes.
  • Figure 1 is a flow chart of the present invention when a message is received having information on a topology change
  • Figure 2 is a flow chart of the present invention when a Synchronization
  • Figure 3 is an example of a network topology
  • Figure 4 shows nodes notified first of the network topology for figure 3
  • Figure 5 shows which nodes block their path of the example operation of link- state handshake protocol
  • Figure 7 shows even more nodes recognize the change of the example
  • Figure 8 shows all nodes recognize the change of the example
  • Figure 10 shows a transient loop in IS-IS based SPB, which appears even if ingress checking is applied;
  • Figure 11 shows loop prevention for an SPB scenario of the present invention
  • Figure 12 is a block diagram of a node of the present invention.
  • a network node 12 of a telecommunications network 10 controlled by a link-state protocol comprises a network interface 14 which receives a message that contains information on a change in topology of the network 10.
  • the node 12 comprises a processing unit 16 that blocks forwarding of traffic to at least one neighbor node 20 of the network 10 at the network interface 14, agrees on the change in topology with the neighbor node 20; and unblocks the forwarding of traffic when the neighbor node 20 has information about the physical topology which is the same as the information about the physical topology in a memory 18. .
  • the physical topology comprises all network nodes and all connections between them.
  • a link-state control protocol is used in the network and an instance of the control protocol entity is run in each network node.
  • the link-state protocol maintains the information about the physical topology in each network node.
  • the link-state control protocol determines forwarding paths for data messages between network nodes.
  • the forwarding paths used in an Ethernet network comprise the so-called active topology, which should be always loop free.
  • the active topology is typically a spanning tree controlled by the Rapid Spanning Tree Protocol (RSTP).
  • RSTP Rapid Spanning Tree Protocol
  • the spanning tree does not comprise all physical connections but inactivate some of the redundant ones in order to avoid loops.
  • the connections kept active by RSTP form the active topology, which is a spanning tree.
  • MSTP and SPB are able to handle multiple active topologies, i.e. multiple trees.
  • the network interface 14 can receive an advertisement from another neighbor node 22 which contains the information on the change to the topology.
  • the processing unit 16 can block at least an active topology or a forwarding path that is affected by the change at least at one port of the network interface 14.
  • the network interface 14 can send a synchronization request to the neighbor node 20 on at least one port which contains the information on the advertisement.
  • the processing unit 16 can verify the neighbor node 20 has received the advertisement.
  • the network interface 14 can receive a synchronization acknowledgment from the neighbor node 20 to which the synchronization request has been sent that indicates the neighbor node 20 has updated the topology according to the topology information in the advertisement.
  • the purpose of the synchronization is to assure that the neighbor nodes have the very same view on the physical topology of the network.
  • both neighbor nodes received all pieces of information on the physical topology, i.e. have the very same set of advertisements.
  • An alternative to this is to verify that they have the very same topology database describing the physical topology of the network.
  • the neighbor nodes may exchange a digest of their topology database (the part of the database that describes the physical topology or e.g. the entire topology database that stores all the received advertisements) and synchronize themselves based on this digest.
  • the digest can be for instance a unique hash or a CRC prepared based on the topology database
  • the network interface 14 can receive the synchronization acknowledgment having a node ID and a sequence number of the advertisement.
  • the network interface 14 can receive a synchronization request.
  • the processing unit 16 can verify the advertisement has been received and processed for which the synchronization request has been sent.
  • the network interface 14 can send a synchronization acknowledgment.
  • the network interface 14 can can have the IS-IS Send Routing Message Flag set for each link-state PDU per port and a flag regarding blocking of a port when the advertisement has the topology change information.
  • the present invention pertains to a transient loop prevention method of a network node 12 of a network 10 having a plurality of a network nodes 12 controlled by a link-state protocol, which is illustrated in figure 1 and in figure 2.
  • the method comprises the step Sl 1 of receiving a message at a network interface 14 which contains information on a change in topology of the network 10.
  • step S16 There is the step of agreeing by the processing unit 16 on the change in topology with the neighbor node 20.
  • step S16 of unblocking the forwarding of traffic when the neighbor node 20 has information about the topology which is the same as the information about the topology stored in a memory 18, i.e. the neighbor node 20 has the same view on the topology.
  • step S17 There is the step S17 of checking whether there are still blocked interfaces 20.
  • the step SI l of receiving a message can include the step of receiving an advertisement at the network interface 14 from another neighbor node 22 which contains the information on the change to the topology.
  • the blocking step S12 can include the step of blocking at least an active topology or a forwarding path that is affected by the change at network interface 14. There can be the step of maintaining the blocking until the neighbor node 20 agrees that it has a topology in its memory 18 that is the same as the topology in the memory 18.
  • the agreeing step can include the step Sl 3 of sending a synchronization request to the other neighbor node 22 on at least one port which contains the information on the advertisement or on the topology database.
  • the agreeing step can include the step of verifying the neighbor node 20 has received the same advertisement(s), i.e.
  • the verifying step can include the step S 14 of receiving a synchronization acknowledgment from the neighbor node 20 to which the synchronization request has been sent that indicates the neighbor node 20 has updated the topology according to the topology information in the advertisement.
  • the reception of the synchronization acknowledgment step S 14 can include the step of receiving the synchronization acknowledgment having a node ID and a sequence number of the advertisement or receiving the synchronization acknowledgment having a digest on the topology database.
  • the verifying step can include the step Sl 5 of receiving a synchronization request on the very same piece of information sent to the neighbor node 20. That is the synchronization request received may have the same node ID and sequence number or digest as the synchronization request sent to the neighbor node 20 before.
  • step S21 of the network interface 14 receiving a synchronization request there is the step S21 of the network interface 14 receiving a synchronization request, as more specifically of figure 2.
  • step S23 checking whether a synchronization request on the very same piece of information has been sent to the neighbor node 20.
  • there can be a BPDU in RSTP/MSTP has a flag for a synchronization request message and a flag for a synchronization acknowledgment message and the description of the information on which the synchronization is requested for, which for instance can be a digest of the topology database or a node ID and a sequence number.
  • There can be the step of the agreeing step includes the step of using a CRC or a hash.
  • the main reason of accidental loops in case of a link-state control protocol is that network nodes 12 become aware of the change(s) in an asynchronous manner, i.e. at different time and the order of their notification is unpredictable. That is, the main reason for accidental loops is that the nodes 12 have an inconsistent view on the network 10 topology.
  • the present invention temporarily blocks forwarding at a network node 12 if the node 12 becomes aware of a change in the topology. Then the node 12 starts a handshake negotiation technique with its neighbors one by one, independently of each other. A link becomes unblocked again if both neighbors have the same information on the physical topology of the network 10.
  • Neighbors either agree on the latest topology changes or on a digest of the physical topology in a handshake technique. Therefore, it cannot happen that a link is in use between neighbors having different views on the topology. By blocking links between such neighbors all possible loops are cut before they could appear.
  • Link-state protocols apply periodic Hello messages to discover the neighbors of a node 12 and to monitor the connectivity.
  • Each node 12 advertises its information on its neighbors by flooding a Link State Advertisement (LSA) message in case of OSPF or a Link State Protocol Data Unit (LSP) in case of IS-IS.
  • LSA Link State Advertisement
  • LSP Link State Protocol Data Unit
  • These advertisements are identified by the ID of the sender node 12 and a sequence number. Therefore, it can be easily verified whether a node 12 has received the latest advertisement from a given node 12 or not.
  • Network nodes 12 build up and maintain a database on the physical topology of the network 10 and calculate forwarding paths based on this topology database. Thus, if all nodes 12 have the same view on the topology then they calculate the very same forwarding paths thus no loop may appear. It can be also verified whether the topology database of two nodes are identical by exchanging a digest on the database, e.g. a CRC or a hash.
  • Figure 1 shows the
  • Link-State Advertisement is received by a node 12. If it is just a refreshment of old information then there is nothing to do for the loop prevention mechanism. As opposed to this, if the advertisement contains information on a change in the topology then the receiver node 12 has to block all of its ports. Thus cuts appear in the forwarding topology, this way preventing the network 10 from occurrence of any accidental loop.
  • Blocking of ports may mean blocking of the entire port or only blocking of the active topology that is affected by the change. For instance, in case of SPB there are multiple Shortest Path Trees (SPT) configured and it is enough to block the tree to which the advertisement belongs.
  • SPT Shortest Path Trees
  • Synchronization Request (Sync Req) is sent to the neighbor nodes 20 on each port, which either contains the information on the latest advertisement(s) received, i.e. the Node ID and the Sequence Number or contains a digest of the topology database.
  • the request maybe on a bunch of advertisements, i.e.
  • Sync Req message may contain multiple Node IDs and corresponding Sequence
  • Synchronization Acknowledgement (Syn Ack) is received from the neighbor node 20 on the same LSA (LSP) or same digest for which the synchronization has been requested.
  • the Syn Ack also contains the Node ID and the Sequence number of the advertisement that is acknowledged or contains the digest.
  • the acknowledgement is sent out if the node 12 that has received the request had also received the advertisement in question and updated the forwarding topologies according to the new physical topology, i.e. has the same topology database. There is a cut at the requesting node 12 towards a neighbor node 20 until that specific neighbor has acknowledged the topology change.
  • Figure 2 shows the operation of the link-state loop prevention handshake mechanism when a Synchronization Request is received by a node 12. First, it has to be verified whether the very same advertisement(s) had been received and processed for which the synchronization request has been sent. Note that multiple advertisements may be bunched during the synchronization process depending on the implementation of the link-state handshake method.
  • Acknowledge message is sent to the neighbor, which contains the ID(s) of the advertisement(s), and the port is unblocked if it was blocked before or contains the digest.
  • two neighbor nodes 20 may receive the very same advertisement at the same time (or practically the same time). Then both of them initiate the handshake mechanism by sending the synchronization request. There are two options to handle this situation: a) both nodes block the link, send the request, send and receive the acknowledgement from the other side and unblock the link, b) consider the Synchronization Request received from the neighbor on the very same advertisement as an acknowledgement as both neighbors have the same topology information.
  • Option b is faster and the operation according to option b is shown in Figure 2.
  • link-state handshake protocol is demonstrated in the following in an example network 10 depicted in figure 3. Not that only the physical topology is presented there can be various forwarding topologies above this physical topology. Let us assume that a change in the topology happened. It can be any kind of change; it does not matter for the method so the change itself is not shown in the figure.
  • the nodes 12 are notified about the change in an unspecified, practically random order.
  • nodes B and F block their ports as they realize the topology change and send out the Synchronization Request on the advertisement received. After that, nodes A and H are also notified on the change as shown in figure 6.
  • Initial and the Final topology are loop-free.
  • the link between A and D is not used in the initial topology; and the link between C and D is unused in the final one.
  • a loop is formed during the transient if nodes A, B and E have updated view on the topology but nodes C and D have outdated view. The loop appears even if ingress checking is applied.
  • the loop cannot appear because the link between neighbors having different topology views is always cut.
  • the Link-State Handshake technique can be implemented in various ways. Two example implementation possibilities are described here.
  • the Link-State Handshake mechanism can be implemented with the help of ISIS PDUs and by the introduction of a new flag per each port of the node 12. Let us call this flag as BLOCKflag.
  • the application of existing IS-IS PDUs is described here.
  • An alternative to this is to define new PDUs or TLVs for the handshake mechanism.
  • the transmission of LSPs is controlled by the Send Routing Message flag (SRMflag), which can be set for each Link State PDU (LSP) per port (circuit). If the SRMflag for an LSP on a port is set then an LSP is going to be transmitted at the expiration of Minimum LSP Transmission Interval or immediately if a new LSP has been received. That is LSPs are sent out either because the Update Process automatically re-generates them or because a new LSP containing new information on network topology has arrived. Both kind of LSP transmissions are controlled by the SRMflag.
  • SRMflag Send Routing Message flag
  • the SRMflag is cleared if either a Partial Sequence Number PDU (PSNP or a Complete Sequence Number PDU (CSNP) is received for that LSP on that port. That is PSNP serves as a kind of acknowledgement for the LSPs listed in the PSNP had been received by the adjacent neighbor. If the LSP is not listed in the PSNP message then the SRMflag remains set, therefore, the LSP is going to be retransmitted to that neighbor. That is PSNP is for the control of retransmission of LSPs in IS-IS over point-to-point links.
  • PSNP Partial Sequence Number PDU
  • CSNP Complete Sequence Number PDU
  • the Link-State Handshake mechanism can be implemented with some extensions to IS-IS.
  • a new flag is introduced for each port: BLOCKflag; if the BLOCKflag is set then user plane frames are not allowed to pass through via that port, otherwise user frames can be transmitted via that port.
  • the port blocking has to be implemented somehow, i.e. no frames can enter the node 12 via that port and no frames can be sent out via that port. This can be implemented for instance by setting up a filter that is controlled by the BLOCKflag. Note that if IS-IS is used over a bridge network 10 then port blocking can be implemented by using the Blocking Port Role of RSTP/MSTP.
  • LSPs are used as Synchronization Request messages and PSNPs are used as Synchronization Acknowledge message of the Link-State Handshake method.
  • PSNPs are used as Synchronization Acknowledge message of the Link-State Handshake method.
  • the transmission of PSNPs has to be accelerated, which are sent out according to the PSNP interval, hi the current applications of IS-IS, the PSNP interval is in the range of seconds, which is not applicable for a loop prevention method as it would result in very slow convergence. Therefore, the PSNP interval has to be decreased into the range of milliseconds or tens of milliseconds.
  • the transmission of PSNPs is controlled by the Send Sequence Numbers Message flags (SSNfalg), which is set at the reception of each LSP transmitted on a point-to-point link.
  • SSNfalg Send Sequence Numbers Message flags
  • SSNflag is set for an LSP on a port then the corresponding LSP has to be listed in the next PSNP sent out on that port. SSNflag is cleared when the corresponding PSNP has been sent out. hi order to be able accelerate the transmission PSNPs the SSNflags of the LSPs have to be able to be checked very easily and fast. Therefore, it is proposed to maintain a separate vector (SSNvector) for the SSNflag, thus it can be easily checked by a binary operation whether is there any SSNflag set and the corresponding LSP is to be listed in the next PSNP. Another possibility is to implement an interrupt based control for the transmission of PSNPs instead of the polling kind PSNP interval based transmission.
  • the SRNflag is cleared, hi that case both neighbors are aware of the topology change carried by the corresponding LSP thus the link between them can be unblocked. That is the BLOCKflag has to be cleared and the link is reactivated.
  • the IS-IS entity forwards the LSP via that port.
  • the SRMflag is kept set until a PSNP is not received on that port.
  • the neighbor receives the LSP on a point-to-point link it sets the corresponding SSNflag.
  • the SSNflag is set for an LSP then the reception of that LSP is going to be reported to the neighbor in the next PSNP, which is sent periodically according to the PSNP interval. All the LSPs received within the PSNP interval are acknowledged in the same PSNP.
  • both the SRMflag and the BLOCKflag are cleared and the link is unblocked, user frames can be transmitted on it.
  • RSTP/MSTP provides the Proposal-Agreement handshake mechanism for loop prevention. This mechanism is coupled to the distance vector from the Root Bridge, which indicates topology change information if it has been changed. Since RSTP and MSTP are distance vector control protocols their combined application together with a link-state control protocol such as IS-IS is not beneficial. If IS-IS is the control protocol for configuring the active topology in SPB then RSTP/MSTP should not run in parallel.
  • IS-IS can be used in a bridge network 10 for the configuration of the active topologies and the Link- State Handshake mechanism can be implemented in RSTP/MSTP BPDUs and run parallel to IS-IS.
  • RSTP/MSTP BPDUs implement a handshake mechanism thus the Link- State Handshake mechanism can be implemented in such BPDUs with a little modification on them.
  • the Proposal flag (Bit 2 of Octet 5) of BPDUs can be used as a flag for Synchronization Request message.
  • the Agreement flag (Bit 7 of Octet 5) of BPDUs can be used as a flag for Synchronization Acknowledge message.
  • IS-IS is aimed to be used in SPB as a link-state control protocol for SPB.
  • LSP ID and the Sequence Number of an IS-IS LSP can be used as an identifier of topology change information.
  • the LSP ID is the System ID of the source of the Link
  • BPDUs with a digest of the topology database and provide the handshake based on the digest.
  • Port blocking can be for instance implemented by using the Blocking Port role.
  • the loop prevention technique can be easily implemented based on RSTP/MSTP BPDUs.
  • This invention provides a new method for loop prevention in link-state control protocol controlled networks 10.
  • Link-state protocols update their view on the network 10 topology in an asynchronous manner, i.e. in an unpredictable order; therefore, transient loops may appear during network 10 convergence after a change in the topology, which may degrade the performance of the network 10.
  • the proposed Link- State Handshake method prevents the appearance of loops in the network 10 by introducing temporal cuts in between neighbor nodes 20. These cuts do not depend on each other thus do not influence the convergence time significantly with appropriate implementation and configuration. Two implementation possibilities have been also proposed.
  • This invention is related to the ongoing discussions in IEEE 802. laq Shortest Path Bridging.
  • the proposed method maybe applied in the IP Fast Re-Route framework too.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

A network node of a telecommunications network controlled by a link-state protocol includes a network interface which receives a message that contains information on a change in topology of the network. The node includes a processing unit that blocks forwarding of traffic to at least one neighbor node of the network at the network interface, agrees on the change in topology with the neighbor node; and unblocks the forwarding of traffic when the neighbor node has information about the topology which is the same as the information about the topology in a memory. A transient loop prevention method of a network node of a network having a plurality of a network nodes controlled by a link-state protocol includes the steps of receiving a message at a network interface which contains information on a change in topology of the network. There is the step of blocking forwarding of traffic to each neighbor node of the network at the network interface by a processing unit. There is the step of agreeing by the processing unit on the change in topology with the neighbor node. There is the step of unblocking the forwarding of traffic when the neighbor node has information about the topology which is the same as the information about the topology stored in a memory.

Description

METHOD AND APPARATUS FOR LINK-STATE HANDSHAKE FOR LOOP PREVENTION
TECHNICAL FIELD The present invention is related to the prevention of a transient loop in a packet switched telecommunication network
BACKGROUND
This section is intended to introduce the reader to various aspects of the art that may be related to various aspects of the present invention. The following discussion is intended to provide information to facilitate a better understanding of the present invention. Accordingly, it should be understood that statements in the following discussion are to be read in this light, and not as admissions of prior art.
Today there is an increased need for faster network convergence of packet switched networks, such as IP and Ethernet networks due to the increased amount of real time traffic that they carry. In order to provide fast failure handling in IP networks different EP Fast Re-Route (IPFRR) techniques have been introduced. Although, the user traffic is redirected to a backup path very fast, the link-state control protocols applied in IP networks do not converge that fast. Therefore, so called micro-loops may appear during a topology transient, which have to be avoided.
Link-state control protocols are recently proposed to be applied in Ethernet networks too; the architecture is being specified in IEEE 802. laq Shortest Path Bridging (IEEE 802. laq Virtual Bridged Local Area Networks - Amendment 9: Shortest Path Bridging, Draft D0.4, February 19, 2008). Loop prevention is essential for Ethernet networks as an accidental loop may cause network meltdown due to the multiplication of looped multicast or broadcast frames. As opposed to IP there is no TTL field in the header of Ethernet frames thus the frames multiplied because of a loop cannot die out from the network.
The application of link-state control protocols in Ethernet networks and in IPFRR networks raise the need of an efficient loop prevention mechanism.
Ingress checking, also referred to as Reverse Path Forwarding Check (RPFC), has been proposed to handle loops in SPB. However, ingress checking does not eliminate all possible loops but only decreases the possibility of temporal loops. That is, accidental loops may appear despite of ingress checking is applied as shown by a couple of examples.
There are various proposals for loop prevention in IPFRR However, each of these methods has significant disadvantages. They are either slow or apply tunneling or require an out-of-control plane protocol (e.g. NTP) etc. Therefore, no straightforward solution has been proposed.
SUMMARY
The present invention is related to the prevention of a transient loop in a network controlled by a link-state protocol based on blocking forwarding of traffic by a network node when the node receives a message which contains information on a change in topology of the network. This blocking of forwarding of traffic is established towards each neighbor independently of each other, and the blocking is maintained on a link between two neighbor nodes until they agree that they have the very same view on the physical topology of the network, i.e. until they agree that both of them received the very same information on the physical topology of the network, e.g. both received the information on all changes in the physical topology. After having the agreement between the neighbor nodes, the forwarding of traffic is unblocked on the link between the neighbor nodes. Thus, the appearance of all possible loops that could appear during a transient in the network is prevented. Furthermore, the agreements, i.e. the topology view synchronization, between neighbor nodes are independent of each other, thus minimizing the blocking time on a link and making the loop free convergence fast.
BRIEF DESCRIPTION OF THE DRAWINGS
In the accompanying drawings, the preferred embodiment of the invention and preferred methods of practicing the invention are illustrated in which:
Figure 1 is a flow chart of the present invention when a message is received having information on a topology change; Figure 2 is a flow chart of the present invention when a Synchronization
Request message is received from a neighbor node; Figure 3 is an example of a network topology; Figure 4 shows nodes notified first of the network topology for figure 3; Figure 5 shows which nodes block their path of the example operation of link- state handshake protocol;
Figure 6 shows additional nodes recognize the change of the example;
Figure 7 shows even more nodes recognize the change of the example; Figure 8 shows all nodes recognize the change of the example;
Figure 9 shows all nodes are updated of the example;
Figure 10 shows a transient loop in IS-IS based SPB, which appears even if ingress checking is applied;
Figure 11 shows loop prevention for an SPB scenario of the present invention; Figure 12 is a block diagram of a node of the present invention.
DETAILED DESCRIPTION
Referring now to the drawings wherein like reference numerals refer to similar or identical parts throughout the several views, and more specifically to figure 12 thereof, there is shown a network node 12 of a telecommunications network 10 controlled by a link-state protocol. The node 12, which is depicted in detail in figure 12, comprises a network interface 14 which receives a message that contains information on a change in topology of the network 10. The node 12 comprises a processing unit 16 that blocks forwarding of traffic to at least one neighbor node 20 of the network 10 at the network interface 14, agrees on the change in topology with the neighbor node 20; and unblocks the forwarding of traffic when the neighbor node 20 has information about the physical topology which is the same as the information about the physical topology in a memory 18. . The physical topology comprises all network nodes and all connections between them. A link-state control protocol is used in the network and an instance of the control protocol entity is run in each network node. The link-state protocol maintains the information about the physical topology in each network node. The link-state control protocol determines forwarding paths for data messages between network nodes. The forwarding paths used in an Ethernet network comprise the so-called active topology, which should be always loop free. In traditional Ethernet networks the active topology is typically a spanning tree controlled by the Rapid Spanning Tree Protocol (RSTP). The spanning tree does not comprise all physical connections but inactivate some of the redundant ones in order to avoid loops. -A-
The connections kept active by RSTP form the active topology, which is a spanning tree. MSTP and SPB are able to handle multiple active topologies, i.e. multiple trees.
The network interface 14 can receive an advertisement from another neighbor node 22 which contains the information on the change to the topology. The processing unit 16 can block at least an active topology or a forwarding path that is affected by the change at least at one port of the network interface 14. The network interface 14 can send a synchronization request to the neighbor node 20 on at least one port which contains the information on the advertisement. The processing unit 16 can verify the neighbor node 20 has received the advertisement. The network interface 14 can receive a synchronization acknowledgment from the neighbor node 20 to which the synchronization request has been sent that indicates the neighbor node 20 has updated the topology according to the topology information in the advertisement. The purpose of the synchronization is to assure that the neighbor nodes have the very same view on the physical topology of the network. As described above it can be done by checking that both neighbor nodes received all pieces of information on the physical topology, i.e. have the very same set of advertisements. An alternative to this is to verify that they have the very same topology database describing the physical topology of the network. For this purpose the neighbor nodes may exchange a digest of their topology database (the part of the database that describes the physical topology or e.g. the entire topology database that stores all the received advertisements) and synchronize themselves based on this digest. The digest can be for instance a unique hash or a CRC prepared based on the topology database
The network interface 14 can receive the synchronization acknowledgment having a node ID and a sequence number of the advertisement. The network interface 14 can receive a synchronization request. The processing unit 16 can verify the advertisement has been received and processed for which the synchronization request has been sent. The network interface 14 can send a synchronization acknowledgment. The network interface 14 can can have the IS-IS Send Routing Message Flag set for each link-state PDU per port and a flag regarding blocking of a port when the advertisement has the topology change information. There can be a BPDU in RSTP/MSTP that has a flag for a synchronization request message and a flag for a synchronization acknowledgment message besides having a digest of the topology database or having a node ID and a sequence number of the advertisement. The present invention pertains to a transient loop prevention method of a network node 12 of a network 10 having a plurality of a network nodes 12 controlled by a link-state protocol, which is illustrated in figure 1 and in figure 2. The method comprises the step Sl 1 of receiving a message at a network interface 14 which contains information on a change in topology of the network 10. There is the step S 12 of blocking forwarding of traffic to each neighbor node 20 of the network 10 at the network interface 14 by a processing unit 16. There is the step of agreeing by the processing unit 16 on the change in topology with the neighbor node 20. There is the step S16 of unblocking the forwarding of traffic when the neighbor node 20 has information about the topology which is the same as the information about the topology stored in a memory 18, i.e. the neighbor node 20 has the same view on the topology. There is the step S17 of checking whether there are still blocked interfaces 20.
The step SI l of receiving a message can include the step of receiving an advertisement at the network interface 14 from another neighbor node 22 which contains the information on the change to the topology. The blocking step S12 can include the step of blocking at least an active topology or a forwarding path that is affected by the change at network interface 14. There can be the step of maintaining the blocking until the neighbor node 20 agrees that it has a topology in its memory 18 that is the same as the topology in the memory 18. The agreeing step can include the step Sl 3 of sending a synchronization request to the other neighbor node 22 on at least one port which contains the information on the advertisement or on the topology database. The agreeing step can include the step of verifying the neighbor node 20 has received the same advertisement(s), i.e. has the very same topology database. The verifying step can include the step S 14 of receiving a synchronization acknowledgment from the neighbor node 20 to which the synchronization request has been sent that indicates the neighbor node 20 has updated the topology according to the topology information in the advertisement. The reception of the synchronization acknowledgment step S 14 can include the step of receiving the synchronization acknowledgment having a node ID and a sequence number of the advertisement or receiving the synchronization acknowledgment having a digest on the topology database. The verifying step can include the step Sl 5 of receiving a synchronization request on the very same piece of information sent to the neighbor node 20. That is the synchronization request received may have the same node ID and sequence number or digest as the synchronization request sent to the neighbor node 20 before.
There is the step S21 of the network interface 14 receiving a synchronization request, as more specifically of figure 2. There is the step S22 of verifying with the processing unit 16 the advertisement has been received and processed or having the same digest on the topology database for which the synchronization request has been sent. There can be the step S23 checking whether a synchronization request on the very same piece of information has been sent to the neighbor node 20. There is the step S24 of sending with the network interface 14 a synchronization acknowledgment. There is the step S25 of unblocking the port if it is blocked.
There can be the step of configuring the IS-IS Send Routing Message Flag on each network interface 14 for each IS-IS link-state PDU. There can be the step Sl 2 of setting a flag regarding blocking of a port at the reception of an advertisement containing topology change information. Alternatively, there can be a BPDU in RSTP/MSTP has a flag for a synchronization request message and a flag for a synchronization acknowledgment message and the description of the information on which the synchronization is requested for, which for instance can be a digest of the topology database or a node ID and a sequence number. There can be the step of agreeing with the neighbor node 20 on a digest of at least a portion of the topology stored in the memory 18. There can be the step of the agreeing step includes the step of using a CRC or a hash.
There are no loops in the active topologies of Ethernet networks or in the forwarding trees of IP networks when the physical topology is stable, i.e. there is no change in the physical topology. That is, loops may only appear during the reconfiguration of forwarding topologies due to a change in the network 10, e.g. breakdown event or reconfiguration, but there is no loop either before the control plane update or after the update. Therefore, loop prevention has to operate during topology transients.
Furthermore, the main reason of accidental loops in case of a link-state control protocol is that network nodes 12 become aware of the change(s) in an asynchronous manner, i.e. at different time and the order of their notification is unpredictable. That is, the main reason for accidental loops is that the nodes 12 have an inconsistent view on the network 10 topology. In the operation of the invention there are no temporal or transient loops despite of changes in the physical topology. The present invention temporarily blocks forwarding at a network node 12 if the node 12 becomes aware of a change in the topology. Then the node 12 starts a handshake negotiation technique with its neighbors one by one, independently of each other. A link becomes unblocked again if both neighbors have the same information on the physical topology of the network 10. Neighbors either agree on the latest topology changes or on a digest of the physical topology in a handshake technique. Therefore, it cannot happen that a link is in use between neighbors having different views on the topology. By blocking links between such neighbors all possible loops are cut before they could appear.
All stable forwarding topologies, i.e. active topologies of Ethernet networks or forwarding trees formulated by routing entries in IP networks are loop free. That is there are no loops either in the forwarding topology set-up by the control protocol before the change or in the forwarding topology after the change. Loops can be eliminated from the network 10 by proper cuts applied during topology transients. The handshake based loop cutting mechanism proposed in this invetion for link-state control protocols is described in the following in detail.
Link-state protocols apply periodic Hello messages to discover the neighbors of a node 12 and to monitor the connectivity. Each node 12 advertises its information on its neighbors by flooding a Link State Advertisement (LSA) message in case of OSPF or a Link State Protocol Data Unit (LSP) in case of IS-IS. These advertisements are identified by the ID of the sender node 12 and a sequence number. Therefore, it can be easily verified whether a node 12 has received the latest advertisement from a given node 12 or not. Network nodes 12 build up and maintain a database on the physical topology of the network 10 and calculate forwarding paths based on this topology database. Thus, if all nodes 12 have the same view on the topology then they calculate the very same forwarding paths thus no loop may appear. It can be also verified whether the topology database of two nodes are identical by exchanging a digest on the database, e.g. a CRC or a hash. Figure 1 shows the operation of the proposed loop prevention method when a
Link-State Advertisement is received by a node 12. If it is just a refreshment of old information then there is nothing to do for the loop prevention mechanism. As opposed to this, if the advertisement contains information on a change in the topology then the receiver node 12 has to block all of its ports. Thus cuts appear in the forwarding topology, this way preventing the network 10 from occurrence of any accidental loop.
Blocking of ports may mean blocking of the entire port or only blocking of the active topology that is affected by the change. For instance, in case of SPB there are multiple Shortest Path Trees (SPT) configured and it is enough to block the tree to which the advertisement belongs.
After blocking the ports, a Synchronization Request (Sync Req) is sent to the neighbor nodes 20 on each port, which either contains the information on the latest advertisement(s) received, i.e. the Node ID and the Sequence Number or contains a digest of the topology database. The request maybe on a bunch of advertisements, i.e.
Sync Req message may contain multiple Node IDs and corresponding Sequence
Numbers.
A port is blocked until a Synchronization Acknowledgement (Syn Ack) is received from the neighbor node 20 on the same LSA (LSP) or same digest for which the synchronization has been requested. The Syn Ack also contains the Node ID and the Sequence number of the advertisement that is acknowledged or contains the digest.
The acknowledgement is sent out if the node 12 that has received the request had also received the advertisement in question and updated the forwarding topologies according to the new physical topology, i.e. has the same topology database. There is a cut at the requesting node 12 towards a neighbor node 20 until that specific neighbor has acknowledged the topology change.
Figure 2 shows the operation of the link-state loop prevention handshake mechanism when a Synchronization Request is received by a node 12. First, it has to be verified whether the very same advertisement(s) had been received and processed for which the synchronization request has been sent. Note that multiple advertisements may be bunched during the synchronization process depending on the implementation of the link-state handshake method.
If the same advertisement(s) is received and processed then the Synchronization
Acknowledge message is sent to the neighbor, which contains the ID(s) of the advertisement(s), and the port is unblocked if it was blocked before or contains the digest.
Note that two neighbor nodes 20 may receive the very same advertisement at the same time (or practically the same time). Then both of them initiate the handshake mechanism by sending the synchronization request. There are two options to handle this situation: a) both nodes block the link, send the request, send and receive the acknowledgement from the other side and unblock the link, b) consider the Synchronization Request received from the neighbor on the very same advertisement as an acknowledgement as both neighbors have the same topology information.
Option b is faster and the operation according to option b is shown in Figure 2.
Demonstrative example of the operation
The operation of the link-state handshake protocol is demonstrated in the following in an example network 10 depicted in figure 3. Not that only the physical topology is presented there can be various forwarding topologies above this physical topology. Let us assume that a change in the topology happened. It can be any kind of change; it does not matter for the method so the change itself is not shown in the figure.
The nodes 12 are notified about the change in an unspecified, practically random order.
The order according to which the nodes 12 become aware of the change does not matter for the operation of the proposed method. One order is selected and demonstrated in the following.
It is assumed that nodes B and F become aware of the change as illustrated in figure 4.
As figure 5 shows nodes B and F block their ports as they realize the topology change and send out the Synchronization Request on the advertisement received. After that, nodes A and H are also notified on the change as shown in figure 6.
They send back the Synchronization Acknowledge to the neighbors on the port they received the Synchronization Request. They block all the rest of their ports and send out the Synchronization Request.
As soon as the acknowledgements arrive, A-B and F-H links become unblocked as depicted in Figure 7. Nodes C, D, E, I and J become aware of the change in the next step so they acknowledge former requests, block the rest of their ports and send out the
Synchronization Request. Note that nodes I and J send the request at the same time, which holds for nodes C and E too. The algorithms shown in Figure 1 and Figure 2 are applied, i.e. if both neighbors send the request for the same advertisement on the same link then they activate the link after the reception of the request from the other side. Figure 8 shows the result of the previous messages. Figure 9 shows the case where all nodes 12 are updated and the last one has sent back the acknowledgement thus there is no blocked link.
As the above figures show there are independent cuts in the forwarding topology during convergence, which are not synchronized to each other but depend on the order of notification of network nodes 12. It is very important that the network 10 is not shut down during convergence. The handshake technique differs from the one implemented in RSTP/MSTP because in RSTP/MSTP the handshake is coupled to the information propagation on topology change, which is carried by the distance vector, thus proposal-agreement handshakes has to follow a sequence from the Root Bridge towards leaf bridges. There have been a couple of scenarios identified where transient loops may appear in the IS-IS based architecture that has been proposed for SPB despite of appling a loop mitigation, e.g. ingress checking. One of them is depicted in Figure 10.
The physical connection between A and B is cut and a new physical connection appears between B and E at the same time. The link costs are also indicated in the figure; the arrows show the packet transmission from node A. As it can be seen the
Initial and the Final topology are loop-free. The link between A and D is not used in the initial topology; and the link between C and D is unused in the final one. However, a loop is formed during the transient if nodes A, B and E have updated view on the topology but nodes C and D have outdated view. The loop appears even if ingress checking is applied.
Applying the Link-State Handshake technique prevents the network 10 from the accidental loop as depicted in Figure 11.
The loop cannot appear because the link between neighbors having different topology views is always cut. The Link-State Handshake technique can be implemented in various ways. Two example implementation possibilities are described here.
The Link-State Handshake mechanism can be implemented with the help of ISIS PDUs and by the introduction of a new flag per each port of the node 12. Let us call this flag as BLOCKflag. The application of existing IS-IS PDUs is described here. An alternative to this is to define new PDUs or TLVs for the handshake mechanism.
In IS-IS, the transmission of LSPs is controlled by the Send Routing Message flag (SRMflag), which can be set for each Link State PDU (LSP) per port (circuit). If the SRMflag for an LSP on a port is set then an LSP is going to be transmitted at the expiration of Minimum LSP Transmission Interval or immediately if a new LSP has been received. That is LSPs are sent out either because the Update Process automatically re-generates them or because a new LSP containing new information on network topology has arrived. Both kind of LSP transmissions are controlled by the SRMflag. On point-to-point links, the SRMflag is cleared if either a Partial Sequence Number PDU (PSNP or a Complete Sequence Number PDU (CSNP) is received for that LSP on that port. That is PSNP serves as a kind of acknowledgement for the LSPs listed in the PSNP had been received by the adjacent neighbor. If the LSP is not listed in the PSNP message then the SRMflag remains set, therefore, the LSP is going to be retransmitted to that neighbor. That is PSNP is for the control of retransmission of LSPs in IS-IS over point-to-point links.
The Link-State Handshake mechanism can be implemented with some extensions to IS-IS. A new flag is introduced for each port: BLOCKflag; if the BLOCKflag is set then user plane frames are not allowed to pass through via that port, otherwise user frames can be transmitted via that port. The port blocking has to be implemented somehow, i.e. no frames can enter the node 12 via that port and no frames can be sent out via that port. This can be implemented for instance by setting up a filter that is controlled by the BLOCKflag. Note that if IS-IS is used over a bridge network 10 then port blocking can be implemented by using the Blocking Port Role of RSTP/MSTP. LSPs are used as Synchronization Request messages and PSNPs are used as Synchronization Acknowledge message of the Link-State Handshake method. In addition to this, the transmission of PSNPs has to be accelerated, which are sent out according to the PSNP interval, hi the current applications of IS-IS, the PSNP interval is in the range of seconds, which is not applicable for a loop prevention method as it would result in very slow convergence. Therefore, the PSNP interval has to be decreased into the range of milliseconds or tens of milliseconds. The transmission of PSNPs is controlled by the Send Sequence Numbers Message flags (SSNfalg), which is set at the reception of each LSP transmitted on a point-to-point link. If the SSNflag is set for an LSP on a port then the corresponding LSP has to be listed in the next PSNP sent out on that port. SSNflag is cleared when the corresponding PSNP has been sent out. hi order to be able accelerate the transmission PSNPs the SSNflags of the LSPs have to be able to be checked very easily and fast. Therefore, it is proposed to maintain a separate vector (SSNvector) for the SSNflag, thus it can be easily checked by a binary operation whether is there any SSNflag set and the corresponding LSP is to be listed in the next PSNP. Another possibility is to implement an interrupt based control for the transmission of PSNPs instead of the polling kind PSNP interval based transmission. As the PSNP is received the SRNflag is cleared, hi that case both neighbors are aware of the topology change carried by the corresponding LSP thus the link between them can be unblocked. That is the BLOCKflag has to be cleared and the link is reactivated.
The operation of IS-IS with these settings and extensions is as follows in a network 10 where only point-to-point links are installed. Let us assume that a node 12 receives an LSP about a topology change in one of its ports. The SRMflag is then set for that LSP for all ports except for the one on which the LSP has been received. If the LSP is not a repetition of a former one but it is about a topology change then the BLOCKflag has to be also set for all ports except for the one on which the LSP arrived. That is all of these ports have to be blocked. Note that the port on which the LSP arrived is not needed to be blocked since the neighbor connected to that particular node 12 is aware of the topology change as that node 12 sent the information on it. If the SRMflag is set on a port then the IS-IS entity forwards the LSP via that port. The SRMflag is kept set until a PSNP is not received on that port. As the neighbor receives the LSP on a point-to-point link it sets the corresponding SSNflag. If the SSNflag is set for an LSP then the reception of that LSP is going to be reported to the neighbor in the next PSNP, which is sent periodically according to the PSNP interval. All the LSPs received within the PSNP interval are acknowledged in the same PSNP. As the PSNP has been received both the SRMflag and the BLOCKflag are cleared and the link is unblocked, user frames can be transmitted on it.
RSTP/MSTP provides the Proposal-Agreement handshake mechanism for loop prevention. This mechanism is coupled to the distance vector from the Root Bridge, which indicates topology change information if it has been changed. Since RSTP and MSTP are distance vector control protocols their combined application together with a link-state control protocol such as IS-IS is not beneficial. If IS-IS is the control protocol for configuring the active topology in SPB then RSTP/MSTP should not run in parallel.
Although, IS-IS can be used in a bridge network 10 for the configuration of the active topologies and the Link- State Handshake mechanism can be implemented in RSTP/MSTP BPDUs and run parallel to IS-IS.
RSTP/MSTP BPDUs implement a handshake mechanism thus the Link- State Handshake mechanism can be implemented in such BPDUs with a little modification on them.
The Proposal flag (Bit 2 of Octet 5) of BPDUs can be used as a flag for Synchronization Request message.
The Agreement flag (Bit 7 of Octet 5) of BPDUs can be used as a flag for Synchronization Acknowledge message.
IS-IS is aimed to be used in SPB as a link-state control protocol for SPB. The
LSP ID and the Sequence Number of an IS-IS LSP can be used as an identifier of topology change information. The LSP ID is the System ID of the source of the Link
State PDU; the Sequence Number is the sequence number of LSP. Therefore, the LSP
ID and the Sequence Number should be incorporated into BPDUs in order to implement Synchronization Request and Synchronization Acknowledge messages of the proposed Link-State Handshake mechanism. It is an option to define room form the identification of more LSPs in the same BPDU. An alternative to this is to extend the
BPDUs with a digest of the topology database and provide the handshake based on the digest.
Port blocking can be for instance implemented by using the Blocking Port role.
That is, the loop prevention technique can be easily implemented based on RSTP/MSTP BPDUs.
This invention provides a new method for loop prevention in link-state control protocol controlled networks 10. Link-state protocols update their view on the network 10 topology in an asynchronous manner, i.e. in an unpredictable order; therefore, transient loops may appear during network 10 convergence after a change in the topology, which may degrade the performance of the network 10. The proposed Link- State Handshake method prevents the appearance of loops in the network 10 by introducing temporal cuts in between neighbor nodes 20. These cuts do not depend on each other thus do not influence the convergence time significantly with appropriate implementation and configuration. Two implementation possibilities have been also proposed.
This invention is related to the ongoing discussions in IEEE 802. laq Shortest Path Bridging. The proposed method maybe applied in the IP Fast Re-Route framework too.
Abbreviations
BPDU Bridge Protocol Data Unit
CSNP Complete Sequence Number PDU
IP-FRR IP Fast Re-Route
IS-IS Intermediate System to Intermediate System Routing Protocol
LSA Link State Advertisement
LSP Link State Protocol Data Unit
MSTP Multiple Spanning Tree Protocol
OSPF Open Shortest Path First
PSNP Partial Sequence Number PDU
RSTP Rapid Spanning Tree Protocol
SPB Shortest Path Bridging
SRMflag Send Routing Message flag
SSNfalg Send Sequence Numbers Message flags
Although the invention has been described in detail in the foregoing embodiments for the purpose of illustration, it is to be understood that such detail is solely for that purpose and that variations can be made therein by those skilled in the art without departing from the spirit and scope of the invention except as it may be described by the following claims.

Claims

1. A transient loop prevention method of a network node of a network having a plurality of network nodes controlled by a link-state protocol, the method comprising the steps of: receiving a message at a network interface which contains information on a change in topology of the network; blocking forwarding of traffic to each neighbor node of the network at the network interface by a processing unit; agreeing by the processing unit on the change in topology with each neighbor node; and unblocking the forwarding of traffic when the neighbor node has information about the topology which is the same as the information about the topology stored in a memory.
2. The method as described in Claim 1 wherein the step of receiving a message includes the step of receiving an advertisement at the network interface from another neighbor node which contains the information on the change to the topology.
3. The method as described in Claim 2 wherein the blocking step includes the step of blocking at least an active topology or a forwarding path that is affected by the change at network interface.
4. The method as described in Claim 3 including the step of maintaining the blocking until the neighbor node agrees that it has a topology in its memory that is the same as the topology in the memory.
5. The method as described in Claim 4 wherein the agreeing step includes the step of sending a synchronization request to the other neighbor node on at least one port which contains the information on the advertisement.
6. The method as described in Claim 5 wherein the agreeing step includes the step of verifying the neighbor node has received the same advertisement(s), i.e. has the very same topology database.
7. The method as described in Claim 6 wherein the verifying step includes the step of receiving a synchronization acknowledgment from the neighbor node to which the synchronization request has been sent that indicates the neighbor node has updated the topology according to the topology information in the advertisement.
8. The method as described in Claim 7 wherein the reception of the synchronization acknowledgment step includes the step of receiving the synchronization acknowledgment having a node ID and a sequence number of the advertisement.
9. The method as described in Claim 3 including the step of the network interface receiving a synchronization request.
10. The method as described in Claim 9 including the step of verifying with the processing unit the advertisement has been received and processed for which the synchronization request has been sent.
11. The method as described in Claim 10 including the step of sending with the network interface a synchronization acknowledgment.
12. The method as described in Claim 8 including the steps of setting a Send Routing Message Flag for each IS-IS link-state PDU per port, setting a flag regarding blocking of a port when the advertisement contains topology change information, clearing the flag regarding blocking of a port at the reception of a Partial Sequence Numbers Protocol Data Unit (PSNP), and configuring the PSNP Interval in the range of milliseconds for fast convergence.
13. The method as described in Claim 8 wherein a BPDU in RSTP/MSTP has a flag for a synchronization request message and a flag for a synchronization acknowledgment message and the BPDU contains either a description on the topology database or a digest of the topology database.
14. The method as described in Claim 4 wherein the agreeing step includes the step of agreeing with the neighbor node on a digest of at least a portion of the topology stored in the memory, where the digest is a CRC or a hash of the topology database.
15. A network node of a telecommunications network controlled by a link- state protocol comprising: a network interface which is adapted to receive a message that contains information on a change in topology of the network; and a processing unit that blocks forwarding of traffic to at least one neighbor node of the network at the network interface, agrees on the change in topology with the neighbor node, and unblocks the forwarding of traffic when the neighbor node has information about the topology which is the same as the information about the topology in a memory.
16. The node as described in Claim 15 wherein the network interface is adapted to receive an advertisement from another neighbor node which contains the information on the change to the topology.
17. The node as described in Claim 16 wherein the processing unit blocks at least an active topology or a forwarding path that is affected by the change at least at one port of the network interface.
18. The node as described in Claim 17 wherein the network interface is adapted to send a synchronization request to the neighbor node on at least one port which contains the information on the advertisement.
19. The node as described in Claim 18 wherein the processing unit verifies the neighbor node has received the advertisement.
20. The node as described in Claim 19 wherein the network interface is adapted to receive a synchronization acknowledgment from the neighbor node to which the synchronization request has been sent that indicates the neighbor node has updated the topology according to the topology information in the advertisement.
21. The node as described in Claim 20 wherein the network interface is adapted to receive the synchronization acknowledgment having a node ID and a sequence number of the advertisement.
22. The node as described in Claim 21 wherein the network interface is adapted to receive a synchronization request.
23. The node as described in Claim 22 wherein the processing unit verifies the advertisement has been received and processed for which the synchronization request has been sent.
24. The node as described in Claim 23 wherein the network interface is adapted to send a synchronization acknowledgment.
25. The node as described in Claim 24 wherein a Send Routing Message Flag is set in each network interface for each link-state PDU per port and the network interface is adapted to maintain a flag regarding blocking of a port and to set the blocking flag when the advertisement has the topology change information and to clear the blocking flag at the reception of a corresponding Partial Sequence Numbers Protocol Data Unit.
26. The node as described in Claim 24 wherein a BPDU in RSTP/MSTP has a flag for a synchronization request message and a flag for a synchronization acknowledgment message and the BPDU contains either a description on the topology database or a digest of the topology database.
PCT/IB2009/000477 2008-03-12 2009-03-10 Method and apparatus for link-state handshake for loop prevention WO2009112929A2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP09719124.1A EP2274880B1 (en) 2008-03-12 2009-03-10 Method and apparatus for link-state handshake for loop prevention
RU2010141754/08A RU2511605C2 (en) 2008-03-12 2009-03-10 Method and apparatus for link state handshake to prevent looping
JP2010550279A JP5432928B2 (en) 2008-03-12 2009-03-10 Method and apparatus for link state handshaking for loop prevention
US12/922,235 US8606961B2 (en) 2008-03-12 2009-03-10 Method and apparatus for link-state handshake for loop prevention
US14/088,701 US20140181320A1 (en) 2008-03-12 2013-11-25 Method and apparatus for link-state handshake for loop prevention

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US3585008P 2008-03-12 2008-03-12
US61/035,850 2008-03-12

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US12/922,235 A-371-Of-International US8606961B2 (en) 2008-03-12 2009-03-10 Method and apparatus for link-state handshake for loop prevention
US14/088,701 Continuation US20140181320A1 (en) 2008-03-12 2013-11-25 Method and apparatus for link-state handshake for loop prevention

Publications (2)

Publication Number Publication Date
WO2009112929A2 true WO2009112929A2 (en) 2009-09-17
WO2009112929A3 WO2009112929A3 (en) 2009-11-05

Family

ID=41009324

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2009/000477 WO2009112929A2 (en) 2008-03-12 2009-03-10 Method and apparatus for link-state handshake for loop prevention

Country Status (5)

Country Link
US (2) US8606961B2 (en)
EP (1) EP2274880B1 (en)
JP (1) JP5432928B2 (en)
RU (1) RU2511605C2 (en)
WO (1) WO2009112929A2 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2337275A1 (en) * 2009-12-17 2011-06-22 Alcatel Lucent Method of automatically discovering an adjacent network node
US20130097693A1 (en) * 2011-10-14 2013-04-18 Samsung Electronics Co., Ltd. Apparatus and method for automatic unlocking of portable terminal
EP2701354A1 (en) * 2012-07-17 2014-02-26 Huawei Technologies Co., Ltd. Method and apparatus for creating network devices
WO2014184624A1 (en) * 2013-05-13 2014-11-20 Telefonaktiebolaget L M Ericsson (Publ) Network state digest for convergence check
CN115396361A (en) * 2022-08-16 2022-11-25 中国电子科技集团公司第七研究所 Unmanned cluster network loop avoidance system

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100316056A1 (en) * 2009-06-12 2010-12-16 Nortel Networks Limited Techniques for routing data between network areas
KR20130060170A (en) * 2010-03-26 2013-06-07 록스타 비드코, 엘피 Distributed failure recovery in a routed ethernet network
CN102340434B (en) * 2011-07-07 2014-03-26 杭州华三通信技术有限公司 Multihoming access-based loop avoidance method and edge devices
US8839013B2 (en) * 2011-09-30 2014-09-16 Hewlett-Packard Development Company, L.P. Method of reducing power consumption in a network
JP5545285B2 (en) * 2011-11-18 2014-07-09 日本電気株式会社 Network device, network system, multiple spanning tree protocol management method and program
US9106565B2 (en) 2013-01-04 2015-08-11 International Business Machines Corporation Loop avoidance for event-driven virtual link aggregation
US9502111B2 (en) 2013-11-05 2016-11-22 Cisco Technology, Inc. Weighted equal cost multipath routing
US9655232B2 (en) 2013-11-05 2017-05-16 Cisco Technology, Inc. Spanning tree protocol (STP) optimization techniques
US9674086B2 (en) 2013-11-05 2017-06-06 Cisco Technology, Inc. Work conserving schedular based on ranking
US9374294B1 (en) 2013-11-05 2016-06-21 Cisco Technology, Inc. On-demand learning in overlay networks
US10778584B2 (en) 2013-11-05 2020-09-15 Cisco Technology, Inc. System and method for multi-path load balancing in network fabrics
US9769078B2 (en) 2013-11-05 2017-09-19 Cisco Technology, Inc. Dynamic flowlet prioritization
CN105515809A (en) * 2014-09-28 2016-04-20 中兴通讯股份有限公司 Software definition network realization method and main controller
US10397092B2 (en) 2015-04-30 2019-08-27 Hewlett Packard Enterprise Development Lp Reducing flooding of route updates of a dynamic routing protocol
JP6512037B2 (en) * 2015-08-31 2019-05-15 沖電気工業株式会社 Wireless communication device, method and program
CN106656387B (en) * 2015-10-30 2018-09-07 华为技术有限公司 Method, node and system for detecting clock synchronous path
IL243108B (en) 2015-12-22 2018-08-30 Kriheli Marino Connector section
CN113472669B (en) * 2016-03-18 2022-09-16 华为技术有限公司 Method for updating clock synchronization topology, method and equipment for determining clock synchronization path
US10432578B2 (en) 2016-09-27 2019-10-01 Cisco Technology, Inc. Client address based forwarding of dynamic host configuration protocol response packets
US10333829B2 (en) * 2016-11-30 2019-06-25 Futurewei Technologies, Inc. Service function chaining and overlay transport loop prevention
US10454882B2 (en) 2017-06-30 2019-10-22 Cisco Technology, Inc. DHCP in layer-3 overlay with anycast address support and network address transparency
US10425281B2 (en) * 2017-11-10 2019-09-24 Cisco Technology, Inc. Automated network entity replacement based on historical topology consciousness
CN111989899B (en) * 2018-04-27 2022-03-08 三菱电机株式会社 Monitoring device, network system, topology management method, and computer-readable recording medium
WO2020136874A1 (en) * 2018-12-28 2020-07-02 三菱電機株式会社 Monitoring device, network system, topology management device and monitoring program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3498666B2 (en) * 2000-02-28 2004-02-16 日本電気株式会社 Data transfer device, data transfer system, data transfer method, and storage medium
US6987740B1 (en) * 2000-09-11 2006-01-17 Cisco Technology, Inc. STP root guard
US6820134B1 (en) * 2000-12-28 2004-11-16 Cisco Technology, Inc. Optimizing flooding of information in link-state routing protocol
DE60227289D1 (en) * 2002-03-04 2008-08-07 Operax Ab PROCESS FOR PROVIDING TOPOLOGY AWARENESS INFORMATION IN AN IP NETWORK
WO2005057863A1 (en) * 2003-12-12 2005-06-23 Fujitsu Limited Data transmission apparatus
JP2005168020A (en) * 2004-11-30 2005-06-23 Nec Corp Communication path control method and communication terminal for radio multi-hop network
US7817580B2 (en) * 2005-12-07 2010-10-19 Cisco Technology, Inc. Preventing transient loops in broadcast/multicast trees during distribution of link state information

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
None

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2337275A1 (en) * 2009-12-17 2011-06-22 Alcatel Lucent Method of automatically discovering an adjacent network node
US20130097693A1 (en) * 2011-10-14 2013-04-18 Samsung Electronics Co., Ltd. Apparatus and method for automatic unlocking of portable terminal
US9965605B2 (en) * 2011-10-14 2018-05-08 Samsung Electronics Co., Ltd. Apparatus and method for automatic unlocking of portable terminal
EP2701354A1 (en) * 2012-07-17 2014-02-26 Huawei Technologies Co., Ltd. Method and apparatus for creating network devices
US9438468B2 (en) 2012-07-17 2016-09-06 Huawei Technologies Co., Ltd. Method and apparatus for creating network devices
WO2014184624A1 (en) * 2013-05-13 2014-11-20 Telefonaktiebolaget L M Ericsson (Publ) Network state digest for convergence check
CN115396361A (en) * 2022-08-16 2022-11-25 中国电子科技集团公司第七研究所 Unmanned cluster network loop avoidance system
CN115396361B (en) * 2022-08-16 2023-09-01 中国电子科技集团公司第七研究所 Unmanned cluster network loop avoidance system

Also Published As

Publication number Publication date
RU2010141754A (en) 2012-04-20
WO2009112929A3 (en) 2009-11-05
US8606961B2 (en) 2013-12-10
US20140181320A1 (en) 2014-06-26
EP2274880A2 (en) 2011-01-19
JP2011515057A (en) 2011-05-12
EP2274880B1 (en) 2018-08-08
RU2511605C2 (en) 2014-04-10
JP5432928B2 (en) 2014-03-05
US20110022725A1 (en) 2011-01-27

Similar Documents

Publication Publication Date Title
EP2274880B1 (en) Method and apparatus for link-state handshake for loop prevention
US8498299B2 (en) Flooding-based routing protocol having average-rate and burst-rate control
US10178007B2 (en) Determining liveness of protocols and interfaces
KR100433556B1 (en) Link-state synchronization on Ad-hoc network, method therefore, and data structure therefore
US7065059B1 (en) Technique for restoring adjacencies in OSPF in a non-stop forwarding intermediate node of a computer network
US6934263B1 (en) Spanning tree with protocol for bypassing port state transition timers
US6535490B1 (en) High availability spanning tree with rapid reconfiguration with alternate port selection
US7778204B2 (en) Automatic maintenance of a distributed source tree (DST) network
US6680917B1 (en) Spanning tree with rapid propagation of topology changes
US7573811B2 (en) Network transparent OSPF-TE failover
US8923305B2 (en) Flooding-based routing protocol having database pruning and rate-controlled state refresh
US6950427B1 (en) Technique for resynchronizing LSDB in OSPF after a software reload in a non-stop forwarding intermediate node of a computer network
JP2011515057A5 (en)
WO2008031334A1 (en) Route updating method, system and router
JP2003008609A (en) Communication device with line redanduncy function
US9398553B2 (en) Technique for improving LDP-IGP synchronization
JP6371399B2 (en) Interface parameter synchronization method and apparatus
WO2024164658A1 (en) Satellite network communication method, apparatus, device, and medium
Oliveira et al. HPIM-DM: a fast and reliable dense-mode multicast routing protocol (extended version)
Kane Cabletron's VLS Protocol Specification
Kane RFC2642: Cabletron's VLS Protocol Specification
First Routing Consortium

Legal Events

Date Code Title Description
DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
WWE Wipo information: entry into national phase

Ref document number: 5411/DELNP/2010

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 2010550279

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 12922235

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2009719124

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2010141754

Country of ref document: RU

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09719124

Country of ref document: EP

Kind code of ref document: A2