Data transmission method, device, computer equipment and storage medium

By determining the priority of routing nodes in the subtopology network and managing the transmission order, the deadlock problem in traditional algorithms is solved, and the reliability of the system and data transmission efficiency are improved.

CN118612136BActive Publication Date: 2025-01-03SHANDONG YUNHAI GUOCHUANG CLOUD COMPUTING EQUIP IND INNOVATION CENT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411082315.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-08-08
Publication Date
2025-01-03
Estimated Expiration
2044-08-08

AI Technical Summary

Technical Problem

Traditional adaptive channel selection routing algorithms lead to deadlock in subtopology networks, resulting in paralysis of routing topology networks and reducing system reliability.

Method used

By determining the priority of the current routing node in the target topology network and managing the data transmission order based on priority when the target transmission path is occupied, the deadlock situation is avoided.

Benefits of technology

It effectively avoids deadlock in the subtopology network, and improves the reliability of the system and data transmission efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118612136B_ABST
    Figure CN118612136B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of computer technology, and discloses a data transmission method, device, computer equipment and storage medium, wherein the method comprises: when transmitting target data through a current sub-topology network in a target topology network, determining the current routing node where the target data is located in the current sub-topology network; determining the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network; and managing the transmission order of the target data based on the priority when the target transmission path is occupied. The present invention can manage the order of data transmission in the sub-topology network based on the priority, so as to pay attention to the routing selection of other adjacent nodes when transmitting the target data, avoid the occurrence of deadlock, and improve the reliability of the system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computer technology, and in particular to a data transmission method, device, computer equipment and storage medium. Background Art

[0002] The topology of a computer network refers to the abstract connection mode in which various network devices (such as routers, switches, etc.) including computers in the network achieve network interconnection. Computer network topology is concerned with this connection relationship and its diagram, and does not care about the various details of the connected computers or devices. The nodes mainly refer to the various active devices connected in the network. Therefore, the topology of a computer network is composed of nodes and links.

[0003] Specifically, Figure 1 The figure shows a schematic diagram of the network topology structure in the relevant data transmission scheme, wherein the network topology structure is composed of multiple triangular closed-loop sub-topology networks, such as sub-topology network 1. However, in the traditional adaptive channel selection routing algorithm, each node data packet only pays attention to the status of all transmission paths of the current node when routing, and does not pay attention to the routing selection of other adjacent nodes. When data is transmitted, the transmission path is usually locked, and the locked transmission path can no longer transmit other data, resulting in data conflicts. Therefore, in a specific scenario, if there is a data conflict in each transmission path in the sub-topology network, it will cause a deadlock phenomenon. The deadlock problem will cause the routing topology network to be paralyzed and reduce the reliability of the system. Summary of the invention

[0004] In view of this, the present invention provides a data transmission method, apparatus, computer equipment and storage medium to solve the problem that a deadlock phenomenon occurs in a sub-topology network and causes the routing topology network to be paralyzed.

[0005] In a first aspect, the present invention provides a data transmission method, the method comprising:

[0006] When transmitting target data through a current sub-topology network in a target topology network, determining a current routing node where the target data is located in the current sub-topology network, wherein the target topology network includes multiple layers of routing nodes connected in a binary tree structure, adjacent routing nodes in each layer of routing nodes in the binary tree structure are communicatively connected, and the adjacent routing nodes are communicatively connected with corresponding routing nodes in adjacent layers of the target topology network to form a ring-shaped sub-topology network;

[0007] Determining the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network;

[0008] When the target transmission path is occupied, the transmission order of the target data is managed based on the priority.

[0009] In an optional implementation, determining the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network includes:

[0010] Determining the target transmission path based on a comparison result of the routing vectors of the current routing node and the output port, wherein the routing vector is a sequence value used to indicate a position of a node in the target topology network in the target topology network;

[0011] When the transmission direction of the target transmission path and the number of routing nodes in the target transmission path do not meet the priority conditions, the priority of the current routing node is set to the first priority, wherein the first priority is used to indicate that the transmission priority of the target transmission path is lower than other transmission paths in the current sub-topology network.

[0012] In the embodiment of the present invention, it is possible to determine whether the target transmission path meets the priority condition, and when the target transmission path meets the priority condition, the priority of the current routing node is reduced to the minimum, thereby reducing the probability of deadlock in the sub-topology network.

[0013] In an optional embodiment, the method further includes:

[0014] Based on the priority condition, obtaining a preset value of the associated bit corresponding to the transmission direction;

[0015] When the value in the associated bit of the routing vector of the current routing node is the preset value, it is determined that the current routing node does not meet the priority condition.

[0016] In the embodiment of the present invention, it is possible to determine whether the target transmission path meets the priority condition, and when the target transmission path meets the priority condition, the priority of the current routing node is reduced to the minimum, thereby reducing the probability of deadlock in the sub-topology network.

[0017] In an optional implementation manner, determining the target transmission path based on a comparison result between the current routing node and the routing vector of the output port includes:

[0018] Obtaining a routing vector of a current routing node and an output port corresponding to the target data in the current sub-topology network;

[0019] Determining a transmission direction of the target data based on a comparison result of the routing vectors;

[0020] A target transmission path whose occupancy status satisfies the transmission condition is determined from among the candidate transmission paths matching the transmission direction.

[0021] In an embodiment of the present invention, the transmission direction of the target data can be determined based on the comparison result between the preset bit numbers of the routing vectors of the current routing node and the output port, and the candidate transmission path with the shortest transmission distance in the transmission direction is determined as the target transmission path, thereby improving the data transmission efficiency of the system.

[0022] In an optional implementation, determining the transmission direction of the target data based on the comparison result of the routing vectors includes:

[0023] Determining whether the preset number of bits of the routing vectors is equal;

[0024] If yes, determining that the transmission direction of the target data is non-data uplink, wherein the data downlink is used to indicate that the level of the corresponding output node in the current sub-topology network is not higher than that of the input node;

[0025] If not, it is determined that the transmission direction of the target data is data uplink, wherein the data uplink is used to indicate that the level of the corresponding output node in the current sub-topology network is lower than that of the input node.

[0026] In an embodiment of the present invention, the transmission direction of the target data can be determined based on the comparison result between the preset bit numbers of the routing vectors of the current routing node and the output port, and the candidate transmission path with the shortest transmission distance in the transmission direction is determined as the target transmission path, thereby improving the data transmission efficiency of the system.

[0027] In an optional implementation, the above method further includes:

[0028] Determining, in the target topology network, a target level corresponding to a current routing node where the target data is located;

[0029] Based on the association information, the preset number of bits corresponding to the target level is determined, wherein the association information is used to indicate the association relationship between different levels in the target topology network and the corresponding preset number of bits.

[0030] In an embodiment of the present invention, the transmission direction of the target data can be determined based on the comparison result between the preset bit numbers of the routing vectors of the current routing node and the output port, and the candidate transmission path with the shortest transmission distance in the transmission direction is determined as the target transmission path, thereby improving the data transmission efficiency of the system.

[0031] In an optional implementation, determining a target transmission path whose occupancy status satisfies a transmission condition among candidate transmission paths matching the transmission direction includes:

[0032] Obtaining the priority of the to-be-selected transmission path;

[0033] According to the selection order from high to low priority, a target transmission path whose occupation status is unoccupied is determined among the candidate transmission paths.

[0034] In the embodiment of the present invention, the priority of the transmission path with a shorter transmission distance can be set higher, so that when selecting the target transmission path, the transmission path with a shorter transmission distance can be selected according to the priority, thereby improving the data transmission efficiency of the system.

[0035] In an optional implementation, when the target transmission path is occupied, managing the transmission order of the target data based on the priority includes:

[0036] Acquire a second priority of a starting routing node occupying the target transmission path, wherein the starting routing node is a routing node that initiates a routing request;

[0037] When the second priority is higher than that of the current routing node, the target data is blocked at the current routing node, and the target data is transmitted when the target transmission path is in an idle state.

[0038] In the embodiment of the present invention, the transmission order of the target data can be managed according to the priority, thereby eliminating the deadlock problem that may occur in the traditional adaptive channel selection routing algorithm. At the same time, the routing nodes in the sub-topology structure are prioritized to improve the priority of data routing within the group, alleviate routing congestion within the group, and improve the transmission efficiency of the system.

