李敬,夏勝吾
(廣州海格通信集團股份有限公司,廣州510663)
基于點波束同步軌道衛(wèi)星實現(xiàn)的下一代某頻段衛(wèi)星移動通信系統(tǒng),支持手持、車載、機載、船載等各型終端,以保障針對個人和移動平臺的話音、傳真、數(shù)據(jù)、圖像等中低速移動通信業(yè)務為主,可提升我國在搶險救災、反恐、維穩(wěn)等場景下的應急通信能力,也可以滿足我國廣大人民群眾對個人衛(wèi)星移動通信日益增長的需求[1-4]。但是,衛(wèi)星移動通信終端的開發(fā)不同于地面蜂窩系統(tǒng)終端的開發(fā),沒有大量成熟的基帶芯片可直接使用,必須自主進行研發(fā)。本文對空口協(xié)議棧的形式化技術進行了分析,提出了一種基于有限狀態(tài)機的協(xié)議棧開發(fā)方法,能有效地保證協(xié)議開發(fā)的正確性和完全性。
某頻段衛(wèi)星移動通信系統(tǒng)的協(xié)議體系可分為如圖1所示三個部分:與衛(wèi)星有關層、與衛(wèi)星無關層和外部層,實現(xiàn)與衛(wèi)星有關的功能和與衛(wèi)星無關的功能的分離。與衛(wèi)星有關層包含鏈路適配層下部(與衛(wèi)星有關的適配功能)和物理層等;外部層包含應用、應用適配層等;與衛(wèi)星無關包含網(wǎng)絡協(xié)議層,鏈路適配層上部(與衛(wèi)星無關的適配功能)等[5-6]。
圖1 系統(tǒng)協(xié)議體系結(jié)構
物理層:與地面移動通信系統(tǒng)物理層所提供的服務類似,屬于系統(tǒng)分層協(xié)議的最低層,主要負責幀格式設計、邏輯信道的映射、無線鏈路質(zhì)量管理與控制、星地一體化的頻率和時間同步,同時在上層的控制下完成信道的建立、釋放以及信道上加密。
數(shù)據(jù)鏈路層:數(shù)據(jù)鏈路層的主要目的是在終端和衛(wèi)星網(wǎng)絡間建立可靠的專用數(shù)據(jù)鏈路。鏈路層的協(xié)議一方面要支持鏈路層數(shù)據(jù)報的檢錯和糾錯,另一方面要加入控制功能,建立鏈路幀之間的流量控制、確認和重發(fā)機制。
無線資源控制RR(Radio Resource Control)子層專門用于管理無線接口的功能協(xié)議組,主要任務是對每個申請通信的終端建立其與信關站之間的傳輸路徑和信令路徑,并負責在終端和信關站之間無線資源分配信息的交換以及越區(qū)切換信道的控制。
移動管理 MM(Mobility Management)子層:MM 是建立在RR層之上用于處理移動性和安全保密性的功能協(xié)議組,負責在終端和信關站之間用戶移動性管理信息的交換。
通信連接管理CM(Connection Management)子層:CM位于上述兩組協(xié)議層之上,完成點到點傳輸路徑的建立和釋放,支持以交換信息為目的的通信。它由呼叫控制(CC)、補充業(yè)務(SS)、短消息業(yè)務(SMS)組成。呼叫控制(CC)具有移動臺主呼(或被呼)的呼叫建立(或拆除)電路交換連接所必需的功能;補充業(yè)務(SS)支持呼叫的管理功能,如呼叫轉(zhuǎn)移、記費等;短消息業(yè)務(SMS)是一種提供快速分組消息的傳輸業(yè)務。
協(xié)議各層不同功能過程的執(zhí)行是由特定的狀態(tài)決定的。以無線資源管理RR層為例,RR層有空閑模式,連接建立和釋放模式,連接模式。協(xié)議根據(jù)觸發(fā)事件驅(qū)動狀態(tài)遷移,從而實現(xiàn)RR層的管理和各個功能間的協(xié)同通信。網(wǎng)絡端RR層的狀態(tài)如圖2所示。
圖2 無線資源管理層狀態(tài)轉(zhuǎn)移圖
某頻段衛(wèi)星移動通信系統(tǒng)的空口高層協(xié)議存在功能強大、復雜度極高的特點,所以在自主研發(fā)時需要尋找一種合適的開發(fā)方法。一般對協(xié)議描述采用自然語言,但存在不嚴格、不精確等致命缺點。通信協(xié)議的形式化(Formal Methods)技術,隨著網(wǎng)絡與分布式系統(tǒng)的迅速發(fā)展,也有了較大的進步。在協(xié)議技術中,對協(xié)議實現(xiàn)的正確性、完全性和復雜度起到至關重要的影響的形式描述和驗證技術,是整個協(xié)議設計與實現(xiàn)的基礎。有限狀態(tài)機FSM(Finite State Machine)模型和Petri網(wǎng)(Petri Net)模型[8-9]是目前協(xié)議的形式化方法中比較典型的兩種模型。
協(xié)議形式化技術一般包括活動性、安全性、有界性、完整性和可恢復性或同步性五大特性。
①活動性:能使協(xié)議運行時按照一定良性事件發(fā)生。
②安全性:指在協(xié)議運行過程中不會有惡性事件出現(xiàn)。
③有界性:檢驗協(xié)議的某些指數(shù)是否有界。
④完整性:檢驗協(xié)議是否有遺漏的處理,以及有無異常接收等。
⑤可恢復性或自同步性:當協(xié)議出現(xiàn)差錯后,檢測是否能在有限步驟內(nèi)返回到正常狀態(tài)下執(zhí)行。
目前在各種形式描述技術(Formal Description Technique,F(xiàn)DT)中,有限狀態(tài)機是一種非常重要的形式描述技術,它的主要優(yōu)點有直觀性強、可實現(xiàn)與其他形式方法的組合和轉(zhuǎn)換、且易于自動實現(xiàn),是很多種形式化方法的基礎。有限狀態(tài)機在協(xié)議一致性測試中也是描述協(xié)議控制流最常用的形式化模型。因此,采用這一方式對協(xié)議進行建模和開發(fā)非常合適。
另一種重要的形式化模型是Petri網(wǎng)絡,此模型在刻畫復雜系統(tǒng)時會異常繁瑣,對于描述協(xié)議的進展情況非常不利,一般不會采用這一方法。因此,基于FSM的協(xié)議開發(fā)技術非常適用于某頻段衛(wèi)星移動通信協(xié)議這樣協(xié)議功能復雜的協(xié)議軟件開發(fā)。
本節(jié)將以某頻段衛(wèi)星通信協(xié)議中無線資源管理RR實體連接狀態(tài)轉(zhuǎn)移的形式化描述、設計和實現(xiàn)過程為例,說明FSM方法的基本流程。
采用FSM方法對協(xié)議進行形式化描述、設計和實現(xiàn)的過程可分為5個步驟:上下文定義、進程級分解、進程事件枚舉、進程事件響應和代碼實現(xiàn)[8-9]。其中RR層實體連接流程的功能為:接收上層或本層的連接請求,接收低層的RR實體連接指示,完成RR實體的連接/釋放功能。每個步驟的具體說明如下:
(1)上下文定義
在此步驟中,根據(jù)標準協(xié)議架構,RR層向MM層提供服務,并根據(jù)自身狀態(tài)和接收的消息向?qū)Φ葘嶓w發(fā)送消息,以此實現(xiàn)RR層狀態(tài)轉(zhuǎn)換,從而完成RR層實體的連接/釋放功能。
(2)進程級分解
進程級分解主要確定合適的進程模型分解技術。RR進程模型只需要采用單進程模型即可滿足要求,因此RR層實體連接管理進程采用單進程模型。
(3)進程事件枚舉
進程事件枚舉主要分析與RR層實體連接相關的所有內(nèi)部觸發(fā)事件和外部觸發(fā)事件。與RR層實體相關的觸發(fā)事件如下圖3所示,有:連接建立超時、低層錯誤、消息的發(fā)送、消息接收、服務請求和服務終止等。
圖3 協(xié)議觸發(fā)事件圖
根據(jù)以上協(xié)議觸發(fā)事件,列舉出所有事件如表1所示:
表1 觸發(fā)事件列表
(4)進程事件響應表
進程事件響應表主要針對RR層實體連接進程模型,在不同狀態(tài)下,對各種事件的響應行為采取的描述,事件和行為都是根據(jù)協(xié)議標準規(guī)定的。設計過程中,首先從初始狀態(tài)出發(fā),依次根據(jù)協(xié)議標準發(fā)掘構造出所有狀態(tài)。迭代選擇其中一個狀態(tài),選擇一個所屬事件,然后根據(jù)事件再選擇一個轉(zhuǎn)換條件,并確定響應的行為,由此來確定目標狀態(tài),再把所有狀態(tài)的所有事件和轉(zhuǎn)換條件依次遍歷。
以下以空閑狀態(tài)和等待RR連接狀態(tài)為例進行說明。
①空閑狀態(tài)
表2 空閑狀態(tài)事件響應表
②等待RR連接狀態(tài)
表3 等待RR連接狀態(tài)事件響應表
(5)代碼實現(xiàn)
根據(jù)協(xié)議標準,對事件響應表中的進程行為邏輯進行檢查,以確定是否符合協(xié)議要求,確保功能的完整準確無誤。然后再結(jié)合設計的狀態(tài)轉(zhuǎn)移圖和狀態(tài)行為表,按照標準模板編寫C++代碼。
將有限狀態(tài)機應用于某頻段衛(wèi)星移動通信系統(tǒng)協(xié)議棧的開發(fā)設計中,再結(jié)合有效的軟件設計,對于系統(tǒng)的嚴謹性和完善性的提高都有促進作用。對于通信系統(tǒng)而言,如何能有效全面地得以實現(xiàn),有效狀態(tài)機起著重要作用。采用有效狀態(tài)機的設計思想,從狀態(tài)轉(zhuǎn)移圖到狀態(tài)行為表,只要設計完整合理,保證狀態(tài)轉(zhuǎn)移正確,就可以達到預期的效果。