无线链路控制(Radio Link Control,RLC)协议的主要目的是将数据交付给对端的RLC实体。所以RLC提出了三种模式:透明模式(Transparent Mode,TM)、非确认模式(Unacknowledged Mode,UM)和确认模式(Acknowledged Mode,AM)。如下图所示的RLC层总体框架体现了三种传输模式:
TM模式最简单,它对于上层数据不进行任何改变,这种模式典型地被用于BCCH或PCCH逻辑信道的传输,该方式不需对RLC层进行任何特殊的处理。RLC的透明模式实体从上层接收到数据,然后不做任何修改地传递至下面的MAC层,这里没有RLC头增加、数据分割及串联。
UM模式可以支持数据包丢失的检测,并提供分组数据包的排序和重组。UM模式能够用于任何专用或多播逻辑信道,具体使用依赖于应用及期望QoS的类型。数据包重排序是指对不按顺序接收到的数据进行排序。
AM模式是一种最复杂的模式。除了UM模式所支持的特征外,AM RLC实体能够在检测到丢包时要求它的对等实体重传分组数据包,即ARQ机制。因此,AM模式仅仅应用于DCCH或DTCH逻辑信道。
一般来讲,AM模式典型地用于TCP的业务,如文件传输,这类业务主要关心数据的无错传输;UM模式用于高层提供数据的顺序传送,但是不重传丢失的PDU,典型地用于如Voip业务,这类业务最主要关心传送时延;TM模式则仅仅用于特殊的目的,如随机接入。
TM模式
TM RLC实体可以通过BCCH、DL/UL CCCH和PCCH逻辑信道递交/接收RLC PDU,如下图所示:
当TM RLC发送侧实体把RLC SDU组成TMD(透明模式数据)PDU时,它将不分段或级联RLC SDU,也不会包括任何RLC头。当TM RLC接收侧实体接收TMD PDU时,它将递交TMD PDU(其实就是RLC SDU)给上层。
UM模式
UM RLC实体可以通过DL/UL DCCH、DL/UL DTCH、MCCH或MTCH逻辑信道递交/接收RLC PDU,如下图所示:
当UM RLC发送侧实体把RLC SDU组成UMD(非确认模式数据)PDU时,它将分段或级联RLC SDU来世UMD PDU适合下层指示的RLC PDU总大小,下行在通知特定发送时机时会指示RLC PDU总大小,同时会给UMD PDU增加RLC头。当UM RLC接收侧实体接收UMD PDU时,检测UMD PDU是否已经以副本方式收到,并且丢弃复制的UMD PDU。如果接收为乱序,则对UMD PDU重排序。在下层检测UMD PDU丢失,避免过多的重排序延迟。从已排序的UMD PDU中重新集合RLC SDU并按序递交RLC SDU给上层。如果检测到一个属于某个特定RLC SDU的UMD PDU丢失,并且受到的UMD PDU无法封装成RLC SDU,则丢弃这些UMD PDU。
AM模式
一个AM RLC实体可以通过DL/UL DCCH或DL/UL DTCH逻辑信道来递交/接收RLC PDU,如下图所示:
当AM RLC发送侧实体把RLC SDU组成AMD(确认模式数据)PDU时,它将分段或级联RLC SDU,以使AMD PDU适合下层在特定时机指示的RLC PDU总大小。当AM RLC实体发送侧把来自上层RLC SDU形成的AMD PDU或把RLC PDU形成的AMD PDU分段重传,它将在RLC PDU内包括相关的RLC头。当AM RLC接收侧实体接收RLC PDU,它将检测RLC PDU是否已经以副本方式收到,丢弃复制的RLC PDU。如果接收为乱序,则重排序RLC PDU。同时,检测下层的RLC PDU的丢失,并请求其对等AM RLC实体重传。随后,将已排序的RLC数据PDU组装为RLC SDU,并按顺序递交RLC SDU给上层。
RLC PDU结构
RLC PDU的格式与参数如下图所示:
RLC头携带了RLC PDU的序列号,该序列号与SDU序列号不同。
一个RLC PDU可以由下面的段组成:第i个SDU的最后一个分段串接n个完整的SDU,再串接第i+n+1个SDU的第一段,其中n为大于或等于0的整数。
与UMTS系统PLC PDU大小是准静态不同,LTE系统RLC PDU的大小能够动态变化。对于高速数据,采用大的PDU能够获得更小的开销,然而对于低速数据,则需要小的PDU。因此,在LTE系统中支持动态PDU,以实现数据速率的变化,其变化范围可以从几千比特每秒至几百兆比特每秒。由于RLC调度、速率自适应机制均位于eNodeB中,因此,LTE系统能够很容易地支持动态PDU机制。