(57)【特許請求の範囲】
【請求項１】
受信した信号をセッションごとに振り分ける振分装置と、
前記信号を、当該信号のセッションに係る状態情報に基づいて処理する旧版信号処理装置および新版信号処理装置と、
を備えるクラスタシステムであって、
前記新版信号処理装置および前記旧版信号処理装置は、
前記信号に含まれるセッション情報および当該信号に係る前記状態情報の組合せを保管するデータ保管部を備え、
前記旧版信号処理装置は更に、
前記データ保管部に保管されている当該セッション情報と前記状態情報との組合せを、前記振分装置に送信するデータ移行部を備え、
前記振分装置は、
前記セッション情報に基づき、いずれかの前記新版信号処理装置を決定する新版振分先決定手段と、
前記セッション情報に基づき、いずれかの前記旧版信号処理装置を決定する旧版振分先決定手段と、
受信した当該信号のバージョン情報に基づいて、前記新版振分先決定手段で決定した前記新版信号処理装置に当該信号を送信するか、前記旧版振分先決定手段で決定した前記旧版信号処理装置に当該信号を送信するかを選択する信号振分部と、
前記データ移行部から送信された前記セッション情報を、前記新版振分先決定手段で決定した前記新版信号処理装置に移行するデータ転送部と、を備える、
ことを特徴とするクラスタシステム。
【請求項２】
前記信号振分部は、前記信号に前記セッション情報が含まれていないとき、新たなセッション情報を生成して当該信号に付与し、前記新版振分先決定手段で決定した前記新版信号処理装置に当該信号を送信する、
ことを特徴とする請求項１に記載のクラスタシステム。
【請求項３】
前記旧版信号処理装置は、
当該信号に係る当該状態情報が、前記新版信号処理装置に移行されていたならば、当該信号を前記振分装置に転送する転送判断部を備え、
前記振分装置の前記データ転送部は更に、
前記転送判断部によって転送された当該信号を、前記新版振分先決定手段で決定した前記新版信号処理装置に転送する、
ことを特徴とする請求項２に記載のクラスタシステム。
【請求項４】
受信した信号をセッションごとに振り分ける振分装置と、
前記信号を、当該信号のセッションに係る状態情報に基づいて処理する旧版信号処理装置および新版信号処理装置と、
を備えるクラスタシステムであって、
前記新版信号処理装置および前記旧版信号処理装置は、
前記信号に含まれるセッション情報および当該信号に係る前記状態情報の組合せを保管するデータ保管部を備え、
前記旧版信号処理装置は更に、
前記データ保管部に保管されている当該セッション情報と前記状態情報との組合せを、前記振分装置に送信するデータ移行部を備え、
前記振分装置は、
前記セッション情報に基づき、いずれかの前記新版信号処理装置を決定する新版振分先決定手段と、
前記セッション情報に基づき、いずれかの前記旧版信号処理装置を決定する旧版振分先決定手段と、
受信した当該信号のバージョン情報に基づいて、前記新版振分先決定手段で決定した前記新版信号処理装置に当該信号を送信するか、前記旧版振分先決定手段で決定した前記旧版信号処理装置に当該信号を送信するかを選択する信号振分部と、
前記データ移行部から受信した当該セッション情報の保管先である前記新版信号処理装置を通知する新振分先取得手段を備える、
ことを特徴とするクラスタシステム。
【請求項５】
前記旧版信号処理装置は、
当該信号に係る当該状態情報が、前記新版信号処理装置に移行されていたならば、前記振分装置に当該信号の振分先の新版信号処理装置を問合せ、当該振分先の新版信号処理装置に当該信号を転送する転送判断部を備える、
ことを特徴とする請求項４に記載のクラスタシステム。
【請求項６】
前記データ移行部は更に、前記データ保管部に保管されている当該セッション情報の移行先の新版信号処理装置を記憶し、
前記旧版信号処理装置は、
当該信号に係る当該状態情報が、前記新版信号処理装置に移行されていたならば、前記データ移行部が記憶する前記移行先の新版信号処理装置に当該信号を転送する転送判断部を備える、
ことを特徴とする請求項４に記載のクラスタシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信サービスなどを提供するクラスタシステムに関する。
【背景技術】
【０００２】
近年、通信網は、設備維持コスト低減を目的とするＩＰ（Internet Protocol）化が進んでいる。更に、現用系サーバと待機系サーバの二重化構成された従来の通信網に加えて、サーバをＮ台クラスタリングしたＮ−Ａｃｔｉｖｅ型の構成の通信網が登場している。
【０００３】
非特許文献１に記載されているように、Ｎ−Ａｃｔｉｖｅ構成は、二重化構成に比べて資源利用効率が高く、かつ、サーバ資源を動的に追加・削除可能であるという特徴を有している。
【０００４】
図１４は、従来のクラスタシステムの概要を示す図である。
クラスタシステム１Ｂは、ロードバランサ１０と、振分装置２０Ｂ−１〜２０Ｂ−ｐと、信号処理装置３０−１〜３０−Ｎとを備え、ロードバランサ１０を介してクライアント２−１〜２−ｑに接続されている。ここでｐ，Ｎ，ｑは、自然数である。以下、クライアント２−１〜２−ｑを特に区別しないときには、単にクライアント２と記載する。振分装置２０Ｂ−１〜２０Ｂ−ｐを特に区別しないときには、単に振分装置２０Ｂと記載する。信号処理装置３０−１〜３０−Ｎを特に区別しないときには、単に信号処理装置３０と記載する。
クラスタシステム１Ｂの制御プロトコルであるＳＩＰ（Session Initiation Protocol）は、最初のリクエスト信号を処理する際に内部状態情報を生成し、生成した内部状態情報に基づいて後続リクエスト信号を処理する。したがって、後続のリクエスト信号について、その内部状態が存在するサーバに振り分けて処理を行う必要がある。
【０００５】
クライアント２は、例えば、ＩＰ電話装置であり、２台の異なるクライアント２の間で音声通信を行うものである。クライアント２は、図示しないネットワークを介してロードバランサ１０に接続されている。
【０００６】
ロードバランサ１０は、クライアント２からのリクエストの受付先エンドポイントとなり、高速に信号を振分装置２０Ｂに負荷分散するものである。ロードバランサ１０は、クライアント２と、振分装置２０Ｂとに接続されている。
【０００７】
非特許文献１に記載されているように、当該信号の内容に依らない単純な振り分けを行うロードバランサ１０を、クラスタシステム１Ｂの前段に設置することにより、信号の内容を意識した複雑な振り分けを行う振分装置２０Ｂをスケールアウトすることができる。
【０００８】
振分装置２０Ｂは、到着した信号の処理に必要な状態情報が、どの信号処理装置３０に存在するかを判断して、当該信号を転送するものである。当該信号の処理に必要な状態情報を備えている信号処理装置３０は、信号の振り分け先である。振分装置２０Ｂは、ロードバランサ１０と、信号処理装置３０とに接続されている。
【０００９】
信号処理装置３０は、新規に信号が到着した際に、内部に状態情報を生成・保持し、後続信号が到着した場合に、生成・保持している当該状態情報を参照して必要な処理を行うものである。信号処理装置３０は、振分装置２０Ｂに接続されている。
【００１０】
クラスタシステム１Ｂは、信号処理装置３０や振分装置２０Ｂの台数に対してスケーラブルに、通信網の制御処理を行うものである。
一方、通信網を構成するシステムには高度な可用性・信頼性が要求されるため、ソフトウェアの更新も無停止・無呼損で行われることが望まれる。
【００１１】
非特許文献２には、クラスタシステムに於いて無停止のソフトウェア更新を実現する方法として、新旧バージョンの信号処理装置を併存させる技術が記載されている。
【００１２】
図１５は、従来のクラスタシステムのソフトウェアアップデート動作を示す図である。
図１５によって、非特許文献２に記載の技術を説明する。図１５のクラスタシステム１Ｂは、図１４のクラスタシステム１Ｂが備える信号処理装置３０−１〜３０−Ｎの代わりに、信号処理装置（旧）３０Ａ−１〜３０Ａ−ｎと、信号処理装置（新）３０Ｂ−１〜３０Ｂ−ｍとを備えている他は、図１４のクラスタシステム１Ｂと同様に構成されている。以下、信号処理装置（旧）３０Ａ−１〜３０Ａ−ｎを特に区別しないときには、単に信号処理装置（旧）３０Ａと記載する。信号処理装置（新）３０Ｂ−１〜３０Ｂ−ｍを特に区別しないときには、信号処理装置（新）３０Ｂと記載する。
【００１３】
信号処理装置（旧）３０Ａは、旧バージョンの信号処理装置３０である。信号処理装置（新）３０Ｂは、新バージョンの信号処理装置３０である。信号処理装置３０のバージョンは、例えば、搭載しているソフトウェアのバージョンのことをいう。信号処理装置（旧）３０Ａは、処理しているリクエストが無くなり次第停止し、新たな信号処理装置（新）３０Ｂが追加される。
【００１４】
振分装置２０Ｂは、破線矢印で示すように、新規リクエストを信号処理装置（新）３０Ｂに振り分ける。更に、振分装置２０Ｂは、実線矢印で示すように旧バージョンで処理されたリクエストの後続信号、すなわち信号処理装置（旧）３０Ａに必要な内部状態情報が存在する信号のみを、信号処理装置（旧）３０Ａに振り分ける。
【００１５】
ＳＩＰなどの通信網制御プロトコルを用いた通話サービスを前提とすると、ユーザが通話を終了するとその内部状態情報も解消される。したがって、一定時間が経過して全ユーザが通話を終え、信号処理装置（旧）３０Ａ上に残存した内部状態情報が全てなくなるとソフトウェアの更新が完了する。これにより、信号処理装置（旧）３０Ａは、解体可能となる。
【先行技術文献】
【非特許文献】
【００１６】
【非特許文献１】入江道生，西村豪生，金子雅志，別所寿一，飯尾政美、「スケールアウトと柔軟な構成変更を実現するセッション制御サーバのクラスタモデル」、電子情報通信学会大会、2011/02/28、電子情報通信学会大会講演論文集、２０１１巻特殊号:通信２、第１１頁
【非特許文献２】「Mobicents Sip Servlets」、[online]、Mobicents、［平成２４年２月１６日検索］、インターネット(URL: http://www.mobicents.org/products_sip_servlets.html)
【発明の概要】
【発明が解決しようとする課題】
【００１７】
非特許文献２に記載のソフトウェア更新方法では、長期にわたって通話を行うユーザが存在した場合、該ユーザが通話を完了するまで旧版の信号処理装置を停止することができず、よって、ソフトウェアの更新を完了することができない。また、非特許文献２に記載のソフトウェア更新方法は、通話以外に長期にセッションが継続するＳＩＰを用いたプレゼンスサービスが存在していると、適用することができない。
【００１８】
そこで、本発明は、長期にわたってセッションが継続する場合であっても、一定時間で旧版の信号処理装置を停止してアップデートを可能とするクラスタシステムを提供することを課題とする。
【課題を解決するための手段】
【００１９】
前記した課題を解決するため、請求項１に記載の発明では、受信した信号をセッションごとに振り分ける振分装置と、前記信号を、当該信号のセッションに係る状態情報に基づいて処理する旧版信号処理装置および新版信号処理装置と、を備えるクラスタシステムであって、前記新版信号処理装置および前記旧版信号処理装置は、前記信号に含まれるセッション情報および当該信号に係る前記状態情報の組合せを保管するデータ保管部を備え、前記旧版信号処理装置は更に、前記データ保管部に保管されている当該セッション情報と前記状態情報との組合せを、前記振分装置に送信するデータ移行部を備え、前記振分装置は、前記セッション情報に基づき、いずれかの前記新版信号処理装置を決定する新版振分先決定手段と、前記セッション情報に基づき、いずれかの前記旧版信号処理装置を決定する旧版振分先決定手段と、受信した当該信号のバージョン情報に基づいて、前記新版振分先決定手段で決定した前記新版信号処理装置に当該信号を送信するか、前記旧版振分先決定手段で決定した前記旧版信号処理装置に当該信号を送信するかを選択する信号振分部と、前記データ移行部から送信された前記セッション情報を、前記新版振分先決定手段で決定した前記新版信号処理装置に移行するデータ転送部と、を備える、ことを特徴とするクラスタシステムとした。
【００２０】
このようにすることで、長期にわたってセッションが継続する場合であっても、一定時間で旧版の信号処理装置を停止してアップデートを可能とするクラスタシステムを提供することが可能となる。
【００２１】
請求項２に記載の発明では、前記信号振分部は、前記信号に前記セッション情報が含まれていないとき、新たなセッション情報を生成して当該信号に付与し、前記新版振分先決定手段で決定した前記新版信号処理装置に当該信号を送信する、ことを特徴とする請求項１に記載のクラスタシステムとした。
【００２２】
このようにすることで、受信した信号にセッション情報が含まれていなかったときであっても、この信号を、いずれかの信号処理装置に振り分けることができる。
【００２３】
請求項３に記載の発明では、前記旧版信号処理装置は、当該信号に係る当該状態情報が、前記新版信号処理装置に移行されていたならば、当該信号を前記振分装置に転送する転送判断部を備え、前記振分装置の前記データ転送部は更に、前記転送判断部によって転送された当該信号を、前記新版振分先決定手段で決定した前記新版信号処理装置に転送する、ことを特徴とする請求項２に記載のクラスタシステムとした。
【００２４】
このようにすることで、いったん旧版信号処理装置に信号を送信して、その信号に係る状態情報が移行されていたならば、当該移行先の前記新版信号処理装置に信号を転送することができる。
【００２５】
請求項４に記載の発明では、受信した信号をセッションごとに振り分ける振分装置と、前記信号を、当該信号のセッションに係る状態情報に基づいて処理する旧版信号処理装置および新版信号処理装置と、を備えるクラスタシステムであって、前記新版信号処理装置および前記旧版信号処理装置は、前記信号に含まれるセッション情報および当該信号に係る前記状態情報の組合せを保管するデータ保管部を備え、前記旧版信号処理装置は更に、前記データ保管部に保管されている当該セッション情報と前記状態情報との組合せを、前記振分装置に送信するデータ移行部を備え、前記振分装置は、前記セッション情報に基づき、いずれかの前記新版信号処理装置を決定する新版振分先決定手段と、前記セッション情報に基づき、いずれかの前記旧版信号処理装置を決定する旧版振分先決定手段と、受信した当該信号のバージョン情報に基づいて、前記新版振分先決定手段で決定した前記新版信号処理装置に当該信号を送信するか、前記旧版振分先決定手段で決定した前記旧版信号処理装置に当該信号を送信するかを選択する信号振分部と、前記データ移行部から受信した当該セッション情報の保管先である前記新版信号処理装置を通知する新振分先取得手段を備える、ことを特徴とするクラスタシステムとした。
【００２６】
このようにすることで、振分装置は、当該信号のセッション情報に基づいて、旧版信号処理装置に、当該信号に係る当該状態情報の保管先である新版信号処理装置を通知することができる。
【００２７】
請求項５に記載の発明では、前記旧版信号処理装置は、当該信号に係る当該状態情報が、前記新版信号処理装置に移行されていたならば、前記振分装置に当該信号の振分先の新版信号処理装置を問合せ、当該振分先の新版信号処理装置に当該信号を転送する転送判断部を備える、ことを特徴とする請求項４に記載のクラスタシステムとした。
【００２８】
このようにすることで、旧版信号処理装置は、自律的に新版信号処理装置に信号を転送するので、振分装置の実装負荷や動作負荷を減らすことができる。
【００２９】
請求項６に記載の発明では、前記データ移行部は更に、前記データ保管部に保管されている当該セッション情報の移行先の新版信号処理装置を記憶し、前記旧版信号処理装置は、当該信号に係る当該状態情報が、前記新版信号処理装置に移行されていたならば、前記データ移行部が記憶する前記移行先の新版信号処理装置に当該信号を転送する転送判断部を備える、ことを特徴とする請求項４に記載のクラスタシステムとした。
【００３０】
このようにすることで、旧版信号処理装置は、自律的に、移行先の新版信号処理装置を判断して信号を転送するので、網のトラヒックを減少して網負荷量を減らすことができる。
【発明の効果】
【００３１】
本発明によれば、長期にわたってセッションが継続する場合であっても、一定時間で旧版の信号処理装置を停止してアップデートを可能とするクラスタシステムを提供することができる。
【図面の簡単な説明】
【００３２】
【図１】第１の実施形態に於けるクラスタシステムを示す概略の構成図である。
【図２】第１の実施形態に於ける信号振分処理を示すフローチャートである。
【図３】第１の実施形態に於ける振分先決定ロジックを示す図である。
【図４】第１の実施形態に於ける信号処理を示すシーケンス図である。
【図５】第１の実施形態に於ける状態移行処理を示すシーケンス図である。
【図６】第１の実施形態に於ける移行対象テーブルを示す図である。
【図７】第１の実施形態に於ける状態移行中の信号処理を示すシーケンス図である。
【図８】第１の実施形態に於ける信号振分処理を示すフローチャートである。
【図９】第２の実施形態に於けるクラスタシステムを示す概略の構成図である。
【図１０】第２の実施形態に於ける状態移行処理を示すシーケンス図である。
【図１１】第２の実施形態に於ける状態移行中の信号処理を示すシーケンス図である。
【図１２】第３の実施形態に於ける移行対象テーブルを示す図である。
【図１３】第３の実施形態に於ける状態移行中の信号処理を示すシーケンス図である。
【図１４】従来のクラスタシステムの概要を示す図である。
【図１５】従来のクラスタシステムのソフトウェアアップデート動作を示す図である。
【発明を実施するための形態】
【００３３】
以降、本発明を実施するための形態を、各図を参照して詳細に説明する。
【００３４】
（第１の実施形態の構成）
【００３５】
図１は、第１の実施形態に於けるクラスタシステムを示す概略の構成図である。
クラスタシステム１は、ロードバランサ１０と、上部ネットワーク１００ａと、振分装置２０−１〜２０−ｐと、下部ネットワーク１００ｂと、信号処理装置（旧）３０Ａ−１〜３０Ａ−ｎと、信号処理装置（新）３０Ｂ−１〜３０Ｂ−ｍとを備えている。
以下、信号処理装置（旧）３０Ａ−１〜３０Ａ−ｎを特に区別しないときには、単に信号処理装置３０Ａと記載する。信号処理装置（新）３０Ｂ−１〜３０Ｂ−ｍを特に区別しないときには、単に信号処理装置３０Ｂと記載する。信号処理装置（旧）３０Ａと信号処理装置（新）３０Ｂとを特に区別しないときには、単に信号処理装置３０と記載する。
【００３６】
ロードバランサ１０は、クライアント２（不図示）からのリクエスト（信号）の受付先エンドポイントとなり、高速に信号を振分装置２０に負荷分散するものである。ロードバランサ１０は、ネットワーク（不図示）を介してクライアント２（不図示）に接続され、上部ネットワーク１００ａを介して振分装置２０に接続されている。
【００３７】
振分装置２０は、到着した信号の処理に必要な状態情報が、信号処理装置３０（信号処理装置（旧）３０Ａ−１〜３０Ａ−ｎと、信号処理装置（新）３０Ｂ−１〜３０Ｂ−ｍ）のいずれに存在するかを判断して、当該信号を転送するものである。当該信号の処理に必要な状態情報を備えている信号処理装置３０は、信号の振り分け先である。振分装置２０は、上部ネットワーク１００ａを介してロードバランサ１０に接続され、下部ネットワーク１００ｂを介して信号処理装置３０に接続されている。
信号処理装置３０は、新規に信号が到着した際に、内部に状態情報を生成・保持し、後続信号が到着した場合に、生成・保持している当該状態情報を参照して必要な処理を行うものである。信号処理装置３０は、下部ネットワーク１００ｂを介して振分装置２０Ｂに接続されている。
信号処理装置３０は、信号処理装置（旧）３０Ａと信号処理装置（新）３０Ｂとに分類される。信号処理装置（旧）３０Ａは、旧バージョン番号のソフトウェアが動作しているものである。信号処理装置（新）３０Ｂは、新バージョン番号のソフトウェアが動作しているものである。
【００３８】
《振分装置２０の構成》
振分装置２０は、信号振分部２１と、データ転送部２２と、振分先決定ロジック（旧）２３Ａと、振分先決定ロジック（新）２３Ｂとを備えている。
信号振分部２１は、到着した信号の振分先を決定し、決定した信号処理装置３０に当該信号を転送する（振り分ける）ものである。
【００３９】
データ転送部２２は、後記するデータ移行部３４からキー情報と状態情報とが転送されたとき、そのキー情報と状態情報とを、いずれかの信号処理装置（新）３０Ｂに転送するものである。
【００４０】
振分先決定ロジック（旧）２３Ａは、当該信号に含まれているSessionIDから、いずれの信号処理装置（旧）３０Ａに振り分けるかを決定するものである。
【００４１】
振分先決定ロジック（新）２３Ｂは、当該信号に含まれているSessionID、または、状態情報と共に転送されたキー情報（SessionID）から、いずれの信号処理装置（新）３０Ｂに振り分けるかを決定するものである。本実施形態の振分先決定ロジック（旧）２３Ａと振分先決定ロジック（新）２３Ｂとは、ソフトウェアプログラムである。当該ソフトウェアプログラムは、振分装置２０の図示しない記憶部に格納されている。
【００４２】
《信号処理装置３０の構成》
信号処理装置（旧）３０Ａと信号処理装置（新）３０Ｂとは、信号処理部３１と、データ保管部３２とを備えている。信号処理装置（旧）３０Ａは、転送判断部３３と、データ移行部３４とを備えている。信号処理装置（新）３０Ｂは、データ変換部３５を有する。
【００４３】
信号処理部３１は、到着した信号と、当該信号に係る当該状態情報とに基づいて信号処理するものである。信号処理部３１は、信号を受け取ると、データ保管部３２上の状態情報を生成し、参照し、解放しながら信号処理を行う。
データ保管部３２は、各信号に係る状態情報を保管すると共に、SessionIDをキー情報として必要な状態情報を取得するものである。
【００４４】
信号処理装置（旧）３０Ａの転送判断部３３は、旧関連の信号が転送されたとき、当該信号が転送済みであれば送信元の振分装置２０に転送し、当該信号が転送済みでなければ当該信号処理装置（旧）３０Ａで処理するよう判断するものである。
【００４５】
信号処理装置（旧）３０Ａのデータ移行部３４は、旧関連のリクエストが当該信号処理装置（旧）３０Ａから既に転送されたか否かを判断して、移行済みか否かを返すものである。転送判断部３３とデータ移行部３４とは、当該クラスタシステム１の内部状態情報を信号処理装置（旧）３０Ａから信号処理装置（新）３０Ｂに移行するためのものである。
【００４６】
信号処理装置（新）３０Ｂのデータ変換部３５は、信号処理装置（旧）３０Ａから転送されたキー情報と状態情報とを、当該信号処理装置（新）３０Ｂに於けるキー情報と状態情報とに変換して、自らのデータ保管部３２に保管するものである。
【００４７】
（第１の実施形態の動作）
以下、第１の実施形態のクラスタシステム１（図１）に於いて、旧バージョンの信号処理装置（旧）３０Ａと新バージョン信号処理装置（新）３０Ｂとが併存した場合の信号処理動作について記載する。
【００４８】
図２は、第１の実施形態に於ける信号振分処理を示すフローチャートである。
ロードバランサ１０から信号が到着すると、振分装置２０は、信号振分処理を開始する。
ステップＳ１０に於いて、振分装置２０の信号振分部２１は、当該信号が属するセッションを一意に識別する識別子であるSessionIDが、当該信号中に含まれているか否かを確認する。信号振分部２１は、当該判断条件が成立したならば（Ｙｅｓ）、ステップＳ１１の処理を行い、当該判断条件が成立しなかったならば（Ｎｏ）、ステップＳ１３の処理を行う。
【００４９】
ステップＳ１１に於いて、信号振分部２１は、当該信号に新バージョン番号が付与されているか否かを判断する。信号振分部２１は、当該判断条件が成立したならば（Ｙｅｓ）、ステップＳ１４の処理を行い、当該判断条件が成立しなかったならば（Ｎｏ）、ステップＳ１２の処理を行う。
【００５０】
ステップＳ１２に於いて、信号振分部２１は、振分先決定ロジック（旧）２３ＡにSessionIDを入力し、振分先の信号処理装置（旧）３０Ａを決定し、ステップＳ１５の処理を行う。
【００５１】
ステップＳ１３に於いて、信号振分部２１は、新バージョン番号を含んだユニークなSessionIDを生成して、当該信号に付与する。ＳＩＰ信号に於けるユニークなSessionIDの生成方法は、例えば、セッションごとにユニークなＣａｌｌ−ＩＤヘッダが当該信号に含まれているため、それに基づいてSessionIDを生成する方法が考えられる。信号振分部２１は、当該信号が信号処理装置（新）３０Ｂで処理されたことを後続信号が判別可能なように、生成したSessionIDに新バージョン番号を含めている。
【００５２】
ステップＳ１４に於いて、信号振分部２１は、振分先決定ロジック（新）２３ＢにSessionIDを入力して、振分先の信号処理装置（新）３０Ｂを決定する。
ステップＳ１５に於いて、信号振分部２１は、当該信号を振分先の信号処理装置３０に転送し、図２の処理を終了する。
【００５３】
図３は、第１の実施形態に於ける振分先決定ロジックを示す図である。
振分先決定ロジック２３は、振り分け対象となる全信号処理装置３０のアドレスを管理しており、任意のSessionIDを入力として、いずれかの信号処理装置３０を選択して返す。選択方法の一例として、管理対象のＮ台の信号処理装置３０に１からＮまでの番号を割振った上で、入力されたSessionIDを数値として解釈してＮで除算し、その剰余として求められた値に１を加算した番号の信号処理装置３０を振り分け対象とする方法が考えられる。
【００５４】
振分先決定ロジック（新）２３Ｂは、信号処理装置（新）３０Ｂのいずれかを返す。振分先決定ロジック（旧）２３Ａは、信号処理装置（旧）３０Ａのいずれを返す。
【００５５】
到着した信号にSessionIDが含まれていた場合には、当該SessionIDに付与されたバージョン番号を参照し、それが新旧どちら側の信号処理装置３０に振り分けられるべき信号であるかを判別する。当該バージョン番号が「新」であった場合（新関連リクエスト）、振分先決定ロジック（新）２３Ｂを用いて、振り分け先の信号処理装置（新）３０Ｂを決定する。当該バージョン番号が「旧」であった場合（旧関連リクエスト）、振分先決定ロジック（旧）２３Ａを用いて、振り分け先の信号処理装置（旧）３０Ａを決定する。
【００５６】
図４は、第１の実施形態に於ける信号処理を示すシーケンス図である。
【００５７】
《新規リクエストの信号処理》
シーケンスＱ１０に於いて、クライアント２からロードバランサ１０に、新規リクエストが送信されると、新規リクエストの信号処理のシーケンスが開始する。
シーケンスＱ１１に於いて、ロードバランサ１０は、いずれかの振分装置２０の信号振分部２１に、当該信号の内容に依らない信号の振り分けを行う。
【００５８】
シーケンスＱ１２に於いて、振分装置２０の信号振分部２１は、当該信号に係るSessionIDを生成し、当該SessionIDに新バージョン番号を付与する。
シーケンスＱ１３に於いて、振分装置２０の信号振分部２１は、振分先決定ロジック（新）２３Ｂに、当該信号の振分先を問い合わせる。
【００５９】
シーケンスＱ１４に於いて、振分装置２０の信号振分部２１は、振分先決定ロジック（新）２３Ｂから、当該信号の振分先である信号処理装置（新）３０Ｂの情報を取得する。
シーケンスＱ１５に於いて、振分装置２０の信号振分部２１は、当該信号の振分先である信号処理装置（新）３０Ｂの信号処理部３１に、当該信号を転送する。
シーケンスＱ１６に於いて、信号処理装置（新）３０Ｂの信号処理部３１は、データ保管部３２に、当該信号の状態情報を問い合わせる。
シーケンスＱ１７に於いて、信号処理装置（新）３０Ｂの信号処理部３１は、データ保管部３２から、当該信号の状態情報を取得する。
シーケンスＱ１８に於いて、信号処理装置（新）３０Ｂの信号処理部３１は、当該信号と当該信号の状態とに基づいて、当該新規リクエストの信号処理を行う。
【００６０】
《旧関連リクエストの信号処理》
シーケンスＱ２０に於いて、クライアント２からロードバランサ１０に、旧関連リクエストが送信されると、旧関連リクエストの信号処理のシーケンスが開始する。
シーケンスＱ２１に於いて、ロードバランサ１０は、いずれかの振分装置２０の信号振分部２１に、当該信号の内容に依らない信号の振り分けを行う。
【００６１】
シーケンスＱ２２に於いて、振分装置２０の信号振分部２１は、当該信号のSessionIDに付与されたバージョン番号を確認する。ここではバージョン番号は「旧」である。
シーケンスＱ２３に於いて、振分装置２０の信号振分部２１は、振分先決定ロジック（旧）２３Ａに、当該信号の振分先を問い合わせる。
【００６２】
シーケンスＱ２４に於いて、振分装置２０の信号振分部２１は、振分先決定ロジック（旧）２３Ａから、当該信号の振分先である信号処理装置（旧）３０Ａの情報を取得する。
シーケンスＱ２５に於いて、振分装置２０の信号振分部２１は、当該信号の振分先である信号処理装置（旧）３０Ａの信号処理部３１に、当該信号を転送する。
【００６３】
シーケンスＱ２６に於いて、信号処理装置（旧）３０Ａの信号処理部３１は、信号処理装置（旧）３０Ａのデータ保管部３２に、当該信号の状態情報を問い合わせる。
【００６４】
シーケンスＱ２７に於いて、信号処理装置（旧）３０Ａの信号処理部３１は、信号処理装置（旧）３０Ａのデータ保管部３２から、当該信号の状態情報を取得する。
【００６５】
シーケンスＱ２８に於いて、信号処理装置（旧）３０Ａの信号処理部３１は、当該信号と当該信号の状態情報とに基づいて、当該旧関連リクエストの信号処理を行う。
【００６６】
《新関連リクエストの信号処理》
シーケンスＱ３０に於いて、クライアント２からロードバランサ１０に、新関連リクエストが送信されると、新関連リクエストの信号処理のシーケンスが開始する。
シーケンスＱ３１に於いて、ロードバランサ１０は、いずれかの振分装置２０の信号振分部２１に、当該信号の内容に依らない信号の振り分けを行う。
【００６７】
シーケンスＱ３２に於いて、振分装置２０の信号振分部２１は、当該信号のSessionIDに付与されたバージョン番号を確認する。ここで、バージョン番号は「新」である。
シーケンスＱ３３〜Ｑ３８の処理は、前記したシーケンスＱ１３〜Ｑ１８の処理と同様である。
【００６８】
図５は、第１の実施形態に於ける状態移行処理を示すシーケンス図である。
課題でも述べたように、前記の信号処理装置（旧）３０Ａと、信号処理装置（新）３０Ｂとの併存状態は、信号処理装置（旧）３０Ａに、いずれかの信号に係る状態情報が存在している限り継続される。第１の実施形態のクラスタシステム１は、図５に示す状態移行処理によって、或る時点に於いて信号処理装置（旧）３０Ａに存在する状態情報を、信号処理装置（新）３０Ｂに移行することを特徴とする。これにより、第１の実施形態のクラスタシステム１は、所定時間後には全ての信号に係る状態情報を移行し、新旧の信号処理装置３０の併存状態を解消することができる。
シーケンスＱ４０に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、データ保管部３２に、全状態情報のキーのリストを要求する。
シーケンスＱ４１に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、データ保管部３２から、全状態情報のキーのリストを取得する。
【００６９】
シーケンスＱ４２に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、全状態情報のキーのリストから、移行対象テーブルを生成する。本実施形態に於いて、移行処理の開始契機は、外部からデータ移行部３４に与えるように構成されている。
【００７０】
シーケンスＱ４３に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、データ保管部３２に、移行対象テーブルに係るキー情報に基づき、当該キー情報と状態情報との組合せの削除を要求する。
シーケンスＱ４４に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、データ保管部３２から、当該削除要求に対する応答を取得する。
【００７１】
シーケンスＱ４５に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、振分装置２０のデータ転送部２２に、当該キー情報と当該状態情報との組合せを送信する。
【００７２】
シーケンスＱ４６に於いて、振分装置２０のデータ転送部２２は、振分先決定ロジック（新）２３Ｂに、当該キー情報に基づいて、保管先である信号処理装置（新）３０Ｂを問い合わせる。
【００７３】
シーケンスＱ４７に於いて、振分装置２０のデータ転送部２２は、振分先決定ロジック（新）２３Ｂから、保管先である信号処理装置（新）３０Ｂの情報を取得する。
【００７４】
シーケンスＱ４８に於いて、振分装置２０のデータ転送部２２は、当該キー情報と当該状態情報との組合せを、当該保管先である信号処理装置（新）３０Ｂのデータ変換部３５に送信する。
【００７５】
シーケンスＱ４９に於いて、信号処理装置（新）３０Ｂのデータ変換部３５は、当該状態情報を、必要に応じて新バージョンの処理に合わせて変換する。例えば、当該状態情報が有する所定値が、信号処理装置（旧）３０Ａではｉｎｔ型であり、信号処理装置（新）３０Ｂではｌｏｎｇ型に変更されていた場合を考える。このとき、データ変換部３５は、当該状態情報が有する所定値を、ｉｎｔ型からｌｏｎｇ型に変換する処理を行う。
シーケンスＱ５０に於いて、信号処理装置（新）３０Ｂのデータ変換部３５は、信号処理装置（新）３０Ｂのデータ保管部３２に、当該状態情報を保管する。
【００７６】
シーケンスＱ５１に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、移行対象テーブルの、当該キー情報に係る該当状態情報を「移行済」に更新する。以下、シーケンスＱ４３〜Ｑ５０の処理を、移行対象テーブルの全状態情報（全レコード）について繰り返し、状態情報を移行する。これにより、長期にわたってセッションが継続する場合であっても、能動的に状態情報を移行するので、一定時間で信号処理装置（旧）３０Ａから信号処理装置（新）３０Ｂに状態情報の移行を完了することができ、ソフトウェアをアップデートすることができる。
【００７７】
図６（ａ）〜（ｃ）は、第１の実施形態に於ける移行対象テーブルを示す図である。
第１の実施形態に於ける移行対象テーブルは、行方向に各レコードが示され、列方向に、キー欄と、移行状況欄とが示されている。
キー欄は、各信号のキー情報を格納している。本実施形態のキー欄は、キー情報として、当該信号のSessionIDを格納している。
移行状況欄は、各信号の移行状況を格納している。移行状況欄が「未移行」のとき、当該信号は移行されていないことを示している。移行状況欄が「移行済」のとき、当該信号は移行済みであることを示している。
【００７８】
図６（ａ）は、シーケンスＱ４２（図５）に於ける移行対象テーブルを示す図である。
【００７９】
移行処理開始の際に、移行対象テーブルは、残存していた全ての状態情報に係るキー情報（SessionID）をキー欄に格納し、そのキー情報に係る状態情報を信号処理装置（新）３０Ｂに移行済みか否かを示す移行状況が移行状況欄に格納している。シーケンスＱ４２（図５）は、移行対象テーブル生成のときの状態情報であり、全ての移行状況欄に「未移行」が格納されている。このとき、全ての信号は、当該移行対象テーブルが格納されている信号処理装置（旧）３０Ａに格納されている。
【００８０】
移行対象テーブルを生成した後、データ移行部３４は、テーブル中の全てのキー情報を用いて、データ保管部３２から当該キー情報に係る状態情報を取得し、データ保管部３２から当該状態情報を削除すると共に、当該キー情報と当該状態情報との組合せを振分装置２０上のデータ転送部２２に転送する。
【００８１】
図６（ｂ）は、図６（ａ）上のキー「ａｂｃｄｅ１２３４」に係る信号が、シーケンスＱ４３〜Ｑ５０の処理で移行された後に於ける移行対象テーブルを示す図である。
キー「ａｂｃｄｅ１２３４」に係るレコードのみ、移行状況欄に「移行済」が格納されている。それ以外のキー情報に係るレコードの移行状況欄は全て、「未移行」である。
【００８２】
図６（ｃ）は、テーブル中の全てのキー情報に係る状態情報について、状態移行処理を実施したときの移行対象テーブルを示す図である。
ここに示すように、テーブル中の全てのキー情報に係る移行状況欄が「移行済」になると、図５に示す状態移行処理は完了する。
【００８３】
図７は、第１の実施形態に於ける状態移行中の信号処理を示すシーケンス図である。
状態移行中の信号処理とは、クラスタシステム１の図５に示す状態移行処理中に於いて、信号処理装置（旧）３０Ａに信号が到着した場合の処理をいう。
状態移行中の信号処理のうち、シーケンスＱ６０〜Ｑ７５は、旧関連リクエストであり、かつ、状態情報が移行済みである信号を受信したときのシーケンスである。
シーケンスＱ６０〜Ｑ６４の処理は、シーケンスＱ２０〜Ｑ２４（図４）の処理と同様である。
シーケンスＱ６５に於いて、振分装置２０は、信号処理装置（旧）３０Ａの転送判断部３３に、当該信号を転送する。
シーケンスＱ６６に於いて、信号処理装置（旧）３０Ａの転送判断部３３は、データ移行部３４に、当該信号の移行状況を確認する。
【００８４】
シーケンスＱ６７に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、移行対象テーブルを参照して、当該信号の移行状況を確認する。ここでは、移行状況は「移行済」である。
【００８５】
シーケンスＱ６８に於いて、信号処理装置（旧）３０Ａの転送判断部３３は、データ移行部３４から、当該信号の移行状況を取得する。ここで転送判断部３３は、当該信号が移行済みである旨の応答を取得している。
シーケンスＱ６９に於いて、信号処理装置（旧）３０Ａの転送判断部３３は、振分装置２０の信号振分部２１に、当該信号を転送する。
【００８６】
シーケンスＱ７０に於いて、振分装置２０の信号振分部２１は、ロードバランサ１０以外から信号を受信したので、振分先決定ロジック（新）２３Ｂに、当該信号の振分先を問い合わせる。
【００８７】
シーケンスＱ７１に於いて、振分装置２０の信号振分部２１は、振分先決定ロジック（新）２３Ｂから、当該信号の振分先である信号処理装置（新）３０Ｂの情報を取得する。
シーケンスＱ７２に於いて、振分装置２０の信号振分部２１は、当該信号を、当該信号の振分先である信号処理装置（新）３０Ｂに転送する。
シーケンスＱ７３〜Ｑ７５の処理は、シーケンスＱ１６〜Ｑ１８（図４）の処理と同様である。
状態移行中の信号処理のうち、シーケンスＱ８０〜Ｑ９２は、旧関連リクエストであり、かつ、状態情報が未移行である信号を受信したときのシーケンスである。
シーケンスＱ８０〜Ｑ８６の処理は、シーケンスＱ６０〜Ｑ６６の処理と同様である。
【００８８】
シーケンスＱ８７に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、移行対象テーブルを参照して、当該信号の移行状況を確認する。ここでは、移行状況は未移行である。
【００８９】
シーケンスＱ８８に於いて、信号処理装置（旧）３０Ａの転送判断部３３は、データ移行部３４から、当該信号の移行状況を取得する。ここで転送判断部３３は、当該信号が未移行である旨の応答を取得している。
シーケンスＱ８９に於いて、信号処理装置（旧）３０Ａの転送判断部３３は、信号処理部３１に、当該信号を転送する。
シーケンスＱ９０〜Ｑ９２の処理は、シーケンスＱ２６〜Ｑ２８（図４）の処理と同様である。
【００９０】
図８は、第１の実施形態に於ける信号振分処理を示すフローチャートである。
信号振分処理を開始すると、ステップＳ１０Ａに於いて、振分装置２０の信号振分部２１は、信号送信元がロードバランサ１０であるか否かを判断する。信号振分部２１は、当該条件が成立したならば（Ｙｅｓ）、ステップＳ１０の処理を行い、当該条件が成立しなかったならば（Ｎｏ）、ステップＳ１４の処理を行う。
ステップＳ１０〜Ｓ１５の処理は、図２のステップＳ１０〜Ｓ１５の処理と同様である。ステップＳ１５の処理が終了すると、図８の処理を終了する。
ステップＳ１０Ａの処理を行ったのち、ステップＳ１４の処理を行うことは、シーケンスＱ７０からシーケンスＱ７１の処理に対応している。
【００９１】
ステップＳ１０Ａの処理を行ったのち、ステップＳ１０の処理を行うことは、シーケンスＱ６１からシーケンスＱ６２の処理や、シーケンスＱ８１からシーケンスＱ８２の処理に対応している。
【００９２】
これにより、クラスタシステム１は、信号処理装置（旧）３０Ａから信号処理装置（新）３０Ｂへの状態移行処理の実施中であっても、その状態移行処理の状況を確認しながら信号処理装置３０へ当該信号を振り分けて信号処理を行うことができる。
【００９３】
（第１の実施形態の効果）
以上説明した第１の実施形態では、次の（Ａ），（Ｂ）のような効果がある。
【００９４】
（Ａ）  クラスタシステム１は、能動的に信号処理装置（旧）３０Ａから信号処理装置（新）３０Ｂへの状態移行処理を行うので、一定時間で全ての状態情報を信号処理装置（新）３０Ｂに移行完了することができる。
【００９５】
（Ｂ）  クラスタシステム１は、信号処理装置（旧）３０Ａから信号処理装置（新）３０Ｂへの状態移行処理の実施中であっても、その状態移行処理の状況を確認しながら信号処理装置３０へ当該信号を振り分けて信号処理を行うことができる。
【００９６】
（第２の実施形態の構成）
第１の実施形態では、SessionIDから状態情報の保管先を決定する振分装置２０を経由し、キー情報と状態情報とを信号処理装置（旧）３０Ａから信号処理装置（新）３０Ｂへ転送・移行していた。そのため、状態情報のサイズによっては転送量が多くなり、網への負荷が多くなる虞があった。
第２の実施形態では、キー情報のみを送信して、その保管先を通知することにより状態情報を網に転送することなく、状態移行処理を実現するという特徴がある。
【００９７】
図９は、第２の実施形態に於けるクラスタシステムを示す概略の構成図である。
第２の実施形態のクラスタシステム１Ａは、第１の実施形態のクラスタシステム１（図１）とは異なる振分装置２０Ａ−１〜２０Ａ−ｐを備え、それ以外の構成は、第１の実施形態のクラスタシステム１（図１）と同様である。以下、振分装置２０Ａ−１〜２０Ａ−ｐを特に区別しないときには、単に振分装置２０Ａと記載する。
【００９８】
第２の実施形態の振分装置２０Ａは、第１の実施形態の振分装置２０のデータ転送部２２を備えておらず、代わりに新振分先取得ＩＦ（Interface）２４を備えている。
【００９９】
新振分先取得ＩＦ２４は、外部から入力としてSessionIDを与えられると、振分先決定ロジック（新）２３Ｂを用いて、当該SessionIDに関する信号が、いずれの信号処理装置（新）３０Ｂに振り分けられるべきかを決定して応答するものである。
【０１００】
（第２の実施形態の動作）
【０１０１】
図１０は、第２の実施形態に於ける状態移行処理を示す図である。
シーケンスＱ１００〜Ｑ１０４の処理は、シーケンスＱ４０〜Ｑ４４（図５）の処理と同様である。
シーケンスＱ１０５に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、振分装置２０の新振分先取得ＩＦ２４に、当該キー情報を送信する。
【０１０２】
シーケンスＱ１０６に於いて、振分装置２０の新振分先取得ＩＦ２４は、振分先決定ロジック（新）２３Ｂに、当該キー情報に基づいて、保管先である信号処理装置（新）３０Ｂを問い合わせる。
【０１０３】
シーケンスＱ１０７に於いて、振分装置２０の新振分先取得ＩＦ２４は、振分先決定ロジック（新）２３Ｂから、保管先である信号処理装置（新）３０Ｂの情報を取得する。
【０１０４】
シーケンスＱ１０８に於いて、振分装置２０の新振分先取得ＩＦ２４は、当該キー情報と当該保管先である信号処理装置（新）３０Ｂの情報との組合せを、信号処理装置（旧）３０Ａのデータ移行部３４に送信する。
【０１０５】
シーケンスＱ１０９に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、当該キー情報と当該状態情報との組合せを、当該保管先である信号処理装置（新）３０Ｂに転送する。
シーケンスＱ１１０〜Ｑ１１２の処理は、シーケンスＱ４９〜Ｑ５１（図５）の処理を同様である。
【０１０６】
以降、クラスタシステム１Ａは、シーケンスＱ１０３〜Ｑ１１２の状態移行処理を、同様に、移行対象テーブル中の全レコードに対して実施する。第２の実施形態の振分装置２０は、状態情報を受け取らないので、第１の実施形態に於ける振分装置２０のデータ転送部２２が不要となる。
【０１０７】
図１１は、第２の実施形態に於ける状態移行中の信号処理を示すシーケンス図である。
シーケンスＱ１２０〜Ｑ１２８の処理は、第１の実施形態の状態移行中の信号処理のシーケンスＱ６０〜Ｑ６８の処理（図７）と同様である。
シーケンスＱ１２９に於いて、信号処理装置（旧）３０Ａの転送判断部３３は、振分装置２０に、当該信号のキー情報のみを送信する。
【０１０８】
シーケンスＱ１３０に於いて、振分装置２０の新振分先取得ＩＦ２４は、当該信号のキー情報に基づき、振分先決定ロジック（新）２３Ｂに、当該信号の振分先を問い合わせる。
【０１０９】
シーケンスＱ１３１に於いて、振分装置２０の新振分先取得ＩＦ２４は、振分先決定ロジック（新）２３Ｂから、当該信号の振分先である信号処理装置（新）３０Ｂの情報を取得する。
【０１１０】
シーケンスＱ１３２に於いて、振分装置２０の新振分先取得ＩＦ２４は、当該信号の振分先である信号処理装置（新）３０Ｂの情報を、信号処理装置（旧）３０Ａの転送判断部３３に通知する。
シーケンスＱ１３３に於いて、信号処理装置（旧）３０Ａの転送判断部３３は、当該信号を、当該信号の振分先である信号処理装置（新）３０Ｂに転送する。
シーケンスＱ１３４〜Ｑ１３６の処理は、シーケンスＱ７３〜Ｑ７５（図７）の処理と同様である。
【０１１１】
第２の実施形態では、第１の実施形態の処理とは異なり、転送の際に信号が振分装置２０を経由しない。そのため、振分装置２０は、ロードバランサ１０以外からの信号を判定して何らかの処理を行う必要がない。これにより、第２の実施形態は、振分装置２０の実装工数が少なくて済み、かつ、処理負荷が軽くなるという効果を奏する。
【０１１２】
第２の実施形態に於いて、状態情報および信号が振分装置２０を介さずに直接に信号処理装置（旧）３０Ａと、信号処理装置（新）３０Ｂとでやり取りされる。これにより、第２の実施形態は、下部ネットワーク１００ｂへの負荷が少なくなるという効果を奏する。
【０１１３】
（第２の実施形態の効果）
以上説明した第２の実施形態では、次の（Ｃ），（Ｄ）のような効果がある。
【０１１４】
（Ｃ）  振分装置２０は、ロードバランサ１０以外からの信号を判定して何らかの処理を行う必要がない。これにより、振分装置２０の実装工数が少なくて済み、かつ、処理負荷が軽くなる。
【０１１５】
（Ｄ）  状態情報および信号が振分装置２０を介さずに直接に信号処理装置（旧）３０Ａと、信号処理装置（新）３０Ｂとでやり取りされる。これにより、第２の実施形態は、下部ネットワーク１００ｂへの負荷が少なくなる。
【０１１６】
（第３の実施形態の構成）
第２の実施形態では、状態移行中の信号処理に於いて、信号処理装置（旧）３０Ａは、振分装置２０Ａに振り分け先を問合せて信号処理装置（新）３０Ｂに信号を転送していた。そのため、振分装置２０Ａに負荷が掛かると共に、ネットワーク負荷が増大する虞があった。
【０１１７】
第３の実施形態の移行対象テーブルは、移行先欄を更に備えている。これにより、信号処理装置（旧）３０Ａは、振分装置２０Ａに振り分け先を問合せることなく、信号処理装置（新）３０Ｂに信号を転送することができるという特徴がある。
第３の実施形態のクラスタシステム１Ａは、第２の実施形態のクラスタシステム１Ａ（図９）と同様に構成されている。
【０１１８】
（第３の実施形態の動作）
第３の実施形態に於ける状態移行処理は、第２の実施形態の状態移行処理（図１０）と同様のシーケンスであるが、移行対象テーブルの更新内容が異なる。
【０１１９】
図１２（ａ）〜（ｃ）は、第３の実施形態に於ける移行対象テーブルを示す図である。
【０１２０】
第３の実施形態に於ける移行対象テーブルは、第１の実施形態の移行対象テーブル（図６）と同様に、行方向に各レコードが示され、列方向にキー欄と、移行状況欄とが示され、更に、移行先欄が示されている。
第３の実施形態に於けるキー欄には、第１の実施形態のキー欄と同様の情報が格納されている。
第３の実施形態に於ける移行状況欄には、第１の実施形態の移行状況欄と同様の情報が格納されている。
移行先欄は、各信号の移行先である信号処理装置３０の情報を格納している。
【０１２１】
図１２（ａ）は、シーケンスＱ１０２（図１０）に於ける移行対象テーブルを示す図である。
移行処理開始の際には、残存していた全ての状態情報に係るキー情報（SessionID）をキー欄に格納し、そのキー情報に係る状態情報が信号処理装置（新）３０Ｂに移行済みか否かを示す移行状況が移行状況欄に格納されている。ここでは、シーケンスＱ１０２（図１０）は、移行対象テーブル生成のときのものであり、全ての移行状況欄に「未移行」が格納されている。
このとき、全ての信号は、当該移行対象テーブルが格納されている信号処理装置（旧）３０Ａに格納されている。
【０１２２】
移行対象テーブルを生成した後、データ移行部３４は、テーブル中の全てのキー情報を用いて、データ保管部３２から当該キー情報に係る状態情報を取得し、データ保管部３２から当該状態情報を削除すると共に、当該キー情報を振分装置２０上のデータ転送部２２に転送して、振分先に係る信号処理装置（新）３０Ｂの情報を受信する。
【０１２３】
図１２（ｂ）は、キー「ａｂｃｄｅ１２３４」に係る信号が、シーケンスＱ１０３〜Ｑ１１２の処理で移行された後に於ける移行対象テーブルを示す図である。
キー「ａｂｃｄｅ１２３４」に係るレコードのみ、移行状況欄に「移行済」が格納され、移行先欄に「信号処理装置（新）＿１」が格納されている。それ以外のキー情報に係るレコードの移行状況欄は全て、「未移行」である。
【０１２４】
図１２（ｃ）は、全ての信号が移行済みである状況を示している。
キー「ａｂｃｄｅ１２３４」に係る信号の移行先は「信号処理装置（新）＿１」である。キー「ｆｇｈｉｊ５６７８」に係る信号の移行先は「信号処理装置（新）＿３」である。キー「ｋｌｍｎｏ９０１２」に係る信号の移行先は「信号処理装置（新）＿２」である。ここに示すように、テーブル中の全てのキー情報に係る移行状況欄が「移行済」になると、図１０に示す状態移行処理は完了する。
【０１２５】
図１３は、第３の実施形態に於ける状態移行中の信号処理を示すシーケンス図である。
シーケンスＱ１４０〜Ｑ１４７の処理は、第２の実施形態のシーケンスＱ１２０〜Ｑ１２７（図１１）の処理と同様である。
シーケンスＱ１４８に於いて、信号処理装置（旧）３０Ａのデータ移行部３４は、転送判断部３３に、当該信号が移行済みである旨と、当該信号の移行先とを通知する。
シーケンスＱ１４９〜Ｑ１５２の処理は、第２の実施形態のシーケンスＱ１３３〜Ｑ１３６（図１１）の処理と同様である。
【０１２６】
シーケンスＱ１４０〜Ｑ１５２に示す状態移行中の信号処理により、転送判断部３３は、振分装置２０に振り分け先を問い合わせることなく、転送先を返された移行先して直接信号を転送する。これにより、クラスタシステム１は、振分装置２０への問合せに係るトラヒックが不要となり、ネットワーク負荷が軽減される。
【０１２７】
（第３の実施形態の効果）
以上説明した第３の実施形態では、次の（Ｅ）のような効果がある。
【０１２８】
（Ｅ）  振分装置２０への問合せに係るトラヒックが不要となり、ネットワーク負荷が軽減される。
（変形例）
【０１２９】
本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能である。この利用形態や変形例としては、例えば、次の（ａ）〜（ｃ）のようなものがある。
【０１３０】
（ａ）  第１〜第３の実施形態は、ＩＰ電話の呼制御に係るクラスタシステムである。しかし、これに限られず、クラスタシステムは、クライアント端末からの一連の信号を、一連の内部状態情報に基づいて処理するものであればよく、例えば、動画や音楽のストリーミング再生サービス、データ検索サービス、ゲームサービス、または、ソーシャルネットワークサービスなどであってもよい。
【０１３１】
（ｂ）  第１〜第３の実施形態の上部ネットワーク１００ａと下部ネットワーク１００ｂとは、独立した２つのネットワークとして構成されている。しかし、これに限られず、上部ネットワーク１００ａおよび下部ネットワーク１００ｂは、各装置が信号を送受信可能に接続されている単一のネットワークで構成してもよい。
【０１３２】
（ｃ）  第１〜第３の実施形態に於いて、移行処理の開始契機は、外部からデータ移行部３４に与えるように構成されている。しかし、これに限られず、移行処理の開始契機は、外部から指示を与えたのちに一定時間後に自動的に開始するようにしてもよい。更に、移行処理の開始契機は、信号処理装置（新）３０Ｂが与えるように構成してもよい。
【符号の説明】
【０１３３】
１，１Ｂ  クラスタシステム
２  クライアント
１０  ロードバランサ
２０，２０Ａ，２０Ｂ  振分装置
２１  信号振分部  （振分手段）
２２  データ転送部
２３Ａ  振分先決定ロジック（旧）  （旧版振分先決定手段）
２３Ｂ  振分先決定ロジック（新）  （新版振分先決定手段）
２４  新振分先取得ＩＦ  （新振分先取得手段）
３０  信号処理装置
３０Ａ  信号処理装置（旧）  （旧版信号処理装置）
３０Ｂ  信号処理装置（新）  （新版信号処理装置）
３１  信号処理部
３２  データ保管部
３３  転送判断部
３４  データ移行部
３５  データ変換部
１００ａ  上部ネットワーク
１００ｂ  下部ネットワーク
【図１】
0005662956.tif 000002
【図２】
0005662956.tif 000003
【図３】
0005662956.tif 000004
【図４】
0005662956.tif 000005
【図５】
0005662956.tif 000006
【図６】
0005662956.tif 000007
【図７】
0005662956.tif 000008
【図８】
0005662956.tif 000009
【図９】
0005662956.tif 000010
【図１０】
0005662956.tif 000011
【図１１】
0005662956.tif 000012
【図１２】
0005662956.tif 000013
【図１３】
0005662956.tif 000014
【図１４】
0005662956.tif 000015
【図１５】
0005662956.tif 000016