Ice-Lite 理解


It is not necessary to have a STUN server to get a webrtc peer connection between a full ICE implementation and an ICE lite implementation. This is because the ICE lite peer will use Peer Reflexive Candidates to get candidates for the full ICE peer behind a NAT.
在完整的ICE實現和ICE lite實現之間獲得webrtc對等連接並不需要有STUN服務器。這是因為ICE lite 一方會根據Peer Reflexive Candidates去獲得Full ICE peer一方的候選地址.

mattm, you only get reflexive candidate from a stun server. If your client is ICE-lite, then it generates only host candidates, if your client is full ice AND a stun server is provided, then that client is also generating srflx candidates and sending them to the other (possibly ice-lite) client. So the ice-lire client does not need to have access to a STUN server, but the full ice client needs. There is still a need for a STUN server in your solution.
mattm,你只能通過stun server 來獲得reflexive candidate. 如果你的是 ICE-lite的客戶端, 只會生成host 的候選者. 如果你的客戶端是full ice並且提供了一個Stun server, 這時候客戶端是可以提供 srflx 的候選者, 並且發送他們給對方(可以是一個ice lite 客戶端.). 因此,ice-lite客戶端不需要訪問STUN服務器,但是完整的ice客戶端需要。在您的解決方案中仍然需要一個STUN服務器。

You only get server reflexive candidates from a STUN server. When an ICE lite peer receives traffic during the course of connection checks, it can respond to the source address as visible to it on the incoming packet (the peer reflexive candidate). I have setup connections between a full ICE and ICE lite implementations behind separate NATs successfully without using a STUN server. I believe these were all standard conforming.
您只能從STUN服務器獲得服務器自反候選。當一個ICE-lite對等端在連接檢查過程中接收到流量時,它可以在傳入的數據包上對源地址做出響應(對等端自反候選者)。我在獨立的nat之后成功地在一個完整的ICE和ICE-lite實現之間建立了連接,而不使用STUN服務器。我相信這些都符合標准。

In ICE lite procedure, client doesn't gathers all the candidates but only the local host candidate. This is basically designed for end point which is behind public IP address, when a client is behind a public IP where there is no NAT, it can connect with any other candidate even if that other end is behind Symmetric NAT. ICE-Lite doesn't require STUN/TURN server. You can not achieve this using the SDP line as ICE-Lite procedure comes first before you get the candidates. So if you don't set STUN/TURN server then it will work as ICE-Lite (though its not formal way of having ICE-lite, ICE client should have the defined way to set ICE-Full or ICE-Lite) as now it will just gather the host candidates. But if your end point is behind some NAT and other end point is out of the network then it will not work. So better if you could determine if the client is behind public IP or not.

在ICE-lite過程中,客戶端不收集所有候選對象,而只收集本地host候選對象。這基本上是為位於公共IP地址后面的端點而設計的,當一個客戶端位於一個沒有NAT的公共IP后面時,它可以與任何其他候選端連接,即使另一端在對稱NAT之后。ICE-Lite 不需要STUN/TURN服務器。您無法使用SDP來實現這一點,因為ICE-Lite過程在您獲得候選對象之前首先出現。因此,如果你不設置STUN/TURN服務器,那么它將作為ICE-Lite工作(盡管它不是正式的ICE-Lite方式,ICE客戶端應該有定義的方式來設置ICE-Full或ICE-Lite),因為現在它只收集候選主機。但如果您的端點在某個NAT之后,而另一個端點在網絡之外,則它將無法工作。如果你能確定客戶機是否在公共IP后面,那就更好了。

上文翻譯來自於


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM