Ich versuche, WebRTC-Medien über TCP mit einem Gateway dazwischen zu haben, aber ich habe einige interessante Probleme in der ICE-Verbindungsphase. Bevor es weitergeht, ist es wichtig zu wissen, dass ich das gleiche Setup für UDP habe und alles korrekt funktioniert.Chrome WebRTC über TCP
wir einen einzigen TCP-Kandidaten gehören (die Medien-Port wird modifiziert, um auch den gleichen Port enthalten) Im Gateway die Remote-Antwort SDP ändern: Ich bin das Senden als das Attribut
a=candidate:1 1 tcp 1 <gw_ip> <gw_port> typ host tcptype passive generation 0
Auch Setup passiv :
a=setup:passive
Sekunden nach der Remote-Beschreibung auf Chrome Anwendung, ich bin eine STUN BIND-Anforderung auf dem Gateway empfangen, die ich mit einer Bind Erfolg Antwort bin beantworten (ich habe beide Transaktions-ID und Message Integrity geprüft und sie scheinen gut).
Danach setzt chrome simple die ICE-Prüfung nicht fort (keine DTLS-Meldungen). Ich habe Chrom-Protokolle aktiviert, um zu sehen, wenn ein Fehler passiert war, und ich habe eine interessante Ausgabe gefunden:
„Ignorieren STUN-Antwortnachricht Bindung an gemeinsamen Sockel“
ich einen Blick genommen haben bei Chrom Quellcode und es scheint, dass dies gezeigt wird, weil Chrom eine gemeinsame Steckdose verwendet, aber ich kann nicht verstehen, es ist Grund.
Irgendwelche Ideen? Vielen Dank!
Ist es möglich, die Übertragung eines Medien über TCP-Paket in WebRTC? – sureshkumar
@sureshkumar Ja, es ist möglich, stellen Sie sicher, dass Sie einen Längenrahmenmechanismus implementiert haben, bevor Sie das Medium zur webrtc-Seite senden, siehe mehr @ https://tools.ietf.org/html/rfc5389 –