Computer network communication method, computer equipment, storage medium and program product

By allocating routing numbers for the routing node for the computer network and establishing an inner and outer network topology structure, the routing obstruction problem caused by the shortest path uniqueness is solved, and the data transmission efficiency is improved.

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

Patent Information

Application Number
CN202411367250.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-29
Publication Date
2025-01-24
Estimated Expiration
2044-09-29

AI Technical Summary

Technical Problem

In the related art, the shortest path uniqueness of the computer network topology causes the blockage of routing nodes and routing paths, and the data transmission efficiency is low.

Method used

To allocate the routing number for each routing node, according to the location information characterized by the routing number, the inner and outer nodes are connected to the inner and outer nodes to obtain the inner network topology structure and outer network topology structure. The shortest path of the computer network is not unique.

Benefits of technology

It eliminates the uniqueness of the shortest path in the computer network topology, alleviates the conflict and blocking problem of routing paths within routing nodes and between routing nodes, and improves the efficiency of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118890306B_ABST
    Figure CN118890306B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of computer technology, and discloses a computer network communication method, a computer device, a storage medium and a program product. The method comprises: assigning a routing number to each routing node, performing intra-layer connection on inner nodes and outer nodes according to the location information represented by the routing number of each routing node, obtaining an inner network topology structure and an outer network topology structure, connecting the inner network topology structure and the outer network topology structure, obtaining a computer network topology structure in which the shortest path between routing nodes is not unique, obtaining a routing request of the computer network topology structure, determining a source routing node and a destination routing node corresponding to the routing request, determining a target routing path in the computer network topology structure based on a source routing number corresponding to the source routing node and a destination routing number corresponding to the destination routing node, so as to send a data packet sent by the source routing node to the destination routing node through the target routing path. The present invention improves data 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 computer technology, and in particular to a computer network communication method, a computer device, a storage medium and a program product. Background Art

[0002] Computer network topology consists of routing nodes (such as switches and routers) and links. Its complex evolution is driven by power-law distribution properties and growth mechanisms, which is crucial to understanding the network and optimizing network performance.

[0003] In the related art, the computer network topology structure can be a spider routing network topology structure composed of 12 routing nodes, each routing node is connected to its left and right adjacent routing nodes respectively, and each routing node is connected to the opposite routing node through the center of the topological ring. The network diameter of this topology structure is 3.

[0004] However, the computer network topology in the related art has the characteristic of shortest path uniqueness, that is, when data is transmitted between any two routing nodes, there is only one shortest path. The shortest path uniqueness aggravates the congestion of routing nodes and routing paths when data packets are routed, and the data transmission efficiency is low. Summary of the invention

[0005] In view of this, the present invention provides a computer network communication method, computer equipment, storage medium and program product to solve the problem of low data transmission efficiency due to the fact that the shortest path uniqueness of the computer network topology structure in the related technology aggravates the blockage of routing nodes and routing paths when routing data packets.

[0006] In a first aspect, the present invention provides a computer network communication method, the method comprising:

[0007] Assign a routing number to each routing node;

[0008] According to the location information represented by the routing number of each routing node, the inner layer nodes and the outer layer nodes are connected within the layer to obtain the inner layer network topology structure and the outer layer network topology structure;

[0009] Connecting the inner network topology structure and the outer network topology structure to obtain a computer network topology structure in which the shortest path between routing nodes is not unique;

[0010] Obtain a routing request of the computer network topology structure to determine a source routing node and a destination routing node corresponding to the routing request, and determine a target routing path in the computer network topology structure based on a source routing number corresponding to the source routing node and a destination routing number corresponding to the destination routing node, so as to send a data packet sent by the source routing node to the destination routing node through the target routing path.

[0011] The computer network communication method provided in this embodiment assigns a routing number to each routing node, connects the inner layer nodes and the outer layer nodes in the layer according to the location information represented by the routing number of each routing node, obtains the inner layer network topology structure and the outer layer network topology structure, connects the inner layer network topology structure and the outer layer network topology structure, obtains the computer network topology structure in which the shortest path between routing nodes is not unique, and eliminates the uniqueness of the shortest path in the computer network topology structure in the related art. By obtaining the routing request of the computer network topology structure, the source routing node and the destination routing node corresponding to the routing request are determined, and based on the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, the target routing path is determined in the computer network topology structure, so that the data packet sent by the source routing node is sent to the destination routing node through the target routing path, which alleviates the conflict and blocking problems of the routing paths within the routing nodes and between the routing nodes, and improves the data transmission efficiency.

[0012] In an optional implementation manner, allocating a routing number to each routing node includes:

[0013] Obtain the first numerical sequence in the high position in the predefined numerical sequence;

[0014] Using the first numerical sequence as the values ​​corresponding to the other bits except the highest bit in the routing numbers of the inner node and the outer node;

[0015] Using the first preset value as the value corresponding to the highest bit in the routing number of the inner node, and using the second preset value as the value corresponding to the highest bit in the routing number of the outer node, so as to generate the routing number corresponding to the inner node and the routing number corresponding to the outer node;

[0016] The predefined numerical sequence is circularly shifted to the left, and the step of obtaining the first numerical sequence at a high position in the predefined numerical sequence is returned to execute until routing numbers corresponding to a preset number of inner nodes and routing numbers corresponding to a preset number of outer nodes are generated.

[0017] The computer network communication method provided in this embodiment uses the first numerical sequence located at a high position in the predefined numerical sequence as the values ​​corresponding to the other bits except the highest bit in the routing numbers of the inner nodes and the outer nodes, uses the first preset value as the value corresponding to the highest bit in the routing number of the inner node, and uses the second preset value as the value corresponding to the highest bit in the routing number of the outer node to generate routing numbers corresponding to the inner nodes and routing numbers corresponding to the outer nodes. This routing number allocation method provides convenience for the routing of data packets in the computer network topology structure.

[0018] In an optional implementation, the determining a target routing path in the computer network topology structure based on the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, so as to send the data packet sent by the source routing node to the destination routing node through the target routing path, includes:

[0019] In the case where the value of the highest bit of the source routing number indicates that the source routing node is an outer node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an outer node, performing an XOR operation on values ​​corresponding to bits other than the highest bit in the source routing number and values ​​corresponding to bits other than the highest bit in the destination routing number to obtain a first XOR result;

[0020] Obtaining the number of third preset values ​​in the first XOR result;

[0021] Determining the number of routing steps required for the source routing node to reach the destination routing node based on the number of the third preset value;

[0022] Obtaining a routing sub-vector corresponding to each third preset value in the first XOR result;

[0023] XORing the routing sub-vector with the values ​​corresponding to the other bits except the highest bit in the source routing number to obtain the values ​​corresponding to the other bits except the highest bit in the intermediate routing number corresponding to the intermediate routing node, and using the second preset value as the value corresponding to the highest bit in the intermediate routing number corresponding to the intermediate routing node to determine the intermediate routing number corresponding to the intermediate routing node;

[0024] Based on the number of routing steps, determining whether the intermediate routing nodes include a destination routing node;

[0025] In the case where the intermediate routing node does not include the destination routing node, the data packet is sent from the source routing node to the intermediate routing node, and the intermediate routing node is used as the source routing node, and the step of performing XOR operation on the values ​​corresponding to the bits other than the highest bit in the source routing number and the values ​​corresponding to the bits other than the highest bit in the destination routing number to obtain a first XOR result is returned until the intermediate routing node includes the destination routing node;

[0026] In the case where the intermediate routing node includes a destination routing node, sending the data packet from the source routing node to the destination routing node;

[0027] The target routing path includes a plurality of intermediate routing nodes.

[0028] The computer network communication method provided in this embodiment can quickly determine the intermediate routing nodes through the source routing number corresponding to the source routing node and the destination routing number of the destination routing node, and by gradually calculating the intermediate routing nodes, send the data packet sent by the source routing node to the destination routing node through the intermediate routing node, thereby improving the efficiency of data packet transmission.

[0029] In an optional implementation, before determining whether the intermediate routing nodes include the destination routing node based on the routing step number, the method further includes:

[0030] When there are no continuous first preset values ​​or no continuous second preset values ​​in the values ​​corresponding to the bits other than the highest bit in the intermediate routing number of the intermediate routing node, the intermediate routing node is determined to be an illegal intermediate routing node and the illegal intermediate routing node is eliminated.

[0031] The computer network communication method provided in this embodiment determines that an intermediate routing node whose values ​​corresponding to the bits other than the highest bit in the intermediate routing number of the intermediate routing node do not have a continuous first preset value or a continuous second preset value is illegal, and the illegal intermediate routing nodes are eliminated, thereby ensuring the accuracy of the intermediate routing nodes and the accuracy of data packet transmission.

[0032] In an optional implementation, before determining whether the intermediate routing nodes include the destination routing node based on the routing step number, the method further includes:

[0033] When the number of the intermediate routing nodes is not less than two, acquiring the occupation status of the intermediate routing nodes;

[0034] The intermediate routing nodes whose occupation status is occupied are eliminated.

[0035] The computer network communication method provided in this embodiment effectively avoids the transmission of data packets through unavailable paths by identifying and eliminating intermediate routing nodes whose occupancy status is occupied, thereby ensuring the reliability and efficiency of data transmission.

[0036] In an optional implementation, before determining whether the intermediate routing nodes include the destination routing node based on the routing step number, the method further includes:

[0037] When the number of intermediate routing nodes in the idle state is not less than two, obtaining the intermediate routing node with the smallest routing number among the intermediate routing nodes in the idle state;

[0038] Eliminate the intermediate routing nodes whose occupation status is idle except the intermediate routing node with the smallest routing number.

[0039] The computer network communication method provided in this embodiment speeds up the path decision process when the shortest path is not unique, thereby speeding up the efficiency of data transmission by retaining only the intermediate routing nodes with the smallest routing number among the intermediate routing nodes with the idle status when the number of the intermediate routing nodes with the idle status is not less than two.

[0040] In an optional implementation, the determining a target routing path in the computer network topology structure based on the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, so as to send the data packet sent by the source routing node to the destination routing node through the target routing path, includes:

[0041] In the case where the value of the highest bit of the source routing number indicates that the source routing node is an inner node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an inner node, performing an XOR operation on values ​​corresponding to bits other than the highest bit in the source routing number and values ​​corresponding to bits other than the highest bit in the destination routing number to obtain a second XOR result;

[0042] Obtaining the number of third preset values ​​in the second XOR result;

[0043] Based on the number of third preset values ​​in the second XOR result, the number of routing steps required for the source routing node to reach the destination routing node is determined, and based on the number of routing steps, the target routing path is determined.

[0044] The computer network communication method provided by this embodiment aims at the case where both the source routing node and the destination routing node are inner nodes, and obtains a second XOR result by performing XOR on the values ​​corresponding to the bits other than the highest bit in the source routing number and the values ​​corresponding to the bits other than the highest bit in the destination routing number, and then determines the number of routing steps according to the number of third preset values ​​in the second XOR result, and then determines the target routing path, thereby reducing the path determination time, improving the determination efficiency of the target routing path, and thus improving the efficiency of data packet transmission.

[0045] In an optional implementation, determining the number of routing steps required for the source routing node to reach the destination routing node based on the number of third preset values ​​in the second XOR result, and determining the target routing path based on the number of routing steps includes:

[0046] When the number of the third preset values ​​in the second XOR result is one or three, determining that the number of routing steps required for the source routing node to reach the destination routing node is one step;

[0047] In the case where the number of routing steps required for the source routing node to reach the destination routing node is one step, the target routing path is determined to directly send the data packet sent by the source routing node to the destination routing node.

[0048] The computer network communication method provided by this embodiment determines that the target routing path is a data packet directly sent from the source routing node to the destination routing node when the number of the third preset values ​​in the second XOR result is one or three. The target routing path is determined according to the number of the third preset values ​​in the second XOR result, which improves the efficiency of determining the target routing path, thereby improving the efficiency of data packet transmission.

[0049] In an optional implementation, determining the number of routing steps required for the source routing node to reach the destination routing node based on the number of third preset values ​​in the second XOR result, and determining the target routing path based on the number of routing steps includes:

[0050] When the number of the third preset values ​​in the second XOR result is two, determining that the number of routing steps required for the source routing node to reach the destination routing node is two;

[0051] In a case where the number of routing steps required from the source routing node to the destination routing node is two steps, determining two adjacent routing nodes and one relative routing node of the source routing node as intermediate routing nodes;

[0052] Eliminate the intermediate routing nodes whose occupation status is occupied, and obtain the remaining intermediate routing nodes;

[0053] In the case where the number of the remaining intermediate routing nodes is one, the data packet is sent from the source routing node to the remaining intermediate routing node, and the remaining intermediate routing node is used as the source routing node, and the step of performing XOR operation on the values ​​corresponding to the bits other than the highest bit in the source routing number and the values ​​corresponding to the bits other than the highest bit in the destination routing number to obtain a second XOR result is returned;

[0054] The target routing path includes a number of the remaining intermediate routing nodes.

[0055] The computer network communication method provided in this embodiment determines that two adjacent routing nodes and one relative routing node of the source routing node are intermediate routing nodes when the number of the third preset value in the second XOR result is two, and eliminates the intermediate routing nodes whose occupation status is occupied, obtains the remaining intermediate routing nodes, and sends the data packet to the destination routing node based on the remaining intermediate routing nodes, thereby reducing the path determination time, improving the determination efficiency of the target routing path, and thereby improving the efficiency of data packet transmission.

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

[0057] In the case that the number of the remaining intermediate routing nodes is greater than one, the remaining intermediate routing nodes except the remaining intermediate routing node with the smallest routing number are eliminated, and the remaining intermediate routing nodes are updated.

[0058] The computer network communication method provided in this embodiment speeds up the path decision process when the shortest path is not unique, thereby speeding up the efficiency of data transmission by retaining only the intermediate routing node with the smallest routing number when the number of remaining intermediate routing nodes is greater than one.

[0059] In an optional implementation, the determining a target routing path in the computer network topology structure based on the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, so as to send the data packet sent by the source routing node to the destination routing node through the target routing path, includes:

[0060] When the value of the highest bit of the source routing number indicates that the source routing node is an outer node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an inner node, sending the data packet sent by the source routing node to a first target inner node connected to the source routing node;

[0061] Determine a first routing path for sending the data packet from the first target inner node to the destination routing node based on a first target routing number corresponding to the first target inner node and a destination routing number corresponding to the destination routing node;

[0062] Based on the first routing path, sending the data packet from the first target inner node to the destination routing node;

[0063] The target routing path includes the first target inner node and the first routing path.

[0064] The computer network communication method provided in this embodiment improves the efficiency of data transmission by first determining a first target inner node connected to the source routing node when the source routing node is an outer node and the destination routing node is an inner node, sending a data packet from the source routing node to the first target inner node, and then routing the data packet in the inner node to send the data packet to the destination routing node.

[0065] In an optional implementation, the determining a target routing path in the computer network topology structure based on the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, so as to send the data packet sent by the source routing node to the destination routing node through the target routing path, includes:

[0066] When the value of the highest bit of the source routing number indicates that the source routing node is an inner node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an outer node, obtaining a second target inner node connected to the destination routing node;

[0067] Determine a second routing path for sending the data packet from the source routing node to the second target inner node based on the source routing number corresponding to the source routing node and the second target routing number corresponding to the second target inner node;

[0068] Based on the second routing path, sending the data packet from the source routing node to the second target inner node;

[0069] Based on the destination routing number corresponding to the destination routing node, sending the data packet from the second target inner node to the destination routing node;

[0070] The target routing path includes the second target inner node and the second routing path.

[0071] The computer network communication method provided in this embodiment improves the efficiency of data transmission by first determining a second target inner node connected to the destination routing node when the source routing node is an inner node and the destination routing node is an outer node, routing the data packet from the source routing node to the second target inner node, and then sending the data packet from the second target inner node to the destination routing node.

[0072] In a second 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 computer network communication method of the first aspect or any corresponding embodiment thereof by executing the computer instructions.

[0073] In a third 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 computer network communication method of the first aspect or any corresponding embodiment thereof.

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

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

[0076] Figure 1 It is a schematic diagram of a computer network topology structure in the related art;

[0077] Figure 2 is a flowchart of a computer network communication method according to an embodiment of the present invention;

[0078] Figure 3 is a schematic diagram of a computer network topology according to an embodiment of the present invention;

[0079] Figure 4 is a flow chart of another computer network communication method according to an embodiment of the present invention;

[0080] Figure 5 is a schematic diagram of allocating routing numbers to routing nodes according to an embodiment of the present invention;

[0081] Figure 6is a schematic diagram of a computer network topology with routing numbers according to an embodiment of the present invention;

[0082] Figure 7 is a schematic diagram of a computer network communication system according to an embodiment of the present invention;

[0083] Figure 8 is a schematic diagram of determining a routing subvector according to an embodiment of the present invention;

[0084] Fig. 9 is a schematic diagram of determining the value corresponding to the lower 3 bits of an intermediate routing node according to an embodiment of the present invention;

[0085] Fig.10 is a schematic diagram of an output routing path occupancy state according to an embodiment of the present invention;

[0086] Fig.11 is a schematic diagram of a path selection vector according to an embodiment of the present invention;

[0087] Fig.12 is a schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention;

[0088] Fig.13 is a schematic diagram of updating a path occupancy status according to an embodiment of the present invention;

[0089] Fig.14 is a schematic diagram of another method for determining a routing sub-vector according to an embodiment of the present invention;

[0090] Fig.15 is a schematic diagram of determining the value corresponding to the lower 3 bits of an intermediate routing node according to another embodiment of the present invention;

[0091] Fig.16 is a schematic diagram of another output routing path occupancy state according to an embodiment of the present invention;

[0092] Fig.17 is a schematic diagram of another path selection vector according to an embodiment of the present invention;

[0093] Fig.18 is another schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention;

[0094] Fig.19 is another schematic diagram of updating the path occupancy status according to an embodiment of the present invention;

[0095] Fig. 20 is a schematic diagram of another method for determining a routing sub-vector according to an embodiment of the present invention;

[0096] Fig.21is a schematic diagram of determining the value corresponding to the lower 3 bits of an intermediate routing node according to another embodiment of the present invention;

[0097] Fig. 22 is a schematic diagram of another output routing path occupancy state according to an embodiment of the present invention;

[0098] Fig.23 is a schematic diagram of another path selection vector according to an embodiment of the present invention;

[0099] Fig.24 is another schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention;

[0100] Fig.25 is another schematic diagram of updating the path occupancy status according to an embodiment of the present invention;

[0101] Fig.26 is a schematic diagram of a data packet routing determination phase according to an embodiment of the present invention;

[0102] Fig. 27 is a schematic diagram of determining an intermediate routing node according to an embodiment of the present invention;

[0103] Fig.28 is a schematic diagram of another output routing path occupancy state according to an embodiment of the present invention;

[0104] Fig.29 is a schematic diagram of another path selection vector according to an embodiment of the present invention;

[0105] Fig.30 is another schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention;

[0106] Fig.31 is another schematic diagram of updating the path occupancy status according to an embodiment of the present invention;

[0107] Fig.32 is a schematic diagram of another method for determining an intermediate routing node according to an embodiment of the present invention;

[0108] Fig.33 is a schematic diagram of determining the value corresponding to the lower 3 bits of an intermediate routing node according to another embodiment of the present invention;

[0109] Fig.34 is a schematic diagram of another output routing path occupancy state according to an embodiment of the present invention;

[0110] Fig.35 is a schematic diagram of another path selection vector according to an embodiment of the present invention;

[0111] Fig.36is another schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention;

[0112] Fig.37 is another schematic diagram of updating the path occupancy status according to an embodiment of the present invention;

[0113] Fig.38 is a schematic diagram of determining an output routing path according to an embodiment of the present invention;

[0114] Fig.39 is a schematic diagram of another output routing path occupancy state according to an embodiment of the present invention;

[0115] Fig.40 is a schematic diagram of another path selection vector according to an embodiment of the present invention;

[0116] Fig.41 is another schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention;

[0117] Fig.42 is another schematic diagram of updating the path occupancy status according to an embodiment of the present invention;

[0118] Fig.43 is a schematic diagram of another method for determining an output routing path according to an embodiment of the present invention;

[0119] Fig.44 is a schematic diagram of another output routing path occupancy state according to an embodiment of the present invention;

[0120] Fig.45 is a schematic diagram of another path selection vector according to an embodiment of the present invention;

[0121] Fig.46 is another schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention;

[0122] Fig.47 is another schematic diagram of updating the path occupancy status according to an embodiment of the present invention;

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

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

[0125] With the development of computer networks, people have discovered that the topological structure of computer networks has the power-law distribution characteristics of node degrees. This discovery has led to a major change in network topological models. More and more network topological models are constructed based on the characteristics of preferential connection and optimized growth in the power law, so that models that are more in line with the properties of computer topology are automatically generated, grown and connected according to some simple evolutionary laws, and new nodes are continuously added through this preferential connection and preferential growth law.

[0126] Due to the above characteristics of network topology, the development of the network has become more and more complex, and the performance has become more and more reliable, which has prompted the emergence of many network topology connection rules, that is, the construction of the network topology formation mechanism.

[0127] The topology of a computer network is an abstract way of connecting various network devices (such as routers, switches, etc.) including computers in the network to achieve network interconnection. The topology of a computer network is concerned with the connection relationship of network interconnection and its diagram, and does not care about the various details of the connected computers or devices.

[0128] It can be understood that through the topology diagram, we can clearly understand the line connection status of each node in the entire computer network and the external structure of the entire network. The nodes mainly refer to the various active devices connected in the network. Therefore, the computer network topology structure is composed of nodes and links. The node is the routing node.

[0129] In the related art, the computer network topology structure may be a spidergon routing network topology structure consisting of 12 routing nodes. Figure 1 It is a schematic diagram of the computer network topology structure in the related technology. Figure 1As shown, each routing node in the topology is connected to the routing nodes connected to its left and right, and at the same time, each routing node is connected to the opposite routing node through the center of the topological ring, that is, each routing node in the topology is connected to 3 other routing nodes. Each link in the figure is bidirectional, and there are 2 round-trip routing links between every two routing nodes. The network diameter of the topology is 3, that is, from the target input routing node to the target output routing node, the maximum number of routing lines corresponding to the shortest path is 3. Exemplarily, routing node 6 initiates data transmission to routing node 3, and its shortest path is: routing node 6~routing node 5~routing node 4~routing node 3. It can be seen that there are 3 routing lines corresponding to the shortest path, namely routing node 6~routing node 5, routing node 5~routing node 4 and routing node 4~routing node 3. Routing node 6 initiates data transmission to routing node 3, and there is another routing path, which is: routing node 6~routing node 0~routing node 1~routing node 2~routing node 3. The routing lines corresponding to this routing path are 4, which is not the shortest path for data packet transmission.

[0130] It should be noted that the spidergon routing network topology has the characteristic of uniqueness of the shortest path, that is, when data is transmitted between any two routing nodes, the shortest path has only one fixed route.

[0131] The characteristic of the shortest path uniqueness has two disadvantages. For routing nodes, the shortest path uniqueness will aggravate the internal congestion of routing nodes; for routing paths, the shortest path uniqueness will cause serious congestion and conflict in the routing paths between routing nodes, resulting in low data transmission efficiency, that is, low execution efficiency of the routing system.

[0132] For example, data packet 1 is sent from routing node 5 to routing node 2 according to Figure 1 In the computer network topology shown, the shortest path for the transmission of the data packet 1 is: routing node 5~routing node 4~routing node 3~routing node 2.

[0133] Data packet 2 is sent from routing node 4 to routing node 2. The shortest path for transmission of data packet 2 is: routing node 4~routing node 3~routing node 2.

[0134] Data packet 3 is sent from routing node 3 to routing node 2. The shortest path for transmission of data packet 3 is: routing node 3 ~ routing node 2.

[0135] Due to the uniqueness of the shortest path in the spidergon routing network topology, once the only shortest path is blocked, the internal data packets of routing nodes 5, 4, and 3 that initiate data transmission will be blocked inside the routing node, and no other path can be selected for data transmission.

[0136] When three packets of data are transmitting data, the routing path from routing node 3 to routing node 2 will be requested by three packets of data at the same time, and the routing path from routing node 4 to routing node 3 will be requested by two packets of data at the same time, which will cause serious blocking and conflict problems on these two routing paths, thereby aggravating the blocking of path nodes and routing paths within the topology structure and seriously affecting the transmission efficiency of the routing system.

[0137] In order to solve the problem of conflict and blockage of routing nodes and routing paths caused by the uniqueness of the shortest path in the related art, an embodiment of the present invention provides a computer network communication method, by assigning a routing number to each routing node, and according to the location information represented by the routing number of each routing node, connecting the inner layer nodes and the outer layer nodes in a layer, obtaining the inner layer network topology structure and the outer layer network topology structure, connecting the inner layer network topology structure and the outer layer network topology structure, obtaining a computer network topology structure in which the shortest path between routing nodes is not unique, obtaining a routing request of the computer network topology structure to determine the source routing node and the destination routing node corresponding to the routing request, determining the target routing path in the computer network topology structure based on the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, so as to send the data packet sent by the source routing node to the destination routing node through the target routing path to eliminate the uniqueness of the shortest path of some routing nodes in the topology structure, thereby alleviating the conflict and blockage problem of routing paths within the routing node and between the routing nodes, and improving the effect of data transmission efficiency.

[0138] According to an embodiment of the present invention, a computer network communication 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.

[0139] In this embodiment, a computer network communication method is provided, which can be used in a mobile terminal, such as a server, etc. Figure 2 is a flow chart of a computer network communication method according to an embodiment of the present invention. Figure 2 As shown, the process includes the following steps:

[0140] Step S201, assigning a routing number to each routing node.

[0141] Among them, various network devices in the computer are used as routing nodes, and a routing number is assigned to each routing node. It should be noted that the embodiment of the present invention is described by taking 12 routing nodes as an example. In fact, the computer network topology structure in this embodiment is not only applicable to 12 routing nodes, but also applicable to the number of routing nodes being n*2*2. Among them, n is a positive integer not less than 1.

[0142] Step S202: perform intra-layer connection on inner layer nodes and outer layer nodes according to the location information represented by the routing number of each routing node, so as to obtain an inner layer network topology structure and an outer layer network topology structure.

[0143] After each routing node is assigned a routing number, the inner layer nodes and the outer layer nodes are connected within the layer according to the location information represented by the routing number of the routing node to obtain the inner layer network topology structure and the outer layer network topology structure.

[0144] It should be noted that the location information of the routing node is determined according to the value corresponding to the highest bit in the routing number of the routing node. For any routing node, if the value corresponding to the highest bit in the routing number of the routing node is a first preset value, the routing node is determined to be an inner node; if the value corresponding to the highest bit in the routing number of the routing node is a second preset value, the routing node is determined to be an outer node.

[0145] For the inner nodes, they are sorted according to the routing numbers corresponding to the inner nodes, the inner nodes are connected within the layer, and the inner nodes with diagonal relationships are connected within the layer to obtain the inner network topology. For the outer nodes, they are sorted according to the routing numbers corresponding to the outer nodes, and the outer nodes are connected within the layer to obtain the outer network topology. In this embodiment, a computer network topology structure includes 12 routing nodes, which are divided into an inner and outer network topology structure, wherein the inner network topology structure and the outer network topology structure respectively arrange 6 routing nodes, that is, the computer network topology structure includes 6 inner nodes and 6 outer nodes, wherein the inner network topology structure is a hexagonal network topology structure, and the outer network topology structure is a hexagonal network topology structure.

[0146] It should be noted that, according to the order of the routing numbers corresponding to the inner nodes, the inner nodes can be connected within the layer in a clockwise direction or in a counterclockwise direction.

[0147] When the inner nodes are sorted according to the routing numbers corresponding to the inner nodes and connected to the inner layer clockwise, the outer nodes are sorted according to the routing numbers corresponding to the outer nodes and connected to the outer layer clockwise.

[0148] When the inner nodes are sorted according to the routing numbers corresponding to the inner nodes and connected within the layer counterclockwise, the outer nodes are sorted according to the routing numbers corresponding to the outer nodes and connected within the layer counterclockwise.

[0149] Step S203, connecting the inner network topology structure and the outer network topology structure to obtain a computer network topology structure in which the shortest path between routing nodes is not unique.

[0150] Among them, after obtaining the inner network topology structure and the outer network topology structure, the inner nodes and outer nodes with the same values ​​corresponding to the bits other than the highest bit in the routing number are connected to achieve the connection between the inner network topology structure and the outer network topology structure, and obtain a computer network topology structure in which the shortest path between routing nodes is not unique.

[0151] It should be noted that the shortest paths between some routing nodes in the computer network topology are not unique.

[0152] Figure 3 Schematic diagram of a computer network topology according to an embodiment of the present invention. Figure 3 As shown, each routing node in the outer network topology structure in the computer network topology structure is connected to two outer nodes whose routing numbers are adjacent to the routing number corresponding to the routing node, and is connected to a routing node in the inner network topology structure. The routing numbers of the outer nodes are arranged as 6, 7, 8, 9, 10, and 11. Each routing node in the inner network topology structure is connected to two inner nodes whose routing numbers are connected to the routing number corresponding to the routing node, and is connected to a routing node in the outer network topology structure, and two inner nodes located on the diagonal are connected through the hexagonal structure of the inner network topology structure, that is, the inner nodes with a diagonal relationship are connected within the layer, wherein the routing numbers of the inner nodes are arranged as 0, 1, 2, 3, 4, and 5.

[0153] like Figure 3 As shown, the values ​​corresponding to the bits other than the highest bit in the routing numbers of the inner node with routing number 0 and the outer node with routing number 6 are the same, so the two routing nodes are connected. The connection method of the remaining routing nodes complies with the above connection rules and will not be repeated here.

[0154] It can be understood that the computer network topology structure shown in this embodiment is a double-layer polygonal computer network topology structure, each link in the computer network topology structure is bidirectional, and the network diameter of the computer network topology structure is 3.

[0155] It should be noted that the computer network topology can eliminate the uniqueness of the shortest path of some routing nodes in the computer network, thereby alleviating the conflict and blocking problems of the paths within and between routing nodes, and improving the transmission efficiency of the system. Exemplarily, the data transmission scenarios of data packets 1, 2, and 3 in the related art are continued as an example for explanation.

[0156] Data packet 1 is sent from routing node 5 to routing node 2. Figure 3 In the computer network topology shown, the shortest path for the transmission of data packet 1 is: routing node 5 ~ routing node 2.

[0157] Data packet 2 is sent from routing node 4 to routing node 2. There are three shortest paths for data packet 2 to be transmitted:

[0158] The first one: routing node 4~routing node 3~routing node 2.

[0159] The second one: Routing node 4~routing node 5~routing node 2.

[0160] Article 3: Routing node 4~routing node 1~routing node 2.

[0161] Data packet 3 is sent from routing node 3 to routing node 2. The shortest path for transmission of data packet 3 is: routing node 3 ~ routing node 2.

[0162] It can be seen that data packet 1 and data packet 2 can be transmitted to target routing node 2 without passing through the same routing path, which will alleviate the conflict and blocking problem of routing paths caused by having the same transmission path. At the same time, when data packet 2 transmits data to routing node 2, it has three shortest paths to choose from. Compared with the shortest path being unique, the blocking degree inside routing node 4 will be significantly alleviated.

[0163] Step S204, obtaining a routing request of the computer network topology structure to determine the source routing node and the destination routing node corresponding to the routing request, and determining a target routing path in the computer network topology structure based on the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, so as to send the data packet sent by the source routing node to the destination routing node through the target routing path.

[0164] After obtaining the computer network topology, if a data packet needs to be routed, a routing request of the computer network topology is obtained, and the routing request is parsed to determine the source routing node and the destination routing node corresponding to the routing request.

[0165] After the source routing node and the destination routing node are determined, a target routing path is determined in the computer network topology structure according to the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, so as to send the data packet sent by the source routing node to the destination routing node according to the target routing path.

[0166] It should be noted that the target routing path is the shortest path from the source routing node to the destination routing node.

[0167] The computer network communication method provided in this embodiment assigns a routing number to each routing node, connects the inner layer nodes and the outer layer nodes in the layer according to the location information represented by the routing number of each routing node, obtains the inner layer network topology structure and the outer layer network topology structure, connects the inner layer network topology structure and the outer layer network topology structure, obtains the computer network topology structure in which the shortest path between routing nodes is not unique, and eliminates the uniqueness of the shortest path in the computer network topology structure in the related art. By obtaining the routing request of the computer network topology structure, the source routing node and the destination routing node corresponding to the routing request are determined, and based on the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, the target routing path is determined in the computer network topology structure, so that the data packet sent by the source routing node is sent to the destination routing node through the target routing path. The computer network topology structure eliminates the uniqueness of the shortest path of some routing nodes, alleviates the conflict and blocking problems of routing paths within and between routing nodes, improves the data transmission efficiency, and improves the routing efficiency of the system.

[0168] In this embodiment, a computer network communication method is provided, which can be used in a mobile terminal, such as a server, etc. Figure 4 is a flow chart of a computer network communication method according to an embodiment of the present invention. Figure 4 As shown, the process includes the following steps:

[0169] Step S401: assign a routing number to each routing node.

[0170] Specifically, the above step S401 includes:

[0171] Step S4011, obtaining a first numerical sequence located at a high position in a predefined numerical sequence.

[0172] Figure 5 FIG. 1 is a schematic diagram of allocating routing numbers to routing nodes according to an embodiment of the present invention. Figure 5 As shown, the predefined numerical sequence is 000111. Obtaining the first numerical sequence in the high position in the predefined numerical sequence is to obtain the first numerical sequence of the high 3 bits in the predefined numerical sequence, that is, to take the high 3 bits as the node label. It can be understood that the first numerical sequence is 000.

[0173] Step S4012: Use the first numerical sequence as the values ​​corresponding to the bits other than the highest bit in the routing numbers of the inner node and the outer node.

[0174] Among them, after obtaining the first numerical sequence, the first numerical sequence is used as the value corresponding to the other bits except the highest bit in the routing number of the first inner node and the first outer node clockwise or counterclockwise, that is, the upper 3 bits are taken as the lower 3 bits of the first inner / outer node label clockwise / counterclockwise.

[0175] The highest 3 is taken as the node number, that is, the first numerical sequence is taken as the value corresponding to the other bits except the highest bit in the routing number of the inner node and the outer node.

[0176] Step S4013, using the first preset value as the value corresponding to the highest bit in the routing number of the inner node, and using the second preset value as the value corresponding to the highest bit in the routing number of the outer node, to generate the routing number corresponding to the inner node and the routing number corresponding to the outer node.

[0177] The routing numbers of the inner node and the outer node are distinguished by the highest bit (i.e., the 4th bit), the 4th bit is the first preset value to indicate the inner node, and the 4th bit is the second preset value to indicate the outer node. In the embodiment of the present invention, the first preset value is 1 and the second preset value is 2 as an example for explanation.

[0178] It should be noted that the highest bit is connected to other bits by a connector, which is “_”.

[0179] like Figure 5 As shown, the obtained inner / outer node number, that is, the obtained routing number corresponding to the inner node is 1_000 and the routing number corresponding to the outer node is 0_000. At the same time, the inner node and the outer node with the same lower three bits are connected. It should be noted that the routing number is the node number.

[0180] Step S4014, performing a circular left shift operation on the predefined numerical sequence, and returning to execute the step of obtaining the first numerical sequence at a high position in the predefined numerical sequence, until routing numbers corresponding to a preset number of inner nodes and routing numbers corresponding to a preset number of outer nodes are generated.

[0181] Since the embodiment of the present invention includes 6 inner nodes and 6 outer nodes, it is necessary to continue to generate a routing number corresponding to the next inner node.

[0182] The predefined numerical sequence is circularly shifted left, that is, the predefined numerical sequence 000111 is circularly shifted left by 1 bit to obtain the updated predefined numerical sequence 001110, and the step of obtaining the first numerical sequence at a high position in the predefined numerical sequence and the steps after this step are returned, that is, the encoding method is the same as the first inner node or the first outer node, and the routing number 1_001 of the second inner node clockwise / counterclockwise can be obtained, and the routing number of the second outer node is 0_001. At the same time, the lower three bits of these two nodes are the same, and the two nodes are interconnected.

[0183] Repeat the above steps and perform 4 cyclic left shift operations on the 6-digit number of the predefined numerical sequence respectively, and the routing numbers of the 3rd, 4th, 5th, and 6th inner / outer nodes in the clockwise / counterclockwise direction of the computer network topology structure can be obtained. For example, the routing numbers corresponding to the remaining four inner nodes and four outer nodes are as follows: Figure 5 As shown in the third, fourth, fifth and sixth rows.

[0184] Among them, the preset number in this embodiment is 6.

[0185] Figure 6 Schematic diagram of a computer network topology with routing numbers according to an embodiment of the present invention. After obtaining the routing number corresponding to each routing node, the computer network topology with routing numbers can be as follows Figure 6 shown.

[0186] It should be noted that the encoding method of the routing number in this embodiment realizes that there is only a 1-bit difference in the third digit of the routing code of the connected inner nodes or the connected outer nodes, and the lower 3 bits of the connected inner nodes are the same as those of the outer nodes, which provides convenience for data packet routing.

[0187] Step S402: perform intra-layer connections on the inner layer nodes and the outer layer nodes according to the positional relationship represented by the routing numbers of the routing nodes, and obtain the inner layer network topology structure and the outer layer network topology structure. Figure 2 Step S202 of the illustrated embodiment will not be described in detail here.

[0188] Step S403, connect the inner network topology structure and the outer network topology structure to obtain a computer network topology structure where the shortest path between routing nodes is not unique. Figure 2 Step S203 of the illustrated embodiment will not be described in detail here.

[0189] Step S404, obtaining a routing request of the computer network topology structure to determine the source routing node and the destination routing node corresponding to the routing request, and determining a target routing path in the computer network topology structure based on the source routing number corresponding to the source routing node and the destination routing number corresponding to the destination routing node, so as to send the data packet sent by the source routing node to the destination routing node through the target routing path. For details, please refer to Figure 2 Step S204 of the illustrated embodiment will not be described in detail here.

[0190] The computer network communication method provided in this embodiment uses the first numerical sequence located at a high position in the predefined numerical sequence as the values ​​corresponding to the other bits except the highest bit in the routing numbers of the inner nodes and the outer nodes, uses the first preset value as the value corresponding to the highest bit in the routing number of the inner node, and uses the second preset value as the value corresponding to the highest bit in the routing number of the outer node to generate routing numbers corresponding to the inner nodes and routing numbers corresponding to the outer nodes. This routing number allocation method provides convenience for the routing of data packets in the computer network topology structure.

[0191] In some optional implementations, the above step S404 includes:

[0192] Step a1, when the value of the highest bit of the source routing number indicates that the source routing node is an outer node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an outer node, perform XOR on the values ​​corresponding to the bits other than the highest bit in the source routing number and the values ​​corresponding to the bits other than the highest bit in the destination routing number to obtain a first XOR result.

[0193] It should be noted that when the source routing node is an outer node and the destination routing node is an outer node, the routing rule for determining the data packet is that the data packet will not enter the inner structure, i.e., the inner network topology structure, during transmission, and data routing can only be performed between nodes in the outer structure, i.e., the outer network topology structure.

[0194] It is understandable that the designation of this routing rule is intended to facilitate the designation of routing algorithms and the implementation of hardware solutions.

[0195] The highest bit value of the source routing number indicates that the source routing node is an outer node, and the highest bit value of the destination routing number indicates that the destination routing node is an outer node, indicating that the highest bit value of the source routing number is the second preset value, and the highest bit value of the destination routing number is the second preset value.

[0196] Exemplarily, the source routing number is 0_100, the destination routing number is 0_011, and the value of the highest bit is 0, then it is determined that the source routing node and the destination routing node are both outer nodes.

[0197] When the source routing node and the destination routing node are both outer nodes, the values ​​corresponding to the bits except the highest bit in the source routing number, that is, the value corresponding to the lower 3 bits of the source routing number, are XORed with the values ​​corresponding to the bits except the highest bit in the destination routing number, that is, the value corresponding to the lower 3 bits of the destination routing number, to obtain a first XOR result.

[0198] Exemplarily, a data packet is sent from source routing node 0_000 to destination routing node 0_001, and the lower 3 bits of 0_000 and 0_001 are XORed, resulting in a first XOR result of 001.

[0199] Step a2, obtaining the number of third preset values ​​in the first XOR result.

[0200] The third preset value is 1. After obtaining the first XOR result, the number of the third preset values ​​in the first XOR result is obtained. Exemplarily, the first XOR result is 001, wherein the number of 1s is 1.

[0201] Step a3: determining the number of routing steps required for the source routing node to reach the destination routing node based on the third preset value.

[0202] After obtaining the number of the third preset values ​​in the first XOR result, the number of routing steps required for the source routing node to reach the destination routing node is determined according to the number of the third preset values.

[0203] Exemplarily, if the number of 1s in the first XOR result is 1, it is determined that the number of routing steps required for the source routing node to reach the destination routing node is 1.

[0204] Exemplarily, a data packet is sent from source routing node 0_000 to destination routing node 0_011, and the lower 3 bits of 0_000 and 0_011 are XORed to obtain a first XOR result of 011, where the number of 1s is 2, indicating that the number of routing steps required for the source routing node to reach the destination routing node is 2.

[0205] Exemplarily, a data packet is sent from source routing node 0_000 to destination routing node 0_111, and the lower 3 bits of 0_000 and 0_111 are XORed to obtain a first XOR result of 111, where the number of 1s is 3, indicating that the number of routing steps required for the source routing node to reach the destination routing node is 3.

[0206] Step a4: Obtain a routing sub-vector corresponding to each third preset value in the first XOR result.

[0207] After obtaining the first XOR result, the routing sub-vector corresponding to each 1 in the first XOR result is separated. Exemplarily, a data packet is sent from the source routing node 0_000 to the destination routing node 0_011, and the lower 3 bits of the two routing codes are XORed to obtain the first XOR result of 011. The routing sub-vector corresponding to each 1 in the first XOR result is separated, which are 010 and 001 respectively.

[0208] In another exemplary embodiment, a data packet is sent from source routing node 0_000 to destination routing node 0_111, the lower 3 bits of the two routing codes are XORed, and the first XOR result is 111. The routing sub-vectors corresponding to each 1 in the first XOR result are separated out, namely 100, 010 and 001.

[0209] Step a5, XOR the routing sub-vector with the values ​​corresponding to the bits other than the highest bit in the source routing number, obtain the values ​​corresponding to the bits other than the highest bit in the intermediate routing number corresponding to the intermediate routing node, and use the second preset value as the value corresponding to the highest bit in the intermediate routing number corresponding to the intermediate routing node to determine the intermediate routing number corresponding to the intermediate routing node.

[0210] Among them, after obtaining the routing sub-vector, the routing sub-vector is XORed with the values ​​corresponding to the other bits in the source routing number except the highest bit, and the XOR result represents the values ​​corresponding to the other bits except the highest bit in the routing code corresponding to the routing node reached by the next 1-step routing performed by the source routing node.

[0211] Exemplarily, a data packet is sent from source routing node 0_000 to destination routing node 0_011, and the routing sub-vectors corresponding to the third preset value in the first XOR result are 010 and 001. These two routing sub-vectors are XORed with the values ​​corresponding to the other bits in the source routing number except the highest bit, that is, 010 is XORed with 000, and 001 is XORed with 000, and the XOR results are 010 and 001 respectively.

[0212] It should be noted that non-continuous 0s and 1s in the XOR result are considered illegal values ​​and need to be eliminated (that is, 101 or 010 in the XOR result needs to be eliminated).

[0213] At this time, 010 in the XOR result is eliminated, leaving 001, and 001 is used as the value corresponding to the other bits except the highest bit in the intermediate routing number corresponding to the intermediate routing node, and 0 is used as the value corresponding to the highest bit in the intermediate routing number corresponding to the intermediate routing node, that is, the intermediate routing number corresponding to the intermediate routing node obtained is 0_001.

[0214] In another exemplary embodiment, a data packet is sent from source routing node 0_000 to destination routing node 0_111, and the routing sub-vectors corresponding to the third preset value in the first XOR result are 100, 010 and 001. These three routing sub-vectors are XORed with the values ​​corresponding to the other bits in the source routing number except the highest bit, that is, 100 is XORed with 000, 000 is XORed with 010, and 001 is XORed with 000. The XOR results are 100, 010 and 001 respectively.

[0215] Among them, 010 in the XOR result is an illegal value and is eliminated, leaving 100 and 001. 100 and 001 are used as the values ​​corresponding to the other bits except the highest bit in the intermediate routing number corresponding to the intermediate routing node, and 0 is used as the value corresponding to the highest bit in the intermediate routing number corresponding to the intermediate routing node, that is, the intermediate routing numbers corresponding to the intermediate routing nodes obtained are 0_100 and 0_001.

[0216] Step a6: Determine whether the intermediate routing nodes include the destination routing node based on the number of routing steps.

[0217] After the number of routing steps is determined, if the number of routing steps is one step, the intermediate routing node includes the destination routing node. If the number of routing steps is greater than one step, it is determined that the intermediate routing node does not include the destination routing node.

[0218] Step a7, when the intermediate routing node does not include the destination routing node, the data packet is sent from the source routing node to the intermediate routing node, and the intermediate routing node is used as the source routing node, and the step of performing XOR operation on the values ​​corresponding to the bits other than the highest bit in the source routing number and the values ​​corresponding to the bits other than the highest bit in the destination routing number is returned to obtain the first XOR result, until the intermediate routing node includes the destination routing node.

[0219] Among them, the intermediate routing node does not include the destination routing node. It is necessary to first send the data packet from the source routing node to the intermediate routing node, and then use the intermediate routing node as the source routing node, return to execute the step of XORing the values ​​corresponding to the bits corresponding to the other bits in the source routing number except the highest bit, and obtain the first XOR result and subsequent steps until the intermediate routing node includes the destination routing node.

[0220] Exemplarily, a data packet is sent from source routing node 0_000 to destination routing node 0_011. The first intermediate routing node obtained by the above steps is 0_001, which means that the data packet should be routed from the source routing node to the intermediate routing node of 0_001 in the first step.

[0221] For example, a data packet is sent from source routing node 0_000 to destination routing node 0_111. The first intermediate routing node obtained by the above steps can be 0_100 or 0_001, which means that the data packet should be routed from the source routing node to the intermediate routing node of 0_100 or 0_001 in the first step. The selection of these two routing paths depends on which routing path is in an idle state, and there is no priority order between the two routing paths.

[0222] It can be understood that, when the source routing node and the destination routing node are both outer nodes, when the data packet arrives at a new routing node, that is, an intermediate routing node, the source routing node is updated to the new routing node currently arrived, and the source routing number corresponding to the source routing node is updated to the routing number corresponding to the new routing node currently arrived, that is, the intermediate routing number, and then steps a1 to a7 are repeated until the data packet reaches the destination routing node.

[0223] Step a8: When the intermediate routing node includes the destination routing node, the data packet is sent from the source routing node to the destination routing node.

[0224] The intermediate routing nodes include the destination routing node, indicating that the destination routing node can be reached by performing one-step routing, and the data packet is directly sent from the current source routing node to the destination routing node.

[0225] The target routing path includes several intermediate routing nodes. It can be understood that the several intermediate routing nodes included in the target routing path are the several intermediate routing nodes obtained above, and the data packets sent by the source routing node are sent to the destination routing node via the intermediate routing nodes through the acquisition order of the above intermediate routing nodes.

[0226] The computer network communication method provided in this embodiment can quickly determine the intermediate routing nodes through the source routing number corresponding to the source routing node and the destination routing number of the destination routing node, and by gradually calculating the intermediate routing nodes, send the data packet sent by the source routing node to the destination routing node through the intermediate routing node, thereby improving the efficiency of data packet transmission.

[0227] In some optional implementations, before step a6, the computer network communication method further includes:

[0228] Step b1, when there are no continuous first preset values ​​or continuous second preset values ​​in the values ​​corresponding to the bits other than the highest bit in the intermediate routing number of the intermediate routing node, determine that the intermediate routing node is an illegal intermediate routing node and eliminate the illegal intermediate routing node.

[0229] Among them, the intermediate routing node determined by step a5 can be one or more. For any intermediate routing node, if there is no continuous first preset value or no continuous second preset value in the values ​​corresponding to the other bits except the highest bit in the intermediate routing number of the intermediate routing node, the intermediate routing node is determined to be an illegal intermediate routing node and the illegal intermediate routing node is eliminated.

[0230] As mentioned above, when the XOR result obtained by XORing the routing sub-vector with the values ​​corresponding to the bits other than the highest bit in the source routing number shows non-continuous 0s and 1s (i.e., 101 or 010 appears in the XOR result and needs to be eliminated), it is regarded as an illegal value, that is, the intermediate routing node corresponding to the XOR result is an illegal intermediate routing node.

[0231] The computer network communication method provided in this embodiment determines that an intermediate routing node whose values ​​corresponding to the bits other than the highest bit in the intermediate routing number of the intermediate routing node do not have a continuous first preset value or a continuous second preset value is illegal, and the illegal intermediate routing nodes are eliminated, thereby ensuring the accuracy of the intermediate routing nodes and the accuracy of data packet transmission.

[0232] In some optional implementations, before step a6, the computer network communication method further includes:

[0233] Step c1, when the number of the intermediate routing nodes is not less than two, obtaining the occupation status of the intermediate routing nodes.

[0234] Among them, the number of intermediate routing nodes is not less than two, indicating that the number of intermediate routing nodes after eliminating illegal intermediate routing nodes is not less than two. For any intermediate routing node, the occupancy status of the intermediate routing node is obtained, that is, whether the routing path from the source routing node to the intermediate routing node is occupied by other data packet transmissions is determined.

[0235] Step c2: remove the intermediate routing nodes whose occupation status is occupied.

[0236] When the occupancy status of the intermediate routing node is occupied, in order to prevent the blocking of the routing node and the blocking of the routing path, the intermediate routing node with the occupancy status being occupied is removed.

[0237] It should be noted that, when the number of intermediate routing nodes is not less than two and the occupancy status of the intermediate routing nodes is all occupied, the intermediate routing node with the smallest routing number among the intermediate routing nodes is obtained, and the other intermediate routing nodes except the intermediate routing node with the smallest routing number among the intermediate routing nodes are eliminated.

[0238] When the number of the intermediate routing nodes is not less than two and there are intermediate routing nodes whose occupation status is idle, the intermediate routing nodes whose occupation status is occupied are eliminated.

[0239] It can be understood that, when the number of the intermediate routing nodes is one, the step of determining whether the intermediate routing nodes include the destination routing node based on the number of routing steps and subsequent steps are directly executed.

[0240] The computer network communication method provided in this embodiment ensures the reliability of data transmission of data packets by obtaining the intermediate routing node with the smallest routing number among the intermediate routing nodes when the number of intermediate routing nodes is not less than two and the occupancy status of the intermediate routing nodes are all occupied, and eliminating the other intermediate routing nodes except the intermediate routing node with the smallest routing number among the intermediate routing nodes.

[0241] The computer network communication method provided in this embodiment effectively avoids the transmission of data packets through unavailable paths by identifying and eliminating intermediate routing nodes whose occupancy status is occupied, thereby ensuring the reliability and efficiency of data transmission.

[0242] In some optional implementations, before step a6, the computer network communication method further includes:

[0243] Step d1, when the number of intermediate routing nodes in the idle state is not less than two, obtain the intermediate routing node with the smallest routing number among the intermediate routing nodes in the idle state.

[0244] Among them, the number of intermediate routing nodes in the idle state is not less than two, which means that there are at least two routing paths from the current source routing node to the destination routing node, and these routing paths can be used as transmission paths for data packets.

[0245] However, in order to determine the unique transmission path of the data packet, this embodiment obtains the intermediate routing node with the smallest routing number among the intermediate routing nodes in the idle state when the number of intermediate routing nodes in the idle state is not less than two.

[0246] It should be noted that the order of the routing numbers in this embodiment is the same as the order of the values ​​corresponding to the other bits in the routing numbers except the highest bit. The order of the values ​​corresponding to the other bits except the highest bit is 000, 001, 011, 111, 110, 100 from small to large.

[0247] Step d2: Eliminate the intermediate routing nodes whose occupation status is idle except for the intermediate routing node with the smallest routing number.

[0248] When the intermediate routing node with the smallest routing number is obtained, other intermediate routing nodes except the intermediate routing node with the smallest routing number are eliminated, that is, the data packet is sent from the source routing node to the intermediate routing node with the smallest routing number.

[0249] The computer network communication method provided in this embodiment speeds up the path decision process when the shortest path is not unique, thereby speeding up the efficiency of data transmission by retaining only the intermediate routing nodes with the smallest routing number among the intermediate routing nodes with the idle status when the number of the intermediate routing nodes with the idle status is not less than two.

[0250] In some optional implementations, the above step S404 includes:

[0251] Step e1, when the value of the highest bit of the source routing number indicates that the source routing node is an inner node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an inner node, perform XOR on the values ​​corresponding to the bits other than the highest bit in the source routing number and the values ​​corresponding to the bits other than the highest bit in the destination routing number to obtain a second XOR result.

[0252] It should be noted that when the source routing node is an inner node and the destination routing node is an inner node, the routing rule for determining the data packet is that the data packet will not enter the outer structure, i.e., the outer network topology structure, during transmission, and data routing can only be performed between nodes in the inner structure, i.e., the inner network topology structure.

[0253] It is understandable that the designation of this routing rule is intended to facilitate the designation of routing algorithms and the implementation of hardware solutions.

[0254] The highest bit value of the source routing number indicates that the source routing node is an inner node, and the highest bit value of the destination routing number indicates that the destination routing node is an inner node, indicating that the highest bit value of the source routing number is the first preset value, and the highest bit value of the destination routing number is the first preset value.

[0255] Exemplarily, the source routing number is 1_100, the destination routing number is 1_111, and the highest bit value is 1, then it is determined that the source routing node and the destination routing node are both inner nodes.

[0256] When the source routing node and the destination routing node are both inner nodes, the values ​​corresponding to the bits except the highest bit in the source routing number, i.e., the value corresponding to the lower 3 bits of the source routing number, are XORed with the values ​​corresponding to the bits except the highest bit in the destination routing number, i.e., the value corresponding to the lower 3 bits of the destination routing number, to obtain a second XOR result.

[0257] Step e2, obtaining the number of third preset values ​​in the second XOR result.

[0258] After obtaining the second XOR result, the number of third preset values ​​in the second XOR result is obtained, that is, the number of 1s in the second XOR result is obtained.

[0259] Step e3, based on the number of third preset values ​​in the second XOR result, determine the number of routing steps required for the source routing node to reach the destination routing node, and determine the target routing path based on the number of routing steps.

[0260] After obtaining the number of third preset values ​​in the second XOR result, the number of routing steps required for the source routing node to reach the destination routing node is determined according to the number of third preset values ​​in the second XOR result, and the target routing path is determined based on the number of routing steps.

[0261] The computer network communication method provided by this embodiment aims at the case where both the source routing node and the destination routing node are inner nodes, and obtains a second XOR result by performing XOR on the values ​​corresponding to the bits other than the highest bit in the source routing number and the values ​​corresponding to the bits other than the highest bit in the destination routing number, and then determines the number of routing steps according to the number of third preset values ​​in the second XOR result, and then determines the target routing path, thereby reducing the path determination time, improving the determination efficiency of the target routing path, and thus improving the efficiency of data packet transmission.

[0262] In some optional implementations, the above step e3 includes:

[0263] Step e31, when the number of the third preset values ​​in the second XOR result is one or three, determining that the number of routing steps required for the source routing node to reach the destination routing node is one step.

[0264] It should be noted that the number of the third preset value in the second XOR result represents the number of routing steps required for the source routing node to reach the destination routing node. There is a special case in the scenario where the source routing node and the destination routing node are both inner nodes, that is, the number of 1s in the second XOR result is 3. At this time, the inner routing can be directly routed to the inner target node through the diagonal of the inner layer 6 deformation structure in 1 step, instead of reaching the destination routing node in 3 steps.

[0265] Exemplarily, a data packet is sent from source routing node 1_000 to destination routing node 1_001, and the lower 3 bits of 1_000 and 1_001 are XORed to obtain a second XOR result of 001. The number of 1s in the second XOR result is 1, indicating that only one step is required to reach destination routing node 1_001.

[0266] In another exemplary embodiment, a data packet is sent from source routing node 1_000 to destination routing node 1_011, and the lower 3 bits of 1_000 and 1_011 are XORed to obtain a second XOR result of 011. The number of 1s in the second XOR result is 2, indicating that it takes 2 steps to reach the destination routing node 1_011.

[0267] In another exemplary embodiment, a data packet is sent from source routing node 1_000 to destination routing node 1_111, and the lower 3 bits of 1_000 and 1_111 are XORed, and the second XOR result is 111. The number of 1s in the second XOR result is 3, and at this time, the source routing node can route the data packet to the destination routing node 1_111 through a diagonal 1 step.

[0268] Therefore, if the number of the third preset values ​​in the second XOR result is one or three, it is determined that the number of routing steps required for the source routing node to reach the destination routing node is one step.

[0269] Step e32, when the number of routing steps required for the source routing node to reach the destination routing node is one step, determine the target routing path as directly sending the data packet sent by the source routing node to the destination routing node.

[0270] It can be understood that the number of routing steps required for the source routing node to reach the destination routing node is one step, and the target routing path is to directly send the data packet sent by the source routing node to the destination routing node.

[0271] When the number of 1s in the second XOR result is 3, the destination routing number corresponding to the destination routing node is directly selected as the routing number for the data packet to arrive at next, that is, it can be reached through one step through the diagonal of the inner structure, while three steps are required in the outer structure.

[0272] The computer network communication method provided by this embodiment determines that the target routing path is a data packet directly sent from the source routing node to the destination routing node when the number of the third preset values ​​in the second XOR result is one or three. The target routing path is determined according to the number of the third preset values ​​in the second XOR result, which improves the efficiency of determining the target routing path, thereby improving the efficiency of data packet transmission.

[0273] In some optional implementations, the above step e3 includes:

[0274] Step e33, when the number of the third preset values ​​in the second XOR result is two, it is determined that the number of routing steps required for the source routing node to reach the destination routing node is two steps.

[0275] Step e34: when the number of routing steps required from the source routing node to the destination routing node is two, two adjacent routing nodes and one relative routing node of the source routing node are determined as intermediate routing nodes.

[0276] Among them, in the scenario where the source routing node and the destination routing node are both inner nodes, the method for determining the routing number corresponding to the routing node to which the next routing of the data packet sent by the source routing node arrives is different from the method for determining the routing number in the scenario where the source routing node and the destination routing node are both outer nodes.

[0277] Specifically, when the number of 1s in the second XOR result is 2, two adjacent routing nodes and one relative routing node of the source routing node are selected as intermediate routing nodes to complete the first routing step.

[0278] It should be noted that adjacent routing nodes are two inner nodes connected to the source routing node in the computer network topology structure, and the relative routing node is an inner node that is diagonally related and connected to the source routing node in the computer network topology structure.

[0279] Step e35, removing the intermediate routing nodes whose occupation status is occupied, and obtaining the remaining intermediate routing nodes.

[0280] It can be understood that when the number of 1s in the second XOR result is 2, that is, when the number of routing steps required from the source routing node to the destination routing node is two, there are three routing paths to choose from, that is, there are three intermediate routing nodes.

[0281] For any intermediate routing node, the occupancy status of the intermediate routing node is obtained, and when the occupancy status of the intermediate routing node is occupied, the intermediate routing node is removed.

[0282] After the intermediate routing nodes whose occupancy status is occupied are removed, the remaining intermediate routing nodes are obtained. It can be understood that the occupancy status of the remaining intermediate routing nodes is idle.

[0283] Step e36, when the number of remaining intermediate routing nodes is one, the data packet is sent from the source routing node to the remaining intermediate routing nodes, and the remaining intermediate routing nodes are used as the source routing nodes, and the step of returning to execute XOR of the values ​​corresponding to the bits other than the highest bit in the source routing number with the values ​​corresponding to the bits other than the highest bit in the destination routing number to obtain the second XOR result.

[0284] Among them, there is one remaining intermediate routing node, and it is necessary to first send the data packet from the source routing node to the remaining intermediate routing node, and then use the remaining intermediate routing node as the source routing node, and return to execute the step of XORing the values ​​corresponding to the bits corresponding to the other bits in the source routing number except the highest bit, to obtain the second XOR result and subsequent steps until the number of third preset values ​​in the second XOR result is one.

[0285] The target routing path includes a number of remaining intermediate routing nodes. It can be understood that the number of remaining intermediate routing nodes included in the target routing path are the number of remaining intermediate routing nodes obtained above, and the data packets sent by the source routing node are sent to the destination routing node via the remaining intermediate routing nodes through the acquisition order of the above remaining intermediate routing nodes.

[0286] It can be understood that, when the source routing node and the destination routing node are both inner nodes, when the data packet reaches a new routing node, that is, the remaining intermediate routing node, the source routing node is updated to the new routing node currently arrived, and the source routing number corresponding to the source routing node is updated to the routing number corresponding to the new routing node currently arrived, and then steps e1 to e3 are repeated until the data packet reaches the destination routing node.

[0287] The computer network communication method provided in this embodiment determines that two adjacent routing nodes and one relative routing node of the source routing node are intermediate routing nodes when the number of the third preset value in the second XOR result is two, and eliminates the intermediate routing nodes whose occupation status is occupied, obtains the remaining intermediate routing nodes, and sends the data packet to the destination routing node based on the remaining intermediate routing nodes, thereby reducing the path determination time, improving the determination efficiency of the target routing path, and thereby improving the efficiency of data packet transmission.

[0288] In some optional implementations, the computer network communication method further includes:

[0289] Step f1, when the number of the remaining intermediate routing nodes is greater than one, remove the remaining intermediate routing nodes except the remaining intermediate routing node with the smallest routing number, and update the remaining intermediate routing nodes.

[0290] When the number of remaining intermediate routing nodes is greater than one, the remaining intermediate routing nodes other than the remaining intermediate routing node with the smallest routing number are eliminated, and the remaining intermediate routing nodes are updated to the remaining intermediate routing node with the smallest routing number, that is, the data packet is sent from the source routing node to the remaining intermediate routing node with the smallest routing number.

[0291] The computer network communication method provided in this embodiment speeds up the path decision process when the shortest path is not unique, thereby speeding up the efficiency of data transmission by retaining only the intermediate routing node with the smallest routing number when the number of remaining intermediate routing nodes is greater than one.

[0292] In some optional implementations, the above step S404 includes:

[0293] Step g1, when the highest bit value of the source routing number indicates that the source routing node is an outer node, and the highest bit value of the destination routing number indicates that the destination routing node is an inner node, the data packet sent by the source routing node is sent to the first target inner node connected to the source routing node.

[0294] Exemplarily, if the source routing number is 0_100 and the value of the highest bit is 0, the source routing node is determined to be an outer node; if the destination routing number is 1_001 and the value of the highest bit is 1, the destination routing node is determined to be an inner node.

[0295] It should be noted that when the source routing node is an outer node and the destination routing node is an inner node, the routing rule for determining the data packet is that when the data packet is transmitted, it is first routed from the source routing node to the inner routing node connected to the source routing node, that is, the first target inner node, and then transmitted through the routing nodes of the inner structure until it reaches the destination routing node.

[0296] Exemplarily, a data packet is sent from source routing node 0_000 to destination routing node 1_011. First, the data packet is sent from the source routing node to the first target inner node 1_000 connected to it, and then sent to the destination routing node through the first target inner node through two steps of routing.

[0297] The reason for specifying this routing rule is that the network diameter of the inner structure is 2, while the network diameter of the outer structure is 3, and the data packet is more efficiently routed in the inner structure.

[0298] Step g2, based on the first target routing number corresponding to the first target inner node and the destination routing number corresponding to the destination routing node, determine a first routing path for sending the data packet from the first target inner node to the destination routing node.

[0299] It can be understood that if the first target inner node and the destination routing node are both inner nodes, the first routing path for sending the data packet from the first target inner node to the destination routing node is determined according to the routing rules of the aforementioned steps e1-e3.

[0300] It should be noted that, after the data packet reaches the first target inner node, the remaining routing path, ie, the first routing path, is determined according to the routing rules from inner node to inner node, ie, the routing rules of the aforementioned steps e1-e3.

[0301] Step g3, based on the first routing path, sending the data packet from the first target inner node to the destination routing node.

[0302] After the first routing path is determined, the data packet is sent from the first target inner node to the destination routing node according to the first routing path.

[0303] That is to say, the data packets between the inner nodes are routed according to the first routing path.

[0304] The target routing path includes a first target inner node and a first routing path.

[0305] The computer network communication method provided in this embodiment improves the efficiency of data transmission by first determining a first target inner node connected to the source routing node when the source routing node is an outer node and the destination routing node is an inner node, sending a data packet from the source routing node to the first target inner node, and then routing the data packet in the inner node to send the data packet to the destination routing node.

[0306] In some optional implementations, the above step S404 includes:

[0307] Step h1, when the highest bit value of the source routing number indicates that the source routing node is an inner node, and the highest bit value of the destination routing number indicates that the destination routing node is an outer node, obtain a second target inner node connected to the destination routing node.

[0308] Exemplarily, if the source routing number is 1_000 and the value of the highest bit is 1, the source routing node is determined to be an inner node; if the destination routing number is 0_011 and the value of the highest bit is 0, the destination routing node is determined to be an outer node.

[0309] It should be noted that, when the source routing node is an inner node and the destination routing node is an outer node, the routing rule for determining the data packet is that the data packet is first transmitted through the routing nodes in the inner structure until it reaches the second target inner node connected to the destination routing node of the outer structure, and then the data packet is transmitted to the destination routing node connected to it through the second target inner node.

[0310] For example, a data packet is sent from source routing node 1_000 to destination routing node 0_011. First, the data packet is sent from the source routing node to the second target inner node 1_011 through 2 steps of routing, and then sent to the destination routing node through the second target inner node. The reason for specifying this routing rule is that the network diameter of the inner structure is 2, while the network diameter of the outer structure is 3, and the efficiency of routing data packets in the inner structure is higher.

[0311] Step h2, based on the source routing number corresponding to the source routing node and the second target routing number corresponding to the second target inner node, determine a second routing path for sending the data packet from the source routing node to the second target inner node.

[0312] It can be understood that if the second target inner node and the source routing node are both inner nodes, the second routing path for sending the data packet from the source target inner node to the second target inner node is determined according to the routing rules of the aforementioned steps e1-e3.

[0313] Step h3, based on the second routing path, sending the data packet from the source routing node to the second target inner node.

[0314] After the second routing path is determined, the data packet is routed between the inner nodes according to the second routing path, and the data packet is sent from the source routing node to the second target inner node.

[0315] Step h4, based on the destination routing number corresponding to the destination routing node, the data packet is sent from the second target inner node to the destination routing node.

[0316] The data packet is sent to the destination routing node through the second target inner node to complete the data packet transmission process.

[0317] The target routing path includes a second target inner node and a second routing path.

[0318] The computer network communication method provided in this embodiment improves the efficiency of data transmission by first determining a second target inner node connected to the destination routing node when the source routing node is an inner node and the destination routing node is an outer node, routing the data packet from the source routing node to the second target inner node, and then sending the data packet from the second target inner node to the destination routing node.

[0319] In this embodiment, a computer network communication system is also provided. The system is implemented by hardware. Figure 7 Schematic diagram of a computer network communication system according to an embodiment of the present invention. Figure 7 As shown, the computer network communication system includes a routing vector XOR module, a shortest path selection module, a node path status query and update module, a vector first 1 module and a routing direction management module.

[0320] The routing vector XOR module is used to XOR the routing number corresponding to the current input node with the routing number corresponding to the output node to generate the corresponding routing vector. That is, the lower 3 bits of the routing number corresponding to the current source routing node are XORed with the lower 3 bits of the routing number corresponding to the destination routing node to obtain the XOR result.

[0321] The routing vector XOR module is also used to separate the routing sub-vector in the routing vector, and XOR the routing sub-vector with the lower 3 bits of the routing number corresponding to the current input node to obtain the XOR result, eliminate the illegal vectors in the XOR result, corresponding to eliminating the illegal intermediate routing nodes, and send the valid vectors, that is, the routing vectors corresponding to the other intermediate routing nodes except the illegal intermediate routing nodes, to the shortest path selection module for shortest routing path selection.

[0322] The shortest path selection module is used to determine the output routing path, ie, the shortest path, of the data packet of the current input node according to the aforementioned routing rules and routing algorithm steps, combined with the effective vector provided by the routing vector XOR module.

[0323] The node path status query and update module is used to provide the idle / occupied status of each candidate data path for query by each routing node when the routing node selects a routing path. The idle / occupied status of each candidate data path can be determined by the path selection vector of the routing node.

[0324] The node path status query and update module is also used to set or clear the idle / occupied status corresponding to the data channel when a data channel is selected or released, where 1 indicates occupied and 0 indicates idle.

[0325] The vector first 1 search module is used to determine the path selection vector according to the idle / occupied status of each candidate data path, the location information of the source routing node and the destination routing node, and to search for the first valid element in the path selection vector, that is, to determine the data path corresponding to the first valid element as a valid data path.

[0326] The routing direction management module is used to combine the effective data path output by the vector first 1 search module, that is, the output routing direction, to route the data packet to the destination routing node / output node.

[0327] The following describes the execution process of the computer network communication system by combining three routing scenarios of data packets in the computer network topology.

[0328] Scenario 1: The source routing node and the destination routing node of the data packet are both outer nodes.

[0329] Exemplarily, a data packet is sent from source routing node 0_100 to destination routing node 0_011, and the data packet is only routed in the outer structure. Figure 8 FIG. 1 is a schematic diagram of determining a routing subvector according to an embodiment of the present invention. Figure 8As shown in FIG. 1 , the lower 3 bits of the current node routing vector are XORed with the lower 3 bits of the target node routing vector, that is, the lower 3 bits of the source routing number of the source routing node are XORed with the lower 3 bits of the destination routing number of the destination routing node, and the XOR result is 111, indicating that the data packet needs to go through 3 steps to reach the destination routing node. The XOR result is split into 3 routing sub-vectors, that is, 3 path routing vectors, which are 100, 010 and 001.

[0330] Fig. 9 FIG. 1 is a schematic diagram of determining the value corresponding to the lower 3 bits of an intermediate routing node according to an embodiment of the present invention. Fig. 9 As shown in the figure, the lower 3 bits of the source routing number are XORed with the three routing sub-vectors, and the XOR results are 000, 110, and 101. Among them, 101 is an illegal vector and is removed, and the valid vectors 000 and 110 are retained. Among them, the valid vector corresponds to the value corresponding to the lower 3 bits of the intermediate routing node. These two valid vectors indicate that the output direction of the current source routing node, that is, the valid output routing path, is source routing node 0_100~routing node 0_000 or source routing node 0_100~0_110.

[0331] Fig.10 FIG. 1 is a schematic diagram of an output routing path occupancy state according to an embodiment of the present invention. Fig.10 As shown in the left half, the table consists of all output path states corresponding to the current source routing node, where the occupancy state is 0 for idle and 1 for occupied. Fig.10 From the left part, it can be seen that the two routing paths, routing node 0_100 to routing node 0_000 and routing node 0_100 to routing node 0_110, are both in an idle state.

[0332] Fig.11 Schematic diagram of a path selection vector according to an embodiment of the present invention. Fig.11 As shown, the path selection vector of the current node, i.e., the current source routing node, is 011, where 1 indicates that the current path is idle and can be applied for, and 0 indicates that the current path is occupied and cannot be applied for. It should be noted that all output paths of the current source routing node are arranged in ascending order according to the values ​​of the lower 3 bits of the output node, and the values ​​corresponding to the path selection vector from low to high correspond to the arrangement of the output paths. The path selection vectors of all output paths of the current source routing node except the valid output routing path are marked as 0. For the valid output routing path, the value of the corresponding path selection vector is determined according to its occupancy state.

[0333] Through the vector first 1 search module, the routing path is selected: source routing node 0_100~outer node 0_000. It can be understood that, corresponding to the aforementioned situation where the number of intermediate routing nodes in the idle state is not less than two, the intermediate routing node with the smallest routing number among the intermediate routing nodes in the idle state is obtained.

[0334] like Fig.10 As shown in the right half, after the routing path is selected, the occupation state of the routing path is updated to occupied, ie occupied. Fig.12 FIG. 1 is a schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention. Fig.12 As shown, after the path selection from the source routing node 0_100 to the outer node 0_000 is determined, the data packet is sent from the source routing node to the outer node 0_000.

[0335] Fig.13 FIG. 1 is a schematic diagram of updating the path occupancy status according to an embodiment of the present invention. Fig.13 As shown, when the tail data of the data packet arrives at the outer node 0_000, it means that the routing path from the source routing node 0_100 to the outer node 0_000 is released, and the occupancy status corresponding to the routing path is updated, that is, the occupancy status flag corresponding to the path is cleared to 0, indicating that the routing path is idle, and subsequent data packets can re-apply for the routing path, i.e., the data path, for data transmission.

[0336] When the data packet arrives at the outer node 0_000, the current node is the outer node 0_000, the target node is the destination routing node 0_011, and the data packet is only routed in the outer structure. Fig.14 FIG. 1 is a schematic diagram of determining a routing subvector according to an embodiment of the present invention. Fig.14 As shown, the lower 3 bits of the current node routing vector are XORed with the lower 3 bits of the target node routing vector, that is, the lower 3 bits of the outer node 0_000 are XORed with the lower 3 bits of the destination routing node 0_011, and the XOR result is 011, indicating that the data packet needs to go through 2 steps to reach the destination routing node. The XOR result is split into 2 routing sub-vectors, namely 010 and 001.

[0337] Fig.15 FIG. 1 is a schematic diagram of determining the value corresponding to the lower 3 bits of an intermediate routing node according to an embodiment of the present invention. Fig.15As shown in the figure, the lower 3 bits of the outer node 0_000 are XORed with the two routing sub-vectors, and the XOR results are 010 and 001. Among them, 010 is an illegal vector and is removed, and the valid vector 001 is retained. Among them, the valid vector corresponds to the value corresponding to the lower 3 bits of the intermediate routing node. This valid vector indicates that the output direction of the current outer node 0_000, that is, the output routing path, is the outer node 0_000~routing node 0_001.

[0338] Fig.16 FIG. 1 is a schematic diagram of an output routing path occupancy state according to an embodiment of the present invention. Fig.16 As shown in the left half, the table consists of all the output path states corresponding to the current outer node 0_000, where the occupancy state is 0 for idle and 1 for occupied. Fig.16 From the left part, we can see that routing nodes 0_000 to 0_001 are in idle state.

[0339] Fig.17 Schematic diagram of a path selection vector according to an embodiment of the present invention. Fig.17 As shown, the path selection vector of the current node, that is, the current outer node 0_000, is 100, where 1 indicates that the current path is idle and can be applied for, and 0 indicates that the current path is occupied and cannot be applied for.

[0340] Through the vector first 1 search module, select the routing path: outer node 0_000~outer node 0_001.

[0341] like Fig.16 As shown in the right half, after the routing path is selected, the occupation state of the routing path is updated to occupied, ie occupied. Fig.18 FIG. 1 is a schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention. Fig.18 As shown, after the path selection from outer node 0_000 to outer node 0_001 is determined, the data packet is sent from outer node 0_000 to outer node 0_001.

[0342] Fig.19 FIG. 1 is a schematic diagram of updating the path occupancy status according to an embodiment of the present invention. Fig.19 As shown, when the tail data of the data packet arrives at the outer node 0_001, it means that the routing path from the outer node 0_000 to the outer node 0_001 is released, and the occupancy status corresponding to the routing path is updated, that is, the occupancy status flag corresponding to the path is cleared to 0, indicating that the routing path is idle, and subsequent data packets can re-apply for the routing path, i.e., the data path, for data transmission.

[0343] When the data packet arrives at the outer node 0_001, the current node is the outer node 0_001, the target node is the destination routing node 0_011, and the data packet is only routed in the outer structure. Fig. 20 FIG. 1 is a schematic diagram of determining a routing subvector according to an embodiment of the present invention. Fig. 20 As shown, the lower 3 bits of the current node routing vector are XORed with the lower 3 bits of the target node routing vector, that is, the lower 3 bits of the outer node 0_001 are XORed with the lower 3 bits of the destination routing node 0_011, and the XOR result is 010, indicating that the data packet needs to go through 1 step to reach the destination routing node. The XOR result is split into 1 routing sub-vector, that is, the 1-hop path routing vector, which is 010.

[0344] Fig.21 FIG. 1 is a schematic diagram of determining the value corresponding to the lower 3 bits of an intermediate routing node according to an embodiment of the present invention. Fig.21 As shown in the figure, the lower 3 bits of the outer node 0_001 are XORed with a routing sub-vector, and the XOR results are 011, which are valid vectors. Among them, the valid vector corresponds to the value corresponding to the lower 3 bits of the middle routing node. This valid vector indicates that the output direction of the current outer node 0_001, that is, the output routing path, is from the outer node 0_001 to the routing node 0_011.

[0345] Fig. 22 FIG. 1 is a schematic diagram of an output routing path occupancy state according to an embodiment of the present invention. Fig. 22 As shown in the left half, the table consists of all the output path states corresponding to the current outer node 0_001, where the occupancy state is 0 for idle and 1 for occupied. Fig. 22 As can be seen from the left half, routing nodes 0_001 to 0_011 are in an idle state.

[0346] Fig.23 Schematic diagram of a path selection vector according to an embodiment of the present invention. Fig.23 As shown, the path selection vector of the current node, that is, the current outer node 0_001, is 100, where 1 indicates that the current path is idle and can be applied for, and 0 indicates that the current path is occupied and cannot be applied for.

[0347] Through the vector first 1 search module, the routing path is selected: outer node 0_001~outer node 0_011.

[0348] like Fig. 22 As shown in the right half, after the routing path is selected, the occupation state of the routing path is updated to occupied, ie occupied. Fig.24 FIG. 1 is a schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention. Fig.24As shown, after the path selection of the outer node 0_001 to the outer node 0_011 is determined, the data packet is sent from the outer node 0_001 to the outer node 0_011.

[0349] Fig.25 FIG. 1 is a schematic diagram of updating the path occupancy status according to an embodiment of the present invention. Fig.25 As shown, when the tail data of the data packet reaches the outer node 0_011, it means that the routing path from the outer node 0_001 to the outer node 0_011 is released, and the occupation status corresponding to the routing path is updated, that is, the occupation status flag corresponding to the path is cleared to 0, indicating that the routing path is idle, and subsequent data packets can re-apply for the routing path, i.e., the data path, for data transmission. At this point, the routing of the data packet from the source routing node 0_100 to the destination routing node 0_011 is completed.

[0350] Scenario 2: The source routing node of the data packet is an inner node, and the destination routing node is an outer node.

[0351] Exemplarily, a data packet is sent from a source routing node 1_100 to a destination routing node 0_001. The data packet is first routed to an inner node connected to the destination routing node through an inner structure, that is, the data packet is routed from the source routing node 1_100 to the inner node 1_001 through the inner structure, and then routed to the destination routing node 0_001 through the inner node 1_001.

[0352] Fig.26 FIG. 1 is a schematic diagram of a data packet routing determination phase according to an embodiment of the present invention. Fig.26 As shown, the process of routing the data packet from the current node, i.e., the source routing node 1_100, to the inner node 1_001 through the inner structure is determined as the first stage, and the process of routing the data packet from the inner node 1_001 to the destination routing node 0_001 is determined as the second stage.

[0353] For the first stage, that is, the routing of the data packet from the source routing node 1_100 to the inner node 1_001. Fig. 27 FIG. 1 is a schematic diagram of determining an intermediate routing node according to an embodiment of the present invention. Fig. 27As shown, the lower 3 bits of the source routing node 1_100 and the lower 3 bits of the inner node 1_001 are XORed, and the XOR result is 101, indicating that the data packet needs to go through 2 steps to reach the inner node 1_001. It is determined that the intermediate routing node can be one of the two inner nodes adjacent to the source routing node or the inner node of the inner hexagon that has a diagonal relationship with the source routing node, that is, the output direction of the source routing node 1_100, that is, the effective output routing path is source routing node 1_100~inner node 1_000 or source routing node 1_100~inner node 1_011 or source routing node 1_100~inner node 1_110.

[0354] Fig.28 FIG. 1 is a schematic diagram of an output routing path occupancy state according to an embodiment of the present invention. Fig.28 As shown in the left half, the table consists of all output path states corresponding to the current source routing node, where the occupancy state is 0 for idle and 1 for occupied. Fig.28 As can be seen from the left half, the occupancy status of routing nodes 1_100 to routing nodes 1_000 is occupied, and the occupancy status of routing nodes 1_100 to routing nodes 1_011 and routing nodes 1_100 to routing nodes 1_110 is idle.

[0355] Fig.29 Schematic diagram of a path selection vector according to an embodiment of the present invention. Fig.29 As shown, the path selection vector of the current node, ie, the current source routing node, is 1100.

[0356] Through the vector first 1 search module, the routing path is selected: source routing node 1_100~inner node 1_011.

[0357] like Fig.28 As shown in the right half, after the routing path is selected, the occupation state of the routing path is updated to occupied, ie occupied. Fig.30 FIG. 1 is a schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention. Fig.30 As shown, after the path selection from the source routing node 1_100 to the inner node 1_011 is determined, the data packet is sent from the source routing node to the inner node 1_011.

[0358] Fig.31 FIG. 1 is a schematic diagram of updating the path occupancy status according to an embodiment of the present invention. Fig.31As shown, when the tail data of the data packet reaches the inner node 1_011, it means that the routing path from the source routing node 1_100 to the inner node 1_011 is released, and the occupancy status corresponding to the routing path is updated, that is, the occupancy status flag corresponding to the path is cleared to 0, indicating that the routing path is idle, and subsequent data packets can re-apply for the routing path, i.e., the data path, for data transmission.

[0359] When the data packet arrives at the inner node 1_011, the current node is the inner node 1_011, the destination inner node of the first stage is the inner node 1_001, and the data packet is only routed in the inner structure. Fig.32 FIG. 1 is a schematic diagram of determining an intermediate routing node according to an embodiment of the present invention. Fig.32 As shown, the lower 3 bits of the inner node 1_011 and the lower 3 bits of the inner node 1_001 are XORed, and the XOR result is 010, indicating that the data packet needs to go through 1 step to reach the inner node 1_001, so the intermediate routing node is determined to be the inner node 1_001.

[0360] The routing sub-vector corresponding to the XOR result is 010. Fig.33 FIG. 1 is a schematic diagram of determining the value corresponding to the lower 3 bits of an intermediate routing node according to an embodiment of the present invention. Fig.33 As shown, the lower 3 bits of the inner node 1_011 are XORed with the routing sub-vector 010, and the XOR result is 001, which is a valid vector. The valid vector indicates that the output direction of the inner node 1_011, that is, the valid output routing path, is the inner node 1_011 to the inner node 1_001.

[0361] Fig.34 FIG. 1 is a schematic diagram of an output routing path occupancy state according to an embodiment of the present invention. Fig.34 As shown in the left half, the table consists of all output path states corresponding to the inner node 1_011, where the occupancy state is 0 for idle and 1 for occupied. Fig.34 From the left part, it can be seen that the routing paths from routing node 1_011 to routing node 1_001 are all in an idle state.

[0362] Fig.35 Schematic diagram of a path selection vector according to an embodiment of the present invention. Fig.35 As shown, the path selection vector of the current node, i.e., the inner node 1_011, is 1000.

[0363] Through the vector first 1 search module, the routing path is selected: inner node 1_011~inner node 1_001.

[0364] like Fig.34 As shown in the right half, after the routing path is selected, the occupation state of the routing path is updated to occupied, ie occupied. Fig.36 FIG. 1 is a schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention. Fig.36 As shown, after the path selection from inner node 1_011 to inner node 1_001 is determined, the data packet is sent from inner node 1_011 to inner node 1_001.

[0365] Fig.37 FIG. 1 is a schematic diagram of updating the path occupancy status according to an embodiment of the present invention. Fig.37 As shown, when the tail data of the data packet reaches the inner node 1_001, it means that the routing path from the inner node 1_011 to the inner node 1_001 is released, and the occupation status corresponding to the routing path is updated, that is, the occupation status flag corresponding to the path is cleared to 0, indicating that the routing path is idle, and subsequent data packets can re-apply for the routing path, i.e., the data path, for data transmission. At this time, the routing of the first phase of the data packet corresponding to scenario 2 from the source routing node 1_100 to the inner node 1_001 has been completed.

[0366] For the second stage, the data packet is routed from the inner node 1_001 to the destination routing node 0_001. When the data packet arrives at the inner node 1_001, Fig.38 is a schematic diagram of determining an output routing path according to an embodiment of the present invention, such as Fig.38 As shown, the lower 3 bits of the inner node 1_001 and the lower 3 bits of the destination routing node 0_001 are XORed, and the XOR result is 000, and the highest bit of the inner node 1_001 is not equal to the highest bit of the destination routing node 0_001, indicating that the data packet should be routed from the current inner node to the outer node connected to it, that is, the output routing path is inner node 1_001~destination routing node 0_001.

[0367] Fig.39 FIG. 1 is a schematic diagram of an output routing path occupancy state according to an embodiment of the present invention. Fig.39 As shown in the left half, the table consists of all output path states corresponding to the inner node 1_001, where the occupancy state is 0 for idle and 1 for occupied. Fig.39 As can be seen from the left half, routing node 1_001 to routing node 0_001 are in idle state.

[0368] Fig.40 Schematic diagram of a path selection vector according to an embodiment of the present invention. Fig.40 As shown, the path selection vector of the current node, i.e., the inner node 1_001, is 0001.

[0369] Through the vector first 1 search module, the routing path is selected: inner node 1_001~destination routing node 0_001.

[0370] like Fig.39 As shown in the right half, after the routing path is selected, the occupation state of the routing path is updated to occupied, ie occupied. Fig.41 FIG. 1 is a schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention. Fig.41 As shown, after the path selection from the inner node 1_001 to the destination routing node 0_001 is determined, the data packet is sent from the inner node 1_001 to the destination routing node 0_001.

[0371] Fig.42 FIG. 1 is a schematic diagram of updating the path occupancy status according to an embodiment of the present invention. Fig.42 As shown in the figure, when the tail data of the data packet reaches the destination routing node 0_001, it means that the routing path from the inner node 1_001 to the destination routing node 0_001 is released, and the occupation status corresponding to the routing path is updated, that is, the occupation status flag corresponding to the path is cleared to 0, indicating that the routing path is idle, and subsequent data packets can re-apply for the routing path, i.e., the data path, for data transmission. At this point, the routing of the data packet from the source routing node 1_100 to the destination routing node 0_001 is completed.

[0372] Scenario 3: The source routing node and the destination routing node of the data packet are both inner nodes.

[0373] Exemplarily, a data packet is sent from source routing node 1_100 to destination routing node 1_011. The data packet is routed only in the inner structure. Fig.43 FIG. 1 is a schematic diagram of determining an output routing path according to an embodiment of the present invention. Fig.43 As shown in the figure, the lower 3 bits of the current node routing vector are XORed with the lower 3 bits of the target node routing vector, that is, the lower 3 bits of the source routing number of the source routing node are XORed with the lower 3 bits of the destination routing number of the destination routing node, and the XOR result is 111, indicating that the data packet needs to go through 1 step to reach the destination routing node. The XOR result is 3 1s, and the output routing path can be directly determined through the inner hexagonal topology structure as the source routing node 1_100 to the destination routing node 1_011, which is a diagonal path with the source routing node.

[0374] Fig.44 FIG. 1 is a schematic diagram of an output routing path occupancy state according to an embodiment of the present invention. Fig.44 As shown in the left half, the table consists of all output path states corresponding to the current source routing node, where the occupancy state is 0 for idle and 1 for occupied. Fig.44 As can be seen from the left half, the occupancy status of routing nodes 1_100 to 1_011 is idle.

[0375] Fig.45 Schematic diagram of a path selection vector according to an embodiment of the present invention. Fig.45 As shown, the path selection vector of the current node, ie, the current source routing node, is 0100.

[0376] Through the vector first 1 search module, the routing path is selected: source routing node 1_100 ~ destination routing node 1_011.

[0377] like Fig.44 As shown in the right half, after the routing path is selected, the occupation state of the routing path is updated to occupied, ie occupied. Fig.46 FIG. 1 is a schematic diagram of performing data packet routing according to a selected routing path according to an embodiment of the present invention. Fig.46 As shown, after the path selection from the source routing node 1_100 to the destination routing node 1_011 is determined, the data packet is sent from the source routing node to the destination routing node 1_011.

[0378] Fig.47 FIG. 1 is a schematic diagram of updating the path occupancy status according to an embodiment of the present invention. Fig.47 As shown, when the tail data of the data packet reaches the destination routing node 1_011, it means that the routing path from the source routing node 1_100 to the destination routing node 1_011 is released, and the occupancy status corresponding to the routing path is updated, that is, the occupancy status flag corresponding to the path is cleared to 0, indicating that the routing path is idle, and subsequent data packets can re-apply for the routing path, i.e., the data path, for data transmission. At this point, the routing of the data packet from the source routing node 1_100 to the destination routing node 1_011 is completed.

[0379] The computer network topology structure provided by this embodiment is a double-layer polygonal network topology structure, which can eliminate the uniqueness of the shortest path and alleviate the congestion inside the routing node. The computer network communication method provided by this embodiment can realize the selection of the shortest path between routing nodes in different scenarios, and effectively avoid path conflict and congestion between routing nodes. The computer network communication system provided by this embodiment determines the effective routing path of the current node according to the input node and the target node number, and forms a path selection vector according to the output routing path state table of the input node, and finally determines the output routing path of the current input node in combination with the vector first 1 search module, thereby improving the data transmission efficiency.

[0380] The embodiment of the present invention also provides a computer device, see Fig.48 , Fig.48 is a schematic diagram of the structure of a computer device provided by an optional embodiment of the present invention, such as Fig.48As shown, the computer device includes: one or more processors 4801, memory 4802, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Each component utilizes different buses to communicate with each other, and can be installed on a common mainboard or installed in other ways as required. The processor can process the instructions executed in the computer device, including instructions stored in the memory 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 part of the necessary operation (for example, as a server array, a group of blade servers, or a multi-processor system). Fig.48 A processor 4801 is taken as an example.

[0381] Processor 4801 may be a central processing unit, a network processor or a combination thereof. Processor 4801 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 logic gate array, a general purpose array logic or any combination thereof.

[0382] The memory 4802 stores instructions executable by at least one processor 4801 so as to enable at least one processor 4801 to implement the method shown in the above embodiment.

[0383] The memory 4802 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 4802 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 4802 may optionally include a memory remotely arranged relative to the processor 4801, 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.

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

[0385] The computer device also includes a communication interface 4803, which is used for the computer device to communicate with other devices or communication networks.

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

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

[0388] 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 computer network communication method, characterized in that: The method comprises: Assign a routing number to each routing node; According to the location information represented by the routing number of each routing node, the inner layer nodes and the outer layer nodes are connected within the layer to obtain the inner layer network topology structure and the outer layer network topology structure; Connecting the inner network topology structure and the outer network topology structure to obtain a computer network topology structure in which the shortest path between routing nodes is not unique; Obtaining a routing request of the computer network topology structure to determine a source routing node and a destination routing node corresponding to the routing request, and determining a target routing path in the computer network topology structure based on a source routing number corresponding to the source routing node and a destination routing number corresponding to the destination routing node, so as to send a data packet sent by the source routing node to the destination routing node through the target routing path; The method of determining a target routing path in the computer network topology structure based on a source routing number corresponding to the source routing node and a destination routing number corresponding to the destination routing node, so as to send a data packet sent by the source routing node to the destination routing node through the target routing path, comprises: In the case where the value of the highest bit of the source routing number indicates that the source routing node is an outer node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an outer node, performing an XOR operation on values ​​corresponding to bits other than the highest bit in the source routing number and values ​​corresponding to bits other than the highest bit in the destination routing number to obtain a first XOR result; Obtaining the number of third preset values ​​in the first XOR result; Determining the number of routing steps required for the source routing node to reach the destination routing node based on the number of the third preset value; Obtaining a routing sub-vector corresponding to each third preset value in the first XOR result; XORing the routing sub-vector with the values ​​corresponding to the other bits except the highest bit in the source routing number to obtain the values ​​corresponding to the other bits except the highest bit in the intermediate routing number corresponding to the intermediate routing node, and using the second preset value as the value corresponding to the highest bit in the intermediate routing number corresponding to the intermediate routing node to determine the intermediate routing number corresponding to the intermediate routing node; Based on the number of routing steps, determining whether the intermediate routing nodes include a destination routing node; In the case where the intermediate routing node does not include the destination routing node, the data packet is sent from the source routing node to the intermediate routing node, and the intermediate routing node is used as the source routing node, and the step of performing XOR operation on the values ​​corresponding to the bits other than the highest bit in the source routing number and the values ​​corresponding to the bits other than the highest bit in the destination routing number to obtain a first XOR result is returned until the intermediate routing node includes the destination routing node; In the case where the intermediate routing node includes a destination routing node, sending the data packet from the source routing node to the destination routing node; The target routing path includes a plurality of intermediate routing nodes.

2. The method according to claim 1, characterized in that The step of allocating a routing number to each routing node includes: Obtain the first numerical sequence in the high position in the predefined numerical sequence; Using the first numerical sequence as the values ​​corresponding to the other bits except the highest bit in the routing numbers of the inner node and the outer node; Using the first preset value as the value corresponding to the highest bit in the routing number of the inner node, and using the second preset value as the value corresponding to the highest bit in the routing number of the outer node, so as to generate the routing number corresponding to the inner node and the routing number corresponding to the outer node; The predefined numerical sequence is circularly shifted to the left, and the step of obtaining the first numerical sequence at a high position in the predefined numerical sequence is returned to execute until routing numbers corresponding to a preset number of inner nodes and routing numbers corresponding to a preset number of outer nodes are generated.

3. The method according to claim 1, characterized in that Before determining whether the intermediate routing nodes include a destination routing node based on the number of routing steps, the method further includes: When there are no continuous first preset values ​​or no continuous second preset values ​​in the values ​​corresponding to the bits other than the highest bit in the intermediate routing number of the intermediate routing node, the intermediate routing node is determined to be an illegal intermediate routing node and the illegal intermediate routing node is eliminated.

4. The method according to claim 1, characterized in that: Before determining whether the intermediate routing nodes include a destination routing node based on the number of routing steps, the method further includes: When the number of the intermediate routing nodes is not less than two, acquiring the occupation status of the intermediate routing nodes; The intermediate routing nodes whose occupation status is occupied are eliminated.

5. The method according to claim 1, characterized in that: Before determining whether the intermediate routing nodes include a destination routing node based on the number of routing steps, the method further includes: When the number of intermediate routing nodes in the idle state is not less than two, obtaining the intermediate routing node with the smallest routing number among the intermediate routing nodes in the idle state; Eliminate the intermediate routing nodes whose occupation status is idle except the intermediate routing node with the smallest routing number.

6. The method according to claim 1, characterized in that The method of determining a target routing path in the computer network topology structure based on a source routing number corresponding to the source routing node and a destination routing number corresponding to the destination routing node, so as to send a data packet sent by the source routing node to the destination routing node through the target routing path, comprises: In the case where the value of the highest bit of the source routing number indicates that the source routing node is an inner node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an inner node, performing an XOR operation on values ​​corresponding to bits other than the highest bit in the source routing number and values ​​corresponding to bits other than the highest bit in the destination routing number to obtain a second XOR result; Obtaining the number of third preset values ​​in the second XOR result; Based on the number of third preset values ​​in the second XOR result, the number of routing steps required for the source routing node to reach the destination routing node is determined, and based on the number of routing steps, the target routing path is determined.

7. The method according to claim 6, characterized in that The determining, based on the number of third preset values ​​in the second XOR result, the number of routing steps required for the source routing node to reach the destination routing node, and determining the target routing path based on the number of routing steps, comprises: When the number of the third preset values ​​in the second XOR result is one or three, determining that the number of routing steps required for the source routing node to reach the destination routing node is one step; In the case where the number of routing steps required for the source routing node to reach the destination routing node is one step, the target routing path is determined to directly send the data packet sent by the source routing node to the destination routing node.

8. The method according to claim 6, characterized in that The determining, based on the number of third preset values ​​in the second XOR result, the number of routing steps required for the source routing node to reach the destination routing node, and determining the target routing path based on the number of routing steps, comprises: When the number of the third preset values ​​in the second XOR result is two, determining that the number of routing steps required for the source routing node to reach the destination routing node is two; In a case where the number of routing steps required from the source routing node to the destination routing node is two steps, determining two adjacent routing nodes and one relative routing node of the source routing node as intermediate routing nodes; Eliminate the intermediate routing nodes whose occupation status is occupied, and obtain the remaining intermediate routing nodes; In the case where the number of the remaining intermediate routing nodes is one, the data packet is sent from the source routing node to the remaining intermediate routing node, and the remaining intermediate routing node is used as the source routing node, and the step of performing XOR operation on the values ​​corresponding to the bits other than the highest bit in the source routing number and the values ​​corresponding to the bits other than the highest bit in the destination routing number to obtain a second XOR result is returned; The target routing path includes a number of the remaining intermediate routing nodes.

9. The method according to claim 8, characterized in that The method further comprises: In the case that the number of the remaining intermediate routing nodes is greater than one, the remaining intermediate routing nodes except the remaining intermediate routing node with the smallest routing number are eliminated, and the remaining intermediate routing nodes are updated.

10. The method according to claim 1, characterized in that The method of determining a target routing path in the computer network topology structure based on a source routing number corresponding to the source routing node and a destination routing number corresponding to the destination routing node, so as to send a data packet sent by the source routing node to the destination routing node through the target routing path, comprises: When the value of the highest bit of the source routing number indicates that the source routing node is an outer node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an inner node, sending the data packet sent by the source routing node to a first target inner node connected to the source routing node; Determine a first routing path for sending the data packet from the first target inner node to the destination routing node based on a first target routing number corresponding to the first target inner node and a destination routing number corresponding to the destination routing node; Based on the first routing path, sending the data packet from the first target inner node to the destination routing node; The target routing path includes the first target inner node and the first routing path.

11. The method according to claim 1, characterized in that: The method of determining a target routing path in the computer network topology structure based on a source routing number corresponding to the source routing node and a destination routing number corresponding to the destination routing node, so as to send a data packet sent by the source routing node to the destination routing node through the target routing path, comprises: When the value of the highest bit of the source routing number indicates that the source routing node is an inner node, and the value of the highest bit of the destination routing number indicates that the destination routing node is an outer node, obtaining a second target inner node connected to the destination routing node; Determine a second routing path for sending the data packet from the source routing node to the second target inner node based on the source routing number corresponding to the source routing node and the second target routing number corresponding to the second target inner node; Based on the second routing path, sending the data packet from the source routing node to the second target inner node; Based on the destination routing number corresponding to the destination routing node, sending the data packet from the second target inner node to the destination routing node; The target routing path includes the second target inner node and the second routing path.

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 computer network communication method according to any one of claims 1 to 11 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 computer network communication method according to any one of claims 1 to 11.

14. 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 computer network communication method according to any one of claims 1 to 11.

Citation Information

Patent Citations

  • Wireless Mesh network congestion control method with optimized frequency band routing

    CN115134928A

  • Topological structure and routing method of network-on-chip

    CN116886591A