WO2018218416A1 - 用户面数据处理方法、相关设备及系统 - Google Patents
用户面数据处理方法、相关设备及系统 Download PDFInfo
- Publication number
- WO2018218416A1 WO2018218416A1 PCT/CN2017/086306 CN2017086306W WO2018218416A1 WO 2018218416 A1 WO2018218416 A1 WO 2018218416A1 CN 2017086306 W CN2017086306 W CN 2017086306W WO 2018218416 A1 WO2018218416 A1 WO 2018218416A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- pdcp
- pdu
- mac
- user plane
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W80/00—Wireless network protocols or protocol adaptations to wireless operation
- H04W80/02—Data link layer protocols
Definitions
- the present invention relates to the field of communications, and in particular, to a user plane data processing method, related device and system.
- LTE Long-term evolution
- 4G fourth-generation mobile communication technology
- 3GPP 3rd Generation Partnership Project
- UMTS Telecommunications System
- 5G fifth-generation mobile communication technology
- 5G is not a single wireless technology, but a fusion of existing wireless communication technologies.
- the 5G communication system is also called "Beyond4G Network" or "post-LTE system (Post). LTE system)".
- 5G communication has higher requirements on communication rate and delay, including: (1) The transmission rate of 5G should be increased by 10-100 times on the basis of 4G, the experience rate can reach 0.1 to 1 Gbps, and the peak rate can reach 10 Gbps; 2) The delay is as low as 1/10 or 1/5 of 4G, reaching the millisecond level and so on.
- the EU officially launched the 5G research project.
- the project is divided into eight groups to conduct in-depth research on scene requirements, air interface technology, multi-antenna technology, network architecture, spectrum analysis, simulation and test platform.
- the company founded the 5G Innovation Center, is committed to the future user needs, 5G network key performance indicators, core technology research and evaluation verification; in South Korea, the Korean Ministry of Science and Technology, ICT and future planning department jointly promoted the establishment of the Korean "5GFo-rum" It specializes in promoting its domestic 5G progress; China's Ministry of Industry and Information Technology, the National Development and Reform Commission and the Ministry of Science and Technology jointly established the IMT-2020 Promotion Group as a platform for 5G work, aiming to promote China's independent research and development of 5G technology to become an international standard.
- the embodiment of the invention provides a user plane data processing method, related device and system, to improve communication delay and improve communication rate.
- an embodiment of the present invention provides a user plane data processing method, which is applied to a terminal side, and the method includes:
- the specific layer of the terminal acquires user plane data to be transmitted; the specific layer is preset on the MAC layer of the terminal, the specific layer includes one or more protocol layers; and the MAC layer of the terminal estimates the current transmission opportunity Obtain base station authorization The number of bytes, the estimated authorization value is obtained, the estimated authorization value is used to represent the size of the current transmission opportunity authorized by the base station for the MAC layer estimation; the specific layer of the terminal processes the user plane data based on the estimated authorization value, and obtains the pre-group Packet data; the MAC layer of the terminal concatenates the pre-group packet data into a MAC PDU based on the estimated authorization value, the MAC PDU being a first group of packet data, wherein, in the MAC PDU, a MAC sub- The header and the corresponding user plane data occupy a continuous storage space; the MAC layer of the terminal processes the first group of packet data based on the obtained actual authorization value to obtain a second group of packet data, and the second group of packets The data packet length of the data
- a user plane data processing method provided by an embodiment of the present invention is implemented, and the terminal can decouple the related processing of the group packet in time sequence, and the terminal can complete a part of the group packet related processing before receiving the authorization, thereby reducing the received authorization.
- the pressure of the processing pulse is equalized, the processing pressure of the user surface is equalized, which is beneficial to the improvement of the delay and the user experience.
- the MAC layer of the terminal estimates the number of bytes authorized by the base station for the current transmission opportunity, including:
- the MAC layer of the terminal estimates the number of bytes authorized by the base station for the current transmission opportunity according to one or more of the authorization log, the user plane data buffer amount, the channel quality indication CQI, the quality of service QoS parameter, and the retransmission task amount.
- the authorization log is a secondary authorization record of the base station saved by the terminal, and the authorization log records the actual authorized value of the base station and the user plane data buffer amount, the channel quality indicator CQI, the quality of service QoS parameter, and the weight in the authorization log. The correspondence of the amount of tasks.
- the MAC layer estimates based on the corresponding relationship according to a certain algorithm (for example, an average value algorithm), thereby obtaining an estimation result (ie, estimating an authorization value) for the current resource transmission;
- a certain algorithm for example, an average value algorithm
- the function of the MAC layer scheduler is given, and the MAC layer may perform estimation based on current user plane data buffer amount, channel quality indication CQI, quality of service QoS parameter, retransmission task amount, and the like, which affect the authorization of the base station, thereby Get the estimated authorization value.
- the MAC layer of the terminal processes the MAC PDU based on the obtained actual authorization value, and the data packet length of the processed MAC PDU matches the actual authorization value, including:
- the MAC layer of the terminal calculates a first difference between the actual authorized value and a data packet length of the MAC PDU.
- the MAC layer of the terminal adds data of a first length to the MAC PDU, so that the data packet length of the processed MAC PDU matches the actual authorized value, and the size of the first length of data and the first One difference is equal;
- the first length of data is padding data if the first difference is less than a first preset threshold
- the first difference is greater than the first preset threshold, determine whether the first difference matches the size of the next PDCP PDU; if the match is the first length, the data of the first length is the next PDCP PDU. If the data is not matched, the data of the first length is the next PDCP PDU segment; the MAC layer of the terminal adds data of the first length to the MAC PDU, specifically: the MAC layer of the terminal The MAC PDU cascades the next PDCP PDU or the next PDCP PDU segment;
- the terminal may immediately perform uplink transmission on the MAC PDU, in which case the terminal implements a near zero delay group packet;
- the MAC layer of the terminal Calculating a second difference between a data packet length of the MAC PDU and an actual authorization value, where a MAC layer of the terminal reduces data of a second length to the MAC PDU, so that data of the processed MAC PDU is obtained.
- the packet length matches the actual grant value, wherein the second length of data is a MAC PDU segment, and the MAC PDU segment is obtained by segmenting the MAC PDU, the size of the MAC PDU segment Equal to the second difference.
- the MAC sub-header may not increase the segmentation indication and the segmentation offset indication to avoid secondary processing of the data packet; if the MAC PDU segment is not the first segment, Then, the segment header indication and the segmentation offset indication need to be added in the MAC sub-header to facilitate subsequent identification and reassembly of the data segment in the base station.
- the data of the first length/the data of the second length represents data having a certain number of bytes (or the number of bits), for example, the data of the first length is 8 bytes of data; likewise, the MAC PDU
- the packet length indicates a certain number of bytes of MAC PDU (packet). For example, the packet length of the MAC PDU is 60 bytes, indicating that the MAC PDU has 60 bytes of data.
- the implementation of the embodiment of the present invention can effectively compress the packet processing amount after the terminal receives the actual authorization, reduce the processing pulse of receiving the actual authorization, and equalize the processing pressure of the user plane data, which is beneficial to the delay improvement and improvement. user experience.
- the specific layer of the terminal processes the user plane data based on the estimated authorization value to obtain pre-package data, including:
- the PDCP layer of the terminal processes a certain amount of PDU SDUs in the user plane data to be transmitted based on the estimated authorization value, and the difference between the size of the certain amount of PDU SDUs and the estimated authorized total amount in the N TTIs
- the value is less than the first preset threshold, and the estimated total authorized amount in each TTI is the product of the estimated authorization value and the number of authorizations.
- the PDCP layer triggers a new pre-processing when a scheduling period is completed, so that the MAC estimation grant is always available to complete the pre-processed data packet when the packet is started.
- the specific layer is a PDCP layer.
- the embodiment of the present invention provides a first user plane protocol architecture, including at least a PDCP layer and a MAC layer.
- the PDCP layer has functions of centralized header, segmentation, reassembly, reordering, retransmission, status report, packet loss report, and the like, wherein the PDCP layer is concentrated.
- the operation includes adding a PDCP header and a MAC subheader without adding an RLC header; the MAC has functions of cascading, estimating authorization, grouping/unpacking, segmentation detection, and removing MAC subheaders. Since the header function is deployed centrally to the PDCP layer, the MAC layer will skip the header processing (ie, no header is added).
- the first user plane protocol architecture does not have an RLC layer, that is, the PDCP layer directly sends data to the MAC layer; in a specific embodiment, the first user plane protocol architecture There is an RLC layer in the middle, but the RLC layer does not make any changes to the data, and is only used to transparently transmit data of the PDCP layer to the MAC layer.
- the PDCP layer of the terminal acquires user plane data to be transmitted; the PDCP layer of the terminal processes the user plane data based on the estimated authorization value, and obtains a MAC SDU.
- the PDCP layer controls the user plane data, and the PDCP layer does not trigger all user plane data to enter the processing queue, but presses the preset.
- the rules trigger some of the data into the processing queue for sequential processing.
- the preset rule includes prioritizing user face data and triggering a user plane with a higher priority.
- the data enters the processing queue, and the PDCP SN is preferentially allocated to the user plane data with higher priority, and the subsequent processing steps are entered.
- the PDCP layer of the terminal performs a centralized prefixing on the PDCP SDU, including: adding a PDCP header and a MAC header to each PDCP SDU, where the PDCP header includes the PDCP SN. Since the required layer header information (PDCP header and MAC header) can be added to the user plane data when the PDCP layer is encrypted, these can be processed together with the encryption hardening acceleration, which reduces the processor overhead.
- the MAC subheader, the PDCP header, and the corresponding PDCP SDU occupy a continuous storage space.
- the layer header information (the MAC sub-header and the PDCP header) of the user plane are continuously stored with the data (PDCP SDU), so that the number of nodes when the subsequent initiation of the authorization to initiate the group packet can be greatly reduced, and the group is promoted.
- Package efficiency the number of nodes when the subsequent initiation of the authorization to initiate the group packet can be greatly reduced, and the group is promoted.
- the PDCP layer has a buffer, and the buffer is further configured to store the user plane data; in an acknowledge mode (AM), the terminal receives the feedback status of the base station.
- the PDCP layer of the terminal retransmits the user plane data indicated by the status report to the base station, where the status report includes a packet data convergence protocol negative response sequence number PDCP NACK SN, and the PDCP NACK SN includes a first PDCP NACK SN, a second PDCP NACK SN; the first PDCP NACK SN indicates that all PDCP PDUs indicated by a packet data convergence protocol sequence number preceding the PDCP SN have been received; the second PDCP NACK SN indicates The PDCP PDU indicated by the PDCP SN is not received, and the PDCP PDUs indicated by the packet data convergence protocol sequence number preceding the PDCP SN are received except for the PDCP PDU indicated by each PDCP NACK SN.
- AM acknowledge mode
- the specific layer includes a PDCP layer and an RLC layer;
- the embodiment of the present invention provides a second user plane protocol architecture, where the second user plane protocol architecture includes at least a PDCP layer, RLC layer and MAC layer, PDCP has centralized header function, centralized header operation includes adding PDCP header, RLC header and MAC subheader; RLC layer has segmentation, reassembly, reordering, retransmission, status report, packet loss report and The function of removing the RLC subheader is removed.
- the RLC layer Since the header function is deployed to the PDCP layer, the RLC layer skips the header processing; the MAC has the functions of cascading, estimating authorization, grouping/unpacking, segmentation detection, and removing the MAC subheader. Since the header function is deployed centrally to the PDCP layer, the MAC layer will also skip the header processing.
- the PDCP layer of the terminal acquires user plane data to be transmitted; the PDCP layer of the terminal processes the user plane data based on the estimated authorization value to obtain a PDCP PDU; the RLC layer allocates an RLC SN to the PDCP PDU, and The RLC SN is written to the RLC header to obtain an RLC PDU, and the RLC PDU (also referred to as a MAC SDU) is sent to the MAC layer for subsequent processing.
- the RLC PDU also referred to as a MAC SDU
- the MAC sub-header, the RLC header, the PDCP header, and the corresponding PDCP SDU occupy a continuous storage space.
- the layer header information (the MAC sub-header, the RLC header, and the PDCP header) of the user plane are continuously stored with the data (PDCP SDU), so that the number of nodes when the subsequent authorization is initiated to start the group packet can be greatly reduced. Improve the efficiency of the package.
- the RLC layer further has a buffer, where the buffer is used to store the user plane data
- the RLC layer of the terminal retransmits the user plane data indicated by the status report to the base station, where the status report includes a packet data convergence protocol.
- Negative acknowledgement sequence number RLC NACK SN the RLC NACK SN includes a first RLC NACK SN, a second RLC NACK SN, the first RLC NACK SN indicating an RLC PDU indicated by a packet data convergence protocol sequence number before the RLC SN All Received, the second RLC NACK SN indicates that the RLC PDU indicated by the RLC SN is not received, and is included in the RLC PDU indicated by the radio link control protocol sequence number before the RLC SN, except for each RLC NACK SN. In addition to the indicated RLC PDUs, other RLC PDUs have been received.
- the PDCP layer of the terminal may be used for timeout packet loss.
- the PDCP layer After receiving the user plane data, the PDCP layer puts the user plane data in a buffer and allocates a PDCP SN for the user plane data. If the user plane data packet loss occurs, the PDCP layer generates a packet loss report accordingly.
- the PDCP control PDU is also referred to as a PDCP control PDU in the embodiment of the present invention, and is used to notify the receiving and receiving of the user plane data that packet loss occurs, and the base station is prevented from waiting for the PDCP PDU.
- the PDCP control PDU includes: a first PDCP SN and a second PDCP SN, wherein the first PDCP SN and the second PDCP SN are used together to indicate that the sequence number is located in the first PDCP SN and the second PDCP SN A packet loss occurred between the PDCP PDUs.
- the PDCP control PDU further includes common bits, where the common bits are used to indicate a high common level of both the first PDCP SN and the second PDCP SN.
- the PDCP layer extracts the high-order common bits between the respective sequence numbers SN in the PDCP Control PDU to construct common bits. That is to say, the common bits can be determined according to the interval representation fields of all the packet loss ranges ⁇ Start_SN ⁇ End_SN ⁇ .
- the common bits in the PDCP control PDU packet format can effectively reduce the length of the PDCP control PDU, speed up the packet speed, and improve the transmission efficiency.
- the logical channel number configured on the dual connection remains the same regardless of which logical channel the data is from.
- the MAC subheaders are the same, and the MAC subheader can be determined in advance.
- the channel information on the MAC sub-header in the MAC PDU remains the same. Therefore, the data can be pre-concentrated in the PDCP layer to increase the header information for the data, thereby speeding up the packet speed and improving the data transmission efficiency.
- the embodiment of the present invention provides another user plane data processing method, which is applied to a base station side, and the method includes:
- the MAC layer of the base station receives the MAC PDU sent by the terminal, where the MAC sub-header and the corresponding user plane data occupy a continuous storage space; the MAC layer of the base station unpacks the MAC PDU to obtain the MAC SDU, and sending the MAC SDU to a specific layer; the specific layer is located above the MAC layer, the specific layer includes one or more protocol layers; the specific layer reorders and reassembles the MAC SDU, The reordered and reassembled MAC SDUs are sent to the upper layer or the network.
- the specific layer is a PDCP layer, that is, the first user plane protocol architecture provided by the present invention includes at least a PDCP layer and a MAC layer.
- the MAC layer receives the MAC PDU sent by the terminal, unpacks the MAC PDU, removes the MAC sub-header in the MAC PDU, obtains the MAC SDU, and sends the MAC SDU to the PDCP layer;
- the layer removes the PDCP header in the MAC SDU, obtains the PDCP SDU, reorders the PDCP SDU, reassembles the reordered PDCP SDU, and sends the reassembled PDCP SDU to the network.
- the PDCP layer of the base station when the reordering timer expires, the PDCP layer of the base station sends a PDCP status PDU (also referred to as a status report in this embodiment) to the terminal, where the PDCP status PDU is used. Which is indicated / Which PDCP PDU or PDCP PDU segment is not received by the base station.
- a PDCP status PDU also referred to as a status report in this embodiment
- the PDCP status PDU is constructed before the base station obtains the actual authorization value.
- the base station intercepts the PDCP status PDU based on the actual grant value and discards the portion that exceeds the actual grant value.
- the PDCP status PDU includes a packet data convergence protocol negative acknowledgement sequence number PDCP NACK SN
- the PDCP NACK SN includes a first PDCP NACK SN, a second PDCP NACK SN
- the first PDCP NACK SN indicates that the PDCP SN is ranked in the PDCP SN
- the PDCP PDU indicated by the previous packet data convergence protocol sequence number has been received
- the second PDCP NACK SN indicates that the PDCP PDU indicated by the PDCP SN is not received
- the packet data convergence protocol sequence before the PDCP SN is received.
- the PDCP PDU indicated by the number in addition to the PDCP PDU indicated by each PDCP NACK SN, other PDCP PDUs have been received.
- the base station can quickly construct a corresponding status report feedback to the sender when the data gap is detected and the sender needs to perform data retransmission, so that the sender can implement the data as soon as possible. pass. Since the retransmission mechanism is an important guarantee for data integrity in the data transmission process, implementing the embodiments of the present invention can speed up the data transmission rate, reduce the communication delay, avoid unnecessary waiting in the feedback process, and ensure that the data can be transmitted quickly and completely. .
- the MAC layer In the first user plane protocol architecture, in the unpacking, the MAC layer unpacks based on the length of the MAC PDU. When the unpacking exceeds the length, the MAC layer terminates the unpacking and may directly be at the last. Incomplete data is discarded. After the unpacking, in the case that the MAC layer detects that the size of the MAC sub-header is greater than the size of the MAC sub-header corresponding to the PDCP PDU, the MAC layer of the base station determines that the MAC sub-header corresponds to the PDCP PDU as a PDCP PDU.
- the base station after receiving the MAC PDU, the base station unpacks and obtains data such as a MAC control element and a PDCP PDU.
- the MAC layer retrieves the MAC sub-header to determine whether the data length indicated by the MAC sub-header exceeds the length of the PDCP PDU:
- the PDCP PDU is a complete PDCP PDU, or the length of the last segment existing in the PDCP PDU is matched;
- the PDCP PDU is a PDCP PDU segment.
- whether the PDCP header of the PDCP PDU is retrieved has a segment indication and a segment offset indication. If there is a segmentation indication and a segmentation offset indication, determining whether the PDCP PDU is a PDCP PDU intermediate segment or a last segment based on the segmentation indication and the segmentation offset indication; if there is no segmentation indication and a segmentation offset indication Then, the PDCP PDU is determined to be the first segment of the PDCP PDU.
- the specific layer includes a PDCP layer and an RLC layer; that is, the second user plane protocol architecture provided by the embodiment of the present invention includes at least a PDCP layer, an RLC layer, and a MAC layer. .
- the MAC layer receives the MAC PDU sent by the terminal, unpacks the MAC PDU, removes the MAC sub-header to obtain the MAC SDU, and sends the MAC SDU (also referred to as RLC PDU) to the RLC layer.
- the RLC layer removes the RLC header, obtains the RLC SDU, reorders the RLC SDU, reassembles the reordered RLC SDU, and sends the reassembled RLC SDU to the PDCP layer;
- the RLC layer of the base station when the reordering timer expires, the RLC layer of the base station sends an RLC status PDU (also referred to as a status report in this embodiment) to the terminal, where the RLC status PDU is used. Indicates which RLC PDU or RLC PDU segment is not received by the base station.
- the RLC status PDU is constructed before the base station obtains an actual authorization value; in the RLC status PDU In the process of constructing a MAC PDU, if the data packet length of the MAC PDU is greater than the actual authorized value, the base station intercepts the RLC status PDU based on the actual authorization value, and discards the part that exceeds the actual authorized value. .
- the RLC status PDU includes a packet data convergence protocol negative acknowledgement sequence number RLC NACK SN
- the RLC NACK SN includes a first RLC NACK SN, a second RLC NACK SN
- the first RLC NACK SN indicates that the RLC SN is ranked in the RLC SN
- the RLC PDU indicated by the previous packet data convergence protocol sequence number has been received
- the second PDCP NACK SN indicates that the RLC PDU indicated by the RLC SN is not received
- the radio link control protocol preceded by the RLC SN In the RLC PDU indicated by the sequence number, in addition to the RLC PDU indicated by each RLC NACK SN, other RLC PDUs have been received.
- the base station can quickly construct a corresponding status report feedback to the sender when the data gap is detected and the sender needs to perform data retransmission, so that the sender can implement the data as soon as possible. pass. Since the retransmission mechanism is an important guarantee for data integrity in the data transmission process, implementing the embodiments of the present invention can speed up the data transmission rate, reduce the communication delay, avoid unnecessary waiting in the feedback process, and ensure that the data can be transmitted quickly and completely. .
- the MAC layer of the base station detects that the MAC subhead indicates a larger size than the MAC subheader.
- the MAC layer of the base station determines that the MAC sub-head corresponding RLC PDU is the RLC PDU first segment, and the RLC PDU first segment is used to implement reassembly of the RLC SDU.
- the PDCP layer of the base station after receiving the PDCP control PDU sent by the terminal, abandons waiting for the PDCP control.
- an embodiment of the present invention provides a terminal, including: a transceiver, a memory, and a processor coupled to the memory.
- the transceiver, memory and processor can be connected by bus or other means.
- the transceiver is used to transmit data to the outside or to receive data from the outside.
- the memory is for storing program code, and the processor is configured to call and run the program code stored in the memory to perform the method described in the first aspect, including:
- the specific layer is preset on a MAC layer of the terminal, the specific layer includes one or more protocol layers; and the current transmission opportunity is obtained to obtain a word authorized by the base station a number of sections, an estimated authorization value is obtained, the estimated authorization value is used to identify a size of a current transmission opportunity authorized by the base station of the MAC layer to be estimated; and the pre-package data is obtained by processing the user plane data based on the estimated authorization value; Estimating the authorization value to concatenate the pre-packet data into a MAC PDU, wherein in the MAC PDU, the MAC sub-header and the corresponding user plane data occupy a continuous storage space; the MAC layer through the terminal is based on Acquiring the actual authorized value to process the MAC PDU, and the data packet length of the processed MAC PDU matches the actual authorized value, where the actual authorized value is used to represent the size of the current transmission opportunity authorized by the base station;
- the device transmits the processed
- the processor performs, by using a MAC layer of the terminal, to estimate a current transmission opportunity to obtain a number of bytes authorized by the base station, including:
- the processor performs, by the MAC layer of the terminal, estimating, according to one or more ones of an authorization log, a user plane data buffer amount, a channel quality indicator CQI, a quality of service QoS parameter, and a retransmission task quantity, obtaining a base station authorization.
- the processor performs processing, by the MAC layer of the terminal, the MAC PDU according to the obtained actual authorization value, and the data packet length of the processed MAC PDU matches the actual Authorization values, including:
- the processor performs a first difference calculation of the actual authorization value and a data packet length of the MAC PDU by using a MAC layer of the terminal.
- the MAC layer of the terminal adds data of a first length to the MAC PDU, so that a data packet length of the processed MAC PDU matches the actual authorized value, and the size of the first length of data is The first differences are equal.
- the processor executes through the terminal Adding, by the MAC layer, the data of the first length to the MAC PDU, where: the processor performs adding padding bit data to the MAC PDU by using a MAC layer of the terminal;
- the processor performs the step of adding the data of the first length to the MAC PDU by using the MAC layer of the terminal, specifically: the processing The router performs cascading of the next PDCP PDU or the next PDCP PDU segment by the MAC PDU of the terminal by the MAC layer of the terminal.
- the processor performs processing, by the MAC layer of the terminal, the MAC PDU according to the obtained actual authorization value, and the data packet length of the processed MAC PDU matches the actual
- the authorization value includes: in a case that the actual authorization value is smaller than a data packet length of the MAC PDU, the processor performs calculation of a data packet length and an actual authorization of the MAC PDU by using a MAC layer of the terminal a second difference of values, the MAC layer of the terminal reducing data of the second length to the MAC PDU, so that the data packet length of the processed MAC PDU matches the actual authorized value, where the The data of the two lengths is a MAC PDU segment, and the MAC PDU segment is obtained by segmenting the MAC PDU, and the size of the MAC PDU segment is equal to the second difference.
- the specific layer is a PDCP layer
- the processor performs the user plane data to be transmitted through the specific layer of the terminal, where the processor performs the user plane data to be transmitted through the PDCP layer of the terminal;
- the processor performs processing on the user plane data based on the estimated authorization value by using a specific layer of the terminal to obtain pre-package data, where the processor performs the PDCP layer based on the estimated authorization value processing by the processor.
- the user plane data is described, and the MAC SDU is obtained.
- the processor is configured to process the user plane data based on the estimated authorization value by using a specific layer of the terminal, and obtain pre-package data, including:
- the processor performs processing, by the PDCP layer of the terminal, a certain amount of PDU SDUs in the user plane data to be transmitted, based on the estimated authorization value, the size of the certain amount of PDU SDUs and N TTIs
- the estimated difference of the total authorized amount is less than the first preset threshold, and the estimated authorized total amount in each TTI is a product of the estimated authorized value and the authorized number of times, and the authorized number of times is obtained by the MAC layer to obtain the actual authorization of the base station in one TTI. frequency.
- the processor performs processing, by the PDCP layer of the terminal, the user plane data based on an estimated authorization value, including: the processor performing PDCP layer identification by using the terminal
- the priority of the user plane data is preferentially assigned to the PDCP SN for the user plane data with higher priority.
- the processor performs processing, by the PDCP layer of the terminal, the user plane data based on an estimated authorization value, including: the processor performing a PDCP layer pair through the terminal Each PDCP SDU of the certain quantity of PDCP SDUs respectively adds a PDCP header and a MAC header, and the PDCP header includes the PDCP SN; wherein the user plane data is a PDCP SDU.
- the MAC subheader and the corresponding user plane data occupy a contiguous storage space, specifically: in the MAC PDU, the MAC subheader The PDCP header and the corresponding PDCP SDU occupy a continuous storage space.
- the pass processor is further configured to store the user plane data by using the PDCP layer;
- the transceiver is further configured to receive a first status report that is sent by the base station;
- the processor performs retransmission of user plane data indicated by the first status report to a base station by using a PDCP layer of the terminal,
- the first status report includes a packet data convergence protocol negative acknowledgement sequence number PDCP NACK SN
- the PDCP NACK SN includes a first PDCP NACK SN, a second PDCP NACK SN
- the first PDCP NACK SN indicates that the PDCP is ranked in the PDCP
- the PDCP PDU indicated by the packet data convergence protocol sequence number before the SN has been received
- the second PDCP NACK SN indicates that the PDCP PDU indicated by the PDCP SN is not received, and the packet data convergence protocol before the PDCP SN is received.
- the PDCP PDU indicated by the serial number all PDCP PDUs have been received except for the PDCP PDU indicated by each PDCP NACK SN.
- the specific layer is a PDCP layer and an RLC layer
- the processor performs the user plane data to be transmitted through the specific layer of the terminal, where the processor performs the user plane data to be transmitted through the PDCP layer of the terminal;
- the processor performing processing of the user plane data based on the estimated authorization value by the specific layer of the terminal, the processor comprising: performing, by the PDCP layer of the terminal, each PDCP of the certain quantity of PDCP SDUs
- the SDU adds a PDCP header, an RLC header, and a MAC header, respectively;
- the PDCP header includes a PDCP SN;
- the user plane data is a PDCP SDU; and the processor performs writing the RLC SN to the RLC header through the RLC layer.
- the MAC subheader and the corresponding user plane data occupy a contiguous storage space, specifically: in the MAC PDU, the MAC subheader The RLC header, the PDCP header, and the corresponding PDCP SDU occupy a contiguous storage space.
- the processor is further configured to store the user plane data by using the RLC layer;
- the transceiver is further configured to receive a second status report that is sent by the base station;
- the processor performs retransmission of the user plane data indicated by the second status report to the base station by using the RLC layer of the terminal,
- the second status report includes a packet data convergence protocol negative acknowledgement sequence number RLC NACK SN
- the RLC NACK SN includes a first RLC NACK SN, a second RLC NACK SN
- the first RLC NACK SN indicates that the RLC is ranked in the RLC
- the second RLC NACK SN indicates that the RLC PDU indicated by the RLC SN is not received, and the radio link control preceded by the RLC SN
- the RLC PDU indicated by the protocol sequence number in addition to the RLC PDU indicated by each RLC NACK SN, other RLC PDUs have been received.
- the processor is further configured to: generate, by using a PDCP layer of the terminal, a PDCP control PDU, where the PDCP layer of the terminal is time-outd, and PDCP control PDU pass The transceiver sends to the base station, and the PDCP control PDU is used to indicate to the base station which user plane data is lost.
- the PDCP control PDU includes: a first PDCP SN and a second PDCP SN, wherein the first PDCP SN and the second PDCP SN are used together to indicate that the sequence number is located in the first PDCP SN and the second PDCP SN A packet loss occurred between the PDCP PDUs.
- the PDCP Control PDU further includes a common bit, the common bit being used to indicate a high common level of both the first PDCP SN and the second PDCP SN.
- the logical channel number configured on the dual connection of the split bearer is the same;
- the PDCP layer of the terminal is generated based on the logical channel number.
- an embodiment of the present invention provides a base station, including: a transceiver, a memory, and a processor coupled to the memory.
- the transceiver, memory and processor can be connected by bus or other means.
- the transceiver is used to transmit data to the outside or to receive data from the outside.
- the memory is configured to store program code
- the processor is configured to call and run the program code stored in the memory to perform the method described in the second aspect, including:
- a MAC PDU sent by the terminal where the MAC sub-header and the corresponding user plane data occupy a continuous storage space; unpacking the MAC PDU to obtain a MAC SDU, and Transmitting a MAC SDU to a specific layer; the specific layer is located above the MAC layer, the specific layer includes one or more protocol layers; reordering and reassembling the MAC SDU by the specific layer, and by the The transceiver sends the reordered and reassembled MAC SDU to the network.
- the specific layer is a PDCP layer
- the processor performs reordering and reassembling the MAC SDU by the specific layer, specifically: the processor performs reordering and recombining PDCP PDUs through the PDCP layer.
- the processor performs PDCP layer reordering and recombining the PDCP PDU by the base station, and further includes: if the reordering timer expires, the processor Performing a PDCP Status PDU to the terminal through the PDCP layer of the base station, the PDCP Status PDU is used to indicate which PDCP PDU or PDCP PDU segment is not received by the base station.
- the PDCP status PDU is constructed before the base station obtains an actual authorization value; if the PDCP status PDU is constructed as a MAC PDU, if the MAC PDU is in a packet length
- the processor is further configured to intercept the PDCP status PDU based on the actual authorization value, and discard the portion that exceeds the actual authorization value.
- the PDCP status PDU includes a packet data convergence protocol negative acknowledgement sequence number PDCP NACK SN
- the PDCP NACK SN includes a first PDCP NACK SN, a second PDCP NACK SN
- the first PDCP NACK SN indicates that the PDCP SN is ranked in the PDCP SN
- the PDCP PDU indicated by the previous packet data convergence protocol sequence number has been received
- the second PDCP NACK SN indicates that the PDCP PDU indicated by the PDCP SN is not received
- the packet data convergence protocol sequence before the PDCP SN is received.
- the PDCP PDU indicated by the number in addition to the PDCP PDU indicated by each PDCP NACK SN, other PDCP PDUs have been received.
- the method includes: detecting, by the MAC layer of the base station, the MAC sub-head indication The size is larger than the MAC sub If the header corresponds to the size of the PDCP PDU, the processor performs, by using the MAC layer of the base station, that the MAC sub-header corresponding PDCP PDU is a PDCP PDU first segment, and the PDCP PDU first segment is used to implement the foregoing. Reorganization of the PDCP SDU.
- the specific layer includes a PDCP layer and an RLC layer
- the processor performs reordering and reassembling the MAC SDU by the specific layer, specifically: the processor performs reordering and reassembling RLC PDUs through the RLC layer.
- the processor performing re-sequencing the RLC PDU by using an RLC layer of the base station, further comprising: performing, by the processor, performing a pass when the reordering timer expires
- the RLC layer of the base station transmits an RLC status PDU to the terminal, the RLC status PDU being used to indicate which RLC PDU or RLC PDU segment is not received by the base station.
- the RLC status PDU is constructed before the base station obtains an actual authorization value; in the process of constructing the RLC status PDU as a MAC PDU, if the data length of the MAC PDU is The processor is further configured to intercept the RLC status PDU based on the actual authorization value, and discard the portion that exceeds the actual authorization value.
- the RLC status PDU includes a packet data convergence protocol negative acknowledgement sequence number RLC NACK SN
- the RLC NACK SN includes a first RLC NACK SN, a second RLC NACK SN
- the first RLC NACK SN indicates that the RLC SN is ranked in the RLC SN
- the RLC PDU indicated by the previous packet data convergence protocol sequence number has been received
- the second PDCP NACK SN indicates that the RLC PDU indicated by the RLC SN is not received
- the radio link control protocol preceded by the RLC SN In the RLC PDU indicated by the sequence number, in addition to the RLC PDU indicated by each RLC NACK SN, other RLC PDUs have been received.
- the method includes: detecting, at the MAC layer of the base station, If the size indicated by the MAC sub-header is greater than the size of the RLC PDU corresponding to the MAC sub-header, the processor performs, by using the MAC layer of the base station, that the MAC sub-head corresponding RLC PDU is the RLC PDU first segment, the RLC The PDU first segment is used to implement reassembly of the RLC SDU.
- the transceiver is further configured to receive a PDCP control PDU sent by the terminal, where the PDCP control PDU is used to indicate which PDCP PDU in the terminal is lost.
- the transceiver performs abandonment of waiting for the PDCP PDU indicated by the PDCP Control PDU.
- an embodiment of the present invention provides an apparatus, where the apparatus includes: a PDCP module and a MAC module.
- the PDCP module includes a first transceiver module, a cache module, a centralized header module, a segmentation module, a packet loss module, a reordering module, a retransmission module, and a reassembly module.
- the MAC module includes a second transceiver module, an estimation authorization module, a cascade module, and a package unpacking module.
- the device When the device is a terminal, the device is used to implement the function of the terminal in the first aspect; when the device is a base station, the device is used to implement the function of the base station in the second aspect, which can be understood
- the device configures the foregoing first user plane protocol architecture, that is, the terminal and the base station are configured with a first type of user plane protocol architecture.
- the embodiment of the present invention provides another apparatus, including a PDCP module, an RLC module, and a MAC module.
- the PDCP module includes a first transceiver module, a centralized header module, and a packet loss module.
- the RLC module includes a second transceiver Module, cache module, segmentation module, sequence allocation module, reordering module, retransmission module, and reassembly module.
- the MAC module includes a third transceiver module, a cascade module, an estimation authorization module, and a group package unpacking module.
- the device When the device is a terminal, the device is used to implement the function of the terminal in the first aspect; when the device is a base station, the device is used to implement the function of the base station in the second aspect. It can be understood that the device configures the foregoing second user plane protocol architecture, that is, the terminal and the base station both configure a second user plane protocol architecture.
- an embodiment of the present invention provides a communication system, where the communication system includes: a terminal and a base station.
- the terminal may be the terminal in the third aspect
- the base station may be the base station in the fourth aspect.
- the terminal may be a terminal characterized by the device in the fifth aspect
- the base station may be a base station characterized by the device in the fifth aspect.
- the terminal may be a terminal characterized by the device in the sixth aspect
- the base station may be a base station characterized by the device in the sixth aspect.
- an embodiment of the present invention provides a baseband chip, where the baseband chip is coupled to a transceiver, where the baseband chip is configured to: acquire user plane data to be transmitted; and estimate and estimate a base station authorization when currently performing data transmission.
- the length of the data packet is obtained, and the estimated authorization value is obtained; the user plane data is grouped according to the estimated authorization value to obtain the first group of packet data; and the actual authorization value sent by the base station is received, and the actual authorization value is characterized.
- the data is processed to obtain a second set of packet data; the second set of packet data is transmitted to the base station by the transceiver.
- an embodiment of the present invention provides a computer readable storage medium for storing an implementation code of the method of the first aspect.
- an embodiment of the present invention provides a computer readable medium for storing an implementation code of the method of the second aspect.
- an embodiment of the present invention provides a computer software product, which when used in a computer, can be used to implement the method described in the first aspect.
- the embodiment of the present invention provides another computer software product, which when used in a computer, can be used to implement the method described in the second aspect.
- the MAC layer triggers the user plane based on the estimated authorization value.
- the data is packaged.
- the group of packet data is processed such that the group of packets matches the actual authorized value, and the processed packet data is sent to the base station, and the base station performs corresponding unpacking and processing.
- the embodiments of the present invention can solve many flaws affecting communication delay and communication rate in the existing protocol architecture, realize fast transmission of user plane data, improve communication delay, and even reach near zero delay in certain situations, satisfying people. The need for fast transfer of user plane data.
- FIG. 1 is a schematic structural diagram of an LTE system in the prior art
- FIG. 2 is a schematic diagram of a user plane protocol architecture in the prior art
- FIG. 3 is a schematic diagram of a format of a MAC data packet in the prior art
- FIG. 5 is a schematic diagram of a format of a MAC PDU data packet according to an embodiment of the present invention.
- 6-a is a schematic diagram of processing a MAC PDU according to an embodiment of the present invention.
- FIG. 6-b is still another schematic diagram of processing a MAC PDU according to an embodiment of the present invention.
- FIG. 6-c is still another schematic diagram of processing a MAC PDU according to an embodiment of the present invention.
- FIG. 7 is a schematic diagram of a status report format according to an embodiment of the present invention.
- FIG. 8 is a schematic flowchart of a user plane data processing method according to an embodiment of the present invention.
- FIG. 9 is a schematic diagram of processing data of a PDCP layer according to an embodiment of the present invention.
- FIG. 10 is a schematic diagram of a PDCP PDU according to an embodiment of the present invention.
- 11-a is a schematic diagram of a format of a PDCP PDU packet according to an embodiment of the present invention.
- 11-b is a schematic diagram of a format of a PDCP PDU data segmentation packet according to an embodiment of the present invention.
- FIG. 12 is a schematic diagram of a MAC layer group package according to an embodiment of the present invention.
- FIG. 13 is a schematic diagram of a MAC layer unpacking according to an embodiment of the present invention.
- FIG. 14 is a schematic diagram of a PDCP control PDU data packet format according to an embodiment of the present disclosure.
- FIG. 15 is a schematic diagram of a PDCP status PDU data packet format according to an embodiment of the present disclosure.
- 16 is a schematic flowchart of still another user plane data processing method according to an embodiment of the present invention.
- FIG. 17 is a schematic diagram of still another PDCP PDU according to an embodiment of the present invention.
- FIG. 18 is a schematic diagram of still another RLC PDU according to an embodiment of the present invention.
- FIG. 19 is a schematic diagram of a format of a RLC PDU data segmentation packet according to an embodiment of the present invention.
- FIG. 20 is a schematic diagram of a dual connectivity communication system according to an embodiment of the present invention.
- 21 is a schematic structural diagram of a device according to an embodiment of the present invention.
- FIG. 22 is a schematic structural diagram of still another apparatus according to an embodiment of the present invention.
- FIG. 23 is a schematic structural diagram of still another apparatus according to an embodiment of the present invention.
- FIG. 24 is a schematic diagram of a communication system according to an embodiment of the present invention.
- the LTE system consists of an Evolved Packet Core (EPC), an Evolved Node B (eNode B), and a user equipment ( User Equipment, UE) is composed of 3 parts.
- the EPC is responsible for the core network part, the signaling processing part of the EPC is the Mobility Management Entity (MME), the data processing part is the Serving Gate Way (S-GW), and the eNode B is also called the E-UTRAN.
- MME Mobility Management Entity
- S-GW Serving Gate Way
- E-UTRAN Evolved UTRAN
- responsible for the access network part the eNode B itself has independent resource management functions, and each eNode B realizes mutual coordination and cooperation through direct interconnection.
- the eNode B and the MME/S-GW are connected through the S1 interface; the eNode Bs are connected through the X2 interface; and the UE and the eNode B perform uplink communication or downlink communication through the LTE air interface technology (such as the Uu interface).
- the protocol stack is divided into a user plane (User Plane) and Control Plane.
- the user plane is used to transmit the service or the application data, and the application data is carried by the user plane.
- the application data transmitted through the user plane may be simply referred to as user plane data.
- user plane data For example, we use the mobile phone to access the Internet, see the content of the webpage, the content of the chat, etc., which are transmitted through the user plane, so they belong to the user plane data.
- User plane transmission is closely related to the transmission and reception of people's wireless information. Therefore, people's demand for user plane transmission is also increasing.
- the LTE user plane protocol stack includes a Packet Data Convergence Protocol (PDCP), a Radio Link Control (RLC), and a MAC (Media Access Control).
- PDCP Packet Data Convergence Protocol
- RLC Radio Link Control
- MAC Media Access Control
- PHY Physical layer
- the user plane protocol stack is applied to the UE side and the eNB side, respectively.
- the RLC layer has a cascading function. After the RLC layer concatenates multiple data (RLC SDUs) into RLC PDUs, the RLC PDU has multiple RLC headers, and these RLC headers occupy consecutive storage. Space, these RLC headers are used to describe related information of multiple RLC SDUs. Specifically, when constructing the RLC PDU, the RLC layer needs to perform two scans on the multiple RLC SDUs, one scan for collecting information needed to construct the RLC PDU header (each RLC header), and another scan for The RLC PDU header and the entire RLC PDU are actually constructed.
- the MAC layer has an multiplexing function. After the RLC layer multiplexes multiple data (MAC SDUs) into MAC PDUs, the MAC PDU has multiple MAC subheaders, and these MAC subheads occupy consecutive storage. Space, these MAC subheaders are used to describe related information of multiple MAC SDUs. Specifically, when constructing a MAC PDU, at least two scans are also required, one of which is used to collect information required to construct a MAC PDU header (each MAC subheader), and another scan is used to actually construct a MAC PDU header. And the entire MAC PDU.
- FIG. 3 is a MAC PDU packet in the prior art.
- the MAC PDU includes a MAC PDU header and a corresponding payload.
- the MAC PDU header includes multiple MAC subheaders (MAC sub- Header), each MAC subhead corresponds to a subsequent MAC SDU, MAC control element or padding, the order of the MAC subheader and the order in which the MAC SDU, the MAC control element, and the padding data appear. It is corresponding. It can be seen that, in the MAC PDU generated by the MAC layer based on the prior art, the MAC sub-header and its corresponding data are not continuously stored, and the multiple MAC sub-heads occupy a continuous storage space.
- the PDCP constructs a PDCP PDU after acquiring user plane data
- the RLC layer and the MAC layer need to aggregate data (for respectively constructing RLC PDUs and MAC PDUs), and need to user plane data.
- the RLC layer can construct the RLC PDU only after the PHY layer determines the size of the transport block (TB), and the MAC layer can construct the MAC PDU accordingly.
- the UE needs to perform an uplink scheduling request to the base station, and waits for the authorization of the base station, and the base station determines the size of the TB and performs TB transmission authorization to the UE.
- the UE needs to complete all processing from the PDCP PDU to the TB within the transmission window agreed by the protocol, otherwise the transmission time window will be missed.
- the UE needs to reserve a certain time for related grouping. Therefore, such a protocol architecture is not conducive to the improvement of communication delay, and fundamentally restricts the delay and the communication transmission rate.
- the receiving side (UE or eNode B) needs to construct a status PDU to receive status feedback when receiving data, that is, the receiving side needs to inform the transmitting side whether it is received.
- the RLC is responsible for the feedback of the status PDU.
- the acknowledgement sequence number ACK_SN is used to indicate the last RLC PDU that is not received in the receiving window, so the specific value of the ACK_SN needs to be finalized after the status PDU is constructed. This specific value is directly related to the base station grant information, that is, the construction of the status PDU is also dependent on the base station grant. Therefore, the current LTE protocol architecture also has a fundamental constraint on the delay of information feedback and the transmission transmission rate in the AM mode.
- the communication defects listed above are only a few of the communication defects caused by the current LTE protocol architecture.
- the current LTE protocol architecture fundamentally restricts the communication delay and the communication rate.
- the protocol architecture needs to be improved or redesigned to further reduce communication latency, increase communication speed, and meet the need for rapid transmission of user plane data.
- only the MAC layer has the cascading function of the data packet, that is, in the PDCP layer and/or the RLC layer, only one SDU is included in one PDU, and at the MAC layer, the MAC layer may be more The SDUs are concatenated into one PDU to obtain a MAC PDU.
- the data is scanned once, and the corresponding MAC subheader is generated, and the MAC subheader and the corresponding data occupy a continuous storage space for storage.
- FIG. 5 is a data packet of a MAC PDU according to an embodiment of the present invention.
- the MAC PDU may include one or more MAC sub-headers, and each MAC sub-head corresponds to one SDU (MAC SDU). ), or a MAC control element, or a padding.
- MAC SDU SDU
- the MAC control element may be placed in front of the MAC SDU to facilitate fast processing by the base station; if the MAC control element is not related to the delay, the MAC control element may be placed Behind the MAC SDU to avoid secondary processing of the MAC PDU.
- the MAC layer can complete the MAC PDU group packet or the MAC PDU unpacking only by one scan, which is beneficial to reducing data processing overhead.
- the number of nodes when the base station is authorized to initiate the group packet is reduced, and the group packet speed and the group packet efficiency are improved.
- the PDCP layer of the UE acquires the user plane data PDCP SDU to be transmitted
- the PDCP SDU is placed in a buffer of the PDCP layer
- the MAC layer detects the data of the buffer
- the MAC layer predicts that the base station obtains an estimated authorization value for the current authorized resource amount (the estimated authorization value is the number of bytes authorized by the base station for the estimated current transmission opportunity), and authorizes the estimation.
- the value informs the PDCP layer, triggers the PDCP layer and the underlying protocol layer to perform preprocessing on the PDCP SDU from the PDCP SDU to the MAC PDU; on the other hand, the MAC layer triggers sending a data transmission request to the base station, and the data transmission request includes a scheduling request (Scheduling Request)
- the SR is used to notify the base station of the data transmission requirement, and the Buffer Status Report (BSR) is used to report the specific resource requirement to the base station.
- the base station reports a suitable uplink to the UE based on the data transmission request report and the uplink channel measurement result and other factors.
- Authorization in order for the UE to perform uplink data transmission, the uplink grant includes the actual authorized value of the base station for the current data transmission of the UE.
- the UE When the UE obtains the uplink grant of the base station, the UE has completed pre-processing of the PDCP SDU, that is, the PDCP SDU has been pre-processed as a MAC PDU based on the estimated grant value. Then, the MAC determines whether the MAC PDU matches the actual authorized value, specifically, the following three cases,
- Case 1 When the obtained actual authorization value is greater than the packet length of the MAC PDU, the MAC layer continues to perform grouping on the MAC PDU.
- the MAC layer of the terminal calculates a difference between the actual grant value and the packet length of the MAC PDU.
- the MAC layer adds padding data to the MAC PDU, and the padding size is equal to the difference. See FIG. 6-a, the MAC layer updates the MAC PDU. Then, the data packet length of the processed MAC PDU matches the actual authorized value, and then the terminal performs uplink transmission on the processed MAC PDU;
- the MAC layer invokes the next protocol data unit PDU (PDCP PDU or RLC PDU to be transmitted in the buffer, depending on the specific situation); if the difference Not enough to accommodate this complete PDU, segment the PDU to determine the appropriate location, see Figure 6-b, the PDU is truncated into the PDU first segment and the PDU end segment, where the PDU first segment size Equal to the difference.
- the MAC layer cascading the MAC PDU and the PDU first segment to update the MAC PDU, then the packet length of the MAC PDU processed as described above matches the actual authorized value, and then the terminal processes the packet.
- the MAC PDU is transmitted in the uplink, and the last segment of the PDU is waiting for the next transmission opportunity to be transmitted again;
- Case 2 When the actual authorized value received is exactly equal to the data packet length of the MAC PDU, the terminal may immediately perform uplink transmission on the MAC PDU. In this case, the terminal implements a near zero delay group packet.
- Case 3 When the actual authorized value received is smaller than the data packet length of the MAC PDU, first, the MAC layer of the terminal calculates a difference between the data packet length of the MAC PDU and the actual authorized value. Referring to Figure 6-c, the MAC layer retrieves the MAC sub-header in the MAC PDU, determines the appropriate location for segmentation, and then cuts the MAC PDU into the first segment and the last segment. In general, the last segment of the first segment also contains The first segment of the MAC PDU that is truncated (the MAC subheader + MAC SDUm first segment in the figure), and the last part of the last segment contains the truncated MAC PDU end segment (the MAC SDUm last segment in the figure) ).
- the length of the last segment is equal to the difference, and the MAC layer determines the first segment as the processed MAC PDU, and the data packet length of the processed MAC PDU matches the actual authorized value, and then the terminal passes the The processed MAC PDU is transmitted in the uplink.
- the terminal also needs to add a corresponding layer header to the last segment of the MAC PDU, so as to process the PDU end segment into a MAC SDU (including a new MAC sub-header and a MAC SDUm end segment), and wait for the next transmission opportunity. Then transfer.
- the terminal can pre-group the user plane data in advance of the authorization of the base station, so that the related processing of the group packet is decoupled in time series, and can be A part of the second group of packet data is completed, and when the base station actually authorizes, the group packet is further increased or decreased according to the actual authorization value.
- the implementation of the above embodiment of the present invention can reduce the pressure of processing pulses when receiving the authorization, and equalize the user.
- the processing pressure of the face compressing the amount of processing tasks when receiving the authorization, and realizing the rapid completion of the group package, which will greatly reduce the packet delay when receiving the authorization, and even realize the near zero delay group package in some scenarios. Conducive to delay improvement and enhance user experience.
- the status report (state PDU) in the retransmission mechanism is redesigned, the acknowledgment response sequence number ACK_SN in the state PDU in which the state PDU is constructed in advance is removed, and the NACK_SN in the status PDU is redefined, and
- the defined NACK_SN not only has the original status reporting capability, but can also be built ahead of time before the base station is authorized.
- FIG. 7 is an RLC status PDU according to an embodiment of the present invention.
- the illustrated RLC status PDU has a 16-bit serial number RLC SN and 16-bit SOstart and SOend.
- the RLC status PDU includes an RLC status PDU header and an RLC status PDU payload, and the RLC status PDU header is composed of two parts, D/C and CPT.
- the RLC Status PDU payload begins with the first bit after the RLC Status PDU header, which includes zero or more sets of NACK_SN, E1, and E2, and a set of possible SOstart and SOend sets for use with NACK_SN.
- D/C indicates a data/control indication indicating whether the PDU is a data PDU or a control PDU.
- CPT indicates a control PDU class indication for indicating the class of the RLC PDU.
- E1 Indicates whether a group of NACK_SN and E1/E2 combined fields are followed.
- E2 Indicates whether a group of SOstart and SOend combined fields are followed.
- NACK_SN The first NACK_SN indicates that the RLC PDU base station has received the previous RLC PDU; the subsequent NACK_SN indicates that the other RLC PDU base stations have received the RLC PDU corresponding to the previous NACK_SN.
- SOstart and SOend jointly indicate that the RLC PDU corresponding to the NACK_SN is not received, wherein SOstart indicates the starting position of the lost part in the RLC PDU, and SOend indicates the ending position of the lost part in the RLC PDU, both in bytes. For the unit.
- the base station can quickly construct a corresponding status PDU and feed back to the transmitting end when the data is detected to be missing. Enables the sender to retransmit data as quickly as possible. Since the retransmission mechanism is an important guarantee for data integrity in the data transmission process, implementing the embodiments of the present invention can speed up the data transmission rate, reduce the communication delay, avoid unnecessary waiting in the feedback process, and ensure that the data can be transmitted quickly and completely. .
- the embodiment of the present invention improves and designs the LTE protocol architecture, so as to reduce communication delay, improve communication rate, and realize fast user plane data. Transmission to meet the needs of people for fast transmission of user plane data.
- the embodiment of the present invention provides at least two user plane protocol architectures, which are described as follows:
- the PDCP layer has the functions of centralized header, segmentation, reassembly, reordering, retransmission, status reporting, and packet loss reporting.
- the centralized header operation of the PDCP layer includes adding a PDCP header.
- the RLC layer does not make any changes to the data, only for transparently transmitting data of the PDCP layer to the MAC layer, in another specific embodiment
- the RLC layer can even be cancelled, that is, the PDCP layer directly sends data to the MAC layer; the MAC has functions of cascading, estimating authorization, grouping/unpacking, segmentation detection, and removing MAC subheaders. Since the header function is deployed centrally to the PDCP layer, the MAC layer will skip the header processing (ie, no header is added). The PHY layer is not changed, and reference may be made to the related description of the prior art.
- the PDCP has a centralized header function, and the centralized header operation includes adding a PDCP header, an RLC header, and a MAC subheader; the RLC layer has segmentation, reassembly, reordering, retransmission, status reporting, Loss of packet reporting and removal of RLC subheaders. Since the header function is deployed centrally to the PDCP layer, the RLC layer will skip the header processing; the MAC has cascade, estimated grant, packet/unpack, segment detection, and MAC removal. Sub-head function. Since the header function is deployed centrally to the PDCP layer, the MAC layer will also skip the header processing. The PHY layer is not changed, and reference may be made to the related description of the prior art.
- the foregoing two embodiments of the user plane protocol architecture only list some functional differences between the specific protocol layer in the embodiment of the present invention and the protocol layer in the prior art, and are not listed in the table.
- the function refer to the implementation form of the function in the prior art, which is familiar to those skilled in the art, and will not be specifically described later.
- the PDCP layer of the embodiment of the present invention does not list the header compression/encryption function.
- the specific implementation process refer to the implementation form of the compression/encryption function of the PDCP layer in the prior art.
- an embodiment of the present invention provides a user plane data processing method, which is described from a sending side and a receiving side, where the method includes:
- Step S101 The packet data convergence protocol PDCP layer of the terminal acquires user plane data to be transmitted;
- the terminal may be a user equipment (UE) or an access network device.
- UE user equipment
- the terminal In the uplink transmission, the terminal is a user equipment; in downlink transmission, the terminal is an access network device.
- the user equipment may also be referred to as a mobile station, an access terminal, a subscriber unit, a subscriber station, a mobile station, and a far Square station, remote terminal, mobile device, user terminal, terminal, wireless communication device, user agent or user device.
- the user equipment can be a cellular phone, a cordless phone, a Session Initiation Protocol (SIP) phone, a Wireless Local Loop (WLL) station, a Personal Digital Assistant (PDA), and a wireless communication function.
- the access network device may be a BTS (Base Transceiver Station) in GSM or CDMA, or an NB (NodeB) in WCDMA, or an evolved Node B (eNB) in LTE. Or a relay station, or an in-vehicle device, a wearable device, and an access network device in a future 5G network or an access network device in a future evolved Public Land Mobile Network (PLMN) network.
- BTS Base Transceiver Station
- NB NodeB
- eNB evolved Node B
- PLMN Public Land Mobile Network
- the packet data convergence protocol of the terminal, the PDCP layer acquires the user plane data to be transmitted, and the user plane data may be data transmitted by the upper layer to the PDCP layer, such as a PDCP data SDU (which may be simply referred to as a PDCP SDU), and the PDCP data SDU may be data.
- the form of the stream is sent to the PDCP layer and stored in the buffer of the PDCP layer. It may also be data generated at the PDCP layer, such as a PDCP status PDU, or may be a pre-cached copy of the data to be retransmitted by the PDCP.
- Step S102 The MAC layer of the terminal estimates an authorization size.
- the MAC layer After detecting that the PDCP layer buffers the data to be transmitted, on the one hand, the MAC layer predicts that the base station will obtain an estimated authorization value for the authorized resource amount of the current transmission; on the other hand, the MAC layer triggers sending a data transmission request to the base station as needed.
- the data transmission request includes a scheduling request (SR), which is used to notify the base station of the data transmission requirement, and a Buffer Status Report (BSR) for reporting the specific buffer data amount to the base station.
- SR scheduling request
- BSR Buffer Status Report
- the MAC layer may be based on one of an authorization log, a user plane data buffer, a channel quality indicator (CQI), a quality of service (QoS) parameter, and a retransmission task. Or multiple calculations to get the estimated authorization size.
- the authorization log is a secondary authorization record of the base station saved by the terminal, and the authorization log records the actual authorized value of the base station and the user plane data buffer amount, the channel quality indicator CQI, the quality of service QoS parameter, and the weight in the authorization log. The correspondence of the amount of tasks.
- the MAC layer estimates based on the corresponding relationship according to a certain algorithm (for example, an average value algorithm), thereby obtaining an estimation result (ie, estimating an authorization value) for the current resource transmission;
- a certain algorithm for example, an average value algorithm
- the function of the MAC layer scheduler is given, and the MAC layer may perform estimation based on current user plane data buffer amount, channel quality indication CQI, quality of service QoS parameter, retransmission task amount, and the like, which affect the authorization of the base station, thereby Get the estimated authorization value.
- the manner in which the MAC layer performs the authorization estimation to obtain the estimated authorization value may also be various, and the embodiment of the present invention is not further limited herein.
- Step S103 The PDCP layer of the terminal processes the user plane data to be transmitted based on the estimated authorization value to obtain a PDCP PDU.
- the MAC layer after the MAC layer completes the authorization estimation, the MAC layer notifies the PDCP layer of the estimated authorization value before the actual authorization is received, and triggers the PDCP layer to process the cached data, for example, the PDCP is based on the estimated authorization value for the part or All data is header compressed, encrypted, centrally added, increased PDCP SN, etc., to encapsulate user plane data into PDCP PDUs.
- the PDCP layer controls the user plane data, and the PDCP layer does not trigger all user plane data to enter the processing queue, but presses the preset. Rule triggers its A part of the data enters the processing queue for sequential processing.
- the terminal pre-assigns the user plane data priority according to a preset rule, and the priority is preset in the user plane data, and is used to represent the importance degree of the user plane data.
- the PDCP layer of the terminal identifies the priority of the user plane data, sorts the user plane data according to priority from high to low, and allocates a packet data convergence protocol layer sequence for the user plane data based on the ranking. No. PDCP SN;
- the PDCP layer of the terminal processes a certain amount of PDU SDUs in the user plane data to be transmitted based on the estimated authorization value, and the size and the N transmissions of the certain quantity of PDU SDUs
- the difference between the estimated authorized totals in the Transmission Time Interval (TTI) is less than a preset threshold, and the estimated authorized total amount in each TTI is the product of the estimated authorized value and the authorized number, and the number of authorized times is estimated by the MAC layer. The number of times the base station actually authorized within a TTI.
- the MAC layer When the MAC layer performs the authorization estimation, it estimates the number of times the base station grants the terminal within one TTI. Then, the estimated authorized amount in one TTI can be obtained by multiplying the number of authorizations by the estimated authorization value.
- the PDCP layer processes a certain amount of PDU SDUs in the user plane data to be transmitted based on the estimated authorization value, the size of the certain amount of PDU SDUs and the estimated total authorized amount in two TTIs. The difference is less than the preset threshold, and the estimated authorized amount in each TTI is the product of the estimated authorization value and the number of authorizations, and the number of authorizations is the number of times the MAC layer estimates the actual authorization of the base station in one TTI.
- the PDCP can process only two intra-TTI estimates.
- the total amount of authorization considering that the estimated total authorized amount within two TTIs is not normally equal to the integer number of PDU SDUs, so a certain amount of PDU SDU (integer number of PDU SDUs) can be allowed to be of two TTI sizes.
- the difference in the estimated total authorized amount may be less than a specific preset threshold.
- the PDCP layer triggers a new pre-processing when a scheduling period is completed, so that the MAC estimation grant is always available to complete the pre-processed data packet when the packet is started.
- 500 bytes of user plane data (SDU1, SDU2, SDU3, SDU4, SDU5, SDU6, SDU7, SDU8) have entered the PDCP buffer, and the MAC is estimated.
- the value is 100 bytes, and the estimated number of authorizations in one TTI is 2 times.
- the estimated total authorized amount in 2 TTIs is 400 bytes (100x2x2), that is, the MAC indicates that PDCP can process about 400 bytes of users.
- the PDCP layer adds a header to each of the user plane data sets.
- the user plane data is a PDCP SDU, and the PDCP layer pairs the certain amount.
- Each PDU SDU in the PDU SDU adds a PDCP header and a MAC subheader respectively, thereby obtaining a PDCP PDU.
- the user plane data is centrally added in the PDCP layer, and the RLC header is cancelled, which saves the control information overhead of the RLC header and reduces the processor overhead.
- the bottom layer will be skipped. Head operation, which helps to reduce the number of packet nodes, improve memory processing efficiency, and speed up transmission.
- the PDCP header includes a PDCP SN
- the PDCP layer encrypts the PDCP SDU in the PDCP layer, sequentially assigns a sequence number to each PDCP SDU that enters the processing queue, and writes the PDCP SN to the PDCP header.
- packet loss may occur due to data of the PDCP layer, including PDCP actively dropping packets based on high-level instructions, and passive packet loss due to storage timeout.
- the base station needs to rely on the PDCN SN for reordering, reassembly, and retransmission.
- the packet loss can be handled in two ways:
- Manner 1 In the process of user plane processing in the PDCP layer, judging the length of time that the completed data packet is authorized from the base station according to the history record, delaying the encryption process accordingly, and shortening the stay time of the completed data packet in the PDCP layer, For packets that have been encrypted and concentrated, the PDCP will not perform packet loss after the PDCP PDU is generated.
- Manner 2 After receiving the user plane data, the PDCP layer puts the user plane data in a buffer and allocates a PDCP SN to the user plane data. If the user plane data is lost, the PDCP layer generates a packet loss.
- the report is referred to as a PDCP control PDU in the embodiment of the present invention, and is used to notify the receiving and receiving of the user plane data that packet loss occurs, and the base station is prevented from waiting for the PDCP PDU.
- the PDCP control PDU will be described in detail in the following embodiments.
- the PDCP layer has the functions of segmentation, reordering, reassembly, and retransmission.
- the PDCP may be segmented in this layer. Segmentation (such as the MAC layer) can also be implemented in other layers.
- the embodiment of the present invention is based on the PDCP PDU design packet format of the PDCP PDU segment. Referring to FIG. 11-a and FIG. 11-b, the case where the PDCP SN is 32 bits is taken as an example.
- FIG. 11-a shows the format of the PDCP PDU packet in the case of the Data Resource Bearer (DRB) of the 32-bit PDCP SN.
- DRB Data Resource Bearer
- D/C A data/control indication indicating whether the PDU is a data PDU or a control PDU.
- P A polling indication bit indicating whether the terminal needs to accept the device to send a status report.
- R indicates a reserved field.
- the PDCP SN and the subsequent 3 PDCP SNs are used together to indicate the 32-bit PDCP SN.
- FIG. 11-b shows the format of the PDCP PDU packet segmentation in the case of the Data Resource Bearer (DRB) of the 32-bit PDCP SN.
- DRB Data Resource Bearer
- D/C A data/control indication indicating whether the PDU is a data PDU or a control PDU.
- P A polling indication bit indicating whether the terminal needs the base station to send a status report.
- LSF A last segment indication indicating whether the end of the PDU segment is the end of the data of the PDU.
- R indicates a reserved field.
- SO and SO (cont.): A segment offset indication indicating the byte position of the PDU segment in the PDCP PDU.
- the PDCP SN and the subsequent 3 PDCP SNs are used together to indicate the 32-bit PDCP SN.
- PDCP PDU packet format and the PDCP PDU packet segmentation format in the foregoing embodiment are only one implementation form of the embodiment of the present invention, and should not be construed as limiting the present invention.
- Step S104 The PDCP layer of the terminal sends the PDCP PDU to the MAC layer of the terminal.
- the PDCP layer directly sends the processed PDCP PDU to the PDCP PDU.
- MAC layer The advantage of this method is to simplify the user plane protocol, avoid unnecessary stay of data in the RLC layer, and improve the transmission speed and transmission efficiency. Another way is to reserve the RLC layer, but the RLC layer does not make any changes to the data, and the data is transparently transmitted at the RLC layer. In this manner, the PDCP layer of the terminal sends the PDCP PDU to the RLC layer, and performs the RLC layer. Transfer, The RLC layer continues to send the PDCP PDU to the MAC layer.
- the advantage of this method is that the first user plane protocol architecture can better interface with the protocol layer in the prior art, and the embodiment of the present invention is better based on the prior art. Implemented on.
- Step S105 The MAC layer of the terminal concatenates the PDCP PDU into a MAC PDU based on the estimated authorization value.
- the MAC layer After obtaining the data transmitted from the specific layer, the MAC layer sequentially acquires a specific amount of data based on the estimated authorization value to perform cascading, thereby processing the data into a MAC PDU.
- the MAC when the MAC PDU is constructed, the MAC keeps the data corresponding to the MAC sub-header and the MAC sub-header continuously.
- the MAC sub-header and the PDCP PDU corresponding to the MAC sub-header occupy consecutive
- the storage space has been concentrated in the PDCP layer, that is, in the MAC PDU processed by the MAC layer, the MAC subheader, the PDCP header, and the corresponding data are continuously stored in the storage space. of.
- the continuous storage of the MAC PDUs and the data is also beneficial to greatly reduce the number of nodes when the subsequent base station actually grants the group packet to initiate the grouping, and improve the efficiency of the group packet.
- the MAC layer performs a cascading group packet on the data that enters the buffer based on the estimated authorization value. Since the estimated authorization value is not necessarily equal to the size of the plurality of data, a MAC layer cascading group package process may be set. The threshold is allowed. When the MAC layer sequentially searches the data of the buffer and finds that the difference between the total number of bytes of the plurality of data and the estimated authorized value is within the allowable threshold, the plurality of data are cascaded. Referring to FIG. 12, in FIG.
- the data of the buffer includes a control element and a plurality of PDCP data PDUs
- the MAC layer sequentially searches the foregoing data of the buffer, and finds the total number of bytes of the control element, the PDCP PDU6, and the PDCP PDU7, and the estimated authorization.
- the difference in value is within the allowable threshold, so the MAC concatenates the control element, PDCP PDU6, and PDCP PDU7 into MAC PDUs.
- the packet can be cascaded into the next MAC PDU based on the next estimated authorization value.
- Step S106 The MAC layer acquires the base station authorization, and processes the MAC PDU according to the obtained actual authorization value.
- the data packet length of the processed MAC PDU matches the actual authorization value, where the actual authorization value is used to represent the base station to authorize the current The size of the transmission opportunity;
- the PDCP layer has the function of segmentation
- the fragmentation function of the PDCP can be implemented in the MAC layer, that is, For the convenience and efficiency of processing, the MAC layer can complete the fragmentation processing of the PDCP PDU instead of the PDCP layer.
- the MAC layer of the terminal calculates a difference between the actual authorized value and a data packet length of the MAC PDU, according to the difference.
- the size of the MAC PDU is added with padding bit data or PDCP PDU segmentation, so that the packet length of the processed MAC PDU matches the actual authorized value.
- the MAC layer of the terminal calculates a difference between a data packet length of the MAC PDU and an actual authorization value, and the MAC address of the terminal.
- the layer intercepts the PDCP PDU end segment for the MAC PDU, so that the data packet length of the processed MAC PDU matches the actual grant value, and the size of the PDCP PDU end segment is equal to the difference.
- the MAC layer first initiates subsequent data transmission processing, and then completes the MAC PDU end segmentation fragmentation processing. For details, refer to the description of Figure 6-c above.
- the MAC will not perform any processing (that is, there is no need to add a segment indication and a segment offset indication in the corresponding PDCP header), so that Reduce the amount of calculations and speed up the current authorized grouping process.
- the MAC reconstructs the layer header information (MAC subheader and PDCP header) for the PDCP PDU end segment based on the current header information, thereby again placing the PDCP PDU end.
- the segmentation is constructed as a data form of the PDCP PDU, and a segment offset indication and a segmentation indication relative to the PDCP PDU header segment are added to the PDCP header to facilitate subsequent reassembly of the data segment in the base station.
- Step S107 The terminal sends the processed MAC PDU to the base station, and correspondingly, the MAC layer of the base station receives the MAC PDU sent by the terminal.
- the base station when the terminal is a user equipment, the base station is an access network device, and the sending operation is an uplink channel transmission; when the terminal is an access network device, the base station is a user. The device, the sending operation is a downlink channel transmission.
- Step S108 The MAC layer of the base station unpacks the processed MAC PDU to obtain a PDCP PDU.
- the MAC layer When unpacking, the MAC layer unpacks based on the length of the MAC PDU. When the unpacking exceeds the length, the MAC layer terminates the unpacking, and can directly discard the last incomplete data. After the unpacking, in the case that the MAC layer detects that the size of the MAC sub-header is greater than the size of the MAC sub-header corresponding to the PDCP PDU, the MAC layer of the base station determines that the MAC sub-header corresponds to the PDCP PDU as a PDCP PDU.
- the base station after receiving the MAC PDU, the base station unpacks and obtains data such as a MAC control element and a PDCP PDU.
- the MAC layer retrieves the MAC sub-header to determine whether the data length indicated by the MAC sub-header exceeds the length of the PDCP PDU:
- the PDCP PDU is a PDCP PDU segment.
- whether the PDCP header of the PDCP PDU is retrieved has a segment indication and a segment offset indication. If there is a segmentation indication and a segmentation offset indication, determining whether the PDCP PDU is a PDCP PDU intermediate segment or a last segment based on the segmentation indication and the segmentation offset indication; if there is no segmentation indication and a segmentation offset indication Then, the PDCP PDU is determined to be the first segment of the PDCP PDU.
- the MAC layer unpacks the MAC PDU, obtains MAC control unit data, PDCP PDU13 and PDCP PDU14, since the PDCP PDU 14 is the last PDCP PDU of the MAC PDU, MAC Retrieving the layer sub-headers of the PDCP PDU, finding that the length of the MAC sub-header is greater than the actual length of the PDCP, and finding that the PDCP does not include the segment offset indication and the segmentation indication, so the MAC determines that the PDCP PDU 14 is the PDCP PDU 14 First paragraph.
- Step S109 The MAC layer of the base station sends the PDCP PDU to the PDCP layer.
- the MAC layer directly removes the MAC of the unpacked PDCP PDU.
- the subheader is sent to the PDCP layer.
- the other way is to reserve the RLC layer, but the RLC layer does not make any changes to the data, and the data is transparently transmitted at the RLC layer.
- the MAC layer removes the unpacked PDCP PDU and sends it to the RLC layer.
- the relay is performed at the RLC layer, and the RLC layer continues to transmit the PDCP PDU to the PDCP layer.
- Step S110 The PDCP layer of the base station reorders the PDCP PDU, removes the PDCP header from the reordered PDCP PDU, and reassembles the PDCP PDU into a PDCP SDU.
- the PDCP layer After obtaining the PDCP PDU, the PDCP layer places the PDCP PDU in the PDCP buffer, reorders each PDCP PDU in the buffer, and continues to receive other PDCP PDUs in the receiving window. After the serial number of the data before the PDCP PDU is successfully received, if the PDCP PDU is complete data, the PDCP PDU is directly de-headed, that is, the PDCP header is removed, and the PDCP SDU is obtained; if the PDCP is If the PDU is a data segment, it will be connected. The received PDCP PDU first segment, intermediate segment (if any) and PDCP PDU end segment are reassembled into a complete PDCP PDU, and the PDCP PDU is de-headed to obtain a PDCP SDU.
- the duplicated data is discarded; if the PDCP detects that a certain PDCP is not successfully received, a PDCP status PDU (status report) is generated, and the The PDCP status PDU is sent to the PDCP layer of the terminal to notify the terminal to perform retransmission of related data. See the related description below for the PDCP status PDU.
- Step S111 The PDCP layer of the base station sends the PDCP SDU to a higher layer; or the PDCP layer of the base station sends the PDCP SDU to a network.
- the PDCP layer of the base station sends the PDCP SDU to a higher layer; when the base station is an access network device (such as a base station), the base station The PDCP layer sends the PDCP SDU to the network.
- Step S201 During the communication transmission process, data of the PDCP layer of the terminal is lost.
- data stored in the buffer of the PDCP layer may be lost, including PDCP actively dropping packets based on high-level instructions, and passive packet loss based on storage timeout.
- the packet loss means that the PDCP layer deletes some/some data (PDCP PDU) based on a high layer instruction or based on a timeout indication.
- Step S202 The PDCP layer of the terminal generates a PDCP Control PDU.
- the PDCP layer After the packet loss occurs, the PDCP layer generates a PDCP Control PDU based on the information of the packet loss data, and the PDCP Control PDU is used to indicate to the base station which PDCP PDUs are lost, to avoid the base station waiting for the relevant PDCP PDU.
- FIG. 14 is a schematic diagram of a format of a PDCP control PDU data packet according to an embodiment of the present invention.
- the fields of the PDCP control PDU data packet format in the figure are described as follows:
- D/C A data/control indication indicating whether the PDU is a data PDU or a control PDU.
- PDU Type Indicates the type of PDCP Control PDU.
- Common bit indicates the high common level of each PDCP SN where packet loss occurs.
- Start_SN and End_SN are used together to indicate that a PDCP PDU corresponding to the sequence number in the range from Start_SN to End_SN is lost, wherein Start_SN indicates the data sequence number of the first packet lost in the range, and End_SN indicates the last in the range. The data serial number of the lost packet.
- the PDCP layer extracts the high-order common bits between the respective sequence numbers SN in the PDCP Control PDU to construct common bits. That is to say, the common bits can be determined according to the interval representation fields of all the packet loss ranges ⁇ Start_SN ⁇ End_SN ⁇ .
- the length of the PDCP SN is 18 bits, and all the PDCP PDUs in the interval indicated by ⁇ Start_SN ⁇ End_SN ⁇ are lost, and the corresponding PDCP SN is represented by binary. as follows:
- the common bits can be set to 110011001011001, that is, the first 15 bits of the first PDCP SN (110011001011001100) are used as common bits, and each Start_SN and End_SN can be changed based on the common bits.
- the common bits in the PDCP control PDU packet format can effectively reduce the length of the PDCP control PDU, speed up the packet speed, and improve the transmission efficiency.
- Step S203 The PDCP layer of the terminal sends the PDCP Control PDU to the PDCP layer of the base station.
- the PDCP layer of the terminal transmits the PDCP control PDU to the MAC layer of the terminal for grouping, and the MAC layer of the terminal sends the PDCP control PDU of the group packet to the MAC layer of the base station, and then transmits the PDCP control PDU to the base station.
- the process of the PDCP layer refer to the related description of the method embodiment of FIG. 8.
- Step S204 The PDCP layer of the base station no longer waits for the packet loss data indicated by the PDCP control PDU.
- the Start_SN and the End_SN in the PDCP control PDU need to be paired, so when the base station parses the PDCP control PDU, if some/some Start_SN and End_SN of the PDCP control PDU tail are found to be in pairs (due to being The terminal intercepts resulting in some/some Start_SN or End_SN defects, and the base station discards the Start_SN and End_SN.
- the PDCP layer of the base station discards the PDCP PDU waiting for the PDCP Control PDU to be effectively indicated based on the paired Start_SN, End_SN, and associated common bits.
- Step S301 The PDCP layer of the base station detects a data abnormality in the reordering process.
- the data abnormality includes at least two aspects: on one hand, the PDCP layer of the base station sorts the data (such as the PDCP PDU) by the sequence number SN in the process of reordering the data in the buffer, if the data is detected. If the serial number is missing, the timer can be set to wait for the missing data for a period of time. If the timer fails to receive the data, then the data is abnormal. On the other hand, only when all segments of a data (such as PDCP PDU segments) exist in the buffer, the PDCP layer of the base station can reassemble the data, if some segments are not received within the time set by the timer. To, then it is determined that the data is abnormal.
- the PDCP layer of the base station sorts the data (such as the PDCP PDU) by the sequence number SN in the process of reordering the data in the buffer, if the data is detected. If the serial number is missing, the timer can be set to wait for the missing data for a period of time.
- Step S302 The PDCP layer of the base station generates a PDCP status PDU based on the data abnormality.
- the PDCP layer of the base station In case a data anomaly is detected, the PDCP layer of the base station generates a PDCP status PDU.
- the PDCP status PDU is used to indicate which data (such as PDCP PDU or PDCP PDU segment) is not received by the base station.
- FIG. 15 is a PDCP status PDU data packet format according to an embodiment of the present invention.
- the PDCP status PDU data packet format fields in the figure are described as follows:
- D/C A data/control indication indicating whether the PDU is a data PDU or a control PDU.
- PDU Type Indicates the type of PDCP Control PDU.
- E1 used to indicate whether a group of NACK_SN and E1/E2 combined fields are followed
- E2 A combined field used to indicate whether or not it is accompanied by a set of SOstart and SOend.
- SOstart and SOend jointly indicate that the PDCP PDU segment corresponding to the NACK_SN is not received, where SOstart indicates that the unreceived portion is in the beginning position in the PDCP PDU, and SOend indicates that the end portion of the PDCP PDU is not received.
- NACK_SN The first NACK_SN indicates that the PDCP PDU base station has received the previous one, and the subsequent NACK_SN indicates that the other RLC PDU base stations have received the PDCP PDU corresponding to the previous NACK_SN.
- the PDCP layer extracts NACK_SN high common bits (for example, 16 bits) in the PDCP status PDU to construct common bits, and the PDCP SN of the actual data is used by the PDCP status PDU. The common bits in the combination are obtained in combination with NACK_SN.
- the PDCP layer when the PDCP layer extracts the common bits, it is required to ensure that the repeated NACK_SN does not appear in the PDCP status PDU, so that when the following NACK_SN is smaller than the previous NACK_SN, it indicates that the common bits have been inverted. In the case that the common bits are flipped, the PDCP SN of the actual data is obtained by combining the common bits+1 with the corresponding NACK_SN.
- the common bits in the PDCP control PDU packet format can effectively reduce the length of the PDCP status PDU, speed up the packet speed, and improve the transmission efficiency.
- Step S303 The PDCP layer of the base station sends the PDCP status PDU to the PDCP layer of the terminal.
- the PDCP layer of the base station transmits the PDCP status PDU to the MAC layer of the base station for grouping, and the MAC layer of the base station sends the PDCP status PDU of the group packet to the MAC layer of the terminal, and then transmits the PDCP status PDU to the terminal.
- the process of the PDCP layer refer to the related description of the method embodiment of FIG. 8.
- the MAC layer of the base station groups the PDCP status PDU, if the size of the group packet is greater than the actual authorized value of the base station, and the PDCP status PDU is partially intercepted, the MAC layer will be intercepted (ie, cannot be included in the authorization). The part in the package is discarded directly.
- Step S304 The PDCP layer of the terminal performs data retransmission based on the PDCP status PDU.
- the terminal parses the PDCP status PDU, it confirms that all PDCP PDUs before the first NACK_SN in the PDCP status PDU have been received by the base station; and confirms that the subsequent NACK_SN is in addition to the PDCP PDU indicated by the previous series of NACK_SN in the current PDCP status PDU. In addition, other PDCP PDUs have been received. Since the PDCP status PDU may be intercepted by the base station, after the terminal parses the PDCP status PDU, the incomplete data of the last part of the PDCP status PDU is discarded.
- the PDCP layer of the terminal stores user plane data (PDCP PDU).
- PDCP PDU user plane data
- the PDCP layer of the terminal retransmits the NACK_SN indicated by the PDCP status PDU to the base station. Corresponding user plane data.
- the PDCP layer supports functions such as centralized header, segmentation, reassembly, reordering, retransmission, status report, and packet loss report, and the RLC layer is cancelled.
- MAC layer supports cascading, estimation of authorization and other functions. After the PDCP layer of the terminal acquires the user plane data, the MAC layer prompts the user plane data to perform pre-grouping based on the estimated authorization value.
- the pre-packet packet After obtaining the actual authorization value of the base station, the pre-packet packet is processed to match the pre-group packet with the actual grant value, and the processed pre-packet packet is sent to the base station, and the base station performs correspondingly based on the first user plane architecture. Unpacking.
- the embodiments of the present invention can solve many defects in the existing protocol architecture that affect communication delay and communication rate, realize fast transmission of user plane data, and meet the demand of people for fast transmission of user plane data.
- the embodiment of the present invention provides another user plane data processing method based on the second user plane protocol architecture.
- the method is described from the transmitting side and the receiving side, and the method includes:
- Step S401 The packet data convergence protocol PDCP layer of the terminal acquires user plane data to be transmitted.
- the terminal may be a user equipment (UE) or an access network device.
- UE user equipment
- the terminal In the uplink transmission, the terminal is a user equipment; in downlink transmission, the terminal is an access network device.
- Step S402 The MAC layer of the terminal estimates an authorized size.
- the estimated authorization value is estimated by the MAC layer of the terminal according to one or more of an authorization log, a user plane data buffer amount, a channel quality indicator CQI, a quality of service QoS parameter, and a retransmission task amount.
- Step S403 The PDCP layer of the terminal processes the user plane data to be transmitted based on the estimated authorization value to obtain a PDCP PDU.
- packet loss may occur due to data in the PDCP layer, including PDCP based on high-level instruction active packet loss and passive packet loss based on storage timeout.
- the base station needs to rely on the PDCN SN for reordering, reassembly, and retransmission.
- the packet can be handled in two ways:
- Manner 1 In the process of user plane processing of PDCP, judge the length of time authorized by the base station according to the history record, delay the encryption process accordingly, and shorten the stay time of the completed data packet in the PDCP layer, for the encrypted and concentrated header After the PDCP PDU is generated, the PDCP will not perform the packet loss operation.
- Mode 2 After receiving the user plane data, the PDCP directly processes the data packet, including allocating the PDCP SN and the encryption. If the user plane data is lost, the PDCP layer generates a PDCP control PDU to notify the base station. The user plane data is lost, and the base station is prevented from waiting for the PDCP PDU.
- the PDCP layer is notified to the PDCP layer by the PDCP layer.
- the PDCP performs header compression, encryption, and centralized header compression on some or all of the data based on the estimated authorization value.
- the PDCP SN and the like are added to encapsulate the user plane data into PDCP PDUs.
- the PDCP controls the user plane data, and the PDCP does not trigger all user plane data to enter the processing queue. Instead, a part of the data is triggered to enter the processing queue for sequential processing according to a preset rule.
- the PDCP layer of the terminal processes a certain amount of PDU SDUs in the user plane data to be transmitted based on the estimated authorization value, the size of the certain amount of PDU SDUs and the estimated total authorized amount in two TTIs. The difference is less than the preset threshold.
- the PDCP layer adds a header to each of the user plane data sets.
- the user plane data is a PDCP SDU, and the PDCP layer pairs the certain amount.
- Each PDU SDU in the PDU SDU is respectively added with a PDCP header, an RLC header, and a MAC sub-header, and the PDCP SN is allocated in the PDCP header.
- the user plane data processed by the PDCP layer in the embodiment of the present invention may be referred to as a PDCP PDU. .
- the user plane data is concentrated and added in the PDCP layer, which saves the control information overhead of the RLC header and reduces the processor overhead.
- the RLC layer and the MAC layer are no longer added. Head operation, which helps to improve transmission efficiency and speed up transmission.
- Step S404 The PDCP layer sends the PDCP PDU to the RLC.
- Step S405 The RLC layer of the terminal processes the PDCP PDU to obtain an RLC PDU.
- the RLC layer first PDCP PDU is buffered in an RLC buffer, and the RLC sequentially assigns a sequence number RLC SN to each PDCP PDU entering the RLC processing queue, and writes the RLC SN into the RLC of the PDCP PDU.
- the PDCP PDU processed by the RLC layer in the embodiment of the present invention may be referred to as an RLC PDU.
- the RLC has the functions of segmentation, reordering, recombination, and retransmission.
- the RLC may be segmented in this layer.
- This segmentation feature can be deployed at other layer implementations (such as the MAC layer).
- Step S406 The RLC layer sends the RLC PDU to the MAC layer of the terminal.
- Step S407 The MAC layer of the terminal concatenates the RLC PDU into a MAC PDU based on the estimated authorization value.
- the MAC layer After obtaining the data transmitted from the specific layer, the MAC layer sequentially acquires a specific amount of data based on the estimated authorization value to perform cascading, thereby processing the data into a MAC PDU.
- the MAC when constructing a MAC PDU, the MAC keeps the data corresponding to the MAC subheader and the MAC subheader continuously, that is, in the MAC PDU, the MAC subheader, the RLC header, the PDCP header, and the corresponding data (such as PDCP SDU) are stored continuously in the storage space.
- the continuous storage of the MAC PDUs and the data is also beneficial to greatly reduce the number of nodes when the subsequent base station actually grants the group packet to initiate the grouping, and improve the efficiency of the group packet.
- Step S408 The MAC layer of the terminal processes the MAC PDU based on the obtained actual authorization value.
- the MAC layer of the terminal calculates a difference between the actual authorized value and the data packet length of the MAC PDU, and adds the MAC PDU to the MAC PDU.
- the bit data or the RLC PDU segment is padded such that the packet length of the processed MAC PDU matches the actual grant value, the size of the first length of data being equal to the first difference.
- the MAC layer of the terminal triggers a subsequent transmission step of the MAC PDU.
- the MAC layer of the terminal calculates a difference between a data packet length of the MAC PDU and an actual authorized value, and retrieves a MAC based on the difference
- the subheader determines the appropriate location for segmentation and intercepts the appropriate RLC PDU completion packet, which contains the first segment of the RLC PDU.
- the MAC will construct the MAC SDU again, add the PDCP header, the RLC header and the MAC sub-header for the RLC SDU end segment, and add the first RLC SDU in the RLC header. Segmented segmentation indication and segmentation offset indication.
- FIG. 19 shows the RLC PDU data segmentation packet in the case of a 16-bit RLC SN and a 16-bit SO Data Resource Bearer (DRB). Format, the meaning of each field in the data packet is as follows:
- D/C A data/control indication indicating whether the PDU is a data PDU or a control PDU.
- RF A segmentation indication to indicate whether it is an RLC PDU or an RLC PDU segment.
- P A polling indication bit indicating whether the terminal needs to accept the device to send a status report.
- LSF The last segment indication indicating whether the end of the PDU segment is the end of the PDU data.
- R indicates a reserved field.
- R1 indicates a reserved field.
- LSF A last segment indication indicating whether the end of the RLC PDU segment is the end of the RLC PDU data.
- Two RLC SNs used together to indicate a 16-bit RLC SN.
- Two SOs commonly used to indicate a 16-bit segment offset indication for indicating the byte position of the RLC PDU segment in the PDCP PDU.
- RLC PDU data segmentation packet format in the foregoing embodiment is only an implementation of the embodiment of the present invention. Forms should not be construed as limiting the invention.
- Step S409 The terminal sends the processed MAC PDU to the base station, and correspondingly, the MAC layer of the base station receives the processed MAC PDU sent by the terminal.
- the base station when the terminal is a user equipment, the base station is an access network device, and the sending operation is an uplink channel transmission; when the terminal may be an access network device, the base station is The user equipment, the sending operation is a downlink channel transmission.
- Step S410 the MAC layer of the base station unpacks the MAC PDU to obtain an RLC PDU
- the base station after receiving the MAC PDU, the base station unpacks and obtains data such as a MAC control element and an RLC PDU.
- the MAC layer retrieves the MAC sub-header to determine whether the data length indicated by the MAC sub-header exceeds the length of the RLC PDU:
- the RLC PDU is an RLC PDU segment.
- whether the RLC header of the RLC PDU is retrieved has a segment indication and a segment offset indication. If there is a segment indication and a segment offset indication, it is determined that the RLC PDU is an RLC PDU end segment; if there is no segment indication and a segment offset indication, the RLC PDU is determined to be a PDCP PDU first segment.
- Step S411 The MAC layer sends the RLC PDU to the RLC layer.
- Step S412 The RLC layer of the base station reorders the RLC PDU, and removes the MAC sub-header, the RLC header, and the PDCP header from the re-ordered RLC PDU, thereby reassembling the RLC PDU into an RLC SDU.
- the RLC layer After obtaining the RLC PDU, the RLC layer places the RLC PDU in the RLC buffer, reorders each RLC PDU in the buffer, and continues to receive other RLC PDUs in the receiving window until the RLC PDU overflows and receives. window. If the data of the sequence number listed before the RLC PDU is successfully received, if the RLC PDU is complete data, the RLC PDU is directly de-headed, that is, the RLC header is removed, and the RLC SDU is obtained; if the RLC is used The PDU is a data segment, and the received RLC PDU first segment and the RLC PDU end segment are reassembled into a complete RLC PDU, and the RLC PDU is de-headed to obtain an RLC SDU.
- the duplicated data is discarded; if the PDCP detects that a certain RLC is not successfully received, an RLC status PDU (status report) is generated, and the The RLC status PDU is sent to the RLC layer of the terminal to notify the terminal to perform retransmission of related data. See the related description below for the RLC status PDU.
- Step S413 The RLC layer of the base station sends the RLC SDU to the PDCP layer.
- Step S414 The PDCP layer of the base station sends the RLC SDU to a higher layer; or the PDCP layer of the base station sends the RLC SDU to a network.
- the PDCP layer of the base station sends the PDCP SDU to a higher layer; when the base station is an access network device (such as a base station), the base station The PDCP layer sends the PDCP SDU to the network.
- Step S501 During the communication transmission process, data of the PDCP layer of the terminal is lost.
- data stored in the buffer of the PDCP layer may be lost, including PDCP actively dropping packets based on high-level instructions, and passive packet loss based on storage timeout.
- the packet loss means that the PDCP layer deletes some/some data (PDCP PDU) based on a high layer instruction or based on a timeout indication.
- Step S502 The PDCP layer of the terminal generates a PDCP Control PDU.
- the PDCP layer After the packet loss occurs, the PDCP layer generates a PDCP Control PDU (Packet Data Convergence Protocol Control Protocol Data Unit) based on the information of the packet loss data, and the PDCP Control PDU is used to indicate to the base station which PDCP PDU is lost. The packet is to avoid the waiting for the relevant PDCP PDU by the base station.
- PDCP Control PDU Packet Data Convergence Protocol Control Protocol Data Unit
- Step S503 The PDCP layer of the terminal sends the PDCP Control PDU to the PDCP layer of the base station.
- the PDCP layer of the terminal transmits the PDCP control PDU to the MAC layer of the terminal for grouping, and the MAC layer of the terminal sends the PDCP control PDU of the group packet to the MAC layer of the base station, and then transmits the PDCP control PDU to the base station.
- the process of the PDCP layer refer to the related description of the method embodiment of FIG. 16.
- the MAC layer of the terminal controls the PDCP control group, if the size of the group packet is greater than the actual authorized value of the base station, and the PDCP control PDU is partially intercepted, the MAC layer is intercepted (ie, cannot be The part included in the authorization group package is directly discarded.
- Step S504 The base station no longer waits for the packet loss data indicated by the PDCP control PDU.
- Step S601 The RLC layer of the base station detects a data abnormality in the reordering process.
- the data anomaly includes at least two aspects: on one hand, the RLC layer of the base station sorts the data (such as RLCPDUs) according to the sequence number RLC SN in the process of reordering the data in the buffer, if the data is detected. If the sequence number is missing, the timer can be set to wait for the missing data for a period of time. If the timer fails to receive the data, then the data is abnormal (that is, data packet loss occurs during data transmission). On the other hand, only when all segments of a data (such as RLC PDU segments) exist in the buffer, the RLC layer of the base station can reassemble the data, if some segments are not received within the time set by the timer. To, then it is determined that the data is abnormal (that is, the data segmentation packet loss occurs in the terminal).
- the RLC layer of the base station sorts the data (such as RLCPDUs) according to the sequence number RLC SN in the process of reordering the data in the buffer, if the data is detected. If
- Step S602 The RLC layer of the base station generates an RLC status PDU based on the data abnormality.
- the RLC layer of the base station In the event that a data anomaly is detected, the RLC layer of the base station generates an RLC Status PDU, which is used to indicate which RLC PDU or RLC PDU segment is indicated not to be received by the base station.
- the RLC status PDU data packet format provided by the embodiment of the present invention may be as shown in the data packet format of FIG. 7.
- the fields of the RLC status PDU are described as follows:
- D/C A data/control indication indicating whether the PDU is a data PDU or a control PDU.
- E1 used to indicate whether a group of NACK_SN and E1/E2 combined fields are followed
- E2 A combined field used to indicate whether or not it is accompanied by a set of SOstart and SOend.
- SOstart and SOend jointly indicate that the RLC PDU segment corresponding to the NACK_SN is not received, where SOstart indicates that the unreceived portion is in the starting position in the RLC PDU, and SOend indicates that no part is received in the RLC PDU. End position.
- NACK_SN The first NACK_SN indicates that the RLC PDU base station has received the previous RLC PDU, and the subsequent NACK_SN indicates that the RLC PDUs have been received by the other RLC PDUs in addition to the previous NACK_SN.
- Step S603 The RLC layer of the base station sends the RLC status PDU to the RLC layer of the terminal.
- the RLC layer of the base station transmits the RLC status PDU to the MAC layer of the base station for grouping, and the MAC layer of the base station sends the grouped RLC status PDU to the MAC layer of the terminal, and then transmits the RLC status PDU to the terminal.
- the process of the PDCP layer refer to the related description of the method embodiment of FIG. 16.
- the MAC layer of the base station groups the RLC status PDU, if the size of the group packet is greater than the actual authorized value of the base station, and the RLC status PDU is partially intercepted, the MAC layer will be intercepted (ie, cannot be included in the authorization). The part in the package is discarded directly.
- Step S604 The RLC layer of the terminal performs data retransmission based on the RLC status PDU.
- the terminal parses the RLC status PDU, it considers that all the RLC PDUs before the first NACK_SN have been received by the base station; and confirms that the subsequent NACK_SN indicates the RLC PDUs indicated by the previous series of NACK_SNs in the current RLC status PDU, and other RLC PDUs. Have been received. Since the RLC status PDU may be intercepted by the base station, after the terminal parses the RLC status PDU, the last part of the RLC status PDU is incomplete data discarded.
- the RLC layer stores a copy of the RLC PDU.
- the PDCP layer of the terminal retransmits a copy of the RLC PDU corresponding to the NACK_SN indicated by the RLC status PDU to the base station. .
- the PDCP layer supports functions such as centralized header loading and packet loss reporting, and the RLC layer supports functions such as segmentation, reassembly, reordering, retransmission, and status reporting.
- the MAC layer supports cascading, estimating authorization, and other functions. After the PDCP layer of the terminal acquires the user plane data, the MAC layer prompts the user plane data to perform pre-grouping based on the estimated authorization value.
- the pre-packet packet After obtaining the actual authorization value of the base station, the pre-packet packet is processed to match the pre-group packet with the actual authorization value, and the processed pre-packet packet is sent to the base station, and the base station performs correspondingly according to the second user plane architecture. Unpacking.
- the embodiments of the present invention can solve many defects in the existing protocol architecture that affect communication delay and communication rate, realize fast transmission of user plane data, and meet the demand of people for fast transmission of user plane data.
- the following is a further comparison of the first user plane protocol architecture and the second user plane protocol architecture.
- the first user plane protocol architecture is simple, the RLC layer is cancelled or only transparent transmission is supported, and functions such as segmentation, reassembly, and reordering are moved up to a higher PDCP layer.
- the first user plane protocol architecture can implement faster user plane data processing and transmission, and reduce resource overhead data transmission in real time.
- UM Unacknowledged Mode
- the UM mode requires high real-time performance, and requires data to be quickly sent to the peer.
- VOIP, video, and other data services that are sensitive to delay are usually selected for UM mode for data transmission. Therefore, for the data that needs to be transmitted in the UM mode, the first user plane protocol architecture is more suitable.
- the PDCP status report feedback mechanism and the retransmission function in the first protocol architecture may be limited.
- the second user plane protocol architecture RLC layer plays an important role, and the functions of segmentation, reassembly, reordering, retransmission, status reporting, and the like are implemented in the lower RLC layer, so the second Compared with the first user plane architecture, the user plane protocol architecture can implement faster and more accurate user plane data processing and transmission. Since the RLC SN of the data in the RLC layer is continuous, setting the RLC layer is advantageous for retransmission. control. . . For confirmation mode (Acknowledged Mode, AM), AM mode has very high requirements for accuracy. In order to ensure the correct reception of data, some real-time (re-transmission, etc.) will be sacrificed. Data services that are sensitive to errors such as FPT and Web browsing usually adopt AM mode. For data transmission, the second user plane protocol architecture is more suitable for data that needs to be transmitted in the AM mode.
- the first user plane protocol architecture and the second user plane protocol architecture may be independently configured in the LTE system, or may be comprehensively configured in the LTE system at the same time.
- an application scenario in the Dual Connection (DC) mode of the LTE system is described below.
- Dual connectivity is a carrier aggregation under the premise of a non-ideal backhaul.
- user equipment can be connected to two base stations connected by non-ideal backhaul for data communication, as shown in Figure 20, DC.
- one base station is a primary base station (MeNB)
- one base station is a secondary base station (SeNB)
- the MeNB and the SeNB are connected through an X2 interface
- the user equipment is connected to each base station through a Uu interface
- the schedulers of the MeNB and the SeNB respectively manage the respective base stations.
- the radio resources, so the MeNB and the SeNB need to coordinate communication schemes with each other.
- data for uplink and downlink communication transmission has three data bearer modes, and the first type is a primary cell group bearer (MCG bearer). In this bearer mode, the service gateway (S-GW) is down.
- MCG bearer primary cell group bearer
- S-GW service gateway
- the data packet can be directly sent to the user equipment by the MeNB; the second type is the secondary cell group bearer (SCG bearer).
- the data packet from the serving gateway can be directly sent to the user equipment through the SeNB;
- the data packet from the serving gateway can be directly sent to the user equipment through the MeNB, or first routed from the MeNB to the SeNB, and then sent to the user equipment through the SeNB, or the MeNB according to a certain The algorithm and the ratio divide the data, and send part of the data to the SeNB, and finally send data to the user equipment at the same time on the MeNB and the SeNB.
- the logical channel numbers configured on the dual connectivity remain the same, regardless of which logical channel the data is transmitted from, the MAC subheaders are the same, and the MAC subheader can be determined in advance.
- the channel information on the MAC sub-header in the MAC PDU remains the same. Therefore, the data can be pre-concentrated in the PDCP layer to increase the header information for the data, thereby speeding up the packet speed and improving the data transmission efficiency.
- the first user plane protocol architecture and the second user plane protocol architecture are configured in the user equipment, the MeNB, and the SeNB.
- the data may be UM bearer or AM bearer in the DC scenario.
- the user equipment, the MeNB, and the SeNB may use the first user plane protocol architecture to process and transmit related data.
- the data is an AM bearer
- the user equipment, the MeNB, and the SeNB may adopt the second type.
- the user plane protocol architecture processes and transmits related data. That is to say, the user equipment, the MeNB, and the SeNB can select an appropriate user plane protocol architecture for processing and transmission according to the bearer mode of the data.
- the embodiments of the present invention can fully utilize the advantages of different user plane protocol architectures in the data transmission process, improve data transmission efficiency in the DC scenario, save data overhead, and more effectively perform data retransmission and improve.
- the delay of transmission can fully utilize the advantages of different user plane protocol architectures in the data transmission process, improve data transmission efficiency in the DC scenario, save data overhead, and more effectively perform data
- an embodiment of the present invention further provides a device (shown in FIG. 21) for implementing the method described in the foregoing FIG. 8 or FIG. 16 embodiment.
- the apparatus 70 includes a transceiver 703, a memory 702, and a processor 701 coupled to the memory 702 (the number of the processors 701 may be one or more, and one processor is exemplified in FIG. 7).
- the transceiver 703, the memory 702, and the processor 701 can be connected by a bus or other means.
- the transceiver 703 is used to transmit data to the outside or to receive data from the outside.
- the memory 702 is used to store program code, and the processor 701 is used to call and run program code stored in the memory 702.
- the program code stored in the memory 702 is specifically used to implement the functions of the terminal in the embodiment of FIG. 8 or FIG.
- the processor 701 is configured to call the program code stored in the memory 702, and perform the following steps:
- the specific layer is preset on a MAC layer of the terminal, and the specific layer includes one or more protocol layers;
- the pre-group packet data is concatenated into a MAC PDU by the MAC layer of the terminal according to the estimated authorization value, wherein in the MAC PDU, the MAC sub-header and the corresponding user plane data occupy a continuous storage space ;
- the MAC layer of the terminal Processing, by the MAC layer of the terminal, the MAC PDU based on the obtained actual authorization value, where the data packet length of the processed MAC PDU matches the actual authorization value, where the actual authorization value is used to represent the base station to authorize the current The size of the transmission opportunity;
- the processed MAC PDU is transmitted to the base station by the transceiver.
- the processor 701 performs the estimation of the number of bytes authorized by the base station by using the MAC layer of the terminal to estimate the current transmission opportunity, including:
- the processor 701 performs, by using, the MAC layer of the terminal, to obtain a base station according to one or more ones of an authorization log, a user plane data buffer amount, a channel quality indicator CQI, a quality of service QoS parameter, and a retransmission task amount. The number of bytes authorized.
- the processor 701 performs processing on the MAC PDU by using the obtained actual authorization value by the MAC layer of the terminal, and the data packet length of the processed MAC PDU matches the actual authorization value, including:
- the processor 701 performs a first difference between the actual authorization value and the data packet length of the MAC PDU by using the MAC layer of the terminal.
- the MAC layer of the terminal adds data of a first length to the MAC PDU, so that the data packet length of the processed MAC PDU matches the actual authorized value, and the size and size of the first length of data The first difference is equal.
- the first length of data is padding bit data; the processor 701 performs an increase of the MAC PDU by a MAC layer of the terminal
- the data of the first length is specifically: the processor 701 performs adding padding bit data to the MAC PDU by using a MAC layer of the terminal;
- the processor 701 determines whether the first difference matches the size of the next PDCP PDU; if the match is the first length, the data of the first length is the next PDCP. PDU; if not, the data of the first length is the next PDCP PDU segment; the processor 701 performs the step of adding the first length of data to the MAC PDU by using the MAC layer of the terminal, specifically: The processor 701 performs cascading the next PDCP PDU or the next PDCP PDU segment by the MAC layer of the terminal by the MAC layer of the terminal.
- the processor performs processing on the MAC PDU by using the obtained actual authorization value by the MAC layer of the terminal, and the data packet length of the processed MAC PDU matches the actual authorization value, including:
- the processor 701 performs a second calculation of a data packet length of the MAC PDU and an actual authorization value by using a MAC layer of the terminal. a difference, the MAC layer of the terminal reduces data of the second length to the MAC PDU, so that the packet length of the processed MAC PDU is Matching the actual authorization value, where the data of the second length is a MAC PDU segment, and the MAC PDU segment is obtained by segmenting the MAC PDU, and the size of the MAC PDU segment is Said second difference is equal.
- the specific layer includes a PDCP layer
- the processor 701 performs processing on the user plane data based on the estimated authorization value by using a specific layer of the terminal to obtain pre-package data, including: the processor 701 executes the The PDCP layer of the terminal processes a certain amount of PDU SDUs in the user plane data to be transmitted based on the estimated authorization value, and the difference between the size of the certain amount of PDU SDUs and the estimated authorized total amount in N TTIs
- the estimated total authorized amount in each TTI is a product of the estimated authorized value and the number of authorized times, and the number of authorized times is the number of times the MAC layer estimates the actual authorization of the base station in one TTI.
- the processor 701 performs the user plane data to be transmitted through the specific layer of the terminal, where the processor 701 performs the user plane data to be transmitted through the PDCP layer of the terminal.
- the processor 701 performs processing on the user plane data based on the estimated authorization value by the specific layer of the terminal to obtain pre-package data, where the processor 701 performs the PDCP layer based on the estimated authorization value by using the terminal. Processing the user plane data to obtain a MAC SDU.
- the processor performs processing, by using a PDCP layer of the terminal, the user plane data based on an estimated authorization value, where the processor performs: performing, by using a PDCP layer of the terminal, a priority of identifying the user plane data. Priority is given to assigning PDCP SNs to user plane data with higher priority.
- the processor performs processing, by using a PDCP layer of the terminal, the user plane data based on an estimated authorization value, including: the processor performing, by using a PDCP layer of the terminal, the pair of PDCP SDUs Each PDCP SDU adds a PDCP header and a MAC header, and the PDCP header includes the PDCP SN; wherein the user plane data is a PDCP SDU.
- the MAC sub-header and the corresponding user plane data occupy a contiguous storage space, specifically: in the MAC PDU, the MAC sub-header, the PDCP header, and the corresponding The PDCP SDU occupies a continuous storage space.
- the pass processor is further configured to store the user plane data by using the PDCP layer; the transceiver is further configured to receive a first status report that is sent back by the base station; and receive, by the transceiver, In the case of the first status report fed back by the base station, the processor performs retransmission of the user plane data indicated by the first status report to the base station by using the PDCP layer of the terminal, where the first status report is A packet data convergence protocol negative acknowledgement sequence number PDCP NACK SN is included, the PDCP NACK SN includes a first PDCP NACK SN and a second PDCP NACK SN; the first PDCP NACK SN indicates a packet data convergence protocol sequence before the PDCP SN The PDCP PDU indicated by the number has been received; the second PDCP NACK SN indicates that the PDCP PDU indicated by the PDCP SN is not received, and is in the PDCP PDU indicated by the packet data convergence protocol sequence number preceding the PDCP
- the specific layer includes a PDCP layer and an RLC layer;
- the processor 701 performs processing on the user plane data based on the estimated authorization value by using a specific layer of the terminal to obtain pre-package data, including: the processor 701 executes the The PDCP layer of the terminal processes a certain amount of PDU SDUs in the user plane data to be transmitted based on the estimated authorization value, and the difference between the size of the certain amount of PDU SDUs and the estimated authorized total amount in N TTIs Less than the first preset threshold, estimated authorization within each TTI
- the total amount is the product of the estimated authorization value and the number of authorizations, and the number of authorizations is the number of times the MAC layer estimates the actual authorization of the base station within one TTI.
- the processor performs the user plane data to be transmitted through the specific layer of the terminal, where the processor performs the user plane data to be transmitted through the PDCP layer of the terminal.
- the processor performing processing of the user plane data based on the estimated authorization value by the specific layer of the terminal, the processor comprising: performing, by the PDCP layer of the terminal, each PDCP of the certain quantity of PDCP SDUs
- the SDU adds a PDCP header, an RLC header, and a MAC header, respectively;
- the PDCP header includes a PDCP SN;
- the user plane data is a PDCP SDU; and the processor performs writing the RLC SN to the RLC header through the RLC layer.
- the MAC sub-header and the corresponding user plane data occupy a contiguous storage space, specifically: in the MAC PDU, the MAC sub-header, the RLC header, the PDCP header, and The corresponding PDCP SDU occupies a continuous storage space.
- the processor is further configured to store the user plane data by using the RLC layer; the transceiver is further configured to receive a second status report fed back by the base station; Receiving, by the RLC layer of the terminal, retransmission of user plane data indicated by the second status report by the RLC layer of the terminal, where the second The status report includes a packet data convergence protocol negative acknowledgement sequence number RLC NACK SN, the RLC NACK SN includes a first RLC NACK SN, a second RLC NACK SN, and the first RLC NACK SN indicates packet data convergence before the RLC SN
- the RLC PDU indicated by the protocol sequence number has been received
- the second RLC NACK SN indicates that the RLC PDU indicated by the RLC SN is not received
- the RLC indicated by the radio link control protocol sequence number before the RLC SN In the PDU, in addition to the RLC PDU indicated by each RLC NACK SN, other RLC PDUs have been received.
- the processor is further configured to generate a PDCP control PDU by using a PDCP layer of the terminal, and pass the PDCP control PDU through the PDCP layer timeout packet loss of the terminal.
- the transceiver is sent to the base station, and the PDCP control PDU is used to indicate to the base station which user plane data is lost.
- the PDCP control PDU includes: a first PDCP SN and a second PDCP SN, wherein the first PDCP SN and the second PDCP SN are used together to indicate that the sequence number is located in the first PDCP SN and the second PDCP SN A packet loss occurred between the PDCP PDUs.
- the PDCP control PDU further includes a common bit, where the common bit is used to indicate a high common level of both the first PDCP SN and the second PDCP SN.
- the logical channel number configured on the dual connectivity of the split bearer is the same; the MAC subheader is based on the PDCP layer of the terminal. The logical channel number is generated.
- the execution steps of the processor 701 and other technical features involved in the processor 701 may refer to the related content of the terminal in the method embodiment of FIG. 8 or FIG. 16 , and details are not described herein again.
- the program code stored in the memory 702 is specifically used to implement the functions of the base station in the embodiment of FIG. 8 or FIG.
- the processor 701 is configured to call the program code stored in the memory 702, and perform the following steps:
- the specific layer is located above the MAC layer, and the specific layer includes one or more Protocol layer
- the MAC SDUs are reordered and reassembled by the particular layer, and the reordered and reassembled MAC SDUs are sent by the transceiver 703 to a higher layer or network.
- the specific layer includes a PDCP layer
- the processor 701 performs reordering and recombining the MAC SDU by the specific layer, specifically: the processor 701 performs reordering and recombining PDCP PDUs through the PDCP layer.
- the processor performs reordering and reassembling the PDCP PDU by using a PDCP layer of the base station, and further includes: when the reordering timer expires, the processor 701 performs a PDCP layer that passes through the base station.
- a PDCP Status PDU is sent to the terminal, the PDCP Status PDU being used to indicate which PDCP PDU or PDCP PDU segment is not received by the base station.
- the PDCP status PDU is constructed before the base station obtains the actual authorization value.
- the processor 701 is further configured to intercept the PDCP status PDU based on the actual authorization value, and discard the portion that exceeds the actual authorization value.
- the PDCP status PDU includes a packet data convergence protocol negative acknowledgement sequence number PDCP NACK SN
- the PDCP NACK SN includes a first PDCP NACK SN, a second PDCP NACK SN
- the first PDCP NACK SN indicates that the PDCP SN is ranked in the PDCP SN
- the PDCP PDU indicated by the previous packet data convergence protocol sequence number has been received
- the second PDCP NACK SN indicates that the PDCP PDU indicated by the PDCP SN is not received
- the packet data convergence protocol sequence before the PDCP SN is received.
- the PDCP PDU indicated by the number in addition to the PDCP PDU indicated by each PDCP NACK SN, other PDCP PDUs have been received.
- the method includes: detecting, by the MAC layer of the base station, that the size of the MAC sub-header is greater than a MAC sub-header corresponding to a PDCP PDU.
- the processor 701 performs, by using the MAC layer of the base station, that the MAC sub-header corresponding PDCP PDU is a PDCP PDU first segment, and the PDCP PDU first segment is used to implement the PDCP SDU. Reorganization.
- the specific layer includes a PDCP layer and an RLC layer;
- the processor 701 performs reordering and reassembling the MAC SDU by the specific layer, specifically: the processor 701 performs reordering and reassembling RLC PDUs through the RLC layer.
- the processor 701 performs reordering the RLC PDU by using an RLC layer of the base station, and further includes:
- the processor 701 performs to send an RLC status PDU to the terminal through the RLC layer of the base station, where the RLC status PDU is used to indicate which RLC PDU or RLC PDU segmentation Not received by the base station.
- the RLC status PDU is constructed before the base station obtains the actual authorization value; in the process of constructing the RLC status PDU as a MAC PDU, if the data packet length of the MAC PDU is greater than the actual authorized value,
- the processor 701 is further configured to intercept the RLC status PDU based on the actual authorization value, and discard the portion that exceeds the actual authorization value.
- the RLC status PDU includes a packet data convergence protocol negative acknowledgement sequence number RLC NACK SN
- the RLC NACK SN includes a first RLC NACK SN, a second RLC NACK SN
- the first RLC NACK SN indicates that the RLC SN is ranked in the RLC SN
- the RLC PDU indicated by the previous packet data convergence protocol sequence number has been received
- the second PDCP NACK SN indicates that the RLC PDU indicated by the RLC SN is not received
- the radio link control protocol preceded by the RLC SN In the RLC PDU indicated by the sequence number, in addition to the RLC PDU indicated by each RLC NACK SN, other RLC PDUs have been received.
- the method includes: detecting, by the MAC layer of the base station, that the size of the MAC subheader is greater than a MAC address. If the sub-head corresponds to the size of the RLC PDU, the processor 701 performs, by using the MAC layer of the base station, that the MAC sub-head corresponding RLC PDU is the RLC PDU first segment, and the RLC PDU first segment is used to implement Reorganization of the RLC SDU.
- the transceiver 703 is further configured to receive a PDCP control PDU sent by the terminal, where the PDCP control PDU is used to indicate which PDCP PDU in the terminal is packetized; In the case that the transceiver 703 receives the PDCP Control PDU transmitted by the terminal, the transceiver 701 performs abandonment of waiting for the PDCP PDU indicated by the PDCP Control PDU.
- the execution steps of the processor 701 and other technical features involved in the processor 701 may also refer to the related content of the base station in the method embodiment of FIG. 8 or FIG. 16 , and details are not described herein again.
- the embodiment of the present invention further provides a device 80, as shown in FIG. 22, for performing the user plane data processing method described in the foregoing embodiment of FIG.
- the apparatus 80 may include a PDCP module 801 and a MAC module 802.
- the PDCP module 801 includes a first transceiver module 8011, a cache module 8012, a centralized header module 8013, a segmentation module 8014, a packet loss module 8015, a reordering module 8016, a retransmission module 8017, and a reassembly module 8018.
- the MAC module 802 includes a second transceiver module 8021, an estimation authorization module 8022, a cascading module 8023, and a group unpacking module 8024.
- the device 80 When the device 80 is a terminal, the device 80 is used to implement the functions of the terminal in the method embodiment of FIG. 8.
- the specific implementation process is as follows:
- the first transceiver module 8011 is configured to acquire user plane data to be transmitted.
- the estimation authorization module 8022 is configured to estimate the number of bytes authorized by the current transmission opportunity to obtain the base station, and obtain an estimated authorization value, where the estimated authorization value is used to represent the size of the current transmission opportunity authorized by the base station to be estimated by the MAC layer;
- the centralized header module 8013 is configured to process the user plane data based on the estimated authorization value to obtain a PDCP PDU.
- the first transceiver module 8011 is configured to send the PDCP PDU to the second transceiver module 8021;
- the cascading module 8023 cascades the PDCP PDU (also referred to as a MAC SDU) into a MAC PDU based on the estimated authorization value, wherein in the MAC PDU, the MAC subheader and the corresponding user plane data occupy Continuous storage space;
- the second transceiver module 8021 is configured to acquire an actual authorization value allocated by the base station;
- the group packet unpacking module 8024 is configured to process the MAC PDU, the processed MAC PDU packet based on the obtained actual authorization value.
- the length matches the actual authorization value, where the actual authorization value is used to represent the size of the current transmission opportunity authorized by the base station;
- the second transceiver module 8021 is further configured to send the processed MAC PDU to a base station.
- the estimation authorization module 8022 is configured to estimate the number of bytes authorized by the current transmission opportunity to obtain the base station, including:
- the estimation authorization module 8022 is configured to estimate, according to one or more ones of an authorization log, a user plane data buffer amount, a channel quality indication CQI, a quality of service QoS parameter, and a retransmission task quantity, a number of bytes authorized by the base station to obtain the base station authorization. .
- the group packet unpacking module 8024 is configured to process the MAC PDU according to the obtained actual authorization value, where the data packet length of the processed MAC PDU matches the actual authorization value, including: in the actual authorization
- the packet decapsulation module 8024 is configured to calculate a first difference between the actual authorization value and a data packet length of the MAC PDU, where the value is greater than a data packet length of the MAC PDU, for the MAC PDU.
- the data of the first length is increased such that the data packet length of the processed MAC PDU matches the actual grant value, and the size of the first length of data is equal to the first difference.
- the data of the first length is padding bit data, where the first difference is smaller than the first preset threshold; the packet unpacking module 8024 is configured to add a first length to the MAC PDU.
- the data is specifically: the group packet unpacking module 8024 is configured to add padding bit data to the MAC PDU;
- the packet unpacking module 8024 is configured to add data of the first length to the MAC PDU, specifically: the group The packet unpacking module 8024 is configured to cascade the next PDCP PDU or the next PDCP PDU segment to the MAC PDU.
- the group packet unpacking module 8024 is configured to process the MAC PDU according to the obtained actual authorization value, where the data packet length of the processed MAC PDU matches the actual authorization value, including: in the actual authorization If the value is smaller than the data packet length of the MAC PDU, the packet unpacking module 8024 is configured to calculate a second difference between the data packet length of the MAC PDU and an actual authorization value, for the MAC PDU. Reducing the data of the second length such that the data packet length of the processed MAC PDU matches the actual grant value, wherein the second length of data is a MAC PDU segment, and the MAC PDU segment is a pair Obtained by segmenting the MAC PDU, the size of the MAC PDU segment is equal to the second difference.
- the centralized header module 8013 is configured to process the user plane data based on the estimated authorization value to obtain a PDCP PDU, where the centralized header module 8013 is configured to process the to-be-transmitted based on the estimated authorization value.
- a certain amount of PDU SDUs in the user plane data the difference between the size of the certain quantity of PDU SDUs and the estimated authorized total amount in the N TTIs is less than a first preset threshold, and the estimated authorized total amount in each TTI is an estimated authorization value.
- the centralized header module 8013 is configured to process the user plane data based on the estimated authorization value, where the centralized header module 8013 is configured to identify the priority of the user plane data, and the priority is higher.
- User plane data is assigned to the PDCP SN.
- the centralized header module 8013 is configured to process the user plane data based on the estimated authorization value, including:
- the centralized header module 8013 is configured to add a PDCP header and a MAC header to each of the PDCP SDUs of the certain quantity, where the PDCP SN is included in the PDCP header.
- the MAC sub-header and the corresponding user plane data occupy a continuous storage space, specifically: in the MAC PDU, the MAC sub-header, the PDCP header, and The corresponding PDCP SDU occupies a continuous storage space.
- the cache module 8012 is configured to store the user plane data
- the retransmission module 8017 is configured to retransmit the user plane data indicated by the status report to the base station, where the status report includes
- the packet data convergence protocol negates a response sequence number PDCP NACK SN
- the PDCP NACK SN includes a first PDCP NACK SN, a second PDCP NACK SN
- the first PDCP NACK SN indicates a packet data convergence protocol sequence number ranked before the PDCP SN
- the indicated PDCP PDUs have been received
- the second PDCP NACK SN indicates that the PDCP PDU indicated by the PDCP SN is not received, and is listed in the PDCP PDU indicated by the packet data convergence protocol sequence number before the PDCP SN, except
- other PDCP PDUs have been received.
- the first transceiver module 8011 is further configured to timeout packet loss.
- the packet loss module 8015 is configured to generate a PDCP control PDU, and the The PDCP Control PDU is sent to the base station, wherein the PDCP Control PDU is used to indicate to the base station which user plane data is lost.
- the PDCP control PDU includes: a first PDCP SN and a second PDCP SN, wherein the first PDCP SN and the second PDCP SN are used together to indicate that the sequence number is located in the first PDCP SN and the second PDCP SN A packet loss occurred between the PDCP PDUs.
- the PDCP Control PDU further includes a common bit, where the common bit is used to indicate a high common level of both the first PDCP SN and the second PDCP SN.
- the logical channel number configured on the dual connectivity of the split bearer is the same; wherein the MAC subhead is the PDCP of the terminal.
- the layer is generated based on the logical channel number.
- the apparatus 80 further includes an RLC module 803, where the RLC module 803 is configured to receive data sent by the PDCP module 801 (the first transceiver module 8011), and The data is transparently transmitted to the MAC module 802 (second transceiver module 8021).
- the device 80 When the device 80 is a base station, the device 80 is configured to implement the functions of the base station in the method embodiment of FIG. 8.
- the specific implementation process is as follows:
- the second transceiver module 8021 is configured to receive a MAC PDU sent by the terminal, where the MAC sub-header and the corresponding user plane data occupy a continuous storage space;
- the packet unpacking module 8024 is configured to unpack the MAC PDU, remove the MAC sub-header in the MAC PDU, to obtain a MAC SDU;
- the second transceiver module 8021 is further configured to send the MAC SDU to the first transceiver module 8011;
- the centralized header module 8013 removes the PDCP header in the MAC SDU to obtain a PDCP SDU.
- Reordering module 8016 reorders the PDCP SDUs
- the reassembly module 8018 reassembles the reordered PDCP SDUs
- the first transceiver module 8011 When the terminal is a user equipment, the first transceiver module 8011 is configured to send the reassembled PDCP SDU to a higher layer; when the terminal is an access network device, the first transceiver module 8011 is configured to use the reassembled PDCP.
- the SDU is sent to the network.
- the retransmission module 8017 of the base station is configured to send a PDCP status PDU to the terminal, where the PDCP status PDU is used to indicate which PDCP PDU or PDCP PDU segment is segmented. Not received by the base station.
- the PDCP status PDU is constructed before the base station obtains the actual authorization value.
- the base station intercepts the PDCP status PDU based on the actual grant value and discards the portion that exceeds the actual grant value.
- the PDCP status PDU includes a packet data convergence protocol negative acknowledgement sequence number PDCP NACK SN
- the PDCP NACK SN includes a first PDCP NACK SN, a second PDCP NACK SN
- the first PDCP NACK SN indicates that the PDCP SN is ranked in the PDCP SN
- the PDCP PDU indicated by the previous packet data convergence protocol sequence number has been received
- the second PDCP NACK SN indicates that the PDCP PDU indicated by the PDCP SN is not received
- the packet data convergence protocol sequence before the PDCP SN is received.
- the PDCP PDU indicated by the number in addition to the PDCP PDU indicated by each PDCP NACK SN, other PDCP PDUs have been received.
- the packet decapsulation module 8024 unpacks the MAC PDU
- the MAC layer of the base station detects that the size indicated by the MAC subheader is larger than the size of the MAC subhead corresponding PDCP PDU
- the The packet unpacking module 8024 determines that the MAC subhead corresponding PDCP PDU is a PDCP PDU first segment, and the PDCP PDU first segment is used to implement reassembly of the PDCP SDU.
- the apparatus 80 may further include an RLC module 803, where the RLC module 803 is configured to receive data sent by the MAC module 802 (the second transceiver module 8021), and The data is transparently transmitted to the PDCP module 801 (first transceiver module 8011).
- an embodiment of the present invention provides a device 90, as shown in FIG. 22, for performing a user plane data processing method described in the foregoing embodiment of FIG.
- the apparatus 90 may include a PDCP module 901, an RLC module 902, and a MAC module 903.
- the PDCP module 901 includes a first transceiver module 9011, a centralized header module 9012, and a packet loss module 9013.
- the RLC module includes a second transceiver module 9021, a cache module 9022, a segmentation module 9023, a sequence allocation module 9024, a reordering module 9025, a retransmission module 9026, and a reassembly module 9027.
- the MAC module 903 includes a third transceiver module 9031, a cascade module 9032, an estimation authorization module 9033, and a group unpacking module 9034.
- the device 90 When the device 90 is a terminal, the device 90 is configured to implement the functions of the terminal in the method embodiment of FIG. 16, and the specific implementation process is as follows:
- the first transceiver module 9011 is configured to acquire user plane data to be transmitted.
- the estimation authorization module 9033 is configured to estimate the number of bytes authorized by the current transmission opportunity to obtain the base station, and obtain an estimated authorization value, where the estimated authorization value is used to represent the size of the current transmission opportunity authorized by the base station to be estimated by the MAC layer;
- the centralized header module 9012 is configured to process the user plane data based on the estimated authorization value to obtain a PDCP PDU.
- the first transceiver module 9011 is configured to send the PDCP PDU to the second transceiver module 9021;
- the sequence allocation module 9025 is configured to process the PDCP PDU to obtain an RLC PDU.
- the second transceiver module 9021 is configured to send the RLC PDU to the third transceiver module 9031;
- the cascading module 9032 concatenates the RLC PDU (also referred to as a MAC SDU) into a MAC PDU based on the estimated authorization value, wherein in the MAC PDU, the MAC subheader and the corresponding user plane data occupy Continuous storage space;
- the third transceiver module 9031 is configured to acquire an actual authorization value allocated by the base station;
- the group packet unpacking module 9034 is configured to process the MAC PDU, the processed MAC PDU packet based on the obtained actual authorization value.
- the length matches the actual authorization value, where the actual authorization value is used to represent the size of the current transmission opportunity authorized by the base station;
- the third transceiver module 9031 is further configured to send the processed MAC PDU to a base station.
- the estimation authorization module 9033 is configured to estimate the number of bytes authorized by the current transmission opportunity to obtain the base station, including:
- the estimation authorization module 9033 is configured to estimate, according to one or more ones of an authorization log, a user plane data buffer amount, a channel quality indication CQI, a quality of service QoS parameter, and a retransmission task quantity, a number of bytes authorized by the base station to obtain the base station authorization. .
- the group packet unpacking module 9034 is configured to process the MAC PDU based on the obtained actual authorization value, and the data packet length of the processed MAC PDU matches the actual authorization value, including: in the actual authorization
- the packet decapsulation module 8024 is configured to calculate a first difference between the actual authorization value and a data packet length of the MAC PDU, where the value is greater than a data packet length of the MAC PDU, for the MAC PDU.
- the data of the first length is increased such that the data packet length of the processed MAC PDU matches the actual grant value, and the size of the first length of data is equal to the first difference.
- the data of the first length is padding bit data, where the first difference is smaller than the first preset threshold; the packet unpacking module 9034 is configured to add a first length to the MAC PDU.
- the data is specifically: the group packet unpacking module 9034 is configured to add padding bit data to the MAC PDU;
- the packet unpacking module 9034 is configured to add data of the first length to the MAC PDU, specifically: the group The packet unpacking module 9034 is configured to cascade the next PDCP PDU or the next PDCP PDU segment to the MAC PDU.
- the group packet unpacking module 9034 is configured to process the MAC PDU based on the obtained actual authorization value, and the data packet length of the processed MAC PDU matches the actual authorization value, including: in the actual authorization When the value is smaller than the data packet length of the MAC PDU, the packet unpacking module 9034 is configured to calculate a second difference between the data packet length of the MAC PDU and an actual authorization value, for the MAC PDU.
- the second length of data is a MAC PDU segment
- the MAC PDU segment is a pair Obtained by segmenting the MAC PDU, the size of the MAC PDU segment is equal to the second difference.
- the centralized header module 9012 is configured to process the user plane data based on the estimated authorization value to obtain a PDCP PDU, where the centralized header module 9012 is configured to process the to-be-transmitted based on the estimated authorization value.
- a certain amount of PDU SDUs in the user plane data the difference between the size of the certain quantity of PDU SDUs and the estimated authorized total amount in the N TTIs is less than a first preset threshold, and the estimated authorized total amount in each TTI is an estimated authorization value.
- the centralized header module 9012 is configured to process the user plane data based on the estimated authorization value, where the centralized header module 9012 is configured to identify the priority of the user plane data, and the priority is higher.
- User plane data is assigned to the PDCP SN.
- the centralized header module 9012 is configured to process the user plane data based on the estimated authorization value, where the centralized header module 9012 is configured to separately add each PDCP SDU in the certain amount of PDCP SDUs.
- a PDCP header, an RLC header, and a MAC header the PDCP header includes a PDCP SN
- the user plane data is a PDCP SDU;
- the sequence allocation module 9025 is configured to process the PDCP PDU, including: the RLC layer will be an RLC SN Write to the RLC header.
- the MAC sub-header and the corresponding user plane data occupy a continuous storage space
- the MAC PDU includes the MAC sub-header, the RLC header, and the PDCP header.
- the MAC sub-header, the RLC header, the PDCP header, and the corresponding PDCP SDU occupy a continuous storage space.
- the cache module 9022 is configured to store the user plane data
- the retransmission module 9027 is configured to retransmit the user plane data indicated by the status report to the base station, where the status
- the report includes a packet data convergence protocol negative acknowledgement sequence number RLC NACK SN
- the RLC NACK SN includes a first RLC NACK SN, a second RLC NACK SN
- the first RLC NACK SN indicates a packet data convergence protocol before the RLC SN
- the RLC PDU indicated by the sequence number has been received
- the second RLC NACK SN indicates that the RLC PDU indicated by the RLC SN is not received
- the RLC PDU indicated by the radio link control protocol sequence number before the RLC SN In addition to the RLC PDUs indicated by the respective RLC NACK SNs, other RLC PDUs have been received.
- the first transceiver module 9011 is further configured to timeout packet loss.
- the packet loss module 9013 is configured to generate a PDCP control PDU, and the The PDCP Control PDU is sent to the base station, wherein the PDCP Control PDU is used to indicate to the base station which user plane data is lost.
- the PDCP control PDU includes: a first PDCP SN and a second PDCP SN, wherein the first PDCP SN and the second PDCP SN are used together to indicate that the sequence number is located in the first PDCP SN and the second PDCP SN A packet loss occurred between the PDCP PDUs.
- the PDCP Control PDU further includes a common bit, where the common bit is used to indicate a high common level of both the first PDCP SN and the second PDCP SN.
- the logical channel number configured on the dual connectivity of the split bearer is the same; wherein the MAC subhead is the PDCP of the terminal.
- the layer is generated based on the logical channel number.
- the device 90 When the device 90 is a base station, the device 90 is configured to implement the functions of the base station in the method embodiment of FIG. 16, and the specific implementation process is as follows:
- the third transceiver module 9031 is configured to receive a MAC PDU sent by the terminal, where the MAC sub-header and the corresponding user plane data occupy a continuous storage space;
- the packet unpacking module 9034 is configured to unpack the MAC PDU, remove the MAC subheader, to obtain a MAC SDU;
- the third transceiver module 9031 is further configured to send the MAC SDU (also referred to as RLC PDU) to the second transceiver module 9021;
- the reordering module 9025 is configured to remove an RLC header from the RLC PDU, obtain an RLC SDU, and reorder the RLC SDU.
- the retransmission module 9026 reassembles the reordered RLC SDUs
- the second transceiver module 9021 is configured to send the reassembled RLC SDU to the first transceiver module 9011;
- the first transceiver module 9011 is configured to send the PDCP SDU to the upper layer; when the user equipment is the access network device, the first transceiver module 9011 is configured to send the PDCP SDU to the network.
- the retransmission module 9026 when the reordering timer expires, the retransmission module 9026 is used to the terminal.
- An RLC Status PDU is sent, the RLC Status PDU being used to indicate which RLC PDU or RLC PDU segment is not received by the base station.
- the RLC status PDU is constructed before the base station obtains the actual authorization value; in the process of constructing the RLC status PDU as a MAC PDU, if the data packet length of the MAC PDU is greater than the actual authorized value, The base station intercepts the RLC status PDU based on the actual grant value and discards the portion that exceeds the actual grant value.
- the RLC status PDU includes a packet data convergence protocol negative acknowledgement sequence number RLC NACK SN
- the RLC NACK SN includes a first RLC NACK SN, a second RLC NACK SN
- the first RLC NACK SN indicates that the RLC SN is ranked in the RLC SN
- the RLC PDU indicated by the previous packet data convergence protocol sequence number has been received
- the second PDCP NACK SN indicates that the RLC PDU indicated by the RLC SN is not received
- the radio link control protocol preceded by the RLC SN In the RLC PDU indicated by the sequence number, in addition to the RLC PDU indicated by each RLC NACK SN, other RLC PDUs have been received.
- the method includes: when the MAC layer of the base station detects that the size indicated by the MAC sub-head is greater than the MAC sub-head corresponding RLC PDU.
- the packet decapsulation module 9034 determines that the MAC subhead corresponding RLC PDU is an RLC PDU first segment, and the RLC PDU first segment is used to implement reassembly of the RLC SDU.
- the reordering module 9025 is further configured to abandon the PDCP PDU indicated by the PDCP control PDU, the PDCP control PDU. It is used to indicate which of the PDCP PDUs in the terminal is lost.
- an embodiment of the present invention further provides a communication system, where the communication system includes: a terminal 1001 and a base station 1002.
- the terminal 1001 and the base station 1002 respectively correspond to the terminal and the base station in the method embodiment of FIG. 8, or the terminal 1001 and the base station 1002 respectively correspond to the terminal and the base station in the method embodiment of FIG. 16.
- the terminal 1001 may be a terminal characterized by the device 70 shown in FIG. 21, and the base station 1002 may be a base station characterized by the device shown in FIG. 21.
- the terminal 1001 may be a terminal characterized by the device 80 shown in FIG. 22, and the base station 1002 may be a base station characterized by the device 80 shown in FIG. 22. It can be understood that the device 80 configures the foregoing first user.
- the protocol protocol that is, the terminal and the base station are configured with a first user plane protocol architecture.
- terminal 1001 may be a terminal characterized by device 90 shown in FIG. 22, and base station 1002 may be a base station characterized by device 90 shown in FIG. It can be understood that the device 90 configures the foregoing second user plane protocol architecture, that is, the terminal and the base station both configure a second user plane protocol architecture.
- the device 80 and the device 90 are grouped into the same device, that is, the device is configured with the foregoing first user plane protocol architecture and the foregoing second user plane protocol architecture.
- the device may be a sending device or a receiving device, and the device may select a user plane protocol architecture to perform processing of user plane data based on an actual application scenario.
- an embodiment of the present invention further provides a baseband chip, the baseband chip being coupled to a transceiver, the baseband chip being used to:
- the baseband chip is configured to estimate a data packet length that can be obtained by the base station when the data transmission is currently performed, and the method includes: the baseband chip is configured to obtain, at the medium access control MAC layer, a current data transmission to obtain a data packet authorized by the base station. length;
- the baseband chip is configured to group the user plane data based on the estimated authorization value to obtain a first group of packet data, including: the baseband chip is configured to: at a specific layer, based on the estimated authorization value
- the second group of packet data is pre-packet data;
- the MAC layer at the MAC layer concatenates the pre-group packet data into a medium access control layer protocol data unit MAC PDU based on the estimated authorization value, and uses the MAC PDU as the a set of packet data;
- the specific layer is a packet data convergence protocol PDCP layer, or the specific layer is a packet data convergence protocol PDCP layer and a radio link control RLC layer;
- the MAC PDU includes a MAC sub-header and user plane data corresponding to the MAC sub-header, and the user plane data corresponding to the MAC sub-header and the MAC sub-header occupy a continuous storage space.
- the baseband chip is configured to process, according to whether the data packet length of the first group of packet data matches the data packet length indicated by the actual authorization value, to process the first group of packet data, including:
- the baseband chip is configured to add a first length of data to the MAC PDU at the MAC layer, where the actual packet length indicated by the actual grant value is greater than a data packet length of the MAC PDU, the first length The first difference between the actual grant value and the packet length of the MAC PDU is equal.
- the baseband chip is configured to add padding data of a first length to the MAC PDU at a MAC layer, where the first difference is less than a first preset threshold;
- the baseband chip is configured to determine, at the MAC layer, whether the first difference matches the data packet length of the next pre-packet data; And the first difference value is matched with the data packet length of the next pre-packet data, and the next pre-packet data is added to the MAC PDU as the first length data; If the difference does not match the data packet length of the next pre-packet data, the data segment of the next pre-packet data is added to the MAC PDU as the data of the first length.
- the baseband chip is configured to process, according to whether the data packet length of the first group of packet data matches the data packet length indicated by the actual authorization value, to process the first group of packet data, including:
- the baseband chip is configured to reduce, by the MAC layer, the data of the second length at the MAC layer, where the data length indicated by the actual authorization value is smaller than the data packet length of the MAC PDU, the second length And the second difference between the data packet length of the MAC PDU and the actual grant value is the data segment of the MAC PDU.
- an embodiment of the present invention provides another baseband chip, the baseband chip being coupled to a transceiver, the baseband chip being used for:
- the transceiver Receiving, by the transceiver, a second group of packet data sent by the terminal; in the second group of packet data, the MAC subheader and its corresponding user plane data occupy a continuous storage space;
- the reordered and recombined user plane data is sent to the network through the transceiver.
- the baseband chip is configured to unpack the second group of packet data to obtain the user plane data, including:
- the baseband chip is configured to determine that the user plane data corresponding to the MAC subheader is a data segment, if the length of the data packet indicated by the MAC subheader is greater than the length of the data packet corresponding to the user plane data of the MAC subheader.
- the first segment of the data segment is used to implement reassembly of the user plane data.
- the baseband chip is used to reorder and recombine the user plane data, including:
- the baseband chip is configured to generate a PDCP status PDU, and the PDCP status PDU is sent to the terminal by the transceiver, where the PDCP status PDU is used to indicate that the base station is not received by the base station.
- the PDCP status PDU is constructed before the baseband chip determines an actual authorization value; if the PDCP status PDU is configured as a medium access control layer protocol data unit MAC PDU, if the data of the MAC PDU is If the packet length is greater than the actual authorized value, the baseband chip intercepts the PDCP status PDU based on the actual authorization value, and discards a portion exceeding the actual authorization value; wherein the actual authorization value is used to represent the The base station authorizes the packet length of the current transmission opportunity.
- MAC PDU medium access control layer protocol data unit
- the computer program product comprises one or more computer instructions which, when loaded and executed on a computer, produce, in whole or in part, a process or function according to an embodiment of the invention.
- the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable device.
- the computer instructions can be stored in a computer readable storage medium or transferred from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions can be from a network site, computer, server or data center Transmission to another network site, computer, server, or data center via wired (eg, coaxial cable, fiber optic, digital subscriber line) or wireless (eg, infrared, microwave, etc.).
- the computer readable storage medium can be any available media that can be accessed by a computer, or can be a data storage device such as a server, data center, or the like that includes one or more available media.
- the usable medium may be a magnetic medium (such as a floppy disk, a hard disk, a magnetic tape, etc.), an optical medium (such as a DVD, etc.), or a semiconductor medium (such as a solid state hard disk) or the like.
- a magnetic medium such as a floppy disk, a hard disk, a magnetic tape, etc.
- an optical medium such as a DVD, etc.
- a semiconductor medium such as a solid state hard disk
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例公开了用户面数据处理方法、相关设备及系统。该方法包括:终端获取待传输的用户面数据;估算当前进行数据传输时可获得基站授权的数据包长度,得到估算授权值;基于估算授权值对用户面数据进行组包,得到第一组包数据;接收基站发送的实际授权值,所述实际授权值表征了基站实际授权终端进行数据传输时的数据包长度;根据所述第一组包数据的数据包长度与实际授权值指示的数据包长度是否匹配,对第一组包数据进行处理,得到第二组包数据;向基站发送第二组包数据。实施本发明实施例,可解决现有协议架构中影响通信时延和通信速率的诸多桎梏,改善通信时延,实现用户面数据的快速传输。
Description
本发明涉及通信领域,尤其涉及一种用户面数据处理方法、相关设备及系统。
长期演进(long-term evolution,LTE)是第四代移动通信技术(4G)的主流技术,是由第三代合作伙伴计划(3rd Generation Partnership Project,3GPP)组织制定的通用移动通信系统(Universal Mobile Telecommunications System,UMTS)技术标准。目前,随着无线技术不断发展和人们需求的不断提升,人们对通信速率和时延的要求越来越高。虽然,目前LTE通信规格已经超过100Mbps,并正在快速持续攀升,但当前处理器等相关技术的处理能力的提升受相关技术演进的约束,在每一个演进时期都会有一个能力上限,这种能力制约用户通信需求的满足。例如,现有的4G网络处理能力有限,无法支持部分高清视频、增强现实、虚拟现实等业务。另外,目前的LTE架构由于在设计上的桎梏,已经不利于通信时延的改善。
人们需要在通信协议层面探索更有效的数据处理方式,在这种情况下,人们将目光朝向了第五代移动通信技术(5th-Generation,5G)。与前四代不同,5G并不是一个单一的无线技术,而是现有的无线通信技术的一个融合,5G通信系统也被称为“超4G网络(Beyond4G Network)”或“后LTE系统(Post LTE system)”。5G通信对通信速率和时延具有更高的要求,包括:(1)5G的传输速率要在4G的基础上提高10-100倍,体验速率能够达到0.1~1Gbps,峰值速率能够达到10Gbps;(2)时延降要低到4G的1/10或1/5,达到毫秒级水平等等。
2012年,欧盟正式启动5G研究项目,项目分为八个组,分别对场景需求、空口技术、多天线技术、网络架构、频谱分析、仿真及测试平台等方面进行深入研究;英国政府联合多家企业,创立5G创新中心,致力于未来用户需求、5G网络关键性能指标、核心技术的研究与评估验证;在韩国,由韩国科技部、ICT和未来计划部共同推动成立了韩国“5GFo-rum”,专门推动其国内5G进展;中国的工业和信息化部、发改委和科技部共同成立IMT-2020推进组,作为5G工作的平台,旨在推动中国自主研发的5G技术成为国际标准。
可见,对于5G技术的研究,许多国家或组织都在积极地进行中。如何在LTE演进基础上,改善通信时延,提高通信速率,是目前5G通信一个重要的技术挑战。
发明内容
本发明实施例提供了一种用户面数据处理方法、相关设备及系统,以改善通信时延,提高通信速率。
第一方面,本发明实施例提供了一种用户面数据处理方法,应用于终端侧,该方法包括:
终端的特定层获取待传输的用户面数据;所述特定层预设在所述终端的MAC层之上,所述特定层包括一个或者多个协议层;所述终端的MAC层估算当前传输机会获得基站授权
的字节数,得到估算授权值,所述估算授权值用于表征MAC层估算的基站授权当前传输机会的大小;所述终端的特定层基于估算授权值处理所述用户面数据,获得预组包数据;所述终端的MAC层基于所述估算授权值将所述预组包数据级联为MAC PDU,所述MAC PDU为第一组包数据,其中,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间;所述终端的MAC层基于所获取到的实际授权值处理所述第一组包数据,得到第二组包数据,所述第二组包数据的数据包长度匹配所述实际授权值,所述实际授权值用于表征所述基站授权当前传输机会的大小;所述终端向基站发送所述第二组包数据(即经过处理的MAC PDU)。
实施本发明实施例提供的一种用户面数据处理方法,终端可在时序上解耦组包的相关处理,终端在收到授权之前就可以先完成一部分组包相关处理,这样减少了收到授权时的处理脉冲的压力,均化用户面的处理压力,有利于时延改善,提升用户体验。
结合第一方面,在一些可能的实施例中,所述终端的MAC层估算当前传输机会获得基站授权的字节数,包括:
所述终端的MAC层根据授权日志、用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数和重传任务量中的一项或多项估算当前传输机会获得基站授权的字节数。
其中,所述授权日志为终端所保存的基站往次授权记录,授权日志中记录有在预设时间段内基站实际授权值与用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数、重传任务量的对应关系。在一具体的实施例中,MAC层基于所述对应关系根据一定的算法(例如平均值算法)进行估算,从而获得对本次资源传输的估算结果(即估算授权值);在另一具体实施例中,赋予MAC层调度器的功能,所述MAC层可基于当前的用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数和重传任务量等等影响基站授权的参数进行估算,从而获得估算授权值。
结合第一方面,在一些可能的实施例中,所述终端的MAC层基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,包括:
(1)在所述实际授权值大于所述MAC PDU的数据包长度的情况下,所述终端的MAC层计算所述实际授权值与所述MAC PDU的数据包长度的第一差值,所述终端的MAC层对所述MAC PDU增加第一长度的数据,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述第一长度的数据的大小与所述第一差值相等;
其中,在所述第一差值小于第一预设阈值的情况下,所述第一长度的数据为填充位(padding)数据;
其中,在所述第一差值大于第一预设阈值的情况下,判断该第一差值是否匹配下一个PDCP PDU的大小;若匹配,则所述第一长度的数据为下一个PDCP PDU;若不匹配,则所述第一长度的数据为下一个PDCP PDU分段;所述终端的MAC层对所述MAC PDU增加第一长度的数据,具体为:所述终端的MAC层对所述MAC PDU级联所述下一个PDCP PDU或下一个PDCP PDU分段;
(2)在所述实际授权值正好等于MAC PDU的数据包长度时,终端可立即将所述MAC PDU进行上行传输,在该情况下,所述终端实现近乎零时延组包;
(3)在所述实际授权值小于所述MAC PDU的数据包长度的情况下,所述终端的MAC层
计算所述所述MAC PDU的数据包长度与实际授权值的第二差值,所述终端的MAC层对所述MAC PDU减少第二长度的数据,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,其中,所述第二长度的数据为MAC PDU分段,所述MAC PDU分段为对该MAC PDU进行分段而获得的,所述MAC PDU分段的大小与所述第二差值相等。
需要说明的是,如果MAC PDU分段是首分段,则MAC子头可以不增加分段指示和分段偏移指示,避免数据包的二次处理;如果MAC PDU分段不是首分段,则在MAC子头需要增加分段指示和分段偏移指示,以便于后续在基站中实现数据分段的识别和重组。
在本发明实施例中,第一长度的数据/第二长度的数据表示具有一定字节数(或比特数)的数据,例如,第一长度的数据为8字节的数据;同样,MAC PDU的数据包长度表示MAC PDU(数据包)一定字节数的数据,例如,MAC PDU的数据包长度为60字节,表示MAC PDU具有60字节的数据。
可以看出,实施本发明实施例,能够有效压缩终端收到实际授权后的组包处理量,削减收到实际授权的处理脉冲,均化用户面数据的处理压力,有利于时延改善,提升用户体验。
结合第一方面,在一些实施例中,所述终端的特定层基于估算授权值处理所述用户面数据,获得预组包数据,包括:
所述终端的所述PDCP层基于所述估算授权值处理所述待传输的用户面数据中一定量的PDU SDU,所述一定量的PDU SDU的大小与N个TTI内估算授权总量的差值小于第一预设阈值,每个TTI内估算授权总量为估算授权值与授权次数的乘积,所述授权次数为MAC层估算的在一个TTI内获得基站实际授权的次数,所述N为大于0的正数,例如,所述N=2,所述终端预先处理2个TTI的PDU SDU,这样做的目的是为了确保在MAC层在后续的资源调度中始终有足够预组包数据。PDCP层在一个调度周期完成的时候触发新的预处理,使得MAC估算授权开始组包的时候始终有可用的完成预处理的数据包。
结合第一方面,在一些具体的实施例中,所述特定层为PDCP层;本发明实施例提供了第一种用户面协议架构,至少包括PDCP层、MAC层。
在本发明实施例提供第一种用户面协议架构中,PDCP层具有集中加头、分段、重组、重排序、重传、状态报告、丢包报告等功能,其中,PDCP层的集中加头操作包括加PDCP头和MAC子头,不加RLC头;MAC具有级联、估算授权、组包/解包、分段检测和去除MAC子头等功能。由于加头功能集中部署到PDCP层,故MAC层将略过加头处理(即不进行加头)。对于RLC层,在一具体实施例中,第一种用户面协议架构中不具有RLC层,也就是PDCP层直接将数据发送至MAC层;在一具体实施例中,第一种用户面协议架构中具有RLC层,但RLC层不对数据做任何改变,仅仅用于将PDCP层的数据透传到MAC层。
具体的,终端的PDCP层获取待传输的用户面数据;所述终端的PDCP层基于估算授权值处理所述用户面数据,获得MAC SDU。
在具体的实施例中,当缓冲区的数据的总量远大于估算授权值时,PDCP层对用户面数据进行控制,PDCP层不会触发全部的用户面数据进入处理队列,而是按预设的规则触发其中一部分数据进入处理队列进行按序处理。
例如,所述预设的规则包括预先赋予用户面数据优先级,并触发优先级较高的用户面
数据进入处理队列,优先为所述优先级较高的用户面数据分配PDCP SN,并进入后续的处理环节。
具体的,所述终端的PDCP层对PDCP SDU进行集中加头,包括:对每一个PDCP SDU分别增加PDCP头和MAC头,所述PDCP头中包含所述PDCP SN。由于在PDCP层进行加密的时候就可以为用户面数据增加所需的各层头信息(PDCP头和MAC头),这些可以与加密的硬化加速放到一起来处理,减少了处理器开销。
在经过MAC层处理后,在所述MAC PDU中,所述MAC子头、所述PDCP头以及对应的所述PDCP SDU占用连续的存储空间。这样用户面的各层头信息(MAC子头、所述PDCP头)都是与数据(PDCP SDU)连续存储的,这样,可以大大减少了后续收到授权发起组包时的节点数,提升组包效率。
在本发明实施例中,所述PDCP层具有缓冲区,所述缓冲区还用于存储所述用户面数据;在确认模式(Acknowledged Mode,AM)下,终端在接收到所述基站反馈的状态报告的情况下,所述终端的PDCP层向基站重传所述状态报告所指示的用户面数据,其中,所述状态报告包括分组数据汇聚协议否定应答序号PDCP NACK SN,所述PDCP NACK SN包括第一PDCP NACK SN、第二PDCP NACK SN;所述第一PDCP NACK SN表示排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU都已收到;所述第二PDCP NACK SN表示该PDCP SN指示的PDCP PDU没有收到,且,排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU中,除了各个PDCP NACK SN指示的PDCP PDU外,其他的PDCP PDU均已经收到。
结合第一方面,在一些可能的实施例中,所述特定层包括PDCP层和RLC层;本发明实施例提供了第二种用户面协议架构,第二种用户面协议架构至少包括PDCP层、RLC层和MAC层,PDCP具有集中加头功能,集中加头操作包括加PDCP头、RLC头和MAC子头;RLC层具有分段、重组、重排序、重传、状态报告、丢包报告和去除RLC子头等功能,由于加头功能集中部署到PDCP层,故RLC层将略过加头处理;MAC具有级联、估算授权、组包/解包、分段检测和去除MAC子头等功能。由于加头功能集中部署到PDCP层,故MAC层也将略过加头处理。
具体的,终端的PDCP层获取待传输的用户面数据;所述终端的PDCP层基于估算授权值处理所述用户面数据,获得PDCP PDU;所述RLC层为所述PDCP PDU分配RLC SN,并将所述RLC SN写入所述RLC头,获得RLC PDU,并将所述RLC PDU(又称为MAC SDU)发送至MAC层进行后续处理。
其中,在所述MAC PDU中,MAC子头、RLC头、PDCP头以及对应的所述PDCP SDU占用连续的存储空间。这样用户面的各层头信息(MAC子头、RLC头、所述PDCP头)都是与数据(PDCP SDU)连续存储的,这样,可以大大减少了后续收到授权发起组包时的节点数,提升组包效率。
本发明实施例中,所述RLC层还具有缓冲区,所述缓冲区用于存储所述用户面数据;
在AM模式下,终端接收到所述基站的状态报告的情况下,所述终端的RLC层向基站重传所述状态报告所指示的用户面数据,其中,所述状态报告包括分组数据汇聚协议否定应答序号RLC NACK SN,所述RLC NACK SN包括第一RLC NACK SN、第二RLC NACK SN,所述第一RLC NACK SN表示排在该RLC SN之前的分组数据汇聚协议序列号指示的RLC PDU都
已收到,所述第二RLC NACK SN表示该RLC SN指示的RLC PDU没有收到,且,排在该RLC SN之前的无线链路控制协议序列号指示的RLC PDU中,除了各个RLC NACK SN指示的RLC PDU外,其他的RLC PDU均已经收到。
在本发明实施例提供的第一种用户面协议架构或第二种用户面协议架构中,终端的PDCP层可以用于超时丢包。PDCP层在接收到用户面数据后,将所述用户面数据放在缓冲区,并为用户面数据分配PDCP SN,如果用户面数据发生丢包,那么,PDCP层相应生成一个丢包报告(本发明实施例中又称为PDCP控制PDU),在本发明实施例中称为PDCP控制PDU,用于通知接收接收该用户面数据发生丢包,避免基站对PDCP PDU的等待。
其中,所述PDCP控制PDU包括:第一PDCP SN、第二PDCP SN,其中,所述第一PDCP SN和所述第二PDCP SN共同用于指示序列号位于第一PDCP SN和第二PDCP SN之间的PDCP PDU发生丢包。
具体的,所述PDCP控制PDU还包括共同位(common bits),所述共同位用于指示所述第一PDCP SN和所述第二PDCP SN两者的高位共同位。在本发明的实施例中,PDCP层抽取该PDCP控制PDU中各个序列号SN之间的高位共同位部分来构建共同位(common bits)。也就是说,可以根据所有的丢包范围{Start_SN~End_SN}的区间表示域来确定common bits。
在PDCP SN长度比较长时,在PDCP控制PDU数据包格式中采用common bits可以实现有效减少PDCP控制PDU的长度,加快组包速度,提升传输效率。
本发明实施例中,在在LTE系统双连接(Dual Connection,DC)模式下的应用场景中,对于分离承载(Split bearer),双连接上配置的逻辑信道号保持相同,不管数据从哪个逻辑信道上传输,MAC子头是相同的,可以预先确定MAC子头。这样,MAC层需要进行数据传输时,MAC PDU中的MAC子头上信道信息保持一致。所以,数据在PDCP层可进行预先集中加头,为数据增加各层头信息,进而可以加快组包速度,提升数据传输效率。
第二方面,本发明实施例提供了又一种用户面数据处理方法,应用于基站侧,该方法包括:
基站的MAC层接收终端发送的MAC PDU,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间;所述基站的MAC层解包所述MAC PDU,以得到MAC SDU,并将所述MAC SDU发送至特定层;所述特定层位于所述MAC层之上,所述特定层包括一个或者多个协议层;所述特定层重排序和重组所述MAC SDU,并将经过重排序和重组的MAC SDU发送至高层或者网络。
结合第二方面,在本发明具体实施例中,所述特定层为PDCP层,也即是是说,在本发明提供的第一种用户面协议架构至少包括PDCP层和MAC层。
在第一种用户面协议架构下,MAC层接收终端发送的MAC PDU,解包所述MAC PDU,去除MAC PDU中的MAC子头,以得到MAC SDU,并将MAC SDU发送至PDCP层;PDCP层去除所述MAC SDU中的PDCP头,获得PDCP SDU,对所述PDCP SDU进行重排序,将经过重排序的述PDCP SDU进行重组,将经过重组的PDCP SDU发送至网络。
在第一种用户面协议架构下,在重排序定时器超时的情况下,所述基站的PDCP层向终端发送PDCP状态PDU(本实施例中又称为状态报告),所述PDCP状态PDU用于指示哪个
/哪些PDCP PDU或PDCP PDU分段未被所述基站接收。
其中,所述PDCP状态PDU在所述基站获取实际授权值之前构建;在所述PDCP状态PDU构建为MAC PDU的过程中,如果该MAC PDU的数据包长度大于所述实际授权值,则所述基站基于所述实际授权值截取该PDCP状态PDU,并将超出所述实际授权值的部分丢弃。
其中,所述PDCP状态PDU包括分组数据汇聚协议否定应答序号PDCP NACK SN,所述PDCP NACK SN包括第一PDCP NACK SN、第二PDCP NACK SN,所述第一PDCP NACK SN表示排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU都已收到,所述第二PDCP NACK SN表示该PDCP SN指示的PDCP PDU没有收到,且,排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU中,除了各个PDCP NACK SN指示的PDCP PDU外,其他的PDCP PDU均已经收到。
由于PDCP状态PDU可以在基站授权之前构建,所以基站在检测到数据缺漏,需要发送端进行数据重传时,可以快速构建相应的状态报告反馈给发送端,从而使得发送端可以尽快实现数据的重传。由于重传机制是数据传输过程中数据完整性的重要保证,所以,实施本发明实施例可以加快数据传输速率,降低通信时延,避免在反馈过程中无谓的等待,确保数据可以快速完整地传输。
在第一种用户面协议架构下,其中,解包时,MAC层以MAC PDU的长度为基准进行解包,解包超出该长度时,MAC层终止解包,并可直接将处在最后的不完整的数据丢弃。解包后,在所述MAC层检测到所述MAC子头指示的大小大于MAC子头对应PDCP PDU的大小的情况下,所述基站的MAC层判定所述MAC子头对应PDCP PDU为PDCP PDU首分段。
在具体的实施例中,基站收到MAC PDU后,依次解包获得MAC控制元和PDCP PDU等数据。对于最后一个PDCP PDU,MAC层检索MAC子头,判断MAC子头指示的数据长度是否超出了PDCP PDU的长度:
(1)若否,则判断该PDCP PDU为完整的PDCP PDU,或者该PDCP PDU中所存在的末分段长度是匹配的;
(2)若是,则判断该PDCP PDU为PDCP PDU分段,这种情况下,检索PDCP PDU的PDCP头中是否具有分段指示和分段偏移指示。如果具有分段指示和分段偏移指示,则基于分段指示和分段偏移指示判断该PDCP PDU为PDCP PDU中间分段还是末分段;如果不具有分段指示和分段偏移指示,则判断该PDCP PDU为PDCP PDU首分段。
结合第二方面,在具体的实施例中,所述特定层包括PDCP层和RLC层;也就是说,本发明实施例提供的第二种用户面协议架构至少包括PDCP层、RLC层和MAC层。
在这种协议架构下,MAC层接收终端发送的MAC PDU,解包所述MAC PDU,去除MAC子头,以得到MAC SDU,并将所述MAC SDU(又称为RLC PDU)发送至RLC层;RLC层去除RLC头,获得RLC SDU,并对RLC SDU进行重排序,将经过重排序的RLC SDU进行重组,并将经过重组的RLC SDU发送至PDCP层;
在第二种用户面协议架构下,当在重排序定时器超时,所述基站的RLC层向所述终端发送RLC状态PDU(本实施例中又称为状态报告),所述RLC状态PDU用于指示哪个/哪些RLC PDU或RLC PDU分段未被所述基站接收。
其中,所述RLC状态PDU在所述基站获取实际授权值之前构建;在所述RLC状态PDU
构建为MAC PDU的过程中,如果该MAC PDU的数据包长度大于所述实际授权值,则所述基站基于所述实际授权值截取该RLC状态PDU,并将超出所述实际授权值的部分丢弃。
其中,所述RLC状态PDU包括分组数据汇聚协议否定确认序号RLC NACK SN,所述RLC NACK SN包括第一RLC NACK SN、第二RLC NACK SN,所述第一RLC NACK SN表示排在该RLC SN之前的分组数据汇聚协议序列号指示的RLC PDU都已收到,所述第二PDCP NACK SN表示该RLC SN指示的RLC PDU没有收到,且,排在该RLC SN之前的无线链路控制协议序列号指示的RLC PDU中,除了各个RLC NACK SN指示的RLC PDU外,其他的RLC PDU均已经收到。
由于RLC状态PDU可以在基站授权之前构建,所以基站在检测到数据缺漏,需要发送端进行数据重传时,可以快速构建相应的状态报告反馈给发送端,从而使得发送端可以尽快实现数据的重传。由于重传机制是数据传输过程中数据完整性的重要保证,所以,实施本发明实施例可以加快数据传输速率,降低通信时延,避免在反馈过程中无谓的等待,确保数据可以快速完整地传输。
在第二种用户面协议架构下,在所述基站的MAC层解包所述MAC PDU以得到RLC PDU之后,在所述基站的MAC层检测到所述MAC子头指示的大小大于MAC子头对应RLC PDU的大小的情况下,所述基站的MAC层判定所述MAC子头对应RLC PDU为RLC PDU首分段,所述RLC PDU首分段用于实现所述RLC SDU的重组。
在本发明实施例提供的第一种用户面协议架构或第二种用户面协议架构中,所述基站的PDCP层在接收到终端所发送的PDCP控制PDU的情况下,放弃等待所述PDCP控制PDU所指示的PDCP PDU,其中,所述PDCP控制PDU用于指示所述终端中哪个/哪些PDCP PDU发生丢包。
第三方面,本发明实施例提供了一种终端,包括:收发器、存储器和与存储器耦合的处理器。收发器、存储器和处理器可通过总线或者其它方式连接。其中,收发器用于向外部发送数据、或者用于从外部接收数据。存储器用于存储程序代码,处理器用于调用并运行存储于存储器中的程序代码以执行第一方面所述的方法,包括:
通过所述收发器获取待传输的用户面数据;所述特定层预设在所述终端的MAC层之上,所述特定层包括一个或者多个协议层;估算当前传输机会获得基站授权的字节数,得到估算授权值,所述估算授权值用于表征MAC层估算的基站授权当前传输机会的大小;通过基于估算授权值处理所述用户面数据,获得预组包数据;通过基于所述估算授权值将所述预组包数据级联为MAC PDU,其中,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间;通过所述终端的MAC层基于所获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述实际授权值用于表征所述基站授权当前传输机会的大小;通过所述收发器向基站发送所述经过处理的MAC PDU。
结合第三方面,在可能的实施例中,所述处理器执行通过所述终端的MAC层估算当前传输机会获得基站授权的字节数,包括:
所述处理器执行通过所述终端的MAC层根据授权日志、用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数和重传任务量中的一项或多项估算当前传输机会获得基站授权的字节数。
结合第三方面,在可能的实施例中,所述处理器执行通过所述终端的MAC层基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,包括:
在所述实际授权值大于所述MAC PDU的数据包长度的情况下,所述处理器执行通过所述终端的MAC层计算所述实际授权值与所述MAC PDU的数据包长度的第一差值,所述终端的MAC层对所述MAC PDU增加第一长度的数据,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述第一长度的数据的大小与所述第一差值相等。
结合第三方面,在可能的实施例中,在所述第一差值小于第一预设阈值的情况下,所述第一长度的数据为填充位数据;所述处理器执行通过所述终端的MAC层对所述MAC PDU增加第一长度的数据,具体为:所述处理器执行通过所述终端的MAC层对所述MAC PDU增加填充位数据;
在所述第一差值大于第一预设阈值的情况下,判断该第一差值是否匹配下一个PDCP PDU的大小;若匹配,则所述第一长度的数据为为下一个PDCP PDU;若不匹配,则所述第一长度的数据为下一个PDCP PDU分段;所述处理器执行通过所述终端的MAC层对所述MAC PDU增加第一长度的数据,具体为:所述处理器执行通过所述终端的MAC层对所述MAC PDU级联所述下一个PDCP PDU或下一个PDCP PDU分段。
结合第三方面,在可能的实施例中,所述处理器执行通过所述终端的MAC层基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,包括:在所述实际授权值小于所述MAC PDU的数据包长度的情况下,所述处理器执行通过所述终端的MAC层计算所述所述MAC PDU的数据包长度与实际授权值的第二差值,所述终端的MAC层对所述MAC PDU减少第二长度的数据,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,其中,所述第二长度的数据为MAC PDU分段,所述MAC PDU分段为对该MAC PDU进行分段而获得的,所述MAC PDU分段的大小与所述第二差值相等。
结合第三方面,在可能的实施例中,所述特定层为PDCP层;
所述处理器执行通过终端的特定层获取待传输的用户面数据,具体为:所述处理器执行通过终端的PDCP层获取待传输的用户面数据;
所述处理器执行通过所述终端的特定层基于估算授权值处理所述用户面数据,获得预组包数据,具体为:所述处理器执行通过所述终端的PDCP层基于估算授权值处理所述用户面数据,获得MAC SDU。
结合第三方面,在可能的实施例中,所述处理器执行通过所述终端的特定层基于估算授权值处理所述用户面数据,获得预组包数据,包括:
所述处理器执行通过所述终端的所述PDCP层基于所述估算授权值处理所述待传输的用户面数据中一定量的PDU SDU,所述一定量的PDU SDU的大小与N个TTI内估算授权总量的差值小于第一预设阈值,每个TTI内估算授权总量为估算授权值与授权次数的乘积,所述授权次数为MAC层估算的在一个TTI内获得基站实际授权的次数。
结合第三方面,在可能的实施例中,所述处理器执行通过所述终端的PDCP层基于估算授权值处理所述用户面数据,包括:所述处理器执行通过所述终端的PDCP层识别所述用户面数据的优先级,优先为优先级较高的用户面数据分配PDCP SN。
结合第三方面,在可能的实施例中,所述处理器执行通过所述终端的PDCP层基于估算授权值处理所述用户面数据,包括:所述处理器执行通过所述终端的PDCP层对所述一定量的PDCP SDU中的每一个PDCP SDU分别增加PDCP头和MAC头,所述PDCP头中包含所述PDCP SN;其中,所述用户面数据为PDCP SDU。
结合第三方面,在可能的实施例中,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间,具体为:在所述MAC PDU中,所述MAC子头、所述PDCP头以及对应的所述PDCP SDU占用连续的存储空间。
结合第三方面,在可能的实施例中,所述通过处理器还用于通过所述PDCP层存储所述用户面数据;所述收发器还用于接收所述基站反馈的第一状态报告;
在通过所述收发器接收到所述基站反馈的第一状态报告的情况下,所述处理器执行通过所述终端的PDCP层向基站重传所述第一状态报告所指示的用户面数据,其中,所述第一状态报告包括分组数据汇聚协议否定应答序号PDCP NACK SN,所述PDCP NACK SN包括第一PDCP NACK SN、第二PDCP NACK SN;所述第一PDCP NACK SN表示排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU都已收到;所述第二PDCP NACK SN表示该PDCP SN指示的PDCP PDU没有收到,且,排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU中,除了各个PDCP NACK SN指示的PDCP PDU外,其他的PDCP PDU均已经收到。
结合第三方面,在可能的实施例中,所述特定层为PDCP层和RLC层;
所述处理器执行通过终端的特定层获取待传输的用户面数据,具体为:所述处理器执行通过终端的PDCP层获取待传输的用户面数据;
所述处理器执行通过所述终端的特定层基于估算授权值处理所述用户面数据,包括:所述处理器执行通过所述终端的PDCP层对所述一定量的PDCP SDU中的每一个PDCP SDU分别增加PDCP头、RLC头和MAC头;所述PDCP头中包含PDCP SN;所述用户面数据为PDCP SDU;所述处理器执行通过所述RLC层将RLC SN写入所述RLC头。
结合第三方面,在可能的实施例中,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间,具体为:在所述MAC PDU中,所述MAC子头、RLC头、所述PDCP头以及对应的所述PDCP SDU占用连续的存储空间。
结合第三方面,在可能的实施例中,所述处理器还用于通过所述RLC层存储所述用户面数据;所述收发器还用于接收所述基站反馈的第二状态报告;
在通过所述收发器接收到所述基站反馈的第二状态报告的情况下,所述处理器执行通过所述终端的RLC层向基站重传所述第二状态报告所指示的用户面数据,其中,所述第二状态报告包括分组数据汇聚协议否定应答序号RLC NACK SN,所述RLC NACK SN包括第一RLC NACK SN、第二RLC NACK SN,所述第一RLC NACK SN表示排在该RLC SN之前的分组数据汇聚协议序列号指示的RLC PDU都已收到,所述第二RLC NACK SN表示该RLC SN指示的RLC PDU没有收到,且,排在该RLC SN之前的无线链路控制协议序列号指示的RLC PDU中,除了各个RLC NACK SN指示的RLC PDU外,其他的RLC PDU均已经收到。
结合第三方面,在可能的实施例中,所述处理器还用于:在所述终端的PDCP层超时丢包的情况下,通过所述终端的PDCP层生成PDCP控制PDU,并将所述PDCP控制PDU通过
所述收发器发送至基站,所述PDCP控制PDU用于向基站指示哪个/哪些用户面数据发生丢包。
其中,所述PDCP控制PDU包括:第一PDCP SN、第二PDCP SN,其中,所述第一PDCP SN和所述第二PDCP SN共同用于指示序列号位于第一PDCP SN和第二PDCP SN之间的PDCP PDU发生丢包。
结合第三方面,在可能的实施例中,所述PDCP控制PDU还包括共同位,所述共同位用于指示所述第一PDCP SN和所述第二PDCP SN两者的高位共同位。
结合第三方面,在可能的实施例中,在所述用户面数据为分离承载split bear的情况下,在所述分离承载的双连接上配置的逻辑信道号相同;所述MAC子头所述终端的PDCP层基于所述逻辑信道号生成的。
第四方面,本发明实施例提供了一种基站,包括:收发器、存储器和与存储器耦合的处理器。收发器、存储器和处理器可通过总线或者其它方式连接。其中,收发器用于向外部发送数据、或者用于从外部接收数据。存储器用于存储程序代码,处理器用于调用并运行存储于存储器中的程序代码以执行第二方面所述的方法,包括:
通过所述收发器接收终端发送的MAC PDU,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间;解包所述MAC PDU,以得到MAC SDU,并将所述MAC SDU发送至特定层;所述特定层位于所述MAC层之上,所述特定层包括一个或者多个协议层;通过所述特定层重排序和重组所述MAC SDU,并通过所述收发器将经过重排序和重组的MAC SDU发送至网络。
结合第四方面,在可能的实施例中,所述特定层为PDCP层;
所述处理器执行通过所述特定层重排序和重组所述MAC SDU,具体为:所述处理器执行通过所述PDCP层重排序和重组PDCP PDU。
结合第四方面,在可能的实施例中,所述处理器执行通过所述基站的PDCP层重排序和重组所述PDCP PDU,还包括:在重排序定时器超时的情况下,所述处理器执行通过所述基站的PDCP层向终端发送PDCP状态PDU,所述PDCP状态PDU用于指示哪个/哪些PDCP PDU或PDCP PDU分段未被所述基站接收。
结合第四方面,在可能的实施例中,所述PDCP状态PDU在所述基站获取实际授权值之前构建;在所述PDCP状态PDU构建为MAC PDU的过程中,如果该MAC PDU的数据包长度大于所述实际授权值,则所述处理器还用于基于所述实际授权值截取该PDCP状态PDU,并将超出所述实际授权值的部分丢弃。
其中,所述PDCP状态PDU包括分组数据汇聚协议否定应答序号PDCP NACK SN,所述PDCP NACK SN包括第一PDCP NACK SN、第二PDCP NACK SN,所述第一PDCP NACK SN表示排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU都已收到,所述第二PDCP NACK SN表示该PDCP SN指示的PDCP PDU没有收到,且,排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU中,除了各个PDCP NACK SN指示的PDCP PDU外,其他的PDCP PDU均已经收到。
结合第四方面,在可能的实施例中,在所述处理器执行通过所述基站的MAC层解包所述MAC PDU之后,包括:在所述基站的MAC层检测到所述MAC子头指示的大小大于MAC子
头对应PDCP PDU的大小的情况下,所述处理器执行通过所述基站的MAC层判定所述MAC子头对应PDCP PDU为PDCP PDU首分段,所述PDCP PDU首分段用于实现所述PDCP SDU的重组。
结合第四方面,在可能的实施例中,所述特定层包括PDCP层和RLC层;
所述处理器执行通过所述特定层重排序和重组所述MAC SDU,具体为:所述处理器执行通过所述RLC层重排序和重组RLC PDU。
结合第四方面,在可能的实施例中,所述处理器执行通过所述基站的RLC层重排序所述RLC PDU,还包括:在重排序定时器超时的情况下,所述处理器执行通过所述基站的RLC层向所述终端发送RLC状态PDU,所述RLC状态PDU用于指示哪个/哪些RLC PDU或RLC PDU分段未被所述基站接收。
结合第四方面,在可能的实施例中,所述RLC状态PDU在所述基站获取实际授权值之前构建;在所述RLC状态PDU构建为MAC PDU的过程中,如果该MAC PDU的数据包长度大于所述实际授权值,则所述处理器还用于基于所述实际授权值截取该RLC状态PDU,并将超出所述实际授权值的部分丢弃。
其中,所述RLC状态PDU包括分组数据汇聚协议否定确认序号RLC NACK SN,所述RLC NACK SN包括第一RLC NACK SN、第二RLC NACK SN,所述第一RLC NACK SN表示排在该RLC SN之前的分组数据汇聚协议序列号指示的RLC PDU都已收到,所述第二PDCP NACK SN表示该RLC SN指示的RLC PDU没有收到,且,排在该RLC SN之前的无线链路控制协议序列号指示的RLC PDU中,除了各个RLC NACK SN指示的RLC PDU外,其他的RLC PDU均已经收到。
结合第四方面,在可能的实施例中,在所述处理器执行通过所述基站的MAC层解包所述MAC PDU以得到RLC PDU之后,包括:在所述基站的MAC层检测到所述MAC子头指示的大小大于MAC子头对应RLC PDU的大小的情况下,所述处理器执行通过所述基站的MAC层判定所述MAC子头对应RLC PDU为RLC PDU首分段,所述RLC PDU首分段用于实现所述RLC SDU的重组。
结合第四方面,在可能的实施例中,所述收发器还用于接收到终端所发送的PDCP控制PDU,所述PDCP控制PDU用于指示所述终端中哪个/哪些PDCP PDU发生丢包;在通过所述收发器接收到终端所发送的PDCP控制PDU的情况下,所述收发器执行放弃等待所述PDCP控制PDU所指示的PDCP PDU。
第五方面,本发明实施例提供了一种装置,所述装置包括:PDCP模块和MAC模块。所述PDCP模块包括第一收发模块、缓存模块、集中加头模块、分段模块、丢包模块、重排序模块、重传模块和重组模块。所述MAC模块包括第二收发模块、估算授权模块、级联模块和组包解包模块。当所述装置为终端时,所述装置用于实现第一方面中所述终端的功能;当所述装置为基站时,所述装置用于实现第二方面中所述基站的功能,可以理解的,所述装置配置前述第一种用户面协议架构,即所述终端和所述基站均配置第一种用户面协议架构。
第六方面,本发明实施例提供了又一种装置,包括PDCP模块、RLC模块和MAC模块。所述PDCP模块包括第一收发模块、集中加头模块和丢包模块。所述RLC模块包括第二收发
模块、缓存模块、分段模块、序列分配模块、重排序模块、重传模块和重组模块。所述MAC模块包括第三收发模块、级联模块、估算授权模块和组包解包模块。当所述装置为终端时,所述装置用于实现第一方面中所述终端的功能;当所述装置为基站时,所述装置用于实现第二方面中所述基站的功能。可以理解的,所述装置配置前述第二种用户面协议架构,即所述终端和所述基站均配置第二种用户面协议架构。
第七方面,本发明实施例提供了一种通信系统,该通信系统包括:终端和基站。在一具体实现中,所述终端可以是第三方面所述的终端,所述基站可以是第四方面所述的基站。
在一具体实现中,终端可以是第五方面所述装置表征的终端,基站可以是第五方面所述装置表征的基站。
在一具体实现中,终端可以是第六方面所述装置表征的终端,基站可以是第六方面所述装置表征的基站。
第八方面,本发明实施例提供了一种基带芯片,所述基带芯片耦合到收发器,所述基带芯片用于:获取待传输的用户面数据;估算估算当前进行数据传输时可获得基站授权的数据包长度,得到估算授权值;基于所述估算授权值对所述用户面数据进行组包,得到第一组包数据;接收所述基站发送的实际授权值,所述实际授权值表征了所述基站实际授权所述终端进行数据传输时的数据包长度;根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,得到第二组包数据;通过所述收发器向所述基站发送所述第二组包数据。
第九方面,本发明实施例提供了一种计算机可读存储介质,用于存储第一方面所述方法的实现代码。
第十方面,本发明实施例提供了一种计算机可读介质,用于存储第二方面所述方法的实现代码。
第十一方面,本发明实施例提供了一种计算机软件产品,当其在计算机中运行时,可用于实现第一方面所述的方法。
第十二方面,本发明实施例提供了又一种计算机软件产品,当其在计算机中运行时,可用于实现第二方面所述的方法。
可以看出,实施本发明实施例提供的协议架构(第一种用户面协议架构或第二种协议架构),终端的PDCP层获取用户面数据后,MAC层基于估算授权值触发所述用户面数据进行组包。在获得基站的实际授权值后,处理该组包数据以使得该组包匹配实际授权值,并将所述经处理的组包数据发给基站,基站再相应解包和处理。本发明实施例相应,可解决现有协议架构中影响通信时延和通信速率的诸多桎梏,实现用户面数据的快速传输,改善通信时延,特定情况下甚至可达到近乎零时延,满足人们对用户面数据快速传输的需求。
为了更清楚地说明本发明实施例或背景技术中的技术方案,下面将对本发明实施例或背景技术中所需要使用的附图进行说明。
图1是现有技术中的LTE系统架构示意图;
图2是现有技术中用户面协议架构示意图;
图3是现有技术中MAC数据包格式示意图;
图4是现有技术中状态报告格式示意图;
图5是本发明实施例提供的一种MAC PDU数据包格式示意图;
图6-a是本发明实施例提供的一种处理MAC PDU的示意图;
图6-b是本发明实施例提供的又一种处理MAC PDU的示意图;
图6-c是本发明实施例提供的又一种处理MAC PDU的示意图;
图7是本发明实施例提供的一种状态报告格式示意图;
图8是本发明实施例提供的一种用户面数据处理方法流程示意图;
图9是本发明实施例提供的一种PDCP层处理数据的示意图;
图10是本发明实施例提供的一种PDCP PDU示意图;
图11-a是本发明实施例提供的一种PDCP PDU数据包格式示意图;
图11-b是本发明实施例提供的一种PDCP PDU数据分段包格式示意图;
图12是本发明实施例提供的一种MAC层组包示意图;
图13是本发明实施例提供的一种MAC层解包示意图;
图14是本发明实施例提供的一种PDCP控制PDU数据包格式示意图;
图15是本发明实施例提供的一种PDCP状态PDU数据包格式示意图;
图16是本发明实施例提供的又一种用户面数据处理方法流程示意图;
图17是本发明实施例提供的又一种PDCP PDU示意图;
图18是本发明实施例提供的又一种RLC PDU示意图;
图19是本发明实施例提供的一种RLC PDU数据分段包格式示意图;
图20是本发明实施例提供的一种双连接通信系统示意图;
图21是本发明实施例提供的一种装置结构示意图;
图22是本发明实施例提供的又一种装置结构示意图;
图23是本发明实施例提供的又一种装置结构示意图;
图24是本发明实施例提供的一种通信系统示意图。
下面结合本发明实施例中的附图对本发明实施例进行描述。
首先介绍现有技术中的LTE通信网络架构,参见图1,在现有技术中,LTE系统由演进分组核心网(Evolved Packet Core,EPC)、基站(Evolved Node B,eNode B)和用户设备(User Equipment,UE)3部分组成。其中,EPC负责核心网部分,EPC的信令处理部分为移动性管理实体(Mobility Management Entity,MME);数据处理部分为服务网关(Serving Gate Way,S-GW);eNode B也称E-UTRAN(Evolved UTRAN),负责接入网部分,eNode B本身就具有独立的资源管理功能,各个eNode B之间通过直接的互联实现相互的协调与合作。在LTE通信系统中,eNode B与MME/S-GW通过S1接口连接;eNode B之间通过X2接口连接;UE与eNode B之间通过LTE空口技术(如Uu接口)进行上行通信或下行通信。
在LTE的E-UTRAN无线接口协议架构中,将协议栈划分为用户平面(User Plane)和
控制平面(Control Plane)。其中,用户平面用于传输业务或应用数据,用户平面上承载的是用户的应用数据,在本发明实施例中,可将所述通过用户平面传输的应用数据简称为用户面数据。例如,我们用手机上网,看到网页中的内容、聊天的内容等,这些都是通过用户平面传输的,所以都属于用户面数据。用户面传输与人们的无线信息的收发息息相关,所以,人们对用户面的传输需求也越来越高。
参见图2,LTE用户平面协议栈包括分组数据汇聚协议层(Packet Data Convergence Protocol,PDCP)、无线链路控制层(Radio Link Control,RLC)和MAC(Media Access Control,媒体接入控制层)、物理层(Physical layer,PHY)等,上述用户面协议栈分别应用于UE侧和eNB侧。
随着人们对通信速率和通信时延要求的提高,上述用户面协议架构的设计由于具有内在设计上的桎梏,已经越来越难以满足人们的通信需求以及未来5G网络的要求。
比如,在现有技术中,RLC层具有级联功能,在RLC层将多个数据(RLC SDU)级联为RLC PDU之后,该RLC PDU具有多个RLC头,并且这些RLC头占用连续的存储空间,这些RLC头用于描述后面多个RLC SDU的相关信息。具体的,在构建RLC PDU时,RLC层需要对所述多个RLC SDU进行两次扫描,一次扫描用于收集构建RLC PDU头部(各个RLC头)所需的信息,另一次扫描用于在实际构建RLC PDU头部和整个RLC PDU。
在现有技术中,MAC层具有复用功能,在RLC层将多个数据(MAC SDU)复用为MAC PDU之后,该MAC PDU具有多个MAC子头,并且这些MAC子头占用连续的存储空间,这些MAC子头用于描述后面多个MAC SDU的相关信息。具体的,在构建MAC PDU时,同样需要至少两次扫描,其中一次扫描用于收集构建MAC PDU头部(各个MAC子头)所需的信息,另一次扫描用于在实际构建MAC PDU头部和整个MAC PDU。
如图3所示,图3为现有技术中的一种MAC PDU数据包,MAC PDU包括一个MAC PDU头部以及所对应的有效载荷,MAC PDU头部包含多个MAC子头(MAC sub-header),每一个MAC子头对应后面的一个MAC SDU、MAC控制元(MAC control element)或者填充位数据(padding),MAC子头的顺序跟MAC SDU、MAC控制元以及填充位数据出现的顺序是相应的。可以看到,在MAC层基于现有技术生成的所述MAC PDU中,MAC子头与其所对应的数据并不连续存储,而多个MAC子头占用连续的存储空间。
用户面数据传输过程中,不同的层需要对用户面数据进行反复多次的信息扫描和数据构建,这样,现行的LTE协议架构就制约了通信时延和通信速率的提高。
又比如,在现有技术中,PDCP在获取用户面数据后构建PDCP PDU,而RLC层和MAC层需要对数据进行聚合处理(分别用于构建RLC PDU和MAC PDU),在需要对用户面数据进行上行传输或下行传输时,只有在PHY层确定传输块(Transport Block,TB)大小之后,RLC层才能相应构建RLC PDU,MAC层才能相应构建MAC PDU。例如,在上行传输中,UE中的高层产生用户面数据需要向基站传输时,UE需要向基站进行上行调度请求,并等待基站的授权,基站确定了TB的大小并向UE进行TB传输授权。UE在收到授权后,需要在协议约定的发送窗口时间内完成从PDCP PDU到TB的全部处理,否则将错过发送时间窗。而同时因为这样的协议架构,UE需要预留一定的时间进行相关组包,所以,这样的协议架构不利于通信时延的改善,对时延和通信传输速率产生了根本性的约束。
又比如,在确认模式(Acknowledge Mode,AM)下,接收侧(UE或eNode B)在接收数据时需要构建状态PDU以便于进行状态反馈,也即是说,接收侧需要告知发送侧是否接收到齐全的数据。在现有协议架构中,RLC负责状态PDU的反馈。参见图4,在现有协议架构对状态PDU的规定中,确认应答序号ACK_SN用于指示接收窗口最后一个没有收到的RLC PDU,所以这个ACK_SN的具体值需要在状态PDU构建完成之后才能最终确定,这个具体值与基站授权信息直接相关,也就是说,状态PDU的构建也同样依赖于基站授权。所以,现行LTE协议架构同样对AM模式中的信息反馈的时延和通信传输速率产生了根本性的约束。
当然,上面所列举出的通信缺陷只是目前LTE协议架构导致的通信缺陷中的其中几个而已,但是从上述分析可以看出,现行的LTE协议架构从根本上制约了通信时延和通信速率,需要对协议架构进行改进或重新设计,以便于进一步降低通信时延、提高通信速率,满足人们对用户面数据快速传输的需求。
针对上述所提到的现有技术中的缺陷,本发明实施例提供了相应的解决方案。下面首先对相应的解决方案进行简要描述。
(1)针对因数据扫描和数据构建导致的通信缺陷,本发明实施例提供的解决方案简述如下:
在本发明实施例中,只有MAC层才具有数据包的级联功能,也就是说,在PDCP层和/或RLC层,一个PDU中只包含一个SDU,而在MAC层,MAC层可将多个SDU级联到一个PDU中,从而获得MAC PDU。在MAC层对数据进行级联聚合的过程中,扫描一次数据,生成对应的MAC子头,并让MAC子头与对应的数据占用连续的存储空间进行存储。
参见图5,图5为本发明实施例提供的一种MAC PDU的数据包,MAC PDU可包括一个或多个MAC子头(MAC sub-header),每个MAC子头对应一个SDU(MAC SDU),或一个MAC控制元(MAC control element),或一个填充位数据(padding)。其中,如果MAC控制元与时延相关,则可将该MAC控制元的放在MAC SDU前面,以便于基站快速处理;如果MAC控制元与时延不相关,则可将该MAC控制元的放在MAC SDU后面,以避免对MAC PDU的二次处理。在本发明实施例提供的MAC PDU中,由于MAC子头与对应的数据连续存储,所以MAC层只需要一次扫描就可以完成MAC PDU组包或者MAC PDU解包,这有利于减少数据处理开销,减少了后续收到基站授权发起组包时的节点数,提升组包速度和组包效率。
(2)针对因基站授权导致的通信缺陷,本发明实施例提供的解决方案描述如下:
以上行传输为例,在UE的PDCP层获取到待传输用户面数据PDCP SDU后,将所述PDCP SDU放到PDCP层的缓冲区(buffer)中,MAC层检测到缓冲区的数据后,一方面,MAC层预估基站会对当次传输的授权资源量,得到估算授权值(所述估算授权值即为所预估的当前传输机会获得基站授权的字节数),并将该估算授权值通知PDCP层,触发PDCP层以及底层的协议层对PDCP SDU进行从PDCP SDU到MAC PDU的预处理;另一方面,MAC层触发向基站发送数据传输请求,数据传输请求包括调度请求(Scheduling Request,SR),用于通知基站有数据传输需求,以及缓冲状态报告(Buffer Status Report,BSR),用于向基站上报具体的资源需求量。
基站基于数据传输请求报告,结合上行信道测量结果等因素给UE调度一个合适上行
授权(UL Grant),以便于UE进行上行数据传输,该上行授权包括基站针对UE本次数据传输的实际授权值。
在UE获得基站的上行授权的时候,UE已经完成了对PDCP SDU的预处理,即PDCP SDU已经基于估算授权值被预处理为MAC PDU。那么,MAC判断MAC PDU是否匹配实际授权值,具体的,包括以下三种情况,
情况一:当获取到的实际授权值大于MAC PDU的数据包长度时,MAC层继续在该MAC PDU上进行组包。
首先,所述终端的MAC层计算所述实际授权值与所述MAC PDU的数据包长度的差值。
如果差值很小(即小于预设值),那么,MAC层对所述MAC PDU增加填充位数据(padding),padding的大小等于该差值,参见图6-a,MAC层更新MAC PDU,那么,经过处理的MAC PDU的数据包长度就匹配所述实际授权值,然后,所述终端将所述经过处理的MAC PDU进行上行传输;
如果差值很大(即大于预设值),那么,MAC层调用缓冲区中的待传输的下一个协议数据单元PDU(PDCP PDU或RLC PDU,视具体的情况而定);如果该差值不足以容纳这个完整的PDU,对该PDU确定合适的位置进行分段,参见图6-b,将该PDU截成PDU首分段和PDU末分段,其中,所述PDU首分段的大小等于所述差值。MAC层将MAC PDU和所述PDU首分段进行级联,更新所述MAC PDU,那么,经过上述处理的MAC PDU的数据包长度就匹配所述实际授权值,然后,终端将所述经过处理的MAC PDU进行上行传输,而PDU末分段则等待下一传输机会再进行传输;
情况二:当收到的实际授权值正好等于MAC PDU的数据包长度时,终端可立即将所述MAC PDU进行上行传输,在该情况下,所述终端实现近乎零时延组包;
情况三:当收到的实际授权值小于MAC PDU的数据包长度时,首先,所述终端的MAC层计算所述MAC PDU的数据包长度与所述实际授权值的差值。参见图6-c,MAC层在MAC PDU中检索MAC子头,确定合适的位置进行分段,从而将MAC PDU截成首段和末段,一般情况下,该首段的最后部分中还包含被截成的MAC PDU首分段(图中为MAC子头+MAC SDUm首分段),而该末段的前部分中包含截成的MAC PDU末分段(图中为MAC SDUm末分段)。其中,末段的大小等于该差值,MAC层将首段确定为经处理的MAC PDU,经过处理的MAC PDU的数据包长度就匹配所述实际授权值,然后,所述终端将所述经过处理的MAC PDU进行上行传输。此外,所述终端还需要对MAC PDU末分段增加相应的层头,从而将该PDU末分段处理为MAC SDU(包含新建MAC子头与MAC SDUm末分段),并等待下一传输机会再进行传输。
可以看出,实施本发明实施例上述方案,可以实现在基站授权前终端提前进行用户面数据的预组包,使组包的相关处理在时序上解耦,在收到基站授权之前就可以把一部分第二组包数据完成,待基站实际授权时,再根据实际授权值对组包进行相应的增减,实施本发明上述实施例可减少了收到授权时的处理脉冲的压力,均化用户面的处理压力,压缩收到授权时的处理任务量,实现快速地完成组包,这将极大地降低收到授权时组包时延,甚至在某些场景下实现近乎零时延组包,有利于时延改善,提升用户体验。
(3)针对AM模式下信息反馈机制出现的通信缺陷,本发明实施例提供的解决方案简述如下:
在本发明实施例中,针对重传机制中的状态报告(状态PDU)进行重新设计,去除状态PDU中制约状态PDU提前构建的确认应答序号ACK_SN,并且对状态PDU中的NACK_SN进行重新定义,重新定义后的NACK_SN不但具备原有的状态报告能力,还可以在基站授权前就可以提前构建。
例如,在具体的实施例中,参见图7,图7为本发明实施例所提供的一种RLC状态PDU,该图示RLC状态PDU具有16位的序列号RLC SN以及16位的SOstart和SOend。RLC状态PDU包括RLC状态PDU头和RLC状态PDU载荷,RLC状态PDU头部由D/C和CPT两部分组成。
RLC状态PDU载荷从RLC状态PDU头之后的第一个比特开始,其包括零个或多个由NACK_SN、E1和E2组成的集合,以及可能的一系列的SOstart和SOend的集合,配合NACK_SN使用。
其中,PDU中各个字段的含义如下:
D/C:表示数据/控制指示,用于指示该PDU是数据PDU还是控制PDU。
CPT:表示控制PDU类别指示,用于指示RLC PDU的类别。
E1:表示其后是否伴随一组NACK_SN和E1/E2的组合字段。
E2:表示其后是否伴随一组SOstart和SOend的组合字段。
NACK_SN:第一个NACK_SN表示在此之前的RLC PDU基站都已经收到;后续的NACK_SN表示除了之前的各个NACK_SN对应RLC PDU,其他的RLC PDU基站都已经收到。
SOstart和SOend:共同指示NACK_SN对应的RLC PDU对应分片没有收到,其中SOstart指示该丢失部分在RLC PDU中的起始位置,SOend指示该丢失部分在RLC PDU中的结束位置,均以字节为单位。
可以看出,实施本发明实施例,由于状态PDU可以在基站授权之前构建,所以基站在检测到数据缺漏,需要发送端进行数据重传时,可以快速构建相应的状态PDU反馈给发送端,从而使得发送端可以尽快实现数据的重传。由于重传机制是数据传输过程中数据完整性的重要保证,所以,实施本发明实施例可以加快数据传输速率,降低通信时延,避免在反馈过程中无谓的等待,确保数据可以快速完整地传输。
为了解决现有协议架构所存在的缺陷,在上述改进方案的基础上,本发明实施例对LTE协议架构进行相应改进和设计,以便于降低通信时延、提高通信速率,实现用户面数据的快速传输,满足人们对用户面数据快速传输的需求。
本发明实施例提供了至少两种用户面协议架构,描述如下:
(1)第一种用户面协议架构
第一种用户面协议架构中各层区别于现有技术的功能如表1所示:
表1
在第一种用户面协议架构中,PDCP层具有集中加头、分段、重组、重排序、重传、状态报告、丢包报告等功能,其中,PDCP层的集中加头操作包括加PDCP头和MAC子头,不加RLC头;对于RLC层,在一具体实施例中,RLC层不对数据做任何改变,仅仅用于将PDCP层的数据透传到MAC层,在另一具体实施例中,甚至可以取消RLC层,也就是PDCP层直接将数据发送至MAC层;MAC具有级联、估算授权、组包/解包、分段检测和去除MAC子头等功能。由于加头功能集中部署到PDCP层,故MAC层将略过加头处理(即不进行加头)。PHY层不做改变,可参考现有技术的相关描述。
(2)第二种用户面协议架构
第二种用户面协议架构中各层区别于现有技术和第一种用户面协议架构的功能如表2所示:
表2
在第二种用户面协议架构中,PDCP具有集中加头功能,集中加头操作包括加PDCP头、RLC头和MAC子头;RLC层具有分段、重组、重排序、重传、状态报告、丢包报告和去除RLC子头等功能,由于加头功能集中部署到PDCP层,故RLC层将略过加头处理;MAC具有级联、估算授权、组包/解包、分段检测和去除MAC子头等功能。由于加头功能集中部署到PDCP层,故MAC层也将略过加头处理。PHY层不做改变,可参考现有技术的相关描述。
需要说明的是,上述两种关于用户面协议架构的实施例仅仅列出本发明实施例中特定的协议层与现有技术中该协议层的一些功能区别点,对于在表中没有列出的功能,参考现有技术中该功能的实现形式,该实现形式已被本领域技术人员熟悉,后续将不再做具体说明,例如对于本发明实施例的PDCP层,没有列出头压缩/加密功能,则在具体的实现流程中,参考现有技术中PDCP层的压缩/加密功能的实现形式。本发明中两种用户面协议架构各层的主要区别功能将在下文实施例中详细描述。
参见图8,基于第一种用户面协议架构,本发明实施例提供一种用户面数据处理方法,从发送侧和接收侧进行描述,所述方法包括:
步骤S101、终端的分组数据汇聚协议PDCP层获取待传输的用户面数据;
其中,在具体的实施例中,所述终端可以是用户设备(UE),也可以是接入网设备。
其中,在上行传输中,所述终端为用户设备;在下行传输中,所述终端为接入网设备。
其中,所述用户设备也可以称为移动台、接入终端、用户单元、用户站、移动站、远
方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置等。用户设备可以是蜂窝电话、无绳电话、会话启动协议(Session Initiation Protocol,SIP)电话、无线本地环路(Wireless Local Loop,WLL)站、个人数字处理(Personal Digital Assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备以及未来5G网络中的移动台或者未来演进的PLMN网络中的终端设备等。
其中,所述接入网设备可以是GSM或CDMA中的BTS(Base Transceiver Station),也可以是WCDMA中的NB(NodeB),还可以是LTE中的演进型基站(evolved Node B,eNB),或者中继站,或者车载设备、可穿戴设备以及未来5G网络中的接入网设备或者未来演进的公共陆地移动网(Public Land Mobile Network,PLMN)网络中的接入网设备等。
终端的分组数据汇聚协议PDCP层获取待传输的用户面数据,所述用户面数据可以是高层传输到PDCP层的数据,如PDCP数据SDU(可简称为PDCP SDU),所述PDCP数据SDU可以数据流的形式发送至PDCP层,并存储在PDCP层的缓冲区中;也可以是在PDCP层所产生的数据,如PDCP状态PDU,还可以是PDCP预先缓存的待重传的数据副本。
步骤S102、终端的MAC层估计授权大小。
在检测到PDCP层缓存有待传输数据之后,一方面,MAC层预估基站会对当次传输的授权资源量,得到估算授权值;另一方面,MAC层会根据需要触发向基站发送数据传输请求,数据传输请求包括调度请求(Scheduling Request,SR),用于通知基站有数据传输需求,以及缓冲状态报告(Buffer Status Report,BSR),用于向基站上报具体的缓存数据量。
在具体的实施例中,MAC层可根据授权日志、用户面数据缓冲量、信道质量指示(Channel Quality Indicator,CQI)、服务质量(Quality of Service,QoS)参数和重传任务量中的一项或多项进行计算,从而得到估计授权大小。其中,所述授权日志为终端所保存的基站往次授权记录,授权日志中记录有在预设时间段内基站实际授权值与用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数、重传任务量的对应关系。在一具体的实施例中,MAC层基于所述对应关系根据一定的算法(例如平均值算法)进行估算,从而获得对本次资源传输的估算结果(即估算授权值);在另一具体实施例中,赋予MAC层调度器的功能,所述MAC层可基于当前的用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数和重传任务量等等影响基站授权的参数进行估算,从而获得估算授权值。需要说明的,MAC层进行授权估算从而获得估算授权值的方式还可以是多种多样的,本发明实施例在这里不做进一步的限定。
步骤S103、所述终端的PDCP层基于估算授权值处理所述待传输的用户面数据以得到PDCP PDU。
可以理解的,在MAC层完成授权估算后,在临近收到实际授权前,MAC层将估算授权值通知PDCP层,触发PDCP层进行缓存数据的处理,例如PDCP基于估算授权值对其中的部分或全部数据按顺序进行头压缩、加密、集中加头、增加PDCP SN等等,从而将用户面数据封装为PDCP PDU。
在具体的实施例中,当缓冲区的数据的总量远大于估算授权值时,PDCP层对用户面数据进行控制,PDCP层不会触发全部的用户面数据进入处理队列,而是按预设的规则触发其
中一部分数据进入处理队列进行按序处理。
例如,所述终端根据预设的规预先赋予用户面数据优先级,所述优先级预置于所述用户面数据中,用于表征所述用户面数据的重要程度。所述终端的PDCP层识别所述用户面数据的优先级,将所述用户面数据按照优先级从高到低进行排序,并基于所述排序为所述用户面数据分配分组数据汇聚协议层序列号PDCP SN;
在具体的实施例中,所述终端的所述PDCP层基于所述估算授权值处理所述待传输的用户面数据中一定量的PDU SDU,所述一定量的PDU SDU的大小与N个传输时间间隔(Transmission Time Interval,TTI)内估算授权总量的差值小于预设阈值,每个TTI内估算授权总量为估算授权值与授权次数的乘积,所述授权次数为MAC层估算的在一个TTI内获得基站实际授权的次数。
所述MAC层进行授权估算时,预估在一个TTI内基站对终端的授权次数。那么,根据授权次数乘以估算授权值就可以得到在一个TTI内的估算授权总量。在一具体实施例中,PDCP层基于所述估算授权值处理所述待传输的用户面数据中一定量的PDU SDU,所述一定量的PDU SDU的大小与两个TTI内估算授权总量的差值小于预设阈值,每个TTI内估算授权总量为估算授权值与授权次数的乘积,所述授权次数为MAC层估算的在一个TTI内获得基站实际授权的次数。为了确保在MAC层在后续的资源调度中始终有足够预组包数据,同时考虑到PDCP层可能会出现超时丢包,所以,在具体的实现方式中,PDCP可以只处理处理两个TTI内估算授权总量,考虑到所估算两个TTI内估算授权总量一般不会正好等于所述整数数量的PDU SDU,所以可以允许一定量的PDU SDU(整数数量的PDU SDU)的大小与两个TTI内估算授权总量的差值可以小于特定的预设阈值。PDCP层在一个调度周期完成的时候触发新的预处理,使得MAC估算授权开始组包的时候始终有可用的完成预处理的数据包。
举例来说,参见图9,在MAC估算授权之前,已经有500字节的用户面数据(SDU1、SDU2、SDU3、SDU4、SDU5、SDU6、SDU7、SDU8)进入PDCP缓冲区,而MAC的估算授权值为100字节,一个TTI内估算的授权次数为2次,那么,2个TTI内估算授权总量为400字节(100x2x2),也就是说,MAC指示PDCP可处理400字节左右的用户面数据,PDCP检测到前六个PDU(SDU1、SDU2、SDU3、SDU4、SDU5、SDU6)的数据总量为390字节,差值为:400字节-390字节=10字节<预设阈值,所以,PDCP促使前六个PDU进入处理队列进行相应的处理,而剩下的两个PDU(SDU7和SDU8)则进行保存在缓冲区中,等待下一处理周期再进行处理。
具体的,在PDCP层处理用户面数据为PDCP PDU过程中,PDCP层对其中每一个用户面数据集中加头,参见图10,所述用户面数据为PDCP SDU,PDCP层对所述一定量的PDU SDU中的每一个PDU SDU分别增加PDCP头和MAC子头,从而得到PDCP PDU。本发明实施例在PDCP层对用户面数据进行集中加头,并且取消RLC头,有利于节省了RLC头的控制信息开销,减少了处理器开销,在PDCP集中加头后,底层将略过加头操作,这有利于减少组包节点数,提升内存处理效率,加快传输速度。
其中,PDCP头中包括PDCP SN,PDCP层对PDCP SDU在PDCP层进行加密,为每一个进入处理队列的PDCP SDU依次分配序列号,并将所述PDCP SN写入所述PDCP头。
在具体的实现方式中,由于PDCP层的数据可能会出现丢包,包括PDCP基于高层的指令主动丢包,以及由于存储超时导致被动丢包。而基站有需要依赖于PDCN SN进行重排序、重组、重传等操作,为了避免PDCP层丢包对传输速率造成影响,可以通过两种方式来应对丢包:
方式一:在PDCP层进行用户面处理的过程中,根据历史记录判断已完成处理的数据包距离基站授权的时间长度,相应延迟加密处理,缩短已完成处理的数据包在PDCP层的逗留时间,对于已经加密和集中加头的数据包,在生成PDCP PDU之后,PDCP将不再进行丢包操作。
方式二:PDCP层在接收到用户面数据后,将所述用户面数据放在缓冲区,并为用户面数据分配PDCP SN,如果用户面数据发生丢包,那么,PDCP层相应生成一个丢包报告,在本发明实施例中称为PDCP控制PDU,用于通知接收接收该用户面数据发生丢包,避免基站对PDCP PDU的等待,所述PDCP控制PDU将在后续实施例中进行详细说明。
需要说明的是,由于在第一种用户面协议架构中,PDCP层具有分段、重排序、重组、重传等功能,当PDCP需要对数据进行分段时,可以是在本层分段,也可以放在其他层实现分段(如MAC层)。本发明实施例基于该PDCP PDU设计PDCP PDU分段的数据包格式,参见图11-a和图11-b,以PDCP SN为32位的情况为例。
其中,图11-a表示在32位PDCP SN的数据资源承载(Data Resource Bearer,DRB)情况下PDCP PDU数据包的格式,数据包中各字段的含义如下:
D/C:数据/控制指示,用于指示该PDU是数据PDU还是控制PDU。
P:轮询指示比特,指示终端是否需要接受设备发送状态报告。
R:表示保留字段。
PDCP SN以及后续的3个PDCP SN(cont.):共同用于指示32位的PDCP SN。
其中,图11-b表示在32位PDCP SN的数据资源承载(Data Resource Bearer,DRB)情况下PDCP PDU数据包分段的格式,数据包中各字段的含义如下:
D/C:数据/控制指示,用于指示该PDU是数据PDU还是控制PDU。
P:轮询指示比特,指示终端是否需要基站发送状态报告。
LSF:最后分段指示,用于指示该PDU分段的结尾是否为该PDU的数据结尾。
R:表示保留字段。
SO以及SO(cont.):分段偏移指示,用于指示该PDU分段在PDCP PDU中的字节位置。
PDCP SN以及后续的3个PDCP SN(cont.):共同用于指示32位的PDCP SN。
需要说明的是,上述实施例中PDCP PDU数据包格式以及PDCP PDU数据包分段格式仅为本发明实施例的一种实现形式,不应理解为对本发明的限制。
步骤S104、所述终端的PDCP层将PDCP PDU发送至所述终端的MAC层。
可以理解的,由于在第一种用户面协议架构中,针对RLC层可以有两种设计方式,一种方式是取消RLC层,这种方式下,PDCP层将已完成处理的PDCP PDU直接发送至MAC层。这种方式的好处是简化用户面协议,避免数据在RLC层无谓的逗留,提高传输数速度和传输效率。另一种方式是保留RLC层,但是RLC层不对数据做任何改动,数据在RLC层实现透传,在这种方式下,所述终端的PDCP层将PDCP PDU发送至RLC层,在RLC层进行中转,
RLC层将PDCP PDU继续发送至MAC层,这种方式的好处是使得第一种用户面协议架构能够更好对接现有技术中的协议层,方便本发明实施例更好地在现有技术基础上实施。
步骤S105、所述终端的MAC层基于所述估算授权值将所述PDCP PDU级联为MAC PDU。
在本发明实施例中,只有MAC层才具有级联功能,MAC层获得从特定层传输下来的数据后,基于估算授权值依次获取特定数量的数据进行级联,从而将数据处理为MAC PDU。
在具体的实施例中,MAC在构建MAC PDU时,保持MAC子头与MAC子头对应的数据连续存储,MAC PDU中,所述MAC子头与所述MAC子头对应的PDCP PDU占用连续的存储空间,如图5所示,由于在PDCP层就已经集中加头,也就是说,在MAC层处理得到的MAC PDU中,MAC子头、PDCP头以及对应的数据在存储空间都是连续存储的。MAC PDU各层头与数据连续存储还有利于大大减少了后续收到基站实际授权发起组包时的节点数,提升组包效率。
在具体的实现方式中,MAC层基于估算授权值对进入缓冲区的数据进行级联组包,由于估算授权值未必等于若干个数据的大小,所以在MAC层级联组包过程中,可设置一个容许阈值,当MAC层依次检索缓冲区的数据,发现若干个数据的总字节数与估算授权值的差值在容许阈值的范围内,则对所述若干个数据进行级联组包。参见图12,在图12中,缓冲区的数据包括控制元以及若干个PDCP数据PDU,MAC层依次检索缓冲区的上述数据,发现控制元、PDCP PDU6以及PDCP PDU7的总字节数与估算授权值的差值在容许阈值的范围内,所以MAC将控制元、PDCP PDU6以及PDCP PDU7级联组包为MAC PDU。而对于缓冲区中的其他数据(PDCP PDU8和PDCP PDU9),可基于下次估算授权值组包级联到下一个MAC PDU中。
步骤S106、MAC层获取基站授权,并基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述实际授权值用于表征基站授权当前传输机会的大小;
需要说明的是,虽然在第一种用户面协议架构中,PDCP层具有分段的功能,但是在具体的实施例中,可以将PDCP的分片功能放在MAC层实现,也就是说,出于处理的方便和效率,MAC层可以代替PDCP层完成PDCP PDU的分片处理。
具体的,在所述实际授权值大于所述MAC PDU的数据包长度的情况下,所述终端的MAC层计算所述实际授权值与所述MAC PDU的数据包长度的差值,根据差值的大小对所述MAC PDU增加填充位数据或者PDCP PDU分段,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,详细情况可参考前述图6-a和图6-b的描述。
具体的,在所述实际授权值小于所述MAC PDU的数据包长度的情况下,所述终端的MAC层计算所述MAC PDU的数据包长度与实际授权值的差值,所述终端的MAC层对所述MAC PDU截取PDCP PDU末分段,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述PDCP PDU末分段的大小与所述差值相等。MAC层先启动后续的数据发送处理,然后再完成MAC PDU末分段分片处理操作,详细情况可参考前述图6-c的描述。
需要说明的是,对于保留在所述MAC PDU中的PDCP PDU首分段,MAC将不做任何处理(即不需要在对应的PDCP头中加入分段指示和分段偏移指示),这样可以减少计算量,加快当前授权的组包过程。对于遗留在缓冲区中的PDCP PDU末分段,MAC以当前的头信息为基准为PDCP PDU末分段重建各层头信息(MAC子头和PDCP头),从而再次将PDCP PDU末
分段构建为PDCP PDU的数据形式,并在该PDCP头中加入相对于PDCP PDU首分段的分段偏移指示和分段指示,以便于后续在基站中实现数据分段的重组。
步骤S107、所述终端向基站发送所述经过处理的MAC PDU,相应的,基站的MAC层接收终端所发送的MAC PDU。
在具体的实施例中,当所述终端是用户设备时,所述基站为接入网设备,所述发送操作为上行信道传输;当所述终端是接入网设备时,所述基站为用户设备,所述发送操作为下行信道传输。
步骤S108、所述基站的MAC层解包所述经过处理的MAC PDU,以得到PDCP PDU。
其中,解包时,MAC层以MAC PDU的长度为基准进行解包,解包超出该长度时,MAC层终止解包,并可直接将处在最后的不完整的数据丢弃。解包后,在所述MAC层检测到所述MAC子头指示的大小大于MAC子头对应PDCP PDU的大小的情况下,所述基站的MAC层判定所述MAC子头对应PDCP PDU为PDCP PDU首分段。
在具体的实施例中,基站收到MAC PDU后,依次解包获得MAC控制元和PDCP PDU等数据。对于最后一个PDCP PDU,MAC层检索MAC子头,判断MAC子头指示的数据长度是否超出了PDCP PDU的长度:
若否,则判断该PDCP PDU为完整的PDCP PDU,或者该PDCP PDU中所存在的末分段长度是匹配的;
若是,则判断该PDCP PDU为PDCP PDU分段,这种情况下,检索PDCP PDU的PDCP头中是否具有分段指示和分段偏移指示。如果具有分段指示和分段偏移指示,则基于分段指示和分段偏移指示判断该PDCP PDU为PDCP PDU中间分段还是末分段;如果不具有分段指示和分段偏移指示,则判断该PDCP PDU为PDCP PDU首分段。
例如,参见图13,在图13所示的实施例应用场景中,MAC层解包MAC PDU,获得MAC控制单元数据,PDCP PDU13和PDCP PDU14,由于PDCP PDU14是MAC PDU的最后一个PDCP PDU,MAC检索该PDCP PDU的各层子头,发现该MAC子头指示的长度大于PDCP的实际长度,且发现该PDCP不包含分段偏移指示和分段指示,所以MAC判定所述PDCP PDU14为PDCP PDU14首分段。
步骤S109、所述基站的MAC层将PDCP PDU发送至PDCP层。
可以理解的,由于在第一种用户面协议架构中,针对RLC层可以有两种设计方式,一种方式是取消RLC层,这种方式下,MAC层直接将解包后的PDCP PDU去掉MAC子头,并发送至PDCP层。另一种方式是保留RLC层,但是RLC层不对数据做任何改动,数据在RLC层实现透传,在这种方式下,MAC层将解包后的PDCP PDU去掉MAC子头并发送至RLC层,在RLC层进行中转,RLC层将PDCP PDU继续发送至PDCP层。
步骤S110、所述基站的PDCP层重排序所述PDCP PDU,对重排序后的PDCP PDU去除PDCP头,将PDCP PDU重组为PDCP SDU;
PDCP层获得所述PDCP PDU之后,将PDCPPDU放在PDCP缓冲区中,并对缓冲区中的各个PDCP PDU进行重排序,并在接收窗口内继续接收其他的PDCP PDU。在序列号排在PDCP PDU之前的数据都被成功接收之后,如果所述PDCP PDU是完整的数据,则直接对该PDCP PDU进行去头,也就是去除PDCP头,获得PDCP SDU;如果所述PDCP PDU是数据分段,则将接
收到的PDCP PDU首分段、中间分段(如果有的话)和PDCP PDU末分段重组为完整的PDCP PDU,并对所述PDCP PDU进行去头,获得PDCP SDU。
在这个过程中,如果在重排序窗口内PDCP检测到数据重复接收,则将重复的数据丢弃;如果PDCP检测到某个PDCP未能成功接收,则生成PDCP状态PDU(状态报告),并将所述PDCP状态PDU发送至终端的PDCP层,以通知终端进行相关数据的重传。关于所述PDCP状态PDU可参见下文的相关描述。
步骤S111、所述基站的PDCP层将所述PDCP SDU发送至高层;或者,所述基站的PDCP层将所述PDCP SDU发送至网络。
具体的,当所述基站是用户设备(如手机)时,所述基站的PDCP层将所述PDCP SDU发送至高层;当所述基站是接入网设备(如基站)时,所述基站的PDCP层将所述PDCP SDU发送至网络。
基于第一种用户面协议架构,下面描述在本发明实施例中终端进行数据丢包的过程。
具体过程如下:
步骤S201、在通信传输过程中,终端的PDCP层的数据发生丢包。
在本发明实施例的通信传输过程中,存储在PDCP层的缓冲区的数据可能会出现丢包,包括PDCP基于高层的指令主动丢包,以及基于存储超时导致被动丢包。所述丢包是指PDCP层基于高层指令或者基于超时指示将某个/某些数据(PDCP PDU)删除。
步骤S202、终端的PDCP层生成PDCP控制PDU。
在丢包发生后,PDCP层基于丢包数据的信息生成一个PDCP控制PDU,该PDCP控制PDU用于向基站指示哪个/哪些PDCP PDU发生丢包,以避免基站对相关PDCP PDU的等待。
参见图14,图14是本发明实施例所提供的一种PDCP控制PDU数据包格式示意图,图示中的PDCP控制PDU数据包格式各字段描述如下:
D/C:数据/控制指示,用于指示该PDU是数据PDU还是控制PDU。
PDU类型:指示PDCP控制PDU的类型。
共同位:表示各个发生丢包的PDCP SN的高位共同位。
一对Start_SN和End_SN:共同用于表示从Start_SN到End_SN这个范围内的序列号对应的PDCP PDU发生丢包,其中,Start_SN表示该范围内最先丢包的数据序列号,End_SN表示该范围内最后丢包的数据序列号。
在本发明的实施例中,PDCP层抽取该PDCP控制PDU中各个序列号SN之间的高位共同位部分来构建共同位(common bits)。也就是说,可以根据所有的丢包范围{Start_SN~End_SN}的区间表示域来确定common bits。
简单举例来说,在一应用场景中,PDCP SN长度为18位(bit),所有的{Start_SN~End_SN}所指示的区间内有6个PDCP PDU发生丢包,其对应的PDCP SN用二进制表示如下:
110011001011001100
110011001011001101
110011001011001111
110011001011010010
110011001011010100
110011001011010101
那么在这种情况下,可以将common bits设置为110011001011001,即将第一个PDCP SN(110011001011001100)的前15位作为common bits,各个Start_SN和End_SN可基于common bits进行变化。
在PDCP SN长度比较长时,在PDCP控制PDU数据包格式中采用common bits可以实现有效减少PDCP控制PDU的长度,加快组包速度,提升传输效率。
步骤S203、终端的PDCP层将PDCP控制PDU发送至基站的PDCP层。
可以理解的,终端的PDCP层将PDCP控制PDU传输至终端的MAC层进行组包,终端的MAC层再将经组包的PDCP控制PDU发送至基站的MAC层,进而把PDCP控制PDU传输到基站的PDCP层,其过程可参考图8方法实施例的相关描述。
步骤S204、基站的PDCP层不再等待PDCP控制PDU所指示的丢包数据。
在本发明实施例中,PDCP控制PDU中的Start_SN和End_SN需要成对出现,所以基站解析PDCP控制PDU时,如果发现PDCP控制PDU尾部的某个/某些Start_SN和End_SN不能成对出现(由于被终端截取从而导致了某个/某些Start_SN或End_SN缺损),则基站将该Start_SN和End_SN丢弃。所述基站的PDCP层基于成对出现的Start_SN、End_SN以及相关共同位放弃等待所述PDCP控制PDU有效指示的PDCP PDU。
基于第一种用户面协议架构,下面描述在本发明实施例中基站反馈状态报告的过程。
具体过程如下:
步骤S301、基站的PDCP层在重排序过程中检测到数据异常。
在本发明实施例中,数据异常至少包括两方面:一方面,基站的PDCP层在对缓冲区的数据进行重排序过程中对数据(如PDCP PDU)按序列号SN进行排列,如检测到数据的序列号出现缺漏,那么可设置定时器等待相关缺漏的数据一段时间,定时器超时仍不能接收到该数据,那么则判定该数据异常。另一方面,只有当一个数据的所有分段(如PDCP PDU分段)都存在于缓冲区,基站的PDCP层才能重组出该数据,如果有部分分段在定时器设定的时间内无法收到,那么则判定该数据异常。
步骤S302、基站的PDCP层基于数据异常情况生成PDCP状态PDU。
在检测到数据异常的情况下,基站的PDCP层生成PDCP状态PDU所述PDCP状态PDU用于指示哪个/哪些数据(如PDCP PDU或PDCP PDU分段)未被所述基站接收。
参见图15,图15是本发明实施例提供的一种PDCP状态PDU数据包格式,图示中的PDCP状态PDU数据包格式各字段描述如下:
D/C:数据/控制指示,用于指示该PDU是数据PDU还是控制PDU。
PDU类型:指示PDCP控制PDU的类型。
共同位:指示各个NACK_SN的高位共同位。
E1:用于指示其后是否伴随一组NACK_SN和E1/E2的组合字段
E2:用于指示其后是否伴随一组SOstart和SOend的组合字段。
SOstart和SOend:共同指示与NACK_SN对应的PDCP PDU分段没有收到,其中SOstart指示该没有收到部分在PDCP PDU中的起始位置,SOend指示没有收到部分在PDCP PDU中的结束位置。
NACK_SN:第一个NACK_SN表示在此之前的PDCP PDU基站都已经收到,后续的NACK_SN表示除了之前的各个NACK_SN对应PDCP PDU,其他的RLC PDU基站都已经收到。在本发明实施例中,当PDCP SN长度比较长时,PDCP层在PDCP状态PDU中抽取NACK_SN高位公共位(例如16bit)来构建共同位(common bits),实际数据的PDCP SN由该PDCP状态PDU中的common bits与NACK_SN组合获得。在一具体的应用场景中,PDCP层抽取common bits时,需要保证该PDCP状态PDU中不会出现重复的NACK_SN,这样,当后面的NACK_SN小于前面的NACK_SN时,则表示common bits发生了翻转。在common bits发生翻转的情况下,实际数据的PDCP SN则由common bits+1与对应NACK_SN组合获得。
在PDCP SN长度比较长时,在PDCP控制PDU数据包格式中采用common bits可以实现有效减少PDCP状态PDU的长度,加快组包速度,提升传输效率。
步骤S303、基站的PDCP层将PDCP状态PDU发送至终端的PDCP层。
可以理解的,基站的PDCP层将PDCP状态PDU传输至基站的MAC层进行组包,基站的MAC层再将经组包的PDCP状态PDU发送至终端的MAC层,进而把PDCP状态PDU传输到终端的PDCP层,其过程可参考图8方法实施例的相关描述。
其中,在基站的MAC层对PDCP状态PDU组包后,如果组包的大小大于基站实际授权值,而导致PDCP状态PDU有部分被截取出来,那么MAC层将被截取部分(即不能被纳入授权组包中的部分)直接丢弃。
步骤S304、终端的PDCP层基于PDCP状态PDU进行数据重传。
相应的,终端解析PDCP状态PDU后,确认PDCP状态PDU中第一个NACK_SN之前的所有PDCP PDU,基站都已经收到;确认后续的NACK_SN中除了当前PDCP状态PDU中前面一系列NACK_SN指示的PDCP PDU外,其他PDCP PDU都已经收到。由于PDCP状态PDU可能被基站截取过,所以终端解析完PDCP状态PDU后,会将PDCP状态PDU最后部分不完整的数据丢弃。
在本发明实施例中,终端的PDCP层存储有用户面数据(PDCP PDU),在接收到PDCP状态PDU的情况下,所述终端的PDCP层向基站重传所述PDCP状态PDU所指示的NACK_SN对应的用户面数据。
可以看出,实施本发明实施例所提供的第一种用户面架构,PDCP层支持集中加头、分段、重组、重排序、重传、状态报告和丢包报告等功能,RLC层被取消或者仅支持透传,MAC层支持级联、估算授权等功能。终端的PDCP层获取用户面数据后,MAC层基于估算授权值促发所述用户面数据进行预组包。在获得基站的实际授权值后,处理该预组包以使得该预组包匹配实际授权值,并将所述经处理的预组包发给基站,基站再相应基于第一种用户面架构进行解包。实施本发明实施例,可解决现有协议架构中影响通信时延和通信速率的诸多桎梏,实现用户面数据的快速传输,满足人们对用户面数据快速传输的需求。
参见图16,基于第二种用户面协议架构,本发明实施例提供又一种用户面数据处理方
法,从发送侧和接受侧进行描述,所述方法包括:
步骤S401、终端的分组数据汇聚协议PDCP层获取待传输的用户面数据。
其中,在具体的实施例中,所述终端可以是用户设备(UE),也可以是接入网设备。其中,在上行传输中,所述终端为用户设备;在下行传输中,所述终端为接入网设备。
步骤S402、所述终端的MAC层预估授权大小。
其中,所述估算授权值是所述终端的MAC层根据授权日志、用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数和重传任务量中的一项或多项估算出来的。
步骤S403、所述终端的PDCP层基于估算授权值处理所述待传输的用户面数据以得到PDCP PDU。
在具体的实现方式中,由于PDCP层的数据可能会出现丢包,包括PDCP基于高层的指令主动丢包以及基于存储超时导致被动丢包。而基站有需要依赖于PDCN SN进行重排序、重组、重传等操作,为了避免PDCP丢包对传输速率造成影响,可以通过两种方式来应对丢包:
方式一:在PDCP进行用户面处理的过程中,根据历史记录判断距离基站授权的时间长度,相应延迟加密处理,缩短已完成处理的数据包在PDCP层的逗留时间,对于已经加密和集中加头的数据包,在生成生成PDCP PDU之后,PDCP将不再进行丢包操作;
方式二:PDCP在接收到用户面数据后,对数据包直接进行处理,包括分配PDCP SN和加密等,如果用户面数据发生丢包,那么,PDCP层相应生成一个PDCP控制PDU,用于通知基站该用户面数据发生丢包,避免基站对PDCP PDU的等待。
在MAC层完成授权估算后,将估算授权值通知PDCP层,触发PDCP层进行缓存数据的处理,例如PDCP基于估算授权值对其中的部分或全部数据按顺序进行头压缩、加密、集中加头、增加PDCP SN等等,从而将用户面数据封装为PDCP PDU。
在具体的实施例中,在具体的实施例中,当缓冲区的数据的总量远大于估算授权值时,PDCP对用户面数据进行控制,PDCP不会触发全部的用户面数据进入处理队列,而是按预设的规则触发其中一部分数据进入处理队列进行按序处理。例如,所述终端的所述PDCP层基于所述估算授权值处理所述待传输的用户面数据中一定量的PDU SDU,所述一定量的PDU SDU的大小与两个TTI内估算授权总量的差值小于预设阈值。
具体的,在PDCP层处理用户面数据为PDCP PDU过程中,PDCP层对其中每一个用户面数据集中加头,参见图17,所述用户面数据为PDCP SDU,PDCP层对所述一定量的PDU SDU中的每一个PDU SDU分别增加PDCP头、RLC头和MAC子头,所述PDCP头中分配有PDCP SN,在本发明实施例中经过PDCP层处理后的用户面数据可称为PDCP PDU。本发明实施例在PDCP层对用户面数据进行集中加头,有利于节省了RLC头的控制信息开销,减少了处理器开销,在PDCP集中加头后,RLC层和MAC层将不再进行加头操作,这有利于提升传输效率,加快传输速度。
步骤S404、所述PDCP层将所述PDCP PDU发送至RLC。
步骤S405、所述终端的RLC层处理所述PDCP PDU以得到RLC PDU。
参见图18,RLC层先PDCP PDU缓存在RLC缓存区(buffer),RLC为每一个进入RLC处理队列的PDCP PDU依次分配序列号RLC SN,并将所述RLC SN写入所述PDCP PDU的RLC
头,本发明实施例中经过RLC层处理后的PDCP PDU可称为RLC PDU。
需要说明的是,由于在第二种用户面协议架构中,RLC具有分段、重排序、重组、重传等功能,当RLC需要对数据进行分段时,可以是在本层分段,也可以将该分段功能部署在其它层实施(如MAC层)。
步骤S406、所述RLC层将RLC PDU发送至所述终端的MAC层。
步骤S407、所述终端的MAC层基于所述估算授权值将所述RLC PDU级联为MAC PDU。
在本发明实施例中,只有MAC层才具有级联功能,MAC层获得从特定层传输下来的数据后,基于估算授权值依次获取特定数量的数据进行级联,从而将数据处理为MAC PDU。
在具体的实施例中,MAC在构建MAC PDU时,保持MAC子头与MAC子头对应的数据连续存储,也就是说在MAC PDU中,MAC子头、RLC头和PDCP头以及对应的数据(如PDCP SDU)在存储空间都是连续存储的。MAC PDU各层头与数据连续存储还有利于大大减少了后续收到基站实际授权发起组包时的节点数,提升组包效率。
步骤S408、所述终端的MAC层基于获取到的实际授权值处理所述MAC PDU。
在所述实际授权值大于所述MAC PDU的数据包长度的情况下,所述终端的MAC层计算所述实际授权值与所述MAC PDU的数据包长度的差值,对所述MAC PDU增加填充位数据或者RLC PDU分段,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述第一长度的数据的大小与所述第一差值相等。
在所述实际授权值等于所述MAC PDU的数据包长度的情况下,所述终端的MAC层触发MAC PDU的后续发送步骤。
在所述实际授权值小于所述MAC PDU的数据包长度的情况下,所述终端的MAC层计算所述所述MAC PDU的数据包长度与实际授权值的差值,基于该差值检索MAC子头,确定合适的位置进行分段,截取合适的RLC PDU完成组包,该组包包含RLC PDU首分段。对于截取RLC PDU后剩下的RLC SDU末分段,MAC将再次构建MAC SDU,为该RLC SDU末分段增加PDCP头、RLC头和MAC子头,并在RLC头中加入相对于RLC SDU首分段的分段指示和分段偏移指示。其中,所述RLC SDU末分段的大小与该差值相等。本发明实施例中,RLC SDU分段的数据包格式可参见图19,图19表示在16位RLC SN和16位SO的数据资源承载(Data Resource Bearer,DRB)情况下RLC PDU数据分段包格式,数据包中各字段的含义如下:
D/C:数据/控制指示,用于指示该PDU是数据PDU还是控制PDU。
RF:分段指示,用于指示是RLC PDU还是RLC PDU分段。
P:轮询指示比特,指示终端是否需要接受设备发送状态报告。
LSF:最后分段指示,用于指示该PDU分段的结尾是否为该PDU数据的结尾。
R:表示保留字段。
R1:表示保留字段。
LSF:最后分段指示,用于指示该RLC PDU分段的结尾是否为该RLC PDU数据的结尾。
两个RLC SN:共同用于指示16位的RLC SN。
两个SO:共同用于指示16位的分段偏移指示,用于指示该RLC PDU分段在PDCP PDU中的字节位置。
需要说明的是,上述实施例中RLC PDU数据分段包格式仅为本发明实施例的一种实现
形式,不应理解为对本发明的限制。
步骤S409、所述终端向基站发送所述经过处理的MAC PDU,相应的,基站的MAC层接收终端所发送的经过处理的MAC PDU。
在具体的实施例中,当所述终端是用户设备时,所述基站为接入网设备,所述发送操作为上行信道传输;当所述终端可以是接入网设备时,所述基站为用户设备,所述发送操作为下行信道传输。
步骤S410、所述基站的MAC层解包所述MAC PDU,以得到RLC PDU;
在具体的实施例中,基站收到MAC PDU后,依次解包获得MAC控制元和RLC PDU等数据。对于最后一个RLC PDU,MAC层检索MAC子头,判断MAC子头指示的数据长度是否超出了RLC PDU的长度:
若否,则判断该RLC PDU为完整的PDCP PDU;
若是,则判断该RLC PDU为RLC PDU分段,这种情况下,检索RLC PDU的RLC头中是否具有分段指示和分段偏移指示。如果具有分段指示和分段偏移指示,则判断该RLC PDU为RLC PDU末分段;如果不具有分段指示和分段偏移指示,则判断该RLC PDU为PDCP PDU首分段。
步骤S411、所述MAC层将所述RLC PDU发送至RLC层。
步骤S412、所述基站的RLC层重排序所述RLC PDU,对重排序后的RLC PDU去除MAC子头、RLC头和PDCP头,从而将RLC PDU重组为RLC SDU。
RLC层获得所述RLC PDU之后,将RLC PDU放在RLC缓冲区中,并对缓冲区中的各个RLC PDU进行重排序,并在接收窗口内继续接收其他的RLC PDU,直到该RLC PDU溢出接收窗口。在序列号排在RLC PDU之前的数据都被成功接收时,如果所述RLC PDU是完整的数据,则直接对该RLC PDU进行去头,也就是去除RLC头,获得RLC SDU;如果所述RLC PDU是数据分段,则将接收到的RLC PDU首分段和RLC PDU末分段重组为完整的RLC PDU,并对所述RLC PDU进行去头,获得RLC SDU。
在这个过程中,如果在重排序窗口内RLC检测到数据重复接收,则将重复的数据丢弃;如果PDCP检测到某个RLC未能成功接收,则生成RLC状态PDU(状态报告),并将所述RLC状态PDU发送至终端的RLC层,以通知终端进行相关数据的重传。关于所述RLC状态PDU可参见下文的相关描述。
步骤S413、所述基站的RLC层将所述RLC SDU发送至PDCP层。
步骤S414、所述基站的PDCP层将所述RLC SDU发送至高层;或者,所述基站的PDCP层将所述RLC SDU发送至网络。
具体的,当所述基站是用户设备(如手机)时,所述基站的PDCP层将所述PDCP SDU发送至高层;当所述基站是接入网设备(如基站)时,所述基站的PDCP层将所述PDCP SDU发送至网络。
基于第二种用户面协议架构,下面描述在本发明实施例中终端进行数据丢包的过程。
具体过程如下:
步骤S501、在通信传输过程中,终端的PDCP层的数据发生丢包。
在本发明实施例的通信传输过程中,存储在PDCP层的缓冲区的数据可能会出现丢包,包括PDCP基于高层的指令主动丢包,以及基于存储超时导致被动丢包。所述丢包是指PDCP层基于高层指令或者基于超时指示将某个/某些数据(PDCP PDU)删除。
步骤S502、终端的PDCP层生成PDCP控制PDU。
在丢包发生后,PDCP层基于丢包数据的信息生成一个PDCP控制PDU(PDCP control PDU,分组数据汇聚协议控制协议数据单元),该PDCP控制PDU用于向基站指示哪个/哪些PDCP PDU发生丢包,以避免基站对相关PDCP PDU的等待,关于所述PDCP控制PDU的实现方式可参考图14实施例的描述。
步骤S503、终端的PDCP层将PDCP控制PDU发送至基站的PDCP层。
可以理解的,终端的PDCP层将PDCP控制PDU传输至终端的MAC层进行组包,终端的MAC层再将经组包的PDCP控制PDU发送至基站的MAC层,进而把PDCP控制PDU传输到基站的PDCP层,其过程可参考图16方法实施例的相关描述。
其中,在终端的MAC层对所述PDCP控制PDU组包后,如果组包的大小大于基站实际授权值,而导PDCP控制PDU有部分被截取出来,那么MAC层将被截取部分(即无法被纳入授权组包中的部分)直接丢弃。
步骤S504、基站不再等待PDCP控制PDU所指示的丢包数据。
基于第二种用户面协议架构,下面描述在本发明实施例中基站反馈状态报告的过程。
具体过程如下:
步骤S601、基站的RLC层在重排序过程中检测到数据异常。
在本发明实施例中,数据异常至少包括两方面:一方面,基站的RLC层在对缓冲区的数据进行重排序过程中对数据(如RLCPDU)按序列号RLC SN进行排列,如检测到数据的序列号出现缺漏,那么可设置定时器等待相关缺漏的数据一段时间,定时器超时仍不能接收到该数据,那么则判定该数据异常(即数据传输过程中发生了数据丢包)。另一方面,只有当一个数据的所有分段(如RLC PDU分段)都存在于缓冲区,基站的RLC层才能重组出该数据,如果有部分分段在定时器设定的时间内无法收到,那么则判定该数据异常(即终端发生了数据分段丢包)。
步骤S602、基站的RLC层基于数据异常情况生成RLC状态PDU。
在检测到数据异常的情况下,基站的RLC层生成RLC状态PDU,所述RLC状态PDU用于指示指示哪个/哪些RLC PDU或RLC PDU分段未被所述基站接收到。
其中,本发明实施例提供的一种RLC状态PDU数据包格式可如图7数据包格式所示,RLC状态PDU各字段描述如下:
D/C:数据/控制指示,用于指示该PDU是数据PDU还是控制PDU。
CPT:控制PDU类别指示,用于区分不同的控制PDU。。
E1:用于指示其后是否伴随一组NACK_SN和E1/E2的组合字段
E2:用于指示其后是否伴随一组SOstart和SOend的组合字段。
SOstart和SOend:共同指示与NACK_SN对应的RLC PDU分段没有收到,其中SOstart指示该没有收到部分在RLC PDU中的起始位置,SOend指示没有收到部分在RLC PDU中的
结束位置。
NACK_SN:第一个NACK_SN表示在此之前的RLC PDU基站都已经收到,后续的NACK_SN表示除了之前的各个NACK_SN对应RLC PDU,其他的RLC PDU基站都已经收到。
步骤S603、基站的RLC层将RLC状态PDU发送至终端的RLC层。
可以理解的,基站的RLC层将RLC状态PDU传输至基站的MAC层进行组包,基站的MAC层再将经组包的RLC状态PDU发送至终端的MAC层,进而把RLC状态PDU传输到终端的PDCP层,其过程可参考图16方法实施例的相关描述。
其中,在基站的MAC层对RLC状态PDU组包后,如果组包的大小大于基站实际授权值,而导致RLC状态PDU有部分被截取出来,那么MAC层将被截取部分(即不能被纳入授权组包中的部分)直接丢弃。
步骤S604、终端的RLC层基于RLC状态PDU进行数据重传。
相应的,终端解析RLC状态PDU时,认为第一个NACK_SN之前的所有RLC PDU,基站都已经收到;确认后续的NACK_SN表示除了当前RLC状态PDU中前面一系列NACK_SN指示的RLC PDU,其他RLC PDU都已经收到。由于RLC状态PDU可能被基站截取过,所以终端解析完RLC状态PDU后,会将RLC状态PDU最后部分不完整的数据丢弃。
其中,所述RLC层存储有所述RLC PDU的副本;在接收到基站状态报告的情况下,所述终端的PDCP层向基站重传所述RLC状态PDU所指示的NACK_SN对应的RLC PDU的副本。
可以看出,实施本发明实施例所提供的第二种用户面架构,PDCP层支持集中加头、丢包报告等功能,RLC层支持分段、重组、重排序、重传、状态报告等功能,MAC层支持级联、估算授权等功能。终端的PDCP层获取用户面数据后,MAC层基于估算授权值促发所述用户面数据进行预组包。在获得基站的实际授权值后,处理该预组包以使得该预组包匹配实际授权值,并将所述经处理的预组包发给基站,基站再相应基于第二种用户面架构进行解包。实施本发明实施例,可解决现有协议架构中影响通信时延和通信速率的诸多桎梏,实现用户面数据的快速传输,满足人们对用户面数据快速传输的需求。
下面对第一种用户面协议架构和第二种用户面协议架构做进一步的比较说明。
在本发明实施例中,第一种用户面协议架构由于架构面简单,RLC层被取消或者仅支持透传,分段、重组、重排序等功能被上移到较高的PDCP层,所以,第一种用户面协议架构相比于第二种用户面架构,可实现更加快捷的用户面数据处理和传输,减少了资源开销数据传输实时性较好。而对于非确认模式(Unacknowledged Mode,UM),UM模式对实时性要求较高,要求数据快速发送到对端,比如VOIP、视频等对时延较为敏感的数据业务通常会选择UM模式进行数据传输,所以,对于采用需要采用UM模式进行传输的数据,采用第一种用户面协议架构较为契合。在具体实现方式中,当数据基于第一种用户面架构进行数据传输时,为了适应UM模式的要求,可以限制第一种协议架构中PDCP的状态报告反馈机制以及重传功能。
在本发明实施例中,第二种用户面协议架构RLC层扮演重要的角色,分段、重组、重排序、重传、状态报告、等功能都在位置较低的RLC层实现,所以第二种用户面协议架构相比于第一种用户面架构,可实现更加快捷准确的用户面数据处理和传输,由于有RLC层中数据的RLC SN是连续的,故设置所述RLC层利于重传控制。。对于确认模式(Acknowledged
Mode,AM),AM模式对于准确性的要求非常高,为了保证数据的正确接收将会牺牲一些实时性(进行重传等),FPT、Web浏览等对错误较为敏感的数据业务通常采用AM模式进行数据传输,所以,对于采用需要采用AM模式进行传输的数据,采用第二种用户面协议架构较为契合。
需要说明的是,在本发明实施例中,第一种用户面协议架构和第二种用户面协议架构可以独立配置在LTE系统中,也可以同时综合配置在LTE系统中。针对于同时综合配置在LTE系统中的情况,下面举例一个在LTE系统双连接(Dual Connection,DC)模式下的应用场景进行描述。
双连接是一种非理想回程线路(backhaul)前提下的一种载波聚合,在DC场景中,用户设备可以连接到两个通过非理想backhaul相连的基站进行数据通信,如图20所示,DC场景中有一个基站是主基站(MeNB),一个基站是次基站(SeNB),MeNB和SeNB通过X2接口连接,用户设备与各基站通过Uu接口连接,MeNB和SeNB的调度器分别管理各自基站上的无线资源,所以MeNB和SeNB需要相互之间协调通信方案。在用户面协议架构中,进行上下行通信传输的数据具有三种数据承载方式,第一种为主小区组承载(MCG bearer),这种承载方式下,从服务网关(S-GW)下来的数据包可通过MeNB直接发给用户设备;第二种为为辅小区组承载(SCG bearer),这种承载方式下,从服务网关下来的数据包可通过SeNB直接发给用户设备;第三种为分离承载(Split bearer),这种承载方式下,服务网关下来的数据包可通过MeNB直接发给用户设备,或者先从MeNB路由到SeNB,然后再通过SeNB发给用户设备,或者MeNB按照一定算法和比例对数据进行分割,并把部分数据发送给SeNB,最终在MeNB和SeNB上同时给用户设备下发数据。
在本发明具体实施例中,对于Split承载,双连接上配置的逻辑信道号保持相同,不管数据从哪个逻辑信道上传输,MAC子头是相同的,可以预先确定MAC子头。这样,MAC层需要进行数据传输时,MAC PDU中的MAC子头上信道信息保持一致。所以,数据在PDCP层可进行预先集中加头,为数据增加各层头信息,进而可以加快组包速度,提升数据传输效率。
在本发明实施例中,在用户设备、MeNB和SeNB中配置同时有第一种用户面协议架构和第二种用户面协议架构,在DC场景下数据可能是UM承载的,也可能是AM承载的,当数据为UM承载时,用户设备、MeNB和SeNB可采用第一种用户面协议架构进行相关数据的处理和传输;当数据为AM承载时,用户设备、MeNB和SeNB可采用第二种用户面协议架构进行相关数据的处理和传输。也就是说,用户设备、MeNB和SeNB均可以根据数据的承载方式选择合适的用户面协议架构进行处理和传输。实施本发明实施例,可以在数据传输过程中充分利用不同的用户面协议架构所具备的优势,提升在DC场景中数据的传输效率,节省数据开销,更有效进行数据的对等重传,改善传输的时延。
基于同一发明构思,本发明实施例还提供一种装置(如图21所示),该装置用于实现前述图8或图16实施例所描述的方法。如图21所示,装置70包括:收发器703、存储器702和与存储器702耦合的处理器701(处理器701的数量可以是一个或多个,图7中以一个处理器为例)。收发器703、存储器702和处理器701可通过总线或者其它方式连接。其中,收发器703用于向外部发送数据、或者用于从外部接收数据。存储器702用于存储程序代码,处理器701用于调用并运行存储于存储器702中的程序代码。
当装置70为终端时,存储器702中存储的程序代码具体用于实现图8或图16实施例中的所述终端的功能。具体的,处理器701用于调用存储器702中存储的程序代码,并执行以下步骤:
通过终端的特定层获取待传输的用户面数据;所述特定层预设在所述终端的MAC层之上,所述特定层包括一个或者多个协议层;
通过所述终端的MAC层估算当前传输机会获得基站授权的字节数,得到估算授权值,所述估算授权值用于表征MAC层估算的基站授权当前传输机会的大小;
通过所述终端的特定层基于估算授权值处理所述用户面数据,获得预组包数据;
通过所述终端的MAC层基于所述估算授权值将所述预组包数据级联为MAC PDU,其中,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间;
通过所述终端的MAC层基于所获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述实际授权值用于表征所述基站授权当前传输机会的大小;
通过所述收发器向基站发送所述经过处理的MAC PDU。
具体的,所述处理器701执行通过所述终端的MAC层估算当前传输机会获得基站授权的字节数,包括:
所述处理器701执行通过所述终端的MAC层根据授权日志、用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数和重传任务量中的一项或多项估算当前传输机会获得基站授权的字节数。
本发明实施例中,所述处理器701执行通过所述终端的MAC层基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,包括:
在所述实际授权值大于所述MAC PDU的数据包长度的情况下,处理器701执行通过所述终端的MAC层计算所述实际授权值与所述MAC PDU的数据包长度的第一差值,所述终端的MAC层对所述MAC PDU增加第一长度的数据,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述第一长度的数据的大小与所述第一差值相等。
其中,在所述第一差值小于第一预设阈值的情况下,所述第一长度的数据为填充位数据;所述处理器701执行通过所述终端的MAC层对所述MAC PDU增加第一长度的数据,具体为:所述处理器701执行通过所述终端的MAC层对所述MAC PDU增加填充位数据;
其中,在所述第一差值大于第一预设阈值的情况下,判断该第一差值是否匹配下一个PDCP PDU的大小;若匹配,则所述第一长度的数据为为下一个PDCP PDU;若不匹配,则所述第一长度的数据为下一个PDCP PDU分段;所述处理器701执行通过所述终端的MAC层对所述MAC PDU增加第一长度的数据,具体为:所述处理器701执行通过所述终端的MAC层对所述MAC PDU级联所述下一个PDCP PDU或下一个PDCP PDU分段。
本发明实施例中,所述处理器执行通过所述终端的MAC层基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,包括:
在所述实际授权值小于所述MAC PDU的数据包长度的情况下,所述处理器701执行通过所述终端的MAC层计算所述所述MAC PDU的数据包长度与实际授权值的第二差值,所述终端的MAC层对所述MAC PDU减少第二长度的数据,从而使所述经过处理的MAC PDU的数据包长度
匹配所述实际授权值,其中,所述第二长度的数据为MAC PDU分段,所述MAC PDU分段为对该MAC PDU进行分段而获得的,所述MAC PDU分段的大小与所述第二差值相等。
在本发明实施例提供的第一种用户面协议架构中,所述特定层包括PDCP层;
在这种协议架构下,具体的,所述处理器701执行通过所述终端的特定层基于估算授权值处理所述用户面数据,获得预组包数据,包括:所述处理器701执行通过所述终端的所述PDCP层基于所述估算授权值处理所述待传输的用户面数据中一定量的PDU SDU,所述一定量的PDU SDU的大小与N个TTI内估算授权总量的差值小于第一预设阈值,每个TTI内估算授权总量为估算授权值与授权次数的乘积,所述授权次数为MAC层估算的在一个TTI内获得基站实际授权的次数。
具体的,所述处理器701执行通过终端的特定层获取待传输的用户面数据,具体为:所述处理器701执行通过终端的PDCP层获取待传输的用户面数据;
所述处理器701执行通过所述终端的特定层基于估算授权值处理所述用户面数据,获得预组包数据,具体为:所述处理器701执行通过所述终端的PDCP层基于估算授权值处理所述用户面数据,获得MAC SDU。
可选的,所述处理器执行通过所述终端的PDCP层基于估算授权值处理所述用户面数据,包括:所述处理器执行通过所述终端的PDCP层识别所述用户面数据的优先级,优先为优先级较高的用户面数据分配PDCP SN。
具体的,所述处理器执行通过所述终端的PDCP层基于估算授权值处理所述用户面数据,包括:所述处理器执行通过所述终端的PDCP层对所述一定量的PDCP SDU中的每一个PDCP SDU分别增加PDCP头和MAC头,所述PDCP头中包含所述PDCP SN;其中,所述用户面数据为PDCP SDU。
具体的,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间,具体为:在所述MAC PDU中,所述MAC子头、所述PDCP头以及对应的所述PDCP SDU占用连续的存储空间。
可选的,所述通过处理器还用于通过所述PDCP层存储所述用户面数据;所述收发器还用于接收所述基站反馈的第一状态报告;在通过所述收发器接收到所述基站反馈的第一状态报告的情况下,所述处理器执行通过所述终端的PDCP层向基站重传所述第一状态报告所指示的用户面数据,其中,所述第一状态报告包括分组数据汇聚协议否定应答序号PDCP NACK SN,所述PDCP NACK SN包括第一PDCP NACK SN、第二PDCP NACK SN;所述第一PDCP NACK SN表示排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU都已收到;所述第二PDCP NACK SN表示该PDCP SN指示的PDCP PDU没有收到,且,排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU中,除了各个PDCP NACK SN指示的PDCP PDU外,其他的PDCP PDU均已经收到。
在本发明实施例提供的第二种用户面协议架构中,所述特定层包括PDCP层和RLC层;
在这种协议架构下,具体的,所述处理器701执行通过所述终端的特定层基于估算授权值处理所述用户面数据,获得预组包数据,包括:所述处理器701执行通过所述终端的所述PDCP层基于所述估算授权值处理所述待传输的用户面数据中一定量的PDU SDU,所述一定量的PDU SDU的大小与N个TTI内估算授权总量的差值小于第一预设阈值,每个TTI内估算授权
总量为估算授权值与授权次数的乘积,所述授权次数为MAC层估算的在一个TTI内获得基站实际授权的次数。
具体的,所述处理器执行通过终端的特定层获取待传输的用户面数据,具体为:所述处理器执行通过终端的PDCP层获取待传输的用户面数据;
所述处理器执行通过所述终端的特定层基于估算授权值处理所述用户面数据,包括:所述处理器执行通过所述终端的PDCP层对所述一定量的PDCP SDU中的每一个PDCP SDU分别增加PDCP头、RLC头和MAC头;所述PDCP头中包含PDCP SN;所述用户面数据为PDCP SDU;所述处理器执行通过所述RLC层将RLC SN写入所述RLC头。
具体的,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间,具体为:在所述MAC PDU中,所述MAC子头、RLC头、所述PDCP头以及对应的所述PDCP SDU占用连续的存储空间。
在这种协议架构下,所述处理器还用于通过所述RLC层存储所述用户面数据;所述收发器还用于接收所述基站反馈的第二状态报告;在通过所述收发器接收到所述基站反馈的第二状态报告的情况下,所述处理器执行通过所述终端的RLC层向基站重传所述第二状态报告所指示的用户面数据,其中,所述第二状态报告包括分组数据汇聚协议否定应答序号RLC NACK SN,所述RLC NACK SN包括第一RLC NACK SN、第二RLC NACK SN,所述第一RLC NACK SN表示排在该RLC SN之前的分组数据汇聚协议序列号指示的RLC PDU都已收到,所述第二RLC NACK SN表示该RLC SN指示的RLC PDU没有收到,且,排在该RLC SN之前的无线链路控制协议序列号指示的RLC PDU中,除了各个RLC NACK SN指示的RLC PDU外,其他的RLC PDU均已经收到。
在本发明实施例中,所述处理器还用于:在所述终端的PDCP层超时丢包的情况下,通过所述终端的PDCP层生成PDCP控制PDU,并将所述PDCP控制PDU通过所述收发器发送至基站,所述PDCP控制PDU用于向基站指示哪个/哪些用户面数据发生丢包。
其中,所述PDCP控制PDU包括:第一PDCP SN、第二PDCP SN,其中,所述第一PDCP SN和所述第二PDCP SN共同用于指示序列号位于第一PDCP SN和第二PDCP SN之间的PDCP PDU发生丢包。
其中,所述PDCP控制PDU还包括共同位,所述共同位用于指示所述第一PDCP SN和所述第二PDCP SN两者的高位共同位。
在本发明实施例中,在所述用户面数据为分离承载split bear的情况下,在所述分离承载的双连接上配置的逻辑信道号相同;所述MAC子头所述终端的PDCP层基于所述逻辑信道号生成的。
需要说明的,当装置70为终端时,处理器701的执行步骤以及处理器701涉及的其他技术特征还可参照图8或图16方法实施例中所述终端的相关内容,这里不再赘述。
当装置70为基站时,存储器702中存储的程序代码具体用于实现图8或图16实施例中的所述基站的功能。具体的,处理器701用于调用存储器702中存储的程序代码,并执行以下步骤:
通过基站的MAC层接收终端发送的MAC PDU,在所述MAC PDU中,MAC子头以及所对应
的用户面数据占用连续的存储空间;
通过所述基站的MAC层解包所述MAC PDU,以得到MAC SDU,并将所述MAC SDU发送至特定层;所述特定层位于所述MAC层之上,所述特定层包括一个或者多个协议层;
通过所述特定层重排序和重组所述MAC SDU,并通过所述收发器703将经过重排序和重组的MAC SDU发送至高层或者网络。
在本发明实施例提供的第一种用户面协议架构中,所述特定层包括PDCP层;
在这种协议架构下,所述处理器701执行通过所述特定层重排序和重组所述MAC SDU,具体为:所述处理器701执行通过所述PDCP层重排序和重组PDCP PDU。
具体的,所述处理器执行通过所述基站的PDCP层重排序和重组所述PDCP PDU,还包括:在重排序定时器超时的情况下,所述处理器701执行通过所述基站的PDCP层向终端发送PDCP状态PDU,所述PDCP状态PDU用于指示哪个/哪些PDCP PDU或PDCP PDU分段未被所述基站接收。
其中,所述PDCP状态PDU在所述基站获取实际授权值之前构建;在所述PDCP状态PDU构建为MAC PDU的过程中,如果该MAC PDU的数据包长度大于所述实际授权值,则所述处理器701还用于基于所述实际授权值截取该PDCP状态PDU,并将超出所述实际授权值的部分丢弃。
其中,所述PDCP状态PDU包括分组数据汇聚协议否定应答序号PDCP NACK SN,所述PDCP NACK SN包括第一PDCP NACK SN、第二PDCP NACK SN,所述第一PDCP NACK SN表示排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU都已收到,所述第二PDCP NACK SN表示该PDCP SN指示的PDCP PDU没有收到,且,排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU中,除了各个PDCP NACK SN指示的PDCP PDU外,其他的PDCP PDU均已经收到。
具体的,在所述处理器执行通过所述基站的MAC层解包所述MAC PDU之后,包括:在所述基站的MAC层检测到所述MAC子头指示的大小大于MAC子头对应PDCP PDU的大小的情况下,所述处理器701执行通过所述基站的MAC层判定所述MAC子头对应PDCP PDU为PDCP PDU首分段,所述PDCP PDU首分段用于实现所述PDCP SDU的重组。
在本发明实施例提供的第二种用户面协议架构中,所述特定层包括PDCP层和RLC层;
在这种协议架构下,所述处理器701执行通过所述特定层重排序和重组所述MAC SDU,具体为:所述处理器701执行通过所述RLC层重排序和重组RLC PDU。
具体的,所述处理器701执行通过所述基站的RLC层重排序所述RLC PDU,还包括:
在重排序定时器超时的情况下,所述处理器701执行通过所述基站的RLC层向所述终端发送RLC状态PDU,所述RLC状态PDU用于指示哪个/哪些RLC PDU或RLC PDU分段未被所述基站接收。
其中,所述RLC状态PDU在所述基站获取实际授权值之前构建;在所述RLC状态PDU构建为MAC PDU的过程中,如果该MAC PDU的数据包长度大于所述实际授权值,则所述处理器701还用于基于所述实际授权值截取该RLC状态PDU,并将超出所述实际授权值的部分丢弃。
其中,所述RLC状态PDU包括分组数据汇聚协议否定确认序号RLC NACK SN,所述RLC NACK SN包括第一RLC NACK SN、第二RLC NACK SN,所述第一RLC NACK SN表示排在该RLC SN之前的分组数据汇聚协议序列号指示的RLC PDU都已收到,所述第二PDCP NACK SN表示该RLC SN指示的RLC PDU没有收到,且,排在该RLC SN之前的无线链路控制协议序列号指示的RLC PDU中,除了各个RLC NACK SN指示的RLC PDU外,其他的RLC PDU均已经收到。
具体的,在所述处理器701执行通过所述基站的MAC层解包所述MAC PDU以得到RLC PDU之后,包括:在所述基站的MAC层检测到所述MAC子头指示的大小大于MAC子头对应RLC PDU的大小的情况下,所述处理器701执行通过所述基站的MAC层判定所述MAC子头对应RLC PDU为RLC PDU首分段,所述RLC PDU首分段用于实现所述RLC SDU的重组。
在本发明实施例中,所述收发器703还用于接收到终端所发送的PDCP控制PDU,所述PDCP控制PDU用于指示所述终端中哪个/哪些PDCP PDU发生丢包;在通过所述收发器703接收到终端所发送的PDCP控制PDU的情况下,所述收发器701执行放弃等待所述PDCP控制PDU所指示的PDCP PDU。
需要说明的,当装置70为基站时,处理器701的执行步骤以及处理器701涉及的其他技术特征还可参照图8或图16方法实施例中所述基站的相关内容,这里不再赘述。
基于同一发明构思,本发明实施例还提供又一种装置80,,如图22所示,用于执行前述图8实施例描述的一种用户面数据处理方法。
如图22所示,所述装置80可包括:PDCP模块801和MAC模块802。所述PDCP模块801包括第一收发模块8011、缓存模块8012、集中加头模块8013、分段模块8014、丢包模块8015、重排序模块8016、重传模块8017和重组模块8018。所述MAC模块802包括第二收发模块8021、估算授权模块8022、级联模块8023和组包解包模块8024。
当所述装置80为终端时,所述装置80用于实现图8方法实施例中所述终端的功能,具体实现过程如下:
所述第一收发模块8011用于获取待传输的用户面数据;
所述估算授权模块8022用于估算当前传输机会获得基站授权的字节数,得到估算授权值,所述估算授权值用于表征MAC层估算的基站授权当前传输机会的大小;
所述集中加头模块8013用于基于估算授权值处理所述用户面数据,获得PDCP PDU;
所述第一收发模块8011用于将所述PDCP PDU发送至第二收发模块8021;
所述级联模块8023基于所述估算授权值将所述PDCP PDU(又称为MAC SDU)级联为MAC PDU,其中,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间;
所述第二收发模块8021用于获取基站所分配的实际授权值;所述组包解包模块8024用于基于所获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述实际授权值用于表征所述基站授权当前传输机会的大小;
所述第二收发模块8021还用于向基站发送所述经过处理的MAC PDU。
具体的,估算授权模块8022用于估算当前传输机会获得基站授权的字节数,包括:
所述估算授权模块8022用于根据授权日志、用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数和重传任务量中的一项或多项估算当前传输机会获得基站授权的字节数。
可选的,所述组包解包模块8024用于基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,包括:在所述实际授权值大于所述MAC PDU的数据包长度的情况下,所述组包解包模块8024用于计算所述实际授权值与所述MAC PDU的数据包长度的第一差值,对所述MAC PDU增加第一长度的数据,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述第一长度的数据的大小与所述第一差值相等。
其中,在所述第一差值小于第一预设阈值的情况下,所述第一长度的数据为填充位数据;所述组包解包模块8024用于对所述MAC PDU增加第一长度的数据,具体为:所述组包解包模块8024用于对所述MAC PDU增加填充位数据;
其中,在所述第一差值大于第一预设阈值的情况下,判断该第一差值是否匹配下一个PDCP PDU的大小;若匹配,则所述第一长度的数据为为下一个PDCP PDU;若不匹配,则所述第一长度的数据为下一个PDCP PDU分段;所述组包解包模块8024用于对所述MAC PDU增加第一长度的数据,具体为:所述组包解包模块8024用于对所述MAC PDU级联所述下一个PDCP PDU或下一个PDCP PDU分段。
可选的,所述组包解包模块8024用于基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,包括:在所述实际授权值小于所述MAC PDU的数据包长度的情况下,所述组包解包模块8024用于计算所述所述MAC PDU的数据包长度与实际授权值的第二差值,对所述MAC PDU减少第二长度的数据,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,其中,所述第二长度的数据为MAC PDU分段,所述MAC PDU分段为对该MAC PDU进行分段而获得的,所述MAC PDU分段的大小与所述第二差值相等。
具体的,所述集中加头模块8013用于基于估算授权值处理所述用户面数据,获得PDCP PDU,包括:所述集中加头模块8013用于基于所述估算授权值处理所述待传输的用户面数据中一定量的PDU SDU,所述一定量的PDU SDU的大小与N个TTI内估算授权总量的差值小于第一预设阈值,每个TTI内估算授权总量为估算授权值与授权次数的乘积,所述授权次数为MAC层估算的在一个TTI内获得基站实际授权的次数。
可选的,集中加头模块8013用于基于估算授权值处理所述用户面数据,包括:所述集中加头模块8013用于识别所述用户面数据的优先级,优先为优先级较高的用户面数据分配PDCP SN。
具体的,集中加头模块8013用于基于估算授权值处理所述用户面数据,包括:
集中加头模块8013用于对所述一定量的PDCP SDU中的每一个PDCP SDU分别增加PDCP头和MAC头,所述PDCP头中包含所述PDCP SN。
本发明实施例中,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间,具体为:在所述MAC PDU中,所述MAC子头、所述PDCP头以及对应的所述PDCP SDU占用连续的存储空间。
本发明实施例中,所述缓存模块8012用于存储所述用户面数据;
具体的,在第一收发模块8011接收到所述基站反馈的状态报告的情况下,重传模块8017用于向基站重传所述状态报告所指示的用户面数据,其中,所述状态报告包括分组数据汇聚协议否定应答序号PDCP NACK SN,所述PDCP NACK SN包括第一PDCP NACK SN、第二PDCP NACK SN;所述第一PDCP NACK SN表示排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU都已收到;所述第二PDCP NACK SN表示该PDCP SN指示的PDCP PDU没有收到,且,排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU中,除了各个PDCP NACK SN指示的PDCP PDU外,其他的PDCP PDU均已经收到。
本发明实施例中,所述第一收发模块8011还用于超时丢包,在第一收发模块8011超时丢包的情况下,所述丢包模块8015用于生成PDCP控制PDU,并将所述PDCP控制PDU发送至基站,其中,所述PDCP控制PDU用于向基站指示哪个/哪些用户面数据发生丢包。
其中,所述PDCP控制PDU包括:第一PDCP SN、第二PDCP SN,其中,所述第一PDCP SN和所述第二PDCP SN共同用于指示序列号位于第一PDCP SN和第二PDCP SN之间的PDCP PDU发生丢包。
在具体实施例中的,所述PDCP控制PDU还包括共同位,所述共同位用于指示所述第一PDCP SN和所述第二PDCP SN两者的高位共同位。
在本发明实施例中,在所述用户面数据为分离承载split bear的情况下,在所述分离承载的双连接上配置的逻辑信道号相同;其中,所述MAC子头所述终端的PDCP层基于所述逻辑信道号生成的。
需要说明的是,在一具体的实施例中,所述装置80还包括RLC模块803,所述RLC模块803用于接收所述PDCP模块801(第一收发模块8011)发送的数据,并将所述数据透传至所述MAC模块802(第二收发模块8021)。
当所述装置80为基站时,所述装置80用于实现图8方法实施例中所述基站的功能,具体实现过程如下:
第二收发模块8021用于接收终端发送的MAC PDU,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间;
组包解包模块8024用于解包所述MAC PDU,去除MAC PDU中的MAC子头,以得到MAC SDU;
第二收发模块8021还用于将所述MAC SDU发送至第一收发模块8011;
集中加头模块8013去除所述MAC SDU中的PDCP头,获得PDCP SDU;
重排序模块8016对所述PDCP SDU进行重排序;
重组模块8018将经过重排序的述PDCP SDU进行重组;
当所述终端是用户设备时,第一收发模块8011用于将经过重组的述PDCP SDU发送至高层;当所述终端是接入网设备时,第一收发模块8011用于将经过重组的PDCP SDU发送至网络。
在本发明实施例中,在重排序定时器超时的情况下,基站的重传模块8017用于向终端发送PDCP状态PDU,所述PDCP状态PDU用于指示哪个/哪些PDCP PDU或PDCP PDU分段未被所述基站接收。
其中,所述PDCP状态PDU在所述基站获取实际授权值之前构建;在所述PDCP状态PDU构建为MAC PDU的过程中,如果该MAC PDU的数据包长度大于所述实际授权值,则所述基站基于所述实际授权值截取该PDCP状态PDU,并将超出所述实际授权值的部分丢弃。
其中,所述PDCP状态PDU包括分组数据汇聚协议否定应答序号PDCP NACK SN,所述PDCP NACK SN包括第一PDCP NACK SN、第二PDCP NACK SN,所述第一PDCP NACK SN表示排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU都已收到,所述第二PDCP NACK SN表示该PDCP SN指示的PDCP PDU没有收到,且,排在该PDCP SN之前的分组数据汇聚协议序列号指示的PDCP PDU中,除了各个PDCP NACK SN指示的PDCP PDU外,其他的PDCP PDU均已经收到。
具体的,在所述组包解包模块8024解包所述MAC PDU之后,当所述基站的MAC层检测到所述MAC子头指示的大小大于MAC子头对应PDCP PDU的大小,则所述组包解包模块8024判定所述MAC子头对应PDCP PDU为PDCP PDU首分段,所述PDCP PDU首分段用于实现所述PDCP SDU的重组。
需要说明的是,在一具体的实施例中,所述装置80还可以包括RLC模块803,所述RLC模块803用于接收所述MAC模块802(第二收发模块8021)发送的数据,并将所述数据透传至所述PDCP模块801(第一收发模块8011)。
基于同一发明构思,本发明实施例提供又一种装置90,,如图22所示,用于执行前述图16实施例描述的一种用户面数据处理方法。
如图22所示,所述装置90可包括:PDCP模块901、RLC模块902和MAC模块903。所述PDCP模块901包括第一收发模块9011、集中加头模块9012和丢包模块9013。所述RLC模块包括第二收发模块9021、缓存模块9022、分段模块9023、序列分配模块9024、重排序模块9025、重传模块9026和重组模块9027。所述MAC模块903包括第三收发模块9031、级联模块9032、估算授权模块9033和组包解包模块9034。
当所述装置90为终端时,所述装置90用于实现图16方法实施例中所述终端的功能,具体实现过程如下:
所述第一收发模块9011用于获取待传输的用户面数据;
所述估算授权模块9033用于估算当前传输机会获得基站授权的字节数,得到估算授权值,所述估算授权值用于表征MAC层估算的基站授权当前传输机会的大小;
所述集中加头模块9012用于基于估算授权值处理所述用户面数据,获得PDCP PDU;
所述第一收发模块9011用于将所述PDCP PDU发送至第二收发模块9021;
所述序列分配模块9025用于处理所述PDCP PDU,获得RLC PDU;
所述第二收发模块9021用于将所述RLC PDU发送至第三收发模块9031;
所述级联模块9032基于所述估算授权值将所述RLC PDU(又称为MAC SDU)级联为MAC PDU,其中,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间;
所述第三收发模块9031用于获取基站所分配的实际授权值;所述组包解包模块9034用于基于所获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述实际授权值用于表征所述基站授权当前传输机会的大小;
所述第三收发模块9031还用于向基站发送所述经过处理的MAC PDU。
具体的,估算授权模块9033用于估算当前传输机会获得基站授权的字节数,包括:
所述估算授权模块9033用于根据授权日志、用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数和重传任务量中的一项或多项估算当前传输机会获得基站授权的字节数。
可选的,所述组包解包模块9034用于基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,包括:在所述实际授权值大于所述MAC PDU的数据包长度的情况下,所述组包解包模块8024用于计算所述实际授权值与所述MAC PDU的数据包长度的第一差值,对所述MAC PDU增加第一长度的数据,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,所述第一长度的数据的大小与所述第一差值相等。
其中,在所述第一差值小于第一预设阈值的情况下,所述第一长度的数据为填充位数据;所述组包解包模块9034用于对所述MAC PDU增加第一长度的数据,具体为:所述组包解包模块9034用于对所述MAC PDU增加填充位数据;
其中,在所述第一差值大于第一预设阈值的情况下,判断该第一差值是否匹配下一个PDCP PDU的大小;若匹配,则所述第一长度的数据为为下一个PDCP PDU;若不匹配,则所述第一长度的数据为下一个PDCP PDU分段;所述组包解包模块9034用于对所述MAC PDU增加第一长度的数据,具体为:所述组包解包模块9034用于对所述MAC PDU级联所述下一个PDCP PDU或下一个PDCP PDU分段。
可选的,所述组包解包模块9034用于基于获取到的实际授权值处理所述MAC PDU,经过处理的MAC PDU的数据包长度匹配所述实际授权值,包括:在所述实际授权值小于所述MAC PDU的数据包长度的情况下,所述组包解包模块9034用于计算所述所述MAC PDU的数据包长度与实际授权值的第二差值,对所述MAC PDU减少第二长度的数据,从而使所述经过处理的MAC PDU的数据包长度匹配所述实际授权值,其中,所述第二长度的数据为MAC PDU分段,所述MAC PDU分段为对该MAC PDU进行分段而获得的,所述MAC PDU分段的大小与所述第二差值相等。
具体的,所述集中加头模块9012用于基于估算授权值处理所述用户面数据,获得PDCP PDU,包括:所述集中加头模块9012用于基于所述估算授权值处理所述待传输的用户面数据中一定量的PDU SDU,所述一定量的PDU SDU的大小与N个TTI内估算授权总量的差值小于第一预设阈值,每个TTI内估算授权总量为估算授权值与授权次数的乘积,所述授权次数为MAC层估算的在一个TTI内获得基站实际授权的次数。
可选的,集中加头模块9012用于基于估算授权值处理所述用户面数据,包括:所述集中加头模块9012用于识别所述用户面数据的优先级,优先为优先级较高的用户面数据分配PDCP SN。
具体的,所述集中加头模块9012用于基于估算授权值处理所述用户面数据,包括:所述集中加头模块9012用于对所述一定量的PDCP SDU中的每一个PDCP SDU分别增加PDCP头、RLC头和MAC头;所述PDCP头中包含PDCP SN;所述用户面数据为PDCP SDU;
具体的,所述序列分配模块9025用于处理所述PDCP PDU,包括:所述RLC层将RLC SN
写入所述RLC头。
本发明实施例中,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间,具体为:所述MAC PDU包括所述MAC子头、RLC头、所述PDCP头以及对应的所述PDCP SDU,所述MAC子头、RLC头、所述PDCP头以及对应的所述PDCP SDU占用连续的存储空间。
本发明实施例中,所述缓存模块9022用于存储所述用户面数据;
在具体的,第二收发模块9021接收到所述基站反馈的状态报告的情况下,所述重传模块9027用于向基站重传所述状态报告所指示的用户面数据,其中,所述状态报告包括分组数据汇聚协议否定应答序号RLC NACK SN,所述RLC NACK SN包括第一RLC NACK SN、第二RLC NACK SN,所述第一RLC NACK SN表示排在该RLC SN之前的分组数据汇聚协议序列号指示的RLC PDU都已收到,所述第二RLC NACK SN表示该RLC SN指示的RLC PDU没有收到,且,排在该RLC SN之前的无线链路控制协议序列号指示的RLC PDU中,除了各个RLC NACK SN指示的RLC PDU外,其他的RLC PDU均已经收到。
本发明实施例中,所述第一收发模块9011还用于超时丢包,在第一收发模块9011超时丢包的情况下,所述丢包模块9013用于生成PDCP控制PDU,并将所述PDCP控制PDU发送至基站,其中,所述PDCP控制PDU用于向基站指示哪个/哪些用户面数据发生丢包。
其中,所述PDCP控制PDU包括:第一PDCP SN、第二PDCP SN,其中,所述第一PDCP SN和所述第二PDCP SN共同用于指示序列号位于第一PDCP SN和第二PDCP SN之间的PDCP PDU发生丢包。
在具体实施例中的,所述PDCP控制PDU还包括共同位,所述共同位用于指示所述第一PDCP SN和所述第二PDCP SN两者的高位共同位。
在本发明实施例中,在所述用户面数据为分离承载split bear的情况下,在所述分离承载的双连接上配置的逻辑信道号相同;其中,所述MAC子头所述终端的PDCP层基于所述逻辑信道号生成的。
当所述装置90为基站时,所述装置90用于实现图16方法实施例中所述基站的功能,具体实现过程如下:
第三收发模块9031用于接收终端发送的MAC PDU,在所述MAC PDU中,MAC子头以及所对应的用户面数据占用连续的存储空间;
组包解包模块9034用于解包所述MAC PDU,去除MAC子头,以得到MAC SDU;
第三收发模块9031还用于将所述MAC SDU(又称为RLC PDU)发送至第二收发模块9021;
重排序模块9025用于对所述RLC PDU去除RLC头,获得RLC SDU,并对RLC SDU进行重排序;
重传模块9026将经过重排序的RLC SDU进行重组;
第二收发模块9021用于将经过重组的RLC SDU发送至第一收发模块9011;
当所述基站为用户设备时,第一收发模块9011用于将PDCP SDU发送至高层;当所述用户设备是接入网设备时,第一收发模块9011用于将PDCP SDU发送至网络。
在本发明实施例中,在重排序定时器超时的情况下,重传模块9026用于向所述终端
发送RLC状态PDU,所述RLC状态PDU用于指示哪个/哪些RLC PDU或RLC PDU分段未被所述基站接收。
其中,所述RLC状态PDU在所述基站获取实际授权值之前构建;在所述RLC状态PDU构建为MAC PDU的过程中,如果该MAC PDU的数据包长度大于所述实际授权值,则所述基站基于所述实际授权值截取该RLC状态PDU,并将超出所述实际授权值的部分丢弃。
其中,所述RLC状态PDU包括分组数据汇聚协议否定确认序号RLC NACK SN,所述RLC NACK SN包括第一RLC NACK SN、第二RLC NACK SN,所述第一RLC NACK SN表示排在该RLC SN之前的分组数据汇聚协议序列号指示的RLC PDU都已收到,所述第二PDCP NACK SN表示该RLC SN指示的RLC PDU没有收到,且,排在该RLC SN之前的无线链路控制协议序列号指示的RLC PDU中,除了各个RLC NACK SN指示的RLC PDU外,其他的RLC PDU均已经收到。
具体的,在所述组包解包模块9034解包所述MAC PDU以得到RLC PDU之后,包括:当所述基站的MAC层检测到所述MAC子头指示的大小大于MAC子头对应RLC PDU的大小,则所述组包解包模块9034判定所述MAC子头对应RLC PDU为RLC PDU首分段,所述RLC PDU首分段用于实现所述RLC SDU的重组。
本发明实施例中,在第二收发模块9021接收到终端所发送的PDCP控制PDU的情况下,重排序模块9025还用于放弃等待所述PDCP控制PDU所指示的PDCP PDU,所述PDCP控制PDU用于指示所述终端中哪个/哪些PDCP PDU发生丢包。
基于同一发明构思,本发明实施例还提供了一种通信系统,该通信系统包括:终端1001和基站1002。所述终端1001和基站1002分别对应图8方法实施例中的所述终端和基站,或者,所述终端1001和基站1002分别对应图16方法实施例中的所述终端和基站.
在一具体实现中,所述终端1001可以是图21所示装置70表征的终端,所述基站1002可以是图21所示装置表征的基站。
在一具体实现中,终端1001可以是图22所示的装置80表征的终端,基站1002可以是图22所示的装置80表征的基站,可以理解的,所述装置80配置前述第一种用户面协议架构,即所述终端和所述基站均配置第一种用户面协议架构。
在一具体实现中,终端1001可以是图22所示的装置90表征的终端,基站1002可以是图22所示的装置90表征的基站。可以理解的,所述装置90配置前述第二种用户面协议架构,即所述终端和所述基站均配置第二种用户面协议架构。
在一具体实现中,所述装置80所和所述装置90集合成同一装置,也就是说,在该装置中配置有配置前述第一种用户面协议架构和前述第二种用户面协议架构,所述装置可以是发送装置,也可以是接收装置,所述装置可基于实际应用场景选择用户面协议架构进行用户面数据的处理。
基于同一发明构思,本发明实施例还提供了一种基带芯片,所述基带芯片耦合到收发器,所述基带芯片用于:
获取待传输的用户面数据;
估算估算当前进行数据传输时可获得基站授权的数据包长度,得到估算授权值;
基于所述估算授权值对所述用户面数据进行组包,得到第一组包数据;
接收所述基站发送的实际授权值,所述实际授权值表征了所述基站实际授权所述终端进行数据传输时的数据包长度;
根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,得到第二组包数据;通过所述收发器向所述基站发送所述第二组包数据。
具体的,所述基带芯片用于估算当前进行数据传输时可获得基站授权的数据包长度,包括:所述基带芯片用于在媒体接入控制MAC层估算当前传输机会可获得基站授权的数据包长度;
所述基带芯片用于基于所述估算授权值对所述用户面数据进行组包,得到第一组包数据,包括:所述基带芯片用于在特定层基于所述估算授权值将所述第二组包数据为预组包数据;所在MAC层基于所述估算授权值将所述预组包数据级联为媒体接入控制层协议数据单元MAC PDU,并将所述MAC PDU作为所述第一组包数据;其中,所述特定层为分组数据汇聚协议PDCP层,或者,所述特定层为分组数据汇聚协议PDCP层与无线链路控制RLC层;
具体的,所述MAC PDU包括MAC子头以及MAC子头对应的用户面数据,所述MAC子头与所述MAC子头对应的用户面数据占用连续的存储空间。
可选的,所述基带芯片用于根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,包括:
在所述实际授权值指示的数据包长度大于所述MAC PDU的数据包长度的情况下,所述基带芯片用于在MAC层对所述MAC PDU增加第一长度的数据,所述第一长度与所述实际授权值和所述MAC PDU的数据包长度之间的第一差值相等。
其中,在所述第一差值小于第一预设阈值的情况下,所述基带芯片用于在MAC层对所述MAC PDU增加第一长度的填充padding数据;
在所述第一差值大于第一预设阈值的情况下,所述基带芯片用于在MAC层判断所述第一差值是否与下一个预组包数据的数据包长度匹配;若所述第一差值与所述下一个预组包数据的数据包长度匹配,则将所述下一个预组包数据作为所述第一长度的数据增加到所述MAC PDU中;若所述第一差值与所述下一个预组包数据的数据包长度不匹配,则将所述下一个预组包数据的数据分段作为所述第一长度的数据增加到所述MAC PDU中。
可选的,所述基带芯片用于根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,包括:
在所述实际授权值指示的数据包长度小于所述MAC PDU的数据包长度的情况下,所述基带芯片用于在MAC层对所述MAC PDU减少第二长度的数据,所述第二长度与所述MAC PDU的数据包长度和所述实际授权值之间的第二差值相等,所述第二长度的数据为所述MAC PDU的数据分段。
关于所述基带芯片的具体功能实现在本发明上述实施例中已有充分的介绍,这里不再赘述。
基于同一发明构思,本发明实施例提供了又一种基带芯片,所述基带芯片耦合到收发器,所述基带芯片用于:
通过所述收发器接收终端发送的第二组包数据;在所述第二组包数据中,MAC子头与其对应的用户面数据占用连续的存储空间;
解包所述第二组包数据以得到所述用户面数据;
重排序和重组所述用户面数据;
通过所述收发器将经过重排序和重组的用户面数据发送至网络。
可选的,所述基带芯片用于解包所述第二组包数据以得到所述用户面数据,包括:
在检测到所述MAC子头指示的数据包长度大于MAC子头对应用户面数据的数据包长度的情况下,所述基带芯片用于判定所述MAC子头对应的用户面数据为数据分段的首分段,所述数据分段的首分段用于实现所述用户面数据的重组。
具体的,所述基带芯片用于重排序和重组所述用户面数据,包括:
在重排序定时器超时的情况下,所述基带芯片用于生成PDCP状态PDU,通过所述收发器向终端发送所述PDCP状态PDU,所述PDCP状态PDU用于指示未被所述基站接收的用户面数据或用户面数据的数据分段。
可选的,所述PDCP状态PDU在所述基带芯片确定实际授权值之前构建;在所述PDCP状态PDU构建为媒体接入控制层协议数据单元MAC PDU的过程中,如果所述MAC PDU的数据包长度大于所述实际授权值,则所述基带芯片基于所述实际授权值截取该PDCP状态PDU,并将超出所述实际授权值的部分丢弃;其中,所述实际授权值用于表征所述基站授权当前传输机会的数据包长度。
关于所述基带芯片的具体功能实现在本发明上述实施例中已有充分的介绍,这里不再赘述。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者任意组合来实现。当使用软件实现时,可以全部或者部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或其他可编程装置。所述计算机指令可存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网络站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、微波等)方式向另一个网络站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质,也可以是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如软盘、硬盘、磁带等)、光介质(例如DVD等)、或者半导体介质(例如固态硬盘)等等。
在上述实施例中,对各个实施例的描述各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
Claims (43)
- 一种用户面数据处理方法,其特征在于,包括:终端获取待传输的用户面数据;所述终端估算当前进行数据传输时可获得基站授权的数据包长度,得到估算授权值;所述终端基于所述估算授权值对所述用户面数据进行组包,得到第一组包数据;所述终端接收所述基站发送的实际授权值,所述实际授权值表征了所述基站实际授权所述终端进行数据传输时的数据包长度;所述终端根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,得到第二组包数据;所述终端向所述基站发送所述第二组包数据。
- 根据权利要求1所述的方法,其特征在于,所述终端估算当前进行数据传输时可获得基站授权的数据包长度,包括:所述终端的媒体接入控制MAC层估算当前传输机会可获得基站授权的数据包长度;所述终端基于所述估算授权值对所述用户面数据进行组包,得到第一组包数据,包括:所述终端的特定层基于所述估算授权值将所述用户面数据组包为预组包数据;所述终端的MAC层基于所述估算授权值将所述预组包数据级联为媒体接入控制层协议数据单元MAC PDU,并将所述MAC PDU作为所述第一组包数据;其中,所述特定层为分组数据汇聚协议PDCP层,或者,所述特定层为分组数据汇聚协议PDCP层与无线链路控制RLC层。
- 根据权利要求2所述的方法,其特征在于,所述终端的媒体接入控制MAC层估算当前传输机会可获得基站授权的数据包长度,包括:所述终端的MAC层根据授权日志、用户面数据缓冲量、信道质量指示CQI、服务质量QoS参数和重传任务量中的一项或多项估算当前传输机会获得基站授权的数据包长度。
- 根据权利要求1至3任一项所述的方法,其特征在于,所述终端根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,包括:在所述实际授权值指示的数据包长度大于所述MAC PDU的数据包长度的情况下,所述终端的MAC层在所述MAC PDU增加第一长度的数据,所述第一长度与所述实际授权值和所述MAC PDU的数据包长度之间的第一差值相等。
- 根据权利要求4所述的方法,其特征在于,所述终端的MAC层对所述MAC PDU增加第一长度的数据,包括:在所述第一差值小于第一预设阈值的情况下,所述终端的MAC层对所述MAC PDU增加第一长度的填充padding数据;在所述第一差值大于第一预设阈值的情况下,所述终端的MAC层判断所述第一差值是否与下一个预组包数据的数据包长度匹配;若所述第一差值与所述下一个预组包数据的数 据包长度匹配,则将所述下一个预组包数据作为所述第一长度的数据增加到所述MAC PDU中;若所述第一差值与所述下一个预组包数据的数据包长度不匹配,则将所述下一个预组包数据的数据分段作为所述第一长度的数据增加到所述MAC PDU中。
- 根据权利要求1至3任一项所述的方法,其特征在于,所述终端根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,包括:在所述实际授权值指示的数据包长度小于所述MAC PDU的数据包长度的情况下,所述终端的MAC层在所述MAC PDU减少第二长度的数据,所述第二长度与所述MAC PDU的数据包长度和所述实际授权值之间的第二差值相等,所述第二长度的数据为所述MAC PDU的数据分段。
- 根据权利要求2至6任一项所述的方法,其特征在于,在所述特定层为分组数据汇聚协议PDCP层的情况下,所述终端的特定层基于所述估算授权值将所述用户面数据组包为预组包数据,具体为:所述终端的PDCP层基于估算授权值将所述用户面数据组包为媒体接入控制层服务数据单元MAC SDU。
- 根据权利要求7所述的方法,其特征在于,所述终端的PDCP层基于估算授权值将所述用户面数据组包为媒体接入控制层服务数据单元MAC SDU,包括:所述终端的所述PDCP层基于所述估算授权值对所述待传输的用户面数据中的一部分用户面数据进行组包,所述一部分用户面数据的大小与N个传输时间间隔TTI内估算授权总量的差值小于第一预设阈值,每个TTI内估算授权总量为估算授权值与授权次数的乘积,所述授权次数为MAC层估算的在一个TTI内获得基站的实际授权值的次数。
- 根据权利要求7或8所述的方法,其特征在于,所述终端的PDCP层基于估算授权值将所述用户面数据组包为媒体接入控制层服务数据单元MAC SDU,包括:所述终端的PDCP层识别所述用户面数据的优先级,将所述用户面数据按照优先级从高到低进行排序,并基于所述排序为所述用户面数据分配分组数据汇聚协议层序列号PDCP SN;其中,所述优先级预置于所述用户面数据中,用于表征所述用户面数据的重要程度。
- 根据权利要求9所述的方法,其特征在于,所述终端的PDCP层基于估算授权值将所述用户面数据组包为媒体接入控制层服务数据单元MAC SDU,包括:所述终端的PDCP层对所述用户面数据增加PDCP头和MAC头,所述PDCP头中包含所述PDCP SN。
- 根据权利要求10所述的方法,其特征在于,所述MAC PDU包括所述MAC子头、所述PDCP头以及其对应的用户面数据,所述MAC子头、所述PDCP头与所述对应的用户面数 据占用连续的存储空间。
- 根据权利要求7至11任一项所述的方法,其特征在于,所述方法还包括:所述终端的PDCP层还用于缓存所述用户面数据;所述终端的PDCP层接收所述基站反馈的第一状态报告;在所述第一状态报告指示特定PDCP SN对应的用户面数据没有收到且所述第一状态报告中不包含确认应答序号ACK SN的情况下,所述终端的PDCP层向所述基站重传所述特定PDCP SN对应的用户面数据;其中,所述特定PDCP SN对应的用户面数据为所述用户面数据的至少一部分。
- 根据权利要求2至6任一项所述的方法,其特征在于,在所述特定层为分组数据汇聚协议PDCP层与无线链路控制RLC层的情况下,所述终端的特定层基于所述估算授权值将所述第二组包数据为预组包数据,具体为:所述终端的PDCP层基于估算授权值对所述用户面数据增加PDCP头、RLC头和MAC头,从而将所述第二组包数据为分组数据汇聚协议协议数据单元PDCP PDU;其中,所述PDCP头中包含PDCP SN;所述RLC层将无线链路控制层序列号RLC SN写入所述PDCP PDU中的RLC头,从而将所述PDCP PDU组包为所述预组包数据。
- 根据权利要求13所述的方法,其特征在于,所述MAC PDU包括所述MAC子头、RLC头、所述PDCP头以及其对应的用户面数据,所述MAC子头、所述RLC头、所述PDCP头与所述对应的用户面数据占用连续的存储空间。
- 根据权利要求13或14所述的方法,其特征在于,所述方法还包括:所述终端的RLC层还用于存储所述用户面数据;所述终端的RLC层接收所述基站反馈的第二状态报告;在所述第二状态报告指示特定RLC SN对应的用户面数据没有收到且所述第二状态报告中不包含确认应答序号ACK SN的情况下,所述终端的RLC层向所述基站重传所述特定RLC SN对应的用户面数据;其中,所述特定RLC SN对应的用户面数据为所述用户面数据的至少一部分。
- 根据权利要求7至15任一项所述的方法,其特征在于,所述方法还包括:在所述终端的PDCP层超时丢包的情况下,所述终端的PDCP层生成PDCP控制PDU,并将所述PDCP控制PDU发送至所述基站,所述PDCP控制PDU用于向基站指示发生丢包的数据,所述发生丢包的数据为所述用户面数据的至少一部分。
- 根据权利要求16所述的方法,其特征在于,所述PDCP控制PDU包括:第一PDCP SN、第二PDCP SN,其中,所述第一PDCP SN和所述第二PDCP SN共同用于指示序列号位 于第一PDCP SN和第二PDCP SN之间的用户面数据发生丢包。
- 根据权利要求17所述的方法,其特征在于,所述PDCP控制PDU还包括共同位,所述共同位用于指示所述第一PDCP SN和所述第二PDCP SN两者的高位共同位。
- 根据权利要求7或13所述的方法,其特征在于,在所述用户面数据为分离承载split bear的情况下,在所述分离承载的双连接上配置的逻辑信道号相同;所述MAC子头为所述终端的PDCP层基于所述逻辑信道号生成的。
- 一种用户面数据处理方法,其特征在于,包括:基站接收终端发送的第二组包数据;在所述第二组包数据中,MAC子头与其对应的用户面数据占用连续的存储空间;所述基站解包所述第二组包数据以得到所述用户面数据;所述基站重排序和重组所述用户面数据,并将经过重排序和重组的用户面数据发送至网络。
- 根据权利要求20所述的方法,其特征在于,所述基站解包所述第二组包数据以得到所述用户面数据,包括:所述基站在检测到所述MAC子头指示的数据包长度大于MAC子头对应用户面数据的数据包长度的情况下,判定所述MAC子头对应的用户面数据为数据分段的首分段,所述数据分段的首分段用于实现所述用户面数据的重组。
- 根据权利要求21所述的方法,其特征在于,所述基站重排序和重组所述用户面数据,具体为:所述基站的分组数据汇聚协议PDCP层重排序和重组所述用户面数据。
- 根据权利要求22所述的方法,其特征在于,所述基站的PDCP层重排序和重组所述用户面数据,包括:在重排序定时器超时的情况下,所述基站的PDCP层向终端发送PDCP状态PDU,所述PDCP状态PDU用于指示未被所述基站接收的用户面数据或用户面数据的数据分段。
- 根据权利要求23所述的方法,其特征在于,所述PDCP状态PDU在所述基站确定实际授权值之前构建;在所述PDCP状态PDU构建为媒体接入控制层协议数据单元MAC PDU的过程中,如果所述MAC PDU的数据包长度大于所述实际授权值,则所述基站基于所述实际授权值截取该PDCP状态PDU,并将超出所述实际授权值的部分丢弃;其中,所述实际授权值用于表征所述基站授权当前传输机会的数据包长度。
- 根据权利要求23或24所述的方法,其特征在于,所述PDCP状态PDU包括分组数据汇聚协议否定应答序号PDCP NACK SN,所述PDCP NACK SN包括第一PDCP NACK SN、第 二PDCP NACK SN,所述第一PDCP NACK SN表示排在该PDCP SN之前的分组数据汇聚协议序列号指示的用户面数据都已收到,所述第二PDCP NACK SN表示该PDCP SN指示的用户面数据没有收到,且,排在该PDCP SN之前的分组数据汇聚协议序列号指示的用户面数据中,除了各个PDCP NACK SN指示的用户面数据外,其他的用户面数据均已经收到。
- 根据权利要求20所述的方法,其特征在于,所述基站重排序和重组所述用户面数据,具体为:所述基站的无线链路控制RLC层重排序和重组所述用户面数据。
- 根据权利要求26所述的方法,其特征在于,所述基站的RLC层重排序所述RLC PDU还包括:在重排序定时器超时的情况下,所述基站的RLC层向所述终端发送RLC状态PDU,所述RLC状态PDU用于指示未被所述基站接收的用户面数据或用户面数据的数据分段。
- 根据权利要求27所述的方法,其特征在于,所述RLC状态PDU在所述基站确定实际授权值之前构建;在所述RLC状态PDU构建为MAC PDU的过程中,如果该MAC PDU的数据包长度大于所述实际授权值,则所述基站基于所述实际授权值截取该RLC状态PDU,并将超出所述实际授权值的部分丢弃。
- 根据权利要求20至28任一项所述的方法,其特征在于,所述方法还包括:所述基站在接收到终端所发送的PDCP控制PDU的情况下,放弃等待所述PDCP控制PDU所指示的发生丢包的数据,所述发生丢包的数据为所述用户面数据的至少一部分。
- 一种终端,其特征在于,包括:处理器,以及耦合至所述处理器的收发器,其中,所述处理器用于:获取待传输的用户面数据;估算估算当前进行数据传输时可获得基站授权的数据包长度,得到估算授权值;基于所述估算授权值对所述用户面数据进行组包,得到第一组包数据;通过所述收发器接收所述基站发送的实际授权值,所述实际授权值表征了所述基站实际授权所述终端进行数据传输时的数据包长度;根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,得到第二组包数据;通过所述收发器向所述基站发送所述第二组包数据。
- 根据权利要求30所述的终端,其特征在于,所述处理器执行估算当前进行数据传输时可获得基站授权的数据包长度,包括:所述处理器执行在媒体接入控制MAC层估算当前传输机会可获得基站授权的数据包长度;所述处理器执行基于所述估算授权值对所述用户面数据进行组包,得到第一组包数据,包括:所述处理器执行在特定层基于所述估算授权值将所述第二组包数据为预组包数据;所在MAC层基于所述估算授权值将所述预组包数据级联为媒体接入控制层协议数据单元MAC PDU,并将所述MAC PDU作为所述第一组包数据;其中,所述特定层为分组数据汇聚协议PDCP层,或者,所述特定层为分组数据汇聚协议PDCP层与无线链路控制RLC层。
- 根据权利要求31所述的终端,其特征在于,所述MAC PDU包括MAC子头以及MAC子头对应的用户面数据,所述MAC子头与所述MAC子头对应的用户面数据占用连续的存储空间。
- 根据权利要求30至32任一项所述的终端,其特征在于,所述处理器执行根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,包括:在所述实际授权值指示的数据包长度大于所述MAC PDU的数据包长度的情况下,所述处理器执行在MAC层对所述MAC PDU增加第一长度的数据,所述第一长度与所述实际授权值和所述MAC PDU的数据包长度之间的第一差值相等。
- 根据权利要求33所述的终端,其特征在于,所述处理器执行在MAC层对所述MAC PDU增加第一长度的数据,包括:在所述第一差值小于第一预设阈值的情况下,所述处理器执行在MAC层对所述MAC PDU增加第一长度的填充padding数据;在所述第一差值大于第一预设阈值的情况下,所述处理器执行在MAC层判断所述第一差值是否与下一个预组包数据的数据包长度匹配;若所述第一差值与所述下一个预组包数据的数据包长度匹配,则将所述下一个预组包数据作为所述第一长度的数据增加到所述MAC PDU中;若所述第一差值与所述下一个预组包数据的数据包长度不匹配,则将所述下一个预组包数据的数据分段作为所述第一长度的数据增加到所述MAC PDU中。
- 根据权利要求30至32任一项所述的终端,其特征在于,所述处理器执行根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,包括:在所述实际授权值指示的数据包长度小于所述MAC PDU的数据包长度的情况下,所述处理器执行在MAC层对所述MAC PDU减少第二长度的数据,所述第二长度与所述MAC PDU的数据包长度和所述实际授权值之间的第二差值相等,所述第二长度的数据为所述MAC PDU的数据分段。
- 一种基站,其特征在于,包括处理器,和耦合至所述处理器的收发器,其中,所述处理器用于:通过所述收发器接收终端发送的第二组包数据;在所述第二组包数据中,MAC子头与其对应的用户面数据占用连续的存储空间;解包所述第二组包数据以得到所述用户面数据;重排序和重组所述用户面数据;通过所述收发器将经过重排序和重组的用户面数据发送至网络。
- 根据权利要求36所述的基站,其特征在于,所述处理器执行解包所述第二组包数据以得到所述用户面数据,包括:在检测到所述MAC子头指示的数据包长度大于MAC子头对应用户面数据的数据包长度的情况下,所述处理器执行判定所述MAC子头对应的用户面数据为数据分段的首分段,所述数据分段的首分段用于实现所述用户面数据的重组。
- 根据权利要求36或37所述的基站,其特征在于,所述处理器执行重排序和重组所述用户面数据,包括:在重排序定时器超时的情况下,所述处理器执行生成PDCP状态PDU,通过所述收发器向终端发送所述PDCP状态PDU,所述PDCP状态PDU用于指示未被所述基站接收的用户面数据或用户面数据的数据分段。
- 根据权利要求38所述的基站,其特征在于,所述PDCP状态PDU在所述处理器确定实际授权值之前构建;在所述PDCP状态PDU构建为媒体接入控制层协议数据单元MAC PDU的过程中,如果所述MAC PDU的数据包长度大于所述实际授权值,则所述处理器执行基于所述实际授权值截取该PDCP状态PDU,并将超出所述实际授权值的部分丢弃;其中,所述实际授权值用于表征所述基站授权当前传输机会的数据包长度。
- 一种通信系统,其特征在于,包括:如权利要求30-35中任一项所述的终端和权利要求36-39中任一项所述的基站。
- 一种基带芯片,其特征在于,所述基带芯片耦合到收发器,所述基带芯片用于:获取待传输的用户面数据;估算估算当前进行数据传输时可获得基站授权的数据包长度,得到估算授权值;基于所述估算授权值对所述用户面数据进行组包,得到第一组包数据;接收所述基站发送的实际授权值,所述实际授权值表征了所述基站实际授权所述终端进行数据传输时的数据包长度;根据所述第一组包数据的数据包长度与所述实际授权值指示的数据包长度是否匹配,对所述第一组包数据进行处理,得到第二组包数据;通过所述收发器向所述基站发送所述第二组包数据。
- 一种存储计算机指令的可读非易失性存储介质,其特征在于,包括计算机指令,所述计算机指令被执行以实现权利要求1-19任一项描述的方法,或者,所述计算机指令被执行以实现权利要求20-29任一项描述的方法。
- 一种计算机程序产品,其特征在于,当计算机程序产品运行于计算机时,被执行以实现权利要求1-19任一项描述的方法,或者,被执行以实现权利要求20-29任一项描述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2017/086306 WO2018218416A1 (zh) | 2017-05-27 | 2017-05-27 | 用户面数据处理方法、相关设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2017/086306 WO2018218416A1 (zh) | 2017-05-27 | 2017-05-27 | 用户面数据处理方法、相关设备及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018218416A1 true WO2018218416A1 (zh) | 2018-12-06 |
Family
ID=64454251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2017/086306 WO2018218416A1 (zh) | 2017-05-27 | 2017-05-27 | 用户面数据处理方法、相关设备及系统 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2018218416A1 (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026410A (zh) * | 2006-02-22 | 2007-08-29 | 华为技术有限公司 | 基于演进架构的基站和终端及其数据发射和接收方法 |
CN102158981A (zh) * | 2010-02-11 | 2011-08-17 | 中兴通讯股份有限公司 | 一种基于竞争的上行数据传输方法和系统 |
CN102547687A (zh) * | 2010-12-23 | 2012-07-04 | 上海贝尔股份有限公司 | 无线通信网络中对数据包进行处理的方法及装置 |
-
2017
- 2017-05-27 WO PCT/CN2017/086306 patent/WO2018218416A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101026410A (zh) * | 2006-02-22 | 2007-08-29 | 华为技术有限公司 | 基于演进架构的基站和终端及其数据发射和接收方法 |
CN102158981A (zh) * | 2010-02-11 | 2011-08-17 | 中兴通讯股份有限公司 | 一种基于竞争的上行数据传输方法和系统 |
CN102547687A (zh) * | 2010-12-23 | 2012-07-04 | 上海贝尔股份有限公司 | 无线通信网络中对数据包进行处理的方法及装置 |
Non-Patent Citations (1)
Title |
---|
NTT DOCOMO INC.: "Proposed description of Protocol Layers and Functions", 3GPP TSG RAN WG2 MEETING #48, no. R2-051826, 2 September 2005 (2005-09-02), XP050128989 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11696202B2 (en) | Communication method, base station, terminal device, and system | |
CN108282825B (zh) | 一种信息处理方法及装置 | |
WO2018059590A1 (zh) | 数据处理方法、装置及系统 | |
US10602400B2 (en) | Enhancement of PDCP status report | |
US20200267793A1 (en) | Method and system for handling packet duplication and resumption of rbs in wireless communication system | |
CN104935413B (zh) | 分组数据汇聚协议pdcp实体及其执行的方法 | |
CN108337633B (zh) | 数据分流配置方法、基站系统和用户终端 | |
WO2018202037A1 (zh) | 传输数据的方法、终端设备和网络设备 | |
WO2018127225A1 (zh) | 数据传输方法、网络侧设备及用户设备 | |
KR102341420B1 (ko) | 스위칭 방법, 액세스 네트워크 장치 및 단말 장치 | |
TWI646814B (zh) | Data transmission method and related equipment | |
EP3836598B1 (en) | Data transmission apparatuses and system | |
WO2017049647A1 (zh) | 一种数据发送方法、数据接收方法和相关设备 | |
CN109714134B (zh) | 接收窗口滑动方法及装置 | |
US20220368782A1 (en) | Baseband chip and method for layer 2 downlink data processing | |
TW200836537A (en) | Method for transmitting control information in a mobile communication system | |
WO2012083762A1 (zh) | 数据传输方法、设备及系统 | |
Salah et al. | Performance analysis of user plane connectivity in the 5G non-standalone deployment | |
WO2014194841A1 (zh) | 数据传输方法及装置 | |
CN107484204B (zh) | 基站上行突发缓解方法及装置 | |
WO2017133595A1 (zh) | 数据处理的方法及装置 | |
CN108200605B (zh) | 一种基站的数据传输方法和装置 | |
WO2020103047A1 (zh) | 一种数据传输方法和装置 | |
WO2016061987A1 (zh) | 报文处理方法及装置 | |
WO2018218416A1 (zh) | 用户面数据处理方法、相关设备及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17911482 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17911482 Country of ref document: EP Kind code of ref document: A1 |