ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Coherenceの管理
12c (12.1.3)
E56211-02
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

4 マルチキャスト接続テストの実行

この章では、Coherenceマルチキャスト・テスト・ユーティリティを使用して、ネットワーク環境がマルチキャスト通信をサポートしているかどうかを確認する手順について説明します。本番デプロイメントの前に、マルチキャスト・テストの実行が成功する必要があります。

この章には次の項が含まれます:

4.1 マルチキャスト・テスト・ユーティリティの実行

Coherenceマルチキャスト・テスト・ユーティリティは、2台以上のコンピュータ間でマルチキャストが有効にされているかどうかを判断するために使用します。このユーティリティは、負荷についてはテストしません。デフォルトでは、各インスタンスは2秒ごとに1つのマルチキャスト・パケットを送信します。ネットワークの負荷テストについては、第3章「ネットワーク・パフォーマンス・テストの実行」を参照してください。

マルチキャスト・テスト・ユーティリティを実行するには、コマンド行からcom.tangosol.net.MulticastTestクラスを使用するか、COHERENCE_HOME/binディレクトリにあるmulticast-testスクリプトを実行します。スクリプトは、WindowsベースのプラットフォームとUNIXベースのプラットフォームの両方に用意されています。

次の例では、MulticastTestクラスを使用してユーティリティを実行します。

java com.tangosol.net.MulticastTest <command value> <command value> ...

次の例では、スクリプトを使用してユーティリティを実行します。

multicast-test <command value> <command value> ...

表4-1では、マルチキャスト・テスト・ユーティリティで利用できるコマンド行オプションについて説明しています。

表4-1 マルチキャスト・テスト・ユーティリティのコマンド行オプション

コマンド 必須/
オプション
説明 デフォルト

-local

オプション

送信を行うNICのアドレス、IPアドレスとして指定

localhost

-group

オプション

使用するマルチキャスト・アドレス、IP:ポートの形式で指定

237.0.0.1:9000

ttl

オプション

マルチキャスト・パケットの有効時間

4

-delay

オプション

パケット送信間の遅延、秒単位で指定

2

-packetSize

オプション

送信するパケットのサイズ(デフォルトは、ローカルMTUに基づきます)

MTU

-display

オプション

予期しないパケットから表示されるバイト数

0

-translate

オプション

マルチキャスト・トラフィックのリッスンとパケットの変換

なし


4.2 マルチキャストのテスト方法

この項で示す例では、マルチキャスト・アドレス237.0.0.1、ポート9000(テストのデフォルト)で、サーバーA (IPアドレス195.0.0.1)とサーバーB (IPアドレス195.0.0.2)の2台のサーバー間でメッセージが送信できるかどうかをテストする方法について説明します。


注意:

テストで使用されるデフォルトのマルチキャスト・アドレスおよびポートは、Coherenceのデフォルトのアドレスおよびポートとは異なります。テストは、実際のCoherenceプロセスで使用されている同じアドレスおよびポートを使用して実行する必要があります。マルチキャスト用のデフォルトのアドレスおよびポートが成功するが、Coherenceのデフォルトが失敗する可能性があります。この原因としてよくあるのが、ローカル・ネットワーク・ポリシーの構成です。


最初にサーバーAで、このコンピュータまたはインタフェースを次のように単独でチェックして、195.0.0.1で使用可能なマルチキャスト・アドレス237.0.0.1、ポート9000があるかどうかを判定します。

コマンド・プロンプトで、次のコマンドを入力します。

multicast-test.sh -ttl 0

[Enter]を押すと、ユーティリティによって、順次マルチキャスト・パケットの送受信状況が表示されます。例4-1にサンプル出力を示します。

例4-1 マルチキャスト・テスト・ユーティリティによって送信される順次マルチキャスト・パケット

Starting test on ip=servera/195.0.0.1, group=/237.0.0.1:9000,ttl=0
Configuring multicast socket...
Starting listener...
Tue Mar 17 15:59:51 EST 2008: Sent packet 1.
Tue Mar 17 15:59:51 EST 2008: Received test packet 1 from self.
Tue Mar 17 15:59:53 EST 2008: Sent packet 2.
Tue Mar 17 15:59:53 EST 2008: Received test packet 2 from self.
...

複数のパケットの送受信が正常に実行された後で、[Ctrl]を押しながら[C]を押すとテストを停止できます。

前述のように表示されない場合は、マルチキャストが機能していません。また、TTLに0を指定することで、マルチキャスト・パケットがサーバーAから送信されないようにしていることに注目してください。

同じテストをサーバーBでも実行して、このポートの組合せでもマルチキャストが有効になっていることを確認できます。

次に、サーバーAとサーバーBの間のマルチキャスト通信をテストします。このテストでは、TTLにゼロ以外の値を使用して、それぞれのサーバーからパケットを送信できるようにします。デフォルトのテストではTTLに4が使用されますが、サーバーAとサーバーBの間のパケットのルーティングにさらに多くのネットワーク・ホップが必要な場合は、4より大きな値をTTLに指定します。

次のコマンドをそれぞれのサーバーのコマンド・ウィンドウに入力して[Enter]を押し、サーバーAとサーバーBのテストを開始します。

multicast-test.sh

次の例は、サーバーAのサンプル出力を示しています。

Starting test on ip=servera/195.0.0.1, group=/237.0.0.1:9000, ttl=4
Configuring multicast socket...
Starting listener...
Tue Mar 17 16:11:03 EST 2008: Sent packet 1.
Tue Mar 17 16:11:03 EST 2008: Received test packet 1 from self.
Tue Mar 17 16:11:05 EST 2008: Sent packet 2.
Tue Mar 17 16:11:05 EST 2008: Received test packet 2 from self.
Tue Mar 17 16:11:07 EST 2008: Sent packet 3.
Tue Mar 17 16:11:07 EST 2008: Received test packet 3 from self.
Tue Mar 17 16:11:09 EST 2008: Sent packet 4.
Tue Mar 17 16:11:09 EST 2008: Received test packet 4 from self.
Tue Mar 17 16:11:10 EST 2008: Received test packet 1 from ip=serverb/195.0.0.2, group=/237.0.0.1:9000, ttl=4.
Tue Mar 17 16:11:11 EST 2008: Sent packet 5.
Tue Mar 17 16:11:11 EST 2008: Received test packet 5 from self.
Tue Mar 17 16:11:12 EST 2008: Received test packet 2 from ip=serverb/195.0.0.2, group=/237.0.0.1:9000, ttl=4.
Tue Mar 17 16:11:13 EST 2008: Sent packet 6.
Tue Mar 17 16:11:13 EST 2008: Received test packet 6 from self.
Tue Mar 17 16:11:14 EST 2008: Received test packet 3 from ip=serverb/195.0.0.2, group=/237.0.0.1:9000, ttl=4.
Tue Mar 17 16:11:15 EST 2008: Sent packet 7.
Tue Mar 17 16:11:15 EST 2008: Received test packet 7 from self.
...

次の例は、サーバーBのサンプル出力を示しています。

Starting test on ip=serverb/195.0.0.2, group=/237.0.0.1:9000, ttl=4
Configuring multicast socket...
Starting listener...
Tue Mar 17 16:11:10 EST 2008: Sent packet 1.
Tue Mar 17 16:11:10 EST 2008: Received test packet 1 from self.
Tue Mar 17 16:11:11 EST 2008: Received test packet 5 from ip=servera/195.0.0.1, group=/237.0.0.1:9000, ttl=4.
Tue Mar 17 16:11:12 EST 2008: Sent packet 2.
Tue Mar 17 16:11:12 EST 2008: Received test packet 2 from self.
Tue Mar 17 16:11:13 EST 2008: Received test packet 6 from ip=servera/195.0.0.1, group=/237.0.0.1:9000, ttl=4.
Tue Mar 17 16:11:14 EST 2008: Sent packet 3.
Tue Mar 17 16:11:14 EST 2008: Received test packet 3 from self.
Tue Mar 17 16:11:15 EST 2008: Received test packet 7 from ip=servera/195.0.0.1, group=/237.0.0.1:9000, ttl=4.
...

サーバーAとサーバーBの例では、マルチキャスト・パケットを発行して、自身のパケットと相手方のパケット確認しています。これは、マルチキャストのデフォルトのアドレスおよびポートを使用して、これらのサーバー間でマルチキャストが正しく機能していることを示します。


注意:

サーバーAは、サーバーBからのパケット1を受信するまでは自身のパケット(1-4)を観測します。


4.3 マルチキャスト通信のトラブルシューティング

双方向マルチキャスト通信が確立できない場合は、次のトラブルシューティングのヒントを使用してください。マルチキャストが正しく機能しない場合は、ネットワーク管理者またはシステム管理者に連絡して、原因の調査と状況への対処を依頼してください。