• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于SIP的B2BUA服務(wù)器設(shè)計(jì)

      2014-07-29 05:09:54莊偉胤唐余亮
      中國新通信 2014年7期
      關(guān)鍵詞:代理服務(wù)器傳輸層會話

      莊偉胤 唐余亮

      【摘要】 Session Initiation Protocol(SIP)是下一代網(wǎng)絡(luò)的核心控制協(xié)議,用于在IP數(shù)據(jù)網(wǎng)絡(luò)上建立、改變和結(jié)束多媒體會話。SIP服務(wù)器作為下一代網(wǎng)絡(luò)的核心設(shè)備,它的實(shí)現(xiàn)就顯得尤為重要。一種方法是代理服務(wù)器Proxy,它只在SIP交互時保存狀態(tài),而不是在整個呼叫中維護(hù)狀態(tài),這限制了代理服務(wù)器更大范圍的應(yīng)用。另一種方法是背對背的用戶代理(B2BUA,Back-to-Back User Agent)服務(wù)器,它在整個呼叫過程中都維護(hù)狀態(tài)。文章從SIP協(xié)議的基本原理出發(fā),利用reSIProcate協(xié)議棧實(shí)現(xiàn)SIP B2BUA服務(wù)器并對其做了壓力測試。

      【關(guān)鍵詞】 RFC 3261 SIP B2BUA

      一、SIP協(xié)議

      SIP是2001年推出的IETF標(biāo)準(zhǔn)(RFC 3261),用于在IP數(shù)據(jù)網(wǎng)絡(luò)上建立、改變和結(jié)束多媒體會話。SIP系統(tǒng)采用C/S模型,定義了服務(wù)器和用戶代理。SIP系統(tǒng)的端系統(tǒng)稱為用戶代理(User Agent,UA),包含用戶代理客戶端(User Agent Client,UAC)和用戶代理服務(wù)器(User Agent Server,UAS)。UAC負(fù)責(zé)呼叫的發(fā)出,而UAS負(fù)責(zé)呼叫的接收。

      典型的基于Proxy的呼叫過程為:主叫方向被叫方發(fā)出INVITE請求消息,開始建立會話。Proxy接收到這條消息時會回復(fù)一條100 Trying告訴主叫方消息正在處理,然后INVITE消息經(jīng)過Proxy路由轉(zhuǎn)發(fā)到被叫方,被叫方回復(fù)100 Trying 和180 Ringing響鈴,被叫方接聽回復(fù)200 OK,主叫方回復(fù)ACK,會話建立。要結(jié)束會話時,其中一方發(fā)送BYE消息,另外一方回復(fù)200 OK。

      二、B2BUA服務(wù)器介紹

      按照RFC 3261中的定義,B2BUA是一個邏輯實(shí)體,它就像UAS一樣接收和處理請求。為了決定該如何應(yīng)答一個請求,B2BUA又像UAC一樣工作,并且發(fā)出請求。但是它不像Proxy,它維持對話狀態(tài),并且參與已經(jīng)建立的對話中的每一個請求。

      B2BUA系統(tǒng)主要由三個邏輯單元組成,兩個UA和一個會話控制邏輯單元;邏輯單元之間通過事件進(jìn)行交互,每一個UA代表著一個狀態(tài)機(jī),它從終端接收消息,并根據(jù)接收到消息的類型和當(dāng)前UA的狀態(tài)觸發(fā)相應(yīng)事件。而會話控制邏輯單元充當(dāng)橋梁,它根據(jù)自己當(dāng)前的狀態(tài)和每個UA之間的狀態(tài),在UA之間傳遞相應(yīng)事件。因此,本文使用B2BUA實(shí)現(xiàn)SIP服務(wù)器。

      三、B2BUA服務(wù)器設(shè)計(jì)框架

      B2BUA服務(wù)器總體設(shè)計(jì)的框架如圖1所示,設(shè)計(jì)結(jié)構(gòu)從上到下分為事務(wù)用戶層、事務(wù)層、傳輸層。傳輸層定義服務(wù)器如何接收請求和發(fā)送應(yīng)答。事務(wù)層處理應(yīng)用層的重發(fā)、匹配請求的應(yīng)答以及應(yīng)用層的超時。在事務(wù)層之上是事務(wù)用戶,每次它發(fā)送一個請求就創(chuàng)建一個客戶事務(wù)實(shí)例并且和請求一起發(fā)送。事務(wù)用戶可以創(chuàng)建事務(wù)也可以取消事務(wù)。

      服務(wù)器架構(gòu)中的數(shù)據(jù)庫存儲本地的用戶信息;WebThread對數(shù)據(jù)庫進(jìn)行配置,包括添加刪除用戶等;事務(wù)層中的TransactionConTroller負(fù)責(zé)與事務(wù)用戶層進(jìn)行交互,TransportSeletor負(fù)責(zé)跟傳輸層的交互;事務(wù)用戶層中的Register處理用戶注冊消息,B2B模塊則是B2BUA服務(wù)器設(shè)計(jì)的核心,它負(fù)責(zé)處理會話的消息,包括會話的建立會話的拆除等。因此,它的合理設(shè)計(jì)對服務(wù)器的性能有很大的影響,所以B2B模塊采用多線程的設(shè)計(jì)模式,包含兩個線程,一個是MyDUMThread,一個是B2BCallThread。這兩個線程的同步并發(fā)處理實(shí)現(xiàn)了服務(wù)器優(yōu)越的性能。

      四、服務(wù)器性能測試

      SIPp是一個測試SIP協(xié)議性能的工具軟件。它是一個GPL的開放源碼軟件。首先,SIPp包含了一些基本的用戶代理工作流程(UAC和UAS),并可使用INVITE和BYE建立和釋放多個呼叫。統(tǒng)計(jì)服務(wù)器性能數(shù)據(jù),包括:呼叫速率、信號來回的延遲,以及消息統(tǒng)計(jì)等。另外,SIPp實(shí)現(xiàn)對許多實(shí)際的SIP設(shè)備的自動測試,如對SIP代理服務(wù)器、B2BUA服務(wù)器等設(shè)備的測試,檢測所開發(fā)設(shè)備是否達(dá)到設(shè)計(jì)要求,幫助開發(fā)人員及時發(fā)現(xiàn)設(shè)計(jì)中存在的問題。

      SIP B2BUA的測試環(huán)境如圖2所示。服務(wù)器的PC機(jī)硬件配置是:Intel(R) Xeon(R) CPU E3-1240 v2 @ 3.4 GHz、 2.0 GB的內(nèi)存物理地址擴(kuò)展、Broadcon NetXtreme Gigabit Ethernet網(wǎng)卡。操作系統(tǒng)采用Ubuntu 12.04。UAC與UAS處理消息的機(jī)制是:UAC給服務(wù)器發(fā)送INVITE,然后會等待服務(wù)器回復(fù)的180 Ringing和200 OK,當(dāng)收到200 OK之后,UAC給服務(wù)器發(fā)送ACK,此時UAC啟動2000ms定時器,模擬RTP傳輸。2000ms之后,UAC給服務(wù)器發(fā)BYE。當(dāng)收到服務(wù)器回復(fù)200 OK,表明一個完整的會話呼叫建立和終止過程就此結(jié)束。而UAS是首先等待服務(wù)器發(fā)過來的INVITE消息,當(dāng)接收到INVITE消息時,給服務(wù)器回復(fù)180 Ringing,再回復(fù)200 OK。然后繼續(xù)等待服務(wù)器發(fā)過來的ACK及BYE消息,收到BYE后給服務(wù)器回復(fù)200 OK,這樣UAS一個完整的呼叫過程建立和結(jié)束會話也結(jié)束了。最后測得服務(wù)器的最大負(fù)載是110cps,也就是說服務(wù)器可以處理的最大能力是終端每秒鐘110個INVITE消息請求。

      五、結(jié)論

      文章從SIP的基本原理出發(fā),說明Proxy只是事務(wù)有狀態(tài)的,因此它不具備很多B2BUA服務(wù)器的特性,這對實(shí)現(xiàn)服務(wù)器增值業(yè)務(wù)功能非常不利?;谶@個原因,文章詳細(xì)闡述了B2BUA服務(wù)器的設(shè)計(jì),并對服務(wù)器做了測試,證明實(shí)現(xiàn)了服務(wù)器優(yōu)越的性能。

      參 考 文 獻(xiàn)

      [1] J.Rosenberg,H.Schulzrinne,G.Canarillo etal,SIP:session Initiation Protocol,RFC 3261,December,2002

      [2] 黃永鋒,李建慶等. 下一代網(wǎng)絡(luò)核心控制協(xié)議-SIP及其應(yīng)用[M]. 人民郵電出版社. 2009

      [3] Trac.SIP B2BUA[EB/OL].[2012-3-20]. http://www.b2bua.org/wiki/B2BUADocumentation

      猜你喜歡
      代理服務(wù)器傳輸層會話
      基于Python語言的網(wǎng)絡(luò)傳輸層UDP協(xié)議攻擊性行為研究
      ZnO電子傳輸層在有機(jī)無機(jī)雜化鈣鈦礦太陽能電池中的應(yīng)用
      地鐵信號系統(tǒng)中代理服務(wù)器的設(shè)計(jì)與實(shí)現(xiàn)
      物聯(lián)網(wǎng)無線通信傳輸層動態(tài)通道保障機(jī)制
      IP地址隱藏器
      基于物聯(lián)網(wǎng)GIS的消防智能巡檢系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
      有意冒犯性言語的會話含義分析
      漢語教材中的會話結(jié)構(gòu)特征及其語用功能呈現(xiàn)——基于85個會話片段的個案研究
      沖突語的會話分析研究
      對外漢語課堂英語通用語的會話調(diào)整功能
      玛沁县| 溆浦县| 周至县| 玉田县| 淮北市| 达拉特旗| 曲麻莱县| 正阳县| 宁城县| 洛浦县| 隆化县| 东兰县| 黄梅县| 大港区| 武定县| 徐汇区| 平罗县| 将乐县| 浦江县| 定南县| 昭平县| 资兴市| 外汇| 岢岚县| 临泉县| 阳东县| 阿瓦提县| 从化市| 咸丰县| 承德市| 尉犁县| 郎溪县| 海安县| 丹巴县| 高碑店市| 车致| 沁源县| 乐陵市| 呼图壁县| 钦州市| 南平市|