2016-05-30 12 views
0

Wie pro meinem Verständnis von meiner vorherigen Frage: Kurento: STUN/TURNKurento: Client-Seite TURN Konfiguration

Der TURN-Server von webrtcendpoint.conf.ini konfiguriert sind, nur für den Austausch von Eis Kandidaten verwendet. Auch können wir nur einen TURN-Server in webrtcendpoint.conf.ini angeben, denn was ich beobachtet habe, ist, dass, wenn ich 2 oder mehr TRUN-Server in webrtcendpoint.conf.ini Kureno Media Server-Dienst nicht startet, ist das korrekt?

Gibt es auch eine Möglichkeit zu überprüfen, welcher STUN/TURN-Server auf dem Kureno-Medienserver und zwischen zwei Peers verwendet wird?

Der STUN/TURN, den wir in conferenceroom.js bereitstellen, wird für den tatsächlichen Medienfluss/Mediapipeline zwischen Peers verwendet. Ist das richtig ?

Wenn wir mehrere TURN-Server in conferenceroom.js bereitstellen, dann wird die TURN-Server-kürzeste/schnellste Antwortzeit für den Medienfluss zwischen den beiden Peers ausgewählt? Genau wie wir Antwortzeit von diesem Link bekommen.

Auch das, was ich beobachtet habe ist, dass, wenn der TURN-Server in webrtcendpoint.conf.ini und conferenceroom.js bereitgestellt unterschiedlich ist dann wir nicht in der Lage sind Remote-Teilnehmer Video zu sehen, aber wenn sowohl der TURN-Server gleich ist dann entfernte Teilnehmer Video zu sehen, ich bin in der Lage . Ist das richtig ?

Edit 1:

In groupcall Probe Beispiel haben wir onExistingParticipants() und onNewParticipants() wo wir iceServers in receiveVideo() und onExistingParticipants() so was definieren kann, wird passieren, wenn wir TURN-Server t1 in kurentoUtils.WebRtcPeer.WebRtcPeerSendOnly() und TURN-Server t2 angeben in kurentoUtils.WebRtcPeer.WebRtcPeerRecvOnly() dann werden diese beiden TURN-Server untereinander als Relaiskette kommunizieren?

Antwort

2

Der TURN-Server, der aus webrtcendpoint.conf.ini konfiguriert wurde, wird nur für den Austausch von Eiskandidaten verwendet. Auch können wir nur einen TURN Server in webrtcendpoint.conf.ini angeben, weil was ich beobachtet habe, dass , wenn ich 2 oder mehr TRUN-Server in webrcendpoint.conf.ini bereitstellen Kurento Media Server-Dienst startet nicht, ist das korrekt?

Es wird zum Sammeln von Kandidaten und bei Bedarf als Video-Relay verwendet. Ihr KMS wird dies wahrscheinlich nicht benötigen, da der Ort, an dem es bereitgestellt wird, von Ihnen verwaltet wird. Wenn Sie nur mit STUN arbeiten können, was der gewünschte Weg ist, dann wird der Relay Server nicht benutzt.

nur ein Server kann so konfiguriert werden,

Auch ist es eine Möglichkeit, die STUN/TURN-Server zu überprüfen, ob bei Kurento Media-Server verwendet wird und zwischen zwei Peers?

Ja, die WebRtcEndpoint hat Methoden für diese

  • getStunServerPort()
  • getStunServerAddress()
  • getTurnUrl()

Die STUN/TURN, die wir in conferenceroom.js liefern wird verwendet für der tatsächliche Medienfluss/Mediapipeline zwischen Peers. Ist das richtig ?

Es wird verwendet, um Kandidaten in Ihrem Client zu sammeln. Wenn sich Ihr Client hinter einem NAT befindet, der einen Relay-Server verwenden muss, verwendet er außerdem den in conferenceroom.js konfigurierten Client. Beachten Sie, dass der Medienpfad möglicherweise nicht symmetrisch ist: Während von client-> kms ausgehende Medien möglicherweise keinen Relayserver verwenden, können Medien, die von KMS-> client ausgeführt werden, aufgrund der Netzwerkbedingungen am Standort des Clients auftreten.

Wenn wir mehr TURN-Server in conferenceroom.js bieten dann die TURN Server sauberste/schnellste Reaktionszeit wird zwischen den beiden Peers ausgewählt für Medienfluss werden? Genau wie wir Antwortzeit von diesem Link bekommen.

Ja, Kandidaten werden geprüft und der beste wird ausgewählt.

Auch das, was ich beobachtet habe ist, dass, wenn der TURN-Server in webrtcendpoint.conf.ini und conferenceroom.js versehen verschieden sind dann wir nicht in der Lage sind Remote-Teilnehmer Video zu sehen, aber wenn sowohl die TURN Server sind das selbe dann bin ich in der Lage, Fernteilnehmervideo zu sehen. Ist das korrekt?

Dies sollte nicht der Fall sein, es sei denn, eine TURN funktioniert und die andere nicht.


EDIT

TURN-Server werden keine Medien zwischen ihnen auszutauschen. Sie werden bei Bedarf als Relais für den anderen Partner verwendet. Der Prozess ist

  • Jeder Peer sammelt Kandidaten: Host, srflx (STUN) und Relais (TURN). Wenn der TURN-Server anders ist, unterscheiden sich auch die Relaiskandidaten.
  • Kandidaten werden an den anderen Peer gesendet.
  • Jeder Kandidat wird einzeln untersucht, und der beste wird ausgewählt.
  • Da alle Medien über KMS laufen, wird es das KMS sein, das ein Medium zum Relay Server sendet. Beachten Sie, dass KMS immer zwischen Peers ist.Es wäre

    kms-> T2-> Client client-> t1-> kms

    Auch wenn die Verbindung war Browser zu Browser, der TURN-Server nicht direkt miteinander kommunizieren, da sie als Relais fungieren würden für die Medien von einem Peer zum anderen geschickt. Hier wäre es

    sein client1-> T2-> client2 client2-> t1-> client1

    +0

    Dank für Ihre Antwort, was ich versuche, die Verwendung von TURN-Server in beiden Richtungen der Medien zu zwingen, zu erreichen ist fließen. Auch wenn ich TURN-Server von mehreren Orten der Welt aus anbiete und wenn jemand versucht, diesem Gruppenanruf beizutreten, wird der von ICE-Kandidaten verwendete/zugewiesene TURN-Server dem Benutzer am nächsten sein. kann dies erreicht werden, indem TURN-Serverliste in "Konferenzraum, js" bereitgestellt wird? –

    +0

    'die TURN-Server würden nicht direkt kommunizieren, da sie als Relais für die von einem Server an den anderen gesendeten Medien fungieren würden" bedeutet dies, dass zwei TURN-Server untereinander kommunizieren können? Auch können Sie bitte sagen, wo ist der TURN-Server in 'webrcendpoint.conf.ini' verwendet, wenn wir TURN-Server in' conferenceroom.js' angeben –

    +1

    Es war ein Tippfehler. Turn-Server tauschen keine Medien aus, sie fungieren als Relais für die Medien, die von Peers gesendet werden. Wie es eindeutig in [Ihre andere Frage] (https://stackoverflow.com/questions/37162476/kurento-stun-turn) heißt, werden STUN/TURN-Konfigurationen nur dann gemeinsam genutzt, wenn Sie dies tun. Peers (und KMS ist nur ein weiterer Peer) kann verschiedene STUN/TURN-Konfigurationen haben. – igracia

    Verwandte Themen