劉永輝


摘 要:作為下一代網絡和IP多媒體子系統的重要協議,SIP協議的主要目的是在IP網絡中建立、修改和終止多媒體會話,本文主要針對關于SIP協議在電話網絡中的主叫用戶和被叫用戶之間建立通話的應用進行闡述。
關鍵詞:SIP;UAS;UAC;早期媒體;常規媒體
1 SIP協議
作為下一代網絡(Next Generation Network,NGN),3G 網絡的主要目標就是為用戶提供各種多媒體服務,包括語音業務和互聯網數字業務等,在各種通信協議中,會話初始化協議(SIP)憑借其簡單、易實現等多方面的優點成為下一代網絡和 IP 多媒體子系統(IMS)的重要協議。
SIP 協議包含兩大要素:用戶代理UAC和UAS,其中 UAC 使用事務層創建和發送請求并接受響應;UAS 使用事務層接收請求并創建和發送響應。
2 基于SIP協議的應用
在電話網絡中呼叫的目的是為了在主叫用戶和被叫用戶之間建立通話,通話建立前主叫用戶和被叫用戶之間傳輸的媒體為早期媒體,例如回鈴音、彩鈴等,通話建立后主叫用戶和被叫用戶之間傳輸的媒體為常規媒體。
要傳輸早期媒體,需要在主叫用戶和被叫用戶之間進行早期媒體協商、建立媒體會話。下面對網關模式下的早期媒體協商進行介紹。
步驟101、用戶代理客戶端UAC向用戶代理服務端UAS發送INVITE請求,該請求中攜帶有offer;
步驟102、UAS回復臨時可靠響應183給UAC,該響應攜帶有answer以表示協商成功;
步驟103、UAC向UAS發送PRACK確認183臨時可靠響應;
步驟104、UAS回復200OK確認,完成和UAC的早期媒體協商,進而建立早期會話。
步驟105、接著,UAS可以向UAC發送早期媒體;
步驟106、當UAS摘機應答時,回復200OK響應給UAC,停止發送早期媒體;
步驟107、UAC發送ACK建立呼叫給UAS,進而將早期會話轉換到常規會話;
步驟108、UAC和UAS實現雙方正常通話。
雖然,網關模式已得到了廣泛應用,但其不能處理分叉呼叫,從而具備一定的局限性,具體如下:
步驟201、UAC同時向兩個UAS(UAS1和UAS2)發送INVITE呼叫請求。
步驟202-208、UAS1和UAC,UAS2和UAC分別完成早期媒體協商,并且UAS1向UAC發送早期媒體。
步驟209、由于UAC已選擇UAS1作為早期媒體播放方,并接收了來自UAS1的早期媒體,因此發送UPDATE(MUTE)請求給UAS2,請求將UAS2設置為靜音。
步驟210、UAS2回復200OK響應消息給UAC,并設置自身的媒體屬性為靜音。
步驟211、在t1時,UAS2摘機應答,向UAC發送200OK響應,被叫用戶開始講話;但由于自身的媒體屬性被設置為靜音,USA2不會向UAC發送被叫用戶講話產生的常規媒體,該過程中會導致被叫用戶講話的媒體流丟失。
步驟212-213、UAC向UAS1發送CANCLE消息取消呼叫,并向UAS2發送ACK消息以建立呼叫。
步驟214、UAC向UAS2發送UPDATE(UN MUTE)請求消息以取消UAS2的靜音。
步驟215、在t2時刻,UAS2回復給UAC200OK確認消息,取消靜音,并完成媒體重協商。
步驟216、接著,UAS2和UAC可以交互常規媒體。
3 結語
本文主要基于SIP協議對電話網絡中主叫用戶和被叫用戶之間建立通話的過程進行描述,著重對網關模式下早期媒體的協商以及常規媒體的交互進行闡述,并提出網關模式下對分叉呼叫有一定限制,需要我們進一步克服其丟失媒體流的缺點。