[0039] In an optional implementation manner, determining that the target transmission path is occupied includes:

[0040] Based on the occupancy information of the sub-topology network, acquiring the occupancy status of the target transmission path, wherein the occupancy information is used to mark the occupancy status of each transmission path in the current sub-topology network;

[0041] When the occupation state of any sub-path in the target transmission path is occupied, it is determined that the target transmission path is occupied.

[0042] In the embodiment of the present invention, the transmission order of the target data can be managed according to the priority, thereby eliminating the deadlock problem that may occur in the traditional adaptive channel selection routing algorithm. At the same time, the routing nodes in the sub-topology structure are prioritized to improve the priority of data routing within the group, alleviate routing congestion within the group, and improve the transmission efficiency of the system.

[0043] In an optional implementation manner, transmitting the target data when the target transmission path is in an idle state includes:

[0044] Determining whether the priority of the current routing node is a first priority, wherein the first priority is used to indicate that the transmission priority of the target transmission path is lower than other transmission paths in the current sub-topology network;

[0045] If so, updating the occupancy status of each sub-path in the target transmission path to occupied in the occupancy information;

[0046] If not, the occupancy status of the sub-path currently transmitting the target data in the target transmission path is updated to occupied in the occupancy information.

[0047] In an embodiment of the present invention, when the current routing node has the first priority, considering that the first priority is the lowest priority, the occupancy status of each sub-transmission path in the target transmission path can be updated to occupied, thereby locking each hop sub-transmission path in the target transmission path to avoid congestion caused by the second hop sub-transmission path being preempted.

[0048] In an optional implementation, the above method further includes:

[0049] Acquire accompanying information corresponding to the current sub-topology network, wherein the accompanying information is used to indicate the transmission status of the target data in the target transmission path;

[0050] The current routing node where the target data is located in the target transmission path is monitored in real time, and the accompanying information is updated based on the current routing node.

[0051] In the embodiment of the present invention, the accompanying information of the target data when it is transmitted in the target transmission path can be updated, so as to correctly route the target data to the target routing node or output port.

[0052] In an optional implementation, real-time monitoring of the current routing node where the target data is located in the target transmission path, and updating the accompanying information based on the current routing node, includes:

[0053] Based on the transmission direction between the current routing node and the target data, determine the number of remaining sub-paths, and obtain the node flag of the current routing node, wherein the remaining sub-paths are used to indicate the transmission paths between the remaining adjacent routing nodes to be transmitted with the target data in the sub-topology network;

[0054] The accompanying information is updated based on the number of paths and the node identifier.

[0055] In the embodiment of the present invention, the accompanying information of the target data when it is transmitted in the target transmission path can be updated, so as to correctly route the target data to the target routing node or output port.

[0056] In a second aspect, the present invention provides a data transmission device, the device comprising:

[0057] A first determination module is used to determine a current routing node where the target data is located in the current sub-topology network when transmitting target data through the current sub-topology network in the target topology network, wherein the target topology network includes multiple layers of routing nodes connected according to a binary tree structure, adjacent routing nodes in each layer of routing nodes in the binary tree structure are communicatively connected, and the adjacent routing nodes are communicatively connected with corresponding routing nodes in adjacent layers of the target topology network to form a ring-shaped sub-topology network;

[0058] A second determination module, configured to determine the priority of the current routing node based on a target transmission path corresponding to the target data in the current sub-topology network;

[0059] A management module is used to manage the transmission order of the target data based on the priority when the target transmission path is occupied.

[0060] In a third aspect, the present invention provides a computer device, comprising: a memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, and the processor executing the data transmission method of the first aspect or any corresponding embodiment thereof by executing the computer instructions.

[0061] In a fourth aspect, the present invention provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the data transmission method of the first aspect or any corresponding embodiment thereof.

[0062] In a fifth aspect, the present invention provides a computer program product, comprising computer instructions for causing a computer to execute the data transmission method of the first aspect or any corresponding embodiment thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] In order to more clearly illustrate the specific implementation methods of the present invention or the technical solutions in the prior art, the drawings required for use in the specific implementation methods or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some implementation methods of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0064] Figure 1It is a schematic diagram of a network topology in a related data transmission scheme;

[0065] Figure 2 It is a schematic diagram of the deadlock situation in sub-topology network 1;

[0066] Figure 3 is a flow chart of a data transmission method according to an embodiment of the present invention;

[0067] Figure 4 is a flow chart of another data transmission method according to an embodiment of the present invention;

[0068] Figure 5 is a flow chart of another data transmission method according to an embodiment of the present invention;

[0069] Figure 6 is a schematic diagram of occupancy information corresponding to sub-topology network 1;

[0070] Figure 7 It is a schematic diagram of path management information;

[0071] Figure 8 It is a schematic diagram of updating the occupancy information corresponding to the sub-topology network 1;

[0072] Fig. 9 is a schematic diagram of updating path management information;

[0073] Fig.10 is a schematic diagram of updating the accompanying information corresponding to the sub-topology network 1;

[0074] Fig.11 is a flow chart of another data transmission method according to an embodiment of the present invention;

[0075] Fig.12 is a structural block diagram of a data transmission device according to an embodiment of the present invention;

[0076] Fig.13 It is a schematic diagram of the hardware structure of a computer device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0077] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.

[0078] In conjunction with the application scenarios on which the execution of the data transmission method depends, the application scenarios are described here.

[0079] The topology of a computer network refers to the abstract connection mode in which various network devices (such as routers, switches, etc.) including computers in the network achieve network interconnection. Computer network topology is concerned with this connection relationship and its diagram, and does not care about the various details of the connected computers or devices. The nodes mainly refer to the various active devices connected in the network. Therefore, the topology of a computer network is composed of nodes and links.

[0080] Specifically, Figure 1 The figure shows a schematic diagram of the network topology structure in the relevant data transmission scheme, wherein the network topology structure is composed of multiple triangular closed-loop sub-topology networks, such as sub-topology network 1. However, in the traditional adaptive channel selection routing algorithm, each node data packet only pays attention to the status of all transmission paths of the current node when routing, and does not pay attention to the routing selection of other adjacent nodes. When data is transmitted, the transmission path is usually locked, and the locked transmission path can no longer transmit other data, resulting in data conflicts. Therefore, in a specific scenario, if there is a data conflict in each transmission path in the sub-topology network, it will cause a deadlock phenomenon. The deadlock problem will cause the routing network topology to be paralyzed and reduce the reliability of the system.

[0081] For example, if Figure 2 The figure shows a deadlock situation in sub-topology network 1, where the deadlock situation can be divided into counterclockwise deadlock and clockwise deadlock. Here, the counterclockwise deadlock is taken as an example to explain the occurrence of the deadlock scenario. The scenario is: Data packet 1 is sent from level 1 routing node 1 to level 1 routing node 0, and a 2-hop path is selected (that is, two transmission paths are required to reach the target routing node). The first hop is from level 1 routing node 1 to level 2 routing node 0 (solid line), and the second hop is from level 2 routing node 0 to level 1 routing node 0 (dotted line). At this time, data packet 1 is performing the first hop data transmission, that is, the path from level 1 routing node 1 to level 2 routing node 0 is locked; data packet 2 is sent from level 2 routing node 0 to level 1 routing node 1, and a 2-hop path is selected. The first hop is from level 2 routing node 0 to level 1 routing node 0 (dotted line). Routing node 0 to level 1 routing node 0 (solid line), the second hop is level 1 routing node 0 to level 1 routing node 1 (dashed line), and at this time, data packet 2 is performing the first hop data transmission, that is, the path from level 2 routing node 0 to level 1 routing node 0 is locked; data packet 3 is sent from level 1 routing node 0 to level 2 routing node 0, and a 2-hop path is selected, the first hop is level 1 routing node 0 to level 1 routing node 1 (solid line), the second hop is level 1 routing node 1 to level 2 routing node 0 (dashed line), and at this time, data packet 3 is performing the first hop data transmission, that is, the path from level 1 routing node 0 to level 1 routing node 1 is locked; as shown in FIG. Figure 2As shown in (1), the first-hop locked path of the current data packets 1, 2, and 3 (the solid line in 2 (1) in the figure) forms a ring. The second-hop data transmission of data packets 1, 2, and 3 is blocked by the ring structure of the first hop, and the locked ring structure cannot be unlocked, that is, a deadlock occurs. The deadlock of the sub-topology network 1 will cause the entire topology structure to be paralyzed. The situation of deadlock in the clockwise direction is the same as that of deadlock in the counterclockwise direction, which will not be repeated here.

[0082] Based on this, an embodiment of the present invention provides a data transmission method, when transmitting target data through the current sub-topology network in the target topology network, the current routing node where the target data is located in the current sub-topology network is determined, wherein the target topology network includes multiple layers of routing nodes connected according to a binary tree structure, and the adjacent routing nodes in each layer of routing nodes in the binary tree structure are communicated and connected, and the adjacent routing nodes are communicated and connected with the corresponding routing nodes in the adjacent layers of the target topology network to form a ring-shaped sub-topology network. Then, based on the target transmission path corresponding to the target data in the current sub-topology network, the priority of the current routing node is determined, and when the target transmission path is occupied, the transmission order of the target data is managed based on the priority, so that the order of data transmission in the sub-topology network is managed based on the priority, so that the routing selection of other adjacent nodes is paid attention to when the target data is transmitted, the occurrence of deadlock is avoided, and the reliability of the system is improved.

[0083] According to an embodiment of the present invention, a data transmission method embodiment is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0084] In this embodiment, a data transmission method is provided, which can be used in the above-mentioned computer network. Figure 1 is a flow chart of a data transmission method according to an embodiment of the present invention. Figure 3 As shown, the process includes the following steps:

[0085] Step S301, when transmitting target data through the current sub-topology network in the target topology network, determine the current routing node where the target data is located in the current sub-topology network, wherein the target topology network includes multiple layers of routing nodes connected according to a binary tree structure, and adjacent routing nodes in each layer of routing nodes in the binary tree structure are communicated with each other, and adjacent routing nodes are communicated with corresponding routing nodes in adjacent levels of the target topology network to form a ring-shaped sub-topology network.

[0086] In the embodiment of the present invention, the target data may include a data packet transmitted in the target topology network, and the current routing node is the routing node where the target data is currently located in the target topology network during the routing process. Figure 1 Level 1 routing node 0 in.

[0087] Here, in the target topology network, adjacent routing nodes in each layer are connected to each other through links. In the target topology network, each pair of adjacent routing nodes and the routing nodes connected to them in the previous layer form a closed triangular sub-topology network, for example Figure 1 The sub-topology network 1 in the example includes: level 1 routing node 0, level 1 routing node 1, and level 2 routing node 0.

[0088] Step S302: determining the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network.

[0089] In an embodiment of the present invention, the target routing node corresponding to the target data in the current sub-topology network can be determined based on the current routing node and the end output port of the data routing, so as to determine the target transmission path corresponding to the target data in the current sub-topology network according to the current routing node and the target routing node.

[0090] For example, if the input port of the target data is Figure 1 The input port is 0, the current routing node in the current sub-topology network is level 1 routing node 0, and the end point of the data routing is output port 15. Then, the target transmission path corresponding to the target data in sub-topology network 1 can be: level 1 routing node 0~level 1 routing node 1~level 2 routing node 0, or level 1 routing node 0~level 2 routing node 0.

[0091] Next, the transmission distance and transmission direction of the target transmission path can be determined, and the priority of the current routing node can be determined. The priority is used to indicate the data transmission order of the target transmission path. The higher the priority, the higher the data transmission order.

[0092] Specifically, the priority of the current routing node can be determined by the following routing rules:

[0093] Routing rule 1: Ensure that the shortest path of each routing node is the highest priority, that is, for each routing node, in its two data transmission paths ( Figure 1 In the topology shown, each node data uplink / downlink corresponds to two data paths, and the transmission distances are respectively 1-hop data transmission and 2-hop data transmission to reach the target routing node). The 1-hop data transmission path has the highest priority and should be the first choice for path transmission.

[0094] For example, in the above sub-topology network 1, if the determined transmission direction is data uplink, there are two corresponding transmission paths: candidate transmission path 1: level 1 routing node 0~level 1 routing node 1~level 2 routing node 0, candidate transmission path 2: level 1 routing node 0~level 2 routing node 0. Here, the candidate transmission path 1 reaches the target routing node after 2-hop data transmission, and the candidate transmission path 2 reaches the target routing node. Therefore, the candidate transmission path 2 has the highest priority.

[0095] Routing rule 2: When the transmission direction is clockwise routing, the priority of the routing node whose transmission distance is 2 hops to reach the target routing node is reduced to the lowest.

[0096] For example, in the above sub-topology network 1, if the determined transmission direction is clockwise routing, the routing node whose transmission distance is 2 hops of data transmission to reach the target routing node is level 1 routing node 1, so the priority of this routing node can be reduced to the lowest.

[0097] Routing rule three: When the transmission direction is counterclockwise routing, the priority of the routing node whose transmission distance is 2 hops to reach the target routing node is reduced to the lowest.

[0098] For example, in the above sub-topology network 1, if the transmission distance is 2 hops, the routing node that transmits data to the target routing node is level 1 routing node 0, and therefore the priority of the routing node can be reduced to the lowest.

[0099] Step S303: when the target transmission path is occupied, manage the transmission order of the target data based on the priority.

[0100] In the embodiment of the present invention, when managing the transmission order of target data, if the target transmission path receives data transmission requests from multiple routing nodes at the same time, the principle of data transmission priority initiated by the routing node with a high priority should be followed.

[0101] For example, if the target transmission path is the candidate transmission path 1, in the candidate transmission path 1, the sub-path of level 1 routing node 0 to level 1 routing node 1 is occupied, and the sub-path is a 1-hop data transmission path. It can be seen from the above routing rule 1 that the routing priority of the sub-path is the highest. Therefore, the transmission request of the target data can be blocked first, and after all the sub-paths in the target transmission path are idle, the target data can be transmitted through the target transmission path.

[0102] It can be known from the above description that in an embodiment of the present invention, when transmitting target data through the current sub-topology network in the target topology network, the current routing node where the target data is located in the current sub-topology network is determined, wherein the target topology network includes multiple layers of routing nodes connected according to a binary tree structure, and the adjacent routing nodes in each layer of routing nodes in the binary tree structure are communicated and connected, and the adjacent routing nodes are communicated and connected with the corresponding routing nodes in the adjacent layers of the target topology network to form a ring-shaped sub-topology network. Then, based on the target transmission path corresponding to the target data in the current sub-topology network, the priority of the current routing node is determined, and when the target transmission path is occupied, the transmission order of the target data is managed based on the priority, thereby managing the order of data transmission in the sub-topology network based on the priority, so as to pay attention to the routing selection of other adjacent nodes when transmitting the target data, avoid the occurrence of deadlock, and improve the reliability of the system.

[0103] In this embodiment, another data transmission method is provided, which can be used in the above-mentioned computer network. Figure 4 is a flow chart of another data transmission method according to an embodiment of the present invention. Figure 4 As shown, the process includes the following steps:

[0104] Step S401, when transmitting target data through the current sub-topology network in the target topology network, determine the current routing node where the target data is located in the current sub-topology network, wherein the target topology network includes multiple layers of routing nodes connected in a binary tree structure, adjacent routing nodes in each layer of routing nodes in the binary tree structure are connected in communication, and adjacent routing nodes are connected in communication with corresponding routing nodes in adjacent layers of the target topology network to form a ring-shaped sub-topology network. For details, please refer to Figure 1 Step S301 of the illustrated embodiment will not be described in detail here.

[0105] Step S402: determining the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network.

[0106] Specifically, the above step S402 includes:

[0107] Step S4021, determining a target transmission path based on a comparison result of a routing vector between a current routing node and an output port, wherein a routing vector is a sequence value indicating a position of a node in the target topology network in the target topology network.

[0108] Step S4022, when the transmission direction of the target transmission path and the number of routing nodes in the target transmission path do not meet the priority conditions, the priority of the current routing node is set to the first priority, wherein the first priority is used to indicate that the transmission priority of the target transmission path is lower than other transmission paths in the current sub-topology network.

[0109] In the embodiment of the present invention, each routing node and input and output port in the target topology network are correspondingly set with a routing vector. Figure 1 For a target topology network containing 32 input and output ports, the number of bits of the routing vector may be a 5-bit binary array, which can be used to represent input and output ports 0-32.

[0110] In the above target topology network, the level 1 routing nodes are numbered 0-7, so the routing vectors of level 1 routing nodes 0-level 1 routing nodes 7 can be expressed as: 00000, 00100, 01000, 011000, 10000, 10100, 11000, 11100. Similarly, the level 2 routing nodes are numbered 0-3, so the routing vectors of level 2 routing nodes 0-level 2 routing nodes 3 can be expressed as: 00000, 01000, 10000, 11000. Similarly, the level 3 routing nodes are numbered 0-1, so the routing vectors of level 3 routing nodes 0-level 3 routing nodes 1 can be expressed as: 00000, 10000. In addition, the transmission direction of the level 4 routing node is set to only downward, so the routing vector can be set for the level 4 routing node.

[0111] When determining the priority of the current routing node, the data transmission direction can be determined based on the comparison result of the routing vector of the current routing node and the output port, so as to determine the target routing node according to the transmission direction, thereby determining the candidate transmission path corresponding to the target routing node, and determining the target transmission path in the candidate transmission paths. Here, the highest priority transmission path in the candidate transmission paths that is in an idle state can be determined as the target transmission path.

[0112] For example, in the above-mentioned sub-topology network 1, the selected transmission paths include the above-mentioned selected transmission path 1 and the selected transmission path 2. If these two selected transmission paths are both in an idle state, according to routing rule 1, it can be determined that the priority of the selected transmission path 2 is higher. Therefore, the selected transmission path 2 can be determined as the target transmission path.

[0113] Next, it can be determined whether the transmission direction of the target transmission path and the number of routing nodes in the target transmission path meet the priority condition, wherein the transmission direction includes the above-mentioned clockwise direction and counterclockwise direction, and the number of routing nodes is used to indicate the transmission distance, that is, whether the target data is transmitted through 2 hops or 1 hop data to reach the target routing node in the target transmission path. Here, it can be determined whether the target transmission path meets the priority condition according to the above-mentioned routing rules 2 and 3. If it does, the priority of the current routing node is reduced to the lowest, that is, reduced to the above-mentioned first priority.

[0114] In addition, when determining whether the target transmission path meets the priority condition, the following process may also be included:

[0115] Step a1: based on the priority condition, obtain the preset value of the correlation bit corresponding to the transmission direction.

[0116] Step a2: when the value in the associated bit of the routing vector of the current routing node is a preset value, it is determined that the current routing node does not meet the priority condition.

[0117] In an embodiment of the present invention, the transmission direction may include clockwise routing and counterclockwise routing, and the priority condition may include a preset value of an associated bit corresponding to each transmission direction in a sub-topology network at different levels in the target topology network, wherein the preset value may be 0 or 1. Here, when the value in the associated bit of the routing vector of the current routing node is a preset value, it may be determined that the current routing node does not meet the priority condition, and the priority of the current routing node is reduced to the lowest.

[0118] Specifically, when the transmission direction is clockwise routing, for the level 1 routing node (a sub-topology network consisting of the level 1 routing node and the level 2 routing node), the priority of the routing node with the third bit of the routing vector as 1 is reduced to the lowest, (for example Figure 1 For the sub-topology network 1 in the figure, the routing vector corresponding to the level 1 routing node 1 is 00100, and the third bit is 1, so the level 1 routing node 1 has the lowest priority). For the level 2 routing nodes (the sub-topology structure consisting of the level 2 routing nodes and the level 3 routing nodes), the priority of the routing node with the fourth bit 1 in the routing vector is reduced to the lowest.

[0119] In addition, when the transmission direction is counterclockwise routing, for the level 1 routing node (the sub-topology network composed of the level 1 routing node and the level 2 routing node), the priority of the routing node with the third bit of 0 in the routing vector is reduced to the lowest, (for example Figure 1In the sub-topology network 1, the routing vector corresponding to the level 1 routing node 0 is 00000, and the third bit is 0, so the level 1 routing node 0 has the lowest priority). For the level 2 routing nodes (the sub-topology structure composed of the level 2 routing nodes and the level 3 routing nodes), the priority of the routing node with the fourth bit of 0 in the routing vector is reduced to the lowest.

[0120] Step S403: When the target transmission path is occupied, manage the transmission order of the target data based on the priority. Figure 1 Step S303 of the illustrated embodiment will not be described in detail here.

[0121] In the embodiment of the present invention, it is possible to determine whether the target transmission path meets the priority condition, and when the target transmission path meets the priority condition, the priority of the current routing node is reduced to the minimum, thereby reducing the probability of deadlock in the sub-topology network.

[0122] In some optional implementations, the above step S4021 includes:

[0123] Step b1, obtaining the routing vector of the current routing node and output port corresponding to the target data in the current sub-topology network.

[0124] Step b2: determining the transmission direction of the target data based on the comparison result of the routing vectors.

[0125] Step b3, determining a target transmission path whose occupancy status satisfies the transmission condition among the candidate transmission paths that match the transmission direction.

[0126] In an embodiment of the present invention, a comparison can be performed based on preset bits of the routing vectors of the current routing node and the output port to obtain a comparison result, thereby determining whether the transmission direction of the target data is data uplink or non-data uplink, wherein the non-data uplink may include data downlink.

[0127] When the transmission direction of the target data is determined by the above step b2, the following process is included:

[0128] (1) Determine whether the preset number of bits of the routing vectors is equal.

[0129] (2) If so, the transmission direction of the target data is determined to be non-data uplink, where data downlink indicates that the level of the corresponding output node in the current sub-topology network is not higher than that of the input node.

[0130] (3) If not, the transmission direction of the target data is determined to be data uplink, where data uplink is used to indicate that the level of the corresponding output node in the current sub-topology network is lower than that of the input node.

[0131] In the embodiment of the present invention, the data downlink is used to indicate that the target data is transmitted from the high-level routing node to the low-level routing node, for example, from the level 3 routing node to the level 2 routing node. The data uplink is used to indicate that the target data is transmitted from the low-level routing node to the high-level routing node, for example, from the level 2 routing node to the level 3 routing node.

[0132] It should be understood that the transmission direction of the target data may be determined based on the comparison result of the routing vectors, which specifically includes the following process:

[0133] (1) Determine the target level corresponding to the current routing node where the target data is located in the target topology network.

[0134] (2) Determine a preset number of bits corresponding to the target layer based on the association information, wherein the association information is used to indicate an association relationship between different layers in the target topology network and the corresponding preset number of bits.

[0135] In an embodiment of the present invention, the preset number of bits corresponding to routing nodes at different levels may be different. Therefore, an association relationship between the routing level and the preset number of bits may be established in advance. Specifically, for a level 1 routing node, the preset number of bits may be set to the upper 3 bits of the routing vector, i.e., the first 3 bits from left to right in the routing vector. When determining the transmission direction of the target data, the upper 3 bits of the routing vector corresponding to the input node may be compared with the upper 3 bits of the routing vector of the output port. If they are the same, it indicates that the transmission direction is that the target data is transmitted downward via the input node, otherwise the data is transmitted upward.

[0136] Similarly, for a level 2 routing node, when determining the transmission direction of the target data, the upper 2 bits of the routing vector corresponding to the input node can be compared with the upper 2 bits of the routing vector of the output port. If they are the same, it means that the transmission direction is that the target data is transmitted downstream through the input node, otherwise the data is transmitted upstream. In addition, for a level 3 routing node, when determining the transmission direction of the target data, the highest bit of the routing vector corresponding to the input node can be compared with the highest bit of the routing vector of the output port. If they are the same, it means that the transmission direction is that the target data is transmitted downstream through the input node, otherwise the data is transmitted upstream.

[0137] It should be understood that for a level 4 routing node, the data transmission direction can only be downlink via the routing node.

