发明内容
为了解决上述技术问题,本发明的目的在于提供一种基于数据重传机制的数据传输方法,该方法对无线信道特性变化具有较高的适应性,并提高传输效率。
为解决上述技术问题,本发明的目的是通过以下技术方案实现的。
一种基于重传机制的数据传输方法,利用两层重传控制单元进行数据传输的控制,包括:发送端上层重传控制单元依据确定的大小对业务数据单元进行划分,生成基本传输单元;发送端上层重传控制单元生成Upper ARQ协议数据单元,包括基本传输单元和头标识,所述头标识包括所述基本传输单元的序列号;发送端下层重传控制单元将至少一个Upper ARQ协议数据单元中的基本传输单元串接生成数据串接块,并根据所述Upper ARQ协议数据单元头标识生成数据串接块头标识;发送端下层重传控制单元生成HARQ协议数据单元,并进一步发送给接收端,所述的HARQ协议数据单元包括至少一个数据串接块和至少一个数据串接块头标识。上述方法中,所述头标识中进一步标识当前基本传输单元是否为所属业务数据单元划分出的最后一个基本传输单元。对于业务数据单元所划分出的最后一个基本传输单元,若该基本传输单元由业务数据以及填充数据组成,则进一步在头标识中标识填充数据量。
在上述方法基础上,对于前后连续且属于同一个业务数据单元的Upper ARQ协议数据单元,发送端下层重传控制单元将其中的基本传输单元串接生成数据串接块,并合并所述Upper ARQ协议数据单元头标识形成数据串接块头标识,所述数据串接块头标识包括数据串接块中第一个基本传输单元序列号以及该数据串接块中传输单元数量。
上述方法基础上,依据信道特征,发送端调整基本传输单元大小,并通知接收端。进一步,结合业务数据单元数据量的大小,调整所述基本传输单元的大小,以降低基本传输单元中的填充数据量;依据基本传输单元串接过程中的头标识开销调整所述基本传输单元的大小。
上述方法基础上,依据信道特征,发送端调整HARQ协议数据单元中可 串接的基本传输单元数量。
上述方法基础上,生成所述数据串接块后,发送端进一步将至少两个数据串接块进行串接。进而生成的HARQ协议数据单元包括以下三种格式:
1)数据串接块与该数据串接块的头标识构成数据串接单元,将各数据串接单元顺序进行串接。
2)各数据串接块的头标识组成头标识集置于所述协议数据单元前部,数据串接块串接后置于头标识集后;头标识中进一步包括扩展域用于区分当前头标识后串接的为头标识或数据串接块。
3)各数据串接块的头标识组成头标识集置于所述协议数据单元前部,数据串接块串接后置于头标识集后;头标识集中包括标识N,用于表示当前头标识集中的数据串接块数量。并且,基于数据长度的限制,当所述N达到最大值时,将至少两个相邻数据串接块中的基本传输单元进一步进行串接生成新的数据串接块,以使在N值的范围内提高HARQ协议数据单元中的基本传输单元数量。
上述方法中,若两个待传数据串接块属于同一个业务数据单元且不连续,判断该两个数据串接块间基本传输单元数据比特数与分别表示该两数据串接块所需头标识数据比特数大小,对于所述前者小于后者的情况,将两个数据串接块中的基本传输单元与所述两数据串接块间的基本传输单元顺序串接,生成新的数据串接块。
以上技术方案可以看出,本发明将业务数据单元划分为基本传输单元,因而本发明ARQ层只针对接收失败的基本传输单元进行重传,而不用对整个业务数据单元进行重传,使得ARQ重传数据量减少,从而提高了传输通道的利用率,使数据传输效率更高;并且,通过改变所述基本传输单元的大小还可以使本发明的数据传输更加适应无线传输信道特性的变化。
在上述基础上,生成HARQ协议数据单元时,将符合串接条件的基本传输单元串接为数据串接块,并加入数据串接块的头标识,该步骤省去了基本传输单元的头标识,因而减小了协议数据单元的头标识数据开销,提高了无线传输效率;并且,基于HARQ协议数据单元的生成机制,数据接收端不用进行对应于数据发送端对基本传输单元串接的分割,而可直接将整个数据串接块提取出来保存即可,进而基于数据串接块进行业务数据单元的还原;进一步,由于本发明ARQ层基于基本传输单元对业务数据单元进行划分,因而使数据发送端对数据串接块的串接方式更加灵活,为依据无线传输条件的变化决定当前传输数据量提供了可能,因而本发明更易适应数据发送、重传时根据无线传输信道特性的变化。
具体实施方式
本发明提供了一种基于数据重传机制的数据传输方法。该方法为一种ARQ辅助HARQ进行数据重传的技术,其核心思想在于:UpperARQ按基本传输单元对业务数据单元进行划分,以实现在数据发送、重传环节,为了适应的无线传输信道特性所进行的对基本传输单元的串接;在进行HARQ的成帧时将ARQ PDU帧头进行合并,以减小帧头开销;接收端HARQ不用进行对应于发送端基本传输单元串接的分割,而是将整个数据串接块提取进行保存;ARQ只针对接收失败的基本传输单元进行重传,而不用对整个SDU进行重传。
依据上诉核心思想,本发明实现的核心在于:发送端上层重传控制单元依据确定的大小对业务数据单元进行划分,生成基本传输单元;发送端上层重传控制单元生成Upper ARQ协议数据单元,包括基本传输单元和头标识,所述头标识包括所述基本传输单元的序列号;对于前后连续且属于同一个业务数据单元的Upper ARQ协议数据单元,发送端下层重传控制单元将其中的基本传输单元串接生成数据串接块,并合并所述Upper ARQ协议数据单元头标识形成数据串接块头标识,所述数据串接块头标识包括数据串接块中第一个基本传输单元序列号以及该数据串接块中传输单元数量;发送端下层重传控制单元生成HARQ协议数据单元,并进一步发送给接收端,所述的HARQ协议数据单元包括至少一个数据串接块和至少一个数据串接块头标识。
本发明提出基本传输单元的概念,所述基本传输单元是HARQ层进行传输及重传时,进行串接操作的最小单元,它的长度可根据无线信道的特征、HARQ的串接状况,以及填充比特等参数的情况进行调整。以下基于基本传输单元的概念具体说明本发明的较佳实现方式。
图5所示为本发明方法所确定的双层ARQ结构示意图。如图所示,本发 明数据发送端的操作步骤包括:ARQ分段,具体的,将业务数据单元SDU进行分割,依据信道特性将SDU划分为基本传输单元;进而,所述基本传输单元与Upper ARQ Header组成Upper ARQ PDU,所述Upper ARQ PDU被顺序保存在缓存中;依据信道特征进行HARQ的串接生成数据串接块,具体的,将UpperARQ PDU依据预置的原则进行合并,并进行UpperARQ PDU帧头的合并,HARQ串接过程中的数据作为参数进一步反馈到ARQ的分段步骤作为调整所述基本传输单元大小的又一依据;进而,所述数据串接块与HARQHeader组成HARQ,并进行发送。
由图5可知,在数据发送端主要包括ARQ层将SDU划分为基本传输单元,以及HARQ层将所述基本传输单元进行串接的操作。以下对所述两步骤的操作进行具体说明。
1)ARQ层对业务数据单元进行分段,生成Upper ARQ PDU。
ARQ将某一业务数据流的业务数据单元(SDU)分割成基本传输单元,并加上Upper ARQ Header生成Upper ARQ PDU,所述Upper ARQ Header包括所述基本传输单元的分段序列号(SN)、分段标识、填充量(如需要)、填充等。
Upper ARQ PDU结构如下所示:
分段序列号(SN) |
分段标识 |
填充量 |
传输数据 |
填充 |
其中:
分段序列号(SN):Upper ARQ所加的循环序列号,用于接收端进行数据重组的依据;
分段标识:含义如下表,
分段标识 |
含义 |
填充量 |
填充 |
0 |
当前基本传输单元不是SDU的最后分段 |
无 |
无 |
1 |
当前基本传输单元是SDU的最后分段 |
有 |
有 |
若分段标识为“0”,则表示当前的基本传输单元不是SDU的最后一个分段。并且表示无“填充量”与“填充”两个域;
若分段标识为“1”,则表示当前的基本传输单元是SDU的最后一个分段。并且有“填充量”与“填充”两域;同时还表示下一个基本传输单元是下一个SDU的第一分段;
填充量:标识基本传输单元后部所填充数据的大小(比特数或字节数);
填充:实际填充数据(比特或字节);
传输数据:是SDU一个分段的实际数据,当分段标识为“0”时,其长度即是“基本传输单元”;当分段标识为“1”时,它是SDU最后一个分段的数据,传输数据与填充共同构成所述基本传输单元。
按照上述方法生成Upper ARQ PDU后,将Upper ARQ PDU在顺序缓冲(Buffer)中根据所述分段序列号(SN)排列。在Upper ARQ PDU中SDU间不进行串接。在Upper ARQ层,将SDU进行基本传输单元分段时,可根据无线信道的特性等参数改变基本传输单元的大小。例如,当无线传输信道条件较差时可减小所述基本传输单元的长度,当无线传输信道条件改善时增大基本传输单元长度;所述传输信道条件可采用传输信噪比、误块率等反映当前传输信道质量的参数,本发明中并不对所调整基本传输单元大小所依据的参数以及调整机制进行限定。同一数据串接块中可串接大小不同的基本传输单元,只要在需要改变基本传输单元大小时,数据发送端告知数据接收端调整后基本传输单元的大小及开始的分段序列号SN即可。
依据上述方法,所述基本传输单元的大小可被调整,因此当业务数据单元 SDU大于所述基本传输单元时,则对SDU划分生成至少两个基本传输单元;如果业务数据单元SDU小于基本传输单元,则加入填充数据构成一个基本传输单元。
依据上述方法生成Upper ARQ PDU后,无线传输过程中将基于基本传输单元实现数据重传。
2)HARQ层进行串接操作;即HARQ层通过串接不同数量的Upper ARQPDU来适应实时的信道特性的变化。
HARQ进行ARQ PDU串接时,对于SN连续且属于同一业务数据单元(SDU)的基本传输单元所组成的Upper ARQ PDU,将其中的基本传输单元串接构成数据串接块,并且将每一UpperARQ PDU的帧头去掉,在HARQ PDU中对串接为同一数据串接块的Upper ARQ PDU的头标识进行合并统一表示为数据串接块头标识,以减小HARQ帧头开销;对于不同SDU的分段,不能串接在同一个数据串接块中。
具体的,HARQ根据当前的信道条件从Buffer中顺序取出一定数量的Upper ARQ PDU按照上述方法组成HARQ PDU。图6示出了HARQ PDU中只包含一个数据串接块的HARQ PDU结构;该图表示出从第SN序列号开始,m个UpperARQ PDU进行串接,并且包含SDU最后一个分段的情况,其中T用于标识该数据串接块中最后一个基本传输单元是否为所属SDU的最后一个分段,P用于标识所述最后一个基本传输单元所填充数据的大小。
如上文所述,HARQ串接过程中的数据可作为参数进一步反馈到ARQ分段步骤,作为除信道特性之外调整所述基本传输单元大小的又一依据。具体包括:依据SDU的大小,根据预定的机制适当调整基本传输单元的长度,使得在对SDU进行分割过程中,尽量减小最后一个基本传输单元中的数据填充量,以提高无线传输效率;或/和,在确定基本传输单元大小时可进一步考虑对这些基本传输单元串接后生成HARQ PDU中的数据串接块头标识的开销,即如 果基本传输单元长度过小,则需要较多的头标识开销,因此,在满足其他条件的前提下应避免所述传输单元长度过小。
由于无线信道的变化及多进程传输等原因,在进行数据传输、重传时,会出现分段序列号不连续的情况,以及要传输的UpperARQ PDU属于不同SDU的情况,进而形成多个不同的数据串接块。上文对数据串接块的生成以及包含一个数据串接块的HARQ PDU的结构进行了说明,在此基础上,在HARQ PDU中可进一步将多个数据串接块进行串接,以提高无线传输效率。
并且,在本步骤中,依据信道特征,数据发送端进一步调整HARQ协议数据单元中可串接的基本传输单元数量,即相应的,使一个数据串接块中所串接的基本传输单元数量或/和一个HARQ协议数据单元中数据串接块的数量将被调整。
根据串接、组成HARQ PDU所加数据块头标识方式的不同,以下提供3种不同的HARQ PDU结构。
图7为包含多个数据串接块的HARQ PDU第一结构示意图;其中:
SNi:HARQ PDU的第i个数据串接块中,第一个基本传输单元的分段序列号;
mi:标识HARQ PDU的第i个数据串接块中所串接的基本传输单元的数量;
分段标识Ti:第i个数据串接块串接时,标识串接的最后一个基本传输单元是否为所属SDU的最后一个分段,即其取值与串接的最后一个ARQ PDU的分段标识相同;
Ti |
含义 |
Pi |
0 |
串接的最后一个基本传输单元不是本SDU的最后一个分段 |
无 |
1 |
串接的最后一个基本传输单元是本SDU的最后一个分段 |
有 |
若分段标识Ti为“0”,则表示当前的数据串接块所串接的最后一个基本传输单元不是SDU的最后一个分段,进而表明无Pi域;
若分段标识Ti为“1”,则表示当前的数据串接块所串接的最后一个基本传输单元是SDU的最后一个分段,进而表明有Pi域;同时还表示下一个基本传输单元是下一个SDU的第一分段;
Pi:标识第i个数据串接块中,串接的最后一个基本传输单元所填充数据的大小,即其取值与串接的最后一个ARQ PDU的填充量相同;
DATAi:将mi个基本传输单元串接后的实际数据,若串接的最后一个基本传输单元中有填充,则DATAi不包括所述填充的数据。
图8为包含多个数据串接块的HARQ PDU第二结构示意图;其中:
SNi:HARQ PDU的第i个数据串接块中,第一个基本传输单元的分段序列号;
mi:标识HARQ PDU的第i个数据串接块中所串接的基本传输单元的数量;
分段标识Ti:第i个数据串接块串接时,标识串接的最后一个基本传输单元是否为所属SDU的最后一个分段,即其取值与串接的最后一个ARQ PDU的分段标识相同;
Pi:标识第i个数据串接块中,串接的最后一个基本传输单元所填充数据的大小,即其取值与串接的最后一个UpperARQ PDU的填充量相同;
DATAi:是将第一种结构中所有的数据都串接在一起的实际数据,若串接的最后一个基本传输单元中有填充,则DATAi不包括所述填充的数据;
Ei:表示当前数据串接块头标识后面的内容为数据,或者为另一数据串接块的头标识,定义如下:
Ei |
含义 |
0 |
后面的内容是数据域 |
1 |
后面的内容是另一“连续串接块”的头标识 |
图8所示的结构是将图7所示结构中所有数据串接块的头标识放在HARQPDU前部,在每一个数据串接块的头标识中增加一个扩展域(E域)用于标识当前头标识后所接的数据内容。
图9为包含多个数据串接块的HARQ PDU第三结构示意图;其中:
SNi:HARQ PDU的第i个数据串接块中,第一个基本传输单元的分段序列号;
mi:标识HARQ PDU的第i个数据串接块中所串接的基本传输单元的数量;
分段标识Ti:第i个数据串接块串接时,标识串接的最后一个基本传输单元是否为所属SDU的最后一个分段,即其取值与串接的最后一个ARQ PDU的分段标识相同;
Pi:标识第i个数据串接块中,串接的最后一个基本传输单元所填充数据的大小,即其取值与串接的最后一个ARQ PDU的填充量相同;
DATAi:是将第一种结构中所有的数据都串接在一起的实际数据,若串接的最后一个基本传输单元中有填充,则DATAi不包括所述填充的数据;
N:在所述数据块头标识之外,HARQ PDU中进一步包括N域的标识,用于表示当前HARQ PDU中数据串接块的数量。
图9所示的结构是将图7所示结构中所有数据串接块的头标识组成头标识集放在HARQ PDU前部,并通过标识N表明当前HARQ PDU中数据串接块 的数量。
以上介绍了三种HARQ PDU的数据结构。在进行数据串接时,若基于数据长度的限制,当图9所示HARQ PDU结构中的N达到最大值时(即HARQPDU帧头的表示能力已到最大),但HARQ PDU的数据域仍有空间可传输更多数据时,在至少两个相邻数据串接块中插入缺少的基本传输单元(这些基本传输单元属于同一SDU)进行串接生成新的数据串接块,并依据新生成的数据串接块更新头标识,以使在N值的范围内提高HARQ协议数据单元中的基本传输单元数量。
除此之外,若两个待传数据串接块属于同一个业务数据单元且不连续,判断该两个数据串接块间基本传输单元数据比特数与分别表示该两数据串接块所需头标识数据比特数大小,对于所述前者小于后者的情况,将两个数据串接块中的基本传输单元与所述两数据块间的基本传输单元顺序串接,生成新的数据串接块。即,若两个数据串接块之间基本传输单元的数据比特数小于因将两个数据串接块分别表示所加帧头的比特数;且这两个数据串接块属于同一个SDU,则将两个数据串接块和它们之间的所有基本传输单元串接生成新的数据串接块,以提高传输效率。图10所示为HARQ PDU中某两个数据串接块串接结构示意图,图11所示为在上述两种情况下对该两个数据串接块串接示意图。如图,设基本传输单元属于相同的SDU且由于基本传输单元的SN不连续导致生成如图10所示的两个数据串接块,图11示出的数据串接块包含了图10两数据串接块中以及他们之间的所有基本传输单元(包括填充数据),即DATA1+......+DATA2+PDATA2,并且,在头标识中更新数据串接块中基本传输单元数量,即SN2-SN1+m2表示图10两数据串接块已包含的以及生成新数据串接块时插入的所有基本传输单元数量。
以上具体说明了本发明中数据发送端的操作步骤,相应的以下说明本方法 中数据接收端的操作步骤。
数据接收端HARQ层对接收成功的HARQ PDU,根据数据串接块头标识解析出数据串接块;并且,HARQ不再将数据串接块分割还原成所述基本传输单元,而是基于整个数据串接块的数据进行处理。对应于上文提供的数据发送端HARQ的三种不同的HARQ PDU结构,数据接收端HARQ层也有3种不同的解析法:
针对图7所示的HARQ PDU结构,数据接收端按顺序先读出第1数据串接块的头标识,根据SN1、m1、T1、P1(若需要该域存在)4个参数提取出随后的数据DATA,数据长度=基本传输单元长度*m1-P1;读取第2数据串接块的头标识,按照上述方法取出第2数据串接块中的数据DATA,直到将HARQ PDU的数据全部取出为止。
针对图8所示的HARQ PDU结构,数据接收端首先读出第1数据串接块头标识,根据E1的标识判断其后是数据DATA或是头标识,若是第2数据串接块的头标识,则读出并根据E2继续判断,直到将所有数据串接块的头标识读出,并保存各数据串接块头标识中的SN1、m1、T1、P1(若需要该域存在)4个参数;进而,依据所述头标识提取第i个数据串接块中的数据,数据的长度=基本传输单元长度*mi-Pi,直到将所有数据串接块的数据取出为止。
针对图9所示的HARQ PDU结构,数据接收端首先读取第1个参数N,根据N的数值,将N个数据串接块的头标识读出,并保存各数据串接块头标识中的SN1、m1、T1、P1(若需要该域存在)4个参数;进而,提取第i个数据串接块的数据,数据的长度=基本传输单元长度*mi-Pi,直到将所有数据串接块的数据取出为止。
依据以上所述的方法获取HARQ PDU中的数据串接块后,数据接收端 UpperARQ层进一步根据数据串接块的首分段序列号(SN)、串接基本传输单元数(m)、分段标识(T)三个标识参数,将各数据串接块进行串接,并判断SDU的头与尾,以提取SDU。
若在无线传输中出现数据块传输失败的情况,数据接收端依据ARQ协议的重传机制请求数据发送端重传接收失败的基本传输单元。
在数据发送端,对传输失败的基本传输单元,HARQ层将它们与未传输的基本传输单元同样对待,根据无线传输信道特性取出一定数量的基本传输单元串接成数据串接块组成HARQ PDU进行重传,而不必对重传的基本传输单元进行标识。该方法使本发明的数据传输过程更加简单易行,而并非本发明的核心或必不可少的技术特征。
以上对本发明所提供的一种基于数据重传机制的数据传输方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。