CN103501214A - 基于位图反馈的h-arqi型链路传输方法 - Google Patents
基于位图反馈的h-arqi型链路传输方法 Download PDFInfo
- Publication number
- CN103501214A CN103501214A CN201310396553.9A CN201310396553A CN103501214A CN 103501214 A CN103501214 A CN 103501214A CN 201310396553 A CN201310396553 A CN 201310396553A CN 103501214 A CN103501214 A CN 103501214A
- Authority
- CN
- China
- Prior art keywords
- frame
- data
- transmission
- pipeline
- feedback
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 156
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000009432 framing Methods 0.000 claims abstract description 45
- 238000004891 communication Methods 0.000 claims abstract description 20
- 230000003139 buffering effect Effects 0.000 claims description 41
- 230000008859 change Effects 0.000 claims description 25
- 230000003044 adaptive effect Effects 0.000 claims description 18
- 238000012937 correction Methods 0.000 claims description 4
- 238000012546 transfer Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 3
- 238000005538 encapsulation Methods 0.000 claims description 3
- 230000005577 local transmission Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013016 damping Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Detection And Prevention Of Errors In Transmission (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于位图反馈的H-ARQI型链路传输方法,在链路层上,发送端包括环形缓冲区、并行发送缓冲区和组帧模块;接收端包括接收暂存区和并行接收缓冲区,发送端将上层网口输出的信息注入环形缓冲区,环形缓冲区将数据以数据包格式平铺在并行发送缓冲区的L个管道中;接收端的接收暂存区亦由L个管道组成,在接收端,若传输帧内的信息经信道译码和CRC校验无误,则将数据向上传输给并行接收缓冲区对应的管道,否则重传该传输帧;上述并行接收缓冲区将数据传输给上层网口。本方法可以提高系统的吞吐率,满足利用突发信道完成高效通信。
Description
技术领域
本发明涉及无线通信技术领域,具体地,涉及一种基于位图反馈的H-ARQI型链路传输方法。
背景技术
流星余迹通信(MBC)利用流星电离余迹对VHF无线电波的反射和散射作用来进行通信。该通信方式具有保密性好、抗干扰能力强、覆盖范围大、通信稳定性好、设备成本和维护费用低等优点。然而,突发通信是间歇性的,非实时的,在突发通信下流星余迹通信的数据通过率不高。
现阶段突发通信系统链路层主要采用混合自动请求重传技术(H-ARQI型)。H-ARQI型是由前向差错控制技术(FEC)与自动请求重传技术(ARQ)结合而来,可实现比纯FEC高的多的可靠性和比纯ARQ更高的通过率。为使系统吞吐量最大,FEC方法的选取尤为重要。现有技术中加入RS码的方法比较普遍,也在系统的吞吐量上有了一定改进。然而随着如LDPC码(低密度冗余校验码)等信道编码的进一步发展,流星余迹通信系统更高更好的完善。
公开号CN102223220A 专利名称为“基于位图反馈的突发通信链路层传输方法”,中提出了一种基于位图反馈的突发通信链路层传输方法,其步骤是:(1)系统初始化;(2)判断是否收到帧;(3)判断类型;(4)判断反馈是否超时;(5)丢弃反馈帧;(6)调整发送管道水平面;(7)重置发送缓冲区;(8)判断反馈帧是否全部丢失;(9)更改反馈帧状态标志;(10)构造传输帧;(11)判断是否可发送传输帧;(12)将传输帧送往物理层;(13)处理传输帧;(14)判断接收缓冲区状态;(15)更改反馈帧中CRC差错校验结果;(16)判断是否有数据可交给下层协议;(17)将可提交数据垂直注入给接收缓冲区;(18)判断是否可发送反馈帧;(19)发送反馈帧。该专利文件公开的技术方案的不足是:通信系统中没有加入信道编码,在信噪比较低时,帧的重传率较高,吞吐量受到限制。此外,其自适应变速门限是由接收端暂存区数据量来决定,忽视了流星突发信道恶化对传输速率的限制,在信道较差的情况下极易引起重传次数增多。
发明内容
本发明的目的在于,针对上述问题,提出一种基于位图反馈的H-ARQI型链路传输方法,以实现提高系统的吞吐率,满足利用突发信道完成高效通信的优点。
为实现上述目的,本发明采用的技术方案是:
一种基于位图反馈的H-ARQI型链路传输方法,在链路层上,发送端包括环形缓冲区、并行发送缓冲区和组帧模块;接收端包括接收暂存区和并行接收缓冲区;
所述发送端将上层网口输出的信息注入环形缓冲区,环形缓冲区将数据以数据包格式平铺在并行发送缓冲区的L个管道中,所述组帧模块中存在L个传输帧,且并行发送缓冲区中的管道与组帧模块中的传输帧一一对应,每个管道和对应的传输帧均采用同样的数字进行编号;
在上述组帧模块中,每个传输帧根据接收暂存区反馈帧的反馈信息决定此时的编码速率和编码方式,并对上述数据包进行CRC编码和对每个传输帧进行信道编码,并将处理后的传输帧依次发送;
所述接收端的接收暂存区亦由L个管道组成,且采用与上述传输帧对应的数字进行编号,接收暂存区的管道接收同数字编号的传输帧,若传输帧内的信息经信道译码和CRC校验无误,则将数据向上传输给并行接收缓冲区对应的管道,否则重传该传输帧;
上述接收缓冲区将数据传输给上层网口。
根据本发明的优选实施例,
所述发送端发送传输帧包括以下步骤:
(1)发送端初始化:对环形缓冲区、并行发送缓冲区中的L个管道和组帧模块开辟数据空间;
(2)环形缓冲区接收上层网口数据:环形缓冲区三个指针分别为指向缓冲区首地址的指针、用于往环形缓冲区放数据的指针以及从环形缓冲区取走数据的指针;
(3)将从上述步骤2中环形缓冲区接收的数据以数据包格式平铺于并行发送缓冲区中的L个管道:环形缓冲区以先进先出的队列将数据包依次平铺于并行发送缓冲区的L个管道;
(4)各管道向组帧模块中的各传输帧输入x个包:组帧模块中亦有L个待组帧与并行发送缓冲区中的管道一一对应,此时每帧携带的数据量为x包,经组帧模块组帧后形成传输帧;
(5)对数据包进行CRC编码:分别对L个传输帧中的x个包独立进行CRC编码;
(6) 检查本地保存的发送变速指示信息,选择管道传输的编码模式、信息包个数,并对管道中的数据帧即传输帧进行信道编码:对上述步骤5中经过CRC编码后的传输帧中的x个包进行信道编码,根据信道编码模式,封装相应数量的信息包,从而保证最优的吞吐量;
(7)加帧头完成组帧:对上述步骤6完成信道编码的数据帧,增加2字节的帧头,该2字节的帧头包含速率信息、帧标志位和帧号;
(8)判断是否允许发送经过步骤7组帧后的数据帧:若当前信道状态允许发送,则发送,否则等待,并再次尝试;
(9)若上述步骤8中发送数据帧,则发送数据帧并打开计时器:当该数据帧发送后,打开计时器以等待应答帧;
(10)是否收到反馈帧即上述步骤9中的应答帧:发送端等待接收端发来的反馈帧,如收到反馈帧转步骤11,否则转步骤12;
(11)判断收到反馈帧时定时器是否溢出:若溢出则判定为该反馈帧不准确,转步骤12,否则转步骤13;
(12)丢弃该反馈帧,重传对应数据帧:通过该反馈帧得知接收端收到的数据帧有误,重传该帧,转步骤8;
(13)若该反馈帧为ACK,则说明该帧被发送成功,转步骤14,否则转步骤12;
(14)提取反馈帧中的变速信息;
(15)清除发送缓冲区发送成功的数据包;
(16)修改发送状态标识位。
根据本发明的优选实施例,
所述接收端接收传输帧包括以下步骤:
(1)接收端初始化:为接收端的接收暂存区的L个管道、接收缓冲区的L个管道保留足够空间等待接收信息;
(2)检测是否收到来自上述发送端的传输帧,如接收到传输帧转步骤3,否则继续检测直到接收到传输帧;
(3)将接收的传输帧对应放入接受暂存区的管道中:接收端将收到的L个传输帧按顺序依次放入接受暂存区中的L个管道中;并判断传输帧的标志位与接收端标志位是否相等,如相等,说明该传输帧为接收端预定接收到的传输帧,转步骤4,否则该传输帧为重复帧,转步骤7;
(4)对接收的传输帧进行信道译码:而当信道信噪比较大,达到一定门限时,信息是无编码的,则不需要进行信道译码;
(5)对传输帧中的x个数据包分别进行CRC校验:此时每个传输帧中共有x个数据包,对每个数据包进行CRC校验,检验数据是否有错;
(6)检验传输帧中的数据包的CRC校验是否出错,若出错说明信道编码未能纠正所有错误,则转步骤7,否则转步骤8;
(7)丢弃CRC校验出错的传输帧;
(8)判断接收缓冲区是否有管道溢出:若溢出,则说明接收缓冲区没有空间接收新的数据,则转步骤13,否则转步骤9;
(9)将接收的数据移到接收缓冲区中对应的管道:此时传入接收缓冲区的数据都是正确的,将其依次放入L个管道,该L个管道为相互独立的先进先出队列;
(10)判断接收缓冲区L个管道的数据水平线是否为0:由于同一水平线上的数据是编号连续的,故接收缓冲区一定要以水平线方向为顺序取包,再向上层传输,若水平线为0,则转步骤12,否则转步骤11;
(11)将水平线以下的数据向上层传输,将接收缓存区中水平线以下的数据按层依次取出传给上层,并将各管道的数据下移;
(12)组建反馈帧并发送,组建反馈帧时,若数据帧成功接收,则发送ACK,否则发送NAK,同时,根据本端检测到的接收信噪比信息和误码率门限列表,选择发送管道下次传输的编码模式、信息速率;给出变速指示,并加入反馈帧中。
(13)强行改变CRC结果,从而重新发送数据帧。
根据本发明的优选实施例,所述步骤4中数据包数的选取是自适应的,即在速率等级为1时,包数5,速率等级为2时,包数为4,速率等级为3时,包数为3。
根据本发明的优选实施例,所述步骤5中包括对每一个数据包添加CRC校验位,使接收端可以检错,保证通信息系统的可靠性的步骤。
根据本发明的优选实施例,所述步骤6中采用自适应变速率信道编码,在速率等级为1时,采用无编码传输,速率等级为2时,采用RS(31,27)编码传输,速率等级为3时,采用LDPC(255,175)编码传输,在接收端的步骤4中数据帧采用与编码方式相应的方式进行信道译码,纠正部分因噪声引发的错误,减少数据帧的重传次数。
根据本发明的优选实施例,所述步骤14中从收到的反馈帧中可提取变速信息,通过变速信息实时更新速率等级,从而确定数据包数和编码方式。
本发明的技术方案具有以下有益效果:
本发明的技术方案,通过在发送端对信道进行编码,并在接收端相应进行解码,从而在一定程度上纠正了错误码字,尽可能地减少了帧重传次数,达到了提高系统吞吐率的目的,满足了利用突发信道完成高效通信。
而采用自适应变速率信道编码,避免了现有单一信道编码的缺点,在高信噪比下使用无编码方式,低信噪比下使用RS码和LDPC码,在整个传输过程中保证了系统具有较高的吞吐量、较低的误码率以及较低的帧重传率。
同时在选择码长时,在编码方式确定的条件下,基于与位图匹配的原则,为使码率相对最大,选择了码长为31的RS(31,27)码和码长为255的LDPC(255,175)码。因为31和255分别是RS和LDPC两种编码方式中,为数据包添加冗余比特最少的,从而节约资源,使吞吐量尽可能大。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明实施例一所述的基于位图反馈的H-ARQI型链路传输方法发送端工作流程图;
图2为本发明实施例一所述的基于位图反馈的H-ARQI型链路传输方法接收端工作流程图;
图3为本发明实施例一所述的基于位图反馈的H-ARQI型链路传输方法的原理框图;
图4a和图4b为本发明实施例一所述的基于位图反馈的H-ARQI型链路传输方法中并行接收缓冲区数据变化示意图;
图5为本发明实施例一所述的基于位图反馈的H-ARQI型链路传输方法中发送端信息处理的示意图;
图6为本发明实施例所述的基于位图反馈的H-ARQI型链路传输方法中三种编码方式在高斯信道下的误码率仿真图;
图7为基于本发明实施例所述的基于位图反馈的H-ARQI型链路传输方法的信息在流星余迹通信模型中3个小时的通过量随信噪比变化的示意图;
图8为基于本发明实施例所述的基于位图反馈的H-ARQI型链路传输方法的在流星余迹通信模型中3个小时的帧重传次数随信噪比的变化图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
实施例一:
如图3所示,一种基于位图反馈的H-ARQI型链路传输方法,在链路层上,发送端包括环形缓冲区、并行发送缓冲区和组帧模块;接收端包括接收暂存区和并行接收缓冲区;
发送端将上层网口输出的信息注入环形缓冲区,环形缓冲区将数据以数据包格式平铺在并行发送缓冲区的L个管道中,组帧模块中存在L个传输帧,且并行发送缓冲区中的管道与组帧模块中的传输帧一一对应,每个管道和对应的传输帧均采用同样的数字进行编号;
在组帧模块中,每个传输帧根据接收暂存区反馈帧的反馈信息决定此时的编码速率和编码方式,并对数据包进行CRC编码和对每个传输帧进行信道编码,并将处理后的传输帧依次发送;
接收端的接收暂存区亦由L个管道组成,且采用与传输帧对应的数字进行编号,接收暂存区的管道接收同数字编号的传输帧,若传输帧内的信息经信道译码和CRC校验无误,则将数据向上传输给并行接收缓冲区对应的管道,否则重传该传输帧;
接收缓冲区将数据传输给上层网口。
其中,如图1所示,发送端发送传输帧包括以下步骤:
(1)发送端初始化:对环形缓冲区、并行发送缓冲区中的L个管道和组帧模块开辟数据空间;
(2)环形缓冲区接收上层网口数据:环形缓冲区三个指针分别为指向缓冲区首地址的指针、用于往环形缓冲区放数据的指针以及从环形缓冲区取走数据的指针;
(3)将步骤2中环形缓冲区接收的数据以数据包格式平铺于并行发送缓冲区中的L个管道:环形缓冲区以先进先出的队列将数据包依次平铺于并行发送缓冲区的L个管道;
(4)各管道向组帧模块中的各传输帧输入x个包:组帧模块中亦有L个待组帧与并行发送缓冲区中的管道一一对应,此时每帧携带的数据量为x包,经组帧模块组帧后形成传输帧;
(5)对数据包进行CRC编码:分别对L个传输帧中的x个包独立进行CRC编码;
(6) 检查本地保存的发送变速指示信息,选择管道传输的编码模式、信息包个数,并对管道中的数据帧即传输帧进行信道编码:对上述步骤5中经过CRC编码后的传输帧中的x个包进行信道编码,根据信道编码模式,封装相应数量的信息包,从而保证最优的吞吐量;
(7)加帧头完成组帧:对上述步骤6完成信道编码的数据帧,增加2字节的帧头,该2字节的帧头包含速率信息、帧标志位和帧号;
(8)判断是否允许发送经过步骤7组帧后的数据帧:若当前信道状态允许发送,则发送,否则等待,并再次尝试;
(9)若步骤8中发送数据帧,则发送数据帧并打开计时器:当该数据帧发送后,打开计时器以等待应答帧;
(10)是否收到反馈帧即步骤9中的应答帧:发送端等待接收端发来的反馈帧,如收到反馈帧转步骤11,否则转步骤12;
(11)判断收到反馈帧时定时器是否溢出:若溢出则判定为该反馈帧不准确,转步骤12,否则转步骤13;
(12)丢弃该反馈帧,重传对应数据帧:通过该反馈帧得知接收端收到的数据帧有误,重传该帧,转步骤8;
(13)若该反馈帧为ACK,则说明该帧被发送成功,转步骤14,否则转步骤12;
(14)提取反馈帧中的变速信息;
(15)清除发送缓冲区发送成功的数据包;
(16)修改发送状态标识位。
其中步骤4中数据包数的选取是自适应的,即在速率等级为1时,包数5,速率等级为2时,包数为4,速率等级为3时,包数为3。步骤5中包括对每一个数据包添加CRC校验位,使接收端可以检错,保证通信系统的可靠性的步骤。步骤6中采用自适应变速率信道编码,在速率等级为1时,采用无编码传输,速率等级为2时,采用RS(31,27)编码传输,速率等级为3时,采用LDPC(255,175)编码传输,步骤14中从收到的反馈帧中可提取变速信息,通过变速信息实时更新速率等级,从而确定数据包数和编码方式。
发送端的信息处理过程如图5所示。
如图2所示,接收端接收传输帧包括以下步骤:
(1)接收端初始化:为接收端的接收暂存区的L个管道、接收缓冲区的L个管道保留足够空间等待接收信息;
(2)检测是否收到来自发送端的传输帧,如接收到传输帧转步骤3,否则继续检测直到接收到传输帧;
(3)将接收的传输帧对应放入接受暂存区的管道中:接收端将收到的L个传输帧按顺序依次放入接受暂存区中的L个管道中;并判断传输帧的标志位与接收端标志位是否相等,如相等,说明该传输帧为接收端预定接收到的传输帧,转步骤4,否则该传输帧为重复帧,转步骤7;
(4)对接收的传输帧进行信道译码:而当信道信噪比较大,达到一定门限时,信息是无编码的,则不需要进行信道译码;
(5)对传输帧中的x个数据包分别进行CRC校验:此时每个传输帧中共有x个数据包,对每个数据包进行CRC校验,检验数据是否有错;
(6)检验传输帧中的数据包的CRC校验是否出错,若出错说明信道编码未能纠正所有错误,则转步骤7,否则转步骤8;
(7)丢弃CRC校验出错的传输帧;
(8)判断接收缓冲区是否有管道溢出:若溢出,则说明接收缓冲区没有空间接收新的数据,则转步骤13,否则转步骤9;
(9)将接收的数据移到接收缓冲区中对应的管道:此时传入接收缓冲区的数据都是正确的,将其依次放入L个管道,该L个管道为相互独立的先进先出队列;
(10)判断接收缓冲区L个管道的数据水平线是否为0:由于同一水平线上的数据是编号连续的,故接收缓冲区一定要以水平线方向为顺序取包,再向上层传输,若水平线为0,则转步骤12,否则转步骤11;接收缓冲区中的数据变化如图4a和图4b所示。
(11)将水平线以下的数据向上层传输,将接收缓存区中水平线以下的数据按层依次取出传给上层,并将各管道的数据下移;
(12)组建反馈帧并发送,组建反馈帧时,若数据帧成功接收,则发送ACK,否则发送NAK,同时,根据本端检测到的接收信噪比信息和误码率门限列表,选择发送管道下次传输的编码模式、信息速率;给出变速指示,并加入反馈帧中。
(13)强行改变CRC结果,从而重新发送数据帧。
接收端的步骤4与发送端的步骤6相对应,在接收端先对数据帧进行信道译码,纠正部分因噪声引发的错误,减少数据帧的重传次数。接收端的步骤5与发送端的步骤5相对应,对每一包进行CRC校验,以保证数据的可靠性。
在接收端的步骤4中数据帧采用与编码方式相应的方式进行信道译码,纠正部分因噪声引发的错误,减少数据帧的重传次数。
实施例二:
步骤一,发送端初始化。
定义3个结构体,在每个结构体中分别定义一个数组用来开辟一段数据空间,分别用于环形缓冲区、并行发送缓冲区中的L=16个管道、组帧模块中的16个帧。且对16个管道分别编号为1、2……16。而组帧模块中的16个帧也相应的编号为1、2……16。。
步骤2,环形缓冲区接收上层网口数据。
该区域有三个指针分别为Buf指向缓冲区首地址、p1用于往环形缓冲区放数据以及p2用于从环形缓冲区取走数据,如图5所示。
步骤3,将数据以包为单位平铺于并行发送缓冲区中的L=16个管道。
设定每包为num_byte=20个字节(该参数取值见表一所示),环形缓冲区以先进先出的队列将包依次平铺于并行发送缓冲区的16个管道。
步骤4,各管道向组帧模块中的各帧输入x个包(的取值见表一)。
帧模块中亦有16个待组帧与并行发送缓冲区中的管道一一对应,此时每帧携带的数据量为x包。
步骤5,对每包进行CRC编码。
别对16个帧中的x个包独立进行CRC编码,校验位为2个字节。即需要编码Lx次。
步骤6,对每帧数据进行信道编码。
继上一步后,对每帧中经过CRC编码后的x个包进行信道编码,信道编码方式因x而不同(编码方式查询表一),从而保证一定的吞吐量。
步骤7,加帧头完成组帧。
在信道编码完成的基础上,增加2字节的帧头,依次为速率信息、帧标志位和帧号。
步骤8,是否允许发送当前数据帧。
若当前信道状态允许,则发送,否则等待,并再次尝试。
步骤9发送帧并打开计时器。
当该帧发送后,打开计时器以等待应带帧。
步骤10,是否收到反馈帧。
发送端等待接收端发来的反馈帧,如收到反馈帧转步骤11,否则转步骤12;
步骤11,收到反馈帧时定时器是否溢出。
若溢出则判定该反馈帧不可靠,转步骤12,否则转步骤13。
步骤12,丢弃该反馈帧,重传对应数据帧。
通过该反馈帧得知接收端收到的数据帧可能有误,需要重传该帧,转步骤8。
步骤13,反馈帧为ACK。
若该反馈帧为ACK,则说明该帧发送成功,转步骤14,否则转步骤12。
步骤14,提取变速信息。
变速信息是反馈帧所携带的信息,是接收端根据当前信噪比给发送端提出变速建议,以使系统吞吐量尽可能大。
步骤15,清除发送缓冲区发送成功的数据。
发送缓冲区中的16个管道高度均为H=16,即最多可存放H个包,故发送成功的包应该被删除,形成一个先进先出栈,为新数据包腾出位置。
步骤16,修改发送状态标识位。
该标志位取值为0或1,接收端可由此来判断该帧是否是本次该接收的帧还是重复接收的帧。
接收端:
步骤17,接收端初始化。
定义两个结构体,设定两个数组用于当做接收暂存区的L个管道、接收缓冲区的L个管道,L=16,切接收暂存区的16个管道和接收缓冲区的16个管道均采用1、2……16进行顺序编号,每个管道接收相应编号的组帧模块组帧,即1号管道接收编号为1的组帧。
步骤18,检测是否收到传输帧。
接收端检测是否有数据帧发送过来,如果有转步骤19,否则继续监测。
步骤19,将收到的帧对应放入接受暂存区的管道中。
接收端会收到16个帧,将其按顺序依次放入接受暂存区中的16个管道中。
步骤20,帧的标志位与接收端标志位是否相等。
如果相等,说明该帧为接收端期待收到的帧,转步骤21,否则说明该帧为重复帧转步骤24;
步骤21,对接收帧进行信道译码(无编码不需要)。
对接收帧进行信道译码,可以纠正可能出现的错误,当信道信噪比较大,达到一定门限时,信息是无编码的,此时不需要进行信道译码,此步与步骤6对应。
步骤22,对每帧中的x个包分别进行CRC校验。
此时每帧中共有x个包,对每个包进行CRC校验,实际上就是检验数据是否有错。
步骤23,某帧中的包的CRC校验是否出错。
若出错说明信道编码未能纠正所有错误,此时转步骤24,否则转步骤25。
步骤24,丢弃该帧。
当某帧中的包被检验出有错,则该帧需丢弃。
步骤25,接收缓冲区是否有管道溢出。
若溢出,则说明接收缓冲区没有空间给新的数据,则转步骤30,否则转步骤26。
步骤26,将译码之后的数据移到接收缓冲区中对应的管道。
此时传入接收缓冲区的数据都是正确的,将其依次放入16个管道,该16个管道为相互独立的先进先出队列。
步骤27,接收缓冲区16个管道的数据水平线是否为0。
由于同一水平线上的数据是编号连续的,故接收缓冲区一定要以水平线方向为顺序向上层传输数据,一种极端的情况是在16个管道中,只有一个管道是空的,其他管道是满的,此时依然不可提取数据,否则会打乱数据顺序,故若水平线为0,则转步骤29,否则转步骤28。
步骤28,将水平线以下的数据向上层传输。
将接收缓存区中水平线以下的数据按层依次取出传给上层,并将各管道的数据下移。
步骤29,组反馈帧并发送。
组反馈帧时,若数据帧成功接收,则发送ACK,否则发送NAK。
步骤30,强行改变CRC结果。
在特殊情况下,需要重新发送数据帧时,可强行改变CRC结果。
如表一,在速率等级为1时,接收信噪比大于相应的信噪比门限9.55dB,每帧可传输5包数据,即8(比特/字节)×5(包)×20(字节/包)比特的信息,此时选择无编码传输;随着流星突发信道的指数衰落,速率等级降为2,此时信噪比大于门限7.45dB,小于门限9.55dB,采用RS(31,27)编码方式,需24个码字方可将4包数据编完;当信道恶化,接收端信噪比降到大于3.5dB,小于7.45dB时,需要使用纠错性能较好的LDPC(255,175)编码方式,此时数据包数为3,总共使用3个码字可将数据编完。三种编码方式的码率分别为:1、0.87、0.69,由此看出,随着信道功率的指数衰减,本发明技术方案中的自适应变速率编码方案通过变换信道编码方式,增加一定冗余,以保证较高的吞吐量,及较低的重传率。
表一、 变速率编码传输规则表:
本发明的技术方案的效果通过以下仿真进一步说明:
为保证较大的吞吐量,编码方式的选取至关重要。本技术方案设系统误比特率要求不大于10e-5,调制方式为BPSK,加入加性高斯白噪声(AWGN),通过仿真无编码、RS(31,27)、LDPC(255,175)这三种编码方式,分析信噪比门限。如图6所示,当信噪比在3.5dB和7.45dB之间时,仅有LDPC(255,175)满足误码率小于10e-5,故此时选取LDPC(255,175)编码方式;当信噪比在7.45dB和9.55dB之间时,LDPC(255,175)和RS(31,27)均满足误码率要求,但此时RS(31,27)的码率较高,故此时选取RS(31,27)编码方式;当信噪比大于9.55dB时,三种编码方式均满足误码率要求,故选取码率最高的无编码方式进行编码传输。表一所示的编码门限就是由此得出。
如图7所示,在流星突发信道下,当选择不同的编码方式时,系统传输信息的通过量随信噪比变化的仿真图。程序中设定的仿真时长为3小时,每包字节数num_byte为20个,管道个数L=16,管道高度H=16,加入高斯白噪声,其余参数见表一。仿真设计的四种编码方式分别为自适应编码、无编码、RS(31,27)编码和LDPC(255,175)编码。
从图7中可以看出,自适应编码传输的数据通过量在任何信噪比下都明显高于其余三种固定编码传输的数据通过量。在信噪比较低时,由于自适应编码采用的是LDPC(255,175)码,所以自适应编码传输的通过量和固定LDPC(255,175)编码传输的通过量相差不大且都比较高,这是因为LDPC有很好的纠错能力,而此时RS(31,27)码和无编码方案由于无法纠正由于信道恶劣造成的错误,而不断重传数据帧,导致吞吐量较低;随着信噪比增大,信道状况改善,系统吞吐量由大到小依次为自适应编码、无编码、RS(31,27)编码、LDPC(255,175)编码,由于此时自适应编码选用的是无编码方案,码率为1,其余编码方式码率依次减小,RS(31,27)编码和LDPC(255,175)编码的冗余较大,对资源造成了浪费。由此可见,相比较固定编码方式的数据传输,自适应编码传输能够根据信道的变化,自适应改变编码方式,有效地提高了数据的通过量。
图8与图7的仿真环境相同,描述了分别基于四种编码方式,对重传次数随信噪比变化的仿真。如图8所示,无编码方式下的帧重传次数是最高的,尤其是在低信噪比下,重传次数几乎是其他三种编码方式的两倍,性能最差;在整个信噪比范围内重传次数最低的是LDPC(255,175)码,这是因为LDPC码具有优良的纠错性能,但其码率也最低,若使用LDPC(255,175)固定编码,吞吐量会受到不小影响;固定RS(31,27)编码和自适应编码的帧重传次数比较接近,但在低信噪比下,RS(31,27)编码的帧重传次数略高,但在重传率上,此二者与LDPC(255,175)编码的性能还是比较接近的。
根据图7和图8可以看出,与固定编码传输相比,本发明技术方案提出的自适应编码传输方案能够兼顾通过量和重传次数,与以往的系统相比可获得更高的吞吐量和较低的帧重传率。
注:反馈帧中的ACK即为确认字符。NAK为没有应答确认字符。RS(31,27)编码和LDPC(255,175)编码中的括号为本技术领域的特定技术术语。RS(n,k)n表示信道编码的码长,k表示信息位,n-k即为编码的冗余长度。LDPC(n,k)n表示信道编码的码长,k表示信息位,n-k即为编码的冗余长度。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于位图反馈的H-ARQI型链路传输方法,其特征在于,在链路层上,发送端包括环形缓冲区、并行发送缓冲区和组帧模块;接收端包括接收暂存区和并行接收缓冲区;
所述发送端将上层网口输出的信息注入环形缓冲区,环形缓冲区将数据以数据包格式平铺在并行发送缓冲区的L个管道中,所述组帧模块中存在L个传输帧,且并行发送缓冲区中的管道与组帧模块中的传输帧一一对应,每个管道和对应的传输帧均采用同样的数字进行编号;
在上述组帧模块中,每个传输帧根据接收暂存区反馈帧的反馈信息决定此时的编码速率和编码方式,并对上述数据包进行CRC编码和对每个传输帧进行信道编码,并将处理后的传输帧依次发送;
所述接收端的接收暂存区亦由L个管道组成,且采用与上述传输帧对应的数字进行编号,接收暂存区的管道接收同数字编号的传输帧,若传输帧内的信息经信道译码和CRC校验无误,则将数据向上传输给并行接收缓冲区对应的管道,否则重传该传输帧;
上述接收缓冲区将数据传输给上层网口。
2.根据权利要求1所述的基于位图反馈的H-ARQI型链路传输方法,其特征在于,
所述发送端发送传输帧包括以下步骤:
(1)发送端初始化:对环形缓冲区、并行发送缓冲区中的L个管道和组帧模块开辟数据空间;
(2)环形缓冲区接收上层网口数据:环形缓冲区三个指针分别为指向缓冲区首地址的指针、用于往环形缓冲区放数据的指针以及从环形缓冲区取走数据的指针;
(3)将从上述步骤2中环形缓冲区接收的数据以数据包格式平铺于并行发送缓冲区中的L个管道:环形缓冲区以先进先出的队列将数据包依次平铺于并行发送缓冲区的L个管道;
(4)各管道向组帧模块中的各传输帧输入x个包:组帧模块中亦有L个待组帧与并行发送缓冲区中的管道一一对应,此时每帧携带的数据量为x包,经组帧模块组帧后形成传输帧;
(5)对数据包进行CRC编码:分别对L个传输帧中的x个包独立进行CRC编码;
(6) 检查本地保存的发送变速指示信息,选择管道传输的编码模式、信息包个数,并对管道中的数据帧即传输帧进行信道编码:对上述步骤5中经过CRC编码后的传输帧中的x个包进行信道编码,根据信道编码模式,封装相应数量的信息包,从而保证最优的吞吐量;
(7)加帧头完成组帧:对上述步骤6完成信道编码的数据帧,增加2字节的帧头,该2字节的帧头包含速率信息、帧标志位和帧号;
(8)判断是否允许发送经过步骤7组帧后的数据帧:若当前信道状态允许发送,则发送,否则等待,并再次尝试;
(9)若上述步骤8中发送数据帧,则发送数据帧并打开计时器:当该数据帧发送后,打开计时器以等待应答帧;
(10)是否收到反馈帧即上述步骤9中的应答帧:发送端等待接收端发来的反馈帧,如收到反馈帧转步骤11,否则转步骤12;
(11)判断收到反馈帧时定时器是否溢出:若溢出则判定为该反馈帧不准确,转步骤12,否则转步骤13;
(12)丢弃该反馈帧,重传对应数据帧:通过该反馈帧得知接收端收到的数据帧有误,重传该帧,转步骤8;
(13)若该反馈帧为ACK,则说明该帧被发送成功,转步骤14,否则转步骤12;
(14)提取反馈帧中的变速信息;
(15)清除发送缓冲区发送成功的数据包;
(16)修改发送状态标识位。
3.根据权利要求2所述的基于位图反馈的H-ARQI型链路传输方法,其特征在于,
所述接收端接收传输帧包括以下步骤:
(1)接收端初始化:为接收端的接收暂存区的L个管道、接收缓冲区的L个管道保留足够空间等待接收信息;
(2)检测是否收到来自上述发送端的传输帧,如接收到传输帧转步骤3,否则继续检测直到接收到传输帧;
(3)将接收的传输帧对应放入接受暂存区的管道中:接收端将收到的L个传输帧按顺序依次放入接受暂存区中的L个管道中;并判断传输帧的标志位与接收端标志位是否相等,如相等,说明该传输帧为接收端预定接收到的传输帧,转步骤4,否则该传输帧为重复帧,转步骤7;
(4)对接收的传输帧进行信道译码:而当信道信噪比较大,达到一定门限时,信息是无编码的,则不需要进行信道译码;
(5)对传输帧中的x个数据包分别进行CRC校验:此时每个传输帧中共有x个数据包,对每个数据包进行CRC校验,检验数据是否有错;
(6)检验传输帧中的数据包的CRC校验是否出错,若出错说明信道编码未能纠正所有错误,则转步骤7,否则转步骤8;
(7)丢弃CRC校验出错的传输帧;
(8)判断接收缓冲区是否有管道溢出:若溢出,则说明接收缓冲区没有空间接收新的数据,则转步骤13,否则转步骤9;
(9)将接收的数据移到接收缓冲区中对应的管道:此时传入接收缓冲区的数据都是正确的,将其依次放入L个管道,该L个管道为相互独立的先进先出队列;
(10)判断接收缓冲区L个管道的数据水平线是否为0:由于同一水平线上的数据是编号连续的,故接收缓冲区一定要以水平线方向为顺序取包,再向上层传输,若水平线为0,则转步骤12,否则转步骤11;
(11)将水平线以下的数据向上层传输,将接收缓存区中水平线以下的数据按层依次取出传给上层,并将各管道的数据下移;
(12)组建反馈帧并发送,组建反馈帧时,若数据帧成功接收,则发送ACK,否则发送NAK,同时,根据本端检测到的接收信噪比信息和误码率门限列表,选择发送管道下次传输的编码模式、信息速率;给出变速指示,并加入反馈帧中;
(13)强行改变CRC结果,从而重新发送数据帧。
4.根据权利要求2所述的基于位图反馈的H-ARQI型链路传输方法,其特征在于,所述步骤4中数据包数的选取是自适应的,即在速率等级为1时,包数5,速率等级为2时,包数为4,速率等级为3时,包数为3。
5.根据权利要求2所述的基于位图反馈的H-ARQI型链路传输方法,其特征在于,所述步骤5中包括对每一个数据包添加CRC校验位,在接收端的步骤6可以进行检错,保证通信息系统的可靠性的步骤。
6.根据权利要求2所述的基于位图反馈的H-ARQI型链路传输方法,其特征在于,所述步骤6中采用自适应变速率信道编码,在速率等级为1时,采用无编码传输,速率等级为2时,采用RS(31,27)编码传输,速率等级为3时,采用LDPC(255,175)编码传输,在接收端的步骤4中数据帧采用与编码方式相应的方式进行信道译码,纠正部分因噪声引发的错误,减少数据帧的重传次数。
7.根据权利要求2或4所述的基于位图反馈的H-ARQI型链路传输方法,其特征在于,所述步骤14中从收到的反馈帧中可提取变速信息,通过变速信息实时更新速率等级,从而确定数据包数和编码方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310396553.9A CN103501214B (zh) | 2013-09-04 | 2013-09-04 | 基于位图反馈的h-arqi型链路传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310396553.9A CN103501214B (zh) | 2013-09-04 | 2013-09-04 | 基于位图反馈的h-arqi型链路传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103501214A true CN103501214A (zh) | 2014-01-08 |
CN103501214B CN103501214B (zh) | 2018-10-09 |
Family
ID=49866392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310396553.9A Expired - Fee Related CN103501214B (zh) | 2013-09-04 | 2013-09-04 | 基于位图反馈的h-arqi型链路传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103501214B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105706043A (zh) * | 2013-11-05 | 2016-06-22 | 思科技术公司 | 推进式链接的列表吞吐量 |
CN110365449A (zh) * | 2019-07-29 | 2019-10-22 | 京信通信系统(中国)有限公司 | 循环冗余校验加速方法、装置和接入网设备 |
CN111756479A (zh) * | 2019-03-27 | 2020-10-09 | 华为技术有限公司 | 一种通信方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101400050B (zh) * | 2007-09-27 | 2011-12-28 | 华为技术有限公司 | 无线块接收的应答方法、应答处理方法及无线块传输装置 |
CN102223220B (zh) * | 2011-06-21 | 2013-10-16 | 西安电子科技大学 | 基于位图反馈的突发通信链路层传输方法 |
-
2013
- 2013-09-04 CN CN201310396553.9A patent/CN103501214B/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105706043A (zh) * | 2013-11-05 | 2016-06-22 | 思科技术公司 | 推进式链接的列表吞吐量 |
CN111756479A (zh) * | 2019-03-27 | 2020-10-09 | 华为技术有限公司 | 一种通信方法及装置 |
CN111756479B (zh) * | 2019-03-27 | 2021-12-10 | 华为技术有限公司 | 一种通信方法及装置 |
CN110365449A (zh) * | 2019-07-29 | 2019-10-22 | 京信通信系统(中国)有限公司 | 循环冗余校验加速方法、装置和接入网设备 |
CN110365449B (zh) * | 2019-07-29 | 2022-05-06 | 京信网络系统股份有限公司 | 循环冗余校验加速方法、装置和接入网设备 |
Also Published As
Publication number | Publication date |
---|---|
CN103501214B (zh) | 2018-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6697987B2 (en) | Method of packet data transfer with hybrid ARQ | |
CN111030785B (zh) | 在无线网络中进行数据重传的方法、系统以及无线接收器 | |
CN101340271B (zh) | 混合自动请求重传方法、发射机、接收机和通信系统 | |
US20100100787A1 (en) | Transmission data generating apparatus and receiver | |
US7889696B2 (en) | Retransmission method and apparatus using multiple mother codes in a system using HARQ | |
CN104283651B (zh) | 一种混合重传的方法 | |
CN104782072A (zh) | 采用可靠停等混合自动重传请求协议的系统和方法 | |
CN103490866B (zh) | 星地传输网络中基于网络编码的harq传输方法 | |
CN102104463B (zh) | 数据报文请求重传方法及装置 | |
US8219867B2 (en) | Forward feedback for UL macrodiversity | |
US11936480B2 (en) | Apparatus and methods for HARQ in a wireless network | |
JP6126698B2 (ja) | 受信機の停止イベント後の修正されたharq手順のための方法および装置 | |
CN101416433B (zh) | 数据传送控制方法以及发送装置 | |
CN103501214A (zh) | 基于位图反馈的h-arqi型链路传输方法 | |
KR20010043907A (ko) | 통신 단말 장치, 기지국 장치 및 무선 통신 방법 | |
CN102377544A (zh) | 一种通信系统中的重传方法 | |
CN105162559B (zh) | 一种基于最大距离可分编码的harq方法 | |
EP1932268B1 (en) | Method, apparatuses and system for error detection and selective retransmission | |
KR20070091883A (ko) | 이동통신 시스템에서 로그 우도율을 이용한 복합 재전송요청 장치 및 방법 | |
CN104144044A (zh) | 一种多设备透明harq的处理方法 | |
US8438444B2 (en) | Method of associating automatic repeat request with hybrid automatic repeat request | |
CN101282202A (zh) | 混合自动请求重发方法及数据传输系统 | |
CN101841405A (zh) | 无线通信系统、无线通信方法、发送器和接收器 | |
CN110446270A (zh) | 一种低轨卫星语音通信中传输时隙捆绑的动态调度方法 | |
CN106452660A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20181009 Termination date: 20190904 |
|
CF01 | Termination of patent right due to non-payment of annual fee |