ユーザ用ツール

サイト用ツール


サイドバー

ネットワークを勉強したいエンジニアにオススメの本

目次

knowledge:multicast.html


Top#ネットワークの基礎知識に戻る

金融取引でも使われるUDPのマルチキャスト

ユニキャストとブロードキャストとマルチキャスト

マルチキャストを理解する前に、マルチキャスト以外の通信方法も理解しましょう。

ユニキャスト 1対1 の 一般的な通信。
別のセグメントとも通信可能
ブロードキャスト 1対全部
同じセグメントのみ
マルチキャスト 1対グループ
別のセグメントとも通信可能


マルチキャストとは

  • 1つの送信元から、複数の宛先グループへ送る通信。
  • 送信者は1回の送信で、ネットワーク機器でコピーされて送られる。
  • ルーティングは全く関係ない
  • UDPで片方向通信。(TCPは1対1を想定しているため使えない)
  • 受信端末(Receiver)は、そのマルチキャストアドレスの受信をIGMPというプロトコルで、同セグメントのルータに要求
  • OSで管理するユニキャスト用のIPとは別に、マルチキャストを受信したいアプリケーションが個別にマルチキャストアドレスを持ちます。
  • ルータはPIM等のマルチキャストルーティングプロトコルで他のルータと情報を交換し、どこにマルチキャスト通信を届ければよいかを知る


マルチキャストが使われるシーン

  • 金融のレート情報
  • 動画一斉配信


マルチキャストのメリット・デメリット

メリット

  • 送信元の負荷が低い
  • 回線負荷が低い

デメリット

  • UDPで片方向通信


マルチキャストの用語

Sender マルチキャストを送信するサーバ
Reciver 受信クライアント
受信クライアントで、マルチキャストグループに参加する。
マルチキャストグループに参加したタイミングで、macアドレスが割り与えられる
マルチキャストグループ マルチキャストのトラフィックを受信するホストの集まり
IGMP Internet Group Management Protocol
ルータとホストとの間でマルチキャストパケットをやりとりするプロトコル
IGMPv1
IGMPv2
IGMPv3
PIM マルチキャストルーティングプロトコル
RP(ランデブーポイント) 中心となる装置。
送信元からRPまでが送信元ツリー、RPからマルチキャストグループまでが共有ツリー


マルチキャストで使われるIPアドレス

宛先IPアドレスとしては、クラスDの「224.0.0.0〜239.255.255.255」が使われる
ユニキャストのようなサブネットマスクの概念はない。

名前 アドレス範囲 説明
リンクローカル 224.0.0.0 ~ 224.0.0.255 同じサブネット上のみ有効
TTL=1
224.0.0.10 EIGRPルータで利用
224.0.0.18 VRRPルータで利用
224.0.0.5 OSPFルータで利用
など
グローバルスコープ 224.0.1.0 ~ 238.255.255.255 インターネット上で利用するアプリケーション
プライベートスコープ 239.0.0.0 ~ 239.255.255.255 プライベートネットワークのみで利用


マルチキャストのための設定

マルチキャストのためにネットワーク機器でどのような設定が必要か理解しましょう。

L2機器(L2スイッチ)

L2スイッチでは、ブロードキャストと同様にデフォルトでフラッディングされます。
同じセグメントに送信者(Sender)と受信者(Reciver)がいれば、通信できます。
(受信者クライアントがマルチキャストグループに参加している必要あり)


L3機器(L3スイッチ、ルーター)

マルチキャストはブロードキャストと同様にデフォルトでは転送されません。
マルチキャストルーティングを有効にしてあげる必要があります。


マルチキャストルーティング

ディストリビューションツリー

マルチキャストパケットをルーティングする取り決めです。

送信元ツリー(Souce Tree, SPT:Shortest Path Tree)

マルチキャストソースごとに個別のディストリビューションツリーを作成します。

共有ツリー(Shared Tree, RP Tree)

特定のルータ(RP) を中心として、複数のマルチキャストソースで共通のディストリビューションツリーを作成します。


マルチキャストルーティングプロトコルのモード

Denseモード

  • LAN環境を想定
  • 負荷が高い
  • Flood & Pruneモデル:すべてのインターフェースにパケットをルーティングする。
  • ディストリビューションツリーは、送信元ツリー
  • DVMRP, MOSPF, PIM-DM

Sparseモード

  • WAN環境を想定
  • Denseモードは負荷が高いので、LANでも、Sparseモードが使われることもあります。
  • Explicit Joinモデル : ルータはレシーバがいるインターフェースを把握して必要なインターフェースのみにパケットをルーティング
  • ディストリビューションツリーは、送信元ツリーと共有ツリーの組み合わせ
  • PIM-SM, CBT


マルチキャストアプリケーションのSenderとReceiverの例

Sender

送信元IP :  192.168.10.5
宛先マルチキャストアドレス : 239.1.1.5
ベースポート: 5004

SenderのNICが複数の場合

複数インターフェースがある機器の場合、出力インターフェースを指定しないと、意図していないインターフェースから出力されてしまう可能性があります。
特定のインターフェースを指定する場合には、インターフェースに設定されたIPアドレスを指定します。


Receiver

ホスト名 : receiver-1
受信サーバIP :  192.168.10.11
rtp://239.1.1.5
ホスト名 : receiver-2
受信サーバIP :  192.168.10.12
rtp://239.1.1.5

ReciverのNICが複数の場合

マルチキャストアドレスと利用するネットワークインターフェースを指定しなくてはなりません。


マルチキャストルーティング

マルチキャストは、マルチキャストルーティングテーブルという専用のテーブルを持ちます。

Cisco

マルチキャストルーティングの確認

> show ip mroute

マルチキャストルーティングの有効化

# ip multicast-routing  distributed

distributedは最近の機種では必要だが、機種によってはない。

インターフェースの設定

PIM-SMモードの設定

RPを設定する必要がある。

Switch# configure terminal
Switch(config)# ip multicast-routing distributed
Switch(config)# interface range vlan 11 - 13
Switch(config-if-range)# ip pim sparse-dense-mode
Switch(config-if-range)# exit
Switch(config)# ip pim rp-address 172.16.2.1    #RP(ランデブーポイント:中心となる機器)のIPアドレス

PIM-DMモードの設定
RPを設定せずにマルチキャストを実現するPIM-DMモード
既にユニキャストルーティングの設定が行われている前提

Switch# configure terminal
Switch(config)# ip multicast-routing distributed
Switch(config)# interface range vlan 11 - 13
Switch(config-if-range)# ip pim sparse-dense-mode
Switch(config-if-range)# exit

R1(config)# interface GigabitEthernet0/0
R1(config-if)#ip pim dense-mode


Junos

Junosでマルチキャストルーティングテーブルを表示

> show multicast route extensive


マルチキャストの動作確認

自分の参加しているマルチキャストを表示

netstat -g

tcpdumpでマルチキャストパケットの確認

tcpdump -i any igmp


参考


knowledge/multicast.html.txt · 最終更新: 2019/07/26 01:08 by kurihara

ページ用ツール