Help and Support
 

powered byLive Search

クラスタ ハートビートにおけるマルチキャスト サポート

文書番号:307962
最終更新日:2006年5月17日
リビジョン:7.1
目次

概要

Windows Server 2003 のクラスタ ノードは、ユニキャスト ハートビートではなくマルチキャスト ハートビートを使用します。Microsoft Windows NT 4.0 および Microsoft Windows 2000 では、すべてのハートビート メッセージがユニキャストでした。

マルチキャスト ネットワークでは、単一の宛先インターフェイスではなく、インターフェイスのグループにネットワーク データを送信します。同じマルチキャスト グループ内の他のインターフェイスだけが送信されたデータを使用できます。マルチキャスト テクノロジを使用すると、複数のユニキャスト メッセージを単一のマルチキャスト メッセージに置き換えることができます。ブロードキャストとは異なり、マルチキャスト トラフィックはネットワーク全体に送信する必要がないため、クラスタ外のノードのトラフィックをフィルタリングするために不要な CPU サイクルが消費される可能性が低くなります。ノードの数が増えるほど、複数のユニキャスト メッセージを単一のマルチキャスト メッセージに置き換えることによってノードのパフォーマンスが向上し、ネットワーク帯域幅の消費を低減できます。

クラスタを構成するノード数が 3 未満の場合、マルチキャスト ハートビートを送信しません。また、異なる種類のクラスタが混在しているクラスタ サービスもマルチキャスト ハートビートを送信しません。たとえば、Windows Server 2003 Datacenter Server を実行する 3 つのノードと、Windows 2000 Datacenter Server を実行する 1 つのノードで構成された、4 ノードの Windows Datacenter Server クラスタでは、ユニキャスト ハートビートに戻ります。それ以外の場合、クラスタ サービスはデフォルトで自動的にクラスタ ハートビートをマルチキャストに設定して使用します。

コア クラスタ ドライバであるクラスタ ネットワーク ドライバ (Clusnet.sys) は更新され、マルチキャストをサポートしました。マルチキャストは、クラスタ内通信で常に使用されるわけではありません。以下に示す Windows クラスタリングの 2 つのコンポーネントでは、マルチキャスト メッセージがユニキャスト メッセージに代わって使用されます。
?ハートビート : Windows クラスタリングの障害検出エンジンは、ノードが他のノードにハートビート メッセージを送信するスキームに基づいています。具体的には、ノードが各ネットワーク インターフェイスを使用して他のすべてのノードにハートビート メッセージを送信します。ハートビート メッセージは 1.2 秒ごとに送信されます。多くの場合、各ノードにはクラスタ ネットワークごとに 1 つのインターフェイスがあるため、N ノード クラスタでは 1.2 秒ごとに各ネットワークで N * (N - 1) のユニキャスト ハートビートが送信されます。マルチキャスト ハートビートを使用すると、各ノードが N - 1 のメッセージを送信する代わりに 1 つのメッセージを送信すれば済むため、1.2 秒ごとに各ネットワークで送信されるメッセージ数が N マルチキャスト ハートビートに減少します。これにより、送信ノードの処理サイクルと、ネットワーク帯域幅を節約できます。
?再グループ化 : Windows クラスタリングのメンバシップ エンジンは、メンバシップ ビュー変更時に再グループ化プロトコルを実行します。再グループ化プロトコルのアルゴリズムは、すべてのクラスタ ノードにメッセージを送信する機能があることを前提としています。不要なネットワーク トラフィックの混雑を防止し、メッセージを適切に認証するため、一連のユニキャスト メッセージによってブロードキャスト プリミティブが実装されます。これらのユニキャスト メッセージを単一のマルチキャスト メッセージに変換すると、送信ノードの処理能力を節約し、ネットワーク帯域幅の消費を削減して、アルゴリズムの意図をより正確に反映させることができます。

先頭へ戻る

構成

マルチキャストの構成の主要部分は、各クラスタ ネットワークのマルチキャスト グループ アドレスの選択と承認です。マルチキャスト グループ アドレスには、任意の IPv4 クラス D アドレス (224.0.0.0 〜 239.255.255.255) を使用できます。マルチキャスト グループ アドレスは、以下に示す 3 つのいずれかの方法で構成できます。
? MADCAP (マルチキャスト アドレス動的クライアント割り当てプロトコル) サーバーから構成
? マルチキャスト アドレスの自動選択による自動構成
? 管理者が手動で構成

先頭へ戻る

MADCAP サーバーから構成

クラスタ管理者がマルチキャスト アドレスを手動で構成しなかった場合、クラスタは MADCAP サーバーからマルチキャスト アドレスを取得しようとします。MADCAP サーバーは、DHCP サーバーがユニキャスト アドレスをリースするのと同様にマルチキャスト アドレスをリースします。

ネットワーク上に MADCAP サーバーが存在する場合に、クラスタ サービスがマルチキャスト アドレスの取得に使用する手順を以下に示します。
1. MADCAP 要求を送信してマルチキャスト スコープの一覧を取得します。

スコープとは、トラフィックの送信先をネットワークのサブセットに限定するように構成されたマルチキャスト アドレスの範囲です。MADCAP サーバーは複数のスコープのアドレスを提供できます。MADCAP アドレスを要求する場合、クラスタはアドレスの選択元となるスコープを指定する必要があります。
2. MADCAP サーバーによってアドバタイズされたスコープから、そのクラスタ ネットワークで有効なスコープを指定します。

クラスタ ネットワークでスコープが有効になるのは、以下の両方の条件を満たす場合のみです。
? (そのノードの別のネットワーク インターフェイスではなく) そのネットワークのローカル インターフェイスでスコープが使用できる。
? スコープが、単一ソース トラフィック用に予約されたマルチキャスト アドレス範囲 (232.*.*.*) 内にない。
3. 以下の条件に基づいて残りの有効なスコープをランク付けします。
? 管理ローカル スコープ内のスコープ (239.255.*.*)
? クラスタ ノードに近接した MADCAP サーバー (クラスタ ノードと同じサブネット)
? 列挙されるアドレス範囲が最大のスコープ
? 列挙される TTL (Time-To-Live) 属性が最小のスコープ

4. リースを取得するまで、上の順序で各スコープからアドレス リースを要求します。DHCP によるアドレスの割り当てによく似ていますが、MADCAP によって割り当てられたアドレスには有効期限があり、この有効期限によってリースを更新する必要があります。

応答する MADCAP サーバーがない場合、または使用可能なリースに有効なスコープがない場合は、クラスタ サービスが自動的にアドレスを選択します。

先頭へ戻る

マルチキャスト アドレスの自動選択による自動構成

管理者がアドレスを指定していないため、MADCAP 要求が失敗した場合、クラスタ サービスが自動的にアドレスを選択します。クラスタ サービスは、すべての IPv4 クラス D アドレスのサブセットからランダムにアドレスを選択します。自動選択に使用されるマルチキャスト アドレスの範囲は以下のようにして決定されます。
1. クラスタのレジストリをチェックして、管理者がマルチキャスト アドレス範囲を指定しているかどうかを確認します。アドレス範囲が指定されていない場合、デフォルトの範囲として管理ローカル スコープ (239.0.0.0 〜 239.255.255.255) [RFC 2365] が選択されます。
2. アドレス範囲から以下のスコープを除外します。
? 管理ローカル スコープと管理組織スコープの上位 256 アドレス。これらのアドレスは RFC 2365 [RFC 2365] によって相対割り当て用に予約されています。
? 単一ソース スコープ (232.*.*.*)。
? 最近 MADCAP サーバーから取得された有効なスコープ。
上記のスコープを除外しても自動選択のアドレス範囲が空にならない場合、クラスタがランダムにアドレスを選択します。MADCAP サーバーがネットワーク上に配置された場合 (またはリースが使用可能になった場合) に備えて、クラスタは自動選択アドレスの有効期限を 24 時間に設定します。

先頭へ戻る

管理者が手動で構成

管理者はクラスタ ネットワークのマルチキャスト アドレスを手動で構成できます。クラス D IPv4 アドレスが手動で構成されている場合、そのアドレスがそのまま使用されます。クラスタ サービスを停止して再起動した場合でも、管理者が別のアドレスを手動で構成しない限り、手動で構成された元のアドレスは保持されます。管理者が無効なマルチキャスト アドレス (IPv4 クラス D 以外のアドレスなど) を指定した場合、クラスタ サービスが自動的に有効なマルチキャスト アドレスの構成を試みます。

管理者はクラスタ全体または個々のネットワークでマルチキャストを無効にして、ハートビート トラフィックをユニキャストに戻すこともできます。ネットワークでマルチキャストを無効にした場合、マルチキャスト アドレスの取得が試みられることはなく、ネットワークが再構成されるまでクラスタ サービスはユニキャストを使用します。

管理者は、個々のネットワークとクラスタのプライベート プロパティを修正することによってマルチキャストを構成します。ネットワークのマルチキャストの構成に関するプライベート プロパティを表示するには、オプションを指定せずに /privproperties パラメータを使用します。たとえば、クラスタ ネットワーク PrivNet のハートビート マルチキャスト プロパティを表示するには、コマンド プロンプトで次のように入力します。
cluster network PrivNet /priv
個々のクラスタ ネットワークで設定するマルチキャスト関連の構成パラメータを以下の表に示します。"書き込み可能" 列は、Cluster.exe によってそのパラメータを設定できるかどうかを示します。

名前 書き込み可能 説明
MulticastAddress ネットワークのクラス D IPv4 マルチキャスト アドレスを設定します。有効なクラス D IPv4 アドレス (224.0.0.0 〜 239.255.255.255) でない場合、クラスタは指定されたアドレスを無視し、有効なアドレスの自動取得を試みます。
MulticastDisabled このネットワークで 2 つのクラスのクラスタ内トラフィックにハートビート マルチキャストを使用する (ハートビートとノード間通信を使用してクラスタ構成変更時にノードの障害を確認する) かどうかを指定します。この設定は、クラスタ全体用の MulticastClusterDisabled 設定よりも優先されます。以下の値のいずれかを選択できます。
0 - デフォルト。このクラスタ ネットワークでハートビート マルチキャストを有効にします。
1 - このクラスタ ネットワークでハートビート マルチキャストを無効にします。

MulticastDisabled が指定されていない場合、デフォルト値の 0 が使用されます。
MulticastConfigType × 0 : 手動構成
1 : MADCAP 構成
2 : 自動構成
MulticastLeaseServer × マルチキャスト アドレスの取得元の MADCAP サーバー。手動構成および自動選択では定義されません。
MulticastLeaseRequestId × マルチキャスト アドレスのリース ID。手動構成および自動選択では定義されません。
MulticastLeaseObtained × リースの取得またはアドレスの自動選択が行われた UTC 時間。手動構成では定義されません。
MulticastLeaseExpires × リースまたは自動選択の有効期限を示す UTC 時間。手動構成では定義されません。
MulticastAddressRangeLower MADCAP サーバーが検出されない場合にマルチキャスト アドレスを選択する範囲の下限 (この値を含む)。指定されていない場合はデフォルト値の 239.255.0.0 になります。

: アドレス範囲の下限値は、MulticastAddressRangeLower と MulticastAddressRangeUpper の値が両方とも指定され、かつ MulticastAddressRangeLower と MulticastAddressRangeUpper に指定されたアドレスが有効なクラス D IPv4 アドレスの場合にのみ使用されます。
MulticastAddressRangeUpper MADCAP サーバーが検出されない場合にマルチキャスト アドレスを選択する範囲の上限 (この値を含みます)。指定されていない場合はデフォルト値の 239.255.254.255 が使用されます。

: アドレス範囲の上限値は、MulticastAddressRangeLower と MulticastAddressRangeUpper の値が両方とも指定され、かつ MulticastAddressRangeLower と MulticastAddressRangeUpper に指定されたアドレスが有効なクラス D IPv4 アドレスの場合にのみ使用されます。


書き込み可能な MulticastClusterDisabled パラメータによって、すべてのクラスタ ネットワークでマルチキャストを使用するかどうかを指定できます。各クラスタ ネットワーク用の MulticastDisabled 設定は、クラスタ全体の MulticastClusterDisabled 設定よりも優先されます。クラスタ全体で無効にする場合、その設定を適用するにはクラスタ サービスを再起動する必要があります。以下の表は、特定のネットワークで個別ネットワーク用の MulticastDisabled 値とクラスタ全体用の MulticastClusterDisabled 値を組み合わせて指定した場合に、ハートビート マルチキャストが無効になるかどうかを示したものです。

MulticastClusterDisabled (クラスタ全体に適用) MulticastDisabled (個別のクラスタ ネットワークに適用) ハートビート マルチキャストが有効かどうか
設定なし 設定なし
設定なし 0
設定なし 1 ×
0 設定なし
0 0
0 1 ×
1 設定なし ×
1 0
1 1 ×

* - "設定なし" は、パラメータが存在しないことを示します。

先頭へ戻る

Cluster.exe を使用してマルチキャスト設定を処理する例を以下に示します。

PrivNet という名前のクラスタ ネットワークでハートビート マルチキャストを無効にするには、コマンド プロンプトで次のように入力します。
cluster CLUSTERNAME network PrivNet /priv MulticastDisabled=1:DWORD
PrivNet ネットワークのマルチキャスト アドレスを 224.1.2.3 に設定するには、コマンド プロンプトで次のように入力します。
cluster CLUSTERNAME network PrivNet /priv MulticastAddress=224.1.2.3
PrivNet ネットワークで MADCAP サーバーが検出されなかった場合にマルチキャスト アドレスを自動選択する範囲を 239.255.0.0 〜 239.255.0.255 に設定するには、コマンド プロンプトで次のように入力します。
cluster CLUSTERNAME network PrivNet /priv MulticastAddressRangeLower=239.255.0.0 MulticastAddressRangeUpper=239.255.0.255
クラスタ全体でマルチキャストを無効にするには、コマンド プロンプトで次のように入力します。
cluster CLUSTERNAME /priv MulticastClusterDisabled=1:DWORD

先頭へ戻る

メッセージの署名および確認用のキー

マルチキャストの構成の最終段階は、メッセージの署名と確認に使用するキーの承認です。このキーは秘密にする必要がありますが、すべてのクラスタ ノードで承認されている必要があります。マルチキャストが無効になっているクラスタ ネットワークでは、定期的に 1 つのクラスタ ノードが、新しいマルチキャスト キーとして機能するランダムな大きい数を生成します。このキーは暗号化されて他のすべてのクラスタ ノードに配布されます。各ノードは新しいキーを受信すると、古いキーによる署名を中止します。マルチキャスト キーはクラスタ データベースに記録されることはなく、ネットワーク経由で配布される前には必ず暗号化されます。

先頭へ戻る

詳細

? マルチキャスト ハートビートが失敗した場合 (ハードウェアの構成が正しくない場合など)、クラスタはハートビートを自動的にユニキャストに戻し、ユーザーに通知しません。
? 管理者が手動でアドレスを構成するかマルチキャストを無効にするときに、クラスタがマルチキャスト アドレスで MADCAP リースを保持している場合、MADCAP サーバーに対してアクセスが行われ、そのアドレスを解放しようとします。クラスタがシャットダウンしている場合、アドレスの解放が試行されることはありません (クラスタ内通信の接続が切断されている場合、他のノードがアクティブでそのアドレスを使用しているかどうかを確認できない可能性があります)。
? マルチキャスト プライベート プロパティを読み取り専用にできるのは、Windows Server 2003 ノード上のみです。Windows 2000 ノードでは、読み取り専用のプロパティでも設定が可能です。
? 送信メッセージのマルチキャスト TTL は 1 に設定されます。Windows Server 2003 の Windows クラスタリングでは、クラスタが複数のサブネットをまたぐことはできません。マルチキャスト TTL を 1 に設定すると、マルチキャスト対応ルーターはクラスタ内マルチキャスト メッセージをサブネット外に転送しません。クラスタが地理的に分散している場合、マルチキャスト トラフィックを転送するには VLAN ハードウェアを構成する必要があります。
? 自動構成が必要な場合に MADCAP 要求がタイムアウトになると、マルチキャスト構成が 60 秒以上遅れる可能性があります。MADCAP 要求は非同期で開始されるため、マルチキャスト構成によってクラスタ リソースのオンライン化が遅延することはありません。
? ClusNet では、マルチキャスト メッセージの署名と確認に HMAC SHA-1 ハッシュ アルゴリズムを使用します。
プライベート ネットワークとマルチキャストの詳細については、以下の資料を参照してください。
[RFC 2365] Administratively Scoped IP Multicast (http://www.ietf.org/rfc/rfc2365.txt?number=2365)

IANA multicast address assignments (IANA のマルチキャスト アドレス割り当て) (http://www.iana.org/assignments/multicast-addresses)

Single-source-multicast (単一ソース マルチキャスト) (http://www.cs-ipv6.lancs.ac.uk/ipv6/documents/standards/AssignedNumbers/IANA/single-source-multicast)

先頭へ戻る


この資料は以下の製品について記述したものです。
?Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
?Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)

先頭へ戻る

キーワード:?
kbinfo kbenv KB307962

先頭へ戻る

"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

サポート技術情報の翻訳

 

Related Support Centers

Other Support Options

  • Need More Help?
    Contact a Support professional by Email, Online or Phone.
  • Customer Service
    For non-technical assistance with product purchases, subscriptions, online services, events, training courses, corporate sales, piracy issues, and more.
  • Newsgroups
    Pose a question to other users. Discussion groups and Forums about specific Microsoft products, technologies, and services.