Method for determining location information of routing node, computer device, storage medium, program product and network assembly

By dividing the network subsystem in the Paiping Fat Tree network and using encoding operations to determine the location of the routing node, the problem of low network transmission efficiency is solved, and more efficient packet transmission and resource utilization is achieved.

CN119135598AActive Publication Date: 2024-12-13SHANDONG YUNHAI GUOCHUANG CLOUD COMPUTING EQUIP IND INNOVATION CENT CO LTD

Patent Information

Application Number
CN202411272957.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-11
Publication Date
2024-12-13
Estimated Expiration
2044-09-11

AI Technical Summary

Technical Problem

The existing Papin Fat Tree network transmission efficiency is low, resulting in large network communication delays and waste of resources.

Method used

By dividing the routing nodes into multiple network subsystems, the number of routing nodes in each network subsystem is the same, adjacent nodes are directly connected, and diagonal nodes are directly connected, and encoding operations are used to determine the location information of the next routing node, and optimize the data Packet transmission path, reducing data transmission across network subsystems.

Benefits of technology

It improves network transmission efficiency, reduces resource waste, reduces network communication latency, and improves bandwidth utilization and overall network performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119135598A_ABST
    Figure CN119135598A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of networks, and discloses a method for determining position information of a routing node, computer equipment, a storage medium, a program product and a network general system.The method comprises the steps that a first code and a second code of a first routing node are obtained, and a third code and a fourth code of a target routing node are obtained; determining whether the first routing node and the target routing node belong to the same network subsystem or not according to the second code and the fourth code; when it is determined that the first routing node and the target routing node belong to the same network subsystem, performing XOR operation on the first code and the third code to obtain a target code; determining the number of target numerical values included in the target code; and determining position information of a next routing node corresponding to the first routing node according to the number of the target numerical values, the first code, the second code, the third code and one or more elements in the target code. The invention can improve the network transmission efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of network technology, and in particular to a method for determining location information of a routing node, a computer device, a storage medium, a program product and a network overall system. Background Art

[0002] In the field of network technology, Flattened Fat Tree Network is a highly optimized architecture designed for data center internal networks, aiming to overcome the limitations of traditional network architectures, such as bandwidth bottlenecks, latency, and scalability issues. Flattened Fat Tree Network improves network efficiency and performance by reducing network layers and optimizing network structure, and is particularly suitable for large-scale data centers and high-performance computing environments. However, the current Flattened Fat Tree Network has low transmission efficiency. Summary of the invention

[0003] In view of this, the present invention provides a method, apparatus, computer equipment, storage medium, program product and network overall system for determining location information of routing nodes to solve the problem of low network transmission efficiency.

[0004] In a first aspect, the present invention provides a method for determining location information of a routing node. The method is applied to a network system, wherein the network system includes a plurality of network subsystems, each of the network subsystems includes a plurality of routing nodes, and each of the network subsystems includes the same number of routing nodes, and the routing nodes in the same network subsystem have a positional relationship of being adjacent to each other and being diagonally connected to each other. The method is performed by a first routing node, and the first routing node is any routing node in any network subsystem. The method includes:

[0005] Acquire location information of the first routing node and location information of the target routing node, wherein the first routing node is a current starting routing node, the target routing node is a routing node that finally receives data, the location information of the first routing node includes a first code of the first routing node in a first network subsystem to which it belongs and a second code of the first network subsystem in the overall network system, and the location information of the target routing node includes a third code of the target routing node in a second network subsystem to which it belongs and a fourth code of the second network subsystem in the overall network system;

[0006] determining, according to the second code and the fourth code, whether the first routing node and the target routing node belong to the same network subsystem;

[0007] When it is determined that the first routing node and the target routing node belong to the same network subsystem, performing an XOR operation on the first code and the third code to obtain a target code;

[0008] Determining the number of target values ​​included in the target code, wherein the number of target values ​​is used to indicate a positional relationship between any two routing nodes belonging to the same network subsystem;

[0009] The location information of the next routing node corresponding to the first routing node is determined according to the number of the target values, the first code, the second code, the third code, and one or more elements in the target code.

[0010] The method for determining the location information of a routing node provided by the present invention has the following advantages:

[0011] Under the improved network system, routing nodes are divided into multiple network subsystems for management. For routing nodes in the same network subsystem, the number of routing nodes is the same, and the position relationship is that the adjacent routing nodes are directly connected, and the position relationship is that the diagonal routing nodes are directly connected, which is equivalent to any routing node in the network subsystem can directly reach the number of routing nodes increased, and to reach other internal routing nodes, there is no need to cross the network subsystem, but only through the internal routing nodes, that is, when determining the location information of the next routing node, only the location information of the routing nodes in the current network subsystem is used. In this way, data transmission across network subsystems can be reduced to improve network transmission efficiency.

[0012] In an optional implementation, determining the location information of the next routing node corresponding to the first routing node according to the number of the target values, the first code, the second code, the third code, and one or more elements in the target code includes:

[0013] Determining a positional relationship between the first routing node and the target routing node according to the number of the target values;

[0014] According to the location relationship, obtaining a target routing rule corresponding to the location relationship;

[0015] According to the target routing rule, one or more elements are selected from the first code, the second code, the third code, the target code, and the number of target values ​​to determine the location information of the next routing node corresponding to the first routing node.

[0016] Specifically, this solution can determine the positional relationship between routing nodes by the number of target values. Further, according to the positional relationship between routing nodes, corresponding routing rules can be determined to provide a basis for subsequent routing node selection, thereby enhancing the accuracy of path selection.

[0017] In an optional implementation, the number of routing nodes in each of the network subsystems is eight, the number of routing nodes in the network subsystems constitutes an octagonal network, and the first network subsystem and the second network subsystem are two adjacent network subsystems.

[0018] In an optional implementation, determining the positional relationship between the first routing node and the target routing node according to the number of the target values ​​includes:

[0019] When the number of the target values ​​is a first value, determining that the target routing node is adjacent to the first routing node;

[0020] Alternatively, when the number of the target values ​​is a second value, determining that there is one routing node between the target routing node and the first routing node;

[0021] Alternatively, when the number of the target values ​​is a third value, determining that there are two routing nodes between the first routing node and the target routing node;

[0022] Alternatively, when the number of the target numerical values ​​is a fourth numerical value, it is determined that the first routing node and the target routing node are located at two diagonals of the octagonal network, respectively, wherein the first numerical value to the fourth numerical value increase sequentially.

[0023] Specifically, by accurately determining the positional relationship between nodes, this solution can optimize the transmission path of data packets, avoid resource waste, and improve the utilization of network resources.

[0024] In an optional implementation, determining the location information of the next routing node corresponding to the first routing node according to the number of the target values, the first code, the second code, the third code, and one or more elements in the target code includes:

[0025] When it is determined that the number of the target values ​​is the first value or the fourth value, determining the location information of the target routing node to be the location information of the next routing node;

[0026] Alternatively, when the number of the target values ​​is a second value, determining the location information of the next routing node according to the target code, the first code, the second code and the third code;

[0027] Alternatively, when the number of the target values ​​is a third value, the location information of the next routing node is determined according to the first code, the second code and a preset value, wherein the preset value is used to determine a diagonal node of any routing node;

[0028] Alternatively, when the number of the target values ​​is a third value, the location information of the next routing node is determined according to the second code, the third code and the preset value.

[0029] Specifically, this solution adopts different strategies to determine the location information of the next routing node according to the different numbers of target values, namely the first value, the second value, the third value or the fourth value, which can ensure that the data packet is transmitted along the optimal path and improve the accuracy of routing.

[0030] In an optional implementation, when the number of the target values ​​is a second value, determining the location information of the next routing node according to the target code, the first code, the second code, and the third code includes:

[0031] Splitting the target code into a first one-hot code and a second one-hot code;

[0032] Performing an XOR operation on the first code and the first one-hot code to obtain a fifth code;

[0033] Performing an XOR operation on the third code and the first one-hot code to obtain a sixth code;

[0034] Selecting one code from the fifth code and the sixth code according to the continuity of the target values ​​included in the fifth code and the continuity of the target values ​​included in the sixth code;

[0035] The location information of the next routing node is determined according to the selected code and the second code.

[0036] Specifically, by accurately locating the next routing node, this solution can avoid the transmission of data packets between unnecessary nodes, reduce the waste of network resources, and improve bandwidth utilization and overall network performance.

[0037] In an optional implementation, when the number of the target values ​​is a third value, determining the location information of the next routing node according to the first code, the second code and a preset value includes:

[0038] Performing an XOR operation on the preset value and the first code to obtain a seventh code;

[0039] The location information of the next routing node is determined according to the second code and the seventh code.

[0040] Specifically, this solution can accurately determine the location information of the next routing node by combining the second code with the seventh code, ensuring that the data packet is transmitted along the optimal path, avoiding unnecessary path jumps, and improving the efficiency of data transmission.

[0041] In an optional implementation, when the number of the target values ​​is a third value, determining the location information of the next routing node according to the second code, the third code and the preset value includes:

[0042] Performing an XOR operation on the preset value and the third code to obtain an eighth code;

[0043] The location information of the next routing node is determined according to the second code and the eighth code.

[0044] Specifically, this solution can accurately determine the location information of the next routing node by combining the second code with the eighth code for analysis, ensuring that the data packet is transmitted along the optimal path, avoiding unnecessary path jumps, and improving the efficiency of data transmission.

[0045] In an optional implementation, the structures of the plurality of network subsystems are the same, two routing nodes at the same position in adjacent network subsystems are directly connected, and the first network subsystem and the second network subsystem are adjacent network subsystems;

[0046] When it is determined that the first routing node and the target routing node do not belong to the same network subsystem, the method further includes:

[0047] determining, according to the first code and the third code, whether a position of the first routing node in the first network subsystem is the same as a position of the target routing node in the second network subsystem;

[0048] When it is determined that the position of the first routing node in the first network subsystem is the same as the position of the target routing node in the second network subsystem, the position information of the target routing node is determined as the position information of the next routing node.

[0049] Specifically, when it is determined that the first routing node and the target routing node do not belong to the same network subsystem, the subsequent routing node is determined by comparing the first code and the third code, thereby avoiding unnecessary network transmission processes and reducing the waste of network resources.

[0050] In an optional implementation, when it is determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem, the method further includes:

[0051] The location information of the next routing node is determined according to the fourth code and the first code.

[0052] Specifically, this solution can accurately determine the location information of the next routing node by combining the fourth code with the first code for analysis, ensuring that the data packet is transmitted along the optimal path, avoiding unnecessary path jumps, and improving the efficiency of data transmission.

[0053] In an optional implementation, when it is determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem, the method further includes:

[0054] The location information of the next routing node is determined according to the second code and the third code.

[0055] Specifically, this solution can accurately determine the location information of the next routing node by combining the second code with the third code for analysis, ensuring that the data packet is transmitted along the optimal path, avoiding unnecessary path jumps, and improving the efficiency of data transmission.

[0056] In a second aspect, the present invention provides a device for determining location information of a routing node, the device comprising:

[0057] an acquisition module, configured to acquire location information of the first routing node and location information of a target routing node, wherein the first routing node is a current starting routing node, the target routing node is a routing node that ultimately receives data, the location information of the first routing node includes a first code of the first routing node in a first network subsystem to which it belongs and a second code of the first network subsystem in the overall network system, and the location information of the target routing node includes a third code of the target routing node in a second network subsystem to which it belongs and a fourth code of the second network subsystem in the overall network system;

[0058] A determination module is used to determine whether the first routing node and the target routing node belong to the same network subsystem based on the second code and the fourth code; when it is determined that the first routing node and the target routing node belong to the same network subsystem, perform an XOR operation on the first code and the third code to obtain a target code; determine the number of target values ​​included in the target code, wherein the number of target values ​​is used to indicate the positional relationship between any two routing nodes belonging to the same network subsystem; determine the position information of the next routing node corresponding to the first routing node based on the number of target values, the first code, the second code, the third code, and one or more elements in the target code.

[0059] In a third aspect, the present invention provides a network overall system, which includes multiple network subsystems, each of which includes multiple routing nodes, and the number of routing nodes included in each of the network subsystems is the same, and the routing nodes that are adjacent in position relationship in the same network subsystem are directly connected, and the routing nodes that are diagonally in position relationship in the same network subsystem are directly connected; the structures of the multiple network subsystems are the same, and two routing nodes at the same position in adjacent network subsystems are directly connected.

[0060] In a fourth aspect, the present invention provides a computer device, comprising: a memory and a processor, the memory and the processor are communicatively connected to each other, the memory stores computer instructions, and the processor executes the method for determining the location information of a routing node according to the first aspect or any corresponding embodiment thereof by executing the computer instructions.

[0061] In a fifth 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 method for determining location information of a routing node according to the first aspect or any corresponding embodiment thereof.

[0062] In a sixth aspect, the present invention provides a computer program product, comprising computer instructions, wherein the computer instructions are used to enable a computer to execute the method for determining location information of a routing node according to the first aspect or any corresponding embodiment thereof. BRIEF DESCRIPTION OF THE DRAWINGS

[0063] In order to more clearly illustrate the specific embodiments of the present invention or the technical solutions in the related technologies, the drawings required for use in the specific embodiments or the related technical descriptions will be briefly introduced below. Obviously, the drawings described below are some embodiments 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 1 It is a structural diagram of a flattened fat tree network system according to the related art;

[0065] Figure 2 is a schematic diagram of the structure of the overall network system according to an embodiment of the present invention;

[0066] Figure 3 is a schematic diagram of encoding location information of a routing node according to an embodiment of the present invention;

[0067] Figure 4 is a flow chart of a method for determining location information of a routing node according to an embodiment of the present invention;

[0068] Figure 5 is a routing schematic diagram corresponding to the first value according to an embodiment of the present invention;

[0069] Figure 6 is a routing schematic diagram corresponding to the third value according to an embodiment of the present invention;

[0070] Figure 7 is a routing schematic diagram corresponding to another third value according to an embodiment of the present invention;

[0071] Figure 8 is a structural block diagram of an apparatus for determining location information of a routing node according to an embodiment of the present invention;

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

[0073] 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.

[0074] like Figure 1 As shown, a flattened fat tree network system in the related art is provided, which includes 16 routing nodes, and the network is directly 4 hops, that is, the number of routing nodes passed through when the two farthest routing nodes communicate is at least 4. For example, the path from routing node 4 to routing node 11 is "routing node 4->routing node 6->routing node 14->routing node 10->routing node 11". The flattened fat tree network system in this related art has a large network diameter, resulting in a large network communication delay.

[0075] The present invention provides a network system, which may include multiple network subsystems, each of which may include multiple routing nodes, and each network subsystem includes the same number of routing nodes, and routing nodes in the same network subsystem that are adjacent in position are directly connected, and routing nodes in the same network subsystem that are diagonally located are directly connected. The structures of the multiple network subsystems are the same, and two routing nodes in the same position in adjacent network subsystems are directly connected.

[0076] Among them, the network system can be a computer device cluster, and correspondingly, the routing node can be a router device in the computer device cluster. The computer device cluster can be a cluster composed of servers, terminals, etc. Alternatively, the network system can be a chip, and correspondingly, the routing node can also be a router component on the chip. The chip can be a system on a chip (System on a Chip, SOC), for example, a PCIE switch (Peripheral Component Interconnect Express Switch, PCIE Switch), a hardware device for managing and allocating bandwidth between multiple PCIE devices. The PCIE switch can be connected to multiple disks, and a routing node on the PCIE switch can be responsible for data transmission of one or more disks to complete network transmission between disks.

[0077] The location information of the routing nodes in the network system can follow the following encoding rules:

[0078] The location information of the routing node may consist of two parts, namely, the code of the network subsystem to which the routing node belongs in the network system (which may be a non-negative integer), and the code of the routing node in the network subsystem to which it belongs. The code of the routing node in the network subsystem to which it belongs may be a binary number. For example, when the number of routing nodes included in the network subsystem is 8, the code of the routing node in the network subsystem to which it belongs may be a 4-bit binary number. The codes of any two adjacent routing nodes belonging to the same network subsystem are different in only one bit.

[0079] For example, the location information of a routing node can be expressed as (i, j), such as Figure 2 As shown, i is the code of the network subsystem to which the routing node belongs in the overall network system, and j is the code of the routing node in the network subsystem to which it belongs.

[0080] Any routing node in any network subsystem is connected to a routing node in an adjacent network subsystem, and the j codes of these two routing nodes are the same, for example, Figure 2The routing node (0,0001) in the first network subsystem and the routing node (1,0001) in the second network subsystem.

[0081] like Figure 3 As shown, in a double-layer octagonal network, "000011110000" can be used as a reference, any routing node in the target network subsystem can be used as the first routing node, "0000" can be used as the code of the first routing node in the target network subsystem, "0001" can be used as the code of the second routing node in the target network subsystem, "0011" can be used as the code of the third routing node in the target network subsystem, "0111" can be used as the code of the fourth routing node in the target network subsystem, "1111" can be used as the code of the fifth routing node in the target network subsystem, "1110" can be used as the code of the sixth routing node in the target network subsystem, "1100" can be used as the code of the seventh routing node in the target network subsystem, and "1000" can be used as the code of the eighth routing node in the target network subsystem. The first to eighth routing nodes are arranged clockwise or counterclockwise.

[0082] The embodiment of the present invention provides a method for determining the location information of a routing node. By changing the network structure and routing algorithm under the same network scale, the network diameter can be reduced, and further, the network communication delay can be shortened and the network transmission efficiency can be improved.

[0083] According to an embodiment of the present invention, a method embodiment for determining location information of a routing node 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 method for determining location information of a routing node is provided, which can be used in a network system and executed by a first routing node. The first routing node can be any routing node in the network system. Figure 4 is a flow chart of a method for determining location information of a routing node according to an embodiment of the present invention. Figure 4 As shown, the process includes the following steps:

[0085] Step S401, obtaining location information of a first routing node and location information of a target routing node.

[0086] The first routing node is the current starting routing node, and the location information of the first routing node includes the first code of the first routing node in the first network subsystem to which it belongs and the second code of the first network subsystem in the network system. The target routing node is the routing node that finally receives the data, and the location information of the target routing node includes the third code of the target routing node in the second network subsystem to which it belongs and the fourth code of the second network subsystem in the network system. The first network subsystem and the second network subsystem may be two adjacent network subsystems.

[0087] In implementation, when the first routing node obtains the data transmitted by the previous routing node and the location information of the target routing node, or obtains the data transmitted by the device (or component) for which it is responsible and the location information of the target routing node, it can extract its own location information from its own storage area.

[0088] Step S402: Determine whether the first routing node and the target routing node belong to the same network subsystem according to the second code and the fourth code.

[0089] In implementation, the first routing node can determine whether the second code and the fourth code are the same, and if so, it can be determined that the first routing node and the target routing node belong to the same network subsystem. If not, it can be determined that the first routing node and the target routing node do not belong to the same network subsystem.

[0090] When it is determined that the first routing node and the target routing node do not belong to the same network subsystem, the following steps may be performed:

[0091] Step 1: Determine whether the position of the first routing node in the first network subsystem is the same as the position of the target routing node in the second network subsystem according to the first code and the third code.

[0092] In implementation, the first routing node may determine whether the first encoding and the third encoding are the same, and if so, it may be determined that the position of the first routing node in the first network subsystem is the same as the position of the target routing node in the second network subsystem. If not, it may be determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem.

[0093] Example 1: The location information of the first routing node is (0,0001), and the location information of the target routing node is (1,0001). Based on the first code "0001" and the third code "0001", it can be determined that the location of the first routing node in the first network subsystem is the same as the location of the target routing node in the second network subsystem, and the first routing node and the target routing node are directly connected.

[0094] Example 2: The location information of the first routing node is (0,0001), and the location information of the target routing node is (1,0011). Based on the first code "0001" and the third code "0011", it can be determined that the location of the first routing node in the first network subsystem is different from the location of the target routing node in the second network subsystem.

[0095] Step 2: when it is determined that the position of the first routing node in the first network subsystem is the same as the position of the target routing node in the second network subsystem, the position information of the target routing node is determined as the position information of the next routing node.

[0096] Step three, when it is determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem, determine the position information of the next routing node according to the fourth code and the first code.

[0097] In implementation, when it is determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem, the first routing node may construct the position information of the next routing node according to the fourth code and the first code.

[0098] Step 4: when it is determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem, the position information of the next routing node is determined according to the second code and the third code.

[0099] In implementation, the first routing node can obtain the first location information according to the second code and the third code, and the first routing node can use the routing node corresponding to the first location information as the updated target routing node. Further, according to the location information of the first routing node and the first location information, the location information of the next routing node is determined. The specific processing of this step can refer to the specific processing of steps S402 to S405.

[0100] Step S403: when it is determined that the first routing node and the target routing node belong to the same network subsystem, an XOR operation is performed on the first code and the third code to obtain a target code.

[0101] The target code may be a binary number.

[0102] In implementation, when it is determined that the first routing node and the target routing node belong to the same network subsystem, the first code and the third code may be bitwise XORed to obtain the target code.

[0103] Step S404, determining the number of target values ​​included in the target code.

[0104] The target value may be "0" or "1", and the number of the target values ​​is used to indicate the positional relationship between any two routing nodes in the same network subsystem.

[0105] Step S405, determining the location information of the next routing node corresponding to the first routing node according to the number of target values, the first code, the second code, the third code, and one or more elements in the target code.

[0106] In implementation, the first routing node can determine the location information of the next routing node in the following ways. Figure 2 The overall network system shown is taken as an example for detailed description.

[0107] Method 1

[0108] Step 1: Determine the positional relationship between the first routing node and the target routing node according to the number of target values.

[0109] The position relationship may be used to indicate the number of routing nodes between the first routing node and the target routing node. The target value may be "1".

[0110] In an implementation, when the number of target values ​​is a first value, it is determined that the target routing node is adjacent to the first routing node. Alternatively, when the number of target values ​​is a second value, it is determined that there is one routing node (e.g., Figure 5 As shown, S represents the first routing node and D represents the target routing node). Alternatively, when the number of target values ​​is the third value, it is determined that the first routing node is separated from the target routing node by two routing nodes (such as Figure 6 and Figure 7 Alternatively, when the number of target values ​​is a fourth value, it is determined that the first routing node and the target routing node are located at two diagonal corners of the octagonal network, respectively, wherein the first value to the fourth value are increased in sequence.

[0111] Example 1, in Figure 2 The location information of the routing node in the first network subsystem (0,1100) and (0,1110), after performing an XOR operation on the j codes in the two location information bit by bit, we can get "0010", and the corresponding data expression is I=1100^1110=0010, where the number of "1" is 1 (the first value), indicating that the target routing node and the first routing node are adjacent and directly connected, and can be reached directly through one-step routing.

[0112] Example 2, in Figure 2After the j codes of the routing nodes (0,1110) and (0,0001) in the first octagon are XORed bit by bit, "1111" can be obtained. The corresponding data expression is I=1110^0001=1111, where the number of "1" is 4 (the fourth value), indicating that the target routing node and the first routing node are in a diagonal relationship, directly connected through a cross link, and can be directly reached through one-step routing.

[0113] Step 2: According to the location relationship, obtain the target routing rule corresponding to the location relationship.

[0114] The target routing rule may be used to indicate a rule for determining the location information of the next routing node.

[0115] In implementation, when the target routing node is adjacent to the first routing node, or the first routing node and the target routing node are respectively located at two diagonal corners of the octagonal network, the target routing rule is used to indicate that the first routing node can directly determine the location information of the target routing node as the location information of the next routing node. Alternatively, when there is one routing node between the target routing node and the first routing node, the target routing rule is used to indicate that the first routing node can determine the location information of the next routing node based on the target code, the first code, the second code, and the third code. Alternatively, when there are two routing nodes between the first routing node and the target routing node, the target routing rule is used to indicate that the first routing node can determine the location information of the next routing node based on the first code, the second code, and the preset value.

[0116] Step three, according to the target routing rule, select one or more elements from the first code, the second code, the third code, the target code, and the number of target values ​​to determine the location information of the next routing node corresponding to the first routing node.

[0117] In implementation, the first routing node may select one or more elements corresponding to the target routing rule from the first code, the second code, the third code, the target code, and the number of target values ​​according to the target routing rule to calculate the location information of the next routing node.

[0118] Method 2

[0119] Step 1: When the number of target values ​​is determined to be the first value or the fourth value, the location information of the target routing node is determined to be the location information of the next routing node.

[0120] Step 2: When the number of target values ​​is a second value, the location information of the next routing node is determined according to the target code, the first code, the second code and the third code.

[0121] In implementation, the first routing node may first split the target code into a first unique hot code and a second unique hot code. Then, the first code and the first unique hot code are XORed to obtain a fifth code, and the third code and the first unique hot code are XORed to obtain a sixth code. According to the continuity of the target values ​​included in the fifth code and the continuity of the target values ​​included in the sixth code, a code is selected from the fifth code and the sixth code. Finally, according to the selected code and the second code, the location information of the next routing node is determined. Among them, the continuity includes continuous and discontinuous. Continuous means that the target values ​​in the code are arranged continuously, for example, "1100", "1111", etc. Discontinuous means that there is another number between two target values ​​in the code, for example, "1010", "1011", etc. When selecting a code, a code including a continuous target value is selected.

[0122] In actual application, one of the methods 1 and 2 can be selected to calculate the location information of the next routing node, or the location information of two next routing nodes (called the second routing node and the third routing node) can be calculated respectively according to the two methods at the same time. During the operation of the network system, each routing node can record the frequency of its own transmission of data packets (for example, the number of data packets transmitted within 1 hour) and update the parameter according to a preset period. In this way, the first routing node can obtain the corresponding transmission data packet frequencies from the second routing node and the third routing node respectively, compare them, and select the routing node with a smaller frequency as the next routing node.

[0123] Because when the routing node is heavily loaded, the transmission data packets need to queue, resulting in network communication delays. Therefore, by determining multiple routing nodes through two methods and then selecting the next routing node based on the load conditions of the multiple routing nodes, data traffic can be effectively dispersed to avoid overloading of certain routing nodes. Furthermore, network communication delays can be shortened and network transmission efficiency can be improved.

[0124] It should be noted that when the present solution involves multiple methods for determining the location information of the next routing node, the rules here can be used for processing.

[0125] Step three, when the number of target values ​​is a third value, determine the location information of the next routing node according to the first code, the second code and the preset value.

[0126] The preset value is used to determine the diagonal node of any routing node. For example, the preset value may be "1111".

[0127] In implementation, the first routing node may perform an XOR operation on the preset value and the first code to obtain the seventh code. According to the second code and the seventh code, the location information of the next routing node (such as Figure 6 Alternatively, the first routing node may perform an XOR operation on the preset value and the third code to obtain an eighth code. According to the second code and the eighth code, the location information of the next routing node is determined (as shown in FIG. Figure 7 shown).

[0128] It should be noted that when the network system is a computer device cluster, the calculation of the path information can be calculated at the source routing node (the first routing node to obtain the transmission data, which is equivalent to the first routing node mentioned above, which is the source routing node in this case). Accordingly, when executing the data transmission process, it can be directly executed according to the calculated path information. Alternatively, when the network system is a chip, the calculation of the path information can be calculated in steps, that is, at the current starting routing node (that is, the first routing node mentioned above), only the next routing node is determined. When the next routing node is reached, the next routing node is used as the new starting routing node (that is, the first routing node mentioned above) to calculate the subsequent routing nodes, and so on.

[0129] The method for determining the location information of a routing node provided in this embodiment is as follows: Figure 2 In the network system shown in the figure, the communication between the two farthest routing nodes in the same network subsystem only requires two routing steps, and the communication between the two farthest routing nodes in different network subsystems only requires three routing steps (network diameter is 3). Figure 1 The flattened fat tree network improved in the related technology shown has the same network scale, but the network diameter is reduced, and the number of interfaces of the routing node is not increased (all 4). After the network diameter is reduced, the delay of network communication can be shortened and the network transmission efficiency can be improved. In addition, multiple calculation methods are given in the multiple steps involved in determining the location information of the next routing node. The technicians can choose according to actual needs, or let the routing node use multiple methods to determine multiple next routing nodes at the same time, and then choose according to the actual load situation, which can balance the load and improve the network transmission efficiency.

[0130] The method for determining the location information of a routing node is further described below with multiple examples.

[0131] Example 1: The location information of the first routing node is S now =(i now , j now )=(1,0011), the location information of the target routing node is D=(i D , j D )=(0,1111).

[0132] Method 1

[0133] The first step is to now and i D It can be determined that the first routing node and the target routing node are not in the same network subsystem.

[0134] The second step is to now and j D It can be determined that the first routing node and the target routing node are located at different positions in the octagonal network. In this case, S new1 =(i new1 ,j new1 )=(i D ,j now )=(0,0011) is determined as the location information of the next routing node.

[0135] The third step is to convert S new1 =(i new1 ,j new1 )=(0,0011) as the new starting routing node, according to i new1 and i D Make sure that the new start routing node and the target routing node are in the same network subsystem.

[0136] Step 4: j new1 and j D Perform bitwise XOR to get the target code, that is, the target code I = j new1 ^j D =0011^1111=1100.

[0137] Step 5. Since the target code includes 2 "1s", the target code can be split into two one-hot codes, namely I1=1000 and I2=0100.

[0138] Step 6: j new1 Perform bitwise XOR with I1=1000 to get j1=0011^1000=1011. new1 Perform bitwise XOR with I2=0100 to obtain j2=0011^0100=0111.

[0139] Step 7: The 1s in j1 are not continuous, but the 1s in j2 are continuous. Therefore, S new2 =(i new2 ,j new2 )=(i new1 ,j2)=(0,0111) is determined as the location information of the next routing node.

[0140] Step 8: S new2=(i new2 ,j new2 )=(0,0111) as the new starting routing node, according to i new2 and i D Determine the new starting routing node S new2 In the same network subsystem as the target routing node.

[0141] Step 9: j new2 and j D Perform bitwise XOR to get the target code, that is, the target code I = j new2 ^j D =0111^1111=1000.

[0142] In the tenth step, since the target code includes 1 "1", it can be determined that the new starting routing node determined in the eighth step is adjacent to the target routing node, and the position information of the target routing node is directly determined as the position information of the next routing node.

[0143] From the above, it can be seen that the path from the first routing node to the target routing node is “(1,0011)—>(0,0011)—>(0,0111)—>(0,1111)”.

[0144] Method 2

[0145] The first step is to now and i D It is determined that the first routing node and the target routing node are not in the same network subsystem.

[0146] The second step is to now and j D It is determined that the first routing node and the target routing node are located at different positions in the octagonal network. In this case, S new3 =(i new3 ,j new3 )=(i now ,j D )=(1,1111) is determined as the location information of the new target routing node.

[0147] The third step is to D and i new3 It is determined that the first routing node and the new target routing node are in the same network subsystem.

[0148] Step 4: j new3 and j now Perform bitwise XOR to get the target code, that is, the target code I = j now ^j new3 =0011^1111=1100.

[0149] Step 5. Since the target code includes 2 "1s", the target code can be split into two one-hot codes, namely I3=1000 and I4=0100.

[0150] Step 6: j now Perform bitwise XOR with I1=1000 to get j3=0011^1000=1011. now Perform bitwise XOR with I2=0100 to obtain j4=0011^0100=0111.

[0151] Step 7: The 1 in j3 is discontinuous, and the 1 in j4 is continuous. Therefore, S new4 =(i new4 ,j new4 )=(i new3 ,j4)=(1,0111) is determined as the location information of the next routing node.

[0152] Step 8: S new4 =(i new4 ,j new4 )=(1,0111) as the new starting routing node, according to i new4 and i new3 Determine that the new starting routing node and the new target routing node determined in the second step are in the same network subsystem.

[0153] Step 9: j new4 and j new3 Perform bitwise XOR to get the target code, that is, the target code I = j new4 ^j new3 =0111^1111=1000.

[0154] Step 10: Since the target code includes 1 "1", it can be determined that the new starting routing node determined in step 8 is adjacent to the new target routing node determined in step 2, and S is directly used. new3 =(i new3 ,j new3 )=(1,1111) is determined as the location information of the next routing node.

[0155] Step 11: S new3 =(i new3 ,j new3 )=(1,1111) as the new starting routing node, according to i new3 and i D Determine that the new starting routing node and the final target routing node D are not in the same network subsystem. new3 and j DDetermine that the new starting routing node and the final target routing node D have the same position in the network subsystem, and directly set D = (i D , j D )=(0,1111) is determined as the location information of the next routing node.

[0156] From the above, it can be seen that the path from the first routing node to the target routing node is “(1,0011)—>(1,0111)—>(1,1111)—>(0,1111)”.

[0157] Example 2: The location information of the first routing node is S now =(i now , j now )=(1,0011), the location information of the target routing node is D=(i D , j D )=(1,1000).

[0158] Method 1

[0159] The first step is to now and i D It can be determined that the first routing node and the target routing node are in the same network subsystem.

[0160] The second step is to now and j D Perform bitwise XOR to get the target code, that is, the target code I = j now ^j D =0011^1000=1011.

[0161] In the third step, since the target code includes 3 "1", j now Perform bitwise XOR with the preset value (1111) to get j new5 =0011^1111=1100, S new5 =(i new5 ,j new5 )=(i now ,j new5 )=(1,1100) is determined as the location information of the next routing node.

[0162] Step 4: S new5 =(i new5 ,j new5 )=(1,1100) is determined as the new starting routing node, according to i new5 and i D It can be determined that the new start routing node and the target routing node are in the same network subsystem.

[0163] Step 5: j new5and j D Perform bitwise XOR to get the target code, that is, the target code I = j new5 ^j D =1100^1000=0100.

[0164] In step 6, since the target code includes 1 "1", it can be determined that the new starting routing node is adjacent to the target routing node, and the location information of the target routing node is directly determined as the location information of the next routing node.

[0165] From the above, it can be seen that the path from the first routing node to the target routing node is "(1,0011)—>(1,1100)—>(1,1000)".

[0166] Method 2

[0167] The first step is to now and i D It is determined that the first routing node and the target routing node are in the same network subsystem.

[0168] The second step is to now and j D Perform bitwise XOR to get the target code, that is, the target code I = j now ^j D =0011^1000=1011.

[0169] In the third step, since the target code includes 3 "1", j D Perform bitwise XOR with the preset value (1111) to get j new6 =1000^1111=0111, S new6 =(i new6 ,j new6 )=(i now ,j new6 )=(1,0111) is determined as the location information of the next routing node.

[0170] Step 4: S new6 =(i new6 ,j new6 )=(1,0111) is determined as the new starting routing node, according to i new6 and i D Make sure that the new start routing node and the target routing node are in the same network subsystem.

[0171] Step 5: j new6 and j D Perform bitwise XOR to get the target code, that is, the target code I = j new6 ^j D =0111^1000=1111.

[0172] In step 6, since the target code includes 4 "1s", it can be determined that the new starting routing node is diagonally connected to the target routing node, and the position information of the target routing node is directly determined as the position information of the next routing node.

[0173] From the above, it can be seen that the path from the first routing node to the target routing node is “(1,0011)—>(1,0111)—>(1,1000)”.

[0174] In this embodiment, a device for determining the location information of a routing node is also provided, and the device is used to implement the above-mentioned embodiments and preferred implementation modes, and the descriptions that have been made are not repeated here. As used below, the term "module" can implement a combination of software and / or hardware for 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.

[0175] This embodiment provides a device for determining the location information of a routing node, such as Figure 8 As shown, including:

[0176] The acquisition module 801 is used to acquire the location information of the first routing node and the location information of the target routing node, wherein the first routing node is the current starting routing node, the target routing node is the routing node that finally receives the data, the location information of the first routing node includes the first code of the first routing node in the first network subsystem to which it belongs and the second code of the first network subsystem in the network system, and the location information of the target routing node includes the third code of the target routing node in the second network subsystem to which it belongs and the fourth code of the second network subsystem in the network system;

[0177] The determination module 802 is used to determine whether the first routing node and the target routing node belong to the same network subsystem based on the second code and the fourth code; when it is determined that the first routing node and the target routing node belong to the same network subsystem, perform an XOR operation on the first code and the third code to obtain a target code; determine the number of target values ​​included in the target code, wherein the number of target values ​​is used to indicate the positional relationship between any two routing nodes belonging to the same network subsystem; determine the position information of the next routing node corresponding to the first routing node based on the number of target values, the first code, the second code, the third code, and one or more elements in the target code.

[0178] In an optional implementation, the determination module 802 is specifically configured to:

[0179] Determining a positional relationship between the first routing node and the target routing node according to the number of target values;

[0180] According to the location relationship, obtain the target routing rule corresponding to the location relationship;

[0181] According to the target routing rule, one or more elements are selected from the first code, the second code, the third code, the target code, and the number of target values ​​to determine the location information of the next routing node corresponding to the first routing node.

[0182] In an optional implementation, the number of routing nodes in each network subsystem is eight, the number of routing nodes in the network subsystems constitutes an octagonal network, and the first network subsystem and the second network subsystem are two adjacent network subsystems.

[0183] In an optional implementation, the determination module 802 is specifically configured to:

[0184] When the number of target values ​​is a first value, determining that the target routing node is adjacent to the first routing node;

[0185] Alternatively, when the number of target values ​​is a second value, determining that there is one routing node between the target routing node and the first routing node;

[0186] Alternatively, when the number of target values ​​is a third value, determining that there are two routing nodes between the first routing node and the target routing node;

[0187] Alternatively, when the number of target values ​​is a fourth value, it is determined that the first routing node and the target routing node are located at two diagonals of the octagonal network, respectively, wherein the first value to the fourth value increase sequentially.

[0188] In an optional implementation, the determination module 802 is specifically configured to:

[0189] When the number of target values ​​is determined to be the first value or the fourth value, the location information of the target routing node is determined to be the location information of the next routing node;

[0190] Alternatively, when the number of target values ​​is the second value, the location information of the next routing node is determined according to the target code, the first code, the second code, and the third code;

[0191] Alternatively, when the number of target values ​​is a third value, the location information of the next routing node is determined according to the first code, the second code and a preset value, wherein the preset value is used to determine a diagonal node of any routing node;

[0192] Alternatively, when the number of target values ​​is the third value, the location information of the next routing node is determined according to the second code, the third code and the preset value.

[0193] In an optional implementation, the determination module 802 is specifically configured to:

[0194] Split the target encoding into first one-hot encoding and second one-hot encoding;

[0195] Perform an XOR operation on the first code and the first one-hot code to obtain a fifth code;

[0196] Perform an XOR operation on the third code and the first one-hot code to obtain a sixth code;

[0197] Selecting one code from the fifth code and the sixth code according to the continuity of the target values ​​included in the fifth code and the continuity of the target values ​​included in the sixth code;

[0198] The location information of the next routing node is determined according to the selected code and the second code.

[0199] In an optional implementation, the determination module 802 is specifically configured to:

[0200] Performing an XOR operation on the preset value and the first code to obtain a seventh code;

[0201] According to the second code and the seventh code, the location information of the next routing node is determined.

[0202] In an optional implementation, the determination module 802 is specifically configured to:

[0203] Performing an XOR operation on the preset value and the third code to obtain an eighth code;

[0204] According to the second code and the eighth code, the location information of the next routing node is determined.

[0205] In an optional implementation, the structures of the multiple network subsystems are the same, two routing nodes at the same position in adjacent network subsystems are directly connected, and the first network subsystem and the second network subsystem are adjacent network subsystems;

[0206] The determination module 802 is further configured to:

[0207] When it is determined that the first routing node and the target routing node do not belong to the same network subsystem, determining whether the position of the first routing node in the first network subsystem is the same as the position of the target routing node in the second network subsystem according to the first code and the third code;

[0208] When it is determined that the position of the first routing node in the first network subsystem is the same as the position of the target routing node in the second network subsystem, the position information of the target routing node is determined as the position information of the next routing node.

[0209] In an optional implementation, the determination module 802 is further configured to:

[0210] When it is determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem, the position information of the next routing node is determined according to the fourth code and the first code.

[0211] In an optional implementation, the determination module 802 is further configured to:

[0212] When it is determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem, the position information of the next routing node is determined according to the second code and the third code.

[0213] 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.

[0214] The device for determining the location information of the routing node 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.

[0215] The embodiment of the present invention also provides a computer device having the above Figure 8 The device shown is for determining the location information of a routing node.

[0216] See also Fig. 9 , Fig. 9 is a schematic diagram of the structure of a computer device provided by an optional embodiment of the present invention, such as Fig. 9 As 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. 9 A processor 10 is taken as an example.

[0217] 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.

[0218] 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.

[0219] 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.

[0220] 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.

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

[0222] 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.

[0223] 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.

[0224] 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 method for determining location information of a routing node, characterized in that: The method is applied to a network system, the network system includes a plurality of network subsystems, each of the network subsystems includes a plurality of routing nodes, and the number of routing nodes included in each of the network subsystems is the same, the routing nodes in the same network subsystem are directly connected to each other in a positional relationship of being adjacent, and the routing nodes in the same network subsystem are directly connected to each other in a positional relationship of being diagonal, the method is performed by a first routing node, the first routing node is any routing node in any network subsystem, and the method includes: Acquire location information of the first routing node and location information of the target routing node, wherein the first routing node is a current starting routing node, the target routing node is a routing node that finally receives data, the location information of the first routing node includes a first code of the first routing node in a first network subsystem to which it belongs and a second code of the first network subsystem in the overall network system, and the location information of the target routing node includes a third code of the target routing node in a second network subsystem to which it belongs and a fourth code of the second network subsystem in the overall network system; determining, according to the second code and the fourth code, whether the first routing node and the target routing node belong to the same network subsystem; When it is determined that the first routing node and the target routing node belong to the same network subsystem, performing an XOR operation on the first code and the third code to obtain a target code; Determining the number of target values ​​included in the target code, wherein the number of target values ​​is used to indicate a positional relationship between any two routing nodes belonging to the same network subsystem; The location information of the next routing node corresponding to the first routing node is determined according to the number of the target values, the first code, the second code, the third code, and one or more elements in the target code.

2. The method according to claim 1, characterized in that The determining, according to the number of the target values, the first code, the second code, the third code, and one or more elements in the target code, the location information of the next routing node corresponding to the first routing node includes: Determining a positional relationship between the first routing node and the target routing node according to the number of the target values; According to the location relationship, obtaining a target routing rule corresponding to the location relationship; According to the target routing rule, one or more elements are selected from the first code, the second code, the third code, the target code, and the number of target values ​​to determine the location information of the next routing node corresponding to the first routing node.

3. The method according to claim 1, characterized in that The number of routing nodes in each of the network subsystems is eight, the number of routing nodes in the network subsystems forms an octagonal network, and the first network subsystem and the second network subsystem are two adjacent network subsystems.

4. The method according to claim 3, characterized in that The determining, according to the number of the target values, a positional relationship between the first routing node and the target routing node includes: When the number of the target values ​​is a first value, determining that the target routing node is adjacent to the first routing node; Alternatively, when the number of the target values ​​is a second value, determining that there is one routing node between the target routing node and the first routing node; Alternatively, when the number of the target values ​​is a third value, determining that there are two routing nodes between the first routing node and the target routing node; Alternatively, when the number of the target numerical values ​​is a fourth numerical value, it is determined that the first routing node and the target routing node are located at two diagonals of the octagonal network, respectively, wherein the first numerical value to the fourth numerical value increase sequentially.

5. The method according to claim 3, characterized in that: The determining, according to the number of the target values, the first code, the second code, the third code, and one or more elements in the target code, the location information of the next routing node corresponding to the first routing node includes: When it is determined that the number of the target values ​​is the first value or the fourth value, determining the location information of the target routing node to be the location information of the next routing node; Alternatively, when the number of the target values ​​is a second value, determining the location information of the next routing node according to the target code, the first code, the second code and the third code; Alternatively, when the number of the target values ​​is a third value, the location information of the next routing node is determined according to the first code, the second code and a preset value, wherein the preset value is used to determine a diagonal node of any routing node; Alternatively, when the number of the target values ​​is a third value, the location information of the next routing node is determined according to the second code, the third code and the preset value.

6. The method according to claim 5, characterized in that When the number of the target values ​​is a second value, determining the location information of the next routing node according to the target code, the first code, the second code, and the third code includes: Splitting the target code into a first one-hot code and a second one-hot code; Performing an XOR operation on the first code and the first one-hot code to obtain a fifth code; Performing an XOR operation on the third code and the first one-hot code to obtain a sixth code; Selecting one code from the fifth code and the sixth code according to the continuity of the target values ​​included in the fifth code and the continuity of the target values ​​included in the sixth code; The location information of the next routing node is determined according to the selected code and the second code.

7. The method according to claim 5, characterized in that When the number of the target values ​​is a third value, determining the location information of the next routing node according to the first code, the second code and a preset value includes: Performing an XOR operation on the preset value and the first code to obtain a seventh code; The location information of the next routing node is determined according to the second code and the seventh code.

8. The method according to claim 5, characterized in that When the number of the target values ​​is a third value, determining the location information of the next routing node according to the second code, the third code and the preset value includes: Performing an XOR operation on the preset value and the third code to obtain an eighth code; The location information of the next routing node is determined according to the second code and the eighth code.

9. The method according to any one of claims 1 to 8, characterized in that: The structures of the plurality of network subsystems are all the same, two routing nodes at the same position in adjacent network subsystems are directly connected, and the first network subsystem and the second network subsystem are adjacent network subsystems; When it is determined that the first routing node and the target routing node do not belong to the same network subsystem, the method further includes: determining, according to the first code and the third code, whether a position of the first routing node in the first network subsystem is the same as a position of the target routing node in the second network subsystem; When it is determined that the position of the first routing node in the first network subsystem is the same as the position of the target routing node in the second network subsystem, the position information of the target routing node is determined as the position information of the next routing node.

10. The method according to claim 9, characterized in that When it is determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem, the method further includes: The location information of the next routing node is determined according to the fourth code and the first code.

11. The method according to claim 9, characterized in that When it is determined that the position of the first routing node in the first network subsystem is different from the position of the target routing node in the second network subsystem, the method further includes: The location information of the next routing node is determined according to the second code and the third code.

12. A network system, characterized in that: The overall network system includes multiple network subsystems, each of which includes multiple routing nodes, and the number of routing nodes included in each of the network subsystems is the same. Routing nodes that are adjacent in position in the same network subsystem are directly connected, and routing nodes that are diagonally opposite in position in the same network subsystem are directly connected. The structures of the multiple network subsystems are the same, and two routing nodes at the same position in adjacent network subsystems are directly connected.

13. 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 method for determining the location information of a routing node as described in any one of claims 1 to 11 by executing the computer instructions.

14. 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 method for determining location information of a routing node according to any one of claims 1 to 11.

15. A computer program product, characterized in that The method comprises computer instructions, wherein the computer instructions are used to cause a computer to execute the method for determining the location information of a routing node according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Method and device for determining optimal scheduling strategy and electronic equipment

    CN115348324A

  • Multi-machine routing method, device and system for fat tree network and storage medium

    CN117061423A

  • Routing path planning method, routing request processing method, equipment and medium

    CN117135106A

  • Method, system and device for implementing dual-host routing and medium

    CN117155842A

  • Routing path planning method, device, equipment and medium

    CN118282927A

Cited By

  • Routing path generation method and device, program product and storage medium

    CN119583433A

  • Routing method, device, equipment, medium and computer program product

    CN119917451A

  • Construction method of double-layer pentagonal network structure, double-layer pentagonal network structure, routing method, device, equipment, medium and product

    CN120750691A

  • Construction method of double-layer pentagon network structure, double-layer pentagon network structure, routing method, device, equipment, medium and product

    CN120750691B

  • Construction method of three-dimensional hypercube network structure, network structure, routing method, equipment, medium and product

    CN120750836A