概述
与LTE类似,RLC层也是三种传输模式,分别是:
- TM : No RLC Header, Buffering at Tx only, No Segmentation/Reassembly, No feedback (i.e, No ACK/NACK)
- UM : RLC Header, Buffering at both Tx and Rx, Segmentation/Reassembly, No feedback(i.e, No ACK/NACK)
- AM : RLC Header, Buffering at both Tx and Rx, Segmentation/Reassembly, Feedback(i.e, ACK/NACK)
每种模式都可以发送和接收数据。在TM和UM中,单独的实体用于发送和接收,但在AM中,单个RLC实体执行发送和接收,如下所示。
需要注意的一件重要事情是,每个逻辑通道都使用如下所示的特定RLC模式。
- BCCH, PCCH, CCCH use RLC TM only.
- DCCH use RLC AM only.
- DTCH use RLC UM or AM. (通过RRC消息来决定用UM还是AM).
现在让我们进一步了解一下如何通过每个RLC模式处理数据。由于每个RLC模式都与特定的逻辑信道集相关联,建议将此RLC模式过程与这些信道的RLC层处理机制相关联。
TM模式/程序
如下图所示。TM模式意味着“几乎不处理RLC数据”。它所做的唯一一件事就是在发送缓冲数据。这一层没有RLC报头,没有重新排序,没有分割,没有重组。由于TM模式的这种“无数据处理”性质,如果比较TM模式的RLC输入和RLC输出数据,您将看到两者之间没有区别。
需要记住的一件重要事情是,需要注意MAC/PHY资源分配。即使MAC/PHY资源的分配小于RLC包,RLC也不会在意。它会把它所拥有的一切转发给MAC/PHY。因此,那些大于MAC/PHY资源的RLC数据可能被切断或丢弃。
另一个需要注意的是,本地信道BCCH/PCCH/CCCH数据由该RLC模式处理。
UM模式/过程
接下来,看看UM模式。代表“未确认模式”,“未确认模式”表示“不需要另一方的任何接收响应”,“接收响应”只是指来自另一方的“ACK”或“NACK”。(UM模式类似于TM模式,它不需要来自另一方的任何ACK/NACK,但它不同于TM,因为有自己的头)
先看发射端的操作。
i) 缓冲数据并生成RLC报头。
ii)分割(将一个大的块分割成多个小的块)并修改RLC头(RLC头中的某些字段应根据分割状态进行更改)
iii)添加RLC标题
注意:如果在LTE进程中对此进行比较,则UM RLC似乎不执行任何“连接”。根据38.322中的以下语句,“连接”进程被移动到MAC层。
然后,阅读接收端的操作
i) 缓冲
ii)重新排序(有时从发送器发送的数据块可能延迟到达接收器。在这种情况下,必须将传入的块重新排序为正确的顺序,以便重新组装)。
iii)移除RLC报头(发送器将报头放在每个块上。因此,在重新组装数据之前,必须删除此项)。
iv)重新组装
连接(Concatenation)放到Mac层了
AM模式/程序
现在看看AM模式,它是最复杂的RLC类型,AM代表“确认模式”。顾名思义,它需要对方的ACK/NACK。它更像IP世界中的TCP数据包,而RLC-UM更像IP世界中的UDP。
每次传输都需要ACK/NACK吗?如果是这样,是不是开销太大了?对,开销太大了。这就是为什么我们有RLC窗口概念(如IP流量中的TCP窗口)和轮询位概念以及各种ACK/NACK调度机制,这使得很难理解RLC AM操作的全部细节。
与UM模式不同的是中间列,即“重传缓冲区”和“RLC控制”过程。
在RLC发送器进行分段/级联处理后,添加RLC报头,然后创建两个相同的副本,并将数据的一个副本发送到较低层(MAC)并将另一个副本发送到重传缓冲器。
如果RLC获取Nack或在一定时间内未从另一方获得任何响应,则重传缓冲器中的RLC分组,再次被发送。如果RLC得到ACK,则重传缓冲区中的那些将被丢弃。
RLC数据结构
SI代表段信息。下表定义了每个可能的SI字段值的含义
SO : SO stands for Segment Offset. It indicates the position of the RLC SDU segment in bytes within the original RLC SDU
D/C : This field indicate whether the RLC PDU is for Data or Control.
P : P stands for Polling bit. This indicates whether it requires RLC ACK or NACK from the other party.
SI : SI stands for Segment Information. 下表是SI自动可能的取值及意义。
最后
以上就是奋斗诺言为你收集整理的修改 连接层_NR的RLC层的全部内容,希望文章能够帮你解决修改 连接层_NR的RLC层所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复