A method, system, computer device and storage medium for actively requesting data synchronization by a positive network gate communication

By proactively initiating synchronization requests and confirming types through the client inside the gateway, the problem of inefficiently synchronizing tag information and configuration information in existing technologies is solved, realizing an automated data synchronization process and reducing user operation complexity and bandwidth consumption.

CN116886717BActive Publication Date: 2026-05-05XIAN THERMAL POWER RES INST CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
XIAN THERMAL POWER RES INST CO LTD
Filing Date
2023-08-03
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

Existing forward gateway technology cannot achieve efficient and automated data synchronization, especially for low-frequency data such as tag information and configuration information that need to be synchronized under specific circumstances, and existing software systems cannot meet this requirement.

Method used

The client inside the gateway initiates a synchronization request, which is then confirmed and responded to by the server outside the gateway. The synchronization type and data type confirmation requests are made sequentially until a match is found, at which point data synchronization is performed, including the synchronization of real-time data, tag information, and local parameters.

Benefits of technology

It simplifies user operations, reduces data filtering time, lowers user workload, and reduces bandwidth usage of communication packets during the request process, thereby improving the efficiency and reliability of data synchronization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116886717B_ABST
    Figure CN116886717B_ABST
Patent Text Reader

Abstract

This invention belongs to the field of forward network gateway data transmission, and relates to a method for proactively requesting data synchronization in forward network gateway communication. The client actively initiates a synchronization request; the server determines whether to upload external instructions to confirm synchronization and responds; after receiving the response, the client determines whether synchronization is successful, and if so, sends a synchronization type confirmation request; the server matches the uploaded external instructions with the synchronization type confirmation request and responds; the client determines whether the synchronization type matches successfully based on the response, and if so, sends a data type confirmation request packet for that synchronization type; the server matches the uploaded external instructions with the data type confirmation request and responds; the client determines whether the data type matches successfully based on the response, and if so, sends a data synchronization packet for that data type; the server parses and updates the data synchronization packet, completing the synchronization. This solves the problem of the server and client being unable to interact on data and unable to synchronize the data needed by the user.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of forward gateway data transmission technology, specifically relating to a method, system, computer equipment, and storage medium for forward gateway communication to actively request data synchronization. Background Technology

[0002] In power systems, networks are divided into different security levels to ensure data security. When data needs to be transmitted between high-risk and low-risk networks, a forward isolation device must be added.

[0003] A forward gateway ensures unidirectional data exchange between two security levels, with data flowing from the higher security level to the lower. Its unidirectional transmission of data between the presentation layer and application layer prevents TCP responses from carrying data content, and the two network interface cards (NICs) inside and outside the forward gateway are not network-linked within the device. This network isolation technology completely eliminates logical connections, information transmission commands, physical connections, and information transmission protocols between two independent host systems, allowing only unidirectional data transmission—a true physical hardware device.

[0004] Due to the characteristics of forward gateways, data synchronization can currently only be achieved through manual export and import by the customer. This method not only requires a significant amount of time for data filtering, but also cannot meet the data synchronization requirements quickly due to the distance between the two machines needing data synchronization. Furthermore, current software systems in the industry only implement one-way transmission of real-time and historical data. However, in field applications, data such as tag information and configuration information sometimes also need to be synchronized. Compared to real-time data, this type of data does not have the characteristic of real-time change; it only changes under specific circumstances and at a low frequency. Existing software systems cannot meet these requirements. Summary of the Invention

[0005] The purpose of this invention is to provide a method, system, computer device, and storage medium for proactively requesting data synchronization via a forward network gateway, thereby solving the problem that the server on the outside of the network gateway and the client on the inside of the network gateway cannot interact with each other and cannot synchronize the data required by the user.

[0006] This invention is achieved through the following technical solution:

[0007] A method for proactively requesting data synchronization via forward network gateway communication includes the following steps:

[0008] S1. The client inside the network gateway actively initiates a synchronization request;

[0009] S2. The external server of the network gateway determines whether to synchronize and respond by checking whether the user has uploaded external commands.

[0010] S3. After receiving the response, the client inside the network gateway determines whether synchronization is required. If yes, it sends synchronization type confirmation requests in sequence. If no, it ends the current data synchronization.

[0011] S4. The external server of the gateway matches and responds to the synchronization type confirmation request sent by the internal client of the gateway based on the external command uploaded by the user.

[0012] S5. The client inside the network gateway determines whether the synchronization type is successfully matched based on the response. If it is, it starts sending data type confirmation request packets for that synchronization type; if not, it continues to send the remaining synchronization type confirmation request packets until the confirmation of the supported synchronization types ends.

[0013] S6. The external server of the gateway matches and responds to the data type confirmation request sent by the client inside the gateway based on the external instructions uploaded by the user.

[0014] S7. The client inside the network gateway determines whether the data type matches successfully based on the response. If so, it starts sending data synchronization packets of that data type.

[0015] If not, the client inside the gateway will continue to send confirmation requests for the remaining data types until the confirmation of the supported data types is completed;

[0016] S8. After synchronizing the received data, the external server of the network gateway performs data parsing and data updates to complete this data synchronization operation.

[0017] Furthermore, the forward gateway only supports unidirectional transmission. The server on the outside of the gateway cannot actively initiate synchronization requests. Data synchronization requests are initiated periodically by the client on the inside of the gateway, and the server on the outside of the gateway confirms the synchronization requests to complete subsequent steps.

[0018] Furthermore, in S3, the synchronization types include real-time data synchronization, tag information synchronization, and local parameter synchronization.

[0019] Furthermore, in S2 and S4, the external commands uploaded by the user are all synchronization commands uploaded by the user through the external server of the gateway. These synchronization commands include real-time data synchronization commands, tag information synchronization commands, and local parameter synchronization commands.

[0020] Furthermore, when the synchronization type is real-time data and tag information, the data type in S6 is a basic data type;

[0021] When the synchronization type is local parameter, the data type in S6 is data stream.

[0022] Furthermore, in S6, the external commands uploaded by the user are the data type commands selected by the user on the server side outside the gateway.

[0023] Furthermore, in S2, S4, and S6, the server outside the gateway responds with 0xFF or 0x00, where 0xFF indicates success and 0x00 indicates failure.

[0024] The present invention also discloses a system for proactively requesting data synchronization via forward gateway communication, comprising an inner client and an outer server of the gateway, wherein the inner client and the outer server are connected via a forward gateway physical isolation device;

[0025] The client side of the network gateway has a synchronization request module, a synchronization type confirmation request module, a data type confirmation request module, and a data synchronization module. The server side of the network gateway has a synchronization confirmation module, a synchronization type confirmation module, a data type confirmation module, and a data processing module.

[0026] The synchronization request module is used to actively initiate synchronization requests;

[0027] The synchronization confirmation module is used to confirm whether to perform synchronization and respond by determining whether the user has uploaded external commands;

[0028] The synchronization type confirmation request module is used to determine whether synchronization is achieved after receiving a response. If it is, synchronization type confirmation requests are sent sequentially; otherwise, the current data synchronization ends.

[0029] The synchronization type confirmation module is used to match and respond to external instructions uploaded by the user with the synchronization type confirmation request sent.

[0030] The data type confirmation request module is used to determine whether the synchronization type is successfully matched based on the response. If it is, it starts sending data type confirmation request packets for that synchronization type; otherwise, it continues to send the remaining synchronization type confirmation request packets until the confirmation of the supported synchronization types ends.

[0031] The data type confirmation module is used to match and respond to external instructions uploaded by the user with the data type confirmation request sent.

[0032] The data synchronization module is used to determine whether the data type matches successfully based on the response. If it does, it starts sending data synchronization packets of that data type; otherwise, it starts the data type confirmation request module and continues to send the remaining data type confirmation requests until the confirmation of the supported data types is completed.

[0033] The data synchronization processing module is used to parse and update the received data synchronization packet to complete the data synchronization operation.

[0034] The present invention also discloses a computer device, the computer device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the method for actively requesting data synchronization via forward gateway communication.

[0035] The present invention also discloses a computer-readable storage medium storing a computer program, which is executed by a processor to implement the steps of the method for actively requesting data synchronization via forward gateway communication.

[0036] Compared with the prior art, the present invention has the following beneficial technical effects:

[0037] This invention discloses a method for proactively requesting data synchronization via a forward network gateway, eliminating the need for user intervention in the synchronization process. The system handles the synchronization, and users only need to upload synchronization commands through interfaces such as web pages or systems provided by the server outside the gateway to initiate data synchronization. Compared to current data synchronization methods, this method simplifies user operations, eliminating the need for extensive data filtering and reducing workload. It also minimizes the impact of environmental factors on data synchronization. During synchronization, the synchronization type is confirmed first, followed by the data type, and finally, data synchronization is performed to obtain the desired data. Since the entire request and confirmation process only includes the message header, the communication packet size is small. Furthermore, data synchronization only begins after all user-uploaded commands are successfully matched. Therefore, the data packets sent during the request process do not consume excessive gateway bandwidth, thus minimizing interference with other data transmissions. Attached Figure Description

[0038] Figure 1 A flowchart of the forward network gateway communication active data synchronization request part of this invention;

[0039] Figure 2 This is a system diagram of the forward network gateway communication active data synchronization request part of the present invention. Detailed Implementation

[0040] To make the objectives, technical solutions, and advantages of the present invention clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention; that is, the described embodiments are only a part of the embodiments of the present invention, and not all of them.

[0041] The components described and illustrated in the accompanying drawings and embodiments of this invention can be arranged and designed in various different configurations. Therefore, the detailed description of the embodiments of the invention provided in the following drawings is not intended to limit the scope of the claimed invention, but merely to illustrate one selected embodiment of the invention. All other embodiments obtained by those skilled in the art based on the accompanying drawings and embodiments of this invention without inventive effort are within the scope of protection of this invention.

[0042] It should be noted that the terms “comprising,” “including,” or any other variations are intended to cover non-exclusive inclusion, such that a process, element, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to the process, element, method, article, or apparatus.

[0043] like Figure 1 As shown, this invention discloses a method for proactively requesting data synchronization via forward network gateway communication, comprising the following steps:

[0044] S1. The client inside the network gateway actively initiates a synchronization request;

[0045] S2. The external server of the network gateway determines whether to synchronize and respond by checking whether the user has uploaded external commands.

[0046] S3. After receiving the response, the client inside the network gateway determines whether synchronization is required. If yes, it sends synchronization type confirmation requests in sequence. If no, it ends the current data synchronization.

[0047] S4. The external server of the gateway matches and responds to the synchronization type confirmation request sent by the internal client of the gateway based on the external command uploaded by the user.

[0048] S5. The client inside the network gateway determines whether the synchronization type is successfully matched based on the response. If it is, it starts sending data type confirmation request packets for that synchronization type; if not, it continues to send the remaining synchronization type confirmation request packets until the confirmation of the supported synchronization types ends.

[0049] S6. The external server of the gateway matches and responds to the data type confirmation request sent by the client inside the gateway based on the external instructions uploaded by the user.

[0050] S7. The client inside the network gateway determines whether the data type matches successfully based on the response. If so, it starts sending data synchronization packets of that data type.

[0051] If not, the client inside the gateway will continue to send confirmation requests for the remaining data types until the confirmation of the supported data types is completed;

[0052] S8. The external server of the network gateway parses and updates the received data synchronization packet to complete the data synchronization operation.

[0053] The features and performance of the present invention will be further described in detail below with reference to embodiments.

[0054] like Figure 1 As shown, in one embodiment, the method proposed by the present invention includes the following steps:

[0055] Since the server can only respond with one byte through the forward gateway, unless otherwise specified, 0xFF indicates success and 0x00 indicates failure in the following description.

[0056] Step 1: The client periodically initiates a synchronization request and waits for the server's response. If the response times out or the confirmation fails, Step 1 is repeated.

[0057] Step 2: After selecting the synchronization type option in the interface provided by the server, the user sends a synchronization command to the server; this command includes, but is not limited to, real-time data synchronization command, tag information synchronization command, and configuration information synchronization command.

[0058] The server responds to the client based on whether the user has uploaded a synchronization command. If a synchronization command is uploaded, the server responds with 0xFF; otherwise, it responds with 0x00.

[0059] Step 3: After receiving the response from the server, the client makes a judgment. If the response is 0xFF, it sends confirmation requests for the supported synchronization types in sequence; otherwise, it ends the current data synchronization.

[0060] Step 4: After receiving the synchronization command from the user, the server matches it with the synchronization type confirmation request sent by the client. If the match is successful, the server responds with 0xFF; otherwise, it responds with 0x00.

[0061] Step 5: After receiving the response, the client makes a judgment. If the response is 0xFF, it sends confirmation requests for the supported data types in sequence. Otherwise, it jumps to step 3 to send confirmation requests for other supported synchronization types.

[0062] When the synchronization type is real-time data or tag information synchronization, the data type is the basic data type; when the synchronization configuration information is selected, the data type is data stream.

[0063] Step 6: After receiving the data type confirmation request, the server matches it with the user-uploaded command. If a match is found, the server responds with 0xFF; otherwise, it responds with 0x00.

[0064] Step 7: After receiving the response, the client makes a judgment. If the response is 0xFF, it sends a data packet of that type. Otherwise, it jumps to step 5 to send a confirmation request for other supported data types.

[0065] Step 8: After receiving the data synchronization packet from the client, the server parses and updates the data to complete the data synchronization operation.

[0066] In another embodiment, such as Figure 2 As shown, the present invention provides a system for proactively requesting data synchronization via forward gateway communication, including an internal client and an external server, which are connected via a forward gateway physical isolation device.

[0067] The client side of the network gateway has a synchronization request module, a synchronization type confirmation request module, a data type confirmation request module, and a data synchronization module. The server side of the network gateway has a synchronization confirmation module, a synchronization type confirmation module, a data type confirmation module, and a data processing module.

[0068] The synchronization request module is used to actively initiate synchronization requests;

[0069] The synchronization confirmation module is used to confirm whether to perform synchronization and respond by determining whether the user has uploaded external commands;

[0070] The synchronization type confirmation request module is used to determine whether synchronization is achieved after receiving a response. If it is, synchronization type confirmation requests are sent sequentially; otherwise, the current data synchronization ends.

[0071] The synchronization type confirmation module is used to match and respond to external instructions uploaded by the user with the synchronization type confirmation request sent.

[0072] The data type confirmation request module is used to determine whether the synchronization type is successfully matched based on the response. If it is, it starts sending data type confirmation request packets for that synchronization type; otherwise, it continues to send the remaining synchronization type confirmation request packets until the confirmation of the supported synchronization types ends.

[0073] The data type confirmation module is used to match and respond to external instructions uploaded by the user with the data type confirmation request sent.

[0074] The data synchronization module is used to determine whether the data type matches successfully based on the response. If it does, it starts sending data synchronization packets of that data type; otherwise, it starts the data type confirmation request module and continues to send the remaining data type confirmation requests until the confirmation of the supported data types is completed.

[0075] The data synchronization processing module is used to parse and update the received data synchronization packets to complete the data synchronization operation.

[0076] In another embodiment, a computer-readable storage medium is also provided, storing a computer program that, when executed by a processor, implements the method for proactively requesting data synchronization via forward gateway communication.

[0077] In another embodiment, a computer device is also provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the method for proactively requesting data synchronization via forward gateway communication.

[0078] For example, the computer program may be divided into one or more modules / units, which are stored in a computer-readable storage medium and executed by the processor to complete the steps of the real-time database fault recovery method of this application. The one or more modules / units may be a series of computer-readable instruction segments capable of performing a specific function, which describe the execution process of the computer program in a computer device.

[0079] The server can be a computing device such as a laptop, desktop computer, or cloud server. The server may include, but is not limited to, a processor and memory. Those skilled in the art will understand that the server may also include more or fewer components, or combinations of certain components, or different components; for example, the server may also include input / output devices, network access devices, buses, etc.

[0080] The processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), off-the-shelf programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.

[0081] The memory can be an internal storage unit of the server, such as a hard drive or RAM. Alternatively, it can be an external storage device, such as a plug-in hard drive, Smart Media Card (SMC), Secure Digital Card (SD), or Flash Card. Furthermore, the memory can include both internal and external storage units. The memory stores the computer-readable instructions and other programs and data required by the server. It can also temporarily store data that has been output or will be output.

[0082] It should be noted that the information interaction and execution process between the above-mentioned devices / units are based on the same concept as the method embodiments. For details on their specific functions and technical effects, please refer to the method embodiments section, which will not be repeated here.

[0083] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0084] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying the computer program code to a photographing device / terminal device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks.

[0085] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0086] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A method for proactively requesting data synchronization via forward network gateway communication, characterized in that, Includes the following steps: S1. The client inside the network gateway actively initiates a synchronization request; S2. The external server of the network gateway determines whether to synchronize and respond by checking whether the user has uploaded external commands. S3. After receiving the response, the client inside the network gateway determines whether synchronization is required. If yes, it sends synchronization type confirmation requests in sequence. If no, it ends the current data synchronization. S4. The external server of the gateway matches and responds to the synchronization type confirmation request sent by the internal client of the gateway based on the external command uploaded by the user. S5. The client inside the network gateway determines whether the synchronization type is successfully matched based on the response. If it is, it starts sending data type confirmation request packets for that synchronization type; if not, it continues to send the remaining synchronization type confirmation request packets until the confirmation of the supported synchronization types ends. S6. The external server of the gateway matches and responds to the data type confirmation request sent by the client inside the gateway based on the external instructions uploaded by the user. S7. The client inside the network gateway determines whether the data type matches successfully based on the response. If so, it starts sending data synchronization packets of that data type. If not, the client inside the gateway will continue to send confirmation requests for the remaining data types until the confirmation of the supported data types is completed; S8. The external server of the network gateway parses and updates the received data synchronization packet to complete the data synchronization operation.

2. The method for actively requesting data synchronization via forward network gateway communication according to claim 1, characterized in that, The forward gateway only supports one-way transmission. The server on the outside of the gateway cannot actively initiate synchronization requests. Data synchronization requests are initiated periodically by the client on the inside of the gateway, and the server on the outside of the gateway confirms the synchronization requests to complete subsequent steps.

3. The method for actively requesting data synchronization via forward network gateway communication according to claim 1, characterized in that, In S3, the synchronization types include real-time data synchronization, tag information synchronization, and local parameter synchronization.

4. The method for actively requesting data synchronization via forward network gateway communication according to claim 3, characterized in that, In S2 and S4, the external commands uploaded by users are all synchronization commands uploaded by users through the external server of the gateway. These synchronization commands include real-time data synchronization commands, tag information synchronization commands, and local parameter synchronization commands.

5. The method for actively requesting data synchronization via forward network gateway communication according to claim 3, characterized in that, When the synchronization type is real-time data and tag information, the data type in S6 is a basic data type; When the synchronization type is local parameter, the data type in S6 is data stream.

6. The method for actively requesting data synchronization via forward network gateway communication according to claim 1, characterized in that, In S6, the external commands uploaded by the user are the data type commands selected by the user on the server side outside the gateway.

7. The method for actively requesting data synchronization via forward network gateway communication according to claim 1, characterized in that, In S2, S4 and S6, the server on the outside of the network gateway responds with 0xFF or 0x00, where 0xFF indicates success and 0x00 indicates failure.

8. A system for proactively requesting data synchronization via forward network gateway communication, characterized in that, It includes an internal client and an external server of the gateway, which are connected via a forward gateway physical isolation device; The client side of the network gateway has a synchronization request module, a synchronization type confirmation request module, a data type confirmation request module, and a data synchronization module. The server side of the network gateway has a synchronization confirmation module, a synchronization type confirmation module, a data type confirmation module, and a data processing module. The synchronization request module is used to actively initiate synchronization requests; The synchronization confirmation module is used to confirm whether to perform synchronization and respond by determining whether the user has uploaded external commands; The synchronization type confirmation request module is used to determine whether synchronization is achieved after receiving a response. If it is, synchronization type confirmation requests are sent sequentially; otherwise, the current data synchronization ends. The synchronization type confirmation module is used to match and respond to external instructions uploaded by the user with the synchronization type confirmation request sent. The data type confirmation request module is used to determine whether the synchronization type is successfully matched based on the response. If it is, it starts sending data type confirmation request packets for that synchronization type; otherwise, it continues to send the remaining synchronization type confirmation request packets until the confirmation of the supported synchronization types ends. The data type confirmation module is used to match and respond to external instructions uploaded by the user with the data type confirmation request sent. The data synchronization module is used to determine whether the data type matches successfully based on the response. If it does, it starts sending data synchronization packets of that data type; otherwise, it starts the data type confirmation request module and continues to send the remaining data type confirmation requests until the confirmation of the supported data types is completed. The data synchronization processing module is used to parse and update the received data synchronization packets to complete the data synchronization operation.

9. A computer device, characterized in that, The computer device includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps of the method for actively requesting data synchronization via forward gateway communication as described in any one of claims 1-7.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that is executed by a processor to implement the steps of the method for proactively requesting data synchronization via forward gateway communication as described in any one of claims 1-7.

Citation Information

Patent Citations

  • Communication system and method for use in restricted network environment

    CN106060065A

  • Network security system under mobile Internet environment

    CN106230795A