SIP協議在嵌入式Linux中的實現
本文實現的系統將在ARM9平臺的設備終端上運行,將交叉調試好的程序燒寫到ARM9的Flash存儲模塊中,再進行調試和運行測試。其測試方法是在ARM9平臺上實現一個簡單的SIP終端系統,該系統利用SIP偵聽程序,當一段用戶發起呼叫時,雙發的SIP模塊開始通信。利用SIP信令主動發起呼叫或接收對方呼叫建立會話連接,連接建立好后傳送RTP數據,直到一方用戶提出結束請求,終止該次會話,系統恢復SIP偵聽狀態。SIP終端之間呼叫流程如圖4所示,開始時主叫(IP=192.168.36.1)向代理服務器(IP=192.168.51.24)發起呼叫,當主叫與被叫的鏈路搭建成功后,主叫與被叫開始語音通信,語音通信采用的標準是G.729,主叫發送SIP信令給代理服務器采用UDP傳輸協議,主叫與代理服務器之間在SIP呼叫過程中也同時進行媒體協商,采用網絡協議分析工具Ethereal抓包分析,結果如表l~表3所示。
由表2可見,代理服務器向被叫發起呼叫,并同時對主叫作出響應。被叫對呼叫代理作出響應主要采用SIP/SDP協議,是為了使主叫和被叫的媒體協商達成一致。由表3可見,被叫對主叫所發起的呼叫能夠作出響應,主叫與被叫之間能夠實現SIP呼叫,并進行語音通信。測試結果證明,SIP協議棧在嵌入式Linux系統平臺下,運行良好,基本滿足設計需要。
4 結束語
本文探討了SIP協議在嵌入式環境下的應用,討論了嵌入式SIP協議棧的設計方法。完成了在ARMSYS2410-B的實驗室開發板上建立嵌入式Linux系統并在其上實現SIP協議棧主要模塊的主要工作。測試結果表明:該協議棧占用空間小,呼叫建立時間短,呼叫成功率高,滿足嵌入式式設備對實時性、可靠性和存儲空間小的要求,具有良好的性能。
linux相關文章:linux教程
評論