問題タブ [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.

0 投票する
1 に答える
549 参照

java - Java でマルチキャスト グループに再参加する方法

マルチキャスト リスナーがグループに参加するときに、ルーターがダウンしている可能性があるというシナリオがあります。そのシナリオでは、マルチキャスト メッセージがリスナーに到達することはありません。

そのため、リスナーをタイムアウトさせてから、マルチキャスト グループに再度参加させる予定です。

問題は、次のコードでは、リスナーがマルチキャスト メッセージを正常に登録および受信することを保証しないことです。

では、リスナーがルーターに再登録されるようにするには、どうすればよいでしょうか?

0 投票する
0 に答える
138 参照

java - マルチキャスト チャット、ホスト/リスナーの GUI で送信者のログイン/PC 名を取得

皆さん助けてください。ホスト/リスナー システムで送信者の IP アドレスを取得できました。送信者の名前を取得する方法は、「packet.getHostName(string ip-address)」である必要があると思います。ここで、パケットはパケットの参照です。送信者からリスナーによって受信されます。「packet.getAddress()」で送信者のIPを取得できました。

以下はコードです:

0 投票する
1 に答える
1186 参照

c - ワイヤレス ネットワーク上のマルチキャスト ソケットを使用した UDP

マルチキャスト ソケットを使用した単純な udp サーバー クライアント アプリケーションを作成しました。サーバーは 6 ms ごとに 3 つのクライアントにパケットを送信しています。パケット サイズは 1200 バイトです。これは 1 秒あたり 166,66 パケットです。クライアントの 1 つがパケットの欠落を検出すると、ユニキャスト経由で NACK パケットをサーバーに送信します。

最初のテスト: サーバーと 3 つのクライアントがイーサネット経由でルーター TP-Link TL-WDR4300 (dd-wrt) に接続され、すべてが正常に機能しました。

2 番目のテスト: サーバーのみがイーサネット経由でルーターに接続され、他のクライアントはワイヤレス 2.4 GHz および固定チャネル経由で接続されました。ワイヤレスでは 2 つの問題が発生しました。最初の問題はパケット損失です。クライアントはパケットの 50% しか受信していません。そして、損失はバーストで表示されます。たとえば、400 パケットが受信され、200 パケットが失われます。2 番目の問題は、クライアントが NACK パケットをサーバーに送り返しているときに、wireshark で確認できますが、アプリケーションがそれらを受信できないことです。クライアントがイーサネット経由で接続されていたときとコードが同じであるため、これは奇妙です。それで、何かアイデアはありますか?ありがたく思います

サーバーコード:

トラフィックを減らすための更新も行いました: パケット サイズ: 800 バイト パケット間の到着時間: 10 ミリ秒 = 100 パケット/秒 = 0.076 MB/秒

サーバー側とクライアント側でトラフィックを測定しました: サーバー ~ 10 MB/秒 クライアント ~ 5 MB /秒

すべて問題ないようです

0 投票する
1 に答える
685 参照

c - UDP マルチキャスト ソケットが Linux 64 ビット プラットフォームで機能しない

UDP マルチキャスト ソケットを開くための非常に小さな C コードを作成しました。32 ビット プラットフォームでは問題なく動作しますが、コードを再コンパイルして Linux 64 ビット プラットフォームで試してみると、動作しません。プログラムは、recvfrom() 関数で無期限に保留されています。指定したネットワーク インターフェイスで udp フレームが実際に受信されたかどうかを tcpdump で確認しましたが、すべて正常に動作しています。私のコードの何が問題なのか、誰かが考えを持っていますか?

これが最初のコードです(コメントの前):

編集:あなたのコメントでコードを更新しましたが、どちらも機能しません:(また、ネットワークがVLANを使用していることを忘れていました。ネットワークインターフェイスは66.46.40.100のeth.40ですが、32ビットプラットフォームで動作しますだから問題ないのかもしれません。

新しいコードは次のとおりです。

0 投票する
2 に答える
852 参照

java - MulticastSocket がメッセージを 2 回受信する

MulticastSocket 経由で WIFI アクセス ポイントにメッセージを送信すると、常に 2 回返信が返ってきます。自分にメッセージを送信しようとすると、メッセージが 2 回届きます。これは私の受信機コードです:

DatagramSocket と MulticastSocket を介して送信しようとしましたが、関係ありません。メッセージは常に 2 回受信します。理由がわかりません!

編集: 私の LogCat:

EDIT2: 送信者コード