(57)【要約】【課題】複数のＩＰアドレスが同時に攻撃されている場合でも、ＤＤｏＳ攻撃の対処に伴う標的宛通信の遅延の増加を防ぎつつ、拠点間のリソース負荷分散を実現可能なＤＤｏＳ攻撃対処技術を提供する。【解決手段】ＤＤｏＳ対処装置１００は、負荷分散処理の要否を判断する負荷分散判断部１１２と、所望の時間内で負荷分散処理が可能であるかを判断する処理可否判断部１１３と、標的宛通信を複数のグループにグルーピングするグルーピング処理部１１５と、標的宛通信の対処に利用する軽減拠点を複数の軽減拠点からグループ毎に決定する負荷分散処理部１１６と、標的宛通信の経路制御を実行する攻撃対処設定部１１７とを備える。また、ＤＤｏＳ対処装置１００は、負荷分散処理の対象とする標的宛通信の通信数を削減する負荷分散対象削減部１１４を備える。【選択図】図１
2020014073.tif 000002
【特許請求の範囲】
【請求項１】
ＤＤｏＳ攻撃に対する複数の軽減拠点を備える自律システムにおいて、少なくとも１つの隣接自律システムから流入するＤＤｏＳ攻撃の標的宛通信に対する対処を実施するＤＤｏＳ対処装置であって、
標的宛通信が流入するゲートウェイ装置に対応する軽減拠点における利用可能リソース情報と当該標的宛通信の通信量とに基づいて負荷分散処理を実行するか否かを判断する負荷分散判断部と、
前記負荷分散判断部により負荷分散処理を行うと判断された場合において、標的宛通信の通信数に基づき所望の時間内で負荷分散処理が可能であるかを判断する処理可否判断部と、
前記処理可否判断部により処理不能と判断された場合において、標的宛通信を複数のグループにグルーピングするグルーピング処理部と、
グループに属する標的宛通信について、軽減拠点におけるリソース不足が解消されるように、当該標的宛通信の対処に利用する軽減拠点を複数の軽減拠点からグループ毎に決定する負荷分散処理部と、
標的宛通信が前記負荷分散処理部により決定された軽減拠点を経由するように経路制御を実行する攻撃対処設定部とを備える
ことを特徴とするＤＤｏＳ対処装置。
【請求項２】
前記処理可否判断部により処理不能と判断された場合において、負荷分散処理の対象とする標的宛通信の通信数を削減する負荷分散対象削減部を備え、
前記グルーピング処理部は、削減後の標的宛通信をグルーピング対象とする
ことを特徴とする請求項１記載のＤＤｏＳ対処装置。
【請求項３】
ＤＤｏＳ攻撃に対する複数の軽減拠点を備える自律システムにおいて、少なくとも１つの隣接自律システムから流入するＤＤｏＳ攻撃の標的宛通信に対する対処を実施するＤＤｏＳ対処装置であって、
標的宛通信が流入するゲートウェイ装置に対応する軽減拠点における利用可能リソース情報と当該標的宛通信の通信量とに基づいて負荷分散処理を実行するか否かを判断する負荷分散判断部と、
前記負荷分散判断部により負荷分散処理を行うと判断された場合において、標的宛通信の通信数に基づき所望の時間内で負荷分散処理が可能であるかを判断する処理可否判断部と、
前記処理可否判断部により処理不能と判断された場合において、負荷分散処理の対象とする標的宛通信の通信数を削減する負荷分散対象削減部と、
削減後の標的宛通信について、軽減拠点におけるリソース不足が解消されるように、当該標的宛通信の対処に利用する軽減拠点を複数の軽減拠点から標的宛通信毎に決定する負荷分散処理部と、
標的宛通信が前記負荷分散処理部により決定された軽減拠点を経由するように経路制御を実行する攻撃対処設定部とを備える
ことを特徴とするＤＤｏＳ対処装置。
【請求項４】
前記グルーピング処理部は、標的宛通信について、当該標的宛通信が流出するゲートウェイ装置に対応する軽減拠点と当該標的宛通信について現在の対処状態との組を単位としてグルーピングする
ことを特徴とする請求項１又は２記載のＤＤｏＳ対処装置。
【請求項５】
前記負荷分散対象削減部は、標的宛通信が利用可能な軽減拠点におけるリソース量又は標的宛通信の通信量の何れか一方又は双方に基づき、負荷分散処理の対象とする標的宛通信の通信数を削減する
ことを特徴とする請求項２又は３記載のＤＤｏＳ対処装置。
【請求項６】
ＤＤｏＳ攻撃に対する複数の軽減拠点を備える自律システムにおいて、少なくとも１つの隣接自律システムから流入するＤＤｏＳ攻撃の標的宛通信に対する対処を実施するＤＤｏＳ対処装置が実行するＤＤｏＳ対処方法であって、
負荷分散判断部が、標的宛通信が流入するゲートウェイ装置に対応する軽減拠点における利用可能リソース情報と当該標的宛通信の通信量とに基づいて負荷分散処理を実行するか否かを判断する負荷分散判断ステップと、
処理可否判断部が、前記負荷分散判断部により負荷分散処理を行うと判断された場合において、標的宛通信の通信数に基づき所望の時間内で負荷分散処理が可能であるかを判断する処理可否判断ステップと、
グルーピング処理部が、前記処理可否判断部により処理不能と判断された場合において、標的宛通信を複数のグループにグルーピングするグルーピングステップと、
負荷分散処理部が、グループに属する標的宛通信について、軽減拠点におけるリソース不足が解消されるように、当該標的宛通信の対処に利用する軽減拠点を複数の軽減拠点からグループ毎に決定する負荷分散処理ステップと、
攻撃対処設定部が、標的宛通信が前記負荷分散処理部により決定された軽減拠点を経由するように経路制御を実行する攻撃対処設定ステップとを備える
ことを特徴とするＤＤｏＳ対処方法。
【請求項７】
ＤＤｏＳ攻撃に対する複数の軽減拠点を備える自律システムにおいて、少なくとも１つの隣接自律システムから流入するＤＤｏＳ攻撃の標的宛通信に対する対処を実施するＤＤｏＳ対処装置が実行するＤＤｏＳ対処方法であって、
負荷分散判断部が、標的宛通信が流入するゲートウェイ装置に対応する軽減拠点における利用可能リソース情報と当該標的宛通信の通信量とに基づいて負荷分散処理を実行するか否かを判断する負荷分散判断ステップと、
処理可否判断部が、前記負荷分散判断部により負荷分散処理を行うと判断された場合において、標的宛通信の通信数に基づき所望の時間内で負荷分散処理が可能であるかを判断する処理可否判断ステップと、
負荷分散対象削減部が、前記処理可否判断部により処理不能と判断された場合において、負荷分散処理の対象とする標的宛通信の通信数を削減する負荷分散対象削減ステップと、
負荷分散処理部が、削減後の標的宛通信について、軽減拠点におけるリソース不足が解消されるように、当該標的宛通信の対処に利用する軽減拠点を複数の軽減拠点から標的宛通信毎に決定する負荷分散処理ステップと、
攻撃対処設定部が、標的宛通信が前記負荷分散処理部により決定された軽減拠点を経由するように経路制御を実行する攻撃対処設定ステップとを備える
ことを特徴とするＤＤｏＳ対処方法。
【請求項８】
コンピュータを、請求項１乃至５何れか１項に記載のＤＤｏＳ対処装置における各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＤＤｏＳ（Distributed Denial of Service）攻撃に対する対処を実現するネットワーク技術に関する。
【背景技術】
【０００２】
複数の地域にｍｉｔｉｇａｔｉｏｎ拠点（各拠点内には非特許文献１等に記載の１つ以上のｍｉｔｉｇａｔｉｏｎ装置が設置）を分散配備したＡＳ（Autonomous System）において、ＤＤｏＳ攻撃の標的のＩＰ（Internet Protocol）アドレス毎に、「送信元（ネットワークの入口）に近い拠点での対処」と「宛先（ネットワークの出口）に近い拠点での対処」を使い分けることで、ＤＤｏＳ攻撃の対処に伴う標的宛通信の遅延の増加を防ぎつつ、拠点間のリソース負荷分散を実現し、ＤＤｏＳ対処能力を向上させる技術が提案されている（非特許文献２）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Arbor Networks, "DDOS PROTECTION BY ARBOR NETWORKS APS", [online], [平成30年6月29日検索], インターネット<URL:http://www.arbornetworks.com/ddos-protection-products/arbor-aps>
【非特許文献２】前田浩明他，"グローバル規模のASにおける遅延を考慮した大規模ＤＤｏＳ攻撃対処方式の一検討"，信学技報，vol. 117，no. 460，IN2017-92，pp. 15-20，2018年3月
【発明の概要】
【発明が解決しようとする課題】
【０００４】
背景技術に記載のものでは、各標的ＩＰアドレス（／３２単位）を入口または出口に近い拠点で対処する組み合わせの中から、各拠点内のｍｉｔｉｇａｔｉｏｎ装置の最大リソース量を超過しないように対処可能な組み合わせを探索している。このため、時間計算量が最悪でＯ（ｎ２）（ｎ＝標的ＩＰ数）かかり、複数のＩＰアドレスが同時に攻撃されている場合（複数の標的宛対処を同時に実施している場合）に、現実的な時間でのリソース負荷分散を実施できない。
【０００５】
上述した問題を鑑み、本発明の課題は、複数のＩＰアドレスが同時に攻撃されている場合（複数の標的宛対処を同時に実施している場合）でも、ＤＤｏＳ攻撃の対処に伴う標的宛通信の遅延の増加を防ぎつつ、拠点間のリソース負荷分散を実現可能なＤＤｏＳ攻撃対処技術を提供することである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本願発明は、ＤＤｏＳ攻撃に対する複数の軽減拠点を備える自律システムにおいて、少なくとも１つの隣接自律システムから流入するＤＤｏＳ攻撃の標的宛通信に対する対処を実施するＤＤｏＳ対処装置であって、標的宛通信が流入するゲートウェイ装置に対応する軽減拠点における利用可能リソース情報と当該標的宛通信の通信量とに基づいて負荷分散処理を実行するか否かを判断する負荷分散判断部と、前記負荷分散判断部により負荷分散処理を行うと判断された場合において、標的宛通信の通信数に基づき所望の時間内で負荷分散処理が可能であるかを判断する処理可否判断部と、前記処理可否判断部により処理不能と判断された場合において、標的宛通信を複数のグループにグルーピングするグルーピング処理部と、グループに属する標的宛通信について、軽減拠点におけるリソース不足が解消されるように、当該標的宛通信の対処に利用する軽減拠点を複数の軽減拠点からグループ毎に決定する負荷分散処理部と、標的宛通信が前記負荷分散処理部により決定された軽減拠点を経由するように経路制御を実行する攻撃対処設定部とを備えることを特徴とする。
【０００７】
また、本願発明は、ＤＤｏＳ攻撃に対する複数の軽減拠点を備える自律システムにおいて、少なくとも１つの隣接自律システムから流入するＤＤｏＳ攻撃の標的宛通信に対する対処を実施するＤＤｏＳ対処装置であって、標的宛通信が流入するゲートウェイ装置に対応する軽減拠点における利用可能リソース情報と当該標的宛通信の通信量とに基づいて負荷分散処理を実行するか否かを判断する負荷分散判断部と、前記負荷分散判断部により負荷分散処理を行うと判断された場合において、標的宛通信の通信数に基づき所望の時間内で負荷分散処理が可能であるかを判断する処理可否判断部と、前記処理可否判断部により処理不能と判断された場合において、負荷分散処理の対象とする標的宛通信の通信数を削減する負荷分散対象削減部と、削減後の標的宛通信について、軽減拠点におけるリソース不足が解消されるように、当該標的宛通信の対処に利用する軽減拠点を複数の軽減拠点から標的宛通信毎に決定する負荷分散処理部と、標的宛通信が前記負荷分散処理部により決定された軽減拠点を経由するように経路制御を実行する攻撃対処設定部とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、複数のＩＰアドレスが同時に攻撃されている場合（複数の標的宛対処を同時に実施している場合）でも、対処に伴う標的宛通信の遅延の増加を防ぎつつ、拠点間のリソース負荷分散を行うことで、より多くのＤＤｏＳ攻撃に対処可能になる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態におけるネットワーク（インターネット）の構成図
【図２】本発明の実施の形態におけるＤＤｏＳ対処装置を保有するＡＳの構成図（ＡＳ１の一例）
【図３】本発明の実施の形態におけるＤＤｏＳ対処装置の機能構成図
【図４】本発明の実施の形態におけるＤＤｏＳ対処装置の動作を説明する簡易フローチャート
【図５】本発明の実施の形態におけるＤＤｏＳ攻撃対処手順例
【図６】本発明の実施の形態におけるトラヒック情報テーブルの一例
【図７】本発明の実施の形態におけるｍｉｔｉｇａｔｉｏｎ拠点情報テーブルの一例
【図８】本発明の実施の形態における各ＧＷと拠点の対応情報テーブルの一例
【図９】本発明の実施の形態における攻撃識別情報テーブルの一例
【図１０】本発明の実施の形態における攻撃情報テーブルの一例
【図１１】本発明の実施の形態におけるグループ情報テーブルの一例
【図１２】本発明の実施の形態におけるグループと通信の識別子の対応情報テーブルの一例
【図１３】本発明の実施の形態における攻撃毎の第一の拠点情報テーブルの一例
【図１４】本発明の実施の形態における攻撃毎の第二の拠点情報テーブルの一例
【発明を実施するための形態】
【００１０】
まず、本実施の形態の前提について説明する。本実施の形態では、適用先のＡＳが複数のｍｉｔｉｇａｔｉｏｎ拠点を保有し、標的宛通信の流入するＧＷ（ゲートウェイ）（他のＡＳとの境界ルータ）毎に異なるｍｉｔｉｇａｔｉｏｎ拠点の使い分け（流入元に近い拠点で対処等）をしている。また、本発明に係る技術におけるトラヒック制御は、自ＡＳ内の経路を変更することで実施する場合と隣接ＡＳ内の経路を変更することで実施する場合の両方を想定している。特に、隣接ＡＳ内の経路を変更することで実施する場合は、拠点の異なる２つ以上のＧＷに接続点を持つ隣接ＡＳが１つ以上存在することを前提とする。すなわち、当該隣接ＡＳ経由で標的宛通信が流入する場合に隣接ＡＳ内での迂回経路が存在するようなＡＳが１つ以上存在する。
【００１１】
トラヒック制御を隣接ＡＳ内で実施する場合には、さらに、隣接する前記ＡＳでは、ＢＧＰ（Border Gateway Protocol）のＭＥＤ（Multi Exit Discriminator）等を利用することで、本発明に係る技術の適用先のＡＳから、特定の宛先への通信を下記（１）ｈｏｔ−ｐｏｔａｔｏルーティングと（２）ｃｏｌｄ−ｐｏｔａｔｏルーティングのどちらでルーティングするか切り替え可能である。
【００１２】
（１）ｈｏｔ−ｐｏｔａｔｏルーティングは、ＩＳＰ同士が複数の接続点でピアリングしている場合に、ＩＳＰ間の通信が送信元に近い接続点を通るルーティング方式である。例えば、隣接ＡＳから適用先のＡＳに転送する通信であり、隣接ＡＳ内にアジアから流入した通信は、最も流入元に近いアジアの接続点から適用先のＡＳに渡す。
【００１３】
（２）ｃｏｌｄ−ｐｏｔａｔｏルーティングは、送信元に近いネットワークができるかぎり長くトラヒックを保持するルーティング方式である。例えば、隣接ＡＳから適用先のＡＳに転送する通信であり、隣接ＡＳ内にアジアから流入した通信について、宛先が欧州の場合、隣接ＡＳ内を欧州まで運び、欧州の接続点から適用先のＡＳに渡す。
【００１４】
本発明の一実施の形態に係るシステムについて図面を参照して説明する。図１に、本発明の一実施形態におけるネットワーク（インターネット）の構成図を示す。
【００１５】
図１に示されるように、任意数のＡＳ（ＡＳ１０−１〜ＡＳ１０−４など）がネットワークに含まれ、これらのＡＳが相互接続されることによって、インターネットを模したネットワークのネットワークトポロジが構成される。
【００１６】
本実施形態では、ＡＳ１が、自身とトランジット契約を結ぶＡＳ２，ＡＳ３，ＡＳ４に対して、ＤＤｏＳ対策サービスを提供しており、さらに、本発明のＤＤｏＳ対処装置１００を保有する状況を想定している。
【００１７】
ＧＷ１，ＧＷ４，ＧＷ７，ｍｉｔｉｇａｔｉｏｎ拠点１は、北米地域に存在する設備、ＧＷ２，ＧＷ５，ＧＷ８，ｍｉｔｉｇａｔｉｏｎ拠点２は、欧州地域に存在する設備、ＧＷ３，ＧＷ６，ＧＷ９，ｍｉｔｉｇａｔｉｏｎ拠点３は、アジア地域に存在する設備を表す。ＧＷ（ゲートウェイ）は、顧客等のネットワークとの境界に位置するルータ・スイッチを表す。
【００１８】
また、ＤＤｏＳ攻撃の標的宛通信に対して、本発明の処理を行う通信の単位を「処理単位」と定義する。処理単位は、背景技術と同様の「宛先（標的）ＩＰアドレス単位」のほか、送受信ＩＰアドレス、送受信ポート番号、プロトコルから成る「５ｔｕｐｌｅのフロー単位」や、「入口のＧＷ＋標的ＩＰアドレス単位」等の任意の単位を適用可能である。本実施形態では、特に、処理単位が宛先ＩＰアドレス単位の場合について記載する。
【００１９】
次に、図２を参照して、本発明の一実施形態によるＤＤｏＳ対処装置１００を有するＡＳの構成を説明する。なお、図２は、ＡＳ１の一例を示す。
【００２０】
図２に示されるように、当該ＡＳは、ｍｉｔｉｇａｔｉｏｎ装置３００が１つ以上設置された複数のｍｉｔｉｇａｔｉｏｎ拠点、ＤＤｏＳ対処装置１００、トラヒック情報収集・ＤＤｏＳ攻撃検知装置２００、パケット転送装置４００及びＧＷを有する。
【００２１】
ｍｉｔｉｇａｔｉｏｎ装置３００は、非特許文献１に説明される装置のように、ＤＤｏＳ攻撃対処に特化した装置であり、ある宛先に対する通信の中から、攻撃通信と正常通信とを区別して、攻撃通信のみを遮断するといった対処が可能である。ＤＤｏＳ攻撃対処の手段は、この他にもルータ等のフィルタリング機能での対処や人手での対処等が想定される。
【００２２】
パケット転送装置４００は、パケットのルーティングを担うルータやレイヤ２スイッチ等のネットワーク装置である。
【００２３】
ＧＷは、パケット転送装置４００と同じく、ルータ等のパケットのルーティングを担うネットワーク装置であるが、特に他ＡＳや顧客ネットワーク等との境界に位置するものとして区別して記載している。
【００２４】
トラヒック情報収集・ＤＤｏＳ攻撃検知装置２００は、各ＧＷの各インタフェースから定期的にフロー情報（送受信ＩＰアドレス・送受信ポート番号・プロトコル番号等の組からなるフロー毎の通信量やフローの向き（ｉｎ／ｏｕｔ）等）を収集し、収集したフロー情報を分析することで特定の宛先へのＤＤｏＳ攻撃の発生を検知する。また、攻撃検知時等の任意のタイミングで、自ＡＳのＤＤｏＳ対処装置１００に対して、標的宛通信を処理単位で識別するための識別子（標的のＩＰアドレス等）を含む攻撃検知メッセージを送信する。攻撃検知メッセージに含まれる標的ＩＰアドレス等の識別子は、標的のシステムが複数存在する場合や標的システムが複数のＩＰアドレス等の識別子を保有する場合には、複数個通知される可能性もある。
【００２５】
さらに、トラヒック情報収集・ＤＤｏＳ攻撃検知装置２００は、ＤＤｏＳ攻撃が発生した際、又は任意のタイミング（一定時間毎等）で、各隣接ＡＳ等から各ＧＷに流入（または各ＧＷから隣接ＡＳ等に流出）する標的宛通信の処理単位毎の通信量、各拠点のｍｉｔｉｇａｔｉｏｎ装置３００の最大リソース量、各拠点のｍｉｔｉｇａｔｉｏｎ装置の利用可能なリソース量等を測定し、これらの情報をトラヒック情報テーブルとｍｉｔｉｇａｔｉｏｎ拠点情報テーブルに格納すると共に、トラヒック情報テーブルとｍｉｔｉｇａｔｉｏｎ拠点情報テーブルの情報をＤＤｏＳ対処装置１００に通知する機能を有する。
【００２６】
トラヒック情報テーブルの一例を図６に示す。トラヒック情報テーブルは、例えば、各ＧＷ単位で存在し、ＧＷを一意に識別する番号、そのＧＷの設置された地域（本実施形態ではＧＷの設置された地域とそのＧＷから流入する標的宛通信の対処に利用する拠点の地域が同じ想定で記載。異なる場合は各ＧＷと拠点の対応情報テーブルのようなものを予め作成し、紐づけを行う）、処理単位に応じた識別子（処理単位が宛先ＩＰアドレス単位の場合は宛先ＩＰアドレス）、当該通信（処理単位毎）の流入元の隣接ＡＳ番号（流出の場合は値なし）、当該通信（処理単位毎）の流出先の隣接ＡＳ番号（流入の場合は値なし）、各流入元ＡＳからのそのＧＷを流れる（またはそのＧＷから流出先ＡＳに流れる）当該通信の処理単位毎の通信量が含まれる。ＧＷ番号とＧＷの地域は、例えば機器の設置時に運用者等によって登録されても良く、標的（宛先）ＩＰアドレス等の処理単位に応じた識別子、流入元（先）ＡＳ番号、処理単位毎の通信量は、定期的またはＤＤｏＳ対処装置１００からの要求に伴うトラヒック情報の収集時に適宜更新される。なお、上述したように、ＧＷの設置された地域とそのＧＷから流入する標的宛通信の対処に利用する拠点の地域が異なる場合に、予め作成した各ＧＷと拠点の対応情報テーブルの一例を図８に示す。この各ＧＷと拠点の対応情報テーブルの情報は、トラヒック情報テーブルとともにＤＤｏＳ対処装置１００に通知される。
【００２７】
ｍｉｔｉｇａｔｉｏｎ拠点情報テーブルの一例を図７に示す。ｍｉｔｉｇａｔｉｏｎ拠点情報テーブルは、拠点を一意に識別可能な識別子、その拠点内のｍｉｔｉｇａｔｉｏｎ装置３００の最大リソース量、利用可能リソース量（最大リソース量から現在対処に使っているリソース量を減算した値）の情報が含まれる。拠点番号と最大リソース量は、例えば拠点の設置時に運用者等によって登録されても良い。
【００２８】
ＤＤｏＳ対処装置１００は、複数のＩＰアドレスが同時に攻撃されている場合（複数の標的宛対処を同時に実施している場合）においても、ＤＤｏＳ攻撃の対処に伴う標的宛通信の遅延の増加を防ぎつつ、拠点間のリソース負荷分散を実現する装置である。
【００２９】
ＤＤｏＳ対処装置１００は、トラヒック情報収集・ＤＤｏＳ攻撃検知装置２００との通信機能を有し、標的宛通信を処理単位で識別するための識別子（処理単位が標的（宛先）ＩＰアドレス単位の場合は標的（宛先）ＩＰアドレス、５ｔｕｐｌｅのフロー単位の場合は５ｔｕｐｌｅ情報が利用可能）、各隣接ＡＳから各ＧＷに流入（または各ＧＷから隣接ＡＳに流出）する標的宛通信の処理単位での通信量、各拠点のｍｉｔｉｇａｔｉｏｎ装置３００の最大リソース量、利用可能な（残存）リソース量等の情報や攻撃検知メッセージを受信する。また、ＤＤｏＳ対処装置１００は、各ＧＷ、パケット転送装置４００との通信機能を有し、後述の攻撃対処設定部１１７を介して、任意の宛先への通信の経路を変更する機能を有する。
【００３０】
ＤＤｏＳ対処装置１００及びトラヒック情報収集・ＤＤｏＳ攻撃検知装置２００は、典型的には、サーバにより実現されてもよく、例えば、バスを介し相互接続されるドライブ装置、補助記憶装置、メモリ装置、プロセッサ、インタフェース装置及び通信装置から構成される。ＤＤｏＳ対処装置における後述される各種機能及び処理を実現するプログラムを含む各種コンピュータプログラムは、ＣＤ−ＲＯＭ（Compact Disk-Read Only Memory）、ＤＶＤ（Digital Versatile Disk）、フラッシュメモリなどの記録媒体によって提供されてもよい。プログラムを記憶した記録媒体がドライブ装置にセットされると、プログラムが記録媒体からドライブ装置を介して補助記憶装置にインストールされる。但し、プログラムのインストールは必ずしも記録媒体により行う必要はなく、ネットワークなどを介し何れかの外部装置からダウンロードするようにしてもよい。補助記憶装置は、インストールされたプログラムを格納すると共に、必要なファイルやデータなどを格納する。メモリ装置は、プログラムの起動指示があった場合に、補助記憶装置からプログラムやデータを読み出して格納する。プロセッサは、メモリ装置に格納されたプログラムやプログラムを実行するのに必要なパラメータなどの各種データに従って、後述されるようなＤＤｏＳ対処装置１００又はトラヒック情報収集・ＤＤｏＳ攻撃検知装置２００の各種機能及び処理を実行する。インタフェース装置は、ネットワーク又は外部装置に接続するための通信インタフェースとして用いられる。通信装置は、インターネットなどのネットワークと通信するための各種通信処理を実行する。しかし、ＤＤｏＳ対処装置１００及びトラヒック情報収集・ＤＤｏＳ攻撃検知装置２００は、上述したハードウェア構成に限定されるものでなく、他の何れか適切なハードウェア構成により実現されてもよい。
【００３１】
なお、本実施形態で示す構成は一例であり、例えば、トラヒック情報収集・ＤＤｏＳ攻撃検知装置２００は、ＤＤｏＳ対処装置１００に組み込まれてもよい。
【００３２】
次に、図３を参照して、本発明の一実施形態によるＤＤｏＳ対処装置１００を詳細に説明する。図３は、本発明の一実施形態によるＤＤｏＳ対処装置の構成を示すブロック図である。
【００３３】
図３に示されるように、ＤＤｏＳ対処装置１００は、処理部１１０、記憶部１２０及び通信部１３０を有する。
【００３４】
処理部１１０は、攻撃検知メッセージ処理部１１１と、負荷分散判断部１１２と、処理可否判断部１１３と、負荷分散対象削減部１１４と、グルーピング処理部１１５と、負荷分散処理部１１６と、攻撃対処設定部１１７と、再調整・対処終了判断部１１８とを備える。
【００３５】
また、記憶部１２０は、トラヒック情報テーブル１２１と、ｍｉｔｉｇａｔｉｏｎ拠点情報テーブル１２２と、各ＧＷと拠点の対応情報テーブル１２３と、攻撃識別情報テーブル１２４と、攻撃情報テーブル１２５と、グループ情報テーブル１２６と、グループと通信の識別子の対応情報テーブル１２７と、攻撃毎の第一の拠点情報テーブル１２８と、攻撃毎の第二の拠点情報テーブル１２９とを備えている。
【００３６】
ＤＤｏＳ対処装置１００は、図示しないデータ受信部により、トラヒック情報収集・ＤＤｏＳ攻撃検知装置２００から任意のタイミングで通知されたトラヒック情報，ｍｉｔｉｇａｔｉｏｎ拠点情報，各ＧＷと拠点の対応情報を受信し、受信した各情報を、それぞれ対応するトラヒック情報テーブル１２１、ｍｉｔｉｇａｔｉｏｎ拠点情報テーブル１２２、又は、各ＧＷと拠点の対応情報テーブル１２３に記憶する。トラヒック情報テーブル１２１、ｍｉｔｉｇａｔｉｏｎ拠点情報テーブル１２２、及び、各ＧＷと拠点の対応情報テーブル１２３のデータ構造は、トラヒック情報収集・ＤＤｏＳ攻撃検知装置２００における各テーブルと同様であり、その一例を図６〜図８に示す。
【００３７】
以下、処理部１１０内の各部の機能について図４のフローチャートを参照しながら説明する。図４は、攻撃検知メッセージ受信時かつ負荷分散対象削減とグルーピング処理を併用する場合におけるＤＤｏＳ対処装置１００の動作の簡易フローチャートである。
【００３８】
攻撃検知メッセージ処理部１１１は、トラヒック情報収集・ＤＤｏＳ攻撃検知装置２００からの攻撃検知メッセージ受信時の処理に関わり、当該メッセージに含まれる、標的宛通信を処理単位で識別するための識別子（例：標的ＩＰアドレスや５ｔｕｐｌｅ情報）を攻撃識別情報テーブル１２４に格納する。攻撃識別情報テーブル１２４の一例を図９に示す。
【００３９】
また、攻撃検知メッセージ処理部１１１は、各ＧＷのトラヒック情報テーブル１２１と受信した標的ＩＰアドレス等の識別子から、各標的宛通信（処理単位毎）がどの地域のＧＷから自ＡＳ内にどれだけの量流入し、どの地域のＧＷから他ＡＳに流出しているかを判断し、処理単位の識別子（標的ＩＰアドレス等）、現在の対処状態（初期値はＮＵＬＬ）、除外フラグ（初期値はＦａｌｓｅ）、入口の地域（他ＡＳ等から自ＡＳに対して標的宛通信（処理単位毎）の流入しているＧＷの設置された地域であり、この地域単位でｍｉｔｉｇａｔｉｏｎ拠点が設置されている想定）、入口のＧＷから入ってくる標的宛通信量（処理単位毎）、出口の地域（自ＡＳから他ＡＳ等へ標的宛通信（処理単位毎）の流出しているＧＷの設置された地域）の情報を攻撃情報テーブル１２５に登録する。攻撃情報テーブル１２５の一例を図１０に示す。
【００４０】
その後、攻撃検知メッセージ処理部１１１は、負荷分散判断部１１２による負荷分散の必要可否判断を開始する。
【００４１】
負荷分散判断部１１２は、自ＡＳに流入する標的宛通信（処理単位毎）の対処を、予め初期状態で利用する拠点として設定された第一の拠点（本実施形態では入口に近い拠点とする）で実施した際に、各拠点に十分なリソースがあるかを判断し、十分な場合には、第一の拠点を利用した対処を実施し、不十分な場合には処理可否判断部１１３を呼び出す処理部である（図４のステップＳ１０１，Ｓ１０２参照）。
【００４２】
具体的には、負荷分散判断部１１２は、攻撃情報テーブル１２５、各ＧＷと拠点の対応情報テーブル１２３、ｍｉｔｉｇａｔｉｏｎ拠点情報テーブル１２２に基づき、現在、各入口から流入する処理単位での標的宛通信量をその入口に対応する拠点（本実施形態では、入口の地域の拠点）に引き込んだ場合に、十分なリソースがあるかを判断する。例えば、北米にある拠点１の利用可能リソース量と北米の各ＧＷから流入する標的宛通信量の和を比較し、利用可能リソース量の方が多い場合は十分なリソースがあると判断する。
【００４３】
負荷分散判断部１１２は、全ての拠点について十分なリソースがある場合は、攻撃情報テーブル１２５の当該標的ＩＰアドレス（処理単位）の現在の対処状態を第一の拠点を表す「１」に設定し、攻撃対処設定部１１７に対して、標的ＩＰアドレス等の処理単位に応じた識別子と対処状態番号（＝１）を通知することで、標的宛通信（処理単位）の経路を第一の拠点を通過するように変更する（図４のステップＳ１０２参照）。一方、リソースが不足する場合は、負荷分散判断部１１２は、処理可否判断部１１３を呼び出す。また、負荷分散判断部１１２は、初回の攻撃検知メッセージ受信後に、再調整・対処終了判断部１１８を定期的に呼び出すタイマーを設定する。
【００４４】
処理可否判断部１１３は、負荷分散判断部１１２によって呼び出され、標的宛通信（処理単位）の通信数が、所望の時間内で負荷分散を実現したい場合の「同時処理可能な処理単位での通信数（ｎ’）」を上回るかを判断する処理部である（図４のステップＳ１０３参照）。ここで、ｎ’の値は、本発明技術を動作させるコンピュータの性能や本発明による負荷分散・攻撃対処の処理をどのくらいの時間で実現したいかのサービス仕様等に基づき、運用者等によって事前に設定される。また、標的宛通信（処理単位）の通信数は、攻撃情報テーブル１２５の識別子の情報に基づき算出される（本実施形態のようにテーブルを構築する場合は、前記テーブル１２５のレコード数と一致）。
【００４５】
処理可否判断部１１３は、標的宛通信（処理単位）の通信数が、「同時処理可能な処理単位での通信数（ｎ’）」を上回る場合、処理不能と判断し、負荷分散対象削減部１１４を呼び出す、または負荷分散対象削減部１１４を介さずに直接グルーピング処理部１１５を呼び出す。ここで、負荷分散対象削減部１１４とグルーピング処理部１１５は、片方だけ利用または両方を組み合わせて利用することが想定され、どちらを利用するか等は、例えば、運用者によって事前に設定される。処理可否判断部１１３により、処理可能と判断された場合は、負荷分散処理部１１６を呼び出す（図４のステップＳ１０４参照）。
【００４６】
負荷分散対象削減部１１４は、負荷分散の対象とする処理単位での通信数を削減する処理部である（図４のステップＳ１０５参照）。通信数削減のロジックとしては、（１）リソース不足の拠点にしか移動できない標的宛通信（処理単位）を負荷分散の対象から除外、（２）対処に利用する拠点の切り替え時に負荷分散効果の小さい、通信量が少ない標的宛通信（処理単位）を負荷分散の対象から除外、の２種類存在する。
【００４７】
前記（１）では、トラヒック情報テーブル１２１を参照して、標的宛通信（処理単位）毎に、流出しているＧＷ番号（すなわち出口のＧＷ番号）を取得し、各ＧＷと拠点の対応情報テーブル１２３と突合することで、前記ＧＷに対応する拠点番号（すなわち出口の拠点番号）を取得する。各標的宛通信（処理単位）について、出口の拠点番号と、負荷分散判断部１１２により、リソースが不十分と判断された拠点番号が一致する場合、その標的宛通信（処理単位）を負荷分散対象から除外する。このとき、攻撃情報テーブル１２５の当該標的宛通信（処理単位）の除外フラグをＴｒｕｅに設定する。
【００４８】
前記（２）では、各標的宛通信（処理単位）について、通信量に着目して、負荷分散の対象から除外するものを決定する。具体的な方法としては、通信量の閾値ｘ（例：１００Ｍｂｐｓ）を定め、その閾値以下のものを除外する（除外フラグをＴｒｕｅに設定）、全標的宛通信（処理単位）を通信量順にソートし、通信量の多い上位α％以外を除外する等が考えられる。
【００４９】
なお、前記（１）と（２）は、両方を組み合わせて実施しても良いし、片方だけを実施しても良い。
【００５０】
また、負荷分散対象削減部１１４は、自身の処理により、削減された負荷分散の対象とする処理単位での通信数が、「同時処理可能な処理単位での通信数（ｎ’）」を上回るかを判断し（図４のステップＳ１０６参照）、上回る場合は、グルーピング処理部１１５を呼び出す（図４のステップＳ１０７参照）。一方、上回らない場合は、負荷分散処理部１１６を呼び出す（図４のステップＳ１０８参照）。なお、攻撃情報テーブル１２５における各標的宛通信（処理単位）の除外フラグは、負荷分散対象削減部１１４が呼び出される都度、Ｆａｌｓｅの値で初期化しても良い。
【００５１】
グルーピング処理部１１５は、負荷分散の対象とする処理単位での標的宛通信をいくつかのグループに束ねる処理部である（図４のステップＳ１０７参照）。ここで、グループ数は「同時処理可能な処理単位での通信数（ｎ’）」以下とし、グループ単位で後述の負荷分散処理部１１６による負荷分散の計算を行うことで、処理単位での標的宛通信数が増加した際にも、現実的な時間での拠点間のリソース負荷分散が可能となる。グループ化の方式としては、次の３種類が存在し、運用者等の判断で切り替えて利用できる。なお、下記のグループ化処理では、前述の負荷分散対象削減部１１４により、除外フラグがＴｒｕｅに設定された標的宛通信（処理単位）は、グループ化処理の対象からも除外する。
【００５２】
グルーピング処理部１１５は、任意の方式によるグループ化において、グループ情報テーブル１２６及びグループと通信の識別子の対応情報テーブル１２７に、グルーピングに係る情報を追加する。グループ情報テーブル１２６及びグループと通信の識別子の対応情報テーブル１２７の一例を図１１及び図１２に示す。グルーピング処理部１１５は、任意の方式によるグループ化実施後に、負荷分散処理部１１６を呼び出す（図４のステップＳ１０７参照）。
【００５３】
方式１：作成するグループ数に関するロジックとして、「出口の拠点＋現在の対処状態（入口ｏｒ出口）」毎に、１つずつグループを作成する（グループ情報テーブル１２６にレコードを作成）。また、グループへの各標的宛通信（処理単位）の追加ロジックとして、標的宛通信（処理単位）毎に、自身の情報と合致するグループに、標的ＩＰアドレス等の識別子を追加する（対応するグループのグループと通信の識別子の対応情報テーブル１２７に追加）。
【００５４】
例えば、ある標的宛通信の「出口の拠点が１かつ現在の対処状態が１（入口）」の場合は、「出口の拠点が１かつ現在の対処状態が１」用のグループに追加する。グループに標的宛通信（処理単位）を追加する際に、そのグループの通信量の上限を超える場合は、同じ「出口の拠点＋現在の対処状態」のグループをもう一つ作成（グループ情報テーブル１２６のレコード作成）し、作成したグループに標的宛通信（処理単位）を追加する。ここで、各グループの通信量の上限値は、当該グループの出口の拠点の利用可能リソース量の値とすることで、後述の負荷分散処理において、移動不可なグループをなくすことができる。
【００５５】
方式２：作成するグループに関するロジックとして、「出口の拠点＋現在の対処状態（入口ｏｒ出口）」毎に、各グループに属する処理単位での標的宛通信数の比率ベースで、最大のｎ’個までグループを作る（グループ情報テーブル１２６のレコードを作成）。具体的な手順として、「出口の拠点＋現在の対処状態」の各組合せについて、対応する標的宛通信数（処理単位）を集計し、各「出口の拠点＋現在の対処状態」のグループについて、「ｎ’×（当該グループの標的宛通信数（処理単位）÷標的宛通信（処理単位）の総数）」個分ずつグループを作成する。
【００５６】
例えば、「出口の拠点＋現在の対処状態」の組み合わせを「出口の拠点番号，現在の対処状態」と表記した場合、「１，入口」、「１，出口」、「２，入口」、「２，出口」に当てはまる標的宛通信数（処理単位）がそれぞれ２０個、１０個、２０個、０個かつｎ’＝２０の場合、「１，入口」のグループは２０×（２０／５０）＝８個、「１，出口」のグループは２０×（１０／５０）＝４個、「２，入口」のグループは８個、「２，出口」のグループは０個作成する。また、結果が整数で得られない場合、四捨五入して整数化する。このとき、グループの総数がｎ’より大きい場合は、総数がｎ’個になるまで、任意のグループの数を減らす。また、ｎ’より小さい場合は、ｎ’になるまで、任意のグループの数を増やす。本処理の実現方法は任意だが、例えば、各「出口の拠点＋現在の対処状態」について、数の多い順やランダムな順番で、１つずつグループを減らしていく（または数の少ない順やランダムな順番で増やしていく）といった方法が想定される。現実的な時間で計算可能な上限であるｎ’個までのグループを作成しておくことで、リソース負荷分散の際に、各グループを第一の拠点と第二の拠点で対処する組み合わせの数を増やすことが可能となり、負荷分散性能の向上が期待できる。
【００５７】
また、作成した各グループへの標的宛通信（処理単位）の追加（グループと通信の識別子の対応情報テーブル１２７への登録）ロジックとして、「出口の拠点＋現在の対処状態」が一致することに加えて、各グループ内の標的宛通信（処理単位）の数ができるだけ均等になるように追加する（まだグループに属していない標的宛通信（処理単位）をグループに追加する際に、条件が一致するグループかつ、数の少ないグループを選択して追加）。または、各グループ内の通信量ができるだけ均等になるように追加する（まだグループに属していない標的宛通信（処理単位）をグループに追加する際に、量の少ないグループを選択して追加）。なお、方式１と同様に、まだグループに属していない標的宛通信（処理単位）をグループに追加する際に、各グループの通信量の上限値を超える場合は、次に候補となるグループへの追加を試み、全ての候補について追加不可の場合は、攻撃情報テーブル１２５の当該標的宛通信（処理単位）の除外フラグをＴｒｕｅに設定し、グループへの追加は実施しない。
【００５８】
方式３：作成するグループに関するロジックは、方式２と同様。グループへの標的宛通信（処理単位）の追加（グループと通信の識別子の対応情報テーブル１２７への登録）のロジックとして、全標的宛通信（処理単位）を通信量の大きい順にソートし、通信量の多い順に、条件が一致するグループに追加していく。このとき、グループ内の通信量の上限を超えるものは、攻撃情報テーブル１２５の除外フラグをＴｒｕｅにし、グループへの追加を実施しない。このようにすることで、グループ毎に通信量に差がつき、リソース負荷分散性能の向上が期待できる。
【００５９】
なお、グループ情報テーブル１２６の値やグループと通信の識別子の対応情報テーブル１２７の値は、グルーピング処理部１１５の呼び出しの都度、初期化しても良い。（すなわち、グルーピング処理呼び出しの都度、グループを作り直しても良い）。また、本グルーピング処理及びグループ単位での負荷分散の組み合わせ探索によって、処理単位での標的宛通信数ｎが大きくなっても、負荷分散処理部１１６における時間計算量を最悪でもＯ（（ｎ’）２）に抑えられる。
【００６０】
負荷分散処理部１１６は、標的宛通信（処理単位）毎、またはグループ毎に、初期状態において、対処に利用するように設定された第一の拠点（本実施形態では各標的宛通信（処理単位）の入口に近い拠点）と同等の遅延で転送可能な第二の拠点（本実施形態では各標的宛通信（処理単位）の出口に近い拠点）を抽出し、処理単位での標的宛通信毎、またはグループ毎に、どちらの拠点で対処すれば、拠点間のリソース不足を解消（リソース負荷分散）可能かの組み合わせを探索する。
【００６１】
まず、負荷分散処理部１１６による第一の拠点と第二の拠点の抽出方法について説明する。第一の拠点情報テーブル１２８は、図１３に示すように、標的ＩＰアドレス等の処理単位に応じた識別子、入口の地域、その地域に存在する（対応する）拠点番号、当該標的宛通信（処理単位）の対処に必要なリソース量、で構成される。負荷分散処理部１１６は、各標的宛通信（処理単位）について、攻撃情報テーブル１２５の入口情報の中の地域情報、標的宛通信の処理単位ごとの通信量の値をそのまま複製することで、入口の地域と必要なリソース量の値をそれぞれ登録する。また、拠点番号は、各ＧＷと拠点の対応情報テーブル１２３を参照して登録する。
【００６２】
さらに、負荷分散処理部１１６は、各標的宛通信（処理単位）について、トラヒック情報テーブル１２１の内、当該通信（処理単位）の識別子が含まれ、流出先の隣接ＡＳ番号が設定されたＧＷのテーブルを参照することで出口のＧＷ情報・通信量情報を抽出し、各ＧＷと拠点の対応情報テーブル１２３と突合することで、標的ＩＰアドレス等の処理単位に応じた識別子、出口の地域情報、出口の拠点番号、当該攻撃の対処に必要なリソース量で構成される、攻撃毎の第二の拠点情報テーブル１２９に各情報を登録する。攻撃毎の第二の拠点情報テーブル１２９の一例を図１４に示す。ここで、必要なリソース量は、攻撃情報テーブル１２５を参照し、各地域から流入している当該標的宛通信の処理単位での通信量の合計値を登録する。例えば、北米、欧州、アジアから１０Ｇｂｐｓずつ通信が流入している場合、その合計値の３０Ｇｂｐｓを必要なリソース量として登録する。
【００６３】
また、負荷分散処理部１１６が、グルーピング処理部１１５から呼び出され、グループ単位で処理を行う場合は、グループと通信の識別子の対応情報テーブル１２７を参照することで、グループ毎に含まれる標的ＩＰアドレス等の識別子を抽出する。その後、攻撃毎の第一の拠点情報テーブル１２８において、抽出した任意数の識別子の攻撃対処に必要なリソース量の合計値を計算し、グループ情報テーブル１２６の第一の拠点利用時の情報における各拠点で必要なリソース量の情報を登録する。また、第二の拠点情報テーブル１２９において、抽出した任意数の識別子の攻撃対処に必要なリソース量の合計値を計算し、グループ情報テーブル１２６の第二の拠点利用時の情報における各拠点で必要なリソース量の情報を登録する。
【００６４】
例えば、処理単位が標的ＩＰアドレス単位の場合かつグループ１にＩＰ１とＩＰ２が含まれる場合、グループ情報テーブル１２６における第一の拠点利用時の情報における拠点番号１で必要なリソース量は、第一の拠点情報テーブル１２８のＩＰ１のレコードにおける拠点番号１で必要なリソース量の値と第一の拠点情報テーブル１２８のＩＰ２のレコードにおける拠点番号１で必要なリソース量の値の合計値を登録する。なお、第二の拠点利用時の情報も同様に、グループに含まれるＩＰについて、第二の拠点情報テーブル１２９を参照し、その拠点番号と必要なリソース量の合計値を登録する。
【００６５】
次に、拠点間のリソース不足を解消（負荷分散）するために、各標的宛通信（処理単位）または各グループを第一の拠点と第二の拠点のどちらで対処すべきかを探索する処理について説明する。負荷分散処理部１１６が処理可否判断部１１３、負荷分散対象削減部１１４から呼び出された場合は標的宛通信（処理単位）に対して組み合わせ探索を実施し、負荷分散処理部１１６がグルーピング処理部１１５から呼び出された場合はグループ単位での組み合わせ探索を実施する。
【００６６】
本負荷分散に関わる最適化の目的関数は任意であるが、例えば以下のようなものが想定できる。
【００６７】
●目的関数１：リソース不足の解消に加えて、より収容効率を高めるために、各拠点のリソース使用率が最も平準化されるようにする
●目的関数２：リソース不足の解消に加えて、経路変更に伴う通信への影響を考慮し、現在の経路から経路変更の必要な標的宛通信の数を最小限にする
以下では、非特許文献２と同様に、各拠点内のｍｉｔｉｇａｔｉｏｎ装置３００の最大リソース量を超過しないように対処可能な組み合わせを探索する場合について説明する。
【００６８】
まず、標的宛通信（処理単位）での組み合わせ探索について説明する。負荷分散処理部１１６は、第一の拠点情報テーブル１２８、第二の拠点情報テーブル１２９、各ＧＷと拠点の対応情報テーブル１２３、ｍｉｔｉｇａｔｉｏｎ拠点情報テーブル１２２に基づき、まず、全標的宛通信（処理単位）の内、１つが第二の拠点、その他が第一の拠点の場合において、各拠点で使用されるリソース量の合計値と各拠点の最大リソース量を比較し、全ての拠点において、最大リソース量以下に収まる組み合わせを探索する。
【００６９】
条件を満たす組み合わせが見つからない場合は、これを全標的宛通信（処理単位）の内、２つが第二の拠点、その他が第一の拠点の場合、３つが第二の拠点、その他が第一の拠点の場合、…と順次探索を行い、全ての拠点において、最大リソース量以下に収まる組み合わせを発見した場合、探索終了とする。
【００７０】
最後まで条件を満たす組み合わせが見つからなかった場合、対処限界として何も処理せずに終了する（図４のステップＳ１０９，Ｓ１１０参照）。これは「現在、第一の拠点または第二の拠点を利用して対処している攻撃はそのまま。新規に発生した攻撃は拠点への引き込みを実施しない。」ということを意味する。
【００７１】
その後、負荷分散処理部１１６は、攻撃情報テーブル１２５の各標的宛通信（処理単位）の現在の対処状態を探索結果に基づき更新する。ここで、第一の拠点を利用する場合は１、第二の拠点を利用する場合は２を登録する。また、負荷分散処理部１１６は、経路変更または新規対処（ｍｉｔｉｇａｔｉｏｎ拠点への新規引き込み）の発生する標的宛通信（処理単位）について、処理単位に応じた識別子（標的ＩＰアドレス等）と対処状態の値を攻撃対処設定部１１７に通知すると共に呼び出しを行う。
【００７２】
次に、グループ単位での組み合わせ探索について説明する。負荷分散処理部１１６は、グループ情報テーブル１２６、ｍｉｔｉｇａｔｉｏｎ拠点情報テーブル１２２に基づき、まず、全グループの内、１つが第二の拠点、その他が第一の拠点の場合において、各拠点で必要なリソース量の合計値と各拠点の最大リソース量を比較し、全ての拠点において、最大リソース量以下に収まる組み合わせを探索する。
【００７３】
条件を満たす組み合わせが見つからない場合は、これを全グループの内、２つが第二の拠点、その他が第一の拠点の場合、３つが第二の拠点、その他が第一の拠点の場合、…と順次探索を行い、全ての拠点に置いて、最大リソース量以下に収まる組み合わせを発見した場合、探索終了とする。
【００７４】
最後まで条件を満たす組み合わせが見つからなかった場合、対処限界として何も処理せずに終了する（図４のステップＳ１０９，Ｓ１１０参照）。これは「現在、第一の拠点または第二の拠点を利用して対処している攻撃はそのまま。新規に発生した攻撃は拠点への引き込みを実施しない。」ということを意味する。
【００７５】
その後、負荷分散処理部１１６は、各グループについて、グループと通信の識別子の対応情報テーブル１２７から当該グループに属する処理単位に応じた識別子（標的ＩＰアドレス等）を取得し、攻撃情報テーブル１２５の各標的宛通信（処理単位）の現在の対処状態を探索結果に基づき更新する。また、負荷分散処理部１１６は、経路変更または新規対処（ｍｉｔｉｇａｔｉｏｎ拠点への新規引き込み）の発生する標的宛通信（処理単位）について、処理単位に応じた識別子（標的ＩＰアドレス等）と拠点番号（対処状態の値）を攻撃対処設定部１１７に通知すると共に呼び出しを行う。
【００７６】
攻撃対処設定部１１７は、負荷分散判断部１１２や負荷分散処理部１１６から通知された、標的宛通信の処理単位に応じた識別子（標的ＩＰアドレス等）、対処状態番号、対処状態番号によって示される拠点情報テーブル（第一の拠点情報テーブル１２８または第二の拠点情報テーブル１２９）の当該通信の拠点番号に基づき、自ＡＳの各ＧＷ・パケット転送装置４００に対して、標的宛通信（処理単位）を所望のｍｉｔｉｇａｔｉｏｎ拠点まで転送するための経路設定を行う（図４のステップＳ１１１参照）。
【００７７】
再調整・対処終了判断部１１８は、タイマーによって定期的に呼び出され、標的宛通信量（処理単位）の増減に伴う再調整（再度リソース負荷分散を実施）・対処終了の機能を担う。再調整・対処終了判断部１１８は、各ＧＷのトラヒック情報テーブル１２１に基づき、攻撃情報テーブル１２５の現在発生中の標的宛通信（処理単位）に関する情報を更新する。更新の内容としては、任意の標的宛通信（処理単位）について、標的宛通信量（処理単位）の値の増減が想定される。
【００７８】
また、再調整・対処終了判断部１１８は、ｍｉｔｉｇａｔｉｏｎ拠点情報テーブル１２２の利用可能リソース量を確認し、例えば、事前設定された閾値を下回っていた場合に負荷分散処理部１１６を呼び出す処理を行う。これは、現在発生中の攻撃量の増加によるリソース不足に対応するための仕組みである。
【００７９】
さらに、再調整・対処終了判断部１１８は、標的宛通信量（複数地域が入口の場合は各地域の通信量の合計値）が、例えば、事前設定の閾値を下回っている場合は、攻撃終了と判断し、当該攻撃への対処を終了する。具体的な終了処理としては、対処を終了する処理単位に応じた識別子（標的ＩＰアドレス等）を攻撃識別情報テーブル１２４、攻撃情報テーブル１２５、攻撃毎の第一の拠点情報テーブル１２８、攻撃毎の第二の拠点情報テーブル１２９、グループと通信の識別子の対応情報テーブル１２７から削除し、攻撃対処設定部１１７を介して、対処を終了する標的宛通信の経路を平常時の経路に変更することで、ｍｉｔｉｇａｔｉｏｎ拠点への引き込みを停止する。
【００８０】
次に、図５を参照して、本発明の一実施形態によるＤＤｏＳ攻撃対処手順の一例を説明する。図５は、本発明の一実施形態によるＤＤｏＳ攻撃対処手順を示すシーケンス図である。ここでは、ＡＳ１がＡＳ２，ＡＳ３，ＡＳ４を標的とするＤＤｏＳ攻撃の検知・対処サービスを各ＡＳに対して提供している想定である。また、ＡＳ２内のシステム１〜２０およびＡＳ３内のシステム２１〜３０を標的とし、アジアを送信元とするＤＤｏＳ攻撃（通信量は、システム１〜１０宛に各３Ｇｂｐｓずつ、システム１１〜２０宛に各０．５Ｇｂｐｓずつ、システム２１〜３０宛に各１Ｇｂｐｓずつとする）が発生し、第一の拠点（入口に近い拠点）を利用した対処を実施している状態から、ＡＳ３内のシステム３１宛にアジアを送信元とするＤＤｏＳ攻撃（通信量は２０Ｇｂｐｓ）が新規で発生し、対処を実施する場合について説明する。また、ＡＳ１には３地域にｍｉｔｉｇａｔｉｏｎ拠点が存在し、各拠点のｍｉｔｉｇａｔｉｏｎ装置３００の最大リソース量は６０Ｇｂｐｓである。なお、処理単位は、宛先（標的）ＩＰアドレス単位の場合を想定している。
【００８１】
［ステップＳ１］
トラヒック情報収集・ＤＤｏＳ攻撃検知装置２００は、定期的に各ＧＷからフロー情報を収集し、トラヒック情報テーブルに宛先ＩＰアドレス毎の通信量を格納するとともに当該トラヒック情報をＤＤｏＳ対処装置１００に通知する。また、定期的に各拠点のｍｉｔｉｇａｔｉｏｎ装置３００から利用可能リソース量を収集し、ｍｉｔｉｇａｔｉｏｎ拠点情報テーブルに格納するとともに当該ｍｉｔｉｇａｔｉｏｎ拠点情報をＤＤｏＳ対処装置１００に通知する。さらに、フロー等のトラヒック情報の分析（例えば、特定宛先の通信量が事前設定の閾値以上になった場合に攻撃と検知）により、ＡＳ３の標的システム３１に対する攻撃を検知し、ＤＤｏＳ対処装置１００に標的システム３１のＩＰアドレスを含む攻撃検知メッセージを送信する。
【００８２】
［ステップＳ２］
ＤＤｏＳ対処装置１００は、受信メッセージに含まれる標的ＩＰアドレスを攻撃識別情報テーブル１２４に格納する。また、各ＧＷのトラヒック情報テーブル１２１と受信した標的ＩＰアドレスから、標的ＩＰアドレス宛通信がどの地域のＧＷから自ＡＳ内にどれだけの量流入し、どの地域のＧＷから他ＡＳに流出しているかを判断し、標的ＩＰアドレス、現在の対処状態（初期値ＮＵＬＬ）、入口の地域、入口から入ってくる標的宛通信量（その地域の入口ＧＷが複数ある場合はその合計量）、出口の地域の情報を攻撃情報テーブル１２５に登録する。
【００８３】
さらに、攻撃情報テーブル１２５、各ＧＷと拠点の対応情報テーブル１２３、ｍｉｔｉｇａｔｉｏｎ拠点情報テーブル１２２に基づき、現在、各入口（地域）から流入する標的宛通信量をその入口に対応する拠点に引き込んだ場合に、十分なリソースがあるかを判断し、不足する場合は負荷分散処理を開始する。ここでは、アジアから流入する標的宛通信量（＝２０Ｇｂｐｓ）＞拠点３の利用可能リソース量（＝１５Ｇｂｐｓ）となり、拠点３のリソースが不足するため、負荷分散処理を開始する。
【００８４】
［ステップＳ３］
ＤＤｏＳ対処装置１００は、対処の必要なＩＰアドレス数が、同時処理可能なＩＰ数ｎ’を上回るか（処理不能か）を判定する。ここでは、ｎ’＝１０とし、対処の必要なＩＰアドレス数３１より小さいため、処理不能と判断する。
【００８５】
［ステップＳ４］
ＤＤｏＳ対処装置１００は、負荷分散の対象とする標的ＩＰアドレス数を前述の任意のロジックで削減する。例えば、ロジック（２）で、通信量が０．５Ｇｂｐｓ以下の通信は負荷分散の対象としない場合、システム１１〜２０のＩＰアドレスは負荷分散対象から除外されることになる。ここで、負荷分散の対象としない標的ＩＰアドレスについては、攻撃情報テーブル１２５の除外フラグをＴＲＵＥに設定する。
【００８６】
［ステップＳ５］
ＤＤｏＳ対処装置１００は、削減後の標的ＩＰアドレス数がｎ’を上回るか（処理不能か）を判定する。ここでは、除外後のＩＰ数２１はｎ’＝１０を上回るため、処理不能と判断する。
【００８７】
［ステップＳ６］
ＤＤｏＳ対処装置１００は、攻撃情報テーブル１２５を参照して、除外フラグがＴＲＵＥでない標的ＩＰアドレスを対象に、前述の任意の方式によるグルーピング処理を実施する。
【００８８】
例えば、方式２の場合、作成するグループ数については、「出口の拠点＝１かつ現在の対処状態＝１」のＩＰ数が１０、「出口の拠点＝２かつ現在の対処状態＝１」のＩＰ数が１１（現在の対処状態がＮＵＬＬのものは対処状態＝１として扱う）であることから、前者のグループを１０×１０／２１≒５個作成し、後者のグループを１０×１１／２１≒５個作成する。また、各グループへのＩＰアドレスの追加は、各グループの通信量が均等になるように実施する場合、まず、標的システム１のＩＰアドレスを「出口の拠点＝１かつ現在の対処状態＝１」の１つ目のグループに追加し、次に、表的システム２のＩＰアドレスを「出口の拠点＝１かつ現在の対処状態＝１」の２つ目のグループに追加し、…と、攻撃番号順にグループ内の通信量が均等になるように追加していく。また、例えば、「出口の拠点＝１かつ現在の対処状態＝１」のグループについては、グループ内の通信量の合計値が拠点１の利用可能リソース量６０を超えないように追加し、超える場合は、「出口の拠点＝１かつ現在の対処状態＝１」の別のグループに追加する。追加可能なグループがないＩＰアドレスは、除外フラグをＴＲＵＥに設定し、グループへの追加を実施しない。「出口の拠点＝２かつ現在の対処状態＝１」のグループについても同様に、拠点２の利用可能リソース量６０を超えないように追加し、超える場合は、「出口の拠点＝１かつ現在の対処状態＝１」の別のグループに追加する。追加可能なグループがないＩＰアドレスは、除外フラグをＴＲＵＥに設定し、グループへの追加を実施しない。
【００８９】
ＤＤｏＳ対処装置１００は、前述のようなグループの作成と各グループへのＩＰアドレスの追加の結果に基づき、グループ情報テーブル１２６に任意数のグループを登録し、各グループについて、グループと通信の識別子の対応情報テーブル１２７に、当該グループに属する標的ＩＰアドレスを登録する。
【００９０】
［ステップＳ７］
ＤＤｏＳ対処装置１００は、攻撃情報テーブル１２５・各ＧＷと拠点の対応情報テーブル１２３に基づき、攻撃毎の第一の拠点情報テーブル１２８と攻撃毎の第二の拠点情報テーブル１２９の値を登録する。また、グループと通信の識別子の対応情報テーブル１２７と、第一の拠点情報テーブル１２８と第二の拠点情報テーブル１２９に基づき、グループ情報テーブル１２６の各グループにおける第一の拠点利用時の情報と、第二の拠点利用時の情報を登録する。さらに、各グループを第一の拠点（入口に近い拠点）ｏｒ第二の拠点（出口に近い拠点）のどちらかで対処する組み合わせの中から、各拠点のリソース不足を解消可能な組み合わせを探索する。また、各標的ＩＰアドレスについて、攻撃情報テーブル１２５の現在の対処状態を探索結果に基づき更新する。
【００９１】
［ステップＳ８］
ＤＤｏＳ対処装置１００は、ＧＷやパケット転送装置４００に対して、各標的ＩＰアドレス宛通信を所望の経路でｍｉｔｉｇａｔｉｏｎ装置３００に引き込んで対処するための経路設定を実施する。
【００９２】
［ステップＳ９］
ＧＷやパケット転送装置４００は、任意の標的ＩＰアドレスについて、ｍｉｔｉｇａｔｉｏｎ拠点への引き込みを実施する。
【００９３】
［ステップＳ１０］
ＤＤｏＳ対処装置１００は、以降、タイマーまたは攻撃検知メッセージの受信契機で、再度、負荷分散の必要可否判断を実施する。また、タイマー契機で、対処終了判断を実施する。
【００９４】
このように本実施の形態によれば、負荷分散処理部１１６の探索処理を標的宛通信（処理単位）毎で行う場合、その処理対象である標的宛通信（処理単位）の通信数は負荷分散対象削減部１１４により予め削減されている。このため、負荷分散処理部１１６の処理負荷が軽減される。また、グルーピング処理部１１５により標的宛通信がグルーピングされ、負荷分散処理部１１６ではグループ毎の探索処理を行うことができる。これにより、負荷分散処理部１１６の処理負荷が軽減される。したがって、本発明によれば、複数のＩＰアドレスが同時に攻撃されている場合（複数の標的宛対処を同時に実施している場合）でも、対処に伴う標的宛通信の遅延の増加を防ぎつつ、拠点間のリソース負荷分散を行うことで、より多くのＤＤｏＳ攻撃に対処可能になる。
【００９５】
以上、本発明の一実施の形態について説明したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００９６】
例えば、上記実施の形態では、ＤＤｏＳ対処装置１００は、負荷分散対象削減部１１４とグルーピング処理部１１５を備えているが、どちらか一方だけ備えている場合でも本発明を適用できる。
【００９７】
また、上記実施の形態では、ＤＤｏＳ対処装置１００とトラヒック情報収集・ＤＤｏＳ攻撃検知装置２００とを別装置として実装していたが、両者は一装置として実装するようにしてもよい。
【符号の説明】
【００９８】
１００…ＤＤｏＳ対処装置
１１０…処理部
１１１…攻撃検知メッセージ処理部
１１２…負荷分散判断部
１１３…処理可否判断部
１１４…負荷分散対象削減部
１１５…グルーピング処理部
１１６…負荷分散処理部
１１７…攻撃対処設定部
１１８…再調整・対処終了判断部
１２０…記憶部
１２１…トラヒック情報テーブル
１２２…ｍｉｔｉｇａｔｉｏｎ拠点情報テーブル
１２３…各ＧＷと拠点の対応情報テーブル
１２４…攻撃識別情報テーブル
１２５…攻撃情報テーブル
１２６…グループ情報テーブル
１２７…グループと通信の識別子の対応情報テーブル
１２８…攻撃毎の第一の拠点情報テーブル
１２９…攻撃毎の第二の拠点情報テーブル
１３０…通信部
２００…トラヒック情報収集・ＤＤｏＳ攻撃検知装置
３００…ｍｉｔｉｇａｔｉｏｎ装置
４００…パケット転送装置
【図１】
2020014073.tif 000003
【図２】
2020014073.tif 000004
【図３】
2020014073.tif 000005
【図４】
2020014073.tif 000006
【図５】
2020014073.tif 000007
【図６】
2020014073.tif 000008
【図７】
2020014073.tif 000009
【図８】
2020014073.tif 000010
【図９】
2020014073.tif 000011
【図１０】
2020014073.tif 000012
【図１１】
2020014073.tif 000013
【図１２】
2020014073.tif 000014
【図１３】
2020014073.tif 000015
【図１４】
2020014073.tif 000016