WO2023005909A1 - 网络编码场景下的超时丢包方法、装置及可读存储介质 - Google Patents

网络编码场景下的超时丢包方法、装置及可读存储介质 Download PDF

Info

Publication number
WO2023005909A1
WO2023005909A1 PCT/CN2022/107865 CN2022107865W WO2023005909A1 WO 2023005909 A1 WO2023005909 A1 WO 2023005909A1 CN 2022107865 W CN2022107865 W CN 2022107865W WO 2023005909 A1 WO2023005909 A1 WO 2023005909A1
Authority
WO
WIPO (PCT)
Prior art keywords
pdcp
layer
packet
communication device
packets
Prior art date
Application number
PCT/CN2022/107865
Other languages
English (en)
French (fr)
Inventor
刘菁
董朋朋
曹振臻
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2023005909A1 publication Critical patent/WO2023005909A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information

Definitions

  • the present application relates to the field of communication technologies, and in particular to a method, device and readable storage medium for overtime packet loss in a network coding scenario.
  • hybrid automatic repeat request hybrid automatic repeat request
  • ARQ automatic repeat request
  • these two retransmission mechanisms are feedback-based retransmission mechanisms, and the delay is usually relatively large, including: air interface transmission delay, data processing delay at the receiving end, acknowledgment (acknowledgment, ACK) / negative acknowledgment (negative-acknowledgment, NACK) information feedback delay, etc., resulting in low system spectrum efficiency of these two retransmission mechanisms.
  • LTE or NR protocol is considered in the access layer (for example, packet data convergence protocol (PDCP) layer, or, PDCP layer and radio link control (A newly defined protocol layer between radio link control, RLC) layers) introduces network coding (network coding, NC) technology, uses network coding technology to perform network coding operations on data packets, and transmits coded packets obtained through network coding operations Consider both delay and spectrum efficiency performance.
  • PDCP packet data convergence protocol
  • RLC radio link control
  • the existing NR PDCP layer has set a timeout packet loss mechanism based on discardTimer (discarding timer) in order to ensure the quality of service (quality of service, QoS), so in the access layer (such as PDCP layer, or PDCP layer and RLC layer
  • discardTimer discarding timer
  • QoS quality of service
  • the embodiment of the present application provides a method, device, and readable storage medium for overtime packet loss in a network coding scenario, which can perform overtime packet loss processing in the scenario where network coding is introduced into the access layer of LTE or NR or a future network, such as Discard the data packets whose QoS has expired (that is, the discardTimer has expired), thereby reducing the waste of resources caused by the transmission or storage of QoS invalid data packets, and improving the efficiency of air interface transmission or storage.
  • the present application provides a method for overtime packet loss in a network coding scenario.
  • the method includes: a communication device (from an upper layer) acquires (for example, receives) a set of original data to be encoded, and associates the set of original data with A timer; if the timer associated with the group of original data expires, it means that the QoS of this group of original data has expired, and the communication device discards at least one of the following: the group of original data, and the group of original data performs network coding function
  • the processing generates a plurality of first packets.
  • the group of original data is used to jointly/jointly perform network coding function processing to generate a plurality of first data packets.
  • the processing of the network coding function may generate system packets and redundant packets, and may also generate original data packets and redundant packets
  • the plurality of first data packets include system packets and redundant packets
  • the plurality of first data packets Packets include original data packets and redundant packets. It should be understood that for the introduction of specific network coding functions and the meanings of original data packets, system packets, and redundant packets, refer to the description of the specific embodiments below, and the description is not expanded here due to space limitations.
  • the communication device is a terminal device, such as a UE; or the communication device is a network device, such as a base station (gNB).
  • the base station may adopt a centralized unit (central unit, CU)-distributed unit (distributed unit, DU) separation architecture, or may adopt a non-CU-DU separation architecture.
  • this solution directly associates a timer with a group of raw data to be encoded.
  • the timer expires, the group of raw data and the system packet generated after the network coding function of this group of raw data are discarded. and redundant packets, or original data packets and redundant packets, which can be introduced into the network coding scenario at the access layer of LTE or NR (such as within the PDCP layer, or a newly defined protocol layer between the PDCP layer and the RLC layer), Discard the data packets whose QoS has expired, reduce the waste of resources caused by the transmission of QoS invalid data packets on the air interface, and improve the efficiency of air interface transmission.
  • the present application provides a communication device, which may be a terminal device or a chip in the terminal device; or, the communication device may also be a network device or a chip in the network device.
  • the communication device includes: an acquiring module, configured to acquire a set of raw data, and the set of raw data is associated with a timer; a discarding module, configured to discard at least one of the following if the timer associated with the set of raw data expires:
  • the group of raw data the group of raw data is processed by the network coding function to generate a plurality of first data packets.
  • the group of original data is used to jointly/jointly perform network coding function processing to generate a plurality of first data packets.
  • the multiple first data packets include system packets and redundant packets, or, the multiple first data packets include original data packets and redundant packets.
  • the network coding function includes one or more of processing such as segmentation, concatenation, and padding, and optionally, the network coding function further includes coding processing.
  • the segmentation processing is used to divide a service data unit (service data unit, SDU)/protocol data unit (protocol data unit, PDU) into multiple data segments
  • the cascading processing is used to divide all or part of an SDU/PDU Concatenated with all or part of another SDU/PDU to form a data segment.
  • the padding process is used to pad the data segment or SDU/PDU smaller than a certain size to make it equal to the certain size. After each data segment is added with a packet header, original data packets of equal size are obtained, and these original data packets of equal size are encoded to obtain system packets and redundant packets, or redundant packets.
  • this scheme introduces network coding, divides SDU/PDU of different sizes, concatenates, adds padding, etc., in order to obtain original data packets of equal size, and then Encode the original data packets of the same size to obtain system packets and redundant packets, or redundant packets, so that the network coding technology can be applied in scenarios that do not depend on the size of the SDU/PDU.
  • the communication device includes a PDCP layer.
  • the above method further includes: the communication device disables the association function between the PDCP SDU and the discard timer in the PDCP layer of the communication device. It can be seen that this solution can reduce the complexity of the communication device by associating a timer with a set of original data and disabling the existing mechanism of associating a timer with a PDCP SDU.
  • the above-mentioned original data may be PDCP SDU or PDCP PDU received from the upper layer, or the above-mentioned original data may be PDCP SDU/PDU after segmentation, concatenation, padding, etc. After one or more of them, add the packet header to get the original data packet. That is to say, this solution can either associate a timer with a group of PDCP SDU/PDU received from the upper layer, or associate a timer with a group of original data packets.
  • the communication device includes a PDCP layer.
  • the above raw data is a PDCP SDU.
  • the above group of PDCP SDUs corresponds to the above multiple first data packets.
  • a first data packet corresponds to a PDCP PDU.
  • a PDCP PDU is obtained after adding a PDCP header to a first data packet.
  • a PDCP PDU includes a first data packet and a PDCP header. If the timer associated with the above-mentioned set of original data (PDCP SDU here) expires, the communication device not only discards at least one of the following: the set of original data, the multiple first data generated by processing the set of original data through the network coding function Data packets, and discard multiple PDCP PDUs corresponding to this group of PDCP SDUs.
  • a PDCP PDU corresponds to N PDCP SDUs
  • the first data packet included in a PDCP PDU is a system packet or an original data packet
  • the data of the first data packet included in this PDCP PDU comes from each of the N PDCP SDUs PDCP SDU; or, the first data packet included in a PDCP PDU is a redundant packet, then the original data packet included in this PDCP PDU that satisfies the network coding relationship with the first data packet comes from each PDCP SDU in the N PDCP SDUs .
  • the relationship between PDCP PDU and PDCP SDU described here is applicable to any implementation mode in which the network coding function provided by this application is located in the PDCP layer, and will not be repeated below.
  • this solution not only discards the PDCP SDU and the first data packet, but also discards the corresponding PDCP PDU, which can not only solve the problem of PDCP SDU and When PDCP PDUs are no longer in one-to-one correspondence, how to discard SDUs and PDUs that have failed in QoS; it can also reduce the probability of transmitting PDCP PDUs that have failed in QoS to the next layer, thereby saving air interface resources.
  • the communications apparatus includes a PDCP layer, an NC layer, and an RLC layer.
  • the NC layer is mainly used to realize the network coding function.
  • the above-mentioned original data is a PDCP PDU.
  • the communication device not only discards at least one of the following: the set of original data, the set of original data is generated by processing the network coding function multiple first data packets, and also discard the PDCP SDUs corresponding to this group of PDCP PDUs.
  • One of the PDCP PDUs corresponds to one PDCP SDU. Specifically, one PDCP SDU is added with a PDCP header to obtain a PDCP PDU.
  • this solution not only discards the PDCP PDU and the first data packet, but also discards the corresponding PDCP SDU, which can reduce the number of PDCP layers generated by the PDCP layer using PDCP SDUs that have failed QoS.
  • the PDU is transmitted to the lower layer (ie, the NC layer) to reduce invalid operations.
  • the above-mentioned communication device is a centralized unit or a chip used for the centralized unit, and the above-mentioned NC layer may be located under the PDCP layer.
  • the communication device After the communication device performs network coding processing on a group of PDCP PDUs to generate multiple first data packets, it sends the generated multiple first data packets to the distributed unit. Therefore, if the timer associated with the above-mentioned group of original data (PDCP PDU here) expires, the communication device sends indication information to the distributed unit, and the indication information is used to instruct the distributed unit to discard the group of original data to perform the network coding function The generated plurality of first data packets are processed.
  • the indication information includes any of the following items: the respective identifications of the plurality of first data packets, such as packet IDs (packet ID); the range to which the identifications of the plurality of first data packets belong, such as the range of packet IDs; The identification of the encoding block to which the plurality of first data packets belong, such as a block ID (block ID); the identification of the respective encoding coefficient factors corresponding to the plurality of first data packets, such as a coefficient identification (Coeff_ID).
  • the distributed unit receives instruction information from the communication device, where the instruction information is used to instruct the distributed unit to discard the plurality of first data packets generated by performing network encoding operations on the above group of original data.
  • the distribution unit discards the multiple first data packets generated by performing network coding operations on the group of original data according to the instruction of the instruction information.
  • the indication information includes the numbering (such as packet ID) of the first data packet, and the distributed unit discards the first data packet identified by the number; the indication information includes the block ID, and the distributed unit discards the first data packet received The first packet whose block ID field is the same as the block ID, and so on.
  • the indication information cannot be realized through the identifier of the encoding coefficient factor.
  • the CU does not need to perform the operation of discarding the first data packet by itself, and may instruct the DU to discard the first data packet through an instruction message.
  • the CU Conversely, if after the CU sends a certain first data packet to the DU, the first data packet still exists in the storage space (such as cache) of the CU, then after the first data packet is sent to the DU, if it is related to the generation of the first data packet
  • the CU When the timer associated with a group of PDCP PDUs of a data packet expires, the CU not only discards the first data packet itself, but also instructs the DU to also discard the first data packet through the indication information.
  • this solution is aimed at the situation where the NC layer is located under the PDCP layer. Since the PDCP PDU is encapsulated in the first data packet, the RLC layer cannot directly see the PDCP PDU, so that the existing mechanism cannot be used to discard data packets that have failed QoS ; Therefore, the CU instructs the DU to discard the QoS-invalid data packets through the instruction information, thereby reducing the waste of resources caused by sending the QoS-invalid data on the air interface, and improving the efficiency of air interface transmission.
  • the above-mentioned communication device is a distributed unit or a chip for a distributed unit, and the above-mentioned NC layer may be located above the RLC layer.
  • the above-mentioned NC layer may be located above the RLC layer.
  • what the CU sends to the communication device is a PDCP PDU.
  • the NC layer of the communication device After the NC layer of the communication device performs network coding function processing on a group of PDCP PDUs to generate a plurality of first data packets, it sends the generated first data packets to the lower layer (ie, the RLC layer). Therefore, if the timer associated with the above-mentioned group of original data (PDCP PDU here) expires, the NC layer of the communication device instructs the RLC layer to discard the first data packet transmitted to the RLC layer.
  • the indication here can be achieved through inter-layer interaction.
  • the DU receives a group of PDCP PDUs from the CU, associates a timer with this group of PDCP PDUs, and performs network coding function processing and generation on this group of PDCP PDUs.
  • the communication device above is a terminal device or a chip used for a terminal device.
  • the communication device above includes a PDCP layer, an NC layer, and an RLC layer, and the NC layer is located between the PDCP layer and the RLC layer.
  • the method further includes: the NC layer of the communication device associates a timer with the group of PDCP PDUs. If the timer associated with the group of PDCP PDUs expires, the NC layer of the communication device discards at least one of the following: the group of PDCP PDUs, and the plurality of first data packets generated by processing the group of PDCP PDUs through the network coding function.
  • the communication device above is a terminal device or a chip used for a terminal device.
  • the communication device above includes a PDCP layer, an NC layer, and an RLC layer, and the NC layer is located between the PDCP layer and the RLC layer.
  • the NC of the communication device After the communication device transmits all or part of the first data packets generated by the network coding function processing of the above group of PDCP PDUs to the RLC layer of the communication device, if the timer associated with this group of PDCP PDUs expires, the NC of the communication device
  • the layer instructs the RLC layer of the communication device to discard the first data packet transmitted to the RLC layer. Accordingly, the RLC layer of the communication device discards the first data packet received from the NC layer of the communication device.
  • the NC layer of the communication device may instruct the RLC layer to delete the packet sent to the RLC layer.
  • This part of the first data packets that is to say, the first data packets not sent to the RLC layer does not need the NC layer to instruct the RLC layer to delete.
  • the interaction between the NC layer and the RLC layer can be realized through primitives.
  • this solution is aimed at the situation where the NC layer is located between the PDCP layer and the RLC layer. Since the PDCP PDU is encapsulated in the first data packet, the RLC layer cannot directly see the PDCP PDU, so that the existing mechanism cannot be used to discard the already invalid QoS.
  • the UE uses interlayer interaction (primitive language) to indicate that the RLC layer discards data packets that have failed in QoS, thereby reducing the waste of resources caused by sending QoS invalid data on the air interface and improving the efficiency of air interface transmission.
  • the present application provides a method for overtime packet loss in a network coding scenario, the method comprising: the communication device (from the upper layer) acquires (for example, receives) original data, and performs network coding function processing on the original data to generate A plurality of first data packets, and a timer is associated with each generated first data packet; , the following takes the timer associated with the first data packet i to expire as an example), and the associated timer expires, the communication device discards the first data packet.
  • the processing of the network coding function may generate system packets and redundant packets, and may also generate original data packets and redundant packets
  • the plurality of first data packets include system packets and redundant packets, or, the plurality of first data packets
  • a data packet includes an original data packet and a redundant packet.
  • the communication device is a terminal device, such as a UE; or the communication device is a network device, such as a base station (gNB).
  • the base station may adopt a CU-DU separation architecture, or may adopt a non-CU-DU separation architecture.
  • this solution associates a timer with each first data packet, and when the timer expires, the first data packet is discarded, so that the access layer of LTE or NR (such as within the PDCP layer, or PDCP In the network coding scenario, the newly defined protocol layer between the RLC layer and the RLC layer) is introduced to discard data packets that have failed QoS, reduce the waste of resources caused by the transmission of QoS invalid data packets on the air interface, and improve the efficiency of air interface transmission.
  • LTE or NR such as within the PDCP layer, or PDCP
  • the newly defined protocol layer between the RLC layer and the RLC layer is introduced to discard data packets that have failed QoS, reduce the waste of resources caused by the transmission of QoS invalid data packets on the air interface, and improve the efficiency of air interface transmission.
  • the present application provides a communication device, which may be a terminal device or a chip in the terminal device; or, the communication device may also be a network device or a chip in the network device.
  • the communication device includes: an encoding module, configured to perform network encoding function processing on the original data to generate a plurality of first data packets, and one of the first data packets is associated with a timer; a discarding module, configured to perform a plurality of first data packets The timer associated with the first data packet i in the timeout expires, and the first data packet i is discarded.
  • the multiple first data packets include system packets and redundant packets, or, the multiple first data packets include original data packets and redundant packets.
  • the above-mentioned network coding function includes one or more of processing such as segmentation, concatenation, and padding.
  • the network coding function also includes coding processing .
  • the segmentation process is used to divide one SDU/PDU into multiple data segments
  • the concatenation process is used to concatenate all or part of one SDU/PDU with all or part of another SDU/PDU to form a data segment.
  • the padding process is used to pad the data segment or SDU/PDU smaller than a certain size to make it equal to the certain size. After each data segment is added with a packet header, original data packets of equal size are obtained, and these original data packets of equal size are encoded to obtain system packets and redundant packets, or redundant packets.
  • the above-mentioned original data may include one or more PDCP SDUs or PDCP PDUs received from the upper layer, or, the above-mentioned original data includes PDCP SDU/PDU after segmentation and concatenation, After adding one or more items in the processing such as padding, add a packet header to obtain multiple original data packets. That is to say, the data packets included in the original data in this scheme can be PDCP SDU/PDU, or can be original data packets.
  • the communications device includes a PDCP layer.
  • the above method further includes: the communication device disables the association function between the PDCP SDU and the discard timer in the PDCP layer of the communication device.
  • the communications device includes a PDCP layer.
  • the above raw data includes one or more PDCP SDUs.
  • a first data packet corresponds to a PDCP PDU.
  • a PDCP PDU is obtained after adding a PDCP header to a first data packet.
  • a PDCP PDU includes a first data packet and a PDCP header. If the timer associated with the first data packet i expires, the communication device not only discards the first data packet i, but also discards the PDCP PDU corresponding to the first data packet i.
  • the communication device not only discards the first data packet i and the PDCP PDU corresponding to the first data packet i, but also discards the PDCP PDU corresponding to the first data packet i.
  • PDCP SDUs One of the first data packets corresponds to one or more PDCP SDUs.
  • this solution not only discards the corresponding first data packet, but also discards the PDCP PDU corresponding to the first data packet (because the first data packet has already lost its QoS, it is obtained by adding the PDCP header to the first data packet) PDCP PDUs that have also been QoS invalidated) and/or PDCP SDUs (because the first data packet has QoS invalidated, the PDCP SDU that generates the first data packet is about to/already QoS invalidated), which can reduce the transmission of PDCP PDUs that have QoS invalidated to The probability of the next layer, thus saving air interface resources.
  • the foregoing communication device includes a PDCP layer, an NC layer, and an RLC layer.
  • the NC layer is mainly used to realize the network coding function.
  • the above raw data includes one or more PDCP PDUs.
  • the above-mentioned communication device is a centralized unit or a chip used for the centralized unit, and the above-mentioned NC layer may be located under the PDCP layer.
  • the communication device After the communication device performs network coding processing on the original data to generate multiple first data packets, it sends the generated multiple first data packets to the distribution unit. Therefore, if the timer associated with the first data packet i expires, the communication device sends indication information to the distributed unit, where the indication information is used to instruct the distributed unit to discard the first data packet i.
  • the indication information includes the identification of the first data packet i, such as the data packet identification (packet ID); or, the indication information includes the identification of the coding coefficient factor corresponding to the first data packet i, such as the coefficient identification (Coeff_ID) .
  • the distributed unit receives indication information from the communication device, and the indication information is used to instruct the distributed unit to discard the first data packet i; the distributed unit discards the first data packet i according to the indication of the indication information.
  • the indication information cannot be realized through the identifier of the encoding coefficient factor.
  • the above-mentioned communication device is a distributed unit or a chip for a distributed unit, and the above-mentioned NC layer may be located above the RLC layer.
  • what the CU sends to the communication device is a PDCP PDU.
  • the NC layer of the communication device After the NC layer of the communication device performs network coding processing on the original data to generate multiple first data packets, it sends the generated multiple first data packets to the lower layer (that is, the RLC layer). Therefore, if the timer associated with the first data packet i expires, the NC layer of the communication device instructs the RLC layer to discard the first data packet i transmitted to the RLC layer.
  • the indication here can be achieved through inter-layer interaction.
  • the communication device above is a terminal device or a chip used for a terminal device.
  • the communication device above includes a PDCP layer, an NC layer, and an RLC layer, and the NC layer is located between the PDCP layer and the RLC layer.
  • the NC layer of the communication device instructs the RLC layer of the communication device to discard the transmission to the RLC layer The first data packet i.
  • the RLC layer of the communication device discards the first data packet i received from the NC layer of the communication device.
  • the present application provides a method for overtime packet loss in a network coding scenario.
  • the method includes: the sending PDCP entity receives a PDCP SDU from the upper layer, and associates a timer with the PDCP SDU; if the timing associated with the PDCP SDU When the device times out, the sending PDCP entity discards the PDCP SDU; the sending PDCP entity performs network coding function processing on one or more PDCP SDUs to generate multiple first data packets, and adds a PDCP header to each first data packet to obtain a PDCP PDU ( In other words, a PDCP header includes a first data packet and a PDCP header); if K timers among the N timers associated with the N PDCP SDUs corresponding to the PDCP PDU expire, the sending PDCP entity discards the PDCP PDU .
  • one first data packet corresponds to one PDCP PDU.
  • the network coding function here is located in the PDCP layer. Because the processing of the network coding function may generate system packets and redundant packets, and may also generate original data packets and redundant packets, the plurality of first data packets include system packets and redundant packets, or the plurality of first data packets Packets include original data packets and redundant packets. It should be understood that for the introduction of specific network coding functions and the meanings of original data packets, system packets, and redundant packets, please refer to the description of the specific embodiments below, and the description is not extended here due to space limitations.
  • K is a positive integer less than or equal to N, and K is greater than a preset threshold (such as N/2).
  • the N PDCP SDUs corresponding to a PDCP PDU include: the first data packet included in a PDCP PDU is a system packet or an original data packet, then the data of the first data packet included in this PDCP PDU comes from these N PDCP SDUs Each PDCP SDU in each PDCP SDU; or, the first data packet included in a PDCP PDU is a redundant packet, then the original data packet included in this PDCP PDU that satisfies the network coding relationship with the first data packet comes from the N PDCP SDUs Each PDCP SDU.
  • the sending PDCP entity will discard the PDCP SDU, and the PDCP PDU will be discarded only when the timers associated with all or part of the PDCP SDUs it contains expire.
  • this solution multiplexes the overtime packet loss mechanism of the NR PDCP layer in the network coding scenario and modifies the principle of discarding PDCP PDUs on this basis, that is, multiplexes a PDCP SDU associated with a timer.
  • the PDCP SDU is discarded, and the PDCP PDU can only be discarded when all or part of the timers associated with the PDCP SDU it contains expires. Discard the data packets that have failed QoS, reduce the waste of resources caused by the transmission of QoS invalid data packets on the air interface, improve the efficiency of air interface transmission, and reduce the situation of erroneous packet loss.
  • the present application provides a PDCP sending entity, where the PDCP sending entity may be a terminal device or a chip in the terminal device; or, the PDCP sending entity may also be a network device or a chip in the network device.
  • the sending PDCP entity includes: a discarding module, used to discard the PDCP SDU if the timer associated with the PDCP SDU expires, where a PDCP SDU is associated with a timer; a coding module, used to perform network coding on one or more PDCP SDUs
  • the processing generates a plurality of first data packets, one of the first data packets corresponds to a PDCP PDU, and a PDCP PDU includes a first data packet and a PDCP header; the discarding module is also used if the N corresponding to the PDCP PDU When K timers among the N timers associated with the PDCP SDU expire, the PDCP PDU is discarded.
  • the network coding function here is located in the PDCP layer.
  • the multiple first data packets include system packets and redundant packets, or, the multiple first data packets include original data packets and redundant packets.
  • K is a positive integer less than or equal to N, and K is greater than a preset threshold (such as N/2).
  • the N PDCP SDUs corresponding to a PDCP PDU include: the first data packet included in a PDCP PDU is a system packet or an original data packet, then the data of the first data packet included in this PDCP PDU comes from these N PDCP SDUs Each PDCP SDU in each PDCP SDU; or, the first data packet included in a PDCP PDU is a redundant packet, then the original data packet included in this PDCP PDU that satisfies the network coding relationship with the first data packet comes from the N PDCP SDUs Each PDCP SDU.
  • the network coding function includes one or more of processing such as segmentation, concatenation, and padding, and optionally the network coding function also includes encoding processing .
  • the segmentation process is used to divide a PDCP SDU into multiple data segments
  • the concatenation process is used to concatenate all or part of one PDCP SDU with all or part of another PDCP SDU to form a data segment.
  • Filling processing is used to fill data segments or PDCP SDUs smaller than a certain size to make it equal to the certain size. After each data segment is added with a packet header, original data packets of equal size are obtained, and these original data packets of equal size are encoded to obtain system packets and redundant packets, or redundant packets.
  • the method further includes: if the one PDCP SDU is associated with When the timer expires, the sending PDCP entity discards all or part of the plurality of first data packets corresponding to the PDCP SDU.
  • one of the system packet and the redundant packet, or one of the original data packet and the redundant packet can be discarded; or all the first data packets can be discarded, that is, both the system packet and the redundant packet are discarded. , or discard both the original data packet and the redundant packet.
  • the present application provides a method for overtime packet loss in a network coding scenario.
  • the method includes: the sending PDCP entity receives a PDCP SDU from the upper layer, and associates a timer with the PDCP SDU; A PDCP SDU performs network coding function processing to generate multiple first data packets, the one or more PDCP SDUs correspond to multiple first data packets, one first data packet corresponds to one PDCP PDU, and one PDCP PDU includes a first data packet A data packet and a PDCP header, one PDCP SDU corresponds to multiple PDCP PDUs; if a certain PDCP SDU (for example, the first PDCP SDU in the one or more PDCP SDUs, for ease of description, the following is the first PDCP SDU associated
  • the timer is used as an example to illustrate) the associated timer expires, and the sending PDCP entity discards at least one of the following: the first PDCP SDU, and multiple PDCP
  • the network coding function here is located in the PDCP layer.
  • the processing of the network coding function may generate system packets and redundant packets, and may also generate original data packets and redundant packets
  • the plurality of first data packets include system packets and redundant packets, or, the plurality of first data packets
  • a data packet includes an original data packet and a redundant packet.
  • the present application provides a PDCP sending entity, where the PDCP sending entity may be a terminal device or a chip in the terminal device; the PDCP sending entity may also be a network device or a chip in the network device.
  • the sending PDCP entity includes: an encoding module, configured to perform network encoding function processing on one or more PDCP SDUs to generate a plurality of first data packets, the one or more PDCP SDUs correspond to the plurality of first data packets, one of the The first data packet corresponds to a PDCP PDU, a PDCP PDU includes a first data packet and a PDCP header, a PDCP SDU corresponds to multiple PDCP PDUs, and a PDCP SDU in the one or more PDCP SDUs is associated with a timer; the discarding module , if the timer associated with the first PDCP SDU among the one or more PDCP SDUs expires, discard at least one of the following: the
  • the above-mentioned network coding function includes one or more of processing such as division, concatenation, and padding.
  • the network coding function also includes coding processing.
  • the segmentation process is used to divide a PDCP SDU into multiple data segments
  • the concatenation process is used to concatenate all or part of one PDCP SDU with all or part of another PDCP SDU to form a data segment.
  • Filling processing is used to fill data segments or PDCP SDUs smaller than a certain size to make it equal to the certain size. After each data segment is added with a header, original data packets of equal size are obtained, and these original data packets of equal size are encoded to obtain system packets and redundant packets, or to obtain redundant packets.
  • the above method further includes: the sending PDCP entity discards all or part of the plurality of first data packets corresponding to the PDCP SDU.
  • the sending PDCP entity discards all or part of the plurality of first data packets corresponding to the PDCP SDU.
  • one of the system packet and the redundant packet, or one of the original data packet and the redundant packet can be discarded, or all the first data packets can be discarded, that is, both the system packet and the redundant packet are discarded. , or discard both the original data packet and the redundant packet.
  • this solution not only discards the PDCP SDU and PDCP PDU, but also discards the corresponding first data packet, which can omit the operation of adding a PDCP header to the first data packet that has already failed QoS to generate a PDCP PDU , thereby reducing the probability of transmitting a PDCP PDU that has already failed QoS to the next layer.
  • the present application provides a communication device, where the communication device may include a processor and a memory, and may optionally include a transceiver.
  • the memory is used to store a computer program
  • the transceiver is used to send and receive various data packets or instruction information
  • the computer program includes program instructions
  • the communication device executes the above-mentioned first aspect, Or the above-mentioned third aspect, or the above-mentioned fifth aspect, or the above-mentioned seventh aspect, or the timeout packet loss method described in any possible implementation manner of any one of them.
  • the transceiver may be a radio frequency module in the communication device, or a combination of a radio frequency module and an antenna, or an input and output interface of a chip or a circuit.
  • the present application provides a readable storage medium, on which program instructions are stored, and when run on a computer, the computer executes the above first aspect, or the above third aspect, or the above first aspect.
  • the present application provides a program product containing program instructions, which, when run, make the above-mentioned first aspect, or the above-mentioned third aspect, or the above-mentioned fifth aspect, or the above-mentioned seventh aspect, or any of them
  • the timeout packet discarding method described in any possible implementation manner of the aspect is executed.
  • the present application provides an apparatus, which may be implemented in the form of a chip, or in the form of equipment, and the apparatus includes a processor.
  • the processor is used to read and execute the program stored in the memory, so as to implement one or more of the first aspect, the third aspect, the fifth aspect, and the seventh aspect, or any possible The timeout packet loss method provided by one or more of the implementations.
  • the device further includes a memory, and the memory is connected to the processor through a circuit.
  • the device further includes a communication interface, and the processor is connected to the communication interface.
  • the communication interface is used to receive the data packet and/or information to be processed, and the processor obtains the data packet and/or information from the communication interface, processes the data packet and/or information, and outputs the data packet and/or information through the communication interface process result.
  • the communication interface may be an input-output interface.
  • processor and memory may be physically independent units, or the memory may also be integrated with the processor.
  • overtime packet loss processing can be performed, for example, discarding data packets that have failed QoS, reducing the transmission or storage of data packets that have failed QoS on the air interface The resulting waste of resources.
  • FIG. 1 is a schematic diagram of the architecture of a communication system provided by an embodiment of the present application.
  • Figure 2 is a schematic diagram of the network architecture where gNB-CU and gNB-DU are separated in the NR system;
  • Figure 3a is a schematic diagram of the control plane protocol stack under the CU-DU separation architecture of gNB;
  • Figure 3b is a schematic diagram of the user plane protocol stack under the gNB adopting the CU-DU separation architecture
  • FIG. 4 is a simplified structural schematic diagram of a UE and a base station provided by an embodiment of the present application
  • Figure 5a is a schematic diagram of a possible network coding process at the sending end
  • Fig. 5b is a schematic diagram of another possible network coding process at the sending end
  • FIG. 6 is a schematic diagram of the architecture of MBMS introducing network coding
  • Figure 7 is a schematic diagram of the timeout packet loss mechanism of the NR PDCP layer
  • Figure 8 is a schematic diagram of the relationship between PDCP SDU and PDCP PDU after the PDCP layer is introduced into the NC;
  • FIG. 9a is a schematic diagram of a protocol layer architecture in which the network coding function is located in the PDCP layer provided by the embodiment of the present application;
  • FIG. 9b is a schematic diagram of the protocol layer architecture of the NC layer under the PDCP layer provided by the embodiment of the present application.
  • FIG. 9c is a schematic diagram of the protocol layer architecture of the NC layer above the RLC layer provided by the embodiment of the present application.
  • FIG. 10 is a first schematic flowchart of a method for overtime packet loss in a network coding scenario provided by an embodiment of the present application
  • Fig. 11a is a first schematic diagram of UE side timeout packet loss provided by the embodiment of the present application.
  • Figure 11b is a first schematic diagram of timeout packet loss when the NC layer on the gNB side is located under the PDCP layer provided by the embodiment of the present application;
  • Fig. 11c is a schematic diagram 1 of timeout packet loss when the NC layer on the gNB side is located above the RLC layer provided by the embodiment of the present application;
  • FIG. 12 is a second schematic flow chart of a method for overtime packet loss in a network coding scenario provided by an embodiment of the present application.
  • Fig. 13a is a schematic diagram 2 of UE side timeout packet loss provided by the embodiment of the present application.
  • Fig. 13b is a second schematic diagram of timeout packet loss when the NC layer on the gNB side is located under the PDCP layer provided by the embodiment of the present application;
  • Figure 13c is a second schematic diagram of timeout packet loss in which the NC layer on the gNB side is located above the RLC layer provided by the embodiment of the present application;
  • FIG. 14 is a third schematic flowchart of a method for overtime packet loss in a network coding scenario provided by an embodiment of the present application.
  • FIG. 15 is a fourth schematic flowchart of a method for packet loss over time in a network coding scenario provided by an embodiment of the present application.
  • Figure 16 is a schematic diagram 3 of timeout packet loss when the NC layer on the gNB side is located under the PDCP layer provided by the embodiment of the present application;
  • Figure 17 is a third schematic diagram of timeout packet loss when the NC layer on the gNB side is located above the RLC layer provided by the embodiment of the present application;
  • Fig. 18 is a schematic structural diagram of a communication device provided by an embodiment of the present application.
  • Fig. 19 is another schematic structural diagram of a communication device provided by an embodiment of the present application.
  • FIG. 20 is a schematic structural diagram of a sending PDCP entity provided by an embodiment of the present application.
  • FIG. 21 is a schematic structural diagram of a communication device 1000 provided by an embodiment of the present application.
  • “at least one” means one or more, and “multiple” means two or more.
  • “And/or” describes the association relationship of associated objects, indicating that there may be three types of relationships, for example, A and/or B, which can mean: A exists alone, A and B exist simultaneously, and B exists alone, where A, B can be singular or plural.
  • the character “/” generally indicates that the contextual objects are an “or” relationship.
  • “At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items.
  • At least one item (unit) of a, b, or c may represent: a, b, c; a and b; a and c; b and c; or a and b and c.
  • a, b, c can be single or multiple.
  • system and “network” are used interchangeably herein.
  • B corresponding to A means that B is associated with A, and B can be determined according to A.
  • determining B according to A does not mean determining B only according to A, and B may also be determined according to A and/or other information.
  • LTE worldwide interoperability for microwave access
  • WiMAX worldwide interoperability for microwave access
  • 5G fifth generation
  • a new generation of wireless access technology new radio access technology, NR
  • NR new radio access technology
  • FIG. 1 is a schematic structural diagram of a communication system provided by an embodiment of the present application.
  • the communication system includes one or more network devices (such as a base station in FIG. 1 ) and one or more terminal devices (such as a UE in FIG. 1 ).
  • wireless communication can be performed between the terminal device and the network device, one terminal device can communicate with one network device or with multiple network devices at the same time, and one network device can also communicate with one terminal device or with multiple terminal devices at the same time .
  • Terminal equipment can be configured with one or more antennas for sending and receiving data/information.
  • the network device may also be configured with one or more antennas for sending and receiving data/information.
  • network devices and terminal devices may also include multiple components related to data/information transmission and reception (for example, processors, modulators, multiplexers, demodulators or demultiplexers, etc.).
  • FIG. 1 is only a schematic diagram, and the communication system may also include other devices, such as core network devices, wireless relay devices and/or wireless backhaul devices, etc., which are not shown in FIG. 1 .
  • the terminal equipment in the embodiment of the present application may also be referred to as a terminal, user equipment (UE), mobile station (mobile station, MS), mobile terminal (mobile terminal, MT), etc., which may be a user
  • UE user equipment
  • MS mobile station
  • MT mobile terminal
  • UEs include handheld devices, vehicle-mounted devices, wearable devices, or computing devices with wireless communication capabilities.
  • the UE may be a mobile phone (mobile phone), a tablet computer or a computer with a wireless transceiver function.
  • the terminal device can also be a virtual reality (virtual reality, VR) terminal device, an augmented reality (augmented reality, AR) terminal device, a wireless terminal in industrial control, a wireless terminal in unmanned driving, a wireless terminal in telemedicine, a smart Wireless terminals in power grids, wireless terminals in smart cities, wireless terminals in smart homes, etc.
  • the device for realizing the function of the terminal may be a terminal; it may also be a device capable of supporting the terminal to realize the function, such as a chip system, or a communication module, or a modem, etc., and the device may be installed in the terminal .
  • the system-on-a-chip may be composed of chips, or may include chips and other discrete devices.
  • the technical solutions provided by the embodiments of the present application are described by taking the terminal as an example in which the device for realizing the functions of the terminal is a terminal and the terminal is a UE.
  • the embodiment of the present application does not limit the specific technology and specific device form adopted by the terminal device.
  • the UE can also be used as a base station.
  • UE can act as a scheduling entity between UEs in vehicle-to-everything (V2X), device-to-device (D2D) or peer-to-peer (P2P), etc.
  • V2X vehicle-to-everything
  • D2D device-to-device
  • P2P peer-to-peer
  • the UE can also be used as a relay node.
  • the UE can act as a relay device (relay), or access an integrated access and backhaul (IAB) node, to provide wireless backhaul services for terminal devices.
  • relay relay device
  • IAB integrated access and backhaul
  • the network device in the embodiment of the present application includes an access network device, such as a base station (base station, BS).
  • the BS can be an entity on the network side for transmitting or receiving signals, and is also an entity deployed on a wireless Devices in the access network that can communicate with terminals wirelessly.
  • a base station (BS) can be fixed or mobile.
  • the base station may have various forms, such as a macro base station, a micro base station, a relay station, and an access point.
  • the base station involved in the embodiment of the present application may be a base station in 5G or an evolved base station (Evolved Node B, eNB) in LTE.
  • Evolved Node B, eNB evolved Node B
  • the base station in 5G may also be called a transmission reception point (transmission reception point, TRP) or a 5G base station (Next-Generation Node B, gNB).
  • the base station can also be replaced with the following names, such as: wireless access point, node B (NodeB), transmitting point (transmitting point, TP), primary station MeNB, secondary station SeNB, multi-standard wireless (MSR) node, home base station, network Controller, access node, wireless node, transmission node, transceiver node, baseband unit (baseband unit, BBU), remote radio unit (remote radio unit, RRU), active antenna unit (AAU), radio head (RRH) , centralized unit (centralized unit, CU), distributed unit (distributed unit, DU), location node, IAB host (IAB donor), etc.
  • NodeB node B
  • transmitting point transmitting point
  • TP primary station MeNB
  • secondary station SeNB multi-standard wireless (MSR) node
  • home base station network
  • the device used to realize the function of the network device may be a network device; it may also be a device capable of supporting the network device to realize the function, such as a chip system, or a communication module, or a modem, etc., and the device can be installed in network equipment.
  • the technical solutions provided by the embodiments of the present application are described by taking the apparatus for realizing the functions of the network equipment as network equipment and taking the network equipment as a base station as an example. Base stations can support networks of the same or different access technologies.
  • the embodiment of the present application does not limit the specific technology and specific device form adopted by the network device.
  • a gNB is a node that provides NR user plane and control plane transmission for user equipment (UE), which can support one or more cells.
  • the gNB is connected to the 5G core network through the NG interface and connected to other gNBs through the Xn interface.
  • the Xn-C interface is used for transmission of control plane signaling between two gNBs
  • the Xn-U interface is used for transmission of user plane data between two gNBs.
  • the gNB is connected to the UE through the Uu interface.
  • the access network device may include a centralized unit (central unit, CU) and a distributed unit (distributed unit, DU). That is to say, the gNB can adopt a CU-DU separation architecture, that is, the gNB includes one gNB-CU and one or more gNB-DUs.
  • the gNB may also include a radio unit (radio unit, RU).
  • CU and DU can be understood as the division of base stations from the perspective of logical functions. CU and DU can be physically separated or deployed together. Among them, gNB-CU and gNB-DU are both logical nodes.
  • One gNB-CU can connect to one or more gNB-DUs, and one gNB-DU can only connect to one gNB-CU.
  • the connection between gNB-CU and gNB-DU is through F1 interface connected.
  • One gNB-DU can support one or more cells, but one cell only belongs to one gNB-DU.
  • FIG. 2 is a schematic diagram of a network architecture in which gNB-CU and gNB-DU are separated in an NR system.
  • the 5G core network (5G core, 5GC) and the 5G radio access network (next generation radio access network, NG-RAN) communicate with each other, and the two are connected through the NG interface.
  • the gNB in NG-RAN can adopt either CU-DU separation architecture or non-CU-DU separation architecture.
  • Two gNBs in NG-RAN are connected through Xn interface.
  • When gNB adopts CU-DU separation architecture multiple gNB-DUs can be connected to one gNB-CU.
  • FIG. 2 it should be understood that although the network structure shown in FIG. 2 is applied to the NR communication system, it may also share one or more components or resources with the LTE system.
  • UE can connect to gNB-CU through gNB-DU.
  • the gNB can separate the protocol layers, and the functions of some protocol layers are placed in the gNB-CU for centralized control, and the remaining part or all of the functions of the protocol layers are distributed in the gNB-DU, and the gNB-CU centrally controls the gNB-CU. du.
  • the radio link control (radio link control, RLC) layer, medium access control (medium access control, MAC) layer, and physical layer (physical layer, PHY) that are equivalent to the UE are deployed on the gNB- On the DU
  • the radio resource control (radio resource control, RRC) layer, the packet data convergence protocol (PDCP) layer, and the service data adaptation protocol (service data adaptation protocol, SDAP) layer that are equivalent to the UE are deployed on On gNB-CU. Therefore, the gNB-CU has the processing capability of the RRC layer, the PDCP layer and the SDAP layer.
  • gNB-DU has the processing capability of RLC layer, MAC layer and PHY layer. It can be understood that the division of the above functions is only an example, and does not constitute a limitation on the gNB-CU and the gNB-DU.
  • Fig. 3a is a schematic diagram of the control plane protocol stack under the gNB adopting the CU-DU separation architecture.
  • the gNB-DU encapsulates the RRC message generated by the UE in the F1 application layer protocol (F1application protocol, F1AP) message of the F1 interface through the control plane
  • the F1 interface (F1-control, F1-C) sends to the gNB-CU.
  • the gNB-CU In the downlink (downlink, DL) direction, the gNB-CU encapsulates the RRC message in the F1AP message and sends it to the gNB-DU, and the gNB-DU extracts the RRC message from the F1AP message and maps it to the signaling radio bearer (signalling radio bearer) corresponding to the Uu interface , SRB) such as SRB0/SRB1/SRB2 sent to the UE.
  • the gNB-DU passes the F1AP message through the stream control transmission protocol (stream control transmission protocol, SCTP) layer, the Ethernet protocol (Internet Protocol, IP) layer, layer 2 (Layer 2, L2) and Layer 1 (Layer 1, L1) is processed and sent to gNB-CU.
  • stream control transmission protocol stream control transmission protocol
  • SCTP Ethernet protocol
  • IP Internet Protocol
  • Layer 2 Layer 2, L2
  • Layer 1 Layer 1, L1
  • Fig. 3b is a schematic diagram of the user plane protocol stack under the CU-DU separation architecture adopted by the gNB.
  • the gNB-DU maps the UE data packets received from the data radio bearer (DRB) corresponding to the Uu interface to the corresponding general packet radio service (
  • the general packet radio service (GPRS) tunneling protocol (GPRS tunneling protocol, GTP) tunnel is sent to the gNB-CU through the F1 interface (F1-user, F1-U) of the user plane.
  • the gNB-CU maps the UE data packet to the corresponding GTP tunnel and sends it to the gNB-DU, and the gNB-DU extracts the UE data packet from the GTP tunnel, and maps the UE data packet to the DRB corresponding to the Uu interface sent to the UE.
  • the gNB-DU maps UE data packets to the corresponding GTP tunnel, and then sequentially passes through the user datagram protocol (user datagram protocol, UDP) layer, IP layer, L2 layer and L1 layer after processing Sent to gNB-CU.
  • UDP user datagram protocol
  • the gNB-CU maps the UE's data packets to the corresponding GTP tunnel, and then sends them to the gNB-DU after being processed by the UDP layer, IP layer, L2 layer, and L1 layer in sequence.
  • UDP user datagram protocol
  • wireless communication may also be referred to as “communication” for short, and the term “communication” may also be described as “data transmission”, “information transmission” or “transmission”.
  • FIG. 4 is a simplified schematic structural diagram of a UE and a base station provided by an embodiment of the present application.
  • FIG. 4 only shows the main components in the base station 110 and the UE 120.
  • the structures of the base station and the UE may be more than or less than those shown in FIG. Contains only the components shown in Figure 4.
  • the base station shown in FIG. 4 may adopt either a CU-DU separation architecture or a non-CU-DU separation architecture.
  • Each component in Fig. 4 is briefly introduced below.
  • the base station 110 includes an interface 111 and a processor 112 .
  • Processor 112 may optionally store a program 114 .
  • Base station 110 optionally includes memory 113 .
  • the memory 113 may optionally store a program 115 .
  • UE 120 includes interface 121 and processor 122.
  • Processor 122 may optionally store a program 124 .
  • UE 120 optionally includes memory 123.
  • the memory 123 may optionally store a program 125 .
  • These components work together to provide the various functions described in this application.
  • processor 112 and interface 111 work together to provide a wireless connection between base station 110 and UE 120.
  • the processor 122 and the interface 121 work together to implement downlink transmission and/or uplink transmission of the UE 120.
  • a processor may include one or more processors and be implemented as a combination of computing devices.
  • Processors e.g., processor 112 and/or processor 122 may each include one or more of the following: a microprocessor, a microcontroller, a digital signal processor (DSP), a digital signal processing device (DSPD), a dedicated integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic devices (PLDs), gating logic, transistor logic, discrete hardware circuits, processing circuits, or other suitable hardware, firmware, and/or hardware and software combination for performing the various functions described in this application.
  • DSP digital signal processor
  • DSPD digital signal processing device
  • ASICs dedicated integrated circuits
  • FPGAs field programmable gate arrays
  • PLDs programmable logic devices
  • a processor may be a general-purpose processor or a special-purpose processor.
  • processor 112 and/or processor 122 may be a baseband processor or a central processing unit.
  • a baseband processor can be used to process communication protocols and communication data.
  • the central processing unit can be used to make the base station 110 and/or UE 120 execute software programs and process data in the software programs.
  • Interfaces may include devices for enabling communication with one or more computer devices (eg, UEs, BSs, and/or network nodes).
  • an interface may include wires for coupling a wired connection, or pins for coupling a wireless transceiver, or chips and/or pins for a wireless connection.
  • an interface may include a transmitter, receiver, transceiver and/or antenna. The interface can be configured to use any available protocol (eg 3GPP standard).
  • a program in this application is used in a broad sense to mean software.
  • Non-limiting examples of software are program code, programs, subroutines, instructions, instruction sets, codes, code segments, software modules, applications, software applications, and the like.
  • the program can run in the processor and/or the computer, so that the base station 110 and/or UE 120 perform various functions and/or processes described in this application.
  • Memory may store data that is manipulated by processors 112, 122 when executing software.
  • the memories 113, 123 may be implemented using any storage technology.
  • memory may be any available storage media that can be accessed by a processor and/or a computer.
  • Non-limiting examples of storage media include: RAM, ROM, EEPROM, CD-ROM, removable media, optical disk storage, magnetic disk storage media, magnetic storage devices, flash memory, registers, state memory, remotely mounted memory, local or remote memory component, or any other medium capable of carrying or storing software, data or information and accessible by a processor/computer.
  • the memory (such as the memory 113 and/or the memory 123) and the processor (such as the processor 112 and/or the processor 122) can be provided separately or integrated together.
  • the memory may be used in connection with the processor such that the processor can read information from, store and/or write information to the memory.
  • the memory 113 may be integrated in the processor 112 .
  • the memory 123 may be integrated in the processor 122 .
  • the processor (such as the processor 112 and/or the processor 122) and the memory (such as the memory 113 and/or the memory 123) may be arranged in an integrated circuit (for example, the integrated circuit may be arranged in a UE or a base station or other network nodes) .
  • NC Network coding
  • the network coding function in this application includes performing network coding on the original data packet and adding a coded packet header.
  • the network coding can be realized by an encoder, the input of the encoder is K original data packets, and the output of the encoder is N encoded data packets (abbreviated as encoded packets), where N and K are both positive integers, and N is greater than K.
  • the coded package includes N-K (N minus K) redundant packages and K system packages, or, the coded package includes N redundant packages (that is, all coded packages are redundant packages, excluding system packages).
  • the content of the package body of the system package is consistent with the content of the original data package (that is to say, the system package is composed of the coded package header and the original data package), and the system package can be obtained by directly adding the header to the original data package, or by It is obtained by adding a packet header after encoding by the aforementioned encoder, and the encoding coefficient of the system packet is a unit vector. Coding coefficients of redundant packets are non-unit vectors.
  • the receiving device Through the association between the content of the redundant packet and the content of the original data packet that generated the redundant packet, the receiving device (referred to as the receiving end) can pass the redundant packet and the successfully received (or received correctly) original data packet or system The packets are decoded together to restore the original data packets that were not received successfully (or received incorrectly). Based on the characteristics of network coding, the packet size of the original data packet is equal. It should be understood that “encoding coefficient”, “coefficient factor” and “encoding coefficient factor” may be used interchangeably herein. It should also be understood that the "original data package” herein may also be referred to as “original data package” or “original package”, and this application does not specifically limit its name.
  • the network coding function in the present application may also include processing an original data unit, such as a service data unit (service data unit, SDU) or a protocol data unit (protocol data unit, PDU), to obtain equal-sized original data packets.
  • the processing may include one or more of segmentation, concatenation, or padding.
  • the network coding function of the sending device (which may be referred to as the sending end for short) corresponds to the network decoding function of the receiving device.
  • the receiving device can restore K original data packets by decoding at least K coded packets that are successfully received.
  • the protocol layer with the network coding function or the corresponding decoding function of the network coding is called the network coding/decoding layer.
  • the network coding/decoding layer is referred to as the network coding layer for short. is the network encoding layer.
  • the network coding layer can be radio resource control (radio resource control, RRC) layer, service data adaptation protocol (service data adaptation protocol, SDAP), packet data convergence protocol (packet data convergence protocol, PDCP) layer, backhaul adaptation Protocol (backhaul adaptation protocol, BAP) layer, radio link control (radio link control, RLC) layer, media access control (medium access control, MAC) layer, or physical layer (physical layer, PHY) and other protocol layers.
  • RRC radio resource control
  • service data adaptation protocol service data adaptation protocol
  • SDAP packet data convergence protocol
  • PDCP packet data convergence protocol
  • backhaul adaptation Protocol backhaul adaptation protocol
  • radio link control radio link control
  • media access control medium access control
  • MAC medium access control
  • PHY physical layer
  • the network coding layer can also be a new protocol layer except the PHY layer, the MAC layer, the RLC layer, the BAP layer, the PDCP layer, the SDAP layer and the RRC layer, which can increase the network coding layer above the PDCP layer (for example: In 5G NR, a network coding layer is added between the PDCP layer and the SDAP layer), or, a network coding layer is added above the BAP layer, or, a network coding layer is added between the PDCP layer and the RLC layer, or, at the RLC layer Add a network coding layer between the MAC layer and the MAC layer, or add a network coding layer between the MAC layer and the PHY layer.
  • the block code schemes include random linear network coding (RLNC), deterministic linear network coding (DLNC), Batch sparse code (BATS code), erasure code (erasure code), fountain code (fountain code), maximum distance separable code (maximum distance separable code, MDS code), ruby transform code (luby transform, LT ) code, fast tornado (rapid tornado) code, RaptorQ code, rateless (rateless) code and Reed-Solomon (Reed-Solomon, RS) code, etc.
  • the scheme of the convolution code includes convolution One or more of network coding (convolutional network coding, CNC), streaming coding (streaming code) and sliding window network coding (sliding window network coding), etc.
  • the first possible network coding process is the first possible network coding process:
  • the original data packet carries a correspondence between each original data packet and one or more PDUs corresponding to the original data packet.
  • the carrying may be explicit carrying, for example, carrying the position mapping relationship between each original data packet and one or more PDUs corresponding to the original data packet, or the carrying may be implicit carrying, for example, each
  • the correspondence between the original data packet and one or more PDUs corresponding to the original data packet is default.
  • the receiving device referred to as the receiving end
  • the receiving end can recover the PDU from the original data packet based on the correspondence.
  • the header of each original data packet carries the correspondence between the original data packet and one or more PDUs corresponding to the original data packet.
  • a possible implementation is: firstly perform one or more of the aforementioned splitting, cascading, or adding padding on the PDU to obtain the original data, and then add a header to the original data to obtain the original data of the same size. data pack.
  • the corresponding relationship may be indicated by the division and/or concatenation of the one or more PDUs.
  • the original data itself is of equal size
  • one or more of the above processes of dividing one or more PDUs or SDUs, cascading or adding padding can be skipped to obtain equal-sized
  • the step of the original data packet, that is, the PDU or SDU is the original data packet of equal size.
  • FIG. 5a is a schematic diagram of a possible network coding process at the sending end; referring to FIG. 5b, FIG. 5b is a schematic diagram of another possible network coding process at the sending end.
  • Figure 5a and Figure 5b take PDUs with different sizes and carry the above corresponding relationship through the header as an example, first process PDU1 ⁇ PDU4 to obtain the original data Data1 ⁇ Data4, here the processing of PDUs can be operations such as segmentation, cascading or adding padding one or more of the .
  • the size of the original data can be equal or unequal.
  • add headers to this group of original data to obtain K original data packets, that is, Pkt1-Pkt4 in Figure 5a and Figure 5b.
  • the original data packets can be understood as unencoded data packets, and the original data packets equal in size.
  • any one of the following three methods may be adopted for encoding multiple original data packets of equal size.
  • Mode 1 is shown in Figure 5a.
  • N-K encoded packets By encoding K original data packets and adding encoded packet headers, N-K encoded packets can be obtained.
  • the encoded packets here can be called check packets or redundant packets, that is, as shown in Figure 5a. EPkt1 ⁇ EPkt2 shown.
  • K is a positive integer
  • N is a positive integer not less than K.
  • the originator finally sends K original data packets and N-K redundant packets.
  • N coded packets are obtained by processing K original data packets, such as EPkt1 ⁇ EPkt6 in Figure 5b.
  • the coded packets can be divided into system packets and verification packets, and system packets can also be It is called a system data packet, and a checksum packet can be called a redundant packet.
  • the header of the encoded packet may include a coefficient factor field, and the coefficient factor field indicates the encoding coefficient for obtaining the encoded packet.
  • the system packets (EPkt1 ⁇ EPkt4) are composed of a coded packet header and a packet body. The content of the packet body is consistent with the content of the original data packet, and the coefficient factor field included in the packet header is a unit vector. Therefore, the process of processing the original data packet to obtain the system packet may include two methods, 2 and 3, wherein K is a positive integer, and N is a positive integer not less than K.
  • the original data packet is directly added with an encoded packet header to generate a system packet, that is, no encoding process is performed.
  • the original data packet is encoded, that is, after the coefficient factor of the unit vector is encoded, and the header of the encoded packet is added to generate a system packet.
  • the verification packets in mode 2 and mode 3 are generated in the same manner, both of which are generated by encoding the original data packet and adding the header of the encoded packet.
  • N-K verification packets (such as EPkt5 ⁇ EPkt6) are generated by encoding K original data packets (such as Pkt1 ⁇ Pkt4) and adding coded packet headers, and the packet body (EData1 ⁇ EData1) is K The result of multiplying and adding the original data packet and the coefficient factor, where the coefficient factor is a non-unit vector.
  • the originator finally sends N encoded packets.
  • the receiving end receives at least K data packets, and the K data packets are linearly independent, that is, the rank of the corresponding coefficient matrix is equal to K, so that the receiving end
  • the terminal can recover K original data packets through decoding, and then recover the corresponding PDU.
  • the at least K data packets may all be redundant packets, or some may be original data packets and some may be redundant packets, which is not limited here. It can be understood that, if the receiving end receives K original data packets, decoding may not be performed.
  • the receiving end receives at least K data packets, and the K data packets are linearly independent, that is, the rank of the corresponding coefficient matrix is equal to K, so that the receiving end passes the decoding K original data packets can be recovered, and then corresponding PDUs can be recovered.
  • All of the at least K data packets may be redundant packets, or some of them may be system packets and some of them may be redundant packets, which is not limited herein. It is understandable that if the receiving end receives K system packets, then decoding may not be performed, and only the headers of the de-encoded packets may be processed.
  • the original data packets of equal size are obtained by one or more of the processing of dividing, concatenating, or adding padding to one or more original data, wherein the original data packets carry each Correspondence between an original data packet and one or more original data corresponding to the original data packet.
  • one or more of virtual segmentation, concatenation or padding can be used to obtain equal-sized original data packets.
  • the original data and the header information of each original data are first mapped to the cache.
  • the cache can be a real cache or a virtual cache.
  • the header information of each original data indicates that each original data is mapped in the cache. position in .
  • a plurality of equal-sized original data packets are encoded to obtain an encoded packet.
  • the method of obtaining multiple original data packets of the same size from the cache can be preset, or the sending end indicates to the receiving end, or the one in the control position of the two parties of data transmission determines and indicates to the other party.
  • the original data packet has no header, but considering the alignment with the description in the first method, the equal-sized data segment obtained from the cache in this solution is still called the original data packet. It can be understood that the original data packet in this solution may also be called the original data segment.
  • the method of encoding multiple equal-sized original data packets to obtain encoded packets is similar to the method 1 in the first possible implementation process, and the difference from method 1 is that after encoding, the sender sends one or more original Data and header information of the one or more original data, and one or more of redundant packets obtained by encoding.
  • the input of the network coding layer may be one or more original data units, such as original data
  • the output of the network coding layer may be one or more PDUs
  • the one or more PDUs may include the aforementioned original data package and redundant package, or, the aforementioned system package and redundant package.
  • outputting the one or more PDUs may be understood as outputting the one or more PDUs in the terminal device or in the network device to a module that subsequently processes the one or more PDUs through a communication interface.
  • the output mentioned in this application may refer to sending a signal on an air interface, or may refer to outputting a signal in a device (for example, a terminal device or a network device) to other modules in the device through a communication interface.
  • a device for example, a terminal device or a network device
  • the specific process is specifically described in the application scenario, and will not be repeated here.
  • the specific encoding operation is briefly described by taking RLNC as an example.
  • the RLNC scheme uses a coding block (block) as a coding unit, and a coding block includes multiple original data packets of the same size, and a set of coded packets can be obtained by constructing a coding coefficient matrix to encode the original data packets.
  • the coefficients in the coding coefficient matrix are randomly selected in a finite field, such as Galois field (Galois field, GF).
  • the encoding end/sending device sends the W original data packets and the generated W+R encoded data uniformly with header information, and when the decoding end/receiving device receives at least W correct encoding packets whose encoding coefficient vectors are linearly independent, Alternatively, when at least W correct encoded packets are received and the rank of the encoding coefficient matrix corresponding to the received encoded packets is W, then W original data packets can be correctly decoded and recovered. This is because the encoded packet combines information of several original data packets, so the receiving device can use the encoded packet to restore the original data packet.
  • System packet the coded data generated by multiplying the original data packet by the coding coefficient of the unit vector plus the coded packet header, or the original data packet is obtained by directly adding the coded packet header.
  • Redundant packet It is generated by network coding the original data packet, and the coding coefficient of the redundant packet is a non-unit vector.
  • the term "redundant package” may also be referred to as “check package” for short, and the two may be used interchangeably.
  • system package and the redundant package may be collectively referred to as a coded package, and the coded packages mentioned below in this application all include the system package and the redundant package.
  • Coding coefficient factor used to multiply the original data package to generate a system package or a redundant package vector, the vector’s identification, that is, the identification of the coding coefficient factor, can also be called the index of the vector, that is, the coding coefficient factor’s index.
  • Network coding grouping A term related to grouping codes.
  • grouping codes a network coding grouping is a collection of multiple original data packets. For example, dividing each W original data packet into a network coding group and performing independent network coding can obtain coded data corresponding to the network coding group.
  • the term “network coding group” may also be referred to as “network coding block", “coding group”, or "coding block”.
  • Coding block identifier also called “network coding group identifier”, “network coding block identifier”, or “coding group identifier”, etc., used to identify the identifier of a coding block. For example, block ID (block ID).
  • Finite field also known as Galois field, is a field containing only a limited number of elements, which can perform addition, subtraction, multiplication, and division operations, and the results of addition, subtraction, multiplication, and division operations will not exceed the set of fields.
  • the network coding layer refers to the protocol layer with network coding function.
  • the network coding layer can be RRC layer, SDAP layer, PDCP layer, BAP layer, RLC layer, MAC layer, or PHY layer with network coding function.
  • One or more of the layers is not limited in this application.
  • the network coding layer can also be a new protocol layer other than the above protocol layer, for example, the new protocol layer can be above the PDCP layer, above the BAP layer, between the PDCP layer and the RLC layer, between the RLC layer and the MAC layer between layers, or between the MAC layer and the PHY layer, the position of the new protocol layer may not be limited in this application.
  • network coding layer may also be referred to as “codec layer”, “codec layer”, “network codec layer”, “network codec layer”, “network codec layer” , “network encoding/decoding layer” or other names are not limited in this application.
  • the decoding of network coding is the inverse process of network coding. Using the received coded data, the original data packet can be recovered by multiplying the inverse matrix of the corresponding matrix of the coded data with the coded data.
  • Protocol data unit (protocol data unit, PDU): A data unit passed between protocol entities.
  • the PDU contains information from the upper layer and additional information from the entity of the current layer. This PDU will be transmitted to the next lower layer.
  • Service data unit (service data unit, SDU): The data unit transmitted between the protocol layers is the data from the upper layer or the data to be transmitted to the upper layer.
  • FIG. 6 is a schematic diagram of an architecture of network coding introduced into MBMS.
  • the MBMS receiver accesses the core network through UTRAN (Universal Terrestrial Radio Access Network; the third generation mobile communication system) or E-UTRAN (evolved UTRAN), and the MBMS GW (MBMS gateway, MBMS GW) of the core network
  • UTRAN Universal Terrestrial Radio Access Network
  • E-UTRAN evolved UTRAN
  • MBMS GW MBMS gateway, MBMS GW
  • the gate way communicates with the BM-SC (Broadcast-Multicast-Service Center) through the SGmb or SGi-mb interface
  • the BM-SC communicates with the content provider (content provider) through the xMB interface.
  • the specific communication for the process reference may be made to related descriptions about MBMS in LTE or NR, and no further description is given here.
  • MBMS introduces network coding technology, which is mainly implemented on UE and BM-SC (Broadcast-Multicast-Service Centre, broadcast/multicast service center), that is, implemented on the application layer, without considering the air interface
  • BM-SC Broadcast-Multicast-Service Centre, broadcast/multicast service center
  • the impact of radio link quality has no impact on radio access network (RAN) side protocols.
  • RAN radio access network
  • the NR protocol introduces a discarding timer (discardTimer)-based overtime packet discarding mechanism at the PDCP layer.
  • this application refers to the entity that implements the PDCP layer function as a PDCP entity, and the PDCP entity at the transmitting end as the PDCP entity used for transmission, which may be referred to as the transmitting PDCP entity (the transmitting PDCP entity), and the PDCP entity at the receiving end as the transmitting PDCP entity. It is a receiving PDCP entity, and may be referred to as a receiving PDCP entity for short.
  • “the PDCP entity at the sending end”, “the PDCP entity used for sending”, and “the sending PDCP entity” can be used interchangeably.
  • Figure 7 is a schematic diagram of the timeout packet loss mechanism of the NR PDCP layer.
  • the timeout packet loss of the NR PDCP layer can be realized through the discardTimer (discard timer), and the specific process is as follows: (1) The sending PDCP entity receives a PDCP service data unit (service data unit, SDU) from the upper layer , the sending PDCP entity associates a discardTimer with the PDCP SDU, and starts the discardTimer.
  • SDU service data unit
  • the discardTimer If the discardTimer times out, it means that the PDCP SDU has been QoS invalid, and the sending PDCP entity discards the PDCP SDU and the PDCP PDU corresponding to the PDCP SDU, where a PDCP SDU corresponds to a PDCP PDU, and a PDCP PDU is a PDCP SDU passed through Obtained after operations such as header compression, encryption/integrity protection, and PDCP header addition. (3) If the sending PDCP entity has sent the PDCP PDU to the RLC layer, the sending PDCP entity needs to instruct the RLC layer to discard the PDCP PDU.
  • the PDCP layer is located on the CU, and the RLC layer is located on the DU. Therefore, the CU needs to instruct the DU to discard the PDCP PDU.
  • the instruction carries the downlink user data (DL User Data) on the F1 interface. ) to send.
  • the introduction of network coding at the access layer can make full use of the link quality of the air interface and reduce the transmission delay (this It is because the number of redundant packets sent is adjusted based on the feedback of the network coding layer to ensure that the receiving end receives enough coded packets to successfully decode and restore the original data.
  • the network coding technology needs to ensure that the sizes of multiple original data packets to be coded are equal, and the sizes of SDUs or PDUs corresponding to any layer in the NR protocol cannot be guaranteed to be equal. Therefore, it is necessary to concatenate and/or segment the SDU/PDU (such as dividing one SDU/PDU into multiple segments, and/or concatenating multiple SDU/PDUs into one), so that multiple original data packets to be encoded are equal in size.
  • the present application considers introducing network coding at the access layer, which will have an impact on packet loss when the discardTimer at the PDCP layer times out. Specifically, there are mainly two influences. On the one hand, if NC is introduced at the PDCP layer, since the network coding function includes segmentation and/or concatenation operations, the relationship between PDCP SDU and PDCP PDU will no longer be one-to-one, so if the discardTimer associated with the PDCP SDU times out, send How does the PDCP entity discard PDCP SDUs and PDCP PDUs that have expired in QoS?
  • Fig. 8 is a schematic diagram of the relationship between PDCP SDU and PDCP PDU after the PDCP layer is introduced into the NC.
  • the sending PDCP entity processes PDCP SDU0, SDU1, and SDU2 through the network coding function to generate an encoded packet as an example (that is, the scheme shown in Figure 5b, the encoded packet includes a system packet and a redundant packet),
  • the sending PDCP entity generates a PDCP PDU after adding a PDCP header to the coded packet.
  • both PDCP PDU2 and PDCP PDU3 contain redundant packets, that is, both PDCP PDU2 and PDCP PDU3 contain PDCP SDU0, PDCP SDU1 and Contents of PDCP SDU2. Therefore, there is no one-to-one correspondence between PDCP SDU and PDCP PDU.
  • Fig. 8 is only a schematic diagram, and the headers of the system packets and redundant packets shown in it are not drawn, but in practical applications, both the system packets and the redundant packets include packet header information.
  • NC is introduced between the PDCP layer and the RLC layer
  • the RLC layer cannot directly see the PDCP PDU. If the discardTimer associated with the PDCP SDU expires, the RLC layer will not be able to discard the corresponding PDCP PDU according to the instructions of the PDCP layer. How will these PDCP PDUs whose QoS has expired on the RLC layer be discarded?
  • the embodiment of the present application provides a method for overtime packet loss in the network coding scenario, which can solve the problem of how to discard the already existing PDCP SDU and PDCP PDU when the network coding is introduced into the access layer of LTE or NR. QoS invalid PDCP SDU and PDCP PDU problem, and/or solve the problem of how to discard the QoS invalid PDCP PDU received from the upper layer on the RLC layer. Therefore, the embodiment of the present application can perform overtime packet loss processing, for example, discarding data packets that have failed in QoS, reducing resource waste caused by transmission or storage of data packets that have failed in QoS on the air interface, and can also improve the efficiency of air interface transmission.
  • the processing of the network coding function in this application can generate both original data packets and redundant packets (that is, the solution shown in FIG. 5a ), and can also generate system packets and redundant packets (that is, the solution shown in FIG. 5b ). Therefore, in order to facilitate description and understanding, the following embodiments of this application take the original data (ie, PDCP SDU/PDU) as an example to generate system packets and redundant packets (ie, the solution shown in Figure 5b) after processing the network coding function Make an introduction.
  • original data ie, PDCP SDU/PDU
  • system packets and redundant packets ie, the solution shown in Figure 5b
  • Embodiment 1 explains that by canceling the current mechanism of a PDCP SDU associated with a discardTimer, and re-associate a discardTimer for a set of original data to be encoded (for example: multiple PDCP SDUs), to solve the problem caused by the introduction of network coding at the access layer.
  • a discardTimer for example: multiple PDCP SDUs
  • Embodiment 2 explains that by canceling the mechanism of a discardTimer associated with a current PDCP SDU, and re-associate a discardTimer for a coded packet, to solve the problem that PDCP SDU and PDCP PDU are no longer one-to-one correspondence caused by the introduction of network coding at the access layer, How to discard the SDU and PDU whose QoS has expired. It should be understood that in the second embodiment, if the network coding function processes and generates original data packets and redundant packets (that is, the scheme shown in FIG. 5a ), then a discardTimer is associated with an original data packet and a redundant packet respectively.
  • Embodiment 3 explains that the network coding (NC) function is located in the PDCP layer, and the mechanism that a PDCP SDU is associated with a discardTimer is used, and the PDCP PDU is only discarded when the discardTimer associated with all PDCP SDUs it contains expires.
  • Embodiment 4 explains that the network coding (NC) function is located in the PDCP layer, and the mechanism that a PDCP SDU is associated with a discardTimer is used. When the discardTimer associated with a certain PDCP SDU expires, not only the PDCP SDU is discarded, but also all the corresponding PDCP SDUs are discarded. PDCP PDUs.
  • Embodiment 1 to Embodiment 4 of the present application can be combined in any way to form a new embodiment, and the same or similar parts of the concepts or solutions involved can be referred to or combined with each other.
  • Each embodiment will be described in detail below.
  • FIG. 9a is a schematic diagram of a protocol layer architecture in which a network coding function is located in a PDCP layer provided by an embodiment of the present application. As shown in Figure 9a, the network coding function is located in the PDCP layer of the UE and gNB-CU, that is to say, the network coding function is implemented in the PDCP layer. Referring to FIG. 9b, FIG.
  • FIG. 9b is a schematic diagram of the protocol layer architecture of the NC layer under the PDCP layer provided by the embodiment of the present application, that is to say, the network coding function is implemented in the NC layer.
  • the NC layer is located under the PDCP layers of UE and gNB-CU respectively. From the perspective of gNB-CU, the NC layer is located between the PDCP layer and the GTP layer; from the perspective of the UE, the NC layer is located between the PDCP layer and the RLC layer.
  • FIG. 9c is a schematic diagram of the protocol layer architecture of the NC layer above the RLC layer provided by the embodiment of the present application.
  • the NC layer is located above the RLC layer of UE and gNB-DU respectively. From the perspective of gNB-DU, the NC layer is located above the RLC layer; from the perspective of UE, the NC layer is located between the PDCP layer and the RLC layer.
  • the technical solution provided by this application can also be applied to a non-CU-DU separation architecture.
  • the protocol layer architecture of the base station is the same as the protocol layer architecture of the UE. Here No longer.
  • the communication device involved in this application may be a terminal device, such as UE in FIG. 1 or UE 120 in FIG. 4 , or a network device, such as a base station in FIG. 1 or base station 110 in FIG. 4 . If the communication device is a base station, the communication device may adopt the architecture in which gNB-CU and gNB-DU are separated in FIG. 2 .
  • Embodiment 1 of this application mainly introduces that by canceling the mechanism of a discardTimer associated with a current PDCP SDU, and reassociating a discardTimer with a set of original data to be encoded (for example: multiple PDCP SDUs), to solve the problem after introducing network encoding at the access layer.
  • a discardTimer associated with a current PDCP SDU
  • a set of original data to be encoded for example: multiple PDCP SDUs
  • Embodiment 1 of the present application takes the raw data (ie, PDCP SDU/PDU) as an example to generate system packets and redundant packets (ie, the solution shown in Figure 5b) after processing the network coding function.
  • PDCP SDU/PDU raw data
  • system packets and redundant packets ie, the solution shown in Figure 5b
  • the technical solution described in Embodiment 1 of the present application is still applicable to the scenario where original data packets and redundant packets (that is, the scheme shown in FIG. 5a ) are generated after processing original data (that is, PDCP SDU/PDU) with a network coding function. .
  • FIG. 10 is a first schematic flowchart of a method for overtime packet loss in a network coding scenario provided by an embodiment of the present application.
  • the overtime packet loss method in this network coding scenario includes but is not limited to the following steps:
  • the communication device acquires a set of original data, the set of original data is associated with a timer, and the set of original data is used to perform network coding function processing together to generate multiple first data packets.
  • the communication device discards at least one of the following: the group of raw data, the plurality of first data packets generated by processing the group of raw data through the network coding function .
  • the plurality of first data packets include system packets and redundant packets, or, the plurality of first data packets include original data packets and redundant packets.
  • the embodiment of the present application is described by taking the multiple first data packets including system packets and redundant packets (collectively referred to as encoding packets herein) as an example.
  • this embodiment of the present application is applicable to any one of the protocol layer architectures in the preceding FIG. 9a to FIG. 9c.
  • the following describes in detail in conjunction with a specific protocol layer architecture.
  • the communication device in the embodiment of the present application includes at least a PDCP layer and an RLC layer, and optionally also includes an NC layer.
  • the above original data may be PDCP SDU or PDCP PDU received from the upper layer, or the above original data may also be one or more of PDCP SDU/PDU after segmentation, concatenation, padding, etc.
  • add the packet header to get the original data packet. That is to say, in this embodiment of the present application, a timer may be associated with a group of PDCP SDU/PDU received from the upper layer, or a timer may be associated with a group of original data packets. For ease of description, the following takes the original data as PDCP SDU or PDCP PDU received from the upper layer as an example.
  • the network coding function is located in the PDCP layer
  • the network coding function is located in the PDCP layer, that is, the protocol layer architecture shown in Figure 9a above, and the above-mentioned original data is PDCP SDU.
  • the PDCP layer of the communication device receives multiple PDCP SDUs from the upper layer (such as the SDAP layer), and cancels/closes the mechanism that each PDCP SDU is associated with a discardTimer, or closes the association function between each PDCP SDU and a discardTimer.
  • the PDCP layer of the communication device determines a set of original data to be processed by the network coding function, for example: using multiple received PDCP SDUs as a set of original data, or using the first N among the multiple received PDCP SDUs PDCP SDU is used as a group of original data, N is a positive integer, and a timer is associated with the group of PDCP SDU (that is, the group of original data).
  • the PDCP layer of the communication device performs network coding function processing on the group of PDCP SDUs together/jointly/jointly to generate multiple coded packets.
  • the specific network coding function processing can refer to the above-mentioned Figure 5b, and will not be repeated here.
  • the PDCP layer of the communication device discards the group of PDCP SDUs (that is, the group of original data), and the group PDCP SDU (that is, the group of original data) is used to process all encoded packets generated by the network encoding function.
  • the PDCP layer of the communication device may add a PDCP header to each coded packet to obtain a PDCP PDU.
  • one encoded packet corresponds to one PDCP PDU. Therefore, if the timer associated with this group of PDCP SDUs times out, it means that the QoS of this group of PDCP SDUs has expired.
  • the PDCP PDU corresponding to the group of PDCP SDUs is also discarded (that is, the PDCP PDU corresponding to each encoded packet generated by the network encoding function processing of the group of PDCP SDUs is discarded).
  • the communication device here may also be referred to as a sending PDCP entity, that is, a PDCP entity at the sending end or a PDCP entity used for sending.
  • the network coding function is located in the PDCP layer.
  • the sending PDCP entity receives a PDCP SDU from the upper layer, cancels the association of the PDCP SDU with a discardTimer, and changes the sending PDCP entity to associate a group of PDCP SDUs received from the upper layer with a discardTimer, once the discardTimer times out, discard this group of PDCP SDUs, the encoded packets corresponding to this group of PDCP SDUs, and the corresponding PDCP PDUs.
  • the sending PDCP entity associates these three PDCP SDUs as a set of original data with a discardTimer. Then, this group of original data (that is, PDCP SDU0 ⁇ PDCP SDU2) is processed by the network coding function to generate coded packets, and a PDCP header is added to each coded packet to generate a PDCP PDU.
  • the sending PDCP entity will discard the codes corresponding to PDCP SDU0, PDCP SDU1, PDCP SDU2, and (PDCP SDU0, PDCP SDU1, PDCP SDU2 respectively) packet, and the corresponding PDCP PDU0, PDCP PDU1, PDCP PDU2, and PDCP PDU3.
  • the sending PDCP entity needs to instruct the RLC layer to discard the corresponding PDCP PDU.
  • the sending RLC layer entity (this application refers to the entity that realizes the RLC layer function as the RLC layer entity, and the RLC layer entity at the sending end is called the RLC layer entity)
  • the RLC layer entity used for sending referred to as the sending RLC layer entity for short
  • discards the corresponding PDCP PDU which can be understood as the sending RLC layer entity discards the corresponding RLC SDU.
  • the communication apparatus here may be a terminal device, such as a UE, or a network device, such as a base station. It should also be understood that if the communication device is a base station, a CU-DU separation architecture may be adopted, and the communication device is specifically a gNB-CU. That is to say, in the downlink (DL) direction, the transmitting PDCP entity is located on the gNB-CU; in the uplink (UL) direction, the transmitting PDCP entity is located on the UE.
  • DL downlink
  • UL uplink
  • the network coding function is located under the PDCP layer
  • the network coding function is located under the PDCP layer, and a new NC layer is introduced under the PDCP layer.
  • the network coding function is located at the NC layer, that is, the protocol layer architecture shown in Figure 9b above, and the above-mentioned original data is PDCP PDU.
  • the PDCP layer of the communication device cancels/disables a mechanism for associating a PDCP SDU with a discardTimer, or in other words, the communication device disables the function of associating a PDCP SDU with a discardTimer in the PDCP layer.
  • the NC layer of the communication device receives a plurality of PDCP PDUs from the upper layer (such as the PDCP layer), and determines a set of original data to be processed by the network coding function, for example: using the received multiple PDCP PDUs as a set of original data, or , using the first N PDCP PDUs among the multiple received PDCP PDUs as a set of original data, where N is a positive integer, and associating the set of PDCP PDUs (that is, the set of original data) with a timer.
  • the NC layer of the communication device performs network coding function processing together/jointly/jointly on the group of PDCP PDUs to generate multiple coded packets.
  • the specific network coding function processing can refer to the above-mentioned Figure 5b, and will not be repeated here. If the timer associated with the group of PDCP PDUs (that is, the group of original data) expires, indicating that the group of PDCP PDUs has been QoS invalid, the communication device discards the group of PDCP PDUs (that is, the group of original data), and the group of PDCP PDUs (that is, This group of raw data) are all encoded packets generated by processing the network encoding function.
  • the PDCP layer of the communication device when the PDCP layer of the communication device receives a PDCP SDU from the upper layer (such as the SDAP layer), it performs header compression, encryption/integrity protection and PDCP header on the PDCP SDU to obtain a PDCP PDU, and sends the PDCP SDU
  • the PDU is transmitted to the lower layer (such as the NC layer). That is, one PDCP PDU corresponds to one PDCP SDU. If the timer associated with the group of PDCP PDUs times out, the communication device may also discard the PDCP SDUs respectively corresponding to the group of PDCP PDUs.
  • the NC layer is located under the PDCP layer.
  • the PDCP layer of the communication device receives a PDCP SDU from the upper layer, and cancels the association between the PDCP SDU and a discardTimer.
  • the PDCP layer of the communication device performs header compression, encryption/integrity protection on the PDCP SDU, and then adds a PDCP header to obtain a PDCP PDU and sends it to the lower layer (such as the NC layer).
  • the NC layer of the communication device When the NC layer of the communication device receives multiple PDCP PDUs from the upper layer (ie, the PDCP layer), it determines a set of original data to be processed by the network coding function (ie: the original data is a PDCP PDU), for example: the received multiple PDCP PDUs as a set of original data, or, take the first N PDCP PDUs among the received multiple PDCP PDUs as a set of original data, where N is a positive integer, associate the set of PDCP PDUs with a discardTimer, once the discardTimer is timed If the device times out, the group of PDCP PDUs, the encoded packets corresponding to the group of PDCP PDUs, and the corresponding PDCP SDUs are discarded.
  • the original data is a PDCP PDU
  • the communication apparatus here may be a terminal device, such as a UE, or a network device, such as a base station. It should also be understood that if the communication device is a base station, a CU-DU separation architecture may be adopted, and the communication device is specifically a gNB-CU.
  • the NC layer is located under the PDCP layer, that is, the NC layer of the UE is located between the PDCP layer and the RLC layer of the UE.
  • the NC layer of the UE transmits all or part of the encoded packets generated by the network coding function processing of the above-mentioned group of PDCP PDUs to the RLC layer of the UE, if the timer associated with this group of PDCP PDUs on the UE expires, the NC of the UE
  • the layer may instruct the RLC layer of the UE to discard the encoded packet transmitted to the RLC layer.
  • the NC layer of the UE if the NC layer of the UE has sent the encoded packet generated by the network coding process of this group of PDCP PDUs to the RLC layer, and the timer associated with this group of PDCP PDUs expires, the NC layer of the UE also needs to indicate The RLC layer of the UE deletes these coded packets. Correspondingly, the RLC layer of the UE discards the encoded packet received from the NC layer of the UE.
  • the NC layer of the UE may instruct the RLC layer to delete the part of the coded packets sent to the RLC layer, That is to say, the coded packets not sent to the RLC layer do not need the NC layer to instruct the RLC layer to delete them.
  • the NC layer of the UE has sent all the coded packets generated by the network coding process of this group of PDCP PDUs to the RLC layer, the NC layer of the UE needs to instruct the RLC layer to delete all the coded packets.
  • the interaction between the layers on the UE can be realized through primitives, that is to say, the UE's NC layer can indicate the RLC layer through primitives. Language is realized.
  • FIG. 11 a is a schematic diagram 1 of UE side timeout packet loss provided by an embodiment of the present application.
  • the PDCP layer of the UE receives a PDCP SDU from the upper layer, and optionally cancels the association of the PDCP SDU with a discardTimer.
  • the PDCP layer of the UE performs header compression, encryption/integrity protection on the PDCP SDU, and then adds the PDCP header to obtain a PDCP PDU and sends it to the NC layer.
  • the NC layer of the UE performs network coding on this group of original data (that is, PDCP PDU0 ⁇ PDCP PDU2) together to generate coded packets (coded packets 0 ⁇ 3 shown in Figure 11a, where coded packet 0 and coded packet 1 is the system package, encoding package 2 and encoding package 3 are redundant packages).
  • the UE will discard PDCP PDU0 ⁇ PDCP PDU2, and encoded packets 0 ⁇ 3, and optionally discard the corresponding packets of PDCP PDU0 ⁇ PDCP PDU2 respectively PDCP SDU0 ⁇ PDCP SDU2.
  • the NC layer of the UE instructs the RLC layer of the UE to discard the encoded packet 0 and encoded packet 1 transmitted to the RLC layer.
  • the NC layer of the UE directly discards the coded packets 0-3.
  • both packets and redundant packets include packet header information. It should also be understood that, in Fig. 11a, a "X" is marked on the data packet, indicating that the data packet is discarded after the discardTimer expires.
  • the communication device above is a base station and adopts a CU-DU separation architecture
  • the communication device is specifically a gNB-CU, that is to say, the NC layer is located on the gNB-CU and below the PDCP layer.
  • the gNB-CU After the gNB-CU performs network coding on a group of PDCP PDUs to generate a coded packet, it can send the generated coded packet to the gNB-DU.
  • the gNB-CU After the gNB-CU sends all or part of the coded packets generated by the network coding process of this group of PDCP PDUs to the gNB-DU, if the timer associated with the group of PDCP PDUs on the gNB-CU expires, the gNB-CU can send The gNB-DU sends indication information, which is used to instruct the gNB-DU to discard all or part of the encoded packets received from the gNB-CU and generated by the network encoding process of this group of PDCP PDUs.
  • the indication information includes one of the following: the respective identifications of one or more encoded packets sent to the gNB-DU, such as the data packet identification (packet ID); the range to which the identification of the one or more encoded packets belongs ( That is, the range from the maximum value to the minimum value of the identification), such as the packet ID range, indicated by the maximum and minimum values of the packet ID; the identification of the encoding block to which the one or more encoding packets belong, such as the encoding block identification (block ID) ;
  • the coded coefficient factor identifier or coded coefficient index
  • corresponding to each of the one or more coded packets for example: the coded coefficient factor code Coeff ID.
  • the gNB-DU may discard the encoded packet indicated by the indication information according to the indication of the indication information.
  • the gNB-CU needs to instruct the gNB-DU to delete these coded packets.
  • gNB-CU sends to gNB-DU the number (such as packet ID) of the encoded packet to be discarded, and instructs gNB-DU to discard the encoded packet identified by the number.
  • the above indication information needs to carry the identification (such as packet ID) of this part of the coded packets.
  • gNB-CU sends to gNB-DU the identifier (such as block ID) used to indicate the coded block to which this part of the coded packet belongs, and instructs gNB-DU to discard the coded packet whose block ID field in the coded packet is the same as the block ID, because The encoding packet will carry the information of the encoding block to which the encoding packet is generated.
  • gNB-CU sends to gNB-DU the coding coefficient factor identification (such as Coeff ID) used to indicate this part of the coded packet, and instructs gNB-DU to discard the coded packet whose Coeff ID field in the coded packet is the same as the Coeff ID, because The encoding packet will carry the information of the encoding coefficient factor used to generate the encoding packet.
  • the above indication information may be carried in DL User Data, and may also be a newly defined signaling, which is not limited in this embodiment of the present application.
  • the gNB-CU sends a coded packet to the gNB-DU, the coded packet does not exist in the storage space (such as cache) of the gNB-CU, and the person on the gNB-CU that generates the coded packet After the timer associated with the group PDCP PDU expires and the coded packet has been sent to the gNB-DU, the gNB-CU does not need to perform the operation of discarding the coded packet by itself, and can instruct the gNB-DU to discard the coded packet through the instruction message.
  • the storage space such as cache
  • the gNB-CU sends a coded packet to the gNB-DU, the coded packet still exists in the gNB-CU's storage space (such as cache), then after the coded packet is sent to the gNB-DU, if the generated When the timer associated with a group of PDCP PDUs of the coded packet expires, the gNB-CU not only discards the coded packet, but also instructs the gNB-DU to also discard the coded packet through the indication information.
  • FIG. 11b is a schematic diagram 1 of timeout packet loss when the NC layer on the gNB side is located under the PDCP layer according to the embodiment of the present application.
  • the PDCP layer of the gNB-CU receives a PDCP SDU from the upper layer, and optionally cancels the association of the PDCP SDU with a discardTimer.
  • the PDCP layer of the gNB-CU performs header compression, encryption/integrity protection on the PDCP SDU, and then adds a PDCP header to obtain a PDCP PDU and sends it to the NC layer.
  • the NC layer of gNB-CU performs network coding function processing on this group of original data (that is, PDCP PDU0 ⁇ PDCP PDU2) together to generate coded packets (coded packets 0 ⁇ 3 shown in Figure 11b, where coded packets 0 and Encoding package 1 is a system package, and encoding package 2 and encoding package 3 are redundant packages).
  • the gNB-CU will discard PDCP PDU0 ⁇ PDCP PDU2, and encoded packets 0 ⁇ 3, and optionally discard PDCP PDU0 ⁇ PDCP PDU2 respectively Corresponding PDCP SDU0 ⁇ PDCP SDU2.
  • gNB-CU sends encoded packet 0 (that is, the encoded packet with packet ID 0 in Figure 11b) and encoded packet 1 (that is, the encoded packet with packet ID 1 in Figure 11b) to gNB-DU , the discardTimer associated with PDCP PDU0 ⁇ PDCP PDU2 times out, then gNB-CU sends indication information to gNB-DU, the indication information can carry the packet ID of coded packet 0 and coded packet 1, and is used to instruct gNB-DU to discard from gNB-DU Coded packet 0 and coded packet 1 received by the CU. After receiving the indication information, the gNB-DU discards encoded packet 0 and encoded packet 1 according to the indicated information.
  • the gNB-CU directly discards the coded packets 0 ⁇ 3.
  • the embodiment of the present application instructs the RLC layer to discard the coded packet whose QoS has failed through inter-layer interaction (primitive language) or indication information, thereby reducing resource waste caused by sending QoS invalid data over the air interface.
  • the network coding function is located above the RLC layer
  • the network coding layer function is located above the RLC layer, and a new NC layer is introduced above the RLC layer, and the network coding function is located at the NC layer, that is, the protocol layer architecture shown in Figure 9c above, and the above-mentioned original data is PDCP PDU.
  • the protocol layer architecture on the UE side is exactly the same as that shown in Figure 9b, so the NC layer is located between the RLC layer
  • the processing flow of the UE at the above time may follow the processing flow of the UE when the NC layer is located under the PDCP layer mentioned above in the embodiment of the present application, and will not be repeated here.
  • the NC layer is located above the RLC layer (the protocol layer architecture on the gNB side shown in Figure 9b above), and the NC layer is located below the PDCP layer (the gNB side shown in Figure 9c above).
  • protocol layer architecture is different in that: when the NC layer is located above the RLC layer, the communication device is a gNB-DU, that is to say, the NC layer is located on the gNB-DU and above the RLC layer.
  • gNB-CU sends PDCP PDU to gNB-DU.
  • the gNB-CU can cancel/disable the mechanism that a PDCP SDU is associated with a discardTimer.
  • gNB-DU receives multiple PDCP PDUs from gNB-CU, and determines a set of original data to be processed by the network coding function, for example: multiple received PDCP PDUs as a set of original data, or, the received
  • the first N PDCP PDUs in multiple PDCP PDUs are used as a set of original data, N is a positive integer, and a timer is associated with the set of PDCP PDUs (ie, the set of original data).
  • the gNB-DU performs network coding function processing on the group of PDCP PDUs together/jointly/jointly to generate multiple coded packets.
  • the specific network coding function processing can refer to the above-mentioned Figure 5b, and will not be repeated here. If the timer associated with the group of PDCP PDUs (that is, the group of original data) expires, indicating that the group of PDCP PDUs has failed QoS, then the gNB-DU can discard the group of PDCP PDUs (that is, the group of original data), and the group of PDCP PDUs (that is, the group of original data) all encoded packets generated by performing network encoding function processing.
  • the NC layer of the gNB-DU may instruct the RLC layer of the gNB-DU to discard the coded packet transmitted to the RLC layer.
  • the NC layer of the gNB-DU if the NC layer of the gNB-DU has sent the coded packets generated by the network coding function processing of this group of PDCP PDUs to the RLC layer, the NC layer of the gNB-DU also needs to instruct the RLC layer of the gNB-DU to delete these encoding package.
  • the RLC layer of the gNB-DU discards the encoded packet received from the NC layer of the gNB-DU.
  • the interaction between the various layers on the gNB-DU can be realized through primitives, that is to say, the instruction from the NC layer of the gNB-DU to the RLC layer can be realized through primitives.
  • Fig. 11c is a first schematic diagram of timeout packet loss when the NC layer on the gNB side is located above the RLC layer provided by the embodiment of the present application.
  • the PDCP layer of the gNB-CU receives a PDCP SDU from the upper layer, and optionally cancels the association of the PDCP SDU with a discardTimer.
  • the PDCP layer of the gNB-CU performs header compression, encryption/integrity protection on the PDCP SDU, and then adds the PDCP header to obtain the PDCP PDU and sends it to the gNB-DU.
  • the NC layer of gNB-DU performs network coding function processing on this group of original data (ie, PDCP PDU0 ⁇ PDCP PDU2) together to generate coded packets (coded packets 0 ⁇ 3 shown in Figure 11c, where coded packets 0 and Encoding package 1 is a system package, and encoding package 2 and encoding package 3 are redundant packages).
  • coded packets 0 and Encoding package 1 is a system package
  • encoding package 2 and encoding package 3 are redundant packages.
  • the NC layer of gNB-DU sends encoded packet 0 (that is, the encoded packet with packet ID 0 in Figure 11c) and encoded packet 1 (that is, the encoded packet with packet ID 1 in Figure 11c) to gNB -After the RLC layer of the DU, the discardTimer associated with PDCP PDU0 ⁇ PDCP PDU2 times out, then the NC layer of the gNB-DU instructs the RLC layer of the gNB-DU to discard the encoded packet 0 and encoded packet 1 transmitted to the RLC layer.
  • the NC layer of the gNB-DU directly discards the encoded packets 0 ⁇ 3 .
  • headers of the system packets and redundant packets shown in FIG. 11c are not drawn, but in practical applications, both the system packets and the redundant packets include header information. It should also be understood that, in FIG. 11c, a cross “ ⁇ ” is marked on the data packet, indicating that the data packet is discarded after the discardTimer expires.
  • the embodiment of the present application instructs the RLC layer to discard coded packets whose QoS has failed through interlayer interaction (primitive language), thereby reducing resource waste caused by sending QoS invalid data on the air interface and improving the efficiency of air interface transmission.
  • the embodiment of the present application uses the gNB as an example to illustrate the CU-DU separation architecture, but the embodiment of the present application is still applicable to The scenario where the gNB adopts a non-CU-DU separation architecture, that is, in the downlink (DL) direction, the PDCP layer, NC layer, and RLC layer are all located on the gNB.
  • the gNB adopts a non-CU-DU separation architecture all inter-layer interactions are implemented on the gNB (that is to say, the interaction between each layer in the gNB needs to be added), and its processing flow can refer to the processing flow on the UE side. Let me repeat.
  • This embodiment takes the original data packet to generate a coded packet (including system packet and redundant packet) as an example for illustration (that is, the scheme shown in Figure 5b). Similarly, this embodiment is also applicable to the scenario where the original data packet generates a redundant packet (that is, the solution illustrated in FIG. 5a ), it is only necessary to replace the coded packets in the above solution with redundant packets, and replace the system packets with original data packets.
  • a discardTimer is re-associated with a set of original data to be encoded.
  • the discardTimer times out, the set of original data to be encoded and the A set of coded packets generated by processing a group of raw data to be coded through the network coding function; it can solve the problem of how to discard SDUs and PDUs that have failed QoS when PDCP SDUs and PDCP PDUs are no longer in one-to-one correspondence after the introduction of network coding at the access layer Therefore, it can reduce the waste of resources caused by sending QoS invalid data on the air interface, and improve the efficiency of air interface transmission.
  • the RLC layer is instructed to discard the coded packets whose QoS has expired through interlayer interaction (primitives) or indication information, which can solve the problem that the RLC layer cannot directly see the PDCP due to the encapsulation of PDCP PDUs in the coded packets. PDU, so that the existing mechanism cannot be used to discard data packets that have failed QoS, further reducing resource waste and improving the efficiency of air interface transmission.
  • Embodiment 2 of this application mainly introduces the mechanism of canceling the association of a discardTimer with a current PDCP SDU, and re-associates a discardTimer with a coded packet to solve the problem that PDCP SDU and PDCP PDU are no longer one-to-one after network coding is introduced in the access layer. Correspondingly, how to discard the SDU and PDU whose QoS has expired.
  • Embodiment 2 of the present application also introduces how the RLC layer discards the QoS invalid PDCP PDUs received from the upper layer after the network coding is introduced outside the PDCP layer (that is, under the PDCP layer or above the RLC layer).
  • Embodiment 2 of the present application if the network coding function processes and generates original data packets and redundant packets (that is, the scheme illustrated in FIG. 5a ), then a discardTimer is associated with an original data packet and a redundant packet respectively. .
  • the generation of encoded packets (including system packets and redundant packets) from original data packets is taken as an example for illustration (that is, the solution shown in FIG. 5b ).
  • FIG. 12 is a second schematic flowchart of a method for overtime packet loss in a network coding scenario provided by an embodiment of the present application.
  • the timeout packet loss method in this network coding scenario includes but is not limited to the following steps:
  • the communication device performs network coding function processing on the original data to generate multiple first data packets, one of the first data packets is associated with a timer, and the multiple first data packets include system packets and redundant packets, or, the The plurality of first data packets include original data packets and redundant packets.
  • the communication device discards the first data packet i.
  • the plurality of first data packets include system packets and redundant packets, or, the plurality of first data packets include original data packets and redundant packets.
  • the embodiment of the present application is described by taking the multiple first data packets including system packets and redundant packets (collectively referred to as encoding packets herein) as an example.
  • this embodiment of the present application is applicable to any one of the protocol layer architectures in the preceding FIG. 9a to FIG. 9c.
  • the following describes in detail in conjunction with a specific protocol layer architecture.
  • the communication device in the embodiment of the present application includes at least a PDCP layer and an RLC layer, and optionally also includes an NC layer.
  • the network coding function is located in the PDCP layer
  • the network coding function is located in the PDCP layer, that is, the protocol layer architecture shown in Figure 9a above, and the above-mentioned original data includes one or more PDCP SDUs.
  • the PDCP layer of the communication device receives one or more PDCP SDUs (that is, original data) from the upper layer (such as the SDAP layer), and cancels/closes the mechanism for each PDCP SDU associated with a discardTimer, or closes each PDCP SDU with a discardTimer associated functions.
  • the PDCP layer of the communication device performs network coding function processing on one or more PDCP SDUs together/jointly/jointly to generate multiple coded packets.
  • the specific network coding function processing can refer to the above-mentioned Figure 5b, and will not be repeated here.
  • a timer is associated with the encoded packet. If the timer associated with a certain encoded packet expires, it means that the QoS of the encoded packet has expired, and the PDCP layer of the communication device discards the encoded packet.
  • a PDCP header may be added to the encoded packet to obtain a PDCP PDU.
  • one encoded packet corresponds to one PDCP PDU. If the timer associated with a coded packet expires, indicating that the coded packet has been QoS invalid, the PDCP layer of the communication device can not only discard the coded packet, but also discard the PDCP PDU corresponding to the coded packet.
  • the redundant packet is the result of multiplying and adding the original data (that is, one or more PDCP SDUs) and the coding coefficient; so a coding packet corresponds to One or more PDCP SDUs. If the timer associated with a coded packet expires, indicating that the coded packet has been QoS invalid, the PDCP layer of the communication device can not only discard the coded packet, but also discard the PDCP SDU corresponding to the coded packet.
  • the communication device here may also be referred to as a sending PDCP entity, that is, a PDCP entity at the sending end or a PDCP entity used for sending.
  • the network coding function is located in the PDCP layer.
  • the sending PDCP entity receives a PDCP SDU from the upper layer, cancels the association of the PDCP SDU with a discardTimer, and changes to the sending PDCP entity.
  • After receiving one or more PDCP SDUs from the upper layer After the one or more PDCP SDUs are processed by the network coding function, multiple coded packets are generated, and a discardTimer is associated with each coded packet.
  • the sending PDCP entity will discard the encoded packet and the PDCP PDU and/or PDCP SDU corresponding to the encoded packet.
  • the sending PDCP entity receives PDCP SDU0, PDCP SDU1 and PDCP SDU2
  • the three PDCP SDUs are processed by the network coding function to generate encoded packets, and each encoded packet is associated with A discardTimer that generates a PDCP PDU after adding a PDCP header to each encoded packet.
  • the discardTimer associated with the first encoded packet expires, the sending PDCP entity shall discard the first encoded packet, the PDCP PDU0 corresponding to the first encoded packet, and/or PDCP SDU0 and PDCP SDU1.
  • the sending PDCP entity needs to instruct the RLC layer to discard PDCP PDU0.
  • the communication apparatus here may be a terminal device, such as a UE, or a network device, such as a base station. It should also be understood that if the communication device is a base station, a CU-DU separation architecture may be adopted, and the communication device is specifically a gNB-CU. That is to say, in the downlink (DL) direction, the transmitting PDCP entity is located on the gNB-CU; in the uplink (UL) direction, the transmitting PDCP entity is located on the UE.
  • DL downlink
  • UL uplink
  • the network coding function is located under the PDCP layer
  • the network coding function is located under the PDCP layer, and a new NC layer is introduced above the PDCP layer, and the network coding function is located at the NC layer, that is, the protocol layer architecture shown in Figure 9b above.
  • the above-mentioned original data includes one or more PDCP PDUs.
  • the PDCP layer of the communication device cancels/disables a mechanism for associating a PDCP SDU with a discardTimer, or disables the function of associating a PDCP SDU with a discardTimer.
  • the NC layer of the communication device receives one or more PDCP PDUs (that is, original data) from the upper layer (such as the PDCP layer), and then processes the one or more PDCP PDUs together/jointly/jointly with the network coding function to generate multiple codes
  • the upper layer such as the PDCP layer
  • the NC layer of the communication device obtains an encoded packet, a timer is associated with the encoded packet. If the timer associated with a certain encoded packet expires, it means that the QoS of the encoded packet has expired, and the communication device discards the encoded packet.
  • the communication device can not only discard the coded packet, but also discard the PDCP PDU corresponding to the coded packet.
  • the NC layer is located under the PDCP layer, and the PDCP layer of the communication device receives a PDCP SDU from the upper layer, and optionally cancels the association between the PDCP SDU and a discardTimer.
  • the PDCP layer of the communication device performs header compression, encryption/integrity protection on the PDCP SDU, and then adds a PDCP header to obtain a PDCP PDU and sends it to the lower layer (such as the NC layer).
  • the NC layer of the communication device When the NC layer of the communication device receives one or more PDCP PDUs from the upper layer (that is, the PDCP layer), it performs network coding function processing on the one or more PDCP PDUs to generate coded packets, and associates a coded packet with each coded packet discardTimer. Once the discardTimer associated with an encoded packet times out, the communication device will discard the encoded packet and the PDCP PDU corresponding to the encoded packet.
  • the upper layer that is, the PDCP layer
  • the communication apparatus here may be a terminal device, such as a UE, or a network device, such as a base station. It should also be understood that if the communication device is a base station, a CU-DU separation architecture may be adopted, and the communication device is specifically a gNB-CU.
  • the NC layer is located under the PDCP layer, that is, the NC layer of the UE is located between the PDCP layer and the RLC layer of the UE.
  • the NC layer of the UE may instruct the RLC layer of the UE to discard the encoded packet transmitted to the RLC layer.
  • the NC layer of the UE may instruct the RLC layer to delete the encoded packet sent to the RLC layer.
  • the RLC layer of the UE discards the encoded packet received from the NC layer of the UE.
  • the interaction between layers on the UE can be realized through primitives, that is to say, the instruction of the NC layer of the UE to the RLC layer can be realized through primitives.
  • FIG. 13a is a second schematic diagram of UE side timeout packet loss provided by the embodiment of the present application.
  • the PDCP layer of the UE receives a PDCP SDU from the upper layer, and optionally cancels the association of the PDCP SDU with a discardTimer.
  • the PDCP layer of the UE performs header compression, encryption/integrity protection on the PDCP SDU, and then adds the PDCP header to obtain a PDCP PDU and sends it to the NC layer.
  • these three PDCP PDUs that is, PDCP PDU0 ⁇ PDCP PDU2
  • coded packets 0 ⁇ 3 coded packet 0 and coded packet 1 are system packets as shown in Figure 13a, Encoding package 2 and encoding package 3 are redundant packages
  • a discardTimer is associated with each encoding package. Once the discardTimer associated with an encoded packet expires, the UE will discard the encoded packet, and optionally discard the PDCP PDU corresponding to the encoded packet.
  • the NC layer of the UE transmits the encoded packet 0 (that is, the encoded packet whose packet ID is 0 in Figure 13a) to the RLC layer of the UE, and the discardTimer 1 associated with the encoded packet 0 times out, the NC of the UE The layer discards the PDCP PDU0 and PDCP PDU1 corresponding to the encoded packet 0, and instructs the RLC layer of the UE to discard the encoded packet 0 transmitted to the RLC layer.
  • the discardTimer 1 associated with the encoded packet 0 times out and the NC layer of the UE has not sent the encoded packet 0 to the RLC layer of the UE, the NC layer of the UE directly discards the encoded packet 0.
  • both packets and redundant packets include packet header information. It should also be understood that the crossed " ⁇ " on the data packet in Fig. 13a indicates that the data packet is discarded after the discardTimer 1 times out.
  • the communication device is specifically a gNB-CU, that is to say, the NC layer is located on the gNB-CU and below the PDCP layer.
  • the gNB-CU After the gNB-CU performs network coding function processing on one or more PDCP PDUs to generate coded packets, it can send the generated coded packets to gNB-DU. If the gNB-CU has sent a coded packet to the gNB-DU, and the timer associated with the coded packet on the gNB-CU expires, the gNB-CU can send indication information to the gNB-DU to indicate the gNB-DU Discard this encoded packet.
  • the indication information includes the identification of the encoding packet, such as a data packet identification (packet ID) or, the indication information includes the encoding coefficient factor identification (or encoding coefficient index) corresponding to the encoding packet, such as the encoding coefficient factor identification Coeff ID .
  • the gNB-DU may discard the encoded packet indicated by the indication information according to the indication of the indication information.
  • the gNB-CU sends a coded packet to the gNB-DU, the coded packet no longer exists in the storage space (such as cache) of the gNB-CU, and the timing associated with the coded packet on the gNB-CU After the timer times out and the coded packet has been sent to the gNB-DU, the gNB-CU does not need to discard the coded packet by itself, but instructs the gNB-DU to discard the coded packet through the instruction message.
  • the gNB-CU sends a coded packet to the gNB-DU, the coded packet still exists in the storage space (such as cache) of the gNB-CU, then after the coded packet is sent to the gNB-DU, if it matches the When the timer associated with the coded packet expires, the gNB-CU not only discards the coded packet, but also instructs the gNB-DU to also discard the coded packet through the indication information.
  • FIG. 13b is a schematic diagram 2 of timeout packet loss when the NC layer on the gNB side is located under the PDCP layer according to the embodiment of the present application.
  • the PDCP layer of the gNB-CU receives a PDCP SDU from the upper layer, and optionally cancels the association of the PDCP SDU with a discardTimer.
  • the PDCP layer of the gNB-CU performs header compression, encryption/integrity protection on the PDCP SDU, and then adds a PDCP header to obtain a PDCP PDU and sends it to the NC layer.
  • PDCP PDUs these three PDCP PDUs (that is, PDCP PDU0 ⁇ PDCP PDU2) are processed together by the network coding function to generate coded packets 0 ⁇ 3 (as shown in Figure 13b, coded packet 0 and coded packet 1 are the system package, encoding package 2 and encoding package 3 are redundant packages), and associate a discardTimer with each encoding package. Once the discardTimer associated with an encoded packet expires, the gNB-CU will discard the encoded packet, and optionally discard the PDCP PDU corresponding to the encoded packet.
  • the gNB-CU sends the encoded packet 0 (that is, the encoded packet with packet ID 0 in Figure 13b) to the gNB-DU, and the discardTimer1 associated with the encoded packet 0 times out, then the gNB-CU discards the encoded packet 0 corresponding to PDCP PDU0 and PDCP PDU1, and send indication information to gNB-DU, which can carry the packet ID of encoded packet 0, and is used to instruct gNB-DU to discard encoded packet 0 received from gNB-CU. It should be understood that if the discardTimer 1 associated with encoded packet 0 times out and the gNB-CU has not sent encoded packet 0 to the gNB-DU, the gNB-CU directly discards encoded packet 0.
  • a timer is associated with an encoded packet, and after the timer associated with an encoded packet expires, the interlayer interaction (originally Language) or instruction information to instruct the RLC layer to discard the coded packet that has been transmitted to the RLC layer, which can reduce the waste of air interface resources caused by the RLC layer transmitting the coded packet to the next layer, and improve the efficiency of air interface transmission.
  • the interlayer interaction originally Language
  • instruction information to instruct the RLC layer to discard the coded packet that has been transmitted to the RLC layer, which can reduce the waste of air interface resources caused by the RLC layer transmitting the coded packet to the next layer, and improve the efficiency of air interface transmission.
  • the network coding function is located above the RLC layer
  • the network coding function is located above the RLC layer, and a new NC layer is introduced above the RLC layer, and the network coding function is located at the NC layer, that is, the protocol layer architecture shown in the aforementioned Figure 9c.
  • the above-mentioned original data includes one or more PDCP PDUs.
  • the protocol layer architecture on the UE side is exactly the same as that shown in Figure 9b, so the NC layer is located between the RLC layer
  • the processing flow of the UE at the above time may follow the processing flow of the UE when the NC layer is located under the PDCP layer in the embodiment of the present application, and will not be repeated here.
  • the NC layer is located above the RLC layer (the protocol layer architecture on the gNB side shown in Figure 9b above), and the NC layer is located below the PDCP layer (the gNB side shown in Figure 9c above).
  • protocol layer architecture is different in that: when the NC layer is located above the RLC layer, the communication device is a gNB-DU, that is to say, the NC layer is located on the gNB-DU and above the RLC layer.
  • gNB-CU sends PDCP PDU to gNB-DU.
  • the gNB-CU can cancel/disable the mechanism that a PDCP SDU is associated with a discardTimer.
  • the gNB-DU After the gNB-DU receives one or more PDCP PDUs (ie original data) from the gNB-CU, the one or more PDCP PDUs are processed together/jointly/jointly with the network coding function to generate multiple coded packets.
  • the specific network For the encoding function processing reference may be made to the above-mentioned FIG. 5b , which will not be repeated here.
  • Each time gNB-DU gets an encoded packet, a timer is associated with the encoded packet. If the timer associated with a coded packet expires, it means that the coded packet has lost QoS, and the gNB-DU can discard the coded packet.
  • the encoding package in this embodiment of the present application includes at least one of a system package and a redundancy package.
  • the NC layer of gNB-DU can indicate the RLC of gNB-DU Layer discards this encoded packet for transmission to the RLC layer.
  • the RLC layer of the gNB-DU discards this encoded packet received from the NC layer of the gNB-DU.
  • the interaction between the various layers on the gNB-DU can be realized through primitives, that is to say, the instruction from the NC layer of the gNB-DU to the RLC layer can be realized through primitives.
  • Fig. 13c is a second schematic diagram of timeout packet loss in which the NC layer on the gNB side is located above the RLC layer according to the embodiment of the present application.
  • the PDCP layer of the gNB-CU receives a PDCP SDU from the upper layer, and optionally cancels the association of the PDCP SDU with a discardTimer.
  • the PDCP layer of the gNB-CU performs header compression, encryption/integrity protection on the PDCP SDU, and then adds the PDCP header to obtain a PDCP PDU and sends it to the gNB-DU.
  • PDCP PDU2 that is, the SN in Figure 13c
  • the NC layer of gNB-DU transmits encoded packet 0 (that is, the encoded packet with packet ID 0 in Figure 13c) to the RLC layer of gNB-DU, discardTimer 1 associated with encoded packet 0 times out, Then the NC layer of the gNB-DU discards the PDCP PDU0 and PDCP PDU1 corresponding to the encoded packet 0, and instructs the RLC layer of the gNB-DU to discard the encoded packet 0 transmitted to the RLC layer.
  • the embodiment of the present application uses the gNB as an example to illustrate the CU-DU separation architecture, but the embodiment of the present application is still applicable to The scenario where the gNB adopts a non-CU-DU separation architecture, that is, in the downlink (DL) direction, the PDCP layer, NC layer, and RLC layer are all located on the gNB.
  • the gNB adopts a non-CU-DU separation architecture all inter-layer interactions are implemented on the gNB (that is to say, the interaction between each layer in the gNB needs to be added), and its processing flow can refer to the processing flow on the UE side. Let me repeat.
  • This embodiment takes the original data packet to generate a coded packet (including system packet and redundant packet) as an example for illustration (that is, the scheme shown in Figure 5b). Similarly, this embodiment is also applicable to the scenario where the original data packet generates a redundant packet (that is, the solution illustrated in FIG. 5a ), it is only necessary to replace the coded packets in the above solution with redundant packets, and replace the system packets with original data packets.
  • a discardTimer is re-associated with a coded packet.
  • the coded packet and the PDCP PDU corresponding to the coded packet are discarded; not only can Solve the problem of how to discard SDUs and PDUs that have failed in QoS when PDCP SDUs and PDCP PDUs are no longer in one-to-one correspondence, thereby reducing the waste of resources caused by sending QoS invalid data on the air interface, improving the efficiency of air interface transmission, and accurate packet loss (Because an encoded packet is associated with a discardTimer), reducing the situation of packet loss by mistake.
  • the RLC layer is instructed to discard the coded packets whose QoS has expired through interlayer interaction (primitives) or indication information, which can solve the problem that the RLC layer cannot directly see the PDCP due to the encapsulation of PDCP PDUs in the coded packets. PDU, so that the existing mechanism cannot be used to discard data packets that have failed QoS, further reducing resource waste and improving the efficiency of air interface transmission.
  • Embodiment 3 of this application mainly introduces that the network coding function is located in the PDCP layer, that is, when PDCP SDUs and PDCP PDUs are no longer in one-to-one correspondence, how does the sending PDCP entity discard the QoS invalidated ones by using the mechanism that a PDCP SDU is associated with a discardTimer? PDCP SDU and PDCP PDU.
  • the PDCP entity used for sending in Embodiment 3 of the present application refers to the PDCP entity at the sending end, and is referred to as the sending PDCP entity for short.
  • the sending end can be a terminal device, such as UE in FIG. 1 or UE 120 in FIG. 4 ; it can also be a network device, such as a base station in FIG. 1 or a base station 110 in FIG. 4 .
  • the sending end is a UE
  • the PDCP entity used for sending can be located on the UE; if the sending end is a base station, and the base station adopts a CU-DU separation structure, the PDCP entity used for sending can be located in the gNB-CU superior.
  • the generation of encoded packets (including system packets and redundant packets) from original data packets is taken as an example for illustration (that is, the solution shown in FIG. 5b ).
  • FIG. 14 is a third schematic flow chart of a method for overtime packet loss in a network coding scenario provided by an embodiment of the present application.
  • the overtime packet loss method in this network coding scenario includes but is not limited to the following steps:
  • the sending PDCP entity discards the PDCP SDU, where one PDCP SDU is associated with one timer.
  • the sending PDCP entity performs network coding function processing on one or more PDCP SDUs to generate multiple first data packets, where the multiple first data packets include system packets and redundant packets, or, the multiple first data packets Including original data packets and redundant packets, one first data packet corresponds to one PDCP PDU, and one PDCP PDU includes a first data packet and a PDCP header.
  • step S301 and step S302 in this embodiment of the present application is not limited.
  • Step S301 may be performed before step S302, step S301 may be performed after step S302, or step S301 and step S302 may be performed simultaneously.
  • the plurality of first data packets include system packets and redundant packets, or, the plurality of first data packets include original data packets and redundant packets.
  • the embodiment of the present application is described by taking the multiple first data packets including system packets and redundant packets (collectively referred to as encoding packets herein) as an example.
  • the network coding function is located in the PDCP layer, that is to say, the network coding function is a sub-function of the PDCP layer.
  • the sending PDCP entity when the sending PDCP entity receives a PDCP SDU from the upper layer (such as the SDAP layer), the sending PDCP entity associates a discardTimer with the PDCP SDU, and starts the discardTimer. If the discardTimer associated with the PDCP SDU times out, it means that the PDCP SDU has been QoS invalid (this is because some services have delay requirements, if the data packets of these services have exceeded the delay requirement or are about to exceed the delay when they are transmitted to the PDCP layer requirements, there is no need to transmit to the next layer, so these data packets can be deleted at the PDCP layer, thereby saving air interface resources), then the sending PDCP entity discards the PDCP SDU.
  • the sending PDCP entity When the sending PDCP entity receives one or more PDCP SDUs (that is, a set of original data to be encoded) from the upper layer (such as the SDAP layer), the sending PDCP entity can network/commonly/jointly network the one or more PDCP SDUs
  • the processing of the encoding function generates a plurality of encoding packets. For the specific network encoding function processing, refer to the above-mentioned FIG. 5b , which will not be repeated here.
  • Each time the sending PDCP entity gets an encoded packet it can add a PDCP header to the encoded packet to obtain a PDCP PDU. In other words, one encoded packet corresponds to one PDCP PDU.
  • one coding packet corresponds to at least one PDCP SDU
  • a coded packet carries information of at least one PDCP SDU (it should be understood that if the coded packet is a system packet, it may carry all or part of the information of a PDCP SDU), in other words, a PDCP PDU corresponds to at least one PDCP SDU.
  • the sending PDCP entity discards the PDCP PDU.
  • the discardTimer associated with a PDCP SDU expires, the sending PDCP entity will discard the PDCP SDU, and the PDCP PDU can only be discarded when the discardTimer associated with all PDCP SDUs it contains expires, that is, K is equal to N.
  • the discardTimer associated with a PDCP SDU expires, the sending PDCP entity will discard the PDCP SDU.
  • the discardTimer can only be discarded when it expires, that is, the preset threshold is N/2, and K is a positive integer greater than N/2.
  • the N PDCP SDUs corresponding to the above PDCP PDU include: the first data packet included in a PDCP PDU is a system packet or the original data packet, then the data of the first data packet included in this PDCP PDU comes from the N PDCP SDUs Each PDCP SDU; or, the first data packet included in a PDCP PDU is a redundant packet, then the original data packet included in this PDCP PDU that satisfies the network coding relationship with the first data packet comes from each of the N PDCP SDUs PDCP SDUs.
  • the sending PDCP entity discards PDCP SDU0.
  • the sending PDCP entity processes PDCP SDU0, PDCP SDU1, and PDCP SDU2 together with the network coding function to generate coded packets (including 2 system packets and 2 redundant packets), where coded packet 0 is system packet 0, including PDCP SDU0 And part of PDCP SDU1, coded package 1 is system package 1, including the remaining parts of PDCP SDU1 and PDCP SDU2, coded package 2 and coded package 3 are redundant packages, including PDCP SDU0, PDCP SDU1 and PDCP SDU2 content.
  • PDCP PDU0 contains not only PDCP SDU0, but also some information of PDCP SDU1. Therefore, if the discardTimers associated with PDCP SDU0 and PDCP SDU1 corresponding to PDCP PDU0 both time out, the sending PDCP entity discards PDCP PDU0. Alternatively, if the discardTimers associated with more than half of the PDCP SDUs corresponding to PDCP PDU0 expire, the sending PDCP entity discards PDCP PDU0.
  • PDCP PDU2 and PDCP PDU3 contain the information of PDCP SDU0, PDCP SDU1, and PDCP SDU2, if the discardTimers associated with PDCP SDU0, PDCP SDU1, and PDCP SDU2 respectively time out, the sending PDCP entity discards PDCP PDU2 and PDCP PDU3. Or, if the discardTimers associated with more than half of the PDCP SDUs corresponding to PDCP PDU2 and PDCP PDU3 in all PDCP SDUs are timed out, the sending PDCP entity discards PDCP PDU2 and PDCP PDU3.
  • the sending PDCP entity discards PDCP PDU2 and PDCP PDU3.
  • the encoded packets generated by the transmitting PDCP entity after processing the received one or more PDCP SDUs with the network encoding function include system packets and redundant packets.
  • the network coding function is located at the PDCP layer, the PDCP layer also caches coded packets in addition to PDCP SDUs and PDCP PDUs. Therefore, if the discardTimer associated with a PDCP SDU expires, the sending PDCP entity may discard all or part of the multiple encoded packets corresponding to the PDCP SDU in addition to discarding the PDCP SDU.
  • one PDCP SDU corresponds to multiple encoded packets (because there are both system packets and redundant packets).
  • the sending PDCP entity discards the PDCP SDU, and the system packet or redundant packet corresponding to the PDCP SDU, that is, the sending PDCP entity discards the PDCP SDU corresponding to multiple encoded packets. part.
  • the discardTimer associated with a PDCP SDU times out, the sending PDCP entity discards the PDCP SDU, and the system packets and redundant packets corresponding to the PDCP SDU, that is, the sending PDCP entity discards all encoded packets corresponding to the PDCP SDU.
  • PDCP SDU0, PDCP SDU1, and PDCP SDU2 are processed together by the network coding function to generate coded packets, which include 2 system packets and 2 redundant packets. If the discardTimer associated with PDCP SDU0 times out, in addition to discarding PDCP SDU0, the sending PDCP entity also discards the system packet corresponding to PDCP SDU0 (that is, the first encoded packet), or discards the system packet corresponding to PDCP SDU0 (that is, the first encoded packet). encoded packets) and redundant packets (i.e. the third and fourth encoded packets).
  • the sending PDCP entity after the sending PDCP entity sends a PDCP PDU to the RLC layer, if the discardTimer associated with all or part of the PDCP SDUs corresponding to the PDCP PDU expires, the sending PDCP entity needs to instruct the RLC layer to discard the PDCP PDU.
  • the sending RLC layer entity (this application refers to the entity implementing the RLC layer function as the RLC layer entity, and the RLC layer entity at the sending end is called the RLC layer entity for sending, referred to as the sending RLC layer entity) discards the RLC layer entity from the upper layer ( Such as the PDCP PDU received by the PDCP layer).
  • the RLC layer entity discards the PDCP PDU, which can be understood as the RLC layer entity discards the RLC SDU corresponding to the PDCP PDU.
  • the sending PDCP entity sends the PDCP PDU to the RLC layer, the PDCP PDU does not exist in the storage space (such as cache) of the sending PDCP entity, then when the discardTimer associated with all or part of the PDCP SDUs corresponding to the PDCP PDU After both times out, the sending PDCP entity does not need to perform the operation of discarding the PDCP PDU itself, but instructs the RLC layer to discard the PDCP PDU.
  • the sending PDCP entity sends the PDCP PDU to the RLC layer, and the sending PDCP entity still caches the PDCP PDU, the sending PDCP entity not only needs to instruct the RLC layer to discard the PDCP PDU, but also needs to discard the PDCP PDU in its own cache. PDUs.
  • the sending PDCP entity is located on the gNB-CU. If the gNB-CU has sent a PDCP PDU to the gNB-DU through the GTP tunnel, and the discardTimer associated with all or part of the PDCP SDUs corresponding to the PDCP PDU has timed out, the gNB-CU needs to instruct the gNB-DU to discard the PDCP PDU. Correspondingly, after receiving the instruction from the gNB-CU, the gNB-DU discards the received PDCP PDU according to the instruction. Wherein, the indication is sent in DL User Data of the F1 interface.
  • This embodiment takes the original data packet to generate a coded packet (including system packet and redundant packet) as an example for illustration (that is, the scheme shown in Figure 5b). Similarly, this embodiment is also applicable to the scenario where the original data packet generates a redundant packet (that is, the solution illustrated in FIG. 5a ), it is only necessary to replace the coded packets in the above solution with redundant packets, and replace the system packets with original data packets.
  • the embodiment of the present application multiplexes the overtime packet loss mechanism of the NR PDCP layer in the network coding scenario and modifies the principle of discarding PDCP PDUs on this basis, that is, multiplexes a PDCP SDU associated with a discardTimer.
  • the QoS-invalid data packets can reduce the waste of resources caused by the transmission of QoS-invalid data packets on the air interface, and can reduce the situation of error packet loss and improve the efficiency of air interface transmission.
  • Embodiment 4 of this application mainly introduces that the network coding function is located in the PDCP layer, that is, when PDCP SDUs and PDCP PDUs are no longer in one-to-one correspondence, the mechanism of a discardTimer associated with a PDCP SDU is used. When the discardTimer associated with a certain PDCP SDU times out Finally, discard this PDCP SDU, and how to discard the PDCP PDU that has failed QoS.
  • the PDCP entity used for sending in Embodiment 4 of the present application refers to the PDCP entity at the sending end, and is referred to as the sending PDCP entity for short.
  • the sending end can be a terminal device, such as UE in FIG. 1 or UE 120 in FIG. 4 ; it can also be a network device, such as a base station in FIG. 1 or a base station 110 in FIG. 4 .
  • the sending end is a UE
  • the PDCP entity used for sending can be located on the UE; if the sending end is a base station, and the base station adopts a CU-DU separation structure, the PDCP entity used for sending can be located in the gNB-CU superior.
  • the generation of encoded packets (including system packets and redundant packets) from original data packets is taken as an example for illustration (that is, the solution shown in FIG. 5b ).
  • FIG. 15 is a fourth schematic flowchart of a method for packet loss over time in a network coding scenario provided by an embodiment of the present application.
  • the timeout packet loss method in this network coding scenario includes but is not limited to the following steps:
  • the sending PDCP entity performs network coding function processing on one or more PDCP SDUs to generate multiple first data packets, where the multiple first data packets include system packets and redundant packets, or, the multiple first data packets Including original data packets and redundant packets, the one or more PDCP SDUs correspond to multiple first data packets, one first data packet corresponds to one PDCP PDU, one PDCP PDU includes a first data packet and a PDCP header, one A PDCP SDU corresponds to multiple PDCP PDUs, and one PDCP SDU in the one or more PDCP SDUs is associated with a timer.
  • the sending PDCP entity discards at least one of the following: the first PDCP SDU, and multiple PDCP PDUs corresponding to the first PDCP SDU.
  • the plurality of first data packets include system packets and redundant packets, or, the plurality of first data packets include original data packets and redundant packets.
  • the embodiment of the present application is described by taking the multiple first data packets including system packets and redundant packets (collectively referred to as encoding packets herein) as an example.
  • the network coding function is located in the PDCP layer, that is to say, the network coding function is a sub-function of the PDCP layer.
  • the sending PDCP entity when the sending PDCP entity receives a PDCP SDU from the upper layer (such as the SDAP layer), the sending PDCP entity associates a discardTimer with the PDCP SDU, and starts the discardTimer.
  • the sending PDCP entity receives one or more PDCP SDUs (that is, a set of original data to be encoded) from the upper layer (such as the SDAP layer)
  • the sending PDCP entity can network/commonly/jointly network the one or more PDCP SDUs
  • the processing of the encoding function generates a plurality of encoding packets. For the specific network encoding function processing, refer to the above-mentioned FIG. 5b , which will not be repeated here.
  • one encoded packet corresponds to one PDCP PDU.
  • the content of the packet body in the system packet is consistent with the PDCP SDU, and the redundant packet is the result of multiplying and adding the one or more PDCP SDUs and the coding coefficient; therefore, one PDCP SDU corresponds to multiple coding packets, or The information of one PDCP SDU is carried in multiple encoded packets, in other words, one PDCP SDU corresponds to multiple PDCP PDUs.
  • the discardTimer associated with a certain PDCP SDU (that is, the above-mentioned first PDCP SDU) times out, it means that the QoS of the first PDCP SDU has expired, and the sending PDCP entity discards the first PDCP SDU and the multiples corresponding to the first PDCP SDU PDCP PDUs.
  • the sending PDCP entity will discard the PDCP SDU and all PDCP PDUs corresponding to the PDCP SDU.
  • PDCP SDU0, PDCP SDU1, and PDCP SDU2 are processed together by the network coding function to generate coded packets (including 2 system packets and 2 redundant packets), where coded packet 0 is System package 0, including PDCP SDU0 and part of PDCP SDU1, coded package 1 is system package 1, including the rest of PDCP SDU1 and PDCP SDU2, coded package 2 and coded package 3 are redundant packages, including PDCP SDU0, PDCP SDU1 and Contents of PDCP SDU2. Then add a PDCP header to each encoded packet to obtain PDCP PDU0 ⁇ 3.
  • the sending PDCP entity shall discard PDCP SDU0, and the corresponding PDCP PDU0, PDCP PDU2 and PDCP PDU3.
  • each redundant packet contains the contents of PDCP SDU0, PDCP SDU1, and PDCP SDU2, which can be used by the receiving end to any one of PDCP SDU0, PDCP SDU1, and PDCP SDU2 Recovery of PDCP SDUs. Therefore, once the discardTimer timer associated with PDCP SDU0 expires, the sending PDCP entity needs to discard all PDCP PDU0, PDCP PDU2 and PDCP PDU3 containing the content of PDCP SDU0 in addition to discarding PDCP SDU0.
  • the sending PDCP entity only discards PDCP SDU0 and PDCP PDU0, because the receiving end can correctly receive PDCP PDU2 and/or PDCP PDU3, the receiving end can still successfully recover PDCP SDU0, which will cause the receiving end to receive an invalid PDCP SDU0.
  • the PDCP layer also buffers encoded packets in addition to the PDCP SDU and PDCP PDU. Therefore, if the discardTimer associated with the above-mentioned first PDCP SDU times out, the sending PDCP entity may not only discard the first PDCP SDU and the multiple PDCP PDUs corresponding to the first PDCP SDU, but also discard the multiple PDCP PDUs corresponding to the first PDCP SDU. All or part of an encoded packet.
  • the sending PDCP entity discards the first PDCP SDU and the system packet or redundant packet corresponding to the first PDCP SDU.
  • the sending PDCP entity discards the first PDCP SDU, and the system packets and redundant packets corresponding to the first PDCP SDU.
  • the sending PDCP entity after the sending PDCP entity sends all or part of the PDCP PDUs corresponding to the first PDCP SDU to the RLC layer, if the discardTimer associated with the first PDCP SDU times out, the sending PDCP entity needs to instruct the RLC layer to discard the transmission These PDCP PDUs to the RLC layer.
  • the sending RLC layer entity discards these PDCP PDUs received from upper layers (such as PDCP layer).
  • the sending PDCP layer entity can instruct the RLC layer to discard the part of the PDCP PDU sent to the RLC layer, that is, not send
  • the PDCP PDU to the RLC layer does not need to be discarded by the sending PDCP entity to instruct the RLC layer to discard, and can be directly discarded by the sending PDCP layer entity.
  • the sending PDCP layer entity needs to instruct the RLC layer to discard all the PDCP PDUs, and the sending PDCP entity does not need to perform the discarding of the first PDCP PDU itself.
  • the sending PDCP entity is located on the gNB-CU. If the gNB-CU has sent a PDCP PDU corresponding to the first PDCP SDU to the gNB-DU through the GTP tunnel, and the discardTimer associated with the first PDCP SDU expires, the gNB-CU needs to instruct the gNB-DU to discard the first The PDCP PDU corresponding to the PDCP SDU. Correspondingly, after receiving the instruction from the gNB-CU, the gNB-DU discards the received PDCP PDU according to the instruction. Wherein, the indication is sent in DL User Data of the F1 interface.
  • This embodiment takes the original data packet to generate a coded packet (including system packet and redundant packet) as an example for illustration (that is, the scheme shown in Figure 5b). Similarly, this embodiment is also applicable to the scenario where the original data packet generates a redundant packet (that is, the solution illustrated in FIG. 5a ), it is only necessary to replace the coded packets in the above solution with redundant packets, and replace the system packets with original data packets.
  • the embodiment of the present application multiplexes the overtime packet loss mechanism of the NR PDCP layer in the network coding scenario.
  • a discardTimer associated with a PDCP SDU expires, the PDCP SDU and all PDCP PDUs corresponding to the PDCP SDU are discarded.
  • the PDCP SDU and all PDCP PDUs corresponding to the PDCP SDU are discarded.
  • reduce the changes to the overtime packet loss mechanism of the NR PDCP layer, and discard data packets that have failed QoS in the network coding scenario reduce the waste of resources caused by the transmission of QoS invalid data packets on the air interface, and reduce the recovery of invalid data at the receiving end packet probability, improving the transmission efficiency of the air interface.
  • the communication device performs network coding function processing on a group of PDCP PDUs to generate multiple first data packets, and the multiple first data packets include system packets and redundant packets, or, the multiple first data packets Data packets include original data packets and redundant packets.
  • the group of PDCP PDUs includes one or more PDCP PDUs, and one PDCP PDU corresponds to at least one first data packet.
  • the communication device discards the PDCP SDU and the PDCP PDU corresponding to the PDCP SDU, and discards multiple first data packets corresponding to the PDCP PDU, wherein one PDCP SDU is associated with one timer, one A PDCP PDU consists of a PDCP SDU and a PDCP header.
  • the communication device in the embodiment of the present application includes a PDCP layer, an RLC layer and an NC layer, and the NC layer is located under the PDCP layer.
  • PDCP PDUs to process network coding functions to generate system packets and redundant packets (collectively referred to as coded packets) as an example: if the above-mentioned communication device is a UE, the PDCP layer of the UE receives a PDCP SDU from the upper layer, as The PDCP SDU is associated with a discardTimer, and the PDCP SDU is subjected to header compression, encryption/integrity protection, and then the PDCP header is added to obtain a PDCP PDU to be transmitted to the lower layer (such as the NC layer).
  • the lower layer such as the NC layer
  • the NC layer of the UE When the NC layer of the UE receives a group of PDCP PDUs (that is, one or more PDCP PDUs) from the upper layer (that is, the PDCP layer), it processes the group of PDCP PDUs together with the network coding function to generate multiple coded packets.
  • a coded packet includes a system packet and a redundant packet, and one PDCP PDU corresponds to multiple coded packets. Then, the NC layer of the UE can send the generated multiple encoded packets to the RLC layer. If the discardTimer associated with a PDCP SDU expires, the PDCP layer of the UE discards the PDCP SDU and the PDCP PDU corresponding to the PDCP SDU.
  • the NC layer of the UE Since the PDCP SDU and the corresponding PDCP PDU have been QoS invalid, if the NC layer of the UE has sent the coded packet corresponding to the PDCP PDU to the RLC layer, the NC layer of the UE needs to instruct the RLC layer of the UE to discard the coded packet corresponding to the PDCP PDU Bag. Correspondingly, the RLC layer of the UE discards the encoded packet corresponding to the PDCP PDU.
  • the PDCP layer of gNB-CU receives a PDCP SDU from the upper layer, associates a discardTimer with the PDCP SDU, and performs header compression, encryption/integrity protection on the PDCP SDU After adding the PDCP header, a PDCP PDU is transmitted to the lower layer (such as the NC layer).
  • the NC layer of the gNB-CU receives a group of PDCP PDUs (that is, one or more PDCP PDUs) from the upper layer (that is, the PDCP layer), it performs network coding operations on this group of PDCP PDUs together to generate multiple coded packets.
  • a coded packet includes a system packet and a redundant packet, and one PDCP PDU corresponds to multiple coded packets.
  • the gNB-CU can then send the generated multiple encoded packets to the gNB-DU. If the discardTimer associated with a PDCP SDU times out, the PDCP layer of the gNB-CU discards the PDCP SDU and the PDCP PDU corresponding to the PDCP SDU.
  • the gNB-CU can send an indication message to the gNB-DU, the indication information includes The identifier of the coded packet corresponding to the PDCP PDU or the coded coefficient factor identifier corresponding to the generated coded packet is used to instruct the gNB-DU to discard the coded packet corresponding to the PDCP PDU.
  • the gNB-DU discards the coded packet corresponding to the PDCP PDU according to the indication of the indication information.
  • FIG. 16 is a third schematic diagram of timeout packet loss when the NC layer on the gNB side is located under the PDCP layer provided by the embodiment of the present application.
  • encoded packet 0 is system packet 0, including PDCP PDU0 and part of PDCP PDU1
  • encoded packet 1 is system packet 1, including the rest PDCP PDU1 and PDCP PDU2
  • coded packet 2 and coded packet 3 are redundant packets, including the contents of PDCP PDU0, PDCP PDU1 and PDCP PDU2.
  • coded packet 0 (that is, the coded packet/system packet with packet ID 0 in Figure 16)
  • coded packet 2 (that is, the coded packet/redundant packet with packet ID 2 in Figure 16)
  • coded packet 3 (that is, the coded packet in Figure 16
  • the encoded packet/redundant packet whose packet ID is 3) contains the content of PDCP PDU0, that is, PDCP PDU0 corresponds to encoded packet 0, encoded packet 2, and encoded packet 3, so encoded packet 0, encoded packet Both 2 and encoded packet 3 also need to be discarded. Therefore, gNB-CU needs to instruct gNB-DU to discard coded packet 0, coded packet 2 and coded packet 3.
  • the embodiment of the present application follows the timeout packet loss mechanism of the NR PDCP layer.
  • a discardTimer associated with a PDCP SDU expires, the PDCP SDU and a PDCP PDU corresponding to the PDCP SDU are discarded, and a group of PDCP PDUs are sent to the communication device.
  • the RLC layer is instructed to delete the corresponding encoded packets through inter-layer interaction or indication information, which can solve the problem that the RLC layer cannot directly see the PDCP PDU encapsulated in the encoded packets.
  • PDCP PDU so that the existing mechanism cannot be used to discard data packets that have failed QoS, thereby reducing the waste of resources caused by sending QoS invalid data on the air interface, and improving the efficiency of air interface transmission.
  • This embodiment takes the original data packet to generate a coded packet (including system packet and redundant packet) as an example for illustration (that is, the scheme shown in Figure 5b). Similarly, this embodiment is also applicable to the scenario where the original data packet generates a redundant packet (that is, the solution illustrated in FIG. 5a ), it is only necessary to replace the coded packets in the above solution with redundant packets, and replace the system packets with original data packets.
  • the communication device discards the PDCP SDU and the PDCP PDU corresponding to the PDCP SDU, where a PDCP SDU is associated with a timer, and a PDCP PDU is a PDCP SDU execution header It is obtained after adding PDCP header after compression, encryption/integrity protection.
  • the communication device performs network coding function processing on a group of PDCP PDUs to generate multiple coded packets, the multiple coded packets include system packets and redundant packets, the group of PDCP PDUs includes one or more PDCP PDUs, and one coded packet carries Information (partial/full) of at least one PDCP PDU.
  • the communication device in the embodiment of the present application includes a PDCP layer, an RLC layer and an NC layer, and the NC layer is located under the PDCP layer.
  • the communication device needs to instruct the lower layer to discard the encoded packet.
  • the communication device may be indicated by a primitive here. If the communication device is a gNB and adopts the CU-DU separation architecture, it can be indicated by signaling (indication information).
  • encoded packet 0 is system packet 0, including PDCP PDU0 and part of PDCP PDU1
  • encoded packet 1 is system packet 1, including the rest PDCP PDU1 and PDCP PDU2
  • coded packet 2 and coded packet 3 are redundant packets, including the contents of PDCP PDU0, PDCP PDU1 and PDCP PDU2.
  • encoded packet 0 (that is, the encoded packet/system packet with packet ID 0 in Figure 16) not only contains the content of PDCP PDU0, but also contains part of the content of PDCP PDU1, so if the respective discardTimers associated with PDCP SDU0 and PDCP SDU1 both time out, Then the gNB-CU instructs the gNB-DU to discard encoded packet 0.
  • the embodiment of the present application can solve the problem that the RLC layer cannot directly see the PDCP PDU because the PDCP PDU is encapsulated in the coded packet, so that the existing mechanism cannot be used to discard the data packet that has failed QoS, thereby reducing the problem of QoS failure.
  • the waste of resources caused by data transmission on the air interface can reduce the situation of wrong packet loss and improve the efficiency of air interface transmission.
  • This embodiment takes the original data packet to generate a coded packet (including system packet and redundant packet) as an example for illustration (that is, the scheme shown in Figure 5b). Similarly, this embodiment is also applicable to the scenario where the original data packet generates a redundant packet (that is, the solution illustrated in FIG. 5a ), it is only necessary to replace the coded packets in the above solution with redundant packets, and replace the system packets with original data packets.
  • the gNB-CU discards the PDCP SDU and/or the PDCP PDU corresponding to the PDCP SDU, a PDCP SDU is associated with a timer, and a PDCP PDU is a PDCP SDU Obtained after performing header compression, encryption/integrity protection, and adding a PDCP header. If the gNB-CU has sent the PDCP PDU corresponding to the PDCP SDU to the gNB-DU, the gNB-CU can use the existing mechanism to instruct the gNB-DU to discard the corresponding PDCP PDU.
  • the NC layer is located above the RLC layer, that is, the NC layer is located on the gNB-DU.
  • the gNB-DU performs network coding on a group of PDCP PDUs received from the gNB-CU to generate multiple coded packets.
  • the gNB-DU can also discard all encoded packets (including system packets and redundant packets) corresponding to the PDCP PDU, or, when When all PDCP PDUs corresponding to an encoded packet are instructed to be discarded, the gNB-DU discards the encoded packet.
  • FIG. 17 is a third schematic diagram of timeout packet loss in which the NC layer on the gNB side is located above the RLC layer according to the embodiment of the present application.
  • PDCP PDU with SN 2
  • the gNB-DU takes the received PDCP PDU0, PDCP PDU1 and PDCP PDU2 as an encoding block to process the network encoding function to generate an encoding packet.
  • the gNB-CU will discard the PDCP SDU0 and PDCP PDU0.
  • the gNB-CU instructs the gNB-DU to discard PDCP PDU0.
  • coded package 0 is system package 0, including PDCP PDU0 and part of PDCP PDU1
  • coded package 1 is system package 1
  • coded package 2 and coded package 3 are redundant packages, including PDCP Contents of PDU0, PDCP PDU1 and PDCP PDU2. Therefore, encoded packet 0 (i.e. the encoded packet/system packet whose packet ID is 0 in Figure 17), encoded packet 2 (i.e. the encoded packet/redundant packet whose packet ID is 2 in Figure 17) and encoded packet 3 (i.e. The coded packet/redundant packet whose packet ID is 3) contains the content of PDCP PDU0.
  • the gNB-DU will also discard encoded packet 0, encoded packet 2 and encoded packet 3 in addition to discarding PDCP PDU0.
  • the gNB-DU only discards PDCP PDU0. Only when the gNB-CU instructs the gNB-DU to discard PDCP PDU0 and PDCP PDU1, the gNB-DU will discard encoded packet 0 in addition to discarding PDCP PDU0 and PDCP PDU1.
  • both the system package and the redundant package shown in FIG. 17 do not draw their package headers, but in practical applications, both the system package and the redundant package include package header information. It should be understood that the “ ⁇ ” on the data packet in FIG. 17 indicates that the data packet is discarded after the discardTimer 1 times out.
  • the embodiment of the present application can solve the problem that the RLC layer cannot use the existing mechanism for packet loss after the introduction of the NC layer between the PDCP layer and the RLC layer, and the RLC layer discards the QoS invalid packets according to the instruction information of the upper layer. Data packets, reducing the waste of resources caused by sending invalid data packets on the air interface.
  • This embodiment takes the original data packet to generate a coded packet (including system packet and redundant packet) as an example for illustration (that is, the scheme shown in Figure 5b). Similarly, this embodiment is also applicable to the scenario where the original data packet generates a redundant packet (that is, the solution illustrated in FIG. 5a ), it is only necessary to replace the coded packets in the above solution with redundant packets, and replace the system packets with original data packets.
  • the above content elaborates the method of the present application in detail.
  • the embodiments of the present application also provide corresponding devices or equipment.
  • the functional modules of the communication device and the sending PDCP entity can be divided according to the above method examples.
  • each functional module can be divided corresponding to each function, or two or more functions can be integrated into one processing module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or in the form of software function modules. It should be noted that the division of modules in the embodiment of the present application is schematic, and is only a logical function division, and there may be other division methods in actual implementation.
  • the communication device according to the embodiment of the present application will be described in detail below with reference to FIG. 18 to FIG. 21 .
  • FIG. 18 is a schematic structural diagram of a communication device provided by an embodiment of the present application.
  • the communication device may be a terminal device or a chip or circuit disposed in the terminal device; the communication device may also be a network device or a chip or circuit disposed in the network device.
  • the communication device includes: an acquiring module 11 and a discarding module 12 .
  • the acquiring module 11 is configured to acquire a set of original data, the set of original data is associated with a timer, and the set of original data is used to perform network coding function processing together to generate multiple first data packets, the multiple first data packets
  • the packet includes a system packet and a redundant packet, or the multiple first data packets include an original data packet and a redundant packet;
  • the discarding module 12 is configured to discard at least one of the following if the timer associated with the group of original data expires One item: the group of original data, and the plurality of first data packets generated by processing the group of original data with a network coding function.
  • the above raw data is PDCP SDU.
  • the above group of PDCP SDUs corresponds to the above multiple first data packets
  • one first data packet corresponds to one PDCP PDU
  • one PDCP PDU includes a first data packet and a PDCP header.
  • the above discarding module 12 is also used to discard multiple PDCP PDUs corresponding to the group of PDCP SDUs.
  • the above raw data is PDCP PDU.
  • the above discarding module 12 is also used to discard the PDCP SDUs corresponding to the group of PDCP PDUs, where one PDCP PDU corresponds to one PDCP SDU.
  • the communication device above further includes a transceiver module 13 .
  • the transceiving module 13 is configured to send instruction information to the distributed unit, where the instruction information is used to instruct the distributed unit to discard the plurality of first data packets generated by processing the group of original data and performing the network coding function.
  • the indication information includes one of the following items: respective identifiers of the multiple first data packets, ranges to which the identifiers of the multiple first data packets belong, identifiers of coding blocks to which the multiple first data packets belong, An identification of the encoding coefficient factor corresponding to each of the plurality of first data packets.
  • the communication device above is a distributed unit or a chip for a distributed unit.
  • the communication device above is a terminal device or a chip used for a terminal device.
  • the communication device above includes a PDCP layer, an NC layer, and an RLC layer, and the NC layer is located between the PDCP layer and the RLC layer.
  • the communication device above also includes an associating module 14 .
  • the associating module 14 is configured to associate a timer for the above-mentioned group of PDCP PDUs; the above-mentioned discarding module 12 is specifically used to discard at least one of the following if the timer associated with the group of PDCP PDUs expires: the group of PDCP PDUs PDU, the plurality of first data packets generated by performing network coding function processing on the group of PDCP PDUs.
  • the communication device above is a terminal device or a chip used for a terminal device.
  • the communication device above includes a PDCP layer, an NC layer, and an RLC layer, and the NC layer is located between the PDCP layer and the RLC layer.
  • the communication device above also includes an indication module 15 .
  • the instruction module 15 is configured to transmit all or part of the first data packets generated by processing the group of PDCP PDUs to the RLC layer, and instruct the RLC layer to discard the first data transmitted to the RLC layer Packet: the discarding module 12 is further configured to discard the first data packet received from the NC layer.
  • the communication device above includes a PDCP layer.
  • the communication device above also includes a closing module 16 .
  • the closing module 16 is used to close the association function of the PDCP SDU and the discard timer in the PDCP layer.
  • At least two of the acquiring module 11, the discarding module 12, the associating module 14, the indicating module 15, and the closing module 16 can be integrated into one module, such as a processing module.
  • the communication device can correspondingly execute the aforementioned first embodiment, and the above-mentioned operations or functions of each unit in the communication device are to realize the corresponding operations of the communication device in the aforementioned first embodiment, and its technical effects can be found in the aforementioned first embodiment For the sake of brevity, the technical effects will not be repeated here.
  • FIG. 19 is another schematic structural diagram of a communication device provided by an embodiment of the present application.
  • the communication device may be a terminal device or a chip or circuit disposed in the terminal device; the communication device may also be a network device or a chip or circuit disposed in the network device.
  • the communication device includes: an encoding module 21 and a discarding module 22 .
  • the encoding module 21 is configured to perform network encoding function processing on the original data to generate a plurality of first data packets, one of which is associated with a timer, and the plurality of first data packets include system packets and redundant packets, or , the multiple first data packets include original data packets and redundant packets; the discarding module 22 is configured to discard the first data packet if the timer associated with the first data packet i in the multiple first data packets expires i.
  • the above-mentioned original data includes one or more PDCP SDUs, one first data packet corresponds to one PDCP PDU, and one PDCP PDU includes a first data packet and a PDCP header.
  • the discarding module 22 is further configured to discard the PDCP PDU corresponding to the first data packet i.
  • the discarding module 22 is further configured to discard the PDCP SDU corresponding to the first data packet i, wherein one first data packet corresponds to one or more PDCP SDUs.
  • the above original data includes one or more PDCP PDUs.
  • the communication device above further includes a transceiver module 23 .
  • the transceiver module 23 is configured to send indication information to the distributed unit, where the indication information is used to instruct the distributed unit to discard the first data packet i.
  • the indication information includes the identifier of the first data packet i; or includes the identifier of the encoding coefficient factor corresponding to the first data packet i.
  • the communication device above is a distributed unit or a chip for a distributed unit.
  • the communication device above is a terminal device or a chip used for a terminal device.
  • the communication device above includes a PDCP layer, an NC layer, and an RLC layer, and the NC layer is located between the PDCP layer and the RLC layer.
  • the communication device above also includes an indication module 24 .
  • the instruction module 24 is configured to instruct the RLC layer to discard the encoded packet after transmitting the first data packet i to the RLC layer; the discarding module 22 is also configured to discard the first data received from the NC layer bag i.
  • the communication device above includes a PDCP layer.
  • the communication device above also includes a closing module 25 .
  • the closing module 25 is used to close the association function of the PDCP SDU and the discard timer in the PDCP layer.
  • At least two of the encoding module 21 , the discarding module 22 , the indicating module 24 , and the closing module 25 can be integrated into one module, such as a processing module.
  • the communication device can correspondingly execute the aforementioned second embodiment, and the above-mentioned operations or functions of each unit in the communication device are to realize the corresponding operations of the communication device in the aforementioned second embodiment, and its technical effects can be found in the aforementioned second embodiment For the sake of brevity, the technical effects will not be repeated here.
  • FIG. 20 is a schematic structural diagram of a transmitting PDCP entity provided by an embodiment of the present application.
  • the sending PDCP entity may be a chip or a circuit used for the terminal device or set in the terminal device.
  • the sending PDCP entity may also be a chip or a circuit used in the network device or set in the network device.
  • the sending PDCP entity includes: a discarding module 31 and an encoding module 32 .
  • the discarding module 31 is used to discard the PDCP SDU if the timer associated with the PDCP SDU expires, wherein one PDCP SDU is associated with a timer; the encoding module 32 is used to perform network encoding on one or more PDCP SDUs
  • the processing of the function generates a plurality of first data packets, the plurality of first data packets include a system packet and a redundant packet, or the plurality of first data packets include an original data packet and a redundant packet, and one of the first data packets
  • a PDCP PDU includes a first data packet and a PDCP header; the discarding module 31 is also used to expire K timers in N timers associated with N PDCP SDUs corresponding to a PDCP PDU, The PDCP PDU is discarded.
  • K is a positive integer less than or equal to N, and K is greater than a preset threshold.
  • the N PDCP SDUs corresponding to a PDCP PDU include: the first data packet included in the PDCP PDU is a system packet or the original data packet, and the data of the first data packet included in the PDCP PDU comes from the N PDCP SDUs Each PDCP SDU; or the first data packet included in the one PDCP PDU is a redundant packet, then the original data packet that satisfies the network coding relationship with the first data packet included in the one PDCP PDU comes from each of the N PDCP SDUs PDCP SDUs.
  • the foregoing discarding module 31 is further configured to discard all or part of the plurality of first data packets corresponding to the one or more PDCP SDUs.
  • the sending PDCP entity in this design can correspondingly execute the aforementioned third embodiment, and the above-mentioned operations or functions of each unit in the sending PDCP entity are to realize the corresponding operations of the sending PDCP entity in the aforementioned third embodiment, and its technical effect Referring to the technical effects in the foregoing third embodiment, for the sake of brevity, details are not repeated here.
  • the encoding module 32 is configured to perform network encoding function processing on one or more PDCP SDUs to generate multiple first data packets, where the multiple first data packets include system packets and redundant packets, or, The plurality of first data packets include original data packets and redundant packets, the one or more PDCP SDUs correspond to the plurality of first data packets, one of the first data packets corresponds to one PDCP PDU, and one PDCP PDU includes a first Data packets and PDCP headers, one PDCP SDU corresponds to multiple PDCP PDUs, and one PDCP SDU in the one or more PDCP SDUs is associated with a timer; the discarding module 31 is used for if the first in the one or more PDCP SDUs The timer associated with the PDCP SDU expires, and at least one of the following is discarded: the first PDCP SDU, and multiple PDCP PDUs corresponding to the first PDCP SDU.
  • the discarding module 31 is further configured to discard all or part of the multiple first data packets corresponding to the first PDCP SDU.
  • the transmitting PDCP entity in this design can correspondingly execute the foregoing fourth embodiment, and the above-mentioned operations or functions of each unit in the transmitting PDCP entity are respectively in order to realize the corresponding operations of the transmitting PDCP entity in the foregoing fourth embodiment, and its technical For the effects, refer to the technical effects in the foregoing fourth embodiment, and for the sake of brevity, details are not repeated here.
  • the discarding module 31 and the encoding module 32 in the above two designs may be integrated into one module, such as a processing module.
  • FIG. 21 is a schematic structural diagram of a communication device 1000 provided by an embodiment of the present application.
  • the communication device 1000 provided in the embodiment of the present application may be used to implement the method described in the above method embodiment, and reference may be made to the description in the above method embodiment.
  • the communication device 1000 may be any one of the aforementioned communication device and the aforementioned sending PDCP entity.
  • the communication device 1000 includes one or more processors 1001 .
  • the processor 1001 may be a general purpose processor or a special purpose processor or the like. For example, it may be a baseband processor or a central processing unit.
  • the baseband processor can be used to process communication protocols and communication data
  • the central processor can be used to control devices (such as UE, base station or chip, etc.), execute software programs, and process data of software programs.
  • the device may include a transceiver unit for inputting (receiving) and outputting (sending) signals.
  • the device may be a chip, and the transceiver unit may be an input and/or output circuit of the chip, or a communication interface.
  • the chip can be used in terminal equipment (such as UE) or access network equipment (such as base station).
  • the apparatus may be a terminal device (such as a UE) or an access network device (such as a base station), and the transceiving unit may be a transceiver, a radio frequency chip, and the like.
  • the communication device 1000 includes one or more processors 1001, and the one or more processors 1001 can implement the method of the communication device in the foregoing embodiment 1 or 2, or realize the method of sending a PDCP entity in the foregoing embodiment 3 or 4.
  • processor 1001 may also implement other functions in addition to implementing the method in any of the preceding embodiments.
  • the processor 1001 may also include an instruction 1003, and the instruction may be executed on the processor, so that the communication device 1000 executes the method described in any one of the foregoing method embodiments.
  • the communication device 1000 may also include a circuit, and the circuit may realize the function of the communication device in the foregoing embodiment 1 or 2, or realize the function of the sending PDCP entity in the foregoing embodiment 3 or 4.
  • the communication device 1000 may include one or more memories 1002, on which are stored instructions 1004, the instructions can be executed on the processor, so that the communication device 1000 executes any of the above-mentioned Methods described in the Methods Examples.
  • data may also be stored in the memory.
  • Instructions and/or data may also be stored in the optional processor.
  • the one or more memories 1002 may store the encoding packets described in the above embodiments, or other information involved in the above embodiments.
  • the processor and memory can be set separately or integrated together.
  • the communication device 1000 may further include a transceiver unit 1005 and an antenna 1006, or, include a communication interface.
  • the transceiver unit 1005 may be called a transceiver, a transceiver circuit, or a transceiver, etc., and is used to realize the transceiver function of the device through the antenna 1006 .
  • the communication interface (not shown in the figure) may be used for communication between the core network device and the access network device, or between the access network device and the access network device.
  • the communication interface may be an interface for wired communication, such as an interface for optical fiber communication.
  • the processor 1001 may be referred to as a processing unit, and controls an apparatus (such as a communication device).
  • the processor in the embodiment of the present application may be a central processing unit (central processing unit, CPU), and the processor may also be other general-purpose processors, digital signal processors (digital signal processor, DSP), dedicated integrated Circuit (application specific integrated circuit, ASIC), off-the-shelf programmable gate array (field programmable gate array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • a general-purpose processor may be a microprocessor, or the processor may be any conventional processor, or the like.
  • the memory in the embodiments of the present application may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memories.
  • the non-volatile memory can be read-only memory (read-only memory, ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), electrically programmable Erases programmable read-only memory (electrically EPROM, EEPROM) or flash memory.
  • Volatile memory can be random access memory (RAM), which acts as external cache memory.
  • RAM random access memory
  • static random access memory static random access memory
  • DRAM dynamic random access memory
  • DRAM synchronous dynamic random access memory Access memory
  • SDRAM synchronous dynamic random access memory
  • double data rate synchronous dynamic random access memory double data rate SDRAM, DDR SDRAM
  • enhanced synchronous dynamic random access memory enhanced SDRAM, ESDRAM
  • serial link DRAM SLDRAM
  • direct memory bus random access memory direct rambus RAM, DR RAM
  • the above-mentioned embodiments may be implemented in whole or in part by software, hardware (such as circuits), firmware, or other arbitrary combinations.
  • the above-described embodiments may be implemented in whole or in part in the form of computer program products.
  • the computer program product comprises one or more computer instructions or computer programs. When the computer instruction or computer program is loaded or executed on the computer, the processes or functions according to the embodiments of the present application will be generated in whole or in part.
  • the computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be transmitted from a website, computer, server or data center Transmission to another website site, computer, server or data center through wired, such as optical fiber, or wireless, such as infrared, wireless, microwave, etc.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer, or a data storage device such as a server or a data center that includes one or more sets of available media.
  • the available media may be magnetic media (eg, floppy disk, hard disk, magnetic tape), optical media (eg, DVD), or semiconductor media.
  • the semiconductor medium may be a solid state drive.
  • the embodiment of the present application also provides a computer program product, the computer program product includes computer program code, when the computer program code is run on the computer, the computer is made to execute the method steps of the communication device described in the first or second embodiment ; or when the computer program code runs on the computer, the computer is made to execute the steps of the method for sending the PDCP entity described in Embodiment 3 or 4 above.
  • the embodiment of the present application also provides a computer-readable storage medium, where program instructions are stored on the computer-readable storage medium, and when it runs on a computer, the computer executes the communication device described in the first or second embodiment. Method steps; or when the computer program code runs on the computer, the computer is made to execute the method steps for sending the PDCP entity described in Embodiment 3 or 4 above.
  • the embodiment of the present application also provides a device, and the device may be a chip.
  • the chip includes a processor.
  • the processor is configured to read and execute the computer program stored in the memory, so as to execute the method in any possible implementation manner of any of the foregoing embodiments.
  • the chip further includes a memory, and the memory is connected to the processor through a circuit or wires.
  • the chip further includes a communication interface, and the processor is connected to the communication interface.
  • the communication interface is used to receive data and/or signals to be processed, and the processor obtains the data and/or signals from the communication interface, processes the data and/or signals, and outputs processing results through the communication interface.
  • the communication interface may be an input-output interface.
  • processor and memory may be physically independent units, or the memory may also be integrated with the processor.
  • the processes can be completed by computer programs to instruct related hardware.
  • the programs can be stored in computer-readable storage media.
  • When the programs are executed may include the processes of the foregoing method embodiments.
  • the aforementioned storage medium includes: ROM or random access memory RAM, magnetic disk or optical disk, and other various media that can store program codes.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及移动通信领域,可应用于LTE或NR等协议框架下,尤其涉及一种网络编码场景下的超时丢包方法、装置及可读存储介质,该方法包括:取消现有一个PDCP SDU关联一个定时器的机制,而为一组待编码的PDCP SDU/PDU关联一个定时器;当这个定时器超时后,丢弃这一组PDCP SDU/PDU,以及由这一组PDCP SDU/PDU进行网络编码后生成的系统包和冗余包,或者原数据包和冗余包。这样可以在接入层引入网络编码的情况下,丢弃已经QoS失效的数据包,减少QoS失效的数据包在空口上传输造成的资源浪费,提升空口传输的效率。本申请可以应用于扩展现实XR业务,或者,其他对时延有要求的业务。

Description

网络编码场景下的超时丢包方法、装置及可读存储介质
本申请要求于2021年07月30日提交中国专利局、申请号为202110874205.2、申请名称为“网络编码场景下的超时丢包方法、装置及可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,尤其涉及一种网络编码场景下的超时丢包方法、装置及可读存储介质。
背景技术
现有长期演进(long term evolution,LTE)或新一代无线接入技术(new radio access technology,NR/5G)系统中,业务的可靠性主要通过两种机制来保证:混合自动重传请求(hybrid automatic repeat request,HARQ)机制和自动重传请求(automatic repeat request,ARQ)机制。但这两种重传机制都是基于反馈的重传机制,通常时延比较大,包括:空口传输时延、接收端的数据处理时延、应答(acknowledgment,ACK)/否定应答(negative-acknowledgment,NACK)信息的反馈时延等,从而导致这两种重传机制的系统频谱效率低。
因此,为了解决时延大和系统频谱效率低的问题,LTE或NR协议考虑在接入层(比如,分组数据汇聚协议(packet data convergence protocol,PDCP)层内,或,PDCP层和无线链路控制(radio link control,RLC)层之间新定义的协议层)引入网络编码(network coding,NC)技术,采用网络编码技术对数据包进行网络编码操作,通过传输经过网络编码操作得到的编码包来兼顾时延和频谱效率性能。
然而,由于现有NR PDCP层为了保障服务质量(quality of service,QoS)设置了基于discardTimer(丢弃定时器)的超时丢包机制,所以在接入层(如PDCP层,或PDCP层与RLC层之间新定义的协议层)引入网络编码后,如何进行超时丢包处理成为了亟待解决的问题。
发明内容
本申请实施例提供一种网络编码场景下的超时丢包方法、装置及可读存储介质,可以在LTE或NR或未来网络的接入层引入网络编码的场景下,进行超时丢包处理,比如丢弃已经QoS失效(即discardTimer超时)的数据包,从而减少QoS失效的数据包传输或存储造成的资源浪费,提升空口传输或存储的效率。
下面从不同的方面介绍本申请,应理解的是,下面的不同方面的实施方式和有益效果可以互相参考。
第一方面,本申请提供一种网络编码场景下的超时丢包方法,该方法包括:通信装置(从上层)获取(比如,接收)一组待编码的原始数据,并为该组原始数据关联一个定时器;若与该组原始数据关联的定时器超时,说明这一组原始数据已经QoS失效,则通信装置丢弃以下中的至少一项:该组原始数据,该组原始数据进行网络编码功能的处理生成的多个第一数据包。其中,该组原始数据用于一起/共同进行网络编码功能的处理生成多个第一数据包。因为网络编码功能的处理可能生成系统包和冗余包,也可能生成原数据包和冗余包,所以这多个第一数据包包括系统包和冗余包,或者,这多个第一数据包包括原数据包和冗余包。应理 解,具体网络编码功能的介绍以及原数据包、系统包、冗余包的含义参考下文具体实施例方式部分的描述,此处篇幅限制不展开说明。
应理解,网络中可能存在某些业务具有较高的时延要求,如果这些业务的数据包传输到PDCP层已超过时延要求或即将超过时延要求,也就没有传到下一层处理的必要,所以在PDCP层就可以删除收到的这些数据包,从而节省空口资源。
可选的,上述通信装置是终端设备,如UE;或上述通信装置是网络设备,如基站(gNB)。其中,基站可以采用集中式单元(central unit,CU)-分布式单元(distributed unit,DU)分离架构,也可以采用非CU-DU分离架构。
可见,本方案通过直接为一组待编码的原始数据关联一个定时器,当这个定时器超时后,就丢弃这一组原始数据和这一组原始数据进行网络编码功能的处理后生成的系统包和冗余包,或者原数据包和冗余包,从而可以在LTE或NR的接入层(如PDCP层内,或PDCP层与RLC层之间新定义的协议层)引入网络编码场景下,丢弃已经QoS失效的数据包,减少QoS失效的数据包在空口上传输造成的资源浪费,提升空口传输的效率。
第二方面,本申请提供一种通信装置,该通信装置可以是终端设备或终端设备中的芯片;或者,该通信装置还可以是网络设备或网络设备中的芯片。该通信装置包括:获取模块,用于获取一组原始数据,该组原始数据关联一个定时器;丢弃模块,用于若与该组原始数据关联的定时器超时,丢弃以下中的至少一项:该组原始数据,该组原始数据进行网络编码功能的处理生成的多个第一数据包。其中,该组原始数据用于一起/共同进行网络编码功能的处理生成多个第一数据包。这多个第一数据包包括系统包和冗余包,或者,这多个第一数据包包括原数据包和冗余包。
上述任一方面的一种实现方式中,上述网络编码功能包括分割,级联,加填充(padding)等处理中的一项或多项,可选的该网络编码功能还包括编码处理。其中,分割处理用于将一个服务数据单元(service data unit,SDU)/协议数据单元(protocol data unit,PDU)分割成多个数据段,级联处理用于将一个SDU/PDU的全部或部分与另一个SDU/PDU的全部或部分级联成一个数据段。加填充处理用于对小于一定大小的数据段或SDU/PDU进行填充,使其等于该一定大小。每个数据段添加包头后获得等大小的原数据包,对这些等大小的原数据包进行编码,以期得到系统包和冗余包,或者,冗余包。
可见,本方案引入网络编码,将不等大小的SDU/PDU进行分割,级联,加填充(padding)等处理中的一项或多项,以期得到等大小的原数据包,再对这些等大小的原数据包进行编码,得到系统包和冗余包,或者,冗余包,可以使网络编码技术在不依赖于SDU/PDU大小的场景下获得应用。
上述任一方面的一种实现方式中,上述通信装置包括PDCP层。上述方法还包括:通信装置关闭通信装置的PDCP层中PDCP SDU与丢弃定时器的关联功能。可见,本方案通过为一组原始数据关联一个定时器,并关闭现有一个PDCP SDU关联一个定时器的机制,可以减少通信装置的复杂度。
上述任一方面的一种实现方式中,上述原始数据可以是从上层接收到的PDCP SDU或PDCP PDU,或者上述原始数据可以是PDCP SDU/PDU经过分割,级联,加填充(padding)等处理中的一项或多项后,再添加包头得到原数据包。也就是说,本方案既可以是为从上层接收到的一组PDCP SDU/PDU关联一个定时器,也可以是为一组原数据包关联一个定时器。
上述任一方面的一种实现方式中,上述通信装置包括PDCP层。当网络编码功能位于PDCP层内时,上述原始数据为PDCP SDU。
可选的,上述一组PDCP SDU对应上述多个第一数据包。一个第一数据包对应一个PDCP PDU,具体的,一个第一数据包加PDCP头后得到一个PDCP PDU,换句话说,一个PDCP PDU包括一个第一数据包和PDCP头。若与上述一组原始数据(这里是PDCP SDU)关联的定时器超时,通信装置不仅丢弃以下中至少一项:该组原始数据,该组原始数据进行网络编码功能的处理生成的多个第一数据包,还丢弃这一组PDCP SDU对应的多个PDCP PDU。
其中,一个PDCP PDU对应N个PDCP SDU,一个PDCP PDU包括的第一数据包是系统包或原数据包,则这个PDCP PDU包括的第一数据包的数据来自这N个PDCP SDU中的每个PDCP SDU;或,一个PDCP PDU包括的第一数据包是冗余包,则这个PDCP PDU包括的与第一数据包满足网络编码关系的原数据包来自这N个PDCP SDU中的每个PDCP SDU。应理解,此处描述的PDCP PDU与PDCP SDU的关系适用于本申请提供的网络编码功能位于PDCP层内的任一实现方式,下文不再重复说明。
可见,本方案在PDCP层内引入网络编码功能的场景下,不仅丢弃PDCP SDU和第一数据包,还丢弃相应的PDCP PDU,不仅可以解决在PDCP层内引入网络编码功能后导致的PDCP SDU和PDCP PDU不再一一对应时,如何丢弃已经QoS失效的SDU和PDU的问题;还可以减少已经QoS失效的PDCP PDU传输至下一层的概率,从而节省空口资源。
上述任一方面的一种实现方式中,上述通信装置包括PDCP层、NC层以及RLC层。其中NC层主要用于实现网络编码功能。当NC层位于PDCP层之下或RLC层之上(即高于RLC层)时,上述原始数据为PDCP PDU。
可选的,若与上述一组原始数据(这里是PDCP PDU)关联的定时器超时,通信装置不仅丢弃以下中的至少一项:该组原始数据,该组原始数据进行网络编码功能的处理生成的多个第一数据包,还丢弃这一组PDCP PDU对应的PDCP SDU。其中一个PDCP PDU对应一个PDCP SDU,具体地,一个PDCP SDU加PDCP头得到一个PDCP PDU。
可见,本方案在PDCP层之下或RLC层之上引入网络编码功能后,不仅丢弃PDCP PDU和第一数据包,还丢弃相应的PDCP SDU,可以减少PDCP层利用已经QoS失效的PDCP SDU生成PDCP PDU传输至下层(即NC层),减少无效操作。
可选的,上述通信装置是集中式单元或用于集中式单元的芯片,上述NC层可以位于PDCP层之下。通信装置对一组PDCP PDU进行网络编码功能的处理生成多个第一数据包后,将生成的该多个第一数据包发送给分布式单元。因此,若与上述一组原始数据(这里是PDCP PDU)关联的定时器超时,通信装置向分布式单元发送指示信息,该指示信息用于指示分布式单元丢弃该组原始数据进行网络编码功能的处理生成的多个第一数据包。其中,该指示信息中包括以下任一项:这多个第一数据包各自的标识,比如数据包标识(packet ID);这多个第一数据包的标识所属的范围,比如packet ID范围;这多个第一数据包所属的编码块的标识,比如块标识(block ID);这多个第一数据包各自对应的编码系数因子的标识,比如系数标识(Coeff_ID)。相应地,分布式单元从通信装置接收指示信息,该指示信息用于指示分布式单元丢弃上述一组原始数据进行网络编码操作生成的多个第一数据包。分布式单元根据该指示信息的指示,丢弃该组原始数据进行网络编码操作生成的多个第一数据包。比如,指示信息中包括第一数据包的编号(如packet ID),分布式单元丢弃该编号所标识的第一数据包;指示信息中包括block ID,分布式单元丢弃接收到的第一数据包中block ID字段与该block ID相同的第一数据包,等等。可选的,如果第一数据包是原数据包,原数据包不包括编码系数因子的标识,则指示信息不能通过编码系数因子的标识来实现。
应理解,如果CU将某个第一数据包发送至DU后,CU的存储空间(比如缓存)中就不 存在该第一数据包了,则CU上与生成该第一数据包的一组PDCP PDU关联的定时器超时且该第一数据包已经被发送至DU后,CU无需自己执行丢弃该第一数据包的操作,可以通过指示信息指示DU去丢弃这个第一数据包。反之,如果CU将某个第一数据包发送至DU后,CU的存储空间(比如缓存)中仍然存在这个第一数据包,则该第一数据包被发送至DU后,如果与生成该第一数据包的一组PDCP PDU关联的定时器超时,则CU不仅自己丢弃该第一数据包,还可通过指示信息指示DU也丢弃该第一数据包。
可见,本方案针对NC层位于PDCP层之下的情况,由于PDCP PDU封装在第一数据包内,导致RLC层无法直接看到PDCP PDU,从而无法沿用现有机制来丢弃已经QoS失效的数据包;所以CU通过指示信息来指示DU丢弃已经QoS失效的数据包,从而可以减少QoS失效的数据在空口发送造成的资源浪费,提升空口传输的效率。
可选的,上述通信装置是分布式单元或用于分布式单元的芯片,上述NC层可以位于RLC层之上。此时,CU向通信装置发送的是PDCP PDU。通信装置的NC层对一组PDCP PDU进行网络编码功能的处理生成多个第一数据包后,将生成的该第一数据包发送给下层(即RLC层)。因此,若与上述一组原始数据(这里是PDCP PDU)关联的定时器超时,通信装置的NC层指示RLC层丢弃传输至该RLC层的该第一数据包。这里的指示可以通过层间交互实现。
可见,本方案针对NC层位于RLC层之上的情况,DU从CU接收到一组PDCP PDU,为这一组PDCP PDU关联一个定时器,并对这一组PDCP PDU进行网络编码功能的处理生成多个第一数据包;当定时器超时后,丢弃这一组PDCP PDU以及第一数据包,并且还可以通过层间交互指示RLC层丢弃传输至该RLC层且已经QoS失效的数据包,可以减少QoS失效的数据在空口发送造成的资源浪费,提升空口传输的效率。
可选的,上述通信装置是终端设备或用于终端设备的芯片。上述通信装置包括PDCP层、NC层、以及RLC层,NC层位于PDCP层和RLC层之间。通信装置获取(比如,接收)一组原始数据后,该方法还包括:通信装置的NC层为这一组PDCP PDU关联一个定时器。若该组PDCP PDU关联的定时器超时,通信装置的NC层丢弃以下中的至少一项:该组PDCP PDU,该组PDCP PDU进行网络编码功能的处理生成的多个第一数据包。
可选的,上述通信装置是终端设备或用于终端设备的芯片。上述通信装置包括PDCP层、NC层、以及RLC层,NC层位于PDCP层和RLC层之间。通信装置将上述一组PDCP PDU进行网络编码功能的处理生成的全部或部分第一数据包传输至通信装置的RLC层后,如果与这一组PDCP PDU关联的定时器超时,则通信装置的NC层指示通信装置的RLC层丢弃传输至该RLC层的第一数据包。相应地,通信装置的RLC层丢弃从通信装置的NC层接收到的第一数据包。应理解,如果通信装置的NC层已经将这一组PDCP PDU进行网络编码功能的处理生成的部分第一数据包发送至RLC层,则通信装置的NC层可以指示RLC层删除发送至该RLC层的这部分第一数据包,也就是说未发送至RLC层的第一数据包不需要NC层指示RLC层删除。其中,NC层与RLC层之间的交互可以通过原语来实现。
可见,本方案针对NC层位于PDCP层和RLC层之间的情况,由于PDCP PDU封装在第一数据包内,导致RLC层无法直接看到PDCP PDU,从而无法沿用现有机制来丢弃已经QoS失效的数据包;UE通过层间交互(原语)示RLC层丢弃已经QoS失效的数据包,从而可以减少QoS失效的数据在空口发送造成的资源浪费,提升空口传输的效率。
第三方面,本申请提供一种网络编码场景下的超时丢包方法,该方法包括:通信装置(从上层)获取(比如,接收)原始数据,并对该原始数据进行网络编码功能的处理生成多个第 一数据包,再为生成的每个第一数据包关联一个定时器;若与某个第一数据包(比如这多个第一数据包中的第一数据包i,为便于描述,下文以与第一数据包i关联的定时器超时为例进行说明)关联的定时器超时,则通信装置丢弃该第一数据包。其中,因为网络编码功能的处理可能生成系统包和冗余包,也可能生成原数据包和冗余包,所以这多个第一数据包包括系统包和冗余包,或者,这多个第一数据包包括原数据包和冗余包。应理解,具体网络编码功能的介绍以及原数据包、系统包、冗余包的含义参考下文具体实施例方式部分的描述,此处篇幅限制不展开说明。
可选的,上述通信装置是终端设备,如UE;或上述通信装置是网络设备,如基站(gNB)。其中,基站可以采用CU-DU分离架构,也可以采用非CU-DU分离架构。
可见,本方案通过为每个第一数据包关联一个定时器,当这个定时器超时后,就丢弃这个第一数据包,从而可以在LTE或NR的接入层(如PDCP层内,或PDCP层与RLC层之间新定义的协议层)引入网络编码场景下,丢弃已经QoS失效的数据包,减少QoS失效的数据包在空口上传输造成的资源浪费,提升空口传输的效率。
第四方面,本申请提供一种通信装置,该通信装置可以是终端设备或终端设备中的芯片;或者,该通信装置还可以是网络设备或网络设备中的芯片。该通信装置包括:编码模块,用于对原始数据进行网络编码功能的处理生成多个第一数据包,一个该第一数据包关联一个定时器;丢弃模块,用于若多个第一数据包中的第一数据包i关联的定时器超时,丢弃该第一数据包i。其中,这多个第一数据包包括系统包和冗余包,或者,这多个第一数据包包括原数据包和冗余包。
上述第三或第四方面的一种实现方式中,上述网络编码功能包括分割,级联,加填充(padding)等处理中的一项或多项,可选的该网络编码功能还包括编码处理。其中,分割处理用于将一个SDU/PDU分割成多个数据段,级联处理用于将一个SDU/PDU的全部或部分与另一个SDU/PDU的全部或部分级联成一个数据段。加填充处理用于对小于一定大小的数据段或SDU/PDU进行填充,使其等于该一定大小。每个数据段添加包头后获得等大小的原数据包,对这些等大小的原数据包进行编码,以期得到系统包和冗余包,或者,冗余包。
上述第三或第四方面的一种实现方式中,上述原始数据可以包括一个或多个从上层接收到的PDCP SDU或PDCP PDU,或者,上述原始数据包括PDCP SDU/PDU经过分割,级联,加填充(padding)等处理中的一项或多项后,再添加包头得到多个原数据包。也就是说,本方案中原始数据包括的数据包可以是PDCP SDU/PDU,或者可以是原数据包。
上述第三或第四方面的一种实现方式中,上述通信装置包括PDCP层。上述方法还包括:通信装置关闭通信装置的PDCP层中PDCP SDU与丢弃定时器的关联功能。
上述第三或第四方面的一种实现方式中,上述通信装置包括PDCP层。当网络编码功能位于PDCP层内时,上述原始数据包括一个或多个PDCP SDU。一个第一数据包对应一个PDCP PDU,具体的,一个第一数据包加PDCP头后得到一个PDCP PDU,换句话说,一个PDCP PDU包括一个第一数据包和PDCP头。若与上述第一数据包i关联的定时器超时,通信装置不仅丢弃该第一数据包i,还丢弃该第一数据包i对应的PDCP PDU。
可选的,若与上述第一数据包i关联的定时器超时,通信装置不仅丢弃该第一数据包i和该第一数据包i对应的PDCP PDU,还丢弃该第一数据包i对应的PDCP SDU。其中一个第一数据包对应一个或多个PDCP SDU。
可见,本方案在定时器超时后,不仅丢弃相应的第一数据包,还丢弃该第一数据包对应的PDCP PDU(因为第一数据包已经QoS失效,由该第一数据包加PDCP头得到的PDCP PDU 同样已经QoS失效)和/或PDCP SDU(因为第一数据包已经QoS失效,生成该第一数据包的PDCP SDU也即将/已经QoS失效),可以减少已经QoS失效的PDCP PDU传输至下一层的概率,从而节省空口资源。
上述第三或第四方面的一种实现方式中,上述通信装置包括PDCP层、NC层以及RLC层。其中NC层主要用于实现网络编码功能。当NC层位于PDCP层之下或RLC层之上时,上述原始数据包括一个或多个PDCP PDU。
可选的,上述通信装置是集中式单元或用于集中式单元的芯片,上述NC层可以位于PDCP层之下。通信装置对原始数据进行网络编码功能的处理生成多个第一数据包后,将生成的该多个第一数据包发送给分布式单元。因此,若与该第一数据包i关联的定时器超时,通信装置向分布式单元发送指示信息,该指示信息用于指示分布式单元丢弃该第一数据包i。其中,该指示信息中包括第一数据包i的标识,比如数据包标识(packet ID);或者,该指示信息中包括第一数据包i对应的编码系数因子的标识,比如系数标识(Coeff_ID)。相应地,分布式单元从通信装置接收指示信息,该指示信息用于指示分布式单元丢弃该第一数据包i;分布式单元根据该指示信息的指示,丢弃第一数据包i。可选的,如果第一数据包i是原数据包,原数据包不包括编码系数因子的标识,则指示信息不能通过编码系数因子的标识来实现。
可选的,上述通信装置是分布式单元或用于分布式单元的芯片,上述NC层可以位于RLC层之上。此时,CU向通信装置发送的是PDCP PDU。通信装置的NC层对原始数据进行网络编码功能的处理生成多个第一数据包后,将生成的该多个第一数据包发送给下层(即RLC层)。因此,若与该第一数据包i关联的定时器超时,通信装置的NC层指示RLC层丢弃传输至该RLC层的该第一数据包i。这里的指示可以通过层间交互实现。
可选的,上述通信装置是终端设备或用于终端设备的芯片。上述通信装置包括PDCP层、NC层、以及RLC层,NC层位于PDCP层和RLC层之间。通信装置将上述第一数据包i传输至通信装置的RLC层后,如果与该第一数据包i关联的定时器超时,则通信装置的NC层指示通信装置的RLC层丢弃传输至该RLC层的第一数据包i。相应地,通信装置的RLC层丢弃从通信装置的NC层接收到的该第一数据包i。
第五方面,本申请提供一种网络编码场景下的超时丢包方法,该方法包括:发送PDCP实体从上层接收一个PDCP SDU,并为该PDCP SDU关联一个定时器;若该PDCP SDU关联的定时器超时,发送PDCP实体丢弃该PDCP SDU;发送PDCP实体对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,并对每个第一数据包添加PDCP头得到PDCP PDU(换句话说,一个PDCP头包括一个第一数据包和PDCP头);若该一个PDCP PDU对应的N个PDCP SDU关联的N个定时器中的K个定时器超时,发送PDCP实体丢弃该PDCP PDU。其中,一个第一数据包对应一个PDCP PDU。这里的网络编码功能位于PDCP层内。因为网络编码功能的处理可能生成系统包和冗余包,也可能生成原数据包和冗余包,所以这多个第一数据包包括系统包和冗余包,或者,这多个第一数据包包括原数据包和冗余包。应理解,具体网络编码功能的介绍以及原数据包、系统包、冗余包的含义参考下文具体实施例方式部分的描述,此处篇幅限制不展开说明。K为小于或等于N的正整数,且K大于预设阈值(比如N/2)。
可选的,一个PDCP PDU对应的N个PDCP SDU包括:一个PDCP PDU包括的第一数据包是系统包或原数据包,则这个PDCP PDU包括的第一数据包的数据来自这N个PDCP SDU中的每个PDCP SDU;或,一个PDCP PDU包括的第一数据包是冗余包,则这个PDCP  PDU包括的与第一数据包满足网络编码关系的原数据包来自这N个PDCP SDU中的每个PDCP SDU。
换句话说,一旦一个PDCP SDU关联的定时器超时,则发送PDCP实体将丢弃该PDCP SDU,而PDCP PDU只有当其包含的所有或部分PDCP SDU关联的定时器都超时才被丢弃。
可见,本方案通过在网络编码场景下复用NR PDCP层的超时丢包机制并在此基础上修改丢弃PDCP PDU的原则,即复用一个PDCP SDU关联一个定时器,当该定时器超时,则丢弃该PDCP SDU,而PDCP PDU只有当其包含的所有或部分PDCP SDU关联的定时器都超时才能被丢弃,不仅可以减少对NR PDCP层的超时丢包机制的改动,还可以在网络编码场景下丢弃已经QoS失效的数据包,减少QoS失效的数据包在空口上传输造成的资源浪费,提升空口传输的效率,且可以减少误丢包的情况。
第六方面,本申请提供一种发送PDCP实体,该发送PDCP实体可以是终端设备或终端设备中的芯片;或者,该发送PDCP实体还可以是网络设备或网络设备中的芯片。该发送PDCP实体包括:丢弃模块,用于若PDCP SDU关联的定时器超时,丢弃该PDCP SDU,其中一个PDCP SDU关联一个定时器;编码模块,用于对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,一个该第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头;该丢弃模块,还用于若该一个PDCP PDU对应的N个PDCP SDU关联的N个定时器中的K个定时器超时,丢弃该PDCP PDU。这里的网络编码功能位于PDCP层内。其中,这多个第一数据包包括系统包和冗余包,或者,这多个第一数据包包括原数据包和冗余包。K为小于或等于N的正整数,且K大于预设阈值(比如N/2)。
可选的,一个PDCP PDU对应的N个PDCP SDU包括:一个PDCP PDU包括的第一数据包是系统包或原数据包,则这个PDCP PDU包括的第一数据包的数据来自这N个PDCP SDU中的每个PDCP SDU;或,一个PDCP PDU包括的第一数据包是冗余包,则这个PDCP PDU包括的与第一数据包满足网络编码关系的原数据包来自这N个PDCP SDU中的每个PDCP SDU。
上述第五或第六方面的一种实现方式中,上述网络编码功能包括分割,级联,加填充(padding)等处理中的一项或多项,可选的该网络编码功能还包括编码处理。其中,分割处理用于将一个PDCP SDU分割成多个数据段,级联处理用于将一个PDCP SDU的全部或部分与另一个PDCP SDU的全部或部分级联成一个数据段。加填充处理用于对小于一定大小的数据段或PDCP SDU进行填充,使其等于该一定大小。每个数据段添加包头后获得等大小的原数据包,对这些等大小的原数据包进行编码,以期得到系统包和冗余包,或者,冗余包。
上述第五或第六方面的一种实现方式中,发送PDCP实体对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包之后,该方法还包括:若该一个PDCP SDU关联的定时器超时,发送PDCP实体丢弃该PDCP SDU对应的多个第一数据包中的全部或部分。这里可以是丢弃系统包和冗余包中的一种,或原数据包和冗余包中的一种;也可以是丢弃全部的第一数据包,即:既丢弃系统包也丢弃冗余包,或者既丢弃原数据包也丢弃冗余包。
可见,本方案在PDCP SDU关联的定时器超时后,不仅丢弃PDCP SDU,还丢弃相应的第一数据包,可以省略对已经QoS失效的第一数据包加PDCP头生成PDCP PDU的操作,从而减少将已经QoS失效的PDCP PDU传输至下一层的概率。
第七方面,本申请提供一种网络编码场景下的超时丢包方法,该方法包括:发送PDCP实体从上层接收一个PDCP SDU,并为该PDCP SDU关联一个定时器;发送PDCP实体对一 个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,这一个或多个PDCP SDU对应该多个第一数据包,一个该第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头,一个PDCP SDU对应多个PDCP PDU;若某个PDCP SDU(比如,该一个或多个PDCP SDU中的第一PDCP SDU,为便于描述,下文以第一PDCP SDU关联的定时器为例进行说明)关联的定时器超时,发送PDCP实体丢弃以下中的至少一项:第一PDCP SDU,第一PDCP SDU对应的多个PDCP PDU。这里的网络编码功能位于PDCP层内。其中,因为网络编码功能的处理可能生成系统包和冗余包,也可能生成原数据包和冗余包,所以这多个第一数据包包括系统包和冗余包,或者,这多个第一数据包包括原数据包和冗余包。应理解,具体网络编码功能的介绍以及原数据包、系统包、冗余包的含义参考下文具体实施例方式部分的描述,此处篇幅限制不展开说明。
可见,本方案通过在网络编码场景下复用NR PDCP层的超时丢包机制,当一个PDCP SDU关联的一个定时器超时后,丢弃该PDCP SDU以及该PDCP SDU对应的所有PDCP PDU,不仅可以减少对NR PDCP层的超时丢包机制的改动,还可以在网络编码场景下丢弃已经QoS失效的数据包,减少QoS失效的数据包在空口上传输造成的资源浪费以及减少接收端恢复出无效数据包的概率。
第八方面,本申请提供一种发送PDCP实体,该发送PDCP实体可以是终端设备或终端设备中的芯片;该发送PDCP实体还可以是网络设备或网络设备中的芯片。该发送PDCP实体包括:编码模块,用于对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,该一个或多个PDCP SDU对应该多个第一数据包,一个该第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头,一个PDCP SDU对应多个PDCP PDU,该一个或多个PDCP SDU中的一个PDCP SDU关联一个定时器;丢弃模块,用于若该一个或多个PDCP SDU中的第一PDCP SDU关联的定时器超时,丢弃以下中的至少一项:该第一PDCP SDU,该第一PDCP SDU对应的多个PDCP PDU。这里的网络编码功能位于PDCP层内。其中,这多个第一数据包包括系统包和冗余包,或者,这多个第一数据包包括原数据包和冗余包。
可选的,上述网络编码功能包括分割,级联,加填充(padding)等处理中的一项或多项,可选的该网络编码功能还包括编码处理。其中,分割处理用于将一个PDCP SDU分割成多个数据段,级联处理用于将一个PDCP SDU的全部或部分与另一个PDCP SDU的全部或部分级联成一个数据段。加填充处理用于对小于一定大小的数据段或PDCP SDU进行填充,使其等于该一定大小。每个数据段添加包头后获得等大小的原数据包,对这些等大小的原数据包进行编码,以期得到系统包和冗余包,或者,得到冗余包。
上述第七或第八方面的一种实现方式中,上述方法还包括:发送PDCP实体丢弃该PDCP SDU对应的多个第一数据包中的全部或部分。这里可以是丢弃系统包和冗余包中的一种,或原数据包和冗余包中的一种,也可以是丢弃全部的第一数据包,即:既丢弃系统包也丢弃冗余包,或者既丢弃原数据包也丢弃冗余包。
可见,本方案在PDCP SDU关联的定时器超时后,不仅丢弃PDCP SDU和PDCP PDU,还丢弃相应的第一数据包,可以省略对已经QoS失效的第一数据包加PDCP头生成PDCP PDU的操作,从而减少将已经QoS失效的PDCP PDU传输至下一层的概率。
第九方面,本申请提供一种通信装置,该通信装置可以包括处理器和存储器,可选的包括收发器。其中,该存储器用于存储计算机程序,该收发器用于收发各种数据包或指示信息, 该计算机程序包括程序指令,当该处理器运行该程序指令时,使得该通信装置执行上述第一方面、或上述第三方面、或上述第五方面、或上述第七方面、或其中任一方面的任意一种可能的实现方式描述的超时丢包方法。其中,收发器可以为通信装置中的射频模块,或,射频模块和天线的组合,或,芯片或电路的输入输出接口。
第十方面,本申请提供一种可读存储介质,该可读存储介质上存储有程序指令,当其在计算机上运行时,使得计算机执行上述第一方面、或上述第三方面、或上述第五方面、或上述第七方面、或其中任一方面的任意一种可能的实现方式描述的超时丢包方法。
第十一方面,本申请提供一种包含程序指令的程序产品,当其运行时,使得上述第一方面、或上述第三方面、或上述第五方面、或上述第七方面、或其中任一方面的任意一种可能的实现方式描述的超时丢包方法被执行。
第十二方面,本申请提供一种装置,该装置可以以芯片的形式实现,也可以为设备的形式,该装置包括处理器。该处理器用于读取并执行存储器中存储的程序,以执行上述第一方面、第三方面、第五方面、第七方面中的一项或多项,或,其中任一方面的任意可能的实现方式中的一项或多项提供的超时丢包方法。可选的,该装置还包括存储器,该存储器与该处理器通过电路连接。进一步可选的,该装置还包括通信接口,该处理器与该通信接口连接。该通信接口用于接收待处理的数据包和/或信息,该处理器从该通信接口获取该数据包和/或信息,并对该数据包和/或信息进行处理,并通过该通信接口输出处理结果。该通信接口可以是输入输出接口。
可选的,上述的处理器与存储器可以是物理上相互独立的单元,或者,存储器也可以和处理器集成在一起。
实施本申请实施例,可以在LTE或NR的接入层引入网络编码的场景下,进行超时丢包处理,比如,丢弃已经QoS失效的数据包,减少QoS失效的数据包在空口上传输或者存储造成的资源浪费。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
图1是本申请实施例提供的通信系统的架构示意图;
图2是NR系统中gNB-CU和gNB-DU分离的网络架构示意图;
图3a是gNB采用CU-DU分离架构下的控制面协议栈示意图;
图3b是gNB采用CU-DU分离架构下的用户面协议栈示意图;
图4是本申请实施例提供的UE和基站的简化结构示意图;
图5a是发送端的一种可能网络编码流程示意图;
图5b是发送端的另一种可能网络编码流程示意图;
图6是MBMS引入网络编码的架构示意图;
图7是NR PDCP层的超时丢包机制示意图;
图8是PDCP层引入NC后PDCP SDU与PDCP PDU之间的关系示意图;
图9a是本申请实施例提供的网络编码功能位于PDCP层内的协议层架构示意图;
图9b是本申请实施例提供的NC层在PDCP层之下的协议层架构示意图;
图9c是本申请实施例提供的NC层在RLC层之上的协议层架构示意图;
图10是本申请实施例提供的网络编码场景下的超时丢包方法的第一种示意流程图;
图11a是本申请实施例提供的UE侧超时丢包示意图一;
图11b是本申请实施例提供的gNB侧NC层位于PDCP层之下的超时丢包示意图一;
图11c是本申请实施例提供的gNB侧NC层位于RLC层之上的超时丢包示意图一;
图12是本申请实施例提供的网络编码场景下的超时丢包方法的第二种示意流程图;
图13a是本申请实施例提供的UE侧超时丢包示意图二;
图13b是本申请实施例提供的gNB侧NC层位于PDCP层之下的超时丢包示意图二;
图13c是本申请实施例提供的gNB侧NC层位于RLC层之上的超时丢包示意图二;
图14是本申请实施例提供的网络编码场景下的超时丢包方法的第三种示意流程图;
图15是本申请实施例提供的网络编码场景下的超时丢包方法的第四种示意流程图;
图16是本申请实施例提供的gNB侧NC层位于PDCP层之下的超时丢包示意图三;
图17是本申请实施例提供的gNB侧NC层位于RLC层之上的超时丢包示意图三;
图18是本申请实施例提供的通信装置的一结构示意图;
图19是本申请实施例提供的通信装置的另一结构示意图;
图20是本申请实施例提供的发送PDCP实体的结构示意图;
图21是本申请实施例提供的通信装置1000的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c;a和b;a和c;b和c;或a和b和c。其中a,b,c可以是单个,也可以是多个。
应理解,在本申请中,“当…时”、“若”以及“如果”均指在某种客观情况下装置会做出相应的处理,并非是限定时间,且也不要求装置实现时一定要有判断的动作,也不意味着存在其它限定。
本申请中的“同时”可以理解为在相同的时间点,也可以理解为在一段时间段内,还可以理解为在同一个周期内,具体可以结合上下文进行理解。
本申请中对于使用单数表示的元素旨在用于表示“一个或多个”,而并非表示“一个且仅一个”,除非有特别说明。
另外,本文中术语“系统”和“网络”可互换替换使用。
应理解,在本申请各实施例中,“与A对应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
本申请实施例的技术方案可以应用于各种通信系统中,例如:LTE系统,全球互联微波接入(worldwide interoperability for microwave access,WiMAX)通信系统,第五代(5th Generation,5G)系统,如新一代无线接入技术(new radio access technology,NR),多种系统融合的网络,物联网系统,车联网系统,以及未来的通信系统,如6G系统等。
应理解,本申请实施例描述的网络架构是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请实施例中部分场景以无线通信网络中NR网络的场景为例进行说明,应理解,本申请实施例中的方案还可以应用于其他无线通信网络中,相应的名称也可以用其他无线通信网络中的对应功能的名称进行替代。
参见图1,图1是本申请实施例提供的通信系统的架构示意图。如图1所示,该通信系统包括一个或多个网络设备(如图1中的基站)和一个或多个终端设备(如图1中的UE)。其中,终端设备与网络设备之间可以进行无线通信,一个终端设备可以与一个网络设备或同时与多个网络设备进行通信,一个网络设备也可以与一个终端设备或同时与多个终端设备进行通信。终端设备可配置一个或多个天线,用于收发数据/信息。同理,网络设备也可配置一个或多个天线,用于收发数据/信息。应理解,网络设备和终端设备还可包括与数据/信息发送和接收相关的多个部件(例如,处理器、调制器、复用器、解调器或解复用器等)。还应理解,图1仅是示意图,该通信系统中还可以包括其它设备,如还可以包括核心网设备、无线中继设备和/或无线回传设备等,在图1中未画出。
可选的,本申请实施例中的终端设备还可以称为终端、用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等,其可以是用户侧的一种用于接收或发射信号的实体,如手机;其可以部署在陆地上,包括室内或室外、手持或车载;也可以部署在水面上(如轮船等);还可以部署在空中(例如飞机、气球和卫星上等)。UE包括具有无线通信功能的手持式设备、车载设备、可穿戴设备或计算设备。示例性地,UE可以是手机(mobile phone)、平板电脑或带无线收发功能的电脑。终端设备还可以是虚拟现实(virtual reality,VR)终端设备、增强现实(augmented reality,AR)终端设备、工业控制中的无线终端、无人驾驶中的无线终端、远程医疗中的无线终端、智能电网中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。本申请实施例中,用于实现终端的功能的装置可以是终端;也可以是能够支持终端实现该功能的装置,例如芯片系统、或通信模块、或调制解调器等,该装置可以被安装在终端中。本申请实施例中,芯片系统可以由芯片构成,也可以包括芯片和其他分立器件。本申请实施例提供的技术方案中,以用于实现终端的功能的装置是终端,以终端是UE为例,描述本申请实施例提供的技术方案。本申请的实施例对终端设备所采用的具体技术和具体设备形态不做限定。
可选的,UE也可以用于充当基站。例如,UE可以充当调度实体,其在车辆外联(vehicle-to-everything,V2X)、设备到设备(device-to-device,D2D)或点对点(peer to peer,P2P)等中的UE之间提供侧行链路信号。
可选的,UE也可以用于充当中继节点。例如:UE可以充当中继设备(relay),或者接入回传一体化(integrated access and backhaul,IAB)节点,用于为终端设备提供无线回传服务。
可选的,本申请实施例中的网络设备包括接入网设备,例如基站(base station,BS),BS可以是网络侧的一种用于发射或接收信号的实体,也是一种部署在无线接入网中能够和终端进行无线通信的设备。基站(BS)可以是固定的,也可以是移动的。其中,基站可能有多种形式,比如宏基站、微基站、中继站和接入点等。示例性地,本申请实施例涉及到的基站可以是5G中的基站或LTE中演进的基站(Evolved Node B,eNB)。其中,5G中的基站还可以称为发送接收点(transmission reception point,TRP)或5G基站(Next-Generation Node B, gNB)。基站还可以与如下名称进行替换,比如:无线访问点、节点B(NodeB)、发射点(transmitting point,TP)、主站MeNB、辅站SeNB、多制式无线(MSR)节点、家庭基站、网络控制器、接入节点、无线节点、传输节点、收发节点、基带单元(baseband unit,BBU)、射频拉远单元(remote radio unit,RRU)、有源天线单元(AAU)、射频头(RRH)、集中式单元(centralized unit,CU)、分布式单元(distributed unit,DU)、定位节点、IAB宿主(IAB donor)等。本申请实施例中,用于实现网络设备的功能的装置可以是网络设备;也可以是能够支持网络设备实现该功能的装置,例如芯片系统、或通信模块、或调制解调器等,该装置可以被安装在网络设备中。在本申请实施例提供的技术方案中,以用于实现网络设备的功能的装置是网络设备,以网络设备是基站为例,描述本申请实施例提供的技术方案。基站可以支持相同或不同接入技术的网络。本申请的实施例对网络设备所采用的具体技术和具体设备形态不做限定。
在一些部署中,gNB是为用户设备(user equipment,UE)提供NR用户面和控制面传输的节点,其可以支持一个或多个小区。gNB通过NG接口连接到5G核心网,并通过Xn接口与其他gNB相连。其中,Xn-C接口用于两个gNB之间控制面信令的传输,Xn-U接口用于两个gNB之间用户面数据的传输。gNB与UE之间通过Uu接口连接。
在另一些部署中,接入网设备(例如:gNB)可以包括集中式单元(central unit,CU)和分布式单元(distributed unit,DU)。也就是说,gNB可以采用CU-DU分离架构,即gNB包含一个gNB-CU和一个或多个gNB-DU。gNB还可以包括射频单元(radio unit,RU)。CU和DU可以理解为是对基站从逻辑功能角度的划分,CU和DU在物理上可以分离,也可以部署在一起。其中,gNB-CU和gNB-DU都是逻辑节点,一个gNB-CU可以连接一个或者多个gNB-DU,一个gNB-DU仅能连接一个gNB-CU,gNB-CU与gNB-DU之间通过F1接口相连。一个gNB-DU可以支持一个或者多个小区,但一个小区只属于一个gNB-DU。示例性的,参见图2,图2是NR系统中gNB-CU和gNB-DU分离的网络架构示意图。如图2所示,5G核心网(5G core,5GC)与5G无线接入网(next generation radio access network,NG-RAN)互连通信,两者通过NG接口相连。NG-RAN中的gNB既可以采用CU-DU分离架构,也可以采用非CU-DU分离架构。NG-RAN中两个gNB通过Xn接口相连。gNB采用CU-DU分离架构时,多个gNB-DU可连接到一个gNB-CU。应理解,虽然图2所示网络结构应用于NR通信系统,但也可以与LTE系统共享一个或多个部件或资源。
如果gNB采用CU-DU分离架构,UE可通过gNB-DU连接到gNB-CU。可选的,gNB可以将协议层拆分开,部分协议层的功能放在gNB-CU集中控制,剩下部分或全部协议层的功能分布在gNB-DU中,由gNB-CU集中控制gNB-DU。作为一种实现方式,与UE对等的无线链路控制(radio link control,RLC)层,媒体接入控制(medium access control,MAC)层,以及物理层(physical layer,PHY)部署在gNB-DU上,与UE对等的无线资源控制(radio resource control,RRC)层,分组数据汇聚协议(packet data convergence protocol,PDCP)层,以及业务数据适应协议(service data adaptation protocol,SDAP)层部署在gNB-CU上。从而,gNB-CU具有RRC层、PDCP层以及SDAP层的处理能力。gNB-DU具有RLC层、MAC层以及PHY层的处理能力。可以理解的是,上述功能的划分仅为一个示例,不构成对gNB-CU和gNB-DU的限定。
示例性的,参见图3a,图3a是gNB采用CU-DU分离架构下的控制面协议栈示意图。如图3a所示,对于控制面而言,上行(uplink,UL)方向,gNB-DU将UE生成的RRC消息封装在F1接口的F1应用层协议(F1application protocol,F1AP)消息中通过控制面的F1接 口(F1-control,F1-C)发送到gNB-CU。下行(downlink,DL)方向,gNB-CU将RRC消息封装在F1AP消息中发送到gNB-DU,gNB-DU从F1AP消息中提取出RRC消息映射到Uu接口对应的信令无线承载(signalling radio bearer,SRB)如SRB0/SRB1/SRB2上发送给UE。具体的,对UL方向,gNB-DU将该F1AP消息依次经过流控制传输协议(stream control transmission protocol,SCTP)层、以太网协议(Internet Protocol,IP)层、层2(Layer 2,L2)和层1(Layer 1,L1)的处理后发送到gNB-CU。对DL方向,gNB-CU将该F1AP消息依次经过SCTP层、IP层、L2层和L1层的处理后发送到gNB-DU。参见图3b,图3b是gNB采用CU-DU分离架构下的用户面协议栈示意图。如图3b所示,对于用户面而言,UL方向,gNB-DU将从Uu接口对应的数据无线承载(data radio bearer,DRB)上收到的UE数据包映射到对应的通用分组无线业务(general packet radio service,GPRS)隧道协议(GPRS tunneling protocol,GTP)隧道中通过用户面的F1接口(F1-user,F1-U)发送给gNB-CU。DL方向,gNB-CU将UE数据包映射到对应的GTP隧道中发送给gNB-DU,gNB-DU从GTP隧道中提取出UE数据包,并将该UE数据包映射到Uu接口对应的DRB上发送给UE。具体的,对UL方向,gNB-DU将UE的数据包映射到对应的GTP隧道后,再依次经过用户数据报协议(user datagram protocol,UDP)层、IP层、L2层和L1层的处理后发送到gNB-CU。对DL方向,gNB-CU将UE的数据包映射到对应的GTP隧道后,再依次经过UDP层、IP层、L2层和L1层的处理后发送到gNB-DU。应理解,本申请实施例主要涉及用户面协议栈。
在本申请实施例中,术语“无线通信”还可以简称为“通信”,术语“通信”还可以描述为“数据传输”、“信息传输”或“传输”。
参见图4,图4是本申请实施例提供的UE和基站的简化结构示意图。为简单起见,图4仅示出了基站110和UE 120中的主要部件,实际应用中,基站和UE的结构可多于图4所示部件,也可少于图4所示部件,还可只包含图4所示部件。应理解,图4所示基站既可以采用CU-DU分离架构,也可以采用非CU-DU分离架构。下面分别对图4中的各个组成部分进行简单介绍。
基站110包括接口111和处理器112。处理器112可选地可以存储程序114。基站110可选地包括存储器113。存储器113可选地可以存储程序115。UE 120包括接口121和处理器122。处理器122可选地可以存储程序124。UE 120可选地包括存储器123。存储器123可选地可以存储程序125。这些组件一起工作,以提供本申请中描述的各种功能。例如,处理器112和接口111一起工作以提供基站110与UE 120之间的无线连接。处理器122和接口121共同作用,实现UE 120的下行传输和/或上行传输。
处理器(例如,处理器112和/或处理器122)可包括一个或多个处理器并实现为计算设备的组合。处理器(例如,处理器112和/或处理器122)可分别包括以下一种或多种:微处理器、微控制器、数字信号处理器(DSP)、数字信号处理设备(DSPD)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、选通逻辑、晶体管逻辑、分立硬件电路、处理电路或其它合适的硬件、固件和/或硬件和软件的组合,用于执行本申请中所描述的各种功能。处理器(例如,处理器112和/或处理器122)可以是通用处理器或专用处理器。例如,处理器112和/或处理器122可以是基带处理器或中央处理器。基带处理器可用于处理通信协议和通信数据。中央处理器可用于使基站110和/或UE 120执行软件程序,并处理软件程序中的数据。
接口(例如,接口111和/或121)可包括用于实现与一个或多个计算机设备(例如,UE、BS和/或网络节点)之间的通信。在一些实施例中,接口可以包括用于耦合有线连接的电线、 或用于耦合无线收发器的管脚、或用于无线连接的芯片和/或管脚。在一些实施例中,接口可以包括发射器、接收器、收发器和/或天线。接口可以被配置为使用任何可用的协议(例如3GPP标准)。
本申请中的程序在广义上用于表示软件。软件的非限制性示例是程序代码、程序、子程序、指令、指令集、代码、代码段、软件模块、应用程序、软件应用程序等。程序可以在处理器和/或计算机中运行,以使基站110和/或UE 120执行本申请中描述的各种功能和/或过程。
内存(例如存储器113和/或存储器123)可存储由处理器112、122在执行软件时操纵的数据。存储器113、123可以使用任何存储技术实现。例如,存储器可以是处理器和/或计算机能够访问的任何可用存储介质。存储介质的非限制性示例包括:RAM、ROM、EEPROM、CD-ROM、可移动介质、光盘存储器、磁盘存储介质、磁存储设备、闪存、寄存器、状态存储器、远程挂载存储器、本地或远程存储器组件,或能够携带或存储软件、数据或信息并可由处理器/计算机访问的任何其它介质。
内存(例如存储器113和/或存储器123)和处理器(例如处理器112和/或处理器122)可以分开设置或集成在一起。存储器可以用于与处理器连接,使得处理器能够从存储器中读取信息,在存储器中存储和/或写入信息。存储器113可以集成在处理器112中。存储器123可以集成在处理器122中。处理器(例如处理器112和/或处理器122)和存储器(例如存储器113和/或存储器123)可以设置在集成电路中(例如,该集成电路可以设置在UE或基站或其他网络节点中)。
上述内容简要阐述了本申请实施例的网络架构,为更好地理解本申请实施例的技术方案,下面将简要介绍与本申请相关的几个内容。
一、网络编码(network coding,NC)功能
本申请中的网络编码功能包括对原数据包进行网络编码和添加编码包包头。其中,网络编码可以通过编码器来实现,编码器的输入为K个原数据包,编码器的输出为N个编码数据包(简称为编码包),其中,N和K均为正整数,且N大于K。编码包包括N-K(N减K)个冗余包和K个系统包,或者,编码包包括N个冗余包(即编码包均为冗余包,不包括系统包)。其中,系统包的包体的内容和原数据包的内容一致(也就是说,系统包由编码包包头和原数据包构成),系统包可以通过对原数据包直接加包头得到,也可以通过前述编码器编码后加包头得到,系统包的编码系数为单位向量。冗余包的编码系数为非单位向量。通过冗余包的内容和生成该冗余包的原数据包的内容之间的关联,接收设备(可简称收端)可以通过冗余包和成功接收(或接收正确)的原数据包或系统包一起译码,恢复未成功接收(或接收错误)的原数据包。基于网络编码的特点,原数据包的包大小相等。应理解,本文中“编码系数”,“系数因子”,“编码系数因子”三者可相互替换使用。还应理解,本文中的“原数据包”还可以称为“原始数据包”或“原包”等,本申请对其名称不做具体限定。
进一步的,本申请中的网络编码功能还可以包括对原始数据单元,比如服务数据单元(service data unit,SDU)或协议数据单元(protocol data unit,PDU)进行处理获得大小相等的原数据包的过程,该处理可以包括分割,级联,或,加填充(padding)中的一种或多种。发送设备(可简称为发端)的网络编码功能对应接收设备的网络译码功能。接收设备通过对成功接收的至少K个编码包一起进行译码可以恢复出K个原数据包。具有网络编码功能或网络编码对应的译码功能的协议层称为网络编/译码层,本申请中将网络编/译码层简称为网络编码层,即,上述具有网络编码的协议层称为网络编码层。
网络编码层可以是无线资源控制(radio resource control,RRC)层,业务数据适配协议(service data adaptation protocol,SDAP),分组数据汇聚层协议(packet data convergence protocol,PDCP)层,回传适配协议(backhaul adaptation protocol,BAP)层,无线链路控制(radio link control,RLC)层,媒体接入控制(medium access control,MAC)层,或物理层(physical layer,PHY)等协议层。网络编码层也可以是除PHY层,MAC层,RLC层,BAP层,PDCP层,SDAP层以及RRC层之外的一个新的协议层,可以为在PDCP层之上增加网络编码层(例如:5G NR中,在PDCP层和SDAP层之间增加网络编码层),或者,在BAP层之上增加网络编码层,或者,在PDCP层和RLC层之间增加网络编码层,或者,在RLC层和MAC层之间增加网络编码层,或者,在MAC层和PHY层之间增加网络编码层。
常用的网络编码方案包括分组码和卷积码两大类,其中,分组码的方案包括随机线性网络编码(random linear network coding,RLNC)、确定线性网络编码(deterministic linear network coding,DLNC)、分批稀疏码(batch sparse code,BATS code)、纠删码(erasure code)、喷泉码(fountain code)、最大距离可分码(maximum distance separable code,MDS code)、卢比变换码(luby transform,LT)码、快速旋风(rapid tornado)码、RaptorQ码、无速率(rateless)码和里德-所罗门(Reed-Solomon,RS)码等中的一项或多项,卷积码的方案包括卷积网络编码(convolutional network coding,CNC)、流编码(streaming code)和滑动窗口网络编码(sliding window network coding)等中的一项或多项。
下面对发送设备(简称为发端)网络编码功能的两种可能的网络编码流程进行介绍。
第一种可能的网络编码流程:
先获取原始数据(PDU或者SDU),以PDU为例,通过对一个或多个PDU进行分割,级联,或,加padding等处理中的一项或多项获得等大小的原数据包。其中,原数据包携带每个原数据包和该原数据包对应的一个或多个PDU之间的对应关系。该携带可以是显式的携带,比如,携带每个原数据包和该原数据包对应的一个或多个PDU之间的位置映射关系,该携带也可以是隐式的携带,比如,每个原数据包和该原数据包对应的一个或多个PDU之间的对应关系是默认的。这样接收设备(简称为收端)可以基于所述对应关系从原数据包恢复出PDU。
可选的,每个原数据包的包头携带该原数据包和该原数据包对应的一个或多个PDU之间的对应关系。这种情况下,一种可能的实现是:先对PDU进行前述的分割,级联,或加padding等处理中的一项或多项获得原数据,再对原数据添加包头获得等大小的原数据包。
可选的,所述对应关系可以通过所述一个或多个PDU的分割和/或级联的情况进行指示。
可以理解的是,若原始数据本身就是等大小的话,那么就可以跳过上述通过对一个或多个PDU或者SDU进行分割,级联或加padding等处理中的一项或多项获得等大小的原数据包这个步骤,即,PDU或者SDU就是等大小的原数据包。
参见图5a,图5a是发送端的一种可能网络编码流程示意图;参见图5b,图5b是发送端的另一种可能网络编码流程示意图。
图5a和图5b以PDU大小不等以及通过包头携带上述对应关系为例,先对PDU1~PDU4进行处理得到原数据Data1~Data4,这里对PDU的处理可以是分割,级联或加padding等操作中的一项或多项。原数据的大小可以相等也可以不等。再对该组原数据进行加包头的操作,得到K个原数据包,即图5a和图5b中的Pkt1~Pkt4,原数据包可以理解为是未经过编码的数据包,且原数据包的大小相等。
再对多个等大小的原数据包进行编码。
具体的,对多个等大小的原数据包进行编码可以采取以下三种方式中的任意一种。
方式1如图5a所示,通过对K个原数据包进行编码,并添加编码包包头,可以得到N-K个编码包,这里的编码包可以称为校验包或者冗余包,即图5a所示的EPkt1~EPkt2。其中,K为正整数,N为不小于K的正整数。
通过上述操作,发端最终发送K个原数据包和N-K个冗余包。
方式2和方式3如图5b所示,通过对K个原数据包进行处理得到N个编码包,如图5b中EPkt1~EPkt6,编码包可以分为系统包和校验包,系统包也可以称为系统数据包,校验包可以称为冗余包。其中,编码包包头可以包括系数因子字段,该系数因子字段指示获得该编码包的编码系数。系统包(EPkt1~EPkt4)由编码包包头以及包体构成,包体的内容和原数据包的内容一致,包头包括的系数因子字段为单位向量。因此,对原数据包进行处理获得系统包的过程可以包括方式2和方式3两种,其中,K为正整数,N为不小于K的正整数。
其中方式2中,由原数据包直接添加编码包包头生成系统包,即不经过编码处理。
其中方式3中,原数据包经过编码处理,即经过为单位向量的系数因子编码后,并添加编码包包头生成系统包。
方式2和方式3中的校验包的生成方式相同,均为对原数据包编码且添加编码包包头而生成。如图5b中所示,N-K个校验包(如EPkt5~EPkt6)由K个原数据包(如Pkt1~Pkt4)通过编码并添加编码包包头生成,其包体部分(EData1~EData1)是K个原数据包和系数因子相乘再相加作用的结果,其中系数因子为非单位向量。
通过上述操作,发端最终发送N个编码包。
相应的,仍以图5a为例,对于收端,针对方式1,收端收到至少K个数据包,且该K个数据包线性无关,即对应的系数矩阵的秩等于K,这样,收端通过译码可以恢复出K个原数据包,继而恢复出相应的PDU。其中,该至少K个数据包可以全部为冗余包,或,部分为原数据包及部分为冗余包,在此不予限定。可以理解的是,如果收端收到的是K个原数据包,那么可以不进行译码。
针对方式2和方式3,仍以图5b为例,收端收到至少K个数据包,且该K个数据包线性无关,即对应的系数矩阵的秩等于K,这样,收端通过译码可以恢复出K个原数据包,继而恢复出相应的PDU。该至少K个数据包可以全部为冗余包,或,部分为系统包及部分为冗余包,在此不予限定。可以理解的是,如果收端收到的是K个系统包,那么可以不进行译码,进行去编码包包头处理即可。
在上述的网络编码功能中,通过对一个或多个原始数据进行分割,级联,或加padding等处理中的一项或多项获得等大小的原数据包,其中,原数据包携带每个原数据包和该原数据包对应的一个或多个原始数据之间的对应关系。
第二种可能的网络编码流程:
在第二种可能的网络编码流程中,可以采用虚拟分割,级联或加padding的处理中的一项或多项的方式获得等大小的原数据包。在这种方式中,先将原始数据和每个原始数据的头信息映射到缓存中,该缓存可以是真实缓存也可以是虚拟缓存,每个原始数据的头信息指示每个原始数据映射在缓存中的位置。再从缓存中获得多个等大小的原数据包。进而对多个等大小的原数据包进行编码获得编码包。其中,从缓存中获得多个等大小的原数据包的方式可以是预先设定的,或者,由发端指示给收端,或者,由数据传输的双方中处于控制地位的一方确定后指示给另一方。这种方式中,原数据包没有包头,但考虑和第一种方式中的描述对齐,仍将本方案中从缓存中获得的等大小的数据段称为原数据包。可以理解的是,本方案中 的原数据包也可以称为原数据段。
其中,对多个等大小的原数据包进行编码获得编码包的方式和第一种可能的实现流程中的方式1类似,其与方式1的不同在于,编码后,发端发送一个或多个原始数据及该一个或多个原始数据的头信息,以及,编码获得的冗余包中的一个或多个。
可以理解的是,网络编码层的输入可以为一个或多个原始的数据单元,如原始数据,网络编码层的输出可以为一个或多个PDU,该一个或多个PDU可以包括前述的原数据包和冗余包,或者,前述的系统包和冗余包。其中,输出该一个或多个PDU可理解为通过通信接口在终端设备内或网络设备内将该一个或多个PDU输出给后续处理该一个或多个PDU的模块。可以理解,本申请中涉及的输出可以是指在空口上发送信号,也可以指在装置(例如,终端设备或网络设备)内通过通信接口将信号输出给该装置内的其他模块。具体过程在应用场景中具体描述,在此不予赘述。
具体的编码操作以RLNC为例进行简要说明。RLNC方案以一个编码块(block),为一个编码单元,一个编码块中包括多个大小相同的原数据包,通过构建编码系数矩阵对原数据包进行编码可以得到一组编码包。通常,编码系数矩阵中的系数在有限域,如伽罗华域(Galois field,GF)中随机选取。应理解,RLNC方案中,各个编码块之间没有关联,其中,对一个包含W个原数据包的编码块进行网络编码得到的W+R个编码数据,W和R均是正整数,即编码操作对每个独立的编码块进行,每个编码块的冗余(码率)可以相同,也可以不相同。编码端/发送设备将W个原数据包和生成的W+R个编码数据统一加包头信息后发送,译码端/接收设备接收到至少W个正确且编码系数向量线性无关的编码包时,或者,接收到至少W个正确的编码包且接收到的编码包对应的编码系数矩阵的秩为W时,即可正确译码并恢复出W个原数据包。这是因为编码包融合了若干个原数据包的信息,所以接收设备可以用编码包来恢复原数据包。
下面对本申请涉及的一些术语进行介绍。
系统包:由原数据包乘以为单位向量的编码系数生成的编码数据加编码包包头,或是,原数据包直接加编码包包头得到。
冗余包:由对原数据包进行网络编码生成,冗余包的编码系数为非单位向量。在本申请实施例中,术语“冗余包”还可以简称为“校验包”,两者可替换使用。
本申请中,系统包和冗余包可以统称为编码包,本申请下文所涉及编码包均包括系统包和冗余包。
编码系数因子:用于与原数据包相乘生成系统包或冗余包的向量,该向量的标识,即,编码系数因子的标识,也可以称为该向量的索引,即,编码系数因子的索引。
网络编码分组:分组码相关的术语,分组码中网络编码分组是包含了多个原数据包的集合。例如,将每W个原数据包分为一个网络编码分组进行独立网络编码可以得到与该网络编码分组对应的编码数据。在本申请实施例中,术语“网络编码分组”还可以称为“网络编码块”,“编码分组”,或“编码块”。
编码块的标识:也称为“网络编码分组标识”,“网络编码块标识”,或“编码分组标识”等,用于标识一个编码块的标识。比如,块标识(block ID)。
有限域:也称伽罗华域,是仅含有限个元素的域,可进行加法、减法、乘法和除法运算,且加、减、乘和除运算结果不会超出域的集合。
网络编码层:网络编码层是指具有网络编码功能的协议层,网络编码层可以是具有网络编码功能的RRC层,SDAP层,PDCP层,BAP层,RLC层,MAC层,或PHY层等协议层 中的一项或多项。具体是哪层在本申请中不予限定。网络编码层也可以是除上述协议层以外的一个新协议层,例如,该新协议层可以在PDCP层之上,在BAP层之上,在PDCP层和RLC层之间,在RLC层和MAC层之间,或者在MAC层和PHY层之间,新协议层的位置在本申请中可以不予限定。在本申请实施例中,术语“网络编码层”也可以称为“编解码层”,“编译码层”,“网络编解码层”,“网络编译码层”,“网络编/解码层”,“网络编/译码层”或者其它名称,在本申请中不进行限定。
对应于网络编码的译码:网络编码的译码是网络编码的逆过程,利用接收到的编码数据,通过对编码数据对应矩阵的逆矩阵与编码数据相乘可以恢复出原数据包。
协议数据单元(protocol data unit,PDU):协议实体之间传递的数据单元,PDU包含来自上层的信息和当前层的实体附加的信息,这个PDU会被传送到下一较低的层。
服务数据单元(service data unit,SDU):协议层之间传递的数据单元,是来自上层的数据或者要传给上层的数据。
二、网络编码在多媒体广播/组播业务(multimedia broadcast/multicast service,MBMS)中的应用
为了提升MBMS业务传输的可靠性,第三代合作伙伴项目(3rd generation partnership project,3GPP)提出在MBMS业务传输过程中引入前向纠错码(网络编码是一种前向纠错码,其通过对原始数据进行编码并预先增加冗余来对抗传输过程中的数据包出错或性能损失等问题),比如Raptor码(属于喷泉码)。参见图6,图6是MBMS引入网络编码的架构示意图。如图6所示,MBMS接收机通过UTRAN(通用地面无线接入网;第三代移动通信系统)或E-UTRAN(演进的UTRAN)接入核心网,核心网的MBMS GW(MBMS网关,MBMS gate way)通过SGmb或SGi-mb接口与BM-SC(Broadcast-Multicast-Service Centre,广播/组播业务中心)通信,BM-SC通过xMB接口与内容提供者(content provider)通信,其具体通信过程可参考LTE或NR中关于MBMS的相关描述,此处不展开说明。其中,在MBMS引入了网络编码技术,主要是在UE和BM-SC(Broadcast-Multicast-Service Centre,广播/组播业务中心)上实现的网络编码技术,即在应用层上实现,没有考虑空口无线链路质量的影响,其对无线接入网(RAN)侧协议无影响。具体的,BM-SC对UE的MBMS业务进行网络编码后,将生成的编码包通过核心网设备和接入网设备发送给UE,对UE而言只要收到足够多的编码包就可以成功译码从而恢复出MBMS业务。
三、NR PDCP层的超时丢包机制
因为网络中某些业务具有时延要求,如果这些业务的数据包传输到PDCP层已超过时延要求或即将超过时延要求,也就没有传到下一层处理的必要,所以在PDCP层就可以删除收到的这些数据包,从而节省空口资源。因此,NR协议在PDCP层引入了基于丢弃定时器(discardTimer)的超时丢包机制。
为便于描述,本申请将实现PDCP层功能的实体称为PDCP实体,将发送端的PDCP实体称为用于发送的PDCP实体,可简称为发送PDCP实体(the transmitting PDCP entity),接收端的PDCP实体称为用于接收的PDCP实体,可简称为接收PDCP实体。换句话说,本申请中“发送端的PDCP实体”、“用于发送的PDCP实体”、以及“发送PDCP实体”可以相互替换使用。
参见图7,图7是NR PDCP层的超时丢包机制示意图。如图7所示,NR PDCP层的超 时丢包可以通过discardTimer(丢弃定时器)来实现,具体过程如下:(1)发送PDCP实体从上层收到一个PDCP服务数据单元(service data unit,SDU)时,发送PDCP实体为该PDCP SDU关联一个discardTimer,并开启该discardTimer。(2)若该discardTimer超时,说明该PDCP SDU已经QoS失效,该发送PDCP实体丢弃该PDCP SDU以及该PDCP SDU对应的PDCP PDU,其中一个PDCP SDU对应一个PDCP PDU,一个PDCP PDU是一个PDCP SDU经过头压缩、加密/完整性保护和加PDCP头等操作后得到。(3)若该发送PDCP实体已经将该PDCP PDU发送到RLC层,则发送PDCP实体需要指示RLC层丢弃该PDCP PDU。一种实现方式中,在CU-DU分离架构下,PDCP层位于CU上,RLC层位于DU上,因此CU需要指示DU丢弃该PDCP PDU,该指示携带在F1接口的下行用户数据(DL User Data)中发送。
现有3GPP标准中,由上述第二点(即网络编码在MBMS中的应用)可知,网络编码是在应用层实现的,未考虑在接入层引入网络编码。相对于在应用层引入网络编码,接入层(例如:PDCP层,或PDCP层与RLC层之间新定义的协议层)引入网络编码可充分利用空口的链路质量,减少传输时延(这是因为基于网络编码层的反馈来调整冗余包的发送个数,确保接收端收到足够多的编码包以成功译码恢复出原始数据。NC部署越靠近UE,反馈越快),提高频谱效率。又因为网络编码技术需要保证待编码的多个原始数据包的大小相等,而NR协议中任何一层对应的SDU或者PDU的大小都无法保证是相等的。所以需要对SDU/PDU进行级联和/或分段操作(比如将一个SDU/PDU分成多段,和/或将多个SDU/PDU级联成一个),以使待编码的多个原始数据包的大小相等。
由此可知,本申请考虑在接入层引入网络编码,将会对PDCP层的discardTimer超时丢包产生影响。具体地,主要存在两方面的影响。一方面,如果在PDCP层引入NC,由于网络编码功能包括分段和/或级联操作,将导致PDCP SDU和PDCP PDU不再是一一对应的关系,所以如果PDCP SDU关联的discardTimer超时,发送PDCP实体如何丢弃已经QoS失效的PDCP SDU和PDCP PDU?
参见图8,图8是PDCP层引入NC后PDCP SDU与PDCP PDU之间的关系示意图。如图8所示,以发送PDCP实体将PDCP SDU0、SDU1以及SDU2进行网络编码功能的处理后生成编码包为例进行说明(即图5b示意的方案,编码包包括系统包和冗余包),发送PDCP实体为编码包加PDCP头后生成PDCP PDU。其中,PDCP PDU0(即图8中SN=0的PDCP PDU)包含系统包1,即:PDCP PDU0包含PDCP SDU0和部分的PDCP SDU1。PDCP PDU1(即图8中SN=1的PDCP PDU)包含系统包2,即:PDCP PDU1包含剩余部分的PDCP SDU1和PDCP SDU2。PDCP PDU2(即图8中SN=2的PDCP PDU)和PDCP PDU3(即图8中SN=3的PDCP PDU)均包含冗余包,即:PDCP PDU2和PDCP PDU3均包含PDCP SDU0、PDCP SDU1以及PDCP SDU2的内容。所以,PDCP SDU和PDCP PDU不再一一对应。应理解,图8中“SN=数值(0,1,2,3)”表示序列号(sequence number,SN)为0,1,2,3。图8仅是示意图,其示出的系统包和冗余包未画出其包头,但实际应用中,系统包和冗余包均包括包头信息。
另一方面,如果在PDCP层和RLC层之间引入NC,由于PDCP PDU封装在编码包内,将导致RLC层无法直接看到PDCP PDU。如果与PDCP SDU关联的discardTimer超时,RLC层将无法根据PDCP层的指示丢弃对应的PDCP PDU,则RLC层上已经QoS失效的这些PDCP PDU将如何丢弃?
本申请实施例提供一种网络编码场景下的超时丢包方法,可以在LTE或NR的接入层引 入网络编码的场景下,解决PDCP SDU和PDCP PDU不再是一一对应时,如何丢弃已经QoS失效的PDCP SDU和PDCP PDU的问题,和/或解决RLC层上如何丢弃从上层收到的已经QoS失效的PDCP PDU的问题。从而本申请实施例可以进行超时丢包处理,比如,丢弃已经QoS失效的数据包,减少QoS失效的数据包在空口上传输或者存储造成的资源浪费,还可以提高空口传输的效率。
下面将结合更多的附图对本申请提供的技术方案进行详细说明。
因为本申请中的网络编码功能的处理既可以生成原数据包和冗余包(即图5a示意的方案),也可以生成系统包和冗余包(即图5b示意的方案)。所以,为了便于描述和理解,本申请下文中的各个实施例以原始数据(即PDCP SDU/PDU)进行网络编码功能的处理后生成系统包和冗余包(即图5b示意的方案)为例进行介绍说明。应理解,本申请下文描述的各个实施例仍然适用于对原始数据(即PDCP SDU/PDU)进行网络编码功能的处理后生成原数据包和冗余包(即图5a示意的方案)的场景。
本申请提供的技术方案可以通过多个实施例来详细说明,包括实施例一至实施例四。其中,实施例一阐述通过取消当前一个PDCP SDU关联一个discardTimer的机制,重新为一组待编码的原始数据(例如:多个PDCP SDU)关联一个discardTimer,来解决在接入层引入网络编码后导致的PDCP SDU和PDCP PDU不再是一一对应时,如何丢弃已经QoS失效的SDU和PDU的问题。实施例二阐述通过取消当前一个PDCP SDU关联一个discardTimer的机制,重新为一个编码包关联一个discardTimer,来解决在接入层引入网络编码后导致的PDCP SDU和PDCP PDU不再是一一对应时,如何丢弃已经QoS失效的SDU和PDU的问题。应理解,在实施例二中,如果网络编码功能处理生成的是原数据包和冗余包(即图5a示意的方案),则分别为一个原数据包和一个冗余包关联一个discardTimer。实施例三阐述网络编码(NC)功能位于PDCP层内,沿用一个PDCP SDU关联一个discardTimer的机制,并且PDCP PDU只有当其包含的所有PDCP SDU关联的discardTimer都超时才被丢弃。实施例四阐述网络编码(NC)功能位于PDCP层内,沿用一个PDCP SDU关联一个discardTimer的机制,当某个PDCP SDU关联的discardTimer超时后,不仅丢弃这个PDCP SDU,还丢弃这个PDCP SDU对应的所有PDCP PDU。可理解的,本申请实施例一至实施例四所描述的技术方案可以任一组合形成新的实施例且所涉及概念或方案相同或相似的部分可以相互参考或组合。下面分别对各个实施例进行详细说明。
可选的,在介绍本申请实施例之前,先介绍本申请实施例主要涉及的三种协议层架构或应用场景。其中基站可以采用gNB-CU和gNB-DU分离的架构。参见图9a,图9a是本申请实施例提供的网络编码功能位于PDCP层内的协议层架构示意图。如图9a所示,网络编码功能位于UE和gNB-CU的PDCP层内,也就是说在PDCP层内实现网络编码功能。参见图9b,图9b是本申请实施例提供的NC层在PDCP层之下的协议层架构示意图,也就是说在NC层内实现网络编码功能。如图9b所示,NC层分别位于UE和gNB-CU的PDCP层之下。从gNB-CU的角度而言,NC层位于PDCP层和GTP层之间;从UE的角度而言,NC层位于PDCP层和RLC层之间。参见图9c,图9c是本申请实施例提供的NC层在RLC层之上的协议层架构示意图。如图9c所示,NC层分别位于UE和gNB-DU的RLC层之上。从gNB-DU的角度而言,NC层位于RLC层之上;从UE的角度而言,NC层位于PDCP层和RLC层之间。
应理解,本申请提供的技术方案还可以应用于非CU-DU分离的架构,当基站为非CU-DU分离的架构时,其基站内的协议层架构与UE的协议层架构相同,此处不再赘述。
可选的,本申请涉及的通信装置既可以是终端设备,如图1中的UE或图4中的UE 120,也可以是网络设备,如图1的基站或图4中的基站110。如果通信装置为基站,该通信装置可采用图2中gNB-CU和gNB-DU分离的架构。
实施例一
本申请实施例一主要介绍通过取消当前一个PDCP SDU关联一个discardTimer的机制,重新为一组待编码的原始数据(例如:多个PDCP SDU)关联一个discardTimer,来解决在接入层引入网络编码后导致的PDCP SDU和PDCP PDU不再是一一对应时,如何丢弃已经QoS失效的SDU和PDU的问题。本申请实施例一还介绍在PDCP层外(即PDCP层之下或RLC层之上)引入网络编码后,RLC层如何丢弃从上层收到的已经QoS失效的PDCP PDU。
可选的,为了便于理解,本申请实施例一以原始数据(即PDCP SDU/PDU)进行网络编码功能的处理后生成系统包和冗余包(即图5b示意的方案)为例进行介绍说明。应理解,本申请实施例一描述的技术方案仍然适用于对原始数据(即PDCP SDU/PDU)进行网络编码功能的处理后生成原数据包和冗余包(即图5a示意的方案)的场景。
参见图10,图10是本申请实施例提供的网络编码场景下的超时丢包方法的第一种示意流程图。如图10所示,该网络编码场景下的超时丢包方法包括但不限于以下步骤:
S101,通信装置获取一组原始数据,该一组原始数据关联一个定时器,该一组原始数据用于一起进行网络编码功能的处理生成多个第一数据包。
S102,若该一组原始数据关联的定时器超时,通信装置丢弃以下中的至少一项:该一组原始数据,该一组原始数据进行网络编码功能的处理生成的该多个第一数据包。
可选的,上述多个第一数据包包括系统包和冗余包,或者,上述多个第一数据包包括原数据包和冗余包。本申请实施例以多个第一数据包包括系统包和冗余包(本文中统称为编码包)为例进行说明。
可选的,本申请实施例适用于前述图9a至图9c中任一种协议层架构。下面结合具体的协议层架构进行详细说明。其中,本申请实施例中的通信装置至少包括PDCP层和RLC层,可选的还包括NC层。
可选的,上述原始数据可以是从上层接收到的PDCP SDU或PDCP PDU,或者上述原始数据还可以是PDCP SDU/PDU经过分割,级联,加填充(padding)等处理中的一项或多项后,再添加包头得到原数据包。也就是说,本申请实施例既可以是为从上层接收到的一组PDCP SDU/PDU关联一个定时器,也可以是为一组原数据包关联一个定时器。为便于描述,下面以原始数据是从上层接收到的PDCP SDU或PDCP PDU为例进行说明。
1、网络编码功能位于PDCP层内
可选的,网络编码功能位于PDCP层内,即前述图9a所示的协议层架构,上述原始数据为PDCP SDU。通信装置的PDCP层从上层(如SDAP层)接收到多个PDCP SDU,并取消/关闭每个PDCP SDU关联一个discardTimer的机制,或者说关闭每个PDCP SDU与一个discardTimer的关联功能。该通信装置的PDCP层确定待进行网络编码功能处理的一组原始数据,例如:将收到的多个PDCP SDU作为一组原始数据,或者,将收到的多个PDCP SDU中的前N个PDCP SDU作为一组原始数据,N为正整数,并为该组PDCP SDU(即该组原始数据)关联一个定时器。该通信装置的PDCP层将该组PDCP SDU一起/联合/共同进行网络编码功能的处理生成多个编码包,具体的网络编码功能的处理可参考前述图5b所示,此处不再赘述。如果该组PDCP SDU(即该组原始数据)关联的定时器超时,说明该组PDCP SDU已 经QoS失效,则该通信装置的PDCP层丢弃该组PDCP SDU(即该组原始数据),和该组PDCP SDU(即该组原始数据)进行网络编码功能处理生成的全部编码包。
可选的,通信装置的PDCP层获得上述编码包后,可以针对每个编码包加PDCP头得到一个PDCP PDU。也就是说,一个编码包与一个PDCP PDU对应。因此,如果该组PDCP SDU关联的定时器超时,说明该组PDCP SDU已经QoS失效,则通信装置的PDCP层不仅丢弃该组PDCP SDU和该组PDCP SDU进行网络编码功能处理生成的全部编码包之外,还丢弃该组PDCP SDU对应的PDCP PDU(即:丢弃该组PDCP SDU进行网络编码功能处理生成的每个编码包对应的PDCP PDU)。应理解,这里的通信装置还可以称为发送PDCP实体,即发送端的PDCP实体或用于发送的PDCP实体。
简言之,网络编码功能位于PDCP层内,发送PDCP实体从上层收到一个PDCP SDU,取消该PDCP SDU与一个discardTimer的关联,改为发送PDCP实体将从上层收到的一组PDCP SDU关联一个discardTimer,一旦该discardTimer超时,则丢弃这一组PDCP SDU、该组PDCP SDU对应的编码包、以及对应的PDCP PDU。
可见,本申请实施例在定时器超时后,不仅丢弃与该定时器关联的一组PDCP SDU,还丢弃相应的编码包和PDCP PDU,可以减少已经QoS失效的PDCP PDU传输至下一层的概率,从而节省空口资源。
示例性的,以前述图8为例,发送PDCP实体接收到PDCP SDU0、PDCP SDU1和PDCP SDU2后,将这三个PDCP SDU作为一组原始数据,与一个discardTimer关联。然后,再将这一组原始数据(即PDCP SDU0~PDCP SDU2)进行网络编码功能的处理生成编码包,对每个编码包加PDCP头后生成PDCP PDU。因此,一旦一组原始数据(即PDCP SDU0~PDCP SDU2)关联的discardTimer超时,则发送PDCP实体将丢弃PDCP SDU0、PDCP SDU1、PDCP SDU2,和(PDCP SDU0、PDCP SDU1、PDCP SDU2分别)对应的编码包,以及对应的PDCP PDU0、PDCP PDU1、PDCP PDU2和PDCP PDU3。可选的,如果发送PDCP实体已经将PDCP PDU0~PDCP PDU3中的一个或多个发送到RLC层,则发送PDCP实体需要指示RLC层丢弃相应的PDCP PDU。应理解,PDCP PDU传输至RLC层时,会被RLC层认为是RLC SDU,因此,发送RLC层实体(本申请将实现RLC层功能的实体称为RLC层实体,将发送端的RLC层实体称为用于发送的RLC层实体,简称为发送RLC层实体)丢弃相应的PDCP PDU,可以理解为发送RLC层实体丢弃相应的RLC SDU。
应理解,这里的通信装置既可以是终端设备,如UE;也可以是网络设备,如基站。还应理解,如果通信装置是基站,可以采用CU-DU分离的架构,该通信装置具体为gNB-CU。也就是说,下行(DL)方向,发送PDCP实体位于gNB-CU上;上行(UL)方向,发送PDCP实体位于UE上。
2、网络编码功能位于PDCP层之下
可选的,网络编码功能位于PDCP层之下,PDCP层之下引入一个新的NC层,网络编码功能位于NC层,即前述图9b所示的协议层架构,上述原始数据为PDCP PDU。可选的,通信装置的PDCP层取消/关闭一个PDCP SDU关联一个discardTimer的机制,或者说,通信装置关闭PDCP层中PDCP SDU与discardTimer的关联功能。
通信装置的NC层从上层(如PDCP层)接收到多个PDCP PDU,并确定待进行网络编码功能处理的一组原始数据,例如:将收到的多个PDCP PDU作为一组原始数据,或者,将收到的多个PDCP PDU中的前N个PDCP PDU作为一组原始数据,N为正整数,将该组PDCP  PDU(即该组原始数据)关联一个定时器。通信装置的NC层将该组PDCP PDU一起/联合/共同进行网络编码功能的处理生成多个编码包,具体的网络编码功能的处理可参考前述图5b所示,此处不再赘述。如果该组PDCP PDU(即该组原始数据)关联的定时器超时,说明该组PDCP PDU已经QoS失效,则通信装置丢弃该组PDCP PDU(即该组原始数据),和该组PDCP PDU(即该组原始数据)进行网络编码功能的处理生成的全部编码包。
可选的,通信装置的PDCP层从上层(如SDAP层)接收到一个PDCP SDU,就对该PDCP SDU执行头压缩、加密/完整性保护和加PDCP头后得到一个PDCP PDU,并将该PDPC PDU传输至下层(如NC层)。也就是说,一个PDCP PDU与一个PDCP SDU对应。如果该组PDCP PDU关联的定时器超时,通信装置也可以丢弃该组PDCP PDU分别对应的PDCP SDU。
简言之,NC层位于PDCP层之下,可选的,通信装置的PDCP层从上层收到一个PDCP SDU,取消该PDCP SDU与一个discardTimer的关联。通信装置的PDCP层对该PDCP SDU执行头压缩、加密/完整性保护后添加PDCP头得到一个PDCP PDU发送至下层(如NC层)。当通信装置的NC层从上层(即PDCP层)收到多个PDCP PDU后,确定待进行网络编码功能处理的一组原始数据(即:原始数据为PDCP PDU),例如:将收到的多个PDCP PDU作为一组原始数据,或者,将收到的多个PDCP PDU中的前N个PDCP PDU作为一组原始数据,N为正整数,将该组PDCP PDU关联一个discardTimer,一旦该discardTimer定时器超时,则丢弃这一组PDCP PDU、该组PDCP PDU对应的编码包、以及对应的PDCP SDU。
应理解,这里的通信装置既可以是终端设备,如UE;也可以是网络设备,如基站。还应理解,如果通信装置是基站,可以采用CU-DU分离的架构,该通信装置具体为gNB-CU。
可选的,如果上述通信装置是终端设备(如UE),则NC层位于PDCP层之下,也就是UE的NC层位于UE的PDCP层和RLC层之间。UE的NC层将上述一组PDCP PDU一起进行网络编码功能处理生成的全部或部分编码包传输至UE的RLC层后,如果UE上与这一组PDCP PDU关联的定时器超时,则UE的NC层可以指示UE的RLC层丢弃传输至RLC层的该编码包。换句话说,如果UE的NC层已经将这一组PDCP PDU进行网络编码处理生成的编码包发送至RLC层,且与这一组PDCP PDU关联的定时器超时,则UE的NC层还需要指示UE的RLC层删除这些编码包。相应地,UE的RLC层丢弃从UE的NC层接收到的该编码包。应理解,如果UE的NC层已经将这一组PDCP PDU进行网络编码处理生成的部分编码包发送至RLC层,则UE的NC层可以指示RLC层删除发送至该RLC层的这部分编码包,也就是说未发送至RLC层的编码包不需要NC层指示RLC层删除。同理,如果UE的NC层已经将这一组PDCP PDU进行网络编码处理生成的全部编码包发送至RLC层,则UE的NC层需要指示RLC层删除该全部编码包。其中,因为UE的PDCP层、NC层以及RLC层都在UE上实现,所以UE上各层之间的交互可以通过原语来实现,也就是说UE的NC层对RLC层的指示可通过原语实现。
示例性的,参见图11a,图11a是本申请实施例提供的UE侧超时丢包示意图一。如图11a所示,UE的PDCP层从上层收到一个PDCP SDU,可选的,取消该PDCP SDU与一个discardTimer的关联。UE的PDCP层对该PDCP SDU执行头压缩、加密/完整性保护后添加PDCP头得到一个PDCP PDU发送至NC层。UE的NC层从PDCP层接收到PDCP PDU0(即图11a中SN=0的PDCP PDU)、PDCP PDU1(即图11a中SN=1的PDCP PDU)和PDCP PDU2(即图11a中SN=2的PDCP PDU)后,将这三个PDCP PDU作为一组原始数据,与一个discardTimer关联。然后,UE的NC层将这一组原始数据(即PDCP PDU0~PDCP PDU2)一起进行网络编码的处理后生成编码包(如图11a所示的编码包0~3,其中编码包0和编码包1 是系统包,编码包2和编码包3是冗余包)。一旦这一组原始数据(即PDCP PDU0~PDCP PDU2)关联的discardTimer超时,则UE将丢弃PDCP PDU0~PDCP PDU2,和编码包0~3,可选的还可以丢弃PDCP PDU0~PDCP PDU2分别对应的PDCP SDU0~PDCP SDU2。如图11a所示,如果UE的NC层将编码包0(即图11a中数据包标识(packet ID)为0的编码包)和编码包1(即图11a中packet ID为1的编码包)发送至UE的RLC层后,一旦与PDCP PDU0~PDCP PDU2关联的discardTimer超时,则UE的NC层指示UE的RLC层丢弃传输至RLC层的编码包0和编码包1。应理解,如果与PDCP PDU0~PDCP PDU2关联的discardTimer超时,UE的NC层尚未将任一编码包发送至UE的RLC层,则UE的NC层直接丢弃编码包0~3。
应理解,因为本申请实施例不涉及(或不关心)系统包和冗余包的包头设计,所以上述图11a示出的系统包和冗余包未画出其包头,但实际应用中,系统包和冗余包均包括包头信息。还应理解,图11a中数据包上打叉“×”,表示discardTimer超时后,丢弃该数据包。
可选的,如果上述通信装置是基站,且采用CU-DU分离的架构,则该通信装置具体为gNB-CU,也就是说NC层位于gNB-CU上且处于PDCP层之下。gNB-CU在对一组PDCP PDU进行网络编码的处理生成编码包后,可以将生成的该编码包发送至gNB-DU。gNB-CU将这一组PDCP PDU进行网络编码处理生成的全部或部分编码包发送至gNB-DU后,如果gNB-CU上与这一组PDCP PDU关联的定时器超时,则gNB-CU可以向gNB-DU发送指示信息,用于指示gNB-DU丢弃从gNB-CU接收到的由这一组PDCP PDU进行网络编码处理生成的全部或部分编码包。其中,该指示信息中包括以下中的一种:发送至gNB-DU的一个或多个编码包各自的标识,比如数据包标识(packet ID);该一个或多个编码包的标识所属范围(即标识的最大值至最小值这个范围),比如packet ID范围,通过packet ID的最大值和最小值来指示;该一个或多个编码包所属编码块的标识,比如编码块标识(block ID);该一个或多个编码包各自对应的编码系数因子标识(或编码系数索引),比如:编码系数因子标识Coeff ID。相应地,gNB-DU接收到该指示信息后,可以根据该指示信息的指示,丢弃该指示信息指示的编码包。换句话说,如果gNB-CU已经将这一组PDCP PDU进行网络编码处理生成的编码包发送至gNB-DU,则gNB-CU需要指示gNB-DU删除这些编码包。比如,gNB-CU向gNB-DU发送需要丢弃的编码包的编号(如packet ID),指示gNB-DU丢弃该编号所标识的编码包。也就是说,如果gNB-CU已经将部分编码包发送至gNB-DU,则上述指示信息中需要携带这部分编码包的标识(如packet ID)。或者,gNB-CU向gNB-DU发送用于指示这部分编码包所属的编码块的标识(如block ID),指示gNB-DU丢弃编码包中block ID字段与该block ID相同的编码包,因为编码包中会携带生成该编码包所属编码块的信息。或者,gNB-CU向gNB-DU发送用于指示这部分编码包对应的编码系数因子标识(如Coeff ID),指示gNB-DU丢弃编码包中Coeff ID字段与该Coeff ID相同的编码包,因为编码包中会携带生成该编码包所使用的编码系数因子的信息。其中,上述指示信息可以携带在DL User Data中,还可以是新定义的一个信令,本申请实施例对此不做限定。
应理解,如果gNB-CU将某个编码包发送至gNB-DU后,gNB-CU的存储空间(比如缓存)中就不存在该编码包了,则gNB-CU上与生成该编码包的一组PDCP PDU关联的定时器超时且该编码包已经被发送至gNB-DU后,gNB-CU无需自己执行丢弃该编码包的操作,可以通过指示信息指示gNB-DU去丢弃这个编码包。反之,如果gNB-CU将某个编码包发送至gNB-DU后,gNB-CU的存储空间(比如缓存)中仍然存在这个编码包,则该编码包被发送至gNB-DU后,如果与生成该编码包的一组PDCP PDU关联的定时器超时,则gNB-CU不仅丢弃该编码包,还可通过指示信息指示gNB-DU也丢弃该编码包。
示例性的,参见图11b,图11b是本申请实施例提供的gNB侧NC层位于PDCP层之下的超时丢包示意图一。如图11b所示,gNB-CU的PDCP层从上层收到一个PDCP SDU,可选的,取消该PDCP SDU与一个discardTimer的关联。gNB-CU的PDCP层对该PDCP SDU执行头压缩、加密/完整性保护后添加PDCP头得到一个PDCP PDU发送至NC层。gNB-CU的NC层从PDCP层接收到PDCP PDU0(即图11b中SN=0的PDCP PDU)、PDCP PDU1(即图11b中SN=1的PDCP PDU)和PDCP PDU2(即图11b中SN=2的PDCP PDU)后,将这三个PDCP PDU作为一组原始数据,与一个discardTimer关联。然后,gNB-CU的NC层将这一组原始数据(即PDCP PDU0~PDCP PDU2)一起进行网络编码功能处理后生成编码包(如图11b所示的编码包0~3,其中编码包0和编码包1是系统包,编码包2和编码包3是冗余包)。一旦这一组原始数据(即PDCP PDU0~PDCP PDU2)关联的discardTimer超时,则gNB-CU将丢弃PDCP PDU0~PDCP PDU2,和编码包0~3,可选的还可以丢弃PDCP PDU0~PDCP PDU2分别对应的PDCP SDU0~PDCP SDU2。如图11b所示,如果gNB-CU将编码包0(即图11b中packet ID为0的编码包)和编码包1(即图11b中packet ID为1的编码包)发送至gNB-DU后,与PDCP PDU0~PDCP PDU2关联的discardTimer超时,则gNB-CU向gNB-DU发送指示信息,该指示信息可携带编码包0和编码包1的packet ID,用于指示gNB-DU丢弃从gNB-CU接收到的编码包0和编码包1。gNB-DU接收到该指示信息后,根据指示信息丢弃编码包0和编码包1。应理解,如果与PDCP PDU0~PDCP PDU2关联的discardTimer超时,gNB-CU尚未将任一编码包发送至gNB-DU,则gNB-CU直接丢弃编码包0~3。
应理解,上述图11b示出的系统包和冗余包未画出其包头,但实际应用中,系统包和冗余包均包括包头信息。还应理解,图11b中数据包上打叉“×”,表示discardTimer超时后,丢弃该数据包。
可见,当NC层位于UE和gNB-CU的PDCP层之下时,由于PDCP PDU封装在编码包内,导致RLC层无法直接看到PDCP PDU,从而无法沿用现有机制来丢弃已经QoS失效的数据包;本申请实施例通过层间交互(原语)或指示信息来指示RLC层丢弃已经QoS失效的编码包,从而可以减少QoS失效的数据在空口发送造成的资源浪费。
3、网络编码功能位于RLC层之上
可选的,网络编码层功能位于RLC层之上,RLC层之上引入一个新的NC层,网络编码功能位于NC层,即前述图9c所示的协议层架构,上述原始数据为PDCP PDU。应理解,对于终端设备(如UE)而言,因为NC层位于RLC层之上,且NC层位于PDCP层之下,UE侧的协议层架构与图9b完全相同,因此NC层位于RLC层之上时UE的处理流程可以沿用本申请实施例前述NC层位于PDCP层之下时UE的处理流程,此处不再赘述。
对于采用CU-DU分离架构的基站而言,NC层位于RLC层之上(前述图9b所示的gNB侧协议层架构),与NC层位于PDCP层之下(前述图9c所示的gNB侧协议层架构)的不同之处在于:NC层位于RLC层之上时,通信装置是gNB-DU,也就是说NC层位于gNB-DU上且处于RLC层之上。此种情况下,gNB-CU向gNB-DU发送的是PDCP PDU。可选的,gNB-CU可以取消/关闭一个PDCP SDU关联一个discardTimer的机制。gNB-DU从gNB-CU接收到多个PDCP PDU,并确定待进行网络编码功能处理的一组原始数据,例如:将收到的多个PDCP PDU作为一组原始数据,或者,将收到的多个PDCP PDU中的前N个PDCP PDU作为一组原始数据,N为正整数,并为该组PDCP PDU(即该组原始数据)关联一个定时器。gNB-DU将该组PDCP PDU一起/联合/共同进行网络编码功能处理生成多个编码包,具体的 网络编码功能处理可参考前述图5b所示,此处不再赘述。如果该组PDCP PDU(即该组原始数据)关联的定时器超时,说明该组PDCP PDU已经QoS失效,则gNB-DU可以丢弃该组PDCP PDU(即该组原始数据),和该组PDCP PDU(即该组原始数据)进行网络编码功能处理生成的全部编码包。
可选的,gNB-DU的NC层将上述一组PDCP PDU一起进行网络编码功能处理生成的全部或部分编码包传输至gNB-DU的RLC层后,如果与这一组PDCP PDU关联的定时器超时,则gNB-DU的NC层可以指示gNB-DU的RLC层丢弃传输至该RLC层的该编码包。换句话说,如果gNB-DU的NC层已经将这一组PDCP PDU进行网络编码功能处理生成的编码包发送至RLC层,则gNB-DU的NC层还需要指示gNB-DU的RLC层删除这些编码包。相应地,gNB-DU的RLC层丢弃从gNB-DU的NC层接收到的该编码包。其中,gNB-DU上各层之间的交互可以通过原语来实现,也就是说gNB-DU的NC层对RLC层的指示可通过原语实现。
示例性的,参见图11c,图11c是本申请实施例提供的gNB侧NC层位于RLC层之上的超时丢包示意图一。如图11c所示,gNB-CU的PDCP层从上层收到一个PDCP SDU,可选的,取消该PDCP SDU与一个discardTimer的关联。gNB-CU的PDCP层对该PDCP SDU执行头压缩、加密/完整性保护后添加PDCP头得到PDCP PDU发送至gNB-DU。gNB-DU的NC层从gNB-CU接收到PDCP PDU0(即图11c中SN=0的PDCP PDU)、PDCP PDU1(即图11c中SN=1的PDCP PDU)和PDCP PDU2(即图11c中SN=2的PDCP PDU)后,将这三个PDCP PDU作为一组原始数据,与一个discardTimer关联。然后,gNB-DU的NC层将这一组原始数据(即PDCP PDU0~PDCP PDU2)一起进行网络编码功能处理后生成编码包(如图11c所示的编码包0~3,其中编码包0和编码包1是系统包,编码包2和编码包3是冗余包)。一旦这一组原始数据(即PDCP PDU0~PDCP PDU2)关联的discardTimer超时,则gNB-DU将丢弃PDCP PDU0~PDCP PDU2,和编码包0~3。如图11c所示,如果gNB-DU的NC层将编码包0(即图11c中packet ID为0的编码包)和编码包1(即图11c中packet ID为1的编码包)发送至gNB-DU的RLC层后,与PDCP PDU0~PDCP PDU2关联的discardTimer超时,则gNB-DU的NC层指示gNB-DU的RLC层丢弃传输至RLC层的编码包0和编码包1。应理解,如果与PDCP PDU0~PDCP PDU2关联的discardTimer超时,gNB-DU的NC层尚未将任一编码包发送至gNB-DU的RLC层,则gNB-DU的NC层直接丢弃编码包0~3。
应理解,上述图11c示出的系统包和冗余包未画出其包头,但实际应用中,系统包和冗余包均包括包头信息。还应理解,图11c中数据包上打叉“×”,表示discardTimer超时后,丢弃该数据包。
可见,当NC层位于UE和gNB-DU的RLC层之上时,由于PDCP PDU封装在编码包内,导致RLC层无法直接看到PDCP PDU,从而无法沿用现有机制来丢弃已经QoS失效的数据包;本申请实施例通过层间交互(原语)来指示RLC层丢弃已经QoS失效的编码包,从而可以减少QoS失效的数据在空口发送造成的资源浪费,提升空口传输的效率。
应理解,对于NC层位于PDCP层之下和NC层位于RLC层之上这两种情况,本申请实施例以gNB采用CU-DU分离架构为例进行说明的,但本申请实施例仍然适用于gNB采用非CU-DU分离架构的场景,即:在下行(DL)方向,PDCP层、NC层以及RLC层都位于gNB上。当gNB采用非CU-DU分离架构时,所有层间交互都在gNB上实现(也就是说需要新增gNB内各层间的交互),其处理流程可参考UE侧的处理流程,此处不再赘述。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的方案),同理,本实施例同样适应于原数据包生成冗余包的场景(即图5a示例的方案),只需 要将上述方案中的编码包替换为冗余包,将系统包替换为原数据包即可。
可见,本申请实施例,一方面通过取消一个PDCP SDU关联一个discardTimer的机制,重新为一组待编码的原始数据关联一个discardTimer,当该discardTimer超时后,丢弃这一组待编码的原始数据以及这一组待编码的原始数据经过网络编码功能处理生成的编码包;可以解决在接入层引入网络编码后导致的PDCP SDU和PDCP PDU不再一一对应时,如何丢弃已经QoS失效的SDU和PDU的问题,从而可以减少QoS失效的数据在空口发送造成的资源浪费,提升空口传输的效率。本申请实施例,另一方面通过层间交互(原语)或指示信息来指示RLC层丢弃已经QoS失效的编码包,可以解决由于PDCP PDU封装在编码包内导致的RLC层无法直接看到PDCP PDU,从而无法沿用现有机制来丢弃已经QoS失效的数据包的问题,进一步减少资源浪费,提升空口传输的效率。
实施例二
本申请实施例二主要介绍通过取消当前一个PDCP SDU关联一个discardTimer的机制,重新为一个编码包关联一个discardTimer,来解决在接入层引入网络编码后导致的PDCP SDU和PDCP PDU不再是一一对应时,如何丢弃已经QoS失效的SDU和PDU的问题。本申请实施例二还介绍当在PDCP层外(即PDCP层之下或RLC层之上)引入网络编码后,RLC层如何丢弃从上层收到的已经QoS失效的PDCP PDU。
应理解,在本申请实施例二中,如果网络编码功能处理生成的是原数据包和冗余包(即图5a示意的方案),则分别为一个原数据包和一个冗余包关联一个discardTimer。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的方案)。
参见图12,图12是本申请实施例提供的网络编码场景下的超时丢包方法的第二种示意流程图。如图12所示,该网络编码场景下的超时丢包方法包括但不限于以下步骤:
S201,通信装置对原始数据进行网络编码功能的处理生成多个第一数据包,一个该第一数据包关联一个定时器,该多个第一数据包包括系统包和冗余包,或者,该多个第一数据包包括原数据包和冗余包。
S202,若该多个第一数据包中的第一数据包i关联的定时器超时,通信装置丢弃该第一数据包i。
可选的,上述多个第一数据包包括系统包和冗余包,或者,上述多个第一数据包包括原数据包和冗余包。本申请实施例以多个第一数据包包括系统包和冗余包(本文中统称为编码包)为例进行说明。
可选的,本申请实施例适用于前述图9a至图9c中任一种协议层架构。下面结合具体的协议层架构进行详细说明。其中,本申请实施例中的通信装置至少包括PDCP层和RLC层,可选的还包括NC层。
1、网络编码功能位于PDCP层内
可选的,网络编码功能位于PDCP层内,即前述图9a所示的协议层架构,上述原始数据包括一个或多个PDCP SDU。通信装置的PDCP层从上层(如SDAP层)接收到一个或多个PDCP SDU(即原始数据),并取消/关闭每个PDCP SDU关联一个discardTimer的机制,或者说关闭每个PDCP SDU与一个discardTimer的关联功能。通信装置的PDCP层将该一个或多个PDCP SDU一起/联合/共同进行网络编码功能的处理生成多个编码包,具体的网络编码功能处理可参考前述图5b所示,此处不再赘述。通信装置的PDCP层每得到一个编码包,为该 编码包关联一个定时器。如果与某个编码包关联的定时器超时,说明这个编码包已经QoS失效,则通信装置的PDCP层丢弃该编码包。
可选的,通信装置的PDCP层每获得一个编码包,可以对这个编码包加PDCP头得到一个PDCP PDU。也就是说,一个编码包与一个PDCP PDU对应。如果与某个编码包关联的定时器超时,说明这个编码包已经QoS失效,则通信装置的PDCP层不仅可以丢弃该编码包,还可以丢弃该编码包对应的PDCP PDU。
可选的,因为系统包中包体的内容与PDCP SDU一致,而冗余包是原始数据(即一个或多个PDCP SDU)和编码系数相乘再相加作用的结果;所以一个编码包对应一个或多个PDCP SDU。如果与某个编码包关联的定时器超时,说明这个编码包已经QoS失效,则通信装置的PDCP层不仅可以丢弃该编码包,还可以丢弃该编码包对应的PDCP SDU。
应理解,这里的通信装置还可以称为发送PDCP实体,即发送端的PDCP实体或用于发送的PDCP实体。
简言之,网络编码功能位于PDCP层内,发送PDCP实体从上层收到一个PDCP SDU,取消该PDCP SDU与一个discardTimer的关联,改为发送PDCP实体从上层收到一个或多个PDCP SDU后,对这一个或多个PDCP SDU进行网络编码功能的处理后生成多个编码包,并为每个编码包关联一个discardTimer。由于编码包与PDCP PDU一一对应,所以,一旦一个编码包关联的discardTimer超时,则发送PDCP实体将丢弃该编码包以及该编码包对应的PDCP PDU和/或PDCP SDU。
可见,本申请实施例在定时器超时后,不仅丢弃相应的编码包,还丢弃该编码包对应的PDCP PDU(因为编码包已经QoS失效,由该编码包加PDCP头得到的PDCP PDU同样已经QoS失效)和/或PDCP SDU(因为编码包已经QoS失效,生成该编码包的PDCP SDU也即将/已经QoS失效),可以减少已经QoS失效的PDCP PDU传输至下一层的概率,从而节省空口资源,提升空口传输的效率。
示例性的,以前述图8为例,发送PDCP实体接收到PDCP SDU0、PDCP SDU1和PDCP SDU2后,将这三个PDCP SDU进行网络编码功能的处理后生成编码包,并为每个编码包关联一个discardTimer,对每个编码包加PDCP头后生成PDCP PDU。假设与第一个编码包关联的discardTimer超时,则发送PDCP实体将丢弃该第一个编码包、该第一个编码包对应的PDCP PDU0,和/或PDCP SDU0和PDCP SDU1。可选的,如果发送PDCP实体已经将PDCP PDU0发送到RLC层,则发送PDCP实体需要指示RLC层丢弃PDCP PDU0。
应理解,这里的通信装置既可以是终端设备,如UE;也可以是网络设备,如基站。还应理解,如果通信装置是基站,可以采用CU-DU分离的架构,该通信装置具体为gNB-CU。也就是说,下行(DL)方向,发送PDCP实体位于gNB-CU上;上行(UL)方向,发送PDCP实体位于UE上。
2、网络编码功能位于PDCP层之下
可选的,网络编码功能位于PDCP层之下,PDCP层之上引入一个新的NC层,网络编码功能位于NC层,即前述图9b所示的协议层架构,上述原始数据包括一个或多个PDCP PDU。可选的,通信装置的PDCP层取消/关闭一个PDCP SDU关联一个discardTimer的机制,或者说关闭PDCP SDU与discardTimer的关联功能。通信装置的NC层从上层(如PDCP层)接收到一个或多个PDCP PDU(即原始数据),再将该一个或多个PDCP PDU一起/联合/共同进行网络编码功能的处理生成多个编码包,具体的网络编码功能处理可参考前述图5b所示,此 处不再赘述。通信装置的NC层每得到一个编码包,为该编码包关联一个定时器。如果与某个编码包关联的定时器超时,说明这个编码包已经QoS失效,则通信装置丢弃该编码包。可选的,因为系统包中包体的内容与PDCP PDU一致,而冗余包是原始数据(即一个或多个PDCP PDU)和编码系数相乘再相加作用的结果;所以一个编码包对应一个或多个PDCP PDU。因此,如果与某个编码包关联的定时器超时,说明这个编码包已经QoS失效,则通信装置不仅可以丢弃该编码包,还可以丢弃该编码包对应的PDCP PDU。
简言之,NC层位于PDCP层之下,通信装置的PDCP层从上层收到一个PDCP SDU,可选的,取消该PDCP SDU与一个discardTimer的关联。通信装置的PDCP层对该PDCP SDU执行头压缩、加密/完整性保护后添加PDCP头得到一个PDCP PDU发送至下层(如NC层)。当通信装置的NC层从上层(即PDCP层)收到一个或多个PDCP PDU后,对这一个或多个PDCP PDU进行网络编码功能的处理后生成编码包,并为每个编码包关联一个discardTimer。一旦一个编码包关联的discardTimer超时,则通信装置将丢弃该编码包以及该编码包对应的PDCP PDU。
应理解,这里的通信装置既可以是终端设备,如UE;也可以是网络设备,如基站。还应理解,如果通信装置是基站,可以采用CU-DU分离的架构,该通信装置具体为gNB-CU。
可选的,如果上述通信装置是终端设备(如UE),则NC层位于PDCP层之下,也就是UE的NC层位于UE的PDCP层和RLC层之间。UE的NC层将某个编码包传输至UE的RLC层后,如果与这个编码包关联的定时器超时,则UE的NC层可以指示UE的RLC层丢弃传输至RLC层的该编码包。换句话说,如果UE的NC层已经将该编码包发送至RLC层,且与该编码包关联的定时器超时,则UE的NC层可以指示RLC层删除发送至该RLC层的这个编码包。相应地,UE的RLC层丢弃从UE的NC层接收到的该编码包。其中,UE上各层之间的交互可以通过原语来实现,也就是说UE的NC层对RLC层的指示可通过原语实现。
示例性的,参见图13a,图13a是本申请实施例提供的UE侧超时丢包示意图二。如图13a所示,UE的PDCP层从上层收到一个PDCP SDU,可选的,取消该PDCP SDU与一个discardTimer的关联。UE的PDCP层对该PDCP SDU执行头压缩、加密/完整性保护后添加PDCP头得到一个PDCP PDU发送至NC层。UE的NC层从PDCP层接收到PDCP PDU0(即图13a中SN=0的PDCP PDU)、PDCP PDU1(即图13a中SN=1的PDCP PDU)和PDCP PDU2(即图13a中SN=2的PDCP PDU)后,将这三个PDCP PDU(即PDCP PDU0~PDCP PDU2)一起进行网络编码功能的处理后生成编码包0~3(如图13a所示编码包0和编码包1是系统包,编码包2和编码包3是冗余包),再为每个编码包关联一个discardTimer。一旦一个编码包关联的discardTimer超时,则UE将丢弃该编码包,可选的还丢弃该编码包对应的PDCP PDU。如图13a所示,如果UE的NC层将编码包0(即图13a中packet ID为0的编码包)传输至UE的RLC层后,与编码包0关联的discardTimer 1超时,则UE的NC层丢弃编码包0对应的PDCP PDU0和PDCP PDU1,并指示UE的RLC层丢弃传输至RLC层的编码包0。应理解,如果与编码包0关联的discardTimer 1超时,UE的NC层尚未将编码包0发送至UE的RLC层,则UE的NC层直接丢弃编码包0。
应理解,因为本申请实施例不涉及(或不关心)系统包和冗余包的包头设计,所以上述图13a示出的系统包和冗余包未画出其包头,但实际应用中,系统包和冗余包均包括包头信息。还应理解,图13a中数据包上打叉“×”,表示discardTimer 1超时后,丢弃该数据包。
可选的,如果上述通信装置是基站,且采用CU-DU分离的架构,则该通信装置具体为gNB-CU,也就是说NC层位于gNB-CU上且处于PDCP层之下。gNB-CU在对一个或多个 PDCP PDU进行网络编码功能的处理生成编码包后,可以将生成的编码包发送至gNB-DU。如果gNB-CU已经将某个编码包发送至gNB-DU,且gNB-CU上与这个编码包关联的定时器超时,则gNB-CU可以向gNB-DU发送指示信息,用于指示gNB-DU丢弃这个编码包。其中,该指示信息中包括编码包的标识,比如数据包标识(packet ID)或,该指示信息中包括编码包对应的编码系数因子标识(或编码系数索引),比如,编码系数因子标识Coeff ID。相应地,gNB-DU接收到该指示信息后,可以根据该指示信息的指示,丢弃该指示信息指示的编码包。
应理解,如果gNB-CU将某个编码包发送至gNB-DU后,gNB-CU的存储空间(比如缓存)中就不存在该编码包了,则gNB-CU上与该编码包关联的定时器超时且该编码包已经被发送至gNB-DU后,gNB-CU无需自己执行丢弃该编码包的操作,而是通过指示信息指示gNB-DU去丢弃该编码包。反之,如果gNB-CU将某个编码包发送至gNB-DU后,gNB-CU的存储空间(比如缓存)中仍然存在这个编码包,则该编码包被发送至gNB-DU后,如果与该编码包关联的定时器超时,则gNB-CU不仅丢弃该编码包,还可通过指示信息指示gNB-DU也去丢弃该编码包。
示例性的,参见图13b,图13b是本申请实施例提供的gNB侧NC层位于PDCP层之下的超时丢包示意图二。如图13b所示,gNB-CU的PDCP层从上层收到一个PDCP SDU,可选的,取消该PDCP SDU与一个discardTimer的关联。gNB-CU的PDCP层对该PDCP SDU执行头压缩、加密/完整性保护后添加PDCP头得到一个PDCP PDU发送至NC层。gNB-CU的NC层从PDCP层接收到PDCP PDU0(即图13b中SN=0的PDCP PDU)、PDCP PDU1(即图13b中SN=1的PDCP PDU)和PDCP PDU2(即图13b中SN=2的PDCP PDU)后,将这三个PDCP PDU(即PDCP PDU0~PDCP PDU2)一起进行网络编码功能的处理后生成编码包0~3(如图13b所示编码包0和编码包1是系统包,编码包2和编码包3是冗余包),再为每个编码包关联一个discardTimer。一旦一个编码包关联的discardTimer超时,则gNB-CU将丢弃该编码包,可选的还丢弃该编码包对应的PDCP PDU。如图13b所示,如果gNB-CU将编码包0(即图13b中packet ID为0的编码包)发送至gNB-DU后,与编码包0关联的discardTimer1超时,则gNB-CU丢弃编码包0对应的PDCP PDU0和PDCP PDU1,并向gNB-DU发送指示信息,该指示信息可携带编码包0的packet ID,用于指示gNB-DU丢弃从gNB-CU接收到的编码包0。应理解,如果与编码包0关联的discardTimer 1超时,gNB-CU尚未将编码包0发送至gNB-DU,则gNB-CU直接丢弃编码包0。
应理解,上述图13b示出的系统包和冗余包未画出其包头,但实际应用中,系统包和冗余包均包括包头信息。还应理解,图13b中数据包上打叉“×”,表示discardTimer 1超时后,丢弃该数据包。
可见,当NC层位于UE和gNB-CU的PDPC层之下时,本申请实施例为一个编码包关联一个定时器,在与某个编码包关联的定时器超时后,通过层间交互(原语)或指示信息来指示RLC层丢弃已传输至该RLC层的该编码包,可以减少RLC层再将该编码包传输至下一层导致的空口资源浪费,提升空口传输的效率。
3、网络编码功能位于RLC层之上
可选的,网络编码功能位于RLC层之上,RLC层之上引入一个新的NC层,网络编码功能位于NC层,即前述图9c所示的协议层架构,上述原始数据包括一个或多个PDCP PDU。应理解,对于终端设备(如UE)而言,因为NC层位于RLC层之上,和NC层位于PDCP层之下,UE侧的协议层架构与图9b完全相同,因此NC层位于RLC层之上时UE的处理流 程可以沿用本申请实施例前述NC层位于PDCP层之下时UE的处理流程,此处不再赘述。
对于采用CU-DU分离架构的基站而言,NC层位于RLC层之上(前述图9b所示的gNB侧协议层架构),与NC层位于PDCP层之下(前述图9c所示的gNB侧协议层架构)的不同之处在于:NC层位于RLC层之上时,通信装置是gNB-DU,也就是说NC层位于gNB-DU上且处于RLC层之上。此种情况下,gNB-CU向gNB-DU发送的是PDCP PDU。可选的,gNB-CU可以取消/关闭一个PDCP SDU关联一个discardTimer的机制。gNB-DU从gNB-CU接收到一个或多个PDCP PDU(即原始数据)后,将该一个或多个PDCP PDU一起/联合/共同进行网络编码功能的处理生成多个编码包,具体的网络编码功能处理可参考前述图5b所示,此处不再赘述。gNB-DU每得到一个编码包,为该编码包关联一个定时器。如果与某个编码包关联的定时器超时,说明这个编码包已经QoS失效,则gNB-DU可以丢弃这个编码包。本申请实施例中的编码包包括系统包和冗余包中至少一种。
可选的,gNB-DU的NC层将某个编码包传输至gNB-DU的RLC层后,如果与这个编码包关联的定时器超时,则gNB-DU的NC层可以指示gNB-DU的RLC层丢弃传输至RLC层的这个编码包。相应地,gNB-DU的RLC层丢弃从gNB-DU的NC层接收到的这个编码包。其中,gNB-DU上各层之间的交互可以通过原语来实现,也就是说gNB-DU的NC层对RLC层的指示可通过原语实现。
示例性的,参见图13c,图13c是本申请实施例提供的gNB侧NC层位于RLC层之上的超时丢包示意图二。如图13c所示,gNB-CU的PDCP层从上层收到一个PDCP SDU,可选的,取消该PDCP SDU与一个discardTimer的关联。gNB-CU的PDCP层对该PDCP SDU执行头压缩、加密/完整性保护后添加PDCP头得到一个PDCP PDU发送至gNB-DU。gNB-DU的NC层从gNB-CU接收到PDCP PDU0(即图13c中SN=0的PDCP PDU)、PDCP PDU1(即图13c中SN=1的PDCP PDU)和PDCP PDU2(即图13c中SN=2的PDCP PDU)后,将这三个PDCP PDU(即PDCP PDU0~PDCP PDU2)一起进行网络编码功能的处理后生成编码包0~3(如图13c所示编码包0和编码包1是系统包,编码包2和编码包3是冗余包),再为每个编码包关联一个discardTimer。一旦一个编码包关联的discardTimer超时,则gNB-DU将丢弃该编码包,可选的还丢弃该编码包对应的PDCP PDU。如图13c所示,如果gNB-DU的NC层将编码包0(即图13c中packet ID为0的编码包)传输至gNB-DU的RLC层后,与编码包0关联的discardTimer 1超时,则gNB-DU的NC层丢弃编码包0对应的PDCP PDU0和PDCP PDU1,并指示gNB-DU的RLC层丢弃传输至RLC层的编码包0。应理解,如果与编码包0关联的discardTimer 1超时,gNB-DU的NC层尚未将编码包0发送至gNB-DU的RLC层,则gNB-DU的NC层直接丢弃编码包0。
上述图13c示出的系统包和冗余包未画出其包头,但实际应用中,系统包和冗余包均包括包头信息。应理解,图13c中数据包上打叉“×”,表示discardTimer 1超时后,丢弃该数据包。
应理解,对于NC层位于PDCP层之下和NC层位于RLC层之上这两种情况,本申请实施例以gNB采用CU-DU分离架构为例进行说明的,但本申请实施例仍然适用于gNB采用非CU-DU分离架构的场景,即:在下行(DL)方向,PDCP层、NC层以及RLC层都位于gNB上。当gNB采用非CU-DU分离架构时,所有层间交互都在gNB上实现(也就是说需要新增gNB内各层间的交互),其处理流程可参考UE侧的处理流程,此处不再赘述。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的方案),同理,本实施例同样适应于原数据包生成冗余包的场景(即图5a示例的方案),只需 要将上述方案中的编码包替换为冗余包,将系统包替换为原数据包即可。
可见,本申请实施例,一方面通过取消一个PDCP SDU关联一个discardTimer的机制,重新为一个编码包关联一个discardTimer,当该discardTimer超时后,丢弃这个编码包以及该编码包对应的PDCP PDU;不仅可以解决PDCP SDU和PDCP PDU不再一一对应时,如何丢弃已经QoS失效的SDU和PDU的问题,从而减少QoS失效的数据在空口发送造成的资源浪费,提升空口传输的效率,还可以精确丢包(因为一个编码包关联一个discardTimer),减少误丢包的情况。本申请实施例,另一方面通过层间交互(原语)或指示信息来指示RLC层丢弃已经QoS失效的编码包,可以解决由于PDCP PDU封装在编码包内导致的RLC层无法直接看到PDCP PDU,从而无法沿用现有机制来丢弃已经QoS失效的数据包的问题,进一步减少资源浪费,提升空口传输的效率。
实施例三
本申请实施例三主要介绍网络编码功能位于PDCP层内,即PDCP SDU和PDCP PDU不再是一一对应的情况下,沿用一个PDCP SDU关联一个discardTimer的机制,发送PDCP实体如何丢弃已经QoS失效的PDCP SDU和PDCP PDU。
可选的,本申请实施例三中用于发送的PDCP实体是指发送端的PDCP实体,简称为发送PDCP实体。其中,发送端既可以是终端设备,如图1中的UE或图4中的UE 120;也可以是网络设备,如图1的基站或图4中的基站110。换句话说,如果发送端是UE,则用于发送的PDCP实体可以位于UE上;如果发送端是基站,且基站采用CU-DU分离的结构,则用于发送的PDCP实体可以位于gNB-CU上。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的方案)。
参见图14,图14是本申请实施例提供的网络编码场景下的超时丢包方法的第三种示意流程图。如图14所示,该网络编码场景下的超时丢包方法包括但不限于以下步骤:
S301,若PDCP SDU关联的定时器超时,发送PDCP实体丢弃该PDCP SDU,其中,一个PDCP SDU关联一个定时器。
S302,发送PDCP实体对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,该多个第一数据包包括系统包和冗余包,或者,该多个第一数据包包括原数据包和冗余包,一个该第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头。
S303,若一个PDCP PDU对应的N个PDCP SDU关联的N个定时器中的K个定时器超时,则发送PDCP实体丢弃该PDCP PDU。
可选的,本申请实施例中步骤S301和步骤S302的执行顺序不做限定,可能步骤S301在步骤S302之前,也可能步骤S301在步骤S302之后,还可能步骤S301和步骤S302同时执行。
可选的,上述多个第一数据包包括系统包和冗余包,或者,上述多个第一数据包包括原数据包和冗余包。本申请实施例以多个第一数据包包括系统包和冗余包(本文中统称为编码包)为例进行说明。
可选的,本申请实施例中网络编码功能位于PDCP层内,也就是说网络编码功能是PDCP层的一个子功能。
可选的,发送PDCP实体在接收到来自上层(如SDAP层)的一个PDCP SDU时,发送 PDCP实体为该PDCP SDU关联一个discardTimer,并开启该discardTimer。如果与该PDCP SDU关联的discardTimer超时,说明该PDCP SDU已经QoS失效(这是因为某些业务具有时延要求,如果这些业务的数据包传输到PDCP层时已超过时延要求或即将超过时延要求,也就没有传到下一层的必要,因此在PDCP层就可以删除这些数据包,从而节省空口资源),则该发送PDCP实体丢弃该PDCP SDU。当发送PDCP实体从上层(如SDAP层)接收到一个或多个PDCP SDU(即一组待编码的原始数据)后,发送PDCP实体可以对这一个或多个PDCP SDU一起/共同/联合进行网络编码功能的处理生成多个编码包,具体的网络编码功能处理可参考前述图5b所示,此处不再赘述。发送PDCP实体每得到一个编码包,可以对该编码包添加PDCP头得到一个PDCP PDU。也就是说,一个编码包与一个PDCP PDU对应。因为系统包中包体的内容与PDCP SDU一致,而冗余包是这一个或多个PDCP SDU和编码系数相乘再相加作用的结果;所以,一个编码包对应至少一个PDCP SDU,或者说一个编码包携带至少一个PDCP SDU的信息(应理解,如果这个编码包是系统包,其携带的可能是一个PDCP SDU的全部或部分信息),换句话说,一个PDCP PDU对应至少一个PDCP SDU。因此,如果某个PDCP PDU对应的全部或部分PDCP SDU关联的discardTimer均超时,则发送PDCP实体丢弃该这个PDCP PDU。换句话说,一旦一个PDCP SDU关联的discardTimer超时,则发送PDCP实体将丢弃该PDCP SDU,而PDCP PDU只有当其包含的所有PDCP SDU关联的discardTimer都超时才能被丢弃,即K等于N。或者,一旦一个PDCP SDU关联的discardTimer超时,则发送PDCP实体将丢弃该PDCP SDU,当某个PDCP PDU包含的部分PDCP SDU(这里的“部分”可以是正整数,比如超过一半的PDCP SDU)关联的discardTimer均超时才能被丢弃,即预设阈值为N/2,K是大于N/2的正整数。
其中,上述一个PDCP PDU对应的N个PDCP SDU包括:一个PDCP PDU包括的第一数据包是系统包或原数据包,则这个PDCP PDU包括的第一数据包的数据来自这N个PDCP SDU中的每个PDCP SDU;或,一个PDCP PDU包括的第一数据包是冗余包,则这个PDCP PDU包括的与第一数据包满足网络编码关系的原数据包来自这N个PDCP SDU中的每个PDCP SDU。
示例性的,以前述图8为例,如果与PDCP SDU0关联的discardTimer超时,则发送PDCP实体丢弃PDCP SDU0。发送PDCP实体将PDCP SDU0、PDCP SDU1以及PDCP SDU2一起进行网络编码功能的处理后生成编码包(包括2个系统包,2个冗余包),其中,编码包0为系统包0,包含PDCP SDU0和部分的PDCP SDU1,编码包1为系统包1,包含剩余部分的PDCP SDU1和PDCP SDU2,编码包2和编码包3为冗余包,包含PDCP SDU0、PDCP SDU1和PDCP SDU2的内容。再对每个编码包加PDCP头得到PDCP PDU0~3。因此,PDCP SDU0的信息在PDCP PDU0,PDCP PDU2和PDCP PDU3中都有携带。由于PDCP PDU0除了包含PDCP SDU0之外,还包含PDCP SDU1的部分信息。所以,如果PDCP PDU0对应的PDCP SDU0和PDCP SDU1所关联的discardTimer都超时,发送PDCP实体丢弃PDCP PDU0。或者,如果PDCP PDU0对应的所有PDCP SDU中超过一半的PDCP SDU关联的discardTimer均超时,则发送PDCP实体丢弃PDCP PDU0。由于PDCP PDU2和PDCP PDU3中包含PDCP SDU0、PDCP SDU1以及PDCP SDU2的信息,所以,如果PDCP SDU0,PDCP SDU1,以及PDCP SDU2分别关联的discardTimer都超时,发送PDCP实体丢弃PDCP PDU2和PDCP PDU3。或者,如果PDCP PDU2和PDCP PDU3对应的所有PDCP SDU中超过一半的PDCP SDU关联的discardTimer均超时,则发送PDCP实体丢弃PDCP PDU2和PDCP PDU3。即,如果PDCP SDU0关联的discardTimer、PDCP SDU1关联的discardTimer,以及PDCP SDU2关联的discardTimer 中至少2个discardTimer超时,则发送PDCP实体丢弃PDCP PDU2和PDCP PDU3。
可选的,发送PDCP实体对接收到的一个或多个PDCP SDU进行网络编码功能的处理后生成的编码包包括系统包和冗余包。因为网络编码功能位于PDCP层,所以PDCP层除了缓存有PDCP SDU和PDCP PDU之外,还缓存有编码包。因此,如果与某个PDCP SDU关联的discardTimer超时,则发送PDCP实体除了丢弃该PDCP SDU外,还可以丢弃该PDCP SDU对应的多个编码包中的全部或部分。这里,一个PDCP SDU对应多个编码包(因为既有系统包又有冗余包)。例如,如果与某个PDCP SDU关联的discardTimer超时,发送PDCP实体丢弃该PDCP SDU,以及该PDCP SDU对应的系统包或冗余包,即发送PDCP实体丢弃该PDCP SDU对应的多个编码包中的部分。或者,如果与某个PDCP SDU关联的discardTimer超时,发送PDCP实体丢弃该PDCP SDU,以及该PDCP SDU对应的系统包和冗余包,即发送PDCP实体丢弃该PDCP SDU对应的全部编码包。
示例性的,以前述图8为例,PDCP SDU0、PDCP SDU1以及PDCP SDU2一起进行网络编码功能的处理后生成编码包,其包括2个系统包和2个冗余包。如果与PDCP SDU0关联的discardTimer超时,则发送PDCP实体除了丢弃PDCP SDU0外,还丢弃PDCP SDU0对应的系统包(即第一个编码包),或者,丢弃PDCP SDU0对应的系统包(即第一个编码包)和冗余包(即第三个和第四个编码包)。
可选的,发送PDCP实体将某个PDCP PDU发送到RLC层后,如果这个PDCP PDU对应的全部或部分PDCP SDU关联的discardTimer均超时,则发送PDCP实体需要指示RLC层丢弃该PDCP PDU。相应地,发送RLC层实体(本申请将实现RLC层功能的实体称为RLC层实体,将发送端的RLC层实体称为用于发送的RLC层实体,简称为发送RLC层实体)丢弃从上层(如PDCP层)接收到的该PDCP PDU。其中,PDCP PDU传输至RLC层后,会被RLC层认为是RLC SDU,因此,RLC层实体丢弃PDCP PDU,可以理解为RLC层实体丢弃PDCP PDU对应的RLC SDU。
应理解,如果发送PDCP实体将PDCP PDU发送至RLC层后,发送PDCP实体的存储空间(比如缓存)中就不存在该PDCP PDU了,则当该PDCP PDU对应的全部或部分PDCP SDU关联的discardTimer均超时后,发送PDCP实体无需自己执行丢弃该PDCP PDU的操作,而是指示RLC层去丢弃该PDCP PDU。同理,如果发送PDCP实体将PDCP PDU发送至RLC层后,且发送PDCP实体还缓存有该PDCP PDU,则发送PDCP实体不仅需要指示RLC层丢弃该PDCP PDU,还需丢弃自己缓存中的该PDCP PDU。
可选的,发送PDCP实体位于gNB-CU上。如果gNB-CU已经将某个PDCP PDU通过GTP隧道发送给gNB-DU,且这个PDCP PDU对应的全部或部分PDCP SDU关联的discardTimer均超时,则gNB-CU需要指示gNB-DU丢弃该PDCP PDU。相应地,gNB-DU接收到来自gNB-CU的指示后,按照该指示丢弃接收到的该PDCP PDU。其中,该指示携带在F1接口的DL User Data中发送。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的方案),同理,本实施例同样适应于原数据包生成冗余包的场景(即图5a示例的方案),只需要将上述方案中的编码包替换为冗余包,将系统包替换为原数据包即可。
可见,本申请实施例通过在网络编码场景下复用NR PDCP层的超时丢包机制并在此基础上修改丢弃PDCP PDU的原则,即复用一个PDCP SDU关联一个discardTimer,当该discardTimer超时,则丢弃该PDCP SDU,而PDCP PDU只有当其包含的所有或部分PDCP SDU关联的discardTimer都超时才能被丢弃,不仅可以减少对NR PDCP层的超时丢包机制的改动, 还可以在网络编码场景下丢弃已经QoS失效的数据包,减少QoS失效的数据包在空口上传输造成的资源浪费且可以减少误丢包的情况,提升空口传输的效率。
实施例四
本申请实施例四主要介绍网络编码功能位于PDCP层内,即PDCP SDU和PDCP PDU不再是一一对应的情况下,沿用一个PDCP SDU关联一个discardTimer的机制,当某个PDCP SDU关联的discardTimer超时后,丢弃这个PDCP SDU,以及如何丢弃已经QoS失效的PDCP PDU。
可选的,本申请实施例四中用于发送的PDCP实体是指发送端的PDCP实体,简称为发送PDCP实体。其中,发送端既可以是终端设备,如图1中的UE或图4中的UE 120;也可以是网络设备,如图1的基站或图4中的基站110。换句话说,如果发送端是UE,则用于发送的PDCP实体可以位于UE上;如果发送端是基站,且基站采用CU-DU分离的结构,则用于发送的PDCP实体可以位于gNB-CU上。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的方案)。
参见图15,图15是本申请实施例提供的网络编码场景下的超时丢包方法的第四种示意流程图。如图15所示,该网络编码场景下的超时丢包方法包括但不限于以下步骤:
S401,发送PDCP实体对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,该多个第一数据包包括系统包和冗余包,或者,该多个第一数据包包括原数据包和冗余包,该一个或多个PDCP SDU对应该多个第一数据包,一个该第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头,一个PDCP SDU对应多个PDCP PDU,该一个或多个PDCP SDU中的一个PDCP SDU关联一个定时器。
S402,若一个或多个PDCP SDU中的第一PDCP SDU关联的定时器超时,发送PDCP实体丢弃以下中的至少一项:该第一PDCP SDU,该第一PDCP SDU对应的多个PDCP PDU。
可选的,上述多个第一数据包包括系统包和冗余包,或者,上述多个第一数据包包括原数据包和冗余包。本申请实施例以多个第一数据包包括系统包和冗余包(本文中统称为编码包)为例进行说明。
可选的,本申请实施例中网络编码功能位于PDCP层内,也就是说网络编码功能是PDCP层的一个子功能。
可选的,发送PDCP实体在接收到来自上层(如SDAP层)的一个PDCP SDU时,发送PDCP实体为该PDCP SDU关联一个discardTimer,并开启该discardTimer。当发送PDCP实体从上层(如SDAP层)接收到一个或多个PDCP SDU(即一组待编码的原始数据)后,发送PDCP实体可以对这一个或多个PDCP SDU一起/共同/联合进行网络编码功能的处理生成多个编码包,具体的网络编码功能处理可参考前述图5b所示,此处不再赘述。发送PDCP实体每得到一个编码包,可以对该编码包添加PDCP头得到一个PDCP PDU。也就是说,一个编码包与一个PDCP PDU对应。因为系统包中包体的内容与PDCP SDU一致,而冗余包是这一个或多个PDCP SDU和编码系数相乘再相加作用的结果;所以,一个PDCP SDU对应多个编码包,或者说一个PDCP SDU的信息携带在多个编码包中,换句话说,一个PDCP SDU对应多个PDCP PDU。因此,如果与某个PDCP SDU(即上述第一PDCP SDU)关联的discardTimer超时,说明该第一PDCP SDU已经QoS失效,该发送PDCP实体丢弃该第一PDCP SDU以及该第一PDCP SDU对应的多个PDCP PDU。换句话说,一旦一个PDCP SDU关联的 discardTimer超时,则发送PDCP实体将丢弃该PDCP SDU,以及该PDCP SDU对应的所有PDCP PDU。
示例性的,以前述图8为例,PDCP SDU0、PDCP SDU1以及PDCP SDU2一起进行网络编码功能的处理后生成编码包(包括2个系统包,2个冗余包),其中,编码包0为系统包0,包含PDCP SDU0和部分的PDCP SDU1,编码包1为系统包1,包含剩余部分的PDCP SDU1和PDCP SDU2,编码包2和编码包3为冗余包,包含PDCP SDU0、PDCP SDU1和PDCP SDU2的内容。再对每个编码包加PDCP头得到PDCP PDU0~3。因为PDCP SDU0的信息在PDCP PDU0,PDCP PDU2和PDCP PDU3中都有携带。所以,如果与PDCP SDU0关联的discardTimer超时,则发送PDCP实体将丢弃PDCP SDU0,以及对应的PDCP PDU0,PDCP PDU2和PDCP PDU3。
其中,因为PDCP PDU2和PDCP PDU3均包含冗余包,每个冗余包中均包含PDCP SDU0、PDCP SDU1以及PDCP SDU2的内容,可用于接收端对PDCP SDU0、PDCP SDU1以及PDCP SDU2之中任何一个PDCP SDU的恢复。因此,一旦PDCP SDU0关联的discardTimer定时器超时,则发送PDCP实体除了丢弃PDCP SDU0之外,还需要把所有包含PDCP SDU0内容的PDCP PDU0、PDCP PDU2和PDCP PDU3都丢弃。否则,如果发送PDCP实体仅丢弃PDCP SDU0和PDCP PDU0,因为接收端能够正确接收到PDCP PDU2和/或PDCP PDU3,所以接收端还是能成功把PDCP SDU0恢复出来,将会导致接收端收到一个无效的PDCP SDU0。
可选的,因为网络编码功能位于PDCP层,所以PDCP层除了缓存有PDCP SDU和PDCP PDU之外,还缓存有编码包。因此,如果与上述第一PDCP SDU关联的discardTimer超时,则发送PDCP实体不仅可以丢弃该第一PDCP SDU和该第一PDCP SDU对应的多个PDCP PDU,还可以丢弃该第一PDCP SDU对应的多个编码包中的全部或部分。例如,如果与某个PDCP SDU(即上述第一PDCP SDU)关联的discardTimer超时,发送PDCP实体丢弃该第一PDCP SDU,以及该第一PDCP SDU对应的系统包或冗余包。或者,如果与该第一PDCP SDU关联的discardTimer超时,发送PDCP实体丢弃该第一PDCP SDU,以及该第一PDCP SDU对应的系统包和冗余包。
可选的,发送PDCP实体将上述第一PDCP SDU对应的全部PDCP PDU或部分PDCP PDU发送到RLC层后,如果与该第一PDCP SDU关联的discardTimer超时,则发送PDCP实体需要指示RLC层丢弃传输至该RLC层的这些PDCP PDU。相应地,发送RLC层实体丢弃从上层(如PDCP层)接收到的这些PDCP PDU。
应理解,如果发送PDCP实体已经将上述第一PDCP SDU对应的部分PDCP PDU发送至RLC层,则发送PDCP层实体可以指示RLC层丢弃发送至该RLC层的这部分PDCP PDU,也就是说未发送至RLC层的PDCP PDU不需要发送PDCP实体指示RLC层丢弃,可以由发送PDCP层实体直接丢弃。同理,如果发送PDCP实体已经将上述第一PDCP SDU对应的全部PDCP PDU发送至RLC层,则发送PDCP层实体需要指示RLC层丢弃该全部PDCP PDU,发送PDCP实体无需自己执行丢弃上述第一PDCP SDU对应的多个PDCP PDU的操作。
可选的,发送PDCP实体位于gNB-CU上。如果gNB-CU已经将上述第一PDCP SDU对应的某个PDCP PDU通过GTP隧道发送给gNB-DU,且该第一PDCP SDU关联的discardTimer超时,则gNB-CU需要指示gNB-DU丢弃该第一PDCP SDU对应的该PDCP PDU。相应地,gNB-DU接收到来自gNB-CU的指示后,按照该指示丢弃接收到的该PDCP PDU。其中,该指示携带在F1接口的DL User Data中发送。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的 方案),同理,本实施例同样适应于原数据包生成冗余包的场景(即图5a示例的方案),只需要将上述方案中的编码包替换为冗余包,将系统包替换为原数据包即可。
可见,本申请实施例通过在网络编码场景下复用NR PDCP层的超时丢包机制,当一个PDCP SDU关联的一个discardTimer超时后,丢弃该PDCP SDU以及该PDCP SDU对应的所有PDCP PDU,不仅可以减少对NR PDCP层的超时丢包机制的改动,还可以在网络编码场景下丢弃已经QoS失效的数据包,减少QoS失效的数据包在空口上传输造成的资源浪费以及减少接收端恢复出无效数据包的概率,提升空口的传输效率。
一个可选实施例中,通信装置对一组PDCP PDU进行网络编码功能的处理生成多个第一数据包,该多个第一数据包包括系统包和冗余包,或者,该多个第一数据包包括原数据包和冗余包。该一组PDCP PDU包括一个或多个PDCP PDU,一个PDCP PDU对应至少一个第一数据包。若某个PDCP SDU关联的定时器超时,通信装置丢弃该PDCP SDU和该PDCP SDU对应的PDCP PDU,并丢弃该PDCP PDU对应的多个第一数据包,其中一个PDCP SDU关联一个定时器,一个PDCP PDU包括一个PDCP SDU和PDCP头。本申请实施例中的通信装置包括PDCP层、RLC层以及NC层,且NC层位于PDCP层之下。
具体地,以一组PDCP PDU进行网络编码功能的处理生成系统包和冗余包(统称为编码包)为例:如果上述通信装置是UE,UE的PDCP层从上层接收到一个PDCP SDU,为该PDCP SDU关联一个discardTimer,并对该PDCP SDU执行头压缩、加密/完整性保护后加PDCP头得到一个PDCP PDU传输至下层(如NC层)。当UE的NC层从上层(即PDCP层)收到一组PDCP PDU(即一个或多个PDCP PDU)后,将这一组PDCP PDU一起进行网络编码功能的处理生成多个编码包,该多个编码包包括系统包和冗余包,一个PDCP PDU对应多个编码包。然后,UE的NC层可以将生成的多个编码包发送至RLC层。如果与某个PDCP SDU关联的discardTimer超时,则UE的PDCP层丢弃该PDCP SDU以及该PDCP SDU对应的PDCP PDU。由于该PDCP SDU和对应的PDCP PDU已经QoS失效,如果UE的NC层已经将该PDCP PDU对应的编码包发送至RLC层,则UE的NC层需要指示UE的RLC层丢弃该PDCP PDU对应的编码包。相应地,UE的RLC层丢弃该PDCP PDU对应的编码包。
如果上述通信装置是gNB且采用CU-DU分离架构,gNB-CU的PDCP层从上层接收到一个PDCP SDU,为该PDCP SDU关联一个discardTimer,并对该PDCP SDU执行头压缩、加密/完整性保护后加PDCP头得到一个PDCP PDU传输至下层(如NC层)。当gNB-CU的NC层从上层(即PDCP层)收到一组PDCP PDU(即一个或多个PDCP PDU)后,将这一组PDCP PDU一起进行网络编码操作生成多个编码包,该多个编码包包括系统包和冗余包,一个PDCP PDU对应多个编码包。然后,gNB-CU可以将生成的多个编码包发送至gNB-DU。如果与某个PDCP SDU关联的discardTimer超时,则gNB-CU的PDCP层丢弃该PDCP SDU以及该PDCP SDU对应的PDCP PDU。由于该PDCP SDU和对应的PDCP PDU已经QoS失效,如果gNB-CU已经将该PDCP PDU对应的编码包发送至gNB-DU,则gNB-CU可以向gNB-DU发送指示信息,该指示信息中包括该PDCP PDU对应的编码包的标识或生成该编码包对应的编码系数因子标识,用于指示gNB-DU丢弃该PDCP PDU对应的编码包。相应地,gNB-DU接收到该指示信息后,按照该指示信息的指示丢弃该PDCP PDU对应的编码包。
示例性的,参见图16,图16是本申请实施例提供的gNB侧NC层位于PDCP层之下的超时丢包示意图三。如图16所示,如果PDCP SDU0关联的discardTimer 1超时,则gNB-CU的PDCP层将丢弃PDCP SDU0和PDCP PDU0(即图16中SN=0的PDCP PDU)。因为PDCP  PDU0,PDCP PDU1和PDCP PDU2进行网络编码功能的处理后生成编码包,其中编码包0为系统包0,包含PDCP PDU0和部分的PDCP PDU1,编码包1为系统包1,包含剩余部分的PDCP PDU1和PDCP PDU2,编码包2和编码包3为冗余包,包含PDCP PDU0、PDCP PDU1和PDCP PDU2的内容。所以,编码包0(即图16中packet ID为0的编码包/系统包)、编码包2(即图16中packet ID为2的编码包/冗余包)和编码包3(即图16中packet ID为3的编码包/冗余包)中都包含了PDCP PDU0的内容,也就是说,PDCP PDU0与编码包0、编码包2和编码包3都对应,因此编码包0、编码包2和编码包3也都需要丢弃。故gNB-CU需要指示gNB-DU丢弃编码包0、编码包2和编码包3。
上述图16示出的系统包和冗余包未画出其包头,但实际应用中,系统包和冗余包均包括包头信息。应理解,图16中数据包上打叉“×”,表示discardTimer 1超时后,丢弃该数据包。
可见,本申请实施例沿用NR PDCP层的超时丢包机制,当一个PDCP SDU关联的一个discardTimer超时后,丢弃该PDCP SDU以及该PDCP SDU对应的一个PDCP PDU,并在通信装置将一组PDCP PDU一起进行网络编码操作生成的编码包发送至RLC层后,通过层间交互或指示信息来指示RLC层删除相应的编码包,可以解决因为PDCP PDU封装在编码包内导致的RLC层无法直接看到PDCP PDU,从而无法沿用现有机制来丢弃已经QoS失效的数据包的问题,从而可以减少QoS失效的数据在空口发送造成的资源浪费,提升空口传输的效率。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的方案),同理,本实施例同样适应于原数据包生成冗余包的场景(即图5a示例的方案),只需要将上述方案中的编码包替换为冗余包,将系统包替换为原数据包即可。
另一个可选实施例中,若PDCP SDU关联的定时器超时,通信装置丢弃该PDCP SDU和该PDCP SDU对应的PDCP PDU,其中一个PDCP SDU关联一个定时器,一个PDCP PDU是一个PDCP SDU执行头压缩、加密/完整性保护后加PDCP头后得到。通信装置对一组PDCP PDU进行网络编码功能的处理生成多个编码包,该多个编码包包括系统包和冗余包,该一组PDCP PDU包括一个或多个PDCP PDU,一个编码包中携带至少一个PDCP PDU的(部分/全部)信息。如果某个编码包对应的所有PDCP PDU分别对应的PDCP SDU所关联的定时器都超时,则通信装置丢弃该编码包。本申请实施例中的通信装置包括PDCP层、RLC层以及NC层,且NC层位于PDCP层之下。
可选的,如果通信装置将某个编码包传输至下层后,这个编码包对应的所有PDCP PDU分别对应的PDCP SDU所关联的定时器都超时,则通信装置需要指示下层丢弃这个编码包。其中,如果通信装置是UE,则这里可通过原语来指示。如果通信装置是gNB且采用CU-DU分离架构,则这里可通过信令(指示信息)来指示。
示例性的,以前述图16为例,PDCP SDU0关联的discardTimer超时,则gNB-CU的PDCP层将丢弃PDCP SDU0和PDCP PDU0(即图16中SN=0的PDCP PDU)。因为PDCP PDU0,PDCP PDU1和PDCP PDU2进行网络编码功能的处理后生成编码包,其中编码包0为系统包0,包含PDCP PDU0和部分的PDCP PDU1,编码包1为系统包1,包含剩余部分的PDCP PDU1和PDCP PDU2,编码包2和编码包3为冗余包,包含PDCP PDU0、PDCP PDU1和PDCP PDU2的内容。所以,编码包0(即图16中packet ID为0的编码包/系统包)不仅包含PDCP PDU0的内容,还包含PDCP PDU1的部分内容,所以如果PDCP SDU0和PDCP SDU1各自关联的discardTimer都超时,则gNB-CU指示gNB-DU丢弃编码包0。
可见,本申请实施例可以解决因为PDCP PDU封装在编码包内导致的RLC层无法直接看到PDCP PDU,从而无法沿用现有机制来丢弃已经QoS失效的数据包的问题,从而可以减少QoS失效的数据在空口发送造成的资源浪费,并且可以减少误丢包的情况,提升空口传输的效率。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的方案),同理,本实施例同样适应于原数据包生成冗余包的场景(即图5a示例的方案),只需要将上述方案中的编码包替换为冗余包,将系统包替换为原数据包即可。
又一个可选实施例中,若PDCP SDU关联的定时器超时,gNB-CU丢弃该PDCP SDU和/或该PDCP SDU对应的PDCP PDU,一个PDCP SDU关联一个定时器,一个PDCP PDU是一个PDCP SDU执行头压缩、加密/完整性保护后加PDCP头后得到。若gNB-CU已经将该PDCP SDU对应的PDCP PDU发送至gNB-DU,gNB-CU可以沿用现有机制指示gNB-DU丢弃对应的PDCP PDU。本申请实施例中NC层位于RLC层之上,也就是说,NC层在gNB-DU上。gNB-DU对从gNB-CU收到的一组PDCP PDU进行网络编码功能的处理生成多个编码包。当gNB-DU收到gNB-CU指示丢弃该PDCP SDU对应的PDCP PDU的指示信息后,gNB-DU还可以丢弃该PDCP PDU对应的所有编码包(包括系统包和冗余包),或者,当某个编码包对应的所有PDCP PDU都被指示丢弃时,gNB-DU才丢弃该编码包。
示例性的,参见图17,图17是本申请实施例提供的gNB侧NC层位于RLC层之上的超时丢包示意图三。如图17所示,gNB-CU向gNB-DU发送PDCP PDU0(即图17中SN=0的PDCP PDU)、PDCP PDU1(即图17中SN=1的PDCP PDU)和PDCP PDU2(即图17中SN=2的PDCP PDU)。gNB-DU将收到的PDCP PDU0、PDCP PDU1和PDCP PDU2作为一个编码块进行网络编码功能的处理后生成编码包。一旦PDCP SDU0关联的discardTimer 1超时,则gNB-CU将丢弃该PDCP SDU0和PDCP PDU0,沿用现有机制,gNB-CU指示gNB-DU丢弃PDCP PDU0。其中编码包0为系统包0,包含PDCP PDU0和部分的PDCP PDU1,编码包1为系统包1,包含剩余部分的PDCP PDU1和PDCP PDU2,编码包2和编码包3为冗余包,包含PDCP PDU0、PDCP PDU1和PDCP PDU2的内容。所以,编码包0(即图17中packet ID为0的编码包/系统包)、编码包2(即图17中packet ID为2的编码包/冗余包)和编码包3(即图17中packet ID为3的编码包/冗余包)中都包含了PDCP PDU0的内容。因此,一旦gNB-CU指示gNB-DU丢弃PDCP PDU0,则gNB-DU除了丢弃PDCP PDU0之外,还将丢弃编码包0、编码包2和编码包3。或者,一旦gNB-CU指示gNB-DU丢弃PDCP PDU0,则gNB-DU只丢弃PDCP PDU0。只有当gNB-CU指示gNB-DU丢弃PDCP PDU0和PDCP PDU1时,gNB-DU除了丢弃PDCP PDU0和PDCP PDU1之外,还将丢弃编码包0。
上述图17示出的系统包和冗余包未画出其包头,但实际应用中,系统包和冗余包均包括包头信息。应理解,图17中数据包上打叉“×”,表示discardTimer 1超时后,丢弃该数据包。
可见,本申请实施例可以解决在PDCP层和RLC层之间引入NC层后,引起的RLC层无法沿用现有机制进行丢包的问题,并且RLC层根据上层的指示信息来丢弃已经QoS失效的数据包,减少失效数据包在空口的发送造成的资源浪费。
本实施例以原数据包生成编码包(包括系统包和冗余包)为例进行说明(即图5b示意的方案),同理,本实施例同样适应于原数据包生成冗余包的场景(即图5a示例的方案),只需要将上述方案中的编码包替换为冗余包,将系统包替换为原数据包即可。
上述内容详细阐述了本申请的方法,为便于更好地实施本申请实施例的上述方案,本申请实施例还提供了相应的装置或设备。
本申请实施例可以根据上述方法示例对通信装置和发送PDCP实体进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。下面将结合图18至图21详细描述本申请实施例的通信装置。
在采用集成的单元的情况下,参见图18,图18是本申请实施例提供的通信装置的一结构示意图。该通信装置可以为终端设备或者设置于终端设备中的芯片或电路;该通信装置还可以是网络设备或设置于网络设备中的芯片或电路。如图18所示,该通信装置包括:获取模块11和丢弃模块12。
获取模块11,用于获取一组原始数据,该一组原始数据关联一个定时器,该一组原始数据用于一起进行网络编码功能的处理生成多个第一数据包,该多个第一数据包包括系统包和冗余包,或者,该多个第一数据包包括原数据包和冗余包;丢弃模块12,用于若该一组原始数据关联的定时器超时,丢弃以下中的至少一项:该一组原始数据,该一组原始数据进行网络编码功能的处理生成的该多个第一数据包。
可选的,上述原始数据为PDCP SDU。
可选的,上述一组PDCP SDU对应上述多个第一数据包,一个第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头。上述丢弃模块12,还用于丢弃该一组PDCP SDU对应的多个PDCP PDU。
可选的,上述原始数据为PDCP PDU。
可选的,上述丢弃模块12,还用于丢弃该一组PDCP PDU对应的PDCP SDU,其中一个PDCP PDU对应一个PDCP SDU。
可选的,上述通信装置还包括收发模块13。该收发模块13,用于向分布式单元发送指示信息,该指示信息用于指示该分布式单元丢弃该一组原始数据进行网络编码功能的处理生成的该多个第一数据包。其中,该指示信息包括以下中的一项:该多个第一数据包各自的标识,该多个第一数据包的标识所属的范围,该多个第一数据包所属的编码块的标识,该多个第一数据包各自对应的编码系数因子的标识。
可选的,上述通信装置是分布式单元或用于分布式单元的芯片。
可选的,上述通信装置是终端设备或用于终端设备的芯片。上述通信装置包括PDCP层、NC层、以及RLC层,该NC层位于该PDCP层和RLC层之间。上述通信装置还包括关联模块14。该关联模块14,用于为上述一组PDCP PDU关联一个定时器;上述丢弃模块12,具体用于若该一组PDCP PDU关联的定时器超时,丢弃以下中的至少一项:该一组PDCP PDU,该一组PDCP PDU进行网络编码功能的处理生成的该多个第一数据包。
可选的,上述通信装置是终端设备或用于终端设备的芯片。上述通信装置包括PDCP层、NC层、以及RLC层,该NC层位于该PDCP层和RLC层之间。上述通信装置还包括指示模块15。该指示模块15,用于将该一组PDCP PDU进行网络编码功能的处理生成的全部或部分第一数据包传输至该RLC层后,指示该RLC层丢弃传输至该RLC层的该第一数据包;上述丢弃模块12,还用于丢弃从该NC层接收到的该第一数据包。
可选的,上述通信装置包括PDCP层。上述通信装置还包括关闭模块16。该关闭模块16, 用于关闭该PDCP层中PDCP SDU与丢弃定时器的关联功能。
其中,上述获取模块11,上述丢弃模块12,上述关联模块14,上述指示模块15,以及上述关闭模块16中的至少两个模块可以集成为一个模块,例如处理模块。
应理解,该通信装置可对应执行前述实施例一,并且该通信装置中的各个单元的上述操作或功能分别为了实现前述实施例一中通信装置的相应操作,其技术效果参见前述实施例一中的技术效果,为了简洁,在此不再赘述。
参见图19,图19是本申请实施例提供的通信装置的另一结构示意图。该通信装置可以为终端设备或者设置于终端设备中的芯片或电路;该通信装置还可以是网络设备或设置于网络设备中的芯片或电路。如图19所示,该通信装置包括:编码模块21和丢弃模块22。
编码模块21,用于对原始数据进行网络编码功能的处理生成多个第一数据包,一个该第一数据包关联一个定时器,该多个第一数据包包括系统包和冗余包,或者,该多个第一数据包包括原数据包和冗余包;丢弃模块22,用于若该多个第一数据包中的第一数据包i关联的定时器超时,丢弃该第一数据包i。
可选的,上述原始数据包括一个或者多个PDCP SDU,一个该第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头。上述丢弃模块22,还用于丢弃该第一数据包i对应的PDCP PDU。
可选的,上述丢弃模块22,还用于丢弃该第一数据包i对应的PDCP SDU,其中一个该第一数据包包对应一个或多个PDCP SDU。
可选的,上述原始数据包括一个或者多个PDCP PDU。
可选的,上述通信装置还包括收发模块23。该收发模块23,用于向分布式单元发送指示信息,该指示信息用于指示该分布式单元丢弃该第一数据包i。其中,该指示信息中包括该第一数据包i的标识;或者包括该第一数据包i对应的编码系数因子的标识。
可选的,上述通信装置是分布式单元或用于分布式单元的芯片。
可选的,上述通信装置是终端设备或用于终端设备的芯片。上述通信装置包括PDCP层、NC层、以及RLC层,该NC层位于该PDCP层和RLC层之间。上述通信装置还包括指示模块24。该指示模块24,用于将该第一数据包i传输至该RLC层后,指示该RLC层丢弃该编码包;上述丢弃模块22,还用于丢弃从该NC层接收到的该第一数据包i。
可选的,上述通信装置包括PDCP层。上述通信装置还包括关闭模块25。该关闭模块25,用于关闭该PDCP层中PDCP SDU与丢弃定时器的关联功能。
其中,上述编码模块21,上述丢弃模块22,上述指示模块24,以及上述关闭模块25中的至少两个模块可以集成为一个模块,例如处理模块。
应理解,该通信装置可对应执行前述实施例二,并且该通信装置中的各个单元的上述操作或功能分别为了实现前述实施例二中通信装置的相应操作,其技术效果参见前述实施例二中的技术效果,为了简洁,在此不再赘述。
参见图20,图20是本申请实施例提供的发送PDCP实体的结构示意图。该发送PDCP实体可以为用于终端设备或者设置于终端设备中的芯片或电路。该发送PDCP实体还可以为用于网络设备或者设置于网络设备中的芯片或电路。如图20所示,该发送PDCP实体包括:丢弃模块31和编码模块32。
一种设计中,丢弃模块31,用于若PDCP SDU关联的定时器超时,丢弃该PDCP SDU, 其中一个PDCP SDU关联一个定时器;编码模块32,用于对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,该多个第一数据包包括系统包和冗余包,或者,该多个第一数据包包括原数据包和冗余包,一个该第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头;该丢弃模块31,还用于若一个PDCP PDU对应的N个PDCP SDU关联的N个定时器中的K个定时器超时,丢弃该PDCP PDU。其中,K为小于或等于N的正整数,且K大于预设阈值。一个PDCP PDU对应的N个PDCP SDU包括:该一个PDCP PDU包括的第一数据包是系统包或原数据包,则该一个PDCP PDU包括的第一数据包的数据来自该N个PDCP SDU中的每个PDCP SDU;或该一个PDCP PDU包括的第一数据包是冗余包,则该一个PDCP PDU包括的与第一数据包满足网络编码关系的原数据包来自该N个PDCP SDU中的每个PDCP SDU。
可选的,上述丢弃模块31,还用于丢弃该一个或多个PDCP SDU对应的多个第一数据包中的全部或部分。
应理解,该种设计中发送PDCP实体可对应执行前述实施例三,并且该发送PDCP实体中的各个单元的上述操作或功能分别为了实现前述实施例三中发送PDCP实体的相应操作,其技术效果参见前述实施例三中的技术效果,为了简洁,在此不再赘述。
另一种设计中,编码模块32,用于对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,该多个第一数据包包括系统包和冗余包,或者,该多个第一数据包包括原数据包和冗余包,该一个或多个PDCP SDU对应该多个第一数据包,一个该第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头,一个PDCP SDU对应多个PDCP PDU,该一个或多个PDCP SDU中的一个PDCP SDU关联一个定时器;丢弃模块31,用于若该一个或多个PDCP SDU中的第一PDCP SDU关联的定时器超时,丢弃以下中的至少一项:该第一PDCP SDU,该第一PDCP SDU对应的多个PDCP PDU。
可选的,上述丢弃模块31,还用于丢弃该第一PDCP SDU对应的多个第一数据包中的全部或部分。
应理解,该种设计中的发送PDCP实体可对应执行前述实施例四,并且该发送PDCP实体中的各个单元的上述操作或功能分别为了实现前述实施例四中发送PDCP实体的相应操作,其技术效果参见前述实施例四中的技术效果,为了简洁,在此不再赘述。
其中,上述两种设计中的上述丢弃模块31和上述编码模块32可以集成为一个模块,例如处理模块。
参见图21,图21是本申请实施例提供的通信装置1000的结构示意图。如图21所示,本申请实施例提供的通信装置1000可用于实现上述方法实施例中描述的方法,可以参见上述方法实施例中的说明。该通信装置1000可以是前述通信装置和前述发送PDCP实体中的任意一种。
通信装置1000包括一个或多个处理器1001。处理器1001可以是通用处理器或者专用处理器等。例如可以是基带处理器、或中央处理器。基带处理器可以用于对通信协议以及通信数据进行处理,中央处理器可以用于对装置(如,UE、基站或芯片等)进行控制,执行软件程序,处理软件程序的数据。该装置可以包括收发单元,用以实现信号的输入(接收)和输出(发送)。例如,装置可以为芯片,该收发单元可以是芯片的输入和/或输出电路,或者通信接口。该芯片可以用于终端设备(如UE)或接入网设备(比如基站)。又如,装置可以为终端设备(比如UE)或接入网设备(比如基站),该收发单元可以为收发器,射频芯片等。
通信装置1000包括一个或多个处理器1001,该一个或多个处理器1001可实现前述实施例一或二中通信装置的方法、或实现前述实施例三或四中发送PDCP实体的方法。
可选的,处理器1001除了实现前述任一实施例的方法,还可以实现其他功能。
可选的,一种设计中,处理器1001也可以包括指令1003,所述指令可以在所述处理器上被运行,使得通信装置1000执行上述任一方法实施例中描述的方法。
在又一种可能的设计中,通信装置1000也可以包括电路,所述电路可以实现前述实施例一或二中通信装置的功能、或实现前述实施例三或四中发送PDCP实体的功能。
在又一种可能的设计中,通信装置1000中可以包括一个或多个存储器1002,其上存有指令1004,所述指令可在所述处理器上被运行,使得通信装置1000执行上述任一方法实施例中描述的方法。可选的,所述存储器中还可以存储有数据。可选的处理器中也可以存储指令和/或数据。例如,所述一个或多个存储器1002可以存储上述实施例中所描述的编码包,或者上述实施例中所涉及的其他信息。所述处理器和存储器可以单独设置,也可以集成在一起。
在又一种可能的设计中,通信装置1000还可以包括收发单元1005以及天线1006,或者,包括通信接口。收发单元1005可以称为收发机、收发电路、或者收发器等,用于通过天线1006实现装置的收发功能。所述通信接口(图中未示出),可以用于核心网设备和接入网设备,或是,接入网设备和接入网设备之间的通信。可选的,该通信接口可以为有线通信的接口,比如光纤通信的接口。
处理器1001可以称为处理单元,对装置(比如通信设备)进行控制。
应理解,在本申请实施例中的处理器可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
上述实施例,可以全部或部分地通过软件、硬件(如电路)、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质 传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线,例如光纤,或是无线,例如红外、无线、微波等,方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
本申请实施例还提供一种计算机程序产品,该计算机程序产品包括计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行前述实施例一或二所描述的通信装置的方法步骤;或者当该计算机程序代码在计算机上运行时,使得该计算机执行前述实施例三或四所描述的发送PDCP实体的方法步骤。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有程序指令,当其在计算机上运行时,使得该计算机执行前述实施例一或二所描述的通信装置的方法步骤;或者当该计算机程序代码在计算机上运行时,使得该计算机执行前述实施例三或四所描述的发送PDCP实体的方法步骤。
本申请实施例还提供一种装置,该装置可以为芯片。该芯片包括处理器。该处理器用于读取并执行存储器中存储的计算机程序,以执行前述任一实施例的任意可能的实现方式中的方法。可选的,该芯片还包括存储器,该存储器与该处理器通过电路或电线连接。进一步可选的,该芯片还包括通信接口,该处理器与该通信接口连接。该通信接口用于接收待处理的数据和/或信号,该处理器从该通信接口获取该数据和/或信号,并对该数据和/或信号进行处理,并通过该通信接口输出处理结果。该通信接口可以是输入输出接口。
可选的,上述的处理器与存储器可以是物理上相互独立的单元,或者,存储器也可以和处理器集成在一起。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,该流程可以由计算机程序来指令相关的硬件完成,该程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。而前述的存储介质包括:ROM或随机存储记忆体RAM、磁碟或者光盘等各种可存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (28)

  1. 一种网络编码场景下的超时丢包方法,其特征在于,包括:
    通信装置获取一组原始数据,所述一组原始数据关联一个定时器,所述一组原始数据用于一起进行网络编码功能的处理生成多个第一数据包,所述多个第一数据包包括系统包和冗余包,或者,所述多个第一数据包包括原数据包和冗余包;
    若所述一组原始数据关联的定时器超时,所述通信装置丢弃以下中的至少一项:所述一组原始数据,所述一组原始数据进行网络编码功能的处理生成的所述多个第一数据包。
  2. 根据权利要求1所述的方法,其特征在于,所述原始数据为分组数据汇聚协议PDCP服务数据单元SDU。
  3. 根据权利要求2所述的方法,其特征在于,所述一组PDCP SDU对应所述多个第一数据包,一个所述第一数据包对应一个PDCP协议数据单元PDU,一个PDCP PDU包括一个所述第一数据包和PDCP头;
    所述方法还包括:
    所述通信装置丢弃所述一组PDCP SDU对应的多个PDCP协议数据单元PDU。
  4. 根据权利要求1所述的方法,其特征在于,所述原始数据为PDCP PDU。
  5. 根据权利要求4所述的方法,其特征在于,所述方法还包括:
    所述通信装置丢弃所述一组PDCP PDU对应的PDCP SDU,其中一个PDCP PDU对应一个PDCP SDU。
  6. 根据权利要求4或5所述的方法,其特征在于,所述通信装置为集中式单元或用于所述集中式单元的芯片;
    所述方法还包括:
    所述通信装置向分布式单元发送指示信息,所述指示信息用于指示所述分布式单元丢弃所述一组原始数据进行网络编码功能的处理生成的所述多个第一数据包。
  7. 根据权利要求6所述的方法,其特征在于,所述指示信息包括以下中的一项:所述多个第一数据包各自的标识,所述多个第一数据包的标识所属的范围,所述多个第一数据包所属的编码块的标识,所述多个第一数据包各自对应的编码系数因子的标识。
  8. 根据权利要求4或5所述的方法,其特征在于,所述通信装置为分布式单元或用于所述分布式单元的芯片。
  9. 根据权利要求4或5所述的方法,其特征在于,所述通信装置为终端设备或用于所述终端设备的芯片,所述通信装置包括分组数据汇聚协议PDCP层、网络编码NC层、以及无线链路控制RLC层,所述通信装置的NC层位于所述通信装置的PDCP层和RLC层之间;
    所述通信装置获取一组原始数据之后,所述方法还包括:
    所述通信装置的NC层为所述一组PDCP PDU关联一个定时器;
    所述若所述一组原始数据关联的定时器超时,所述通信装置丢弃以下中的至少一项:所述一组原始数据,所述一组原始数据进行网络编码功能的处理生成的所述多个第一数据包,包括:
    若所述一组PDCP PDU关联的定时器超时,所述通信装置的NC层丢弃以下中的至少一项:所述一组PDCP PDU,所述一组PDCP PDU进行网络编码功能的处理生成的所述多个第一数据包。
  10. 根据权利要求4、5、9中任一项所述的方法,其特征在于,所述通信装置为终端设备或用于所述终端设备的芯片,所述通信装置包括PDCP层、NC层、以及RLC层,所述通信装置的NC层位于所述通信装置的PDCP层和RLC层之间;
    所述方法还包括:
    所述通信装置将所述一组PDCP PDU进行网络编码功能的处理生成的全部或部分第一数据包传输至所述通信装置的RLC层后,所述通信装置的NC层指示所述通信装置的RLC层丢弃传输至所述RLC层的所述第一数据包;
    所述通信装置的RLC层丢弃从所述通信装置的NC层接收到的所述第一数据包。
  11. 根据权利要求1-10中任一项所述的方法,其特征在于,所述通信装置包括PDCP层,所述方法还包括:
    所述通信装置关闭所述通信装置的PDCP层中PDCP SDU与丢弃定时器的关联功能。
  12. 一种网络编码场景下的超时丢包方法,其特征在于,包括:
    通信装置对原始数据进行网络编码功能的处理生成多个第一数据包,一个所述第一数据包关联一个定时器,所述多个第一数据包包括系统包和冗余包,或者,所述多个第一数据包包括原数据包和冗余包;
    若所述多个第一数据包中的第一数据包i关联的定时器超时,所述通信装置丢弃所述第一数据包i。
  13. 根据权利要求12所述的方法,其特征在于,所述原始数据包括一个或者多个PDCP SDU,一个所述第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头;
    所述方法还包括:
    所述通信装置丢弃所述第一数据包i对应的PDCP PDU。
  14. 根据权利要求13所述的方法,其特征在于,所述方法还包括:
    所述通信装置丢弃所述第一数据包i对应的PDCP SDU,其中一个所述第一数据包对应一个或多个PDCP SDU。
  15. 根据权利要求12所述的方法,其特征在于,所述原始数据包括一个或者多个PDCP PDU。
  16. 根据权利要求15所述的方法,其特征在于,所述通信装置为集中式单元或用于所述集中式单元的芯片;
    所述方法还包括:
    所述通信装置向分布式单元发送指示信息,所述指示信息用于指示所述分布式单元丢弃所述第一数据包i。
  17. 根据权利要求16所述的方法,其特征在于,所述指示信息中包括所述第一数据包i的标识或包括所述第一数据包i对应的编码系数因子的标识。
  18. 根据权利要求15所述的方法,其特征在于,所述通信装置为分布式单元或用于所述分布式单元的芯片。
  19. 根据权利要求15所述的方法,其特征在于,所述通信装置为终端设备或用于所述终端设备的芯片,所述通信装置包括PDCP层、NC层以及RLC层,所述通信装置的NC层位于所述通信装置的PDCP层和RLC层之间;
    所述方法还包括:
    所述通信装置的NC层将所述第一数据包i传输至所述通信装置的RLC层后,所述通信装置的NC层指示所述通信装置的RLC层丢弃所述第一数据包i;
    所述通信装置的RLC层丢弃从所述通信装置的NC层接收到的所述第一数据包i。
  20. 根据权利要求12-19中任一项所述的方法,其特征在于,所述通信装置包括PDCP层,所述方法还包括:
    所述通信装置关闭所述通信装置的PDCP层中PDCP SDU与丢弃定时器的关联功能。
  21. 一种网络编码场景下的超时丢包方法,其特征在于,包括:
    若PDCP SDU关联的定时器超时,发送PDCP实体丢弃所述PDCP SDU,其中一个PDCP SDU关联一个定时器;
    所述发送PDCP实体对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,所述多个第一数据包包括系统包和冗余包,或者,所述多个第一数据包包括原数据包和冗余包,一个所述第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头;
    若所述一个PDCP PDU对应的N个PDCP SDU关联的N个定时器中的K个定时器超时,所述发送PDCP实体丢弃所述PDCP PDU,所述K为小于或等于N的正整数,且所述K大于预设阈值;
    其中所述一个PDCP PDU对应的N个PDCP SDU包括:
    所述一个PDCP PDU包括的第一数据包是系统包或原数据包,则所述一个PDCP PDU包括的第一数据包的数据来自所述N个PDCP SDU中的每个PDCP SDU;或
    所述一个PDCP PDU包括的第一数据包是冗余包,则所述一个PDCP PDU包括的与第一数据包满足网络编码关系的原数据包来自所述N个PDCP SDU中的每个PDCP SDU。
  22. 根据权利要求21所述的方法,其特征在于,所述发送PDCP实体对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包之后,所述方法还包括:
    所述发送PDCP实体丢弃所述一个或多个PDCP SDU对应的多个第一数据包中的全部或部分。
  23. 一种网络编码场景下的超时丢包方法,其特征在于,包括:
    发送PDCP实体对一个或多个PDCP SDU进行网络编码功能的处理生成多个第一数据包,所述多个第一数据包包括系统包和冗余包,或者,所述多个第一数据包包括原数据包和冗余包,所述一个或多个PDCP SDU对应所述多个第一数据包,一个所述第一数据包对应一个PDCP PDU,一个PDCP PDU包括一个第一数据包和PDCP头,一个PDCP SDU对应多个PDCP PDU,所述一个或多个PDCP SDU中的一个PDCP SDU关联一个定时器;
    若所述一个或多个PDCP SDU中的第一PDCP SDU关联的定时器超时,所述发送PDCP实体丢弃以下中的至少一项:所述第一PDCP SDU,所述第一PDCP SDU对应的多个PDCP PDU。
  24. 根据权利要求23所述的方法,其特征在于,所述方法还包括:
    所述发送PDCP实体丢弃所述第一PDCP SDU对应的多个第一数据包中的全部或部分。
  25. 一种通信装置,其特征在于,包括用于执行权利要求1-20中任一项所述方法的模块或单元。
  26. 一种发送PDCP实体,其特征在于,包括用于执行权利要求21-24中任一项所述方法的模块或单元。
  27. 一种通信装置,其特征在于,包括:
    一个或多个处理器,所述一个或多个处理器与一个或多个存储器耦合;
    其中,所述一个或多个存储器用于存储计算机程序,所述一个或多个处理器用于执行存储于所述一个或多个存储器中的计算机程序,以使得所述通信装置执行如权利要求1-24中任一项所述的方法。
  28. 一种可读存储介质,其特征在于,用于存储程序,所述程序被一个或多个处理器执行,使得包括所述一个或多个处理器的装置执行如权利要求1-24中任一项所述的方法。
PCT/CN2022/107865 2021-07-30 2022-07-26 网络编码场景下的超时丢包方法、装置及可读存储介质 WO2023005909A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110874205.2 2021-07-30
CN202110874205.2A CN115696435A (zh) 2021-07-30 2021-07-30 网络编码场景下的超时丢包方法、装置及可读存储介质

Publications (1)

Publication Number Publication Date
WO2023005909A1 true WO2023005909A1 (zh) 2023-02-02

Family

ID=85057921

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/107865 WO2023005909A1 (zh) 2021-07-30 2022-07-26 网络编码场景下的超时丢包方法、装置及可读存储介质

Country Status (2)

Country Link
CN (1) CN115696435A (zh)
WO (1) WO2023005909A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024087585A1 (en) * 2023-05-12 2024-05-02 Lenovo (Beijing) Limited Method and apparatus of data transmission using protocol data unit set discard timers

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200100142A1 (en) * 2018-09-21 2020-03-26 Samsung Electronics Co., Ltd. Methods and apparatuses for transmitting and receiving data in wireless communication system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200100142A1 (en) * 2018-09-21 2020-03-26 Samsung Electronics Co., Ltd. Methods and apparatuses for transmitting and receiving data in wireless communication system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ERICSSON: "Details of SDU Discard Function", 3GPP DRAFT; R2-080230, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, vol. RAN WG2, no. Sevilla, Spain; 20080108, 8 January 2008 (2008-01-08), Mobile Competence Centre ; 650, route des Lucioles ; F-06921 Sophia-Antipolis Cedex ; France , XP050138097 *
SAMSUNG: "Text Proposal for Ensuring delay target", 3GPP DRAFT; R3-151109, 3RD GENERATION PARTNERSHIP PROJECT (3GPP), MOBILE COMPETENCE CENTRE ; 650, ROUTE DES LUCIOLES ; F-06921 SOPHIA-ANTIPOLIS CEDEX ; FRANCE, vol. RAN WG3, no. Fukuoka, Japan; 20150525 - 20150529, 16 May 2015 (2015-05-16), Mobile Competence Centre ; 650, route des Lucioles ; F-06921 Sophia-Antipolis Cedex ; France , XP050972199 *

Also Published As

Publication number Publication date
CN115696435A (zh) 2023-02-03

Similar Documents

Publication Publication Date Title
WO2021012727A1 (zh) 数据传输方法、装置和存储介质
WO2022001367A1 (zh) 一种编码方法及装置
WO2017101972A1 (en) Data retransmission
US20220368494A1 (en) Uplink re-transmission with compact memory usage
US12003322B2 (en) Data transmission method and communication apparatus
US20220416934A1 (en) Data processing method and apparatus
WO2021013026A1 (zh) 数据单元的发送方法、接收方法及装置
WO2023005909A1 (zh) 网络编码场景下的超时丢包方法、装置及可读存储介质
WO2018103637A1 (zh) 数据处理的方法、发送设备和接收设备
JP2022002406A (ja) チャネル符号化に用いるue、基地局における方法及び装置
WO2022228467A1 (zh) 数据传输方法、装置及可读存储介质
JP7036118B2 (ja) 再送制御方法、無線端末、無線基地局
TWI826994B (zh) 一種實體層控制資訊的傳輸方法和裝置
WO2021259042A1 (zh) 通信系统中数据处理方法和装置
WO2022156416A1 (zh) 一种通信方法及装置
WO2023284666A1 (zh) 一种网络编码功能的配置方法以及相关装置
WO2023005885A1 (zh) 一种切换场景的数据转发方法及装置
WO2023016506A1 (zh) 传输数据的方法及通信装置
WO2023125341A1 (zh) 一种通信方法及装置
WO2023046029A1 (zh) 数据传输方法、装置及可读存储介质
WO2023273973A1 (zh) 一种通信方法及通信装置
WO2022227845A1 (zh) 一种数据处理方法、装置和系统
WO2023123515A1 (zh) 数据处理方法、终端设备和网络设备
WO2022237673A1 (zh) 一种处理数据的方法和装置
WO2022236752A1 (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: 22848514

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE