Message transmission method, device, equipment, system and storage medium
By setting blocking loop breaking points in the ring network and encapsulating the outer tunnel message header, the packet loss problem caused by broadcast storms and network failures in the ring network is solved, and the effect of fast path switching and packet loss is achieved.
Patent Information
- Application Number
- CN202311050704.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-18
- Publication Date
- 2025-02-21
AI Technical Summary
The issue of broadcast storms in the ring network and packet loss caused by network failures.
Set up blocking and breaking points in the ring network, and encapsulate the outer tunnel message header when a network failure occurs, so that the messages can be quickly switched to the tunnel transmission, avoiding blocking of the blocking and breaking points.
It realizes faster loop path switching, reduces packet loss caused by network failure, and reduces the impact of network failure on service performance.
Smart Images

Figure CN119496673A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a message transmission method, device, equipment, system and storage medium. Background Art
[0002] With the development of communication technology, the phenomenon of ring networks in network topology is becoming more and more common. Among them, a ring network refers to a network with a ring topology composed of multiple network devices, and a ring network can be referred to as a ring network. Since the network device processes broadcast messages by copying and spreading the broadcast messages to all other interfaces except the interface that receives the broadcast messages, the broadcast messages entering the ring network will be continuously copied and spread by all network devices in the ring network, resulting in a large number of broadcast messages in the entire ring network in a very short time, occupying a large amount of bandwidth and processing resources of network devices. The above process is a broadcast storm. Therefore, the ring network path switching technology is applied to avoid the occurrence of broadcast storms in the ring network.
[0003] The ring network path switching technology is to set a blocking breaking point in the ring network when the ring network is in a fault-free state. The blocking breaking point is used to block the transmission of messages to avoid the generation of broadcast storms. When a network failure is found in the ring network, the function of the blocking breaking point is turned off so that messages can be transmitted at the blocking breaking point, and the network failure is notified in the ring network. According to the network failure, the forwarding table entries on each network device in the ring network are refreshed. The refreshed forwarding table entries are used to switch the messages affected by the failure to the backup path for transmission. The backup path is the path including the blocking breaking point.
[0004] However, since the ring network path switching technology requires the fault discovery time, fault message notification time, and network equipment table refresh time before the affected messages can be switched to the backup path for transmission, that is to say, before the path switching is realized, the affected messages will still be transmitted according to the forwarding table entries before the refresh, which will lead to the loss of the affected messages. Summary of the invention
[0005] The present application provides a message transmission method, apparatus, device, system and storage medium for transmitting messages based on a tunnel in a ring network where a network failure occurs.
[0006] In a first aspect, a message transmission method is provided. Taking a first network device executing the method as an example, when a network failure occurs in a ring network, the first network device receives a first message, the first network device is any network device in the ring network that is adjacent to the location where the network failure occurs, and the ring network includes a blocking breaking point for blocking message transmission; the first message is encapsulated with a first outer tunnel message header to obtain a second message, the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point; the second message is transmitted based on the first tunnel.
[0007] In the case of a network failure in the ring network, the method enables the first message to be quickly switched to the first tunnel for transmission by encapsulating the first outer tunnel message header, so that the first message is not affected by the network failure. Since the first tunnel is not blocked by the blocking point in the ring network, the first message can cross the blocking point. Compared with the path switching method of fault notification and refreshing the forwarding table, the fault message notification time and the network device table refresh time are saved, and a faster ring network path switching is achieved, and the message packet loss caused by the network failure is reduced, thereby effectively reducing the impact of the network failure on the service performance.
[0008] In a possible implementation, each port between the first network device and the blocking loop point is configured with a first tunnel, or each port of each network device in the ring network is configured with a first tunnel; transmitting the second message based on the first tunnel includes: transmitting the second message to the second network device corresponding to the blocking loop point based on the first tunnel, and the second network device is used to decapsulate the first outer tunnel message header of the second message to obtain the first message. Thus, the first message exits the first tunnel through the second network device, so that the first message transmitted based on the first tunnel is not affected by the network failure, and can cross the blocking loop point, thereby avoiding the packet loss of the first message due to the network failure.
[0009] In a possible implementation, each port of each network device in the ring network is configured with a first tunnel, or each port from the first network device through the blocking loop point to the third network device is configured with a first tunnel, and the third network device is another network device in the ring network adjacent to the location where the network failure occurs; the second message is transmitted based on the first tunnel, including: the second message is transmitted to the third network device through the blocking loop point based on the first tunnel, and the third network device is used to decapsulate the first outer tunnel message header of the second message to obtain the first message. As a result, the first message exits the first tunnel through the third network device, so that the first message transmitted based on the first tunnel is not affected by the network failure, and can cross the blocking loop point, thereby avoiding the packet loss of the first message due to the network failure.
[0010] In a possible implementation, the first network device also receives a third message encapsulated with a second outer tunnel message header, the second outer tunnel message header indicates that the third message is transmitted based on the second tunnel, and the message transmitted by the second tunnel is not blocked by the blocking breaking point; when the second outer tunnel message header carries the marking information, the second outer tunnel message header is decapsulated for the third message to obtain a fourth message, and the fourth message is transmitted, and the marking information indicates that the third message passes through the blocking breaking point; when the second outer tunnel message header does not carry the marking information, the third message is discarded. The marking information allows the first network device to identify messages that have not passed through the blocking breaking point and are encapsulated with the outer tunnel message header. The encapsulation of the outer tunnel message header indicates that there is a network failure in the direction of receiving the message, and the first network device, as a network device adjacent to the location where the network failure occurs, indicates that there is also a network failure in the direction of sending the message. Therefore, if the first network device does not discard the third message, the third message will be sent cyclically in the ring network.
[0011] In a second aspect, a message transmission method is provided. Taking a second network device executing the method as an example, the second network device receives a second message sent by a first network device. The first network device is any network device in a ring network that is adjacent to the location where a network failure occurs. The ring network includes a blocking breaking point for blocking message transmission. The second network device is a network device corresponding to the blocking breaking point. The second message is encapsulated with a first outer tunnel message header. The first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point. When the first tunnel is configured on each port between the first network device and the blocking breaking point, the first outer tunnel message header is decapsulated from the second message to obtain the first message. The first message is transmitted.
[0012] In the event of a network failure in a ring network, the method enables a first message affected by the failure to be transmitted in reverse to a second network device based on the first tunnel, and exit the first tunnel through the second network device, so that the first message is not affected by the network failure and can cross the blocking loop point, thereby avoiding packet loss of the first message due to the network failure.
[0013] In a possible implementation, after the second network device receives the second message sent by the first network device, in the case where each port of each network device in the ring network is configured with the first tunnel, or in the case where each port between the first network device and the third network device in the ring network is configured with the first tunnel, the second network device adds marking information to the first outer tunnel message header to obtain a fifth message, wherein the marking information indicates that the fifth message passes through the blocking breaking point, and the third network device is another network device in the ring network adjacent to the location where the network failure occurs; and transmits the fifth message. The marking information enables the third network device to identify messages that have not passed through the blocking breaking point and are encapsulated with the outer tunnel message header. The encapsulation of the outer tunnel message header indicates that there is a network failure in the direction of receiving the message, and the first network device, as a network device adjacent to the location where the network failure occurs, indicates that there is also a network failure in the direction of sending the message. Therefore, if the first network device does not discard the second message, the second message will be sent cyclically in the ring network.
[0014] In any possible implementation of the first aspect and the second aspect, before a network failure occurs in the ring network, configuration information of the first tunnel issued by the control device is also received, and the configuration information of the first tunnel is used to transmit messages based on the first tunnel; or, in the event of a network failure in the ring network, configuration information of the first tunnel issued by the control device is also received.
[0015] In a third aspect, a message transmission device is provided, which includes: a transceiver module for performing reception and / or transmission related operations performed by a first network device in the first aspect or any possible implementation of the first aspect; a processing module for performing other operations in addition to the reception and / or transmission related operations performed by the first network device in the first aspect or any possible implementation of the first aspect.
[0016] In a possible implementation, the transceiver module includes a receiving module and / or a sending module. The receiving module is used to perform reception-related operations, and the sending module is used to perform sending-related operations.
[0017] In one possible implementation, a transceiver module is used to receive a first message when a network failure occurs in a ring network, wherein the first network device is any network device in the ring network that is adjacent to the location where the network failure occurs, and the ring network includes a blocking breaking point for blocking message transmission; a processing module is used to encapsulate a first outer tunnel message header for the first message to obtain a second message, wherein the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point; the transceiver module is also used to transmit the second message based on the first tunnel.
[0018] In one possible implementation, each port between the first network device and the blocking loop breaking point is configured with a first tunnel, or each port of each network device in the ring network is configured with a first tunnel; the transceiver module is used to transmit a second message to a second network device corresponding to the blocking loop breaking point based on the first tunnel, and the second network device is used to decapsulate the first outer tunnel message header of the second message to obtain the first message.
[0019] In a possible implementation, each port of each network device in the ring network is configured with a first tunnel, or each port from the first network device through a blocking loop-breaking point to a third network device is configured with a first tunnel, and the third network device is another network device in the ring network adjacent to the location where the network failure occurs; the transceiver module is used to transmit a second message to the third network device through the blocking loop-breaking point based on the first tunnel, and the third network device is used to decapsulate the first outer tunnel message header of the second message to obtain the first message.
[0020] In one possible implementation, the transceiver module is also used to receive a third message encapsulated with a second outer tunnel message header, the second outer tunnel message header indicates that the third message is transmitted based on the second tunnel, and the message transmitted by the second tunnel is not blocked by the blocking breaking point; the processing module is also used to decapsulate the second outer tunnel message header of the third message when the second outer tunnel message header carries marking information, to obtain a fourth message, the marking information indicates that the third message passes through the blocking breaking point; the transceiver module is also used to transmit the fourth message.
[0021] In a possible implementation manner, the processing module is further configured to discard the third message when the second outer tunnel message header does not carry the marking information.
[0022] In a fourth aspect, a message transmission device is provided, which includes: a transceiver module for performing reception and / or sending related operations performed by the second network device in the second aspect or any possible implementation manner of the second aspect; a processing module for performing other operations other than the reception and / or sending related operations performed by the second network device in the second aspect or any possible implementation manner of the second aspect.
[0023] In a possible implementation, the transceiver module includes a receiving module and / or a sending module. The receiving module is used to perform reception-related operations, and the sending module is used to perform sending-related operations.
[0024] In one possible implementation, a transceiver module is used to receive a second message sent by a first network device, the first network device is any network device in a ring network that is adjacent to a location where a network failure occurs, the ring network includes a blocking breaking point for blocking message transmission, the second network device is a network device corresponding to the blocking breaking point, the second message is encapsulated with a first outer tunnel message header, the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point; the processing module is used to decapsulate the first outer tunnel message header of the second message to obtain a first message when each port between the first network device and the blocking breaking point is configured with a first tunnel; the transceiver module is also used to transmit the first message.
[0025] In one possible implementation, the processing module is also used to add marking information to the first outer tunnel message header to obtain a fifth message when the first tunnel is configured on each port of each network device in the ring network, or when the first tunnel is configured on each port between the first network device and the third network device through a blocking loop breaking point in the ring network, wherein the marking information indicates that the fifth message passes through the blocking loop breaking point, and the third network device is another network device in the ring network adjacent to the location where the network failure occurs; the transceiver module is also used to transmit the fifth message.
[0026] In any possible implementation of the third aspect and the fourth aspect, the transceiver module is also used to receive configuration information of the first tunnel issued by the control device before a network failure occurs in the ring network, and the configuration information of the first tunnel is used to transmit messages based on the first tunnel; or, it is also used to receive configuration information of the first tunnel issued by the control device in the event of a network failure in the ring network.
[0027] In a fifth aspect, a network device is provided, comprising: a processor, the processor being coupled to a memory, the memory storing at least one program instruction or code, the at least one program instruction or code being loaded and executed by the processor, so that the network device implements the message transmission method as described in any one of the first aspect or the second aspect above.
[0028] Optionally, the number of the processors is one or more, and the number of the memories is one or more.
[0029] Optionally, the memory may be integrated with the processor, or the memory may be provided separately from the processor.
[0030] In the specific implementation process, the memory can be a non-transitory memory, such as a read-only memory (ROM), which can be integrated with the processor on the same chip or can be set on different chips. This application does not limit the type of memory and the setting method of the memory and the processor.
[0031] In a sixth aspect, a message transmission system is provided, the message transmission system comprising a first network device and a second network device;
[0032] The first network device is used to execute the method described in the first aspect or any possible implementation of the first aspect, and the second network device is used to execute the method described in the second aspect or any possible implementation of the second aspect.
[0033] In the seventh aspect, a computer-readable storage medium is provided, wherein the storage medium stores at least one instruction, and the instruction is loaded and executed by a processor so that a computer implements the method in the above-mentioned first aspect or any possible implementation of the first aspect, or implements the above-mentioned second aspect or any possible implementation of the second aspect.
[0034] In an eighth aspect, a computer program (product) is provided, wherein the computer program (product) comprises: a computer program code, and when the computer program code is executed by a computer, the computer executes the methods in the above aspects.
[0035] In a ninth aspect, a chip is provided, comprising a processor for calling and executing instructions stored in a memory from the memory, so that a communication device equipped with the chip executes the methods in the above aspects.
[0036] In the tenth aspect, another chip is provided, comprising: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, and the processor is used to execute the code in the memory. When the code is executed, the processor is used to execute the methods in the above aspects.
[0037] It should be understood that the beneficial effects achieved by the technical solutions of the third to tenth aspects of the present application and the corresponding possible implementation methods can be referred to the technical effects of the first and second aspects and their corresponding possible implementation methods mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 A schematic diagram of a ring network transmission message provided in an embodiment of the present application;
[0039] Figure 2 A flowchart of a message transmission method provided in an embodiment of the present application;
[0040] Figure 3 A schematic diagram of a ring network tunnel configuration provided in an embodiment of the present application;
[0041] Figure 4 A schematic diagram of another ring network tunnel configuration provided in an embodiment of the present application;
[0042] Figure 5 A schematic diagram of another ring network tunnel configuration provided in an embodiment of the present application;
[0043] Figure 6 A schematic diagram of a ring network message transmission provided in an embodiment of the present application;
[0044] Figure 7 A schematic diagram of another ring network message transmission provided in an embodiment of the present application;
[0045] Figure 8 A flowchart of another message transmission method provided in an embodiment of the present application;
[0046] Fig. 9 An interactive schematic diagram of a message transmission method provided in an embodiment of the present application;
[0047] Fig.10 A schematic diagram of the structure of a message transmission device provided in an embodiment of the present application;
[0048] Fig.11 A schematic diagram of the structure of a network device provided in an embodiment of the present application;
[0049] Fig.12 A schematic diagram of the structure of another network device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0050] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below with reference to the accompanying drawings.
[0051] As the application of ring networks becomes more and more widespread, it is necessary to provide a method for transmitting messages in a ring network to avoid the generation of broadcast storms in the ring network. Figure 1In the schematic diagram of the ring network transmission message shown in FIG, a blocking point is set between network device E and network device D. The blocking point is used to block the transmission of the message, that is, to avoid the generation of a broadcast storm in the ring network. For example, for a broadcast message, if the broadcast message is not transmitted to the blocking point, it will be discarded, and the network devices in the ring network will not infinitely copy and spread the broadcast message, thus avoiding the generation of a broadcast storm.
[0052] like Figure 1 As shown, for the data flow sent from network device A to network device C, when the ring network is fault-free, the data flow is transmitted from network device A to network device C via network device B; if a fault occurs in the link between network device B and network device C, the transmission of the data flow will be affected by the fault and cause packet loss; then, the function of blocking the ring breaking point in the ring network is turned off, that is, the blocking ring breaking point is opened, and the data flow is switched to the backup path for transmission, that is, the data flow is transmitted from network device A to network device C via network device E and network device D, effectively avoiding packet loss caused by ring network faults.
[0053] Among them, the ring network path switching technology includes but is not limited to Ethernet ring protection switching (ERPS) technology, media redundancy protocol (MRP) and distributed redundancy protocol (DRP). No matter which ring network path switching technology is used, it is necessary to switch the messages affected by the fault to the backup path for transmission after the fault discovery time, fault message notification time and network equipment table refresh time. In other words, before the ring network path switching is realized, the messages affected by the fault will still be transmitted according to the forwarding table items before the refresh, which will lead to the loss of the messages affected by the fault.
[0054] An embodiment of the present application provides a message transmission method. On the basis that a ring network includes a blocking breaking point for blocking message transmission, a tunnel required for ring network path switching is established so that when a fault occurs, the message affected by the fault is directly switched to the tunnel for transmission, thereby avoiding the generation of a ring network broadcast storm, saving the fault message notification time and the network equipment table refresh time, compressing the time required for the ring network path switching to the fault discovery time, shortening the time required for the ring network path switching, and reducing the impact of the ring network fault on the service performance.
[0055] The message transmission method provided in the embodiment of the present application can be applied to any network device group ring network scenario, including but not limited to the access layer ring network, aggregation layer ring network or core layer ring network of the local area network; the access layer ring network, aggregation layer ring network or core layer ring network of the metropolitan area network; the access layer ring network, aggregation layer ring network or core layer ring network of the backbone network. Optionally, the network device includes a switch or a router, etc. Optionally, the subject executing the message transmission method can be a network device, or a part of the components on the network device, such as a single board or line card on the network device, or a functional module on the network device, or a chip for implementing the method. The embodiment of the present application does not specifically limit the subject executing the method.
[0056] See also Figure 2 , Figure 2 The flowchart of a message transmission method provided in an embodiment of the present application. Taking the first network device executing the method as an example, the first network device can be any network device in the ring network. Figure 2 As shown, the message transmission method includes but is not limited to the following steps 201 to 203.
[0057] Step 201, when a network failure occurs in a ring network, a first network device receives a first message, the first network device is any network device in the ring network adjacent to the location where the network failure occurs, and the ring network includes a blocking point for blocking message transmission.
[0058] In an embodiment of the present application, the ring network includes a blocking loop-breaking point for blocking message transmission, and the generation of a ring network broadcast storm can be avoided by blocking the loop-breaking point. The setting of the blocking loop-breaking point can refer to the relevant description in ERPS, MRP or DRP, and the embodiments of the present application will not be repeated. For example, the blocking loop-breaking point can be manually configured in the ring network, or the blocking loop-breaking point can be self-negotiated by each network device in the ring network. The number of blocking loop-breaking points can be one or more, which is not limited in the embodiments of the present application.
[0059] The type of network failure is not limited in the present embodiment, and the network failure includes but is not limited to port failure, link failure, software configuration failure, etc. When the network failure is a link failure, the location where the network failure occurs is the link between two network devices, and the network devices adjacent to the location where the network failure occurs are the two network devices connected by the link, for example, Figure 1 The network device B and the network device C shown in the figure; when the network fault is a software configuration fault, the location where the network fault occurs is the network device itself, and the network devices adjacent to the location where the network fault occurs are the two network devices connected to the failed network device respectively, Figure 1For example, if network device B fails, the network devices adjacent to the location where the failure occurs include network device A and network device C.
[0060] Since the first network device is adjacent to the location where the network fault occurs, the first network device can quickly sense the occurrence of the fault. The embodiment of the present application does not limit the method by which the first network device senses the fault. For example, the first network device senses the fault based on the link status or port status, or the first network device senses the fault by sending a detection message to an adjacent network device and based on the feedback of the adjacent network device to the detection message. Optionally, the first network device may be a first message sent by an end-side device or a network device outside the receiving ring network, and the first network device is the entry point of the first message; the first network device may also be a first message sent by a network device in the receiving ring network.
[0061] Step 202: The first network device encapsulates the first message with a first outer tunnel message header to obtain a second message. The first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted through the first tunnel is not blocked by the blocking loop point.
[0062] Since a network failure occurs in the ring network, and the first network device is adjacent to the location where the network failure occurs, if the first network device continues to send the first message according to the original forwarding table entry after receiving the first message, the first message will be lost due to the network failure. In an embodiment of the present application, the first network device encapsulates the first message with a first outer tunnel message header, and switches the transmission path of the first message to the first tunnel through the first outer tunnel message header, and the first tunnel is not affected by the blocking breaking point. Among them, the first tunnel is not affected by the blocking breaking point means that the first tunnel is configured at the port at the blocking breaking point, that is, when the port at the blocking breaking point receives the second message encapsulating the first outer tunnel message header, because the routing information of the first tunnel is configured, the second message can be forwarded through the first tunnel according to the routing information of the first tunnel, and will not be discarded due to the configuration of the blocking breaking point. Therefore, the method can achieve fast path switching without waiting for fault notification and refreshing the forwarding table, shortening the time required for ring network path switching.
[0063] Before encapsulating the first outer tunnel message header for the first message, it is necessary to first configure the tunnel in the ring network. Optionally, the tunnel can be configured in advance before a network failure occurs in the ring network, for example, the tunnel is configured when the ring network architecture is formed; or the tunnel can be temporarily configured in the event of a network failure in the ring network. The tunnel can be configured by a control device sending configuration information of the corresponding tunnel to each network device in the ring network. In this case, the first network device receives the configuration information of the first tunnel sent by the control device, and the configuration information of the first tunnel is used for the first network device to transmit messages through the first tunnel.
[0064] Optionally, the tunnel protocol used in the configuration tunnel is not limited in the embodiment of the present application. The tunnel protocol is used to re-encapsulate the transmitted message in a new message header and send it, that is, to encapsulate the message with an outer tunnel message header, and the outer tunnel message header includes routing information, so that the message encapsulated with the outer tunnel message header can be transmitted in the network. Exemplarily, the tunnel protocol includes but is not limited to the point-to-point tunneling protocol (PPTP), the layer two tunneling protocol (L2TP) or the QinQ protocol. QinQ is the abbreviation of 802.1Q-in-802.1Q, and QinQ is also called virtual local area network stacking (VLAN Stacking) or double VLAN. It achieves the purpose of expanding the VLAN space by adding another layer of 802.1Q tag on the basis of the 802.1Q tag message.
[0065] The embodiment of the present application does not limit the method of encapsulating the first outer tunnel header, and different encapsulation methods of the first outer tunnel header can be flexibly adopted for different tunnel protocols. For example, taking the QinQ protocol as an example, the method of encapsulating the first outer tunnel header of the first message is to encapsulate a layer of VLAN tag in the outer layer of the first message, so as to realize routing forwarding through the VLAN tag encapsulated in the outermost layer.
[0066] Since the directions of message transmission in the ring network include clockwise and counterclockwise directions, it is necessary to configure clockwise tunnels and counterclockwise tunnels when configuring tunnels. Exemplarily, the counterclockwise tunnel can be called the first tunnel, and the clockwise tunnel can be called the second tunnel. The first tunnel and the second tunnel can be two independent tunnels, or the first tunnel and the second tunnel can be the same bidirectional tunnel. In the embodiment of the present application, there is no limitation on the implementation method of configuring the ring network tunnel, and it is sufficient that in the event of a failure in the ring network, the messages affected by the failure can be switched to the tunnel for normal transmission.
[0067] Optionally, the result of configuring the tunnel in the ring network may be that all ports of all network devices in the ring network are configured with the first tunnel and the second tunnel, so that all ports on the ring allow packets encapsulating the outer tunnel packet header to pass through without being blocked by the blocking point. Figure 3 The schematic diagram of the tunnel configuration shown in the figure shows that the network devices included in the ring network are switches (S) 1, S2, S3, S4, S5, S6, S7 and S8, the host (H) H1 is a terminal, server or switch under S1, H2 is a terminal, server or switch under S5, and the blocking point is set on the first port on S4 for connecting to S3. For the message sent by H1 to H2, the message enters the ring network from S1, that is, S1 is the entry point, and is sent from S5 to H2 via S8, S7 and S6, that is, S5 is the exit point. Among them, all ports in S1, S2, S3, S4, S5, S6, S7 and S8 are configured with the first tunnel and the second tunnel. Therefore, the first tunnel and the second tunnel form a closed loop in the ring network, so that for the ring network failure at any position, the message affected by the failure can be switched to the first tunnel or the second tunnel for transmission.
[0068] Since the purpose of configuring tunnels in a ring network is to enable the messages affected by the fault to be transmitted in the reverse direction and pass through the blocking point, the ports on both sides of the blocking point can be selectively configured with the first tunnel or the second tunnel. Figure 4 In the schematic diagram of the tunnel configuration shown in the figure, the port on S3 on the clockwise side of the blocking loop breaking point is not configured with the second tunnel, and the port on S4 on the counterclockwise side of the blocking loop breaking point is not configured with the first tunnel, that is, the first tunnel and the second tunnel do not form a closed loop in the ring network, but because the port at the gap does not send messages to the blocking loop breaking point, there is no situation where the port at the gap enters the tunnel when the ring network path is switched.
[0069] In a possible implementation, the result of configuring the tunnel in the ring network may also be to open a pair of first tunnels and second tunnels for each pair of adjacent network devices in the ring network. Figure 5The schematic diagram of the tunnel configuration shown in the figure takes the adjacent network devices S7 and S6 as an example. The starting point of the first tunnel is the port on S7 connected to S8, the end point of the first tunnel is the port on S6 connected to S5, the starting point of the second tunnel is the port on S6 connected to S5, and the end point of the second tunnel is the port on S7 connected to S8. Among them, for the scenario of temporarily configuring tunnels in the event of a network failure in the ring network, since the location of the network failure has been determined, only a pair of first tunnels and second tunnels corresponding to the network devices on both sides of the location of the network failure can be temporarily issued. For example, if the location of the network failure is the link between S6 and S7, then the network devices on both sides of the location of the network failure are S6 and S7, and then it can be configured Figure 5 S6 and S7 shown correspond to the first tunnel and the second tunnel.
[0070] Step 203: The first network device transmits the second message based on the first tunnel.
[0071] In the embodiment of the present application, since the first tunnel and the second tunnel that are not blocked by the blocking breaking point have been configured in the ring network, therefore, in the event of a network failure in the ring network, the message affected by the failure and transmitted in the clockwise direction in the ring network can be switched to the first tunnel for reverse transmission, and the message affected by the failure and transmitted in the counterclockwise direction in the ring network can be switched to the second tunnel for reverse transmission, which can quickly implement the ring network path switching and reduce the impact of the ring network failure on the service performance. The embodiment of the present application takes the first message as a message transmitted in the clockwise direction as an example for explanation. For how to switch the message transmitted in the counterclockwise direction to the second tunnel, you can refer to the way of switching the first message to the first tunnel, and the embodiment of the present application will not be repeated.
[0072] For different tunnel configurations, the first network device transmits the second message in different ways based on the first tunnel. The following example illustrates the implementation method of transmitting the second message based on the first tunnel, taking the case where the first message is a clockwise message sent from H1 to H2, the first network device is S7, and the network failure occurs on the link between S7 and S6.
[0073] exist Figure 3 In the tunnel configuration scenario shown in FIG. 1 , since each port of each network device in the ring network is configured with a first tunnel, Figure 4 or Figure 5In the tunnel configuration scenario shown, since the first tunnel is configured for each port between the first network device and the blocking loop breaking point, the second message can be transmitted based on the first tunnel to the second network device corresponding to the blocking loop breaking point, and the second network device corresponding to the blocking loop breaking point is S4; after receiving the second message, the second network device decapsulates the first outer tunnel message header of the second message to obtain the first message, and continues to transmit the first message according to the forwarding table entry before the failure occurs.
[0074] For example, see Figure 6 Schematic diagram of message transmission shown. H1 sends a first message to S1. Based on the forwarding table entry before the failure occurs, S1 and S8 can send the first message to S7 according to the non-tunnel path; after receiving the first message, S7 finds that the link between S7 and S6 is faulty, then S7 encapsulates the first message with the first outer tunnel message header to obtain the second message; S7 sends the second message into the first tunnel for reverse transmission, that is, S7 is the tunnel entry point and the loopback point of the first message; because the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, S8, S1, S2, and S3 can send the second message to S4 corresponding to the blocking and breaking point; S4 decapsulates the first outer tunnel message header of the second message to obtain the first message, that is, S4 is the tunnel exit point of the first message; S4 sends the first message to S5 according to the non-tunnel path, and then S5 sends it to H2. Therefore, when a ring network failure occurs, the first message can achieve rapid path switching through the first tunnel, so that the first message is not affected by the network failure and can cross the blocking point, avoiding packet loss caused by the network failure.
[0075] exist Figure 3 In the tunnel configuration scenario shown in FIG. 1 , since each port of each network device in the ring network is configured with a first tunnel, Figure 5 In the tunnel configuration scenario shown in FIG. 1 , the first tunnel is configured on each port of the first network device through the blocking loop point to the third network device. The third network device is another network device in the ring network adjacent to the location where the network failure occurs. The third network device is Figure 3 or Figure 5 Therefore, the method of transmitting the second message based on the first tunnel can be that the second message is transmitted to the third network device through the blocking loop point based on the first tunnel; after receiving the second message, the third network device decapsulates the first outer tunnel message header of the second message to obtain the first message, and continues to transmit the first message according to the forwarding table entry before the failure occurs.
[0076] For example, see Figure 7Schematic diagram of message transmission shown. H1 sends a first message to S1. Based on the forwarding table entry before the failure occurs, S1 and S8 can send the first message to S7 according to the non-tunnel path; after receiving the first message, S7 finds that the link between S7 and S6 is faulty, then S7 encapsulates the first message with the first outer tunnel message header to obtain the second message; S7 sends the second message into the first tunnel for reverse transmission, that is, S7 is the tunnel entry point and the loopback point of the first message; since the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, S8, S1, S2, S3, S4 and S5 can send the second message to the third network device S6; S6 decapsulates the first outer tunnel message header of the second message to obtain the first message, that is, S6 is the tunnel exit point of the first message; S6 sends the first message in reverse to S5 according to the non-tunnel path, that is, S6 is also the loopback point of the first message, and then S5 sends it to H2. Therefore, when a ring network failure occurs, the first message can achieve rapid path switching through the first tunnel, so that the first message is not affected by the network failure and can cross the blocking point, avoiding packet loss caused by the network failure.
[0077] Among them, Figure 7 In the case where the third network device is used as the tunnel exit point, the second network device corresponding to the blocking loop breaking point will mark the first outer tunnel message header of the second message in the process of forwarding the second message, that is, the second network device corresponding to the blocking loop breaking point is the marking point. In other words, the first outer tunnel message header of the second message carries marking information, and the marking information is used to indicate that the second message has passed the blocking loop breaking point. In this case, after receiving the second message, the third network device will first determine whether the first outer tunnel message header of the second message carries the marking information. If the marking information is carried in the first outer tunnel message header, the first outer tunnel message header of the second message will be decapsulated to obtain the first message; if the marking information is not carried in the first outer tunnel message header, it indicates that the second message has not passed the blocking loop breaking point, and the second message is directly discarded, or the second message is not processed.
[0078] The marking information enables the third network device to identify the message that has not passed through the blocking loop breaking point and has encapsulated the outer tunnel message header. The encapsulation of the outer tunnel message header indicates that there is a network failure in the direction of receiving the message, and the first network device, as a network device adjacent to the location where the network failure occurs, indicates that there is also a network failure in the direction of sending the message. Therefore, if the first network device does not discard the second message, it will cause the second message to be sent cyclically in the ring network. For example, in Figure 7In the example, if a link failure occurs between S7 and S6, and a link failure also occurs between S2 and S3, then S2 is also a network device adjacent to the location where the network failure occurs, and S2 also executes Figure 2 In the message transmission method shown, when S2 receives the second message encapsulated with the first outer tunnel message header, it will discard the second message based on the fact that the first outer tunnel message header does not carry the tag information. If S2 decapsulates the first outer tunnel message header to obtain the first message and transmits the first message, because the link between S2 and S3 fails, S2 will re-encapsulate the first message with the second outer tunnel message header and transmit it based on the second tunnel. Similarly, S7 will also perform similar operations as S2, resulting in the message being cyclically transmitted between S2 and S7.
[0079] In addition, for the third network device in the ring network, taking the fourth message sent by H2 to H1 as an example, in the case of a network failure in the ring network, after receiving the fourth message, the third network device encapsulates the fourth message with the second outer tunnel message header to obtain the third message, and the second outer tunnel message header indicates that the third message is transmitted based on the second tunnel, and the message transmitted by the second tunnel is also not blocked by the blocking breaking point; the third message is transmitted based on the second tunnel. The implementation method of the third network device transmitting the third message based on the second tunnel can refer to the implementation method of the first network device transmitting the second message based on the first tunnel, which will not be repeated here.
[0080] In a scenario where the third network device transmits the third message based on the second tunnel and the third message is transmitted from the first network device through the second tunnel, optionally, the first network device also receives the third message encapsulated with the second outer tunnel message header; when the second outer tunnel message header carries marking information, the first network device decapsulates the second outer tunnel message header of the third message to obtain a fourth message, and the marking information also indicates that the third message passes through the blocking loop breaking point; the first network device transmits the fourth message; and when the second outer tunnel message header does not carry marking information, the third message is directly discarded.
[0081] The method provided by the embodiment of the present application, in the case of a network failure in the ring network, by encapsulating the first outer tunnel message header, enables the first message to be quickly switched to the first tunnel for transmission, so that the first message is not affected by the network failure, and because the first tunnel is not blocked by the blocking breaking point in the ring network, the first message can cross the blocking breaking point. Compared with the path switching method of fault notification and refreshing the forwarding table, it saves the fault message notification time and the network equipment table refresh time, realizes faster ring network path switching, reduces the message packet loss caused by network failure, and effectively reduces the impact of network failure on service performance.
[0082] See also Figure 8 , Figure 8 The flowchart of a message transmission method provided by an embodiment of the present application. Taking the second network device executing the method as an example, the second network device can be a network device with a blocking point set in the ring network. Figure 8 As shown, the message transmission method includes but is not limited to the following steps 801 and 802.
[0083] Step 801, the second network device receives the second message sent by the first network device, the first network device is any network device in the ring network that is adjacent to the location where the network failure occurs, the ring network includes a blocking breaking point for blocking message transmission, the second network device is the network device corresponding to the blocking breaking point, the second message is encapsulated with a first outer tunnel message header, the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point.
[0084] Step 802: when the first tunnel is configured on each port between the first network device and the blocking loop breaking point, the first outer tunnel message header of the second message is decapsulated to obtain the first message, and the first message is transmitted.
[0085] In a possible implementation, after the second network device receives the second message sent by the first network device, it also includes: when the first tunnel is configured on each port of each network device in the ring network, or when the first tunnel is configured on each port between the first network device and the third network device through a blocking loop breaking point in the ring network, adding marking information to the first outer tunnel message header to obtain a fifth message, the marking information indicating that the fifth message passes through the blocking loop breaking point, and the third network device is another network device in the ring network adjacent to the location where the network failure occurs; transmitting the fifth message.
[0086] The implementation of step 801 and step 802 may refer to the implementation of the second network device in step 201 to step 203, and will not be repeated here.
[0087] See also Fig. 9 , Fig. 9 The interactive diagram of a message transmission method provided in an embodiment of the present application. Taking the first network device, the second network device and the third network device as an example of executing the method, the first network device and the third network device are two network devices adjacent to the location where the network failure occurs in the ring network, and the second network device is a network device in the ring network with a blocking point set. Fig. 9 As shown, the message transmission method includes but is not limited to the following steps 901 to 905.
[0088] Step 901: When a network failure occurs in a ring network, a first network device receives a first message, encapsulates the first message with a first outer tunnel message header, and obtains a second message.
[0089] Step 902: The first network device transmits a second message to the second network device based on the first tunnel.
[0090] Step 903: The second network device receives the second message and adds identification information to the first outer tunnel message header of the second message.
[0091] Step 904: The second network device transmits the second message with the identification information added to the third network device based on the first tunnel.
[0092] Step 905: The third network device receives the second message to which the identification information is added, decapsulates the first outer tunnel message header of the second message to obtain the first message, and transmits the first message.
[0093] The implementation of steps 901 to 905 may refer to the relevant descriptions in steps 201 to 203 and will not be repeated here.
[0094] The above introduces the message transmission method of the embodiment of the present application. Corresponding to the above method, the embodiment of the present application also provides a message transmission device. Fig.10 is a schematic diagram of a message transmission device provided in an embodiment of the present application, based on Fig.10 As shown in the following multiple modules, the Fig.10 The message transmission device shown can perform all or part of the operations performed by the first network device or the second network device. It should be understood that the device may include more additional modules than the modules shown or omit some of the modules shown, and the embodiments of the present application are not limited to this.
[0095] exist Fig.10 When the message transmission device shown is applied to a first network device, the first network device may be the above-mentioned Figure 2 or Fig. 9 The first network device shown. Fig.10 As shown, the device includes: a transceiver module 1001, which is used to execute Figure 2 or Fig. 9 The receiving and / or sending related operations performed by the first network device in the message transmission method shown in the figure; the processing module 1002 is used to perform Figure 2 or Fig. 9 Other operations besides the receiving and / or sending related operations performed by the first network device in the message transmission method shown.
[0096] In a possible implementation, the transceiver module 1001 includes a receiving module and / or a sending module. The receiving module is used to perform reception-related operations, and the sending module is used to perform sending-related operations.
[0097] In one possible implementation, the transceiver module 1001 is used to receive a first message when a network failure occurs in a ring network, where the first network device is any network device in the ring network that is adjacent to the location where the network failure occurs, and the ring network includes a blocking breaking point for blocking message transmission; the processing module 1002 is used to encapsulate the first message with a first outer tunnel message header to obtain a second message, where the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point; the transceiver module 1001 is also used to transmit the second message based on the first tunnel.
[0098] In one possible implementation, each port between the first network device and the blocking loop breaking point is configured with a first tunnel, or each port of each network device in the ring network is configured with a first tunnel; the transceiver module 1001 is used to transmit a second message to a second network device corresponding to the blocking loop breaking point based on the first tunnel, and the second network device is used to decapsulate the first outer tunnel message header of the second message to obtain the first message.
[0099] In a possible implementation, each port of each network device in the ring network is configured with a first tunnel, or each port from the first network device through a blocking loop-breaking point to a third network device is configured with a first tunnel, and the third network device is another network device in the ring network adjacent to the location where the network failure occurs; the transceiver module 1001 is used to transmit a second message to the third network device through the blocking loop-breaking point based on the first tunnel, and the third network device is used to decapsulate the first outer tunnel message header of the second message to obtain the first message.
[0100] In one possible implementation, the transceiver module 1001 is also used to receive a third message encapsulated with a second outer tunnel message header, the second outer tunnel message header indicating that the third message is transmitted based on the second tunnel, and the message transmitted by the second tunnel is not blocked by the blocking breaking point; the processing module 1002 is also used to decapsulate the second outer tunnel message header of the third message when the second outer tunnel message header carries marking information, to obtain a fourth message, the marking information indicating that the third message passes through the blocking breaking point; the transceiver module 1001 is also used to transmit the fourth message.
[0101] In a possible implementation manner, the processing module 1001 is further configured to discard the third message when the second outer tunnel message header does not carry the marking information.
[0102] In a possible implementation, the processing module 1001 is also used to receive configuration information of the first tunnel sent by the control device before a network failure occurs in the ring network, and the configuration information of the first tunnel is used to transmit messages based on the first tunnel; or, it is also used to receive configuration information of the first tunnel sent by the control device when a network failure occurs in the ring network.
[0103] exist Fig.10 When the message transmission device shown is applied to a second network device, the second network device may be the above-mentioned Figure 8 or Fig. 9 The second network device shown. Fig.10 As shown, the device includes: a transceiver module 1001, which is used to execute Figure 8 or Fig. 9 The receiving and / or sending related operations performed by the second network device in the message transmission method shown in the figure; the processing module 1002 is used to perform Figure 8 or Fig. 9 Other operations besides the receiving and / or sending related operations performed by the second network device in the message transmission method shown.
[0104] In one possible implementation, the transceiver module 1001 is used to receive a second message sent by a first network device, the first network device is any network device in a ring network that is adjacent to the location where a network failure occurs, the ring network includes a blocking breaking point for blocking message transmission, the second network device is a network device corresponding to the blocking breaking point, the second message is encapsulated with a first outer tunnel message header, the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point; the processing module 1002 is used to decapsulate the first outer tunnel message header of the second message to obtain a first message when each port between the first network device and the blocking breaking point is configured with a first tunnel; the transceiver module 1001 is also used to transmit the first message.
[0105] In one possible implementation, the processing module 1002 is also used to add marking information to the first outer tunnel message header to obtain a fifth message when a first tunnel is configured on each port of each network device in the ring network, or when a first tunnel is configured on each port from the first network device in the ring network through a blocking and loop-breaking point to a third network device, wherein the marking information indicates that the fifth message passes through a blocking and loop-breaking point, and the third network device is another network device in the ring network adjacent to the location where the network failure occurs; the transceiver module 1001 is also used to transmit the fifth message.
[0106] In a possible implementation, the transceiver module 1001 is also used to receive configuration information of the first tunnel sent by the control device before a network failure occurs in the ring network, and the configuration information of the first tunnel is used to transmit messages based on the first tunnel; or, it is also used to receive configuration information of the first tunnel sent by the control device when a network failure occurs in the ring network.
[0107] It should be understood that the above Fig.10 When the device provided realizes its functions, only the division of the above-mentioned functional modules is used as an example for illustration. In practical applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above. In addition, the device and method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process is detailed in the method embodiment, which will not be repeated here. Fig.10 The beneficial effects of the message transmission device shown can be seen in Figure 2 The effective effects of the message transmission method shown are not repeated here.
[0108] See also Fig.11 , Fig.11 A schematic diagram of the structure of a network device 2000 provided by an exemplary embodiment of the present application is shown. Fig.11 The network device 2000 shown is used to perform the above Figure 2 The operations involved in the message transmission method shown. The network device 2000 is, for example, a switch, a router, etc. The network device 2000 can be implemented by a general bus architecture.
[0109] like Fig.11 As shown, the network device 2000 includes at least one processor 2001 , a memory 2003 , and at least one communication interface 2004 .
[0110] The processor 2001 is, for example, a general-purpose central processing unit (CPU), a digital signal processor (DSP), a network processor (NP), a graphics processing unit (GPU), a neural-network processing units (NPU), a data processing unit (DPU), a microprocessor, or one or more integrated circuits for implementing the solution of the present application. For example, the processor 2001 includes an application-specific integrated circuit (ASIC), a programmable logic device (PLD) or other programmable logic devices, transistor logic devices, hardware components, or any combination thereof. The PLD is, for example, a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof. It can implement or execute various logic blocks, modules, and circuits described in conjunction with the disclosure of the embodiments of the present invention. The processor can also be a combination that implements a computing function, such as a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and the like.
[0111] Optionally, the network device 2000 further includes a bus. The bus is used to transmit information between the components of the network device 2000. The bus may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Fig.11 The fact that only one line is used in the diagram does not mean that there is only one bus or only one type of bus.
[0112] The memory 2003 is, for example, a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, or a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but is not limited thereto. The memory 2003 is, for example, independent and connected to the processor 2001 via a bus. The memory 2003 can also be integrated with the processor 2001.
[0113] The communication interface 2004 uses any transceiver type device for communicating with other devices or communication networks, and the communication network can be Ethernet, radio access network (radio access network, RAN) or wireless local area network (wireless local area networks, WLAN) and the like. The communication interface 2004 can include a wired communication interface and can also include a wireless communication interface. Specifically, the communication interface 2004 can be an Ethernet interface, a Fast Ethernet (Fast Ethernet, FE) interface, a Gigabit Ethernet (Gigabit Ethernet, GE) interface, an Asynchronous Transfer Mode (Asynchronous Transfer Mode, ATM) interface, a wireless local area network (wireless local area networks, WLAN) interface, a cellular network communication interface or a combination thereof. The Ethernet interface can be an optical interface, an electrical interface or a combination thereof. In an embodiment of the present application, the communication interface 2004 can be used for the network device 2000 to communicate with other devices.
[0114] In a specific implementation, as an embodiment, the processor 2001 may include one or more CPUs, such as Fig.110 and CPU1 shown in FIG. Each of these processors may be a single-core CPU processor or a multi-core CPU processor. A processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).
[0115] In a specific implementation, as an embodiment, the network device 2000 may include multiple processors, such as Fig.11 2001 and 2005 are shown in FIG. Each of these processors may be a single-core CPU or a multi-core CPU. A processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (such as computer program instructions).
[0116] In a specific implementation, as an embodiment, the network device 2000 may further include an output device and an input device. The output device communicates with the processor 2001 and may display information in a variety of ways. For example, the output device may be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector. The input device communicates with the processor 2001 and may receive user input in a variety of ways. For example, the input device may be a mouse, a keyboard, a touch screen device, or a sensor device.
[0117] In some embodiments, the memory 2003 is used to store the program code 2010 for executing the solution of the present application, and the processor 2001 can execute the program code 2010 stored in the memory 2003. That is, the network device 2000 can implement the message transmission method provided by the method embodiment through the processor 2001 and the program code 2010 in the memory 2003. The program code 2010 may include one or more software modules. Optionally, the processor 2001 itself can also store the program code or instruction for executing the solution of the present application.
[0118] In a specific embodiment, the network device 2000 of the embodiment of the present application may correspond to the first network device in each of the above-mentioned method embodiments, and the processor 2001 in the network device 2000 reads the instruction in the memory 2003, so that Fig.11 The illustrated network device 2000 is capable of performing all or part of the operations performed by the first network device.
[0119] Specifically, processor 2001 is used to, when a network failure occurs in a ring network, receive a first message by a first network device, the first network device being any network device in the ring network adjacent to the location where the network failure occurs, the ring network including a blocking breaking point for blocking message transmission; encapsulate the first message with a first outer tunnel message header to obtain a second message, the first outer tunnel message header indicating that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point; and transmit the second message based on the first tunnel.
[0120] For the sake of brevity, other optional implementations are not described here in detail.
[0121] For another example, the network device 2000 in the embodiment of the present application may correspond to the second network device in each of the above method embodiments, and the processor 2001 in the network device 2000 reads the instruction in the memory 2003, so that Fig.11 The illustrated network device 2000 is capable of performing all or part of the operations performed by the second network device.
[0122] Specifically, processor 2001 is used to receive a second message sent by a first network device, the first network device is any network device in a ring network that is adjacent to the location where a network failure occurs, the ring network includes a blocking breaking point for blocking message transmission, the second network device is a network device corresponding to the blocking breaking point, the second message is encapsulated with a first outer tunnel message header, the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point; when the first tunnel is configured on each port between the first network device and the blocking breaking point, the first outer tunnel message header is decapsulated from the second message to obtain the first message; and the first message is transmitted.
[0123] For the sake of brevity, other optional implementations are not described here in detail.
[0124] The network device 2000 may also correspond to the above Fig.10 In the message transmission device shown, each functional module in the message transmission device is implemented by software of the network device 2000. In other words, the functional modules included in the message transmission device are generated after the processor 2001 of the network device 2000 reads the program code 2010 stored in the memory 2003.
[0125] in, Figure 2Each step of the message transmission method shown is completed by an integrated logic circuit of hardware or software instructions in the processor of the network device 2000. The steps of the method disclosed in conjunction with the embodiment of the present application can be directly embodied as a hardware processor, or a combination of hardware and software modules in the processor. The software module can be located in a mature storage medium in the field such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in the memory, and the processor reads the information in the memory, and completes the steps of the above method in conjunction with its hardware. To avoid repetition, it is not described in detail here.
[0126] See also Fig.12 , Fig.12 FIG. 2 shows a schematic diagram of the structure of a network device 2100 provided by another exemplary embodiment of the present application. Fig.12 The network device 2100 shown is used to perform the above Figure 2 All or part of the operations involved in the message transmission method shown. The network device 2100 is, for example, a switch, a router, etc. The network device 2100 can be implemented by a general bus architecture.
[0127] like Fig.12 As shown, the network device 2100 includes: a main control board 2110 and an interface board 2130 .
[0128] The main control board is also called a main processing unit (MPU) or a route processor card. The main control board 2110 is used to control and manage various components in the network device 2100, including routing calculation, device management, device maintenance, and protocol processing functions. The main control board 2110 includes: a central processing unit 2111 and a memory 2112.
[0129] The interface board 2130 is also called a line processing unit (LPU), a line card (linecard) or a service board. The interface board 2130 is used to provide various service interfaces and realize the forwarding of data packets. The service interface includes but is not limited to an Ethernet interface, a POS (Packet over SONET / SDH) interface, etc., and the Ethernet interface is, for example, a Flexible Ethernet Service Interface (Flexible Ethernet Clients, FlexE Clients). The interface board 2130 includes: a central processing unit 2131, a network processor 2132, a forwarding table entry memory 2134 and a physical interface card (physical interface card, PIC) 2133.
[0130] The central processor 2131 on the interface board 2130 is used to control and manage the interface board 2130 and communicate with the central processor 2111 on the main control board 2110 .
[0131] The network processor 2132 is used to implement the forwarding processing of the message. The network processor 2132 can be in the form of a forwarding chip. The forwarding chip can be a network processor (NP). In some embodiments, the forwarding chip can be implemented by an application-specific integrated circuit (ASIC) or a field programmable gate array (FPGA). Specifically, the network processor 2132 is used to forward the received message based on the forwarding table stored in the forwarding table entry memory 2134. If the destination address of the message is the address of the network device 2100, the message is sent to the CPU (such as the central processor 2131) for processing; if the destination address of the message is not the address of the network device 2100, the next hop and the output interface corresponding to the destination address are found from the forwarding table according to the destination address, and the message is forwarded to the output interface corresponding to the destination address. Among them, the processing of the uplink message may include: processing of the message input interface, forwarding table search; the processing of the downlink message may include: forwarding table search, etc. In some embodiments, the central processor can also perform the function of the forwarding chip, such as implementing software forwarding based on a general-purpose CPU, so that the forwarding chip is not required in the interface board.
[0132] The physical interface card 2133 is used to implement the physical layer docking function, whereby the original traffic enters the interface board 2130, and the processed message is sent out from the physical interface card 2133. The physical interface card 2133, also called a daughter card, can be installed on the interface board 2130, and is responsible for converting the photoelectric signal into a message and forwarding the message to the network processor 2132 for processing after checking the legitimacy of the message. In some embodiments, the central processor 2131 can also perform the functions of the network processor 2132, such as implementing software forwarding based on a general-purpose CPU, so that the network processor 2132 is not required in the physical interface card 2133.
[0133] Optionally, the network device 2100 includes multiple interface boards, for example, the network device 2100 further includes an interface board 2140, and the interface board 2140 includes: a central processor 2141, a network processor 2142, a forwarding table entry memory 2144, and a physical interface card 2143. The functions and implementation methods of the components in the interface board 2140 are the same or similar to those of the interface board 2130, and are not described in detail here.
[0134] Optionally, the network device 2100 further includes a switching fabric board 2120. The switching fabric board 2120 may also be referred to as a switch fabric unit (SFU). When the network device 2100 has multiple interface boards, the switching fabric board 2120 is used to complete data exchange between the interface boards. For example, the interface board 2130 and the interface board 2140 may communicate via the switching fabric board 2120.
[0135] The main control board 2110 is coupled to the interface board. For example, the main control board 2110, the interface board 2130, the interface board 2140, and the switching network board 2120 are connected to the system backplane through the system bus to achieve intercommunication. In a possible implementation, an inter-process communication (IPC) channel is established between the main control board 2110 and the interface board 2130 and the interface board 2140, and the main control board 2110 and the interface board 2130 and the interface board 2140 communicate through the IPC channel.
[0136] Logically, the network device 2100 includes a control plane and a forwarding plane. The control plane includes a main control board 2110 and a central processing unit 2111. The forwarding plane includes various components for performing forwarding, such as a forwarding table entry memory 2134, a physical interface card 2133, and a network processor 2132. The control plane performs functions such as a router, generating a forwarding table, processing signaling and protocol messages, and configuring and maintaining the status of the network device. The control plane sends the generated forwarding table to the forwarding plane. On the forwarding plane, the network processor 2132 forwards the message received by the physical interface card 2133 based on the forwarding table sent by the control plane. The forwarding table sent by the control plane can be stored in the forwarding table entry memory 2134. In some embodiments, the control plane and the forwarding plane can be completely separated and not on the same network device.
[0137] It is worth noting that there may be one or more main control boards, and when there are multiple boards, they may include a primary main control board and a backup main control board. There may be one or more interface boards. The stronger the data processing capability of the network device, the more interface boards are provided. There may also be one or more physical interface cards on the interface board. There may be no switching network board, or there may be one or more switching network boards. When there are multiple switching network boards, they can jointly realize load sharing and redundant backup. In a centralized forwarding architecture, network devices may not need switching network boards, and the interface board is responsible for processing the service data of the entire system. In a distributed forwarding architecture, network devices may have at least one switching network board, and data exchange between multiple interface boards is realized through the switching network board, providing large-capacity data exchange and processing capabilities. Therefore, the data access and processing capabilities of network devices with distributed architectures are greater than those of network devices with centralized architectures. Optionally, the network device may have only one board, that is, no switching board, and the functions of the interface board and the main control board are integrated on the board. In this case, the central processor on the interface board and the central processor on the main control board can be combined into one central processor on the board to perform the functions of the two. This type of network device has low data exchange and processing capabilities (for example, low-end switches or routers and other network devices). The specific architecture to be adopted depends on the specific networking deployment scenario, and no limitation is made here.
[0138] In a specific embodiment, the network device 2100 corresponds to the above Fig.10 The message transmission device shown is applied to the first network device or the second network device. In some embodiments, Fig.10 The transceiver module 1001 in the message transmission device shown is equivalent to the physical interface card 2133 in the network device 2100 , and the processing module 1002 is equivalent to the central processor 2111 or the network processor 2132 in the network device 2100 .
[0139] The embodiment of the present application also provides a message transmission system, the processing system includes: a first network device and a second network device. For example, the first network device is Fig.11 The network device 2000 or Fig.12 The network device 2100 shown in FIG. 1 is a second network device. Fig.11 The network device 2000 or Fig.12 The message transmission method executed by the first network device and the second network device can refer to the above Figure 2 and Figure 8 The relevant description of the illustrated embodiment will not be repeated here.
[0140] The embodiment of the present application also provides a communication device, which includes: a transceiver, a memory, and a processor. The transceiver, the memory, and the processor communicate with each other through an internal connection path, the memory is used to store instructions, and the processor is used to execute the instructions stored in the memory to control the transceiver to receive signals and control the transceiver to send signals, and when the processor executes the instructions stored in the memory, the processor executes the method required to be executed by the first network device.
[0141] The embodiment of the present application also provides a communication device, which includes: a transceiver, a memory, and a processor. The transceiver, the memory, and the processor communicate with each other through an internal connection path, the memory is used to store instructions, and the processor is used to execute the instructions stored in the memory to control the transceiver to receive signals and control the transceiver to send signals, and when the processor executes the instructions stored in the memory, the processor executes the method required to be executed by the second network device.
[0142] It should be understood that the processor may be a CPU, or other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc. It is worth noting that the processor may be a processor supporting the advanced reduced instruction set machine (ARM) architecture.
[0143] Further, in an optional embodiment, the memory may include a read-only memory and a random access memory, and provide instructions and data to the processor. The memory may also include a non-volatile random access memory. For example, the memory may also store information about the device type.
[0144] The memory may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memory. Among them, the nonvolatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example but not limitation, many forms of RAM are available. For example, static RAM (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link DRAM (SLDRAM) and direct memory bus random access memory (DR RAM).
[0145] An embodiment of the present application also provides a computer-readable storage medium, in which at least one instruction is stored. The instruction is loaded and executed by a processor so that a computer implements any of the above message transmission methods.
[0146] The embodiments of the present application also provide a computer program (product), which, when executed by a computer, can enable a processor or a computer to execute the corresponding steps and / or processes in the above method embodiments.
[0147] An embodiment of the present application also provides a chip, including a processor, for calling and executing instructions stored in the memory from the memory, so that a communication device equipped with the chip executes any of the above message transmission methods.
[0148] An embodiment of the present application also provides another chip, including: an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected via an internal connection path, and the processor is used to execute the code in the memory. When the code is executed, the processor is used to execute any of the above message transmission methods.
[0149] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can 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 the computer program instructions are loaded and executed on the computer, the process or function according to the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, a computer, a server or a data center to another website site, a computer, a server or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) mode. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or a data center that includes one or more available media integration. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid state drive (solid state disk)), etc.
[0150] Those of ordinary skill in the art will appreciate that, in conjunction with the various method steps and modules described in the embodiments disclosed herein, they can be implemented in software, hardware, firmware, or any combination thereof. In order to clearly illustrate the interchangeability of hardware and software, the steps and components of each embodiment have been generally described in terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Those of ordinary skill in the art may use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0151] A person skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware or by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.
[0152] When software is used for implementation, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer program instructions. As an example, the method of the embodiment of the present application can be described in the context of a machine executable instruction, and the machine executable instruction is such as included in the program module executed in the device on the real or virtual processor of the target. Generally speaking, a program module includes a routine, a program, a library, an object, a class, a component, a data structure, etc., which performs a specific task or realizes a specific abstract data structure. In various embodiments, the function of the program module can be merged or divided between the described program modules. The machine executable instruction for the program module can be executed in a local or distributed device. In a distributed device, the program module can be located in both a local and a remote storage medium.
[0153] The computer program code for realizing the method for the embodiment of the present application can be written in one or more programming languages. These computer program codes can be provided to the processor of a general-purpose computer, a special-purpose computer or other programmable data processing device, so that the program code, when executed by a computer or other programmable data processing device, causes the function / operation specified in the flow chart and / or block diagram to be implemented. The program code can be executed completely on a computer, partially on a computer, as an independent software package, partially on a computer and partially on a remote computer or completely on a remote computer or server.
[0154] In the context of the embodiments of the present application, computer program codes or related data may be carried by any appropriate carrier to enable a device, apparatus or processor to perform the various processes and operations described above. Examples of carriers include signals, computer readable media, and the like.
[0155] Examples of signals may include electrical, optical, radio, acoustic or other forms of propagated signals, such as carrier waves, infrared signals, etc.
[0156] A machine-readable medium may be any tangible medium that contains or stores a program for or related to an instruction execution system, apparatus, or device. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination thereof. More detailed examples of machine-readable storage media include an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0157] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and modules described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0158] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the module is only a logical function division. There may be other division methods in actual implementation, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or modules, or it can be an electrical, mechanical or other form of connection.
[0159] The modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, they may be located in one place or distributed on multiple network modules. Some or all of the modules may be selected according to actual needs to achieve the purpose of the embodiments of the present application.
[0160] In addition, each functional module in each embodiment of the present application can be integrated into one processing module, or each module can exist physically separately, or two or more modules can be integrated into one module. The above integrated modules can be implemented in the form of hardware or software functional modules.
[0161] If the integrated module is implemented in the form of a software function module and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk and other media that can store program code.
[0162] In the present application, the terms "first", "second", etc. are used to distinguish between identical or similar items having substantially the same effects and functions. It should be understood that there is no logical or temporal dependency between "first", "second", and "nth", nor is there a limitation on quantity and execution order. It should also be understood that although the following description uses the terms first, second, etc. to describe various elements, these elements should not be limited by the terms. These terms are only used to distinguish one element from another. For example, without departing from the scope of various examples, a first image may be referred to as a second image, and similarly, a second image may be referred to as a first image. Both the first image and the second image may be images, and in some cases, may be separate and different images.
[0163] It should also be understood that in the various embodiments of the present application, the size of the serial number of each process does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0164] The term "at least one" in this application means one or more, and the term "multiple" in this application means two or more, for example, multiple second messages means two or more second messages. The terms "system" and "network" are often used interchangeably herein.
[0165] It should be understood that the terms used in the description of the various examples herein are only for describing specific examples and are not intended to be limiting. As used in the description of the various examples and the appended claims, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.
[0166] It should also be understood that the term "and / or" used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. The term "and / or" is a description of the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this application generally indicates that the associated objects before and after are in an "or" relationship.
[0167] It should also be understood that the term “comprise” (also known as “includes,” “including,” “comprises” and / or “comprising”) when used in this specification specifies the presence of stated features, integers, steps, operations, elements, and / or components, but does not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0168] It should also be understood that the terms "if" and "if" may be interpreted to mean "when" or "upon" or "in response to determining" or "in response to detecting." Similarly, the phrases "if it is determined that ..." or "if [a stated condition or event] is detected" may be interpreted to mean "upon determining that ..." or "in response to determining that ..." or "upon detecting [a stated condition or event]" or "in response to detecting [a stated condition or event]," depending on the context.
[0169] It should be understood that determining B based on A does not mean determining B only based on A. B can also be determined based on A and / or other information.
[0170] It should also be understood that the references to "one embodiment", "an embodiment", or "a possible implementation" throughout the specification mean that specific features, structures, or characteristics related to the embodiment or implementation are included in at least one embodiment of the present application. Therefore, the references to "in one embodiment" or "in an embodiment", or "a possible implementation" throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0171] The above description is only an optional embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the principles of the present application should be included in the protection scope of the present application.
Claims
1. A message transmission method, characterized in that: The method comprises: In the case where a network failure occurs in a ring network, a first network device receives a first message, wherein the first network device is any network device in the ring network adjacent to a location where the network failure occurs, and the ring network includes a blocking point for blocking message transmission; encapsulating the first message with a first outer tunnel message header to obtain a second message, wherein the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted through the first tunnel is not blocked by the blocking breaking point; The second message is transmitted based on the first tunnel.
2. The method according to claim 1, characterized in that: Each port between the first network device and the blocking and breaking point is configured with the first tunnel, or each port of each network device in the ring network is configured with the first tunnel; The transmitting the second message based on the first tunnel includes: The second message is transmitted to the second network device corresponding to the blocking loop breaking point based on the first tunnel, and the second network device is used to decapsulate the first outer tunnel message header of the second message to obtain the first message.
3. The method according to claim 1, characterized in that Each port of each network device in the ring network is configured with the first tunnel, or each port of the first network device from the blocking and breaking point to a third network device is configured with the first tunnel, and the third network device is another network device in the ring network adjacent to the location where the network failure occurs; The transmitting the second message based on the first tunnel includes: Based on the first tunnel transmitting the second message to the third network device through the blocking loop breaking point, the third network device is used to decapsulate the first outer tunnel message header of the second message to obtain the first message.
4. The method according to claim 1 or 3, characterized in that: The method further comprises: receiving a third message encapsulated with a second outer tunnel message header, wherein the second outer tunnel message header indicates that the third message is transmitted based on the second tunnel, and the message transmitted by the second tunnel is not blocked by the blocking breaking point; In a case where the second outer tunnel message header carries the marking information, decapsulating the second outer tunnel message header of the third message to obtain a fourth message, wherein the marking information indicates that the third message passes through the blocking loop breaking point; The fourth message is transmitted.
5. The method according to claim 4, characterized in that The method further comprises: When the second outer tunnel message header does not carry marking information, the third message is discarded.
6. A message transmission method, characterized in that: The method comprises: The second network device receives a second message sent by the first network device, the first network device is any network device adjacent to a location where a network failure occurs in a ring network, the ring network includes a blocking breaking point for blocking message transmission, the second network device is a network device corresponding to the blocking breaking point, the second message is encapsulated with a first outer tunnel message header, the first outer tunnel message header indicates that the second message is transmitted based on the first tunnel, and the message transmitted by the first tunnel is not blocked by the blocking breaking point; In a case where each port between the first network device and the blocking loop breaking point is configured with the first tunnel, decapsulating the first outer tunnel message header of the second message to obtain a first message; Transmit the first message.
7. The method according to claim 6, characterized in that After the second network device receives the second message sent by the first network device, the method further includes: In a case where each port of each network device in the ring network is configured with the first tunnel, or in a case where each port of the first network device in the ring network from the first network device through the blocking loop breaking point to the third network device is configured with the first tunnel, adding marking information to the first outer tunnel message header to obtain a fifth message, the marking information indicates that the fifth message passes through the blocking loop breaking point, and the third network device is another network device in the ring network adjacent to the location where the network fault occurs; The fifth message is transmitted.
8. The method according to any one of claims 1 to 7, characterized in that: The method further comprises: Before the network failure occurs in the ring network, receiving configuration information of the first tunnel sent by a control device, where the configuration information of the first tunnel is used to transmit messages based on the first tunnel; Alternatively, when the network failure occurs in the ring network, configuration information of the first tunnel sent by the control device is received.
9. A message transmission device, characterized in that: The device comprises: A transceiver module, used to perform the receiving and / or sending related operations performed by the first network device in the method described in any one of claims 1-5 and 8, or used to perform the receiving and / or sending related operations performed by the second network device in the method described in any one of claims 6-8; A processing module, used to perform other operations other than the reception and / or transmission related operations performed by the first network device in the method described in any one of claims 1-5 and 8, or used to perform other operations other than the reception and / or transmission related operations performed by the second network device in the method described in any one of claims 6-8.
10. A network device, characterized in that: The network device includes: a processor, the processor is coupled to a memory, the memory stores at least one program instruction or code, and the at least one program instruction or code is loaded and executed by the processor so that the network device implements the message transmission method described in any one of claims 1-5 and 8, or so that the network device implements the message transmission method described in any one of claims 6-8.
11. A message transmission system, characterized in that: The message transmission system includes a first network device and a second network device; The first network device is used to execute the message transmission method described in any one of claims 1-5 and 8, and the second network device is used to execute the message transmission method described in any one of claims 6-8.
12. A computer-readable storage medium, characterized in that: The computer storage medium stores at least one instruction, and the at least one instruction is loaded and executed by the processor to enable the computer to implement the message transmission method as described in any one of claims 1-5 and 8, or to enable the computer to implement the message transmission method as described in any one of claims 6-8.
13. A computer program product, characterized in that The computer program product includes: a computer program code, which is loaded and executed by a computer so that the computer implements the message transmission method described in any one of claims 1-5 and 8, or so that the computer implements the message transmission method described in any one of claims 6-8.
Citation Information
Cited By
Packet transmission method and apparatus, device, system, and storage medium
EP4750005A1
Packet transmission method and apparatus, device, system, and storage medium
WO2025039508A1