07 gsm mobility management

58
1 GSM Mobility Management 詳細介GSM系統的mobility management。接著討論某些意外狀況發生,如 VLR overflowfailure,可以如何處理。此部份偏向論文研究項目,不是 GSM系統通訊協定。如果只須初淺了解細統運作,在 GSM_System_Overview 中都已有提到過,可以略過此一章節。

Upload: vinnosin

Post on 10-Apr-2015

215 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: 07 GSM Mobility Management

1

GSM Mobility Management

詳細介GSM系統的mobility management。接著討論某些意外狀況發生,如VLR overflow或failure,可以如何處理。此部份偏向論文研究項目,不是GSM系統通訊協定。如果只須初淺了解細統運作,在GSM_System_Overview 中都已有提到過,可以略過此一章節。

Page 2: 07 GSM Mobility Management

2

Outlines

IntroductionGSM Location UpdateCall Origination and TerminationMobility DatabasesVLR Failure RestorationHLR Failure RestorationVLR Identification AlgorithmVLR Overflow ControlSummary

• 這個章節說明 GSM 行動管理的方式, 以及當遇到 VLR/HLR 等資料庫發生錯誤, 溢位等問題時的處理方法.

• 主題共分為以下個部份:• 簡介 GSM 的行動管理

• 手機位置更新方式

• 手機主呼與被呼的處理

• GSM 行動資料庫的設計

• VLR 發生錯誤損毀時, VLR 資料庫回復的處理

• HLR 發生錯誤損毀時, HLR 資料庫回復的處理

• 當 HLR 發生損毀時, 我們以 VLR 鑑定演算法為例, 說明如何可以回復 HLR 的資料

• VLR 資料庫發生容量不足溢位(overflow)的控制處理

• 最後是總結

Page 3: 07 GSM Mobility Management

3

Introduction

•首先我們會簡介 GSM 的行動管理.

Page 4: 07 GSM Mobility Management

4

Location Area

Location area (LA) is the basic unit for location tracking. Location Area Identification (LAI)

MSC MSC

MSC

LA 1

LA 2

LA 3

•GSM之服務範圍分割成許多位置區域(Location Area 或 LA),每個LA 由一個或數個BS 的涵蓋範圍所組成,做為記錄手機位置的基本單位。

•每個 LA 包含一組的基地收發台(BTS).

•一個 MSC 可以包含一或數個 LA。

•一個 MSC 所控制的地理範圍稱為 MSC area.

•一個 MSC area 會切割成數個區域, 稱為 Location area (LA). LA 是系統紀錄 MS 的最小的單位, 當 MS 來到一個新的 LA 就一定要註冊做location update, 是一個註冊的單位, 所以LA 又稱為 Registration Area.

•為達到對手機作位置追蹤的目的. •當手機到一個新的 LA 時, 負責此 LA 的 VLR 會為此手機產生一份暫時紀錄用來表示手機所在的區域 (i.e., LA address).•對每個手機來說, 在 HLR 中都會保有一份永久紀錄, 這份紀錄中會存放手機所在區域的 VLR.

• 每個 LA 有一個號碼來代表它, 稱為 LAI

Page 5: 07 GSM Mobility Management

5

GSM Location Area Hierarchy

HLR

VLR2VLR1

MSC1 MSC2

LA1 LA2

MS

HLR : HOME Location RegisterVLR : VISITOR Location RegisterMSC : Mobile Switching CenterLA : Location AreaMS : Mobile Station

GSM利用兩層式的資料庫來監控手機的位置。

•在此架構中, 數個基地台會連接到行動交換中心(MSC), 因此一個 MSC 可涵蓋數個LA.

•一個或數個 MSC 可連上一個客籍註冊資料庫(VLR)

•每個或數個 MSC 則設有一個VLR。

•當手機由一 LA 移動至另一 LA 時,藉由 VLR 之幫助執行一註冊動作,使 HLR 獲知手機所在之區域。

•當要尋找一手機時,就可查詢 HLR ,以便知道手機目前所在的VLR 住址。VLR 會記錄 MS 在那一個MSC, LA.

•數個 VLR 可連上一個本籍註冊資料庫(HLR), VLR 和 HLR 之間的位置資料亦經由 SS7 網路傳遞.

•HLR 內存放使用者的一個永久記錄。HLR 會記錄 MS 所在的 VLR 與MSC.

Page 6: 07 GSM Mobility Management

6

Location Update Concept

Registration: the location update procedure initiated by the MS: • Step 1. BS periodically broadcasts the LA address.• Step 2. When an MS finds the LA of BS different from

the one stored in it memory, it sends a registration message to the network.

• Step 3. The location information is update.

•位置更新程序稱為”註冊” (Registration), 由 MS 來啟動:

•Step 1. BTS 週期性地對同在一個 LA address 的 MS發出廣播.

•Step 2. 當 MS 收到一個與先前暫存在自己內部記憶體中不同的 LA address 時, 它便會向通訊網路發出註冊訊息.

•Step 3. 位置資訊便會更新.

Page 7: 07 GSM Mobility Management

7

Issues of GSM Mobility Management

Mobility management:• To update the location of an MS when it moves

from one LA to anotherOur discusses contains:• GSM location update procedure• Call origination and termination• Mobility databases• Database fault tolerance• Database overflow

•行動管理(Mobility Management)的主要任務是當 MS 從某個 LA 移動到另一個 LA 時必須更新 MS 的位置資訊.

•在這份投影片中, 我們探討的主題包含:

•手機位置更新方式

•手機主呼(Call origination)與被呼(Call termination) 的處理

•GSM 行動資料庫的設計

•VLR 發生錯誤損毀時, VLR 資料庫回復的處理

•HLR 發生錯誤損毀時, HLR 資料庫回復的處理

•當 HLR 發生損毀時, 我們以 VLR 鑑定演算法為例, 說明如何可以回復 HLR 的資料

•VLR 資料庫發生容量不足溢位(overflow)的控制處理

Page 8: 07 GSM Mobility Management

8

GSM Location Update

•在這部份說明 GSM 所採用的手機位置更新方式.

Page 9: 07 GSM Mobility Management

9

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

•在 GSM 網路中, 註冊與位置更新的程序發生在當 MS 從某個 LA 移動至另一個 LA 時.•位置更新有三種情形

•Case 1. inter-LA movement (跨 LA 的移動): 兩個 LA 連接到同一個MSC, 因此 MSC 與 VLR 並沒有改變.•Case 2. inter-MSC movement (跨 MSC 的移動): 兩個 LA 分別連接到不同的 MSC, 這兩個 MSC 是隸屬於同一個 VLR.•Case 3. inter-VLR movement (跨 VLR 的移動): 兩個 LA 分別連接到不同的 MSC, 而且這兩個 MSC 各自隸屬於不同的 VLR.

Page 10: 07 GSM Mobility Management

10

Inter-LA Registration

•Inter-LA (跨LA移動) 的註冊訊息流程

•新舊位置區域 LA1 , LA2 的基地台皆連接到 MSC1.•Step 1. 手機經基地台將一註冊訊息送到 MSC1, 此訊息要求更正該手機之位置資訊, 訊息內包括手機的 TMSI.

•Step 2. MSC1 將手機位置更新的要求訊息轉達至 VLR1, 此訊息包含MSC1的位址, 手機的 TMSI, 手機先前所在 LA1 的 LAI.

•Step 3.及4.

•VLR1 發現 LA1 及 LA2 皆屬於 MSC1, 因此 VLR1 僅將該手機紀錄中位置區域的號碼欄位更正為 LA2.

•經由 MSC1 回覆acknowledge, 表示手機註冊動作已完成.

•在 GSM 標準04.08中規定, 手機與 MSC 之間總共會交換 9 個訊息,在 MSC 及 VLR 之間有10 個訊息交換.

Page 11: 07 GSM Mobility Management

11

Two LAs belong to the same MSC.Four major steps:• Step 1. MS sends a location update request

message (MS→BTS→MSC) .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.

Inter-LA Movement (1/2)

••四個主要步驟詳細說明如下四個主要步驟詳細說明如下::••Step 1Step 1. . 手機送出一個位置更新的要求訊息手機送出一個位置更新的要求訊息((手機手機 BTS BTS MSC).MSC).

••訊息中包含有訊息中包含有: : 手機原來所屬的手機原來所屬的 LA, MSC LA, MSC 以及以及 VLR.VLR.••手機以手機以 TMSI TMSI 用於辨識自己用於辨識自己, TMSI , TMSI 是是 IMSI IMSI 的代替別名的代替別名..••IMSI IMSI 可用來辨識手機可用來辨識手機, , 只有只有 GSM GSM 網路知道網路知道 IMSI IMSI 的值的值, , 而使用者並不而使用者並不知道知道..••為了加強安全性為了加強安全性, , 手機的機密資料如手機的機密資料如 IMSIIMSI 很少在無線電媒介中傳送.••TMSI TMSI 是由是由 VLR VLR 暫時配置給手機暫時配置給手機, , 以供手機作為暫時代替的識別碼以供手機作為暫時代替的識別碼, , 例如在每次的連線建立完成之後例如在每次的連線建立完成之後, , 或發生跨或發生跨 VLR VLR 的註冊動作發生時的註冊動作發生時, , VLR VLR 可能會給與一個新的可能會給與一個新的 TMSI. TMSI TMSI. TMSI 要不斷的更新要不斷的更新, , 才能維護其安才能維護其安全性全性..

Page 12: 07 GSM Mobility Management

12

The Process continues:• 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.

Inter-LA Movement (2/2)

•Step 2. MSC 將位置更新的要求以一個 TCAP 的 message ”MAP_UPDATE_LOCATION_AREA” 轉送給VLR.

•此一訊息包含MSC的位址, TMSI, 先前的LAI, 目的地的LAI, 與其他相關資訊

•“其他相關資訊”列於Section 6.1.1 of GSM 09.02 and GSM 03.12.•Steps 3及4.

•Part I. VLR1 發現 LA1, LA2 屬於同一個 MSC 管轄.•Part II. VLR1 更改該手機在 VLR 紀錄上對應 LAI 欄位的值.•Part III. VLR1 經由 MSC 回應一個 ACK 訊息, “MAP_UPDATE_LOCATION_AREA_ack” 給手機.

Page 13: 07 GSM Mobility Management

13

Inter-MSC RegistrationH L R

V L R 2V L R 1

M SC 1 M S C 2

L A 1 L A 2

M S

3

2

4

1

M SC 2 V L R 1

2. M A P _U P D A T E _L O C A T IO N _A R E A

5. M A P _U P D A T E _L O C A T IO N _A R E A _ack

5

6

H L R

3. M A P _U P D A T E _L O C A T IO N

4. M A P _U P D A T E _L O C A T IO N _ack

Inter-MSC 的註冊訊息流程與 inter-LA 最大同的地方在於, HLR 也有記錄MSC, 所以整個 registration 必須通知 HLR.•新舊位置區域 LA1, LA2 的基地台各連接到 MSC1, MSC2, 而這兩個 MSC 是同屬於 VLR1. 所以稱為 Inter-MSC movement.•整個 location update 的過程如下:

•Steps 1及 2.手機經基地台將位置更新的要求訊息送到 VLR1.•Step 3. VLR1 更新 VLR 紀錄中此 MS 的 LAI 及 MSC 欄位, 且 VLR1 送出 location update 訊息到 HLR.•Step 4. HLR 修改 MS 的 MSC 欄位, 並送確認訊息給 VLR1.•Step 5及6. VLR1 送出確認訊息給手機, 完成位置更新程序.

Page 14: 07 GSM Mobility Management

14

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 (MS→BTS→MSC) .• 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 MS’s IMSI.

Inter-MSC Movement (1/2)

•新舊位置區域 LA1, LA2 的基地台各連接到 MSC1, MSC2, 而這兩個 MSC 是同屬於 VLR1. 所以稱為 Inter-MSC movement.

•過程如下:•Steps 1及 2.手機經基地台將位置更新的要求訊息(MAP_UPDATE_LOCATION_AREA) 送到 VLR1.•Step 3.

•Part I. VLR1 發現舊位置區域 LA1 屬於 MSC1, 而新位置區域 LA2 屬於 MSC2,而這兩個 MSC 皆屬於 VLR1.•Part II. VLR1 更新 VLR 紀錄中此 MS 的 LAI 及 MSC 欄位.•Part III. VLR1 從手機的 IMSI 得知其 HLR 位址 (參見GSM03.03).

•MS 的 IMSI 會存在 VLR1 中.

Page 15: 07 GSM Mobility Management

15

The process continues:• Step 3.

Part IV. The VLR1 sends the MAP_UPDATE_LOCATIONto 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.

Inter-MSC Movement (2/2)

•接續上一頁的過程:•Step 3.

•Part IV. VLR1 送出 MAP_UPDATE_LOCATION 訊息到 HLR, 訊息中包含手機的 IMSI, 新 MSC (即 MSC2 )的位址, VLR1 的位址及其他相關資料.

•Step 4. HLR 收到訊息後, 根據訊息中的 IMSI 找出相對應的手機紀錄, 此筆手機紀錄中的 MSC 位址欄位便從 MSC1 更新為 MSC2 , HLR 回送確認訊息MAP_UPDATE_LOCATION_ack 給 VLR1.•Step 5及6. VLR1 送出確認訊息MAP_UPDATE_LOCALTION_AREA_ack 給手機, 完成位置更新程序.

•VLR的位址及其他相關資料參見GSM 09.02的Section 6.1.2.

Page 16: 07 GSM Mobility Management

16

Inter-VLR Registration Message Flow

H L RV L R 2

V L R 1

M S C 2

L A 1 L A 2

M S

8

1

7

1

M S C 2 V L R 2

1. M A P _U P D A T E _L O C A T IO N _A R E A

6. M A P _U P D A T E _L O C A T IO N _A R E A _ack

6

6

H L R

2. M A P _S E N D _ID E N T IF IC A T IO N

3. M A P _S E N D _ID E N T IF IC A T IO N _ack

4

5

3

2

4 . M A P _U P D A T E _L O C A T IO N

5. M A P _U P D A T E _L O C A T IO N _ack

7. M A P _C A N C E L _L O C A T IO N

8. M A P _C A N C E L _L O C A T IO N _ack

V L R 2

M S C 1

•Inter-VLR (跨VLR) 移動的註冊, 除了通知 HLR 外, 還要與舊的 VLR 溝通, 取得 MS 的資訊, 最後還要把舊的 VLR 的 MS 資料清除.•在這個例子中, 新舊位置區域 LA1, LA2 分別連接到不同的 MSC (MSC1, MSC2), 而這兩個 MSC 也各自隸屬不同的 VLR (VLR1, VLR2), MS 執行inter-VLR registration 的過程如下:

•Step 1. 手機將位置更新的要求訊息送給 VLR2.•Steps 2及 3. VLR2 會去詢問舊 VLR1 關於 MS 的訊息, 得到 MS 的IMSI.•Steps 4 及 5. 利用 IMSI, VLR2 為手機建立其 record, 同時找出 MS 的HLR. VLR2 向 HLR 要求做 MS location update.•Step 6. VLR2 產生一個新的 TMSI 並將它傳送給手機

•Steps 7及 8. HLR 通知 VLR1 清除該手機的 record.

Page 17: 07 GSM Mobility Management

17

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_AREAto VLR 2 with MS’s 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.

Inter-VLR Movement (1/2)

•新舊位置區域 LA1, LA2 分別連接到不同的 MSC (MSC1, MSC2), 而這兩個MSC 也各自隸屬不同的 VLR (VLR1, VLR2).•過程如下:

•Step 1. 手機將位置更新的要求訊息送到 MSC2. MSC2 再送MAP_UPDATE_LOCATION_AREA 給 VLR2.

•MS 送給 MSC2 的參數裡有 Previous LA, previous MSC and previous VLR.•MSC2 送給 VLR2 的參術有: Address of the MSC, TMSI, previous LAI, target LAI, previous VLR and other information.

•Steps 2及 3.•由於 VLR2 沒有手機的 record, 所以不知道手機的 IMSI.•因此 VLR2 會從 MAP_UPDATE_LOCATION_AREA 訊息中找出舊VLR(VLR1) 的 address, VLR2 便可送出包含手機 TMSI 在內的MAP_SEND_IDENTIFICATION 訊息給 VLR1.•VLR1根據TMSI找出相對應的IMSI, 並將 IMSI 送給VLR2.

Page 18: 07 GSM Mobility Management

18

The process continues:• 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.

Inter-VLR Movement (2/2)

•接續上一頁 inter-VLR 的過程:•Steps 4 及 5.

•VLR2 為手機建立其 VLR record, 並送出註冊訊息MAP_UPDATE_LOCATION (內容同 Inter-VLR 的 information: IMSI, MSC2, VLR2, others) 到 HLR.•HLR 需更新手機的位置記錄 (將手機的 VLR 位址欄位由 VLR1 更正為 VLR2).•HLR 送回 acknowledge 訊息 MAP_UPDATE_LOCATION_ack 給VLR2.

•Step 6. VLR2 產生一個新的 TMSI 並將它傳送給手機 (利用MAP_UPDATE_LOCATION_AREA_ack 傳回給 MS).•Steps 7及 8. HLR 以 MAP_CANCEL_LOCATION 訊息通知 VLR1 此手機已經離開, VLR1 清除該手機的 record, 並回覆確認訊息MAP_CANCEL_LOCATION_ack 給HLR.

Page 19: 07 GSM Mobility Management

19

Call Origination and Termination

•這部份要說明手機打電話出去 (call origination) 與別人打電話給手機 (call termination) 所需要的訊息流程.

Page 20: 07 GSM Mobility Management

20

Call Origination OperationVLR V2

MSC

u1

CloudCloud

PSTN

VLRTerminating

Switch MSC

2. MAP_SEND_INFO_FOR_OUTGOING_CALL

3. MAP_SEND_INFO_FOR_OUTGOING_CALL_ack

4. IAM

2

3

•手機打電話的過程

•Step 1. 手機送出打電話的要求訊息給 MSC•Step 2. MSC 轉送 MAP_SEND_INFO_OUTGOING_CALL 訊息給VLR, 以查詢此手機是否為合法用戶,•Step 3. VLR 檢查手機為合法用戶後, 送出MAP_SEND_INFO_FOR_OUTGOING_CALL_ack 訊息給 MSC, 允許通話要求.•Step 4. MSC 根據標準的公眾交換電話網路(PSTN)發話建立程序為手機建立 trunk.

Page 21: 07 GSM Mobility Management

21

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 MS’s profile and sends MAP_SEND_INFO_FOR_OUTGOING_CALL_ackto MSC to grant the call request.

• Step 4. MSC sets up the trunk according to the standard PSTN call setup procedure.

•GSM的基本電話主呼過程如下:•Step 1. 手機送出打電話的要求訊息給 MSC•Step 2. MSC 轉送 MAP_SEND_INFO_OUTGOING_CALL 訊息給VLR, 以查詢此手機是否為合法用戶,•Step 3. VLR 檢查手機為合法用戶後, 送出MAP_SEND_INFO_FOR_OUTGOING_CALL_ack 訊息給 MSC, 允許通話要求.•Step 4. MSC 根據標準的公眾交換電話網路(PSTN)發話建立程序為手機建立 trunk.

Page 22: 07 GSM Mobility Management

22

Call Termination Message FlowCloud

Cloud PSTN VLRG M SC H LR

TargetM SC

4

3

5

2

6

1

1. ISUP IAM

2. M AP_SEND_RO UTIN G_INFO RM ATION

3. M AP_PROVIDE_RO AM ING _NU M BER

5. M AP_PRO VID E_ROA M ING _NUM BER_ack

2. M AP_SEND_ROU TING _INFO RM ATIO N_ack

6. ISU P IAM

O riginatingSwitch G M SC H LR VLR

TargetM SC

•PSTN 有線電話打電話給手機的訊息流程:

•Step 1. 當一般 PSTN 電話用戶撥打電話給 MS, 此通電話會以 SS7 ISUP 的 IAM message 送到 gateway MSC (GMSC).•Step 2. GMSC 向詢問 HLR 路由資訊.•Step 3. HLR 再去詢問 VLR, •Steps 4 及 5. VLR 其 MS location 的資料, 並向 serving MSC 查證, 才產生出手機漫遊號碼 MSRN, 然後將 MSRN經HLR 送交給GMSC.•Step 6. GMSC 依據 MSRN 找到手機所在地的 target MSC, 並送出SS7 ISUP IAM訊息到target MSC以建立voice trunk.

Page 23: 07 GSM Mobility Management

23

Call Termination (1/2)

Routing information for call termination can be obtained form the serving VLR.The basic call termination process:• Step 1. A MS’s 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.

•當別人打電話給手機時, 必須找到從負責該手機的MS目前所在的位置, 這個路由資訊可以從 VLR 那裡獲得. •基本手機被呼的處理流程:

•Step 1. 當一般 PSTN 電話用戶撥打某個 MSISDN (which is the ISDN number-“Phone Number” of the MS, i.e., 手機電話) 號碼時, 此通電話會以 SS7 ISUP 的 IAM message 送到gateway MSC (GMSC).•Step 2. GMSC 送包含被呼手機 MSISDN 在內的MAP_SEND_ROUTING_INFORMATION 訊息到 HLR, 以詢問 HLR 路由資訊.

Page 24: 07 GSM Mobility Management

24

Call Termination (2/2)

The process continues:• 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.

•接續上一頁 call termination 的過程:•Step 3. HLR 送 MAP_PROVIDE_ROAMING_NUMBER 訊息給 VLR,

•此訊息包含 IMSI, MSC number 與其他 data. 其實 VLR 內也有MS 的 MSC address.

•Steps 4 及 5. VLR 依據存放在其內部的手機VLR record中的MSC number產生出手機漫遊號碼Mobile Subscriber Roaming Number(MSRN),然後將 MSRN經HLR 送交給GMSC.•Step 6. GMSC 依據 MSRN 找到手機所在地的 target MSC, 並送出SS7 ISUP IAM訊息到target MSC以建立voice trunk.

Page 25: 07 GSM Mobility Management

25

Mobility Databases

•在個人通訊服務系統中, 必須隨時記錄 MS 的動向, 所有的資料都會存在行動資料庫: VLR 與 HLR.•以上所提到的 location update, call delivery 過程中都會用到 HLR 或 VLR 的資料, 所以我們將更深入了解 VLR 與 HLR 所包含的資訊.•如果 HLR 或 VLR 發生意外 fail, 則系統無法找到 MS 正確的位置. 因此我們有必要仔細討論 HLR 與 VLR 的內容, 與討論當它們 crash 時, 如何應變處理.

Page 26: 07 GSM Mobility Management

26

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.

MSC 1

HLR

VLR 1 VLR 2

MSC 2

•GSM採用階層式(hierarchical)的資料庫管理架構.•HLR是一個管理手機用戶資訊的資料庫.•VLR是一個負責管理手機所到訪服務區域的資料庫.

Page 27: 07 GSM Mobility Management

27

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 informationISDN number of the VLR (where the MS resides)ISDN number of the MSC (where the MS resides)

• Service informationservice subscriptionservice restrictionssupplementary services

•HLR 包含下面三類的資料:•每個MS的記錄內容包括 MSISDN + IMSI + VLR ISDN + MSC ISDN + Subscriber Status.

•MS information : •IMSI (國際行動用戶識別碼, 存取網路時作識別用途)•MSISDN (手機號碼)

•Location information:•VLR address (手機所在地的VLR位址)•MSC address (手機所在地的MSC位址)

•Service information: •Service subscription (用戶簽訂的服務) ex. call forwarding, international call,...•Service restriction (限制用戶的服務) ex. call barring•supplementary services (加值服務)

Page 28: 07 GSM Mobility Management

28

Visitor Location Register (VLR)

The VLR information consists of three parts:• Mobile Station Information

IMSIMSISDNTMSI

• Location InformationMSC NumberLocation Area ID (LAI)

• Service InformationA subset of the service Information stored in HLR

•VLR 包含下面三類的資料:•VLR 內每個 MS 的記錄內容包括 MSISDN + IMSI + LAI + TMSI + MSRN + Subscriber Status + HON.

•MS information•IMSI•MSISDN•TMSI

•Location information:•MSC address•LAI

•Service information: call forwarding, international call,...(subset of HLR)

Page 29: 07 GSM Mobility Management

29

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.

•因為所有的動作都需要資料庫的支持, 所以一旦 database 發生狀況, 就會有狀況. 這裡我們將討論兩種 database 會出問題的情況:•Fault Tolerance: 當位置資料庫損毀時, 位置資訊的遺失或毀壞將嚴重降低系統能提供給用戶的服務品質.

•因此下面的章節將介紹一些 GSM failure restoration 的作法, 另外提出一相關的論文在探討如何盡量加速 GSM restoration 的時間.•這裡分別討論 VLR 與 HLR failure 的狀況.

•Database Overflow: 資料庫的容量是固定的, 因此當有太多的 MS 進到某一VLR 的範圍, 使 VLR full, 再當有 MS 進入則沒有相對應的 record 可用, 因此無法註冊, 當然也無法或得 service. 這種狀況稱為 VLR overflow.

•下面的章節將介紹一些相關的論文, 探討如何盡量處理 VLR overflow.

Page 30: 07 GSM Mobility Management

30

VLR Failure Restoration

•當有太多的 MS 進到某一 VLR 的範圍, 使 VLR full, 再當有 MS 進入則沒有相對應的 record 可用, 因此無法註冊, 當然也無法或得 service. 這種狀況稱為VLR overflow. 這裡將介紹一些相關的論文, 探討如何盡量處理 VLR overflow.

Page 31: 07 GSM Mobility Management

31

VLR Failure Restoration (1/2)

After a VLR failure, VLR’s information:• Mobile Station Information

Recovered either by the first contact with HLR or MS.

• Location InformationRecovered by the first radio contact with MS.

• Service InformationRecovered by the first contact with HLR.of the corresponding MS.

•VLR 內的資料如前所述分為三大類. 當 VLR之前有failure時, 這三類的資料可分別在不同的時機重建獲得:

•Mobile station information (IMSI 等): 當 VLR 第一次與 HLR 或 MS 接觸, 就可以得到 MS 的相關資料.•Location information (MSC ISDN 等): 當 VLR 第一次與 MS 接觸, 就可以得到 MS 的位置.•Service information: 當 VLR 第一次與 HLR 接觸, 就可以得到 此 HLR 下所有 MS 的相關資料.

Page 32: 07 GSM Mobility Management

32

VLR Failure Restoration (2/2)

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

•但是在 VLR 出錯之後, 如何 VLR 才能與 MS 或 HLR 做接觸? •Answer: 只在下列三種事件發生時, VLR 才會有與 HLR 或 MS 接觸的機會, 獲得最新的正確資料, 才會啟動 VLR record restoration.

•MS registration•MS call origination•MS call termination

•底下分別說明這三種狀況.

Page 33: 07 GSM Mobility Management

33

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.

Restoration-MS Registration

•當 MS 進行 registration 時 (for example: periodical registration), 由於 VLR 沒有 MS 的任何資料, 因此會把這次註冊當作是 inter-VLR movement.•VLR 依據 inter-VLR movement, 要求 MS 用的一般正常註冊程序進行. •MS 會送出 old VLR ISDN 與 TMSI 給 VLR, 但是因為所有資料都流失, VLR 無法判讀 TMSI 是否正確, 只好要求 MS 傳送 IMSI, 以確認身份.

Page 34: 07 GSM Mobility Management

34

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.

Restoration-MS Call Origination

•當 MS 想要打電話時, MSC 會將 MAP_SEND_INFO_OUTGOING_CALL 的訊息轉送給 VLR.•但由於 VLR 沒有 MS 的任何資料, 因此會把這個要求當成是 system error, 將MS 視為 unidentified subscriber.•VLR 回絕此要求, 並要求 MS 進行同 inter-VLR 的 location registration.•如此 VLR 便建立起 MS 的資料.

Page 35: 07 GSM Mobility Management

35

Restoration-Call Termination Message (1/2)

CloudCloud

PSTN VLRGMSC HLR

TargetMSC

4

37

2

8

15

6

11

910

12

13

•當有人要打電話給此 MS, VLR 會利用此機會做 recovery.•Steps 1-3. 就如同一般電話建立程序的前三個步驟, VLR 收到 HLR 要求提供MS 的 MSRN, (MAP_PROBIDE_ROAMING_NUMBER).

•VLR 依據 HLR 送來之 IMSI 尋找 MS 的 record, 但由於 VLR 沒有MS 的任何資料.•因此會幫 MS 建立一個新的 record. i.e., VLR 相信 HLR 的資料.

•Steps 4-7. VLR 會利用 HLR 送來的 MSC ISDN, 產生 MSRN, 送給 HLR 與gateway MSC以便後來建立通話連線.•Steps 5-6.

•VLR 利用與 HLR 通信的機會, 進行 restoration. VLR 送MAP_RESTORE_DATA 給 HLR.•HLR 回應 MAP_INSERT_SUBSCRIBER_DATA 有關用戶服務資訊的訊息給VLR.•此後, VLR record 便已被 recovered.•然而, VLR 中仍有許多資料沒有辦法由 HLR 取得, 包括 location information (LAI), TMSI. •注意: Step 4.與 Step 5.是可以平行同時執行的.

Page 36: 07 GSM Mobility Management

36

Restoration-Call Termination Message (2/2)

1. ISUP IAM2. MAP_SEND_ROUTING_INFORMATION

3. MAP_PROVIDE_ROAMING_NUMBER

4. MAP_PROVIDE_ROAMING_NUMBER_ack

OriginatingSwitch GMSC HLR VLR

TargetMSC

5. MAP_RESTORE_DATA

5. MAP_RESTORE_DATA_ack

6. MAP_INSERT_SUBSCRIBER_DATA

6. MAP_INSERT_SUBSCRIBER_DATA_ack

7. MAP_SEND_ROUTING_INFORMATION_ack

8. ISUP IAM

9. MAP_SEND_INFO_FOR_INCOMING_SUBSCRIBER

10. MAP_SEARCH_FOR_MOBILE_SUBSCRIBER

12. MAP_PROCRSS_ACCESS_REQUEST

13. MAP_PROCRSS_ACCESS_REQUEST_ack

•延續上一頁的程序:•Step 8. gateway MSC 在 Step 7.收到 HLR 送來的 MSRN 之後, 便送出 SS7 ISUP message IAM 到 target MSC.•Step 9-11.

•target MSC 此時還沒有 MS 的 LAI 資訊.•為建立通話, MSC 送出 MAP_SEND_INFO_FOR_INCOMING_CALL 到 VLR 詢問 LAI.•不幸的是, VLR 也沒有 LAI 的資訊.•所以 VLR 便送 MAP_SEARCH_FOR_MOBILE_SUBSCRIBER到MSC, 要求 MSC 來決定 MS 所在的 LA.

•Steps 12-13.•於是 MSC 在其所轄的所有 LA 發出對 MS 的呼叫.•若呼叫成功的話, MSC 送出 MAP_PROCESS_ACCESS_REQUEST 訊息將 MS 所在的 LA 位址送回 VLR.•此時 VLR record 的關於 MS 的 location information 就被 recovered.

•注意

•MAP_SEARCH_FOR_MOBILE_SUBSCRIBER 是耗費資源的動作, 因為 MSC 之下的每個 BTS 都必須執行這個呼叫動作.•為了避免廣域呼叫 (Wide Area Paging), GSM 系統應週期性地要求MS 主動作重新註冊 (re-register) 的動作.

Page 37: 07 GSM Mobility Management

37

HLR Failure Restoration

•此部份探討當 HLR failure 時, HLR 如何做 restoration.

Page 38: 07 GSM Mobility Management

38

HLR Failure Restoration

In HLR, it is mandatory to save the updates into backup storage.The service information is immediatelytransferred 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.

•HLR 發生錯誤還原的方式: •HLR 應該本身配置有像磁帶, 硬碟這類的非揮發之備份系統.•針對少量像是 service information 這樣的資料 (如提供 call forwarding), 要在 HLR update 時就同時存入 backup storage.•針對少量像是 location update 這樣的資料 (如 VLR, MSC ISDN), 要定期在每一個 check-point 做備份.•當 HLR 損壞時, 則由備份資料存回 HLR 中. 所以 service information 永遠是對的, 但 location information 就可能是過期的資料.

Page 39: 07 GSM Mobility Management

39

HLR Restoration Procedure Message Flow

MAP_RESET

MAP_UPDATE_LOCATION

MAP_UPDATE_LOCATION_ack

HLR VLR

•當 HLR 損壞時, 則將備份資料存回 HLR 中.•但由於備份中 location update information 並不是最新的, 所以會有一段時間的資料是 lost. 這段時間我們稱為 uncovered period. 即最後一次備份到 HLR 損壞的時間.•在 uncovered period 中送到 HLR 的資料會遺失, 所以無法回覆. 需要系統主動進行下面的 restoration 的動作.

•Step 1. HLR 送一個 SS7 TCAP 訊息 的 MAP_RESET 給該 HLR 掌管的所有 MS 所在負責區域的所有 VLRs.

•這些 VLR 將每一個 MS 的資料都用一個 SS7 TCAP 訊息 的MAP_UPDATE_LOCATION 送回給 HLR.•各個 VLR 不可以同時將MS 的資料送到 HLR, 會造成 traffic congestion.

Page 40: 07 GSM Mobility Management

40

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.

•HLR 的 restoration 並不夠完整.•例如 MS 若在 uncovered period 才移動到某些 VLR, 而且 backup 的資料中也沒有其他任何 MS 最後是在這個 VLR. 所以 HLR 就不會有此VLR 的資料, 更不會通知這個 VLR 送 update 資料.•HLR 就不知道在故障前最後一次check-point time時, 手機所屬的VLR 位址.•因此, HLR 就不知道要去對這個 VLR 作如同上一頁的 MAP_RESET 動作.

•要改善這個問題, 因此有人提出 VLR Identification Algorithm, 簡稱為 VIA.

Page 41: 07 GSM Mobility Management

41

VLR Identification Algorithm (VIA)

•為了解決 standard 中 HLR 的 restoration 並不夠完整的問題, 因此有人提出VLR Identification Algorithm, 簡稱為 VIA.•以下將說明 VIA 的作法.

Page 42: 07 GSM Mobility Management

42

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

•VIA 識別演算法:•VIA 的精神在記錄最後一次 backup 後, 所有與曾經與 HLR 接觸過的VLR. 如此在做 HLR restoration 時, 就不會 loss 任何 VLR, 沒有通知到.•因此 VIA 識別演算法可在 HLR 發生故障後, 確實找出所有VLR.

•需在HLR內多加上一個資料結構.•也需加上一些處理程序:

•檢查點程序 Check-point procedure•註冊程序 Registration procedure•還原程序 Restoration procedure

Page 43: 07 GSM Mobility Management

43

Data Structure in VLR Identification Algorithm (VIA) (1/2)

To simply 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 with HLRduring the uncovered period.After an HLR failure, the HLR only needs to send the MAP_RESET messages to VLRslisted in VLR_List*.

