NR 5G RLC无线链路控制

RLC架构

RLC(Radio Link Control)是无线链路控制

RLC实体

1、RRC通常控制RLC配置;
2、RLC子层的功能由RLC实体执行,对于在gNB处配置的RLC实体,存在在UE处配置的对等RLC实体,反之亦然;
3、RLC实体从/向上层接收/递送RLC SDU,并经由较低层向/从其对等RLC实体发送/接收RLC PDU;
4、RLC PDU可以是RLC数据PDU或RLC控制PDU。 如果RLC实体从上层接收RLC SDU,则它通过RLC和上层之间的单个RLC信道接收它们,并且在从接收的RLC SDU形成RLC数据PDU之后,RLC实体通过a将RLC数据PDU提交给下层。单逻辑通道。 如果RLC实体从较低层接收RLC数据PDU,则其通过单个逻辑信道接收它们,并且在从接收的RLC数据PDU形成RLC SDU之后,RLC实体通过RLC之间的单个RLC信道将RLC SDU递送到上层。和上层。 如果RLC实体向/从下层提交/接收RLC控制PDU,则它通过它提交/接收RLC数据PDU的相同逻辑信道提交/接收它们。
5、RLC实体可以被配置为以以下三种模式之一执行数据传输:透明模式(TM),未确认模式(UM)或确认模式(AM)。 因此,取决于RLC实体被配置为提供的数据传输模式,RLC实体被分类为TM RLC实体,UM RLC实体或AM RLC实体。
6、TM RLC实体被配置为发送TM RLC实体或接收TM RLC实体。 发送TM RLC实体从上层接收RLC SDU,并经由较低层
将RLC PDU发送到其对等接收TM RLC实体。 接收TM RLC实体将RLC SDU递送到上层,并且经由较低层从其对等发送TM RLC实体接收RLC PDU。
7、UM RLC实体被配置为发送UM RLC实体或接收UM RLC实体。 发送UM RLC实体从上层接收RLC SDU,并经由较低层将RLC PDU发送到其对等接收UM RLC实体。 接收UM RLC实体将RLC SDU递送到上层,并且经由较低层从其对等发送UM RLC实体接收RLC PDU。
8、AM RLC实体由发送侧和接收侧组成。 AM RLC实体的发送侧从上层接收RLC SDU,并经由较低层将RLC PDU发送到其对等AM RLC实体。 AM RLC实体的接收侧将RLC SDU递送到上层,并经由较低层从其对等AM RLC实体接收RLC PDU。
下图说明了RLC子层的概述模型:
在这里插入图片描述
对于所有RLC实体类型(即TM,UM和AM RLC实体),支持字节对齐(即8位的倍数)的可变大小的RLC SDU;
每个RLC SDU用于构造RLC PDU,而无需等待来自较低层(即,通过MAC)的传输机会的通知。 在UM和AM RLC实体的情况下,可以基于来自较低层的通知使用两个或更多个RLC PDU来分段和传输RLC SDU;
仅当较低层(即通过MAC)通知传输机会时,才将RLC PDU提交给较低层。
注意: 当UE被请求生成多个MAC PDU时,UE应旨在防止MAC PDU中过多的非连续RLC PDU。
下面提供了不同RLC实体类型的描述:

TM RLC实体

TM RLC实体可以配置为通过以下逻辑信道提交/接收RLC PDU:

  • BCCH,DL / UL CCCH和PCCH
    两个透明模式对等实体的模型
    在这里插入图片描述
    TM RLC实体提交/接收以下RLC数据PDU:
  • TMD PDU。

传输TM RLC实体
当发送TM RLC实体从RLC SDU形成TMD PDU时,它应:

  • 不分割RLC SDU;
  • 不包括TMD PDU中的任何RLC头。

接收TM RLC实体
当接收TM RLC实体接收TMD PDU时,它应:

  • 将TMD PDU(仅为RLC SDU)传送到上层。

UM RLC实体

UM RLC实体可以配置为通过以下逻辑信道提交/接收RLC PDU:

  • DL/UL DTCH
    两个未确认模式对等实体的模型
    在这里插入图片描述
    UM RLC实体提交/接收以下RLC数据PDU:
  • UMD PDU。
    UMD PDU包含一个完整的RLC SDU或一个RLC SDU段。

传输UM RLC实体
发送UM RLC实体为每个RLC SDU生成UMD PDU。 它应包括UMD PDU中的相关RLC报头。 当下层通知传输机会时,如果需要,发送UM RLC实体将对RLC SDU进行分段,使得对应的UMD PDU(根据需要更新RLC报头)适合RLC PDU的总大小。由下层表示。

接收UM RLC实体
当接收UM RLC实体接收UMD PDU时,它应:

  • 检测较低层的RLC SDU段丢失;
  • 从接收到的UMD PDUt-ReassemblyRLC SDU,并在RLC SDU可用时立即将其传送到上层;
  • 丢弃接收到的UMD PDU,由于属于特定RLC SDU的UMD PDU的较低层的丢失,所述UMD PDU不能t-Reassembly成RLC SDU。

AM RLC实体

4.2.1.3.1 一般性描述
AM RLC实体可以配置为通过以下逻辑信道提交/接收RLC PDU:

  • DL / UL DCCH或DL / UL DTCH。
    确认模式实体的模型
    在这里插入图片描述
    AM RLC实体传送/接收以下RLC数据PDU:
  • AMD PDU。
    AMD PDU包含一个完整的RLC SDU或一个RLC SDU段。
    AM RLC实体递送/接收以下RLC控制PDU:
  • 状态PDU。

发送方
AM RLC实体的发送侧为每个RLC SDU生成AMD PDU。 当下层通知传输机会时,如果需要,发送AM RLC实体应对RLC SDU进行分段,以便根据需要更新RLC报头的相应AMD PDU符合RLC PDU的总大小,由下层表示。
AM RLC实体的发送侧支持RLC SDU或RLC SDU段(ARQ)的重传:

  • 如果要重传的RLC SDU或RLC SDU段(包括RLC头)不适合由下层通知的特定传输机会下层指示的RLC PDU的总大小,则AM RLC实体可以分段RLC SDU或将RLC SDU段重新分段为RLC SDU段;
  • 重新分割的数量不受限制。
    当AM RLC实体的发送方从RLC SDU或RLC SDU段形成AMD PDU时,它应:
  • 包括AMD PDU中的相关RLC头。

接收方
当AM RLC实体的接收方接收AMD PDU时,它应:

  • 检测是否已收到重复的AMD PDU,并丢弃重复的AMD PDU;
  • 检测较低层的AMD PDU丢失并请求重传到其对等AM RLC实体;
  • 从收到的AMD PDUt-ReassemblyRLC SDU,并在RLC SDU可用时立即将其传送到上层。

服务

向上层提供的服务

RLC向上层提供以下服务:

  • TM数据传输;
  • UM数据传输;
  • AM数据传输,包括上层PDU成功传送的指示。
预期来自较低层的服务

RLC从下层(即MAC)预期以下服务:

  • 数据传输;
  • 传输机会的通知,以及要在传输机会中传输的RLC PDU的总大小。

功能

RLC子层支持以下功能:

  • 上层PDU的传输;
  • 通过ARQ纠错(仅适用于AM数据传输);
  • RLC SDU的分段和重组(仅用于UM和AM数据传输);
  • 重新分割RLC SDU段(仅用于AM数据传输);
  • 重复检测(仅适用于AM数据传输);
  • RLC SDU丢弃(仅适用于UM和AM数据传输);
  • RLC重建;
  • 协议错误检测(仅适用于AM数据传输)。

NR RLC 对比 LTE RLC

去除RLC SDU级联功能和按序递交功能;
对于UM RLC,虽然有一定的检测丢包功能,但是UM RLC仍然可能向上层递交重复包(e.g.没有SN的UMD PDU不能进行重复性检测);
AM RLC保留重复性检测功能。

流程

RLC实体处理

RLC实体建立
当上层请求RLC实体建立时,UE应:

  • 建立RLC实体;
  • 将RLC实体的状态变量设置为初始值;
  • 按照流程进行操作。

RLC实体重建
当上层请求重建RLC实体时,UE应:

  • 丢弃所有RLC SDU,RLC SDU段和RLC PDU(如果有);
  • 停止并重置所有计时器;
  • 将所有状态变量重置为其初始值。

RLC实体释放
当上层请求释放RLC实体时,UE应:

  • 丢弃所有RLC SDU,RLC SDU段和RLC PDU(如果有);
  • 释放RLC实体。

数据传输流程

TM数据传输

传输操作
当向下层提交新的TMD PDU时,发送的TM RLC实体应:

  • 提交RLC SDU而不对下层进行任何修改。

接收业务
当从较低层接收新的TMD PDU时,接收TM RLC实体应:

  • 提供TMD PDU而无需对上层进行任何修改。
UM数据传输

传输操作
当向下层提交UMD PDU时,发送UM RLC实体应:

  • 如果UMD PDU包含RLC SDU的一段,则将UMD PDU的SN设置为TX_Next;
  • 如果UMD PDU包含映射到RLC SDU的最后一个字节的段,则将TX_Next递增1。

接收业务
接收UM RLC实体应根据状态变量RX_Next_Highest维护重组窗口:

  • 如果(RX_Next_Highest-UM_Window_Size)<= SN <RX_Next_Highest,则SN落入重组窗口内;
  • 否则SN落在重组窗口之外。
    当从较低层接收UMD PDU时,接收UM RLC实体应:
  • 在移除RLC报头后传送UMD PDU,丢弃接收到的UMD PDU,或将其置于接收缓冲区中;
  • 如果收到的UMD PDU放在接收缓冲区中:
  • 更新状态变量,t-ReassemblyRLC SDU并将其传送到上层,并根据需要启动/停止T-Reassembly。
    当T-Reassembly过期时,接收UM RLC实体应:
  • 更新状态变量,丢弃RLC SDU段并根据需要启动T-Reassembly(参见子条款5.2.2.2.4)。
    从较低层接收UMD PDU时的操作
    当从较低层接收UMD PDU时,接收UM RLC实体应:
  • 如果UMD PDU头不包含SN:
  • 删除RLC标头并将RLC SDU传送到上层。
  • 否则if(RX_Next_Highest - UM_Window_Size)<= SN <RX_Next_Reassembly:
  • 丢弃收到的UMD PDU。
  • 其他:
  • 将接收到的UMD PDU放入接收缓冲区。
    将UMD PDU放入接收缓冲区时的操作
    当具有SN = x的UMD PDU放置在接收缓冲器中时,接收UM RLC实体应:
  • 如果收到所有SN = x的字节段:
  • 从SN = x的所有字节段t-ReassemblyRLC SDU,移除RLC头并将重组的RLC SDU传送到上层;
  • 如果x = RX_Next_Reassembly:
  • 将RX_Next_Reassembly更新为尚未t-Reassembly并传送到上层的第一个SN>当前RX_Next_Reassembly的SN。
  • 否则如果x落在重组窗口之外:
  • 更新RX_Next_Highest到x + 1;
  • 丢弃SN不在重组窗口之外的任何UMD PDU;
  • 如果RX_Next_Reassembly落在重组窗口之外:
  • 将RX_Next_Reassembly设置为尚未t-Reassembly并传送到上层的第一个SN> =(RX_Next_Highest-UM_Window_Size)的SN。
  • 如果T-Reassembly正在运行:
  • 如果RX_Timer_Trigger <= RX_Next_Reassembly; 或者
  • 如果RX_Timer_Trigger落在重组窗口之外且RX_Timer_Trigger不等于RX_Next_Highest; 或者
  • 如果RX_Next_Highest = RX_Next_Reassembly + 1并且在该RLC SDU的所有接收段的最后一个字节之前没有与SN = RX_Next_Reass
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

华夏山河雪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值