Uplink data compression method and device, electronic equipment, chip and medium

By independently selecting and determining the target cache size of uplink data compression in the terminal, the problem of insufficient flexibility in uplink data compression in the prior art is solved, and a more efficient and flexible data compression effect is achieved.

CN120076029APending Publication Date: 2025-05-30BEIJING X RING TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311610568.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-28
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

The existing Deflate compression algorithm has poor flexibility in uplink data compression and cannot adaptively adjust the compression cache size according to the characteristics of the business data, resulting in low compression efficiency and compression rate.

Method used

By receiving the uplink data sent by the network device to compress the UDC configuration information, the terminal determines whether to independently select the cache size. If it is independently selected, it determines the target cache size based on the characteristics of the current service, and compresses the IP packets with this size and sends them to the network device.

Benefits of technology

It realizes that the terminal independently determines the target cache size based on prior information, improves the compression efficiency and compression rate of data, and enhances the flexibility of compression.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120076029A_ABST
    Figure CN120076029A_ABST
Patent Text Reader

Abstract

The invention provides an uplink data compression method and device, electronic equipment, a chip and a storage medium, uplink data compression UDC configuration information sent by network equipment is received, the UDC configuration information comprises a first field, and the first field is used for indicating whether a terminal autonomously selects a cache size; under the condition that the first field indicates that the terminal autonomously selects the cache size, determining a target cache size for compressing a plurality of IP packets of the current service according to the characteristics of the current service; compressing the plurality of IP packets of the current service according to the target cache size to obtain a plurality of compressed IP packets; a plurality of compressed IP packets are sent to the network device, where the header of each compressed IP packet includes a second field to identify the target cache size. The terminal can autonomously determine the cache size based on the service characteristics in combination with the prior information, the cache size more adaptive to the service is obtained, and the data compression rate and the compression speed can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the technical field of data transmission, and particularly to an uplink data compression method, apparatus, electronic device, chip, and medium. Background Art

[0002] After the long-term evolution voice bearer technology is widely applied, in order to solve the problem of low connection rate of weak point calls, the 3GPP protocol introduces an uplink data compression function to compress the data of the uplink IP multimedia subsystem signaling. The technical core of the uplink data compression function is the Deflate compression algorithm, which is a classic text data compression algorithm. This compression algorithm is widely used in data compression fields such as zlib due to its simple and efficient characteristics and no patent barriers.

[0003] Currently, the adopted Deflate compression algorithm requires the network to pre-configure the compression cache size and dictionary in advance. The terminal can only compress according to the compression cache size required by the network. The amount of prior information available during packet compression is fixed, and the flexibility is poor. Summary of the Invention

[0004] The present disclosure provides an uplink data compression method, apparatus, electronic device, chip, and medium to solve the problems in the related art.

[0005] In a first aspect embodiment of the present disclosure, an uplink data compression method is proposed. The method includes: receiving uplink data compression (UDC) configuration information sent by a network device, where the UDC configuration information includes a first field, and the first field is used to indicate whether the terminal autonomously selects the cache size; in the case where the first field indicates that the terminal autonomously selects the cache size, determining a target cache size for compressing multiple IP packets of the current service according to the characteristics of the current service; compressing multiple IP packets of the current service with the target cache size to obtain multiple compressed IP packets; and sending the multiple compressed IP packets to the network device, where the header of each compressed IP packet includes a second field, and the second field is used to identify the target cache size.

[0006] In some embodiments of the present disclosure, in the case where the first field indicates that the terminal autonomously selects the cache size, determining a target cache size for compressing multiple IP packets of the current service according to the characteristics of the current service includes: the application processor of the terminal determines the characteristics of the current service; the application processor of the terminal marks the characteristics of the current service in the data packets of the current service and sends them to the baseband processor of the terminal, or the application processor of the terminal sends the characteristics of the current service to the baseband processor of the terminal through an AT command; and the baseband processor of the terminal determines the target cache size according to the characteristics of the current service.

[0007] In some embodiments of the present disclosure, multiple IP packets of the current service are compressed with a target cache size to obtain multiple compressed IP packets, including: the baseband processor of the terminal splits the data packets of the current service into multiple IP packets; a buffer with a target cache size is used to compress the multiple IP packets to obtain multiple compressed IP packets.

[0008] In some embodiments of the present disclosure, the header of each compressed IP packet further includes at least one of a third field, a fourth field, and a fifth field, where the third field indicates whether the IP packet is compressed, the fourth field indicates whether a compression cache reset is performed before the IP packet is compressed, and the fifth field indicates the compression cache check information before the IP packet is compressed.

[0009] In some embodiments of the present disclosure, the method further includes: when the terminal receives a decompression failure feedback sent by the network, or when the terminal switches the cache size, setting the fourth field to 1.

[0010] An embodiment of the second aspect of the present disclosure provides an uplink data compression method, which includes: sending uplink data compression UDC configuration information to a terminal, where the UDC configuration information includes a first field, and the first field is used to indicate whether the terminal autonomously selects a cache size; receiving multiple compressed IP packets sent by the terminal, where the header of each compressed IP packet includes a second field, and the second field is used to identify the target cache size, and the target cache size is determined by the terminal according to the characteristics of the current service, and the multiple compressed IP packets are obtained by the terminal compressing multiple IP packets of the current service with the target cache size.

[0011] In some embodiments of the present disclosure, the header of each compressed IP packet further includes at least one of a third field, a fourth field, and a fifth field, where the third field indicates whether the IP packet is compressed, the fourth field indicates whether a compression cache reset is performed before the IP packet is compressed, and the fifth field indicates the compression cache check information before the IP packet is compressed.

[0012] An embodiment of the third aspect of the present disclosure provides a terminal, which includes: a first transceiver unit, configured to receive uplink data compression UDC configuration information sent by a network device, where the UDC configuration information includes a first field, and the first field is used to indicate whether the terminal autonomously selects a cache size; a determination unit, configured to determine a target cache size for compressing multiple IP packets of the current service according to the characteristics of the current service when the first field indicates that the terminal autonomously selects a cache size; a processing unit, configured to compress the multiple IP packets of the current service with the target cache size to obtain multiple compressed IP packets; and a second transceiver unit, configured to send the multiple compressed IP packets to the network device, where the header of each compressed IP packet includes a second field, and the second field is used to identify the target cache size.

[0013] According to an embodiment of the fourth aspect of the present disclosure, a network device is provided. The network device includes: a first transceiver unit configured to send uplink data compression (UDC) configuration information to a terminal, where the UDC configuration information includes a first field for indicating whether the terminal autonomously selects a cache size; and a second transceiver unit configured to receive multiple compressed IP packets sent by the terminal, where a header of each compressed IP packet includes a second field for identifying a target cache size, the target cache size being determined by the terminal according to characteristics of a current service, and the multiple compressed IP packets being obtained by the terminal by compressing multiple IP packets of the current service with the target cache size.

[0014] According to an embodiment of the fifth aspect of the present disclosure, a communication system is provided. The communication system includes: a terminal and a network device; wherein, the terminal is configured to execute the method described in any one of the embodiments of the first aspect of the present disclosure; and the network device is configured to execute the method described in any one of the embodiments of the second aspect of the present disclosure.

[0015] According to an embodiment of the sixth aspect of the present disclosure, an electronic device is provided, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein, the memory stores instructions executable by the at least one processor, and when the instructions are executed by the at least one processor, the at least one processor is enabled to execute the methods described in the embodiments of the first aspect and the second aspect of the present disclosure.

[0016] According to an embodiment of the seventh aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, where the computer instructions are used to cause a computer to execute the methods described in the embodiments of the first aspect and the second aspect of the present disclosure.

[0017] According to an embodiment of the eighth aspect of the present disclosure, a computer program product is provided, including a computer program, and the computer program is used to execute the methods described in the embodiments of the first aspect and the second aspect of the present disclosure when being executed by a processor.

[0018] According to an embodiment of the ninth aspect of the present disclosure, a chip is provided, characterized by including at least one processor and a communication interface; the communication interface is configured to receive a signal input to the chip or output from the chip, and the processor communicates with the communication interface and implements the methods described in the embodiments of the first aspect and the second aspect of the present disclosure through logic circuits or by executing code instructions.

[0019] In summary, for the uplink data compression method proposed in this disclosure, the terminal determines whether to autonomously select the cache size based on the UDC configuration information. When the terminal autonomously determines the cache size, the terminal can determine the target cache size of the IP packet based on the service characteristics, compress the current service using the target cache size, and send the compressed IP packet to the network device. This can enable the terminal to autonomously determine the target cache size using prior information, improve the flexibility of compression, and increase the data compression efficiency and compression ratio.

[0020] It should be understood that the above general description and the following detailed description are merely exemplary and explanatory, and do not limit this disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The accompanying drawings herein are incorporated into the specification and constitute a part of this specification, showing embodiments consistent with this disclosure, and are used together with the specification to explain the principles of this disclosure and do not constitute an improper limitation of this disclosure.

[0022] Figure 1 It is a schematic flowchart of an uplink data compression method provided by an embodiment of this disclosure;

[0023] Figure 2 It is a schematic flowchart of an uplink data compression method provided by an embodiment of this disclosure;

[0024] Figure 3 It is a schematic flowchart of an uplink data compression method provided by an embodiment of this disclosure;

[0025] Figure 4 It is a schematic flowchart of an uplink data compression method provided by an embodiment of this disclosure;

[0026] Figure 5 It is a schematic flowchart of a window adaptive UDC compression scheme provided by an embodiment of this disclosure;

[0027] Figure 6 It is a schematic structural diagram of a UDC configuration information provided by an embodiment of this disclosure;

[0028] Figure 7 It is an architecture diagram of a terminal provided by an embodiment of this disclosure;

[0029] Figure 8 It is an architecture diagram of a network device provided by an embodiment of this disclosure;

[0030] Figure 9 It is an architecture diagram of a communication system provided by an embodiment of this disclosure;

[0031] Figure 10 It is a schematic structural diagram of an electronic device provided by an embodiment of this disclosure;

[0032] Figure 11 Schematic diagram of the chip structure provided by the embodiments of the present disclosure. Detailed implementation manners

[0033] The embodiments of the present disclosure will be described in detail below. Examples of the embodiments are shown in the accompanying drawings, in which 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 are intended to explain the present disclosure, and should not be construed as a limitation to the present disclosure.

[0034] The 3GPP protocol introduces the uplink data compression function (UDC) to compress the uplink IP multimedia subsystem (IMS) signaling data. The IMS signaling uses the session initiation protocol (SIP) coding method, which has the characteristics of many repeated strings and low transmission frequency, and its requirement for UDC processing performance is not high. However, the UDC compression scheme itself can be applied not only to IMS signaling compression, but also to other data transmission compression scenarios, such as compressing TCP ACK packets during high-speed file transfer protocol downloads.

[0035] For the above scenarios, the existing UDC processing solutions mainly compress data based on its core technology, the Deflate algorithm, and will use a compression buffer, a lookahead buffer, and a hash table for recording the information of repeated strings existing in the compression buffer. Their functions are as follows: The compression buffer is used to store the processed source text data and works in a first-in, first-out manner; the lookahead buffer is used to store the text data to be compressed, also using the first-in, first-out method; the hash table stores the position information of possible repeated strings in the compression buffer according to a certain hash algorithm.

[0036] The specific compression process is as follows:

[0037] 1. Initialize the compression buffer. If there is a dictionary, fill it with the dictionary; otherwise, initialize it to all zeros.

[0038] 2. Read data from the file to fill the lookahead buffer.

[0039] 3. Read 3 bytes of data from the lookahead buffer and calculate its corresponding hash value according to the hash algorithm.

[0040] 4. Search the hash table to determine whether there is a string with the same hash value.

[0041] 5. If there are strings with the same hash value, match the data in the look-ahead buffer with the data at the corresponding position in the compression buffer. If the match is successful, replace the repeated string with the (distance, length) information.

[0042] 6. If there are no strings with the same hash value, output these 3 characters as single characters, push them into the compression buffer, and update the hash list.

[0043] 7. Perform static Huffman coding on the output single characters or (distance, length).

[0044] 8. Read the processed length of data from the data to be compressed and update it to the tail of the look-ahead buffer.

[0045] 9. Repeat steps 3 to 8 until all data is compressed.

[0046] The above compression process uses the static Huffman coding Deflate compression algorithm. This algorithm requires the network to configure the compression cache size and dictionary in advance. The terminal can only compress according to the compression cache size required by the network, that is, the amount of prior information available during packet compression is fixed. However, the service data carried on the bearer is diverse, and the network may not be able to predict whether the service data is suitable for UDC compression and what kind of compression cache is appropriate. The above algorithm cannot be adaptively adjusted according to the characteristics of the service data, resulting in poor flexibility.

[0047] In 3GPP wireless systems, due to the preciousness of spectrum bandwidth, Time Division Duplex (TDD) systems are widely deployed, and the number of subframes or slots generally used for uplink transmission is much less than that for downlink, that is, the uplink bandwidth is much smaller than the downlink bandwidth. Even in Frequency Division Duplex systems, due to factors such as terminal power limitations, the uplink transmission bandwidth is also much lower than the downlink transmission bandwidth. To improve data transmission capabilities and save wireless resource bandwidth, the terminal can perform UDC text compression on the transmitted data and decompress it on the network side. This disclosure proposes a high-speed parallel compression scheme for scenarios that require UDC compression of a large amount of high-speed data.

[0048] To solve the problems existing in the related art, this disclosure proposes an uplink data compression method. By determining whether the terminal needs to autonomously select the cache size based on the UDC configuration information sent by the network device, when the terminal needs to autonomously select the cache size, determine the target cache size according to the service characteristics, and perform compression based on the target cache size, and send the compressed IP packet to the network device, which can improve the data compression ratio and compression efficiency.

[0049] Figure 1 This is a schematic flowchart of an uplink data compression method provided by an embodiment of the present disclosure. As Figure 1 shown, this method can be executed by an electronic device. Optionally, this method can be executed by a terminal. This method may include the following steps.

[0050] Step 101: Receive the uplink data compression (UDC) configuration information sent by the network device.

[0051] In some embodiments, the UDC configuration information may include a first field, where the first field can be used to indicate whether the terminal autonomously selects the cache size.

[0052] In some embodiments, the first field can adopt the last spare field (spare1) of the cache size (bufferSize) configuration item in the UDC configuration to indicate whether the terminal autonomously selects the cache size. Optionally, when this field is "auto", the terminal can autonomously select the cache size, such as adopting a cache size of 2KB, adopting a cache size of 4KB, adopting a cache size of 8KB, etc.

[0053] In some embodiments, the terminal can configure parameters related to compression based on the UDC configuration information to facilitate subsequent compression of data.

[0054] Step 102: When the first field indicates that the terminal autonomously selects the cache size, determine the target cache size for compressing multiple IP packets of the current service according to the characteristics of the current service.

[0055] In some embodiments, when the first field indicates that the terminal autonomously selects the cache size, that is, when the first field is "auto", the terminal can identify the service characteristics and determine the target cache size.

[0056] Step 103: Compress multiple IP packets of the current service with the target cache size to obtain multiple compressed IP packets.

