"VRRPVirtualRouterRedundancyProtocolにより、N台の現用系ルータとm台の予備系ルータとをNm冗長化する冗長化システムであってN,mはそれぞれ2以上の整数、N台の前記現用系ルータそれぞれに対して、別々のVRRPグループを構成し、N個の各VRRPグループは、他のどのVRRPグループにも属さない1台の前記現用系ルータと、その前記現用系ルータの障害時に現用系に切り替わる候補であるm台の前記予備系ルータとを含めて構成され、m台の各前記予備系ルータは、設定記憶部と、イベント検出部と、イベント対処部とを有しており、前記設定記憶部には、VRRPグループごとに、自身の現用系として選択される頻度を示すプライオリティと、自身の動作状態が現用系か予備系かを示すステートとが格納されており、前記イベント検出部は、所定のVRRPグループに属する前記現用系ルータに障害が発生したときに、前記所定のVRRPグループ内の前記プライオリティが最高値の前記予備系ルータを、新たな現用系として切り替える旨の切り替えイベントを、前記設定記憶部の前記ステートを監視することで検出し、前記イベント対処部は、前記イベント検出部により検出された前記切り替えイベントの対象となる前記所定のVRRPグループを特定し、その特定した前記所定のVRRPグループ以外のVRRPグループについて、自身の現用系の選出頻度を下げる旨の設定を前記設定記憶部に出力することを特徴とする冗長化システム。前記イベント検出部は、自身のSNMPSimpleNetworkManagementProtocol-MIBManagementInformationBase内のvrrpOperStateの値を前記ステートとして参照して、前記切り替えイベントを検出することを特徴とする請求項1に記載の冗長化システム。前記イベント検出部は、自身のsyslogに出力される特定文字列として、自身が予備系から現用系へと切り替わる旨を示す文字列を監視して、前記切り替えイベントを検出することを特徴とする請求項1に記載の冗長化システム。前記イベント対処部は、前記自身の現用系の選出頻度を下げる旨の設定として、前記所定のVRRPグループ以外のVRRPグループについて、前記設定記憶部に格納されている前記プライオリティの値を下げることを特徴とする請求項1ないし請求項3のいずれか1項に記載の冗長化システム。前記イベント対処部は、前記自身の現用系の選出頻度を下げる旨の設定として、前記所定のVRRPグループ以外のVRRPグループについて、自身の前記予備系ルータとしての登録を離脱することを特徴とする請求項1ないし請求項3のいずれか1項に記載の冗長化システム。前記イベント対処部は、前記自身の現用系の選出頻度を下げる旨の設定をした後に、自身のリセット処理、および、自身に割り当てられているアドレスの変更処理のうちの少なくとも1つの処理を実行することを特徴とする請求項1ないし請求項5のいずれか1項に記載の冗長化システム。Nm冗長化構成において、複数台の現用系ルータに障害が発生したときにでも、予備系ルータへの切替に伴って、Nm冗長化システム全体としての通信性能の低下は、なるべく発生しないようにする必要がある。例えば、複数台の現用系ルータの役割を、同じ1台の予備系ルータが重複して代行すると、その予備系ルータにおいて複数台の現用系ルータ分の通信フローが集中してしまい、過負荷となって性能低下を発生させてしまう。予備系ルータの性能低下に伴って、パケットロス呼損などやパケットの送信遅延などの通信サービスへの影響も生じてしまう。そこで、本発明は、Nm冗長化構成において、複数台の現用系ルータに障害が発生したときにでも、通信性能の低下を抑制することを、主な目的とする。前記課題を解決するために、本発明は、VRRPVirtualRouterRedundancyProtocolにより、N台の現用系ルータとm台の予備系ルータとをNm冗長化する冗長化システムであってN,mはそれぞれ2以上の整数、N台の前記現用系ルータそれぞれに対して、別々のVRRPグループを構成し、N個の各VRRPグループが、他のどのVRRPグループにも属さない1台の前記現用系ルータと、その前記現用系ルータの障害時に現用系に切り替わる候補であるm台の前記予備系ルータとを含めて構成され、m台の各前記予備系ルータが、設定記憶部と、イベント検出部と、イベント対処部とを有しており、前記設定記憶部には、VRRPグループごとに、自身の現用系として選択される頻度を示すプライオリティと、自身の動作状態が現用系か予備系かを示すステートとが格納されており、前記イベント検出部が、所定のVRRPグループに属する前記現用系ルータに障害が発生したときに、前記所定のVRRPグループ内の前記プライオリティが最高値の前記予備系ルータを、新たな現用系として切り替える旨の切り替えイベントを、前記設定記憶部の前記ステートを監視することで検出し、前記イベント対処部が、前記イベント検出部により検出された前記切り替えイベントの対象となる前記所定のVRRPグループを特定し、その特定した前記所定のVRRPグループ以外のVRRPグループについて、自身の現用系の選出頻度を下げる旨の設定を前記設定記憶部に出力することを特徴とする。これにより、Nm冗長化構成において、複数台の現用系ルータに障害が発生したときにでも、所定のVRRPグループについて現用系として切り替わったルータは、他のVRRPグループについて現用系の選出頻度が下がるので、現用系の重複代行に伴う通信性能の低下を抑制することができる。本発明は、前記イベント検出部が、自身のSNMPSimpleNetworkManagementProtocol-MIBManagementInformationBase内のvrrpOperStateの値を前記ステートとして参照して、前記切り替えイベントを検出することを特徴とする。これにより、イベント検出部として既存のsnmpmibの実装を活用することで、VRRPの制御に関する開発量実装量を削減できる。本発明は、前記イベント検出部が、自身のsyslogに出力される特定文字列として、自身が予備系から現用系へと切り替わる旨を示す文字列を監視して、前記切り替えイベントを検出することを特徴とする。これにより、イベント検出部として既存のsyslogの実装を活用することで、VRRPの制御に関する開発量実装量を削減できる。本発明は、前記イベント対処部が、前記自身の現用系の選出頻度を下げる旨の設定として、前記所定のVRRPグループ以外のVRRPグループについて、前記設定記憶部に格納されている前記プライオリティの値を下げることを特徴とする。これにより、自身の現用系の選出頻度が下がるものの、冗長化システムの冗長性が無くなる緊急的な状況下において、N台の現用系を確実に確保することができる。本発明は、前記イベント対処部が、前記自身の現用系の選出頻度を下げる旨の設定として、前記所定のVRRPグループ以外のVRRPグループについて、自身の前記予備系ルータとしての登録を離脱することを特徴とする。これにより、自身の現用系の選出頻度を0とすることで、現用系の重複代行に伴う通信性能の低下を確実に抑制することができる。本発明は、前記イベント対処部が、前記自身の現用系の選出頻度を下げる旨の設定をした後に、自身のリセット処理、および、自身に割り当てられているアドレスの変更処理のうちの少なくとも1つの処理を実行することを特徴とする。これにより、自身の現用系への代行に伴って必要な各追加処理を実行させることができる。本発明によれば、Nm冗長化構成において、複数台の現用系ルータに障害が発生したときにでも、通信性能の低下を抑制することができる。以下、本発明の一実施形態について、図面を参照して詳細に説明する。図1は、冗長化システムの例として、43冗長化システムを示す構成図である。冗長化システムは、レイヤ2スイッチであるスイッチ2間を、複数台のルータ1で接続することで、構成される。各装置内の黒塗りの矩形は、物理インタフェースを表す。なお、図1の冗長化システムを構成する各装置ルータ1、スイッチ2は、CPUCentralProcessingUnitとメモリとハードディスク記憶手段と物理インタフェースを有するコンピュータとして構成され、このコンピュータは、CPUが、メモリ上に読み込んだプログラムを実行することにより、各処理部を動作させる。また、図1の冗長化システムを構成する各装置の台数は、図1に例示した台数に限定されず、任意の台数としてもよい。ルータ1には、自装置のID情報として、初期状態で現用系として動作するMS1~MS4と初期状態で予備系として動作するBK1~BK3とがそれぞれ割り当てられている。なお、以下の説明では、masterとは現用系を示し、backupとは予備系を示す。スイッチ2aは、1921682024のセグメントの物理インタフェース図1では下側の7つと、一方の外部ネットワークと接続するための物理インタフェース図1では上側の1つとを有する。スイッチ2bは、1921681024のセグメントの物理インタフェース図1では上側の7つと、他方の外部ネットワークと接続するための物理インタフェース図1では下側の1つとを有する。なお、1921681024のセグメントには、VRRPが設定される。なお、VRRPが設定される物理インタフェースの数を、ルータ1台あたり1つとしたが、複数の物理インタフェースに対して、VRRPを設定してもよい。そして、現用系装置の複数の物理インタフェースに対して、VRRPを設定するときには、予備系装置においても現用系装置と同数の物理インタフェースに対して、VRRPを設定することが望ましい。なぜなら、現用系装置の物理インタフェース数よりも予備系装置の物理インタフェース数が少ないとすると、現用系装置から予備系装置への切替に伴って、冗長化システム全体として性能劣化が発生するからである。図2は、図1の冗長化システムにおける障害発生時の切り替え動作の概要を示す説明図である。まず、図2aの初期状態では、7台のルータ1のうちのルータIDにMSが割り当てられている4台のルータ1が現用系として動作している図中では、現用系のルータ1には太枠を示している。例えば、ルータ1MS1は、VRRPのVRID=1が割り当てられている。次に、図2bの単一障害では、ルータ1MS1に障害が発生してしまう。そのため、ルータ1BK1は、VRID=1における現用系に切り替わり、ルータ1MS1の役割を代行する。そして、図2cの二重障害では、ルータ1MS2にも障害が発生してしまう。そのため、ルータ1BK2は、VRID=2における現用系に切り替わり、ルータ1MS2の役割を代行する。ここで、ルータ1BK1が、VRID=1での現用系と、VRID=2での現用系とを重複して代行しないように、図7で後記するように、所定のVRIDにおいて、予備系から現用系へと切り替わったルータ1は、他のVRIDについて現用系への選出頻度を下げる現用系へと選ばれなくする、または、現用系へと選ばれにくくする旨の排他制御を行う。図3は、図1のルータ1の詳細を示す構成図である。以下、冗長化システムに用いられるルータ1として、CiscoSystems社のルータを例示するが、他のベンダのルータを用いてもよいし、マルチベンダによる冗長化システム構成としてもよい。各ルータ1は、VRRP実行部11と、設定記憶部12と、イベント検出部13と、イベント対処部14と、ポリシ記憶部15とを有する。VRRP実行部11は、非特許文献1などで規定されたVRRPを実行する手段を有する。例えば、CiscoSystems社のルータ1では、以下の文献に記載されているように、ルータ1に実装されているVRRPを実行するための各コマンドをネットワーク管理者が打ち込むことで、VRRPをルータ1で実行させる。CiscoSystemsInc、ConfiguringVRRP、[online]、[2011年7月24日検索]、インターネットURL:httpwwwciscocomenUSdocsiosipappconfigurationguideipappvrrppdf設定記憶部12は、VRRP実行部11がVRRPの実行の際に参照するVRRPに関する設定データを格納する詳細は、後記する表1を参照。主な設定データには、自身が現用系として動作しているか、または、予備系として動作しているかを示すstateや、VRIDごとの現用系の選出頻度選ばれやすさを示すための優先度であるpriorityなどが挙げられる。イベント検出部13とイベント対処部14とは、ポリシ記憶部15に格納されているポリシデータに従って、連動して動作する。ポリシデータは、イベント検出部13が検出監視対象とするイベントと、イベント対処部14がイベント検出時に実行するアクションとを対応づけるデータである。ポリシデータは、現用系から予備系への切替イベントに関するものと、予備系から現用系への切替イベントに関するものとがある。以下の説明では、主に後者の予備系から現用系への切替イベントの詳細を説明する。イベント検出部13が検出する予備系から現用系への切替イベントとして、2つ例示する。イベントsnmpmib内のvrrpOperStateの値がbackupからmasterへ変更されると、検出したvrrpOperStateに対応する同じVrrpOperEntryに属するVrIdを、変更対象VRIDとして特定するなお、SNMPSimpleNetworkManagementProtocol-MIBManagementInformationBaseとは、ルータ1の設定情報を格納するデータベースであり、例えば、以下の文献に記載されている。CiscoSystemsInc、MIBfile、[online]、[2011年7月24日検索]、インターネットURL:ftpftpciscocompubmibsv1VRRPMIBV1SMImyイベントsyslog内の現用系から予備系への切替を示す特定文字列として、STATECHANGEおよびBackuptMasterを含む行が追加されると、その行に含まれるvridの数値を変更対象VRIDとして特定するなお、syslogとは、ルータ1の動作状況やメッセージなどのログが随時テキストデータとして書き出すプログラムおよびその出力ファイルであり、例えば、以下の文献に記載されている。CiscoSystemsInc、SupportInformationforCiscoSyslogs、[online]、[2011年7月24日検索]、インターネットURL:httpwwwciscocomenUSdocsnetmgmtactivenetworkabstraction367vnereferenceguidesyslogspdf予備系から現用系への切替イベントを受け、イベント対処部14が実行するアクションとして、2つ例示する。アクション変更対象VRID以外の各VRIDをotherとすると、vrrppriority1をTclToolCommandLanguageスクリプトで実行する。このアクションは、otherで指定されたVRIDについて、自装置のpriorityを1に設定する旨のコマンドであり、このコマンドの実行により、自身が現用系へと選ばれにくくする。アクション変更対象VRID以外の各VRIDをotherとすると、novrrpをTclスクリプトで実行する。このアクションは、otherで指定されたVRIDについて、自身がVRRPのグループから離脱する旨のコマンドであり、このコマンドの実行により、自身が現用系へと選ばれなくなる。なお、Tclスクリプトとは、管理者がコマンドラインを介してルータへの制御コマンドを入力し、その制御コマンドをルータ1に実行させるためのインタフェースであり、例えば、以下の文献に記載されている。CiscoSystemsInc、CiscoIOSフル活用への道:第1回EEMEmbeddedEventManager、[online]、[2011年7月24日検索]、インターネットURL:httpwwwciscocomwebJPnewscisconewslettertechEEMindexhtmlさらに、イベント対処部14は、前記した2つのアクションのいずれかを実行することに加え、リセット処理などのVRRP切り替え直後に現用系になったルータ1にて必要となる処理IPアドレスの変更などを追加処理として実行してもよい。このように、ポリシ記憶部15に格納するポリシデータとして、snmpmib、syslog、Tclスクリプトなどの既存の機能を使用することで、VRRPの制御に関する開発量実装量を削減でき、外付けでVRRPの制御手段を簡単に追加できる。図4~図6は、RFC2787DefinitionsofManagedObjectsforVirtualRouterRedundancyProtocolに規定されているvrrpmibからの抜粋を記す。例えば、図5のvrrpOperEntryは、vrrpOperVrId、vrrpOperStateなどの値からなる1つ要素の配列SEQUENCEである。また、図6のvrrpOperStateは、初期化中を示すinitializeと、自身が予備系として動作している旨を示すbackupと、自身が現用系として動作している旨を示すmasterとがそれぞれ定義されている。なお、masterとは、masterを示す数値3という意味である。以下、この数値は省略する。表1は、図2aの初期状態における、各ルータ1の設定記憶部12に記憶されるvrrpmibのパラメータを表形式にしたものである。この表の行要素は、各ルータ1MS1~MS4、BK1~BK3を示し、この表の列要素は、各ルータ1のVRID1~4ごとのパラメータ内容を示す。表のパラメータpriorityは、VRIDごとの現用系の選出頻度選ばれやすさを示すための優先度であるvrrpOperPriority図5参照を示す。表のパラメータstateは、自身が現用系として動作しているか、または、予備系として動作しているかを規定するvrrpOperState図5参照を示す。表のパラメータipは、自身のVRRPを動作させる物理インタフェースに割り当てるIPアドレスであるvrrpOperMasterIpAddr図5参照を示す。まず、表1の上から4行は、初期状態として現用系として動作する各ルータ1の設定を示す。自身が属するVRID例えば、MS1ならVRID=1については、stateをmasterとし、そのpriorityを250とし、そのipを1921681024のセグメントのいずれかの値とする。自身が属さないVRID例えば、MS1ならVRID=2~4については、VRRPのグループには不参加であり、各パラメータの値を設定しない。次に、表1の下から3行は、初期状態として予備系として動作する各ルータ1の設定を示す。各ルータ1は、全てのVRIDグループに属するとともに、それらの各グループでの予備系として動作する。そのため、全VRIDについて、stateをbackupとし、そのpriorityを現用系の250よりも低い値とし、そのipを現用系の値と同じように1921681024のセグメントのいずれかの値とする。表1では、priorityの値として、表内のレコードの位置が下になるほど小さい値245→240→235になるように、全VRIDで同じ値を割り当てているが、あくまでこの割り当て方法は一例であり、現用系の250よりも低い値であれば、2以上の任意の値を割り当ててもよいし、全VRIDで別々の値を割り当ててもよい。なお、priorityとstateとの関係について、stateは、初期時にはinitializeであるが、ルータ1間でマルチキャストの制御メッセージを交換することで、同じVRIDグループ内でpriorityが最大となるルータ1を特定し、その特定したルータ1をmasterとし、それ以外のルータ1をbackupとする。以上説明したように、13冗長化システムを4つ分VRIDを4つ分各ルータ1BK1~BK3に構築することにより、43冗長化システムを形成する。これにより、VRRP実行部11は、11冗長化や1m冗長化を実行できる既存のVRRPを利用して、設定記憶部12内の設定データによって、Nmシステムを構築することができる。図7は、ルータ1の障害対処処理を示すフローチャートである。S101では、ルータ1は、電源の投入により、自装置の起動に関する処理を行う。例えば、各ルータ1は、装置間でマルチキャストを投げ合う事によりVRIDグループ内でpriorityが最大となるものが、masterとなり、他はbackupとなる。また、後記のS111で参照されるプリエンプトモードvrrpOperPreemptModeは、不用意な切り替えを防ぐために、起動直後では、全装置について全VRIDにて無効とする故障以外をトリガとする切り替えは行われない。S102として、ルータ1は、自身が予備系として動作しているか否かを、表1の各VRIDのstate値を参照して判定する。S102でYesならS103に進み、NoならS105に進む。S103として、イベント検出部13は、前記したように、予備系から現用系への切替イベントを検出するまで待機しS103,No、検出したときにS103,YesS104に進む。なお、切替イベントの発生処理を説明する。例えば、ルータ1BK1のVRRP実行部11は、ルータ1MS1のVRRP実行部11から正常動作中に受信し続けるマルチキャストの生存信号を、所定時間受信しなくなったときに、VRID=1における現用系であるルータ1MS1の障害発生を検知する。そして、ルータ1BK1のVRRP実行部11は、他の予備系のルータ1BK2、BK3との間でVRID=1におけるpriority値245240235を比較し、最高値のpriority値245をもつ自身のルータ1BK1を、新たな現用系として切替イベントを発生させる。S104として、ルータ1BK1のイベント対処部14は、図2bで示すような障害によりS103で切替イベントを検出したときには、表2に示すように、設定記憶部12のパラメータを変更することで、他のVRID2~4について、現用系への選出頻度を下げる旨の排他制御を行う。なお、表2における太字下線入りの文字は、表1から変更された部分を示す。なお、設定記憶部12のパラメータを変更する際には、変更前の状態表1の状態を別途記憶しておく。これにより、設定記憶部12のパラメータの変更前へと戻すことができる。ルータ1BK1のレコードについて、VRID=1では、stateをmasterにし、他のVRID=2~4では、priorityを表1の値よりも下げる。なお、表2では、stateをmasterにし、priorityをVRRP上設定できる最低の優先度である1へと下げている。この変更により、他のVRID=2~4において今後に障害が発生したときに、既にVRID=1において現用系として動作しているルータ1BK1に対して、新たに他のVRIDにおける現用系として重複して代行することを抑制できる。一方、S104におけるルータ1BK1のイベント対処部14の別のアクションとして、表2に示したようなpriorityを下げる代わりに、他のVRID2~4からルータ1BK1を離脱不参加にさせることとしてもよい。なお、S103のイベント検出部13による切替検出と、S104のイベント対処部14によるイベント対処とは、1回だけでなく、複数回実行してもよい。例えば、図2bの単一障害から、さらに、図2cの二重障害が発生したときには、2回目のイベント対処として、表4に示すように、VRID=2について、priorityが最高値240であるルータ1BK2の各パラメータを、表2と同じルールに従って更新してもよい表4では、表2からの差分を太字下線で示す。さらに、表5では、三重障害として、MS1、MS2に加えてBK1でも障害が発生したときには、BK1が現用系として動作していたVRID=1について、priorityが最大値235であるBK3が、新たな現用系になるとともに、他のVRID2~4についてのBK3のpriorityを1にする。この表5に示す状態により、43冗長化システムにおいて、3台のルータ1の障害により、冗長性が無くなったことになる。よって、4台目のルータ1の障害が発生してしまったときには、どの予備ルータBK1~BK3のpriorityも、最低値1である。このときには、priority同点時の別のルールとして、例えば、ルータ1に割り当てられているIPアドレスが最大の予備ルータが現用系に昇格することとする。図7に戻って、S105では、自装置を現用系として動作する。つまり、スイッチ2間で送受信されるパケットを、自装置であるルータ1が転送するルータの役割を担う。S111では、自装置のプリエンプトモードが有効かYes無効かNoを判定する。例えば、切戻しなどの保守切り替え時には、管理者が手動で切替先のプリエンプトを一時的に有効にし、切り替え後、無効に戻す。プリエンプトモードが有効であるときS111,Yes、S112に進む。S112にて、VRRP実行部11が自装置のstateについて現用系から予備系への切替を検出したとき換言すると、図2bで障害が発生していたMS1が障害から復帰したときにはS112,Yes、S113に進む。S113では、S104の排他制御を元に戻すように、他のVRIDについて、現用系への選出頻度を上げる例えば、表2の状態から表1の状態へと戻す。そして、S113の処理が終了したならば、S102の処理に戻る。以上説明した本実施形態では、1m冗長化システムに対して、VRIDを現用系の台数分だけ用意し、そのVRIDごとに重複させて予備系のシステムに割り当てることで、Nm冗長化システムを構成する。これにより、障害発生前においては、1台の予備系のルータ1は、複数の現用系のルータ1の障害の切替対象を兼任するため、予備系のルータ1の台数を節約することで、ネットワークの設備コストや運用コストを節約することができる。さらに、Nm冗長化構成において、複数台の現用系のルータ1に障害が発生したときには、予備系のルータ1は、そのうちの1台の現用系のルータ1だけの役割を代行するように、排他制御する。これにより、通信性能の低下を抑制することができる。本実施形態は、特許文献1と比較すると、VRRPを用いた故障による予備系装置への排他的切り替え手法について提案している。本実施形態は、特許文献2と比較すると、VRRPの仕様をそのまま使用し、故障をトリガとする予備系装置への排他的切り替えについて提案している。本実施形態は、特許文献3と比較すると、VRRPのみを用いて、Nm冗長化を実現する手法について提案している。"