(57)【特許請求の範囲】
【請求項１】
他の通信装置とともに冗長構成され、前記他の通信装置とは別の通信経路を介し共通の対向装置と通信する通信装置において、
自装置を運用系及び予備系の間で切り替える切り替え部と、
自装置が運用系に切り替えられたときの第１時刻を取得する第１取得部と、
自装置が運用系である場合、前記第１時刻を含み、自装置が運用系であることを通知する第１通知パケットを生成して、前記対向装置に送信する送信部と、
前記他の通信装置から前記対向装置を介して第２通知パケットを受信し、前記第２通知パケットから、前記他の通信装置が運用系に切り替えられたときの第２時刻を取得する第２取得部と、
前記第１時刻と前記第２時刻を比較した結果、前記第１時刻が前記第２時刻より早い場合、前記送信部に前記第１通知パケットの送信を停止させる制御部とを有し、
前記切り替え部は、前記制御部が前記送信部に前記第１通知パケットの送信を停止させた後、自装置を予備系に切り替えることを特徴とする通信装置。
【請求項２】
前記送信部は、自装置及び前記他の通信装置に設定された共通のアドレスを送信元として前記第１通知パケットを生成し、
前記第２取得部は、前記第２通知パケットの送信元のアドレス及び前記共通のアドレスの一致を検出することにより、前記第２通知パケットを識別することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記送信部は、自装置の識別番号を含む前記第１通知パケットを生成し、
前記第２取得部は、前記第２通知パケットに含まれる前記他の通信装置の識別番号及び自装置の識別番号の不一致を検出することにより、前記第２通知パケットを識別することを特徴とする請求項２に記載の通信装置。
【請求項４】
別々の通信経路を介して共通の対向装置と通信する、冗長構成された一組の通信装置と、前記一組の通信装置を制御する制御装置とを有する通信システムにおいて、
前記一組の通信装置は、それぞれ、
前記制御装置からの制御に従い、自装置を運用系及び予備系の間で切り替える切り替え部と、
自装置が運用系に切り替えられたときの第１時刻を取得する第１取得部と、
自装置が運用系である場合、前記第１時刻を含み、自装置が運用系であることを通知する通知パケットを生成して、前記対向装置に送信する送信部と、
前記一組の通信装置の他方から前記対向装置を介して前記通知パケットを受信し、前記通知パケットから、前記一組の通信装置の他方が運用系に切り替えられたときの第２時刻を取得する第２取得部と、
前記第１時刻と前記第２時刻を比較した結果、前記第１時刻が前記第２時刻より早い場合、前記送信部に前記通知パケットの送信を停止させる制御部とを有し、
前記切り替え部は、前記制御部が前記送信部に前記通知パケットの送信を停止させた後、前記制御装置からの制御に従い、自装置を予備系に切り替えることを特徴とする通信システム。
【請求項５】
冗長構成された一組の通信装置が、別々の通信経路を介して共通の対向装置と通信する通信方法において、
前記一組の通信装置は、それぞれ、
自装置が運用系に切り替えられたときの第１時刻を取得し、
自装置が運用系である場合、前記第１時刻を含み、自装置が運用系であることを通知する通知パケットを生成して、前記対向装置に送信し、
前記一組の通信装置の他方から前記対向装置を介して前記通知パケットを受信し、
前記通知パケットから、前記一組の通信装置の他方が運用系に切り替えられたときの第２時刻を取得し、
前記第１時刻と前記第２時刻を比較した結果、前記第１時刻が前記第２時刻より早い場合、前記通知パケットの送信を停止し、
前記通知パケットの送信を停止した後、自装置を予備系に切り替えることを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本件は、通信装置、通信システム、及び通信方法に関する。
【背景技術】
【０００２】
運用系の通信装置及び予備系の通信装置が設けられた冗長構成の通信システムが知られている（例えば下記の特許文献１及び２）。運用系の通信装置に障害が発生した場合、運用系と予備系が入れ替わるように、各通信装置の動作状態が切り替えられる。
【０００３】
この切り替え処理において、例えば、予備系の通信装置を運用系に切り替える前に運用系の通信装置を予備系に切り替えた場合、一時的に２台の予備系の通信装置が同時に存在することになるため、各通信装置と対向装置の間の通信が瞬断する。したがって、この切り替え処理では、予備系の通信装置を運用系に切り替えた後で、運用系の通信装置を予備系に切り替えることにより、一時的に２台の通信装置が同時に運用系となるように制御して、通信の瞬断が防止される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平９−２００２２４号公報
【特許文献２】特開平７−２８１９１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、運用系である各通信装置は、例えばゲートウェイ装置などの通信装置の場合、対向装置にＬＬＣ（Logical Link Control）パケットを定期的に送信する。対向装置は、例えばレイヤ２スイッチの場合、ＬＬＣパケットが受信されたポートを、運用系の通信装置が接続されたポートと認識して通信を行う。
【０００６】
このため、２台の運用系の通信装置が同時に存在する間、対向装置は、各通信装置からＬＬＣパケットを定期的に受信し、その受信のたびに、通信に使用するポートを切り替える。したがって、通信装置と対向装置の間の通信において、パケットの損失、送信順序の逆転、及びジッタの増加などが発生し、通信品質が低下するという問題がある。
【０００７】
そこで本件は上記の課題に鑑みてなされたものであり、通信品質を低下させずに系切り替えを行う通信装置、通信システム、及び通信方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本明細書に記載の通信装置は、他の通信装置とともに冗長構成され、前記他の通信装置とは別の通信経路を介し共通の対向装置と通信する通信装置において、自装置を運用系及び予備系の間で切り替える切り替え部と、自装置が運用系に切り替えられたときの第１時刻を取得する第１取得部と、自装置が運用系である場合、前記第１時刻を含み、自装置が運用系であることを通知する第１通知パケットを生成して、前記対向装置に送信する送信部と、前記他の通信装置から前記対向装置を介して第２通知パケットを受信し、前記第２通知パケットから、前記他の通信装置が運用系に切り替えられたときの第２時刻を取得する第２取得部と、前記第１時刻と前記第２時刻を比較した結果、前記第１時刻が前記第２時刻より早い場合、前記送信部に前記第１通知パケットの送信を停止させる制御部とを有し、前記切り替え部は、前記制御部が前記送信部に前記第１通知パケットの送信を停止させた後、自装置を予備系に切り替える。
【０００９】
本明細書に記載の通信システムは、別々の通信経路を介して共通の対向装置と通信する、冗長構成された一組の通信装置と、前記一組の通信装置を制御する制御装置とを有する通信システムにおいて、前記一組の通信装置は、それぞれ、前記制御装置からの制御に従い、自装置を運用系及び予備系の間で切り替える切り替え部と、自装置が運用系に切り替えられたときの第１時刻を取得する第１取得部と、自装置が運用系である場合、前記第１時刻を含み、自装置が運用系であることを通知する通知パケットを生成して、前記対向装置に送信する送信部と、前記一組の通信装置の他方から前記対向装置を介して前記通知パケットを受信し、前記通知パケットから、前記一組の通信装置の他方が運用系に切り替えられたときの第２時刻を取得する第２取得部と、前記第１時刻と前記第２時刻を比較した結果、前記第１時刻が前記第２時刻より早い場合、前記送信部に前記通知パケットの送信を停止させる制御部とを有し、前記切り替え部は、前記制御部が前記送信部に前記通知パケットの送信を停止させた後、前記制御装置からの制御に従い、自装置を予備系に切り替える。
【００１０】
本明細書に記載の通信方法は、冗長構成された一組の通信装置が、別々の通信経路を介して共通の対向装置と通信する通信方法において、前記一組の通信装置は、それぞれ、自装置が運用系に切り替えられたときの第１時刻を取得し、自装置が運用系である場合、前記第１時刻を含み、自装置が運用系であることを通知する通知パケットを生成して、前記対向装置に送信し、前記一組の通信装置の他方から前記対向装置を介して前記通知パケットを受信し、前記通知パケットから、前記一組の通信装置の他方が運用系に切り替えられたときの第２時刻を取得し、前記第１時刻と前記第２時刻を比較した結果、前記第１時刻が前記第２時刻より早い場合、前記通知パケットの送信を停止し、前記通知パケットの送信を停止した後、自装置を予備系に切り替える方法である。
【発明の効果】
【００１１】
通信品質を低下させずに系切り替えを行うことができる。
【図面の簡単な説明】
【００１２】
【図１】通信ネットワークの一例を示す構成図である。
【図２（ａ）】ゲートウェイ装置の切り替え制御の比較例を示す図である。
【図２（ｂ）】ゲートウェイ装置の切り替え制御の実施例を示す図である。
【図３】ＬＬＣパケットの一例を示す構成図である。
【図４】管理サーバの一例を示す構成図である。
【図５】ゲートウェイ装置の一例を示す構成図である。
【図６】運用系への切り替え時刻の取得処理の一例を示すフローチャートである。
【図７】ＬＬＣパケットの送信処理の一例を示すフローチャートである。
【図８】ＬＬＣパケットの受信処理の一例を示すフローチャートである。
【図９】管理サーバとゲートウェイ装置の通信の一例を示すシーケンス図である。
【発明を実施するための形態】
【００１３】
図１は通信ネットワークの一例を示す構成図である。通信ネットワークには、通信システムの一例であるゲートウェイシステム９と、レイヤ２スイッチ（Ｌ２ＳＷ）３と、インターネットなどの公衆通信網４と、ＬＡＮ（Local Area Network）５と、サーバ６と、端末装置７とが含まれる。
【００１４】
端末装置７は、例えばパーソナルコンピュータ、またはスマートフォンなどの携帯型無線通信端末であり、ＬＡＮ５に接続されている。携帯型無線通信端末の場合、ＬＡＮ５として、無線ＬＡＮが用いられる。端末装置７は、符号Ｒで示されるように、レイヤ２スイッチ３及びゲートウェイシステム９を介して、公衆通信網４に接続されたサーバ６との間でユーザパケットＰＫＴを送受信する。なお、本実施例のパケットの形態としては、イーサネット（登録商標、以下同様）フレームを挙げるが、これに限定されず、ＩＰ（Internet Protocol）パケットであってもよい。
【００１５】
サーバ６は、公衆通信網４に接続されており、例えば、クラウドサービスのように、端末装置７と通信することにより、ユーザからの要求に応じて特定のサービスを提供する。なお、サーバ６は、公衆通信網４に限定されず、ＬＡＮ５とは異なる他のＬＡＮに接続されてもよい。
【００１６】
レイヤ２スイッチ３は、端末装置７とサーバ６の通信を中継する。レイヤ２スイッチ３は、転送処理部３０と、複数のポートＶ〜Ｙと、アドレス学習テーブル３１とを有する。転送処理部３０は、例えばＣＰＵ（Central Processing Unit）を駆動するプログラムによりＣＰＵの機能として形成され、アドレス学習テーブル３１はメモリなどの記憶手段により形成される。
【００１７】
ポートＶ〜Ｙは、他装置との間でパケットの送信及び受信の処理を行う。ポートＸ，Ｙは、光ファイバなどの伝送路を介してゲートウェイシステム９にそれぞれ接続されている。また、ポートＶは公衆通信網４に接続され、ポートＷはＬＡＮ５に接続されている。
【００１８】
転送処理部３０は、ポートＶ〜Ｙ間でパケットを交換することによりパケットを転送する。転送処理部３０は、パケットを受信すると、全ポートＶ〜Ｙに送信することで（いわゆるフラッディング）、パケットの宛先アドレス（DA: Destination Address）とポートＶ〜Ｙの関係をアドレス学習テーブル３１に登録する。
【００１９】
アドレス学習テーブル３１には、ポートＩＤ（Ｖ〜Ｙ）とＭＡＣ（Media Access Control）アドレス（ＤＡ）が対応付けられて登録されている。転送処理部３０は、アドレス学習テーブル３１に登録済みのパケットを受信すると、そのパケットのＤＡに対応するポートＶ〜Ｙからパケットを送信する。つまり、転送処理部３０は、アドレス学習テーブル３１に基づいてパケットの転送先のポートＶ〜Ｙを判定する。
【００２０】
転送処理部３０は、ポートＸ，Ｙの一方を介してゲートウェイシステム９とパケットを送受信する。転送処理部３０は、ポートＷから入力されたユーザパケットＰＫＴを、ポートＸ，Ｙの一方を介してゲートウェイシステム９に送信し、ポートＸ，Ｙの一方から入力された該ユーザパケットＰＫＴを、ポートＶからサーバ６に送信する。また、転送処理部３０は、ポートＶから入力されたユーザパケットＰＫＴを、ポートＸ，Ｙの一方を介してゲートウェイシステム９に送信し、ポートＸ，Ｙの一方から入力された該ユーザパケットＰＫＴを、ポートＷから端末装置７に送信する。これにより、端末装置７とサーバ６の間において、ユーザパケットＰＫＴが送受信される。
【００２１】
転送処理部３０は、ポートＸ，Ｙのうち、後述するＬＬＣパケット（ＬＬＣ  ＰＫＴ）を受信したポートを、ゲートウェイシステム９との通信に用いる。より具体的には、転送処理部３０は、ポートＸからＬＬＣパケットを受信した場合、ポートＸを介してゲートウェイシステム９とユーザパケットＰＫＴを送受信し、ポートＹからＬＬＣパケットを受信した場合、ポートＹを介してゲートウェイシステム９とユーザパケットＰＫＴを送受信する。
【００２２】
ゲートウェイシステム９は、冗長構成された一組のゲートウェイ（ＧＷ）装置（＃０、＃１）１と、管理サーバ２とを有する。一組のゲートウェイ装置（＃０、＃１）１は、対向装置の一例であるレイヤ２スイッチ３と通信する。
【００２３】
ゲートウェイ装置（＃０、＃１）１は、公衆通信網４とＬＡＮ５の間においてプロトコル変換などを行う。ゲートウェイ装置（＃０、＃１）１は、クラスタペアとして構成され、レイヤ２スイッチ３から仮想的に単一の装置として扱われるように、個別のアドレスとは異なる共通の代表アドレス「a:b:c:d:e:f」(a〜f:１６進数表記の00〜FF)が割り当てられている。
【００２４】
一方のゲートウェイ装置（＃０）１は、レイヤ２スイッチ３のポートＸと接続され、他方のゲートウェイ装置（＃１）１は、レイヤ２スイッチ３のポートＹと接続されている。これにより、一組のゲートウェイ装置（＃０、＃１）１は、別々の通信経路を介して、共通のレイヤ２スイッチ３と通信する。
【００２５】
管理サーバ２は、制御装置の一例であり、一組のゲートウェイ装置（＃０、＃１）１を制御する。より具体的には、管理サーバ２は、例えば、ゲートウェイ装置（＃０）１から障害の発生（「障害」参照）が通知（「障害発生通知」参照）されたとき、各ゲートウェイ装置（＃０、＃１）１に運用系または予備系への切り替えを指示する（「切替指示」参照）。ゲートウェイ装置（＃０、＃１）１は、運用系の場合、レイヤ２スイッチ３との間で通信が可能であるが、予備系の場合、通信が不可能である。
【００２６】
図２（ａ）には、ゲートウェイ装置１の切り替え制御の比較例が示されている。なお、本例は、ゲートウェイ装置（＃０）１に障害が発生した場合を示すが、他方のゲートウェイ装置（＃１）１に障害が発生した場合も、ゲートウェイ装置（＃０、＃１）１を入れ替えた上で同様の制御が行われる。
【００２７】
図２（ａ）は、切り替え制御の時刻Ｔ０〜Ｔ２ごとに、切り替え後のゲートウェイ装置（＃０、＃１）１の動作状態（つまり、運用系または予備系）を示す。初期の時刻Ｔ０において、ゲートウェイ装置（＃０）１は運用系に設定され、ゲートウェイ装置（＃１）１は予備系に設定されている。このため、ゲートウェイ装置（＃０）１のみが、レイヤ２スイッチ３との間で通信できる。
【００２８】
管理サーバ２は、時刻Ｔ１において、運用系のゲートウェイ装置（＃０）１から障害通知を受信すると、ゲートウェイ装置（＃０）１に予備系への切り替えを指示する。その後、管理サーバ２は、時刻Ｔ２において、予備系のゲートウェイ装置（＃１）１に運用系への切り替えを指示する。これにより、ゲートウェイ装置（＃１）１が、障害のゲートウェイ装置（＃０）１に代わり、レイヤ２スイッチ３との間で通信を継続できる。
【００２９】
しかし、本例では、時刻Ｔ１において、２台の予備系のゲートウェイ装置（＃０、＃１）１が同時に存在するため、レイヤ２スイッチ３との間で通信が瞬断する。そこで、実施例の切り替え制御では、予備系のゲートウェイ装置（＃１）１に運用系への切り替えを指示した後、運用系のゲートウェイ装置（＃０）１に予備系への切り替えを指示する。
【００３０】
図２（ｂ）は、切り替え制御の時刻Ｔ０〜Ｔ２ごとに、切り替え後のゲートウェイ装置（＃０、＃１）１の動作状態を示す。初期の時刻Ｔ０において、ゲートウェイ装置（＃０）１は運用系に設定され、ゲートウェイ装置（＃１）１は予備系に設定されている。
【００３１】
管理サーバ２は、時刻Ｔ１において、運用系のゲートウェイ装置（＃０）１から障害通知を受信すると、比較例とは異なり、予備系のゲートウェイ装置（＃１）１に運用系への切り替えを指示する。その後、管理サーバ２は、時刻Ｔ２において、運用系のゲートウェイ装置（＃０）１に予備系への切り替えを指示する。これにより、ゲートウェイ装置（＃１）１が、障害のゲートウェイ装置（＃０）１に代わり、レイヤ２スイッチ３との間で通信を継続できる。
【００３２】
本例では、時刻Ｔ１において、２台のゲートウェイ装置（＃０、＃１）１が同時に運用系となるように制御されるため、レイヤ２スイッチ３との間の通信の瞬断が防止される。
【００３３】
再び図１を参照すると、運用系のゲートウェイ装置１は、通知パケットの一例であるＬＬＣパケットをレイヤ２スイッチ３に定期的に送信する。これにより、ゲートウェイ装置１は、レイヤ２スイッチ３に自装置が運用系であることを通知する。なお、レイヤ２スイッチ３は、受信したＬＬＣパケットを受信元以外のポートにフラッディングするため、一方のゲートウェイ装置１は、他方のゲートウェイ装置１が送信したＬＬＣパケットを受信することができる。
【００３４】
レイヤ２スイッチ３は、上述したように、ＬＬＣパケットを受信したポートＸ，Ｙをゲートウェイシステム９との通信に用いる。このため、レイヤ２スイッチ３は、ポートＸからＬＬＣパケットを受信した場合、ゲートウェイ装置（＃０）１と通信し、ポートＹからＬＬＣパケットを受信した場合、ゲートウェイ装置（＃１）１と通信する。これにより、レイヤ２スイッチ３は、２台のゲートウェイ装置（＃０、＃１）１のうち、運用系のゲートウェイ装置１と通信する。
【００３５】
しかし、管理サーバ２は、図２（ｂ）を参照して述べたように、２台のゲートウェイ装置（＃０、＃１）１が一時的にともに運用系となるように切り替え制御を行う。このため、ゲートウェイ装置（＃０、＃１）１の一方のＬＬＣパケットの送信を停止しない限り、両方のゲートウェイ装置（＃０、＃１）１からレイヤ２スイッチ３にＬＬＣパケットが送信される。
【００３６】
この場合、レイヤ２スイッチ３は、サーバ６または端末装置７から受信したゲートウェイ装置１宛てのユーザパケットＰＫＴの送信ポートを、ポートＸとポートＹの間で頻繁に切り替えることになる。より具体的には、転送処理部３０は、符号ｐで示されるように、アドレス学習テーブル３１において、ゲートウェイ装置１のＭＡＣアドレス「a:b:c:d:e:f」に対応するポートＩＤを、ＸまたはＹに頻繁に書き換える。
【００３７】
このため、２台の運用系のゲートウェイ装置１が同時に存在する間、レイヤ２スイッチ３は、各ゲートウェイ装置１からＬＬＣパケットを定期的に受信し、その受信のたびに、通信に使用するポートを切り替える。したがって、ゲートウェイシステム９とレイヤ２スイッチ３の間の通信において、ユーザパケットＰＫＴの損失、送信順序の逆転、及びジッタの増加などが発生し、通信品質が低下する。
【００３８】
そこで、実施例のゲートウェイ装置（＃０、＃１）１は、ＬＬＣパケットにより運用系への切り替え時刻を互いに通知して比較し、時刻の早いゲートウェイ装置１が、レイヤ２スイッチ３へのＬＬＣパケットの送信を停止した後、予備系に切り替わることで、通信品質の低下が防止される。
【００３９】
例えば、ゲートウェイ装置（＃０）１に障害が発生した場合、管理サーバ２は、ゲートウェイ装置（＃０）１からの障害通知を受信して、他方のゲートウェイ装置（＃１）１に予備系から運用系への切り替えを指示する（図２（ｂ）の時刻Ｔ２参照）。このため、各ゲートウェイ装置（＃０、＃１）１は、運用系となるので、運用系に切り替わった時刻を含むＬＬＣパケットを生成しレイヤ２スイッチ３に送信する。
【００４０】
各ゲートウェイ装置（＃０、＃１）１から送信されたＬＬＣパケットは、レイヤ２スイッチ３を介して他方のゲートウェイ装置（＃１、＃０）１で受信される。各ゲートウェイ装置（＃０、＃１）１は、他方のゲートウェイ装置（＃１、＃０）１から受信したＬＬＣパケットから時刻を取得して、自装置の時刻と比較する。
【００４１】
各ゲートウェイ装置（＃０、＃１）１は、比較の結果、自装置の時刻が他方のゲートウェイ装置（＃１、＃０）１の時刻より早い場合、ＬＬＣパケットの送信を停止し、その後、予備系に切り替わる。また、各ゲートウェイ装置（＃０、＃１）１は、自装置の時刻が他方のゲートウェイ装置（＃１、＃０）１の時刻より遅い場合、ＬＬＣパケットの送信を維持する。このため、レイヤ２スイッチ３において、ユーザパケットＰＫＴの送信ポートの頻繁な切り替えが防止されるので、通信品質の低下が防止される。
【００４２】
図３はＬＬＣパケットの一例を示す構成図である。図３において、「Byte」は、ＬＬＣパケット内のバイト位置を示し、「Bit」は、各バイト内のビット位置を示す。
【００４３】
ＬＬＣパケットは、宛先アドレスのＤＡと、送信元アドレスのＳＡ（Source Address）と、パケット長のＬＥＮＧＴＨと、ＤＳＡＰ（Destination Service Access Point）と、ＳＳＡＰ（Source Service Access Point）と、Ｃｏｎｔｒｏｌと、切り替え時刻と、識別番号とを含む。なお、「−」は未使用領域を示す。
【００４４】
ＤＡは、所定のＭＡＣアドレス「01:00:5e:00:00:00」であり、ＳＡは、ゲートウェイ装置１の代表アドレス「a:b:c:d:e:f」である。ＤＳＡＰは、宛先のサービスを示し、例えば０ｘ００（０ｘは１６進数表記を示す。以下同様。）に設定される。ＳＳＡＰは、送信元のサービスを示し、例えば０ｘ００に設定される。また、Ｃｏｎｔｒｏｌは、制御情報であり、０ｘｅ３に設定される。
【００４５】
切り替え時刻は、ＬＬＣパケットの送信元のゲートウェイ装置１が運用系に切り替わった時刻を示す。識別番号は、ゲートウェイ装置１を識別するための番号（＃０、＃１）を示し、自装置以外からのＬＬＣパケットの識別に使用される。
【００４６】
このように、ＬＬＣパケットには、送信元のゲートウェイ装置１が運用系に切り替わった時刻が含まれているため、各ゲートウェイ装置１は、他方のゲートウェイ装置１からＬＬＣパケットを受信することで、そのゲートウェイ装置１が運用系に切り替わった時刻を検出できる。次に、管理サーバ２及びゲートウェイ装置１の構成を説明する。
【００４７】
図４は管理サーバ２の一例を示す構成図である。管理サーバ２は、ＣＰＵ２０、ＲＯＭ（Read Only Memory）２１、ＲＡＭ（Random Access Memory）２２、不揮発性メモリ２３、及び複数の通信ポート２４を有する。ＣＰＵ２０は、互いに信号の入出力ができるように、ＲＯＭ２１、ＲＡＭ２２、不揮発性メモリ２３、複数の通信ポート２４と、データバス２５を介して接続されている。
【００４８】
ＲＯＭ２１は、ＣＰＵ２０を駆動するプログラムが格納されている。ＲＡＭ２２は、ＣＰＵ２０のワーキングメモリとして機能する。通信ポート２４は、例えばネットワークインターフェースカードであり、各ゲートウェイ装置１との間でそれぞれ通信を行う。
【００４９】
ＣＰＵ２０は、ＲＯＭ２１からプログラムを読み込むと、機能として、障害通知処理部２０１及び切り替え処理部２０２が形成される。また、不揮発性メモリ２３は、例えばフラッシュメモリであり、装置管理テーブル２３０が記憶されている。装置管理テーブル２３０には、クラスタペアとして冗長構成されたゲートウェイ装置１の識別番号（＃０、＃１）が登録されている。
【００５０】
障害通知処理部２０１は、障害が発生したゲートウェイ装置１から、通信ポート２４を介して障害通知を受信する。障害通知処理部２０１は、障害通知の送信元のゲートウェイ装置１の識別番号を切り替え処理部２０２に通知する。
【００５１】
切り替え処理部２０２は、障害通知を送信したゲートウェイ装置１の識別番号に基づき、装置管理テーブル２３０から、そのゲートウェイ装置１とクラスタペアを構成する他のゲートウェイ装置１の識別番号を取得する。切り替え処理部２０２は、図２（ｂ）に示されるように各ゲートウェイ装置１に切り替えを指示する。
【００５２】
図５はゲートウェイ装置１の一例を示す構成図である。ゲートウェイ装置１は、ＣＰＵ１０、ＲＯＭ１１、ＲＡＭ１２、不揮発性メモリ１３、及び複数の通信ポート１４を有する。ＣＰＵ１０は、互いに信号の入出力ができるように、ＲＯＭ１１、ＲＡＭ１２、不揮発性メモリ１３、複数の通信ポート１４と、データバス１５を介して接続されている。
【００５３】
ＲＯＭ１１は、ＣＰＵ１０を駆動するプログラムが格納されている。ＲＡＭ１２は、ＣＰＵ１０のワーキングメモリとして機能する。通信ポート１４は、例えばネットワークインターフェースカードであり、管理サーバ２や他方のゲートウェイ装置１との間でそれぞれ通信を行う。
【００５４】
ＣＰＵ１０は、ＲＯＭ１１からプログラムを読み込むと、機能として、通信処理部１０１、切り替え部１０２、切り替え時刻取得部１０３、ＬＬＣパケット生成部１０４、ＬＬＣパケット終端部１０５、送信制御部１０６、及び障害通知部１０７が形成される。また、不揮発性メモリ１３は、例えばフラッシュメモリであり、装置状態情報１３０、アドレス情報１３１、識別番号１３２、切り替え時刻情報１３３、及び送信可否フラグ１３４が記憶されている。
【００５５】
装置状態情報１３０は、自装置が運用系及び予備系の何れの動作状態であるのかを示し、切り替え部１０２により設定及び更新される。アドレス情報１３１は、クラスタペアの代表アドレス「a:b:c:d:e:f」を示し、例えば管理サーバ２から予め設定される。識別番号は、個々のゲートウェイ装置１の固有番号であり、例えば製造時に設定される。
【００５６】
切り替え時刻情報１３３は、自装置が運用系に切り替わった時刻を示し、切り替え時刻取得部１０３により書き込まれる。送信可否フラグ１３４は、ＬＬＣパケットの送信可否（‘１’：送信可能、、‘０’：送信不可）を示し、送信制御部１０６により設定される。
【００５７】
通信処理部１０１は、レイヤ２スイッチ３から通信ポート１４を介して受信したユーザパケットＰＫＴの送受信処理を行う。通信処理部１０１は、公衆通信網４とＬＡＮ５の間のプロトコル変換などを行う。通信処理部１０１は、装置状態情報１３０が運用系を示す場合、上記の通信処理を実行するが、装置状態情報１３０が予備系を示す場合、通信処理の実行を中止する。
【００５８】
切り替え部１０２は、管理サーバ２からの制御に従い、自装置を運用系及び予備系の間で切り替える。切り替え部１０２は、切り替え後の自装置の動作状態に応じて装置状態情報１３０を更新する。
【００５９】
切り替え時刻取得部１０３は、第１取得部の一例であり、自装置が運用系に切り替えられたときの時刻ｔ１（第１時刻）を取得する。時刻は、例えばＣＰＵ１０を駆動するプログラムのＯＳ（Operating System）などから取得される。切り替え時刻取得部１０３は、取得した時刻ｔ１を示す切り替え時刻情報１３３を書き込む。
【００６０】
ＬＬＣパケット生成部１０４は、自装置が運用系である場合、切り替え時刻情報１３３が示す時刻ｔ１を含むＬＬＣパケット（第１通知パケット）を生成する。ＬＬＣパケット生成部１０４は、切り替え時刻情報１３３、アドレス情報１３１、及び識別番号１３２を不揮発性メモリ１３から読み出して、ＬＬＣパケットを生成する。これにより、ＬＬＣパケット生成部１０４は、自装置と他方のゲートウェイ装置１に設定された共通の代表アドレスを送信元とし、自装置の識別番号１３２を含むＬＬＣパケットを生成する。
【００６１】
ＬＬＣパケット生成部１０４は、送信部の一例であり、生成したＬＬＣパケットを、通信ポート１４を介してレイヤ２スイッチ３に送信する。なお、ＬＬＣパケット生成部１０４は、装置状態情報１３０に基づき自装置の動作状態（運用系または予備系）を判定する。
【００６２】
ＬＬＣパケット終端部１０５は、第２取得部の一例であり、他方のゲートウェイ装置１からレイヤ２スイッチ３を介してＬＬＣパケット（第２通知パケット）を受信し、そのＬＬＣパケットから切り替え時刻ｔ２（第２時刻）を取得する。すなわち、ＬＬＣパケット終端部１０５は、他方のゲートウェイ装置１からのＬＬＣパケットを終端することで、そのゲートウェイ装置１が運用系に切り替わった時刻ｔ２を取得する。ＬＬＣパケット終端部１０５は、取得した時刻ｔ２を送信制御部１０６に出力する。
【００６３】
送信制御部１０６は、切り替え時刻情報１３３が示す時刻ｔ１とＬＬＣパケット終端部１０５が取得した時刻ｔ２を比較する。送信制御部１０６は、制御部の一例であり、時刻ｔ１と時刻ｔ２を比較した結果、時刻ｔ１が時刻ｔ２より早い場合、ＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させる。これにより、レイヤ２スイッチ３が、ユーザパケットＰＫＴを送信するポートを、ポートＸとポートＹの間で頻繁に切り替えることが防止されるので、通信品質の低下が防止される。
【００６４】
より具体的には、送信制御部１０６は、時刻ｔ１が時刻ｔ２より早い場合、送信可否フラグ１３４を「０」（送信不可）にセットする。ＬＬＣパケット生成部１０４は、送信可否フラグ１３４が「０」である場合、ＬＬＣパケットの生成及び送信を行わず、送信可否フラグ１３４が「１」である場合、ＬＬＣパケットの生成及び送信を行う。
【００６５】
切り替え部１０２は、送信制御部１０６がＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させた後、管理サーバ２の制御に従い、自装置を予備系に切り替える。これにより、図２（ｂ）に示された切り替え制御が完了し、ゲートウェイ装置１とレイヤ２スイッチ３の間の通信が継続される。また、障害通知部１０７は、自装置の障害を検出し、その障害を通知する障害通知を生成して、通信ポート１４を介して管理サーバ２に送信する。次に、ゲートウェイ装置１の各処理を説明する。
【００６６】
図６は運用系への切り替え時刻の取得処理の一例を示すフローチャートである。本処理は、例えば一定の時間周期で行われる。
【００６７】
切り替え時刻取得部１０３は、不揮発性メモリ１３から装置状態情報１３０を読み出す（ステップＳｔ１）。次に、切り替え時刻取得部１０３は、装置状態情報１３０に基づき、自装置が予備系から運用系に切り替えられたか否かを判定する（ステップＳｔ２）。切り替え時刻取得部１０３は、例えば、装置状態情報１３０を読み出すたびに保持しておき、前回保持した装置状態情報１３０と比較することにより、自装置が予備系から運用系に切り替えられたか否かを判定する。
【００６８】
切り替え時刻取得部１０３は、自装置が予備系から運用系に切り替えられたと判定した場合（ステップＳｔ２のＹｅｓ）、時刻ｔ１を取得する（ステップＳｔ３）。切り替え時刻ｔ１は、ＯＳの時計機能などから取得される。次に、切り替え時刻取得部１０３は、取得した時刻ｔ１を切り替え時刻取得部１０３として不揮発性メモリ１３に書き込み（ステップＳｔ４）、処理を終了する。
【００６９】
また、切り替え時刻取得部１０３は、自装置が予備系から運用系に切り替えられていないと判定した場合（ステップＳｔ２のＮｏ）、ステップＳｔ３，Ｓｔ４の処理を行わずに、処理を終了する。このようにして、運用系への切り替え時刻の取得処理は行われる。
【００７０】
図７は、ＬＬＣパケットの送信処理の一例を示すフローチャートである。本処理は、例えば一定の時間周期で行われる。
【００７１】
ＬＬＣパケット生成部１０４は、不揮発性メモリ１３から装置状態情報１３０を読み出す（ステップＳｔ１１）。次に、ＬＬＣパケット生成部１０４は、装置状態情報１３０に基づき、自装置が運用系であるか否かを判定する（ステップＳｔ１２）。ＬＬＣパケット生成部１０４は、自装置が予備系である場合（ステップＳｔ１２のＮｏ）、処理を終了する。つまり、ＬＬＣパケット生成部１０４は、自装置が予備系である場合、ＬＬＣパケットの生成及び送信を行わない。
【００７２】
また、ＬＬＣパケット生成部１０４は、自装置が運用系である場合（ステップＳｔ１２のＹｅｓ）、不揮発性メモリ１３から送信可否フラグ１３４を読み出す（ステップＳｔ１３）。ＬＬＣパケット生成部１０４は、送信可否フラグ１３４が‘１’（送信可能）である場合（ステップＳｔ１４のＹｅｓ）、送信周期の到来の有無を判定する（ステップＳｔ１５）。ＬＬＣパケット生成部１０４は、送信周期の到来を、例えばタイマ（カウンタ）により判定する。ＬＬＣパケット生成部１０４は、送信周期が到来していない場合（ステップＳｔ１５のＮｏ）、処理を終了する。
【００７３】
ＬＬＣパケット生成部１０４は、送信周期が到来している場合（ステップＳｔ１５のＹｅｓ）、不揮発性メモリ１３から切り替え時刻情報１３３を読み出す（ステップＳｔ１６）。次に、ＬＬＣパケット生成部１０４は、不揮発性メモリ１３から識別番号１３２を読み出す（ステップＳｔ１７）。
【００７４】
次に、ＬＬＣパケット生成部１０４は、読み出した切り替え時刻情報１３３の時刻ｔ１及び識別番号１３２を含むＬＬＣパケットを生成する（ステップＳｔ１８）。なお、ＬＬＣパケットのＤＡには、アドレス情報１３１が示す代表アドレスが挿入される。
【００７５】
次に、ＬＬＣパケット生成部１０４は、生成したＬＬＣパケットを、通信ポート１４を介してレイヤ２スイッチ３に送信し（ステップＳｔ１９）、処理を終了する。このように、ＬＬＣパケット生成部１０４は、送信可否フラグ１３４が‘１’である場合、ＬＬＣパケットの生成及び送信を行う。なお、ＬＬＣパケットは、レイヤ２スイッチ３を介して他方のゲートウェイ装置１にも送信される。
【００７６】
一方、送信可否フラグ１３４が‘０’（送信不可）である場合（ステップＳｔ１４のＮｏ）、ＬＬＣパケット生成部１０４は、新たなＬＬＣパケットの送信に備えて、送信可否フラグ１３４を‘１’にリセットし（ステップＳｔ２０）、処理を終了する。このように、ＬＬＣパケット生成部１０４は、送信可否フラグ１３４が‘０’である場合、ＬＬＣパケットの生成及び送信を行わない。このようにして、ＬＬＣパケットの送信処理は行われる。
【００７７】
図８は、ＬＬＣパケットの受信処理の一例を示すフローチャートである。本処理は、例えば一定の時間周期で行われる。
【００７８】
ＬＬＣパケット終端部１０５は、不揮発性メモリ１３から装置状態情報１３０を読み出す（ステップＳｔ３１）。次に、ＬＬＣパケット終端部１０５は、自装置が運用系であるか否かを判定する（ステップＳｔ３２）。ＬＬＣパケット終端部１０５は、自装置が予備系である場合（ステップＳｔ３２のＮｏ）、ＬＬＣパケットの送信が行われないため、処理を終了する。
【００７９】
また、ＬＬＣパケット終端部１０５は、自装置が運用系である場合（ステップＳｔ３２のＹｅｓ）、通信ポート１４のパケットの受信の有無を判定する（ステップＳｔ３３）。ＬＬＣパケット終端部１０５は、パケットの受信が無い場合（ステップＳｔ３３のＮｏ）、処理を終了する。
【００８０】
ＬＬＣパケット終端部１０５は、パケットが受信された場合（ステップＳｔ３３のＹｅｓ）、不揮発性メモリ１３からアドレス情報１３１を読み出し（ステップＳｔ３４）、パケットの送信元アドレスであるＳＡが、アドレス情報１３１が示す代表アドレスに一致するか否かを判定する（ステップＳｔ３５）。ＬＬＣパケット終端部１０５は、パケットの送信元が代表アドレスに一致しない場合（ステップＳｔ３５のＮｏ）、そのパケットはＬＬＣパケットではないと判定し、処理を終了する。
【００８１】
すなわち、ＬＬＣパケット終端部１０５は、パケットの送信元のアドレス及び代表アドレスの一致を検出することにより、ＬＬＣパケットを識別する。このため、ＬＬＣパケット終端部１０５は、ＬＬＣパケットを容易に識別できる。
【００８２】
ＬＬＣパケット終端部１０５は、パケットの送信元が代表アドレスに一致した場合（ステップＳｔ３５のＹｅｓ）、そのパケットはＬＬＣパケットであると判定し、不揮発性メモリ１３から識別番号１３２を読み出す（ステップＳｔ３６）。ＬＬＣパケット終端部１０５は、読み出した識別番号１３２が、ＬＬＣパケットに含まれる識別番号（図３参照）に一致するか否かを判定する（ステップＳｔ３７）。ＬＬＣパケット終端部１０５は、識別番号１３２が、ＬＬＣパケットに含まれる識別番号に一致した場合（ステップＳｔ３７のＹｅｓ）、そのパケットは他方のゲートウェイ装置１から受信したＬＬＣパケットではないと判定し、処理を終了する。
【００８３】
すなわち、ＬＬＣパケット終端部１０５は、ＬＬＣパケットに含まれる他方のゲートウェイ装置１の識別番号及び自装置の識別番号１３２の不一致を検出することにより、他方のゲートウェイ装置１からのＬＬＣパケットを識別する。このため、ＬＬＣパケット終端部１０５は、他方のゲートウェイ装置１からのＬＬＣパケットを容易に識別できる。
【００８４】
ＬＬＣパケット終端部１０５は、識別番号１３２、及びＬＬＣパケットに含まれる識別番号が不一致である場合（ステップＳｔ３７のＮｏ）、ＬＬＣパケットを受信する（ステップＳｔ３８）。次に、ＬＬＣパケット終端部１０５は、受信したＬＬＣパケットから切り替え時刻（図３参照）、つまり他方のゲートウェイ装置１が運用系に切り替えられた時刻ｔ２を取得する（ステップＳｔ３９）。次に、ＬＬＣパケット終端部１０５は、不揮発性メモリ１３から切り替え時刻情報１３３、つまり自装置が運用系に切り替えられた時刻ｔ１を読み出す（ステップＳｔ４０）。
【００８５】
次に、ＬＬＣパケット終端部１０５は、自装置の切り替え時刻ｔ１と他方のゲートウェイ装置１の切り替え時刻ｔ２を比較し、時刻ｔ１が時刻ｔ２より早いか否かを判定する（ステップＳｔ４１）。ＬＬＣパケット終端部１０５は、時刻ｔ１が時刻ｔ２より早い場合（ステップＳｔ４１のＹｅｓ）、送信可否フラグ１３４を‘０’に設定して（ステップＳｔ４２）、処理を終了する。
【００８６】
このため、ＬＬＣパケット終端部１０５は、自装置が、他方のゲートウェイ装置１より先に運用系に切り替えられ、障害発生のために予備系に切り替えられる場合、ＬＬＣパケットの送信を停止する。このとき、ゲートウェイ装置１は、運用系であるため、ＬＬＣパケットの送信を停止する前まではレイヤ２スイッチ３と通信可能である。したがって、ゲートウェイ装置１とレイヤ２スイッチ３の間の通信が瞬断することはない。
【００８７】
また、ＬＬＣパケット終端部１０５は、時刻ｔ１が時刻ｔ２より遅い場合（ステップＳｔ４１のＮｏ）、送信可否フラグ１３４を設定することなく、処理を終了する。この場合、送信可否フラグ１３４は‘１’であるため、ＬＬＣパケット生成部１０４は、ＬＬＣパケットの生成及び送信が可能である。このため、ゲートウェイ装置１は、他方のゲートウェイ装置１に代わり、レイヤ２スイッチ３と通信することが可能である。このようにして、ＬＬＣパケットの受信処理は行われる。
【００８８】
図９は、管理サーバ２とゲートウェイ装置１の通信の一例を示すシーケンス図である。初期状態において、ゲートウェイ装置（＃０）１は運用系に設定され（符号Ｓ１参照）、ゲートウェイ装置（＃１）１は予備系に設定される（符号Ｓ２参照）。
【００８９】
ゲートウェイ装置（＃０）１は、自装置が運用系に切り替えられた時刻ｔ１（つまり設定された時刻）を含むＬＬＣパケットを、定期的にレイヤ２スイッチ３に送信する。ＬＬＣパケットは、レイヤ２スイッチ３を介して他方のゲートウェイ装置（＃１）１にも送信される。ゲートウェイ装置（＃０）１は、障害が発生すると（符号Ｓ３参照）、障害通知を管理サーバ２に送信する。
【００９０】
管理サーバ２は、ゲートウェイ装置（＃０）１から障害通知を受信すると、他方のゲートウェイ装置（＃１）１に、運用系への切り替え指示を送信する。ゲートウェイ装置（＃１）１は、管理サーバ２から切り替え指示を受信すると、時刻ｔ２において運用系に切り替わる（符号Ｓ４参照）。これにより、各ゲートウェイ装置（＃０、＃１）１は、運用系となるため、レイヤ２スイッチ３と通信が可能である。
【００９１】
ゲートウェイ装置（＃１）１は、自装置が運用系に切り替えられた時刻ｔ２を含むＬＬＣパケットを、定期的にレイヤ２スイッチ３に送信する。ＬＬＣパケットは、レイヤ２スイッチ３を介して他方のゲートウェイ装置（＃０）１にも送信される。ゲートウェイ装置（＃０）１は、他方のゲートウェイ装置（＃１）１からＬＬＣパケットを受信すると、ＬＬＣパケットから時刻ｔ２を取得し、時刻ｔ１と比較する（符号Ｓ５参照）。ゲートウェイ装置（＃０）１は、時刻ｔ１が時刻ｔ２より早いことを判定し、ＬＬＣパケットの送信を停止する（符号Ｓ６参照）。
【００９２】
このように、ゲートウェイ装置（＃０）１において、送信制御部１０６は、自装置が運用系に切り替えられたときの時刻ｔ１が、他のゲートウェイ装置１が運用系に切り替えられたときの時刻ｔ２より早い場合、ＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させる。このため、ゲートウェイ装置（＃０）１は、他方のゲートウェイ装置（＃１）１より前から運用系として動作している場合、ＬＬＣパケットの送信を停止して、他方のゲートウェイ装置（＃１）１だけが、レイヤ２スイッチ３にＬＬＣパケットを送信する。
【００９３】
したがって、レイヤ２スイッチ３は、冗長構成された２台のゲートウェイ装置１が同時に存在する場合でも、ゲートウェイ装置（＃１）１のＬＬＣパケットだけを受信するため、そのゲートウェイ装置（＃１）１だけを運用系として認識する。これにより、レイヤ２スイッチ３が通信相手を２台のゲートウェイ装置（＃０、＃１）１の間で頻繁に切り替えることが防止されるため、通信品質の低下が防止される。
【００９４】
次に、管理サーバ２は、ゲートウェイ装置（＃０）１に、予備系への切り替え指示を送信する。ゲートウェイ装置（＃１）１は、管理サーバ２から切り替え指示を受信すると、予備系に切り替わる（符号Ｓ７参照）。このため、冗長構成された２台のゲートウェイ装置（＃０、＃１）１はそれぞれ運用系及び予備系となる。ゲートウェイ装置（＃１）１は、運用系であるため、レイヤ２スイッチ３との通信を継続できる。
【００９５】
これまで述べたように、実施例に係る通信装置であるゲートウェイ装置１は、他のゲートウェイ装置１とともに冗長構成され、他のゲートウェイ装置１とは別の通信経路を介し共通のレイヤ２スイッチ３と通信する。ゲートウェイ装置１は、切り替え部１０２と、切り替え時刻取得部１０３と、ＬＬＣパケット生成部１０４と、ＬＬＣパケット終端部１０５と、送信制御部１０６とを有する。
【００９６】
切り替え部１０２は、自装置を運用系及び予備系の間で切り替える。切り替え時刻取得部１０３は、自装置が運用系に切り替えられたときの時刻ｔ１を取得する。ＬＬＣパケット生成部１０４は、自装置が運用系である場合、時刻ｔ１を含み、自装置が運用系であることを通知するＬＬＣパケットを生成して、レイヤ２スイッチ３に送信する。
【００９７】
ＬＬＣパケット終端部１０５は、他のゲートウェイ装置１からレイヤ２スイッチ３を介してＬＬＣパケットを受信し、ＬＬＣパケットから、他のゲートウェイ装置１が運用系に切り替えられたときの時刻ｔ２を取得する。送信制御部１０６は、時刻ｔ１と時刻ｔ２を比較した結果、時刻ｔ１が時刻ｔ２より早い場合、ＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させる。
【００９８】
切り替え部１０２は、送信制御部１０６がＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させた後、自装置を予備系に切り替える。
【００９９】
上記の構成によると、送信制御部１０６は、自装置が運用系に切り替えられたときの時刻ｔ１が、他のゲートウェイ装置１が運用系に切り替えられたときの時刻ｔ２より早い場合、ＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させる。このため、ゲートウェイ装置１は、他のゲートウェイ装置１より前から運用系として動作している場合、ＬＬＣパケットの送信を停止して、他のゲートウェイ装置１だけが、レイヤ２スイッチ３にＬＬＣパケットを送信する。
【０１００】
したがって、レイヤ２スイッチ３は、冗長構成された２台のゲートウェイ装置１が同時に存在する場合でも、他のゲートウェイ装置１のＬＬＣパケットだけを受信するため、そのゲートウェイ装置１だけを運用系として認識する。これにより、レイヤ２スイッチ３が通信相手を２台のゲートウェイ装置１の間で頻繁に切り替えることが防止されるため、通信品質の低下が防止される。
【０１０１】
また、切り替え部１０２は、送信制御部１０６がＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させた後、自装置を予備系に切り替えるため、冗長構成された２台のゲートウェイ装置１をそれぞれ運用系及び予備系とすることができる。
【０１０２】
よって、実施例に係る通信装置によると、通信品質を低下させずに系切り替えを行うことができる。
【０１０３】
また、実施例に係る通信システムであるゲートウェイシステム９は、別々の通信経路を介して共通のレイヤ２スイッチ３と通信する、冗長構成された一組のゲートウェイ装置１と、一組のゲートウェイ装置１を制御する管理サーバ２とを有する。一組のゲートウェイ装置１は、それぞれ、切り替え部１０２と、切り替え時刻取得部１０３と、ＬＬＣパケット生成部１０４と、ＬＬＣパケット終端部１０５と、送信制御部１０６とを有する。
【０１０４】
切り替え部１０２は、自装置を運用系及び予備系の間で切り替える。切り替え時刻取得部１０３は、自装置が運用系に切り替えられたときの時刻ｔ１を取得する。ＬＬＣパケット生成部１０４は、自装置が運用系である場合、時刻ｔ１を含み、自装置が運用系であることを通知するＬＬＣパケットを生成して、レイヤ２スイッチ３に送信する。
【０１０５】
ＬＬＣパケット終端部１０５は、他のゲートウェイ装置１からレイヤ２スイッチ３を介してＬＬＣパケットを受信し、ＬＬＣパケットから、他のゲートウェイ装置１が運用系に切り替えられたときの時刻ｔ２を取得する。送信制御部１０６は、時刻ｔ１と時刻ｔ２を比較した結果、時刻ｔ１が時刻ｔ２より早い場合、ＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させる。
【０１０６】
切り替え部１０２は、送信制御部１０６がＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させた後、自装置を予備系に切り替える。
【０１０７】
実施例に係る通信システムは、上記のゲートウェイ装置１と同様の構成を含むので、上述した内容と同様の作用効果を奏する。
【０１０８】
また、実施例に係る通信方法は、冗長構成された一組のゲートウェイ装置１が、別々の通信経路を介して共通のレイヤ２スイッチ３と通信する通信方法において、一組のゲートウェイ装置１は、それぞれ、以下の処理を行う方法である。
処理（１）：自装置が運用系に切り替えられたときの時刻ｔ１を取得する。
処理（２）：自装置が運用系である場合、時刻ｔ１を含み、自装置が運用系であることを通知するＬＬＣパケットを生成して、レイヤ２スイッチ３に送信する。
処理（３）：他のゲートウェイ装置１からレイヤ２スイッチ３を介してＬＬＣパケットを受信する。
処理（４）：ＬＬＣパケットから、他のゲートウェイ装置１が運用系に切り替えられたときの時刻ｔ２を取得する。
処理（５）：時刻ｔ１と時刻ｔ２を比較した結果、時刻ｔ１が時刻ｔ２より早い場合、ＬＬＣパケット生成部１０４にＬＬＣパケットの送信を停止させる。
処理（６）：ＬＬＣパケットの送信を停止した後、自装置を予備系に切り替える。
【０１０９】
実施例に係る通信方法は、上記のゲートウェイ装置１と同様の構成を含むので、上述した内容と同様の作用効果を奏する。
【０１１０】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【０１１１】
なお、以上の説明に関して更に以下の付記を開示する。
（付記１）  他の通信装置とともに冗長構成され、前記他の通信装置とは別の通信経路を介し共通の対向装置と通信する通信装置において、
自装置を運用系及び予備系の間で切り替える切り替え部と、
自装置が運用系に切り替えられたときの第１時刻を取得する第１取得部と、
自装置が運用系である場合、前記第１時刻を含み、自装置が運用系であることを通知する第１通知パケットを生成して、前記対向装置に送信する送信部と、
前記他の通信装置から前記対向装置を介して第２通知パケットを受信し、前記第２通知パケットから、前記他の通信装置が運用系に切り替えられたときの第２時刻を取得する第２取得部と、
前記第１時刻と前記第２時刻を比較した結果、前記第１時刻が前記第２時刻より早い場合、前記送信部に前記第１通知パケットの送信を停止させる制御部とを有し、
前記切り替え部は、前記制御部が前記送信部に前記第１通知パケットの送信を停止させた後、自装置を予備系に切り替えることを特徴とする通信装置。
（付記２）  前記送信部は、自装置及び前記他の通信装置に設定された共通のアドレスを送信元として前記第１通知パケットを生成し、
前記第２取得部は、前記第２通知パケットの送信元のアドレス及び前記共通のアドレスの一致を検出することにより、前記第２通知パケットを識別することを特徴とする付記１に記載の通信装置。
（付記３）  前記送信部は、自装置の識別番号を含む前記第１通知パケットを生成し、
前記第２取得部は、前記第２通知パケットに含まれる前記他の通信装置の識別番号及び自装置の識別番号の不一致を検出することにより、前記第２通知パケットを識別することを特徴とする付記２に記載の通信装置。
（付記４）  別々の通信経路を介して共通の対向装置と通信する、冗長構成された一組の通信装置と、前記一組の通信装置を制御する制御装置とを有する通信システムにおいて、
前記一組の通信装置は、それぞれ、
前記制御装置からの制御に従い、自装置を運用系及び予備系の間で切り替える切り替え部と、
自装置が運用系に切り替えられたときの第１時刻を取得する第１取得部と、
自装置が運用系である場合、前記第１時刻を含み、自装置が運用系であることを通知する通知パケットを生成して、前記対向装置に送信する送信部と、
前記一組の通信装置の他方から前記対向装置を介して前記通知パケットを受信し、前記通知パケットから、前記一組の通信装置の他方が運用系に切り替えられたときの第２時刻を取得する第２取得部と、
前記第１時刻と前記第２時刻を比較した結果、前記第１時刻が前記第２時刻より早い場合、前記送信部に前記通知パケットの送信を停止させる制御部とを有し、
前記切り替え部は、前記制御部が前記送信部に前記通知パケットの送信を停止させた後、前記制御装置からの制御に従い、自装置を予備系に切り替えることを特徴とする通信システム。
（付記５）  前記送信部は、自装置及び前記他の通信装置に設定された共通のアドレスを送信元として前記第１通知パケットを生成し、
前記第２取得部は、前記第２通知パケットの送信元のアドレス及び前記共通のアドレスの一致を検出することにより、前記第２通知パケットを識別することを特徴とする付記４に記載の通信システム。
（付記６）  前記送信部は、自装置の識別番号を含む前記第１通知パケットを生成し、
前記第２取得部は、前記第２通知パケットに含まれる前記他の通信装置の識別番号及び自装置の識別番号の不一致を検出することにより、前記第２通知パケットを識別することを特徴とする付記５に記載の通信システム。
（付記７）  冗長構成された一組の通信装置が、別々の通信経路を介して共通の対向装置と通信する通信方法において、
前記一組の通信装置は、それぞれ、
自装置が運用系に切り替えられたときの第１時刻を取得し、
自装置が運用系である場合、前記第１時刻を含み、自装置が運用系であることを通知する通知パケットを生成して、前記対向装置に送信し、
前記一組の通信装置の他方から前記対向装置を介して前記通知パケットを受信し、
前記通知パケットから、前記一組の通信装置の他方が運用系に切り替えられたときの第２時刻を取得し、
前記第１時刻と前記第２時刻を比較した結果、前記第１時刻が前記第２時刻より早い場合、前記通知パケットの送信を停止し、
前記通知パケットの送信を停止した後、自装置を予備系に切り替えることを特徴とする通信方法。
（付記８）  前記一組の通信装置は、それぞれ、
前記一組の通信装置に設定された共通のアドレスを送信元として前記通知パケットを生成し、
前記通知パケットの送信元のアドレス及び前記共通のアドレスの一致を検出することにより、受信した前記通知パケットを識別することを特徴とする付記７に記載の通信方法。
（付記９）  前記一組の通信装置は、それぞれ、
自装置の識別番号を含む前記通知パケットを生成し、
受信した前記通知パケットに含まれ前記一組の通信装置の他方の識別番号及び自装置の識別番号の不一致を検出することにより、受信した前記通知パケットを識別することを特徴とする付記８に記載の通信方法。
【符号の説明】
【０１１２】
１       ゲートウェイ装置
２       管理サーバ
３       レイヤ２スイッチ
１０２      切り替え部
１０３      切り替え時刻取得部
１０４      ＬＬＣパケット生成部
１０５      ＬＬＣパケット終端部
１０６      送信制御部
【図１】
0006485230.tif 000002
【図２】
0006485230.tif 000003
【図３】
0006485230.tif 000004
【図４】
0006485230.tif 000005
【図５】
0006485230.tif 000006
【図６】
0006485230.tif 000007
【図７】
0006485230.tif 000008
【図８】
0006485230.tif 000009
【図９】
0006485230.tif 000010