2007/06/26

GSM Cell Size (GSM涵蓋範圍)



[前言]
試著問一位有經驗的工程師,GSM或3G的基地台涵蓋範圍最大幾公里,獲得的答案往往不夠確定,但模糊的語義中大概可以歸納成三點:
1. 與天線高度有關
這點非常明顯,基地台的塔高越高,天線可以涵蓋的面積就越大,只要想像將電燈泡掛在越高處,室內可以照亮的角落越多。同理可知基地台的位置越高或是塔高越高,可以服務的面積越大。

2. 與發射功率有關
這點也很直覺,基地台的發射功率越高,電波就可以傳得越遠。

3. 與地形地物有關
這點需要一點想像,但是如果熟悉RF Channel model的人,對於地形與地物如何影響path loss或是產生multi-path與shadowing的效果,將不陌生,因此不難想像假設MS與BTS相同距離,例如都是10km,BTS的發射功率與天線高度固定,將此條件放在東京市與台北市,所得到的通信品質將不會一樣,這就是地形地物的效應。

但是這樣的答案太過於普遍性,幾乎可以應用於任何無線系統,例如FM, GSM, 3G, WLAN或是WiMAX等等,以致於無法用來判斷系統性能的真實極限。

GSM的涵蓋範圍到底有多大?WiMAX說可以遠傳50km算是很厲害嗎?真的有比GSM厲害嗎?

根據TA的先天限制,GSM Cell Size(涵蓋範圍)如下:
- GSM涵蓋範圍理論上可以到達半徑34公里(GSM400例外)
- GSM400涵蓋範圍理論上可以到達半徑118公里

WiMAX宣稱理論上可以到達半徑50公里,其實並不特別,GSM400的涵蓋範圍是其兩倍有餘


(建構中)

070707-draft

2007/06/25

GSM Timing Advance獲得程序



[前言]
Timing Advance (TA)是GSM/GPRS手機一個很重要的參數,最初用來表示MS與BTS之間的空中傳輸延遲(細節上是BTS-->MS-->BTS的距離),讓手機使用SDCCH時可以確實遵守three-time-slot-delay的上傳規矩,後來在研究手機定位的技術時非常依賴此參數來推算MS的經緯度,於是TA變得越來越重要。

筆者一直很好奇TA的估算方式以及MS獲得TA的過程,底下是筆者的研究心得,目前只清楚GSM MS獲得TA的過程。

[GSM MS獲得TA的過程]
圖一與圖二是MS獲得TA的過程,共有8個步驟,說明如下:
狀態:MS開機後,進入Idle Mode
step 1: BTS對小區廣播,內容是: a) Frequency correction Bursts 與 b) Synchronization Bursts.

step 2: GSM MS因為某種理由(Establish Cause),需要建立專屬通道,因此由RACH發出RR:Channel Request給BSC。

step 3: BTS解碼RR: Channel Request之後,將Request Reference中的IE:Establish Cause(理由)以及IE:Random Reference(隨機碼)放入BTSM:CHAN_RQD訊息中;並根據由BCCH(DL)到RACH(UL)的時間來估算TA,將此數值以IE:Access Delay加入,一併通知BSC。
(說明:筆者目前還不清楚此TA計算的細節如何進行。)

step 4: BSC命令BTS在空中界面建立一條SDCCH專屬通道給MS使用,並參數化描述此SDCCH的特性。

step 5: BTS回報BSC此SDCCH已經建立。

step 6: BSC送出RR:Immediate Assignment給MS,通知MS具備哪些參數特性的SDCCH已經建立,要求MS立即根據此參數來更改通道的組態。當然TA也包含在其中。

step 7: MS在AGCH根據Request reference中的理由以及隨機碼(甚至Frame Number)來辨識網路給自己的RR:Immediate Assignment訊息,因此獲得TA。
說明:如果有許多MS同時提出專屬通道的申請,網路也會同時發出許多RR: Immediate Assignment,MS必須從其中挑出給自己的訊息,才能正確改變通道組態。

step 8: MS使用此SDCCH之後,BTS定期估算TA,固定每480ms藉由BTSM:MEAS_RES訊息向BSC回報更新TA。
說明:其實程序到此MS才剛擁有SDCCH以及取得TA,接下來才要開始作"正事"呢,例如在SDCCH提出LU或是呼叫服務等等,但是本文只關心TA的取得過程,所以程序就此打住。

When the BTS detects an access burst transmission on RACH or PRACH, it shall measure the delay of this signal relative to the expected signal from an MS at zero distance under static channel conditions. (How to do that?)

This delay, called the timing advance, shall be rounded to the nearest symbol period and included in a response from the BTS when applicable.

When the MS receives a new value of TA from the BTS on the SACCH, it shall implement the new value of TA at the first TDMA frame belonging to the next reporting period (as defined in 3GPP TS 05.08), after the SACCH frame containing the new TA value. The MS shall signal the used TA to the BTS on the SACCH.

理論上pico-BTS無須測量TA,但是某些必要的時候,還是需要送出一個值,這時無論是真實測量的、或是程式產生的TA數值都可以。

[心得]
1. RR的某些訊息與BTSM息息相關,所以對BTS而言,RR不完全是通透的,有些RR訊息BTS必需須先解碼才能執行或是複製部分IE參數寫入BTSM訊息中。
2. BTS到底如何計算出TA的程序,有待未來持續深入了解。

參考文獻與延伸閱讀:
[-] Gunnar Heine, GSM Networks: Protocols, Terminology, and Implementation, Artech House Publishers, 1999.
[-] 3GPP TS 05.10 V8.12.0 (2003-08) Technical Specification Group GSM/EDGE Radio Access Network; Digital cellular telecommunications system (Phase 2+); Radio subsystem synchronization (Release 1999)

070625r4版本
GSM, GPRS, EDGE, GSM, GPRS, EDGE, GSM, GPRS, EDGE, GSM, GPRS, EDGE,

2007/06/20

GSM的手機狀態與動作

[GSM MS基本狀態]

MS有兩種狀態:關機(NULL狀態)與開機(power-on)
MS開機後又有兩種模式:Idle Mode和Dedicated Mode.

- Idle Mode,通常是指手機開機後,排除通話、傳送簡訊與上網的時候,用戶沒有使用任何服務的空白狀態。有兩種特性:
1. Searching BCH狀態:MS搜尋信號品質最好的BCCH,這時MS 會測量signal strength 與BER of theserving BTS,隨時若發現有收訊更好的cell,就會轉到此cell要求服務。
2. BCH狀態:MS與某一個BCCH同步,隨時可以透過RACH執行隨機接取的程序。
在Idle Mode的MS並不佔有任何專屬通道,除了聽BCCH以外,同時還聽CCCH以便接收呼叫(Paging)。

- Dedicated Mode,通常是指手機開機後進入通話、傳送簡訊或上網的時候,也就是用戶使用服務的狀態。也有兩種特性:
1. Tuning DCH狀態:MS授權後擁有一個實體層通道,並試圖保持與此通道的同步。
2. DCH狀態:MS開始建立專屬邏輯通道,進行上層的通訊。
在Dedicated Mode的MS佔有實體通道,並與BTS間保持最少兩條專屬邏輯通道的狀態,其中有一條是SACCH。

當MS開機之後的短短一分鐘之間,MS內部就如同上午10點剛開張的上海某百貨公司一樣,客人還沒上門,內部已經忙成一團,專櫃小姐剛吃完早點正在補妝,特價品的牌子堆在推車上需要人手更換,週年慶的綵帶剛剛札好,彩色氣球躺在地上充氣,準備中午升空招財...

同樣地這時候的MS雖然處於Idle Mode,卻一點都不"Idle",看看規格書[4]的經典敘述:
When an MS is switched on, it attempts to make contact with a GSM public land mobile network (PLMN). The particular PLMN to be contacted may be selected either automatically or manually.

The MS looks for a suitable cell of the chosen PLMN and chooses that cell to provide available services, and tunes to its control channel. This choosing is known as "camping on the cell". The MS will then register its presence in the registration area of the chosen cell if necessary, by means of a location registration (LR), GPRS attach or IMSI attach procedure.

If the MS loses coverage of a cell, it reselects onto the most suitable alternative cell of the selected PLMN and camps on that cell. If the new cell is in a different registration area, an LR request is performed. If the MS loses coverage of a PLMN, either a new PLMN is selected automatically, or an indication of which PLMNs are available is given to the user, so that a manual selection can be made.


[GSM MS開機程序]

手機被用戶開機之後的一兩分鐘內,忙著下面的幾件事:

- PLMN Selection 或 Network Selection (網路選擇)<-- 每次必做
- Cell Selection (小區選擇) <-- 每次必做
- Cell Re-selection (小區重選)<-- 有條件
- Location Updating (位置更新)<-- 有條件

(這四個程序未來我們會個別詳細研究。)

請注意以上這四個程序不一定只在手機開機後才做,附圖說明其互動關係。

談到這裡,筆者漸漸感覺到,MS的狀態受到三個重要因素的控制:
地理位置(Location)、使用服務(Service)與時間(Time)。
如果寫成數學方程式,應該可以表示成:

state machine of MS := MS(Location, Service, Time)

以開機而言為例,同一隻手機在不同國家或地區的開機程序,可能不同;同一隻手機在相同地區相隔一段長時間(例如說一年後)的開機程序,可能不同;同一隻手機在關機前所使用的服務,可能會影響到下次開機的程
序。正因為條件如此多變,所以手機的技術會顯得如此複雜難懂,也是理所當然。:-)

[心得]
研究到此,筆者不得不承認一點,Idle Mode與Dedicated Mode這個名稱與定義很容易引起誤解,請讀者務必要小心判斷。

尤其是MS執行LU(Location Updating)程序的時候最難判斷。當用戶開機後沒有使用任何服務,表面上MS應該乖乖處於Idle Mode,其實不然也,MS會週期性或因為移動而自動向網路提出LU的申請,尤其當開車的時候最明顯,原本安靜的MS會突然忙錄起來,電波耦合到汽車音響偶爾發出刺耳嘟-嘟-嘟的聲音,此時即是MS暫時切換到Dedicated Mode,執行LU的程序。

對有GPRS功能的MS而言,有些設計成一開機即向網路要求一個IP,直到關機才釋放,這也是從Idle Mode自動切換到Dedicated Mode的例子。

所以MS的Idle Mode與Dedicated Mode似乎不應該以用戶是否使用MS來判斷,而應該以MS內部是否使用專屬通道的狀態來區分。

Ref:
[1] Joerg Eberspaecher and Hans-Joerg Voegel, GSM:Switching Services and Protocols, 1999.
[2] 3GPP TS 44.018, Radio Resource Control Protocol.
[3] 張威, GSM網路優化 – 原理與工程, 人民郵電出版社, 2004.
[4] (1999-11) Digital cellular telecommunications system (Phase 2+);Functions related to Mobile Station (MS)in idle mode and group receive mode(GSM 03.22 version 7.2.0 Release 1998)

070620r4版本

2007/06/12

GSM手機關機程序(GSM MS Detach Procedure)


[前言]
在手機許多複雜的程序當中,關機算是最簡單的一個,由於GSM太基本,很多文章都不再談,原因是現在GSM幾乎都有GPRS功能,手機關機程序是GSM結合GPRS的過程,不再是單純GSM的關機程序,所以想找資料還不容易,這次能夠在大陸的書籍中找到[3],真是幸運。

[過程]
GSM手機正常關機時,向網路發送的最後一條訊息,就是MM:IMSI_Detach_Indication,MSC/VLR收到此訊息後,會在該MS的IMSI上面作標註,將此用戶視為無效用戶,有人撥打電話給此用戶時,網路不會再發送Paging給此用戶。此程序稱為GSM MS-initiated Detach Procedure。

Detach procedure只通知到GSM MS關機前所駐留的MSC/VLR,HLR不會被通知,當有人要找該用戶,HLR會向此MSC/VLR要求該用戶的MSRN(MS Roaming Number),此時MSC/VLR才告知HLR該用戶已經detach,不需要再Paging該用戶。

[圖 IMSI Detach procedure]
這張圖應該是GSM MS各種程序中,最簡單的一個,描述用戶在信號正常的情況下,將MS正常關機,或是MS電量耗盡的自行關機,在真正休息前與網路的溝通程序。雖然關機或沒電也可能發生在通話中,但是筆者還不清楚是否通話中按下power-off手機會先很快地結束通話,跳回Idle Mode,再執行此程序,或是直接在Dedicated Mode執行此程序呢?無論如何,此圖所畫的是在Idle Mode的關機程序,所以Um界面的底層使用RACH。
(筆者推論,因為結束一通語音通話需要MSC的確認,需要時間,在通話中突然沒電或突然關機的剎時,MS可能來不及等到回到Idle Mode,所以使用Dedicatede Mode直接執行Detach procedure是有可能的。)

這張圖基本上參考[3]圖6-9所繪製,詳細的訊息是從實際GSM機房Abis與A界面取得,因為缺乏B界面的機房資料,所以TCAP/SCCP無法查出訊息名稱,儀器使用NetHawk GSM Analyser,邏輯關係由筆者逐條分析訊息的關連性自行判讀,其中BSSMAP的兩條訊息:Clear_CMD(Clear Command)與Clear_COM(Clear Complete)是筆者推測的,請讀者留意。

當BSC回應MSC BSSMAP: Clear Complete之後,應該要進行Um與Abis界面的Channel Release程序,請參考圖二。但是因為MS關機,無法回應,所以此程序應該只到Abis為止,Um界面因為等不到MS的回應而在BTS單方面清除RR與logicla channel。

[問題]
筆者目前還不懂得如何看出A訊息與B訊息以及A'訊息的關連性(假如MSC收到BSC送來的A訊息以後,立刻發出B訊息給VLR,然後回應A'訊息給BSC),
問題簡化如下:
step 1: BSC --A--> MSC
step 2: MSC --B--> VLR
step 3: BSC <--A'- MSC
請問A, A'與B的關連性如何描述?
如果短時間內有10個Ai message由BSC發出給MSC,如何將所有MSC產生的Bi message, Ai' message與單獨每條Ai的關連性串聯起來,這是call trace分析的重點技術。

後來筆者在3GPP TS 48.008找到這張圖二 Radio Resource Release的Call Flow,圖中可以清楚看出,Um界面的無線資源的釋放(即通道釋放)可以從A界面發起,此BSSMAP:Clear Command是MSC發出的,用來命令BSC的RR釋放Um以及Abis的通道資源,難怪有些書將RR的控制延伸到MSC,不是沒有原因的。但筆者還是以信令的解讀/發送者當做邊界,以RR而言,還是到BSC為止。

圖二說明了收到BSSMAP:Clear Command之後,BSC要發出RR: Channel Release給MS,然後LAPDm完成logical channel的釋放,但是對於MS關機程序,由於MS可能無法回應,所以恐怕無法收到RR message,或者收到以後也無法回應。

以目前筆者的功力,只能靠規格書中這種Call Flow來判斷跨界面message的產生與非成對message的回應。

[心得]
1. MM下面的RR不見得必須同時有訊息存在。
2. Call trace的技術細節一定有規格書描述,需要用心慢慢發現。

參考文獻與延伸閱讀:
[1] Jörg Erbespächer and Hans Jörg Vogel, GSM: Switching services and protocols, Wiley 1999
[2] Gunnar Heine, GSM Networks: Protocols, Terminology and Implementation, Artech House Mobile Communications Library, 1999.
[3] 張威, GSM網路優化 – 原理與工程, 人民郵電出版社, 2004.
[4] ETSI TS 129 002 V5.7.0 (2003-09), Digital cellular telecommunications system (Phase 2+); UMTS, Mobile Application Part (MAP) specification (3GPP TS 29.002 version 5.7.0 Release 5)
[5] 3GPP TS 48.008, MSC-BSS interface Layer 3 specification.

070619r3版本

2007/06/01

GPRS信令盲點 - RR(續篇)

[前言]
自從發出"GPRS信令盲點-RR"這篇文章之後,始終覺得有點心虛,繼續在網路上尋找,幾乎是搜遍網路上世界各地的GPRS教材,想要找到類似說法,很遺憾地,都沒看到類似筆者的說法,這點令筆者非常擔心,怕會誤導視聽,於是再花一些時間研究,這次單純求證RR layer是否有針對GPRS而新增的訊息(Message),還好結論是有的,讓筆者放心不少。在此分享筆者的研究心得。


[方法論]
最初筆者試圖從RR許多的訊息中用名稱去判斷屬於GPRS的專用訊息(例如名稱中有包含"PACKET"字眼的訊息),後來覺得這種方式很冒險,會漏失訊息,於是到處問專家,但沒有人正好涉獵到這部份,只好自己設計一個可行方法。

筆者回朔GSM的Radio Interface Layer 3的規格一直到Phase 2+的剛開始,GPRS還沒有加入的時候,依照規格書末的"修正紀錄"顯示v5.9.0(1998-03)是最後一個沒有GPRS功能的版本,從v6.0.0開始(也是1998-03),GPRS的功能就被加入。

因此筆者比較v5.9.1[1]與v6.2.1[2](這是ETSI所能找到分別最接近v5.9.0與v6.0.0的文件版本),將後者新增的訊息濾出,仔細查看其訊息的功能描述,再研究訊息內部的IE(Information Element),來交叉判斷此訊息的功能是否包含GPRS。

上面兩圖[Table-1]與[Table-2]是比較的結果。左邊是v5.9.1的RR訊息,由於此版本不包含GPRS功能,因此這些RR訊息可視為單純GSM的RR訊息,右邊是加入GPRS以後的RR訊息,藍色方框標示著筆者判讀為GPRS的RR訊息。

結果果然發現不少新增加的訊息,這些RR訊息都是為GPRS而服務的。

說明:v5.x.x的版本並沒有因此停止,一直編修到v5.20.0才停止。

接下來,筆者將規格書推到2003年版本的GPRS,不過使用的是TS 44.018 RR專用的規格書,再與GSM 04.08的比較其差異。以相同的方法過濾,又獲得一些新的訊息如上表[Table-3]所示,大部分是與DTM(Dual Transfer Mode)相關的訊息。

說明:TS 44.018是GSM 04.18在Release 99時期從GSM 04.08所分出來的,原本GSM 04.08包含所有Radio Interface Layer 3的訊息,包含CM, MM, SM, GMM, RR,後來RR移出來用單獨文件GSM 04.18來討論,由此可見得RR的重要性與複雜度。

最後,筆者以2003年為參考點,整理了與GPRS相關的RR訊息如上圖,總共挑出14個訊息,供讀者參考,筆者不敢保證自己的判斷完全正確,但至少證明RR的重要性,即使在GPRS也不容忽視。

這些訊息的共通運作模式如下:在Um界面,RR提供上層MM(包含GMM)與SM的服務,在某些情況,RR接受到來自這些上層的primitive(原語),由BCCH或DCCH送出RR訊息,這些訊息有可能是網路給手機,或是手機給網路,看起來是利用GSM的邏輯通道來管理GPRS的PDCH與其它程序,因此如果認為GPRS只要注意GMM/SM與LLC而忽視原本GSM上面RR的訊息,在網路監控與除錯的工程上,就會遺漏重要的一塊拼圖。

以上表格中的訊息,下方都有簡短的描述,這些描述所參考的版本並不一致,這點請讀者留意,尤其是System Information Type 13/14/15是參考GSM 04.08 v 6.2.1的描述,其餘的描述差別不大。

[結論]
GPRS規格書或參考書談到GPRS控制信令時,只提到GMM/SM/LLC/RLC/MAC的原因,筆者逐漸理解可能是針對GPRS特有的或新增的信令而言,RR畢竟是GSM時代的遺老,但是根據筆者本文的研究,RR在GPRS時代依然佔有重要的信令角色,在研究GPRS時不可忽視RR的功能。

[參考文獻]
[-] ETS 300 940 (October 1998);Digital cellular telecommunications system (Phase 2+);Mobile radio interface;Layer 3 specification(GSM 04.08 version 5.9.1)

[-] EN 300 940 V6.2.1 (1999-04)Digital cellular telecommunications system (Phase 2+);Mobile radio interface layer 3 specification(GSM 04.08 version 6.2.1 Release 1997)
說明:此文件是1999年四月發行的,但文件本身卻誤植為1990年四月,請讀者注意此筆誤。

[-] ETSI TS 144 018 V4.14.0 (2003-04); Digital cellular telecommunications system (Phase 2+);Mobile radio interface layer 3 specification;Radio Resource Control Protocol(3GPP TS 44.018 version 4.14.0 Release 4)

070602r2版本