JP5750072B2 - Cluster system - Google Patents
Cluster system Download PDFInfo
- Publication number
- JP5750072B2 JP5750072B2 JP2012045768A JP2012045768A JP5750072B2 JP 5750072 B2 JP5750072 B2 JP 5750072B2 JP 2012045768 A JP2012045768 A JP 2012045768A JP 2012045768 A JP2012045768 A JP 2012045768A JP 5750072 B2 JP5750072 B2 JP 5750072B2
- Authority
- JP
- Japan
- Prior art keywords
- signal
- signal processing
- processing device
- new
- old
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
本発明は、通信サービスなどを提供するクラスタシステムに関する。 The present invention relates to a cluster system that provides communication services and the like.
近年、通信網は、設備維持コスト低減を目的とするIP(Internet Protocol)化が進んでいる。更に、現用系サーバと待機系サーバの二重化構成された従来の通信網に加えて、サーバをN台クラスタリングしたN−Active型の構成の通信網が登場している。 In recent years, IP (Internet Protocol) has been advanced in communication networks for the purpose of reducing equipment maintenance costs. Further, in addition to the conventional communication network in which the active server and the standby server are duplicated, an N-Active type communication network in which N servers are clustered has appeared.
非特許文献1に記載されているように、N−Active構成は、二重化構成に比べて資源利用効率が高く、かつ、サーバ資源を動的に追加・削除可能であるという特徴を有している。
As described in Non-Patent
図10は、従来のクラスタシステムの概要を示す図である。
クラスタシステム1Bは、ロードバランサ10と、振分装置20B−1〜20B−pと、信号処理装置30−1〜30−Nとを備え、ロードバランサ10を介してクライアント2−1〜2−qに接続されている。ここでp,q,Nは、自然数である。以下、クライアント2−1〜2−qを特に区別しないときには、単にクライアント2と記載する。振分装置20B−1〜20B−pを特に区別しないときには、単に振分装置20Bと記載する。信号処理装置30−1〜30−Nを特に区別しないときには、単に信号処理装置30と記載する。
FIG. 10 is a diagram showing an overview of a conventional cluster system.
The
クライアント2は、例えば、IP電話装置であり、2台の異なるクライアント2の間で音声通信を行うものである。クライアント2は、図示しないネットワークを介してロードバランサ10に接続されている。
The
ロードバランサ10は、クライアント2からのリクエストの受付先エンドポイントとなり、高速に信号を振分装置20Bに負荷分散するものである。ロードバランサ10は、クライアント2と、振分装置20Bとに接続されている。
The
非特許文献1に記載されているように、当該信号の内容に依らない単純な振り分けを行うロードバランサ10を、クラスタシステム1Bの前段に設置することにより、信号の内容を意識した複雑な振り分けを行う振分装置20Bをスケールアウトすることができる。
As described in Non-Patent
振分装置20Bは、到着した信号の処理に必要な状態情報が、どの信号処理装置30に存在するかを判断して、当該信号を転送するものである。当該信号の処理に必要な状態情報を備えている信号処理装置30は、信号の振り分け先である。振分装置20Bは、ロードバランサ10と、信号処理装置30とに接続されている。
The allocating
信号処理装置30は、新規に信号が到着した際に、内部に状態情報を生成・保持し、後続信号が到着した場合に、生成・保持している当該状態情報を参照して必要な処理を行うものである。信号処理装置30は、振分装置20Bに接続されている。
When a new signal arrives, the
クラスタシステム1Bの制御プロトコルであるSIP(Session Initiation Protocol)は、最初のリクエスト信号を処理する際に内部状態情報を生成し、生成した内部状態情報に基づいて後続リクエスト信号を処理する。したがって、後続のリクエスト信号について、その内部状態情報が存在するサーバに振り分けて処理を行う必要がある。クラスタシステム1Bは、信号処理装置30や振分装置20Bの台数に対してスケーラブルに、通信網の制御処理を行うものである。
一方、通信網を構成するシステムには高度な可用性・信頼性が要求されるため、ソフトウェアの更新も無停止・無呼損で行われることが望まれる。
SIP (Session Initiation Protocol), which is a control protocol of the
On the other hand, since a system constituting a communication network is required to have a high level of availability and reliability, it is desired that software updates be performed without interruption and without call loss.
非特許文献2には、クラスタシステムに於いて無停止のソフトウェア更新を実現する方法として、新バージョンの信号処理装置と旧バージョンの信号処理装置とを併存させる技術が記載されている。
Non-Patent
図11は、従来のクラスタシステムのソフトウェアアップデート動作を示す図である。
図11によって、非特許文献2に記載の技術を説明する。図11のクラスタシステム1Bは、図10のクラスタシステム1Bが備える信号処理装置30−1〜30−Nの代わりに、信号処理装置(旧)30A−1〜30A−nと、信号処理装置(新)30B−1〜30B−mとを備えている他は、図10のクラスタシステム1Bと同様に構成されている。以下、信号処理装置(旧)30A−1〜30A−nを特に区別しないときには、単に信号処理装置(旧)30Aと記載する。信号処理装置(新)30B−1〜30B−mを特に区別しないときには、信号処理装置(新)30Bと記載する。
FIG. 11 is a diagram showing a software update operation of a conventional cluster system.
The technique described in
信号処理装置(旧)30Aは、旧バージョンの信号処理装置30である。信号処理装置(新)30Bは、新バージョンの信号処理装置30である。信号処理装置30のバージョンは、例えば、搭載しているソフトウェアのバージョンのことをいう。信号処理装置(旧)30Aは、処理しているリクエストが無くなり次第停止し、新たな信号処理装置(新)30Bが追加される。
The signal processing device (old) 30A is an old version of the
振分装置20Bは、破線矢印で示すように、新規リクエストを信号処理装置(新)30Bに振り分ける。更に、振分装置20Bは、実線矢印で示すように旧バージョンで処理されたリクエストの後続信号、すなわち信号処理装置(旧)30Aに必要な内部状態情報が存在する信号のみを、信号処理装置(旧)30Aに振り分ける。
The
SIPなどの通信網制御プロトコルを用いた通話サービスを前提とすると、ユーザが通話を終了するとその内部状態情報も解消される。したがって、一定時間が経過して全ユーザが通話を終え、信号処理装置(旧)30A上に残存した内部状態情報が全てなくなると、ソフトウェアの更新は完了する。これにより、信号処理装置(旧)30Aは、解体可能な状態となる。 Assuming a call service using a communication network control protocol such as SIP, when the user ends the call, the internal state information is also eliminated. Therefore, when all the users have finished a call after a certain time and all the internal state information remaining on the signal processing device (old) 30A disappears, the software update is completed. Thereby, signal processing device (old) 30A will be in a state which can be disassembled.
非特許文献2に記載のソフトウェア更新方法では、長期にわたって通話を行うユーザが存在した場合、該ユーザが通話を完了するまで旧版の信号処理装置を停止することができず、よって、ソフトウェアの更新を完了することができない。また、非特許文献2に記載のソフトウェア更新方法は、通話以外に長期にセッションが継続するSIPを用いたプレゼンスサービスが存在していると、適用することができない。
In the software update method described in Non-Patent
そこで、本発明は、長期にわたってセッションが継続する場合であっても、一定時間で旧版の信号処理装置を停止してアップデートを可能とするクラスタシステムを提供することを課題とする。 Therefore, an object of the present invention is to provide a cluster system that enables updating by stopping an old version of a signal processing device within a predetermined time even when a session continues for a long period of time.
上記の課題を解決するために、請求項1に記載の発明では、受信した信号をセッションごとに振り分ける振分装置と、前記信号を、当該信号のセッションに係る状態情報に基づいて処理する旧版信号処理装置および新版信号処理装置と、を備えるクラスタシステムであって、前記新版信号処理装置および前記旧版信号処理装置は、前記振分装置が振り分けた前記信号のセッション情報と前記状態情報との組合せを保管するデータ保管部を備え、前記振分装置は、所定の時点より前には受信した前記信号のバージョン番号に基づいて、新版信号処理装置のいずれかに当該信号を送信するか、旧版信号処理装置のいずれかに当該信号を送信するかを選択すると共に、前記所定の時点以降には前記信号中に含まれたバージョン番号に依らずに前記新版信号処理装置のいずれかを選択し、選択した装置に当該信号を振り分ける信号振分部を備え、前記振分装置が更に備える旧版振分先決定手段は、前記信号振分部が前記信号を旧版信号処理装置のいずれかに送信するように選択した際に、当該信号のセッション情報に基づき、当該信号を振り分ける旧版信号処理装置を決定し、前記振分装置が更に備える新版振分先決定手段は、前記信号振分部が前記信号を新版信号処理装置のいずれかに送信するように選択した際に、当該信号のセッション情報に基づき、当該信号を振り分ける新版信号処理装置を決定し、前記新版信号処理装置が更に備える信号処理部は、前記振分装置が振り分けた前記信号中のセッション情報に基づき、当該新版信号処理装置の前記データ保管部に前記信号の状態情報を要求し、要求した当該信号の状態情報が前記データ保管部に存在しなかったならば、当該新版信号処理装置が更に備える取得判断部に通知し、前記取得判断部は、前記振分装置に前記信号のセッション情報を送信し、前記振分装置が更に備える旧保管先取得手段は、前記信号振分部が前記信号を振り分けた前記新版信号処理装置から前記信号のセッション情報を受信した際に、当該信号のセッション情報に基づいて当該信号の状態情報の保管先情報を決定して当該新版信号処理装置に通知し、前記取得判断部は、前記振分装置から受信した前記保管先情報により示される前記旧版信号処理装置に前記信号のセッション情報を送信し、前記旧版信号処理装置が更に備えるデータ取得手段は、前記新版信号処理装置から受信した前記信号のセッション情報に基づき、当該旧版信号処理装置の前記データ保管部に保管されている前記信号の状態情報を当該新版信号処理装置に送信し、前記取得判断部は、前記旧版信号処理装置から転送された前記信号に係る状態情報とセッション情報との組合せを当該新版信号処理装置に於けるセッション情報と状態情報とに変換して前記データ保管部に保管する、ことを特徴とするクラスタシステムとした。
In order to solve the above-described problem, in the invention according to
このようにすることで、長期にわたってセッションが継続する場合であっても、一定時間で旧版の信号処理装置を停止してアップデートすることができる。 In this way, even if the session continues for a long period of time, the old version signal processing device can be stopped and updated in a certain time.
請求項2に記載の発明では、前記新版信号処理装置の前記取得判断部は、前記振分装置が前記所定の時点以降に振り分けた前記信号のバージョン番号が旧版であったならば、前記振分装置に当該信号のセッション情報を送信して、前記振分装置の前記旧版振分先決定手段により当該信号の状態情報を保管する前記旧版信号処理装置を示す保管先情報を決定させて取得し、取得した保管先情報が示す当該旧版信号処理装置から、前記信号の状態情報を取得する、ことを特徴とする請求項1に記載のクラスタシステムとした。
In the invention according to
このようにすることで、クラスタシステムは、旧版信号処理装置に当該状態情報が保管されている信号が到着したときに、当該信号が格納されている旧版信号処理装置の情報を取得する。これにより、必要に応じて状態情報の保管先情報を取得するので、網負荷と信号処理装置の処理負荷とを抑えることができる。更に、必要に応じて状態情報を旧版信号処理装置から新版信号処理装置へと移行させるので、網負荷と信号処理装置の処理負荷とを抑えることができる。 By doing so, the cluster system acquires the information of the old version signal processing device in which the signal is stored when the signal in which the state information is stored arrives in the old version signal processing device. Thereby, the storage destination information of the state information is acquired as necessary, so that the network load and the processing load of the signal processing device can be suppressed. Furthermore, since the status information is transferred from the old version signal processing apparatus to the new version signal processing apparatus as necessary, the network load and the processing load of the signal processing apparatus can be suppressed.
請求項3に記載の発明では、
前記旧版信号処理装置は更に、前記データ保管部に保管した前記信号のセッション情報に基づき、前記信号の処理とは非同期かつ並行に前記振分装置から当該信号のセッション情報と状態情報との組合せの新たな保管先である新版信号処理装置を示す保管先情報を取得し、取得した保管先情報が示す当該新版信号処理装置に当該信号のセッション情報と状態情報との組合せを転送するデータ移行部を備える、ことを特徴とする請求項1に記載のクラスタシステムとした。
In invention of Claim 3 ,
The old signal processing apparatus further based on the session information of the signal stored in the data storage unit, and the session information and status information of the sorter or found those said signal asynchronously and in parallel to the processing of the signal the acquired storage destination information indicating a new storage destination der Ru new plate signal processor combination, the combination of the session information and status information of the signal to the new plate signal processing apparatus indicated by the storage destination information acquired The cluster system according to
このようにすることで、自律的に状態情報を旧版信号処理装置から新版信号処理装置へと移行させるので、一定時間以内に移行処理を完了させることができる。 In this way, since the state information is autonomously transferred from the old version signal processing apparatus to the new version signal processing apparatus, the transition process can be completed within a predetermined time.
請求項4に記載の発明では、前記振分装置は更に、前記旧版信号処理装置から前記データ保管部に保管した各前記信号のセッション情報を受信した際に、前記新版振分先決定手段が当該セッション情報に基づいて決定した新版信号処理装置を示す保管先情報を前記旧版信号処理装置に応答する新保管先取得手段を備える、ことを特徴とする請求項3に記載のクラスタシステムとした。 In the invention according to claim 4, when the distribution apparatus further receives the session information of each signal stored in the data storage unit from the old version signal processing apparatus, the new version distribution destination determination means 4. The cluster system according to claim 3 , further comprising: a new storage location acquisition unit that responds to the old version signal processing device with storage location information indicating a new version signal processing device determined based on session information.
このようにすることで、旧版信号処理装置は、自らが保管している状態情報に係るセッション情報を、振分装置に問い合わせることで、当該状態情報を、どの新版信号処理装置へ移行させるかを知ることができる。 In this way, the old version signal processing device makes an inquiry to the distribution device about the session information related to the state information stored by itself, and to which new version signal processing device the state information is to be transferred. I can know.
本発明によれば、長期にわたってセッションが継続する場合であっても、一定時間で旧版の信号処理装置を停止してアップデートを可能とするクラスタシステムを提供することができる。 According to the present invention, it is possible to provide a cluster system in which an old version of a signal processing apparatus is stopped and updated by a fixed time even when a session continues for a long period of time.
以降、本発明を実施するための形態を、各図を参照して詳細に説明する。 Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the drawings.
(第1の実施形態の構成) (Configuration of the first embodiment)
図1は、第1の実施形態に於けるクラスタシステムを示す概略の構成図である。
クラスタシステム1は、ロードバランサ10と、上部ネットワーク100aと、振分装置20−1〜20−pと、下部ネットワーク100bと、信号処理装置(旧)30A−1〜30A−nと、信号処理装置(新)30B−1〜30B−mとを備えている。
第1の実施形態のクラスタシステム1は、SIP呼処理システムであり、一定時間(3分)毎にリフレッシュ信号(Re−INVITE信号など)が到着しないと、通話が切断されたと判断して、状態情報を解消(削除)するように構成されている。
以下、信号処理装置(旧)30A−1〜30A−nを特に区別しないときには、単に信号処理装置(旧)30Aと記載する。信号処理装置(新)30B−1〜30B−mを特に区別しないときには、単に信号処理装置(新)30Bと記載する。信号処理装置(旧)30Aと信号処理装置(新)30Bとを特に区別しないときには、単に信号処理装置30と記載する。
FIG. 1 is a schematic configuration diagram showing a cluster system according to the first embodiment.
The
The
Hereinafter, when the signal processing devices (old) 30A-1 to 30A-n are not particularly distinguished, they are simply referred to as signal processing devices (old) 30A. When the signal processing devices (new) 30B-1 to 30B-m are not particularly distinguished, they are simply referred to as signal processing devices (new) 30B. When the signal processing device (old) 30A and the signal processing device (new) 30B are not particularly distinguished, they are simply referred to as the
ロードバランサ10は、クライアント2(不図示)からのリクエスト(信号)の受付先エンドポイントとなり、高速に信号を振分装置20に負荷分散するものである。ロードバランサ10は、ネットワーク(不図示)を介してクライアント2(不図示)に接続され、上部ネットワーク100aを介して振分装置20に接続されている。
The
振分装置20は、到着した信号の処理に必要な状態情報が、信号処理装置30のいずれに存在するかを判断して、当該信号を転送するものである。当該信号の処理に必要な状態情報を備えている信号処理装置30は、信号の振り分け先である。振分装置20は、上部ネットワーク100aを介してロードバランサ10に接続され、下部ネットワーク100bを介して信号処理装置30に接続されている。
信号処理装置30は、新規に信号が到着した際に、内部に状態情報を生成・保持し、後続信号が到着した場合に、生成・保持している当該状態情報を参照して必要な処理を行うものである。信号処理装置30は、下部ネットワーク100bを介して振分装置20Bに接続されている。
信号処理装置30は、信号処理装置(旧)30Aと信号処理装置(新)30Bとに分類される。信号処理装置(旧)30Aは、旧バージョン番号のソフトウェアが動作しているものである。信号処理装置(新)30Bは、新バージョン番号のソフトウェアが動作しているものである。
The allocating
When a new signal arrives, the
The
《振分装置20の構成》
振分装置20は、信号振分部21と、振分先決定ロジック(旧)23Aと、振分先決定ロジック(新)23Bと、旧保管先取得IF(Interface)24とを備えている。
信号振分部21は、到着した信号の振分先を決定し、決定した信号処理装置30に当該信号を転送する(振り分ける)ものである。
<< Configuration of
The
The
振分先決定ロジック(旧)23Aは、当該信号に含まれているSessionIDから、いずれの信号処理装置(旧)30Aに振り分けるかを決定するものである。 The distribution destination determination logic (old) 23A determines which signal processing device (old) 30A is allocated from the SessionID included in the signal.
振分先決定ロジック(新)23Bは、当該信号に含まれているSessionID、または、状態情報と共に転送されたキー情報(SessionID)から、いずれの信号処理装置(新)30Bに振り分けるかを決定するものである。
旧保管先取得IF24は、キー情報であるSessionIDを入力とし、振分先決定ロジック(旧)23Aによって、当該SessionIDに関連した状態情報が、どの信号処理装置(旧)30Aに存在するかを通知するものである。本実施形態の振分先決定ロジック(旧)23Aと振分先決定ロジック(新)23Bとは、ソフトウェアプログラムである。当該ソフトウェアプログラムは、振分装置20の図示しない記憶部に格納されている。
The distribution destination determination logic (new) 23B determines which signal processing device (new) 30B to distribute from the SessionID included in the signal or the key information (SessionID) transferred together with the state information. Is.
The old storage location acquisition IF 24 receives the SessionID that is the key information, and notifies the signal processing device (old) 30A that the state information related to the SessionID exists by the distribution destination determination logic (old) 23A. To do. The allocation destination determination logic (old) 23A and the allocation destination determination logic (new) 23B of the present embodiment are software programs. The software program is stored in a storage unit (not shown) of the sorting
《信号処理装置30の構成》
信号処理装置(旧)30Aと信号処理装置(新)30Bとは、信号処理部31と、データ保管部32とを備えている。信号処理装置(旧)30Aは更に、データ取得IF36を備えている。信号処理装置(新)30Bは更に、データ変換部35と、取得判断部37とを備えている。
<< Configuration of
The signal processing device (old) 30 </ b> A and the signal processing device (new) 30 </ b> B include a
信号処理部31は、到着した信号と、当該信号に係る当該状態情報とに基づいて信号処理するものである。信号処理部31は、信号を受け取ると、データ保管部32上の状態情報を生成し、参照し、解放しながら信号処理を行う。
データ保管部32は、各信号に係る状態情報を保管すると共に、SessionIDをキー情報として必要な状態情報を取得可能とするものである。
The
The
信号処理装置(旧)30Aの転送判断部33は、旧関連の信号が転送されたとき、当該信号が転送済みであれば送信元の振分装置20に転送し、当該信号が転送済みでなければ当該信号処理装置(旧)30Aで処理するよう判断するものである。
The transfer determination unit 33 of the signal processing device (old) 30A transfers the old related signal to the
信号処理装置(旧)30Aのデータ取得IF36は、信号処理装置(新)30Bからの要求によって状態情報を提供するためのものである。 The data acquisition IF 36 of the signal processing device (old) 30A is for providing status information in response to a request from the signal processing device (new) 30B.
信号処理装置(新)30Bのデータ変換部35は、状態情報の受信に伴い、当該信号に係るキー情報と状態情報とを、当該信号処理装置(新)30Bに於けるキー情報と状態情報とに変換して、自らのデータ保管部32に保管するものである。
The
信号処理装置(新)30Bの取得判断部37は、信号処理装置(旧)30Aから転送されたキー情報と状態情報とを、当該信号処理装置(新)30Bに於けるキー情報と状態情報とに変換してデータ保管部32に保管するものである。
The
(第1の実施形態の動作) (Operation of the first embodiment)
図2は、第1の実施形態に於ける信号振分処理を示すフローチャートである。
ロードバランサ10から信号が到着すると、振分装置20は、信号振分処理を開始する。
ステップS10に於いて、振分装置20の信号振分部21は、当該信号が属するセッションを一意に識別する識別子であるSessionIDが、当該信号中に含まれているか否かを確認する。信号振分部21は、当該判断条件が成立したならば(Yes)、ステップS11の処理を行い、当該判断条件が成立しなかったならば(No)、ステップS13の処理を行う。
FIG. 2 is a flowchart showing signal distribution processing in the first embodiment.
When a signal arrives from the
In step S10, the
ステップS11に於いて、信号振分部21は、当該信号に新バージョン番号が付与されているか否かを判断する。信号振分部21は、当該判断条件が成立したならば(Yes)、ステップS14の処理を行い、当該判断条件が成立しなかったならば(No)、ステップS12の処理を行う。
In step S11, the
ステップS12に於いて、信号振分部21は、振分先決定ロジック(旧)23AにSessionIDを入力し、振分先の信号処理装置(旧)30Aを決定し、ステップS15の処理を行う。
In step S12, the
ステップS13に於いて、信号振分部21は、新バージョン番号を含んだユニークなSessionIDを生成して、当該信号に付与する。SIP信号に於けるユニークなSessionIDの生成方法は、例えば、セッションごとにユニークなCall−IDヘッダが当該信号に含まれているため、それに基づいてSessionIDを生成する方法が考えられる。信号振分部21は、当該信号が信号処理装置(新)30Bで処理されたことを後続信号が判別可能なように、生成したSessionIDに新バージョン番号を含めている。
In step S13, the
ステップS14に於いて、信号振分部21は、振分先決定ロジック(新)23BにSessionIDを入力して、振分先の信号処理装置(新)30Bを決定する。
ステップS15に於いて、信号振分部21は、当該信号を振分先の信号処理装置30に転送し、図2の処理を終了する。
In step S14, the
In step S15, the
図3は、第1の実施形態に於ける振分先決定ロジックを示す図である。
振分先決定ロジック23は、振り分け対象となる全信号処理装置30のアドレスを管理しており、任意のSessionIDを入力として、いずれかの信号処理装置30を選択して返す。選択方法の一例として、管理対象のN台の信号処理装置30に1からNまでの番号を割振った上で、入力されたSessionIDを数値として解釈してNで除算し、その剰余として求められた値に1を加算した番号の信号処理装置30を振り分け対象とする方法が考えられる。
FIG. 3 is a diagram illustrating a distribution destination determination logic in the first embodiment.
The distribution destination determination logic 23 manages the addresses of all the
振分先決定ロジック(新)23Bは、信号処理装置(新)30Bのいずれかを返す。振分先決定ロジック(旧)23Aは、信号処理装置(旧)30Aのいずれを返す。 The distribution destination determination logic (new) 23B returns one of the signal processing devices (new) 30B. The distribution destination determination logic (old) 23A returns one of the signal processing devices (old) 30A.
到着した信号にSessionIDが含まれていた場合には、当該SessionIDに付与されたバージョン番号を参照し、それが新旧どちら側の信号処理装置30に振り分けられるべき信号であるかを判別する。当該バージョン番号が「新」であった場合(新関連リクエスト)、振分先決定ロジック(新)23Bを用いて、振り分け先の信号処理装置(新)30Bを決定する。当該バージョン番号が「旧」であった場合(旧関連リクエスト)、振分先決定ロジック(旧)23Aを用いて、振り分け先の信号処理装置(旧)30Aを決定する。
When SessionID is included in the arrived signal, the version number assigned to the SessionID is referred to, and it is determined which signal should be distributed to the old and new
図4は、第1の実施形態に於ける新旧装置併存時のリクエスト処理を示すシーケンス図である。 FIG. 4 is a sequence diagram showing request processing when the old and new devices coexist in the first embodiment.
《新規リクエストの信号処理》
シーケンスQ10に於いて、クライアント2からロードバランサ10に、新規リクエストが送信されると、新規リクエストの信号処理のシーケンスが開始する。
シーケンスQ11に於いて、ロードバランサ10は、いずれかの振分装置20の信号振分部21に、当該信号の内容に依らない信号の振り分けを行う。
<< Signal processing for new requests >>
When a new request is transmitted from the
In sequence Q11, the
シーケンスQ12に於いて、振分装置20の信号振分部21は、当該信号に係るSessionIDを生成し、当該SessionIDに新バージョン番号を付与する。
シーケンスQ13に於いて、振分装置20の信号振分部21は、振分先決定ロジック(新)23Bに、当該信号の振分先を問い合わせる。
In sequence Q12, the
In sequence Q13, the
シーケンスQ14に於いて、振分装置20の信号振分部21は、振分先決定ロジック(新)23Bから、当該信号の振分先である信号処理装置(新)30Bの情報を取得する。
シーケンスQ15に於いて、振分装置20の信号振分部21は、当該信号の振分先である信号処理装置(新)30Bの信号処理部31に、当該信号を転送する。
シーケンスQ16に於いて、信号処理装置(新)30Bの信号処理部31は、自身のデータ保管部32に、当該信号の状態情報を問い合わせる。
シーケンスQ17に於いて、信号処理装置(新)30Bの信号処理部31は、自身のデータ保管部32から、当該信号の状態情報を取得する。
シーケンスQ18に於いて、信号処理装置(新)30Bの信号処理部31は、当該信号と当該信号の状態情報とに基づいて、当該新規リクエストの信号処理を行う。
In sequence Q14, the
In sequence Q15, the
In sequence Q16, the
In sequence Q <b> 17, the
In sequence Q18, the
《旧関連リクエストの信号処理》
シーケンスQ20に於いて、クライアント2からロードバランサ10に、旧関連リクエストが送信されると、旧関連リクエストの信号処理のシーケンスが開始する。
シーケンスQ21に於いて、ロードバランサ10は、いずれかの振分装置20の信号振分部21に、当該信号の内容に依らない信号の振り分けを行う。
<< Signal processing of old related requests >>
When an old related request is transmitted from the
In sequence Q <b> 21, the
シーケンスQ22に於いて、振分装置20の信号振分部21は、当該信号のSessionIDに付与されたバージョン番号を確認する。ここではバージョン番号は「旧」である。
シーケンスQ23に於いて、振分装置20の信号振分部21は、振分先決定ロジック(旧)23Aに、当該信号の振分先を問い合わせる。
In sequence Q22, the
In sequence Q23, the
シーケンスQ24に於いて、振分装置20の信号振分部21は、振分先決定ロジック(旧)23Aから、当該信号の振分先である信号処理装置(旧)30Aの情報を取得する。
シーケンスQ25に於いて、振分装置20の信号振分部21は、当該信号の振分先である信号処理装置(旧)30Aの信号処理部31に、当該信号を転送する。
In sequence Q24, the
In sequence Q25, the
シーケンスQ26に於いて、信号処理装置(旧)30Aの信号処理部31は、信号処理装置(旧)30Aのデータ保管部32に、当該信号の状態情報を問い合わせる。
In sequence Q26, the
シーケンスQ27に於いて、信号処理装置(旧)30Aの信号処理部31は、信号処理装置(旧)30Aのデータ保管部32から、当該信号の状態情報を取得する。
In sequence Q27, the
シーケンスQ28に於いて、信号処理装置(旧)30Aの信号処理部31は、当該信号と当該信号の状態情報とに基づいて、当該旧関連リクエストの信号処理を行う。
In sequence Q28, the
《新関連リクエストの信号処理》
シーケンスQ30に於いて、クライアント2からロードバランサ10に、新関連リクエストが送信されると、新関連リクエストの信号処理のシーケンスが開始する。
シーケンスQ31に於いて、ロードバランサ10は、いずれかの振分装置20の信号振分部21に、当該信号の内容に依らない信号の振り分けを行う。
<< Signal processing of new related requests >>
When a new related request is transmitted from the
In sequence Q31, the
シーケンスQ32に於いて、振分装置20の信号振分部21は、当該信号のSessionIDに付与されたバージョン番号を確認する。ここで、バージョン番号は「新」である。
シーケンスQ33〜Q38の処理は、前記したシーケンスQ13〜Q18の処理と同様である。
In sequence Q32, the
The processing of sequences Q33 to Q38 is the same as the processing of sequences Q13 to Q18 described above.
図5(a)〜(c)は、第1の実施形態に於ける状態情報テーブルを示す図である。
信号振分部21は、振分け先を決定すると、その信号を信号処理装置30に対して転送する。信号処理装置30の信号処理部31は、信号を受け取ると、データ保管部32上の状態情報を生成し、参照し、解放しながら信号処理を行う。なお、データ保管部32は、状態情報テーブルを管理し、SessionIDをキー情報として必要な状態情報を取得できる機能を有する。状態情報テーブルは、検索のキー(SessionID)および状態情報の組合せのレコードを格納している。
FIGS. 5A to 5C are diagrams showing a state information table in the first embodiment.
When determining the distribution destination, the
図5(a)に示すデータ保管部32の状態情報テーブルは、「abcde1234」、「fghij5678」、「klmno9012」をキーとする3つのレコードを格納している。
「abcde1234」キーから取得可能な「バリュー」である状態情報は、[Obj_1]である。「fghij5678」キーから取得可能な「バリュー」である状態情報は、[Obj_2]である。「klmno9012」キーから取得可能な「バリュー」である状態情報は、[Obj_3]である。
The state information table of the
The state information that is “value” that can be acquired from the “abcde1234” key is [Obj_1]. The state information that is “value” that can be acquired from the “fghij5678” key is [Obj_2]. The status information that is “value” that can be acquired from the “klmn9012” key is [Obj — 3].
図5(b)は、新たな信号が到着したときのデータ保管部32の状態情報テーブルを示す図である。
当該信号のSessionIDが「xyz123」に基づいて内部状態[Obj_4]が生成されたならば、新たにレコードが追加される。
FIG. 5B is a diagram illustrating a state information table of the
If the internal state [Obj — 4] is generated based on the SessionID of the signal based on “xyz123”, a new record is added.
図5(c)は、SessionIDが「fghij5678」の信号がセッションを終了したときのデータ保管部32の状態情報テーブルを示す図である。
このとき、内部状態[Obj_2]が解消されるので、図5(b)に示す状態情報テーブルから、SessionIDが「fghij5678」のレコードが削除された状態となる。
FIG. 5C is a diagram showing a state information table of the
At this time, since the internal state [Obj_2] is canceled, the record having the session ID “fghij5678” is deleted from the state information table shown in FIG.
課題でも述べたように、信号処理装置(旧)30Aに、一つでも状態情報が解消されずに存在し、その状態情報を必要とする信号が到着し続ける限り、信号処理装置(旧)30Aと信号処理装置(新)30Bとの併存状態を終了し、ソフトウェアアップデートを完了することができない。
本実施形態のクラスタシステム1は、ある時点で全ての信号を信号処理装置(新)30B側に振分け、信号処理装置(新)30Bへの信号到着契機で、信号処理装置(旧)30Aに残存する信号処理に必要な状態情報を信号処理装置(新)30Bへ移行する機能を有することを特徴とする。
本実施形態のクラスタシステム1に於いては、ある時点で信号振分部21は、信号中に含まれたバージョン番号に依らず、全信号について振分先決定ロジック(新)23Bを用いて信号処理装置(新)30Bに振り分ける。
As described in the problem, the signal processing device (old) 30A remains in the signal processing device (old) 30A as long as the state information is present without being resolved and a signal requiring the state information continues to arrive. And the signal processing apparatus (new) 30B are terminated, and the software update cannot be completed.
The
In the
図6は、第1の実施形態に於ける信号処理装置(新)の信号処理を示すフローチャートである。
第1の実施形態のクラスタシステム1に於いて、前記振分け先の変更後に後続信号(新規リクエスト以外の信号)が、信号処理装置(新)30Bに到着すると、当該信号処理が開始する。
ステップS20に於いて、信号処理装置(新)30Bの信号処理部31は、必要なデータ(状態情報)が存在するか否かを判断する。信号処理部31は、当該条件が成立したならば(Yes)、ステップS23の処理を行い、当該条件が成立しなかったならば(No)、ステップS21の処理を行う。
ステップS21に於いて、信号処理装置(新)30Bの信号処理部31は、バージョン番号が新バージョンであるか否かを判断する。信号処理部31は、当該条件が成立したならば(Yes)、ステップS24の処理を行い、当該条件が成立しなかったならば(No)、ステップS22の処理を行う。
FIG. 6 is a flowchart showing signal processing of the signal processing apparatus (new) in the first embodiment.
In the
In step S20, the
In step S21, the
ステップS22に於いて、信号処理装置(新)30Bの信号処理部31は、取得判断部37を介して、信号処理装置(旧)30Aに、状態情報の取得を要求する。
ステップS23に於いて、信号処理装置(新)30Bの信号処理部31は、当該信号と、状態情報とに基づいて、信号処理を実施し、図6の処理を終了する。
ステップS23に於いて、信号処理装置(新)30Bの信号処理部31は、不正なリクエストとして、振分装置20にエラーを応答し、図6の処理を終了する。
In step S22, the
In step S23, the
In step S23, the
図7は、第1の実施形態に於ける振分先変更後の信号処理を示すシーケンス図である。 FIG. 7 is a sequence diagram showing signal processing after changing the distribution destination in the first embodiment.
(未移行の旧関連リクエスト)
シーケンスQ40,Q41の処理は、図4に示すシーケンスQ10,Q11の処理と同様である。シーケンスQ42〜Q44の処理は、図4に示すシーケンスQ13〜Q15の処理と同様である。すなわち、シーケンスQ40〜Q44の処理は、シーケンスQ12に示すセッションID生成を行わない以外は、シーケンスQ10〜Q15の処理と同様である。
シーケンスQ45に於いて、後続信号が到着すると、信号処理装置(新)30Bの信号処理部31は、当該信号中のSessionIDをキー情報として、自身のデータ保管部32に状態情報を要求する。
シーケンスQ46に於いて、信号処理装置(新)30Bの信号処理部31は、自身のデータ保管部32から、状態情報が存在しない旨の応答を受信する。
(Old related request not yet migrated)
The processes of sequences Q40 and Q41 are the same as the processes of sequences Q10 and Q11 shown in FIG. Processing of sequences Q42 to Q44 is the same as the processing of sequences Q13 to Q15 shown in FIG. That is, the processing of sequences Q40 to Q44 is the same as the processing of sequences Q10 to Q15 except that the session ID generation shown in sequence Q12 is not performed.
In sequence Q45, when a subsequent signal arrives, the
In sequence Q <b> 46, the
シーケンスQ47に於いて、信号処理装置(新)30Bの信号処理部31は、取得判断部37に、当該信号を通知する。
シーケンスQ48に於いて、信号処理装置(新)30Bの取得判断部37は、当該信号のバージョン番号を確認する。ここで、当該信号のバージョン番号は「旧」なので、動作を継続する。なお、バージョン番号が旧でなかった場合は、不正なリクエストが到着したと判断し、エラー応答処理などを行う。
In sequence Q47, the
In sequence Q48, the
シーケンスQ49に於いて、信号処理装置(新)30Bの取得判断部37は、当該信号中のSessionIDであるキー情報を、振分装置20に送信する。
シーケンスQ50に於いて、振分装置20の旧保管先取得IF24は、振分先決定ロジック(旧)23Aに、当該キー情報に係る状態情報の保管先情報を要求する。
In sequence Q49, the
In sequence Q50, the old storage location acquisition IF 24 of the
シーケンスQ51に於いて、振分装置20の旧保管先取得IF24は、振分先決定ロジック(旧)23Aから、当該キー情報に係る状態情報の保管先情報を取得する。
シーケンスQ52に於いて、振分装置20の旧保管先取得IF24は、信号処理装置(新)30Bの取得判断部37に、当該キー情報に係る状態情報の保管先情報を通知する。
In sequence Q51, the old storage location acquisition IF 24 of the
In sequence Q52, the old storage location acquisition IF 24 of the
シーケンスQ53に於いて、信号処理装置(新)30Bの取得判断部37は、当該保管先情報で示される信号処理装置(旧)30Aのデータ取得IF36に、当該キー情報を送信する。
シーケンスQ54に於いて、信号処理装置(旧)30Aのデータ取得IF36は、当該キー情報に基づいて、データ保管部32に当該状態情報を要求する。
シーケンスQ55に於いて、信号処理装置(旧)30Aのデータ取得IF36は、データ保管部32の状態情報テーブルから、当該キー情報に係る状態情報を取得し、かつ、当該キー情報に係るエントリーを削除する。
In sequence Q53, the
In sequence Q54, the data acquisition IF 36 of the signal processing device (old) 30A requests the status information from the
In sequence Q55, the data acquisition IF 36 of the signal processing device (old) 30A acquires the status information related to the key information from the status information table of the
シーケンスQ56に於いて、信号処理装置(旧)30Aのデータ取得IF36は、当該キー情報に係る状態情報を、信号処理装置(新)30Bの取得判断部37に送信する。
シーケンスQ57に於いて、信号処理装置(新)30Bの取得判断部37は、当該キー情報に係る状態情報を、データ変換部35に送信する。
In sequence Q56, the data acquisition IF 36 of the signal processing device (old) 30A transmits the state information related to the key information to the
In sequence Q57, the
シーケンスQ58に於いて、信号処理装置(新)30Bのデータ変換部35は、当該状態情報を、必要に応じて新バージョンの処理に合わせて変換する。例えば、当該状態情報が有する所定値が、信号処理装置(旧)30Aでint型であり、信号処理装置(新)30Bではlong型に変更されていた場合を考える。このとき、データ変換部35は、当該状態情報が有する所定値を、int型からlong型に変換する処理を行う。
In the sequence Q58, the
シーケンスQ59に於いて、信号処理装置(新)30Bのデータ変換部35は、信号処理装置(新)30Bのデータ保管部32に、当該状態情報を保管する。
シーケンスQ60に於いて、信号処理装置(新)30Bの信号処理部31は、データ保管部32に、当該信号の状態情報を要求する。
In sequence Q59, the
In sequence Q60, the
シーケンスQ61に於いて、信号処理装置(新)30Bの信号処理部31は、自身のデータ保管部32から、当該信号の状態情報を取得する。
シーケンスQ62に於いて、信号処理装置(新)30Bの信号処理部31は、当該信号と当該信号の状態情報とに基づいて、当該リクエストの信号処理を行う。
In sequence Q61, the
In sequence Q62, the
(移行済の旧関連リクエスト)
シーケンスQ70〜Q75の処理は、前記したシーケンスQ40〜Q45の処理と同様である。
シーケンスQ76に於いて、信号処理装置(新)30Bの信号処理部31は、自身のデータ保管部32から、状態情報を取得する。
シーケンスQ77に於いて、信号処理装置(新)30Bの信号処理部31は、当該信号と当該信号の状態情報とに基づいて、当該リクエストの信号処理を行う。
(Migrated old related requests)
Processing of sequences Q70 to Q75 is the same as the processing of sequences Q40 to Q45 described above.
In sequence Q76, the
In sequence Q77, the
信号処理装置(旧)30Aは、シーケンスQ40〜Q62の処理によって、状態情報テーブルのエントリーが全て存在しなくなった場合、全状態情報が移行されたと判断し、全ての信号処理装置(新)30Bに対して自身の有する状態情報がなくなったことを通知する。信号処理装置(新)30Bは、全ての信号処理装置(旧)30Aから、当該通知を受け取ると、状態情報がデータ保管部32に存在しなかった際の取得判断部37への通知を取りやめる。すなわち、以降は全て不正リクエストと判断してエラー応答を返す。これにより、第1の実施形態のクラスタシステム1に於けるソフトウェアのアップデート処理は完了する。
第1の実施形態のクラスタシステム1は、一定時間毎にリフレッシュ信号が到着しないと、通話が切断されたと判断して状態情報を解消するように構成されている。これにより、クラスタシステム1は、一定時間で、信号処理装置(旧)30Aから信号処理装置(新)30Bへの状態移行を完了することができる。
The signal processing device (old) 30A determines that all the state information has been transferred when all the entries in the state information table do not exist by the processing of the sequences Q40 to Q62, and sends it to all the signal processing devices (new) 30B. Informs the user that the status information that the user has lost. When the signal processing device (new) 30B receives the notification from all the signal processing devices (old) 30A, the signal processing device (new) 30B cancels the notification to the
The
第1の実施形態のクラスタシステム1(図1)は、信号処理装置(新)30Bに信号が到着したことを契機として、当該信号に係る状態情報を信号処理装置(旧)30Aから信号処理装置(新)30Bへと移行した。全ての状態情報について、関連する信号が一定時間おきに到着することを前提とすると、第1の実施形態のクラスタシステム1(図1)は、一定時間で全ての状態情報が、信号処理装置(旧)30Aから信号処理装置(新)30Bへと移行される。 In the cluster system 1 (FIG. 1) of the first embodiment, when a signal arrives at the signal processing device (new) 30B, the state information related to the signal is transferred from the signal processing device (old) 30A to the signal processing device. (New) Moved to 30B. Assuming that the related signals arrive at regular intervals for all status information, the cluster system 1 (FIG. 1) of the first embodiment is configured so that all status information is transmitted to the signal processing device ( Transition from the old 30A to the signal processor (new) 30B.
(第1の実施形態の効果)
以上説明した第1の実施形態では、次の(A),(B)のような効果がある。
(Effects of the first embodiment)
The first embodiment described above has the following effects (A) and (B).
(A) クラスタシステム1は、信号処理装置(旧)30Aの全ての状態情報を、一定時間で信号処理装置(新)30Bに移行完了することができる。
(A) The
(B) クラスタシステム1は、信号処理装置(旧)30Aから信号処理装置(新)30Bへの状態移行処理の実施中であっても、信号処理装置30へ当該信号を振り分けて信号処理を行うことができる。
(B) The
(第2の実施形態の構成)
第1の実施形態のクラスタシステム1(図1)は、一定時間毎にリフレッシュ信号(Re−INVITE信号など)が到着しないと、通話が切断されたと判断して、状態情報を解消する。しかし、このようなリフレッシュ信号が発生しないシステムに於いては、振り分け先の変更後、全状態情報について関連する信号が到着するまで、状態情報は、信号処理装置(旧)30Aから信号処理装置(新)30Bに移行しない。第2の実施形態は、能動的に状態移行処理を行うことによって、一定時間後に移行完了可能とするものである。
(Configuration of Second Embodiment)
If the refresh signal (Re-INVITE signal or the like) does not arrive at regular intervals, the cluster system 1 (FIG. 1) of the first embodiment determines that the call has been disconnected and cancels the status information. However, in such a system in which the refresh signal is not generated, the status information is transferred from the signal processing device (old) 30A to the signal processing device (old) until a signal related to all the status information arrives after the distribution destination is changed. New) Do not move to 30B. In the second embodiment, the transition can be completed after a predetermined time by actively performing the state transition process.
図8は、第2の実施形態に於けるクラスタシステムを示す概略の構成図である。
第2の実施形態のクラスタシステム1Aは、第1の実施形態の振分装置20−1〜20−p(図1)とは異なる振分装置20C−1〜20C−pと、第1の実施形態の信号処理装置(旧)30A−1〜30A−n(図1)とは異なる信号処理装置(旧)30C−1〜30C−nとを備えている。それ以外の構成は、第1の実施形態のクラスタシステム1と同様である。以下、振分装置20C−1〜20C−pを特に区別しないときには、単に振分装置20Cという。信号処理装置(旧)30C−1〜30C−nを特に区別しないときには、単に信号処理装置(旧)30Cという。
FIG. 8 is a schematic configuration diagram showing a cluster system in the second embodiment.
The
本実施形態の振分装置20Cは、第1の実施形態の振分装置20(図1)と同様の構成に加えて更に、新保管先取得IF25を備えている。
新保管先取得IF25は、キー情報であるSessionIDを入力とし、振分先決定ロジック(新)23Bによって、当該SessionIDに関連した状態情報が、どの信号処理装置(新)30Bに存在するかを通知するものである。
The
The new storage location acquisition IF 25 receives the SessionID that is the key information and notifies the signal processing device (new) 30B that the state information related to the SessionID exists by the distribution destination determination logic (new) 23B. To do.
第2の実施形態の信号処理装置(旧)30Cは、第1の実施形態の信号処理装置(旧)30A(図1)と同様の構成に加えて更に、データ移行部38を備えている。
データ移行部38は、バックグラウンドで、クライアント2からの信号処理とは非同期かつ並行に、信号処理装置(旧)30Cから信号処理装置(新)30Bへと状態情報を移行するものである。
クラスタシステム1Aは、第1の実施形態の移行処理に加えて、非同期移行を併用することにより、信号の到着頻度に依らず、一定時間で全状態情報を移行させることが可能である。
The signal processing device (old) 30C of the second embodiment includes a
The
The
(第2の実施形態の動作)
図9は、第2の実施形態に於ける状態移行処理を示すシーケンス図である。
当該状態移行処理は、クライアント2からの信号処理とは非同期かつ並行に動作する。
全信号を信号処理装置(新)30Bに振り分けるよう変更された後、外部から状態移行処理の開始契機が与えられると、信号処理装置(旧)30Cのデータ移行部38は、状態移行処理を開始する。
(Operation of Second Embodiment)
FIG. 9 is a sequence diagram showing a state transition process in the second embodiment.
The state transition processing operates asynchronously and in parallel with the signal processing from the
After a change is made so that all signals are distributed to the signal processing device (new) 30B, when the start timing of the state transition processing is given from the outside, the
状態移行処理を開始すると、シーケンスQ80に於いて、信号処理装置(旧)30Cのデータ移行部38は、自身のデータ保管部32に、いずれかの状態情報を要求する。
シーケンスQ81に於いて、信号処理装置(旧)30Cのデータ移行部38は、自身のデータ保管部32から、状態情報とキー情報との組合せを取得する。
シーケンスQ82に於いて、信号処理装置(旧)30Cのデータ移行部38は、振分装置20Cの新保管先取得IF25に、キー情報を送信する。
シーケンスQ83に於いて、振分装置20Cの新保管先取得IF25は、振分先決定ロジック(新)23Bに、保管先情報を要求する。
When the state transition processing is started, in sequence Q80, the
In sequence Q81, the
In sequence Q82, the
In sequence Q83, the new storage location acquisition IF 25 of the
シーケンスQ84に於いて、振分装置20Cの新保管先取得IF25は、振分先決定ロジック(新)23Bから、保管先情報を取得する。
シーケンスQ85に於いて、振分装置20Cの新保管先取得IF25は、信号処理装置(旧)30Cのデータ移行部38に、保管先情報を通知する。
シーケンスQ86に於いて、信号処理装置(旧)30Cのデータ移行部38は、信号処理装置(新)30Bのデータ変換部35に、キー情報と状態情報とを転送する。
In sequence Q84, the new storage location acquisition IF 25 of the
In sequence Q85, the new storage location acquisition IF 25 of the
In sequence Q86, the
シーケンスQ87に於いて、信号処理装置(新)30Bのデータ変換部35は、当該状態情報を、必要に応じて新バージョンの処理に合わせて変換する。
シーケンスQ88に於いて、信号処理装置(新)30Bのデータ変換部35は、信号処理装置(新)30Bのデータ保管部32に、当該キー情報と当該状態情報との組合せを保管する。以下、状態情報テーブルにエントリーが存在する限り、データ移行部38は、シーケンスQ80〜Q88の状態移行処理を繰り返す。
第2の実施形態に於ける信号処理は、第1の実施形態に於ける信号処理と同様である。
In sequence Q87, the
In sequence Q88, the
The signal processing in the second embodiment is the same as the signal processing in the first embodiment.
(第2の実施形態の効果)
以上説明した第2の実施形態では、次の(C)のような効果がある。
(Effect of 2nd Embodiment)
The second embodiment described above has the following effect (C).
(C) クラスタシステム1Bは、信号の到着頻度に依らず、一定時間で全状態情報の移行が可能である。
(C) The
(変形例)
本発明は、上記実施形態に限定されることなく、本発明の趣旨を逸脱しない範囲で、変更実施が可能である。この利用形態や変形例としては、例えば、次の(a)〜(c)のようなものがある。
(Modification)
The present invention is not limited to the above embodiment, and can be modified without departing from the spirit of the present invention. For example, the following forms (a) to (c) are available as usage forms and modifications.
(a) 第1の実施形態および第2の実施形態は、IP電話の呼制御に係るクラスタシステムである。しかし、これに限られず、クラスタシステムは、クライアント端末からの一連の信号を、一連の内部状態に基づいて処理するものであればよく、例えば、動画や音楽のストリーミング再生サービス、データ検索サービス、ゲームサービス、または、ソーシャルネットワークサービスなどであってもよい。 (A) The first embodiment and the second embodiment are cluster systems related to IP telephone call control. However, the present invention is not limited to this, and the cluster system only needs to process a series of signals from a client terminal based on a series of internal states. For example, a video or music streaming playback service, a data search service, a game It may be a service or a social network service.
(b) 第1の実施形態および第2の実施形態の上部ネットワーク100aと下部ネットワーク100bとは、独立した2つのネットワークとして構成されている。しかし、これに限られず、上部ネットワーク100aおよび下部ネットワーク100bは、各装置が信号を送受信可能に接続されている単一のネットワークで構成してもよい。
(B) The
(c) 第2の実施形態に於いて、状態移行処理の開始契機は、外部からデータ移行部38に与えるように構成されている。しかし、これに限られず、状態移行処理の開始契機は、振分装置20が振分先を変更したタイミングと同時でもよく、振分け先を変更した後の一定時間後でもよく、更に、データ保管部32中の状態情報が一定割合以上移行された時点でもよい。
(C) In the second embodiment, the start of state transition processing is configured to be given to the
1,1A,1B クラスタシステム
2 クライアント
10 ロードバランサ
20,20A,20C 振分装置
21 信号振分部
23 振分先決定ロジック
23A 振分先決定ロジック(旧) (旧版振分先決定手段)
23B 振分先決定ロジック(新) (新版振分先決定手段)
24 旧保管先取得IF (旧保管先取得手段)
25 新保管先取得IF (新保管先取得手段)
30 信号処理装置
30A,30C 信号処理装置(旧) (旧版信号処理装置)
30B 信号処理装置(新) (新版信号処理装置)
31 信号処理部
32 データ保管部
33 転送判断部
35 データ変換部
36 データ取得IF (データ取得手段)
37 取得判断部
38 データ移行部
100a 上部ネットワーク
100b 下部ネットワーク
1, 1A,
23B Sorting destination decision logic (new) (New edition sorting destination decision means)
24 Old storage location acquisition IF (Old storage location acquisition method)
25 New storage location acquisition IF (New storage location acquisition method)
30
30B Signal processor (new) (New signal processor)
31
37
Claims (4)
前記信号を、当該信号のセッションに係る状態情報に基づいて処理する旧版信号処理装置および新版信号処理装置と、
を備えるクラスタシステムであって、
前記新版信号処理装置および前記旧版信号処理装置は、
前記振分装置が振り分けた前記信号のセッション情報と前記状態情報との組合せを保管するデータ保管部を備え、
前記振分装置は、
所定の時点より前には受信した前記信号のバージョン番号に基づいて、新版信号処理装置のいずれかに当該信号を送信するか、旧版信号処理装置のいずれかに当該信号を送信するかを選択すると共に、前記所定の時点以降には前記信号中に含まれたバージョン番号に依らずに前記新版信号処理装置のいずれかを選択し、選択した装置に当該信号を振り分ける信号振分部を備え、
前記振分装置が更に備える旧版振分先決定手段は、前記信号振分部が前記信号を旧版信号処理装置のいずれかに送信するように選択した際に、当該信号のセッション情報に基づき、当該信号を振り分ける旧版信号処理装置を決定し、
前記振分装置が更に備える新版振分先決定手段は、前記信号振分部が前記信号を新版信号処理装置のいずれかに送信するように選択した際に、当該信号のセッション情報に基づき、当該信号を振り分ける新版信号処理装置を決定し、
前記新版信号処理装置が更に備える信号処理部は、前記振分装置が振り分けた前記信号中のセッション情報に基づき、当該新版信号処理装置の前記データ保管部に前記信号の状態情報を要求し、要求した当該信号の状態情報が前記データ保管部に存在しなかったならば、当該新版信号処理装置が更に備える取得判断部に通知し、
前記取得判断部は、前記振分装置に前記信号のセッション情報を送信し、
前記振分装置が更に備える旧保管先取得手段は、前記信号振分部が前記信号を振り分けた前記新版信号処理装置から前記信号のセッション情報を受信した際に、当該信号のセッション情報に基づいて当該信号の状態情報の保管先情報を決定して当該新版信号処理装置に通知し、
前記取得判断部は、前記振分装置から受信した前記保管先情報により示される前記旧版信号処理装置に前記信号のセッション情報を送信し、
前記旧版信号処理装置が更に備えるデータ取得手段は、前記新版信号処理装置から受信した前記信号のセッション情報に基づき、当該旧版信号処理装置の前記データ保管部に保管されている前記信号の状態情報を当該新版信号処理装置に送信し、
前記取得判断部は、前記旧版信号処理装置から転送された前記信号に係る状態情報とセッション情報との組合せを当該新版信号処理装置に於けるセッション情報と状態情報とに変換して前記データ保管部に保管する、
ことを特徴とするクラスタシステム。 A distribution device that distributes the received signal for each session;
An old version signal processing apparatus and a new version signal processing apparatus for processing the signal based on state information relating to a session of the signal;
A cluster system comprising:
The new version signal processing device and the old version signal processing device are:
A data storage unit for storing a combination of the session information and the state information of the signal distributed by the distribution device;
The sorting device is
Before the predetermined time based on the version number of the signal received, to send the signal to any one of the new plate signal processing apparatus selects whether to transmit the signal to one of the old version signal processor In addition, after the predetermined time point, without any version number included in the signal, select any of the new version signal processing device, comprising a signal distribution unit that distributes the signal to the selected device,
When the signal distribution unit selects the signal to be transmitted to any one of the old version signal processing devices, the old version distribution destination determination unit further provided in the distribution device, based on the session information of the signal, Determine the old version signal processing device that distributes the signal,
When the signal distribution unit selects the signal to be transmitted to one of the new version signal processing devices, the new version distribution destination determination means further provided in the distribution device, based on the session information of the signal, Decide on a new signal processing device that distributes signals,
The signal processing unit further provided in the new version signal processing device requests the signal status information from the data storage unit of the new version signal processing device based on the session information in the signal distributed by the distribution device, and requests If the signal status information does not exist in the data storage unit, notify the acquisition determination unit further provided in the new version signal processing device,
The acquisition determination unit transmits session information of the signal to the distribution device,
The old storage location acquisition means further provided in the distribution device is based on the session information of the signal when the signal distribution unit receives the session information of the signal from the new version signal processing device to which the signal is distributed. Determine the storage location information of the status information of the signal and notify the new version signal processing device,
The acquisition determination unit transmits session information of the signal to the old version signal processing device indicated by the storage location information received from the sorting device,
The data acquisition means further included in the old version signal processing device is configured to obtain status information of the signal stored in the data storage unit of the old version signal processing device based on session information of the signal received from the new version signal processing device. Send it to the new edition signal processor,
The acquisition determination unit converts the combination of the state information and session information related to the signal transferred from the old version signal processing device into session information and state information in the new version signal processing device, and converts the data storage unit Keep it in the
A cluster system characterized by that.
前記振分装置が前記所定の時点以降に振り分けた前記信号のバージョン番号が旧版であったならば、前記振分装置に当該信号のセッション情報を送信して、前記振分装置の前記旧版振分先決定手段により当該信号の状態情報を保管する前記旧版信号処理装置を示す保管先情報を決定させて取得し、取得した保管先情報が示す当該旧版信号処理装置から、前記信号の状態情報を取得する、
ことを特徴とする請求項1に記載のクラスタシステム。 The acquisition judgment unit of the new version signal processing device is
If the version number of the signal distributed after the predetermined time by the distribution device is an old version, the session information of the signal is transmitted to the distribution device, and the old version distribution of the distribution device is transmitted. The destination determining means determines and acquires storage destination information indicating the old version signal processing device that stores the signal state information, and acquires the signal state information from the old version signal processing device indicated by the acquired storage destination information. To
The cluster system according to claim 1.
前記データ保管部に保管した前記信号のセッション情報に基づき、前記信号の処理とは非同期かつ並行に前記振分装置から当該信号のセッション情報と状態情報との組合せの新たな保管先である新版信号処理装置を示す保管先情報を取得し、取得した保管先情報が示す当該新版信号処理装置に当該信号のセッション情報と状態情報との組合せを転送するデータ移行部を備える、
ことを特徴とする請求項1に記載のクラスタシステム。 The old version signal processing device further includes:
Based on session information of the signal stored in the data storage unit, a new version signal that is a new storage destination of a combination of the session information and state information of the signal from the distribution device asynchronously and in parallel with the processing of the signal A storage unit information indicating a processing device is acquired, and a data migration unit that transfers a combination of session information and state information of the signal to the new version signal processing device indicated by the acquired storage location information is provided.
The cluster system according to claim 1.
前記旧版信号処理装置から前記データ保管部に保管した各前記信号のセッション情報を受信した際に、前記新版振分先決定手段が当該セッション情報に基づいて決定した新版信号処理装置を示す保管先情報を前記旧版信号処理装置に応答する新保管先取得手段を備える、
ことを特徴とする請求項3に記載のクラスタシステム。 The sorting device further includes
Storage destination information indicating the new version signal processing device determined by the new version distribution destination determination means based on the session information when receiving the session information of each signal stored in the data storage unit from the old version signal processing device A new storage location acquisition means for responding to the old version signal processing device,
The cluster system according to claim 3.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012045768A JP5750072B2 (en) | 2012-03-01 | 2012-03-01 | Cluster system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012045768A JP5750072B2 (en) | 2012-03-01 | 2012-03-01 | Cluster system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013182413A JP2013182413A (en) | 2013-09-12 |
JP5750072B2 true JP5750072B2 (en) | 2015-07-15 |
Family
ID=49273017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012045768A Expired - Fee Related JP5750072B2 (en) | 2012-03-01 | 2012-03-01 | Cluster system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5750072B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017004120A (en) | 2015-06-05 | 2017-01-05 | キヤノン株式会社 | System, server system, method, and program |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002183106A (en) * | 2000-12-11 | 2002-06-28 | Hitachi Ltd | System and method for service switching |
WO2006040810A1 (en) * | 2004-10-12 | 2006-04-20 | Fujitsu Limited | Software update program, software update device, and software update method |
-
2012
- 2012-03-01 JP JP2012045768A patent/JP5750072B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013182413A (en) | 2013-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8972519B2 (en) | Optimization of multimedia service over an IMS network | |
CN102281190B (en) | Networking method for load balancing apparatus, server and client access method | |
WO2015019224A1 (en) | Dynamic edge server allocation | |
US20150358401A1 (en) | Load balancing with layered edge servers | |
US20130067484A1 (en) | Information processing apparatus, information processing method, recording medium and information processing system | |
US9075660B2 (en) | Apparatus and method for providing service availability to a user via selection of data centers for the user | |
US9390156B2 (en) | Distributed directory environment using clustered LDAP servers | |
US8825877B2 (en) | Session persistence | |
JP2013090072A (en) | Service provision system | |
JP5662956B2 (en) | Cluster system | |
JP2011028547A (en) | Virtual machine starting terminal and virtual machine starting program | |
JP2012242994A (en) | Transaction processing system, transaction processing method and transaction processing program | |
US20160226963A1 (en) | Load balancing using predictable state partitioning | |
JP2007219637A (en) | Load balancing system and program therefor | |
JP5750072B2 (en) | Cluster system | |
CN107113332A (en) | The server side prediction of media client stable state | |
US10681398B1 (en) | Video encoding based on viewer feedback | |
WO2023207189A1 (en) | Load balancing method and system, computer storage medium, and electronic device | |
US20190097933A1 (en) | Intelligent load shedding of traffic based on current load state of target capacity | |
US11652746B1 (en) | Resilient consistent hashing for a distributed cache | |
US10659330B2 (en) | Channel management in scalable messaging system | |
JP5839604B2 (en) | APL-GW-FE | |
JP2002342193A (en) | Method, device and program for selecting data transfer destination server and storage medium with data transfer destination server selection program stored therein | |
KR101310449B1 (en) | System and method for distributing sip message | |
JP6405326B2 (en) | Distributed call control system and distributed call control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140307 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140502 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20140528 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141219 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150317 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150420 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20150512 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150515 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5750072 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |