説明

トラヒック判別装置及びトラヒック判別装置における閾値の更新方法

【課題】通信ネットワーク上でのユーザのトラヒック状況を判別する際に使用する閾値を、事前に特定の値を指定することなく、また過去のトラヒック量を全て記憶・保持することなく決定でき、ユーザの通信需要の増大に応じて更新可能とすること。
【解決手段】閾値Tとの比較によるユーザの単位時間当たりのトラヒック量Xの判別結果が低需要トラヒックであれば(s3;YES)、低需要トラヒックに対するパラメータN1、M1及びD1を更新し(s4〜s6)、また、高需要トラヒックであれば(s3;NO)、高需要トラヒックに対するパラメータN2、M2及びD2を更新し(s7〜s9)、さらにこれらのパラメータのみを用いて閾値Tを更新する(s11)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信ネットワーク上でのユーザのトラヒック状況を判別する技術、特に当該判別に使用する閾値を、事前に特定の値を指定することなく、また過去のトラヒック量を全て記憶・保持することなく決定でき、ユーザの通信需要の増大に応じて更新可能な技術に関する。
【背景技術】
【0002】
通信ネットワーク上を流れるユーザのトラヒック量は、予め決められた一定量のトラヒックを常時伝送する一部の通信ネットワークを除き、一般的な通信ネットワークでは当該ユーザのトラヒック状況と当該通信ネットワークの状態によって変化する。例えば、ユーザがサイズの大きなファイルをダウンロードしようとした際には、大量のトラヒックが通信ネットワーク上を流れることになる。
【0003】
ここで、「ユーザのトラヒック状況」とは、通信ネットワーク上でのユーザの単位時間当たりのトラヒック量の頻度分布をとった場合の当該頻度の平均及び標準偏差が異なる二つの特徴的なトラヒック状況、即ち通信需要が低い時のトラヒック状況(以下、「低需要トラヒック」)または通信需要が高い時のトラヒック状況(以下、「高需要トラヒック」)をいうものとし、本発明が対象とする通信ネットワークにおいては、前記低需要トラヒックまたは高需要トラヒックの両方が発生し得る(但し、同時に発生することはない。)ものとする。
【0004】
通信ネットワークを提供する電気通信事業者は、ユーザに対して最適なサービスを提供するために、ユーザがどのようなトラヒック状況にあるかを判別することが重要となる。
【0005】
一方、電気通信事業法(昭和五十九年十二月二十五日法律第八十六号)の第四条、即ち
「(秘密の保護)
第四条 電気通信事業者の取扱中に係る通信の秘密は、侵してはならない。
【0006】
2 電気通信事業に従事する者は、在職中電気通信事業者の取扱中に係る通信に関して知り得た他人の秘密を守らなければならない。その職を退いた後においても、同様とする。」
によれば、電気通信事業者は、提供する通信ネットワークにおける通信の秘密を侵すことができないとされている。このため、電気通信事業者がユーザのトラヒック状況を知る手段は限られ、これまでユーザのトラヒック量から当該ユーザのトラヒック状況を判別する技術が提案されてきた。
【0007】
例えば、非特許文献1では、通常トラヒック(通常時のトラヒック状況)の統計的性質を利用したSYN Flood 攻撃の検出手法を提案している。この方法では、ユーザのトラヒック量から当該ユーザにおける通常トラヒックと攻撃トラヒック(SYN Flood 攻撃時のトラヒック状況)を判別することが可能であるが、ユーザトラヒック内で SYNパケットだけを分離した到着レートを把握する必要がある。また、その閾値は実験により固定的に求めている。
【0008】
ユーザのトラヒック量は、非特許文献1に示すように、ユーザのトラヒック状況が一定という条件下では対数正規分布を示すことが知られている。このような対数正規分布の集合を判別する閾値を与える方法として、マハラノビス距離を用いた方法が知られている。この方法は、二つの正規分布の集合の平均を、二つの正規分布の標準偏差の逆比で分割した点が、誤判別率が最低になるというものである。
【0009】
前述した方法では、仮の閾値を用いて過去のトラヒック量を二つの集合に分離した上で、当該仮の閾値より下位の集合を低需要時のトラヒック、上位の集合を高需要時のトラヒックとし、この低需要時及び高需要時のトラヒック分布から平均と標準偏差を計算し、閾値を更新することで適切な閾値を決定する。
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかし、前述した従来の閾値の決定方法では、繰り返し計算を行うために、新たな分類のもとで平均と標準偏差を算出する必要があるが、それには過去のトラヒック量を全て記憶・保持している必要があり、必要な記憶装置の容量が増大するという問題があった。
【0011】
そこで、本発明は、上記の課題に対し、ユーザのトラヒック状況を判別する際に使用する閾値を、過去のトラヒック量を全て記憶・保持することなく、繰り返し更新可能な方法で決定することにより、過去のトラヒック量を記憶・保持するための記憶容量を不要とすることを目的とする。
【課題を解決するための手段】
【0012】
本発明では、前記目的を達成するため、通信ネットワーク上でのユーザのトラヒック状況が、通信ネットワーク上でのユーザの単位時間当たりのトラヒック量の頻度分布をとった場合の当該頻度の平均及び標準偏差が異なる二つの特徴的なトラヒック状況である低需要トラヒックまたは高需要トラヒックのいずれであるかを、ユーザの単位時間当たりのトラヒック量を所定の閾値と比較することで判別するトラヒック判別装置であって、通信ネットワーク上でのユーザの単位時間当たりのトラヒック量Xを観測するトラヒック量観測部と、所定の閾値Tとともに、低需要トラヒックに対する分散に対応するパラメータD1、過去に観測され低需要トラヒックと判別された前記トラヒック量Xの平均値M1及び個数N1、高需要トラヒックに対する分散に対応するパラメータD2、過去に観測され高需要トラヒックと判別された前記トラヒック量Xの平均値M2及び個数N2を書き換え可能に保持するパラメータ保持部と、閾値Tの初期値T1、低需要トラヒックと判別された前記トラヒック量Xの個数の下限値である低需要トラヒック個数下限値N1min 、高需要トラヒックと判別された前記トラヒック量Xの個数の下限値である高需要トラヒック個数下限値N2min を保持する定数保持部と、トラヒック量観測部で観測された前記トラヒック量Xとパラメータ保持部の閾値Tとを比較し、当該トラヒック量Xが低需要トラヒックまたは高需要トラヒックのいずれであるかを判別する判別部と、パラメータ保持部の閾値Tが未設定の場合は定数保持部に保持された初期値T1を閾値Tとしてパラメータ保持部に代入し、判別部による前記トラヒック量Xの判別結果が低需要トラヒックであればパラメータ保持部のN1の値をN1+1に更新し、その結果、N1の値が定数保持部に保持された低需要トラヒック個数下限値N1min より大きければパラメータ保持部のD1の値を
D1=(N1−1)/N1*(X−M1)^2+D1
に更新し、パラメータ保持部のM1の値を
M1=(M1*N1+X)/(N1+1)
に更新し、また、判別部による前記トラヒック量Xの判別結果が高需要トラヒックであればパラメータ保持部のN2の値をN2+1に更新し、その結果、N2の値が定数保持部に保持された高需要トラヒック個数下限値N2min より大きければパラメータ保持部のD2の値を
D2=(N2−1)/N2*(X−M2)^2+D2
に更新し、パラメータ保持部のM2の値を
M2=(M2*N2+X)/(N2+1)
に更新し、さらにそれらの結果、N1の値が低需要トラヒック個数下限値N1min より大きく、かつN2の値が高需要トラヒック個数下限値N2min より大きく、かつD1とD2の積が0以外の場合はパラメータ保持部の閾値Tの値を
T={sqrt(D1/N1)*M1+sqrt(D2/N2)*M2}
/{sqrt(D1/N1)+sqrt(D2/N2)}
に更新するパラメータ更新部とを備えたことを特徴とするトラヒック判別装置を提案する。
【0013】
なお、本発明において、a,b,Aをそれぞれ変数とした場合、「a^b」は「aのb乗」を意味し、「sqrtA」は「Aの平方根」を意味するものとする。
【発明の効果】
【0014】
本発明によれば、ユーザの単位時間当たりのトラヒック量Xの外、低需要トラヒックに対するパラメータN1、M1及びD1、並びに高需要トラヒックに対するパラメータN2、M2及びD2のみを用いて閾値Tを決定・更新することができるため、低需要トラヒックと高需要トラヒックを判別する際の閾値を、従来の二つの正規分布の集合の平均を二つの正規分布の標準偏差の逆比で分割した点とする閾値設定方式に対して、過去のトラヒック量を全て記憶・保持することなく、新たなトラヒック量に対し繰り返し計算により類似した閾値を算出することが可能となる。このことで、過去のトラヒック量の保持に必要な記憶容量が不要になる。
【図面の簡単な説明】
【0015】
【図1】本発明のトラヒック判別装置の実施の形態の一例を示す構成図
【図2】図1中のパラメータ更新部における処理のフローチャート
【図3】ユーザの単位時間当たりのトラヒック量の推移の一例を示す説明図
【図4】図3に示したトラヒック量の推移を頻度分布化して示す説明図
【図5】最初のトラヒック量が与えられた時のパラメータの更新過程の一例を示す説明図
【図6】単位時間毎のトラヒック量、その判別結果及び各パラメータの更新状況の一例を示す説明図
【図7】最初のトラヒック量が与えられた時のパラメータの更新過程の他の例を示す説明図
【図8】単位時間毎のトラヒック量、その判別結果及び各パラメータの更新状況の他の例を示す説明図
【発明を実施するための形態】
【0016】
以下、本発明を図面に基づいて詳細に説明する。
【0017】
図1は本発明のトラヒック判別装置の実施の形態の一例を示すもので、図中、1はトラヒック量観測部、2はパラメータ保持部、3は定数保持部、4は判別部、5はパラメータ更新部である。
【0018】
トラヒック量観測部1は、通信ネットワーク上でのユーザの単位時間当たりのトラヒック量Xを観測し、判別部4及びパラメータ更新部5へ出力する。
【0019】
パラメータ保持部2は、所定の閾値Tとともに、低需要トラヒックに対する分散に対応するパラメータD1、過去に観測され低需要トラヒックと判別された前記トラヒック量Xの平均値M1及び個数N1、高需要トラヒックに対する分散に対応するパラメータD2、過去に観測され高需要トラヒックと判別された前記トラヒック量Xの平均値M2及び個数N2を書き換え可能に保持する。
【0020】
定数保持部3は、閾値Tの初期値T1、低需要トラヒックと判別された前記トラヒック量Xの個数の下限値である低需要トラヒック個数下限値N1min 、高需要トラヒックと判別された前記トラヒック量Xの個数の下限値である高需要トラヒック個数下限値N2min を保持する。
【0021】
判別部4は、トラヒック量観測部1から前記トラヒック量Xを受け取る度に、当該トラヒック量観測部1で観測された前記トラヒック量Xとパラメータ保持部の閾値Tとを比較し、当該トラヒック量Xが低需要トラヒックまたは高需要トラヒックのいずれであるかを判別、例えば前記トラヒック量Xが閾値Tより小さければ低需要トラヒックと判別し、また閾値T以上であれば高需要トラヒックと判別(もしくは前記トラヒック量Xが閾値T以下であれば低需要トラヒックと判別し、また閾値Tより大きければ高需要トラヒックと判別)し、判別結果をパラメータ更新部5へ出力する。
【0022】
パラメータ更新部5は、トラヒック量観測部1から前記トラヒック量Xを受け取る度に図2のフローチャートに従う、以下の処理を実行する。
【0023】
まず、パラメータ保持部2の閾値Tが未設定かどうかを確認し(s1)、設定済みであれば(s1;NO)そのままs3に進み、未設定であれば(s1;YES)定数保持部3に保持された初期値T1を閾値Tとしてパラメータ保持部2に代入する(s2)。
【0024】
次に、判別部4による前記トラヒック量Xの判別結果を確認し(s3)、低需要トラヒックであれば(s3;YES)パラメータ保持部2のN1の値をN1+1に更新する(s4)。さらに、パラメータ保持部2のN1の値と定数保持部3に保持された低需要トラヒック個数下限値N1min とを比較し(s5)、N1の値がN1min 以下であれば(s5;NO)そのままs10に進み、N1の値がN1min より大きければ(s5;YES)パラメータ保持部2のD1の値を
D1=(N1−1)/N1*(X−M1)^2+D1
に更新し、パラメータ保持部2のM1の値を
M1=(M1*N1+X)/(N1+1)
に更新する(s6)。
【0025】
一方、判別部4による前記トラヒック量Xの判別結果が高需要トラヒックであれば(s3;NO)パラメータ保持部2のN2の値をN2+1に更新する(s7)。さらに、パラメータ保持部2のN2の値と定数保持部3に保持された高需要トラヒック個数下限値N2min とを比較し(s8)、N2の値がN2min 以下であれば(s8;NO)そのままs10に進み、N2の値がN2min より大きければ(s8;YES)パラメータ保持部2のD2の値を
D2=(N2−1)/N2*(X−M2)^2+D2
に更新し、パラメータ保持部2のM2の値を
M2=(M2*N2+X)/(N2+1)
に更新する(s9)。
【0026】
さらに、N1の値と低需要トラヒック個数下限値N1min とを比較し、またN2の値と高需要トラヒック個数下限値N2min とを比較し、またD1とD2の積が0かどうかを確認し(s10)、N1の値がN1min 以下であるか又はN2の値がN2min 以下であるか又はD1とD2の積が0であれば(s10;NO)そのまま終了し、N1の値がN1min より大きく、かつN2の値がN2min より大きく、かつD1とD2の積が0以外であれば(s10;YES)パラメータ保持部2の閾値Tの値を
T={sqrt(D1/N1)*M1+sqrt(D2/N2)*M2}
/{sqrt(D1/N1)+sqrt(D2/N2)}
に更新する(s11)。
【0027】
図3はユーザの単位時間当たりのトラヒック量(単位は任意)の推移の一例を示すものである。また、図4は図3に示したトラヒック量の推移(のトラヒック量観測部1による観測結果)を同一トラヒック量毎に積み上げ、頻度分布化して示したもので、ブロック内の数字は図3における単位時間を表している。
【0028】
図4に示した過去のトラヒック量の頻度分布に対応するデータは、本発明によらず従来の閾値の決定方法によって閾値を決定・更新する場合に全て記憶・保持すべきデータとなる。図4の例ではトラヒック量の単位数は「10」であるが、実用的にはより多くのトラヒック量の単位数が必要となり、この場合、本発明によって不要となる記憶容量はより大きなものとなる。
【0029】
以下、図3に示したトラヒック量の推移を例にとって本装置の動作を説明する。ここで、定数保持部3に保持した各定数はT1=6、N1min =3、N2min =3とし、パラメータ保持部2の各パラメータは当初、いずれも未設定(「0」)とする。
【0030】
まず、トラヒック量観測部1により、通信ネットワーク上でのユーザの最初の単位時間当たりのトラヒック量X、ここではX=2が観測され、これが判別部4及びパラメータ更新部5へ出力される。
【0031】
一方、パラメータ更新部5ではトラヒック量Xが入力されると、パラメータ保持部2の閾値Tが未設定か否かを確認する(s1)が、ここでは未設定であるから(s1;YES)、定数保持部3に保持された初期値T1、ここでは「6」を閾値Tとしてパラメータ保持部2に代入する(s2)。
【0032】
また、判別部4ではトラヒック量Xが入力されると、これとパラメータ保持部2の閾値Tとを比較し、当該トラヒック量Xが低需要トラヒックまたは高需要トラヒックのいずれであるかを判別、ここではX=2とT=6とを比較して低需要トラヒックと判別し、判別結果をパラメータ更新部5へ出力する。
【0033】
パラメータ更新部5ではトラヒック量Xが低需要トラヒックであるから(s3;YES)、個数N1の値を更新、ここではN1=0からN1=1に更新する(s4)。また、パラメータ更新部5では個数N1が低需要トラヒックの個数下限値N1min より大きいか否かを確認する(s5)が、ここではN1=1でN1min =3より小さいため(s5;NO)、分散D1の更新は行わない。また同様にN1がN1min より大きいか否か、N2がN2min より大きいか否か、及びD1とD2の積が0以外か否かを確認する(s10)が、ここではN1がN1min より小さいため(s10;NO)、閾値Tの更新も行わない。
【0034】
図5は最初のユーザの単位時間当たりのトラヒック量が与えられた時のパラメータ保持部2のパラメータの更新過程を定数保持部3の内容とともに示している。
【0035】
以後、トラヒック量観測部1によりユーザの単位時間当たりのトラヒック量Xが観測される都度、判別部4において同様の判別処理、並びにパラメータ更新部5において図2の流れに従うパラメータ更新処理が行われる。
【0036】
図6は図3に示した単位時間毎のトラヒック量が観測された際の、判別部4における判別結果及びパラメータ保持部2における各パラメータの更新状況を示している。ここで、最終的な閾値Tは6.19であり、これは図4に示したトラヒック量の頻度分布を適切に分割する値となっていることがわかる。
【0037】
図7及び図8はそれぞれ、定数保持部3に保持する各定数をT1=4、N1min =2、N2min =2とした場合の図5及び図6と同様な図を示す。この際、最終的な閾値Tは6.75となっており、同様に図4に示したトラヒック量の頻度分布を適切に分割可能な値であり、初期値T1の値は最終的な閾値Tにあまり影響を与えないことがわかる。
【0038】
なお、これまでの説明では一人のユーザについてそのトラヒック判別及び閾値の更新を行う場合を例にとって述べたが、複数のユーザについてそれぞれ同時に、前記同様のトラヒック判別及び閾値の更新を行うことが可能であることはいうまでもない。
【符号の説明】
【0039】
1:トラヒック量観測部、2:パラメータ保持部、3:定数保持部、4:判別部、5:パラメータ更新部。
【先行技術文献】
【非特許文献】
【0040】
【非特許文献1】大下裕一、阿多信吾、村田正幸「観測トラヒックの統計的性質を利用したDDoS Attackの検出方法」、信学技報IN2003-201、社団法人 電子情報通信学会、2004年2月発行、pp.23〜28

