pdu。
14.第四方面,提供了一种通信设备,包括处理器和存储器,该存储器用于存储计算机程序,该处理器用于调用并运行该存储器中存储的计算机程序,执行上述第一方面或其各实现方式中的方法。
15.第五方面,提供了一种芯片,该芯片包括:处理器,用于从存储器中调用并运行计算机程序,使得该处理器执行如上述第一方面或其各实现方式中的方法。
16.第六方面,提供了一种计算机存储介质,该计算机存储介质存储有计算机程序,该计算机程序被至少一个处理器执行时实现上述第一方面或其各实现方式中的方法。
17.通过上述技术方案,在pdcp pdu的序列号之前存在序列号空隙的情况下,根据该pdcp pdu对应的rlc序列号和该pdcp pdu对应的rlc接收下限值,确定是否递交该pdcp pdu。也即,在出现pdcp pdu乱序的情况下,可以基于pdcp pdu对应的rlc序列号和pdcp pdu对应的rlc接收下限值,确定是否可以忽略序列号空隙而直接向上层递交pdcp pdu。在确定可以忽略序列号空隙时,可以认为此类序列号空隙是由发送端导致的,不需要继续等待接收rlc实体后续发送的pdcp pdu以便在下一次重排序中递交,可以直接向上层递交pdcp pdu,从而可以实现pdcp pdu的乱序递交,提高了数据包的递交效率。
附图说明
18.图1是本技术实施例应用的一种通信系统架构的示意性图。
19.图2是本技术提供的一种用户面协议栈的示意性图。
20.图3是本技术提供的一种rlc pdu的组成结构的示意性图。
21.图4是本技术提供的一种um模式下rlc实体的示意性图。
22.图5是本技术提供的一种am模式下rlc实体的示意性图。
23.图6是本技术提供的一种rlc实体排序的示意性流程图。
24.图7是本技术提供的一种pdcp实体排序的示意性流程图。
25.图8是本技术提供的一种pdcp递交的示意性图。
26.图9是根据本技术实施例提供的一种无线通信的方法的示意性流程图。
27.图10是本技术实施例提供的一种pdcp实体丢弃数据包导致sn间隙的示意性图。
28.图11是本技术实施例提供的一种pdcp重排序递交的示意性流程图。
29.图12是本技术实施例提供的另一种pdcp重排序递交的示意性流程图。
30.图13是本技术实施例提供的一种am/um模式下重排序递交的示意性图。
31.图14是本技术实施例提供的一种am模式下rb重建后的重排序递交的示意性图。
32.图15是根据本技术实施例提供的一种无线通信的设备的示意性框图。
33.图16是根据本技术实施例提供的一种通信设备的示意性框图。
34.图17是根据本技术实施例提供的一种芯片的示意性框图。
35.图18是根据本技术实施例提供的一种通信系统的示意性框图。
具体实施方式
36.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。针对本技术中的实施
例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
37.本技术实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(global system of mobile communication,gsm)系统、码分多址(code division multiple access,cdma)系统、宽带码分多址(wideband code division multiple access,wcdma)系统、通用分组无线业务(general packet radio service,gprs)、长期演进(long term evolution,lte)系统、先进的长期演进(advanced long term evolution,lte-a)系统、新无线(new radio,nr)系统、nr系统的演进系统、非授权频谱上的lte(lte-based access to unlicensed spectrum,lte-u)系统、非授权频谱上的nr(nr-based access to unlicensed spectrum,nr-u)系统、非地面通信网络(non-terrestrial networks,ntn)系统、通用移动通信系统(universal mobile telecommunication system,umts)、无线局域网(wireless local area networks,wlan)、物联网(internet of things,iot)、无线保真(wireless fidelity,wifi)、第五代通信(5th-generation,5g)系统或其他通信系统等。
38.通常来说,传统的通信系统支持的连接数有限,也易于实现,然而,随着通信技术的发展,移动通信系统将不仅支持传统的通信,还将支持例如,设备到设备(device to device,d2d)通信,机器到机器(machine to machine,m2m)通信,机器类型通信(machine type communication,mtc),车辆间(vehicle to vehicle,v2v)通信,侧行(sidelink,sl)通信,车联网(vehicle to everything,v2x)通信等,本技术实施例也可以应用于这些通信系统。
39.在一些实施例中,本技术实施例中的通信系统可以应用于载波聚合(carrier aggregation,ca)场景,也可以应用于双连接(dual connectivity,dc)场景,还可以应用于独立(standalone,sa)布网场景,或者应用于非独立(non-standalone,nsa)布网场景。
40.在一些实施例中,本技术实施例中的通信系统可以应用于非授权频谱,其中,非授权频谱也可以认为是共享频谱;或者,本技术实施例中的通信系统也可以应用于授权频谱,其中,授权频谱也可以认为是非共享频谱。
41.在一些实施例中,本技术实施例中的通信系统可以应用于fr1频段(对应频段范围410mhz到7.125ghz),也可以应用于fr2频段(对应频段范围24.25ghz到52.6ghz),还可以应用于新的频段例如对应52.6ghz到71ghz频段范围或对应71ghz到114.25ghz频段范围的高频频段。
42.本技术实施例结合网络设备和终端设备描述了各个实施例,其中,终端设备也可以称为用户设备(user equipment,ue)、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置等。
43.终端设备可以是wlan中的站点(station,st),可以是蜂窝电话、无绳电话、会话启动协议(session initiation protocol,sip)电话、无线本地环路(wireless local loop,wll)站、个人数字助理(personal digital assistant,pda)设备、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备、下一代通信系统例如nr网络中的终端设备,或者未来演进的公共陆地移动网络(public land mobile network,plmn)网络中的终端设备等。
44.在本技术实施例中,终端设备可以部署在陆地上,包括室内或室外、手持、穿戴或
车载;也可以部署在水面上(如轮船等);还可以部署在空中(例如飞机、气球和卫星上等)。
45.在本技术实施例中,终端设备可以是手机(mobile phone)、平板电脑(pad)、带无线收发功能的电脑、虚拟现实(virtual reality,vr)终端设备、增强现实(augmented reality,ar)终端设备、工业控制(industrial control)中的无线终端设备、无人驾驶(self driving)中的无线终端设备、远程医疗(remote medical)中的无线终端设备、智能电网(smart grid)中的无线终端设备、运输安全(transportation safety)中的无线终端设备、智慧城市(smart city)中的无线终端设备或智慧家庭(smart home)中的无线终端设备、车载通信设备、无线通信芯片/专用集成电路(application specific integrated circuit,asic)/系统级芯片(system on chip,soc)等。
46.作为示例而非限定,在本技术实施例中,该终端设备还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能首饰等。
47.在本技术实施例中,网络设备可以是用于与移动设备通信的设备,网络设备可以是wlan中的接入点(access point,ap),gsm或cdma中的基站(base transceiver station,bts),也可以是wcdma中的基站(nodeb,nb),还可以是lte中的演进型基站(evolutional node b,enb或enodeb),或者中继站或接入点,或者车载设备、可穿戴设备以及nr网络中的网络设备或者基站(gnb)或者未来演进的plmn网络中的网络设备或者ntn网络中的网络设备等。
48.作为示例而非限定,在本技术实施例中,网络设备可以具有移动特性,例如网络设备可以为移动的设备。在一些实施例中,网络设备可以为卫星、气球站。例如,卫星可以为低地球轨道(low earth orbit,leo)卫星、中地球轨道(medium earth orbit,meo)卫星、地球同步轨道(geostationary earth orbit,geo)卫星、高椭圆轨道(high elliptical orbit,heo)卫星等。在一些实施例中,网络设备还可以为设置在陆地、水域等位置的基站。
49.在本技术实施例中,网络设备可以为小区提供服务,终端设备通过该小区使用的传输资源(例如,频域资源,或者说,频谱资源)与网络设备进行通信,该小区可以是网络设备(例如基站)对应的小区,小区可以属于宏基站,也可以属于小小区(small cell)对应的基站,这里的小小区可以包括:城市小区(metro cell)、微小区(micro cell)、微微小区(pico cell)、毫微微小区(femto cell)等,这些小小区具有覆盖范围小、发射功率低的特点,适用于提供高速率的数据传输服务。
50.示例性的,本技术实施例应用的通信系统100可以如图1所示。该通信系统100可以包括网络设备110,网络设备110可以是与终端设备120(或称为通信终端、终端)通信的设备。网络设备110可以为特定的地理区域提供通信覆盖,并且可以与位于该覆盖区域内的终端设备进行通信。
51.图1示例性地示出了一个网络设备和两个终端设备,在一些实施例中,该通信系统
100可以包括多个网络设备并且每个网络设备的覆盖范围内可以包括其它数量的终端设备,本技术实施例对此不做限定。
52.在一些实施例中,该通信系统100还可以包括网络控制器、移动管理实体等其他网络实体,本技术实施例对此不作限定。
53.应理解,本技术实施例中网络/系统中具有通信功能的设备可称为通信设备。以图1示出的通信系统100为例,通信设备可包括具有通信功能的网络设备110和终端设备120,网络设备110和终端设备120可以为上文所述的具体设备,此处不再赘述;通信设备还可包括通信系统100中的其他设备,例如网络控制器、移动管理实体等其他网络实体,本技术实施例中对此不做限定。
54.应理解,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
55.应理解,本文涉及第一通信设备和第二通信设备,第一通信设备可以是终端设备,例如手机,机器设施,用户前端设备(customer premise equipment,cpe),工业设备,车辆等;第二通信设备可以是第一通信设备的对端通信设备,例如网络设备,手机,工业设备,车辆等。在本技术实施例中,第一通信设备可以是终端设备,且第二通信设备可以网络设备(即上行通信或下行通信);或者,第一通信设备可以是第一终端,且第二通信设备可以第二终端(即侧行通信)。
56.本技术的实施方式部分使用的术语仅用于对本技术的具体实施例进行解释,而非旨在限定本技术。本技术的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。
57.应理解,在本技术的实施例中提到的“指示”可以是直接指示,也可以是间接指示,还可以是表示具有关联关系。举例说明,a指示b,可以表示a直接指示b,例如b可以通过a获取;也可以表示a间接指示b,例如a指示c,b可以通过c获取;还可以表示a和b之间具有关联关系。
58.在本技术实施例的描述中,术语“对应”可表示两者之间具有直接对应或间接对应的关系,也可以表示两者之间具有关联关系,也可以是指示与被指示、配置与被配置等关系。
59.本技术实施例中,“预定义”或“预配置”可以通过在设备(例如,包括终端设备和网络设备)中预先保存相应的代码、表格或其他可用于指示相关信息的方式来实现,本技术对于其具体的实现方式不做限定。比如预定义可以是指协议中定义的。
60.本技术实施例中,所述“协议”可以指通信领域的标准协议,例如可以是对现有lte协议、nr协议、wi-fi协议或者与之相关的其它通信系统相关的协议的演进,本技术不对协议类型进行限定。
61.为便于理解本技术实施例的技术方案,以下通过具体实施例详述本技术的技术方案。以下相关技术作为可选方案与本技术实施例的技术方案可以进行任意结合,其均属于本技术实施例的保护范围。本技术实施例包括以下内容中的至少部分内容。
62.图2示出了一种用户面协议栈的基本功能实体的示意图,该用户面协议栈可以包括终端设备(ue)的用户面协议栈和基站(enodeb)的用户面协议栈。ue的用户面协议栈可以包括物理(physical,phy)层、媒体接入控制(media access control,mac)层、无线链路控制(radio link control,rlc)层和分组数据汇聚协议(packet data convergence protocol,pdcp)层。其中,phy层可设置有解码与编码模块(decode&encode),mac层可设置有数据选择与调度模块(mux&schedule),rlc层可设置有重排序与分段等模块(reorder&segment&conc.),pdcp层可设置有头部压缩与密码模块(headercompression&cipher)。按照开放式系统互连(open system interconnect,osi)计算机网络体系结构,mac层、rlc层和pdcp层都是数据链路层的子层。另外,基站的用户面协议栈也可以包括phy层、mac层、rlc层和pdcp层,而且ue中的phy层与基站中的phy层进行信息交互,ue中的mac层可以通过ue中的phy层和基站中的phy层与基站中的mac层进行信息交互,ue中的rlc层可以通过ue中的mac层、phy层和基站中的mac层、phy层与基站中的rlc层进行信息交互,ue中的pdcp层可以通过ue中的rlc层、mac层、phy层和基站中的rlc层、mac层、phy层与基站中的pdcp层进行信息交互。
63.rlc层可以包括透明模式(transparent mode,tm)、非确认模式(unacknowledged mode,um)和确认模式(acknowledged mode,am)。其中,不同的工作模式存在不同的数据传输服务,例如:对于tm模式,无需在传输的rlc协议数据单元(protocol data unit,pdu)中添加rlc头,而且不对高层信息做处理,如寻呼和系统消息使用tm模式;对于um模式,发送端无需得到接收端的肯定应答(acknowledgement,ack)确认,在传输的rlc pdu中添加rlc头,但是不提供可靠的传输,如基于互联网的语音传输(voice over internet protocol,voip)可使用um模式;而对于am模式,发送数据包需要得到接收端的ack确认,在传输的rlc pdu中添加有rlc头,且提供可靠的有序传输,如传输控制协议(transfer control protocol,tcp)模式一般使用am模式。
64.在下行数据包的处理流程中,rlc层负责进行协议数据单元(protocol data unit,pdu)排序,然后按序递交给pdcp层。在pdcp层,互联网协议(internet protocol,ip)头(header)解析以及数据包解密,之后递交给tcp/ip协议栈。在引入pdcp重复(duplication)功能之前,数据包的排序都是在rlc层完成的。rlc层是协议栈数据面的无线链路控制层。rlc协议定义的rlc实体可配置,am模式的rlc实体可以提供tcp业务的可靠性需求。为了适应无线链路的变化,rlc pdu的长度可变。
65.具体的,lte rlc pdu的结构可以如图3所示。由图3可知,rlc pdu的序列号(series number,sn)(由rlc层排序确定)与rlc sdu的sn(由rlc层的上一层排序确定)不相关,rlc sdu会出现分段,rlc sdu会按照顺序级联。因此一个rlc pdu里面的rlc sdu状态如下:rlc sdu i的最后一段+n-1个完整rlc sdu+rlc sdu i+n的第一段(在图3中n=3),或者,rlc sdu i的一个分段(图3中rlc sdu i的第一段)。
66.需要说明的是,在用户面协议栈中,某一层的服务数据单元(service data unit,sdu)和上一层的pdu是对应的。在一些情况下,sdu和pdu并不等同,有时n层的sdu较长,而n层所要求的pdu较短,这时就要对n层的sdu进行分段处理,将一个sdu分成两个或多个pdu来传输。在一些情况下,当n层的pdu所要求的长度比n层的sdu还大时,也可将几个sdu合并成为一个pdu来传输。
67.具体例如,rlc实体从pdcp层接收的数据或发往pdcp层的数据被称为rlc sdu(或pdcp pdu),rlc实体从mac层接收的数据或发往mac层的数据被称为rlc sdu(或mac pdu)。
68.基于上述的rlc pdu结构,rlc实体在下行数据传输中为pdcp层提供递交完整rlc sdu的服务。在um模式下,如图4所示,一个um-rlc实体发送数据,um-rlc实体通过逻辑信道(如专用传输信道(dedicated transmission channel,dtch)/主控制信道(main control channel,mcch)/主传输信道(main transmission channel,mtch)/侧行传输信道(sidelink transmission channel,stch))来接收或发送rlc pdu。具体的,如图4所示,um-rlc实体在发送端通过um-服务接入点(service access point,sap)将来自上层(mac层)的rlc sdu缓存在传输缓存(transmission buffer)中,以及在pdcp层通知其发送rlc pdu时,分段/级联rlc sdu以生成rlc pdu,并赋予合适的sn值,在生成的rlc pdu中添加rlc头,然而将rlc pdu发送给pdcp层。um-rlc实体在接收端接收数据缓存或执行混合自动重传请求(hybrid automatic repeat request,harq)重排,接着移除rlc头,对分段的rlc sdu进行重组(reassembly),最后按序递交给pdcp完整的rlc sdu。并且,对于um模式,无线界面(radio interface)可以是uu接口,也可以是pc5接口。在am模式下,如图5所示,am-rlc实体通过逻辑信道(如专用传输信道(dedicated transmission channel,dtch)/专用控制信道(dedicated control channel,dcch)来接收或发送rlc pdu。具体的,如图5所示,am-rlc实体在发送端通过am-sap将来自上层(mac层)的rlc sdu缓存在传输缓存(transmission buffer)中,并为每一个rlc sdu生成一个rlc头,并缓存在传输缓存(transmission buffer)中,以及在pdcp层通知其发送rlc pdu时,分段/级联rlc sdu以生成rlc pdu,并赋予合适的sn值,在生成的rlc pdu中添加rlc头,然而将rlc pdu发送给pdcp层,此外,am-rlc实体支持rlc sdu或rlc sdu分段的重传,也即在分段/级联rlc sdu之前或之后可以重传缓存中的数据,在发送rlc pdu的同时会放入重传缓存中,以便支持可能的重传。如果收到对应整个rlc sdu的肯定应答(acknowledgement,ack),则对应的rlc sdu将从重传缓存中删除;如果收到了对应整个rlc sdu或部分rlc sdu分段的(negative acknowledgement,nack),则会重传整个或部分rlc sdu。am-rlc实体在接收端接收数据缓存或执行harq重排,判断接收到的pdu是否为重复包,如果是的话,丢弃重复包。接着,检测是否丢失了pdu,如果丢失,则请求重传pdu对应的rlc sdu。然后,移除rlc头,对分段的rlc sdu进行重组(reassembly),最后按序递交给pdcp完整的rlc sdu。
69.在一些实施例中,下行数据传输的流程可以如图6所示,重排序步骤位于rlc层,也即,在rlc层需要对rlc pdu进行排序。然而,在rlc层对rlc pdu进行排序在实现中存在一些缺陷,首先,排序占用大量的rlc层的内存空间,导致rlc层需要占用大量内存存储未完成排序的rlc sdu;其次,在排序完成后,大量的数据包(rlc sdu)会一次性递交给硬件芯片上部署的解密模块,造成解密模块的拥塞和压力。
70.在一些实施例中,下行数据传输的流程可以如图7所示,重排序步骤位于pdcp层,也即,在pdcp层需要对接收到的pdcp pdu进行排序。在将排序功能移动到pdcp层之后,即可解决硬件芯片上部署的解密模块的拥塞和压力问题。如图7所示,由于pdcp层在解密模块之后,所以不会对硬件芯片上部署的解密模块造成数据包冲击,并且pdcp层会直接将未完成排序的pdcp sdu储存在层3(layer 3,l3)处理模块中,等待排序完成便可以通知其进行l3处理,避免了rlc层和l3模块二次存储带来的内存浪费。
71.然而,在采用了pdcp层执行重排序后(如图7所示),pdcp pdu的序列号(sn)可能会出现空隙,例如,pdcp pdu的sn不连续,可能是由pdcp pdu的sn出现空洞或缺失导致。原因在于am/um模式的数据无线承载(data radio bearer,drb)在发送端都支持数据包的丢弃功能,当很长时间没有资源授权,在pdcp队列里超时的数据包(即pdcp pdu)就需要丢弃。丢弃功能有可能会造成pdcp pdu的sn出现空隙,而这些存在sn空隙的pdcp pdu在rlc层是用连续的rlc sn(即rlc层排序得到的sn)来发送的。当不使用rlc排序时,如果出现pdcp pdu sn空隙,pdcp层需要判别pdcp pdu的sn空隙是由于网络侧的丢弃造成还是harq重传导致的rlc层乱序递交造成的,从而进一步判断是否可以向上一层递交数据包。
72.为便于更好的理解本技术实施例,对本技术相关的重排序定时器进行说明。
73.nr系统引入了rlc乱序递交(rlc-outoforderdelivery)域用来实现pdcp重构排序功能,并引入pdcp重排序定时器,在检测到pdcp pdu的sn空隙时启动pdcp重排序定时器,如果收到该sn空隙对应的pdcp pdu则停止pdcp重排序定时器,否则在pdcp重排序定时器超时时认定pdcp pdu的sn空隙为网络侧丢包行为导致,忽略这些pdcp pdu并且递交存储的数据包。
74.rlc实体需要更新传输窗口,并且针对am模式,rlc实体需要向上层反馈状态报告(即ack或nack),具体的,rlc实体会配置重排序定时器,am rlc实体接收端在需要的时候启动或停止重排序定时器,当重排序定时器启动时,记录当前重排序定时器对应的rlc sn范围的上边界和下边界,当rlc sn范围内的rlc全部正确接收时,终止当前重排序定时器。pdcp实体也需要启动另一个重排序定时器保证数据包(pdcp sdu)递交到上层,这样一方面会造成定时器冗余,增加系统复杂度和运行负担。另一方面rlc实体和pdcp实体的两个重排序定时器无法准确同步导致了pdcp实体无法在rlc定时器超时时就向上层递交数据包,在一定种程度上影响了传输速率。
75.为便于更好的理解本技术实施例,对本技术所解决的问题进行说明。
76.rlc实体和pdcp实体内部各自维护有独立的sn,表示个各自的数据包序列号,同时pdcp实体内部维护着一个接收窗口用来表示期望接收的pdcp pdu的sn范围,上一次递交的pdcp pdu sn(last_submitted_pdcp_rx_sn)表示最后一个向上层递交的pdcp pdu的sn,如果新接收的pdcp pdu sn=last_submitted_pdcp_rx_sn+1,表明数据包呈连续状态,pdcp实体会直接向上层递交数据包并更新last_submitted_pdcp_rx_sn。当网络存在波动产生harq重传时,pdcp实体接收侧的数据包可能发生乱序,在rlc实体乱序递交的情况下会致接收到的pdcp pdu sn》last_submitted_pdcp_rx_sn+1,这时需要pdcp实体重排序乱序数据包,当接收pdcp pdu sn=last_submitted_pdcp_rx_sn+1时,pdcp实体可以继续向上层递交数据直到检测到新的pdcp pdu的sn不连续的情况,pdcp实体继续重排序直到pdcp pdu的sn空隙(gap)补齐。
77.具体的,pdcp实体存在多种原因的主动丢包情况,导致rlc sn连续但是pdcp pdu的sn不连续的情况。此时,pdcp pdu的sn空隙可能永远无法补偿,直到pdcp实体维护的接收窗完全阻塞。在rlc实体顺序递交的方案中,rlc实体完成了重排序功能,保证提供给pdcp实体的数据包为完全顺序的数据包,所以pdcp实体无需判断pdcp pdu的sn空隙,可以避免上述接收窗阻塞情况,但在rlc实体乱序递交的方案中,pdcp实体必须检查pdcp pdu的sn空隙,这就需要一种辅助机制帮助pdcp实体判断何时可以忽略pdcp pdu的sn空隙继续向上层
递交数据。如图8所示,对于pdcp pdu按序输入的方案,新接收的pdcp pdu sn=last_submitted_pdcp_rx_sn+1,表明数据包呈连续状态,pdcp实体会直接向上层递交数据包并更新last_submitted_pdcp_rx_sn;对于harq重传导致pdcp pdu乱序输入的方案,新接收的pdcp pdu sn=last_submitted_pdcp_rx_sn+2,表明数据包呈不连续状态,此时需要pdcp实体重排序乱序数据包,后续接收的sn空隙对应的pdcp pdu,即pdcp pdu sn=last_submitted_pdcp_rx_sn+1,pdcp实体可以继续向上层递交数据直到检测到新的pdcp pdu的sn不连续的情况;对于pdcp实体丢包导致pdcp pdu乱序输入的方案,新接收的pdcp pdu sn=last_submitted_pdcp_rx_sn+2,表明数据包呈不连续状态,此时,需要一种辅助机制帮助pdcp实体判断何时可以忽略pdcp pdu的sn空隙继续向上层递交数据。
78.基于上述问题,本技术提出了一种基于pdcp pdu的sn重排序的方案,利用rlc实体提供辅助判断的方式实现了快速准确的重排序和递交功能。
79.以下通过具体实施例详述本技术的技术方案。
80.图9是根据本技术实施例的无线通信的方法200的示意性流程图,如图9所示,该无线通信的方法200可以包括如下内容中的至少部分内容:
81.s210,接收来自rlc实体的pdcp pdu、该pdcp pdu对应的rlc序列号和该pdcp pdu对应的rlc接收下限值,其中,该pdcp pdu对应的rlc接收下限值表示该rlc实体的接收窗内期望接收的下一个rlc的序列号;
82.s220,在该pdcp pdu的序列号之前存在序列号空隙的情况下,根据该pdcp pdu对应的rlc序列号和该pdcp pdu对应的rlc接收下限值,确定是否递交该pdcp pdu。
83.在本技术实施例中,该无线通信的方法200可以应用于接收和处理pdcp pdu的装置,或者集成有该装置的终端设备或网络设备;或者,该无线通信的方法200可以应用于pdcp实体,或者集成有该pdcp实体的终端设备或网络设备。也即,本技术实施例的执行主体可以是终端设备,且该终端设备至少包括rlc层和pdcp层;或者,本技术实施例的执行主体可以是网络设备,且该网络设备至少包括rlc层和pdcp层。
84.以下以pdcp实体执行无线通信的方法200为例进行说明。
85.在一些实施例中,该无线通信的方法200可以应用于下行通信,也可以应用于上行通信,还可以应用于侧行通信。
86.在本技术实施例中,“序列号空隙”也可以称之为“序列号空洞”或“序列号空缺”。
87.在本技术实施例中,rlc实体具有排序功能,rlc实体可以维护rlc序列号。
88.对于pdcp实体来说,可以从rlc实体接收:pdcp pdu、该pdcp pdu对应的rlc序列号和该pdcp pdu对应的rlc接收下限值。
89.对于rlc实体来说,可以向pdcp实体发送:rlc sdu(即pdcp实体接收的pdcp pdu)、该rlc sdu对应的rlc序列号和该rlc sdu对应的rlc接收下限值。
90.在本技术实施例中,多个pdcp pdu分别对应的rlc序列号是连续的,也即,rlc实体按序递交rlc sdu。
91.在本技术实施例中,多个pdcp pdu分别对应的rlc接收下限值可能由于pdcp pdu的序列号出现空隙而不连续。
92.在本技术实施例中,pdcp实体维护的pdcp pdu的序列号可能出现空隙,基于本技术实施例可以确定是否可以忽略pdcp pdu的序列号空隙而直接向上层递交pdcp pdu。
93.在一些实施例中,该pdcp pdu的序列号之前存在空隙,包括:该pdcp pdu的序列号大于上一次递交上层的pdcp pdu的序列号加1(即last_submitted_pdcp_rx_sn+1)。也即,在pdcp pdu的pdcp pdu sn》last_submitted_pdcp_rx_sn+1的情况下,即可认为该pdcp pdu的sn之前存在空隙。
94.需要说明的是,pdcp pdu的序列号之前存在空隙,即该pdcp pdu的序列号与之前的pdcp pdu的序列号不连续,可能是由该pdcp pdu的序列号之前出现了序列号空洞或缺失导致。
95.在本技术实施例中,在从rlc实体接收pdcp pdu的同时,从rlc实体获取该pdcp pdu对应的rlc序列号和该pdcp pdu对应的rlc接收下限值,进而,在该pdcp pdu的序列号之前存在序列号空隙的情况下,根据该pdcp pdu对应的rlc序列号和该pdcp pdu对应的rlc接收下限值,确定是否递交该pdcp pdu。也即,在出现pdcp pdu乱序的情况下,可以基于pdcp pdu对应的rlc序列号和pdcp pdu对应的rlc接收下限值,确定是否可以忽略序列号空隙而直接向上层递交pdcp pdu。在确定可以忽略序列号空隙时,可以认为此类序列号空隙是由发送端导致的,不需要继续等待接收rlc实体后续发送的pdcp pdu以便在下一次重排序中递交,可以直接向上层递交pdcp pdu,从而可以实现pdcp pdu的乱序递交,提高了数据包的递交效率。
96.也即,本技术实施例可以实现rlc实体辅助(即rlc实体上报rlc序列号和rlc接收下限值)下的pdcp pdu重排序和数据包递交,由于在一定情况下可以忽略pdcp pdu的序列号空隙而直接向上层递交pdcp pdu,避免pdcp pdu重排序造成的调制解调器负荷,可以降低调制解调器的内存使用。
97.本技术实施例可以用于终端设备和网络设备的数据协议栈开发中,用于替代pdcp重排序定时器,简化了数据包递交流程,提升了数据包传输效率。
98.在本技术实施例中,pdcp层可以支持重排序功能,从而,降低了系统对双倍速率内存(double data rate sdram,ddr)缓存和片上内存需求,节省成本。此外,硬件芯片上部署的解密(decipher)模块的处理压力平均化,ddr带宽相比数据传输峰值带宽会大幅降低,如降低约两倍。也即,可以解决硬件芯片上部署的解密模块的拥塞和压力问题。
99.在一些实施例中,pdcp实体支持关闭pdcp重排序定时器,在pdcp pdu出现乱序的情况下,可以本技术实施例确定是否可以直接递交pdcp pdu,而避免基于pdcp重排序定时器进行pdcp pdu的重排序。也即,本技术实施例可以实现在pdcp实体关闭pdcp重排序定时器的情况下,将收到的乱序的pdcp pdu有序递交给上层。
100.在一些实施例中,rlc实体的接收窗可以是rlc实体维护的重排序接收窗。
101.在本技术实施例中,rlc接收下限值可以由vr(r)/vr(ur)表示。其中,在rlc实体处于am模式时,rlc接收下限值可以由vr(r)表示;在rlc实体处于um模式时,rlc接收下限值可以由vr(ur)表示。
102.具体例如,vr(r)为am模式下的接收状态变量,该变量表述期待顺序接收的下一个rlc sn,该变量初始化时为0。vr(r)为rlc实体的接收窗的下界。
103.具体例如,vr(ur)为um模式下的接收状态变量,该变量保存了um模式下rlc实体中等待重排序的最早一个rlc sn值,该变量初始化时为0。um-rlc实体接收端认为rlc sn小于vr(ur)的rlc pdu均已被成功接收。vr(ur)对应rlc实体的接收窗内还未接收到的拥有最小
rlcsn的rlcpdu。
104.在一些实施例中,rlc实体的接收窗的起始位置为rlc接收下限值。
105.在一些实施例中,该pdcppdu对应的rlc序列号位于rlc实体的接收窗内。
106.具体的,rlc实体的接收窗之外的rlc序列号对应的rlcpdu可以认为均已被完全接收并排序。
107.具体例如,am模式的rlc实体的接收窗为[vr(r),vr(r)+rlcwindowsize),其中,rlcwindowsize表示该rlc实体的接收窗大小。
[0108]
具体例如,um模式的rlc实体的接收窗为[vr(uh)
–
rlcwindowsize,vr(uh)),其中,rlcwindowsize表示该rlc实体的接收窗大小。vr(uh)为um最高接收状态变量,该变量保存的rlcsn值等于所有已接收到的rlcpdu中拥有最高rlcsn的rlcpdu的sn值再加1。vr(uh)初始化时为0,vr(uh)对应rlc实体的接收窗的上边界。简言之,vr(uh)-1即为已接收到的拥有最高rlcsn的rlcpdu的sn值。
[0109]
在一些实施例中,在rlc实体处于am模式的情况下,该pdcppdu对应的rlc接收下限值保持不变。由于在am模式下,rlc实体的接收窗保持不变。
[0110]
在一些实施例中,在rlc实体处于um模式的情况下,该pdcppdu对应的rlc接收下限值随着该rlc实体的接收窗的移动而滑动。具体例如,vr(ur)会根据vr(uh)进行滑动,但vr(ur)的最大滑动范围依然不会超过rlcwindowsize,所以保存的rlcsn与vr(ur)之间同样不会超过rlcwindowsize。
[0111]
在一些实施例中,rlc序列号的取值范围基于rlc实体的接收窗确定。
[0112]
在一些实施例中,在上述s220中,根据该pdcppdu对应的rlc序列号和该pdcppdu对应的rlc接收下限值,确定是否递交该pdcppdu,包括:
[0113]
根据该pdcppdu对应的rlc序列号、该pdcppdu对应的rlc接收下限值、该rlc实体的接收窗大小和最大rlc序列号,确定是否递交该pdcppdu。
[0114]
在一些实施例中,在上述s220中,在满足以下公式1的情况下,确定递交该pdcppdu,否则等待下一次重排序:
[0115]
(vr(r)/vr(ur)+rlcwindowsize)modmaxrlcsn《=rlcsn《vr(r)/vr(ur)公式1其中,在公式1中,vr(r)/vr(ur)表示该pdcppdu对应的rlc接收下限值,rlcwindowsize表示该rlc实体的接收窗大小,maxrlcsn表示最大rlc序列号,rlcsn表示该pdcppdu对应的rlc序列号,mod表示取模运算。
[0116]
在本技术实施例中,在pdcppdu的pdcppdusn》last_submitted_pdcp_rx_sn+1的情况下,可以基于公式1进行二次判断,在满足公式1的情况下,可以忽略pdcppdu的sn空隙,即使存在pdcppdu的sn空隙也可认为是连续的,此时,确定向上层递交该pdcppdu。
[0117]
在一些实施例中,maxrlcsn可以由协议约定,或者,maxrlcsn可以由网络设备配置。可选地,rlcsn的取值范围可以基于rlc实体的接收窗确定。
[0118]
例如,rlcsn的取值范围可以是0~511,即maxrlcsn为511。
[0119]
又例如,rlcsn的取值范围可以是0~1023,即maxrlcsn为1023。
[0120]
在本技术实施例中,rlc实体内部维护着一个接收窗,其中,rlc接收下限值(vr(r)/vr(ur))表示接收窗内下一个期望接收的rlcsn,通过对比某个rlcsn和rlc接收下限值的关系,可以得到该rlcsn对应的rlc数据包在rlc实体中是否完成排序。对于完成排序
的rlc数据包其对应的pdcp数据包也可被认为是完成了排序,因此,如果此pdcp pdu的sn前存在空隙的时候(即pdcp pdu sn》last_submitted_pdcp_rx_sn+1),可以认为这样的pdcp pdu的sn空隙是由发送端导致的,可以继续向上递交数据包,而不需要继续等待接收后续的数据包。具体例如,如图10所示,last_submitted_pdcp_rx_sn对应的rlc sn为n,新接收的pdcp pdu(即last_submitted_pdcp_rx_sn+2)对应的rlc sn为n+1,以及last_submitted_pdcp_rx_sn+2对应的vr(r)/vr(ur)为n+2,可以认为这样的pdcp pdu的sn空隙(gap)是由发送端导致的,可以继续向上递交数据包。
[0121]
本技术实施例通过在rlc实体递交pdcp pdu给pdcp实体时,携带pdcp pdu对应的rlc sn以及当前该rlc实体的vr(r)/vr(ur),pdcp实体需要对每个rlc实体存储对应的vr(r)/vr(ur)并且在每次接收到新的pdcp pdu时,更新该rlc实体对应的vr(r)/vr(ur)。同时,在每一次向上层递交判断时,对于pdcp pdu sn》last_submitted_pdcp_rx_sn+1的pdcp pdu,增加新的判断,通过对比pdcp pdu对应的rlc sn以及该rlc实体保存的最新的vr(r)/vr(ur),决定是否忽略pdcp pdu sn空隙继续向上层递交数据包,具体流程可以如图11或图12所示。
[0122]
在一些实施例中,rlc实体可以处于am模式,具体的,am模式的rlc实体的接收窗为[vr(r),vr(r)+rlcwindowsize),因此可以认为所有落在rlc的接收窗口之外的rlc sn都是已经完全接收并排序的,考虑到rlc sn翻转的情况,上述公式1可以简化为如下公式2:
[0123]
((rlcsn-vr(r))&maxrlcsn)》=rlcwindowsize
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式2
[0124]
其中,在公式2中,vr(r)表示rlc实体处于am模式下该pdcp pdu对应的rlc接收下限值,rlcwindowsize表示该rlc实体的接收窗大小,maxrlcsn表示最大rlc序列号,rlcsn表示该pdcp pdu对应的rlc序列号,&表示与运算。
[0125]
也即,在本技术实施例中,若rlc实体可以处于am模式,在上述s220中,在满足公式2的情况下,确定递交该pdcp pdu,否则等待下一次重排序。
[0126]
在一些实施例中,rlc实体可以处于um模式,具体的,um模式的rlc实体的接收窗为[vr(uh)
–
rlcwindowsize,vr(uh)),虽然um模式的vr(ur)会根据vr(uh)进行滑动,但vr(ur)的最大滑动范围依然不会超过rlcwindowsize,所以保存的rlc sn与vr(ur)之间同样不会超过rlcwindowsize,上述公式1可以简化为如下公式3:
[0127]
((rlcsn-vr(ur))&maxrlcsn)》=rlcwindowsize
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
公式3
[0128]
其中,在公式3中,vr(ur)表示rlc实体处于um模式下该pdcp pdu对应的rlc接收下限值,rlcwindowsize表示该rlc实体的接收窗大小,maxrlcsn表示最大rlc序列号,rlcsn表示该pdcp pdu对应的rlc序列号,&表示与运算。
[0129]
也即,在本技术实施例中,若rlc实体可以处于um模式,在上述s220中,在满足公式3的情况下,确定递交该pdcp pdu,否则等待下一次重排序。
[0130]
本技术实施例可以通过增加rlc实体至pdcp实体少量参数传递以及一个简单的额外判断,实现pdcp实体不开启重排序定时器。
[0131]
在一些实施例中,am/um模式pdcp实体重排序的示例可以如图13所示,rlc sn长度为10比特(bit),rlcwindowsize为512,存在空隙的pdcp pdu sn为5。
[0132]
图13中的a所示的示例为顺序接收所有数据包的情况,pdcp实体可以将pdcp pdu sn为6的pdcp pdu对应的rlc sn和vr(r)/vr(ur)代入上述公式1至公式3中的一个公式,得
sdu对应的rlc序列号重置为无效值,以及将保存在重建pdcp实体中的所有pdcp sdu对应的rlc接收下限值重置为0;
[0139]
在pdcp实体重建之后接收来自rlc实体的第一pdcp pdu,在该第一pdcp pdu的序列号之前存在序列号空隙的情况下,根据该第一pdcp pdu对应的rlc序列号和该第一pdcp pdu对应的rlc接收下限值,确定是否递交该第一pdcp pdu;
[0140]
在确定递交该第一pdcp pdu的情况下,按照升序递交该第一pdcp pdu,以及重建之前存储的pdcp sdu中对应的pdcp pdu序列号小于该第一pdcp pdu的序列号的pdcp sdu。
[0141]
具体的,在确定不递交该第一pdcp pdu的情况下,等待下一次重排序直到所有重建立之前储存的pdcp sdu全部递交完成。
[0142]
需要说明的是,在该第一pdcp pdu的序列号之前存在序列号空隙的情况下,根据该第一pdcp pdu对应的rlc序列号和该第一pdcp pdu对应的rlc接收下限值,确定是否递交该第一pdcp pdu,其具体确定方式参见上述针对pdcp pdu的确定方式,在此不再赘述。
[0143]
在一些实施例中,该第一pdcp pdu可以是pdcp实体重建之后接收到来自rlc实体的第一个pdcp pdu,该第一pdcp pdu也可以是pdcp实体重建之后接收到来自rlc实体的第一个pdcp pdu之后的pdcp pdu。
[0144]
在一些实施例中,am模式下,pdcp重排序过程中进行rb重建,以及在rb重建后数据传输的示例可以如图14所示,在rb重建过程中,将保存在重建pdcp实体中的所有pdcp sdu对应的rlc sn重置为无效值,以及将保存在重建pdcp实体中的所有pdcp sdu对应的vrr/vr(ur)重置为0,以此能够实现在rb重建立之后,rlc实体接收到第一个rlc sn为0的数据包并递交给pdcp实体后,pdcp实体能够按序递送重排序列队中的所有数据包。
[0145]
图14中的a所示,rb重建立后收到对应的rlc sn为0的pdcp pdu,pdcp实体检查判断所有的pdcp sdu对应的pdcp sn连续(即last_submitted_pdcp_rx_sn+1,last_submitted_pdcp_rx_sn+2和last_submitted_pdcp_rx_sn+3),递交全部pdcp sdu给上层。
[0146]
图14中的b所示,rb重建立后收到对应的rlc sn为0的pdcp pdu,pdcp实体检查存在两个pdcp sdu对应的pdcp pdu sn连续(即last_submitted_pdcp_rx_sn+1和last_submitted_pdcp_rx_sn+2),向上层递交两个pdcp sdu,其他存储的pdcp sdu因为rlc sn为无效值,判断不递交。收到对应的rlc sn为1的pdcp pdu后,pdcp实体检查存在两个pdcp sdu对应的pdcp pdu sn连续(即last_submitted_pdcp_rx_sn+3和last_submitted_pdcp_rx_sn+4),向上层递交两个pdcp sdu,其他存储的pdcp sdu因为rlc sn为无效值,判断不递交。收到对应的rlc sn为2的pdcp pdu后,pdcp实体检查存在两个pdcp sdu对应的pdcp pdu sn连续(即last_submitted_pdcp_rx_sn+5和last_submitted_pdcp_rx_sn+6),向上层递交两个pdcp sdu。至此,重建前存储在pdcp实体中的pdcp sdu,在重建后全部按照顺序递交给上层。
[0147]
图14中的c所示,rb重建立后收到对应的rlc sn为0的pdcp pdu(last_submitted_pdcp_rx_sn+7)后,基于上述公式1或公式2判断该对应的rlc sn为0的pdcp pdu需要向上层递交,则pdcp实体按照升序递交该对应的rlc sn为0的pdcp pdu以及重建之前存储的pdcp sdu中对应的pdcp pdu sn小于last_submitted_pdcp_rx_sn+7的pdcp sdu给上层,也即,递交last_submitted_pdcp_rx_sn+2、last_submitted_pdcp_rx_sn+4、last_submitted_pdcp_rx_sn+6和last_submitted_pdcp_rx_sn+7给上层。
[0148]
需要说明的是,rb重建立后收到的第一个pdcp pdu对应的rlc sn为0,收到的第二个pdcp pdu对应的rlc sn为1,收到的第三个pdcp pdu对应的rlc sn为2,以此类推。
[0149]
因此,在本技术实施例中,在pdcp pdu的序列号之前存在序列号空隙的情况下,根据该pdcp pdu对应的rlc序列号和该pdcp pdu对应的rlc接收下限值,确定是否递交该pdcp pdu。也即,在出现pdcp pdu乱序的情况下,可以基于pdcp pdu对应的rlc序列号和pdcp pdu对应的rlc接收下限值,确定是否可以忽略序列号空隙而直接向上层递交pdcp pdu。在确定可以忽略序列号空隙时,可以认为此类序列号空隙是由发送端导致的,不需要继续等待接收rlc实体后续发送的pdcp pdu以便在下一次重排序中递交,可以直接向上层递交pdcp pdu,从而可以实现pdcp pdu的乱序递交,提高了数据包的递交效率。
[0150]
上文结合图9和图14,详细描述了本技术的方法实施例,下文结合图15,详细描述本技术的装置实施例,应理解,装置实施例与方法实施例相互对应,类似的描述可以参照方法实施例。
[0151]
图15示出了根据本技术实施例的无线通信的设备300的示意性框图。如图15所示,该无线通信的设备300包括:通信单元310和处理单元320,其中,
[0152]
该通信单元310,用于接收来自rlc实体的pdcp pdu、该pdcp pdu对应的rlc序列号和该pdcp pdu对应的rlc接收下限值,其中,该pdcp pdu对应的rlc接收下限值表示该rlc实体的接收窗内期望接收的下一个rlc的序列号;
[0153]
该处理单元320,用于在该pdcp pdu的序列号之前存在序列号空隙的情况下,根据该pdcp pdu对应的rlc序列号和该pdcp pdu对应的rlc接收下限值,确定是否递交该pdcp pdu。
[0154]
在一些实施例中,所述rlc实体的接收窗的起始位置为rlc接收下限值。
[0155]
在一些实施例中,所述pdcp pdu对应的rlc序列号位于所述rlc实体的接收窗内。
[0156]
在一些实施例中,所述rlc实体维护的rlc序列号的取值范围基于所述rlc实体的接收窗确定。
[0157]
在一些实施例中,该处理单元320具体用于:
[0158]
在满足以下公式的情况下,确定递交该pdcp pdu,否则等待下一次重排序:
[0159]
(vr(r)/vr(ur)+rlcwindowsize)mod maxrlcsn《=rlcsn《vr(r)/vr(ur);
[0160]
其中,vr(r)/vr(ur)表示该pdcp pdu对应的rlc接收下限值,rlcwindowsize表示该rlc实体的接收窗大小,maxrlcsn表示最大rlc序列号,rlcsn表示该pdcp pdu对应的rlc序列号,mod表示取模运算。
[0161]
在一些实施例中,在所述rlc实体处于确认模式am模式的情况下,所述pdcp pdu对应的rlc接收下限值保持不变;和/或,
[0162]
在所述rlc实体处于非确认模式um模式的情况下,所述pdcp pdu对应的rlc接收下限值随着所述rlc实体的接收窗的移动而滑动。
[0163]
在一些实施例中,该rlc实体处于am模式,该处理单元320具体用于:
[0164]
在满足以下公式的情况下,确定递交该pdcp pdu,否则等待下一次重排序:
[0165]
((rlcsn-vr(r))&maxrlcsn)》=rlcwindowsize;
[0166]
其中,vr(r)表示rlc实体处于am模式下该pdcp pdu对应的rlc接收下限值,rlcwindowsize表示该rlc实体的接收窗大小,maxrlcsn表示最大rlc序列号,rlcsn表示该
pdcp pdu对应的rlc序列号,&表示与运算。
[0167]
在一些实施例中,该rlc实体处于um模式,该处理单元320具体用于:
[0168]
在满足以下公式的情况下,确定递交该pdcp pdu,否则等待下一次重排序:
[0169]
((rlcsn-vr(ur))&maxrlcsn)》=rlcwindowsize;
[0170]
其中,vr(ur)表示rlc实体处于um模式下该pdcp pdu对应的rlc接收下限值,rlcwindowsize表示该rlc实体的接收窗大小,maxrlcsn表示最大rlc序列号,rlcsn表示该pdcp pdu对应的rlc序列号,&表示与运算。
[0171]
在一些实施例中,该pdcp pdu的序列号之前存在空隙,包括:该pdcp pdu的序列号大于上一次递交上层的pdcp pdu的序列号加1。
[0172]
在一些实施例中,pdcp实体支持关闭pdcp重排序定时器,或者,pdcp实体支持关闭pdcp重排序功能。
[0173]
在一些实施例中,在rb重建立的过程中,该处理单元320还用于将保存在重建pdcp实体中的所有pdcp sdu对应的rlc序列号重置为无效值,以及将保存在重建pdcp实体中的所有pdcp sdu对应的rlc接收下限值重置为0;
[0174]
在pdcp实体重建之后该通信单元310还用于接收来自rlc实体的第一pdcp pdu,该处理单元320还用于遍历上一次递交上层的pdcp pdu的序列号与下一次期待接收的pdcp pdu的序列号之间存储的pdcp sdu,按照升序递交遍历得到的pdcp sdu中对应的pdcp pdu序列号与该上一次递交上层的pdcp pdu的序列号连续的所有pdcp sdu。
[0175]
在一些实施例中,在rb重建立的过程中,该处理单元320还用于将保存在重建pdcp实体中的所有pdcp sdu对应的rlc序列号重置为无效值,以及将保存在重建pdcp实体中的所有pdcp sdu对应的rlc接收下限值重置为0;
[0176]
在pdcp实体重建之后该通信单元310还用于接收来自rlc实体的第一pdcp pdu,在该第一pdcp pdu的序列号之前存在序列号空隙的情况下,该处理单元320还用于根据该第一pdcp pdu对应的rlc序列号和该第一pdcp pdu对应的rlc接收下限值,确定是否递交该第一pdcp pdu;
[0177]
在确定递交该第一pdcp pdu的情况下,该处理单元320还用于按照升序递交该第一pdcp pdu,以及重建之前存储的pdcp sdu中对应的pdcp pdu序列号小于该第一pdcp pdu的序列号的pdcp sdu。
[0178]
在一些实施例中,上述通信单元可以是通信接口或收发器,或者是通信芯片或者片上系统的输入输出接口。上述处理单元可以是一个或多个处理器。
[0179]
应理解,根据本技术实施例的无线通信的设备300可对应于本技术执行方法实施例的设备,并且无线通信的设备300中的各个单元的上述和其它操作和/或功能分别为了实现图9所示方法200中的相应流程,为了简洁,在此不再赘述。
[0180]
图16是本技术实施例提供的一种通信设备400示意性结构图。图16所示的通信设备400包括处理器410,处理器410可以从存储器中调用并运行计算机程序,以实现本技术实施例中的方法。
[0181]
在一些实施例中,如图16所示,通信设备400还可以包括存储器420。其中,处理器410可以从存储器420中调用并运行计算机程序,以实现本技术实施例中的方法。其中,存储器420可以是独立于处理器410的一个单独的器件,也可以集成在处理器410中。
[0182]
在一些实施例中,处理器410可以实现无线通信的设备300中的处理单元的功能,为了简洁,在此不再赘述。
[0183]
在一些实施例中,如图16所示,通信设备400还可以包括收发器430,处理器410可以控制该收发器430与其他设备进行通信,具体地,可以向其他设备发送信息或数据,或接收其他设备发送的信息或数据。
[0184]
其中,收发器430可以包括发射机和接收机。收发器430还可以进一步包括天线,天线的数量可以为一个或多个。
[0185]
在一些实施例中,收发器430可以实现无线通信的设备300中的通信单元的功能,为了简洁,在此不再赘述。
[0186]
在一些实施例中,该通信设备400具体可为本技术实施例的无线通信的设备,并且该通信设备400可以实现本技术实施例的各个方法的相应流程,为了简洁,在此不再赘述。
[0187]
图17是本技术实施例的芯片的示意性结构图。图17所示的芯片500包括处理器510,处理器510可以从存储器中调用并运行计算机程序,以实现本技术实施例中的方法。
[0188]
在一些实施例中,如图17所示,芯片500还可以包括存储器520。其中,处理器510可以从存储器520中调用并运行计算机程序,以实现本技术实施例中的方法。
[0189]
其中,存储器520可以是独立于处理器510的一个单独的器件,也可以集成在处理器510中。
[0190]
在一些实施例中,处理器510可以实现无线通信的设备300中的处理单元的功能,为了简洁,在此不再赘述。
[0191]
在一些实施例中,该芯片500还可以包括输入接口530。其中,处理器510可以控制该输入接口530与其他设备或芯片进行通信,具体地,可以获取其他设备或芯片发送的信息或数据。
[0192]
在一些实施例中,输入接口530可以实现无线通信的设备300中的通信单元的功能,为了简洁,在此不再赘述。
[0193]
在一些实施例中,该芯片500还可以包括输出接口540。其中,处理器510可以控制该输出接口540与其他设备或芯片进行通信,具体地,可以向其他设备或芯片输出信息或数据。
[0194]
在一些实施例中,输出接口540可以实现无线通信的设备300中的通信单元的功能,为了简洁,在此不再赘述。
[0195]
在一些实施例中,该芯片可应用于本技术实施例中的无线通信的设备,并且该装置可以实现本技术实施例的各个方法的相应流程,为了简洁,在此不再赘述。
[0196]
在一些实施例中,本技术实施例提到的芯片例如可以是系统级芯片,系统芯片,芯片系统或片上系统芯片等。
[0197]
图18是本技术实施例提供的一种通信系统600的示意性框图。如图18所示,该通信系统600包括终端设备610和网络设备620。
[0198]
其中,该终端设备610可以用于实现上述方法的相应的功能,或者,该网络设备620可以用于实现上述方法中的相应的功能,为了简洁,在此不再赘述。
[0199]
应理解,本技术实施例的处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软
件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
[0200]
可以理解,本技术实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
[0201]
应理解,上述存储器为示例性但不是限制性说明,例如,本技术实施例中的存储器还可以是静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synch link dram,sldram)以及直接内存总线随机存取存储器(direct rambus ram,dr ram)等等。也就是说,本技术实施例中的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
[0202]
本技术实施例还提供了一种计算机可读存储介质,用于存储计算机程序。
[0203]
可选的,该计算机可读存储介质可应用于本技术实施例中的网络设备,并且该计算机程序使得计算机执行本技术实施例的各个方法中由网络设备实现的相应流程,为了简洁,在此不再赘述。
[0204]
可选地,该计算机可读存储介质可应用于本技术实施例中的终端设备,并且该计算机程序使得计算机执行本技术实施例的各个方法中由终端设备实现的相应流程,为了简洁,在此不再赘述。
[0205]
本技术实施例还提供了一种计算机程序产品,包括计算机程序指令。
[0206]
可选的,该计算机程序产品可应用于本技术实施例中的网络设备,并且该计算机程序指令使得计算机执行本技术实施例的各个方法中由网络设备实现的相应流程,为了简
洁,在此不再赘述。
[0207]
可选地,该计算机程序产品可应用于本技术实施例中的终端设备,并且该计算机程序指令使得计算机执行本技术实施例的各个方法中由终端设备实现的相应流程,为了简洁,在此不再赘述。
[0208]
本技术实施例还提供了一种计算机程序。
[0209]
可选的,该计算机程序可应用于本技术实施例中的网络设备,当该计算机程序在计算机上运行时,使得计算机执行本技术实施例的各个方法中由网络设备实现的相应流程,为了简洁,在此不再赘述。
[0210]
可选地,该计算机程序可应用于本技术实施例中的终端设备,当该计算机程序在计算机上运行时,使得计算机执行本技术实施例的各个方法中由终端设备实现的相应流程,为了简洁,在此不再赘述。
[0211]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0212]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0213]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0214]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0215]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0216]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。针对这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0217]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵
盖在本技术的保护范围之内。因此,本技术的保护范围应所述以权利要求的保护范围为准。
技术特征:1.一种无线通信的方法,其特征在于,包括:接收来自无线链路控制rlc实体的分组数据汇聚协议协议数据单元pdcp pdu、所述pdcp pdu对应的rlc序列号和所述pdcp pdu对应的rlc接收下限值,其中,所述pdcp pdu对应的rlc接收下限值表示所述rlc实体的接收窗内期望接收的下一个rlc的序列号;在所述pdcp pdu的序列号之前存在序列号空隙的情况下,根据所述pdcp pdu对应的rlc序列号和所述pdcp pdu对应的rlc接收下限值,确定是否递交所述pdcp pdu。2.根据权利要求1所述的方法,其特征在于,所述rlc实体的接收窗的起始位置为rlc接收下限值。3.根据权利要求1所述的方法,其特征在于,所述pdcp pdu对应的rlc序列号位于所述rlc实体的接收窗内。4.根据权利要求1所述的方法,其特征在于,所述rlc实体维护的rlc序列号的取值范围基于所述rlc实体的接收窗确定。5.根据权利要求1所述的方法,其特征在于,所述根据所述pdcp pdu对应的rlc序列号和所述pdcp pdu对应的rlc接收下限值,确定是否递交所述pdcp pdu,包括:在满足以下公式的情况下,确定递交所述pdcp pdu,否则等待下一次重排序:(vr(r)/vr(ur)+rlcwindowsize)mod maxrlcsn<=rlcsn<vr(r)/vr(ur);其中,vr(r)/vr(ur)表示所述pdcp pdu对应的rlc接收下限值,rlcwindowsize表示所述rlc实体的接收窗大小,maxrlcsn表示最大rlc序列号,rlcsn表示所述pdcp pdu对应的rlc序列号,mod表示取模运算。6.根据权利要求1所述的方法,其特征在于,在所述rlc实体处于确认模式am模式的情况下,所述pdcp pdu对应的rlc接收下限值保持不变;和/或,在所述rlc实体处于非确认模式um模式的情况下,所述pdcp pdu对应的rlc接收下限值随着所述rlc实体的接收窗的移动而滑动。7.根据权利要求1所述的方法,其特征在于,所述rlc实体处于am模式,所述根据所述pdcp pdu对应的rlc序列号和所述pdcp pdu对应的rlc接收下限值,确定是否递交所述pdcp pdu,包括:在满足以下公式的情况下,确定递交所述pdcp pdu,否则等待下一次重排序:((rlcsn-vr(r))&maxrlcsn)>=rlcwindowsize;其中,vr(r)表示rlc实体处于am模式下所述pdcp pdu对应的rlc接收下限值,rlcwindowsize表示所述rlc实体的接收窗大小,maxrlcsn表示最大rlc序列号,rlcsn表示所述pdcp pdu对应的rlc序列号,&表示与运算。8.根据权利要求1所述的方法,其特征在于,所述rlc实体处于um模式,所述根据所述pdcp pdu对应的rlc序列号和所述pdcp pdu对应的rlc接收下限值,确定是否递交所述pdcp pdu,包括:在满足以下公式的情况下,确定递交所述pdcp pdu,否则等待下一次重排序:((rlcsn-vr(ur))&maxrlcsn)>=rlcwindowsize;其中,vr(ur)表示rlc实体处于um模式下所述pdcp pdu对应的rlc接收下限值,rlcwindowsize表示所述rlc实体的接收窗大小,maxrlcsn表示最大rlc序列号,rlcsn表示
所述pdcp pdu对应的rlc序列号,&表示与运算。9.根据权利要求1所述的方法,其特征在于,所述pdcp pdu的序列号之前存在空隙,包括:所述pdcp pdu的序列号大于上一次递交上层的pdcp pdu的序列号加1。10.根据权利要求1所述的方法,其特征在于,pdcp实体支持关闭pdcp重排序定时器。11.根据权利要求1至10中任一项所述的方法,其特征在于,所述方法还包括:在rb重建立的过程中,将保存在重建pdcp实体中的所有pdcp sdu对应的rlc序列号重置为无效值,以及将保存在重建pdcp实体中的所有pdcp sdu对应的rlc接收下限值重置为0;在pdcp实体重建之后接收来自rlc实体的第一pdcp pdu,遍历上一次递交上层的pdcp pdu的序列号与下一次期待接收的pdcp pdu的序列号之间存储的pdcp sdu,按照升序递交遍历得到的pdcp sdu中对应的pdcp pdu序列号与所述上一次递交上层的pdcp pdu的序列号连续的所有pdcp sdu。12.根据权利要求1至10中任一项所述的方法,其特征在于,所述方法还包括:在rb重建立的过程中,将保存在重建pdcp实体中的所有pdcp sdu对应的rlc序列号重置为无效值,以及将保存在重建pdcp实体中的所有pdcp sdu对应的rlc接收下限值重置为0;在pdcp实体重建之后接收来自rlc实体的第一pdcp pdu,在所述第一pdcp pdu的序列号之前存在序列号空隙的情况下,根据所述第一pdcp pdu对应的rlc序列号和所述第一pdcp pdu对应的rlc接收下限值,确定是否递交所述第一pdcp pdu;在确定递交所述第一pdcp pdu的情况下,按照升序递交所述第一pdcp pdu,以及重建之前存储的pdcp sdu中对应的pdcp pdu序列号小于所述第一pdcp pdu的序列号的pdcp sdu。13.一种无线通信的设备,其特征在于,包括:通信单元,用于接收来自无线链路控制rlc实体的分组数据汇聚协议协议数据单元pdcp pdu、所述pdcp pdu对应的rlc序列号和所述pdcp pdu对应的rlc接收下限值,其中,所述pdcp pdu对应的rlc接收下限值表示所述rlc实体的接收窗内期望接收的下一个rlc的序列号;处理单元,用于在所述pdcp pdu的序列号之前存在序列号空隙的情况下,根据所述pdcp pdu对应的rlc序列号和所述pdcp pdu对应的rcl接收下限值,确定是否递交所述pdcp pdu。14.一种通信设备,其特征在于,包括:收发器和处理器;其中,所述收发器被配置为:接收来自无线链路控制rlc实体的分组数据汇聚协议协议数据单元pdcp pdu、所述pdcp pdu对应的rlc序列号和所述pdcp pdu对应的rlc接收下限值,其中,所述pdcp pdu对应的rlc接收下限值表示所述rlc实体的接收窗内期望接收的下一个rlc的序列号;所述处理器被配置为:在所述pdcp pdu的序列号之前存在序列号空隙的情况下,根据所述pdcp pdu对应的rlc序列号和所述pdcp pdu对应的rlc接收下限值,确定是否递交所述
pdcp pdu。15.一种通信设备,其特征在于,包括:处理器和存储器,所述存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,执行如权利要求1至12中任一项所述的方法。16.一种芯片,其特征在于,包括:处理器,用于从存储器中调用并运行计算机程序,使得所述处理器执行如权利要求1至12中任一项所述的方法。17.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序使得计算机执行如权利要求1至12中任一项所述的方法。
技术总结本申请提供了一种无线通信的方法及设备,可以实现PDCP PDU的乱序递交,提高了数据包的递交效率。该无线通信的方法,包括:接收来自RLC实体的PDCP PDU、该PDCP PDU对应的RLC序列号和该PDCP PDU对应的RLC接收下限值,其中,该PDCPPDU对应的RLC接收下限值表示该RLC实体的接收窗内期望接收的下一个RLC的序列号;在该PDCP PDU的序列号之前存在序列号空隙的情况下,根据该PDCP PDU对应的RLC序列号和该PDCP PDU对应的RLC接收下限值,确定是否递交该PDCP PDU。PDU。PDU。
技术研发人员:柴华 乔逢浩
受保护的技术使用者:哲库科技(北京)有限公司
技术研发日:2022.07.22
技术公布日:2022/11/1