WIFIで本当にマルチキャストできますか?


8

wifi(5ghz)経由でUDPをストリーミングしています-約1.5k /パケット...非常に低いレイテンシで最大10台のデバイスに同時にストリーミングしようとしています。

私はWifiを理解していますが、各デバイスがAPと「1:1」の関係を保持し、同じパケットを受信するため、それは真のマルチキャストにはなり得ません。次に、次のデバイスが接続して同じパケットを取得します。

  1. ルーター/ APには複数のタイプがあります。「3x3」と「4x4」、MIMOを使用するものなど、APを選択する基準として何を使用すればよいですか?

  2. iOSデバイスにwifi経由で本当にマルチキャストできますか?私の理論は正しいですか?

  3. 各パケット/クライアントをユニキャストとして扱う代わりにマルチキャストする方法はありますか?


Wi-Fi マルチキャストできますが、WAPで利用可能な最低速度に制限されます。
Ron Maupin

したがって、UDPパケットがAPで「マルチキャスト」されている場合、接続されているすべてのデバイスは、そのUDPパケットをまったく同じ瞬間に受信しますか(つまり、1xで伝播され、すべてのデバイスで受信されますか)?それとも実際に個々のデバイスに「手渡し」されますか?有線LANでどのように機能するかはよく知っていますが、WIFIマルチキャストに関するデータが競合しています...
率直に言って、

「実際の」マルチキャストはレイヤー2でのブロードキャストの形式であり、Wi-Fiはそれを実行できます(個々のユニキャストMACアドレスではなくマルチキャストグループに送信します)。ただし、WAPで利用可能な最低速度に制限されます。「偽の」マルチキャストは、その制限を回避するための試みです。
Ron Maupin

それで...ネットワークですべての低速フォーマットをオフにした場合(つまり、2.4ghzを無効にし、5ghz、40mhzでのみ実行し、可能な限り最高速のストリーミングのみを実行する)、これによりプロセス全体がスピードアップしますか?
率直に言って

1
DHCPなどのものが使用されないということですか?それは本当に正しくありません。ホストはWAPに接続する必要があり、マルチキャストでもホストがマルチキャストグループに参加するにはIGMPが必要です。Wi-Fiは一方向のプロトコルではないため、このプロトコルで、すべてのデバイスが一時停止して停止する必要があります。
Ron Maupin

回答:


9

これをテストしてみましょう。WiFiアクセスポイントに接続されている複数のデバイスに一定の速度でマルチキャストパケットを送信する場合、アクセスポイントは同じ量のトラフィックを報告する必要があります。

このテストを実行するには、有線PCからAndroidタブレットとラズベリーpiにパケットを送信します。iOSデバイスはありません。ネットワークテストツールiperfを使用すると、次の設定でこれらのパケットを簡単に送受信できます。

サーバー(WiFI上のデバイス):iperf -s -u -B 230.5.5.82

クライアント(有線PC):iperf -u -c 230.5.5.82 -t 60 -b 1M

これらの設定では、1分間1Mbpsでマルチキャストパケットを送信しています。このテストを実行し、アクセスポイントのワイヤレストラフィックを確認すると、一貫して約1Mbpsであるため、真のマルチキャストを実行している必要があります。結果のもう1つの注目すべき点は、パケット損失が50%をはるかに超えて非常に悪いことです。これは、マルチキャストパケットが可能な限り低い速度で送信されているため、アクセスポイントを最も速い速度でのみ実行させるためです。設定が「Transmission Fixed Rate」と呼ばれているdd-wrtを実行しているWRT54GLを使用しています。これを最高速に設定した後で同じテストを再度実行すると、5%未満というはるかに許容可能なパケット損失が得られます。

実際に質問に答えるには:

  1. 伝送速度を修正し、マルチキャストをサポートする最速のアクセスポイントを取得します。マルチキャストパケットを自動的にユニキャストに変換するアクセスポイントは確実に存在します。速度の問題については、クライアントが実際に通信できる速度は多数あるため、5 GHzの広いチャネルを使用するだけでは不十分です。

  2. アクセスポイントが主な決定要因になるため、iOSデバイスでは動作が異なるとは想像できません。

  3. アクセスポイントによって異なるため、1を参照してください。

編集:いくつかのAC APでより多くのことをテストした後、マルチキャストの重要なことは利用可能なレートを設定できることです。マルチキャストは引き続きg速度を使用するため、使用可能な物理レートは6、9、12、18、24、36、48、および54Mbpsです。ほとんどのAPはデフォルトで低速に設定されるため、それらを無効にしてより高いレートを使用するように強制できると、速度が大幅に向上します。これを設定できることは、マルチキャストAPのおそらく最も重要な基準です。例として、DD-WRTの最新バージョンでは、これはコマンドラインで「wl rateset」コマンドを使用して設定できます。それはよく隠されており、ほとんどのファームウェアはこれを設定することを許可していません。


1
IPレベルでマルチキャストしているようです。Wifiハードウェアが各パケットのコピーを各クライアントに送信していないことを確認していますか?ラジオタップキャプチャはありますか?
ogurets

十分な数のデバイスを追加した後は、APがパケットを複製している場合、APが到達している速度に到達できないと確信しています。Wiresharkでパケットをキャプチャし、宛先フィールドのビットを見てマルチキャスト/ブロードキャストまたはユニキャストがAPが実際に行っていることの信頼できる指標であることを確認しました。
Twiske

11

私はWifiを理解していますが、各デバイスがAPと「1:1」の関係を保持し、同じパケットを受信するため、それは真のマルチキャストにはなり得ません。次に、次のデバイスが接続して同じパケットを取得します。

あなたの理解には欠陥があります。マルチキャストは存在しますが、ワイヤレスネットワーク上のほとんどの管理トラフィックと同様に、サポートされる最低の基本/基本/必要なデータレートで実行する必要があります。デフォルトでは、これは通常、APでサポートされる最低のデータレートです。

APから周囲のクライアントにブロードキャストまたはマルチキャストされるものはすべて、すべてのクライアントがサポートし、確実に受信できる速度で送信する必要があるためです。

あなたが言及しているのは、マルチキャストからユニキャストへの変換である、多くのアクセスポイントが採用できる技術です。無線メディアは共有メディアであるため、最低のデータレートで送信されるマルチキャストフレームは、最高のデータレートで送信されるユニキャストフレームより300倍以上の「通信時間」を要します。これは多くの場合、マルチキャストトラフィックとしてマルチキャストを送信するよりもはるかに効率的です。

デフォルト構成のAP(802.11n以降)の状況例では、1つのマルチキャストを配信するよりも、10のユニキャストフレームをそれぞれの10台のデバイス(つまり、合計100フレーム)に最高速度で配信するのにかかる時間が短くて済みます。フレーム。

マルチキャストからユニキャストへの変換を使用する理由となることが多い802.11でのマルチキャストに関するその他の2つの考慮事項は、ACKがない場合はマルチキャストフレームが確認されず、APによってユニキャストフレームが確認されて再送信されることです(TCP確認と混同しないでください)。これはL2メカニズムであり、APとクライアント間の最適なデータレートを見つけるプロセスの一部です)。

次に、BSSのクライアントデバイスが省電力モードを使用している場合、マルチキャストフレームが定期的に送信されるだけで(構成済みのDTIMとビーコン間隔に基づいて)、すべてのクライアントがマルチキャストフレームを再び受信できるようになります。マルチキャストからユニキャストへの変換では、フレームは省電力モードを使用していない場合はすぐにクライアントに送られ、省電力モードのクライアントにのみ遅延されます。

ルーター/ APには複数のタイプがあります。「3x3」と「4x4」、MIMOを使用するものなど、APを選択する基準として何を使用すればよいですか?

まず、クライアントデバイスの機能を満たすか、それを超えるアクセスポイントが必要になります。つまり、クライアントが802.11n 2x2対応のデバイスである場合、少なくとも802.11n 2x2 APが必要です。802.11acは、すべての802.11nクライアントでもいくつかの利点を提供し、追加のストリームが他の方法で利用されるため、より多くの空間ストリームが害を及ぼすことはありません。

次に、マルチキャストからユニキャストへの変換を無効/有効にし、ESSに対して特定のサポートされている/必要なデータレートを選択し、できればDTIMとビーコンの間隔を設定できるようにする設定オプションがあるアクセスポイントが必要です。

iOSデバイスにwifi経由で本当にマルチキャストできますか?私の理論は正しいですか?

それぞれ、はい、いいえ。あなたはそれを行うことができますが、何をしているのか本当に理解していない限り、または単に物事をシンプルに保つために、マルチキャストからユニキャストへの機能を利用して、より「リアルタイム」の体験を得ることができます。状況に応じて以下を正しく取得しないと、クライアントデバイスのエクスペリエンスが実際に低下する可能性があります。

良好なパフォーマンスを得るには、環境とAPからのクライアントデバイスの距離に基づいて信頼性の高い信号を維持しながら、必要なデータレートを可能な限り上方に調整する必要があります。

iOSデバイスは確かに省電力モードを使用するため、DTIMとビーコン間隔をさらに微調整して、省電力モードによって生じる遅延を減らすことができます。これらの設定は、通信時間の利用効率を低下させる可能性があることにも注意してください(つまり、ビーコン間隔を短くすると、ビーコンの数が増えるなど)、解決できない問題が発生します。

各パケット/クライアントをユニキャストとして扱う代わりにマルチキャストする方法はありますか?

すでに説明したように、はい。そもそもAPにマルチキャストからユニキャストへの機能がないか、無効にするオプションがある限り。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.