A method for constructing, path determination and switch of a multi-layer octagonal network structure

By constructing a multi-layered octagonal network structure, the problems of transmission delay and low efficiency caused by multiple arbitration levels in the IO protocol controller are solved, achieving more efficient data transmission and simplified layout and routing operations.

CN120880962BActive Publication Date: 2026-01-23SHANDONG YUNHAI GUOCHUANG CLOUD COMPUTING EQUIP IND INNOVATION CENT CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511405502.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-29
Publication Date
2026-01-23
Estimated Expiration
2045-09-29

AI Technical Summary

Technical Problem

Existing Internet protocols have a large number of arbitration stages in their network structure, which leads to reduced transmission latency and efficiency, complex layout and wiring, and difficulty in implementing routing algorithms.

Method used

A multi-layer octagonal network structure is adopted. The number of port node groups is determined by the number of routing nodes and port nodes based on the single-layer octagonal network structure. A ring structure is constructed, and node labels and links are allocated within the ring structure to determine path rules, reduce the number of arbitration levels, and simplify layout and cabling.

Benefits of technology

It reduces network latency, improves transmission rate and path routing efficiency, simplifies layout and wiring operations, reduces path sharing contention, and optimizes the network performance of the IO protocol controller.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120880962B_ABST
    Figure CN120880962B_ABST
Patent Text Reader

Abstract

The application discloses a kind of construction of multilayer octagonal network structure, path determination method and switch, it is related to communication technical field.In each routing node of general octagonal network structure, annular mode is used, corresponding annular structure and annular routing node under each annular structure are established, so that each port node can be tiled in each annular routing node, for each annular structure and the annular routing node in each annular structure is allocated corresponding node mark, by the pre-setting of node mark, to facilitate subsequent routing process easy calculation, improve path calculation efficiency.According to the critical link position and cross-link position of the annular routing node set according to routing request distribution double link, to carry out double link mark, according to multilink setting, distinguish the path of different link, according to each layer annular routing node cross-link connection, shorten routing path length, reduce network delay, also facilitate layout wiring.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of communication technology, and in particular to a method for constructing a multi-layer octagonal network structure, determining paths, and a switch. Background Technology

[0002] The interconnect network is a core component of the Input / Output (IO) protocol controller, responsible for data exchange between ports, determining the controller's system bandwidth, and significantly impacting network latency. As the number of routing nodes in the interconnect increases, the network diameter also increases. Due to the diverse shapes of interconnect networks, in scenarios like IO protocol controllers, ports need to be evenly distributed around the controller. For example, in a four-dimensional cube network structure, multiple routing nodes sharing a common route result in a high number of arbitration levels (specifically three), leading to significant network data transmission latency and consequently affecting network efficiency. Furthermore, subsequent layout and wiring become more complex, and the corresponding routing algorithms are also more intricate, making the hardware implementation of the IO protocol controller quite challenging.

[0003] Therefore, how to reduce the number of arbitration levels in the network structure to reduce transmission latency and improve transmission efficiency while simplifying layout and cabling is a problem that urgently needs to be solved by those skilled in the art. Summary of the Invention

[0004] The purpose of this invention is to provide a method for constructing and determining paths in a multi-layer octagonal network structure, as well as a switch, to solve the problems of transmission delay and reduced transmission efficiency caused by a large number of arbitration levels in the network structure, and the complex layout and wiring.

[0005] To solve the above-mentioned technical problems, the present invention provides a method for constructing a multi-layer octagonal network structure, comprising:

[0006] The number of port node groups under each routing node in the octagonal network structure is determined based on the number of routing nodes and port nodes in a single-layer octagonal network structure.

[0007] Construct a corresponding ring structure based on the number of port node groups under each routing node, and determine the corresponding ring routing node within each ring structure based on the number of port node groups; wherein, one ring routing node connects to one port node;

[0008] Assign corresponding node labels to each ring structure and the ring routing nodes within each ring structure, and allocate dual links between each ring routing node within each ring structure according to the adjacent link position and cross link position of the ring routing node corresponding to the routing request; wherein, the node labels of ring routing nodes in the same position within each ring structure are the same.

[0009] Based on the source routing node, destination routing node, and tracing paths of each ring routing node in the routing request, multi-link labels are determined between ring routing nodes at the same location within each ring structure for connection; and cross-link connections are made based on the ring routing nodes at each layer to obtain a multi-layer octagonal network structure.

[0010] On the one hand, the number of port node groups under each routing node in the octagonal network structure is determined based on the number of routing nodes and port nodes in a single-layer octagonal network structure, including:

[0011] The number of port nodes is divided by the number of routing nodes.

[0012] If the division is exact, the number of port node packets under each routing node is determined based on the quotient of the division. If the division is not exact, the number of port node packets under each routing node is determined based on the quotient and remainder of the division.

[0013] On the other hand, assigning corresponding node tags to each ring structure and the ring routing nodes within each ring structure, including:

[0014] The target number of bits for binary data is determined based on the first quantity corresponding to the ring structure.

[0015] Each first binary data is determined based on the binary data of the target number of bits;

[0016] The first encoding information corresponding to each ring structure is determined based on each of the first binary data.

[0017] The first data is set according to the number of groups of each port node; the first data is the same for port nodes at the same position under each ring structure.

[0018] On the other hand, determining each first binary data based on the binary data of the target number of bits includes:

[0019] The first initial binary data is determined based on the binary data of the target number of bits, wherein the first first preset number of bits of the first initial binary data is zero, and the remaining second preset number of bits is 1;

[0020] Starting from the first initial binary data, along the counterclockwise direction of the single-layer octagonal network structure, the first initial binary data corresponding to the current ring structure is shifted one bit to the right compared to the first initial binary data corresponding to the previous ring structure to obtain the corresponding first binary data.

[0021] Correspondingly, the first encoding information is determined based on each of the first binary data, including:

[0022] The high four bits of each of the first binary data are extracted and used as the first encoding information corresponding to each of the ring structures.

[0023] On the other hand, dual links are allocated between each ring routing node within each ring structure based on the adjacent link position and cross link position of the ring routing node corresponding to the routing request, including:

[0024] Assign dual links between adjacent ring routing nodes within a single ring structure;

[0025] Obtain the positional relationship of the first ring structure formed by the ring structures of the first ring routing node and the second ring routing node corresponding to the routing request;

[0026] The link types corresponding to adjacent link positions and cross link positions are determined based on the positional relationship of the first ring structure and the first data relationship corresponding to the first ring routing node and the second ring routing node, respectively.

[0027] The dual links are labeled according to the link types corresponding to the adjacent link positions and cross link positions to obtain dual link labels.

[0028] On the other hand, based on the source routing node, destination routing node, and tracing paths of each ring routing node in the routing request, the multi-link markers between ring routing nodes at the same location within each ring structure are determined, including:

[0029] Determine the source path direction and destination path direction based on the tracking path;

[0030] Based on the ring routing nodes at the same position within each ring structure, adjacent ring routing nodes at the same position in adjacent ring structures are connected by adjacent edge links; wherein, the number of adjacent edge links is the number of ring routing nodes within a single ring structure plus 1;

[0031] The link corresponding to the source routing node in the direction of the source path is taken as the source path adjacent link;

[0032] Within the link corresponding to the destination routing node in the destination path direction, the routing is divided according to the ring routing nodes in a single ring structure to obtain the same destination path adjacent links as the ring routing nodes in a single ring structure; wherein, the number of destination path adjacent links is the same as the number of ring routing nodes in a single ring structure.

[0033] To address the aforementioned technical problems, this invention also provides a path determination method based on a multi-layer octagonal network structure, comprising:

[0034] Retrieve the source and destination route nodes corresponding to the route request;

[0035] The node labels of the ring routing nodes corresponding to the source routing node and the destination routing node are obtained based on the multi-layer octagonal network structure; wherein, the multi-layer octagonal network structure is constructed by the steps of the multi-layer octagonal network structure construction method.

[0036] The positional relationship of the ring structure and the network structure layer relationship of each ring routing node are determined based on the node labels between any two ring routing nodes. Preset path rules are established based on the positional relationship of the ring structure, the network structure layer relationship of each ring routing node, dual-link labels, multi-link labels, cross-links, and path arbitration levels. The critical value of the path arbitration level is less than or equal to the number of routing nodes traversed by the network diameter minus 2.

[0037] The target path rule is determined based on the node tags of the source routing node and the destination routing node and the preset path rule, and the target path between the source routing node and the destination routing node is determined based on the target path rule.

[0038] On one hand, the node marker includes first encoded information corresponding to the ring structure to which the ring routing node belongs and first data corresponding to each ring routing node; determining the positional relationship of the ring structure based on the node markers between any two ring routing nodes includes:

[0039] If the first encoding information of the ring structure to which two ring routing nodes belong is the same, then the ring structure position relationship of the two ring routing nodes is determined to be the same ring structure position relationship.

[0040] If the first encoding information of the ring structures to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 1 bit or left by 7 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be that of adjacent ring structures.

[0041] If the first encoding information of the ring structure to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 2 bits or left by 6 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be non-adjacent and separated by one ring structure positional relationship.

[0042] If the first encoding information of the ring structure to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 3 bits or left by 5 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be non-adjacent and separated by two ring structure positions.

[0043] If the first encoding information of the ring structures to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 4 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be a relative ring structure positional relationship.

[0044] On the other hand, the network structure layer relationship of each ring routing node is determined based on the node labels between any two ring routing nodes, including:

[0045] If the first data corresponding to two ring routing nodes is the same, then the network structure layer relationship of the two ring routing nodes is determined to be the same network structure layer.

[0046] If the first data corresponding to two ring routing nodes are different, and the first data of the other ring routing node is obtained by adding or subtracting 1 from the first data of one ring routing node, then the network structure layer relationship between the two ring routing nodes is determined to be an adjacent layer network structure.

[0047] If the first data corresponding to two ring routing nodes are different, and neither adding 1 nor subtracting 1 from the first data of one ring routing node can obtain the first data of the other ring routing node, then the network structure layer relationship between the two ring routing nodes is determined to be a non-adjacent layer network structure.

[0048] On the other hand, preset path rules are established based on the positional relationships of the ring structure, the network structure layer relationships of each ring routing node, dual-link marking, multi-link marking, cross-links, and path arbitration levels, including:

[0049] When the positional relationship of the ring structure is the same as that of the ring structure, and the relationship of the network structure layers is that of adjacent layers, a first preset path rule is established based on the dual link mark and the shortest path; wherein, the dual link mark is obtained by performing link marking processing on the dual links according to the link types corresponding to the adjacent link positions and the cross link positions;

[0050] When the ring structure positional relationship is an adjacent ring structure positional relationship, or a non-adjacent ring structure positional relationship with a gap of one ring structure positional relationship, a second preset path rule is established based on the network structure layer relationship, dual link marking, multi link marking, and path arbitration level; wherein, the multi link marking is obtained by marking the adjacent links of the source path and the adjacent links of the destination path;

[0051] When the ring structure positions are not adjacent and are separated by two ring structure positions, a third preset path rule is established based on the network structure layer relationship, dual-link marking, multi-link marking, cross-link, and path arbitration level.

[0052] When the positional relationship of the ring structure is relative to that of the ring structure, a fourth preset path rule is established based on the network structure layer relationship, dual-link marking, cross-link, and path arbitration level.

[0053] On the other hand, a first preset path rule is established based on the dual-link label and the shortest path, including:

[0054] The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node.

[0055] The location of the adjacent link corresponding to the source ring routing node is used as the first target link for dual link marking;

[0056] The first preset path rule is established by using the link path of the first target link as the final path.

[0057] On the other hand, a second preset path rule is established based on network structure layer relationships, dual-link marking, multi-link marking, and path arbitration level, including:

[0058] The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node.

[0059] When the positional relationship of the ring structure is that of adjacent ring structures, a first sub-preset path rule is established based on the network structure layer relationship, the destination path adjacent link label corresponding to the dual link label and the multi-link label, and the path arbitration level.

[0060] When the positional relationship of the ring structure is non-adjacent and separated by one ring structure positional relationship, a second sub-preset path rule is established based on the network structure layer relationship, the destination path adjacent link mark and the source path adjacent link mark corresponding to the dual link mark and the multi-link mark, as well as the path arbitration level.

[0061] On the other hand, based on the network structure layer relationship, the destination path adjacent link labels corresponding to dual-link and multi-link labels, and the path arbitration level, the first sub-preset path rule is established, including:

[0062] The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node.

[0063] When the network structure layer relationship is the same layer network structure, the link path corresponding to the source path adjacent link marked by the destination path adjacent link is taken as the first path to establish the first sub-preset path rule; wherein, the path arbitration level corresponding to the first path is level one;

[0064] When the network structure layer relationship is an adjacent layer network structure, the ring routing node that belongs to the same layer network structure as the destination ring routing node and is located in the same ring structure as the source ring routing node is identified as the third ring routing node; the link path between the source ring routing node and the third ring routing node is identified as the second preset path, and the link path between the third ring routing node and the destination ring routing node is identified as the third preset path; in the second preset path, the link corresponding to the adjacent link position of the source ring routing node is identified as the first target link with dual link marking, and the link path of the first target link is identified as the second path; in the third preset path, the link path corresponding to the adjacent link marked by the adjacent link of the destination path is identified as the third path; the second path and the third path are identified as the final path to establish the first sub-preset path rule; wherein, the path arbitration level corresponding to the second path and the third path is one level.

[0065] When the network structure layer relationship is a non-adjacent layer network structure, the ring routing node that belongs to the same layer network structure as the destination ring routing node and is located in the same ring structure as the source ring routing node is identified as the fourth ring routing node; the link path between the source ring routing node and the fourth ring routing node is identified as the fourth preset path, and the link path between the fourth ring routing node and the destination ring routing node is identified as the fifth preset path; in the fourth preset path, the link corresponding to the adjacent link position of the source ring routing node is identified as the first target link with dual link marking, and the link path of each first target link is identified as the fourth path; in the fifth preset path, the link path corresponding to the adjacent link marked by the adjacent link of the destination path is identified as the fifth path; the fourth path and the fifth path are identified as the final path to establish the first sub-preset path rule; wherein, the path arbitration level corresponding to the fourth path is the number of ring routing nodes traversed minus 2; the number of the fourth preset paths is at least one preset path.

[0066] On the other hand, based on the network structure layer relationship, the destination path adjacent link markers and source path adjacent link markers corresponding to dual-link and multi-link markers, and the path arbitration level, a second sub-preset path rule is established, including:

[0067] The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node.

[0068] When the network structure layer relationship is the same layer network structure, the first interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong are determined according to the path arbitration mechanism; the link path between the source ring routing node and the fifth ring routing node corresponding to the same layer network structure under the first interval ring structure is taken as the sixth preset path, and the link path corresponding to the source path adjacent link mark in the sixth preset path is taken as the sixth path; the link path between the fifth ring routing node and the destination ring routing node is taken as the seventh preset path, and the link path corresponding to the destination path adjacent link mark in the seventh preset path is taken as the seventh path; the sixth path and the seventh path are taken as the final path to establish the second sub-preset path rule; wherein, the path arbitration level corresponding to the sixth path and the seventh path is 1 respectively;

[0069] When the network structure layer relationship is an adjacent layer network structure or a non-adjacent layer network structure, a sixth ring routing node in the same layer network structure as the destination ring routing node is determined within the ring structure to which the source ring routing node belongs. The link path between the source ring routing node and the sixth ring routing node is taken as the eighth preset path. In the eighth preset path, the link at the adjacent link position corresponding to the source ring routing node is taken as the first target link with dual link marking, and the link path of the first target link is taken as the eighth path. The second interval ring structure corresponding to the ring structure to which the sixth ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism. The link path between the sixth ring routing node and the seventh ring routing node corresponding to the same layer network structure under the second interval ring structure is determined. The path is designated as the ninth preset path, and the link path corresponding to the adjacent link mark of the source path is designated as the ninth path. The link path between the seventh ring routing node and the destination ring routing node is designated as the ninth preset path, and the link path corresponding to the adjacent link mark of the destination path is designated as the tenth path. The eighth path, the ninth path, and the tenth path are designated as the final path to establish a second sub-preset path rule. Wherein, when the network structure layer relationship is an adjacent layer network structure, the path arbitration level corresponding to the eighth path, the ninth path, and the tenth path is 1. When the network structure layer relationship is a non-adjacent layer network structure, the number of the eighth preset path is at least one preset path, and the path arbitration level corresponding to the final path is the number of ring routing nodes traversed minus 2.

[0070] On the other hand, a third preset path rule is established based on network structure layer relationships, dual-link marking, multi-link marking, cross-links, and path arbitration levels, including:

[0071] The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node.

[0072] When the network structure layer relationship is the same layer network structure, the third interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism; the eighth ring routing node corresponding to the same layer network structure as the source ring routing node is determined in the third interval ring structure; the link path of the cross link between the source ring routing node and the eighth ring routing node is taken as the eleventh path; the link path from the eighth ring routing node to the destination ring routing node is taken as the tenth preset path, and the link path under the destination path adjacent link label corresponding to the multi-link label in the tenth preset path is taken as the twelfth path; the eleventh path and the twelfth path are taken as the final path, wherein the path arbitration level corresponding to the twelfth path is 1;

[0073] When the network structure layer relationship is an adjacent layer network structure or a non-adjacent layer network structure, the third interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism; the eighth ring routing node corresponding to the same layer network structure as the source ring routing node is determined in the third interval ring structure; the link path of the cross link between the source ring routing node and the eighth ring routing node is taken as the eleventh path; the ninth ring routing node in the same layer network structure as the destination ring routing node is determined in the third interval ring structure, and the link path between the eighth ring routing node and the ninth ring routing node is taken as the eleventh path. Let the path be defined as follows: in the eleventh preset path, the link at the cross-link position corresponding to the source ring routing node is taken as the second target link with dual link marking; the link path of the second target link is taken as the thirteenth path; the link path between the ninth ring routing node and the destination ring routing node is taken as the twelfth preset path; in the twelfth preset path, the link path under the adjacent link marking of the destination path corresponding to the multi-link marking is taken as the fourteenth path; the eleventh, thirteenth, and fourteenth paths are taken as the final paths to establish the third preset path rule; wherein, the path arbitration level corresponding to the thirteenth and fourteenth paths is 1; and the number of thirteenth preset paths is at least one preset path.

[0074] On the other hand, a fourth preset path rule is established based on network structure layer relationships, dual-link marking, cross-links, and path arbitration levels, including:

[0075] The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node.

[0076] When the network structure layer relationship is the same layer network structure, the link path of the corresponding cross link between the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism, and the link path of the cross link is used as the fifteenth path to establish the fourth preset path rule.

[0077] When the network structure layer relationship is an adjacent layer network structure or a non-adjacent layer network structure, the link path of the corresponding cross link between the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism, and the link path of the cross link is taken as the fifteenth path; in the ring structure to which the destination ring routing node belongs, the tenth ring routing node at the same layer as the source ring routing node is determined, and the link path between the tenth ring routing node and the destination ring routing node is taken as the thirteenth preset path. In the thirteenth preset path, the link at the cross link position corresponding to the source ring routing node is taken as the second target link with dual link marking; the link path of the second target link is taken as the sixteenth path, and the fifteenth path and the sixteenth path are taken as the final path to establish the fourth preset path rule; wherein, the path arbitration level corresponding to the sixteenth path is 1; and the number of the thirteenth preset paths is at least one preset path.

[0078] On the other hand, after determining the target path, the method further includes:

[0079] When there are multiple path requests at the same time, and all of them pass through the adjacent links between two ring routing nodes, determine whether the target link paths under the multi-link tags corresponding to the multiple path requests are the same.

[0080] If they are the same, routing is performed according to the time order in which multiple path requests arrive at the target link path.

[0081] To address the aforementioned technical problems, the present invention also provides a switch, including various switch ports; wherein, the various switch ports are interconnected through the steps of the path determination method based on the multi-layer octagonal network structure described above, so as to perform communication processing on the devices connected to each switch port.

[0082] To address the aforementioned technical problems, the present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the path determination method based on a multi-layer octagonal network structure as described above.

[0083] To address the aforementioned technical problems, the present invention also provides a computer program product, including a computer program / instruction, which, when executed by a processor, implements the steps of the path determination method based on a multi-layer octagonal network structure.

[0084] This invention relates to a method for constructing a multi-layer octagonal network structure. Its advantages lie in the following: First, based on the number of routing nodes and port points in a single-layer octagonal network structure, the number of port node groups under each routing node in a general octagonal network structure is determined. Each port node is then grouped to facilitate the construction of its own ring structure based on the number of port node groups. Within each ring structure, a corresponding ring routing node is determined based on the number of port node groups. Considering the application characteristics of the IO protocol controller, compared to a nested four-dimensional cube structure, this invention uses a ring structure under each routing node in the general octagonal network structure, establishing corresponding ring structures and ring routing nodes within each ring structure. This allows port nodes to be laid out flat within each ring routing node, facilitating backend layout and wiring, and simplifying operational complexity. Second, corresponding node tags are assigned to each ring structure and the ring routing nodes within each ring structure. Pre-setting these node tags facilitates calculations during subsequent routing processes, improving path calculation efficiency. Simultaneously, it provides a reference for link marking. Within each ring structure, dual links are allocated based on the critical link and cross-link positions set by the ring routing node corresponding to the routing request. This dual-link marking reduces path sharing contention during subsequent routing, decreases the number of arbitration levels, lowers network latency, and increases transmission rate. Furthermore, ring routing nodes at the same position within each ring structure have identical node markings, facilitating the establishment of octagonal network structures at each layer. Finally, multi-link markings are determined based on the source routing node, destination routing node, and the tracing paths of each ring routing node. The tracing paths represent each link corresponding to the source path, specifically including the link marking for the next step to reach the destination routing node, the link marking for the next step not yet reached but originating from the current ring routing node, and the link markings of other ring routing nodes within the ring structure to which the ring routing node belongs. This multi-link setting distinguishes the paths of different links. Based on the link allocation method, and considering that conventional technical solutions have the same number of arbitration levels and routing nodes for each routing request, the longest routing request path in this invention is reduced from 3 arbitration levels to 2, reducing contention for shared links. In this process, different layers of octagonal network structures have been established. At the same time, cross-link connections need to be made according to the ring routing nodes of each layer, so that in addition to connecting through critical paths, the paths also need to be routed through cross-links to shorten the routing path length and complete the establishment of a multi-layer octagonal network structure.

[0085] The advantages of this invention for path determination based on a multi-layer octagonal network structure are as follows: First, based on the multi-layer octagonal network structure, compared to the conventional cubic topology which uses a layered network structure, it can reduce the number of arbitration levels while reducing network latency and facilitating layout and cabling. Second, the positional relationship of the ring structure to which any two ring routing nodes belong is determined based on the node markings between them, such as adjacent or spaced positions; the node connectivity relationships of each ring routing node correspond to the node positions belonging to the same ring structure or different ring structure positions. The network structure layer relationships correspond to different layers of the multi-layer octagonal network structure. For the dual-link markings within a ring structure position, the multi-link markings between ring structure positions, and the preset path rules established by the cross links of each ring routing node and the path arbitration level, the critical value of the number of path arbitration levels is the number of routing nodes traversed by the network diameter minus 2. Compared to the conventional cubic network structure, the number of path arbitration levels is reduced, thus reducing path congestion and path latency caused by path sharing. The dual-link marking within the ring structure and the multi-link marking between different ring structures prevent interference and competition between different link paths, thus improving routing efficiency. Finally, by using the node markings of the ring routing nodes corresponding to the source and destination routing nodes under the routing request, and comparing them with preset path rules, the corresponding target path rules are determined to identify the target path. Here, the set rules simplify path calculation while also improving routing efficiency.

[0086] Secondly, the process of determining the number of port node groups ensures that the number of port nodes that can be allocated under each routing node in the octagonal network structure is uniform, reducing the increase in the number of adjacent links and also reducing the number of layers in the octagonal network structure, simplifying the routing algorithm and the layout and wiring operations. The allocation process of node tags corresponding to the ring structure and ring routing nodes, and the setting of the encoding information of the ring structure, fully utilize binary data to represent routing nodes. Compared with the use of sequence numbers, this embodiment can directly determine the position information between ring structures in the subsequent routing calculation process. Regarding the setting of the first data for the ring routing nodes, it avoids confusion in the subsequent path setting process, preventing path sharing and increasing latency. The process of determining the encoding information allows each ring structure to be associated through the cyclic shift of each first binary data, facilitating the clear understanding of the position information of each ring structure in the subsequent path calculation process, thus facilitating path routing implementation. The dual links between the ring routing nodes within a single ring structure are set by the link type corresponding to the adjacent link position and the cross link position, clearly representing the path settings under different routing requests, achieving clear link division in dual links, and improving routing efficiency. In the process of determining multi-link labels, the adjacent link labels are divided according to the source path direction and the destination path direction to ensure the path order of adjacent links in the path routing process and reduce the sharing contention under multiple path requests.

[0087] In addition, the present invention also provides a switch that has the same beneficial effects as the path determination method based on the multi-layer octagonal network structure described above. Attached Figure Description

[0088] To more clearly illustrate the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0089] Figure 1 This is a schematic diagram illustrating an application scenario of a PCIe topology diagram provided in an embodiment of the present invention;

[0090] Figure 2 This is a schematic diagram of a PCIe switch port connection provided in an embodiment of the present invention;

[0091] Figure 3 A schematic diagram of a triangular network topology provided for a conventional technical solution;

[0092] Figure 4 A schematic diagram of a quadrilateral network topology provided for a conventional technical solution;

[0093] Figure 5A schematic diagram of a triangular pyramidal network topology provided for a conventional technical solution;

[0094] Figure 6 A schematic diagram of an Octagon network topology provided for a conventional technical solution;

[0095] Figure 7 A schematic diagram of a four-dimensional cube network topology provided for a conventional technical solution;

[0096] Figure 8 A flowchart illustrating a method for constructing a multi-layer octagonal network structure provided in an embodiment of the present invention;

[0097] Figure 9 This is a schematic diagram of a cyclic left shift of first encoded information provided in an embodiment of the present invention;

[0098] Figure 10 This is a schematic diagram of a cyclic right shift of first encoded information provided in an embodiment of the present invention;

[0099] Figure 11 This is a schematic diagram of node markings for a two-layer octagonal network structure provided in an embodiment of the present invention;

[0100] Figure 12 A schematic diagram illustrating the connection between two ring routing nodes within the same ring structure, provided as an embodiment of this application;

[0101] Figure 13 This invention provides a schematic diagram of link marking for two ring routing nodes within the same ring structure, as illustrated in an embodiment of the invention.

[0102] Figure 14 This is a front view schematic diagram of an octagonal topology adjacent link connection provided in an embodiment of the present invention;

[0103] Figure 15 This invention provides a schematic diagram of adjacent link connections in a two-layer octagonal topology.

[0104] Figure 16 This is a schematic diagram of multi-link marking corresponding to adjacent links in a two-layer octagonal topology provided in an embodiment of the present invention;

[0105] Figure 17 A flowchart illustrating a path determination method based on a multi-layer octagonal network structure provided in this embodiment of the invention;

[0106] Figure 18 A schematic diagram of a three-layer octagonal network structure provided in an embodiment of the present invention;

[0107] Figure 19A structural diagram of a device for constructing a multilayer octagonal network structure provided in an embodiment of the present invention;

[0108] Figure 20 A structural diagram of a path determination device based on a multi-layer octagonal network structure provided in an embodiment of the present invention;

[0109] Figure 21 A structural diagram of another path determination device based on a multi-layer octagonal network structure provided in an embodiment of the present invention. Detailed Implementation

[0110] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of the present invention.

[0111] The core of this invention is to provide a method for constructing a multi-layer octagonal network structure, determining the path, and a switch, in order to solve the problems of transmission delay and reduced transmission efficiency caused by a large number of arbitration levels in the network structure, as well as the complex layout and wiring.

