4 General
36.3223GPPEvolved Universal Terrestrial Radio Access (E-UTRA)Radio Link Control (RLC) protocol specificationRelease 17TS
4.1 Introduction
The objective is to describe the RLC architecture and the RLC entities from a functional point of view.
4.2 RLC architecture
4.2.1 RLC entities
The description in this sub clause is a model and does not specify or restrict implementations.
RRC is generally in control of the RLC configuration. For NB-IoT, RRC configurable parameters are specified in RLC-Config-NB [5].
Functions of the RLC sub layer are performed by RLC entities. For a RLC entity configured at the eNB, there is a peer RLC entity configured at the UE and vice versa. For an RLC entity configured at the transmitting UE for STCH or SBCCH there is a peer RLC entity configured at each receiving UE for STCH or SBCCH.
An RLC entity receives/delivers RLC SDUs from/to upper layer and sends/receives RLC PDUs to/from its peer RLC entity via lower layers. An RLC PDU can either be a RLC data PDU (see sub clause 6.1.1) or a RLC control PDU (see sub clause 6.1.2). If an RLC entity receives RLC SDUs from upper layer, it receives them through a single SAP between RLC and upper layer, and after forming RLC data PDUs from the received RLC SDUs, the RLC entity delivers the RLC data PDUs to lower layer through a single logical channel. If an RLC entity receives RLC data PDUs from lower layer, it receives them through a single logical channel, and after forming RLC SDUs from the received RLC data PDUs, the RLC entity delivers the RLC SDUs to upper layer through a single SAP between RLC and upper layer. If an RLC entity delivers/receives RLC control PDUs to/from lower layer, it delivers/receives them through the same logical channel it delivers/receives the RLC data PDUs through.
An RLC entity can be configured to perform data transfer in one of the following three modes: Transparent Mode (TM), Unacknowledged Mode (UM) or Acknowledged Mode (AM). Consequently, an RLC entity is categorized as a TM RLC entity, an UM RLC entity or an AM RLC entity depending on the mode of data transfer that the RLC entity is configured to provide.
A TM RLC entity is configured either as a transmitting TM RLC entity or a receiving TM RLC entity. The transmitting TM RLC entity receives RLC SDUs from upper layer and sends RLC PDUs to its peer receiving TM RLC entity via lower layers. The receiving TM RLC entity delivers RLC SDUs to upper layer and receives RLC PDUs from its peer transmitting TM RLC entity via lower layers.
An UM RLC entity is configured either as a transmitting UM RLC entity or a receiving UM RLC entity. The transmitting UM RLC entity receives RLC SDUs from upper layer and sends RLC PDUs to its peer receiving UM RLC entity via lower layers. The receiving UM RLC entity delivers RLC SDUs to upper layer and receives RLC PDUs from its peer transmitting UM RLC entity via lower layers.
An AM RLC entity consists of a transmitting side and a receiving side. The transmitting side of an AM RLC entity receives RLC SDUs from upper layer and sends RLC PDUs to its peer AM RLC entity via lower layers. The receiving side of an AM RLC entity delivers RLC SDUs to upper layer and receives RLC PDUs from its peer AM RLC entity via lower layers.
Figure 4.2.1-1 illustrates the overview model of the RLC sub layer.
Figure 4.2.1-1: Overview model of the RLC sub layer
The following applies to all RLC entity types (i.e. TM, UM and AM RLC entity):
– RLC SDUs of variable sizes which are byte aligned (i.e. multiple of 8 bits) are supported;
– RLC PDUs are formed only when a transmission opportunity has been notified by lower layer (i.e. by MAC) and are then delivered to lower layer.
Description of different RLC entity types are provided below.
4.2.1.1 TM RLC entity
4.2.1.1.1 General
A TM RLC entity can be configured to deliver/receive RLC PDUs through the following logical channels:
– BCCH, BR-BCCH, DL/UL CCCH, PCCH and SBCCH.
Figure 4.2.1.1.1-1: Model of two transparent mode peer entities
A TM RLC entity delivers/receives the following RLC data PDU:
– TMD PDU.
4.2.1.1.2 Transmitting TM RLC entity
When a transmitting TM RLC entity forms TMD PDUs from RLC SDUs, it shall:
– not segment nor concatenate the RLC SDUs;
– not include any RLC headers in the TMD PDUs.
4.2.1.1.3 Receiving TM RLC entity
When a receiving TM RLC entity receives TMD PDUs, it shall:
– deliver the TMD PDUs (which are just RLC SDUs) to upper layer.
4.2.1.2 UM RLC entity
4.2.1.2.1 General
An UM RLC entity can be configured to deliver/receive RLC PDUs through the following logical channels:
– DL/UL DTCH, MCCH, MTCH, SC-MCCH, SC-MTCH or STCH.
Figure 4.2.1.2.1-1: Model of two unacknowledged mode peer entities
An UM RLC entity delivers/receives the following RLC data PDU:
– UMD PDU.
NOTE: HARQ reordering is not applicable for MCCH, MTCH, SC-MCCH, SC-MTCH or STCH reception for sidelink communication.
4.2.1.2.2 Transmitting UM RLC entity
When a transmitting UM RLC entity forms UMD PDUs from RLC SDUs, it shall:
– segment and/or concatenate the RLC SDUs so that the UMD PDUs fit within the total size of RLC PDU(s) indicated by lower layer at the particular transmission opportunity notified by lower layer;
– include relevant RLC headers in the UMD PDU.
4.2.1.2.3 Receiving UM RLC entity
When a receiving UM RLC entity receives UMD PDUs, it shall:
– detect whether or not the UMD PDUs have been received in duplication, and discard duplicated UMD PDUs;
– reorder the UMD PDUs if they are received out of sequence, if rlc-OutOfOrderDelivery is not configured;
– detect the loss of UMD PDUs at lower layers and avoid excessive reordering delays;
– reassemble RLC SDUs from the reordered UMD PDUs (not accounting for RLC PDUs for which losses have been detected) and deliver the RLC SDUs to upper layer in ascending order of the RLC SN;
– discard received UMD PDUs that cannot be re-assembled into a RLC SDU due to loss at lower layers of an UMD PDU which belonged to the particular RLC SDU.
At the time of RLC re-establishment, the receiving UM RLC entity shall:
– if possible, reassemble RLC SDUs from the UMD PDUs that are received out of sequence and deliver them to upper layer;
– discard any remaining UMD PDUs that could not be reassembled into RLC SDUs;
– initialize relevant state variables and stop relevant timers.
4.2.1.3 AM RLC entity
4.2.1.3.1 General
An AM RLC entity can be configured to deliver/receive RLC PDUs through the following logical channels:
– DL/UL DCCH or DL/UL DTCH.
Figure 4.2.1.3.1-1: Model of an acknowledged mode enttiy
An AM RLC entity delivers/receives the following RLC data PDUs:
– AMD PDU;
– AMD PDU segment.
An AM RLC entity delivers/receives the following RLC control PDU:
– STATUS PDU.
4.2.1.3.2 Transmitting side
When the transmitting side of an AM RLC entity forms AMD PDUs from RLC SDUs, it shall:
– segment and/or concatenate the RLC SDUs so that the AMD PDUs fit within the total size of RLC PDU(s) indicated by lower layer at the particular transmission opportunity notified by lower layer.
The transmitting side of an AM RLC entity supports retransmission of RLC data PDUs (ARQ):
– if the RLC data PDU to be retransmitted does not fit within the total size of RLC PDU(s) indicated by lower layer at the particular transmission opportunity notified by lower layer, the AM RLC entity can re-segment the RLC data PDU into AMD PDU segments;
– the number of re-segmentation is not limited.
When the transmitting side of an AM RLC entity forms AMD PDUs from RLC SDUs received from upper layer or AMD PDU segments from RLC data PDUs to be retransmitted, it shall:
– include relevant RLC headers in the RLC data PDU.
4.2.1.3.3 Receiving side
When the receiving side of an AM RLC entity receives RLC data PDUs, it shall:
– detect whether or not the RLC data PDUs have been received in duplication, and discard duplicated RLC data PDUs;
– reorder the RLC data PDUs if they are received out of sequence and if rlc-OutOfOrderDelivery is not configured;
– detect the loss of RLC data PDUs at lower layers and request retransmissions to its peer AM RLC entity;
– if rlc-OutOfOrderDelivery is not configured:
– reassemble RLC SDUs from the reordered RLC data PDUs and deliver the RLC SDUs to upper layer in sequence.
– else:
– reassemble RLC SDUs from the RLC data PDUs and deliver the RLC SDUs to upper layer.
At the time of RLC re-establishment, the receiving side of an AM RLC entity shall:
– if possible, reassemble RLC SDUs from the RLC data PDUs that are received out of sequence and deliver them to upper layer;
– discard any remaining RLC data PDUs that could not be reassembled into RLC SDUs;
– initialize relevant state variables and stop relevant timers.
4.3 Services
4.3.1 Services provided to upper layers
The following services are provided by RLC to upper layer:
– TM data transfer;
– UM data transfer;
– AM data transfer, including indication of successful delivery of upper layers PDUs.
4.3.2 Services expected from lower layers
The following services are expected by RLC from lower layer (i.e. MAC):
– data transfer;
– notification of a transmission opportunity, together with the total size of the RLC PDU(s) to be transmitted in the transmission opportunity.
4.4 Functions
The following functions are supported by the RLC sub layer:
– transfer of upper layer PDUs;
– error correction through ARQ (only for AM data transfer);
– concatenation, segmentation and reassembly of RLC SDUs (only for UM and AM data transfer);
– re-segmentation of RLC data PDUs (only for AM data transfer);
– reordering of RLC data PDUs (only for UM and AM data transfer);
– duplicate detection (only for UM and AM data transfer);
– RLC SDU discard (only for UM and AM data transfer);
– RLC re-establishment;
– Protocol error detection (only for AM data transfer).
4.5 Data available for transmission
For the purpose of MAC buffer status reporting, the UE shall consider the following as data available for transmission in the RLC layer:
– RLC SDUs, or segments thereof, that have not yet been included in an RLC data PDU;
– RLC data PDUs, or portions thereof, that are pending for retransmission (RLC AM).
In addition, if a STATUS PDU has been triggered and t-StatusProhibit is not running or has expired, the UE shall estimate the size of the STATUS PDU that will be transmitted in the next transmission opportunity, and consider this as data available for transmission in the RLC layer.