この記事では,マルチメディア通信に関わる知識を簡単にまとめていきたいと思います。ただし,全ての知識が詳しく網羅されている訳ではありません。また,分かりやすいように多少意訳した部分もあります。ですので,参考程度におさめていただければ幸いです。
間違えている箇所がございましたらご指摘ください。随時更新予定です。他のサーベイまとめ記事はコチラのページをご覧ください。
マルチキャスト
マルチキャストに関しては,こちらの記事[ブロードキャストストームとは?分かりやすさ重視で説明]でブロードキャストストームと合わせて簡単に説明しています。ここでは,もう少し詳しく見ていきたいと思います。
まず,IPマルチキャストでは送信ノードはグループアドレスに対して1度だけパケットを送ればOKです。受信ノードは,マルチキャスト通信を始めるときにグループに加入して,ルータが複製したパケットを受信するという流れになります。
マルチキャストの加入者をどのように管理するかに関しては,ホスト↔︎ルータ間では「IGMP(IPv4)」や「MLD(IPv6)」など,経路制御に関しては「DVMRP」などがあります。マルチキャストは,回線効率をよくすることができるほか,送信元の負担が軽くなることや宛先アドレスの管理が単純になるというメリットがあります。
L2マルチキャスト
Layer2(データリンク層)においてマルチキャストを行う通信を「L2マルチキャスト」と呼びます。L2マルチキャストでは,送信ノードは全ノードにパケットを配信し,受信ノードは自分の必要なパケットのみを拾います。ここが「ブロードキャスト」と異なる点です。
マルチキャスト経路制御
マルチキャスト通信における経路制御は,「Dense mode(受信者数がネットワークの規模と比べて多い場合)」と「Sparse mode(受信者数がネットワークの規模と比べて少ない場合)」によって用いられるプロトコル等が異なります。
また,マルチキャストツリーの構成方法によっても分類することができます。1つ目は「Source-based Tree」で,送信者から受信者までの最短経路とRPF(Reverse-path forwarding)によって求めてそれを利用する方法です。2つ目は「Group-shared tree」で1つのグループに対して共有パスを含む配送路を用いる方法です。
ここで注目するべきは,Dense modeでShared treeを利用する方式が存在しないことです。これは,Dense modeで共有木を使うと伝送効率が悪いという理由があるからです。また,RPFは受信者が疎であるときには非効率であるため,Dense modeで積極的に用いられます(DVMRP/PIM-DM)。
他にも,ユニキャストにしか対応していないルータを「ユニキャストに似たマルチキャスト通信」で対応する「XCAST」という方式もあります。マルチキャスト通信とは違って,送信者は受信者を指定してあげる必要があります。マルチキャストは素晴らしい通信方式ではありますが,実装が難しいことや対応していない部分に依存してしまうという欠点があるため,その中間的な通信形態ともいえるXCASTが発案されました。
[1] ネットワークエンジニアとして(https://www.infraexpert.com/)