EP3531630B1 - Link state packet transmission method, and routing node - Google Patents

Link state packet transmission method, and routing node Download PDF

Info

Publication number
EP3531630B1
EP3531630B1 EP17871571.0A EP17871571A EP3531630B1 EP 3531630 B1 EP3531630 B1 EP 3531630B1 EP 17871571 A EP17871571 A EP 17871571A EP 3531630 B1 EP3531630 B1 EP 3531630B1
Authority
EP
European Patent Office
Prior art keywords
routing node
root
routing
nodes
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
EP17871571.0A
Other languages
German (de)
French (fr)
Other versions
EP3531630A1 (en
EP3531630A4 (en
Inventor
Dong Lin
Zhongyan FAN
Kit Sang Tang
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of EP3531630A1 publication Critical patent/EP3531630A1/en
Publication of EP3531630A4 publication Critical patent/EP3531630A4/en
Application granted granted Critical
Publication of EP3531630B1 publication Critical patent/EP3531630B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/44Star or tree 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/48Routing tree calculation
    • 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/02Topology update or discovery
    • H04L45/033Topology update or discovery by updating distance vector 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/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • 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/122Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
    • 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/24Multipath
    • H04L45/245Link aggregation, e.g. trunking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/26Route discovery packet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/48Routing tree calculation
    • H04L45/488Routing tree calculation using root node determination
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/44Star or tree networks
    • H04L2012/445Star or tree networks with switching in a hub, e.g. ETHERNET switch

Definitions

  • Embodiments of the present invention relate to the field of computer network technologies, and in particular, to a link state packet transmission method and a routing node.
  • a link state routing protocol is currently a most widely applied interior gateway protocol, and mainly includes the Open Shortest Path First Protocol (English: Open Shortest Path First Protocol, OSPF for short) and the Intermediate System to Intermediate System Protocol (English: Intermediate System to Intermediate System Routing Protocol, ISIS for short).
  • the link state routing protocol is based on a Shortest Path First (English: Shortest Path First, SPF for short) algorithm.
  • All routers in a topology perform the following link state universal routing process to achieve convergence: Each router detects interfaces of the router that are in an operating state, to learn a link directly connected to the router. For the link state routing protocol, the directly connected link is an interface on the router. The router can discover surrounding neighboring routers based on directly connected links. Each router floods its own link state packet (English: Link State Packet, LSP for short) to all neighboring routers, and the LSP includes state information of each link directly connected to the router. Flooding herein means that an LSP received by an interface is sent from all interfaces except the interface. Then a neighboring router stores all received LSPs in a database.
  • LSP Link State Packet
  • each neighboring router floods LSPs to its own neighboring routers until all routers in an autonomous system receive the LSPs.
  • Each router stores a copy of an LSP sent by a neighbor in a local database, to collect link state information of each router in the autonomous system and form a link state database described in the link state routing protocol.
  • each router that runs the link state routing protocol can use the link state database to build a complete network topology diagram, and use the SPF algorithm to compute a best path to each destination router.
  • each router floods its own LSP to all neighboring routers, and then each neighboring router floods LSPs to its own neighboring routers" causes a large quantity of link state packets existing in a network, and a large quantity of network bandwidth is occupied, or the network is even completely down. This causes a broadcast storm and affects network performance.
  • US2006/45024A1 discloses a method for an intermediate network node to efficiently process and disseminate link-state packets (LSP), the method comprising: receiving a LSP at the intermediate network node; flooding the received LSP; and performing, after flooding the received LSP, shortest path first (SPF) calculations based on the contents of the received LSP.
  • LSP link-state packets
  • the object of the present invention is to provide a link state packet transmission method and a routing node, so as to reduce a quantity of link state packets in a network and avoid a broadcast storm.
  • This object is solved by a link state packet transmission method according to claim 1, claim 6 and claim 8 and a routing node according to claim 9 and claim 14.
  • Further advantageous embodiments and improvements of the invention are listed in the dependent claims.
  • the invention is defined by the attached claims and any embodiments not covered by these claims are also to be understood as examples and aspects which contribute to the understanding of the invention.
  • an embodiment of the present invention provides a link state packet transmission method, where the method is applied to a tree topology, and the tree topology includes a leaf routing node, an intermediate routing node, and a root routing node.
  • the method includes: receiving, by the intermediate routing node, a link state packet sent by a child routing node of the intermediate routing node; sending, by the intermediate routing node, the link state packet to the root routing node, where the root routing node is configured to aggregate received link state packets to obtain a link state packet set; receiving, by the intermediate routing node, the link state packet set sent by the root routing node; and sending, by the intermediate routing node, the link state packet set to the child routing node of the intermediate routing node.
  • the intermediate routing node sends the received link state packet to the root routing node, so that the root routing node aggregates the link state packets to obtain the link state packet set, and the intermediate routing node then sends the received link state packet set to the child node instead of sending the received link state packets to all neighboring nodes in a flooding manner. Therefore, a quantity of data link state packets in a network can be reduced, thereby avoiding a broadcast storm.
  • the sending, by the intermediate routing node, the link state packet to the root routing node includes: sending, by the intermediate routing node based on first distance vector information, the link state packet to a first neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the first neighboring routing node is a root routing node, the first neighboring routing node is configured to receive the link state packet, or if the first neighboring routing node is an intermediate routing node, the first neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the first neighboring routing node to all the root routing nodes.
  • the intermediate routing node sends the received link state packet to its own parent node based on the distance vector information instead of sending the received link state packet to all its own neighboring nodes, thereby reducing the quantity of link state packets in the network.
  • the intermediate routing node sends, by using the parent node, the link state packet to a root node nearest to the intermediate routing node, so as to increase a transmission rate of the link state packet and reduce transmission overheads.
  • the child routing node is a neighboring routing node of the intermediate routing node; and the sending, by the intermediate routing node, the link state packet set to the child routing node of the intermediate routing node includes: sending, by the intermediate routing node based on the first distance vector information, the link state packet set to a second neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the second neighboring routing node is a leaf routing node, the second neighboring routing node is configured to receive the link state packet set, or if the second neighboring routing node is an intermediate routing node, the second neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a
  • the intermediate routing node sends the received link state packet set to its own child node based on the distance vector information instead of sending the received link state packet set to all its own neighboring nodes, thereby reducing the quantity of link state packets in the network.
  • the method before the receiving, by the intermediate routing node, a link state packet sent by a child routing node of the intermediate routing node, the method further includes: receiving, by the intermediate routing node, indication information, where the indication information is used to indicate which routing nodes are used as the root routing nodes; and determining, by the intermediate routing node based on a routing vector routing algorithm, the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes, and generating the first distance vector information based on the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes.
  • the intermediate routing node learns in advance which routing nodes are the root routing nodes. Therefore, distance vector information is mutually transferred between routing nodes to update the distance vector information stored in the intermediate routing node.
  • the method further includes: when it is determined that a first preset condition is met, sending, by the intermediate routing node, a root routing node application request to one or more root routing nodes in all the root routing nodes, where the root routing node application request is used to indicate that the intermediate routing node requests to be upgraded to a root routing node; and if the intermediate routing node receives a root routing node application response sent by the one or more root routing nodes, updating, by the intermediate routing node, the first distance vector information, where the root routing node application response is used to indicate that the intermediate routing node has been upgraded to a root routing node.
  • the intermediate routing node can apply to an existing root routing node to become a root routing node, so as to implement dynamic adjustment of the root routing node.
  • the method further includes: receiving, by the intermediate routing node, a root routing node exit message sent by the root routing node, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node; and updating, by the intermediate routing node, the first distance vector information.
  • the root routing node may no longer be a root routing node, so as to implement dynamic adjustment of the root routing node.
  • the first preset condition includes: a quantity of existing root nodes is less than or equal to a first preset threshold, or transmission bandwidth of a root node is lower than a second preset threshold.
  • an embodiment of the present invention provides a link state packet transmission method, where the method is applied to a tree topology, and the tree topology includes a leaf routing node, an intermediate routing node, and a root routing node.
  • the method includes: sending, by the leaf routing node, its own link state packet to the intermediate routing node, where the intermediate routing node is configured to send the link state packet to the root routing node, and the root routing node is configured to aggregate received link state packets to obtain a link state packet set; and receiving, by the leaf routing node, the link state packet set sent by the intermediate routing node.
  • the leaf routing node sends its own link state packet to the intermediate routing node, so that the intermediate routing node forwards the link state packet to the root routing node, the root routing node aggregates the link state packets to obtain the link state packet set, and the intermediate routing node then sends the received link state packet set to the leaf node instead of sending the received link state packets to all neighboring nodes in a flooding manner. Therefore, a quantity of data link state packets in a network can be reduced, thereby avoiding a broadcast storm.
  • the intermediate routing node is a neighboring routing node of the leaf routing node; and the sending, by the leaf routing node, its own link state packet to the intermediate routing node includes: sending, by the leaf routing node based on second distance vector information, the link state packet to a neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the leaf routing node to all the root routing nodes, where the second distance vector information includes the shortest distance from the leaf routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the leaf routing node to all the root routing nodes; and if the neighboring routing node is a root routing node, the neighboring routing node is configured to receive the link state packet, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the
  • the leaf routing node sends the received link state packet to its own parent node based on the distance vector information, and sends, by using the parent node, the link state packet to a root node nearest to the leaf node, so as to increase a transmission rate of the link state packet and reduce transmission overheads.
  • the method before the sending, by the leaf routing node, its own link state packet to the intermediate routing node, the method further includes: receiving, by the leaf routing node, indication information, where the indication information is used to indicate which routing nodes are used as the root routing nodes; and determining, by the leaf routing node based on a routing vector routing algorithm, the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes, and generating the second distance vector information based on the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes.
  • the leaf routing node learns in advance which routing nodes are the root routing nodes. Therefore, distance vector information is mutually transferred between routing nodes to update the distance vector information stored in the leaf routing node.
  • the method further includes: when it is determined that a first preset condition is met, sending, by the leaf routing node, a root routing node application request to one or more root routing nodes in all the root routing nodes, where the root routing node application request is used to indicate that the leaf routing node requests to be upgraded to a root routing node; and if the leaf routing node receives a root routing node application response sent by the one or more root routing nodes, updating, by the leaf routing node, the second distance vector information, where the root routing node application response is used to indicate that the leaf routing node has been upgraded to a root routing node.
  • the leaf routing node can apply to an existing root routing node to become a root routing node, so as to implement dynamic adjustment of the root routing node.
  • the method further includes: receiving, by the leaf routing node, a root routing node exit message sent by the root routing node, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node; and updating, by the leaf routing node, the second distance vector information.
  • the root routing node may no longer be a root routing node, so as to implement dynamic adjustment of the root routing node.
  • the first preset condition includes: a quantity of existing root nodes is less than or equal to a first preset threshold, or transmission bandwidth of a root node is lower than a second preset threshold.
  • an embodiment of the present invention provides a link state packet transmission method, where the method is applied to a tree topology, and the tree topology includes a leaf routing node, an intermediate routing node, and a root routing node.
  • the method includes: receiving, by the root routing node, a link state packet sent by the intermediate routing node, and aggregating received link state packets to obtain a link state packet set; and sending, by the root routing node, the link state packet set to the intermediate routing node and a neighboring root routing node, where the intermediate routing node is configured to send the link state packet set to the leaf routing node, and the neighboring root routing node is configured to send the link state packet to a child routing node of the neighboring root routing node.
  • the root routing node is responsible for receiving a link state packet sent by a non-root routing node and aggregating link state packets, and then sending an aggregated link state packet set to a non-root routing node instead of sending the received link state packets to all neighboring nodes in a flooding manner. Therefore, a quantity of data link state packets in a network can be reduced, thereby avoiding a broadcast storm.
  • the sending, by the root routing node, the link state packet set to the intermediate routing node and a neighboring root routing node includes: sending, by the root routing node based on third distance vector information, the link state packet set to a neighboring routing node that has a shortest distance to all root routing nodes greater than or equal to a shortest distance from the root routing node to all the root routing nodes, where the third distance vector information includes the shortest distance from the root routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the root routing node to all the root routing nodes; and if the neighboring routing node is a leaf routing node, the neighboring routing node is configured to receive the link state packet set, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the neighboring routing node to
  • the root routing node sends the aggregated link state packet set to its own child node and the neighboring root node based on the distance vector information, and sends the link state packet set to the leaf node by using the child node. Therefore, non-root nodes at a same level do not transfer the link state packet set to each other, thereby avoiding a ping pong phenomenon.
  • the method before the receiving, by the root routing node, a link state packet sent by the intermediate routing node, the method further includes: receiving, by the root routing node, indication information, where the indication information is used to indicate which routing nodes are used as the root routing nodes; and determining, by the root routing node based on a routing vector routing algorithm, the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes, and generating the third distance vector information based on the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes.
  • the root routing node learns in advance which routing nodes are the root routing nodes. Therefore, distance vector information is mutually transferred between routing nodes to update the distance vector information stored in the root routing node.
  • the method further includes: receiving, by the root routing node, a root routing node application request sent by the intermediate routing node or the leaf routing node, where the root routing node application request is used to indicate that the intermediate routing node or the leaf routing node requests to be upgraded to a root routing node; and if the root routing node determines that the intermediate routing node or the leaf routing node can be upgraded to a root routing node, sending, by the root routing node, a root routing node application response to the intermediate routing node or the leaf routing node, where the root routing node application response is used to indicate that the intermediate routing node or the leaf routing node has been upgraded to a root routing node.
  • the intermediate routing node or the leaf routing node can apply to an existing root routing node to become a root routing node, so as to implement dynamic adjustment of the root routing node.
  • the method further includes: when it is determined that a second preset condition is met, sending, by the root routing node, a root routing node exit message to a child routing node of the root routing node, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node.
  • the root routing node may no longer be a root routing node, so as to implement dynamic adjustment of the root routing node.
  • the second preset condition includes: a quantity of existing root nodes is greater than or equal to a third preset threshold, or transmission bandwidth of a root node is higher than a fourth preset threshold.
  • an embodiment of the present invention provides an intermediate routing node, including a module or a unit configured to perform the link state packet transmission method according to any one of the first aspect or the implementations of the first aspect.
  • an embodiment of the present invention provides a leaf routing node, including a module or a unit configured to perform the link state packet transmission method according to any one of the second aspect or the implementations of the second aspect.
  • an embodiment of the present invention provides a root routing node, including a module or a unit configured to perform the link state packet transmission method according to any one of the third aspect or the implementations of the third aspect.
  • the present invention provides a routing node, including a processor and a memory, where the memory is configured to store an instruction, and the processor is configured to call the instruction in the memory to perform the method according to any one of the first aspect or the possible implementations of the first aspect, or the method according to any one of the second aspect or the possible implementations of the second aspect, or the method according to any one of the third aspect or the possible implementations of the third aspect.
  • an embodiment of the present invention provides a network system, including: the intermediate routing node according to any one of the fourth aspect or the possible implementations of the fourth aspect, and the leaf routing node according to any one of the fifth aspect or the possible implementations of the fifth aspect.
  • an embodiment of the present invention provides a network system, including: the intermediate routing node according to any one of the fourth aspect or the possible implementations of the fourth aspect, and the root routing node according to any one of the sixth aspect or the possible implementations of the sixth aspect.
  • an embodiment of the present invention provides a computer storage medium, configured to store a computer software instruction used by the intermediate routing node, where the computer software instruction includes a program used to execute the first aspect and designed for the intermediate routing node.
  • an embodiment of the present invention provides a computer storage medium, configured to store a computer software instruction used by the leaf routing node, where the computer software instruction includes a program used to execute the second aspect and designed for the leaf routing node.
  • an embodiment of the present invention provides a computer storage medium, configured to store a computer software instruction used by the root routing node, where the computer software instruction includes a program used to execute the third aspect and designed for the root routing node.
  • the technical solutions provided in the embodiments of the present invention may be applied to a network of a network topology that has a plurality of routing nodes.
  • the network topology is changed to a tree network topology based on a plurality of root routing nodes.
  • a non-root node reports its own link state packet to the root routing node, and the root routing node is responsible for aggregating link state packets, and then sends an aggregated link state packet set to each non-root node. Therefore, a flooding manner is no longer used for non-directional sending of a link packet, and a quantity of link packets in a network is reduced, thereby avoiding a broadcast storm.
  • FIG. 1A is a schematic diagram of a network topology according to an embodiment of the present invention.
  • a router is described as a routing node. It is assumed that an autonomous system 100 includes nine routers, and the nine routers are respectively named R1, R2, R3, R4, R5, R6, R7, R8, and R9.
  • R1 is connected to R5, R2 is separately connected to R5 and R6, R3 is separately connected to R6 and R7, R4 is connected to R7, R5 is separately connected to R1, R2, R6, and R8, R6 is separately connected to R2, R3, R5, R7, R8, and R9, R7 is separately connected to R3, R4, R6, and R9, R8 is separately connected to R5, R6, and R9, and R9 is separately connected to R6, R7, and R8.
  • each router is responsible for "greeting" neighboring routers on directly connected links.
  • a router uses the Hello (Hello) Protocol to discover all neighbors on links of the router to form an adjacency relationship.
  • the neighbor herein is any other router that enables a same link state routing protocol.
  • These small Hello packets are continuously exchanged between two adjacent routers, to implement a "keepalive" function to monitor a status of a neighbor. If the router no longer receives a Hello packet of a neighboring router, it is considered that the neighboring router is not reachable, and the adjacency relationship is broken.
  • Adjacent routers exchange network link state information by sending LSPs.
  • the LSP includes state information of each link directly connected to a router.
  • the information includes but is not limited to: a neighboring router identifier (ID), a link type, bandwidth, a serial number, and expiration information.
  • ID a neighboring router identifier
  • a router may create an LSP and send its own LSP only to a neighboring router that establishes the adjacency relationship with the router.
  • the router may further receive an LSP, sent by the neighboring router, of the neighboring router, or an LSP, sent by the neighboring router, of another router. In this way, each router receives LSPs of all routers in the autonomous system, and a set of all the LSPs forms a link state database.
  • each LSP is a description of a network topology of a router
  • an entire link state database is a real reflection of a network topology of the autonomous system.
  • R1 sends its own LSP to R5.
  • R5 After receiving the LSP sent by R1, R5 sends the LSP of R1 to other neighboring routing nodes except R1, that is, R2, R6, and R8.
  • R2, R6, and R8 After receiving the LSP of R1 sent by R5, R2, R6, and R8 further send the LSP of R1 to other neighboring routing nodes except R5.
  • R2 sends the LSP of R1 to R6, R6 sends the LSP of R1 to R2, R3, R8, and R9, and R8 sends the LSP of R1 to R6 and R9.
  • each routing node sends the LSP to other neighboring routing nodes except the routing node that sends the LSP.
  • another routing node also floods its own LSP to other routing nodes in the autonomous system in this manner. This process of sending the LSP in a flooding manner may cause that a network is flooded with a large quantity of broadcast LSPs. If there are a relatively large quantity of routers in the autonomous system, a larger quantity of LSPs may be caused, and a risk of a broadcast storm may be brought.
  • a topology diagram including a large quantity of routers may be changed to a multi-root hierarchical tree structure that uses K routing nodes as root routing nodes, where K is a positive integer.
  • K is a positive integer.
  • Each non-root routing node sends its own LSP to a root routing node.
  • the root routing node is responsible for collecting the LSP of each non-root routing node, so as to aggregate LSPs. After aggregation, the root routing node sends the aggregated LSPs to a neighboring root routing node and each non-root routing node.
  • the root routing node may set a timer. When the timer reaches a threshold, the root routing node sends the currently aggregated LSPs to the neighboring root routing node and each non-root routing node.
  • a network system administrator may select K routers from the foregoing nine routers as the root routing nodes based on a greedy algorithm or another algorithm and the network topology shown in FIG. 1A .
  • the network system administrator enters an instruction by using a user interface of any one of the foregoing nine routers, where the instruction is used to instruct the router to select the K routers from the foregoing nine routers as the root routing nodes.
  • a dedicated control device controls, in a centralized manner, the foregoing nine routers, and the network system administrator enters an instruction by using a user interface of the control device, where the instruction is used to instruct the control device to select the K routers from the foregoing nine routers as the root routing nodes.
  • K is 2 and the routing node R8 and the routing node R9 are finally determined root routing nodes is used for description.
  • the network system administrator triggers sending of a selected result (that is, routing node information of R8 and R9) to routing nodes of all routers in the autonomous system 100 in a flooding manner.
  • a selected result that is, routing node information of R8 and R9
  • the network system administrator enters an instruction by using a user interface of the routing node R1, where the instruction is used to instruct to select the routing node R8 and the routing node R9 as the root routing nodes.
  • the routing node R1 sends a packet to a neighboring router, where the packet is used to instruct to select the routing node R8 and the routing node R9 as the root routing nodes.
  • the neighboring routing node further sends the packet to its own neighboring routing nodes.
  • each router computes and stores distance vector information.
  • the distance vector information may be in a form of a distance vector table.
  • Each router maintains a distance vector table, and then updates the distance vector table by using a distance vector advertisement between neighboring routers.
  • the distance vector table maintained by each router records a shortest distance from a routing node of any router to any root routing node and a shortest distance from a routing node of any router to all root routing nodes, that is, each router obtains distance vector information of all the routers in the entire autonomous system.
  • Table 1 Shortest distance to a root routing node
  • R8 Shortest distance to a root routing node
  • R9 Shortest distance to all root routing nodes Routing node R1 2 3 2 Routing node R2 2 2 2 Routing node R3 2 2 2 Routing node R4 3 2 2 Routing node R5 1 2 1 Routing node R6 1 1 1 Routing node R7 2 1 1 Routing node R8 0 1 0 Routing node R9 1 0 0 0
  • a shortest path from the routing node R1 to the root routing node R8 is R1-R5-R8. Therefore, the shortest distance is 2.
  • a shortest path from the routing node R1 to the root routing node R9 is R1-R5-R8-R9 or R1-R5-R6-R9. Therefore, the shortest distance is 3.
  • a shortest distance from the routing node R1 to all the root routing nodes that is, the root routing node R8 and the root routing node R9 is 2.
  • computing methods of a shortest distance from another root routing node to each root routing node and a shortest distance from the another root routing node to all the root routing nodes are the same as those described above. Details are not described herein again.
  • the distance vector table maintained by each routing node may alternatively include only a shortest distance from the routing node to each root routing node, a shortest distance from the routing node to all the root routing nodes, a shortest distance from a neighboring routing node to each root routing node, and a shortest distance from the neighboring routing node to all the root routing nodes.
  • a neighboring routing node is R5.
  • a distance vector table stored in R1 needs to include the shortest distance 2 from R1 to the root routing node R8, the shortest distance 3 from R1 to the root routing node R9, the shortest distance 2 from R1 to the root routing node R8 and the root routing node R9, a shortest distance 1 from R5 to the root routing node R8, a shortest distance 2 from R5 to the root routing node R9, and a shortest distance 1 from R5 to the root routing node R8 and the root routing node R9.
  • Another routing node is similar thereto, and details are not described herein again.
  • the root routing nodes may be selected based on the greedy algorithm or another algorithm, and the greedy algorithm is used as an example to describe a solution of how to select the root routing nodes.
  • the network system administrator randomly selects two routing nodes from the foregoing nine routing nodes as the root routing nodes, and it is assumed that the routing nodes R1 and R2 are selected as the root routing nodes.
  • the remaining routing nodes are allocated to a nearest routing node in the routing nodes R1 and R2 based on a relative distance to form two clusters, and it is assumed that R5 and R8 are allocated to the root routing node R1, and R3, R4, R6, R7, R8, and R9 are allocated to the root routing node R2.
  • root routing nodes in the two clusters are reselected based on a relative distance of each routing node in each cluster, so that distances from other routing nodes different from the root routing node in the cluster to the root routing node are the smallest.
  • the foregoing process is repeated until the root routing nodes in the two clusters no longer change.
  • R8 and R9 are the finally determined root routing nodes.
  • an objective of determining the root routing nodes by using the foregoing greedy algorithm is to ensure that a height of a tree is reduced to a greatest extent.
  • the height of the tree affects information transmission efficiency. Therefore, the height of the tree is reduced to a greatest extent, and LSP transmission efficiency can be improved.
  • the routing node R5 is selected as the root routing node of the tree, and the height of the tree is 3.
  • the routing node R6 is selected as the root routing node of the tree, and the height of the tree is only 2. Selecting the routing node R6 can significantly reduce an average delay of LSP information propagation.
  • FIG. 1D is a schematic diagram of a tree structure corresponding to the topology shown in FIG. 1A . It may be learned from FIG. 1D that a topology diagram is changed to a hierarchical tree structure, and connection relationships between routing nodes are not modified.
  • other routing nodes different from the root routing nodes send their own LSPs to the root routing nodes.
  • the root routing node aggregates LSPs sent by child routing nodes, and after aggregation, the root routing node sends the aggregated LSPs to the child routing nodes. Therefore, in this embodiment of the present invention, a quantity of LSPs can be greatly reduced, thereby avoiding a broadcast storm.
  • FIG. 2 is a schematic flowchart of a link state packet transmission method according to an embodiment of the present invention. The method includes but is not limited to the following steps.
  • a leaf routing node sends its own LSP to an intermediate routing node.
  • FIG. 1D is used as an example for description.
  • a leaf routing node R1 sends its own LSP to a neighboring intermediate routing node R5 that has a shortest distance to all root routing nodes less than a shortest distance from the leaf routing node R1 to all the root routing nodes, and the intermediate routing node R5 receives the LSP sent by the leaf routing node R1.
  • each non-root routing node sends its own updated LSP to one or more of a root routing node R8 or a root routing node R9.
  • a root routing node R8 or a root routing node R9 an example in which each non-root routing node sends its own updated LSP to a nearest root routing node in the two root routing nodes is used for description.
  • each non-root routing node monitors its own current link state, and sends an updated LSP to a previous-level routing node in a direction in which a value of a distance toward the root routing node is the smallest.
  • the leaf routing node R1 sends its own LSP to the nearest root routing node R8 is used for description.
  • the leaf routing node R1 determines, based on a distance vector table stored by the leaf routing node R1, that the shortest distance from the leaf routing node R1 to all the root routing nodes is 2.
  • the leaf routing node R1 finds, from the distance vector table, a neighboring routing node that has a shortest distance to all the root routing nodes less than 2, and determines that the neighboring routing node is the intermediate routing node R5 (a shortest distance from R5 to all the root routing nodes is 1), and the leaf routing node R1 sends its own LSP to the intermediate routing node R5.
  • the intermediate routing node receives the LSP sent by the leaf routing node, and sends the LSP to a root routing node.
  • the intermediate routing node R5 sends the LSP of the leaf routing node R1 to the neighboring root routing node R8 that has a shortest distance to all the root routing nodes less than the shortest distance from the intermediate routing node R5 to all the root routing nodes.
  • the intermediate routing node R5 After receiving the LSP sent by the leaf routing node R1, the intermediate routing node R5 determines, based on a distance vector table stored by the intermediate routing node R5, that the shortest distance from the intermediate routing node R5 to all the root routing nodes is 1, then the intermediate routing node R5 finds, from the distance vector table, a neighboring routing node that has a shortest distance to all the root routing nodes less than 1, and determines that the neighboring routing node is the root routing node R8 (a shortest distance from R8 to all the root routing nodes is 0), and the intermediate routing node R5 sends the received LSP of the routing node R1 to the root routing node R8.
  • the root routing node receives the LSP sent by the intermediate routing node, and aggregates received LSPs to obtain an LSP set.
  • the root routing node R8 receives the LSP of the leaf routing node R1 sent by the intermediate routing node R5, and stores the received LSP of the leaf routing node R1.
  • another non-root routing node uses a same manner to send its own LSP to a nearest root routing node, for example, the root routing node R8 or the root routing node R9 in this embodiment of the present invention.
  • the root routing node R8 and the root routing node R9 are responsible for collecting and storing LSPs of non-root routing nodes, and aggregating all received LSPs.
  • the root routing node further sends the LSP set to a neighboring root node.
  • each root routing node sends the aggregated LSPs to a next-level routing node in a direction in which a value of a distance toward the root routing node is larger and the neighboring root routing node.
  • the root routing node R8 is used as an example for description.
  • the root routing node R8 determines, based on a distance vector table stored by the root routing node R8, that the shortest distance from the root routing node R8 to all the root routing nodes is 0.
  • the root routing node R8 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than or equal to 0, and determines that the neighboring routing nodes are the intermediate routing node R5 (the shortest distance from R5 to all the root routing nodes is 1), an intermediate routing node R6 (a shortest distance from R6 to all the root routing nodes is 1), and the root routing node R9 (a shortest distance from R9 to all the root routing nodes is 0), and the root routing node R8 sends LSPs aggregated by the root routing node R8 to the intermediate routing node R5, the intermediate routing node R6, and the neighboring root routing node R9.
  • the intermediate routing node receives the LSP set sent by the root routing node, and stores the LSP set.
  • S206 The intermediate routing node sends the LSP set to the leaf routing node.
  • the intermediate routing node R5 stores the received LSPs aggregated by the root routing node R8, and determines, based on the distance vector table stored by the intermediate routing node R5, that the shortest distance from the intermediate routing node R5 to all the root routing nodes is 1.
  • the intermediate routing node R5 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 1, and determines that the neighboring routing nodes are the leaf routing node R1 (the shortest distance from R1 to all the root routing nodes is 2) and a leaf routing node R2 (a shortest distance from R2 to all the root routing nodes is 2), and the intermediate routing node R5 sends the LSPs aggregated by the root routing node R8 to the leaf routing node R1 and the leaf routing node R2.
  • the leaf routing node R1 and the leaf routing node R2 receive the aggregated LSPs sent by the intermediate routing node R5, and store the received aggregated LSPs.
  • the intermediate routing node R6 After receiving the aggregated LSPs sent by the root routing node R8, the intermediate routing node R6 stores the received LSPs aggregated by the root routing node R8, and determines, based on a distance vector table stored by the intermediate routing node R6, that the shortest distance from the intermediate routing node R6 to all the root routing nodes is 1.
  • the intermediate routing node R6 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 1, and determines that the neighboring routing nodes are the leaf routing node R2 (the shortest distance from R2 to all the root routing nodes is 2) and a leaf routing node R3 (a shortest distance from R3 to all the root routing nodes is 2), and the intermediate routing node R6 sends the LSPs aggregated by the root routing node R8 to the leaf routing node R2 and the leaf routing node R3.
  • the leaf routing node R2 and the leaf routing node R3 receive the aggregated LSPs sent by the intermediate routing node R6, and store the received aggregated LSPs.
  • the root routing node R9 stores the received LSPs aggregated by the root routing node R8, and determines, based on a distance vector table stored by the root routing node R9, that the shortest distance from the root routing node R9 to all the root routing nodes is 0.
  • the root routing node R9 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 0, and determines that the neighboring routing nodes are the intermediate routing node R6 (the shortest distance from R6 to all the root routing nodes is 1) and a leaf routing node R7 (a shortest distance from R7 to all the root routing nodes is 1), and the root routing node R9 sends the LSPs aggregated by the root routing node R8 to the intermediate routing node R6 and the intermediate routing node R7.
  • the intermediate routing node R6 After receiving the aggregated LSPs sent by the root routing node R9, the intermediate routing node R6 stores the received aggregated LSPs, and determines, based on the distance vector table stored by the intermediate routing node R6, that the shortest distance from the intermediate routing node R6 to all the root routing nodes is 1.
  • the intermediate routing node R6 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 1, and determines that the neighboring routing nodes are the leaf routing node R2 (the shortest distance from R2 to all the root routing nodes is 2) and the leaf routing node R3 (the shortest distance from R3 to all the root routing nodes is 2), and the intermediate routing node R6 sends the aggregated LSPs to the leaf routing node R2 and the leaf routing node R3.
  • the leaf routing node R2 and the leaf routing node R3 receive the aggregated LSPs sent by the intermediate routing node R6, and store the received aggregated LSPs.
  • the intermediate routing node R7 After receiving the aggregated LSPs sent by the root routing node R9, the intermediate routing node R7 stores the received aggregated LSPs, and determines, based on a distance vector table stored by the intermediate routing node R7, that a shortest distance from the intermediate routing node R7 to all the root routing nodes is 1.
  • the intermediate routing node R7 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 1, and determines that the neighboring routing nodes are the leaf routing node R3 (the shortest distance from R3 to all the root routing nodes is 2) and a leaf routing node R4 (a shortest distance from R4 to all the root routing nodes is 2), and the intermediate routing node R7 sends the aggregated LSPs to the leaf routing node R3 and the leaf routing node R4.
  • the leaf routing node R3 and the leaf routing node R4 receive the aggregated LSPs sent by the intermediate routing node R7, and store the received aggregated LSPs.
  • the leaf routing node receives the LSP set sent by the intermediate routing node, and stores the LSP set.
  • the intermediate routing node also sends its own LSP to the root routing node, and the root routing node receives the LSP sent by the intermediate routing node.
  • the root routing node R9 also sends the LSPs aggregated by the root routing node R9 to a next-level routing node in a direction in which a distance toward the root routing node is higher and the neighboring root routing node R8, the next-level routing node of the root routing node R9 then sends the LSPs aggregated by R9 to its own next-level routing node, and so on. Finally, all child routing nodes of the root routing node R9 receive the LSPs aggregated by the root routing node R9.
  • the root routing node R8 also sends the LSPs aggregated by the root routing node R9 to its own next-level routing node, and after receiving the LSPs sent by the root routing node R8, the next-level routing node of the root routing node R8 also sends the LSPs to its own next-level routing node. Finally, all child routing nodes of the root routing node R8 receive the LSPs aggregated by the root routing node R9. In this process, the LSPs are transmitted in a tree trunk direction, a ping pong phenomenon can be avoided, and a quantity of LSPs existing in a network can be greatly reduced, thereby avoiding a broadcast storm.
  • the ping pong phenomenon herein means that, when a link state changes, a first router updates its own link state database based on the change, and notifies a second router of updated information (including link information). After updating the information, the second router feeds back integrated information to an initial router, so that a cross update is formed.
  • All routing nodes can establish a link state database according to the received LSPs aggregated by the root routing node. According to the Shortest Path First algorithm, a shortest path to a destination routing node can be obtained.
  • the leaf routing node sends its own link state packet to the intermediate routing node, the intermediate routing node sends the received link state packet to the root routing node, the root routing node aggregates link state packets to obtain the link state packet set, and sends the link state packet set to the intermediate routing node, and the intermediate routing node then sends the received link state packet set to the leaf node.
  • a quantity of data link state packets in a network can be reduced, thereby avoiding a broadcast storm.
  • a network has a dynamic property, a network topology may change, and some routing nodes may fail. Therefore, a technical solution in which root routing nodes can be dynamically added or reduced is needed.
  • FIG. 3 is a schematic flowchart of an upgrade from a non-root routing node to a root routing node according to an embodiment of the present invention.
  • the non-root routing node herein may be a leaf routing node or may be an intermediate routing node.
  • a leaf routing node R2 requests to be upgraded to a root routing node is used for description. The process includes the following steps.
  • the leaf routing node R2 sends a root routing node application request to an old root routing node R8, where the request is used to indicate that the leaf routing node R2 requests to be upgraded to a root routing node.
  • the non-root routing node monitors a quantity or states of existing root routing nodes and determines whether to become a new root routing node. If a non-root routing node determines to become a new root routing node, the non-root routing node sends a root routing node application request to one or more of old root routing nodes. In this embodiment of the present invention, an example in which the non-root routing node sends the root routing node application request to a nearest root routing node is used for description.
  • the root routing node application request may carry a routing node identifier (which is R2 in this embodiment of the present invention) of the leaf routing node R2, to indicate which routing node expects to be upgraded to a root routing node.
  • the leaf routing node R2 determines, based on a distance vector table stored by the leaf routing node R2, that a shortest distance from the leaf routing node R2 to all root routing nodes is 2.
  • the leaf routing node R2 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes less than 2, and determines that the neighboring routing nodes are an intermediate routing node R5 (a shortest distance from R5 to all the root routing nodes is 1) and an intermediate routing node R6 (a shortest distance from R6 to all the root routing nodes is 1).
  • an example in which the leaf routing node R2 sends the root routing node application request to the intermediate routing node R5 is used for description.
  • the intermediate routing node R5 determines, based on a distance vector table stored by the intermediate routing node R5, that a shortest distance from the intermediate routing node R5 to all the root routing nodes is 1.
  • the intermediate routing node R5 finds, from the distance vector table, a neighboring routing node that has a shortest distance to all the root routing nodes less than 1, and determines that the neighboring routing node is the root routing node R8 (a shortest distance from R8 to all the root routing nodes is 0), and the intermediate routing node R5 forwards the root routing node application request of the leaf routing node R2 to the root routing node R8.
  • the root routing node R8 receives the root routing node application request of the leaf routing node R2 and determines whether to agree to upgrade the leaf routing node R2 to a root routing node; and if the root routing node R8 agrees to upgrade the leaf routing node R2 to a root routing node, step S303 is performed, or otherwise, the procedure ends.
  • the root routing node may determine, based on the quantity or the states of the existing root routing nodes, whether to agree to upgrade the leaf routing node R2 to a root routing node. For example, the quantity of the existing root routing nodes is less than a preset threshold 3, and the root routing node R8 agrees to upgrade the leaf routing node R2 to a root routing node. Alternatively, bandwidth of the existing root routing nodes is relatively low, and the root routing node R8 agrees to upgrade the leaf routing node R2 to a root routing node.
  • the root routing node R8 sends a root routing node application response corresponding to the leaf routing node R2 to a next-level neighboring routing node and a neighboring root routing node, where the root routing node application response is used to indicate that an upgrade of the leaf routing node R2 to a root routing node is determined.
  • the root routing node application response may carry the identifier of the routing node R2.
  • the root routing node R8 determines, based on a distance vector table stored by the root routing node R8, that the shortest distance from the root routing node R8 to all the root routing nodes is 0.
  • the root routing node R8 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than or equal to 0, and determines that the neighboring routing nodes are the intermediate routing node R5 (the shortest distance from R5 to all the root routing nodes is 1), the intermediate routing node R6 (the shortest distance from R6 to all the root routing nodes is 1), and a root routing node R9 (a shortest distance from R9 to all the root routing nodes is 0), and the root routing node R8 sends root routing node information corresponding to the leaf routing node R2 to the intermediate routing node R5, the intermediate routing node R6, and the neighboring root routing node R9.
  • the intermediate routing node R5 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, a leaf routing node R1 and the leaf routing node R2)
  • the intermediate routing node R6 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, the leaf routing node R2 and a leaf routing node R3).
  • the root routing node R9 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, the intermediate routing node R6 and an intermediate routing node R7)
  • the intermediate routing node R6 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, the leaf routing node R2 and the leaf routing node R3)
  • the intermediate routing node R7 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, the leaf routing node R3 and a leaf routing node R4).
  • each routing node in a hierarchical tree structure receives the root routing node information corresponding to the leaf routing node R2, so as to learn that the leaf routing node R2 is upgraded to a root routing node.
  • the leaf routing node R2 is upgraded to a root routing node, for a new tree structure, refer to FIG. 4 .
  • Each routing node updates distance vector information stored by each routing node.
  • updated root routing nodes include the root routing node R2, the root routing node R8, and the root routing node R9.
  • Each routing node re-establishes distance vector information to the three root routing nodes, and then updates a distance vector table by using a distance vector advertisement between neighboring routers, so as to update a distance vector table stored by the routing node.
  • For an updated distance vector table refer to Table 2.
  • the non-root node may become a root node, so as to implement a dynamic change and adjustment of a root node.
  • FIG. 5 is a schematic flowchart of no longer using a root routing node as a root routing node according to an embodiment of the present invention.
  • a root routing node R8 is no longer used as a root routing node is used for description. The process includes the following steps.
  • the root routing node R8 sends a root routing node exit message corresponding to the root routing node R8 to a next-level neighboring routing node and a neighboring root routing node, where the root routing node exit message is used to indicate that the root routing node R8 is no longer used as a root routing node.
  • the root routing node monitors a quantity or states of existing root routing nodes and determines whether to exit from a root routing node set. For example, the quantity of the existing root routing nodes is greater than a preset threshold, and the root routing node R8 determines to exit from the root routing node set. Alternatively, bandwidth of the existing root routing nodes is relatively high, and the root routing node R8 determines to exit from the root routing node set. If the root routing node R8 determines to exit from the root routing node set, the root routing node R8 sends the root routing node exit message to all child routing nodes and the neighboring root routing node. That the root routing node R8 is no longer used as a root routing node includes two cases. In a first case, the root routing node R8 is removed from a tree structure and is no longer used. In a second case, the root routing node R8 is degraded from a root routing node to a non-root routing node.
  • the root routing node exit message may carry a routing node identifier (which is R8 in this embodiment of the present invention) of the root routing node R8, to indicate which routing node expects to exit from the root routing node set.
  • the root routing node R8 determines, based on a distance vector table stored by the root routing node R8, that a shortest distance from the root routing node R8 to all root routing nodes is 0.
  • the root routing node R8 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than or equal to 0, and determines that the neighboring routing nodes are an intermediate routing node R5 (a shortest distance from R5 to all the root routing nodes is 1), an intermediate routing node R6 (a shortest distance from R6 to all the root routing nodes is 1), and a root routing node R9 (a shortest distance from R9 to all the root routing nodes is 0), and the root routing node R8 sends the root routing node exit message corresponding to the root routing node R8 to the intermediate routing node R5, the intermediate routing node R6, and the neighboring root routing node R9.
  • the intermediate routing node R5 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, a leaf routing node R1 and a leaf routing node R2), and the intermediate routing node R6 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, the leaf routing node R2 and a leaf routing node R3).
  • the root routing node R9 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, the intermediate routing node R6 and an intermediate routing node R7)
  • the intermediate routing node R6 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, the leaf routing node R2 and the leaf routing node R3)
  • the intermediate routing node R7 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, the leaf routing node R3 and a leaf routing node R4).
  • each routing node in a hierarchical tree structure receives the root routing node exit message corresponding to the root routing node R8, so as to learn that the root routing node R8 is no longer used as a root routing node. Afterwards, the tree structure is adjusted. If the root routing node R8 is no longer used, for a new tree structure, refer to FIG. 6 . If the root routing node R8 is degraded to a non-root routing node, for a new tree structure, refer to FIG. 7 . A level of each routing node in the updated tree structure is related to a shortest distance from the routing node to all the root routing nodes. For example, in FIG.
  • the routing node R5 is degraded from a second level to a third level (it is assumed that the root routing node is at a first level).
  • Each routing node updates distance vector information stored by each routing node.
  • an updated root routing node includes only the root routing node R9.
  • Each routing node re-establishes distance vector information to the root routing node R9, and then updates a distance vector table by using a distance vector advertisement between neighboring routers, so as to update the distance vector table stored by the routing node.
  • the tree structure shown in FIG. 7 is used as an example.
  • For an updated distance vector table refer to Table 3.
  • the root node may no longer be used as a root node, so as to implement a dynamic change and adjustment of a root node.
  • FIG. 8 is a schematic structural diagram of a routing node according to an embodiment of the present invention.
  • an intermediate routing node 80 includes: a receiving module 801 and a sending module 802.
  • the receiving module 801 is configured to receive a link state packet sent by a child routing node of the intermediate routing node.
  • the sending module 802 is configured to send the link state packet to the root routing node, where the root routing node is configured to aggregate received link state packets to obtain a link state packet set.
  • the receiving module 801 is further configured to receive the link state packet set sent by the root routing node.
  • the sending module 802 is further configured to send the link state packet set to the child routing node of the intermediate routing node.
  • the sending module 802 is configured to send the link state packet to the root routing node is specifically: sending, based on first distance vector information, the link state packet to a first neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the first neighboring routing node is a root routing node, the first neighboring routing node is configured to receive the link state packet, or if the first neighboring routing node is an intermediate routing node, the first neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the first neighboring routing node to all the root routing nodes.
  • the child routing node is a neighboring routing node of the intermediate routing node; and that the sending module 802 is configured to send the link state packet set to the child routing node of the intermediate routing node is specifically: sending, based on the first distance vector information, the link state packet set to a second neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the second neighboring routing node is a leaf routing node, the second neighboring routing node is configured to receive the link state packet set, or if the second neighboring routing node is an intermediate routing node, the second neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing no
  • the receiving module 801 is further configured to receive indication information before receiving the link state packet sent by the child routing node of the intermediate routing node, where the indication information is used to indicate which routing nodes are used as the root routing nodes.
  • the intermediate routing node 80 further includes: a determining module, configured to determine, based on a routing vector routing algorithm, the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes, and generate the first distance vector information based on the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes.
  • a determining module configured to determine, based on a routing vector routing algorithm, the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes, and generate the first distance vector information based on the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes.
  • the sending module 802 is further configured to: when it is determined that a first preset condition is met, send a root routing node application request to one or more root routing nodes in all the root routing nodes, where the root routing node application request is used to indicate that the intermediate routing node requests to be upgraded to a root routing node; and if the intermediate routing node receives a root routing node application response sent by the one or more root routing nodes, the intermediate routing node updates the first distance vector information, where the root routing node application response is used to indicate that the intermediate routing node has been upgraded to a root routing node.
  • FIG. 9 is a schematic structural diagram of a routing node according to an embodiment of the present invention.
  • a leaf routing node 90 includes: a sending module 901 and a receiving module 902.
  • the sending module 901 is configured to send its own link state packet to the intermediate routing node, where the intermediate routing node is configured to send the link state packet to the root routing node, and the root routing node is configured to aggregate received link state packets to obtain a link state packet set.
  • the receiving module 902 is configured to receive the link state packet set sent by the intermediate routing node.
  • the intermediate routing node is a neighboring routing node of the leaf routing node; and that the sending module 901 is configured to send its own link state packet to the intermediate routing node is specifically: sending, based on second distance vector information, the link state packet to a neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the leaf routing node to all the root routing nodes, where the second distance vector information includes the shortest distance from the leaf routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the leaf routing node to all the root routing nodes; and if the neighboring routing node is a root routing node, the neighboring routing node is configured to receive the link state packet, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the neighboring routing node to all the
  • the receiving module 902 is further configured to receive indication information before the sending module sends its own link state packet to the intermediate routing node, where the indication information is used to indicate which routing nodes are used as the root routing nodes.
  • the leaf routing node 90 further includes: a determining module, configured to determine, based on a routing vector routing algorithm, the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes, and generate the second distance vector information based on the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes.
  • a determining module configured to determine, based on a routing vector routing algorithm, the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes, and generate the second distance vector information based on the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes.
  • the sending module 901 is further configured to: when it is determined that a first preset condition is met, send a root routing node application request to one or more root routing nodes in all the root routing nodes, where the root routing node application request is used to indicate that the leaf routing node requests to be upgraded to a root routing node.
  • the leaf routing node 90 further includes: an updating module, configured to: if the receiving module receives a root routing node application response sent by the one or more root routing nodes, update the second distance vector information, where the root routing node application response is used to indicate that the leaf routing node has been upgraded to a root routing node.
  • FIG. 10 is a schematic structural diagram of a routing node according to an embodiment of the present invention.
  • a root routing node 100 includes: a receiving module 1001 and a sending module 1002.
  • the receiving module 1001 is configured to receive a link state packet sent by the intermediate routing node, and aggregate received link state packets to obtain a link state packet set.
  • the sending module 1002 is configured to send the link state packet set to the intermediate routing node and a neighboring root routing node, where the intermediate routing node is configured to send the link state packet set to the leaf routing node, and the neighboring root routing node is configured to send the link state packet to a child routing node of the neighboring root routing node.
  • the sending module 1002 is configured to send the link state packet set to the intermediate routing node and the neighboring root routing node is specifically: sending, based on third distance vector information, the link state packet set to a neighboring routing node that has a shortest distance to all root routing nodes greater than or equal to a shortest distance from the root routing node to all the root routing nodes, where the third distance vector information includes the shortest distance from the root routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the root routing node to all the root routing nodes; and if the neighboring routing node is a leaf routing node, the neighboring routing node is configured to receive the link state packet set, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the neighboring routing node to all the root routing nodes.
  • the receiving module 1001 is further configured to receive indication information before receiving the link state packet sent by the intermediate routing node, where the indication information is used to indicate which routing nodes are used as the root routing nodes.
  • the root routing node 100 further includes: a determining module, configured to determine, based on a routing vector routing algorithm, the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes, and generate the third distance vector information based on the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes.
  • a determining module configured to determine, based on a routing vector routing algorithm, the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes, and generate the third distance vector information based on the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes.
  • the receiving module 1001 is further configured to receive a root routing node application request sent by the intermediate routing node or the leaf routing node, where the root routing node application request is used to indicate that the intermediate routing node or the leaf routing node requests to be upgraded to a root routing node.
  • the sending module 1002 is further configured to: if the root routing node determines that the intermediate routing node or the leaf routing node can be upgraded to a root routing node, send a root routing node application response to the intermediate routing node or the leaf routing node, where the root routing node application response is used to indicate that the intermediate routing node or the leaf routing node has been upgraded to a root routing node.
  • the sending module 1002 is further configured to: when it is determined that a second preset condition is met, send a root routing node exit message to a child routing node of the root routing node, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node.
  • FIG. 11 is a schematic structural diagram of a network system according to an embodiment of the present invention.
  • the system may include the intermediate routing node in the embodiment of FIG. 8 and the leaf routing node in the embodiment of FIG. 9 ; or may include the intermediate routing node in the embodiment of FIG. 8 and the root routing node in the embodiment of FIG. 10 ; or may include the intermediate routing node in the embodiment of FIG. 8 , the leaf routing node in the embodiment of FIG. 9 , and the root routing node in the embodiment of FIG. 10 .
  • the system 110 includes an intermediate routing node, a leaf routing node, and a root routing node is used for description.
  • For the intermediate routing node refer to related description in the embodiment of FIG. 8 .
  • For the leaf routing node refer to related description in the embodiment of FIG. 9 .
  • For the root routing node refer to related description in the embodiment of FIG. 10 . Details are not described herein again.
  • FIG. 12 is a schematic structural diagram of a routing node according to an embodiment of the present invention.
  • the routing node 120 includes a processor 1201, a memory 1202, and a transceiver 1203.
  • the processor 1201, the memory 1202, and the transceiver 1203 may be connected by using a bus or in another manner.
  • the routing node 120 may further include a network interface 1204 and a power module 1205.
  • the memory 1202 is configured to store an instruction.
  • the memory 1202 may be a read-only memory (English: Read-Only Memory, ROM for short) or a random access memory (English: Random Access Memory, RAM for short).
  • the transceiver 1203 is configured to receive and send data.
  • the network interface 1204 is configured to perform communication between the routing node 120 and another device.
  • the power module 1205 is configured to supply power to each module of the routing node 120.
  • the processor 1201 is configured to perform the following operations:
  • the processor 1201 sends the link state packet to the root routing node by using the transceiver 1203 includes: sending, by using the transceiver 1203 based on first distance vector information, the link state packet to a first neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the first neighboring routing node is a root routing node, the first neighboring routing node is configured to receive the link state packet, or if the first neighboring routing node is an intermediate routing node, the first neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the first neighboring routing node to all the root routing
  • the child routing node is a neighboring routing node of the intermediate routing node; and that the processor 1201 sends the link state packet set to the child routing node of the intermediate routing node by using the transceiver 1203 includes: sending, by using the transceiver 1203 based on the first distance vector information, the link state packet set to a second neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the second neighboring routing node is a leaf routing node, the second neighboring routing node is configured to receive the link state packet set, or if the second neighboring routing node is an intermediate routing node, the second neighboring routing node is configured to send the link state packet set to a neighboring routing no
  • the processor 1201 before the processor 1201 receives, by using the transceiver 1203, the link state packet sent by the child routing node of the intermediate routing node, the processor 1201 is further configured to:
  • the processor 1201 is further configured to: when it is determined that a first preset condition is met, send a root routing node application request to one or more root routing nodes in all the root routing nodes by using the transceiver 1203, where the root routing node application request is used to indicate that the intermediate routing node requests to be upgraded to a root routing node; and if the intermediate routing node receives a root routing node application response sent by the one or more root routing nodes, update the first distance vector information by the intermediate routing node, where the root routing node application response is used to indicate that the intermediate routing node has been upgraded to a root routing node.
  • the processor 1201 is configured to perform the following operations:
  • the intermediate routing node is a neighboring routing node of the leaf routing node; and that the processor 1201 sends its own link state packet to the intermediate routing node by using the transceiver 1203 includes: sending, by using the transceiver 1203 based on second distance vector information, the link state packet to a neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the leaf routing node to all the root routing nodes, where the second distance vector information includes the shortest distance from the leaf routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the leaf routing node to all the root routing nodes; and if the neighboring routing node is a root routing node, the neighboring routing node is configured to receive the link state packet, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than
  • the processor 1201 before the processor 1201 sends its own link state packet to the intermediate routing node by using the transceiver 1203, the processor 1201 is further configured to:
  • the processor 1201 is further configured to:
  • the processor 1201 is configured to perform the following operations:
  • the processor 1201 sends the link state packet set to the intermediate routing node and the neighboring root routing node by using the transceiver 1203 includes: sending, by using the transceiver 1203 based on third distance vector information, the link state packet set to a neighboring routing node that has a shortest distance to all root routing nodes greater than or equal to a shortest distance from the root routing node to all the root routing nodes, where the third distance vector information includes the shortest distance from the root routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the root routing node to all the root routing nodes; and if the neighboring routing node is a leaf routing node, the neighboring routing node is configured to receive the link state packet set, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the neighbor
  • the processor 1201 before the processor 1201 receives, by using the transceiver 1203, the link state packet sent by the intermediate routing node, the processor 1201 is further configured to:
  • the processor 1201 is further configured to:
  • the processor 1201 is further configured to: when it is determined that a second preset condition is met, send a root routing node exit message to a child routing node of the root routing node by using the transceiver 1203, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node.
  • each aspect of the embodiments of the present invention or a possible implementation of each aspect may be specifically implemented as a system, a method, or a computer program product. Therefore, each aspect of the embodiments of the present invention or the possible implementation of each aspect may use forms of hardware only embodiments, software only embodiments (including firmware, resident software, and the like), or embodiments with a combination of software and hardware, which are uniformly referred to as a "circuit", "module", or “system” herein.
  • each aspect of the embodiments of the present invention or the possible implementation of each aspect may take a form of a computer program product, where the computer program product is computer-readable program code stored in a computer-readable medium.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

    TECHNICAL FIELD
  • Embodiments of the present invention relate to the field of computer network technologies, and in particular, to a link state packet transmission method and a routing node.
  • BACKGROUND
  • In the Internet, internetwork packet forwarding is usually implemented by a router. Routing protocols run by the router may be classified depending on application scenarios into the Border Gateway Protocol between autonomous systems and an interior gateway protocol in an autonomous system. An autonomous system is an internetwork in which a single management mechanism implements management policies. A link state routing protocol is currently a most widely applied interior gateway protocol, and mainly includes the Open Shortest Path First Protocol (English: Open Shortest Path First Protocol, OSPF for short) and the Intermediate System to Intermediate System Protocol (English: Intermediate System to Intermediate System Routing Protocol, ISIS for short). The link state routing protocol is based on a Shortest Path First (English: Shortest Path First, SPF for short) algorithm. All routers in a topology perform the following link state universal routing process to achieve convergence: Each router detects interfaces of the router that are in an operating state, to learn a link directly connected to the router. For the link state routing protocol, the directly connected link is an interface on the router. The router can discover surrounding neighboring routers based on directly connected links. Each router floods its own link state packet (English: Link State Packet, LSP for short) to all neighboring routers, and the LSP includes state information of each link directly connected to the router. Flooding herein means that an LSP received by an interface is sent from all interfaces except the interface. Then a neighboring router stores all received LSPs in a database. Next, each neighboring router floods LSPs to its own neighboring routers until all routers in an autonomous system receive the LSPs. Each router stores a copy of an LSP sent by a neighbor in a local database, to collect link state information of each router in the autonomous system and form a link state database described in the link state routing protocol. In this way, each router that runs the link state routing protocol can use the link state database to build a complete network topology diagram, and use the SPF algorithm to compute a best path to each destination router.
  • In the foregoing process, the flooding process in which "each router floods its own LSP to all neighboring routers, and then each neighboring router floods LSPs to its own neighboring routers" causes a large quantity of link state packets existing in a network, and a large quantity of network bandwidth is occupied, or the network is even completely down. This causes a broadcast storm and affects network performance.
  • US2006/45024A1 discloses a method for an intermediate network node to efficiently process and disseminate link-state packets (LSP), the method comprising: receiving a LSP at the intermediate network node; flooding the received LSP; and performing, after flooding the received LSP, shortest path first (SPF) calculations based on the contents of the received LSP.
  • SUMMARY
  • The object of the present invention is to provide a link state packet transmission method and a routing node, so as to reduce a quantity of link state packets in a network and avoid a broadcast storm. This object is solved by a link state packet transmission method according to claim 1, claim 6 and claim 8 and a routing node according to claim 9 and claim 14. Further advantageous embodiments and improvements of the invention are listed in the dependent claims. Hereinafter, before coming to a detailed description of the embodiments of the invention, some aspects which contribute to the understanding of the invention are listed below separately. In addition, it should be noted that the invention is defined by the attached claims and any embodiments not covered by these claims are also to be understood as examples and aspects which contribute to the understanding of the invention.
  • According to a first aspect, an embodiment of the present invention provides a link state packet transmission method, where the method is applied to a tree topology, and the tree topology includes a leaf routing node, an intermediate routing node, and a root routing node. The method includes: receiving, by the intermediate routing node, a link state packet sent by a child routing node of the intermediate routing node; sending, by the intermediate routing node, the link state packet to the root routing node, where the root routing node is configured to aggregate received link state packets to obtain a link state packet set; receiving, by the intermediate routing node, the link state packet set sent by the root routing node; and sending, by the intermediate routing node, the link state packet set to the child routing node of the intermediate routing node. In this embodiment of the present invention, the intermediate routing node sends the received link state packet to the root routing node, so that the root routing node aggregates the link state packets to obtain the link state packet set, and the intermediate routing node then sends the received link state packet set to the child node instead of sending the received link state packets to all neighboring nodes in a flooding manner. Therefore, a quantity of data link state packets in a network can be reduced, thereby avoiding a broadcast storm.
    In a possible design, the sending, by the intermediate routing node, the link state packet to the root routing node includes: sending, by the intermediate routing node based on first distance vector information, the link state packet to a first neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the first neighboring routing node is a root routing node, the first neighboring routing node is configured to receive the link state packet, or if the first neighboring routing node is an intermediate routing node, the first neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the first neighboring routing node to all the root routing nodes. In this embodiment of the present invention, the intermediate routing node sends the received link state packet to its own parent node based on the distance vector information instead of sending the received link state packet to all its own neighboring nodes, thereby reducing the quantity of link state packets in the network. In addition, the intermediate routing node sends, by using the parent node, the link state packet to a root node nearest to the intermediate routing node, so as to increase a transmission rate of the link state packet and reduce transmission overheads.
  • In a possible design, the child routing node is a neighboring routing node of the intermediate routing node; and the sending, by the intermediate routing node, the link state packet set to the child routing node of the intermediate routing node includes: sending, by the intermediate routing node based on the first distance vector information, the link state packet set to a second neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the second neighboring routing node is a leaf routing node, the second neighboring routing node is configured to receive the link state packet set, or if the second neighboring routing node is an intermediate routing node, the second neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the second neighboring routing node to all the root routing nodes. In this embodiment of the present invention, the intermediate routing node sends the received link state packet set to its own child node based on the distance vector information instead of sending the received link state packet set to all its own neighboring nodes, thereby reducing the quantity of link state packets in the network.
  • In a possible design, before the receiving, by the intermediate routing node, a link state packet sent by a child routing node of the intermediate routing node, the method further includes: receiving, by the intermediate routing node, indication information, where the indication information is used to indicate which routing nodes are used as the root routing nodes; and determining, by the intermediate routing node based on a routing vector routing algorithm, the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes, and generating the first distance vector information based on the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes. In this embodiment of the present invention, the intermediate routing node learns in advance which routing nodes are the root routing nodes. Therefore, distance vector information is mutually transferred between routing nodes to update the distance vector information stored in the intermediate routing node.
  • In a possible design, the method further includes: when it is determined that a first preset condition is met, sending, by the intermediate routing node, a root routing node application request to one or more root routing nodes in all the root routing nodes, where the root routing node application request is used to indicate that the intermediate routing node requests to be upgraded to a root routing node; and if the intermediate routing node receives a root routing node application response sent by the one or more root routing nodes, updating, by the intermediate routing node, the first distance vector information, where the root routing node application response is used to indicate that the intermediate routing node has been upgraded to a root routing node. In this embodiment of the present invention, the intermediate routing node can apply to an existing root routing node to become a root routing node, so as to implement dynamic adjustment of the root routing node.
  • In a possible design, the method further includes: receiving, by the intermediate routing node, a root routing node exit message sent by the root routing node, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node; and updating, by the intermediate routing node, the first distance vector information. In this embodiment of the present invention, the root routing node may no longer be a root routing node, so as to implement dynamic adjustment of the root routing node.
  • In a possible design, the first preset condition includes: a quantity of existing root nodes is less than or equal to a first preset threshold, or transmission bandwidth of a root node is lower than a second preset threshold.
  • According to a second aspect, an embodiment of the present invention provides a link state packet transmission method, where the method is applied to a tree topology, and the tree topology includes a leaf routing node, an intermediate routing node, and a root routing node. The method includes: sending, by the leaf routing node, its own link state packet to the intermediate routing node, where the intermediate routing node is configured to send the link state packet to the root routing node, and the root routing node is configured to aggregate received link state packets to obtain a link state packet set; and receiving, by the leaf routing node, the link state packet set sent by the intermediate routing node. In this embodiment of the present invention, the leaf routing node sends its own link state packet to the intermediate routing node, so that the intermediate routing node forwards the link state packet to the root routing node, the root routing node aggregates the link state packets to obtain the link state packet set, and the intermediate routing node then sends the received link state packet set to the leaf node instead of sending the received link state packets to all neighboring nodes in a flooding manner. Therefore, a quantity of data link state packets in a network can be reduced, thereby avoiding a broadcast storm.
  • In a possible design, the intermediate routing node is a neighboring routing node of the leaf routing node; and the sending, by the leaf routing node, its own link state packet to the intermediate routing node includes: sending, by the leaf routing node based on second distance vector information, the link state packet to a neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the leaf routing node to all the root routing nodes, where the second distance vector information includes the shortest distance from the leaf routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the leaf routing node to all the root routing nodes; and if the neighboring routing node is a root routing node, the neighboring routing node is configured to receive the link state packet, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the neighboring routing node to all the root routing nodes. In this embodiment of the present invention, the leaf routing node sends the received link state packet to its own parent node based on the distance vector information, and sends, by using the parent node, the link state packet to a root node nearest to the leaf node, so as to increase a transmission rate of the link state packet and reduce transmission overheads.
  • In a possible design, before the sending, by the leaf routing node, its own link state packet to the intermediate routing node, the method further includes: receiving, by the leaf routing node, indication information, where the indication information is used to indicate which routing nodes are used as the root routing nodes; and determining, by the leaf routing node based on a routing vector routing algorithm, the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes, and generating the second distance vector information based on the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes. In this embodiment of the present invention, the leaf routing node learns in advance which routing nodes are the root routing nodes. Therefore, distance vector information is mutually transferred between routing nodes to update the distance vector information stored in the leaf routing node.
  • In a possible design, the method further includes: when it is determined that a first preset condition is met, sending, by the leaf routing node, a root routing node application request to one or more root routing nodes in all the root routing nodes, where the root routing node application request is used to indicate that the leaf routing node requests to be upgraded to a root routing node; and if the leaf routing node receives a root routing node application response sent by the one or more root routing nodes, updating, by the leaf routing node, the second distance vector information, where the root routing node application response is used to indicate that the leaf routing node has been upgraded to a root routing node. In this embodiment of the present invention, the leaf routing node can apply to an existing root routing node to become a root routing node, so as to implement dynamic adjustment of the root routing node.
  • In a possible design, the method further includes: receiving, by the leaf routing node, a root routing node exit message sent by the root routing node, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node; and updating, by the leaf routing node, the second distance vector information. In this embodiment of the present invention, the root routing node may no longer be a root routing node, so as to implement dynamic adjustment of the root routing node.
  • In a possible design, the first preset condition includes: a quantity of existing root nodes is less than or equal to a first preset threshold, or transmission bandwidth of a root node is lower than a second preset threshold.
  • According to a third aspect, an embodiment of the present invention provides a link state packet transmission method, where the method is applied to a tree topology, and the tree topology includes a leaf routing node, an intermediate routing node, and a root routing node. The method includes: receiving, by the root routing node, a link state packet sent by the intermediate routing node, and aggregating received link state packets to obtain a link state packet set; and sending, by the root routing node, the link state packet set to the intermediate routing node and a neighboring root routing node, where the intermediate routing node is configured to send the link state packet set to the leaf routing node, and the neighboring root routing node is configured to send the link state packet to a child routing node of the neighboring root routing node. In this embodiment of the present invention, the root routing node is responsible for receiving a link state packet sent by a non-root routing node and aggregating link state packets, and then sending an aggregated link state packet set to a non-root routing node instead of sending the received link state packets to all neighboring nodes in a flooding manner. Therefore, a quantity of data link state packets in a network can be reduced, thereby avoiding a broadcast storm.
  • In a possible design, the sending, by the root routing node, the link state packet set to the intermediate routing node and a neighboring root routing node includes: sending, by the root routing node based on third distance vector information, the link state packet set to a neighboring routing node that has a shortest distance to all root routing nodes greater than or equal to a shortest distance from the root routing node to all the root routing nodes, where the third distance vector information includes the shortest distance from the root routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the root routing node to all the root routing nodes; and if the neighboring routing node is a leaf routing node, the neighboring routing node is configured to receive the link state packet set, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the neighboring routing node to all the root routing nodes. In this embodiment of the present invention, the root routing node sends the aggregated link state packet set to its own child node and the neighboring root node based on the distance vector information, and sends the link state packet set to the leaf node by using the child node. Therefore, non-root nodes at a same level do not transfer the link state packet set to each other, thereby avoiding a ping pong phenomenon.
  • In a possible design, before the receiving, by the root routing node, a link state packet sent by the intermediate routing node, the method further includes: receiving, by the root routing node, indication information, where the indication information is used to indicate which routing nodes are used as the root routing nodes; and determining, by the root routing node based on a routing vector routing algorithm, the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes, and generating the third distance vector information based on the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes. In this embodiment of the present invention, the root routing node learns in advance which routing nodes are the root routing nodes. Therefore, distance vector information is mutually transferred between routing nodes to update the distance vector information stored in the root routing node.
  • In a possible design, the method further includes: receiving, by the root routing node, a root routing node application request sent by the intermediate routing node or the leaf routing node, where the root routing node application request is used to indicate that the intermediate routing node or the leaf routing node requests to be upgraded to a root routing node; and if the root routing node determines that the intermediate routing node or the leaf routing node can be upgraded to a root routing node, sending, by the root routing node, a root routing node application response to the intermediate routing node or the leaf routing node, where the root routing node application response is used to indicate that the intermediate routing node or the leaf routing node has been upgraded to a root routing node. In this embodiment of the present invention, the intermediate routing node or the leaf routing node can apply to an existing root routing node to become a root routing node, so as to implement dynamic adjustment of the root routing node.
  • In a possible design, the method further includes: when it is determined that a second preset condition is met, sending, by the root routing node, a root routing node exit message to a child routing node of the root routing node, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node. In this embodiment of the present invention, the root routing node may no longer be a root routing node, so as to implement dynamic adjustment of the root routing node.
  • In a possible design, the second preset condition includes: a quantity of existing root nodes is greater than or equal to a third preset threshold, or transmission bandwidth of a root node is higher than a fourth preset threshold.
  • According to a fourth aspect, an embodiment of the present invention provides an intermediate routing node, including a module or a unit configured to perform the link state packet transmission method according to any one of the first aspect or the implementations of the first aspect.
  • According to a fifth aspect, an embodiment of the present invention provides a leaf routing node, including a module or a unit configured to perform the link state packet transmission method according to any one of the second aspect or the implementations of the second aspect.
  • According to a sixth aspect, an embodiment of the present invention provides a root routing node, including a module or a unit configured to perform the link state packet transmission method according to any one of the third aspect or the implementations of the third aspect.
  • According to a seventh aspect, the present invention provides a routing node, including a processor and a memory, where the memory is configured to store an instruction, and the processor is configured to call the instruction in the memory to perform the method according to any one of the first aspect or the possible implementations of the first aspect, or the method according to any one of the second aspect or the possible implementations of the second aspect, or the method according to any one of the third aspect or the possible implementations of the third aspect.
  • According to an eighth aspect, an embodiment of the present invention provides a network system, including: the intermediate routing node according to any one of the fourth aspect or the possible implementations of the fourth aspect, and the leaf routing node according to any one of the fifth aspect or the possible implementations of the fifth aspect.
  • According to a ninth aspect, an embodiment of the present invention provides a network system, including: the intermediate routing node according to any one of the fourth aspect or the possible implementations of the fourth aspect, and the root routing node according to any one of the sixth aspect or the possible implementations of the sixth aspect.
  • According to a tenth aspect, an embodiment of the present invention provides a computer storage medium, configured to store a computer software instruction used by the intermediate routing node, where the computer software instruction includes a program used to execute the first aspect and designed for the intermediate routing node.
  • According to an eleventh aspect, an embodiment of the present invention provides a computer storage medium, configured to store a computer software instruction used by the leaf routing node, where the computer software instruction includes a program used to execute the second aspect and designed for the leaf routing node.
  • According to a twelfth aspect, an embodiment of the present invention provides a computer storage medium, configured to store a computer software instruction used by the root routing node, where the computer software instruction includes a program used to execute the third aspect and designed for the root routing node.
  • The technical solutions provided in the embodiments of the present invention may be applied to a network of a network topology that has a plurality of routing nodes. In the embodiments of the present invention, the network topology is changed to a tree network topology based on a plurality of root routing nodes. A non-root node reports its own link state packet to the root routing node, and the root routing node is responsible for aggregating link state packets, and then sends an aggregated link state packet set to each non-root node. Therefore, a flooding manner is no longer used for non-directional sending of a link packet, and a quantity of link packets in a network is reduced, thereby avoiding a broadcast storm.
  • These aspects or other aspects of the embodiments of the present invention may be clearer and easier to understand in descriptions of the following embodiments.
  • BRIEF DESCRIPTION OF DRAWINGS
  • To describe the technical solutions in the embodiments of the present invention more clearly, the following briefly describes the accompanying drawings required for describing the embodiments.
    • FIG. 1A is a schematic diagram of a network topology according to an embodiment of the present invention;
    • FIG. 1B is a schematic diagram of a tree structure according to an embodiment of the present invention;
    • FIG. 1C is a schematic diagram of another tree structure according to an embodiment of the present invention;
    • FIG. 1D is a schematic diagram of a tree structure corresponding to the topology shown in FIG. 1A;
    • FIG. 2 is a schematic flowchart of a link state packet transmission method according to an embodiment of the present invention;
    • FIG. 3 is a schematic flowchart of an upgrade from a non-root routing node to a root routing node according to an embodiment of the present invention;
    • FIG. 4 is a schematic diagram of another tree structure according to an embodiment of the present invention;
    • FIG. 5 is a schematic flowchart of no longer using a root routing node as a root routing node according to an embodiment of the present invention;
    • FIG. 6 is a schematic diagram of another tree structure according to an embodiment of the present invention;
    • FIG. 7 is a schematic diagram of another tree structure according to an embodiment of the present invention;
    • FIG. 8 is a schematic structural diagram of a routing node according to an embodiment of the present invention;
    • FIG. 9 is a schematic structural diagram of another routing node according to an embodiment of the present invention;
    • FIG. 10 is a schematic structural diagram of another routing node according to an embodiment of the present invention;
    • FIG. 11 is a schematic structural diagram of a network system according to an embodiment of the present invention; and
    • FIG. 12 is a schematic structural diagram of another routing node according to an embodiment of the present invention.
    DESCRIPTION OF EMBODIMENTS
  • FIG. 1A is a schematic diagram of a network topology according to an embodiment of the present invention. For convenience of description, in the following embodiments, a router is described as a routing node. It is assumed that an autonomous system 100 includes nine routers, and the nine routers are respectively named R1, R2, R3, R4, R5, R6, R7, R8, and R9. R1 is connected to R5, R2 is separately connected to R5 and R6, R3 is separately connected to R6 and R7, R4 is connected to R7, R5 is separately connected to R1, R2, R6, and R8, R6 is separately connected to R2, R3, R5, R7, R8, and R9, R7 is separately connected to R3, R4, R6, and R9, R8 is separately connected to R5, R6, and R9, and R9 is separately connected to R6, R7, and R8.
  • In a link state routing protocol, each router is responsible for "greeting" neighboring routers on directly connected links. A router uses the Hello (Hello) Protocol to discover all neighbors on links of the router to form an adjacency relationship. The neighbor herein is any other router that enables a same link state routing protocol. These small Hello packets are continuously exchanged between two adjacent routers, to implement a "keepalive" function to monitor a status of a neighbor. If the router no longer receives a Hello packet of a neighboring router, it is considered that the neighboring router is not reachable, and the adjacency relationship is broken. Adjacent routers exchange network link state information by sending LSPs. The LSP includes state information of each link directly connected to a router. The information includes but is not limited to: a neighboring router identifier (ID), a link type, bandwidth, a serial number, and expiration information. Upon establishing an adjacency relationship, a router may create an LSP and send its own LSP only to a neighboring router that establishes the adjacency relationship with the router. In addition, the router may further receive an LSP, sent by the neighboring router, of the neighboring router, or an LSP, sent by the neighboring router, of another router. In this way, each router receives LSPs of all routers in the autonomous system, and a set of all the LSPs forms a link state database. Because each LSP is a description of a network topology of a router, an entire link state database is a real reflection of a network topology of the autonomous system. For example, in this embodiment of the present invention, R1 sends its own LSP to R5. After receiving the LSP sent by R1, R5 sends the LSP of R1 to other neighboring routing nodes except R1, that is, R2, R6, and R8. After receiving the LSP of R1 sent by R5, R2, R6, and R8 further send the LSP of R1 to other neighboring routing nodes except R5. For example, R2 sends the LSP of R1 to R6, R6 sends the LSP of R1 to R2, R3, R8, and R9, and R8 sends the LSP of R1 to R6 and R9. After receiving the LSP of R1, each routing node sends the LSP to other neighboring routing nodes except the routing node that sends the LSP. Likewise, another routing node also floods its own LSP to other routing nodes in the autonomous system in this manner. This process of sending the LSP in a flooding manner may cause that a network is flooded with a large quantity of broadcast LSPs. If there are a relatively large quantity of routers in the autonomous system, a larger quantity of LSPs may be caused, and a risk of a broadcast storm may be brought.
  • In this embodiment of the present invention, to reduce the quantity of LSPs in the network, a topology diagram including a large quantity of routers may be changed to a multi-root hierarchical tree structure that uses K routing nodes as root routing nodes, where K is a positive integer. Each non-root routing node sends its own LSP to a root routing node. The root routing node is responsible for collecting the LSP of each non-root routing node, so as to aggregate LSPs. After aggregation, the root routing node sends the aggregated LSPs to a neighboring root routing node and each non-root routing node. Therefore, an original flooding manner of non-directional sending of an LSP is changed to a manner of directional sending of an LSP, and a quantity of LSPs transmitted in the network can be reduced, thereby avoiding a broadcast storm. In specific implementation, the root routing node may set a timer. When the timer reaches a threshold, the root routing node sends the currently aggregated LSPs to the neighboring root routing node and each non-root routing node.
  • Specifically, a network system administrator may select K routers from the foregoing nine routers as the root routing nodes based on a greedy algorithm or another algorithm and the network topology shown in FIG. 1A. In specific implementation, the network system administrator enters an instruction by using a user interface of any one of the foregoing nine routers, where the instruction is used to instruct the router to select the K routers from the foregoing nine routers as the root routing nodes. Alternatively, a dedicated control device controls, in a centralized manner, the foregoing nine routers, and the network system administrator enters an instruction by using a user interface of the control device, where the instruction is used to instruct the control device to select the K routers from the foregoing nine routers as the root routing nodes. In this embodiment of the present invention, an example in which K is 2 and the routing node R8 and the routing node R9 are finally determined root routing nodes is used for description.
  • After the root routing nodes are selected, the network system administrator triggers sending of a selected result (that is, routing node information of R8 and R9) to routing nodes of all routers in the autonomous system 100 in a flooding manner. For example, the network system administrator enters an instruction by using a user interface of the routing node R1, where the instruction is used to instruct to select the routing node R8 and the routing node R9 as the root routing nodes. After receiving the instruction, the routing node R1 sends a packet to a neighboring router, where the packet is used to instruct to select the routing node R8 and the routing node R9 as the root routing nodes. After receiving the packet, the neighboring routing node further sends the packet to its own neighboring routing nodes. Finally, all the routers in the autonomous system 100 receive the packet. Therefore, all routing nodes in the autonomous system 100 learn that the root routing nodes selected by the network system administrator are the routing node R8 and the routing node R9. Afterwards, each router computes and stores distance vector information. The distance vector information may be in a form of a distance vector table. Each router maintains a distance vector table, and then updates the distance vector table by using a distance vector advertisement between neighboring routers. Finally, the distance vector table maintained by each router records a shortest distance from a routing node of any router to any root routing node and a shortest distance from a routing node of any router to all root routing nodes, that is, each router obtains distance vector information of all the routers in the entire autonomous system. For a format of the distance vector table, refer to Table 1. Table 1
    Shortest distance to a root routing node R8 Shortest distance to a root routing node R9 Shortest distance to all root routing nodes
    Routing node R1 2 3 2
    Routing node R2 2 2 2
    Routing node R3 2 2 2
    Routing node R4 3 2 2
    Routing node R5 1 2 1
    Routing node R6 1 1 1
    Routing node R7 2 1 1
    Routing node R8 0 1 0
    Routing node R9 1 0 0
  • In this embodiment of the present invention, a shortest path from the routing node R1 to the root routing node R8 is R1-R5-R8. Therefore, the shortest distance is 2. A shortest path from the routing node R1 to the root routing node R9 is R1-R5-R8-R9 or R1-R5-R6-R9. Therefore, the shortest distance is 3. With reference to the shortest distance 2 from the routing node R1 to the root routing node R8 and the shortest distance 3 from the routing node R1 to the root routing node R9, a shortest distance from the routing node R1 to all the root routing nodes (that is, the root routing node R8 and the root routing node R9) is 2. Likewise, computing methods of a shortest distance from another root routing node to each root routing node and a shortest distance from the another root routing node to all the root routing nodes are the same as those described above. Details are not described herein again.
  • It should be noted that the distance vector table maintained by each routing node may alternatively include only a shortest distance from the routing node to each root routing node, a shortest distance from the routing node to all the root routing nodes, a shortest distance from a neighboring routing node to each root routing node, and a shortest distance from the neighboring routing node to all the root routing nodes. For the routing node R1, a neighboring routing node is R5. Therefore, a distance vector table stored in R1 needs to include the shortest distance 2 from R1 to the root routing node R8, the shortest distance 3 from R1 to the root routing node R9, the shortest distance 2 from R1 to the root routing node R8 and the root routing node R9, a shortest distance 1 from R5 to the root routing node R8, a shortest distance 2 from R5 to the root routing node R9, and a shortest distance 1 from R5 to the root routing node R8 and the root routing node R9. Another routing node is similar thereto, and details are not described herein again.
  • The root routing nodes may be selected based on the greedy algorithm or another algorithm, and the greedy algorithm is used as an example to describe a solution of how to select the root routing nodes. The network system administrator randomly selects two routing nodes from the foregoing nine routing nodes as the root routing nodes, and it is assumed that the routing nodes R1 and R2 are selected as the root routing nodes. The remaining routing nodes are allocated to a nearest routing node in the routing nodes R1 and R2 based on a relative distance to form two clusters, and it is assumed that R5 and R8 are allocated to the root routing node R1, and R3, R4, R6, R7, R8, and R9 are allocated to the root routing node R2. Afterwards, root routing nodes in the two clusters are reselected based on a relative distance of each routing node in each cluster, so that distances from other routing nodes different from the root routing node in the cluster to the root routing node are the smallest. The foregoing process is repeated until the root routing nodes in the two clusters no longer change. Herein, it is assumed that R8 and R9 are the finally determined root routing nodes.
  • It should be noted that an objective of determining the root routing nodes by using the foregoing greedy algorithm is to ensure that a height of a tree is reduced to a greatest extent. The height of the tree affects information transmission efficiency. Therefore, the height of the tree is reduced to a greatest extent, and LSP transmission efficiency can be improved. As shown in FIG. 1B, the routing node R5 is selected as the root routing node of the tree, and the height of the tree is 3. As shown in FIG. 1C, the routing node R6 is selected as the root routing node of the tree, and the height of the tree is only 2. Selecting the routing node R6 can significantly reduce an average delay of LSP information propagation.
  • After the distance vector table of each routing node is updated, the autonomous system 100 presents a multi-root hierarchical tree structure that uses two routing nodes as the root routing nodes. Referring to FIG. ID, FIG. 1D is a schematic diagram of a tree structure corresponding to the topology shown in FIG. 1A. It may be learned from FIG. 1D that a topology diagram is changed to a hierarchical tree structure, and connection relationships between routing nodes are not modified. In this embodiment of the present invention, other routing nodes different from the root routing nodes send their own LSPs to the root routing nodes. The root routing node aggregates LSPs sent by child routing nodes, and after aggregation, the root routing node sends the aggregated LSPs to the child routing nodes. Therefore, in this embodiment of the present invention, a quantity of LSPs can be greatly reduced, thereby avoiding a broadcast storm.
  • The following describes a link state packet transmission method in an embodiment of the present invention based on the multi-root hierarchical tree structure shown in FIG. 1D. Referring to FIG. 2, FIG. 2 is a schematic flowchart of a link state packet transmission method according to an embodiment of the present invention. The method includes but is not limited to the following steps.
  • S201: A leaf routing node sends its own LSP to an intermediate routing node.
  • FIG. 1D is used as an example for description. A leaf routing node R1 sends its own LSP to a neighboring intermediate routing node R5 that has a shortest distance to all root routing nodes less than a shortest distance from the leaf routing node R1 to all the root routing nodes, and the intermediate routing node R5 receives the LSP sent by the leaf routing node R1.
  • It should be noted that each non-root routing node sends its own updated LSP to one or more of a root routing node R8 or a root routing node R9. In this embodiment of the present invention, an example in which each non-root routing node sends its own updated LSP to a nearest root routing node in the two root routing nodes is used for description.
  • Specifically, each non-root routing node monitors its own current link state, and sends an updated LSP to a previous-level routing node in a direction in which a value of a distance toward the root routing node is the smallest. In this embodiment of the present invention, an example in which the leaf routing node R1 sends its own LSP to the nearest root routing node R8 is used for description. The leaf routing node R1 determines, based on a distance vector table stored by the leaf routing node R1, that the shortest distance from the leaf routing node R1 to all the root routing nodes is 2. The leaf routing node R1 finds, from the distance vector table, a neighboring routing node that has a shortest distance to all the root routing nodes less than 2, and determines that the neighboring routing node is the intermediate routing node R5 (a shortest distance from R5 to all the root routing nodes is 1), and the leaf routing node R1 sends its own LSP to the intermediate routing node R5.
  • S202: The intermediate routing node receives the LSP sent by the leaf routing node, and sends the LSP to a root routing node.
  • Specifically, the intermediate routing node R5 sends the LSP of the leaf routing node R1 to the neighboring root routing node R8 that has a shortest distance to all the root routing nodes less than the shortest distance from the intermediate routing node R5 to all the root routing nodes.
  • After receiving the LSP sent by the leaf routing node R1, the intermediate routing node R5 determines, based on a distance vector table stored by the intermediate routing node R5, that the shortest distance from the intermediate routing node R5 to all the root routing nodes is 1, then the intermediate routing node R5 finds, from the distance vector table, a neighboring routing node that has a shortest distance to all the root routing nodes less than 1, and determines that the neighboring routing node is the root routing node R8 (a shortest distance from R8 to all the root routing nodes is 0), and the intermediate routing node R5 sends the received LSP of the routing node R1 to the root routing node R8.
  • S203: The root routing node receives the LSP sent by the intermediate routing node, and aggregates received LSPs to obtain an LSP set.
  • Specifically, the root routing node R8 receives the LSP of the leaf routing node R1 sent by the intermediate routing node R5, and stores the received LSP of the leaf routing node R1.
  • It should be noted that another non-root routing node uses a same manner to send its own LSP to a nearest root routing node, for example, the root routing node R8 or the root routing node R9 in this embodiment of the present invention. The root routing node R8 and the root routing node R9 are responsible for collecting and storing LSPs of non-root routing nodes, and aggregating all received LSPs.
  • S204: The root routing node sends the LSP set to the intermediate routing node.
  • In addition, the root routing node further sends the LSP set to a neighboring root node.
  • Specifically, each root routing node sends the aggregated LSPs to a next-level routing node in a direction in which a value of a distance toward the root routing node is larger and the neighboring root routing node. The root routing node R8 is used as an example for description. The root routing node R8 determines, based on a distance vector table stored by the root routing node R8, that the shortest distance from the root routing node R8 to all the root routing nodes is 0. The root routing node R8 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than or equal to 0, and determines that the neighboring routing nodes are the intermediate routing node R5 (the shortest distance from R5 to all the root routing nodes is 1), an intermediate routing node R6 (a shortest distance from R6 to all the root routing nodes is 1), and the root routing node R9 (a shortest distance from R9 to all the root routing nodes is 0), and the root routing node R8 sends LSPs aggregated by the root routing node R8 to the intermediate routing node R5, the intermediate routing node R6, and the neighboring root routing node R9.
  • S205: The intermediate routing node receives the LSP set sent by the root routing node, and stores the LSP set.
  • S206: The intermediate routing node sends the LSP set to the leaf routing node.
  • Specifically, after receiving the aggregated LSPs sent by the root routing node R8, the intermediate routing node R5 stores the received LSPs aggregated by the root routing node R8, and determines, based on the distance vector table stored by the intermediate routing node R5, that the shortest distance from the intermediate routing node R5 to all the root routing nodes is 1. The intermediate routing node R5 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 1, and determines that the neighboring routing nodes are the leaf routing node R1 (the shortest distance from R1 to all the root routing nodes is 2) and a leaf routing node R2 (a shortest distance from R2 to all the root routing nodes is 2), and the intermediate routing node R5 sends the LSPs aggregated by the root routing node R8 to the leaf routing node R1 and the leaf routing node R2. The leaf routing node R1 and the leaf routing node R2 receive the aggregated LSPs sent by the intermediate routing node R5, and store the received aggregated LSPs.
  • After receiving the aggregated LSPs sent by the root routing node R8, the intermediate routing node R6 stores the received LSPs aggregated by the root routing node R8, and determines, based on a distance vector table stored by the intermediate routing node R6, that the shortest distance from the intermediate routing node R6 to all the root routing nodes is 1. The intermediate routing node R6 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 1, and determines that the neighboring routing nodes are the leaf routing node R2 (the shortest distance from R2 to all the root routing nodes is 2) and a leaf routing node R3 (a shortest distance from R3 to all the root routing nodes is 2), and the intermediate routing node R6 sends the LSPs aggregated by the root routing node R8 to the leaf routing node R2 and the leaf routing node R3. The leaf routing node R2 and the leaf routing node R3 receive the aggregated LSPs sent by the intermediate routing node R6, and store the received aggregated LSPs.
  • In addition, after receiving the aggregated LSPs sent by the root routing node R8, the root routing node R9 stores the received LSPs aggregated by the root routing node R8, and determines, based on a distance vector table stored by the root routing node R9, that the shortest distance from the root routing node R9 to all the root routing nodes is 0. The root routing node R9 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 0, and determines that the neighboring routing nodes are the intermediate routing node R6 (the shortest distance from R6 to all the root routing nodes is 1) and a leaf routing node R7 (a shortest distance from R7 to all the root routing nodes is 1), and the root routing node R9 sends the LSPs aggregated by the root routing node R8 to the intermediate routing node R6 and the intermediate routing node R7. After receiving the aggregated LSPs sent by the root routing node R9, the intermediate routing node R6 stores the received aggregated LSPs, and determines, based on the distance vector table stored by the intermediate routing node R6, that the shortest distance from the intermediate routing node R6 to all the root routing nodes is 1. The intermediate routing node R6 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 1, and determines that the neighboring routing nodes are the leaf routing node R2 (the shortest distance from R2 to all the root routing nodes is 2) and the leaf routing node R3 (the shortest distance from R3 to all the root routing nodes is 2), and the intermediate routing node R6 sends the aggregated LSPs to the leaf routing node R2 and the leaf routing node R3. The leaf routing node R2 and the leaf routing node R3 receive the aggregated LSPs sent by the intermediate routing node R6, and store the received aggregated LSPs.
  • After receiving the aggregated LSPs sent by the root routing node R9, the intermediate routing node R7 stores the received aggregated LSPs, and determines, based on a distance vector table stored by the intermediate routing node R7, that a shortest distance from the intermediate routing node R7 to all the root routing nodes is 1. The intermediate routing node R7 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than 1, and determines that the neighboring routing nodes are the leaf routing node R3 (the shortest distance from R3 to all the root routing nodes is 2) and a leaf routing node R4 (a shortest distance from R4 to all the root routing nodes is 2), and the intermediate routing node R7 sends the aggregated LSPs to the leaf routing node R3 and the leaf routing node R4. The leaf routing node R3 and the leaf routing node R4 receive the aggregated LSPs sent by the intermediate routing node R7, and store the received aggregated LSPs.
  • S207: The leaf routing node receives the LSP set sent by the intermediate routing node, and stores the LSP set.
  • It should be noted that the intermediate routing node also sends its own LSP to the root routing node, and the root routing node receives the LSP sent by the intermediate routing node.
  • Likewise, the root routing node R9 also sends the LSPs aggregated by the root routing node R9 to a next-level routing node in a direction in which a distance toward the root routing node is higher and the neighboring root routing node R8, the next-level routing node of the root routing node R9 then sends the LSPs aggregated by R9 to its own next-level routing node, and so on. Finally, all child routing nodes of the root routing node R9 receive the LSPs aggregated by the root routing node R9. The root routing node R8 also sends the LSPs aggregated by the root routing node R9 to its own next-level routing node, and after receiving the LSPs sent by the root routing node R8, the next-level routing node of the root routing node R8 also sends the LSPs to its own next-level routing node. Finally, all child routing nodes of the root routing node R8 receive the LSPs aggregated by the root routing node R9. In this process, the LSPs are transmitted in a tree trunk direction, a ping pong phenomenon can be avoided, and a quantity of LSPs existing in a network can be greatly reduced, thereby avoiding a broadcast storm. In addition, overheads of LSP packet exchange can be reduced, and a link state advertisement (English: Link State Advertising, LSA for short) synchronization speed can be accelerated. The ping pong phenomenon herein means that, when a link state changes, a first router updates its own link state database based on the change, and notifies a second router of updated information (including link information). After updating the information, the second router feeds back integrated information to an initial router, so that a cross update is formed.
  • All routing nodes can establish a link state database according to the received LSPs aggregated by the root routing node. According to the Shortest Path First algorithm, a shortest path to a destination routing node can be obtained.
  • According to implementation of this embodiment of the present invention, the leaf routing node sends its own link state packet to the intermediate routing node, the intermediate routing node sends the received link state packet to the root routing node, the root routing node aggregates link state packets to obtain the link state packet set, and sends the link state packet set to the intermediate routing node, and the intermediate routing node then sends the received link state packet set to the leaf node. In comparison with a flooding manner, in this embodiment of the present invention, a quantity of data link state packets in a network can be reduced, thereby avoiding a broadcast storm.
  • Because a network has a dynamic property, a network topology may change, and some routing nodes may fail. Therefore, a technical solution in which root routing nodes can be dynamically added or reduced is needed.
  • Referring to FIG. 3, FIG. 3 is a schematic flowchart of an upgrade from a non-root routing node to a root routing node according to an embodiment of the present invention. The non-root routing node herein may be a leaf routing node or may be an intermediate routing node. In this embodiment of the present invention, an example in which a leaf routing node R2 requests to be upgraded to a root routing node is used for description. The process includes the following steps.
  • S301: The leaf routing node R2 sends a root routing node application request to an old root routing node R8, where the request is used to indicate that the leaf routing node R2 requests to be upgraded to a root routing node.
  • Specifically, the non-root routing node monitors a quantity or states of existing root routing nodes and determines whether to become a new root routing node. If a non-root routing node determines to become a new root routing node, the non-root routing node sends a root routing node application request to one or more of old root routing nodes. In this embodiment of the present invention, an example in which the non-root routing node sends the root routing node application request to a nearest root routing node is used for description.
  • The root routing node application request may carry a routing node identifier (which is R2 in this embodiment of the present invention) of the leaf routing node R2, to indicate which routing node expects to be upgraded to a root routing node.
  • The leaf routing node R2 determines, based on a distance vector table stored by the leaf routing node R2, that a shortest distance from the leaf routing node R2 to all root routing nodes is 2. The leaf routing node R2 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes less than 2, and determines that the neighboring routing nodes are an intermediate routing node R5 (a shortest distance from R5 to all the root routing nodes is 1) and an intermediate routing node R6 (a shortest distance from R6 to all the root routing nodes is 1). In this embodiment of the present invention, an example in which the leaf routing node R2 sends the root routing node application request to the intermediate routing node R5 is used for description. The intermediate routing node R5 determines, based on a distance vector table stored by the intermediate routing node R5, that a shortest distance from the intermediate routing node R5 to all the root routing nodes is 1. The intermediate routing node R5 finds, from the distance vector table, a neighboring routing node that has a shortest distance to all the root routing nodes less than 1, and determines that the neighboring routing node is the root routing node R8 (a shortest distance from R8 to all the root routing nodes is 0), and the intermediate routing node R5 forwards the root routing node application request of the leaf routing node R2 to the root routing node R8.
  • S302: The root routing node R8 receives the root routing node application request of the leaf routing node R2 and determines whether to agree to upgrade the leaf routing node R2 to a root routing node; and if the root routing node R8 agrees to upgrade the leaf routing node R2 to a root routing node, step S303 is performed, or otherwise, the procedure ends.
  • The root routing node may determine, based on the quantity or the states of the existing root routing nodes, whether to agree to upgrade the leaf routing node R2 to a root routing node. For example, the quantity of the existing root routing nodes is less than a preset threshold 3, and the root routing node R8 agrees to upgrade the leaf routing node R2 to a root routing node. Alternatively, bandwidth of the existing root routing nodes is relatively low, and the root routing node R8 agrees to upgrade the leaf routing node R2 to a root routing node.
  • S303: The root routing node R8 sends a root routing node application response corresponding to the leaf routing node R2 to a next-level neighboring routing node and a neighboring root routing node, where the root routing node application response is used to indicate that an upgrade of the leaf routing node R2 to a root routing node is determined.
  • The root routing node application response may carry the identifier of the routing node R2. The root routing node R8 determines, based on a distance vector table stored by the root routing node R8, that the shortest distance from the root routing node R8 to all the root routing nodes is 0. The root routing node R8 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than or equal to 0, and determines that the neighboring routing nodes are the intermediate routing node R5 (the shortest distance from R5 to all the root routing nodes is 1), the intermediate routing node R6 (the shortest distance from R6 to all the root routing nodes is 1), and a root routing node R9 (a shortest distance from R9 to all the root routing nodes is 0), and the root routing node R8 sends root routing node information corresponding to the leaf routing node R2 to the intermediate routing node R5, the intermediate routing node R6, and the neighboring root routing node R9. Afterwards, the intermediate routing node R5 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, a leaf routing node R1 and the leaf routing node R2), and the intermediate routing node R6 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, the leaf routing node R2 and a leaf routing node R3). Likewise, the root routing node R9 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, the intermediate routing node R6 and an intermediate routing node R7), the intermediate routing node R6 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, the leaf routing node R2 and the leaf routing node R3), and the intermediate routing node R7 sends the root routing node information corresponding to the leaf routing node R2 to its own next-level routing nodes (that is, the leaf routing node R3 and a leaf routing node R4). Finally, each routing node in a hierarchical tree structure receives the root routing node information corresponding to the leaf routing node R2, so as to learn that the leaf routing node R2 is upgraded to a root routing node. After the leaf routing node R2 is upgraded to a root routing node, for a new tree structure, refer to FIG. 4.
  • S304: Each routing node updates distance vector information stored by each routing node.
  • In this embodiment of the present invention, updated root routing nodes include the root routing node R2, the root routing node R8, and the root routing node R9. Each routing node re-establishes distance vector information to the three root routing nodes, and then updates a distance vector table by using a distance vector advertisement between neighboring routers, so as to update a distance vector table stored by the routing node. For an updated distance vector table, refer to Table 2. Table 2
    Shortest distance to a root routing node R2 Shortest distance to a root routing node R8 Shortest distance to a root routing node R9 Shortest distance to all root routing nodes
    Routing node R1 2 2 3 2
    Routing node R2 0 2 2 0
    Routing node R3 2 2 2 2
    Routing node R4 4 3 2 2
    Routing node R5 1 1 2 1
    Routing node R6 1 1 1 1
    Routing node R7 3 2 1 1
    Routing node R8 2 0 1 0
    Routing node R9 2 1 0 0
  • According to implementation of this embodiment of the present invention, the non-root node may become a root node, so as to implement a dynamic change and adjustment of a root node.
  • Referring to FIG. 5, FIG. 5 is a schematic flowchart of no longer using a root routing node as a root routing node according to an embodiment of the present invention. In the process, an example in which a root routing node R8 is no longer used as a root routing node is used for description. The process includes the following steps.
  • S501: The root routing node R8 sends a root routing node exit message corresponding to the root routing node R8 to a next-level neighboring routing node and a neighboring root routing node, where the root routing node exit message is used to indicate that the root routing node R8 is no longer used as a root routing node.
  • Specifically, the root routing node monitors a quantity or states of existing root routing nodes and determines whether to exit from a root routing node set. For example, the quantity of the existing root routing nodes is greater than a preset threshold, and the root routing node R8 determines to exit from the root routing node set. Alternatively, bandwidth of the existing root routing nodes is relatively high, and the root routing node R8 determines to exit from the root routing node set. If the root routing node R8 determines to exit from the root routing node set, the root routing node R8 sends the root routing node exit message to all child routing nodes and the neighboring root routing node. That the root routing node R8 is no longer used as a root routing node includes two cases. In a first case, the root routing node R8 is removed from a tree structure and is no longer used. In a second case, the root routing node R8 is degraded from a root routing node to a non-root routing node.
  • The root routing node exit message may carry a routing node identifier (which is R8 in this embodiment of the present invention) of the root routing node R8, to indicate which routing node expects to exit from the root routing node set.
  • Specifically, the root routing node R8 determines, based on a distance vector table stored by the root routing node R8, that a shortest distance from the root routing node R8 to all root routing nodes is 0. The root routing node R8 finds, from the distance vector table, neighboring routing nodes that have shortest distances to all the root routing nodes greater than or equal to 0, and determines that the neighboring routing nodes are an intermediate routing node R5 (a shortest distance from R5 to all the root routing nodes is 1), an intermediate routing node R6 (a shortest distance from R6 to all the root routing nodes is 1), and a root routing node R9 (a shortest distance from R9 to all the root routing nodes is 0), and the root routing node R8 sends the root routing node exit message corresponding to the root routing node R8 to the intermediate routing node R5, the intermediate routing node R6, and the neighboring root routing node R9. Afterwards, the intermediate routing node R5 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, a leaf routing node R1 and a leaf routing node R2), and the intermediate routing node R6 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, the leaf routing node R2 and a leaf routing node R3). Likewise, the root routing node R9 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, the intermediate routing node R6 and an intermediate routing node R7), the intermediate routing node R6 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, the leaf routing node R2 and the leaf routing node R3), and the intermediate routing node R7 sends the root routing node exit message corresponding to the root routing node R8 to its own next-level routing nodes (that is, the leaf routing node R3 and a leaf routing node R4). Finally, each routing node in a hierarchical tree structure receives the root routing node exit message corresponding to the root routing node R8, so as to learn that the root routing node R8 is no longer used as a root routing node. Afterwards, the tree structure is adjusted. If the root routing node R8 is no longer used, for a new tree structure, refer to FIG. 6. If the root routing node R8 is degraded to a non-root routing node, for a new tree structure, refer to FIG. 7. A level of each routing node in the updated tree structure is related to a shortest distance from the routing node to all the root routing nodes. For example, in FIG. 6, because the root routing node R8 is no longer used, and a shortest distance from the routing node R5 to the root routing node R9 is 2, the routing node R5 is degraded from a second level to a third level (it is assumed that the root routing node is at a first level).
  • S502: Each routing node updates distance vector information stored by each routing node.
  • In this embodiment of the present invention, an updated root routing node includes only the root routing node R9. Each routing node re-establishes distance vector information to the root routing node R9, and then updates a distance vector table by using a distance vector advertisement between neighboring routers, so as to update the distance vector table stored by the routing node. The tree structure shown in FIG. 7 is used as an example. For an updated distance vector table, refer to Table 3. Table 3
    Shortest distance to a root routing node R9 Shortest distance to all root routing nodes
    Routing node R1 3 3
    Routing node R2 2 2
    Routing node R3 2 2
    Routing node R4 2 2
    Routing node R5 2 2
    Routing node R6 1 1
    Routing node R7 1 1
    Routing node R8 1 1
    Routing node R9 0 0
  • According to implementation of this embodiment of the present invention, the root node may no longer be used as a root node, so as to implement a dynamic change and adjustment of a root node.
  • FIG. 8 is a schematic structural diagram of a routing node according to an embodiment of the present invention. As shown in FIG. 8, an intermediate routing node 80 includes: a receiving module 801 and a sending module 802.
  • The receiving module 801 is configured to receive a link state packet sent by a child routing node of the intermediate routing node.
  • The sending module 802 is configured to send the link state packet to the root routing node, where the root routing node is configured to aggregate received link state packets to obtain a link state packet set.
  • The receiving module 801 is further configured to receive the link state packet set sent by the root routing node.
  • The sending module 802 is further configured to send the link state packet set to the child routing node of the intermediate routing node.
  • Optionally, that the sending module 802 is configured to send the link state packet to the root routing node is specifically:
    sending, based on first distance vector information, the link state packet to a first neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the first neighboring routing node is a root routing node, the first neighboring routing node is configured to receive the link state packet, or if the first neighboring routing node is an intermediate routing node, the first neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the first neighboring routing node to all the root routing nodes.
  • Optionally, the child routing node is a neighboring routing node of the intermediate routing node; and that the sending module 802 is configured to send the link state packet set to the child routing node of the intermediate routing node is specifically:
    sending, based on the first distance vector information, the link state packet set to a second neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the second neighboring routing node is a leaf routing node, the second neighboring routing node is configured to receive the link state packet set, or if the second neighboring routing node is an intermediate routing node, the second neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the second neighboring routing node to all the root routing nodes.
  • Optionally, the receiving module 801 is further configured to receive indication information before receiving the link state packet sent by the child routing node of the intermediate routing node, where the indication information is used to indicate which routing nodes are used as the root routing nodes.
  • The intermediate routing node 80 further includes: a determining module, configured to determine, based on a routing vector routing algorithm, the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes, and generate the first distance vector information based on the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes.
  • Optionally, the sending module 802 is further configured to: when it is determined that a first preset condition is met, send a root routing node application request to one or more root routing nodes in all the root routing nodes, where the root routing node application request is used to indicate that the intermediate routing node requests to be upgraded to a root routing node; and if the intermediate routing node receives a root routing node application response sent by the one or more root routing nodes, the intermediate routing node updates the first distance vector information, where the root routing node application response is used to indicate that the intermediate routing node has been upgraded to a root routing node.
  • FIG. 9 is a schematic structural diagram of a routing node according to an embodiment of the present invention. As shown in FIG. 9, a leaf routing node 90 includes: a sending module 901 and a receiving module 902.
  • The sending module 901 is configured to send its own link state packet to the intermediate routing node, where the intermediate routing node is configured to send the link state packet to the root routing node, and the root routing node is configured to aggregate received link state packets to obtain a link state packet set.
  • The receiving module 902 is configured to receive the link state packet set sent by the intermediate routing node.
  • Optionally, the intermediate routing node is a neighboring routing node of the leaf routing node; and that the sending module 901 is configured to send its own link state packet to the intermediate routing node is specifically: sending, based on second distance vector information, the link state packet to a neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the leaf routing node to all the root routing nodes, where the second distance vector information includes the shortest distance from the leaf routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the leaf routing node to all the root routing nodes; and if the neighboring routing node is a root routing node, the neighboring routing node is configured to receive the link state packet, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the neighboring routing node to all the root routing nodes.
  • Optionally, the receiving module 902 is further configured to receive indication information before the sending module sends its own link state packet to the intermediate routing node, where the indication information is used to indicate which routing nodes are used as the root routing nodes.
  • The leaf routing node 90 further includes: a determining module, configured to determine, based on a routing vector routing algorithm, the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes, and generate the second distance vector information based on the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes.
  • Optionally, the sending module 901 is further configured to: when it is determined that a first preset condition is met, send a root routing node application request to one or more root routing nodes in all the root routing nodes, where the root routing node application request is used to indicate that the leaf routing node requests to be upgraded to a root routing node.
  • The leaf routing node 90 further includes: an updating module, configured to: if the receiving module receives a root routing node application response sent by the one or more root routing nodes, update the second distance vector information, where the root routing node application response is used to indicate that the leaf routing node has been upgraded to a root routing node.
  • FIG. 10 is a schematic structural diagram of a routing node according to an embodiment of the present invention. As shown in FIG. 10, a root routing node 100 includes: a receiving module 1001 and a sending module 1002.
  • The receiving module 1001 is configured to receive a link state packet sent by the intermediate routing node, and aggregate received link state packets to obtain a link state packet set.
  • The sending module 1002 is configured to send the link state packet set to the intermediate routing node and a neighboring root routing node, where the intermediate routing node is configured to send the link state packet set to the leaf routing node, and the neighboring root routing node is configured to send the link state packet to a child routing node of the neighboring root routing node.
  • Optionally, that the sending module 1002 is configured to send the link state packet set to the intermediate routing node and the neighboring root routing node is specifically:
    sending, based on third distance vector information, the link state packet set to a neighboring routing node that has a shortest distance to all root routing nodes greater than or equal to a shortest distance from the root routing node to all the root routing nodes, where the third distance vector information includes the shortest distance from the root routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the root routing node to all the root routing nodes; and if the neighboring routing node is a leaf routing node, the neighboring routing node is configured to receive the link state packet set, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the neighboring routing node to all the root routing nodes.
  • Optionally, the receiving module 1001 is further configured to receive indication information before receiving the link state packet sent by the intermediate routing node, where the indication information is used to indicate which routing nodes are used as the root routing nodes.
  • The root routing node 100 further includes: a determining module, configured to determine, based on a routing vector routing algorithm, the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes, and generate the third distance vector information based on the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes.
  • Optionally, the receiving module 1001 is further configured to receive a root routing node application request sent by the intermediate routing node or the leaf routing node, where the root routing node application request is used to indicate that the intermediate routing node or the leaf routing node requests to be upgraded to a root routing node.
  • The sending module 1002 is further configured to: if the root routing node determines that the intermediate routing node or the leaf routing node can be upgraded to a root routing node, send a root routing node application response to the intermediate routing node or the leaf routing node, where the root routing node application response is used to indicate that the intermediate routing node or the leaf routing node has been upgraded to a root routing node.
  • Optionally, the sending module 1002 is further configured to: when it is determined that a second preset condition is met, send a root routing node exit message to a child routing node of the root routing node, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node.
  • FIG. 11 is a schematic structural diagram of a network system according to an embodiment of the present invention. As shown in FIG. 11, the system may include the intermediate routing node in the embodiment of FIG. 8 and the leaf routing node in the embodiment of FIG. 9; or may include the intermediate routing node in the embodiment of FIG. 8 and the root routing node in the embodiment of FIG. 10; or may include the intermediate routing node in the embodiment of FIG. 8, the leaf routing node in the embodiment of FIG. 9, and the root routing node in the embodiment of FIG. 10. In this embodiment of the present invention, an example in which the system 110 includes an intermediate routing node, a leaf routing node, and a root routing node is used for description. For the intermediate routing node, refer to related description in the embodiment of FIG. 8. For the leaf routing node, refer to related description in the embodiment of FIG. 9. For the root routing node, refer to related description in the embodiment of FIG. 10. Details are not described herein again.
  • Referring to FIG. 12, FIG. 12 is a schematic structural diagram of a routing node according to an embodiment of the present invention. As shown in FIG. 12, the routing node 120 includes a processor 1201, a memory 1202, and a transceiver 1203. The processor 1201, the memory 1202, and the transceiver 1203 may be connected by using a bus or in another manner.
  • Optionally, the routing node 120 may further include a network interface 1204 and a power module 1205.
  • The memory 1202 is configured to store an instruction. In specific implementation, the memory 1202 may be a read-only memory (English: Read-Only Memory, ROM for short) or a random access memory (English: Random Access Memory, RAM for short).
  • The transceiver 1203 is configured to receive and send data.
  • The network interface 1204 is configured to perform communication between the routing node 120 and another device.
  • The power module 1205 is configured to supply power to each module of the routing node 120.
  • In a first implementation of this embodiment of the present invention, the processor 1201 is configured to perform the following operations:
    • receiving, by using the transceiver 1203, a link state packet sent by a child routing node of the intermediate routing node;
    • sending the link state packet to the root routing node by using the transceiver 1203, where the root routing node is configured to aggregate received link state packets to obtain a link state packet set;
    • receiving, by using the transceiver 1203, the link state packet set sent by the root routing node; and
    • sending the link state packet set to the child routing node of the intermediate routing node by using the transceiver 1203.
  • Optionally, that the processor 1201 sends the link state packet to the root routing node by using the transceiver 1203 includes:
    sending, by using the transceiver 1203 based on first distance vector information, the link state packet to a first neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the first neighboring routing node is a root routing node, the first neighboring routing node is configured to receive the link state packet, or if the first neighboring routing node is an intermediate routing node, the first neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the first neighboring routing node to all the root routing nodes.
  • Optionally, the child routing node is a neighboring routing node of the intermediate routing node; and that the processor 1201 sends the link state packet set to the child routing node of the intermediate routing node by using the transceiver 1203 includes:
    sending, by using the transceiver 1203 based on the first distance vector information, the link state packet set to a second neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the intermediate routing node to all the root routing nodes, where the first distance vector information includes the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the second neighboring routing node is a leaf routing node, the second neighboring routing node is configured to receive the link state packet set, or if the second neighboring routing node is an intermediate routing node, the second neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the second neighboring routing node to all the root routing nodes.
  • Optionally, before the processor 1201 receives, by using the transceiver 1203, the link state packet sent by the child routing node of the intermediate routing node, the processor 1201 is further configured to:
    • receive indication information by using the transceiver 1203, where the indication information is used to indicate which routing nodes are used as the root routing nodes; and
    • determine, based on a routing vector routing algorithm, the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes, and generate the first distance vector information based on the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes.
  • Optionally, the processor 1201 is further configured to:
    when it is determined that a first preset condition is met, send a root routing node application request to one or more root routing nodes in all the root routing nodes by using the transceiver 1203, where the root routing node application request is used to indicate that the intermediate routing node requests to be upgraded to a root routing node; and if the intermediate routing node receives a root routing node application response sent by the one or more root routing nodes, update the first distance vector information by the intermediate routing node, where the root routing node application response is used to indicate that the intermediate routing node has been upgraded to a root routing node.
  • In a second implementation of this embodiment of the present invention, the processor 1201 is configured to perform the following operations:
    • sending its own link state packet to the intermediate routing node by using the transceiver 1203, where the intermediate routing node is configured to send the link state packet to the root routing node, and the root routing node is configured to aggregate received link state packets to obtain a link state packet set; and
    • receiving, by using the transceiver 1203, the link state packet set sent by the intermediate routing node.
  • Optionally, the intermediate routing node is a neighboring routing node of the leaf routing node; and that the processor 1201 sends its own link state packet to the intermediate routing node by using the transceiver 1203 includes:
    sending, by using the transceiver 1203 based on second distance vector information, the link state packet to a neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the leaf routing node to all the root routing nodes, where the second distance vector information includes the shortest distance from the leaf routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the leaf routing node to all the root routing nodes; and if the neighboring routing node is a root routing node, the neighboring routing node is configured to receive the link state packet, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the neighboring routing node to all the root routing nodes.
  • Optionally, before the processor 1201 sends its own link state packet to the intermediate routing node by using the transceiver 1203, the processor 1201 is further configured to:
    • receive indication information by using the transceiver 1203, where the indication information is used to indicate which routing nodes are used as the root routing nodes; and
    • determine, based on a routing vector routing algorithm, the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes, and generate the second distance vector information based on the shortest distance from the leaf routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the leaf routing node to all the root routing nodes.
  • Optionally, the processor 1201 is further configured to:
    • when it is determined that a first preset condition is met, send a root routing node application request to one or more root routing nodes in all the root routing nodes by using the transceiver 1203, where the root routing node application request is used to indicate that the leaf routing node requests to be upgraded to a root routing node; and
    • if the leaf routing node receives a root routing node application response sent by the one or more root routing nodes, update the second distance vector information, where the root routing node application response is used to indicate that the leaf routing node has been upgraded to a root routing node.
  • In a third implementation of this embodiment of the present invention, the processor 1201 is configured to perform the following operations:
    • receiving, by using the transceiver 1203, a link state packet sent by the intermediate routing node, and aggregating received link state packets to obtain a link state packet set; and
    • sending the link state packet set to the intermediate routing node and a neighboring root routing node by using the transceiver 1203, where the intermediate routing node is configured to send the link state packet set to the leaf routing node, and the neighboring root routing node is configured to send the link state packet to a child routing node of the neighboring root routing node.
  • Optionally, that the processor 1201 sends the link state packet set to the intermediate routing node and the neighboring root routing node by using the transceiver 1203 includes:
    sending, by using the transceiver 1203 based on third distance vector information, the link state packet set to a neighboring routing node that has a shortest distance to all root routing nodes greater than or equal to a shortest distance from the root routing node to all the root routing nodes, where the third distance vector information includes the shortest distance from the root routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the root routing node to all the root routing nodes; and if the neighboring routing node is a leaf routing node, the neighboring routing node is configured to receive the link state packet set, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the neighboring routing node to all the root routing nodes.
  • Optionally, before the processor 1201 receives, by using the transceiver 1203, the link state packet sent by the intermediate routing node, the processor 1201 is further configured to:
    • receive indication information by using the transceiver 1203, where the indication information is used to indicate which routing nodes are used as the root routing nodes; and
    • determine, based on a routing vector routing algorithm, the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes, and generate the third distance vector information based on the shortest distance from the root routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the root routing node to all the root routing nodes.
  • Optionally, the processor 1201 is further configured to:
    • receive, by using the transceiver 1203, a root routing node application request sent by the intermediate routing node or the leaf routing node, where the root routing node application request is used to indicate that the intermediate routing node or the leaf routing node requests to be upgraded to a root routing node; and
    • if it is determined that the intermediate routing node or the leaf routing node can be upgraded to a root routing node, send a root routing node application response to the intermediate routing node or the leaf routing node by using the transceiver 1203, where the root routing node application response is used to indicate that the intermediate routing node or the leaf routing node has been upgraded to a root routing node.
  • Optionally, the processor 1201 is further configured to:
    when it is determined that a second preset condition is met, send a root routing node exit message to a child routing node of the root routing node by using the transceiver 1203, where the root routing node exit message is used to indicate that the root routing node is no longer used as a root routing node.
  • A person of ordinary skill in the art may understand that, each aspect of the embodiments of the present invention or a possible implementation of each aspect may be specifically implemented as a system, a method, or a computer program product. Therefore, each aspect of the embodiments of the present invention or the possible implementation of each aspect may use forms of hardware only embodiments, software only embodiments (including firmware, resident software, and the like), or embodiments with a combination of software and hardware, which are uniformly referred to as a "circuit", "module", or "system" herein. In addition, each aspect of the embodiments of the present invention or the possible implementation of each aspect may take a form of a computer program product, where the computer program product is computer-readable program code stored in a computer-readable medium.
  • A person of ordinary skill in the art may be aware that, in combination with the examples described in the embodiments disclosed in this specification, units and algorithm steps may be implemented by electronic hardware or a combination of computer software and electronic hardware. Whether the functions are performed by hardware or software depends on particular applications and design constraint conditions of the technical solutions. A person skilled in the art may use different methods to implement the described functions for each particular application, but it should not be considered that the implementation goes beyond the scope of the embodiments of the present invention.

Claims (14)

  1. A link state packet transmission method, wherein the method is applied to a tree topology, and the tree topology comprises an intermediate routing node, and a root routing node; and the method comprises:
    receiving (S201), by the intermediate routing node, an updated link state packet sent by a child routing node of the intermediate routing node;
    sending (S202), by the intermediate routing node, the updated link state packet to the root routing node, wherein the root routing node is configured to aggregate updated received link state packets to obtain a link state packet set (S203);
    receiving (S204), by the intermediate routing node, the link state packet set sent by the root routing node; and
    sending (S206), by the intermediate routing node, the link state packet set to the child routing node of the intermediate routing node.
  2. The method according to claim 1, wherein the sending (S202), by the intermediate routing node, the link state packet to the root routing node comprises:
    sending, by the intermediate routing node based on first distance vector information, the link state packet to a first neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the intermediate routing node to all the root routing nodes, wherein the first distance vector information comprises the shortest distance from the intermediate routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the first neighboring routing node is a root routing node, the first neighboring routing node is configured to receive the link state packet, or if the first neighboring routing node is an intermediate routing node, the first neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the first neighboring routing node to all the root routing nodes.
  3. The method according to claim 1 or 2, wherein the child routing node is a neighboring routing node of the intermediate routing node; and the sending (S206), by the intermediate routing node, the link state packet set to the child routing node of the intermediate routing node comprises:
    sending, by the intermediate routing node based on the first distance vector information, the link state packet set to a second neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the intermediate routing node to all the root routing nodes, wherein the first distance vector information comprises the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the second neighboring routing node is a leaf routing node, the second neighboring routing node is configured to receive the link state packet set, or if the second neighboring routing node is an intermediate routing node, the second neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the second neighboring routing node to all the root routing nodes.
  4. The method according to any one of claims 1 to 3, wherein before the receiving (S201), by the intermediate routing node, a link state packet sent by a child routing node of the intermediate routing node, the method further comprises:
    receiving, by the intermediate routing node, indication information, wherein the indication information is used to indicate which routing nodes are used as the root routing nodes; and
    determining, by the intermediate routing node based on a routing vector routing algorithm, the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes, and generating the first distance vector information based on the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes.
  5. The method according to any one of claims 1 to 4, further comprising:
    when it is determined that a first preset condition is met, sending, by the intermediate routing node, a root routing node application request to one or more root routing nodes in all the root routing nodes, wherein the root routing node application request is used to indicate that the intermediate routing node requests to be upgraded to a root routing node; and if the intermediate routing node receives a root routing node application response sent by the one or more root routing nodes, updating, by the intermediate routing node, the first distance vector information, wherein the root routing node application response is used to indicate that the intermediate routing node has been upgraded to a root routing node.
  6. A link state packet transmission method, wherein the method is applied to a tree topology, and the tree topology comprises a leaf routing node, an intermediate routing node, and a root routing node; and the method comprises:
    sending (S201), by the leaf routing node, its own updated link state packet to the intermediate routing node, wherein the intermediate routing node is configured to send the updated link state packet to the root routing node (S202), and the root routing node is configured to aggregate received updated link state packets to obtain a link state packet set (S203); and
    receiving (S206), by the leaf routing node, the link state packet set sent by the intermediate routing node, wherein the link state packet set is sent by the root routing node to the intermediate routing node.
  7. The method according to claim 6, wherein the intermediate routing node is a neighboring routing node of the leaf routing node; and the sending, by the leaf routing node, its own link state packet to the intermediate routing node comprises:
    sending, by the leaf routing node based on second distance vector information, the link state packet to a neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the leaf routing node to all the root routing nodes, wherein the second distance vector information comprises the shortest distance from the leaf routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the leaf routing node to all the root routing nodes; and if the neighboring routing node is a root routing node, the neighboring routing node is configured to receive the link state packet, or if the neighboring routing node is an intermediate routing node, the neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the neighboring routing node to all the root routing nodes.
  8. A link state packet transmission method, wherein the method is applied to a tree topology, and the tree topology comprises a leaf routing node, an intermediate routing node, and a root routing node; and the method comprises:
    receiving (S203), by the root routing node, an updated link state packet sent by the intermediate routing node, and aggregating received updated link state packets to obtain a link state packet set, wherein the updated link state data packet is sent by the leaf routing node to the intermediate routing node; and
    sending (S204), by the root routing node, the link state packet set to the intermediate routing node and a neighboring root routing node, wherein the intermediate routing node is configured to send the link state packet set to the leaf routing node (S206), and the neighboring root routing node is configured to send the link state packet set to a child routing node of the neighboring root routing node.
  9. An intermediate routing node, comprising:
    a receiving module (801), configured to receive an updated link state packet sent by a child routing node of the intermediate routing node; and
    a sending module (802), configured to send the updated link state packet to a root routing node, wherein the root routing node is configured to aggregate received updated link state packets to obtain a link state packet set, wherein
    the receiving module (801) is further configured to receive the link state packet set sent by the root routing node; and
    the sending module (802) is further configured to send the link state packet set to the child routing node of the intermediate routing node.
  10. The intermediate routing node according to claim 9, wherein that the sending module (802) is configured to send the link state packet to the root routing node is specifically:
    sending, based on first distance vector information, the link state packet to a first neighboring routing node that has a shortest distance to all root routing nodes less than a shortest distance from the intermediate routing node to all the root routing nodes, wherein the first distance vector information comprises the shortest distance from the intermediate routing node to all the root routing nodes and shortest distances separately from all neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the first neighboring routing node is a root routing node, the first neighboring routing node is configured to receive the link state packet, or if the first neighboring routing node is an intermediate routing node, the first neighboring routing node is configured to send the link state packet to a neighboring routing node that has a shortest distance to all the root routing nodes less than the shortest distance from the first neighboring routing node to all the root routing nodes.
  11. The intermediate routing node according to claim 9 or 10, wherein the child routing node is a neighboring routing node of the intermediate routing node; and that the sending module (802) is configured to send the link state packet set to the child routing node of the intermediate routing node is specifically:
    sending, based on the first distance vector information, the link state packet set to a second neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the intermediate routing node to all the root routing nodes, wherein the first distance vector information comprises the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes; and if the second neighboring routing node is a leaf routing node, the second neighboring routing node is configured to receive the link state packet set, or if the second neighboring routing node is an intermediate routing node, the second neighboring routing node is configured to send the link state packet set to a neighboring routing node that has a shortest distance to all the root routing nodes greater than the shortest distance from the second neighboring routing node to all the root routing nodes.
  12. The intermediate routing node according to any one of claims 9 to 11, wherein
    the receiving module (801) is further configured to receive indication information before receiving the link state packet sent by the child routing node of the intermediate routing node, wherein the indication information is used to indicate which routing nodes are used as the root routing nodes; and
    the intermediate routing node further comprises:
    a determining module, configured to determine, based on a routing vector routing algorithm, the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes, and generate the first distance vector information based on the shortest distance from the intermediate routing node to all the root routing nodes and the shortest distances separately from all the neighboring routing nodes of the intermediate routing node to all the root routing nodes.
  13. The intermediate routing node according to any one of claims 9 to 12, wherein
    the sending module (802) is further configured to: when it is determined that a first preset condition is met, send a root routing node application request to one or more root routing nodes in all the root routing nodes, wherein the root routing node application request is used to indicate that the intermediate routing node requests to be upgraded to a root routing node; and if the intermediate routing node receives a root routing node application response sent by the one or more root routing nodes, the intermediate routing node updates the first distance vector information, wherein the root routing node application response is used to indicate that the intermediate routing node has been upgraded to a root routing node.
  14. A root routing node, comprising:
    a receiving module (1001), configured to receive an updated link state packet sent by the intermediate routing node, and aggregate received updated link state packets to obtain a link state packet set, wherein the link state data packet is sent by the leaf routing node to the intermediate routing node; and
    a sending module (1002), configured to send the link state packet set to the intermediate routing node and a neighboring root routing node, wherein the intermediate routing node is configured to send the link state packet set to the leaf routing node, and the neighboring root routing node is configured to send the link state packet to a child routing node of the neighboring root routing node.
EP17871571.0A 2016-11-16 2017-11-07 Link state packet transmission method, and routing node Active EP3531630B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201611036894.5A CN108075981B (en) 2016-11-16 2016-11-16 Transmission method of link state data packet and routing node
PCT/CN2017/109676 WO2018090852A1 (en) 2016-11-16 2017-11-07 Link state packet transmission method, and routing node

Publications (3)

Publication Number Publication Date
EP3531630A1 EP3531630A1 (en) 2019-08-28
EP3531630A4 EP3531630A4 (en) 2019-08-28
EP3531630B1 true EP3531630B1 (en) 2021-01-06

Family

ID=62146125

Family Applications (1)

Application Number Title Priority Date Filing Date
EP17871571.0A Active EP3531630B1 (en) 2016-11-16 2017-11-07 Link state packet transmission method, and routing node

Country Status (4)

Country Link
US (1) US10972310B2 (en)
EP (1) EP3531630B1 (en)
CN (1) CN108075981B (en)
WO (1) WO2018090852A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109510768B (en) * 2017-09-14 2021-02-12 华为技术有限公司 Method, device and system for transmitting Link State Advertisement (LSA)
CN112422418B (en) * 2020-10-26 2022-09-20 锐捷网络股份有限公司 Load balancing method, device, medium and equipment for link state advertisement
CN116916405B (en) * 2023-09-12 2023-12-26 深圳市乐兆电子科技有限公司 5G cluster router route control method and device and cluster router

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082473B2 (en) * 2001-02-01 2006-07-25 Lucent Technologies Inc. System and method for optimizing open shortest path first aggregates and autonomous network domain incorporating the same
US7801857B2 (en) * 2003-12-19 2010-09-21 Solace Systems, Inc. Implicit routing in content based networks
US7558214B2 (en) * 2004-08-27 2009-07-07 Cisco Technology, Inc. Mechanism to improve concurrency in execution of routing computation and routing information dissemination
ES2383613T3 (en) * 2005-10-05 2012-06-22 Nortel Networks Limited Formation of state bridges of supplier links
CN100394742C (en) * 2006-08-17 2008-06-11 北京邮电大学 Monitoring and analyzing system for opening shortest path priority route protocol and working method
US8948046B2 (en) * 2007-04-27 2015-02-03 Aerohive Networks, Inc. Routing method and system for a wireless network
CN100442786C (en) * 2007-07-10 2008-12-10 北京航空航天大学 Tree structure based routing method
CN100505700C (en) * 2007-07-13 2009-06-24 北京航空航天大学 A routing update method
CN101272393B (en) * 2008-05-14 2010-11-03 杭州华三通信技术有限公司 Routing computing method and network node based on link condition routing protocol
CN102170710B (en) * 2010-02-26 2016-01-20 中兴通讯股份有限公司 A kind of method and system realizing leaf node and find in label switched path
CN102142970B (en) * 2011-03-16 2013-12-18 华为技术有限公司 Method for constructing multicast tree in two-layer Ethernet and network node equipment
US9300564B2 (en) * 2012-06-15 2016-03-29 Cisco Technology, Inc. Ordered flooding requests for path computation elements
CN103546381B (en) * 2012-07-12 2017-06-09 华为技术有限公司 Method, the apparatus and system of two-way multicast distribution tree are created based on Interior Gateway Protocol
CN103414644B (en) * 2013-07-31 2016-12-07 华为技术有限公司 Method that list item issues and controller
JP6268943B2 (en) * 2013-11-06 2018-01-31 富士通株式会社 Information processing system, switch device, and information processing system control method
CN104796339B (en) * 2014-01-17 2018-03-20 新华三技术有限公司 Quick flood process method and device
US9614726B2 (en) * 2014-01-21 2017-04-04 Telefonaktiebolaget L M Ericsson (Publ) Method and system for deploying maximally redundant trees in a data network
US9667559B2 (en) * 2014-02-03 2017-05-30 Ciena Corporation MPLS and GMPLS tunnel flap dampening in traffic engineered networks
US20150326469A1 (en) * 2014-05-09 2015-11-12 Telefonaktiebolaget L M Ericsson (Publ) Oam aided explicit path report via igp
CN105282041A (en) * 2014-07-18 2016-01-27 中兴通讯股份有限公司 Method and device of flooding on the basis of ISIS (intermediate system to intermediate system)
CN104468387B (en) * 2014-11-03 2017-08-29 首都师范大学 The distributed storage method of OSPF link-state informations in expandable route
CN104320334B (en) * 2014-11-03 2017-06-13 电子科技大学 A kind of concentrated route algorithm in wireless Mesh netword
US10015073B2 (en) * 2015-02-20 2018-07-03 Cisco Technology, Inc. Automatic optimal route reflector root address assignment to route reflector clients and fast failover in a network environment

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
US10972310B2 (en) 2021-04-06
WO2018090852A1 (en) 2018-05-24
EP3531630A1 (en) 2019-08-28
CN108075981B (en) 2021-04-09
CN108075981A (en) 2018-05-25
US20190273633A1 (en) 2019-09-05
EP3531630A4 (en) 2019-08-28