【特許請求の範囲】
【請求項1】
通信ネットワーク上でのユーザのトラヒック状況が、通信ネットワーク上でのユーザの単位時間当たりのトラヒック量の頻度分布をとった場合の当該頻度の平均及び標準偏差が異なる二つの特徴的なトラヒック状況である低需要トラヒックまたは高需要トラヒックのいずれであるかを、ユーザの単位時間当たりのトラヒック量を所定の閾値と比較することで判別するトラヒック判別装置であって、
通信ネットワーク上でのユーザの単位時間当たりのトラヒック量Xを観測するトラヒック量観測部と、
所定の閾値Tとともに、低需要トラヒックに対する分散に対応するパラメータD1、過去に観測され低需要トラヒックと判別された前記トラヒック量Xの平均値M1及び個数N1、高需要トラヒックに対する分散に対応するパラメータD2、過去に観測され高需要トラヒックと判別された前記トラヒック量Xの平均値M2及び個数N2を書き換え可能に保持するパラメータ保持部と、
閾値Tの初期値T1、低需要トラヒックと判別された前記トラヒック量Xの個数の下限値である低需要トラヒック個数下限値N1min 、高需要トラヒックと判別された前記トラヒック量Xの個数の下限値である高需要トラヒック個数下限値N2min を保持する定数保持部と、
トラヒック量観測部で観測された前記トラヒック量Xとパラメータ保持部の閾値Tとを比較し、当該トラヒック量Xが低需要トラヒックまたは高需要トラヒックのいずれであるかを判別する判別部と、
パラメータ保持部の閾値Tが未設定の場合は定数保持部に保持された初期値T1を閾値Tとしてパラメータ保持部に代入し、
判別部による前記トラヒック量Xの判別結果が低需要トラヒックであればパラメータ保持部のN1の値をN1+1に更新し、その結果、N1の値が定数保持部に保持された低需要トラヒック個数下限値N1min より大きければパラメータ保持部のD1の値を
D1=(N1−1)/N1*(X−M1)^2+D1
に更新し、パラメータ保持部のM1の値を
M1=(M1*N1+X)/(N1+1)
に更新し、
また、判別部による前記トラヒック量Xの判別結果が高需要トラヒックであればパラメータ保持部のN2の値をN2+1に更新し、その結果、N2の値が定数保持部に保持された高需要トラヒック個数下限値N2min より大きければパラメータ保持部のD2の値を
D2=(N2−1)/N2*(X−M2)^2+D2
に更新し、パラメータ保持部のM2の値を
M2=(M2*N2+X)/(N2+1)
に更新し、
さらにそれらの結果、N1の値が低需要トラヒック個数下限値N1min より大きく、かつN2の値が高需要トラヒック個数下限値N2min より大きく、かつD1とD2の積が0以外の場合はパラメータ保持部の閾値Tの値を
T={sqrt(D1/N1)*M1+sqrt(D2/N2)*M2}
/{sqrt(D1/N1)+sqrt(D2/N2)}
に更新するパラメータ更新部とを備えた
ことを特徴とするトラヒック判別装置。
【請求項2】
通信ネットワーク上でのユーザのトラヒック状況が、通信ネットワーク上でのユーザの単位時間当たりのトラヒック量の頻度分布をとった場合の当該頻度の平均及び標準偏差が異なる二つの特徴的なトラヒック状況である低需要トラヒックまたは高需要トラヒックのいずれであるかを、ユーザの単位時間当たりのトラヒック量を所定の閾値と比較することで判別するトラヒック判別装置における閾値の更新方法であって、
通信ネットワーク上でのユーザの単位時間当たりのトラヒック量Xを観測するトラヒック量観測部と、
所定の閾値Tとともに、低需要トラヒックに対する分散に対応するパラメータD1、過去に観測され低需要トラヒックと判別された前記トラヒック量Xの平均値M1及び個数N1、高需要トラヒックに対する分散に対応するパラメータD2、過去に観測され高需要トラヒックと判別された前記トラヒック量Xの平均値M2及び個数N2を書き換え可能に保持するパラメータ保持部と、
閾値Tの初期値T1、低需要トラヒックと判別された前記トラヒック量Xの個数の下限値である低需要トラヒック個数下限値N1min 、高需要トラヒックと判別された前記トラヒック量Xの個数の下限値である高需要トラヒック個数下限値N2min を保持する定数保持部と、
トラヒック量観測部で観測された前記トラヒック量Xとパラメータ保持部の閾値Tとを比較し、当該トラヒック量Xが低需要トラヒックまたは高需要トラヒックのいずれであるかを判別する判別部と、
パラメータ更新部とを用い、
前記パラメータ更新部が、
パラメータ保持部の閾値Tが未設定の場合は定数保持部に保持された初期値T1を閾値Tとしてパラメータ保持部に代入するステップと、
判別部による前記トラヒック量Xの判別結果が低需要トラヒックであればパラメータ保持部のN1の値をN1+1に更新し、その結果、N1の値が定数保持部に保持された低需要トラヒック個数下限値N1min より大きければパラメータ保持部のD1の値を
D1=(N1−1)/N1*(X−M1)^2+D1
に更新し、パラメータ保持部のM1の値を
M1=(M1*N1+X)/(N1+1)
に更新するステップと、
判別部による前記トラヒック量Xの判別結果が高需要トラヒックであればパラメータ保持部のN2の値をN2+1に更新し、その結果、N2の値が定数保持部に保持された高需要トラヒック個数下限値N2min より大きければパラメータ保持部のD2の値を
D2=(N2−1)/N2*(X−M2)^2+D2
に更新し、パラメータ保持部のM2の値を
M2=(M2*N2+X)/(N2+1)
に更新するステップと、
さらにそれらの結果、N1の値が低需要トラヒック個数下限値N1min より大きく、かつN2の値が高需要トラヒック個数下限値N2min より大きく、かつD1とD2の積が0以外の場合はパラメータ保持部の閾値Tの値を
T={sqrt(D1/N1)*M1+sqrt(D2/N2)*M2}
/{sqrt(D1/N1)+sqrt(D2/N2)}
に更新するステップとを実行する
ことを特徴とするトラヒック判別装置における閾値の更新方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2012−100085(P2012−100085A)
【公開日】平成24年5月24日(2012.5.24)
【国際特許分類】
【出願番号】特願2010−246176(P2010−246176)
【出願日】平成22年11月2日(2010.11.2)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】