(57)【要約】【課題】冗長システムにおいて連続運用を実現すること。【解決手段】アプリケーションの作動により生成される同期データを運用系装置と待機系装置との間で同期すると共に、上記運用系装置と上記待機系装置との間で系交替を行う冗長制御手段を備える。そして、上記待機系装置が備える上記冗長制御手段は、運用系装置のアプリケーションのバージョンと待機系装置のアプリケーションのバージョンとの新旧を判別するバージョン判別手段と、上記待機系装置のアプリケーションのバージョンが新しい場合に、新バージョンのアプリケーションが有する処理機能のうち、上記運用系装置の旧バージョンの上記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段と、を備える。【選択図】図１
2010146044.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ同一のアプリケーションが組み込まれ、相互に接続された運用系装置及び待機系装置を備え、
前記運用系装置と前記待機系装置とは、前記アプリケーションの作動により生成される同期データを記憶して、前記運用系装置と前記待機系装置との間で同期すると共に、前記運用系装置と前記待機系装置との間で系交替を行う冗長制御手段をそれぞれ備え、
前記運用系装置が備える前記冗長制御手段は、当該運用系装置に組み込まれている前記アプリケーションのバージョンを表す情報を前記待機系装置に通知するバージョン通知手段を備え、
前記待機系装置が備える前記冗長制御手段は、
前記運用系装置から通知された情報に基づいて、当該運用系装置に組み込まれている前記アプリケーションのバージョンと前記待機系装置に組み込まれている前記アプリケーションのバージョンとの新旧を判別するバージョン判別手段と、
前記待機系装置に組み込まれている前記アプリケーションのバージョンが新しい場合に、当該待機系装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、前記運用系装置に組み込まれている旧バージョンの前記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、前記新バージョンのアプリケーションを前記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段と、を備えた、
冗長システム。
【請求項２】
請求項１記載の冗長システムであって、
前記冗長制御手段は、当該冗長制御手段が装備された装置にて作動している前記アプリケーション毎に区別して、当該アプリケーションにて生成される前記同期データを記憶する、
冗長システム。
【請求項３】
請求項１又は２記載の冗長システムであって、
前記冗長制御手段は、当該冗長制御手段が装備された装置にて作動している前記アプリケーションのバージョンが新しくなる毎に追加される前記同期データを、当該バージョン毎に区別して記憶する、
冗長システム。
【請求項４】
請求項３記載の冗長システムであって、
前記待機系装置が備える前記冗長制御手段の前記アプリケーション運転制御手段は、前記新バージョンのアプリケーションを前記旧バージョンのアプリケーションとして作動させている状態で当該待機系装置が前記運用系装置に系交替された場合に、前記アプリケーションが有する全ての処理機能を作動させて新バージョンのアプリケーションとして運転させる、
冗長システム。
【請求項５】
請求項１乃至４のいずれか一項に記載の冗長システムであって、
前記待機系装置が備える前記冗長制御手段は、前記アプリケーションが更新されて組み込まれたときに、前記バージョン判別手段と前記アプリケーション運転制御手段とを作動させる、
冗長システム。
【請求項６】
請求項１乃至５のいずれか一項に記載の冗長システムであって、
前記待機系装置が備える前記冗長制御手段は、前記運用系装置と前記待機系装置との間で系交替があったときに、前記バージョン判別手段と前記アプリケーション運転制御手段とを作動させる、
冗長システム。
【請求項７】
接続されている他の情報処理装置と同一のアプリケーションが組み込まれており、当該アプリケーションの作動によって生成される同期データを他の情報処理装置との間で同期すると共に、自装置が運用系あるいは待機系として作動するよう他の情報処理装置と系交替を行う冗長制御手段を備えると共に、
自装置が運用系として作動している場合に、前記アプリケーションのバージョンを表す情報を待機系である他の情報処理装置に送信するバージョン情報通知手段と、
自装置が待機系として作動している場合に、
運用系である他の情報処理装置から送信された情報に基づいて、当該運用系に組み込まれている前記アプリケーションのバージョンと自装置に組み込まれている前記アプリケーションのバージョンとの新旧を判別するバージョン判別手段と、
自装置に組み込まれている前記アプリケーションのバージョンが新しい場合に、当該自装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、運用系に組み込まれている旧バージョンの前記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、自装置に組み込まれている前記新バージョンのアプリケーションを前記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段と、を備えた、
情報処理装置。
【請求項８】
請求項７記載の情報処理装置であって、
前記冗長制御手段は、作動している前記アプリケーション毎に区別して、当該アプリケーションにて生成される前記同期データを記憶する、
情報処理装置。
【請求項９】
請求項７又は８記載の情報処理装置であって、
前記冗長制御手段は、作動している前記アプリケーションのバージョンが新しくなる毎に追加される前記同期データを、当該バージョン毎に区別して記憶する、
情報処理装置。
【請求項１０】
情報処理装置に、
接続されている他の情報処理装置と同一のアプリケーションが組み込まれており、当該アプリケーションの作動によって生成される同期データを他の情報処理装置との間で同期すると共に、自装置が運用系あるいは待機系として作動するよう他の情報処理装置と系交替を行う冗長制御手段と、
自装置が運用系として作動している場合に、前記アプリケーションのバージョンを表す情報を待機系である他の情報処理装置に送信するバージョン情報通知手段と、
自装置が待機系として作動している場合に、
運用系である他の情報処理装置から送信された情報に基づいて、当該運用系に組み込まれている前記アプリケーションのバージョンと自装置に組み込まれている前記アプリケーションのバージョンとの新旧を判別するバージョン判別手段と、
自装置に組み込まれている前記アプリケーションのバージョンが新しい場合に、当該自装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、運用系に組み込まれている旧バージョンの前記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、自装置に組み込まれている前記新バージョンのアプリケーションを前記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段と、
を実現させるためのプログラム。
【請求項１１】
請求項１０記載のプログラムであって、
前記冗長制御手段は、作動している前記アプリケーション毎に区別して、当該アプリケーションにて生成される前記同期データを記憶する、
プログラム。
【請求項１２】
請求項１０又は１１記載のプログラムであって、
前記冗長制御手段は、作動している前記アプリケーションのバージョンが新しくなる毎に追加される前記同期データを、当該バージョン毎に区別して記憶する、
プログラム。
【請求項１３】
それぞれ同一のアプリケーションが組み込まれ、相互に接続された運用系装置及び待機系装置を備えた冗長システムにて、
前記アプリケーションの作動により生成される同期データを記憶して、前記運用系装置と前記待機系装置との間で同期すると共に、前記運用系装置と前記待機系装置との間で系交替を行う冗長制御工程を有すると共に、
前記冗長制御工程は、
前記運用系装置に組み込まれている前記アプリケーションのバージョンを表す情報を当該運用系装置から前記待機系装置に通知するバージョン通知工程と、
前記運用系装置から通知された情報に基づいて、前記待機系装置が前記運用系装置に組み込まれている前記アプリケーションのバージョンと前記待機系装置に組み込まれている前記アプリケーションのバージョンとの新旧を判別するバージョン判別工程と、
前記待機系装置に組み込まれている前記アプリケーションのバージョンが新しい場合に、当該待機系装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、前記運用系装置に組み込まれている旧バージョンの前記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、前記待機系装置が前記新バージョンのアプリケーションを前記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御工程と、
を有する冗長制御方法。
【請求項１４】
請求項１３記載の冗長制御方法であって、
前記冗長制御工程は、作動している前記アプリケーション毎に区別して、当該アプリケーションにて生成される前記同期データを記憶する、
冗長制御方法。
【請求項１５】
請求項１３又は１４記載の冗長制御方法であって、
前記冗長制御工程は、作動している前記アプリケーションのバージョンが新しくなる毎に追加される前記同期データを、当該バージョン毎に区別して記憶する、
冗長制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、冗長システムにかかり、特に、運用系装置と待機系装置とを備えた冗長システムに関する。
【背景技術】
【０００２】
近年、携帯電話機が普及しているが、このような携帯電話機の通信制御は、通信事業者（キャリア）によって管理されたサーバコンピュータなどの通信制御装置によって実現されている。そして、携帯電話機は、もはや不可欠なものとなっているため、サービスが中断しないよう通信制御装置が連続運用されることが望ましい。このため、通信事業者が管理する通信制御装置は、通常、運用系装置と待機系装置とを備えて二重化された冗長システムを構成している。また、このような冗長システムは、通信制御装置に限らず、ファイルサーバなど、連続運用が必要とされるあらゆるシステムに導入されている。
【０００３】
そして、通常、ホットスタンバイ構成の冗長システムでは、各アプリケーション機能の通信制御情報／装置設定情報など（以降、「同期データ」と称す）を運用系と待機系間でリアルタイムに同期しておくことで、突然の障害や保守者による手動の系交替を行ってもサービスに影響なく運用している。このとき、リアルタイム同期を行っている関係上、同期データの情報形式（以降、データフォーマットと称す）は、運用系と待機系のソフトウェアで過不足なく情報を同期できるよう決められており、同期データのデータフォーマット変更は、運用系と待機系の同期維持に関わる内容となり、極めて重要である。
【０００４】
ところが、冗長システムは、提供するサービスの機能追加やバグ修正などを目的として、組み込まれているソフトウェアを更新する必要があるが、このような場合に、同期データのデータフォーマットが変更される場合がある。すると、変更された同期データフォーマットを持つ新ソフトウェアへ更新する場合、必ず一度はサービスを中断する必要が生じる。
【０００５】
つまり、サービスを中断せずに更新を行う場合には、以下のような不都合が生じる。例えば、最初に待機系を新ソフトウェアに更新する場合、新ソフトウェア起動後の待機系と旧ソフトウェアが起動している運用系との間で同期データフォーマットが異なっていることから、運用系の同期データを待機系で読み出し不整合が発生し、同期を行うことができない。その結果、運用系の情報は待機系に何も引き継がれない状態となる。次に、運用系を新ソフトウェアに更新する。この時、運用系は新ソフトウェア読み出しのために再起動させる必要があり、同期データが待機系に同期されていないため運用系再起動により待機系に系交替する。ところが、待機系は運用系から情報が引き継がれていないため、例えば、VoIP（Voice over Internet Protocol）等の音声呼を管理している通信サービスでは、管理情報がなくなるため、音声が全断するというサービス上多大な影響が出てしまう。すると、呼情報を再度構築するための時間が必要となるため、通信復旧までに時間も要すという問題があった。
【０００６】
また、待機系に対してソフトウェア更新を行った後は、運用系と同期データの同期が行えないため、待機系は起動しても情報は何も無い状態になる。この時に運用系の障害が発生した場合、運用系となった旧待機系は、情報が無いために通信を復旧させることが出来ず、通信は全断となってしまう耐障害性の問題もあった。
【０００７】
【特許文献１】特開２００７−２６４９７９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
ここで、冗長システムのファイル更新方法に関する技術が、特許文献１に開示されている。この特許文献では、待機系で更新するソフトウェアの新旧両バージョンを保持しており、同期データを旧バージョンから新バージョンに変換している。ところが、上記特許文献に開示の技術では、ソフトウェアと同期データのいずれも、新旧両バージョンに対応したものを保持しなければならず、また、同期データの変換処理も行う必要がある。その結果、装置を高スペック化したり、装置の負荷が増大する、という問題が生じる。
【０００９】
このため、本発明の目的は、上述した課題である、冗長システムの負荷を抑制しつつ、当該冗長システムにおいて連続運用を実現する、ことにある。
【課題を解決するための手段】
【００１０】
かかる目的を達成するため本発明の一形態である冗長システムは、
それぞれ同一のアプリケーションが組み込まれ、相互に接続された運用系装置及び待機系装置を備え、
上記運用系装置と上記待機系装置とは、上記アプリケーションの作動により生成される同期データを記憶して、上記運用系装置と上記待機系装置との間で同期すると共に、上記運用系装置と上記待機系装置との間で系交替を行う冗長制御手段をそれぞれ備え、
上記運用系装置が備える上記冗長制御手段は、当該運用系装置に組み込まれている上記アプリケーションのバージョンを表す情報を上記待機系装置に通知するバージョン通知手段を備え、
上記待機系装置が備える上記冗長制御手段は、
上記運用系装置から通知された情報に基づいて、当該運用系装置に組み込まれている上記アプリケーションのバージョンと上記待機系装置に組み込まれている上記アプリケーションのバージョンとの新旧を判別するバージョン判別手段と、
上記待機系装置に組み込まれている上記アプリケーションのバージョンが新しい場合に、当該待機系装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、上記運用系装置に組み込まれている旧バージョンの上記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段と、を備えた、という構成を採る。
【００１１】
また、本発明の他の形態である情報処理装置は、
接続されている他の情報処理装置と同一のアプリケーションが組み込まれており、当該アプリケーションの作動によって生成される同期データを他の情報処理装置との間で同期すると共に、自装置が運用系あるいは待機系として作動するよう他の情報処理装置と系交替を行う冗長制御手段を備えると共に、
自装置が運用系として作動している場合に、上記アプリケーションのバージョンを表す情報を待機系である他の情報処理装置に送信するバージョン情報通知手段と、
自装置が待機系として作動している場合に、
運用系である他の情報処理装置から送信された情報に基づいて、当該運用系に組み込まれている上記アプリケーションのバージョンと自装置に組み込まれている上記アプリケーションのバージョンとの新旧を判別するバージョン判別手段と、
自装置に組み込まれている上記アプリケーションのバージョンが新しい場合に、当該自装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、運用系に組み込まれている旧バージョンの上記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、自装置に組み込まれている上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段と、を備えた、という構成を採る。
【００１２】
また、本発明の他の形態であるプログラムは、
情報処理装置に、
接続されている他の情報処理装置と同一のアプリケーションが組み込まれており、当該アプリケーションの作動によって生成される同期データを他の情報処理装置との間で同期すると共に、自装置が運用系あるいは待機系として作動するよう他の情報処理装置と系交替を行う冗長制御手段と、
自装置が運用系として作動している場合に、上記アプリケーションのバージョンを表す情報を待機系である他の情報処理装置に送信するバージョン情報通知手段と、
自装置が待機系として作動している場合に、
運用系である他の情報処理装置から送信された情報に基づいて、当該運用系に組み込まれている上記アプリケーションのバージョンと自装置に組み込まれている上記アプリケーションのバージョンとの新旧を判別するバージョン判別手段と、
自装置に組み込まれている上記アプリケーションのバージョンが新しい場合に、当該自装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、運用系に組み込まれている旧バージョンの上記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、自装置に組み込まれている上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段と、
を実現させるためのプログラムである。
【００１３】
また、本発明の他の形態である冗長制御方法は、
それぞれ同一のアプリケーションが組み込まれ、相互に接続された運用系装置及び待機系装置を備えた冗長システムにて、
上記アプリケーションの作動により生成される同期データを記憶して、上記運用系装置と上記待機系装置との間で同期すると共に、上記運用系装置と上記待機系装置との間で系交替を行う冗長制御工程を有すると共に、
上記冗長制御工程は、
上記運用系装置に組み込まれている上記アプリケーションのバージョンを表す情報を当該運用系装置から上記待機系装置に通知するバージョン通知工程と、
上記運用系装置から通知された情報に基づいて、上記待機系装置が上記運用系装置に組み込まれている上記アプリケーションのバージョンと上記待機系装置に組み込まれている上記アプリケーションのバージョンとの新旧を判別するバージョン判別工程と、
上記待機系装置に組み込まれている上記アプリケーションのバージョンが新しい場合に、当該待機系装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、上記運用系装置に組み込まれている旧バージョンの上記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、上記待機系装置が上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御工程と、
を有する。
【発明の効果】
【００１４】
本発明は、以上のように構成されることにより、冗長システムの負荷を抑制しつつ、冗長システムにおいて連続運用を実現することができる。
【発明を実施するための最良の形態】
【００１５】
＜実施形態１＞
本発明の第１の実施形態を、図１乃至図２を参照して説明する。図１は、冗長システムの構成を示す機能ブロック図であり、図２は、冗長制御部の構成を示す機能ブロック図である。なお、本実施形態では、冗長システムの概略を説明する。
【００１６】
図１に示すように、本実施形態における冗長システムは、
それぞれ同一のアプリケーション（アプリケーション群１（１２，２２）、アプリケーション群２（１３，２３））が組み込まれ、相互に接続された運用系装置（ゲートウェイ装置１（１０））及び待機系装置（ゲートウェイ装置（２０））を備えている。
【００１７】
そして、上記運用系装置と上記待機系装置とは、上記アプリケーションの作動により生成される同期データを記憶して（符号１５，２５参照）、上記運用系装置と上記待機系装置との間で同期すると共に、上記運用系装置と上記待機系装置との間で系交替を行う冗長制御手段（冗長制御部１１，２１）をそれぞれ備えている。
【００１８】
また、上記運用系装置（ゲートウェイ装置１（１０））が備える上記冗長制御手段（冗長制御部１１）は、図２に示すように、当該運用系装置に組み込まれている上記アプリケーションのバージョンを表す情報を上記待機系装置に通知するバージョン通知手段（バージョン通知部４１）を備えている。
【００１９】
さらに、上記待機系装置（ゲートウェイ装置２（２０））が備える上記冗長制御手段（冗長制御部２１）は、図２に示すように、上記運用系装置から通知された情報に基づいて、当該運用系装置に組み込まれている上記アプリケーションのバージョンと上記待機系装置に組み込まれている上記アプリケーションのバージョンとの新旧を判別するバージョン判別手段（バージョン判定部４２）と、上記待機系装置に組み込まれている上記アプリケーションのバージョンが新しい場合に、当該待機系装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、上記運用系装置に組み込まれている旧バージョンの上記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段（アプリけーしょん運転制御部４３）と、を備えている。
【００２０】
上記発明によると、まず、冗長システムが作動し、運用系装置のアプリケーションが作動することで蓄積された同期データが、運用系装置と待機系装置との間で同期される。このとき、待機系装置のアプリケーションがバージョンアップされたり、運用系装置と待機系装置との系交換が行われたとする。すると、待機系装置は、運用系装置から通知された同期データなどの情報に基づいて、当該運用系装置に組み込まれているアプリケーションのバージョンを判別すると共に、各装置に組み込まれたアプリケーションのバージョンの新旧を判別する。そして、待機系装置に新バージョンのアプリケーションが組み込まれていると判別した場合には、この新バージョンのアプリケーションのうち、旧バージョンのアプリケーションに相当する機能のみを作動させ、当該新バージョンのアプリケーションを旧バージョンとして縮退運転する。
【００２１】
従って、運用系装置が旧バージョンのアプリケーションを作動させている間は、待機系装置も旧バージョンのアプリケーションの機能のみ運転させているため、相互に同期データを確実に同期させることができる。すると、この状態で運用系装置の障害などが生じた場合であっても、運用系装置と待機系装置との間で、迅速かつ適切に系交替を実行することができる。その結果、旧バージョンのアプリケーションや旧バージョンの同期データを別途保持しておく必要がないため、冗長システムの負荷を抑制しつつ、冗長システムにおいて連続運用を実現することができる。
【００２２】
また、上記冗長システムでは、上記冗長制御手段は、当該冗長制御手段が装備された装置にて作動している上記アプリケーション毎に区別して、当該アプリケーションにて生成される上記同期データを記憶する、という構成を採る。
【００２３】
これにより、他のアプリケーションに影響を及ぼすことなく、更新されたアプリケーション毎による同期データを確実に同期させることができる。
【００２４】
また、上記冗長システムでは、上記冗長制御手段は、当該冗長制御手段が装備された装置にて作動している上記アプリケーションのバージョンが新しくなる毎に追加される上記同期データを、当該バージョン毎に区別して記憶する、という構成を採る。
【００２５】
これにより、各装置で作動しているアプリケーションのバージョン毎に、データフォーマットなどを一致させて適切に同期データを同期させておくことができる。従って、系交替を確実かつ迅速に実行することができる。
【００２６】
また、上記冗長システムでは、上記待機系装置が備える上記冗長制御手段の上記アプリケーション運転制御手段は、上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させている状態で当該待機系装置が上記運用系装置に系交替された場合に、上記アプリケーションが有する全ての処理機能を作動させて新バージョンのアプリケーションとして運転させる、という構成を採る。
【００２７】
これにより、系交替によって新たに運用系となった旧待機系装置は、新バージョンのアプリケーションを作動させ、当該新バージョンの同期データを追加して記憶する。そして、新たに待機系となった旧運用系装置は、旧バージョンのアプリケーションを作動させているが、新たな運用系と同期された同期データのうち、旧バージョンに対応する同期データを利用して、旧バージョンのアプリケーションで運転を継続させることができる。従って、仮に新たな運用系に障害が生じたとしても、運用を停止することなく連続運用可能となり、耐障害性の向上を図ることができる。
【００２８】
また、上記冗長システムでは、具体的には、上記待機系装置が備える上記冗長制御手段は、上記アプリケーションが更新されて組み込まれたときに、上記バージョン判別手段と上記アプリケーション運転制御手段とを作動させる、という構成を採る。さらに、上記待機系装置が備える上記冗長制御手段は、上記運用系装置と上記待機系装置との間で系交替があったときに、上記バージョン判別手段と上記アプリケーション運転制御手段とを作動させる、という構成を採る。
【００２９】
そして、上述した冗長システムを構成する上記運用系装置及び待機系装置は、以下の構成の情報処理装置にて構成される。具体的に、本発明の他の携帯である情報処理装置は、
接続されている他の情報処理装置と同一のアプリケーションが組み込まれており、当該アプリケーションの作動によって生成される同期データを他の情報処理装置との間で同期すると共に、自装置が運用系あるいは待機系として作動するよう他の情報処理装置と系交替を行う冗長制御手段を備えると共に、
自装置が運用系として作動している場合に、上記アプリケーションのバージョンを表す情報を待機系である他の情報処理装置に送信するバージョン情報通知手段と、
自装置が待機系として作動している場合に、
運用系である他の情報処理装置から送信された情報に基づいて、当該運用系に組み込まれている上記アプリケーションのバージョンと自装置に組み込まれている上記アプリケーションのバージョンとの新旧を判別するバージョン判別手段と、
自装置に組み込まれている上記アプリケーションのバージョンが新しい場合に、当該自装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、運用系に組み込まれている旧バージョンの上記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、自装置に組み込まれている上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段と、を備えた、という構成を採る。
【００３０】
そして、上記情報処理装置では、上記冗長制御手段は、作動している上記アプリケーション毎に区別して、当該アプリケーションにて生成される上記同期データを記憶する、という構成を採る。また、上記冗長制御手段は、作動している上記アプリケーションのバージョンが新しくなる毎に追加される上記同期データを、当該バージョン毎に区別して記憶する、という構成を採る。
【００３１】
また、上記情報処理装置は、当該情報処理装置に、所定のプログラムが組み込まれることで実現できる。具体的に、本発明の他の形態であるプログラムは、情報処理装置に、
接続されている他の情報処理装置と同一のアプリケーションが組み込まれており、当該アプリケーションの作動によって生成される同期データを他の情報処理装置との間で同期すると共に、自装置が運用系あるいは待機系として作動するよう他の情報処理装置と系交替を行う冗長制御手段と、
自装置が運用系として作動している場合に、上記アプリケーションのバージョンを表す情報を待機系である他の情報処理装置に送信するバージョン情報通知手段と、
自装置が待機系として作動している場合に、
運用系である他の情報処理装置から送信された情報に基づいて、当該運用系に組み込まれている上記アプリケーションのバージョンと自装置に組み込まれている上記アプリケーションのバージョンとの新旧を判別するバージョン判別手段と、
自装置に組み込まれている上記アプリケーションのバージョンが新しい場合に、当該自装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、運用系に組み込まれている旧バージョンの上記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、自装置に組み込まれている上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御手段と、
を実現させる、という構成を採る。
【００３２】
そして、上記プログラムでは、上記冗長制御手段は、作動している上記アプリケーション毎に区別して、当該アプリケーションにて生成される上記同期データを記憶する、という構成を採る。また、上記プログラムでは、上記冗長制御手段は、作動している上記アプリケーションのバージョンが新しくなる毎に追加される上記同期データを、当該バージョン毎に区別して記憶する、という構成を採る。
【００３３】
さらに、上記冗長システムが作動することにより実行される、本発明の他の形態である冗長制御方法は、
それぞれ同一のアプリケーションが組み込まれ、相互に接続された運用系装置及び待機系装置を備えた冗長システムにて、
上記アプリケーションの作動により生成される同期データを記憶して、上記運用系装置と上記待機系装置との間で同期すると共に、上記運用系装置と上記待機系装置との間で系交替を行う冗長制御工程を有すると共に、
上記冗長制御工程は、
上記運用系装置に組み込まれている上記アプリケーションのバージョンを表す情報を当該運用系装置から上記待機系装置に通知するバージョン通知工程と、
上記運用系装置から通知された情報に基づいて、上記待機系装置が上記運用系装置に組み込まれている上記アプリケーションのバージョンと上記待機系装置に組み込まれている上記アプリケーションのバージョンとの新旧を判別するバージョン判別工程と、
上記待機系装置に組み込まれている上記アプリケーションのバージョンが新しい場合に、当該待機系装置に組み込まれている新バージョンのアプリケーションが有する処理機能のうち、上記運用系装置に組み込まれている旧バージョンの上記アプリケーションが有する所定の処理機能に対して追加されている追加処理機能を作動させずに、上記待機系装置が上記新バージョンのアプリケーションを上記旧バージョンのアプリケーションとして作動させるアプリケーション運転制御工程と、
を有する、という構成を採る。
【００３４】
そして、上記冗長制御方法では、上記冗長制御工程は、作動している上記アプリケーション毎に区別して、当該アプリケーションにて生成される上記同期データを記憶する、という構成を採る。また、上記冗長制御方法では、上記冗長制御工程は、作動している上記アプリケーションのバージョンが新しくなる毎に追加される上記同期データを、当該バージョン毎に区別して記憶する、という構成を採る。
【００３５】
上述した構成を有する、情報処理装置、プログラム、又は、冗長制御方法、の発明であっても、上記冗長システムと同様の作用を有するために、上述した本発明の目的を達成することができる。
【００３６】
＜実施形態２＞
本発明の第２の実施形態を、図１乃至図１５を参照して説明する。図１は、冗長システム全体の構成を示す機能ブロック図である。図２は、冗長制御部の構成を示す機能ブロック図である。図３は、同期データのフォーマットを示す図である。図４は、ソフトウェアの更新状況を示す図である。図５は、冗長システムの動作を示すシーケンス図である。図６は、待機系装置の動作を示すフローチャートである。図７乃至図１３は、運用系装置と待機系装置のソフトウェアのバージョンと、同期データの状態を示す図である。図１４は、ソフトウェアの更新状況を示す図である。図１５は、冗長システムの動作を示すシーケンス図である。
【００３７】
ここで、本実施形態は、上述した実施形態１にて開示した冗長システムの具体的な一例を示すものである。そして、以下では、冗長システムは、携帯電話機の通信制御を行う通信制御装置として利用される冗長化された２台の情報処理装置によって構成されていることとする。但し、本発明の冗長システムは、通信制御を行う情報処理装置によって構成されていることに限定されず、ファイルサーバなど、連続運用が必要とされるあらゆる冗長化されたシステムに適用可能である。
【００３８】
［構成］
本実施形態における冗長システムは、ホットスタンバイ構成を持つ同一構成の二重化された情報処理装置にて構成されている。具体的には、図１に示すように、ゲートウェイ装置１（１０）とゲートウェイ装置２（２０）とを装置間専用通信路３０を介して接続して備えている。そして、各ゲートウェイ装置１，２（１０，２０）は、後述するようにほぼ同一の構成を採っており、一方が運用系装置として稼動し、他方が待機系装置として稼動している。
【００３９】
これにより、運用系装置に障害が生じた場合であっても、速やかに待機系装置へ処理を受け継いで当該待機系装置を新たな運用系装置として系交替を行うことで、ゲートウェイ装置１，２（１０，２０）にて提供するサービスの連続運用を可能としている。以下、ゲートウェイ装置１，２（１０，２０）の構成について詳述する。なお、各ゲートウェイ装置１，２は、それぞれが同一の構成を採っているため、以下では、主に、一方のゲートウェイ装置１の構成について説明する。
【００４０】
ゲートウェイ装置１（１０）は、演算装置と記憶装置とを備えた一般的な情報処理装置である。そして、演算装置には、ゲートウェイ装置１が提供する通信サービスなど種々の機能を実現するためのソフトウェアが組み込まれており、具体的には、図１に示すように、このソフトウェアはさらに種々の処理機能を有するアプリケーション郡１，２（１２，１３）によって構成されている。つまり、ゲートウェイ装置１には、種々の処理機能を実現するアプリケーション群１，２が組み込まれている。
【００４１】
ここで、各アプリケーション郡とは、所定の機能を実現するために必要な複数の細分化されたアプリケーションの論理的なグループであり、装置内で一意に決定されている。そして、グルーピングされた各アプリケーション郡は、それぞれ独立して運転可能である。さらに、各アプリケーション郡は、当該アプリケーション郡単位で実行する機能を制御することができる。つまり、アプリケーション群は、それぞれバージョン毎に作動することが可能であり、このようにバージョン毎に作動しても、他のアプリケーション郡には影響を及ぼさない。例えば、アプリケーション郡が、旧バージョンから所定の処理機能が追加された新バージョンに更新された場合であっても、当該アプリケーション郡は、新バージョンの追加処理機能を実行することなく、旧バージョンのときに有していた処理機能のみを実行して旧バージョンとして縮退運転可能である。なお、このようなアプリケーションの作動状態は、冗長制御部１１によって制御される。
【００４２】
また、冗長制御部１１は、ゲートウェイ装置１の演算装置に所定のプログラムが組み込まれることによって構築されている。そして、冗長制御部１１は、ゲートウェイ装置１（１０）のホットスタンバイ構成の二重化管理を行う機能を具備するアプリケーションである。また、冗長制御部１１は、上述した各アプリケーション群単位で必要な同期データを記憶装置１５内に保存したり、待機系のゲートウェイ装置２（２０）との同期処理などを実行する機能を有する。なお、同期データの保存は、待機系障害や待機系の再開等で待機系の同期データが無くなった時に、運用系から取得する再同期動作において、アプリケーション群の機能処理に負担をかけないようにすることを目的として行っている。
【００４３】
そして、冗長制御部１１は、上述したように各アプリケーション郡１，２（１２，１３）の処理機能により生成され待機系に同期させたい同期データを記憶装置１５に格納するが、このとき、図３に示す同期データフォーマットにて格納する。具体的には、アプリケーション郡のバージョン毎に、同期データを格納する。
【００４４】
さらに同期データフォーマットについて説明する。まず、図３（Ａ）に示す同期データフォーマットは、アプリケーション郡１（１２）のバージョン１におけるものを示している。このように、同期データフォーマットには、まず、各アプリケーション群で一意に決定される同期データバージョンを格納するエリアＤ１があり、形式は「アプリケーション群名−バージョン番号」で表現する。このバージョン形式は、各アプリケーション群の識別と同期データに変更が発生した場合に、バージョンを更新して同期データの改版が分かるようされていればよい。従って、例えば、「アプリケーション群名−バージョン番号．リビジョン番号」などのようにしてもよい。そして、同期データの同期データバージョンＤ１は、同期データフォーマットが変更される場合、これまで使用した値とは異なり、かつ、各アプリケーション群で値ごとに動作を変えるための識別値として付与される。
【００４５】
また、同期される同期データは、初めて作成する同期データの場合は、図３（Ａ）に示すように、上述した同期データバージョンＤ１の直後に配置される。そして、同期データの更新等によりアプリケーション郡のバージョンが上がって同期データが追加される場合は、これまでに配置された同期データのさらに直後に配置するようにして階層構造を成すようにする。
【００４６】
ここで、冗長制御部１１にて提供される同期データ作成ルールを、図３（Ｂ）を参照して説明する。まず、図３（Ａ）の同期データフォーマットが既に作成されていることとする。その後、アプリケーション郡１がバージョン２に更新された場合には、当該バージョン２に対応する同期データが追加されることとなる。このように、追加すべき同期データが発生した場合には、図３（Ｂ）に示すように、これまでの同期データエリアＤ２の直後に、新規同期データＤ３を追加する。同期データ追加により、既存同期データＤ２と新規同期データＤ３を識別出来るよう、同期データバージョンを１から２へ変更する。例えば、新規同期データＤ３をバージョン番号と関連付けることで、既存同期データＤ２を現在のバージョンよりも１世代前のバージョンとして識別することができる。
【００４７】
このようにして、同期データバージョンからどの同期データが追加されたかが分かり、また前バージョンの同期データを読み出す場合には、新規追加された同期データを読まないようにすることで、同期データエリアから欲しい同期データを検索しなくてよくなる。このため、処理の簡素化と高速化のメリットがある。
【００４８】
そして、上述したように作成された同期データは、冗長制御部１１により、図１に示すゲートウェイ装置間専用通信路３０を経由して、待機系のゲートウェイ装置２（２０）の冗長制御部２１に渡される。すると、待機系側のゲートウェイ装置２（２０）の冗長制御部２１は、運用系から受信した同期データの同期データバージョン部Ｄ１を参照し、同期データを渡すアプリケーション群を識別する。例えば、同期データバージョン部が「アプリケーション群１−１」となっていれば、同期データはアプリケーション群１（２２）用のバージョン１ということになる。
【００４９】
なお、上述したように、運用系の冗長制御部１１は、同期データバージョン部Ｄ１を含む同期データを待機系に渡すことで、運用系にて作動しているアプリケーション郡１，２のバージョン情報を通知することができる。つまり、冗長制御部１１は、図２に示すように、バージョン通知部４１を備えている。
【００５０】
また、同期データを受け取った待機系の冗長制御部２１は、同期データバージョン部を確認する。そして、対応する待機系のアプリケーション郡のバージョンを上述同様に自装置に記憶されている同期データバージョン部などから読み出して、運用系と待機系のアプリケーション群毎のバージョンが一致するか、あるいは、待機系のバージョンが高いか低いか、を判別する。つまり、冗長制御部１１，２１には、図２に示すように、バージョン判別部４２が装備されている。
【００５１】
そして、運用系と待機系とのバージョンが一致している場合には、待機系の冗長制御部２１は全ての同期データを読み込み、運用系との同期をとる。
【００５２】
一方で、運用系のバージョンが待機系のバージョンより低い場合、つまり、運用系が旧バージョンのアプリケーションであり、待機系が新バージョンのアプリケーションである場合には、冗長制御部２１は、アプリケーション郡を旧バージョンにて縮退運転する。つまり、アプリケーション郡の新バージョンで追加された処理機能を作動させず、旧バージョンで装備されていた処理機能のみを作動させて、運用系と同期データの同期を取る。このとき、待機系のアプリケーション郡１は、旧バージョンにて作動しているため、旧バージョンの同期データにて同期が行われる。なお、アプリケーション郡１は他のアプリケーション郡２とは独立して作動しているため、上述したように旧バージョンにて縮退運転しても、他のアプリケーション群への影響は生じない。
【００５３】
これに対し、運用系のバージョンが待機系のバージョンより高い場合、つまり、運用系が新バージョンのアプリケーションであり、待機系が旧バージョンのアプリケーションである場合には、冗長制御部２１は、そのアプリケーション郡１が実行できる全ての機能を作動させ、待機系が機能できる動作のみに対応する同期データの同期を取る。これにより、新バージョンに対応する同期データまでは待機系にて同期が取れないものの、少なくとも旧バージョンに対応する同期データは同期を取ることができる。従って、仮に運用系に障害が発生しても、系交替により新たに運用系となる待機系は、旧バージョンで作動させることができ、サービス中断という事態を回避できる。
【００５４】
以上のように、冗長制御部１１，２１は、ある機能に関連する複数のアプリケーションをグルーピングして、アプリケーション群単位で動作機能を制御する機能であるアプリケーション運転制御部４３を有する。
【００５５】
なお、上述したように、冗長制御部１１，２１が備えるバージョン通知部４１と、バージョン判別部４２と、アプリケーション運転制御部４３とは、ゲートウェイ装置１，２の演算装置に、本発明である冗長制御用のプログラムが組み込まれることで、冗長制御部１１，２１と共に構築される。
【００５６】
［動作］
次に、上記構成の冗長システムの動作を説明する。動作の概略としては、まず、待機系のソフトウェアをバージョンアップして再起動させる。そして、運用系と待機系で同期データが同期された後に系交替を実施する。さらにその後、系交替後の新待機系（旧運用系）をバージョンアップして再起動させる（冗長制御工程）。なお、図５は、冗長システム全体の動作を示すシーケンス図であり、図６は、待機系のゲートウェイ装置２（２０）の動作を示すシーケンス図である。
【００５７】
また、以下では、図４に示すように、ゲートウェイ装置１，２に組み込まれるソフトウェアがバージョンアップされることとする。具体的に、まず、ソフトウェアＡは、図４（Ａ）に示すように、それぞれバージョン「１」のアプリケーション郡１，２を実現させるプログラムである。なお、アプリケーション郡１は、機能Ａ，Ｂを有するアプリケーションであり、アプリケーション郡２は、機能Ｃ，Ｄを有するアプリケーションである。そして、図４（Ｂ）に示すソフトウェアＢは、ソフトウェアＡをバージョンアップしたものであり、当該ソフトウェアＡをベースとして機能Ａに処理機能が追加され、同期データフォーマット（データＡ−２）が追加されたソフトウェアである。さらに、図４（Ｃ）に示すソフトウェアＣは、ソフトウェアＢをバージョンアップしたものであり、当該ソフトウェアＢをベースとして機能Ｂに処理機能が追加され、同期データフォーマット（データＢ−２）が追加されたソフトウェアである。
【００５８】
そして、以下では、まず、運用系及び待機系がそれぞれソフトウェアＡで作動しており、待機系のソフトウェアが、ソフトウェアＡからソフトウェアＢにバージョンアップされ、その後、系交替され、さらにその後、新たな待機系（旧運用系）がソフトウェアＢにバージョンアップされる場合を説明する。
【００５９】
まず、図５の領域Ｓ１００に示すように、ゲートウェイ装置１（１０）が運用系として作動し、ゲートウェイ装置２（２０）が待機系として作動している。このとき、運用系、待機系のゲートウェイ装置１，２（１０，２０）には、共にソフトウェアＡが組み込まれている（図５のステップＳ１，Ｓ２、図６のステップＳ２１）。つまり、運用系、待機系のゲートウェイ装置１，２に組み込まれているソフトウェアつまりアプリケーション郡１，２のバージョンは、図７に示すように、それぞれバージョン「１」である。従って、アプリケーション群１の同期データは、図８（Ａ）に運用系、図８（Ｂ）に待機系のものを示すように、同一の構成となっている。
【００６０】
続いて、冗長システムが二重化運転中に、待機系のゲートウェイ装置２のソフトウェアが、新しい装置ソフトウェアバージョンＢに更新され、再起動されたとする（図５のステップＳ３、図６のステップＳ２２）。すると、このソフトウェアＢにより、図４（Ｂ）及び図９に示すように、待機系であるゲートウェイ装置は、アプリケーション群１に機能追加が行われ、同期データバージョンが「１」から「２」に更新されている。そして、このバージョン２における同期データフォーマットは、図１０（Ｂ）に示すデータ構成となっている。つまり、図１０（Ａ）に示す運用系のバージョン１の同期データと比較して、図１０（Ｂ）に示すように、待機系のバージョン２の同期データは、機能追加による新しいバージョン２の同期データが付加されている。その一方で、バージョン１の同期データは、これまで通り同じ場所に存在している。
【００６１】
続いて、待機系のゲートウェイ装置２（２０）は、ソフトウェア更新後に再起動が実施し、起動後、運用系であるゲートウェイ装置１（１０）から同期データを取得する再同期を行う（図５のステップＳ４、図６のステップＳ２３）。また、再同期中にもリアルタイムに通信は行われているため、通信データもまた再同期過程で同期される（図５のステップＳ５）。
【００６２】
このとき、待機系のゲートウェイ装置２（２０）は、上述したようにソフトウェアＢの機能を有していることから、アプリケーション群１は同期データバージョン２のデータを受信することを期待している。ところが、運用系が送信する同期データは、同期データバージョン１である（バージョン通知工程）。これを受けて、待機系は、運用系のアプリケーション郡のバージョンが低いと判別する（図６のステップＳ２４でＹｅｓ、バージョン判別工程）。すると、待機系のゲートウェイ装置２は、ソフトウェアＡの機能からソフトウェアＢに至るまでに追加された機能を実行せず、旧バージョンであるソフトウェアＡの機能のみで、アプリケーション郡１を縮退運転する（図５のステップＳ６、図６のステップＳ２５、アプリケーション運転制御工程）。これにより、ゲートウェイ装置１とゲートウェイ装置２とは、アプリケーション郡１についてはバージョン１に対応する同期データで同期をとっている。
【００６３】
その後、運用系と待機系の系交替を行う（図５のステップＳ７、図６のステップＳ２６でＹｅｓ）。これにより、図５の領域Ｓ１１０に示すように、運用系であったゲートウェイ装置１が新待機系となり、待機系であったゲートウェイ装置２が新運用系となる。
【００６４】
すると、新運用系であるゲートウェイ装置２（２０）は、旧待機系でありソフトウェアＡの機能で縮退運転を実施していたが、運用系に遷移したため、ソフトウェアＢの機能で運転する（図５のステップＳ８、図６のステップ２７）。このとき、新待機系であるゲートウェイ装置１（１０）は、未だソフトウェアＡの機能で運転している（図５のステップＳ９）。つまり、各装置１，２のアプリケーション群１，２のバージョンは、図１１に示すようになる。すると、新待機系であるゲートウェイ装置１（１０）は、新運用系であるゲートウェイ装置２（２０）から受信する同期データのうちアプリケーション群１の同期データは（図５のステップＳ１０、図６のステップＳ２８）、図１０（Ｂ）に示すようにアプリケーション群１のバージョン２に対応する追加データを含んでいる。このとき、新待機系であるゲートウェイ装置１（１０）は、アプリケーション群１をバージョン１で運転させているため、受信した同期データのうち、同期データバージョン１のデータのみを使用し、図１０（Ａ）に示す同期データに同期させる。このように、異なる同期データバージョン間でも運転が継続できる。
【００６５】
続いて、新待機系であるゲートウェイ装置１（１０）をソフトウェアＢに更新し（図５のステップＳ１１）、ソフトウェア更新後に再起動が実施される。そして、再起動後、新運用系であるゲートウィ装置２から同期データを取得する再同期を行う（図５のステップＳ１２、図６のステップＳ２８）。
【００６６】
以上のように、最終的には各ゲートウェイ装置１（１０），２（２０）がソフトウェアＢに更新され、二重化運転を行う（図５のステップＳ１３）。つまり、図１２に示すように、各ゲートウェイ装置１（１０），２（２０）のアプリケーション群１がバージョン２となり、それぞれに格納されている同期データも図１３（Ａ），（Ｂ）に示すように、バージョン２に対応する同期データが追加された状態となる。これにより、新運用系であるゲートウェイ装置２（２０）に障害が生じた場合であっても、新待機系にサービスを引き継ぐことができる。
【００６７】
なお、上述したように新待機系となったゲートウェイ装置１（１０）がソフトウェアＢに更新される前に、仮に新運用系であるゲートウェイ装置２（２０）に障害が生じた場合には、系交替により再度ゲートウェイ装置１（１０）が運用系となる。この場合であっても、運用系となったゲートウェイ装置１（１０）は、旧バージョンであるソフトウェアＡで作動しているため、サービス中断という事態を回避できる。
【００６８】
以上のように、上述した冗長システムによると、待機系のアプリケーションがバージョンアップされた場合であっても、運用系が旧バージョンのアプリケーションを作動させている間は、待機系も旧バージョンのアプリケーションの機能のみ運転させている。従って、相互に同期データを確実に同期させることができる。すると、この状態で運用系装置の障害などが生じた場合であっても、運用系装置と待機系装置との間で、迅速かつ適切に系交替を実行することができる。
【００６９】
なお、上記では、図４に示したソフトウェアＡからソフトウェアＢに１世代だけバージョンアップした場合を例示したが、図４（Ａ）から図４（Ｃ）、つまり、図１４に示すように、アプリケーション群１がバージョン１からバージョン３へと、２世代バージョンアップしても、上述同様に作動する。
【００７０】
具体的には、まず、アプリケーション群１は、バージョンが１から３になることで、当該アプリケーション群１が有する機能Ａ，Ｂにそれぞれ機能が追加され、これらに対応する同期データがそれぞれ追加される（データＡ−２，データＢ−３）。この場合に、上述したように、まず待機系のアプリケーション群１がバージョンアップされても、当該待機系では、上述した追加機能分が作動せず、旧バージョンであるバージョン１として縮退運転する。これにより、運用系と待機系とは、バージョン１に対応する同期データのみを同期させることができる。
【００７１】
そして、その後、系交替が行われると、待機系であった新運用系は新バージョンであるバージョン３で作動するが、当該新運用系から同期データを受けた新待機系は、受信した同期データのうちバージョン１に対応する同期データのみを同期させる。さらに、その後、新待機系のアプリケーション群１がバージョン３に更新されることで、完全に新しいバージョンのアプリケーション群１で同期を取ることができる。
【００７２】
また、上記構成の冗長システムによると、ゲートウェイ装置１，２で作動するソフトウェアをバージョンダウンさせることにも対応可能である。このときの動作について、図１５を参照して説明する。
【００７３】
まず、ゲートウェイ装置１（１０）が運用系として作動し、ゲートウェイ装置２（２０）が待機系として作動している（図１５のＳ２００参照）。このとき、運用系、待機系のゲートウェイ装置１，２（１０，２０）には、共にソフトウェアＢが組み込まれている（図１５のステップＳ３１，Ｓ３２）。
【００７４】
続いて、冗長システムが二重化運転中に、待機系のゲートウェイ装置２のソフトウェアを、旧バージョンであるソフトウェアＢに更新、つまり、バージョンダウンを行って、再起動されたとする（図１５のステップＳ３３）。すると、運用系はソフトウェアＢの機能で運転され、待機系はソフトウェアＡの機能として運転可能となる。つまり、上述した図１１で説明した場合とは逆の状態となり、待機系であるゲートウェイ装置２（２０）は、運用系であるゲートウェイ装置１（１０）から受信するバージョン２に対応する同期データのうちアプリケーション群１の同期データのみを使用して同期させる（ステップＳ３４，Ｓ３５，Ｓ３６）。これにより、異なる同期データバージョン間でも運転が継続できる。
【００７５】
続いて、系交替を実施すると（図１５のＳ２１０）、上述した図９の場合とは、運用系と待機系とが入れ替わった状態となり、新運用系はソフトウェアＡであり、新待機系はソフトウェアＢである。つまり、新待機系の方がバージョンが高い状態である。このことを、新待機系であるゲートウェイ装置１（１０）が、系交換を契機に、運用系から同期データを受信して（ステップＳ３８，Ｓ３９、バージョン通知工程）、判別する（バージョン判別工程）。そして、新待機系の方がバージョンが高いため、当該新待機系であるゲートウェイ装置１（１０）は、ソフトウェアＡの機能で縮退運転する（図１５のステップＳ４０、アプリケーション運転制御工程）。
【００７６】
その後、新待機系であるゲートウェイ装置１（１０）をソフトウェアＡに更新（バージョンダウン）することで（図１５のステップＳ４１）、冗長システム全体をソフトウェアＡの機能にサービス無中断でバージョンダウンすることができ、二重化運転可能となる。
【産業上の利用可能性】
【００７７】
本発明は、携帯電話機の通信制御を行うサーバなど、連続運用か必要とされる二重化された冗長システムに利用することができ、産業上の利用可能性を有する。
【図面の簡単な説明】
【００７８】
【図１】実施形態１及び実施形態２における冗長システム全体の構成を示す機能ブロック図である。
【図２】冗長制御部の構成を示す機能ブロック図である。
【図３】同期データのフォーマットを示す図である。
【図４】ソフトウェアの更新状況を示す図である。
【図５】冗長システムの動作を示すシーケンス図である。
【図６】待機系装置の動作を示すフローチャートである。
【図７】運用系装置と待機系装置のソフトウェアのバージョンを示す図である。
【図８】運用系装置と待機系装置の同期データの状態を示す図である。
【図９】運用系装置と待機系装置のソフトウェアのバージョンを示す図である。
【図１０】運用系装置と待機系装置の同期データの状態を示す図である。
【図１１】運用系装置と待機系装置のソフトウェアのバージョンを示す図である。
【図１２】運用系装置と待機系装置のソフトウェアのバージョンを示す図である。
【図１３】運用系装置と待機系装置の同期データの状態を示す図である。
【図１４】ソフトウェアの更新状況を示す図である。
【図１５】冗長システムの動作を示すシーケンス図である。
【符号の説明】
【００７９】
１０  ゲートウェイ装置１
２０  ゲートウェイ装置２
１１，２１  冗長制御部
１２，２２  アプリケーション群１
１３，２３  アプリケーション群２
１５，２５  同期データ
４１  バージョン通知部
４２  バージョン判別部
４３  アプリケーション運転制御部
【図１】
2010146044.tif 000003
【図２】
2010146044.tif 000004
【図３】
2010146044.tif 000005
【図４】
2010146044.tif 000006
【図５】
2010146044.tif 000007
【図６】
2010146044.tif 000008
【図７】
2010146044.tif 000009
【図８】
2010146044.tif 000010
【図９】
2010146044.tif 000011
【図１０】
2010146044.tif 000012
【図１１】
2010146044.tif 000013
【図１２】
2010146044.tif 000014
【図１３】
2010146044.tif 000015
【図１４】
2010146044.tif 000016
【図１５】
2010146044.tif 000017