A communication method and apparatus based on a folded hypercube network
By constructing an edge-disjoint spanning tree in an n-dimensional folded hypercube network, the problems of insufficient communication fault tolerance and security in high-dimensional folded hypercube networks are solved, and efficient communication path construction and man-in-the-middle attack defense are achieved.
Patent Information
- Application Number
- CN202411776790.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-05
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2044-12-05
AI Technical Summary
Existing technologies struggle to effectively construct edge-disjoint spanning trees in high-dimensional folded hypercube networks, resulting in insufficient communication fault tolerance and security, making them particularly vulnerable to man-in-the-middle attacks.
By obtaining two edge-disjoint spanning trees and unused paths in a 4D folded hypercube network, and combining the first and second construction methods, a target number of edge-disjoint spanning trees in an n-D folded hypercube network are recursively constructed to ensure that the communication paths between network nodes do not intersect. This method is applied to n-D folded hypercube networks.
It realizes the construction of a spanning tree with all edges not intersecting in an n-dimensional folded hypercube network, which improves the fault tolerance of communication and the security of information transmission, and can resist man-in-the-middle attacks.
Smart Images

Figure CN119814500B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of network of cloud computing, and particularly relates to a communication method and device based on folded hypercube network. BACKGROUND
[0002] Hypercube network as a widely known, universal process topology network, has a wide range of applications in computer science, sociology, medicine, network security and other fields. The research on the connectivity, Hamiltonicity, and the construction scheme of independent spanning tree of hypercube network and its variant network can further explore the advantages of the network to improve the utilization of the network.
[0003] Folded hypercube network as an optimized topology structure of hypercube network, has many advantages compared with hypercube network, such as lower congestion degree of messages, lower communication delay, higher communication performance. On this basis, the fault tolerance and security of communication in folded hypercube network and the distributed algorithm against man-in-the-middle attack can be improved through further research on folded hypercube network. SUMMARY
[0004] In view of the above problems, a communication method and device based on folded hypercube network are provided to overcome the above problems or at least partially solve the above problems, comprising:
[0005] A communication method based on folded hypercube network is applied to an n-dimensional folded hypercube network, the n-dimensional folded hypercube network includes 2 n Network nodes, the acyclic paths connecting all network nodes in the n-dimensional folded hypercube network form spanning trees, the paths between two adjacent network nodes form edge paths, and the unused multiple edge paths in all edge-disjoint spanning trees in the n-dimensional folded hypercube network form unused paths. The method comprises:
[0006] Obtaining two edge-disjoint spanning trees and unused paths in a four-dimensional folded hypercube network;
[0007] When n is greater than 4, based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, the target number of edge-disjoint spanning trees in the nD folded hypercube network is determined using a first construction method and a second construction method. Specifically, the first construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+1D folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the mD folded hypercube network; the second construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+2D folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the mD folded hypercube network, where m is an even number greater than or equal to 4 and less than or equal to n.
[0008] Complete the 2 by generating a non-intersecting spanning tree with the target number of edges. n Communication between any two of the network nodes.
[0009] Optionally, in the n-dimensional folded hypercube network, 2 n Each network node is represented by a binary string of length n.
[0010] Optionally, the target number is a value rounded up to n / 2, and the number of network nodes in the unused path is a value rounded up to (n+1) / 2.
[0011] Optionally, when n is odd, the step of determining the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, using a first construction method and a second construction method, includes:
[0012] Based on the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, the second construction method is executed recursively to determine the n-1 / 2 edge-disjoint spanning trees and unused paths in the n-1D folded hypercube network.
[0013] Based on the n-1 / 2 edge-disjoint spanning trees and unused paths in the n-1 dimensional folded hypercube network, the first construction method is executed to determine the (n+1) / 2 edge-disjoint spanning trees in the n-dimensional folded hypercube network.
[0014] Optionally, when n is even, the step of determining the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, using a first construction method and a second construction method, includes:
[0015] Based on the two non-intersecting spanning trees and unused paths in the 4D folded hypercube network, the second construction method is executed recursively to determine the n / 2 non-intersecting spanning trees and unused paths in the nD folded hypercube network.
[0016] Optionally, performing the first construction method includes:
[0017] Obtain the isomorphic first and second m-dimensional folded hypercube networks, as well as the m / 2 edge-disjoint spanning trees and the first and second unused paths in the first and second m-dimensional folded hypercube networks. Add a highest bit to the binary string corresponding to the network node in the first and second m-dimensional folded hypercube networks respectively, setting it to 0 and 1 respectively.
[0018] By connecting the first m / 2-2 network nodes at the same position in the first and second unused paths, the m / 2-1 edge-disjoint spanning trees in the m / 2 edge-disjoint spanning trees in the first and second m-dimensional folded hypercube networks are respectively connected to obtain the first m / 2-1 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network.
[0019] By using the m-th edge of each network node in the m / 2-th edge-disjoint spanning tree of the first m-dimensional folded hypercube network, the network nodes in the m / 2-th edge-disjoint spanning tree of the second m-dimensional folded hypercube network are connected to the m / 2-th edge-disjoint spanning tree of the first m-dimensional folded hypercube network. Furthermore, by using the first m edge paths in the second unused path, the unconnected network nodes in the m / 2-th edge-disjoint spanning tree of the second m-dimensional folded hypercube network are connected to the m / 2-th edge-disjoint spanning tree of the first m-dimensional folded hypercube network, thus obtaining the m / 2-th edge-disjoint spanning tree of the m+1-dimensional folded hypercube network. Here, the m-th edge of a network node is the edge path formed by the network node and another network node, and the binary strings corresponding to the network node and the other network node differ only at the m-th bit.
[0020] Take the complement of the binary string corresponding to each network node in the m / 2th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to obtain the corresponding network node in the first m-dimensional folded hypercube network, and connect it to the m / 2th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to obtain the (m+2) / 2th edge-disjoint spanning tree of the m+1-dimensional folded hypercube network.
[0021] Optionally, performing the second construction method includes:
[0022] Obtain isomorphic third, fourth, fifth, and sixth m-dimensional folded hypercube networks, as well as m / 2 edge-disjoint spanning trees and unused paths in the third, fourth, fifth, and sixth m-dimensional folded hypercube networks. Add two highest bits to the binary strings corresponding to the network nodes in the third, fourth, fifth, and sixth m-dimensional folded hypercube networks respectively, setting them to 00, 10, 11, and 01.
[0023] The edge paths formed by connecting the first m / 2-2 network nodes at the same position in the third and fourth unused paths are respectively connected to the m / 2 edge-disjoint spanning trees in the third and fourth m-dimensional folded hypercube networks, which are isomorphic to the m / 2 edge-disjoint spanning trees. The edge paths formed by connecting the first m / 2-2 network nodes at the same position in the fourth and fifth unused paths are respectively connected to the m / 2 edge-disjoint spanning trees in the fourth and fifth m-dimensional folded hypercube networks, which are isomorphic to the m / 2 edge-disjoint spanning trees. The edge paths formed by connecting the first m / 2-1 network nodes at the same position in the fifth and sixth unused paths are respectively connected to the m / 2 edge-disjoint spanning trees in the fifth and sixth m-dimensional folded hypercube networks, thus obtaining the first m / 2-1 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network.
[0024] By using the edge path formed by the m / 2th network node at the same position in the fourth and fifth unused paths, connect the m / 2th edge-disjoint spanning trees of the m / 2th edge-disjoint spanning trees in the fourth and fifth m-dimensional folded hypercube networks. By using the edge path formed by the m / 2th network node at the same position in the fifth and sixth unused paths, connect the m / 2th edge-disjoint spanning trees of the m / 2th edge-disjoint spanning trees in the fifth and sixth m-dimensional folded hypercube networks. By using the m-dimensional edges of all network nodes in the third m-dimensional folded hypercube network, connect all network nodes in the third m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree in the fourth m-dimensional folded hypercube network, thus obtaining the m / 2th edge-disjoint spanning tree in the m+2-dimensional folded hypercube network. Here, the m-th edge of a network node is the edge path formed by the network node and another network node, and the binary strings corresponding to the network node and the other network node differ only at the m-th bit.
[0025] By using the (m+1)th dimension edge of each network node in the (m / 2)th edge-disjoint spanning tree of the third m-dimensional folded hypercube network, the network nodes in the (m / 2)th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network are connected to the (m / 2)th edge-disjoint spanning tree of the third m-dimensional folded hypercube network. Furthermore, by using all edge paths in the fourth unused path, the unconnected network nodes in the (m / 2)th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network are connected to the (m / 2)th edge-disjoint spanning tree of the third m-dimensional folded hypercube network.
[0026] By using the m-th edge of each network node in the m / 2-th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network, the network nodes in the m / 2-th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network are connected to the m / 2-th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network. Furthermore, by using all edge paths in the fourth unused path, the unconnected network nodes in the m / 2-th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network are connected to the m / 2-th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network.
[0027] By using the (m+1)th dimension edge of each network node in the (m / 2)th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network, the network nodes in the (m / 2)th edge-disjoint spanning tree of the sixth m-dimensional folded hypercube network are connected to the (m / 2)th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network. Furthermore, by using all edge paths in the sixth unused path, the unconnected network nodes in the (m / 2)th edge-disjoint spanning tree of the sixth m-dimensional folded hypercube network are connected to the (m / 2)th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network, thus obtaining the (m+2) / 2nd edge-disjoint spanning tree in the (m+2)-dimensional folded hypercube network.
[0028] Based on the (m+2) / 2 edge-disjoint spanning trees in the m+2 dimensional folded hypercube network, the unused paths in the m+2 dimensional folded hypercube network are obtained.
[0029] A communication device based on a folded hypercube network is applied to an n-dimensional folded hypercube network, wherein the n-dimensional folded hypercube network includes 2 n The device comprises: a network node, a spanning tree formed by acyclic paths connecting all network nodes in the n-dimensional folded hypercube network, an edge path formed by paths between two adjacent network nodes, and unused multiple edge paths in the non-intersecting spanning tree of the n-dimensional folded hypercube network forming unused paths, where n is an integer greater than or equal to 4.
[0030] The 4D spanning tree acquisition module is used to obtain the non-intersecting spanning trees and unused paths of two edges in a 4D folded hypercube network.
[0031] An n-dimensional spanning tree construction module is used to determine the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network based on two edge-disjoint spanning trees and unused paths in the 4-dimensional folded hypercube network, using a first construction method and a second construction method, when n is greater than 4. Specifically, the first construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network; the second construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network, where m is an even number greater than or equal to 4 and less than or equal to n.
[0032] The path module is used to complete the 2nd step by generating a non-intersecting spanning tree with the target number of edges. n Communication between any two of the network nodes.
[0033] An electronic device includes a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program, when executed by the processor, implements the communication method based on a folded hypercube network as described above.
[0034] A readable storage medium storing a computer program that, when executed by a processor, implements the communication method based on a folded hypercube network as described above.
[0035] The embodiments of the present invention have the following advantages:
[0036] In an embodiment of the present invention, by obtaining two edge-disjoint spanning trees and unused paths in a 4D folded hypercube network, when n is greater than 4, based on the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, a target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network are determined using a first construction method and a second construction method. The first construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network. The second construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network, where m is an even number greater than or equal to 4 and less than or equal to n. The target number of edge-disjoint spanning trees is used to complete the 2 n Communication between any two network nodes in the n-dimensional folded hypercube network enables the construction of a non-intersecting spanning tree in the network, allowing network nodes to communicate through multiple paths. This improves the fault tolerance of communication in the folded hypercube network and the security of information transmission. It can also be applied to distributed algorithms that resist man-in-the-middle attacks to identify and locate the occurrence of such attacks. Attached Figure Description
[0037] To more clearly illustrate the technical solution of the present invention, the accompanying drawings used in the description of the present invention will be briefly introduced below. Obviously, the accompanying 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.
[0038] Figure 1 This is the topology of a three-dimensional hypercube network provided in some embodiments of the present invention;
[0039] Figure 2 This is the topology of a three-dimensional folded hypercube network provided in some embodiments of the present invention;
[0040] Figure 3 This is a flowchart illustrating the steps of a communication method based on a folded hypercube network provided in some embodiments of the present invention;
[0041] Figure 4 This is an odd number provided in some embodiments of the present invention. A schematic diagram illustrating the construction steps of a spanning tree with non-intersecting edges;
[0042] Figure 5 This is a structural block diagram of a communication method device based on a folded hypercube network provided in some embodiments of the present invention. Detailed Implementation
[0043] To make the above-mentioned objects, features, and advantages of the present invention more apparent and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without inventive effort are within the scope of protection of the present invention.
[0044] Folded hypercube networks, as an optimized topology of hypercubes, have several advantages: (1) In the broadcasting field, communication between any two vertices (i.e., network nodes) in an n-dimensional hypercube network requires at most n hops, while communication between any two vertices in an n-dimensional folded hypercube network requires at most only n hops. (n / 2 rounded up) jump, so its communication / broadcast time can be reduced by 50%; (2) In terms of communication delay, the average distance between two vertices in the n-dimensional folded hypercube network is significantly smaller than that in the n-dimensional hypercube network, and the message density is also smaller than that in the n-dimensional hypercube network. Therefore, in the n-dimensional folded hypercube network When communicating, message congestion is lower, communication latency is lower, and communication performance is higher.
[0045] In recent years, the problem of finding edge-disjoint spanning trees (EDSTs) in interconnected networks has become particularly common. In addition to its theoretical significance, the solution to this problem can be applied to many practical fields. If there is a construction scheme for multiple edge-disjoint spanning trees in an n-dimensional folded hypercube network, then the paths in this edge-disjoint spanning tree can be applied to: (1) fault-tolerant broadcasting: communication can still be normal in the n edge-disjoint paths between two vertices even if there are n-1 faulty edges, and the same applies to broadcasting; (2) secure information distribution: each of the n edge-disjoint paths between two vertices is responsible for 1 / n copies of the information, so only the starting point and the ending point can obtain the complete information, thus ensuring the security of the information; (3) distributed algorithms to resist man-in-the-middle attacks, etc.
[0046] Existing research has shown that 3D Folded Hypercube Network At most can be constructed Trees are formed when the edges of the trees do not intersect.
[0047] For folded hypercube networks, when Dimensions of folded hypercube networks At time 1, there exists a non-intersecting spanning tree in the folded hypercube network. Folded Hypercube Network In case 3, the folded hypercube network contains two non-intersecting spanning trees. Constructing the structure in these two cases is relatively easy and can be done manually. However, for... In such cases, the structure is very complex, and it is difficult to obtain the corresponding number of edge-disjoint spanning trees directly by manual construction.
[0048] In one embodiment of the present invention, for the purpose of In this case, it can be based on 4D It is constructed for communication between network nodes in an n-dimensional folded hypercube network.
[0049] This application provides a communication method based on a folded hypercube network, applied to an n-dimensional folded hypercube network, wherein the n-dimensional folded hypercube network includes 2 n A network node is formed by connecting all network nodes in the n-dimensional folded hypercube network with acyclic paths to form a spanning tree. The path between two adjacent network nodes forms an edge path. The multiple unused edge paths in the spanning tree of the n-dimensional folded hypercube network with all edges not intersecting form an unused path.
[0050] like Figure 3 As shown, the communication method based on folded hypercube networks may specifically include the following steps:
[0051] Step 301: Obtain the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network.
[0052] Based on the above explanation, we can first obtain the two non-intersecting spanning trees and unused paths in the 4D folded hypercube network by manually constructing them.
[0053] In some embodiments of the present invention, the n-dimensional folded hypercube network has 2 n Each network node is represented by a binary string of length n.
[0054] To facilitate the description and understanding of the scheme in this invention, for any vertex of the n-dimensional folded hypercube network (i.e., n-dimensional...) Any network node x in the n-dimensional folded hypercube network can be represented by a binary string of length n (i.e., the n-dimensional folded hypercube network includes 2...). n (a number of network nodes), that is: ; take the complement of vertex x Invert each bit of the binary string representing the vertex, that is: .
[0055] vertex The path between them is P, ( ) represents a vertex With vertex An edge path (i.e., the path between two adjacent network nodes) is formed by connecting different edge paths. A path must ensure that no two vertices are identical; therefore, no two edges in a path are the same. A path of length n can be represented as: .
[0056] It should also be noted that for n-dimensional folded hypercube networks... n-dimensional hypercube network Each vertex in the string can be a binary string of length n, where every two connected vertices differ by only one bit, such as... Figure 1 As shown, a three-dimensional hypercube network is presented. The topology of an n-dimensional folded hypercube network. It is an n-dimensional hypercube network A variant structure, based on its topological structure, further connects every two complementary vertices to form a structure, such as... Figure 2 As shown, a three-dimensional folded hypercube network is presented. The topology.
[0057] For n-dimensional folded hypercube networks subgraph Given a binary string a of length less than n, All connected vertices with the prefix 'a' can form The subnetwork, making This indicates the topology of the subnetwork.
[0058] The edges do not intersect. and Let (x, y) be two paths in a network. If an edge path is formed in the path, then the path... If two paths do not contain edges (x, y) and (y, x), meaning they do not have any paths with the same edges, then they are called... and The edges do not intersect.
[0059] A spanning tree is formed by connecting all nodes in an n-dimensional folded hypercube network with acyclic paths. An edge-non-intersecting spanning tree is defined as follows: and Let be two spanning trees in a certain folded hypercube network, if the edge (x,y) is If one edge is in the tree, then... If two trees do not contain edges (x, y) and (y, x), meaning they have no identical edges, then they are called trees with identical edges. and It is a spanning tree in the network where two edges do not intersect.
[0060] Unused paths are formed by multiple unused edge paths in the non-intersecting spanning tree of all edges in an n-dimensional folded hypercube network.
[0061] Specifically, a 4D folded hypercube Given two edge-disjoint spanning trees and an unused path P consisting of two unused edges transformed into paths, the vertex set, edge path set, and unused path P in these two edge-disjoint spanning trees can be expressed as follows:
[0062] The vertex set of a spanning tree where the edges of two trees do not intersect:
[0063] {0,1,…,15}, {0,1,…,15};
[0064] The set of edge paths in the spanning tree of two trees whose edges do not intersect: {(0,2),(1,5),(2,3),(2,10),(4,6),(5,7),(5,13),(6,14),(8,10),(8,9),(8,12),(11,15),(12,13),(13,15),(14,15)}
[0065] {(0,4),(0,8),(1,9),(2,6),(3,7),(3,11),(4,5),(4,12),(6,7),(7,15),(9,11),(9,13),(10,11),(10,14),(12,14)};
[0066] Unused path P:
[0067] 3-1-0.
[0068] Step 302: When n is greater than 4, based on the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, determine the target number of edge-disjoint spanning trees in the nD folded hypercube network using the first construction method and the second construction method; wherein, the first construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+1D folded hypercube network using the m / 2 edge-disjoint spanning trees and unused paths in the mD folded hypercube network, and the second construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+2D folded hypercube network using the m / 2 edge-disjoint spanning trees and unused paths in the mD folded hypercube network, where m is an even number greater than or equal to 4 and less than or equal to n.
[0069] When n is greater than 4, that is, when the present invention is aimed at The situation.
[0070] After obtaining two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network can be determined based on the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, using the first construction method and the second construction method.
[0071] The first construction method can be used to determine the (m+2) / 2 edge-disjoint spanning trees in an m+1 dimensional folded hypercube network by using the m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network.
[0072] The second construction method can be used to determine the (m+2) / 2 edge-disjoint spanning trees in an m+2 folded hypercube network by using the m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network.
[0073] Where m is an even number greater than or equal to 4 and less than or equal to n.
[0074] In some embodiments of the present invention, the target number is a value rounded up to n / 2, and the number of network nodes in the unused path is a value rounded up to (n+1) / 2.
[0075] That is, the present invention is aimed at In this case, the target quantity is the value obtained by rounding up n / 2, which is used to construct... 3D Folded Hypercube Network At most constructible The number of non-intersecting edges in a tree is the target number. 3D Folded Hypercube Network This can be used to construct the maximum number of non-intersecting spanning trees. The number of network nodes in the unused path is the integer part of (n+1) / 2.
[0076] In some embodiments of the present invention, when n is odd, the step of determining the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, through a first construction method and a second construction method, includes:
[0077] Sub-step 11: Based on the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, the second construction method is executed recursively to determine the n-1 / 2 edge-disjoint spanning trees and unused paths in the n-1D folded hypercube network.
[0078] In the 3D Folded Hypercube Network When constructing edge-disjoint spanning trees, if n is odd, the second construction method can be recursively executed based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network to determine n-1 / 2 (i.e., the n-1 dimension target number) edge-disjoint spanning trees and unused paths in the n-1 dimension folded hypercube network.
[0079] Sub-step 12: Based on the n-1 / 2 edge-disjoint spanning trees and unused paths in the n-1 dimensional folded hypercube network, execute the first construction method to determine the (n+1) / 2 edge-disjoint spanning trees in the n-dimensional folded hypercube network.
[0080] After determining the n-1 / 2 edge-disjoint spanning trees and unused paths in the n-1 dimensional folded hypercube network, the first construction method can be used to determine the (n+1) / 2 (i.e., the n-dimensional target number) edge-disjoint spanning trees in the n-1 dimensional folded hypercube network.
[0081] In some embodiments of the present invention, when n is even, determining the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, using a first construction method and a second construction method, includes:
[0082] Based on the two non-intersecting spanning trees and unused paths in the 4D folded hypercube network, the second construction method is executed recursively to determine the n / 2 non-intersecting spanning trees and unused paths in the nD folded hypercube network.
[0083] In the 3D Folded Hypercube Network When constructing edge-disjoint spanning trees, if n is even, the second construction method can be recursively executed based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network to determine n / 2 (i.e. n-dimensional target number) edge-disjoint spanning trees and unused paths in the n-D folded hypercube network.
[0084] As an example, based on the two-edge non-intersecting spanning trees and unused paths in a 4D folded hypercube network, by executing the second construction method, we obtain the target number of two-edge non-intersecting spanning trees and unused paths in a 6D folded hypercube network. Then, based on the target number of two-edge non-intersecting spanning trees and unused paths in the 6D folded hypercube network, by executing the second construction method, we can obtain the target number of two-edge non-intersecting spanning trees and unused paths in an 8D folded hypercube network. Therefore, by recursively executing the second construction method, based on the two-edge non-intersecting spanning trees and unused paths in a 4D folded hypercube network, we can obtain the target number of two-edge non-intersecting spanning trees in an n-dimensional folded hypercube network.
[0085] In some embodiments of the present invention, performing the first construction method includes:
[0086] Sub-step 21: Obtain the isomorphic first and second m-dimensional folded hypercube networks, as well as the m / 2 edge-disjoint spanning trees and the first and second unused paths in the first and second m-dimensional folded hypercube networks. Then, add a highest bit to the binary string corresponding to the network node in the first and second m-dimensional folded hypercube networks, setting it to 0 and 1 respectively.
[0087] Obtain isomorphic first m-dimensional folded hypercube networks, second m-dimensional folded hypercube networks, m / 2 edge-disjoint spanning trees and first used paths in the first m-dimensional folded hypercube network, and m / 2 edge-disjoint spanning trees and second unused paths in the second m-dimensional folded hypercube network.
[0088] By adding a highest bit to the binary strings corresponding to the network nodes in the first m-dimensional folded hypercube network and the second m-dimensional folded hypercube network, respectively, and setting it to 0 and 1, the topologies corresponding to the isomorphic first m-dimensional folded hypercube network and the second m-dimensional folded hypercube network can be regarded as two isomorphic subgraphs of the m+1-dimensional folded hypercube network, i.e., A: And B: .
[0089] Subgraphs A and B are isomorphic. Subgraph A yields m / 2 edge-disjoint spanning trees, and subgraph B also yields m / 2 edge-disjoint spanning trees. Furthermore, the trees in subgraph B are isomorphic to the trees in subgraph A. Therefore, a specific scheme can be found to... and By connecting any two trees in the tree, you can obtain... In Non-intersecting spanning trees (EDSTs).
[0090] Sub-step 22: By connecting the first m / 2-2 network nodes at the same position in the first and second unused paths, connect the m / 2-1 edge-disjoint spanning trees that are isomorphic in the m / 2 edge-disjoint spanning trees in the first and second m-dimensional folded hypercube networks respectively, to obtain the first m / 2-1 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network.
[0091] By following the previous step, we can obtain Existing in Edge-disjoint spanning trees (EDSTs) (complex form of EDSTs): This is the floor of (m+1) / 2, i.e., m / 2. In Edge-disjoint spanning trees (EDSTs): And besides middle Outside of the edges contained in the EDST tree, The remaining edge paths can form an unused path. : That is, the first unused path; similarly, except middle Outside of the edges contained in the EDST tree, An unused path : This refers to the second unused path.
[0092] Then, the edge paths formed by connecting the first m / 2-2 network nodes at the same position in the first used path and the second unused path can be used to connect the m / 2-1 edge-disjoint spanning trees in the first m-dimensional folded hypercube network and the second m-dimensional folded hypercube network, respectively, to obtain the first m / 2-1 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network.
[0093] Specifically, it can make ,Depend on connect and It can be constructed ,Right now , That way, it can be completed. The front of the middle By constructing EDSTs, we can obtain the first m / 2-1 edge-disjoint spanning trees in the m+1 dimensional folded hypercube network.
[0094] Sub-step 23: Using the m-th edge of each network node in the m / 2-th edge-disjoint spanning tree of the first m-dimensional folded hypercube network, connect the network node in the m / 2-th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to the m / 2-th edge-disjoint spanning tree of the first m-dimensional folded hypercube network. Then, using the first m edge paths in the second unused path, connect the unconnected network nodes in the m / 2-th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to the m / 2-th edge-disjoint spanning tree of the first m-dimensional folded hypercube network, thus obtaining the m / 2-th edge-disjoint spanning tree of the m+1-dimensional folded hypercube network. Here, the m-th edge of a network node is the edge path formed by the network node and another network node, and the binary strings corresponding to the network node and the other network node differ only at the m-th bit.
[0095] First, it should be noted that if the binary strings of vertex (i.e., network node) x and vertex y differ only in the i-th bit, then (x, y) is called the i-th dimension edge of x.
[0096] Furthermore, for the m / 2th edge-disjoint spanning tree in the m+1 dimensional folded hypercube network, the network nodes in the m / 2th edge-disjoint spanning tree in the second m dimensional folded hypercube network can be connected to the m / 2th edge-disjoint spanning tree in the first m dimensional folded hypercube network through the m-th dimensional edge of each network node in the m / 2th edge-disjoint spanning tree in the first m dimensional folded hypercube network.
[0097] Then, through the first m edge paths in the second unused path, connect the unconnected network nodes in the m / 2 edge-disjoint spanning tree of the second m-dimensional folded hypercube network to the m / 2 edge-disjoint spanning tree of the first m-dimensional folded hypercube network, so as to obtain the m / 2 edge-disjoint spanning tree of the m+1-dimensional folded hypercube network.
[0098] Specifically, The first in The first EDST includes Spanning tree in Then it can be done The m-dimensional edge of each vertex will The vertices in the middle are connected to Above, and because of the vertex The m-th dimension edge is already in front It is used in EDSTs, therefore Some vertices are still not connected. Finally, you can use a path. The edge in Connect the remaining vertices in B to Among them At this point, The construction of the m / 2th EDSTs is complete.
[0099] Sub-step 24: Take the complement of the binary string corresponding to each network node in the m / 2th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to obtain the corresponding network node in the first m-dimensional folded hypercube network, and connect it to the m / 2th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to obtain the (m+2) / 2th edge-disjoint spanning tree of the m+1-dimensional folded hypercube network.
[0100] Specifically, for The last non-intersecting spanning tree in We can take the complement of the binary string corresponding to each network node in the m / 2th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to obtain the corresponding network node in the first m-dimensional folded hypercube network, and connect it to the m / 2th edge-disjoint spanning tree of the second m-dimensional folded hypercube network, that is, Take the complement of each vertex in the array and connect it to the array. In order to obtain The last non-intersecting spanning tree in .
[0101] Based on the above steps, the following is completed: Figure 4 The first construction method shown yields (m+2) / 2 edge-disjoint spanning trees in an m+1 dimensional folded hypercube network.
[0102] In some embodiments of the present invention, performing the second construction method includes:
[0103] Sub-step 31: Obtain the isomorphic third, fourth, fifth, and sixth m-dimensional folded hypercube networks, as well as the m / 2 edge-disjoint spanning trees and the third, fourth, fifth, and sixth unused paths in the third, fourth, fifth, and sixth m-dimensional folded hypercube networks. Then, add two highest bits to the binary strings corresponding to the network nodes in the third, fourth, fifth, and sixth m-dimensional folded hypercube networks, setting them to 00, 10, 11, and 01 respectively.
[0104] Obtain isomorphic third m-dimensional folded hypercube networks, fourth m-dimensional folded hypercube networks, fifth m-dimensional folded hypercube networks, and sixth m-dimensional folded hypercube networks, as well as m / 2 edge-disjoint spanning trees and third, fourth, fifth, and sixth unused paths in the third m-dimensional folded hypercube networks, fourth m-dimensional folded hypercube networks, fifth m-dimensional folded hypercube networks, and sixth m-dimensional folded hypercube networks.
[0105] By adding two highest bits to the binary strings corresponding to the network nodes in the third, fourth, fifth, and sixth m-dimensional folded hypercube networks, respectively, setting them to 00, 10, 11, and 01, the topologies of these isomorphic networks can be used as four isomorphic subgraphs of the m+2 dimensional folded hypercube network, i.e., A: .
[0106] The four subgraphs A, B, C, and D are isomorphic. Subgraph A yields m / 2 edge-disjoint spanning trees, and subgraphs B, C, and D also yield m / 2 edge-disjoint spanning trees. Furthermore, the trees in subgraphs B, C, and D are isomorphic to the trees in subgraph A. Therefore, a specific scheme can be found to... and By connecting any two trees in the tree, you can obtain... In Non-intersecting spanning trees (EDSTs).
[0107] Sub-step 32 involves connecting the first m / 2-2 network nodes at the same position in the third and fourth unused paths to form the edge paths, which in turn connect the m / 2 edge-disjoint spanning trees in the third and fourth m-dimensional folded hypercube networks to the m / 2 edge-disjoint spanning trees. Similarly, connecting the first m / 2-2 network nodes at the same position in the fourth and fifth unused paths to form the edge paths, which in turn connect the m / 2 edge-disjoint spanning trees in the fourth and fifth m-dimensional folded hypercube networks to the m / 2 edge-disjoint spanning trees. Finally, connecting the first m / 2-1 edge-disjoint spanning trees in the m / 2 edge-disjoint spanning trees in the fifth and sixth unused paths to the m / 2 edge-disjoint spanning trees, the resulting m+2-1 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network are obtained.
[0108] By following the previous step, we can obtain Existing in Edge-disjoint spanning trees (EDSTs) (complex form of EDSTs): , In Edge-disjoint spanning trees (EDSTs): And besides middle Outside of the edges contained in the EDST tree, The remaining edge paths can form an unused path. : That is, the first unused path; similarly, except middle Outside of the edges contained in the EDST tree, An unused path : This refers to the second unused path. Similarly, we can also obtain... Path in and .
[0109] Then, the edge paths formed by connecting the first m / 2-2 network nodes at the same position in the third unused path and the fourth unused path can be used to connect the m / 2 edge-disjoint spanning trees in the third unused path and the fourth m-dimensional folded hypercube network, respectively, to the m / 2 edge-disjoint spanning trees.
[0110] The edge paths formed by connecting the first m / 2-2 network nodes at the same position in the fourth unused path and the fifth unused path can respectively connect the m / 2 edge-disjoint spanning trees in the fourth unused path and the fifth m-dimensional folded hypercube network to the m / 2 edge-disjoint spanning trees.
[0111] Then, the edge paths formed by connecting the first m / 2-1 network nodes at the same position in the fifth unused path and the sixth unused path can be used to connect the m / 2 edge-disjoint spanning trees in the fifth unused path and the sixth m-dimensional folded hypercube network, respectively, to obtain the first m / 2-1 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network.
[0112] Specifically, let ,Depend on connect and ,Depend on connect and ,Depend on connect and It can be constructed ,Right now , At this point, The front of the middle The construction of each EDST is complete.
[0113] Sub-step 33 involves connecting the m / 2th edge-disjoint spanning trees of the m / 2th edge-disjoint spanning trees in the fourth and fifth m-dimensional folded hypercube networks using the edge paths formed by the m / 2th network nodes at the same position in the fourth and fifth unused paths; connecting the m / 2th edge-disjoint spanning trees of the m / 2th edge-disjoint spanning trees in the fifth and sixth m-dimensional folded hypercube networks using the edge paths formed by the m / 2th network nodes at the same position in the fifth and sixth unused paths; and connecting all network nodes in the third m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree in the fourth m-dimensional folded hypercube network using the m-dimensional edges of all network nodes in the third m-dimensional folded hypercube network, thereby obtaining the m / 2th edge-disjoint spanning tree in the m+2-dimensional folded hypercube network. Here, the m-th edge of a network node is the edge path formed by the network node and another network node, and the binary strings corresponding to the network node and the other network node differ only at the m-th position.
[0114] First, it should be noted that vertices (i.e., network nodes) If the binary strings representing vertices x and y differ only at the i-th bit, meaning y is the i-th edge of x, then we use... Subgraph The m-th dimension edge of all vertices in the equation.
[0115] Furthermore, for the (m+2) / 2th edge-disjoint spanning tree in the m+2 dimensional folded hypercube network, firstly, the edge path formed by the m / 2th network node at the same position in the fourth unused path and the fifth unused path can be used to connect the m / 2th edge-disjoint spanning tree isomorphic in the m / 2th edge-disjoint spanning tree in the fourth unused path and the fifth m-dimensional folded hypercube network.
[0116] Secondly, the m / 2th edge-disjoint spanning tree of the m / 2th edge-disjoint spanning tree in the m / 2th edge-disjoint spanning tree of the fifth unused path and the sixth unused path can be connected by the edge path formed by the m / 2th edge-disjoint spanning tree of the m / 2th edge-disjoint spanning tree in the m-dimensional folded hypercube network of the fifth unused path and the sixth unused path.
[0117] Then, by using the m-dimensional edges of all network nodes in the third m-dimensional folded hypercube network, all network nodes in the third m-dimensional folded hypercube network can be connected to the m / 2th edge-disjoint spanning tree in the fourth m-dimensional folded hypercube network, so as to obtain the m / 2th edge-disjoint spanning tree in the m+2-dimensional folded hypercube network.
[0118] Specifically, The m / 2th edge-disjoint spanning tree (EDST) in the first part contains The three subgraphs Three spanning trees and Then you can use the edge Connection, via edges and Connect. Finally, you can use... Subgraph All vertices in the middle are connected to Middle. At this point, The first in The construction of each EDST is complete.
[0119] Sub-step 34: Connect the network nodes in the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the third m-dimensional folded hypercube network through the m+1th dimension edge of each network node in the m / 2th edge-disjoint spanning tree of the third m-dimensional folded hypercube network; and connect the unconnected network nodes in the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the third m-dimensional folded hypercube network through all edge paths in the fourth unused path.
[0120] The (m+2) / 2th edge-disjoint spanning tree in the m+2 dimensional folded hypercube network, i.e. the last edge-disjoint spanning tree, can be constructed using this step and subsequent sub-steps 35 and 36.
[0121] By using the (m+1)th dimension edge of each network node in the (m / 2)th edge-disjoint spanning tree of the third m-dimensional folded hypercube network, network nodes in the (m / 2)th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network can be connected to the (m / 2)th edge-disjoint spanning tree of the third m-dimensional folded hypercube network. Furthermore, by using all edge paths in the fourth unused path, unconnected network nodes in the (m / 2)th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network can be connected to the (m / 2)th edge-disjoint spanning tree of the third m-dimensional folded hypercube network.
[0122] Specifically, The first in The first EDST includes Spanning tree in Then it can be done The m+1 dimensional edge of each vertex (i.e., network node) will The vertices in the middle are connected to Above, and because of the vertex The (m+1)th dimension edge is already in the front It is used in EDSTs, therefore Some vertices are still not connected. Finally, you can use a path. All edges will The remaining vertices in the array are connected to middle.
[0123] Sub-step 35: Connect the network nodes in the m / 2th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network through the m-th edge of each network node in the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network; and connect the unconnected network nodes in the m / 2th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network through all edge paths in the fourth unused path.
[0124] After step 34 is completed, step 35 is similar to the process in step 34. Specifically, through... The m-dimensional edge of each vertex will The vertices in the middle are connected to Up; and use the path All edges will The remaining vertices in the string are connected to middle.
[0125] Sub-step 36: Using the (m+1)th dimension edge of each network node in the (m / 2)th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network, connect the network node in the (m / 2)th edge-disjoint spanning tree of the sixth m-dimensional folded hypercube network to the (m / 2)th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network. Then, using all edge paths in the sixth unused path, connect the unconnected network nodes in the (m / 2)th edge-disjoint spanning tree of the sixth m-dimensional folded hypercube network to the (m / 2)th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network, thereby obtaining the (m+2) / 2nd edge-disjoint spanning tree of the (m+2)-dimensional folded hypercube network.
[0126] After step 35 is completed, step 36 is similar to the processes in steps 34 and 35. Specifically, through... The m+1 dimensional edge of each vertex will The vertices in the middle are connected to Up; and use the path All edges will The remaining vertices in the string are connected to middle.
[0127] This led to the completion of the m+2 dimensional folded hypercube network. The last one in the middle, that is, the first The (m+2) / 2th edge-disjoint spanning tree in the m+2 dimensional folded hypercube network is constructed through steps 34, 35, and 36.
[0128] Sub-step 37: Based on the (m+2) / 2 edge-disjoint spanning trees in the m+2 dimensional folded hypercube network, obtain the unused paths in the m+2 dimensional folded hypercube network.
[0129] To facilitate the recursive calling of the second construction method, the construction of the edge-disjoint spanning tree in the subsequent m+4 dimensional folded hypercube network can be based on the (m+2) / 2 edge-disjoint spanning trees in the m+2 dimensional folded hypercube network, thus obtaining the unused paths in the m+2 dimensional folded hypercube network.
[0130] Based on the above steps, the second construction method is completed, obtaining (m+2) / 2 edge-disjoint spanning trees and unused paths in the m+2 dimensional folded hypercube network.
[0131] Step 303: Complete the 2nd step by generating a non-intersecting spanning tree with the target number of edges. n Communication between any two of the network nodes.
[0132] In obtaining 3D Folded Hypercube Network In After generating a tree where the edges of the trees do not intersect, 3D Folded Hypercube Network 2 in n Any two network nodes in a network can be connected via... 3D Folded Hypercube Network In Communication is performed on the paths corresponding to the non-intersecting spanning trees.
[0133] In practical applications, based on all edge-disjoint spanning trees (EDSTs) that can be constructed in the output folded hypercube network (the complex form of EDST), all edge-disjoint paths between any two network nodes in the folded hypercube network can be further obtained.
[0134] For diagnosing faults in networks, large-scale / large-cluster interconnected networks contain numerous routers, processors, switches, links, etc., each of which is susceptible to failure. If multiple disjoint communication links exist between any two nodes in this network, then occasional or even small-scale faults will have a minimal impact on data transmission between these two nodes. Furthermore, based on the algorithm for constructing disjoint spanning trees in this network, further exploration of fault diagnosis algorithms for this network is possible.
[0135] Specifically, if the n non-overlapping paths between two network nodes are each responsible for sending 1 / n copies of the information, then only the starting and ending points can receive the complete information, ensuring information security; the n non-overlapping paths between two network nodes can still communicate normally even with n-1 faulty links, and the same applies to broadcasting, which helps improve the fault tolerance of communication / broadcasting; the same instance of the same algorithm that can be used to resist man-in-the-middle attacks can run in n non-overlapping spanning trees, and if the n results of the same instance are different, the occurrence of a man-in-the-middle attack can be confirmed and located.
[0136] In an embodiment of the present invention, by obtaining two edge-disjoint spanning trees and unused paths in a 4D folded hypercube network, when n is greater than 4, based on the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, a target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network are determined using a first construction method and a second construction method. The first construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network. The second construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network, where m is an even number greater than or equal to 4 and less than or equal to n. The target number of edge-disjoint spanning trees is used to complete the 2 n Communication between any two network nodes in the n-dimensional folded hypercube network enables the construction of a non-intersecting spanning tree in the network, allowing network nodes to communicate through multiple paths. This improves the fault tolerance of communication in the folded hypercube network and the security of information transmission. It can also be applied to distributed algorithms that resist man-in-the-middle attacks to identify and locate the occurrence of such attacks.
[0137] It should be noted that, for the sake of simplicity, the method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments of the present invention are not limited to the described order of actions, because according to the embodiments of the present invention, some steps can be performed in other orders or simultaneously. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions involved are not necessarily essential to the embodiments of the present invention.
[0138] Reference Figure 5 This diagram illustrates a structural schematic of a communication device based on a folded hypercube network according to some embodiments of the present invention, applied to an n-dimensional folded hypercube network, wherein the n-dimensional folded hypercube network includes 2 n There are n network nodes. Acyclic paths connecting all network nodes in the n-dimensional folded hypercube network form a spanning tree. Paths between two adjacent network nodes form edge paths. Unused edge paths in the spanning tree of all non-intersecting edges in the n-dimensional folded hypercube network form unused paths. n is an integer greater than or equal to 4. Specifically, it may include the following modules:
[0139] The four-dimensional spanning tree acquisition module 501 is used to acquire two edge-disjoint spanning trees and unused paths in a four-dimensional folded hypercube network.
[0140] The n-dimensional spanning tree construction module 502 is used to determine the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network based on two edge-disjoint spanning trees and unused paths in the 4-dimensional folded hypercube network, using a first construction method and a second construction method, when n is greater than 4. The first construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network. The second construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network. Here, m is an even number greater than or equal to 4 and less than or equal to n.
[0141] Path module 503 is used to complete the 2 by using the target number of edge-disjoint spanning trees. n Communication between any two of the network nodes.
[0142] In one embodiment of the present invention, the n-dimensional folded hypercube network contains 2 n Each network node is represented by a binary string of length n.
[0143] In one embodiment of the present invention, the value of the target number is the value obtained by rounding up n / 2, and the value of the number of network nodes in the unused path is the value obtained by rounding up (n+1) / 2.
[0144] In one embodiment of the present invention, when n is an odd number, the n-dimensional spanning tree construction module 502 includes:
[0145] The first recursive call submodule is used to recursively execute the second construction method based on the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network to determine the n-1 / 2 edge-disjoint spanning trees and unused paths in the n-1D folded hypercube network.
[0146] The first construction submodule is used to execute a first construction method based on the n-1 / 2 edge-disjoint spanning trees and unused paths in the n-1 dimensional folded hypercube network to determine the (n+1) / 2 edge-disjoint spanning trees in the n-1 dimensional folded hypercube network.
[0147] In one embodiment of the present invention, when n is an even number, the n-dimensional spanning tree construction module 502 includes:
[0148] The second recursive call submodule is used to recursively execute the second construction method based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network to determine n / 2 edge-disjoint spanning trees and unused paths in the nD folded hypercube network.
[0149] In one embodiment of the present invention, the first construction submodule includes:
[0150] The acquisition unit is used to acquire the isomorphic first and second m-dimensional folded hypercube networks, as well as the m / 2 edge-disjoint spanning trees and the first and second unused paths in the first and second m-dimensional folded hypercube networks, and to add a highest bit to the binary strings corresponding to the network nodes in the first and second m-dimensional folded hypercube networks respectively, setting them to 0 and 1 respectively.
[0151] The first construction unit connects the m / 2-2 network nodes at the same position in the first and second unused paths to form edge paths, and then connects the m / 2 edge-disjoint spanning trees in the m / 2 edge-disjoint spanning trees in the first and second m-dimensional folded hypercube networks to the m / 2 edge-disjoint spanning trees, respectively, to obtain the first m / 2-1 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network.
[0152] The second construction unit is used to connect the network nodes in the second m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the first m-dimensional folded hypercube network through the m-th edge of each network node in the m / 2th edge-disjoint spanning tree of the first m-dimensional folded hypercube network, and to connect the unconnected network nodes in the m / 2th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the first m-dimensional folded hypercube network through the first m edge paths in the second unused paths, thereby obtaining the m / 2th edge-disjoint spanning tree of the m+1-dimensional folded hypercube network; wherein, the m-th edge of the network node is the edge path formed by the network node and another network node, and the binary strings corresponding to the network node and the other network node differ only at the m-th bit.
[0153] The third construction unit is used to take the complement of the binary string corresponding to each network node in the m / 2th edge-disjoint spanning tree in the second m-dimensional folded hypercube network, obtain the corresponding network node in the first m-dimensional folded hypercube network, and connect it to the m / 2th edge-disjoint spanning tree in the second m-dimensional folded hypercube network to obtain the (m+2) / 2th edge-disjoint spanning tree in the m+1-dimensional folded hypercube network.
[0154] In one embodiment of the present invention, the first recursive call submodule and the second recursive call submodule include:
[0155] The second acquisition unit is used to acquire the isomorphic third, fourth, fifth, and sixth m-dimensional folded hypercube networks, as well as the m / 2 edge-disjoint spanning trees and the third, fourth, fifth, and sixth unused paths in the third, fourth, fifth, and sixth m-dimensional folded hypercube networks, and to add two highest bits to the binary strings corresponding to the network nodes in the third, fourth, fifth, and sixth m-dimensional folded hypercube networks respectively, setting them to 00, 10, 11, and 01 respectively;
[0156] The fourth construction unit is used to connect the edge paths formed by connecting the first m / 2-2 network nodes at the same position in the third and fourth unused paths to the m / 2 edge-disjoint spanning trees in the third and fourth m-dimensional folded hypercube networks, respectively, to m / 2-1 edge-disjoint spanning trees that are isomorphic to each other. Similarly, the edge paths formed by connecting the first m / 2-2 network nodes at the same position in the fourth and fifth unused paths are also connected to the m / 2-1 edge-disjoint spanning trees in the fourth and fifth m-dimensional folded hypercube networks, respectively, and the edge paths formed by connecting the first m / 2-1 network nodes at the same position in the fifth and sixth unused paths are also connected to the m / 2-1 edge-disjoint spanning trees in the fifth and sixth m-dimensional folded hypercube networks, respectively, to obtain the first m / 2-1 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network.
[0157] The fifth construction unit is used to connect the m / 2th edge-disjoint spanning trees of the m / 2th edge-disjoint spanning trees in the fourth and fifth m-dimensional folded hypercube networks through the edge path formed by the m / 2th network node at the same position in the fourth and fifth unused paths; to connect the m / 2th edge-disjoint spanning trees of the m / 2th edge-disjoint spanning trees in the fifth and sixth m-dimensional folded hypercube networks through the edge path formed by the m / 2th network node at the same position in the fifth and sixth unused paths; and to connect all network nodes in the third m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree in the fourth m-dimensional folded hypercube network through the m-dimensional edges of all network nodes in the third m-dimensional folded hypercube network, thereby obtaining the m / 2th edge-disjoint spanning tree in the m+2-dimensional folded hypercube network; wherein, the m-th edge of a network node is the edge path formed by the network node and another network node, and the binary strings corresponding to the network node and the other network node differ only at the m-th bit.
[0158] The first connection unit is used to connect the network nodes in the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the third m-dimensional folded hypercube network through the m+1th dimension edge of each network node in the m / 2th edge-disjoint spanning tree of the third m-dimensional folded hypercube network, and to connect the unconnected network nodes in the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the third m-dimensional folded hypercube network through all edge paths in the fourth unused path;
[0159] The second connection unit is used to connect the network nodes in the m / 2th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network through the m-dimensional edge of each network node in the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network, and to connect the unconnected network nodes in the m / 2th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network through all edge paths in the fourth unused path;
[0160] The third connection unit is used to connect the network nodes in the m / 2th edge-disjoint spanning tree of the sixth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network through the m+1th dimension edge of each network node in the m / 2th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network, and to connect the unconnected network nodes in the m / 2th edge-disjoint spanning tree of the sixth m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network through all edge paths in the sixth unused path, thereby obtaining the (m+2) / 2th edge-disjoint spanning tree in the m+2-dimensional folded hypercube network;
[0161] The unused path acquisition unit is used to obtain unused paths in the m+2 dimensional folded hypercube network based on (m+2) / 2 edge-disjoint spanning trees in the m+2 dimensional folded hypercube network.
[0162] In an embodiment of the present invention, by obtaining two edge-disjoint spanning trees and unused paths in a 4D folded hypercube network, when n is greater than 4, based on the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, a target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network are determined using a first construction method and a second construction method. The first construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network. The second construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network, where m is an even number greater than or equal to 4 and less than or equal to n. The target number of edge-disjoint spanning trees is used to complete the 2 nCommunication between any two network nodes in the n-dimensional folded hypercube network enables the construction of a non-intersecting spanning tree in the network, allowing network nodes to communicate through multiple paths. This improves the fault tolerance of communication in the folded hypercube network and the security of information transmission. It can also be applied to distributed algorithms that resist man-in-the-middle attacks to identify and locate the occurrence of such attacks.
[0163] Some embodiments of the present invention also provide an electronic device, including a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program, when executed by the processor, implements the method described above.
[0164] Some embodiments of the present invention also provide a computer-readable storage medium on which a computer program is stored, and which, when executed by a processor, implements the method described above.
[0165] Some embodiments of the present invention also provide a computer program product, including a computer program that, when executed by a processor, implements the method described above.
[0166] As the device embodiment is basically similar to the method embodiment, the description is relatively simple, and relevant parts can be found in the description of the method embodiment.
[0167] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse.
[0168] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.
[0169] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, apparatus, or computer program products. Therefore, embodiments of the present invention can take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of the present invention can take the form of computer program products implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0170] Embodiments of the present invention are described with reference to flowchart illustrations and / or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0171] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0172] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal equipment, causing a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0173] Although preferred embodiments of the present invention have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of the embodiments of the present invention.
[0174] Finally, it should be noted that in this document, 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 terminal device 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 terminal device. 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 terminal device that includes the aforementioned element.
[0175] The communication method and apparatus based on folded hypercube networks have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of the present invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention.
Claims
1. A communication method based on folded hypercube networks, characterized in that, Applied to n-dimensional folded hypercube networks, wherein the n-dimensional folded hypercube network includes 2 n The method comprises: a network node, a spanning tree formed by acyclic paths connecting all network nodes in the n-dimensional folded hypercube network, an edge path formed by paths between two adjacent network nodes, and unused edge paths in the non-intersecting spanning tree of the n-dimensional folded hypercube network forming unused paths. Obtain the non-intersecting spanning tree and unused paths of two edges in a 4D folded hypercube network; When n is greater than 4, based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, the target number of edge-disjoint spanning trees in the nD folded hypercube network is determined using a first construction method and a second construction method. Specifically, the first construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+1D folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the mD folded hypercube network; the second construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+2D folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the mD folded hypercube network, where m is an even number greater than or equal to 4 and less than or equal to n. Complete the 2 by generating a non-intersecting spanning tree with the target number of edges. n Communication between any two of the network nodes.
2. The method according to claim 1, characterized in that, In the n-dimensional folded hypercube network, 2 n Each network node is represented by a binary string of length n.
3. The method according to claim 2, characterized in that, The target number is the value obtained by rounding up n / 2, and the number of network nodes in the unused path is the value obtained by rounding up (n+1) / 2.
4. The method according to claim 3, characterized in that, When n is odd, the process of determining the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, using a first construction method and a second construction method, includes: Based on the two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, the second construction method is executed recursively to determine the n-1 / 2 edge-disjoint spanning trees and unused paths in the n-1D folded hypercube network. Based on the n-1 / 2 edge-disjoint spanning trees and unused paths in the n-1 dimensional folded hypercube network, the first construction method is executed to determine the (n+1) / 2 edge-disjoint spanning trees in the n-dimensional folded hypercube network.
5. The method according to claim 3, characterized in that, When n is even, the process of determining the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network based on two edge-disjoint spanning trees and unused paths in the 4D folded hypercube network, using a first construction method and a second construction method, includes: Based on the two non-intersecting spanning trees and unused paths in the 4D folded hypercube network, the second construction method is executed recursively to determine the n / 2 non-intersecting spanning trees and unused paths in the nD folded hypercube network.
6. The method according to claim 4, characterized in that, The execution of the first constructor method includes: Obtain the isomorphic first and second m-dimensional folded hypercube networks, as well as the m / 2 edge-disjoint spanning trees and the first and second unused paths in the first and second m-dimensional folded hypercube networks. Add a highest bit to the binary string corresponding to the network node in the first and second m-dimensional folded hypercube networks respectively, setting it to 0 and 1 respectively. By connecting the first m / 2-2 network nodes at the same position in the first and second unused paths, the m / 2-1 edge-disjoint spanning trees in the m / 2 edge-disjoint spanning trees in the first and second m-dimensional folded hypercube networks are respectively connected to obtain the first m / 2-1 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network. By using the m-th edge of each network node in the m / 2-th edge-disjoint spanning tree of the first m-dimensional folded hypercube network, the network nodes in the m / 2-th edge-disjoint spanning tree of the second m-dimensional folded hypercube network are connected to the m / 2-th edge-disjoint spanning tree of the first m-dimensional folded hypercube network. Furthermore, by using the first m edge paths in the second unused path, the unconnected network nodes in the m / 2-th edge-disjoint spanning tree of the second m-dimensional folded hypercube network are connected to the m / 2-th edge-disjoint spanning tree of the first m-dimensional folded hypercube network, thus obtaining the m / 2-th edge-disjoint spanning tree of the m+1-dimensional folded hypercube network. Here, the m-th edge of a network node is the edge path formed by the network node and another network node, and the binary strings corresponding to the network node and the other network node differ only at the m-th bit. Take the complement of the binary string corresponding to each network node in the m / 2th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to obtain the corresponding network node in the first m-dimensional folded hypercube network, and connect it to the m / 2th edge-disjoint spanning tree of the second m-dimensional folded hypercube network to obtain the (m+2) / 2th edge-disjoint spanning tree of the m+1-dimensional folded hypercube network.
7. The method according to any one of claims 4-5, characterized in that, The execution of the second construction method includes: Obtain isomorphic third, fourth, fifth, and sixth m-dimensional folded hypercube networks, as well as m / 2 edge-disjoint spanning trees and unused paths in the third, fourth, fifth, and sixth m-dimensional folded hypercube networks. Add two highest bits to the binary strings corresponding to the network nodes in the third, fourth, fifth, and sixth m-dimensional folded hypercube networks respectively, setting them to 00, 10, 11, and 01. The edge paths formed by connecting the first m / 2-2 network nodes at the same position in the third and fourth unused paths are respectively connected to the m / 2 edge-disjoint spanning trees in the third and fourth m-dimensional folded hypercube networks, which are isomorphic to the m / 2 edge-disjoint spanning trees. The edge paths formed by connecting the first m / 2-2 network nodes at the same position in the fourth and fifth unused paths are respectively connected to the m / 2 edge-disjoint spanning trees in the fourth and fifth m-dimensional folded hypercube networks, which are isomorphic to the m / 2 edge-disjoint spanning trees. The edge paths formed by connecting the first m / 2-1 network nodes at the same position in the fifth and sixth unused paths are respectively connected to the m / 2 edge-disjoint spanning trees in the fifth and sixth m-dimensional folded hypercube networks, thus obtaining the first m / 2-1 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network. By using the edge path formed by the m / 2th network node at the same position in the fourth and fifth unused paths, connect the m / 2th edge-disjoint spanning trees of the m / 2th edge-disjoint spanning trees in the fourth and fifth m-dimensional folded hypercube networks. By using the edge path formed by the m / 2th network node at the same position in the fifth and sixth unused paths, connect the m / 2th edge-disjoint spanning trees of the m / 2th edge-disjoint spanning trees in the fifth and sixth m-dimensional folded hypercube networks. By using the m-dimensional edges of all network nodes in the third m-dimensional folded hypercube network, connect all network nodes in the third m-dimensional folded hypercube network to the m / 2th edge-disjoint spanning tree in the fourth m-dimensional folded hypercube network, thus obtaining the m / 2th edge-disjoint spanning tree in the m+2-dimensional folded hypercube network. Here, the m-th edge of a network node is the edge path formed by the network node and another network node, and the binary strings corresponding to the network node and the other network node differ only at the m-th bit. By using the (m+1)th dimension edge of each network node in the (m / 2)th edge-disjoint spanning tree of the third m-dimensional folded hypercube network, the network nodes in the (m / 2)th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network are connected to the (m / 2)th edge-disjoint spanning tree of the third m-dimensional folded hypercube network. Furthermore, by using all edge paths in the fourth unused path, the unconnected network nodes in the (m / 2)th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network are connected to the (m / 2)th edge-disjoint spanning tree of the third m-dimensional folded hypercube network. By using the m-th edge of each network node in the m / 2-th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network, the network nodes in the m / 2-th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network are connected to the m / 2-th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network. Furthermore, by using all edge paths in the fourth unused path, the unconnected network nodes in the m / 2-th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network are connected to the m / 2-th edge-disjoint spanning tree of the fourth m-dimensional folded hypercube network. By using the (m+1)th dimension edge of each network node in the (m / 2)th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network, the network nodes in the (m / 2)th edge-disjoint spanning tree of the sixth m-dimensional folded hypercube network are connected to the (m / 2)th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network. Furthermore, by using all edge paths in the sixth unused path, the unconnected network nodes in the (m / 2)th edge-disjoint spanning tree of the sixth m-dimensional folded hypercube network are connected to the (m / 2)th edge-disjoint spanning tree of the fifth m-dimensional folded hypercube network, thus obtaining the (m+2) / 2nd edge-disjoint spanning tree in the (m+2)-dimensional folded hypercube network. Based on the (m+2) / 2 edge-disjoint spanning trees in the m+2 dimensional folded hypercube network, the unused paths in the m+2 dimensional folded hypercube network are obtained.
8. A communication device based on a folded hypercube network, characterized in that, Applied to n-dimensional folded hypercube networks, wherein the n-dimensional folded hypercube network includes 2 n The device comprises: a network node, a spanning tree formed by acyclic paths connecting all network nodes in the n-dimensional folded hypercube network, an edge path formed by paths between two adjacent network nodes, and unused multiple edge paths in the non-intersecting spanning tree of the n-dimensional folded hypercube network forming unused paths, where n is an integer greater than or equal to 4. The 4D spanning tree acquisition module is used to obtain the non-intersecting spanning trees and unused paths of two edges in a 4D folded hypercube network. An n-dimensional spanning tree construction module is used to determine the target number of edge-disjoint spanning trees in the n-dimensional folded hypercube network based on two edge-disjoint spanning trees and unused paths in the 4-dimensional folded hypercube network, using a first construction method and a second construction method, when n is greater than 4. Specifically, the first construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+1-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network; the second construction method is used to determine (m+2) / 2 edge-disjoint spanning trees in the m+2-dimensional folded hypercube network using m / 2 edge-disjoint spanning trees and unused paths in the m-dimensional folded hypercube network, where m is an even number greater than or equal to 4 and less than or equal to n. The path module is used to complete the 2-step process by generating a non-intersecting spanning tree with the target number of edges. n Communication between any two of the network nodes.
9. An electronic device, characterized in that, It includes a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein the computer program, when executed by the processor, implements the communication method based on a folded hypercube network as described in any one of claims 1 to 7.
10. A readable storage medium, characterized in that, The readable storage medium stores a computer program that, when executed by a processor, implements the communication method based on a folded hypercube network as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Data broadcasting method and network oriented to one-class BC (Block Code) graph
CN117354265A
Dynamic self configuring overlays
US20110289071A1