[0138] For example, if the input port of the target data is Figure 1The input port 0 in the sub-topology network 1 is the current routing node 0 at level 1, the end point of the data routing is the output port 15, the routing vector of the current routing node is 00000, and the routing vector of the output port is 01111. For the level 1 routing node, the preset number of bits can be set to the upper 3 bits of the routing vector. Therefore, the upper 3 bits of 00000 and 01111 can be compared to obtain different comparison results, thereby determining that the transmission direction of the target data is the data uplink.

[0139] In an embodiment of the present invention, the transmission direction of the target data can be determined based on the comparison result between the preset bit numbers of the routing vectors of the current routing node and the output port, and the candidate transmission path with the shortest transmission distance in the transmission direction is determined as the target transmission path, thereby improving the data transmission efficiency of the system.

[0140] In some optional implementations, the above step b3 includes:

[0141] (1) Obtain the priority of the transmission path to be selected.

[0142] (2) According to the selection order from high to low priority, determine the target transmission path whose occupation status is unoccupied from the candidate transmission paths.

[0143] In the embodiment of the present invention, after determining the above-mentioned candidate transmission path, the occupancy information corresponding to the sub-topology network can be obtained to query the occupancy status of the candidate transmission path based on the occupancy information. It should be understood that the idle transmission path with the highest priority can be selected as the target transmission path among the candidate transmission paths.

[0144] For example, in the above sub-topology network 1, the current routing node where the target data is located is level 1 routing node 0, the target routing node is level 2 routing node 0, and the determined candidate transmission path is the above candidate transmission path 1: level 1 routing node 0~level 1 routing node 1~level 2 routing node 0, and the candidate transmission path 2: level 1 routing node 0~level 2 routing node 0. Here, the candidate transmission path 1 reaches the target routing node after 2 hops of data transmission, and the candidate transmission path 2 reaches the target routing node. Therefore, according to the above routing rule 1, it can be known that the priority of the candidate transmission path 2 is higher than that of the candidate transmission path 1. Therefore, when it is determined based on the occupancy information that the candidate transmission path 1 is in an idle state, and the candidate transmission path 2 is in an occupied state, the candidate transmission path 1 can be determined as the target transmission path.

[0145] In the embodiment of the present invention, the priority of the transmission path with a shorter transmission distance can be set higher, so that when selecting the target transmission path, the transmission path with a shorter transmission distance can be selected according to the priority, thereby improving the data transmission efficiency of the system.

[0146] In this embodiment, another data transmission method is provided, which can be used in the above-mentioned computer network. Figure 5 is a flowchart of another data transmission method according to an embodiment of the present invention. Figure 5 As shown, the process includes the following steps:

[0147] Step S501, when transmitting target data through the current sub-topology network in the target topology network, determine the current routing node where the target data is located in the current sub-topology network, wherein the target topology network includes multiple layers of routing nodes connected in a binary tree structure, adjacent routing nodes in each layer of routing nodes in the binary tree structure are connected in communication, and adjacent routing nodes are connected in communication with corresponding routing nodes in adjacent layers of the target topology network to form a ring-shaped sub-topology network. For details, please refer to Figure 1 Step S301 of the illustrated embodiment will not be described in detail here.

[0148] Step S502: Determine the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network. Figure 1 Step S302 of the illustrated embodiment will not be described in detail here.

[0149] Step S503: when the target transmission path is occupied, manage the transmission order of the target data based on the priority.

[0150] Specifically, the above step S503 includes:

[0151] Step S5031, obtaining the second priority of the starting routing node occupying the target transmission path, wherein the starting routing node is the routing node that initiates the routing request.

[0152] Step S5032, when the second priority is higher than the current routing node, the target data is blocked at the current routing node, and the target data is transmitted when the target transmission path is in an idle state.

[0153] In the embodiment of the present invention, routing rule four is set: in the sub-topology network, for a low-priority routing node in the counterclockwise / clockwise direction, when it initiates a 2-hop path data transmission, if at least one of the other two routing nodes with higher priorities initiates a 2-hop path data transmission in the same direction (clockwise / counterclockwise), the routing request corresponding to the lowest priority routing node will be blocked; if the other two routing nodes with higher priorities do not initiate a 2-hop path data transmission in the same direction (clockwise / counterclockwise), and the 2-hop paths initiated by the low-priority routing nodes are in an idle state at this time, a path application can be made at this time to release the blocking of the target data.

[0154] In the embodiment of the present invention, firstly, it can be determined whether the target transmission path is occupied, which specifically includes the following process:

[0155] Step c1, based on the occupancy information of the sub-topology network, obtaining the occupancy status of the target transmission path, wherein the occupancy information is used to mark the occupancy status of each transmission path in the current sub-topology network.

[0156] Step c2: when the occupation status of any sub-path in the target transmission path is occupied, it is determined that the target transmission path is occupied.

[0157] In an embodiment of the present invention, occupancy information corresponding to the current sub-topology network may be first obtained, wherein the occupancy information includes clockwise occupancy information and counterclockwise occupancy information. Here, the clockwise occupancy information is used to indicate the occupancy status of each clockwise path in the current sub-topology network, and the counterclockwise occupancy information is used to indicate the occupancy status of each counterclockwise path in the current sub-topology network.

[0158] For example, if Figure 6 The occupancy information corresponding to the sub-topology network 1 is shown. From the above, it can be seen that the transmission direction corresponding to the target transmission path is counterclockwise transmission. Therefore, it can be based on Figure 6 The counterclockwise occupancy information in the query query the occupancy status of each sub-transmission path in the target transmission path.

[0159] Specifically, as can be seen from the above, the priority of the current routing node is the lowest priority. Therefore, when initiating 2-hop routing, it is necessary to pay attention to the occupancy status of the transmission path corresponding to the 2-hop routing initiated by the other two routing nodes (level 1 routing node 1 and level 2 routing node 0) in sub-topology network 1.

[0160] Here, by Figure 6 It can be seen that the 2-hop path flags corresponding to the 1st-level routing node 1 and the 2nd-level routing node 0 are both 1, indicating that the two routing nodes have initiated 2-hop routing, wherein the packet request flag and path locking status of the 1st-hop sub-transmission path corresponding to each of the two are both 1, indicating that the occupancy status of the 1st-hop sub-transmission path is occupied. At this time, according to the above-mentioned routing rule 4, it can be determined that the occupancy status of the two sub-paths in the target transmission path is occupied, and then the target transmission path is determined to be occupied.

[0161] When it is determined that the target transmission path is occupied, the second priority of the starting routing node occupying the target transmission path can be obtained, and when the priority corresponding to the current routing node is the first priority, the target data is blocked at the current routing node.

[0162] Here, taking the target transmission path in the above sub-topology network 1 as an example, Figure 6It can be seen that the starting routing nodes occupying the target transmission path include the above-mentioned level 1 routing node 1 and level 2 routing node 0. The priority of the current routing node level 1 routing node 0 is the second priority. Therefore, the priority of the current routing node is lower than that of the starting routing node. At this time, the target data can be blocked at the current routing node.

[0163] Next, you can update Figure 7 Here, since the transmission direction of the target transmission path is counterclockwise, the path management information is used to manage the occupancy state of the counterclockwise transmission path in the sub-topology network 1, wherein the target transmission path (i.e. Figure 7 The number of sub-paths in the level 1 routing node 0~level 1 routing node 1) is 2, and the occupied state is 0 (ie, not occupied).

[0164] In addition, the path state vector management information is used to manage the vector composed of the occupancy state values ​​of each sub-path in the target transmission path. Here, the occupancy state of each sub-path in the target transmission path is unoccupied, so the path state vector can be set to 00. It should be understood that the first 1 search module can be used to start searching from the low bit of the path state vector, and after finding the transmission path corresponding to the value of 1, determine that the transmission path is not occupied, and determine the target transmission path based on the transmission path. Therefore, setting the path state vector to 00 here can avoid the sub-transmission path in the target transmission path from being occupied during the period when the target data is blocked, so that the target data is transmitted when the target transmission path is in an idle state.

[0165] In the embodiment of the present invention, the transmission order of the target data can be managed according to the priority, thereby eliminating the deadlock problem that may occur in the traditional adaptive channel selection routing algorithm. At the same time, the routing nodes in the sub-topology structure are prioritized to improve the priority of data routing within the group, alleviate routing congestion within the group, and improve the transmission efficiency of the system.

