[index]
CentreCOM 8316XL/8324XL コマンドリファレンス 2.7
スイッチング/EPSRアウェア
- 概要
- EPSRドメイン
- ノードの種類
- コントロールVLANとデータVLAN
- 制御メッセージ
- 障害検出機能
- Healthcheckメッセージ
- Link Downメッセージ
- 基本動作
- 正常動作時
- 障害発生時
- 障害回復時
- Double Failへの対応
- 基本設定
イーサネットリングプロテクション(EPSR = Ethernet Protected Switched Ring)は、リング構成のEthernetネットワークに特化したレイヤー2のループ防止・冗長化機能(RFC3619)です。
EPSRは、トポロジーをリング構成に限定し、各スイッチの役割をあらかじめ固定しておくことで、障害の検出と経路の切り替えをより高速に行います(最短50ミリ秒未満)。
本製品は、EPSRリングを構成するノードのうち、アウェア機能を実装したトランジットノードとして機能することができます。
この章では、EPSRの概要と使用方法について説明します。
EPSRは、リング構成のEthernetネットワークでのみ動作します。
EPSRリングは複数のスイッチ(ノード)で構成され、そのうちの1台はリングの動作を制御するマスターノードとして、その他はトランジットノードとして機能します。
各スイッチは2つのポートでEthernetリングに接続します。マスターノード上のポートは、一方をプライマリーポート、もう一方をセカンダリーポートとして設定します。データトラフィックに対し、プライマリーポートは常時フォワーディング状態ですが、セカンダリーポートは通常ブロッキング状態であり、リングに障害が発生したときだけフォワーディング状態に切り替わります。障害から回復したときは再度ブロッキング状態に戻ります。
次にリングの基本的な構成を示します。

EPSRの保護機能(ループ防止・冗長化機能)は、EPSRドメインと呼ばれる単位ごとに実行されます。EPSRドメインで定義されるのはおもに次の情報です。
- EPSRノード
EPSR対応スイッチのこと。それぞれ2つのポート(トランクグループは1ポート扱い)でEthernetリングに接続する。役割上2つに大別される。
- マスターノード(1台)
- トランジットノード(複数台)
- コントロールVLAN
EPSRドメインの動作を制御するためのVLAN。制御メッセージだけがやりとりされる。各EPSRドメインに1つだけ設定。2つのポート(タグ付き)で構成される。
- データVLAN
保護対象のVLAN。通常のトラフィックが運ばれる。各EPSRドメインには複数のデータVLANを指定可。リング上ではコントロールVLANの2ポートを共有する。さらに、通常はユーザー接続用のメンバーポートを持つ
EPSRドメインを構成するリング上の各スイッチは、役割上マスターノードとトランジットノードに分類されます。マスターノードは、該当EPSRドメインの動作を制御するスイッチで、各ドメインに1台だけ設定できます。その他のスイッチはトランジットノードになります。
トランジットノードは、マスターノードの指示によりリングの切り替えに対応し、自らのポート制御を行います。
また、障害時のリング切り替えの対応に特化した「スヌーピング機能」、リングの切り替えに加えて自ら検出した障害をマスターノードに通知することができる「アウェア機能」に限定したものもあり、本製品は「アウェア機能」を実装しています。
いずれのタイプのトランジットノードも同じEPSRドメインに複数存在でき、それぞれの機能の特徴は以下のようになります。
表 1:トランジットノードの機能
トランジットノードの機能 |
フル実装 |
アウェア機能 |
スヌーピング機能 |
EPSRドメイン状態の表示 |
○ |
○ |
× |
マスターノードの指示によるFDB/ARPクリア |
○ |
○ |
○ |
自ポートのリンクダウン通知 |
○ |
○ |
× |
Double Fail回復時の対応 |
○ |
○ |
× |
プリフォワーディング状態での障害回復ポートのブロッキング |
○ |
× |
× |
Trap送信機能 |
○ |
× |
× |
ログ機能 |
○ |
○ |
× |
デバッグ表示機能 |
○ |
○ |
× |
各ノードは2つのポート(トランクグループは1ポート扱い)でEPSRドメインのEthernetリングに接続します。リング上での通信は、制御トラフィック、データトラフィックともにこの2ポートを通じて行われるため、これらのリング接続用ポートはタグ付きに設定することとなります。
EPSRドメインは、制御メッセージを運ぶコントロールVLANと、通常データを運ぶデータVLANで構成されます。
コントロールVLANは各ドメインに1つだけ設定でき、各スイッチ上においては純粋に2つのポート(トランクグループは1ポート扱い)で構成しなくてはなりません。
一方、データVLANは1つのEPSRドメインに対して複数設定できます。データVLANは、リング上ではコントロールVLANの2ポートを共有して通信を行います。また、通常データVLANは、リング接続ポート以外にユーザー接続用のメンバーポートを持ちます。
コントロールVLANでは、次の制御メッセージがやりとりされます。EPSRでは、これらの制御メッセージを使って、リング障害の発生・回復を検出し、通信回復のための処置を行います。
表 2:EPSR制御メッセージ
メッセージ名 |
機能 |
Healthcheck |
リング障害を検出するため、マスターノードが定期的にプライマリーポートから送出するメッセージ。マスターノードは、一定の時間内にセカンダリーポートでHealthcheckメッセージを受信できなかった場合、リングに障害が発生したと判断する。障害発生中もマスターノードはHealthcheckメッセージを送出し続け、セカンダリーポートで再び受信した場合にリングが障害から回復したと判断する |
Ring Up |
リングが障害から回復したと判断したマスターノードが、その他のノードに対してFDBをクリアするよう指示するために送出するメッセージ。ただし、後述するDouble Failからの回復時に限り、トランジットノードが送出する場合もある |
Ring Down |
リングに障害が発生したと判断したマスターノードが、その他ノードに対してFDBをクリアするよう指示するために送出するメッセージ |
Link Down |
自身のリング接続用ポートがリンクダウンしたことを検出したトランジットノードが、リング障害の発生をマスターノードに伝えるために送出するメッセージ。Link Downメッセージを受信したマスターノードは、リングに障害が発生したと判断して、Healthcheckメッセージがタイムアウトしたときと同様のアクションをとる |
EPSRでは、リング障害(ケーブルやスイッチの障害)を検出するために、次の2つの手段を用います。
- Healthcheckメッセージ(マスターノードによるポーリング)
- Link Downメッセージ(トランジットノードによる障害通知)
Healthcheckメッセージ
マスターノードは、コントロールVLAN上において、プライマリーポートからHealthcheckメッセージを定期的に送出します。一定の時間内にセカンダリーポートでHealthcheckメッセージを受信できなかった場合は、リングに障害が発生したと判断します。
マスターノードは、障害発生中もHealthcheckメッセージを送出し続け、セカンダリーポートで再び受信できるようになると、リングが障害から回復したと判断します。

Link Downメッセージ
トランジットノードは、リングに接続しているポートがリンクダウンしたことを検出すると、もう一方のポートからLink Downメッセージを送出して、障害発生をマスターノードに伝えます。
Link Downメッセージを受信したマスターノードは、リングに障害が発生したと判断して、Healthcheckメッセージがタイムアウトしたときと同様のアクションをとります。

Note
- トランジットノードがスヌーピング機能にのみ対応している場合は、Link Downメッセージの送出は行いません。
次に、EPSRの基本的な動作について説明します。
正常動作時
EPSRドメインを構成するリングに障害が発生していない場合、マスターノードがプライマリーポートから送出したHealthcheckメッセージは、一定時間内にセカンダリーポートに到着します。
マスターノードはリングが「Complete」状態にあると見なし、データVLANに対してセカンダリーポートをブロックします。

障害発生時
マスターノードは、一定時間内にセカンダリーポートでHealthcheckメッセージを受信できなかった場合、または、トランジットノードからLink Downメッセージを受信した場合、リングに障害が発生したと判断します。
マスターノードはリングを「Failed」状態に移行させ、データVLANに対してセカンダリーポートのブロックを解除します。またFDBをクリアしてMACアドレスを再学習します。
さらに、マスターノードはRing Downメッセージをすべてのノードに送信して、FDBをクリアするよう指示します。これにより、リング上での通信が回復します。

なお、マスターノードは、障害の回復を検出するため障害発生中もHealthcheckメッセージを通常どおり送出し続けます。
障害回復時
障害が回復すると、マスターノードはセカンダリーポートで再びHealthcheckメッセージを受信できるようになります。
この場合、マスターノードはリングを「Complete」状態に復帰させ、データVLANに対してセカンダリーポートを再度ブロックします。またFDBをクリアしてMACアドレスを再学習します。
さらに、マスターノードはRing Upメッセージをすべてのノードに送信して、FDBをクリアするよう指示します。これにより、リング上での通信が正常時の動作に回復します。
なお、障害発生箇所に接続されているトランジットノードは、リング接続用ポートのリンクアップにより障害の回復を検知できますが、このとき、回復したポートをデータVLANに対してただちにフォワーディング状態に戻すとループが起こる可能性があるため、該当ポートを一時的にプリフォワーディング状態に遷移させ、マスターノードからRing Upメッセージが届くのを待って、FDBをクリアし、該当ポートをフォワーディング状態に戻します。
アウェア機能、またはスヌーピング機能にのみ対応したトランジットノードでは、プリフォワーディング状態でもポートはブロックされず、ただちに通信を再開します。
Double Failへの対応
あるノードの両端のリンクに障害が発生している状態をDouble Failと呼びます。
下図のように、Double Failが発生したノードであるスイッチBの下流側(マスターノードのセカンダリーポートに近い側)のリンクが回復した場合、回復したリンクの下流ノードにあたるスイッチCでは両方のポートがリンクアップし、プリフォワーディング状態に移行します。

スイッチCがフル実装のトランジットノードである場合、プリフォワーディング状態に遷移したポートは、上流(マスターノードのプライマリーポートに近い側)のスイッチBからRing Upメッセージが届くまでの間、通信をブロックします。
しかし、スイッチBではもう一方のポートが依然ダウンしているため、下流のスイッチCにはマスターノードからのRing Upメッセージが到達しません。このような場合、スイッチCは、プリフォワーディング状態からフォワーディング状態に移行できず、スイッチB-C間のデータVLANのリンクがブロックされたままになります。結果、単純な1リンクの障害発生時と同じリンク状態にもかかわらず、スイッチBの一方はダウン、もう一方はブロックされ、EPSRドメインから孤立した状態となります。

この問題を解決するため、スイッチBは、片方のポートがリンクアップしてから4秒経過してももう一方のポートがリンクアップしない場合、マスターノードの代わりにRing Upメッセージを送出してスイッチCをフォワーディング状態に遷移させます。
Note
- スイッチBのトランジットノードがスヌーピング機能にのみ対応している場合は、EPSR制御メッセージを送出しないため、Double Failに対応できません。
Note
- Double Failが発生したノードの下流のトランジットノードがアウェア機能、またはスヌーピング機能にのみ対応している場合は、ノード間のリンクが障害から回復した際、ポートはブロックされず、ただちに通信を再開します。
EPSRを使用するための基本設定について説明します。ここでは次のような構成を例に各スイッチの設定方法を説明します。

本製品はアウェア機能にのみ対応していますので、ここではスイッチBの設定のみ説明します。マスターノードをはじめ、他のノードには、すでに同様のVLANおよびEPSRドメインの設定がされているものとします。
- コントロールVLANを作成します。
コントロールVLANはちょうど2ポートで構成しなくてはならず、さらに両ポートともタグ付きに設定する必要があります。
CREATE VLAN=ctrl VID=2 ↓
ADD VLAN=ctrl PORT=1,2 FRAME=TAGGED ↓
Note
- コントロールVLANにはIPアドレスの設定などを行わないでください。コントロールVLANはリングを構成・制御するためだけに存在するVLANです。
- データVLANを作成します。
データVLANは、リング接続用のポート2つとユーザー接続用のポートで構成します。リング接続用のポートは、コントロールVLANのメンバーポートと同じポートで、同じくタグ付きに設定します。一方、ユーザー接続用のポートは通常タグなしに設定します。
CREATE VLAN=data VID=100 ↓
ADD VLAN=data PORT=1,2 FRAME=TAGGED ↓
ADD VLAN=data PORT=3,4 ↓
- ここまでの設定では、リング接続用のポート1、2がデフォルトVLANに(タグなしポートとして)所属したままなので、これらのポートをデフォルトVLANから明示的に削除します。
DELETE VLAN=default PORT=1,2 ↓
- EPSRドメイン「Test」を作成します。動作モードはAWAREを指定します。アウェア機能を持ったトランジットノードでは、コントロールVLANだけを指定します。
CREATE EPSR=Test MODE=AWARE CONTROLVLAN=ctrl ↓
- EPSRドメイン「Test」のデータVLANを指定します。
ADD EPSR=Test DATAVLAN=data ↓
- EPSRドメイン「Test」を有効にします。
以上で設定は完了です。
Copyright (C) 2004-2010 アライドテレシスホールディングス株式会社
PN: J613-M0249-11 Rev.J