[0057] In some embodiments, a service may have multiple IP packets. Based on the above target cache size, multiple IP packets of the same service can be compressed. After a service switch, the old target cache size may not be suitable for the new service, so it is necessary to re-determine the corresponding target cache size.

[0058] Step 104: Send multiple compressed IP packets to the network device.

[0059] In some embodiments, the header of each compressed IP packet may include a second field, and the second field can be used to identify the target cache size.

[0060] In some embodiments, the second field may be two reserved bits of the UDC header. Optionally, when the value of the second field is 0, it may indicate that the terminal does not adopt the independently selected target cache size; when the value of the second field is 1, it may indicate that the terminal adopts a target cache size of 2 KB; when the value of the second field is 2, it may indicate that the terminal adopts a target cache size of 4 KB; when the value of the second field is 3, it may indicate that the terminal adopts a target cache size of 8 KB.

[0061] In some embodiments, the header of the compressed IP packet may further include at least one of a third field, a fourth field, and a fifth field. The third field may indicate whether the IP packet is compressed. Optionally, the third field may be the FU field. When it is 0, it indicates that no compression is performed. When it is 1, it indicates that compression is performed. The fourth field may indicate whether a compression cache reset is performed before the IP packet is compressed. Optionally, the fourth field may be FR. When it is 0, it indicates that no reset is performed. When it is 1, it indicates that a reset is performed. The fifth field may indicate the compression cache check information before the IP packet is compressed. Optionally, the fifth field may be Checksum.

[0062] In some embodiments, during the transmission of the IP data packet, a packet loss problem may occur due to poor radio circuit quality. At this time, due to the lack of packet information, the network device will be out of sync with the information of the terminal. At this time, the network device may have a decompression failure problem. At this time, the network device will send a decompression failure feedback to the terminal. The feedback information may instruct the terminal to clear the compression cache. After the terminal clears the compression cache, it re-determines the target cache size. At this time, the terminal is synchronized with the base station information. Therefore, when the terminal receives the decompression failure feedback sent by the network, it can set the fourth field to 1 and reset the compression cache.

[0063] In some embodiments, when the terminal switches the cache size, for example, when changing the type of data transmitted, it cannot continue to use the previous target cache size. At this time, the fourth field can be set to 1 to reset the compression cache.

[0064] In summary, in the above embodiments of the present application, the terminal determines the target cache size based on the service characteristics when independently selecting the cache size, compresses the IP packet based on the target cache size, and sends the compressed IP packet to the network device, which can achieve obtaining a more appropriate compression cache size using prior information, improving the data compression rate and compression speed. The terminal can also independently control when to switch the compression cache size, reduce the RRC configuration signaling interaction with the network device, reduce the delay of switching different-sized compression caches, and save wireless bandwidth resources.

[0065] Figure 2The flowchart of an uplink data compression method provided by an embodiment of the present disclosure. As Figure 2 shown, based on Figure 1 the embodiment shown, this embodiment specifically describes step 102 above. The method may include the following steps.

[0066] Step 201, the application processor of the terminal determines the characteristics of the current service.

[0067] In some embodiments, the terminal may include an application processor and a baseband processor.

[0068] In some embodiments, the characteristics of the service may be related to the data of the current service. For example, when compressing multiple IP packets of the same service, the first packet contains information ABC, and the second packet also contains ABC, which is data correlation.

[0069] In some embodiments, the characteristics of the service may be related to the service type of the current service. For example, for services with service types of text and image, there will be differences in the target caches used.

[0070] In some embodiments, the characteristics of the service may be preset after statistics on multiple services. For example, the commonly used target cache size for text data, etc. The service characteristics may also include other characteristics related to the target cache size. In this regard, the present disclosure is not limited.

[0071] Step 202, the application processor of the terminal sends the characteristics of the current service to the baseband processor of the terminal.

[0072] In some embodiments, the application processor of the terminal may mark the characteristics of the current service in the data packet of the current service and send it to the baseband processor of the terminal. Alternatively, the application processor of the terminal may also send the characteristics of the current service to the baseband processor of the terminal through an AT (Attention) instruction.

[0073] Step 203, the baseband processor of the terminal determines the target cache size according to the characteristics of the current service.

[0074] In some embodiments, the baseband processor may determine the target cache size based on different service characteristics. For example, it may be determined according to the characteristics of data correlation. That is, when compressing multiple IP packets of the same service, the first IP packet can be compressed first, and the compressed first IP packet is stored in the compression cache. When continuing to compress the second IP packet, the distance and length of the first IP packet can be used as prior information for compression. For example, if the first packet is 1000 bits and contains three pieces of information A, B, and C, at this time its distance is 1000 and its length is 3. When the second packet also contains A, B, and C, it can be compressed based on the compression cache size of the first packet. When compressing the third IP packet, the target cache size can be determined based on the previously two compressed IP packets. Optionally, when there are more repeated information, a smaller compression cache size can be used.

[0075] For another example, the baseband processor of the terminal may determine the target cache size based on the service type characteristics. For example, for text data, only a 2KB compression cache size may be used, while for voice data and image data, a 4KB compression cache size may be used.

[0076] In summary, in the above embodiments of the present application, by identifying the service characteristics and determining the target cache size based on the service characteristics, it is possible to determine the target cache size using prior information, obtain a better compression ratio, improve the data compression efficiency and data transmission efficiency, and the dynamic determination of the target cache size can make the compression switching more flexible and save wireless bandwidth resources.

[0077] Figure 3 It is a schematic flow chart of an uplink data compression method provided by an embodiment of the present disclosure. As Figure 3 shown, based on Figure 2 the embodiment shown, this embodiment specifically describes the above step 103. The method may include the following steps.

[0078] Step 301, the baseband processor of the terminal splits the data packet of the current service into multiple IP packets.

[0079] In some embodiments, for the convenience of data compression and transmission, the data packet of the same service can be split into multiple IP packets.

[0080] Step 302, using a cache with the target cache size, compress the multiple IP packets to obtain multiple compressed IP packets.

[0081] In some embodiments, based on the target cache size obtained in the above steps, a corresponding cache can be selected to compress each IP packet to obtain multiple compressed IP packets, and the compressed IP packets are stored in the compression cache.

[0082] In summary, in the above embodiments of the present application, by splitting service data packets to obtain multiple IP packets, it is convenient for the terminal to determine the target cache size based on the characteristics of data correlation, and compressing the multiple IP packets based on the target cache size can achieve a better compression ratio and improve the data transmission speed and compression speed.

[0083] Figure 4 FIG. is a schematic flowchart of an uplink data compression method provided by an embodiment of the present disclosure. As Figure 4 shown, this method can be executed by an electronic device. Optionally, this method can be executed by a network device. The method may include the following steps.

[0084] Step 401: Send uplink data compression (UDC) configuration information to the terminal.

[0085] In some embodiments, the UDC configuration information may include a first field, and the first field is used to indicate whether the terminal autonomously selects the cache size.

[0086] In some embodiments, when the first field indicates that the terminal does not autonomously select the cache size, the target cache size can be directly sent to the terminal through the UDC configuration information, and the terminal can perform compression based on the target cache size configured by the UDC configuration information.

[0087] Step 402: Receive multiple compressed IP packets sent by the terminal.

[0088] In some embodiments, the network device may receive multiple compressed IP packets sent by the terminal. The header of each compressed IP packet includes a second field, and the second field is used to identify the target cache size. The target cache size is determined by the terminal according to the characteristics of the current service. The multiple compressed IP packets are obtained by the terminal compressing multiple IP packets of the current service with the target cache size.

[0089] In some embodiments, the header of the compressed IP packet may further include at least one of a third field, a fourth field, and a fifth field. The specific contents of the third field, the fourth field, and the fifth field are the same as those described in step 104 and will not be elaborated here.

[0090] In summary, in the above embodiments of the present application, when the first field in the UDC configuration information sent by the network device indicates that the terminal autonomously selects the target cache size, a better compression ratio can be obtained; by receiving the compressed IP packets sent by the terminal, compressed data transmission can be achieved, and through the third field, the fourth field, and the fifth field carried by the IP packets, it is convenient for the network device to perform data decompression based on the above fields.

[0091] The technical solutions of the present disclosure will be further described in detail below in conjunction with specific application embodiments.

[0092] Figure 5 Flow diagram of a window adaptive UDC compression scheme provided by an embodiment of the present disclosure.

[0093] 1. First, the base station can enable the last redundant field (spare1) of the bufferSize field in the UDC configuration information in clause 36.331 or clause 38.331 of the 3GPP protocol. This field is used to indicate that the terminal can adaptively use a cache size of 2KB, 4KB, or 8KB.

[0094] 2. The base station can enable two reserved bits in the UDC Header in clause 36.323 or clause 38.323 of the 3GPP protocol. These two bits can be used to indicate the compression cache size used by the current terminal when compressing the message. The structure of the UDC configuration information is as Figure 6 shown. Among them Figure 6 FU is used to indicate whether the message has been compressed. 0 indicates uncompressed, and 1 indicates compressed; FR can be used to indicate whether the compression cache has been reset at the compression end before the message is compressed. 0 indicates not reset, and 1 indicates reset; when the bufferSize field is 0, it can be used to indicate that adaptive compression window is not adopted, 1 can indicate that a cache size of 2KB is adopted, 2 can indicate that a cache size of 4KB is adopted, and 3 can indicate that a cache size of 8KB is adopted; Checksum can indicate the compression cache check information before the message is compressed.

[0095] 3. Based on the above protocol modification, when both the network and the terminal support UDC compression with an adaptive compression cache size, the data transmission and interaction scheme as shown in Figure 5 can be carried out. In this scheme, the technical constraints for the terminal and the network are:

[0096] 1) When the terminal receives the UDC configuration information sent by the base station, where the identifier of the buffersize field is auto, the terminal can perform intelligent identification of the characteristics of the service data. This can be done on the AP processor side, where the AP processor is the above-mentioned application processor. The AP processor notifies the Modem side to switch the compression cache size through methods such as packet marking or AT (Attention) instructions. The Modem is the above-mentioned baseband processor. The above processing process is carried out inside the terminal.

[0097] 2) Each time the terminal switches the compression cache size, it must set the bit of the FR field to 1 (FR Bit = 1). This field can indicate to the network side to clear the old decompression cache when decompressing.

[0098] 3) When the network decompression side does not encounter decompression failure, it can accept the indication from the terminal to reset the decompression cache (i.e., FR) and perform the reset of the decompression cache.

[0099] In summary, in the above examples of the present disclosure, when the base station instructs the terminal to adaptively select the cache size, the terminal can determine the cache size based on the service characteristics, compress the IP packets based on the cache size, send the compressed IP packets to the base station, and when the base station fails to decompress, clear the decompression cache, so that the terminal is synchronized with the network device, which can improve the compression ratio and compression efficiency, make the data compression more flexible, and obtain better transmission efficiency.

[0100] Figure 7 FIG. 7 is a schematic structural diagram of a terminal 700 provided by an embodiment of the present disclosure. As Figure 7 shown, the terminal includes:

[0101] A first transceiver unit 710, configured to receive uplink data compression (UDC) configuration information sent by a network device, where the UDC configuration information includes a first field, and the first field is used to indicate whether the terminal autonomously selects the cache size; a determination unit 720, configured to determine a target cache size for compressing multiple IP packets of the current service according to the characteristics of the current service when the first field indicates that the terminal autonomously selects the cache size; a processing unit 730, configured to compress multiple IP packets of the current service with the target cache size to obtain multiple compressed IP packets; and a second transceiver unit 740, configured to send the multiple compressed IP packets to the network device, where the header of each compressed IP packet includes a second field, and the second field is used to identify the target cache size.

[0102] In some embodiments, the terminal 700 may further include an application processor, and the application processor may be configured to: determine the characteristics of the current service; mark the characteristics of the current service in the data packets of the current service and send them to the baseband processor of the terminal, or the application processor of the terminal sends the characteristics of the current service to the baseband processor of the terminal through an AT command.

[0103] In some embodiments, the terminal 700 may further include a baseband processor, and the baseband processor may be configured to: determine the target cache size according to the characteristics of the current service; and split the data packets of the current service into multiple IP packets.

[0104] In some embodiments, the processing unit 730 may further be configured to: use a buffer with the target cache size to compress multiple IP packets to obtain multiple compressed IP packets.

[0105] In some embodiments, the header of each compressed IP packet further includes at least one of a third field, a fourth field, and a fifth field, where the third field indicates whether the IP packet is compressed, the fourth field indicates whether a compression cache reset is performed before the IP packet is compressed, and the fifth field indicates the compression cache check information before the IP packet is compressed.

[0106] In some embodiments, the processing unit 730 may further be configured to: when the terminal receives a decompression failure feedback sent by the network, or when the terminal switches the cache size, set the fourth field to 1.

[0107] In summary, for the terminal proposed in the present disclosure, it determines whether the terminal can autonomously select the cache size by receiving the UDC configuration information. When the terminal can autonomously select the cache size, it determines the target cache size according to the service characteristics, compresses the IP packets according to the target cache size, and sends the compressed IP packets to the network device, which can achieve the adaptive compression of the IP packets, obtain a better compression ratio and compression efficiency by combining the prior information, and make the compression switching more flexible.

[0108] Figure 8 FIG. 800 is a schematic structural diagram of a network device provided in an embodiment of the present disclosure. As Figure 8 shown, the network device includes:

[0109] A first transceiver unit 810, configured to send uplink data compression UDC configuration information to the terminal, where the UDC configuration information includes a first field, and the first field is used to indicate whether the terminal autonomously selects the cache size; a second transceiver unit 820, configured to receive multiple compressed IP packets sent by the terminal, where the header of each compressed IP packet includes a second field, and the second field is used to identify the target cache size, and the target cache size is determined by the terminal according to the characteristics of the current service, and the multiple compressed IP packets are obtained by the terminal compressing multiple IP packets of the current service with the target cache size.

[0110] In some embodiments, the header of each compressed IP packet further includes at least one of a third field, a fourth field, and a fifth field, where the third field indicates whether the IP packet is compressed, the fourth field indicates whether a compression cache reset is performed before the IP packet is compressed, and the fifth field indicates the compression cache check information before the IP packet is compressed.

[0111] Figure 9 FIG. 900 is a schematic structural diagram of a communication system provided in an embodiment of the present disclosure. As Figure 9 shown, the communication system includes a terminal and a network device, where the terminal may be configured to execute the method described in the first aspect embodiment of the present disclosure, and the network device may be configured to execute the method described in the second aspect embodiment of the present disclosure.

[0112] In the above embodiments provided by the present application, the methods and devices provided by the embodiments of the present application are introduced. To implement the various functions in the methods provided by the above embodiments of the present application, an electronic device may include a hardware structure and software modules, and implement the above various functions in the form of a hardware structure, software modules, or a combination of a hardware structure and software modules. A certain function among the above various functions may be executed in the form of a hardware structure, software module, or a combination of a hardware structure and software module.

[0113] Figure 10 FIG. 4 is a block diagram of an electronic device 1000 for implementing the above method according to an exemplary embodiment. For example, the electronic device 1000 may be a mobile phone, a computer, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.

[0114] Referring to Figure 10 , the electronic device 1000 may include one or more of the following components: a processing component 1002, a memory 1004, a power component 1006, a multimedia component 1008, an audio component 1010, an input / output (I / O) interface 1012, a sensor component 1014, and a communication component 1016.

[0115] The processing component 1002 generally controls the overall operation of the electronic device 1000, such as operations associated with display, telephone calls, data communication, camera operations, and recording operations. The processing component 1002 may include one or more processors 1020 to execute instructions to complete all or part of the steps of the above method. In addition, the processing component 1002 may include one or more modules to facilitate the interaction between the processing component 1002 and other components. For example, the processing component 1002 may include a multimedia module to facilitate the interaction between the multimedia component 1008 and the processing component 1002.

[0116] The memory 1004 is configured to store various types of data to support the operation of the electronic device 1000. Examples of such data include instructions for any application or method operating on the electronic device 1000, contact data, phone book data, messages, pictures, videos, etc. The memory 1004 may 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 memory, flash memory, a magnetic disk, or an optical disk.

[0117] The power supply component 1006 provides power for various components of the electronic device 1000. The power supply component 1006 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the electronic device 1000.

[0118] The multimedia component 1008 includes a screen that provides an output interface between the electronic device 1000 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 can be implemented as a touch screen 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 can not only sense the boundaries of the touch or swipe actions, but also detect the duration and pressure associated with the touch or swipe operations. In some embodiments, the multimedia component 1008 includes a front camera and / or a rear camera. When the electronic device 1000 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera can receive external multimedia data. Each of the front camera and the rear camera can be a fixed optical lens system or have a focal length and optical zoom capabilities.

[0119] The audio component 1010 is configured to output and / or input audio signals. For example, the audio component 1010 includes a microphone (MIC) that is configured to receive external audio signals when the electronic device 1000 is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode. The received audio signals can be further stored in the memory 1004 or transmitted via the communication component 1016. In some embodiments, the audio component 1010 further includes a speaker for outputting audio signals.

[0120] The I / O interface 1012 provides an interface between the processing component 1002 and a peripheral interface module, and the peripheral interface module can be a keyboard, a click wheel, buttons, etc. These buttons can include, but are not limited to: a home button, a volume button, a power-on button, and a lock button.

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

[0122] The communication component 1016 is configured to facilitate communication between the electronic device 1000 and other devices in a wired or wireless manner. The electronic device 1000 can access a wireless network based on communication standards, such as WiFi, 2G or 3G, 4G LTE, 5G NR (New Radio), or a combination thereof. In an exemplary embodiment, the communication component 1016 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 1016 further includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.

[0123] In an exemplary embodiment, the electronic device 1000 can 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 for performing the above-described methods.

[0124] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as the memory 1004 including instructions, and the above instructions can be executed by the processor 1020 of the electronic device 1000 to complete the above-described methods. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device, etc.

[0125] Embodiments of the present disclosure also propose a non-transitory computer-readable storage medium storing computer instructions, where the computer instructions are used to cause a computer to execute the methods described in the above embodiments of the present disclosure.

[0126] Embodiments of the present disclosure also propose a computer program product, including a computer program, where the computer program, when executed by a processor, executes the methods described in the above embodiments of the present disclosure.

[0127] Figure 11 FIG. 1100 is a schematic structural diagram of a chip 1100 for implementing the above method according to an exemplary embodiment. Refer to Figure 11 , the chip 1100 includes a communication interface 1101 and at least one processor 1102. The communication interface 1101 is configured to receive signals input to the chip 1100 or signals output from the chip 1100, and the processor 1102 communicates with the communication interface 1101 and implements the methods described in the above embodiments of the present disclosure through logic circuits or by executing code instructions.

[0128] It should be noted that the terms "first", "second", etc. in the description, claims, and drawings of the present disclosure are used to distinguish similar objects and do not necessarily have to be used to describe a specific order or sequence. It should be understood that such data can be interchanged under appropriate circumstances so that the embodiments of the present disclosure described herein can be implemented in an order different from those illustrated or described herein. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. On the contrary, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.

[0129] In the description of this specification, the description with reference to terms such as "one embodiment", "some embodiments", "illustrative embodiments", "examples", "specific examples", or "some examples" means that the specific features, structures, materials, or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described can be combined in any one or more embodiments or examples in a suitable manner.

[0130] Any process or method description represented in a flowchart or otherwise described herein can be understood to represent a module, segment, or portion of code including one or more executable instructions for implementing a specific logical function or process. The scope of the preferred embodiments of the present invention includes additional implementations, where functions may be executed in a substantially simultaneous manner or in a reverse order according to the functions involved, rather than in the order shown or discussed, which should be understood by those skilled in the art to which the embodiments of the present invention pertain.

[0131] Logic and / or steps represented in a flowchart or otherwise described herein, for example, can be considered a sequenced list of executable instructions for implementing a logical function, and can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, a system including a processing module, or other systems that can fetch and execute instructions from the instruction execution system, apparatus, or device. For the purposes of this specification, a "computer-readable medium" can be any device that can contain, store, communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. More specific examples (non-exhaustive list) of the computer-readable medium include the following: an electrical connection (control method) having one or more wirings, a portable computer diskette (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber device, and a portable compact disc read-only memory (CDROM). Additionally, the computer-readable medium can even be paper or other suitable medium on which a program can be printed, as the program can be obtained electronically, for example, by optically scanning the paper or other medium, followed by editing, interpretation, or other suitable processing as necessary, and then stored in a computer memory.

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

[0133] Those of ordinary skill in the art can understand that all or part of the steps carried out in the methods of the above embodiments can be completed by instructing relevant hardware through a program. The program can be stored in a computer-readable storage medium. When the program is executed, it includes one or a combination of the steps of the method embodiments.

[0134] In addition, in each of the embodiments of the present invention, the functional units can be integrated into a processing module, or each unit can exist physically alone, or two or more units can be integrated into one module. The above integrated module can be implemented in the form of hardware or in the form of a software functional module. When the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. The storage medium mentioned above can be a read-only memory, a magnetic disk, an optical disk, etc.

[0135] Although the embodiments of the present invention have been shown and described above, it can be understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those of ordinary skill in the art can make changes, modifications, substitutions, and variations to the above embodiments within the scope of the present invention.

Claims

1. An uplink data compression method, characterized in that, the method is executed by a terminal, and the method includes: receiving uplink data compression UDC configuration information sent by a network device, where the UDC configuration information includes a first field, and the first field is used to indicate whether the terminal autonomously selects a cache size; when the first field indicates that the terminal autonomously selects a cache size, determining a target cache size for compressing multiple IP packets of the current service according to the characteristics of the current service; compressing the multiple IP packets of the current service with the target cache size to obtain multiple compressed IP packets; sending the multiple compressed IP packets to the network device, where the header of each compressed IP packet includes a second field, and the second field is used to identify the target cache size.

2. The method according to claim 1, characterized in that, when the first field indicates that the terminal autonomously selects a cache size, determining a target cache size for compressing multiple IP packets of the current service according to the characteristics of the current service includes: the application processor of the terminal determines the characteristics of the current service; the application processor of the terminal marks the characteristics of the current service in the data packets of the current service and sends them to the baseband processor of the terminal, or the application processor of the terminal sends the characteristics of the current service to the baseband processor of the terminal through an AT command; the baseband processor of the terminal determines the target cache size according to the characteristics of the current service.

3. The method according to claim 2, characterized in that, compressing the multiple IP packets of the current service with the target cache size to obtain multiple compressed IP packets includes: the baseband processor of the terminal splits the data packets of the current service into the multiple IP packets; using a buffer with the target cache size to compress the multiple IP packets to obtain the multiple compressed IP packets.

4. The method according to any one of claims 1 to 3, characterized in that, the header of each compressed IP packet further includes at least one of a third field, a fourth field, and a fifth field, where the third field indicates whether the IP packet is compressed, the fourth field indicates whether a compression cache reset is performed before the IP packet is compressed, and the fifth field indicates the compression cache check information before the IP packet is compressed.

5. The method according to claim 4, characterized in that, the method further includes: when the terminal receives a decompression failure feedback sent by the network, or when the terminal switches the cache size, setting the fourth field to 1.

6. An uplink data compression method, characterized in that, the method is executed by a network device, and the method includes: sending uplink data compression UDC configuration information to a terminal, where the UDC configuration information includes a first field, and the first field is used to indicate whether the terminal autonomously selects a cache size; Receive multiple compressed IP packets sent by the terminal, where the header of each compressed IP packet includes a second field for identifying a target cache size, and the target cache size is determined by the terminal according to the characteristics of the current service. The multiple compressed IP packets are obtained by the terminal compressing multiple IP packets of the current service with the target cache size.

7. The method according to claim 6, wherein, the header of each compressed IP packet further includes at least one of a third field, a fourth field, and a fifth field. The third field indicates whether the IP packet is compressed, the fourth field indicates whether a compression cache reset is performed before the IP packet is compressed, and the fifth field indicates the compression cache check information before the IP packet is compressed.

8. A terminal, wherein, the terminal includes: a first transceiver unit configured to receive uplink data compression (UDC) configuration information sent by a network device, where the UDC configuration information includes a first field for indicating whether the terminal autonomously selects a cache size; a determination unit configured to, when the first field indicates that the terminal autonomously selects a cache size, determine a target cache size for compressing multiple IP packets of the current service according to the characteristics of the current service; a processing unit configured to compress the multiple IP packets of the current service with the target cache size to obtain multiple compressed IP packets; a second transceiver unit configured to send the multiple compressed IP packets to the network device, where the header of each compressed IP packet includes a second field for identifying the target cache size.

9. A network device, wherein, the network device includes: a first transceiver unit configured to send uplink data compression (UDC) configuration information to a terminal, where the UDC configuration information includes a first field for indicating whether the terminal autonomously selects a cache size; a second transceiver unit configured to receive multiple compressed IP packets sent by the terminal, where the header of each compressed IP packet includes a second field for identifying a target cache size, and the target cache size is determined by the terminal according to the characteristics of the current service. The multiple compressed IP packets are obtained by the terminal compressing multiple IP packets of the current service with the target cache size.

10. A non-transitory computer-readable storage medium storing computer instructions, wherein, the computer instructions are used to cause the computer to execute the method according to any one of claims 1-7.