[0112] To enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0113] An I / O protocol controller, primarily a Peripheral Component Interconnect Express (PCIe) switch or PCIe switch, is mainly used to interconnect PCIe devices. For example, servers rely on it to interconnect components such as the Central Processing Unit (CPU) and Graphics Processing Unit (GPU). With an I / O protocol controller, PCIe connections shift from end-to-end to multi-bus connections, effectively expanding the link and forming a high-speed PCIe interconnect network, thus enabling multi-device communication. The high scalability, low power consumption, low latency, high reliability, and high flexibility of I / O protocol controllers make them widely used in machine learning, artificial intelligence, hyper-converged deployments, and storage systems. Figure 1 This is a schematic diagram illustrating an application scenario of a PCIe topology diagram provided in an embodiment of the present invention, such as... Figure 1As shown, a PCIe switch connects various PCIe devices (legacy endpoints). The interconnect network is one of the core components of the I / O protocol controller, responsible for data exchange between ports. The interconnect network determines the system bandwidth of the I / O protocol controller and has a significant impact on network latency. Furthermore, its complexity often determines the feasibility of the controller and is a key factor limiting the number of controller ports. Additionally, Figure 1 The endpoint devices in the configuration are PCIe devices, and the bridge is a PCI Express to PCI / PCI-X bridge. This includes the interaction between the CPU and the root complex, and the connection between the root complex and the switch and direct devices. Figure 2 This is a schematic diagram of a PCIe switch port connection provided in an embodiment of the present invention, as shown below. Figure 2 As shown, the 16 ports are interconnected through an internal interconnection network. The network diameter is the maximum value of the shortest distance between two routing nodes in the network; the smaller the network diameter, the lower the network communication latency.

[0114] When there are only three routing nodes Figure 3 A schematic diagram of a triangular network topology provided for a conventional technical solution, such as... Figure 3 As shown, the network diameter is 1 at this point, and the out-degree and in-degree of each routing node are both 2. When there are four routing nodes, Figure 4 A schematic diagram of a quadrilateral network topology provided for a conventional technical solution, such as... Figure 4 As shown, the network diameter is 2, and the out-degree and in-degree of each routing node are both 2. Figure 5 A schematic diagram of a triangular pyramid network topology provided for conventional technical solutions, such as... Figure 5 As shown, the network diameter is still 1, and the out-degree and in-degree of each routing node are both 3. Figure 6 A schematic diagram of an Octagon network topology provided for conventional technical solutions, such as... Figure 6 As shown, when there are 8 routing nodes, the network diameter is 2, and the out-degree and in-degree of each routing node are both 3. Figure 7 A schematic diagram of a four-dimensional cube network topology provided for conventional technical solutions, such as... Figure 7 As shown, with 16 routing nodes, the network diameter is 4, and each routing node has an out-degree and in-degree of 4. It can be seen that as the number of interconnected routing nodes increases, the overall network diameter increases, and the out-degree and in-degree of each routing node also increase. The shape of the interconnected network also begins to diversify. However, for application scenarios like the I / O protocol controller, since the I / O protocol controller is square and the ports are evenly distributed around it, therefore... Figure 4The high connectivity, symmetry, and scalability of four-dimensional cubes make their application in I / O protocol controllers limited. Furthermore, the large number of links in a four-dimensional cube makes backend layout and wiring difficult; and the complex routing algorithm of a four-dimensional cube is not implemented in hardware.

[0115] Furthermore, in the routing algorithms corresponding to the aforementioned topologies, the number of arbitration levels for each routing request is the same as the number of routing nodes traversed by that request. This means that arbitration will occur when paths are shared, inevitably leading to increased transmission latency and reduced transmission efficiency. The multi-layer octagonal network structure construction method provided by this invention can solve the above-mentioned technical problems.

[0116] Figure 8 A flowchart illustrating a method for constructing a multi-layer octagonal network structure provided in an embodiment of the present invention is shown below. Figure 8 As shown, the method includes:

[0117] S11: The number of port node groups under each routing node in the octagonal network structure is determined based on the number of routing nodes and port nodes in a single-layer octagonal network structure.

[0118] S12: Construct a corresponding ring structure based on the number of port node groups under each routing node, and determine the corresponding ring routing node within each ring structure based on the number of port node groups.

[0119] In this system, a ring routing node connects to a port node;

[0120] S13: Assign corresponding node tags to each ring structure and the ring routing nodes within each ring structure, and allocate dual links between each ring routing node within each ring structure according to the adjacent link position and cross link position of the ring routing node corresponding to the routing request.

[0121] Among them, the node labels of the ring routing nodes located in the same position within each ring structure are the same;

[0122] S14: Determine the multi-link markers between the ring routing nodes at the same location within each ring structure based on the source routing node, destination routing node, and tracing path of each ring routing node in the routing request, so as to make connections; and perform cross-link connections based on the ring routing nodes of each layer to obtain a multi-layer octagonal network structure.

[0123] Specifically, the single-layer octagonal network structure has eight routing nodes, which divides multiple port nodes into eight groups. The number of port nodes in each group is equal to the number of port node groups under each routing node in the octagonal network structure. For example, [the following is a list of groups]. The PCIe ports are divided into eight groups, each group has There are 12 PCIe ports, each connected to a routing node, thus providing a total of 12 PCIe ports. One routing node.

[0124] It should be noted that the number of eight routing nodes corresponding to the current single-layer octagonal network structure serves as a reference for the ring structure forming the main body of the multi-layer octagonal network structure. If the current number of PCIe ports is not an integer multiple of the number of eight routing nodes, there will be a remainder after dividing the number of port nodes by the number of routing nodes. The number of port nodes corresponding to the remainder will be further allocated to each routing node. If the quotient of the division is used as the standard number of port node groups, in order to avoid the port nodes corresponding to the remainder sharing links in the path routing between each ring routing node, resulting in link sharing, in this embodiment of the invention, an additional number of port nodes will be added to each routing node to account for the number of port nodes corresponding to the remainder. That is, if there are 17 PCIe ports, after each routing node receives 2, there will be 1 port node remaining. This port node will be allocated to one of the routing nodes, so that one of the eight routing nodes is allocated 3 port nodes. At this time, the number of links corresponding to each routing node is calculated based on 3 port nodes to prevent contention for the remaining links.

[0125] In step S12, a corresponding ring structure is constructed based on the number of port node groups under each routing node. For example, if a routing node has three port nodes, its ring structure consists of these three port nodes connected in a ring. Within each ring structure, the corresponding ring routing node is determined based on the number of port node groups. It's important to note that the ring routing node is based on a multi-layer octagonal network structure, not a single-layer octagonal network structure. The multi-layer octagonal network structure is formed by stacking single-layer octagonal network structures, where each routing node of the single-layer octagonal network structure serves as a ring routing node in the multi-layer octagonal network structure, forming a ring structure at each corner of the octagonal network structure. One ring routing node connects to one port node to ensure the uniqueness of the path from the port node to the ring routing node.

[0126] In step S13, corresponding node tags are assigned to each ring structure and each ring routing node within each ring structure. These tags include tags assigned to the ring structure itself and tags assigned to each ring routing node within each ring structure. Each tag can be assigned using different data identifiers. To facilitate subsequent calculations between the various ring routing nodes, different binary data can be used. The specific bit data of the binary data is set according to the actual situation, mainly ensuring that each routing node can be covered by binary data. Setting binary data facilitates calculations when performing XOR operations. Alternatively, Arabic numerals can be used for statistical purposes to facilitate identification during subsequent routing; this is not limited here.

[0127] Within each ring structure, dual links are allocated between ring routing nodes based on the adjacent and cross-link positions of the corresponding ring routing node for each routing request. It's important to note that the source and destination routing nodes for each routing request are different. One link is used to mark the routing request originating from this routing node (i.e., the adjacent link position); the other link is used to mark the routing request from the routing node directly opposite this routing node (i.e., the cross-link position). Connections between ring routing nodes within each ring structure are made using dual links. Ring routing nodes at the same position within each ring structure have the same node label. When connecting different ring routing nodes within different ring structures, the node labels for the routing node positions corresponding to the upper left, lower left, upper right, or lower right positions within each ring structure must be identical. This ensures that when constructing a multi-layered octagonal network structure, the ring routing nodes corresponding to each layer of the octagonal network structure have the same label across all ring structures.

[0128] Step S14 involves multi-link marking based on the source routing node, destination routing node, and tracing paths of each ring routing node in the routing request. This multi-link marking primarily targets the adjacent links between ring routing nodes in each layer of the octagonal network structure, with the number of links being [number missing]. Each link corresponds to a different link label to indicate that the path between the source and destination routing nodes of different routing requests follows the corresponding link label, ensuring the order of the path. Adjacent links are further distinguished into multiple links. For example, the first link indicates that the next step will reach the destination routing node; the second link indicates that the next step will not reach the destination routing node, but the routing request originates from the source routing node; the third link indicates that the next step will not reach the destination routing node, but the source routing node of the routing request is another routing node in the ring structure to which the current routing node belongs. As the number of ring routing nodes within a ring structure increases, the number of its adjacent links also increases. The above summary of the number of links... The "1" indicates the next link to the destination routing node. "" represents the links corresponding to each ring routing node within each ring structure. Adjacent links are connected to the outer links of ring routing nodes at the same location within each ring structure. Regarding ring routing nodes at each layer, connections are made between ring routing nodes at the same location within each ring structure to form different layers. The number of ring routing nodes within a ring structure determines the number of layers in the octagonal network structure. Ring routing nodes at each layer are further connected via cross-links; the number of links between two ring routing nodes connected by a cross-link is one. The path arbitration level of the link path corresponding to a cross-link is 0; the path arbitration level occurs in dual-link and adjacent-link multi-link systems.

[0129] This invention relates to a method for constructing a multi-layer octagonal network structure. Its advantages lie in the following: First, based on the number of routing nodes and port points in a single-layer octagonal network structure, the number of port node groups under each routing node in a general octagonal network structure is determined. Each port node is then grouped to facilitate the construction of its own ring structure based on the number of port node groups. Within each ring structure, a corresponding ring routing node is determined based on the number of port node groups. Considering the application characteristics of the IO protocol controller, compared to a nested four-dimensional cube structure, this invention uses a ring structure under each routing node in the general octagonal network structure, establishing corresponding ring structures and ring routing nodes within each ring structure. This allows port nodes to be laid out flat within each ring routing node, facilitating backend layout and wiring, and simplifying operational complexity. Second, corresponding node tags are assigned to each ring structure and the ring routing nodes within each ring structure. Pre-setting these node tags facilitates calculations during subsequent routing processes, improving path calculation efficiency. Simultaneously, it provides a reference for link marking. Within each ring structure, dual links are allocated based on the critical link and cross-link positions set by the ring routing node corresponding to the routing request. This dual-link marking reduces path sharing contention during subsequent routing, decreases the number of arbitration levels, lowers network latency, and increases transmission rate. Furthermore, ring routing nodes at the same position within each ring structure have identical node markings, facilitating the establishment of octagonal network structures at each layer. Finally, multi-link markings are determined based on the source routing node, destination routing node, and the tracing paths of each ring routing node. The tracing paths represent each link corresponding to the source path, specifically including the link marking for the next step to reach the destination routing node, the link marking for the next step not yet reached but originating from the current ring routing node, and the link markings of other ring routing nodes within the ring structure to which the ring routing node belongs. This multi-link setting distinguishes the paths of different links. Based on the link allocation method, and considering that conventional technical solutions have the same number of arbitration levels and routing nodes for each routing request, the longest routing request path in this invention is reduced from 3 arbitration levels to 2, reducing contention for shared links. In this process, different layers of octagonal network structures have been established. At the same time, cross-link connections need to be made according to the ring routing nodes of each layer, so that in addition to connecting through critical paths, the paths also need to be routed through cross-links to shorten the routing path length and complete the establishment of a multi-layer octagonal network structure.

[0130] In some embodiments, determining the number of port node groups under each routing node in the octagonal network structure based on the number of routing nodes and port nodes in a single-layer octagonal network structure includes:

[0131] The number of port nodes is divided by the number of routing nodes.

[0132] If the division is exact, the number of port node packets under each routing node is determined based on the quotient of the division. If the division is not exact, the number of port node packets under each routing node is determined based on the quotient and remainder of the division.

[0133] Specifically, the number of port nodes is divided by the number of routing nodes, such as... The PCIe ports are divided into eight groups, each group has There are 12 PCIe ports, each connected to a routing node, thus providing a total of 12 PCIe ports. There are 8 routing nodes. The above example assumes integer division. If the current division is not integer (i.e., the number of port nodes is not a multiple of the number of routing nodes), the quotient and remainder of the division are used to determine the number of port node groups. For example, if the remainder is 1, the port node corresponding to that remainder is assigned to any one routing node, and the number of its corresponding port node groups is the remainder + quotient. If the remainder is 2, the port node corresponding to that remainder needs to be evenly distributed between any two routing nodes. Whenever a remainder exists, the port node corresponding to that remainder needs to be evenly distributed among any of the eight routing nodes to ensure a uniform distribution of port nodes across all routing nodes and to avoid assigning all port nodes corresponding to remainders to only one routing node, which would increase the burden on adjacent links and complicate the path algorithm.

[0134] The process for determining the number of port node groups provided in this embodiment ensures that the number of port nodes that can be allocated under each routing node in the octagonal network structure is uniform, reducing the increase in the number of adjacent links, while also reducing the number of layers in the octagonal network structure, simplifying the routing algorithm, and simplifying the layout and wiring operations.

[0135] In some embodiments, assigning corresponding node tags to each ring structure and the ring routing nodes within each ring structure includes:

[0136] The target number of bits for binary data is determined based on the first quantity corresponding to the ring structure.

[0137] Determine each first binary data based on the binary data of the target number of bits;

[0138] The first encoding information corresponding to each ring structure is determined based on each first binary data;

[0139] The first data is set according to the number of groups of each port node; the first data is the same for port nodes at the same position under each ring structure.

[0140] Specifically, the node label is the label for each port node. The target number of bits in the binary data is determined based on the first quantity corresponding to the ring structure. Here, the first quantity is the number of ring structures in the entire multi-layer octagonal network structure. There are 8 ring structures, which requires at least 3 bits of data in binary representation. The bit data is the target number of bits, and the first binary data is determined based on the target number of bits. Each first binary data is used to determine the first encoding information corresponding to each ring structure. Here, each ring structure can be assigned its own corresponding binary data, or a single binary data can be circularly shifted left to determine the binary data for each ring structure. This facilitates subsequent path routing by clearly knowing the position of each ring structure within the multi-layer octagonal network structure for routing calculations.

[0141] The first data is determined based on the number of groups at each port node. This first data can be represented by Arabic numerals or encoded information; there is no limitation on this.

[0142] The ring structure and the allocation process of node tags corresponding to each ring routing node provided in this embodiment, as well as the setting of the ring structure's encoding information, fully utilize binary data to represent routing nodes. Compared to using sequential arrangement, this embodiment can directly determine the positional information between ring structures during subsequent route calculations. The use of first data for ring routing nodes avoids confusion and path sharing during subsequent path setting, thus preventing increased latency.

[0143] In some embodiments, determining each first binary data based on binary data of a target number of bits includes:

[0144] The first initial binary data is determined based on the binary data of the target number of bits, wherein the first preset number of bits of the first initial binary data is zero, and the remaining second preset number of bits is 1;

[0145] Starting from the first initial binary data, along the counterclockwise direction of the single-layer octagonal network structure, the first initial binary data corresponding to the current ring structure is shifted one bit to the right compared to the first initial binary data corresponding to the previous ring structure to obtain the corresponding first binary data.

[0146] Correspondingly, the first encoded information is determined based on each first binary data, including:

[0147] The high four bits of each first binary data are extracted and used as the first encoded information corresponding to each ring structure.

[0148] Specifically, the encoding of each port node is ( , ),in, Encoding indicating a ring structure, A marker indicating a ring routing node. Figure 9 This is a schematic diagram of a cyclic left shift of first encoded information provided in an embodiment of the present invention, as shown below. Figure 9 As shown, it is a 4-bit binary data. The first 4 bits of the data obtained by cyclically shifting "00001111" to the left are used to encode each ring structure. Figure 10 This is a schematic diagram of a cyclic right shift of first encoded information provided in an embodiment of the present invention, as shown below. Figure 10 As shown, in a counter-clockwise direction, the first 4 bits of the data obtained by cyclically shifting "00001111" to the right are used to encode each ring structure.

[0149] like Figure 9 As shown, the first preset number of bits in the first initial binary data is zero, and the remaining second preset number of bits is 1, i.e., 00001111, with the first 4 bits being the significant bits. Starting from the first initial binary data, along the counter-clockwise direction of the single-layer octagonal network structure, the first initial binary data corresponding to the current ring structure is shifted one bit to the right (or one bit to the left, depending on the ring structure), to obtain the corresponding first binary data. The significant bits (high four bits) of each first binary data are extracted as the first encoded information corresponding to each ring structure.

[0150] Define two functions: :Will Circular left shift Bit; :Will Circular right shift For example: , .

[0151] Figure 11 This is a schematic diagram of node markings for a two-layer octagonal network structure provided in an embodiment of the present invention, as shown below. Figure 11 As shown, a ring structure contains two ring routing nodes. Each ring routing node has the same node label for the same position in the other ring structure, thus forming a two-layer octagonal network structure. The 4-bit binary encoding of each ring structure follows a progressive shift setting.

[0152] The process of determining the first encoding information provided in this embodiment enables each ring structure to be associated with each other through cyclic shifting of each first binary data, which facilitates the determination of the position information of each ring structure in the subsequent path calculation process, so as to facilitate the implementation of path routing.

[0153] In some embodiments, dual links are allocated between ring routing nodes within each ring structure based on the adjacent link positions and cross link positions of the ring routing nodes corresponding to the routing requests, including:

[0154] Assign dual links between adjacent ring routing nodes within a single ring structure;

[0155] Obtain the positional relationship of the first ring structure formed by the ring structures of the first ring routing node and the second ring routing node corresponding to the routing request.

[0156] The link types corresponding to the adjacent link positions and cross link positions are determined based on the positional relationship of the first ring structure and the first data relationship corresponding to the first ring routing node and the second ring routing node, respectively.

[0157] The dual links are labeled according to the link types corresponding to the adjacent link positions and cross-link positions to obtain dual link labels.

[0158] Specifically, within a ring structure, dual links are allocated between each adjacent ring routing node. Simultaneously, the first ring routing node corresponding to the source port node of the routing request and the second ring routing node corresponding to the destination port node need to be obtained. The ring structures corresponding to the first and second ring routing nodes are determined to form the corresponding first ring structure positional relationships. Based on the first ring structure positional relationships and the first data relationships corresponding to the first and second ring routing nodes, the link types corresponding to adjacent link positions and cross link positions are determined. The ring structure positional relationships are relative, adjacent, or, in the case of non-adjacent relationships, separated by several ring structures. If it is a relative ring structure positional relationship, it means that the ring routing nodes within each ring structure need to use the cross link routing method, i.e., in the dual link, they need to be routed to the link type of the cross link position. If it is an adjacent or separated by several ring structure positional relationships, the routing request for this ring routing node needs to be routed to the link type of the adjacent link position in the dual link.

[0159] It should be noted that, in The construction process for the 16 PCIe ports is as follows: Step 1: Divide the 16 PCIe ports into eight groups, with two PCIe ports in each group. Each PCIe port is connected to a ring routing node, resulting in a total of 16 ring routing nodes. Step 2: Connect the two ring routing nodes in the same group with dual links, resulting in a total of 8 groups of routing nodes, i.e., 8 ring structures. Figure 12 This application provides a schematic diagram illustrating the connection between two ring routing nodes within the same ring structure, as shown in the embodiment. Figure 12As shown, its two ring routing nodes are fully interconnected using dual links.

[0160] Figure 13 This invention provides a schematic diagram of link labeling for two ring routing nodes within the same ring structure, as shown in the embodiment of the invention. Figure 13 As shown, two ring routing nodes within the same ring structure are directly connected by two links. One link is marked as 0 for routing requests from the current ring routing node, and the other link is marked as 1 for routing requests from the ring routing node opposite the current ring routing node.

[0161] The dual links between each ring routing node within a single ring structure provided in this embodiment are defined by the link type corresponding to the adjacent link position and the cross link position, so as to clearly represent the path settings under different routing requests, realize the clear division of link functions in the dual links, and improve routing efficiency.

[0162] In some embodiments, determining the multi-link markers between ring routing nodes at the same location within each ring structure based on the source routing node, destination routing node, and tracing paths of each ring routing node in the routing request includes:

[0163] Determine the source path direction and destination path direction based on the tracking path;

[0164] Based on the ring routing nodes at the same position within each ring structure, adjacent ring routing nodes at the same position in adjacent ring structures are connected by adjacent edge links; wherein, the number of adjacent edge links is the number of ring routing nodes within a single ring structure plus 1;

[0165] The link corresponding to the source routing node in the direction of the source path is taken as the source path adjacent link;

[0166] Within the link corresponding to the destination routing node in the destination path direction, the routing is divided according to the ring routing nodes in a single ring structure to obtain the same destination path adjacent links as the ring routing nodes in a single ring structure; wherein, the number of destination path adjacent links is the same as the number of ring routing nodes in a single ring structure.

[0167] Specifically, path tracing corresponds to the distinction of path direction; path tracing requires specifying the source path direction and the destination path direction. Adjacent link connections are established between ring routing nodes at the same location within each ring structure. This primarily involves establishing connections between adjacent ring routing nodes at the same location within adjacent ring structures via adjacent link connections. The number of adjacent link connections is the number of ring routing nodes within a single ring structure plus one.

[0168] The link corresponding to the source routing node in the source path direction is taken as the source path adjacent link. Within the link corresponding to the destination path direction, it is divided according to each ring routing node in each ring structure. That is, each ring routing node corresponds to an adjacent link.

[0169] Figure 14 This is a front view schematic diagram of an adjacent link connection in an octagonal topology provided in an embodiment of the present invention, as shown below. Figure 14 As shown, eight ring routing nodes are connected to form an Octagon network topology; however, there are three links between two ring routing nodes connected by adjacent links, and one link between two ring routing nodes connected by cross links. Figure 15 This invention provides a schematic diagram of adjacent link connections in a two-layer octagonal topology, as shown in the embodiment of the invention. Figure 15 As shown, a ring structure includes two ring routing nodes. Ring routing nodes at the same location within each ring structure are connected by adjacent links. There are three adjacent links: one is the source path adjacent link, and the other two are the destination path adjacent links corresponding to the two ring routing nodes respectively. It should be noted that each link can achieve bidirectional transmission.

[0170] Figure 16 This is a schematic diagram of multi-link marking corresponding to adjacent links in a two-layer octagonal topology provided by an embodiment of the present invention, as shown below. Figure 16 As shown, within the same Octagon (a network architecture with octagonal structure characteristics), two adjacent ring routing nodes are connected by three links: one labeled 0, one labeled 1, and one labeled 2. When the next step is to reach the destination ring routing node, only link 2 can be used; when the next step is not yet to reach the destination ring routing node, and the routing request originates from the source ring routing node, only link 1 can be used; when the next step is not yet to reach the destination ring routing node, and the routing request originates from another ring routing node within the same group as the source ring routing node, only link 0 can be used.

[0171] In the process of determining the multi-link label provided in this embodiment, the adjacent link labels are divided according to the source path direction and the destination path direction to ensure the path order of the adjacent links in the path routing process and reduce the sharing competition under multiple path requests.

[0172] Furthermore, the present invention also provides a path determination method based on a multi-layer octagonal network structure. Figure 17 A flowchart of a path determination method based on a multi-layer octagonal network structure provided by an embodiment of the present invention is shown below. Figure 17 As shown, the method includes:

[0173] S21: Obtain the source and destination routing nodes corresponding to the routing request;

[0174] S22: Obtain the node labels of the ring routing nodes corresponding to the source routing node and the destination routing node based on the multi-layer octagonal network structure;

[0175] The multi-layer octagonal network structure is constructed by the steps of the above-described method for constructing a multi-layer octagonal network structure.

[0176] S23: Determine the positional relationship of the ring structure and the network structure layer relationship of each ring routing node based on the node labels between any two ring routing nodes, and establish preset path rules based on the positional relationship of the ring structure, the network structure layer relationship of each ring routing node, dual-link labels, multi-link labels, cross-links and path arbitration levels;

[0177] Among them, the critical value of the path arbitration level is less than or equal to the number of routing nodes traversed by the network diameter minus 2;

[0178] S24: Determine the target path rule based on the node labels of the source routing node and the destination routing node and the preset path rule, and determine the target path between the source routing node and the destination routing node based on the target path rule.

[0179] Specifically, the source and destination routing nodes corresponding to the routing request are obtained. Here, the source routing node is the node that initiated the packet request from the port node connected to the routing node, and the destination routing node is the node corresponding to the port node that responded to the routing request. The selection of the ring routing nodes here is based entirely on the routing nodes of the multi-layer octagonal network structure. The selection process can be based on the server settings under different port nodes, or on different communication tasks, etc., and is not limited here. Alternatively, it can be based on the source and destination routing nodes determined by the routing request.

[0180] In step S23, the corresponding ring structure positional relationship and the network structure layer relationship formed by the layer settings of each ring routing node are determined based on the node markers between any two ring routing nodes. During this process, the ring structure positional relationship of a ring node can be determined through the node markers of the ring structure it belongs to, such as encoding information. Knowing the ring structure positional relationship, the network structure layer relationship of whether each ring routing node is in the same layer, adjacent layer, or non-adjacent layer can be determined based on the node markers of each ring routing node.

[0181] Preset path rules are established based on the positional relationships within ring structures, network layer relationships, dual-link markings within the same ring structure, multi-link markings within different ring structures, and the number of cross-links and path arbitration levels. It should be noted that the path arbitration level is designed to avoid path sharing and contention during the path process. If two types of link paths exist—the first consisting of adjacent links and the second consisting of cross-links and adjacent links—the second type of link path is preferred because the path arbitration level for cross-links is 0. The establishment of preset path rules considers different ring structure positional relationships, different network layer relationships, and path arbitration levels, assigning corresponding path rules for dual-link, multi-link, and cross-link formations.

[0182] The maximum value of the path arbitration level is the number of routing nodes traversed by the network diameter minus 2. For general routing algorithms, the arbitration level of each routing request is the same as the number of routing nodes traversed by that routing request. In this embodiment, taking a two-layer octagonal network structure as an example, for the routing request with the longest path, there are 3 ring routing nodes traversed, but the arbitration level is only one.

[0183] In step S24, the destination path rule is determined based on the node labels of the source routing node and the destination routing node and the preset path rule, so as to perform routing to form the final target path.

[0184] The path determination method based on a multi-layer octagonal network structure in this invention has the following advantages: First, based on the multi-layer octagonal network structure, compared to the conventional cubic topology which uses a layered network structure, it can reduce the number of arbitration levels while reducing network latency and facilitating layout and cabling. Second, the positional relationship of the ring structure to which any two ring routing nodes belong is determined based on the node markings between them, such as adjacent or spaced positions; the node connectivity relationships of each ring routing node correspond to the node positions belonging to the same ring structure or different ring structure positions. The network structure layer relationship corresponds to different layers of the multi-layer octagonal network structure. For the dual-link markings within a ring structure position, the multi-link markings between ring structure positions, and the preset path rules established by the cross links of each ring routing node and the path arbitration level, the critical value of the number of path arbitration levels is the number of routing nodes traversed by the network diameter minus 2. Compared to the conventional cubic network structure, the number of path arbitration levels is reduced, thus reducing path congestion and path latency caused by path sharing. The dual-link marking within the ring structure and the multi-link marking between different ring structures prevent interference and competition between different link paths, thus improving routing efficiency. Finally, by using the node markings of the ring routing nodes corresponding to the source and destination routing nodes under the routing request, and comparing them with preset path rules, the corresponding target path rules are determined to identify the target path. Here, the set rules simplify path calculation while also improving routing efficiency.

[0185] In some embodiments, the node marker includes first encoded information corresponding to the ring structure to which the ring routing node belongs and first data corresponding to each ring routing node; determining the positional relationship of the ring structure based on the node markers between any two ring routing nodes includes:

[0186] If the first encoding information of the ring structure to which two ring routing nodes belong is the same, then the ring structure position relationship of the two ring routing nodes is determined to be the same ring structure position relationship.

[0187] If the first encoding information of the ring structures to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 1 bit or left by 7 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be that of adjacent ring structures.

[0188] If the first encoding information of the ring structure to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 2 bits or left by 6 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be non-adjacent and separated by one ring structure positional relationship.

[0189] If the first encoding information of the ring structure to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 3 bits or left by 5 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be non-adjacent and separated by two ring structure positions.

[0190] If the first encoding information of the ring structures to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 4 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be a relative ring structure positional relationship.

[0191] Specifically, the settings and meanings of node labels can be found in the above embodiments, and will not be repeated here. If the first encoding information of the ring structure corresponding to two ring routing nodes is the same, it indicates that they belong to the same ring structure positional relationship. If the first encoding of two ring structures is different, it indicates that they do not belong to the same ring structure positional relationship, and their positional relationship is found in the multi-layer octagonal network structure. Figure 18 A schematic diagram of a three-layer octagonal network structure provided in an embodiment of the present invention is shown below. Figure 18 As shown, shifting the first encoding information of one ring structure to the left by 1 or 7 bits to obtain the first encoding information of another ring structure indicates that the two ring structures are adjacent. Shifting the first encoding information of one ring structure to the left by 2 or 6 bits to obtain the first encoding information of another ring structure indicates that the two ring structures are not adjacent and are separated by one ring structure. Shifting the first encoding information of one ring structure to the left by 3 or 5 bits to obtain the first encoding information of another ring structure indicates that the two ring structures are not adjacent and are separated by two ring structures. Shifting the first encoding information of one ring structure to the left by 4 bits to obtain the first encoding information of another ring structure indicates that the two ring structures are relative.

[0192] This embodiment establishes the positional relationship between two ring structures by using the shift bit relationship of the first encoded information of the two ring structures. Based on this positional relationship, the routing algorithm can quickly locate the shortest path to the target node. Appropriate routing strategies are selected according to different network conditions and requirements, considering the distribution of ring routing nodes in the network to avoid congestion during data transmission.

[0193] In some embodiments, determining the network structure layer relationship of each ring routing node based on the node label between any two ring routing nodes includes:

[0194] If the first data corresponding to two ring routing nodes is the same, then the network structure layer relationship of the two ring routing nodes is determined to be the same network structure layer.

[0195] If the first data corresponding to two ring routing nodes are different, and the first data of the other ring routing node is obtained by adding or subtracting 1 from the first data of one ring routing node, then the network structure layer relationship between the two ring routing nodes is determined to be an adjacent layer network structure.

[0196] If the first data corresponding to two ring routing nodes are different, and neither adding 1 nor subtracting 1 from the first data of one ring routing node can obtain the first data of the other ring routing node, then the network structure layer relationship between the two ring routing nodes is determined to be a non-adjacent layer network structure.

[0197] Specifically, in combination Figure 18 The comparison of the second data relationships between any two ring routing nodes indicates that if the second data of the two ring routing nodes are the same, they are determined to be in the same layer of network structure; if the second data of the two ring routing nodes are different, and the two second data can be obtained by adding or subtracting 1, they are in adjacent layer network structure; if they cannot be obtained by adding or subtracting 1, they are in non-adjacent layer network structure.

[0198] It's understandable that the relationship between network structure layers differs from the positional relationship of ring structures. In ring structures, the number of rings is fixed, and they are all built around an octagonal network structure, so the positional relationship of ring structures is fixed. However, in network structure layer relationships, as the number of port nodes increases, the number of network structure layers also increases, so the number of network structure layers is not fixed. This leads to a variable relationship between non-adjacent network structures, which can be N layers apart.

[0199] The network structure layer relationship setting provided in this embodiment is based on the hierarchical characteristics of the ring routing node in the topology, which quickly locates the shortest path to the target ring routing node. While simplifying the decision process, it also takes into account the number of arbitration levels to avoid congestion and delay during transmission.

[0200] In some embodiments, preset path rules are established based on the positional relationship of the ring structure, the network structure layer relationship of each ring routing node, dual-link marking, multi-link marking, cross-link, and path arbitration level, including:

[0201] When the positional relationship of the ring structure is the same as that of the ring structure and the network structure layer relationship is adjacent layer, a first preset path rule is established based on the dual link label and the shortest path; wherein, the dual link label is obtained by processing the dual links by the link types corresponding to the adjacent link positions and the cross link positions;

[0202] When the ring structure positional relationship is an adjacent ring structure positional relationship, or a non-adjacent ring structure positional relationship with a gap of one ring structure positional relationship, a second preset path rule is established based on the network structure layer relationship, dual link marking, multi link marking, and path arbitration level; wherein, the multi link marking is obtained by marking the adjacent links of the source path and the adjacent links of the destination path;

[0203] When the ring structure positions are not adjacent and are separated by two ring structure positions, a third preset path rule is established based on the network structure layer relationship, dual-link marking, multi-link marking, cross-link, and path arbitration level.

[0204] When the positional relationship of the ring structure is relative to that of the ring structure, a fourth preset path rule is established based on the network structure layer relationship, dual-link marking, cross-link, and path arbitration level.

[0205] Specifically, when the network structure layers are adjacent and have the same ring structure positional relationship, without traversing adjacent links and cross links, a first preset path rule needs to be established based on the dual-link markers within the ring structure and the network diameter of the shortest path involved. The process of establishing dual-link markers and multi-link markers has been described in detail in the above embodiments and will not be repeated here.

[0206] When dealing with adjacent ring structures or non-adjacent ring structures separated by one ring structure, it's necessary to check if the source and destination ring routing nodes are in the same network layer. If they are not, routing to the same ring structure will involve using dual-link marking. Whenever adjacent or non-adjacent ring structures separated by one ring structure are involved, routing to the same ring structure via adjacent links is required. This also involves setting routing parameters for path arbitration levels to establish a second preset path rule.

[0207] When the locations are not adjacent and separated by two ring structures, considering that using only adjacent links with multi-link marking would result in a high number of arbitration levels, it's crucial to consider both cross links and minimize the use of adjacent links. This reduces the number of arbitration levels for cross links. It's also necessary to consider whether the source and destination ring routing nodes are in the same network layer. If they are not, routing to the same ring structure will involve dual-link marking. These factors are taken into account to establish the third preset path rule.

[0208] When considering the relative positional relationships of ring structures, this means only taking into account how cross-links can reduce the number of arbitration levels corresponding to the routing paths of adjacent links between two ring structures. It's also necessary to consider whether the source and destination ring routing nodes are in the same network layer. If they are not in the same layer, routing to the same ring structure will involve dual-link labeling. These factors are taken into account to establish the fourth preset path rule.

[0209] This embodiment provides different preset path rules based on the characteristics of different ring structure positional relationships, combined with the arbitration level and the shortest distance of the network diameter. This improves the flexibility and accuracy of the path rules, ensuring fast paths while increasing routing efficiency.

[0210] In some embodiments, establishing a first preset path rule based on the dual-link tag and the shortest path includes:

[0211] The ring routing node corresponding to the source routing node is used as the source ring routing node, and the ring routing node corresponding to the destination routing node is used as the destination ring routing node.

[0212] The location of the adjacent link corresponding to the source ring routing node is used as the first target link for dual link marking;

[0213] The first preset path rule is established by using the link path of the first target link as the final path.

[0214] Specifically, all paths follow the shortest path routing. When the source ring routing node and the destination ring routing node are in the same ring structure, routing is performed directly according to the settings corresponding to the dual link markers. In the entire ring structure, the adjacent link position corresponding to the source ring routing node is used as the first target link. That is, the link path of the first target link is used as the final path to form the first preset path rule.

[0215] For a routing request, the source ring routing node The encoding is denoted as destination ring routing node The encoding is denoted as Routing path: Link 0 here corresponds to the first target link.

[0216] The first preset path rule provided in this embodiment, when the positions of the same ring structure are related, is set according to the shortest path rule, which ensures data transmission efficiency while reducing the occurrence of path sharing.

[0217] In some embodiments, a second preset path rule is established based on network structure layer relationships, dual-link marking, multi-link marking, and path arbitration level, including:

[0218] The ring routing node corresponding to the source routing node is used as the source ring routing node, and the ring routing node corresponding to the destination routing node is used as the destination ring routing node.

[0219] When the positional relationship of the ring structure is that of adjacent ring structures, the first sub-preset path rule is established based on the network structure layer relationship, the destination path adjacent link label corresponding to the dual link label and the multi-link label, and the path arbitration level.

[0220] When the ring structure positions are not adjacent and are separated by one ring structure position, a second sub-preset path rule is established based on the network structure layer relationship, the destination path adjacent link mark and the source path adjacent link mark corresponding to the dual link mark and multi link mark, and the path arbitration level.

[0221] Specifically, when there are adjacent ring structures, different multi-link labels exist for adjacent links. Here, routing to the ring structure containing the destination ring routing node only requires traversing the adjacent link once. In this case, the multi-link label corresponds to the link marked with the adjacent link of the destination path. Once within the same ring structure, it's necessary to check if the source and destination ring routing nodes are at the same network layer. If they are at the same layer, dual-link labeling is not needed. If they are at different layers, routing to the destination ring routing node requires traversing a link with dual-link labeling within the same ring structure, thus forming the final path. Throughout this process, the number of path arbitration levels needs to be considered; that is, reducing the number of path arbitration levels in the final path formation reduces the delay caused by shared paths.

[0222] When the ring structures are non-adjacent and separated by one ring structure, routing to the destination ring routing node within the same ring structure requires two adjacent links. In this case, the multi-link labels correspond to the adjacent link labels of the source path and the destination path. Upon reaching the same ring structure, it's necessary to check if the source and destination ring routing nodes are at the same network layer. If they are at the same layer, dual link labels are not needed; otherwise, routing to the destination ring routing node requires a link with dual link labels within the same ring structure, thus forming the final path. Throughout this process, the number of path arbitration levels needs to be considered; that is, reducing the number of path arbitration levels in the final path formation reduces the delay caused by shared paths.

[0223] The sub-preset path rules provided in this embodiment, which are set for adjacent ring structure positions or non-adjacent positions separated by one ring structure, correspond to the routing rules of the multi-link markers of the adjacent links, ensuring that no conflict or sharing occurs when using adjacent links.

[0224] In some embodiments, a first sub-preset path rule is established based on the network structure layer relationship, the destination path adjacent link label corresponding to the dual-link label and the multi-link label, and the path arbitration level, including:

[0225] The ring routing node corresponding to the source routing node is used as the source ring routing node, and the ring routing node corresponding to the destination routing node is used as the destination ring routing node.

[0226] When the network structure layer relationship is the same layer network structure, the link path corresponding to the source path adjacent link marked by the destination path adjacent link is taken as the first path to establish the first sub-preset path rule; wherein, the path arbitration level corresponding to the first path is level one;

[0227] When the network structure layer relationship is an adjacent layer network structure, the ring routing node that belongs to the same layer network structure as the destination ring routing node and is located in the same ring structure as the source ring routing node is identified as the third ring routing node; the link path between the source ring routing node and the third ring routing node is identified as the second preset path, and the link path between the third ring routing node and the destination ring routing node is identified as the third preset path; in the second preset path, the link corresponding to the adjacent link position of the source ring routing node is identified as the first target link with dual link marking, and the link path of the first target link is identified as the second path; in the third preset path, the link path corresponding to the adjacent link marked by the adjacent link of the destination path is identified as the third path; the second path and the third path are identified as the final path to establish the first sub-preset path rule; wherein, the path arbitration level corresponding to the second path and the third path is one level.

[0228] When the network structure layer relationship is a non-adjacent layer network structure, the ring routing node that belongs to the same layer network structure as the destination ring routing node and is located in the same ring structure as the source ring routing node is identified as the fourth ring routing node; the link path between the source ring routing node and the fourth ring routing node is identified as the fourth preset path, and the link path between the fourth ring routing node and the destination ring routing node is identified as the fifth preset path; in the fourth preset path, the link corresponding to the adjacent link position of the source ring routing node is identified as the first target link with dual link marking, and the link path of each first target link is identified as the fourth path; in the fifth preset path, the link path corresponding to the adjacent link marked by the adjacent link of the destination path is identified as the fifth path; the fourth path and the fifth path are identified as the final path to establish the first sub-preset path rule; wherein, the path arbitration level corresponding to the fourth path is the number of ring routing nodes traversed minus 2; the number of fourth preset paths is at least one preset path.

[0229] Specifically, when the network structure layer relationship is the same layer network structure, the link path corresponding to the source path marked by the adjacent link is taken as the first path to establish the first sub-preset path rule. Circular left shift by 1 bit / 7 bits to get , and The ring structure is directly connected via adjacent links. First, determine... and Are they equal? ​​If Then, the route is taken to the first destination link of the adjacent link. That's all; Here, link 2 corresponds to the link path corresponding to the source path adjacent link of the multi-link tag (adjacent link tag).

[0230] If the layers are adjacent, the third ring routing node needs to be identified as belonging to the same network layer as the destination ring routing node and located in the same ring structure as the source ring routing node. This determines the second and third preset paths. Considering that neither of these paths leads directly to the destination ring routing node, routing is first initiated to the third ring routing node. The pathing process involves first using the link path corresponding to the adjacent link position of the source ring routing node as the second preset path, then using the third ring routing node as the third preset path, and finally using the adjacent link of the source path marked as the adjacent link of the destination path as the third preset path. These two paths are then the final paths. Since both the second and third paths have different exit points, their respective path arbitration levels are level one. Then, first follow the first target link to route to Routing to the adjacent link marked on the destination path according to the adjacent link. That's it; Route path: Here, link 0 is the first target link under the dual-link label, and link 2 is the adjacent link of the destination path adjacent link label under the multi-link label.

[0231] When dealing with non-adjacent network structures, the process of establishing the first sub-preset path rule is the same. The only difference is that, due to the different layers of the network structure, within the ring structure to which the source ring routing node belongs, it passes through multiple first target links. That is, it will pass through one or more ring routing nodes before reaching the fourth ring routing node at the same layer as the target ring routing node. The link paths of each of its first target links are collectively referred to as the fourth path.

[0232] In the process of establishing the first sub-preset path rule provided in this embodiment, routing is first performed within the ring structure of the source ring routing node to the intermediate ring routing node at the same level as the destination ring routing node, and then routed to the destination ring routing node through the adjacent link. By first using the dual links of the internal ring structure and then the external adjacent link, the path sharing problem of adjacent links is further reduced, and the routing efficiency is improved.

[0233] In some embodiments, a second sub-preset path rule is established based on the network structure layer relationship, the destination path adjacent link mark and the source path adjacent link mark corresponding to the dual-link mark and multi-link mark, and the path arbitration level, including:

[0234] The ring routing node corresponding to the source routing node is used as the source ring routing node, and the ring routing node corresponding to the destination routing node is used as the destination ring routing node.

[0235] When the network structure layer relationship is the same layer network structure, the first interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism; the link path between the source ring routing node and the fifth ring routing node corresponding to the same layer network structure under the first interval ring structure is taken as the sixth preset path, and the link path corresponding to the source path adjacent link mark in the sixth preset path is taken as the sixth path; the link path between the fifth ring routing node and the destination ring routing node is taken as the seventh preset path, and the link path corresponding to the destination path adjacent link mark in the seventh preset path is taken as the seventh path; the sixth path and the seventh path are taken as the final path to establish the second sub-preset path rule; wherein, the path arbitration level corresponding to the sixth path and the seventh path is 1 respectively;

[0236] When the network structure layer relationship is an adjacent layer network structure or a non-adjacent layer network structure, a sixth ring routing node in the same layer network structure as the destination ring routing node is determined within the ring structure to which the source ring routing node belongs. The link path between the source ring routing node and the sixth ring routing node is taken as the eighth preset path. In the eighth preset path, the link at the adjacent link position corresponding to the source ring routing node is taken as the first target link with dual link marking, and the link path of the first target link is taken as the eighth path. The second interval ring structure corresponding to the ring structure to which the sixth ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism. The link between the sixth ring routing node and the seventh ring routing node corresponding to the same layer network structure under the second interval ring structure is determined. The path is designated as the ninth preset path. Within the ninth preset path, the link path corresponding to the adjacent link marker of the source path is designated as the ninth path. The link path between the seventh ring routing node and the destination ring routing node is designated as the ninth preset path. Within the ninth preset path, the link path corresponding to the adjacent link marker of the destination path is designated as the tenth path. The eighth, ninth, and tenth paths are designated as the final paths to establish the second sub-preset path rule. Wherein, when the network structure layer relationship is an adjacent layer network structure, the path arbitration level corresponding to the eighth, ninth, and tenth paths is 1. When the network structure layer relationship is a non-adjacent layer network structure, the number of the eighth preset paths is at least one preset path, and the path arbitration level corresponding to the final path is the number of ring routing nodes traversed minus 2.

[0237] Specifically, when there is a ring structure positional relationship, if they are in the same network layer, the first interval ring structure corresponding to the ring structures to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism. If this first interval ring structure were directly found from the cross-link with a path arbitration level of 0, it would involve two ring structures, which would increase the arbitration level of the adjacent link. Therefore, currently, the entire process uses adjacent links and avoids cross-links. The fifth ring routing node is a ring routing node in the same network layer as the source ring routing node under the first interval ring structure. The link path between the fifth ring routing node and the source ring routing node is taken as the sixth preset path. Within the sixth preset path, the link path marked by the adjacent link of the source path is taken as the sixth path. The link path between the fifth ring routing node and the destination ring node is taken as the seventh preset path. All of the seventh preset paths are adjacent links. Since the next step can reach the destination ring routing node, the link path corresponding to the adjacent link of the destination path is taken as the seventh path. The sixth path and the seventh path are taken as the final path to establish the second sub-preset path rule. The arbitration level of the path corresponding to the sixth path and the seventh path is 1. Circular left shift by 2 bits to obtain This indicates the source ring routing node. The ring structure and the destination ring routing node The ring structures to which it belongs have no direct connections and are separated by an intermediate ring structure. If it is a network structure at the same layer, the path first follows the adjacent edge path to the fifth ring routing node corresponding to the first intervening ring structure, and then follows the adjacent edge path to the destination ring routing node. The path is as follows: Here, link 0 is the link path corresponding to the source path adjacent link mark under the dual link mark, and link 2 is the link path corresponding to the destination path adjacent link mark under the dual link mark.

[0238] In network structures of adjacent or non-adjacent layers, the route is first routed within the ring structure to the sixth ring routing node in the same layer of the network structure as the destination ring routing node. The link between the source ring routing node and the sixth ring routing node is taken as the eighth preset path, and the route proceeds to the sixth ring routing node according to the first target link. The path from the sixth ring routing node to the destination ring routing node is determined in the same way as the path from the source ring routing node to the destination ring routing node in the same layer network structure, and will not be repeated here. Regarding the path from the source ring routing node to the sixth ring routing node in a non-adjacent layer network structure, it will pass through multiple first target links, meaning it will pass through one or more ring routing nodes before reaching the sixth ring routing node in the same layer as the destination ring routing node. The link paths of each of these first target links are collectively referred to as the eighth path. If... Then, first follow the first target link to route to Routing to the adjacent link according to the adjacent link Adjacent routing nodes; then route to the adjacent link according to the adjacent link. That's it, the routing path is: Here, link 0 is the first target link of the dual-link tag, link 1 is the link path corresponding to the source path adjacent link tag of the multi-link tag, and link 2 is the link path corresponding to the destination path adjacent link tag of the multi-link tag.

[0239] For example: source ring routing node Destination ring routing node Its routing path is: .

[0240] In the establishment process of the second sub-preset path rule provided in this embodiment, in the same-layer network structure, the path reaches the ring routing node of the first interval ring structure through the adjacent link, and then routes to the destination ring routing node through the adjacent link. In the different-layer network structure, the dual links of the internal ring structure are prioritized to the ring routing node in the same layer as the destination ring routing node, and then reach the ring routing node of the first interval ring structure through the adjacent link, and then route to the destination ring routing node through the adjacent link. The entire routing process reduces the path sharing problem of adjacent links while considering schemes in the same or different layers, making the path rule flexible and diverse.

[0241] In some embodiments, a third preset path rule is established based on network structure layer relationships, dual-link marking, multi-link marking, cross-links, and path arbitration levels, including:

[0242] The ring routing node corresponding to the source routing node is used as the source ring routing node, and the ring routing node corresponding to the destination routing node is used as the destination ring routing node.

[0243] When the network structure layer relationship is the same layer network structure, the third interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism; the eighth ring routing node corresponding to the same layer network structure as the source ring routing node is determined in the third interval ring structure; the link path of the cross link between the source ring routing node and the eighth ring routing node is taken as the eleventh path; the link path from the eighth ring routing node to the destination ring routing node is taken as the tenth preset path; the link path under the destination path adjacent link label corresponding to the multi-link label in the tenth preset path is taken as the twelfth path; the eleventh path and the twelfth path are taken as the final path, where the path arbitration level corresponding to the twelfth path is 1;

[0244] When the network structure layer relationship is an adjacent layer network structure or a non-adjacent layer network structure, the third interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism; in the third interval ring structure, the eighth ring routing node corresponding to the same layer network structure as the source ring routing node is determined; the link path of the cross link between the source ring routing node and the eighth ring routing node is taken as the eleventh path; in the third interval ring structure, the ninth ring routing node in the same layer network structure as the destination ring routing node is determined, and the link path between the eighth ring routing node and the ninth ring routing node is taken as the eleventh preset path. In the eleventh preset path, the link at the cross-link position corresponding to the source ring routing node is used as the second target link with dual link marking; the link path of the second target link is used as the thirteenth path; the link path between the ninth ring routing node and the destination ring routing node is used as the twelfth preset path; in the twelfth preset path, the link path under the adjacent link marking of the destination path corresponding to the multi-link marking is used as the fourteenth path; the eleventh, thirteenth, and fourteenth paths are used as the final paths to establish the third preset path rule; wherein, the path arbitration level corresponding to the thirteenth and fourteenth paths is 1; and the number of thirteenth preset paths is at least one preset path.

[0245] Specifically, when considering the positional relationship between two ring structures, if only the adjacent link is followed, the corresponding path arbitration level is level three. If the cross link is followed first to the relative ring link, and then the adjacent link is followed, the corresponding path arbitration level is level one. Therefore, the latter method should be chosen, following the cross link first. If it is a same-layer network structure, the third interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism. In the third interval ring structure, the eighth ring routing node corresponding to the same-layer network structure as the source ring routing node is determined. The source ring routing node and the eighth ring routing node are connected by a cross link, which is used as the eleventh path. The link between the eighth ring routing node and the destination ring routing node is used as the tenth preset path. In the tenth preset path, the next step can reach the destination ring routing node. Therefore, in the tenth preset path, the link path under the destination path adjacent link mark corresponding to the multi-link mark is used as the twelfth path. The eleventh and twelfth paths are used as the final paths. Circular left shift by 3 bits to obtain This indicates the source ring routing node. With the destination ring routing node If a given ring structure has no direct connections and is separated by two other ring structures, then it first routes to the opposite ring routing node via a cross-link. Then judge and Are they equal? ​​If Then, the route is routed to the adjacent link. That's it, the routing path is: Link 2 here is the link path under the adjacent link tag of the destination path corresponding to the multi-link tag.

[0246] For example: source ring routing node destination ring routing node Its routing path is: Here, Link 1 is the second destination link of the link at the cross-link position corresponding to the source ring routing node, and Link 2 is the link path under the adjacent link mark of the destination path corresponding to the multi-link mark.

[0247] When dealing with different layer network structures (adjacent or non-adjacent layers), since cross-links lack arbitration levels, the path from the cross-link to the eighth ring routing node in the third interval ring structure is designated as the eleventh path. Within the third interval ring structure, the ninth ring routing node, located in the same layer as the destination ring routing node, is identified. In the eleventh preset path between the eighth and ninth ring routing nodes, due to the cross-link process, the second target link of the link at the cross-link position of the source ring routing node is designated as the thirteenth path. The link path between the ninth and destination ring routing nodes is designated as the twelfth preset path. Within the twelfth preset path, the link path marked by the adjacent link's destination link is designated as the fourteenth path. The eleventh, thirteenth, and fourteenth paths are then used as the final paths. Because the path from the eighth to the ninth ring routing node in a non-adjacent layer network structure involves multiple cross-links. There are intermittent ring routing nodes at the eighth and ninth ring routing nodes. The link path from the eighth ring routing node to the intermittent ring routing node follows the second target link, and the link path from the intermittent ring routing node to the ninth ring routing node also follows the second target link. In other words, the path passes through one or more ring routing nodes before reaching the target ring routing node; this segment of the link path is collectively referred to as the thirteenth path. If... Then, first follow the second target link to route to Routing to the adjacent link according to the adjacent link That's it, the routing path is: Here, Link 1 is the second target link, and Link 2 is the link path under the adjacent link tag of the destination path corresponding to the multi-link tag.

[0248] In the establishment process of the third preset path rule provided in this embodiment, routing is first performed through cross-links to the interval ring structure. In the same-layer network structure, the destination ring routing node is reached through adjacent links. In different-layer network structures, the dual links of the internal ring structure are prioritized to reach the ring routing node at the same layer as the destination ring routing node, and then the destination ring routing node is reached through adjacent links. Throughout the routing process, the path sharing problem of adjacent links is reduced, while considering both same-layer and different-layer solutions, reducing the number of arbitration levels and making the path rule more flexible.

[0249] In some embodiments, a fourth preset path rule is established based on network structure layer relationships, dual-link marking, cross-links, and path arbitration levels, including:

[0250] The ring routing node corresponding to the source routing node is used as the source ring routing node, and the ring routing node corresponding to the destination routing node is used as the destination ring routing node.

[0251] When the network structure layer relationship is the same layer network structure, the link path of the corresponding cross link between the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism, and the link path of the cross link is taken as the fifteenth path to establish the fourth preset path rule.

[0252] When the network structure layer relationship is an adjacent layer network structure or a non-adjacent layer network structure, the link path of the corresponding cross link between the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism, and the link path of the cross link is taken as the fifteenth path; in the ring structure to which the destination ring routing node belongs, the tenth ring routing node at the same layer as the source ring routing node is determined, and the link path between the tenth ring routing node and the destination ring routing node is taken as the thirteenth preset path. In the thirteenth preset path, the link at the cross link position corresponding to the source ring routing node is taken as the second target link with dual link marking; the link path of the second target link is taken as the sixteenth path, and the fifteenth path and the sixteenth path are taken as the final path to establish the fourth preset path rule; wherein, the path arbitration level corresponding to the sixteenth path is 1; and the number of the thirteenth preset path is at least one preset path.

[0253] Specifically, considering the arbitration mechanism, the two ring structures are in a relative position and need to be routed directly through cross links. When they are in the same network layer, the cross links are directly connected to the destination ring routing node to establish the fourth preset path rule. Circular left shift by 4 bits to obtain This indicates the source ring routing node. With the destination ring routing node If the ring structure is connected by cross links, then routing is performed according to the cross links. The ring structure it is in, then determine and Are they equal? ​​If Then the routing ends, and the routing path is: .

