CN106411478A - 适用于rlc在轮询重传定时器超时后重传pdu的方法 - Google Patents
适用于rlc在轮询重传定时器超时后重传pdu的方法 Download PDFInfo
- Publication number
- CN106411478A CN106411478A CN201510465763.8A CN201510465763A CN106411478A CN 106411478 A CN106411478 A CN 106411478A CN 201510465763 A CN201510465763 A CN 201510465763A CN 106411478 A CN106411478 A CN 106411478A
- Authority
- CN
- China
- Prior art keywords
- pdu
- rlc
- poll
- retransmission timer
- timer
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
- H04L1/1848—Time-out mechanisms
- H04L1/1851—Time-out mechanisms using multiple timers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Communication Control (AREA)
Abstract
本发明涉及一种适用于RLC在轮询重传定时器超时后重传PDU的方法,其特点是,在RLC的轮询重传定时器超后,在SDU队列和需要重传的PDU队列中无数据可用的情况下,从已经发送的PDU队列中选择合适的PDU作为重传PDU。同时,记录下每次触发P时所携带P=1的PDU。在收到状态报告需要删除前面记录的PDU时清除此记录。轮询重传定时器超时后优先选择所记录的PDU进行重传。如果所记录的PDU已经被删除,那么根据状态报告禁止定时器所配置的时长选择在已发送队列中选择PDU。由此,能够优先选取上次发送过的携带P的PDU,可通过重新建链来恢复链路。并且,可以拥有较大的概率来让接收方接收到所需要的PDU。再者,可灵活选取PDU来满足状态报告的需求速度。
Description
技术领域
本发明涉及一种重传PDU的方法,尤其涉及一种适用于RLC在轮询重传定时器超时后重传PDU的方法。
背景技术
RLC即Radio Link Control无线连接控制,是LTE协议栈中的一层,负责将上层数据根据实际授权大小通过分段和级联的方式做成PDU发给下层,并接收下层递交的PDU通过解RLC头将PDU重组成上层的数据发给上层。其中RLC还有乱序重排,重复检测等功能来保证上层收到的数据是有序且不重复的。
在移动终端和基站的协议栈中各有自己的RLC层,这两个RLC是对等的,实现的功能也是完全一致的。其中上行数据传输中,移动终端的RLC是发送方,基站的RLC为接收方,在下行数据传输中反之,即如图1所示。
每个RLC实体由RRC配置,并且根据业务类型有三种模式:透明模式(TM)、非确认模式(UM)、确认模式(AM)。实际实施的时候可以根据RLC头内容的不同以及是否需要确保数据发送成功来进行划分。
透明模式:发送实体在高层数据上不添加任何额外控制协议开销,即不添加任何RLC包头。接收实体接收到PDU后直接向上层投递,不做任何其他操作。也就是说,透明模式仅仅用于RRC连接尚未建立的情况下,在发起建立连接中使用,一旦RRC连接建立那么数据则不在透明模式中传递。
非确认模式:发送实体在高层PDU上添加必要的控制协议开销,然后进行传送但并不保证传递到对等实体,且没有使用重传协议。接收实体对所接收到的错误数据标记为错误后递交,或者直接丢弃并向高层报告。由于RLC PDU包含有顺序号,因此能够检测高层PDU的完整性。
确认模式:发送侧在高层数据上添加必要的控制协议开销后进行传送,并保证传递到对等实体。因为具有ARQ能力,如果RLC接收到错误的RLC PDU,就通知发送方的RLC重传这个PDU。由于RLC PDU中包含有顺序号信息,支持数据向高层的顺序/乱序递交。AM模式是分组数据传输的标准模式,比如www和电子邮件下载。
其中,透明模式和非确认模式,不能在发送过程中保证对端的RLC一定能收到发送的PDU,RLC的确认模式确则保接收方一定能收到发送方发出的每个PDU。
在控制平面,RLC向上层提供的业务为无线信令承载(SRB)。在用户平面,RLC向上层提供的业务为无线数据承载(DRB)。在实际实施的时候,协议规定RLC在每次发送P=1的PDU后要启动轮询重传定时器。其目的是,在这个定时器超时后,再次发送P=1的PDU。但是,往往还存在一种可能:当这个定时器超时的时候,RLC的SDU队列和需要重传的PDU队列均无数据需要发送。此时,就需要在已发送队列中选择一个PDU来重发,并且设置其P=1。协议中并没有明确说明选择哪个PDU。为此,按照协议的要求,选择任意一个PDU都是符合的。然而,在实际情况中对PDU的选择不同,会对数据传输产生不同的影响。
同时,在RLC的确认模式中,也就是AM模式中,为了达到接收方能完整接收的目的,发送方需要得到接收方的状态报告。在状态报告中接收方会填写哪些SN的PDU已经收到,哪些SN的PDU或PDU的某一部分没有收到需要发送方重新发送。其中,SN为PDU的序列编号。每一个PDU都有一个SN来标识,位于PDU头部的10比特SN域中。SN的值从0开始,每新组出一个PDU就加1,达到1023之后其值在下一次加1时回到0。
并且,RLC的发送方为了及时的得到接收方的实际接收情况,需要每发送一段时间就希望得到接收方的状态报告。为了促使接收方发送状态报告,发送方会每隔一段时间在满足触发P的情况下发送PDU时,将PDU内的P标志位置为1。其中P是Poll(轮询)的缩写,P标记位的作用是,接收方在收到P=1的PDU后,会立即或延迟触发一次状态报告。在随后接收方的发送时机中,发送状态报告给发送方,来反馈接收方目前的接收状态。图2是RLC AM PDU的一个包格式,其中P占一个比特长度,值为1表示此PDU希望触发产生状态报告,当触发P的条件不满足时PDU中的P域值为0。
结合RLC轮询重传定时器来看:由于无线传输的不确定性,有可能P=1的PDU在发送中丢失,导致接收方没有收到这个PDU。或者,接收方收到这个P=1的PDU后触发的状态报告在传输中,没有被发送方成功接收到。所以,发送方为了避免数据传输中的丢失需要在发送完P=1的PDU后启动轮询重传定时器。如果在这个定时器超时之前,收到了接收方的状态报告并满足一定的条件,那么就可以关闭这个定时器。如果这个定时器超时之前,都没有收到接收方的状态报告或者收到的状态报告内容不足以满足发送方的需求,那么在这个定时器超时后就需要再次发送一个P=1的PDU来重新触发接收方反馈一个状态报告。
这个轮询机制主要有两个功能点:1、保证发送方可以及时的获得接收方的接收状况。2、在无线链路出错时,可以通过重传PDU达到最大次数后重新建链来恢复。
在实际实施的时候,对于第二个功能点主要是如下场景。在RLC的发送方有三种数据与发送相关:
一是新收到的上层数据也称为SDU,RLC需要在收到授权时才会将这些SDU组成PDU。
二是收到接收方的状态报告,指示为没有收到需要重发的PDU。三是已经发送的PDU,但是这些PDU既没有在收到的状态报告中指示为已经收到也没有被指示为未收到需要重发。
假设目前出现一种场景,在数据通信一段时间后接收方的RLC因为某种原因已经处于停滞状态。此时,发送方的RLC需要检测到这种异常情况,并且RLC发送方没有新数据要发送,因为不可能收到状态报告所以也没有重传PDU要发送,但是正是因为收不到状态报告,所以肯定会导致轮询重传定时器超时。
结合图3来看,此时RLC发送方上行缓存数即如图所示。那么在轮询定时器超时的时候,RLC发送方需要发送一个PDU来携带P=1给接收方,由于这时SDU队列和需重传PDU队列都是空的,所以必须要从已发送的PDU队列中选取一个来发送。这样RLC在每次轮询重传定时器超时后,都会重发其中一个PDU,直到等到某个PDU的重传次数达到配置的最大次数时,RLC会通知RRC数据重传失败。这样,就可以放弃此次链路重新建链来恢复数据传输。
按照RLC的3GPP协议36331中的描述,上述情况中可以考虑重发SN=VT(S)–1的PDU(也就是最后一次新组出来的PDU)。或者,通过其他任意一个已经发送但是没有确认的PDU。虽然,选取任意一个PDU都符合协议要求。但是,PDU的选取不同会导致不同的后果。比如,每次所选PDU都是随机的,那么,就很难使某个PDU的重传次数超过配置的最大次。从而,在上述情况发生时,迟迟检测不到链路问题。这样,就使得数据传输长时间处于中断的状态无法恢复。
进一步结合选择重传PDU对流程的影响来看,轮询机制存在两个功能点,包括:1、获得状态报告。2、重传超次的重新建链。
由于没有新的数据能让RLC组出新的PDU来携带P=1,也没有状态报告中指示的需要重传的PDU来携带P=1。所以,只能从已经组出的PDU中挑选一个PDU出来作为重发来携带P=1。并且,这些已经发送过的PDU还没有收到任何确认或者重传通知。不过,接收方收到发送方所发的P=1的PDU时不一定会立刻反馈状态报告,还要看以下情况。
首先,需要看看发送方和接收方都分别维护了哪些协议变量。在发送方需要维护两个协议变量VT(A)和VT(S)。其中,VT(A)是发送方中没有被确认收到的PDU中SN最小的值,VT(S)为发送方中已经发送的PDU的最大SN值加1。所以,VT(S)总是大于或者等于VT(A)。在接收方需要维护三个协议变量VR(R)、VR(MS)和VR(H)。
其中,VR(R)是接收方没有完全收到的PDU中SN最小的值。VR(MS)是记录接收方在启动重排序定时器时一个没有完全收到的PDU的SN值,且VR(MS)也是接收方组状态报告中所能报告的当前PDU接收情况的最大SN值,VR(H)是接收方收到的PDU中SN的最大值加1。
因此,总有VR(R)<=VR(MS)<=VR(H)。并且,能够进一步得出VT(A)<=VR(R)<=VR(MS)<=VR(H)<=VT(S)。上述的变量示意如图4所示。在此期间,由于SN的值范围是从0到1023,所以这里的比较符号“<=”的意思为时间上的SN产生的先后关系。
再进一步来看,根据协议中的描述,接收方在收到这个带P=1的PDU时,需要用其SN与自己的协议变量VR(MS)进行比较。如果这个P=1的PDU的SN,比VR(MS)的值小,也就是SN=VR(MS)的PDU比这个P=1的PDU要后组出来。那么,就可以触发状态报告。否则,要延迟触发状态报告直到等VR(MS)的值更新到比这个P=1的PDU的SN大时才能触发。
现有协议之所以这么设计,是考虑到物理层的HARQ重传,要留一些时间给HARQ。比如,某个PDU在第一次HARQ发送中,CRC错误没有发送成功,在后续的HARQ重传中重传成功。这样,接收方在组状态报告时,如果组的过早,会将这个PDU的SN在状态报告中标记为未收到需要重发。那么,会让发送方在后续发送过程中重发这个PDU造成空口资源的浪费。
换句话说,如果所挑选的PDU的SN比较大,也就意味其比较新。比如是SN=VT(S)–1的PDU,也就是最近一次新组出来的PDU。那么,即使接收方收到了这个PDU也很可能要延迟触发状态报告。反之,如果挑选的PDU的SN比较小也就是比较老。比如,是已经发送的PDU里面SN最小的那个VT(A),那么接收方收到这个PDU后就会触发状态报告。
同时,在延迟触发状态报告的时间内,接收方有可能继续收到接收方的PDU,这就会导致触发状态报告的时间点越靠前,接收方所发送的状态报告包含的信息量就越少,触发状态报告的时间点越靠后,接收方所发送的状态报告中的信息量就越大。
结合重传超次的影响来看,针对目前的网移动终端和基站之间的测试中,有可能会出现下面场景:移动终端的上行发送还算正常,但是下行接收已经陷入到某种错误中,导致下行接收不到任何基站发出的PDU。此时,会导致基站的下行重发某个PDU时超过最大次数。然后,移动终端这边就接收不到任何基站下发的PDU,包括状态报告也接收不到。
这样,终端上行发送的数据就得不到基站的状态报告反馈。此时,基站还是会给终端分配上行授权,终端也可以组出新的PDU或者重传PDU给基站。基站采取这种策略是希望终端因为收不到状态报告,从而在轮询定时器超时后,重发某个PDU达到最大重传次数,从而重新建链。
同时,如果终端在每次轮询定时器超时后所重传的PDU不固定,比如每次都选取SN=VT(S)–1的PDU,由于VT(S)有可能一直在更新,所以就很难达到重传某个PDU到最大次数。那么,会导致数据链路断开的时间更长一些。所以,在轮询定时器超时后的重传PDU选择上需要考虑这点。
结合对接收数据的影响来看,轮询定时器的超时分为两种情况:
1、所发出的P=1的PDU接收方没有收到。
2、接收方所发出的状态报告发送方没有收到。
对于第一种情况,在轮询定时器超时的时候,应该重发上一次发送的P=1的PDU比较合理。这样,既能起到触发状态报告的效果,也能使这次重发的PDU正好是接收方没有收到的。
但是,对于第二种情况,如果还是重发上一次P=1的PDU的话,就是一种浪费了。这样,会造成接收方多余收到一次这个PDU。不过,在没有收到接收方状态报告的情况下,发送方也不知道发送哪个PDU才是接收方需要的,而上次携带P=1的PDU与其他PDU比有更大的概率。
现有技术201410847485.8,提供了一种用于LTE中RLC AM模式下的上下行并行处理方法。
具体来首,其实施的时候,在下行发送模块中,定义变量VT(S)、VT(A)、VT(MS)以及标志位CNTRL_PDU_FLAG,其中,VT(S)为即将发送的AMDPDU的SN,SN为序列号,AMD PDU表示AM数据PDU,PDU为协议数据单元;VT(A)表示SN比它小的PDU已经收到了确认,VT(MS)是发送窗口上边界,恒等于VT(A)+AM_Window_Size,其中AM_Window_Size为发送窗口尺寸;标志位CNTRL_PDU_FLAG,用于标识此刻下行发送模块是否在组一个状态PDU,其中TRUE标识此刻下行发送模块正在组一个状态PDU,FALSE标识此刻下行发送模块未在组一个状态PDU。
在上行接收模块中,定义变量VR(R)、VR(MS)、VR(MR)、VR(H)、VR_RH以及VR_RL,其中,VR(R)为最后一个已经接收并且排序完毕的AMD PDU的SN+1,VR(MS)为能够反馈给发送方的AMD PDU接收状态对应的SN的最高可能值,VR(MR)为是接收窗口的上边界,恒等于VR(R)+AM_Window_Size,其中AM_Window_Size为接收窗口尺寸;VR(H)为接收到的最大AMD PDU的SN+1;VR_RH和VR_RL,分别标识上行接收模块被唤醒后要删除的已经排序重组完成的AMD PDU的SN上限和下限。
建立AM承载时,首先初始化VR_RL=0,VR_RH=0,CNTRL_PDU_FLAG=FALSE。
在上行接收模块中会对AMD PDU进行重排序,并把PDU重组为RLCSDU递交给高层后,先不删除已经重组完成的RLC PDU以及该PDU相关的控制结构,等待下次RLC AM上行接收模块被唤醒时,上行接收模块执行以下步骤,
步骤A1,删除VR_RL<=SN<VR_RH的RLC PDU以及该PDU相关的控制结构,更新VR_RL=VR_RH;
步骤A2,检测该RLC数据PDU是否被重复接收,并丢弃重复的RLC数据PDU;若被乱序接收,则对RLC数据PDU按照SN进行重排序;
步骤A3,根据上行接收模块接收的AMD PDU的SN来更新VR(R)、VR(MS)、VR(MR)、VR(H);
步骤A4,判断CNTRL_PDU_FLAG的值,如果CNTRL_PDU_FLAG值为FALSE进入步骤5,否则进入步骤A6;
步骤A5,更新VR_RH=VR(R);
步骤A6,将重排序完成的AMD PDU重组为RLC SDU;
步骤A7,将重组好的RLC SDU递交给高层;
步骤A8,处理上行状态PDU;
下行接收模块被唤醒后,优先组状态PDU,包括组状态RLC PDU之前先将CNTRL_PDU_FLAG置为TURE,然后再根据MAC调度结果指示组RLC状态PDU,组完RLC状态PDU后把CNTRL_PDU_FLAG置为FALSE;其次根据MAC调度结果指示组RLC重传数据PDU,最后根据MAC调度结果指示组RLC新传数据PDU;其中,组状态报告时只访问VR(R)<=SN<VR(MS)的PDU相关的控制结构。
也就是说,其利用上行接收模块和下行发送模块对共享临界资源RLC AMDPDU接收队列的访问时间错开的方式来提高并发效率。该方案能够很好的避免由于保护上下行模块共同访问的临界资源而加锁带来的处理效率低的问题,保证了基站系统的处理性能。
但是,针对轮询定时器超时的时候,无法实现通过较大的概率来让接收方接收到所需要的PDU。同时,基于时间错开的方式来提高并发效率,不能灵活选取PDU来满足状态报告的需求速度。
另有一现有技术201110279617.8,其提供了一种RLC层重传数据包的检测方法。
具体来说,该方法包括:系统模拟器SS将帧协议FP层数据包发送给检测模块;检测模块接收FP层数据包,并根据FP层数据包的序列号SN,以及传输信道信息和逻辑信道信息的映射关系表,检测FP层数据包是否是RLC层重传数据包。
进一步来看,采用的检测模块根据FP层数据包的SN号,以及传输信道信息和逻辑信道信息的映射关系表。该检测FP层数据包是否是RLC层重传数据包,包括:检测模块判断FP层数据包的SN号是否与所述映射关系表中记录的同一无线承载RB的上一数据包的SN号相同,如果是,则确定该FP层数据包为RLC层重传数据包,否则,确定该FP层数据包为RLC层新数据包。
其实现的优点集中在根据FP层数据包的SN号,以及传输信道信息和逻辑信道信息的映射关系表,检测FP层数据包是否是RLC层重传数据包,从而在保证数据传输的可靠性的前提下,提高系统处理速度,节省存储空间。
但是,其实施的时候需要配合系统模拟器SS和FP层来进行处理,且侧重在SN号来判断RLC层数据包,但SN号的作用过于单一,对链路出现问题时无法起到补救处理。
还有一现有技术,201010242094.5。其公开了一种实现RLC层重传的方法。
该方法主要包括:发送端通过混合自动重传请求HARQ实体发送无线链路控制层RLC数据;接收端接收RLC数据失败,通知发送端HARQ实体数据发送失败;发送端HARQ实体向发送端RLC实体上报数据发送失败,发送端RLC实体重新通过发送端HARQ实体发送失败发送的RLC数据。并且,发送端HARQ实体向发送端RLC实体。由此,发送端中HARQ实体与RLC实体间对HARQ传输失败的交互,有效地缩短了RLC层重传报文的时间,有效地缩短了HSPA、HSPA+、LTE网络中数据业务的时延,实现了RLC快速重传报文的功能,减小了因为无线丢包引入的时延抖动,同时提高了下载、上传业务吞吐率。
但是,在实施的时候,在链路出现问题时,只能采用发送端RLC实体重新通过发送端HARQ实体发送失败发送的RLC数据,无法实现重传。
再者,还有一现有技术,201010586829.6,其着重公开了一种RLC层的空口资源分配方法、轮询位重传方法。其中,公开的无线链路控制协议层的轮询位重传方法,采用以下步骤:
检测到多个逻辑信道的其中一逻辑信道的RLC轮询重传定时器超时。确定RLC轮询重传定时器超时的当前逻辑信道上是否有待传的数据。如果该当前逻辑信道上有待传数据,将轮询位加载到包含待传数据的第一载体中,且发送该第一载体。如果该当前逻辑信道上没有待传数据,为该当前逻辑信道预留足够发送一第二载体的最小长度空间,该第二载体所需的空间长度小于该第一载体;以及在当前逻辑信道上发送携带轮询位的第二载体。
同时,还公开了一种无线链路控制协议层的轮询位重传方法,其以下步骤:
检测到多个逻辑信道的其中一逻辑信道的RLC轮询重传定时器超时。确定RLC轮询重传定时器超时的当前逻辑信道上是否有待传的数据。
如果该当前逻辑信道上有待传数据,将轮询位加载到包含待传数据的第一载体中,且发送该第一载体。
如果该当前逻辑信道上没有待传数据,为该当前逻辑信道预留足够发送一第二载体的最小长度空间,该第二载体所需的空间长度小于该第一载体。
将当前可使用的剩余空口资源分配给其他逻辑信道使用。
以及判断其他逻辑信道已将剩余的空口资源使用完毕,如果未使用完毕,根据剩余空口资源的大小决定重传轮询位的载体,如果已使用完毕,则在当前逻辑信道上发送携带轮询位的第二载体。
并且,根据剩余空口资源的大小决定重传轮询位的载体的步骤包括:判断剩余的空口资源是否足够发送一个第一载体,如果足够,在当前逻辑信道上发送携带轮询位的第一载体,如果不足,则在当前逻辑信道上发送携带轮询位的第二载体。
但是,轮询重传期间,需要通过至少两个载体来实现,无法配合状态报告禁止定时器时长的配置来实现。
有鉴于上述的缺陷,本设计人,积极加以研究创新,以期创设一种适用于RLC在轮询重传定时器超时后重传PDU的方法,使其更具有产业上的利用价值。
发明内容
为解决上述技术问题,本发明的目的是提供一种适用于RLC在轮询重传定时器超时后重传PDU的方法。
本发明的适用于RLC在轮询重传定时器超时后重传PDU的方法,其包括以下步骤:
步骤一,发送PDU时若满足触发轮询(以下简称P)的条件,则将指令信息发送到接收方,在RLC实体中记录此指令信息,启动轮询定时器。
步骤二,RLC在判断轮询定时器计时期间,收到的状态报告是否满足关闭轮询重传定时器,若否,则进入步骤三,否则,进入步骤六。
步骤三,RLC按照状态报告中的指示,将已经确认收到的PDU删除。
步骤四,判断删除的PDU包中是否包含步骤一中所记录指令信息,若是,则进入步骤五,否则,进入步骤七。
步骤五,清除RLC实体中对该PDU的记录标记,进入步骤七。
步骤六,关闭轮询重传定时器,定义此次轮询成功,结束此次轮询流程。
步骤七,出现定时器超时。
步骤八,判断RLC实体中记录的指令信息是否存在,若是,则进入步骤九,否则进入步骤十。
步骤九,将RLC实体中记录的指令信息,再次携带P=1的信息向外发送。
步骤十,若状态报告禁止定时器时长的值小于等于预设值,则在已发送队列中选取SN最小的PDU来作为携带P的PDU,发给接收方,否则,在已发送队列中选取SN最大的PDU来作为携带P的PDU发给接收方。
步骤十一,等待状态报告响应。
进一步地,上述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其中,所述的指令信息为,携带P=1的PDU。
更进一步地,上述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其中,步骤六所述的定义此次轮询成功为,关闭轮询重传定时器之后,定义此次发送P的PDU之后成功得到了响应。
更进一步地,上述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其中,步骤七所述的定时器超时的前提条件为,在轮询定时器计时期间都没有收到状态报告。
更进一步地,上述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其中,步骤七所述的定时器超时的前提条件为,收到的状态报告不满足停止轮询重传定时器的条件。
更进一步地,上述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其中,所述的定时器超时期间,SDU(Signal Distribution Unit信号分配装置)队列和需要重传的PDU队列数据均设为空。
更进一步地,上述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其中,步骤十所述的预设值为ms150。
更进一步地,上述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其中,所述的步骤十中,SN最小的PDU为最早组出的PDU。
再进一步地,上述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其中,所述的步骤十中,SN最大的PDU为最晚组出的PDU。
借由上述方案,本发明至少具有以下优点:
1、能够优先选取上次发送过的携带P的PDU。这样,可以在链路出现问题时,通过重传此PDU,尽快达到重传的最大次数限制。从而,能够通过重新建链来恢复链路。
2、通过重传上一次发送的P=1的PDU,可以拥有较大的概率来让接收方接收到所需要的PDU。
3、在没有上次携带P的PDU可用的情况下,能够根据状态报告禁止定时器时长的配置,灵活选取PDU来满足状态报告的需求速度。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。
附图说明
图1是现有移动终端和基站的协议栈中RLC层通讯示意图;
图2是RLC AM PDU的包格式的示意图;
图3是RLC发送方上行缓存数的示意图;
图4是接收方与发送方常见变量示意图;
图5是适用于RLC在轮询重传定时器超时后重传PDU的方法实施流程示意图。
图6是本发明的简化实施示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
参见图5所提供的一种适用于RLC在轮询重传定时器超时后重传PDU的方法,其与众不同之处在于包括以下步骤:
首先,RLC发送PDU时,若满足触发P的条件,则将指令信息既携带P=1的PDU发送到接收方。与此同时,在RLC实体中,将上次携带P的PDU指示,标记为此PDU。并且,启动轮询定时器。
之后,RLC判断轮询定时器计时期间,收到的状态报告是否满足关闭轮询重传定时器。具体来说,如果是,则关闭轮询重传定时器,定义此次轮询成功,结束此次轮询流程。否则,RLC按照状态报告中的指示,将已经确认收到的PDU删除。并且,本发明所用到的定义此次轮询成功的过程为,关闭轮询重传定时器之后,定义此次发送P的PDU之后成功得到了响应。
当完成上述步骤之后,判断删除的PDU包中是否包含前序步骤中所记录的上次携带P的PDU。若是,则清除RLC实体中对该PDU的记录标记,进入定时器超时步骤。否则,进入直接进入定时器超时步骤即可。具体来说,关于定时器超时,其超时的前提条件为,在轮询定时器计时期间都没有收到状态报告。或者,从实际实施状况来看,该定时器超时的前提条件也可以是,收到的状态报告不满足停止轮询重传定时器的条件。
接着,判断RLC实体中记录的指令信息是否存在。若是,则将RLC实体中记录的指令信息,再次携带P=1的信息向外发送。如果不是,则需要进一步细化处理。具体来说,RLC实体中记录的指令信息不存在,但是状态报告禁止定时器时长的值小于等于预设值,则在已发送队列中选取SN最小的PDU来作为携带P的PDU,发给接收方。否则,在已发送队列中选取SN最大的PDU来作为携带P的PDU发给接收方。并且,在实施期间,采用的预设值为ms150。具体来说,通过采用枚举的中间项ms150来作为分水岭,这样也能在状态报告禁止定时器时长较短时更容易触发状态报告,在状态报告禁止定时器时长较长时延缓触发。同时,为了便于有效划分SN最小与SN最大,SN最小的PDU为最早组出的PDU。与之对应的是,通过最晚组出的PDU来构成SN最大的PDU。
结合如下的状态报告禁止定时器时长配置来看,其具体枚举值如下所列:
TStatusProhibit::=ENUMERATED{ms0,ms5,ms10,ms15,ms20,
ms25,ms30,ms35,ms40,ms45,
ms50,ms55,ms60,ms65,ms70,
ms75,ms80,ms85,ms90,ms95,
ms100,ms105,ms110,ms115,
ms120,ms125,ms130,ms135,
ms140,ms145,ms150,ms155,
ms160,ms165,ms170,ms175,
ms180,ms185,ms190,ms195,
ms200,ms205,ms210,ms215,
ms220,ms225,ms230,ms235,
ms240,ms24,ms250,ms300,
ms350,ms400,ms450,ms500,
spare8,spare7,spare6,spare5,
spare4,spare3,spare2,
spare1}
结合本发明的实际实施来看,SN大小选择的理由如下:选择的PDU的SN越小,就会导致越早的触发状态报告,也就会造成传输中的状态报告出现的次数越多。状态报告频率的增大,一方面可以使发送方更多的了解到接收方的接受情况,另一方面则由于状态报告不是真正网络传输中所需要的数据包,会导致网络空口资源效率的降低。因此,才在RLC配置中有一个定时器来构成状态报告禁止定时器,其作用是每次发送状态报告后启动这个定时器,在这个定时器超时前不能再次发送状态报告。
并且,为了满足实际中对状态报告需求量的不同,本发明根据状态报告禁止定时器时长的配置,作为标准来选择大或者小的SN的PDU用以重传。具体来说,如果状态报告禁止定时器的时长配置较长,则表明网络希望状态报告出现的频率小。反之,时长较短则希望状态报告出现的频率高。利用这一特性,本发明认为当状态报告禁止定时器的时长配置较短时选取较小的SN的PDU来发送,时长较长时选取较大的SN的PDU来发送。
最终,等待状态报告响应。也就是说,回到最初的按照步骤中的描述,重新回到等待接收状态报告,由此反复执行。
结合本发明一较佳的实施方式来看,为了避免出现无用数据的堆积,在定时器超时期间,SDU(Service Data Unit服务数据单元)队列和需要重传的PDU队列数据均设为空。对于SDU队列和需要重传的PDU队列中有数据的情况,在协议中已经有对应处理的描述。就是发送SDU队列或者重传PDU队列的PDU,让其携带P=1。
简而言之,应用本发明的技术方案,在轮询定时器超时后,既没有上层数据能组成新的PDU,也没有之前组好的PDU因为状态报告指示需要重发的情况下,可以简化如图6所示:
在RLC达到触发P的条件时,将触发P的PDU中的P域设置为1,并在RLC实体中记录此PDU。之后,启动轮询重传定时器。
在RLC在轮询重传定时器计时期间,收到状态报告且不满足关闭轮询重传定时器条件时。如果状态报告中的内容中确认已经收到RLC实体中记录的此PDU,那么就将此PDU删除,并在RLC实体中清除记录标记。
并且,RLC在轮询重传定时器超时后,首先判断RLC实体中的记录携带P=1的PDU是否存在。如果存在,则优先考虑再次重发此PDU。
如果RLC实体中已经没有携带P=1的PDU的记录标记,那么根据状态报告禁止定时器的时长配置,如果时长的值小于等于150ms,那么在已发送队列中选取SN最小的PDU(也就是最早组出的PDU)来作为携带P的PDU,发给接收方。
否则,在已发送队列中选取SN最大的PDU(也就是最晚组出的PDU)作为携带P的PDU发给接收方。
本发明的工作原理如下,已实际处理为例:
假设RLC在发送SN=5的时候满足触发P的条件。那么依照步骤一,在RLC实体中记录SN=5的PDU是本次携带P=1的PDU。然后,启动轮询定时器。轮询定时器超时前没有收到任何状态报告,那么超时后根据步骤九将RLC实体中所记录的SN=5的PDU来携带P=1进行重传。在RLC实体中,更新记录SN=5的PDU为携带P=1的PDU,然后启动轮询定时器。
同时,轮询定时器超时前收到状态报告但不满足关闭定时器条件,且状态报告中指示SN=5的PDU已经收到。那么,根据步骤五清除RLC实体中的记录标记,并删除SN=5的PDU。
接着,轮询定时器超时后根据步骤十依照状态报告,禁止定时器的时长配置在已发送PDU队列中选择一个PDU进行重传来携带P=1。假设这个PDU的SN=10,然后在RLC实体中记录SN=10的PDU是本次携带P=1的PDU。
最后,继续等待状态报告的响应。
通过上述的文字表述并结合附图可以看出,采用本发明后,拥有如下的有点:
1、能够优先选取上次发送过的携带P的PDU。这样,可以在链路出现问题时,通过重传此PDU,尽快达到重传的最大次数限制。从而,能够通过重新建链来恢复链路。
2、通过重传上一次发送的P=1的PDU,可以拥有较大的概率来让接收方接收到所需要的PDU。究其原因就是,因为轮询定时器超时,很有可能是因为上一次发送的P=1的PDU接收方没有收到。
3、在没有上次携带P的PDU可用的情况下,能够根据状态报告禁止定时器时长的配置,灵活选取PDU来满足状态报告的需求速度。
以上所述仅是本发明的优选实施方式,并不用于限制本发明,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应视为本发明的保护范围。
Claims (9)
1.适用于RLC在轮询重传定时器超时后重传PDU的方法,其特征在于包括以下步骤:
步骤一,发送PDU时若满足触发轮询的条件,则将指令信息发送到接收方,在RLC实体中记录此指令信息,启动轮询定时器;
步骤二,RLC在判断轮询定时器计时期间,判断收到的状态报告是否满足关闭轮询重传定时器,若否,则进入步骤三,否则,进入步骤六;
步骤三,RLC按照状态报告中的指示,将已经确认收到的PDU删除;
步骤四,判断删除的PDU包中是否包含步骤一中所记录的指令信息,若是,则进入步骤五,否则,进入步骤七;
步骤五,清除RLC实体中记录的指令信息,进入步骤七;
步骤六,关闭轮询重传定时器,定义此次轮询成功,结束此次轮询流程;
步骤七,出现定时器超时;
步骤八,判断RLC实体中记录的指令信息是否存在,若是,则进入步骤九,否则进入步骤十;
步骤九,将RLC实体中记录的指令信息,再次携带轮询=1的信息向外发送;
步骤十,若状态报告禁止定时器时长的值小于等于预设值,则在已发送队列中选取SN最小的PDU来作为携带轮询的PDU,发给接收方,否则,在已发送队列中选取SN最大的PDU来作为携带轮询的PDU发给接收方;
步骤十一,照步骤一的流程进入等待状态报告响应。
2.根据权利要求1所述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其特征在于:所述的指令信息为,携带轮询=1的PDU。
3.根据权利要求1所述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其特征在于:步骤六所述的定义此次轮询成功为,关闭轮询重传定时器之后,定义此次发送轮询的PDU之后成功得到了响应。
4.根据权利要求1所述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其特征在于:步骤七所述的定时器超时的前提条件为,在轮询定时器计时期间都没有收到状态报告。
5.根据权利要求1所述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其特征在于:步骤七所述的定时器超时的前提条件为,收到的状态报告不满足停止轮询重传定时器的条件。
6.根据权利要求1所述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其特征在于:所述的定时器超时期间,SDU队列和需要重传的PDU队列数据均设为空。
7.根据权利要求1所述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其特征在于:步骤十所述的预设值为ms150。
8.根据权利要求1所述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其特征在于:所述的步骤十中,SN最小的PDU为最早组出的PDU。
9.根据权利要求1所述的适用于RLC在轮询重传定时器超时后重传PDU的方法,其特征在于:所述的步骤十中,SN最大的PDU为最晚组出的PDU。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510465763.8A CN106411478B (zh) | 2015-08-03 | 2015-08-03 | 适用于rlc在轮询重传定时器超时后重传pdu的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510465763.8A CN106411478B (zh) | 2015-08-03 | 2015-08-03 | 适用于rlc在轮询重传定时器超时后重传pdu的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106411478A true CN106411478A (zh) | 2017-02-15 |
CN106411478B CN106411478B (zh) | 2019-06-07 |
Family
ID=58008006
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510465763.8A Active CN106411478B (zh) | 2015-08-03 | 2015-08-03 | 适用于rlc在轮询重传定时器超时后重传pdu的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106411478B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108924954A (zh) * | 2018-07-29 | 2018-11-30 | 珠海市万顺睿通科技有限公司 | 基于无线网络的水污染监测方法及系统 |
CN108933645A (zh) * | 2018-06-04 | 2018-12-04 | 熊猫电子集团有限公司 | 一种终端高效主动轮询方法 |
CN111510950A (zh) * | 2019-01-31 | 2020-08-07 | 电信科学技术研究院有限公司 | 传输处理方法、终端及网络设备 |
US10873990B2 (en) | 2017-05-19 | 2020-12-22 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method and device for receiving and processing data of radio link control layer |
CN112235826A (zh) * | 2020-10-16 | 2021-01-15 | 展讯半导体(南京)有限公司 | 数据删除及同步方法和收发终端、电子设备及存储介质 |
CN113315608A (zh) * | 2021-04-30 | 2021-08-27 | 上海微波技术研究所(中国电子科技集团公司第五十研究所) | 一种动态确定重传pdu的方法、系统、介质及其通信系统 |
WO2022016489A1 (en) * | 2020-07-24 | 2022-01-27 | Qualcomm Incorporated | Polling and status reporting for network coding |
CN114584263A (zh) * | 2022-01-19 | 2022-06-03 | 网络通信与安全紫金山实验室 | 重发超限及双无条件下rlc确认模式增强方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101547469A (zh) * | 2008-03-24 | 2009-09-30 | 华为技术有限公司 | 一种发送数据的方法、系统和设备 |
KR20090116610A (ko) * | 2008-05-06 | 2009-11-11 | 삼성전자주식회사 | 이동 통신 시스템에서 무선 링크 제어 데이터 처리 방법 및장치 |
CN102045883A (zh) * | 2009-10-13 | 2011-05-04 | 上海摩波彼克半导体有限公司 | 无线通信系统中无线链路控制重配置后处理轮询的方法 |
-
2015
- 2015-08-03 CN CN201510465763.8A patent/CN106411478B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101547469A (zh) * | 2008-03-24 | 2009-09-30 | 华为技术有限公司 | 一种发送数据的方法、系统和设备 |
KR20090116610A (ko) * | 2008-05-06 | 2009-11-11 | 삼성전자주식회사 | 이동 통신 시스템에서 무선 링크 제어 데이터 처리 방법 및장치 |
CN102045883A (zh) * | 2009-10-13 | 2011-05-04 | 上海摩波彼克半导体有限公司 | 无线通信系统中无线链路控制重配置后处理轮询的方法 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10873990B2 (en) | 2017-05-19 | 2020-12-22 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method and device for receiving and processing data of radio link control layer |
CN108933645A (zh) * | 2018-06-04 | 2018-12-04 | 熊猫电子集团有限公司 | 一种终端高效主动轮询方法 |
CN108933645B (zh) * | 2018-06-04 | 2021-07-23 | 熊猫电子集团有限公司 | 一种终端高效主动轮询方法 |
CN108924954B (zh) * | 2018-07-29 | 2023-11-14 | 江苏博克斯科技股份有限公司 | 基于无线网络的水污染监测方法及系统 |
CN108924954A (zh) * | 2018-07-29 | 2018-11-30 | 珠海市万顺睿通科技有限公司 | 基于无线网络的水污染监测方法及系统 |
CN111510950A (zh) * | 2019-01-31 | 2020-08-07 | 电信科学技术研究院有限公司 | 传输处理方法、终端及网络设备 |
CN111510950B (zh) * | 2019-01-31 | 2021-12-17 | 大唐移动通信设备有限公司 | 传输处理方法、终端及网络设备 |
WO2022016489A1 (en) * | 2020-07-24 | 2022-01-27 | Qualcomm Incorporated | Polling and status reporting for network coding |
CN112235826A (zh) * | 2020-10-16 | 2021-01-15 | 展讯半导体(南京)有限公司 | 数据删除及同步方法和收发终端、电子设备及存储介质 |
CN113315608A (zh) * | 2021-04-30 | 2021-08-27 | 上海微波技术研究所(中国电子科技集团公司第五十研究所) | 一种动态确定重传pdu的方法、系统、介质及其通信系统 |
WO2023137854A1 (zh) * | 2022-01-19 | 2023-07-27 | 网络通信与安全紫金山实验室 | 重发超限及双无条件下rlc确认模式增强方法及装置 |
CN114584263A (zh) * | 2022-01-19 | 2022-06-03 | 网络通信与安全紫金山实验室 | 重发超限及双无条件下rlc确认模式增强方法及装置 |
CN114584263B (zh) * | 2022-01-19 | 2024-05-03 | 网络通信与安全紫金山实验室 | 重发超限及双无条件下rlc确认模式增强方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106411478B (zh) | 2019-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106411478A (zh) | 适用于rlc在轮询重传定时器超时后重传pdu的方法 | |
JP6773748B2 (ja) | エンハンスト・アップリンク送信における不連続データ・ブロックを転送する方法および装置 | |
CN110476378B (zh) | 指示转发的数据的状态 | |
US11057797B2 (en) | Method and device for processing information | |
TWI415502B (zh) | 傳輸時間間隔集束機制之上鏈路傳輸的方法及相關裝置 | |
CN103138905B (zh) | Rlc数据包传输的确认方法及rlc am实体发送方 | |
US20200267793A1 (en) | Method and system for handling packet duplication and resumption of rbs in wireless communication system | |
KR101154609B1 (ko) | Mac 층 리셋 후 노드-b 에서 버퍼링된 데이터의 효과적인 복구를 위한 시스템 | |
TWI397336B (zh) | 改善暫存器狀態觸發機制之方法及其相關通訊裝置 | |
US7403528B2 (en) | Method of data communication using a control message | |
CN102158972B (zh) | 一种数据传输的方法和装置 | |
EP3002971A1 (en) | System for efficient recovery of node b buffered data following serving high speed downlink shared channel cell change | |
WO2018127225A1 (zh) | 数据传输方法、网络侧设备及用户设备 | |
CN109246848B (zh) | 一种rlc实体的重建立方法及装置 | |
US20230007527A1 (en) | Method for processing data in consideration of tcp/ip | |
TW201032522A (en) | Method and apparatus for TTI bundling transmission | |
CN110476445A (zh) | 利用分离承载的分组数据汇聚协议窗口 | |
CN105229961A (zh) | 协议数据单元的递送 | |
KR20200103790A (ko) | Nr을 위한 harq 버퍼 관리 방법 | |
TWM283441U (en) | Apparatus having medium access control layer architecture for supporting enhanced uplink | |
EP2448318B1 (en) | Method and system for determining uplink back propagation finish time | |
EP2670077A1 (en) | Method and apparatus for data packet retransmission | |
NZ580223A (en) | A method and apparatus for seamless handover in a wireless communication network | |
KR20160113695A (ko) | 데이터 전송 방법, 장치 및 시스템 | |
CN101647257A (zh) | 重发请求发送方法和接收侧装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |