In this chapter we shall see the state variables that are used in UM and AM mode.
SN = Sequence Number.
All state variables related to AM data transfer can take values from 0 to 4095 for 12 bit SN or from 0 to 262143 for 18 bit SN.
All state variables related to UM data transfer can take values from 0 to 63 for 6 bit SN or from 0 to 4095 for 12 bit SN.
Below are the state variables of transmitting side of each AM RLC entity:
1. TX_Next_Ack: Acknowledgement state variable
It is a state variable that holds the value of SN of the next RLC SDU for which a positive ack is to be received in sequence
2. TX_Next – Send state variable
This state variable holds the value of the SN to be assigned for the next newly generated AMD PDU.
3. POLL_SN – Poll send state variable
This state variable holds the value of the highest SN of the AMD PDU among the AMD PDUs submitted to lower layer when POLL_SN is set according to sub clause 5.3.3.2. It is initially set to 0.
Below are the counters of transmitting side of each AM RLC entity:
1. PDU_WITHOUT_POLL – Counter
This counter is initially set to 0. It counts the number of AMD PDUs sent since the most recent poll bit was transmitted.
2. BYTE_WITHOUT_POLL – Counter
This counter is initially set to 0. It counts the number of data bytes sent since the most recent poll bit was transmitted.
3. RETX_COUNT – Counter
This counter counts the number of retransmissions of an RLC SDU or RLC SDU segment
Below are the state variables of receiving side of each AM RLC entity:
1. RX_Next – Receive state variable
This state variable holds the value of the SN following the last in-sequence completely received RLC SDU
2. RX_Next_Status_Trigger – t-Reassembly state variable
This state variable holds the value of the SN following the SN of the RLC SDU which triggered t-Reassembly.
3. RX_Highest_Status – Maximum STATUS transmit state variable
This state variable holds the highest possible value of the SN which can be indicated by “ACK_SN” when a STATUS PDU needs to be constructed. It is initially set to 0.
4. RX_Next_Highest – Highest received state variable
This state variable holds the value of the SN following the SN of the RLC SDU with the highest SN among received RLC SDUs. It is initially set to 0.
Below are the state variables of transmitting UM RLC entity:
1. TX_Next – UM send state variable
This state variable holds the value of the SN to be assigned for the next newly generated UMD PDU with segment.
Below are the state variables of receiving UM RLC entity :
1. RX_Next_Reassembly – UM receive state variable
This state variable holds the value of the earliest SN that is still considered for reassembly. It is initially set to 0.
2. RX_Timer_Trigger – UM t-Reassembly state variable
This state variable holds the value of the SN following the SN which triggered t-Reassembly.
3. RX_Next_Highest– UM receive state variable
This state variable holds the value of the SN following the SN of the UMD PDU with the highest SN among received UMD PDUs.
Constants
a. AM_Window_Size: Used by transmitting and receiving of AM entity. AM_Window_Size = 2048 when a 12 bit SN is used, AM_Window_Size = 131072 when an 18 bit SN is used.
b. UM_Window_Size: This constant is used by the receiving UM RLC entity to define SNs of those UMD SDUs that can be received without causing an advancement of the receiving window. UM_Window_Size = 32 when a 6 bit SN is configured, UM_Window_Size = 2048 when a 12 bit SN is configured.
Timers
a. t-PollRetransmit: This timer is used by transmitting AM RLC in order to retransmit a poll.
b. t-Reassembly: This timer is used by receiving AM and UM RLC in order to detect loss of RLC PDUs at lower layer.
c. t-StatusProhibit: This timer is used by the receiving side of an AM RLC entity in order to prohibit transmission of a STATUS PDU
Configurable parameters by RRC layer
a. maxRetxThreshold: This counter is used to limit the number of retransmissions of an RLC SDU
b. pollPDU: It is used to trigger a poll for every pollPDU.
c. pollByte: It to trigger a poll for every pollByte bytes
Source TS 38.322