Virtual bus data link optimization method and device based on command and control system
By introducing the virtual bus data link optimization method in the command and control system, the problem of protocol management and update of the data sending end is solved, the data validity and timeliness are guaranteed, and the data exchange efficiency and quality stability is improved.
Patent Information
- Application Number
- CN202510009394.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-03
- Publication Date
- 2025-04-18
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
In the prior art, the protocol management and update problems of the data sending end in the command and control system lead to difficult to ensure data validity and timeliness, and data exchange efficiency and quality are unstable.
The virtual bus data link preferred method based on the command and control system is adopted to establish connections with the data sending node and the receiving node through the virtual bus to realize the analysis, filtering, verification and cache of data packets, and the link priority and data verification condition information are used to optimize the usage mode of the data link and the data cache mechanism.
It improves the efficiency and quality of data processing, simplifies the difficulty and workload of data processing, narrows the scope of change when data protocol changes, enhances the controllability of data change operations, and ensures the timeliness and integrity of data.
Smart Images

Figure CN119854203A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data transmission processing, and in particular to a method and device for optimizing a virtual bus data link based on a command and control system. Background Art
[0002] Various command and control systems today often have the following phenomena: First, in various command and control systems, there are various forms of data transmission and reception associations between different devices, such as one-to-one, one-to-many, many-to-many, and flexible data transmission and reception in individual cases; Second, there is no unified data receiving interface for the data receiver in the command and control system, and there is no unified constraint standard for data processing on different data receiving devices or even different software. New receiving nodes need to be repeatedly transplanted or implemented with data receiving programs, which not only leads to a waste of resources, but also easily leads to the accumulation of errors and confusion of program versions during program copying; Third, for command and control systems, the requirements for data validity and timeliness are high, and the inefficient link data transmission and reception structure and the non-standardized data parsing and reception methods make it difficult to achieve stable and long-term data validity and timeliness requirements.
[0003] In a command and control system, a single data source usually sends the same data through multiple links to ensure that the communication has sufficient redundancy and adapt to the link selection requirements of the downstream data receiving nodes. The data receiving nodes may be different applications on different devices. Due to the high requirements of the command and control system for data quality and timeliness, each data receiving node needs to complete data parsing, data filtering and selection, validity verification, and timeliness verification before it can further use the received data. In this process, there are often the following risks and problems:
[0004] (1) In the data parsing process, each data packet needs to have a corresponding data parsing protocol file. This file is usually presented in XML or Excel document format and contains the information required for parsing the corresponding data packet. Each data receiving node needs to hold the data parsing protocol files of all data packets to be received. This brings about the following problems: First, when the data parsing protocol changes, the data parsing-related code may need to be changed at both the data layer and the logic layer, and these changes need to be repeated at each receiving node (see Figure 2 The processing link before each data receiving node on the right); secondly, since not all data receiving nodes are in working state for a long time, it is difficult to ensure the timeliness and coverage of related changes.
[0005] (2) In the data filtering and selection phase, the data sending node sends multiple data packets in parallel through multiple links. However, due to various reasons such as high data delay or data loss, the data in some data packets in a single link may be unavailable. In this case, if the program of the receiving node does not have the ability to receive data from other links, the node will not be able to obtain all the data variables it needs.
[0006] (3) Before obtaining available data, each data receiving node needs to perform data analysis, data filtering and selection, validity verification, and timeliness verification. Due to differences in development time and conditions of different applications, limitations, or historical factors, there may be large differences in data processing efficiency and reliability on different receiving nodes. In addition to the other external factors mentioned above, it is almost impossible to ensure that most receiving nodes obtain the specified data efficiently, completely, reliably, and in a timely manner, and to ensure the validity of global data.
[0007] (4) In the command and control system, the configuration between the data sending and receiving nodes is usually a one-to-many or many-to-many relationship. For the receiving node, when there are continuous additions or changes to the system, each node needs to re-implement the business logic of "data parsing, data filtering and selection, validity verification, and timeliness verification" (see Figure 3 There is a lot of duplication of work and a lot of waste of resources. It is essentially a repetitive operation on similar problems at a low level of abstraction. Therefore, it is necessary to implement a unified solution to homogeneous problems at a higher level of abstraction.
[0008] In summary, how to solve the problems of protocol management and update of the data sending end existing in the existing technology, ensure the validity and timeliness of the data, and achieve stable and lasting improvement in the data exchange efficiency and quality in the command and control system is an urgent problem to be solved. Summary of the invention
[0009] In view of this, the purpose of the present invention is to provide a virtual bus data link optimization method and device based on a command and control system, so as to at least solve the protocol management and update problems of the data sending end existing in the prior art, provide data validity and timeliness guarantees, and enable the data exchange efficiency and quality in the command and control system to be stably and permanently improved.
[0010] The present invention solves the above technical problems by the following technical means:
[0011] In a first aspect, an embodiment of the present invention provides a virtual bus data link optimization method based on a command and control system, wherein the virtual bus is connected to both a data sending node and a data receiving node, and the virtual bus parses, filters, verifies, and caches received data packets based on a data parsing protocol file, and the method comprises the following steps:
[0012] intercepting data packets on all links, wherein the data packets are to be sent by at least one data sending node to at least one data receiving node through multiple links;
[0013] Read the data link priority configuration file to obtain link priority information;
[0014] Different data buffers are created based on different link priority usage modes;
[0015] Read data verification configuration information to obtain data verification condition information;
[0016] Based on the link priority information and the data verification condition information, read the data from the data packet transmitted by the link and perform data verification, and store the verified qualified data in the data buffer area respectively;
[0017] According to the data information that the data receiving node specifies to be retrieved, data packets and variables are distributed from the data buffer area to the data receiving node.
[0018] In combination with the first aspect, in some implementations, the data receiving node has a virtual bus configuration file and a virtual bus communication dynamic library file, the virtual bus configuration file includes information about the data receiving node itself and information about the virtual bus to be connected, and the virtual bus communication dynamic library file includes a virtual bus connection interface and data retrieved from the virtual bus;
[0019] The data receiving node can establish a connection with the virtual bus and receive data by calling the virtual bus connection interface in the virtual bus communication dynamic library and simultaneously passing in the virtual bus configuration file of the current data receiving node.
[0020] In combination with the first aspect, in some implementations, the step of reading a data link priority configuration file to obtain link priority information includes:
[0021] Get all data sending links;
[0022] Rearrange the priority order of all the links, set the order of accessing data in different link priority usage modes, obtain link priority information, and save it in a data link priority configuration file;
[0023] Recall the link priority information in the data link priority configuration file.
[0024] In combination with the first aspect, in some implementations, the link priority usage includes: priority usage based on link validity and priority usage based on data packet validity.
[0025] In combination with the first aspect, in some implementations, the data verification condition information includes data validity verification conditions and timeliness verification conditions.
[0026] In combination with the first aspect, in some implementations, based on the link priority information and the data verification condition information, data is read from a data packet transmitted by the link and data verification is performed, and the verified qualified data is stored in a data buffer area respectively, including:
[0027] According to the data parsing protocol file and link priority information corresponding to each data packet, all variables in different data packets on different links are parsed and collected;
[0028] Filter and select all variables obtained from the analysis;
[0029] Use the link validity priority to verify the data validity and timeliness of the filtered data, and store the verified data in the data cache based on link validity;
[0030] Using the data packet validity priority, the data selected by the filter is verified for data validity and timeliness, and the verified data is stored in the data buffer area based on the data packet validity.
[0031] In combination with the first aspect, in some implementations, the link validity priority order is used to verify the data validity and timeliness of the data selected by filtering, and the verified data is stored in a data cache area based on link validity, including:
[0032] Determine whether there are any remaining available links;
[0033] If there are any remaining available links, select the link with the highest current priority;
[0034] Based on the data validity verification conditions and timeliness verification conditions, all data packets on the current highest priority link are verified for data validity and timeliness;
[0035] The verified data is stored in the data buffer based on the link validity.
[0036] In combination with the first aspect, in some implementations, the use of the data packet validity priority order to verify the data validity and timeliness of the data selected by filtering, and storing the verified data in a data cache area based on data packet validity, includes:
[0037] Get a list of all data packages and variable requirements;
[0038] Determine whether all current data packets have missing validity data packets and missing variables;
[0039] If there is a missing validity data packet and a missing variable, check whether there are any remaining available links. If there are any remaining available links, read the required data packets and variables from the current highest priority link;
[0040] Based on the data validity verification conditions and timeliness verification conditions, all data packets on the current highest priority link are verified for data validity and timeliness;
[0041] The verified data is stored in a data buffer based on the validity of the data packet;
[0042] If there are no missing validity packets and no missing variables, the packets and variables are directly used for distribution to the receiving nodes.
[0043] One or more technical solutions provided in the embodiments of the present invention have at least the following technical effects or advantages:
[0044] The method of the present invention solves the protocol management and update problems of the data sending end existing in the prior art, provides data validity and timeliness guarantee, and enables the data exchange efficiency and quality in the command and control system to be stably and permanently improved. In the communication of the command and control system, the data parsing, selection filtering, and verification processes that originally needed to be repeated and independently completed by different programs on different PCs or devices are packaged into a virtual bus, and two data link priority usage methods based on link validity and data packet validity are used, as well as the corresponding different cache mechanisms to ensure the timeliness and integrity of the data, and the benefits brought by them include at least:
[0045] (1) The centralized data processing mode of the virtual bus greatly improves the efficiency and quality of data processing, providing flexible and stable data supply for the command and control system;
[0046] (2) It greatly reduces the scope of changes when data protocols in the command and control system are changed, and increases the controllability of data change operations;
[0047] (3) It effectively simplifies the data processing difficulty and workload of numerous downstream applications in the command and control system, while being able to provide high-quality data in a long-term and stable manner, freeing up more resources for the construction of business logic.
[0048] In the second aspect, an embodiment of the present invention also provides a virtual bus data link optimization device based on a command and control system, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method described in the first aspect when executing the computer program.
[0049] In a third aspect, an embodiment of the present invention further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the method described in the first aspect are implemented.
[0050] It can be understood that the beneficial effects of the second and third aspects mentioned above can be found in the relevant description of the first aspect mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0051] Figure 1 It is a flow chart of a virtual bus data link optimization method based on a command and control system;
[0052] Figure 2 It is a diagram of the data transmission and reception mode between individual nodes in the existing command and control system;
[0053] Figure 3 It is a schematic diagram of the data transmission and reception mode between multiple nodes in the existing command and control system;
[0054] Figure 4 It is a diagram of the position of the virtual bus in the data transmission and reception structure;
[0055] Figure 5 It is a schematic diagram of the specific working process of the virtual bus in the control system;
[0056] Figure 6 It is the overall workflow diagram of the two data link priority usage modes based on the virtual bus in the command and control system;
[0057] Figure 7 It is a data transmission and reception flow chart of a virtual bus data link optimization method based on a command and control system. DETAILED DESCRIPTION
[0058] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0059] In the description of the embodiments of the present application, unless otherwise specified, "multiple" means two or more, for example, multiple processing units refer to two or more processing units, etc., multiple elements refer to two or more elements, etc.
[0060] In the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0061] Please refer to Figure 2 and Figure 3 In the existing command and control system, the data transmission and reception configuration is generally that multiple data sending nodes send data through multiple links, and the data receiving nodes thereby establish one or more corresponding data connections to receive and process the corresponding data. The terminals of the data receiving nodes are different programs or application software on different PC nodes or other types of devices. The data packets transmitted in the command and control system are usually described using the corresponding data parsing protocol files. For example, the possible structure of a data parsing protocol file representing a data packet of aircraft position information can be seen in Table 1:
[0062] serial number name Data Types byte Total Bytes 0 Frame synchronization header Char 1 1 1 Frame header length Unchar 1 2 2 Data length Ushort 2 4 3 Reserve Ushort 2 6 4 longitude Double 8 14 5 latitude Double 8 22 6 high Ulong 4 26 … … … … … Data check value Ulong 4
[0063] Table 1
[0064] From the overall structure, a data packet can be divided into a frame header part and a data body part. In the example of Table 1, numbers 0 to 3 belong to the frame header part, where the frame synchronization header is used to identify the type of data packet and the beginning of a frame of data. It is usually represented by Char type data represented in hexadecimal, such as "0xAA". When the data receiver receives the data and recognizes the data of the byte "0xAA", it knows that this is the beginning position of a data packet about the aircraft position information. In addition, the frame header length and the data length indicate the data length of the frame header part and the data length of the main part respectively. According to this information, the length and end position of the data can be known. Based on the possible expansion requirements of the data frame in the future, the data may also contain some reserved positions, such as number 3 in Table 1. The data body contains different variables about the aircraft position, such as the longitude, latitude, and altitude information in Table 1. In addition, in order to ensure that the data has not changed when it is sent and when it arrives, a data check value is usually included at the end of the data packet. For the data in the current data packet, the data check value is calculated using the data check algorithm pre-agreed by the data sending node and the data receiving node.
[0065] In the data parsing protocol file, variables are usually accessed by byte offset. Because each variable is a fixed type of data and occupies a fixed byte length, the relative byte offset and byte length of the starting position of each variable are given, and the data type is specified at the same time, then the corresponding variable value can be obtained.
[0066] In the command and control system, a single data sending node usually sends the same data through multiple links to ensure that the communication has sufficient redundancy and adapt to the link selection requirements of the downstream data receiving node. For example, the data packet containing the aircraft position information represented in Table 1 is A, and there are three other types of data packets B, C, and D. The data sending node has four data sending links 1, link 2, link 3, and link 4, and each link may be sending four types of data packets A, B, C, and D.
[0067] The data receiving nodes may be different applications on different devices. Due to the high requirements of the command and control system on data quality and timeliness, each data receiving node needs to complete data parsing, data filtering and selection, validity verification, and timeliness verification before further using the received data. Figure 2 The data sending node in the system broadcasts four data packets A, B, C, and D through four links. The three receiving nodes are located in the PC node. These three receiving nodes may be different applications. If each program requires the longitude, latitude, and altitude data of the aircraft, then each program needs to independently complete the data parsing of the A data packet in combination with the data parsing protocol file saved on the PC node, find the required longitude, latitude, and altitude data, and complete the validity verification and timeliness verification.
[0068] In addition, in the command and control system, the configuration between the data sending and receiving nodes is usually a one-to-many or many-to-many relationship. For the receiving nodes, when there are continuous additions or changes in the system, each data receiving node needs to re-implement the business logic of "data parsing, data filtering and selection, validity verification, and timeliness verification" (see Figure 3 ). This involves a lot of duplication of work and a lot of waste of resources. It is essentially a repetitive operation on similar problems at a low level of abstraction. Therefore, it is necessary to implement a unified solution to homogeneous problems at a higher level of abstraction.
[0069] To this end, the present invention proposes a virtual bus data link optimization method based on the command and control system, which combines the characteristics of centralized data management and distributed communication, solves the protocol management and update problems of the data sending end, provides data validity and timeliness guarantees, and enables the data exchange efficiency and quality in the command and control system to be stably and permanently improved.
[0070] Please refer to Figure 1 , Figure 4 , Figure 5 and Figure 6An embodiment of the present invention proposes a virtual bus data link optimization method based on a command and control system, wherein the virtual bus establishes connections with both a data sending node and a data receiving node, and the virtual bus parses, filters, verifies, and caches received data packets based on a data parsing protocol file, and the method comprises the following steps:
[0071] Step 100, intercepting data packets on all links, where the data packets are to be sent from at least one data sending node to at least one data receiving node via multiple links.
[0072] Step 200, read the data link priority configuration file to obtain link priority information;
[0073] Step 300, opening different data buffer areas based on different link priority usage modes;
[0074] Step 400, reading data verification configuration information to obtain data verification condition information;
[0075] Step 500, based on the link priority information and the data verification condition information, read the data from the data packet transmitted by the link and perform data verification, and store the verified qualified data in the data buffer area respectively;
[0076] Step 600 , according to the data information that the data receiving node specifies to be retrieved, the data packet and the variable are distributed from the data buffer area to the data receiving node.
[0077] The data receiving node in the original command and control system directly establishes a connection with the data sending node, and independently completes the data processing flow of parsing, filtering selection, validity and timeliness verification after data reception. In the present invention, the data processing responsibilities that were originally required to be completed independently by each data receiving node are concentrated in the virtual bus in the PC node. The virtual bus needs to connect to multiple data sending links on different data sending nodes, and uniformly complete the data processing flow of parsing, filtering, verifying, and caching the received data packets, and distribute them to the designated data receiving nodes through the virtual bus. Through the above technical solution, first, the centralized data processing mode of the virtual bus greatly improves the efficiency and quality of data processing, providing a flexible and stable data supply for the command and control system; second, it greatly reduces the scope of changes when the data protocol in the command and control system changes, and increases the controllability of data change operations; third, it effectively simplifies the data processing difficulty and workload of many downstream applications in the command and control system, and can provide high-quality data stably for a long time, releasing more resources for the construction of business logic.
[0078] In order to better understand the above technical solution, the above technical solution will be described in detail below in conjunction with the accompanying drawings and specific implementation methods.
[0079] Please refer to Figure 4-7 :
[0080] In step 100, see Figure 4 Any data receiving node in a PC node has a virtual bus configuration file and a virtual bus communication dynamic library file, so it can establish a connection with the virtual bus on the PC node and directly obtain the required valid data. The virtual bus configuration file includes the data receiving node's own information and the information of the virtual bus to be connected. The virtual bus communication dynamic library file includes the virtual bus connection interface, the interface for obtaining data from the virtual bus, and other related data interfaces. By calling these interfaces, the corresponding tasks can be executed.
[0081] In a PC node, the main information related to data transmission in the virtual bus configuration file held by a data receiving node is as follows:
[0082] Bus_id: virtual bus id
[0083] Unique_node_name: The unique name of the current data receiving node
[0084] Local_ip: The IP address of the current data receiving node
[0085] Local_port: The port of the current data receiving node
[0086] The data receiving node can establish a connection with the virtual bus and receive data by calling the virtual bus connection interface in the virtual bus communication dynamic library and passing in the virtual bus configuration file of the current data receiving node.
[0087] The receiving node can specify (or subscribe to) data at the granularity of a specific data packet or variable. This specification operation is completed by calling the interface in the virtual bus communication dynamic library file. In this process, the system configuration changes compared to the original system as follows:
[0088] First, the data receiving node no longer needs to care about data processing and verification. It only needs to add a configuration file for the virtual bus, which contains a description of its data requirements. The responsibilities of the data receiving node are simplified to the management of the virtual bus configuration file, while the responsibilities of data parsing, data filtering selection, and data validity and timeliness verification are all packaged into the data processing module on the virtual bus. Specify which link priority method to use to retrieve data, and then connect to the virtual bus and retrieve data through the interface in the virtual bus communication dynamic library.
[0089] Second, the data receiving node no longer communicates directly with the sending node, but calls the unified data acquisition interface provided by the virtual bus, and directly obtains the corresponding variable data from the virtual bus by passing in the data packet and the variable identifier (name, id, or other unique identifier). After adopting this data acquisition method, the business logic of the receiving node no longer contains a large amount of data processing flow, and does not need to worry about where the data comes from or whether it is valid and available, thereby concentrating development resources on specific application business logic.
[0090] Third, in the one-to-one data sending and receiving relationship after modification, the data receiving node changes. Figure 5 In a many-to-many transmission relationship, each PC (or other device) also uniformly uses the virtual bus to refer to the data parsing protocol file to complete the reception, parsing, filtering, selection, verification and distribution of multi-link data. Different data receiving nodes only need to hold the dynamic library and corresponding configuration files that communicate with the virtual bus to directly obtain the specified variables from the virtual bus.
[0091] In step 200, the data link priority configuration file is read to obtain link priority information, including:
[0092] Step 210: Acquire all data transmission links.
[0093] Step 220, the command and control system re-arranges the priority order of all links, sets the order of accessing data by using different link priority methods, obtains link priority information, and saves it in a data link priority configuration file. For example, the command and control system can specify the priorities of the four links 1, 2, 3, and 4 as 3, 1, 2, and 4.
[0094] Step 230, calling the link priority information in the data link priority configuration file.
[0095] In step 300, there are two ways to use link priority: one is to use priority based on link validity, and the other is to use priority based on data packet validity.
[0096] Priority usage based on link validity focuses on data transmission efficiency, while priority usage based on packet validity focuses on data integrity and validity.
[0097] Based on the priority of link validity, data receiving nodes that choose this method usually pay more attention to the real-time performance of communication. In this method, based on the link priority order of 3, 1, 2, and 4, the virtual bus first determines whether the data communication of link 3 is normal. If it is normal, all data packets are obtained from link 3 and stored in the cache for retrieval. This method has the risk of incomplete data or insufficient data validity, but the real-time performance of data is higher.
[0098] Based on the priority of data validity, data receiving nodes that choose this method usually pay more attention to the validity of data. In this way, the virtual bus will first parse and determine the validity of each data packet from link 3 according to the data parsing protocol file based on the link priority of 3, 1, 2, and 4, and only store the valid data in the cache for retrieval. If the valid data of all data packets cannot be obtained in link 3, the missing data packets will be searched from the second priority link, that is, link 1. This process will continue until the valid data of all data packets are collected or there are no available links. This method ensures the integrity and validity of the data, but abandons the real-time nature of some data.
[0099] In step 400, the data verification condition information includes data validity verification conditions and timeliness verification conditions.
[0100] Data validity verification: the data receiving node uses the same verification algorithm (such as CRC or checksum) as the data sending node to calculate the received data, generate a verification value, and then compare it with the data verification value taken from the data packet to confirm that the data has not changed when it was sent and when it was received, such as the data verification value at the end of the data packet shown in Table 1.
[0101] In a command and control system, different data packets may have different sending periods, such as 15ms, 30ms, 1s, etc. Such data are usually targeted at subjects such as aircraft, whose status values in various aspects are changing rapidly. Therefore, the timeliness of data is an important dimension to consider whether the data is available. In the data verification link, the embodiment of the present invention can set corresponding timeliness verification requirements in the configuration file according to the timeliness requirements of different data packets to achieve accurate data timeliness control.
[0102] Timeliness verification is based on two constraints: one is the data transmission frequency of the data sending node, and the other is the data timeliness requirement of the data receiving node. For example, an aircraft usually has the special property of fast movement. For example, when an aircraft flies at a speed of Mach 2, its moving distance per second is about 680 meters, so it moves 0.68 meters per millisecond and 6.8 meters every 10 milliseconds. In order to ensure sufficient accuracy of aircraft positioning information, it is necessary to send the aircraft's position information at a shorter time interval (higher frequency). In addition, combined with the highest positioning accuracy of today's military global positioning system, and taking into account communication delays, a general timeliness range for aircraft positioning information is finally set. For example, within 20ms from the time interval from the data being sent to the time it is received, the position information is valid. Beyond this time length, the data reference is of little significance due to the large error value, so it is invalid.
[0103] In step 500, based on the link priority information and the data verification condition information, data is read from the data packet transmitted by the link and data verification is performed, and the verified qualified data is stored in the data buffer area respectively, including:
[0104] Step 510, according to the data parsing protocol file and link priority information corresponding to each data packet, parse and collect all variables in different data packets on different links.
[0105] Step 520, filtering and selecting all variables obtained by parsing.
[0106] Step 530, using the link validity priority, the data selected by the filter is verified for data validity and timeliness, and the verified data is stored in the data cache based on link validity; using the data packet validity priority, the data validity and timeliness of the data selected by the filter is verified, and the verified data is stored in the data cache based on data packet validity.
[0107] See also Figure 7 In step 530, the data selected by filtering is verified for data validity and timeliness using the link validity priority order, and the verified data is stored in a data buffer based on link validity, including:
[0108] Step 5311, determine whether there are any remaining available links, if so, execute step 5312, if not, feedback the data error to the data receiving node.
[0109] Step 5312: If there are any remaining available links, select the current highest priority link.
[0110] Step 5313: Based on the data validity verification condition and the timeliness verification condition, all data packets on the current highest priority link are verified for data validity and timeliness. If the data passes the verification, step 5314 is executed; if the data fails the data verification, step 5311 is executed again.
[0111] Step 53114, stores the verified data into a data cache based on link validity.
[0112] Please continue to see Figure 7 In step 530, the data validity and timeliness of the data selected by filtering are verified using the data packet validity priority order, and the verified data is stored in a data buffer based on data packet validity, including:
[0113] Step 5321, obtain all data packets and variable requirement lists, where all data packets and variable requirement lists call for updating of data in the data cache chapter based on data packet validity.
[0114] Step 5322, determine whether there are any missing validity data packets and variables in all current data packets. If so, execute step 5323. If not, directly distribute the data packets and variables to the receiving node.
[0115] Step 5323: If there is a missing validity data packet and a missing variable, check whether there are any remaining available links. If there are any remaining available links, read the required data packets and variables from the current highest priority link. If there are no remaining available links, feedback the data error to the data receiving node.
[0116] Step 5324, based on the data validity verification conditions and timeliness verification conditions, all data packets on the current highest priority link are verified for data validity and timeliness.
[0117] Step 5325, stores the verified data into a data buffer based on the validity of the data packet.
[0118] When a data sending node sends several data packets to a designated PC node through multiple links, the virtual bus first intercepts the data on all links, and then rearranges the links according to the link priorities preconfigured by the command and control system, setting the priority of accessing data from different links. Then, according to the data parsing protocol file corresponding to each data packet and the link data access priority, all variables in different data packets on different links are parsed and collected, and data distribution is prepared through a multi-level cache mechanism. The data receiving node specifies the specific variables to be accessed through the virtual bus configuration file, and then directly obtains the valid variable data from the cache space on the virtual bus where the valid variable data is stored by calling the data request interface provided by the virtual bus.
[0119] In the priority usage strategy based on data packet validity, when the virtual bus obtains multiple parallel data packets from multiple links, it will first read all data packets from the link with the highest priority, and only save the data that meets the data validity and timeliness to the data cache. When all data packets cannot be obtained from the highest priority link, the missing data packets will be obtained from the second-best link according to the priority configuration. If the complete data packet is still not obtained, the missing data packet will be obtained from the next-level priority link. This process continues until all links are traversed. If there are still missing data packets, the information will be fed back to the corresponding data receiving node.
[0120] Another embodiment of the present invention provides a virtual bus data link optimization device based on a command and control system, including: a processor, a memory, and a computer program in the memory that can be run on the processor, such as a virtual bus data link optimization method program based on a command and control system. When the processor executes the computer program, the steps in the above-mentioned virtual bus data link optimization method embodiments based on a command and control system are implemented, such as Figure 1 steps.
[0121] Exemplarily, the above-mentioned computer program can be divided into one or more modules / units, one or more modules / units are stored in a memory and executed by a processor to complete the present invention. One or more modules / units can be a series of computer program instruction segments that can complete specific functions. The instruction segments are used to describe the execution process of the computer program in a virtual bus data link optimization device based on a command and control system. For example, the computer program can be divided into a data interception module, a link priority information reading module, a data buffer area creation module, a verification condition reading module, a data verification module, and a data distribution module. The specific functions of each module are as follows:
[0122] The data interception module is used to intercept data packets on all links, where the data packets are sent by at least one data sending node to at least one data receiving node through multiple links.
[0123] The link priority information reading module is used to read the data link priority configuration file to obtain the link priority information.
[0124] The data buffer area development module is used to develop different data buffer areas based on different link priority usage modes.
[0125] The verification condition reading module is used to read the data verification configuration information to obtain the data verification condition information.
[0126] The data verification module is used to read data from the data packets transmitted by the link and perform data verification based on the link priority information and data verification condition information, and store the verified qualified data in the data buffer area respectively.
[0127] The data distribution module is used to distribute data packets and variables from the data cache area to the data receiving node according to the data information that the data receiving node specifies to be used.
[0128] The preferred device of the virtual bus data link based on the command and control system can be a computing device such as a desktop computer, a notebook, a PDA, and a cloud server. The preferred device of the virtual bus data link based on the command and control system can include, but is not limited to, a processor and a memory, for example, it can also include an output device, a network access device, a bus, etc.
[0129] The processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc. The processor is the control center of the virtual bus data link optimization device based on the command and control system, and uses various interfaces and lines to connect various parts of the entire virtual bus data link optimization device based on the command and control system.
[0130] The memory can be used to store computer programs and / or modules. The processor implements various functions of the virtual bus data link optimization device based on the command and control system by running or executing the computer programs and / or modules stored in the memory and calling the data stored in the memory.
[0131] If the module / unit integrated in the virtual bus data link optimization device based on the command and control system is implemented in the form of 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, the present invention implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium. When the computer program is executed by the processor, the steps of each embodiment of the above-mentioned virtual bus data link optimization method based on the command and control system can be implemented.
[0132] The computer program includes computer program code, which may be in source code form, object code form, executable file or some intermediate form, etc. Computer readable media may include: any entity or device capable of carrying computer program code, recording medium, USB flash drive, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal and software distribution medium, etc.
[0133] The above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit the present invention. Although the present invention is described in detail with reference to the preferred embodiments, it should be understood by those skilled in the art that the technical solutions of the present invention may be modified or replaced by equivalents without departing from the purpose and scope of the technical solutions of the present invention, which should be included in the scope of the claims of the present invention. The techniques, shapes, and structural parts not described in detail in the present invention are all known technologies.
Claims
1. A virtual bus data link optimization method based on a command and control system, characterized in that: The virtual bus establishes connections with both the data sending node and the data receiving node, and the virtual bus parses, filters, verifies, and caches the received data packets based on the data parsing protocol file. The method includes the following steps: intercepting data packets on all links, wherein the data packets are to be sent by at least one data sending node to at least one data receiving node through multiple links; Read the data link priority configuration file to obtain link priority information; Different data buffers are created based on different link priority usage modes; Read data verification configuration information to obtain data verification condition information; Based on the link priority information and the data verification condition information, read the data from the data packet transmitted by the link and perform data verification, and store the verified qualified data in the data buffer area respectively; According to the data information that the data receiving node specifies to be retrieved, data packets and variables are distributed from the data buffer area to the data receiving node.
2. The virtual bus data link optimization method based on the command and control system according to claim 1 is characterized in that: The data receiving node has a virtual bus configuration file and a virtual bus communication dynamic library file, wherein the virtual bus configuration file includes information about the data receiving node itself and information about the virtual bus to be connected, and the virtual bus communication dynamic library file includes a virtual bus connection interface and data retrieved from the virtual bus; The data receiving node can establish a connection with the virtual bus and receive data by calling the virtual bus connection interface in the virtual bus communication dynamic library and simultaneously passing in the virtual bus configuration file of the current data receiving node.
3. The virtual bus data link optimization method based on the command and control system according to claim 1 is characterized in that: The step of reading the data link priority configuration file to obtain link priority information includes: Get all data sending links; Rearrange the priority order of all the links, set the order of accessing data in different link priority usage modes, obtain link priority information, and save it in a data link priority configuration file; Recall the link priority information in the data link priority configuration file.
4. The virtual bus data link optimization method based on the command and control system according to claim 1 is characterized in that: The link priority usage includes: priority usage based on link effectiveness and priority usage based on data packet effectiveness.
5. The virtual bus data link optimization method based on the command and control system according to claim 4 is characterized in that: The data verification condition information includes data validity verification conditions and timeliness verification conditions.
6. The virtual bus data link optimization method based on the command and control system according to claim 5 is characterized in that: Based on the link priority information and data verification condition information, read the data from the data packet transmitted by the link and perform data verification, and store the verified qualified data in the data buffer area respectively, including: According to the data parsing protocol file and link priority information corresponding to each data packet, all variables in different data packets on different links are parsed and collected; Filter and select all variables obtained from the analysis; Use the link validity priority to verify the data validity and timeliness of the filtered data, and store the verified data in the data cache based on link validity; Using the data packet validity priority, the data selected by the filter is verified for data validity and timeliness, and the verified data is stored in the data buffer area based on the data packet validity.
7. The virtual bus data link optimization method based on the command and control system according to claim 6 is characterized in that: The link validity priority is used to verify the data validity and timeliness of the data selected by filtering, and the verified data is stored in the data buffer area based on link validity, including: Determine whether there are any remaining available links; If there are any remaining available links, select the link with the highest current priority; Based on the data validity verification conditions and timeliness verification conditions, all data packets on the current highest priority link are verified for data validity and timeliness; The verified data is stored in the data buffer based on the link validity.
8. The virtual bus data link optimization method based on the command and control system according to claim 6 is characterized in that: The method uses the data packet validity priority to verify the data validity and timeliness of the data selected by filtering, and stores the verified data in a data buffer based on the data packet validity, including: Get a list of all data packages and variable requirements; Determine whether all current data packets have missing validity data packets and missing variables; If there is a missing validity data packet and a missing variable, check whether there are any remaining available links. If there are any remaining available links, read the required data packets and variables from the current highest priority link; Based on the data validity verification conditions and timeliness verification conditions, all data packets on the current highest priority link are verified for data validity and timeliness; The verified data is stored in a data buffer based on the validity of the data packet; If there are no missing validity packets and no missing variables, the packets and variables are directly used for distribution to the receiving nodes.
9. A virtual bus data link optimization device based on a command and control system, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 8 are implemented.
10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.