Data Transmission Method, Device and Storage Medium

By evaluating the transmission performance of data frames and system partitions and selecting the best transmission strategy and window, the problems of low data transmission efficiency and high storage pressure in high bandwidth out-of-order environments are solved, and efficient and reliable data transmission is achieved.

CN119892302BActive Publication Date: 2025-07-29SUZHOU YIGE TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510355203.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-03-25
Publication Date
2025-07-29
Estimated Expiration
2045-03-25

AI Technical Summary

Technical Problem

In a high-bandwidth out-of-order environment, multi-channel redundant transmission leads to low data transmission efficiency, large latency and high system storage pressure, which cannot be effectively solved by the existing technology.

Method used

By evaluating the transmission performance of data frames and system partitions, the weight information of each evaluation indicator is determined, and the best transmission strategy and transmission window are selected based on these weight information to realize the sorting and transmission of data frames.

Benefits of technology

It improves data transmission efficiency, reduces system storage pressure, and ensures the reliability and real-timeness of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119892302B_ABST
    Figure CN119892302B_ABST
Patent Text Reader

Abstract

The present invention relates to the field of communication technologies, and discloses a data transmission method, apparatus, and storage medium. The present invention evaluates the transmission performance of data frames and system partitions, and respectively determines the weight information of each evaluation index; based on the weight information of each evaluation index, respectively determines the transmission strategy and transmission window of the current data transmission; obtains multiple data frames, and sorts and transmits the obtained data frames based on the determined transmission strategy and transmission window. Therefore, the best transmission strategy and transmission window are selected according to the current data transmission environment of the system, the data transmission efficiency is ensured when multiple data are de-duplicated, and at the same time, the storage pressure of the system is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technologies, and particularly to a data transmission method, apparatus, and storage medium. Background Art

[0002] In order to improve the reliability of data transmission, a multi-channel redundant transmission method is usually adopted for data transmission. In order to remove redundancy from redundant data, when data frames arrive out of order, they are usually rearranged according to the sequence numbers of the data frames, duplicate frames are discarded, and the data is cached, and then the data is read out in sequence according to the rearranged sequence numbers. However, in a high-bandwidth out-of-order environment, the sequence number rearrangement needs to wait for all numbered frames to arrive, resulting in a large transmission delay, and the system needs to cache all out-of-order frames, resulting in a large storage pressure on the system. When the cache space is insufficient, valid frames will be discarded. Summary of the Invention

[0003] In view of this, the present invention provides a data transmission method, apparatus, and storage medium to solve the problems of low data transmission efficiency, large transmission delay, and large storage pressure when removing redundancy from multiple paths of data.

[0004] In a first aspect, the present invention provides a data transmission method, which includes:

[0005] Evaluating the transmission performance of data frames and system partitions, and respectively determining the weight information of each evaluation index;

[0006] Based on the weight information of each evaluation index, respectively determining the transmission strategy and transmission window of the current data transmission;

[0007] Obtaining multiple paths of data frames, and sorting and transmitting the obtained data frames based on the determined transmission strategy and transmission window.

[0008] The data transmission method provided by the embodiments of the present invention evaluates the transmission performance of data frames and system partitions, determines the weight information of each evaluation index, and determines the transmission strategy and transmission window of the current data transmission based on the weight information of each evaluation index, so as to select the best transmission strategy and transmission window according to the current data transmission environment of the system, ensure the data transmission efficiency when removing redundancy from multiple paths of data, and reduce the storage pressure on the system at the same time.

[0009] In an optional implementation manner, evaluating the transmission performance of data frames and system partitions, and respectively determining the weight information of each evaluation index includes:

[0010] Based on the variance of the timestamp intervals of data frames, determining the weight information of the timing index;

[0011] Parsing the data type of the data frame to determine the weight information of the type index;

[0012] Check the data frame to determine the weight information of the credibility index;

[0013] Determine the weight information of the partition index based on the load and packet loss rate of the system partition.

[0014] The data transmission method provided by the embodiment of the present invention determines the weight information of the timing index, type index, and credibility index based on the analysis of the data frame, and determines the weight information of the partition index based on the analysis of the transmission performance of the system partition, so as to comprehensively consider the data reception rate, data type, credibility, and system storage pressure, and determine the optimal transmission strategy and transmission window based on this.

[0015] In an alternative embodiment, based on the weight information of each evaluation index, determine the transmission strategy and transmission window of the current data transmission respectively, including:

[0016] Input the weight information of each evaluation index into the strategy evaluation model to obtain the transmission strategy of the current data transmission;

[0017] Calculate based on the preset window and the weight information of each evaluation index to obtain the transmission window of the current data transmission.

[0018] In an alternative embodiment, if the determined transmission strategy is the first strategy, then based on the determined transmission strategy and transmission window, sort and transmit the obtained data frame, including:

[0019] Determine the expected output range based on the current transmission expectation and the transmission window;

[0020] If the currently obtained data frame is within the expected output range, output the currently obtained data frame;

[0021] Update the current transmission expectation and the expected output range based on the sequence number of the output data frame.

[0022] In an alternative embodiment, after determining the expected output range based on the current transmission expectation and the transmission window, it further includes:

[0023] If the currently obtained data frame is not within the expected output range, or the currently obtained data frame is the same as the historical data frame, then discard the currently obtained data frame.

[0024] The data transmission method provided by the embodiment of the present invention, when the transmission strategy is the first strategy, determines the expected output range based on the current transmission expectation and the transmission window, so as to output the obtained data frame based on the expected output range, and update the current transmission expectation and the expected output range based on the sequence number of the output data frame, so as to be able to transmit data in real time, improve the data transmission efficiency, and at the same time reduce the storage pressure of the system.

[0025] In an alternative embodiment, if the determined transmission policy is the second policy, then based on the determined transmission policy and the transmission window, the obtained data frames are sorted and transmitted, including:

[0026] Store the obtained data frames in the corresponding cache; wherein, the cache area is divided into multiple caches according to the sequence numbers of the data frames;

[0027] If the data frames covered by the transmission window meet the data volume requirement when the transmission window meets the transmission condition, then transmit the data frames covered by the transmission window.

[0028] In an alternative embodiment, based on the determined transmission policy and the transmission window, sorting and transmitting the obtained data frames further includes:

[0029] If the data frames covered by the transmission window do not meet the data volume requirement when the transmission window meets the transmission condition, then adjust the transmission window until the data frames covered by the transmission window meet the data volume requirement.

[0030] The data transmission method provided by the embodiments of the present invention, when the transmission policy is the second policy, stores the obtained data frames in the corresponding cache, and the cache area is divided into multiple caches according to the sequence numbers of the data frames, so as to store the data frames in the cache area in order to realize the sorting of the data frames; at the same time, adjust the transmission window when the transmission window meets the transmission condition, and transmit the data frames covered by the transmission window when the data frames covered by the transmission window meet the data volume requirement, so as to improve the data transmission efficiency while ensuring the sequential transmission of the data frames.

[0031] In an alternative embodiment, if the determined transmission policy is the third policy, then based on the determined transmission policy and the transmission window, the obtained data frames are sorted and transmitted, including:

[0032] Store the obtained data frames in the corresponding cache blocks; wherein, a cache area is set for each system partition respectively, and in each cache area, multiple cache blocks are divided for each physical channel respectively, and the same data frames are transmitted by the physical channels within the same system partition;

[0033] If multiple cache blocks corresponding to the same data frame meet the transmission condition, then evaluate the transmission performance of the data frames in the cache blocks, and respectively determine the integrity scores of the multiple cache blocks;

[0034] Transmit the data frames in the cache block with the highest integrity score among the multiple cache blocks.

[0035] In the data transmission method provided by the embodiments of the present invention, when the transmission strategy is the third strategy, the data frames obtained from different channels are respectively stored in the corresponding cache blocks, and the transmission performance of multiple cache blocks corresponding to the same data frame is evaluated, and the data frame in the cache block with the highest integrity score is transmitted, so as to ensure the order and integrity of the data frame transmission.

[0036] In a second aspect, the present invention provides a data transmission device, which includes:

[0037] A weight information determination module, configured to evaluate the transmission performance of data frames and system partitions, and respectively determine the weight information of each evaluation index;

[0038] A transmission strategy determination module, configured to respectively determine the transmission strategy and transmission window of the current data transmission based on the weight information of each of the evaluation indexes;

[0039] A data frame transmission module, configured to obtain multiple data frames, and sort and transmit the obtained data frames based on the determined transmission strategy and the transmission window.

[0040] In a third aspect, the present invention provides a computer device, including: a memory and a processor, which are communicatively connected to each other, the memory stores computer instructions, and the processor executes the computer instructions to execute the data transmission method according to the first aspect or any corresponding embodiment thereof.

[0041] In a fourth aspect, the present invention provides a computer-readable storage medium, on which computer instructions are stored, and the computer instructions are used to cause a computer to execute the data transmission method according to the first aspect or any corresponding embodiment thereof.

[0042] In a fifth aspect, the present invention provides a computer program product, including computer instructions, and the computer instructions are used to cause a computer to execute the data transmission method according to the first aspect or any corresponding embodiment thereof. Description of the Drawings

[0043] In order to more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the following will briefly introduce the drawings required for use in the description of the specific embodiments or the prior art. Obviously, the drawings in the following description are some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0044] Figure 1 It is an application schematic diagram of the data transmission method according to the embodiments of the present invention;

[0045] Figure 2It is a flowchart of a data transmission method according to an embodiment of the present invention;

[0046] Figure 3 It is a flowchart of another data transmission method according to an embodiment of the present invention;

[0047] Figure 4 It is a schematic diagram of a first strategy in the data transmission method according to an embodiment of the present invention;

[0048] Figure 5 It is a schematic diagram of a second strategy in the data transmission method according to an embodiment of the present invention;

[0049] Figure 6 It is a storage schematic diagram of a third strategy in the data transmission method according to an embodiment of the present invention;

[0050] Figure 7 It is a structural block diagram of a data transmission device according to an embodiment of the present invention;

[0051] Figure 8 It is a schematic diagram of the hardware structure of a computer device according to an embodiment of the present invention. Detailed implementation manners

[0052] To make the objectives, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention. Apparently, the described embodiments are some but not all of the embodiments of the present invention. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0053] To improve the reliability of data transmission, a multi-channel redundant transmission method is usually adopted for data transmission. To remove redundancy from redundant data, when data frames arrive out of order, they are usually rearranged according to the sequence numbers of the data frames, duplicate frames are discarded, and the data is cached, and then the data is read out in sequence according to the rearranged sequence numbers. However, in a high-bandwidth out-of-order environment, the sequence number rearrangement needs to wait for all numbered frames to arrive, resulting in a large transmission delay, and the system needs to cache all out-of-order frames, resulting in a large storage pressure on the system, and valid frames will be discarded when the cache space is insufficient.

[0054] Based on this, an embodiment of the present invention provides a data transmission method, which evaluates the transmission performance of data frames and system partitions, and respectively determines the weight information of each evaluation index; based on the weight information of each evaluation index, respectively determines the transmission strategy and transmission window of the current data transmission; obtains multiple data frames, and sorts and transmits the obtained data frames based on the determined transmission strategy and transmission window. In this way, based on the evaluation of the transmission performance of data frames and system partitions, the weight information of each evaluation index is determined, and the transmission strategy and transmission window of the current data transmission are determined based on the weight information of each evaluation index, so as to select the best transmission strategy and transmission window according to the current data transmission environment of the system, ensure the data transmission efficiency when multiple data are de-duplicated, and at the same time reduce the storage pressure of the system.

[0055] Figure 1 It is an application schematic diagram of the data transmission method according to an embodiment of the present invention. Figure 1 The structural schematic diagram of the data transmission system is shown. Independent or redundant data will enter the data receiving module. Therefore, the data receiving module needs to de-duplicate the same data and at the same time complete the sorting of data frames. When the data transmission system receives data from the peer end, the pre-stage processing module processes the data frames and sends them to the data receiving module. The data receiving module selects an appropriate transmission strategy according to the indication of the policy evaluation model, completes the operations of de-duplicating and sorting the received data frames, and sends them to the post-stage processing module to continue the data, and finally reports the data to the system partition.

[0056] According to an embodiment of the present invention, an embodiment of a data transmission method is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in a different order than here.

[0057] In this embodiment, a data transmission method is provided, which can be used for the above data transmission system. Figure 2 It is a flowchart of the data transmission method according to an embodiment of the present invention. As Figure 2 shown, the process includes the following steps:

[0058] Step S201, evaluate the transmission performance of data frames and system partitions, and respectively determine the weight information of each evaluation index.

[0059] In an embodiment of the present invention, by evaluating the transmission performance of data frames, the data status of the currently received data frames is determined, such as whether the data is transmitted sequentially, whether it has reliability, etc.; by evaluating the transmission performance of system partitions, the data transmission pressure and the data transmission environment that can be provided during data transmission of the current system partition are determined. By evaluating the transmission performance of data frames and system partitions, the weight information of each evaluation index is determined, where the weight information is used to measure the scoring situation of the data frame or system partition under the corresponding evaluation index. The larger the value of the weight information, the higher the score of the corresponding evaluation index.

[0060] Step S202: Based on the weight information of each evaluation index, determine the transmission strategy and transmission window for the current data transmission respectively.

[0061] In an embodiment of the present invention, by comprehensively considering the weight information of each evaluation index, the performance or index requirements that can be met under the current data transmission are determined, and based on this, the transmission strategy for the current data transmission is determined from a plurality of preset transmission strategies. By comprehensively considering the weight information of each evaluation index and combining the preset transmission window base number at the same time, the data transmission volume that can be satisfied by the current data transmission is determined.

[0062] In an embodiment of the present invention, for different data transmission environments, a transmission strategy is set respectively to meet the requirements for data transmission in various data transmission environments, so as to adaptively select a transmission strategy according to the data transmission environment and ensure the data transmission efficiency when data is de-redundant.

[0063] Step S203: Obtain multiple data frames, and sort and transmit the obtained data frames based on the determined transmission strategy and transmission window.

[0064] In an embodiment of the present invention, data frames transmitted from multiple channels are received, and the data frames of multiple channels are de-redundant and sorted based on the determined transmission strategy, and the de-redundant and sorted data frames are transmitted according to the data frames covered by the transmission window.

[0065] The data transmission method provided by the embodiment of the present invention, based on the evaluation of the transmission performance of data frames and system partitions, determines the weight information of each evaluation index, and determines the transmission strategy and transmission window for the current data transmission based on the weight information of each evaluation index, so as to select the best transmission strategy and transmission window according to the current data transmission environment of the system, ensure the data transmission efficiency when multiple paths of data are de-redundant, and reduce the storage pressure of the system at the same time.

[0066] In this embodiment, a data transmission method is provided, which can be used for the above data transmission system. Figure 3 It is a flowchart of another data transmission method according to an embodiment of the present invention, as Figure 3As shown, the process includes the following steps:

[0067] Step S301: Evaluate the transmission performance of the data frame and the system partition, and respectively determine the weight information of each evaluation index.

[0068] In the embodiment of the present invention, the evaluation indexes include a timing index, a type index, a credibility index, and a partition index; among them, the timing index, the type index, and the credibility index are evaluation indexes for the data frame, and the partition index is an evaluation index for the system partition. Correspondingly, step S301 includes:

[0069] Step S3011: Determine the weight information of the timing index based on the variance of the timestamp intervals of the data frames.

[0070] In the embodiment of the present invention, the timing index is used to evaluate the timing integrity of continuously transmitted data frames. The smaller the variance of the timestamp intervals of continuously transmitted data frames, the better the timing integrity, and the higher the value of the weight information of the timing index.

[0071] In the embodiment of the present invention, the weight information of the timing index can be measured by the reciprocal of the variance of the timestamp intervals of continuously transmitted data frames.

[0072] Step S3012: Analyze the data type of the data frame to determine the weight information of the type index.

[0073] In the embodiment of the present invention, the type index is used to evaluate the data type, application scenario, or priority, etc. of the data frame. Whether to assign a higher priority to the transmission of the data frame is determined by the weight information of the type index. The higher the value of the weight information of the type index, the higher the priority assigned to the data frame.

[0074] In the embodiment of the present invention, different priority coefficients can be assigned to different data types to characterize their priorities. At the same time, the priority coefficient is a value less than or equal to 1. When it is equal to 1, it indicates that the corresponding data frame has the highest priority. Correspondingly, the weight information of the type index can be the larger value between the priority coefficient of the data frame and a preset coefficient. The setting of the preset coefficient is used to regard data frames with priority coefficients lower than it as having the same priority, so as to set higher weights only for data frames that need to be specially set with priorities or need to be specially concerned about.

[0075] Step S3013: Check the data frame to determine the weight information of the credibility index.

[0076] In the embodiment of the present invention, the weight information of the credibility index is used to evaluate the credibility of the data content of the data frame. The lower the proportion of data frames with verification errors, the higher the value of the weight information of the credibility index.

[0077] In an embodiment of the present invention, a verification algorithm, such as CRC verification, is used to verify a data frame, determine the proportion of the data content included in the data frame that is verified correctly, and use it as the weight information of the credibility index.

[0078] Step S3014: Determine the weight information of the partition index based on the load and packet loss rate of the system partition.

[0079] In an embodiment of the present invention, the weight information of the partition index is used to evaluate the data transmission status of the system partition. The higher the load and the higher the packet loss rate of the system partition, the lower the value of the weight information of the partition index.

[0080] In an embodiment of the present invention, parameters such as the size, load, network bandwidth, data throughput, delay, and packet loss rate of the system partition are detected to determine the weight information of the partition index.

[0081] The data transmission method provided by the embodiment of the present invention determines the weight information of the timing index, type index, and credibility index based on the parsing of the data frame, and determines the weight information of the partition index based on the parsing of the transmission performance of the system partition, so as to comprehensively consider the data reception rate, data type, credibility, and system storage pressure, and determine the optimal transmission strategy and transmission window based on this.

[0082] Step S302: Based on the weight information of each evaluation index, determine the transmission strategy and transmission window of the current data transmission respectively.

[0083] Specifically, step S302 includes:

[0084] Step S3021: Input the weight information of each evaluation index into the policy evaluation model to obtain the transmission strategy of the current data transmission.

[0085] In an embodiment of the present invention, the policy evaluation model is constructed based on the reinforcement learning algorithm. The reinforcement learning algorithm can learn the optimal weight adjustment strategy according to the reward signal fed back by the environment, so as to improve the integrity score and overall performance of data transmission. Input the weight information of each evaluation index into the policy evaluation model, adaptively adjust the weights through the policy evaluation model, and select the transmission strategy that best suits the current data transmission environment from multiple preset transmission strategies according to the adjustment results.

[0086] Step S3022: Calculate based on the preset window and the weight information of each evaluation index to obtain the transmission window of the current data transmission.

[0087] In an embodiment of the present invention, calculate based on the preset window and the weight information of each evaluation index to obtain the transmission window of the current data transmission. Specifically, reference can be made to the following formula (1):

[0088] Formula (1)

[0089] Wherein, represents the size of the transmission window, represents the size of the preset window; is the weight information of the type index, is the weight information of the credibility index, is the weight information of the timing index, is the weight information of the partition index.

[0090] Step S303: Obtain multiple data frames, and sort and transmit the obtained data frames based on the determined transmission strategy and transmission window. For details, please refer to Figure 2 Step S203 of the illustrated embodiment, which will not be elaborated here.

[0091] In an alternative embodiment, if the current data transmission environment has high requirements for real-time performance, the system partition performance is good, can process a large amount of data in a short time, and has a high tolerance for out-of-order data, then the first strategy can be adopted. The first strategy is the cacheless sorting mode. If the determined transmission strategy is the first strategy, then in the above embodiment, sorting and transmitting the obtained data frames based on the determined transmission strategy and transmission window may include the following steps:

[0092] Step a1: Determine the expected output range based on the current transmission expectation and the transmission window.

[0093] In step a1, the current transmission expectation is determined based on the sequence number of the historical data frame. Herein, the historical data frame refers to the data frame transmitted last time. For example, if the sequence number of the historical data frame is 5, then the current transmission expectation is 6. Using the current transmission expectation as the anchor point of the transmission window, the expected output range is calculated; still taking the sequence number of the historical data frame as 5 as an example, if the transmission window is +100, then the expected output range is 6 - 106, and if the transmission window is +100, -5, then the expected output range is 1 - 106.

[0094] Step a2: If the currently obtained data frame is within the expected output range, output the currently obtained data frame.

[0095] In step a2, if the currently obtained data frame is within the expected output range, it indicates that the currently obtained data frame meets the transmission expectation, so the currently obtained data frame is directly output.

[0096] Step a3: Update the current transmission expectation and the expected output range based on the sequence number of the output data frame.

[0097] In step a3, after the currently acquired data frame is transmitted, the data frame becomes a new historical data frame. Therefore, based on the sequence number of the new historical data frame, the current transmission expectation and the expected output range are updated to determine the transmission of subsequent data frames.

[0098] In an alternative embodiment, if the currently acquired data frame is not within the expected output range, that is, the currently acquired data frame does not meet the transmission expectation, or the currently acquired data frame is the same as the historical data frame, that is, the information content contained in the current data frame has been transmitted, then the currently acquired data frame is discarded.

[0099] In an alternative embodiment, in the above first strategy, during the data transmission process in different channels or the same channel, the data frames are transmitted in a first-come, first-served manner; if data from multiple channels arrives simultaneously, a fair polling method is used for the data. For the data in the same channel, since the data is transmitted in sequence, it is equivalent to processing the received data frames in the order of reception. For the data in multiple channels, reference can be made to Figure 4 the flowchart shown in Figure 4 For channels a and b shown in

[0100] When the data transmission method provided by the embodiment of the present invention uses the first strategy, the expected output range is determined based on the current transmission expectation and the transmission window, so as to output the acquired data frame based on the expected output range, and the current transmission expectation and the expected output range are updated based on the sequence number of the output data frame, so that data can be transmitted in real time, improving the data transmission efficiency and reducing the storage pressure of the system at the same time.

[0101] In an alternative embodiment, if the current transmission environment has low requirements for real-time performance and low tolerance for out-of-order data, the second strategy can be adopted. The second strategy is the in-chip cache sorting mode. If the determined transmission strategy is the second strategy, then in the above embodiment, sorting and transmitting the acquired data frames based on the determined transmission strategy and the transmission window may include the following steps:

[0102] Step b1, storing the acquired data frame into the corresponding cache.

[0103] In step b1, the cache area is divided into multiple caches according to the sequence numbers of data frames, and the cache area is an on-chip cache. The obtained data frames are stored in the caches divided according to the sequence number order, so as to sort the data frames when storing the data frames.

[0104] Step b2, if the data frames covered by the transmission window meet the data volume requirement when the transmission window meets the transmission condition, then transmit the data frames covered by the transmission window.

[0105] In step b2, a transmission window is set in the cache area. The cache or data frames covered by the transmission window are the range of data frames transmitted in one data transmission. For a transmission window, it is calculated whether the transmission window meets the transmission condition. The transmission condition may include whether the waiting time of the transmission window reaches the threshold, whether the current load of the system partition or the data transmission efficiency meets the transmission requirements, etc. As Figure 5 shown in the first column diagram in, if the data frames covered by the transmission window meet the data volume requirement when the transmission window meets the transmission condition, then transmit the data frames covered by the transmission window; among them, the data volume requirement of the data frames covered by the transmission window may be the proportion of the cache storing the data frames in the cache area covered by the transmission window, that is, the proportion of the stored data frames.

[0106] In an optional implementation manner, as Figure 5 shown in the second column diagram in, if the data frames covered by the transmission window do not meet the data volume requirement when the transmission window meets the transmission condition, then adjust the transmission window until the data frames covered by the transmission window meet the data volume requirement. Among them, the adjustment of the transmission window may be to reselect the size of the transmission window based on weight information, reduce the size of the transmission window, or move the position of the transmission window, etc.

[0107] The data transmission method provided by the embodiments of the present invention stores the obtained data frames in the corresponding caches when the transmission strategy is the second strategy, and the cache area is divided into multiple caches according to the sequence numbers of the data frames, so as to store the data frames in the cache area in order and realize the sorting of the data frames; at the same time, adjust the transmission window when the transmission window meets the transmission condition, and transmit the data frames covered by the transmission window when the data frames covered by the transmission window meet the data volume requirement, so as to improve the data transmission efficiency while ensuring the sequential transmission of the data frames.

[0108] In an optional implementation manner, if the system partition has low requirements for real-time performance, low tolerance for out-of-order data, high requirements for data integrity, and low requirements for the use of system resources at the same time, then a third strategy can be adopted. The third strategy is an off-chip cache sorting mode. If the determined transmission strategy is the third strategy, then in the above embodiments, sorting and transmitting the obtained data frames based on the determined transmission strategy and transmission window may include the following steps:

[0109] Step c1, store the obtained data frame into the corresponding cache block.

[0110] In step c1, as Figure 6 shown, a cache area, i.e., an off-chip cache area, is set for each system partition respectively. In each cache area, multiple cache blocks are divided for each physical channel respectively, and the same data frame is transmitted by the physical channels within the same system partition. Store the data frame into the corresponding cache block according to the physical channel corresponding to the data frame.

[0111] Step c2, if multiple cache blocks corresponding to the same data frame meet the transmission conditions, evaluate the transmission performance of the data frames in the cache blocks, and determine the integrity scores of the multiple cache blocks respectively.

[0112] In step c2, if multiple cache blocks corresponding to the same data frame meet the transmission conditions, evaluate the transmission performance of the data frames in the cache blocks, and determine the integrity scores of the multiple cache blocks respectively. Among them, for each cache block, the weight information of each corresponding evaluation index can be added to obtain the integrity score of the cache block.

[0113] Step c3, transmit the data frame in the cache block with the highest integrity score among the multiple cache blocks.

[0114] In the data transmission method provided by the embodiment of the present invention, when the transmission strategy is the third strategy, the data frames obtained from different channels are stored into the corresponding cache blocks respectively, the transmission performance of multiple cache blocks corresponding to the same data frame is evaluated, and the data frame in the cache block with the highest integrity score is transmitted, so as to ensure the order and integrity of the data frame transmission.

[0115] In this embodiment, a data transmission device is further provided. This device is used to implement the above embodiments and preferred implementation manners, and the descriptions that have been given will not be repeated. As used hereinafter, the term "module" may be a combination of software and / or hardware that can implement a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware is also possible and contemplated.

[0116] This embodiment provides a data transmission device, as Figure 7 shown, including:

[0117] A weight information determination module 701, configured to evaluate the transmission performance of the data frame and the system partition, and determine the weight information of each evaluation index respectively;

[0118] A transmission strategy determination module 702, configured to determine the transmission strategy and transmission window of the current data transmission respectively based on the weight information of each of the evaluation indexes;

[0119] The data frame transmission module 703 is configured to obtain multiple data frames, and sort and transmit the obtained data frames based on the determined transmission policy and the transmission window.

[0120] In an alternative embodiment, the weight information determination module 701 includes:

[0121] The timing weight determination unit is configured to determine the weight information of the timing index based on the variance of the time stamp intervals of the data frames;

[0122] The type weight determination unit is configured to parse the data types of the data frames and determine the weight information of the type index;

[0123] The credibility weight determination unit is configured to verify the data frames and determine the weight information of the credibility index;

[0124] The partition weight determination unit is configured to determine the weight information of the partition index based on the load and packet loss rate of the system partition.

[0125] In an alternative embodiment, the transmission policy determination module 702 includes:

[0126] The transmission policy determination unit is configured to input the weight information of each evaluation index into a policy evaluation model to obtain the transmission policy for the current data transmission;

[0127] The transmission window determination unit is configured to calculate based on a preset window and the weight information of each evaluation index to obtain the transmission window for the current data transmission.

[0128] In an alternative embodiment, if the determined transmission policy is the first policy, the data frame transmission module 703 includes:

[0129] The expected output range determination unit is configured to determine the expected output range based on the current transmission expectation and the transmission window;

[0130] The data frame output unit is configured to output the currently obtained data frame if the currently obtained data frame is within the expected output range;

[0131] The expected output range determination unit is further configured to update the current transmission expectation and the expected output range based on the sequence number of the output data frame.

[0132] In an alternative embodiment, the data frame transmission module 703 further includes:

[0133] The data frame discard unit is configured to discard the currently obtained data frame if the currently obtained data frame is not within the expected output range or the currently obtained data frame is identical to the historical data frame.

[0134] In an alternative embodiment, if the determined transmission policy is the second policy, the data frame transmission module 703 includes:

[0135] A data frame storage unit, configured to store the acquired data frames into corresponding caches; wherein, the cache area is divided into multiple caches according to the sequence numbers of the data frames;

[0136] A data frame transmission unit, configured to transmit the data frames covered by the transmission window if the data frames covered by the transmission window meet the data volume requirement when the transmission window meets the transmission condition.

[0137] In an alternative embodiment, the data frame transmission module 703 further includes:

[0138] A transmission window adjustment unit, configured to adjust the transmission window until the data frames covered by the transmission window meet the data volume requirement if the data frames covered by the transmission window do not meet the data volume requirement when the transmission window meets the transmission condition.

[0139] In an alternative embodiment, if the determined transmission policy is the third policy, the data frame transmission module 703 includes:

[0140] A data frame storage unit, configured to store the acquired data frames into corresponding cache blocks; wherein, a cache area is set for each system partition respectively, and in each cache area, multiple cache blocks are divided for each physical channel respectively, and the same data frames are transmitted by the physical channels within the same system partition;

[0141] A transmission performance evaluation unit, configured to evaluate the transmission performance of the data frames in the cache blocks and respectively determine the integrity scores of multiple cache blocks if multiple cache blocks corresponding to the same data frame meet the transmission condition;

[0142] A data frame transmission unit, configured to transmit the data frames in the cache block with the highest integrity score among multiple cache blocks.

[0143] The further function descriptions of the above-mentioned various modules and units are the same as those in the corresponding foregoing embodiments, and will not be elaborated herein.

[0144] The data transmission device in this embodiment is presented in the form of functional units. Here, the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and a memory that execute one or more software or fixed programs, and / or other devices that can provide the above functions.

[0145] The embodiment of the present invention further provides a computer device having the above-mentioned Figure 7The data transmission device shown.

[0146] Please refer to Figure 8 , Figure 8 which is a schematic structural diagram of a computer device provided by an alternative embodiment of the present invention. As Figure 8 shown, the computer device includes: one or more processors 10, a memory 20, and interfaces for connecting the components, including a high-speed interface and a low-speed interface. Each component communicates with each other using different buses and can be installed on a common motherboard or installed in other ways as needed. The processor can process instructions executed within the computer device, including instructions stored in the memory or on the memory to display graphical information of a GUI on an external input / output device (such as a display device coupled to the interface). In some alternative embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories. Similarly, multiple computer devices can be connected, and each device provides some necessary operations (for example, as a server array, a set of blade servers, or a multi-processor system). Figure 8 In

[0147] which, one processor 10 is taken as an example.

[0148] The memory 20 stores instructions executable by at least one processor 10, so that the at least one processor 10 executes the method shown in the above embodiments.

[0149] The memory 20 may include a program storage area and a data storage area. Among them, the program storage area can store an operating system and application programs required for at least one function; the data storage area can store data created according to the use of the computer device. In addition, the memory 20 may include a high-speed random access memory and may also include a non-transitory memory, such as at least one disk storage device, a flash memory device, or other non-transitory solid-state storage devices. In some alternative embodiments, the memory 20 may optionally include a memory remotely provided with respect to the processor 10, and these remote memories can be connected to the computer device through a network. Examples of the above network include but are not limited to the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof.

[0150] The memory 20 may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as flash memory, a hard disk, or a solid state drive; the memory 20 may further include a combination of the above types of memory.

[0151] The computer device further includes a communication interface 30 for the computer device to communicate with other devices or a communication network.

[0152] An embodiment of the present invention further provides a computer-readable storage medium. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or be implemented as computer code that can be recorded on a storage medium, or be implemented by downloading via a network and originally stored in a remote storage medium or a non-transitory machine-readable storage medium and to be stored in a local storage medium, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only memory, a random access memory, a flash memory, a hard disk, or a solid state drive, etc.; further, the storage medium can also include a combination of the above types of memory. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code, and when the software or computer code is accessed and executed by the computer, the processor, or the hardware, the method shown in the above embodiment is implemented.

[0153] A part of the present invention can be applied as a computer program product, such as computer program instructions, which when executed by a computer, can call or provide the method and / or technical solution according to the present invention through the operation of the computer. Those skilled in the art should be able to understand that the forms of existence of computer program instructions in a computer-readable medium include, but are not limited to, source files, executable files, installation package files, etc. Correspondingly, the ways for computer program instructions to be executed by a computer include, but are not limited to: the computer directly executes the instruction, or the computer compiles the instruction and then executes the corresponding compiled program, or the computer reads and executes the instruction, or the computer reads and installs the instruction and then executes the corresponding installed program. Herein, the computer-readable medium can be any available computer-readable storage medium or communication medium accessible by the computer.

[0154] Although the embodiments of the present invention are described in conjunction with the accompanying drawings, those skilled in the art can make various modifications and variations without departing from the spirit and scope of the present invention, and such modifications and variations all fall within the scope defined by the present invention.

Claims

1. A data transmission method, characterized in that, The method includes: Evaluating the transmission performance of data frames and system partitions, and respectively determining the weight information of each evaluation index; the evaluation indexes include timing index, type index, credibility index and partition index. The evaluating the transmission performance of data frames and system partitions and respectively determining the weight information of each evaluation index includes: determining the weight information of the timing index based on the variance of the timestamp intervals of the data frames; parsing the data types of the data frames to determine the weight information of the type index; verifying the data frames to determine the weight information of the credibility index; determining the weight information of the partition index based on the load and packet loss rate of the system partitions. Based on the weight information of each of the evaluation indexes, respectively determining the transmission strategy and transmission window of the current data transmission; the determining the transmission strategy and transmission window of the current data transmission based on the weight information of each of the evaluation indexes includes: inputting the weight information of each of the evaluation indexes into a strategy evaluation model to obtain the transmission strategy of the current data transmission, the transmission strategy including a first strategy, a second strategy and a third strategy, the first strategy being a non-buffered sorting mode, and the second strategy being an in-chip buffering sorting mode; calculating based on a preset window and the weight information of each of the evaluation indexes to obtain the transmission window of the current data transmission. Obtaining multiple data frames, and sorting and transmitting the obtained data frames based on the determined transmission strategy and transmission window.

2. The method according to claim 1, characterized in that, If the determined transmission strategy is the first strategy, then the sorting and transmitting the obtained data frames based on the determined transmission strategy and transmission window includes: Determining an expected output range based on the current transmission expectation and the transmission window; If the currently obtained data frame is within the expected output range, then outputting the currently obtained data frame; Updating the current transmission expectation and the expected output range based on the sequence number of the output data frame.

3. The method according to claim 2, wherein After determining the expected output range based on the current transmission expectation and the transmission window, it further includes: If the currently obtained data frame is not within the expected output range, or the currently obtained data frame is the same as the historical data frame, then discarding the currently obtained data frame.

4. The method according to claim 1, characterized in that If the determined transmission strategy is the second strategy, then the sorting and transmitting the obtained data frames based on the determined transmission strategy and transmission window includes: Storing the obtained data frames into corresponding caches; wherein, the cache area is divided into multiple caches according to the sequence numbers of the data frames. If the data frames covered by the transmission window meet the data volume requirement when the transmission window meets the transmission condition, then transmitting the data frames covered by the transmission window.

5. The method according to claim 4, wherein The sorting and transmitting the obtained data frames based on the determined transmission strategy and transmission window further includes: If the data frames covered by the transmission window do not meet the data volume requirement when the transmission window meets the transmission condition, then adjusting the transmission window until the data frames covered by the transmission window meet the data volume requirement.

6. The method according to claim 1, characterized in that If the determined transmission policy is the third policy, then sorting and transmitting the acquired data frames based on the determined transmission policy and the transmission window includes: Storing the acquired data frames into corresponding cache blocks; wherein, a cache area is set for each system partition respectively, and in each cache area, multiple cache blocks are divided for each physical channel respectively, and the same data frames are transmitted by the physical channels within the same system partition; If multiple cache blocks corresponding to the same data frame meet the transmission conditions, then evaluate the transmission performance of the data frames in the cache blocks, and respectively determine the integrity scores of the multiple cache blocks; Transmit the data frames in the cache block with the highest integrity score among the multiple cache blocks.

7. A data transmission device, characterized in that, The device includes: A weight information determination module, configured to evaluate the transmission performance of data frames and system partitions, and respectively determine the weight information of each evaluation index; the evaluation indexes include a timing index, a type index, a credibility index, and a partition index, and the evaluation of the transmission performance of data frames and system partitions and the determination of the weight information of each evaluation index respectively include: determining the weight information of the timing index based on the variance of the timestamp intervals of the data frames; parsing the data types of the data frames to determine the weight information of the type index; verifying the data frames to determine the weight information of the credibility index; determining the weight information of the partition index based on the load and packet loss rate of the system partition; A transmission policy determination module, configured to respectively determine the transmission policy and the transmission window for the current data transmission based on the weight information of each evaluation index; the determination of the transmission policy and the transmission window for the current data transmission based on the weight information of each evaluation index respectively includes: inputting the weight information of each evaluation index into a policy evaluation model to obtain the transmission policy for the current data transmission, the transmission policy including a first policy, a second policy, and a third policy, the first policy being a no-cache sorting mode, and the second policy being an on-chip cache sorting mode; calculating based on a preset window and the weight information of each evaluation index to obtain the transmission window for the current data transmission; A data frame transmission module, configured to acquire multiple paths of data frames, and sort and transmit the acquired data frames based on the determined transmission policy and the transmission window.

8. A computer-readable storage medium, characterized in that, Computer instructions are stored on the computer-readable storage medium, and the computer instructions are used to cause a computer to execute the data transmission method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Large-scale and high-concurrency deterministic network system

    CN108847961A

  • Online monitoring data multi-channel transmission control strategy processing method

    CN116760771A