CN112468391A - Network fault delivery method and related product - Google Patents

Network fault delivery method and related product Download PDF

Info

Publication number
CN112468391A
CN112468391A CN201910857678.4A CN201910857678A CN112468391A CN 112468391 A CN112468391 A CN 112468391A CN 201910857678 A CN201910857678 A CN 201910857678A CN 112468391 A CN112468391 A CN 112468391A
Authority
CN
China
Prior art keywords
path
network node
bandwidth
fault
address
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.)
Granted
Application number
CN201910857678.4A
Other languages
Chinese (zh)
Other versions
CN112468391B (en
Inventor
路小刚
高红亮
王临春
党娟娜
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
Priority to CN201910857678.4A priority Critical patent/CN112468391B/en
Priority claimed from CN201910857678.4A external-priority patent/CN112468391B/en
Publication of CN112468391A publication Critical patent/CN112468391A/en
Application granted granted Critical
Publication of CN112468391B publication Critical patent/CN112468391B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion

Abstract

The embodiment of the application discloses a network fault transmission method and a related product, wherein the method comprises the following steps: receiving first failure information from a second network node; the first failure information is used for indicating the failure condition of a first path, and the first path is a path from the second network node to a destination network node; analyzing the first fault information to obtain the destination network node and a first address; the first address is an address of an interface through which the second network node communicates with the destination network node; in a routing path from the first network node to the destination network node, when a next hop of the first network node includes the first address, the first network node sends second fault information to a third network node; the second failure information is used for indicating a failure condition of a second path, wherein the second path is a path from the first network node to the destination network node; the network node can be enabled to stop forwarding data through the disconnected path in time.

Description

Network fault delivery method and related product
Technical Field
The present application relates to the field of communications technologies, and in particular, to a network fault delivery method and a related product.
Background
The Router (Router), which is a device for connecting local area networks and wide area networks in the internet, automatically selects and sets a route according to the channel condition, and sends signals in a front-back order by using an optimal path. A router is the hub of the internet. At present, routers are widely applied to various industries, and various products with different grades become the backbone force for realizing the internal connection of various backbone networks, interconnection among backbone networks and interconnection and intercommunication service between the backbone networks and the Internet. The router is the main node device of the internet. The router determines the forwarding of data by routing. The forwarding policy is called routing. As a hub for interconnecting different networks, the router forms the framework of the Internet, and the reliability of the router directly influences the quality of network interconnection.
In recent years, the development speed of the internet has been far beyond the expectations, and the range of applications supported by the internet is also expanding. With the advent of new applications such as vehicle networking, industrial control, telemedicine, etc., these applications place more stringent requirements on network reliability and latency. In practical applications, some failures of routers (i.e., network nodes) in the network, such as the interruption of one or more communication links between two routers, may inevitably occur. When a router downstream of the network fails, the upstream router continues to forward data according to the communication link before the failure occurs before the routing of the whole network converges. This results in the network losing much data during route convergence. That is, a router affected by a failure in the network cannot timely stop forwarding data through a disconnected path until the entire network's routes converge. Therefore, it is necessary to research a network failure delivery scheme in which a router affected by a failure can stop forwarding data through a disconnected path in time before the routing of the entire network converges.
Disclosure of Invention
The embodiment of the application discloses a network fault transmission method and a related product, which can enable a network node to stop forwarding data through a disconnected path in time, and further avoid data loss in a route convergence process.
In a first aspect, an embodiment of the present application provides a network fault delivery method, where the method may include: the first network node receiving first failure information from the second network node; the second network node is a neighbor node of the first network node, the first fault information is used for indicating a fault condition of a first path, and the first path is a path from the second network node to a destination network node; analyzing the first fault information to obtain the destination network node and a first address; the first address is an address of an interface through which the second network node communicates with the destination network node; in a routing path from the first network node to the destination network node, when a next hop of the first network node includes the first address, the first network node sends second fault information to a third network node; the third network node is a neighbor node of the first network node, the second fault information is used for indicating a fault condition of a second path, and the second path is a path from the first network node to the destination network node.
The next hop in the routing path from the first network node to the destination network node includes the first address indicating that at least one path through which the first network node sends data to the destination network node passes through the second network node. The first network node may determine that its second path to the destination network node fails due to a failure of the first path from the second network node to the destination network node and due to at least one path through which the first network node sends data to the destination network node passing the second network node. It can be seen that, after the first network node parses the first failure information, according to a condition that whether a next hop in a routing path from the first network node to the destination network node includes the first address, whether the second path fails can be quickly determined. In case the next hop in the routing path from the first network node to the destination network node comprises the first address, the first network node sends second failure information to a third network node (a neighbor node of the first network node). That is, after determining that the second path has failed according to the first failure information, the first network node sends second failure information to the third network node. As can be seen, the first network node may quickly send second failure information indicating that the second path failed to its neighboring nodes. Optionally, the first network node only sends the second failure information to its neighboring nodes, so that the diffusion range of the second failure information can be effectively reduced. In the embodiment of the application, the failure information is just like a clue, each network node only needs to notify the clue to its neighbor node, and the neighbor node determines whether to continue to transmit the clue. Upon the propagation of the clues, each network node can quickly determine each path that has failed, so that the route converges quickly. It can be understood that, after determining that the second path has a fault according to the first fault information, the first network node sends the second fault information to its neighboring node, and can quickly transmit the fault information, so that other network nodes can timely stop forwarding data through the disconnected path.
In the embodiment of the application, a first network node determines whether a second path fails according to the condition that whether a next hop in a routing path from the first network node to a destination network node comprises a first address, and sends failure information to a neighbor node of the second path after determining that the second path fails; the fault information can be quickly transmitted out, so that each network node can timely stop forwarding data through the disconnected path.
In an optional implementation manner, after the analyzing the first failure information to obtain the destination network node and the first address, the method further includes: and discarding the first fault information when a next hop of the first network node does not include the first address in a routing path from the first network node to the destination network node.
The next hop in the routing path from the first network node to the destination network node does not include the first address, indicating that no path through which the first network node sends data to the destination network node passes through the second network node. That is, the first path fails without affecting the first network node. Since the first path fails without affecting the first network node, each path of the first network node is unchanged. So that the first network node does not have to send failure information to its neighbour nodes. The first network node discards the first failure information, which may reduce the flooding of the first failure information.
In this implementation, by discarding the first failure information, the diffusion of failure information can be effectively reduced.
In an optional implementation manner, the first failure information includes a bandwidth field, and the bandwidth field is used for indicating a remaining bandwidth of the first path. The bandwidth field may be a remaining bandwidth of the first path or parsing the bandwidth field may result in the remaining bandwidth of the first path.
In this implementation, the first network node receives the first failure information including the bandwidth field, and may quickly and accurately obtain the remaining bandwidth of the first path, so as to subsequently adjust the traffic of the data forwarded by the first network node through each path.
In an optional implementation manner, the first failure information further includes an interface field and a prefix field, the interface field is used for indicating the first address, and the prefix field is used for indicating the destination network node.
In this implementation, the first network node can accurately and quickly determine the failed path through the interface field and the prefix field.
In an optional implementation manner, before the sending the second failure information to the third network node, the method further includes: the first network node determining a remaining bandwidth of the second path; generating the second fault information according to the second path and the residual bandwidth of the second path; the second fault information is also used for analyzing to obtain the second bandwidth.
In this implementation manner, the first network node generates second fault information carrying the remaining bandwidth of the second path, so that other network nodes adjust the traffic forwarded through each path according to the remaining bandwidth of the second path, thereby reducing the packet loss rate.
In an optional implementation, the determining, by the first network node, the remaining bandwidth of the second path includes: the first network node analyzes the first fault information to obtain the residual bandwidth of the first path; the first network node takes the residual bandwidth of the first path as the bandwidth of a third path in a routing table; the third path is included in the second path, and a next hop of the third path is the first address; and taking the sum of the bandwidths of the paths included in the second path in the routing table as the residual bandwidth of the second path.
In this implementation, the first network node uses the sum of bandwidths of the paths included in the second path in the routing table as the remaining bandwidth of the second path, and can quickly and accurately obtain the remaining bandwidth of the second path.
In an optional implementation manner, after the analyzing the first failure information to obtain the destination network node and the first address, the method further includes: the first network node inquires a routing path from the first network node to the destination network node in a routing table, and a next hop of the first network node is a path of the first address to obtain a fourth path, wherein the fourth path is included in the second path; according to the residual bandwidth of the first path, updating the state of the fourth path in the routing table and/or updating the bandwidth of the fourth path to the residual bandwidth of the first path; the state of the fourth path is used to determine a bandwidth of the fourth path.
In the implementation mode, the state and/or the residual bandwidth of the fourth path in the routing table can be updated in time according to the first residual bandwidth, and the implementation is simple.
In an optional implementation manner, the updating the state of the fourth path in the routing table according to the remaining bandwidth of the first path includes: updating the state of the fourth path in the routing table to be a fault when the residual bandwidth of the first path is zero; determining a bandwidth reduction condition of the fourth path if the remaining bandwidth of the first path is greater than zero; updating the state of the fourth path in the routing table to the reduced bandwidth condition.
In this implementation, the state of the fourth path may be accurately and quickly updated according to the first remaining bandwidth.
In an optional implementation manner, after the updating the state of the fourth path in the routing table and/or updating the bandwidth of the fourth path to the remaining bandwidth of the first path according to the remaining bandwidth of the first path, the method further includes: the first network node determining a bandwidth of a fifth path in the routing table, the fifth path being included in the second path; and the first network node distributes flow for the fourth path and the fifth path according to the bandwidth of the fourth path and the bandwidth of the fifth path by adopting a non-equal value load sharing UCMP technology.
In the implementation manner, a UCMP technology is adopted to allocate the traffic to the fourth path and the fifth path according to the bandwidth of the fourth path and the bandwidth of the fifth path; the bandwidth utilization rate can be effectively improved, and the congestion of the link can be reduced.
In an optional implementation, the method further includes: the first network node generates third fault information under the condition that the sixth path has a fault; the sixth path is a path from the first network node to a reference network node, and the third fault information is used for analyzing to obtain the remaining bandwidth of the sixth path; the first network node sends the third failure information to the third network node.
In this implementation, the first network node sends third failure information to the third network node when determining that the sixth path fails; the third network node may be notified of the remaining bandwidth of the sixth path in time, so that the third network node stops sending data in the disconnected path in time.
In a second aspect, an embodiment of the present application provides another network fault delivery method, where the method may include: the second network node generates fault information under the condition that the first path has a fault; sending the fault information to a first network node; the failure information is used for indicating a failure condition of the first path, the first network node is a neighbor node of the second network node, and the failure information includes a bandwidth field used for indicating a remaining bandwidth of the first path.
The bandwidth field may be the remaining bandwidth of the first path or the first network node may parse the bandwidth field to obtain the remaining bandwidth of the first path. The first network node analyzes the fault information to obtain the remaining bandwidth of the first path, and the first network node can update the state of each path in the routing table according to the remaining bandwidth of the first path and adjust the flow of at least one path.
In the embodiment of the application, the second network node sends the fault information including the bandwidth field to the first network node, so that the first network node can adjust the state of each path in the routing table according to the residual bandwidth of the first path, and further more reasonably plans the flow of each path.
In an optional implementation manner, the first path is a path from the second network node to a destination network node; the fault information further comprises an interface field for indicating an interface address of the second network node and a prefix field for indicating the destination network node.
In the implementation mode, the path with the fault can be accurately indicated through the interface field and the prefix field, the occupied bytes are few, and the signaling overhead can be reduced.
In an optional implementation manner, before the second network node generates the failure information when the first path fails, the method further includes: the second network node detects that a reference path fails; the reference path is included in the first path; the second network node sets the state of the reference path in a routing table to a failure; and determining that the first path fails when the state of the reference path in the routing table is a failure.
And after the second network node detects that the reference path fails, setting the state of the reference path in the routing table as a failure. The second network node may detect a status of the reference path in the routing table before transmitting data via the reference path, so that the second network node may determine whether to transmit data via the reference path according to the status of the reference path. The reference path is included in the first path. The second network node may detect whether each path included in the first path in the routing table fails before sending data via the first path. If the second network node detects that at least one path included in the first path has a failure, the second network node may stop sending data through the failed path and send failure information indicating that the first path has a failure to its neighboring nodes.
In this implementation manner, the second network node sets the state of the reference path in the routing table as a fault, and can detect the condition that the first path has a fault in time.
In an optional implementation manner, the generating, by the second network node, the failure information when the first path fails includes: the second network node takes the sum of the bandwidths of all paths included in the first path in a routing table as the residual bandwidth of the first path under the condition that the first path fails; and generating the fault information according to the first path and the residual bandwidth of the first path.
In the implementation manner, the remaining bandwidth of the first path can be quickly and accurately obtained, and then the fault information which can indicate the remaining bandwidth of the first path is generated.
In a third aspect, an embodiment of the present application provides a first network node, where the first network node may include: a receiving unit configured to receive first failure information from a second network node; the second network node is a neighbor node of the first network node, the first fault information is used for indicating a fault condition of a first path, and the first path is a path from the second network node to a destination network node; the analysis unit is used for analyzing the first fault information to obtain the destination network node and a first address; the first address is an address of an interface through which the second network node communicates with the destination network node; a sending unit, configured to send second failure information to a third network node when a next hop of the first network node includes the first address in a routing path from the first network node to the destination network node; the third network node is a neighbor node of the first network node, the second fault information is used for indicating a fault condition of a second path, and the second path is a path from the first network node to the destination network node.
In the embodiment of the application, a first network node determines whether a second path fails according to the condition that whether a next hop in a routing path from the first network node to a destination network node comprises a first address, and sends failure information to a neighbor node of the second path after determining that the second path fails; the fault information can be quickly transmitted out, so that each network node can timely stop forwarding data through the disconnected path.
In an optional implementation manner, the network node further includes: a discarding unit, configured to discard the first failure information when a next hop of the first network node does not include the first address in a routing path from the first network node to the destination network node.
In an optional implementation manner, the first failure information includes a bandwidth field, and the bandwidth field is used for indicating a remaining bandwidth of the first path.
In an optional implementation manner, the first failure information further includes an interface field and a prefix field, the interface field is used for indicating the first address, and the prefix field is used for indicating the destination network node.
In an optional implementation manner, the network node further includes: a determining unit, configured to determine a remaining bandwidth of the second path; a first generating unit, configured to generate the second fault information according to the second path and a remaining bandwidth of the second path; the second fault information is also used for analyzing to obtain the second bandwidth.
In an optional implementation manner, the analyzing unit is further configured to analyze the first fault information to obtain a remaining bandwidth of the first path; the determining unit is specifically configured to use the remaining bandwidth of the first path as a bandwidth of a third path in a routing table; taking the sum of the bandwidths of the paths included in the second path in the routing table as the remaining bandwidth of the second path; the third path is included in the second path, and a next hop of the third path is the first address.
In an optional implementation manner, the network node further includes: a query unit, configured to query a routing path from the first network node to the destination network node in a routing table, where a next hop of the first network node is a path of the first address to obtain a fourth path; the fourth path is included in the second path; an updating unit, configured to update a state of the fourth path in the routing table and/or update a bandwidth of the fourth path to a remaining bandwidth of the first path according to the remaining bandwidth of the first path; the state of the fourth path is used to determine a bandwidth of the fourth path.
In an optional implementation manner, the updating unit is specifically configured to update the state of the fourth path in the routing table to be a failure when the remaining bandwidth of the first path is zero; determining a bandwidth reduction condition of the fourth path if the remaining bandwidth of the first path is greater than zero; updating the state of the fourth path in the routing table to the reduced bandwidth condition.
In an optional implementation manner, the network node further includes: a traffic allocation unit, configured to determine a bandwidth of a fifth path in the routing table, where the fifth path is included in the second path; and distributing flow for the fourth path and the fifth path according to the bandwidth of the fourth path and the bandwidth of the fifth path by adopting a non-equal value load sharing UCMP technology.
In an optional implementation manner, the network node further includes: a second generating unit configured to generate third failure information in a case where the sixth path fails; the sixth path is a path from the first network node to a reference network node, and the third fault information is used for analyzing to obtain the remaining bandwidth of the sixth path; the sending unit is further configured to send the third failure information to the third network node.
In a fourth aspect, an embodiment of the present application provides a second network node, where the second network node may include: a generation unit configured to generate failure information in a case where the first path has failed; a transmitting unit, configured to transmit the fault information to a first network node; the fault information is used for indicating the fault condition of a first path, and the first network node is a neighbor node of the second network node; the failure information includes a bandwidth field to indicate a remaining bandwidth of the first path.
In the embodiment of the application, the second network node sends the fault information including the bandwidth field to the first network node, so that the first network node can adjust the state of each path in the routing table according to the residual bandwidth of the first path, and further more reasonably plans the flow of each path.
In an optional implementation manner, the first path is a path from the second network node to a destination network node; the fault information further comprises an interface field for indicating an interface address of the second network node and a prefix field for indicating the destination network node.
In an optional implementation manner, the network node further includes: a detection unit, configured to detect that a reference path fails, where the reference path is included in the first path; a setting unit configured to set a state of the reference path in a routing table to a failure; a determining unit, configured to determine that the first path fails when the state of the reference path in the routing table is a failure.
In an optional implementation manner, the generating unit is specifically configured to, when the first path fails, use a sum of bandwidths of paths included in the first path in a routing table as a remaining bandwidth of the first path; and generating the fault information according to the first path and the residual bandwidth of the first path.
In a fifth aspect, an embodiment of the present application provides a network device, where the network device may include: a memory for storing a program; a processor for executing the program stored in the memory, the processor being configured to perform the methods of the first to second aspects and alternative implementations described above when the program is executed.
In a sixth aspect, the present application provides a computer-readable storage medium, which stores instructions that, when executed on a computer, cause the computer to perform the method of the above aspects.
In a seventh aspect, the present application provides a computer program product containing instructions, which when run on a computer, causes the computer to perform the method of the above aspects.
Drawings
Fig. 1 is a schematic diagram of a network including a plurality of network nodes according to an embodiment of the present application;
fig. 2 is a schematic diagram of another network including a plurality of network nodes according to an embodiment of the present application;
fig. 3 is a schematic diagram of another network including a plurality of network nodes according to an embodiment of the present application;
fig. 4 is a schematic diagram of a network architecture according to an embodiment of the present application;
fig. 5 is a flowchart of a network fault delivery method according to an embodiment of the present application;
fig. 6A to 6C are schematic diagrams of first failure information provided in the embodiment of the present application;
fig. 7 is a schematic diagram of a diffusion process of fault information according to an embodiment of the present application;
fig. 8 is a schematic diagram illustrating another diffusion process of fault information according to an embodiment of the present disclosure;
fig. 9 is a flowchart of another network fault delivery method provided in the embodiment of the present application;
fig. 10A is a schematic diagram illustrating a fault delivery process in a fabric network according to an embodiment of the present application;
fig. 10B is a schematic diagram of a routing table of a network node in a fabric network according to an embodiment of the present application;
fig. 11 is a schematic diagram illustrating a failure delivery process in another fabric network according to an embodiment of the present application;
fig. 12 is a schematic structural diagram of a first network node according to an embodiment of the present application;
fig. 13 is a schematic structural diagram of a second network node according to an embodiment of the present application;
fig. 14A is a schematic application scenario diagram of a network fault delivery method according to an embodiment of the present application;
fig. 14B is a schematic structural diagram of a network node according to an embodiment of the present application;
fig. 15 is a schematic application scenario diagram of another network fault delivery method according to an embodiment of the present application;
fig. 16 is a schematic structural diagram of another network node according to an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly described below with reference to the drawings in the embodiments of the present application.
The terms "first," "second," and "third," etc. in the description and claims of the present application and the above-described drawings are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. Furthermore, the terms "comprises" and "comprising," as well as any variations thereof, are intended to cover a non-exclusive inclusion, such as a list of steps or elements. A method, system, article, or apparatus is not necessarily limited to those steps or elements explicitly listed, but may include other steps or elements not explicitly listed or inherent to such process, system, article, or apparatus. "and/or" is used to indicate the selection of one or both between two objects to which it is connected. For example "A and/or B" means A, B or A + B.
Communication networks (e.g., the internet, autonomous networks, etc.) made up of a plurality of network nodes typically need to meet the following reliability requirements: (1) fast (millisecond or microsecond) sensing faults; (2) bandwidth transfer, i.e. the remaining bandwidth of the path that is about to fail is transferred to other network nodes in the network. In this application, the network node may be a router, a switch, or other network devices with a routing function. The necessity to satisfy these two reliabilities will be described below with reference to fig. 1 and 2, respectively.
Fig. 1 is a schematic diagram of a network including a plurality of network nodes according to an embodiment of the present application. In fig. 1, a01, C11, C21, and a71 each represent a network node, and a01 may transmit data to a71 through C11 and C21, respectively. It can be seen that in fig. 1, a01 has two paths for sending data to a71, and the two paths form load sharing. In the network of fig. 1, a01 sends data to a71 through C11, and a01 stops sending data to a71 through C11 only after sensing a disruption in the path to a71 through C11. That is, a01 would continue to send data to a71 over the path before a01 senses a disruption in the path that sent the data to a71 over C11, which would result in a loss of a large amount of data. Therefore, the network node needs to sense the fault through express delivery, so that the network node can stop sending data through the interrupted path in time, and further data loss is avoided or reduced. It will be appreciated that the faster the network node senses a failure, the faster it can stop sending data over the interrupted path. Therefore, in many scenarios, it is necessary for the network node to quickly sense the failure, especially in the scenario where the packet loss rate is high.
Fig. 2 is a schematic diagram of another network including a plurality of network nodes according to an embodiment of the present application. In fig. 2, a01, C11, C21, and a71 each represent a network node, a01 may transmit data to a71 through C11 and C21, C11 may forward data to a71 through a D path and an E path, respectively, C21 may forward data to a71 through an F path and a G path, respectively, and bandwidths of the D path, the E path, the F path, and the G path are all 10G. As shown in fig. 2, the ratio of the traffic of a01 sending data to a71 through C11 to the traffic of a71 through C21 is 1:1, after the E path is broken, the bandwidth between C11 and a71 is reduced to 10G, and the bandwidth between C21 and a71 is still 20G. If the bandwidth between C11 and a71 is reduced to 10G, the ratio of the traffic of a01 sending data to a71 through C11 to the traffic of a71 through C21 remains unchanged, likely resulting in continuous congestion on the path from C11 to a 71. Since the traffic of a01 sending data to a71 via C11 remains unchanged after the bandwidth between C11 and a71 decreases, the bandwidth between C11 and a71 is not sufficient to support the transmission of the traffic, which naturally results in continuous congestion of the path between C11 and a 71. Congestion refers to the phenomenon that a certain part of a communication subnet is too many packets, so that the part of the communication subnet is too late for processing, and the performance of the part and even the whole network is reduced, and in a serious case, the network communication service is stopped, namely, a deadlock phenomenon occurs. This phenomenon is the same as the traffic congestion often seen in the road network, when the number of vehicles in the road network increases in holiday days, the traffic flows of various directions interfere with each other, so that the time for each vehicle to reach the destination is relatively increased (i.e. the delay is increased), and even sometimes the vehicle cannot be driven due to congestion on a certain road (i.e. local deadlock occurs; the key to solve the persistent congestion problem is to transfer the remaining bandwidth of the failed path to other network nodes in the network, i.e. bandwidth transfer; for example, after a01 in fig. 2 receives fault information containing the remaining bandwidth between C11 and a71, a01 adjusts the ratio of the traffic of data transmitted to a71 through C11 to the traffic of data transmitted to a71 through C21 to 1:2 according to the bandwidth between C11 and a71 (10G) and the bandwidth between C21 and a71 (20G), so that the persistent congestion problem can be effectively solved or alleviated, the problem of network congestion is also becoming more and more severe and one of the main causes of congestion is insufficient bandwidth capacity. It can be understood that if each network node in the network can timely and accurately determine the bandwidth of each path, each network node can timely adjust the flow of data sent through each path, thereby avoiding congestion. Therefore, it is necessary to realize bandwidth delivery to solve the persistent congestion problem.
Several schemes for sensing failures and achieving route convergence are described below.
Route convergence refers to a process that after the topology structure of the network changes, the routing table is reestablished, sent, learned until stable, and all relevant routers in the network are informed of the change. I.e., the behavior of discovering alternate routes by recalculating routes due to changes in network topology. All routers (i.e., network nodes) in the routing domain may agree on the current network structure and route forwarding through route convergence. The convergence time refers to a state transition process from the change of the topology of the network to the state transition process in which the routing tables in all the routing devices in the network are kept consistent again.
The first scheme is to implement route convergence by a routing protocol (e.g., a border network protocol), and the route convergence speed is slow, and the failure sensing speed is also slow (in seconds). In this scheme, each network node in the network stops sending data through the disconnected path after the route of the entire network converges. It will be appreciated that this scheme does not meet the requirements of sensing faults quickly (in milliseconds or microseconds).
The second scheme is to establish an end-to-end label path, and when detecting that the end-to-end label path for transmitting some data fails, switch the data to the end-to-end label path without failure for transmission. Here an end refers to a network node. This scheme is described below in conjunction with fig. 3. Fig. 3 is a schematic diagram of another network including a plurality of network nodes according to an embodiment of the present application. In fig. 3, a01, C11, C21, and a71 each represent a network node, a01 may transmit data to a71 through C11 and C21, respectively, a path through which a01 transmits data to a71 through C11 is an end-to-end label path P, and a path through which a01 transmits data to a71 through C21 is an end-to-end label path Q. Referring to fig. 3, a01 sends data to a71 through an end-to-end label path P, when a communication link (also called a path) between C11 and a71 is interrupted, a01 detects that the end-to-end label path P fails, and a01 switches from the end-to-end label path P to an end-to-end label path Q, that is, stops sending data through the end-to-end label path P and sends data through the end-to-end label path Q. The drawback of this scheme is that the network node needs to have label path capability and needs to configure a Bidirectional Forwarding Detection (BFD) protocol. The BDF protocol is a network protocol for detecting failures between two forwarding points. The BDF is a bidirectional forwarding detection mechanism, can provide millisecond detection and can realize rapid detection of a link.
The above schemes for sensing faults and achieving route convergence all have one or more of the disadvantages of slow convergence speed, wide fault diffusion range, detour, and the need of having label path capability. The implementation of these schemes will not be described in detail here. In addition, none of the above-mentioned failure-aware and route convergence-aware schemes currently delivers the remaining bandwidth of the failed path. Therefore, there is a need to research a new failure-aware and route convergence-enabled scheme, i.e., a network failure delivery scheme, that does not suffer from the above-mentioned disadvantages. In order to solve the problem that a network node in a network senses a fault quickly (on the millisecond level or the microsecond level), the embodiment of the application provides a network fault delivery scheme. The network fault transmission scheme overcomes the defects of low convergence speed, detour, need of having label path capability and the like, can spread the fault to all networks affected by the fault in a small range, and can effectively avoid unnecessary route convergence of other network nodes. The implementation of the network failure delivery scheme is described in detail later. In order to solve the problem of bandwidth transfer, the embodiments of the present application further provide a scheme for passing through the residual bandwidth of the failure information transfer path. The network failure delivery scheme provided by the embodiment of the present application is described below.
Fig. 4 is a schematic diagram of a network architecture according to an embodiment of the present application. It should be understood that the network architecture in fig. 4 is only an example, and the method in the embodiment of the present application may be applied to various networks such as a fabric network. fabric network refers to a regulated networking of networks. As shown in fig. 4, a01 represents a first network node, C11 represents a second network node, T00 represents a third network node, T70 is a destination network node (a node that receives data), T00 is a source network node (i.e., a node that transmits data), and C21, C12, C22, a02, a71, and a72 are all network nodes. In fig. 4, T00 sends data to T70, network nodes except T00 and T70 are all used for forwarding data, a01 receives first failure information from C11, and a01 sends second failure information to both T00 and C21. In the network, if a communication link is provided between two network nodes, the two network nodes are mutually neighbor nodes. For example, in fig. 4, the neighbor node of C11 includes a01 and a71, the neighbor node of a01 includes T00, C11, and C21, the neighbor node of T00 includes a01 and a02, and the neighbor node of T70 includes a71 and a 72. The method of the first network node a01 in fig. 4 for communicating fault information is described below. Fig. 5 is a flowchart of a network fault delivery method according to an embodiment of the present application. As shown in fig. 5, the method may include:
501. the first network node receives first failure information from the second network node.
The first network node may be a01 in fig. 4, and the second network node may be C11 in fig. 4. The second network node is a neighbor node of the first network node, the first failure information is used for indicating a failure condition of a first path, and the first path is a path from the second network node to a destination network node. The destination network node may be T70 in fig. 4. The first path may be a path from C11 to T70.
In an alternative implementation, the first failure information may include: a bandwidth field, a prefix field, and an interface field; the bandwidth field is for indicating a remaining bandwidth of the first path, the interface field is for indicating a first address, and the prefix field is for indicating the destination network node. The first address is an address of an interface through which the second network node communicates with the destination network node. Fig. 6A is a schematic diagram of first failure information provided in an embodiment of the present application. As shown in fig. 6A, the first failure information includes a bandwidth field 601, an interface field 602, and a prefix field 603. Fig. 6B is a schematic diagram of another first failure information provided in the embodiment of the present application. Fig. 6B is a specific example of the first failure information in fig. 6A, where the information in the bandwidth field 601 is the remaining bandwidth of the first path, the information in the interface field 602 is the first address, and the information in the prefix field 603 is an interface address, i.e., a destination address, of the destination network node. In FIG. 6B, 20.1.1.2/3 is the first address, 10.1.1.0/24 is the destination address, and a bandwidth field of 0 indicates that the remaining bandwidth of the first path is 0. In some embodiments, the first failure information may also carry a sequence number. When the first network node receives a plurality of same messages, the message with the largest serial number is taken as the standard. The same message refers to the carried fault information with the same interface field and prefix field, that is, the fault information indicating the fault condition of the same path. In practical application, the second network node may send two or more pieces of failure information to the first network node in sequence, interface fields and prefix fields of the pieces of failure information are the same, and a sequence number carried by the failure information sent later is greater than a sequence number carried by the failure information sent earlier. It should be appreciated that if the second network node sends the failure information to the first network node only once, the first network node cannot obtain the failure information when the first network node fails to receive the failure information. The second network node sends the fault information of the same path to the first network node twice or more than twice, so that the residual bandwidth of the path can be updated in time, and the first network node can be ensured to receive the fault information. Optionally, after sending the failure information of the first path to the first network node, the second network node may periodically (for example, every 3 seconds) detect the remaining bandwidth of the first path, and send failure information indicating a failure condition of the first path to the first network node. Fig. 6C is a schematic diagram of still another first failure information provided in the embodiment of the present application. As shown in fig. 6C, the first failure information may also carry a sequence number 604.
502. And analyzing the first fault information to obtain the destination network node and the first address.
The first address is an address of an interface through which the second network node communicates with the destination network node. Optionally, the first fault information includes an interface field and a prefix field, the first network node may obtain the first address by parsing the interface field, and may obtain the destination network node by parsing the prefix field. The information of the prefix field may be an interface address of the destination network node, the first network node may store a correspondence between the destination network node and the interface address of the destination network node, and the first network node may obtain the destination network node according to the correspondence and the interface address. The first network node may store a correspondence between the second network node and the first address, and the first network node may determine the second network node according to the correspondence and the first address.
503. And when the next hop of the first network node comprises the first address in the routing path from the first network node to the destination network node, the first network node sends second fault information to the third network node.
The third network node, which may be a neighbor node of the first network node, may be T00 in fig. 4. The second failure information is used to indicate a failure condition of a second path, which is a path from the first network node to the destination network node. The format of the second failure information may be the same as the format of the first failure information. Optionally, the second failure information includes a bandwidth field, an interface field, and a prefix field. The bandwidth field in the second failure information is used for indicating the remaining bandwidth of the second path, the prefix field in the second failure information is used for indicating the destination network node, and the interface field in the second failure information is used for indicating an interface address of the first network node. In some embodiments, the second failure information further includes a sequence number. It should be understood that each network node in the network may send the same format of fault information, and since the information carried by the first fault information has been described in detail above, the second fault information will not be described in detail here. A next hop in a routing path from the first network node to the destination network node includes the first address indicating that at least one path through which the first network node sends or forwards data to the destination network node passes through the second network node. The first network node may determine that its second path to the destination network node fails due to a failure of the first path from the second network node to the destination network node and due to at least one path through which the first network node sends data to the destination network node passing the second network node. Therefore, the first network node needs to send the second failure information to the third network node. The routing table of the first network node may store routing paths for the first network node to send or forward data to one or more network nodes. Table 1 is an example of a routing table of a first network node provided in an embodiment of the present application.
TABLE 1
Destination address Next hop Status of state ……
10.1.1.0/24 20.1.1.2/32 Fault of ……
10.1.1.0/24 30.1.1.2/32 Is normal ……
…… …… …… ……
10.1.1.2/32 20.1.1.2/32 Fault of
In table 1, the destination addresses indicate interface addresses of the destination network nodes, that is, each destination address indicates a destination network node, and each next hop is an interface address of a network node. In table 1, the path corresponding to any row is a path from the first network node to the destination network node indicated by the destination address of the row, and the state of the row indicates a failure condition of the path corresponding to the row. In practical application, after the first network node analyzes the first fault information to obtain the destination network node and the first address, whether a next hop of the destination address corresponding to the destination network node in a routing table of the first network node includes the first address or not can be inquired; if so, sending second fault information to a third network node; if not, discarding the first fault information. Referring to fig. 4, 10.1.1.0/24 is an interface address of T70, 20.1.1.2/32 is an interface address of C11, 30.1.1.2/32 is an interface address of C21, and next hops for a01 (i.e., a first network node) to forward data to T70 (i.e., a destination network node) are C11 and C21. For example, the destination network node obtained by the first network node analyzing the first failure information is T70 in fig. 4, and the first network node may query whether the next hop of the destination address 10.1.1.0/24 in the routing table includes the first address; in case the next hop of the destination address 10.1.1.0/24 comprises the first address, second failure information is sent to the third network node.
In the embodiment of the application, a first network node determines whether a second path fails according to the condition that whether the next hop of the first network node comprises a first address in a routing path from the first network node to a destination network node, and sends failure information to a neighbor node of the second path after determining that the second path fails; the fault information can be quickly transmitted out, so that each network node can timely stop forwarding data through the disconnected path.
The purpose of transmitting fault information by network nodes in the network is to enable the network nodes affected by the fault to update the state of each path in the routing table in time, further stop transmitting data through the disconnected path in time and distribute flow for each path more reasonably. The following describes how the state of each path in the routing table is updated, taking the first network node as an example.
The first network node updates the status and/or remaining bandwidth of each path in its routing table according to the first failure information before performing step 502 as follows: the first network node inquires the routing path from the first network node to the destination network node in the routing table, and the next hop of the first network node is the path of the first address to obtain a fourth path; and updating the state of the fourth path in the routing table and/or updating the bandwidth of the fourth path to the residual bandwidth of the first path according to the residual bandwidth of the first path. The fourth path is included in the second path; the state of the fourth path is used to determine the bandwidth of the fourth path. The fourth path may be the third path described above.
In some embodiments, the first network node may update the bandwidth of the fourth path in the routing table to be the remaining bandwidth of the first path according to the remaining bandwidth of the first path. The routing table stores the bandwidth of each path. Table 2 is an example of another routing table provided in the embodiment of the present application.
TABLE 2
Destination address Next hop Status of state ……
10.1.1.0/24 20.1.1.2/32 0 ……
10.1.1.0/24 30.1.1.2/32 100G ……
…… …… …… ……
10.1.1.2/32 20.1.1.2/32 50G
The state column in table 2 may store the bandwidth of each path. The first network node may update the bandwidth of each path according to the received fault information or the detected fault. For example, before the first network node receives the first fault information, the bandwidth of the fourth path in the routing table is 100G, and the remaining bandwidth of the first path obtained by the first network node analyzing the first fault information is 0, so that the bandwidth of the fourth path in the routing table is updated to 0 by the first network node. Also for example, when a first network node detects a path break, the first network node updates the state of the path in its routing table.
In some embodiments, the first network node may update the status of the fourth path in the routing table to be a failure if the remaining bandwidth of the first path is zero; and under the condition that the residual bandwidth of the first path is larger than zero, determining the bandwidth reduction condition of the fourth path, and updating the state of the fourth path in the routing table to be the bandwidth reduction condition. The state of each path in the routing table can be divided into three types, namely normal, fault and bandwidth reduction. If the state of a certain path in the routing table is normal, indicating that the bandwidth of the path is the bandwidth of the path stored in the routing table; if the state of the path is a fault, the bandwidth of the path is 0; if the state of the path is a bandwidth reduction condition, indicating that the path is failed and the remaining bandwidth is not 0, the first network node may determine the bandwidth of the path according to the bandwidth reduction condition and the bandwidth of the path already stored in the routing table. The bandwidth reduction condition may reflect a bandwidth reduction condition for the path, such as a bandwidth reduction of half, a bandwidth reduction of one third, and so on. For example, if the state of a certain path in the routing table is bandwidth halved, and the bandwidth of the path stored in the routing table is 100G, the current remaining bandwidth of the path is 50G. Table 3 is an example of another routing table provided in the embodiment of the present application.
TABLE 3
Destination address Next hop Status of state ……
10.1.1.0/24 20.1.1.2/32 Fault of ……
10.1.1.0/24 30.1.1.2/32 Is normal ……
…… …… …… ……
10.1.1.2/32 20.1.1.2/32 Bandwidth halving
In table 3, the state column may store the state of each path. In practical applications, each network node may update the state of each path in its respective routing table according to the received fault information in a variety of ways, which is not limited in the embodiment of the present application.
One advantage of the network fault delivery method of the embodiment of the present application compared with other network fault delivery schemes is that the remaining bandwidth of the path can be delivered, so that each network node can allocate traffic to each path according to the remaining bandwidth of each path. The manner in which traffic is allocated to each path based on the remaining bandwidth of the path is described below.
The first network node may perform the following operations after updating the state of the fourth path in the routing table and/or updating the bandwidth of the fourth path to the remaining bandwidth of the first path according to the remaining bandwidth of the first path:
the first network node determines the bandwidth of a fifth path in the routing table; the first network node allocates traffic to the fourth Path and the fifth Path according to the bandwidth of the fourth Path and the bandwidth of the fifth Path by using a non-equal Cost Multiple Path (UCMP) technique.
The fifth path and the fourth path are both included in the second path. The first network node may adjust the ratio of the traffic allocated to the fourth path and the fifth path to the ratio of the bandwidth of the current fourth path and the bandwidth of the current fifth path according to the bandwidth of the fourth path and the bandwidth of the fifth path by using the UCMP technique. UCMP refers to that if there are multiple equivalent physical links (i.e. paths) with different bandwidths to reach a destination, the traffic is proportionally shared on each physical link according to the bandwidth. Therefore, all links can share the flow with different proportions according to different bandwidths, and the load sharing is more reasonable. Assuming that the ratio of the bandwidth of the current fourth path to the bandwidth of the fifth path is M: n, the first network node adjusts the ratio of the traffic allocated to the fourth path and the fifth path to M: n; m and N are both real numbers greater than 0. For example, T00 in fig. 4 is a first network node, the second path is a path between T00 to T70 in fig. 4, the fourth path is a path through a01 to T70 for T00, and the fifth path is a path through a02 to T70 for T00; before the paths from C11 to T70 are not disconnected, the bandwidths of the fourth path and the fifth path in the routing table of T00 are both 200G, and the ratio of allocated traffic of the fourth path to the fifth path is 1: 1; after the path from C11 to T70 is disconnected, T00 updates the bandwidth of the fourth path in its routing table to 100G, and adjusts the ratio of the allocated traffic of the fourth path and the fifth path to 1: 2.
In practical application, each network node in the network can analyze the fault information to obtain the residual bandwidth of the failed path, and adjust the proportion of the flow allocated to each path according to the residual bandwidth of each path, so that the bandwidth utilization rate can be effectively improved, and the congestion of the link can be reduced.
In an alternative implementation, step 503 in fig. 5 may be replaced by the following operations: and when the next hop of the first network node does not comprise the first address in the routing path from the first network node to the destination network node, discarding the first fault information.
The next hop in the routing path from the first network node to the destination network node does not include the first address, indicating that no path through which the first network node sends data to the destination network node passes through the second network node. That is, the first path fails without affecting the first network node. Since the first path fails without affecting the first network node, each path of the first network node is unchanged. So that the first network node does not have to send failure information to its neighbour nodes. The first network node discards the first failure information, which may reduce the flooding of the first failure information. In the embodiment of the present application, the fault information is all kept to be propagated on the routing path, and the fault information that is not on the routing path needs to be discarded (also referred to as pruning). When fault information is diffused, a flooding method (flooding) -pruning-flooding-pruning method is used, and the fault information is pushed forward in a first-level and first-level manner. In this application, flooding means that a failure packet sent from any network node is sent to all neighboring nodes (except the node sending the failure information) of the network node. For example, a01 in fig. 4 receives the first fault information from C11, and a01 generates the second fault information according to the first fault information and sends the second fault information to T00 and C21. The failure information is just like a clue, and each network node only needs to notify the clue (i.e. the failure information) to the neighbor nodes, and the neighbor nodes determine whether to continue to transmit the clue. According to clues, the failure information is transferred to all network nodes affected by the failure.
The pruning of the fault information during the diffusion process is described below with the aid of fig. 7. Fig. 7 is a schematic diagram of a diffusion process of fault information according to an embodiment of the present application. In fig. 7, A, B, C, D, E, F each represents a network node, and the connecting line between two points represents the path between the network nodes corresponding to the two points. For example, when a in fig. 7 detects a failure, the delivery and pruning of the failure message may include the following steps: (1) and A sends fault information 1 to each neighbor node (B and C), namely, flooding fault information 1 to the neighbor node. (2) C, after receiving the fault information 1 from A, inquiring whether the next hop in the routing table of the C includes A; if yes, failure information 2 is sent to B, D and E. (3) B, after receiving the fault information 1 from A, inquiring whether the next hop in the routing table of the B comprises A; if not, discarding the fault information 1; b, after receiving the fault information 2 from C, inquiring whether the next hop in the routing table of the B comprises C; if so, failure information 3 is sent to a and D.
The diffusion path and the influence range of the fault information are described below with reference to fig. 8. Fig. 8 is a schematic diagram of another diffusion process of fault information according to an embodiment of the present application. The network in fig. 8 is an example of a fabric network, each circle represents a network node, a path between C11 and a71 is broken, a diffusion path of fault information is shown as an arrow in fig. 8, a01, T00, T01, and T02 affected by the broken path between C11 and a71 all receive corresponding fault information, fault information transmitted in other paths is discarded in time, a01 determines that a path for forwarding data through C11 is faulty according to the received fault information from C11, and T00, T01, and T02 all determine that bandwidths of the respective paths are reduced.
It can be understood that the fault information can be diffused to all network nodes affected by the fault within a minimum range by diffusing the fault information to the neighbor nodes and determining whether to continue to transmit the fault information by each neighbor node.
In this implementation, the first network node discards the first failure information when the next hop in the routing path from the first network node to the destination network node does not include the first address, so that the diffusion of the failure information can be effectively reduced.
The foregoing embodiment does not describe in detail how to generate the second failure information, and the manner of acquiring the generated second failure information is described below.
The first network node, before sending the second failure information to the third network node, may perform the following operations to generate the second failure information: determining a remaining bandwidth of the second path; and generating the second fault information according to the second path and the residual bandwidth of the second path.
The second failure information is also used for analyzing to obtain the second bandwidth. Optionally, the second failure information includes a bandwidth field, an interface field, and a prefix field. A bandwidth field in the second failure information is used for indicating the remaining bandwidth of the second path, a prefix field in the second failure information is used for indicating the destination network node, and an interface field in the second failure information is used for indicating an address of an interface where the first network node communicates with the destination network node. Optionally, the first network node determines the remaining bandwidth of the second path in the following manner: analyzing the first fault information to obtain the residual bandwidth of the first path; taking the residual bandwidth of the first path as the bandwidth of a third path in a routing table; the third path is included in the second path, and a next hop of the third path is the first address; and taking the sum of the bandwidths of the paths included in the second path in the routing table as the residual bandwidth of the second path. The second path may refer to all paths between the first network node to the destination network node. The routing table may have stored therein the bandwidth of each path included in the second path. Referring to table 1, the state column may include the bandwidth of each path.
For example, the interface address of the destination network node is 10.1.1.0/24, the second path is each path corresponding to the destination address 10.1.1.0/24 in table 1, and the remaining bandwidth of the second path is the sum of the bandwidths of each path corresponding to the destination address 10.1.1.0/24. As another example, a01 and T70 in fig. 4 represent the first network node and the destination network node, respectively, and for a01 in fig. 4, the second path from a01 to T70 includes two paths, which are a01-C11-a71-T70 and a01-C21-a71-T70, respectively, and the remaining bandwidth of the second path is the sum of the bandwidths of the two paths. Assuming that the bandwidth between a01 and C11 is 100G and the bandwidth between a01 and C21 is 100G, the remaining bandwidth of the second path is 200G. Assuming that the bandwidth between a01 and C11 is 100G and the bandwidth between a01 and C21 is 100G before the path between C11 and a71 is not broken, the remaining bandwidth of the second path after the path between C11 and a71 is broken is 100G. As another example, a01, C11, and T70 in fig. 4 sequentially represent a first network node, a second network node, and a destination network node, the first path is a path from C11 to T70, and the third path is a01-C11-a 71-T70; when the first path does not have a fault, the bandwidth of the first path is the bandwidth of the third path; after the first path fails, the remaining bandwidth of the first path is the bandwidth of the third path. It is understood that the first network node may update the state and/or remaining bandwidth of each path in its routing table according to the first failure information, and then send the failure information of the failed path to its neighboring nodes.
In this implementation, the first network node uses the sum of bandwidths of the paths included in the second path in the routing table as the remaining bandwidth of the second path, and can quickly and accurately obtain the remaining bandwidth of the second path.
Network nodes in a network can be divided into two types, the first type is a network node that detects a fault and transmits fault information, and the second type is a network node that receives fault information and transmits fault information. In the foregoing embodiment, the first network node is a second network node, and the second network node is a first network node. The foregoing embodiments describe operations performed by the first network node during the delivery of the network fault, i.e., operations performed by the second network node. The following is an example of the second network node, and describes the operation that the first network node can implement in the network fault transfer process.
Fig. 9 is another network fault delivery method according to an embodiment of the present disclosure. As shown in fig. 9, the method may include:
901. and the second network node generates fault information under the condition that the first path has a fault.
The failure information is used to indicate a failure condition of the first path. The second network node may be the second network node in fig. 5. The way for detecting a failure of a certain path (e.g. a first path) in the network by the second network node is a common technical means in the art, and the implementation way for detecting a failure of the first path by the second network node is not described in detail herein.
In some embodiments, the second network node, before performing step 901, may perform the following operations: the second network node detecting a failure of a reference path, the reference path being included in the first path; the second network node setting the state of the reference path in the routing table to failure; and determining that the first path fails when the state of the reference path in the routing table is a failure. For example, the second network node is C11 in fig. 4, and after C11 detects that the reference path (i.e., the path between C11 and a 71) is broken, C11 sets the state of the reference path in its routing table to failure. In practical application, before a network node forwards or sends data through a certain path in its routing table, the state of the path needs to be queried; if the state of the path is a fault, data is not forwarded or sent through the path; and if the state of the path is a non-fault state, forwarding or sending the data through the path. The bandwidth available to the first path is reduced due to a failure of any of the paths included in the first path. Therefore, when at least one path included in the first path fails, the first path fails. After detecting that a certain path has a fault, the second network node can update the state of the path in the routing table of the second network node in time, so that the state of each path can be quickly determined according to the updated routing table, and corresponding fault information can be transmitted.
In some embodiments, the second network node implements step 901 in the following manner: the second network node takes the sum of the bandwidths of all paths included in the first path in the routing table as the residual bandwidth of the first path under the condition that the first path fails; and generating the fault information according to the first path and the residual bandwidth of the first path. In this way, the second network node can quickly and accurately obtain the remaining bandwidth of the first path, and then generate fault information that can indicate the remaining bandwidth of the first path.
902. Failure information is sent to the first network node.
The first network node is a neighbor node of the second network node. The failure information may be the first failure information described above. The fault information includes a bandwidth field indicating a remaining bandwidth of the first path. The first path may be a path from the second network node to a destination network node. The fault information also includes an interface field to indicate an address of an interface through which the second network node communicates with a destination network node, and a prefix field to indicate the destination network node. Since the foregoing embodiments have detailed the content included in the first failure information, the description will not be repeated here.
In the embodiment of the application, the second network node sends the fault information including the bandwidth field to the first network node, so that the first network node can adjust the state of each path in the routing table according to the residual bandwidth of the first path, and further more reasonably plans the flow of each path.
The application of the network fault delivery method provided by the embodiment of the present application in an actual scenario is further described below by two more complete embodiments.
First, a specific example of the application of the network fault delivery method provided by the present application in the fabric network is described.
Fig. 10A is a schematic diagram of a fault delivery process in a fabric network according to an embodiment of the present disclosure. In fig. 10A, the fabric network includes 10 network nodes, each circle represents a network node, C11 corresponds to the second network node, a01 corresponds to the first network node, T00 corresponds to the third network node, T70 corresponds to the destination network node, 1001 is the first failure information, 1002 is the second failure information, 10.1.1.0/24 is an interface address of T70, 16.1.1.8/24 is an interface address of a71, 20.1.1.2/32 is an interface address of C11, 15.1.1.2/32 is an interface address of a01, 9.1.1.2/32 is an interface address of T00, 30.1.1.2/32 is an interface address of C21, and 16.1.1.2/32 is an interface address of a 02. Fig. 10B is a schematic diagram of a fault delivery process in another fabric network according to an embodiment of the present application. The network in fig. 10B and the network in fig. 10A are the same network. In fig. 10B, 1003 is a partial path in the routing table of C11, 1004 is a partial path in the routing table of a01, 1005 is a partial path in the routing table of T00, and the traffic direction (i.e., data transmission direction) is T00 to T70. Referring to fig. 10A and 10B, an example of fault delivery in the fabric network is as follows:
(1) c11 detected a path break between C11 and a 71.
(2) C11 updates the state of the path with the destination address 10.1.1.0/24 and the next hop of 16.1.1.8/24 in its routing table to failure.
The path with the destination address of 10.1.1.0/24 and the next hop of 16.1.1.8/24 in the routing table of C11 is the path of C11 through a71 to T70 (corresponding to the above-mentioned reference path).
(3) C11 sends first failure information to a 01.
1001 in fig. 10A is an example of this first failure information. Wherein 01 represents the serial number of the first fault information, the residual bandwidth 0 represents that the residual bandwidth of the path from C11 to T70 is 0, 20.1.1.2/32 is an interface address of C11, and 10.1.1.0/24 is an interface address of T70. As can be seen, the interface field and the prefix field in the first failure information may indicate a path of C11 to T70 (corresponding to the first path described above).
(4) And A01, according to the first failure information, updating the state of the path with the destination address of 10.1.1.0/24 and the next hop of 20.1.1.2/32 in the routing table to be failure.
The path with the destination address of 10.1.1.0/24 and the next hop of 20.1.1.2/32 in the routing table of A01 is the path from A01 through C11 to A70. 20.1.1.2/32 is an interface address of C11. In fig. 10B, one path in 1004 is a path from a01 through C11 to a70, and the other path is a path from a01 through C21 to a 70.
(5) A01 sends second failure information to T00.
An example of the second failure information is 1002 in fig. 10A. Wherein 01 represents the serial number of the second failure information, the residual bandwidth 100 represents that the residual bandwidth of the path from a01 to T70 is 100G, 15.1.1.2/32 is an interface address of a01, and 10.1.1.0/24 is an interface address of T70. As can be seen, the interface field and the prefix field in this second failure information may indicate a path from a01 to T70 (corresponding to the second path described above). Before the path between C11 and a71 is not broken, the bandwidth between C11 and a71 is 100G, and the bandwidth between C21 and a71 is 100G; after the path between C11 and a71 was broken, the bandwidth between C11 and a71 was 0G, the bandwidth between C21 and a71 was 100G, and the remaining bandwidth of the path from a01 to T70 was 100G. Therefore, the remaining bandwidth in the second failure information is 100G.
(6) T00 updates the state of the path with the destination address of 10.1.1.0/24 and the next hop of 15.1.1.2/32 in its routing table to half the bandwidth according to the second failure information.
The path with the destination address of 10.1.1.0/24 and the next hop of 15.1.1.2/32 in the routing table of T00 is the path from T00 through A01 to A70. 15.1.1.2/32 is an interface address of A01. In fig. 10B, one path in 1005 is a path from T00 through a01 to T70, and the other path is a path from T00 through a02 to T70. Before the path between C11 and a71 is not broken, the bandwidth between a01 and T70 is 200G, and the bandwidth of T00 through the path from a01 to T70 is 200G; after the path between C11 and a71 is broken, the bandwidth between a01 and T70 is 100G, and the bandwidth of T00 through the path from a01 to T70 is 100G. Thus, T00 updates the status of the path in its routing table with a destination address of 10.1.1.0/24 and a next hop of 15.1.1.2/32 to half the bandwidth.
(7) T00 adjusts the ratio of the traffic it sends data through a01 and a02 from 1:1 to 1: 2.
Before the path between C11 and a71 is not broken, the bandwidth of the path from a01 to T70 for T00 is 200G, and the bandwidth of the path from a02 to T70 for T00 is 200G, so the ratio of the traffic of data sent by T00 through a01 and a02 is 1: 1. After the path between C11 and a71 is broken, the bandwidth of the path from a01 to T70 by T00 is 100G, the bandwidth of the path from a02 to T70 by T00 is 200G, and the ratio of the traffic of which data is transmitted by a01 and a02 can be adjusted from 1:1 to 1:2 by T00 using UCMP. It should be understood that the network node allocates traffic for each path according to the bandwidth of each path, which can effectively alleviate congestion.
It can be seen from the embodiment that each network node in the network can obtain the fault information of the remaining bandwidth by transmitting the fault information which can be analyzed to the neighboring node, and each network node affected by the fault in the network can quickly update the routing table thereof and timely adjust the traffic distribution of each path according to the remaining bandwidth of each path.
Next, a specific example of the application of the network fault delivery method provided in the present application to another fabric network is described.
Fig. 11 is a schematic diagram of a fault delivery process in another fabric network according to an embodiment of the present application. The network nodes in the fabric network configure an Interior Gateway Protocol (IGP), and the edge network nodes configure an IGP and a Border Gateway Protocol (BGP) at the same time. IGP is a protocol for exchanging routing information between gateways (hosts and routers) within an autonomous network. BGP is a decentralized Autonomous routing protocol, which is a core on the internet, and is used to exchange routing information between different Autonomous Systems (AS). When two ases need to exchange routing information, each AS must specify a node running BGP to exchange routing information with the other AS on behalf of the AS. In fig. 11, S01 and S03 are network nodes on the same AS edge, B01 and B02 are network nodes inside the AS, S04 is a network node on the other AS edge, 40.1.1.2/32 is an interface address of S04, 60.1.1.2/32 is an interface address of S03, 11.1.1.8/32 is an interface address of B01, 12.1.1.8/32 is an interface address of B02, 1101 is a partial path in the IGP routing table of B01, 1102 is a partial path in the IGP routing table of S01, and 1103 is a partial path in the BGP routing table of S01. Referring to fig. 11, an example of fault delivery and handling in the fabric network is as follows:
(1) b01 detects a path break between B01 and S03.
(2) B01 updates the state of the path with the destination address 60.1.1.2/32 and the next hop of 60.1.1.2/32 in its IGP routing table to failure.
The path with the destination address of 60.1.1.2/32 and the next hop of 60.1.1.2/32 in the IGP routing table of B01 is the path between B01 and S03. 60.1.1.2/32 is an interface address of S03, i.e., 60.1.1.2/32 is used to indicate S03. 1101 in fig. 11 is the path between B01 and S03 in the IGP routing table of B01.
(3) And B01 checks its IGP routing table, generates failure information (also called failure notification message) according to the IGP route with the destination address 60.1.1.2/32, and notifies the network nodes in the IGP domain. The failure information is used to indicate a failure condition of the path of B01 to S03. The propagation and pruning method of the fault message is the same as that in the previous embodiment. Network nodes within an IGP domain refer to network nodes within the network, i.e., network nodes that are configured only with IGPs.
(4) And S01, after receiving the failure information, updating the state of the path with the destination address of 60.1.1.2/32 and the next hop of 11.1.1.8/32 in the IGP routing table to be failure.
1102 in fig. 11 is two paths in the IGP routing table of S01, the last path is a path from S01 through B01 to S03, and the next path is a path from S01 through B02 to S03. After the path between B01 and S03 is disconnected, S01 fails through the path from B01 to S03, and S01 fails through the path from B02 to S03. Therefore, S01, upon receiving the failure information, updates the state of S01 through the path of B01 to S03 to the failure.
(5) S01 looks up the BGP routing table, and carries out fault processing on the route with the next hop of 60.1.1.2/32 in the BGP routing table, and the fault information inherits the fault state information of 60.1.1.2/32.
In FIG. 11, 1103 indicates the path with the next hop of 60.1.1.2/32 in the BGP routing table of S01. S01 may quickly update the status and remaining bandwidth of each path in its IGP routing table. How to update the BGP routing table according to the IGP routing table is a common technical means in the art, and is not described in detail here. In this embodiment, the IGP route is protected by the failure delivery method provided in the embodiment of the present application; BGP routes are protected by iterating the state of IGP routes.
In the embodiment of the application, the network node affected by the fault actively generates the fault message by checking the IGP routing table, so that the propagation speed of the fault message in the IGP network node can be increased, and the BGP routing depending on the IGP can sense the fault more quickly.
Fig. 12 is a schematic structural diagram of a first network node according to an embodiment of the present application. As shown in fig. 12, the first network node may include:
a receiving unit 1201, configured to receive first failure information from a second network node; the second network node is a neighbor node of the first network node, the first fault information is used for indicating the fault condition of a first path, and the first path is a path from the second network node to a destination network node;
an analyzing unit 1202, configured to analyze the first failure information to obtain the destination network node and a first address; the first address is an interface address of the second network node;
a sending unit 1203, configured to send second failure information to a third network node when a next hop of the first network node includes the first address in a routing path from the first network node to the destination network node; the third network node is a neighbor node of the first network node, the second failure information is used for indicating a failure condition of a second path, and the second path is a path from the first network node to the destination network node.
Referring to fig. 12, the first network node may store a port list, each port (also called an interface) in the port list is coupled to a port of another network node, and the sending unit 1203 spreads out the fault information by querying the port list. For example, a first port in the port list is coupled to a port of a third network node, and the sending unit 1203 outputs the second failure information through the first port, so that the third network node can receive the second failure information.
In an alternative implementation, as shown in fig. 12, the first network node further includes:
a discarding unit 1204, configured to discard the first failure information when a next hop of the first network node does not include the first address in a routing path from the first network node to the destination network node.
In an alternative implementation, the first failure information includes a bandwidth field for indicating a remaining bandwidth of the first path.
In an optional implementation, the network node further includes:
a determining unit 1205 for determining the remaining bandwidth of the second path;
a first generating unit 1206, configured to generate the second fault information according to the second path and the remaining bandwidth of the second path; the second failure information is also used for analyzing to obtain the second bandwidth.
In an optional implementation manner, the parsing unit 1202 is further configured to parse the first failure information to obtain the remaining bandwidth of the first path;
a determining unit 1205, specifically configured to use the remaining bandwidth of the first path as a bandwidth of a third path in the routing table; taking the sum of the bandwidths of the paths included in the second path in the routing table as the remaining bandwidth of the second path; the third path is included in the second path, and a next hop of the third path is the first address.
In an alternative implementation, as shown in fig. 12, the first network node further includes:
a querying unit 1207, configured to query a routing path from the first network node to the destination network node in a routing table, where a next hop of the first network node is a path of the first address to obtain a fourth path; the fourth path is included in the second path;
an updating unit 1208, configured to update a state of the fourth path in the routing table and/or update a bandwidth of the fourth path to the remaining bandwidth of the first path according to the remaining bandwidth of the first path; the state of the fourth path is used to determine the bandwidth of the fourth path.
In an alternative implementation, as shown in fig. 12, the first network node further includes:
a traffic allocating unit 1209, configured to determine a bandwidth of a fifth path in the routing table, where the fifth path is included in the second path; and distributing the flow for the fourth path and the fifth path according to the bandwidth of the fourth path and the bandwidth of the fifth path by adopting a non-equal value load sharing UCMP technology.
In an alternative implementation, as shown in fig. 12, the first network node further includes:
a second generating unit 1210 that generates third failure information in a case where the sixth path fails; the sixth path is a path from the first network node to a reference network node, and the third fault information is used for analyzing to obtain the remaining bandwidth of the sixth path;
the sending unit 1203 is further configured to send the third failure information to the third network node. The second generation unit 1210 and the first generation unit 1206 may be the same unit or different units.
Fig. 13 is a schematic structural diagram of a second network node according to an embodiment of the present application. As shown in fig. 13, the second network node may include:
a generating unit 1301, configured to generate fault information when the first path fails;
a sending unit 1302, configured to send the failure information to the first network node; the fault information is used for indicating the fault condition of the first path, and the first network node is a neighbor node of the second network node; the fault information includes a bandwidth field indicating a remaining bandwidth of the first path.
In an alternative implementation, the first path is a path from the second network node to a destination network node; the fault information also includes an interface field for indicating an interface address of the second network node and a prefix field for indicating the destination network node.
In an alternative implementation, as shown in fig. 13, the second network node further includes:
a detecting unit 1303, configured to detect that a reference path included in the first path fails;
a setting unit 1304, configured to set a state of the reference path in the routing table as a failure;
a determining unit 1305, configured to determine that the first path fails if the state of the reference path in the routing table is a failure.
In an optional implementation manner, the generating unit 1301 is specifically configured to, when the first path fails, take a sum of bandwidths of paths included in the first path in a routing table as a remaining bandwidth of the first path; and generating the fault information according to the first path and the residual bandwidth of the first path.
The first network node and the second network node are distinguished from the point of view of sensing and communicating faults. In the network, the network node sensing the failure is the second network node, and the network node transmitting the failure is the first network node. It should be understood that in some embodiments, each network node in the network may be capable of both the functionality of the second network node (sensing failure) and the functionality of the first network node (delivery failure). That is, one network node may perform the operation of both the first network node and the second network node. In these embodiments, the generating unit 1301 and the first generating unit 1206 and/or the second generating unit 1210 may be the same unit, and the transmitting unit 1302 and the transmitting unit 1203 may be the same unit.
Two practical application scenarios of the network node provided in the embodiment of the present application are described below.
Fig. 14A is a schematic application scenario diagram of a network fault delivery method according to an embodiment of the present application. As shown in fig. 14A, the Network nodes 1 to 5 form a Network, and the structure of each Network node is as shown in fig. 14B, the Network fault delivery method provided by the foregoing embodiment is effective in the forwarding plane, and the function is implemented on a Network Processor (NP) without participation of the control plane. That is, the NP in the network node implements the network failure delivery method, i.e., the NP is used to implement the functions of each unit in fig. 12 and 13.
Fig. 15 is a schematic application scenario diagram of another network fault delivery method according to an embodiment of the present application. Fig. 15 can also be regarded as an internal connection structure of a switching network of one network node. In the switching network of the network node, the fault transmission between each component of the switching network may also use the network fault transmission method provided in the foregoing embodiment, and the function is implemented on each component of the switching network. Take the switch network structure of the switch network Interface (FIC) + Switch Element (SE) as an example:
the FICs are interfaces which can be identified by the switching network, and the interfaces of the network nodes finally correspond to a certain FIC for data exchange. One SE can connect all FICs, and increasing SE can increase the switching capacity. Both SE and FIC in the network node may implement the network failure delivery method, and both SE and FIC are used to implement the functions of the elements in fig. 12 and 13.
It should be understood that the above division of each unit in the network node is only a division of logical functions, and the actual implementation may be wholly or partially integrated into one physical entity, or may be physically separated. For example, each of the above units may be a processing element separately set up, or may be implemented by being integrated in a chip of the terminal, or may be stored in a storage element of the controller in the form of program code, and a processing element of the processor calls and executes the functions of each of the above units. In addition, the units can be integrated together or can be independently realized. The processing element may be an integrated circuit chip having signal processing capabilities. In implementation, the steps of the method or the units above may be implemented by hardware integrated logic circuits in a processor element or instructions in software. The processing element may be a general-purpose processor, such as a network processor or a Central Processing Unit (CPU), or may be one or more integrated circuits configured to implement the above methods, such as: one or more application-specific integrated circuits (ASICs), one or more microprocessors (DSPs), one or more field-programmable gate arrays (FPGAs), etc.
Referring to fig. 16, fig. 16 is a schematic structural diagram of another network node according to an embodiment of the present disclosure, where the network node includes a processor 1601, a memory 1602 and an input/output device 1603, and the processor 1601, the memory 1002 and the input/output device 1603 are connected to each other via a bus 1604.
The memory 1602 includes, but is not limited to, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), or a portable read-only memory (CD-ROM), and is used for storing instructions and data (including routing tables). The processor 1601 may be a network processor or other processor, such as a CPU. Input/output device 1603 is used for transmitting and receiving data and fault information.
The processor 1601 in the network node reads the program code stored in the memory 1602 described above and performs the following operations: receiving first failure information from a second network node; the second network node is a neighbor node of the first network node, the first fault information is used for indicating the fault condition of a first path, and the first path is a path from the second network node to a destination network node; analyzing the first fault information to obtain the destination network node and a first address; the first address is an address of an interface through which the second network node communicates with the destination network node; in a routing path from the first network node to the destination network node, when a next hop of the first network node includes the first address, sending second fault information to a third network node; the third network node is a neighbor node of the first network node, the second failure information is used for indicating a failure condition of a second path, and the second path is a path from the first network node to the destination network node.
The processor 1601 in the network node reads the program code stored in the memory 1602 described above and may further perform the following operations: generating fault information under the condition that the first path has a fault; sending the fault information to the first network node; the failure information is used for indicating a failure condition of the first path, the first network node is a neighbor node of the second network node, and the failure information comprises a bandwidth field which is used for indicating the residual bandwidth of the first path.
In the network node depicted in fig. 16, the input-output device 1603 may be used to implement the functions of the receiving unit 1201 and the transmitting unit 1203 shown in fig. 12; the processor 1601 is further operable to perform the functions of the parsing unit 1202, the discarding unit 1204, the determining unit 1205, the first generating unit 1206, the querying unit 1207, the updating unit 1208, the traffic allocating unit 1209, and the second generating unit 1210 shown in fig. 12. The input-output device 1603 is also used for realizing the function of the sending unit 1302 in fig. 13; the processor 1601 may also be configured to perform the functions of the generation unit 1301, the detection unit 1303, the setting unit 1304, and the determination unit 1305 shown in fig. 13.
The embodiment of the present application further provides a computer-readable storage medium, where instructions are stored in the computer-readable storage medium, and when the instructions are executed on a computer, the computer is caused to execute the network fault delivery method provided in the foregoing embodiment.
Optionally, the instructions when executed on a computer may implement: receiving first failure information from a second network node; the second network node is a neighbor node of the first network node, the first fault information is used for indicating the fault condition of a first path, and the first path is a path from the second network node to a destination network node; analyzing the first fault information to obtain the destination network node and a first address; the first address is an address of an interface through which the second network node communicates with the destination network node; in a routing path from the first network node to the destination network node, when a next hop of the first network node includes the first address, sending second fault information to a third network node; the third network node is a neighbor node of the first network node, the second failure information is used for indicating a failure condition of a second path, and the second path is a path from the first network node to the destination network node.
Optionally, the instructions when executed on a computer may further implement: generating fault information under the condition that the first path has a fault; sending the fault information to the first network node; the failure information is used for indicating a failure condition of the first path, the first network node is a neighbor node of the second network node, and the failure information comprises a bandwidth field which is used for indicating the residual bandwidth of the first path.
The present application provides a computer program product containing instructions, which when run on a computer, causes the computer to execute the network fault delivery method provided by the foregoing embodiments.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, cause the processes or functions described in accordance with the embodiments of the invention to occur, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website site, computer, server, or data center to another website site, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device, such as a server, a data center, etc., that incorporates one or more of the available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
While the invention has been described with reference to specific embodiments, the invention is not limited thereto, and various equivalent modifications and substitutions can be easily made by those skilled in the art within the technical scope of the invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims (20)

1. A method for network fault delivery, comprising:
the first network node receiving first failure information from the second network node; the second network node is a neighbor node of the first network node, the first fault information is used for indicating a fault condition of a first path, and the first path is a path from the second network node to a destination network node;
analyzing the first fault information to obtain the destination network node and a first address; the first address is an address of an interface through which the second network node communicates with the destination network node;
in a routing path from the first network node to the destination network node, when a next hop of the first network node includes the first address, the first network node sends second fault information to a third network node; the third network node is a neighbor node of the first network node, the second fault information is used for indicating a fault condition of a second path, and the second path is a path from the first network node to the destination network node.
2. The method of claim 1, wherein after parsing the first failure information to obtain the destination network node and the first address, the method further comprises:
and discarding the first fault information when a next hop of the first network node does not include the first address in a routing path from the first network node to the destination network node.
3. The method according to claim 1 or 2, wherein the first failure information comprises a bandwidth field for indicating a remaining bandwidth of the first path.
4. The method of claim 3, wherein before sending the second failure information to the third network node, the method further comprises:
the first network node determining a remaining bandwidth of the second path;
generating the second fault information according to the second path and the residual bandwidth of the second path; the second fault information is also used for analyzing to obtain the second bandwidth.
5. The method of claim 4, wherein the first network node determining the remaining bandwidth of the second path comprises:
the first network node analyzes the first fault information to obtain the residual bandwidth of the first path;
the first network node takes the residual bandwidth of the first path as the bandwidth of a third path in a routing table; the third path is included in the second path, and a next hop of the third path is the first address;
and taking the sum of the bandwidths of the paths included in the second path in the routing table as the residual bandwidth of the second path.
6. The method according to any of claims 1 to 5, wherein after the parsing the first failure information to obtain the destination network node and the first address, the method further comprises:
the first network node inquires a routing path from the first network node to the destination network node in a routing table, and a next hop of the first network node is a path of the first address to obtain a fourth path; the fourth path is included in the second path;
according to the residual bandwidth of the first path, updating the state of the fourth path in the routing table and/or updating the bandwidth of the fourth path to the residual bandwidth of the first path; the state of the fourth path is used to determine a bandwidth of the fourth path.
7. The method according to claim 6, wherein after updating the state of the fourth path in the routing table and/or updating the bandwidth of the fourth path to the remaining bandwidth of the first path according to the remaining bandwidth of the first path, the method further comprises:
the first network node determining a bandwidth of a fifth path in the routing table, the fifth path being included in the second path;
and the first network node distributes flow for the fourth path and the fifth path according to the bandwidth of the fourth path and the bandwidth of the fifth path by adopting a non-equal value load sharing UCMP technology.
8. The method according to any one of claims 1 to 7, further comprising:
the first network node generates third fault information under the condition that the sixth path has a fault; the sixth path is a path from the first network node to a reference network node, and the third fault information is used for analyzing to obtain the remaining bandwidth of the sixth path;
the first network node sends the third failure information to the third network node.
9. A method for network fault delivery, comprising:
the second network node generates fault information under the condition that the first path has a fault;
sending the fault information to a first network node; the failure information is used for indicating a failure condition of the first path, the first network node is a neighbor node of the second network node, and the failure information includes a bandwidth field used for indicating a remaining bandwidth of the first path.
10. The method of claim 9, wherein the second network node generating the failure information in case of a failure of the first path comprises:
the second network node takes the sum of the bandwidths of all paths included in the first path in a routing table as the residual bandwidth of the first path under the condition that the first path fails;
and generating the fault information according to the first path and the residual bandwidth of the first path.
11. A first network node, comprising:
a receiving unit configured to receive first failure information from a second network node; the second network node is a neighbor node of the first network node, the first fault information is used for indicating a fault condition of a first path, and the first path is a path from the second network node to a destination network node;
the analysis unit is used for analyzing the first fault information to obtain the destination network node and a first address; the first address is an address of an interface through which the second network node communicates with the destination network node;
a sending unit, configured to send second failure information to a third network node when a next hop of the first network node includes the first address in a routing path from the first network node to the destination network node; the third network node is a neighbor node of the first network node, the second fault information is used for indicating a fault condition of a second path, and the second path is a path from the first network node to the destination network node.
12. The network node of claim 11, wherein the network node further comprises:
a discarding unit, configured to discard the first failure information when a next hop of the first network node does not include the first address in a routing path from the first network node to the destination network node.
13. The network node according to claim 11 or 12, wherein the first failure information comprises a bandwidth field for indicating a remaining bandwidth of the first path.
14. The network node of claim 13, wherein the network node further comprises:
a determining unit, configured to determine a remaining bandwidth of the second path;
a first generating unit, configured to generate the second fault information according to the second path and a remaining bandwidth of the second path; the second fault information is also used for analyzing to obtain the second bandwidth.
15. The network node of claim 14,
the analysis unit is further configured to analyze the first fault information to obtain a remaining bandwidth of the first path;
the determining unit is specifically configured to use the remaining bandwidth of the first path as a bandwidth of a third path in a routing table; taking the sum of the bandwidths of the paths included in the second path in the routing table as the remaining bandwidth of the second path; the third path is included in the second path, and a next hop of the third path is the first address.
16. The network node according to any of claims 11 to 15, wherein the network node further comprises:
the query unit is configured to query a routing path from the first network node to the destination network node in a routing table, where a next hop of the first network node is a path of the first address to obtain a fourth path; the fourth path is included in the second path;
an updating unit, configured to update a state of the fourth path in the routing table and/or update a bandwidth of the fourth path to a remaining bandwidth of the first path according to the remaining bandwidth of the first path; the state of the fourth path is used to determine a bandwidth of the fourth path.
17. The network node of claim 16, wherein the network node further comprises:
a traffic allocation unit, configured to determine a bandwidth of a fifth path in the routing table, where the fifth path is included in the second path; and distributing flow for the fourth path and the fifth path according to the bandwidth of the fourth path and the bandwidth of the fifth path by adopting a non-equal value load sharing UCMP technology.
18. The network node according to any of claims 11 to 17, wherein the network node further comprises:
a second generating unit configured to generate third failure information in a case where the sixth path fails; the sixth path is a path from the first network node to a reference network node, and the third fault information is used for analyzing to obtain the remaining bandwidth of the sixth path;
the sending unit is further configured to send the third failure information to the third network node.
19. A second network node, comprising:
a generation unit configured to generate failure information in a case where the first path has failed;
a transmitting unit, configured to transmit the fault information to a first network node; the fault information is used for indicating the fault condition of a first path, and the first network node is a neighbor node of the second network node; the failure information includes a bandwidth field to indicate a remaining bandwidth of the first path.
20. The network node of claim 19,
the generating unit is specifically configured to, when the first path fails, use a sum of bandwidths of paths included in the first path in a routing table as a remaining bandwidth of the first path; and generating the fault information according to the first path and the residual bandwidth of the first path.
CN201910857678.4A 2019-09-09 Network fault delivery method and related product Active CN112468391B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910857678.4A CN112468391B (en) 2019-09-09 Network fault delivery method and related product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910857678.4A CN112468391B (en) 2019-09-09 Network fault delivery method and related product

Publications (2)

Publication Number Publication Date
CN112468391A true CN112468391A (en) 2021-03-09
CN112468391B CN112468391B (en) 2024-04-26

Family

ID=

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5065399A (en) * 1988-11-24 1991-11-12 Bell Communications Research, Inc. Telecommunication network trouble recovery system
CN1744568A (en) * 2004-08-23 2006-03-08 阿尔卡特公司 Network-node for exchanging data information via a path or a detour path
CN1759573A (en) * 2003-02-28 2006-04-12 西门子公司 Rapid response method for the failure of links between different routing domains
US20060146696A1 (en) * 2005-01-06 2006-07-06 At&T Corp. Bandwidth management for MPLS fast rerouting
JP2007243487A (en) * 2006-03-07 2007-09-20 Nippon Telegr & Teleph Corp <Ntt> System and method for path setting/bandwidth control on network
CN101471693A (en) * 2007-12-27 2009-07-01 华为技术有限公司 Method and apparatus for sharing grid protection
JP2010057158A (en) * 2008-07-31 2010-03-11 Kddi Corp Route fault location estimation device and computer program
CN101854565A (en) * 2009-03-31 2010-10-06 华为技术有限公司 Information transmission method, service protection method, system and devices
CN102148763A (en) * 2011-04-28 2011-08-10 南京航空航天大学 Dynamic path distribution method and system applicable to network on chip
CN102395131A (en) * 2011-10-10 2012-03-28 西安交通大学 Non-fullness complete-non-correlation double-tree traversal protection method in mesh network
CN103931123A (en) * 2011-09-15 2014-07-16 瑞典爱立信有限公司 WSON restoration
CN105103502A (en) * 2013-03-28 2015-11-25 三菱电机株式会社 Method for configuring node devices of a mesh communications network, computer program, information storage means and system
CN106209621A (en) * 2016-06-17 2016-12-07 中国人民解放军空军工程大学 The link failure recovery method of qos constraint
CN109361597A (en) * 2018-12-14 2019-02-19 武汉光迅信息技术有限公司 A kind of multiple routes selection method and apparatus

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5065399A (en) * 1988-11-24 1991-11-12 Bell Communications Research, Inc. Telecommunication network trouble recovery system
CN1759573A (en) * 2003-02-28 2006-04-12 西门子公司 Rapid response method for the failure of links between different routing domains
CN1744568A (en) * 2004-08-23 2006-03-08 阿尔卡特公司 Network-node for exchanging data information via a path or a detour path
US20060146696A1 (en) * 2005-01-06 2006-07-06 At&T Corp. Bandwidth management for MPLS fast rerouting
JP2007243487A (en) * 2006-03-07 2007-09-20 Nippon Telegr & Teleph Corp <Ntt> System and method for path setting/bandwidth control on network
CN101471693A (en) * 2007-12-27 2009-07-01 华为技术有限公司 Method and apparatus for sharing grid protection
JP2010057158A (en) * 2008-07-31 2010-03-11 Kddi Corp Route fault location estimation device and computer program
CN101854565A (en) * 2009-03-31 2010-10-06 华为技术有限公司 Information transmission method, service protection method, system and devices
CN102148763A (en) * 2011-04-28 2011-08-10 南京航空航天大学 Dynamic path distribution method and system applicable to network on chip
CN103931123A (en) * 2011-09-15 2014-07-16 瑞典爱立信有限公司 WSON restoration
CN102395131A (en) * 2011-10-10 2012-03-28 西安交通大学 Non-fullness complete-non-correlation double-tree traversal protection method in mesh network
CN105103502A (en) * 2013-03-28 2015-11-25 三菱电机株式会社 Method for configuring node devices of a mesh communications network, computer program, information storage means and system
CN106209621A (en) * 2016-06-17 2016-12-07 中国人民解放军空军工程大学 The link failure recovery method of qos constraint
CN109361597A (en) * 2018-12-14 2019-02-19 武汉光迅信息技术有限公司 A kind of multiple routes selection method and apparatus

Similar Documents

Publication Publication Date Title
US20210409321A1 (en) Method and System for Determining Packet Forwarding Path, and Network Node
US5687168A (en) Link state routing device in ATM communication system
JP3286584B2 (en) Multiplexed router device
JP3546764B2 (en) Load balancing server provided in network and node including load balancing server
US6983294B2 (en) Redundancy systems and methods in communications systems
US8917607B2 (en) Optimized layer-2 network switching systems and methods
JP4951717B2 (en) How to select backup resources, system
CN108306777B (en) SDN controller-based virtual gateway active/standby switching method and device
US7940694B2 (en) Intelligent filtering of redundant data streams within computer networks
US20060182033A1 (en) Fast multicast path switching
US20010048660A1 (en) Virtual path restoration scheme using fast dynamic mesh restoration in an optical network.
CA2959511C (en) Network service aware routers, and applications thereof
CN113472646B (en) Data transmission method, node, network manager and system
CN109088822B (en) Data flow forwarding method, device, system, computer equipment and storage medium
CN111083061B (en) Method, equipment and system for determining DF (distribution function) of multicast flow
CN114448877B (en) Path switching method, device and system
CN113992569A (en) Multi-path service convergence method and device in SDN network and storage medium
CN107332793B (en) Message forwarding method, related equipment and system
EP1964330B1 (en) Method for reducing fault detection time in a telecommunication network
US8964596B1 (en) Network service aware routers, and applications thereof
CN112468391B (en) Network fault delivery method and related product
US11909546B2 (en) Method and network node for sending and obtaining assert packet
CN112910795B (en) Edge load balancing method and system based on many sources
Nithin et al. Efficient load balancing for multicast traffic in data center networks using SDN
CN112468391A (en) Network fault delivery method and related product

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant