• <strike id="fdgpu"><input id="fdgpu"></input></strike>
    <label id="fdgpu"></label>
    <s id="fdgpu"><code id="fdgpu"></code></s>

  • <label id="fdgpu"></label>
  • <span id="fdgpu"><u id="fdgpu"></u></span>

    <s id="fdgpu"><sub id="fdgpu"></sub></s>
    您當前的位置是:  首頁(yè) > 新聞 > 國內 >
     首頁(yè) > 新聞 > 國內 >

    使用串聯(lián)SFUs方式提高WebRTC媒體服務(wù)器處理性能

    2018-11-14 13:39:46   作者:james.zhu   來(lái)源:CTI論壇   評論:0  點(diǎn)擊:


      對WebRTC來(lái)說(shuō),部署媒體服務(wù)器最大的挑戰來(lái)自于兩個(gè)方面:一個(gè)是對于單點(diǎn)服務(wù)器的拓展,另外一個(gè)挑戰是如何優(yōu)化會(huì )議用戶(hù)的語(yǔ)音時(shí)延。一些簡(jiǎn)單的處理方式,例如簡(jiǎn)單分片處理的方式是通過(guò)橫向拓展方式來(lái)實(shí)現。這樣的方式可能導致語(yǔ)音路徑和時(shí)長(cháng)失去控制,語(yǔ)音質(zhì)量和時(shí)延問(wèn)題仍然不能解決,或者可能導致更為嚴重的語(yǔ)音時(shí)延。因此,它們這種方式對于優(yōu)化媒體時(shí)延仍然是一個(gè)大問(wèn)題。
      著(zhù)名的開(kāi)源視頻會(huì )議服務(wù)器開(kāi)發(fā)商Jitsi的核心開(kāi)發(fā)人員Boris Grozev和他的團隊利用了更加智能的方式Cascading SFUs的方式處理語(yǔ)音時(shí)時(shí)延問(wèn)題,通過(guò)對比測試,測試結果取得了比較好的效果。Cascadiing(串聯(lián)?) SFU的實(shí)現來(lái)自于基本的網(wǎng)絡(luò )資源查詢(xún)的原理,就是通過(guò)算法路由到距離客戶(hù)最近的媒體服務(wù)器。以下內容是官方開(kāi)發(fā)人員的具體介紹,更多完整文檔參考文章鏈接。
      現在的很多語(yǔ)音業(yè)務(wù)和會(huì )議服務(wù)器都部署在云端,用戶(hù)則可能部署在世界各地,網(wǎng)絡(luò )的穩定性會(huì )嚴重影響語(yǔ)音質(zhì)量,時(shí)延,抖動(dòng),丟包,或者視頻影像不清晰等問(wèn)題。因此,在用戶(hù)用戶(hù)之間選擇一個(gè)最佳的媒體路徑是非常至關(guān)重要的。在WebRTC的環(huán)境中,有時(shí)是用戶(hù)之間通過(guò)ICE 或者TRUN 來(lái)實(shí)現,這種場(chǎng)景事實(shí)上是非常簡(jiǎn)單的場(chǎng)景,可以支持少量用戶(hù)的視頻會(huì )議。但是,如果視頻會(huì )議人數很多的時(shí)候,一個(gè)單點(diǎn)服務(wù)器很難處理大量用戶(hù)的會(huì )議場(chǎng)景。因此,使用一種智能的方法,例如SFU是非常有必要的。下面介紹兩種方式的處理機制和其策略,以及測試結果的優(yōu)化。
      首先,讓我們看看使用Star的 處理方式,如果三個(gè)用戶(hù)在不同的地方,他們需要實(shí)現視頻會(huì )議的話(huà),可能需要經(jīng)過(guò)兩個(gè)服務(wù)器的處理流程,同時(shí)每個(gè)呼叫方都需要和另外兩個(gè)互相連接,而且會(huì )議中的成員加入的順序不同,可能導致連接錯誤或者無(wú)效的連接,這樣就會(huì )浪費很多服務(wù)器和網(wǎng)絡(luò )資源,如下圖例所示,可能用戶(hù)A和用戶(hù)B都連接了服務(wù)器 2 而不是服務(wù)器1。
      串聯(lián)SFU的橋接方式
      讓我們看看如何使用串聯(lián)的方式來(lái)解決智能選擇路由和服務(wù)器的方式。通過(guò)串聯(lián)的方式來(lái)處理的話(huà),用戶(hù)A 就會(huì )通過(guò)服務(wù)器1,然后對接服務(wù)器2,呼叫服務(wù)器2的用戶(hù)C。這樣的話(huà),兩臺服務(wù)器就會(huì )被充分利用,減少了資源浪費。
      往返時(shí)延的影響
      連接SFU的橋接有其優(yōu)勢也有其劣勢。其劣勢是增加了多個(gè)跳轉,但是如果進(jìn)行了優(yōu)化以后,大大減少了語(yǔ)音數據的往返時(shí)延。關(guān)于此策略的實(shí)現,參考鏈接論文有詳細介紹。對于WebRTC來(lái)說(shuō),通常情況下使用RTP來(lái)傳輸數據,其本身具有不可靠性。如何實(shí)現視頻的重新傳輸也是一個(gè)很大的挑戰。使用單機服務(wù)器的往返時(shí)延如下,需要多次不同對象的處理。
      使用SFU橋接的往返時(shí)間的話(huà),重新傳輸僅限于本地服務(wù)器傳輸。例如,如果丟包發(fā)生在用戶(hù)A和服務(wù)器1之間,服務(wù)器1要求用戶(hù)A重傳。如果丟包發(fā)生在用戶(hù)C和服務(wù)器2之間,服務(wù)器2則要求用戶(hù)C之間重傳;如果兩個(gè)服務(wù)器之間發(fā)生丟包,則要求兩個(gè)服務(wù)器之間重傳數據包。用戶(hù)終端可以通過(guò)設置jitter buffer來(lái)緩存視頻播放。根據作者結論,理論上來(lái)說(shuō),雖然,端對端的整個(gè)往返時(shí)間長(cháng)于外部服務(wù)器部署方案的時(shí)間,但是端對端的時(shí)延降低。
      如何部署一個(gè)串聯(lián)的SFU
      剛才我們討論了串聯(lián)SFU的好處和對說(shuō)延的正面影響。現在討論一下如何部署基于Jitsi的視頻會(huì )議解決方案。具體解決方案查閱Jitsi 官方網(wǎng)站。
      其他協(xié)議使用以及優(yōu)化設置
      在部署串聯(lián)SFU的環(huán)境中,除了技術(shù)架構的調整以外,Jitisi還使用了其他的協(xié)議和優(yōu)化手段來(lái)進(jìn)一步實(shí)現SFU的性能優(yōu)化。具體的方法包括:
    • 使用了Octo protocol
    • 使用了Simulcast
    • 設置了Active Speaker Selection
    • 設置了Bridge Selection
      為了能夠網(wǎng)站客觀(guān)地測試SFU的橋接方式,用戶(hù)使用亞馬遜云平臺,對接機構地區的云服務(wù)器進(jìn)行傳輸測試,測試結果比較滿(mǎn)意。
      總結,通過(guò)SFU 橋接方式可以提高SFU 視頻會(huì )議服務(wù)器的媒體質(zhì)量,同時(shí)可以增加SFU 視頻會(huì )議服務(wù)器的拓展性。克服人員準備在最近的版本發(fā)布中做進(jìn)一步的測試。
      注:以上文檔是筆者翻閱以便作為技術(shù)學(xué)校的資料,用戶(hù)可以參考官方原文做進(jìn)一步研究。
      參考資料:
      https://webrtchacks.com/sfu-cascading/
      https://jitsi.org/wp-content/uploads/2018/11/ccwc2018-geo.pdf


      關(guān)注微信公眾號:asterisk-cn,獲得有價(jià)值的Asterisk行業(yè)分享
      Asterisk freepbx 中文官方論壇:http://bbs.freepbx.cn/forum.php
      Asterisk freepbx技術(shù)文檔: www.freepbx.org.cn
      融合通信商業(yè)解決方案,協(xié)同解決方案首選產(chǎn)品:www.hiastar.com
      Asterisk/FreePBX中國合作伙伴,官方qq技術(shù)分享群(3000千人):589995817

    【免責聲明】本文僅代表作者本人觀(guān)點(diǎn),與CTI論壇無(wú)關(guān)。CTI論壇對文中陳述、觀(guān)點(diǎn)判斷保持中立,不對所包含內容的準確性、可靠性或完整性提供任何明示或暗示的保證。請讀者僅作參考,并請自行承擔全部責任。

    專(zhuān)題

    亚洲精品网站在线观看不卡无广告,国产a不卡片精品免费观看,欧美亚洲一区二区三区在线,国产一区二区三区日韩 桐梓县| 当阳市| 宝丰县| 常德市| 抚松县| 定西市| 大庆市| 新蔡县| 彭阳县| 阿勒泰市| 桦南县| 焦作市| 招远市| 龙山县| 正镶白旗| 涿鹿县| 疏勒县| 长兴县| 高尔夫| 镇远县| 阳信县| 隆林| 南澳县| 巫溪县| 大同市| 滁州市| 砚山县| 瓦房店市| 腾冲县| 长乐市| 固始县| 咸丰县| 子长县| 河间市| 青海省| 阿鲁科尔沁旗| 宁强县| 马龙县| 晋宁县| 齐齐哈尔市| 太和县| http://444 http://444 http://444 http://444 http://444 http://444