
售前電話
135-3656-7657
售前電話 : 135-3656-7657
國家高新技術企業 省級專精特新企業
咨詢熱線:135-3656-7657 400-6333-661
VoIP軟交換協議適配的目標是將不同的協議轉換成統一的BCSM到用戶的接入指示,以驅動BCSM按照其預定義的方式運轉,并實現與外部網絡設備之間的交互。簡單地說,就是將接收的不同信令消息解釋成呼叫模型可以識別的BCSM指示,并將呼叫模型發出的BCSM指示轉換為相應的協議行為。不同協議的信令流程是有差別的,通過一定的映射關系,就可以轉換成統一的BCSM指示。但是,由千協議是多樣的,它們與標準BCSM指示之間的適配方式并不固定,如果適配模式設計不合理,就會導致呼叫處理操作與用戶設備實際執行動作之間的偏差,這就需要盡可能采用規范化的模式來處理不同協議與BCSM模型之間的適配規則。
協議適配的核心是消息映射以及過程匹配,因此可以認為協議適配需要實現兩方面的功能:靜態映射和動態交互。靜態映射主要是實現特定協議的消息/事件到BCSM指示/事件的映射,這種映射包括消息格式、消息名稱、消息參數的轉換等;動態交互則主要考慮如何使協議處理過程適應標準化的BCSM處理過程的需要,比如在呼叫掛起時,實現協議處理過程的暫停和恢復等,尤其是在需要接入外部業務的時候。概括地說,上述靜態映射和動態交互功能,就是以BCSM為基礎,對特定協議的語義和語法進行解釋的過程。
UniNet軟交換設備的設計中,協議適配功能也是以有限狀態機為基礎進行實現的,可以稱之為協議映射狀態機。首先通過狀態等價映射的方式找出協議消息與BCSM指示的對應方式(靜態匹配);然后通過FSM疊加的方式實現兩者狀態遷移的聯動過程(動態匹配)。
1.協議映射狀態機設計
協議適配的核心就是映射狀態機的設計,協議映射狀態機設計的難點是對其狀態的設定。通常情況下,通信協議采用有限狀態機的方式對協議功能進行形式化描述,并實現對協議消息收發上下文的管理。在一定程度上,可以認為這個狀態機就是針對該協議的“基本呼叫狀態模型”。因此,在協議適配的實現機制中,可以在各協議已定義的協議狀態機的基礎上,首先實現它們與BCSM之間的狀態映射,這是進行消息映射的基礎。顯而易見,如果兩個狀態機在某個狀態上是等價的,那么它們的輸入事件和輸出事件都應該是等價的,因此只要找出協議狀態機與BCSM在狀態上的對應關系,就可以很容易給出協議消息與BCSM指令之間的對應關系。
在前文中已提到,UniNetBCSM是通過提取各協議呼叫處理流程的共性部分所形成的。在功能上,BCSM所代表的呼叫處理功能與各協議本身所具有的功能是不完全一致的。比如,H.323和SIP都具有處理多媒體呼叫的功能,但是在處理簡單語音呼叫時,只需要它們提供BCSM所要求的功能就可以,其他的功能可以認為是這個協議的特殊能力,只是暫時不需要。而且,不同的協議由于應用環境的不同,其協議的定義方式也各有特點。比如SIP協議主要是針對無傳輸保證的IP網設計的,在協議中設計了“三次握手”的機制。而在H.323以及IUSP協議中就沒有這種機制,所以在BCSM中也不會采用。因此,由于協議特點的不同以及協議本身處理能力的不同,在協議狀態機與BCSM狀態機對等映射過程中,經常出現的情況是兩個FSM(狀態模型)不具有同樣數目的狀態,或者說,在兩個狀態模型之間不存在完全等價關系。在這種情況下,就需要根據應用目標對映射方式進行補償。對千軟交換設備的設計而言,協議映射的最終目的是按照BCSM的要求進行呼叫處理,所以當存在不完全等價映射時,應以BCSM為基準進行補償。這就可能導致某協議狀態機中的多個狀態會被映射到BCSM中的單一狀態(即忽略VoIP軟交換協議處理中的某些特殊能力),或者反之,BCSM中的單一狀態被映射到協議狀態機中的多個狀態(即對協議處理進行一定的擴展,一般用千業務提供的需要)。下圖進一步解釋了FSM狀態映射的幾種表現方式。
呼叫模型狀態映射方式示意圖
在上圖中,以FSMA(基本呼叫狀態模型)為基準,FSMA與FSMB(協議狀態模型)之間的狀態映射有4種方式:
•一對一,如Q到l;
•一對多,如P到G、H;
•多對一,如T、U到K;
•多對多,如R、S到J和K。
在上述映射方式中,多個狀態之間的交叉映射(即出現多對多映射的情況)是我們所不希望出現的情況,因為它可能帶來二義性問題。比如在上圖中,FSMA中的狀態S被分別映射到FSMB的狀態J和狀態K,但是FSMB中的狀態J與FSMA中的狀態R也存在一個映射。這樣,在將FSMA中的狀態R到狀態S的遷移過程映射到FSMB時,存在二義性的解釋方式,FSMB將不存在唯一的遷移方式:它可能從狀態J遷移到狀態K,也可能繼續停留在狀態J上。