5.3.16 Unified Access Control

36.3313GPPEvolved Universal Terrestrial Radio Access (E-UTRA)Protocol specificationRadio Resource Control (RRC)Release 17TS

5.3.16.1 General

The purpose of this procedure is to perform access barring check for an access attempt associated with a given Access Category and one or more Access Identities upon request from upper layers according to TS 24.501 [95] or the RRC layer.

BL UE or UE in CE in RRC_CONNECTED uses SystemInformationBlockType25, if broadcasted, acquired when entering RRC_CONNECTED or acquired while T311 is running.

Except for BL UE and UE in CE, after a handover resulting in change of PCell in RRC_CONNECTED the UE shall defer access barring checks until it has obtained valid UAC information (from SystemInformationBlockType25) from the target cell if the SystemInformationBlockType25 is broadcasted. For BL UE or UE in CE after a handover resulting in change of PCell, the UE shall consider systemInformationBlockType25 is not broadcast in the target cell until the UE leaves RRC_CONNECTED.

In NB-IoT, in RRC_CONNECTED, the UE uses MasterInformationBlock-NB / MasterInformationBlock-TDD-NB and SystemInformationBlockType14-NB, if broadcasted, acquired when entering RRC_CONNECTED or acquired while T311 is running.

5.3.16.2 Initiation

Except for NB-IoT, upon initiation of the procedure, the UE shall:

1> if T309 is running for the Access Category:

2> consider the access attempt as barred;

1> else if timer T302 is running and the Access Category is neither ‘2’ nor ‘0’:

2> consider the access attempt as barred;

1> else:

2> if the Access Category is ‘0’:

3> consider the access attempt as allowed;

2> else if SystemInformationBlockType25 is not broadcasted:

3> consider the access attempt as allowed;

2> else if ab-PerRSRP is included:

3> if the establishmentCause received from higher layers is set to a value other than emergency:

4> if ab-PerRSRP is set to thresh0:

5> consider access to the cell as barred when in enhanced coverage as specified in TS 36.304 [4];

4> else if ab-PerRSRP is set to thresh1:

5> if the measured RSRP is less than the first entry in rsrp-ThresholdsPrachInfoList:

6> consider access to the cell as barred;

5> else:

6> consider that only the resources indicated for the first CE level are configured;

4> else if ab-PerRSRP is set to thresh2:

5> if the measured RSRP is less than the second entry in rsrp-ThresholdsPrachInfoList:

6> consider access to the cell as barred;

5> else:

6> consider that only the resources indicated for the first and second CE levels are configured;

4> else if ab-PerRSRP is set to thresh3:

5> if the measured RSRP is less than the third entry in rsrp-ThresholdsPrachInfoList:

6> consider access to the cell as barred;

5> else:

6> consider that only the resources indicated for the first, second, and third CE levels are configured;

2> if the Access Category is not ‘0’, and SystemInformationBlockType25 is broadcasted, and access to the cell is not barred due to ab-PerRSRP:

3> if SystemInformationBlockType25 includes uac-BarringPerPLMN-List and the uac-BarringPerPLMN-List contains an UAC-BarringPerPLMN entry with the plmn-IdentityIndex corresponding to the PLMN selected by upper layers (see TS 24.501 [95]):

4> select the UAC-BarringPerPLMN entry with the plmn-IdentityIndex corresponding to the PLMN selected by upper layers;

4> in the remainder of this procedure, use the selected UAC-BarringPerPLMN entry (i.e. presence or absence of access barring parameters in this entry) irrespective of the uac-BarringForCommon included in SystemInformationBlockType25;

3> else if SystemInformationBlockType25 includes uac-BarringForCommon:

4> in the remainder of this procedure use the uac-BarringForCommon (i.e. presence or absence of these parameters) included in SystemInformationBlockType25;

3> else:

4> consider the access attempt as allowed;

3> if uac-BarringForCommon is applicable or the uac-AC-BarringListType indicated that uac-ExplicitAC-BarringList is used:

4> if the corresponding UAC-BarringPerCatList contains a UAC-BarringPerCat entry corresponding to the Access Category:

5> select the UAC-BarringPerCat entry;

5> if the uac-BarringInfoSetList contain a UAC-BarringInfoSet entry corresponding to the uac-barringInfoSetIndex in the UAC-BarringPerCat:

6> select the UAC-BarringInfoSet entry;

6> perform access barring check for the Access Category as specified in 5.3.16.5, using the UAC-BarringInfoSet as "UAC barring parameter";

5> else:

6> consider the access attempt as allowed;

4> else:

5> consider the access attempt as allowed;

3> else if the uac-AC-BarringListType indicated that uac-ImplicitAC-BarringList is indicated:

4> select the uac-BarringInfoSetIndex corresponding to the Access Category in the uac-ImplicitACBarringList;

4> if the uac-BarringInfoSetList contain the UAC-BarringInfoSet entry corresponding to the selected uac-BarringInfoSetIndex:

5> select the UAC-BarringInfoSet entry;

5> perform access barring check for the Access Category as specified in 5.3.16.5, using the UAC-BarringInfoSet as "UAC barring parameter";

4> else:

5> consider the access attempt as allowed;

3> else:

4> consider the access attempt as allowed;

1> if the access barring check was requested by upper layers:

2> if the access attempt is considered as barred:

3> if timer T302 is running:

4> if timer T309 is running for Access Category ‘2’:

5> inform the upper layer that access barring is applicable for all access categories except categories ‘0’, upon which the procedure ends;

4> else:

5> inform the upper layer that access barring is applicable for all access categories except categories ‘0’ and ‘2’, upon which the procedure ends;

3> else:

4> inform upper layers that the access attempt for the Access Category is barred, upon which the procedure ends;

2> else:

3> inform upper layers that the access attempt for the Access Category is allowed, upon which the procedure ends;

1> else:

2> the procedure ends;

For NB-IoT, upon initiation of the procedure, the UE shall:

1> if T309 is running for the Access Category:

2> consider the access attempt as barred;

1> else:

2> if the Access Category is ‘0’:

3> consider the access attempt as allowed;

2> else if ab-Barring-5GC in MasterInformationBlock-NB / MasterInformationBlock-TDD-NB is set to FALSE:

3> consider the access attempt as allowed;

2> else:

3> if SystemInformationBlockType14-NB includes uac-BarringCommon:

4> in the remainder of this procedure, use the UAC-BarringCommon as UAC-Barring;

3> else if SystemInformationBlockType14-NB includes uac-BarringPerPLMN-List and the uac-BarringPerPLMN-List contains an UAC-Barring entry with the plmn-IdentityIndex corresponding to the PLMN selected by upper layers (see TS 24.501 [95]):

4> select the UAC-Barring entry with the plmn-IdentityIndex corresponding to the PLMN selected by upper layers;

4> in the remainder of this procedure, use the selected UAC-Barring entry as UAC-Barring;

3> else:

4> consider the access attempt as allowed;

3> if UAC-Barring is applicable:

4> if one or more Access Identities are indicated according to TS 24.501 [95]; and

4> if for at least one of these Access Identities the corresponding bit in the uac-BarringForAccessIdentity is set to zero:

5> consider the access attempt as allowed;

4> else if the UAC-BarringPerCatList contains a UAC-BarringPerCat entry corresponding to the Access Category:

5> select the UAC-BarringPerCat entry;

6> perform access barring check for the Access Category as specified in 5.3.16.5, using the uac-BarringForAccessIdentity and the UAC-BarringPetCat entry as "UAC barring parameter";

5> else:

6> consider the access attempt as allowed;

1> if the access barring check was requested by upper layers:

2> if the access attempt is considered as barred:

3> inform upper layers that the access attempt for the Access Category is barred, upon which the procedure ends;

2> else:

3> inform upper layers that the access attempt for the Access Category is allowed, upon which the procedure ends;

1> else:

2> the procedure ends;

5.3.16.3 Void

5.3.16.4 T302, T309 expiry or stop (Barring alleviation)

Except for NB-IoT, if the UE is connected to 5GC, the UE shall:

1> if timer T302 expires or is stopped:

2> for each Access Category for which T309 is not running:

3> consider the barring for this Access Category to be alleviated:

1> else if timer T309 corresponding to an Access Category other than ‘2’ expires or is stopped, and if timer T302 is not running:

2> consider the barring for this Access Category to be alleviated;

1> else if timer T309 corresponding to the Access Category ‘2’ expires or is stopped:

2> consider the barring for this Access Category to be alleviated;

1> When barring for an access category is considered being alleviated:

2> if the Access Category was informed to upper layers as barred:

3> inform upper layers about barring alleviation for the Access Category;

2> if barring is alleviated for Access Category ‘8’; or

2> if barring is alleviated for Access Category ‘2’:

3> perform actions specified in 5.3.17;

For NB-IoT, if the UE is connected to 5GC, the UE shall:

1> if timer T309 expires or is stopped for one Access Category:

2> consider the barring for this Access Category to be alleviated;

2> if the Access Category was informed to upper layers as barred:

3> inform upper layers about barring alleviation for the Access Category;

5.3.16.5 Access barring check

The UE shall:

1> if one or more Access Identities equal to 1, 2, 11, 12, 13, 14, or 15 are indicated according to TS 24.501 [95], and

1> if for at least one of these Access Identities the corresponding bit in the uac-BarringForAccessIdentity contained in "UAC barring parameter" is set to zero:

2> consider the access attempt as allowed;

1> else:

2> if the establishment of the RRC connection is the result of relase with redirect with mpsPriorityIndication (either in NR or E-UTRAN); and

2> if the bit corresponding to Access Identity 1 in the uac-BarringForAccessIdentity contained in the "UAC barring parameter" is set to zero:

3> consider the access attempt as allowed;

2> else if Access Identity 3 is indicated:

3> draw a random number ‘rand‘ uniformly distributed in the range: 0 ≤ rand < 1;

3> if ‘rand‘ is lower than the value indicated by uac-BarringFactorForAI3 included in "UAC barring parameter":

4> consider the access attempt as allowed;

3> else:

4> consider the access attempt as barred;

2> else:

3> draw a random number ‘rand‘ uniformly distributed in the range: 0 ≤ rand < 1;

3> if ‘rand‘ is lower than the value indicated by uac-BarringFactor included in "UAC barring parameter":

4> consider the access attempt as allowed;

3> else:

4> consider the access attempt as barred;

1> if the access attempt is considered as barred:

2> draw a random number ‘rand‘ that is uniformly distributed in the range 0 ≤ rand < 1;

2> start timer T309 for the Access Category with the timer value calculated as follows, using the uac-BarringTime included in "UAC barring parameter":

"Tbarring" = (0.7+ 0.6 * rand) * uac-BarringTime;