CN117641444A - 数据处理方法及装置 - Google Patents
数据处理方法及装置 Download PDFInfo
- Publication number
- CN117641444A CN117641444A CN202210952523.0A CN202210952523A CN117641444A CN 117641444 A CN117641444 A CN 117641444A CN 202210952523 A CN202210952523 A CN 202210952523A CN 117641444 A CN117641444 A CN 117641444A
- Authority
- CN
- China
- Prior art keywords
- sequence number
- entity
- variable
- data unit
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 14
- 238000000034 method Methods 0.000 claims abstract description 135
- 238000012545 processing Methods 0.000 claims abstract description 91
- 238000004891 communication Methods 0.000 claims description 127
- 230000015654 memory Effects 0.000 claims description 31
- 238000004590 computer program Methods 0.000 claims description 15
- 230000008569 process Effects 0.000 abstract description 34
- 230000006870 function Effects 0.000 description 29
- 230000005540 biological transmission Effects 0.000 description 28
- 239000012634 fragment Substances 0.000 description 27
- 238000010586 diagram Methods 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 9
- 230000011664 signaling Effects 0.000 description 8
- 238000007667 floating Methods 0.000 description 7
- 230000001960 triggered effect Effects 0.000 description 7
- 230000008878 coupling Effects 0.000 description 5
- 238000010168 coupling process Methods 0.000 description 5
- 238000005859 coupling reaction Methods 0.000 description 5
- 230000008521 reorganization Effects 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 239000002699 waste material Substances 0.000 description 4
- 102100022734 Acyl carrier protein, mitochondrial Human genes 0.000 description 3
- 101000678845 Homo sapiens Acyl carrier protein, mitochondrial Proteins 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 238000005265 energy consumption Methods 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000000429 assembly Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/06—Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
一种数据处理方法及装置,该方法包括:接收端获取第一指示信息,然后基于该第一指示信息将接收端的实体维护的第一变量的取值更新为大于第一指示信息中所指示的最大序号,该第一变量可以用于表示序号大于或等于第一变量的取值的数据单元待接收端的实体处理;或者,基于第一指示信息将接收端的实体维护的第一变量的取值更新为等于第一指示信息中所指示的最大序号,该第一变量可以用于表示序号大于第一变量的取值的数据单元待接收端的实体处理。该方法可以有效改善由于丢弃数据单元而导致相应实体的进程受限的情况,减少相应实体对数据单元的处理时延。
Description
技术领域
本申请实施例涉及通信技术领域,尤其涉及一种数据处理方法及装置。
背景技术
第五代(5th-generation,5G)移动通信***的用户面协议栈可以包括服务数据适配协议(service data adaptation protocol,SDAP)、分组数据汇聚协议(packet dataconvergence protocol,PDCP)、无线链路控制(radio link control,RLC)、媒体接入控制(medium access control,MAC)以及物理层(physical layer,PHY)。
其中,为了数据传输的保密性,在无线空口传输的数据需要进行安全保护,包括加密、完整性保护等操作,在5G新无线(new radio,NR)中,安全保护功能可以在PDCP层进行。RLC层主要负责将来自PDCP层的RLC服务数据单元(service data unit,SDU)分割为适当大小的RLC协议数据单元(protocol data unit,PDU)。示例性的,PDCP实体和RLC实体中的至少一项在处理SDU(或PDU)的过程中,会存在丢弃SDU(或PDU)的情况。
然而,丢弃的SDU(或PDU)会影响相应实体的处理进程。
发明内容
本申请实施例提供一种数据处理方法及装置,可以有效改善由于丢弃数据单元而导致相应实体的进程受限的情况,有效减少了相应实体对数据单元的处理时延。
第一方面,本申请实施例提供一种数据处理方法,所述方法包括:
接收端获取第一指示信息,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号;将所述接收端的实体维护的第一变量的取值更新为大于所述最大序号,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述接收端的实体处理;或者,将所述接收端的实体维护的第一变量的取值更新为等于所述最大序号,所述第一变量用于表示序号大于所述第一变量的取值的数据单元待所述接收端的实体处理。
不管是发送端丢弃一个或多个数据单元,还是接收端丢弃一个或多个数据单元,接收端的实体都需要根据其接收到的数据单元的序号来维护第一变量。如果出现丢弃数据单元的情况,但是接收端的实体未能及时获取已经丢弃的数据单元的最大序号,无法根据丢弃的数据单元更新其维护的第一变量,则会导致接收端的实体向上层递交数据单元的进程受限,增加处理时延。通过本申请实施例提供的方案,接收端根据第一指示信息中所指示的最大序号将其维护的第一变量的取值更新为大于该最大序号;或者,接收端根据第一指示信息中所指示的最大序号将其维护的第一变量的取值更新为等于该最大序号,由此,有效改善了接收端的实体由于受到丢弃的数据单元的影响而导致处理数据单元的进程缓慢的情况,有效提高了接收端处理进行的进度。
在一种可能的实现方式中,所述多个数据单元的序号是连续的。
在一种可能的实现方式中,所述方法还包括:在所述第一变量的取值更新为大于所述最大序号的情况下,丢弃序号小于所述第一变量的取值的数据单元;或者,在所述第一变量的取值更新为等于所述最大序号的情况下,丢弃序号小于或等于所述第一变量的取值的数据单元。
本申请实施例中,通过丢弃序号小于或等于第一变量的取值的数据单元,可以准确地清除接收端的实体的缓存。
在一种可能的实现方式中,所述将所述接收端的实体维护的第一变量的取值更新为大于所述最大序号包括:将所述接收端的实体维护的第一变量的取值更新为大于所述最大序号,且第一个未完成重组的数据单元的序号;或者,将所述接收端的实体维护的第一变量的取值更新为大于所述最大序号,且第一个未递交到上层的不连续的数据单元的序号。
在一种可能的实现方式中,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述接收端的实体处理包括:所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述接收端的实体进行重组;或者,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述接收端的实体递交到上层。
在一种可能的实现方式中,所述第一变量用于表示序号大于所述第一变量的取值的数据单元待所述接收端的实体处理包括:所述第一变量用于表示大于所述第一变量的取值的数据单元待所述接收端的实体进行重组;或者,所述第一变量用于表示序号大于所述第一变量的取值的数据单元待所述接收端的实体递交到上层。
在一种可能的实现方式中,所述接收端获取第一指示信息包括:所述接收端接收所述第一指示信息。
本申请实施例中,发送端的实体丢弃一个或多个数据单元时,可以向接收端发送第一指示信息。从而接收端在接收到第一指示信息时,可以基于该第一指示信息及时有效地更新第一变量的取值,保证接收端处理数据的进程能够顺利进行。
在一种可能的实现方式中,所述接收端获取第一指示信息包括:所述接收端确定丢弃所述一个或多个数据单元,并确定所述第一指示信息。
本申请实施例中,接收端的实体确定丢弃一个或多个数据单元时,该接收的实体可以自主确定第一指示信息,从而可使得该接收端的实体能够及时更新其第一变量的取值,保证接收端处理数据的进程能够顺序进行。
在一种可能的实现方式中,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号包括:所述第一指示信息用于指示丢弃的一个或多个数据单元所属的数据单元集合的序号。
本申请实施例中,该一个或多个数据单元可以属于一个数据单元集合,或者,该多个数据单元可以属于多个数据单元集合。由此,第一指示信息可以用于指示丢弃的数据单元集合的序号。
在一种可能的实现方式中,所述方法还包括:获取丢弃的数据单元集合的序号;根据所述丢弃的数据单元集合的序号确定所述多个数据单元的最大序号。
在一种可能的实现方式中,所述接收端的实体包括分组数据汇聚协议PDCP实体、无线链路控制RLC实体中的至少一项。
在一种可能的实现方式中,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号包括:所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序列号(sequence number,SN),或者,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大计数值。
在一种可能的实现方式中,所述方法还包括:所述接收端的实体发送第二指示信息,所述第二指示信息用于指示发送端的实体丢弃所述一个或多个数据单元;或者,所述第二指示信息用于指示发送端的实体丢弃与所述一个或多个数据单元对应的数据单元集合。
本申请实施例中,接收端通过向发送端发送第二指示信息,可使得发送端的实体能够基于该第二指示信息清除缓存。
第二方面,本申请实施例提供一种数据处理方法,所述方法包括:在丢弃数据单元集合的情况下,触发缓存状态报告(buffer status report,BSR),所述缓存状态报告包括丢弃所述数据单元集合之后逻辑信道队列中缓存的数据量;发送所述BSR。
在一种可能的实现方式中,所述在丢弃数据单元集合的情况下,触发缓存状态报告BSR包括:在丢弃数据单元集合的情况下,且逻辑信道或逻辑信道组的缓存数据量的变量值大于或等于第一阈值的情况下,触发所述BSR。
第三方面,本申请实施例提供一种通信装置,所述装置包括:
处理单元,用于获取第一指示信息,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号;所述处理单元,还用于将所述通信装置的实体维护的第一变量的取值更新为大于所述最大序号,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述通信装置的实体处理;或者,所述处理单元,还用于将所述通信装置的实体维护的第一变量的取值更新为等于所述最大序号,所述第一变量用于表示大于所述第一变量的取值的数据单元待所述通信装置的实体处理。
在一种可能的实现方式中,所述处理单元,还用于在所述第一变量的取值更新为大于所述最大序号的情况下,丢弃序号小于所述第一变量的取值的数据单元;或者,在所述第一变量的取值更新为等于所述最大序号的情况下,丢弃序号小于或等于所述第一变量的取值的数据单元。
在一种可能的实现方式中,所述处理单元,具体用于将所述通信装置的实体维护的第一变量的取值更新为大于所述最大序号,且第一个未完成重组的数据单元的序号;或者,将所述通信装置的实体维护的第一变量的取值更新为大于所述最大序号,且第一个未递交到上层的不连续的数据单元的序号。
在一种可能的实现方式中,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述通信装置的实体进行重组;或者,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述通信装置的实体递交到上层。
在一种可能的实现方式中,所述第一变量用于表示大于所述第一变量的取值的数据单元待所述通信装置的实体进行重组;或者,所述第一变量用于表示序号大于所述第一变量的取值的数据单元待所述通信装置的实体递交到上层。
在一种可能的实现方式中,所述装置还包括收发单元,所述处理单元,具体用于通过所述收发单元接收所述第一指示信息。
在一种可能的实现方式中,所述处理单元,具体用于确定丢弃所述一个或多个数据单元,并确定所述第一指示信息。
在一种可能的实现方式中,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号包括:所述第一指示信息用于指示丢弃的一个或多个数据单元所属的数据单元集合的序号。
在一种可能的实现方式中,所述处理单元,还用于获取丢弃的数据单元集合的序号;以及根据所述丢弃的数据单元集合的序号确定所述多个数据单元的最大序号。
在一种可能的实现方式中,所述通信装置的实体包括分组数据汇聚协议PDCP实体、无线链路控制RLC实体中的至少一项。
在一种可能的实现方式中,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号包括:所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序列号SN,或者,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大计数值。
在一种可能的实现方式中,所述收发单元,还用于发送第二指示信息,所述第二指示信息用于指示发送端的实体丢弃所述一个或多个数据单元;或者,所述第二指示信息用于指示发送端的实体丢弃与所述一个或多个数据单元对应的数据单元集合。
第四方面,本申请实施例提供一种通信装置,所述装置包括:
处理单元,用于在丢弃数据单元集合的情况下,触发缓存状态报告(bufferstatus report,BSR),所述缓存状态报告包括丢弃所述数据单元集合之后逻辑信道队列中缓存的数据量;
收发单元,用于发送所述BSR。
在一种可能的实现方式中,所述在丢弃数据单元集合的情况下,触发缓存状态报告BSR包括:在丢弃数据单元集合的情况下,且逻辑信道或逻辑信道组的缓存数据量的变量值大于或等于第一阈值的情况下,触发所述BSR。
第五方面,本申请实施例提供一种通信装置,所述通信装置包括处理器,用于执行上述第一方面或第一方面的任意可能的实现方式所示的方法。或者,所述处理器用于执行存储器中存储的程序,当所述程序被执行时,上述第一方面或第一方面的任意可能的实现方式所示的方法被执行。
在一种可能的实现方式中,所述存储器位于所述通信装置之外。
在一种可能的实现方式中,所述存储器位于所述通信装置之内。
本申请实施例中,处理器和存储器还可以集成于一个器件中,即处理器和存储器还可以被集成在一起。
在一种可能的实现方式中,所述通信装置还包括收发器,所述收发器,用于接收信号和/或发送信号。示例性的,该收发器可以用于接收数据单元。示例性的,该收发器可以用于接收第一指示信息。示例性的,该收发器可以用于发送第二指示信息。
第六方面,本申请实施例提供一种通信装置,所述通信装置包括处理器,用于执行上述第二方面或第二方面的任意可能的实现方式所示的方法。或者,所述处理器用于执行存储器中存储的程序,当所述程序被执行时,上述第二方面或第二方面的任意可能的实现方式所示的方法被执行。
在一种可能的实现方式中,所述存储器位于所述通信装置之外。
在一种可能的实现方式中,所述存储器位于所述通信装置之内。
本申请实施例中,处理器和存储器还可以集成于一个器件中,即处理器和存储器还可以被集成在一起。
在一种可能的实现方式中,所述通信装置还包括收发器,所述收发器,用于接收信号和/或发送信号。示例性的,该收发器可以用于接收数据单元。示例性的,该收发器可以用于发送BSR。
第七方面,本申请实施例提供一种通信装置,所述通信装置包括逻辑电路和接口,所述逻辑电路和所述接口耦合;所述接口,用于获取第一指示信息,所述逻辑电路,用于根据所述第一指示信息将所述通信装置的实体维护的第一变量的取值更新为大于或等于最大序号。
第八方面,本申请实施例提供一种通信装置,所述通信装置包括逻辑电路和接口,所述逻辑电路用于丢弃数据单元集合的情况下,触发BSR;所述接口,用于输出所述BSR。
第九方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,当其在计算机上运行时,使得上述第一方面或第一方面的任意可能的实现方式所示的方法被执行。
第十方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,当其在计算机上运行时,使得上述第二方面或第二方面的任意可能的实现方式所示的方法被执行。
第十一方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机代码(也可以称为指令),当其在计算机上运行时,使得上述第一方面或第一方面的任意可能的实现方式所示的方法被执行。
第十二方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括计算机程序或计算机代码(也可以称为指令),当其在计算机上运行时,使得上述第二方面或第二方面的任意可能的实现方式所示的方法被执行。
第十三方面,本申请实施例提供一种计算机程序,所述计算机程序在计算机上运行时,上述第一方面或第一方面的任意可能的实现方式所示的方法被执行。
第十四方面,本申请实施例提供一种计算机程序,所述计算机程序在计算机上运行时,上述第二方面或第二方面的任意可能的实现方式所示的方法被执行。
第十五方面,本申请实施例提供一种通信***,所述通信***包括发送端和接收端,所述接收端用于执行上述第一方面或第一方面的任意可能的实现方式所述的方法,所述发送端用于发送第一指示信息,或者,所述发送端用于接收第二指示信息。
第十六方面,本申请实施例提供一种通信***,所述通信***包括终端设备和网络设备,所述终端设备用于执行如上述第二方面或第二方面的任意可能的实现方式所述的方法,所述网络设备用于接收BSR。
附图说明
图1是本申请实施例提供的一种通信***的架构示意图;
图2a是本申请实施例提供的一种用户面协议栈的结构示意图;
图2b是本申请实施例提供的另一种用户面协议栈的结构示意图;
图3a是本申请实施例提供的一种接收PDCP实体维护变量的过程示意图;
图3b是本申请实施例提供的一种接收非确认模式(unacknowledged mode,UM)RLC实体维护变量的过程示意图;
图3c是本申请实施例提供的一种确认模式(acknowledged mode,AM)RLC实体的发送端维护变量的过程示意图;
图3d是本申请实施例提供的一种AM RLC实体的接收端维护变量的过程示意图;
图4是本申请实施例提供的一种数据处理方法的流程示意图;
图5a是本申请实施例提供的一种数据处理的场景示意图;
图5b是本申请实施例提供的一种数据处理的场景示意图;
图5c是本申请实施例提供的一种数据处理的场景示意图;
图6是本申请实施例提供的一种数据处理方法的流程示意图;
图7是本申请实施例提供的一种通信装置的结构示意图;
图8是本申请实施例提供的一种通信装置的结构示意图;
图9是本申请实施例提供的一种通信装置的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地描述。
本申请的说明书、权利要求书及附图中的术语“第一”和“第二”等仅用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备等,没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元等,或可选地还包括对于这些过程、方法、产品或设备等固有的其它步骤或单元。
在本文中提及的“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员可以显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上,“至少两个(项)”是指两个或三个及三个以上,“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。“或”表示可以存在两种关系,如只存在A、只存在B;当然,在A和B互不排斥时,“或”也可以表示存在三种关系,如只存在A、只存在B、同时存在A和B。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”。
本申请实施例提供的技术方案可以应用于各类通信***,例如,可以是物联网(internet of things,IoT)***、窄带物联网(narrow band internet of things,NB-IoT)***、长期演进(long term evolution,LTE)***,也可以是第五代(5th-generation,5G)通信***,以及未来通信发展中出现的新的通信***,如第六代(6th-generation,6G)通信***等。
本申请实施例提供的技术方案还可以应用于非地面网络(non-terrestrialnetworks,NTN)通信(也可以称为非陆地网络通信)、机器类通信(machine typecommunication,MTC)、机器间通信长期演进技术(long term evolution-machine,LTE-M)、设备到设备(device-todevice,D2D)网络、机器到机器(machine to machine,M2M)网络、物联网(internet of things,IoT)网络、工业互联网或者其他网络。其中,IoT网络例如可以包括车联网。其中,车联网***中的通信方式统称为车与任何事物(vehicle-to-everything,V2X,X可以代表任何事物),例如,该V2X可以包括:车辆到车辆(vehicle tovehicle,V2V)通信,车辆与基础设施(vehicle to infrastructure,V2I)通信、车辆与行人之间的通信(vehicle to pedestrian,V2P)或车辆与网络(vehicle to network,V2N)通信等。示例性的,下文示出的图1中,终端设备与终端设备之间便可以通过D2D技术、M2M技术或V2X技术通信等。
本申请实施例提供的技术方案还可以应用于无线局域网(wireless local areanetwork,WLAN)***,如Wi-Fi等。如本申请实施例提供的方法可以适用于电气及电子工程师学会(institute of electrical and electronics engineers,IEEE)802.11系列协议,例如802.11a/b/g协议、802.11n协议、802.11ac协议、802.11ax协议、802.11be协议或下一代的协议等,这里不再一一列举。又如还可以适用于基于超宽带(ultra wideband,UWB)技术的无线个人局域网(wireless personal area network,WPAN),如IEEE 802.15系列协议中802.15.4a协议、802.15.4z协议或802.15.4ab协议,或者未来某代UWB WPAN协议等,这里不再一一列举。本领域技术人员容易理解,本申请实施例涉及的各个方面可以扩展到采用各种标准或协议的其它网络。例如,蓝牙(bluetooth),高性能无线LAN(high performanceradio LAN,HIPERLAN)(一种与IEEE 802.11标准类似的无线标准,主要在欧洲使用)以及广域网(WAN)或其它现在已知或以后发展起来的网络。因此,无论使用的覆盖范围和无线接入协议如何,本申请实施例提供的技术方案可以适用于任何合适的无线网络。
图1是本申请实施例提供的一种通信***的架构示意图。如图1所示,该通信***可以包括至少一个网络设备,以及至少一个终端设备,如图1中的终端设备1至终端设备4。示例性的,如图1所示的终端设备3与终端设备4之间可以直接通信。例如可以通过D2D技术实现终端设备之间的直接通信。终端设备1至终端设备4可以分别与网络设备通信。可理解,终端设备3和终端设备4可以直接与网络设备通信,也可以间接地与网络设备通信,如经由其他终端设备(图1未示出)与网络设备通信。应理解,图1示例性地示出了一个网络设备和多个终端设备,以及各通信设备之间的通信链路。可选地,该通信***可以包括多个网络设备,并且每个网络设备的覆盖范围内可以包括其它数量的终端设备,例如更多或更少的终端设备,本申请实施例对此不做限定。以下对终端设备和网络设备进行详细说明。
终端设备是一种具有无线收发功能的装置。终端设备可以与无线接入网(radioaccess network,RAN)中的接入网设备(或者也可以称为接入设备)进行通信。终端设备也可以称为用户设备(user equipment,UE)、接入终端、终端(terminal)、用户单元(subscriber unit)、用户站、移动站、远方站、远程终端、移动设备、用户终端、用户代理或用户装置等。在一种可能的实现方式中,终端设备可以部署在陆地上,包括室内或室外、手持或车载;也可以部署在水面上(如轮船等)。在一种可能的实现方式中,终端设备可以是具有无线通信功能的手持设备、车载设备、可穿戴设备、传感器、物联网中的终端、车联网中的终端、无人机、5G网络或未来网络中的任意形态的终端设备等,本申请实施例对此不作限定。可理解,本申请实施例示出的终端设备不仅可以包括车联网中的车辆(如汽车)、而且还可以包括车联网中的车载设备或车载终端等,本申请实施例对于该终端设备应用于车联网时的具体形态不作限定。可理解,本申请实施例示出的终端设备与终端设备之间还可以通过D2D、V2X或M2M等技术进行通信,本申请实施例对于终端设备与终端设备之间的通信方法不作限定。
网络设备可以是一种部署在无线接入网中,为终端设备提供无线通信服务的装置。该网络设备也可以称为接入网设备、接入设备或RAN设备等。示例性的,网络设备可以是下一代节点B(next generation node B,gNB)、下一代演进型基站(next generationevolved nodeB,ng-eNB)、或者6G通信中的网络设备等。网络设备可以是任意一种具有无线收发功能的设备,包括但不限于以上所示的基站(包括部署于卫星上的基站)。该网络设备还可以是6G中具有基站功能的装置。可选的,该网络设备可以为无线局域网(wireless-fidelity,Wi-Fi)***中的接入节点、无线中继节点、无线回传节点等。可选的,该网络设备可以是云无线接入网络(cloud radio access network,CRAN)场景下的无线控制器。可选的,该网络设备可以是可穿戴设备或车载设备等。可选的,该网络设备还可以是小站,传输接收节点(transmission reception point,TRP)(或也可以称为传输点)等。可理解,该网络设备还可以是未来演进的公共陆地移动网络(public land mobile network,PLMN)中的基站、卫星等等。该网络设备还可以为非地面通信***、D2D、V2X或M2M中承载基站功能的通信装置等,本申请实施例对网络设备的具体类型不作限定。在不同的无线接入技术的***中,具备网络设备功能的通信装置的名称可能会有所不同,本申请实施例不再一一列举。可选的,在网络设备的一些部署中,网络设备可以包括集中式单元(centralized unit,CU)和分布式单元(distributed unit,DU)等。其中包括CU和DU的网络设备可以理解为将LTE***中eNB的协议层拆分开,部分协议层的功能放在CU集中控制,剩下部分或全部协议层的功能分布在DU中,由CU集中控制DU。在网络设备的另一些部署中,CU还可以划分为CU-控制面(control plane,CP)和CU-用户面(user plan,UP)等。在网络设备的又一些部署中,网络设备还可以是开放的无线接入网(openradioaccessnetwork,ORAN)架构等,本申请实施例对于网络设备的具体部署方式不作限定。
本申请实施例描述的网络架构以及业务场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定。本领域技术人员可知,随着网络架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
以下先介绍本申请实施例涉及的协议栈。
作为一个示例,图2a是本申请实施例提供的一种用户面协议栈的结构示意图。如图2a所示,UE和gNB的用户面协议栈可以包括如下至少一项:SDAP、PDCP、RLC、MAC、PHY。作为另一个示例,图2b是本申请实施例提供的另一种用户面协议栈的结构示意图。如图2b所示,SDAP和PDCP部署于CU,RLC、MAC和PHY部署于DU。CU和DU可以通过F1接口连接,CU代表gNB通过NG接口和核心网连接,CU代表gNB通过Xn接口和其他gNB连接。
可理解,图2a和图2b所示的用户面协议栈仅为示例,随着标准的推进,用户面协议栈可能会发生变化,但凡通信装置可以执行本申请实施例提供的方法,均属于本申请实施例的保护范围。对于图2a和图2b所示的每个协议层实现的功能可以由对应协议层的实体实现。下文所示的某个协议层与某个实体(与该某个协议层对应的实体)可以理解为是对应的关系,或者是可以相互替换的关系。
以图2a为例,UE发送数据单元时(即UE作为发送端),UE中的每个实体(entity)可以对获取到的SDU进行处理,然后将经过处理后获得的PDU递交给下一层。如发送PDCP实体从上层接收到一个PDCP SDU后,可以执行如下至少一项操作:分配一个PDCP SN,进行报头压缩、加密和完整性保护,添加PDCP头,从而生成PDCP PDU,递交给下层从空口发送。gNB接收数据单元时(即gNB作为接收端),gNB中的每个实体可以对获取到的PDU进行处理,然后将经过处理后获得的SDU递交给上一层。如接收PDCP实体从下层接收到一个PDCP PDU之后,可以执行如下至少一项操作:去掉PDCP头,进行解密和完整性保护验证,重复性检测,最后将获得的SDU递交给上层。以上所示的处理方式仅为示例,同时图2a和图2b所示的用户面协议栈中的每个协议层都会对SDU(或PDU)进行处理,至于处理的具体方式可以参考相关标准或协议。
根据以上所示的用户面协议栈,对于发送端来说,每个协议层实现的功能可以理解为对获取的SDU进行处理,将PDU递交给下层;对于接收端来说,每个协议层实现的功能可以理解为对获取的PDU进行处理,将SDU递交给上层。因此,为简洁起见,下文对于SDU和PDU,下文不进行区分,统一用数据单元表示。如数据单元可以包括如下任一项:PDCP SDU、RLCSDU、PDCP PDU、RLC PDU。当然,这里所示的PDCP和RLC仅为示例,对于用户面协议栈中的其他协议层,不再一一列举。数据单元还可以理解为数据包等,本申请实施例对于该数据单元的具体名称不作限定。
PDCP实体的说明如下所示:
在移动通信***中,为了数据传输的保密性,在无线空口传输的数据需要进行安全保护,包括加密、完整性保护等操作,在5G NR中,安全保护功能在PDCP层进行。除了信令无线承载0(signalling radio bearer 0,SRB0)以外的每个无线承载(radio bearer,RB)都可以对应一个PDCP实体。PDCP实体关联控制面或者数据面,取决于该PDCP实体关联的RB是SRB还是数据无线承载(data radio bearer,DRB)。下文以关联DRB的PDCP实体为例,介绍发送端的PDCP实体和接收端的PDCP实体的处理流程。
对于发送端的PDCP实体来说,该PDCP实体从上层接收到一个数据单元后,启动该数据单元对应的丢弃定时器,为该数据单元分配一个PDCP SN。可选地,PDCP实体还可以执行如下任一项或多项:报头压缩、加密和完整性保护、添加PDCP头。最后将处理后的数据单元递交给下层从空口发送。在某个数据单元的丢弃定时器超时的情况下,PDCP实体丢弃该数据单元(包括PDCP SDU以及对应的PDCP PDU)。如果该数据单元已经递交给RLC层,那么PDCP实体可以指示RLC实体进行丢弃。需要说明的是,虽然PDCP实体可以指示RLC实体丢弃数据单元,但是只有当数据单元以及该数据单元的片段没有被递交到MAC层才可以被丢弃。也就是说,只要该数据单元有一个SDU片段在空口上传输了,那么RLC实体就需要传输整个数据单元。
对于接收端的PDCP实体来说,该PDCP实体从下层接收到一个数据单元之后,首先去掉PDCP头,进行解密和完整性保护验证,如果完整性保护验证失败,则向上层报告失败,并丢弃该数据单元。如果完整性保护验证成功,则PDCP实体进行重复性检测,丢弃由于重传或者使能PDCP重复的情况下接收到的重复的数据单元,将非重复的数据单元放入接收缓存中。如果PDCP实体配置了乱序递交,则PDCP实体对数据单元执行头解压缩后(如果需要的话)将处理后的数据单元递交给上层。如果PDCP实体配置了按序递交,且数据单元是按序的(即当前数据单元的序号是上一个递交的数据单元的序号+1),则对数据单元执行头解压缩后(如果需要的话)将处理后的数据单元递交给上层,否则等待直到该数据单元是按序的才递交给上层。比如将序号为100的数据单元递交给上层后,收到序号为102的数据单元,由于102和100不是连续的,则序号为102的数据单元不递交给上层,当收到序号为101的数据单元后,将序号为101的数据单元和序号为102的数据单元递交给上层。
作为一个示例,配置了按序递交的PDCP实体可以维护以下变量:
(1)RX_DELIV:第一个还在等待接收,没有递交到上层的数据单元的计数(count或COUNT)值。
(2)RX_NEXT:等于当前接收到的数据单元的最大计数值加1。
(3)RX_REORD:等于启动重排序定时器(t-Reordering)时RX_NEXT的值。
PDCP实体从下层接收到一个数据单元之后,可以根据PDCP头中的SN确定该数据单元的计数值。根据PDCP头中的SN确定计数值的方法可以参考相关标准或协议,本申请实施例不一一详述。示例性的,计数值=[HFN,SN],其中,超帧号(hyper frame number,HFN)的取值可以满足如下任一项:如果SN(RCVD_SN)小于SN(RX_DELIV)-Window_Size,则HFN=HFN(RX_DELIV)+1;如果SN(RCVD_SN)大于或等于SN(RX_DELIV)+Window_Size,则HFN=HFN(RX_DELIV)-1;如果SN(RCVD_SN)不小于SN(RX_DELIV)-Window_Size,且不大于或等于SN(RX_DELIV)+Window_Size,则HFN=HFN(RX_DELIV)。其中,SN(RCVD_SN)表示PDCP实体接收到一个数据单元时所获取的SN,SN(RX_DELIV)表示PDCP实体接收到上述数据单元时,RX_DELIV的SN取值,HFN(RX_DELIV)表示PDCP实体接收到上述数据单元时,RX_DELIV的计数值的前四位取值。例如,计数值可以占用8个比特,SN可以占用4个比特。
PDCP实体维护变量的过程可以如下所示:
当要求按序递交,如果当前接收到的数据单元的计数值等于RX_DELIV,则从该数据单元开始,PDCP实体按照计数值递增的顺序向上层逐个递交数据单元,直到出现不连续的计数值,PDCP实体更新变量RX_DELIV为第一个还没有递交到上层的数据单元的计数值。示例性的,图3a是本申请实施例提供的一种接收PDCP实体维护变量的过程示意图。图3a中的(1)表示初始化状态,如RX_DELIV=0,RX_NEXT=0。图3a中的(2)表示PDCP实体接收到计数值为1的数据单元,此时更新RX_NEXT=2。由于PDCP实体还未接收到计数值为0的数据单元,即计数值为0的数据单元还未向上层递交,因此RX_DELIV的取值依然为0。以及由于RX_DELIV的取值小于RX_NEXT的取值,如PDCP实体只接收到了计数值为1的数据单元,未接收到计数值为0的数据单元,无法按照01的顺序按序向上层递交数据单元,因此PDCP实体可以启动重排序定时器,且RX_REORD的取值等于启动重排序定时器时RX_NEXT的取值,即RX_REORD=2。如果在该重排序定时器超时之前接收到了计数值为0的数据单元,则PDCP实体可以按序向上层递交计数值为0和1的数据单元。可理解,RX_DELIV的取值小于RX_NEXT的取值表示在接收到的计数值最大的数据单元之前还有数据单元没有接收到,存在空洞。RX_DELIV的取值等于RX_NEXT的取值则表示PDCP实体接收到了计数值连续的数据单元,不需要启动重排序定时器。图3a中的(3)表示PDCP实体接收到计数值为3和4的PDU,此时更新RX_NEXT=5。由于PDCP实体还未接收到计数值为0的数据单元,即计数值为0的数据单元还未向上层递交,因此RX_DELIV的取值依然为0。图3a中的(4)表示PDCP实体接收到计数值为0的数据单元,此时向上层递交计数值为0和1的PDU,以及更新RX_DELIV=2。此时,由于RX_DELIV的取值等于RX_REORD的取值,因此停止并重置重排序定时器(可以理解为重排序定时器的停止条件为RX_DELIV的取值大于或等于RX_REORD的取值)。由于计数值为1的数据单元和计数值为3的数据单元中间缺少一个数据单元(也可以理解为RX_DELIV的取值小于RX_NEXT的取值),因此PDCP启动重排序定时器,RX_REORD=5。当重排序定时器超时,PDCP实体向上层递交接收缓存中所有计数值小于RX_REORD的数据单元以及所有计数值大于等于RX_REORD的计数值连续的数据单元。即在重排序定时器超时时,如图3a中的(5)所示,PDCP实体可以向上层递交计数值为3和4的数据单元。将RX_DELIV更新为第一个还没有递交到上层的数据单元的计数值,如RX_DELIV=5。
从图3a所示的示意图中可以看出,在PDCP实体配置按序递交的情况下,如果在发送端的PDCP实体丢弃数据单元,则会造成接收端的PDCP实体的接收窗口内的计数值不连续,不断触发重排序定时器,消耗接收端的处理资源。以及只有当重排序定时器超时的时候PDCP实体才能够向上层递交数据单元,导致接收端的处理时延增加,影响后续数据单元的及时递交。类似的,如果接收端的PDCP实体丢弃数据单元,也会造成接收端的PDCP实体的接收窗口内的计数值不连续,不断触发重排序定时器,消耗接收端的处理资源。以及只有当重排序定时器超时的时候PDCP实体才能够向上层递交数据单元,导致接收端的处理时延增加,影响后续数据单元的及时递交。可理解,这里所示的问题对于发送端或接收端丢弃数据单元集合的方式同样适用。也就是说,发送端丢弃数据单元集合时,接收端的PDCP实体也会出现上述情况;或者,接收端丢弃数据单元集合时,接收端的PDCP实体也会出现上述情况。
RLC实体的说明如下所示:
根据服务类型,RLC实体的服务模式可以包括如下至少一项:
透明模式(transparent mode,TM):透传,不对数据包进行处理,不添加报头。TMRLC实体是单向的,分为发送TM RLC实体和接收TM RLC实体。
非确认模式(unacknowledged mode,UM):支持分段重组和重复检测,UM RLC实体是单向的,分为发送UM RLC实体和接收UM RLC实体。
确认模式(acknowledged mode,AM):支持分段重组和重复检测,以及还支持数据包的重传。AM RLC实体是双向的,分为AM RLC实体发送端和AM RLC实体接收端。
以上所示的“单向”可以理解为一个RLC实体可以支持发送数据单元或接收数据单元中的一项,“双向”可以理解为一个RLC实体既可以支持发送数据单元也可以支持接收数据单元。
可理解,本申请实施例所示的发送端的RLC实体可以包括发送UM RLC实体或AMRLC实体发送端,接收端的RLC实体可以包括接收UM RLC实体或AM RLC实体接收端。也就是说,为便于描述,下文所示的发送端的RLC实体和接收端的RLC实体表示不对服务模式进行区分,该发送端的RLC实体所实现的功能或执行的步骤适用于发送UM RLC实体和AM RLC实体发送端中的至少一项,该接收端的RLC实体所实现的功能或执行的步骤适用于接收UMRLC实体和AM RLC实体接收端中的至少一项。
发送端的RLC实体从PDCP层接收到数据单元后,可以为其添加RLC头。在收到MAC层发送的传输机会的通知后,发送端的RLC实体检查数据单元的数据量是否匹配传输机会大小,如果匹配,则将添加了RLC头的数据单元发送给MAC层,如果不匹配,则对数据单元进行分段,修改RLC头,在RLC头中添加SN等信息后发送给MAC层。可理解,对同一数据单元进行分段得到的SDU片段携带的SN均相同。
作为一个示例,接收UM RLC实体可以维护以下变量:
(1)RX_Next_Highest:重组窗口上界,变量值等于接收到的没有完成重组的数据单元的最大SN+1。重组窗口的下界为RX_Next_Highest-UM_Window_Size,其中UM_Window_Size表示重组窗口的大小,可以为常数。如果SN满足如下条件:(RX_Next_Highest–UM_Window_Size)<=SN<RX_Next_Highest,则称该SN落在重组窗口内,否则称该SN落在重组窗口外。
(2)RX_Next_Reassembly:等于第一个待考虑重组的RLC SDU的SN。
(3)RX_Timer_Trigger:等于启动重组定时器(t-Reassembly)的时候RX_Next_Highest的值。
可选地,接收UM RLC实体维护的变量的取值范围可以为0~2SN-FieldLength-1,其中SN-FieldLength表示SN的长度。
可理解,本申请实施例所示的第一个SN可以理解为最早的SN或最小的SN等,也就是说,关于第一个SN的描述也可以替换为最早的SN或最小的SN。
需要说明的是,本申请实施例所示的“第一个SN”、“最早的SN”、“最大SN”变量之间的运算等类似描述均表示取模运算的结果。举例来说,某个变量的取值范围为0~511,对于某个实体来说,依次接收到的数据单元的SN为0、1、2、3,则第一个SN为0,最早的SN为0,最大SN为3。又举例来说,依次接收到510、511、0、1、2,则第一个SN为510,最早的SN为510,最大SN为2。可理解,这里所示的某个变量可以理解为实体维护的变量。
在收到数据单元的情况下,接收UM RLC实体检查该数据单元的RLC头中是否有SN,如果RLC头中没有SN,则说明该数据单元中包含完整的RLC SDU,接收UM RLC实体去掉该数据单元的RLC头之后将其递交给上层。如果RLC头中有SN,则接收UM RLC实体进一步检查该数据单元的SN是否满足(RX_Next_Highest-UM_Window_Size)<=SN<RX_Next_Reassembly,如果满足,则将其丢弃,否则将其放入接收缓存中。
当该数据单元中包含的SDU片段能够和接收缓存中现有的SDU片段重组成完整的RLC SDU,则接收UM RLC实体将重组得到的完整的RLC SDU递交给上层。此时如果该数据单元的SN等于RX_Next_Reassembly,则接收UM RLC实体更新变量RX_Next_Reassembly为大于当前RX_Next_Reassembly且尚未完成重组的第一个数据单元的SN。当尚且无法完成重组,如果该数据单元的SN大于等于RX_Next_Highest,则接收UM RLC实体更新变量RX_Next_Highest等于SN加1,并丢弃所有SN落在重组窗口以外的RLC PDU。如果RX_Next_Reassembly落到重组窗口以外,则接收UM RLC实体将变量RX_Next_Reassembly置为第一个SN大于RX_Next_Highest-UM_Window_Size且尚未完成重组的数据单元的SN。
当重组定时器t-Reassembly不在运行,且满足以下条件之一的时候,接收UM RLC实体启动t-Reassembly,并令变量RX_Timer_Trigger的值等于当前RX_Next_Highest的值:
(1)RX_Next_Highest>RX_Next_Reassembly+1;
(2)RX_Next_Highest=RX_Next_Reassembly+1(即只有SN=RX_Next_Reassembly的数据单元还没有重组完成),且在当前接收到的SN=RX_Next_Reassembly的数据单元的最后一个字节之前,还有SDU片段没有接收到。
当重组定时器t-Reassembly超时,接收UM RLC实体将变量RX_Next_Reassembly设置为第一个SN大于RX_Timer_Trigger且尚未完成重组的数据单元的SN,并丢弃接收缓存器中所有SN小于RX_Next_Reassembly的SDU的片段。
示例性的,图3b是本申请实施例提供的一种接收UM RLC实体维护变量的过程示意图。图3b中的(1)表示初始化状态,接收UM RLC实体还没有接收到任何数据单元。图3b中的(2)表示接收UM RLC实体接收到SN为2的SDU片段,此时更新重组窗口上界,使得其变量值等于接收到的没有完成重组的数据单元的最大SN(这里最大SN为2)+1,即RX_Next_Highest=3。基于上述介绍的重组定时器的启动条件,由于RX_Next_Highest(即为3)>RX_Next_Reassembly(即为0)+1,因此接收UM RLC实体启动重组定时器,且RX_Timer_Trigger的取值等于重启重组定时器时RX_Next_Highest的值,即RX_Timer_Trigger=3。图3b中的(3)表示SN=0的数据单元完成重组,向上层递交SN=0的数据单元,更新变量RX_Next_Reassembly=1。以及接收UM RLC实体接收到SN为5的数据单元的SDU片段,此时更新重组窗口上界,使得其变量值等于接收到的没有完成重组的数据单元的最大SN(这里最大SN为5)+1,即RX_Next_Highest=6。图3b中的(41)表示当重组定时器未超时的情况下,如果接收UM RLC实体重组完成SN=1至SN=2的RLC SDU,则向上层递交。以及更新RX_Next_Reassembly=3,因为RX_Timer_Trigger(=3)<=RX_Next_Reassembly(=3),因此停止并重置重组定时器。由于RX_Next_Highest>RX_Next_Reassembly+1,因此启动重组定时器,RX_Timer_Trigger=6。图3b中的(42)表示当重组定时器超时的情况下,如果还未重组完成SN=1至SN=2的数据单元,则接收UM RLC丢弃缓存的SN=1和SN=2的SDU片段。以及更新接收UM RLC实体维护的变量和重组定时器。可理解,为便于区分,图3b分别用(41)和(42)表示并列的方案。
从图3b中的(3)可以看出,UM RLC实体更新RX_Next_Reassembly的条件包括UMRLC实体重组完成SN=RX_Next_Reassembly的数据单元。从图3b中的(42)可以看出,UM RLC实体更新RX_Next_Reassembly的条件包括重组定时器超时。
从上可以看出,如果发送端丢弃某个数据单元,则会导致接收端的UM RLC实体不断等待这个数据单元,直到重组定时器超时。由此,会影响接收端的UM RLC实体处理数据单元的时延增加。
作为另一个示例,AM RLC实体的发送端维护以下变量:
(1)TX_Next_Ack:对于SN小于TX_Next_Ack的数据单元,AM RLC实体的发送端已经收到接收端确认它们被成功接收的消息。AM RLC实体的发送端维护一个发送窗,大小为[TX_Next_Ack,TX_Next_Ack+AM_Window_Size),只有SN在发送窗内的PDU才能被发送。其中,AM_Window_Size表示发送窗口的大小。
(2)TX_Next:分配给下一个新生成的数据单元的SN。
AM RLC实体的发送端从高层接收到一个数据单元后,将该数据单元的SN置为TX_Next,添加RLC头,以及更新TX_Next的取值。AM RLC实体的发送端从MAC层收到关于传输机会的通知后,如果需要的话,按照传输机会的大小对数据单元进行分段,修改RLC头,然后将处理后的数据单元递交给MAC层。AM RLC实体的发送端如果接收到接收端对数据单元的确认消息,则向高层指示该数据单元发送成功,以及更新变量TX_Next_Ack为下一个还没有被确认的数据单元的SN。
示例性的,图3c是本申请实施例提供的一种AM RLC实体的发送端维护变量的过程示意图。图3c中的(1)可以理解为初始化的状态,即TX_Next=0,TX_Next_Ack=0。图3c中的(2)表示AM RLC实体的发送端已发送SN=0至SN=3的数据单元,且SN=1的数据单元已被接收端确认成功接收。由此,AM RLC实体的发送端更新TX_Next的取值为4,且TX_Next_Ack的取值仍然为0。图3c中的(3)表示SN=0的数据单元已被接收端确认成功接收,此时AM RLC实体的发送端更新变量TX_Next_Ack=2。
作为又一个示例,AM RLC实体的接收端维护以下变量:
(1)RX_Next:认为所有SN小于RX_Next的RLC SDU都已经重组完成。
(2)RX_Next_Highest:接收到的数据单元的最大SN加1。
(3)RX_Next_Status_Trigger:变量值等于触发重组定时器(t-Reassembly)时候RX_Next_Highest的值。
(4)RX_Highest_Status:状态报告中"ACK_SN"字段可能取到的最大值。
AM RLC实体的接收端维护一个接收窗[RX_Next,RX_Next+AM_Window_Size),接收端只接收SN在接收窗内的PDU。AM RLC实体的接收端接收到一个数据单元之后,如果该数据单元的SN不在接收窗内,或者整个数据单元都和之前成功接收的是重复的,则将其丢弃,如果该数据单元中有部分SDU片段是和之前成功接收的是重复的,则丢弃重复的SDU片段。接着,AM RLC实体的接收端将经过重复检测的数据单元放入接收缓存中。如果该数据单元的SN大于等于RX_Next_Highest,则AM RLC实体的接收端将变量RX_Next_Highest更新为该PDU的SN加1。如果该数据单元中包含完整的RLC SDU,或者该数据单元中的SDU片段能够和接收缓存中的其他SDU片段重组成完整的SDU,则AM RLC实体的接收端完成重组后去掉RLC头,递交给上层。如果重组得到的SDU的SN等于RX_Next,则更新RX_Next为SN大于当前RX_Next的第一个尚未完成重组的RLC SDU的SN。如果重组得到的SDU的SN等于RX_Highest_Status,则更新RX_Highest_Status为第一个SN大于当前RX_Highest_Status的第一个尚未完成重组的RLC SDU的SN。
当重组定时器不在运行且满足下列条件之一的时候,AM RLC实体的接收端启动重组定时器,并令变量RX_Timer_Trigger等于RX_Next_Highest:
(1)RX_Next_Highest>RX_Next+1;
(2)RX_Next_Highest=RX_Next+1,且在当前接收到的SN=RX_Next的数据单元的最后一个字节之前,还有片段没有接收到。
当重组定时器正在运行且满足下列条件之一的时候,AM RLC实体的接收端停止并重置重组定时器:
(1)RX_Next_Status_Trigger=RX_Next;
(2)RX_Next_Status_Trigger=RX_Next+1,且在当前接收到的SN=RX_Next的数据单元的最后一个字节之前,所有片段都已经接收到;
(3)RX_Next_Status_Trigger落在接收窗口以外,且RX_Next_Status_Trigger不等于RX_Next+AM_Window_Size。
当重组定时器超时的时候,AM RLC实体的接收端更新变量RX_Highest_Status为第一个SN大于等于RX_Next_Status_Trigger且尚未完成重组的数据单元的SN,触发状态报告(请求发送端重传状态报告中指示的没有成功接收的RLC SDU或SDU片段)。如果RX_Next_Highest>RX_Highest_Status+1,或者RX_Next_Highest=RX_Highest_Status+1且当前接收到的SN=RX_Highest_Status的RLC SDU的最后一个字节之前,还有片段没有接收到,则AM RLC实体的接收端启动重组定时器,并令变量RX_Next_Status_Trigger等于当前RX_Next_Highest的值。
示例性的,图3d是本申请实施例提供的一种AM RLC实体的接收端维护变量的过程示意图。图3d中的(1)可以理解为初始化状态。图3d中的(2)可以理解为接收到SN=2的RLCPDU,更新变量RX_Next_Highest=3,此时RX_Next<RX_Next_Highest,启动重组定时器,令RX_Next_Status_Trigger=3。图3d中的(3)可以理解为接收到SN=5的RLC PDU,更新变量RX_Next_Highest=6。图3d中的(4)可以理解为重组定时器超时,更新变量RX_Highest_Status=3,触发状态报告。图3d中的(5)可以理解为:因为RX_Highest_Status<RX_Next_Highest,触发重组定时器,令RX_Next_Status_Trigger=6。图3d中的(6)可以理解为向上层递交重组完成的SN=0的RLC SDU,更新RX_Next=1。图3d中的(7)可以理解为当SN=0~5的RLC SDU都完成重组,将这些RLC SDU递交到上层,更新RX_Next=6,此时RX_Next=RX_Next_Status_Trigger,停止并重置重组定时器。
从图3d可以看出,在AM RLC实体更新RX_Next的条件是SN小于RX_Next的RLC SDU都已经重组完成,如图3d中的(6)所示,当SN=0的RLC SDU完成重组之后,才能更新RX_Next的取值。在AM模式下,只有当SN等于接收窗口下界RX_Next的数据单元被成功重组递交到上层后,AM RLC实体的接收端才会更新RX_Next的取值。如果这个数据单元没有被成功接收,AM RLC实体的接收端会通过状态报告指示发送端重传该数据单元,直到成功接收或者达到最大重传次数。由此,如果发送端正好已经丢弃了这个数据单元,则会导致AM RLC实体的接收端无法及时更新其维护的变量,从而不断请求重传丢弃的数据单元,造成空口资源和设备能源的浪费,以及传输时延的增加,甚至在达到最大重传次数的情况下触发无线链路失败,影响业务正常进行。发送端丢弃数据单元时AM RLC实体的接收端存在的问题,同样适用于接收端丢弃数据单元时AM RLC实体的接收端存在的问题。同样的,这里所示的发送端或接收端丢弃数据单元时存在的问题对于发送端或接收端丢弃数据单元集合时同样存在。
基于图3a至图3d中涉及的相关问题,本申请实施例提供一种数据处理方法及装置,在发送端或接收端中的至少一项存在丢弃数据单元的情况,可以及时更新接收端维护的变量,有效改善由于丢弃数据单元而导致接收端的进程停滞不前的情况,可以减少接收端对数据单元的处理时延。
介绍本申请实施例提供的方法之前,以下先对本申请实施例涉及的相关术语或方法进行说明。
第一、数据单元集合
数据单元集合可以理解为服务数据单元集合、或协议数据单元集合(protocoldata unit set,PDU set)或帧等。作为一个示例,该数据单元集合中可以包括M个数据单元,对于该M的取值本申请实施例不作限定。作为另一个示例,数据单元集合可以理解为传输一个信息单元的所有数据单元的集合,该信息单元可以理解为视频帧或视频切片等。以视频帧为扩展现实(extended reality,XR)业务中的视频帧为例,XR是指通过计算机技术和可穿戴设备产生的一个真实与虚拟组合、可人机交互的环境,是增强现实(augmentedreality,AR)、虚拟现实(virtual reality,VR)、混合现实(mixed reality,MR)等多种形式的统称。三者视觉交互技术融合,实现虚拟世界与现实世界之间无缝转换的“沉浸感”体验。XR业务中的视频由一张张连贯起来的图像(或者说图片、照片等)连续播放组成,一个视频帧可以理解为一张图像,该一个视频帧可以分成多个数据包进行传输。由此,数据单元集合可以理解为一个视频帧,该一个视频帧可以包括多个数据单元。一般来说,应用服务器可以按照一定的帧率周期性地生成一个集合(也可以称为PDU set等)。如帧率的取值为60帧每秒(frame per second,fps),表示每秒钟生成60张图像,约每16.66ms生成一个数据单元集合。该应用服务器可以包括XR应用服务器等,本申请实施例对此不作限定。
第二、确定数据单元属于某个数据单元集合的方式(也可以理解为确定某个数据单元集合包括的数据单元的方式)可以包括:
方式1、对于下行业务,用户面功能(user plane function,UPF)可以在通用分组无线***用户面隧道协议(general packet radio system tunnelling protocol forthe user plane,GTP-U)头中添加每个数据单元集合的起始标志和/或结束标志,网络设备根据起始标志和/或结束标志确定属于每个数据单元集合的数据单元。例如,UPF可以在GTP-U头中为第一集合添加起始标志或结束标志,该情况下,该第一集合所包括的数据单元的数量可以是固定的,由此网络设备可以基于起始标志或结束标志中的任一项确定第一数据单元属于第一集合。又例如,UPF可以在GTP-U头中为第一集合添加起始标志和结束标志,从而网络设备可以快速有效地确定第一数据单元属于第一集合。作为一个示例,可以在每个集合的第一个包中添加起始标志。例如,网络设备接收到10个数据包,识别出第1个包和第6个包中携带起始标志,则认为第1个到第5个包属于一个集合,第6个到第10个包属于另一个集合。作为另一个示例,可以在每个集合的最后一个包中添加结束标志。例如,网络设备接收到10个数据包,识别出第5个包和第10个包中携带结束标志,则认为第1个到第5个包属于一个集合,第6个到第10个包属于另一个集合。作为又一个示例,可以在每个集合的第一个包中添加起始标志且最后一个包中添加结束标志。例如,网络设备接收到10个数据包,识别出第1个包和第6个包中携带起始标志,第5个包和第10个包中携带结束标志,则认为第1个到第5个包属于一个集合,第6个到第10个包属于另一个集合。通过方式1,不仅可以确定某个数据单元所属的集合,而且网络设备还可以基于起始标志确定属于某个集合的第一个数据单元,或者,基于结束标志确定某个集合的最后一个数据单元(等效地确定该某个集合的下一个集合的第一个数据单元)。
方式2、对于下行业务,UPF可以在GTP-U头中为每个数据单元集合各自包括的数据单元添加集合序号。例如,UPF可以在GTP-U头中为每个数据单元集合包括的每个数据单元添加集合序号,从而网络设备可以基于每个数据单元所包括的集合序号确定某个数据单元所属的数据单元集合。
方式3、网络设备(或终端设备)中可以维护一个定时器,该定时器的时长可以设置为一个数据单元集合中所有数据单元到达网络设备(或终端设备)的最大时长或者平均时长。这里所示的最大时长(或平均时长)指的是从一个数据单元集合中的第一个数据单元到达网络设备开始到该数据单元集合中的最后一个数据单元到达网络设备结束的这一段时长。如网络设备在定时器的非运行期间接收到数据单元,则启动定时器,并认为该数据单元是属于某个数据单元集合的第一个数据单元,在该定时器的运行期间接收到的所有数据单元都可以认为属于该某个数据单元集合。一般来说,一个数据单元集合中的数据单元是以突发的形式到达网络设备(或终端设备),也就是说,一个数据单元集合中的数据单元到达网络设备(或终端设备)的时间比较集中。因此网络设备(或终端设备)可以基于数据单元到达的集中程度确定数据单元是否属于一个数据单元集合的第一个数据单元。
可选地,对于发送端来说,该发送端可以在确定第一数据单元属于第一集合(如通过上述方式1至方式3中的至少一项方式)后,为该第一数据单元关联集合序号,即第一集合中的不同数据单元的集合序号均可以为第一集合的集合序号。可选地,发送端中可以维护一个计数器,该计数器的初始值为0,发送端的实体在每次接收到一个集合的第一个数据单元或者最后一个数据单元时,该计数器的取值加1。该计数器取值相同期间接收到的数据单元都属于同一个集合,由此发送端可以在计数器取值相同期间获取到的数据单元关联同一个集合序号。可理解,该计数器可以称为集合序号计数器或用于添加集合序号的计数器等,本申请实施例对于该计数器的名称不作限定。对于接收端来说,接收端可以通过发送端为每个数据单元关联的集合序号来识别属于第一集合的数据单元。接收端在获取到第一数据单元之后,可以方便快速地根据该第一数据单元关联的集合序号来确定该第一数据单元属于第一集合。可理解,上述集合序号还可以理解为集合标识或集合标志等。
可理解,对于不同数据单元集合中包括的数据单元的数量是否相同,本申请实施例不作限定。为便于区分不同的步骤的具体方式(如上述方式1至方式3),本申请实施例用不同序号进行区分,并不表示这些序号之间有先后顺序。
第三、丢弃数据单元集合的方式包括:
方式4、发送端的实体检测到某个数据单元集合的丢包情况符合第一条件,则发送端的实体可以确定丢弃该某个数据单元集合。该发送端的实体可以包括发送端的PDCP实体或发送端的RLC实体中的至少一项。该某个数据单元集合的丢包情况包括如下至少一项:发送端PDCP实体丢弃的数据单元的数量、发送端PDCP实体未发送成功的数据单元的数量、发送端RLC实体丢弃的数据单元的数量、发送端RLC实体未发送成功的数据单元的数量。某个数据单元集合的丢包情况符合第一条件可以包括如下至少一项:该某个数据单元集合丢弃的数据单元的数量大于或等于第二阈值,该某个数据单元集合未发送成功的数据单元的数量大于或等于第二阈值,该某个数据单元集合丢弃的数据单元的数量与该某个数据单元集合的数据单元总数量的比例大于或等于第三阈值,该某个数据单元集合未发送成功的数据单元的数量与该某个数据单元集合的数据单元总数量的比例大于或等于第三阈值。一个数据单元集合所包括的数据单元的总数量可以由应用服务器向该发送端指示,如应用服务器向该发送端发送用于指示上述总数量的信息。又例如,该发送端可以根据上述方式1中所示的开始标志和结束标志确定总数量。又例如,发送端可以通过其获取到的数据单元的集中程度确定一个数据单元集合所包括的数据单元的总数量。
方式5、接收端检测到某个数据单元集合的丢包情况符合第一条件,则接收端可以确定丢弃该某个数据单元集合。该某个数据单元集合的丢包情况包括如下至少一项:接收端PDCP实体未成功递交给上层的数据单元的数量、接收端UM RLC实体重组失败的数据单元的数量、AM RLC实体接收端重组失败的数据单元的数量。某个数据单元集合的丢包情况符合第一条件可以包括如下至少一项:该某个数据单元集合未成功递交给上层的数据单元的数量大于或等于第二阈值,该某个数据单元集合重组失败的数据单元的数量大于或等于第二阈值,该某个数据单元集合未成功递交给上层的数据单元的数量与该某个数据单元集合的数据单元的总数量的比例大于或等于第三阈值,该某个数据单元集合重组失败的数据单元的数量与该某个数据单元集合的数据单元的总数量的比例大于或等于第三阈值。
关于第一条件涉及的第二阈值和第三阈值的说明如下所示:例如,第二阈值和第三阈值可以由协议定义。又例如,第二阈值和第三阈值可以由应用服务器通过指示信息向发送端或接收端指示,该指示信息携带第二阈值和第三阈值中的至少一项。第二阈值和第三阈值的设置可以根据不同的业务而不同,如高可靠低时延业务所对应的第二阈值可以与其他业务所对应的第二阈值不同。对于第二阈值和第三阈值的具体取值以及设置方式,本申请实施例不作限定。可理解,方式4和方式5中涉及的第二阈值的取值可以相同,也可以不同;同样的,方式4和方式5中涉及的第三阈值的取值可以相同,也可以不同,本申请实施例对此不作限定。
需要说明的是,以上所示的丢弃数据单元集合的方式仅为示例,如果发送端和接收端根据其他方式确定丢弃数据单元集合,从而出现本申请实施例上文所涉及的问题,也属于本申请实施例的保护范围。
以下详细说明本申请实施例涉及的数据处理方法。
图4是本申请实施例提供的一种数据处理方法的流程示意图,该方法可以应用于包括UE和基站的通信***、V2X***、Wi-Fi***等,关于该方法所应用的***可以参考上文,这里不再一一列举。本申请实施例中,发送端(包括发送端的实体)可以理解为发送数据单元的一方,接收端(包括接收端的实体)可以理解为接收数据单元的一方。在发送端和接收端处理数据的过程中,发送端可能会丢弃一个或多个数据单元,从而发送端可以向接收端发送第一指示信息;或者,接收端在接收到来自发送端的数据单元之后,接收端可能会丢弃一个或多个数据单元,从而接收端可以自己确定第一指示信息。示例性的,发送端可以为网络设备,接收端可以为终端设备;或者,发送端可以为终端设备,接收端可以为网络设备;或者,发送端和接收端均可以为终端设备等,这里不再一一列举。当然,发送端和接收端传输数据的过程中,还可能会出现一个或多个转发设备,对此本申请实施例不作限定。
如图4所示,该方法包括:
401、接收端获取第一指示信息,该第一指示信息用于指示丢弃的一个或多个数据单元的最大序号。
本申请实施例中,当丢弃的数据单元的数量为一个时,最大序号则表示该数据单元的序号。当丢弃的数据单元的数量为多个时,则最大序号表示该多个数据单元的序号中的最大序号。该多个数据单元的序号可以是连续的,如该多个数据单元可以属于不同的数据单元集合,第一指示信息用于指示丢弃的多个数据单元集合中每个集合的序号,或者,该多个数据单元集合的最大集合序号。又如,该多个数据单元可以属于同一个数据单元集合,第一指示信息可以用于指示丢弃的数据单元集合的序号。当然,上述多个数据单元也可能不是以集合为单位丢弃的,而是发送端或接收端丢弃的序号连续的多个数据单元。该多个数据单元可能属于一个数据单元集合中序号连续的部分数据单元,也可能分别属于多个数据单元集合,且序号连续的部分数据单元。
作为一个示例,最大序号可以用最大序列号(sequence number,SN)表示。一般的,发送端的实体可以为数据单元分配SN,因此第一指示信息中的最大序号可以用SN表示。如第一指示信息可以用于指示丢弃的一个或多个数据单元的最大SN。作为另一个示例,最大序号可以用最大计数(count)值表示。一般的,接收端的PDCP实体在处理数据单元时,基于数据单元的计数值来维护PDCP实体的变量,因此第一指示信息中的最大序号可以用计数值表示。如第一指示信息可以用于指示丢弃的一个或多个数据单元的最大计数值。当然,这里所示的序号用SN或计数值表示仅为示例,但凡发送端和接收端能够基于序号识别出数据单元的序号的表示方式均属于本申请实施例的保护范围。关于SN与计数值之间的关系可以参考上文,这里不再赘述。
第一指示信息用于指示丢弃的一个或多个数据单元的最大序号可以包括如下方式:
方式6、第一指示信息包括丢弃的一个或多个数据单元的最大序号。第一指示信息中通过携带最大序号,可使得接收端能够方便快捷地获取最大序号。当然,第一指示信息还可以包括在最大序号附近浮动的值,如第一指示信息包括最大序号+1,或者,第一指示信息包括最大序号+2,或者,第一指示信息包括最大序号-1,或者,第一指示信息包括最大序号-2等,这里不再一一列举。在第一指示信息包括的内容是最大序号附近浮动的值时,该浮动数值的大小可以由网络设备设置,网络设备还可以将该浮动的值发送给终端设备;或者,该浮动数值的大小可以由标准定义,如终端设备出厂设置时将该浮动的值设置于终端设备中,或者,网络设备出厂设置时将该浮动的值设置于网络设备中。
方式7、第一指示信息包括偏移值,该偏移值为最大序号与参考序号之间的偏移值。参考序号可以由协议定义,也可以由网络设备确定。对于该参考序号的具体取值,本申请实施例不作限定。该参考序号可以是固定的,也可以不是固定的。第一指示信息中通过包括偏移值,可以节省第一指示信息的信令开销。
方式8、第一指示信息包括丢弃的数据单元集合的序号。作为一个示例,上述多个数据单元属于一个数据单元集合时,第一指示信息可以包括该数据单元集合的序号。作为另一个示例,上述多个数据单元分别属于不同的数据单元集合时,第一指示信息可以包括多个数据单元集合中每个数据单元集合的序号,或者,第一指示信息可以包括多个数据单元集合的最大序号。
可选地,第一指示信息包括丢弃的数据单元集合的序号的情况下,接收端还可以执行如下操作:获取丢弃的数据单元集合的序号,以及根据丢弃的数据单元集合的序号确定多个数据单元的最大序号。例如,第一指示信息包括丢弃的数据单元集合1的序号,则接收端可以基于该数据单元集合1中所包括的数据单元确定丢弃的多个数据单元的最大序号。可理解,这里所示的接收端的操作,对于发送端同样适用。发送端和接收端可以基于上文所示的方式1至方式3确定数据单元集合所包括的数据单元。
接收端获取第一指示信息的方式可以包括如下方式:
方式9、接收端接收来自发送端的第一指示信息。
发送端向接收端发送数据单元,但是,发送端在发送数据单元的过程中,主动丢弃一个或多个数据单元。从而,发送端向接收端发送第一指示信息,以便接收端执行图4所示的方法。
作为一个示例,发送端的实体可以确定丢弃一个或多个数据单元。例如,发送端的PDCP实体可以基于其维护的丢弃定时器确定丢弃一个或多个数据单元。又例如,发送端的RLC实体可以按照图3c所示的方法确定丢弃一个或多个数据单元。可理解,丢弃多个数据单元时,该多个数据单元的序号可以是连续的。
作为另一个示例,发送端可以确定丢弃一个或多个数据单元集合。例如,发送端可以按照上述方式4确定丢弃一个或多个数据单元集合。
以上所示的发送端丢弃一个或多个数据单元的方法仅为示例,不应将其理解为对本申请实施例的限定。
方式10、接收端确定丢弃的一个或多个数据单元,根据该一个或多个数据单元确定第一指示信息。
接收端自主确定第一指示信息,从而使得接收端的实体基于该第一指示信息维护第一变量。可理解,接收端根据丢弃的数据单元确定出一个第一指示信息,或者,接收端也可以不确定第一指示信息,而是直接根据其丢弃的一个或多个数据单元更新其维护的第一变量。
作为一个示例,接收端的PDCP实体可以按照图3a确定丢弃一个或多个数据单元。又例如,接收端的RLC实体可以按照图3b或图3d确定丢弃一个或多个数据单元。
作为另一个示例,接收端可以按照上述方式5确定丢弃一个或多个数据单元集合。
作为一种可能的实现方式,接收端在确定丢弃一个或多个数据单元之后,该接收端还可以执行如下操作:
接收端的实体发送第二指示信息,该第二指示信息用于指示发送端的实体丢弃上述一个或多个数据单元;或者,第二指示信息用于指示发送端的实体丢弃与该一个或多个数据单元对应的数据单元集合。示例性的,接收端确定丢弃一个或多个数据单元之后,该接收端可以根据其丢弃的一个或多个数据单元更新其维护的变量,以及向发送端发送第二指示信息。接收端确定丢弃一个或多个数据单元之后,该接收端可以不执行确定第一指示信息的步骤,而是基于其丢弃的一个或多个数据单元更新其维护的第一变量,以及发送第二指示信息。
这里所示的与一个或多个数据单元对应的数据单元集合可以理解为如下至少一项:该一个或多个数据单元所属的一个或多个数据单元集合,或者,该一个或多个数据单元所属的一个或多个数据单元集合以及依赖于该一个或多个数据单元集合的数据单元集合。例如,数据单元集合A依赖于数据单元集合B可以表示数据单元集合A的处理过程需要利用数据单元集合B中包括的信息。因此,当接收端丢弃数据单元集合B时,可以同时丢弃数据单元集合A。当然,基于第二指示信息的说明,本申请实施例所示的第一指示信息也可以用于指示丢弃与一个或多个数据单元对应的数据单元集合。
接收端的实体可以包括接收端的PDCP实体,发送端的实体可以包括发送端的PDCP实体。或者,接收端的实体可以包括接收端的RLC实体,发送端的实体可以包括发送端的RLC实体。
本申请实施例中,接收端通过向发送端发送第二指示信息,可使得发送端的实体能够基于该第二指示信息清除缓存。
402、将接收端的实体维护的第一变量的取值更新为大于最大序号,该第一变量用于表示序号大于或等于第一变量的取值的数据单元待该接收端的实体处理。
将接收端的实体维护的第一变量的取值更新为大于最大序号可以理解为:将接收端的实体维护的第一变量的取值更新为最大序号+1,或者最大序号+2,或者最大序号+3等,这里不再一一列举。第一变量用于表示序号大于或等于第一变量的取值的数据单元待接收端的实体处理,可以理解为:第一变量用于表示序号小于第一变量的取值的数据单元无需接收端的实体处理。作为一个示例,最大序号为5,则第一变量的取值可以更新为6,由此接收端的实体可以无需对序号小于6的数据单元进行处理,关注序号大于或等于6的数据单元即可,如接收端的实体可以对序号为6的数据单元进行重组,或者,按序向上层递交序号大于或等于6的数据单元。
作为一种可能的实现方式,将接收端的实体维护的第一变量的取值更新为大于最大序号包括:将接收端的实体维护的第一变量的取值更新为大于最大序号,且第一个未完成重组的数据单元的序号。第一变量用于表示序号大于或等于第一变量的取值的数据单元待接收端的实体进行重组(也可以理解为序号小于第一变量的取值的数据单元无需接收端的实体进行重组)。第一个未完成重组的数据单元的序号可以理解为最早的未完成重组的数据单元的序号;或者,未完成重组的数据单元的最小序号。
作为另一种可能的实现方式,将接收端的实体维护的第一变量的取值更新为大于最大序号包括:将接收端的实体维护的第一变量的取值更新为大于最大序号,且第一个未递交到上层的不连续的数据单元的序号。第一变量用于表示序号大于或等于第一变量的取值的数据单元待接收端的实体递交到上层。第一个未递交到上层的不连续的数据单元的序号可以理解为未递交到上层的不连续的数据单元的最小序号或最早序号。
作为一种可能的实现方式,图4所示的方法还包括:
403、在第一变量的取值更新为大于最大序号的情况下,丢弃序号小于第一变量的取值的数据单元。
序号小于第一变量的取值的数据单元无需接收端的实体处理,因此接收端的实体可以丢弃小于第一变量的取值的数据单元。当然,接收端的实体丢弃小于第一变量的取值的数据单元时,可以基于其已经向上层递交的数据单元的情况以及发送端所指示的最大序号进行丢弃。当上述一个或多个数据单元属于一个或多个数据单元集合时,该接收端的实体可以丢弃该一个或多个数据单元集合。
这里所示的基于接收端已经向上层递交的数据单元的情况以及发送端所指示的最大序号进行丢弃可以理解为:接收端可以基于其接收缓存中所缓存的数据单元以及发送端所指示的最大序号进行丢弃。如接收端可以丢弃接收缓存中序号小于第一变量的取值的数据单元。
可理解,本申请实施例对于步骤402和步骤403的先后顺序不作限定。步骤403中所示的在第一变量的取值更新为大于最大序号的情况下,丢弃序号小于第一变量的取值的数据单元,并不表示必须是在丢弃序号小于第一变量的取值的数据单元之前,将第一变量的取值更新为大于最大序号,而是表示步骤402和步骤403之间可以相互耦合。同样的,下文所示的步骤404和步骤405之间可以相互耦合。
404、将接收端的实体维护的第一变量的取值更新为等于最大序号,该第一变量用于表示序号大于第一变量的取值的数据单元待接收端的实体处理。
第一变量用于表示序号大于第一变量的取值的数据单元待接收端的实体处理可以理解为:序号小于或等于第一变量的取值的数据单元无需接收端的实体处理;或者,序号大于第一变量的取值的数据单元待接收端的实体进行重组;或者,序号大于第一变量的取值的数据单元待接收端的实体递交到上层。至于序号大于第一变量的取值的数据单元中是否包括已完成重组的数据单元,或者,是否包括已递交到上层的数据单元,本申请实施例不作限定。
作为一种可能的实现方式,图4所示的方法还包括:
405、在第一变量的取值更新为等于所述最大序号的情况下,丢弃序号小于或等于第一变量的取值的数据单元。
关于步骤405的具体说明可以参考步骤403,这里不作详述。下文所示的示例一至示例三是以步骤402和步骤403为例示出的,不应将其理解为对本申请实施例的限定。
可理解,本申请实施例对于步骤404和步骤405的先后顺序不作限定。
需要说明的是,上述步骤402和步骤404可以理解为并列的方案,即图4所示的方法可以包括步骤401、步骤402、步骤403;或者包括步骤401、步骤404、步骤405。
不管是发送端丢弃一个或多个数据单元,还是接收端丢弃一个或多个数据单元,接收端的实体都需要根据其接收到的数据单元的序号来维护第一变量。如果出现丢弃数据单元的情况,但是接收端的实体未能及时获取已经丢弃的数据单元的最大序号,无法根据丢弃的数据单元更新其维护的第一变量,则会导致接收端的实体向上层递交数据单元的进程受限,增加处理时延。
通过本申请实施例提供的方案,接收端根据第一指示信息中所指示的最大序号将其维护的第一变量的取值更新为大于该最大序号,由此,有效改善了接收端的实体由于受到丢弃的数据单元的影响而导致处理数据单元的进程缓慢的情况,有效提高了接收端处理进行的进度。
以下将结合具体的协议层说明图4所示的方法,但是不应将下文所示的协议层理解为对本申请实施例的限定。
本申请的一些实施例中,发送端的PDCP实体可以触发主动丢弃一个或多个数据单元,指示RLC实体丢弃该一个或多个数据单元。又或者,发送端的PDCP实体可以触发主动丢弃数据单元集合,指示RLC实体丢弃属于丢弃的数据单元集合的所有数据单元。发送端的RLC实体触发主动丢弃数据单元,或者发送端的RLC实体触发主动丢弃数据单元集合,丢弃属于丢弃的数据单元集合的所有数据单元。
从上文介绍的PDCP实体可以看出,PDCP实体的丢弃定时器超时指示RLC实体丢弃数据单元,该RLC实体丢弃数据单元的条件是该数据单元及该数据单元的片段还没有被递交到MAC层。尤其是对于AM RLC实体发送端来说,一旦某个数据单元被递交到MAC层,AM RLC实体发送端会将该数据单元放入重传缓存中,在接收到AM RLC实体接收端反馈的确认消息之前,AM RLC实体发送端会不断重传该数据单元。PDCP实体指示RLC实体丢弃数据单元的前提条件为该数据单元已经无用了,如果这时候RLC实体还发送该数据单元,则不仅会造成空口资源的浪费,还会影响接收端的RLC实体处理数据单元的进程。尤其是对于XR业务来说,当数据单元的传输时延超过包时延预算(packet delay budget,PDB),就认为该数据单元传输失败或丢失,由此发送端没有必要再尝试传输或者重传该数据单元。
上述描述不仅对单个数据单元适用,而且也适用于数据单元集合。如在一些情况下,数据单元集合的丢包情况符合第一条件,则表示该数据单元集合不可用,发送端没有必要再尝试传输该数据单元集合中的其他未传输的数据单元。由此,本申请实施例提供了下文所示的示例一和示例二。
示例一、
为改善上述问题,发送端的PDCP实体的丢弃定时器超时指示RLC实体丢弃数据单元时,或者,发送端的RLC实体触发主动丢弃数据单元时,对于发送端的RLC实体来说,可以执行如下至少一项操作:
(1)丢弃该数据单元,无论该数据单元是否有片段被递交到MAC层。同样的,发送端的PDCP实体确定丢弃某个数据单元集合时,PDCP实体可以指示RLC实体丢弃该数据单元集合,不论该数据单元集合中是否已经有数据单元被递交到MAC层,或者,不论是该数据单元集合中是否已经有数据单元的片段被递交到MAC层。
可理解,对于AM的服务模式来说,发送端的RLC实体还可以丢弃在重传缓存中的数据单元(如RLC SDU、RLC PDU)或该数据单元的片段中的至少一项;或者,丢弃在重传缓存中的数据单元集合、数据单元集合包括的数据单元、数据单元的片段中的至少一项。
(2)向接收端的RLC实体发送第一指示信息,用于指示此次丢弃的数据单元的最大SN。
可选地,发送端的RLC实体可以维护一个变量,例如为discardSN,令该变量的值等于此次丢弃的数据单元的最大SN,第一指示信息可以包括该变量的取值。或者,该变量的取值等于此次丢弃的数据单元的最大SN+1,第一指示信息可以包括该变量的取值-1。
作为一个示例,发送端的RLC实体可以在完成丢弃数据单元或数据单元集合的情况下,向接收端的RLC实体发送第一指示信息。作为另一个示例,对于AM的服务模式来说,发送端的RLC实体可以在接收到RLC状态报告的情况下,向接收端的RLC实体发送该第一指示信息。本申请实施例对于发送端的RLC实体发送第一指示信息的时机不作限定。
示例性的,第一指示信息可以包含于RLC控制协议数据单元(control PDU)或者RLC数据协议数据单元(data PDU)中。例如,发送端的RLC实体可以在后续(相对于丢弃的最大序号的数据单元来说)发送的N个数据PDU的每个RLC头中包括最大序号。其中,N的取值可以由网络设备通过无线资源控制(radio resource control,RRC)信令或者MAC控制单元(control element,CE)或者层1信令(如下行控制信息(downlink control information,DCI))配置给终端设备。又例如,发送端的RLC实体可以在后续发送的N个数据PDU的每个RLC头中包括当前传输的数据PDU的SN和最大序号之间的偏移量。例如最大序号为103,则在SN为104的数据PDU中携带偏移值1,在SN为105的数据PDU中携带偏移值2,以此类推。可理解,对于SN为104的数据PDU和SN为105的数据PDU是否会被丢弃,本申请实施例不作限定。最大序号为103可以理解为本次丢弃的数据单元中的最大序号。
接收UM RLC实体在接收到第一指示信息后,可以执行以下至少一项操作:
(1)更新变量RX_Next_Reassembly(即为第一变量)为SN大于第一指示信息中所指示的最大序号,且第一个尚未完成重组的数据单元的SN(也可以理解为最早的尚未完成重组的数据单元的SN,或尚未完成重组的最小SN)。
(2)丢弃接收缓存中的SN小于更新后的RX_Next_Reassembly的SDU片段。
(3)对应修改其他接收侧变量和定时器状态,例如当更新后的RX_Next_Reassembly大于或等于RX_Timer_Trigger,停止重组定时器t-Reassembly。
AM RLC实体接收端在接收到第一指示信息后,可以执行以下至少一项操作:
(1)更新变量RX_Next(即为第一变量)为SN大于第一指示信息中所指示的最大序号,且第一个尚未完成重组的数据单元的SN(也可以理解为最早的尚未完成重组的数据单元的SN,或尚未完成重组的最小SN)。
(2)丢弃接收缓存中的SN小于更新后的RX_Next的SDU片段。
(3)对应修改其他接收侧变量和定时器状态,例如当更新后的RX_Next值大于RX_Next_Status_Trigger,停止重组定时器t-Reassembly。
可理解,关于接收UM RLC实体更新除第一变量之外的其他变量和定时器状态的说明,可以参考上文的说明,这里不再一一详述。
图5a和图5b是本申请实施例提供的一种数据处理的场景示意图。如图5a和图5b所示,AM RLC实体发送端丢弃数据单元集合,该数据单元集合中包括SN=100至SN=103的数据单元,且最大序号为103。图5a和图5b的不同如下所示:图5a中,发送端可以是在发送SN=100的数据单元之后,在发送后续数据单元的过程中,出现了如下至少一个情况:SN=101对应的丢弃定时器超时、SN=102对应的丢弃定时器超时。由于这个数据单元集合的丢包情况符合第一条件,因此发送端确定丢弃该数据单元集合。而图5b中,发送端可以是已经发送了SN=100至SN=103的数据单元,接收端成功接收了SN=101和SN=103的数据单元,但未接收到SN=100和SN=102的数据单元。从而,接收端在状态报告中指示发送端重传SN=100和SN=102的数据单元。发送端在重传SN=100和SN=102的数据单元时,SN=100对应的丢弃定时器超时,SN=102对应的丢弃定时器超时,因此发送端确定丢弃数据单元集合。
对于图5b来说,假设AM RLC实体接收端未获取到第一指示信息所指示的最大序号,则由于AM RLC实体接收端未接收到SN=100的数据单元,因此RX_Next无法更新,且AMRLC实体接收端还会不断触发状态报告,指示AM RLC实体发送端重传SN=100的数据单元。然而,由于发送端已经丢弃了SN=100的数据单元,因此接收端永远无法接收到SN=100的数据单元,从而导致AM RLC实体接收端的处理进程停滞不前。
然而,本申请实施例中,AM RLC实体发送端向AM RLC实体接收端指示上述最大序号(SN=103)。AM RLC实体接收端接收到该最大序号的情况下,将其维护的变量RX_Next更新为大于103,且尚未完成重组的最小SN,如104。
本申请实施例中,发送端的PDCP实体指示发送端的RLC实体丢弃某个数据单元集合时,无论该RLC实体是否有SDU片段被递交到MAC层,均可以丢弃该某个数据单元集合。从而,有效避免该某个数据单元集合在空口上传输以及还可以有效避免接收端的RLC实体(如AM RLC实体)不断触发状态报告请求重传,有效节省了空口资源和传输能量,降低了通信装置的能耗。发送端的PDCP实体指示发送端的RLC实体丢弃某个数据单元集合,该发送端的RLC实体通过向接收端的RLC实体发送第一指示信息,可使得接收端的RLC实体能够及时更新其维护的变量,有效避免了接收端的RLC实体由于无法接收到发送端的RLC实体丢弃的数据单元集合而导致处理进程停滞不前。以及对于AM RLC实体来说,还可以有效避免AM RLC实体接收端不断触发状态报告。从而,AM RLC实体接收端通过更新其维护的变量,不仅保证其进程不受丢弃的数据单元集合的影响,而且还避免了不断触发状态报告而带来的能耗损失。
示例二、
发送PDCP实体确定丢弃某个数据单元集合的情况下,该发送PDCP实体可以执行如下至少一项操作:
(1)丢弃某个数据单元集合,清除该数据单元集合的缓存。
(2)向接收PDCP实体发送第一指示信息,用于指示该某个数据单元集合中数据单元的最大序号。
可选地,发送PDCP实体可以维护一个变量,例如为discardSN,该变量的值等于丢弃的PDCP SDU的最大SN或者最大计数值,第一指示信息可以包括该变量的取值。或者,该变量的取值等于此次丢弃的数据单元的最大SN+1或者最大计数值+1,第一指示信息可以包括该变量的取值-1。
示例性的,第一指示信息可以包含于PDCP控制PDU中,或者包含于PDCP数据PDU中。以图5c为例,发送PDCP实体丢弃的数据单元的最大序号为205,则发送PDCP实体可以在控制PDU中携带该最大序号,或者,携带最大计数值。可理解,关于计数值与SN之间的换算关系可以参考相关标准或协议,本申请实施例对此不作详述。
又例如,发送PDCP实体可以在后续发送的N个PDCP数据PDU的每个PDCP头中加入第一指示信息。其中第一指示信息可以是此次丢弃的PDCP SDU的最大SN或者最大COUNT值。或者,第一指示信息也可以是丢弃的最大SN/最大COUNT值与当前发送的PDCP数据PDU的SN/COUNT值之间的偏移量。例如在SN为206的PDCP数据PDU中携带偏移值1,在SN为207的PDCP数据PDU中携带偏移值2,以此类推。
接收PDCP实体在接收到第一指示信息后,可以执行以下步骤:
(1)根据第一指示信息确定丢弃的PDCP SDU的最大计数值。具体地,如果指示信息为SN,则接收PDCP实体推导出对应的最大COUNT值,推导方法可以和发送PDCP实体根据PDCP头中的SN推导COUNT值的方法相同;如果数据PDU中的指示信息为偏移值,则通过计算当前PDCP数据PDU的SN/COUNT值减去偏移值得到最大COUNT值。
(2)接收PDCP实体丢弃接收缓存中计数值小于等于最大计数值的所有PDCP SDU,从计数值等于最大COUNT值+1的PDCP SDU开始,向上层按序递交SDU,直到出现计数值不连续为止,令变量RX_DELIV(即第一变量)等于第一个尚未递交到上层的SDU的计数值。例如,若最大计数值=5,接收缓存中的SDU的计数值为3,4,5,6,7,8,10,则接收PDCP实体丢弃计数值为3,4,5的SDU,向上层递交COUNT值为6,7,8的SDU,令变量RX_DELIV等于9。
可选地,发送PDCP实体可以维护一个变量,如discardSN,该变量的取值可以等于此次丢弃的PDCP SDU的最大SN或最大计数值,第一指示信息可以包括该变量的取值。或者,该变量的取值可以等于此次丢弃的数据单元的最大SN加1或者最大COUNT值加1,第一指示信息可以包括该变量的取值-1。可选地,接收PDCP实体可以维护该变量discardSN,该变量的取值可以依据第一指示信息对应修改。
本申请实施例中,通过向接收PDCP实体发送第一指示信息,可以有效避免接收PDCP实体由于接收窗口内的PDCP SDU计数值不连续触发重排序,增加处理时延,影响后续PDU set的递交。
可理解,上述示例二可以与示例一结合,也就是说,发送PDCP实体确定丢弃某个数据单元集合的情况下,发送PDCP实体可以指示接收PDCP实体更新其维护的变量,也可以指示发送端的RLC实体丢弃该某个数据单元集合,发送端的RLC实体可以指示接收端的RLC实体更新其维护的变量。
示例一和示例二均是以发送PDCP实体确定丢弃某个数据单元集合为例示出的,示例三将以接收PDCP实体确定丢弃某个数据单元为例进行说明。
示例三、
接收PDCP实体确定丢弃某个数据单元集合的情况下,可以执行如下操作:
(1)丢弃接收缓存中属于该某个数据单元集合的所有PDCP SDU。
(2)接收PDCP实体更新接收窗口的下边界,如变量RX_DELIV(即第一变量)更新为大于最大序号。该最大序号为某个数据单元集合中的数据单元的最大序号。如可以将变量RX_DELIV更新为属于下一个数据单元集合的第一个PDCP SDU的计数值。
(3)向发送PDCP实体发送第二指示信息。
示例性的,第二指示信息可以包含于PDCP控制PDU中。该PDCP控制PDU可以是PDCP状态报告,也可以是新的PDCP控制PDU。示例性的,第二指示信息可以用于指示接收PDCP实体丢弃的上述某个数据单元集合的集合序号,或者,该第二指示信息可以用于指示接收PDCP实体丢弃的上述某个数据单元集合中的数据单元的最大序号。关于第二指示信息的说明可以参考图4,这里不再一一详述。
本申请实施例中,接收PDCP实体在确定丢弃某个数据单元集合的情况下,通过更新其维护的变量可以有效避免其接收窗口内的SDU的计数值不连续而不断触发重排序的情况,有效减少了接收PDCP实体的处理时延。以及接收PDCP实体通过丢弃某个数据单元集合,有效避免了向上层递交无用的数据单元集合,从而简化了处理,降低了设备能耗。
可理解,本申请实施例所示的各个变量的具体表示形式仅为示例,不应将其理解为对本申请实施例的限定。
在本申请的另一些实施例中,对于上行业务,当UE侧的PDCP实体或RLC实体主动丢弃无用的PDU set,可能导致需要传输的数据量大幅下降,如果基站依然按照主动丢帧之前上报的BSR为UE分配上行传输资源,可能导致资源浪费。
鉴于此,本申请实施例还提供了一种数据处理方法及装置,有效节省了传输资源。
图6是本申请实施例提供的一种数据处理方法的流程示意图,如图6所示,该方法包括:
601、在丢弃数据单元集合的情况下,UE触发BSR,该BSR包括丢弃该数据单元集合之后逻辑信道队列中缓存的数据量。
本申请实施例中,UE在满足如下至少一项条件时,触发BSR:
UE的PDCP实体丢弃数据单元集合;UE的RLC实体丢弃数据单元集合;UE的PDCP实体丢弃数据单元集合,且该PDCP实体对应的逻辑信道或逻辑信道组的缓存数据量的变化值大于或等于第一阈值;UE的RLC实体丢弃数据单元集合,且该RLC实体对应的逻辑信道或逻辑信道组的缓存数据量的变化值大于或等于第一阈值。
其中,第一阈值可以由基站通过RRC信令、MAC CE信令或层1信令中的至少一项配置给UE。
作为示例,发送PDCP实体数据量可以包括如下至少一项的数据量:尚未构造PDCP数据PDU的PDCP SDU;尚未递交到低层的PDCP数据PDU;PDCP控制PDU;待重传的PDCP SDU(对于AM DRB对应的PDCP实体);待重传的PDCP数据PDU(对于AM DRB对应的PDCP实体)。AM DRB可以理解为与AM RLC实体对应的DRB,或者与AM RLC实体对应的PDCP实体。
作为示例,RLC实体数据量包括如下至少一项的数据量:尚未包含在RLC数据PDU中的RLC SDU或RLC SDU片段;等待初传的RLC数据PDU;等待重传的RLC数据PDU(对于AM RLC);触发了状态报告且定时器t-StatusProhibit不在运行或者超时,UE估计下一次发送的状态报告的大小,将其作为RLC实体数据量的一部分。
可理解,尚未包含在RLC数据PDU中的RLC SDU或RLC SDU片段可以理解为:RLC实体获取到的,尚未处理的数据单元。
可理解,以上所示的发送PDCP实体和RLC实体的数据量的衡量方式仅为示例,不应将其理解为对本申请实施例的限定。
可选地,BSR可以采用如协议38.321中涉及的BSR MAC CE格式进行传输,例如short BSR MAC CE;或者可以采用新的MAC CE格式进行传输。
BSR中可以包括执行主动丢帧的PDCP实体或RLC实体对应的逻辑信道或逻辑信道组的最新缓存数据量。
602、UE向基站发送BSR,对应的,基站接收该BSR。
示例性的,该BSR可以用于请求传输上述数据量的资源;或者,该BSR可以用于向基站提供关于上行数据量的信息。
可理解,以上所示的触发BSR可以理解为UE在触发BSR之后需要满足一定条件时向基站发送该BSR。满足发送BSR的条件可以包括:有用于新传的上行共享信道传输资源,且根据逻辑信道优先级进行组包的时候该上行共享信道传输资源大小足够容纳BSR MAC CE加上它的子头。关于UE发送BSR的条件,本申请实施例不作限定。
本申请实施例中,在UE丢弃数据单元集合的情况下,通过触发BSR,向基站上报最新的缓存数据量,可避免在UE执行主动丢帧后基站分配的上行传输资源数量和需要传输的上行数据量不匹配,造成资源浪费。从而保证基站能够根据最新缓存状态分配适量的上行传输资源,可以合理安排资源,避免资源浪费。
以下将介绍本申请实施例提供的通信装置。
本申请根据上述方法实施例对通信装置进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。下面将结合图7至图9详细描述本申请实施例的通信装置。
图7是本申请实施例提供的一种通信装置的结构示意图,如图7所示,该通信装置包括处理单元701和收发单元702。
在本申请的一些实施例中,该通信装置可以是上文示出的接收端或芯片,该芯片可以设置于接收端中。即该通信装置可以用于执行上文方法实施例中由接收端执行的步骤或功能等。
处理单元701,用于获取第一指示信息;处理单元701,还用于将通信装置的实体维护的第一变量的取值更新为大于最大序号;或者,处理单元701,还用于将通信装置的实体维护的第一变量的取值更新为等于最大序号。
示例性的,处理单元701,可以通过收发单元702接收来自发送端的第一指示信息,或者,该处理单元701,可以确定第一指示信息。
在一种可能的实现方式中,处理单元701,还用于在第一变量的取值更新为大于最大序号的情况下,丢弃序号小于第一变量的取值的数据单元;或者,在第一变量的取值更新为等于最大序号的情况下,丢弃序号小于或等于第一变量的取值的数据单元。
在一种可能的实现方式中,处理单元701,具体用于将通信装置的实体维护的第一变量的取值更新为大于最大序号,且第一个未完成重组的数据单元的序号;或者,将通信装置的实体维护的第一变量的取值更新为大于最大序号,且第一个未递交到上层的不连续的数据单元的序号。
在一种可能的实现方式中,处理单元701,具体用于通过收发单元702输入第一指示信息。
在一种可能的实现方式中,所述处理单元701,具体用于确定丢弃一个或多个数据单元,并确定第一指示信息。
在一种可能的实现方式中,处理单元701,还用于获取丢弃的数据单元集合的序号;以及根据丢弃的数据单元集合的序号确定多个数据单元的最大序号。
在一种可能的实现方式中,收发单元702,还用于输出第二指示信息。
可理解,本申请实施例示出的收发单元和处理单元的具体说明仅为示例,对于收发单元和处理单元的具体功能或执行的步骤等,可以参考上述方法实施例,这里不再详述。
本申请实施例中,关于第一指示信息、最大序号、丢弃的一个或多个数据单元、第二指示信息等说明还可以参考上文方法实施例中的介绍,这里不再一一详述。
复用图7,在本申请的另一些实施例中,该通信装置可以是上文示出的终端设备或芯片,该芯片可以设置于终端设备中。即该通信装置可以用于执行上文方法实施例中由终端设备或UE执行的步骤或功能等。
如处理单元701,用于在丢弃数据单元集合的情况下,触发BSR;收发单元702,用于输出该BSR。
可理解,本申请实施例示出的收发单元和处理单元的具体说明仅为示例,对于收发单元和处理单元的具体功能或执行的步骤等,可以参考上述方法实施例,这里不再详述。
本申请实施例中,关于BSR、缓存状态报告等说明还可以参考上文方法实施例中的介绍,这里不再一一详述。
以上介绍了本申请实施例的通信装置,以下介绍所述通信装置可能的产品形态。应理解,但凡具备上述图7所述的通信装置的功能的任何形态的产品,都落入本申请实施例的保护范围。还应理解,以下介绍仅为举例,不限制本申请实施例的通信装置的产品形态仅限于此。
在一种可能的实现方式中,图7所示的通信装置中,处理单元701可以是一个或多个处理器,收发单元702可以是收发器,或者收发单元702还可以是发送单元和接收单元,发送单元可以是发送器,接收单元可以是接收器,该发送单元和接收单元集成于一个器件,例如收发器。本申请实施例中,处理器和收发器可以被耦合等,对于处理器和收发器的连接方式,本申请实施例不作限定。在执行上述方法的过程中,上述方法中有关发送信息的过程,可以理解为由处理器输出上述信息的过程。在输出上述信息时,处理器将该上述信息输出给收发器,以便由收发器进行发射。该上述信息在由处理器输出之后,还可能需要进行其他的处理,然后才到达收发器。类似的,上述方法中有关接收信息的过程,可以理解为处理器接收输入的上述信息的过程。处理器接收输入的信息时,收发器接收该上述信息,并将其输入处理器。更进一步的,在收发器收到该上述信息之后,该上述信息可能需要进行其他的处理,然后才输入处理器。
如图8所示,该通信装置80包括一个或多个处理器820和收发器810。
示例性的,当该通信装置用于执行上述接收端端执行的步骤或方法或功能时,
处理器820,用于获取第一指示信息;处理器820,还用于将通信装置的实体维护的第一变量的取值更新为大于最大序号;或者,处理器820,还用于将通信装置的实体维护的第一变量的取值更新为等于最大序号。
在一种可能的实现方式中,处理器820,还用于在第一变量的取值更新为大于最大序号的情况下,丢弃序号小于第一变量的取值的数据单元;或者,在第一变量的取值更新为等于最大序号的情况下,丢弃序号小于或等于第一变量的取值的数据单元。
在一种可能的实现方式中,处理器820,具体用于将通信装置的实体维护的第一变量的取值更新为大于最大序号,且第一个未完成重组的数据单元的序号;或者,将通信装置的实体维护的第一变量的取值更新为大于最大序号,且第一个未递交到上层的不连续的数据单元的序号。
在一种可能的实现方式中,收发器810,用于接收第一指示信息。
在一种可能的实现方式中,所述处理器820,具体用于确定丢弃一个或多个数据单元,并确定第一指示信息。
在一种可能的实现方式中,处理器820,还用于获取丢弃的数据单元集合的序号;以及根据丢弃的数据单元集合的序号确定多个数据单元的最大序号。
在一种可能的实现方式中,收发器810,还用于发送第二指示信息。
本申请实施例中,关于第一指示信息、最大序号、丢弃的一个或多个数据单元、第二指示信息等说明还可以参考上文方法实施例中的介绍,这里不再一一详述。
示例性的,当该通信装置用于执行上述终端设备执行的步骤或方法或功能时,处理器820,用于在丢弃数据单元集合的情况下,触发BSR;收发器810,用于发送该BSR。
本申请实施例中,关于BSR、缓存状态报告等说明还可以参考上文方法实施例中的介绍,这里不再一一详述。
可理解,对于处理器和收发器的具体说明还可以参考图7所示的处理单元和收发单元的介绍,这里不再赘述。
在图8所示的通信装置的各个实现方式中,收发器可以包括接收机和发射机,该接收机用于执行接收的功能(或操作),该发射机用于执行发射的功能(或操作)。以及收发器用于通过传输介质和其他设备/装置进行通信。
可选的,通信装置80还可以包括一个或多个存储器830,用于存储程序指令和/或数据等。存储器830和处理器820耦合。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器820可能和存储器830协同操作。处理器820可可以执行存储器830中存储的程序指令。可选的,上述一个或多个存储器中的至少一个可以包括于处理器中。
本申请实施例中不限定上述收发器810、处理器820以及存储器830之间的具体连接介质。本申请实施例在图8中以存储器830、处理器820以及收发器810之间通过总线840连接,总线在图8中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在本申请实施例中,处理器可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成等。
本申请实施例中,存储器可包括但不限于硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD)等非易失性存储器,随机存储记忆体(Random AccessMemory,RAM)、可擦除可编程只读存储器(Erasable Programmable ROM,EPROM)、只读存储器(Read-Only Memory,ROM)或便携式只读存储器(Compact Disc Read-Only Memory,CD-ROM)等等。存储器是能够用于携带或存储具有指令或数据结构形式的程序代码,并能够由计算机(如本申请示出的通信装置等)读和/或写的任何存储介质,但不限于此。本申请实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
示例性的,处理器820主要用于对通信协议以及通信数据进行处理,以及对整个通信装置进行控制,执行软件程序,处理软件程序的数据。存储器830主要用于存储软件程序和数据。收发器810可以包括控制电路和天线,控制电路主要用于基带信号与射频信号的转换以及对射频信号的处理。天线主要用于收发电磁波形式的射频信号。输入输出装置,例如触摸屏、显示屏,键盘等主要用于接收用户输入的数据以及对用户输出数据。
当通信装置开机后,处理器820可以读取存储器830中的软件程序,解释并执行软件程序的指令,处理软件程序的数据。当需要通过无线发送数据时,处理器820对待发送的数据进行基带处理后,输出基带信号至射频电路,射频电路将基带信号进行射频处理后将射频信号通过天线以电磁波的形式向外发送。当有数据发送到通信装置时,射频电路通过天线接收到射频信号,将射频信号转换为基带信号,并将基带信号输出至处理器820,处理器820将基带信号转换为数据并对该数据进行处理。
在另一种实现中,所述的射频电路和天线可以独立于进行基带处理的处理器而设置,例如在分布式场景中,射频电路和天线可以与独立于通信装置,呈拉远式的布置。
可理解,本申请实施例示出的通信装置还可以具有比图8更多的元器件等,本申请实施例对此不作限定。以上所示的处理器和收发器所执行的方法仅为示例,对于该处理器和收发器具体所执行的步骤可参照上文介绍的方法。
在另一种可能的实现方式中,图7所示的通信装置中,处理单元701可以是一个或多个逻辑电路,收发单元702可以是输入输出接口,又或者称为通信接口,或者接口电路,或接口等等。或者收发单元702还可以是发送单元和接收单元,发送单元可以是输出接口,接收单元可以是输入接口,该发送单元和接收单元集成于一个单元,例如输入输出接口。如图9所示,图9所示的通信装置包括逻辑电路901和接口902。即上述处理单元701可以用逻辑电路901实现,收发单元702可以用接口902实现。其中,该逻辑电路901可以为芯片、处理电路、集成电路或片上***(system on chip,SoC)芯片等,接口902可以为通信接口、输入输出接口、管脚等。示例性的,图9是以上述通信装置为芯片为例出的,该芯片包括逻辑电路901和接口902。
本申请实施例中,逻辑电路和接口还可以相互耦合。对于逻辑电路和接口的具体连接方式,本申请实施例不作限定。
示例性的,当通信装置用于执行上述接收端端执行的方法或功能或步骤时,接口902,用于获取第一指示信息;逻辑电路901,用于将通信装置的实体维护的第一变量的取值更新为大于最大序号;或者,逻辑电路901,用于将通信装置的实体维护的第一变量的取值更新为等于最大序号。
在一种可能的实现方式中,逻辑电路901,还用于在第一变量的取值更新为大于最大序号的情况下,丢弃序号小于第一变量的取值的数据单元;或者,在第一变量的取值更新为等于最大序号的情况下,丢弃序号小于或等于第一变量的取值的数据单元。
在一种可能的实现方式中,逻辑电路901,具体用于将通信装置的实体维护的第一变量的取值更新为大于最大序号,且第一个未完成重组的数据单元的序号;或者,将通信装置的实体维护的第一变量的取值更新为大于最大序号,且第一个未递交到上层的不连续的数据单元的序号。
在一种可能的实现方式中,逻辑电路901,具体用于通过接口902输入第一指示信息。
在一种可能的实现方式中,所述逻辑电路901,具体用于确定丢弃一个或多个数据单元,并确定第一指示信息。
在一种可能的实现方式中,逻辑电路901,还用于获取丢弃的数据单元集合的序号;以及根据丢弃的数据单元集合的序号确定多个数据单元的最大序号。
在一种可能的实现方式中,接口902,还用于输出第二指示信息。
示例性的,当通信装置用于执行上述终端设备执行的方法或功能或步骤时,逻辑电路901,用于在丢弃数据单元集合的情况下,触发BSR;接口902,用于输出该BSR。
可理解,本申请实施例示出的通信装置可以采用硬件的形式实现本申请实施例提供的方法,也可以采用软件的形式实现本申请实施例提供的方法等,本申请实施例对此不作限定。
对于图9所示的各个实施例的具体实现方式,还可以参考上述各个实施例,这里不再详述。
本申请实施例还提供了一种无线通信***,该无线通信***包括发送端和接收端,该发送端和该接收端可以用于执行前述任一实施例(如图4、示例一至示例三、图6)中的方法。或者,该发送端和接收端可以参考图7至图9所示的通信装置。
此外,本申请还提供一种计算机程序,该计算机程序用于实现本申请提供的方法中由接收端执行的操作和/或处理。
本申请还提供一种计算机程序,该计算机程序用于实现本申请提供的方法中由终端设备执行的操作和/或处理。
本申请还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机代码,当计算机代码在计算机上运行时,使得计算机执行本申请提供的方法中由接收端端执行的操作和/或处理。
本申请还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机代码,当计算机代码在计算机上运行时,使得计算机执行本申请提供的方法中由终端设备执行的操作和/或处理。
本申请还提供一种计算机程序产品,该计算机程序产品包括计算机代码或计算机程序,当该计算机代码或计算机程序在计算机上运行时,使得本申请提供的方法中由接收端执行的操作和/或处理被执行。
本申请还提供一种计算机程序产品,该计算机程序产品包括计算机代码或计算机程序,当该计算机代码或计算机程序在计算机上运行时,使得本申请提供的方法中由终端设备执行的操作和/或处理被执行。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例提供的方案的技术效果。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的可读存储介质包括:U盘、移动硬盘、只读存储器(read-onlymemory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (25)
1.一种数据处理方法,其特征在于,所述方法包括:
接收端获取第一指示信息,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号;
将所述接收端的实体维护的第一变量的取值更新为大于所述最大序号,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述接收端的实体处理;或者,
将所述接收端的实体维护的第一变量的取值更新为等于所述最大序号,所述第一变量用于表示序号大于所述第一变量的取值的数据单元待所述接收端的实体处理。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述第一变量的取值更新为大于所述最大序号的情况下,丢弃序号小于所述第一变量的取值的数据单元;或者,
在所述第一变量的取值更新为等于所述最大序号的情况下,丢弃序号小于或等于所述第一变量的取值的数据单元。
3.根据权利要求1或2所述的方法,其特征在于,所述将所述接收端的实体维护的第一变量的取值更新为大于所述最大序号包括:
将所述接收端的实体维护的第一变量的取值更新为大于所述最大序号,且第一个未完成重组的数据单元的序号;或者,
将所述接收端的实体维护的第一变量的取值更新为大于所述最大序号,且第一个未递交到上层的不连续的数据单元的序号。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述接收端的实体处理包括:
所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述接收端的实体进行重组;或者,
所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述接收端的实体递交到上层。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述接收端获取第一指示信息包括:
所述接收端接收所述第一指示信息。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述接收端获取第一指示信息包括:
所述接收端确定丢弃所述一个或多个数据单元,并确定所述第一指示信息。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号包括:所述第一指示信息用于指示丢弃的所述一个或多个数据单元所属的数据单元集合的序号。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
获取丢弃的数据单元集合的序号;
根据所述丢弃的数据单元集合的序号确定所述多个数据单元的最大序号。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述接收端的实体包括分组数据汇聚协议PDCP实体、无线链路控制RLC实体中的至少一项。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号包括:所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序列号SN,或者,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大计数值。
11.根据权利要求6-10任一项所述的方法,其特征在于,所述方法还包括:
所述接收端的实体发送第二指示信息,所述第二指示信息用于指示发送端的实体丢弃所述一个或多个数据单元;或者,所述第二指示信息用于指示发送端的实体丢弃与所述一个或多个数据单元对应的数据单元集合。
12.一种通信装置,其特征在于,所述装置包括:
处理单元,用于获取第一指示信息,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号;
所述处理单元,还用于将所述通信装置的实体维护的第一变量的取值更新为大于所述最大序号,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述通信装置的实体处理;或者,
所述处理单元,还用于将所述通信装置的实体维护的第一变量的取值更新为等于所述最大序号,所述第一变量用于表示大于所述第一变量的取值的数据单元待所述通信装置的实体处理。
13.根据权利要求12所述的装置,其特征在于,
所述处理单元,还用于在所述第一变量的取值更新为大于所述最大序号的情况下,丢弃序号小于所述第一变量的取值的数据单元;或者,在所述第一变量的取值更新为等于所述最大序号的情况下,丢弃序号小于或等于所述第一变量的取值的数据单元。
14.根据权利要求12或13所述的装置,其特征在于,
所述处理单元,具体用于将所述通信装置的实体维护的第一变量的取值更新为大于所述最大序号,且第一个未完成重组的数据单元的序号;或者,将所述通信装置的实体维护的第一变量的取值更新为大于所述最大序号,且第一个未递交到上层的不连续的数据单元的序号。
15.根据权利要求12-14任一项所述的装置,其特征在于,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述通信装置的实体进行重组;或者,所述第一变量用于表示序号大于或等于所述第一变量的取值的数据单元待所述通信装置的实体递交到上层。
16.根据权利要求12-15任一项所述的装置,其特征在于,所述装置还包括收发单元,
所述处理单元,具体用于通过所述收发单元接收所述第一指示信息。
17.根据权利要求12-15任一项所述的装置,其特征在于,
所述处理单元,具体用于确定丢弃所述一个或多个数据单元,并确定所述第一指示信息。
18.根据权利要求12-17任一项所述的装置,其特征在于,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号包括:所述第一指示信息用于指示丢弃的所述一个或多个数据单元所属的数据单元集合的序号。
19.根据权利要求18所述的装置,其特征在于,
所述处理单元,还用于获取丢弃的数据单元集合的序号;以及根据所述丢弃的数据单元集合的序号确定所述多个数据单元的最大序号。
20.根据权利要求12-19任一项所述的装置,其特征在于,所述通信装置的实体包括分组数据汇聚协议PDCP实体、无线链路控制RLC实体中的至少一项。
21.根据权利要求12-20任一项所述的装置,其特征在于,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序号包括:所述第一指示信息用于指示丢弃的一个或多个数据单元的最大序列号SN,或者,所述第一指示信息用于指示丢弃的一个或多个数据单元的最大计数值。
22.根据权利要求17-21任一项所述的装置,其特征在于,
所述收发单元,还用于发送第二指示信息,所述第二指示信息用于指示发送端的实体丢弃所述一个或多个数据单元;或者,所述第二指示信息用于指示发送端的实体丢弃与所述一个或多个数据单元对应的数据单元集合。
23.一种通信装置其特征在于,包括处理器和存储器;
所述存储器用于存储指令;
所述处理器用于执行所述指令,以使权利要求1至11任一项所述的方法被执行。
24.一种通信装置,其特征在于,包括逻辑电路和接口,所述逻辑电路和接口耦合;
所述接口用于输入和/或输出代码指令,所述逻辑电路用于执行所述代码指令,以使权利要求1至11任一项所述的方法被执行。
25.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,当所述计算机程序被执行时,权利要求1至11任一项所述的方法被执行。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210952523.0A CN117641444A (zh) | 2022-08-09 | 2022-08-09 | 数据处理方法及装置 |
PCT/CN2023/108684 WO2024032352A1 (zh) | 2022-08-09 | 2023-07-21 | 数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210952523.0A CN117641444A (zh) | 2022-08-09 | 2022-08-09 | 数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117641444A true CN117641444A (zh) | 2024-03-01 |
Family
ID=89850718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210952523.0A Pending CN117641444A (zh) | 2022-08-09 | 2022-08-09 | 数据处理方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN117641444A (zh) |
WO (1) | WO2024032352A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109561465A (zh) * | 2017-09-27 | 2019-04-02 | 夏普株式会社 | 服务数据单元处理方法、丢弃方法、相应的用户设备和计算机可读介质 |
CN109803277B (zh) * | 2017-11-16 | 2020-12-22 | 华为技术有限公司 | 数据包处理的方法和设备 |
WO2021142764A1 (en) * | 2020-01-17 | 2021-07-22 | Qualcomm Incorporated | Avoiding erroneous discardment of downlink data in an unacknowledged mode (um) |
WO2021217602A1 (zh) * | 2020-04-30 | 2021-11-04 | 华为技术有限公司 | 处理数据包的方法和通信装置 |
CN112153694B (zh) * | 2020-09-30 | 2023-06-16 | Oppo广东移动通信有限公司 | 数据处理方法、装置、终端及存储介质 |
-
2022
- 2022-08-09 CN CN202210952523.0A patent/CN117641444A/zh active Pending
-
2023
- 2023-07-21 WO PCT/CN2023/108684 patent/WO2024032352A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024032352A1 (zh) | 2024-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3616440B1 (en) | Duplicating pdcp pdus for a radio bearer | |
WO2018059590A1 (zh) | 数据处理方法、装置及*** | |
CN108809594B (zh) | 传输数据的方法、终端设备和网络设备 | |
US10374776B2 (en) | Base station, user equipment for integrating multiple rats using carrier aggregation and methods thereof | |
US20230007527A1 (en) | Method for processing data in consideration of tcp/ip | |
CN108282292B (zh) | 用于处理数据的方法、发送端和接收端 | |
CA2753192C (en) | Method of receiving a point-to-multipoint service in a wireless communication system | |
US11943611B2 (en) | Method and apparatus for identifying security key in next generation mobile communication system | |
CN109714134B (zh) | 接收窗口滑动方法及装置 | |
EP3504821B1 (en) | Communications devices, method and mobile communications system | |
CN108809540B (zh) | 数据处理方法及设备 | |
CN112703716B (zh) | 共享无线承载以及终端设备无线标识和无线接入网路径的管理 | |
CN112333769B (zh) | 一种通信方法和装置 | |
CN112311725B (zh) | 一种数据处理方法、装置及终端 | |
WO2023207846A1 (zh) | 通信方法和装置 | |
CN108200605B (zh) | 一种基站的数据传输方法和装置 | |
CN117641444A (zh) | 数据处理方法及装置 | |
CN109729554B (zh) | 上行增强数据传输方法、装置及用户设备 | |
WO2024032354A1 (zh) | 数据处理方法及装置 | |
US10477424B2 (en) | Device and method of handling aggregation of cellular network and wireless local area network | |
CN113573357B (zh) | 下行数据接收方法、***、存储介质及终端 | |
WO2023231599A1 (zh) | 一种用户数据处理方法和装置 | |
US20240259796A1 (en) | Method and apparatus for identifying security key in next generation mobile communication system | |
WO2024092749A1 (en) | Pdcp reordering enhancements | |
WO2022242484A1 (zh) | 一种通信方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |