問題タブ [multicastsocket]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - マルチキャスト パケット: 送受信の問題
いくつかのマルチキャスト チュートリアルを適応させて、パケットの送信方法を変更しました。
私の場合、 size のパケットのキューを作成し、その後、すべてのオンライン ネットワーク アダプターbytes[1024]
経由で送信されます。Socket.Send()
問題:
送信時、呼び出された別のメソッドreceiveMessage()
が別のスレッドで実行されています。を使用Socket.Bind()
してパケットをキャプチャしますが、キャプチャされるパケットは 1 つだけです。
あまりにも多くの処理を行っているため、受信したパケットが遅延 (および損失) していますか?
アップデート
着信パケットのキューを追加することを検討しているため、1 つのスレッドがキャプチャして保存し、2 つ目のスレッドがパケットを処理します。
Send メソッド
受け取り方法
android - ポート 80 の MulticastSocket
一部のデバイスが同じ別のデバイスにパケットを送信する必要があるネットワーク アプリケーションを作成したいと考えています。このデバイスは Android のデバイスです。私の考えは、メッセージをネットワークにブロードキャストして、デバイスがそれを取得できるようにすることです。インターネットで調べたところ、1 つの解決策が MulticastSocket である可能性があることがわかりました。javadoc のチュートリアルに従っていますが、これは非常に簡単です。Androidフォンと1台のコンピューターでそれを行いました。私が今抱えている問題は、このソケットをポート 80 にバインドしたいという事実です。事実上、ソケットを作成しようとするとエラー、より正確には EACCES が発生します。これが私のサーバーのコードです:
}
誰かがそれを修正する方法を知っていますか? さらに、グループの名前がサーバーのIPでなければならないのか、それとも「ランダムな」文字列なのか誰かが知っていますか?
ありがとうございました !
java - java.net.SocketException: マルチキャスト アドレスではありません
私は MulticastSocket を使用していましたが、グループに参加しようとすると、「localhost」IP でグループを実行しているときに機能しませんでした。ただし、範囲は 224.0.0.1 から 239.255.255.254 の間である必要があると述べているこの記事http://lycog.com/programming/multicast-programming-java/を見つけました。その IP から InetAddress を作成し、グループに参加すると、機能しました。なぜこれが必要なのか説明してください。
例:
//投げる
動作する例:
java - マルチキャストが機能しないのはなぜですか?
プログラムが正しく動作しません。問題は、2 番目のクライアントが最初のクライアントからのメッセージを表示できないことです。問題はwhileループにあると思います。IPアドレスから読み取っていないだけです。手伝って頂けますか?前もって感謝します。
linux - Openwrt マルチキャスト トラフィックを許可する
デバイスで openwrt を実行していて、239.2.1.1 のマルチキャスト トラフィックをリッスンして出力する Python スクリプトがあります。
ただし、画面には何も出力されません。これはファイアウォールの問題だと思います。openwrt を実行している LAN インターフェイスでマルチキャスト トラフィックが許可されていることを確認するにはどうすればよいですか?
java - UDP 経由で Android に Java ブロードキャスト オーディオ
私が書いたJavaサーバーを実行しているRaspberryによってブロードキャストされたリアルタイムのオーディオを受信するアプリケーションを実行していますが、必然的に複数のクライアントにブロードキャストする必要があります。今、私はそれを達成するために MulticastSocket を使用しています。
これまでの問題は、受信した音声が壊れていることで、その理由はわかりません。もう 1 つの問題は、Marshmallow Android です。MulticastSocket のグループに参加できません。他のデバイスがサーバーに参加すると、音声が Android から自動的にカットされます。
アンドロイド側:
および UDP サーバー:
前もって感謝します。
android - Android でマルチキャストが正しく機能しない理由
ネットワーク上で自分のアプリを見つけようとしています。だから私はmulticast
テクノロジーを選びます。しかし、Android では一貫性がありません。
許可
マルチキャスト フィルタをロックする
マルチキャストの送信
マルチキャストの受信
これらのコードを Samsung Galaxy SII と Moto G でテストしました。
android - MulticastSocket Android はインターネットに関連していますか?
オブジェクトを作成する必要があるため、ネットワーク ブロードキャスト用のマルチキャスト グループに 1 つのネットワーク インターフェイス (eth) を追加していjMDNS
ます。イーサネット インターフェイスはTCPIP
Bluetooth 用です。サービス公開でマルチキャスト グループに参加した後、jMDNS オブジェクトを作成するためにインターネット/Wifi をアクティブにする必要があるという 1 つの問題に直面しています。jmdns のクライアント側サービス ディスカバリでは、マルチキャストを作成したり、マルチキャスト グループに参加したりする必要はありません。
そのため、マルチキャスト ソケットの作成後にサービスを公開し、グループに参加した場合、jmdns オブジェクトを作成すると (インターネット/Wifi をオンにせずに)、以下の例外が発生します。
java.net.SocketException: setsockopt が失敗しました: ENODEV (そのようなデバイスはありません)
jmdns でインターネット/Wifi をオンにすると、すべてが正常に機能します。
私の質問は、Bluetooth-Pan テザリング用のネットワーク インターフェイスを明示的に使用しているときに、なぜインターネット/Wifi をオンにする必要があるのですか?
問題を解決する方法はありますか? またはBT-テザリングには常にインターネット接続が必要ですか?
AndroidフレームワークでJavaをプログラミング言語として使用しています。