図面 (/)

技術 多段負荷分散装置、方法及びプログラム

出願人 富士通株式会社
発明者 島田雄介
出願日 2005年2月18日 (15年10ヶ月経過) 出願番号 2005-041687
公開日 2006年8月31日 (14年3ヶ月経過) 公開番号 2006-227963
状態 拒絶査定
技術分野 マルチプログラミング 計算機・データ通信
主要キーワード 分散比率 アクセラレータ装置 アクセラレータ処理 稼動台数 分配ステップ ポート番 計算タイミング 振り分け対象
関連する未来課題
重要な関連分野

この項目の情報は公開日時点(2006年8月31日)のものです。
また、この項目は機械的に抽出しているため、正しく解析できていない場合があります

図面 (20)

課題

サーバ負荷故障等の状態を前段負荷分散装置で取得して後段負荷制御装置に対する負荷分散を動的に決定して反映させる。

解決手段

多段負荷分散装置は、ネットワークに接続された前段負荷分散装置14と、前段負荷分散装置14に接続された複数の後段負荷分散装置16と、後段負荷分散装置16毎に接続された1又は複数のサーバ20から構成され、クライアント10からの要求を前段負荷分散装置14からいずれかの後段負荷分散装置16に分散した後にサーバのいずれかに分散する。後段負荷分散装置16は、自分に接続しているサーバの状態を前段負荷分散装置14に伝達する負荷状態伝達部24を備え、前段負荷分散装置14は、後段負荷分散装置16の負荷状態伝達部24からの伝達情報に基づいてサーバの状態を判断してクライアントからの要求を振り分け制御する動的分散制御部22を備える。

概要

背景

従来、インターネットを利用したサーバクライアントシステムにおけるサーバ負荷分散ロードバランス)は、例えば図23のものがある。図23のサーバ負荷分散は、インターネット102を介して接続されるクライアント100−1、100−2に対しサーバ110−1〜110−6を備えたサーバ群直前負荷分散装置104を配置し、クライアント100−1、100−2からのHTTP要求に対し例えばラウンドロビン等により振分先を制御してサーバの負荷を分散するのが一般的である。

しかし、近年、負荷分散装置は、単純な負荷分散機能だけでなく、SSL(Secure Sockets Layer)アクセラレータ、NAT(Network Address Translation)およびファイヤーウォール等のさまざまな機能を有するようになってきている。その結果、これらの機能を使用しつつサーバ負荷分散を実施すると、負荷分散装置自身の負荷が高くなり、負荷分散装置自身が通信ボトルネックとなる問題が発生する。

この問題の解決策として、図24のように、負荷分散装置を多段配置して負荷分散させる方法がある。図24において、負荷分散装置は、ネットワーク側に配置した前段負荷分散装置105と、サーバ110−1〜110−6側に配置した後段負荷分散装置106−1、106−2及びSSLアクセラレータ112−1、112−2により多段配置され、後段負荷分散装置108−1、108−2にはそれぞれ2台ずつサーバ110−1〜110−4が接続され、SSLアクセラレータ112−1、112−2にはそれぞれサーバ110−5、110−6が接続される。

このような多段構成の負荷分散にあっては、前段負荷分散装置105は、クライアント100−1、100−2からの通信を、後段負荷分散装置106−1、106−2及びSSLアクセラレータ装置112−1、112−2への振り分けのみを例えばラウンドロビン等で行い、後段負荷分散装置106−1、106−2及びSとLアクセラレータ装置112−1、112−2が、サーバ110−1〜110−4の負荷分散やサーバ110−5、110−6に対するアクセラレータ処理を実施する。

このように負荷分散を前段後段機能分担することで、負荷分散装置自身が通信のボトルネックとなることを防ぐことができる。
特開2003−122731号公報

概要

サーバの負荷や故障等の状態を前段負荷分散装置で取得して後段負荷制御装置に対する負荷分散を動的に決定して反映させる。多段負荷分散装置は、ネットワークに接続された前段負荷分散装置14と、前段負荷分散装置14に接続された複数の後段負荷分散装置16と、後段負荷分散装置16毎に接続された1又は複数のサーバ20から構成され、クライアント10からの要求を前段負荷分散装置14からいずれかの後段負荷分散装置16に分散した後にサーバのいずれかに分散する。後段負荷分散装置16は、自分に接続しているサーバの状態を前段負荷分散装置14に伝達する負荷状態伝達部24を備え、前段負荷分散装置14は、後段負荷分散装置16の負荷状態伝達部24からの伝達情報に基づいてサーバの状態を判断してクライアントからの要求を振り分け制御する動的分散制御部22を備える。

目的

本発明は、サーバの負荷や故障等の状態を前段負荷分散装置で取得して後段負荷制御装置に対する負荷分散を動的に決定して反映させる多段負荷分散装置及び方法を提供することを目的とする。

効果

実績

技術文献被引用数
3件
牽制数
4件

この技術が所属する分野

ライセンス契約や譲渡などの可能性がある特許掲載中! 開放特許随時追加・更新中 詳しくはこちら

請求項1

ネットワークに接続された前段負荷分散装置と、前記前段負荷分散装置に接続された複数の後段負荷分散装置と、前記後段負荷分散装置毎に接続された1又は複数のサーバから構成され、クライアントからの要求を前記前段負荷分散装置からいずれかの前記後段負荷分散装置に分散した後に前記サーバのいずれかに分散する多段負荷分散装置に於いて、前記後段負荷分散装置に、自分に接続しているサーバの状態を前記前段負荷分散装置に伝達する負荷状態伝達部を設け、前記前段負荷分散装置に、前記後段負荷分散装置の負荷状態伝達部からの伝達情報に基づいて前記サーバの状態を判断して前記クライアントからの要求を振り割け制御する動的分散制御部を設けたことを特徴とする多段負荷分散装置。

請求項2

請求項1記載の多段負荷分散装置に於いて、前記後段負荷分散装置の負荷状態伝達部は、自分に接続したサーバからのクライアント応答パケットヘッダにサーバIPアドレスを埋め込んで通知し、前記前段負荷分散装置の動的分散制御部は、前記クライアント応答パケットのヘッダから前記サーバIPアドレスを抽出し、正常に動作している前記後段負荷分散装置毎のサーバ台数を認識して振り分け制御することを特徴とする多段負荷分散装置。

請求項3

請求項1記載の多段負荷分散装置に於いて、前記後段負荷分散装置の情報伝達部は、前段負荷分散装置から要求に対し自分に接続しているサーバの状態を示す情報を応答し、前記前段負荷分散装置の動的分散制御部は、前記後段負荷分散装置にサーバの状態を示す情報を要求すると共に、前記後段負荷分散装置からの応答情報から前記サーバの状態を認識して振り分け制御することを特徴とする多段負荷分散装置。

請求項4

ネットワークに接続された前段負荷分散装置と、前記前段負荷分散装置に接続された複数の後段負荷分散装置と、前記後段負荷分散装置毎に接続された1又は複数のサーバから構成され、クライアントからの要求を前記前段負荷分散装置からいずれかの前記後段負荷分散装置に分散した後に前記サーバのいずれかに分散する多段負荷分散方法に於いて、前記後段負荷分散装置に接続しているサーバの状態を前記前段負荷分散装置に伝達する負荷状態伝達ステップと、前記負荷状態伝達ステップによる伝達情報に基づいて前記サーバの状態を判断して前記クライアントからの要求を振り割け制御する動的分散制御ステップと、を備えたことを特徴とする多段負荷分散方法。

請求項5

ネットワークに接続された前段負荷分散装置と、前記前段負荷分散装置に接続された複数の後段負荷分散装置と、前記後段負荷分散装置毎に接続された1又は複数のサーバから構成され多段負荷分散装置における前段負荷分散装置のコンピュータに、前記後段負荷分散装置から受信したクライアント応答パケットのヘッダに埋め込まれたサーバIPアドレスを抽出して前記後段負荷分散装置毎の稼動サーバ台数を認識する負荷状況認識ステップと、前記稼動サーバ台数に基づいてクラアント要求パケットを振り分け制御する分配ステップと、を実行させることを特徴とするプログラム

技術分野

0001

本発明は、クライアントからの処理要求前段後段多段階に配置した複数の負荷分散装置を使用してサーバ分散処理させる多段負荷分散装置、方法及びプログラムに関し、特に、サーバの稼動状況に応じて多段階の負荷分散を動的に行う多段負荷分散装置、方法及びプログラムに関する。

背景技術

0002

従来、インターネットを利用したサーバクライアントシステムにおけるサーバの負荷分散(ロードバランス)は、例えば図23のものがある。図23サーバ負荷分散は、インターネット102を介して接続されるクライアント100−1、100−2に対しサーバ110−1〜110−6を備えたサーバ群直前に負荷分散装置104を配置し、クライアント100−1、100−2からのHTTP要求に対し例えばラウンドロビン等により振分先を制御してサーバの負荷を分散するのが一般的である。

0003

しかし、近年、負荷分散装置は、単純な負荷分散機能だけでなく、SSL(Secure Sockets Layer)アクセラレータ、NAT(Network Address Translation)およびファイヤーウォール等のさまざまな機能を有するようになってきている。その結果、これらの機能を使用しつつサーバ負荷分散を実施すると、負荷分散装置自身の負荷が高くなり、負荷分散装置自身が通信ボトルネックとなる問題が発生する。

0004

この問題の解決策として、図24のように、負荷分散装置を多段配置して負荷分散させる方法がある。図24において、負荷分散装置は、ネットワーク側に配置した前段負荷分散装置105と、サーバ110−1〜110−6側に配置した後段負荷分散装置106−1、106−2及びSSLアクセラレータ112−1、112−2により多段配置され、後段負荷分散装置108−1、108−2にはそれぞれ2台ずつサーバ110−1〜110−4が接続され、SSLアクセラレータ112−1、112−2にはそれぞれサーバ110−5、110−6が接続される。

0005

このような多段構成の負荷分散にあっては、前段負荷分散装置105は、クライアント100−1、100−2からの通信を、後段負荷分散装置106−1、106−2及びSSLアクセラレータ装置112−1、112−2への振り分けのみを例えばラウンドロビン等で行い、後段負荷分散装置106−1、106−2及びSとLアクセラレータ装置112−1、112−2が、サーバ110−1〜110−4の負荷分散やサーバ110−5、110−6に対するアクセラレータ処理を実施する。

0006

このように負荷分散を前段と後段で機能分担することで、負荷分散装置自身が通信のボトルネックとなることを防ぐことができる。
特開2003−122731号公報

発明が解決しようとする課題

0007

しかしながら、このような従来の多段負荷分散方法にあっては、後段負荷分散装置106−1、106−2やSSLアクセラレータ装置112−1、112−2が振り分けているサーバ110−1〜110−6の故障状態負荷状態に関係なく、前段負荷分散装置105がクライアント要求を負荷分散させてしまう問題がある。

0008

この問題は、前段負荷分散装置105では、単純に、後段負荷分散装置106−1、106−2やSSLアクセラレータ装置112−1、112−2を振分先サーバとみなして管理しているため、後段負荷分散装置106−1、106−2やSSLアクセラレータ装置112−1、112−2後段の装置自身故障や高負荷にならない限り、エンドに位置するサーバ110−1〜110−6が故障したり高負荷になっても、前段負荷分散装置105は後段負荷分散装置106−1、106−2やSSLアクセラレータ装置112−1、112−2へ通常時と同じようにクライアント要求を負荷分散してしまう。

0009

その結果、例えばサーバ110−2が故障した場合、故障したサーバ110−2が属する後段負荷分散装置106−1の他のサーバ110−1の負荷が高くなり、全体から見れば、あるサーバに負荷が集中してしまうことになる。

0010

またSSLアクセラレータ装置112−1に接続したサーバ110−5が故障した場合には、クライアント要求をSSLアクセラレータ装置112−1へ振り分けてしまうと、サーバ110−5の故障により応答が全く得られず、クライアント100−1、100−2からみれば通信不可となってしまう問題がある。

0011

本発明は、サーバの負荷や故障等の状態を前段負荷分散装置で取得して後段負荷制御装置に対する負荷分散を動的に決定して反映させる多段負荷分散装置及び方法を提供することを目的とする。

課題を解決するための手段

0012

図1は本発明の原理説明図である。本発明は、図1(A)のように、ネットワークに接続された前段負荷分散装置14と、前段負荷分散装置14に接続された複数の後段負荷分散装置16と、後段負荷分散装置16毎に接続された1又は複数のサーバ20から構成され、クライアント11からの要求を前段負荷分散装置14からいずれかの後段負荷分散装置16に分散した後にサーバ20のいずれかに分散する多段負荷分散装置10を対象とする。

0013

このような多段負荷分散装置として本発明は、後段負荷分散装置16に、自分に接続しているサーバ20の状態を前段負荷分散装置14に伝達する負荷状態伝達部24を設け、前段負荷分散装置14に、後段負荷分散装置16の負荷状態伝達部24からの伝達情報に基づいてサーバの状態を判断してクライアントからの要求を振り分け制御する動的分散制御部22を設けたことを特徴とする。

0014

ここで、本発明による負荷状態の伝達方法には、情報通知型情報要求型、両者を組合わせた複合型がある。

0015

情報通知型の場合、図1(B)のように、後段負荷分散装置16の負荷状態伝達部は、自分に接続したサーバ20からのクライアント応答パケットにサーバ20の状態を示す伝達情報を埋め込んで通知し、前段負荷分散装置14の動的分散制御部は、クライアント応答パケットから伝達情報を抽出して振り分け制御する。

0016

具体的には、後段負荷分散装置の負荷状態伝達部は、自分に接続したサーバからのクライアント応答パケットのヘッダにサーバIPアドレスを埋め込んで通知し、前段負荷分散装置の動的分散制御部は、クライアント応答パケットのヘッダからサーバIPアドレスを抽出し、正常に動作している後段負荷分散装置毎サーバ台数を認識して振り分け制御する。

0017

情報要求型の場合、後段負荷分散装置の負荷状態伝達部は、前段負荷分散装置から要求に対し自分に接続しているサーバの状態を示す情報を応答し、前段負荷分散装置の動的分散制御部は、後段負荷分散装置にサーバの状態を示す情報を要求すると共に、後段負荷分散装置からの応答情報からサーバの状態を認識して振り分け制御する。

0018

複合型の場合、後段負荷分散装置の負荷状態伝達部は、第1モードの設定状態で、自分に接続したサーバからのクライアント応答パケットにサーバの状態を示す伝達情報を埋め込んで通知し、第2モードの設定状態で、前段負荷分散装置からの要求に対し自分に接続しているサーバの状態を示す情報を応答し、また、前段負荷分散装置の動的分散制御部は、第1モードの設定状態で、クライアント応答パケットから伝達情報を抽出して振り分け制御し、第2モードの設定状態で、後段負荷分散装置にサーバの状態を示す情報を要求すると共に、後段負荷分散装置からの応答情報からサーバの状態を認識して振り分け制御する。

0019

また複合型にあっては、第1モードの設定状態で、前段負荷分散装置は、負荷分散比の計算タイミングで後段負荷分散装置からクライアント応答パケットが受信されなかった場合に、第2モードの設定状態に切り替える。

0020

また第1モードの設定状態で、前段負荷分散装置はクライアントからの要求頻度が低いことを判別した場合に、第2モードの設定状態に切り替える。

0021

更に、第1モードの設定状態で、後段負荷分散装置の負荷状態伝達部は、自分に接続したサーバからのクライアント応答パケットのヘッダにサーバIPアドレスを埋め込んで通知し、前段負荷分散装置の動的分散制御部は、クライアント応答パケットのヘッダからサーバIPアドレスを抽出し、正常に動作している後段負荷分散装置毎のサーバ台数を認識して振り分け制御する。

0022

本発明は多段負荷分散方法を提供する。本発明は、ネットワークに接続された前段負荷分散装置と、前段負荷分散装置に接続された複数の後段負荷分散装置と、後段負荷分散装置毎に接続された1又は複数のサーバから構成され、クライアントからの要求を前記前段負荷分散装置からいずれかの前記後段負荷分散装置に分散した後に前記サーバのいずれかに分散する多段負荷分散方法に於いて、
後段負荷分散装置に接続しているサーバの状態を前段負荷分散装置に伝達する負荷状態伝達ステップと、
負荷状態伝達ステップによる伝達情報に基づいてサーバの状態を判断してクライアントからの要求を振り分け制御する動的分散制御ステップと、
を備えたことを特徴とする。

0023

本発明は、情報通知型の多段負荷分散装置を構成する前段負荷分散装置で実行されるプログラムを提供する。

0024

このプログラムは、ネットワークに接続された前段負荷分散装置と、前段負荷分散装置に接続された複数の後段負荷分散装置と、後段負荷分散装置毎に接続された1又は複数のサーバから構成され多段負荷分散装置における負荷分散装置のコンピュータに、
後段負荷分散装置から受信したクライアント応答パケットのヘッダに埋め込まれたサーバIPアドレスを抽出して後段負荷分散装置毎の稼動サーバ台数を認識する負荷状況認識ステップと、
稼動サーバ台数に基づいてクライン要求パレットを振り分け制御する分配ステップと、
を実行させることを特徴とする。

0025

本発明は、情報通知型の多段負荷分散装置を構成する前段負荷分散装置で実行されるプログラムを提供する。このプログラムは、ットワークに接続された前段負荷分散装置と、前段負荷分散装置に接続された複数の後段負荷分散装置と、後段負荷分散装置毎に接続された1又は複数のサーバから構成され多段負荷分散装置における後段負荷分散装置のコンピュータに、
サーバから受信したクライアント応答パケットのヘッダにサーバIPアドレスを埋め込んで前記前段分散装置に送信するステップを実行させることを特徴とする。

0026

本発明は、情報要求型の多段負荷分散装置を構成する前段負荷分散装置で実行されるプログラムを提供する。このプログラムは、ネットワークに接続された前段負荷分散装置と、前段負荷分散装置に接続された複数の後段負荷分散装置と、後段負荷分散装置毎に接続された1又は複数のサーバから構成され多段負荷分散装置における前段負荷分散装置のコンピュータに、
後段負荷分散装置にサーバの状態を示す情報を要求する要求ステップと、
後段負荷分散装置毎の応答情報から稼動サーバ台数を認識する負荷状況認識ステップと、
稼動サーバ台数に基づいてクライン要求パレットを振り分け制御する分配ステップと、
を実行させることを特徴とする。

0027

本発明は、情報要求型の多段負荷分散装置を構成する前段負荷分散装置で実行されるプログラムを提供する。このプログラムは、ネットワークに接続された前段負荷分散装置と、前段負荷分散装置に接続された複数の後段負荷分散装置と、後段負荷分散装置毎に接続された1又は複数のサーバから構成され多段負荷分散装置における前記後段負荷分散装置のコンピュータに、
前段負荷分散装置からの情報要求に対し自分に接続しているサーバの状態を示す情報を応答する応答ステップを実行させることを特徴とする。

0028

尚、本発明の多段負荷分散方法の詳細は、本発明の多段負荷分散装置の場合と基本的に同じになる。

発明の効果

0029

本発明によれば、前段負荷分散装置は後段負荷分散装置からサーバ情報を常時取得することで、サーバの高負荷や故障といった状態を認識し、常に正常に機能しているサーバを対象に分散比を計算してクライアントからの要求を後段付加分散装置に振分けるため、特定のサーバに負荷が集中したり、故障したサーバにクライアントからの要求を振り分けて通信不可となることを確実に防ぎ、エンド側に位置するサーバの状態を略リアルタイムで認識し、サーバ状況に適合して最適化された負荷分散を動的に行うことができる。

0030

また前段負荷分散装置は、HTTP等の標準プロトコルの場合、後段負荷分配装置によりサーバからのクライアント応答パケットのヘッダに埋め込まれたサーバIPアドレスを抽出することで、簡単且つ確実にサーバ情報を取得することができる。

0031

またSSL等の暗号化によりクライアント応答パケットにサーバ情報を埋め込むことができない場合には、前段負荷分散装置から後段負荷分配装置にサーバ情報を要求して通知させることで、簡単且つ確実にサーバ情報を取得することができる。

0032

更に、通常は第1モードを設定し、前段負荷分散装置は、後段負荷分配装置によりサーバからのクライアント応答パケットのヘッダに埋め込まれたサーバIPアドレスを抽出するが、後段負荷分散装置やサーバの一時的なスローダウンにより、分散比率の計算タイミングでクライアント応答パケットを受信できなかった場合や、クライアントからの要求頻度が低い場合、第2モードを設定し、前段負荷分散装置から後段負荷分配装置にサーバ情報を要求して通知させることで、サーバ情報を確実に取得し、そのときのサーバ状態に応じた最適な負荷分散を動的に実現できる。

発明を実施するための最良の形態

0033

図2は情報通知型のシステム構成をとる本発明の多段負荷分散装置のブロック図である。図2において、本発明の多段負荷分散装置10は前段負荷分散装置14と後段負荷分散装置16−1、16−2で構成される。多段負荷分散装置10はインターネット12を介してクライアント11−1、11−2が接続されており、また後段負荷分散装置16−12にはエンドサーバとしてサーバ20−1、20−1が接続され、また後段負荷分散装置16−2にはエンドサーバとしてサーバ20−3、20−4が接続されている。

0034

このような本発明による多段負荷分散装置10にあっては、例えばクライアント11−1が「http://www.a.com」にリクエストをだし、ネームサーバ名前解決によりあて先IPアドレスとして例えば前段負荷分散装置14を仮想サーバとした例えばIPアドレス「10.10.1.100」が得られると、クライアント11−1はインターネット12を介して多段負荷分散装置10の前段負荷分散装置14上に割り振られた仮想サーバにアクセスする。

0035

具体的にはクライアント11−1のIPアドレスを「172.16.10.55」とし、また前段負荷分散装置14のIPアドレスを「10.10.1.100」とするとクライアント11−1は
ソースIPアドレス=172.16.10.55
あて先IPアドレス=10.10.1.100
としてHTTP要求パケットをインターネット12を介して前段負荷分散装置14に送信する。尚、ソースIPアドレスにはポート番号も設定されるが省略している。

0036

前段負荷分散装置14はクライアント11−1からのHTTP要求パケットを受信すると、2台の後段負荷分散装置16−1、16−2のうちから後の説明で明らかにする本発明の処理により計算された分散比に従って、例えば後段負荷分散装置16−1を選択してHTTP要求パケットを転送する。

0037

具体的には前段負荷分散装置14でソースIPアドレスはそのままであて先IPアドレスを後段負荷分散装置16−1のIPアドレス「192.168.255.10」に変換してパケットを送信する。

0038

後段負荷分散装置16−1は現在動作しているサーバ20−1、20−2の中から設定された負荷分散アルゴリズムに従って最適なサーバ、例えばサーバ20−1を選択して処理を行い、具体的にはHTTP要求パケットのソースIPアドレスはそのままであて先IPアドレスをサーバ20−1のIPアドレス「192.168.250.10」に変換してパケットを送出する。

0039

クライアント要求パケットを受信したサーバ20−1は要求内容に応じたHTTP応答パケットを作成し、
ソースIPアドレス=192.168.250.10
あて先IPアドレス=192.168.250.10
としてパケットを後段負荷分散装置16−1に送る。

0040

後段負荷分散装置16−1はあて先IPアドレスを「10.10.1.100」に変換して前段負荷分散装置14に送る。前段負荷分散装置14はソースIPアドレスはそのままで、あて先IPアドレスを「172.16.10.55」としてインターネット12に送出し、これをクライアント11−1がHTTP応答パケットを受信してウェブページ表示などを行う。

0041

尚、後段負荷分散装置16−1に設定された負荷分散アルゴリズムとしては一般的に使われる負荷分散アルゴリズムである、例えば順番にサーバを選択するラウンドロビン方式、処理しているコネクション数が最小のサーバを選択する最小接続方式あるいは一番早く応答しているサーバを選択する最速方式などを用いる。

0042

本発明の多段負荷分散装置10にあっては情報通知型の構成により前段負荷分散装置14で後段負荷分散装置16−1、16−2に接続しているエンドサーバとしてのサーバ20−1〜20−4の状態を示すサーバ情報を取得し、サーバ情報に基づいて後段負荷分散装置16−1、16−2への分散先を決定するようにしている。

0043

このため前段負荷分散装置14は動的分散制御部22が設けられ、後段負荷分散装置16−1、16−2には負荷状態伝達部24−1、24−2が設けられている。後段負荷分散装置16−1、16−2に設けた負荷状態伝達部24−1、24−2は、自分に接続しているサーバの状態を前段負荷分散装置14に伝達する機能をもち、この実施形態は情報通知型の形態をとることから、負荷状態伝達部24−1、24−2は自分に接続したサーバからのクライアント応答パケットにサーバの状態を示す伝達情報を埋め込んで通知する。

0044

具体的には負荷状態伝達部24−1は後段負荷分散装置16−1に接続しているサーバ20−1または20−2からのHTTP応答パケットのヘッダにサーバのIPアドレスを埋め込んで前段負荷分散装置14に送る。

0045

前段負荷分散装置14に設けている動的分散制御部22は、後段負荷分散装置16−1、16−2の負荷状態伝達部24−1、24−2からの伝達情報に基づいてサーバ20−1〜20−4の状態を判断してクライアント11−1、11−2からのHTTP要求パケットの振り分けを制御する。

0046

この動的分散制御部22の情報通知型の携帯における処理としては、後段負荷分散装置16−1、16−2の負荷状態伝達部24−1、24−2でHTTP応答パケットのヘッダに埋め込まれたサーバIPアドレスを抽出してサーバリストを作成し、正常に稼動している後段負荷分散装置16−1、16−2のそれぞれにおけるサーバ台数を認識し、稼動サーバ台数から分散比を計算し、計算した分散比によってHTTP要求パケットの振り分け先を決定する。

0047

図3図2の前段負荷分散装置14と後段負荷分散装置16−1を取り出して機能構成を示したブロック図である。図3において、前段負荷分散装置14はインターネット12に接続される送受信部26、後段負荷分散装置16−1に接続される送受信部30を有し、その間に要求パケットアドレス変換部28、応答パケットアドレス変換部32を設けている。

0048

更に動的分散制御部22が設けられ、動的分散制御部22にはIPアドレス抽出部34、サーバリスト36及び分散比計算部38が設けられている。要求パケットアドレス変換部28はHTTP要求パケットのあて先IPアドレスを前段負荷分散装置14から動的分散制御部22で決定した後段負荷分散装置16−1または16−2のIPアドレスに変換する。

0049

応答パケットアドレス変換部32は送受信部30で受信した例えば後段負荷分散装置16−1からのHTTP応答パケットのあて先アドレスを後段負荷分散装置16−1のIPアドレスから要求元のクライアントのIPアドレスに変換する。

0050

動的分散制御部22に設けたIPアドレス抽出部34は送受信部30で受信した後段負荷分散装置16−1からのHTTP応答パケットに埋め込まれているサーバ20−1または20−2のIPアドレスを抽出してサーバリスト36に登録する。

0051

分散比計算部38は一定の計算タイミングごとにサーバリスト36を参照し、サーバリスト36に登録されているサーバIPアドレスから後段負荷分散装置16−1、16−2ごとに例えば稼動サーバ台数を取得し、稼動サーバ台数に基づいて後段負荷分散装置16−1、16−2に対する分散比を計算し、次の分散比計算タイミングまでの間、計算した分散比に従ったHTTP要求パケットの後段負荷分散装置16−1、16−2に対する振り分け先の決定処理を行う。

0052

後段負荷分散装置16−1には前段負荷分散装置14と接続する送受信部40、サーバ20−1、20−2を接続する送受信部44、要求パケットアドレス変換部42、応答パケットアドレス変換部46、分散制御部48及び負荷状態伝達部18−1が設けられ、負荷状態伝達部18−1にはIPアドレス埋込部50が設けられている。

0053

要求パケットアドレス変換部42は送受信部40で受信した前段負荷分散装置14からのHTTP要求パケットのあて先IPアドレスを例えばサーバ20−1のIPアドレスに変換する。

0054

応答パケットアドレス変換部46は例えばサーバ20−1からのHTTP応答パケットのあて先アドレスを前段負荷分散装置14のIPアドレスに変換する。分散制御部48は予め設定したラウンドロビー方式、最小接続方式あるいは最速接続方式などの一般分散アルゴリズムに従ってHTTP要求パケットをサーバ20−1または20−2のいずれかに割り振る。

0055

負荷状態伝達部18−1はサーバ20−1、20−2からのHTTP応答パケットを送受信部44で受信した際に、HTTP応答パケットのヘッダにソースIPアドレスとなるサーバ20−1または20−2のIPアドレスを埋め込んで前段負荷分散装置14に送信させる。

0056

図4図3における多段負荷分散装置の説明図である。図14(A)はクライアント11−1から本発明の多段負荷分散装置10に対しHTTP要求パケットが送信された場合であり、前段負荷分散装置14で分散比にしたがって後段負荷分散装置16−2に振り分けられ、エンドサーバとしてサーバ20−3、20−4に振り分けられる。サーバ20−4からのHTTP応答パケットは後段負荷分散装置16−2、前段負荷分散装置14からインターネット12を介してクライアント11−1に送られる。

0057

図4(B)は図4(A)のパケット転送における各部の処理を示している。クライアント11−1にあってはHTTP要求52によりパケットを送信し、前段負荷分散装置14による動的負荷分散制御により後段負荷分散装置16−1に振り分けられ、さらにサーバ20−1に送られる。

0058

サーバ20−1はHTTP応答54を行ってHTTP応答パケット56を送信し、これを受けて後段負荷分散装置16−1はHTTP応答パケット56にサーバ20−1のサーバ情報60を埋め込んだHTTP応答パケット56−2を前段負荷分散装置14に送る。

0059

前段負荷分散装置14はHTTP応答パケット56−2からサーバ情報60を抽出し、例えばサーバ稼動台数に基づいた分散比の計算にしたがって動的にHTTP要求パケットの後段負荷分散装置16−1、16−2に対する振り分けを行う。

0060

図5図4(B)におけるHTTP応答パケットの説明図である。図5(A)は図4(B)のサーバ20−1が送信したオリジナルのHTTP応答パケットとであり、ヘッダ62とボディ63で構成されている。

0061

図5(B)は図4(B)の後段負荷分散装置16−1でサーバ20−1のサーバ情報としてヘッダ62の部分にサーバIPアドレス64を埋め込んだHTTP応答パケット56−2である。このHTTP応答パケット56−2をヘッダ62に対しては追加的にサーバIPアドレス64として「X−LDServerIP:192.168.251.13」を格納しており、それより前のヘッダ情報に変更がないことからヘッダ情報としての機能は何ら損なわれることはない。

0062

このHTTP応答パケット56−2は前段負荷分散装置14で受信された際にヘッダ62からサーバIPアドレス64を抽出し、サーバリスト36に登録する。ヘッダアドレス64の抽出がすんだらヘッダ62からこれを削除することが望ましいが、ヘッダ62に残しておいたとしてもクライアントまでのパケット処理では無視されることから特に問題はない。

0063

図6図3の前段負荷分散装置14に設けたサーバリスト36の説明図である。図6(A)はサーバリスト36であり、分散装置について名前IPアドレスが設けられ、この分散装置に対応してサーバIPアドレスを登録するようにしている。図6(B)は図4(A)におけるサーバ20−1〜20−4のIPアドレスの一覧である。図4においてはサーバ20−2が故障しているためサーバ20−2からのHTTP応答パケットは受信されず、このためサーバリスト36には後段負荷分散装置16−1に対応してサーバ20−1のIPアドレスが登録され、また後段負荷分散装置16−2に対応してサーバ20−3、20−4のサーバIPアドレスが登録されている。

0064

図3の前段負荷分散装置14に示した分散比計算部38は図6(A)のサーバリスト36に登録されたエンドサーバの稼動サーバ台数から例えば以下の計算式によって後段負荷分散装置16−1、16−2への分散比を決定する。
(分散比)=(分散先送受信の余裕度)+(分散先配下の稼動サーバ台数)×(重み)
・・・・(1)

0065

例えば重みを「5」とし、分散先装置となる後段負荷分散装置16−1、16−2自身の負荷は考慮せずに「0」とすると、図6(A)のサーバリスト36に従った後段負荷分散装置16−1、16−2への分散比は次のようになる。

0066

後段負荷分散装置16−1:0+1×5=5
後段負荷分散装置16−2:0+2×5=10

0067

従って後段負荷分散装置16−1、16−2に対し
(後段負荷分散装置16−1):(後段負荷分散装置16−2)=1:2
比率で振り分ける。

0068

更に後段負荷分散装置16−1、16−2の管理下にあるサーバ20−1、20−2または20−3、20−4のすべてが故障した場合、クライアントのHTTP要求パケットに対し後段負荷分散装置16−1、16−2は全サーバ故障のHTTP応答パケットを返す。

0069

前段負荷分散装置14は例えば後段負荷分散装置16−1、16−2からの全サーバ故障のHTTP応答パケットを受信すると送信元となった後段負荷分散装置16−1、16−2への振り分けを抑止する。その後サーバ20−1、20−2の復旧を検出する方法としては次の2つの方法がある。

0070

(1)定期的に前段負荷分散装置14から全サーバ故障を通知した後段負荷分散装置16−1にHTTP要求パケットを送信し、その応答パケットを監視する。
(2)クライアントからのHTTP要求パケットを何回に1回、全サーバが故障した後段負荷分散装置に振り分け、その応答パケットを監視する。

0071

いずれの方法の場合も全サーバ故障となっているいずれかのエンドサーバのサーバ情報が埋め込まれたHTTP応答パケットが返信されてきたら、前段負荷分散装置14はエンドサーバ復旧と判断して動的振り分け処理再開する。

0072

図7図3の情報通知型の実施形態における前段負荷分散装置、後段負荷分散装置またサーバの処理のタイムチャートである。図7において、クライアント11−1がステップS1でHTTP要求パケットを送信すると、前段負荷分散装置14がステップS101でこれを受信し、その計算されている分散比に従った動的負荷分散制御により振り分け先として例えば後段負荷分散装置16−1を決定し、HTTP要求パケットのあて先アドレスを前段負荷分散装置14から後段負荷分散装置16−1に変換してパケットを送信する。

0073

後段負荷分散装置16−1はステップS201であらかじめ設定した例えばラウンドロビン方式の負荷分散制御に従って振り分け先としてサーバ20−1を決定し、あて先IPアドレスを後段負荷分散装置16−1からサーバ20−1にアドレス変換してパケットを送信する。

0074

サーバ20−1はステップS301でHTTP要求パケットを受信してそのデータから必要な処理を行い、ステップS302でソースIPアドレスをサーバ20−1、あて先IPアドレスを後段負荷分散装置16−1としたHTTP応答パケットを送信する。

0075

後段負荷分散装置はステップS202で応答元となるサーバ20−1のサーバIPアドレスをHTTP応答パケットのヘッダに埋め込み、あて先アドレスを前段負荷分散装置14に変換して送信する。

0076

前段負荷分散装置14はステップS101で受信したHTTP応答パケットのヘッダからサーバIPアドレスを抽出してサーバリストに登録した後にあて先アドレスをクライアント11−1のIPアドレスに変換して送出する。尚、この際にヘッダからサーバIPアドレスを除去してパケットを送信するようにしても良い。

0077

クライアント11−1はステップS2で前段負荷分散装置14からのHTTP応答パケットを受信して受信したデータによりウェブページ表示などの処理を行う。

0078

前段負荷分散装置14はステップS103で抽出したサーバIPアドレスをサーバリストに登録した後、ステップS104で分散比の計算タイミングか否かチェックしており、計算タイミングに達するとステップS105でサーバリストに基づき分散比を計算し、ステップS106で分散比を更新する。

0079

これによって分散比の計算タイミングのサイクルごとにその間におけるサーバの稼動状況に応じた分散比が計算され、サーバの稼動状況に動的に対応した最適な前段負荷分散装置から後段負荷分散装置に対する分散先の割り当てを行う動的分散制御を行うことができる。

0080

図8図3における前段負荷分散装置14における前段負荷分散処理フローチャートである。図8において、前段負荷分散処理はステップS1でクライアントからのHTTP要求パケットの受信の有無をチェックしており、パケット受信があるとステップS2に進み、あて先アドレスを分散比に基づく後段負荷分散装置のIPアドレスに変換して送信する。

0081

ステップS3にあってはHTTP応答パケットの受信の有無をチェックしており、パケットを受信するとステップS4でヘッダからIPアドレスを抽出してサーバリストに登録した後、ステップS5でサーバIPアドレスを除去してパケットを送信する。またステップS6で分散比の計算タイミングをチェックしており計算タイミングに達するとステップS7に進みサーバリストに基づき分散比を計算して更新する。このようなステップS1〜S7の処理をステップS8で停止指示があるまで繰り返す。

0082

図9図3の後段負荷分散装置16−1、16−2における後段負荷分散処理のフローチャートである。図9において、後段負荷分散処理はステップS1でクライアントのHTTP要求パケットの受信の有無をチェックしており、パケットを受信するとステップS2であて先アドレスを例えばラウンドロビン方式により決定したサーバIPアドレスに変換して送信する。

0083

またステップS3でHTTP応答パケットの受信の有無をチェックしており、パケットを受信するとステップS4でヘッダに送信元のサーバIPアドレスを埋め込んで、パケットを送信する。このようなステップS1〜S4の処理をステップS5で停止指示があるまで繰り返す。

0084

図10は情報要求型の構成をとる本発明の多段負荷分散装置のブロック図である。図10の実施形態は、多段負荷分散装置10の前段負荷分散装置14に接続する後段負荷分散装置16−1、16−2に加え、SSLアクセラレータ装置18−1、18−2を配置した場合であり、SSLアクセラレータ装置18−1、18−2の場合には、後段負荷分散装置16−1、16−2のようにサーバからのHTTP応答パケットにサーバ情報を埋め込むことができないことから、この実施形態にあってはサーバ情報を取得する方法として情報要求型の構成をとっている。

0085

ここでSSLアクセラレータ装置18−1、18−2は、サーバ認証クライアント認証暗号化通信を行うことができるプロトコルを実行している。周知のように、クライアント10−1、10−2のウェブブラウザにあっては、HTTPとSSLを使ったHTTPについてはURLの違い、即ち「http://」と「https://」により区別している。一方、多段負荷分散装置10を含むサーバ側にあっては、HTTPはポート番号80番を使用し、SSLを使用したHTTPはポート番号443を使うことで、両者の通信を区別している。

0086

このように後段負荷分散装置16−1、16−2側にSSLアクセラレータ装置18−1、18−2を分散先として配置した場合についても、前段負荷分散装置14には動的分散制御部22が設けられ、一方、後段負荷分散装置16−1、16−2、SSLアクセラレータ装置18−1、18−2には負荷状態伝達部24−1〜24−4が設けられ、両者の間で情報要求型の構成によりサーバ情報を前段負荷分散装置14で取得できるようにしている。

0087

図11図10の前段負荷分散装置14と後段負荷分散装置16−1の機能構成のブロック図である。前段負荷分散装置14は、送受信部26、30、要求パケットアドレス変換部28、応答パケットアドレス変換部32を備えており、これは図3情報通信型の場合と同じである。

0088

一方、動的分散制御部22には、情報要求型に固有な構成として負荷状態要求部70を設けている。負荷状態要求部70は、一定時間間隔で後段負荷分散装置16−1、16−2、SSLアクセラレータ装置18−1、18−2に対しサーバ情報を要求する。負荷状態要求部70によるサーバ情報要求のプロトコルは、TCP−IPプロトコルを使用するものであれば適宜のアプリケーションプログラムとして実現することができる。

0089

負荷状態要求部70は、一定時間間隔でサーバ状態要求を行って取得したサーバ情報に基づき、例えば稼動サーバ台数を取得してサーバリスト36に登録する。分散比計算部38は、一定の計算タイミングごとにサーバリスト36の稼動サーバ台数に基づき、後段負荷分散装置16−1、16−2及びSSLアクセラレータ装置18−1、18−2に対する分散比を計算し、クライアントからのHTTP要求パケットの振り分け先を動的に決定する。

0090

後段負荷分散装置16−1は、送受信部40、44、要求パケットアドレス変換部42、応答パケットアドレス変換部46、分散制御部48を備え、これは図3の情報通知型の場合と同じである。更に、負荷状態伝達部18−1に、状態要求型に固有な負荷状態応答部72を設けている。

0091

負荷状態応答部72は、前段負荷分散装置14に設けた負荷状態要求部70からのサーバ情報の要求を受信した際に、そのとき送受信部44に接続している稼動中のサーバの情報、例えば稼動サーバ情報を前段負荷分散装置14に応答送信する。

0092

図12図11の前段負荷分散装置14に設けたサーバリスト36の説明図である。いま、図10においてサーバ20−2とサーバ20−5の2台が故障などにより停止していたとすると、前段負荷分散装置14の負荷状態要求部70からのサーバ情報の要求に対し、後段負荷分散装置16−1、16−2及びSSLアクセラレータ装置18−1、18−2は、自分に接続している稼動中のサーバの台数を通知し、これを受信してサーバリスト36に登録する。

0093

図12は、そのときのサーバリスト36の説明図であり、分散先装置の名前として後段負荷分散装置16−1、16−2及びSSLアクセラレータ装置18−1、18−2が、それぞれのIPアドレスと共に登録され、これに対応して情報要求型の処理により取得したエンドサーバの稼動台数を登録している。

0094

図11の分散比計算部38は、図12のサーバリスト36におけるエンドサーバ稼動台数に基づき、情報通知型の場合と同様、前記(1)式に従って後段負荷分散装置への分散比を計算する。図12のサーバリスト36に従った後段負荷分散装置への分散比は次のようになる。

0095

後段負荷分散装置16−1:0+1×5=5
後段負荷分散装置16−2:0+2×5=10
SSLアクセラレータ装置:18−1:0+0×5=0(=振り分け対象外)
SSLアクセラレータ装置:18−2:0+1×5=5

0096

したがって、この場合には
(装置16−1):(装置16−2):(装置18−1):(装置18−2)=1:2:0:1
の比率で振り分けることになる。

0097

図13図10の情報通知型の実施形態におけるクライアント前段負荷分散装置、後段負荷分散装置及びサーバの処理を示したタイムチャートである。

0098

図13において、クライアント10−1がステップS1でHTTP要求パケットを送信すると、前段負荷分散装置14のステップS101、後段負荷分散装置16−1のステップS201、サーバ20−1のステップS301の処理により、図7の情報通知型の場合と同様、HTTP要求パケットの負荷分散による振り分けにより、サーバに対するパケット送信が行われる。

0099

このクライアントからのHTTP要求パケットを受信したサーバ20−1は、ステップS302、ステップS202、ステップS102の各装置におけるアドレス変換を経て、クライアント10−1にステップS2でHTTP応答パケットを送信する。

0100

一方、前段負荷分散装置14にあっては、ステップS103で負荷情報要求タイミングか否かチェックしており、負荷情報要求タイミングを判別すると、ステップS104で後段負荷分散装置16−1を含む分散先の装置に対し負荷情報を要求する。これを受けて後段負荷分散装置16−1は、ステップS203で負荷情報として例えば自分に接続しているエンドサーバの稼動台数を通知する。

0101

前段負荷分散装置14は、ステップS105で後段負荷分散装置16−1を含む振分先の装置から受信した負荷情報即ちサーバ稼動台数を取得してサーバリストに登録する。続いて、ステップS106で分散比の計算タイミングか否かチェックしており、計算タイミングに達すると、ステップS107でサーバリストのサーバ稼動台数に基づき分散比を計算し、ステップS108で分散比を更新する。

0102

図14図11における前段負荷分散装置14による分散処理のフローチャートである。図14において、前段負荷分散処理は、ステップS1でクライアントからのHTTP要求パケットの受信を判別すると、ステップS2で宛先アドレスを分散比に基づく振り分け先の後段負荷分散装置のアドレスに変換して送信する。

0103

またステップS3でHTTP応答パケットを受信すると、ステップS4で宛先IPアドレスをクライアントに変換して送信する。またステップS5で負荷状態要求タイミングを判別すると、ステップS6で後段負荷分散装置及びSSLアクセラレータ装置にサーバ情報を要求する。

0104

またステップS7で後段負荷分散装置及びSSLアクセラレータ装置からサーバ情報を受信すると、ステップS8で例えばサーバ稼動台数をサーバリストに登録する。更にステップS9で分散比の計算タイミングを判別すると、ステップS10でサーバリストに基づき分散を比計算して更新する。このステップS1〜S10の処理を、ステップS11で停止指示があるまで繰り返す。

0105

図15図11の後段負荷分散装置における分散処理のフローチャートであり、SSLアクセラレータ装置の場合も同じ処理となる。この後段負荷分散処理にあっては、ステップS1でクライアントのHTTP要求の受信を判別すると、ステップS2で例えばラウンドロビーにより決定したサーバアドレスに宛先IPアドレスを変換して送信する。

0106

またステップS3でHTTP応答パケットの受信を判別した際には、ステップS4で宛先IPアドレスを前段負荷分散装置14に変換してパケットを送信する。更にステップS5でサーバ情報要求を受信した場合には、ステップS6に進み、サーバ情報として例えば、自分に接続しているサーバの稼働台数を通知する。このステップS1〜S6の処理を、ステップS7で停止指示があるまで繰り返す。

0107

図16図3の情報通知型と図10の情報要求型を組み合わせた複合型の構成をとる本発明の多段負荷分散装置のブロック図であり、この複合型の全体構成は図2と同じであるが、前段負荷分散装置14と後段負荷分散装置16−1、16−2が、図10に示す機能構成を備える。

0108

複合型の多段負荷分散装置は、基本的には情報通知型の処理を第1モードとして設定して、HTTP要求パケットに埋め込まれたサーバ情報を抽出して分散比率を決定している。しかしながら、情報通知型だけでは、後段負荷分散装置やエンドサーバなどの1時的なスローダウンにより分散比の計算タイミングでHTTP応答パケットを受信できなかった場合、エンドサーバ情報が得られない可能性が生ずる。

0109

またクライアントからの要求頻度が低い場合には後段負荷分散装置に振り分ける要求頻度も少なくなり、その結果、要求が振り分けられていない稼動中のエンドサーバが発生し、そのエンドサーバについてもサーバ情報が取得できないことになる。そこで、通常の運用状態でエンドサーバの情報が取得できないような状態が発生した場合には、第1モードとして設定している情報通知型の形態から第2モードとして設定する情報要求型の形態に切り替えてエンドサーバ情報を取得する。

0110

図16は複合型の多段負荷分散装置における前段負荷分散装置14と後段負荷分散装置16−1について機能構成を示している。前段負荷分散装置14は図3の情報通知型の場合と同様、送受信部26、30、要求パケットアドレス変換部28、応答パケットアドレス変換部32及び動的分散制御部22を設けている。また動的分散制御部22に設けたIPアドレス抽出部34、サーバリスト36および分散比計算部38も、図3の情報通知型と同じである。これに加えて動的分散制御部22に、更に、情報要求型として機能するため負荷状態要求部70を設けている。

0111

一方、後段負荷分散装置16−1にあっては、図3の情報通知型と同様、送受信部40、44、要求パケットアドレス変換部42、応答パケットアドレス変換部46、分散制御部48及び負荷状態伝達部24−1を備え、負荷状態伝達部24−1にはIPアドレス埋込部50を設けている。これに加え負荷状態伝達部24−1に、情報要求型に対応した負荷状態応答部72を設けている。

0112

図17図16の複合型における前段負荷分散処理のフローチャートである。図17において、複合型の前段負荷分散処理は、ステップS1で第1モードとして情報通知型の動作モードを設定し、ステップS2で第1モード負荷分散処理を実行する。この第1モード負荷分散処理は図18の第1モード前段負荷分散処理に示す処理であり、ステップS1〜S7は図8の前段負荷分散処理のステップS1〜S7の処理と同じである。

0113

図17のステップS3にあっては、分散比の計算タイミングでサーバ情報が取得されたか否かチェックしており、取得できれば、ステップS4でクライアントからの要求頻度が閾値以下か否かチェックしており、閾値を超えていれば、ステップS5で停止指示があるまで、ステップS1からの第1モード設定による負荷分散処理を実行している。

0114

ステップS3で分散比の計算タイミングでサーバ情報が取得できなかった場合、あるいはステップS4でクライアントからの要求頻度が閾値以下であった場合には、ステップS6に進み、情報要求型の形態となる第2モードを設定し、ステップS7で第2モード負荷分散処理を実行する。ステップS7の第2モード負荷分散処理は図19の第2モード前段負荷分散処理のステップS1〜S10に示す処理であり、これは図14のステップS1〜S10に示した情報要求型の前段負荷分散処理と同じである。

0115

再び図17を参照するに、ステップS8にあっては、分散比の計算タイミングでサーバ情報が取得できたか否かチェックしており、取得できなければステップS9でクライアントの要求頻度が閾値以下か否かチェックしており、閾値以下であれば、ステップS10で停止指示があるまで、ステップS6からの第2モードの設定による負荷分散処理を実行している。

0116

ステップS8で分散比の計算タイミングでサーバ情報が取得できた場合、あるいはステップS9でクライアントからの要求頻度が閾値を超えた場合には、ステップS1の第1モードの設定を行って、ステップS2で第1モード負荷分散処理に戻る。

0117

図20図16の複合型における後段負荷分散装置16−1における分散処理のフローチャートである。図20の後段負荷分散処理にあっては、ステップS1で前段負荷分散装置から第1モード設定通知の受信の有無をチェックしており、設定通知を受信すると、ステップS2で第1モード負荷分散処理を実行する。

0118

続いてステップS3で前段負荷分散装置14から第2モード設定通知があったか否かチェックしており、設定通知を受信すると、ステップS4で第2モード負荷分散処理を実行する。このようなステップS1〜S4の処理を、ステップS5で停止指示があるまで繰り返す。

0119

図21図20のステップS2における後段負荷分散装置における第1モード負荷分散処理のフローチャートであり、このステップS1〜S4の処理は、図9の情報通知型の後段負荷分散処理に示したステップS1〜S4の処理と同じである。

0120

図22図20のステップS4の第2モード負荷分散処理のフローチャートであり、このステップS1〜S6の処理は、図15に示した情報要求型の場合の後段負荷分散装置におけるステップS1〜S6の処理と同じである。

0121

また本発明にあっては、図2及び図10の前段負荷分散装置14及び後段負荷分散装置16−1、16−2及びSSLアクセラレータ装置18−1、18−2で実行する前段負荷分散処理のプログラム及び後段負荷分散処理のプログラムを提供するものであり、これらのプログラムは図8図9図14図15及び図17図22に示したフローチャートの内容を持つ。

0122

なお本発明は、その目的と利点を損なうことのない適宜の変形を含む。また上記の実施形態の情報要求型にあっては、後段型の装置としてHTTPに対応した後段負荷分散装置とSSLアクセラレータ装置を配置した場合を例に取るものであったが、これ以外にNAT装置及びファイアウォール装置などの様々な機能を有する装置を振り分け先として配置し、エンドサーバを接続するようにしてもよい。更に本発明は、上記の実施形態に示した数値による限定は受けない。

0123

ここで本発明の特徴を列挙すると次の付記のようになる。
(付記)
(付記1)
ネットワークに接続された前段負荷分散装置と、前記前段負荷分散装置に接続された複数の後段負荷分散装置と、前記後段負荷分散装置毎に接続された1又は複数のサーバから構成され、クライアントからの要求を前記前段負荷分散装置からいずれかの前記後段負荷分散装置に分散した後に前記サーバのいずれかに分散する多段負荷分散装置に於いて、
前記後段負荷分散装置に、自分に接続しているサーバの状態を前記前段負荷分散装置に伝達する負荷状態伝達部を設け、
前記前段負荷分散装置に、前記後段負荷分散装置の負荷状態伝達部からの伝達情報に基づいて前記サーバの状態を判断して前記クライアントからの要求を振り割け制御する動的分散制御部を設けたことを特徴とする多段負荷分散装置。(1)

0124

(付記2)
付記1記載の多段負荷分散装置に於いて、
前記後段負荷分散装置の負荷状態伝達部は、自分に接続したサーバからのクライアント応答パケットに前記サーバの状態を示す伝達情報を埋め込んで通知し、
前記前段負荷分散装置の動的分散制御部は、前記クライアント応答パケットから前記伝達情報を抽出して振り分け制御することを特徴とする多段負荷分散装置。

0125

(付記3)
付記1記載の多段負荷分散装置に於いて、
前記後段負荷分散装置の負荷状態伝達部は、自分に接続したサーバからのクライアント応答パケットのヘッダにサーバIPアドレスを埋め込んで通知し、
前記前段負荷分散装置の動的分散制御部は、前記クライアント応答パケットのヘッダから前記サーバIPアドレスを抽出し、正常に動作している前記後段負荷分散装置毎のサーバ台数を認識して振り分け制御することを特徴とする多段負荷分散装置。(2)

0126

(付記4)
付記1記載の多段負荷分散装置に於いて、
前記後段負荷分散装置の情報伝達部は、前段負荷分散装置から要求に対し自分に接続しているサーバの状態を示す情報を応答し、
前記前段負荷分散装置の動的分散制御部は、前記後段負荷分散装置にサーバの状態を示す情報を要求すると共に、前記後段負荷分散装置からの応答情報から前記サーバの状態を認識して振り分け制御することを特徴とする多段負荷分散装置。(3)

0127

(付記5)
付記1記載の多段負荷分散装置に於いて、
前記後段負荷分散装置の負荷状態伝達部は、第1モードの設定状態で、自分に接続したサーバからのクライアント応答パケットに前記サーバの状態を示す伝達情報を埋め込んで通知し、第2モードの設定状態で、前段負荷分散装置からの要求に対し自分に接続しているサーバの状態を示す情報を応答し、
前記前段負荷分散装置の動的分散制御部は、前記第1モードの設定状態で、前記クライアント応答パケットから前記伝達情報を抽出して振り分け制御し、前記第2モードの設定状態で、前記後段負荷分散装置にサーバの状態を示す情報を要求すると共に、前記後段負荷分散装置からの応答情報から前記サーバの状態を認識して振り分け制御することを特徴とする多段負荷分散装置。

0128

(付記6)
付記1記載の多段負荷分散装置に於いて、前記第1モードの設定状態で、前記前段負荷分散装置における負荷分散比の計算のタイミングで後段負荷分散装置からクライアント応答パケットが受信されなかった場合に、前記第2モードの設定状態に切り替えることを特徴とする多段負荷分散装置。

0129

(付記7)
付記1記載の多段負荷分散装置に於いて、前記第1モードの設定状態で、前記前段負荷分散装置でクライアントからの要求頻度が低いことを判別した場合に、前記第2モードの設定状態に切り替えることを特徴とする多段負荷分散装置。

0130

(付記8)
付記5記載の多段負荷分散装置に於いて、前記第1モードの設定状態で、
前記後段負荷分散装置の負荷状態伝達部は、自分に接続したサーバからのクライアント応答パケットのヘッダにサーバIPアドレスを埋め込んで通知し、
前記前段負荷分散装置の動的分散制御部は、前記クライアント応答パケットのヘッダから前記サーバIPアドレスを抽出し、正常に動作している前記後段負荷分散装置毎のサーバ台数を認識して振り分け制御することを特徴とする多段負荷分散装置。

0131

(付記9)
ネットワークに接続された前段負荷分散装置と、前記前段負荷分散装置に接続された複数の後段負荷分散装置と、前記後段負荷分散装置毎に接続された1又は複数のサーバから構成され、クライアントからの要求を前記前段負荷分散装置からいずれかの前記後段負荷分散装置に分散した後に前記サーバのいずれかに分散する多段負荷分散方法に於いて、
前記後段負荷分散装置に接続しているサーバの状態を前記前段負荷分散装置に伝達する負荷状態伝達ステップと、
前記負荷状態伝達ステップによる伝達情報に基づいて前記サーバの状態を判断して前記クライアントからの要求を振り割け制御する動的分散制御ステップと、
を備えたことを特徴とする多段負荷分散方法。(4)

0132

(付記10)
付記9記載の多段負荷分散方法に於いて、
前記負荷状態伝達ステップは、前記後段負荷分散装置によりサーバからのクライアント応答パケットに前記サーバの状態を示す伝達情報を埋め込んで通知し、
前記動的分散制御ステップは、前記前段負荷分散装置により前記クライアント応答パケットから前記伝達情報を抽出して振り分け制御することを特徴とする多段負荷分散方法。

0133

(付記11)
付記9記載の多段負荷分散方法に於いて、
前記負荷状態伝達ステップは、前記後段負荷分散装置によりサーバからのクライアント応答パケットのヘッダに前記サーバのIPアドレスを埋め込んで通知し、
動的分散制御ステップは、前記前段負荷分散装置により前記クライアント応答パケットのヘッダから前記サーバIPアドレスを抽出し、正常に動作している前記後段負荷分散装置毎のサーバ台数を認識して振り分け制御することを特徴とする多段負荷分散方法。

0134

(付記12)
付記9記載の多段負荷分散方法に於いて、
負荷情報伝達ステップは、前記後段負荷分散装置により前段負荷分散装置から要求に対し自分に接続しているサーバの状態を示す情報を応答し、
動的分散制御ステップは、前記後段負荷分散装置にサーバの状態を示す情報を要求すると共に、前記前段負荷分散装置により前記後段負荷分散装置からの応答情報から前記サーバの状態を認識して振り分け制御することを特徴とする多段負荷分散方法。

0135

(付記13)
付記9記載の多段負荷分散方法に於いて、
前記負荷状態伝達ステップは、前記後段負荷分散装置により、第1モードの設定状態で、サーバからのクライアント応答パケットに前記サーバの状態を示す伝達情報を埋め込んで通知し、第2モードの設定状態で、前段負荷分散装置から要求に対し自分に接続しているサーバの状態を示す情報を応答し、
前記動的分散制御ステップは、前記前段負荷分散装置により、前記第1モードの設定状態で、前記クライアント応答パケットから前記伝達情報を抽出して振り分け制御し、前記第2モードの設定状態で、前記後段負荷分散装置にサーバの状態を示す情報を要求すると共に、前記後段負荷分散装置からの応答情報から前記サーバの状態を認識して振り分け制御することを特徴とする多段負荷分散方法。

0136

(付記14)
付記9記載の多段負荷分散方法に於いて、前記第1モードの設定状態で、前記前段負荷分散装置における負荷分散比の計算のタイミングで後段負荷分散装置からクライアント応答パケットが受信されなかった場合に、前記第2モードの設定状態に切り替えることを特徴とする多段負荷分散方法。

0137

(付記15)
付記9記載の多段負荷分散方法に於いて、前記第1モードの設定状態で、前記前段負荷分散装置でクライアントからの要求頻度が低いことを判別した場合に、前記第2モードの設定状態に切り替えることを特徴とする多段負荷分散方法。

0138

(付記16)
付記13記載の多段負荷分散方法に於いて、前記第1モードの設定状態で、前記負荷状態伝達部は、前記後段負荷分散装置によりサーバからのクライアント応答パケットのヘッダにサーバIPアドレスを埋め込んで通知し、
前記動的分散制御ステップは、前記前段負荷分散装置により、前記クライアント応答パケットのヘッダから前記IサーバIPアドレスを抽出し、正常に動作している前記後段負荷分散装置毎のサーバ台数を認識して振り分け制御することを特徴とする多段負荷分散方法。

0139

(付記17)
ネットワークに接続された前段負荷分散装置と、前記前段負荷分散装置に接続された複数の後段負荷分散装置と、前記後段負荷分散装置毎に接続された1又は複数のサーバから構成され多段負荷分散装置における前段負荷分散装置のコンピュータに、
前記後段負荷分散装置から受信したクライアント応答パケットのヘッダに埋め込まれたサーバIPアドレスを抽出して前記後段負荷分散装置毎の稼動サーバ台数を認識する負荷状況認識ステップと、
前記稼動サーバ台数に基づいてクラアント要求パケットを振り分け制御する分配ステップと、
を実行させることを特徴とするプログラム。(5)

0140

(付記18)
ネットワークに接続された前段負荷分散装置と、前記前段負荷分散装置に接続された複数の後段負荷分散装置と、前記後段負荷分散装置毎に接続された1又は複数のサーバから構成され多段負荷分散装置における前記後段負荷分散装置のコンピュータに、
前記サーバから受信したクライアント応答パケットのヘッダにサーバIPアドレスを埋め込んで前記前段分散装置に送信するステップを実行させることを特徴とするプログラム。

0141

(付記19)
ネットワークに接続された前段負荷分散装置と、前記前段負荷分散装置に接続された複数の後段負荷分散装置と、前記後段負荷分散装置毎に接続された1又は複数のサーバから構成され多段負荷分散装置における前段負荷分散装置のコンピュータに、
前記後段負荷分散装置にサーバの状態を示す情報を要求する要求ステップと、
前記後段負荷分散装置毎の応答情報から稼動サーバ台数を認識する負荷状況認識ステップと、
前記稼動サーバ台数に基づいてクライアント要求パケットを振り分け制御する分配ステップと、
を実行させることを特徴とするプログラム。

0142

(付記20)
ネットワークに接続された前段負荷分散装置と、前記前段負荷分散装置に接続された複数の後段負荷分散装置と、前記後段負荷分散装置毎に接続された1又は複数のサーバから構成され多段負荷分散装置における前記後段負荷分散装置のコンピュータに、
前記前段負荷分散装置からの情報要求に対し自分に接続しているサーバの状態を示す情報を応答する応答ステップを実行させることを特徴とするプログラム。

図面の簡単な説明

0143

本発明の原理説明図
情報通知型のシステム構成をとる本発明による多段負荷分散装置のブロック図
図2の前段負荷分散装置と後段負荷分散装置の機能構成のブロック図
図3における多段負荷分散処理の説明図
図4におけるHTTP応答パケットの説明図
図3の前段負荷分散装置に設けたサーバリストの説明図
図3の情報通知型の実施形態におけるクライアント、前段負荷分散装置、後段負荷分散装置及びサーバの処理のタイムチャート
図3における前段負荷分散処理のフローチャート
図3における後段負荷分散処理のフローチャート
情報要求型の構成を取る本発明の多段負荷分散装置のブロック図
図10の前段負荷分散装置と後段負荷分散装置の機能構成のブロック図
図11の前段負荷分散装置に設けたサーバリストの説明図
図10の情報通知型の実施形態におけるクライアント、前段負荷分散装置、後段負荷分散装置及びサーバの処理のタイムチャート
図11における前段負荷分散処理のフローチャート
図11における後段負荷分散処理のフローチャート
情報通知型と情報要求型の組合わせた複合型の構成を取る本発明の多段負荷分散装置のブロック図
図16における前段負荷分散処理のフローチャート
図17のステップS2における第1モード前段負荷分散処理のフローチャート
図17のステップS7における第2モード前段負荷分散処理のフローチャート
図16における後段負荷分散処理のフローチャート
図20のステップS2における第1モード後段負荷分散処理のフローチャート
図20のステップS4における第2モード後段負荷分散処理のフローチャート
従来の負荷分散装置の説明図
従来の多段負荷分散装置の説明図

符号の説明

0144

10:多段負荷分散装置
11、11−1、11−2:クライアント
12:インターネット
14:前段負荷分散装置
16、16−1、16−2:後段負荷分散装置
18−1、18−2:SSLアクセラレータ装置
20、20−1〜20−6:サーバ
22:動的分散制御部
24、24−1〜24−4:負荷状態伝達部
26、30、40、44:送受信部
28、42:要求パケットアドレス変換部
32、46:応答パケットアドレス変換部
34:IPアドレス抽出部
36:サーバリスト
38:分散比計算部
48:分散制御部
50:IPアドレス埋込部
52:HTTP要求
54:HTTP応答
56−1、56−2:パケット
58:埋込
60:サーバ情報
62:ヘッド
63:ホディ
64:サーバIPアドレス
70:負荷状態要求部
72:負荷状態応答部

ページトップへ

この技術を出願した法人

この技術を発明した人物

ページトップへ

関連する挑戦したい社会課題

該当するデータがありません

関連する公募課題

該当するデータがありません

ページトップへ

技術視点だけで見ていませんか?

この技術の活用可能性がある分野

分野別動向を把握したい方- 事業化視点で見る -

ページトップへ

おススメ サービス

おススメ astavisionコンテンツ

新着 最近 公開された関連が強い技術

この 技術と関連性が強い技術

関連性が強い 技術一覧

この 技術と関連性が強い人物

関連性が強い人物一覧

この 技術と関連する社会課題

該当するデータがありません

この 技術と関連する公募課題

該当するデータがありません

astavision 新着記事

サイト情報について

本サービスは、国が公開している情報(公開特許公報、特許整理標準化データ等)を元に構成されています。出典元のデータには一部間違いやノイズがあり、情報の正確さについては保証致しかねます。また一時的に、各データの収録範囲や更新周期によって、一部の情報が正しく表示されないことがございます。当サイトの情報を元にした諸問題、不利益等について当方は何ら責任を負いかねることを予めご承知おきのほど宜しくお願い申し上げます。

主たる情報の出典

特許情報…特許整理標準化データ(XML編)、公開特許公報、特許公報、審決公報、Patent Map Guidance System データ