Data processing methods, devices, electronic equipment, chips and storage media

By retaining the data that has not been acknowledged by the receiving end and has been stored for the longest time when there is no free storage space, the problem of abnormal data updates under harsh transmission environments is solved, the accuracy and reliability of data compression are achieved, and the correct decoding by the receiving end is ensured.

CN119450577BActive Publication Date: 2025-12-02BEIJING X RING TECHNOLOGY CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411312066.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-09-19
Publication Date
2025-12-02
Estimated Expiration
2044-09-19

AI Technical Summary

Technical Problem

In harsh transmission environments, when the window-based least significant bit (W-LSB) algorithm is used for data compression, storing newly received data to be transmitted into the data sequence can lead to abnormal data updates and reduce the accuracy of data compression.

Method used

In the absence of free storage space, the data that has not been acknowledged by the receiving end and has been stored for the longest time is retained. By replacing the unacknowledged data, an updated data sequence is obtained, and compression is performed based on the updated data sequence.

Benefits of technology

It improves the reliability of data sequence updates and the accuracy of compression, ensuring that the receiving end can correctly decode compressed data, especially ensuring the successful transmission of voice packets in harsh air interface environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119450577B_ABST
    Figure CN119450577B_ABST
Patent Text Reader

Abstract

This application proposes a data processing method, apparatus, electronic device, chip, and storage medium. The method includes: determining target data to be replaced from a data sequence with no free storage space based on the storage time of the data, wherein the target data does not include second data that has not been confirmed by the receiving end and has the longest storage time; replacing the target data with first data to obtain an updated data sequence; and compressing the first data based on the updated data sequence to obtain compressed data. When replacing data in a data sequence with no free storage space, the second data that has not been confirmed by the receiving end and has the longest storage time is retained, which improves the reliability of data sequence updates and thus improves the accuracy of data compression based on the updated data sequence.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data processing technology for wireless communication, and more particularly to a data processing method, apparatus, electronic device, chip, and storage medium. Background Technology

[0002] The RoHC (Robust Header Compression) compression scheme in mobile communication systems is an efficient data header compression mechanism used to reduce overhead on the wireless link and improve the transmission efficiency of data such as voice or video.

[0003] In related technologies, RoHC technology typically uses the window-based Least Significant Bits (W-LSB) algorithm for data compression. However, in harsh transmission environments, storing newly received data to be transmitted in the data sequence can lead to abnormal data updates in the data sequence, reducing the accuracy of data compression. Summary of the Invention

[0004] This application aims to at least partially address one of the technical problems in the related art.

[0005] To this end, this application proposes a data processing method, apparatus, electronic device, chip, and storage medium that, when updating a data sequence, retains the second data that has not been acknowledged by the receiving end and has the longest storage time, thereby improving the reliability of data sequence updates and thus improving the accuracy of compression based on the updated data sequence.

[0006] One embodiment of this application proposes a data processing method, including:

[0007] Based on the storage time of the data, the target data to be replaced is determined from the data sequence with no free storage space; wherein, the target data does not include the second data that has not been confirmed by the receiving end and has the longest storage time;

[0008] The target data is replaced with the first data to be compressed to obtain an updated data sequence;

[0009] Based on the updated data sequence, the first data is compressed to obtain compressed data.

[0010] Another embodiment of this application proposes a data processing apparatus, including:

[0011] The determination module is used to determine the target data to be replaced from a data sequence with no free storage space based on the data storage time; wherein, the target data does not include the second data that has not been confirmed by the receiving end and has the longest storage time;

[0012] The replacement module is used to replace the target data according to the first data to obtain an updated data sequence;

[0013] A compression module is used to compress the first data according to the updated data sequence to obtain compressed data.

[0014] Another embodiment of this application provides an electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, it implements the method described in the foregoing aspect.

[0015] Another embodiment of this application proposes a chip including processing circuitry configured to perform the method described in one aspect above.

[0016] Another embodiment of this application proposes a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in the foregoing aspect.

[0017] Another embodiment of this application proposes a computer program product having a computer program stored thereon, which, when executed by a processor, implements the method described in the foregoing aspect.

[0018] The data processing method, apparatus, electronic device, chip, and storage medium proposed in this application determine the target data to be replaced from a data sequence with no free storage space based on the data's storage time. The target data does not include the second data that has not been confirmed by the receiving end and has the longest storage time. The target data is replaced with the first data to obtain an updated data sequence. The first data is then compressed based on the updated data sequence to obtain compressed data. When replacing data in a data sequence with no free storage space, the second data that has not been confirmed by the receiving end and has the longest storage time is retained, improving the reliability of the data sequence update and thus improving the accuracy of data compression based on the updated data sequence.

[0019] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description

[0020] The above and / or additional aspects and advantages of this application will become apparent and readily understood from the following description of the embodiments taken in conjunction with the accompanying drawings, wherein:

[0021] Figure 1 A flowchart illustrating a data processing method provided in an embodiment of this application;

[0022] Figure 2A flowchart illustrating another data processing method provided in an embodiment of this application;

[0023] Figure 3 A flowchart illustrating another data processing method provided in an embodiment of this application;

[0024] Figure 4 This is one of the storage diagrams of a sliding window provided in an embodiment of this application;

[0025] Figure 5 This is a second schematic diagram illustrating the storage of a sliding window, as provided in an embodiment of this application.

[0026] Figure 6 This is the third schematic diagram of the storage of a sliding window provided in an embodiment of this application;

[0027] Figure 7 This is the fourth schematic diagram of a sliding window storage provided in an embodiment of this application;

[0028] Figure 8 Fifth schematic diagram of a sliding window storage provided in an embodiment of this application;

[0029] Figure 9 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this application;

[0030] Figure 10 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application;

[0031] Figure 11 This is a schematic diagram of the structure of a chip provided in an embodiment of this application. Detailed Implementation

[0032] The embodiments of this application are described in detail below. Examples of these embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals denote the same or similar elements or elements having the same or similar functions throughout. The embodiments described below with reference to the accompanying drawings are exemplary and intended to explain this application, and should not be construed as limiting this application.

[0033] The data processing method, apparatus, electronic device, chip, and storage medium of this application are described below with reference to the accompanying drawings.

[0034] Figure 1 This is a schematic flowchart of a data processing method provided in an embodiment of this application.

[0035] This disclosure illustrates the example of a data processing method configured in a data processing apparatus, which can be applied to any electronic device or chip to enable the electronic device or chip to perform data processing functions.

[0036] Among them, electronic devices can be any device with computing capabilities, such as mobile terminals, mobile terminals such as mobile phones, tablets, personal digital assistants, wearable devices, and other hardware devices with various operating systems, touch screens and / or displays.

[0037] Chips can be central processing units (CPUs), application-specific integrated circuits (ASICs), digital signal processors (DSPs), field-programmable gate arrays (FPGAs), systems on a chip (SOCs), reduced instruction set computers (RISCs), etc., which will not be listed here.

[0038] Header compression technology plays a very important role in the field of communication technology, as it can effectively reduce the valuable bandwidth resources occupied by data transmission. Currently, header compression technology includes Robust Header Compression (ROHC) technology. ROHC technology is a new type of header compression mechanism with excellent robustness and higher compression efficiency.

[0039] In related technologies, ROHC technology typically employs a window-based Least Significant Bits Encoding (W-LSB) algorithm for the header of data packets. This algorithm is an improvement on the Least Significant Bits (LBS) compression algorithm. When encoding at the sending end using the W-LSB algorithm, the encoding of the sliding window is based on a set of reference values ​​contained within the sliding window, and then sent to the receiving end for decoding.

[0040] However, in harsh transmission environments, newly received data to be transmitted is stored in a data sequence. If the data sequence is full, the old data stored in the sliding window data sequence will be overwritten. Since the old data may not have been successfully decoded by the receiving end, directly overwriting the old data will cause abnormal data updates in the data sequence. Consequently, the compressed data obtained by compressing the newly stored data based on the updated data sequence will be abnormal, reducing the reliability of data compression.

[0041] To address this, this application provides a data processing method. When there is no free space in the data sequence, the method replaces the target data stored in the data sequence with the first data to be transmitted, while retaining the second data that has been stored for the longest time and has not been confirmed by the receiving end, thereby obtaining an updated data sequence. This improves the accuracy of the data sequence update. Furthermore, based on the updated data sequence, the first data can be compressed to obtain accurate compressed data, thus improving the reliability of data compression.

[0042] like Figure 1 As shown, the method may include the following steps:

[0043] Step 101: Based on the storage time of the data, determine the target data to be replaced from the data sequence with no free storage location.

[0044] The phrase "no free storage location in the data sequence" means that data is stored at every location in the data sequence.

[0045] The target data excludes the second data that has not been acknowledged by the receiving end and has the longest storage time. Data not acknowledged by the receiving end refers to data that has not been correctly received and successfully decompressed. The storage time is determined based on the data's storage duration. The second data can be determined based on the storage times of each unacknowledged data item already stored in a data sequence with no available storage space. In other words, the data with the longest storage time is determined from the data sequence with no available storage space. For example, if a sequence can store two data items, A and B, and A and B were stored on the same day, with A stored at 8:20:50 and B at 9:17:20, then A is considered to have a longer storage time than B, and therefore A is also considered the earliest stored data in that sequence.

[0046] In this embodiment, the data sequence is used to store the data to be compressed received by the sending end. The data to be compressed is encoded using an encoding algorithm and then sent to the receiving end. The receiving end decodes the data to restore the data to be compressed that was actually sent by the sending end. In practical applications, the length of the data sequence is limited. In scenarios with a large amount of uplink data and poor uplink channel quality, data in the data sequence may not receive timely feedback confirmation from the receiving end. That is, if the first feedback information ACK or the second feedback information NACK is not received from the receiving end, the data in the already full data sequence will not be deleted. For data sequences with no remaining storage space, the newly received first data is stored in the data sequence, which needs to overwrite some data with a longer storage time that has already been stored in the data sequence, in order to store the first data in the data sequence.

[0047] However, if data with a long storage time in the data sequence is directly overwritten, some data in the data sequence that has not received feedback confirmation from the receiving end will be overwritten. This will reduce the reference value corresponding to the compression of the first data in the data sequence, resulting in inaccurate reference values ​​used for compressing the first data. Consequently, the data cannot be correctly encoded to obtain accurate compressed data. As a result, the receiving end will also be unable to accurately decode and restore the original data after receiving the compressed data.

[0048] Therefore, in this embodiment of the application, when storing the first data into a data sequence with no free storage space, the target data other than the second data that has not received the first feedback information and has the longest storage time will be replaced. By retaining the second data with the longest storage time, the second data can be used as a reference value for compression processing when the first data is encoded to obtain compressed data. This improves the accuracy of compressed data generation and ensures that the compressed data of the first data can be correctly decoded by the receiving end after it is sent to the receiving end.

[0049] It is important to understand that when the sending end receives the ACK feedback information sent by the receiving end, it will delete the received data from the data sequence according to the received data indicated by the feedback information. In other words, the data sequence stores data that is waiting to be sent or data that has been sent but for which no feedback information has been received.

[0050] It should be noted that in the W-LSB compression algorithm, the data sequence is the sliding window.

[0051] Step 102: Replace the target data with the first data to obtain the updated data sequence.

[0052] The first data to be compressed includes uplink voice data or video data from the real-time voice service of the mobile communication system.

[0053] As an example, let's consider voice data as the first data source. The voice data is loaded using RTP (Real-Time Transport Protocol). Each data packet contains an IP header (20 bytes), a UDP header (8 bytes), and an RTP header (12 bytes), totaling 40 bytes. For IPv6, the IP header occupies 40 of those 60 bytes. However, the payload size depends on the voice coding used and the number of frames, and can be as low as 15-20 bytes. Clearly, 67-80% of the wireless channel bandwidth is wasted on header transmission, with only 20-33% used to deliver actually useful information to the end user. Modern wireless communication systems require efficient use of scarce wireless resources; therefore, the header overhead caused by the transmission protocol must be reduced. In other words, the first data needs to be compressed before transmission. In this embodiment, a window-based Least Significant Bits Encoding (W-LSB) algorithm is used to compress the first data.

[0054] In this embodiment, the target data is replaced according to the first data to obtain an updated data sequence. This achieves the retention of the second data that was not successfully decoded by the receiving end and has the longest storage time, ensuring the accuracy of the reference value and thus improving the accuracy of encoding and compression based on the reference value.

[0055] Step 103: Based on the updated data sequence, compress the first data to obtain compressed data.

[0056] In this embodiment of the application, a reference value corresponding to the first data is determined from the updated data sequence. There may be one or more reference values. Based on the reference value corresponding to the first data, the target transmission valid bit corresponding to the first data is determined. The first data is compressed based on the target transmission valid bit corresponding to the first data to obtain accurate compressed data of the first data.

[0057] In the data processing method of this application embodiment, target data to be replaced is determined from a data sequence with no free storage space based on the storage time of the data. The target data does not include the second data that has not been confirmed by the receiving end and has the longest storage time. The target data is replaced based on the first data to obtain an updated data sequence. Based on the updated data sequence, the first data is compressed to obtain compressed data. When replacing data in a data sequence with no free storage space, the second data that has not been confirmed by the receiving end and has the longest storage time is retained, improving the reliability of the data sequence update and thus improving the accuracy of data compression based on the updated data sequence.

[0058] Based on the above embodiments, Figure 2 A flowchart illustrating another data processing method provided in this application embodiment is shown below. Figure 2 As shown, the method includes the following steps:

[0059] Step 201: Based on the storage time of the data, determine the target data to be replaced from the data sequence with no free storage location.

[0060] The process involves several steps: First, the first data is encoded into compressed data, which is then sent to the receiving end. Upon successful reception and decoding, the receiving end sends a first feedback message, ACK (Acknowledgment), back to the sending end. This first feedback message indicates that the receiving end has successfully decoded the received data. Second, a second feedback message, NACK (Negative Acknowledgment), indicates that the receiving end has either failed to decode the received data or has not received the data sent by the sending end at all.

[0061] In one scenario of this application embodiment, if the first feedback information sent by the receiving end is not obtained, it means that the receiving end has not successfully decoded the data sent to the receiving end. In this case, the data in the data sequence with no free storage space will not be deleted, that is, the data in the data sequence will remain unchanged. Based on the storage time of the data in the data sequence, the second data with the longest storage time and the third data with a storage time later than the second data can be determined from the data sequence.

[0062] In another scenario of this application embodiment, a second feedback information sent by the receiving end is obtained. The second feedback information indicates that the receiving end has not successfully decoded the received data, or has not received the data sent by the sending end. In this case, the data in the data sequence with no free storage space will not be deleted, that is, the data in the data sequence will remain unchanged. Based on the storage time of the data in the data sequence, the second data with the longest storage time and the third data with a storage time later than the second data can be determined from the data sequence.

[0063] One method for determining the second data point with the longest storage time, and the third data point stored after it, involves storing data at each position in the data sequence in chronological order. This means each data point carries a storage time, indicating the order in which data is stored within the data sequence. Therefore, based on the storage times of the currently stored data, the earliest stored second data point (i.e., the second data point with the longest storage time) and the data points stored later than the second data point (referred to as the third data point for easy distinction) can be determined. The third data point is stored later than the second data point.

[0064] In this embodiment, the length of the data sequence is a predetermined value. If the data sequence length is too short, the accuracy of the compressed data obtained through encoding will be reduced, leading to unsuccessful decoding at the receiving end. Conversely, if the data sequence length is too long, the efficiency of the compressed data obtained through encoding will be reduced. Therefore, the length of the data sequence is predetermined to balance compression efficiency and accuracy, meeting the robustness and efficiency requirements of compression processing in the scenario. One implementation method is to determine the data sequence length based on the average channel quality of the scenario. Another implementation method involves obtaining the transmission period of the data to be transmitted and a predetermined time threshold, where the time threshold indicates the maximum duration during which the receiving end is allowed to fail to receive data. Based on the transmission period and the predetermined time threshold, a data sequence of predetermined length is determined, achieving a balance between compression efficiency and accuracy for different scenarios, thus meeting the robustness and efficiency requirements of compression processing in the scenario.

[0065] Then, based on the quantity of the first data, the target data to be replaced is determined from the third data.

[0066] In one implementation of this application, the target data to be replaced by the first data is determined from the third data based on the storage time of each third data and the quantity of the first data. In this scenario, the quantity of the target data is the same as the quantity of the first data.

[0067] In this embodiment, the first data to be compressed needs to be sent from the sending end to the receiving end after compression and decoded at the receiving end. Before compression, the first data is stored in a data sequence. If the data sequence is full, the data stored in the data sequence will be overwritten or replaced. In scenarios with poor air interface environment, a large number of uplink data packets will fail to be sent. In this case, directly overwriting the sent data stored in the data sequence will reduce the amount of data that can be used as a reference value. The reference value is used to participate in the calculation of the least significant bit information K corresponding to the newly stored first data. Therefore, the inaccuracy of the reference value will lead to the error of the calculated K value corresponding to the first data. Consequently, the compression result obtained by compressing the first data based on the K value corresponding to the first data will be inaccurate, causing the receiving end to be unable to correctly decode the compressed data of the received first data, thus reducing the reliability of data transmission. Therefore, in this embodiment of the application, the third data stored after the earliest stored second data, i.e. the second earliest stored third data, is determined, and the target data to be replaced is determined from the third data. In one implementation, there is one first data, and the first third data is determined as the target data to be replaced based on the storage time of each third data. In another implementation, there are multiple first data, and multiple target data to be replaced from the third data are determined according to the storage time of each third data and the number of multiple first data.

[0068] Step 202: Replace the target data with the first data to be compressed to obtain the updated data sequence.

[0069] In this embodiment, the second data is retained and not replaced, and the target data is replaced with the first data to obtain an updated data sequence. This achieves the retention of the earliest stored second data in the updated data sequence, increasing the number of data in the data sequence that can be used as compression reference values, thereby improving the accuracy of subsequent compression encoding based on reference values.

[0070] Step 203: Determine the reference value corresponding to the first data from the updated data sequence.

[0071] In this embodiment, there is at least one first data. For each first data, the data that was previously stored, compressed, and sent to the receiving end in the data sequence is determined. If no feedback information is received for this data, it can be used as a reference value for the first data. It should be understood that if the sending end receives feedback information from the receiving end, it will delete the data decoded by the receiving end from the data sequence according to the feedback information. If the data in the data sequence is not deleted, it is assumed that the corresponding feedback information has not been received yet, and the earliest stored second data is still in the data sequence. Therefore, it is assumed that the reference value of the first data includes the earliest stored second data.

[0072] Step 204: Determine the target transmission valid bits corresponding to the first data based on the reference value corresponding to the first data.

[0073] In this embodiment of the application, when there are multiple reference values, for each reference value, the smallest candidate transmission valid bit that makes the first data fall within the encoded value range is determined, and the target transmission valid bit is determined based on the smallest candidate transmission valid bit corresponding to each reference value. Here, the transmission valid bit refers to the least significant bit information.

[0074] The encoding value range is [v_ref-p, v_ref+2]. k -1-p]: where v_ref is the reference value; p is the offset adjustment parameter, which is usually a fixed constant value; K is the least significant bit information to be determined, which is the smallest candidate transmission valid bit that the first data falls into the encoding value range.

[0075] As one implementation method, given the smallest candidate valid bit for each reference value, the largest one is selected from multiple candidate valid bits as the target valid bit for transmission, so that each reference value corresponding to the first data in the data sequence satisfies the LSB coding algorithm requirements.

[0076] Step 205: Determine the compressed data corresponding to the first data based on the target transmission valid bits corresponding to the first data.

[0077] In this embodiment of the application, the target transmission valid bit corresponding to the first data is used as the compressed data corresponding to the first data. The compressed data corresponding to the first data is sent to the receiving end for decoding, and the first data can be accurately decoded.

[0078] In the data processing method of this application embodiment, when there is no free space in the data sequence, the target data stored in the data sequence is replaced according to the first data to be compressed to obtain an updated data sequence. The updated data sequence retains the second data with the longest storage time. The first data is compressed according to the updated data sequence to obtain compressed data. When updating the data sequence, the second data with the longest storage time is retained, which improves the reliability of the data sequence update and thus improves the accuracy of data compression based on the updated data sequence. Therefore, when the receiving end receives the compressed data of the first data, it can accurately decode the decoded data. This ensures that even in a harsh air interface environment, when a large number of uplink voice packets fail to be sent, the successfully sent voice packets can still be successfully decoded by the other end.

[0079] Based on the above embodiments, Figure 3 A flowchart illustrating another data processing method provided in this application embodiment is shown below. Figure 3As shown, the method includes the following steps:

[0080] Step 301: In response to receiving the first feedback information sent by the receiving end, delete the data indicated by the first feedback information from the data sequence.

[0081] The number of deleted data items is less than the number of data items in the first data item.

[0082] The first feedback information can be referred to the explanation in the foregoing embodiments, and will not be repeated here.

[0083] In this embodiment, the first feedback information includes information about the data that the receiving end has received and decoded. As an example, the sending end encodes data 2, 3, 4, and 5 using the W-LSB algorithm to obtain corresponding compressed data. After sending the compressed data to the receiving end, it receives the first feedback information ACK for data 4 sent by the receiving end. The ACK for data 4 indicates that data 2, 3, and 4 have all been successfully sent to the receiving end and successfully decoded. Therefore, the sending end deletes data 2, 3, and 4 from the data sequence indicated by the first feedback information, leaving only data 5 in the reference value set. By using a single first feedback information to confirm the decompression of multiple data sets, the number of times the first feedback information is sent is reduced, improving efficiency.

[0084] Step 302: Determine the fourth data from the remaining data based on the data storage time.

[0085] In this embodiment of the application, based on the storage time of the remaining data stored in the data sequence, the data with the longest storage time among the remaining data is determined as the second data, and the fourth data with a storage time later than the second data is determined.

[0086] Step 303: Determine the target data to be replaced based on the fourth data and the free storage locations in the data sequence.

[0087] In this embodiment of the application, some data is deleted from the data sequence according to the first feedback information, so that there will be some storage locations remaining in the data sequence. The number of remaining storage locations is the same as the number of deleted storage locations. Since the number of deleted data is less than the number of first data, the data in the first data that is the same number of deleted data is stored in the remaining storage locations. Then, based on the remaining first data, data with the same number of remaining first data is determined from the fourth data according to the order of storage time, and used as the target data to be replaced.

[0088] Step 304: Replace the target data with the first data to be compressed to obtain the updated data sequence.

[0089] Step 305: Based on the updated data sequence, compress the first data to obtain compressed data.

[0090] Steps 304 and 305 can be referred to the relevant explanations in the foregoing embodiments, as the principles are the same, and will not be repeated here.

[0091] In the data processing method of this application embodiment, when there is no free space in the data sequence, the target data stored in the data sequence is replaced according to the first data to be compressed to obtain an updated data sequence. The updated data sequence retains the second data with the longest storage time. The first data is compressed according to the updated data sequence to obtain compressed data. When updating the data sequence, the second data with the longest storage time is retained, which improves the reliability of the data sequence update and thus improves the accuracy of data compression based on the updated data sequence. Therefore, when the receiving end receives the compressed data of the first data, it can accurately decode the decoded data. This ensures that even in a harsh air interface environment, when a large number of uplink voice packets fail to be sent, the successfully sent voice packets can still be successfully decoded by the other end.

[0092] Based on the above embodiments, this application belongs to the field of IP protocol header encoding and compression for wireless communication data streams, and is applied to the compression processing of IP, UDP / IP, and RTP / UDP / IP protocol headers, thereby improving the robustness of compression processing. This application is based on the RoHC (Robust Header Compression) compression / decompression algorithm. This algorithm is a general method for compression / decompression of protocol headers for IP, UDP / IP, UDP-Lite / IP, ESP / IP, RTP / UDP / IP, RTP / UDP-Lite / IP, and TCP / IP protocol messages.

[0093] Based on the above embodiments, in order to more clearly illustrate the data processing method of the embodiments of this application, the following examples are given for specific scenarios.

[0094] For ease of calculation, p = 0 in the encoding value range, and the data to be compressed is the serial number (SN). SN = 0 is sent via IR packets (Initialization and Refresh), which carry complete uncompressed header information and are used to initialize or refresh the compression context. In this way, ROHC ensures that the context between the compression and decompression ends remains consistent, thus guaranteeing the correctness of the compression and decompression processes.

[0095] In this embodiment, the data sequence in the W-LSB compression algorithm can be referred to as a sliding window. Taking a scenario where the sliding window length in the W-LSB compression algorithm is 8 as an example, the 8 positions in the sliding window are numbered #0 to #7:

[0096] a) As an example, Figure 4 This is one of the storage diagrams of a sliding window provided in an embodiment of this application, such as... Figure 4 As shown, the eight cells #0 to #7 are initially in an empty state, meaning that #0, #1, #2, #3, #4, #5, #6, and #7 do not store any data. The positions without stored data are marked in white.

[0097] b) The sending end, also known as the compression end, receives five data packets, i.e., five initial data packets, SN=0 to SN=4. These are stored in positions #0, #1, #2, #3, and #4 of the sliding window. Specifically, they are stored sequentially: #0 stores SN=0, #1 stores SN=1, #2 stores SN=2, #3 stores SN=3, and #4 stores SN=4. Positions #5 to #7 are idle; that is, positions #5, #6, and #7 have not yet stored data. As an example, Figure 5 This is a second schematic diagram of the storage of a sliding window provided in an embodiment of this application, wherein the location where the data is stored is marked in gray.

[0098] Specifically, for each data packet to be compressed, a corresponding reference value is determined based on the data stored in the sliding window, and the corresponding K value is determined based on the reference value:

[0099] When SN=1, the reference value v_ref in the reference value set of the sliding window includes SN=0.

[0100] For the reference value SN=0, according to the formula [v_ref-p,v_ref+2k-1-p] for the coding interval, it is determined that when k=1, SN=1 can be guaranteed to fall within the interval [0,1]. That is, k=1 is the smallest candidate valid bit for transmission corresponding to the reference value SN=0, and k=1 is also the target valid bit for transmission.

[0101] When SN=2, the reference values ​​v_ref in the reference value set of the sliding window include SN=0 and SN=1.

[0102] For the reference value SN=0, according to the formula [v_ref-p,v_ref+2k-1-p] for the coding interval, it is determined that when k=2, SN=2 can be guaranteed to fall within the interval [0,3]. For SN=2, k=2 is the smallest candidate transmission valid bit corresponding to the reference value SN=0.

[0103] For the reference value SN=1, according to the formula for the coding interval [v_ref-p, v_ref+2k-1-p], it is determined that when k=1, SN=2 is guaranteed to fall within the interval [1, 2]. For SN=2, k=1 is the smallest candidate valid bit corresponding to the reference value SN=1.

[0104] In summary, from k=1 and k=2, we determine that the target transmission valid bit k=2.

[0105] Similarly, we determine that when SN=3, k=2; and when SN=4, k=3.

[0106] c) The sending end receives a status report from the receiving end, which includes feedback information. As an example... Figure 6 This is a third schematic diagram illustrating the storage of a sliding window as provided in an embodiment of this application, such as... Figure 6 As shown, based on the feedback information, it is determined that the data receivers at positions #0 to #1 have successfully received the data. Therefore, the data stored at positions #0 and #1 in the sliding window is cleared, leaving them empty. Consequently, positions #5 to #1 are now idle; positions #5, #6, #7, #0, and #1 contain no data. Positions #2 to #4 contain data, with #2 storing SN=2, #3 storing SN=3, and #4 storing SN=4. At this point, the reference values ​​within the sliding window are SN=2, SN=3, and SN=4.

[0107] d) Subsequently, the receiving end receives 5 data packets (SN=5 to SN=9) and stores them in the sliding window until the window is full. Specifically, #2 stores SN=2, #3 stores SN=3, #4 stores SN=4, #5 stores SN=5, #6 stores SN=6, #7 stores SN=7, #0 stores SN=8, and #1 stores SN=9. As an example, Figure 7 This is the fourth schematic diagram of a sliding window storage provided in an embodiment of this application. Figure 7 The gray areas are where the data is stored.

[0108] The method for determining the K value corresponding to each data packet can be found in the explanations and instructions above; the principle is the same, and will not be repeated here. Figure 7 The data with SN=5 to SN=9 will be compressed and sent to the receiving end.

[0109] e) When the sliding window is full, the receiving end receives 5 more data packets (SN = 10 to 14). The oldest stored data is determined from the already stored data in the sliding window based on its storage time. In this case, the oldest stored data in the current sliding window is SN = 2 stored at position #2. SN = 2 stored at #2 also indicates that no feedback information was received from the receiving end; that is, data that was not acknowledged as received by the receiving end. When storing the 5 newly received data packets, the oldest stored data is retained without overwriting it. Overwriting begins from the data stored at position #3, the second oldest stored data, overwriting positions #3 to #7, i.e., data SN = 3, SN = 4, SN = 5, SN = 6, and SN = 7. After data overwriting, the resulting sliding window stores SN = 2 at #2, SN = 10 at #3, SN = 11 at #4, SN = 12 at #5, SN = 13 at #6, SN = 14 at #7, SN = 8 at #0, and SN = 9 at #1. As an example, Figure 8 This is the fifth schematic diagram of a sliding window storage provided in an embodiment of this application, as shown below. Figure 8 As shown, Figure 8 The positions marked in dark gray are the positions that will be replaced. Position #2 is the position corresponding to the data with the longest storage time, SN=2. The data at this position, SN=2, has not been overwritten and is retained in the sliding window.

[0110] Assuming the sender did not successfully receive the five compressed packets between SN=2 and SN=6, determine the corresponding K value for each of the five currently received data packets:

[0111] When SN=10, the reference values ​​that can be used in the sliding window are SN=2, SN=8, and SN=9. That is, the reference values ​​that exist in the reference value set of v_ref include SN=2, SN=8, and SN=9.

[0112] For the reference value SN=2, according to the formula [v_ref-p,v_ref+2k-1-p] for the coding interval, it is determined that when k=4, SN=10 can be guaranteed to fall within the interval [2, 17]. For SN=10, k=4 is the smallest candidate transmission valid bit corresponding to the reference value SN=2.

[0113] For the reference value SN=8, according to the formula [v_ref-p,v_ref+2k-1-p] for the coding interval, it is determined that when k=2, SN=5 can be guaranteed to fall within the interval [8, 11]. For SN=10, k=2 is the smallest candidate transmission valid bit corresponding to the reference value SN=8.

[0114] For the reference value SN=9, according to the formula [v_ref-p,v_ref+2k-1-p] for the coding interval, it is determined that when k=1, SN=5 can be guaranteed to fall within the interval [9, 10]. For SN=10, k=1 is the smallest candidate transmission valid bit corresponding to the reference value SN=9.

[0115] In summary, the target transmission valid bits k = 4.

[0116] When SN=11, the reference values ​​that can be used in the sliding window are SN=2, SN=8, SN=9, and SN=10, since the reference values ​​in the v_ref reference value set include SN=2, SN=8, SN=9, and SN=10.

[0117] For the reference value SN=2, according to the above formula for the coding interval, when k=3, it can be guaranteed that SN=6 falls within the interval [2, 17]. That is, for SN=11, k=3 is the smallest candidate transmission valid bit corresponding to the reference value SN=2.

[0118] For the reference value SN=8, according to the above formula for the coding interval, when k=2, it can be guaranteed that SN=6 falls within the interval [8, 11]. That is, for SN=11, k=2 is the smallest candidate transmission valid bit corresponding to the reference value SN=8.

[0119] For the reference value SN=9, according to the above formula for the coding interval, when k=2, it can be guaranteed that SN=6 falls within the interval [9, 12]. That is, for SN=11, k=2 is the smallest candidate transmission valid bit corresponding to the reference value SN=9.

[0120] For the reference value SN=10, according to the above formula for the coding interval, when k=1, it can be guaranteed that SN=6 falls within the interval [10, 11]. That is, for SN=11, k=1 is the smallest candidate transmission valid bit corresponding to the reference value SN=10.

[0121] In summary, the target transmission valid bits k = 4.

[0122] Similarly, it is determined that when SN=12, the target transmission valid bits k=4.

[0123] Taking SN=10 as an example, the sending end transmits 4 least significant bits (0b1010) to the receiving end. The receiving end receives the 4 least significant bits (0b1010), decodes them, and restores SN=10, thus avoiding decoding failure.

[0124] It should be noted that in related technologies, if the data with the longest storage time is not retained and the compressed data sent to the receiving end is overwritten, the data with the longest storage time will be overwritten. That is, the data with SN=2 will be overwritten, so the data with SN=2 cannot be used as a reference value to calculate the K value. For example, taking SN=10, the sending end transmits two least significant bits (0b10) to the receiving end. The receiving end receives the two least significant bits (0b10), decodes them, and restores SN=2. However, the actual data sent is SN=10, which leads to decoding failure.

[0125] To implement the above embodiments, this application also proposes a data processing apparatus.

[0126] Figure 9 This is a schematic diagram of the structure of a data processing device provided in an embodiment of this application.

[0127] like Figure 9 As shown, the device may include:

[0128] The determination module 91 is used to determine the target data to be replaced from the data sequence with no free storage space based on the storage time of the data; wherein, the target data does not include the second data that has not been confirmed by the receiving end and has the longest storage time.

[0129] The replacement module 92 is used to replace the target data according to the first data to obtain an updated data sequence.

[0130] Compression module 93 is used to compress the first data according to the updated data sequence to obtain compressed data.

[0131] Furthermore, in one implementation of this application embodiment, the determining module 92 is further configured to:

[0132] In response to the failure to receive the first feedback information sent by the receiving end, a third data is determined from the data sequence based on the data storage time; wherein, the first feedback information indicates that the receiving end has successfully decoded the received data; and the storage time of the third data is later than that of the second data;

[0133] The target data to be replaced is determined from the third data based on the quantity of the first data.

[0134] In one implementation of this application embodiment, the determining module 92 is further configured to:

[0135] In response to receiving second feedback information sent by the receiving end, a third data is determined from the data sequence based on the data storage time; wherein, the second feedback information indicates that the receiving end has not received data sent by the sending end, or has not successfully decoded the received data; the storage time of the third data is later than that of the second data;

[0136] The target data to be replaced is determined from the third data based on the quantity of the first data.

[0137] In one implementation of this application embodiment, the determining module 92 is further configured to:

[0138] In response to receiving first feedback information sent by the receiving end, the data indicated by the first feedback information is deleted from the data sequence; wherein the number of deleted data is less than the number of first data.

[0139] Based on the storage time of the data, a fourth data point is determined from the remaining data; wherein the storage time of the fourth data point is later than that of the second data point.

[0140] The target data to be replaced is determined based on the fourth data and the free storage locations in the data sequence.

[0141] In one implementation of this application embodiment, the determining module 92 is further configured to:

[0142] Obtain the transmission period of the data to be transmitted and a set time threshold; wherein, the time threshold indicates the maximum duration during which the receiving end is allowed to fail to receive data;

[0143] The data sequence of a set length is determined based on the transmission period and the set time threshold.

[0144] In one implementation of this application embodiment, the compression module 94 is further configured to:

[0145] Determine the reference value corresponding to the first data from the updated data sequence;

[0146] Based on the reference value corresponding to the first data, determine the target transmission valid bits corresponding to the first data;

[0147] Based on the target transmission valid bits corresponding to the first data, the compressed data corresponding to the first data is determined.

[0148] In one implementation of this application, the reference value includes multiple values, and the determining module 92 is further configured to:

[0149] For each of the reference values, determine the smallest candidate transmission valid bit that makes the first data fall within the encoded value range;

[0150] The target transmission valid bit is determined based on the smallest candidate transmission valid bit corresponding to each reference value.

[0151] It should be noted that the foregoing explanation of the method embodiments also applies to the apparatus of this embodiment, and will not be repeated here.

[0152] In the data processing apparatus of this application embodiment, target data to be replaced is determined from a data sequence with no free storage space based on the storage time of the data. The target data does not include the second data that has not been confirmed by the receiving end and has the longest storage time. The target data is replaced based on the first data to obtain an updated data sequence. Based on the updated data sequence, the first data is compressed to obtain compressed data. When replacing data in a data sequence with no free storage space, the second data that has not been confirmed by the receiving end and has the longest storage time is retained, which improves the reliability of data sequence updates and thus improves the accuracy of data compression based on the updated data sequence.

[0153] To implement the above embodiments, this application also proposes an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, it implements the method described in the foregoing method embodiments.

[0154] To implement the above embodiments, this application also proposes a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the method described in the foregoing method embodiments.

[0155] To implement the above embodiments, this application also proposes a computer program product having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the method described in the foregoing method embodiments.

[0156] Figure 10 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this application. For example, the electronic device 800 may be a mobile phone, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, etc.

[0157] Reference Figure 10 The electronic device 800 may include one or more of the following components: processing component 802, memory 804, power component 806, multimedia component 808, audio component 810, input / output (I / O) interface 812, sensor component 814, and communication component 816.

[0158] Processing component 802 typically controls the overall operation of electronic device 800, such as operations associated with display, telephone calls, data communication, camera operation, and recording operations. Processing component 802 may include one or more processors 820 to execute instructions to complete all or part of the steps of the methods described above. Furthermore, processing component 802 may include one or more modules to facilitate interaction between processing component 802 and other components. For example, processing component 802 may include a multimedia module to facilitate interaction between multimedia component 808 and processing component 802.

[0159] Memory 804 is configured to store various types of data to support the operation of electronic device 800. Examples of this data include instructions for any application or method operating on electronic device 800, contact data, phonebook data, messages, pictures, videos, etc. Memory 804 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.

[0160] Power component 806 provides power to various components of electronic device 800. Power component 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to electronic device 800.

[0161] Multimedia component 808 includes a screen that provides an output interface between the electronic device 800 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 808 includes a front-facing camera and / or a rear-facing camera. When the electronic device 800 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.

[0162] Audio component 810 is configured to output and / or input audio signals. For example, audio component 810 includes a microphone (MIC) configured to receive external audio signals when electronic device 800 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 804 or transmitted via communication component 816. In some embodiments, audio component 810 also includes a speaker for outputting audio signals.

[0163] I / O interface 812 provides an interface between processing component 802 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.

[0164] Sensor assembly 814 includes one or more sensors for providing state assessments of various aspects of electronic device 800. For example, sensor assembly 814 can detect the on / off state of electronic device 800, the relative positioning of components such as the display and keypad of electronic device 800, changes in position of electronic device 800 or a component of electronic device 800, the presence or absence of user contact with electronic device 800, orientation or acceleration / deceleration of electronic device 800, and temperature changes of electronic device 800. Sensor assembly 814 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 814 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 814 may also include an accelerometer, gyroscope, magnetometer, pressure sensor, or temperature sensor.

[0165] Communication component 816 is configured to facilitate wired or wireless communication between electronic device 800 and other devices. Electronic device 800 can access wireless networks based on communication standards, such as WiFi, 4G, or 5G, or combinations thereof. In one exemplary embodiment, communication component 816 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 816 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.

[0166] In an exemplary embodiment, the electronic device 800 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the methods described above.

[0167] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 804 including instructions, which can be executed by a processor 820 of an electronic device 800 to perform the above-described method. For example, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.

[0168] To implement the above embodiments, this application also proposes a chip, including: the chip includes a processing circuit configured to perform the methods provided in the foregoing embodiments.

[0169] Figure 11 This is a schematic diagram of the structure of a chip according to an embodiment of this application. See also... Figure 11 The diagram shown is a schematic representation of the structure of chip 1100, but it is not limited to this.

[0170] Chip 1100 includes processing circuitry 1101, which is configured to perform any of the above methods.

[0171] In some embodiments, chip 1100 further includes one or more interface circuits 1102. Optionally, the interface circuit 1102 is connected to memory 1103, and the interface circuit 1102 can be used to receive signals from memory 1103 or other devices, and the interface circuit 1102 can be used to send signals to memory 1103 or other devices. For example, the interface circuit 1102 can read instructions stored in memory 1103 and send the instructions to processing circuit 1101.

[0172] In some embodiments, the interface circuit 1102 performs at least one of the communication steps such as sending and / or receiving in the above method, while the processing circuit 1101 performs other steps.

[0173] In some embodiments, the terms interface circuit, interface, transceiver pin, transceiver, etc., can be used interchangeably.

[0174] In some embodiments, chip 1100 further includes one or more memories 1103 for storing instructions. Optionally, all or part of the memories 1103 may be located outside of chip 1100.

[0175] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., refer to specific features, structures, materials, or characteristics described in connection with that embodiment or example, which are included in at least one embodiment or example of this application. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.

[0176] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this application, "multiple" means at least two, such as two, three, etc., unless otherwise explicitly specified.

[0177] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing custom logic functions or processes, and the scope of the preferred embodiments of this application includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as should be understood by those skilled in the art to which embodiments of this application pertain.

[0178] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as a sequenced list of executable instructions for implementing logical functions, and can be embodied in any computer-readable medium for use by, or in conjunction with, an instruction execution system, apparatus, or device (such as a computer-based system, a processor-included system, or other system that can fetch and execute instructions from, an instruction execution system, apparatus, or device). For the purposes of this specification, "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transmit programs for use by, or in conjunction with, an instruction execution system, apparatus, or device. More specific examples (a non-exhaustive list) of computer-readable media include: an electrical connection having one or more wires (electronic device), a portable computer disk drive (magnetic device), random access memory (RAM), read-only memory (ROM), erasable and editable read-only memory (EPROM or flash memory), fiber optic devices, and portable optical disc read-only memory (CDROM). Alternatively, the computer-readable medium may be paper or other suitable media on which the program can be printed, since the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpreting, or otherwise processing as necessary, and then stored in a computer memory.

[0179] It should be understood that various parts of this application can be implemented using hardware, software, firmware, or a combination thereof. In the above embodiments, multiple steps or methods can be implemented using software or firmware stored in memory and executed by a suitable instruction execution system. For example, if implemented in hardware as in another embodiment, it can be implemented using any one or a combination of the following techniques known in the art: discrete logic circuits having logic gates for implementing logical functions on data signals, application-specific integrated circuits (ASICs) having suitable combinational logic gates, programmable gate arrays (PGAs), field-programmable gate arrays (FPGAs), etc.

[0180] Those skilled in the art will understand that all or part of the steps of the methods in the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, the program includes one or a combination of the steps of the method embodiments.

[0181] Furthermore, the functional units in the various embodiments of this application can be integrated into a processing module, or each unit can exist physically separately, or two or more units can be integrated into a module. The integrated module can be implemented in hardware or as a software functional module. If the integrated module is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium.

[0182] The storage medium mentioned above can be a read-only memory, a disk, or an optical disk, etc. Although embodiments of this application have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting this application. Those skilled in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of this application.

Claims

1. A data processing method, characterized in that, include: Based on the storage time of the data, the target data to be replaced is determined from the data sequence with no free storage space; wherein, the target data does not include the second data that has not been confirmed by the receiving end and has the longest storage time; The target data is replaced with the first data to be compressed to obtain an updated data sequence; Based on the updated data sequence, the first data is compressed to obtain compressed data.

2. The method as described in claim 1, characterized in that, The step of determining the target data to be replaced from a data sequence with no free storage space based on the data's storage time includes: In response to the failure to receive the first feedback information sent by the receiving end, a third data is determined from the data sequence based on the data storage time; wherein, the first feedback information indicates that the receiving end has successfully decoded the received data; and the storage time of the third data is later than that of the second data; The target data to be replaced is determined from the third data based on the quantity of the first data.

3. The method as described in claim 1, characterized in that, The step of determining the target data to be replaced from a data sequence with no free storage space based on the data's storage time includes: In response to receiving second feedback information sent by the receiving end, a third data is determined from the data sequence based on the data storage time; wherein, the second feedback information indicates that the receiving end has not received data sent by the sending end, or has not successfully decoded the received data; the storage time of the third data is later than that of the second data; The target data to be replaced is determined from the third data based on the quantity of the first data.

4. The method as described in claim 1, characterized in that, The step of determining the target data to be replaced from a data sequence with no free storage space based on the data's storage time includes: In response to receiving first feedback information sent by the receiving end, the data indicated by the first feedback information is deleted from the data sequence; wherein the number of deleted data is less than the number of first data. Based on the storage time of the data, a fourth piece of data is determined from the remaining data; wherein the storage time of the fourth piece of data is later than that of the second piece of data; The target data to be replaced is determined based on the fourth data and the free storage locations in the data sequence.

5. The method according to any one of claims 1-4, characterized in that, The method further includes: The transmission period of the data to be transmitted and the set time threshold are obtained; wherein, the time threshold indicates the maximum duration during which the receiving end is allowed to fail to receive data; The data sequence of a set length is determined based on the transmission period and the set time threshold.

6. The method according to any one of claims 1-4, characterized in that, The step of compressing the first data according to the updated data sequence to obtain compressed data includes: Determine the reference value corresponding to the first data from the updated data sequence; Based on the reference value corresponding to the first data, determine the target transmission valid bits corresponding to the first data; Based on the target transmission valid bits corresponding to the first data, the compressed data corresponding to the first data is determined.

7. The method as described in claim 6, characterized in that, The reference values ​​include multiple values, and determining the target transmission valid bits corresponding to the first data based on the reference values ​​corresponding to the first data includes: For each of the reference values, determine the smallest candidate transmission valid bit that makes the first data fall within the encoded value range; The target transmission valid bit is determined based on the smallest candidate transmission valid bit corresponding to each reference value.

8. A data processing apparatus, characterized in that, include: The determination module is used to determine the target data to be replaced from a data sequence with no free storage space based on the data storage time; wherein, the target data does not include the second data that has not been confirmed by the receiving end and has the longest storage time; The replacement module is used to replace the target data according to the first data to be compressed, so as to obtain an updated data sequence; A compression module is used to compress the first data according to the updated data sequence to obtain compressed data.

9. An electronic device, characterized in that, It includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, it implements the method as described in any one of claims 1-7.

10. A chip, characterized in that, The chip includes processing circuitry configured to perform the method as described in any one of claims 1-7.

11. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1-7.

12. A computer program product, characterized in that, It includes a computer program, which, when executed by a processor, implements the method of any one of claims 1-7.

Citation Information

Patent Citations

  • TCP (transmission control protocol) header compression method in wireless IPv6 (internet protocol version 6) network

    CN103067971A

  • Robust, inferentially synchronized transmission of compressed transport-layer-protocol headers

    US20020097722A1