[0254] In different layer network structures, based on the determination of the fifteenth path, it is necessary to determine the tenth ring routing node at the same layer as the source routing node. Then, within the link path between the tenth ring routing node and the destination ring routing node, the path corresponding to the second target link with the cross-link position corresponding to the source ring routing node is used as the dual-link marker. The fifteenth and sixteenth paths are then taken as the final paths. It should be noted that in non-adjacent layer network structures, based on the second target link, the interval ring routing node between the tenth ring routing node and the destination ring routing node is determined. Between the interval ring routing node and the destination ring routing node, since the routing request originates from the cross-link position, routing is performed according to the second target link. Therefore, the sixteenth path is a general term, and the thirteenth preset path is not a preset path number in the horizontal dimension, but rather multiple thirteenth preset paths exist in different layer network structures in the vertical dimension. If Then, first follow the second destination link marked with the dual-link tag to route to the link with... That's it, the routing path Link 2 here is the second target link marked with a dual-link designation.

[0255] In the establishment process of the fourth preset path rule provided in this embodiment, routing is performed through cross-links to the ring structure to which the destination ring routing node belongs. When the network structure is at different layers, dual links are then used to reach the destination ring routing node. Through the entire routing process, the latency of arbitration levels is reduced, and data transmission efficiency is improved.

[0256] Regarding the number of arbitration levels, for general routing algorithms, the number of arbitration levels for each routing request is the same as the number of routing nodes traversed by that request. In this invention, for the routing request with the longest path, there are 3 routing nodes, but the number of arbitration levels is two. For example, ... Figure 18 As shown, assume the source loop routing node exist The destination ring routing node is in According to the routing rules, the routing path is: Link 2 here is the second target link marked with a dual-link designation.

[0257] In the process In this context, each path is unique. Yes, there will be no competition. In the process... In this context, the path is shared, which leads to arbitration; therefore, in the routing node... To the destination ring routing node Arbitration occurs at the point of export, therefore there is a first-level arbitration.

[0258] In some embodiments, after determining the target path, the method further includes:

[0259] When there are multiple path requests at the same time, and all of them pass through the adjacent links between two ring routing nodes, determine whether the target link paths under the multi-link tags corresponding to the multiple path requests are the same.

[0260] If they are the same, routing is performed according to the time order in which multiple path requests arrive at the target link path.

[0261] Specifically, different path requests may exist at the same time. If the target link paths are the same, the issue of path sharing needs to be considered. It should be noted that the path sharing in this embodiment is different from the path sharing situation corresponding to the arbitration level mentioned above. The path sharing in this embodiment is under the arbitration level of the above embodiment, where the link direction and link path are the same. In this case, routing needs to be performed according to the time order, that is, the path request that arrives earlier should be processed first.

[0262] In this embodiment, when multiple path requests correspond to the same path, they are processed in chronological order to improve the orderliness of routing paths and also improve transmission efficiency.

[0263] Furthermore, the present invention also provides a switch, including various switch ports; wherein, the various switch ports are interconnected by establishing an interconnection network through the steps of the path determination method based on the multi-layer octagonal network structure described above, so as to perform communication processing on the devices connected to each switch port.

[0264] For an introduction to the switch provided by the present invention, please refer to the above method embodiments. The present invention will not be described in detail here, but it has the same beneficial effects as the above-described path determination method based on a multi-layer octagonal network structure.

[0265] The foregoing has described in detail various embodiments of the method for constructing a multi-layer octagonal network structure. Based on this, the present invention also discloses an apparatus for constructing a multi-layer octagonal network structure corresponding to the above method. Figure 19 This is a structural diagram of a device for constructing a multilayer octagonal network structure, provided in an embodiment of the present invention. Figure 19 As shown, the device includes:

[0266] The first determining module 11 is used to determine the number of port node groups under each routing node in the octagonal network structure based on the number of routing nodes and port nodes in the single-layer octagonal network structure.

[0267] The second determining module 12 is used to construct a corresponding ring structure based on the number of port node groups under each routing node, and to determine the corresponding ring routing node within each ring structure based on the number of port node groups; wherein, one ring routing node connects to one port node.

[0268] The allocation module 13 is used to allocate corresponding node labels to each ring structure and the ring routing nodes within each ring structure, and to allocate dual links between each ring routing node within each ring structure according to the adjacent link position and cross link position of the ring routing node corresponding to the routing request; wherein, the node labels of ring routing nodes in the same position within each ring structure are the same.

[0269] The third determining module 14 is used to determine the multi-link markers between the ring routing nodes at the same position in each ring structure according to the source routing node, destination routing node and the tracing path of each ring routing node in the routing request, so as to connect them; and to perform cross-link connections according to the ring routing nodes of each layer to obtain a multi-layer octagonal network structure.

[0270] Since the embodiments of the device part correspond to the embodiments described above, please refer to the embodiments described in the method part for the embodiments of the device part, and will not be repeated here.

[0271] For a description of the construction device for a multi-layer octagonal network structure provided by the present invention, please refer to the above method embodiments. The present invention will not be described in detail here, but it has the same beneficial effects as the above-described method for constructing a multi-layer octagonal network structure.

[0272] Furthermore, the various embodiments of the path determination method based on a multi-layer octagonal network structure have been described in detail above. Based on this, the present invention also discloses a path determination apparatus based on a multi-layer octagonal network structure corresponding to the above method. Figure 20 This is a structural diagram of a path determination device based on a multi-layer octagonal network structure provided in an embodiment of the present invention. Figure 20 As shown, the device includes:

[0273] The first acquisition module 15 is used to acquire the source routing node and destination routing node corresponding to the routing request;

[0274] The second acquisition module 16 is used to acquire the node tags of the ring routing nodes corresponding to the source routing node and the destination routing node based on the multi-layer octagonal network structure; wherein, the multi-layer octagonal network structure is constructed by the steps of the above-described method for constructing the multi-layer octagonal network structure.

[0275] The fourth determining module 17 is used to determine the positional relationship of the ring structure and the network structure layer relationship of each ring routing node based on the node markings between any two ring routing nodes, and to establish preset path rules based on the positional relationship of the ring structure, the network structure layer relationship of each ring routing node, dual-link markings, multi-link markings, cross-links, and path arbitration levels; wherein, the critical value of the path arbitration level is less than or equal to the number of routing nodes traversed by the network diameter minus 2;

[0276] The fifth determination module 18 is used to determine the target path rule based on the node tags of the source routing node and the destination routing node and the preset path rule, and to determine the target path between the source routing node and the destination routing node based on the target path rule.

[0277] Since the embodiments of the device part correspond to the embodiments described above, please refer to the embodiments described in the method part for the embodiments of the device part, and will not be repeated here.

[0278] For an introduction to the path determination device based on a multi-layer octagonal network structure provided by the present invention, please refer to the above method embodiments. The present invention will not be described in detail here, but it has the same beneficial effects as the above-described path determination method based on a multi-layer octagonal network structure.

[0279] Figure 21 A structural diagram of another path determination device based on a multi-layer octagonal network structure provided in an embodiment of the present invention is shown below. Figure 21 As shown, the device includes:

[0280] Memory 21 is used to store computer programs;

[0281] Processor 22 is used to implement the steps of a path determination method based on a multi-layer octagonal network structure when executing a computer program.

[0282] The path determination device based on a multi-layer octagonal network structure provided in this embodiment can include, but is not limited to, smartphones, tablets, laptops, or desktop computers.

[0283] The processor 22 may include one or more processing cores, such as a quad-core processor or an octa-core processor. The processor 22 may be implemented using at least one of the following hardware forms: Digital Signal Processor (DSP), Field-Programmable Gate Array (FPGA), or Programmable Logic Array. The processor 22 may also include a main processor and a coprocessor. The main processor, also known as the Central Processing Unit (CPU), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, the processor 22 may integrate a Graphics Processing Unit (GPU), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, the processor 22 may also include an Artificial Intelligence (AI) processor, which is used to handle computational operations related to machine learning.

[0284] The memory 21 may include one or more computer-readable storage media, which may be non-transitory. The memory 21 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In this embodiment, the memory 21 is used to store at least the following computer program 211, which, after being loaded and executed by the processor 22, is capable of implementing the relevant steps of the path determination method based on a multi-layer octagonal network structure disclosed in any of the foregoing embodiments. In addition, the resources stored in the memory 21 may also include an operating system 212 and data 213, etc., and the storage method may be temporary storage or permanent storage. The operating system 212 may include Windows, Unix, Linux, etc. The data 213 may include, but is not limited to, the data involved in the path determination method based on a multi-layer octagonal network structure, etc.

[0285] In some embodiments, the path determination device based on a multi-layer octagonal network structure may further include a display screen 23, an input / output interface 24, a communication interface 25, a power supply 26, and a communication bus 27.

[0286] Those skilled in the field can understand, Figure 21 The structure shown does not constitute a limitation on a path determination device based on a multi-layer octagonal network structure and may include more or fewer components than shown.

[0287] The processor 22 implements the path determination method based on a multi-layer octagonal network structure provided in any of the above embodiments by calling instructions stored in the memory 21.

[0288] For an introduction to the path determination device based on a multi-layer octagonal network structure provided by the present invention, please refer to the above method embodiments. The present invention will not be described in detail here, but it has the same beneficial effects as the above-described path determination method based on a multi-layer octagonal network structure.

[0289] Furthermore, the present invention also provides a computer-readable storage medium storing a computer program, which, when executed by processor 22, implements the steps of the path determination method based on the multi-layer octagonal network structure described above.

[0290] It is understood that if the methods in the above embodiments are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and executes all or part of the steps of the methods in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0291] For an introduction to the computer-readable storage medium provided by the present invention, please refer to the above method embodiments. The present invention will not be described in detail here, but it has the same beneficial effects as the path determination method based on the multi-layer octagonal network structure described above.

[0292] Furthermore, the present invention also provides a computer program product, including a computer program / instructions that, when executed by a processor, implement the steps of a path determination method based on a multi-layer octagonal network structure.

[0293] For an introduction to the computer program product provided by the present invention, please refer to the above method embodiments. The present invention will not be described in detail here, but it has the same beneficial effects as the above-described path determination method based on a multi-layer octagonal network structure.

[0294] The foregoing has provided a detailed description of the construction of a multi-layer octagonal network structure, a path determination method, and a switch provided by this invention. The various embodiments in the specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section. It should be noted that those skilled in the art can make several improvements and modifications to this invention without departing from the principles of this invention, and these improvements and modifications also fall within the protection scope of this invention.

[0295] It should also be noted that, in this specification, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes the element.

Claims

1. A method for constructing a multi-layer octagonal network structure, characterized in that, include: The number of port node groups under each routing node in the octagonal network structure is determined based on the number of routing nodes and port nodes in a single-layer octagonal network structure. Construct a corresponding ring structure based on the number of port node groups under each routing node, and determine the corresponding ring routing node within each ring structure based on the number of port node groups; wherein, one ring routing node connects to one port node; Assign corresponding node labels to each ring structure and the ring routing nodes within each ring structure, and allocate dual links between each ring routing node within each ring structure according to the adjacent link position and cross link position of the ring routing node corresponding to the routing request; wherein, the node labels of ring routing nodes in the same position within each ring structure are the same. Based on the source routing node, destination routing node, and tracing paths of each ring routing node in the routing request, multi-link labels are determined between ring routing nodes at the same location within each ring structure for connection; and cross-link connections are made based on the ring routing nodes at each layer to obtain a multi-layer octagonal network structure.

2. The method for constructing a multi-layer octagonal network structure according to claim 1, characterized in that, The number of port node groups under each routing node in the octagonal network structure is determined based on the number of routing nodes and port nodes in a single-layer octagonal network structure, including: The number of port nodes is divided by the number of routing nodes. If the division is exact, the number of port node packets under each routing node is determined based on the quotient of the division. If the division is not exact, the number of port node packets under each routing node is determined based on the quotient and remainder of the division.

3. The method for constructing a multi-layer octagonal network structure according to claim 2, characterized in that, Assign corresponding node tags to each ring structure and the ring routing nodes within each ring structure, including: The target number of bits for binary data is determined based on the first quantity corresponding to the ring structure. Each first binary data is determined based on the binary data of the target number of bits; The first encoding information corresponding to each ring structure is determined based on each of the first binary data. The first data is set according to the number of groups of each port node; the first data is the same for port nodes at the same position under each ring structure.

4. The method for constructing a multi-layer octagonal network structure according to claim 3, characterized in that, Each first binary data is determined based on the binary data of the target number of bits, including: The first initial binary data is determined based on the binary data of the target number of bits, wherein the first first preset number of bits of the first initial binary data is zero, and the remaining second preset number of bits is 1; Starting from the first initial binary data, along the counterclockwise direction of the single-layer octagonal network structure, the first initial binary data corresponding to the current ring structure is shifted one bit to the right compared to the first initial binary data corresponding to the previous ring structure to obtain the corresponding first binary data. Correspondingly, the first encoding information is determined based on each of the first binary data, including: The high four bits of each of the first binary data are extracted and used as the first encoding information corresponding to each of the ring structures.

5. The method for constructing a multi-layer octagonal network structure according to claim 1, characterized in that, Within each ring structure, dual links are allocated between ring routing nodes based on the adjacent and cross-link positions of the corresponding ring routing nodes for each routing request, including: Assign dual links between adjacent ring routing nodes within a single ring structure; Obtain the positional relationship of the first ring structure formed by the ring structures of the first ring routing node and the second ring routing node corresponding to the routing request; The link types corresponding to adjacent link positions and cross link positions are determined based on the positional relationship of the first ring structure and the first data relationship corresponding to the first ring routing node and the second ring routing node, respectively. The dual links are labeled according to the link types corresponding to the adjacent link positions and cross link positions to obtain dual link labels.

6. The method for constructing a multi-layer octagonal network structure according to claim 1, characterized in that, Based on the source routing node, destination routing node, and tracing paths of each ring routing node in the routing request, determine the multi-link labels between ring routing nodes at the same location within each ring structure, including: Determine the source path direction and destination path direction based on the tracking path; Based on the ring routing nodes at the same position within each ring structure, adjacent ring routing nodes at the same position in adjacent ring structures are connected by adjacent edge links; wherein, the number of adjacent edge links is the number of ring routing nodes within a single ring structure plus 1; The link corresponding to the source routing node in the direction of the source path is taken as the source path adjacent link; Within the link corresponding to the destination routing node in the destination path direction, the routing is divided according to the ring routing nodes in a single ring structure to obtain the same destination path adjacent links as the ring routing nodes in a single ring structure; wherein, the number of destination path adjacent links is the same as the number of ring routing nodes in a single ring structure.

7. A path determination method based on a multi-layer octagonal network structure, characterized in that, include: Retrieve the source and destination route nodes corresponding to the route request; The node labels of the ring routing nodes corresponding to the source routing node and the destination routing node are obtained based on the multi-layer octagonal network structure; wherein, the multi-layer octagonal network structure is constructed by the steps of the construction method of the multi-layer octagonal network structure according to any one of claims 1 to 6; The positional relationship of the ring structure and the network structure layer relationship of each ring routing node are determined based on the node labels between any two ring routing nodes. Preset path rules are established based on the positional relationship of the ring structure, the network structure layer relationship of each ring routing node, dual-link labels, multi-link labels, cross-links, and path arbitration levels. The critical value of the path arbitration level is less than or equal to the number of routing nodes traversed by the network diameter minus 2. The target path rule is determined based on the node tags of the source routing node and the destination routing node and the preset path rule, and the target path between the source routing node and the destination routing node is determined based on the target path rule.

8. The path determination method based on a multi-layer octagonal network structure according to claim 7, characterized in that, The node marker includes the first encoding information corresponding to the ring structure to which the ring routing node belongs and the first data corresponding to each ring routing node; Determining the positional relationship within a ring structure based on the node markers between any two ring routing nodes includes: If the first encoding information of the ring structure to which two ring routing nodes belong is the same, then the ring structure position relationship of the two ring routing nodes is determined to be the same ring structure position relationship. If the first encoding information of the ring structures to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 1 bit or left by 7 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be that of adjacent ring structures. If the first encoding information of the ring structure to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 2 bits or left by 6 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be non-adjacent and separated by one ring structure positional relationship. If the first encoding information of the ring structure to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 3 bits or left by 5 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be non-adjacent and separated by two ring structure positions. If the first encoding information of the ring structures to which the two ring routing nodes belong is different, and the first encoding information of one ring structure is shifted left by 4 bits to obtain the first encoding information of the other ring structure, then the positional relationship between the two ring structures is determined to be a relative ring structure positional relationship.

9. The path determination method based on a multi-layer octagonal network structure according to claim 8, characterized in that, The network structure layer relationship of each ring routing node is determined based on the node labels between any two ring routing nodes, including: If the first data corresponding to two ring routing nodes is the same, then the network structure layer relationship of the two ring routing nodes is determined to be the same network structure layer. If the first data corresponding to two ring routing nodes are different, and the first data of the other ring routing node is obtained by adding or subtracting 1 from the first data of one ring routing node, then the network structure layer relationship between the two ring routing nodes is determined to be an adjacent layer network structure. If the first data corresponding to two ring routing nodes are different, and neither adding 1 nor subtracting 1 from the first data of one ring routing node can obtain the first data of the other ring routing node, then the network structure layer relationship between the two ring routing nodes is determined to be a non-adjacent layer network structure.

10. The path determination method based on a multi-layer octagonal network structure according to claim 9, characterized in that, Pre-defined path rules are established based on the positional relationships of the ring structure, the network structure layer relationships of each ring routing node, dual-link marking, multi-link marking, cross-links, and path arbitration levels, including: When the positional relationship of the ring structure is the same as that of the ring structure, and the relationship of the network structure layers is that of adjacent layers, a first preset path rule is established based on the dual link mark and the shortest path; wherein, the dual link mark is obtained by performing link marking processing on the dual links according to the link types corresponding to the adjacent link positions and the cross link positions; When the ring structure positional relationship is an adjacent ring structure positional relationship, or a non-adjacent ring structure positional relationship with a gap of one ring structure positional relationship, a second preset path rule is established based on the network structure layer relationship, dual link marking, multi link marking, and path arbitration level; wherein, the multi link marking is obtained by marking the adjacent links of the source path and the adjacent links of the destination path; When the ring structure positions are not adjacent and are separated by two ring structure positions, a third preset path rule is established based on the network structure layer relationship, dual-link marking, multi-link marking, cross-link, and path arbitration level. When the positional relationship of the ring structure is relative to that of the ring structure, a fourth preset path rule is established based on the network structure layer relationship, dual-link marking, cross-link, and path arbitration level.

11. The path determination method based on a multi-layer octagonal network structure according to claim 10, characterized in that, The first preset path rules are established based on the dual-link markers and the shortest path, including: The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node. The location of the adjacent link corresponding to the source ring routing node is used as the first target link for dual link marking; The first preset path rule is established by using the link path of the first target link as the final path.

12. The path determination method based on a multi-layer octagonal network structure according to claim 10, characterized in that, A second preset path rule is established based on network structure layer relationships, dual-link marking, multi-link marking, and path arbitration level, including: The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node. When the positional relationship of the ring structure is that of adjacent ring structures, a first sub-preset path rule is established based on the network structure layer relationship, the destination path adjacent link label corresponding to the dual link label and the multi-link label, and the path arbitration level. When the positional relationship of the ring structure is non-adjacent and separated by one ring structure positional relationship, a second sub-preset path rule is established based on the network structure layer relationship, the destination path adjacent link mark and the source path adjacent link mark corresponding to the dual link mark and the multi-link mark, as well as the path arbitration level.

13. The path determination method based on a multi-layer octagonal network structure according to claim 12, characterized in that, Based on the network structure layer relationships, the destination path adjacent link labels corresponding to dual-link and multi-link labels, and the path arbitration level, the first sub-preset path rule is established, including: The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node. When the network structure layer relationship is the same layer network structure, the link path corresponding to the source path adjacent link marked by the destination path adjacent link is taken as the first path to establish the first sub-preset path rule; wherein, the path arbitration level corresponding to the first path is level one; When the network structure layer relationship is an adjacent layer network structure, the ring routing node that belongs to the same layer network structure as the destination ring routing node and is located in the same ring structure as the source ring routing node is identified as the third ring routing node; the link path between the source ring routing node and the third ring routing node is identified as the second preset path, and the link path between the third ring routing node and the destination ring routing node is identified as the third preset path; in the second preset path, the link corresponding to the adjacent link position of the source ring routing node is identified as the first target link with dual link marking, and the link path of the first target link is identified as the second path; in the third preset path, the link path corresponding to the adjacent link marked by the adjacent link of the destination path is identified as the third path; the second path and the third path are identified as the final path to establish the first sub-preset path rule; wherein, the path arbitration level corresponding to the second path and the third path is one level. When the network structure layer relationship is a non-adjacent layer network structure, the ring routing node that belongs to the same layer network structure as the destination ring routing node and is located in the same ring structure as the source ring routing node is identified as the fourth ring routing node; the link path between the source ring routing node and the fourth ring routing node is identified as the fourth preset path, and the link path between the fourth ring routing node and the destination ring routing node is identified as the fifth preset path; in the fourth preset path, the link corresponding to the adjacent link position of the source ring routing node is identified as the first target link with dual link marking, and the link path of each first target link is identified as the fourth path; in the fifth preset path, the link path corresponding to the adjacent link marked by the adjacent link of the destination path is identified as the fifth path; the fourth path and the fifth path are identified as the final path to establish the first sub-preset path rule; wherein, the path arbitration level corresponding to the fourth path is the number of ring routing nodes traversed minus 2; the number of the fourth preset paths is at least one preset path.

14. The path determination method based on a multi-layer octagonal network structure according to claim 12, characterized in that, Based on the network structure layer relationships, the destination path adjacent link labels and source path adjacent link labels corresponding to dual-link and multi-link labels, and the path arbitration level, a second sub-preset path rule is established, including: The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node. When the network structure layer relationship is the same layer network structure, the first interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong are determined according to the path arbitration mechanism; the link path between the source ring routing node and the fifth ring routing node corresponding to the same layer network structure under the first interval ring structure is taken as the sixth preset path, and the link path corresponding to the source path adjacent link mark in the sixth preset path is taken as the sixth path; the link path between the fifth ring routing node and the destination ring routing node is taken as the seventh preset path, and the link path corresponding to the destination path adjacent link mark in the seventh preset path is taken as the seventh path; the sixth path and the seventh path are taken as the final path to establish the second sub-preset path rule; wherein, the path arbitration level corresponding to the sixth path and the seventh path is 1 respectively; When the network structure layer relationship is an adjacent layer network structure or a non-adjacent layer network structure, a sixth ring routing node in the same layer network structure as the destination ring routing node is determined within the ring structure to which the source ring routing node belongs. The link path between the source ring routing node and the sixth ring routing node is taken as the eighth preset path. In the eighth preset path, the link at the adjacent link position corresponding to the source ring routing node is taken as the first target link with dual link marking, and the link path of the first target link is taken as the eighth path. The second interval ring structure corresponding to the ring structure to which the sixth ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism. The link path between the sixth ring routing node and the seventh ring routing node corresponding to the same layer network structure under the second interval ring structure is determined. The path is designated as the ninth preset path, and the link path corresponding to the adjacent link mark of the source path is designated as the ninth path. The link path between the seventh ring routing node and the destination ring routing node is designated as the ninth preset path, and the link path corresponding to the adjacent link mark of the destination path is designated as the tenth path. The eighth path, the ninth path, and the tenth path are designated as the final path to establish a second sub-preset path rule. Wherein, when the network structure layer relationship is an adjacent layer network structure, the path arbitration level corresponding to the eighth path, the ninth path, and the tenth path is 1. When the network structure layer relationship is a non-adjacent layer network structure, the number of the eighth preset path is at least one preset path, and the path arbitration level corresponding to the final path is the number of ring routing nodes traversed minus 2.

15. The path determination method based on a multi-layer octagonal network structure according to claim 10, characterized in that, A third preset path rule is established based on network structure layer relationships, dual-link marking, multi-link marking, cross-links, and path arbitration levels, including: The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node. When the network structure layer relationship is the same layer network structure, the third interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism; the eighth ring routing node corresponding to the same layer network structure as the source ring routing node is determined in the third interval ring structure; the link path of the cross link between the source ring routing node and the eighth ring routing node is taken as the eleventh path; the link path from the eighth ring routing node to the destination ring routing node is taken as the tenth preset path, and the link path under the destination path adjacent link label corresponding to the multi-link label in the tenth preset path is taken as the twelfth path; the eleventh path and the twelfth path are taken as the final path, wherein the path arbitration level corresponding to the twelfth path is 1; When the network structure layer relationship is an adjacent layer network structure or a non-adjacent layer network structure, the third interval ring structure corresponding to the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism; the eighth ring routing node corresponding to the same layer network structure as the source ring routing node is determined in the third interval ring structure; the link path of the cross link between the source ring routing node and the eighth ring routing node is taken as the eleventh path; the ninth ring routing node in the same layer network structure as the destination ring routing node is determined in the third interval ring structure, and the link path between the eighth ring routing node and the ninth ring routing node is taken as the eleventh path. Let the path be defined as follows: in the eleventh preset path, the link at the cross-link position corresponding to the source ring routing node is taken as the second target link with dual link marking; the link path of the second target link is taken as the thirteenth path; the link path between the ninth ring routing node and the destination ring routing node is taken as the twelfth preset path; in the twelfth preset path, the link path under the adjacent link marking of the destination path corresponding to the multi-link marking is taken as the fourteenth path; the eleventh, thirteenth, and fourteenth paths are taken as the final paths to establish the third preset path rule; wherein, the path arbitration level corresponding to the thirteenth and fourteenth paths is 1; and the number of thirteenth preset paths is at least one preset path.

16. The path determination method based on a multi-layer octagonal network structure according to claim 10, characterized in that, A fourth preset path rule is established based on network structure layer relationships, dual-link marking, cross-links, and path arbitration levels, including: The ring routing node corresponding to the source routing node is taken as the source ring routing node, and the ring routing node corresponding to the destination routing node is taken as the destination ring routing node. When the network structure layer relationship is the same layer network structure, the link path of the corresponding cross link between the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism, and the link path of the cross link is used as the fifteenth path to establish the fourth preset path rule. When the network structure layer relationship is an adjacent layer network structure or a non-adjacent layer network structure, the link path of the corresponding cross link between the ring structure to which the source ring routing node and the destination ring routing node belong is determined according to the path arbitration mechanism, and the link path of the cross link is taken as the fifteenth path; in the ring structure to which the destination ring routing node belongs, the tenth ring routing node at the same layer as the source ring routing node is determined, and the link path between the tenth ring routing node and the destination ring routing node is taken as the thirteenth preset path. In the thirteenth preset path, the link at the cross link position corresponding to the source ring routing node is taken as the second target link with dual link marking; the link path of the second target link is taken as the sixteenth path, and the fifteenth path and the sixteenth path are taken as the final path to establish the fourth preset path rule; wherein, the path arbitration level corresponding to the sixteenth path is 1; and the number of the thirteenth preset paths is at least one preset path.

17. The path determination method based on a multi-layer octagonal network structure according to claim 7, characterized in that, After determining the target path, the method further includes: When there are multiple path requests at the same time, and all of them pass through the adjacent links between two ring routing nodes, determine whether the target link paths under the multi-link tags corresponding to the multiple path requests are the same. If they are the same, routing is performed according to the time order in which multiple path requests arrive at the target link path.

18. A switch, characterized in that, It includes each switch port; wherein, each switch port is connected to the other through the steps of the path determination method based on the multi-layer octagonal network structure as described in any one of claims 7 to 17, so as to perform communication processing on the devices connected to each switch port.

19. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the path determination method based on a multi-layer octagonal network structure as described in any one of claims 7 to 17.

20. A computer program product comprising a computer program / instructions, characterized in that, When the computer program / instruction is executed by the processor, it implements the steps of the path determination method based on a multi-layer octagonal network structure as described in any one of claims 7 to 17.

Citation Information

Patent Citations

  • Processing equipment communication interconnection method and device, computer equipment and storage medium

    CN115297065A

  • Hybrid topology network, three-dimensional topology network and switching chip

    CN118827399A