(57)【特許請求の範囲】
【請求項１】
分散型サービス妨害（DDoS）攻撃検出方法であって、
各検出期間に保護対象デバイスに送信されたデータストリームを取得し、各データストリームの総持続時間を取得するステップと、
各データストリームの前記総持続時間に基づいて、各データストリームが長いデータストリームまたは短いデータストリームであるかどうかを判定するステップと、
前記長いデータストリームが通過する検出期間に基づいて、前記長いデータストリームの総データトラフィックを、前記長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるステップと、
各検出期間の前記統計トラフィックを判定するために、各検出期間の短いデータストリームのデータトラフィックを、対応する検出期間に割り当てられた長いデータストリームのデータトラフィックに追加するステップと、
前記統計トラフィックが予め設定されたトラフィック閾値を超える検出期間がある場合、前記保護対象デバイスが前記検出期間にDDoS攻撃を受けていると判定するステップと
を含む方法。
【請求項２】
前記長いデータストリームが通過する検出期間に基づいて、前記長いデータストリームの総データトラフィックを、前記長いデータストリームが通過する各検出期間の統計トラフィックに割り当てる前記ステップが、
前記長いデータストリームが各検出期間を通過するのに使用した持続時間に基づいて、前記長いデータストリームの前記総データトラフィックを、前記長いデータストリームが通過する各検出期間の前記統計トラフィックに割り当てるステップ
を含む、請求項1に記載の方法。
【請求項３】
前記長いデータストリームのデータトラフィックレコードについて現在のデータトラフィックキャッシュレコードを検索するステップと、
前記長いデータストリームの前記データトラフィックレコードが前記現在のデータトラフィックキャッシュレコードに存在する場合、前記長いデータストリームの前記総データトラフィックを判定するために、現在の保存期間の前記長いデータストリームのデータトラフィックを、発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の前記長いデータストリームのデータトラフィックに追加するステップと
をさらに含む、請求項1または2に記載の方法。
【請求項４】
前記長いデータストリームがアクティブストリームであるかどうかを判定するステップと、
前記長いデータストリームが前記アクティブストリームである場合、前記現在の保存期間の前記長いデータストリームの前記データトラフィックと前記発見された現在のデータトラフィックキャッシュレコードにおける前記過去の保存期間の前記長いデータストリームの前記データトラフィックとの総データトラフィックをキャッシュするステップ、または
前記長いデータストリームが非アクティブストリームである場合、前記現在の保存期間の前記長いデータストリームの前記データトラフィックと前記発見された現在のデータトラフィックキャッシュレコードにおける前記過去の保存期間の前記長いデータストリームの前記データトラフィックとの総データトラフィックに対してキャッシュクリアを行うステップと
をさらに含む、請求項3に記載の方法。
【請求項５】
前記長いデータストリームがアクティブストリームであるかどうかを判定する前記ステップが、
データトラフィックが予め設定されたアクティブストリームエージング時点で前記長いデータストリームから連続的に出力されるかどうかを判定するステップ
を含む、請求項4に記載の方法。
【請求項６】
分散型サービス妨害（DDoS）攻撃検出デバイスであって、
各検出期間に保護対象デバイスに送信されたデータストリームを取得し、各データストリームの総持続時間を取得するように構成された、持続時間取得モジュールと、
各データストリームの前記総持続時間に基づいて、各データストリームが長いデータストリームまたは短いデータストリームであるかどうかを判定するように構成された、データストリーム分割モジュールと、
前記長いデータストリームが通過する検出期間に基づいて、前記長いデータストリームの総データトラフィックを、前記長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるように構成された、トラフィック割当モジュールと、
各検出期間の前記統計トラフィックを判定するために、各検出期間の短いデータストリームのデータトラフィックを、対応する検出期間に割り当てられた長いデータストリームのデータトラフィックに追加するように構成された、トラフィック統計モジュールと、
前記統計トラフィックが予め設定されたトラフィック閾値を超える検出期間がある場合、前記保護対象デバイスが前記検出期間にDDoS攻撃を受けていると判定するように構成された、攻撃判定モジュールと
を備えるDDoS攻撃検出デバイス。
【請求項７】
前記トラフィック割当モジュールが、各検出期間を通過するために前記長いデータストリームによって使用される持続時間に基づいて、前記長いデータストリームの前記総データトラフィックを、前記長いデータストリームが通過する各検出期間の前記統計トラフィックに割り当てるように特に構成される、請求項6に記載のDDoS攻撃検出デバイス。
【請求項８】
前記長いデータストリームのデータトラフィックレコードについて現在のデータトラフィックキャッシュレコードを検索し、前記長いデータストリームの前記データトラフィックレコードが前記現在のデータトラフィックキャッシュレコードに存在する場合、前記長いデータストリームの前記総データトラフィックを判定するために、現在の保存期間の前記長いデータストリームのデータトラフィックを、発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の前記長いデータストリームのデータトラフィックに追加するように構成された、レコード検索モジュール
をさらに備える、請求項6または7に記載のDDoS攻撃検出デバイス。
【請求項９】
前記長いデータストリームがアクティブストリームであるかどうかを判定し、前記長いデータストリームが前記アクティブストリームである場合、前記現在の保存期間の前記長いデータストリームの前記データトラフィックと前記発見された現在のデータトラフィックキャッシュレコードにおける前記過去の保存期間の前記長いデータストリームの前記データトラフィックとの総データトラフィックをキャッシュし、または前記長いデータストリームが非アクティブストリームである場合、前記現在の保存期間の前記長いデータストリームの前記データトラフィックと前記発見された現在のデータトラフィックキャッシュレコードにおける前記過去の保存期間の前記長いデータストリームの前記データトラフィックとの総データトラフィックに対してキャッシュクリアを行うように構成された、アクティブストリーム判定モジュール
をさらに備える、請求項8に記載のDDoS攻撃検出デバイス。
【請求項１０】
前記長いデータストリームが前記アクティブストリームであるかどうかを判定する前記アクティブストリーム判定モジュールが、データトラフィックが予め設定されたアクティブストリームエージング時点で前記長いデータストリームから連続的に出力されるかどうかを判定するように特に構成される、請求項9に記載のDDoS攻撃検出デバイス。
【請求項１１】
コンピュータによって実行されるとき、請求項1から5のいずれか一項に記載の方法を前記コンピュータに実行させる命令を記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、2016年12月29日に中国特許庁に出願した「DDOS ATTACK DETECTION METHOD AND DEVICE」という名称の中国特許出願第201611243772.3号の優先権を主張し、その全体が参照により本明細書に組み込まれる。
【０００２】
本出願は、インターネット技術の分野に関し、特に、分散型サービス妨害（Distributed Denial of Service、DDoS）攻撃検出方法およびデバイスに関する。
【背景技術】
【０００３】
DDoS攻撃とは、複数のコンピュータが攻撃プラットフォームとして組み合わされ、適切なサービス要求を使用することによって大量のサービスリソースが1つまたは複数のターゲットサーバを占有するため、許可されたユーザはサーバからサービス応答を取得することができないことを意味する。
【０００４】
侵入検出機構では、サンプリングデバイス（例えば、ルータまたはスイッチ）は、保護対象デバイスに到着する情報を収集し、次に情報をサンプリング分析サーバに送信する。サンプリング分析サーバは、同じ保護対象デバイスに到着する異なるデータストリームの統計データを定期的に集計し、各検出期間の統計結果に基づいて、保護対象デバイスがDDoS攻撃を受けているかどうかを判定する。しかしながら、従来技術の攻撃検出機構では、特定の検出期間においてサンプリング分析サーバに報告されたデータトラフィックは、複数の検出期間におけるトラフィックの合計であり得る。しかしながら、サンプリング分析サーバが報告時点に対応する検出期間においてデータトラフィックをトラフィック統計データに記録するので、検出期間に属さないデータトラフィックは、検出期間におけるトラフィック統計データにカウントされる。その結果、検出期間におけるトラフィックが過大となり、図1に示す統計結果が取得される。実際には、保護対象デバイスは、統計トラフィック値が比較的大きい検出期間（例えば、15、33、または171）にDDoS攻撃を受けるとは限らない。その結果、不正確なデータ統計のために攻撃の検出精度が低下する。
【発明の概要】
【課題を解決するための手段】
【０００５】
本出願の実施態様において解決されるべき技術的問題は、各検出期間におけるデータ統計がより正確であるように、DDoS攻撃検出方法およびデバイスを提供することである。
【０００６】
本出願の第1の態様は、DDoS攻撃検出方法を提供し、方法は、DDoS攻撃検出デバイスによって、各検出期間に保護対象デバイスに送信されたデータストリームを取得し、各データストリームの総持続時間を取得するステップと、各データストリームの総持続時間に基づいて、各データストリームが長いデータストリームまたは短いデータストリームであるかどうかを判定するステップと、長いデータストリームが通過する検出期間に基づいて、長いデータストリームの総データトラフィックを、長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるステップと、各検出期間の統計トラフィックを判定するために、各検出期間の短いデータストリームのデータトラフィックを、対応する検出期間に割り当てられた長いデータストリームのデータトラフィックに追加するステップと、統計トラフィックが予め設定されたトラフィック閾値を超える検出期間がある場合、保護対象デバイスが検出期間に分散型サービス妨害DDoS攻撃を受けていると判定するステップとを含む。
【０００７】
本出願の一実施態様の第1の態様では、各検出期間の短いデータストリームのデータトラフィックは、トラフィック補償が行われる長いデータストリームのデータトラフィックに追加され、統計トラフィックを取得してほぼ実際のトラフィックを復元することで各検出期間のデータ統計がより正確になり、DDoS攻撃の検出精度が向上され、DDoS攻撃検出の報告誤差率が低減される。
【０００８】
第1の態様を参照すると、第1の態様の第1の実施態様では、長いデータストリームが通過する検出期間に基づいて、長いデータストリームの総データトラフィックを、長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるステップが、長いデータストリームが各検出期間を通過するのに使用した持続時間に基づいて、長いデータストリームの総データトラフィックを、長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるステップを含む。このようにして、トラフィック統計結果は、より正確になる。
【０００９】
第1の態様または第1の態様の第1の実施態様を参照すると、第1の態様の第2の実施態様では、方法が、長いデータストリームのデータトラフィックレコードについて現在のデータトラフィックキャッシュレコードを検索するステップと、長いデータストリームのデータトラフィックレコードが現在のデータトラフィックキャッシュレコードに存在する場合、長いデータストリームの総データトラフィックを判定するために、現在の保存期間の長いデータストリームのデータトラフィックを、発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックに追加するステップとをさらに含む。このようにして、各長いデータストリームの総データトラフィックは、より効果的に、より適切に、そしてより正確に取得され、それによって統計誤差を低減する。
【００１０】
第1の態様の第2の実施態様を参照すると、第1の態様の第3の実施態様では、方法は、長いデータストリームがアクティブストリームであるかどうかを判定するステップと、長いデータストリームがアクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックをキャッシュするステップ、または長いデータストリームが非アクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックに対してキャッシュクリアを行うステップとをさらに含む。このようにして、キャッシュクリアを時間内に行うことができ、それによってキャッシュスペースを節約する。
【００１１】
第1の態様の第3の実施態様を参照すると、第1の態様の第4の実施態様では、長いデータストリームがアクティブストリームであるかどうかを判定するステップが、データトラフィックが予め設定されたアクティブストリームエージング時点で長いデータストリームから連続的に出力されるかどうかを判定するステップを含む。
【００１２】
本出願の第2の態様は、DDoS攻撃検出デバイスを提供し、デバイスは、各検出期間に保護対象デバイスに送信されたデータストリームを取得し、各データストリームの総持続時間を取得するように構成された、持続時間取得モジュールと、各データストリームの総持続時間に基づいて、各データストリームが長いデータストリームまたは短いデータストリームであるかどうかを判定するように構成された、データストリーム分割モジュールと、長いデータストリームが通過する検出期間に基づいて、長いデータストリームの総データトラフィックを、長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるように構成された、トラフィック割当モジュールと、各検出期間の統計トラフィックを判定するために、各検出期間の短いデータストリームのデータトラフィックを、対応する検出期間に割り当てられた長いデータストリームのデータトラフィックに追加するように構成された、トラフィック統計モジュールと、統計トラフィックが予め設定されたトラフィック閾値を超える検出期間がある場合、保護対象デバイスが検出期間に分散型サービス妨害DDoS攻撃を受けていると判定するように構成された、攻撃判定モジュールとを含む。
【００１３】
本出願の第2の態様では、各検出期間の短いデータストリームのデータトラフィックは、トラフィック補償が行われる長いデータストリームのデータトラフィックに追加され、統計トラフィックを取得してほぼ実際のトラフィックを復元することで各検出期間のデータ統計がより正確になり、DDoS攻撃の検出精度が向上され、DDoS攻撃検出の報告誤差率が低減される。
【００１４】
第2の態様を参照すると、第2の態様の第1の実施態様では、トラフィック割当モジュールは、長いデータストリームが各検出期間を通過するのに使用した持続時間に基づいて、長いデータストリームの総データトラフィックを、長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるように特に構成される。このようにして、トラフィック統計結果は、より正確になる。
【００１５】
第2の態様または第2の態様の第1の実施態様を参照すると、第2の態様の第2の実施態様では、デバイスが、長いデータストリームのデータトラフィックレコードについて現在のデータトラフィックキャッシュレコードを検索し、長いデータストリームのデータトラフィックレコードが現在のデータトラフィックキャッシュレコードに存在する場合、長いデータストリームの総データトラフィックを判定するために、現在の保存期間の長いデータストリームのデータトラフィックを、発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックに追加するように構成された、レコード検索モジュールをさらに含む。このようにして、各長いデータストリームの総データトラフィックは、より効果的に、より適切に、そしてより正確に取得され、それによって統計誤差を低減する。
【００１６】
第2の態様の第2の実施態様を参照すると、第2の態様の第3の実施態様では、デバイスは、長いデータストリームがアクティブストリームであるかどうかを判定し、長いデータストリームがアクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックをキャッシュするか、または長いデータストリームが非アクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックに対してキャッシュクリアを行うように構成された、アクティブストリーム判定モジュールをさらに含む。このようにして、キャッシュクリアを時間内に行うことができ、それによってキャッシュスペースを節約する。
【００１７】
第2の態様の第3の実施態様を参照すると、第2の態様の第4の実施態様では、長いデータストリームがアクティブストリームであるかどうかを判定するアクティブストリーム判定モジュールが、データトラフィックが予め設定されたアクティブストリームエージング時点で長いデータストリームから連続的に出力されるかどうかを判定するように特に構成される。
【００１８】
可能な設計では、DDoS攻撃検出デバイスの構造は、プロセッサと、トランシーバとを含む。プロセッサは、本出願の第1の態様において提供されるDDoS攻撃検出方法を行うように構成される。任意選択で、DDoS攻撃検出デバイスは、メモリをさらに含んでもよい。メモリは、前述の方法を行う際にDDoS攻撃検出デバイスをサポートするアプリケーションプログラムコードを保存するように構成され、プロセッサは、メモリに保存されたアプリケーションプログラムを実行し、以下のステップ：
各検出期間に保護対象デバイスに送信されたデータストリームを取得し、各データストリームの総持続時間を取得するステップと、
各データストリームの総持続時間に基づいて、各データストリームが長いデータストリームまたは短いデータストリームであるかどうかを判定するステップと、
長いデータストリームが通過する検出期間に基づいて、長いデータストリームの総データトラフィックを、長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるステップと、
各検出期間の統計トラフィックを判定するために、各検出期間の短いデータストリームのデータトラフィックを、対応する検出期間に割り当てられた長いデータストリームのデータトラフィックに追加するステップと、
統計トラフィックが予め設定されたトラフィック閾値を超える検出期間がある場合、保護対象デバイスが検出期間にDDoS攻撃を受けていると判定するステップと
を行うように構成される。
【００１９】
可能な設計では、長いデータストリームが通過する検出期間に基づいて、長いデータストリームの総データトラフィックを、長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるステップが、長いデータストリームが各検出期間を通過するのに使用した持続時間に基づいて、長いデータストリームの総データトラフィックを、長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるステップを含む。
【００２０】
可能な設計では、以下のステップ：
長いデータストリームのデータトラフィックレコードについて現在のデータトラフィックキャッシュレコードを検索するステップと、
長いデータストリームのデータトラフィックレコードが現在のデータトラフィックキャッシュレコードに存在する場合、長いデータストリームの総データトラフィックを判定するために、現在の保存期間の長いデータストリームのデータトラフィックを、発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックに追加するステップと
がさらに含まれる。
【００２１】
可能な設計では、以下のステップ：
長いデータストリームがアクティブストリームであるかどうかを判定するステップと、
長いデータストリームがアクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックをキャッシュするステップ、または
長いデータストリームが非アクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックに対してキャッシュクリアを行うステップと
がさらに含まれる。
【００２２】
可能な設計では、長いデータストリームがアクティブストリームであるかどうかを判定するステップが、データトラフィックが予め設定されたアクティブストリームエージング時点で長いデータストリームから連続的に出力されるかどうかを判定するステップを含む。
【図面の簡単な説明】
【００２３】
【図１】本出願の一実施形態による保護対象デバイスの実際の統計トラフィックのインターフェースの概略図である。
【図２】本出願の一実施形態によるDDoS攻撃検出ネットワーキングの概略構造図である。
【図３】本出願の一実施形態によるDDoS攻撃検出方法の概略フローチャートである。
【図４】本出願の一実施形態による各検出期間における受信したデータストリームのインターフェースの概略図である。
【図５】本出願の一実施形態による各検出期間における受信したデータストリームのインターフェースの別の概略図である。
【図６】本出願の一実施形態による長いデータストリームの補償ベースラインのインターフェースの概略図である。
【図７】本出願の一実施形態による、補償が長いデータストリームに対して行われた後に取得された統計トラフィックのインターフェースの概略図である。
【図８Ａ】本出願の別の実施形態によるDDoS攻撃検出方法の概略フローチャートである。
【図８Ｂ】本出願の別の実施形態によるDDoS攻撃検出方法の概略フローチャートである。
【図９（ａ）】本出願の一実施形態による保存期間のインターフェースの概略図である。
【図９（ｂ）】本出願の一実施形態による別の保存期間のインターフェースの概略図である。
【図１０】本出願の一実施形態によるDDoS攻撃検出デバイスの概略構造図である。
【図１１】本出願の一実施形態による別のDDoS攻撃検出デバイスの概略構造図である。
【発明を実施するための形態】
【００２４】
以下では、本出願の実施形態における添付の図面を参照して、本出願の実施形態における技術的解決策を説明する。
【００２５】
本出願の明細書、特許請求の範囲、および添付の図面において、「第1の」、「第2の」、「第3の」、および「第4の」などの用語は、異なる対象を区別することを意図しているが、特定の順序を示さない。また、「含む」、「含有する」、およびあらゆる他のその変形などの用語は、非排他的な包含を網羅することを意図している。例えば、一連のステップまたはユニットを含むプロセス、方法、システム、製品、またはデバイスは、列挙されたステップまたはユニットに限定されず、任意選択で、列挙されていないステップまたはユニットをさらに含み、もしくは任意選択で、プロセス、方法、製品、またはデバイスに固有の別のステップまたはユニットをさらに含む。
【００２６】
本明細書で言及される「実施形態」は、実施形態を参照して説明された特定の特性、構造、または特徴が本出願の少なくとも1つの実施形態に含まれ得ることを意味する。本明細書の様々な箇所に現れる単語は、同じ実施形態を必ずしも指すものではなく、別の実施形態を除いた独立のまたは任意の実施形態ではない。当業者であれば、本明細書に記載した実施形態を別の実施形態と組み合わせることができることを明確にかつ暗黙のうちに理解することができる。
【００２７】
本出願の実施形態では、保護対象デバイスは、データストリームを受信するために使用される対象、例えば、ウェブサイト、サーバ、データセンタ、またはネットワークセグメント（ネットワークドメイン）であり得る。データストリームは、ソースデバイスによって保護対象デバイス（宛先デバイス）に送信される。ソースデバイスがデータストリームを保護対象デバイスに送信すると、サンプリングデバイスは、データストリームを収集した後、データストリームをDDoS攻撃検出デバイスに送信する。サンプリングデバイスは、ルータまたはスイッチなどのネットワーク転送デバイスでもよいし、ネットワーク転送デバイスから分割されたデータストリームを受信してサンプリングデータストリームを抽出するサーバであってもよい。DDoS攻撃検出デバイスは、サンプリング分析サーバであり得る。もちろん、サンプリング分析サーバはまた、サンプリング分析サーバクラスタと置き換えられてもよい。以下の実施形態では、例として「サンプリング分析サーバ」を使用することによって、本出願の実施形態の解決策を実施するプロセスを説明する。DDoS攻撃検出デバイスは、通常、ネットワークに展開され、サンプリングデータストリームを受信する。具体的には、図2に示すように、ネットワークデバイスA、B、およびCは、サンプリングデバイスであり、ネットワークデバイスDは、DDoS攻撃検出デバイスである。サンプリング方式では、ネットワークデバイスAは、ルータであり、ルータAは、ルータAによって転送されたデータストリームをサンプリングし、データストリームをサンプリング分析サーバDに送信する。他のサンプリング方式では、ネットワークデバイスBは、サーバである。サーバBは、転送機能を有さず、サンプリングデータストリームを抽出するだけである。ルータAは、ネットワークデバイスCに転送されたデータストリームをコピーし、次いでデータストリームをサーバBに送信する。別のサンプリング方式では、ネットワークデバイスCは、スイッチであり、スイッチCは、スイッチCによって転送されたデータストリームをサンプリングし、データストリームをサンプリング分析デバイスDに提供する。サンプリングデータストリームを取得した後、サンプリングデバイスA、B、およびCは、サンプリングデータストリームをサンプリング分析サーバDに送信する。保護対象デバイスに送信された長いデータストリームのデータトラフィックを取得した後、サンプリング分析サーバDは、長いデータストリームに対するトラフィック補償を行うために、データストリームを長いデータストリームが通過する各検出期間に対応して割り当てる。このようにして、各検出期間の短いデータストリームの統計トラフィックは、補償が行われる長いデータストリームのデータトラフィックに追加され、ほぼ実際のトラフィックを復元することで各検出期間のデータ統計がより正確になり、DDoS攻撃の検出精度が向上され、DDoS攻撃検出の報告誤差率が低減される。
【００２８】
また、本出願の実施形態におけるネットワークトラフィックサンプリングは、ネットワークストリーム情報に基づく統計および解放技術である。対応するトラフィックサンプリングプロトコルは、通常、NetFlowおよびIPFIX（IP Flow Information Export、IPフロー情報エクスポート）の2つのバージョンを含み、IPFIXは、NetFlowに基づく最新のIETF規格である。本出願の実施形態は、IPFIXストリームサンプリングに基づく安全なDDoS攻撃検出シナリオの例を使用することによって、添付の図面を参照して以下に説明される。
【００２９】
図3を参照すると、図3は、本出願の一実施形態によるDDoS攻撃検出方法の概略フローチャートである。DDoS攻撃検出デバイス側を、主に説明する。この方法は、以下のステップを含む。
【００３０】
S101．各検出期間に保護対象デバイスに送信されたデータストリームを取得し、各データストリームの総持続時間を取得する。
【００３１】
具体的には、検出期間は、DDoS攻撃検出デバイスに予め設定され、IPFIXサンプリングデータストリームを受信した後に取得される統計期間であり、通常、2分に設定される。図4に示すように、図4は、保護されたウェブサイトに到着するデータストリームの状態、すなわち、サンプリングデバイスによってDDoS攻撃検出デバイスに報告されたデータストリームの状態を示し、1、2、3、4、および5は、予め設定された検出期間である。各検出期間においてサンプリングデバイスによって報告されたIPFIXデータストリーム（例えば、データストリームa、b、c、d、およびe）を受信した後、DDoS攻撃検出デバイスは、IPFIXデータストリームに関する情報、例えば、IPFIXデータストリーム開始時点、IPFIXデータストリーム終了時点、総持続時間（ストリーム開始時点からストリーム終了時点までの持続時間）、および総データトラフィックを取得する。 サンプリングデバイスがデータストリームを報告する時点は、ストリーム終了時点と、アクティブストリームエージング時点とを含む。また、各データストリームの総データトラフィックは、報告時点に対応する検出期間における統計トラフィックに属する。例えば、bは、検出期間3で開始し、検出期間4で終了する。この場合、bが検出期間4において対応して報告された後、bの総データトラフィックは、検出期間4において統計トラフィックにカウントされる。したがって、図1に示す各検出期間における統計トラフィックは、そのような統計結果に基づいて取得することができる。
【００３２】
特定の実施態様では、保護対象デバイスに送信されたデータストリームを収集した後、サンプリングデバイスは、データストリーム終了時点またはアクティブストリームエージング時点でデータストリームをDDoS攻撃検出デバイスに報告する。DDoS攻撃検出デバイスは、受信したデータストリームの総持続時間および総データトラフィックなどの情報を抽出する。
【００３３】
S102．各データストリームの総持続時間に基づいて、各データストリームが長いデータストリームまたは短いデータストリームであるかどうかを判定する。
【００３４】
具体的には、データストリームの総持続時間が検出期間の予め設定された持続時間よりも大きいとき、データストリームは長いデータストリームであると判定され、データストリームの総持続時間が検出期間の予め設定された持続時間以下であるとき、データストリームは短いデータストリームであると判定される。
【００３５】
例えば、図4に示すように、各予め設定された検出期間が2分であり、a、b、c、d（時点t1）、およびeの総持続時間がそれぞれ6分、3.2分、4分、7分、および0.6分ある場合、a、b、c、およびdは長いデータストリームであり、eは短いデータストリームであると判定される。
【００３６】
ステップS103．長いデータストリームが通過する検出期間に基づいて、長いデータストリームの総データトラフィックを長いデータストリームが通過する各検出期間の統計トラフィックに割り当てる。
【００３７】
具体的には、長いデータストリームのトラフィックは、データストリームが通過する各検出期間に割り当てられる。図4に示すように、aは、期間1、2、3、および4を通過する。aが期間4で終了するため、期間4で報告されたaの総データトラフィックは、期間1、2、3、および4に別々に割り当てられる。特定の割り当て方式は、各検出期間を通過するために長いデータストリームによって使用される持続時間に基づいて、長いデータストリームの総データトラフィックを長いデータストリームが通過する各検出期間の統計トラフィックに割り当てることであり得る。
【００３８】
例えば、図4に示すように、長いストリームaが一例として使用される。aが期間4で出力されたときに取得された総データトラフィックが32であり、期間1、2、3、および4を通過するためにaによって別々に使用される持続時間の比率が3：10：10：9である場合、aの総データトラフィック32は、期間1、2、3、および4に別々に割り当てられ、それぞれのトラフィック量は、3、10、10、および9である。
【００３９】
S104．各検出期間の統計トラフィックを判定するために、各検出期間の短いデータストリームのデータトラフィックを対応する検出期間に割り当てられた長いデータストリームのデータトラフィックに追加する。
【００４０】
具体的には、各検出期間における統計トラフィックは、期間に報告された長いデータストリームのデータトラフィックと、期間に報告された短いデータストリームのデータトラフィックとを含む。期間に報告された長いデータストリームのデータトラフィックは、いくつかの割り当てられたデータトラフィックである。
【００４１】
例えば、図5に示すように、図5は、保護対象デバイスに到着するデータストリームの概略図である。検出期間4に出力されるデータストリームは、a1〜a8を含み、a1、a3、a5、およびa7は、短いデータストリームであり、a2、a4、a6、およびa8は、長いデータストリームである。a1、a3、a5、およびa7のデータトラフィックは、検出期間の統計トラフィックを取得するために、a2、a4、a6、およびa8にあり、かつ検出期間4に割り当てられるデータストリームのデータトラフィックに追加される。
【００４２】
図1に対応して、統計トラフィック値は、検出期間15、33、および171において比較的大きい。これらの検出期間における長いデータストリームのデータトラフィックは、図6に示す長いデータストリームの補償ベースラインの概略図を取得するために、割り当てられる。図1の長いデータストリームのデータトラフィックが除去された後に取得されたデータトラフィックは、図7に示す、補償が行われる各検出期間における統計トラフィックの図を取得するために、図6のデータトラフィックに対応して追加される。対応する追加は、期間に基づいて行われてもよいし、時点に基づいて行われてもよい。これは、本明細書において特に限定されない。
【００４３】
ステップS105．統計トラフィックが予め設定されたトラフィック閾値を超える検出期間がある場合、保護対象デバイスが検出期間に分散型サービス妨害DDoS攻撃を受けていると判定する。
【００４４】
具体的には、追加が期間に基づいて行われる場合、各検出期間において補償が行われるデータトラフィックは、予め設定されたトラフィック閾値と比較される。差が予め設定された範囲を超える場合、保護対象デバイスは検出期間にDDoS攻撃を受けていると判定される。また、追加が時点に基づいて行われる場合、特定の時点のデータトラフィックと予め設定されたトラフィック閾値との間の差が予め設定された範囲を超えるとき、保護対象デバイスはその時点でDDoS攻撃を受けていると判定される。
【００４５】
例えば、図7に示すように、予め設定されたトラフィック閾値が40000000であるとすると、比較対象分析により、保護対象デバイスは検出期間165〜172においてDDoS攻撃を受けていると判定される。
【００４６】
本出願のこの実施形態では、DDoS攻撃検出デバイスは、保護対象デバイスによって受信された長いデータストリームのデータトラフィックに関する統計を収集し、長いデータストリームに対するトラフィック補償を行うために、統計トラフィックをデータストリームが通過する各検出期間に対応して割り当てる。このようにして、各検出期間の短いデータストリームの統計トラフィックは、補償が行われる長いデータストリームのデータトラフィックに追加され、ほぼ実際のトラフィックを復元することで各検出期間のデータ統計がより正確になり、DDoS攻撃の検出精度が向上され、DDoS攻撃検出の報告誤差率が低減される。
【００４７】
図8Aおよび図8Bを参照すると、図8Aおよび図8Bは、本出願の別の実施形態によるDDoS攻撃検出方法の概略フローチャートである。この方法は、以下のステップを含む。
【００４８】
S201．各検出期間に保護対象デバイスに送信されたデータストリームを取得し、各データストリームの総持続時間を取得する。
【００４９】
具体的には、検出期間は、DDoS攻撃検出デバイスに予め設定され、サンプリングデータストリームを受信した後に取得される統計期間であり、通常、2分に設定される。図4に示すように、図4は、保護されたウェブサイトに到着するデータストリームの状態、すなわち、サンプリングデバイスによってDDoS攻撃検出デバイスに報告されたデータストリームの状態を示し、1、2、3、4、および5は、予め設定された検出期間である。各検出期間においてサンプリングデバイスによって報告されたデータストリーム（例えば、データストリームa、b、c、d、およびe）を受信した後、DDoS攻撃検出デバイスは、データストリームに関する情報、例えば、ストリーム開始時点、ストリーム終了時点、総持続時間（ストリーム開始時点からストリーム終了時点までの持続時間）、および総データトラフィックを取得する。 サンプリングデバイスがデータストリームを報告する時点は、ストリーム終了時点と、アクティブストリームエージング時点とを含む。また、各データストリームの総データトラフィックは、報告時点に対応する検出期間における統計トラフィックに属する。例えば、bは、検出期間3で開始し、検出期間4で終了する。この場合、bが検出期間4において対応して報告された後、bの総データトラフィックは、検出期間4において統計トラフィックにカウントされる。したがって、図1に示す各検出期間における統計トラフィックは、そのような統計結果に基づいて取得することができる。
【００５０】
特定の実施態様では、保護対象デバイスに送信されたデータストリームを収集した後、サンプリングデバイスは、データストリーム終了時点またはアクティブストリームエージング時点でデータストリームをDDoS攻撃検出デバイスに報告する。DDoS攻撃検出デバイスは、受信したデータストリームの総持続時間および総データトラフィックなどの情報を抽出する。
【００５１】
S202．各データストリームの総持続時間に基づいて各データストリームを長いデータストリームまたは短いデータストリームに分割する。
【００５２】
具体的には、データストリームの総持続時間が検出期間の予め設定された持続時間よりも大きいとき、データストリームは長いデータストリームであると判定され、データストリームの総持続時間が検出期間の予め設定された持続時間以下であるとき、データストリームは短いデータストリームであると判定される。
【００５３】
例えば、図4に示すように、各予め設定された検出期間が2分であり、a、b、c、d（時点t1）、およびeの総持続時間がそれぞれ6分、3.2分、4分、7分、および0.6分ある場合、a、b、c、およびdは長いデータストリームであり、eは短いデータストリームであると判定される。
【００５４】
S203．取得されたデータストリームが長いデータストリームであるかどうかを判定する。
【００５５】
S204．取得されたデータストリームが短いデータストリームである場合、現在の検出期間に取得されたデータストリームのデータトラフィックを統計トラフィックに追加する。
【００５６】
S205．取得されたデータストリームが長いデータストリームである場合、長いデータストリームのデータトラフィックレコードについて現在のデータトラフィックキャッシュレコードを検索する。
【００５７】
具体的には、データトラフィックキャッシュレコードは、データストリームの持続時間が比較的長く、複数の保存期間にわたるときにデータストリームをキャッシュするレコードである。表1に示すように、キャッシュレコードは、データストリームとデータトラフィックとの間のマッピングの表であり得る。
【００５８】
【表１】
0006768964.tif 000002
【００５９】
データストリームは、データストリーム識別子を使用することによって判定され得る。データストリーム間の通信パケットがIP2タプルを含む場合、データストリーム識別子は、ソースIPアドレスおよび宛先IPアドレスの1つまたは複数を含み得る。データストリーム間の通信パケットがIP5タプルを含む場合、データストリーム識別子は、ソースIP、宛先IP、プロトコル番号、ソースポート番号、および宛先ポート番号の1つまたは複数を含み得る。
【００６０】
また、保存期間は、アクティブストリームエージング期間または検出期間であり得る。具体的には、DDoS攻撃検出デバイスが長いデータストリームを受信したとき、データトラフィックが予め設定されたアクティブストリームエージング時点で長いデータストリームから連続的に出力される場合、DDoS攻撃検出デバイスは、長いデータストリームがアクティブストリームであると判定し、アクティブストリームエージング時点でデータストリームをキャッシュレコードに追加する。代替として、各検出期間が終了すると、DDoS攻撃検出デバイスは、検出期間のデータストリームが長いストリームであるかどうかを判定し、そうである場合、長いデータストリームをキャッシュレコードに追加する。
【００６１】
S206．長いデータストリームのデータトラフィックレコードが現在のデータトラフィックキャッシュレコードに存在する場合、長いデータストリームの総データトラフィックを判定するために、現在の保存期間の長いデータストリームのデータトラフィックを発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックに追加する。
【００６２】
例えば、図9（a）に示すように、検出期間は、保存期間である。aについて、aが期間4で終了する場合、期間4は、現在の保存期間である。トラフィックは、期間2および3でaから連続的に出力され、トラフィックは、キャッシュレコードに存在する。したがって、期間2および3は、過去の保存期間である。したがって、aの総データトラフィックは、現在の保存期間のトラフィックと過去の保存期間のトラフィックの合計である。
【００６３】
図9（b）に示すように、アクティブストリームエージング期間は、保存期間である。bについて、ストリームが時点t2で終了する場合、t1からt2までの期間は、現在の保存期間であり、ストリームが開始した時点から時点t1までの期間は、過去の保存期間である。現在の保存期間のデータトラフィックは、bの総データトラフィックを取得するために、過去の保存期間のデータトラフィックに追加される。
【００６４】
S207．長いデータストリームがアクティブストリームであるかどうかを判定する。
【００６５】
具体的には、データトラフィックが予め設定されたアクティブストリームエージング時点で長いデータストリームから連続的に出力されるかどうかが判定される。図4に示すように、データトラフィックがアクティブストリームエージング期間t1で長いデータストリームdから連続的に出力される場合、dは、アクティブストリームであり、それ以外の場合、dは、非アクティブストリームである。
【００６６】
S208．長いデータストリームがアクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックをキャッシュする。
【００６７】
S209．長いデータストリームが非アクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックに対してキャッシュクリアを行う。
【００６８】
S210．長いデータストリームが通過する検出期間に基づいて、長いデータストリームの総データトラフィックを長いデータストリームが通過する各検出期間の統計トラフィックに割り当てる。
【００６９】
具体的には、長いデータストリームのトラフィックは、データストリームが通過する各検出期間に割り当てられる。図4に示すように、aは、期間1、2、3、および4を通過する。aが期間4で終了するため、期間4で報告されたaの総データトラフィックは、期間1、2、3、および4に別々に割り当てられる。特定の割り当て方式は、各検出期間を通過するために長いデータストリームによって使用される持続時間に基づいて、長いデータストリームの総データトラフィックを長いデータストリームが通過する各検出期間の統計トラフィックに割り当てることであり得る。
【００７０】
例えば、図4に示すように、長いストリームaが一例として使用される。aが期間4で出力されたときに取得された総データトラフィックが32であり、期間1、2、3、および4を通過するためにaによって別々に使用される持続時間の比率が3：10：10：9である場合、aの総データトラフィック32は、期間1、2、3、および4に別々に割り当てられ、それぞれのトラフィック量は、3、10、10、および9である。
【００７１】
S211．各検出期間の統計トラフィックを判定するために、各検出期間の短いデータストリームのデータトラフィックを対応する検出期間に割り当てられた長いデータストリームのデータトラフィックに追加する。
【００７２】
具体的には、各検出期間における統計トラフィックは、期間に報告された長いデータストリームのデータトラフィックと、期間に報告された短いデータストリームのデータトラフィックとを含む。長いデータストリームのデータトラフィックは、いくつかの割り当てられたデータトラフィックである。
【００７３】
例えば、図5に示すように、図5は、保護対象デバイスに到着するデータストリームの概略図である。検出期間4に出力されるデータストリームは、a1〜a8を含み、a1、a3、a5、およびa7は、短いデータストリームであり、a2、a4、a6、およびa8は、長いデータストリームである。a1、a3、a5、およびa7のデータトラフィックは、検出期間の統計トラフィックを取得するために、a2、a4、a6、およびa8にあり、かつ検出期間4に割り当てられるデータストリームのデータトラフィックに追加される。
【００７４】
図1に対応して、統計トラフィック値は、検出期間15、33、および171において比較的大きい。これらの検出期間における長いデータストリームのデータトラフィックは、図6に示す長いデータストリームの補償ベースラインの概略図を取得するために、割り当てられる。図1の長いデータストリームのデータトラフィックが除去された後に取得されたデータトラフィックは、図7に示す、補償が行われる各検出期間における統計トラフィックの図を取得するために、図6のデータトラフィックに対応して追加される。対応する追加は、期間に基づいて行われてもよいし、時点に基づいて行われてもよい。これは、本明細書において特に限定されない。
【００７５】
S212．統計トラフィックが予め設定されたトラフィック閾値を超える検出期間がある場合、保護対象デバイスが検出期間に分散型サービス妨害DDoS攻撃を受けていると判定する。
【００７６】
具体的には、追加が期間に基づいて行われる場合、各検出期間において補償が行われるデータトラフィックは、予め設定されたトラフィック閾値と比較される。差が予め設定された範囲を超える場合、保護対象デバイスは検出期間にDDoS攻撃を受けていると判定される。また、追加が時点に基づいて行われる場合、特定の時点のデータトラフィックと予め設定されたトラフィック閾値との間の差が予め設定された範囲を超えるとき、保護対象デバイスはその時点でDDoS攻撃を受けていると判定される。
【００７７】
例えば、図7に示すように、予め設定されたトラフィック閾値が40000000であるとすると、比較対象分析により、保護対象デバイスは検出期間165〜172においてDDoS攻撃を受けていると判定される。
【００７８】
本出願のこの実施形態では、DDoS攻撃検出デバイスは、保護対象デバイスによって受信された長いデータストリームのデータトラフィックに関する統計を収集し、長いデータストリームに対するトラフィック補償を行うために、統計トラフィックをデータストリームが通過する各検出期間に対応して割り当てる。このようにして、各検出期間の短いデータストリームの統計トラフィックは、補償が行われる長いデータストリームのデータトラフィックに追加され、ほぼ実際のトラフィックを復元することで各検出期間のデータ統計がより正確になり、DDoS攻撃の検出精度が向上され、DDoS攻撃検出の報告誤差率が低減される。
【００７９】
図10を参照すると、図10は、本出願の一実施形態によるDDoS攻撃検出デバイスの概略構造図である。図10に示すように、デバイスは、持続時間取得モジュール10と、データストリーム分割モジュール20と、トラフィック割当モジュール30と、トラフィック統計モジュール40と、攻撃判定モジュール50とを含む。
【００８０】
持続時間取得モジュール10は、各検出期間に保護対象デバイスに送信されたデータストリームを取得し、各データストリームの総持続時間を取得するように構成される。持続時間取得モジュール10は、ソフトウェアまたはハードウェアを使用することによって実施することができる。例えば、持続時間取得モジュール10は、タイマであり得る。具体的には、検出期間は、DDoS攻撃検出デバイスに予め設定され、サンプリングデータストリームを受信した後に取得される統計期間であり、通常、2分に設定される。図4に示すように、1、2、3、4、および5は、予め設定された検出期間である。DDoS攻撃検出デバイスは、各検出期間においてサンプリングデバイスによって送信されたデータストリーム（例えば、データストリームa、b、c、d、およびe）を受信し、データストリームに関する情報、例えば、ストリーム開始時点、ストリーム終了時点、および総持続時間を取得する。サンプリングデバイスがデータストリームを報告する時点は、ストリーム終了時点と、アクティブストリームエージング時点とを含む。また、各データストリームの総データトラフィックは、報告時点に対応する検出期間における統計トラフィックに属する。例えば、bは、検出期間3で開始し、検出期間4で終了する。この場合、bが検出期間4において対応して報告された後、bの総データトラフィックは、検出期間4において統計トラフィックにカウントされる。したがって、図1に示す各検出期間における統計トラフィックは、そのような統計結果に基づいて取得することができる。
【００８１】
特定の実施態様では、保護対象デバイスに送信されたデータストリームを収集した後、サンプリングデバイスは、データストリーム終了時点またはアクティブストリームエージング時点でデータストリームをDDoS攻撃検出デバイスに報告する。DDoS攻撃検出デバイスは、受信したデータストリームの総持続時間および総データトラフィックなどの情報を抽出する。
【００８２】
データストリーム分割モジュール20は、各データストリームの総持続時間に基づいて各データストリームを長いデータストリームまたは短いデータストリームに分割するように構成される。データストリーム分割モジュール20は、パケット分類器であり得る。データストリーム分割モジュール20はまた、他のソフトウェアまたはハードウェアを使用することによって実施することができる。具体的には、データストリームの総持続時間が検出期間の予め設定された持続時間よりも大きいとき、データストリームは長いデータストリームであると判定され、データストリームの総持続時間が検出期間の予め設定された持続時間以下であるとき、データストリームは短いデータストリームであると判定される。例えば、図4に示すように、各予め設定された検出期間が2分であり、a、b、c、d（時点t1）、およびeの総持続時間がそれぞれ6分、3.2分、4分、7分、および0.6分ある場合、a、b、c、およびdは長いデータストリームであり、eは短いデータストリームであると判定される。
【００８３】
トラフィック割当モジュール30は、長いデータストリームが通過する検出期間に基づいて、長いデータストリームの総データトラフィックを長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるように構成される。トラフィック割当モジュール30は、セレクタまたはスケジューラなどのハードウェア回路を使用することによって実施することができる。具体的には、長いデータストリームのトラフィックは、データストリームが通過する各検出期間に割り当てられる。図4に示すように、aは、期間1、2、3、および4を通過し、aの総データトラフィックは、期間1、2、3、および4に割り当てられる。
【００８４】
トラフィック割当モジュール30は、各検出期間を通過するために長いデータストリームによって使用される持続時間に基づいて、長いデータストリームの総データトラフィックを長いデータストリームが通過する各検出期間の統計トラフィックに割り当てるように特に構成される。
【００８５】
例えば、図4に示すように、長いストリームaが一例として使用される。aが期間4で出力されたときに取得された総データトラフィックが32であり、期間1、2、3、および4を通過するためにaによって別々に使用される持続時間の比率が3：10：10：9である場合、aの総データトラフィック32は、期間1、2、3、および4に別々に割り当てられ、それぞれのトラフィック量は、3、10、10、および9である。
【００８６】
トラフィック統計モジュール40は、各検出期間の統計トラフィックを判定するために、各検出期間の短いデータストリームのデータトラフィックを対応する検出期間に割り当てられた長いデータストリームのデータトラフィックに追加するように構成される。トラフィック統計モジュール40は、カウンタであり得る。具体的には、各検出期間における統計トラフィックは、期間に報告された長いデータストリームのデータトラフィックと、期間に報告された短いデータストリームのデータトラフィックとを含む。長いデータストリームのデータトラフィックは、いくつかの割り当てられたデータトラフィックである。例えば、図5に示すように、図5は、保護対象デバイスに到着するデータストリームの概略図である。検出期間4に出力されるデータストリームは、a1〜a8を含み、a1、a3、a5、およびa7は、短いデータストリームであり、a2、a4、a5、およびa8は、長いストリームである。a1、a3、a5、およびa7のデータトラフィックは、検出期間の統計トラフィックを取得するために、a2、a4、a5、およびa8にあり、かつ検出期間4に割り当てられるデータストリームのトラフィックに追加される。図1に対応して、統計トラフィック値は、検出期間15、33、および171において比較的大きい。これらの検出期間における長いデータストリームのデータトラフィックは、図6に示す長いデータストリームの補償ベースラインの概略図を取得するために、割り当てられる。図1の長いデータストリームのデータトラフィックが除去された後に取得されたデータトラフィックは、図7に示す、補償が行われる各検出期間における統計トラフィックの図を取得するために、図6のデータトラフィックに対応して追加される。対応する追加は、期間に基づいて行われてもよいし、時点に基づいて行われてもよい。これは、本明細書において特に限定されない。
【００８７】
攻撃判定モジュール50は、統計トラフィックが予め設定されたトラフィック閾値を超える検出期間がある場合、保護対象デバイスが検出期間に分散型サービス妨害DDoS攻撃を受けていると判定するように構成される。具体的には、追加が期間に基づいて行われる場合、各検出期間において補償が行われるデータトラフィックは、予め設定されたトラフィック閾値と比較される。差が予め設定された範囲を超える場合、保護対象デバイスは検出期間にDDoS攻撃を受けていると判定される。また、追加が時点に基づいて行われる場合、特定の時点のデータトラフィックと予め設定されたトラフィック閾値との間の差が予め設定された範囲を超えるとき、保護対象デバイスはその時点でDDoS攻撃を受けていると判定される。
【００８８】
例えば、図7に示すように、予め設定されたトラフィック閾値が40000000であるとすると、比較対象分析により、保護対象デバイスは検出期間165〜172においてDDoS攻撃を受けていると判定される。
【００８９】
任意選択で、図10に示すように、DDoS攻撃検出デバイスは、レコード検索モジュール60をさらに含む。レコード検索モジュール60は、長いデータストリームのデータトラフィックレコードについて現在のデータトラフィックキャッシュレコードを検索し、長いデータストリームのデータトラフィックレコードが現在のデータトラフィックキャッシュレコードに存在する場合、長いデータストリームの総データトラフィックを判定するために、現在の保存期間の長いデータストリームのデータトラフィックを発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックに追加するように構成される。
【００９０】
具体的には、保存期間は、アクティブストリームエージング期間または検出期間であり得る。具体的には、DDoS攻撃検出デバイスが長いデータストリームを受信したとき、データトラフィックが予め設定されたアクティブストリームエージング時点で長いデータストリームから連続的に出力される場合、DDoS攻撃検出デバイスは、長いデータストリームがアクティブストリームであると判定し、アクティブストリームエージング時点でデータストリームをキャッシュレコードに追加する。代替として、各検出期間が終了すると、DDoS攻撃検出デバイスは、検出期間のデータストリームが長いストリームであるかどうかを判定し、そうである場合、長いデータストリームをキャッシュレコードに追加する。
【００９１】
図9（a）に示すように、検出期間は、保存期間である。aについて、aが期間4で終了する場合、期間4は、現在の保存期間である。トラフィックは、期間2および3でaから連続的に出力され、トラフィックは、キャッシュレコードに存在する。したがって、期間2および3は、過去の保存期間である。したがって、aの総データトラフィックは、現在の保存期間のトラフィックと過去の保存期間のトラフィックの合計である。
【００９２】
図9（b）に示すように、アクティブストリームエージング期間は、保存期間である。bについて、ストリームが時点t2で終了する場合、t1からt2までの期間は、現在の保存期間であり、ストリームが開始した時点から時点t1までの期間は、過去の保存期間である。現在の保存期間のデータトラフィックは、bの総データトラフィックを取得するために、過去の保存期間のデータトラフィックに追加される。
【００９３】
任意選択で、図10に示すように、DDoS攻撃検出デバイスは、アクティブストリーム判定モジュール70をさらに含む。アクティブストリーム判定モジュール70は、長いデータストリームがアクティブストリームであるかどうかを判定し、長いデータストリームがアクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックをキャッシュし、または長いデータストリームが非アクティブストリームである場合、現在の保存期間の長いデータストリームのデータトラフィックと発見された現在のデータトラフィックキャッシュレコードにおける過去の保存期間の長いデータストリームのデータトラフィックとの総データトラフィックに対してキャッシュクリアを行うように構成される。
【００９４】
アクティブストリーム判定モジュール70が長いデータストリームがアクティブストリームであるかどうかを判定することは、データトラフィックが予め設定されたアクティブストリームエージング時点で長いデータストリームから連続的に出力されるかどうかを判定することと、データトラフィックが予め設定されたアクティブストリームエージング時点で長いデータストリームから連続的に出力される場合、長いデータストリームがアクティブストリームであると判定すること、またはデータトラフィックが予め設定されたアクティブストリームエージング時点で長いデータストリームから連続的に出力されない場合、長いデータストリームが非アクティブストリームであると判定することとを特に含む。
【００９５】
本出願のこの実施形態では、DDoS攻撃検出デバイスは、保護対象デバイスによって受信された長いデータストリームのデータトラフィックに関する統計を収集し、長いデータストリームに対するトラフィック補償を行うために、統計トラフィックをデータストリームが通過する各検出期間に対応して割り当てる。このようにして、各検出期間の短いデータストリームの統計トラフィックは、補償が行われる長いデータストリームのデータトラフィックに追加され、ほぼ実際のトラフィックを復元することで各検出期間のデータ統計がより正確になり、DDoS攻撃の検出精度が向上され、DDoS攻撃検出の報告誤差率が低減される。
【００９６】
図10に示す実施形態におけるDDoS攻撃検出デバイスは、図11に示すDDoS攻撃検出デバイスによって実施することができる。図11に示すように、図11は、本出願の一実施形態によるDDoS攻撃検出デバイスの概略構造図である。図11に示すDDoS攻撃検出デバイス1000は、プロセッサ1001と、トランシーバ1004とを含む。プロセッサ1001とトランシーバ1004とは、例えば、バス1002を使用することによって接続される。任意選択で、DDoS攻撃検出デバイス1000は、メモリ1003をさらに含んでもよい。実際の用途では、トランシーバ1004の数は2に限定されないことに留意されたい。DDoS攻撃検出デバイス1000の構造は、本出願のこの実施形態に対する限定を構成するものではない。
【００９７】
プロセッサ1001は、本出願のこの実施形態に適用され、図10に示すデータストリーム分割モジュール20、トラフィック割当モジュール30、トラフィック統計モジュール40、および攻撃判定モジュール50の機能を実施するように構成される。トランシーバ1004は、受信機と、送信機とを含む。トランシーバ1004は、本出願のこの実施形態に適用され、図10に示す持続時間取得モジュール10の機能を実施するように構成される。
【００９８】
プロセッサ1001は、中央処理装置（Central Processing Unit CPU）、汎用プロセッサ、デジタル信号プロセッサ（Digital Signal Process、DSP）、特定用途向け集積回路（Application Specific Integrated Circuit、ASIC）、フィールドプログラマブルゲートアレイ（Field-Programmable Gate Array、FPGA）もしくは別のプログラマブル論理デバイス、トランジスタ論理デバイス、ハードウェアデバイス、またはそれらの任意の組合せであってもよい。プロセッサ1001は、本出願に開示された内容を参照して説明された様々な例示的な論理ブロック、モジュール、および回路を実施または実行することができる。代替として、プロセッサ1001は、コンピューティング機能を実施するプロセッサの組合せ、例えば、1つまたは複数のマイクロプロセッサの組合せ、またはDSPとマイクロプロセッサの組合せであってもよい。
【００９９】
バス1002は、前述の構成要素間で情報を伝送するためのチャネルを含み得る。バス1002は、PCIバス、EISAバスなどであり得る。バス1002は、アドレスバス、データバス、コントロールバスなどに分類することができる。表現を容易にするために、バスは図10では1本の太線のみを使用して表されているが、これは1つのバスのみまたは1種類のバスしかないことを意味するものではない。
【０１００】
メモリ1003は、静的情報および命令を保存することができるROMもしくは別の種類の静的記憶デバイス、または情報および命令を保存することができるRAMもしくは別の種類の動的記憶デバイスであってもよく、またはEEPROM、CD-ROM、または他のコンパクトディスク記憶装置もしくは光ディスク記憶装置（圧縮光ディスク、レーザディスク、光ディスク、デジタル多用途ディスク、ブルーレイ光ディスクなどを含む）、磁気ディスク記憶媒体もしくは別の磁気記憶デバイス、または命令もしくはデータ構造の形で予想されるプログラムコードを搬送もしくは保存することが可能であり、かつコンピュータによってアクセスすることが可能な任意の他の媒体であってもよいが、それらに限定されない。
【０１０１】
任意選択で、メモリ1003は、本出願の解決策を実行するためのアプリケーションプログラムコードを保存するように構成され、プロセッサ1001は、本出願の解決策の実行を制御する。プロセッサ1001は、図3および図8Aおよび図8Bに示す実施形態のいずれか1つにおいて提供されるDDoS攻撃検出デバイスの動作を実施するために、メモリ1003に保存されたアプリケーションプログラムコードを実行するように構成される。
【０１０２】
本出願の一実施形態は、前述のデータ受信装置によって使用されるコンピュータソフトウェア命令を記憶するように構成された、コンピュータ記憶媒体をさらに提供する。コンピュータソフトウェア命令は、データ受信装置が前述の態様を実行するように設計されたプログラムを含む。
【０１０３】
本出願は実施形態を参照して説明されているが、保護を請求する本出願を実施するプロセスにおいて、当業者は、添付の図面、開示されている内容、および添付の特許請求の範囲を見ることによって開示されている実施形態の他の変更を理解して実施することができる。特許請求の範囲において、「備える」（comprising）は、別の構成要素または別のステップを排除するものではなく、「1つの（a）」または「1つの（one）」は、複数の場合を排除するものではない。単一のプロセッサまたは別のユニットは、特許請求の範囲に列挙されているいくつかの機能を実施することができる。いくつかの措置が互いに異なる従属請求項に記録されているが、これはこれらの措置を組み合わせてより良い効果をもたらすことができなということを意味するものではない。
【０１０４】
当業者は、本出願の実施形態が方法、装置（デバイス）、またはコンピュータプログラム製品として提供され得ることを理解すべきである。したがって、本出願は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、またはソフトウェアとハードウェアの組合せを備えた実施形態の形態を使用することができる。さらに、本出願は、コンピュータ使用可能プログラムコードを含む1つまたは複数のコンピュータ使用可能記憶媒体（ディスクメモリ、CD-ROM、光メモリなどを含むがこれらに限定されない）で実施されるコンピュータプログラム製品の形態を使用することができる。コンピュータプログラムは、適切な媒体に保存／分配され、別のハードウェアと共にハードウェアの一部として提供もしくは使用されるか、あるいはInternetまたは別の有線もしくは無線電気通信システムを使用することによってなどの別の割当形式を使用することもできる。
【０１０５】
本出願は、本出願の実施形態による方法、装置（デバイス）、およびコンピュータプログラム製品のフローチャートおよび／またはブロック図を参照して説明される。コンピュータプログラム命令は、フローチャートおよび／またはブロック図の各プロセスおよび／または各ブロック、ならびにフローチャートおよび／またはブロック図のプロセスおよび／またはブロックの組合せを実施するために使用することができることを理解されたい。これらのコンピュータプログラム命令は、汎用コンピュータ、専用コンピュータ、組み込みプロセッサ、または任意の他のプログラマブルデータ処理デバイスのプロセッサに提供されて機械を生成することができ、その結果、コンピュータまたは任意の他のプログラマブルデータ処理デバイスのプロセッサによって実行される命令が、フローチャートの1つまたは複数のプロセスおよび／またはブロック図の1つまたは複数のブロックにおいて特定の機能を実施するための装置を生成する。
【０１０６】
これらのコンピュータプログラム命令はまた、特定の方式で機能するようにコンピュータまたは任意の他のプログラマブルデータ処理デバイスに指示することができるコンピュータ可読メモリに記憶することができ、その結果、コンピュータ可読メモリに記憶された命令は、命令装置を含むアーチファクトを生成する。命令装置は、フローチャートの1つまたは複数のプロセスおよび／またはブロック図の1つまたは複数のブロックにおいて特定の機能を実施する。
【０１０７】
これらのコンピュータプログラム命令はまた、コンピュータまたは別のプログラマブルデータ処理デバイス上にロードされてもよく、その結果、一連の操作およびステップがコンピュータまたは別のプログラマブルデバイス上で行われ、それによってコンピュータ実施処理を生成する。したがって、コンピュータまたは別のプログラマブルデバイスで実行される命令は、フローチャートの1つまたは複数のプロセスおよび／またはブロック図の1つまたは複数のブロックにおいて特定の機能を実施するためのステップを提供する。
【０１０８】
本出願は特定の特徴およびその実施形態を参照して説明されているが、明らかに、本出願の精神および範囲から逸脱することなく、それらに対して様々な修正および組合せを行うことができる。それに対応して、明細書および添付の図面は、添付の特許請求の範囲によって定義される本出願の例示的な説明にすぎず、本出願の範囲を網羅する任意のまたはすべての修正、変更、組合せまたは等価物と見なされる。明らかに、当業者は、本出願の精神および範囲から逸脱することなく、本出願に様々な修正および変更を加えることができる。本出願は、添付の特許請求の範囲およびそれらの等価の技術によって定義される保護の範囲内にある限り、本出願のこれらの修正および変更を網羅することを意図している。
【符号の説明】
【０１０９】
10  持続時間取得モジュール
20  データストリーム分割モジュール
30  トラフィック割当モジュール
40  トラフィック統計モジュール
50  攻撃判定モジュール
60  レコード検索モジュール
70  アクティブストリーム判定モジュール
1000  DDoS攻撃検出デバイス
1001  プロセッサ
1002  バス
1003  メモリ
1004  トランシーバ
【図１】
0006768964.tif 000003
【図２】
0006768964.tif 000004
【図３】
0006768964.tif 000005
【図４】
0006768964.tif 000006
【図５】
0006768964.tif 000007
【図６】
0006768964.tif 000008
【図７】
0006768964.tif 000009
【図８Ａ】
0006768964.tif 000010
【図８Ｂ】
0006768964.tif 000011
【図９（ａ）】
0006768964.tif 000012
【図９（ｂ）】
0006768964.tif 000013
【図１０】
0006768964.tif 000014
【図１１】
0006768964.tif 000015