5G和LTE中的HARQ协议
LTE中有两种重传机制:MAC层的HARQ机制,以及RLC层的ARQ(只针对AM(aknowledgement mode确认模式)数据传输)机制。
HARQ:
HARQ(HybridAutomatic Repeat reQuest混合自动重传请求),是一种结合FEC(ForwardError Correction,前向纠错)与ARQ(Automatic RepeatreQuest)方法的技术。
FEC通过添加冗余信息,使得接收端能够纠正一部分错误,从而减少重传的次数。
对于FEC无法纠正的错误,接收端会通过ARQ机制请求发送端重发数据。接收端使用检错码,通常为CRC校验,来检测接收到的数据包是否出错。如果无错,则接收端会发送一个肯定的确认(ACK)给发送端,发送端收到ACK后,会接着发送下一个数据包。如果出错,则接收端会丢弃该数据包,并发送一个否定的确认(NACK)给发送端,发送端收到NACK后,会重发相同的数据。
前面介绍的ARQ机制采用丢弃数据包并请求重传的方式。虽然这些数据包无法被正确解码,但其中还是包含了有用的信息,如果丢弃了,这些有用的信息就丢失了。通过使用HARQ with softcombining(带软合并的HARQ),接收到的错误数据包会保存在一个HARQ buffer中,并与后续接收到的重传数据包进行合并,从而得到一个比单独解码更可靠的数据包(“软合并”的过程)。然后对合并后的数据包进行解码,如果还是失败,则重复“请求重传,再进行软合并”的过程。
根据重传的比特信息与原始传输是否相同,HARQ with softcombining分为chase combining和incrementalredundancy(增量冗余)两类。chase combining中重传的比特信息与原始传输相同;incremental redundancy 中重传的比特信息不需要与原始传输相同。LTE中只使用incremental redundancy机制。
只有DLSCH和ULSCH传输支持HARQ,其他信道不支持HARQ。
HARQ process:
HARQ使用stop-and-waitprotocol(停等协议)来发送数据。
在停等协议中,发送端发送一个TB后,就停下来等待确认信息。接收端会使用1比特的信息对该TB进行肯定(ACK)或否定(NACK)的确认。但是每次传输后发送端就停下来等待确认,会导致吞吐量很低。因此LTE使用多个并行的stop-and-wait process:当一个HARQprocess在等待确认信息时,发送端可以使用另一个HARQ process来继续发送数据。
这些HARQ process共同组成了一个HARQ实体(HARQ entity),这个实体结合了停等协议,同时允许数据的连续传输。
每个UE都有一个HARQ实体。但在载波聚合中,一个UE对应每个载波单元(Component Carrier)都有各自的HARQ实体。
每个HARQ process在一个TTI只处理一个TB(TransportBlock,传输块)。
每个HARQ process在接收端都需要有独立的HARQbuffer,以便对接收到的数据进行软合并。
在空分复用中,一个TTI会并行传输2个TB,此时每个TB有各自独立的HARQ确认信息,1个HARQ实体包含2个HARQprocess集合。
HARQ相关概念:
HARQ process number:也称为HARQprocess ID,唯一地指定一个HARQ process。
NDI:New Data Indicator的缩写。每个HARQprocess会保存一个NDI值,该值使用1比特来指示被调度的数据是新传还是重传。如果同一HARQ process的NDI值与之前相比发生了变化(NDItoggled),则表示当前传输是一个新的TB的初传,否则(NDI not toggled)表示当前传输是同一个TB的重传。
RV:Redundancy Version的缩写。用于指示传输所使用的冗余版本,其取值范围为0~3。
MCS:Modulation and CodingScheme的缩写。DCI使用5比特的MCSindex(0~31)来指示当前传输所使用的调制和编码样式,并影响到TBS的选择。MCS共计32种组合,其中3种组合(索引为29~31)是预留的,且这3种组合只用于重传。
同步/异步、自适应/非自适应
HARQ协议在时域上分为同步(synchronous)和异步(asynchronous)两类;在频域上分为自适应(adaptive)和非自适应(non-adaptive)两类。
异步HARQ(asynchronousHARQ)意味着重传可以发生在任一时刻,也意味着能以任意顺序使用HARQ process。同步HARQ(synchronousHARQ)意味着重传只能在前一次传输之后的固定时刻发送,也意味着某个特定的子帧,只能使用某个特定的HARQ process。
同步HARQ的好处在于HARQprocess号可以直接从系统帧号/子帧号中推导出来,而无需显式地发送HARQ process number;异步HARQ的好处在于重传调度更加灵活。
自适应HARQ(adaptiveHARQ)意味着可以改变重传所使用的PRB资源以及MCS。非自适应HARQ(non-adaptiveHARQ)意味着重传必须与前一次传输(新传或前一次重传)使用相同的PRB资源和MCS。
在LTE中,下行使用异步、自适应HARQ;上行使用同步HARQ,但重传可以是自适应的,也可以是非自适应的。
5G和LTE中的HARQ协议的更多相关文章
- Android 中多点触摸协议
http://blog.csdn.net/zuosifengli/article/details/7398661 Android 中多点触摸协议: 参考: http://www.kernel.org/ ...
- C# WCF学习笔记(二)终结点地址与WCF寻址(Endpoint Address and WCF Addressing) WCF中的传输协议
URI的全称是 Uniform Rosource Identifire(统一资源标识),它唯一标识一个确定的网绐资源,同时也表示资源所处的位置及访问的方式(资源访问所用的网络协议). 对于Endpoi ...
- 详解Objective-C中委托和协议
Objective-C委托和协议本没有任何关系,协议如前所述,就是起到C++中纯虚类的作用,对于“委托”则和协议没有关系,只是我们经常利用协议还实现委托的机制,其实不用协议也完全可以实现委托. AD: ...
- PHP中的http协议
PHP中的http协议 http协议基本组成 报文:用于Http协议交互的信息 请求行:包括请求的方法,URL和HTTP协议版本 状态行:包括响应结果的状态码,状态描述和Http版本 首部字段:包括请 ...
- springboot中通过cors协议解决跨域问题
1.对于前后端分离的项目来说,如果前端项目与后端项目部署在两个不同的域下,那么势必会引起跨域问题的出现. 针对跨域问题,我们可能第一个想到的解决方案就是jsonp,并且以前处理跨域问题我基本也是这么处 ...
- objective-C中的"非正式协议"和“正式协议”
objective-C中的接口与泛型 先承认我是标题党,因为在obj-c的世界中,官方根本没有"接口"与"泛型"这样的说法. 不过在obj-c中有二个与之接近的 ...
- LTE 中基于X2的切换
LTE 中基于X2的切换 (36.300, 23.401)SGW 保持不变 http://blog.sina.com.cn/s/blog_673b30dd0100j4pe.html 1:eNod ...
- Java中的UDP协议编程
一. UDP协议定义 UDP协议的全称是用户数据报,在网络中它与TCP协议一样用于处理数据包.在OSI模型中,在第四层——传输层,处于IP协议的上一层.UDP有不提供数据报分组.组装和不能对数据包 ...
- Python中的端口协议之基于UDP协议的通信传输
UDP协议: 1.python中基于udp协议的客户端与服务端通信简单过程实现 2.udp协议的一些特点(与tcp协议的比较) 3.利用socketserver模块实现udp传输协议的并 ...
随机推荐
- c++笔试题 已迁移完成
转载 1.C和C++的特点与区别? 答:(1)C语言特点:1.作为一种面向过程的结构化语言,易于调试和维护: 2.表现能力和处理能力极强,可以直接访问内存的物理地址: 3.C语言实现了对硬件的编程操作 ...
- ansible-playbook-批量修改主机名
修改cat /etc/ansible/hosts [test]10.27.235.108 host_name=test_host_name - hosts: test user: root gathe ...
- Apache Kylin - 大数据下的OLAP解决方案
OLAPCube是一种典型的多维数据分析技术,Cube本身可以认为是不同维度数据组成的dataset,一个OLAP Cube 可以拥有多个维度(Dimension),以及多个事实(Factor Mea ...
- [Beta]Scrum Meeting#3
github 本次会议项目由PM召开,时间为5月8日晚上10点30分 时长15分钟 任务表格 人员 昨日工作 下一步工作 木鬼 撰写博客整理文档 撰写博客整理文档 swoip 改进界面 改进界面 bh ...
- ModuleNotFoundError: No module named 'pymysql'
出现此提示表示系统中没有安装PyMySQL,可以通过pip PyMySQL进行安装. 安装之后,执行import pymysql仍然不可用! why? 检查后发现系统中存在python2与python ...
- 011-Spring aop 002-核心说明-切点PointCut、通知Advice、切面Advisor
一.概述 切点Pointcut,切点代表了一个关于目标函数的过滤规则,后续的通知是基于切点来跟目标函数关联起来的. 然后要围绕该切点定义一系列的通知Advice,如@Before.@After.@Af ...
- cps在jenkins构建报错
修改ares的版本号即可,改为2.0.1.14-20191126-RELEASE
- PMP 第12~13章错题总结
1.合同解释应该遵循几个主要原则: 1)主导语言原则 2)适用法律原则 3)整体解释原则 4)公平诚信原则2.合同收尾包括的工作: 1)产品核实 2)可交付成果验收 3)财务结算 4)退还保证金或担保 ...
- 简单工厂(二)——coding
public abstract class Video { public abstract void produce(); } public class JavaVideo extends Video ...
- Rancher容器目录持久化
最近一直在研究Rancher的持久化问题. 目前已找到两种方式实现Rancher里的容器文件实现持久化方法. 方法一: 配置映射(只适用单个文件,不适用于目录) 这个算不上是真正的持久化,只是相当于配 ...