[0166] In some optional implementations, the above step S5032 includes:

[0167] Step d1, determine whether the priority of the current routing node is the first priority, where the first priority is used to indicate that the transmission priority of the target transmission path is lower than other transmission paths in the current sub-topology network; if so, execute step d2, if not, execute step d3.

[0168] Step d2: updating the occupancy status of each sub-path in the target transmission path to occupied in the occupancy information.

[0169] Step d3: updating the occupancy status of the sub-path currently transmitting the target data in the target transmission path to occupied in the occupancy information.

[0170] Routing rule five is disclosed in an embodiment of the present invention: in a sub-topology network, when a low-priority routing node applies for 2-hop path data transmission, its corresponding 2-hop path must be locked at the same time. As can be seen from the above, the above-mentioned first priority is the lowest priority in the sub-topology network. Therefore, according to routing rule five, when the current routing node is the first priority, the occupancy status of each sub-transmission path in the target transmission path can be updated to occupied, thereby locking each hop sub-transmission path in the target transmission path. In addition, when the current routing node is not the first priority, it is only necessary to lock the sub-transmission path of the current transmission target data.

[0171] Specifically, taking the target transmission path in the topology network 1 as an example, when the current routing node is the level 1 routing node 0, Figure 8 The figure shows a schematic diagram of updating the occupancy information corresponding to the sub-topology network 1, wherein when the current routing node is the first priority, the occupancy status of the two sub-transmission paths in the target transmission path can be updated to occupied, that is, the packet request flag and the path lock status of the sub-transmission path are both set to 1. In addition, the 2-hop path flag of the 1st hop sub-transmission path can be set to 1, thereby indicating that the target transmission path has a next-hop sub-transmission path.

[0172] It should be understood that in updating the above Figure 8 When the occupancy information shown in Figure 7 The path management information shown in , the specific update method is as follows Fig. 9 As shown in Fig. 9 The occupancy status of level 1 routing node 0~level 1 routing node 1) is updated to 1 (i.e., not occupied).

[0173] In an embodiment of the present invention, when the current routing node has the first priority, considering that the first priority is the lowest priority, the occupancy status of each sub-transmission path in the target transmission path can be updated to occupied, thereby locking each hop sub-transmission path in the target transmission path to avoid congestion caused by the second hop sub-transmission path being preempted.

[0174] In some optional embodiments, the above Figure 3 The corresponding embodiments also include:

[0175] Step S11, obtaining accompanying information corresponding to the current sub-topology network, wherein the accompanying information is used to indicate the transmission status of the target data in the target transmission path.

[0176] Step S12, monitoring the current routing node where the target data is located in the target transmission path in real time, and updating the accompanying information based on the current routing node.

[0177] In the embodiment of the present invention, the above accompanying information can be managed by the routing direction management unit, such as Fig.10 It is a schematic diagram of updating the accompanying information corresponding to the above-mentioned sub-topology network 1. In the accompanying information, the routing data n is used to represent the target data, and the path node number is used to indicate the current routing node where the target data n is located, that is, the input port 0.

[0178] When transmitting the target data through the target transmission path, the current routing node where the target data is located in the target transmission path can be updated in real time, and the accompanying information can be updated based on the current routing node, which specifically includes the following process:

[0179] Step e1, based on the transmission direction between the current routing node and the target data, determine the number of remaining sub-paths and obtain the node flag of the current routing node, wherein the remaining sub-paths are used to indicate the transmission paths between the remaining adjacent routing nodes for the target data to be transmitted in the sub-topology network.

[0180] Step e2, updating the accompanying information based on the number of paths and node identifiers.

[0181] It should be understood that the number of remaining sub-paths in the target transmission path is: the number of remaining routing nodes that have not transmitted the target data, that is, Fig.10 Therefore, when the target data is in the sub-topology network 1, the number of remaining paths in the accompanying information is 1, and the path node number (i.e. Fig.10 The path node number in ( ) is level 1 routing node 0. Since the target transmission path includes two sub-transmission paths, the number of remaining paths is 2.

[0182] In the embodiment of the present invention, the accompanying information of the target data when it is transmitted in the target transmission path can be updated, so as to correctly route the target data to the target routing node or output port.

[0183] In this embodiment, another data transmission method is provided, which can be used in the above-mentioned computer network. Fig.11 is a flow chart of another data transmission method according to an embodiment of the present invention. Fig.11 As shown, the process includes the following steps:

[0184] Step S901 , compare the high 3 bits of the routing vectors of the input port and the output port of the target data to obtain a comparison result, and determine the transmission direction of the target data according to the comparison result.

[0185] In the embodiment of the present invention, the transmission direction includes: data uplink and non-data uplink. The specific implementation method for determining the transmission direction is as described in the embodiment corresponding to the above step S302, which will not be repeated here.

[0186] Step S902, when the target data is in a triangle sub-topology network consisting of a level 1 routing node and a level 2 routing node, determine the priority of the current routing node.

[0187] Step S903: managing the transmission order of the target data based on the priority.

[0188] In an embodiment of the present invention, priorities are divided into two types, clockwise routing priority and counterclockwise routing priority, and the priority confirmation method is described in routing rules two and three. When the three routing nodes in the sub-topology are transmitting data, according to routing rule one, they first select the shortest transmission path for data transmission. When the shortest transmission path is occupied, another 2-hop data path is selected for transmission. For routing nodes with low priority, their corresponding 2-hop transmission paths should follow routing rule four, that is, when a high-priority routing node initiates a 2-hop data routing application in the same direction, the 2-hop data transmission request corresponding to the lowest priority routing node will be blocked. Finally, if the lowest priority routing node successfully applies for a 2-hop data path according to routing rule four, at this time, according to routing rule five, the 2-hop data paths that it has successfully applied for are locked at the same time.

[0189] For example, for data request 1 that sends a data packet from input port 4 to output port 0, the data arrives at level 1 routing node 1. At this time, the path from level 1 routing node 1 to level 1 routing node 0 is occupied. At this time, in the corresponding row of level 1 routing node 1 to level 1 routing node 0 in the occupancy information of the current sub-topology network, the data packet request flag is 1 and the path lock status is 1.

[0190] When it is determined according to the implementation method corresponding to the above step S901 that the transmission direction of the data request 1 is data downlink, according to routing rule three, the level 1 routing node 1 is a high priority routing node (when routing counterclockwise, the third bit of the routing vector of the level 1 routing node 1 is 1, which is a high priority. If a 2-hop routing is initiated, there is no need to pay attention to the 2-hop routing status of the other 2 nodes, and when the 2-hop path of the node is determined, only the 1-hop path needs to be locked).

[0191] At this time, considering that the data transmission direction is counterclockwise, it is necessary to update the counterclockwise occupancy information. At this time, there are 2 paths to choose from, namely, 1-hop path 1-level routing node 1 to 1-level routing node 0, 2-hop path 1-level routing node 1 to 2-level routing node 0, and 2-level routing node 0 to 1-level routing node 0. By querying the counterclockwise occupancy information, it is known that the highest priority transmission path 1-level routing node 1 to 1-level routing node 0 is occupied, and 1-level routing node 1 to 2-level routing node 0 is idle, then the occupancy status of 1-level routing node 1 in the counterclockwise occupancy information is updated, and the path state vector 10 is formed at this time (the state vector corresponding to the shortest 1-hop path is placed in the lowest bit to enjoy the highest priority).

[0192] Next, the first transmission path with an occupancy value of 1 can be searched through the above-mentioned vector first 1 search module according to the search order from low to high, so as to select the 2-hop path 1-level routing node 1~2-level routing node 0 and 2-level routing node 0~1-level routing node 0 as the target transmission path, and update the occupancy information corresponding to the target transmission path in the current sub-topology network, that is, update the occupancy status of the 1-level routing node 1~2-level routing node 0 to 1, and at the same time set the data packet request flag to 1, and the path locking state to 1. At this time, a 2-hop path is selected, so the 2-hop path flag is set to 1 to lock the first hop sub-transmission path in the target transmission path. Finally, the corresponding accompanying information can be updated when the target data is transmitted through the target transmission path. The specific updating method is described in the embodiment corresponding to the above-mentioned steps S11-step S12, and will not be repeated here.

[0193] For another example, in response to data request 2 for sending a data packet from input port 20 to output port 7, the data arrives at level 2 routing node 0. At this time, the path from level 2 routing node 0 to level 1 routing node 1 is occupied. At this time, in the corresponding row of level 2 routing node 0 to level 1 routing node 1 in the occupancy information of the current sub-topology network, the data packet request flag is 1 and the path lock status is 1.

[0194] When it is determined according to the implementation method corresponding to the above step S901 that the transmission direction of the data request 2 is data downlink, according to routing rule three, the level 1 routing node 1 is a high priority routing node (when routing counterclockwise, the third bit of the routing vector of the level 1 routing node 1 is 1, which is a high priority. If a 2-hop routing is initiated, there is no need to pay attention to the 2-hop routing status of the other 2 nodes, and when the 2-hop path of the node is determined, only the 1-hop path needs to be locked).

[0195] At this time, considering that the data transmission direction is counterclockwise, it is necessary to update the counterclockwise occupancy information. At this time, there are 2 paths to choose from, namely, the 1-hop path of level 2 routing node 0 to level 1 routing node 1, the 2-hop path of level 2 routing node 0 to level 1 routing node 0, and the 1-level routing node 0 to level 1 routing node 1. By querying the counterclockwise occupancy information, it is known that the highest priority transmission path of level 1 routing node 1 to level 1 routing node 0 is occupied, the path of level 2 routing node 0 to level 1 routing node 1 is occupied, and the path of level 2 routing node 0 to level 1 routing node 0 is idle, then the occupancy status of level 2 routing node 0 in the counterclockwise occupancy information is updated, and the path state vector 10 is formed at this time (the state vector corresponding to the shortest 1-hop path is placed in the lowest bit to enjoy the highest priority).

[0196] Next, the first transmission path with an occupancy value of 1 can be searched through the above-mentioned vector first 1 search module according to the search order from low to high, so as to select the 2nd level routing node 0~1st level routing node 0 and the 1st level routing node 0~1st level routing node 1 as the target transmission path, and update the occupancy information corresponding to the target transmission path in the current sub-topology network, that is, update the occupancy state of the path 2nd level routing node 0~1st level routing node 0 to the locked state to 1, and at the same time, set the data packet request flag to 1, the path locking state to 1, and select the 2-hop path at this time, so set the 2-hop path flag to 1 to lock the first hop sub-transmission path in the target transmission path. Finally, the corresponding accompanying information can be updated when the target data is transmitted through the target transmission path. The specific updating method is described in the embodiment corresponding to the above-mentioned steps S11-S12, and will not be repeated here.

[0197] In this embodiment, a data transmission device is also provided, which is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made will not be repeated. As used below, the term "module" can implement a combination of software and / or hardware of a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, the implementation of hardware, or a combination of software and hardware, is also possible and conceivable.

[0198] This embodiment provides a data transmission device, such as Fig.12 As shown, including:

[0199] The first determination module 1001 is used to determine the current routing node where the target data is located in the current sub-topology network when transmitting the target data through the current sub-topology network in the target topology network, wherein the target topology network includes multiple layers of routing nodes connected according to a binary tree structure, adjacent routing nodes in each layer of routing nodes in the binary tree structure are communicatively connected, and adjacent routing nodes are communicatively connected with corresponding routing nodes in adjacent layers of the target topology network to form a ring-shaped sub-topology network;

[0200] A second determination module 1002 is used to determine the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network;

[0201] The management module 1003 is used to manage the transmission order of the target data based on the priority when the target transmission path is occupied.

[0202] In some optional implementations, the second determining module 1002 includes:

[0203] Determine the target transmission path based on the comparison result of the routing vectors of the current routing node and the output port, wherein the routing vector is a sequence value used to indicate the position of the node in the target topology network in the target topology network;

[0204] When the transmission direction of the target transmission path and the number of routing nodes in the target transmission path do not meet the priority conditions, the priority of the current routing node is set to the first priority, where the first priority is used to indicate that the transmission priority of the target transmission path is lower than other transmission paths in the current sub-topology network.

[0205] In some optional implementations, the second determining module 1002 is further configured to:

[0206] Based on the priority condition, obtaining a preset value of the correlation bit corresponding to the transmission direction;

[0207] When the value in the associated bit of the routing vector of the current routing node is a preset value, it is determined that the current routing node does not meet the priority condition.

[0208] In some optional implementations, the second determining module 1002 is further configured to:

[0209] Obtain the routing vector of the current routing node and output port corresponding to the target data in the current sub-topology network;

[0210] Based on the comparison result of the routing vectors, determine the transmission direction of the target data;

[0211] A target transmission path whose occupancy status satisfies the transmission condition is determined from among the candidate transmission paths matching the transmission direction.

[0212] In some optional implementations, the second determining module 1002 is further configured to:

[0213] Determining whether the preset number of bits of the routing vectors is equal;

[0214] If yes, it is determined that the transmission direction of the target data is non-data uplink, wherein data downlink is used to indicate that the level of the corresponding output node in the current sub-topology network is not higher than that of the input node;

[0215] If not, it is determined that the transmission direction of the target data is data uplink, wherein data uplink is used to indicate that the level of the corresponding output node in the current sub-topology network is lower than that of the input node.

[0216] In some optional implementations, the second determining module 1002 is further configured to:

[0217] Determine a target level corresponding to a current routing node where target data is located in a target topology network;

[0218] Based on the association information, a preset number of bits corresponding to the target level is determined, wherein the association information is used to indicate an association relationship between different levels in the target topology network and the corresponding preset number of bits.

[0219] In some optional implementations, the second determining module 1002 is further configured to:

[0220] Obtain the priority of the transmission path to be selected;

[0221] According to the selection order from high to low priority, a target transmission path whose occupation status is unoccupied is determined among the transmission paths to be selected.

[0222] In some optional implementations, the management module 1003 is further configured to:

[0223] Obtaining a second priority of a starting routing node occupying a target transmission path, wherein the starting routing node is a routing node that initiates a routing request;

[0224] When the second priority is higher than the current routing node, the target data is blocked at the current routing node, and the target data is transmitted when the target transmission path is in an idle state.

[0225] In some optional implementations, the management module 1003 is further configured to:

[0226] Based on the occupancy information of the sub-topology network, the occupancy status of the target transmission path is obtained, wherein the occupancy information is used to mark the occupancy status of each transmission path in the current sub-topology network;

[0227] When the occupation state of any sub-path in the target transmission path is occupied, it is determined that the target transmission path is occupied.

[0228] In some optional implementations, the management module 1003 is further configured to:

[0229] Determine whether the priority of the current routing node is a first priority, wherein the first priority is used to indicate that the transmission priority of the target transmission path is lower than other transmission paths in the current sub-topology network;

[0230] If so, the occupancy status of each sub-path in the target transmission path is updated to occupied in the occupancy information;

[0231] If not, the occupancy status of the sub-path currently transmitting the target data in the target transmission path is updated to occupied in the occupancy information.

[0232] In some optional embodiments, the device further comprises:

[0233] Acquire accompanying information corresponding to the current sub-topology network, wherein the accompanying information is used to indicate the transmission status of the target data in the target transmission path;

[0234] The current routing node where the target data is located in the target transmission path is monitored in real time, and the accompanying information is updated based on the current routing node.

[0235] In some optional embodiments, the device further comprises:

[0236] Based on the transmission direction between the current routing node and the target data, determine the number of remaining sub-paths, and obtain the node flag of the current routing node, wherein the remaining sub-paths are used to indicate the transmission paths between the remaining adjacent routing nodes to be transmitted for the target data in the sub-topology network;

[0237] Update the accompanying information based on the number of paths and node labels.

[0238] The further functional description of each of the above modules and units is the same as that of the above corresponding embodiments and will not be repeated here.

[0239] The data transmission device in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.

[0240] The embodiment of the present invention also provides a computer device having the above Fig.12 The data transmission device shown.

[0241] See also Fig.13 , Fig.13 is a schematic diagram of the structure of a computer device provided by an optional embodiment of the present invention, such as Fig.13As shown, the computer device includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Various components are connected to each other using different buses for communication, and can be installed on a common mainboard or installed in other ways as needed. The processor can process the instructions executed in the computer device, including instructions stored in or on the memory to display the graphical information of the GUI on an external input / output device (such as, a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple computer devices can be connected, and each device provides some necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Fig.13 A processor 10 is taken as an example.

[0242] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.

[0243] The memory 20 stores instructions executable by at least one processor 10, so that the at least one processor 10 executes the method shown in the above embodiment.

[0244] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function; the data storage area may store data created according to the use of the computer device, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage device. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0245] The memory 20 may include a volatile memory, such as a random access memory; the memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive; the memory 20 may also include a combination of the above types of memory.

[0246] The computer device further comprises a communication interface 30 for the computer device to communicate with other devices or a communication network.

[0247] The embodiment of the present invention also provides a computer-readable storage medium. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium through a network download, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state hard disk, etc.; further, the storage medium can also include a combination of the above types of memories. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.

[0248] A part of the present invention may be applied as a computer program product, such as a computer program instruction, which, when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer. Those skilled in the art should understand that the existence of the computer program instruction in a computer-readable medium includes, but is not limited to, a source file, an executable file, an installation package file, etc., and accordingly, the way in which the computer program instruction is executed by the computer includes, but is not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Here, the computer-readable medium may be any available computer-readable storage medium or communication medium accessible to the computer.

[0249] Although the embodiments of the present invention have been described in conjunction with the accompanying drawings, those skilled in the art may make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations are all within the scope defined by the appended claims.

Claims

1. A data transmission method, characterized in that: The method comprises: When transmitting target data through a current sub-topology network in a target topology network, determining a current routing node where the target data is located in the current sub-topology network, wherein the target topology network includes multiple layers of routing nodes connected in a binary tree structure, adjacent routing nodes in each layer of routing nodes in the binary tree structure are communicatively connected, and the adjacent routing nodes are communicatively connected with corresponding routing nodes in adjacent layers of the target topology network to form a ring-shaped sub-topology network; Determining the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network; When the target transmission path is occupied, managing the transmission order of the target data based on the priority; Wherein, determining the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network includes: Determining the target transmission path based on a comparison result of the routing vectors of the current routing node and the output port, wherein the routing vector is a sequence value used to indicate a position of a node in the target topology network in the target topology network; When the transmission direction of the target transmission path and the number of routing nodes in the target transmission path do not meet the priority condition, setting the priority of the current routing node to a first priority, wherein the first priority is used to indicate that the transmission priority of the target transmission path is lower than other transmission paths in the current sub-topology network; When the target transmission path is occupied, managing the transmission order of the target data based on the priority includes: Acquire a second priority of a starting routing node occupying the target transmission path, wherein the starting routing node is a routing node that initiates a routing request; When the second priority is higher than that of the current routing node, the target data is blocked at the current routing node, and the target data is transmitted when the target transmission path is in an idle state.

2. The method according to claim 1, characterized in that The method further comprises: Based on the priority condition, obtaining a preset value of the associated bit corresponding to the transmission direction; When the value in the associated bit of the routing vector of the current routing node is the preset value, it is determined that the current routing node does not meet the priority condition.

3. The method according to claim 1, characterized in that The determining the target transmission path based on the comparison result between the routing vectors of the current routing node and the output port includes: Obtaining a routing vector of a current routing node and an output port corresponding to the target data in the current sub-topology network; Determining a transmission direction of the target data based on a comparison result of the routing vectors; A target transmission path whose occupancy status satisfies the transmission condition is determined from among the candidate transmission paths matching the transmission direction.

4. The method according to claim 3, characterized in that The determining, based on the comparison result of the routing vectors, the transmission direction of the target data includes: Determining whether the preset number of bits of the routing vectors is equal; If yes, determining that the transmission direction of the target data is non-data uplink, wherein data downlink is used to indicate that the level of the corresponding output node in the current sub-topology network is not higher than that of the input node; If not, it is determined that the transmission direction of the target data is data uplink, wherein the data uplink is used to indicate that the level of the corresponding output node in the current sub-topology network is higher than that of the input node.

5. The method according to claim 4, characterized in that The method further comprises: Determining, in the target topology network, a target level corresponding to a current routing node where the target data is located; Based on the association information, the preset number of bits corresponding to the target level is determined, wherein the association information is used to indicate the association relationship between different levels in the target topology network and the corresponding preset number of bits.

6. The method according to claim 3, characterized in that: The step of determining a target transmission path whose occupancy status satisfies a transmission condition among the candidate transmission paths matching the transmission direction includes: Obtaining the priority of the to-be-selected transmission path; According to the selection order from high to low priority, a target transmission path whose occupation status is unoccupied is determined among the candidate transmission paths.

7. The method according to claim 1, characterized in that The determining that the target transmission path is occupied includes: Based on the occupancy information of the sub-topology network, acquiring the occupancy status of the target transmission path, wherein the occupancy information is used to mark the occupancy status of each transmission path in the current sub-topology network; When the occupation state of any sub-path in the target transmission path is occupied, it is determined that the target transmission path is occupied.

8. The method according to claim 7, characterized in that The transmitting the target data when the target transmission path is in an idle state comprises: Determining whether the priority of the current routing node is a first priority, wherein the first priority is used to indicate that the transmission priority of the target transmission path is lower than other transmission paths in the current sub-topology network; If so, updating the occupancy status of each sub-path in the target transmission path to occupied in the occupancy information; If not, the occupancy status of the sub-path currently transmitting the target data in the target transmission path is updated to occupied in the occupancy information.

9. The method according to claim 1, characterized in that: The method further comprises: Acquire accompanying information corresponding to the current sub-topology network, wherein the accompanying information is used to indicate the transmission status of the target data in the target transmission path; The current routing node where the target data is located in the target transmission path is monitored in real time, and the accompanying information is updated based on the current routing node.

10. The method according to claim 9, characterized in that The real-time monitoring of the current routing node where the target data is located in the target transmission path, and updating the accompanying information based on the current routing node, includes: Based on the transmission direction between the current routing node and the target data, determine the number of remaining sub-paths, and obtain the node flag of the current routing node, wherein the remaining sub-paths are used to indicate the transmission paths between the remaining adjacent routing nodes to be transmitted with the target data in the sub-topology network; The accompanying information is updated based on the number of paths and the node identifier.

11. A data transmission device, characterized in that: The device comprises: A first determination module is used to determine a current routing node where the target data is located in the current sub-topology network when transmitting target data through the current sub-topology network in the target topology network, wherein the target topology network includes multiple layers of routing nodes connected according to a binary tree structure, adjacent routing nodes in each layer of routing nodes in the binary tree structure are communicatively connected, and the adjacent routing nodes are communicatively connected with corresponding routing nodes in adjacent layers of the target topology network to form a ring-shaped sub-topology network; A second determination module is used to determine the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network, wherein the determination of the priority of the current routing node based on the target transmission path corresponding to the target data in the current sub-topology network includes: determining the target transmission path based on a comparison result of the routing vectors of the current routing node and the output port, wherein the routing vector is a sequence value used to indicate the position of the node in the target topology network in the target topology network; when the transmission direction of the target transmission path and the number of routing nodes in the target transmission path do not meet the priority condition, setting the priority of the current routing node to the first priority, wherein the first priority is used to indicate that the transmission priority of the target transmission path is lower than that of other transmission paths in the current sub-topology network; A management module, used for managing the transmission order of the target data based on the priority when the target transmission path is occupied, wherein when the target transmission path is occupied, managing the transmission order of the target data based on the priority includes: obtaining the second priority of the starting routing node occupying the target transmission path, wherein the starting routing node is the routing node that initiates the routing request; when the second priority is higher than that of the current routing node, blocking the target data at the current routing node, and transmitting the target data when the target transmission path is in an idle state.

12. A computer device, characterized in that: include: A memory and a processor, wherein the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the data transmission method according to any one of claims 1 to 9 by executing the computer instructions.

13. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a computer to execute the data transmission method according to any one of claims 1 to 9.