【摘要】 本文首先對基于P2P-SIP的VoIP系統進行了系統需求分析,闡述了基于CHORD的P2P與SIP相結合的設計方案,通過對SIP會議模型的分析和比較,確定了本系統的VoIP會議模型,并給出會議系統的邏輯架構設計及模塊劃分,最后為支持本會議方案對SIP協議進行了擴展設計。
【關鍵詞】 P2P-SIP VoIP會議系統
一、系統需求分析
傳統C/S模式下基于SIP的VoIP會議系統,除了客戶端外,還需要配置SIP注冊服務器、位置服務器、重定向服務器以及會議服務器,因而會議系統的構建和管理維護都需要較大的費用代價。
二、P2P與SIP結合的設計方案
不同于傳統的SIP系統結構,P2P-SIP系統不再區分服務器和用戶代理,系統中每個結點既承擔服務器的功能,同時也承擔用戶代理的功能。結點之間直接進行聯系,一方面結點可扮演SIP網絡電話中幾乎所有實體的角色,不僅具有客戶機方面的SIP用戶代理功能,可以發起、接收呼叫,而且還具有傳統SIP所需要的服務器功能,可以向用戶提供注冊、代理和重定向服務;另一方面結點還必須能夠組織和管理P2P網絡,具備處理結點的加入與退出、信息的路由、P2P網絡穩定性保持等功能。P2P-SIP覆蓋網絡通過CHORD算法來組織和維護。系統中每個結點根據其結點IP地址和端口號使用Hash函數計算出一個Node-ID,并根據Node-ID的大小,首尾相連成一個的邏輯環結構。系統中電話用戶的Resource-ID是根據用戶名使用Hash函數計算得到的。一個Resource-ID為k的用戶注冊信息將存儲在第一個Node-ID大于或等于(模運算)k的結點處。用戶注冊信息的存儲位置會隨著相關結點的加入和離開而發生變化。
三、會議模型的分析與選擇
3.1 SIP會議模型分析
SIP會議模型按信令與媒體流的關系主要分為緊耦合和松耦合兩種模型。緊耦合會議模型是指由一個中心結點實現信令集中控制,又分為端系統混合、集中混合和信令集中媒體流分布三種模式。松耦合會議模型則是指無需中央SIP信令的控制,終端直接進行交互,又分為組播會議和網狀分布式單播會議兩種模式。
3.2 會議模型的選擇
本文網絡會議模型采用信令集中、媒體流分布模型。由若干個核心管理結點組成SIP會議的信令控制中心,負責維護與所有參與會議結點間的SIP信令連接,而與會結點之間沒有SIP信令的交互。音頻流則由各個與會結點分別進行處理,每個參與會議的結點同時接收其它與會結點的音頻流。作為會議管理結點不參與音頻流的處理,每個會議的發起由CHORD邏輯環上的結點發出,CHORD邏輯環上的各結點可以發起多個會議,不同會議的管理將分布在不同的結點上,同一會議的管理結點將采用P2P備份策略。
3.3 系統邏輯架構
系統邏輯結構分為會議層、SIP層和DHT層。會議層用于處理與會議相關的操作;SIP層負責構造SIP信令消息,通過對SIP協議的擴展,CHORD邏輯環上結點間的信息交互可以SIP信令格式實現;DHT層負責結點的定位操作,可實現SIP協議中的結點發現、呼叫建立等功能。該結構只須對SIP協議進行擴展而無須修改,與現有采用C/S結構的SIP網絡電話系統相兼容。
3.4 系統模塊劃分
系統可由以下幾個模塊組成。在整個系統設計方案中,用戶界面主要提供用戶登錄界面,用戶基本信息的輸入等功能;注冊模塊負責新結點的注冊加入以及用戶信息的注冊;定位模塊負責用戶定位,包括注冊用戶的定位和呼叫用戶的定位;退出模塊負責結點和用戶的退出;DHT操作模塊負責調用SIP協議棧實現基本的CHORD算法;會議模塊負責會議的創建、用戶的加入退出、用戶會話等功能;媒體數據傳輸模塊負責音頻數據的編解碼及媒體數據的收發。
3.5 SIP協議擴展設計
SIP協議具有良好的可擴展性,其擴展性體現在它與底層傳輸協議的無關特性上。SIP對消息的傳輸、理解和處理獨立于支持它的下層協議。SIP擴展以模塊化的風格實現,并且SIP使用的方法可以在會話建立期間協商,從而保證實現核心協議的簡單用戶代理能和更高級的用戶代理實現互操作。
按照前文所討論的P2P與SIP結合的設計方案,P2P-SIP網絡的維護是通過結點之間的SIP消息交互完成的,因而必須對SIP協議進行擴展以支持DHT網絡。除此之外,為了支持會議功能,還須對SIP協議進行會議消息方面的擴展。
參 考 文 獻
[1] 向文武,周德新. VoIP會議系統中TFO模型的MCU實現[J]. 計算機應用,2005,S1:506-507+511
[2] 萬曉林. 基于P2P-SIP的VoIP會議系統分層服務模型的研究[J]. 科技風,2011,05:74-75