2016-07-31 75 views
1

我目前有2臺冰服務器 - STUN(來自Google)和一臺TURN服務器(美國)。WebRTC Ice Servers的位置

如果我從不同的位置(IE歐洲,亞洲,南美洲等)添加更多的冰服務器(對傳遞給對端連接的冰服務器陣列),WebRTC是否足夠智能以便在用戶之間使用最佳的TURN服務器誰相互連接(如果他們之間需要TURN)?

回答

2

理論上ICE會照顧到這一點。

但是,這將保持打開一個NAT綁定到每個TURN服務器,這是相當浪費。使用諸如Amazons route53等地理位置讓客戶端在最接近的TURN服務器上創建分配通常會更好。

+0

根據我的理解,連接到離您較近的服務器並不一定意味着它是您和您的合作伙伴使用的最佳服務器。你和你的合作伙伴之間的服務器會更加優化,所以我認爲服務器仍然需要在冰服務器配置中傳遞。還是應該有邏輯來移除/添加優化的冰服務器,因爲連接是在同級之間進行的? –

+0

它將成爲您的最佳服務器,同時您的合作伙伴將擁有自己的最佳服務器。此外,如果服務器之間的連接比您的最佳服務器和您的合作伙伴之間的連接好 這將導致中繼中繼候選對而不是中繼-srflx或中繼-prflx對。我已經看到,但是沒有實際的比例。 我不認爲(直覺)在服務器「在中間」和靠近客戶端的兩臺服務器之間的RTT差異大於幾十毫秒,但這是以更復雜的部署爲代價的。 –

+0

由於缺少setConfiguration(以前稱爲updateIce),在調用期間更換服務器是不可能的。另外[nombis](https://tools.ietf.org/html/draft-uberti-mmusic-nombis-00)尚未實現,這意味着候選對的選擇不是非常動態的。 –