Similar Documents

Publication Publication Date Title
EP3122004B1 (en) Traffic switching method, device, and system
US9325626B2 (en) Method and apparatus to reduce cumulative effect of dynamic metric advertisement in smart grid/sensor networks
USRE49108E1 (en) Simple topology transparent zoning in network communications
US11411853B2 (en) Link-state advertisement LSA sending method, apparatus, and system
US8797913B2 (en) Reduction of message and computational overhead in networks
EP2548341B1 (en) Alternate down paths for directed acyclic graph (dag) routing
US8447849B2 (en) Negotiated parent joining in directed acyclic graphs (DAGS)
WO2018113586A1 (en) Network area division method, network device and system
US8406153B2 (en) Affecting node association through load partitioning
US20120155463A1 (en) Increased Communication Opportunities with Low-Contact Nodes in a Computer Network
US8667174B2 (en) Method and system for survival of data plane through a total control plane failure
US10972310B2 (en) Link state packet transmission method and routing node
US11095553B2 (en) Method, apparatus and system for controlling routing information advertising
CN116016336B (en) HRPL-based efficient inter-node communication method
CN116938788A (en) Communication method and communication device

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20190523

A4 Supplementary search report drawn up and despatched

Effective date: 20190731

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

RIN1 Information on inventor provided before grant (corrected)

Inventor name: FAN, ZHONGYAN

Inventor name: LIN, DONG

Inventor name: TANG, KIT SANG

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

INTG Intention to grant announced

Effective date: 20200730

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE PATENT HAS BEEN GRANTED

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: AT

Ref legal event code: REF

Ref document number: 1353551

Country of ref document: AT

Kind code of ref document: T

Effective date: 20210115

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602017031196

Country of ref document: DE

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: NL

Ref legal event code: MP

Effective date: 20210106

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK05

Ref document number: 1353551

Country of ref document: AT

Kind code of ref document: T

Effective date: 20210106

REG Reference to a national code

Ref country code: LT

Ref legal event code: MG9D

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210406

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210506

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: HR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210407

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210406

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: LV

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: RS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210506

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602017031196

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SM

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

26N No opposition filed

Effective date: 20211007

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

Ref country code: AL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210506

REG Reference to a national code

Ref country code: DE

Ref legal event code: R119

Ref document number: 602017031196

Country of ref document: DE

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20211107

Ref country code: BE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20211130

REG Reference to a national code

Ref country code: BE

Ref legal event code: MM

Effective date: 20211130

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20211107

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20220601

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20211130

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: NL

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210206

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20220630

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO

Effective date: 20171107

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20220630

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20231006

Year of fee payment: 7

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20210106