中継ユニット
【課題】柔軟に接続段数を増減できるようにネットワークを形成可能な中継ユニットを提供する。
【解決手段】系間ラインを介して互いに接続され且つメイン系及びサブ系ラインにそれぞれ接続されパケットを各々が中継するメイン系及びサブ系スイッチと、当該メイン系及びスイッチの中継動作をそれぞれ制御する制御部と、を含み、当該制御部は、中継ユニットの接続段数及び接続順位の情報を保持可能であって、当該メイン系及びサブ系スイッチの少なくとも一方の中継動作の制御態様を当該接続段数及び接続順位に応じて選択する。
【解決手段】系間ラインを介して互いに接続され且つメイン系及びサブ系ラインにそれぞれ接続されパケットを各々が中継するメイン系及びサブ系スイッチと、当該メイン系及びスイッチの中継動作をそれぞれ制御する制御部と、を含み、当該制御部は、中継ユニットの接続段数及び接続順位の情報を保持可能であって、当該メイン系及びサブ系スイッチの少なくとも一方の中継動作の制御態様を当該接続段数及び接続順位に応じて選択する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、フレームを中継する2系統のスイッチを各々が含み、多段に縦列接続されてLANを形成する中継ユニットに関する。
【背景技術】
【0002】
従来より、例えばレイヤ2ネットワークなどの通信網においては、フレーム中継に関して冗長性を持たせるために複数のスイッチをリング状又はメッシュ状に相互接続する構成が採用されている。かかる構成を単に採用した場合、フレームがスイッチ間でループし続けてしまうことが知られている。フレームの無限ループを回避するための技術としては、例えばスパニングツリー技術が知られている。当該技術においては、スイッチ間で相互に交換し合ったIDに基づいてルートとなるスイッチを決定し、ルートスイッチからのパスコストに基づいて無効にするポートを決定することにより、ループの無いツリー構造を形成している。また、例えば特許文献1にもループ回避のための技術が開示されている。特許文献1には、スイッチがリング状に構成され、当該スイッチのうちの1つであるマスタ装置がループを検出したときに特定ポートを用いた中継をブロッキングすることにより、フレームのループを回避しようとする技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−174119号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、スパニングツリーにおいては1つのスイッチをルートとするツリー構造を形成するので、フレーム中継をブロッキングする箇所が固定化され、障害発生時の中継ルートの切り替えを柔軟に行なえない懼れがあり、各スイッチ間に形成され得る中継路を効率的に活用できないという問題も考えられる。また、特許文献1においては、マスタ装置を起点としてループを検出してマスタ装置が特定ポートによる中継をブロッキングするので、やはり同様の問題がある。また、これらの技術においては、スイッチを含む中継ユニットを多段に縦列接続する場合に、その接続段数に応じて中継ルートの切り替え態様を柔軟に変更できないと考えられる。
【0005】
本発明は上記した如き問題点に鑑みてなされたものであって、柔軟に接続段数を増減できるようにネットワークを形成可能とし、各スイッチ間に形成され得る中継路を効率的に活用することができる中継ユニットを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明による中継ユニットは、フレームを中継するためのメイン系及びサブ系ラインと前記メイン系及びサブ系ライン間を接続する系間ラインを含み且つ多段に縦列接続され得てLANを形成する中継ユニットであって、前記系間ラインを介して互いに接続され且つ前記メイン系及びサブ系ラインにそれぞれ接続され前記フレームを各々が中継するメイン系及びサブ系スイッチと、前記メイン系及びスイッチの各々の中継動作を制御する制御部と、を含み、前記制御部は、前記LANにおける中継ユニットの接続段数の情報及び自身の属する中継ユニットの接続順位の情報を保持可能であって、前記メイン系及びサブ系スイッチの少なくとも一方の中継動作の制御態様を前記接続段数及び前記接続順位に応じて選択することを特徴とする。
【発明の効果】
【0007】
本発明による中継ユニットによれば、柔軟に接続段数を増減できるようにネットワークを形成可能とし、各スイッチ間に形成され得る中継路を効率的に活用することができる。
【図面の簡単な説明】
【0008】
【図1】本発明の第1の実施例である中継システムの構成を示すブロック図である。
【図2】図1の0系スイッチの構成を示すブロック図である。
【図3】図2の経路情報テーブルの一例を示す図である。
【図4】図1の1系スイッチの構成を示すブロック図である。
【図5】図1の0系制御部の構成を示すブロック図である。
【図6】図1の1系制御部の構成を示すブロック図である。
【図7】図5及び図6の接続状態保持部が保持し得る接続状態を示す図である。
【図8】図7の接続状態が「完全状態」のときの通信状態を矢印で示す図である。
【図9】図7の接続状態が「他系ユニット間障害」及び「自系ユニット間障害」のときの通信状態を矢印で示す図である。
【図10】図7の接続状態が「自ユニット内障害」及び「対向ユニット内障害」のときの通信状態を矢印で示す図である。
【図11】図7の接続状態が「ユニット間2重障害」のときの接続状態を矢印で示す図である。
【図12】図7の接続状態が「1重化状態」のときの通信状態を矢印で示す図である。
【図13】図7の接続状態が「他系ユニット間+対向ユニット内障害」の状態を含むときの通信状態を矢印で示す図である。
【図14】図1の制御部間で通知される情報の一覧を示す図である。
【図15】図1の各制御部から制御対象スイッチに対して発することができる命令の一覧を示す図である。
【図16】他系制御部との間の初期通信確立処理ルーチンを示すフローチャートである。
【図17】他系制御部との間の初期通信確立処理時における両系の制御部及びスイッチの動作を示すシーケンス図である。
【図18】他系制御部との間の初期通信確立処理時における接続状態の遷移表を示す図である。
【図19】中継制御適用判定処理ルーチンを示すフローチャートである。
【図20】対向制御部との間の初期通信確立処理ルーチンを示すフローチャートである。
【図21】対向制御部との間の初期通信確立処理時における両系の制御部及びスイッチの動作を示すシーケンス図である。
【図22】ユニット間通信確立通知受信時処理ルーチンを示すフローチャートである。
【図23】ユニット間通信確立通知受信時における接続状態の遷移表を示す図である。
【図24】対向制御部との間の初期通信確立処理時における接続状態の遷移表を示す図である。
【図25】特定フレーム中継抑制時における1系スイッチからのフレーム中継フローを示す図である。
【図26】特定フレーム中継抑制時における0系スイッチからのフレーム中継フローを示す図である。
【図27】ユニット間障害検出時処理ルーチンを示すフローチャートである。
【図28】ユニット間障害検出時における接続状態の遷移表を示す図である。
【図29】自ユニット内障害検出時処理ルーチンを示すフローチャートである。
【図30】自ユニット内障害検出時における接続状態の遷移表を示す図である。
【図31】ユニット間障害発生通知受信時処理ルーチンを示すフローチャートである。
【図32】ユニット間障害発生通知受信時における接続状態の遷移表を示す図である。
【図33】ユニット内障害発生通知受信時処理ルーチンを示すフローチャートである。
【図34】ユニット内障害発生通知受信時における接続状態の遷移表を示す図である。
【図35】ユニット内通信確立通知受信時処理ルーチンを示すフローチャートである。
【図36】ユニット内通信確立通知受信時における接続状態の遷移表を示す図である。
【図37】障害がない状況でのユニット内障害発生時の動作フローを示す図である。
【図38】障害がない状況でのユニット間障害発生時の動作フローを示す図である。
【図39】ユニット内障害が復旧し、ユニット間障害から復旧する場合の動作フローを示す図である。
【図40】ユニット間障害復旧し、ユニット間障害から復旧する場合の動作フローを示す図である。
【図41】両系のユニット間で障害が発生した場合の動作フローを示す図である。
【図42】両系のユニット間障害状態から片系側において障害復旧した場合の動作フローを示す図である。
【図43】両ユニットのユニット内で障害発生した場合の動作フローを示す図である。
【図44】両ユニットのユニット内障害から片ユニットにおいて障害復旧した場合の動作フローを示す図である。
【図45】片ユニットでのユニット内障害中にユニット間障害が発生した場合の動作フローを示す図である。
【図46】ユニット内障害中+ユニット間障害中にユニット間障害から復旧した場合の動作フローを示す図である。
【図47】ユニット間障害中にユニット内障害が発生した場合の動作フローを示す図である。
【図48】ユニット内障害中+ユニット間障害中にユニット内障害から復旧した場合の動作フローを示す図である。
【図49】両系ともユニット間2重障害の場合にユニット内障害が発生した場合の動作フローを示す図である。
【図50】両系ともに独立状態であるユニット内において障害から復旧した場合の動作フローを示す図である。
【図51】両ユニットともに1重化状態であるユニット間において障害が発生した場合の動作フローを示す図である。
【図52】両ユニットともに独立状態であるユニット間において障害から復旧した場合の動作フローを示す図である。
【図53】片ユニットのユニット内障害+対向ユニット間障害中に別ユニットのユニット内障害が発生した場合の動作フローを示す図である。
【図54】両ユニットのユニット内障害+片系ユニット間障害中に片ユニットのユニット内障害から復旧した場合の動作フローを示す図である。
【図55】片方のユニットのユニット内障害、及び、片系側のユニット間障害時に、他系においてユニット間障害が発生した場合の動作フローを示す図である。
【図56】片方のユニットのユニット内障害、及び、両系のユニット間障害時に、片系ユニット間で障害から復旧した場合の動作フローを示す図である。
【図57】本発明の第2の実施例である中継システムの構成を示すブロック図である。
【図58】図57の中継システムにおける障害復旧箇所、障害発生箇所、中継抑制有効箇所、及び系間通信有効通知のフローを示す図である。
【図59】図57の中継システムにおける障害発生箇所、中継抑制無効箇所、及び系間通信無効通知のフローを示す図である。
【図60】中継ユニットを4段接続したときの特定フレーム中継抑制時における1系スイッチからのフレーム中継フローを示す図である。
【図61】中継ユニットを4段接続したときの特定フレーム中継抑制時における0系スイッチからのフレーム中継フローを示す図である。
【発明を実施するための形態】
【0009】
以下、本発明に係る実施例について添付の図面を参照しつつ詳細に説明する。
【0010】
<第1の実施例>
図1には、本発明の実施例である中継システム100の構成が示されている。中継システム100は、ホスト端末51−1〜51−n(nは2以上の整数)とホスト端末52−1〜52−m(mは2以上の整数)との間でフレームを中継する中継ユニット1−1及び1−2を含む。中継ユニット1−1と中継ユニット1−2とが中経路62及び63を介して縦列に接続されてLAN(Local Area Network)を形成している。
【0011】
中継ユニット1−1は、フレーム中継経路冗長化のために二重化された0系スイッチ10−1及び1系スイッチ30−1と、0系スイッチ10−1を制御する0系制御部20−1及び1系スイッチ30−1を制御する1系制御部40−1と、を含む。同様に、中継ユニット1−2は、フレーム中継経路冗長化のために二重化された0系スイッチ10−2及び1系スイッチ30−2と、0系スイッチ10−2を制御する0系制御部20−2及び1系スイッチ30−2を制御する1系制御部40−2と、を含む。以下、0系スイッチ10−1及び10−2をメイン系スイッチとも称し、1系スイッチ30−1及び30−2をサブ系スイッチとも称する。
【0012】
ホスト端末51−1〜51−nの各々は、0系スイッチ10−1及び1系スイッチ30−1のうちの現用系として選択されている一方のスイッチとの間でフレームを送受信できる。同様に、ホスト端末52−1〜52−mの各々は、0系スイッチ10−2及び1系スイッチ30−2のうちの現用系として選択されている一方のスイッチとの間でフレームを送受信できる。これらのホスト端末は、例えばパーソナルコンピュータなどの通信機能を備えた端末である。
【0013】
0系スイッチ10−1と1系スイッチ30−1とは、中継ユニット1−1内において中継路61−1を介して相互にフレームを中継できる。同様に、0系スイッチ10−2と1系スイッチ30−2とは、中継ユニット1−2内において中継路61−2を介して相互にフレームを中継できる。また、0系スイッチ10−1と0系スイッチ10−2とは、中継路62を介してユニット間で相互にフレームを中継できる。同様に、1系スイッチ30−1と1系スイッチ30−2とは、中継路63を介してユニット間で相互にフレームを中継できる。これらのスイッチは、例えばレイヤ2スイッチ(L2SW)である。以下、中継路62及び中継路63をそれぞれメイン系ライン及びサブ系ラインとも称する。また、中継路61−1及び61−2の各々を系間ラインとも称する。
【0014】
0系制御部20−1は、通信路64−1を介して0系スイッチ10−1に各種の命令を発して制御することができる。1系制御部40−1は、通信路65−1を介して1系スイッチ30−1に各種の命令を発して制御することができる。同様に、0系制御部20−2は、通信路64−2を介して0系スイッチ10−2に各種の命令を発して制御することができる。1系制御部40−2は、通信路65−2を介して1系スイッチ30−2に各種の命令を発して制御することができる。
【0015】
0系制御部20−1と1系制御部40−1とは、通信路64−1、中継路61−1及び通信路65−1を介して相互にユニット内通信を確立することができる。同様に、0系制御部20−2と1系制御部40−2とは、通信路64−2、中継路61−2及び通信路65−2を介して相互にユニット内通信を確立することができる。また、0系制御部20−1と0系制御部20−2とは、通信路64−1、中継路62及び通信路64−2を介して相互にユニット間通信を確立することができる。同様に、1系制御部30−1と1系制御部30−2とは、通信路65−1、中継路63及び通信路65−2を介して相互にユニット間通信を確立することができる。これらの制御部は、例えば、所定の通信制御プログラムを実行するCPUである。
【0016】
図2には、0系スイッチ10−1の構成が示されている。
【0017】
中継部11は、自ユニットである中継ユニット1−1内の0系制御部20−1、自ユニット内の1系スイッチ30−1、及び次順位ユニットである中継ユニット1−2の0系スイッチ10−2との間で各種フレームの中継を行なう。本実施例においては、中継ユニット1−1及び1−2の2つの中継ユニットのみを含むので、中継ユニット1−1を主体とした場合に中継ユニット1−2を対向ユニットとも称する。
中継部11は、到来したフレームの送信元アドレスが経路情報テーブル12に記憶されている場合には、当該送信元アドレスに対応する中継路にフレームを送出する。中継部11は、送信元アドレスが経路情報テーブル12に記憶されていない場合には、当該フレームの属するVLANに対応する全ての中継路に当該フレームを中継する。また、中継部11は、0系制御部20−1からの中継許可、中継禁止、中継抑制有効、中継抑制無効の命令に応じて、特定のトラフィックについてのフレームの中継を開始、停止、抑制、再開する。これらの命令は、通信路64−1を介してフレームにより通知される。
【0018】
図3には、経路情報テーブル12の一例が示されている。「宛先」は、中継先のMACアドレスである。「仮想グループ」は、仮想ネットワークすなわちVLANのグループである。当該グループは、例えば、ユーザフレームを中継するためのグループ(以下、VLAN_Aと称する)、同一ユニット内の制御部間で制御フレームを中継するためのグループ(以下、VLAN_Bと称する)、対向ユニットの制御部間で制御フレームを中継するためのグループ(以下、VLAN_Cと称する)である。
【0019】
同一ユニット内の中継路61−1及び61−2は、トランクラインとしてVLAN_A及びVLAN_Bの両方に属し、互いのVLANのフレームが交わらないように仮想的にトラフィックがVLAN_AとVLAN_Bとに分離されている。
【0020】
対向ユニット間の中継路62及び63は、トランクラインとしてVLAN_A及びVLAN_Cの両方に属し、互いのVLANのフレームが交わらないように仮想的にトラフィックがVLAN_AとVLAN_Cとに分離されている。
【0021】
各スイッチ−制御部間の通信路64−1、64−2、65−1及び65−2は、トランクラインとしてVLAN_B及びVLAN_Cの両方に属し、互いのVLANのフレームが交わらないように仮想的にトラフィックがVLAN_BとVLAN_Cとに分離されている。
【0022】
「送出経路」は、フレームの中継先を示している。図3では、例として中継路61−1及び中継路62が示されている。送出経路の各々はポートと1対1で対応している。中継部11は、到来したフレームの送信元MACアドレスに対応する送出経路に当該フレームを送出する。
【0023】
経路情報更新部13は、中継部11に到来したフレームに含まれる送信元MACアドレスが経路情報テーブル12に記憶されていないときは、当該送信元MACアドレスと送出経路とを対応付けて経路情報テーブル12に記憶させる。また、経路情報更新部13は、0系制御部20−1からの1つのMACアドレス削除指令に応じて、経路情報テーブル12内の当該MACアドレスを削除する。
【0024】
障害検出部14は、中継部11により中継されるフレームの監視や、中継部11に接続されている通信路の状態を監視してトラフィック障害を検出する。障害の検出は、例えばCisco Systems社製スイッチのキープアライブ機能により実行されることができる。障害検出部14は、障害を検出した場合には、障害検出通知を0系制御部20−1に発する。この際、障害検出部14は、障害が発生した中継路(例えば中継路61−1や62)も併せて0系制御部20−1に通知する。
【0025】
0系スイッチ10−2も、0系スイッチ10−1と同様の構成である。
【0026】
図4には、1系スイッチ30−1の構成が示されている。
【0027】
中継部31は、自ユニットである中継ユニット1−1内の0系制御部40−1、自ユニット内の0系スイッチ10−1、及び次順位(対向)ユニットである中継ユニット1−2の1系スイッチ30−2との間で各種フレームの中継を行なう。中継部31は、到来したフレームの送信元アドレスが経路情報テーブル32に記憶されている場合には、当該送信元アドレスに対応する中継路にフレームを送出する。中継部31は、送信元アドレスが経路情報テーブル32に記憶されていない場合には、当該フレームの属するVLANに対応する全ての中継路に当該フレームを中継する。また、中継部31は、0系制御部40−1からの中継許可、中継禁止、中継抑制有効、中継抑制無効の命令に応じて、特定のトラフィックについてのフレームの中継を開始、停止、抑制、再開する。これらの命令は、通信路65−1を介してフレームにより通知される。経路情報テーブル32は、図4に示されるものと同様である。
【0028】
経路情報更新部33は、中継部31に到来したフレームに含まれる送信元MACアドレスが経路情報テーブル32に記憶されていないときは、当該送信元MACアドレスと送出経路とを対応付けて経路情報テーブル32に記憶させる。また、経路情報更新部33は、1系制御部40−1からの1つのMACアドレス削除指令に応じて、経路情報テーブル32内の当該MACアドレスを削除する。
【0029】
障害検出部34は、中継部31により中継されるパケットの監視や、中継部31に接続されている通信路の状態を監視してトラフィック障害を検出する。障害の検出は、例えばCisco Systems社製スイッチのキープアライブ機能により実行されることができる。障害検出部34は、障害を検出した場合には、障害検出通知を1系制御部40−1に発する。この際、障害検出部34は、障害が発生した中継路(例えば中継路61−1や63)も併せて1系制御部40−1に通知する。
【0030】
1系スイッチ30−2も、1系スイッチ30−1と同様の構成である。
【0031】
図5には、0系制御部20−1の構成が示されている。0系制御部20−1は、0系スイッチ10−1を制御対象スイッチとする。
【0032】
接続状態保持部21は、各スイッチ及び各制御部相互間の接続状態を示すデータを保持している。接続状態は、状態更新部23によって更新され得る。接続状態の詳細については後述する(図7を参照)。また、接続状態保持部21は、中継ユニット1−1及び1−2の接続段数(N)、及び自ユニットである中継ユニット1−1の接続順位(P)についても保持することができる。本実施例においては、接続段数は「2」である。また、中継ユニット1−1の接続順位は例えば「1」であり、中継ユニット1−2の接続順位は例えば「2」である。接続状態保持部21は、例えばRAMやハードディスク等の記憶装置であり、接続段数及び接続順位はこれらの記憶装置に保持され、書き換え自在である。
【0033】
通知受信部22は、0系スイッチ10−1からの障害検出通知、及び自ユニット内の1系制御部40−1又は対向ユニットの0系制御部20−2から接続状態通知、通信確立通知及び障害発生通知を受信する。
【0034】
状態更新部23は、上記通知の内容に応じて接続状態保持部21の接続状態を更新する。更新の内容については後述する(図18、図22、図26、図28、図30、図32、図34及び図36を参照)。
【0035】
接続状態通知部24は、接続状態保持部21に保持されている接続状態を、自ユニット内の1系制御部40−1及び/又は対向ユニットの0系制御部20−2に対して通知する。また、接続状態通知部24は、1系制御部40−1及び/又は0系制御部20−2に対して、通信確立通知及び障害発生通知を発することもできる。
【0036】
命令部25は、接続状態保持部21に保持されている接続状態に基づいて、制御対象スイッチである0系スイッチ10−1に対して各種の命令を発することによりこれを制御する。命令の詳細については後述する(図14)。
【0037】
通信確立部26は、1系制御部40−1及び0系制御部20−2との間で通信を確立する。
【0038】
通知受信部22、状態更新部23、接続状態通知部24及び命令部25は、接続状態保持部21に保持されている接続段数を参照してその接続段数が「2」である場合に本実施例の動作を行なう。
【0039】
0系制御部20−2も、0系制御部20−1と同様の構成である。0系制御部20−2は、0系スイッチ10−2を制御対象スイッチとする。
【0040】
図6には、1系制御部40−1の構成が示されている。1系制御部40−1は、1系スイッチ30−1を制御対象スイッチとする。
【0041】
接続状態保持部41は、各スイッチ及び各制御部相互間の接続状態を示すデータを保持している。接続状態は、状態更新部43によって更新され得る。接続状態の詳細については後述する(図7を参照)。
【0042】
通知受信部42は、1系スイッチ30−1からの障害検出通知、及び自ユニット内の0系制御部20−1又は対向ユニットの1系制御部40−2から接続状態通知、通信確立通知及び障害発生通知を受信する。
【0043】
状態更新部43は、上記通知の内容に応じて接続状態保持部41の接続状態を更新する。更新の内容については後述する(図18、図22、図26、図28、図30、図32、図34及び図36を参照)。
【0044】
接続状態通知部44は、接続状態保持部41に保持されている接続状態を、自ユニット内の0系制御部20−1及び/又は対向ユニットの1系制御部40−2に対して通知する。また、接続状態通知部44は、0系制御部20−1及び/又は1系制御部40−2に対して、通信確立通知及び障害発生通知を発することもできる。
【0045】
命令部45は、接続状態保持部41に保持されている接続状態に基づいて、制御対象スイッチである1系スイッチ30−1に対して各種の命令を発することによりこれを制御する。命令の詳細については後述する(図14)。
【0046】
通信確立部46は、0系制御部20−1及び1系制御部40−2との間で通信を確立する。
【0047】
1系制御部40−2も、1系制御部40−1と同様の構成である。1系制御部40−2は、1系スイッチ30−2を制御対象スイッチとする。
【0048】
図7には、接続状態保持部21及び41が保持し得る接続状態が示されている。以下、動作の主体となっている制御部を自制御部と称する。また、動作の主体となっている制御部の系列を自系、他方の系列を他系とそれぞれ称する。また、自制御部と同一の中継ユニット内に存在する他系の制御部を他系制御部と称する。また、自制御部を含む中継ユニットを自ユニットと称する。また、自ユニットに対向する中継ユニットを対向ユニットと称する。また、対向ユニットに含まれる2つの制御部を、対応する系列に応じてそれぞれ自制御部又は他系制御部についての対向制御部と称する。また、自制御部が制御対象としているスイッチを制御対象スイッチと称する。また、他系制御部が制御対象としているスイッチを他系スイッチと称する。また、対向ユニットに含まれる2つのスイッチを、対応する系列に応じてそれぞれ制御対象スイッチ又は他系スイッチについての対向スイッチと称する。
【0049】
「独立状態」は、自制御部と自ユニット内の他系制御部との間の通信を確立できない状態、且つ自制御部とその対向制御部との間の通信を確立できない状態である。また、「独立状態」は、制御部の初期状態である。
【0050】
「完全状態」は、自ユニット内、対向ユニット内、及び自ユニットと対向ユニットとの間で障害が発生していない状態である。換言すれば、制御部の各々が相互に通信可能な状態である。図8には「完全状態」のときの接続状態が矢印により示されている。
【0051】
「他系ユニット間障害」は、自制御部と自ユニット内の他系制御部との間、及び自制御部と対向制御部との間は通信が確立できているが、自ユニット内の他系スイッチとその対向スイッチとの間で障害が発生している状態である。図9には「他系ユニット間障害」のときの接続状態が矢印により示されている。
【0052】
「自系ユニット間障害」は、自制御部と自ユニット内の他系制御部との間、及び、自ユニット内の他系制御部とその対向制御部との間の通信は確立しているが、自制御部とその対向制御部との間で障害が発生している状態である。図9には「自系ユニット間障害」のときの接続状態が矢印により示されている。
【0053】
「対向ユニット内障害」は、自制御部と自ユニット内の他系制御部との間、自制御部とその対向制御部との間、及び、自ユニット内の他系制御部とその対向制御部との間の通信は確立できているが、対向ユニット内の両制御部間の通信が確立できない状態である。図10には「対向ユニット内障害」のときの接続状態が矢印により示されている。
【0054】
「自ユニット内障害」は、自制御部と自ユニット内の他系制御部との間の通信が確立できないが、自ユニット内の両制御部と対向ユニット内の両制御部間の通信は確立している状態である。図10には「自ユニット内障害」のときの接続状態が矢印により示されている。
【0055】
「ユニット間2重障害」は、自制御部と自ユニット内の他系制御部との間は通信が確立できているが、制御対象スイッチとその対向スイッチとの間、及び、自ユニット内の他系スイッチとその対向スイッチとの間で障害が発生している状態である。図11には「ユニット間2重障害」のときの接続状態が矢印により示されている。
【0056】
「1重化状態」は、自制御部とその対向制御部との間の通信は確立しているが、自制御部と自ユニット内の他系制御部との間、及び、対向ユニット内の両制御部間の通信が確立できない状態である。図12には「1重化状態」のときの接続状態が矢印により示されている。
【0057】
「対向ユニット+他系ユニット間障害」は、自制御部と自ユニット内の他系制御部との間、及び、自制御部とその対向制御部との間の通信は確立できているが、対向ユニット内の両制御部間の通信、及び、他系制御部とその対向制御部との間の通信が確立できていない状態である。図13には「他系ユニット間+対向ユニット内障害」の状態を含むときの接続状態が矢印により示されている。
【0058】
図14には、制御部間で相互に通知される情報の一覧を示す図である。これらの情報は、接続状態通知部24及び44によって通知される。
【0059】
「接続状態」は、接続状態保持部21及び41に保持されているデータであり、その内容は図13に示される状態のいずれか1つを示す。当該通知は、自ユニットである中継ユニット1−1内の他系制御部である1系制御部40−1、及び/又は対向制御部である0系制御部20−2に対して通知される。
【0060】
「ユニット間障害発生」は、制御対象スイッチによる対向スイッチとの間の通信障害検出、又は、対向制御部との間の通信障害検出についての通知である。当該通知は、自ユニット内の他系制御部に対して通知される。
【0061】
「ユニット間通信確立」は、対向制御部との間の通信確立についての通知である。当該通知は、自ユニット内の他系制御部に対して通知される。
【0062】
「ユニット内障害発生」は、制御対象スイッチによる他系スイッチとの間の通信障害検出、又は、自ユニット内の他系制御部との間の通信障害検出についての通知である。当該通知は、対向制御部に対して通知される。
【0063】
「ユニット内通信確立」は、自ユニット内の他系制御部との間の通信確立についての通知である。当該通知は、対向制御部に対して通知される。
【0064】
図15には、各制御部から制御対象スイッチに対して発することができる命令の一覧を示す図である。これらの命令は、命令部25及び45から発せられる。
【0065】
「命令1」は、他系スイッチ向けユーザトラフィックの中継を許可する命令(他系スイッチ向け中継許可命令)である。
【0066】
「命令2」は、対向スイッチ向けユーザトラフィックの中継を許可する命令(対向スイッチ向け中継許可命令)である。
【0067】
「命令3」は、他系制御部との通信切断後に通知する命令であり、他系スイッチ向けユーザトラフィックの中継を禁止する命令(他系スイッチ向け中継禁止命令)である。
【0068】
「命令4」は、対向制御部との通信切断後に通知する命令であり、対向スイッチ向けユーザトラフィックの中継を禁止する命令(対向スイッチ向け中継禁止命令)である。
【0069】
「命令5」は、他系スイッチから受信したユーザトラフィックを対向スイッチに中継する処理を抑制する命令(中継抑制有効命令)である。
【0070】
「命令6」は、他系スイッチから受信したユーザトラフィックを対向スイッチに中継する処理の抑制を解除する命令(中継抑制無効命令)である。
【0071】
「命令7」は、送出経路が対向スイッチに設定されているMACアドレスを経路制御テーブルから削除する命令(対向スイッチ向け経路削除命令)である。
【0072】
「命令8」は、送出経路が他系スイッチに設定されているMACアドレスを経路制御テーブルから削除する命令(他系スイッチ向け経路削除命令)である。
【0073】
以下、図16及び図17を参照しつつ、自制御部である0系制御部20−1が他系制御部である1系制御部40−1との間で初期通信確立するときの動作について説明する。0系制御部20−1は、1系制御部40−1との間で初期通信を確立できるまで当該フローを断続的に実行する。以下、0系制御部20−1の接続状態保持部21及び1系制御部40−1の接続状態保持部41の各々が初期接続状態として「独立状態」を保持している前提で説明する。また、0系制御部20−1を主体として各動作を記載する。
【0074】
先ず、通信確立部26が、1系制御部40−1の通信確立部46との間で通信確立を試みる(ステップS01、S101)。通信確立できなかった場合には当該フローを終了する。
【0075】
通信確立できた場合には、接続状態通知部24は、1系制御部40−1に接続状態を通知する。また、1系制御部40−1の接続状態通知部44からも、0系制御部20−1に接続状態を通知される(ステップS02、S102)。この際、互いに通知し合う接続状態は「独立状態」である。
【0076】
次に、接続状態通知部24は、対向制御部である0系制御部20−2との間で既に通信確立されていると判別した場合には(ステップS03)、0系制御部20−2にユニット内通信確立通知を行なう(ステップS04)。現時点においては接続状態が「独立状態」であり、0系制御部20−2との間では通信確立されていない。故に、接続状態通知部24はユニット内通信確立通知を発せず、ステップS05に移行する。
【0077】
次に、状態更新部23が、接続状態保持部21に保持されている接続状態と、1系制御部40−1から通知された接続状態とに基づいて接続状態保持部21の接続状態を更新する(ステップS05)。
【0078】
図18には、他系制御部との初期通信確立処理時における接続状態の遷移表が示されている。「自制御部接続状態」は自制御部(ここでは、0系制御部20−1)の現在接続状態を示している。「他系制御部接続状態」は他系制御部(ここでは、1系制御部40−1)から通知された接続状態を示している。更に、これら両状態によって定まる接続状態が遷移表中にマトリクス上に示されている。
【0079】
状態更新部23は、接続状態保持部21の接続状態をこの遷移表に従って更新する。詳細には、現時点における自制御部の現在接続状態は「独立状態」であり、且つ他制御部から通知された接続状態も「独立状態」であるので、状態更新部23は、接続状態保持部21の接続状態を「ユニット間2重障害」とする。
【0080】
次に、命令部25は、中継制御適用判定を行なう(ステップS06)。以下、図19を参照しつつ、中継制御適用判定処理の動作について説明する。命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS11)。現在の接続状態は「ユニット間2重障害」なので、命令部25は、中継抑制指令(ステップS12)を発せずに当該判定処理を終了する。
【0081】
次に、命令部25は、制御対象スイッチである0系スイッチ10−1に対して他系スイッチである1系スイッチ30−1への中継を許可する命令1を発する(ステップS07、S104)。0系スイッチ10−1は、命令1に応じて、これ以降到来したユーザトラフィックのフレームを1系スイッチ30−1に対して中継することができる。
【0082】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS08)。現在の接続状態は「ユニット間2重障害」なので、命令部25は、MACアドレスの削除命令7(ステップS09)を発せずに当該判定処理を終了する。
【0083】
なお、当該接続状態が「完全状態」である場合には、命令部25は、0系制御部20−1に対して命令7を発する。この場合、0系制御部20−1の経路情報更新部13は、命令7に応じて、送出経路が対向スイッチに設定されているMACアドレスを経路制御テーブルから削除する。0系スイッチ10−1は、これ以降、他系スイッチである1系スイッチ20−1から到来したフレームを、対向スイッチである0系スイッチ10−2には中継しない。また、中継部11は、その後到来したフレームのMACアドレスを「宛先」として経路制御テーブル12に追加することにより、新たなフレーム中継先を設定できる。
【0084】
以下、図20及び図21を参照しつつ、自制御部である0系制御部20−1が対向制御部である0系制御部20−2との間で初期通信確立するときの動作について説明する。0系制御部20−1は、0系制御部20−2との間で初期通信を確立できるまで当該フローを断続的に実行する。以下、0系制御部20−1の接続状態保持部21及び0系制御部20−2の接続状態保持部21の各々が接続状態として「ユニット間2重障害」を保持している前提で説明する。また、0系制御部20−1を主体として各動作を記載する。
【0085】
先ず、通信確立部26が、0系制御部20−2の通信確立部26との間で通信確立を試みる(ステップS21、S111)。通信確立できなかった場合には当該フローを終了する。通信確立できた場合には、ステップS22に移行する。
【0086】
接続状態通知部24は、他系制御部である1系制御部40−1との間で既に通信確立されているか判別する(ステップS22)。現段階においては0系制御部20−1と1系制御部40−1との間で通信確立されているので、接続状態通知部24は1系制御部40−1に対してユニット間通信確立通知を発する(ステップS23、S112)。
【0087】
また、1系制御部40−1の接続状態通知部44も、0系制御部20−1に対してユニット間通信確立通知を発する(ステップS112)。通知受信部22は、1系制御部40−1からの当該ユニット間通信確立通知を受信する(ステップS112)。
【0088】
以下、図22も併せて参照しつつ、0系制御部20−1を主体とした場合における、ユニット間通信確立通知受信時の動作について説明する。0系制御部20−1は、他系制御部である1系制御部40−1からのユニット間通信確立通知を受信したときに当該ルーチンを実行する。
【0089】
図23には、ユニット間通信確立通知受信時における接続状態の遷移表が示されている。「通知受信前の接続状態」は、ユニット間通信確立通知を受信する前の接続状態である。なお、0系制御部20−1における現時点の接続状態は「ユニット間2重障害」である。「通信受信後の接続状態」は、ユニット間通信確立通知を受信した後の接続状態すなわち更新後の接続状態である。
【0090】
先ず、状態更新部23は、図23の遷移表に従って接続状態保持部21に保持されている接続状態を更新する(ステップS31)。接続状態保持部21の接続状態は「ユニット間2重障害」であるので、状態更新部23は、当該接続状態を「自系ユニット間障害」とする(ステップS31)。
【0091】
次に、命令部25は、図19に示される中継制御適用判定を行なう(ステップS32)。命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS11)。現在の接続状態は「自系ユニット間障害」なので、命令部25は、中継抑制指令(ステップS12)を発せずに当該判定処理を終了する。
【0092】
続いて、接続状態通知部24は、0系制御部20−2に接続状態を通知する(ステップS24、S114)。また、0系制御部20−2の接続状態通知部24からも、0系制御部20−1に対して接続状態を通知する(ステップS114)。この際、互いに通知し合う接続状態は「自系ユニット間障害」である。
【0093】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態と、0系制御部20−2から通知された接続状態とに基づいて接続状態保持部21の接続状態を更新する(ステップS25)。
【0094】
図24には、対向制御部との初期通信確立処理時における接続状態の遷移表が示されている。状態更新部23は、接続状態保持部21の接続状態をこの遷移表に従って更新する。詳細には、現時点における自制御部の現在接続状態は「自系ユニット間障害」であり、且つ他制御部から通知された接続状態も「自系ユニット間障害」であるので、状態更新部23は、接続状態保持部21の接続状態を「完全状態」とする(ステップS115)。
【0095】
次に、命令部25は、図19に示される中継制御適用判定を行なう(ステップS26、S116)。命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS11)。現在の接続状態は「完全状態」なので、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、他系スイッチである1系スイッチ30−1から到来した特定フレームを、対向スイッチである0系スイッチ10−2に中継することを抑制する中継抑制有効命令5を発する(ステップS12、S117)。特定フレームは例えばユーザトラフィックのフレームである。0系スイッチ10−1は、命令5に応じて、これ以降1系スイッチ30−1から到来した特定フレームを0系スイッチ10−2には中継しない。なお、特定フレームが0系スイッチ10−2から到来したものであるか否かは、例えば、当該特定フレームが到来したポート番号により判別できる。
【0096】
次に、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、その対向スイッチである0系スイッチ10−2への一般フレームの中継を許可する命令2を発する(ステップS27、S118)。一般フレームは例えばユニット制御用フレームである。0系スイッチ10−1は、命令2に応じて、これ以降到来した一般フレームを0系スイッチ10−2に中継することができる。
【0097】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS28)。現在の接続状態は「完全状態」なので、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、送出経路が他系スイッチに指定されているMACエントリを経路制御テーブル12から削除する他系スイッチ向け経路削除命令8を発する。(ステップS29、S119)。
【0098】
上記動作により、0系スイッチ10−1は、接続状態が「完全状態」である場合に、特定フレームを対向スイッチである0系スイッチ10−2には中継しなくなる。かかる動作により、中継路61−1、61−2、62及び63によって形成されるリング状の中継路をフレームがループすることがなくなる。
【0099】
図16〜図24を参照しての上記説明においては、0系制御部20−1を中心に説明したが、図17及び図22に示されるように、0系制御部20−2、1系制御部40−1及び40−2についても0系制御部20−1と同様の動作を各々独立して行なう。
【0100】
図25には、上記処理によって各スイッチについて特定フレームの中継抑制がなされたときにおける、1系スイッチ30−1からのフレームの中継フローが矢印で示されている。1系スイッチ30−1は、例えば図1に示されるホスト端末51−1から到来したフレームを0系スイッチ10−1及び/又は1系スイッチ30−2に中継する。1系スイッチ30−2は、フレームを0系スイッチ10−2に中継する場合もある。
【0101】
0系スイッチ10−1は、0系制御部20−1からの中継抑制有効命令5に応じて、他系スイッチである1系スイッチ30−1から到来した特定フレームを、対向スイッチである0系スイッチ10−2には中継しない。同様に、0系スイッチ10−2も、0系制御部20−2からの中継抑制有効命令5に応じて、他系スイッチである1系スイッチ30−2から到来した特定フレームを、対向スイッチである0系スイッチ10−1には中継しない。かかる動作により、接続状態が「完全状態」である場合に、1系スイッチ30−1から送出されるフレームが中継路61−1、61−2、62及び63をループすることを防止できる。なお、1系スイッチ30−2からから送出されるフレームについても同様にループが防止される。
【0102】
図26には、上記処理によって各スイッチについて特定フレームの中継抑制がなされたときにおける、0系スイッチ10−1からのフレームの中継フローが矢印で示されている。0系スイッチ10−1は、例えば図1に示されるホスト端末51−1から到来したフレームを1系スイッチ30−1及び/又は0系スイッチ10−2に中継する。0系スイッチ10−2は、フレームを1系スイッチ30−2に中継する場合もある。
【0103】
1系スイッチ30−1は、1系制御部40−1からの中継抑制有効命令5に応じて、他系スイッチである0系スイッチ10−1から到来した特定フレームを、対向スイッチである1系スイッチ30−2には中継しない。同様に、1系スイッチ30−2も、1系制御部40−2からの中継抑制有効命令5に応じて、他系スイッチである1系スイッチ30−2から到来した特定フレームを、対向スイッチである1系スイッチ30−1には中継しない。かかる動作により、接続状態が「完全状態」である場合に、0系スイッチ10−1から送出されるフレームが中継路61−1、61−2、62及び63をループすることを防止できる。なお、0系スイッチ10−2からから送出されるフレームについても同様にループが防止される。
【0104】
このように、本実施例の中継システム100においては、スイッチ10−1、10−2、30−1及び30−2を制御する制御部20−1、20−2、40−1及び40−2がそれぞれ設けられている。これらの制御部は、自身が保持している接続状態を相互に通知し合い、自身が保持している接続状態と、他系又は対向の制御部から通知された接続状態とに基づいて所定の遷移表に従って自身の接続状態を更新する。そして、接続状態が「完全状態」すなわち何れの中継路にも障害が発生しておらずフレームがループし得る状態になったときに、制御対象スイッチがその対向スイッチに向けて特定のフレームを中継することを抑制する。かかる動作により、フレーム中継路の冗長性を保ちつつ、フレームが中継路をループすることを回避することができる。
【0105】
上記の例は、他系制御部との間の初期通信確立処理、及び対向制御部との間の初期通信確立処理を行う場合の例であるが、中継ユニット1−1及び1−2は以下の処理についても行なう。
【0106】
以下、図27を参照しつつ、0系制御部20−1を主体とした場合における、ユニット間障害検出時の動作について説明する。0系制御部20−1は、制御対象スイッチである0系スイッチ10−1の障害検出部14からのユニット間障害検出通知を受信したときに当該ルーチンを実行する。ユニット間障害検出通知は、障害検出部14が中継路62において障害発生を検出した場合に通知される。
【0107】
先ず、接続状態通知部24は、他系制御部である1系制御部40−1との間で既に通信確立されているか判別する(ステップS41)。通信確立されていない場合にはステップS43に移行する。通信確立されている場合には、接続状態通知部24は1系制御部40−1に対してユニット間障害の通知をする(ステップS42)。
【0108】
次に、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、その対向スイッチである0系スイッチ10−2への特定フレームの中継を禁止する命令4を発する(ステップS43)。0系スイッチ10−1は、命令4に応じて、これ以降到来した特定フレームを0系スイッチ10−2には中継しない。
【0109】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS44)。現在の接続状態が「完全状態」でない場合には、命令部25は、命令7及び命令6を発せず、ステップS47に移行する。現在の接続状態が「完全状態」である場合には、命令部25は、0系スイッチ10−1に対して、送出先が対向スイッチとなるMACアドレスを経路制御テーブル12から削除する命令7を発し(ステップS45)、0系スイッチ10−2への特定パケットの中継抑制の解除命令6を発する(ステップS46)。
【0110】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS47)。図28には、ユニット間障害検出時における接続状態の遷移表が示されている。「通信不可前の接続状態」は現時点の接続状態である。「通信不可後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「1重化状態」である場合、状態更新部23は、接続状態保持部21の接続状態を「独立状態」とする。
【0111】
以下、図29を参照しつつ、0系制御部20−1を主体とした場合における、自ユニット内障害検出時の動作について説明する。0系制御部20−1は、制御対象スイッチである0系スイッチ10−1の障害検出部14からの自ユニット内障害検出通知を受信したときに当該ルーチンを実行する。ユニット内障害検出通知は、障害検出部14が中継路61−1において障害発生を検出した場合に通知される。
【0112】
先ず、接続状態通知部24は、対向制御部である0系制御部20−2との間で既に通信確立されているか判別する(ステップS51)。通信確立されていない場合にはステップS53に移行する。通信確立されている場合には、接続状態通知部24は0系制御部20−2に対してユニット内障害の通知をする(ステップS52)。
【0113】
次に、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、その他系スイッチである1系スイッチ30−1への特定フレームの中継を禁止する命令3を発する(ステップS53)。0系スイッチ10−1は、命令4に応じて、これ以降到来した特定フレームを1系スイッチ30−1には中継しない。
【0114】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS54)。現在の接続状態が「完全状態」でない場合には、命令部25は、命令8及び命令6を発せず、ステップS57に移行する。現在の接続状態が「完全状態」である場合には、命令部25は、0系スイッチ10−1に対して、送出先が他系スイッチとなるMACアドレスを経路制御テーブル12から削除する命令8を発し(ステップS55)、0系スイッチ10−2への特定パケットの中継抑制の解除命令6を発する(ステップS56)。
【0115】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS57)。図30には、ユニット内障害検出時における接続状態の遷移表が示されている。「通信不可前の接続状態」は現時点の接続状態である。「通信不可後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「ユニット間2重障害」である場合、状態更新部23は、接続状態保持部21の接続状態を「独立状態」とする。
【0116】
以下、図31を参照しつつ、0系制御部20−1を主体とした場合における、ユニット間障害発生通知受信時の動作について説明する。0系制御部20−1は、他系制御部である1系制御部40−1からのユニット間障害検出通知を受信したときに当該ルーチンを実行する。
【0117】
先ず、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS61)。現在の接続状態が「完全状態」でない場合には、命令部25は、中継抑制無効命令6を発せず、ステップS63に移行する。現在の接続状態が「完全状態」である場合には、命令部25は、制御対象スイッチである0系スイッチ10−1に対してその対向スイッチである0系スイッチ10−2への特定フレームの中継抑制を無効とする命令6を発する(ステップS62)。
【0118】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS63)。図32には、ユニット間障害発生通知受信時における接続状態の遷移表が示されている。「通知受信前の接続状態」は現時点の接続状態である。「通信受信後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「自系ユニット間障害」である場合、状態更新部23は、接続状態保持部21の接続状態を「ユニット間2重障害」とする。
【0119】
以下、図33を参照しつつ、0系制御部20−1を主体とした場合における、ユニット内障害発生通知受信時の動作について説明する。0系制御部20−1は、対向制御部である0系制御部20−2からのユニット内障害検出通知を受信したときに当該ルーチンを実行する。
【0120】
先ず、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS71)。現在の接続状態が「完全状態」でない場合には、命令部25は、中継抑制無効命令6を発せず、ステップS74に移行する。現在の接続状態が「完全状態」である場合には、命令部25は、制御対象スイッチである0系スイッチ10−1に対してその対向スイッチである0系スイッチ10−2への特定フレームの中継抑制を無効とする命令6を発する(ステップS72)。
【0121】
次に、命令部25は、0系制御部20−1に対して命令7を発する。0系制御部20−1の経路情報更新部13は、命令7に応じて、対向スイッチである0系スイッチ10−2に対し、送出先が対向スイッチとなるMACアドレスを経路制御テーブル12から削除する。なお、中継部11は、その後到来したフレームのMACアドレスを「宛先」として経路制御テーブル12に追加することにより、新たなフレーム中継先を設定できる。
【0122】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS74)。図34には、ユニット内障害発生通知受信時における接続状態の遷移表が示されている。「通知受信前の接続状態」は現時点の接続状態である。「通信受信後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「自系ユニット間障害」である場合、状態更新部23は、接続状態保持部21の接続状態を「1重化状態」とする。
【0123】
以下、図35を参照しつつ、0系制御部20−1を主体とした場合における、ユニット内通信確立通知受信時の動作について説明する。0系制御部20−1は、対向制御部である0系制御部20−2からのユニット内障害検出通知を受信したときに当該ルーチンを実行する。
【0124】
先ず、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS81)。図36には、ユニット内通信確立通知受信時における接続状態の遷移表が示されている。「通知受信前の接続状態」は現時点の接続状態である。「通信受信後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「1重化状態」である場合、状態更新部23は、接続状態保持部21の接続状態を「自系ユニット間障害」とする。
【0125】
次に、命令部25は、図19に示される中継制御適用判定を行なう(ステップS82)。命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS11)。現在の接続状態が「完全状態」でない場合、命令部25は、中継抑制指令(ステップS12)を発せずに当該判定処理を終了する。現在の接続状態が「完全状態」である場合、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、その対向スイッチである0系スイッチ10−2への特定フレームの中継を抑制する中継抑制有効命令5を発する(ステップS12)。
【0126】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS83)。現在の接続状態が「完全状態」でない場合には、命令部25は、命令8を発せず、当該ルーチンを終了する。現在の接続状態が「完全状態」である場合には、命令部25は、制御対象スイッチである0系スイッチ10−1に対し、送出先が他系スイッチとなるMACアドレスを経路制御テーブル12から削除する命令8を発する(ステップS84)。
【0127】
0系制御部20−1の経路情報更新部13は、命令8に応じて、0系スイッチ10−1に対し、送出先が他系スイッチとなるMACアドレスを経路制御テーブル12から削除する。なお、中継部11は、その後到来したフレームのMACアドレスを「宛先」として経路制御テーブル12に追加することにより、新たなフレーム中継先を設定できる。
【0128】
なお、ユニット間通信確立通知受信時の動作及び遷移表については図22及び図23に示されている。また、0系制御部20−2、1系制御部40−1及び40−2の各々も0系制御部20−1と同様の処理を行なう。
【0129】
図27〜図36を参照しつつ上記に説明したように、各制御部は、障害検出時、障害発生通知受信時、及び通信確立時においても、自身が保持している接続状態を相互に通知し合い、自身の接続状態を更新する。そして、接続状態が「完全状態」となった場合には、制御対象スイッチに対してその対向スイッチへのフレームの中継を抑制する命令を発する。かかる処理により、障害検出時、障害発生通知受信時、及び通信確立時においても、フレーム中継路の冗長性を保ちつつ、フレームが中継路61−1、61−2、62及び63をループすることを回避することができる。
【0130】
障害検出時、障害発生通知受信時、及び通信確立時における中継ユニット1−1及び1−2の動作フローについては様々なパターンが考えられる。図37〜図56には、中継ユニット1−1及び1−2の様々なパターンの動作フローが示されている。制御部の各々が保持している接続状態、障害中箇所、及び障害復旧箇所についても併せて記載している。これらのフローは、図22、図23、図27〜図36に示される処理ルーチンの動作に従ってなされるものである。図37〜図56に示されるように、本実施例の中継システム100は、様々なパターンの障害検出時及び障害発生通知受信時においても、フレーム中継路の冗長性を保ちつつ、フレームが中継路61−1、61−2、62及び63をループすることを回避することができることがわかる。また、通信確立時すなわち通信障害から復旧した場合にも、フレームが中継路61−1、61−2、61−3、62及び63をループすることを回避しつつ、フレームの中継路を有効活用することができる。
【0131】
<第2の実施例>
図57には、本発明の第2の実施例である中継システム100の構成が示されている。本実施例の中継システム100においては、中継ユニット1−1、1−2及び1−3が多段接続されている。以下、第1の実施例と異なる部分について主に説明する。なお、各スイッチには、ホスト端末(図示せず)が図1の場合と同様に接続されている。
【0132】
接続状態保持部41は、接続段数として「3」を保持している。通知受信部42、状態更新部43、接続状態通知部44及び命令部45は、接続状態保持部41に保持されている接続段数を参照してその接続段数が「3」以上である場合に本実施例の動作を行なう。また、中継ユニット1−1、1−2及び1−3の各々の接続状態保持部41が保持する接続順位は、それぞれ例えば「1」、「2」及び「3」である。この場合、番号が小さいほど上位である。
【0133】
接続状態通知部44は、通信確立部46によって自ユニット内の制御部間の通信が確立された場合に、その旨を示す通知(以下、系間通信有効通知と称する)を接続順位が上位の制御部に発する。例えば、1系制御部40−3の接続状態通知部44は、1系制御部40−3と0系制御部20−3との間の通信が確立された場合に、上位装置である1系制御部40−2に対して系間通信有効通知を発する。
【0134】
また、接続状態通知部44は、通知受信部42が下位装置から系間通信有効通知を受信したときに、通信確立部46によって自ユニット内の制御部間の通信が確立されていない場合には、当該受信した系間通信有効通知を上位装置に中継する。例えば、1系制御部40−2の接続状態通知部44は、1系制御部40−2の通知受信部42が下位装置の1系制御部40−3から系間通信有効通知を受信したときに、1系制御部40−2と0系制御部20−2との間の通信が確立されていない場合には、当該受信した系間通信有効通知を上位装置である1系制御部40−1に中継する。
【0135】
また、接続状態通知部44は、通知受信部42が下位装置から系間通信有効通知を受信したときに、通信確立部46によって自ユニット内の制御部間の通信が既に確立されており且つ他系制御部から系間通信有効通知を未だ受信していない場合には、当該受信した系間通信有効通知を他系制御部に中継する。例えば、1系制御部40−2の接続状態通知部44は、1系制御部40−2の通知受信部42が下位装置の1系制御部40−3から系間通信有効通知を受信したときに、1系制御部40−2と0系制御部20−2との間の通信が確立されており且つ0系制御部20−2から系間通信有効通知を未だ受信していない場合には、当該受信した系間通信有効通知を他系制御部である0系制御部20−2に中継する。なお、接続状態通知部44は、通知受信部42が他系制御部から系間通信有効通知を既に受信している場合には、当該他系制御部に対して系間通信有効通知を行わない。
【0136】
命令部45は、通知受信部42が下位装置及び他系制御部の各々から系間通信有効通知を受信した場合に、制御対象スイッチに対して中継抑制有効命令5を発する。例えば、1系制御部40−1の命令部45は、1系制御部40−1の通知受信部42が下位装置の1系制御部40−2及び他系制御部の0系制御部20−1の各々から系間通信有効通知を受信した場合に、制御対象スイッチである1系スイッチ30−1に対して中継抑制有効命令5を発する。
【0137】
接続状態保持部21、通知受信部22、状態更新部23、接続状態通知部24、命令部25、及び通信確立部26も、接続状態保持部41、通知受信部42、状態更新部43、接続状態通知部44、命令部45、及び通信確立部46と同様の動作を行なう。
【0138】
図58には、中継システム100における障害復旧箇所、障害発生箇所、中継抑制有効箇所、及び系間通信有効通知のフローが示されている。系間通信有効通知のフローは破線の矢印によって示されている。
【0139】
1系制御部40−3の接続状態通知部44は、1系制御部40−3と0系制御部20−3との間の通信が確立された場合すなわち障害から復旧した場合に、上位装置である1系制御部40−2に対して系間通信有効通知を発する。同様に、0系制御部20−3の接続状態通知部24も、上位装置である0系制御部20−2に対して系間通信有効通知を発する。
【0140】
1系制御部40−2の接続状態通知部44は、通知受信部42が下位装置の1系制御部40−3から系間通信有効通知を受信したときには、1系制御部40−2と0系制御部20−2との間の通信が確立されていないすなわち中継路61−2に通信障害が発生しているので、当該受信した系間通信有効通知を上位装置である1系制御部40−1に中継する。同様に、0系制御部20−2の接続状態通知部24も、上位装置である0系制御部20−1に対して系間通信有効通知を中継する。
【0141】
0系制御部20−1の接続状態通知部24は、0系制御部20−1の通知受信部22が下位装置の0系制御部20−2から系間通信有効通知を受信したときには、0系制御部20−1と1系制御部40−1との間の通信が確立されており且つ1系制御部40−1から系間通信有効通知を未だ受信していないので、当該受信した系間通信有効通知を他系制御部である1系制御部40−1に中継する。1系制御部40−1の接続状態通知部44は、他系制御部である0系制御部20−1から系間通信有効通知を既に受信しているので、当該受信した系間通信有効通知を0系制御部20−1に中継しない。
【0142】
1系制御部40−1の命令部45は、1系制御部40−1の通知受信部42が下位装置の1系制御部40−2及び他系制御部の0系制御部20−1の各々から系間通信有効通知を受信した場合に、制御対象スイッチである1系スイッチ30−1に対して中継抑制有効命令5を発する。なお、0系制御部20−1の命令部45は、他系制御部である1系制御部40−1から系間通信有効通知を受信していないので、下位装置である0系制御部20−1から受信した系間通信有効通知を1系制御部40−1に中継しない。
【0143】
1系スイッチ30−1は、1系制御部40−1の命令部45からの命令5に応じて、例えばユーザトラフィックのフレームなどの特定フレームについては、対向スイッチである1系スイッチ30−2には中継しない。
【0144】
かかる動作により、中継ユニット1−1、1−2及び1−3が3段接続された場合にも、フレーム中継路の冗長性を保ちつつ、フレームが中継路61−1、61−2、61−3、62及び63をループすることを回避することができることがわかる。
【0145】
以下、上記した中継抑制を無効とする場合の動作について説明する。
【0146】
接続状態通知部24は、制御対象スイッチとその対向スイッチとの間に通信障害が発生したことを検出した旨の障害検出通知を当該制御対象スイッチの障害検出部14から受信したときに上位装置に対して系間通信無効通知を発する。例えば、0系制御部20−2の接続状態通知部24は、制御対象スイッチである0系スイッチ10−2とその対向スイッチである1系スイッチ30−2との間に通信障害が発生したことを検出した旨の障害検出通知を0系スイッチ10−2の障害検出部14から受信したときに上位装置である0系制御部20−1に対して系間通信無効通知を発する。
【0147】
また、接続状態通知部24は、通知受信部22が下位装置から系間通信無効通知を受信したときに、通信確立部26によって自ユニット内の制御部間の通信が確立されていない場合には、当該受信した系間通信無効通知を上位装置に中継する。例えば、0系制御部20−2の接続状態通知部24は、0系制御部20−2の通知受信部22が下位装置の0系制御部20−3から系間通信無効通知を受信したときに、0系制御部20−2と1系制御部40−2との間の通信が確立されていない場合には、当該受信した系間通信無効通知を上位装置である0系制御部20−1に中継する。
【0148】
また、接続状態通知部24は、通知受信部22が下位装置から系間通信無効通知を受信したときに、通信確立部26によって自ユニット内の制御部間の通信が既に確立されている場合には、当該受信した系間通信無効通知を他系制御部に中継する。例えば、0系制御部20−2の接続状態通知部24は、0系制御部20−2の通知受信部22が下位装置の0系制御部20−3から系間通信無効通知を受信したときに、0系制御部20−2と1系制御部40−2との間の通信が確立されている場合には、当該受信した系間通信無効通知を他系制御部である1系制御部40−2に中継する。
【0149】
命令部25は、制御対象スイッチに対して命令5を発している場合において、通知受信部42が他系装置から系間通信無効通知を受信したときには、当該制御対象スイッチに対して中継抑制無効命令6を発する。例えば、1系制御部40−1の命令部25は、制御対象スイッチである1系スイッチ30−1に対して命令5を発している場合において、1系制御部40−1の通知受信部42が他系装置である0系制御部20−1から系間通信無効通知を受信したときには、1系スイッチ30−1に対して中継抑制無効命令6を発する。
【0150】
接続状態保持部41、通知受信部42、状態更新部43、接続状態通知部44、命令部45、及び通信確立部46も、接続状態保持部21、通知受信部22、状態更新部23、接続状態通知部24、命令部25、及び通信確立部26と同様の動作を行なう。
【0151】
図59には、中継システム100における障害発生箇所、中継抑制無効箇所、及び系間通信無効通知のフローが示されている。系間通信無効通知のフローは破線の矢印によって示されている。
【0152】
0系制御部20−2の接続状態通知部24は、制御対象スイッチである0系スイッチ10−2とその対向スイッチである1系スイッチ30−2との間に通信障害が発生したことを検出した旨の障害検出通知を0系スイッチ10−2の障害検出部14から受信したときに上位装置である0系制御部20−1に対して系間通信無効通知を発する。
【0153】
0系制御部20−1の接続状態通知部24は、0系制御部20−1の通知受信部22が下位装置の0系制御部20−2から系間通信無効通知を受信したときに、0系制御部20−1と1系制御部40−1との間の通信が確立されている場合には、当該受信した系間通信無効通知を他系制御部である1系制御部40−1に中継する。
【0154】
1系制御部40−1の命令部25は、制御対象スイッチである1系スイッチ30−1に対して命令5を発しているので、1系制御部40−1の通知受信部42が他系装置の0系制御部20−1から系間通信無効通知を受信したときに、1系スイッチ30−1に対して中継抑制無効命令6を発する。
【0155】
1系スイッチ30−1は、1系制御部40−1の命令部45からの命令6に応じて、これ以降に到来した特定フレームを対向スイッチである1系スイッチ30−2に中継することができる。
【0156】
かかる動作により、中継ユニット1−1、1−2及び1−3が3段接続された場合にも、通信障害から復旧した場合には、制御対象スイッチに対して中継抑制を無効とする命令を発して特定フレームの中継を再開できるようにするので、フレームが中継路61−1、61−2、61−3、62及び63をループすることを回避しつつ、フレームの中継路を有効活用することができる。
【0157】
また、上記の実施例は、中継ユニット1−1、1−2及び1−3を3段接続した場合の例であるが、4つ以上の多段接続とした場合にも、同様の効果を奏する。例として中継ユニットを4段接続したときの特定フレーム中継抑制時における1系スイッチ30−1からのフレーム中継フローを図60に示す。また、中継ユニットを4段接続したときの特定フレーム中継抑制時における0系スイッチ10−1からのフレーム中継フローを図61に示す。このような中継フローにより、中継ユニットが多段接続された場合にも、フレーム中継路の冗長性を保ちつつ、中継路におけるフレームのループを回避することができる。
【0158】
第1及び第2の実施例に説明したように、本発明の中継ユニットにおいては、各制御部は、自身の接続状態保持部21又は41が保持している接続段数に応じて、制御対象スイッチの中継動作の制御態様について、第1の実施例及び第2の実施例に示されるいずれかの制御態様を選択して実行することができる。また、第2の実施例に説明したように、接続順位が下位の中継ユニットから上位の中継ユニットに対して系間通信有効通知を発し、上位の中継ユニットは障害状況に応じてこれを更に上位に中継するといったように接続順位に応じても中継動作の制御態様を選択することができる。
【符号の説明】
【0159】
1−1、1−2、1−3 中継ユニット
10−1、10−2 0系スイッチ
11 中継部
12 経路情報テーブル
13 経路情報更新部
14 障害検出部
20−1、20−2 0系制御部
21 接続状態保持部
22 通知受信部
23 状態更新部
24 接続状態通知部
25 命令部
26 通信確立部
30−1、30−2 1系スイッチ
31 中継部
32 経路情報テーブル
33 経路情報更新部
34 障害検出部
40−1、40−2 1系制御部
41 接続状態保持部
42 通知受信部
43 状態更新部
44 接続状態通知部
45 命令部
46 通信確立部
51−1〜51−n、52−1〜52−m ホスト端末
61−1、61−2、62、63 中継路
64−1、64−2、65−1、65−2 通信路
100 中継システム
【技術分野】
【0001】
本発明は、フレームを中継する2系統のスイッチを各々が含み、多段に縦列接続されてLANを形成する中継ユニットに関する。
【背景技術】
【0002】
従来より、例えばレイヤ2ネットワークなどの通信網においては、フレーム中継に関して冗長性を持たせるために複数のスイッチをリング状又はメッシュ状に相互接続する構成が採用されている。かかる構成を単に採用した場合、フレームがスイッチ間でループし続けてしまうことが知られている。フレームの無限ループを回避するための技術としては、例えばスパニングツリー技術が知られている。当該技術においては、スイッチ間で相互に交換し合ったIDに基づいてルートとなるスイッチを決定し、ルートスイッチからのパスコストに基づいて無効にするポートを決定することにより、ループの無いツリー構造を形成している。また、例えば特許文献1にもループ回避のための技術が開示されている。特許文献1には、スイッチがリング状に構成され、当該スイッチのうちの1つであるマスタ装置がループを検出したときに特定ポートを用いた中継をブロッキングすることにより、フレームのループを回避しようとする技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−174119号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、スパニングツリーにおいては1つのスイッチをルートとするツリー構造を形成するので、フレーム中継をブロッキングする箇所が固定化され、障害発生時の中継ルートの切り替えを柔軟に行なえない懼れがあり、各スイッチ間に形成され得る中継路を効率的に活用できないという問題も考えられる。また、特許文献1においては、マスタ装置を起点としてループを検出してマスタ装置が特定ポートによる中継をブロッキングするので、やはり同様の問題がある。また、これらの技術においては、スイッチを含む中継ユニットを多段に縦列接続する場合に、その接続段数に応じて中継ルートの切り替え態様を柔軟に変更できないと考えられる。
【0005】
本発明は上記した如き問題点に鑑みてなされたものであって、柔軟に接続段数を増減できるようにネットワークを形成可能とし、各スイッチ間に形成され得る中継路を効率的に活用することができる中継ユニットを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明による中継ユニットは、フレームを中継するためのメイン系及びサブ系ラインと前記メイン系及びサブ系ライン間を接続する系間ラインを含み且つ多段に縦列接続され得てLANを形成する中継ユニットであって、前記系間ラインを介して互いに接続され且つ前記メイン系及びサブ系ラインにそれぞれ接続され前記フレームを各々が中継するメイン系及びサブ系スイッチと、前記メイン系及びスイッチの各々の中継動作を制御する制御部と、を含み、前記制御部は、前記LANにおける中継ユニットの接続段数の情報及び自身の属する中継ユニットの接続順位の情報を保持可能であって、前記メイン系及びサブ系スイッチの少なくとも一方の中継動作の制御態様を前記接続段数及び前記接続順位に応じて選択することを特徴とする。
【発明の効果】
【0007】
本発明による中継ユニットによれば、柔軟に接続段数を増減できるようにネットワークを形成可能とし、各スイッチ間に形成され得る中継路を効率的に活用することができる。
【図面の簡単な説明】
【0008】
【図1】本発明の第1の実施例である中継システムの構成を示すブロック図である。
【図2】図1の0系スイッチの構成を示すブロック図である。
【図3】図2の経路情報テーブルの一例を示す図である。
【図4】図1の1系スイッチの構成を示すブロック図である。
【図5】図1の0系制御部の構成を示すブロック図である。
【図6】図1の1系制御部の構成を示すブロック図である。
【図7】図5及び図6の接続状態保持部が保持し得る接続状態を示す図である。
【図8】図7の接続状態が「完全状態」のときの通信状態を矢印で示す図である。
【図9】図7の接続状態が「他系ユニット間障害」及び「自系ユニット間障害」のときの通信状態を矢印で示す図である。
【図10】図7の接続状態が「自ユニット内障害」及び「対向ユニット内障害」のときの通信状態を矢印で示す図である。
【図11】図7の接続状態が「ユニット間2重障害」のときの接続状態を矢印で示す図である。
【図12】図7の接続状態が「1重化状態」のときの通信状態を矢印で示す図である。
【図13】図7の接続状態が「他系ユニット間+対向ユニット内障害」の状態を含むときの通信状態を矢印で示す図である。
【図14】図1の制御部間で通知される情報の一覧を示す図である。
【図15】図1の各制御部から制御対象スイッチに対して発することができる命令の一覧を示す図である。
【図16】他系制御部との間の初期通信確立処理ルーチンを示すフローチャートである。
【図17】他系制御部との間の初期通信確立処理時における両系の制御部及びスイッチの動作を示すシーケンス図である。
【図18】他系制御部との間の初期通信確立処理時における接続状態の遷移表を示す図である。
【図19】中継制御適用判定処理ルーチンを示すフローチャートである。
【図20】対向制御部との間の初期通信確立処理ルーチンを示すフローチャートである。
【図21】対向制御部との間の初期通信確立処理時における両系の制御部及びスイッチの動作を示すシーケンス図である。
【図22】ユニット間通信確立通知受信時処理ルーチンを示すフローチャートである。
【図23】ユニット間通信確立通知受信時における接続状態の遷移表を示す図である。
【図24】対向制御部との間の初期通信確立処理時における接続状態の遷移表を示す図である。
【図25】特定フレーム中継抑制時における1系スイッチからのフレーム中継フローを示す図である。
【図26】特定フレーム中継抑制時における0系スイッチからのフレーム中継フローを示す図である。
【図27】ユニット間障害検出時処理ルーチンを示すフローチャートである。
【図28】ユニット間障害検出時における接続状態の遷移表を示す図である。
【図29】自ユニット内障害検出時処理ルーチンを示すフローチャートである。
【図30】自ユニット内障害検出時における接続状態の遷移表を示す図である。
【図31】ユニット間障害発生通知受信時処理ルーチンを示すフローチャートである。
【図32】ユニット間障害発生通知受信時における接続状態の遷移表を示す図である。
【図33】ユニット内障害発生通知受信時処理ルーチンを示すフローチャートである。
【図34】ユニット内障害発生通知受信時における接続状態の遷移表を示す図である。
【図35】ユニット内通信確立通知受信時処理ルーチンを示すフローチャートである。
【図36】ユニット内通信確立通知受信時における接続状態の遷移表を示す図である。
【図37】障害がない状況でのユニット内障害発生時の動作フローを示す図である。
【図38】障害がない状況でのユニット間障害発生時の動作フローを示す図である。
【図39】ユニット内障害が復旧し、ユニット間障害から復旧する場合の動作フローを示す図である。
【図40】ユニット間障害復旧し、ユニット間障害から復旧する場合の動作フローを示す図である。
【図41】両系のユニット間で障害が発生した場合の動作フローを示す図である。
【図42】両系のユニット間障害状態から片系側において障害復旧した場合の動作フローを示す図である。
【図43】両ユニットのユニット内で障害発生した場合の動作フローを示す図である。
【図44】両ユニットのユニット内障害から片ユニットにおいて障害復旧した場合の動作フローを示す図である。
【図45】片ユニットでのユニット内障害中にユニット間障害が発生した場合の動作フローを示す図である。
【図46】ユニット内障害中+ユニット間障害中にユニット間障害から復旧した場合の動作フローを示す図である。
【図47】ユニット間障害中にユニット内障害が発生した場合の動作フローを示す図である。
【図48】ユニット内障害中+ユニット間障害中にユニット内障害から復旧した場合の動作フローを示す図である。
【図49】両系ともユニット間2重障害の場合にユニット内障害が発生した場合の動作フローを示す図である。
【図50】両系ともに独立状態であるユニット内において障害から復旧した場合の動作フローを示す図である。
【図51】両ユニットともに1重化状態であるユニット間において障害が発生した場合の動作フローを示す図である。
【図52】両ユニットともに独立状態であるユニット間において障害から復旧した場合の動作フローを示す図である。
【図53】片ユニットのユニット内障害+対向ユニット間障害中に別ユニットのユニット内障害が発生した場合の動作フローを示す図である。
【図54】両ユニットのユニット内障害+片系ユニット間障害中に片ユニットのユニット内障害から復旧した場合の動作フローを示す図である。
【図55】片方のユニットのユニット内障害、及び、片系側のユニット間障害時に、他系においてユニット間障害が発生した場合の動作フローを示す図である。
【図56】片方のユニットのユニット内障害、及び、両系のユニット間障害時に、片系ユニット間で障害から復旧した場合の動作フローを示す図である。
【図57】本発明の第2の実施例である中継システムの構成を示すブロック図である。
【図58】図57の中継システムにおける障害復旧箇所、障害発生箇所、中継抑制有効箇所、及び系間通信有効通知のフローを示す図である。
【図59】図57の中継システムにおける障害発生箇所、中継抑制無効箇所、及び系間通信無効通知のフローを示す図である。
【図60】中継ユニットを4段接続したときの特定フレーム中継抑制時における1系スイッチからのフレーム中継フローを示す図である。
【図61】中継ユニットを4段接続したときの特定フレーム中継抑制時における0系スイッチからのフレーム中継フローを示す図である。
【発明を実施するための形態】
【0009】
以下、本発明に係る実施例について添付の図面を参照しつつ詳細に説明する。
【0010】
<第1の実施例>
図1には、本発明の実施例である中継システム100の構成が示されている。中継システム100は、ホスト端末51−1〜51−n(nは2以上の整数)とホスト端末52−1〜52−m(mは2以上の整数)との間でフレームを中継する中継ユニット1−1及び1−2を含む。中継ユニット1−1と中継ユニット1−2とが中経路62及び63を介して縦列に接続されてLAN(Local Area Network)を形成している。
【0011】
中継ユニット1−1は、フレーム中継経路冗長化のために二重化された0系スイッチ10−1及び1系スイッチ30−1と、0系スイッチ10−1を制御する0系制御部20−1及び1系スイッチ30−1を制御する1系制御部40−1と、を含む。同様に、中継ユニット1−2は、フレーム中継経路冗長化のために二重化された0系スイッチ10−2及び1系スイッチ30−2と、0系スイッチ10−2を制御する0系制御部20−2及び1系スイッチ30−2を制御する1系制御部40−2と、を含む。以下、0系スイッチ10−1及び10−2をメイン系スイッチとも称し、1系スイッチ30−1及び30−2をサブ系スイッチとも称する。
【0012】
ホスト端末51−1〜51−nの各々は、0系スイッチ10−1及び1系スイッチ30−1のうちの現用系として選択されている一方のスイッチとの間でフレームを送受信できる。同様に、ホスト端末52−1〜52−mの各々は、0系スイッチ10−2及び1系スイッチ30−2のうちの現用系として選択されている一方のスイッチとの間でフレームを送受信できる。これらのホスト端末は、例えばパーソナルコンピュータなどの通信機能を備えた端末である。
【0013】
0系スイッチ10−1と1系スイッチ30−1とは、中継ユニット1−1内において中継路61−1を介して相互にフレームを中継できる。同様に、0系スイッチ10−2と1系スイッチ30−2とは、中継ユニット1−2内において中継路61−2を介して相互にフレームを中継できる。また、0系スイッチ10−1と0系スイッチ10−2とは、中継路62を介してユニット間で相互にフレームを中継できる。同様に、1系スイッチ30−1と1系スイッチ30−2とは、中継路63を介してユニット間で相互にフレームを中継できる。これらのスイッチは、例えばレイヤ2スイッチ(L2SW)である。以下、中継路62及び中継路63をそれぞれメイン系ライン及びサブ系ラインとも称する。また、中継路61−1及び61−2の各々を系間ラインとも称する。
【0014】
0系制御部20−1は、通信路64−1を介して0系スイッチ10−1に各種の命令を発して制御することができる。1系制御部40−1は、通信路65−1を介して1系スイッチ30−1に各種の命令を発して制御することができる。同様に、0系制御部20−2は、通信路64−2を介して0系スイッチ10−2に各種の命令を発して制御することができる。1系制御部40−2は、通信路65−2を介して1系スイッチ30−2に各種の命令を発して制御することができる。
【0015】
0系制御部20−1と1系制御部40−1とは、通信路64−1、中継路61−1及び通信路65−1を介して相互にユニット内通信を確立することができる。同様に、0系制御部20−2と1系制御部40−2とは、通信路64−2、中継路61−2及び通信路65−2を介して相互にユニット内通信を確立することができる。また、0系制御部20−1と0系制御部20−2とは、通信路64−1、中継路62及び通信路64−2を介して相互にユニット間通信を確立することができる。同様に、1系制御部30−1と1系制御部30−2とは、通信路65−1、中継路63及び通信路65−2を介して相互にユニット間通信を確立することができる。これらの制御部は、例えば、所定の通信制御プログラムを実行するCPUである。
【0016】
図2には、0系スイッチ10−1の構成が示されている。
【0017】
中継部11は、自ユニットである中継ユニット1−1内の0系制御部20−1、自ユニット内の1系スイッチ30−1、及び次順位ユニットである中継ユニット1−2の0系スイッチ10−2との間で各種フレームの中継を行なう。本実施例においては、中継ユニット1−1及び1−2の2つの中継ユニットのみを含むので、中継ユニット1−1を主体とした場合に中継ユニット1−2を対向ユニットとも称する。
中継部11は、到来したフレームの送信元アドレスが経路情報テーブル12に記憶されている場合には、当該送信元アドレスに対応する中継路にフレームを送出する。中継部11は、送信元アドレスが経路情報テーブル12に記憶されていない場合には、当該フレームの属するVLANに対応する全ての中継路に当該フレームを中継する。また、中継部11は、0系制御部20−1からの中継許可、中継禁止、中継抑制有効、中継抑制無効の命令に応じて、特定のトラフィックについてのフレームの中継を開始、停止、抑制、再開する。これらの命令は、通信路64−1を介してフレームにより通知される。
【0018】
図3には、経路情報テーブル12の一例が示されている。「宛先」は、中継先のMACアドレスである。「仮想グループ」は、仮想ネットワークすなわちVLANのグループである。当該グループは、例えば、ユーザフレームを中継するためのグループ(以下、VLAN_Aと称する)、同一ユニット内の制御部間で制御フレームを中継するためのグループ(以下、VLAN_Bと称する)、対向ユニットの制御部間で制御フレームを中継するためのグループ(以下、VLAN_Cと称する)である。
【0019】
同一ユニット内の中継路61−1及び61−2は、トランクラインとしてVLAN_A及びVLAN_Bの両方に属し、互いのVLANのフレームが交わらないように仮想的にトラフィックがVLAN_AとVLAN_Bとに分離されている。
【0020】
対向ユニット間の中継路62及び63は、トランクラインとしてVLAN_A及びVLAN_Cの両方に属し、互いのVLANのフレームが交わらないように仮想的にトラフィックがVLAN_AとVLAN_Cとに分離されている。
【0021】
各スイッチ−制御部間の通信路64−1、64−2、65−1及び65−2は、トランクラインとしてVLAN_B及びVLAN_Cの両方に属し、互いのVLANのフレームが交わらないように仮想的にトラフィックがVLAN_BとVLAN_Cとに分離されている。
【0022】
「送出経路」は、フレームの中継先を示している。図3では、例として中継路61−1及び中継路62が示されている。送出経路の各々はポートと1対1で対応している。中継部11は、到来したフレームの送信元MACアドレスに対応する送出経路に当該フレームを送出する。
【0023】
経路情報更新部13は、中継部11に到来したフレームに含まれる送信元MACアドレスが経路情報テーブル12に記憶されていないときは、当該送信元MACアドレスと送出経路とを対応付けて経路情報テーブル12に記憶させる。また、経路情報更新部13は、0系制御部20−1からの1つのMACアドレス削除指令に応じて、経路情報テーブル12内の当該MACアドレスを削除する。
【0024】
障害検出部14は、中継部11により中継されるフレームの監視や、中継部11に接続されている通信路の状態を監視してトラフィック障害を検出する。障害の検出は、例えばCisco Systems社製スイッチのキープアライブ機能により実行されることができる。障害検出部14は、障害を検出した場合には、障害検出通知を0系制御部20−1に発する。この際、障害検出部14は、障害が発生した中継路(例えば中継路61−1や62)も併せて0系制御部20−1に通知する。
【0025】
0系スイッチ10−2も、0系スイッチ10−1と同様の構成である。
【0026】
図4には、1系スイッチ30−1の構成が示されている。
【0027】
中継部31は、自ユニットである中継ユニット1−1内の0系制御部40−1、自ユニット内の0系スイッチ10−1、及び次順位(対向)ユニットである中継ユニット1−2の1系スイッチ30−2との間で各種フレームの中継を行なう。中継部31は、到来したフレームの送信元アドレスが経路情報テーブル32に記憶されている場合には、当該送信元アドレスに対応する中継路にフレームを送出する。中継部31は、送信元アドレスが経路情報テーブル32に記憶されていない場合には、当該フレームの属するVLANに対応する全ての中継路に当該フレームを中継する。また、中継部31は、0系制御部40−1からの中継許可、中継禁止、中継抑制有効、中継抑制無効の命令に応じて、特定のトラフィックについてのフレームの中継を開始、停止、抑制、再開する。これらの命令は、通信路65−1を介してフレームにより通知される。経路情報テーブル32は、図4に示されるものと同様である。
【0028】
経路情報更新部33は、中継部31に到来したフレームに含まれる送信元MACアドレスが経路情報テーブル32に記憶されていないときは、当該送信元MACアドレスと送出経路とを対応付けて経路情報テーブル32に記憶させる。また、経路情報更新部33は、1系制御部40−1からの1つのMACアドレス削除指令に応じて、経路情報テーブル32内の当該MACアドレスを削除する。
【0029】
障害検出部34は、中継部31により中継されるパケットの監視や、中継部31に接続されている通信路の状態を監視してトラフィック障害を検出する。障害の検出は、例えばCisco Systems社製スイッチのキープアライブ機能により実行されることができる。障害検出部34は、障害を検出した場合には、障害検出通知を1系制御部40−1に発する。この際、障害検出部34は、障害が発生した中継路(例えば中継路61−1や63)も併せて1系制御部40−1に通知する。
【0030】
1系スイッチ30−2も、1系スイッチ30−1と同様の構成である。
【0031】
図5には、0系制御部20−1の構成が示されている。0系制御部20−1は、0系スイッチ10−1を制御対象スイッチとする。
【0032】
接続状態保持部21は、各スイッチ及び各制御部相互間の接続状態を示すデータを保持している。接続状態は、状態更新部23によって更新され得る。接続状態の詳細については後述する(図7を参照)。また、接続状態保持部21は、中継ユニット1−1及び1−2の接続段数(N)、及び自ユニットである中継ユニット1−1の接続順位(P)についても保持することができる。本実施例においては、接続段数は「2」である。また、中継ユニット1−1の接続順位は例えば「1」であり、中継ユニット1−2の接続順位は例えば「2」である。接続状態保持部21は、例えばRAMやハードディスク等の記憶装置であり、接続段数及び接続順位はこれらの記憶装置に保持され、書き換え自在である。
【0033】
通知受信部22は、0系スイッチ10−1からの障害検出通知、及び自ユニット内の1系制御部40−1又は対向ユニットの0系制御部20−2から接続状態通知、通信確立通知及び障害発生通知を受信する。
【0034】
状態更新部23は、上記通知の内容に応じて接続状態保持部21の接続状態を更新する。更新の内容については後述する(図18、図22、図26、図28、図30、図32、図34及び図36を参照)。
【0035】
接続状態通知部24は、接続状態保持部21に保持されている接続状態を、自ユニット内の1系制御部40−1及び/又は対向ユニットの0系制御部20−2に対して通知する。また、接続状態通知部24は、1系制御部40−1及び/又は0系制御部20−2に対して、通信確立通知及び障害発生通知を発することもできる。
【0036】
命令部25は、接続状態保持部21に保持されている接続状態に基づいて、制御対象スイッチである0系スイッチ10−1に対して各種の命令を発することによりこれを制御する。命令の詳細については後述する(図14)。
【0037】
通信確立部26は、1系制御部40−1及び0系制御部20−2との間で通信を確立する。
【0038】
通知受信部22、状態更新部23、接続状態通知部24及び命令部25は、接続状態保持部21に保持されている接続段数を参照してその接続段数が「2」である場合に本実施例の動作を行なう。
【0039】
0系制御部20−2も、0系制御部20−1と同様の構成である。0系制御部20−2は、0系スイッチ10−2を制御対象スイッチとする。
【0040】
図6には、1系制御部40−1の構成が示されている。1系制御部40−1は、1系スイッチ30−1を制御対象スイッチとする。
【0041】
接続状態保持部41は、各スイッチ及び各制御部相互間の接続状態を示すデータを保持している。接続状態は、状態更新部43によって更新され得る。接続状態の詳細については後述する(図7を参照)。
【0042】
通知受信部42は、1系スイッチ30−1からの障害検出通知、及び自ユニット内の0系制御部20−1又は対向ユニットの1系制御部40−2から接続状態通知、通信確立通知及び障害発生通知を受信する。
【0043】
状態更新部43は、上記通知の内容に応じて接続状態保持部41の接続状態を更新する。更新の内容については後述する(図18、図22、図26、図28、図30、図32、図34及び図36を参照)。
【0044】
接続状態通知部44は、接続状態保持部41に保持されている接続状態を、自ユニット内の0系制御部20−1及び/又は対向ユニットの1系制御部40−2に対して通知する。また、接続状態通知部44は、0系制御部20−1及び/又は1系制御部40−2に対して、通信確立通知及び障害発生通知を発することもできる。
【0045】
命令部45は、接続状態保持部41に保持されている接続状態に基づいて、制御対象スイッチである1系スイッチ30−1に対して各種の命令を発することによりこれを制御する。命令の詳細については後述する(図14)。
【0046】
通信確立部46は、0系制御部20−1及び1系制御部40−2との間で通信を確立する。
【0047】
1系制御部40−2も、1系制御部40−1と同様の構成である。1系制御部40−2は、1系スイッチ30−2を制御対象スイッチとする。
【0048】
図7には、接続状態保持部21及び41が保持し得る接続状態が示されている。以下、動作の主体となっている制御部を自制御部と称する。また、動作の主体となっている制御部の系列を自系、他方の系列を他系とそれぞれ称する。また、自制御部と同一の中継ユニット内に存在する他系の制御部を他系制御部と称する。また、自制御部を含む中継ユニットを自ユニットと称する。また、自ユニットに対向する中継ユニットを対向ユニットと称する。また、対向ユニットに含まれる2つの制御部を、対応する系列に応じてそれぞれ自制御部又は他系制御部についての対向制御部と称する。また、自制御部が制御対象としているスイッチを制御対象スイッチと称する。また、他系制御部が制御対象としているスイッチを他系スイッチと称する。また、対向ユニットに含まれる2つのスイッチを、対応する系列に応じてそれぞれ制御対象スイッチ又は他系スイッチについての対向スイッチと称する。
【0049】
「独立状態」は、自制御部と自ユニット内の他系制御部との間の通信を確立できない状態、且つ自制御部とその対向制御部との間の通信を確立できない状態である。また、「独立状態」は、制御部の初期状態である。
【0050】
「完全状態」は、自ユニット内、対向ユニット内、及び自ユニットと対向ユニットとの間で障害が発生していない状態である。換言すれば、制御部の各々が相互に通信可能な状態である。図8には「完全状態」のときの接続状態が矢印により示されている。
【0051】
「他系ユニット間障害」は、自制御部と自ユニット内の他系制御部との間、及び自制御部と対向制御部との間は通信が確立できているが、自ユニット内の他系スイッチとその対向スイッチとの間で障害が発生している状態である。図9には「他系ユニット間障害」のときの接続状態が矢印により示されている。
【0052】
「自系ユニット間障害」は、自制御部と自ユニット内の他系制御部との間、及び、自ユニット内の他系制御部とその対向制御部との間の通信は確立しているが、自制御部とその対向制御部との間で障害が発生している状態である。図9には「自系ユニット間障害」のときの接続状態が矢印により示されている。
【0053】
「対向ユニット内障害」は、自制御部と自ユニット内の他系制御部との間、自制御部とその対向制御部との間、及び、自ユニット内の他系制御部とその対向制御部との間の通信は確立できているが、対向ユニット内の両制御部間の通信が確立できない状態である。図10には「対向ユニット内障害」のときの接続状態が矢印により示されている。
【0054】
「自ユニット内障害」は、自制御部と自ユニット内の他系制御部との間の通信が確立できないが、自ユニット内の両制御部と対向ユニット内の両制御部間の通信は確立している状態である。図10には「自ユニット内障害」のときの接続状態が矢印により示されている。
【0055】
「ユニット間2重障害」は、自制御部と自ユニット内の他系制御部との間は通信が確立できているが、制御対象スイッチとその対向スイッチとの間、及び、自ユニット内の他系スイッチとその対向スイッチとの間で障害が発生している状態である。図11には「ユニット間2重障害」のときの接続状態が矢印により示されている。
【0056】
「1重化状態」は、自制御部とその対向制御部との間の通信は確立しているが、自制御部と自ユニット内の他系制御部との間、及び、対向ユニット内の両制御部間の通信が確立できない状態である。図12には「1重化状態」のときの接続状態が矢印により示されている。
【0057】
「対向ユニット+他系ユニット間障害」は、自制御部と自ユニット内の他系制御部との間、及び、自制御部とその対向制御部との間の通信は確立できているが、対向ユニット内の両制御部間の通信、及び、他系制御部とその対向制御部との間の通信が確立できていない状態である。図13には「他系ユニット間+対向ユニット内障害」の状態を含むときの接続状態が矢印により示されている。
【0058】
図14には、制御部間で相互に通知される情報の一覧を示す図である。これらの情報は、接続状態通知部24及び44によって通知される。
【0059】
「接続状態」は、接続状態保持部21及び41に保持されているデータであり、その内容は図13に示される状態のいずれか1つを示す。当該通知は、自ユニットである中継ユニット1−1内の他系制御部である1系制御部40−1、及び/又は対向制御部である0系制御部20−2に対して通知される。
【0060】
「ユニット間障害発生」は、制御対象スイッチによる対向スイッチとの間の通信障害検出、又は、対向制御部との間の通信障害検出についての通知である。当該通知は、自ユニット内の他系制御部に対して通知される。
【0061】
「ユニット間通信確立」は、対向制御部との間の通信確立についての通知である。当該通知は、自ユニット内の他系制御部に対して通知される。
【0062】
「ユニット内障害発生」は、制御対象スイッチによる他系スイッチとの間の通信障害検出、又は、自ユニット内の他系制御部との間の通信障害検出についての通知である。当該通知は、対向制御部に対して通知される。
【0063】
「ユニット内通信確立」は、自ユニット内の他系制御部との間の通信確立についての通知である。当該通知は、対向制御部に対して通知される。
【0064】
図15には、各制御部から制御対象スイッチに対して発することができる命令の一覧を示す図である。これらの命令は、命令部25及び45から発せられる。
【0065】
「命令1」は、他系スイッチ向けユーザトラフィックの中継を許可する命令(他系スイッチ向け中継許可命令)である。
【0066】
「命令2」は、対向スイッチ向けユーザトラフィックの中継を許可する命令(対向スイッチ向け中継許可命令)である。
【0067】
「命令3」は、他系制御部との通信切断後に通知する命令であり、他系スイッチ向けユーザトラフィックの中継を禁止する命令(他系スイッチ向け中継禁止命令)である。
【0068】
「命令4」は、対向制御部との通信切断後に通知する命令であり、対向スイッチ向けユーザトラフィックの中継を禁止する命令(対向スイッチ向け中継禁止命令)である。
【0069】
「命令5」は、他系スイッチから受信したユーザトラフィックを対向スイッチに中継する処理を抑制する命令(中継抑制有効命令)である。
【0070】
「命令6」は、他系スイッチから受信したユーザトラフィックを対向スイッチに中継する処理の抑制を解除する命令(中継抑制無効命令)である。
【0071】
「命令7」は、送出経路が対向スイッチに設定されているMACアドレスを経路制御テーブルから削除する命令(対向スイッチ向け経路削除命令)である。
【0072】
「命令8」は、送出経路が他系スイッチに設定されているMACアドレスを経路制御テーブルから削除する命令(他系スイッチ向け経路削除命令)である。
【0073】
以下、図16及び図17を参照しつつ、自制御部である0系制御部20−1が他系制御部である1系制御部40−1との間で初期通信確立するときの動作について説明する。0系制御部20−1は、1系制御部40−1との間で初期通信を確立できるまで当該フローを断続的に実行する。以下、0系制御部20−1の接続状態保持部21及び1系制御部40−1の接続状態保持部41の各々が初期接続状態として「独立状態」を保持している前提で説明する。また、0系制御部20−1を主体として各動作を記載する。
【0074】
先ず、通信確立部26が、1系制御部40−1の通信確立部46との間で通信確立を試みる(ステップS01、S101)。通信確立できなかった場合には当該フローを終了する。
【0075】
通信確立できた場合には、接続状態通知部24は、1系制御部40−1に接続状態を通知する。また、1系制御部40−1の接続状態通知部44からも、0系制御部20−1に接続状態を通知される(ステップS02、S102)。この際、互いに通知し合う接続状態は「独立状態」である。
【0076】
次に、接続状態通知部24は、対向制御部である0系制御部20−2との間で既に通信確立されていると判別した場合には(ステップS03)、0系制御部20−2にユニット内通信確立通知を行なう(ステップS04)。現時点においては接続状態が「独立状態」であり、0系制御部20−2との間では通信確立されていない。故に、接続状態通知部24はユニット内通信確立通知を発せず、ステップS05に移行する。
【0077】
次に、状態更新部23が、接続状態保持部21に保持されている接続状態と、1系制御部40−1から通知された接続状態とに基づいて接続状態保持部21の接続状態を更新する(ステップS05)。
【0078】
図18には、他系制御部との初期通信確立処理時における接続状態の遷移表が示されている。「自制御部接続状態」は自制御部(ここでは、0系制御部20−1)の現在接続状態を示している。「他系制御部接続状態」は他系制御部(ここでは、1系制御部40−1)から通知された接続状態を示している。更に、これら両状態によって定まる接続状態が遷移表中にマトリクス上に示されている。
【0079】
状態更新部23は、接続状態保持部21の接続状態をこの遷移表に従って更新する。詳細には、現時点における自制御部の現在接続状態は「独立状態」であり、且つ他制御部から通知された接続状態も「独立状態」であるので、状態更新部23は、接続状態保持部21の接続状態を「ユニット間2重障害」とする。
【0080】
次に、命令部25は、中継制御適用判定を行なう(ステップS06)。以下、図19を参照しつつ、中継制御適用判定処理の動作について説明する。命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS11)。現在の接続状態は「ユニット間2重障害」なので、命令部25は、中継抑制指令(ステップS12)を発せずに当該判定処理を終了する。
【0081】
次に、命令部25は、制御対象スイッチである0系スイッチ10−1に対して他系スイッチである1系スイッチ30−1への中継を許可する命令1を発する(ステップS07、S104)。0系スイッチ10−1は、命令1に応じて、これ以降到来したユーザトラフィックのフレームを1系スイッチ30−1に対して中継することができる。
【0082】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS08)。現在の接続状態は「ユニット間2重障害」なので、命令部25は、MACアドレスの削除命令7(ステップS09)を発せずに当該判定処理を終了する。
【0083】
なお、当該接続状態が「完全状態」である場合には、命令部25は、0系制御部20−1に対して命令7を発する。この場合、0系制御部20−1の経路情報更新部13は、命令7に応じて、送出経路が対向スイッチに設定されているMACアドレスを経路制御テーブルから削除する。0系スイッチ10−1は、これ以降、他系スイッチである1系スイッチ20−1から到来したフレームを、対向スイッチである0系スイッチ10−2には中継しない。また、中継部11は、その後到来したフレームのMACアドレスを「宛先」として経路制御テーブル12に追加することにより、新たなフレーム中継先を設定できる。
【0084】
以下、図20及び図21を参照しつつ、自制御部である0系制御部20−1が対向制御部である0系制御部20−2との間で初期通信確立するときの動作について説明する。0系制御部20−1は、0系制御部20−2との間で初期通信を確立できるまで当該フローを断続的に実行する。以下、0系制御部20−1の接続状態保持部21及び0系制御部20−2の接続状態保持部21の各々が接続状態として「ユニット間2重障害」を保持している前提で説明する。また、0系制御部20−1を主体として各動作を記載する。
【0085】
先ず、通信確立部26が、0系制御部20−2の通信確立部26との間で通信確立を試みる(ステップS21、S111)。通信確立できなかった場合には当該フローを終了する。通信確立できた場合には、ステップS22に移行する。
【0086】
接続状態通知部24は、他系制御部である1系制御部40−1との間で既に通信確立されているか判別する(ステップS22)。現段階においては0系制御部20−1と1系制御部40−1との間で通信確立されているので、接続状態通知部24は1系制御部40−1に対してユニット間通信確立通知を発する(ステップS23、S112)。
【0087】
また、1系制御部40−1の接続状態通知部44も、0系制御部20−1に対してユニット間通信確立通知を発する(ステップS112)。通知受信部22は、1系制御部40−1からの当該ユニット間通信確立通知を受信する(ステップS112)。
【0088】
以下、図22も併せて参照しつつ、0系制御部20−1を主体とした場合における、ユニット間通信確立通知受信時の動作について説明する。0系制御部20−1は、他系制御部である1系制御部40−1からのユニット間通信確立通知を受信したときに当該ルーチンを実行する。
【0089】
図23には、ユニット間通信確立通知受信時における接続状態の遷移表が示されている。「通知受信前の接続状態」は、ユニット間通信確立通知を受信する前の接続状態である。なお、0系制御部20−1における現時点の接続状態は「ユニット間2重障害」である。「通信受信後の接続状態」は、ユニット間通信確立通知を受信した後の接続状態すなわち更新後の接続状態である。
【0090】
先ず、状態更新部23は、図23の遷移表に従って接続状態保持部21に保持されている接続状態を更新する(ステップS31)。接続状態保持部21の接続状態は「ユニット間2重障害」であるので、状態更新部23は、当該接続状態を「自系ユニット間障害」とする(ステップS31)。
【0091】
次に、命令部25は、図19に示される中継制御適用判定を行なう(ステップS32)。命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS11)。現在の接続状態は「自系ユニット間障害」なので、命令部25は、中継抑制指令(ステップS12)を発せずに当該判定処理を終了する。
【0092】
続いて、接続状態通知部24は、0系制御部20−2に接続状態を通知する(ステップS24、S114)。また、0系制御部20−2の接続状態通知部24からも、0系制御部20−1に対して接続状態を通知する(ステップS114)。この際、互いに通知し合う接続状態は「自系ユニット間障害」である。
【0093】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態と、0系制御部20−2から通知された接続状態とに基づいて接続状態保持部21の接続状態を更新する(ステップS25)。
【0094】
図24には、対向制御部との初期通信確立処理時における接続状態の遷移表が示されている。状態更新部23は、接続状態保持部21の接続状態をこの遷移表に従って更新する。詳細には、現時点における自制御部の現在接続状態は「自系ユニット間障害」であり、且つ他制御部から通知された接続状態も「自系ユニット間障害」であるので、状態更新部23は、接続状態保持部21の接続状態を「完全状態」とする(ステップS115)。
【0095】
次に、命令部25は、図19に示される中継制御適用判定を行なう(ステップS26、S116)。命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS11)。現在の接続状態は「完全状態」なので、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、他系スイッチである1系スイッチ30−1から到来した特定フレームを、対向スイッチである0系スイッチ10−2に中継することを抑制する中継抑制有効命令5を発する(ステップS12、S117)。特定フレームは例えばユーザトラフィックのフレームである。0系スイッチ10−1は、命令5に応じて、これ以降1系スイッチ30−1から到来した特定フレームを0系スイッチ10−2には中継しない。なお、特定フレームが0系スイッチ10−2から到来したものであるか否かは、例えば、当該特定フレームが到来したポート番号により判別できる。
【0096】
次に、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、その対向スイッチである0系スイッチ10−2への一般フレームの中継を許可する命令2を発する(ステップS27、S118)。一般フレームは例えばユニット制御用フレームである。0系スイッチ10−1は、命令2に応じて、これ以降到来した一般フレームを0系スイッチ10−2に中継することができる。
【0097】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS28)。現在の接続状態は「完全状態」なので、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、送出経路が他系スイッチに指定されているMACエントリを経路制御テーブル12から削除する他系スイッチ向け経路削除命令8を発する。(ステップS29、S119)。
【0098】
上記動作により、0系スイッチ10−1は、接続状態が「完全状態」である場合に、特定フレームを対向スイッチである0系スイッチ10−2には中継しなくなる。かかる動作により、中継路61−1、61−2、62及び63によって形成されるリング状の中継路をフレームがループすることがなくなる。
【0099】
図16〜図24を参照しての上記説明においては、0系制御部20−1を中心に説明したが、図17及び図22に示されるように、0系制御部20−2、1系制御部40−1及び40−2についても0系制御部20−1と同様の動作を各々独立して行なう。
【0100】
図25には、上記処理によって各スイッチについて特定フレームの中継抑制がなされたときにおける、1系スイッチ30−1からのフレームの中継フローが矢印で示されている。1系スイッチ30−1は、例えば図1に示されるホスト端末51−1から到来したフレームを0系スイッチ10−1及び/又は1系スイッチ30−2に中継する。1系スイッチ30−2は、フレームを0系スイッチ10−2に中継する場合もある。
【0101】
0系スイッチ10−1は、0系制御部20−1からの中継抑制有効命令5に応じて、他系スイッチである1系スイッチ30−1から到来した特定フレームを、対向スイッチである0系スイッチ10−2には中継しない。同様に、0系スイッチ10−2も、0系制御部20−2からの中継抑制有効命令5に応じて、他系スイッチである1系スイッチ30−2から到来した特定フレームを、対向スイッチである0系スイッチ10−1には中継しない。かかる動作により、接続状態が「完全状態」である場合に、1系スイッチ30−1から送出されるフレームが中継路61−1、61−2、62及び63をループすることを防止できる。なお、1系スイッチ30−2からから送出されるフレームについても同様にループが防止される。
【0102】
図26には、上記処理によって各スイッチについて特定フレームの中継抑制がなされたときにおける、0系スイッチ10−1からのフレームの中継フローが矢印で示されている。0系スイッチ10−1は、例えば図1に示されるホスト端末51−1から到来したフレームを1系スイッチ30−1及び/又は0系スイッチ10−2に中継する。0系スイッチ10−2は、フレームを1系スイッチ30−2に中継する場合もある。
【0103】
1系スイッチ30−1は、1系制御部40−1からの中継抑制有効命令5に応じて、他系スイッチである0系スイッチ10−1から到来した特定フレームを、対向スイッチである1系スイッチ30−2には中継しない。同様に、1系スイッチ30−2も、1系制御部40−2からの中継抑制有効命令5に応じて、他系スイッチである1系スイッチ30−2から到来した特定フレームを、対向スイッチである1系スイッチ30−1には中継しない。かかる動作により、接続状態が「完全状態」である場合に、0系スイッチ10−1から送出されるフレームが中継路61−1、61−2、62及び63をループすることを防止できる。なお、0系スイッチ10−2からから送出されるフレームについても同様にループが防止される。
【0104】
このように、本実施例の中継システム100においては、スイッチ10−1、10−2、30−1及び30−2を制御する制御部20−1、20−2、40−1及び40−2がそれぞれ設けられている。これらの制御部は、自身が保持している接続状態を相互に通知し合い、自身が保持している接続状態と、他系又は対向の制御部から通知された接続状態とに基づいて所定の遷移表に従って自身の接続状態を更新する。そして、接続状態が「完全状態」すなわち何れの中継路にも障害が発生しておらずフレームがループし得る状態になったときに、制御対象スイッチがその対向スイッチに向けて特定のフレームを中継することを抑制する。かかる動作により、フレーム中継路の冗長性を保ちつつ、フレームが中継路をループすることを回避することができる。
【0105】
上記の例は、他系制御部との間の初期通信確立処理、及び対向制御部との間の初期通信確立処理を行う場合の例であるが、中継ユニット1−1及び1−2は以下の処理についても行なう。
【0106】
以下、図27を参照しつつ、0系制御部20−1を主体とした場合における、ユニット間障害検出時の動作について説明する。0系制御部20−1は、制御対象スイッチである0系スイッチ10−1の障害検出部14からのユニット間障害検出通知を受信したときに当該ルーチンを実行する。ユニット間障害検出通知は、障害検出部14が中継路62において障害発生を検出した場合に通知される。
【0107】
先ず、接続状態通知部24は、他系制御部である1系制御部40−1との間で既に通信確立されているか判別する(ステップS41)。通信確立されていない場合にはステップS43に移行する。通信確立されている場合には、接続状態通知部24は1系制御部40−1に対してユニット間障害の通知をする(ステップS42)。
【0108】
次に、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、その対向スイッチである0系スイッチ10−2への特定フレームの中継を禁止する命令4を発する(ステップS43)。0系スイッチ10−1は、命令4に応じて、これ以降到来した特定フレームを0系スイッチ10−2には中継しない。
【0109】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS44)。現在の接続状態が「完全状態」でない場合には、命令部25は、命令7及び命令6を発せず、ステップS47に移行する。現在の接続状態が「完全状態」である場合には、命令部25は、0系スイッチ10−1に対して、送出先が対向スイッチとなるMACアドレスを経路制御テーブル12から削除する命令7を発し(ステップS45)、0系スイッチ10−2への特定パケットの中継抑制の解除命令6を発する(ステップS46)。
【0110】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS47)。図28には、ユニット間障害検出時における接続状態の遷移表が示されている。「通信不可前の接続状態」は現時点の接続状態である。「通信不可後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「1重化状態」である場合、状態更新部23は、接続状態保持部21の接続状態を「独立状態」とする。
【0111】
以下、図29を参照しつつ、0系制御部20−1を主体とした場合における、自ユニット内障害検出時の動作について説明する。0系制御部20−1は、制御対象スイッチである0系スイッチ10−1の障害検出部14からの自ユニット内障害検出通知を受信したときに当該ルーチンを実行する。ユニット内障害検出通知は、障害検出部14が中継路61−1において障害発生を検出した場合に通知される。
【0112】
先ず、接続状態通知部24は、対向制御部である0系制御部20−2との間で既に通信確立されているか判別する(ステップS51)。通信確立されていない場合にはステップS53に移行する。通信確立されている場合には、接続状態通知部24は0系制御部20−2に対してユニット内障害の通知をする(ステップS52)。
【0113】
次に、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、その他系スイッチである1系スイッチ30−1への特定フレームの中継を禁止する命令3を発する(ステップS53)。0系スイッチ10−1は、命令4に応じて、これ以降到来した特定フレームを1系スイッチ30−1には中継しない。
【0114】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS54)。現在の接続状態が「完全状態」でない場合には、命令部25は、命令8及び命令6を発せず、ステップS57に移行する。現在の接続状態が「完全状態」である場合には、命令部25は、0系スイッチ10−1に対して、送出先が他系スイッチとなるMACアドレスを経路制御テーブル12から削除する命令8を発し(ステップS55)、0系スイッチ10−2への特定パケットの中継抑制の解除命令6を発する(ステップS56)。
【0115】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS57)。図30には、ユニット内障害検出時における接続状態の遷移表が示されている。「通信不可前の接続状態」は現時点の接続状態である。「通信不可後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「ユニット間2重障害」である場合、状態更新部23は、接続状態保持部21の接続状態を「独立状態」とする。
【0116】
以下、図31を参照しつつ、0系制御部20−1を主体とした場合における、ユニット間障害発生通知受信時の動作について説明する。0系制御部20−1は、他系制御部である1系制御部40−1からのユニット間障害検出通知を受信したときに当該ルーチンを実行する。
【0117】
先ず、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS61)。現在の接続状態が「完全状態」でない場合には、命令部25は、中継抑制無効命令6を発せず、ステップS63に移行する。現在の接続状態が「完全状態」である場合には、命令部25は、制御対象スイッチである0系スイッチ10−1に対してその対向スイッチである0系スイッチ10−2への特定フレームの中継抑制を無効とする命令6を発する(ステップS62)。
【0118】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS63)。図32には、ユニット間障害発生通知受信時における接続状態の遷移表が示されている。「通知受信前の接続状態」は現時点の接続状態である。「通信受信後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「自系ユニット間障害」である場合、状態更新部23は、接続状態保持部21の接続状態を「ユニット間2重障害」とする。
【0119】
以下、図33を参照しつつ、0系制御部20−1を主体とした場合における、ユニット内障害発生通知受信時の動作について説明する。0系制御部20−1は、対向制御部である0系制御部20−2からのユニット内障害検出通知を受信したときに当該ルーチンを実行する。
【0120】
先ず、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS71)。現在の接続状態が「完全状態」でない場合には、命令部25は、中継抑制無効命令6を発せず、ステップS74に移行する。現在の接続状態が「完全状態」である場合には、命令部25は、制御対象スイッチである0系スイッチ10−1に対してその対向スイッチである0系スイッチ10−2への特定フレームの中継抑制を無効とする命令6を発する(ステップS72)。
【0121】
次に、命令部25は、0系制御部20−1に対して命令7を発する。0系制御部20−1の経路情報更新部13は、命令7に応じて、対向スイッチである0系スイッチ10−2に対し、送出先が対向スイッチとなるMACアドレスを経路制御テーブル12から削除する。なお、中継部11は、その後到来したフレームのMACアドレスを「宛先」として経路制御テーブル12に追加することにより、新たなフレーム中継先を設定できる。
【0122】
次に、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS74)。図34には、ユニット内障害発生通知受信時における接続状態の遷移表が示されている。「通知受信前の接続状態」は現時点の接続状態である。「通信受信後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「自系ユニット間障害」である場合、状態更新部23は、接続状態保持部21の接続状態を「1重化状態」とする。
【0123】
以下、図35を参照しつつ、0系制御部20−1を主体とした場合における、ユニット内通信確立通知受信時の動作について説明する。0系制御部20−1は、対向制御部である0系制御部20−2からのユニット内障害検出通知を受信したときに当該ルーチンを実行する。
【0124】
先ず、状態更新部23は、接続状態保持部21に保持されている接続状態に基づいて接続状態保持部21の接続状態を更新する(ステップS81)。図36には、ユニット内通信確立通知受信時における接続状態の遷移表が示されている。「通知受信前の接続状態」は現時点の接続状態である。「通信受信後の接続状態」は更新後の接続状態である。例えば、現時点の接続状態が「1重化状態」である場合、状態更新部23は、接続状態保持部21の接続状態を「自系ユニット間障害」とする。
【0125】
次に、命令部25は、図19に示される中継制御適用判定を行なう(ステップS82)。命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS11)。現在の接続状態が「完全状態」でない場合、命令部25は、中継抑制指令(ステップS12)を発せずに当該判定処理を終了する。現在の接続状態が「完全状態」である場合、命令部25は、制御対象スイッチである0系スイッチ10−1に対して、その対向スイッチである0系スイッチ10−2への特定フレームの中継を抑制する中継抑制有効命令5を発する(ステップS12)。
【0126】
次に、命令部25は、接続状態保持部21の接続状態が「完全状態」であるか否か判別する(ステップS83)。現在の接続状態が「完全状態」でない場合には、命令部25は、命令8を発せず、当該ルーチンを終了する。現在の接続状態が「完全状態」である場合には、命令部25は、制御対象スイッチである0系スイッチ10−1に対し、送出先が他系スイッチとなるMACアドレスを経路制御テーブル12から削除する命令8を発する(ステップS84)。
【0127】
0系制御部20−1の経路情報更新部13は、命令8に応じて、0系スイッチ10−1に対し、送出先が他系スイッチとなるMACアドレスを経路制御テーブル12から削除する。なお、中継部11は、その後到来したフレームのMACアドレスを「宛先」として経路制御テーブル12に追加することにより、新たなフレーム中継先を設定できる。
【0128】
なお、ユニット間通信確立通知受信時の動作及び遷移表については図22及び図23に示されている。また、0系制御部20−2、1系制御部40−1及び40−2の各々も0系制御部20−1と同様の処理を行なう。
【0129】
図27〜図36を参照しつつ上記に説明したように、各制御部は、障害検出時、障害発生通知受信時、及び通信確立時においても、自身が保持している接続状態を相互に通知し合い、自身の接続状態を更新する。そして、接続状態が「完全状態」となった場合には、制御対象スイッチに対してその対向スイッチへのフレームの中継を抑制する命令を発する。かかる処理により、障害検出時、障害発生通知受信時、及び通信確立時においても、フレーム中継路の冗長性を保ちつつ、フレームが中継路61−1、61−2、62及び63をループすることを回避することができる。
【0130】
障害検出時、障害発生通知受信時、及び通信確立時における中継ユニット1−1及び1−2の動作フローについては様々なパターンが考えられる。図37〜図56には、中継ユニット1−1及び1−2の様々なパターンの動作フローが示されている。制御部の各々が保持している接続状態、障害中箇所、及び障害復旧箇所についても併せて記載している。これらのフローは、図22、図23、図27〜図36に示される処理ルーチンの動作に従ってなされるものである。図37〜図56に示されるように、本実施例の中継システム100は、様々なパターンの障害検出時及び障害発生通知受信時においても、フレーム中継路の冗長性を保ちつつ、フレームが中継路61−1、61−2、62及び63をループすることを回避することができることがわかる。また、通信確立時すなわち通信障害から復旧した場合にも、フレームが中継路61−1、61−2、61−3、62及び63をループすることを回避しつつ、フレームの中継路を有効活用することができる。
【0131】
<第2の実施例>
図57には、本発明の第2の実施例である中継システム100の構成が示されている。本実施例の中継システム100においては、中継ユニット1−1、1−2及び1−3が多段接続されている。以下、第1の実施例と異なる部分について主に説明する。なお、各スイッチには、ホスト端末(図示せず)が図1の場合と同様に接続されている。
【0132】
接続状態保持部41は、接続段数として「3」を保持している。通知受信部42、状態更新部43、接続状態通知部44及び命令部45は、接続状態保持部41に保持されている接続段数を参照してその接続段数が「3」以上である場合に本実施例の動作を行なう。また、中継ユニット1−1、1−2及び1−3の各々の接続状態保持部41が保持する接続順位は、それぞれ例えば「1」、「2」及び「3」である。この場合、番号が小さいほど上位である。
【0133】
接続状態通知部44は、通信確立部46によって自ユニット内の制御部間の通信が確立された場合に、その旨を示す通知(以下、系間通信有効通知と称する)を接続順位が上位の制御部に発する。例えば、1系制御部40−3の接続状態通知部44は、1系制御部40−3と0系制御部20−3との間の通信が確立された場合に、上位装置である1系制御部40−2に対して系間通信有効通知を発する。
【0134】
また、接続状態通知部44は、通知受信部42が下位装置から系間通信有効通知を受信したときに、通信確立部46によって自ユニット内の制御部間の通信が確立されていない場合には、当該受信した系間通信有効通知を上位装置に中継する。例えば、1系制御部40−2の接続状態通知部44は、1系制御部40−2の通知受信部42が下位装置の1系制御部40−3から系間通信有効通知を受信したときに、1系制御部40−2と0系制御部20−2との間の通信が確立されていない場合には、当該受信した系間通信有効通知を上位装置である1系制御部40−1に中継する。
【0135】
また、接続状態通知部44は、通知受信部42が下位装置から系間通信有効通知を受信したときに、通信確立部46によって自ユニット内の制御部間の通信が既に確立されており且つ他系制御部から系間通信有効通知を未だ受信していない場合には、当該受信した系間通信有効通知を他系制御部に中継する。例えば、1系制御部40−2の接続状態通知部44は、1系制御部40−2の通知受信部42が下位装置の1系制御部40−3から系間通信有効通知を受信したときに、1系制御部40−2と0系制御部20−2との間の通信が確立されており且つ0系制御部20−2から系間通信有効通知を未だ受信していない場合には、当該受信した系間通信有効通知を他系制御部である0系制御部20−2に中継する。なお、接続状態通知部44は、通知受信部42が他系制御部から系間通信有効通知を既に受信している場合には、当該他系制御部に対して系間通信有効通知を行わない。
【0136】
命令部45は、通知受信部42が下位装置及び他系制御部の各々から系間通信有効通知を受信した場合に、制御対象スイッチに対して中継抑制有効命令5を発する。例えば、1系制御部40−1の命令部45は、1系制御部40−1の通知受信部42が下位装置の1系制御部40−2及び他系制御部の0系制御部20−1の各々から系間通信有効通知を受信した場合に、制御対象スイッチである1系スイッチ30−1に対して中継抑制有効命令5を発する。
【0137】
接続状態保持部21、通知受信部22、状態更新部23、接続状態通知部24、命令部25、及び通信確立部26も、接続状態保持部41、通知受信部42、状態更新部43、接続状態通知部44、命令部45、及び通信確立部46と同様の動作を行なう。
【0138】
図58には、中継システム100における障害復旧箇所、障害発生箇所、中継抑制有効箇所、及び系間通信有効通知のフローが示されている。系間通信有効通知のフローは破線の矢印によって示されている。
【0139】
1系制御部40−3の接続状態通知部44は、1系制御部40−3と0系制御部20−3との間の通信が確立された場合すなわち障害から復旧した場合に、上位装置である1系制御部40−2に対して系間通信有効通知を発する。同様に、0系制御部20−3の接続状態通知部24も、上位装置である0系制御部20−2に対して系間通信有効通知を発する。
【0140】
1系制御部40−2の接続状態通知部44は、通知受信部42が下位装置の1系制御部40−3から系間通信有効通知を受信したときには、1系制御部40−2と0系制御部20−2との間の通信が確立されていないすなわち中継路61−2に通信障害が発生しているので、当該受信した系間通信有効通知を上位装置である1系制御部40−1に中継する。同様に、0系制御部20−2の接続状態通知部24も、上位装置である0系制御部20−1に対して系間通信有効通知を中継する。
【0141】
0系制御部20−1の接続状態通知部24は、0系制御部20−1の通知受信部22が下位装置の0系制御部20−2から系間通信有効通知を受信したときには、0系制御部20−1と1系制御部40−1との間の通信が確立されており且つ1系制御部40−1から系間通信有効通知を未だ受信していないので、当該受信した系間通信有効通知を他系制御部である1系制御部40−1に中継する。1系制御部40−1の接続状態通知部44は、他系制御部である0系制御部20−1から系間通信有効通知を既に受信しているので、当該受信した系間通信有効通知を0系制御部20−1に中継しない。
【0142】
1系制御部40−1の命令部45は、1系制御部40−1の通知受信部42が下位装置の1系制御部40−2及び他系制御部の0系制御部20−1の各々から系間通信有効通知を受信した場合に、制御対象スイッチである1系スイッチ30−1に対して中継抑制有効命令5を発する。なお、0系制御部20−1の命令部45は、他系制御部である1系制御部40−1から系間通信有効通知を受信していないので、下位装置である0系制御部20−1から受信した系間通信有効通知を1系制御部40−1に中継しない。
【0143】
1系スイッチ30−1は、1系制御部40−1の命令部45からの命令5に応じて、例えばユーザトラフィックのフレームなどの特定フレームについては、対向スイッチである1系スイッチ30−2には中継しない。
【0144】
かかる動作により、中継ユニット1−1、1−2及び1−3が3段接続された場合にも、フレーム中継路の冗長性を保ちつつ、フレームが中継路61−1、61−2、61−3、62及び63をループすることを回避することができることがわかる。
【0145】
以下、上記した中継抑制を無効とする場合の動作について説明する。
【0146】
接続状態通知部24は、制御対象スイッチとその対向スイッチとの間に通信障害が発生したことを検出した旨の障害検出通知を当該制御対象スイッチの障害検出部14から受信したときに上位装置に対して系間通信無効通知を発する。例えば、0系制御部20−2の接続状態通知部24は、制御対象スイッチである0系スイッチ10−2とその対向スイッチである1系スイッチ30−2との間に通信障害が発生したことを検出した旨の障害検出通知を0系スイッチ10−2の障害検出部14から受信したときに上位装置である0系制御部20−1に対して系間通信無効通知を発する。
【0147】
また、接続状態通知部24は、通知受信部22が下位装置から系間通信無効通知を受信したときに、通信確立部26によって自ユニット内の制御部間の通信が確立されていない場合には、当該受信した系間通信無効通知を上位装置に中継する。例えば、0系制御部20−2の接続状態通知部24は、0系制御部20−2の通知受信部22が下位装置の0系制御部20−3から系間通信無効通知を受信したときに、0系制御部20−2と1系制御部40−2との間の通信が確立されていない場合には、当該受信した系間通信無効通知を上位装置である0系制御部20−1に中継する。
【0148】
また、接続状態通知部24は、通知受信部22が下位装置から系間通信無効通知を受信したときに、通信確立部26によって自ユニット内の制御部間の通信が既に確立されている場合には、当該受信した系間通信無効通知を他系制御部に中継する。例えば、0系制御部20−2の接続状態通知部24は、0系制御部20−2の通知受信部22が下位装置の0系制御部20−3から系間通信無効通知を受信したときに、0系制御部20−2と1系制御部40−2との間の通信が確立されている場合には、当該受信した系間通信無効通知を他系制御部である1系制御部40−2に中継する。
【0149】
命令部25は、制御対象スイッチに対して命令5を発している場合において、通知受信部42が他系装置から系間通信無効通知を受信したときには、当該制御対象スイッチに対して中継抑制無効命令6を発する。例えば、1系制御部40−1の命令部25は、制御対象スイッチである1系スイッチ30−1に対して命令5を発している場合において、1系制御部40−1の通知受信部42が他系装置である0系制御部20−1から系間通信無効通知を受信したときには、1系スイッチ30−1に対して中継抑制無効命令6を発する。
【0150】
接続状態保持部41、通知受信部42、状態更新部43、接続状態通知部44、命令部45、及び通信確立部46も、接続状態保持部21、通知受信部22、状態更新部23、接続状態通知部24、命令部25、及び通信確立部26と同様の動作を行なう。
【0151】
図59には、中継システム100における障害発生箇所、中継抑制無効箇所、及び系間通信無効通知のフローが示されている。系間通信無効通知のフローは破線の矢印によって示されている。
【0152】
0系制御部20−2の接続状態通知部24は、制御対象スイッチである0系スイッチ10−2とその対向スイッチである1系スイッチ30−2との間に通信障害が発生したことを検出した旨の障害検出通知を0系スイッチ10−2の障害検出部14から受信したときに上位装置である0系制御部20−1に対して系間通信無効通知を発する。
【0153】
0系制御部20−1の接続状態通知部24は、0系制御部20−1の通知受信部22が下位装置の0系制御部20−2から系間通信無効通知を受信したときに、0系制御部20−1と1系制御部40−1との間の通信が確立されている場合には、当該受信した系間通信無効通知を他系制御部である1系制御部40−1に中継する。
【0154】
1系制御部40−1の命令部25は、制御対象スイッチである1系スイッチ30−1に対して命令5を発しているので、1系制御部40−1の通知受信部42が他系装置の0系制御部20−1から系間通信無効通知を受信したときに、1系スイッチ30−1に対して中継抑制無効命令6を発する。
【0155】
1系スイッチ30−1は、1系制御部40−1の命令部45からの命令6に応じて、これ以降に到来した特定フレームを対向スイッチである1系スイッチ30−2に中継することができる。
【0156】
かかる動作により、中継ユニット1−1、1−2及び1−3が3段接続された場合にも、通信障害から復旧した場合には、制御対象スイッチに対して中継抑制を無効とする命令を発して特定フレームの中継を再開できるようにするので、フレームが中継路61−1、61−2、61−3、62及び63をループすることを回避しつつ、フレームの中継路を有効活用することができる。
【0157】
また、上記の実施例は、中継ユニット1−1、1−2及び1−3を3段接続した場合の例であるが、4つ以上の多段接続とした場合にも、同様の効果を奏する。例として中継ユニットを4段接続したときの特定フレーム中継抑制時における1系スイッチ30−1からのフレーム中継フローを図60に示す。また、中継ユニットを4段接続したときの特定フレーム中継抑制時における0系スイッチ10−1からのフレーム中継フローを図61に示す。このような中継フローにより、中継ユニットが多段接続された場合にも、フレーム中継路の冗長性を保ちつつ、中継路におけるフレームのループを回避することができる。
【0158】
第1及び第2の実施例に説明したように、本発明の中継ユニットにおいては、各制御部は、自身の接続状態保持部21又は41が保持している接続段数に応じて、制御対象スイッチの中継動作の制御態様について、第1の実施例及び第2の実施例に示されるいずれかの制御態様を選択して実行することができる。また、第2の実施例に説明したように、接続順位が下位の中継ユニットから上位の中継ユニットに対して系間通信有効通知を発し、上位の中継ユニットは障害状況に応じてこれを更に上位に中継するといったように接続順位に応じても中継動作の制御態様を選択することができる。
【符号の説明】
【0159】
1−1、1−2、1−3 中継ユニット
10−1、10−2 0系スイッチ
11 中継部
12 経路情報テーブル
13 経路情報更新部
14 障害検出部
20−1、20−2 0系制御部
21 接続状態保持部
22 通知受信部
23 状態更新部
24 接続状態通知部
25 命令部
26 通信確立部
30−1、30−2 1系スイッチ
31 中継部
32 経路情報テーブル
33 経路情報更新部
34 障害検出部
40−1、40−2 1系制御部
41 接続状態保持部
42 通知受信部
43 状態更新部
44 接続状態通知部
45 命令部
46 通信確立部
51−1〜51−n、52−1〜52−m ホスト端末
61−1、61−2、62、63 中継路
64−1、64−2、65−1、65−2 通信路
100 中継システム
【特許請求の範囲】
【請求項1】
フレームを中継するためのメイン系及びサブ系ラインと前記メイン系及びサブ系ライン間を接続する系間ラインを含み且つ多段に縦列接続され得てLANを形成する中継ユニットであって、
前記系間ラインを介して互いに接続され且つ前記メイン系及びサブ系ラインにそれぞれ接続され前記フレームを各々が中継するメイン系及びサブ系スイッチと、
前記メイン系及びスイッチの各々の中継動作を制御する制御部と、を含み、
前記制御部は、前記LANにおける中継ユニットの接続段数の情報及び自身の属する中継ユニットの接続順位の情報を保持可能であって、前記メイン系及びサブ系スイッチの少なくとも一方の中継動作の制御態様を前記接続段数及び前記接続順位に応じて選択することを特徴とする中継ユニット。
【請求項2】
前記制御部は、前記接続段数及び前記接続順位の情報を書き換え自在に保持することを特徴とする請求項1に記載の中継ユニット。
【請求項3】
前記制御部は、前記接続段数が2である場合に、前記メイン系及びサブ系スイッチが、前記系間ラインを経て到来したフレームを前記メイン系若しくはサブ系ラインに中継しないように制御するフレーム中継抑制制御を行なうことを特徴とする請求項1又は2に記載の中継ユニット。
【請求項4】
前記制御部の各々は、前記制御部相互間の接続状態を示す接続状態情報を保持し、当該接続状態情報と他の制御部から得られた接続状態情報とに基づいて当該保持している接続状態情報を更新して当該更新後の接続状態情報が特定の接続状態となった場合に前記フレーム中継抑制制御を行なうことを特徴とする請求項3に記載の中継ユニット。
【請求項5】
前記特定の接続状態は、前記制御部の各々が相互に通信可能な状態であることを特徴とする請求項4に記載の中継ユニット。
【請求項1】
フレームを中継するためのメイン系及びサブ系ラインと前記メイン系及びサブ系ライン間を接続する系間ラインを含み且つ多段に縦列接続され得てLANを形成する中継ユニットであって、
前記系間ラインを介して互いに接続され且つ前記メイン系及びサブ系ラインにそれぞれ接続され前記フレームを各々が中継するメイン系及びサブ系スイッチと、
前記メイン系及びスイッチの各々の中継動作を制御する制御部と、を含み、
前記制御部は、前記LANにおける中継ユニットの接続段数の情報及び自身の属する中継ユニットの接続順位の情報を保持可能であって、前記メイン系及びサブ系スイッチの少なくとも一方の中継動作の制御態様を前記接続段数及び前記接続順位に応じて選択することを特徴とする中継ユニット。
【請求項2】
前記制御部は、前記接続段数及び前記接続順位の情報を書き換え自在に保持することを特徴とする請求項1に記載の中継ユニット。
【請求項3】
前記制御部は、前記接続段数が2である場合に、前記メイン系及びサブ系スイッチが、前記系間ラインを経て到来したフレームを前記メイン系若しくはサブ系ラインに中継しないように制御するフレーム中継抑制制御を行なうことを特徴とする請求項1又は2に記載の中継ユニット。
【請求項4】
前記制御部の各々は、前記制御部相互間の接続状態を示す接続状態情報を保持し、当該接続状態情報と他の制御部から得られた接続状態情報とに基づいて当該保持している接続状態情報を更新して当該更新後の接続状態情報が特定の接続状態となった場合に前記フレーム中継抑制制御を行なうことを特徴とする請求項3に記載の中継ユニット。
【請求項5】
前記特定の接続状態は、前記制御部の各々が相互に通信可能な状態であることを特徴とする請求項4に記載の中継ユニット。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【図45】
【図46】
【図47】
【図48】
【図49】
【図50】
【図51】
【図52】
【図53】
【図54】
【図55】
【図56】
【図57】
【図58】
【図59】
【図60】
【図61】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【図45】
【図46】
【図47】
【図48】
【図49】
【図50】
【図51】
【図52】
【図53】
【図54】
【図55】
【図56】
【図57】
【図58】
【図59】
【図60】
【図61】
【公開番号】特開2013−77972(P2013−77972A)
【公開日】平成25年4月25日(2013.4.25)
【国際特許分類】
【出願番号】特願2011−216493(P2011−216493)
【出願日】平成23年9月30日(2011.9.30)
【出願人】(000000295)沖電気工業株式会社 (6,645)
【Fターム(参考)】
【公開日】平成25年4月25日(2013.4.25)
【国際特許分類】
【出願日】平成23年9月30日(2011.9.30)
【出願人】(000000295)沖電気工業株式会社 (6,645)
【Fターム(参考)】
[ Back to top ]