You are on page 1of 47

GSM Mobility Management

September 30, 2005 Girish Kumar Patnaik 2


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 3
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 4
GSM Location Area Hierarchy
September 30, 2005 Girish Kumar Patnaik 5
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 6
Inter-LA Registration
Message Flow
September 30, 2005 Girish Kumar Patnaik 7
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 8
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 9
Inter-MSC Registration
Message Flow
September 30, 2005 Girish Kumar Patnaik 10
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 11
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 12
Inter-VLR Registration
Message Flow
September 30, 2005 Girish Kumar Patnaik 13
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 14
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 15
Call Origination Operation
September 30, 2005 Girish Kumar Patnaik 16
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 17
Call Termination Message Flow
September 30, 2005 Girish Kumar Patnaik 18
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 19
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 20
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 21
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 22
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 23
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 24
VLR Failure Restoration
After a VLR failure, VLRs information:
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 25
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 26
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 27
Restoration - Call Termination
Message Flow
September 30, 2005 Girish Kumar Patnaik 28
Restoration - Call Termination
Message Flow
September 30, 2005 Girish Kumar Patnaik 29
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 30
HLR Restoration Procedure
Message Flow
September 30, 2005 Girish Kumar Patnaik 31
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 Algorithmis to solve
the problem.
September 30, 2005 Girish Kumar Patnaik 32
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 33
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 34
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 35
VIA Data Structure
September 30, 2005 Girish Kumar Patnaik 36
VIA Procedure 1: Check-
Pointing
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 37
VIA Procedure 2: Registration
Step 1. Update HLR:
V
old
HLR[p].VLR;
Send message,
MAP_CANCEL_LOCATION, to cancel
the VLR entry of p at V
old
;
HLR[p].VLR V
new
;
t
old
HLR[p].ts;
HLR[p].ts t;
September 30, 2005 Girish Kumar Patnaik 38
VIA Procedure 2: Registration
Step 2. Update the V
new
Count field in VLR_Counter:
If (HLR[p].VLR <> HLR[p].PVLR){
If (VLR_Counter[V
new
] exists){
VLR_Counter[V
new
].Count <-
VLR_Counter[V
new
].Count+1;
}else{
create VLR_Counter[V
new
] and
VLR_List*[V
new
];
VLR_Counter[V
new
].Count <- 1;
}
}
September 30, 2005 Girish Kumar Patnaik 39
VIA Procedure 2: Registration
Step 3. Update the V
old
counter entry:
If (t
old
> TS and V
old
<> HLR[p].PVLR){
VLR_Counter[V
old
].Count <-
VLR_Counter[V
old
].Count 1;
If (VLR_Counter[V
old
].Count = 0){
Delete VLR_Counter[V
old
] and
VLR_List*[V
old
];
}
}
September 30, 2005 Girish Kumar Patnaik 40
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 41
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 42
Overflow Registration
Operation (O-I)
September 30, 2005 Girish Kumar Patnaik 43
Cancellation Operation with
Overflow VLR (O-II)
September 30, 2005 Girish Kumar Patnaik 44
Call Origination with
Overflow VLR (O-III)
September 30, 2005 Girish Kumar Patnaik 45
Call Termination with
Overflow VLR (O-IV)
September 30, 2005 Girish Kumar Patnaik 46
Call Termination with
Overflow VLR (O-IV)
September 30, 2005 Girish Kumar Patnaik 47
Acknowledgement
Slides obtained from home page of
Prof.Phone Lin
Slides obtained from home page of
Prof.Gerald Q. Maguire Jr.

You might also like