Radio Link Control (RLC)
Services
- RLC connection establishment/release
- Performs establishment or release of RLC connections - Transparent data transfer
- Transmits higher layer PDUs without adding any protocol information, possibly including segmentation and reassembly functionality - Unacknowledged data transfer
- Transmits higher layer PDUs without guaranteeing delivery to peer entity. The unacknowledged data transfer mode has the following characteristics:
Detection of erroneous data: by using a sequence-number check function, the RLC
sublayer delivers only SDUs to the receiving higher layer that are free of transmission
errors.
Unique delivery: using duplication detection, the RLC sublayer shall delivers each SDU only
once to the receiving upper layer. using duplication detection
Immediate delivery: the receiving RLC sublayer entity shall delivers an SDU to the higher
layer receiving entity as soon as it arrives at the receiver. - Acknowledged data transfer
- Transmits higher layer PDUs and guarantees delivery to peer entity.
- In case RLC is unable to deliver data correctly, user of RLC at transmitting side is notified
- In-sequence and out-of-sequence delivery supported
- Acknowledged data transfer mode has these characteristics:
Error-free delivery: Ensured by means of retransmission; receiving entity delivers only
error-free SDUs to higher layer
Unique delivery: RLC sublayer delivers each SDU only once to receiving upper layer using
duplication detection
In-sequence delivery: RLC sublayer provides support for in-order delivery of SDUs.
RLC sublayer delivers SDUs to receiving higher layer entity in same order as transmitting
higher layer entity submits to RLC sublayer.
Out-of-sequence delivery: As an alternative to in-sequence delivery, the receiving RLC
entity delivers SDUs to higher layer in a different order than they were submitted to the
RLC sublayer at the transmitting side.
Functions
- Segmentation and reassembly
- For variable-length of higher layer PDUs into/from smaller RLC Payload Units (PUs)
- PDU size is adjustable to actual set of transport formats - Concatenation
- If contents of RLC SDU do not fill an integer number of RLC PUs, first segment of next RLC SDU may be put into RLC PU in concatenation with last segment of previous RLC SDU - Padding
- When concatenation is not applicable and remaining data to be transmitted does not fill entire RLC PDU of given size, remainder of data field is filled with padding bits - Transfer of user data
- Conveyance of data between users of RLC services
- RLC supports acknowledged, unacknowledged and transparent data transfer
- QoS setting controls transfer of user data - Error correction
- Error correction by retransmission (e.g. Selective Repeat, Go Back N, or a Stop-and-Wait ARQ) in acknowledged data transfer mode - In-sequence delivery of higher layer PDUs
- Preserves order of higher layer PDUs, submitted for transfer by RLC using acknowledged data transfer service
- If function is not used, out-of-sequence delivery is provided - Duplicate Detection
- Detects duplicated received RLC PDUs and ensures that resultant higher Layer PDU is delivered only once to upper layer - Flow control
- Allows an RLC receiver to control rate at which peer RLC transmitting entity may send information - Sequence number check (Unacknowledged data transfer mode)
- Guarantees integrity of reassembled PDUs and provides a mechanism for detection of corrupted RLC SDUs through checking sequence number in RLC PDUs when reassembled into a RLC SDU
- Corrupted RLC SDU will be discarded - Protocol error detection and recovery
- Detects and recovers from errors in operation of RLC protocol - Ciphering
- Prevents unauthorized acquisition of data
- Ciphering is performed in RLC layer for non-transparent RLC mode - Suspend/resume function
- Suspension and resumption of data transfer as in LAPDm (ref. GSM 04.05)
