ブロードキャストとは
コンピュータネットワーク、
電気通信、
情報理論におけるブロードキャストとは、同じメッセージを複数の受信者に同時に送信する通信方式です。これは、プログラムレベルでの操作(
Message Passing Interfaceにおけるブロードキャストなど)から、ネットワーク層での低レベルな操作(
イーサネットにおけるブロードキャストなど)まで、様々なレベルで実装されています。
全対全通信との比較
ブロードキャストと関連する概念として、全対全通信(all-to-all communication)があります。全対全通信は、各送信者がグループ内の全ての受信者にメッセージを送信する方式であり、
マルチキャストによって実現されることもあります。一方、ブロードキャストは、通常、ネットワーク上の全ての
デバイス(ノード)にメッセージを送信します。
全対全通信は、各送信者が1つの受信者と通信する
ポイント・ツー・ポイント方式とは対照的です。
ブロードキャストの仕組み
コンピュータネットワークでは、ブロードキャストはネットワーク上のすべての
デバイスが受信する
パケットを送信することを意味します。ただし、実際のブロードキャストの範囲はブロードキャストドメインに限定されます。ブロードキャストは、ホストが一意の
IPアドレスで識別される他の単一のホストに
データグラムを送信するユニキャストとは対照的です。
ブロードキャストは、各送信者が受信者ごとに異なる独自のメッセージを拡散するall scatterと、同じメッセージを送信するall broadcastとして実行できます。
大規模コンピュータクラスタの
デファクトスタンダードである
Message Passing Interface(MPI)には、MPI_Alltoallメソッドがあります。これは、全対全通信を実現するためのものです。
ブロードキャストの制限
全てのネットワーク技術がブロードキャストに対応しているわけではありません。例えば、X.25や
フレームリレーはブロードキャスト機能を持っておらず、
インターネット全体にわたるブロードキャストも存在しません。ブロードキャストは、主にLAN関連の技術、特に
イーサネットや
トークンリングに限定されています。また、ブロードキャストのパフォーマンスへの影響は、WANほど大きくはありません。
IPv4の後継技術である
IPv6には、ブロードキャスト機能は存在しません。これは、ブロードキャストを使用する特定のサービスを利用するノードが少ない場合に、ネットワーク内の全てのノードを乱すことを防ぐためです。代わりに、
マルチキャスト(1対多のルーティング)が使用されます。
マルチキャストでは、受信者は特定の
マルチキャスト受信者グループに参加するノードに限定されます。
ブロードキャストアドレス
イーサネットと
IPv4では、ブロードキャスト
パケットであることを示すために、全ビットが1のブロードキャストアドレスを使用します。
トークンリングでは、
IEEE 802.2制御フィールドで特別な値を使用します。
セキュリティリスク
ブロードキャストは、Smurf攻撃などの
DoS攻撃に悪用される可能性があります。攻撃者は、ターゲットコンピュータの送信元
IPアドレスを使用して偽のpingリクエストを送信します。これにより、ターゲットコンピュータには、ドメイン内のすべてのコンピュータからのping応答が大量に送られます。
ブロードキャストの使用例
IPネットワークでは、新しい相手と通信を開始する際に、
IPアドレスからMACアドレスを取得する際にブロードキャストが使用されます。通常のネットワークでは、一定期間ごとに
IPアドレスとMACアドレスの対応表を更新するため、そのたびにブロードキャストがネットワークに流れます。
ブロードキャストはネットワーク
セグメント全体に配信されるため、使用頻度が高いとネットワークに過大な負荷がかかります。そのため、上位のネットワーク層での多用は推奨されません。上位層での利用例としては、DHCPによる
IPアドレスの取得や、
OSI参照モデルのアプリケーション層で、
IPアドレスが不明な
サーバを探す場合(Windowsネットワークにおけるファイル共有が可能なマシンの検索など)があります。
関連用語
ブロードキャストストーム
ポイント・ツー・マルチポイント
BUMトラフィック
ユニキャスト
マルチキャスト
エニーキャスト
ARP
参考文献
Encyclopædia Britannica entry broadcast network
* Network Broadcasting and Multicast