JP2008250806A - ネットワーク機器、アクセス制御方法及びアクセス制御プログラム - Google Patents

ネットワーク機器、アクセス制御方法及びアクセス制御プログラム Download PDF

Info

Publication number
JP2008250806A
JP2008250806A JP2007093045A JP2007093045A JP2008250806A JP 2008250806 A JP2008250806 A JP 2008250806A JP 2007093045 A JP2007093045 A JP 2007093045A JP 2007093045 A JP2007093045 A JP 2007093045A JP 2008250806 A JP2008250806 A JP 2008250806A
Authority
JP
Japan
Prior art keywords
request
server group
server
client
access
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.)
Withdrawn
Application number
JP2007093045A
Other languages
English (en)
Inventor
Hidetoshi Suganuma
秀敏 菅沼
Toyoharu Kitagami
豊晴 北上
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2007093045A priority Critical patent/JP2008250806A/ja
Publication of JP2008250806A publication Critical patent/JP2008250806A/ja
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

【課題】階層構造を成すサーバ群に対するリクエストの適切なアクセス制限を行うことができるネットワーク機器、アクセス制御方法及びアクセス制御プログラムを提供することを目的とする。
【解決手段】アクセス制限を行うネットワーク機器12であって、リクエストの内容から何れの階層のサーバ群で処理されるかを振り分け設定情報に基づいて判別するリクエスト種判別処理手段と、判別したサーバ群の負荷状況をコネクション情報から取得し、アクセス制限を行うかを判別するリクエスト可否判別処理手段と、リクエスト及びレスポンスに応じてコネクション情報がサーバ群の現在の負荷状況を表すように更新するカウンタ処理手段と、アクセス制限を行うかの判別結果に従って、リクエストが処理されると判別したサーバ群へのリクエストの送信又はアクセス制限を行うルータ機能手段とを有することにより上記課題を解決する。
【選択図】 図2

Description

本発明はネットワーク機器、アクセス制御方法及びアクセス制御プログラムに係り、特に階層構造を成すサーバ群に対するクライアントからのリクエストを受信し、リクエストのアクセス制限を行うネットワーク機器、そのネットワーク機器におけるアクセス制御方法及びネットワーク機器で実行されるアクセス制御プログラムに関する。
近年では、処理を行うサーバが階層構造を成し、クライアントからのリクエストを処理する3階層システムが知られるようになった。3階層システムは、Webサーバ,アプリケーションサーバ(以下、APサーバと呼ぶ),データベースサーバ(以下、DBサーバと呼ぶ)が階層構造を成すものが広く知られている
図1は、Webサーバ,APサーバ,DBサーバが階層構造を成す3階層システムの構成図である。3階層システムは、クライアント11,負荷分散装置12,Webサーバ13,負荷分散装置14,APサーバ15及びDBサーバ16で構成される。
クライアント11はフロントエンドとして動作する。APサーバ15及びDBサーバ16はバックエンドとして動作する。Webサーバ13はフロントエンド及びバックエンドの中間に位置している。クライアント11とWebサーバ13とは公衆回線及び負荷分散装置12を介して接続されている。Webサーバ13とAPサーバ15とは負荷分散装置14を介して接続されている。
ユーザの利用するクライアント11はWebブラウザが搭載されている。クライアント11からのリクエストは、初めにWebサーバ13で受け付けられる。従来の3階層システムではWebサーバ13の受け付けリクエスト数などに基づき、アクセス制限を行っていた。
なお、図1の3階層システムでは、URLリクエストにパラメータを付加して、優先制御を行う場合、優先度の判定を、負荷分散装置12及びWebサーバ13の設定によりリクエスト単位で行う。負荷分散装置14はAPサーバ15の負荷を均等にするため、URLに依らずに負荷分散を行う。このため、負荷分散装置14はAPサーバ15の直前でアクセス制限を行っていない。
特許文献1には、統計情報を利用したアクセス数制限の上限値の設定について記載されている。
特開2004−192170号公報
しかしながら、図1の三階層システムではクライアント11からのリクエストの内容に応じて、Webサーバ13,APサーバ15及びDBサーバ16の何れかが処理を行っている。
したがって、図1の三階層システムでは、Webサーバ13での受け付けリクエスト数によってアクセス制限を行ったとしても、APサーバ15及びDBサーバ16に掛かる負荷に対応できず、APサーバ15及びDBサーバ16に負荷が掛かり過ぎたり、アクセス制限を行い過ぎたりしてしまう可能性もあった。
このように、従来の三階層システムでは、Webサーバ13,APサーバ15及びDBサーバ16に掛かる負荷に応じた適切なアクセス制限を行えないという問題があった。
本発明は、上記の点に鑑みなされたもので、階層構造を成すサーバ群に対するリクエストの適切なアクセス制限を行うことができるネットワーク機器、アクセス制御方法及びアクセス制御プログラムを提供することを目的とする。
上記課題を解決するため、本発明は、階層構造を成すサーバ群に対するクライアントからのリクエストを受信し、前記リクエストのアクセス制限を行うネットワーク機器であって、前記リクエストの内容から、前記リクエストが何れの階層の前記サーバ群で処理されるかを振り分け設定情報に基づいて判別するリクエスト種判別処理手段と、前記リクエストが処理されると判別した前記サーバ群の負荷状況をコネクション情報から取得し、前記負荷状況に応じてアクセス制限を行うかを判別するリクエスト可否判別処理手段と、前記クライアントからのリクエスト及び前記クライアントへのレスポンスに応じて前記コネクション情報が前記サーバ群の現在の負荷状況を表すように更新するカウンタ処理手段と、前記リクエスト可否判別処理手段によるアクセス制限を行うかの判別結果に従って、前記リクエストが処理されると判別した前記サーバ群への前記リクエストの送信又はアクセス制限を行うルータ機能手段とを有することを特徴とする。
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、データ構造などに適用したものも本発明の態様として有効である。
上述の如く、本発明によれば、階層構造を成すサーバ群に対するリクエストの適切なアクセス制限を行うことができるネットワーク機器、アクセス制御方法及びアクセス制御プログラムを提供可能である。
次に、本発明を実施するための最良の形態を、以下の実施例に基づき図面を参照しつつ説明していく。なお、本実施例ではネットワーク機器、又はネットワーク機器の一例としての負荷分散装置を例に説明するが、実施例に限定されるものではない。
まず、本発明の概要について説明する。図2は本発明による3階層システムの概要について説明する為の模式図である。3階層システムは、複数のクライアント11,負荷分散装置12,複数のWebサーバ(Webサーバ群)13,負荷分散装置14,複数のAPサーバ(APサーバ群)15及びDBサーバ16で構成される。
クライアント11はフロントエンドとして動作する。APサーバ15及びDBサーバ16はバックエンドとして動作する。Webサーバ13はフロントエンド及びバックエンドの中間に位置している。クライアント11とWebサーバ13とは公衆回線及び負荷分散装置12を介して接続されている。Webサーバ13とAPサーバ15とは負荷分散装置14を介して接続されている。
ユーザの利用するクライアント11はWebブラウザが搭載されている。負荷分散装置12はクライアント11からのリクエストを受信する。負荷分散装置12はリクエスト内容に基づき、そのリクエストが何れの階層のサーバ、言い換えればWebサーバ13,APサーバ15及びDBサーバ16の何れで処理されるものかを判別する。
リクエスト内容を判別するためのデータとしては、URL,ドメイン名,パラメータ,拡張子,POST又はGETなどが考えられる。負荷分散装置12は、リクエストを処理すると判別したサーバ(判別した該リクエストによる処理を実行するサーバ)の負荷状況(リクエスト数、コネクション数など)に応じて、そのリクエストをアクセス制限するか否かを判別する。
このように、負荷分散装置12では、受信したリクエストが、Webサーバ13で返すリクエストかAPサーバ15で処理するリクエストかをリクエスト内容で判別して、APサーバ15へ向かうリクエストをカウントできる。したがって、負荷分散装置12ではAPサーバ15へ向かうリクエストに対してアクセス制限を行うことができる。なお、Webサーバ13は静的コンテンツのレスポンスがほとんどであるため、APサーバ15及びDBサーバ16に比べて負荷がそれほど急増しない。
また、図2の3階層システムでは、APサーバ15でリクエスト内容のチェック及び優先度の判別を行わず、負荷分散装置12で行うことにより、APサーバ15に転送されるリクエスト数を減らすことができ、APサーバ15の負荷が軽減される。
さらに、負荷分散装置12は、APサーバ15へ向かうリクエストに対し、リクエスト単位での優先制御を行っている。このため、負荷分散装置12は、Webサーバ13への振り分けを利用して、特定のリクエスト内容を付加したユーザからのリクエストを透過することでアクセス制限の対象外とし、特定のリクエスト内容を付加していないユーザからのリクエストをカウントしてアクセス制限の対象とする。
本発明による3階層システムでは、実際に処理を行うサーバの負荷状況に基づいてアクセス制限を行うため、従来の3階層システムよりも精度の高いアクセス制限を行うことができる。
ここで、本発明による3階層システムが、従来あったAPサーバ15及びDBサーバ16の負荷を直接観る方式より優れている点について説明する。図3はAPサーバ及びDBサーバの負荷を直接観る3階層システムの概要について説明する為の模式図である。図3の3階層システムではAPサーバ15に設けられたエージェント34及びDBサーバ16に設けられたエージェント35により直接、APサーバ15及びDBサーバ16のCPU負荷率などを見て、APサーバ15及びDBサーバ16の負荷状況を把握している。
図3に示した一般的なネットワーク(NW)機器31〜33を挟んだ3階層システムではアクセス制限をWebサーバ13の手前で設定する。このとき、APサーバ15の負荷というのはリクエストの発行側から見てアクセス制限を発行するネットワーク機器31の後ろ側となる。即ち、アクセス制限を発行するネットワーク機器31にリクエストが届いた時点ではAPサーバ15及びDBサーバ16に負荷が掛かっていない。
図3の3階層システムは、利用している業務が、APサーバ15及びDBサーバ16の負荷状況を緩やかに推移させるようなものであれば、APサーバ15及びDBサーバ16の負荷状況を見ているだけでも問題ない。しかし、図3の3階層システムは瞬間的にアクセス数が急増するようなことがあれば、APサーバ15及びDBサーバ16の負荷の増加を検知してネットワーク機器31にフィードバックしている間に、閾値を越えてしまうことも起こり得る。これは、アクセス制限を抜けた先で通信がロストし、業務継続のサービスレベルに影響を与える可能性が有ることを意味する。一方、このような状況を防ぐためにフィードバックの時間間隔を短くすると、図3の3階層システムでは間隔を短くした分だけ余計な通信が発生することとなり、余計なネットワーク通信量の増大を招くことにもなる。
実際に、インターネットを利用した業務システムでは、例えば販売システムに関わるものでは販売開始日時に申込みのアクセスが殺到する事象がよく見られ、負荷予測のモデルを立てづらいという事情があった。本発明による3階層システムでは、クライアント11からのリクエストがAPサーバ15に転送される前に、そのリクエストが現在のAPサーバ15及びDBサーバ16の負荷状況に及ぼす影響を考慮してアクセス制御を行うことができるので、瞬間的にアクセス数が急増するようなことがあっても、アクセス制限を抜けた先で通信がロストし、業務継続のサービスレベルに影響を与えることもない。
このように、本発明による3階層システムでは、階層構造を成すAPサーバ15及びDBサーバ16に対するリクエストの適切なアクセス制限を行うことができる以下、本発明による3階層システムの一例としての3階層インターネットシステムを実施例1として説明する。
図4は3階層インターネットシステムの一実施例の構成図である。図4に示した3階層インターネットシステムは、一部を除いて図2の3階層システムと同様である。図4の3階層インターネットシステムは、公衆回線がインターネットとなり、負荷分散装置12がネットワーク機器17となり、DBサーバ16がDBサーバ群となり、キャッシュサーバ機能41が追加された点で、図2の3階層システムと異なっている。
図4に示したネットワーク機器17は、Fire Wall機能部42,負荷分散機能部43,ルーティング機能部44,負荷分散機能部45,SSLアクセラレータ機能部46,負荷分散機能部47を有する構成である。負荷分散装置14は、Fire Wall機能部48及び負荷分散機能部49を有する構成である。
本発明による3階層インターネットシステムは、負荷分散機能部47にインテリジェンス機能を拡張することにより実現できる。なお、負荷分散機能部47では暗号化通信が復号されて平文通信になっているものとする。
ネットワーク機器17は、Fire Wall機能,Filterring機能,QoS機能,IPsec機能,SSLアクセラレータ機能,負荷分散機能,ルーティング機能及び運用管理機能などを有する。次に、本発明に関連する機能に特化してネットワーク機器17の詳細を説明する。
図5はネットワーク機器の一実施例の構成図である。図5のネットワーク機器17は、負荷分散機能部47,電文判別部51,ルーティング機能部52,振り分け設定情報記憶部56,リクエスト情報記憶部57,コネクション情報記憶部58,SorryMessage発行部59,リフレッシュ処理部60,運用管理機能部61を有している。負荷分散機能部47は、カウンタ処理部53,リクエスト種判別処理部54,リクエスト可否判別処理部55を有している。
電文判別部51は受信した電文がリクエストなのか、レスポンスなのかを判別し、その電文の次の処理を決める。負荷分散機能部47は、サイト,サービス及び優先制御を行いたい単位でグルーピングを行い、そのグルーピングに応じた識別フラグ(分類番号)を電文に付加する。そして、負荷分散機能部47はグルーピングの単位でアクセス制限の設定を行い、設定されたWebサーバ群13に対して負荷分散の振り分けを行う。
具体的に、負荷分散機能部47のリクエスト種判別処理部54は、リクエスト内容(URL,パラメータなど)に対して登録した条件に従って、電文のヘッダ部に分類番号を付加する。リクエスト内容に対する条件は、振り分け設定情報記憶部56を参照する。
リクエスト可否判別処理部55はアクセス制限の発生状況を見て、電文をWebサーバ群13に転送するのか、クライアント11にSorryMessageを返すのか(すなわちアクセス制限をかけてリクエストを通さないのか)を判別する。
カウンタ処理部53はリクエストを受信する度、分類番号別に現在のコネクションカウント数をアップ(UP)する。カウンタ処理部53はレスポンスを受信する度、分類番号別に現在のコネクションカウント数をダウン(Down)する。カウンタ処理部53はラウンドロビンによる負荷分散の中でコネクションを張るWebサーバ13(具体的な送信先のWebサーバ13)を決定する。
ルーティング機能部52は、決定された送信先へ電文を送信する。リフレッシュ処理部60は、コネクションタイムアウト時間を経過した、データキャッシュに残ったデータ項目を定期的にクリーニングする。クリーニングの際、リフレッシュ処理部60はカウンタ処理部53がカウントするコネクションカウント数を修正したあと、データキャッシュに残ったデータ項目を削除する。
SorryMessage発行部59はアクセス集中によりアクセスできない旨を簡単なメッセージ(SorryMessage)でクライアント11に伝える。また、SorryMessage発行部59はSorryMessageの発行数を単位時間/サービス単位及び累積でカウントする。運用管理機能部61は、運用管理セグメント62にコネクション量の状況やSorryMessageの発行数など、ネットワーク関連の情報を送信する。
振り分け設定情報記憶部56は、グループ分け、振り分けの条件を記憶している。リクエスト情報記憶部57は、リクエスト毎の送信元,受信先,時刻を記憶している。リクエスト情報記憶部57は、リクエストの返信もしくはリフレッシュによる消去の為の基本情報を持つ。コネクション情報記憶部58は、グループ別に現在接続中(レスポンス待ち)のリクエスト数を記憶している。
図6は電文判別部の処理手順を表したフローチャートである。ステップS1では、電文判別部51が電文を受信する。ステップS2に進み、電文判別部51は受信した電文がレスポンスであるかを判別する。レスポンスであれば(S2においてYES)、電文判別部51はステップS3に進み、受信した電文をカウンタ処理部53へ送信する。レスポンスでなければ(S2においてNO)、電文判別部51はステップS4に進み、受信した電文をリクエスト種判別処理部54へ送信する。
図7はリクエスト種判別処理部の処理手順を表したフローチャートである。ステップS11では、リクエスト種判別処理部54が電文判別部51から電文を受信する。ステップS12に進み、リクエスト種判別処理部54は、振り分け設定情報記憶部56を参照して電文のリクエスト内容と振り分け設定情報とを照合する。図8は振り分け設定情報記憶部の一例の構成図である。図8の振り分け設定情報記憶部56はリクエスト内容と分類番号とを対応付けるものである。
ステップS13に進み、リクエスト種判別処理部54は振り分け設定情報に電文のリクエスト内容と一致するものがあるかを判別する。
電文のリクエスト内容と一致するものがあれば(S13においてYES)、ステップS16に進み、リクエスト種判別処理部54は電文のリクエスト内容と一致する分類番号を振り分け設定情報から読み出し、電文のヘッダ部に追加する。ステップS17に進み、リクエスト種判別処理部54は振り分け設定情報記憶部56を参照して項目「分類番号付加以外の変更」にURLが設定されていればURL変換を行い、ステップS15に進む。
一方、電文のリクエスト内容と一致するものがなければ(S13においてNO)、リクエスト種判別処理部54はステップS14に進み、電文のヘッダ部に分類番号「NO(指示なし)」を追加する。ステップS15に進み、リクエスト種判別処理部54はヘッダ部に分類番号を追加した電文をリクエスト可否判別処理部55へ送信する。
図9はリクエスト可否判別処理部の処理手順を表したフローチャートである。ステップS21では、リクエスト可否判別処理部55がリクエスト種判別処理部54から電文を受信する。
ステップS22に進み、リクエスト可否判別処理部55はサービス別のコネクション情報記憶部58を参照して分類番号別のアクセス制限を確認する。図10はコネクション情報記憶部(サービス別)の一例の構成図である。図10のコネクション情報記憶部58は分類番号ごとにアクセス制限の発生状況が記憶されている。
ステップ23に進み、リクエスト可否判別処理部55は電文のヘッダ部に追加されている分類番号に基づき、アクセス制限が発生しているか否かを判別する。アクセス制限が発生していなければ(S23においてYES)、リクエスト可否判別処理部55はステップS24に進み、電文をカウンタ処理部53へ送信する。一方、アクセス制限が発生していれば(S23においてNO)、リクエスト可否判別処理部55はステップS25に進み、電文をSorryMessage発行部59に送信する。
図11はカウンタ処理部の処理手順を表したフローチャートである。ステップS31ではカウンタ処理部53がリクエスト可否判別処理部55から電文を受信する。ステップS32に進み、カウンタ処理部53は電文がレスポンスか否かを判別する。
電文がレスポンスであれば(S32においてYES)、カウンタ処理部53はステップS33に進み、図10のようなコネクション情報記憶部58について、電文のヘッダ部に追加されている分類番号のコネクション数カウンタから1を減算する。ステップS34に進み、カウンタ処理部53は電文のヘッダ部から分類番号を削除する。
ステップS35に進み、カウンタ処理部53は、サーバ別のコネクション情報記憶部58を参照して、ステップS31で受信した電文の送信元であるサーバとのコネクション数カウンタから1を減算する。図12は、コネクション情報記憶部(サーバ別)の一例の構成図である。図12のコネクション情報記憶部58はサーバごとにアクセス制限の発生状況が記憶されている。
ステップS36に進み、カウンタ処理部53は図13のようなリクエスト情報記憶部57を参照し、電文のあて先IPアドレスに、リクエストの送信元IPアドレスを設定した後、その電文のデータをリクエスト情報記憶部57から消去する。図13はリクエスト情報記憶部の一例の構成図である。ステップS41に進み、カウンタ処理部53はルーティング機能部52に電文を送信する。
電文がリクエストであれば(S32においてNO)、カウンタ処理部53はステップS37に進み、図10のようなコネクション情報記憶部58について、電文のヘッダ部に追加されている分類番号のコネクション数カウンタに1を加算する。カウンタ処理部53はステップS38に進み、図14の振り分け設定情報記憶部56を参照し、電文のヘッダ部に追加されている分類番号に対応した、振り分け先のサーバ候補を取得する。図14は振り分け設定情報記憶部の一例の構成図である。
ステップS39に進み、カウンタ処理部53は、サーバ別のコネクション情報記憶部58を参照し、ステップS38で取得した振り分け先のサーバ候補との現在のコネクション接続数をコネクション数カウンタから取得し、振り分け先のサーバ候補の中で一番コネクション接続数が少ないサーバを選定する。そして、カウンタ処理部53は選定したサーバのコネクション数カウンタに1を加算する。
ステップS40に進み、カウンタ処理部53は電文のヘッダ部に含まれる送信先IPアドレスに、選定したサーバのIPアドレスを設定した後、その電文のデータをリクエスト情報記憶部57に記録する。ステップS41に進み、カウンタ処理部53はルーティング機能部52に電文を送信する。
図15はルーティング機能部の処理手順を表したフローチャートである。ステップS51ではルーティング機能部52がカウンタ処理部53から電文を受信する。ステップS52に進み、電文のヘッダ部に含まれる送信先IPアドレスを読み取る。ステップS53に進み、ルーティング機能部52は電文を該当する送信先ポート番号へ送信する。
また、図16はSorryMessage発行部の処理手順を表したフローチャートである。ステップS61ではSorryMessage発行部59がリクエスト可否判別処理部55から電文を受信する。ステップS62に進み、SorryMessage発行部59は電文のヘッダ部からアクセス先サイト名および送信元IPアドレスを読み取る。
ステップS63に進み、SorryMessage発行部59は、あて先に送信元IPアドレスを設定する。ステップS64に進み、SorryMessage発行部59はSorryMessageを電文のBody部に書き込む。ステップS65に進み、SorryMessage発行部59は電文を該当する送信先ポート番号へ送信する。ステップS66に進み、SorryMessage発行部59は例えばサイト毎にSorryMessage数をカウントアップする。
図17はリフレッシュ処理部の処理手順を表したフローチャートである。ステップS71に進み、リフレッシュ処理部60はリクエスト情報記憶部57の受信時間を参照し、リフレッシュ処理を行う起動間隔(起動時間)を設定する。
ステップS72に進み、リフレッシュ処理部60はリクエスト情報記憶部57のリクエストでタイムアウト(コネクションタイムアウト)時間を経過しているリクエストを選択する。リフレッシュ処理部60はステップS73に進み、タイムアウト時間を経過しているリクエストを、分類番号別に集計する。
ステップS74に進み、リフレッシュ処理部60はリクエスト情報記憶部57からタイムアウト時間を経過しているリクエストを削除する。リフレッシュ処理部60はステップS75に進み、コネクション情報記憶部58のコネクション数カウンタを、タイムアウト時間を経過しているリクエストの数に応じて分類番号別に減算する。
ステップS76に進み、リフレッシュ処理部60はサービス稼働中であれば(S76においてYES)、ステップS77に進み、リフレッシュ処理を行う起動間隔の間、スリープしたあと、ステップS72に戻る。なお、リフレッシュ処理部60はサービス稼働中でなければ(S76においてNO)、リフレッシュ処理を終了する。
図18は運用管理機能部の処理手順を表したフローチャートである。ステップS81に進み、運用管理機能部61はサイト別のSorryMessage数を抽出する。運用管理機能部61はステップS82に進み、SorryMessage発行部59におけるSorryMessage数を0にリセットする。
ステップS83に進み、運用管理機能部61は、ステップS81で抽出したSorryMessage数を運用管理セグメント62へ送信する。ステップS84に進み、運用管理機能部61は、サービス稼働中であれば(S84においてYES)、ステップS85に進み、SorryMessage数をカウントする間隔の間、スリープしたあと、ステップS81に戻る。なお、運用管理機能部61はサービス稼働中でなければ(S84においてNO)、運用管理機能処理を終了する。
なお、本発明による3階層システムではWebブラウザを用いた場合、図19及び図20に示すように電文へパラメータを追加している。図19及び図20は電文へパラメータを追加する手順を表した模式図である。
図19は最初のアクセスを表している。クライアント11が送信したリクエストは負荷分散装置12で「NO(指示なし)」に分類された上、APサーバ15に転送される。APサーバ15は、リクエストに対するレスポンスを作成する。作成されたレスポンスにはBody部のボタンのアンカーに「http://www.service.com/next.jsp」が埋め込まれている。クライアント11はAPサーバ15によって作成されたレスポンスを受信する。
図20はユーザが画面操作を行ったことにより生じたページの遷移を表している。クライアント11が送信したリクエストは負荷分散装置12が受信する。負荷分散装置12は拡張子「jsp」によってリクエストを「A01N」に分類し、ヘッダ部に分類番号「A01N」を追加することにより、前述した優先制御やアクセス制限の判別等を行うことができるようになる。その後、リクエストはAPサーバ11に転送される。APサーバ15はリクエストに対するレスポンスを作成する。そして、クライアント11はAPサーバ15によって作成されたレスポンスを受信する。
また、本発明による3階層システムでは負荷分散装置12が単体でURLを用いた優先制御を実現できる。一般的な優先制御では、サービス毎にWebサーバ(実際はバーチャル)13を立てて、各サーバ群又はサーバ単位でのアクセス制限数をAPサーバ15でのリクエスト受付総数が変わらないように調整することによって、サービス毎にアクセスのし易さの強弱をつけたり、或いは、優先制御は業務処理を進める(画面が進行する)につれて、アプリケーションでURL(もしくはパラメータ)が変わっていく仕組みを盛り込んだりすることによって、アクセス集中による影響で業務処理が途切れないようにしている。このとき、アドレスに表示されるドメイン名,URLは便宜的に変えているだけなので、実際のコンテンツ内容に違いはない。
図21は3階層システムにおける従来の優先制御を表した模式図である。図22は3階層システムにおける本発明による優先制御を表した模式図である。図22に示した本発明による優先制御では、Webサーバ群13の構成が図21の優先制御と異なっている。
本発明による3階層システムは、負荷分散装置12の中で優先度を表す分類番号を付加できる。Webサーバ13上では、提供するコンテンツ内容が同じならば、複数のドメインやURLのサービスを1つのドメインやURLのサービスに統一して持つことが可能となる。
図22に示す本発明による優先制御は図21に示す従来の優先制御と比べて以下のようなメリットがある。第1に、本発明による優先制御では、Webサーバ13上に構築するサービスの数を減らすことができる。言い換えれば、仮想で見せるWebサーバ13が要らなくなる。例えばSSLサーバ証明書の運用コストはバーチャルホスト/実ホストに関係なく、Webサーバ13上に立てたサービスの個数に依存する仕組みを採用しているネットワークサービス提供者もある為、このようなサービス提供者のサービスを受ける場合には、Webサービス13上に立てるサービスの個数を減らすことにより、3階層システムの運用コストを削減できる。
なお、負荷分散装置12及びネットワーク機器17は、例えば図23に示すようなコンピュータシステムによって構成することもできる。図23はコンピュータシステムの一例のハードウェア構成図である。
図23は、コンピュータシステムの一例の構成図である。コンピュータシステムは、それぞれバスBで相互に接続されている入力装置81,出力装置82,ドライブ装置83,補助記憶装置84,メモリ装置85,演算処理装置86およびインターフェース装置87で構成される。
入力装置81はキーボードやマウスなどで構成され、各種信号を入力するために用いられる。出力装置82はディスプレイ装置などで構成され、各種ウインドウやデータ等を表示するために用いられる。インターフェース装置87は、モデム,LANカードなどで構成されており、インターネットやLAN等のネットワークに接続する為に用いられる。
本発明のアクセス制限プログラムは、コンピュータシステムを制御する各種プログラムの少なくとも一部である。アクセス制限プログラムは例えば記録媒体88の配布やネットワークからのダウンロードなどによって提供される。アクセス制限プログラムを記録した記録媒体88は、CD−ROM、フレキシブルディスク、光磁気ディスク等の様に情報を光学的,電気的或いは磁気的に記録する記録媒体、ROM、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることができる。
また、アクセス制限プログラムを記録した記録媒体88がドライブ装置83にセットされると、アクセス制限プログラムは記録媒体88からドライブ装置83を介して補助記憶装置84にインストールされる。ネットワークからダウンロードされたアクセス制限プログラムはインターフェース装置87を介して補助記憶装置84にインストールされる。
コンピュータシステムは、インストールされたアクセス制限プログラムを格納すると共に、必要なファイル,データ等を格納する。メモリ装置85は、コンピュータシステムの起動時に補助記憶装置84からアクセス制限プログラムを読み出して格納する。演算処理装置86はメモリ装置85に格納されたアクセス制限プログラムに従って、前述したような各種処理を実現している。
最後に、従来の3階層システムと本発明による3階層システムとを比較しながらリクエストの通信フローについて説明する。図24は一般的な3階層システムにおけるリクエストの通信フローを表した模式図である。
クライアント11からのリクエストは、DBサーバ16に格納してあるデータを参照又は更新等するとき、DBサーバ16まで転送される。また、クライアント11からのリクエストは、リクエスト毎に表示内容を変える応答文(HTMLボディ部)であるとき、APサーバ群15まで転送される。さらに、クライアント11からのリクエストは、ファイル名により一意に決まる固定ファイル(主に画像)などであるとき、Webサーバ群13まで転送される。
図25は従来の3階層システムにおけるリクエストの通信フローを表した一例の模式図である。図25は、処理内容の情報判断を行わず、通信のあて先でアクセス制限を掛けている例である
クライアント11からのリクエストは、アクセス制限が有効になっているサイトに対するものである場合、処理内容に関係なく、アクセス数が一定値に達したら負荷分散装置12によって折り返される。また、クライアント11からのリクエストは、アクセス制限が無効になっているサイトに対するものである場合、透過されるが、そのサーバで実際に処理が行われるか分からないため、アクセス制限数に十分な余裕を持たせておかなければならなかった。
図26は従来の3階層システムにおけるリクエストの通信フローを表した他の例の模式図である。図26は、サーバにエージェントを配置し、そのエージェントがサーバの負荷を見て、自動でアクセス制限を発生させる例である。
例えばエージェントはDBサーバ16のCPU負荷が規定の率まで上がったことを負荷分散装置12に通知する。エージェントが通知している最中のクライアント11からのリクエストは、当然ながらアクセス制限に掛からない。また、DBサーバ16がサイトによらず共通の場合は、DBサーバ16の負荷が下がるまで、各サイトが一律にアクセス制限対象となる。
図27は、本発明による3階層システムにおけるリクエストの通信フローを表した一例の模式図である。図27は、処理内容の情報判断を行い、アクセス制限を掛けている例である。
例えばDBサーバ16の処理を伴うアクセスが多数、且つDBサーバ16の処理を伴わないAPサーバ15の処理を伴うアクセスが少数のとき、DBサーバ16の処理を伴うアクセスは遮断される。また、APサーバ15で折り返されるリクエストはアクセス制限を透過する。
また、本発明による3階層システムでは、Webサーバ13上で処理もしくは通過するリクエスト数が少なければ、DBサーバ16の負荷と関係ないため、Webサーバ13で折り返すリクエストを受け付けることができる。
このように、本発明による3階層システムでは、リクエストの適切なアクセス制限を行うことができる。
本発明は、以下に記載する付記のような構成が考えられる。
(付記1)
階層構造を成すサーバ群に対するクライアントからのリクエストを受信し、前記リクエストのアクセス制限を行うネットワーク機器であって、
前記リクエストの内容から、前記リクエストが何れの階層の前記サーバ群で処理されるかを振り分け設定情報に基づいて判別するリクエスト種判別処理手段と、
前記リクエストが処理されると判別した前記サーバ群の負荷状況をコネクション情報から取得し、前記負荷状況に応じてアクセス制限を行うかを判別するリクエスト可否判別処理手段と、
前記クライアントからのリクエスト及び前記クライアントへのレスポンスに応じて前記コネクション情報が前記サーバ群の現在の負荷状況を表すように更新するカウンタ処理手段と、
前記リクエスト可否判別処理手段によるアクセス制限を行うかの判別結果に従って、前記リクエストが処理されると判別した前記サーバ群への前記リクエストの送信又はアクセス制限を行うルータ機能手段と
を有することを特徴とするネットワーク機器。
(付記2)
前記リクエスト種判別処理手段は、前記リクエストの内容に応じた前記サーバ群が振り分けの条件として設定される振り分け設定情報に基づいて、前記リクエストのパラメータから何れの階層の前記サーバ群で処理されるかを判別することを特徴とする付記1記載のネットワーク機器。
(付記3)
前記リクエスト可否判別処理手段は、前記サーバ群ごとに負荷状況がリクエスト数又はコネクション数により設定されているコネクション情報に基づいて、前記サーバ群への前記リクエストのアクセス制限を行うかを判別することを特徴とする付記1記載のネットワーク機器。
(付記4)
前記リクエスト可否判別処理手段によるアクセス制限を行うかの判別結果に従って、前記リクエストが処理されると判別した前記サーバ群への前記リクエストのアクセス制限を行うとき、アクセスできない旨のメッセージを前記クライアントへ送信するメッセージ発行手段を更に有することを特徴とする付記1記載のネットワーク機器。
(付記5)
階層構造を成すサーバ群に対するクライアントからのリクエストを受信し、前記リクエストのアクセス制限を行うネットワーク機器におけるアクセス制限方法であって、
前記リクエストの内容から、前記リクエストが何れの階層の前記サーバ群で処理されるかを振り分け設定情報に基づいて判別するリクエスト種判別処理ステップと、
前記リクエストが処理されると判別した前記サーバ群の負荷状況をコネクション情報から取得し、前記負荷状況に応じてアクセス制限を行うかを判別するリクエスト可否判別処理ステップと、
前記クライアントからのリクエスト及び前記クライアントへのレスポンスに応じて前記コネクション情報が前記サーバ群の現在の負荷状況を表すように更新するカウンタ処理ステップと、
前記リクエスト可否判別処理ステップでのアクセス制限を行うかの判別結果に従って、前記リクエストが処理されると判別した前記サーバ群への前記リクエストの送信又はアクセス制限を行うルータ機能ステップと
を有することを特徴とするアクセス制限方法。
(付記6)
階層構造を成すサーバ群に対するクライアントからのリクエストを受信し、前記リクエストのアクセス制限を行うネットワーク機器に、
前記リクエストの内容から、前記リクエストが何れの階層の前記サーバ群で処理されるかを振り分け設定情報に基づいて判別するリクエスト種判別処理手順と、
前記リクエストが処理されると判別した前記サーバ群の負荷状況をコネクション情報から取得し、前記負荷状況に応じてアクセス制限を行うかを判別するリクエスト可否判別処理手順と、
前記クライアントからのリクエスト及び前記クライアントへのレスポンスに応じて前記コネクション情報が前記サーバ群の現在の負荷状況を表すように更新するカウンタ処理手順と、
前記リクエスト可否判別処理手順でのアクセス制限を行うかの判別結果に従って、前記リクエストが処理されると判別した前記サーバ群への前記リクエストの送信又はアクセス制限を行うルータ機能手順と
を実行させるためのアクセス制限プログラム。
本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
Webサーバ,APサーバ,DBサーバが階層構造を成す3階層システムの構成図である。 本発明による3階層システムの概要について説明する為の模式図である。 APサーバ及びDBサーバの負荷を直接観る3階層システムの概要について説明する為の模式図である。 3階層インターネットシステムの一実施例の構成図である。 ネットワーク機器の一実施例の構成図である。 電文判別部の処理手順を表したフローチャートである。 リクエスト種判別処理部の処理手順を表したフローチャートである。 振り分け設定情報記憶部の一例の構成図である。 リクエスト可否判別処理部の処理手順を表したフローチャートである。 コネクション情報記憶部(サービス別)の一例の構成図である。 カウンタ処理部の処理手順を表したフローチャートである。 コネクション情報記憶部(サーバ別)の一例の構成図である。 リクエスト情報記憶部の一例の構成図である。 振り分け設定情報記憶部の一例の構成図である。 ルーティング機能部の処理手順を表したフローチャートである。 SorryMessage発行部の処理手順を表したフローチャートである。 リフレッシュ処理部の処理手順を表したフローチャートである。 運用管理機能部の処理手順を表したフローチャートである。 電文へパラメータを追加する手順を表した模式図(1/2)である。 電文へパラメータを追加する手順を表した模式図(2/2)である。 3階層システムにおける従来の優先制御を表した模式図である。 3階層システムにおける本発明による優先制御を表した模式図である。 コンピュータシステムの一例のハードウェア構成図である。 一般的な3階層システムにおけるリクエストの通信フローを表した模式図である。 従来の3階層システムにおけるリクエストの通信フローを表した一例の模式図である。 従来の3階層システムにおけるリクエストの通信フローを表した他の例の模式図である。 本発明による3階層システムにおけるリクエストの通信フローを表した一例の模式図である。
符号の説明
11 クライアント
12,14 負荷分散装置
13 Webサーバ
15 APサーバ
16 DBサーバ
17 ネットワーク機器
31〜33 ネットワーク(NW)機器
34,35 エージェント
42 Fire Wall機能部
43 負荷分散機能部
44 ルーティング機能部
45 負荷分散機能部
46 SSLアクセラレータ機能部
47 負荷分散機能部
48 Fire Wall機能部
49 負荷分散機能部
51 電文判定部
52 ルーティング機能部
53 カウンタ処理部
54 リクエスト種判別処理部
55 リクエスト可否判別処理部
56 振り分け設定情報記憶部
57 リクエスト情報記憶部
58 コネクション情報記憶部
59 SorryMessage発行部
60 リフレッシュ処理部
61 運用管理機能部
62 運用管理セグメント
81 入力装置
82 出力装置
83 ドライブ装置
84 補助記憶装置
85 メモリ装置
86 演算処理装置
87 インターフェース装置
88 記録媒体

Claims (5)

  1. 階層構造を成すサーバ群に対するクライアントからのリクエストを受信し、前記リクエストのアクセス制限を行うネットワーク機器であって、
    前記リクエストの内容から、前記リクエストが何れの階層の前記サーバ群で処理されるかを振り分け設定情報に基づいて判別するリクエスト種判別処理手段と、
    前記リクエストが処理されると判別した前記サーバ群の負荷状況をコネクション情報から取得し、前記負荷状況に応じてアクセス制限を行うかを判別するリクエスト可否判別処理手段と、
    前記クライアントからのリクエスト及び前記クライアントへのレスポンスに応じて前記コネクション情報が前記サーバ群の現在の負荷状況を表すように更新するカウンタ処理手段と、
    前記リクエスト可否判別処理手段によるアクセス制限を行うかの判別結果に従って、前記リクエストが処理されると判別した前記サーバ群への前記リクエストの送信又はアクセス制限を行うルータ機能手段と
    を有することを特徴とするネットワーク機器。
  2. 前記リクエスト種判別処理手段は、前記リクエストの内容に応じた前記サーバ群が振り分けの条件として設定される振り分け設定情報に基づいて、前記リクエストのパラメータから何れの階層の前記サーバ群で処理されるかを判別することを特徴とする請求項1記載のネットワーク機器。
  3. 前記リクエスト可否判別処理手段は、前記サーバ群ごとに負荷状況がリクエスト数又はコネクション数により設定されているコネクション情報に基づいて、前記サーバ群への前記リクエストのアクセス制限を行うかを判別することを特徴とする請求項1記載のネットワーク機器。
  4. 階層構造を成すサーバ群に対するクライアントからのリクエストを受信し、前記リクエストのアクセス制限を行うネットワーク機器におけるアクセス制限方法であって、
    前記リクエストの内容から、前記リクエストが何れの階層の前記サーバ群で処理されるかを振り分け設定情報に基づいて判別するリクエスト種判別処理ステップと、
    前記リクエストが処理されると判別した前記サーバ群の負荷状況をコネクション情報から取得し、前記負荷状況に応じてアクセス制限を行うかを判別するリクエスト可否判別処理ステップと、
    前記クライアントからのリクエスト及び前記クライアントへのレスポンスに応じて前記コネクション情報が前記サーバ群の現在の負荷状況を表すように更新するカウンタ処理ステップと、
    前記リクエスト可否判別処理ステップでのアクセス制限を行うかの判別結果に従って、前記リクエストが処理されると判別した前記サーバ群への前記リクエストの送信又はアクセス制限を行うルータ機能ステップと
    を有することを特徴とするアクセス制限方法。
  5. 階層構造を成すサーバ群に対するクライアントからのリクエストを受信し、前記リクエストのアクセス制限を行うネットワーク機器に、
    前記リクエストの内容から、前記リクエストが何れの階層の前記サーバ群で処理されるかを振り分け設定情報に基づいて判別するリクエスト種判別処理手順と、
    前記リクエストが処理されると判別した前記サーバ群の負荷状況をコネクション情報から取得し、前記負荷状況に応じてアクセス制限を行うかを判別するリクエスト可否判別処理手順と、
    前記クライアントからのリクエスト及び前記クライアントへのレスポンスに応じて前記コネクション情報が前記サーバ群の現在の負荷状況を表すように更新するカウンタ処理手順と、
    前記リクエスト可否判別処理手順でのアクセス制限を行うかの判別結果に従って、前記リクエストが処理されると判別した前記サーバ群への前記リクエストの送信又はアクセス制限を行うルータ機能手順と
    を実行させるためのアクセス制限プログラム。
JP2007093045A 2007-03-30 2007-03-30 ネットワーク機器、アクセス制御方法及びアクセス制御プログラム Withdrawn JP2008250806A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007093045A JP2008250806A (ja) 2007-03-30 2007-03-30 ネットワーク機器、アクセス制御方法及びアクセス制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007093045A JP2008250806A (ja) 2007-03-30 2007-03-30 ネットワーク機器、アクセス制御方法及びアクセス制御プログラム

Publications (1)

Publication Number Publication Date
JP2008250806A true JP2008250806A (ja) 2008-10-16

Family

ID=39975646

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007093045A Withdrawn JP2008250806A (ja) 2007-03-30 2007-03-30 ネットワーク機器、アクセス制御方法及びアクセス制御プログラム

Country Status (1)

Country Link
JP (1) JP2008250806A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010152818A (ja) * 2008-12-26 2010-07-08 Nomura Research Institute Ltd サーバシステム
JP2011138202A (ja) * 2009-12-25 2011-07-14 Fujitsu Ltd サーバ装置、サーバ負荷分散装置、サーバ負荷分散方法、及びプログラム
JP2015162061A (ja) * 2014-02-27 2015-09-07 日本電信電話株式会社 分散処理システム
JP6374561B1 (ja) * 2017-03-31 2018-08-15 西日本電信電話株式会社 負荷分散システム、仮想マシン構成変更方法及びコンピュータプログラム
CN115334161A (zh) * 2022-07-25 2022-11-11 盐城金堤科技有限公司 访问请求处理方法和装置、以及存储介质和电子设备

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010152818A (ja) * 2008-12-26 2010-07-08 Nomura Research Institute Ltd サーバシステム
JP2011138202A (ja) * 2009-12-25 2011-07-14 Fujitsu Ltd サーバ装置、サーバ負荷分散装置、サーバ負荷分散方法、及びプログラム
JP2015162061A (ja) * 2014-02-27 2015-09-07 日本電信電話株式会社 分散処理システム
JP6374561B1 (ja) * 2017-03-31 2018-08-15 西日本電信電話株式会社 負荷分散システム、仮想マシン構成変更方法及びコンピュータプログラム
JP2018173844A (ja) * 2017-03-31 2018-11-08 西日本電信電話株式会社 負荷分散システム、仮想マシン構成変更方法及びコンピュータプログラム
CN115334161A (zh) * 2022-07-25 2022-11-11 盐城金堤科技有限公司 访问请求处理方法和装置、以及存储介质和电子设备
CN115334161B (zh) * 2022-07-25 2023-06-27 盐城金堤科技有限公司 访问请求处理方法和装置、以及存储介质和电子设备

Similar Documents

Publication Publication Date Title
US7743095B2 (en) Device, method and computer program product for providing an alert indication
US8863266B1 (en) Dynamic throttling systems and services
US20110307948A1 (en) Extending a customer relationship management eventing framework to a cloud computing environment in a secure manner
CN103209174A (zh) 一种数据防护方法、装置及***
JP6518297B2 (ja) ウェブページのアンチウィルススキャンを実行するためのシステム及び方法
US10862995B2 (en) Internet-wide scheduling of transactions
JP2009146005A (ja) 情報処理装置および情報処理方法
JP2008097582A (ja) イベント通知装置、イベント通知方法及びイベント通知プログラム
US10560338B2 (en) Event-based data path detection
JP2008250806A (ja) ネットワーク機器、アクセス制御方法及びアクセス制御プログラム
CN101978665B (zh) 对网络通信请求的选择性过滤
JP5203919B2 (ja) サーバシステム
US7152102B2 (en) On-line wizard entry point management computer system and method
US20170223136A1 (en) Any Web Page Reporting and Capture
US11979408B2 (en) Systems and methods for controlling user access to computer resources of an organization by separated employees
JP2007034677A (ja) ディレクトリ情報提供方法、ディレクトリ情報提供装置、ディレクトリ情報提供システム、及びプログラム
CN111913732B (zh) 一种服务更新方法、装置及管理服务器、存储介质
US20070168519A1 (en) System and method for implementing personalized alerts utilizing a user registry in instant messenger
JP4333707B2 (ja) セッションタイムアウト時間決定装置、コンピュータプログラム、およびアプリケーション提供システム
JP2006268335A (ja) 電子メールシステム、電子メールシステムにおけるリンク先のフィルタ方法およびプログラム
JP5564925B2 (ja) プッシュ型サービス実現方法、システム、装置、及びプログラム
US10511687B2 (en) Systems and methods for mobile device predictive response capabilities
JP2003223403A (ja) 情報伝達方法、情報受信方法および情報伝達プログラム
JP2009176192A (ja) 電子商取引装置
JP5279601B2 (ja) サーバ装置、データ処理システム、フォーム処理方法、及びプログラム

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100601