(57)【特許請求の範囲】
【請求項１】
リングネットワークを構成する複数のスイッチ装置を備える中継システムであって、
前記複数のスイッチ装置の少なくとも一つは、
前記リングネットワークに接続されるリングポートと、
ＭＡＣアドレスと、前記リングポートと、面番号を示す第１ＩＤと、の対応関係を含むエントリを保持するＦＤＢと、
前記リングポートまたは当該リングポートが属するリングネットワークＩＤと、前記第１ＩＤと、どの面番号を含む前記エントリまでフラッシュが完了しているかを示す第２ＩＤと、の対応関係を保持するＩＤ管理テーブルと、
前記リングネットワークを制御し、所定のリングプロトコルに基づきＦＤＢフラッシュ命令を発行するリング制御部と、
前記ＦＤＢフラッシュ命令が発行される毎に、前記ＩＤ管理テーブルの前記第１ＩＤを所定の範囲内で巡回するように順次切り換え、前記第１ＩＤを追いかけるようにフラッシュ対象の面番号を定め、当該面番号を含む前記エントリのフラッシュが完了した場合に前記ＩＤ管理テーブルの前記第２ＩＤを切り換えるＩＤ管理部と、
前記リングポートでフレームを受信した場合に、当該リングポートまたは前記リングネットワークＩＤに対応する前記第１ＩＤを前記ＩＤ管理テーブルから取得し、当該第１ＩＤを、当該リングポートおよび当該フレームの送信元ＭＡＣアドレスと共に前記ＦＤＢに学習する学習処理と、前記ＦＤＢの検索結果に基づき、受信したフレームの宛先ポートが前記リングポートの場合で、当該リングポートまたは前記リングネットワークＩＤに対応する前記第１ＩＤが前記ＦＤＢと前記ＩＤ管理テーブルとで一致する場合に宛先ヒットとし、不一致の場合に宛先ミスヒットとする検索処理と、を実行する中継処理部と、
を有し、
前記ＩＤ管理部は、前記第２ＩＤで示されるフラッシュ済みの面番号を追い越さないように前記第１ＩＤを切り換える、
中継システム。
【請求項２】
請求項１記載の中継システムにおいて、
前記ＩＤ管理テーブルは、さらに、前記リングポートまたは前記リングネットワークＩＤ、前記第１ＩＤおよび前記第２ＩＤに対応付けられるフラッシュ命令保持フラグを有し、
前記ＩＤ管理部は、前記第１ＩＤが前記第２ＩＤで示されるフラッシュ済みの面番号に追い付いている状態で前記ＦＤＢフラッシュ命令が発行された場合に、前記フラッシュ命令保持フラグをフラグ有に定める、
中継システム。
【請求項３】
請求項２記載の中継システムにおいて、
前記ＩＤ管理部は、前記フラッシュ命令保持フラグがフラグ有の状態で前記第２ＩＤを切り換えた場合、前記第２ＩＤの切り換えに応じて前記第１ＩＤを切り換えたのち前記フラッシュ命令保持フラグをフラグ無に定める、
中継システム。
【請求項４】
請求項２または３記載の中継システムにおいて、
前記中継処理部は、受信したフレームの前記宛先ポートが前記リングポートの場合で、当該リングポートまたは前記リングネットワークＩＤに対応する前記フラッシュ命令保持フラグが前記フラグ有の場合に、当該フレームをフラッディングする、
中継システム。
【請求項５】
請求項２または３記載の中継システムにおいて、
前記中継処理部は、前記リングポートでフレームを受信した場合に、当該リングポートまたは前記リングネットワークＩＤに対応する前記フラッシュ命令保持フラグを前記ＩＤ管理テーブルから取得し、当該フラッシュ命令保持フラグが前記フラグ有の場合には、当該フレームに基づく前記ＦＤＢの学習を行わない、
中継システム。
【請求項６】
請求項１記載の中継システムにおいて、
前記複数のスイッチ装置の少なくとも一つは、
それぞれ、前記ＦＤＢおよび前記中継処理部を備える複数のラインカードと、
前記ＩＤ管理テーブルおよび前記ＩＤ管理部を備える管理カードと、
前記複数のラインカード間の通信および前記複数のラインカードと前記管理カードとの間の通信を仲介するファブリック経路部と、
を有し、
前記複数のラインカードの少なくとも一つは、前記リングポートを有し、
前記複数のラインカードのそれぞれは、さらに、前記リングポートまたは前記リングネットワークＩＤと前記第１ＩＤとの対応関係を保持するＩＤテーブルを有し、
前記管理カードの前記ＩＤ管理部は、前記ＩＤ管理テーブルの前記第１ＩＤを切り換える際には、前記複数のラインカードのそれぞれに向けて前記ＩＤテーブルの前記第１ＩＤの切り換えを指示し、前記ＩＤ管理テーブルの前記第２ＩＤを切り換える際には、前記複数のラインカードのそれぞれに向けて前記エントリのフラッシュの実行要求を発行し、当該実行要求に基づくフラッシュの完了通知を前記複数のラインカードのそれぞれから受信した場合に前記第２ＩＤを切り換え、
前記複数のラインカードの前記中継処理部は、前記ＩＤ管理テーブルの代わりに前記ＩＤテーブルを用いて前記学習処理および前記検索処理を実行する、
中継システム。
【請求項７】
請求項６記載の中継システムにおいて、
前記ＩＤ管理テーブルおよび前記ＩＤテーブルのそれぞれは、さらに、前記リングポートまたは前記リングネットワークＩＤに対応付けられるフラッシュ命令保持フラグを有し、
前記管理カードの前記ＩＤ管理部は、前記第１ＩＤが前記第２ＩＤで示されるフラッシュ済みの面番号に追い付いている状態で前記ＦＤＢフラッシュ命令が発行された場合に、前記ＩＤ管理テーブルの前記フラッシュ命令保持フラグをフラグ有に定め、前記複数のラインカードのそれぞれに向けて前記ＩＤテーブルの前記フラッシュ命令保持フラグを前記フラグ有に定めるように指示する、
中継システム。
【請求項８】
請求項７記載の中継システムにおいて、
前記ＩＤテーブルにおける前記フラッシュ命令保持フラグのフラグ有は、前記第１ＩＤの予約値を用いて定められ、
前記管理カードの前記ＩＤ管理部は、前記第１ＩＤを、前記所定の範囲内で前記予約値を除いた範囲を巡回するように順次切り換え、前記ＩＤ管理テーブルの前記フラッシュ命令保持フラグを前記フラグ有に定める際には、前記複数のラインカードのそれぞれに向けて前記ＩＤテーブルの前記第１ＩＤを前記予約値に定めるように指示する、
中継システム。
【請求項９】
リングネットワークを構成するスイッチ装置であって、
前記リングネットワークに接続されるリングポートと、
ＭＡＣアドレスと、前記リングポートと、面番号を示す第１ＩＤと、の対応関係を含むエントリを保持するＦＤＢと、
前記リングポートまたは当該リングポートが属するリングネットワークＩＤと、前記第１ＩＤと、どの面番号を含む前記エントリまでフラッシュが完了しているかを示す第２ＩＤと、の対応関係を保持するＩＤ管理テーブルと、
前記リングネットワークを制御し、所定のリングプロトコルに基づきＦＤＢフラッシュ命令を発行するリング制御部と、
前記ＦＤＢフラッシュ命令が発行される毎に、前記ＩＤ管理テーブルの前記第１ＩＤを所定の範囲内で巡回するように順次切り換え、前記第１ＩＤを追いかけるようにフラッシュ対象の面番号を定め、当該面番号を含む前記エントリのフラッシュが完了した場合に前記ＩＤ管理テーブルの前記第２ＩＤを切り換えるＩＤ管理部と、
前記リングポートでフレームを受信した場合に、当該リングポートまたは前記リングネットワークＩＤに対応する前記第１ＩＤを前記ＩＤ管理テーブルから取得し、当該第１ＩＤを、当該リングポートおよび当該フレームの送信元ＭＡＣアドレスと共に前記ＦＤＢに学習する学習処理と、前記ＦＤＢの検索結果に基づき、受信したフレームの宛先ポートが前記リングポートの場合で、当該リングポートまたは前記リングネットワークＩＤに対応する前記第１ＩＤが前記ＦＤＢと前記ＩＤ管理テーブルとで一致する場合に宛先ヒットとし、不一致の場合に宛先ミスヒットとする検索処理と、を実行する中継処理部と、
を有し、
前記ＩＤ管理部は、前記第２ＩＤで示されるフラッシュ済みの面番号を追い越さないように前記第１ＩＤを切り換える、
スイッチ装置。
【請求項１０】
請求項９記載のスイッチ装置において、
前記ＩＤ管理テーブルは、さらに、前記リングポートまたは前記リングネットワークＩＤ、前記第１ＩＤおよび前記第２ＩＤに対応付けられるフラッシュ命令保持フラグを有し、
前記ＩＤ管理部は、前記第１ＩＤが前記第２ＩＤで示されるフラッシュ済みの面番号に追い付いている状態で前記ＦＤＢフラッシュ命令が発行された場合に、前記フラッシュ命令保持フラグをフラグ有に定める、
スイッチ装置。
【請求項１１】
請求項１０記載のスイッチ装置において、
前記ＩＤ管理部は、前記フラッシュ命令保持フラグがフラグ有の状態で前記第２ＩＤを切り換えた場合、前記第２ＩＤの切り換えに応じて前記第１ＩＤを切り換えたのち前記フラッシュ命令保持フラグをフラグ無に定める、
スイッチ装置。
【請求項１２】
請求項１０または１１記載のスイッチ装置において、
前記中継処理部は、受信したフレームの前記宛先ポートが前記リングポートの場合で、当該リングポートまたは前記リングネットワークＩＤに対応する前記フラッシュ命令保持フラグが前記フラグ有の場合に、当該フレームをフラッディングする、
スイッチ装置。
【請求項１３】
請求項１０または１１記載のスイッチ装置において、
前記中継処理部は、前記リングポートでフレームを受信した場合に、当該リングポートまたは前記リングネットワークＩＤに対応する前記フラッシュ命令保持フラグを前記ＩＤ管理テーブルから取得し、当該フラッシュ命令保持フラグが前記フラグ有の場合には、当該フレームに基づく前記ＦＤＢの学習を行わない、
スイッチ装置。
【請求項１４】
請求項９記載のスイッチ装置において、
それぞれ、前記ＦＤＢおよび前記中継処理部を備える複数のラインカードと、
前記ＩＤ管理テーブルおよび前記ＩＤ管理部を備える管理カードと、
前記複数のラインカード間の通信および前記複数のラインカードと前記管理カードとの間の通信を仲介するファブリック経路部と、
を有し、
前記複数のラインカードの少なくとも一つは、前記リングポートを有し、
前記複数のラインカードのそれぞれは、さらに、前記リングポートまたは前記リングネットワークＩＤと前記第１ＩＤとの対応関係を保持するＩＤテーブルを有し、
前記管理カードの前記ＩＤ管理部は、前記ＩＤ管理テーブルの前記第１ＩＤを切り換える際には、前記複数のラインカードのそれぞれに向けて前記ＩＤテーブルの前記第１ＩＤの切り換えを指示し、前記ＩＤ管理テーブルの前記第２ＩＤを切り換える際には、前記複数のラインカードのそれぞれに向けて前記エントリのフラッシュの実行要求を発行し、当該実行要求に基づくフラッシュの完了通知を前記複数のラインカードのそれぞれから受信した場合に前記第２ＩＤを切り換え、
前記複数のラインカードの前記中継処理部は、前記ＩＤ管理テーブルの代わりに前記ＩＤテーブルを用いて前記学習処理および前記検索処理を実行する、
スイッチ装置。
【請求項１５】
請求項１４記載のスイッチ装置において、
前記ＩＤ管理テーブルおよび前記ＩＤテーブルのそれぞれは、さらに、前記リングポートまたは前記リングネットワークＩＤに対応付けられるフラッシュ命令保持フラグを有し、
前記管理カードの前記ＩＤ管理部は、前記第１ＩＤが前記第２ＩＤで示されるフラッシュ済みの面番号に追い付いている状態で前記ＦＤＢフラッシュ命令が発行された場合に、前記ＩＤ管理テーブルの前記フラッシュ命令保持フラグをフラグ有に定め、前記複数のラインカードのそれぞれに向けて前記ＩＤテーブルの前記フラッシュ命令保持フラグを前記フラグ有に定めるように指示する、
スイッチ装置。
【請求項１６】
請求項１５記載のスイッチ装置において、
前記ＩＤテーブルにおける前記フラッシュ命令保持フラグのフラグ有は、前記第１ＩＤの予約値を用いて定められ、
前記管理カードの前記ＩＤ管理部は、前記第１ＩＤを、前記所定の範囲内で前記予約値を除いた範囲を巡回するように順次切り換え、前記ＩＤ管理テーブルの前記フラッシュ命令保持フラグを前記フラグ有に定める際には、前記複数のラインカードのそれぞれに向けて前記ＩＤテーブルの前記第１ＩＤを前記予約値に定めるように指示する、
スイッチ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、中継システムおよびスイッチ装置に関し、例えば、リングプロトコルを用いる中継システムおよびスイッチ装置に関する。
【背景技術】
【０００２】
例えば、特許文献１には、ポート識別子、端末識別子およびＦＤＢ＿ＩＤの対応関係を格納するＦＤＢ（Forwarding DataBase）と、ＦＤＢ＿ＩＤをポート識別子に対応付けて格納するＦＤＢ＿ＩＤテーブルとを備えるネットワーク中継機器が示されている。ＦＤＢ＿ＩＤテーブルのＦＤＢ＿ＩＤは、ＦＤＢの消去指示が生じた場合に、例えば「０」から「１」に書き換えられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−２６３３９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば、リングネットワークを構成するスイッチ装置は、一般的に、障害発生または障害回復に応じてＦＤＢフラッシュ（ＦＤＢ消去）を実行する。ＦＤＢフラッシュに際し、スイッチ装置は、通常、各ＦＤＢエントリ（以降、エントリと略す場合有り）がフラッシュ対象（すなわちフラッシュ対象のリングポートを含むエントリ）であるか否かを判別しながら処理を進めていく。このため、ＦＤＢフラッシュの実行時間は、比較的長くなる恐れがある。ＦＤＢフラッシュの実行中は、通常、受信したフレームに対して、ＦＤＢの学習や検索を行うことができない。
【０００５】
そこで、特許文献１に示されるように、ＦＤＢ＿ＩＤを用いて、仮想的にＦＤＢを複数面設けるような方式が知られている。例えば、ＦＤＢを仮想的に２面設けた場合で、ＦＤＢフラッシュが生じた場合、ＦＤＢを第１面（例えばＦＤＢ＿ＩＤ＝０）から第２面（ＦＤＢ＿ＩＤ＝１）に切り換えることで、第２面のＦＤＢを即座に使用することができる。また、第２面のＦＤＢを使用しながら、それと並行して第１面のＦＤＢのフラッシュを行うことができる。
【０００６】
一方、第２面のＦＤＢを使用している状態で、再び、ＦＤＢフラッシュが生じた場合、例えば、ＦＤＢを第２面から第１面に切り換えることで、第１面のＦＤＢを即座に使用することができる。しかし、この切り換えが発生した時点で、第１面のＦＤＢのフラッシュが実行中であり、フラッシュ未完のエントリが残存している場合、当該エントリは、本来無効なエントリであるにも関わらず、有効なエントリとして誤認識される恐れがある。
【０００７】
本発明は、このようなことに鑑みてなされたものであり、その目的の一つは、ＦＤＢフラッシュの高速化と共に、ＦＤＢフラッシュに伴う誤動作を防止することが可能な中継システムおよびスイッチ装置を提供することにある。
【０００８】
本発明の前記並びにその他の目的と新規な特徴は、本明細書の記述及び添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００９】
本願において開示される発明のうち、代表的な実施の形態の概要を簡単に説明すれば、次のとおりである。
【００１０】
本実施の形態による中継システムは、リングネットワークを構成する複数のスイッチ装置を備える。複数のスイッチ装置の少なくとも一つは、リングポートと、ＦＤＢと、ＩＤ管理テーブルと、リング制御部と、ＩＤ管理部と、中継処理部とを有する。リングポートは、リングネットワークに接続される。ＦＤＢは、ＭＡＣアドレスと、リングポートと、面番号を示す第１ＩＤとの対応関係を含むエントリを保持する。ＩＤ管理テーブルは、リングポートまたは当該リングポートが属するリングネットワークＩＤと、第１ＩＤと、どの面番号を含むエントリまでフラッシュが完了しているかを示す第２ＩＤとの対応関係を保持する。リング制御部は、リングネットワークを制御し、所定のリングプロトコルに基づきＦＤＢフラッシュ命令を発行する。ＩＤ管理部は、ＦＤＢフラッシュ命令が発行される毎に、ＩＤ管理テーブルの第１ＩＤを所定の範囲内で巡回するように順次切り換え、第１ＩＤを追いかけるようにフラッシュ対象の面番号を定め、当該面番号を含むエントリのフラッシュが完了した場合にＩＤ管理テーブルの第２ＩＤを切り換える。中継処理部は、リングポートでフレームを受信した場合に、学習処理と検索処理とを実行する。学習処理において、中継処理部は、リングポートまたはリングネットワークＩＤに対応する第１ＩＤをＩＤ管理テーブルから取得し、当該第１ＩＤを、当該リングポートおよび当該フレームの送信元ＭＡＣアドレスと共にＦＤＢに学習する。検索処理において、中継処理部は、ＦＤＢの検索結果に基づき、受信したフレームの宛先ポートがリングポートの場合で、当該リングポートまたはリングネットワークＩＤに対応する第１ＩＤがＦＤＢとＩＤ管理テーブルとで一致する場合に宛先ヒットとし、不一致の場合に宛先ミスヒットとする。ここで、ＩＤ管理部は、第２ＩＤで示されるフラッシュ済みの面番号を追い越さないように第１ＩＤを切り換える。
【発明の効果】
【００１１】
本願において開示される発明のうち、代表的な実施の形態によって得られる効果を簡単に説明すると、ＦＤＢフラッシュの高速化と共に、ＦＤＢフラッシュに伴う誤動作を防止することが可能になる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態１による中継システムにおいて、その構成例および障害無し時の動作例を示す概略図である。
【図２】図１の中継システムにおいて、障害監視方法の一例と、障害検出時の概略的な動作例を示す説明図である。
【図３】（ａ）は、図１の中継システムにおいて、障害復旧時の概略動作例を示す説明図であり、（ｂ）は、（ａ）に続く概略動作例を示す説明図である。
【図４】図１の中継システムにおいて、スイッチ装置の主要部の概略構成例を示すブロック図である。
【図５】図４におけるＦＤＢの構造例を示す概略図である。
【図６】図４のスイッチ装置において、ＦＤＢＩＤ管理テーブルの構造例を示す概略図である。
【図７】図４のスイッチ装置において、ＦＤＢＩＤ管理部の概略的な動作例を示す説明図である。
【図８】図４のスイッチ装置において、ＦＤＢＩＤ管理部内のＦＩＤ管理部の処理内容の一例を示すフロー図である。
【図９】（ａ）および（ｂ）は、図４のスイッチ装置において、ＦＤＢＩＤ管理部内のＦＰ管理部の処理内容の一例を示すフロー図である。
【図１０】図４のスイッチ装置において、ＦＤＢＩＤ管理部内のＦＩＨ管理部の処理内容の一例を示すフロー図である。
【図１１】図４のスイッチ装置において、中継処理部の処理内容の一例を示すフロー図である。
【図１２】図１１において、ＦＤＢの学習処理の処理内容の一例を示すフロー図である。
【図１３】図１１において、ＦＤＢの検索処理の処理内容の一例を示すフロー図である。
【図１４】本発明の実施の形態２によるスイッチ装置において、主要部の概略構成例を示すブロック図である。
【図１５】図１４のスイッチ装置において、管理カードのＦＩＤ管理部の概略動作例を示す説明図である。
【図１６】図１４のスイッチ装置において、管理カードのＦＰ管理部の概略動作例を示す説明図である。
【図１７】図１４におけるＦＤＢＩＤテーブルの構造例を示す概略図である。
【図１８】本発明の実施の形態３によるスイッチ装置において、管理カードのＦＩＤ管理部の概略動作例を示す説明図である。
【図１９】（ａ）は、本発明の実施の形態４によるスイッチ装置において、主要部の概略構成例を示すブロック図であり、（ｂ）は、（ａ）のスイッチ装置を適用した中継システムの構成例を示す概略図である。
【図２０】（ａ）は、図１９（ａ）におけるインスタンス管理テーブルの構造例を示す概略図であり、（ｂ）は、図１９（ａ）におけるＦＤＢＩＤ管理テーブルの構造例を示す概略図である。
【図２１】（ａ）は、本発明の比較例として検討したスイッチ装置において、ＦＤＢＩＤ管理テーブルの構造例を示す概略図であり、（ｂ）は、本発明の比較例として検討したスイッチ装置において、ＦＤＢＩＤ管理部が行うテーブル管理処理の一例を示すフロー図である。
【図２２】本発明の比較例として検討したスイッチ装置において、ＦＤＢＩＤ管理部が行うＦＤＢフラッシュ処理の一例を示すフロー図である。
【図２３】（ａ）は、本発明の比較例として検討したスイッチ装置において、ＦＤＢフラッシュが生じた場合の動作例を示す説明図であり、（ｂ）は、（ａ）に続いてフレームを受信した場合の動作例を示す説明図である。
【発明を実施するための形態】
【００１３】
以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらは互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。また、以下の実施の形態において、要素の数等（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。
【００１４】
さらに、以下の実施の形態において、その構成要素（要素ステップ等も含む）は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。
【００１５】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１６】
（実施の形態１）
《中継システムの概略構成および障害無し時の概略動作》
図１は、本発明の実施の形態１による中継システムにおいて、その構成例および障害無し時の動作例を示す概略図である。図１に示す中継システムは、リングネットワーク１０を構成する複数（ここでは４個）のスイッチ装置ＳＷａ〜ＳＷｄを備える。スイッチ装置ＳＷａ〜ＳＷｄのそれぞれは、ノードとも呼ばれる。スイッチ装置ＳＷａ〜ＳＷｄのそれぞれは、複数（ここでは４個）のリングポートＰｒ［１ａ］，Ｐｒ［１ｂ］，Ｐｒ［２ａ］，Ｐｒ［２ｂ］と、ｍ個（ｍは１以上の整数）のユーザポートＰｕ［１］〜Ｐｕ［ｍ］と、を備える。
【００１７】
スイッチ装置ＳＷａ〜ＳＷｄのそれぞれは、リングポートＰｒ［１ａ］，Ｐｒ［１ｂ］にＬＡＧ（Link Aggregation Group）（ここではＬＡＧ［１］）を設定し、リングポートＰｒ［２ａ］，Ｐｒ［２ｂ］にＬＡＧ（ここではＬＡＧ［２］）を設定する。ＬＡＧ（例えばＬＡＧ［１］）が設定されたリングポート（Ｐｒ［１ａ］，Ｐｒ［１ｂ］）は、論理的に１個のポートとして機能する。本明細書では、ＬＡＧが設定される複数のポートを総称してＬＡＧポートと呼ぶ。ＬＡＧ［１］ポートは、リングポートＰｒ［１ａ］，Ｐｒ［１ｂ］を表し、ＬＡＧ［２］ポートは、リングポートＰｒ［２ａ］，Ｐｒ［２ｂ］を表す。
【００１８】
また、本明細書では、便宜上、リングポートとユーザポートとを区別するため、リングポートはＬＡＧポートで構成され、ユーザポートはＬＡＧが設定されない一般ポートで構成されるものとする。すなわち、ＬＡＧ［１］ポートおよびＬＡＧ［２］ポートは、リングポートと同義語であるものとする。実際上、リングポートは、冗長性や負荷分散の観点から、ＬＡＧポートで構成されることが望ましい。ただし、各実施の形態において、リングポートは、必ずしもＬＡＧポートに限定されるものではなく、一般ポートであってもよい。また、図１の例では、リングネットワーク１０を構成するスイッチ装置の数は、４個とするが、これに限らず２個以上であればよい。
【００１９】
リングネットワーク１０は、例えば、ＩＴＵ−Ｔ  Ｇ．８０３２に規定されたリングプロトコル（ＥＲＰ（Ethernet（登録商標） Ring Protection）とも呼ばれる）に基づき制御される。言い換えれば、スイッチ装置ＳＷａ〜ＳＷｄのそれぞれは、当該リングプロトコルに基づく各種制御機能を備える。スイッチ装置ＳＷａ〜ＳＷｄのそれぞれは、ＯＳＩ参照モデルのレイヤ２（Ｌ２）の中継処理を行うＬ２スイッチや、加えて、レイヤ３（Ｌ３）の中継処理を行うＬ３スイッチ等である。ただし、リングネットワーク１０上の中継処理は、Ｌ２に基づいて行われるため、ここでは、スイッチ装置ＳＷａ〜ＳＷｄのそれぞれは、Ｌ２スイッチである場合を例とする。
【００２０】
リングポートであるＬＡＧ［１］ポートおよびＬＡＧ［２］ポートは、それぞれ、リングネットワーク１０に接続される。言い換えれば、スイッチ装置ＳＷａ〜ＳＷｄのそれぞれは、リングポートを介してリング状に接続され、これによってリングネットワーク１０が形成される。図１の例では、スイッチ装置ＳＷａ，ＳＷｂ，ＳＷｃ，ＳＷｄのＬＡＧ［１］ポートは、それぞれ、通信回線を介して、隣接するスイッチ装置ＳＷｂ，ＳＷｃ，ＳＷｄ，ＳＷａのＬＡＧ［２］ポートに接続される。
【００２１】
ユーザポートＰｕ［１］〜Ｐｕ［ｍ］は、所定のユーザ網に接続される。図１の例では、スイッチ装置ＳＷａ〜ＳＷｄのユーザポートＰｕ［１］〜Ｐｕ［ｍ］は、それぞれ、ユーザ網１１ａ〜１１ｄに接続される。ユーザ網１１ａ〜１１ｄのそれぞれの中には、スイッチ装置や各種情報処理装置（サーバ装置や端末装置等）などが適宜配置される。
【００２２】
ここで、ＩＴＵ−Ｔ  Ｇ．８０３２に基づき、スイッチ装置ＳＷａは、オーナーノードに設定され、スイッチ装置ＳＷｂは、ネイバーノードに設定される。オーナーノードとネイバーノードとの間のリンクは、ＲＰＬ（Ring Protection Link）と呼ばれる。リングネットワーク１０上に障害が無い場合、スイッチ装置ＳＷａは、ＲＰＬの一端に位置するＬＡＧ［１］ポートを閉塞状態ＢＫに制御し、スイッチ装置ＳＷｂは、ＲＰＬの他端に位置するＬＡＧ［２］ポートを閉塞状態ＢＫに制御する。閉塞状態ＢＫに制御されたリングポートは、フレームの通過を禁止する。
【００２３】
リングネットワーク１０に障害が無い場合、ＲＰＬによって、リングネットワーク１０上での通信経路のループが防止される。これにより、図１に示すように、例えば、スイッチ装置ＳＷａとスイッチ装置ＳＷｂとの間で、スイッチ装置ＳＷｄ，ＳＷｃを介する通信経路１２が形成される。ユーザ網１１ａ〜１１ｄ間のフレーム転送は、この通信経路１２上で行われる。
【００２４】
《中継システムの障害監視方法および障害検出時の概略動作》
図２は、図１の中継システムにおいて、障害監視方法の一例と、障害検出時の概略的な動作例を示す説明図である。図２に示すように、スイッチ装置ＳＷａ〜ＳＷｄは、それぞれ、ＬＡＧ［１］ポートに対応して監視ポイントＭＥＰａ１〜ＭＥＰｄ１を備え、ＬＡＧ［２］ポートに対応して監視ポイントＭＥＰａ２〜ＭＥＰｄ２を備える。
【００２５】
ＩＴＵ−Ｔ  Ｇ．８０３２では、スイッチ装置間のリンクの障害有無を監視するため、イーサネット（登録商標）ＯＡＭのＣＣ（Continuity Check）機能を用いることが規定されている。ＣＣ機能では、図２に示すように、ＭＥＰ（Maintenance End Point）と呼ばれる監視ポイントによって監視区間が設定される。各監視区間の両端のＭＥＰは、疎通性監視フレームであるＣＣＭ（Continuity Check Message）フレームを互いに定期的に送受信することで、各監視区間の疎通性を監視する。
【００２６】
図２の例では、スイッチ装置ＳＷａの監視ポイントＭＥＰａ１は、他装置（ＳＷｂ）の監視ポイントＭＥＰｂ２との間でＣＣＭ監視区間１５ａｂを設定し、これにより、自装置のＬＡＧ［１］ポートと、それに接続される他装置（ＳＷｂ）のＬＡＧ［２］ポートと、の間の疎通性を監視する。その反対に、スイッチ装置ＳＷｂの監視ポイントＭＥＰｂ２も、他装置（ＳＷａ）の監視ポイントＭＥＰａ１との間でＣＣＭ監視区間１５ａｂを設定し、自装置のＬＡＧ［２］ポートと、それに接続される他装置（ＳＷａ）のＬＡＧ［１］ポートと、の間の疎通性を監視する。これと同様にして、リングネットワーク１０上に、順次、ＣＣＭ監視区間１５ｂｃ，１５ｃｄ，１５ａｄが設定される。
【００２７】
図２では、スイッチ装置ＳＷｃの監視ポイントＭＥＰｃ１とスイッチ装置ＳＷｄの監視ポイントＭＥＰｄ２との間の監視区間１５ｃｄに障害が発生した場合（ステップＳ１０１）の概略的な動作例が示されている。この場合、当該障害は、監視ポイントＭＥＰｃ１，ＭＥＰｄ２によってそれぞれ検出される。スイッチ装置ＳＷｃは、監視ポイントＭＥＰｃ１を用いてＬＡＧ［１］ポート（それに接続される通信回線（リンク）を含む）の障害を検出した場合、当該ＬＡＧ［１］ポートを閉塞状態ＢＫに制御し、ＦＤＢフラッシュを実行する（ステップＳ１０２）。
【００２８】
詳細は後述するが、ＦＤＢフラッシュが実行された場合、ＦＤＢ（Forwarding DataBase）において、当該ＦＤＢフラッシュの対象となるリングポート（ここではＬＡＧ［１］ポートおよびＬＡＧ［２］ポート）を含んだエントリがフラッシュされる。また、スイッチ装置ＳＷｃは、ＬＡＧ［１］ポートの障害検出に応じて、リングネットワーク１０上にＲ−ＡＰＳ（ＳＦ）フレームを送信する（ステップＳ１０３）。Ｒ−ＡＰＳフレームは、イーサネットＯＡＭに基づく制御フレームの一種である。ＳＦは、信号故障（Signal Fail）を表し、Ｒ−ＡＰＳ（ＳＦ）フレームは、障害通知フレームとして機能する。
【００２９】
同様に、スイッチ装置ＳＷｄは、監視ポイントＭＥＰｄ２を用いてＬＡＧ［２］ポートの障害を検出した場合、当該ＬＡＧ［２］ポートを閉塞状態ＢＫに制御し、ＦＤＢフラッシュを実行する（ステップＳ１０２）。また、スイッチ装置ＳＷｄは、当該障害検出に応じて、リングネットワーク１０上にＲ−ＡＰＳ（ＳＦ）フレームを送信する（ステップＳ１０３）。
【００３０】
オーナーノードであるスイッチ装置ＳＷａは、Ｒ−ＡＰＳ（ＳＦ）フレームを受信した場合、ＬＡＧ［１］ポートを、図１に示した閉塞状態ＢＫから開放状態に変更し、ＦＤＢフラッシュを実行する（ステップＳ１０４）。同様に、ネイバーノードであるスイッチ装置ＳＷｂも、Ｒ−ＡＰＳ（ＳＦ）フレームを受信した場合、ＬＡＧ［２］ポートを、図１に示した閉塞状態ＢＫから開放状態に変更し、ＦＤＢフラッシュを実行する（ステップＳ１０４）。開放状態のリングポートは、フレームの通過を許可する。
【００３１】
なお、実際には、各スイッチ装置のそれぞれは、リングポート（ＬＡＧ［１］ポートおよびＬＡＧ［２］ポート）のそれぞれで、閉塞状態ＢＫのリングポートの位置を表す閉塞ポート情報を管理している。そして、各スイッチ装置のそれぞれは、ＬＡＧ［１］ポートで管理している閉塞ポート情報に変更が生じた場合にＦＤＢフラッシュを実行し、ＬＡＧ［２］ポートで管理している閉塞ポート情報に変更が生じた場合にＦＤＢフラッシュを実行する。
【００３２】
具体的には、図２のステップＳ１０３において、スイッチ装置ＳＷｃからのＲ−ＡＰＳ（ＳＦ）フレームは、閉塞ポート情報として、スイッチ装置ＳＷｃのＬＡＧ［１］ポートを表す識別子を含む。同様に、スイッチ装置ＳＷｄからのＲ−ＡＰＳ（ＳＦ）フレームは、スイッチ装置ＳＷｄのＬＡＧ［２］ポートを表す識別子を含む。この場合、例えば、スイッチ装置ＳＷａは、ＬＡＧ［１］ポートで新たな閉塞ポート情報（ＳＷｃのＬＡＧ［１］ポートの識別子）を受信し、これに応じてＦＤＢフラッシュを実行する。さらに、スイッチ装置ＳＷａは、ＬＡＧ［２］ポートでも新たな閉塞ポート情報（ＳＷｄのＬＡＧ［２］ポートの識別子）を受信し、これに応じてＦＤＢフラッシュを実行する。このように、スイッチ装置のそれぞれは、実際には、１箇所の障害発生に応じて複数回のＦＤＢフラッシュを実行する場合がある。
【００３３】
《中継システムの障害復旧時の動作》
図３（ａ）は、図１の中継システムにおいて、障害復旧時の概略動作例を示す説明図であり、図３（ｂ）は、図３（ａ）に続く概略動作例を示す説明図である。図３（ａ）では、図２に示したように、スイッチ装置ＳＷｃとスイッチ装置ＳＷｄとの間のリンクに障害が発生した場合で、当該障害が復旧した場合を想定する。まず、障害が発生している状態では、スイッチ装置ＳＷｃのＬＡＧ［１］ポートおよびスイッチ装置ＳＷｄのＬＡＧ［２］ポートは、共に、閉塞状態ＢＫに制御されている。
【００３４】
この状態で、スイッチ装置ＳＷｃは、監視ポイントＭＥＰｃ１を用いてＬＡＧ［１］ポートの障害復旧を検出し（ステップＳ２０１）、ＬＡＧ［２］ポートから定期的にＲ−ＡＰＳ（ＮＲ）フレームを送信する（ステップＳ２０２）。ＮＲは、要求無し（No Request）を表し、Ｒ−ＡＰＳ（ＮＲ）フレームは、障害復旧通知フレームとして機能する。同様に、スイッチ装置ＳＷｄは、監視ポイントＭＥＰｄ２を用いてＬＡＧ［２］ポートの障害復旧を検出し（ステップＳ２０１）、ＬＡＧ［１］ポートから定期的にＲ−ＡＰＳ（ＮＲ）フレームを送信する（ステップＳ２０２）。
【００３５】
オーナーノードであるスイッチ装置ＳＷａは、Ｒ−ＡＰＳ（ＮＲ）フレームを受信すると、所定の期間（ＷＴＲ（Wait To Restore）タイマの期間）を経過後にＬＡＧ［１］ポートを開放状態から閉塞状態ＢＫに変更し、ＦＤＢフラッシュを実行する（ステップＳ２０３）。また、スイッチ装置ＳＷａは、図３（ｂ）に示すように、ＬＡＧ［１］ポートおよびＬＡＧ［２］ポートからＲ−ＡＰＳ（ＮＲ，ＲＢ）フレームを送信する（ステップＳ２０４）。ＲＢは、ＰＲＬの閉塞（RPL Blocked）を表し、Ｒ−ＡＰＳ（ＮＲ，ＲＢ）フレームは、障害切り戻しフレームとして機能する。
【００３６】
ネイバーノードであるスイッチ装置ＳＷｂは、Ｒ−ＡＰＳ（ＮＲ，ＲＢ）フレームを受信した場合、ＬＡＧ［２］ポートを開放状態から閉塞状態ＢＫに変更し、ＦＤＢフラッシュを実行する（ステップＳ２０５）。一方、スイッチ装置ＳＷｃは、Ｒ−ＡＰＳ（ＮＲ，ＲＢ）フレームを受信した場合、ＬＡＧ［１］ポートを閉塞状態ＢＫから開放状態に変更し、ＦＤＢフラッシュを実行する（ステップＳ２０５）。同様に、スイッチ装置ＳＷｄは、Ｒ−ＡＰＳ（ＮＲ，ＲＢ）フレームを受信した場合、ＬＡＧ［２］ポートを閉塞状態ＢＫから開放状態に変更し、ＦＤＢフラッシュを実行する（ステップＳ２０５）。また、スイッチ装置ＳＷｃ，ＳＷｄは、Ｒ−ＡＰＳ（ＮＲ，ＲＢ）フレームを受信した場合、Ｒ−ＡＰＳ（ＮＲ）フレームの送信を停止する。
【００３７】
《スイッチ装置の構成および動作》
図４は、図１の中継システムにおいて、スイッチ装置の主要部の概略構成例を示すブロック図である。図５は、図４におけるＦＤＢの構造例を示す概略図である。図４に示すスイッチ装置ＳＷは、図１に示したスイッチ装置ＳＷａ〜ＳＷｄの中の少なくとも一つに適用される。
【００３８】
図４に示すスイッチ装置ＳＷは、複数（ここでは２個）のリングポートＰｒ［１ａ］，Ｐｒ［１ｂ］で構成されるＬＡＧ［１］ポートと、複数（ここでは２個）のリングポートＰｒ［２ａ］，Ｐｒ［２ｂ］で構成されるＬＡＧ［２］ポートと、複数のユーザポートＰｕ［１］〜Ｐｕ［ｍ］と、各種処理部等とを備える。ＬＡＧ［１］ポートおよびＬＡＧ［２］ポートは、通信回線（例えばイーサネット回線）を介してリングネットワーク１０に接続される。複数のユーザポートＰｕ［１］〜Ｐｕ［ｍ］は、所定のユーザ網（１１ａ〜１１ｄのいずれか）に接続される。以下、各種処理部等に関して説明する。
【００３９】
インタフェース部２０は、複数のポート（ＬＡＧ［１］ポート、ＬＡＧ［２］ポート、ユーザポートＰｕ［１］〜Ｐｕ［ｍ］）のいずれかでフレームを受信した際に、フレームに受信したポートのポート識別子（受信ポート識別子と呼ぶ）を付加し、それを中継処理部２１またはＥＲＰ制御部２４へ送信する。また、インタフェース部２０は、中継処理部２１またはＥＲＰ制御部２４からのフレームを、宛先ポート識別子に基づき、複数のポートのいずれかへ送信する。
【００４０】
ＦＤＢは、図５に示すように、ＭＡＣアドレスと、ＶＬＡＮ（Virtual LAN）識別子（ＶＩＤ）と、ユーザポートとの対応関係を含むエントリを保持する。例えば、図５の１番目のエントリは、ユーザ網１１ａに含まれる端末のＭＡＣアドレス「ＭＡａ」と、ＶＩＤ「１」と、ユーザポートＰｕ［１］のポート識別子（ポートＩＤ）｛Ｐｕ［１］｝との対応関係を含んでいる。なお、本明細書では、例えば、｛ＡＡ｝は「ＡＡ」の識別子（ＩＤ）を表すものとする。
【００４１】
さらに、ＦＤＢは、ＭＡＣアドレスと、ＶＩＤと、リングポート（ＬＡＧポート）と、ＦＩＤ（第１ＩＤ）との対応関係を含むエントリを保持する。例えば、図５の２番目のエントリは、ユーザ網１１ｂに含まれる端末のＭＡＣアドレス「ＭＡｂ」と、ＶＩＤ「１」と、ＬＡＧ［２］ポート（リングポート）のＬＡＧ識別子（ＬＡＧＩＤ）｛ＬＡＧ［２］｝と、ＦＩＤ（第１ＩＤ）「０ｘ２」との対応関係を含んでいる。このように、ＦＤＢは、リングポート（ＬＡＧポート）を含むエントリの場合には、ＦＩＤを保持する。ＦＩＤ（第１ＩＤ）は、詳細は後述するが、概念的には、ＦＤＢの面番号を示す。
【００４２】
ＥＲＰ制御部（リング制御部）２４は、ＯＡＭ処理部３１を含み、ＩＴＵ−Ｔ  Ｇ．８０３２に規定されたリングプロトコルに基づきリングネットワーク１０を制御する。ＯＡＭ処理部３１は、図２に示した監視ポイント（ＭＥＰ）を備え、イーサネットＯＡＭに基づく疎通性の監視を行う。ＥＲＰ制御部２４は、例えば、図２および図３（ａ）および図３（ｂ）に示したように、ＯＡＭ処理部３１を用いた障害有無の監視や、各種Ｒ−ＡＰＳフレームの送信または受信や、ＬＡＧポート（リングポート）の開放状態／閉塞状態ＢＫの制御等を行う。
【００４３】
ＥＲＰ制御部２４は、図４の例では、インタフェース部２０内のＶＩＤフィルタ２５に対して、ＶＩＤに応じたフレームの中継可否を適宜設定することで、ＬＡＧポート（リングポート）の制御を行う。また、ＥＲＰ制御部２４は、図２および図３（ａ）および図３（ｂ）に示したように、リングプロトコルに基づきＦＤＢフラッシュが必要となる場合には、ＦＤＢＩＤ管理部２３に対してＦＤＢフラッシュ命令を発行する。例えば、図２のステップＳ１０４において、スイッチ装置ＳＷａのＥＲＰ制御部２４は、ＬＡＧ［２］ポートでＲ−ＡＰＳ（ＳＦ）フレームを受信した場合、当該ＬＡＧ［２］ポートが属する各リングポート（ここではＬＡＧ［１］ポートおよびＬＡＧ［２］ポート）をフラッシュ対象としてＦＤＢフラッシュ命令を発行する。
【００４４】
ＦＤＢＩＤ管理部（ＩＤ管理部）２３は、ＦＩＤ管理部２７、ＦＩＨ管理部２８、ＦＰ管理部２９およびフラッシュ実行部３０を備え、ＦＤＢＩＤ管理テーブル（ＩＤ管理テーブル）２２で保持される各種ＩＤ等を管理する。中継処理部２１は、ＬＡＧ管理部２６を備え、ＦＤＢＩＤ管理テーブル（ＩＤ管理テーブル）２２を用いて、ＦＤＢの学習処理およびＦＤＢの検索処理を行う。ＬＡＧ管理部２６は、ＬＡＧ［１］ポートとそのメンバポート（リングポートＰｒ［１ａ］，Ｐｒ［１ｂ］）との対応関係、およびＬＡＧ［２］ポートとそのメンバポート（リングポートＰｒ［２ａ］，Ｐｒ［２ｂ］）との対応関係を管理する。
【００４５】
例えば、インタフェース部２０は、リングポートＰｒ［１ａ］でフレームを受信した場合、当該フレームに受信ポート識別子としてポート識別子｛Ｐｒ［１ａ］｝を付加する。ＬＡＧ管理部２６は、受信ポート識別子がＬＡＧポートのメンバポートに該当するため、受信ポート識別子をポート識別子｛Ｐｒ［１ａ］｝からＬＡＧＩＤ｛ＬＡＧ［１］｝に置き換える。中継処理部２１は、当該フレームの送信元ＭＡＣアドレスをＬＡＧＩＤ｛ＬＡＧ［１］｝に対応付けてＦＤＢに学習する。
【００４６】
また、ＬＡＧ管理部２６は、例えば、ＦＤＢの検索処理によって得られた宛先ポート識別子がＬＡＧＩＤ｛ＬＡＧ［２］｝であった場合、そのメンバポート（Ｐｒ［２ａ］，Ｐｒ［２ｂ］）のいずれかを所定の分散規則に基づき選択し、宛先ポート識別子を、当該選択したポート識別子（｛Ｐｒ［２ａ］｝または｛Ｐｒ［２ｂ］｝）に置き換える。中継処理部２１は、当該宛先ポート識別子を付加したフレームをインタフェース部２０へ送信し、インタフェース部２０は、当該宛先ポート識別子に基づくポートに当該フレームを中継する。
【００４７】
《比較例となるＦＤＢＩＤ管理テーブルおよびＦＤＢＩＤ管理部の詳細》
図２１（ａ）は、本発明の比較例として検討したスイッチ装置において、ＦＤＢＩＤ管理テーブルの構造例を示す概略図であり、図２１（ｂ）は、本発明の比較例として検討したスイッチ装置において、ＦＤＢＩＤ管理部が行うテーブル管理処理の一例を示すフロー図である。図２２は、本発明の比較例として検討したスイッチ装置において、ＦＤＢＩＤ管理部が行うＦＤＢフラッシュ処理の一例を示すフロー図である。
【００４８】
図２１（ａ）に示すＦＤＢＩＤ管理テーブル２２’は、ＬＡＧＩＤと、ＦＩＤ（第１ＩＤ）との対応関係を保持する。ＦＩＤ（第１ＩＤ）は、この例では、２ビットとなっており、「０ｘ」を１６進表記として「０ｘ０」〜「０ｘ３」の中のいずれかの値が設定される。ＦＤＢＩＤ管理部は、図２１（ｂ）のようにして、当該ＦＤＢＩＤ管理テーブル２２’を管理する。
【００４９】
図２１（ｂ）において、ＦＤＢＩＤ管理部は、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝のＦＤＢフラッシュ命令を受信したか否かを判別する（ステップＳ８０１）。ＦＤＢフラッシュ命令は、前述したように、図４のＥＲＰ制御部２４から発行される。ＦＤＢＩＤ管理部は、ＦＤＢフラッシュ命令を受信した場合、ＦＤＢＩＤ管理テーブル２２’で当該ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝のＦＩＤを１つ切り換える（ステップＳ８０２）。ここでは、ＦＩＤは、インクリメント方式で切り換えられ、最大値（ｍａｘ）を超える際には最小値（ｍｉｎ）へ戻るように切り換えられるものとする。ただし、特にインクリメント方式に限定されず、例えばデクリメント方式等を用いてもよい。
【００５０】
また、このような処理と並行して、ＦＤＢＩＤ管理部は、図２２に示すように、ＦＤＢＩＤ管理テーブル２２’で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝のＦＩＤの切り換えが発生したか否かを判別する（ステップＳ９０１）。ＦＩＤの切り換えが発生した場合、ＦＤＢＩＤ管理部は、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝およびＦＩＤ（ｔ−１）を含むＦＤＢエントリをフラッシュする（ステップＳ９０２）。ここで、ＦＩＤ（ｔ−１）は、１つ切り換え前のＦＩＤを表し、例えば、ステップＳ９０１でＦＩＤが「０ｘ２」から「０ｘ３」に切り換えられた場合、ＦＩＤ（ｔ−１）は「０ｘ２」となる。
【００５１】
このように、ＦＤＢＩＤ管理部は、ＦＤＢフラッシュ命令が発行される毎に、ＦＤＢＩＤ管理テーブル２２’のＦＩＤ（言い換えれば面番号）を所定の範囲内で巡回するように順次切り換える。また、これと並行して、ＦＤＢＩＤ管理部は、ＦＩＤを追いかけるように（ただし追い付かないように）フラッシュ対象のＦＩＤ（面番号）を定め、当該面番号を含むＦＤＢエントリをフラッシュする。
【００５２】
《比較例となるスイッチ装置のフレーム中継処理》
図２３（ａ）は、本発明の比較例として検討したスイッチ装置において、ＦＤＢフラッシュが生じた場合の動作例を示す説明図であり、図２３（ｂ）は、図２３（ａ）に続いてフレームを受信した場合の動作例を示す説明図である。まず、図２３（ａ）では、例えば、図２のスイッチ装置ＳＷａが、ＦＤＢＩＤ管理テーブル２２’にＬＡＧＩＤ｛ＬＡＧ［１］｝，｛ＬＡＧ［２］｝とＦＩＤ「０ｘ２」との対応関係を保持している状態で、ステップＳ１０４のようにＦＤＢフラッシュを実行する場合を想定している。
【００５３】
この場合、スイッチ装置ＳＷａのＦＤＢＩＤ管理部は、図２３（ａ）に示すように、ＦＤＢフラッシュ命令に応じて、ＦＤＢＩＤ管理テーブル２２’のＬＡＧＩＤ｛ＬＡＧ［１］｝，｛ＬＡＧ［２］｝に対応するＦＩＤを「０ｘ２」から「０ｘ３」に切り換える。これに応じて、ＦＤＢＩＤ管理部は、ＬＡＧＩＤ｛ＬＡＧ［１］｝，｛ＬＡＧ［２］｝およびＦＩＤ「０ｘ２」（すなわち旧面番号）を含むＦＤＢエントリのフラッシュを開始する。
【００５４】
ここで、仮にＦＩＤが設けられない場合、スイッチ装置ＳＷａは、ＬＡＧＩＤ｛ＬＡＧ［１］｝，｛ＬＡＧ［２］｝を含むＦＤＢエントリのフラッシュが完了するまで、ＦＤＢの学習処理および検索処理を行うことができない。一方、ＦＤＢフラッシュは、例えば、各エントリ毎にフラッシュ対象（すなわちＬＡＧ［１］ポート、ＬＡＧ［２］ポート）か否かを順次判別しながら行われるため、ある程度の時間を要する。そこで、以下に示すような処理を実行することで、このようなＦＤＢフラッシュに要する時間を実質的に隠蔽することができる。
【００５５】
図２３（ｂ）では、例えば、図２のスイッチ装置ＳＷａが、ＦＤＢフラッシュが未完の状態で、ＬＡＧ［２］ポートでユーザフレームを受信した場合の動作例が示されている。当該ユーザフレームは、例えば、送信元ＭＡＣアドレスＳＡがＭＡＣアドレスＭＡｄであり、宛先ＭＡＣアドレスＤＡがＭＡＣアドレスＭＡｂである。ＭＡＣアドレスＭＡｄは、図１のユーザ網１１ｄ内の端末のＭＡＣアドレスであり、ＭＡＣアドレスＭＡｂは、図１のユーザ網１１ｂ内の端末のＭＡＣアドレスである。すなわち、当該ユーザフレームは、スイッチ装置ＳＷｄからスイッチ装置ＳＷｂへ転送されるべきフレームとなる。
【００５６】
スイッチ装置ＳＷａの中継処理部は、当該ユーザフレームをＬＡＧ［２］ポートで受信した場合に、ＦＤＢＩＤ管理テーブル２２’からＦＩＤ「０ｘ３」を取得する。中継処理部は、当該ユーザフレームの送信元ＭＡＣアドレスＳＡ「ＭＡｄ」を、所定のＶＩＤ（ここでは「１」）および受信ポート識別子であるＬＡＧＩＤ｛ＬＡＧ［２］｝に加え、取得したＦＩＤ「０ｘ３」に対応付けてＦＤＢに学習する。なお、中継処理部は、仮に当該ＦＩＤを含めて同一のエントリが既に学習済みの場合には、通常通り、エージングタイマ（図示せず）の更新を行う。
【００５７】
また、中継処理部は、当該ユーザフレームの宛先ＭＡＣアドレスＤＡ「ＭＡｂ」およびＶＩＤ「１」を検索キーとしてＦＤＢを検索し、ＬＡＧＩＤ｛ＬＡＧ［２］｝およびＦＩＤ（便宜上、ＦＩＤ［１］とする）「０ｘ２」を取得する。さらに、中継処理部は、ＦＤＢＩＤ管理テーブル２２’から、当該ＬＡＧＩＤ｛ＬＡＧ［２］｝に対応するＦＩＤ（便宜上、ＦＩＤ［２］とする）「０ｘ３」を取得する。ここで、ＬＡＧＩＤ｛ＬＡＧ［２］｝に対応するＦＩＤは、ＦＩＤ［１］（「０ｘ２」）とＦＩＤ［２］（「０ｘ３」）とで不一致となる。この場合、中継処理部は、宛先ミスヒットとし、当該ユーザフレームをフラッディングする。一方、中継処理部は、ＦＩＤが一致する場合には、宛先ヒットとする。
【００５８】
以上のように、面番号となるＦＩＤ（第１ＩＤ）を設けることで、ＦＤＢフラッシュに要する時間を実質的に隠蔽することができ、ＦＤＢフラッシュの高速化が実現可能になる。具体的には、図２３（ａ）および図２３（ｂ）から判るように、ＦＩＤを設けることで、仮想的に、複数面（ＦＩＤが２ビットの場合には４面）のＦＤＢを設けることが可能になる。その結果、スイッチ装置は、ＦＤＢフラッシュが必要となった場合、ＦＤＢ面を切り換えることで実質的にＦＤＢフラッシュを完了したことになり、即座に、学習処理および検索処理を実行できるようになる。また、スイッチ装置は、ＦＤＢ面の切り換えと並行して、学習処理および検索処理に影響を与えることなく、旧面番号のＦＤＢ面を適宜フラッシュすることができる。
【００５９】
《比較例となるスイッチ装置の問題点》
図２３（ａ）および図２３（ｂ）等に示した方式は、前述した特許文献１の方式と異なり、ＦＩＤのビット数を増やし、ＦＤＢフラッシュが生じた場合に、ＦＩＤをインクリメントさせながら巡回させる方式を用いている。これにより、例えば、図２３（ａ）に示したＦＩＤ＝「０ｘ２」の状態からＦＤＢフラッシュが３連続で生じた場合であっても、特に問題は生じない。すなわち、この場合、ＦＤＢＩＤ管理テーブル２２’のＦＩＤは「０ｘ１」となるため、当該ＦＩＤを用いて学習処理および検索処理を行うことができ、これと並行して、ＦＩＤが「０ｘ２」および「０ｘ３」ならびに「０ｘ０」であるＦＤＢエントリを順にフラッシュすることができる。
【００６０】
しかしながら、例えば、図２３（ａ）に示したＦＩＤ＝０ｘ２の状態からＦＤＢフラッシュが４連続で生じ、かつ、ＦＩＤ＝「０ｘ２」のＦＤＢエントリのフラッシュが未完の場合には問題が生じ得る。すなわち、この場合、ＦＤＢＩＤ管理テーブル２２’のＦＩＤは「０ｘ２」となり、当該ＦＩＤを用いて学習処理および検索処理が行われる。そうすると、図２３（ａ）に示されるような、ＦＩＤ＝「０ｘ２」で残存している各ＦＤＢエントリは、本来無効なエントリであるにも関わらず、有効なエントリとみなされる恐れがある。
【００６１】
このように、ＦＤＢフラッシュの発生頻度の増加に伴い、ＦＩＤが、一巡したのちＦＤＢフラッシュを実行中のＦＩＤに追い付いてしまう場合に問題が生じ得る。言い換えると、ＦＩＤが一巡するのに要する時間が、ＦＤＢフラッシュに要する時間と比較して短い場合に問題が生じ得る。ここで、図２で述べたように、ＦＤＢフラッシュは、１箇所の障害発生に応じて複数回生じる場合がある。さらに、図１のリングネットワーク１０は、実際には、多数のスイッチ装置で構成され、これに応じて多くのリンクで障害が発生する恐れがある。そして、その各リンクで障害発生または障害回復が生じる毎に、ＦＤＢフラッシュが生じる。このような場合、短期間でＦＤＢフラッシュが多発する状況が発生し得る。
【００６２】
そこで、例えば、ＦＩＤのビット数を更に増やすことで対策することが考えられる。ただし、ＦＩＤのビット数を増やすと、ＦＤＢのビット数も増やす必要がある。ＦＤＢは、通常、ハードウェアによって構成され、使用可能なビット数は、ハードウェアに依存して制限される場合が多い。その結果、ＦＩＤのビット数の拡張による対策では、前述した問題を十分に解決できない恐れがある。
【００６３】
《ＦＤＢＩＤ管理テーブルの詳細》
図６は、図４のスイッチ装置において、ＦＤＢＩＤ管理テーブルの構造例を示す概略図である。図６に示すＦＤＢＩＤ管理テーブル（ＩＤ管理テーブル）２２は、リングポートと、ＦＩＤ（第１ＩＤ）と、ＦＰ（第２ＩＤ）と、ＦＩＨ（フラッシュ命令保持フラグ）と、の対応関係を保持する。すなわち、ＦＤＢＩＤ管理テーブル２２は、図２１（ａ）のＦＤＢＩＤ管理テーブル２２’と比較して、ＦＰおよびＦＩＨが追加された構造になっている。
【００６４】
詳細は後述するが、ＦＰ（第２ＩＤ）は、どのＦＩＤ（言い換えれば面番号）を含むエントリまでフラッシュが完了しているかを示し、ＦＩＨ（フラッシュ命令保持フラグ）は、ＦＤＢフラッシュ命令の保持の有無を示す。例えば、図６のＬＡＧＩＤ｛ＬＡＧ［１］｝では、ＦＩＤは「０ｘ２」であり、ＦＰは「０ｘ１」であり、ＦＩＨは「０」である。これは、ＦＤＢで現在使用しているＦＩＤ（面番号）が「０ｘ２」であり、ＦＰ（すなわちＦＩＤ＝「０ｘ１」）のエントリまでフラッシュが完了しており、ＦＤＢフラッシュ命令を保持していない状態を表す。
【００６５】
なお、本実施の形態１では、ＦＰは、ＦＤＢフラッシュを完了した最新のＦＩＤ（面番号）を表すこととするが、必ずしもこれに限定されず、どの面番号を含むエントリまでフラッシュが完了しているかを直接的または間接的に示すものであればよい。例えば、ＦＰは、ＦＤＢフラッシュを完了した最新の面番号の代わりに、次にＦＤＢフラッシュの対象となる面番号等であってもよい。この場合、ＦＰは、「０ｘ２」となり、間接的に、ＦＩＤ＝「０ｘ１」のエントリまでＦＤＢフラッシュが完了していることが判る。
【００６６】
また、図６のＦＤＢＩＤ管理テーブル２２では、ＬＡＧＩＤ｛ＬＡＧ［１］｝，｛ＬＡＧ［２］｝に加えて、ＬＡＧＩＤ｛ＬＡＧ［ｉ］｝，｛ＬＡＧ［ｉ＋１］｝が示される。例えば、図１のスイッチ装置ＳＷａ〜ＳＷｄが複数のリングネットワーク１０を構成するような場合、その中の一つのリングに接続されるリングポートがＬＡＧ［１］ポートおよびＬＡＧ［２］ポートとなり、他の一つのリングに接続されるリングポートがＬＡＧ［ｉ］ポートおよびＬＡＧ［ｉ＋１］ポートとなる。
【００６７】
ＬＡＧ［ｉ］ポートおよびＬＡＧ［ｉ＋１］ポートは、ＬＡＧ［１］ポートおよびＬＡＧ［２］ポートとは別のリングネットワーク１０に属するため、ＦＩＤ，ＦＰ，ＦＩＨもＬＡＧ［１］ポートおよびＬＡＧ［２］ポートとは独立して管理される。図６のＬＡＧＩＤ｛ＬＡＧ［ｉ］｝では、ＦＩＤは「０ｘ１」であり、ＦＰは「０ｘ１」であり、ＦＩＨは「１」である。これは、ＦＩＤ＝「０ｘ１」のエントリまでフラッシュが完了しており、それと同じエントリを使用している状態でＦＤＢフラッシュ命令が発行され、当該ＦＤＢフラッシュ命令を保持した状態を表す。
【００６８】
《ＦＤＢＩＤ管理部の概略動作》
図７は、図４のスイッチ装置において、ＦＤＢＩＤ管理部の概略的な動作例を示す説明図である。ＦＤＢＩＤ管理部２３は、例えば、次のようにしてＦＤＢＩＤ管理テーブル２２におけるＦＩＤ，ＦＰ，ＦＩＨを管理する。まず、図７の状態ＳＴ１０では、ＦＩＤ＝「０ｘ０」、ＦＰ＝「０ｘ３」、ＦＩＨ＝「０」となっており、「ＦＩＤ＝ＦＰ＋１」となっている。このように、ＦＰがＦＩＤの一つ切り換え前のＦＩＤ（すなわちＦＩＤ（ｔ−１））となっている状態は、フラッシュ対象のエントリが存在しない初期状態となる。初期状態では、ＦＤＢＩＤ管理部２３は、ＦＤＢフラッシュ命令に応じてＦＩＤを切り換えるが、ＦＰの切り換えに関しては、ＦＩＤの切り換えが行われない限り行わない。
【００６９】
状態ＳＴ１０において、ＦＤＢフラッシュ命令が１回発行された場合、ＦＤＢＩＤ管理部２３は、ＦＤＢフラッシュ命令に応じてＦＩＤを１つ切り換える。その結果、状態ＳＴ１１のように、ＦＩＤ＝「０ｘ１」、ＦＰ＝「０ｘ３」、ＦＩＨ＝「０」となる。この状態ＳＴ１１は、ＦＤＢＩＤ管理部２３によってＦＩＤの切り換えもＦＰの切り換えも行われる通常状態となる。ここで、図示は省略されているが、ＦＤＢＩＤ管理部２３は、ＦＩＤの「０ｘ０」から「０ｘ１」への切り換えに応じて、ＦＩＤ＝「０ｘ０」のエントリのフラッシュを開始する。その後、ＦＤＢＩＤ管理部２３は、当該フラッシュが完了すると、ＦＰを「０ｘ０」に切り換える。
【００７０】
状態ＳＴ１１において、ＦＩＤ＝「０ｘ０」のエントリのフラッシュが未完の状態で、更に、ＦＤＢフラッシュ命令が２回発行された場合、ＦＤＢＩＤ管理部２３は、当該ＦＤＢフラッシュ命令に応じてＦＩＤを２つ切り換える。その結果、状態ＳＴ１２のように、ＦＩＤ＝「０ｘ３」、ＦＰ＝「０ｘ３」、ＦＩＨ＝「０」となり、「ＦＩＤ＝ＦＰ」となる。このように、ＦＩＤ（第１ＩＤ）（ここでは「０ｘ３」）がＦＰ（第２ＩＤ）で示されるフラッシュ済みの面番号（ここでは「０ｘ３」）に追い付いた状態は、フラッシュ待ち状態となる。
【００７１】
フラッシュ待ち状態では、ＦＤＢＩＤ管理部２３は、フラッシュ対象のＦＩＤ（面番号）を順に切り換えながら当該面番号を含むエントリを順にフラッシュすると共に、その完了に応じてＦＰを順に切り換える。ただし、ＦＤＢＩＤ管理部２３は、ＦＩＤの切り換えに関しては、ＦＤＢフラッシュ命令が発行された場合であっても、ＦＰの切り換えが行われない限り行わない。
【００７２】
状態ＳＴ１２において、ＦＩＤ＝「０ｘ０」のエントリのフラッシュが未完の状態で、更に、ＦＤＢフラッシュ命令が１回発行された場合、状態ＳＴ１３となる。状態ＳＴ１３では、前述したようにＦＩＤの切り換えは行われず、ＦＩＤ＝「０ｘ３」、ＦＰ＝「０ｘ３」となる。ただし、ＦＤＢＩＤ管理部２３は、ＦＤＢフラッシュ命令に応じて、ＦＩＤを切り換えない代わりに、ＦＩＨ（フラッシュ命令保持フラグ）をフラグ有（「１」）に定める。
【００７３】
状態ＳＴ１３は、本来実行されるべきＦＤＢフラッシュ命令（すなわちＦＩＤの切り換え）を実行できていない状態である。したがって、本実施の形態１では、詳細は後述するが、図４の中継処理部２１は、この状態ＳＴ１３で受信したフレームをフラッディングによって中継する。なお、状態ＳＴ１３において、更に、ＦＤＢフラッシュ命令が発行された場合、ＦＤＢＩＤ管理部２３は、状態ＳＴ１３を維持する。すなわち、ＦＤＢＩＤ管理部２３は、状態ＳＴ１３において、複数回のＦＤＢフラッシュ命令が発行された場合であっても、当該複数回のＦＤＢフラッシュ命令を１回のＦＤＢフラッシュ命令に集約する。
【００７４】
状態ＳＴ１３において、ＦＤＢＩＤ管理部２３は、ＦＩＤ＝「０ｘ０」のエントリのフラッシュが完了した場合、状態ＳＴ１４のように、ＦＰを「０ｘ３」から「０ｘ０」に切り換える（言い換えれば巡回させる）。このように、ＦＤＢＩＤ管理部２３は、ＦＩＨ（フラッシュ命令保持フラグ）がフラグ有の状態でＦＰを切り換えた場合、状態ＳＴ１５のように、ＦＰの切り換えに応じてＦＩＤを「０ｘ３」から「０ｘ０」に切り換えたのち、ＦＩＨをフラグ無（すなわち「０」）に定める。
【００７５】
なお、図示は省略されているが、ＦＤＢＩＤ管理部２３は、状態ＳＴ１５において、ＦＩＤ＝「０ｘ１」のエントリのフラッシュを開始している。仮に、その後にＦＤＢフラッシュ命令が発行されない状態で、ＦＩＤ＝「０ｘ１」を含めて順に３ＦＩＤ分のエントリのフラッシュが完了すると、前述した状態ＳＴ１０となる。
【００７６】
以上のように、ＦＤＢＩＤ管理部（ＩＤ管理部）２３は、ＦＤＢフラッシュ命令が発行される毎に、ＦＤＢＩＤ管理テーブル（ＩＤ管理テーブル）２２のＦＩＤ（第１ＩＤ）を所定の範囲内で巡回するように順次切り換える。これと並行して、ＦＤＢＩＤ管理部２３は、ＦＩＤを追いかけるように（ただし追い付かないように）フラッシュ対象の面番号を定め、当該面番号を含むエントリのフラッシュが完了した場合にＦＤＢＩＤ管理テーブル２２のＦＰ（第２ＩＤ）を切り換える。ただし、ＦＤＢＩＤ管理部２３は、状態ＳＴ１２，ＳＴ１３に示したように、ＦＰで示されるフラッシュ済みの面番号を追い越さないようにＦＩＤを切り換える。
【００７７】
これにより、図２３（ａ）および図２３（ｂ）の場合と同様に、ＦＤＢフラッシュの高速化が実現できることに加えて、図２３（ａ）および図２３（ｂ）の場合と異なり、ＦＤＢフラッシュの発生頻度の増加に伴い、本来無効なエントリが有効なエントリとみなされるような誤動作を防止することが可能になる。さらに、ＦＩＨ（フラッシュ命令保持フラグ）を設けることで、状態ＳＴ１３〜状態ＳＴ１５に示したように、ＦＤＢフラッシュ命令（すなわちＦＩＤの切り換え）を実行できない状況で、当該命令の退避が可能になる。そして、当該命令を実行できる状況になった時点で、即座に当該命令の実行が可能になり、また、当該命令を実行できない状況では、フレームのフラッディングによって、フレームの損失等を防止することができる。
【００７８】
《ＦＤＢＩＤ管理部の詳細動作》
図８は、図４のスイッチ装置において、ＦＤＢＩＤ管理部内のＦＩＤ管理部の処理内容の一例を示すフロー図である。図８において、ＦＩＤ管理部２７は、まず、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝のＦＤＢフラッシュ命令を受信したか否かを判別する（ステップＳ３０１）。ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝のＦＤＢフラッシュ命令は、前述したように、図４のＥＲＰ制御部２４によって発行される。当該ＦＤＢフラッシュ命令を受信した場合、ＦＩＤ管理部２７は、ＦＤＢＩＤ管理テーブル２２で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝に対応するＦＩＤ（第１ＩＤ）およびＦＰ（第２ＩＤ）を参照する（ステップＳ３０２）。
【００７９】
次いで、ＦＩＤ管理部２７は、ＦＩＤとＦＰとが不一致の場合、ＦＤＢＩＤ管理テーブル２２で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝に対応するＦＩＤを１つ切り換える（ステップＳ３０３，Ｓ３０４）。なお、前述したようにインクリメント方式を用いた場合、ＦＩＤは、最大値（ｍａｘ）を超える際には最小値（ｍｉｎ）へ戻るように（すなわち巡回するように）切り換えられる。一方、ＦＩＤ管理部２７は、ＦＩＤとＦＰとが一致する場合（すなわち、図７の状態ＳＴ１２，ＳＴ１３のようにＦＩＤがＦＰに追い付いている場合）、ＦＤＢＩＤ管理テーブル２２で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝に対応するＦＩＨ（フラッシュ命令保持フラグ）をフラグ有に定める（ステップＳ３０３，Ｓ３０５）。
【００８０】
図９（ａ）および図９（ｂ）は、図４のスイッチ装置において、ＦＤＢＩＤ管理部内のＦＰ管理部の処理内容の一例を示すフロー図である。図９（ａ）において、ＦＰ管理部２９は、ＦＩＤ管理部２７で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝のＦＩＤの切り換えが発生したか否かを判別する（ステップＳ４０１）。ＦＩＤの切り換えが発生した場合、ＦＰ管理部２９は、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝およびＦＩＤ（ｔ−１）（すなわち１つ切り換え前のＦＩＤ）のＦＤＢエントリを対象とするフラッシュの実行要求を命令キューに格納する（ステップＳ４０２）。すなわち、ＦＰ管理部２９は、ＦＩＤの切り換えが生じる毎に、その切り換え前のＦＩＤを対象としたフラッシュの実行要求を、順次、命令キュー（例えばＦＩＦＯ（First In First Out）型）に格納していく。
【００８１】
また、図９（ｂ）において、ＦＰ管理部２９は、命令キューにフラッシュの実行要求が格納されているか否かを判別する（ステップＳ５０１）。実行要求が格納されている場合、命令キューからＬＡＧＩＤ｛ＬＡＧ［ｊ］｝およびＦＩＤ（ｔ−１）を含む実行要求を取得し、それを図４のフラッシュ実行部３０に送信する（ステップＳ５０２）。フラッシュ実行部３０は、当該実行要求に応じて、ＦＤＢの中からＬＡＧＩＤ｛ＬＡＧ［ｊ］｝およびＦＩＤ（ｔ−１）を含むエントリを抽出し、当該エントリのフラッシュを実行する。フラッシュ実行部３０は、当該フラッシュの実行を完了すると完了通知を送信する。
【００８２】
ＦＰ管理部２９は、ステップＳ５０２の後、フラッシュ実行部３０からの完了通知を待つ（ステップ５０３）。ＦＰ管理部２９は、当該完了通知を受信した場合、ＦＤＢＩＤ管理テーブル２２で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝に対応するＦＰをＦＩＤ（ｔ−１）に切り換える（すなわちＦＰを一つ切り換える）（ステップＳ５０４）。その後、ＦＰ管理部２９は、ステップＳ５０１に戻り、命令キューが空になるまで同様の処理を繰り返す。その結果、ＦＰ管理部２９は、ＦＩＤを追いかけるように（ただし追い付かないように）フラッシュ対象の面番号を定め、当該面番号を含むエントリのフラッシュが完了した場合にＦＰを切り換える。
【００８３】
図１０は、図４のスイッチ装置において、ＦＤＢＩＤ管理部内のＦＩＨ管理部の処理内容の一例を示すフロー図である。ＦＩＨ管理部２８は、図７の状態ＳＴ１４，ＳＴ１５に示したような処理を行う。図１０において、ＦＩＨ管理部２８は、ＦＰ管理部２９で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝に対応するＦＰの切り換えが生じたか否かを判別する（ステップＳ６０１）。
【００８４】
ＦＰの切り換えが生じた場合、ＦＩＨ管理部２８は、ＦＤＢＩＤ管理テーブル２２で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝に対応するＦＩＨがフラグ有になっているか否かを判別する（ステップＳ６０２）。ＦＩＨがフラグ有の場合、ＦＩＨ管理部２８は、ＦＤＢＩＤ管理テーブル２２で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝に対応するＦＩＤを一つ切り換える（ステップＳ６０３）。また、ＦＩＨ管理部２８は、ＦＤＢＩＤ管理テーブル２２で、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝に対応するＦＩＨをフラグ無に定める（ステップＳ６０４）。
【００８５】
《中継処理部の詳細動作》
図１１は、図４のスイッチ装置において、中継処理部の処理内容の一例を示すフロー図である。図１２は、図１１において、ＦＤＢの学習処理の処理内容の一例を示すフロー図である。図１３は、図１１において、ＦＤＢの検索処理の処理内容の一例を示すフロー図である。中継処理部２１は、図１１に示すように、ユーザフレームを受信した場合に（ステップＳ７０１）、ＦＤＢの学習処理（ステップＳ７０２）とＦＤＢの検索処理（ステップＳ７０３）とを実行する。
【００８６】
ＦＤＢの学習処理（ステップＳ７０２）において、中継処理部２１は、図１２に示すように、まず、リングポートでフレームを受信したか否かを判別する（ステップＳ７０２１）。言い換えれば、中継処理部２１は、受信ポート識別子がＬＡＧＩＤ｛ＬＡＧ［ｊ］｝か否かを判別する。受信ポート識別子がＬＡＧＩＤ｛ＬＡＧ［ｊ］｝の場合、中継処理部２１は、ＦＤＢＩＤ管理テーブル２２から、ＬＡＧＩＤ｛ＬＡＧ［ｊ］｝に対応するＦＩＤおよびＦＩＨを取得する（ステップＳ７０２２）。
【００８７】
次いで、中継処理部２１は、取得したＦＩＨがフラグ無かフラグ有かを判別する（ステップＳ７０２３）。フラグ無の場合、中継処理部２１は、フレームの送信元ＭＡＣアドレスを、受信ポート識別子、ＶＩＤおよびＦＩＤに対応付けてＦＤＢに学習する（ステップＳ７０２４）。すなわち、中継処理部２１は、ＦＩＤ（第１ＩＤ）を、リングポートおよび送信元ＭＡＣアドレスと共にＦＤＢに学習する。
【００８８】
一方、中継処理部２１は、ステップＳ７０２３でＦＩＨ（フラッシュ命令保持フラグ）がフラグ有の場合には、ＦＤＢの学習を行わず、処理を終了する。また、中継処理部２１は、ステップＳ７０２１で受信ポートがリングポートではないポート（例えばユーザポート）の場合、フレームの送信元ＭＡＣアドレスを、受信ポート識別子およびＶＩＤに対応付けてＦＤＢに学習する（ステップＳ７０２５）。
【００８９】
図１１のＦＤＢの検索処理（ステップＳ７０３）において、中継処理部２１は、図１３に示すように、まず、受信したフレームの宛先ＭＡＣアドレスおよびＶＩＤを検索キーとしてＦＤＢを検索し（ステップＳ７０３１）、ＦＤＢの検索結果がヒットかミスヒットかを判別する（ステップＳ７０３２）。ヒットの場合、中継処理部２１は、宛先ポート（宛先ポート識別子）がリングポート（ＬＡＧＩＤ｛ＬＡＧ［ｋ］｝）か否かを判別する（ステップＳ７０３３）。
【００９０】
宛先ポート識別子がＬＡＧＩＤ｛ＬＡＧ［ｋ］｝の場合、中継処理部２１は、ＦＤＢからＬＡＧＩＤ｛ＬＡＧ［ｋ］｝に対応するＦＩＤ（ＦＩＤ［１］とする）を取得する（ステップＳ７０３４）。なお、当該ＦＩＤ［１］は、実際には、例えば、ステップＳ７０３１でのＦＤＢの検索処理の際に取得される。また、中継処理部２１は、ＦＤＢＩＤ管理テーブル２２からＬＡＧＩＤ｛ＬＡＧ［ｋ］｝に対応するＦＩＤ（ＦＩＤ［２］とする）およびＦＩＨを取得する（ステップＳ７０３５）。続いて、中継処理部２１は、取得したＦＩＨがフラグ無かフラグ有かを判別する（ステップＳ７０３６）。ＦＩＨがフラグ無の場合、中継処理部２１は、ＦＩＤ［１］とＦＩＤ［２］とが一致するか否かを判別する（ステップＳ７０３７）。
【００９１】
ステップＳ７０３７で、ＦＩＤ［１］とＦＩＤ［２］とが一致する場合、中継処理部２１は、宛先ヒットとし、宛先ポート識別子（すなわちＬＡＧＩＤ｛ＬＡＧ［ｋ］｝）に対応するリングポート（具体的にはＬＡＧＩＤ｛ＬＡＧ［ｋ］｝のメンバポートのいずれか）にフレームを中継する（ステップＳ７０３８）。一方、ＦＩＤ［１］とＦＩＤ［２］とが不一致の場合、中継処理部２１は、宛先ミスヒットとし、フレームをフラッディングする（ステップＳ７０３９）。具体的には、中継処理部２１は、当該フレームと同一のＶＩＤが割り当てられ、かつ受信ポートを除くポートに当該フレームを中継する。
【００９２】
また、中継処理部２１は、ステップＳ７０３２でＦＤＢの検索結果がミスヒットの場合と、ステップＳ７０３６でＦＩＨ（フラッシュ命令保持フラグ）がフラグ有の場合も、宛先ミスヒットとしてステップＳ７０３９へ移行し、フレームをフラッディングする。さらに、中継処理部２１は、ステップＳ７０３３で、宛先ポートがリングポートではないポート（例えばユーザポート）である場合、ステップＳ７０３８へ移行し、当該宛先ポートにフレームを中継する。
【００９３】
このように、中継処理部２１は、図２３（ｂ）の場合と同様に、ＦＤＢの検索結果に基づき、受信したフレームの宛先ポートがリングポートの場合で、当該リングポートに対応するＦＩＤ（第１ＩＤ）がＦＤＢとＦＤＢＩＤ管理テーブル２２とで一致する場合に宛先ヒットとし、不一致の場合に宛先ミスヒットとしている。これに加えて、中継処理部２１は、図２３（ｂ）の場合と異なり、受信したフレームの宛先ポートがリングポートの場合で、当該リングポートに対応するＦＩＨ（フラッシュ命令保持フラグ）がフラグ有の場合にも、宛先ミスヒットとし、当該フレームをフラッディングしている。これにより、図７でも述べたように、ＦＤＢフラッシュ命令（すなわちＦＩＤの切り換え）を実行できない状況でも、フレームの損失等を防止することができる。
【００９４】
以上、本実施の形態１の中継システムおよびスイッチ装置を用いることで、代表的には、ＦＤＢフラッシュの高速化と共に、ＦＤＢフラッシュに伴う誤動作を防止することが可能になる。
【００９５】
（実施の形態２）
《スイッチ装置の構成（応用例［１］）》
図１４は、本発明の実施の形態２によるスイッチ装置において、主要部の概略構成例を示すブロック図である。図１７は、図１４におけるＦＤＢＩＤテーブルの構造例を示す概略図である。図１４に示すスイッチ装置は、シャーシ型のスイッチ装置となっており、図１のスイッチ装置ＳＷａ〜ＳＷｄの少なくとも一つに適用することができる。当該スイッチ装置は、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］と、管理カードＭＣと、ファブリック経路部３５と、を備える。ファブリック経路部３５は、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］間の通信および複数のラインカードＬＣ［１］〜ＬＣ［ｎ］と管理カードＭＣとの間の通信を仲介する。ファブリック経路部３５は、具体的には、例えば、メッシュ状の配線で構成される場合や、ファブリックカードで構成される場合等がある。
【００９６】
複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のそれぞれは、単数または複数のポートと、インタフェース部２０と、ＥＲＰ制御部２４ｂと、中継処理部３６と、ＦＤＢと、ＦＤＢＩＤテーブル３７と、ＦＤＢＩＤ管理部２３ｂと、ファブリックインタフェース部３８と、を有する。ファブリックインタフェース部３８は、ＥＲＰ制御部２４ｂ、中継処理部３６、およびＦＤＢＩＤ管理部２３ｂと、ファブリック経路部３５との間の通信を仲介する。
【００９７】
図１４の例では、ラインカードＬＣ［１］は、ＬＡＧ［１］ポートのメンバポートであるリングポートＰｒ［１ａ］，Ｐｒ［１ｂ］を備え、ラインカードＬＣ［ｎ］は、ＬＡＧ［２］ポートのメンバポートであるリングポートＰｒ［２ａ］，Ｐｒ［２ｂ］を備える。ただし、勿論、これに限定されず、リングポートＰｒ［１ａ］，Ｐｒ［１ｂ］，Ｐｒ［２ａ］，Ｐｒ［２ｂ］のそれぞれは、ラインカードＬＣ［１］〜ＬＣ［ｎ］のいずれかに適宜設けられればよい。例えば、リングポートＰｒ［１ｂ］は、リングポートＰｒ［１ａ］とは異なるラインカードに設けられてもよい。また、図示は省略されているが、ラインカードＬＣ［１］〜ＬＣ［ｎ］のいずれかは、図４に示したユーザポートＰｕ［１］〜Ｐｕ［ｍ］を適宜備える。
【００９８】
インタフェース部２０およびＦＤＢは、図４の場合と同様である。ＦＤＢＩＤテーブル（ＩＤテーブル）３７は、図１７に示すように、リングポートと、ＦＩＤ（第１ＩＤ）と、ＦＩＨ（フラッシュ命令保持フラグ）との対応関係を保持する。すなわち、ＦＤＢＩＤテーブル３７は、図６に示したＦＤＢＩＤ管理テーブル２２からＦＰを省略したような構造となっている。
【００９９】
また、図１７のＦＤＢＩＤテーブル３７は、ここでは、４ビットのＦＩＤを備える。これに応じて、各ラインカードＬＣ［１］〜ＬＣ［ｎ］のＦＤＢも、４ビットのＦＩＤを備える。ただし、ＦＩＤのビット数は、特にこれに限定されず、１ビット以上であればよく、望ましくは２ビット以上であればよい。なお、実施の形態１で述べたように、ＦＩＤのビット数は、ＦＤＢのハードウェア構成等に依存して上限が定められる。ＦＤＢＩＤ管理部２３ｂは、詳細は後述するが、図４の場合と同様のフラッシュ実行部３０を備え、ＦＤＢＩＤテーブル３７を管理する。
【０１００】
中継処理部３６は、図４の場合と同様のＬＡＧ管理部２６を備え、図１１〜図１３に示したようなＦＤＢの学習処理および検索処理を行う。ただし、中継処理部３６は、ＦＤＢＩＤ管理テーブル（ＩＤ管理テーブル）２２の代わりにＦＤＢＩＤテーブル（ＩＤテーブル）３７を用いてＦＤＢの学習処理および検索処理を実行する。さらに、中継処理部３６は、図４の場合と異なり、ＦＤＢ同期部３９を備える。
【０１０１】
ＦＤＢ同期部３９は、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］間でＦＤＢの保持内容を同期化する機能を備える。具体的には、ＦＤＢ同期部３９は、例えば、自ラインカードのポートでフレームを受信した場合に、受信ポート識別子および当該フレームのヘッダ部分を含む学習用フレームを生成し、ファブリック経路部３５を介して他のラインカードへ送信する。他のラインカードのＦＤＢ同期部３９は、当該学習用フレームに基づいてＦＤＢの学習を行う。
【０１０２】
管理カードＭＣは、ＦＤＢＩＤ管理テーブル（ＩＤ管理テーブル）２２、ＦＤＢＩＤ管理部（ＩＤ管理部）２３ａ、およびＥＲＰ制御部２４ａを備える。ＦＤＢＩＤ管理テーブル２２は、図６の場合と同様の構造を備える。ＦＤＢＩＤ管理部２３ａは、図４の場合と同様のＦＩＤ管理部２７、ＦＩＨ管理部２８およびＦＰ管理部２９を備え、ＦＤＢＩＤ管理テーブル２２を管理する。
【０１０３】
このように、図１４のスイッチ装置は、概略的には、図４に示したＦＤＢＩＤ管理部２３が、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のＦＤＢＩＤ管理部２３ｂと、管理カードＭＣのＦＤＢＩＤ管理部２３ａとに分割されたような構成となっている。さらに、図１４のスイッチ装置は、図４に示したＥＲＰ制御部２４も、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のＥＲＰ制御部２４ｂと、管理カードＭＣのＥＲＰ制御部２４ａとに分割されたような構成となっている。
【０１０４】
なお、インタフェース部２０およびファブリックインタフェース部３８のそれぞれは、例えば、ＡＳＩＣ（Application Specific Integrated Circuit）等に実装される。ＥＲＰ制御部２４ａ，２４ｂは、プロセッサ（ＣＰＵ）によるプログラム処理等によって実現される。ＦＤＢＩＤ管理部２３ａ，２３ｂは、プロセッサ（ＣＰＵ）によるプログラム処理で実現されるか、場合によっては、ＦＰＧＡ（Field Programmable Gate Array）等に実装される。ＦＤＢＩＤ管理テーブル２２およびＦＤＢＩＤテーブル３７は、ＲＡＭ等に実装され、ＦＤＢは、ＣＡＭ（Content Addressable Memory）等に実装される。中継処理部３６は、例えば、ＦＰＧＡ（Field Programmable Gate Array）等に実装される。ただし、各部の具体的な実装形態は、勿論、これに限定されるものではなく、ハードウェアまたはソフトウェアあるいはその組合せを用いて適宜実装されればよい。
【０１０５】
ここで、図１４の構成の前提となる検討事項として、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］は、ＦＩＤ、ＦＰおよびＦＩＨを同時に更新する（言い換えれば同期する）ことが望まれる。複数のラインカードで同期ズレが生じると、様々な問題が生じる恐れがある。代表的には、複数のラインカードのそれぞれが、一時的に、他のラインカードでは無効となっているＦＤＢエントリを有効とみなしてしまうこと等が起こり得る。
【０１０６】
同期を実現するためには、特に、ＦＰの同期に工夫が必要となる。すなわち、ＦＤＢエントリのフラッシュ（すなわち、図９（ａ）等に示したフラッシュの実行要求）を実際に実行するのは、ＦＤＢを備える各ラインカードである。各ラインカードのそれぞれは、図９（ｂ）に示したように、フラッシュの実行要求が蓄積されている限り、任意のタイミングでＦＤＢエントリのフラッシュを開始することができ、その所要時間（言い換えれば実行要求の完了通知を送信するタイミング）も他のラインカードとは異なり得る。このように各ラインカード毎にタイミングが異なり得る状態で、ＦＰを同期化する工夫が必要となる。
【０１０７】
このような同期の実現方式として、例えば、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］間で相互に通信を行う方式が考えられる。この場合、複数のラインカードのそれぞれは、他のラインカードにおけるＦＤＢエントリのフラッシュの進行状態を監視しながらＦＰを定め、さらに、この定めたＦＰを前提としてＦＩＤやＦＩＨを定め、定めたＦＰ，ＦＩＤ，ＦＩＨを同期する必要がある。例えば、ＦＩＤは、ＦＰを追い越さないように定められ、ＦＩＨは、ＦＩＤ＝ＦＰの状態を前提としてフラグ有に定められる。このような処理を複数のラインカードのそれぞれが行うと、通信を含めた各種処理が複雑化する恐れがある。そこで、図１４では、管理カードＭＣがＦＩＤ，ＦＰ，ＦＩＨを集中管理することで、同期を実現する。
【０１０８】
《スイッチ装置の概略動作（応用例［１］）》
図１５は、図１４のスイッチ装置において、管理カードのＦＩＤ管理部の概略動作例を示す説明図である。管理カードＭＣのＦＩＤ管理部２７は、図８に示したような処理を実行する。図１５には、図８に示した各処理の中から、ステップＳ３０１の処理と、ステップＳ３０４，Ｓ３０５の処理の具体例が示されている。図１５において、まず、ラインカードＬＣ［１］は、ＬＡＧ［１］ポートでＲ−ＡＰＳ（ＳＦ）フレームを受信する。ラインカードＬＣ［１］のＥＲＰ制御部２４ｂは、受信したＲ−ＡＰＳ（ＳＦ）フレームが自身宛てか否かを判別し、自身宛ての場合には、当該Ｒ−ＡＰＳ（ＳＦ）フレームをファブリック経路部３５を介して管理カードＭＣのＥＲＰ制御部２４ａに向けて送信する（ステップＳ３００）。
【０１０９】
管理カードＭＣのＥＲＰ制御部２４ａは、当該Ｒ−ＡＰＳ（ＳＦ）フレームを受信し、その内容を解釈した結果、ＦＩＤ管理部２７に向けてＬＡＧ［１］ポートおよびＬＡＧ［２］ポートのＦＤＢフラッシュ命令を送信する（ステップＳ３０１）。ＦＩＤ管理部２７は、当該ＦＤＢフラッシュ命令を受信し（ステップＳ３０１）、図８のステップＳ３０２，Ｓ３０３の処理を経て、ステップＳ３０４またはステップＳ３０５の処理を行う。ステップＳ３０４において、ＦＩＤ管理部２７は、ＦＤＢＩＤ管理テーブル（ＩＤ管理テーブル）２２のＦＩＤ（第１ＩＤ）を切り換える。この際に、ＦＩＤ管理部２７は、併せて、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のそれぞれに向けてＦＩＤの切り換えを指示する。
【０１１０】
複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のそれぞれのＦＤＢＩＤ管理部２３ｂは、当該管理カードＭＣからのＦＩＤの切り換え指示を受信し、その指示通りにＦＤＢＩＤテーブル３７のＦＩＤを切り換える。その結果、管理カードＭＣのＦＤＢＩＤ管理テーブル２２および複数のラインカードのＦＤＢＩＤテーブル３７において、ＦＩＤの同期が行われる。また、ステップＳ３０５におけるＦＩＨの同期も、当該ＦＩＤの場合と同様にして行われる。
【０１１１】
図１６は、図１４のスイッチ装置において、管理カードのＦＰ管理部の概略動作例を示す説明図である。管理カードＭＣのＦＰ管理部２９は、図９（ａ）および図９（ｂ）に示したように、ＦＤＢＩＤ管理テーブル（ＩＤ管理テーブル）２２のＦＰ（第２ＩＤ）を切り換える処理を実行する。図１６には、図９（ｂ）に示した各処理の中から、ステップＳ５０２の処理と、ステップＳ５０３の処理の具体例が示されている。
【０１１２】
図１６のステップＳ５０２において、管理カードＭＣのＦＰ管理部２９は、ＦＰの切り換えに際し、まず、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のそれぞれに向けてＦＤＢエントリのフラッシュの実行要求を発行する。複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のそれぞれのＦＤＢＩＤ管理部２３ｂは、当該実行要求を受信し、フラッシュ実行部３０を用いて当該実行要求に基づくＦＤＢエントリのフラッシュを実行する。複数のラインカードのそれぞれのＦＤＢＩＤ管理部２３ｂは、実行要求に基づくフラッシュを完了すると、フラッシュの完了通知を管理カードＭＣへ送信する。
【０１１３】
一方、管理カードＭＣのＦＰ管理部２９は、ステップＳ５０２において実行要求を発行したのち、ステップＳ５０３において、当該実行要求に基づくフラッシュの完了通知を複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のそれぞれから受信するまで待つ。そして、ＦＰ管理部２９は、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のそれぞれから完了通知を受信した場合に、ステップＳ５０４において、ＦＰの切り換えを行う。
【０１１４】
なお、図示は省略するが、管理カードＭＣのＦＩＨ管理部２８の処理に関しても、図１５の場合と同様にして行われる。すなわち、ＦＩＨ管理部２８は、図１０のステップＳ６０３においてＦＤＢＩＤ管理テーブル２２のＦＩＤを切り換えた場合や、ステップＳ６０４においてＦＤＢＩＤ管理テーブル２２のＦＩＨをフラグ無に定めた場合、その旨を複数の複数のラインカードＬＣ［１］〜ＬＣ［ｎ］のそれぞれに向けて指示する。複数のラインカードのそれぞれは、当該指示に応じて、ＦＤＢＩＤテーブル３７を更新する。
【０１１５】
以上、本実施の形態２のスイッチ装置を用いることで、シャーシ型の構成を用いた効率的な仕組みで実施の形態１で述べたような各種効果を得ることが可能になる。すなわち、管理カードＭＣがＦＩＤ，ＦＰ，ＦＩＨを集中管理することで、複数のラインカードＬＣ［１］〜ＬＣ［ｎ］間でのＦＩＤ，ＦＰ，ＦＩＨの同期を容易に実現することが可能になる。
【０１１６】
（実施の形態３）
《スイッチ装置の概略動作（応用例［２］）》
図１８は、本発明の実施の形態３によるスイッチ装置において、管理カードのＦＩＤ管理部の概略動作例を示す説明図である。本実施の形態３のスイッチ装置は、ＦＩＨ（フラッシュ命令保持フラグ）のフラグ有がＦＩＤ（第１ＩＤ）の予約値（ここでは「０ｘＦ」）を用いて定められることを除いて、実施の形態２のスイッチ装置と同様である。
【０１１７】
図１８において、管理カードＭＣのＦＩＤ管理部２７は、図８のステップＳ３０５に示したように、ＦＤＢＩＤ管理テーブル（ＩＤ管理テーブル）２２のＦＩＨ（フラッシュ命令保持フラグ）をフラグ有に定める。この際に、ＦＩＤ管理部２７は、複数のラインカード（ここでは代表的にＬＣ［ｎ］を図示）のそれぞれに向けてＦＤＢＩＤテーブル（ＩＤテーブル）３７のＦＩＤ（第１ＩＤ）を予約値（「０ｘＦ」）に定めるように指示する。これに応じて、複数のラインカードのそれぞれのＦＤＢＩＤ管理部２３ｂは、ＦＤＢＩＤテーブル３７の所定のＬＡＧＩＤ（ここでは｛ＬＡＧ［ｉ］｝，｛ＬＡＧ［ｉ＋１］｝）に対応するＦＩＤを「０ｘＦ」に定める。
【０１１８】
また、これに伴い、ＦＩＤ管理部２７は、図８のステップＳ３０４において、ＦＤＢＩＤ管理テーブル２２のＦＩＤ（第１ＩＤ）を、所定の範囲内で予約値を除いた範囲（ここでは「０ｘ０」〜「０ｘＥ」）を巡回するように順次切り換え、切り換え後の値を複数のラインカードに指示する。同様に、ＦＩＨ管理部２８も、図１０のステップＳ６０３において、ＦＤＢＩＤ管理テーブル２２のＦＩＤを、予約値を除いた範囲を巡回するように順次切り換え、切り換え後の値を複数のラインカードに指示する。
【０１１９】
ただし、ＦＩＨ管理部２８は、図１０のステップＳ６０４において、ＦＤＢＩＤ管理テーブル２２のＦＩＨをフラグ無に定めた場合、実施の形態２の場合と異なり、複数のラインカードへの指示は行わない。この複数のラインカードへの指示は、ステップＳ６０３の処理を行うことで、結果的に行われることになる。なお、複数のラインカードの中継処理部３６は、図１１〜図１３に示した中継処理に際し、ＦＩＨがフラグ有かフラグ無かをＦＩＤが予約値（「０ｘＦ」）であるか否かで判別する。
【０１２０】
以上、本実施の形態３のスイッチ装置を用いることで、実施の形態２で述べた各種効果に加えて、さらに、管理カードＭＣと複数のラインカードＬＣ［１］〜ＬＣ［ｎ］との間の通信を簡素化することが可能になる。すなわち、実施の形態２の方式の場合、例えば、管理カードと複数のラインカードとの間の通信で使用する制御フレームには、予め、ＦＩＤの格納領域とＦＩＨの格納領域とを設ける必要がある。一方、実施の形態３の方式を用いた場合、このＦＩＨの格納領域を削除することが可能になる。なお、予約値は、勿論、「０ｘＦ」に限らず、他の値であってもよい。
【０１２１】
（実施の形態４）
《スイッチ装置の概略動作（変形例［１］）》
図１９（ａ）は、本発明の実施の形態４によるスイッチ装置において、主要部の概略構成例を示すブロック図であり、図１９（ｂ）は、図１９（ａ）のスイッチ装置を適用した中継システムの構成例を示す概略図である。図２０（ａ）は、図１９（ａ）におけるインスタンス管理テーブルの構造例を示す概略図であり、図２０（ｂ）は、図１９（ａ）におけるＦＤＢＩＤ管理テーブルの構造例を示す概略図である。
【０１２２】
図１９（ａ）に示すスイッチ装置ＳＷは、図４に示した構成例と比較して、リングポートＰｒ［３ａ］，Ｐｒ［３ｂ］およびインスタンス管理テーブル４０が追加される点と、これに伴いＦＤＢＩＤ管理テーブルの保持内容が異なる点と、が異なっている。リングポートＰｒ［３ａ］，Ｐｒ［３ｂ］は、ＬＡＧ［３］ポートを構成する。
【０１２３】
例えば、ＩＴＵ−Ｔ  Ｇ．８０３２に規定されたリングプロトコルでは、図１９（ｂ）に示されるように、２個のリングネットワークＡ，Ｂ（１０ａ，１０ｂ）で共有リンクを共有するような中継システムが用いられる場合がある。ここでは、リングネットワークＡ（１０ａ）は、スイッチ装置ＳＷａ→ＳＷｂ→ＳＷｃ→ＳＷｄで構成され、リングネットワークＢ（１０ｂ）は、スイッチ装置ＳＷａ→ＳＷｂ→ＳＷｅ→ＳＷｆで構成される。そして、スイッチ装置ＳＷａとスイッチ装置ＳＷｂとの間のリンクが共有リンクとなる。
【０１２４】
スイッチ装置ＳＷａのＬＡＧ［１］ポート、ＬＡＧ［２］ポート、ＬＡＧ［３］ポートは、それぞれ、スイッチ装置ＳＷｂ，ＳＷｄ，ＳＷｆに接続される。リングネットワークＡ（１０ａ）には、ＶＬＡＮ識別子ＶＩＤ「１」が割り当てられ、リングネットワークＢ（１０ｂ）には、ＶＬＡＮ識別子ＶＩＤ「２」が割り当てられる。
【０１２５】
このような構成において、例えば、スイッチ装置ＳＷａのインスタンス管理テーブル４０は、予めユーザ設定に基づき、図２０（ａ）に示すように、ＬＡＧＩＤとＶＬＡＮ識別子ＶＩＤとの組合せをインスタンスＩＤに対応付けて保持する。例えば、｛ＬＡＧ［２］｝とＶＩＤ「１」との組合せと、｛ＬＡＧ［１］｝とＶＩＤ「１」との組合せは、共にインスタンスＩＤ「１０」に対応付けられる。また、｛ＬＡＧ［１］｝とＶＩＤ「２」との組合せと、｛ＬＡＧ［３］｝とＶＩＤ「２」との組合せは、共にインスタンスＩＤ「１１」に対応付けられる。
【０１２６】
このように、インスタンスＩＤは、各リングポート（ＬＡＧポート）がＶＬＡＮ識別子ＶＩＤとの組合せによって属するリングネットワークＩＤを表す。インスタンスＩＤ「１０」は、図１９（ｂ）のリングネットワークＡ（１０ａ）のリングネットワークＩＤを表し、インスタンスＩＤ「１１」は、図１９（ｂ）のリングネットワークＢ（１０ｂ）のリングネットワークＩＤを表す。これに応じて、スイッチ装置ＳＷａのＦＤＢＩＤ管理テーブル２２は、図２０（ｂ）に示すように、図６におけるＬＡＧＩＤの代わりに、インスタンスＩＤを保持する。これにより、ＦＤＢＩＤ管理部２３は、ＦＩＤ等を、ＬＡＧＩＤ単位ではなくインスタンスＩＤ単位で管理する。
【０１２７】
例えば、スイッチ装置ＳＷａのＥＲＰ制御部２４は、ＬＡＧ［２］ポートの障害を検出した場合や、ＶＩＤ「１」を含むＲ−ＡＰＳ（ＳＦ）フレームをＬＡＧ［１］ポートまたはＬＡＧ［２］ポートで受信した場合、インスタンス管理テーブル４０に基づき、インスタンスＩＤ「１０」を対象とするＦＤＢフラッシュ命令を送信する。これに応じて、スイッチ装置ＳＷａのＦＩＤ管理部２７は、ＦＤＢＩＤ管理テーブル２２におけるインスタンスＩＤ「１０」のＦＩＤを更新する。
【０１２８】
別の例として、スイッチ装置ＳＷａのＥＲＰ制御部２４は、ＬＡＧ［１］ポートの障害を検出した場合、インスタンス管理テーブル４０に基づき、インスタンスＩＤ「１０」「１１」を対象とするＦＤＢフラッシュ命令を送信する。これに応じて、スイッチ装置ＳＷａのＦＩＤ管理部２７は、ＦＤＢＩＤ管理テーブル２２におけるインスタンスＩＤ「１０」のＦＩＤと、インスタンスＩＤ「１１」のＦＩＤとを更新する。
【０１２９】
また、スイッチ装置ＳＷａの中継処理部２１は、ＦＤＢの学習処理（図１２のステップＳ７０２２）に際し、受信ポート識別子（すなわちＬＡＧＩＤ）とＶＬＡＮ識別子ＶＩＤからインスタンス管理テーブル４０に基づきインスタンスＩＤを取得し、さらに、ＦＤＢＩＤ管理テーブル２２に基づき、当該インスタンスＩＤに対応するＦＩＤ等を取得する。一方、当該中継処理部２１は、ＦＤＢの検索処理（図１３のステップＳ７０３５）に際し、宛先ポート識別子（すなわちＬＡＧＩＤ）とＶＬＡＮ識別子ＶＩＤからインスタンス管理テーブル４０に基づきインスタンスＩＤを取得し、さらに、ＦＤＢＩＤ管理テーブル２２に基づき、当該インスタンスＩＤに対応するＦＩＤ等を取得する。
【０１３０】
以上、本実施の形態４のスイッチ装置および中継システムを用いることで、前述した各実施の形態で述べた効果を、マルチリング構成においても得ることが可能になる。なお、本実施の形態４のスイッチ装置を実施の形態２の構成例に適用した場合、図１７のＦＤＢＩＤテーブル（ＩＤテーブル）３７は、図２０（ｂ）のＦＤＢＩＤ管理テーブル２２の場合と同様に、ＬＡＧＩＤの代わりにインスタンスＩＤを保持する。また、図２０（ａ）のインスタンス管理テーブル４０は、例えば、図１４における各ラインカードＬＣ［１］〜ＬＣ［ｎ］と管理カードＭＣにそれぞれ設けられる。
【０１３１】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。例えば、前述した実施の形態は、本発明を分かり易く説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、各実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１３２】
例えば、ここでは、中継システムのリングプロトコルとして、ＩＴＵ−Ｔ  Ｇ．８０３２に規定されたリングプロトコルを用いる場合を例としたが、勿論、他のリングプロトコルを用いる場合であっても同様に適用して同様の効果が得られる。
【符号の説明】
【０１３３】
１０，１０ａ，１０ｂ  リングネットワーク
１１ａ〜１１ｄ  ユーザ網
１２  通信経路
１５ａｂ，１５ｂｃ，１５ｃｄ，１５ａｄ  ＣＣＭ監視区間
２０  インタフェース部
２１，３６  中継処理部
２２，２２’  ＦＤＢＩＤ管理テーブル
２３，２３ａ，２３ｂ  ＦＤＢＩＤ管理部
２４，２４ａ，２４ｂ  ＥＲＰ制御部
２５  ＶＩＤフィルタ
２６  ＬＡＧ管理部
２７  ＦＩＤ管理部
２８  ＦＩＨ管理部
２９  ＦＰ管理部
３０  フラッシュ実行部
３１  ＯＡＭ処理部
３５  ファブリック経路部
３７  ＦＤＢＩＤテーブル
３８  ファブリックインタフェース部
３９  ＦＤＢ同期部
４０  インスタンス管理テーブル
ＢＫ  閉塞状態
ＬＣ［１］〜ＬＣ［ｎ］  ラインカード
ＭＣ  管理カード
ＭＥＰａ１〜ＭＥＰｄ１，ＭＥＰａ２〜ＭＥＰｄ２  監視ポイント
Ｐｒ［１ａ］，Ｐｒ［１ｂ］，Ｐｒ［２ａ］，Ｐｒ［２ｂ］，Ｐｒ［３ａ］，Ｐｒ［３ｂ］  リングポート
Ｐｕ［１］〜Ｐｕ［ｍ］  ユーザポート
ＳＷ，ＳＷａ〜ＳＷｆ  スイッチ装置
【図１】
0006541490.tif 000002
【図２】
0006541490.tif 000003
【図３】
0006541490.tif 000004
【図４】
0006541490.tif 000005
【図５】
0006541490.tif 000006
【図６】
0006541490.tif 000007
【図７】
0006541490.tif 000008
【図８】
0006541490.tif 000009
【図９】
0006541490.tif 000010
【図１０】
0006541490.tif 000011
【図１１】
0006541490.tif 000012
【図１２】
0006541490.tif 000013
【図１３】
0006541490.tif 000014
【図１４】
0006541490.tif 000015
【図１５】
0006541490.tif 000016
【図１６】
0006541490.tif 000017
【図１７】
0006541490.tif 000018
【図１８】
0006541490.tif 000019
【図１９】
0006541490.tif 000020
【図２０】
0006541490.tif 000021
【図２１】
0006541490.tif 000022
【図２２】
0006541490.tif 000023
【図２３】
0006541490.tif 000024