JPWO2010106772A1 - 分散処理システム及び分散処理方法 - Google Patents

分散処理システム及び分散処理方法 Download PDF

Info

Publication number
JPWO2010106772A1
JPWO2010106772A1 JP2011504741A JP2011504741A JPWO2010106772A1 JP WO2010106772 A1 JPWO2010106772 A1 JP WO2010106772A1 JP 2011504741 A JP2011504741 A JP 2011504741A JP 2011504741 A JP2011504741 A JP 2011504741A JP WO2010106772 A1 JPWO2010106772 A1 JP WO2010106772A1
Authority
JP
Japan
Prior art keywords
application
communication
information
distributed processing
flow
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
Application number
JP2011504741A
Other languages
English (en)
Inventor
正徳 高島
正徳 高島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of JPWO2010106772A1 publication Critical patent/JPWO2010106772A1/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5683Storage of data provided by user terminals, i.e. reverse caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

分散処理システム100は、複数のアプリケーション1321〜132nを実行させると共に、クライアント105とアプリケーション1321〜132nとの通信状態を検出する複数のアプリケーションサーバ1031〜103nと、アプリケーションサーバ1031〜103nにより検出された通信状態に基づいて、クライアント105とアプリケーション1321〜132n間の通信経路を決定し、負荷分散を行う負荷分散制御サーバ101と、クライアント105とアプリケーションサーバ1031〜103nとの間における、フローデータの転送を行う中間通信装置102と、を備える。

Description

本発明は、システムの負荷を分散する分散処理システム及び分散処理方法に関し、特にアプリケーションサーバの負荷を軽減しつつ、当該システムにおける信頼性を維持することができる分散処理システム及び分散処理方法に関するものである。
近年、インターネットの発展により、遠隔地にあるクライアントから、データセンタや企業ネットワーク内などに配置された複数のアプリケーションサーバに接続し、そのアプリケーションサーバ内にあるアプリケーションを利用する利用形態が拡大している。このような利用形態の拡大により、アプリケーションを実行するアプリケーションサーバにかかる負荷は年々増加している。このため、一般的に、アプリケーションサーバを複数配置することにより、そのスケーラビリティ(拡張性)を向上させつつ、負荷分散を行う手法がとられている。また、アプリケーションサーバのスケーラビリティを向上させるために、クライアントとアプリケーション間の通信を、中間通信装置を用いて複数のアプリケーションサーバに負荷分散を行う必要が生じている。
一方で、サーバと、データ中継装置からサーバへの経路とに関する負荷情報を収集し、この負荷情報に基づいてクライアントとサーバとの経路を選択するデータ中継装置が知られている(例えば、特許文献1参照)。
国際公開第04/093394号パンフレット
ところで、上述の如く、クライアントを複数のアプリケーションサーバに分散して接続する場合に、クライアントとアプリケーションサーバ間の通信状態は、夫々の通信毎に監視される。この場合、中間通信装置は、通過パケットを監視し、そのパケット内のフラグなどの通信状態情報からセッション状態を推測し、クライアントとアプリケーションサーバ間の通信状態を把握している。また、このように通過パケットを監視する場合、通過する全てのパケット毎にペイロードや通信状態フラグのチェックを行う必要があり、非常に複雑な処理を要し、中間通信装置のコスト増加に繋がる虞がある。
一方で、例えば、通信状態を監視、管理等を行わずに、クライアントとアプリケーションサーバとの間の通信経路の設定を行った場合、初期状態はその通信が存在していないため、その通信開始を検出できるが、通信終了などの通信状態の変化を検出するのが困難となる。この通信終了を検出するためには、例えば、パケット内の通信状態フラグを監視する手法や、通信トラフィックが停止したことをタイマーによって検出する手法などが考えられる。
例えば、コストの抑制を考慮して、タイマーのタイムアウトを使用する場合、通信のトラフィックの停止が、通信終了のために生じたのか、又は、クライアントによるアプリケーションの使用停止によって一時的に通信が途絶えているだけなのか、を判断することが困難となる。また、一時的に通信が途絶えているにもかかわらず、通信終了と誤判断され、一定時間経過後に通信が再開される可能性がある。この場合、その通信再開で、クライアントは適切なアプリケーションサーバに接続して、アプリケーションの使用を再開できず、システムにおける信頼性の低下を招く虞がある。なお、上記特許文献1に示すデータ中継装置においては、例えば、収集した負荷情報に基づいて、サーバの負荷を分散し軽減できるが、一方で、サーバ負荷軽減後におけるシステムの信頼性の維持等については開示されていない。
本発明は、このような問題点を解決するためになされたものであり、アプリケーションサーバの負荷を軽減しつつ、信頼性を維持することができる分散処理システム及び分散処理方法を提供することを主たる目的とする。
上記目的を達成するための本発明の一態様は、複数のアプリケーションを実行させると共に、クライアントと前記アプリケーションとの通信状態を検出する複数のアプリケーションサーバと、前記アプリケーションサーバにより検出された前記通信状態に基づいて、前記クライアントとアプリケーション間の通信経路を決定し、負荷分散を行う負荷分散制御サーバと、前記クライアントと前記アプリケーションサーバとの間における、フローデータの転送を行う中間通信装置と、を備えることを特徴とする分散処理システムである。
他方、上記目的を達成するための本発明の一態様は、複数のアプリケーションを実行させると共に、クライアントと前記アプリケーションとの通信状態を検出する工程と、前記検出された前記通信状態に基づいて、前記クライアントとアプリケーション間の通信経路を決定し、負荷分散を行う工程と、前記クライアントとアプリケーションサーバとの間における、フローデータの転送を行う工程と、を含むことを特徴とする分散処理方法であってもよい。
本発明によれば、アプリケーションサーバの負荷を軽減しつつ、信頼性を維持することができる分散処理システム及び分散処理方法を提供することができる。
本発明の一実施形態に係る分散処理システムの機能ブロック図である。 本発明の一実施形態に係る分散処理システムの概略的な構成を示すブロック図である。 負荷分散制御サーバのフロー状態DBに記憶されたセッション識別情報と、通信経路情報と、を示す図である。 負荷分散制御サーバのアプリケーション通信状態DBに記憶された、アプリケーション識別情報と、アプリケーションサーバ識別情報と、通信状態情報と、情報有効性と、を示す図である。 中間通信装置のフロー転送DBに記憶された、セッション識別情報と、転送先情報と、通信状態情報と、を示す図である。 アプリケーションサーバの通信状態DBに記憶された、アプリケーション識別情報と、セッション識別情報と、通信状態情報と、を示す図である。 本発明の一実施形態に係る分散処理システムの分散処理フローの一例を示すフロー図である。 本発明の一実施形態に係る分散処理システムにおける、クライアントとアプリケーション間の通信の終了処理の動作フローの一例を示す図である。
以下、図面を参照して本発明の実施の形態について説明する。図1は、本発明の一実施形態に係る分散処理システムの機能ブロック図である。本実施形態に係る分散処理システム100は、複数のアプリケーションサーバ1〜n(1031〜103n)と、負荷分散制御サーバ101と、中間通信装置102と、を備えている。
各アプリケーションサーバ1〜n(1031〜103n)は、複数のアプリケーション1〜n(1321〜132n)を実行させると共に、クライアント105とアプリケーション1〜n(1321〜132n)との通信状態を検出することができる。また、負荷分散制御サーバ101は、アプリケーションサーバ1〜n(1031〜103n)により検出された通信状態に基づいて、クライアント105とアプリケーション1〜n(1321〜132n)間の通信経路を決定し、負荷分散を行うことができる。さらに、中間通信装置102は、クライアント105とアプリケーションサーバ1〜n(1031〜103n)との間における、フローデータの転送を行うことができる。
本実施形態に係る分散処理システム100によれば、クライアント105とアプリケーションサーバ1〜n(1031〜103n)間における通信の開始およびタイムアウトを適切に検出し、アプリケーションサーバ1〜n(1031〜103n)の通信状態を正確に検出することができる。また、中間通信装置102を用いて、分散処理システム100全体における通信の一貫性を維持し、管理することで、クライアント105とアプリケーション1〜n(1321〜132n)間における接続異常等を確実に抑制でき、分散処理システム100における信頼性を維持することができる。さらに、新たなクライアント105とアプリケーション1〜n(1321〜132n)間における通信接続を、複数のアプリケーションサーバ1〜n(1031〜103n)に適切に振分けることにより、アプリケーションサーバ1〜n(1031〜103n)の負荷を効果的に軽減することができる。
図2は、本発明の一実施形態に係る分散処理システムの概略的な構成を示すブロック図である。本実施形態に係る分散処理システム100において、例えば、遠隔地にあるクライアント105は、データセンタや企業ネットワーク内などに配置された複数のアプリケーションサーバ1〜n(1031〜103n)に、中間通信装置102を介して通信接続し、そのアプリケーションサーバ1〜n(1031〜103n)内にあるアプリケーション1〜n(1321〜132n)を利用するものである。分散処理システム100は、負荷分散制御サーバ101と、中間通信装置102と、複数のアプリケーションサーバ1〜n(1031〜103n)と、を備えている。
負荷分散制御サーバ101は、クライアント105とアプリケーション1〜n(1321〜132n)との間における通信経路の設定、維持、変更、削除等を、夫々の通信経路の通信状態に基づいて決定する。
中間通信装置102は、クライアント105とアプリケーション1〜n(1321〜132n)間の通信において、例えば、送信先アドレス(IP宛先アドレス)と、送信元アドレスとを含むフロー(フローデータ)を、指定された転送先のアプリケーションサーバ1〜n(1031〜103n)へ転送することができる。また、中間通信装置102は、転送するフロー(パケットの集合)が存在しない場合に、初期パケットを負荷分散制御サーバ101に送信する機能を有している。さらに、中間通信装置102は、登録済みフローにヒットして転送されるパケットがなくなった場合に、一定時間後にタイムアウトを行い、負荷分散制御サーバ101に対して、そのタイムアウト情報を送信する機能を有している。
アプリケーションサーバ1〜n(1031〜103n)は、クライアント105とアプリケーション1〜n(1321〜132n)間の通信に対して、終端処理を行う機能を有している。また、アプリケーションサーバ1〜n(1031〜103n)は、そのアプリケーション1〜n(1321〜132n)を実行させ、夫々のクライアント105とアプリケーション1〜n(1321〜132n)との通信状態を監視する機能を有している。さらに、負荷分散制御サーバ101は、アプリケーション通信状態監視インタフェース1〜n(1041〜104n)を介して、アプリケーションサーバ1〜n(1031〜103n)から、クライアント105とアプリケーション1〜n(1321〜132n)間の通信状態を検出する機能を有している。
負荷分散制御サーバ101は、経路制御部111と、フロー状態DB(データベース)112と、アプリケーション通信状態収集部113と、アプリケーション通信状態DB(データベース)114と、を有している。
経路制御部111は、クライアント105とアプリケーションサーバ1〜n(1031〜103n)との通信状態に基づいて、その通信経路の検索を実行し、決定する。また、経路制御部111は、中間通信装置102に対して、フローの通信経路の設定、維持、変更、削除等の実行、初期パケットの受信、タイムアウト情報の受信、等を行う。
フロー状態DB112は、中間通信装置102に対して設定したフロー情報等を、記憶し、管理する。フロー状態DB112は、例えば、セッション識別情報と、通信経路情報と、を記憶する(図3)。
セッション識別情報は、例えば、IPの5タプル(IP送信元アドレス、送信先アドレス、プロトコル番号、ポート元番号、ポート先番号等)により特定できるフロー情報を含む。また、通信経路情報は、例えば、フローが入出力される中間通信装置102(入力される入力物理ポート及び出力される出力物理ポート)、そのときに書換えるべき送信先MACアドレス、次に転送されるアプリケーションサーバ1〜n(1031〜103n)、そのMACアドレス、受信されるアプリケーションサーバ1〜n(1031〜103n)のアプリケーション1〜n(1321〜132n)、等の情報を含む。
アプリケーション通信状態収集部113は、アプリケーションサーバ1〜n(1031〜103n)から、アプリケーション通信状態監視インタフェース1〜n(1041〜104n)を介して取得した、クライアント105とアプリケーション1〜n(1321〜132n)間における通信状態の維持、管理などの処理を行う。また、アプリケーション通信状態収集部113は、経路制御部111からの問合わせに応じて、アプリケーションサーバ1〜n(1031〜103n)の位置や通信状態等を送信する。
アプリケーション通信状態DB114は、アプリケーション通信状態収集部113により取得されたクライアント105と、アプリケーション1〜n(1321〜132n)との通信状態の情報のキャッシュ(記憶)を行う。また、アプリケーション通信状態DB114は、アプリケーションサーバ1〜n(1031〜103n)に問合わせするための情報などを記憶する。
アプリケーション通信状態DB114は、例えば、アプリケーション識別情報と、アプリケーションサーバ識別情報と、通信状態情報と、情報有効性と、を記憶する(図4)。アプリケーション識別情報は、例えば、アプリケーション1〜n(1321〜132n)を特定するための、アプリケーション番号等の情報を含む。また、アプリケーションサーバ識別情報は、例えば、アプリケーションサーバ1〜n(1031〜103n)を特定するための、MACアドレス等の情報を含む。さらに、通信状態情報は、例えば、セッションの確立中、正常通信中、セッション終了中などの、クライアント105とアプリケーションサーバ1〜n(1031〜103n)との通信状態を含む。情報有効性は、その情報の有効性を示すものであり、例えば、更新時刻などの情報を含む。
中間通信装置102は、フロー転送部121と、フロー転送DB(データベース)122と、通信装置内制御部123と、を有している。
フロー転送部121は、フローのパケットから抜出したフロー識別に必要なキー情報に基づいて、フロー転送DB122を検索し、そのパケットの転送先であるアプリケーションサーバ1〜n(1031〜103n)を決定する。そして、フロー転送部121は、決定したアプリケーションサーバ1〜n(1031〜103n)に、パケットを転送する。また、フロー転送部121は、フローのパケットに含まれる特別なアクション情報、例えば、MACヘッダ書換え、QoS等を、そのパケットに対して実行する。
フロー転送DB122は、フローを格納することができる。また、フロー転送DB122は、例えば、セッション識別情報と、転送先情報と、通信状態情報と、を記憶する(図5)。セッション識別情報は、例えば、IPの5タプル(IP送信元アドレス、送信先アドレス、プロトコル番号、ポート元番号、ポート先番号等)により特定できるフロー情報を含む。また、転送先情報は、例えば、フローの転送先である、MACアドレスにより特定できるアプリケーションサーバ番号等を含む。通信状態情報は、例えば、通信の有無を示す情報を含む。
通信装置内制御部123は、負荷分散制御サーバ101との通信、フロー転送DB122の維持、管理等を行う。また、通信装置内制御部123は、フロー転送部121からの初期パケット、フロー転送DB122の情報などを確認することによって、フローのタイムアウト情報を取得することができる。
アプリケーションサーバ1〜n(1031〜103n)は、ネットワーク終端部131と、複数のアプリケーション1〜n(1321〜132n)と、通信状態DB133と、通信状態通知部134と、を有している。
ネットワーク終端部131は、例えば、TCP、UDPなどの、クライアント105とアプリケーション1〜n(1321〜132n)と間の通信に対して、終端処理を行う。アプリケーション1〜n(1321〜132n)は、例えば、アプリケーションプログラムであり、クライアント105との通信を実際に実施して、クライアント105に対して所定のサービスを提供する。
通信状態DB133は、そのクライアント105とアプリケーション1〜n(1321〜132n)との間の通信状態、例えば、通信の開始中、通信の実施中、通信の終了中、等の状態を、アプリケーション1〜n(1321〜132n)とセッションとを関係付けて記憶する。通信状態DB133は、例えば、アプリケーション識別情報と、セッション識別情報と、通信状態情報と、を記憶する(図6)。アプリケーション識別情報は、例えば、アプリケーション1〜n(1321〜132n)を特定するための、アプリケーション番号を含む。また、セッション識別情報は、例えば、クライアント105とアプリケーション1〜n(1321〜132n)との通信を特定する、IPの5タプル(IP送信元アドレス、送信先アドレス、プロトコル番号、ポート元番号、ポート先番号等)により特定できるフロー情報を含む。さらに、通信状態情報は、例えば、セッションの確立中、正常通信中、セッション終了中、などのクライアント105とアプリケーション1〜n(1321〜132n)との通信状態を含む。
通信状態通知部134は、負荷分散制御サーバ101と通信を行い、また、通信状態DB133から情報を読出す。
なお、フロー状態DB112、アプリケーション通信状態DB114、フロー転送DB122、及び通信状態DB133は、例えば、磁気ディスク装置、光ディスク装置、メモリ等の任意の記憶装置によって構成されている。また、フロー状態DB112、アプリケーション通信状態DB114、フロー転送DB122、及び通信状態DB133は、物理的に分離して構成されているが、物理的に一体で構成されていてもよい。さらに、複数のクライアント105が、同時に中間通信装置102を介して、複数のアプリケーションサーバ1〜n(1031〜103n)に夫々接続してもよい。
また、負荷分散制御サーバ101、中間通信装置102、及びアプリケーションサーバ1〜n(1031〜103n)は、例えば、制御処理、演算処理等と行うCPU(Central Processing Unit)、CPUによって実行される制御プログラム、演算プログラム等が記憶されたROM(Read Only Memory)、処理データ等を一時的に記憶するRAM(Random Access Memory)等からなるマイクロコンピュータを中心にして、ハードウェア構成されている。 次に、本実施形態に係る分散処理システムの分散処理フローについて、詳細に説明する。図7は、本実施形態に係る分散処理システムの分散処理フローの一例を示すフロー図である。
例えば、中間通信装置102のフロー転送部121は、クライアント105から、フロー転送DB122に登録されていないフローのパケットを受信すると、ミスヒットした初期パケットを検出する(ステップS21)。そして、フロー転送部121は、このミスヒットしたパケットを、通信装置内制御部123に対して送信する(ステップS22)。
通信装置内制御部123は、送信されたミスヒットのパケットを、負荷分散制御サーバ101の経路制御部111に対して送信する(ステップS23)。これにより、通信装置内制御部123は、新規フロー、すなわち、新規のクライアント105とアプリケーション1〜n(1321〜132n)との間の通信開始を、経路制御部111に対して通知する。
経路制御部111は、この新規フローの通知を受けると、このフローに対して、中間通信装置102を含めたネットワークとアプリケーションサーバ1〜n(1031〜103n)とのトポロジー情報(接続形態情報)、アプリケーションサーバ1〜n(1031〜103n)の負荷情報(CPU、メモリ、アプリケーションサーバ1〜n(1031〜103n)上のアプリケーション数、通信数などの情報)等に基づいて、通信経路を決定する。また、経路制御部111は、受信したパケットに基づいて、アプリケーション通信状態DB114の情報を更新する。
次に、負荷分散制御サーバ101の経路制御部111は、決定した通信経路から、中間通信装置102における自ホップ情報(中継情報)等のフロー転送情報を抽出する(ステップS24)。そして、経路制御部111は、このフローに対するフロー転送情報と共にパケットを、中間通信装置102の通信装置内制御部123に対して返信する。
その後、通信装置内制御部123は、フロー転送DB122にフロー転送情報を登録すると共に、経路制御部111からのパケットをフロー転送部121に送信する(ステップS25)。
さらに、フロー転送部121は、通信装置内制御部123から送信されたパケットを、フロー転送DB122に従って、アプリケーションサーバ1〜n(1031〜103n)に転送する(ステップS26)。フロー転送部121は、これ以降に受信する該当フローに属するパケットを、フロー転送DB122に従って転送する。
アプリケーションサーバ1〜n(1031〜103n)のネットワーク終端部131は、受信したパケットに対して終端処理を行い、アプリケーション1〜n(1321〜132n)に対してペイロードデータを送信する(ステップS27)。また、ネットワーク終端部131は、実際のアプリケーション1〜n(1321〜132n)が認識している状態に一致させるように、通信状態を更新し、更新した通信状態を、通信状態通知部134に対して送信する。
通信状態通知部134は、負荷分散制御サーバ101のアプリケーション通信状態収集部113に対して、更新した通信状態を送信する(ステップS28)。アプリケーション通信状態収集部113は、この通信状態の情報をアプリケーション通信状態DB114に記憶させ、管理させる。このようにして、負荷分散制御サーバ101の経路制御部111は、負荷分散したクライアント105とアプリケーション1〜n(1321〜132n)との間における通信の一貫性を維持することができる。
次に、本実施形態に係る分散処理システム100において、クライアント105とアプリケーションとの間における通信の終了処理の動作フローについて、詳細に説明する。図8は、本実施形態に係る分散処理システムにおける、クライアントとアプリケーション間の通信の終了処理の動作フローの一例を示す図である。
例えば、中間通信装置102のフロー転送部121は、あるフローに関して、転送処理を行っていないことを、検出する(ステップS31)。なお、フロー転送部121は、フロー転送DB122における通信状態(図5)が一定時間以上、「通信なし」から「通信あり」の状態に更新されていない場合に、上記転送処理を行っていないことを検出する。通信装置内制御部123は、フロー転送DB122からそのフロー情報を取得する。そして、通信装置内制御部123は、取得したフロー情報が通信状態にないことを確認して、タイムアウトであると認識する。
次に、中間通信装置102の通信装置内制御部123は、タイムアウトしたフローを、負荷分散制御サーバ101の経路制御部111に対して送信する(ステップS32)。経路制御部111は、タイムアウトしたフローを受信すると、フロー状態DB112からそのフロー情報を読出し、読出したフロー情報からアプリケーション情報を取得する。
その後、経路制御部111は、アプリケーション通信状態収集部113にアプリケーションの通信状態を問い合わせる(ステップS33)。アプリケーション通信状態収集部113は、アプリケーション通信状態DB114から、該当するアプリケーションの通信状態を読出し、取得する。アプリケーション通信状態収集部113は、読出したアプリケーションの通信状態が十分に新しいと判断した場合、下記(ステップS36)へ移行する。
一方、アプリケーション通信状態収集部113は、アプリケーション通信状態DB114の情報が古いと判断した場合、アプリケーション通信状態DB114のアプリケーション識別情報に基づいて、そのアプリケーション1〜n(1321〜132n)が動作している特定のアプリケーションサーバ1〜n(1031〜103n)の通信状態通知部134に、アプリケーションの通信状態を問い合わせる(ステップS34)。通信状態通知部134は、その通信状態を通信状態DB133から読み出し、取得する。
通信状態通知部134は、取得したアプリケーションの通信状態を、負荷分散制御サーバ101のアプリケーション通信状態収集部113に対して送信する(ステップS35)。そして、アプリケーション通信状態収集部113は、そのアプリケーションの通信状態に基づいて、アプリケーション通信状態DB114の情報を更新する。
また、アプリケーション通信状態収集部113は、取得したアプリケーションの通信状態を、経路制御部111に送信する(ステップS36)。経路制御部111は、アプリケーションの状態が終了状態あるいは、存在しない(終了済み)の場合、該当するフローの通信経路情報を、フロー状態DB112から削除する。
さらに、経路制御部111は、中間通信装置102の通信装置内制御部123に対して、フローの通信経路情報を送信する(ステップS37)。経路制御部111は、(ステップS36)で入手したアプリケーションの通信状態が終了状態、あるいは、存在しない(終了済み)の場合、通信装置内制御部123に対して、該当するフローを削除する旨の通信経路情報を送信し、それ以外の場合、そのフローを維持する旨の通信経路情報を送信する。通信装置内制御部123は、送信された通信経路情報に従って、フロー転送DB122の情報を変更する。
以上、本実施形態に係る分散処理システム100によれば、クライアント105とアプリケーションサーバ1〜n(1031〜103n)間における通信の開始およびタイムアウトを適切に検出し、アプリケーションサーバ1〜n(1031〜103n)の通信状態を正確に検出することができる。また、例えば、フローのパケットにおける通信状態フラグの監視等を行わない簡易な構成の中間通信装置102を用いて、分散処理システム100全体における通信の一貫性を維持し、管理することで、クライアント105とアプリケーション1〜n(1321〜132n)間における接続異常等を確実に抑制でき、分散処理システム100の信頼性を適切に維持できる。すなわち、分散処理システム100の低コスト化を図りつつ、信頼性を適切に維持できる。さらに、新たなクライアント105とアプリケーション1〜n(1321〜132n)間における通信接続を、複数のアプリケーションサーバ1〜n(1031〜103n)に適切に振分けることにより、アプリケーションサーバ1〜n(1031〜103n)の負荷を軽減しつつ、分散処理システム100全体のスケーラビリティを向上させることができる。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2009年3月17日に出願された日本特許出願2009−064338を基礎とする優先権を主張し、その開示の全てをここに取り込む。
100 分散処理システム
101 負荷分散制御サーバ
102 中間通信装置
1031〜103n アプリケーションサーバ1〜n
1041〜104n アプリケーション通信状態監視インタフェース1〜n
105 クライアント
111 経路制御部
112 フロー状態DB
113 アプリケーション通信状態収集部
114 アプリケーション通信状態DB
121 フロー転送部
122 フロー転送DB
123 通信装置内制御部
131 ネットワーク終端部
1321〜132n アプリケーション1〜n
133 通信状態DB
134 通信状態通知部

Claims (12)

  1. 複数のアプリケーションを実行させると共に、クライアントと前記アプリケーションとの通信状態を検出する複数のアプリケーションサーバと、
    前記アプリケーションサーバにより検出された前記通信状態に基づいて、前記クライアントとアプリケーション間の通信経路を決定し、負荷分散を行う負荷分散制御サーバと、
    前記クライアントと前記アプリケーションサーバとの間における、フローデータの転送を行う中間通信装置と、を備えることを特徴とする分散処理システム。
  2. 請求項1記載の分散処理システムであって、
    前記負荷分散制御サーバは、
    前記アプリケーションサーバから前記アプリケーションの通信状態を収集するアプリケーション通信状態収集部と、
    前記アプリケーション収集部により収集された前記アプリケーションの通信状態を記憶するアプリケーション通信状態データベースと、
    前記中間通信装置からの前記フローデータのパケット情報に基づいて、前記パケット情報の送信先である前記アプリケーションを特定し、前記パケット情報をフロー制御するための通信経路を決定する経路制御部と、
    前記フローデータのフロー情報を含むセッション識別情報と、前記通信経路の情報とを記憶するフロー状態データベースと、を有する、ことを特徴とする分散処理システム。
  3. 請求項2記載の分散処理システムであって、
    前記経路制御部は、前記中間通信装置を含めたネットワークと前記アプリケーションサーバとのトポロジー情報と、前記アプリケーションサーバの負荷情報と、に基づいて、前記通信経路を決定する、ことを特徴とする分散処理システム。
  4. 請求項1乃至3のうちいずれか1項記載の分散処理システムであって、
    前記アプリケーションサーバは、
    前記クライアントにサービスを提供する前記複数のアプリケーションと、
    前記アプリケーションを特定するためのアプリケーション識別情報と、前記クライアントと前記アプリケーションとの通信を特定するセッション識別情報と、前記クライアントと前記アプリケーションとの通信状態情報と、を記憶する通信状態データベースと、
    前記アプリケーションの通信状態を前記負荷分散制御サーバへ送信する通信状態通知部と、
    前記クライアントと前記アプリケーションとの通信に対して終端処理を行うネットワーク終端部と、を有する、ことを特徴とする分散処理システム。
  5. 請求項1乃至4のうちいずれか1項記載の分散処理システムであって、
    前記中間通信装置は、
    前記フローデータのフロー情報と、前記フローデータの転送先情報と、前記フローデータの通信状態情報と、を記憶するフロー転送データベースと、
    前記フローデータのパケット情報と、前記フロー転送データベースの転送先情報と、に基づいて、前記パケット情報を転送するフロー転送部と、
    前記負荷分散制御サーバと通信を行う通信装置内制御部と、有する、ことを特徴とする分散処理システム。
  6. 請求項1乃至5のうちいずれか1項記載の分散処理システムであって、
    前記中間通信装置は、前記フローデータから、通信停止を示すタイムアウト情報を検出し、
    前記負荷分散制御サーバは、前記中間通信装置からの前記タイムアウト情報に応じて、前記クライアントとアプリケーションとの通信状態を確認し、設定された前記通信経路の情報の削除又は維持を行う、ことを特徴とする分散処理システム。
  7. 複数のアプリケーションを実行させると共に、クライアントと前記アプリケーションとの通信状態を検出する工程と、
    前記検出された前記通信状態に基づいて、前記クライアントとアプリケーション間の通信経路を決定し、負荷分散を行う工程と、
    前記クライアントとアプリケーションサーバとの間における、フローデータの転送を行う工程と、を含むことを特徴とする分散処理方法。
  8. 請求項7記載の分散処理方法であって、
    前記アプリケーションの通信状態を収集する工程と、
    前記収集された前記アプリケーションの通信状態を記憶する工程と、
    前記フローデータのパケット情報に基づいて、前記パケット情報の送信先である前記アプリケーションを特定し、前記パケット情報をフロー制御するための通信経路を決定する工程と、
    前記フローデータのフロー情報を含むセッション識別情報と、前記通信経路の情報と、を記憶する工程と、を含む、ことを特徴とする分散処理方法。
  9. 請求項7又は8記載の分散処理方法であって、
    ネットワークと前記アプリケーションサーバとのトポロジー情報と、前記アプリケーションサーバの負荷情報と、に基づいて、前記通信経路を決定する、ことを特徴とする分散処理方法。
  10. 請求項7乃至9のうちいずれか1項記載の分散処理方法であって、
    前記アプリケーションを特定するためのアプリケーション識別情報と、前記クライアントと前記アプリケーションとの通信を特定するセッション識別情報と、前記クライアントと前記アプリケーションとの通信状態情報と、を記憶する工程と、
    前記アプリケーションの通信状態を負荷分散制御サーバへ送信する工程と、
    前記クライアントと前記アプリケーションとの通信に対して終端処理を行う工程と、を含む、ことを特徴とする分散処理方法。
  11. 請求項7乃至10のうちいずれか1項記載の分散処理方法であって、
    前記フローデータのフロー情報と、前記フローデータの転送先情報と、前記フローデータの通信状態情報と、を記憶する工程と、
    前記フローデータのパケット情報と、前記フロー転送データベースの転送先情報と、に基づいて、前記パケット情報を転送する工程と、を含む、ことを特徴とする分散処理方法。
  12. 請求項7乃至11のうちいずれか1項記載の分散処理方法であって、
    前記フローデータから、通信停止を示すタイムアウト情報を検出し、
    前記タイムアウト情報に応じて、前記クライアントとアプリケーションとの通信状態を確認し、設定された前記通信経路の情報の削除又は維持を行う、ことを特徴とする分散処理方法。
JP2011504741A 2009-03-17 2010-03-15 分散処理システム及び分散処理方法 Pending JPWO2010106772A1 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009064338 2009-03-17
JP2009064338 2009-03-17
PCT/JP2010/001813 WO2010106772A1 (ja) 2009-03-17 2010-03-15 分散処理システム及び分散処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2015040094A Division JP5915792B2 (ja) 2009-03-17 2015-03-02 分散処理システム及び分散処理方法

Publications (1)

Publication Number Publication Date
JPWO2010106772A1 true JPWO2010106772A1 (ja) 2012-09-20

Family

ID=42739439

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2011504741A Pending JPWO2010106772A1 (ja) 2009-03-17 2010-03-15 分散処理システム及び分散処理方法
JP2015040094A Active JP5915792B2 (ja) 2009-03-17 2015-03-02 分散処理システム及び分散処理方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2015040094A Active JP5915792B2 (ja) 2009-03-17 2015-03-02 分散処理システム及び分散処理方法

Country Status (3)

Country Link
US (1) US9167031B2 (ja)
JP (2) JPWO2010106772A1 (ja)
WO (1) WO2010106772A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011074630A1 (ja) 2009-12-17 2011-06-23 日本電気株式会社 負荷分散システム、負荷分散方法、負荷分散システムを構成する装置およびプログラム
CN103348635B (zh) * 2011-01-26 2016-08-10 日本电气株式会社 网络系统、控制单元和最优路由控制方法
US10257194B2 (en) * 2012-02-14 2019-04-09 Airwatch Llc Distribution of variably secure resources in a networked environment
US9705813B2 (en) 2012-02-14 2017-07-11 Airwatch, Llc Controlling distribution of resources on a network
US10404615B2 (en) 2012-02-14 2019-09-03 Airwatch, Llc Controlling distribution of resources on a network
US9680763B2 (en) 2012-02-14 2017-06-13 Airwatch, Llc Controlling distribution of resources in a network
JP5944537B2 (ja) * 2013-01-31 2016-07-05 株式会社日立製作所 通信経路の管理方法
US20140280955A1 (en) 2013-03-14 2014-09-18 Sky Socket, Llc Controlling Electronically Communicated Resources
DK2973160T3 (da) * 2013-03-15 2020-01-13 Netop Solutions As System og fremgangsmåde til sikker anvendelse af kommunikation mellem netværksprocessorer
JP6179492B2 (ja) 2014-09-11 2017-08-16 コニカミノルタ株式会社 通信中継装置、プログラム及び通信中継方法
US10187218B2 (en) * 2015-09-15 2019-01-22 Google Llc Systems and methods for processing packets in a computer network

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005228036A (ja) * 2004-02-13 2005-08-25 Nec Commun Syst Ltd 負荷分散装置、その制御方法、その制御プログラム、及びクライアントサーバシステム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000196677A (ja) * 1998-12-28 2000-07-14 Fujitsu Ltd ネットワ―クシステムに用いられる中継装置
JP2002344504A (ja) * 2001-05-14 2002-11-29 Nippon Telegr & Teleph Corp <Ntt> コンピュータネットワーク資源割当方法及び資源管理型コンピュータネットワークシステム及びリソース管理サーバ及びエッジスイッチ及びコンピュータネットワーク資源割当プログラム及びコンピュータネットワーク資源割当プログラムを格納した記憶媒体
JP2002351760A (ja) * 2001-05-30 2002-12-06 Mitsubishi Electric Corp サーバ負荷分散装置、サーバ負荷分散方法およびその方法をコンピュータに実行させるプログラム
US6847975B2 (en) * 2001-07-30 2005-01-25 Hitachi, Ltd. Proxy processing method
WO2004073269A1 (ja) * 2003-02-13 2004-08-26 Fujitsu Limited 伝送システム,配信経路制御装置,負荷情報収集装置および配信経路制御方法
WO2004093394A1 (ja) 2003-04-14 2004-10-28 Fujitsu Limited データ中継装置、データ中継方法、データ中継プログラム、サービス選択装置、サービス選択方法、及びサービス選択プログラム
JP2005005926A (ja) * 2003-06-11 2005-01-06 Mitsubishi Electric Corp 情報処理システム及び資源利用制御方法
US7613822B2 (en) * 2003-06-30 2009-11-03 Microsoft Corporation Network load balancing with session information
US7636917B2 (en) * 2003-06-30 2009-12-22 Microsoft Corporation Network load balancing with host status information
US8024476B2 (en) * 2004-05-21 2011-09-20 Microsoft Corporation Efficient message routing when using server pools
JP2005344504A (ja) 2005-06-10 2005-12-15 Ehimeken Shinrin Kumiai Rengokai 土木建築資材及びその製造方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005228036A (ja) * 2004-02-13 2005-08-25 Nec Commun Syst Ltd 負荷分散装置、その制御方法、その制御プログラム、及びクライアントサーバシステム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSND200800778013; 久保田 浩: 'New Face Research & Development' 日経NETWORK 第104号 , 20081128, p.80-81, 日経BP社 *
JPN6014039404; 久保田 浩: 'New Face Research & Development' 日経NETWORK 第104号 , 20081128, p.80-81, 日経BP社 *

Also Published As

Publication number Publication date
JP5915792B2 (ja) 2016-05-11
US9167031B2 (en) 2015-10-20
JP2015133734A (ja) 2015-07-23
WO2010106772A1 (ja) 2010-09-23
US20110289235A1 (en) 2011-11-24

Similar Documents

Publication Publication Date Title
JP5915792B2 (ja) 分散処理システム及び分散処理方法
US10348571B2 (en) Methods and apparatus for accessing dynamic routing information from networks coupled to a wide area network (WAN) to determine optimized end-to-end routing paths
JP5300076B2 (ja) コンピュータシステム、及びコンピュータシステムの監視方法
JP3786328B2 (ja) サーバおよび通信制御方法
JP4000331B2 (ja) ネットワークのポートマッピング用システム
US6970913B1 (en) Load balancing using distributed forwarding agents with application based feedback for different virtual machines
JP4113115B2 (ja) 移動機通信システムおよび通信方法
US9344495B2 (en) Peer-to-peer network system with manageability
JP2018504038A (ja) ソフトウェア定義型データセンター、並びにそのためのサービスクラスタスケジューリング方法及びトラフィック監視方法
CN103460653A (zh) 计算机系统和通信方法
JP6335079B2 (ja) 中継装置及び通信システム
CN103262482A (zh) 通信系统、控制设备、节点控制方法和程序
US10333790B2 (en) Method and system for selective route download in network devices
JP5861772B2 (ja) ネットワークアプライアンス冗長化システム、制御装置、ネットワークアプライアンス冗長化方法及びプログラム
US20120117246A1 (en) Method And System For The Efficient And Automated Management of Virtual Networks
JP2018156606A (ja) 通信制御装置、通信制御方法およびコンピュータプログラム
US9479596B2 (en) Pairing internal network identifier with external network identifier
JP2006262193A (ja) 制御装置、パケット転送方法およびパケット処理装置
US20090103537A1 (en) System for switching between communication devices, switching method, and switching program
US8854977B2 (en) Relay node
JP4339627B2 (ja) パーソナルストレージサービス提供方法
CN104618491B (zh) 一种代理服务器及数据转发方法
CN103595629A (zh) 一种irdp网络中主机网关快速切换的方法和装置
KR100522715B1 (ko) 디지털 홈서비스 분배 관리 시스템 및 이 시스템의 관리방법
CN108259211B (zh) 一种设备管理方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130205

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140121

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140320

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140916

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141110

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20141202