Tracking Area is a logical concept of an area where a user can move around without updating the MME. The network allocates a list with one or more TAs to the user. In certain operation modes, the UE may move freely in all TAs of the list without updating the MME. You can think of 'Tracking Area' as 'Routing Area' in UMTS.
The MME needs this area for one reason. A UE in ECM-IDLE has no signalling connection, so the MME knows its location only at the granularity of the areas the UE registered in. When downlink data arrives for that UE, the MME pages it in every cell of those areas. Let's look at how a Tracking Area is identified, how the list of Tracking Areas works, and what the UE does at a border.
The page covers the following topics.
- How is a Tracking Area identified ?
- What is the Tracking Area List ?
- Why are Tracking Areas needed, and what happens at a border ?
- Reference
How is a Tracking Area identified ?
A cell has to tell every UE which Tracking Area it belongs to, and the UE has to compare that with what it registered. So the identity has to be short enough for SIB1 and unique across all networks.
Each eNobe broadcasts a special tracking area code (TAC) to indicate to which Tracking Area the eNodeB belong to and the TAC is unique within a PLMN. (Since PLMN is a unique number allocated to each of the system operator and TAC is a unique in a PLMN, if you combine these two numbers you would have a globally unique number. This number (PLMN + TAC) is called Tracking Area Identity (TAI)
TS 23.003 defines the TAI as MCC + MNC + TAC. The TAC is a fixed length code of 2 octets, coded in full hexadecimal, and the values 0000 and FFFE are reserved. The UE uses those reserved values only in special cases when it has no valid TAI.
Tracking Area for each eNodeB is broadcast by SIB1 as follows.
Decoded message capture,
+-c1 ::= CHOICE [systemInformationBlockType1]
+-systemInformationBlockType1 ::= SEQUENCE [000]
+-cellAccessRelatedInfo ::= SEQUENCE [0]
| +-plmn-IdentityList ::= SEQUENCE OF SIZE(1..6) [1]
| | +-PLMN-IdentityInfo ::= SEQUENCE
| | +-plmn-Identity ::= SEQUENCE [1]
| | | +-mcc ::= SEQUENCE OF SIZE(3) OPTIONAL:Exist
| | | | +-MCC-MNC-Digit ::= INTEGER (0..9) [0]
| | | | +-MCC-MNC-Digit ::= INTEGER (0..9) [0]
| | | | +-MCC-MNC-Digit ::= INTEGER (0..9) [1]
| | | +-mnc ::= SEQUENCE OF SIZE(2..3) [2]
| | | +-MCC-MNC-Digit ::= INTEGER (0..9) [0]
| | | +-MCC-MNC-Digit ::= INTEGER (0..9) [1]
| | +-cellReservedForOperatorUse ::= ENUMERATED [notReserved]
| +-trackingAreaCode ::= BIT STRING SIZE(16) [0000000000000001]
| +-cellIdentity ::= BIT STRING SIZE(28) [0000000000000000000100000000]
Let's read the capture. The MCC digits are 0, 0, 1 and the MNC digits are 0, 1, so the PLMN is 001-01, a test network. trackingAreaCode is 0000000000000001, which is TAC 0x0001. The TAI of this cell is therefore MCC 001, MNC 01, TAC 0x0001.
cellIdentity sits right next to trackingAreaCode, but it identifies the cell, not the area. It has 28 bits, and for a macro eNB the 20 leftmost bits are the eNB ID in TS 36.413. In this capture the eNB ID is 1 and the last 8 bits, the cell within that eNB, are 0.
TS 36.331 v19.3.0 still defines TrackingAreaCode as BIT STRING (SIZE (16)). Release 17 adds trackingAreaList-r17 in PLMN-IdentityInfo-v1700, so one cell can broadcast up to maxTAC-r17 = 12 TACs per PLMN. This is used for satellite access, where one cell can cover more than one Tracking Area.
TAI = MCC + MNC + TAC : the TAC is unique only inside a PLMN, so the PLMN code makes it globally unique.The TAC is 16 bits : SIB1 carries it as trackingAreaCode, BIT STRING (SIZE (16)), and 0000 and FFFE are reserved.trackingAreaCode and cellIdentity are different things : several cells share one TAC, while cellIdentity is unique per cell.
What is the Tracking Area List ?
If the UE registered in only one Tracking Area, it would update the MME every time it crossed a border. LTE avoids that by giving the UE a list of Tracking Areas instead of a single one.
UE stores a group of TAI and this group of TAI maintained in a UE is called Tracking Area List. UE does not need to go through Tracking Area Update procedure when it moves along this TAI.
The MME sends this list as the Tracking area identity list IE in Attach Accept and in Tracking Area Update Accept. TS 24.301 allows up to 16 different TAIs in one list, in an IE of 8 to 98 octets. All Tracking Areas in the list are served by the same MME.
The MME chooses the list. TS 23.401 says that when the centre of the list is close to the current location of the UE, the chance of another quick Tracking Area Update goes down. So two UEs in the same cell can receive different lists, each centred on its own position or history.
This is where the Routing Area comparison above stops being exact. In UTRAN and GERAN, the UE is registered in only one Routing Area at a time. In E-UTRAN, the UE is registered in all Tracking Areas of its list at once, and TS 23.401 notes this difference explicitly.
The UE registers in a list, not in one area : the MME sends the Tracking area identity list in Attach Accept and TAU Accept.One list holds up to 16 TAIs : all of them are served by the same MME.The list is per UE : the MME can centre it on the UE, which is different from a fixed Routing Area in UMTS.
Why are Tracking Areas needed, and what happens at a border ?
Tracking Area design is a trade-off between two kinds of signalling. Paging goes to every cell in the list, and Tracking Area Updates come from every UE that leaves the list. The three questions below are the ones to ask when you plan the areas.
Why we need this kind of grouping, called Tracking Area ?
What would happen if we didn't do a good job in Tracking Area Design ?
What UE is supposed to do when it move from a Tracking Area to another Tracking Area ?
These are some of the questions you have to find answers. (I will talk about these later in somewhere else)
The rest of this section gives short answers to all three.
The first answer is paging load. The MME knows where an idle UE is only to the accuracy of its Tracking Area List, so it pages the UE in all cells of that list. Without any grouping, the MME would have to page the whole network, or the UE would have to report every cell change.
The second answer is the trade-off itself. If the areas are too large, each paging message goes to many cells, and paging capacity on PCCH fills up. If the areas are too small, UEs cross borders often and send many Tracking Area Updates. Where a border runs through a busy road or a dense area, UEs can move back and forth across it, and each crossing can cause another update. A list that covers the areas on both sides of such a border reduces that.
The third answer is the Tracking Area Update. TS 23.401 lists the triggers, and the first one is that the UE has entered a new TA that is not in its list of TAIs. The UE also runs a periodic update when T3412 expires, and T3412 has a default of 54 minutes in TS 24.301. TS 24.301 holds the complete list of triggers.
Tracking Areas bound the paging area : the MME pages an idle UE in all cells of its Tracking Area List.Large areas cost paging, small areas cost updates : the design has to balance paging load against Tracking Area Update load.Leaving the list triggers a Tracking Area Update : the UE also updates periodically when T3412 expires, 54 minutes by default.