CN115707134A - Data processing method, device and storage medium - Google Patents

Data processing method, device and storage medium Download PDF

Info

Publication number
CN115707134A
CN115707134A CN202110915613.8A CN202110915613A CN115707134A CN 115707134 A CN115707134 A CN 115707134A CN 202110915613 A CN202110915613 A CN 202110915613A CN 115707134 A CN115707134 A CN 115707134A
Authority
CN
China
Prior art keywords
pdu
pdu data
data packets
packets
data packet
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110915613.8A
Other languages
Chinese (zh)
Inventor
程岳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Datang Mobile Communications Equipment Co Ltd
Original Assignee
Datang Mobile Communications Equipment Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Datang Mobile Communications Equipment Co Ltd filed Critical Datang Mobile Communications Equipment Co Ltd
Priority to CN202110915613.8A priority Critical patent/CN115707134A/en
Publication of CN115707134A publication Critical patent/CN115707134A/en
Pending legal-status Critical Current

Links

Images

Abstract

The disclosure provides a data processing method, a data processing device and a storage medium, and relates to the technical field of communication. The specific implementation scheme is as follows: in the process of processing a plurality of received Protocol Data Units (PDU), when the count value of the PDU is not equal to RX DELIV, the PDU data packets are analyzed, the obtained PDU data packets with the same context identifier CID are grouped, the information sequence number MSN value of the current group obtained by analyzing the PDU data packets is aimed at to determine that the sequence numbers of the PDU data packets in the current group are not out of order, and the PDU data packets are sent to a ROHC (robust header compression) module to obtain decompressed data.

Description

Data processing method, device and storage medium
Technical Field
The present disclosure relates to the field of communications technologies, and in particular, to a data processing method and apparatus, and a storage medium.
Background
Currently, in a fifth Generation Mobile Communication technology (5 g) network, for frequently transmitted short Data Transmission Control Protocol/Internet Protocol (TCP/IP) Data or uplink feedback Data corresponding to a TCP/IP download service, an Acknowledgement Mode (AM) Mode Radio Bearer (RB) is generally adopted, and TCP/IP Header Compression is started in a Packet Data Convergence Protocol (PDCP) layer to improve air interface Transmission efficiency, and when a Protocol Data Unit (PDU) received discontinuously is received by the PDCP layer, if the PDU needs to be decompressed, the PDU needs to be sequentially delivered to a Robust Header Compression (ROHC) module of the PDCP layer.
In the related art, when a PDCP protocol layer receives a compressed PDU, if the PDCP layer is out of order, the existing scheme directly puts the current PDU into a receive buffer to wait for reordering, and decompresses the compressed data packet after reordering. However, this approach easily results in that the receiving end cannot timely receive and decompress the data packet, and once decompressing multiple PDUs delivered in sequence after reordering easily results in a short time load increase of the device.
Disclosure of Invention
The disclosure provides a data processing method, a data processing device and a storage medium.
According to an aspect of the present disclosure, there is provided a data processing method, including: acquiring a plurality of Protocol Data Unit (PDU) data packets received currently; for each PDU data packet, under the condition that the count value of the PDU data packet is not equal to a receiving delivery RX DELIV, analyzing the PDU data packet to obtain a context identifier CID and an information sequence number MSN value corresponding to the PDU data packet, wherein the RX DELIV is used for representing the count value of a first PDU data packet which is not sent to a robust header compression RoHC module before a packet data convergence protocol PDCP layer; dividing the PDU data packets with the same CID into one group according to the CID of each PDU data packet to obtain a plurality of groups of PDU data packets; aiming at a current group of PDU data packets in the plurality of groups of PDU data packets, determining that the sequence numbers of the PDU data packets in the current group of PDU data packets are not out of order according to the MSN value of the PDU data packets in the current group of PDU data packets; and sending the PDU data packet to a ROHC module for ROHC compression to obtain data of the PDU data packet decompressed by the RoHC module.
In a possible implementation manner, the determining, according to the MSN value of the PDU packets in the current group of PDU packets, that the sequence numbers of the PDU packets in the current group of PDU packets are not out of order includes: acquiring a target CID corresponding to the current group of PDU data packets; acquiring an MSN value range corresponding to the target CID and a window length of a WLSB based on the least significant bit of the window; determining a maximum count value according to the count value corresponding to each PDU data packet in the current group of PDU data packets; determining the packet loss number of the current group of PDU data packets according to the number of the current group of PDU data packets and the maximum count value; if the packet loss number is smaller than the window length of the WLSB, judging whether the MSN value of the PDU data packets in the current group of PDU data packets is continuous within the MSN value range; and if the MSN value is continuous in the designated MSN value range, determining that the sequence numbers of the PDU data packets in the current group of PDU data packets are not out of order.
In one possible implementation, the method further includes: and if the sequence numbers of the PDU data packets in the current group of PDU data packets are out of order, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
In one possible implementation, before storing the PDU packets in the current set of PDU packets in a receive buffer, the method further includes: judging whether a PDU data packet corresponding to the target CID exists in the receiving cache; and if the current group of PDU data packets does not exist, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
In one possible implementation, the method further includes: if yes, determining the MSN value of the PDU data packet in the receiving buffer memory, and the MSN value of the PDU data packet in the current group of PDU data packets is continuous; acquiring a PDU data packet corresponding to the target CID from the receiving buffer; adding the acquired PDU data packets into the current group of PDU data packets; and reordering each PDU data packet in the added current group of PDU data packets according to the MSN value of each PDU data packet in the added current group of PDU data packets, and sending the reordered PDU data packets to the RoHC module.
According to another aspect of the present disclosure, there is provided a data processing apparatus comprising a memory, a transceiver, a processor: a memory for storing a computer program; a transceiver for transceiving data under the control of the processor; a processor for reading the computer program in the memory and performing the following operations: acquiring a plurality of Protocol Data Unit (PDU) data packets received currently; for each PDU data packet, under the condition that the count value of the PDU data packet is not equal to a receiving delivery RX DELIV, analyzing the PDU data packet to obtain a context identifier CID and an information sequence number MSN value corresponding to the PDU data packet, wherein the RX DELIV is used for representing the count value of a first PDU data packet which is not sent to a robust header compression RoHC module before a packet data convergence protocol PDCP layer; dividing the PDU data packets with the same CID into a group according to the CID of each PDU data packet to obtain a plurality of groups of PDU data packets; aiming at a current group of PDU data packets in the plurality of groups of PDU data packets, determining that the sequence numbers of the PDU data packets in the current group of PDU data packets are not out of order according to the MSN value of the PDU data packets in the current group of PDU data packets; and sending the PDU data packet to a ROHC module for ROHC head compression to obtain data obtained after the ROHC module decompresses the PDU data packet.
In a possible implementation manner, the determining, according to the MSN value of the PDU packets in the current group of PDU packets, that the sequence numbers of the PDU packets in the current group of PDU packets are not out of order includes: acquiring a target CID corresponding to the current group of PDU data packets; acquiring an MSN value range corresponding to the target CID and a window length of a WLSB based on the least significant bit of the window; determining a maximum count value according to the count value corresponding to each PDU data packet in the current group of PDU data packets; determining the packet loss number of the current group of PDU data packets according to the number of the current group of PDU data packets and the maximum count value; if the packet loss number is smaller than the window length of the WLSB, judging whether the MSN value of the PDU data packets in the current group of PDU data packets is continuous within the MSN value range; and if the MSN value is continuous in the designated MSN value range, determining that the sequence numbers of the PDU data packets in the current group of PDU data packets are not out of order.
In one possible implementation, the processor is further configured to perform the following operations: and if the sequence numbers of the PDU data packets in the current group of PDU data packets are out of order, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
In one possible implementation, the processor is further configured to perform the following operations: judging whether a PDU data packet corresponding to the target CID exists in the receiving cache; and if the current group of PDU data packets does not exist, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
In one possible implementation, the processor is further configured to perform the following operations: if yes, determining the MSN value of the PDU data packet in the receiving buffer, and the MSN value of the PDU data packet in the current group of PDU data packets is continuous; acquiring a PDU data packet corresponding to the target CID from the receiving buffer; adding the acquired PDU data packets into the current group of PDU data packets; and reordering each PDU data packet in the added current group of PDU data packets according to the MSN value of each PDU data packet in the added current group of PDU data packets, and sending the reordered PDU data packets to the RoHC module.
According to another aspect of the present disclosure, there is provided a data processing apparatus including: the device comprises an acquisition unit, a receiving unit and a processing unit, wherein the acquisition unit is used for acquiring a plurality of Protocol Data Unit (PDU) data packets received currently; the analysis unit is used for analyzing the PDU data packet under the condition that the count value of the PDU data packet is not equal to the receiving delivery RX DELIV, so as to obtain a context identifier CID and an information sequence number MSN value corresponding to the PDU data packet, wherein the RX DELIV is used for indicating the count value of a first PDU data packet which is not sent to a robust header compression RoHC unit before a packet data convergence protocol PDCP layer; the grouping unit is used for grouping the PDU data packets with the same CID into one group according to the CID of each PDU data packet so as to obtain a plurality of groups of PDU data packets; a determining unit, configured to determine, for a current group of PDU packets in the multiple groups of PDU packets, according to an MSN value of a PDU packet in the current group of PDU packets, that sequence numbers of PDU packets in the current group of PDU packets are not out of order; a sending unit, configured to send the PDU data packet to a RoHC unit, to obtain data obtained by decompressing the PDU data packet by the RoHC unit
According to another aspect of the present disclosure, there is provided a processor-readable storage medium storing a computer program for causing a processor to execute a data processing apparatus method.
According to another aspect of the present disclosure, a computer program product is provided, comprising a computer program which, when executed by a processor, implements a data processing method.
The present disclosure has the following technical effects:
the utility model provides a data processing method, in the process of processing a plurality of protocol data unit PDU that receive, for each protocol data unit PDU, under the condition that the count value of this PDU data packet is unequal with RX DELIV, analyze this PDU data packet, so as to obtain the context identifier CID and the message sequence number MSN value that this PDU data packet corresponds to, and according to the MSN value that each PDU data packet corresponds, group the PDU data packet that CID is the same, and according to the PDU data packet MSN value in the present group, confirm that the sequence number of the PDU data packet in the present group is not out of order, and send this PDU data packet to the ROHC module of robust head compression, so as to obtain the data after decompressing, therefore, in the process of PDU data packet decompressing, in PDU data packet out of order, and identical PDU data packet out of order, need not wait until to decompress PDU data packet that the reordering corresponds to, thus has reduced the processing and transmission delay of data packet, and the effective short-time processing load of decompression equipment that reduces.
It should be understood that the statements in this section do not necessarily identify key or critical features of the embodiments of the present disclosure, nor do they limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
Drawings
The drawings are included to provide a better understanding of the present solution and are not to be construed as limiting the present disclosure. Wherein:
fig. 1 is a schematic flow chart diagram of a data processing method provided according to an embodiment of the present disclosure;
FIG. 2 is a schematic flow chart diagram of another data processing method provided in accordance with an embodiment of the present disclosure;
fig. 3 is a compressed PDU delivery decompression sequence diagram provided in accordance with an embodiment of the present disclosure;
FIG. 4 is a schematic flow chart diagram of another data processing method provided in accordance with an embodiment of the present disclosure;
FIG. 5 is a schematic structural diagram of a data processing apparatus provided in accordance with an embodiment of the present disclosure;
fig. 6 is a schematic structural diagram of another data processing apparatus provided in an embodiment of the present disclosure.
Detailed Description
The technical solutions in the embodiments of the present disclosure will be clearly and completely described below with reference to the drawings in the embodiments of the present disclosure, and it is obvious that the described embodiments are only some embodiments of the present disclosure, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments disclosed herein without making any creative effort, shall fall within the protection scope of the present disclosure.
The term "and/or" in the embodiments of the present invention describes an association relationship of associated objects, and indicates that three relationships may exist, for example, a and/or B may indicate: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship.
The data processing method, apparatus, and storage medium of the present embodiment are described below with reference to the accompanying drawings.
It should be noted that the technical solution provided by the embodiment of the present disclosure may be applied to various systems, especially 5G systems. For example, suitable systems may be global system for mobile communications (GSM) systems, code Division Multiple Access (CDMA) systems, wideband Code Division Multiple Access (WCDMA) General Packet Radio Service (GPRS) systems, long Term Evolution (LTE) systems, LTE Frequency Division Duplex (FDD) systems, LTE Time Division Duplex (TDD) systems, long term evolution (long term evolution) systems, LTE-a systems, universal mobile systems (universal mobile telecommunications systems, UMTS), universal internet Access (world interoperability for microwave Access (WiMAX) systems, new Radio interface (NR) systems, etc. These various systems include terminal devices and network devices. The System may further include a core network portion, such as an Evolved Packet System (EPS), a 5G System (5 GS), and the like.
Fig. 1 is a schematic flow chart of a data processing method provided according to an embodiment of the present disclosure, and the data processing method is applied to a data processing apparatus.
As shown in fig. 1, the method comprises:
step 101, obtaining a plurality of protocol data unit PDU data packets received currently.
In some embodiments of the present disclosure, the PDU data includes information from an upper layer and additional information from an entity of a current layer, and after receiving a plurality of PDU packets, the current layer transfers the PDU packets to a next layer to complete transmission in each layer of the transmission system.
102, for each PDU packet, under the condition that a count value of the PDU packet is not equal to receive-delivery (RX DELIV), parsing the PDU packet to obtain a context identifier CID and a Message Sequence Number (MSN) value corresponding to the PDU packet, where the RX DELIV is used to indicate a count value of a first PDU packet that is not sent to a robust header compression RoHC module before a packet data convergence protocol PDCP layer.
In some embodiments of the present disclosure, after receiving a plurality of PDU packets, counting each PDU packet, comparing the count value of the PDU packet with the RX DELIV value, and in case that the count value and the RX DELIV value are not equal, indicating that the PDU packets are out of order, parsing the PDU packets to obtain the CID of each PDU packet and the MSN value of the PDU packet.
And 103, dividing the PDU data packets with the same CID into a group according to the CID of each PDU data packet to obtain a plurality of groups of PDU data packets.
And step 104, aiming at the current group of PDU data packets in the plurality of groups of PDU data packets, determining that the sequence numbers of the PDU data packets in the current group of PDU data packets are not out of order according to the MSN value of the PDU data packets in the current group of PDU data packets.
In some embodiments of the present disclosure, the MSN is the master sequence number of the current set of PDU packets, with a size of 16 bits, used to synchronize the packets between the compressor and decompressor. The value exists in a data packet sent to a decompressor by a compressor, an MSN value of 16 bits is randomly initialized by a sender in an initial updating data packet, and the minimum significant bits (wlsb) based on a window is adopted for coding in other data packets.
In some embodiments, one way of encoding based on the least significant bits wlsb of the window may be:
Figure BDA0003205485950000101
where p represents the negative maximum offset and (2 k-1) -p represents the positive maximum offset, p is typically set to-1 for packets whose expected sequence number is always incremented, the value of k is determined by the selected packet type on the compression side, and v _ ref is the reference value.
And 105, sending the PDU data packet to a ROHC module for ROHC compression to obtain data obtained by decompressing the PDU data packet by the RoHC module.
In some embodiments of the present disclosure, for the PDU data packets in the current group of PDU data packets without out-of-order sequence numbers, the PDU data packets are sent to the robe head compression RoHC module, so as to obtain data obtained after the RoHC module decompresses the PDU data packets.
In other embodiments, the data packets of the current set of PDUs may be placed in the receive buffer for reordering in the event that the sequence numbers of the PDU packets in the current set of PDU packets are determined to be out of order based on the MSN value.
The utility model provides a data processing method, in the process of processing a plurality of protocol data unit PDU that receive, for each protocol data unit PDU, under the condition that the count value of this PDU data packet is unequal with RX DELIV, analyze this PDU data packet, in order to obtain the context identifier CID and the message sequence number MSN value that this PDU data packet corresponds to, and according to the MSN value that each PDU data packet corresponds, group the PDU data packet that CID is the same, and according to the PDU data packet MSN value in the present group, confirm the sequence number of the PDU data packet in the present group is not out of order, and send this PDU data packet to the ROHC module of robust head compression, in order to obtain the data after decompressing, therefore, in the process of PDU data packet decompressing, in PDU data packet out of order, and identical PDU data packet out of order under the condition that CID is not out of order, can decompress PDU data packet that the same CID corresponds to the reordering, thus has reduced the processing and transmission delay of data packet, and the effective short-time processing load of decompression equipment is reduced.
Fig. 2 is a schematic flow chart diagram of another data processing method provided in accordance with an embodiment of the present disclosure.
Step 201, obtaining a plurality of protocol data unit PDU data packets received currently.
It should be noted that, as to the specific implementation manner of step 201, reference may be made to the relevant description in the foregoing embodiments.
Step 202, for each PDU packet, under the condition that the count value of the PDU packet is not equal to the receiving delivery RX DELIV, parsing the PDU packet to obtain a context identifier CID and an information sequence number MSN value corresponding to the PDU packet, where the RX DELIV is used to indicate the count value of the first PDU packet that is not sent to the robust header compression RoHC module before the packet data convergence protocol PDCP layer.
In some embodiments of the present disclosure, a wlsb coding method may be used to generate an MSN value of another packet according to an MSN value corresponding to the parsed PDU packet, and an exemplary embodiment is that, assuming that a reference value of the MSN of the current packet is 0x1000, the other packet is sequentially incremented, the reference value is 0x2000, and assuming that 0x200 bytes are incremented each time, at this time, the other packet may not appear during compression, and after receiving the packet, the decompressor may deduce a value of the other packet according to a least significant bit (lsb) value of the MSN in the packet. Assuming that the value of Lsb of the current packet MSN is 2, the value of MSN of the other packet is 0 × 2000+2 × 0 × 200.
And 203, dividing the PDU data packets with the same CID into a group according to the CID of each PDU data packet so as to obtain a plurality of groups of PDU data packets.
And step 204, acquiring a target CID corresponding to the current group of PDU data packets.
In some embodiments of the present disclosure, after the PDU packets are grouped to obtain a plurality of groups of PDU packets, the PDU packets may be traversed, and the currently traversed group of PDU packets is used as a current group of PDU packets, and a target CID corresponding to the current group of PDU packets is obtained.
In step 205, the MSN value range corresponding to the target CID and the window length of the window-based least significant bit WLSB are obtained.
And step 206, determining the maximum count value according to the count value corresponding to each PDU data packet in the current group of PDU data packets.
And step 207, determining the packet loss number of the current group of PDU data packets according to the number of the current group of PDU data packets and the maximum count value.
In a write embodiment of the present disclosure, the packet loss number of the PDU packets in the current group may be a difference between the maximum count value and the current group PDU packet number.
And step 208, if the packet loss number is smaller than the window length of the WLSB, judging whether the MSN value of the PDU data packets in the current group of PDU data packets is continuous within the MSN value range.
In some embodiments of the present disclosure, if the number of packet losses is greater than the window length of the WLSB, it may be that the group of PDU packets is not in the current group of PDU packets, and it cannot be determined whether the MSN value of the PDU packets in the current group of PDU packets is continuous within the MSN value range, and it is necessary to re-determine the current group of PDU packets until the number of packet losses is less than the window length of the WLSB, so as to determine whether the MSN value of the PDU packets in the current group of PDU packets is continuous within the MSN value range.
Step 209, if the MSN value is continuous within the specified MSN value range, it is determined that the sequence numbers of the PDU packets in the current set of PDU packets are not out of order.
In some embodiments of the present disclosure, after the PDU packets are grouped, for a group of PDU packets with the same CID, a current MSN value range is obtained, and a 16-bit MSN value is restored according to the wlsb algorithm, and the value range of the MSN value is combined to determine that the MSN value is continuous in the current group of MSN value range, thereby determining that the sequence numbers of the PDU packets in the current group of PDU packets are not out of order.
For example, assume that 9 PDUs are currently received, wherein the 9 PDUs correspond to a delivery compression sequence diagram, as shown in fig. 3.
Wherein, the horizontal axis represents the count value of the received PDCP PDU, the vertical axis represents the CID value corresponding to the received PDCP PDU, at this time, it is assumed that the PDU data packet with the 4 th CID value of 4 is not received (as shown in black) from the 9 received PDU data packets, at this time: RX _ REORD =4, and RX _reordis a count value corresponding to the missing PDU packet starting the reordering timer.
Based on the above example, if PDU 4 is not received, if it can be determined that PDU 5 with CID 3 and the MSN value corresponding to PDU 3 are consecutive, at this time, PDU 5 may be submitted to the ROHC module of PDCP for decompression, similarly, PDU6, PDU7, and PDU8 with CID 5, if it is determined that the MSN values of PDU6, PDU7, and PDU8 are consecutive, PDU6, PDU7, and PDU8 may be submitted to the ROHC module of PDCP for decompression, PDU9 with CID 7 may be submitted to the ROHC module of PDCP for decompression, there is no need to wait for the missing PDU 4 to arrive, thereby significantly reducing the processing and transmission delay of packets.
In other embodiments of the present disclosure, where the MSN value is determined to be discontinuous within the MSN value range of the current group of PDU packets, at this point, it may be determined that the sequence numbers of PDU packets in the current group of PDU packets are out of order.
Under the condition that the sequence number of the PDU data packets in the current PDU data packet group is determined to be out of order, if the PDU data packets corresponding to the target CID do not exist in the receiving buffer, the PDU data packets in the current PDU data packet group are stored in the receiving buffer, if the PDU data packets corresponding to the target CID exist in the receiving buffer, the MSN value of the PDU data packets in the receiving buffer is determined to be continuous with the MSN value of the PDU data packets in the current PDU data packet group, the PDU data packets corresponding to the target CID are obtained from the receiving buffer, the obtained PDU data packets are added into the current PDU data packet group, finally, the PDU data packets in the added current PDU data packet group are reordered according to the MSN value of each PDU data packet in the added current PDU data packet group, and the reordered PDU data packets are sent to the RoHC module.
And step 210, sending the PDU data packet to a ROHC module for ROHC head compression to obtain data obtained after the ROHC module decompresses the PDU data packet.
The utility model provides a data processing method, in the process of processing a plurality of received protocol data unit PDU, aiming at each protocol data unit PDU, under the condition that the counting value of the PDU data packet is not equal to RX DELIV, the PDU data packet is analyzed to obtain a context identifier CID and an information sequence number MSN value corresponding to the PDU data packet, and the PDU data packets with the same CID are grouped according to the MSN value corresponding to each PDU data packet, the packet loss number of the current group of PDU data packets is determined by obtaining the target CID corresponding to the current group of PDU data packets, the MSN value range corresponding to the target CID and the window length of the least significant bit WLSB based on the window, and combining the number of the current group of PDU data packets and the maximum counting value, if the compared packet loss number is smaller than the window length of the WLSB, the MSN value is determined to be continuous in the designated MSN value range, so that the fact that the sequence numbers of the PDU data packets in the current group of PDU data packets are not out of order is determined, the PDU data packets are sent to the ROHC module for compressing by the robust head to obtain decompressed data, therefore, in the process of decompressing the PDU data packets, the PDU data packets are out of order, and the PDU data packets with the same CID are not out of order, the PDU data packets corresponding to the same CID can be decompressed without waiting for reordering after reordering, so that the PDUs with the PDU data packets out of order but not out of CID order can be decompressed in advance, and a receiver can selectively decompress the data stream without waiting for reordering.
Based on the above embodiment, after receiving a compressed PDU data packet, a receiver directly performs ROHC decompression on the compressed PDU data packet under the condition that the PDU data packet is not out of order, further determines whether the same CID in the PDU data packet out of order is out of order by analyzing CID and MSN values of the compressed PDU data packet under the condition that the PDU data packet is out of order, if the CID is out of order, places the PDU data packet into a receiving buffer for reordering, and if the CID is the same and the PDU data packet is not out of order, does not need to wait for reordering, and directly decompresses the PDU data packet corresponding to the same CID, in summary, fig. 4 is a flow chart that when the PDU data packet is out of order and the PDU data packet with the same CID is not out of order, the PDU data packet corresponding to the same CID can be decompressed without waiting for reordering, as shown in fig. 4.
If the packet loss number of the PDCP packets is smaller than the MSN value range of the CID, the disorder judgment method is that the MSN value is continuous in the MSN value range.
Fig. 5 is a schematic structural diagram of a data processing apparatus provided according to an embodiment of the present disclosure.
As shown in fig. 5, the data processing apparatus may include a transceiver 500, a processor 510, and a memory 520, wherein:
a transceiver 500 for receiving and transmitting data under the control of a processor 510.
Wherein in fig. 5 the bus architecture may comprise any number of interconnected buses and bridges, with one or more processors, represented by processor 510, and various circuits, represented by memory 520, being linked together. The bus architecture may also link together various other circuits such as peripherals, voltage regulators, power management circuits, and the like, which are well known in the art, and therefore, will not be described any further herein. The bus interface provides an interface. The transceiver 500 may be a number of elements including a transmitter and a receiver that provide a means for communicating with various other apparatus over transmission media including wireless channels, wired channels, fiber optic cables, and the like.
As shown in fig. 5, the data processing apparatus may further include a user interface 530. For different user devices, the user interface 530 may also be an interface capable of externally connecting a desired device, including but not limited to a keypad, a display, a speaker, a microphone, a joystick, etc.
The processor 510 is responsible for managing the bus architecture and general processing, and the memory 520 may store data used by the processor 510 in performing operations.
Alternatively, the processor 510 may be a CPU (central processing unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a CPLD (Complex Programmable Logic Device), and the processor 510 may also adopt a multi-core architecture.
The processor 510, by calling the computer program stored in the memory 520, performs the following operations:
and acquiring a plurality of Protocol Data Unit (PDU) data packets received currently.
And for each PDU data packet, under the condition that the counting value of the PDU data packet is not equal to the receiving delivery RX DELIV, analyzing the PDU data packet to obtain a context identifier CID and an information sequence number MSN value corresponding to the PDU data packet, wherein the RX DELIV is used for indicating the counting value of a first PDU data packet which is not sent to a robust header compression RoHC module before a packet data convergence protocol PDCP layer.
And dividing the PDU data packets with the same CID into a group according to the CID of each PDU data packet to obtain a plurality of groups of PDU data packets.
And aiming at the current PDU data packet in the plurality of groups of PDU data packets, determining that the sequence number of the PDU data packet in the current PDU data packet is not out of order according to the MSN value of the PDU data packet in the current PDU data packet.
And sending the PDU data packet to a ROHC module for ROHC head compression to obtain data obtained after the ROHC module decompresses the PDU data packet.
In an embodiment of the present disclosure, determining that sequence numbers of PDU packets in a current set of PDU packets are not out of order according to an MSN value of the PDU packets in the current set of PDU packets includes:
and acquiring a target CID corresponding to the current group of PDU data packets.
A range of MSN values corresponding to the target CID and a window length of the window-based least significant bit WLSB are obtained.
And determining the maximum count value according to the count value corresponding to each PDU data packet in the current group of PDU data packets.
And determining the packet loss number of the current group of PDU data packets according to the number of the current group of PDU data packets and the maximum count value.
And if the packet loss number is less than the window length of the WLSB, judging whether the MSN value of the PDU data packets in the current group of PDU data packets is continuous within the MSN value range.
And if the MSN value is continuous within the designated MSN value range, determining that the sequence numbers of the PDU data packets in the current group of PDU data packets are not out of order.
In one embodiment of the present disclosure, processor 510 is further configured to perform the following operations:
and if the sequence numbers of the PDU data packets in the current group of PDU data packets are out of order, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
In one embodiment of the present disclosure, processor 510 is further configured to perform the following:
and judging whether the PDU data packet corresponding to the target CID exists in the receiving buffer.
If not, storing the PDU data packet in the current group of PDU data packets into a receiving buffer.
In one embodiment of the present disclosure, processor 510 is further configured to perform the following operations:
if the current group of PDU data packets exists, determining the MSN value of the PDU data packets in the receiving buffer, and continuing the MSN value of the PDU data packets in the current group of PDU data packets.
And acquiring the PDU data packet corresponding to the target CID from the receiving buffer.
And adding the acquired PDU data packets into the current group of PDU data packets.
And reordering each PDU data packet in the added current group of PDU data packets according to the MSN value of each PDU data packet in the added current group of PDU data packets, and sending the reordered PDU data packets to the RoHC module.
It should be noted that, the data processing apparatus provided in the embodiment of the present invention can implement all the method steps implemented by the foregoing method embodiment, and can achieve the same technical effect, and detailed descriptions of the same parts and beneficial effects as those of the method embodiment in this embodiment are not repeated herein.
Fig. 6 is a schematic structural diagram of another data processing apparatus provided in an embodiment of the present disclosure.
As shown in fig. 6, the data processing apparatus 60 may include:
an obtaining unit 601, configured to obtain a plurality of protocol data unit PDU packets currently received.
A parsing unit 602, configured to, for each PDU packet, parse the PDU packet to obtain a context identifier CID and an information sequence number MSN value corresponding to the PDU packet if a count value of the PDU packet is not equal to a receiving delivery RX DELIV, where the RX DELIV is used to indicate a count value of a first PDU packet that is not sent to a robust header compression RoHC unit before a packet data convergence protocol PDCP layer.
A grouping unit 603, configured to group PDU packets with the same CID into a group according to the CID of each PDU packet, so as to obtain multiple groups of PDU packets.
A determining unit 604, configured to determine, for a current group of PDU packets in the multiple groups of PDU packets, according to an MSN value of a PDU packet in the current group of PDU packets, that sequence numbers of PDU packets in the current group of PDU packets are not out of order.
And the sending unit 605 is configured to send the PDU data packet to the robust header compression RoHC unit, so as to obtain data obtained by decompressing the PDU data packet by the RoHC unit.
In an embodiment of the present disclosure, the determining unit 604 is specifically configured to: the method comprises the steps of obtaining a target CID corresponding to a current PDU data packet, obtaining a MSN value range corresponding to the target CID and a window length of a WLSB (least significant bit) based on a window, determining a maximum count value according to the count value corresponding to each PDU data packet in the current PDU data packet, determining the packet loss number of the current PDU data packet according to the number of the current PDU data packet and the maximum count value, judging whether the MSN value of the PDU data packet in the current PDU data packet is continuous in the MSN value range if the packet loss number is smaller than the window length of the WLSB, and determining that the sequence number of the PDU data packet in the current PDU data packet is not out of order if the MSN value is continuous in the designated MSN value range.
In an embodiment of the present disclosure, the determining unit 604 is specifically configured to: and if the sequence numbers of the PDU data packets in the current group of PDU data packets are out of order, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
In an embodiment of the present disclosure, the determining unit 604 is specifically configured to: and judging whether the PDU data packet corresponding to the target CID exists in the receiving buffer, and if not, storing the PDU data packet in the current group of PDU data packets into the receiving buffer.
In an embodiment of the present disclosure, the determining unit 604 is specifically configured to: if the current PDU data packet exists, determining the MSN value of the PDU data packet in the receiving buffer, wherein the MSN value is continuous with the MSN value of the PDU data packet in the current group of PDU data packets, obtaining the PDU data packet corresponding to the target CID from the receiving buffer, adding the obtained PDU data packet into the current group of PDU data packet, reordering each PDU data packet in the added current group of PDU data packet according to the MSN value of each PDU data packet in the added current group of PDU data packet, and sending the reordered PDU data packet to the RoHC module.
The utility model provides a data processing device, in the process of processing a plurality of protocol data unit PDU that receive, for each protocol data unit PDU, under the condition that the count value of this PDU data package is unequal with RX DELIV, analyze this PDU data package, so as to obtain the context identifier CID and the message sequence number MSN value that this PDU data package corresponds, and according to the MSN value that each PDU data package corresponds, group the PDU data package that CID is the same, and according to the PDU data package MSN value in the present group, confirm that the sequence number of the PDU data package in the present group is not out of order, and send this PDU data package to the robust head compression RoHC module, so as to obtain the data after decompressing, therefore, in the process of PDU data package, in PDU data package is out of order, and identical PDU data package is not out of order, need not wait until to decompress PDU data package that the reordering corresponds to the same CID, thereby the processing and transmission delay have been reduced effectively and have realized the short-time processing load of decompression equipment.
The method and the device are based on the same application concept, and because the principles of solving the problems of the method and the device are similar, the implementation of the device and the method can be mutually referred, and repeated parts are not repeated.
It should be noted that, the division of the units in the embodiment of the present disclosure is schematic, and is only one logic function division, and there may be another division manner in actual implementation. In addition, functional units in the embodiments of the present disclosure may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated unit, if implemented as a software functional unit and sold or used as a stand-alone product, may be stored in a processor readable storage medium. Based on such understanding, the technical solution of the present disclosure may be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for causing a computer device (which may be a personal computer, a server, or a network-side device, etc.) or a processor (processor) to execute all or part of the steps of the method according to the embodiments of the present disclosure. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
In another aspect, an embodiment of the present invention further provides a processor-readable storage medium, where a computer program is stored in the processor-readable storage medium, where the computer program is used to enable a processor to execute the data processing method shown in fig. 1 to 3 in this disclosure.
The processor-readable storage medium can be any available medium or data storage device that can be accessed by a processor, including but not limited to magnetic memory (e.g., floppy disk, hard disk, magnetic tape, magneto-optical disk (MO), etc.), optical memory (e.g., CD, DVD, BD, HVD, etc.), and semiconductor memory (e.g., ROM, EPROM, EEPROM, nonvolatile memory (NAND FLASH), solid State Disk (SSD)), etc.
As will be appreciated by one skilled in the art, embodiments of the present disclosure may be provided as a method, system, or computer program product. Accordingly, the present disclosure may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present disclosure may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present disclosure is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the disclosure. It will be understood that each flow and/or block of the flowchart illustrations and/or block diagrams, and combinations of flows and/or blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-executable instructions. These computer-executable instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These processor-executable instructions may also be stored in a processor-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the processor-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These processor-executable instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various changes and modifications can be made in the present disclosure without departing from the spirit and scope of the disclosure. Thus, if such modifications and variations of the present disclosure fall within the scope of the claims of the present disclosure and their equivalents, the present disclosure is intended to include such modifications and variations as well.

Claims (12)

1. A method of data processing, the method comprising:
acquiring a plurality of Protocol Data Unit (PDU) data packets received currently;
for each PDU data packet, under the condition that the count value of the PDU data packet is not equal to a receiving delivery RX DELIV, analyzing the PDU data packet to obtain a context identifier CID and an information sequence number MSN value corresponding to the PDU data packet, wherein the RX DELIV is used for representing the count value of a first PDU data packet which is not sent to a robust header compression RoHC module before a packet data convergence protocol PDCP layer;
dividing the PDU data packets with the same CID into one group according to the CID of each PDU data packet to obtain a plurality of groups of PDU data packets;
aiming at a current PDU data packet in the PDU data packets, determining that the sequence number of the PDU data packet in the current PDU data packet is not out of order according to the MSN value of the PDU data packet in the current PDU data packet;
and sending the PDU data packet to a ROHC module for ROHC compression to obtain data of the PDU data packet decompressed by the RoHC module.
2. The method of claim 1, wherein the determining that the sequence numbers of the PDU packets in the current set of PDU packets are not out of order based on the MSN value of the PDU packets in the current set of PDU packets comprises:
acquiring a target CID corresponding to the current group of PDU data packets;
acquiring an MSN value range corresponding to the target CID and a window length of a WLSB based on the least significant bit of the window;
determining a maximum count value according to the count value corresponding to each PDU data packet in the current group of PDU data packets;
determining the packet loss number of the current group of PDU data packets according to the number of the current group of PDU data packets and the maximum count value;
if the packet loss number is smaller than the window length of the WLSB, judging whether the MSN value of the PDU data packets in the current group of PDU data packets is continuous within the MSN value range;
and if the MSN value is continuous in the designated MSN value range, determining that the sequence numbers of the PDU data packets in the current group of PDU data packets are not out of order.
3. The method according to claim 1 or 2, characterized in that the method further comprises:
and if the sequence numbers of the PDU data packets in the current group of PDU data packets are out of order, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
4. The method of claim 3, wherein prior to said storing the PDU packets in the current set of PDU packets in a receive buffer, the method further comprises:
judging whether a PDU data packet corresponding to the target CID exists in the receiving cache;
and if the current group of PDU data packets does not exist, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
5. The method of claim 4, further comprising:
if yes, determining the MSN value of the PDU data packet in the receiving buffer, and the MSN value of the PDU data packet in the current group of PDU data packets is continuous;
acquiring a PDU data packet corresponding to the target CID from the receiving buffer;
adding the acquired PDU data packets into the current group of PDU data packets;
and reordering each PDU data packet in the added current group of PDU data packets according to the MSN value of each PDU data packet in the added current group of PDU data packets, and sending the reordered PDU data packets to the RoHC module.
6. A data processing apparatus, comprising a memory, a transceiver, a processor:
a memory for storing a computer program; a transceiver for transceiving data under control of the processor; a processor for reading the computer program in the memory and performing the following operations:
acquiring a plurality of Protocol Data Unit (PDU) data packets received currently;
for each PDU data packet, under the condition that the count value of the PDU data packet is not equal to a receiving delivery RX DELIV, analyzing the PDU data packet to obtain a context identifier CID and an information sequence number MSN value corresponding to the PDU data packet, wherein the RX DELIV is used for representing the count value of a first PDU data packet which is not sent to a robust header compression RoHC module before a packet data convergence protocol PDCP layer;
dividing the PDU data packets with the same CID into one group according to the CID of each PDU data packet to obtain a plurality of groups of PDU data packets;
aiming at a current PDU data packet in the PDU data packets, determining that the sequence number of the PDU data packet in the current PDU data packet is not out of order according to the MSN value of the PDU data packet in the current PDU data packet;
and sending the PDU data packet to a ROHC module for ROHC head compression to obtain data obtained after the ROHC module decompresses the PDU data packet.
7. The apparatus of claim 6, wherein the determining that the sequence numbers of the PDU packets in the current set of PDU packets are not out of order based on the MSN value of the PDU packets in the current set of PDU packets comprises:
acquiring a target CID corresponding to the current group of PDU data packets;
acquiring the MSN value range corresponding to the target CID and the window length of the WLSB based on the least significant bit of the window;
determining a maximum count value according to the count value corresponding to each PDU data packet in the current group of PDU data packets;
determining the packet loss number of the current group of PDU data packets according to the number of the current group of PDU data packets and the maximum count value;
if the packet loss number is smaller than the window length of the WLSB, judging whether the MSN value of the PDU data packets in the current group of PDU data packets is continuous within the MSN value range;
and if the MSN value is continuous in the designated MSN value range, determining that the sequence numbers of the PDU data packets in the current group of PDU data packets are not out of order.
8. The apparatus of claim 6 or 7, wherein the processor is further configured to:
and if the sequence numbers of the PDU data packets in the current group of PDU data packets are out of order, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
9. The apparatus of claim 8, wherein the processor is further configured to:
judging whether a PDU data packet corresponding to the target CID exists in the receiving cache;
and if the current group of PDU data packets does not exist, storing the PDU data packets in the current group of PDU data packets into a receiving buffer.
10. The apparatus of claim 9, wherein the processor is further configured to:
if yes, determining the MSN value of the PDU data packet in the receiving buffer, and the MSN value of the PDU data packet in the current group of PDU data packets is continuous;
acquiring a PDU data packet corresponding to the target CID from the receiving buffer;
adding the acquired PDU data packets into the current group of PDU data packets;
and reordering each PDU data packet in the added current group of PDU data packets according to the MSN value of each PDU data packet in the added current group of PDU data packets, and sending the reordered PDU data packets to the RoHC module.
11. A data processing apparatus, characterized by comprising:
the device comprises an acquisition unit, a transmission unit and a receiving unit, wherein the acquisition unit is used for acquiring a plurality of Protocol Data Unit (PDU) data packets received currently;
the analysis unit is used for analyzing the PDU data packets to obtain context identifiers CID and information sequence number MSN values corresponding to the PDU data packets under the condition that the count value of each PDU data packet is not equal to a receiving delivery RX DELIV (delay of arrival) value, wherein the RX DELIV is used for indicating the count value of a first PDU data packet which is not sent to a ROHC (robust header compression) unit before a packet data convergence protocol PDCP (packet data convergence protocol) layer;
the grouping unit is used for grouping the PDU data packets with the same CID into one group according to the CID of each PDU data packet so as to obtain a plurality of groups of PDU data packets;
a determining unit, configured to determine, for a current group of PDU packets in the multiple groups of PDU packets, according to an MSN value of a PDU packet in the current group of PDU packets, that sequence numbers of PDU packets in the current group of PDU packets are not out of order;
and the sending unit is used for sending the PDU data packet to a ROHC (robust head compression) unit to obtain data obtained by decompressing the PDU data packet by the RoHC unit.
12. A processor-readable storage medium, characterized in that the processor-readable storage medium stores a computer program for causing a processor to perform the method of any one of claims 1 to 5.
CN202110915613.8A 2021-08-10 2021-08-10 Data processing method, device and storage medium Pending CN115707134A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110915613.8A CN115707134A (en) 2021-08-10 2021-08-10 Data processing method, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110915613.8A CN115707134A (en) 2021-08-10 2021-08-10 Data processing method, device and storage medium

Publications (1)

Publication Number Publication Date
CN115707134A true CN115707134A (en) 2023-02-17

Family

ID=85179671

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110915613.8A Pending CN115707134A (en) 2021-08-10 2021-08-10 Data processing method, device and storage medium

Country Status (1)

Country Link
CN (1) CN115707134A (en)

Similar Documents

Publication Publication Date Title
CN107094142B (en) Method and device for decompressing and compressing uplink data
CN107360591B (en) Method and equipment for reporting buffer status report
US8560552B2 (en) Method for lossless data reduction of redundant patterns
US8718098B2 (en) Method for compressing and decompressing time stamp and equipment thereof
CN109756536A (en) A kind of method, apparatus and system of data transmission
CN107404734B (en) Data sending method, device and system
KR20090029665A (en) Effective data block transmission method using a header indicator
US10817460B2 (en) RDMA data sending and receiving methods, electronic device, and readable storage medium
CN108347468B (en) Method and equipment for data synchronization
RU2762801C2 (en) Method, equipment and system for data transmission and device
CN108632326B (en) Method and device for transmitting data by protocol data unit
US20040233878A1 (en) Wireless network receiver and a method for the wireless network receiver to check the integrity of a received MSDU
CN115707134A (en) Data processing method, device and storage medium
CN116594948A (en) USB data transmission method, device, computer equipment and storage medium
CN107800653B (en) Message compression method and device
CN108012289B (en) PDU (protocol data Unit) sending method and device and PDU receiving method and device
CN106471785A (en) A kind of virtual carrier sensing method and device
EP3860209B1 (en) Data transmission method and device
CN109672707B (en) Data transmission method and device and computer storage medium
CN112217839A (en) Message processing method, device, equipment and storage medium
CN110704361A (en) RDMA (remote direct memory Access) data transmitting and receiving method, electronic equipment and readable storage medium
WO2020156427A1 (en) Processing method and communication device
WO2023098881A1 (en) Transmission method for location auxiliary data, and terminal, location server, and storage medium
CN112597082B (en) Bus data transmission method and electronic equipment
CN114362885B (en) Data transmission method, communication system, equipment and medium of Internet of things

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination