12.3 Ack/Nack Description

3GPP44.060General Packet Radio Service (GPRS)Mobile Station (MS) - Base Station System (BSS) interfaceRadio Link Control / Medium Access Control (RLC/MAC) protocolRelease 17TS

The Ack/Nack Description information element contains the RLC parameters used to acknowledge or negatively acknowledge a group of RLC data blocks.

Table 12.3.1: Ack/Nack Description information elements

< Ack/Nack Description IE > ::=

< FINAL_ACK_INDICATION : bit (1) >

< STARTING_SEQUENCE_NUMBER : bit (7) >

< RECEIVED_BLOCK_BITMAP : bit (64) > ;

Table 12.3.2: Ack/Nack Description information element details

FINAL_ACK_INDICATION (1 bit field)
This field indicates whether the entire TBF is being acknowledged. If, in case the uplink TBF is operating in non-extended uplink TBF mode, the entire TBF is being acknowledged, the SSN and RBB fields contain no information and shall be ignored. When acknowledging the entire TBF in extended uplink TBF mode the SSN and RBB fields shall be interpreted.

0 retransmission are requested and the TBF is incomplete
1 no retransmissions are requested and this message indicates acknowledgement of all RLC data in the TBF

STARTING_SEQUENCE_NUMBER (SSN) (7 bit field)
The SSN contains the value of V(R) when this information element was transmitted. This field is encoded as the binary representation of V(R).
Range 0 to 127

RECEIVE_BLOCK_BITMAP (RBB) (64 bit field)
The RBB is a bitmap representing Block Sequence Numbers. The bitmap is indexed relative to SSN as follows:

BSN = (SSN – bit_number) modulo 128, for bit_number = 1 to 64.

The BSN values represented range from (SSN – 1) mod 128 to (SSN – 64) mod 128.

The value of each bit is encoded as:

0 Negative acknowledgement of the RLC data block with BSN = (SSN – bit_number) mod 128

1 Positive acknowledgement of the RLC data block with BSN = (SSN – bit_number) mod 128

Mapping of the bitmap is defined on sub-clause 11.

12.3.1 EGPRS Ack/Nack Description

The Ack/Nack Description information element contains the RLC parameters used to acknowledge or negatively acknowledge a group of RLC data blocks. The number of bits available for the bitmap depends on the inclusion or exclusion of other information elements in the used message.

Table 12.3.1.1: EGPRS Ack/Nack Description information elements

< EGPRS Ack/Nack Description IE > ::=

0 < EGPRS Ack/Nack Description struct > — This IE fills rest of message

| 1 < Length L : bit (8) > — Value part of this IE is of length L

{ < bit (val(Length L)) > & < EGPRS Ack/Nack Description struct > } ;

< EGPRS Ack/Nack Description struct > ::=

< FINAL_ACK_INDICATION : bit (1) >

< BEGINNING_OF_WINDOW : bit (1) >

< END_OF_WINDOW : bit (1) >

< STARTING_SEQUENCE_NUMBER : bit (11) >

{ 0 | 1 < COMPRESSED_BITMAP_LENGTH: bit (7) >

< COMPRESSED_BITMAP_STARTING_COLOR_CODE: bit (1) >

< COMPRESSED_RECEIVED_BLOCK_BITMAP :
bit (val(COMPRESSED_BITMAP_LENGTH)) > }

< UNCOMPRESSED_RECEIVED_BLOCK_BITMAP: bit** > ;

Table 12.3.1.2: EGPRS Ack/Nack Description information element details

LENGTH L (8 bit field)
Range 15 to 255
This field represents the length of the value part (i.e. the EGPRS Ack/Nack Description struct) of this information element. If this field is not included, this information element fills the remaining part of the message.

FINAL_ACK_INDICATION (1 bit field)
This field indicates whether the entire TBF is being acknowledged. If, in case the uplink TBF is operating in non-extended uplink TBF mode, the entire TBF is being acknowledged, the SSN, CRBB and URBB fields contain no information and shall be ignored. When acknowledging the entire TBF in extended uplink TBF mode, the SSN, CRBB and URBB fields shall be interpreted if present.

0 retransmissions are requested and the TBF is incomplete.
1 no retransmissions are requested and this message indicates acknowledgement of all RLC data in the TBF.

BEGINNING_OF_WINDOW (BOW, 1 bit field)
This bit indicates if the Ack/Nack bitmap starts at the beginning of the window.

0 SSN not equal to (V(Q)+1) mod 2048.
1 SSN = (V(Q) +1) mod 2048

END_OF_WINDOW (EOW, 1 bit field)
This bit indicates if the end of the receiver window is included in the bitmap(s).

0 [V(R) – 1] modulo SNS is not included in the bitmap.
1 [V(R) – 1] modulo SNS is included in the bitmap.

STARTING_SEQUENCE_NUMBER (SSN) (11 bit field)
Range 0 to 2047
The SSN indicates the Block Sequence Number of the first RLC block for which the Ack/Nack receipt status is indicated within the bitmap. The SSN is determined using S/P, PBSN and V(Q).

COMPRESSED_BITMAP_LENGTH (Lc) (7 bit field)
Range 0 to 127
This field represents the length of the compressed bitmap. Compression is carried out using T.4 run length coding.

COMPRESSED_BITMAP_STARTING_COLOR_CODE (1 bit field)
This bit indicates if the first code word in the compressed bitmap (i.e. CRBB) represents a run length of ones or a run length of zeros.
0 First code word in CRBB represents run length of zeros.
1 First code word in CRBB represents run length of ones.

COMPRESSED_RECEIVE_BLOCK_BITMAP (CRBB) (Lc bit field)
The CRBB is a compressed bitmap. Compression is carried out starting at SSN using modified T.4 run length coding. The number of bits (Lc) available for Ack/Nack Description depends on the inclusion of other information elements in the used message.

The packing order of the CRBB shall be such that the codeword (or pair of make up/terminating codewords) corresponding to the run including the SSN starts at the most significant bit of the CRBB, and codewords (or pairs of make-up/terminating codewords) corresponding to runs including higher and successively increasing sequence numbers are placed in bits of successively decreasing significance.

NOTE: The URBB is packed in the opposite order.

UNCOMPRESSED_RECEIVE_BLOCK_BITMAP (URBB) (Lu bit field)
The URBB is an uncompressed bitmap, which fills the remainder of this information element upto L bits, where L is the number of bits available for the EGPRS Ack/Nack description struct. The URBB field length, Lu, is determined by:

Lu = L-Lc-23, when the compressed received block bitmap is included, or by
Lu = L-15, when the compressed received block bitmap is not included:

The bits in URBB, denoted here by index i, are numbered from i=1 (lowest order value) to i=Lu (highest order value). The value of each bit in the bitmap is encoded as following:

0 Negative acknowledgement of the RLC data block with BSN = (ESN_CRBB + i) modulo SNS, and

1 Positive acknowledgement of the RLC data block with BSN = (ESN_CRBB + i) modulo SNS, where
ESN_CRBB is the ending block sequence number of CRBB and, if no CRBB is included, ESN_CRBB = (SSN – 1) modulo SNS.

12.3.2 FLO Ack/Nack Description

The FLO Ack/Nack Description information element contains the RLC parameters used to acknowledge or negatively acknowledge a group of RLC data blocks.

Table 12.3.2.1: FLO Ack/Nack Description information elements

< FLO Ack/Nack Description IE > ::=

< FLO Ack/Nack Description struct > ;

< FLO Ack/Nack Description struct > ::=

< BEGINNING_OF_WINDOW : bit (1) >

< END_OF_WINDOW : bit (1) >

< STARTING_SEQUENCE_NUMBER : bit (10) >

{ 0 < COMPRESSED_BITMAP_LENGTH: bit (7) >

< COMPRESSED_BITMAP_STARTING_COLOR_CODE: bit (1) >

< COMPRESSED_RECEIVED_BLOCK_BITMAP: bit (val(COMPRESSED_BITMAP_LENGTH)) >

| 1 < UNCOMPRESSED_RECEIVED_BLOCK_BITMAP: bit** > } ;

Table 12.3.2.2: Ack/Nack Description information element details

BEGINNING_OF_WINDOW (BOW, 1 bit field)
This bit indicates whether the status of the RLC data block corresponding to V(Q) i.e. ‘0’ is included in the reported bitmap or not.

0 the reported bitmap does not cover V(Q)
1 the reported bitmap covers V(Q)

END_OF_WINDOW (EOW, 1 bit field)
This bit indicates whether the end of the receiver window is included in the reported bitmap or not.
0 [V(R) – 1] modulo SNS is not included in the reported bitmap.
1 [V(R) – 1] modulo SNS is included in the reported bitmap.

STARTING_SEQUENCE_NUMBER (SSN) (10 bit field)
Range 0 to 1023
The SSN indicates the Block Sequence Number of the last RLC block for which the Ack/Nack receipt status is indicated within the reported bitmap.

COMPRESSED_BITMAP_LENGTH (Lc) (7 bit field)
Range 0 to 127
This field represents the length of the compressed bitmap. Compression is carried out using T.4 run length coding.

COMPRESSED_BITMAP_STARTING_COLOR_CODE (1 bit field)
This bit indicates if the first code word in the compressed bitmap (i.e. CRBB) represents a run length of ones or a run length of zeros.
0 First code word in CRBB represents run length of zeros.
1 First code word in CRBB represents run length of ones.

COMPRESSED_RECEIVE_BLOCK_BITMAP (CRBB) (Lc bit field)
The CRBB is a compressed bitmap. Compression is carried out starting at SSN-1 and going in decreasing order of the BSN, using modified T.4 run length coding.

The packing order of the CRBB shall be such that the codeword (or pair of make up/terminating codewords) corresponding to the run including the SSN-1 starts at the least significant bit of the CRBB, and codewords (or pairs of make-up/terminating codewords) corresponding to runs including lowed and successively decreasing sequence numbers are placed in bits of successively increasing significance.

UNCOMPRESSED_RECEIVE_BLOCK_BITMAP (URBB) (Lu bit field)
The URBB is an uncompressed bitmap of length Lu bits.

The bits in URBB, denoted here by index i, are numbered from i=1 (highest order value i.e. corresponding to SSN-1) to i=Lu (lowest order value). The value of each bit in the bitmap is encoded as following:

0 Negative acknowledgement of the RLC data block with BSN = (SSN – 1 – i) modulo SNS, and

1 Positive acknowledgement of the RLC data block with BSN = (SSN – 1 – i) modulo SNS

12.3.3 EGPRS Ack/Nack Description DLMC

The EGPRS Ack/Nack Description DLMC information element contains the RLC parameters used to acknowledge or negatively acknowledge a group of RLC data blocks for a DLMC configuration. The number of bits available for the bitmap depends on the inclusion or exclusion of other information elements in the used message.

Table 12.3.3.1: EGPRS Ack/Nack Description DLMC information elements

< EGPRS Ack/Nack Description DLMC IE > ::=

0 < EGPRS Ack/Nack Description struct > — This IE fills rest of message

| 1 < Length L : bit (8) > — Value part of this IE is of length L

{ < bit (val(Length L)) > & < EGPRS Ack/Nack Description struct > } ;

< EGPRS Ack/Nack Description struct > ::=

< FINAL_ACK_INDICATION : bit (1) >

< BEGINNING_OF_WINDOW : bit (1) >

< END_OF_WINDOW : bit (1) >

{ 0 < STARTING_SEQUENCE_NUMBER : bit (11) >

| 1 < STARTING_SEQUENCE_NUMBER : bit (13) }

{ 0 | 1 < COMPRESSED_BITMAP_LENGTH: bit (8) >

< COMPRESSED_BITMAP_STARTING_COLOR_CODE: bit (1) >

< COMPRESSED_RECEIVED_BLOCK_BITMAP :
bit (val(COMPRESSED_BITMAP_LENGTH)) > }

< UNCOMPRESSED_RECEIVED_BLOCK_BITMAP: bit** > ;

Table 12.3.3.2: EGPRS Ack/Nack Description DLMC information element details

LENGTH L (8 bit field)
See sub-clause 12.3.1.

FINAL_ACK_INDICATION (1 bit field)
See sub-clause 12.3.1.

BEGINNING_OF_WINDOW (BOW, 1 bit field)
See sub-clause 12.3.1.

END_OF_WINDOW (EOW, 1 bit field)
See sub-clause 12.3.1.

STARTING_SEQUENCE_NUMBER (SSN) (11 bit field)
This value is included when a DLMC configuration uses a SNS of 2048 (see sub-clause 5.13).

Range 0 to 2047
The SSN indicates the Block Sequence Number of the first RLC block for which the Ack/Nack receipt status is indicated within the bitmap. The SSN is determined using S/P, PBSN and V(Q).

STARTING_SEQUENCE_NUMBER (SSN) (13 bit field)
This value is included when a DLMC configuration uses a SNS of 8192 (see sub-clause 5.13).

Range 0 to 8191
The SSN indicates the Block Sequence Number of the first RLC block for which the Ack/Nack receipt status is indicated within the bitmap. The SSN is determined using S/P, PBSN and V(Q).

COMPRESSED_BITMAP_LENGTH (Lc) (7 bit field)
See sub-clause 12.3.1.

COMPRESSED_BITMAP_STARTING_COLOR_CODE (1 bit field)
See sub-clause 12.3.1.

COMPRESSED_RECEIVE_BLOCK_BITMAP (CRBB) (Lc bit field)
See sub-clause 12.3.1.

UNCOMPRESSED_RECEIVE_BLOCK_BITMAP (URBB) (Lu bit field)
See sub-clause 12.3.1.