JP2008022113A - 最適メモリ割当て方法 - Google Patents

最適メモリ割当て方法 Download PDF

Info

Publication number
JP2008022113A
JP2008022113A JP2006190115A JP2006190115A JP2008022113A JP 2008022113 A JP2008022113 A JP 2008022113A JP 2006190115 A JP2006190115 A JP 2006190115A JP 2006190115 A JP2006190115 A JP 2006190115A JP 2008022113 A JP2008022113 A JP 2008022113A
Authority
JP
Japan
Prior art keywords
host
mass flow
flows
flow generation
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.)
Granted
Application number
JP2006190115A
Other languages
English (en)
Other versions
JP4311682B2 (ja
Inventor
Kensho Kamiyama
憲昭 上山
Tatsuya Mori
達哉 森
Ryoichi Kawahara
亮一 川原
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2006190115A priority Critical patent/JP4311682B2/ja
Publication of JP2008022113A publication Critical patent/JP2008022113A/ja
Application granted granted Critical
Publication of JP4311682B2 publication Critical patent/JP4311682B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】フロー計測から得られたデータを用いて、単位時間に生成されるフロー数が閾値を超える大量フロー生成ホストを特定する方法において、大量フロー生成ホストを誤って見逃す確率を最小化するようにメモリを最適配分する。
【解決手段】フローサンプリングによって得られた統計データのみを用いて、単位時間当たりに生成するフロー数が閾値以上となるホストを特定する大量フロー生成ホスト特定法における最適メモリ割当て方法であって、大量フロー生成ホストを誤って見逃す確率を最小化するように、実装されているメモリ量を、新規フローの判定に用いるBloom filterと、サンプルされたホスト毎にサンプルフロー数を記億するホストテーブルの各々に割り当てる。実装されているメモリ量Bと、特定判断閾値Yとが与えられたときに、Bloom filterとホストテーブルの全てのパラメータを導出する。
【選択図】図1

Description

本発明は、最適メモリ割当て方法に係り、特に、フロー計測から得られたデータを用いて、単位時間に生成されるフロー数が閾値を超える大量フロー生成ホストを特定する際の最適メモリ割当て方法に関する。
近年、ワーム、ウィルス、DDoS(Distributed Denial of Service)等が引き起こす異常トラヒックが、ネットワークやサーバに深刻な被害をもたらすことが問題となっている。
DDoSの踏み台にされたホストや、ワームやウィルスに感染したホストは、個々のフローサイズは小さいものの短時間に大量のフローを生成するという特徴がある。そのため、短時間に大量のフローを生成するホストを早急に特定し、特定したホストに対して注意を促し、ネットワークから切り離すといった対処をとることが重要となる。
一方、フローサイズやフロー時間といったフローの各種統計値を収集するための技術として、パケット流からパケットを一定周期もしくはランダムに抜き出すパケットサンプリングが注日されている。
リンクの回線容量が2.5Gbpsや10Gbpsと高速化するにつれ、全てのフロー状態を管理することが困難になるため、パケットサンプリングにより一部のフロー状態のみを管理し、各種フロー統計値を得ることは実用上、非常に有用である。
そこで、パケットサンプリングによって得られた情報から、測定期間内に送出されたパケット数が闘値以上となる高レートフローを特定する方法が検討されている。
しかし、大量フロー生成ホストが生成する個々のフローのサイズは小さいため、高レートフローの特定方法ではこのようなホストを効果的に特定することができない。
大量フロー生成ホストを特定するには、パケット単位ではなく、フローを単位にサンプリングを行い、ホスト毎に生成フロー数を集計することが有効である。
このような観点から、Y本以上のフローがサンプルされたホストを大量フロー生成ホストとして特定する方法が検討されている。
大量フロー生成ホストの特定を行う際には、大量フローと定義するフロー数の閾値mとその特定確率Hを設計できることが実用上、重要である。さらに、フロー数mがm<mのフローが誤って特定される確率(FPR:False Positive Ratio)と、m≧mのフローが誤って特定されない確率(FNR:False Negative Ratio)を明確にし、特定精度を明らかにすることが重要である。
そのためには、mとHを与えたときの任意のmに対する特定確率H(特定曲線)を明らかにする必要がある。
フローを、発着IPアドレス、発着ポート番号が共通のパケットの集合と定義する。そして、長さがφ(s)の任意の測定期間Φを定め、測定期間Φ内に着目リンクに到着した総フロー数をMとする。
そして、各ホストに対して測定期間Φ内に着目リンクに到着したフロー数をmとするとき、任意に定めた閾値mに対して、m≧mのホストを大量フロー生成ホストと定義し、着目リンクにおいて、大量フロー生成ホストを測定期間Φ内で特定することを考える。
今、測定期間Φ内に着目リンクを流れたフロー数がmのホストに着目する。
測定期間Φ内で着目ホストのm本のフローからd本のフローがサンプルされる確率fdは、フローサンプルレートをrを用いて、下記(1)式で表される。
[数1]
(l−r)m−d ・・・・・・・・・・・・・ (1)
よって、サンプルフロー数がY以上のホストを特定するとき、このホストが特定される確率Hは、下記(2)式で得られる。
Figure 2008022113
また、式(2)にm=mを代入することによって得られる、下記(3)式を数値的に解くことによって、mとHが与えられたときに、Yかrの任意の一方を定めたときに対応するもう一方のパラメータを設定することができる。
Figure 2008022113
着目リンクに到着した各パケットに対して、発着IPアドレスと発着ポート番号の計96ビットをキーにして、予め用意したハッシュ関数を通して得られるsビットの値をvとするとき、v<vであるときにのみ新規フロー判定装置に入力する。ただし、vはフローサンプリングのための閾値であり、rをフローサンプリング確率とするとr=v/2となる。同一フローに属するフローは同一のキーを持つため、フローサイズとは無関係に全てのフローが確率rでサンプルされることになる。
v<vであった場合、次に到着パケットが属するフローを既にカウントしたかどうかを判定する。
最も直感的な方法は、サンプルした全てのフローをフローテーブルにて管理し、フローテーブルに該当フローのエントリが存在するか否かを判定する方法であるが、最大で全エントリをチェックする必要があるため処理時間が大きくなる。
そこで、Bloom filterを用いて判定する方法が有効である。Bloom filterはある候補に対してある集合のメンバであるか否かを判定する方法であり、異なるk個のハッシュ関数(各々が入カキーに対してbビットの値を返す)と2個の2値変数(初期状態では全てゼロにリセットされる)が用意される。
この場合、パケットの96ビットのキーをk個のハッツシュ関数を通して得られるk個のアドレスに該当する2値変数の値を調べ、1つ以上がゼロである場合に該当パケットが属するフローを新規フローと判定する。そしてk個の該当する2値変数を全て1にセットする。
Bloom filterを用いた場合、既にカウントしたフローを誤って新規フローと見なす可能性はゼロであるが、ハッシュ値の衝突によって新規フローを誤って見逃す可能性がある。
測定期間Φ内に着目リンクを流れた総フローMに対して、測定期間Φ内でサンプルされたフロー数の期待値DはD=rMとなる。kの最適値はDを用いて、下記(4)式で表される。
Figure 2008022113
n本の異なるフローに対してBloom filterの2(bits)のbitmapを更新したとき、bitmap中のあるビットが1である確率は{1−(1−k/2}となる。
このとき、新規フローを誤って見逃す確率をηとすると、確率ηは、下記(5)式で表される。
[数5]
η={1−(1−k/2 ・・・・・・・・・・・・・ (5)
よって、新規フローを見逃す確率の平均値ηは(4)式を考慮して、下記(6)式により導出できる。
Figure 2008022113
(6)式より、rとMが与えられたときに、新規フローを見逃す確率の平均値η≦δBF(任意に与えた値)を満足するbの最小値を求めることができ、さらに、前述の(4)式よりkの値を設定できる。
ホストテーブルには、発IPアドレスとサンプルフロー数cが収容される。新規フローと判定された場合には、該当パケットの発IPアドレスが既にホストテーブル内にエントリされているか否か調べ(例えば、発IPアドレスをキーにしてハッシュ値のアドレスを調べる)、既にエントリが存在する場合にはサンプルフロー数を1だけ増加させる。
この結果、サンプルフロー数が特定判断閾値Yに達した場合には、そのホストを大量フロー生成ホストとして特定し、大量フロー生成ホストリストに書き出す。
一方、発IPアドレスがホストテーブル内にエントリされていない場合には、新規にエントリを生成する。
ホストテーブルのエントリ更新処理を実現する際には、効率的に各エントリが収容されるアドレスを解決することが重要であるが、ここでは一般的に広く用いられるハッシュ関数を用いた方法を想定する。
ハッシュ値の衝突に対しては、ポインタを用いたリンク構造による解決方法が高い性能を示し、広く用いられていることから、ここでもリンク構造による形態を想定する。
ホストテーブルは、ポインタ収容領域(以下、PSA(pointer stored area)と称する。)とホストエントリ収容領域(以下、ESA(entry stored area)と称する。)とから構成される。
ESAはエントリが実際に収容される領域であり、ホストのIPアドレス、サンプルフロー数c、次エントリへのポインタが収容される。PSAには2β個のハッシュ値の各々に対応するESA内の最初のエントリ収容先を示すポインタが収容される。
事前に用意されたβビットのハッシュ空間をもつハッシュ関数hを用いて得られるハッシュ値h(j)に対応するPSAの値を調べ、ヌル値である場合にはESAの空き位置にエントリを作成し、サンプルフロー数cを1に初期化する。
一方、PSAの値がヌル値でない場合には、ESAの該当エントリのリンクを順に調査して該当ホストのエントリが存在するか調査し、存在した場合にはそのエントリの、サンプルフロー数cを1だけ増加させる。存在しない場合にはやはり新規にエントリを作成する。
一つの到着パケットに対して大量フロー生成ホスト特定方法が必要とする処理時間について考察する。例えば、OC192のリンクにおける最小パケット(40バイト)のパケット時間は32nsと短いことから、1パケット時間で終了すべき処理量に対する制約が大きく、所要処理時間の上限を評価することが重要となる。
フローサンプリング、新規フロー判定、ホストテーブルの更新、三つの全ての処理においてハッシュ値を求める必要があるが、ここでは、Universalハッシュ関数を用いることを想定する。
本ハッシュ関数は、理想に近い(ランダム性が高い)、ハッシュ値を出力することと、ハードウェア実装に適しているという優れた特徴を有する。
ハッシュ値の算出はハードウェア実装による並列処理で行われるため、処理時間には含めない。また、CPUにおける処理時間もメモリアクセス時間と比較して小さいことから、ここでは最大処理時間を評価する尺度として最大メモリアクセス数を用いる。
(i)フローサンプリング、(ii)新規フロー判定、(iii)ホストテーブル更新と大量フロー生成ホストの特定の、各々を開始するのに必要となる情報(到着パケットの発IPアドレス、もしくは属するフローのキー)はパケットが到者した瞬間に得られるため、各々の処理は並行して開始することが可能である。
(ii)は(i)の結果、該当フローがサンプルされた場合にのみ必要となり、Bloom filterのbitmap更新処理は(i)の完了を待つ必要があるが、k個のハッシュ値の算出は(i)と並行して実施可能であり、また(i)はメモリアクセスを伴わず短時間で終了するため、(i)と(ii)は並列化できる。
また(iii)のホストテーブルの更新処理は、(ii)の結果、新規フローと判定された場合にのみ必要となるが、該当エントリのアドレス解決(もしくは新規エントリ作成の必要性判定)は(ii)と並行して実施可能であり、また(ii)で要するメモリアクセス数が1であるのに対し、(iii)は後述するようにアドレス解決に2回以上のメモリアクセスが必要となる。そのため、(ii)と(iii)も並列化できる。
よって、処理時間を評価するためには、最も処理時間を要する(iii)の最大メモリアクセス数のみを検討すればよい。
ホストテーブルの同一ハッシュ値にマッピングされるホスト数に上限を設けない場合、メモリアクセス数の上限を抑えることができない。実装に際しては、1パケット処理時間内に必要となる最大メモリアクセス数を抑える必要があるので、ここではリンク数の上限をLに制限する。
エントリ作成時に該当ハッシュ値に既にL個のエントリが収容されている場合、このエントリは棄却される。l個のエントリが収容されているハッシュ値に新たにエントリを作成する場合、新規エントリと判断されるまでに(l+1)回のメモリアクセスが必要となる。さらに、ESAの空きにエントリを作成し、l番目のエントリのポインタに作成したエントリのアドレスを書き込む必要があるため、合計で(l+3)回のメモリアクセスが最大で必要になる。
l≦L−1であることから、最大メモリアクセス数は(L+2)となる。
ハッシュ衝突をポインタによるリンク・リストによって解決する場合、ハッシュ空間を決めるパラメータβの設計が重要となる。
n個のエントリがホストテーブルに収容されているとき、あるハッシュ値に収容されたエントリ数がiである確率は、(1/2β(1−1/2βn−iとなる。
よって測定期間Φ内で、一つ以上のフローがサンプルされたホスト数を下記(6−1)式で表すとき、あるハッシュ値の収容エントリ数がiである確率の平均値piは、下記(7)式となる。
Figure 2008022113
よって新たにエントリをホストテーブルに作成するときに、該当ハッシュ値のリンク数がi以下である確率の平均値Piは、下記(8)式となる。
リンク数の上限をLで制限した場合、新規エントリは確率Pで棄却される。ここでは、Pが任意に与えたδHT(任意の与えた値)以下となるようにβを設計する。
Figure 2008022113
なお、以上の技術については、下記非特許文献1を参照されたい。
なお、本願発明に関連する先行技術文献としては以下のものがある。
上山,森,川原,「フローサンプリングを用いた大量フロー生成ホストの特定」, 信学技報IN2005-184.
従来の大量フロー生成ホスト特定方法では、測定期間Φ、特定閾値m、その特定確率H、特定判断閾値Y、測定期間内の総フロー数M、測定期間内のサンプルホスト数Nとが与えられたときに、設定すべきフローサンプリング確率r、Bloom filterのパラメータbとk、ホストテーブルのパラメータβ、所要メモリサイズBを求めることができる。
しかしながら、一般には、メモリサイズは実装により既に決まっていることが多く、メモリサイズが与えられたときに、特定精度が最大化、即ち、大量フロー生成ホストを誤って見逃す確率(FNR)を最小化するように、適切に各種パラメータを設定できることが重要である。
しかしながら、従来の方法では、総メモリ量が実装で定まっている場合に、特定精度が最大化するように、適切に各種パラメータを設定し、当該メモリ量を、Bloom filter、PSA、ESAの各々に最適に割り当てることができない。
本発明は、前記従来技術の問題点を解決するためになされたものであり、本発明の目的は、フロー計測から得られたデータを用いて、単位時間に生成されるフロー数が閾値を超える大量フロー生成ホストを特定する方法において、大量フロー生成ホストを誤って見逃す確率を最小化するようにメモリを最適配分することが可能となる技術を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、下記の通りである。
(1)フローサンプリングによって得られた統計データのみを用いて、単位時間あたりに生成するフロー数が閾値以上となるホストを特定する大量フロー生成ホスト特定法における最適メモリ割当て方法であって、大量フロー生成ホストを誤って見逃す確率を最小化するように、実装されているメモリ量を、新規フローの判定に用いるBloom filterと、サンプルされたホスト毎にサンプルフロー数を記億するホストテーブルの各々に割り当てることを特徴とする。
(2)(1)において、実装されているメモリ量Bと、特定判断閾値Yとが与えられたときに、Bloom filterとホストテーブルの全てのパラメータを導出する。
(3)(2)において、任意の生成フロー数mを有する大量フロー生成ホストが、ホストテーブルにエントリされたという条件のもとで特定されない確率の上限H(m)と、このホストがホストテーブルにエントリされない確率の上限R(m)とを導出し、H(m){1−R(m)}+R(m)を最小化する特定判断閾値Yを最適値として導出する。
(4)(3)において、特定判断閾値Yを設定する際に用いる大量フロー生成ホストの生成フロー数に関する代表値mを、全ての大量フロー生成ホストの生成フロー数の中央値とする。
(5)(1)ないし(5)の何れかにおいて、パラメータ算出に必要となる全フロー数と、大量フロー生成ホストの生成フロー数の中央値とを、前測定期間で得られた情報を用いて推定する。
(6)(5)において、前測定期間における特定ホストの誤差の影響を除去するため、中央値に見逃し大量フロー生成ホスト数の推定値を加え、さらに誤って特定した非大量フロー生成ホスト数の推定値を引く。
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、下記の通りである。
本発明によれば、フロー計測から得られたデータを用いて、単位時間に生成されるフロー数が閾値を超える大量フロー生成ホストを特定する方法において、大量フロー生成ホストを誤って見逃す確率を最小化するようにメモリを最適配分することが可能となる。
以下、図面を参照して本発明の実施例を詳細に説明する。
なお、実施例を説明するための全図において、同一機能を有するものは同一符号を付け、その繰り返しの説明は省略する。
図1は、本発明の実施例の大量フロー生成ホスト特定方法の最適メモリ割当て法が適用されるシステム構成を示すブロック図である。
図1において、101はパラメータ設計装置、102はフローサンプリング装置、103は新規フロー判定装置、104はホストテーブル、105は大量フロー生成ホスト特定装置、106は大量フロー生成ホストリストである。
パラメータ設計装置101により、前測定期間において特定されたフローホグの平均サンプルフロー数から、下記(8−1)式に示す総フロー数Mの推定値、メモリサイズB、測定期間Φ、特定閾値m、その特定確率Hから、Bloom filterのパラメータbとk、ホストテーブルのパラメータβ、特定判断閾値Y、フローサンプリングレートr、ESAのサイズEとが設計される。
測定期間中は、フローサンプリング装置102により着目リンクを流れるフローが一定確率rでサンプルされ、サンプルされたフローが新規のフロー(未カウント)であるか否かを新規フロー判定装置103が判定し、新規フローであった場合にはホストテーブル104が更新される。大量フロー生成ホスト特定装置105はホストテーブル104に登録されたホストから大量フロー生成ホストを特定し、大量フロー生成ホストリスト106に出力する。
Figure 2008022113
次に、本実施例の大量フロー生成ホスト特定方法の最適メモリ割当て法について説明する。
[最適メモリ割当て法]
n番目の測定期間Φの開始点において、測定期間Φで用いる各種パラメータを適切に設定することを考える。
前測定期間Φn−1における総サンプルフロー数Dn−1と、フローサンプルレートrn−1を用いれば、前測定期間における総フロー数はDn−1/rn−1で推定できるが、測定期間Φにおいても同数のフローが生成されると想定し、前述の(8−1)式で示す総フロー数の推定値を、下記(8−2)式で与える。
また、実装に際しては、メモリサイズBだけでなく、Bloom filterに用いることが可能なHash関数の数kの最大値kmaxも制約式として考慮することが望ましい。そこで、設計制約パラメータとして、B、L、kmax、任意の値δBF、任意の値δHTの5つが与えられるものとする。
Figure 2008022113
[メモリサイズBと、特定判断閾値Yが与えられたときのパラメータ設計法]
まず、制約パラメータB、L、kmax、δBF、δHTと、(8−2)式に示す総フロー数Mの推定値、測定期間Φ、m、H、Yが与えられたときに、他のパラメータr、k、b、β、Eをどのように設計するかについて述べる。
前述の(3)式を解くことにより、フローサンプリングレートrが得られる。
また、前述の(4)式と、(6)式の総フロー数Mを、(8−2)式に示す推定値に置換えて得られる、下記(9)式と、(10)式を解くことにより、bとkが得られる。ただし、kは最も近い整数値に丸められ、さらにk>kmaxとなった場合には、k=kmaxとする。また、bは上式を満たす最小の整数に設定される。
Figure 2008022113
ところで、新規フロー判定のBloom filterのbitmapに、Bbf=2/8=2b−3(bytes)のメモリ量が必要になる。
また、ESAのサイズEとすると、PSA用に、Bpsa=2β−3[logE](bytes)のメモリ量が必要となる
また、ホストのエントリは32(bit)のIPアドレス、[logY](bits)のサンプルフロー数カウンタ(最大でYまでカウントできればよい)、[logE](bits)の次エントリへのポインタから構成されるため、ESA用に、Besa=E(32+[logY]+[logE])/8(bytes)のメモリ量が必要となる。
したがって、パラメータY、b、β、Eが与えられたとき、所要メモリ量がB以下となる必要があることから、下記(11)式で示す制約式が得られる。
また、許容最大メモリアクセス数から決まる制約式が、前述の(8)式でNをEで置換えることにより、下記(12)式の制約式が得られる。
これらを満足するβとEの最大値を導出することにより、βとEを設計することができる。
Figure 2008022113
[Yが特定精度に与える影響とYの最適設計法]
特定判断閾値Yの増加に伴い、フローサンプルレートrが増加するため、Bloom filterの新規フロー見逃し率を一定値δBF以下に抑えるために、前述の(11)式よりbが増加し、Bloom filterに割当てられるメモリ量が増加する。
全体で使用できるメモリ量はBで一定であるため、特定判断閾値Yの増加に伴い、ホストテーブルを構成するPSAとESAに割当てられるメモリ量は減少し、βとESAのサイズEは減少する。
特定判断閾値Yの増加は、特定曲線の特定閾値m付近の傾きを増加させるため、特定判断閾値Yの増加に伴い特定精度は向上する。そのため、FPRはYの増加に伴い単調に改善する。
しかし一方で、特定判断閾値Yの増加は、ESAのサイズEの減少をもたらすため、サンプルされた大量フロー生成ホストのエントリが、ホストテーブルのESA溢れのためにホストテーブルに収容されない確率を増加させる。
その結果、FNRは、特定判断閾値Yの小さな領域では特定判断閾値Yの増加に伴い改善するが、特定判断閾値Yの大きな領域では特定判断閾値Yの増加に伴い悪化する。
よって、本発明では、FNRを最小化する、即ち、見逃される大量フロー生成ホスト数Zを最小化する特定判断閾値Yを、特定判断閾値Yの最適値と定義する。
m=m(ただしm≧m)のある大量フロー生成ホストのエントリがホストテーブルに生成されたという条件のもとで、このホストが特定されない確率の上限をH(m)とすると、H(m)は、下記(13)式で得られる。
一方、このホストのエントリがホストテーブル溢れが要因でホストテーブルに収容されない確率の上限をR(m)とすると、R(m)は次式で得られる。
Figure 2008022113
ただし、ホストテーブルにこのホストのエントリが生成されない確率の上限は、R(m)+δHTで与えられる。
m=mの大量フロー生成ホストを特定するという観点からは、H(m){1−R(m)}+R(m)が最小となる特定判断閾値Yが最適となる。
しかし、このようにして算出される、下記(15)式で表される特定判断閾値Yの最適値は、mの値に応じて異なる。
がmに近い場合や非常に大きな場合、特定判断閾値YがH(m)に及ぼす影響が小さくなるため、小さな特定判断閾値Yが、特性判断閾値Yの最適値として選択される。
できるだけ、全ての大量フロー生成ホストを見逃す確率を抑えるためには、大量フロー生成ホストのmを代表するような値をmに選択することが望ましい。
そこで、m≧mの全てのホストに対するmの中央値をmに設定する。実際には、前測定期間において、下記(16−1)式で示す、特定された(サンプルフロー数が特定判断閾値Y以上となった)ホストのサンプルフロー数の中央値を計算し、下記(16−2)式により設定する。
Figure 2008022113
ただし、前測定期間の特定処理では大量フロー生成ホストの見逃しや非大量フロー生成ホストの誤特定が生じるため、特定されたホストのサンプルフロー数から推定した生成フロー数の中央値は、実際の大量フロー生成ホストの生成フロー数の中央値とは異なる。
そこで、mを下記(17)式により補正する。
なお、(17)式において、Nは前測定期間で特定されたホスト数であり、dは、1≦d≦m−1の範囲の値をとる任意の整数値である.
Figure 2008022113
以上説明したように、本実施例では、メモリサイズB、測定期間Φ、特定閾値m、その特定確率H、測定期間内の総フロー数M、が与えられた場合に、大量フロー生成ホストを誤って見逃す確率(FNR)を最小化するように、Bloom filterのパラメータbとk、ホストテーブルのパラメータβに加え、特定判断閾値Y、フローサンプリングレートr、ESAのサイズEとを最適設計することが可能となる。
以上、本発明者によってなされた発明を、前記実施例に基づき具体的に説明したが、本発明は、前記実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
本発明の実施例の大量フロー生成ホスト特定方法の最適メモリ割当て法が適用されるシステム構成を示すブロック図である。
符号の説明
101 パラメータ設計装置
102 フローサンプリング装置
103 新規フロー判定装置
104 ホストテーブル
105 大量フロー生成ホスト特定装置
106 大量フロー生成ホストリスト

Claims (6)

  1. フローサンプリングによって得られた統計データのみを用いて、単位時間あたりに生成するフロー数が閾値以上となるホストを特定する大量フロー生成ホスト特定法における最適メモリ割当て方法であって、
    大量フロー生成ホストを誤って見逃す確率を最小化するように、実装されているメモリ量を、新規フローの判定に用いるBloom filterと、サンプルされたホスト毎にサンプルフロー数を記億するホストテーブルの各々に割り当てることを特徴とする最適メモリ割当て方法。
  2. 実装されているメモリ量Bと、特定判断閾値Yとが与えられたときに、Bloom filterとホストテーブルの全てのパラメータを導出することを特徴とする請求項1に記載の最適メモリ割当て方法。
  3. 任意の生成フロー数mを有する大量フロー生成ホストが、ホストテーブルにエントリされたという条件のもとで特定されない確率の上限H(m)と、このホストがホストテーブルにエントリされない確率の上限R(m)とを導出し、H(m){1−R(m)}+R(m)を最小化する特定判断閾値Yを最適値として導出することを特徴とする請求項2に記載の最適メモリ割当て方法。
  4. 特定判断閾値Yを設定する際に用いる大量フロー生成ホストの生成フロー数に関する代表値mを、全ての大量フロー生成ホストの生成フロー数の中央値とすることを特徴とする請求項3に記載の最適メモリ割当て方法。
  5. パラメータ算出に必要となる全フロー数と、大量フロー生成ホストの生成フロー数の中央値とを、前測定期間で得られた情報を用いて推定することを特徴とする請求項1ないしに請求項4のいずれか1項に記載の最適メモリ割当て方法。
  6. 大量フロー生成ホストの生成フロー数の中央値の推定において、前測定期間における特定ホストの誤差の影響を除去するため、中央値に見逃し大量フロー生成ホスト数の推定値を加え、さらに誤って特定した非大量フロー生成ホスト数の推定値を引くことを特徴とする請求項4に記載の最適メモリ割当て方法。
JP2006190115A 2006-07-11 2006-07-11 最適メモリ割当て方法 Expired - Fee Related JP4311682B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006190115A JP4311682B2 (ja) 2006-07-11 2006-07-11 最適メモリ割当て方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006190115A JP4311682B2 (ja) 2006-07-11 2006-07-11 最適メモリ割当て方法

Publications (2)

Publication Number Publication Date
JP2008022113A true JP2008022113A (ja) 2008-01-31
JP4311682B2 JP4311682B2 (ja) 2009-08-12

Family

ID=39077772

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006190115A Expired - Fee Related JP4311682B2 (ja) 2006-07-11 2006-07-11 最適メモリ割当て方法

Country Status (1)

Country Link
JP (1) JP4311682B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011004333A (ja) * 2009-06-22 2011-01-06 Nippon Telegr & Teleph Corp <Ntt> ネットワーク品質算出システムと方法およびプログラム
JP2014002483A (ja) * 2012-06-15 2014-01-09 Nippon Telegr & Teleph Corp <Ntt> アクセス履歴記憶及び検索装置及び方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011004333A (ja) * 2009-06-22 2011-01-06 Nippon Telegr & Teleph Corp <Ntt> ネットワーク品質算出システムと方法およびプログラム
JP2014002483A (ja) * 2012-06-15 2014-01-09 Nippon Telegr & Teleph Corp <Ntt> アクセス履歴記憶及び検索装置及び方法

Also Published As

Publication number Publication date
JP4311682B2 (ja) 2009-08-12

Similar Documents

Publication Publication Date Title
US7596810B2 (en) Apparatus and method of detecting network attack situation
JP2009534001A (ja) 悪質な攻撃の検出システム及びそれに関連する使用方法
WO2018113594A1 (zh) 防御dns攻击的方法、装置及存储介质
US8018845B2 (en) Sampling rate-limited traffic
US8121043B2 (en) Approach for managing the consumption of resources using adaptive random sampling
US8195750B1 (en) Method and system for tracking botnets
US20080104702A1 (en) Network-based internet worm detection apparatus and method using vulnerability analysis and attack modeling
US10567426B2 (en) Methods and apparatus for detecting and/or dealing with denial of service attacks
WO2011113239A1 (zh) 域名系统流量检测方法与域名服务器
US7873833B2 (en) Detection of frequent and dispersed invariants
EP3618355B1 (en) Systems and methods for operating a networking device
US10623323B2 (en) Network devices and a method for signature pattern detection
Xie et al. A Table Overflow LDoS Attack Defending Mechanism in Software‐Defined Networks
JP2010092236A (ja) 情報処理装置、プログラム、および記録媒体
CN112073376A (zh) 一种基于数据面的攻击检测方法及设备
JP4311682B2 (ja) 最適メモリ割当て方法
CN110958245A (zh) 一种攻击的检测方法、装置、设备和存储介质
US8782504B2 (en) Trend-analysis scheme for reliably reading data values from memory
CN115017502A (zh) 一种流量处理方法、及防护系统
US9369485B2 (en) TCP connection resource diversity using tunable geometric series
JP4209897B2 (ja) 大量フロー生成ホスト特定方法およびシステム
JP4768674B2 (ja) ワーム感染ホスト特定法およびワーム感染ホスト特定システム
KR102046612B1 (ko) Sdn 기반의 dns 증폭 공격 방어시스템 및 그 방법
JP2009296158A (ja) 通信データ統計装置および通信データ統計方法
Mazel et al. Identifying and characterizing ZMap scans: a cryptanalytic approach

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080805

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081006

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090305

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: 20090507

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090508

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120522

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4311682

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130522

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140522

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees