Bidirectional collaborative receiving and sending method, device and electronic device for IEC 104 protocol data
By adopting a two-way collaborative working method in the 104 standard data transmission system, the important data identification list and transmission performance information table are updated, and the data cache location is adjusted, the real-time and efficiency problems of data transmission in a weak network environment are solved, and more efficient data transmission is achieved.
Patent Information
- Application Number
- CN202510246507.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-04
- Publication Date
- 2025-05-30
- Estimated Expiration
- 2045-03-04
AI Technical Summary
In a weak network environment, the transmission of 104 standard data faces data transmission pressure caused by high failure rate, insufficient real-time performance, low load resource utilization and large equipment scale, and the existing technology is difficult to effectively deal with these problems.
Through two-way collaborative work between the first terminal and the second terminal, the important data identification list and transmission performance information table are updated using feedback information, and the comprehensive importance level and cache position of the data in the cache area to be sent are adjusted, thereby optimizing data transmission.
The optimization of two-way data transmission and reception is realized, which improves the real-time and effectiveness of data transmission and reduces the failure rate of data transmission in a weak network environment.
Smart Images

Figure CN119728778B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data processing, and particularly to a method, apparatus, and electronic device for bidirectional collaborative transceiver of IEC 60870-5-104 (hereinafter referred to as 104 protocol) data. Background Art
[0002] In modern power systems, IEC 60870-5-104 (abbreviated as 104 protocol) is widely used for remote data monitoring and control of power equipment. Based on the TCP / IP protocol, it enables bidirectional communication between the master station and the slave station, carrying key data such as telemetry, telecontrol, etc. The reliability and transmission efficiency of the 104 protocol are directly related to the safety and stability of power grid operation. Especially in the field of distribution network automation, any data transmission problem may bring risks such as inaccurate equipment status monitoring and invalid control commands.
[0003] However, in a weak network environment, the 104 protocol data transmission faces many challenges:
[0004] High transmission failure rate: Traditional TCP / IP transmission mechanisms are prone to problems such as packet loss and transmission timeouts under weak network conditions.
[0005] Insufficient real-time performance: It is unable to ensure the timeliness and reliability of high-priority data (such as telecontrol commands).
[0006] Low utilization of load resources: Facing network load fluctuations, there is a lack of dynamic adjustment transmission strategies, which may lead to congestion or load waste.
[0007] Large device scale: In a city, there may be tens of thousands of devices accessing the system, with a huge amount of data, further exacerbating the transmission pressure.
[0008] Moreover, since the 104 protocol is the current standard of the State Grid, its existing implementation methods cannot effectively address these problems. Therefore, optimizing data transmission in the power system under a weak network environment requires a highly compatible and efficient solution. Summary of the Invention
[0009] The present invention provides a method, apparatus, electronic device, and storage medium for bidirectional collaborative transceiver of 104 protocol data, which can solve at least one of the above technical problems.
[0010] According to one aspect of the present invention, there is provided a method for bidirectional collaborative transceiver of 104 protocol data, including:
[0011] When the first terminal receives feedback information from the second terminal, the first terminal updates the second important data identification list and the second transmission efficiency information table in the first terminal respectively based on the first important data identification list and the first transmission efficiency information table in the feedback information;
[0012] Based on the updated second important data identification list and the updated second transmission efficiency information table, the first terminal updates the comprehensive importance level of each first data in the to-be-sent buffer area of the first terminal;
[0013] Based on the updated comprehensive importance level of each first data, the first terminal adjusts the cache position of each first data in the to-be-sent buffer area;
[0014] The first terminal extracts second data from the to-be-sent buffer area, assembles the updated comprehensive importance level of the second data into the message header of the second data, and sends the assembled second data to the second terminal.
[0015] According to another aspect of the present invention, there is provided a two-way collaborative transceiver device for 104 protocol data, including:
[0016] A first update module, configured to, when the first terminal receives feedback information from the second terminal, the first terminal updates the second important data identification list and the second transmission efficiency information table in the first terminal based on the first important data identification list and the first transmission efficiency information table in the feedback information;
[0017] A second update module, configured to the first terminal updates the comprehensive importance level of each first data in the to-be-sent buffer area of the first terminal based on the updated second important data identification list and the updated second transmission efficiency information table;
[0018] A queue adjustment module, configured to the first terminal adjusts the cache position of each first data in the to-be-sent buffer area based on the updated comprehensive importance level of each first data;
[0019] A data sending module, configured to the first terminal extracts second data from the to-be-sent buffer area, assembles the updated comprehensive importance level of the second data into the message header of the second data, and sends the assembled second data to the second terminal.
[0020] Adopting the technical solution of the present invention, through the two-way collaborative work between the first terminal (sender) and the second terminal (receiver), the sender updates the local list of important data identifiers and the transmission efficiency information table based on the information fed back by the receiver, such as the list of important data identifiers and the transmission efficiency information table. Thus, the sender uses the locally updated list of important data identifiers and the transmission efficiency information table to update the comprehensive importance identification levels of each first data in the local buffer area to be sent, and adjusts the buffer positions of each first data in the buffer area to be sent accordingly. Subsequently, the sender extracts the second data according to the sorting order of each first data in the buffer area to be sent after the position adjustment, and sends the second data to the receiver. In this way, two-way data transceiver optimization can be achieved, and the real-time performance and effectiveness of data transmission can be improved.
[0021] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present invention, nor is it used to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] The drawings are used to better understand the present solution and do not constitute a limitation to the present invention. Among them:
[0023] Figure 1 is a flowchart of a two-way collaborative data transceiver method for 104 protocol data according to an embodiment of the present invention;
[0024] Figure 2 is a flowchart of a two-way collaborative data transceiver method for 104 protocol data according to another embodiment of the present invention;
[0025] Figure 3 is a structural block diagram of a two-way collaborative data transceiver device for 104 protocol data according to an embodiment of the present invention;
[0026] Figure 4 is a block diagram of an electronic device for implementing the method according to the embodiment of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0027] The following describes exemplary embodiments of the present invention in conjunction with the drawings. Various details of the embodiments of the present invention are included to assist understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope of the present invention. Similarly, for clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
[0028] RELATED TERMS:
[0029] 104 protocol: IEC 60870-5-104 protocol is a communication protocol used for remote monitoring and control in power systems. It realizes data transmission based on the TCP / IP protocol and is widely used in distribution network automation.
[0030] Weak network environment: Refers to a network environment with high network latency, fluctuations, large packet loss rate, and / or unstable load. It is common in wireless networks or long-distance communication scenarios and poses challenges to data transmission with high requirements for real-time performance and reliability.
[0031] Telemetry signal data: Binary data representing the status of devices (such as switch positions), including single-point telemetry signals and double-point telemetry signals, which can be used for real-time monitoring of the operation status of the power grid.
[0032] Telemetry data: Continuous value data representing the operating parameters of devices (such as voltage and current), including normalized values, scaled values, and floating-point formats, which are used to monitor the operation status of the power grid.
[0033] Telecontrol data: Instruction data used for remote control of power equipment, such as opening and closing operations of circuit breakers, and usually has the highest priority.
[0034] 104 protocol parser: A tool used to identify and parse the received 104 protocol data, which can extract ASDU (Application Service Data Unit) information and classify and process data types.
[0035] Weak network enhancement software: A software tool deployed on the first terminal and the second terminal, which can optimize the sending and receiving process of 104 protocol data in a weak network environment, including policy loading and transmission protocol optimization.
[0036] ASDU (Application Service Data Unit): The basic unit in the 104 protocol that carries data and control information, including various types of data such as telemetry signals, telemetry data, and telecontrol data.
[0037] Figure 1 It is a flowchart of the two-way collaborative sending and receiving method of 104 protocol data in an embodiment of the present invention.
[0038] As Figure 1 shown, the two-way collaborative sending and receiving method of the 104 protocol data may include:
[0039] S110, when the first terminal receives feedback information from the second terminal, the first terminal updates the second important data identification list and the second transmission efficiency information table in the first terminal respectively based on the first important data identification list and the first transmission efficiency information table in the feedback information;
[0040] S120, the first terminal updates the comprehensive importance level of each first data in the to-be-sent buffer area of the first terminal based on the updated second important data identification list and the updated second transmission efficiency information table;
[0041] S130, the first terminal adjusts the cache position of each first data in the to-be-sent buffer area based on the updated comprehensive importance level of each first data;
[0042] S140, the first terminal extracts the second data from the to-be-sent buffer area, assembles the updated comprehensive importance level of the second data into the message header of the second data, and sends the assembled second data to the second terminal.
[0043] Exemplarily, the first terminal and the second terminal can be distribution network automation terminals. As Figure 2 shown, the first terminal can be the sending end, and the second terminal can be the receiving end. The first terminal can also be the receiving end of the information sent by the second terminal, and the second terminal can also be the sending end of the information sent to the first terminal.
[0044] Exemplarily, the first important data identification list includes the importance levels corresponding to multiple data types and service types respectively. The first important data identification list can be a list stored in the second terminal, and the second important data identification list includes the importance levels corresponding to multiple data types and service types respectively. The second important data identification list can be a list stored in the first terminal.
[0045] Exemplarily, the first transmission efficiency information table includes the transmission efficiencies corresponding to multiple data types and service types respectively. The first transmission efficiency information table can be an information table stored in the second terminal. The second transmission efficiency information table includes the transmission efficiencies corresponding to multiple data types and service types respectively. The second transmission efficiency information table can be an information table stored in the first terminal.
[0046] Exemplarily, the to-be-sent buffer area is used to cache the data to be sent to the second terminal. The to-be-sent buffer area can include multiple cache queues, and each cache queue includes multiple data arranged in sequence. The data sending frequency of each cache queue can be different.
[0047] Exemplarily, the first data and the second data can be any power-related data in the distribution network, and this data is 104 protocol data.
[0048] Exemplarily, the data types under the 104 protocol can include telemetry data, remote control data, remote adjustment data, etc.
[0049] Exemplarily, the service types of the data under the 104 protocol can include monitoring data, alarm data, status reporting data, log data, etc.
[0050] Exemplarily, for each first data in the buffer area to be sent of the first terminal, the corresponding comprehensive importance level is determined in advance according to the second important data identification list and the second transmission efficiency information table in the local first terminal. Only if the above feedback information is received, the comprehensive importance level of each first data will be updated, and then the cache positions of each first data in the buffer area will be adjusted.
[0051] Exemplarily, the first terminal extracts second data from the buffer area to be sent according to the cache positions of each first data in the buffer area to be sent. For example, the buffer area includes multiple queues, and the data ranked first is extracted from the corresponding queue according to the sending frequency of each queue as the second data for data sending. Or, if the buffer area includes only one queue, the data ranked first is extracted from the queue as the second data for data sending.
[0052] Understandably, the extracted second data is deleted from the queue.
[0053] Exemplarily, the second data can be any one of the above first data.
[0054] According to the above embodiments, through the two-way collaborative work between the first terminal (sender) and the second terminal (receiver), the information fed back by the receiver, such as the important data identification list and the transmission efficiency information table, is used to update the important data identification list and the transmission efficiency information table locally at the sender. Thus, the sender uses the locally updated important data identification list and transmission efficiency information table to update the comprehensive importance identification level of each first data in the local buffer area to be sent, and adjusts the cache positions of each first data in the buffer area to be sent accordingly. Subsequently, the sender extracts the second data according to the sorting order of each first data in the buffer area to be sent after the position adjustment and sends the second data to the receiver. In this way, two-way data transceiver optimization can be achieved, improving the real-time performance and effectiveness of data transmission.
[0055] Exemplarily, based on the updated second important data identification list and the updated second transmission efficiency information table, the first terminal updates the comprehensive importance level of each first data in the to-be-sent buffer area of the first terminal, including: the first terminal parses the first data based on the IEC 104 protocol to obtain the attribute information of the first data, where the attribute information includes the data type, service type, time sensitivity, service priority, data structure, and data volume of the first data; the first terminal determines the corresponding target importance level in the updated second important data identification list based on the data type and service type of the first data; the first terminal determines the corresponding target transmission efficiency in the updated second transmission efficiency information table based on the data type and service type of the first data; the first terminal updates the comprehensive importance level of the first data based on the attribute information, target importance level, and target transmission efficiency of the first data.
[0056] Exemplarily, the data types under the IEC 104 protocol may include telemetry data, telecontrol data, teleadjustment data, etc.
[0057] Exemplarily, the service types of the data under the IEC 104 protocol may include monitoring data, alarm data, status report data, log data, etc.
[0058] Exemplarily, the time sensitivity of the data under the IEC 104 protocol is used to represent the validity period of the data.
[0059] Exemplarily, the service priority of the data under the IEC 104 protocol can be represented by a numerical value or level. For example, high, medium, or low levels.
[0060] Exemplarily, the data structure of the data under the IEC 104 protocol may include structured data, binary data, etc.
[0061] Exemplarily, the data volume of the data under the IEC 104 protocol can be the number of bytes.
[0062] Exemplarily, based on the data type and service type of the first data, the importance level corresponding to the same data type and the same service type recorded in the updated second important data identification list is used as the target importance level.
[0063] Exemplarily, based on the data type and service type of the first data, the transmission efficiency corresponding to the same data type and the same service type recorded in the updated second transmission efficiency information table is used as the target transmission efficiency.
[0064] Exemplarily, each piece of information in the attribute information of the first data, the target importance level, and the target transmission efficiency are respectively used as an input parameter, and each input parameter is normalized so that its value is between 0 and 1. The normalization method can be selected as linear normalization, logarithmic normalization, etc. according to the nature of the parameter.
[0065] Exemplarily, a utility function is constructed for each input parameter. The utility function can be linear, non-linear (such as logarithmic, exponential), piecewise function, etc.
[0066] Exemplarily, the normalized value of each input parameter is multiplied by the corresponding utility function, and then all the results are added together to obtain the comprehensive utility value of the first data.
[0067] Exemplarily, according to the comprehensive utility value of the first data, the comprehensive importance level of the first data is determined.
[0068] It can be understood that for different comprehensive utility values, the corresponding business data is divided into different importance levels. For example, the value range of the comprehensive utility value can be divided into several intervals, and each interval corresponds to an importance level.
[0069] According to the above embodiments, first determine the attribute information of the first data, where the attribute information includes the data type, business type, time sensitivity, business priority, data structure, and data volume of the first data; then, based on the attribute information of the first data, the updated importance level of the first data, and the updated transmission efficiency of the first data, the comprehensive importance level of the first data can be accurately updated.
[0070] In one embodiment, the first terminal adjusts the cache positions of each first data in the to-be-sent cache area based on the updated comprehensive importance levels of each first data, including: the first terminal sorts each first data based on the updated comprehensive importance levels of each first data to obtain a first order queue; the first terminal sorts each first cache queue based on the data sending frequency of each first cache queue in the to-be-sent cache area to obtain a second order queue; the first terminal divides the first order queue based on the positions of the start data and the end data of each first cache queue in the second order queue to obtain a plurality of second cache queues; wherein, the plurality of second cache queues are cache queues for caching each first data with the adjusted cache positions in the to-be-sent cache area.
[0071] Exemplarily, the to-be-sent cache area may include a plurality of first cache queues. Therefore, when adjusting the cache position of the data, it includes adjusting the queue where the data is located and adjusting the arrangement position of the data in the adjusted queue.
[0072] Exemplarily, the data sending frequencies of each cache queue are different. For example, the data sending frequency of cache queue Q1 is to send data once every two seconds, the data sending frequency of cache queue Q2 is to send data once every 1 minute, and the data sending frequency of cache queue Q3 is to send data once every 1 hour.
[0073] Exemplarily, in the second-order queue, the higher the data sending frequency of the cache queue, the closer the sorting of the cache queue in the second-order queue. For example, cache queue Q1 is sorted before cache queue Q2, and cache queue Q2 is sorted before cache queue Q3. Thus, the second-order queue is formed. The second-order queue is a queue arranged according to the unupdated comprehensive importance level.
[0074] Exemplarily, the first-order queue is a queue in which each first data is arranged according to the updated comprehensive importance level. The second-order queue is a queue in which each first data is arranged according to the unupdated comprehensive importance level. And, the second-order queue records the sorting order of each cache queue. The first-order queue does not record the sorting order of each cache queue.
[0075] Exemplarily, multiple first cache queues are cache queues used to cache each first data before the cache position is adjusted in the to-be-sent cache area. Understandably, the second cache queue is the corresponding updated first cache queue.
[0076] According to the above embodiments, by using the updated comprehensive importance level of each first data, the queue where it is located in the cache area and its position in the new queue can be updated at one time, improving the speed of queue adjustment.
[0077] In one embodiment, the above method further includes: when the second terminal receives the second data from the first terminal, the second terminal caches the second data after removing the message header into the to-be-processed cache area of the second terminal based on the comprehensive importance level recorded in the message header of the second data.
[0078] Exemplarily, the to-be-processed cache area can be used to cache the data that the second terminal is ready to process. The to-be-processed cache area can include multiple third cache queues with different processing efficiencies. Or, it includes multiple third cache queues with different data processing frequencies.
[0079] Exemplarily, according to the comprehensive importance level of the second data, determine its cache queue in the to-be-processed cache area and its sorting position in the queue. Thus, data processing can be performed according to the comprehensive importance level of the second data, improving the data processing efficiency of the second terminal.
[0080] In one implementation, the second terminal caches the second data after removing the message header into the to-be-processed cache area of the second terminal based on the comprehensive importance level recorded in the message header of the second data, including: the second terminal sorts each third cache queue based on the data processing efficiency of each third cache queue in the to-be-processed cache area to obtain a third ordered queue; the second terminal determines the insertion order of the second data after removing the message header based on the total number of arranged data in the third ordered queue and the comprehensive importance level recorded in the message header of the second data; the second terminal inserts the second data after removing the message header into the third ordered queue based on the insertion order of the second data after removing the message header to obtain a fourth ordered queue; the second terminal divides the fourth ordered queue based on the start bit data and end bit data of each third cache queue to obtain each updated third cache queue; the second terminal processes the data in each updated third cache queue based on the data processing efficiency of each updated third cache queue.
[0081] Exemplarily, the to-be-processed cache area includes multiple third cache queues, and the data processing efficiency of each third cache queue is different.
[0082] Exemplarily, in the third ordered queue, the higher the data processing efficiency of the cache queue, the closer the cache queue is sorted in the third ordered queue. For example, cache queue Q5 is sorted before cache queue Q4, and cache queue Q6 is sorted before cache queue Q5. Thus, the third ordered queue is formed.
[0083] It can be understood that the start bit data of the third cache queue before update is the same as the start bit data of the updated third cache queue, and the end bit data of the third cache queue before update is the same as the end bit data of the updated third cache queue. Thus, according to such requirements, the fourth ordered queue can be split to obtain each updated third cache queue.
[0084] According to the above implementation, for the parsed first data, the insertion order can be determined according to its comprehensive importance level, and inserted into the corresponding cache queue. Furthermore, data processing can be performed according to the data processing efficiency of different queues and the importance levels of different data, improving the data processing efficiency.
[0085] In one embodiment, the second terminal determines the sorting order of the second data after removing the message header based on the total number of arranged data in the third order queue and the comprehensive importance level recorded in the message header of the second data, including: determining the sorting percentage of the second data after removing the message header based on the ratio between the comprehensive importance level recorded in the message header and the preset upper limit of the comprehensive importance level; determining the sorting order of the second data after removing the message header based on the product of the total number of arranged data in the third order queue and the sorting percentage.
[0086] Exemplarily, if the comprehensive importance level of the second data is a score between 0 and 100, the upper limit of the comprehensive priority is 100.
[0087] Exemplarily, if the comprehensive importance level of the second data is an integer level between 1 and 10, the upper limit of the comprehensive importance level is 10.
[0088] Exemplarily, if the product of the total number of arranged data in the third order queue and the sorting percentage of the second data is not an integer, it can be rounded to obtain the corresponding integer sorting order.
[0089] According to the above embodiment, through one insertion, the second data can be sorted according to its comprehensive importance level to determine its cache queue and its position in the cache queue, that is, the data processing efficiency of the first data and its position in the cache queue corresponding to the data processing efficiency are determined.
[0090] In one embodiment, the above method further includes: when the second terminal receives an importance level update instruction for the first data type and the first service type, updating the corresponding importance level in the first important data identification list in the second terminal based on the importance level corresponding to the first data type and the first service type in the importance level update instruction; the second terminal updates the corresponding transmission efficiency in the first transmission efficiency information table in the second terminal according to the transmission efficiency of the third data of the second data type and the second service type; the second terminal determines feedback information according to the updated first important data identification list and the updated first transmission efficiency information table; the second terminal sends the feedback information to the first terminal.
[0091] It can be understood that a power user or a power engineer can set or adjust the importance level corresponding to the first data type and the first service type in the second terminal, that is, send an importance level update instruction for the first data type and the first service type to the second terminal.
[0092] Exemplarily, the second terminal may perform statistics on the transmission efficiency of the third data received historically, and thus update the corresponding transmission efficiency in the first transmission efficiency information table according to its second data type and second service type.
[0093] According to the above embodiment, the second terminal may update the important data identification list according to the user instruction, and perform statistics on the historical third data received from the first terminal to obtain its transmission efficiency, and then feed back these updated data to the first terminal. The first terminal adjusts the data queue to be sent according to this information, so as to optimize the efficiency of two-way data transmission and reception.
[0094] As Figure 2 shown, for the sending end, the importance data identification is divided into two logics: generation and adjustment:
[0095] First, during data production, according to the characteristics of IEC 104 protocol data, a default importance data identification is generated based on the service characteristics of IEC 104 protocol data, and combined with the cache queue policy, it is written into the hierarchical priority queue through the policy executor. The data sending and receiving module reads the content and loads the importance data identification into the message header part and transmits it to the receiving end.
[0096] Second, during data transmission, upon receiving the instruction or timed feedback message from the receiving end, the importance data identification is regenerated by comprehensively considering the default importance data identification generated based on the service characteristics of IEC 104 protocol data, the transmission parameters are changed, and a new cache queue policy is generated to reorganize the cached data.
[0097] As Figure 2 shown, for the receiving end, the importance data identification is divided into two logics: the logic of preferentially processing data and generating an importance data identification list according to service requirements:
[0098] First, during data reception, the data sending and receiving module quickly sorts out the data with different importance data identifications according to the content in the message header, and loads them into the priority queue using the cache queue policy through the policy executor, and the data parsing / processing module processes the IEC 104 protocol data.
[0099] Second, the policy executor receives the service instruction or regularly generates an importance data identification list, adjusts the transmission parameters, and adjusts the cache queue policy according to the transmission status related data fed back by the data sending and receiving module. After this operation, the receiving end sends the generated importance data identification list and transmission parameter adjustment information to the sending end, and at the same time updates the cache queue policy at its own end to optimize the data processing flow.
[0100] As Figure 2 shown, the generation and adjustment process of the importance data identification at the sending end is as follows:
[0101] Step 1: The distribution network automation terminals TTU / DTU / FTU generate IEC 104 protocol data;
[0102] Step 2: The data parsing / processing module at the sending end parses the data and extracts the content of the IEC 104 protocol data according to the service characteristics of the IEC 104 protocol;
[0103] Step 3: The policy executor at the sending end automatically generates a default importance data identifier according to the service characteristics;
[0104] Step 4: The policy executor at the sending end automatically generates default transmission parameters according to the service characteristics;
[0105] Step 5: The policy executor at the sending end automatically generates a default cache queue policy according to the service characteristics and stores the data in a hierarchical priority queue;
[0106] Step 6: The data sending and receiving module at the sending end reads the data from the hierarchical priority queue, assembles the data and performs data transmission according to the transmission parameters;
[0107] Step 7: The data sending and receiving module at the sending end receives the feedback message from the receiving end, parses the content and transmits it to the policy executor;
[0108] Step 8: The policy executor at the sending end adjusts the importance data identifier, transmission parameters and cache queue policy according to the service characteristics of the IEC 104 protocol data in combination with the feedback message;
[0109] Step 9: The policy executor at the sending end adjusts the data content in the cache according to the new cache queue policy;
[0110] Step 10: The data sending and receiving module at the sending end assembles the data according to the new transmission parameters and the new importance data identifier and performs transmission.
[0111] As Figure 2 shown, the generation and adjustment of the importance data identifier list at the receiving end can be as follows:
[0112] Step 1: The receiving end regularly collects data transmission status data or receives service requirements;
[0113] Step 2: The receiving end generates an importance data identifier list by synthesizing the service characteristics, service requirements and transmission status data of the IEC 104 protocol data;
[0114] Step 3: The receiving end updates information such as the importance data identifier, transmission parameters and cache queue policy at the receiving end;
[0115] Step 4: The data sending and receiving module at the receiving end feeds back the generated importance data identifier list and data transmission status to the sending end;
[0116] Step 5: The policy executor at the receiving end performs policy execution processing according to information such as the updated importance data identification list, transmission parameters, and cache queue policy.
[0117] As Figure 2 shown, the two-way collaborative adjustment process between the sending end and the receiving end can be as follows:
[0118] Step 1: The data sending and receiving module at the sending end sends data, and the message header contains the importance data identification.
[0119] Step 2: The data sending and receiving module at the receiving end receives the data, parses the importance data identification in the message header, and calls the policy execution to write the data into the hierarchical priority queue according to the cache queue policy.
[0120] Step 3: When the receiving end receives a service instruction, it generates a new importance data identification list through the policy executor and feeds back the data to the sending end through the data sending and receiving module.
[0121] Step 4: The sending end adjusts the sending policies such as importance data identification and transmission parameters according to the latest feedback message, dynamically adjusts the data in the hierarchical priority queue, reorganizes the data and sends it again.
[0122] Step 5: The data sending and receiving module at the receiving end receives the data, parses the importance data identification in the message header, and calls the policy execution to write the data into the hierarchical priority queue according to the cache queue policy.
[0123] Step 6: The receiving end regularly collects the transmission status of various services of the 104 protocol data, combines the current importance data identification list and transmission parameters, generates a new importance data identification list through the policy executor, and feeds back the data to the sending end through the data sending and receiving module.
[0124] Repeat steps 4 - 6 for continuous optimization.
[0125] According to the above embodiments, through the two-way collaborative work between the sending end and the receiving end, the sending end can change the policy for the receiving end to process data, and the receiving end can adjust the policy for the sending end to send data, realizing the two-way adjustment and optimization of the entire process from sending policy generation, sending data reorganization, data reception, data processing, to data reception feedback. The core lies in functions such as importance data identification generation at the sending / receiving end, dynamic adjustment of transmission parameters, and two-way collaborative interaction mechanism between sending and receiving, which runs through the entire system process and optimizes the real-time performance and effectiveness of data transmission.
[0126] Figure 3 It is the structural block diagram of the two-way collaborative sending and receiving device for 104 protocol data in an embodiment of the present invention.
[0127] As Figure 3As shown, the two-way collaborative transceiver device for 104 protocol data includes:
[0128] A first update module 310, configured to, when the first terminal receives feedback information from the second terminal, the first terminal updates the second important data identification list and the second transmission efficiency information table in the first terminal respectively based on the first important data identification list and the first transmission efficiency information table in the feedback information;
[0129] A second update module 320, configured to the first terminal updates the comprehensive importance level of each first data in the to-be-sent buffer area of the first terminal based on the updated second important data identification list and the updated second transmission efficiency information table;
[0130] A queue adjustment module 330, configured to the first terminal adjusts the cache position of each first data in the to-be-sent buffer area based on the updated comprehensive importance level of each first data;
[0131] A data sending module 340, configured to the first terminal extracts second data from the to-be-sent buffer area, assembles the updated comprehensive importance level of the second data into the message header of the second data, and sends the assembled second data to the second terminal.
[0132] In one embodiment, the second update module 320 includes:
[0133] A data parsing unit, configured to the first terminal parses the first data based on the 104 protocol to obtain the attribute information of the first data, where the attribute information includes the data type, service type, time sensitivity, service priority, data structure and data volume of the first data;
[0134] A target level determination unit, configured to the first terminal determines the corresponding target importance level in the updated second important data identification list based on the data type and service type of the first data;
[0135] A target efficiency determination unit, configured to the first terminal determines the corresponding target transmission efficiency in the updated second transmission efficiency information table based on the data type and service type of the first data;
[0136] A level update unit, configured to the first terminal updates the comprehensive importance level of the first data based on the attribute information of the first data, the target importance level, and the target transmission efficiency.
[0137] In one embodiment, the queue adjustment module 330 includes:
[0138] A first sorting unit, configured to sort each of the first data by the first terminal based on the updated comprehensive importance level of each of the first data, so as to obtain a first ordered queue;
[0139] A second sorting unit, configured to sort each of the first buffer queues by the first terminal based on the data sending frequency of each of the first buffer queues in the to-be-sent buffer area, so as to obtain a second ordered queue;
[0140] A first queue splitting unit, configured to split the first ordered queue by the first terminal based on the positions of the start data and the end data of each of the first buffer queues in the second ordered queue, so as to obtain a plurality of second buffer queues;
[0141] Wherein, the plurality of second buffer queues are buffer queues obtained after the buffer positions of each of the first data are adjusted in the to-be-sent buffer area.
[0142] In an implementation manner, the above device further includes:
[0143] A data processing module, configured to, when the second terminal receives the second data from the first terminal, the second terminal caches the second data after removing the message header into the to-be-processed buffer area of the second terminal based on the comprehensive importance level recorded in the message header of the second data.
[0144] In an implementation manner, the data processing module includes:
[0145] A third sorting unit, configured to sort each of the third buffer queues by the second terminal based on the data processing efficiency of each of the third buffer queues in the to-be-processed buffer area, so as to obtain a third ordered queue;
[0146] An arrangement order determination unit, configured to determine the insertion order of the second data after removing the message header by the second terminal based on the total number of arranged data in the third ordered queue and the comprehensive importance level recorded in the message header of the second data;
[0147] A data insertion unit, configured to insert the second data after removing the message header into the third ordered queue by the second terminal based on the insertion order of the second data after removing the message header, so as to obtain a fourth ordered queue;
[0148] A second queue splitting unit, configured to split the fourth ordered queue by the second terminal based on the start bit data and the end bit data of each of the third buffer queues, so as to obtain each of the updated third buffer queues;
[0149] A data processing unit is used for the second terminal to process the data in each of the third buffer queues based on the data processing efficiency of each updated third buffer queue.
[0150] In one embodiment, the arrangement order determination unit is specifically configured to:
[0151] Determine the sorting percentage of the second data after removing the message header based on the ratio between the comprehensive importance level recorded in the message header and the preset upper limit of the comprehensive importance level;
[0152] Determine the arrangement order of the second data after removing the message header based on the product of the total number of arranged data in the third order queue and the sorting percentage.
[0153] In one embodiment, the above device further includes:
[0154] A third update module is used for the second terminal to update the corresponding importance level in the first important data identification list in the second terminal based on the importance level corresponding to the first data type and the first service type in the importance level update instruction when receiving the importance level update instruction for the first data type and the first service type;
[0155] A fourth update module is used for the second terminal to update the corresponding transmission efficiency in the first transmission efficiency information table in the second terminal according to the transmission efficiency of the third data of the second data type and the second service type;
[0156] A feedback information determination module is used for the second terminal to determine the feedback information according to the updated first important data identification list and the updated first transmission efficiency information table;
[0157] A feedback information sending module is used for the second terminal to send the feedback information to the first terminal.
[0158] It should be noted that the above device can be applied to the first terminal and can also be applied to the second terminal.
[0159] For the specific functions and example descriptions of the modules and sub - modules of the system in the embodiments of the present invention, reference can be made to the relevant descriptions of the corresponding steps in the above - mentioned method embodiments, which will not be elaborated here.
[0160] In the technical solution of the present invention, the acquisition, storage, and application of user personal information involved all comply with the provisions of relevant laws and regulations and do not violate public order and good customs.
[0161] According to the embodiments of the present invention, the present invention also provides a system and a readable storage medium.
[0162] Figure 4 FIG. shows a schematic block diagram of an exemplary electronic device 800 that may be used to implement embodiments of the present invention. The electronic device is intended to represent various forms of digital computers, such as, a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as, a personal digital assistant, a cellular phone, a smart phone, a wearable device, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely exemplary and are not intended to limit the implementation of the present invention described and / or claimed herein.
[0163] As Figure 4 shown, the electronic device 800 includes a computing unit 801 that can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 802 or a computer program loaded from a storage unit 808 into a random access memory (RAM) 803. In the RAM 803, various programs and data required for the operation of the device 800 can also be stored. The computing unit 801, the ROM 802, and the RAM 803 are connected to each other via a bus 804. An input / output (I / O) interface 805 is also connected to the bus 804.
[0164] A plurality of components in the electronic device 800 are connected to the I / O interface 805, including: an input unit 806, such as a keyboard, a mouse, etc.; an output unit 807, such as various types of displays, speakers, etc.; a storage unit 808, such as a magnetic disk, an optical disk, etc.; and a communication unit 809, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 809 allows the device 800 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0165] The computing unit 801 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 801 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 801 executes the various methods and processes described above, such as the two-way collaborative transceiver method for 104 protocol data. For example, in some embodiments, the two-way collaborative transceiver method for 104 protocol data can be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 808. In some embodiments, part or all of the computer program can be loaded and / or installed onto the device 800 via the ROM 802 and / or the communication unit 809. When the computer program is loaded into the RAM 803 and executed by the computing unit 801, one or more steps of the two-way collaborative transceiver method for 104 protocol data described above can be executed. Alternatively, in other embodiments, the computing unit 801 can be configured to execute the two-way collaborative transceiver method for 104 protocol data by any other suitable means (e.g., by means of firmware).
[0166] The various embodiments of the systems and techniques described above in this document can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems-on-a-chip (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a dedicated or general-purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit the data and instructions to the storage system, the at least one input device, and the at least one output device.
[0167] The program code for implementing the methods of the present invention can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the program codes are executed by the processor or controller, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The program codes can be executed entirely on the machine, partially on the machine, executed partially on the machine and partially on a remote machine as an independent software package, or executed entirely on a remote machine or server.
[0168] In the context of the present invention, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0169] To provide for interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can also be used to provide for interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0170] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer having a graphical user interface or a web browser through which the user can interact with an implementation of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.
[0171] A computer system may include a client and a server. The client and the server are generally far away from each other and usually interact through a communication network. The client-server relationship is generated by computer programs running on respective computers and having a client-server relationship with each other. The server may be a cloud server, or a server of a distributed system, or a server incorporating a blockchain.
[0172] It should be understood that various forms of the processes shown above can be used, steps can be reordered, added or deleted. For example, the steps recited in the present invention can be executed in parallel, sequentially or in a different order, as long as the desired results of the technical solutions disclosed in the present invention can be achieved, and no limitation is imposed herein.
[0173] The above specific embodiments do not constitute a limitation on the protection scope of the present invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions and improvements made within the principles of the present invention shall be included within the protection scope of the present invention.
Claims
1. A bidirectional collaborative sending and receiving method for 104 protocol data, characterized in that: include: When the first terminal receives feedback information from the second terminal, the first terminal updates the second important data identification list and the second transmission efficiency information table in the first terminal based on the first important data identification list and the first transmission efficiency information table in the feedback information respectively; The first terminal updates the comprehensive importance level of each first data in the to-be-sent buffer area of the first terminal based on the updated second important data identification list and the updated second transmission efficiency information table; The first terminal adjusts the cache position of each first data in the to-be-sent cache area based on the updated comprehensive importance level of each first data, including: the first terminal sorts each first data based on the updated comprehensive importance level of each first data to obtain a first sequential queue; the first terminal sorts each first cache queue based on the data sending frequency of each first cache queue in the to-be-sent cache area to obtain a second sequential queue; the first terminal divides the first sequential queue based on the position of the start data and the position of the end data of each first cache queue in the second sequential queue to obtain a plurality of second cache queues; wherein the plurality of second cache queues are cache queues obtained after the cache position of each first data has been adjusted in the to-be-sent cache area; The first terminal extracts the second data from the to-be-sent buffer area, assembles the updated comprehensive importance level of the second data into a message header of the second data, and sends the assembled second data to the second terminal.
2. The method according to claim 1, characterized in that The first terminal updates the comprehensive importance level of each first data in the to-be-sent buffer area of the first terminal based on the updated second important data identification list and the updated second transmission efficiency information table, including: The first terminal parses the first data based on the 104 protocol to obtain attribute information of the first data, wherein the attribute information includes a data type, a service type, a time sensitivity, a service priority, a data structure, and a data volume of the first data; The first terminal determines, based on the data type and service type of the first data, a corresponding target importance level in the updated second important data identification list; The first terminal determines the corresponding target transmission efficiency in the updated second transmission efficiency information table based on the data type and service type of the first data; The first terminal updates the comprehensive importance level of the first data based on the attribute information of the first data, the target importance level, and the target transmission efficiency.
3. The method according to claim 1, characterized in that Also includes: When the second terminal receives the second data from the first terminal, the second terminal caches the second data after removing the message header in a to-be-processed cache area of the second terminal based on the comprehensive importance level recorded in the message header of the second data, which specifically includes: The second terminal sorts each of the third cache queues based on the data processing efficiency of each of the third cache queues in the to-be-processed cache area to obtain a third sequential queue; The second terminal determines, based on the total amount of arranged data in the third sequential queue and the comprehensive importance level recorded in the message header of the second data, an insertion order of the second data after removing the message header; The second terminal inserts the second data after the message header is removed into the third sequential queue based on the insertion order of the second data after the message header is removed, so as to obtain a fourth sequential queue; The second terminal divides the fourth sequential queue based on the start bit data and the end bit data of each of the third cache queues to obtain updated third cache queues; The second terminal processes the data in each of the third cache queues based on the updated data processing efficiency of each of the third cache queues.
4. The method according to claim 3, characterized in that The second terminal determines, based on the total amount of arranged data in the third sequential queue and the comprehensive importance level recorded in the message header of the second data, an arrangement order of the second data after the message header is removed, including: Determining the ranking percentage of the second data after removing the message header based on the ratio between the comprehensive importance level recorded in the message header and the preset upper limit of the comprehensive importance level; The arrangement order of the second data after the message header is removed is determined based on the product of the total amount of arranged data in the third sequential queue and the sorting percentage.
5. The method according to any one of claims 1 to 4, characterized in that Also includes: When the second terminal receives the importance level update instruction for the first data type and the first service type, based on the importance level corresponding to the first data type and the first service type in the importance level update instruction, updates the corresponding importance level in the first important data identification list in the second terminal; The second terminal updates the corresponding transmission efficiency in the first transmission efficiency information table in the second terminal according to the transmission efficiency of the third data of the second data type and the second service type; The second terminal determines the feedback information according to the updated first important data identification list and the updated first transmission efficiency information table; The second terminal sends the feedback information to the first terminal.
6. A bidirectional cooperative transceiver of 104 protocol data, characterized in that: include: A first updating module, configured to update, when the first terminal receives feedback information from the second terminal, the second important data identification list and the second transmission efficiency information table in the first terminal based on the first important data identification list and the first transmission efficiency information table in the feedback information respectively; A second updating module, configured for the first terminal to update the comprehensive importance level of each first data in the to-be-sent buffer area of the first terminal based on the updated second important data identification list and the updated second transmission efficiency information table; A queue adjustment module, configured for the first terminal to adjust a cache position of each of the first data in the to-be-sent cache area based on an updated comprehensive importance level of each of the first data; A data sending module, configured for the first terminal to extract second data from the to-be-sent buffer area, assemble the updated comprehensive importance level of the second data into a message header of the second data, and send the assembled second data to the second terminal; Wherein, the queue adjustment module includes: A first sorting unit, configured for the first terminal to sort each of the first data based on an updated comprehensive importance level of each of the first data to obtain a first sequence queue; A second sorting unit, configured for the first terminal to sort each of the first cache queues based on a data sending frequency of each of the first cache queues in the to-be-sent cache area to obtain a second sequential queue; A first queue segmentation unit, configured for the first terminal to segment the first sequential queue based on the position of the start data and the position of the end data of each of the first cache queues in the second sequential queue to obtain a plurality of second cache queues; The plurality of second cache queues are cache queues obtained after the cache positions of the respective first data have been adjusted in the to-be-sent cache area.
7. An electronic device comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 5.
8. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-5.
Citation Information
Patent Citations
Non-blocking type communication method and system based on international electrotechnical commission (IEC) 104 protocol
CN103107931A
Server data simulation analysis method and system based on IEC 60870-5-104 protocol
CN117729270A