2012-11-04 6 views
12

Wie senden Sie ein UDP-Paket mit Web RTC?So senden Sie ein UDP-Paket mit Web RTC - Javascript?

+0

Hey Benutzer, ich arbeite an WebRTC und würde gerne helfen, aber Sie müssen mehr Details zur Verfügung stellen; Andernfalls wird dies als keine echte Frage abgeschlossen. Können Sie ein Beispiel dafür zeigen, was Sie vorhaben? WebRTC verwendet UDP wirklich nicht, es verwendet TCP über WebSockets (oder WebSockets über TCP). Daher bin ich ohne weitere Erklärung wirklich nicht sicher, ob das Sinn ergibt. – jmort253

+0

Sicher, hier ist etwas ähnliches mit ICE: http://www.html5rocks.com/en/tutorials/webrtc/basics Aber ich bin auf der Suche nach etwas einfacher. Wie ein Chat-Beispiel. Danke – Taurian

+2

Okay, nun, ich bin mir nicht sicher, ob Sie den Zweck von Stack Overflow verstehen. Es ist eigentlich nicht dazu gedacht, Code für Menschen zu schreiben, sondern stattdessen reale, konkrete Probleme zu lösen. Was Sie hier haben, ist noch ziemlich vage. Was versuchst du zu tun? Ich schlage vor, dass Sie Ihren Beitrag bearbeiten, um mehr Details zu dem Problem zu erhalten. Es gibt bereits Beispiele für WebRTC. Wenn Sie also etwas anderes machen, erläutern Sie bitte, was das ist. Viel Glück! :) – jmort253

Antwort

2

Sie sollten sipml5 überprüfen, http://code.google.com/p/sipml5/ erhalten den Code und schauen Sie in den Ordner: sipml5/src/tinySIP/src/Transporte

+0

Dies ist ein guter Punkt in die richtige Richtung. Vielen Dank. – Taurian

+0

Können Sie Code teilen, wie Sie das zum Laufen bringen? –

18

Sie können nicht ein UDP-Paket direkt mit WebRTC senden. Dies würde die grundlegenden Sicherheitsbeschränkungen verletzen, die vom Browser benötigt werden. Sie können SRTP an einen ICE-enabled Host senden. Das ist wahrscheinlich nicht das, wonach Sie suchen.

Wenn ein Browser das Senden beliebiger UDP-Pakete zulässt, können bösartige Anwendungen Pakete an jeden Host senden.

Das klingt vielleicht nicht so schlecht, schließlich müssen Hosts im Internet in der Lage sein, damit richtig umzugehen? Das Problem besteht darin, dass sich einige Browser in geschützten Umgebungen befinden, in denen der Zugriff auf das Netzwerk eingeschränkt ist. Innerhalb dieser Netzwerke sind einige Hosts weniger geschützt als ein Host im öffentlichen Internet. Dies wäre OK, da der Zugriff auf das Netzwerk kontrolliert wird.

Wenn ein Browser beliebige Pakete senden könnte, könnte ein Benutzer in einem Browser in dieser Umgebung davon überzeugt werden, speziell gestaltete Pakete an einen dieser schlecht geschützten Hosts zu senden. Wahrscheinlich würde dies dazu führen, dass der Netzwerkbetreiber den Browser verbietet, was Browserhersteller sehr gerne vermeiden möchten.

WebRTC sendet nur bestimmte Arten von UDP-Paket unter bestimmten Bedingungen. Wenn der Host, mit dem Sie sprechen möchten, ICE versteht und RTP mit SRTP oder SCTP over DTLS konsumieren kann (unwahrscheinlich, dass ich denke). Dann könnten Sie vielleicht den Browser zwingen, etwas zu senden.

+1

Sie unterscheiden nicht zwischen beliebiger Nutzlast und beliebiger Zieladresse. Wenn der Browser dieselben Sicherheitseinschränkungen wie für TCP implementiert, jedoch strenger (z. B. Begrenzung der Ziel-IP-Adresse auf den Host, von dem das Skript geladen wurde), wäre dies kein Problem. – Kenney

Verwandte Themen