説明

二重化システム、現用装置、待機装置及び同期制御プログラム

【課題】通信負荷を削減しつつ最新のデータを早期に同期させることを課題とする。
【解決手段】二重化システム1は、現用装置3と待機装置5とを有するとともに、現用装置3及び待機装置5の間でデータが同期される。現用装置3は、保持されたデータの保持期限情報を生成する生成部3aと、データと保持期限情報とを待機装置5に通知する通知部3bとを有する。また、待機装置5は、現用装置3から通知されたデータと保持期限情報とを対応付けて記憶部5aに格納する格納部5bと、保持期限情報が示す保持期限が到来した場合に、当該保持期限に対応付けられたデータを削除する削除部5cとを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、二重化システム、現用装置、待機装置及び同期制御プログラムに関する。
【背景技術】
【0002】
同じ構成の装置を二重化し、一方を現用装置として動作させるとともに他方を待機装置として待機させ、必要に応じて待機装置を現用化することにより、システム(system)の信頼性を向上させるホットスタンバイ(hot standby)という手法が知られている。このホットスタンバイを採用する場合には、現用装置の障害発生時に待機装置が現用装置に代わって動作できるように、現用装置が自装置で実行したデータ操作の内容を待機装置へ通知することにより、現用装置及び待機装置の間でデータ(data)の同期がなされる。
【0003】
このようなデータの同期を行う技術の一例としては、逐次転送方式と定期転送方式とが挙げられる。例えば、逐次転送方式は、現用装置でデータの生成、更新や削除などのデータ操作が実行される度にデータ操作の内容を待機装置へ通知する転送方式を指す。また、定期転送方式は、現用装置で一定期間の間になされたデータ操作をまとめて待機装置へ通知する転送方式を指す。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−9660号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の逐次転送方式及び定期転送方式は、以下に説明するように、いずれの転送方式にも一長一短がある。
【0006】
例えば、逐次転送方式を採用した場合には、現用装置におけるデータ操作を直ちに待機装置へ反映できる。その反面で、現用装置がデータ操作の内容を待機装置へ通知する間隔が短くなるので、通信頻度が高まる結果、通信負荷が増大してしまう。
【0007】
また、定期転送方式を採用した場合には、逐次転送方式に比較してデータ操作の内容を待機装置へ通知する間隔を長くできるので、通信負荷を抑えることはできる。その代わりに、現用装置におけるデータ操作が直ちに待機装置へ反映されず、最新のデータを損失するリスクがある。このため、現用装置が故障しても待機装置を現用化できず、システムの信頼性が低下してしまう。
【0008】
開示の技術は、上記に鑑みてなされたものであって、通信負荷を削減しつつ最新のデータを早期に同期させることができる二重化システム、現用装置、待機装置及び同期制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
本願の開示する二重化システムは、現用装置と待機装置とを有する二重化システムである。前記現用装置が、保持されたデータの保持期限情報を生成する生成部と、前記データと前記保持期限情報とを前記待機装置に通知する通知部とを備える。前記待機装置が、前記現用装置から通知されたデータと保持期限情報とを対応付けて記憶部に格納する格納部と、前記保持期限情報が示す保持期限が到来した場合に、当該保持期限に対応付けられたデータを削除する削除部とを備える。
【発明の効果】
【0010】
本願の開示する二重化システムの一つの態様によれば、通信負荷を削減しつつ最新のデータを早期に同期させることができるという効果を奏する。
【図面の簡単な説明】
【0011】
【図1】図1は、実施例1に係る二重化システムに含まれる各装置の構成を示すブロック図である。
【図2】図2は、実施例2に係る二重化システムのシステム構成を示す図である。
【図3】図3は、実施例2に係る現用系のルータ及び待機系のルータの構成を示すブロック図である。
【図4】図4は、各同期対象テーブルで共通して記憶される同期用情報の一例を示す図である。
【図5A】図5Aは、固有データの一例を示す図である。
【図5B】図5Bは、固有データの一例を示す図である。
【図5C】図5Cは、固有データの一例を示す図である。
【図5D】図5Dは、固有データの一例を示す図である。
【図6】図6は、エントリ生成通知に含まれる情報の一例を示す図である。
【図7】図7は、各被同期対象テーブルで共通して記憶される同期用情報の一例を示す図である。
【図8】図8は、実施例2に係るエントリ生成処理の手順を示すフローチャートである。
【図9】図9は、実施例2に係るエントリ更新処理の手順を示すフローチャートである。
【図10】図10は、実施例2に係る現用系の保持期限監視処理の手順を示すフローチャートである。
【図11】図11は、実施例2に係る受信処理の手順を示すフローチャートである。
【図12】図12は、実施例2に係る待機系の保持期限監視処理の手順を示すフローチャートである。
【図13】図13は、実施例3に係る同期制御プログラムを実行するコンピュータの一例について説明するための図である。
【発明を実施するための形態】
【0012】
以下に、本願の開示する二重化システム、現用装置、待機装置及び同期制御プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。
【実施例1】
【0013】
図1は、実施例1に係る二重化システムに含まれる各装置の構成を示すブロック図である。図1に示す二重化システム1は、現用装置3と待機装置5とが二重化されるとともに、現用装置3及び待機装置5の間でデータが同期される。
【0014】
このうち、現用装置3は、保持されたデータの保持期限情報を生成する生成部3aと、データと保持期限情報とを待機装置5に通知する通知部3bとを有する。また、待機装置5は、現用装置3から通知されたデータと保持期限情報とを対応付けて記憶部5aに格納する格納部5bと、保持期限情報が示す保持期限が到来した場合に、当該保持期限に対応付けられたデータを削除する削除部5cとを有する。
【0015】
このように、本実施例に係る二重化システム1は、現用装置3が保持されたデータとともに保持期限情報を待機装置5へ通知するので、待機装置5では保持期限が経過したデータを削除することができる。このため、本実施例に係る二重化システム1では、現用装置3がデータの削除を待機装置5へ改めて通知することを不要化することができ、通信頻度を低減できる。また、本実施例に係る二重化システム1では、保持されたデータは直ちに待機装置5へ通知されるので、保持されたデータが待機装置5に反映されるのが遅延することもない。したがって、本実施例に係る二重化システム1によれば、通信負荷を削減しつつ最新のデータを早期に同期させることが可能になる。
【実施例2】
【0016】
[システム構成]
続いて、実施例2に係る二重化システムについて説明する。図2は、実施例2に係る二重化システムのシステム構成を示す図である。図2に示すように、二重化システム10は、現用系のルータ30と、待機系のルータ50とを有する。なお、ここでは、ルータ30が現に使用される現用装置として動作し、ルータ50が将来の現用化を待機する待機装置として動作する場合を想定して以下の説明を行うこととする。
【0017】
これらルータ30及びルータ50は、クライアント端末20A〜20Cと、サーバ装置60A〜60Cとの間でデータを中継する中継装置である。このようにホットスタンバイ構成を採用する場合には、ルータ30の障害発生時にルータ50が代わって動作できるように、ルータ30が自装置で実行したデータ操作の内容をルータ50へ通知することによりルータ30及び50の間でデータの同期がなされる。
【0018】
ルータ30及びルータ50は、ネットワーク(network)40を介して、クライアント端末20A〜クライアント端末20Cと接続される。また、ルータ30及びルータ50は、サーバ装置60A〜サーバ装置60Cと接続される。なお、ネットワーク40には、インターネット(Internet)、LAN(Local Area Network)やVPN(Virtual Private Network)などの任意の種類の通信網を採用できる。
【0019】
クライアント端末20A、クライアント端末20B、クライアント端末20Cは、クライアント(client)によって使用されるパーソナルコンピュータ(PC:Personal Computer)などのコンピュータ端末である。クライアント(client)は、ブラウザ(browser)などを通じてサーバ装置60により提供される機能やデータを利用することができる。
【0020】
サーバ装置60A、サーバ装置60B、サーバ装置60Cは、クライアント端末20A〜20Cに対し、自身が有する機能やデータを提供するコンピュータ(Computer)である。図2に示す例では、1つのサーバ装置に負荷が集中するのを防止する観点から、同様のサービスを提供するサーバ装置60が3つ設置される場合を示している。
【0021】
このように複数のサーバ及びクライアント間を中継するルータ30及びルータ50には、ルーティング(routing)機能及び帯域制御機能の他、サーバ負荷分散機能が搭載され得る。さらに、ネットワーク40にVPNが採用されている場合には、ルータ30及びルータ50には、VPN機能が搭載され得る。なお、図2の例では、サーバ及びクライアント間を中継する場合を例示したが、サーバ及びクライアント間に限られるものではなく、ルータ30またはルータ50は任意のネットワーク間を中継することができる。
【0022】
[現用系のルータの構成]
続いて、本実施例に係る現用系のルータの構成について説明する。図3は、実施例2に係る現用系のルータ及び待機系のルータの構成を示すブロック図である。図3に示すように、現用系のルータ30は、ルータ機能部31と、同期データ送信部32と、同期対象テーブル33と、テーブル管理部34とを有する。
【0023】
ルータ機能部31a〜ルータ機能部31nは、ルータ30が搭載する機能を実行する処理部である。一例としては、ルータ30がルーティング機能、サーバ負荷分散機能、VPN機能及び帯域制御機能を搭載する場合を想定する。この場合には、ルータ機能部31aが中継制御部として機能する。さらに、ルータ機能部31bがサーバ負荷分散制御部として機能する。さらに、ルータ機能部31cがVPN制御部として機能する。さらに、ルータ31dが帯域制御部として機能する。
【0024】
同期データ送信部32は、後述のテーブル管理部34の指示に基づき、待機系のルータ50が有する被同期対象テーブル53を自装置の同期対象テーブル33と同期させるための同期データを送信する処理部である。
【0025】
同期対象テーブル33a〜同期対象テーブル33nは、待機系のルータ50が有する被同期対象テーブル53との間でデータを同期させる対象とするテーブルであり、ルータ30が搭載する機能ごとに別々のテーブルが保持される。ここで、各同期対象テーブル33は、ルータ30が搭載する機能ごとに異なる固有データを有するが、待機系のルータ50の被同期対象テーブル53との間で同期をとるために使用する同期用情報は各テーブルの間で共通して記憶される。
【0026】
図4は、各同期対象テーブルで共通して記憶される同期用情報の一例を示す図である。図4に示すように、同期対象テーブル33は、エントリ番号ごとに保持期限、前回転送時刻、有効フラグ、更新フラグ及び固有データを記憶したテーブルである。
【0027】
ここで言う「エントリ番号」とは、エントリ(データが書き込まれる領域)を一意に特定するための識別番号を指す。また、「保持期限」とは、エントリを保持する期限を指し、この保持期限を経過したエントリは後述の保持期限監視部38により有効フラグがOFFに設定される。ここでは、データの保持を許容する保持期間が切れる終点のみを保持期限として保持することとしたが、データが登録または更新された始点と上記の保持期限とにより特定される保持期間を保持することとしてもよい。また、「前回転送時刻」とは、前回にエントリの情報が待機系のルータ50へ通知された時刻を指す。また、「有効フラグ」とは、エントリ内の情報が有効であるか否かを示すフラグである。例えば、有効フラグがONである場合にはルータ機能部31が使用する有効エントリであることを表し、有効フラグOFFである場合にはルータ機能部31に使用されない無効エントリであることを表す。また、「未通知フラグ」は、前回転送時刻以降にエントリが更新されているか否かを示すフラグである。例えば、更新フラグがONである場合には、前回転送時刻以降にエントリが更新されたことを表し、更新フラグがOFFである場合には、前回転送時刻以降にエントリが更新されていないことを表す。なお、「固有データ」は、ルータ30が搭載する機能別に記憶される固有のデータを指す。
【0028】
図4の示す例では、エントリ番号「1」のエントリは、ルータ機能部31が使用する有効エントリであり、保持期限が10時12分34秒であることを示す。さらに、エントリ番号「1」のエントリの情報は、10時10分12秒に前回の通知が行われているものの、ルータ50へ未だ通知されていないエントリの更新情報が存在することを示す。また、エントリ番号「2」のエントリは、ルータ機能部31が使用する有効エントリであり、保持期限が10時12分45秒であることを示す。さらに、エントリ番号「2」のエントリの情報は、10時10分34秒に前回の通知が行われており、ルータ50へ未だ通知されていないエントリの更新情報は存在しないことを示す。また、エントリ番号「3」のエントリは、ルータ機能部31に使用されない無効エントリであり、保持期限である10時10分00秒を経過したことを示す。さらに、エントリ番号「3」のエントリの情報は、10時09分30秒に前回の通知が行われており、ルータ50へ未だ通知されていないエントリの更新情報は存在しないことを示す。
【0029】
次に、各同期対象テーブル33に記憶される固有データについて説明する。例えば、ルータ機能部31aが中継制御部として機能する場合には、図5Aに示すARP(Address Resolution Protocol)学習テーブルが固有データとして同期対象テーブル33aに記憶される。図5Aは、固有データの一例を示す図である。図5Aに示す例では、LAN(Local Area Network)ポート番号、IPアドレス(IP address)及びMACアドレス(Media Access Control address)などの項目が固有データとして記憶される。すなわち、図5Aの例では、LANポート番号が「1」であり、IPアドレスが「192.168.0.2」であり、また、MACアドレスが「00:00:00:11:22:33」であることを示す。これら3つの項目はエントリが1度生成されると更新されることは基本としてなく、エントリの生存中には変化しない。
【0030】
また、ルータ機能部31bがサーバ負荷分散制御部として機能する場合には、図5Bに示すセッション情報が固有データとして同期対象テーブル33bに記憶される。図5Bは、固有データの一例を示す図である。図5Bに示す例では、クライアントIPアドレス、プロトコル(Protocol)種別、ポート(port)番号、セッションID(session identifier)、振分先サーバ番号などの項目が固有データとして記憶される。すなわち、図5Bの例では、クライアントIPアドレスが「192.168.0.123」であり、プロトコル種別が「HTTP」であり、ポート番号が「5001」であり、セッションIDが「11223344」であり、振分先サーバ番号が「7」であることを示す。これら5つの項目はエントリが1度生成されると更新されることは基本としてなく、エントリの生存中には変化しない。なお、プロトコルによってはエントリの生存中にシーケンス(sequence)番号の更新が行われる場合もある。
【0031】
また、ルータ機能部31cがVPN制御部として機能する場合には、図5Cに示すVPNトンネル情報が固有データとして同期対象テーブル33cに記憶される。図5Cは、固有データの一例を示す図である。図5Cに示す例では、自装置側IPアドレス、相手装置側IPアドレス、SPI(Security Parameter Index)、暗号化鍵、シーケンス番号、受信パケット数、送信パケット数などの項目が固有データとして記憶される。すなわち、図5Cの例では、自装置側IPアドレスが「192.168.0.1」であり、相手装置側IPアドレスが「192.168.0.100」であることを示す。さらに、SPI(ポリシーID)が「100」であり、暗号化鍵が「aabbccdd…」であり、シーケンス番号が「123456」であり、受信パケット数が「1122」であり、また、送信パケット数が「3344」であることを示す。
【0032】
これら7つの項目のうち自装置側IPアドレス、相手装置側IPアドレス、SPI及び暗号化鍵はエントリが1度生成されると更新されることは基本としてなく、エントリの生存中には変化しない。一方、上記の7つの項目のうち残りのシーケンス番号、受信パケット数、送信パケット数などの項目は、クライアント端末20及びサーバ装置60間のパケットの授受に応答してVPN制御部により随時更新される。なお、ルータ30が多数のVPNトンネルの終端とされるノードとなる場合には、VPNトンネルの接続または切断を繰り返すこととなり、エントリの生成及び削除が多発する。また、ルータ機能部31cがVPN制御部として機能する場合には、VPN1つのパケットを送受信するごとにシーケンス番号の更新が後述のエントリ更新部37へ指示される。
【0033】
また、ルータ機能部31dが帯域制御部として機能する場合には、図5Dに示す帯域情報が固有データとして同期対象テーブル33dに記憶される。図5Dは、固有データの一例を示す図である。図5Dに示す例では、トラフィック(traffic)識別ID、通信方向、LANポート番号、現在帯域(bps)、最大帯域(bps)などの項目が固有データとして記憶される。すなわち、図5Dの例では、トラフィック識別IDが「1」であり、通信方向が「IN(クライアント端末からサーバ装置へ)」であり、LANポート番号が「2」であり、現在帯域が「876,543bps」であり、最大帯域が「1,000,000bps」であることを示す。
【0034】
これら5つの項目のうちトラフィック識別ID、通信方向及びLANポート番号は、エントリが1度生成されると更新されることは基本としてなく、エントリの生存中には変化しない。一方、上記の5つの項目のうち残りの現在帯域及び最大帯域などの項目は、クライアント端末20及びサーバ装置60間のパケットの授受に応答して帯域制御部により随時更新される。
【0035】
図3に戻り、テーブル管理部34は、同期対象テーブル33a〜33nを管理する処理部である。このテーブル管理部34は、図3に示すように、エントリ生成部35と、エントリ削除部36と、エントリ更新部37と、保持期限監視部38と、保持期限設定部39とを有する。
【0036】
このうち、エントリ生成部35は、ルータ機能部31により新規に固有データが生成された場合に、同期対象テーブル33にエントリを生成する処理部である。このようにエントリが生成される契機の一例としては、中継制御部として機能するルータ機能部31aが新たなルーティング経路を学習した場合やサーバ負荷分散制御部として機能するルータ機能部31bが新たなセッションを確立した場合などが挙げられる。また、他の一例としては、VPN制御部として機能するルータ機能部31cが新たなVPNトンネルを接続した場合や帯域制御部として機能するルータ機能部31dが新たなトラフィックを検出した場合などが挙げられる。なお、エントリ生成部35は、ルータ機能部31のいずれかによって新規に固有データが生成された場合にそのルータ機能部31に対応する同期対象テーブル33を対象にエントリの生成を実行する。
【0037】
このエントリの生成を説明すると、エントリ生成部35は、ルータ機能部31によって新規に固有データが生成された場合に、同期対象テーブル33内に有効フラグがOFFに設定された無効エントリが存在するか否かを判定する。このとき、有効フラグがOFFに設定された無効エントリが存在する場合には、エントリ生成部35は、新規に生成された新規生成データの書込み先として無効エントリを割り当てる。なお、有効フラグがOFFに設定された無効エントリが存在しない場合には、エントリ生成部35は、新規生成データの格納先として新たにエントリ番号を採番して生成した新規エントリを割り当てる。
【0038】
そして、エントリ生成部35は、先に割り当てたエントリへ新規生成データを書き込む。例えば、無効エントリが割り当てられた場合には、エントリ生成部35は、その無効エントリのエントリ番号に対応する固有データの書込み領域に新規生成データを上書きすることになる。この場合には、無効エントリに残された前のエントリの情報を削除するために、前回転送時刻を削除したり、有効フラグをONに設定したり、更新フラグをONに設定したりすることにより、同期用情報を初期化する。また、新規エントリが割り当てられた場合には、エントリ生成部35は、新規エントリのエントリ番号に対応する固有データの書込み領域に新規生成データを書き込む。この場合には、同期用情報は初期状態にあるので、改めて初期化する必要はない。
【0039】
このようにして新規生成データを書き込んだ後には、後述の保持期限設定部39により本エントリの保持期限が書き込まれる。この保持期限には、新規生成データの固有データの種別に応じた期限が設定される。
【0040】
その後、エントリ生成部35は、同期データ送信部32を介して、新規生成データ及び保持期限が書き込まれたエントリに関する情報をエントリ生成通知として待機系のルータ50へ送信する。このエントリ生成通知を行った後に、エントリ生成部35は、エントリ生成通知を送信した時刻を本エントリの前回転送時刻のフィールドへ書き込むとともに更新フラグをOFFに設定する。
【0041】
図6は、エントリ生成通知に含まれる情報の一例を示す図である。図6の例で言えば、図4で示したエントリ番号「3」の無効エントリを新規生成データで上書きするために、エントリ番号「3」、エントリの種別「新規」、保持期限「10:13:00」及び固有データ「・・・」が待機系のルータ50へ通知される。なお、エントリの更新がなされる場合には、エントリ種別に「更新」が書き込まれたエントリ更新通知が送信される。
【0042】
このように新規生成データに無効エントリを割り当てるのは、現用系のルータ30で保持期限が経過する前に無効とされたエントリで待機系のルータ50では無効とされずに保持されているエントリを新規生成データで上書きするためである。これによって、エントリの生成を待機系のルータ50へ通知するだけで、既に現用系のルータ30で無効となったエントリの削除を併せて通知することができる。このような無効エントリの割り当てを実現するために、本実施例では、ルータ機能部31により削除が指示されたエントリを直ちに削除するのではなく有効フラグをOFFにするにとどめ、エントリの削除は上書きを通じて行うこととしている。
【0043】
エントリ削除部36は、ルータ機能部31により固有データの削除が指示された場合に、同期対象テーブル33のエントリを削除扱いにする処理部である。このようにエントリが削除される契機の一例としては、サーバ負荷分散制御部として機能するルータ機能部31bがセッションを切断した場合などが挙げられる。他の一例としては、VPN制御部として機能するルータ機能部31cがVPNトンネルを接続した場合や帯域制御部として機能するルータ機能部31dがトラフィックを検出しなくなった場合などが挙げられる。なお、エントリ削除部36は、ルータ機能部31のいずれかによって固有データの削除が指示された場合にそのルータ機能部31に対応する同期対象テーブル33を対象にエントリの削除を実行する。
【0044】
このエントリ削除部36は、同期対象テーブル33に記憶されたエントリのうちルータ機能部31により固有データの削除が指示されたエントリの有効フラグをOFFに設定することにより、本エントリを無効エントリとし、削除されたものとして取り扱う。
【0045】
エントリ更新部37は、ルータ機能部31により固有データの更新が指示された場合に、そのエントリに対応する固有データを更新する処理部である。このようにエントリが更新される契機としては、クライアント端末20及びサーバ装置60の間でパケットの授受がなされた場合が挙げられる。一例としては、VPN制御部として機能するルータ機能部31cがシーケンス番号、受信パケット数や送信パケット数の更新を指示する場合が挙げられる。他の一例としては、帯域制御部として機能するルータ機能部31dが現在帯域や最大帯域の更新を指示する場合が挙げられる。なお、エントリ更新部37は、ルータ機能部31のいずれかによって固有データの更新が指示された場合にそのルータ機能部31に対応する同期対象テーブル33を対象にエントリの更新を実行する。
【0046】
このエントリの更新を説明すると、エントリ更新部37は、固有データの更新が指示された場合に、そのエントリに対応する固有データのうち更新対象とされる項目のデータを更新する。このとき、後述の保持期限設定部39により本エントリの保持期限も併せて更新される。なお、保持期限には、固有データの種別に応じた期限が再設定される。このようにして、パケットの送受信が行われる限りは保持期限が更新され続ける。
【0047】
そして、エントリ更新部37は、固有データを更新したエントリの前回転送時刻から所定の期間が経過したか否かを判定する。ここで、前回転送時刻からの経過時間と比較する所定の期間には、保持期限よりも短い期間を使用するものとする。本実施例では、所定期間が1秒であるものとして以下の説明を行う。
【0048】
このとき、前回転送時刻から所定の期間を経過している場合には、エントリ更新部37は、同期データ送信部32を介して、更新後の固有データ及び保持期限が書き込まれたエントリに関する情報をエントリ更新通知として待機系のルータ50へ送信する。続いて、エントリ更新部37は、エントリ更新通知を送信した時刻を本エントリの前回転送時刻のフィールドへ書き込むとともに更新フラグをOFFに設定する。
【0049】
一方、前回転送時刻から所定の期間を経過していない場合には、エントリ更新部37は、更新後の固有データ及び保持期限が書き込まれたエントリに対応する更新フラグをONに設定する。
【0050】
このように、前回転送時刻から所定の期間が経過することを条件にエントリ更新通知を行うことで、ルータ30が提供する機能に致命的な支障をきたすことなく、待機系のルータ50へ通知するエントリ更新通知を間引くことができる。すなわち、エントリには、エントリ生存中には値が変化しない固定の項目と、パケットの授受により値が変化する可変の項目とが存在する。このうち、可変の項目は、VPN機能を提供する場合にはシーケンス番号、受信パケット数、送信パケット数、帯域制御機能を提供する場合には現在帯域及び最大帯域といった統計情報である。このような統計情報がなくともエントリ生成時に書き込まれる固定の項目さえ残されていれば、仮に現用系と待機系との切り替えが行われたとしてもVPN制御や帯域制御を現用化された系で引き継ぐことができる。このため、現用系のルータ30では、エントリ生成の場合には待機系のルータ50へ逐次通知を行い、エントリ更新の場合には待機系のルータ50へ定期通知を行う。
【0051】
保持期限監視部38は、同期対象テーブル33に記憶された保持期限を監視する処理部である。この保持期限監視部38は、上記のエントリ削除部36に比較して、ルータ機能部31の指示とは無関係に、保持期限が超過したエントリの有効フラグをOFFに設定する点が異なる。
【0052】
これを説明すると、保持期限監視部38は、同期対象テーブル33内に保持期限を超過したエントリが存在するか否かを判定する。このとき、保持期限を超過したエントリが存在する場合には、保持期限監視部38は、保持期限を超過したエントリの有効フラグをOFFに設定する。このような保持期限の監視により、例えばルータ30がルーティング機能を提供する場合には、ARP学習テーブルに記憶されたエントリに既存のルータでなされる残存時間の設定を不要化できる。
【0053】
その後、有効フラグがOFFであるにもかかわらず、更新フラグがONであるエントリが同期対象テーブル33内に存在する場合に、保持期限監視部38は、そのエントリに関する情報をエントリ更新通知として待機系のルータ50へ送信する。このエントリ更新通知を行った後に、保持期限監視部38は、エントリ更新通知を送信した時刻を本エントリの前回転送時刻のフィールドへ書き込むとともに更新フラグをOFFに設定する。かかる保持期限監視部38が行うエントリ更新通知は、エントリ更新部37で固有データの更新がなされてから所定の期間が経過する前にパケットの送受信が途絶え、そのまま保持期限が経過したエントリの固有データを通知するためになされる。
【0054】
保持期限設定部39は、エントリが生成された場合またはエントリが更新された場合に、同期対象テーブル33に記憶される同期用情報の保持期限を設定または再設定する処理部である。
【0055】
この保持期限設定部39は、固有データの種別に応じて保持期限を設定する。例えば、中継制御部として機能するルータ機能部31aが使用する同期対象テーブル33aに保持期限を設定または再設定する場合には、保持期限設定部39は、一例として120秒を保持期限として設定する。このような保持期限を設定するのは、ARP学習テーブルに記憶されたエントリに既存のルータで設定される残存時間とほぼ同様の期間を設定するためである。
【0056】
また、サーバ負荷分散制御部として機能するルータ機能部31bが使用する同期対象テーブル33bに保持期限を設定または再設定する場合には、保持期限設定部39は、一例として30秒を保持期限として設定する。このような保持期限を設定するのは、サーバ負荷分散制御を行う場合に確立されるセッションの存在期間が数ミリ秒〜数秒と短く、高頻度でエントリの生成及び削除が発生するからである。
【0057】
また、VPN制御部として機能するルータ機能部31cが使用する同期対象テーブル33cに保持期限を設定または再設定する場合には、保持期限設定部39は、一例として3600秒を保持期限として設定する。このような保持期限を設定するのは、VPNトンネルの存在期間が数分〜数時間と長いからである。
【0058】
また、帯域制御部として機能するルータ機能部31dが使用する同期対象テーブル33dに保持期限を設定または再設定する場合には、保持期限設定部39は、一例として60秒を保持期限として設定する。このような保持期限を設定するのは、レイヤー4(TCPまたはUDP)やレイヤー7(HTTPなど)のトラフィックを識別して動的に帯域を割り当てる帯域制御を行う場合には、エントリの存在期間が数ミリ秒〜数十秒と短いからである。また、特定の拠点間や特定の通信内容に対して帯域を割り当てる帯域制御を行う場合には、エントリの存在期間は長くなるので、拠点間または通信内容により60秒よりも長い保持期限を別途設定することもできる。なお、この場合には、割り当て中の帯域や通過データ量などのデータ更新は頻繁に発生するので、エントリ更新部37で前回転送時刻からの経過時間との比較値として使用される所定の期間を先に述べた1秒よりも短くすることもできる。
【0059】
なお、ここでは、同期対象テーブル33cに設定または再設定する保持期限を同じ期間とする場合を説明したが、異なる期間を再設定することもできる。例えば、固有データの更新頻度が短いほど再設定する保持期限を短くしたり、また、固有データの更新頻度が長いほど再設定する保持期限を長くしたりすることもできる。
【0060】
また、ルータ機能部31及びテーブル管理部34などの機能部には、各種の集積回路や電子回路を採用できる。例えば、集積回路としては、ASIC(Application Specific Integrated Circuit)が挙げられる。また、電子回路としては、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などが挙げられる。
【0061】
また、同期対象テーブル33には、例えばRAM(Random Access Memory)、ROM(Read Only Memory)やフラッシュメモリ(flash memory)などの半導体メモリ素子が使用される。なお、同期対象テーブル33には、ハードディスク、光ディスクなどの記憶装置を採用することとしてもよい。
【0062】
[待機系のルータの構成]
次に、本実施例に係る待機系のルータの構成について説明する。図3に示すように、待機系のルータ50は、ルータ機能部51と、同期データ受信部52と、被同期対象テーブル53と、テーブル管理部54とを有する。
【0063】
ルータ機能部51a〜ルータ機能部51nは、現用系のルータ30のルータ機能部31a〜ルータ機能部31nと同様の機能を発揮する処理部であるが、現用系と待機系との系の切り替えが行われるまでは動作しない。なお、かかる現用系と待機系との系の切り替えは、待機系のルータ50がルータ30の障害を検知した場合や外部のコントロール端末から現用化指示を受け付けた場合に実行される。
【0064】
同期データ受信部52は、自装置の被同期対象テーブル53が保持するデータを現用系のルータ30が有する同期対象テーブル53と同期させるための同期データを受信する処理部である。
【0065】
被同期対象テーブル53a〜被同期対象テーブル53nは、現用系のルータ30が有する同期対象テーブル33との間でデータを同期される対象とするテーブルであり、ルータ50が搭載する機能ごとに別々のテーブルが保持される。ここで、各被同期対象テーブル53は、ルータ50が搭載する機能ごとに異なる固有データを有するが、現用系のルータ30の同期対象テーブル33との間で同期をとるために使用する同期用情報は各テーブルの間で共通して記憶される。
【0066】
図7は、各被同期対象テーブルで共通して記憶される同期用情報の一例を示す図である。図7に示すように、被同期対象テーブル53は、エントリ番号ごとに保持期限及び固有データを記憶したテーブルである。図7の示す例では、エントリ番号「1」のエントリは、保持期限が10時12分34秒であることを示す。また、エントリ番号「2」のエントリは、保持期限が10時12分45秒であることを示す。さらに、エントリ番号「3」のエントリは、保持期限が10時12分56秒であることを示す。なお、待機系のルータ50では、エントリ生成通知やエントリ更新通知を行わないので、被同期対象テーブル53では前回転送時刻、有効フラグ及び更新フラグなどの情報は保持されない。
【0067】
図3に戻り、テーブル管理部54は、被同期対象テーブル53a〜53nを管理する処理部である。このテーブル管理部54は、エントリ生成/更新部55と、保持期限監視部56とを有する。
【0068】
このうち、エントリ生成/更新部55は、同期データ受信部52を介して、エントリ生成通知またはエントリ更新通知を受け付けた場合に、被同期対象テーブル53a〜53nに対し、エントリの生成または更新を行う処理部である。
【0069】
これを説明すると、エントリ生成/更新部55は、エントリ生成通知またはエントリ更新通知に含まれるエントリ番号に該当するエントリ番号が被同期対象テーブル53に存在するか否かを判定する。このとき、被同期対象テーブル53に該当するエントリ番号が存在する場合には、エントリ生成/更新部55は、エントリ生成通知またはエントリ更新通知を受け付けた固有データを該当のエントリ番号の固有データの書込み領域へ上書きする。また、被同期対象テーブル53に該当するエントリ番号が存在しない場合には、エントリ生成/更新部55は、エントリ生成通知を受け付けたエントリ番号のエントリを新たに作成した上でその新規エントリの固有データの書込み領域へ固有データを書き込む。その後、エントリ生成/更新部55は、エントリ生成通知またはエントリ更新通知を受け付けた保持期限を該当のエントリ番号の保持期限の書込み領域へさらに書き込む。
【0070】
また保持期限監視部56は、被同期対象テーブル53に記憶された保持期限を監視する処理部である。これを説明すると、保持期限監視部56は、被同期対象テーブル53内に保持期限を超過したエントリが存在するか否かを判定する。このとき、保持期限を超過したエントリが存在する場合には、保持期限監視部56は、保持期限を超過したエントリを削除する。このように、待機系のルータ50の保持期限監視部56では、現用系のルータ30のように有効フラグをOFFに設定するのではなく、保持期限が超過したエントリを実際に削除する。
【0071】
また、ルータ機能部51及びテーブル管理部54などの機能部には、各種の集積回路や電子回路を採用できる。例えば、集積回路としては、ASIC(Application Specific Integrated Circuit)が挙げられる。また、電子回路としては、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などが挙げられる。
【0072】
また、被同期対象テーブル53には、例えばRAM(Random Access Memory)、ROM(Read Only Memory)やフラッシュメモリ(flash memory)などの半導体メモリ素子が使用される。なお、被同期対象テーブル53には、ハードディスク、光ディスクなどの記憶装置を採用することとしてもよい。
【0073】
[処理の流れ]
次に、本実施例に係る二重化システムの処理の流れを説明する。なお、ここでは、現用系のルータ30によって実行される(1)エントリ生成処理、(2)エントリ更新処理、(3)保持期限監視処理を説明する。その後に、待機系のルータ50によって実行される(4)受信処理、(5)保持期限監視処理を説明することとする。
【0074】
(1)エントリ生成処理
図8は、実施例2に係るエントリ生成処理の手順を示すフローチャートである。このエントリ生成処理は、ルータ機能部31により新規に固有データが生成された場合に起動する。
【0075】
図8に示すように、まず、エントリ生成部35は、同期対象テーブル33内に有効フラグがOFFに設定された無効エントリが存在するか否かを判定する(ステップS101)。このとき、有効フラグがOFFに設定された無効エントリが存在する場合(ステップS101肯定)には、エントリ生成部35は、新規生成データの書込み先として無効エントリを割り当てる(ステップS102)。
【0076】
一方、有効フラグがOFFに設定された無効エントリが存在しない場合(ステップS101否定)には、エントリ生成部35は、新規生成データの格納先として新たにエントリ番号を採番して生成した新規エントリを割り当てる(ステップS103)。
【0077】
そして、エントリ生成部35は、先のステップS102またはステップS103で割り当てたエントリへ新規生成データを書き込む(ステップS104)。続いて、保持期限設定部39は、本エントリの同期用情報の書込み領域に固有データの種別に応じた保持期限を書き込む(ステップS105)。
【0078】
その後、エントリ生成部35は、同期データ送信部32を介して、新規生成データ及び保持期限が書き込まれたエントリに関する情報をエントリ生成通知として待機系のルータ50へ送信する(ステップS106)。
【0079】
このエントリ生成通知を行った後に、エントリ生成部35は、エントリ生成通知を送信した時刻を本エントリの前回転送時刻のフィールドへ書き込むとともに更新フラグをOFFに設定し(ステップS107及びステップS108)、処理を終了する。
【0080】
(2)エントリ更新処理
図9は、実施例2に係るエントリ更新処理の手順を示すフローチャートである。このエントリ更新処理は、ルータ機能部31により固有データの更新が指示された場合に起動する。
【0081】
図9に示すように、エントリ更新部37は、固有データの更新が指示されたエントリに対応する固有データのうち更新対象とされる項目のデータを更新する(ステップS201)。そして、保持期限設定部39は、固有データの更新が指示されたエントリの保持期限を更新する(ステップS202)。そして、エントリ更新部37は、固有データを更新したエントリの前回転送時刻から所定の期間が経過したか否かを判定する(ステップS203)。
【0082】
ここで、前回転送時刻から所定の期間を経過している場合(ステップS203肯定)には、エントリ更新部37は、次のような処理を行う。すなわち、エントリ更新部37は、同期データ送信部32を介して、更新後の固有データ及び保持期限が書き込まれたエントリに関する情報をエントリ更新通知として待機系のルータ50へ送信する(ステップS204)。続いて、エントリ更新部37は、エントリ更新通知を送信した時刻を本エントリの前回転送時刻のフィールドへ書き込むとともに更新フラグをOFFに設定し(ステップS205及びステップS206)、処理を終了する。
【0083】
一方、前回転送時刻から所定の期間を経過していない場合(ステップS203否定)には、エントリ更新部37は、更新後の固有データ及び保持期限が書き込まれたエントリに対応する更新フラグをONに設定し(ステップS207)、処理を終了する。
【0084】
(3)現用系の保持期限監視処理
図10は、実施例2に係る現用系の保持期限監視処理の手順を示すフローチャートである。この現用系の保持期限監視処理は、所定の周期、例えば1秒おきに繰り返し起動する。なお、ここでは、一定間隔で行う場合を例示したが、予め定めた時刻になった時点で処理をきどうすることとしてもよい。
【0085】
図10に示すように、保持期限監視部38は、同期対象テーブル33内に保持期限を超過したエントリが存在するか否かを判定する(ステップS301)。このとき、保持期限を超過したエントリが存在する場合(ステップS301肯定)には、保持期限監視部38は、保持期限を超過したエントリの有効フラグをOFFに設定する(ステップS302)。一方、保持期限が超過したエントリが存在しない場合(ステップS301否定)には、有効フラグの更新を行うことなく、ステップS303へ移行する。
【0086】
その後、保持期限監視部38は、有効フラグがOFFであるにもかかわらず、更新フラグがONであるエントリが同期対象テーブル33内に存在するか否かを判定する(ステップS303)。
【0087】
ここで、有効フラグがOFFであり、かつ更新フラグがONであるエントリが存在する場合(ステップS303肯定)には、保持期限監視部38は、そのエントリに関する情報をエントリ更新通知として待機系のルータ50へ送信する(ステップS304)。このエントリ更新通知を行った後に、保持期限監視部38は、エントリ更新通知を送信した時刻を本エントリの前回転送時刻のフィールドへ書き込むとともに更新フラグをOFFに設定し(ステップS305及びステップS306)、処理を終了する。
【0088】
なお、有効フラグがOFFであり、かつ更新フラグがONであるエントリが存在しない場合(ステップS303否定)には、そのまま処理を終了する。
【0089】
(4)受信処理
図11は、実施例2に係る受信処理の手順を示すフローチャートである。この受信処理は、エントリ生成通知またはエントリ更新通知を受信した場合に起動する。
【0090】
図11に示すように、エントリ生成/更新部55は、エントリ生成通知またはエントリ更新通知に含まれるエントリ番号に該当するエントリ番号が被同期対象テーブル53に存在するか否かを判定する(ステップS401)。
【0091】
ここで、被同期対象テーブル53に該当するエントリ番号が存在する場合(ステップS401肯定)には、エントリ生成/更新部55は、次のような処理を行う。すなわち、エントリ生成/更新部55は、エントリ生成通知またはエントリ更新通知を受け付けた固有データを該当のエントリ番号の固有データの書込み領域へ上書きする(ステップS402)。
【0092】
一方、被同期対象テーブル53に該当するエントリ番号が存在しない場合(ステップS401否定)には、エントリ生成/更新部55は、次のような処理を行う。すなわち、エントリ生成/更新部55は、エントリ生成通知を受け付けたエントリ番号のエントリを新たに作成した上でその新規エントリの固有データの書込み領域へ固有データを書き込む(ステップS403)。
【0093】
その後、エントリ生成/更新部55は、エントリ生成通知またはエントリ更新通知を受け付けた保持期限を該当のエントリ番号の保持期限の書込み領域へさらに書き込み(ステップS404)、処理を終了する。
【0094】
(5)待機系の保持期限監視処理
図12は、実施例2に係る待機系の保持期限監視処理の手順を示すフローチャートである。この待機系の保持期限監視処理は、所定の周期、例えば1秒おきに繰り返し起動する。なお、ここでは、一定間隔で行う場合を例示したが、予め定めた時刻になった時点で処理をきどうすることとしてもよい。
【0095】
図12に示すように、被同期対象テーブル53内に保持期限を超過したエントリが存在するか否かを判定する(ステップS501)。このとき、保持期限を超過したエントリが存在する場合(ステップS501肯定)には、保持期限監視部56は、保持期限を超過したエントリを削除し(ステップS502)、処理を終了する。なお、保持期限を超過したエントリが存在しない場合(ステップS501否定)には、そのまま処理を終了する。
【0096】
[実施例2の効果]
上述してきたように、本実施例に係る二重化システム10は、現用系のルータ30が新規生成データとともに保持期限情報を待機系のルータ50へ通知するので、待機系のルータ50では保持期限が経過したデータを削除することができる。このため、本実施例に係る二重化システム10では、現用系のルータ30がデータの削除を待機系のルータ50へ改めて通知することを不要化することができ、通信頻度を低減できる。また、本実施例に係る二重化システム10では、新規生成データは直ちに待機系のルータ50へ通知されるので、新規生成データが待機系のルータ50に反映されるのが遅延することもない。したがって、本実施例に係る二重化システム10、現用系のルータ30及び待機系のルータ50によれば、通信負荷を削減しつつ最新のデータを早期に同期させることが可能である。
【0097】
また、本実施例に係る二重化システム10は、現用系のルータ30が同期対象テーブル33の固有データの種別に応じて保持期限の長さを決定する。このため、本実施例に係る二重化システム10では、二重化されるルータ30及びルータ50が搭載する機能、例えばルーティング機能、サーバ負荷分散機能、VPN機能や帯域制御機能に合った保持期限を多面的に定めることが可能である。
【0098】
さらに、本実施例に係る二重化システム10において、現用系のルータ30は、自装置で保持期限が経過する前に削除された場合に、削除されたデータのエントリを新規生成データの格納先と決定する。そして、現用系のルータ30は、データ及び保持期限とともにそのデータの格納先を待機系のルータ50へ通知する。一方、待機系のルータ50は、通知を受け付けた格納先のエントリにデータと保持期限とを対応付けて上書きすることにより被同期対象テーブル53への格納を行う。これによって、本実施例に係る二重化システム10によれば、エントリの生成を待機系のルータ50へ通知するだけで、既に現用系のルータ30で無効となったエントリの削除を併せて通知することが可能になる。
【実施例3】
【0099】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【0100】
例えば、上記の実施例2では、二重化されるルータ30及びルータ50がルーティング機能、サーバ負荷分散機能、VPN機能及び帯域制御機能を搭載する場合を説明したが、4つの機能を全て搭載する場合に実施例を限定するものではない。これらの4つの機能のうち少なくともいずれか1つを搭載していればよく、二重化される現用装置及び待機装置が必ずしもルータである必要はない。また、上記の4つの機能以外の機能を搭載する場合にも同様に適用できる。
【0101】
また、上記の実施例2では、二重化される現用装置及び待機装置の例として中継装置を例示したが、これに限定されるものではなく、サーバ装置を二重化する場合にも同様に適用することができる。
【0102】
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、エントリ生成部35、エントリ削除部36、エントリ更新部37、保持期限監視部38または保持期限設定部39の一部を現用系のルータ30の外部装置としてネットワーク経由で接続するようにしてもよい。例えば、エントリ生成/更新部55または保持期限監視部56の一部を待機系のルータ50の外部装置としてネットワーク経由で接続するようにしてもよい。また、エントリ生成部35、エントリ削除部36、エントリ更新部37、保持期限監視部38または保持期限設定部39を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の現用系のルータ30の機能を実現するようにしてもよい。また、エントリ生成/更新部55または保持期限監視部56を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の待機系のルータ50の機能を実現するようにしてもよい。また、同期対象テーブル33の全部または一部を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の現用系のルータ30の機能を実現するようにしてもかまわない。また、被同期対象テーブル53の全部または一部を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の待機系のルータ50の機能を実現するようにしてもかまわない。
【0103】
[同期制御プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図13を用いて、上記の実施例2に係る現用系のルータ30と同様の機能を有する同期制御プログラムを実行するコンピュータの一例について説明する。なお、図13は、実施例3に係る同期制御プログラムを実行するコンピュータの一例について説明するための図である。また、ここでは、現用系のルータ30と同様の機能を有する同期制御プログラムを実行するコンピュータの例を説明したが、待機系のルータ50と同様の機能を有する同期制御プログラムを実行する場合も同様である。
【0104】
図13に示すように、実施例3におけるコンピュータ100は、操作部110aと、マイク110bと、スピーカ110cと、ディスプレイ120と、通信部130とを有する。さらに、このコンピュータ100は、CPU150と、ROM160と、HDD(Hard Disk Drive)170と、RAM(Random Access Memory)180と有する。これら110〜180の各部はバス140を介して接続される。
【0105】
ROM160には、上記の実施例2で示したエントリ生成部35と、エントリ削除部36と、エントリ更新部37と、保持期限監視部38と、保持期限設定部39と同様の機能を発揮する制御プログラムが予め記憶される。つまり、ROM160には、図13に示すように、エントリ生成プログラム160aと、エントリ削除プログラム160bと、エントリ更新プログラム160cとが記憶される。さらに、ROM160には、図13に示す保持期限監視プログラム160dと、保持期限設定プログラム160eとが記憶される。なお、これらのプログラム160a〜160eについては、図3に示したルータ30の各構成要素と同様、適宜統合又は分離しても良い。
【0106】
そして、CPU150が、これらのプログラム160a〜160eをROM160から読み出して実行する。これによって、CPU150は、図13に示すように、各プログラム160a〜160eについては、エントリ生成プロセス150a、エントリ削除プロセス150b及びエントリ更新プロセス150cとして機能するようになる。さらに、CPU150は、保持期限監視プロセス150d及び保持期限設定プロセス150eとして機能するようになる。なお、各プロセス150a〜150eは、図3に示した、エントリ生成部35と、エントリ削除部36と、エントリ更新部37と、保持期限監視部38と、保持期限設定部39とにそれぞれ対応する。
【0107】
そして、HDD170には、同期対象テーブル170aが設けられる。なお、同期対象テーブル170aは、図3に示した同期対象テーブル33に対応する。
【0108】
そして、CPU150は、同期対象テーブル170aを読み出してRAM180に格納する。さらに、CPU150は、RAM180に格納された同期対象データ180aを用いて、同期制御プログラムを実行する。
【0109】
なお、上記した同期制御プログラムについては、必ずしも最初からHDD170やROM160に記憶させておく必要はない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から各プログラムを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに各プログラムを記憶させておき、コンピュータ100がこれらから各プログラムを取得して実行するようにしてもよい。
【0110】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【0111】
(付記1)現用装置と待機装置とを有する二重化システムであって、
前記現用装置が、
保持されたデータの保持期限情報を生成する生成部と、
前記データと前記保持期限情報とを前記待機装置に通知する通知部と、
を備え、
前記待機装置が、
前記現用装置から通知されたデータと保持期限情報とを対応付けて記憶部に格納する格納部と、
前記保持期限情報が示す保持期限が到来した場合に、当該保持期限に対応付けられたデータを削除する削除部と
を備えたことを特徴とする二重化システム。
【0112】
(付記2)前記生成部は、前記データの内容に応じて前記保持期限情報が示す保持期限を決定することを特徴とする付記1に記載の二重化システム。
【0113】
(付記3)前記現用装置が、
前記保持期限情報が示す保持期限が到来する前に削除されたデータが格納されていた格納先を、新規に生成されたデータの格納先として決定する格納先決定部をさらに備え、
前記通知部は、前記新規に生成されたデータと該新規に生成されたデータの保持期限情報と該新規に生成されたデータの格納先を示す格納先情報とを前記待機装置に通知し、
前記格納部は、通知された格納先情報に対応する前記記憶部の格納先に、前記新規に生成されたデータと該新規に生成されたデータの保持期限情報とを対応付けて上書きすることを特徴とする付記1または2に記載の二重化システム。
【0114】
(付記4)待機装置とともに二重化される現用装置であって、
保持されたデータの保持期限情報を生成する生成部と、
前記データと前記保持期限情報とを前記待機装置に通知する通知部と
を備えたことを特徴とする現用装置。
【0115】
(付記5)現用装置とともに二重化される待機装置であって、
前記現用装置からの通知として、データとともに該データに付与された保持期限情報を受け付ける通知受付部と、
前記通知を受け付けたデータと保持期限情報とを対応付けて記憶部に格納する格納部と、
前記保持期限情報が示す保持期限が到来した場合に当該保持期限に対応付けられたデータを削除する削除部と
を備えたことを特徴とする待機装置。
【0116】
(付記6)待機装置とともに二重化される現用装置において実行される同期制御プログラムであって、
前記現用装置に、
保持されたデータの保持期限情報を生成する生成手順と、
前記データと前記保持期限情報とを前記待機装置に通知する通知手順と
を実行させることを特徴とする同期制御プログラム。
【0117】
(付記7)現用装置とともに二重化される待機装置において実行される同期制御プログラムであって、
前記待機装置に、
前記現用装置からの通知として、データとともに該データに付与された保持期限情報を受け付ける通知受付手順と、
前記通知を受け付けたデータと保持期限情報とを対応付けて記憶部に格納する格納手順と、
前記保持期限情報が示す保持期限が到来した場合に当該保持期限に対応付けられたデータを削除する削除手順と
を実行させることを特徴とする同期制御プログラム。
【符号の説明】
【0118】
1 二重化システム
3 現用装置
3a 生成部
3b 通知部
5 待機装置
5a 記憶部
5b 格納部
5c 削除部
10 二重化システム
20A,20B,20C クライアント端末
30 現用系のルータ
31a〜31n ルータ機能部
32 同期データ送信部
33a〜31n 同期対象テーブル
34 テーブル管理部
35 エントリ生成部
36 エントリ削除部
37 エントリ更新部
38 保持期限監視部
39 保持期限設定部
40 ネットワーク
50 待機系のルータ
51a〜51n ルータ機能部
52 同期データ受信部
53a〜53n 被同期対象テーブル
54 テーブル管理部
55 エントリ生成/更新部
56 保持期限監視部
60A,60B,60C サーバ装置

【特許請求の範囲】
【請求項1】
現用装置と待機装置とを有する二重化システムであって、
前記現用装置が、
保持されたデータの保持期限情報を生成する生成部と、
前記データと前記保持期限情報とを前記待機装置に通知する通知部と、
を備え、
前記待機装置が、
前記現用装置から通知されたデータと保持期限情報とを対応付けて記憶部に格納する格納部と、
前記保持期限情報が示す保持期限が到来した場合に、当該保持期限に対応付けられたデータを削除する削除部と
を備えたことを特徴とする二重化システム。
【請求項2】
前記生成部は、前記データの内容に応じて前記保持期限情報が示す保持期限を決定することを特徴とする請求項1に記載の二重化システム。
【請求項3】
前記現用装置が、
前記保持期限情報が示す保持期限が到来する前に削除されたデータが格納されていた格納先を、新規に生成されたデータの格納先として決定する格納先決定部をさらに備え、
前記通知部は、前記新規に生成されたデータと該新規に生成されたデータの保持期限情報と該新規に生成されたデータの格納先を示す格納先情報とを前記待機装置に通知し、
前記格納部は、通知された格納先情報に対応する前記記憶部の格納先に、前記新規に生成されたデータと該新規に生成されたデータの保持期限情報とを対応付けて上書きすることを特徴とする請求項1または2に記載の二重化システム。
【請求項4】
待機装置とともに二重化される現用装置であって、
保持されたデータの保持期限情報を生成する生成部と、
前記データと前記保持期限情報とを前記待機装置に通知する通知部と
を備えたことを特徴とする現用装置。
【請求項5】
現用装置とともに二重化される待機装置であって、
前記現用装置からの通知として、データとともに該データに付与された保持期限情報を受け付ける通知受付部と、
前記通知を受け付けたデータと保持期限情報とを対応付けて記憶部に格納する格納部と、
前記保持期限情報が示す保持期限が到来した場合に当該保持期限に対応付けられたデータを削除する削除部と
を備えたことを特徴とする待機装置。
【請求項6】
待機装置とともに二重化される現用装置において実行される同期制御プログラムであって、
前記現用装置に、
保持されたデータの保持期限情報を生成する生成手順と、
前記データと前記保持期限情報とを前記待機装置に通知する通知手順と
を実行させることを特徴とする同期制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5A】
image rotate

【図5B】
image rotate

【図5C】
image rotate

【図5D】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2011−193401(P2011−193401A)
【公開日】平成23年9月29日(2011.9.29)
【国際特許分類】
【出願番号】特願2010−59977(P2010−59977)
【出願日】平成22年3月16日(2010.3.16)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】