CN103457707B - 一种数据传输方法、装置及*** - Google Patents
一种数据传输方法、装置及*** Download PDFInfo
- Publication number
- CN103457707B CN103457707B CN201210173623.XA CN201210173623A CN103457707B CN 103457707 B CN103457707 B CN 103457707B CN 201210173623 A CN201210173623 A CN 201210173623A CN 103457707 B CN103457707 B CN 103457707B
- Authority
- CN
- China
- Prior art keywords
- window
- lower limit
- packet
- size
- sequence number
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Communication Control (AREA)
Abstract
本发明提供一种数据传输方法、装置及***,所述方法包括:利用预设重排序窗口大小调整原始接收窗口的下限值,得到当前接收窗口的下限值,原始接收窗口下限值为接收端期望接收到的下一个数据包的包序号;比较当前接收窗口的下限值与原始接收窗口的下限值,如果为大于,则更新原始接收窗口的下限值为断点值;断点值为不小于当前接收窗口的下限值的第一个未接收到的数据包的包序号,将包序号小于所述断点值的数据包递交给接收层。本发明实施例实现了降低数据包递交时延的目的,还降低了传输过程中数据包的抖动。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种数据传输方法、装置及***。
背景技术
现有的LTE(Long Term Evolution,长期演进)空口传输技术中,在RLC(Radio Link Control,无线链路控制)层有两种传输模式,分别是确认模式(Acknowledged Mode,AM)和非确认模式(Unacknowledged Mode,UM)。对于RLC UM传输模式来说,发送端只负责将数据包发送给接收端即可,不需要接收端进一步对数据包接收情况向发送端进行确认反馈。也就是说,不论接收端是否成功接收到数据包,发送端都不再重新发送数据包。
对于RLC UM传输模式的接收端来说,虽然不需要保证数据包的可靠接收,但却需要保证数据包按序递交给接收层。所谓按序递交是指按照RLC分配的包序号(Sequence Number,SN)递增的顺序将接收到的数据包递交给接收层。
然而,在实际传输过程中,由于存在MAC(Media Access Control,媒体接入控制)HARQ(Hybrid Automatic Repeat request,混合式自动重送请求)重传以及动态调度的关系,导致数据包可能并不是按照RLC SN递增的顺序到达接收端的RLC层,出现数据包的乱序接收情况。
现有技术中,在接收端RLC层感知到数据包SN乱序(包序号SN不连续)后,接收端RLC层并不清楚后续的数据包是否会到达,因为未到达的数据包可能已经丢失、也可能正在等待重传。例如,接收端RLC层接收到SN为5的数据包后,经检查发现并未接收到SN为4的数据包,说明出现了SN不连续的情况。此时,接收端RLC层就会针对SN为5的数据包启动一个T-reordering重排序定时器,如果在重排序定时器超时之前,还未接收到SN小于5的未接收到的数据包,也就是说未接收到SN为4的数据包,则不会将出现乱序未接收到的SN为4的数据包以及序号大于该SN的已接收到数据包递交给接收层,也就是说,只将SN为0、1、2、3的数据包递交给接收层。
对于重排序定时器的等待定时t-reordering Timer,如果HARQ进程采用固定间隔的同步调度方式重传,则理论上等待定时t-reordering Timer可为固定间隔的倍数,例如,固定间隔为8ms,t-reordering Timer为固定间隔的2倍,即16ms,但是考虑到发送端和接收端的传输时延问题,在应用中还需要将t-reorderingTimer设置的比理论值再长一些。而对于HARQ进程采用非固定间隔的异步调度方式重传时,t-reordering Timer配置的时长要比同步调度的时间还要长。
因为在接收端RLC层启动重排序定时器后,需要等待t-reordering Timer超时后,才会向接收层递交乱序数据包之前的数据包,也就是上例中的SN为0、1、2、3的数据包。这就导致该部分数据包的递交时延较长,另外,数据包的递交时延越长,传输过程中数据包的抖动情况就越严重。
发明内容
本发明实施例提供一种数据传输方法、装置及***,实现降低数据包递交时延的目的。
为此,本发明实施例提供如下技术方案:
一种数据传输方法,所述方法包括:
利用预设重排序窗口大小调整原始接收窗口的下限值,得到当前接收窗口的下限值;所述原始接收窗口的下限值为接收端期望接收到的下一个数据包的包序号;
比较所述当前接收窗口的下限值与所述原始接收窗口的下限值,如果所述当前接收窗口的下限值大于所述原始接收窗口的下限值,则更新所述原始接收窗口的下限值为断点值;所述断点值为不小于所述当前接收窗口的下限值的第一个未接收到的数据包的包序号;
将包序号小于所述断点值的数据包递交给所述接收端的接收层。
一种数据传输装置,所述装置包括:
下限值调整单元,用于利用预设重排序窗口大小调整原始接收窗口的下限值,得到当前接收窗口的下限值;所述原始接收窗口的下限值为接收端期望接收到的下一个数据包的包序号;
下限值比较单元,用于比较所述当前接收窗口的下限值与所述原始接收窗口的下限值,如果所述当前接收窗口的下限值大于所述原始接收窗口的下限值,则更新所述原始接收窗口的下限值为断点值;所述断点值为不小于所述当前接收窗口的下限值的第一个未接收到的数据包的包序号;
数据包发送单元,用于将包序号小于所述断点值的数据包递交给所述接收端的接收层。
一种数据传输***,其特征在于,所述***包括上述的数据传输装置以及向所述数据传输装置发送数据包的数据发送端。
本发明实施例数据传输方法、装置及***,在接收端出现数据包乱序之后,首先利用预设重排序窗口的大小调整原始接收窗口的下限值,并保证调整获得的当前接收窗口下限值大于原始接收窗口的下限值,这样就减少了等待接收的被考虑重排序的数据包的个数,也就是说减少了等待接收数据包的时间;其次,还更新原始接收窗口的下限值为不小于当前接收窗口下限值的第一个未被连续接收到的数据包的包序号,这就明确了哪些是需要重排序并递交给接收层的数据包;最后,再将确定的包序号小于断点值的数据包递交给接收层,实现了降低数据包递交时延的目的,进而还降低了传输过程中数据包的抖动。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是本发明实施例数据传输方法的一种实现方式的流程图;
图2是本发明实施例数据传输方法的另一种实现方式的流程图;
图3是本发明实施例数据传输装置的一种实现方式的构成示意图;
图4是本发明实施例数据传输装置的另一种实现方式的构成示意图;
图5是本发明实施例中下限值调整单元的构成示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本发明实施例作进一步的详细说明。
本发明实施例数据传输方法、装置及***,在接收端发现数据包乱序之后,首先,调整原始接收窗口的下限值,使调整后的当前接收窗口下限值不小于原始接收窗口的下限值,以减少等待接收数据包的时间;然后,更新原始接收窗口的下限值为断点值,明确需要重排序并递交给接收层的数据包;最后,将包序号小于断点值的数据包递交给接收层。本发明实施例就实现了降低数据包递交时延的目的,进而还降低了传输过程中数据包的抖动。
如图1所示,是本发明实施例数据传输方法的一种实现方式的流程图,包括:
步骤101,利用预设重排序窗口大小调整原始接收窗口的下限值VR(UR),得到当前接收窗口的下限值VR(URO);所述原始接收窗口的下限值VR(UR)为接收端期望接收到的下一个数据包的包序号。
在RLC层采用非确认模式进行数据的发送与接收时,由于MAC HARQ重传以及动态调度的关系,可能会出现数据包乱序现象。例如,发送端发送SN分别为0、1、2、3、4、5的数据包,在传输过程中SN为0、1、2、3、5的数据包被接收端成功接收,SN为4的数据包丢失;接收端RLC层在连续接收到SN为0、1、2、3的数据包之后,更新期望接收到的下一个数据包的SN变量VR(UR)=3+1=4,接收端RLC层在接收到SN为5的数据包后,则更新变量VR(UH)为接收到的最大SN的下一个SN,即VR(UH)=5+1=6,如果经RLC层检查发现并未接收到SN为4的数据包,而此时VR(UH)>VR(UR),则接收端判断出现了传输的乱序,需要启动重排序操作。即,接收端RLC层针对SN为5的数据包启动一个重排序定时器,此时,SN为5的数据包即为触发重排序定时器启动的数据包,而重排序定时器状态变量VR(UX)=6(重排序定时器状态变量为触发重排序定时器启动的数据包的包序号加1),也就是说SN为6的数据包是RLC层完成当前重排序后第一个想要接收的数据包。如果RLC层在接收到SN为3的数据包之后,继续接收到SN为5、6、7、8、9的数据包,则对于SN为4的数据包丢包情况来说,原始接收窗口的上限值VR(UH)=9+1=10(原始接收窗口的上限值为当前已接收到的数据包的最大包序号加1),原始接收窗口的下限值VR(UR)=4(原始接收窗口的下限值为接收端期望接收到的下一个数据包对应的SN),也就是说,原始接收窗口为[4,10),相应地,RLC层需要等待递交的被考虑重排序的数据包个数为5个,即SN为5、6、7、8、9的数据包。
本步骤为了缩短等待递交的时间,通过一个预设重排序窗口大小对原始接收窗口进行调整,例如预设重排序窗口大小SN_in_Flight_Window=3,则调整后的当前接收窗口下限值VR(URO)=VR(UH)-SN_in_Flight_Window=10-3=7,也就是说当前接收窗口为[7,10),而由于数据包7、8、9已经被成功接收,RLC层需要等待接收的被考虑重排序的数据包个数为0个。这就大大减少了接收端等待接收的数据包个数,也就减少了等待接收时间,为降低数据包递交时延提供了技术基础。
步骤101利用预设重排序窗口大小调整原始接收窗口的下限值,得到当前接收窗口的下限值的过程可具体体现为:
首先,设置所述预设重排序窗口的大小。对于本发明实施例中设置预设重排序窗口大小的具体方式此处暂不详述。
其次,计算所述当前接收窗口的下限值,当前接收窗口的下限值=原始接收窗口的上限值与预设重排序窗口的大小之差的绝对值mod包序号的取值范围;所述原始接收窗口的上限值为当前已接收到的数据包的最大包序号加1。
由于包序号的取值范围采用的是周期方式,因此对于计算当前接收窗口的下限值的过程需要考虑取模操作,例如,Final value=[value from arithmeticoperation]modulo 2^[sn-FieldLength]。
步骤102,比较所述当前接收窗口的下限值与所述原始接收窗口的下限值,如果所述当前接收窗口的下限值大于所述原始接收窗口的下限值,则更新所述原始接收窗口的下限值为断点值;所述断点值为不小于所述当前接收窗口的下限值的第一个未接收到的数据包的包序号。
经由步骤101调整原始接收窗口下限值VR(UR)后,还需要更进一步判断得到的当前接收窗口下限值VR(URO)是否满足本发明实施例调整下限值欲达到的目的,即判断调整下限值后是否能减少等待接收的数据包个数,如果VR(URO)=VR(UR),则说明调整后的下限值VR(URO)与上限值VR(UH)之间的数据包个数与VR(UR)与上限值VR(UH)之间的数据包个数相等,即等待接收的数据包个数未发生改变;如果VR(URO)>VR(UR),则说明调整后的下限值VR(URO)与上限值VR(UH)之间的数据包个数比VR(UR)与上限值VR(UH)之间的数据包个数少,即等待接收的数据包个数减少。
此外,为了明确RLC层需要递交给接收层的数据包,本步骤还需要对原始接收窗口下限值VR(UR)进行更新,将其更新为断点值。也就是说,更新到不小于VR(URO)的第一个没有被连续接收的数据包的SN,这样,RLC层就可以将包序号小于断点值,且大于原始接收窗口下限值VR(UR)的数据包组装后递交给接收层。
对于断点值来说,是指不小于调整后的下限值VR(URO)的第一个未被连续接收到数据包的包序号,仍以上述SN为4的数据包出现丢包现象为例:
如果在启动重排序定时器的数据包(SN=5),以及已接收到的SN最大的数据包(SN=9)之间存在的所有数据包都被接收到,即接收端接收到发送端发送的SN为6、7、8的数据包,则不小于VR(URO)=7的第一个未被连续接收到数据包的SN=10,则断点值=10,更新得到的VR(UR)′=10。
如果在SN=5以及SN=9之间存在未接收到的数据包,例如,接收端接收到发送端发送的SN为6和7的数据包,而未接收到SN=8的数据包,则不小于VR(URO)=7的第一个未被连续接收到数据包的SN=8,则断点值=8,更新得到的VR(UR)′=8。
步骤103,将包序号小于所述断点值的数据包递交给所述接收端的接收层。
在更新原始接收窗口的下限值为VR(UR)′之后,RLC层就可以重新组装RLC SDUs,将包序号小于VR(UR)′的数据包传递给接收层,这就缩短了数据包的递交时延。例如,对于数据包4丢失,而数据包5、6、7、8、9被成功接收,并更新VR(UR)′=10的情况而言,RLC层重新组装的是SN为5、6、7、8、9的数据包;对于数据包4、8丢失,而数据包5、6、7被成功接收,并更新VR(UR)′=8的情况而言,RLC层重新组装的是SN为5、6、7的数据包。
这样本发明实施例就从减少RLC层需要等待接收的被考虑重排序的数据包的个数的角度出发,通过调整原始接收窗口的下限值,降低接收端等待接收的时间,实现降低数据包递交时延的目的,进而还降低了传输过程中数据包的抖动。这主要是因为,传输过程中的抖动表示的是数据包在传输过程中的时延变化,本发明的实施例在出现乱序时,可以依据当前接收窗来停止部分数据包的等待时延,因此降低了传输的抖动,也就是说有效降低了数据包的递交时延,也就降低了传输的抖动。
如图2所示,是本发明实施例数据传输方法的另一种实现方式的流程图,在将包序号小于断点值的数据包递交给接收层之后,所述方法还包括:
步骤104,如果所述当前接收窗口的下限值大于或小于重排序定时器状态变量VR(UX),则控制正在运行的重排序定时器停止计时;如果所述当前接收窗口的下限值小于重排序定时器状态变量VR(UX),则结束数据传输过程。所述重排序定时器状态变量VR(UX)为触发重排序定时器启动的数据包的包序号加1。
本步骤主要是确定停止重排序定时器运行的时机,重排序定时器状态变量VR(UX)是指RLC层触发重排序定时器启动的数据包的包序号加1,而如果当前接收窗口下限值VR(URO)大于或等于VR(UX),则说明即使接收端RLC层接收到VR(UX)=6的数据包,那么该数据包也因为包序号小于更新得到的VR(UR)′(即10)而被视为无效数据,因此,只要经判断VR(URO)≥VR(UX),就说明此时已没有继续维护重排序定时器的必要了,可以控制重排序定时器停止运行,以减少终端维护重排序定时器的开销。
需要说明的是,与计算当前接收窗口的下限值的方法相类似,因为包序号的取值范围采用的是周期方式,因此本发明实施例中所有涉及到对包序号的操作均是取模操作。
下面对本发明实施例中设置预设重排序窗口大小的具体方式进行简单介绍。
一种方式是,利用包序号的取值范围、配置使用的HARQ进程个数、单个HARQ进程一次传输的传输块个数以及HARQ进程的总传输次数计算所述预设重排序窗口的大小。具体公式为:
SN_in_Flight_Window=Min{包序号的取值总量/2,(配置使用的HARQ进程个数*单个HARQ进程一次传输的传输块个数-1)*HARQ进程的总传输次数+1}。
另一种方式是,利用包序号的取值范围、配置使用的HARQ进程个数、单个HARQ进程一次传输的传输块个数、HARQ进程的总传输次数、聚合的小区个数(每个聚合小区对应有一个上行的聚合载波和一个下行的聚合载波,本发明实施例主要针对的是基站到接收端的下行方向,因此,聚合的小区个数也就相当于下行的聚合载波个数)、每个HARQ进程的最大传输次数计算所述预设重排序窗口的大小。具体公式为:
SN_in_Flight_Window=Min{包序号的取值总量/2,(配置使用的HARQ进程个数*单个HARQ进程一次传输的传输块个数-1)*HARQ进程的总传输次数+1+Sum(其他载波的进程个数*每个进程的传输块个数*每个HARQ进程的最大传输次数)}。
其中,单个HARQ进程一次传输的传输块个数反映的是无线网络信号通过几重天线进行同步收发,对于多天线配置的MIMO***而言,单个HARQ进程一次传输的传输块个数可以是2个或者4个,对于非MIMO***而言,单个HARQ进程一次传输的传输块个数为1。包序号的取值范围可由基站为接收端配置,可具体体现为5bit或者10bit等比特长度,对于10bit来说,包序号的取值范围为0~1023。使用的HARQ进程个数可由基站配置为1~8个;而单个HARQ进程传输的传输块个数也可由基站配置为1~4个;小区的个数可为1~5个。
按照上述参数设置出的预设重排序窗口的大小可为1~2^(snFieldLength-1)之间。
下面结合上述参数取值范围,对本发明实施例中设置预设重排序窗口大小的过程进行举例说明。
如果基站为接收端所在小区配置的参数取值为:
序号域的长度为10,即包序号的取值总量为2^10=1024;
聚合的小区个数为2;
第一小区UE在该聚合小区可使用的HARQ进程个数为5;
第一小区每个HARQ进程一次调度可传输的传输块个数为1;
第一小区HARQ进程的总传输次数为3;
第二小区UE在该聚合小区可使用的HARQ进程个数为4;
第二小区每个HARQ进程一次调度可传输的传输块个数为2;
第二小区HARQ进程的总传输次数为4。
接收当前数据的UE所属小区为第一小区,依据本发明实施例提供的公式计算预设重排序窗口的大小:
SN_in_Flight_Window=Min{包序号的取值总量/2,(配置使用的HARQ进程个数*单个HARQ进程一次传输的传输块个数-1)*HARQ进程的总传输次数+1+Sum(其他载波的进程个数*每个进程的传输块个数*每个HARQ进程的最大传输次数)},则可计算出UE使用的Window的大小为:
SN_in_Flight_Window
=Min{(2^10)/2,(5*1-1)*3+1+(4*2*4)}
=Min{512,45}
=45
如果UE期望接收到的下一个数据包的SN为1,当前已接收到的数据包的最大SN为50,那么,原始接收窗口的下限值为1,原始接收窗口的上限值为51。依据当前接收窗口的下限值=原始接收窗口的上限值与预设重排序窗口的大小之差的绝对值mod包序号的取值范围,计算|51-45|mod 1024=6得到的当前接收窗口的下限值即为6。
另外,需要说明的是,SN_in_Flight_Window可以是接收端根据上述参数按照公式计算获得,也可以是由基站计算好后直接下发给接收端利用,本发明实施例对此不做限定。
相应地,本发明实施例一种数据传输装置,如图3所示,示出了数据处理装置的一种构成示意图,所述装置包括:
下限值调整单元301,用于利用预设重排序窗口大小调整原始接收窗口的下限值,得到当前接收窗口的下限值;所述原始接收窗口的下限值为接收端期望接收到的下一个数据包的包序号。
下限值比较单元302,用于比较所述当前接收窗口的下限值与所述原始接收窗口的下限值,如果所述当前接收窗口的下限值大于所述原始接收窗口的下限值,则更新所述原始接收窗口的下限值为断点值;所述断点值为不小于所述当前接收窗口的下限值的第一个未接收到的数据包的包序号。
数据包发送单元303,用于将包序号小于所述断点值的数据包递交给所述接收端的接收层。
本发明实施例的数据传输装置利用下限值调整单元减少了RLC层需要等待接收的被考虑重排序的数据包的个数,以此来降低接收端RLC层等待接收的时间,实现了降低数据包递交时延的目的。
如图4所示,示出了本发明实施例数据处理装置的另一种构成示意图,所述装置还包括:
停止计时判断单元304,用于如果所述当前接收窗口的下限值大于或等于重排序定时器状态变量,则控制正在运行的重排序定时器停止计时,所述重排序定时器状态变量为触发重排序定时器启动的数据包的包序号加1。
在数据包发送单元将包序号小于断点值的数据包递交给接收层之后,由停止计时判断单元确定一个合适的时机(即VR(URO)≥VR(UX)时),控制重排序定时器停止运行,以减少终端维护重排序定时器的开销。
优选的,如图5所示,所述下限值调整单元具体包括:
窗口设置单元401,用于设置所述预设重排序窗口的大小。
计算单元402,用于计算所述当前接收窗口的下限值,当前接收窗口的下限值=原始接收窗口的上限值与预设重排序窗口的大小之差的绝对值mod包序号的取值范围;所述原始接收窗口的上限值为当前已接收到的数据包的最大包序号加1。
为了实现本发明实施例第一方面通过减少等待接收数据包个数的方式降低数据包递交时延的目的,先由窗口设置单元预设一个当前接收窗口大小,再利用原始接收窗口的上限值VR(UH)计算获得当前接收窗口的下限值VR(URO)。例如,在数据传输过程中,接收端成功接收到SN为0、1、2、3、5、6、7、9的数据包,SN为4、8的数据包在传输过程中丢失,如果预设重排序窗口大小SN_in_Flight_Window=3,VR(UH)=10,VR(UR)=4,则VR(URO)=VR(UH)-SN_in_Flight_Window=10-3=7,相应地,接收窗口从原始接收窗口[4,10)调整为当前接收窗口[7,10),需要等待递交的被考虑重排序的数据包个数从4个(SN为5、6、7、9的数据包)降低为1个(SN为9的数据包),减少接收端需要等待接收的数据包个数,就大大降低了等待接收的时间,实现了降低数据包递交时延的目的。
本发明实施例中提供两种设置预设重排序窗口大小的方式:
一种方式是利用包序号的取值范围、配置使用的HARQ进程个数、单个HARQ进程一次传输的传输块个数以及HARQ进程的总传输次数设置,具体公式为:
SN_in_Flight_Window=Min {包序号的取值总量/2,(配置使用的HARQ进程个数*单个HARQ进程一次传输的传输块个数-1)*HARQ进程的总传输次数+1}。
另一种方式是除上述四个参数之外,还充分考虑聚合的小区个数和每个HARQ进程的最大传输次数,综合利用这六个因素设置预设重排序窗口大小,具体公式为:
SN_in_Flight_Window=Min {包序号的取值总量/2,(配置使用的HARQ进程个数*单个HARQ进程一次传输的传输块个数-1)*HARQ进程的总传输次数+1+Sum(其他载波的进程个数*每个进程的传输块个数*每个HARQ进程的最大传输次数)}。
相应地,本发明实施例还提供一种数据传输***,所述***包括本发明实施例所述的数据传输装置以及向所述数据传输装置发送数据包的数据发送端。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或软件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本发明所使用的,盘(Disk)和碟(disc)包括压缩光碟(CD)、激光碟、光碟、数字通用光碟(DVD)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本发明实施例进行了详细介绍,本文中应用了具体实施方式对本发明进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及设备;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (13)
1.一种数据传输方法,应用于无线链路控制层的非确认模式,其特征在于,所述方法包括:
利用预设重排序窗口大小调整原始接收窗口的下限值,得到当前接收窗口的下限值;所述原始接收窗口的下限值为接收端期望接收到的下一个数据包的包序号;
比较所述当前接收窗口的下限值与所述原始接收窗口的下限值,如果所述当前接收窗口的下限值大于所述原始接收窗口的下限值,则更新所述原始接收窗口的下限值为断点值;所述断点值为不小于所述当前接收窗口的下限值的第一个未接收到的数据包的包序号;
将包序号小于所述断点值的数据包递交给所述接收端的接收层;
其中,所述利用预设重排序窗口大小调整原始接收窗口的下限值,得到当前接收窗口的下限值具体包括:
设置所述预设重排序窗口的大小;
计算所述当前接收窗口的下限值,当前接收窗口的下限值=原始接收窗口的上限值与预设重排序窗口的大小之差的绝对值mod包序号的取值总量;所述原始接收窗口的上限值为当前已接收到的数据包的最大包序号加1。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述将包序号小于所述断点值的数据包递交给所述接收端的接收层之后,
如果所述当前接收窗口的下限值大于或等于重排序定时器状态变量,则控制正在运行的重排序定时器停止计时,所述重排序定时器状态变量为触发重排序定时器启动的数据包的包序号加1。
3.根据权利要求1所述的方法,其特征在于,所述设置所述预设重排序窗口的大小具体包括:
按照基站配置的接收窗口的大小设置所述预设重排序窗口的大小。
4.根据权利要求1所述的方法,其特征在于,所述设置所述预设重排序窗口的大小具体包括:
利用包序号的取值范围、配置使用的HARQ进程个数、单个HARQ进程一次传输的传输块个数以及HARQ进程的总传输次数计算所述预设重排序窗口的大小。
5.根据权利要求4所述的方法,其特征在于,所述计算所述预设重排序窗口的大小的方式具体为:
预设重排序窗口的大小=Min{包序号的取值总量/2,(配置使用的HARQ进程个数*单个HARQ进程一次传输的传输块个数-1)*HARQ进程的总传输次数+1}。
6.根据权利要求4所述的方法,其特征在于,所述设置所述预设重排序窗口的大小具体还包括:
还利用聚合的小区个数和每个HARQ进程的最大传输次数计算所述预设重排序窗口的大小。
7.根据权利要求6所述的方法,其特征在于,所述计算所述预设重排序窗口的大小的方式具体为:
预设重排序窗口的大小=Min{包序号的取值总量/2,(配置使用的HARQ进程个数*单个HARQ进程一次传输的传输块个数-1)*HARQ进程的总传输次数+1+Sum(其他载波的进程个数*每个进程的传输块个数*每个HARQ进程的最大传输次数)}。
8.一种数据传输装置,应用于无线链路控制层的非确认模式,其特征在于,所述装置包括:
下限值调整单元,用于利用预设重排序窗口大小调整原始接收窗口的下限值,得到当前接收窗口的下限值;所述原始接收窗口的下限值为接收端期望接收到的下一个数据包的包序号;
下限值比较单元,用于比较所述当前接收窗口的下限值与所述原始接收窗口的下限值,如果所述当前接收窗口的下限值大于所述原始接收窗口的下限值,则更新所述原始接收窗口的下限值为断点值;所述断点值为不小于所述当前接收窗口的下限值的第一个未接收到的数据包的包序号;
数据包发送单元,用于将包序号小于所述断点值的数据包递交给所述接收端的接收层;
其中,所述下限值调整单元具体包括:
窗口设置单元,用于设置所述预设重排序窗口的大小;
计算单元,用于计算所述当前接收窗口的下限值,当前接收窗口的下限值=原始接收窗口的上限值与预设重排序窗口的大小之差的绝对值mod包序号的取值总量;所述原始接收窗口的上限值为当前已接收到的数据包的最大包序号加1。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
停止计时判断单元,用于如果所述当前接收窗口的下限值大于或等于重排序定时器状态变量,则控制正在运行的重排序定时器停止计时,所述重排序定时器状态变量为触发重排序定时器启动的数据包的包序号加1。
10.根据权利要求8所述的装置,其特征在于,所述窗口设置单元按照以下方式设置所述预设重排序窗口的大小:
所述窗口设置单元具体按照基站配置的接收窗口的大小设置所述预设重排序窗口的大小。
11.根据权利要求8所述的装置,其特征在于,所述窗口设置单元按照以下公式设置所述预设重排序窗口的大小:
预设重排序窗口的大小=Min{包序号的取值总量/2,(配置使用的HARQ进程个数*单个HARQ进程一次传输的传输块个数-1)*HARQ进程的总传输次数+1}。
12.根据权利要求11所述的装置,其特征在于,所述窗口设置单元按照以下公式设置所述预设重排序窗口的大小:
预设重排序窗口的大小=Min{包序号的取值总量/2,(配置使用的HARQ进程个数*单个HARQ进程一次传输的传输块个数-1)*HARQ进程的总传输次数+1+Sum(其他载波的进程个数*每个进程的传输块个数*每个HARQ进程的最大传输次数)}。
13.一种数据传输***,其特征在于,所述***包括如权利要求8至12任一项所述的数据传输装置以及向所述数据传输装置发送数据包的数据发送端。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210173623.XA CN103457707B (zh) | 2012-05-30 | 2012-05-30 | 一种数据传输方法、装置及*** |
PCT/CN2013/076274 WO2013178044A1 (zh) | 2012-05-30 | 2013-05-27 | 一种数据传输方法、装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210173623.XA CN103457707B (zh) | 2012-05-30 | 2012-05-30 | 一种数据传输方法、装置及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103457707A CN103457707A (zh) | 2013-12-18 |
CN103457707B true CN103457707B (zh) | 2016-12-14 |
Family
ID=49672416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210173623.XA Active CN103457707B (zh) | 2012-05-30 | 2012-05-30 | 一种数据传输方法、装置及*** |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103457707B (zh) |
WO (1) | WO2013178044A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105376173B (zh) * | 2014-09-02 | 2020-04-28 | 中兴通讯股份有限公司 | 一种发送窗口流量控制方法和终端 |
WO2018227511A1 (zh) * | 2017-06-15 | 2018-12-20 | Oppo广东移动通信有限公司 | 数据传输方法及相关产品 |
CN108401479B (zh) * | 2017-07-10 | 2021-08-24 | 北京小米移动软件有限公司 | 数据传输方法及装置、接收端设备和发送端设备 |
CN110366258B (zh) * | 2018-04-09 | 2021-08-31 | 华为技术有限公司 | 一种数据传输的方法、相关设备及通信*** |
CN111758230B (zh) * | 2018-07-27 | 2022-02-08 | 华为技术有限公司 | 信号传输的方法和装置 |
CN111835457B (zh) * | 2019-08-09 | 2022-04-26 | 维沃移动通信有限公司 | 一种数据传输方法、接收设备及发送设备 |
CN112068997B (zh) * | 2020-09-09 | 2023-12-19 | 恒生电子股份有限公司 | 数据备份方法、装置、设备及存储介质 |
WO2023097180A1 (en) * | 2021-11-23 | 2023-06-01 | Qualcomm Incorporated | Modifying modem timers based on jitter timing associated with an application |
CN114443095A (zh) * | 2022-01-21 | 2022-05-06 | 佛山市钒音科技有限公司 | 空调器升级方法、空调器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529437A (zh) * | 2003-10-17 | 2004-09-15 | 中兴通讯股份有限公司 | Wcdma***无线网络控制层的流量控制方法 |
CN1951052A (zh) * | 2004-04-19 | 2007-04-18 | Lg电子株式会社 | 用于增强um rlc数据处理的装置和方法 |
CN101388826A (zh) * | 2007-09-10 | 2009-03-18 | 鼎桥通信技术有限公司 | 一种发送重排缓存区信息的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7542443B2 (en) * | 2005-02-15 | 2009-06-02 | Telefonaktiebolaget L M Ericsson (Publ) | Receive window updates in communication systems |
-
2012
- 2012-05-30 CN CN201210173623.XA patent/CN103457707B/zh active Active
-
2013
- 2013-05-27 WO PCT/CN2013/076274 patent/WO2013178044A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529437A (zh) * | 2003-10-17 | 2004-09-15 | 中兴通讯股份有限公司 | Wcdma***无线网络控制层的流量控制方法 |
CN1951052A (zh) * | 2004-04-19 | 2007-04-18 | Lg电子株式会社 | 用于增强um rlc数据处理的装置和方法 |
CN101388826A (zh) * | 2007-09-10 | 2009-03-18 | 鼎桥通信技术有限公司 | 一种发送重排缓存区信息的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103457707A (zh) | 2013-12-18 |
WO2013178044A1 (zh) | 2013-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103457707B (zh) | 一种数据传输方法、装置及*** | |
CN108541360B (zh) | 通信*** | |
KR100474302B1 (ko) | 무선 링크 콘트롤(rlc) 계층의 버퍼제어 방법 | |
US9497779B2 (en) | Enhanced polling method for preventing deadlock in a wireless communications system | |
US10959128B2 (en) | Bluetooth low energy connected isochronous stream acknowledgement and flush algorithm and implementation | |
EP2045950A2 (en) | Method and apparatus for triggering a poll function in a wireless communications system | |
US20070266292A1 (en) | Method and apparatus for reduced data block transmission in an automatic repeat request system | |
US20120155438A1 (en) | Method of reordering and reassembling packet data in radio link control layer | |
US20160366008A1 (en) | Data retransmission method and apparatus | |
CN106171004B (zh) | 一种rlc数据包分流方法及基站 | |
JP2001516177A (ja) | マルチチャネル自動再送信照会(arq)方法 | |
CN102868504A (zh) | 一种发送状态报告的方法和rlc接收实体 | |
JP2005260375A (ja) | 移動通信システム、移動端末及びネットワーク側対向装置 | |
EP2923514A1 (en) | Method and system for improving wireless link efficiency | |
US20100122136A1 (en) | Method and apparatus for reduced data block transmission in an automatic repeat request system | |
US8738984B2 (en) | Apparatus for processing retransmission failure in radio link control (RLC) layer | |
CN104780028A (zh) | 一种实现tcp数据报文重传的方法及设备 | |
KR20090122962A (ko) | 재송요구 송신방법 및 수신측 장치 | |
CN102111257A (zh) | 一种时间提前量的调整方法及*** | |
KR101673183B1 (ko) | 무선통신시스템에서 타이머 보상을 통한 데이터 관리방법 및 장치 | |
JP5002596B2 (ja) | 通信装置及びシステムを動作させる方法、通信装置並びに斯かる装置を含むシステム。 | |
KR100972166B1 (ko) | 무선통신 시스템에서의 프로토콜데이터유닛 순서정렬 방법 및 이를 수행하는 단말 | |
CN101944984A (zh) | 一种协议数据单元的传输方法及*** | |
CN104981999B (zh) | 一种数据处理方法、通信设备和*** | |
CN107801200B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |