Ich versuche einen Weg zu finden, um UDP-Broadcast-Pakete durch eine Silverlight-Anwendung zu senden. Die meisten Recherchen, die ich gemacht habe, führen auf, dass dies aufgrund der begrenzten Unterstützung für Sockets auf TCP beschränkt ist. Gibt es jedoch eine andere Möglichkeit, zum Beispiel durch JavaScript oder etwas, das die Silverlight-Anwendung aufrufen kann, um ein Broadcast-Paket zu senden?
Antworten
Zu viele Anzeigen?Silverlight 4 unterstützt UDP für Multicast.
Artikel / Beispiele
- Beispiel zur Verwendung der UDP-Multicast-Unterstützung in Silverlight 4
- Blog-Eintrag vom System.Net Team
Klassen
Sie müssen wahrscheinlich Ihr eigenes benutzerdefiniertes Browser-Plugin erstellen, um das für Sie zu erledigen.
Soweit ich weiß, ist es nicht möglich, UDP mit den wichtigsten Browser-Plugins wie Flash, Silverlight usw. zu verwenden. TCP ist das niedrigste, was Sie bekommen.
Browserbasiertes JS bietet keinen programmgesteuerten Zugriff auf UDP oder sogar TCP. Deshalb haben Sie AJAX, HTTP-Binding, Comet, XMPP Bosh usw. Sie versuchen, die Funktionen von TCP mit HTTP zu emulieren...
Es scheint, dass Flash UDP ab Flash 10 unterstützt. Ich habe es noch nicht ausprobiert, aber es klingt so, als ob es sich nicht um eine Low-Level-API handelt, sondern nur über RTMFP.
http://www.flashcomguru.com/index.cfm/2008/5/15/player-10-beta-speex-p2p-rtmfp http://justin.everett-church.com/index.php/2008/05/23/astrop2p/
Die einzigen Plugins, die das Senden von UDP-Clients unterstützen, sind Unity3D oder Java. Das Hauptproblem besteht darin, dass Sie normalerweise auch NAT-Punchthrough benötigen, wenn Sie UDP verwenden. Daher ist es komplexer (benötigt einen Drittanbieter-Vermittler), da es in der Regel auch Peer-to-Peer ist und nicht nur Client-Server.
Sie könnten etwas mit einem Proxy in Unity3D oder Java zusammenstellen, aber das würde zu einem ernsthaften Abschwung führen, wenn es in Silverlight übergeben wird.
Silverlight und Flash unterstützen derzeit nur TCP-Sockets. Flash 10 bietet etwas Unterstützung für RTMFP, das auf UDP basiert, dies ist jedoch in erster Linie für die Integration von Flash-Mediaservern gedacht.
Eine Antwort zur Unterstützung von UDP in Silverlight: http://silverlight.net/forums/t/20249.aspx
Flash Player 10.1 unterstützt P2P mit Adobe RTMFP und dem Stratus-Dienst. Der Stratus-Dienst ist ein Beta-gehosteter Rendezvous-Dienst, der dabei hilft, Kommunikation zwischen Flash Player-Endpunkten herzustellen. Im Gegensatz zum Flash Media Server konzentriert sich der Stratus-Dienst hauptsächlich auf die Netzwerkadressensuche und NAT-Traversal-Dienste für Flash Player-Endpunkte, anstatt Medien-Relais und gemeinsame Objekte zu unterstützen. Diese Art von Dienst wird auch in die nächste Version von FMS integriert werden.
0 Stimmen
Bitte übersetzen Sie dies und behalten Sie die gleichen HTML-Tags bei, falls vorhanden: lol @ JavaScript-Bearbeitung von UDP-Paketen
0 Stimmen
Achte darauf, die meisten Heim-WLAN-Router unterstützen kein UDP-Multicast.