JP2008059060A - サービス連携サーバ及び負荷分散方法 - Google Patents
サービス連携サーバ及び負荷分散方法 Download PDFInfo
- Publication number
- JP2008059060A JP2008059060A JP2006232299A JP2006232299A JP2008059060A JP 2008059060 A JP2008059060 A JP 2008059060A JP 2006232299 A JP2006232299 A JP 2006232299A JP 2006232299 A JP2006232299 A JP 2006232299A JP 2008059060 A JP2008059060 A JP 2008059060A
- Authority
- JP
- Japan
- Prior art keywords
- server
- request
- servers
- identifier
- protocols
- 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.)
- Pending
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
【課題】高いスケーラビリティを実現し、また、急激な需要増に柔軟に対応可能とする。
【解決手段】ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40において、振り分け判定部は、信号を受信したときに、信号にセッション識別子が含まれているか判別し、信号にセッション識別子が含まれている場合には、サーバ20−1〜20−4に対する信号であるか否かを判別する。そして、サーバ20−1〜20−4に対する信号である場合には、セッション識別子から、セッション管理部にて埋め込んだIPアドレスを抽出し、そのIPアドレスに対して信号送信を行う。
【選択図】図1
【解決手段】ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40において、振り分け判定部は、信号を受信したときに、信号にセッション識別子が含まれているか判別し、信号にセッション識別子が含まれている場合には、サーバ20−1〜20−4に対する信号であるか否かを判別する。そして、サーバ20−1〜20−4に対する信号である場合には、セッション識別子から、セッション管理部にて埋め込んだIPアドレスを抽出し、そのIPアドレスに対して信号送信を行う。
【選択図】図1
Description
本発明は、ウェブサービスとテレコムサービスとを連携させるための連携サーバにおけるサービス連携サーバ及び負荷分散方法に関する。
ウェブサービスや、VoIP(Voice over Internet Protocol)サービスなどにおいて、高スケーラビリティを実現する場合、ロードバランサ(負荷分散装置)による負荷分散を行うのが一般的である(例えば、非特許文献1参照)。
HTTP(Hyper Text Transfer Protocol)や、SIP(Session Initiation Protocol)などにおいて、複数のリクエストにおいて参照する必要がある共通のセッションデータが存在するサーバに対してロードバランサを適用する場合、ロードバランサにて、リクエストをセッションデータが存在するサーバに対して正しく振り分ける必要がある。
セッションを考慮したロードバランス方式としては、HTTPにおけるCookieIDや、SIPにおけるCall−ID等のセッション識別子を元にロードバランサにて負荷分散を行うことが一般的である。しかし、両者が連携するシステムにおいて、双方のセッションを同時に意識した振り分け方式は、検討されていない。
Tony Bourke著、鍋島公章 監訳、サーバ負荷分散技術、オライリー・ジャパン、2001年、p185−188
Tony Bourke著、鍋島公章 監訳、サーバ負荷分散技術、オライリー・ジャパン、2001年、p185−188
ところで、ウェブ系サービスとテレコム系サービスとを連携させる場合、複雑なテレコム系プロトコルをアプリケーションから扱いやすいAPIに変換するサービス連携サーバの適用が有効である。サービス連携サーバは、HTTP等のウェブ系プロトコルと、H323やSIP等のテレコム系プロトコルの双方を同時に扱うシステムであり、双方のリクエストが1つのセッションデータを共有する場合がある。
一般的に、HTTPのセッション識別子とSIPのセッション識別子とは、各々、独立して設定されるため、そのようなシステムにおいて、ロードバランサによる負荷分散を実施する場合、既存方式であるセッション識別子による振り分け方式では、対応することができない。そのため、双方のプロトコルにおけるセッションを意識したロードバランス方式を実現する必要がある。
本発明は、このような事情を考慮してなされたものであり、その目的は、サービス連携サーバにおいて、高いスケーラビリティを実現することができ、また、急激な需要増に柔軟に対応することができるサービス連携サーバ及び負荷分散方法を提供することにある。
上述した課題を解決するために、本発明は、複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分けるサービス連携サーバであって、前記複数のプロトコルによるリクエストの初回発生時に、該リクエストのセッション識別子と、該リクエストに対応するサービスを提供するサーバのサーバ識別子とから、新たなセッション識別子を生成するセッション識別子生成手段と、前記リクエストの初回発生時以降に発生した前記複数のプロトコルによるリクエストが前記複数のサーバのいずれかに対するリクエストであるか否かを判別する判別手段と、前記判別手段により、前記リクエストが前記複数のサーバのいずれかに対するリクエストであると判別された場合、前記複数のプロトコルによるリクエストに含まれるセッション識別子からサーバ識別子を抽出する抽出手段と、前記抽出手段によって抽出されたサーバ識別子に基づいて、前記リクエストに対応するサービスを提供するサーバを特定するサーバ特定手段とを具備することを特徴とするサービス連携サーバである。
上述した課題を解決するために、本発明は、複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分けるサービス連携サーバであって、
前記複数のサーバによって提供される全てのサービスにアクセス可能なように、前記複数のサーバによって提供されるサービスデータを一元的に管理するサービスデータ管理手段を具備することを特徴とするサービス連携サーバである。
前記複数のサーバによって提供される全てのサービスにアクセス可能なように、前記複数のサーバによって提供されるサービスデータを一元的に管理するサービスデータ管理手段を具備することを特徴とするサービス連携サーバである。
上述した課題を解決するために、本発明は、複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分けるサービス連携サーバであって、前記リクエストに含まれるセッション識別子と前記複数のサーバのサーバ識別子とを対応付けて記憶する振り分け先管理記憶手段と、前記複数のプロトコルによるリクエストに含まれるセッション識別子に基づいて、前記振り分け先管理記憶手段から対応するサーバ識別子を取得するサーバ識別子取得手段と、前記サーバ識別子取得手段によって取得されたサーバ識別子に基づいて、前記リクエストに対応するサービスを提供するサーバを特定するサーバ特定手段とを具備することを特徴とするサービス連携サーバである。
本発明は、上記に記載の発明において、前記複数のプロトコルによるリクエストが前記複数のサーバのいずれかに対するリクエストであるか否かを判別する判別手段と、前記判別手段により、前記リクエストが前記複数のサーバのいずれかに対するリクエストでないと判別された場合、前記リクエストに含まれるセッション識別子と、リクエスト送信元のサーバ識別子とを対応付けて前記振り分け先管理記憶手段に登録する登録手段とを具備することを特徴とする。
本発明は、複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分ける負荷分散方法であって、前記複数のプロトコルによるリクエストの初回発生時に、該リクエストのセッション識別子と、該リクエストに対応するサービスを提供するサーバのサーバ識別子とから、新たなセッション識別子を生成し、前記リクエストの初回発生時以降に発生した前記複数のプロトコルによるリクエストが前記複数のサーバのいずれかに対するリクエストであるか否かを判別し、前記複数のサーバのいずれかに対するリクエストであると判別された場合、前記複数のプロトコルによるリクエストに含まれるセッション識別子からサーバ識別子を抽出し、抽出したサーバ識別子に基づいて、前記リクエストに対応するサービスを提供するサーバを特定することを特徴とする負荷分散方法である。
本発明は、複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分ける負荷分散方法であって、前記複数のサーバによって提供される全てのサービスにアクセス可能なように、前記複数のサーバによって提供されるサービスデータを一元的に管理することを特徴とする負荷分散方法である。
本発明は、複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分ける負荷分散方法であって、前記リクエストに含まれるセッション識別子と前記複数のサーバのサーバ識別子とを対応付けて記憶しておき、前記複数のプロトコルによるリクエストに含まれるセッション識別子に対応するサーバ識別子を取得し、取得したサーバ識別子に基づいて、前記リクエストに対応するサービスを提供するサーバを特定することを特徴とする負荷分散方法である。
この発明によれば、複数のプロトコルによるリクエストの初回発生時に、該リクエストのセッション識別子と、該リクエストに対応するサービスを提供するサーバのサーバ識別子とから、新たなセッション識別子を生成し、前記初回発生時以降に発生した前記複数のプロトコルによるリクエストが前記複数のサーバのいずれかに対するリクエストであるか否かを判別し、複数のサーバのいずれかに対するリクエストであると判別された場合、複数のプロトコルによるリクエストに含まれるセッション識別子からサーバ識別子を抽出し、抽出されたサーバ識別子に基づいて、リクエストに対応するサービスを提供するサーバを特定する。したがって、複数のプロトコルによるリクエストから、該リクエストに対応するサービスを提供するサーバを容易に特定することができるという利点が得られる。
また、本発明によれば、複数のサーバによって提供される全てのサービスにアクセス可能なように、複数のサーバによって提供されるサービスデータを一元的に管理する。したがって、サービスデータの管理位置を意識せずに振り分けることができるという利点が得られる。
また、本発明によれば、リクエストに含まれるセッション識別子と複数のサーバのサーバ識別子とを対応付けて記憶しておき、複数のプロトコルによるリクエストに含まれるセッション識別子に対応するサーバ識別子を取得し、取得されたサーバ識別子に基づいて、前記リクエストに対応するサービスを提供するサーバを特定する。したがって、セッション識別子を新たに生成することなく、複数のプロトコルによるリクエストから、該リクエストに対応するサービスを提供するサーバを容易に特定することができるという利点が得られる。
また、この発明によれば、複数のプロトコルによるリクエストが複数のサーバのいずれかに対するリクエストであるか否かを判別し、リクエストが複数のサーバのいずれかに対するリクエストでないと判別された場合、リクエストに含まれるセッション識別子と、リクエスト送信元のサーバ識別子とを対応付けて記憶する。したがって、リクエストに含まれるセッション識別子と複数のサーバのサーバ識別子との対応付けを容易に更新することができ、リクエストに対応するサービスを提供するサーバを常に最新の情報で容易に特定することができるという利点が得られる。
以下、本発明の一実施形態による負荷分散方式を、図面を参照して説明する。
A.第1実施形態
図1は、本発明の第1実施形態による負荷分散方式を適用した、HTTPプロトコルとSIPプロトコルとによるサービスが連携するサービス連携サーバの構成を示すブロック図である。図1において、ウェブ−テレコム連携サーバ10は、HTTP及びSIPの信号を処理するサーバであり、複数のサーバ20−1〜20−4、ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40を備えている。
図1は、本発明の第1実施形態による負荷分散方式を適用した、HTTPプロトコルとSIPプロトコルとによるサービスが連携するサービス連携サーバの構成を示すブロック図である。図1において、ウェブ−テレコム連携サーバ10は、HTTP及びSIPの信号を処理するサーバであり、複数のサーバ20−1〜20−4、ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40を備えている。
サーバ20−1〜20−4は、各々、リクエストに応じたサービスを提供する。ウェブ系プロトコルロードバランサ30は、HTTPを用いるインターネット45に接続され、テレコム系プロトコルロードバランサ40は、SIPを用いるテレコムネットワーク46に接続されている。ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40は、各々、上記クライアント50から発信されたHTTP、SIP双方のリクエストを、サービスデータが存在するサーバ20−1〜20−4のいずれかに振り分ける。
クライアント50は、HTTP、SIPによる双方のリクエストを、それぞれ、インターネット45、テレコムネットワーク46を介して、ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40に発信する。
次に、図2は、上記サーバ20−1〜20−4と、ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40との機能構成を示すブロック図である。図2において、サーバ20−1〜20−4は、各々、サービスデータ管理部60及びセッション管理部70を備えている。サービスデータ管理部60は、サーバにおけるサービス起動時にサービスデータを生成する。セッション管理部70は、サービスを起動したリクエストや、起動されたサービスが生成したセッションに対して、セッション識別子を発行する。以降のリクエストにおいては、上記セッション識別子を指定してサービスデータへのアクセスが行われる。
上記構成において、ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40は、セッション識別子が指定されているリクエストについては、そのセッションと関連したサービスデータが存在するサービスデータ管理部60を備えるサーバ20−i(i=1,2,3,4)に対してリクエスト信号を振り分ける必要がある。
そこで、本第1実施形態では、セッション管理部70は、セッション識別子を発行する際に、該セッション識別子と、そのセッションが生成されたサーバ20−i(i=1,2,3,4)のIPアドレスとから、新たなセッション識別子を生成するようになっている。なお、新たなセッション識別子の生成方法としては、セッション識別子にIPアドレスを連結して新たなセッション識別子としてもよいし、セッション識別子とIPアドレスとから、ハッシュ演算などにより、新たにセッション識別子を生成してもよい。ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40での振り分け時には、セッション識別子に埋め込まれたIPアドレスを抽出し、該IPアドレスに対応するサーバ20−iに対して信号送信を行うようにすればよい。
次に、図3は、本第1実施形態による負荷分散方式を適用したウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40の動作を説明するためのフローチャートである。ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40において、振り分け判定部80は、信号を受信したときに、信号にセッション識別子が含まれているか判別し(ステップS10)、信号にセッション識別子が含まれている場合には、サーバ20−1〜20−4に対する信号であるか否かを判別する(ステップS11)。そして、サーバ20−1〜20−4に対する信号である場合には、セッション識別子からIPアドレスを抽出し(ステップS12)、そのIPアドレスに対して信号送信を行う。
例えば、あるサービスにおいて、SIPによってクライアント間に新規のセッションを生成する場合、図4に示すように、SIPのセッション識別子として用いられるCall−IDにサーバ20−i(i=1,2,3,4)のIPアドレス等のサーバ識別子を連結し、その値を新たなCall−IDとして用いる。そして、テレコム系プロトコルロードバランサ40にてSIP信号を振り分ける際に、指定されているCall−IDから連結されたIPアドレスを取り出すことにより、振り分け先のサーバ20−iを判定する。
また、HTTPの場合にも、HTTPのセッション識別子にサーバ20−i(i=1,2,3,4)のIPアドレス等のサーバ識別子を連結して、新たなセッション識別子とすることで、HTTP信号を振り分ける際に、振り分け先のサーバ20−iを判定することが可能となる。
B.第2実施形態
次に、本発明の第2実施形態について説明する。本第2実施形態では、サービスデータ管理部60に対して、全てのサーバ20−1〜20−4からサービスデータへのアクセスを可能としている。
次に、本発明の第2実施形態について説明する。本第2実施形態では、サービスデータ管理部60に対して、全てのサーバ20−1〜20−4からサービスデータへのアクセスを可能としている。
図5は、本第2実施形態によるサーバ20−1〜20−4の構成を示すブロック図である。図5において、全てのサーバ20−1〜20−4は、全てのサービスデータにアクセス可能なように、サービスデータを一元的に管理するサービスデータ一元管理部61を備えている。なお、各サーバ20−1〜20−4にサービスデータ一元管理部61を備える以外に、全てのサーバ20−1〜20−4から参照可能な共通のデータベースを別途設けるようにしてもよい。
各サーバ20−1〜20−4に振り分けられたリクエストがサービスデータにアクセスする際には、サービスデータ管理部60にアクセスすることにより、処理を実施する。この場合、図2に示す振り分け先判定部80は、特に、セッション識別子を意識した振り分けなどを行う必要はなく、ラウンドロビン方式、重み付けラウンドロビン方式等の周知の振り分け方式を用いることが可能である。
これにより、ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40においてサービスデータの管理位置を意識せずに振り分けることが可能となる。
C.第3実施形態
次に、本発明の第3実施形態について説明する。本第3実施形態では、サービスデータ管理部60や、セッション管理部70において、特別な処理を行うことなく、リクエスト信号の振り分けを行うようになっている。
次に、本発明の第3実施形態について説明する。本第3実施形態では、サービスデータ管理部60や、セッション管理部70において、特別な処理を行うことなく、リクエスト信号の振り分けを行うようになっている。
図6は、本第3実施形態による負荷分散方式を適用したウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40の構成を示すブロック図である。図6において、ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40は、振り分け先管理テーブル81を備えている。該振り分け先管理テーブル81は、図7に示すように、セッション識別子S−ID1、S−ID2、S−ID3、…と、該セッション識別子に対応するサービスデータを提供するサーバ20−1〜20−4のIPアドレスIP1、IP2、IP3、…とを対応付けて記憶している。
振り分け先判定部80は、リクエスト信号を受信したときに、信号内にセッション識別子が存在した場合、それがサーバ20−i(i=1,2,3,4)に対する信号である場合には、振り分け先管理テーブル81からセッション識別子に対応した振り分け先サーバのIPアドレスを取得し、該IPアドレスのサーバ20−iに対して信号を送信する。また、振り分け先判定部80は、サーバ20−1〜20−4に対する信号でない場合、つまり、クライアント50に対する信号である場合には、振り分け先管理テーブル81にセッション識別子と信号送信元(サーバ20−i)のIPアドレスとを登録して送信先アドレスに信号を送信する。
次に、図8は、本第3実施形態の動作を説明するためのフローチャートである。ウェブ系プロトコルロードバランサ30、テレコム系プロトコルロードバランサ40において、振り分け判定部80は、信号を受信したときに、信号にセッション識別子が含まれているか判別し(ステップS20)、信号にセッション識別子が含まれている場合には、サーバ20−1〜20−4に対する信号であるか否かを判別する(ステップS21)。そして、サーバ20−1〜20−4に対する信号である場合には、振り分け先管理テーブル81からセッション識別子に対応した振り分け先サーバのIPアドレスを取得し(ステップS22)、該IPアドレスに対して信号を送信する。
一方、サーバ20−1〜20−4に対する信号でない場合には、振り分け先管理テーブル81にセッション識別子と信号送信元(サーバ20−i)のIPアドレスとを登録し(ステップS23)、送信先アドレスに信号を送信する。
ここで、図9は、本第3実施形態の一動作例を説明するためのシーケンス図である。図9に示すシーケンスは、HTTPよりSIPによるセッションを制御された場合の動作例であり、クライアントAは、HTTPを用い、クライアントB、Cは、SIPを用いて通信を行う。HTTPサーバ20−Aは、図1に示すサーバ20−i(i=1〜4)のいずれかに相当し、HTTPを用いたサービスを提供する。また、SIPサーバ20−Bは、図1に示すサーバ20−i(i=1〜4)のいずれかに相当し、SIPを用いたサービスを提供する。
まず、HTTPのクライアントAからHTTPサーバ20−Aに対して発呼要求(リクエスト)があると(SS1)、HTTPサーバ20−Aは、HTTPリクエストデータで指定されたSIPのクライアントB、C間にセッション確立をするように、SIPサーバ20−Bに対して、セッション開始要求を行う(SS2)。
次に、SIPサーバ20−Bは、HTTPサーバ20−Aに対して、SIPセッション識別子を通知する(SS3)。SIPサーバ20−Bからの応答を受けたHTTPサーバ20−Aは、HTTPセッション識別子を新たに発行し、HTTPセッション識別子とSIPセッション識別子との対応をHTTPセッションデータとして保存した後、HTTPクライアントAに対してHTTPセッション識別子を、HTTPセッションの識別子として指定してセッション確立応答を送信する(SS4)。
このとき、セッション確立応答は、サーバに対するものではないので、上述したように、ウェブ系プロトコルロードバランサ30では、振り分け先管理テーブル81にHTTPセッション識別子と信号送信元(HTTPサーバ20−A)のIPアドレスとを登録し(SS5)、HTTPのクライアントAに送信する(SS6)。
また、リクエストを受けたSIPサーバ20−Bは、新たにSIPセッション識別子(Call−ID)を発行し、まず、当該SIPセッション識別子を指定してセッション開始をクライアントBに通知する(SS7)。このとき、セッション開始通知は、サーバに対するものではないので、上述したように、テレコム系プロトコルロードバランサ40では、振り分け先管理テーブル81にSIPセッション識別子と信号送信元(SIPサーバ20−B)のIPアドレスとを登録し(SS8)、SIPのクライアントBに送信する(SS9)。クライアントBは、上記SIPセッション識別子を指定してセッション開始応答を返す(SS10)。
テレコム系プロトコルロードバランサ40では、クライアントBからのセッション開始応答を受信すると、サーバに対する信号であるので、振り分け先管理テーブル81からSIPセッション識別子に対応した振り分け先サーバのIPアドレス、この場合、SIPサーバ20−BのIPアドレスを取得し(SS11)、該IPアドレスに対してセッション開始応答を送信する(SS12)。
同様に、SIPサーバ20−Bは、新たに生成したSIPセッション識別子を指定してセッション開始をクライアントCに通知する(SS13)。このとき、セッション開始通知は、サーバに対するものではないので、上述したように、テレコム系プロトコルロードバランサ40では、振り分け先管理テーブル81にSIPセッション識別子と信号送信元(SIPサーバ20−B)のIPアドレスとを登録し(SS14)、SIPのクライアントCに送信する(SS15)。クライアントCは、上記SIPセッション識別子を指定してセッション開始応答を返す(SS16)。
テレコム系プロトコルロードバランサ40では、クライアントCからのセッション開始応答を受信すると、サーバに対する信号であるので、振り分け先管理テーブル81からSIPセッション識別子に対応した振り分け先サーバのIPアドレス、この場合、SIPサーバ20−BのIPアドレスを取得し(SS17)、該IPアドレスに対してセッション開始応答を送信する(SS18)。
なお、HTTPサーバ20−AにてSIPセッションが確立されたか否かを確認するためには、SIPセッション識別子を指定してSIPセッション状態の問い合わせを行うリクエストをHTTPサーバ20−Aに送信すると、SIPサーバ20−Bに対して状態を問い合わせ、SIPのクライアントCが応答する前であれば「接続待ち」、SIPのクライアントCが応答した後であれば「接続中」の状態を表す値が返ってくる。HTTPのクライアントAは、上記値を確認して接続されたか否かを判断するようになっている。
セッション確立後、HTTPのクライアントAから、SIPセッションの終了や、SIPセッション状態情報の参照を行う場合、当該HTTPセッション識別子を指定して、HTTPサーバ20−Aに対してリクエストを送信する。例えば、SIPセッションの終了時では、HTTPセッション識別子を指定して、HTTPサーバ20−Aに対して終了要求を送信する(SS19)。
ウェブ系プロトコルロードバランサ30では、クライアントAからの終了要求を受信すると、サーバに対する信号であるので、振り分け先管理テーブル81からHTTPセッション識別子に対応した振り分け先サーバのIPアドレス、この場合、HTTPサーバ20−AのIPアドレスを取得し(SS20)、該IPアドレスに対して終了要求を送信する(SS21)。HTTPサーバ20−Aは、セッションデータからSIPセッション識別子を取り出し、SIPサーバ20−Bに対してセッション終了要求を行う(SS22)。
SIPサーバ20−Bは、上記SIPセッション識別子を指定して、クライアントBに対してセッション終了通知を送信する(SS23)。このとき、セッション終了通知は、サーバに対するものではないので、上述したように、ウェブ系プロトコルロードバランサ30では、振り分け先管理テーブル81にSIPセッション識別子と信号送信元(SIPサーバ20−B)のIPアドレスとを登録し(SS24)、SIPのクライアントBに送信する(SS25)。クライアントBからは、上記SIPセッション識別子を指定してセッション終了応答を返す(SS26)。
テレコム系プロトコルロードバランサ40では、クライアントBからのセッション終了応答を受信すると、サーバに対する信号であるので、振り分け先管理テーブル81からSIPセッション識別子に対応した振り分け先サーバのIPアドレス、この場合、SIPサーバ20−BのIPアドレスを取得し(SS27)、該IPアドレスに対してセッション終了応答を送信する(SS28)。
同様に、SIPサーバ20−Bは、クライアントCにSIPセッション識別子として指定したセッション終了通知を送信する(SS29)。このとき、セッション終了通知は、サーバに対するものではないので、上述したように、テレコム系プロトコルロードバランサ40では、振り分け先管理テーブル81にSIPセッション識別子と信号送信元(SIPサーバ20−B)のIPアドレスとを登録し(SS30)、SIPのクライアントCに送信する(SS31)。クライアントCからは、上記SIPセッション識別子を指定してセッション終了応答を返す(SS32)。
テレコム系プロトコルロードバランサ40では、クライアントCからのセッション終了応答を受信すると、サーバに対する信号であるので、振り分け先管理テーブル81からSIPセッション識別子に対応した振り分け先サーバのIPアドレス、この場合、SIPサーバ20−BのIPアドレスを取得し(SS33)、該IPアドレスに対してセッション終了応答を送信する(SS34)。SIPサーバ20−Bは、上記セッション終了応答をHTTPサーバ20−Aに送信し(SS35)、HTTPサーバ20−Aは、HTTPのクライアントAに上記セッション終了応答を送信する(SS36)。
なお、第1実施形態の構成にて、図8に示すシーケンスの動作を実現するためには、HTTPサーバ20−A、SIPサーバ20−Bにて、セッション識別子を発行する際に、IPアドレス等のサーバ識別子を含めたものを発行するよう構成することになる。また、第2実施形態の構成では、HTTPサーバ20−AとSIPサーバ20−Bにおいて、上述したサービスデータ一元管理部61を備えるよう構成することになる。
上述した第1ないし第3実施形態によれば、サービス連携サーバにおいて、高いスケーラビリティを実現することが可能となり、急激な需要増に柔軟に対応できるシステムを構築することが可能となる。
10 ウェブ−テレコムサービス連携サーバ
20−1〜20−4 サーバ
30 ウェブ系プロトコルロードバランサ
40 テレコム系プロトコルロードバランサ
45 インターネット
46 テレコムネットワーク
50 クライアント
60 サービスデータ管理部
61 サービスデータ一元管理部(サービスデータ管理手段)
70 セッション管理部(セッション識別子生成手段)
80 振り分け先判定部(抽出手段、サーバ特定手段、判別手段、登録手段)
81 振り分け先管理テーブル(振り分け先管理記憶手段)
A HTTPのクライアント
B、C SIPのクライアント
20−A HTTPサーバ
20−B SIPサーバ
20−1〜20−4 サーバ
30 ウェブ系プロトコルロードバランサ
40 テレコム系プロトコルロードバランサ
45 インターネット
46 テレコムネットワーク
50 クライアント
60 サービスデータ管理部
61 サービスデータ一元管理部(サービスデータ管理手段)
70 セッション管理部(セッション識別子生成手段)
80 振り分け先判定部(抽出手段、サーバ特定手段、判別手段、登録手段)
81 振り分け先管理テーブル(振り分け先管理記憶手段)
A HTTPのクライアント
B、C SIPのクライアント
20−A HTTPサーバ
20−B SIPサーバ
Claims (7)
- 複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分けるサービス連携サーバであって、
前記複数のプロトコルによるリクエストの初回発生時に、該リクエストのセッション識別子と、該リクエストに対応するサービスを提供するサーバのサーバ識別子とから、新たなセッション識別子を生成するセッション識別子生成手段と、
前記リクエストの初回発生時以降に発生した前記複数のプロトコルによるリクエストが前記複数のサーバのいずれかに対するリクエストであるか否かを判別する判別手段と、
前記判別手段により、前記リクエストが前記複数のサーバのいずれかに対するリクエストであると判別された場合、前記複数のプロトコルによるリクエストに含まれるセッション識別子からサーバ識別子を抽出する抽出手段と、
前記抽出手段によって抽出されたサーバ識別子に基づいて、前記リクエストに対応するサービスを提供するサーバを特定するサーバ特定手段と
を具備することを特徴とするサービス連携サーバ。 - 複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分けるサービス連携サーバであって、
前記複数のサーバによって提供される全てのサービスにアクセス可能なように、前記複数のサーバによって提供されるサービスデータを一元的に管理するサービスデータ管理手段を具備することを特徴とするサービス連携サーバ。 - 複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分けるサービス連携サーバであって、
前記リクエストに含まれるセッション識別子と前記複数のサーバのサーバ識別子とを対応付けて記憶する振り分け先管理記憶手段と、
前記複数のプロトコルによるリクエストに含まれるセッション識別子に基づいて、前記振り分け先管理記憶手段から対応するサーバ識別子を取得するサーバ識別子取得手段と、
前記サーバ識別子取得手段によって取得されたサーバ識別子に基づいて、前記リクエストに対応するサービスを提供するサーバを特定するサーバ特定手段と
を具備することを特徴とするサービス連携サーバ。 - 前記複数のプロトコルによるリクエストが前記複数のサーバのいずれかに対するリクエストであるか否かを判別する判別手段と、
前記判別手段により、前記リクエストが前記複数のサーバのいずれかに対するリクエストでないと判別された場合、前記リクエストに含まれるセッション識別子と、リクエスト送信元のサーバ識別子とを対応付けて前記振り分け先管理記憶手段に登録する登録手段と
を具備することを特徴とする請求項3記載のサービス連携サーバ。 - 複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分ける負荷分散方法であって、
前記複数のプロトコルによるリクエストの初回発生時に、該リクエストのセッション識別子と、該リクエストに対応するサービスを提供するサーバのサーバ識別子とから、新たなセッション識別子を生成し、
前記リクエストの初回発生時以降に発生した前記複数のプロトコルによるリクエストが前記複数のサーバのいずれかに対するリクエストであるか否かを判別し、
前記複数のサーバのいずれかに対するリクエストであると判別された場合、前記複数のプロトコルによるリクエストに含まれるセッション識別子からサーバ識別子を抽出し、抽出したサーバ識別子に基づいて、前記リクエストに対応するサービスを提供するサーバを特定することを特徴とする負荷分散方法。 - 複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分ける負荷分散方法であって、
前記複数のサーバによって提供される全てのサービスにアクセス可能なように、前記複数のサーバによって提供されるサービスデータを一元的に管理することを特徴とする負荷分散方法。 - 複数のサーバによって提供されるサービスに対する、複数のプロトコルによるリクエストを振り分ける負荷分散方法であって、
前記リクエストに含まれるセッション識別子と前記複数のサーバのサーバ識別子とを対応付けて記憶しておき、前記複数のプロトコルによるリクエストに含まれるセッション識別子に対応するサーバ識別子を取得し、取得したサーバ識別子に基づいて、前記リクエストに対応するサービスを提供するサーバを特定することを特徴とする負荷分散方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006232299A JP2008059060A (ja) | 2006-08-29 | 2006-08-29 | サービス連携サーバ及び負荷分散方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006232299A JP2008059060A (ja) | 2006-08-29 | 2006-08-29 | サービス連携サーバ及び負荷分散方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008059060A true JP2008059060A (ja) | 2008-03-13 |
Family
ID=39241758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006232299A Pending JP2008059060A (ja) | 2006-08-29 | 2006-08-29 | サービス連携サーバ及び負荷分散方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008059060A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010003273A (ja) * | 2008-06-23 | 2010-01-07 | Nippon Telegr & Teleph Corp <Ntt> | Sipメッセージ振分方法およびsipメッセージ振分装置 |
JP2010108479A (ja) * | 2008-10-03 | 2010-05-13 | Fujitsu Ltd | 一意性保証情報設定管理プログラム、アプリケーション・プログラム、負荷分散プログラム、一意性保証実現方法、セッション管理方法、一意性保証情報設定管理装置、及び負荷分散装置 |
JP2013025497A (ja) * | 2011-07-19 | 2013-02-04 | Nippon Telegr & Teleph Corp <Ntt> | 分散処理システム、分散処理方法、負荷分散装置、負荷分散方法、及び、負荷分散プログラム |
US8386575B2 (en) | 2009-03-19 | 2013-02-26 | Fujitsu Limited | Method of realizing uniqueness assurance and method of determining message destination |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1155645A (ja) * | 1997-08-07 | 1999-02-26 | Mitsubishi Electric Corp | マルチメディア配信運用管理システム |
JP2002189646A (ja) * | 2000-12-22 | 2002-07-05 | Matsushita Electric Ind Co Ltd | 中継装置 |
JP2004192067A (ja) * | 2002-12-06 | 2004-07-08 | Nippon Telegr & Teleph Corp <Ntt> | 信号分散方法、サービス提供システム、そのサービス制御装置及びデータベースサーバ |
JP2004523020A (ja) * | 2000-08-04 | 2004-07-29 | アバイア テクノロジー コーポレーション | コネクションオリエンテッドトランザクションにおけるurlオブジェクトのインテリジェントな需要に基づく認識 |
JP2004247916A (ja) * | 2003-02-13 | 2004-09-02 | Nippon Telegr & Teleph Corp <Ntt> | Web連携対応SIPサービス制御システムおよび制御方法 |
JP2006018795A (ja) * | 2004-05-31 | 2006-01-19 | Nec Corp | Web共有システム、Web共有方法、Web共有プログラム、中継サーバ、及びWWWブラウザ表示装置 |
JP2006127470A (ja) * | 2004-09-30 | 2006-05-18 | Oki Electric Ind Co Ltd | コンポーネント間の共有情報管理プログラム、方法及び装置、記録媒体、および通信装置 |
-
2006
- 2006-08-29 JP JP2006232299A patent/JP2008059060A/ja active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1155645A (ja) * | 1997-08-07 | 1999-02-26 | Mitsubishi Electric Corp | マルチメディア配信運用管理システム |
JP2004523020A (ja) * | 2000-08-04 | 2004-07-29 | アバイア テクノロジー コーポレーション | コネクションオリエンテッドトランザクションにおけるurlオブジェクトのインテリジェントな需要に基づく認識 |
JP2002189646A (ja) * | 2000-12-22 | 2002-07-05 | Matsushita Electric Ind Co Ltd | 中継装置 |
JP2004192067A (ja) * | 2002-12-06 | 2004-07-08 | Nippon Telegr & Teleph Corp <Ntt> | 信号分散方法、サービス提供システム、そのサービス制御装置及びデータベースサーバ |
JP2004247916A (ja) * | 2003-02-13 | 2004-09-02 | Nippon Telegr & Teleph Corp <Ntt> | Web連携対応SIPサービス制御システムおよび制御方法 |
JP2006018795A (ja) * | 2004-05-31 | 2006-01-19 | Nec Corp | Web共有システム、Web共有方法、Web共有プログラム、中継サーバ、及びWWWブラウザ表示装置 |
JP2006127470A (ja) * | 2004-09-30 | 2006-05-18 | Oki Electric Ind Co Ltd | コンポーネント間の共有情報管理プログラム、方法及び装置、記録媒体、および通信装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010003273A (ja) * | 2008-06-23 | 2010-01-07 | Nippon Telegr & Teleph Corp <Ntt> | Sipメッセージ振分方法およびsipメッセージ振分装置 |
JP2010108479A (ja) * | 2008-10-03 | 2010-05-13 | Fujitsu Ltd | 一意性保証情報設定管理プログラム、アプリケーション・プログラム、負荷分散プログラム、一意性保証実現方法、セッション管理方法、一意性保証情報設定管理装置、及び負荷分散装置 |
US8386575B2 (en) | 2009-03-19 | 2013-02-26 | Fujitsu Limited | Method of realizing uniqueness assurance and method of determining message destination |
JP2013025497A (ja) * | 2011-07-19 | 2013-02-04 | Nippon Telegr & Teleph Corp <Ntt> | 分散処理システム、分散処理方法、負荷分散装置、負荷分散方法、及び、負荷分散プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100889977B1 (ko) | 응용프로그램 및 서비스 서버 관리를 위한 프로토콜독립형 제어 모듈을 이용한 매체 세션 틀 | |
JP5125679B2 (ja) | 負荷分散装置及び方法とプログラム | |
US20060036747A1 (en) | System and method for resource handling of SIP messaging | |
JP3966598B2 (ja) | サーバ選択システム | |
JP5444995B2 (ja) | セッション共有システム、方法及びプログラム、並びに、ユーザ端末 | |
US20070226226A1 (en) | Method and system for distributing processing of computerized tasks | |
JP5104591B2 (ja) | バスシステム | |
CN101447989A (zh) | 用于改进的高可用性组件实现的***和方法 | |
US8577984B2 (en) | State management in a distributed computing system | |
US20070226745A1 (en) | Method and system for processing a service request | |
JP2008059060A (ja) | サービス連携サーバ及び負荷分散方法 | |
TW200929941A (en) | Apparatus and method for transmitting streaming services | |
JP6540063B2 (ja) | 通信情報制御装置、中継システム、通信情報制御方法、および、通信情報制御プログラム | |
JP2012242994A (ja) | トランザクション処理システム、トランザクション処理方法、および、トランザクション処理プログラム | |
JP2002351760A (ja) | サーバ負荷分散装置、サーバ負荷分散方法およびその方法をコンピュータに実行させるプログラム | |
JP5154313B2 (ja) | Sipメッセージ振分方法およびsipメッセージ振分装置 | |
JP6092874B2 (ja) | 負荷分散装置、情報処理システム、方法およびプログラム | |
JP5517190B2 (ja) | 通信システム、マッピング情報通知装置、マッピング情報通知方法及びプログラム | |
CN111614792B (zh) | 透传方法、***、服务器、电子设备及存储介质 | |
WO2009110246A1 (ja) | イベント処理システムおよびイベント処理方法 | |
JP4063220B2 (ja) | コンピュータシステム、サーバ計算機、コンピュータシステムのアプリケーション更新方法、プログラム | |
JP2005236670A (ja) | セッション確立、セッション確立処理装置及びプログラム | |
JP2011154703A (ja) | トランスレーション・エージェント・サーバ | |
US20040199643A1 (en) | Distributed service component systems | |
EP1475706A1 (en) | Method and apparatus for providing a client-side local proxy object for a distributed object-oriented system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080801 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20101028 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101109 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110405 |