Message sending method and device, Spine equipment, Leaf equipment and computer readable storage medium

By using the first and second next hops of the backup path group in the Fat-Tree network of the Intelligent Computing Center to send fault notification messages and data messages respectively, bypassing the fault link, the problem of too long convergence time caused by link failure is solved, and faster fault recovery and data transmission is achieved.

CN119835212AActive Publication Date: 2025-04-15MAIPU COMM TECH CO LTD

Patent Information

Application Number
CN202411972673.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-30
Publication Date
2025-04-15
Estimated Expiration
2044-12-30

AI Technical Summary

Technical Problem

In the Fat-Tree network of the Intelligent Computing Center, link failure causes the failure to converge for too long, affecting the normal operation of AI training tasks.

Method used

When the Spine device detects a direct link failure of the target Leaf device, the fault notification message is sent through the first next hop in the backup path group, and the data message is sent to the transit Leaf device through the second next hop, and the second next hop is sent to the second Spine device through the transit Leaf device, and finally the data message is sent to the target Leaf device, bypassing the failure link.

Benefits of technology

It shortens the fault convergence time, improves the convergence performance, and avoids the long convergence time caused by relying on the control plane to troubleshoot through the routing protocol during link failure.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119835212A_ABST
    Figure CN119835212A_ABST
Patent Text Reader

Abstract

The invention relates to a data communication technology, and provides a message sending method and device, Spine equipment, Leaf equipment and a computer readable storage medium, and the method comprises the steps: receiving a data message, the data message being a message to be forwarded through target Leaf equipment in a plurality of Leaf equipment; and when a direct connection link fault with the target Leaf equipment is detected, sending a fault notification message to other Leaf equipment except the target Leaf equipment through a first next hop in the backup path group, and sending a data message to transfer Leaf equipment through a second next hop in the backup path group, so that the data message reaches second Spine equipment through the transfer Leaf equipment, and the fault notification message is sent to the other Leaf equipment except the target Leaf equipment through the second Spine equipment. And the data message is sent to the target Leaf device for forwarding through the second Spine device. According to the invention, the fault link can be bypassed, the data can be forwarded quickly, the fault convergence time is shortened, and the network performance is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of data communication technology, and in particular to a message sending method, device, Spine device, Leaf device and computer-readable storage medium. Background Art

[0002] With the rapid development of artificial intelligence technology, intelligent computing center networks have gradually become a hot research topic in the industry. AI training is extremely sensitive to network failures due to its characteristics of distributed computing, long-term operation, and real-time response. Since intelligent computing networks usually use a large number of vulnerable components such as optical modules, network failures are inevitable during AI training. At present, the industry attaches great importance to improving the fault convergence speed in the intelligent computing center network and reducing the impact of network failures on AI training tasks. This involves remote fault convergence, and one idea is to achieve it by combining fault notification with fault switching.

[0003] Intelligent computing centers usually adopt a more regular topology for networking, among which Fat-Tree is a very common networking form in current intelligent computing centers. For the Fat-tree of the intelligent computing center, it is divided into two situations: two-level networking and three-level networking. In a typical two-level Fat-Tree network, half of the ports of each Leaf device are connected to the server / GPU (Graphics Processing Unit, graphics processor), and half of the ports are connected to the Spine device (spine device). All ports of each Spine device are connected to the Leaf device (leaf device), and the maximum number of GPUs that can be connected to the network is limited by the number of switch ports.

[0004] For the secondary box-box networking of 64-port box devices, a maximum of 32 Spine devices and 64 Leaf devices are supported, and 2048 GPUs are supported. For the secondary box-box networking of 128-port box devices, a maximum of 64 Spine devices and 128 Leaf devices are supported, and 8192 GPUs are supported.

[0005] In actual networking, there will be a large number of GPUs, as well as a large number of Leaf devices and Spine devices. The convergence ratio of Leaf devices to downlink bandwidth is 1:1, and there is usually only one link between each pair of Leaf devices and Spine devices. When a link failure occurs in the network, the device needs to directly or indirectly sense the link change and then notify other devices in the network to update the forwarding table for convergence.

[0006] Current solution: According to the standard routing protocol processing logic, fault convergence mainly depends on the device control plane. After the Spine device senses the link failure of the connected Leaf device, it sends a protocol message to other Leaf devices through the routing protocol to notify the route withdrawal. When other Leaf devices receive the protocol message and update the local routing table, the service can be restored. In typical scenarios, the convergence time is in seconds, and the service packet loss time is too long. Summary of the invention

[0007] The present invention aims to provide a message sending method, device, Spine device, Leaf device and computer-readable storage medium.

[0008] The embodiments of the present invention can be implemented as follows:

[0009] In a first aspect, the present invention provides a message sending method, which is applied to a switching chip of a first Spine device in an intelligent computing network, wherein the first Spine device is directly connected to a plurality of Leaf devices, and a backup path group of a direct link from the first Spine device to each of the Leaf devices is provided in the switching chip, and the method comprises:

[0010] receiving a data message, where the data message is a message to be forwarded by a target Leaf device among the multiple Leaf devices;

[0011] When a direct link failure between the target Leaf device and the target Leaf device is detected, a fault notification message generated based on the data message is sent to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group, and the data message is sent to the transit Leaf device through the second next hop in the backup path group to reach the second Spine device through the transit Leaf device, and the data message is sent to the target Leaf device for forwarding through the second Spine device.

[0012] In an optional implementation manner, the step of sending the fault notification message to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group includes:

[0013] According to the first next hop, the data message is edited to obtain the fault notification message carrying the fault link information;

[0014] The fault notification message is forwarded to a pre-created multicast group at a preset rate limit so as to be received by each remaining Leaf device; wherein the multicast group includes each Leaf device in the plurality of Leaf devices.

[0015] In an optional implementation manner, the step of editing the data message to obtain the fault notification message carrying the fault link information includes:

[0016] Modify the source MAC address of the data packet to the MAC address of the first Spine device, modify the destination MAC address of the data packet to the MAC address of the target Leaf device, and modify the Ethernet type of the data packet to a custom value, so that any of the remaining Leaf devices that receive the fault notification message can determine the direct link failure between the first Spine device and the target Leaf device based on the source and destination MAC addresses and the Ethernet type.

[0017] In an optional implementation manner, the step of sending the data message to the transit Leaf device through the second next hop in the backup path group includes:

[0018] According to the second next hop, adding a preset tag to the data message;

[0019] Determine a transfer Leaf device from all other Leaf devices according to the preset mark;

[0020] The data packet is sent to the second Spine device through the transit Leaf device, and the data packet is sent to the target Leaf device through the second Spine device.

[0021] In an optional implementation manner, the step of determining a transit Leaf device from all remaining Leaf devices according to the preset mark includes:

[0022] By searching for the forwarding action corresponding to the access control list matching the preset tag, the transit Leaf device is determined from each reachable Leaf device in the pre-created ECMP group according to the preset load sharing strategy; the ECMP group includes all remaining Leaf devices among the multiple Leaf devices except the target Leaf device.

[0023] In an optional implementation, the step of sending the data packet to the second Spine device through the transit Leaf device, and sending the data packet to the target Leaf device through the second Spine device includes:

[0024] Encapsulate the data message with a tunnel outer IP header, and use the IP address of the transit Leaf device as the destination IP address of the tunnel outer IP header to obtain a tunnel encapsulated message;

[0025] The tunnel encapsulation message is sent to the transit Leaf device, so that the transit Leaf device decapsulates the data message from the tunnel encapsulation message and sends it to the target Leaf device through the second Spine device.

[0026] In a second aspect, the present invention provides a message sending method, which is applied to any Leaf device directly connected to a first Spine device in an intelligent computing network, wherein the first Spine device is directly connected to multiple Leaf devices, and the Leaf device includes a switching chip and a CPU, and the method includes:

[0027] The switching chip receives a fault notification message sent by the first Spine device, wherein the fault notification message is sent by the first Spine device when a direct link failure between the first Spine device and a target Leaf device is detected;

[0028] The switching chip searches for an access control list that matches the Ethernet type of the fault notification message, and sends the fault notification message to the CPU according to a forwarding action corresponding to the access control list;

[0029] The CPU determines the failure of the direct link between the first Spine device and the target Leaf device based on the source MAC address and the destination MAC address of the fault notification message, and notifies the switching chip to delete the next hop corresponding to the first Spine device from the pre-created ECMP group, where the ECMP includes the next hops corresponding to all Spine devices directly connected to this device.

[0030] In an optional implementation, the switching chip receives the tunnel encapsulation message sent by the first Spine device through the IP tunnel, decapsulates the data message from the tunnel encapsulation message, determines the second Spine device from the ECMP group according to a preset load sharing strategy, and sends it to the target Leaf device through the second Spine device.

[0031] In a third aspect, the present invention provides a message sending device, which is applied to a switching chip of a first Spine device in an intelligent computing network, wherein the first Spine device is directly connected to a plurality of Leaf devices, and a backup path group of a direct link from the first Spine device to each of the Leaf devices is provided in the switching chip, and the device includes:

[0032] A receiving module, used to receive a data message, wherein the data message is a message to be forwarded by a target Leaf device among the multiple Leaf devices;

[0033] A fault detection module, configured to notify the sending module when a direct link failure with the target Leaf device is detected;

[0034] The sending module is used to send the fault notification message generated according to the data message to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group according to the notification of the fault detection module, and send the data message to the transit Leaf device through the second next hop in the backup path group to reach the second Spine device through the transit Leaf device, and send the data message to the target Leaf device for forwarding through the second Spine device.

[0035] In a fourth aspect, the present invention provides a Spine device, comprising a processor and a switching chip, wherein the switching chip implements the message sending method as described in the first aspect under the control of the processor.

[0036] In a fifth aspect, the present invention provides a Leaf device, the Leaf device is directly connected to a first Spine device, and the Leaf device includes a switching chip and a CPU;

[0037] The switching chip is used to receive a fault notification message sent by the first Spine device, wherein the fault notification message is sent by the first Spine device when a direct link failure between the first Spine device and a target Leaf device is detected;

[0038] The switching chip is further used to search for an access control list that matches the Ethernet type of the fault notification message, and send the fault notification message to the CPU according to a forwarding action corresponding to the access control list;

[0039] The CPU is used to determine the direct link failure between the first Spine device and the target Leaf device based on the source MAC address and destination MAC address of the fault notification message, and notify the switching chip to delete the next hop corresponding to the first Spine device from the pre-created ECMP group, where the ECMP includes the next hops corresponding to all Spine devices directly connected to this device.

[0040] In a sixth aspect, the present invention provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the message sending method described in the first aspect is implemented.

[0041] Compared with the prior art, the present invention has the following beneficial effects:

[0042] When a Spine device detects a direct link failure between it and a target Leaf device, the present invention sends a fault notification message to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group, and sends a data message to the transit Leaf device through the second next hop in the backup path group, and then reaches the second Spine device through the transit Leaf device, and sends the data message to the target Leaf device through the second Spine device. The fault notification message and the data message are sent respectively by using different next hops, and the normal sending of the data message is achieved by bypassing the faulty link, thereby avoiding the long fault convergence time caused by relying on the control plane to handle the fault through the routing protocol when a link fails, shortening the fault convergence time, and improving the convergence performance. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.

[0044] Figure 1 This is an example diagram of the intelligent computing scenario failure provided in this embodiment.

[0045] Figure 2 This is a block diagram of an example network device provided in this embodiment.

[0046] Figure 3 This is a flowchart of an example of a message sending method provided in this embodiment.

[0047] Figure 4 This is an example diagram of message detour when a fault occurs in the intelligent computing scenario provided in this embodiment.

[0048] Figure 5 This is an example diagram of the overall processing process of the intelligent computing scenario failure provided in this embodiment.

[0049] Figure 6 This is a flowchart of an example of a message sending device provided in this embodiment.

[0050] Icons: 10-Spine device; 20-Leaf device; 30-network device; 31-processor; 32-switch chip; 100-message sending device; 110-receiving module; 120-fault detection module; 130-sending module. DETAILED DESCRIPTION

[0051] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Generally, the components of the embodiments of the present invention described and shown in the drawings here can be arranged and designed in various different configurations.

[0052] Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the invention claimed for protection, but merely represents selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0053] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, further definition and explanation thereof is not required in subsequent drawings.

[0054] In the description of the present invention, it should be noted that if the terms "upper", "lower", "inside", "outside", etc. appear to indicate an orientation or position relationship, they are based on the orientation or position relationship shown in the accompanying drawings, or are the orientation or position relationship in which the product of the invention is usually placed when used. They are only for the convenience of describing the present invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the present invention.

[0055] In addition, the terms “first”, “second”, etc., if used, are merely used to distinguish between the descriptions and should not be understood as indicating or implying relative importance.

[0056] It should be noted that, in the absence of conflict, the features in the embodiments of the present invention may be combined with each other.

[0057] Please refer to Figure 1 , Figure 1 This is an example diagram of a fault in the intelligent computing scenario provided in this embodiment. Figure 1 In the example, only Fat-Tree includes two Spine devices: Spine1 and Spine2, and two Leaf devices: Leaf1 and Leaf2. Leaf1 communicates with GPU1 and GPU2 at the same time, and Leaf2 communicates with GPU3 and GPU4 at the same time. Spine1 communicates with Leaf1 and Leaf2 at the same time, and Spine2 communicates with Leaf1 and Leaf2 at the same time. It should be noted that in the actual Fat-Tree network, there are many Leaf devices and Spine devices. Figure 1 The simplified network diagram is only made to illustrate the technical problem solved by the present invention.

[0058] by Figure 1 For example, under normal circumstances, the message sent by GPU3 is as follows Figure 1 However, when Spine1 senses the link failure between it and Leaf1, the existing technology sends a protocol message to Leaf2 through the routing protocol to notify the route withdrawal. When Leaf2 receives the protocol message and updates the local routing table, the service can be restored. At this time, the message sent by GPU3 will be switched to Figure 1 The fault convergence time is too long.

[0059] In view of this, the present embodiment provides a message sending method, apparatus, Spine device, Leaf device and computer-readable storage medium, the core improvement of which is that when the Spine device of the intelligent computing network detects a fault in the link between it and the target Leaf device, it does not perform link fault processing through routing protocol messages to switch the message to the normal path for forwarding. Instead, it uses different next hops to send fault notification messages and data messages respectively, and at the same time, bypasses the faulty link to achieve normal sending of data messages, thereby avoiding the long fault convergence time caused by relying on the control plane to handle the fault through the routing protocol when the link fails, shortening the fault convergence time and improving the convergence performance. It will be described in detail below.

[0060] Please refer to Figure 2 , Figure 2 The block diagram of the network device 30 provided in this embodiment is as follows. The network device 30 may be Figure 1 The Spine device in the embodiment implements the message sending method for implementing the switching chip of the Spine device in this embodiment, and can also be Figure 1 The network device 30 includes a processor 31 and a switching chip 32, and the processor 31 and the switching chip 32 are connected via a bus.

[0061] The processor 31 may be an integrated circuit chip having signal processing capability. In the implementation process, each step of the message sending method of the above embodiment may be completed by an integrated logic circuit of hardware in the processor 31 or by instructions in the form of software. The above processor 31 may be a general-purpose processor, including a CPU (Central Processing Unit), a NP (Network Processor), etc.; it may also be a DSP (Digital Signal Processor), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Logic Gate Array) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components.

[0062] The switching chip 32 is responsible for high-speed forwarding and processing of data packets. The switching chip has built-in multiple routing algorithms and can quickly switch paths when a link failure is detected.

[0063] In this embodiment, as an implementation method, the interactive chip 32 of the Spine device also creates multiple eloop ports (engress loop, exit loopback port) and iloop ports (ingress loop, entry loopback port). The iloop port is the loopback port in the entry process of the switching chip, and the eloop port is the loopback port on the exit process of the switching chip.

[0064] The switching chip 32 of the Spine device implements the message sending method of the switching chip 32 applied to the Spine device in this embodiment under the control of the processor 31 of the Spine device.

[0065] based on Figure 1 and Figure 2 This embodiment provides a message sending method applied to Spine devices. Please refer to Figure 3 , Figure 3 The example flow chart of the message sending method provided in this embodiment includes the following steps:

[0066] Step S101, receiving a data message, where the data message is a message to be forwarded by a target Leaf device among multiple Leaf devices;

[0067] In this embodiment, the data message is a service message that the Spine device needs to send to the target Leaf device. Through the target Leaf device, the data message can reach the GPU directly connected to the target Leaf device.

[0068] Step S102, when a direct link failure between the target Leaf device and the Leaf device is detected, a fault notification message generated according to the data message is sent to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group, and the data message is sent to the transit Leaf device through the second next hop in the backup path group to reach the second Spine device through the transit Leaf device, and the data message is sent to the target Leaf device for forwarding through the second Spine device.

[0069] In this embodiment, the backup path group includes two paths, one path is used to send fault notification messages, and the other path is used to send data messages. The two paths correspond to different next hops. Through the first next hop, the fault notification message can be sent to the remaining Leaf devices except the target Leaf device, so that the link can converge quickly; through the second next hop, the data message can be sent to the transit Leaf device, and forwarded by the transit Leaf device. The transit Leaf device is a Leaf device different from the target Leaf device. Through the transit Leaf device, the data message can bypass the faulty link, realize the normal forwarding of the data message, and avoid packet loss.

[0070] The above method provided in this embodiment realizes the normal sending of data packets by bypassing the faulty link, avoids the long fault convergence time caused by relying on the control plane to handle the fault through the routing protocol when the link fails, shortens the fault convergence time, improves the convergence performance, and avoids packet loss.

[0071] In an optional implementation manner, a method for sending a fault notification message may be:

[0072] First, according to the first next hop, the data message is edited to obtain a fault notification message carrying the fault link information;

[0073] In this embodiment, in order to enable other Leaf devices to identify that the received message is a fault notification message, the Ethernet type field (EtherType) in the data message can be edited and set to a specific value. In order to enable other Leaf devices to know the faulty link according to the received fault notification message, the information of the faulty link can be set in the data message. One implementation method is:

[0074] Modify the source MAC address of the data message to the MAC address of the first Spine device, modify the destination MAC address of the data message to the MAC address of the target Leaf device, and modify the Ethernet type of the data message to a custom value, so that any remaining Leaf device that receives the fault notification message can determine the direct link failure between the first Spine device and the target Leaf device based on the source and destination MAC addresses and Ethernet types.

[0075] Secondly, the fault notification message is forwarded to a pre-created multicast group at a preset rate limit so as to be received by each remaining Leaf device; wherein the multicast group includes each Leaf device in the plurality of Leaf devices.

[0076] In this embodiment, a multicast group is pre-created in the switching chip of the first Spine device. The multicast group includes each Leaf device among multiple Leaf devices. A fault notification message is sent to each Leaf device through the multicast group. However, since a fault occurs in the link between the first Spine device and the target Leaf device, the target Leaf device will not receive the fault notification message. That is, the fault notification message will be received by each Leaf device except the target Leaf device.

[0077] In order to minimize the impact of the fault notification message on the bandwidth, this embodiment further performs rate limiting processing on the fault notification message, and forwards the fault notification message through the multicast group at a preset rate limit.

[0078] In this embodiment, after receiving the fault notification message, in order to promptly process the fault according to the fault link information in the fault notification message so that the Leaf device does not send the message to the fault link when forwarding subsequent messages, this embodiment provides a processing method applied to the Leaf device:

[0079] First, the switch chip of the Leaf device receives the fault notification message sent by the first Spine device, wherein the fault notification message is sent by the first Spine device when a direct link failure between the first Spine device and the target Leaf device is detected;

[0080] Secondly, the switch chip of the Leaf device searches for an access control list that matches the Ethernet type of the fault notification message, and sends the fault notification message to the CPU according to the forwarding action corresponding to the access control list;

[0081] Finally, the CPU of the Leaf device determines the failure of the direct link between the first Spine device and the target Leaf device based on the source MAC address and destination MAC address of the fault notification message, and notifies the switching chip to delete the next hop corresponding to the first Spine device from the pre-created ECMP group. The ECMP includes the next hops corresponding to all Spine devices directly connected to this device.

[0082] In this embodiment, while sending the fault notification message, the data message will also be forwarded normally bypassing the faulty link. One implementation method of forwarding the data message is:

[0083] First, add a preset tag to the data message according to the second next hop;

[0084] In this embodiment, in order to enable the data packet to be forwarded to the target Leaf device through the second Spine device, a preset tag is added to the data packet before the data packet is forwarded to distinguish it from the processing of other data packets that are directly forwarded normally.

[0085] Secondly, determine the transit Leaf device from all other Leaf devices according to the preset tag;

[0086] In this embodiment, the switching chip of the first Spine device pre-issues an ACL (Access Control List) entry, which is used to match the forwarding action corresponding to the preset tag.

[0087] In this embodiment, the first Spine device is directly connected to multiple Leaf devices. The first Spine device pre-creates an ECMP (Equal-Cost Multi-Path Routing) group. Each ECMP member in the group is associated with a Leaf device, that is, the Leaf device associated with it can be reached through the first Spine device through the corresponding ECMP member.

[0088] One method for determining a transit Leaf device is to determine a transit Leaf device from each reachable Leaf device in a pre-created ECMP group according to a preset load sharing strategy by searching for a forwarding action corresponding to an access control list that matches a preset tag; the ECMP group includes all remaining Leaf devices in the plurality of Leaf devices except a target Leaf device.

[0089] Finally, the data packet is sent to the second Spine device through the transit Leaf device, and the data packet is sent to the target Leaf device through the second Spine device.

[0090] In this embodiment, in order to send a data message to the transit Leaf device, the IP address of the transit Leaf device needs to be used as the destination IP address. In order not to affect the normal sending of the data message, this embodiment encapsulates a layer of tunnel IP header outside the data message. The specific implementation method can be:

[0091] (1) Encapsulate the data message with a tunnel outer IP header, and use the IP address of the transit Leaf device as the destination IP address of the tunnel outer IP header to obtain a tunnel encapsulated message;

[0092] (2) Sending the tunnel encapsulated message to the transit Leaf device so that the transit Leaf device decapsulates the tunnel encapsulated message to obtain the data message;

[0093] (3) and sent to the target Leaf device through the second Spine device.

[0094] In this embodiment, in order to enable the transit Leaf device to send the data packet to the target Leaf device through the second Spine device, this embodiment provides an implementation method:

[0095] First, the switching chip of the transit Leaf device receives the tunnel encapsulation message. The tunnel encapsulation message is obtained after the first Spine device encapsulates the tunnel outer IP header for the data message and uses the IP address of the transit Leaf device as the destination IP address of the tunnel outer IP header.

[0096] Secondly, the switch chip of the transit Leaf device decapsulates the data message from the tunnel encapsulated message;

[0097] Finally, the switching chip of the transit Leaf device determines the second Spine device from the ECMP group according to the preset load sharing strategy, and sends it to the target Leaf device through the second Spine device.

[0098] In this embodiment, after receiving the fault notification message, the transit Leaf device has learned that the link between the first Spine device and the target Leaf device has failed. Therefore, the transit Leaf device will delete the next hop corresponding to the first Spine device in the local ECMP group and send the received data message through the second Spine device.

[0099] In this embodiment, the transit Leaf device removes the tunnel encapsulation of the data message received from the first Spine device and sends it to the second Spine device by pre-creating an ECMP (Equal-Cost Multi-PathRouting) group. After the data message arrives at the second Spine device, the second Spine device can send the data message to the target Leaf device by querying the routing table according to the destination IP address of the target Leaf device in the data message.

[0100] To more intuitively demonstrate the process of data packet forwarding, please refer to Figure 4 , Figure 4 This is an example diagram of packet bypass in the event of a fault in the intelligent computing scenario provided in this embodiment. Figure 4 In the example, GPU2 needs to send a data packet to GPU1. The data packet sent by GPU2 passes through Leaf2 and reaches Spine1. Spine1 detects that the link between it and Leaf1 is faulty, adds a preset tag to the data packet, selects an ECMP member based on the preset tag, encapsulates the data packet with the outer IP header of the tunnel, and sends it to Leaf2. After Leaf2 decapsulates the outermost IP header of the tunnel, it sends the data packet to Spine2, which sends the data packet to Leaf1 through Spine2 and finally reaches GPU1.

[0101] In this embodiment, as a specific implementation method, in order to realize the simultaneous forwarding of fault notification messages and data messages, the first Spine device pre-creates an aps (automatic protection switch) group for each Leaf device connected to it, and the aps group of each Leaf device includes two paths: a main path and a backup path group. The main path is a path consisting of the next hop to the corresponding Leaf device. When the link is normal, the data message is sent through the main path. The backup path group belongs to the multicast group. When a link failure occurs in the main path, the first next hop in the backup path group is used to handle the fault, and the second next hop in the backup path group is used to forward the data message in a roundabout way.

[0102] In this embodiment, two eloop ports (egress loop, egress loop port): the first eloop port and the second eloop port, and two iloop ports (ingress loop, entry loop port): the first iloop port and the second iloop port are created on the first spine device. A first next hop pointing to the first eloop port (i.e., the first next hop of the backup path group) is created, and the first iloop port is associated with the first eloop port. A second next hop pointing to the second eloop port (i.e., the second next hop of the backup path group) is created, and the second iloop port is associated with the second eloop port.

[0103] When a link failure occurs on the primary path, the data message will be sent to the first eloop port and the second eloop port at the same time.

[0104] For an example of the overall process described above, please refer to Figure 5 , Figure 5 This is an example diagram of the overall processing process of the intelligent computing scenario failure provided in this embodiment. Figure 5 In the example, the aps group created by the first Spine device for Leaf-x (target Leaf device) is processed as follows for the data packets sent to the first eloop port:

[0105] (1) The first spine device edits the data message and obtains a fault notification message carrying the fault link information;

[0106] (2) sending the fault notification message to the first iloop port through the first eloop port at a preset rate limit;

[0107] In this embodiment, a speed limit hardware entry of a QoS (Quality of Service) policy with a preset rate can be bound to the first eloop port. The preset rate can be set according to the needs of the actual scenario. For example, the preset rate is set to 1PPS (Packets Per Second).

[0108] (3) The fault notification message is sent to each of the remaining Leaf devices through the multicast group cross-connected by the first iloop port.

[0109] In this embodiment, in order to send the fault notification message to each remaining Leaf device, a multicast group is established on the first Spine device, each member in the multicast group is associated with each remaining Leaf device, and the first iloop port is cross-connected to the multicast group. The specific implementation method can be: forwarding the fault notification message to the multicast group through the first iloop port, so as to send it to each remaining Leaf device through each member in the multicast group. Figure 5 In the process, the first Spine device edits the data message to obtain the fault notification message, sends it to the first iloop port through speed limiting, and the first iloop port sends it to multicast group 2 in a cross-connect manner. Multicast group 2 includes n members from Leaf-1 to Leaf-n, and each member reaches a Leaf device. Thus, the fault notification message is sent to all Leaf devices with normal links connected to the Spine device.

[0110] For data packets sent to the second eloop port, the processing method is as follows:

[0111] (1) Add a LogicPort tag to the data message as a preset tag;

[0112] (2) sending the data message with the preset tag to the second eloop port, and then sending it to the second iloop port through the second eloop port;

[0113] (3) By sending an access control list item matching the preset tag to the second iloop port, the action is to redirect to the ECMP group and determine the transit Leaf device from all the remaining Leaf devices according to the preset load sharing strategy;

[0114] In this embodiment, the second iloop port is pre-set with a forwarding action corresponding to a preset tag. As an implementation method, the Spine device can send an ACL table entry to the second iloop port, which is used to match the forwarding action corresponding to the logicPort tag. The forwarding action is to redirect to the ECMP group.

[0115] Through the preset forwarding action of the matching ACL table entry, the target ECMP member is selected from all ECMP members in the ECMP group according to the preset load sharing strategy, and the next hop corresponding to the target ECMP member reaches the transit Leaf device.

[0116] (4) The data packet is sent to the second Spine device through the transit Leaf device, and the data packet is sent to the target Leaf device through the second Spine device.

[0117] Figure 5It is shown that the traffic received by the first Spine device that needs to be sent to Leaf-x is forwarded roughly evenly through the Leaf-1 to Leaf-k members in the ECMP group, and is sent to the transit Leaf device through the encapsulation tunnel outer IP header. The transit Leaf device decapsulates the original data packet and forwards it to the second Spine device. The second Spine device sends the data packet to Leaf-x by looking up the routing table, completing the detour forwarding of the data packet.

[0118] In this embodiment, in addition to the Spine device being able to detect the link failure between the Leaf device and the Leaf device, the Leaf device can also detect the failure between the Leaf device and the Spine device. At this time, the Leaf device will also perform corresponding processing. One processing method is: the Leaf device creates an ECMP group, each member of the ECMP group is the next hop of the Spine device connected to the Leaf device, and the ECMP group is pre-set to enable failover, that is, when the link between the Leaf device and a Spine device fails, the traffic of the failed link will be loaded to one of the remaining Spine devices. For example, Figure 1 In the example, when the link between Leaf1 and Spine1 fails, the traffic originally loaded to Spine1 will be loaded to other Spines (such as Spine2), and the egress of other traffic loads will not change. If there is still a link between Leaf1 and Spine3, the traffic load of Spine3 will not be affected, and the traffic of Spine1 will only be loaded to Spine2.

[0119] In order to execute the corresponding steps of the above embodiment and each possible implementation mode applied to the first Spine device switching chip, a method for implementing the message sending device 100 is given below. Figure 6 , Figure 6 The block diagram of the message sending device provided in this embodiment, the message sending device 100 is applied to the switching chip of the first Spine device in this embodiment. It should be noted that the basic principle and technical effect of the message sending device 100 provided by the present invention are the same as those of the corresponding above-mentioned embodiments, and are not mentioned in this embodiment for the sake of brief description.

[0120] The message sending device 100 includes a receiving module 110 and a fault detection module 120 .

[0121] The receiving module 110 is used to receive a data message, where the data message is a message to be forwarded by a target Leaf device among the multiple Leaf devices;

[0122] The fault detection module 120 is used to notify the sending module 130 when a direct link failure between the target Leaf device and the target Leaf device is detected;

[0123] The sending module 130 is used to send the fault notification message generated according to the data message to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group according to the notification of the fault detection module 120, and send the data message to the transit Leaf device through the second next hop in the backup path group to reach the second Spine device through the transit Leaf device, and send the data message to the target Leaf device for forwarding through the second Spine device.

[0124] In an optional implementation manner, the sending module 130 is specifically configured to:

[0125] According to the first next hop, the data message is edited to obtain the fault notification message carrying the fault link information;

[0126] The fault notification message is forwarded to a pre-created multicast group at a preset rate limit so as to be received by each remaining Leaf device; wherein the multicast group includes each Leaf device in the plurality of Leaf devices.

[0127] In an optional implementation manner, when the sending module 130 is used to edit the data message and obtain the fault notification message carrying the fault link information, it is specifically used to:

[0128] Modify the source MAC address of the data message to the MAC address of the first Spine device, modify the destination MAC address of the data message to the MAC address of the target Leaf device, and modify the Ethernet type of the data message to a custom value, so that any remaining Leaf device that receives the fault notification message can determine the direct link failure between the first Spine device and the target Leaf device based on the source and destination MAC addresses and Ethernet type values.

[0129] In an optional implementation manner, when the sending module 130 is used to send the data message to the transit Leaf device through the second next hop in the backup path group, it is specifically used to:

[0130] According to the second next hop, a preset tag is added to the data message;

[0131] Determine the relay Leaf device from all other Leaf devices according to the preset tag;

[0132] The data packet is sent to the second Spine device through the transit Leaf device, and the data packet is sent to the target Leaf device through the second Spine device.

[0133] In an optional implementation manner, when the sending module 130 is used to determine the transit Leaf device from all other Leaf devices according to the preset tag, it is specifically used to:

[0134] By searching for the forwarding action corresponding to the access control list matching the preset tag, the transit Leaf device is determined from each reachable Leaf device in the pre-created ECMP group according to the preset load sharing strategy; the ECMP group includes all the remaining Leaf devices except the target Leaf device among the multiple Leaf devices.

[0135] In an optional implementation manner, when the sending module 130 is used to send the data message to the second Spine device through the transit Leaf device, and send the data message to the target Leaf device through the second Spine device, it is specifically used to:

[0136] Encapsulate the data message with a tunnel outer IP header, and use the IP address of the transit Leaf device as the destination IP address of the tunnel outer IP header to obtain a tunnel encapsulated message;

[0137] The tunnel encapsulated message is sent to the transit Leaf device, so that the transit Leaf device decapsulates the data message from the tunnel encapsulated message and sends it to the target Leaf device through the second Spine device.

[0138] In this embodiment, in order to execute the corresponding steps applied to the Leaf device in the above embodiment and various possible implementation modes, this embodiment provides an implementation method of the Leaf device:

[0139] A switching chip of a Leaf device, configured to receive a fault notification message sent by a first Spine device, wherein the fault notification message is sent by the first Spine device when a direct link failure between the first Spine device and a target Leaf device is detected;

[0140] The switching chip of the leaf device is also used to search for an access control list that matches the Ethernet type of the fault notification message, and send the fault notification message to the CPU of the leaf device according to the forwarding action corresponding to the access control list;

[0141] The CPU of the Leaf device is used to determine the failure of the direct link between the first Spine device and the target Leaf device based on the source MAC address and destination MAC address of the fault notification message, and notify the switching chip to delete the next hop corresponding to the first Spine device from the pre-created ECMP group.

[0142] The switching chip of the Leaf device is also used to delete the next hop corresponding to the first Spine device from the pre-created ECMP group, and the ECMP includes the next hops corresponding to all Spine devices directly connected to this device.

[0143] In an optional implementation, the switching chip of the Leaf device is also used to receive the tunnel encapsulated message sent by the first Spine device through the IP tunnel, decapsulate the data message from the tunnel encapsulated message, determine the second Spine device from the ECMP group according to a preset load sharing strategy, and send it to the target Leaf device through the second Spine device.

[0144] An embodiment of the present invention provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the message sending method applied to the first Spine device in the aforementioned implementation manner is implemented.

[0145] In summary, an embodiment of the present invention provides a message sending method, apparatus, Spine device, Leaf device and computer-readable storage medium, which is applied to a switching chip of a first Spine device in an intelligent computing network, wherein the first Spine device is directly connected to multiple Leaf devices, and a backup path group for a direct link from the first Spine device to each Leaf device is provided in the switching chip, and the method includes: receiving a data message, wherein the data message is a message to be forwarded through a target Leaf device among multiple Leaf devices; when a direct link failure between the target Leaf device and the target Leaf device is detected, a fault notification message is sent to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group, and the data message is sent to the transit Leaf device through the second next hop in the backup path group, so as to reach the second Spine device through the transit Leaf device, and the data message is sent to the target Leaf device for forwarding through the second Spine device. Compared with the prior art, this embodiment has at least the following advantages: (1) by sending the data packet to the transit Leaf device, then reaching the second Spine device through the transit Leaf device, and sending the data packet to the target Leaf device through the second Spine device, the normal sending of the data packet is achieved by bypassing the faulty link, thereby avoiding the long fault convergence time caused by relying on the control plane to handle the fault through the routing protocol when the link fails, shortening the fault convergence time and improving the convergence performance; (2) the timely sending of the fault notification message and the detour sending of the data message are achieved through two different paths respectively. On the one hand, it can promptly notify other Leaf devices to remove the faulty link, and on the other hand, it ensures the timely and normal forwarding of the data message, further reducing the fault convergence time; (3) when sending the fault notification message, the speed is limited to avoid the fault notification message occupying too much bandwidth of the data message.

[0146] The above are only various embodiments of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.

Claims

1. A message sending method, characterized in that: A switching chip applied to a first Spine device in an intelligent computing network, wherein the first Spine device is directly connected to a plurality of Leaf devices, and a backup path group of a direct link from the first Spine device to each of the Leaf devices is provided in the switching chip, and the method includes: receiving a data message, where the data message is a message to be forwarded by a target Leaf device among the multiple Leaf devices; When a direct link failure between the target Leaf device and the target Leaf device is detected, a fault notification message generated based on the data message is sent to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group, and the data message is sent to the transit Leaf device through the second next hop in the backup path group to reach the second Spine device through the transit Leaf device, and the data message is sent to the target Leaf device for forwarding through the second Spine device.

2. The message sending method according to claim 1, characterized in that: The step of sending the fault notification message to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group includes: According to the first next hop, the data message is edited to obtain the fault notification message carrying the fault link information; The fault notification message is forwarded to a pre-created multicast group at a preset rate limit so as to be received by each remaining Leaf device; wherein the multicast group includes each Leaf device in the plurality of Leaf devices.

3. The message sending method according to claim 2, characterized in that: The step of editing the data message to obtain the fault notification message carrying the fault link information includes: Modify the source MAC address of the data packet to the MAC address of the first Spine device, modify the destination MAC address of the data packet to the MAC address of the target Leaf device, and modify the Ethernet type of the data packet to a custom value, so that any of the remaining Leaf devices that receive the fault notification message can determine the direct link failure between the first Spine device and the target Leaf device based on the source and destination MAC addresses and the Ethernet type.

4. The message sending method according to claim 1, characterized in that: The step of sending the data message to the transit Leaf device through the second next hop in the backup path group includes: According to the second next hop, adding a preset tag to the data message; Determine a transfer Leaf device from all other Leaf devices according to the preset mark; The data packet is sent to the second Spine device through the transit Leaf device, and the data packet is sent to the target Leaf device through the second Spine device.

5. The message sending method according to claim 4, characterized in that: The step of determining the transfer Leaf device from all other Leaf devices according to the preset mark includes: By searching for the forwarding action corresponding to the access control list matching the preset tag, the transit Leaf device is determined from each reachable Leaf device in the pre-created ECMP group according to the preset load sharing strategy; the ECMP group includes all remaining Leaf devices among the multiple Leaf devices except the target Leaf device.

6. The message sending method according to claim 4, characterized in that: The step of sending the data message to the second Spine device through the transit Leaf device, and sending the data message to the target Leaf device through the second Spine device includes: Encapsulate the data message with a tunnel outer IP header, and use the IP address of the transit Leaf device as the destination IP address of the tunnel outer IP header to obtain a tunnel encapsulated message; The tunnel encapsulation message is sent to the transit Leaf device, so that the transit Leaf device decapsulates the data message from the tunnel encapsulation message and sends it to the target Leaf device through the second Spine device.

7. A message sending method, characterized in that: Applied to any Leaf device directly connected to a first Spine device in an intelligent computing network, the first Spine device is directly connected to multiple Leaf devices, the Leaf device includes a switching chip and a CPU, and the method includes: The switching chip receives a fault notification message sent by the first Spine device, wherein the fault notification message is sent by the first Spine device when a direct link failure between the first Spine device and a target Leaf device is detected; The switching chip searches for an access control list that matches the Ethernet type of the fault notification message, and sends the fault notification message to the CPU according to a forwarding action corresponding to the access control list; The CPU determines the failure of the direct link between the first Spine device and the target Leaf device based on the source MAC address and the destination MAC address of the fault notification message, and notifies the switching chip to delete the next hop corresponding to the first Spine device from the pre-created ECMP group, where the ECMP includes the next hops corresponding to all Spine devices directly connected to this device.

8. The message sending method according to claim 7, characterized in that: The method further comprises: The switching chip receives the tunnel encapsulation message sent by the first Spine device through the IP tunnel, decapsulates the data message from the tunnel encapsulation message, determines the second Spine device from the ECMP group according to a preset load sharing strategy, and sends it to the target Leaf device through the second Spine device.

9. A message sending device, characterized in that: A switching chip applied to a first Spine device in an intelligent computing network, wherein the first Spine device is directly connected to a plurality of Leaf devices, and a backup path group for a direct link from the first Spine device to each of the Leaf devices is provided in the switching chip, wherein the device comprises: A receiving module, used to receive a data message, wherein the data message is a message to be forwarded by a target Leaf device among the multiple Leaf devices; A fault detection module, configured to notify the sending module when a direct link failure with the target Leaf device is detected; The sending module is used to send the fault notification message generated according to the data message to the remaining Leaf devices except the target Leaf device through the first next hop in the backup path group according to the notification of the fault detection module, and send the data message to the transit Leaf device through the second next hop in the backup path group to reach the second Spine device through the transit Leaf device, and send the data message to the target Leaf device for forwarding through the second Spine device.

10. A Spine device, characterized in that: The method comprises a processor and a switching chip, wherein the switching chip implements the message sending method according to any one of claims 1 to 6 under the control of the processor.

11. A Leaf device, characterized in that: The Leaf device is directly connected to the first Spine device, and the Leaf device includes a switching chip and a CPU; The switching chip is used to receive a fault notification message sent by the first Spine device, wherein the fault notification message is sent by the first Spine device when a direct link failure between the first Spine device and a target Leaf device is detected; The switching chip is further used to search for an access control list that matches the Ethernet type of the fault notification message, and send the fault notification message to the CPU according to a forwarding action corresponding to the access control list; The CPU is used to determine the direct link failure between the first Spine device and the target Leaf device based on the source MAC address and destination MAC address of the fault notification message, and notify the switching chip to delete the next hop corresponding to the first Spine device from the pre-created ECMP group, where the ECMP includes the next hops corresponding to all Spine devices directly connected to this device.

12. A computer-readable storage medium, characterized in that: A computer program is stored thereon, and when the computer program is executed by a processor, the message sending method according to any one of claims 1 to 6 is implemented.

Citation Information

Patent Citations

  • Looped network routing method and looped network node

    CN101272352A

  • Method and system for accelerating convergence of media access control (MAC) address

    CN107483312A

  • Load balancing method, device and system

    CN114024969A

  • Method and device for processing network fault

    CN118368213A

  • Link fault automatic switching implementation method and device, network equipment and readable storage medium

    CN118972238A

Cited By

  • Equivalent link switching method, device and system

    CN120528861A