(57)【要約】【課題】集中制御方式による問題点を解決し、実際の状況に対応して動的に処理を分散させる。【解決手段】第１処理装置となったＮＡ２０1〜２０nやＳＥ３０11〜３０nmが、第２処理装置となったＳＥ３０11〜３０nmにエレメント処理結果を提供する際に、第２処理装置となったＳＥ３０11〜３０nmが処理情報を第１処理装置に提供し、第１処理装置が取得する。そして、第１処理装置となったＮＡ２０1〜２０nやＳＥ３０11〜３０nmが、取得した処理情報に基づいて提供先を決定する。【選択図】図１
2005352576.tif 000002
【特許請求の範囲】
【請求項１】
複数の第１処理装置と複数の第２処理装置とを備え、複数の単位処理を組み合わせて総合処理を実行する処理システムであって、
前記第２処理装置は、
前記第１処理装置の処理結果を用いて前記単位処理として第２処理を実行する第２処理部と、
前記第１処理装置に前記第２処理部に関する処理情報を提供する処理管理部とを備え、
前記第１処理装置は、
複数の前記第２処理装置から前記処理情報を取得し、該処理情報に基づいて前記複数の第２処理装置の中から提供先を決定する決定部と、
前記単位処理として第１処理を行い、該処理結果を前記提供先に提供する第１処理部とを備えることを特徴とする処理システム。
【請求項２】
前記決定部は、前記単位処理の処理順序、前記総合処理の処理条件、前記単位処理の処理条件又は前記処理結果の少なくとも１つと、前記処理情報とに基づいて前記提供先を決定することを特徴とする請求項１に記載の処理システム。
【請求項３】
前記決定部は、前記処理情報を要求する監視パケットを前記複数の第２処理装置に送信し、前記監視パケットに対する前記処理情報を含む応答パケットを前記複数の第２処理装置から受信することにより前記処理情報を取得することを特徴とする請求項１又は２に記載の処理システム。
【請求項４】
前記決定部は、前記処理情報と、前記監視パケットに対する応答パケットの応答状態とに基づいて前記提供先を決定することを特徴とする請求項３に記載の処理システム。
【請求項５】
複数の第１処理装置と複数の第２処理装置とを用い、複数の単位処理を組み合わせて総合処理を実行する処理方法であって、
前記第２処理装置が、前記第１処理装置の処理結果を用いて前記単位処理として第２処理を実行する第２処理部に関する処理情報を前記第１処理装置に提供し、
前記第１処理装置が、複数の前記第２処理装置から前記処理情報を取得し、該処理情報に基づいて前記複数の第２処理装置の中から提供先を決定し、
前記単位処理として第１処理を行い、該処理結果を前記提供先に提供することを特徴とする処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理システム及びそれを用いた処理方法に関する。
【背景技術】
【０００２】
従来、負荷分散技術には、図８に示すような負荷分散装置２３０を用いるものがある。負荷分散装置２３０は、サーバ（１１）〜サーバ（１ｎ）のサーバ群２１０と、サーバ（２１）〜サーバ（２ｎ）のサーバ群２２０とを接続する。負荷分散装置２３０は、サーバ群２１０に含まれるサーバ（１１）〜サーバ（１ｎ）の接続先を、サーバ群２２０の中からラウンドロビンにより選択する。負荷分散装置２３０としては、例えば、レイヤ４スイッチ（Ｌ４ＳＷ）や、ＬＶＳ（Linux（登録商標）  Virtual  Server）等を用いることができる。
【０００３】
又、負荷分散技術には、図９に示すようなＤＮＳ（Domain  Name  Server）２４０を用いるものもある。サーバ群２１０に含まれるサーバ（１１）〜サーバ（１ｎ）は、ＤＮＳ２４０から取得したＩＰアドレスを用いてサーバ群２２０に含まれるサーバ（２１）〜サーバ（２ｎ）のいずれかに接続する。ＤＮＳ２４０は、ラウンドロビンによる均等振り分けが実現できるように、ＩＰアドレスをＳＥ群２１０に提供する。
【０００４】
負荷分散装置２３０やＤＮＳ２４０は、ラウンドロビンを実現するために、ＳＥ群２２０に含まれるサーバ（２１）〜サーバ（２ｎ）を集中的に一元管理し、その管理情報に基づいてサーバ（１１）〜サーバ（１ｎ）の接続先を振り分ける。又、主制御部の仕事を複数の処理機能部に分散させ、前段の処理機能部から制御メッセージを取り込み、次の処理機能部に送信する制御メッセージを編集する技術も提案されている（例えば、特許文献１参照）。
【特許文献１】特開平１０−３０８８１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の負荷分散技術は、管理情報を一元管理し、負荷分散を専門に行う負荷分散装置やＤＮＳを設ける集中制御方式である。集中制御方式では、負荷分散装置やＤＮＳと各サーバをそれぞれ接続する必要がある。このような集中制御方式には、システム構成が煩雑になる、コストが高くなる、サーバ数が膨大になると管理情報も膨大になり、負荷分散処理の性能が悪化するといった問題点がある。
【０００６】
又、機械的に均等振り分けを行うラウンドロビンでは、指定した接続先のサーバにおける障害発生や負荷増大等、実際の状況に対応し、動的に（ダイナミックに）処理を分散させることができない。更に、主制御部の仕事を複数の処理機能部に分散させる方式によっても、制御メッセージの送信先を適切に選択することができず、実際の状況を考慮した動的な処理分散を実現することはできない。
【０００７】
そこで、本発明は、集中制御方式による問題点を解決し、実際の状況に対応して動的に処理を分散させることを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係る処理システムは、複数の第１処理装置と複数の第２処理装置とを備え、複数の単位処理を組み合わせて総合処理を実行する処理システムである。第２処理装置は、第１処理装置の処理結果を用いて単位処理として第２処理を実行する第２処理部と、第１処理装置に第２処理部に関する処理情報を提供する処理管理部とを備える。第１処理装置は、複数の第２処理装置から処理情報を取得し、その処理情報に基づいて複数の第２処理装置の中から提供先を決定する決定部と、単位処理として第１処理を行い、その処理結果を提供先に提供する第１処理部とを備える。
【０００９】
このような処理システムによれば、第１処理装置が第２処理装置に処理結果を提供する際に、第２処理装置が第２処理部に関する情報（以下「処理情報」という）を第１処理装置に提供し、第１処理装置が取得する。そして、第１処理装置は、取得した処理情報に基づいて提供先を決定できる。そのため、処理システムでは、処理結果を提供するときの実際の状況を考慮して決定された提供先に処理結果を提供でき、実際の状況に対応して動的に単位処理を分散させることができる。しかも、複数の単位処理を組み合わせて総合処理を実行し、第１処理装置が自律的に単位処理を分散できるため、集中制御方式におけるような問題点も生じない。
【００１０】
更に、決定部は、単位処理の処理順序、総合処理の処理条件、単位処理の処理条件又は処理結果の少なくとも１つと、処理情報とに基づいて提供先を決定することが好ましい。これによれば、第１処理装置は、処理情報に加えて単位処理の処理順序、総合処理や単位処理の処理条件、処理結果を考慮し、より適切な提供先に処理結果を提供できる。
【００１１】
又、決定部は、処理情報を要求する監視パケットを複数の第２処理装置に送信し、監視パケットに対する処理情報を含む応答パケットを複数の第２処理装置から受信することにより処理情報を取得することが好ましい。これによれば、第１処理装置は、複数の第２処理装置からの処理情報の収集を容易に行うことができる。
【００１２】
更に、決定部は、処理情報と、監視パケットに対する応答パケットの応答状態とに基づいて提供先を決定することが好ましい。これによれば、第１処理装置は、処理情報だけでなく、応答状態に反映される第２処理装置の負荷状況や処理能力、第１処理装置と第２処理装置との間のトラフィック状況等を考慮して、より適切に提供先を決定できる。
【００１３】
本発明に係る処理方法は、複数の第１処理装置と複数の第２処理装置とを用い、複数の単位処理を組み合わせて総合処理を実行する処理方法であって、第２処理装置が、第１処理装置の処理結果を用いて単位処理として第２処理を実行する第２処理部に関する処理情報を第１処理装置に提供し、第１処理装置が、複数の第２処理装置から処理情報を取得し、その処理情報に基づいて複数の第２処理装置の中から提供先を決定し、単位処理として第１処理を行い、その処理結果を提供先に提供することを特徴とする。
【発明の効果】
【００１４】
以上説明したように、本発明によれば、集中制御方式による問題点を解決し、実際の状況に対応して動的に処理を分散させることができる。
【発明を実施するための最良の形態】
【００１５】
（処理システム）
図１に示すように、処理システム１００は、アクセスネットワーク群１０と、ネットワークアダプタ（Network  Adaptor、以下「ＮＡ」と表す）群２０と、サービスエレメント（Service  Element、以下「ＳＥ」と表す）群３０と、サービスデータ管理部（Service  Data  Manager、以下「ＳＤＭ」と表す）６０とを備える。
【００１６】
処理システム１００は、複数の単位処理を組み合わせて総合処理を実行する。以下、処理システム１００として実行する総合処理を「サービス」、総合処理「サービス」を複数の単位に分割した単位処理を「エレメント処理」という。又、総合処理「サービス」の処理結果を「サービス処理結果」、単位処理「エレメント処理」の処理結果を「エレメント処理結果」という。
【００１７】
アクセスネットワーク群１０は、様々なアクセスネットワークを含む。アクセスネットワークには、例えば、移動通信網１０ａ、固定通信網１０ｂ、インターネット１０ｃ等がある。
【００１８】
ＮＡ群２０は、複数のＮＡ２０1，２０2，２０3，２０4，２０5〜２０nを含む。ＮＡ２０1〜２０nは、アクセスネットワーク群１０を介してユーザ端末からサービス要求を受信する。サービス要求は、サービスの実行を要求するものである。ＮＡ２０1〜２０nは、受信したサービス要求に含まれる、サービスに用いるアプリケーションデータをＳＥ群３０が処理可能な形式に変換し、ＳＥ群３０に提供する。ＮＡ２０1〜２０nは、例えば、処理システム１００がＩＰサービスマネージャーシステムの場合、ＩＰサービスマネージャーシステム内で共通の形式にアプリケーションデータを変換する。又、ＮＡ２０1〜２０nは、ＳＥ群３０から、サービス要求に対するサービス処理結果を取得する。ＮＡ２０1〜２０nは、取得したサービス処理結果をアクセスネットワークに適した形式に変換し、送信する。このようにして、ＮＡ２０1〜２０nは、アクセスネットワークとＳＥ群３０との形式の違い、即ち、インタフェースの違いを吸収する。
【００１９】
そのため、ＮＡ２０1〜２０nは、各アクセスネットワークに対応できるように設ける。例えば、アクセスネットワーク毎にＮＡを設けてもよく、複数のアクセスネットワークに対応可能なＮＡを設けてもよい。このように複数のＮＡ２０1〜２０nにより機能分散が実現できる。又、同じアクセスネットワークに対応可能なＮＡを複数設けることにより負荷分散が実現できる。ＮＡ２０1〜２０nは、処理システム１００において、エレメント処理として、アプリケーションデータの変換やサービス処理結果の変換等を実行する処理装置の一つとして機能する。ＮＡ２０1〜２０nはサーバ等を用いることができる。
【００２０】
ＳＥ群３０は、複数のＳＥ３０11，３０21，３０31，３０41，３０51〜３０n1〜３０1m，３０2m，３０3m，３０4m，３０5m〜３０nmを含む。ＳＥ３０11〜３０nmは、エレメント処理を実行する処理装置である。処理システム１００では、ＮＡ２０1〜２０n，ＳＥ３０11〜３０nmが分担してエレメント処理を実行することにより、サービスを実現する。このように処理システム１００は、複数のＮＡ、ＳＥを含み、複数のＮＡ、ＳＥにエレメント処理を分散配備する分散コンピューティング環境（Distributed  Data  Driven  Architecture、以下「Ｄ３Ａ」と表す）で処理を実行する。ＳＥ３０11〜３０nmはサーバ等を用いることができる。
【００２１】
ＳＥ群３０は、異なるエレメント処理を実行する複数のＳＥを含む。又、ＳＥ群３０は、同じエレメント処理を実行する複数のＳＥを含む。これにより、機能分散、負荷分散が実現できる。ＳＥをエレメント処理の内容（ＳＥの機能）によって分類した集合を「サービスエレメントクラス」という。ＳＥを同じエレメント処理を行うＳＥ中における順番によって分類した集合を「サービスエレメントインスタンス」という。サービスエレメントクラスは機能分散の単位となり、サービスエレメントインスタンスは負荷分散の単位となる。
【００２２】
各ＳＥは、いずれかのサービスエレメントクラス、サービスエレメントインスタンスに属する。処理システム１００では、１からｍまでのサービスエレメントクラスと、１からｎまでのサービスエレメントインスタンスがある。図１では、ＳＥ３０xyにおける「Ｘ」がサービスエレメントインスタンス、「Ｙ」がサービスエレメントクラスを示す。
【００２３】
ＳＤＭ６０は、サービスに用いるデータを保持し、管理する。ＳＤＭ６０は、サービスに用いるデータとして、ユーザプロファイル（User  Profile、以下「ＵＰ」と表す）と、サービス構成データ（Service  Composition  Data、以下「ＳＣＤ」と表す）を保持する。ＵＰはユーザデータであり、ユーザＩＤと、ユーザ端末が接続可能なアクセスネットワークの種類、ユーザの氏名や住所、年齢、性別、興味分野等の属性情報が含まれる。
【００２４】
ＳＣＤはサービスに関するデータであり、エレメント処理の処理順序、サービスの処理条件、エレメント処理の処理条件、エレメント処理やサービスに用いるその他のデータが含まれる。サービス処理条件には、サービスの処理時間、サービス処理結果に求める品質等がある。エレメント処理条件には、エレメント処理の処理時間、エレメント処理結果に求める品質等がある。ＳＤＭ６０は、複数のＵＰ４０1，４０2〜４０nを保持するＵＰデータベース４０と、複数のＳＣＤ５０1，５０2〜５０nを保持するＳＣＤデータベース５０とを備える。
【００２５】
次に、図２を用いてＮＡ２０1〜２０nと、ＳＥ３０11〜３０nmをより詳細に説明する。図２では、説明を簡単にするために、ＮＡ２０1，２０2とＳＥ３０11，３０12，３０13，３０21，３０22，３０23を例にとって説明する。ＳＥ３０11，３０21は、同じサービスエレメントクラス「ＳＥ１」に属する。ＳＥ３０12，３０22は、同じサービスエレメントクラス「ＳＥ２」に属する。ＳＥ３０13，３０23は、同じサービスエレメントクラス「ＳＥ３」に属する。
【００２６】
ＮＡ２０1は、アクセスネットワーク群１０を介してユーザ端末からサービス要求（ＳＲ：Service  Request）１を受信する。ＮＡ２０1は、サービス要求１に基づいて、ＵＰデータベース４０からユーザ端末のＵＰ２を、ＳＣＤデータベース５０から要求されているサービスのＳＣＤ３を読み出す。ＮＡ２０1は、ＳＤＭ６０からＵＰ２とＳＣＤ３を一括で読み出す。ＮＡ２０1は、ＳＣＤに基づいて最初にエレメント処理を実行するサービスエレメントクラスを「ＳＥ１」に決定する。このようなエレメント処理を実行するサービスエレメントクラスを決定する処理を「サービスエレメント名解決処理」という。
【００２７】
ＮＡ２０1は、エレメント処理として、サービス要求１に含まれ、処理に用いるアプリケーションデータをＳＥに適した形式に変換する。ＮＡ２０1は、サービスエレメントクラス「ＳＥ１」に属するＳＥ３０11，３０21の中から決定した提供先ＳＥ３０11に、ＳＣＤ３と、ＵＰ２と、エレメント処理結果４ａとして、変換したアプリケーションデータを提供する。
【００２８】
ＳＥ３０11は、取得したエレメント処理結果４ａと、ＳＣＤ３と、ＵＰ２とを用いてエレメント処理を実行する。ＳＥ３０11は、ＳＣＤ３に基づいてサービスエレメント名解決処理を行い、エレメント処理を実行するサービスエレメントクラスを「ＳＥ２」に決定する。ＳＥ３０11は、サービスエレメントクラス「ＳＥ２」に属するＳＥ３０12，３０22の中から決定した提供先ＳＥ３０22に、エレメント処理結果４ｂと、ＳＣＤ３と、ＵＰ２とを提供する。
【００２９】
同様にしてＳＥ３０22が、ＳＥ３０23に、エレメント処理結果４ｃと、ＳＣＤ３と、ＵＰ２とを提供する。最後に、ＳＥ３０23が、ＮＡ２０2にエレメント処理結果４ｄと、ＳＣＤ３と、ＵＰ２とを提供する。最後のＳＥ３０23が、これまでのエレメント処理結果４ａ，４ｂが反映されたエレメント処理結果４ｃを用いて得たエレメント処理結果４ｄが、全てのエレメント処理が反映されたサービス処理結果５となる。ＮＡ２０2は、取得したエレメント処理結果４ｄをサービス処理結果５としてアクセスネットワーク群１０を介してユーザ端末に送信する。
【００３０】
このようなＮＡとＳＥとの間、ＳＥとＳＥとの間のデータの受け渡しは、サービス分析制御部（Service  Analysis  Controller、以下「ＳＡＣ」という）２１，３１によって実現される。次に、このＳＡＣ２１，３１が行う処理について図４を用いてより詳細に説明する。図４では、ＳＣＤ３に図３に示すようなエレメント処理の処理順序と、処理時間Ｔ以内にサービス行うというサービスの処理条件
が含まれる場合を例にとって説明する。「ＮＡin」はサービス要求を受信するＮＡを示し、「ＮＡout」はサービス処理結果を送信するＮＡを示す。ＳＣＤ３は、ＮＡin、サービスエレメントクラス「ＳＥ１」、サービスエレメントクラス「ＳＥ２」、サービスエレメントクラス「ＳＥ３」、ＮＡoutの順番にエレメント処理を実行するという処理順序を含む。
【００３１】
ＮＡ２０1は、ＳＡＣ２１と、処理部２２と、インタフェース（以下「Ｉ／Ｆ」と表す）２３とを備える。ＳＥ３０11，３０12，３０21，３０22は、ＳＡＣ３１と、処理部３２と、Ｉ／Ｆ３３とを備える。まず、ＮＡ２０1とＳＥとの間の処理を説明する。このとき、ＮＡ２０1とＳＥの関係は、エレメント処理結果の提供元の処理装置となるＮＡ２０1が「第１処理装置」、エレメント処理結果の提供先候補の処理装置となるＳＥが「第２処理装置」となる。そのため、ＮＡ２０1とＳＥの関係においては、処理部２２が第１処理を行う第１処理部となり、処理部３２が第２処理を行う第２処理部となる。
【００３２】
ＮＡ２０1のＩ／Ｆ２３は、サービス要求を受信し、受信したサービス要求をＳＡＣ２１と処理部２２に入力する。ＳＡＣ２１は、サービス要求に基づいて、ＵＰデータベース４０からユーザ端末のＵＰ２を、ＳＣＤデータベース５０から要求されているサービスのＳＣＤ３を読み出す。ＳＡＣ２１は、サービスエレメント名解決処理を行い、図３に示したＳＣＤ３に含まれる処理順序に基づいて最初にエレメント処理を実行するサービスエレメントクラスを「ＳＥ１」に決定する。
【００３３】
次に、ＳＡＣ２１は、サービスエレメントクラス「ＳＥ１」に属する複数のＳＥ３０11，３０21に監視パケット６ａをＩ／Ｆ２３を介して送信する。監視パケット６ａは、第２処理部に関する処理情報を要求するパケットである。ＳＥ３０11，３０21のＳＡＣ３１は、Ｉ／Ｆ３３を介して監視パケット６ａを受信する。ＳＥ３０11，３０21のＳＡＣ３１は、監視パケット６ａを受信すると、ＳＥ３０11，３０21の処理部３２に関する処理情報を検出する。具体的には、ＳＥ３０11，３０21のＳＡＣ３１は、ＳＥ３０11，３０21の処理部３２がエレメント処理を実行可能な状態にあるか否か（正常に動作しているか）、処理部３２の負荷状況、処理部３２の処理能力等を処理情報として検出する。
【００３４】
ＳＥ３０11，３０21のＳＡＣ３１は、検出した処理情報を含む応答パケット６ｂを生成する。応答パケット６ｂは、監視パケット６ａに対する応答であり、第２処理部に関する処理情報を含む。ＳＥ３０11，３０21のＳＡＣ３１は、Ｉ／Ｆ３３を介して応答パケット６ｂをＮＡ２０1に送信する。このようにして、ＳＡＣ３１は、第１処理装置に第２処理部に関する処理情報を提供する処理管理部として機能する。又、このような処理装置自身の処理部に関する処理情報を検出し、他の処理装置に提供する機能を「実行プロセス管理機能」という。
【００３５】
ＳＡＣ２１は、Ｉ／Ｆ２３を介して複数のＳＥ３０11，３０21から応答パケット６ｂを受信する。このような複数の処理装置に対して監視パケットを送信し、複数の処理装置の処理情報を収集する機能を「サービスエレメント監視機能」という。ＳＡＣ２１は、応答パケット６ｂから処理情報を取得する。更に、ＳＡＣ２１は、監視パケット６ａに対する応答パケット６ｂの応答状態を検出する。このようにして、ＳＡＣ２１は応答パケット６ｂを分析する。応答状体には、第１処理装置と第２処理装置との間でやり取りされる監視パケット６ａに対する応答パケット６ｂの応答速度や、応答パケット６ｂの品質等がある。応答速度や品質等の応答状態には、第２処理装置の負荷状況や処理能力、第１処理装置と第２処理装置との間のトラフィック状況等が反映される。
【００３６】
ＳＡＣ２１は、取得した処理情報と、エレメント処理の処理順序、サービスの処理条件、エレメント処理の処理条件、監視パケット６ａに対する応答パケット６ｂの応答状態等に基づいて、処理部２２のエレメント処理結果の提供先を決定する。例えば、ＳＡＣ２１は、取得した処理情報と、処理時間Ｔ以内のサービス完了という処理条件に基づいて、サービスエレメントクラス「ＳＥ１」に属するＳＥ３０11，３０21の中から、エレメント処理が実行可能な状態にあり、かつ、監視パケット６ａに対する応答パケット６ｂの応答速度が最も速かったＳＥを、処理部２２によるエレメント処理結果の提供先に決定する。
【００３７】
このような応答パケット６ｂを分析し、複数の処理装置の中から提供先を決定する機能を「サービスエレメント分析機能」という。ＳＡＣ２１は、このように監視パケット６ａ、応答パケット６ｂを用いて第２処理装置から処理情報を取得し、処理情報に基づいて複数の第２処理装置の中から提供先を決定する決定部として機能する。
【００３８】
ＳＡＣ２１は、決定した提供先を処理部２２に指示する。又、ＳＡＣ２１は、ＳＣＤ３とＵＰ２を処理部２２に入力する。処理部２２は、エレメント処理（第１処理）として、サービス要求に含まれるアプリケーションデータをＳＥに適した形式に変換する。ＳＥ３０11が提供先に決定された場合、処理部２２は、ＳＡＣ２１の指示に基づいて、エレメント処理結果（第１処理の処理結果）と、ＳＣＤ３と、ＵＰ２を提供先に決定されたＳＥ３０11に提供する。
【００３９】
ＳＥ３０11の処理部３２は、Ｉ／Ｆ３３を介してエレメント処理結果（第１処理の処理結果）と、ＳＣＤ３と、ＵＰ２をＮＡ２０1から取得する。そして、ＳＥ３０11の処理部３２は、エレメント処理結果、ＳＣＤ３、ＵＤＰを用い、エレメント処理（第２処理）を実行する。
【００４０】
次に、ＳＥ３０11は、ＳＥ３０11自身のエレメント処理結果の提供先候補となるＳＥとの関係においては第１処理装置となる。よって、この関係においてはＳＥ３０11の処理部３２が第１処理部となり、そのエレメント処理結果は第１処理の処理結果となる。ＳＥ３０11の処理部３２は、エレメント処理結果をＳＡＣ３１に入力する。
【００４１】
ＳＥ３０11のＳＡＣ３１は、サービスエレメント名解決処理を行い、図３に示したＳＣＤ３に含まれる処理順序に基づいて次にエレメント処理を実行するサービスエレメントクラスを「ＳＥ２」に決定する。よって、サービスエレメントクラス「ＳＥ２」に属する複数のＳＥ３０12，３０22が、ＳＥ３０11のエレメント処理結果の提供先候補である第２処理装置となる。
【００４２】
ＳＥ３０11のＳＡＣ３１は、ＳＥ３０12，３０22に監視パケット６ａをＩ／Ｆ３３を介して送信する。ＳＥ３０12，３０22のＳＡＣ３１は、Ｉ／Ｆ３３を介して監視パケット６ａを受信する。ＳＥ３０12，３０22のＳＡＣ３１は、監視パケット６ａを受信すると、ＳＥ３０12，３０22の処理部３２に関する処理情報を検出する。ＳＥ３０12，３０22のＳＡＣ３１は、検出した処理情報を含む応答パケット６ｂを生成する。ＳＥ３０12，３０22のＳＡＣ３１は、Ｉ／Ｆ３３を介して応答パケット６ｂをＳＥ３０11に送信する。
【００４３】
ＳＥ３０11のＳＡＣ３１は、Ｉ／Ｆ３３を介して複数のＳＥ３０12，３０22から応答パケット６ｂを受信する。ＳＥ３０11のＳＡＣ３１は、応答パケット６ｂから処理情報を取得する。更に、ＳＥ３０11のＳＡＣ３１は、監視パケット６ａに対する応答パケット６ｂの応答状態を検出する。このようにして、ＳＥ３０11のＳＡＣ３１は、応答パケット６ｂを分析する。ＳＥ３０11のＳＡＣ３１は、取得した処理情報と、エレメント処理の処理順序、サービスの処理条件、エレメント処理の処理条件、ＳＥ３０11の処理部３２によるエレメント処理結果（第１処理の処理結果）、監視パケット６ａに対する応答パケット６ｂの応答状態等に基づいて、ＳＥ３０11の処理部３２によるエレメント処理結果の提供先を決定する。
【００４４】
例えば、ＳＥ３０11のＳＡＣ３１は、取得した処理情報と、ＳＥ３０11の処理部３２によるエレメント処理結果と、処理時間Ｔ以内のサービス完了という処理条件に基づいて、サービスエレメントクラス「ＳＥ２」に属するＳＥ３０12，３０22の中から、エレメント処理が実行可能な状態にあり、エレメント処理結果を用いた処理に適した処理能力を備え、かつ、監視パケット６ａに対する応答パケット６ｂの応答速度が最も速かったＳＥを、ＳＥ３０11の処理部３２によるエレメント処理結果の提供先に決定する。ＳＥ３０11のＳＡＣ３１は、このように監視パケット６ａ、応答パケット６ｂを用いて第２処理装置から処理情報を取得し、処理情報に基づいて複数の第２処理装置の中から提供先を決定する決定部として機能する。
【００４５】
ＳＥ３０11のＳＡＣ３１は、決定した提供先をＳＥ３０11の処理部３２に指示する。ＳＥ３０22が提供先に決定された場合、ＳＥ３０11の処理部３２は、ＳＥ３０11のＳＡＣ３１の指示に基づいて、エレメント処理結果（第１処理の処理結果）と、ＳＣＤ３と、ＵＰ２を提供先に決定されたＳＥ３０22に提供する。ＳＥ３０22の処理部３２は、Ｉ／Ｆ３３を介してエレメント処理結果（第１処理の処理結果）と、ＳＣＤ３と、ＵＰ２をＳＥ３０11から取得する。そして、ＳＥ３０22の処理部３２は、ＳＥ３０11のエレメント処理結果、ＳＣＤ３、ＵＤＰを用い、エレメント処理（第２処理）を実行する。
【００４６】
尚、図２においてＮＡにサービス処理結果となるエレメント処理結果を提供する最後のＳＥ３０23のＳＡＣ３１は、サービス要求の要求元であるユーザ端末が接続可能なアクセスネットワークに対応可能なＮＡを提供先に決定する。例えば、最後のＳＥ３０23のＳＡＣ３１は、ＳＥ３０23を第１処理装置、ＮＡを第２処理装置として、監視パケット６ａ、応答パケット６ｂの送受信を行って処理情報を取得できる。そして、ＳＥ３０23のＳＡＣ３１は、取得した処理情報とＵＰ（ユーザ端末が接続可能なアクセスネットワークの種類等）等を用いて提供先を決定できる。又、ＳＥ３０23のＳＡＣ３１は、ＮＡと対応可能なアクセスネットワークとの対応関係を記憶しておき、その対応関係とＵＰに基づいて提供先を決定してもよい。
【００４７】
更に、ＳＡＣ３１は、アプリケーションプロトコルレベルで処理情報を検出することが好ましい。即ち、ＳＡＣ３１は、処理部３２を実現するハードウェアの故障等だけでなく、処理部３２がアプリケーションレベルで発生している障害等も処理情報として検出する。これによれば、ＳＡＣ２１，３１は、アプリケーションレベルでの処理情報を考慮してより適切な提供先を決定できる。
【００４８】
又、ＮＡ２０1〜２０n、ＳＥ３０11〜３０nmには、アドレスが付与されている。よって、ＳＡＣ２１，３１による監視パケット６ａや応答パケット６ｂの送受信や、処理部２２，３２によるサービス要求やエレメント処理結果、ＳＣＤ、ＵＤＰの送受信は、アドレスを用いて行うことができる。例えば、ＳＥ３０12のアドレスが「192.168.0.1」、ＳＥ３０22のアドレスが「192.168.0.2」の場合、ＳＥ３０11のＳＡＣ３１は、「192.168.0.1」を設定した監視パケット６ａと、「192.168.0.2」を設定した監視パケット６ａを生成し、ＳＥ３０12，ＳＥ３０22に送信できる。又、ＳＡＣ２１，３１は、処理部２２，３２に対して決定した提供先を、そのアドレスを用いて指示することができる。
【００４９】
このように処理システム１００では、個々のサービスエレメントを実行して、１つのサービスを実現できる。そして、ＮＡ２０1〜２０n、ＳＥ３０11〜３０nm のＳＡＣ２１，３１が提供先を決定し、処理部２２，３２がＳＣＤとエレメント処理結果を、ＮＡとＳＥの間、ＳＥとＳＥとの間で受け渡していくことで、各ＮＡ、ＳＥが自律的に分散制御を行うことができる。よって、処理システム１００は、例えば、ユーザ端末（Ａ）とユーザ端末（Ｂ）から同時に同一のサービスを要求された場合であっても、図５に示すように複数のＮＡ、ＳＥに負荷を分散してサービスを実行することができる。
【００５０】
図５では、ユーザ端末（Ａ）からのサービス要求に基づく処理の流れを点線、ユーザ端末（Ｂ）からのサービス要求に基づく処理の流れを実線で示す。まず、ユーザ端末（Ａ）からのサービス要求は、ＮＡ２０2が受信する。ＮＡ２０2はエレメント処理結果の提供先をＳＥ３０11に決定し、提供する。ＳＥ３０11はエレメント処理結果の提供先をＳＥ３０12に決定し、提供する。ＳＥ３０12はエレメント処理結果の提供先をＳＥ３０33に決定し、提供する。最後、ＳＥ３０33はエレメント処理結果の提供先を、ＮＡ２０2に決定し、提供する。
【００５１】
一方、ユーザ端末（Ｂ）からのサービス要求は、ＮＡ２０3が受信する。ＮＡ２０3は、サービスエレメントクラス「ＳＥ１」に属するＳＥ３０11〜ＳＥ31の処理情報（処理負荷等）等に基づいて、エレメント処理結果の提供先をユーザ端末（Ａ）とは異なるＳＥ３０21に決定し、提供する。ＳＥ３０21は、サービスエレメントクラス「ＳＥ２」に属するＳＥ３０12〜ＳＥ32の処理情報（処理負荷等）に基づいて、エレメント処理結果の提供先をユーザ端末（Ａ）とは異なるＳＥ３０32に決定し、提供する。ＳＥ３０32は、サービスエレメントクラス「ＳＥ３」に属するＳＥ３０13〜ＳＥ33の処理情報（処理負荷等）に基づいて、エレメント処理結果の提供先をユーザ端末（Ａ）とは異なるＳＥ３０13に決定し、提供する。最後、ＳＥ３０13はエレメント処理結果の提供先を、ＮＡ２０3に決定し、提供する。
【００５２】
（処理方法）
次に、処理システム１００を用いた処理方法について、図６、７を用いて説明する。図６に、ＮＡ２０1〜２０nの動作手順を示す。ＮＡ２０1〜２０nは、ユーザ端末からサービス要求を受信する（Ｓ１０１）。ＮＡ２０1〜２０nは、ＵＰデータベース４０、ＳＣＤデータベース５０から、ＵＰ、ＳＣＤを読み出す（Ｓ１０２）。ＮＡ２０1〜２０nは、エレメント処理結果の提供先のサービスエレメントクラスを決定する（Ｓ１０３）。ＮＡ２０1〜２０nは、決定したサービスエレメントクラスに属する複数のＳＥに監視パケットを送信する（Ｓ１０４）。
【００５３】
ＮＡ２０1〜２０nは、複数のＳＥから応答パケットを受信する（Ｓ１０５）。ＮＡ２０1〜２０nは、応答パケットに含まれる処理情報、エレメント処理の処理順序、サービスの処理条件、エレメント処理の処理条件、監視パケットに対する応答パケットの応答状態等に基づいて、提供先のＳＥを決定する（Ｓ１０６）。ＮＡ２０1〜２０nは、決定した提供先のＳＥに、エレメント処理結果（アプリケーションデータ）、ＳＣＤ、ＵＰを提供する（Ｓ１０７）。
【００５４】
図７に、ＳＥ３０11〜３０nmの動作手順を示す。ＳＥ３０11〜３０nmは、ＮＡ２０1〜２０n又は他のＳＥから、エレメント処理結果、ＳＣＤ、ＵＰを取得する（Ｓ２０１）。ＳＥ３０11〜３０nmは、取得したエレメント処理結果、ＳＣＤ、ＵＰを用いてエレメント処理を実行する（Ｓ２０２）。これが、このエレメント処理結果の提供先候補となるＳＥとの関係においては第１処理のエレメント処理結果となる。ＳＥ３０11〜３０nmは、エレメント処理結果の提供先のサービスエレメントクラスを決定する（Ｓ２０３）。ＳＥ３０11〜３０nmは、決定したサービスエレメントクラスに属する複数のＳＥに監視パケットを送信する（Ｓ２０４）。
【００５５】
ＳＥ３０11〜３０nmは、複数のＳＥから応答パケットを受信する（Ｓ２０５）。ＳＥ３０11〜３０nmは、応答パケットに含まれる処理情報、エレメント処理の処理順序、サービスの処理条件、エレメント処理の処理条件、監視パケットに対する応答パケットの応答状態、第１処理のエレメント処理結果等に基づいて、提供先のＳＥを決定する（Ｓ２０６）。ＳＥ３０11〜３０nmは、決定した提供先のＳＥに、第１処理のエレメント処理結果、ＳＣＤ、ＵＰを提供する（Ｓ２０７）。
【００５６】
（効果）
このような処理システム１００及び処理方法によれば、第１処理装置となったＮＡ２０1〜２０nやＳＥ３０11〜３０nmが、第２処理装置となったＳＥ３０11〜３０nmにエレメント処理結果を提供する際に、第２処理装置となったＳＥ３０11〜３０nmが第２処理部（処理部３２）に関する処理情報を第１処理装置に提供し、第１処理装置が取得する。そして、第１処理装置となったＮＡ２０1〜２０nやＳＥ３０11〜３０nmが、取得した処理情報に基づいて提供先を決定できる。そのため、処理システム１００では、エレメント処理結果を提供するときの実際の状況を考慮して決定された提供先にエレメント処理結果を提供でき、実際の状況に対応して動的に（ダイナミックに）エレメント処理を分散させることができる。しかも、複数のエレメント処理を組み合わせてサービスを実行し、分散配備されたＮＡ２０1〜２０n、ＳＥ３０11〜３０nmが第１処理装置となり、自律的にエレメント処理を分散できるため、集中制御方式におけるような問題点も生じない。
【００５７】
即ち、処理システム１００では、負荷分散を専門に行う負荷分散装置やＤＮＳ等を設ける必要がない、そのような負荷分散装置と各処理装置とを接続する必要がないためシステム構成を簡易にできる、コストを抑えることができる、処理装置数が膨大になっても、負荷分散処理の性能が悪化し、ボトルネックになることがない、といった利点が得られる。しかも、エレメント処理結果を提供する必要が生じる毎に、リアルタイムにＳＥ３０11〜３０nmの処理情報を取得し、ＳＥ３０11〜３０nmの状況を監視しているため、障害発生や負荷増大等にもリアルタイムに対応してダイナミックにエレメント処理を分散させ、負荷分散を実現できる。
【００５８】
更に、ＳＡＣ２１，３１は、エレメント処理の処理順序、サービスの処理条件、エレメント処理の処理条件、エレメント処理結果の少なくとも１つと、処理情報とに基づいて提供先を決定することができる。そのため、第１処理装置となったＮＡ２０1〜２０nやＳＥ３０11〜３０nmは、処理情報に加えてこれらの情報を考慮し、より適切な提供先にエレメント処理結果を提供できる。
【００５９】
更に、ＳＡＣ２１，３１は、監視パケット６ａを複数のＳＥ３０11〜３０nmに送信し、応答パケットを複数のＳＥ３０11〜３０nmから受信して処理情報を取得する。そのため、第１処理装置となったＮＡ２０1〜２０nやＳＥ３０11〜３０nmは、複数のＳＥ３０11〜３０nmからの処理情報の収集を容易に行うことができる。しかも、処理システム１００では、実際にデータの受け渡しが必要となる可能性があるＮＡとＳＥとの間や、ＳＥとＳＥとの間でだけ、監視パケットと応答パケットの送受信が行われる。そのため、処理システム１００では、サービス要求が間欠的な場合やサービス毎に用いるＳＥ３０11〜３０nmが異なる場合であっても、必要な通信量をできるだけ抑えることができる。
【００６０】
更に、ＳＡＣ２１，３１は、処理情報と、監視パケット６ａに対する応答パケット６ｂの応答状態とに基づいて提供先を決定できる。そのため、第１処理装置となったＮＡ２０1〜２０nやＳＥ３０11〜３０nmは、処理情報だけでなく、応答状態に反映される第２処理装置の負荷状況や処理能力、第１処理装置と第２処理装置との間のトラフィック状況等を考慮して、より適切に提供先を決定できる。よって、実際の状況に応じたたより均一性の高い負荷分散を実現できる。
【００６１】
このような処理システム１００によれば、例えば、拡張性、柔軟性に優れ、負荷分散により品質も維持可能なインテリジェントなネットワークサービスの制御を実現する共通基盤システム（Intelligent  Network  Service  Providerシステム、「Ｉ―ＮＳＰシステム」）を安価に提供することができる。
【図面の簡単な説明】
【００６２】
【図１】本発明の実施の形態に係る処理システムの構成を示す図である。
【図２】本発明の実施の形態に係るサービス実行の様子を示す図である。
【図３】本発明の実施の形態に係るエレメント処理の処理順序を示す図である。
【図４】本発明の実施の形態に係るＮＡとＳＥを説明する図である。
【図５】本発明の実施の形態に係る負荷分散の様子を示す図である。
【図６】本発明の実施の形態に係るＮＡの動作手順を示すフロー図である。
【図７】本発明の実施の形態に係るＳＥの動作手順を示すフロー図である。
【図８】従来の負荷分散技術を示す図である。
【図９】従来の他の負荷分散技術を示す図である。
【符号の説明】
【００６３】
１０  アクセスネットワーク群
１０ａ  移動通信網
１０ｂ  固定通信網
１０ｃ  インターネット
２０  ＮＡ群
２０1〜２０n  ＮＡ
２１，３１  ＳＡＣ
２２，３２  処理部
２３，３３  Ｉ／Ｆ
３０  ＳＥ群
３０11〜３０nm  ＳＥ
４０  ＵＰデータベース
５０  ＳＣＤデータベース
６０  ＳＤＭ
１００  処理システム
２１０，２２０  サーバ群
２３０  負荷分散装置
２４０  ＤＮＳ
【図１】
2005352576.tif 000003
【図２】
2005352576.tif 000004
【図３】
2005352576.tif 000005
【図４】
2005352576.tif 000006
【図５】
2005352576.tif 000007
【図６】
2005352576.tif 000008
【図７】
2005352576.tif 000009
【図８】
2005352576.tif 000010
【図９】
2005352576.tif 000011