•為簡化複雜的說明, 我們假設每個 VLR 只包含一個 MSC. •為了實做 VIA, 我們需要儲存更多的資料, 因此要增加 database 的 data structure.•HLR 加上包含所有在 uncovered period 有送來 MS update 的 VLR 的 list. 必須每當有 MS update 時即立即修改此 list, 存於非揮發 storage.•此 list 稱為 VLR_List*.•所以在 HLR 損毀重建時, 只要對 VLR_List* 中的 VLR 送出 MAP_RESET 即可.

Page 44: 07 GSM Mobility Management

44

Data Structure in VLR Identification Algorithm (VIA) (2/2)

In HLR, every record includes two extra fields.• ts = the last time of location update• PVLR = the address of VLR where the resided at the

lat check-pointing time. Thus, for any MS p, we haveHLR*[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*.

•為了更減少網路上 restoration 的 traffic, VIA 又增加下面的 data structure:•HLR* : 記錄每一個 MS 的資料, 各需要 2 個欄位.

•ts: (time stamp) 此 record 最後一次修改的時間.•PVLR: (previous VLR) 在最後的 check-point 時, MS 所在的 VLR.

•對整體 HLR 也要增加 2 個欄位:•TS: 最後 backup 的時間 ( check-point 時間).•VLR_Counter: 每一個 VLR 都有一個相對欄位 (VLR,Count), Count 是在 uncovered period 才進入此 VLR 的 MS 的個數.•如果在 uncovered period 間, 有 MS 進入一個 VLR, 但又在期間內離開, 這樣的無效的 MS 是不需算在 VLR_Counter 中的 count n.

Page 45: 07 GSM Mobility Management

45

VIA Data Structure

MS VLRVLRV1V2V3V4

HLR* VLR_List*

Backup (Non-volatile Storage)

MS PVLR

VLRV1

V2

V3

V4

HLR

VLR_Counterts VLR

Count

7413

TS

•VIA 的資料結構.•Backup 需存於非揮發 storage.•VLR_List* 包含所有在 uncovered period 有送來 MS update 的 VLR.•HLR* : 記錄所有 MS 的資料

•每一個 MS 需要如下 2 個欄位

•ts: (time stamp) 此 record 最後一次修改的時間.•PVLR: (previous VLR) 在最後的 check-point 時, MS 所在的VLR.

•對整體 HLR 也要增加 2 個欄位:•TS: 最後 backup 的時間 ( check-point 時間).•VLR_Counter: 每一個 VLR 都有一個相對欄位 (VLR,Count), Count 是在 uncovered period 才進入此 VLR 的 MS 的個數.

Page 46: 07 GSM Mobility Management

46

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].ts ← TS HLR[p].PVLR ← HLR[p].VLR

Step 4. VLR_Counter ← NULL; VLR_List* ←NULL;

•VIA Procedure 1: Check-pointing, 在 VIA 中, HLR 資料結構定期按以下檢查步驟作備份

•Step 1. 對每一個位置紀錄都存入備份.•Step 2. TS設為檢查的時間.•Step 3.

•HLR[p].ts 設為 TS, 表示手機位置已更新, 時間則是最近的檢查時間.•HLR[p].PVLR 設為手機現在的位置 HLR[p].VLR

•Step 4. 將 VLR_Counter 及 VLR_list* 設為空的, 表示在 TS 時沒有一個 VLR 有新的漫遊手機.

Page 47: 07 GSM Mobility Management

47

VIA Procedure 2: Registration (1/3)

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;

•VIA Procedure 2: Registration, 假設手機 p 在時間 t 時移動至 VLR Vnew, 則Vnew 會送一個 MAP_UPDATE_LOCATION 訊息到 HLR, HLR便執行註冊動作.

•Step 1. 更新 HLR 資料結構

•Vold HLR[p].VLR•HLR 送出 MAP_CANCEL_LOCATION 訊息到 Vold, Vold 內關於 p 的資料被刪除.•新的 Vnew 紀錄被存到 HLR[p].VLR 中.•told 被存放起來作未來之用.•HLR[p].ts 更新為 t .

Page 48: 07 GSM Mobility Management

48

VIA Procedure 2: Registration (2/3)

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;

}}

•Step 2. 更新在 VLR_Counter 內 Vnew 的 Count 欄位.•若 HLR[p].VLR <> HLR[p].PVLR (表示 p 已換到 Vnew,) 則

•若 VLR_Counter[Vnew] 存在, 則將 VLR_Counter[Vnew].Count 加1 .•反之, 即 VLR_Counter[Vnew] 不存在, 則新增一份VLR_Counter[Vnew] 及一份 VLR_List*[Vnew], 並將VLR_Counter[Vnew].Count 設為1 .

Page 49: 07 GSM Mobility Management

49

VIA Procedure 2: Registration (3/3)

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];}

}

•Step 3. 更新在 VLR_Counter 內的 Vold 的 Count 欄位.•若 told > TS ( 表示手機在 uncovered period 時才移動到 Vold ) 且 Vold<> HLR[p].PVLR ( 表示手機在t之前已移出 Vold ) 則

•將VLR_Counter[Vold].Count 減1. ( 表示手機雖曾移動到 Vold, 但已經移出, 是無效而不必紀錄的).•若VLR_Counter[Vold].Count 為0時, 則順便將VLR_Count[Vold] 和 VLR_List*[Vold] 刪除.

Page 50: 07 GSM Mobility Management

50

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;}

•VIA Procedure 3: Restore•Step 1. 將 TS 設為目前的時間.•Step 2.

•對每一筆在 HLR 內的位置紀錄 p , 將備份資料 HLR[p]*.VLR 還原回 HLR[p].PLVR 及 HLR[p].VLR•並將 HLR[p].ts 設定為 TS

•Step 3. 對每一筆在 VLR_List* 中的 VLR 紀錄均發出 MAP_RESET 訊息到其對應的 VLR, 要求執行一般的HLR還原程序.

Page 51: 07 GSM Mobility Management

51

VLR Overflow Control

•資料庫的容量是固定的, 因此當有太多的 MS 進到某一 VLR 的範圍, 使 VLR full, 再當有 MS 進入則沒有相對應的 record 可用, 因此無法註冊, 當然也無法或得 service. 這種狀況稱為 VLR overflow. 這一章節將介紹一些相關的論文, 探討如何盡量處理 VLR overflow

Page 52: 07 GSM Mobility Management

52

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

•VLR 所存放的 record 的數量可以動態改變.•有可能 VLR 的紀錄數量比 HLR 還多.

•如果大量的行動用戶在短時間內同時移動到某個 LA 時, VLR有可能因此發生overflow問題.•當 VLR 已滿載時, 再進入此區的行動用戶不能再向它註冊.•由於 VLR overflow 是無法解決的 (除非增加硬體設施), 所以在 paper 中提出我們必須修下面的 message flow, 盡可能讓 new arrival MS 獲得服務.

•底下會提到的 message flow 包括 registration, cancellation, call origination, call termination 的處理, 都需要做進一步的修改.•當然要負出代價. 在 VLR 中正確的 record 被犧牲, 存放 new arrival MS 的資料, 萬一犧牲者想打電話或要接電話, 就要花費更多的程序救回來.

Page 53: 07 GSM Mobility Management

53

Overflow Registration Operation

VLR V2

n3 u1

HLR

u1 V1u3 V2

1.21.11.3

2.32.1

Step 1

Step 2

VLR V2

u1

2.2

HLRu1 V1u3 V2

•Step 1: Registration Request:•Step 1.1: normal registration.•Step 1.2: VLR V2 is full. VLR 使用 replacement policy 選出 u3 的record 被 deleted, 改存 u1 的 data.•Step 1.3: VLR forward registration request to HLR. VLR 通知 HLR u3 的 record 因 overflow 而被 deleted.

•Step 2: Registration Response:•Step 2.1: HLR 修改 u1 的 record, 並註明 u3 在 VLR 因為 VLR overflow 已經無 record.•Step 2.2: HLR 送給 VLR u1 的 profile.•Step 2.3: VLR 送 ack 給 u1.

•Note that:•u3 被稱為 overflow user.•replacement policy 有不同的 heuristics. 例如, randomly, select the oldest record, select an inactive record.

Page 54: 07 GSM Mobility Management

54

Cancellation Operation with Overflow VLR

HLR

* u1 V1

HLR

* u1 V2

Before the registration operation After the registration operation(V1 may not be accessed forde-registration)

•如果 VLR1 overflow, 且選擇 u1 是 overflow user.•因為 overflow user 在 HLR 會被標示 * 表示 u1 在 VLR 1 已無資料, 所以當u1 roaming 到 VLR 2, VLR 2 無法從 VLR 1 得到任何 u1 的資料.•所以 VLR 2 在進行完 u1 的 registration 後, HLR 不會送 de-registration 給VLR 1, 只會更改 u1 的 record ( * 不見了).

Page 55: 07 GSM Mobility Management

55

Call Origination with Overflow VLR

V2

M AP_SEND_INFO_FOR_OUTGOING_CALL

MAP_SEND_INFO_FOR_OUTGOING_CALL_ack(deny_reason : no record)

Algorithm O-I

M AP_UPDATE_LOCATION_AREA

MAP_UPDATE_LOCATION_AREA_ack

M AP_SEND_INFO_FOR_OUTGOING_CALL

Normal Call OriginationProcedure

MAP_SEND_INFO_FOR_OUTGOING_CALL_ack

1

2

3

4

5

6

•如果 VLR 2 overflow, 且選擇 u1 是 overflow user.•若 u1 想要打電話, 就會發生 VLR 2 沒有 u1 的資料的問題.•Solution:•Step 1: MS sends the call origination request to VLR 2. •Step 2: VLR 2 沒有 u1 的資料. 不允許 u1 打電話.•Step 3: u1 重新 registration. 但若此時仍造成 VLR 2 overflow, 則 “Overflow Registration Operation” 就會被執行.•Step 4: MS 重新要求 call origination request. VLR 2 進行正常的打電話程序.

Page 56: 07 GSM Mobility Management

56

Call Termination with Overflow VLR (1/2)

VLR V2

u3

HLR

* u1 V2

u3 V2

1.3

1.1

1.2

GMSC

•如果 VLR 2 overflow, 且選擇 u1 是 overflow user.•若有 PSTN user 想要打電話給 u1, 就會發生 HLR 發現 VLR 2 沒有 u1 的資料的問題.•Solution:•Step 1: Location query

•Step 1.1: Call party 打電話給 u1, 此通話被轉送到 GMSC.•Step 1.2: GMSC 將詢問 u1 位置的要求送到 HLR.•Step 1.3: HLR 有標示 * 表示 u1 在 VLR 1 已無資料, 但是 HLR 仍嘗試將 u1 user profile 附在 location query 後送到 VLR 2, 找尋 u1 的位置資料.

Page 57: 07 GSM Mobility Management

57

Call Termination with Overflow VLR (2/2)

VLR V2

u3 u1

HLR

u1 V2

* u3 V2

2.1

2.4

2.2

GMSC

MSC2.3

•Step 2: location response•Step 2.1:

•如果此時 VLR 2 is not full, 則為 u1 建立一 record.•如果此時 VLR 2 is full, 則為將 u3 取代, 為 u1 建立一 record,“Overflow Registration Operation” 就會被執行.•VLR 2 傳回 routable address.

•Step 2.2: HLR 傳回 routable address. 若 u3 被取代, 會被標示*.•Step 2.3: Switch 依據 routable address 建立到 u1 所在 MSC 之間的trunk.•Step 2.4: MSC page u1. 完成 call path 的建立.

Page 58: 07 GSM Mobility Management

58

Summary

GSM Location UpdateBasic Call Origination and Termination ProceduresMobility DatabasesFailure RestorationVLR Identification AlgorithmVLR Overflow Control