Network communication system
By introducing central node management and forwarding node distributed communication methods into the network communication system, combining key encryption and decryption and path table storage, the problems of insufficient disaster recovery capabilities and low distributed network security are solved, and a communication system with high security and high disaster recovery capabilities are realized.
Patent Information
- Application Number
- CN202211478464.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-23
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2042-11-23
AI Technical Summary
In the prior art, the communication data of the centralized network topology has high security but weak disaster recovery capabilities, while the communication data of the distributed network topology has low security and lacks high disaster recovery capabilities.
A network communication system is used to centralized management and forwarding nodes for distributed communication. The central node performs identity authentication, status collection and control commands for forwarding nodes. The forwarding nodes conducts network communication through distributed methods, and data encryption and decryption is carried out through temporary keys, and communication paths are built and path tables are stored to improve disaster recovery capabilities.
It achieves high data security and high disaster recovery capabilities, ensures that the communication system can still operate normally when the central node goes down, and improves the security and efficiency of data transmission.
Smart Images

Figure CN115865605B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of communications, and more particularly to a network communication system. Background Art
[0002] With the continuous development of the network and the increasing diversification of network service applications, the networking methods of network service nodes have become diversified according to specific service requirements, and secure communication between communication nodes has become increasingly important. There are two different communication and management methods, centralized and decentralized (i.e., distributed), among a large number of communication nodes.
[0003] The centralized network topology provides one-to-many services through a centralized server, has a high degree of autonomous control over resources, and can manage the information of all communication nodes communicating with the central node. The central node participates in the data communication process in the centralized network topology. Since the central node has high security, the security of the communication data in the centralized network topology is also higher. However, the server in the centralized networking is prone to network request blocking due to short-term high-concurrency network requests, and the central server does not have disaster tolerance capabilities. Once the service node goes offline, it cannot provide services.
[0004] The distributed network topology protocol enables multiple communication nodes to synchronize data and discover paths in real time. The distributed network nodes can complete a quick search for other nodes by maintaining their own routing tables. Corresponding the data resources with the hash value of the node unique ID can also quickly locate the storage location of the resources in the network, making the network topology have advantages such as disaster tolerance, load balancing, and scalability. However, the data communication process between communication nodes in the distributed network topology does not involve a central node, resulting in lower security of the communication data in the distributed network topology. Summary of the Invention
[0005] The purpose of the present invention is to provide a network communication system that has high data security and high disaster tolerance capabilities at the same time.
[0006] The present invention provides a network communication system, including: a central node and a plurality of forwarding nodes connected to each other; the central node uses a centralized management method to control the plurality of forwarding nodes; the plurality of forwarding nodes perform network communication in a distributed manner.
[0007] Compared with the prior art, the network communication system provided by the embodiments of the present invention is provided with a central node and a plurality of forwarding nodes. The central node adopts a centralized management method to control the forwarding nodes, so that the entire network communication system has high data security; at the same time, the forwarding nodes perform network communication in a distributed manner. Since the central node does not participate in the network communication process of the forwarding nodes, even if the central node fails, the forwarding nodes can still complete the communication task through the distributed network structure, making the entire network communication have high disaster tolerance. Thus, the effect of having high disaster tolerance while having high data security is achieved.
[0008] In some embodiments, the controlling the plurality of forwarding nodes includes: performing identity authentication on the plurality of forwarding nodes, collecting the node statuses of the plurality of forwarding nodes, and / or sending control commands to the plurality of forwarding nodes.
[0009] In some embodiments, the sending control commands to the plurality of forwarding nodes includes: obtaining a communication node, where the communication node is any one of the forwarding nodes; when the working state of the communication node is in an offline state, obtaining a target node corresponding to the communication node, and sending the control command to the target node; after the communication node goes online, obtaining the control command from the target node.
[0010] When the communication node is in an offline state and unable to receive control commands, by obtaining the target node and sending the control command of the communication node to the target node, the communication node can directly obtain the control command from the target node after going online again, so that the communication node can obtain the control command in the first time after going online again, improving the timeliness of the control command. In addition, storing the control command in the target node can also improve the security of the control command.
[0011] In some embodiments, the obtaining the target node corresponding to the communication node includes: obtaining the forwarding node closest to the communication node as the target node, or obtaining the forwarding node corresponding to the communication node according to a preset correspondence as the target node.
[0012] In some embodiments, the plurality of forwarding nodes perform network communication in a distributed manner, including: a source forwarding node constructs a destination communication path between the source forwarding node and a destination forwarding node, and the destination communication path includes a plurality of intermediate forwarding nodes; the source forwarding node forwards communication data one by one via the plurality of intermediate forwarding nodes to send the communication data to the destination forwarding node; for any intermediate forwarding node, after receiving the communication data sent by the previous forwarding node, the intermediate forwarding node decrypts the communication data using a first key to obtain decrypted data, encrypts the decrypted data using a second key to obtain encrypted data, and forwards the encrypted data to the next forwarding node; the first key is a temporary key between any intermediate forwarding node and the previous forwarding node, and the second key is a temporary key between any forwarding node and the next forwarding node.
[0013] Decrypting and re-encrypting the communication data each time the communication data is forwarded can effectively enhance the security of the forwarded communication data, and at the same time, these keys can also be used to improve the anti-traceability ability of the forwarding process of the communication data.
[0014] In some embodiments, the forwarding of the communication data one by one via the plurality of intermediate forwarding nodes includes: the source forwarding node encrypts the communication data using a third key to obtain first encrypted data, and forwards the first encrypted data one by one via the plurality of intermediate forwarding nodes; the third key is a temporary key between the source forwarding node and the destination forwarding node.
[0015] Performing secondary encryption on the communication data can further improve the security of the communication data during the communication process.
[0016] In some embodiments, the construction of the destination communication path between the source forwarding node and the destination forwarding node includes: the source forwarding node obtains the identification information of the destination forwarding node, and queries whether the identification information of the destination forwarding node exists in the local path table, where the local path table stores the forwarding nodes known to the source forwarding node and the network communication paths corresponding to each of the known forwarding nodes; if the identification information of the destination forwarding node exists in the local path table, directly obtain the network communication path corresponding to the identification information of the destination forwarding node in the local path table as the destination communication path.
[0017] In some embodiments, constructing the destination communication path between the source forwarding node and the destination forwarding node further includes: if the identification information of the destination forwarding node does not exist in the local path table, the source forwarding node sends the identification information of the destination forwarding node to the first-level forwarding node to query whether there is a network communication path between the destination forwarding node in the local path table of the first-level forwarding node; if there is a network communication path between the destination forwarding node in the local path table of the first-level forwarding node, constructing the destination communication path between the source forwarding node and the destination forwarding node with the first-level forwarding node as the intermediate forwarding node; the first-level forwarding node is the forwarding node closest to the source forwarding node, or the first-level forwarding node is a forwarding node known to the source forwarding node.
[0018] In some embodiments, constructing the destination communication path between the source forwarding node and the destination forwarding node further includes: if there is no network communication path between the destination forwarding node in the local path table of the first-level forwarding node, the first-level forwarding node sends the identification information of the destination forwarding node to the second-level forwarding node to query whether there is a network communication path between the destination forwarding node in the local path table of the second-level forwarding node; if there is a network communication path between the destination forwarding node in the local path table of the second-level forwarding node, constructing the destination communication path between the source forwarding node and the destination forwarding node with the first-level forwarding node and the second-level forwarding node as the intermediate forwarding nodes; if there is no network communication path between the destination forwarding node in the local path table of the second-level forwarding node, the second-level forwarding node sends the identification information of the destination forwarding node to the third-level forwarding node to query whether there is a network communication path between the destination forwarding node in the local path table of the third-level forwarding node, until the forwarding times of the identification information of the destination forwarding node reach the preset times or a network communication path between the destination forwarding node is found in the local path table of any forwarding node; the second-level forwarding node is the forwarding node closest to the first-level forwarding node, or the second-level forwarding node is a forwarding node known to the first-level forwarding node; the third-level forwarding node is the forwarding node closest to the second-level forwarding node, or the third-level forwarding node is a forwarding node known to the second-level forwarding node.
[0019] By gradually searching for the communication path of the destination forwarding node, the communication path of the destination forwarding node can be found by itself when the source forwarding node does not know the communication path of the destination forwarding node. In addition, setting the forwarding times of the identification information of the destination forwarding node to stop searching when reaching the preset times can effectively avoid long-term program deadlocks.
[0020] In some embodiments, after constructing a destination communication path between the source forwarding node and the destination forwarding node with the first-level forwarding node as the intermediate forwarding node, the method further includes: storing the destination forwarding node and the destination communication path in the local path table.
[0021] Storing the destination forwarding node and the destination communication path in the local path table of the source forwarding node enables the source forwarding node to directly call the stored data in the local path table without searching for the destination communication path again when conducting network communication with the destination forwarding node next time.
[0022] In some embodiments, when the several forwarding nodes perform network communication in a distributed manner, the method further includes: after receiving the communication data, the destination forwarding node stores the source forwarding node and the destination communication path in the local path table of the destination forwarding node.
[0023] The destination forwarding node storing the source forwarding node and the destination communication path in the local path table of the destination forwarding node enables the destination forwarding node to directly call the stored data in the local path table without searching for the destination communication path again when conducting network communication with the source forwarding node next time. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the following will briefly introduce the drawings required for use in the description of the specific embodiments or the prior art. Obviously, the drawings in the following description are some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0025] Figure 1 It is a schematic diagram of the topological structure of the network communication system provided in some embodiments of the present invention;
[0026] Figure 2 It is a schematic diagram of the process of the central node sending a control command to the forwarding node in the network communication system provided in some embodiments of the present invention;
[0027] Figure 3 It is a schematic diagram of the communication process between forwarding nodes in the network communication system provided in some embodiments of the present invention;
[0028] Figure 4 It is a schematic diagram of the process of obtaining the destination communication path in the network communication system provided in some embodiments of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0029] To make the objectives, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are some but not all of the embodiments of the present invention. The components of the embodiments of the present invention usually described and illustrated in the accompanying drawings here can be arranged and designed in various different configurations.
[0030] Therefore, the following detailed description of the embodiments of the present invention provided in the accompanying drawings is not intended to limit the scope of the claimed invention, but merely represents selected embodiments of the present invention. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts fall within the scope of protection of the present invention.
[0031] It should be noted that like reference numerals and letters denote like items in the following drawings. Therefore, once an item is defined in one drawing, it does not need to be further defined and explained in subsequent drawings.
[0032] In the description of the present invention, it should be noted that the orientation or positional relationship indicated by the terms "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc. is based on the orientation or positional relationship shown in the accompanying drawings, or the orientation or positional relationship in which the inventive product is customarily placed during use. It is only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and thus should not be construed as a limitation of the present invention. In addition, the terms "first", "second", "third", etc. are only used for descriptive distinction and cannot be understood as indicating or implying relative importance.
[0033] In addition, the terms "horizontal", "vertical", "overhanging", etc. do not mean that the components are required to be absolutely horizontal or overhanging, but may be slightly inclined. For example, "horizontal" only means that its direction is more horizontal relative to "vertical", and does not mean that the structure must be completely horizontal, but may be slightly inclined.
[0034] In the description of the present invention, it should also be noted that unless otherwise clearly defined and limited, the terms "set", "installed", "connected", "coupled" should be understood in a broad sense. For example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be directly connected or indirectly connected through an intermediate medium, and it can be the communication inside two elements. For those of ordinary skill in the art, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.
[0035] The following will describe in detail some embodiments of the present invention in conjunction with the accompanying drawings. Without conflict, the following embodiments and the features in the embodiments can be combined with each other.
[0036] An embodiment of the present invention provides a network communication system, specifically as Figure 1 shown, including: a central node 101 and a plurality of forwarding nodes 102 that are interconnected. Among them, the central node 101 adopts a centralized management method to control the plurality of forwarding nodes 102; the plurality of forwarding nodes 102 perform network communication in a distributed manner.
[0037] Specifically, in some embodiments of the present invention, the process in which the central node 101 adopts a centralized management method to control the plurality of forwarding nodes 102 includes one or more control methods such as authenticating the identities of the plurality of forwarding nodes 102, collecting the node statuses of the plurality of forwarding nodes 102, and sending control commands to the plurality of forwarding nodes 102.
[0038] Among them, taking the central node 101 authenticating the identity of the forwarding node 102 as an example, when a new forwarding node 102 is added to access the network communication system, the forwarding node 102 first generates public and private keys, generates data such as a virtual IPV6 address using the public key hash, and sends this data together with the information of the access point in the network communication system to which the forwarding node 102 needs to access to the central node 101. The central node 101 uses the public key, virtual IPV6 address, physical IPV4 address of the forwarding node 102, node type, access point IPV4 address, and public key of the access point generated by the forwarding node 102 to issue a certificate to the forwarding node 102. After receiving the certificate issued by the central node 101, the forwarding node 102 initiates a connection with the access point using the certificate for identity authentication. The forwarding node 102 and the access point perform ECDH key negotiation, dynamically generate a temporary public and private key pair, and encrypt and send it to the other party using the fixed public and private keys to complete the exchange of the temporary public key and generate a temporary shared key to be responsible for subsequent encrypted communication. Thus, the identity authentication and access process of the forwarding node 102 accessing the network communication system are completed.
[0039] Taking the collection of the node statuses of the plurality of forwarding nodes 102 as an example, each forwarding node 102 collects link information in the network communication system, including received and transmitted traffic, latency, packet loss rate, system resource utilization rate, etc., and sends it to the central node 101.
[0040] In addition, in some embodiments of the present invention, the process in which the central node 101 sends control commands to the plurality of forwarding nodes 102 is as Figure 2 shown, including the following steps:
[0041] Step S201: Obtain a communication node, and the communication node is any forwarding node.
[0042] In this step, the central node 101 obtains the forwarding node 102 that needs to send a control command as a communication node according to the control task to be completed. The communication node can be any one of several forwarding nodes 102 to which the central node 101 needs to issue a control command.
[0043] Step S202: When the working state of the communication node is in the offline state, obtain the target node corresponding to the communication node, and send a control command to the target node.
[0044] In some embodiments of the present invention, if the communication node can work normally and receive the control command sent by the central node 101, the central node 101 can directly send the control command to the communication node after negotiation with the communication node. When the working state of the communication node is in the offline state, it means that the communication node cannot receive the control command. At this time, obtain the target node corresponding to the communication node and send a control command to the target node. For the target node, after receiving the control command of the communication node, store the control command of the communication node in the target node. For the communication node, after reconnecting to the network, the communication node obtains the control command from the target node, so as to realize the issuance of the control command when the communication node is in the offline state.
[0045] Among them, the working state of the communication node being in the offline state can be that the communication node is damaged, or the communication node takes the initiative to go offline, or there is a communication channel failure between the central node 101 and the communication node, etc. As long as the communication node is in a state where it cannot receive the control command, it is the offline state in the embodiments of the present invention.
[0046] For the communication node, after reconnecting to the network, it actively asks the corresponding target node whether there is a control command during its offline state. If there is, it obtains the control command from the target node.
[0047] Further, in some embodiments of the present invention, the target node may be the forwarding node 102 closest to the communication node. That is, when the central node 101 discovers that the communication node cannot receive the control command, it obtains the forwarding node 102 closest to the communication node as the target node, and then sends the control command of the communication node to the target node. In some other embodiments of the present invention, the target node may also be the forwarding node 102 that has a preset corresponding relationship with the communication node. That is, in the network communication system, a corresponding another forwarding node 102 is preset for each forwarding node 102. When any forwarding node 102 is used as the communication node and is in an offline state, the forwarding node 102 corresponding to the communication node is directly obtained according to the preset corresponding relationship as the target node. It can be understood that the foregoing is only an illustrative example in some embodiments of the present invention, and is not limited to these two methods in other embodiments of the present invention.
[0048] When the communication node is in an offline state and cannot receive the control command, by obtaining the target node and sending the control command of the communication node to the target node, the communication node can directly obtain the control command from the target node after reconnecting to the line, so that the communication node can obtain the control command in the first time after reconnecting to the line, improving the timeliness of the control command. In addition, storing the control command in the target node can also improve the security of the control command.
[0049] In some embodiments of the present invention, during the process of network communication in which several forwarding nodes 102 are distributed, for the communication process between any two forwarding nodes 102 as Figure 3 shown, it includes the following steps:
[0050] Step S301: The source forwarding node constructs a destination communication path between the source forwarding node and the destination forwarding node, and the destination communication path includes several intermediate forwarding nodes.
[0051] In some embodiments of the present invention, the source forwarding node is the forwarding node that sends communication data among the two forwarding nodes that perform communication this time, and the destination forwarding node is the forwarding node that receives communication data among the two forwarding nodes that perform communication this time.
[0052] In this step, the source forwarding node first obtains the identification information of the destination forwarding node. In the network communication system, each forwarding node has a unique corresponding identification information. By obtaining the identification information of the destination forwarding node, the source forwarding node can obtain the destination forwarding node that needs to perform communication. In some embodiments of the present invention, the identification information may be the routing information of each forwarding node. It can be understood that the identification information being the routing information of each forwarding node is only an illustrative example in some embodiments of the present invention. In other embodiments of the present invention, the identification information may also be other types of information such as IP address information.
[0053] After the source forwarding node obtains the identification information of the destination forwarding node, it immediately compares the identification information of the destination forwarding node with the identification information of the forwarding nodes stored in the local path table to query whether the identification information of the destination forwarding node exists in the local path table. Among them, the local path table stores the forwarding nodes known to the source forwarding node and the network communication paths corresponding to each known forwarding node. In some embodiments of the present invention, after each forwarding node accesses the network communication system and completes the authentication, it establishes a local path table and broadcasts its own location and identification information to other forwarding nodes in the network communication system. After receiving the location and identification information broadcast by the newly accessed forwarding node, other forwarding nodes will send a path confirmation message to the newly accessed forwarding node. The path confirmation message includes the identification information and the communication path. The newly accessed forwarding node stores the identification information and the communication path of the corresponding forwarding node in the local path table according to the received path confirmation message. In some embodiments of the present invention, each forwarding node can number other forwarding nodes adjacent to it. Therefore, the communication path is the number sequence of other forwarding nodes that need to be passed through during the communication process. It can be understood that using the number sequence to identify the communication path is only an example in some embodiments of the present invention. In other embodiments of the present invention, other methods such as using an IP address sequence can also be used to identify the communication path.
[0054] If the identification information of the destination forwarding node exists in the local path table, directly obtain the network communication path corresponding to the identification information of the destination forwarding node in the local path table as the destination communication path.
[0055] If the identification information of the destination forwarding node does not exist in the local path table, the steps to obtain the destination communication path at this time are as Figure 4 shown, including the following steps:
[0056] Step S401: The source forwarding node sends the identification information of the destination forwarding node to the first-level forwarding node to query whether there is a network communication path between the first-level forwarding node and the destination forwarding node in the local path table of the first-level forwarding node. If so, execute step S402; if not, execute step S403.
[0057] In some embodiments of the present invention, the first-level forwarding node is the forwarding node closest to the source forwarding node. It can be understood that in some other embodiments of the present invention, the first-level forwarding node can also be a forwarding node preset with a preset corresponding relationship with the source forwarding node, and can be flexibly selected according to actual needs.
[0058] In this step, after receiving the identification information of the destination forwarding node sent by the source forwarding node, the first-level forwarding node queries whether there is a destination forwarding node in its local path table. If a destination forwarding node is found in the local path table of the first-level forwarding node, step S402 is executed. If no destination forwarding node is found in the local path table of the first-level forwarding node, step S403 is executed.
[0059] Step S402: Construct a destination communication path between the source forwarding node and the destination forwarding node with the first-level forwarding node as the intermediate forwarding node.
[0060] In some embodiments of the present invention, if there is a destination forwarding node in the local path table of the first-level forwarding node, the communication path between the first-level forwarding node and the destination forwarding node is directly obtained from the local path table of the first-level forwarding node, and then the communication path between the first-level forwarding node and the source forwarding node is added to form the destination communication path.
[0061] Step S403: The first-level forwarding node sends the identification information of the destination forwarding node to the second-level forwarding node, and queries whether there is a network communication path between the second-level forwarding node and the destination forwarding node in the local path table of the second-level forwarding node. If so, step S404 is executed. If not, step S405 is executed.
[0062] In some embodiments of the present invention, after receiving the identification information of the destination forwarding node sent by the first-level forwarding node, the second-level forwarding node queries whether there is a destination forwarding node in its local path table. If a destination forwarding node is found in the local path table of the second-level forwarding node, step S404 is executed. If no destination forwarding node is found in the local path table of the second-level forwarding node, step S405 is executed.
[0063] In some embodiments of the present invention, the second-level forwarding node is the forwarding node closest to the first-level forwarding node. It can be understood that in some other embodiments of the present invention, the second-level forwarding node can also be a forwarding node preset with a preset corresponding relationship with the first-level forwarding node, and can be flexibly selected according to actual needs.
[0064] Step S404: Construct a destination communication path between the source forwarding node and the destination forwarding node with the first-level forwarding node and the second-level forwarding node as the intermediate forwarding nodes.
[0065] Step S405: The second-level forwarding node sends the identification information of the destination forwarding node to the third-level forwarding node, and queries whether there is a network communication path between the third-level forwarding node and the destination forwarding node in the local path table of the third-level forwarding node. If so, step S406 is executed. If not, step S407 is executed.
[0066] In some embodiments of the present invention, the tertiary forwarding node is the forwarding node closest to the secondary forwarding node. It can be understood that, in some other embodiments of the present invention, the tertiary forwarding node can also be a forwarding node preset with a preset corresponding relationship with the secondary forwarding node, and can be flexibly selected according to actual needs.
[0067] Step S406: Construct a destination communication path between the source forwarding node and the destination forwarding node with the primary forwarding node, secondary forwarding node, and tertiary node as intermediate forwarding nodes.
[0068] Step S407: Determine whether the forwarding count of the identification information of the destination forwarding node reaches a preset count. If so, execute Step S408; if not, execute Step S405.
[0069] In some embodiments of the present invention, the communication path of the destination forwarding node is searched step by step through the above steps until the communication path of the destination forwarding node is found and then a communication connection is established between the source forwarding node and the destination forwarding node; or the forwarding count of the identification information of the destination forwarding node reaches the preset count and the communication path of the destination forwarding node has not been found yet. At this time, execute Step S408.
[0070] Step S408: End the search process and report communication failure.
[0071] By searching for the communication path of the destination forwarding node step by step, the communication path of the destination forwarding node can be found by itself when the source forwarding node does not know the communication path of the destination forwarding node. In addition, setting the search to stop when the forwarding count of the identification information of the destination forwarding node reaches the preset count can effectively avoid long-term program deadlocks.
[0072] In some embodiments of the present invention, after the source forwarding node finds the destination communication path between it and the destination forwarding node via forwarding nodes such as the primary forwarding node and secondary forwarding node, it stores the destination forwarding node and the destination communication path in the local path table.
[0073] Storing the destination forwarding node and the destination communication path in the local path table of the source forwarding node enables the source forwarding node to directly call the stored data in the local path table without having to search for the destination communication path again when communicating with the destination forwarding node next time.
[0074] In some embodiments of the present invention, after receiving the communication data, the destination forwarding node stores the source forwarding node and the destination communication path in the local path table of the destination forwarding node.
[0075] The destination forwarding node stores the source forwarding node and the destination communication path in the local path table of the destination forwarding node, so that when the destination forwarding node communicates with the source forwarding node next time, there is no need to search for the destination communication path again, and the stored data in the local path table can be directly called.
[0076] Step S302: The source forwarding node forwards the communication data one by one through several intermediate forwarding nodes to send the communication data to the destination forwarding node.
[0077] In some embodiments of the present invention, the source forwarding node first sends the communication data to the intermediate forwarding node, and then the intermediate forwarding node forwards the communication data along the destination communication path in sequence, so as to send the communication data to the destination forwarding node.
[0078] In some embodiments of the present invention, for any intermediate forwarding node, after receiving the communication data sent by the previous forwarding node, it decrypts the communication data using the first key to obtain decrypted data, encrypts the decrypted data using the second key to obtain encrypted data, and forwards the encrypted data to the next forwarding node; the first key is a temporary key between any intermediate forwarding node and the previous forwarding node, and the second key is a temporary key between any forwarding node and the next forwarding node. That is, before the previous forwarding node sends the communication data to the next forwarding node, it first negotiates with the next forwarding node to generate the first key, encrypts the communication data using the first key, and sends the encrypted communication data to the next forwarding node. After the next forwarding node receives the encrypted communication data sent by the previous forwarding node, it decrypts the encrypted communication data using the first key, and then negotiates with the next lower-level forwarding node to generate the second key, and repeats the encryption and decryption process using the second key.
[0079] Decrypting and re-encrypting the communication data each time the communication data is forwarded can effectively enhance the forwarding security of the communication data, and at the same time, these keys can also be used to improve the anti-traceability ability of the forwarding process of the communication data.
[0080] In some embodiments of the present invention, the source forwarding node encrypts the communication data using the third key to obtain the first encrypted data, and forwards the first encrypted data one by one through several intermediate forwarding nodes; the third key is a temporary key between the source forwarding node and the destination forwarding node. That is, the source forwarding node first encrypts the communication data once using the temporary key negotiated with the destination forwarding node, and then encrypts the once-encrypted communication data twice using the temporary key negotiated with the intermediate forwarding node, and sends the twice-encrypted communication data to the intermediate forwarding node. The intermediate forwarding node performs repeated encryption and decryption processes on the once-encrypted communication data during the forwarding process.
[0081] Performing secondary encryption on communication data can further enhance the security of communication data during the communication process.
[0082] In addition, in some embodiments of the present invention, when a forwarding node uploads a resource file, it performs a hash on the resource file and searches in the network for multiple forwarding nodes closest to the file hash value and sends them the true storage location information of the file.
[0083] When any forwarding node needs to download a resource file, it obtains the hash value of the file according to the seed file, queries in the network for the node closest to the file hash distance to query the true storage location of the file. After obtaining the file storage location, it initiates a file download request for it.
[0084] That is, those skilled in the art can understand that all or part of the steps in implementing the methods of the above embodiments can be completed by a program instructing relevant hardware. This program is stored in a storage medium, including several instructions to enable a device (which can be a single-chip microcomputer, a chip, etc.) or a processor to execute all or part of the steps of the methods of various embodiments of the present application. The aforementioned storage medium includes: USB flash drives, mobile hard disks, read-only memories (ROMs), random access memories (RAMs), magnetic disks, or optical discs and other various media that can store program codes.
[0085] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or perform equivalent replacements on some or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the various embodiments of the present invention.
Claims
1. A network communication system, characterized in that, Including: A central node and a number of forwarding nodes connected to each other; The central node controls the number of forwarding nodes in a centralized management manner; The number of forwarding nodes perform network communication in a distributed manner; Among them, the number of forwarding nodes perform network communication in a distributed manner, including: The source forwarding node constructs a destination communication path between the source forwarding node and the destination forwarding node, and the destination communication path includes a number of intermediate forwarding nodes; The source forwarding node forwards the communication data one by one through the number of intermediate forwarding nodes to send the communication data to the destination forwarding node; For any intermediate forwarding node, after receiving the communication data sent by the previous forwarding node, decrypt the communication data using the first key to obtain decrypted data, encrypt the decrypted data using the second key to obtain encrypted data, and forward the encrypted data to the next forwarding node; The first key is a temporary key between any intermediate forwarding node and the previous forwarding node, and the second key is a temporary key between any intermediate forwarding node and the next forwarding node.
2. The system according to claim 1, characterized in that, The control of the number of forwarding nodes includes: Performing identity authentication on the number of forwarding nodes, collecting the node status of the number of forwarding nodes, and sending one or more of control commands to the number of forwarding nodes.
3. The system according to claim 2, wherein The sending of control commands to the number of forwarding nodes includes: Obtaining a communication node, where the communication node is any one of the forwarding nodes; When the working state of the communication node is in an offline state, obtaining a target node corresponding to the communication node and sending the control command to the target node; After the communication node goes online, it obtains the control command from the target node.
4. The system according to claim 3, characterized in that The obtaining of the target node corresponding to the communication node includes: Obtaining the forwarding node closest to the communication node as the target node, or obtaining the forwarding node corresponding to the communication node according to a preset correspondence relationship as the target node.
5. The system according to claim 1, wherein The forwarding of the communication data one by one through the number of intermediate forwarding nodes includes: The source forwarding node encrypts the communication data using the third key to obtain the first encrypted data, and forwards the first encrypted data one by one through the number of intermediate forwarding nodes; The third key is a temporary key between the source forwarding node and the destination forwarding node.
6. The system according to claim 1, wherein The construction of the destination communication path between the source forwarding node and the destination forwarding node includes: The source forwarding node obtains the identification information of the destination forwarding node, and queries whether the identification information of the destination forwarding node exists in the local path table, where the local path table stores the forwarding nodes known to the source forwarding node and the network communication paths corresponding to each of the known forwarding nodes; If the identification information of the destination forwarding node exists in the local path table, directly obtain the network communication path corresponding to the identification information of the destination forwarding node in the local path table as the destination communication path.
7. The system according to claim 6, characterized in that, The construction of the destination communication path between the source forwarding node and the destination forwarding node further includes: If the identification information of the destination forwarding node does not exist in the local path table, the source forwarding node sends the identification information of the destination forwarding node to the first-level forwarding node to query whether there is a network communication path between the destination forwarding node in the local path table of the first-level forwarding node; If there is a network communication path between the destination forwarding node in the local path table of the first-level forwarding node, a destination communication path between the source forwarding node and the destination forwarding node is constructed with the first-level forwarding node as the intermediate forwarding node; The first-level forwarding node is the forwarding node closest to the source forwarding node, or the first-level forwarding node is a forwarding node known to the source forwarding node.
8. The system according to claim 7, wherein The construction of the destination communication path with the destination forwarding node further includes: If there is no network communication path between the destination forwarding node in the local path table of the first-level forwarding node, the first-level forwarding node sends the identification information of the destination forwarding node to the second-level forwarding node to query whether there is a network communication path between the destination forwarding node in the local path table of the second-level forwarding node; If there is a network communication path between the destination forwarding node in the local path table of the second-level forwarding node, a destination communication path between the source forwarding node and the destination forwarding node is constructed with the first-level forwarding node and the second-level forwarding node as the intermediate forwarding nodes; If there is no network communication path between the destination forwarding node in the local path table of the second-level forwarding node, the second-level forwarding node sends the identification information of the destination forwarding node to the third-level forwarding node to query whether there is a network communication path between the destination forwarding node in the local path table of the third-level forwarding node, until the forwarding times of the identification information of the destination forwarding node reach the preset times or a network communication path between the destination forwarding node is found in the local path table of any forwarding node; The second-level forwarding node is the forwarding node closest to the first-level forwarding node, or the second-level forwarding node is a forwarding node known to the first-level forwarding node; The third-level forwarding node is the forwarding node closest to the second-level forwarding node, or the third-level forwarding node is a forwarding node known to the second-level forwarding node.
9. The system according to claim 7, characterized in that, After constructing the destination communication path between the source forwarding node and the destination forwarding node with the first-level forwarding node as the intermediate forwarding node, it further includes: Storing the destination forwarding node and the destination communication path in the local path table.
10. The system according to any one of claims 6 to 9, characterized in that, The several forwarding nodes perform network communication in a distributed manner, and it further includes: After receiving the communication data, the destination forwarding node stores the source forwarding node and the destination communication path in the local path table of the destination forwarding node.
Citation Information
Patent Citations
Data integration method, apparatus, and related device
WO2022143583A1