JP6163751B2 - 判定プログラム、判定方法および判定システム - Google Patents

判定プログラム、判定方法および判定システム Download PDF

Info

Publication number
JP6163751B2
JP6163751B2 JP2012283262A JP2012283262A JP6163751B2 JP 6163751 B2 JP6163751 B2 JP 6163751B2 JP 2012283262 A JP2012283262 A JP 2012283262A JP 2012283262 A JP2012283262 A JP 2012283262A JP 6163751 B2 JP6163751 B2 JP 6163751B2
Authority
JP
Japan
Prior art keywords
child
similarity
determination
parent
correlation coefficient
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.)
Expired - Fee Related
Application number
JP2012283262A
Other languages
English (en)
Other versions
JP2014127025A (ja
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.)
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 JP2012283262A priority Critical patent/JP6163751B2/ja
Publication of JP2014127025A publication Critical patent/JP2014127025A/ja
Application granted granted Critical
Publication of JP6163751B2 publication Critical patent/JP6163751B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は、判定プログラム、判定方法および判定システムに関する。
複数階層に分かれたサーバ間でメッセージを送り合い、クライアントからのリクエストを処理するサービス提供システムが広く使用されている。図18は、サービス提供システムを含むWEBシステムの構成の一例を示す図である。図18に示すように、このWEBシステムは、クライアント10a,10b,10c,10d、ファイアウォール20、スイッチ30、サービス提供システム40、監視装置50を有する。クライアント10a,10b,10c,10dをまとめて適宜、クライアント10と表記する。
クライアント10はネットワーク60に接続される。ファイアウォール20は、ネットワーク60、スイッチ30に接続される。スイッチ30は、ファイアウォール20、サービス提供システム40、監視装置50に接続される。
クライアント10は、サービス提供システム40に対して、リクエストを送信し、サービス提供システム40からのレスポンスを受信する装置である。例えば、クライアント10は、HTTPメッセージをサービス提供システム40に送信し、URL(Uniform Resource Locator)等のパス表記で指定されるコンテントをレスポンスとして受信する。
ファイアウォール20は、ネットワーク60とサービス提供システム40との間で送受信されるデータを監視し、不正なアクセスを検出、遮断する装置である。なお、ファイアウォール20を基準としたクライアント10側が公開ネットワークとなり、ファイアウォール20を基準としたサービス提供システム40側がDMS(DeMilitarized Zone)となる。
スイッチ30は、データを受信した場合に、受信したデータの宛先にデータを送信する装置である。
サービス提供システム40は、Webサーバ40aとDBサーバ40bを有する。Webサーバ40aは、DBサーバ40bと協働して、クライアント10からのリクエストに応答する装置である。Webサーバ40aは、クライアント10からリクエストを受信した場合に、処理に使用するデータをDBサーバ40bから取得する。Webサーバ40aは、DBサーバ40bから取得したデータをリクエストに応じて変換、整形し、レスポンスとしてクライアント10に送信する。
DBサーバ40bは、Webサーバ40aからのデータ要求に応答して、自サーバの記憶装置に記憶されたデータをWebサーバ40aに送信する装置である。例えば、Webサーバ40aとDBサーバ40bとの間では、SQLによる問い合わせとその問い合わせ結果が送受信される。
監視装置50は、クライアント10、Webサーバ40a、DBサーバ40bの間で送受信される電文の送信回数や処理時間等を統計処理し、サービス提供システム40の状態を監視する装置である。電文には、Webサーバ40aからDBサーバへのリクエストとなるSQL(Structured Query Language)メッセージや、クライアント10からのHTTPメッセージに応答するWebサーバ40aのURLが含まれる。
例えば、監視装置50が、サービス提供システム40において、応答遅延などの異常を検出した場合には、管理者は応答遅延の原因となる遅延箇所を調査し、修正を行う。この時、サービス提供システム40全体で遅延が発生しているように見えても、ある一部の処理に遅延が発生しているのみであり、係る遅延がサービス提供システム40全体の遅延に影響を与えている場合がある。
図19は、WebサーバおよびDBサーバのオブジェクトの呼出関係の一例を示す図である。以下の説明では、呼出元のメッセージを親オブジェクトと表記する。また、呼び出されたメッセージを子オブジェクトと表記する。図19において、URL1a〜1cは、クライアントからのリクエストに応じて発生するメッセージであり、SQL2a〜2cのいずれかを呼び出す。SQL2a〜2cは、あるURLに応じて発生するメッセージである。ここでは、親オブジェクトを「URL」とし、子オブジェクトを「SQL」とする。
図19では、Webサーバ40aの親オブジェクト「URL1a」が、子オブジェクト「SQL2a」、「SQL2c」を呼び出す例を示している。図19では、子オブジェクト「SQL2c」に遅延が発生すると、係る遅延の影響により、親オブジェクト「URL1a」も遅延しているように見える。
ここで、呼出関係が分かれば、親オブジェクトの呼び出し先である子オブジェクトを集中的に調査することで、遅延箇所の調査時間を削減することができる。例えば、親オブジェクト「URL1a」と、子オブジェクト「SQL2a」、「SQL2c」とが呼び出し関係にあることが事前に分かっていたものとする。そうすると、親オブジェクト「URL1a」を含む処理に遅延が発生した場合に、「URL1a」の呼び出し先である「SQL2a」、「SQL2c」を集中的に調査することで、「SQL2c」の遅延を効率的に検出することができる。
呼出関係を特定する技術1について説明する。技術1は、監視装置50が通信内容を全て保存しておき、時間的に内包関係にある親オブジェクトと子オブジェクトとを、呼出関係にある親オブジェクトと子オブジェクトとして特定する技術である。
図20は、技術1を説明するための図である。図20の横軸は、時間軸である。図20に示す例では、時間帯Tにおいて、Webサーバ40aでは親オブジェクト「URL1a」が実行され、DBサーバ40bでは子オブジェクト「SQL2a」、「SQL2b」が呼び出されている。このため、技術1では、親オブジェクト「URL1a」と子オブジェクト「SQL2a」、「SQL2b」が呼出関係にあると判定する。
図20に示す時間帯Tにおいて、Webサーバ40aでは「URL1b」が実行され、DBサーバ40bでは子オブジェクト「SQL2a」、「SQL2c」が呼び出されている。このため、技術1では、親オブジェクト「URL1b」と子オブジェクト「SQL2a」、「SQL2c」が呼出関係にあると判定する。
図20に示す時間帯Tにおいて、Webサーバ40aでは「URL1c」が実行され、DBサーバ40bでは子オブジェクト「SQL2d」、「SQL2e」が呼び出されている。このため、技術1では、親オブジェクト「URL1c」と子オブジェクト「SQL2d」、「SQL2e」が呼出関係にあると判定する。
しかし、技術1のように、通信内容を全て保存して内包関係を判定するためには、一定水準以上の計算資源を有した監視装置を利用することになる。このため、より簡易的に、呼出関係にある親オブジェクトと子オブジェクトとを特定することが求められる。
より簡易的に、呼出関係にある親オブジェクトと子オブジェクトとを特定する技術として、技術2が存在する。技術2は、一定間隔の集計区間で、各オブジェクトに対するリクエスト数を計数し、オブジェクト毎のリクエスト数の時系列変化を統計値として取得する。そして、技術2は、各オブジェクトに対する統計値の相関係数を算出し、相関係数が大きくなる各オブジェクトを、呼出関係にある親オブジェクトと子オブジェクトとして判定する。
図21は、技術2を説明するための図である。図21のグラフ70,71a、71bは、それぞれ、URL1a、SQL2a,2bの統計値とする。グラフ70,71a,71bの横軸は時間軸であり、縦軸はリクエスト数である。例えば、URL1aとSQL2aとが呼出関係に有る場合には、リクエスト数の時系列変化が類似したものになるため、相関係数が高くなる。これに対して、URL1aとSQL2bとが呼出関係にない場合には、リクエスト数の時系列変化が類似しないため、相関係数が低くなる。
特開2011−258057号公報 特開2010−44742号公報
しかしながら、上述した技術では、呼出関係にあるオブジェクトを正確に判定することができないという問題がある。
実システムでは、オブジェクトの呼出関係が1対1であるとは限らず、呼出関係が多対1となる場合がある。このような場合には、ある子オブジェクトが複数の親オブジェクトから呼び出される。そうすると、呼出関係にあるオブジェクト同士であっても、相関係数が低く算出される場合があり、呼出関係にあるオブジェクトを正確に判定することができない。
1つの側面では、本発明は、呼出関係にあるオブジェクトを正確に判定することができる判定プログラム、判定方法および判定システムを提供することを目的とする。
第1の案では、コンピュータに算出する処理と、判定する処理を実行させる。算出する処理は、第1オブジェクトに対するリクエストの特徴と、第2オブジェクトに対するリクエストの特徴とを基にして、第1オブジェクト毎に、第1オブジェクトと第2オブジェクトとの類似度をそれぞれ算出する。判定する処理は、算出した類似度を基にして、第1オブジェクト毎の類似度の閾値を特定し、特定した閾値を基にして、呼出関係にある第1オブジェクトと第2オブジェクトとの組みを判定する。
1態様によれば、呼出関係にあるオブジェクトを正確に判定することができるという効果を奏する。
図1は、本実施例1に係る判定システムの構成を示す図である。 図2は、本実施例2に係るシステムの構成を示す図である。 図3は、本実施例2に係る判定装置の構成を示す機能ブロック図である。 図4は、リクエスト数データのデータ構造の一例を示す図である。 図5は、オブジェクト相関係数テーブルのデータ構造の一例を示す図である。 図6は、閾値テーブルのデータ構造の一例を示す図である。 図7は、呼出関係組み合わせテーブルのデータ構造の一例を示す図である。 図8は、子オブジェクトから親オブジェクトへのリストのデータ構造の一例を示す図である。 図9は、クラスタリング結果の一例を示す図である。 図10は、本実施例2に係る判定装置の処理手順を示すフローチャートである。 図11は、オブジェクト相関係数テーブル生成処理の処理手順を示すフローチャートである。 図12は、閾値テーブル生成処理の処理手順を示すフローチャートである。 図13は、その他のリクエスト数データのデータ構造の一例を示す図である。 図14は、図13に示したリクエスト数データから生成されるオブジェクト相関係数テーブルのデータ構造の一例を示す図である。 図15は、図14に示したオブジェクト相関係数テーブルから生成されるリストのデータ構造の一例を示す図である。 図16は、親オブジェクトと子オブジェクトとの呼出関係の一例を示す図である。 図17は、判定プログラムを実行するコンピュータの一例を示す図である。 図18は、サービス提供システムを含むWEBシステムの構成の一例を示す図である。 図19は、WebサーバおよびDBサーバのオブジェクトの呼出関係の一例を示す図である。 図20は、技術1を説明するための図である。 図21は、技術2を説明するための図である。
以下に、本願の開示する判定プログラム、判定方法および判定システムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
本実施例1に係る判定システムの構成について説明する。図1は、本実施例1に係る判定システムの構成を示す図である。図1に示すように、この判定システムは、第1サーバ80a、第2サーバ80b、判定装置90を有する。判定装置90は、算出部91、判定部92を有する。
算出部91は、第1サーバ80aの第1オブジェクトに対するリクエストの特徴と、前記第2サーバ80bの第2オブジェクトに対するリクエストの特徴とを基に、第1オブジェクト毎に、第1オブジェクトと第2オブジェクトとの類似度をそれぞれ算出する。
判定部92は、算出部91に算出された類似度を基にして、第1オブジェクト毎の類似度の閾値を特定し、特定した閾値を基にして、呼出関係にある第1オブジェクトと第2オブジェクトとの組みを判定する。
次に、本実施例1に係る判定システムの効果について説明する。判定システムの判定装置90は、算出部91が、第1オブジェクトに対するリクエストの特徴と、第2オブジェクトに対するリクエストの特徴とを基に、第1オブジェクト毎に、第1オブジェクトと各第2オブジェクトとの類似度をそれぞれ算出する。そして、判定部92が、第1オブジェクト毎の類似度の閾値を特定し、特定した閾値を基にして、呼出関係にある第1オブジェクトと第2オブジェクトとの組みを判定する。このため、本実施例1に係る判定システムによれば、呼出関係が多対1であっても、呼出関係にある第1オブジェクトと第2オブジェクトとの類似度の閾値を算出でき、呼出関係にあるオブジェクトを正確に判定することができる。
次に、本実施例2に係るシステムの構成について説明する。図2は、本実施例2に係るシステムの構成を示す図である。図2に示すように、このシステムは、クライアント10a,10b,10c,10d、ファイアウォール20、スイッチ30、サービス提供システム40、判定装置100を有する。クライアント10a,10b,10c,10dをまとめて適宜、クライアント10と表記する。
クライアント10はネットワーク60に接続される。ファイアウォール20は、ネットワーク60、スイッチ30に接続される。スイッチ30は、ファイアウォール20、サービス提供システム40、判定装置100に接続される。
クライアント10は、サービス提供システム40に対して、リクエストを送信し、サービス提供システム40からのレスポンスを受信する装置である。例えば、クライアント10は、HTTPメッセージをサービス提供システム40に送信し、URL等のパス表記で指定されるコンテントをレスポンスとして受信する。
ファイアウォール20は、ネットワーク60とサービス提供システム40との間で送受信されるデータを監視し、不正なアクセスを検出、遮断する装置である。なお、ファイアウォール20を基準としたクライアント10側が公開ネットワークとなり、ファイアウォール20を基準としたサービス提供システム40側がDMSとなる。
スイッチ30は、データを受信した場合に、受信したデータの宛先にデータを送信する装置である。
サービス提供システム40は、Webサーバ40aとDBサーバ40bを有する。Webサーバ40aは、DBサーバ40bと協働して、クライアント10からのリクエストに応答する装置である。Webサーバ40aは、クライアント10からリクエストを受信した場合に、処理に使用するデータをDBサーバ40bから取得する。Webサーバ40aは、DBサーバ40bから取得したデータをリクエストに応じて変換、整形し、レスポンスとしてクライアント10に送信する。
DBサーバ40bは、Webサーバ40aからのデータ要求に応答して、自サーバの記憶装置に記憶されたデータをWebサーバ40aに送信する装置である。例えば、Webサーバ40aとDBサーバ40bとの間では、SQLによる問い合わせとその問い合わせ結果が送受信される。
判定装置100は、クライアント10、Webサーバ40a、DBサーバ40bの間で送受信されるリクエストを基にして、呼出関係となる親オブジェクトと子オブジェクトとを判定する装置である。その他の処理は、図18に示した監視装置50と同様であるため、説明を省略する。
なお、判定装置100は、スイッチ30のミラーリング機能等を利用して、クライアント10、Webサーバ40a、DBサーバ40bの間で送受信されるリクエストを傍受する。ミラーリング機能は、単一または複数ポートを指定し、指定したポートで流れているパケットを複製し、別途指定したポートに複製したパケットを出力するものである。判定装置100は、このミラーリング機能を利用することで、サービス提供システム40に影響を与えることなく、処理を実行することができる。
次に、図2に示した判定装置100の構成について説明する。図3は、本実施例2に係る判定装置の構成を示す機能ブロック図である。図3に示すように、この判定装置100は、通信部110、入力部120、表示部130、記憶部140、制御部150を有する。
通信部110は、スイッチ30を介して他の装置とデータ通信を行う処理部である。例えば、通信部110は、スイッチ30からクライアント10、Webサーバ40a、DBサーバ40bの間で送受信されるリクエストの情報を取得する処理部である。後述する制御部150は、通信部110を介して他の装置とデータをやり取りする。通信部110は、例えば、通信装置に対応する。
入力部120は、各種の情報を入力する入力装置である。例えば、入力部120は、キーボードやマウス、入力ボタン、タッチパネル等に対応する。
表示部130は、各種の情報を表示する表示装置である。例えば、表示部130は、ディスプレイやタッチパネル等に対応する。
記憶部140は、リクエスト数データ141、オブジェクト相関係数テーブル142、閾値テーブル143、呼出関係組み合わせテーブル144を記憶する。記憶部140は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ(Flash Memory)などの半導体メモリ素子などの記憶装置に対応する。
リクエスト数データ141は、時間毎のオブジェクトに対するリクエスト数を示す情報である。オブジェクトは、親オブジェクトおよび子オブジェクトに対応する。図4は、リクエスト数データのデータ構造の一例を示す図である。図4に示す例では、リクエスト数データ141は、一定集計間隔毎のオブジェクトに対するリクエスト数を示す。
図4の1段目では、オブジェクト「URL11」に対するリクエスト数は、「2012年7月26日10時00分〜10時00分59秒」の間に「120回」であることを示す。オブジェクト「URL11」に対するリクエスト数は、「2012年7月26日10時01分〜10時01分59秒」の間に「87回」であることを示す。オブジェクト「URL11」に対するリクエスト数は、「2012年7月26日10時02分〜10時02分59秒」の間に「92回」であることを示す。
オブジェクト相関係数テーブル142は、親オブジェクトと子オブジェクトとの相関係数を示す情報である。図5は、オブジェクト相関係数テーブルのデータ構造の一例を示す図である。図5に示すように、このオブジェクト相関係数テーブル142は、親オブジェクトと子オブジェクトと相関係数とを対応付ける。例えば、親オブジェクト「URL11」と子オブジェクト「SQL21」との相関係数は「0.87」となる。相関係数に関する詳しい説明は後述する。相関係数は、類似度の一例である。
閾値テーブル143は、呼出関係にあるといえる親オブジェクトと子オブジェクトとの相関係数の閾値を保持するテーブルである。図6は、閾値テーブルのデータ構造の一例を示す図である。例えば、図6の1段目では、子オブジェクト「SQL21」に対する閾値が「0.85」となっている。子オブジェクト「SQL21」との相関係数が「0.85」以上となる親オブジェクトが、子オブジェクト「SQL21」と呼出関係にある親オブジェクトとなる。
呼出関係組み合わせテーブル144は、呼出関係にある親オブジェクトと子オブジェクトとの組みを示す情報である。図7は、呼出関係組み合わせテーブルのデータ構造の一例を示す図である。図7に示すように、例えば、親オブジェクト「URL11」と呼出関係にある子オブジェクトは「SQL21」、「SQL22」、「SQL23」となる。
制御部150は、リクエスト数データ取得部151、算出部152、判定部153を有する。制御部150は、例えば、ASIC(Application Specific Integrated Circuit)や、FPGA(Field Programmable Gate Array)などの集積装置に対応する。また、制御部150は、例えば、CPUやMPU(Micro Processing Unit)等の電子回路に対応する。
リクエスト数データ取得部151は、スイッチ30から、クライアント10、Webサーバ40a、DBサーバ40bの間で送受信されるリクエストの情報を取得し、リクエスト数データ141を生成する処理部である。リクエスト数データ取得部151は、リクエスト数データ141を、記憶部140に格納する。
例えば、リクエスト数データ取得部151は、リクエストの情報を基にして、オブジェクト毎のリクエスト数を、所定時間間隔毎に集計することで、リクエスト数データ141を生成する。
算出部152は、リクエスト数データ141を基にして、各オブジェクト間の相関係数を算出することで、オブジェクト相関係数テーブル142を生成する。また、算出部152は、オブジェクト相関係数テーブル142を基にして、閾値テーブル143を生成する。
まず、算出部152が、リクエスト数データ141を基にして、オブジェクト相関係数テーブル142を生成する処理の一例について説明する。ここでは説明の便宜上、親オブジェクトA1と子オブジェクトB1との相関係数を算出するものとする。
算出部152は、親オブジェクトA1および子オブジェクトB1について、時間帯t、t+1、t+2、・・・、t+nのリクエスト数を特定する。算出部152は、時間帯毎に、親オブジェクトA1および子オブジェクトのリクエスト数の差の絶対値をそれぞれ算出し、各差の絶対値を合計した合計値を算出する。算出部152は、合計値が0に近づくほど、相関係数の値が1に近づき、合計値が0から離れるほど、相関係数の値が0に近づく変換テーブルを利用して、合計値を相関係数に変換することで、親オブジェクトA1と子オブジェクトとの相関係数を算出する。
算出部152は、他の親オブジェクトA1と子オブジェクトとの組みについても、同様の処理によって相関係数を算出し、オブジェクト相関係数テーブル142を生成する。なお、上記の相関係数を算出する処理は、一例である。算出部152は、その他の周知技術を利用して、親オブジェクトと子オブジェクトとの相関係数を求めても良い。
続いて、算出部152が、オブジェクト相関係数テーブル142を基にして、閾値テーブル143を生成する処理について説明する。算出部152は、オブジェクト相関係数テーブル142を基にして、子オブジェクトから親オブジェクトへのリストを生成する。図8は、子オブジェクトから親オブジェクトへのリストのデータ構造の一例を示す図である。リストは、子オブジェクト、親オブジェクト、相関係数を対応付ける。
図8に示すリスト16は、子オブジェクト「SQL21」から各親オブジェクトに対するリストである。リスト17は、子オブジェクト「SQL22」から各親オブジェクトに対するリストである。リスト18は、子オブジェクト「SQL23」から各親オブジェクトに対するリストである。その他のリストについては、説明を省略する。
算出部152は、図8に示すリストを生成した後に、各リストを、高スコアのグループと低スコアのグループにクラスタリングする処理を行う。高スコアは、相関係数が大きいことを示し、低スコアは、相関係数が小さいことを示す。本実施例2に係るサービス提供システム40では、ほとんどの相関係数の値はゼロとその近傍に集まり、一部の相関係数の値が高めとなる。例えば、算出部152は、スミルノフ・グラフス検定等により、相関係数が大のグループと小のグループに分類する。
スミルノフ・グラフス検定は、1つあるいは少数の外れ値が母集団に存在していると仮定して、外れ値検定を行うものである。上記のように、サービス提供システム40では、ほとんどの相関係数の値はゼロとその近傍に集まるため、高スコアのグループに分類する相関係数が、外れ値として検定される。
算出部152は、スミルノフ・グラフス検定以外の方法により、クラスタリングしても良い。例えば、算出部152は、Generalized ESD法またはKmeansを基にしてクラスタリングしても良い。
Generalized ESD法は、スミルノフ・グラフス検定をベースとした方法であるが、初めから複数の外れ値が存在するという仮定のもので、外れ値検定を行う。母集団の近傍に複数の外れ値が存在する場合に、スミルノフ・グラフス検定では、外れ値とは検定出来ないが、Generalized ESD法では、外れ値として検定することができる。
Kmeansは、2つの正規分布にしたがった集合が存在するときに、それらを分類する方法である。
なお、算出部152は、相関係数の全てが低スコアのグループに含まれる場合には、各相関係数のうち、最大の相関係数を、高スコアのグループに分類する。すなわち、算出部152は、少なくもの一つの相関係数が、高スコアのグループに属するようにする。
算出部152が、図8に示すリストに対してクラスタリングを実行すると、図9に示すものとなる。図9は、クラスタリング結果の一例を示す図である。図9に示すように、リスト16は、高スコアのグループ16aと、低スコアのグループ16bに分類される。リスト17は、高スコアのグループ17aと、低スコアのグループ17bに分類される。リスト18は、高スコアのグループ18bと、低スコアのグループ18bに分類される。
算出部152は、クラスタリングを実行した後に、高スコアのグループに含まれる相関係数から、呼出関係にあるといえる親オブジェクトと子オブジェクトとの相関係数の閾値を決定する。例えば、算出部152は、高スコアのグループに含まれる相関係数のうち、最小のものを、閾値として決定する。算出部152は、リスト毎に、子オブジェクトの閾値を決定し、決定した閾値と子オブジェクトとを対応付けることで、閾値テーブル143を生成する。
例えば、図9において、リスト16の高スコアのグループ16aのうち、最小の相関係数は、「0.85」となる。このため、子オブジェクト「SQL21」の閾値は「0.85」となる。同様に、子オブジェクト「SQL22」の閾値は「0.25」となる。子オブジェクト「SQL23」の閾値は「0.10」となる。
図9の説明に戻る。判定部153は、オブジェクト相関係数テーブル142および閾値テーブル143を基にして、呼出関係にある親オブジェクトと子オブジェクトとを判定し、呼出関係組み合わせテーブル144を生成する処理部である。
判定部153は、子オブジェクトと呼出関係にある親オブジェクトを判定する場合には、子オブジェクトの閾値を閾値テーブル143から取得し、係る閾値以上の相関係数となる親オブジェクトを、呼出関係にある親オブジェクトとして判定する。
例えば、子オブジェクト「SQL21」と呼出関係にある親オブジェクトを判定する場合を例にして説明する。図6に示す例では、「SQL21」の閾値は「0.85」となる。判定部153は、子オブジェクト「SQL21」との相関係数が「0.85」以上となる親オブジェクトを、子オブジェクトと呼出関係にある親オブジェクトとして判定する。例えば、図5の1行目では、親オブジェクト「URL11」と子オブジェクト「SQL21」との相関係数が「0.87」となり、閾値「0.85」以上である。このため、判定部は、親オブジェクト「URL11」と子オブジェクト「SQL21」とが呼出関係にあると判定する。判定部153は、上記の処理を繰り返し実行することで、呼出関係組み合わせテーブル144を生成する。
次に、本実施例2に係る判定装置100の処理手順の一例について説明する。図10は、本実施例2に係る判定装置の処理手順を示すフローチャートである。図10に示す処理は、例えば、判定装置100がリクエスト数データを取得したことを契機に実行しても良いし、定期的に実行しても良い。
図10に示すように、判定装置100は、リクエスト数データを取得し(ステップS101)、オブジェクト相関係数テーブル生成処理を実行する(ステップS102)。判定装置100は、閾値テーブル生成処理を実行し(ステップS103)、呼出関係組み合わせテーブル144を生成する(ステップS104)。
次に、図10のステップS102に示したオブジェクト相関係数テーブル生成処理の処理手順について説明する。図11は、オブジェクト相関係数テーブル生成処理の処理手順を示すフローチャートである。
図11に示すように、判定装置100は、リクエスト数データ141から子オブジェクトの各時間帯のリクエスト数を取得する(ステップS201)。判定装置100は、リクエスト数データから親オブジェクトの各時間帯のリクエスト数を取得する(ステップS202)。判定装置100は、子オブジェクトと親オブジェクトとの各時間帯のリクエスト数の相関係数を算出する(ステップS203)。
判定装置100は、全ての親オブジェクトが完了したか否かを判定する(ステップS204)。判定装置100は、全ての親オブジェクトが完了していない場合には(ステップS204,No)、ステップS202に移行する。
一方、判定装置100は、全ての親オブジェクトが完了した場合には(ステップS204,Yes)、全ての子オブジェクトが完了したか否かを判定する(ステップS205)。判定装置100は、全ての子オブジェクトが完了していない場合には(ステップS205,No)、ステップS201に移行する。
一方、判定装置100は、全ての子オブジェクトが完了した場合には(ステップS205,Yes)、オブジェクト相関係数テーブル142に相関係数を登録し(ステップS206)、処理を終了する。
次に、図10のステップS103に示した閾値テーブル生成処理の処理手順について説明する。図12は、閾値テーブル生成処理の処理手順を示すフローチャートである。
図12に示すように、判定装置100は、オブジェクト相関係数テーブル142を取得する(ステップS301)。判定装置100は、オブジェクト相関係数テーブル142から、子オブジェクトが同一である相関係数を全て取得する(ステップS302)。
判定装置100は、相関係数群を2つのグループにクラスタリングする(ステップS303)。判定装置100は、全ての子オブジェクトが完了したか否かを判定する(ステップS304)。判定装置100は、全ての子オブジェクトが完了していない場合には(ステップS304,No)、ステップS302に移行する。
判定装置100は、全ての子オブジェクトが完了した場合には(ステップS304,Yes)、閾値テーブル143に相関係数の閾値を格納する(ステップS305)。
次に、図4に示したリクエスト数データとは異なるリクエスト数データに対して、判定装置100が上記処理を実行した場合について説明する。図13は、その他のリクエスト数データのデータ構造の一例を示す図である。図3のリクエスト数データ141aに示すオブジェクトのうち、旅費精算、休暇申請、ロゴ画像を、親オブジェクトとする。旅費テーブル問い合わせ、出勤テーブル問い合わせ、セッション管理問い合わせを、子オブジェクトとする。
算出部152が、上述した処理により、リクエスト数データ141aから、オブジェクト相関係数テーブルを生成すると、図14に示すオブジェクト相関係数テーブル142aとなる。図14は、図13に示したリクエスト数データから生成されるオブジェクト相関係数テーブルのデータ構造の一例を示す図である。
算出部152が、上述した処理により、オブジェクト相関係数テーブル142aを基にして、子オブジェクトから親オブジェクトへのリストを生成すると、図15に示すリスト25,26が生成される。図15は、図14に示したオブジェクト相関係数テーブルから生成されるリストのデータ構造の一例を示す図である。
算出部152が、上述した処理により、リスト25を高スコアのグループと低スコアのグループにクラスタリングする処理を行うと、高スコアのグループはグループ25aとなり、低スコアのグループはグループ25bとなる。算出部152が、リスト26を高スコアのグループと低スコアのグループにクラスタリングする処理を行うと、高スコアのグループはグループ26aとなり、低スコアのグループはグループ26bとなる。
算出部152は、クラスタリングを実行した後に、高スコアのグループに含まれる相関係数から、呼出関係にあるといえる親オブジェクトと子オブジェクトとの相関係数の閾値を決定する。例えば、図15において、子オブジェクト「旅費テーブル問い合わせ」の閾値は「0.98」となる。子オブジェクト「セッション管理テーブル問い合わせ」の閾値は「0.23」となる。算出部152は、上記処理を実行することにより、閾値テーブル143を生成する。ここでは、リスト25,26から生成される閾値テーブル143のデータ構造の図示を省略する。
判定部153が、閾値テーブル143と、オブジェクト相関係数テーブル142とを基にして、呼出関係を判定すると、親オブジェクトと子オブジェクトとの呼出関係は、図16に示すものとなる。図16は、親オブジェクトと子オブジェクトとの呼出関係の一例を示す図である。図16に示すように、親オブジェクト「旅費精算」と呼出関係にある子オブジェクトは、「旅費テーブル問い合わせ」、「セッション管理テーブル問い合わせ」となる。また、親オブジェクト「休暇申請」と呼出関係にある子オブジェクトは、「出勤テーブル問い合わせ」、「セッション管理テーブル問い合わせ」となる。
次に、本実施例2に係る判定装置100の効果について説明する。判定装置100は、リクエスト数データ141を基にして、子オブジェクトと各親オブジェクトとの相関係数をそれぞれ算出したリストを生成する。判定装置100は、算出したリストを基にして、相関係数の閾値を判定し、判定した閾値を基にして、呼出関係にある第1オブジェクトと第2オブジェクトとの組みを判定する。このため、判定装置100によれば、親オブジェクトと子オブジェクトとの呼出関係が多対1の場合であっても、相関係数を用いた簡易的な手法によって、親オブジェクトと子オブジェクトとの呼出関係を正確に特定することができる。
また、判定装置100は、リストを高スコアのグループと、低スコアのグループとに分類し、高スコアのグループに分類した相関係数の値を基にして、呼出関係の判定に利用する閾値テーブル143を生成する。このため、呼出関係にある相関係数の閾値を判定することができる。
ところで、判定装置100は、高スコアのグループに含まれる相関係数のうち、最小のものを、子オブジェクトの閾値として決定する場合について説明したがこれに限定されるものではない。例えば、判定装置100は、高スコアのグループに含まれる相関係数の平均値を求め、求めた平均値を、子オブジェクトの閾値として決定しても良い。また、判定装置100は、高スコアのグループに含まれる相関係数のうち、最大のものを、子オブジェクトの閾値として決定しても良い。
次に、上記の実施例に示した判定装置と同様の機能を実現する判定プログラムを実行するコンピュータの一例を説明する。図17は、判定プログラムを実行するコンピュータの一例を示す図である。
図17に示すように、コンピュータ300は、各種演算処理を実行するCPU301と、ユーザからのデータの入力を受け付ける入力装置302と、ディスプレイ303を有する。また、コンピュータ300は、記憶媒体からプログラム等を読取る読み取り装置304と、ネットワークを介して他のコンピュータとの間でデータの授受を行うインタフェース装置305とを有する。また、コンピュータ300は、各種情報を一時記憶するRAM306と、ハードディスク装置307を有する。そして、各装置301〜307は、バス308に接続される。
ハードディスク装置307は、例えば、算出プログラム307a、判定プログラム307bを有する。CPU301は、各プログラム307a,307bを読み出してRAM306に展開する。
算出プログラム307aは、算出プロセス306aとして機能する。判定プログラム307bは、判定プロセス306bとして機能する。
例えば、算出プロセス306aは、算出部91,152等に対応する。判定プロセス306bは、判定部92,153等に対応する。
なお、各プログラム307a、307bについては、必ずしも最初からハードディスク装置307に記憶させておかなくてもよい。例えば、コンピュータ300に挿入されるフレキシブルディスク(FD)、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ300がこれらから各プログラム307a,307bを読み出して実行するようにしてもよい。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)コンピュータに、
第1オブジェクトに対するリクエストの特徴と、第2オブジェクトに対するリクエストの特徴とを基にして、第1オブジェクト毎に、第1オブジェクトと第2オブジェクトとの類似度をそれぞれ算出し、
算出した前記類似度を基にして、第1オブジェクト毎の類似度の閾値を特定し、特定した前記閾値を基にして、呼出関係にある第1オブジェクトと第2オブジェクトとの組みを判定する、
処理を実行させることを特徴とする判定プログラム。
(付記2)前記判定する処理は、第1オブジェクトと各第2オブジェクトとの各類似度を類似度の値に応じて、第1グループまたは第2グループに分類し、第1グループに分類された類似度を基にして、第1オブジェクト毎の類似度の閾値を特定することを特徴とする付記1に記載の判定プログラム。
(付記3)前記判定する処理は、前記第1グループに分類された各類似度の最小値、平均値、最大値のいずれか一つを基にして、第1オブジェクト毎の類似度の閾値を特定することを特徴とする付記2に記載の判定プログラム。
(付記4)コンピュータが実行する判定方法であって、
第1オブジェクトに対するリクエストの特徴と、第2オブジェクトに対するリクエストの特徴とを基にして、第1オブジェクト毎に、第1オブジェクトと第2オブジェクトとの類似度をそれぞれ算出し、
算出した前記類似度を基にして、第1オブジェクト毎の類似度の閾値を特定し、特定した前記閾値を基にして、呼出関係にある第1オブジェクトと第2オブジェクトとの組みを判定する、
処理を実行することを特徴とする判定方法。
(付記5)前記判定する処理は、第1オブジェクトと各第2オブジェクトとの各類似度を類似度の値に応じて、第1グループまたは第2グループに分類し、第1グループに分類された類似度を基にして、第1オブジェクト毎の類似度の閾値を特定することを特徴とする付記4に記載の判定方法。
(付記6)前記判定する処理は、前記第1グループに分類された各類似度の最小値、平均値、最大値のいずれか一つを基にして、第1オブジェクト毎の類似度の閾値を特定することを特徴とする付記5に記載の判定方法。
(付記7)第1サーバと第2サーバと判定装置とを有する判定システムであって、
前記判定装置は、
前記第1サーバの第1オブジェクトに対するリクエストの特徴と、前記第2サーバの第2オブジェクトに対するリクエストの特徴とを基にして、第1オブジェクト毎に、第1オブジェクトと第2オブジェクトとの類似度をそれぞれ算出する算出部と、
算出した前記類似度を基にして、第1オブジェクト毎の類似度の閾値を特定し、特定した前記閾値を基にして、呼出関係にある第1オブジェクトと第2オブジェクトとの組みを判定する判定部と
を有することを特徴とする判定システム。
(付記8)前記判定部は、第1オブジェクトと各第2オブジェクトとの各類似度を類似度の値に応じて、第1グループまたは第2グループに分類し、第1グループに分類された類似度を基にして、第1オブジェクト毎の類似度の閾値を特定することを特徴とする付記7に記載の判定システム。
(付記9)前記判定部は、前記第1グループに分類された各類似度の最小値、平均値、最大値のいずれか一つを基にして、第1オブジェクト毎の類似度の閾値を特定することを特徴とする付記8に記載の判定システム。
80a 第1サーバ
80b 第2サーバ
90 判定装置
91 算出部
92 判定部

Claims (5)

  1. コンピュータに、
    時間毎のオブジェクトに対するリクエスト数と、時間毎のオブジェクトに対するリクエスト数とを基にして、オブジェクト毎に、オブジェクトと各親オブジェクトとの類似度をそれぞれ算出し、
    算出した前記類似度を基にして、オブジェクト毎の類似度の閾値を特定し、特定した前記閾値を基にして、呼出関係にあるオブジェクトとオブジェクトとの組みを判定する、
    処理を実行させることを特徴とする判定プログラム。
  2. 前記判定する処理は、オブジェクトと各オブジェクトとの各類似度を類似度の値に応じて、第1グループまたは第2グループに分類し、第1グループに分類された類似度を基にして、オブジェクト毎の類似度の閾値を特定することを特徴とする請求項1に記載の判定プログラム。
  3. 前記判定する処理は、前記第1グループに分類された各類似度の最小値、平均値、最大値のいずれか一つを基にして、オブジェクト毎の類似度の閾値を特定することを特徴とする請求項2に記載の判定プログラム。
  4. コンピュータが実行する判定方法であって、
    時間毎のオブジェクトに対するリクエスト数と、時間毎の各親オブジェクトに対するリクエスト数とを基にして、オブジェクト毎に、オブジェクトとオブジェクトとの類似度をそれぞれ算出し、
    算出した前記類似度を基にして、オブジェクト毎の類似度の閾値を特定し、特定した前記閾値を基にして、呼出関係にあるオブジェクトとオブジェクトとの組みを判定する、
    処理を実行することを特徴とする判定方法。
  5. 第1サーバと第2サーバと判定装置とを有する判定システムであって、
    前記判定装置は、
    前記第1サーバの時間毎のオブジェクトに対するリクエスト数と、前記第2サーバの時間毎の各親オブジェクトに対するリクエスト数とを基にして、オブジェクト毎に、オブジェクトとオブジェクトとの類似度をそれぞれ算出する算出部と、
    算出した前記類似度を基にして、オブジェクト毎の類似度の閾値を特定し、特定した前記閾値を基にして、呼出関係にあるオブジェクトとオブジェクトとの組みを判定する判定部と
    を有することを特徴とする判定システム。
JP2012283262A 2012-12-26 2012-12-26 判定プログラム、判定方法および判定システム Expired - Fee Related JP6163751B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012283262A JP6163751B2 (ja) 2012-12-26 2012-12-26 判定プログラム、判定方法および判定システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012283262A JP6163751B2 (ja) 2012-12-26 2012-12-26 判定プログラム、判定方法および判定システム

Publications (2)

Publication Number Publication Date
JP2014127025A JP2014127025A (ja) 2014-07-07
JP6163751B2 true JP6163751B2 (ja) 2017-07-19

Family

ID=51406459

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012283262A Expired - Fee Related JP6163751B2 (ja) 2012-12-26 2012-12-26 判定プログラム、判定方法および判定システム

Country Status (1)

Country Link
JP (1) JP6163751B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9768124B2 (en) 2007-02-21 2017-09-19 Amkor Technology, Inc. Semiconductor package in package

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6715886B2 (ja) * 2018-07-04 2020-07-01 株式会社Tkc 処理状況確認支援装置、処理状況確認支援方法および処理状況確認支援プログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5324903B2 (ja) * 2008-12-10 2013-10-23 エヌ・ティ・ティ・コミュニケーションズ株式会社 類似度計算装置、方法及びプログラム、データ検索システム及び方法
JP2012198818A (ja) * 2011-03-22 2012-10-18 Fujitsu Ltd 分析装置、分析プログラム、分析方法およびシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9768124B2 (en) 2007-02-21 2017-09-19 Amkor Technology, Inc. Semiconductor package in package

Also Published As

Publication number Publication date
JP2014127025A (ja) 2014-07-07

Similar Documents

Publication Publication Date Title
JP7530610B2 (ja) ネットワークのセキュリティモニタリング方法、ネットワークのセキュリティモニタリング装置及びシステム
US11323471B2 (en) Advanced cybersecurity threat mitigation using cyberphysical graphs with state changes
KR102238612B1 (ko) DoS/DDoS 공격의 탐지 방법, 장치, 서버 및 저장 매체
US10318366B2 (en) System and method for relationship based root cause recommendation
US10686807B2 (en) Intrusion detection system
KR102076861B1 (ko) 네트워크 성능 진단 방법 및 장치, 및 시스템
US20170126712A1 (en) Detection mitigation and remediation of cyberattacks employing an advanced cyber-decision platform
CN108322320B (zh) 业务生存性分析方法及装置
US20150341238A1 (en) Identifying slow draining devices in a storage area network
Yang et al. Implementation of a real-time network traffic monitoring service with network functions virtualization
JPWO2016017208A1 (ja) 監視システム、監視装置、および検査装置
US9417949B1 (en) Generic alarm correlation by means of normalized alarm codes
US7711518B2 (en) Methods, systems and computer program products for providing system operational status information
CN102546205B (zh) 一种故障关系生成及故障确定方法及装置
CN106453504A (zh) 一种基于nginx服务器集群的监控系统及方法
JP6163751B2 (ja) 判定プログラム、判定方法および判定システム
CN107018039B (zh) 测试服务器集群性能瓶颈的方法和装置
JP2017211806A (ja) 通信の監視方法、セキュリティ管理システム及びプログラム
US20120246300A1 (en) Analyzing apparatus, method, system, and recording medium of program
JP7409866B2 (ja) 通信監視装置及び通信監視方法
US8978116B1 (en) Method and apparatus for monitoring an online identity of a user on a network
US7558770B2 (en) Method and system to detect application non-conformance
JP7120310B2 (ja) 通信分析装置、通信分析方法、およびプログラム
KR102027759B1 (ko) 네트워크와 연관된 신규 장치 등록 방법 및 장치
JP6399127B2 (ja) システム管理装置、システム管理方法、プログラム、情報処理システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150804

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160524

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161220

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170207

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170523

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170605

R150 Certificate of patent or registration of utility model

Ref document number: 6163751

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees