You are on page 1of 47

GSM Mobility Management

Introduction
Location area (LA) is the basic unit for location tracking. Every LA consists of BTSs that communicate with the MSs over radio links Major task of Mobility Management is to update the location of an MS when it moves from one LA to another.

September 30, 2005

Girish Kumar Patnaik

Introduction
Location update procedure is referred to as registration. BTSs periodically broadcasts the corresponding LA addresses to the MSs When an MS receives an an LA address different from the one stored in its memory, it sends a registration message to the network

September 30, 2005

Girish Kumar Patnaik

GSM Location Area Hierarchy

September 30, 2005

Girish Kumar Patnaik

GSM Basic Location Update Procedure


In GSM, registration or location update occurs when an MS moves from one LA to another. Three cases of location update:
Case 1. Inter-LA Movement Case 2. Inter-MSC Movement Case 3. Inter-VLR Movement
September 30, 2005 Girish Kumar Patnaik 5

Inter-LA Registration Message Flow

September 30, 2005

Girish Kumar Patnaik

Inter-LA Movement
Two LAs belong to the same MSC. Four major steps:
Step 1. MS sends a location update request message (MSBTSMSC) .
Parameters included: Previous LA, previous MSC and previous VLR. IMSI (International Mobile Subscriber Identity) is used to identify MS. However, the MS identifies itself by the Temporary Mobile Subscriber Identity (TMSI). TMSI is used to avoid sending the IMSI on the radio path. TMSI is temporary identity is allocated to an MS by the VLR at inter-VLR registration
September 30, 2005 Girish Kumar Patnaik 7

Inter-LA Movement
Step 2. The MSC forwards the location update request to the VLR by a TCAP message, MAP_UPDATE_LOCATION_AREA.
Parameter includes: Address of the MSC, TMSI, previous Location Area Identification (LAI), target LAI, Other related information

Steps 3 and 4.
Part I. The VLR find that both LA1 and LA2 belong to the same MSC. Part II. The VLR updates the LAI field of the MS. Part III. The VLR replies an ACK to the MS through the MSC.
September 30, 2005 Girish Kumar Patnaik 8

Inter-MSC Registration Message Flow

September 30, 2005

Girish Kumar Patnaik

Inter-MSC Movement
The two LAs belong to different MSCs of the same VLR. The process is:
Steps 1 and 2. MS sends a location update request message (MSBTSMSC) . Step 3.
Part I. VLR1 finds that the LA1 and LA2 belong to MSC1 and MSC2, respectively. Two MSCs are connected to VLR1. Part II. VLR1 updates the LAI and MSC fields of MS. Part III. The VLR1 derives the HLR address of the MS from the MSs IMSI.

September 30, 2005

Girish Kumar Patnaik

10

Inter-MSC Movement
Step 3.
Part IV. The VLR1 sends the MAP_UPDATE_LOCATION to the HLR. Parameter includes: IMSI, target MSC Address, VLR Address, other related information

Step 4. HLR updates the MSC number field of the MS. An acknowledgement is sent to VLR1. Steps 5 and 6. The acknowledgement is forwarded to the MS.
September 30, 2005 Girish Kumar Patnaik 11

Inter-VLR Registration Message Flow

September 30, 2005

Girish Kumar Patnaik

12

Inter-VLR Movement
Two LAs belong to MSCs connected to different VLRs. The process is:
Step 1. MS sends a location update request. MSC2 sends MAP_UPDATE_LOCATION_AREA to VLR 2 with MSs TMSI. Steps 2 and 3.
VLR2 does not have the record of MS. VLR2 identifies the address the VLR1 and sends MAP_SEND_IDENTIFICATION (with TMSI) to VLR1. VLR1 sends IMSI to VLR2.

September 30, 2005

Girish Kumar Patnaik

13

Inter-VLR Movement
Steps 4 and 5.
VLR2 creates a VLR record for the MS. VLR2 sends a registration message to HLR. HLR updates the record of the MS. HLR sends an acknowledge back to VLR2.

Step 6.
VLR2 generates a new TMSI and sends it to the MS.

Steps 7 and 8.
The obsolete record of the MS in VLR1 is deleted.
September 30, 2005 Girish Kumar Patnaik 14

Call Origination Operation

September 30, 2005

Girish Kumar Patnaik

15

GSM Basic Call Origination


The process is
Step 1. MS sends the call origination request to MSC. Step 2. MSC forwards the request to VLR with message MAP_SEND_INFO_FOR_OUTGOING_CALL. Step 3. VLR checks MSs profile and sends MAP_SEND_INFO_FOR_OUTGOING_CALL_ack to MSC to grant the call request. Step 4. MSC sets up the trunk according to the standard PSTN call setup procedure.

September 30, 2005

Girish Kumar Patnaik

16

Call Termination Message Flow

September 30, 2005

Girish Kumar Patnaik

17

Call Termination
Routing information for call termination can be obtained form the serving VLR. The basic call termination process:
Step 1. A MSs ISDN (MSISDN) number is dialed by a PSTN user. The call is routed to a gateway MSC by an SS7 ISUP IAM message. Step 2. GMSC sends MAP_SEND_ROUTING_INFORMATION with the MSISDN to HLR.

September 30, 2005

Girish Kumar Patnaik

18

Call Termination
Step 3. HLR sends a MAP_PROVIDE_ROAMING_NUMBER to VLR.
Parameter included: IMSI of the MS, the MSC number.

Steps 4 and 5. VLR creates Mobile Subscriber Roaming Number (MSRN) by using the MSC number stored in the VLR record.
MSRN is sent back to the gateway MSC through HLR. MSRN provides the address of the target MSC where the MS resides.

Step 6. An SS7 ISUP IAM message is directed from the gateway MSC to the target MSC to setup the voice trunk.
September 30, 2005 Girish Kumar Patnaik 19

Mobility Databases
The hierarchical databases used in GSM.
The home location register (HLR) is a database used for MS information management. The visitor location register (VLR) is the database of the service area visited by an MS.

September 30, 2005

Girish Kumar Patnaik

20

Home Location Register (HLR)


An HLR record consists of 3 types of information:
Mobile station information
IMSI (used by the MS to access the network) MSISDN (the ISDN number - Phone Number of the MS)

Location information
ISDN number of the VLR (where the MS resides) ISDN number of the MSC (where the MS resides)

Service information
service subscription service restrictions supplementary services
September 30, 2005 Girish Kumar Patnaik 21

Visitor Location Register (VLR)


The VLR information consists of three parts:
Mobile Station Information
IMSI MSISDN TMSI

Location Information
MSC Number Location Area ID (LAI)

Service Information
A subset of the service Information stored in HLR
September 30, 2005 Girish Kumar Patnaik 22

Two Issues of GSM Mobility Databases


Fault Tolerance.
If the database fail, the loss or corruption of location information will seriously degrade the service.

Database Overflow.
VLR may overflow if too many users move into the VLR-controlled area in a short period. If VLR is full, a new arrival user fails to register in VLR and thus cannot receive service. This phenomenon is called VLR overflow.
September 30, 2005 Girish Kumar Patnaik 23

After a VLR failure, VLRs information:

VLR Failure Restoration

Mobile Station Information Recovered either by the first contact with HLR or MS. Location Information Recovered by the first radio contact with MS. Service Information Recovered by the first contact with HLR or the corresponding MS.

After a VLR failure, the VLR record restoration is initiated by one of the following three events:
MS registration MS call origination MS call termination
September 30, 2005 Girish Kumar Patnaik 24

Restoration- MS Registration
After a VLR failure:
No record of MS in VLR VLR considers the registration as an inter-VLR movement. VLR ask MS to follow the normal registration procedure defined in inter-VLR movement. The TMSI sent from the MS to the VLR cannot be recognized VLR asks MS to send IMSI over the air.
September 30, 2005 Girish Kumar Patnaik 25

Restoration-MS Call Origination


After a VLR failure:
VLR receives the call origination request MAP_SEND_INFO_OUTGOING_CALL from the MSC (and MS). No record of MS in VLR VLR considers it as a system error: unidentified subscriber and rejects the request. VLR asks MS to initiate the registration procedure of inter-VLR movement. After the registration procedure, the VLR record is recovered.
September 30, 2005 Girish Kumar Patnaik 26

Restoration - Call Termination Message Flow

September 30, 2005

Girish Kumar Patnaik

27

Restoration - Call Termination Message Flow

September 30, 2005

Girish Kumar Patnaik

28

HLR Failure Restoration


In HLR, it is mandatory to save the updates into backup storage. The service information is immediately transferred from the HLR into the backup. The location information is periodically transferred from the HLR into the backup. After an HLR failure, the data in the backup are reloaded into the HLR
September 30, 2005 Girish Kumar Patnaik 29

HLR Restoration Procedure Message Flow

September 30, 2005

Girish Kumar Patnaik

30

Questions in HLR Restoration Procedure


The HLR restoration procedure is not robust.
HLR does not know a VLR at checkpoint. An MS move into the VLR during the uncovered period. HLR will not ask the VLR to send location information.

VLR Identification Algorithm is to solve the problem.


September 30, 2005 Girish Kumar Patnaik 31

VLR Identification Algorithm


VIA identifies the exact VLRs to be contacted by the HLR after an HLR failure. Extra data structures are needed. Extra procedures are needed:
Check-point procedure Registration procedure Restoration procedure

September 30, 2005

Girish Kumar Patnaik

32

Data Structure in VLR Identification Algorithm (VIA)


To simplify the description, we assume that every VLR covers exactly one MSC. An extra data structure VLR_List* is a set of VLRs that have been contacted by HLR during the uncovered period. After an HLR failure, the HLR only needs to send the MAP_RESET messages to VLRs listed in VLR_List*.
September 30, 2005 Girish Kumar Patnaik 33

Data Structure in VLR Identification Algorithm (VIA)


In HLR, every record includes two extra fields.
ts = the last time of location update PVLR = the address of VLR where the MS resided at the last check-pointing time. Thus, for any MS p, we have
HLR*[p].VLR = HLR[p].PVLR

Two extra data structures in the HLR


TS= the last check-pointing or backup time VLR_Counter = {(VLR1,Count 1), (VLR2,Count 2), , (VLRn,Count n)} where Count n represents the effective number of MSs entering the VLRn during the uncovered period. Note that the VLRs recorded in VLR_Counter are the VLRs in VLR_List*.
September 30, 2005 Girish Kumar Patnaik 34

VIA Data Structure

September 30, 2005

Girish Kumar Patnaik

35

VIA Procedure 1: CheckPointing


In VIA, information of the HLR is periodically saved into the backup by this procedure. Step 1. For every entry p in HLR* do: HLR[p]*.VLR HLR[p].VLR Step 2. TS current time; Step 3. For every location entry p in HLR do: HLR[p].tsTS; HLR[p].PVLR HLR[p].VLR Step 4. VLR-Counter NULL; VLR-List* NULL;
September 30, 2005 Girish Kumar Patnaik 36

VIA Procedure 2: Registration


Step 1. Update HLR: Vold HLR[p].VLR; Send message, MAP_CANCEL_LOCATION, to cancel the VLR entry of p at Vold; HLR[p].VLR Vnew; told HLR[p].ts; HLR[p].ts t;

September 30, 2005

Girish Kumar Patnaik

37

VIA Procedure 2: Registration


Step 2. Update the Vnew Count field in VLR_Counter: If (HLR[p].VLR <> HLR[p].PVLR){ If (VLR_Counter[Vnew] exists){ VLR_Counter[Vnew].Count <VLR_Counter[Vnew].Count+1; }else{ create VLR_Counter[Vnew] and VLR_List*[Vnew]; VLR_Counter[Vnew].Count <- 1; } }

September 30, 2005

Girish Kumar Patnaik

38

VIA Procedure 2: Registration


Step 3. Update the Vold counter entry: If (told > TS and Vold <> HLR[p].PVLR){ VLR_Counter[Vold].Count <VLR_Counter[Vold].Count 1; If (VLR_Counter[Vold].Count = 0){ Delete VLR_Counter[Vold] and VLR_List*[Vold]; } }
September 30, 2005 Girish Kumar Patnaik 39

VIA Procedure 3: Restore


Step 1. TS <- current time; Step 2. for (every location entry p in HLR){ HLR[p].PLVR = HLR[p].VLR <- HLR[p]*.VLR; HLR[p].ts <- TS; } Step 3. for (every VLR entry V in VLR_List*){ send an SS7 TCAP MAP_RESET message to V; }
September 30, 2005 Girish Kumar Patnaik 40

VLR Overflow Control


VLR may overflow if too many mobile users move into the LA in a short period. When a VLR is full, a new arrival user can not register and get service. If we want to let the new arrival user can get service, all of the following procedures need to be modified:
registration, cancellation, call origination, call termination

September 30, 2005

Girish Kumar Patnaik

41

Overflow Registration Operation (O-I)

September 30, 2005

Girish Kumar Patnaik

42

Cancellation Operation with Overflow VLR (O-II)

September 30, 2005

Girish Kumar Patnaik

43

Call Origination with Overflow VLR (O-III)

September 30, 2005

Girish Kumar Patnaik

44

Call Termination with Overflow VLR (O-IV)

September 30, 2005

Girish Kumar Patnaik

45

Call Termination with Overflow VLR (O-IV)

September 30, 2005

Girish Kumar Patnaik

46

Acknowledgement
Slides obtained from home page of Prof.Phone Lin Slides obtained from home page of Prof.Gerald Q. Maguire Jr.

September 30, 2005

Girish Kumar Patnaik

47

You might also like