JP6692178B2 - 通信システム - Google Patents

通信システム Download PDF

Info

Publication number
JP6692178B2
JP6692178B2 JP2016032238A JP2016032238A JP6692178B2 JP 6692178 B2 JP6692178 B2 JP 6692178B2 JP 2016032238 A JP2016032238 A JP 2016032238A JP 2016032238 A JP2016032238 A JP 2016032238A JP 6692178 B2 JP6692178 B2 JP 6692178B2
Authority
JP
Japan
Prior art keywords
data
rule
traffic
edge node
packet
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.)
Active
Application number
JP2016032238A
Other languages
English (en)
Other versions
JP2017152852A (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2016032238A priority Critical patent/JP6692178B2/ja
Publication of JP2017152852A publication Critical patent/JP2017152852A/ja
Application granted granted Critical
Publication of JP6692178B2 publication Critical patent/JP6692178B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、通信システム、通信装置、および通信システムの通信制御方法に係る。
近年のM2M(Machine TO Machine)通信の増加に伴い、クラウド網に対して負荷の上昇を抑えることや、セキュリティの確保が重要となっている。
特開2006−60599号公報
クラウド負荷上昇の抑止については、M2M端末台数の増加と、M2Mサービスメニューの多様化がクラウドに対する負荷上昇の要因と考えられる。解決手段として、サーバの増設が容易に考えられる手段だが、最大負荷を想定した増設は適切な投資ではなく、他の対策が望まれる。
また、セキュリティの確保については、想定外の種類の通信(プロトコル・アプリケーション)の流入、想定外の量の通信(DoS攻撃等)、通信内容の漏えいがM2Mにおけるセキュリティ保護の対象となると思われる。一方、人間の行う通信のような、標的型攻撃などはM2Mではあまり重要視されない。従って通信内容・量を可視化し、適切でないと判断した通信を抑止する必要がある。
クラウド負荷上昇の抑止や、セキュリティ確保の一手法としては、通信装置に所定条件により転送またはフィルタを行う機能を設けることが考えられる。
例えば特許文献1では、ファイアウォール装置が、発信元アドレスごとのトラヒック量が一定のしきい値を越えた場合に、攻撃があるものと検知して、指定されたフローに対しフィルタリングまたはレートリミットの設定を行う方式が開示されている(例えば特許文献1の0023項)。
しかしながら、M2M端末等を用いた通信では、その台数の増加と、サービスメニューの多様化により、様々な特性のトラフィックが流れている。よって、単純に閾値との比較でフィルタリング等の処理を行うと、必要な通信を阻害したり、対応すべき通信を見逃したりするおそれがある。
そこで本発明の課題は、M2M通信等にも柔軟に対応できる、セキュリティを確保す手法、あるいは、トラヒック負荷に応じた振り分けを実現する手法を提供することにある。
上記課題を解決する本発明の一側面は、複数のユーザ端末と、複数のユーザ端末と接続されるエッジノードと、エッジノードに接続されるネットワークと、ネットワークに接続される複数のサービスサーバとを備える通信システムである。このシステムにおいて、エッジノードは、入力されるパケットの特性を時系列的に蓄積するトラヒックパターンデータと、パケットを処理するためのルールを格納するルールデータと、を格納する。さらに、エッジノードは、ルールデータに基づいてパケットの処理を行う機能部と、機能部による処理の後に、入力されるパケットを、所定の宛先に向けて出力する方路振分機能部と、を備える。また、通信システムは、トラヒックパターンデータの内容に基づいて、ルールデータを更新するルール作成部を備える。
本発明の他の一側面は、複数のユーザ端末と、複数のユーザ端末と接続されるエッジノードと、エッジノードに接続されるネットワークと、ネットワークに接続される複数のサービスサーバとを備える通信システムにおける、エッジノードを構成する通信装置である。この装置は、入力されるパケットの特性を時系列的に蓄積するトラヒックパターンデータと、パケットを処理するためのルールを格納するルールデータと、を格納する記憶装置を備える。また、トラヒックパターンデータの内容に基づいて、ルールデータを更新するルール作成部と、ルールデータに基づいてパケットの処理を行う機能部と、機能部による処理の後に、入力されるパケットを、所定の宛先に向けて出力する方路振分機能部と、を備える。
本発明のさらなる他の一側面は、複数のユーザ端末と、複数のユーザ端末と接続されるエッジノードと、エッジノードに接続されるネットワークと、ネットワークに接続される複数のサービスサーバとを備える通信システムの通信制御方法である。この方法では、エッジノードに入力されるパケットの特性を時系列的に蓄積して、トラヒックパターンデータを生成する第1のステップ、トラヒックパターンデータの統計的処理に基づいて、エッジノードに入力されるパケットの処理内容を定めるルールデータを生成あるいは更新する第2のステップ、ルールデータに基づいて、エッジノードに入力されるパケットの処理内容を決定する第3のステップ、処理内容に基づいて、エッジノードにおいてパケットを廃棄し、あるいは、エッジノードから所望の送信先に送信する第4のステップ、を備える。
ルールデータとは、例えば特定のパケットを廃棄するフィルタルールデータや、特定のパケットを転送するリダイレクトルールデータである。機能部による処理は、例えば、フィルタルールデータに基づくパケットの廃棄や、リダイレクトルールデータに基づく、パケットの転送である。
M2M通信等にも対応できる、セキュリティを確保する手法、あるいは、トラヒック負荷に応じた振り分けを実現する手法を提供できる。
実施例のネットワーク構成例を示すブロック図 エッジノード構成例(上り)のブロック図 エッジノード構成例(下り)のブロック図 管理サーバ構成例のブロック図 エッジサーバ構成例のブロック図 正常時のパケットの流れの例を示すチャート図 異常時のパケットの流れの例を示すチャート図 クラウドサーバ過負荷時のパケットの流れの例1を示すチャート図 クラウドサーバ過負荷時のパケットの流れの例2を示すチャート図 トラヒックパターンデータの一例を示す表図 フィルタルールデータの一例を示す表図 リダイレクトルールデータの一例を示す表図 トラヒックパターン学習の例1を示す概念図 トラヒックパターン学習の例2を示す概念図 管理サーバで集計されたトラヒック量の例を示すグラフ図 エッジノードのトラヒック学習機能部の動作フローの一例を示すフロー図 エッジノードのルール作成部によるフィルタルールデータの作成処理例1を示すフロー図である エッジノードのルール作成部によるフィルタルールデータの作成処理例2を示すフロー図 エッジノードのルール作成部によるリダイレクトルールの作成処理例を示すフロー図
実施の形態について、図面を用いて詳細に説明する。ただし、本発明は以下に示す実施の形態の記載内容に限定して解釈されるものではない。本発明の思想ないし趣旨から逸脱しない範囲で、その具体的構成を変更し得ることは当業者であれば容易に理解される。
以下に説明する発明の構成において、同一部分又は同様な機能を有する部分には同一の符号を異なる図面間で共通して用い、重複する説明は省略することがある。基本的に等価な構成が複数存在する場合には、同一の符号にハイフンと異なる符号を付して、各個体を識別することがある。また、個体を識別する必要がない場合には、ハイフン以降を省略することがある。
本明細書等における「第1」、「第2」、「第3」などの表記は、構成要素を識別するために付するものであり、必ずしも、数または順序を限定するものではない。また、構成要素の識別のための番号は文脈毎に用いられ、一つの文脈で用いた番号が、他の文脈で必ずしも同一の構成を示すとは限らない。また、ある番号で識別された構成要素が、他の番号で識別された構成要素の機能を兼ねることを妨げるものではない。
図面等において示す各構成の位置、大きさ、形状、範囲などは、発明の理解を容易にするため、実際の位置、大きさ、形状、範囲などを表していない場合がある。このため、本発明は、必ずしも、図面等に開示された位置、大きさ、形状、範囲などに限定されない。
<0.本実施例の概要>
以下で説明する実施例では、クラウドとエンドユーザを繋ぐネットワークのユーザ側エッジ部分にエッジノードを配備する。ネットワークは、通常ネットワークキャリアが提供している。エッジノードでは、DPI(Deep Packet Inspection)を用いたプロトコルやアプリケーションの識別を行う。エッジノードでは、DPIによる識別結果と、プロトコルやアプリケーション別の通信可否情報(フィルタ情報)に基づき、対象外の通信をブロックする。
また、エッジノードでは、トラヒックパターンに基づいて検知した特定の特徴を持つトラヒックを、動的に通信可否情報に登録してブロックする。このため、エッジノードは、現状の通信可否情報で許可された通信のトラヒックパターンを学習する。
ここでトラヒックパターンとは、トラヒックの特性の時間的変化をいう。トラヒックの特性とは、例えば単位時間あたりのパケット数、データ量、Cプレーン(コネクション)数、Uプレーン(データ)量、などのパラメータ、および、これらのパラメータを用いて計算される2次的なパラメータである。2次的なパラメータとしては、例えば、Cプレーン数とUプレーン量の相関などがある。エッジノードはこのような、トラヒックパターンを学習する。学習とは、過去のトラヒックパターンを記憶することをいう。
以上の学習処理は、エッジノード毎に行ってもよいし、エッジノードからクラウド側のサーバ等にトラヒック特性を通知して、集計してもよい。サーバで集計することにより、エッジノード単独では検知できない異常を検知することができる。
また、エッジノードでは、DPI結果、およびトラヒック学習パターンに基づき、通信の宛先、プロトコル、およびアプリケーションの少なくとも一つに応じて、パケットにタグを付与する。ここでタグには通信元デバイス情報、タグ付けしたエッジノードの情報が含まれる。
エッジノードは、タグに応じて送信先クラウドサーバを振り分ける。アプリケーションによってはクラウドサーバではなく、エッジサーバに振り分けてもよい。後に詳細に説明するように、エッジサーバ104は、クラウドサーバ106に代わって処理を代行できるサーバである。これによって、クラウドサーバの負荷低減と、処理のリアルタイム性を保証することができる。なお振り分けのルールは、エッジノード外のサーバから指定することも可能である。
<1.ネットワーク全体構成>
図1は、実施例となるネットワーク構成例である。図1において、クラウドサーバ(サービスサーバ)101は、通信キャリアネットワーク102を介して、1または複数の地域ネットワーク102−1〜102−3に接続されている。
クラウドサーバ101は、各種のサービスA〜Cを提供する1または複数のサービスサーバ106−1〜106−3と、管理サーバ107を含んでいる。地域ネットワーク103−1〜103−3は、クラウドサーバ101との間でデータの送信及び受信の少なくとも一つを行う、ユーザやクライアント108−C、各種装置108−M、センサやデバイス108−D等を含む。便宜的に、地域ネットワーク103−1〜103−3のこれらの主体を、ユーザ(端末)108と総称することにする。地域ネットワーク103には、ユーザ108からのデータを中継する装置として、例えばM2MGW(Machine to Machine Gateway)109を含んでもよい。本明細書では便宜的に、ユーザ108からクラウドサーバ101の方向の通信を上り、逆方向を下りと呼称することにする。
通信キャリアネットワーク102と地域ネットワーク103の間には、データを中継するエッジノード105−1〜105−3が配置されている。また、エッジノード105−1〜105−3は、エッジサーバ104と交信が可能である。
<2.エッジノード>
<2−1.エッジノード構成例>
図2Aおよび図2Bはエッジノード105の構成例である。エッジノード105は、公知の基本的な通信機能とともに以下の構成を備える。すなわち、DPI機能部201、フィルタ機能部202、ルーティング機能部203、トラヒック学習機能部204、方路振分機能部205、クラウド通信機能部206、ルール作成機能部207を備える。また、エッジノード105は、フィルタルールデータ208、リダイレクトルールデータ209、および、トラヒックパターンデータ210を記憶する。
なお、本実施例では、各装置(サーバやノード)は、通常の通信装置の機能の他、情報処理装置の基本構成である、処理装置(プロセッサ)、記憶装置(メモリ)、入力装置(入力インタフェース)、出力装置(出力インタフェース)の構成を備えるものとし、上記各種の機能は、記憶装置に格納されたプログラムが処理装置によって実行されることで、定められた処理を他のハードウェアと協働して実現することとする。処理装置などが実行するプログラム、その機能、あるいはその機能を実現する手段を、「機能」、「機能部」、「手段」、「部」、「ユニット」、「モジュール」等と呼ぶ場合がある。
また、記憶装置は、例えば磁気ディスク装置や各種半導体記憶装置を用いるものとし、本明細書で「データ」と称する情報を格納する。以後の説明では「〜テーブル」、「〜リスト」、「〜DB(Database)」、「データ」、「〜キュー」、「情報」等の表現にて本実施例の構成を説明することがあるが、これらは等価な情報である限り、テーブル、リスト、DB、キュー、等のデータ構造以外で表現されていてもよい。
また、各情報の内容を説明する際に、「識別情報」、「識別子」、「名」、「名前」、「ID(IDentification)」という表現を用いるが、これらについては互いに置換が可能である。
また、プログラムは処理装置によって実行されることで定められた処理をメモリ及び通信ポート(通信制御デバイス)を用いながら行うため、処理装置を主語として説明することもできる。また、プログラムを主語として開示された処理はサーバ等の装置、情報処理装置が行う処理としてもよい。また、プログラムの一部または全ては専用ハードウェアによって実現されてもよい。
また、各種プログラムは、プログラム配布サーバや、計算機が読み取り可能な記憶メディアによって情報処理装置にインストールされてもよい。この場合、プログラム配布サーバは、プロセッサと記憶資源を含み、記憶資源はさらに配布プログラムと配布対象であるプログラムを記憶する。そして、配布プログラムをプロセッサが実行することで、プログラム配布サーバのプロセッサは、配布対象のプログラムを他の計算機に配布する。
また、計算機は入出力デバイスを有してもよい。入出力デバイスの例としてはディスプレイとキーボードとポインタデバイスが考えられるが、これ以外のデバイスであってもよい。また、入出力デバイスの代替としてシリアルインタフェースやイーサーネットインタフェースを入出力デバイスとし、当該インタフェースにディスプレイ又はキーボード又はポインタデバイスを有する表示用計算機を接続し、表示用情報を表示用計算機に送信したり、入力用情報を表示用計算機から受信することで、表示用計算機で表示を行ったり、入力を受け付けることで入出力デバイスでの入力及び表示を代替してもよい。
以上の構成は、単体のコンピュータで構成してもよいし、あるいは、入力装置、出力装置、処理装置、記憶装置の任意の部分が、ネットワークで接続された他のコンピュータで構成されてもよい。
本実施例中、ソフトウエアで構成した機能と同等の機能は、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)などのハードウエアでも実現できる。そのような態様も本願発明の範囲に含まれる。
<2−2.上り方向エッジノード動作例>
図2Aおよび図2Bを参照して、エッジノード105の動作を説明する。本明細書の図面では、太い矢印はトラフィック(パケット)の経路を、細い矢印は装置内の制御のためのデータ、コマンド等を示す。
図2Aは上り方向の処理である。上り方向の通信において、エッジノード105はユーザ108からのパケット211Uを受信すると、DPI機能部201にてアプリケーション種別を特定する。アプリケーション種別は、パケット211U本体と合わせてこの後に続くフィルタ機能部202に送られる。
フィルタ機能部202は、フィルタルールデータ208を適用して、パケットの送信元IPアドレスやDPI機能部201から送られてきたアプリケーション種別をフィルタルールデータと照合し、これに合致すればパケットを廃棄する。パケットを廃棄した場合には、これ以降の処理は行わない。フィルタルールデータ208には、パケットの送信元IPアドレスやアプリケーション種別の他、他の種類のパラメータを格納してもよい。また、フィルタリングは、複数のパラメータの一つまたは複数の組合せに基づいて行ってもよい。
パケット211が廃棄されなかった場合には、パケット211Uをルーティング機能部203へ送る。ルーティング機能部203はリダイレクトルールデータ209を参照してパケットの宛先を選択する。その後パケット211Uをトラヒック学習機能部205に送る。
トラヒック学習機能部205は受信したパケット211Uの受信時刻、パケットサイズ、送信元IPアドレス、宛先IPアドレス、アプリケーション種別といった情報を用いてトラヒックパターンデータ210を更新する。トラヒックパターンの更新方法、および、フィルタルールデータ208、リダイレクトルールデータ209の更新方法は後述する。
パケットは方路振り分け機能部205に送られる。方路振り分け機能部205ではパケット211Uを宛先に応じて振り分ける。振り分けられたパケット211Uは、上り方向の宛先であるクラウド101中のクラウドサーバ106や、エッジサーバ104に送出される。
<2−3.下り方向エッジノード動作例>
図2Bは下り方向の処理である。下り方向の通信において、エッジノード105は、クラウドサーバ106やエッジサーバ104からのパケット211Dを受信すると、DPI機能部201にてアプリケーション種別を特定する。アプリケーション種別は、パケット211本体と合わせてこの後に続くフィルタ機能部202に送られる。
フィルタ機能部202はフィルタルールデータ208を参照して、パケットの送信元IPアドレスやDPI機能部201から送られてきたアプリケーション種別を、フィルタルールデータに照合する。フィルタ機能部202の動作の詳細は、図2Aで説明したものと同じである。
ルーティング機能部203はリダイレクトルールデータを参照してパケット211Dの宛先を選択する。なお下り方向の通信はユーザ108へ送信されるデータなので、リダイレクトルールの対象外であるため参照する必要はない。しかし、上りと下りで処理を共通化する利点があるため、本実施例では下りでもリダイレクトルールデータを参照することにしている。上りと下りを識別して、下り方向の通信の場合は、ルーティング機能部203をスキップすることも可能である。その後パケット211Dをトラヒック学習機能部204に送る。
トラヒック学習機能部204はトラヒックパターンデータ210を更新する。動作の詳細は、図2Aで説明したものと同じである。その後、パケットは方路振り分け機能部205に送られる。方路振り分け機能部205ではパケットを宛先(地域ネットワーク103中のユーザ108)に送り出す。
<2−4.管理サーバによるエッジノードのリダイレクト制御例>
図2A、図2Bを参照して、管理サーバによるエッジノードのリダイレクト制御例を説明する。
クラウド通信部206はトラヒックパターンデータ210を周期的に管理サーバ107へ送信する。管理サーバ107は各エッジノード105から送られてきたトラヒックパターンデータ210を集計し、クラウドサーバ106毎にかかる負荷を計算する。計算の結果負荷が閾値を超えた場合、負荷の元となったエッジノードに対して転送停止指示を送信する。または、転送停止要求後に負荷が閾値を下回った場合は、転送許可指示を当該エッジノードに送信する。
転送停止指示を受け取ったエッジノード105のクラウド通信部206はこれをルール作成部207に送る。ルール作成部207はリダイレクトルールデータ209にて、転送停止対象のクラウドサーバに対するリダイレクト指示を「有」に設定する。リダイレクトルールデータ209の詳細は後述する。
転送許可指示を受け取ったエッジノード105のクラウド通信部206はこれをルール作成部207に送る。ルール作成部207はリダイレクトルールデータ209にて、転送許可対象のクラウドサーバに対するリダイレクト指示を「無」に設定する。
またルール作成部207は定期的にトラヒックパターンデータ210を参照し、特定のアプリケーションや特定のIPアドレスからの通信についてトラヒックの異常が認められる場合、これらのアプリケーションやIPアドレスからの通信をブロックするために、フィルタルールデータ208に対象となるアプリケーションやIPアドレスを記載する。
さらにルール作成部207は、トラヒックパターンデータ210にて特定の宛先に対する通信量が一定の閾値を超えた場合、自律的にリダイレクトルールデータ209の、該当する宛先IPアドレスのリダイレクト指示を「有」に設定するように構成することもできる。
<3.管理サーバ構成例>
図3は、管理サーバ107の構成例である。管理サーバ107の統計情報収集部301は、各地のエッジノード105のクラウド通信部206から送信される、トラヒックパターンデータ210、あるいは、トラヒックパターンデータを生成するための情報を周期的に収集する。収集の周期は任意であるが、例えば1分周期とする。周期が短ければ制御の精度が向上するが、収集のためのオーバヘッドが増大する。
クラウドトラヒック学習機能部302はこのトラヒックパターンデータ210を集計し、クラウドトラヒック学習機能部302でトラヒックパターンを学習する。学習の仕方はエッジノード105のトラヒック学習機能部204と同様である。
エッジノード105、管理サーバ107におけるトラヒックパターン学習は後に詳述する。学習した結果は、トラヒックパターンデータ210、304として蓄積される。これによりクラウド101もしくはクラウドサーバ106にかかる負荷の傾向を把握できる。
特定のクラウド101もしくはクラウドサーバ106にかかる負荷が一定の閾値を超えた場合、転送可否指示部305により、地域毎のトラヒック傾向を見て、パケット量が多いエッジノード105(複数あってもよい)に対して、当該送信先に対する送信停止(あるいは別サーバへの転送)の指示を出すことができる。逆に負荷が閾値を下回った場合、対象となっていたエッジノード105に対して送信許可(あるいは別サーバへの転送解除)の指示を出す。
また、管理サーバ107は、クラウド管理者からの指示を、ユーザインターフェース303を介して受け付け、指示内容に基づき、全てのもしくは選択したエッジノード105に対して転送禁止あるいは許可の指示を出すこともできる。
なお、上述したように、エッジノード105から管理サーバ107に送信されるデータは、トラヒックパターンデータ210そのものでなく、トラヒック学習機能部204で作成されるトラヒックの状況を示すデータでもよい。
<4.エッジサーバ構成例>
図4は、エッジサーバ104の構成である。エッジサーバ104は、クラウドサーバ106の負荷が高いとき、リアルタイム性の高い処理の場合にエッジノード105から転送されてきたユーザ108(PC/タブレット、M2Mデバイスなど)からのパケットを、クラウドサーバ106に代わって処理するサーバである。通常のサーバが有する構成以外の特徴に限って以下で説明する。
受信したパケットは振り分け部401にてサービスに応じて適切なサービス処理部402(図中のサービスA,B,C,,,)に転送され、そこで処理される。なお、複数のサービス処理部402は、例えばサーバ仮想化の技術を用いて、同一物理サーバ上に実現することができる。
エッジサーバ104は、クラウドインタフェース403により、定期的にクラウドサーバ106とデータをやりとりし、データの同期をとる。これは、ユーザがクラウドサーバ106と通信しても、エッジサーバ104と通信しても、同じ結果を得られるようにするためである。
<5.正常時パケットフロー例>
図5は、正常時のパケットの流れを示すチャート図である。ここで、正常時とはパケットのフィルタリングがされず、負荷の大きなクラウドサーバ106もない状態である。
ユーザ108から送信されるパケット211Uは、M2MGW109を介して、地域ネットワーク103のエッジノード105に送られる。エッジノード105では、図2Aで説明した処理を行い、トラヒック学習機能部204は、トラヒックパターン学習S501を実行する。
また、クラウドサーバ106から送信されるパケット211Dは、地域ネットワーク103のエッジノード105に送られる。エッジノード105では、図2Bで説明した処理を行い、トラヒック学習機能部204は、トラヒックパターン学習S501を実行する。
エッジノード105を経由したパケット211Dは、M2MGW109を介して、地域ネットワーク103のユーザ108に転送される。
トラヒックパターン学習S501の内容は、後に説明する。また、図4で説明したように、エッジサーバ104とクラウドサーバ106は同期処理S502を行う。
<6.異常時パケットフロー例>
図6は、異常パケット検出時のパケットの流れを示すチャート図である。ここで異常時とは例えば、悪意あるユーザやサーバによるアクセスがあり、フィルタリングがされるべき場合である。
悪意のあるユーザ108Vから送信される攻撃パケット211UVは、M2MGW109を介して、地域ネットワーク103のエッジノード105に送られる。図2Aで説明したように、エッジノード105では、フィルタルールデータ208と攻撃パケット211UVを照合して、フィルタルールデータ208と一致した場合には、攻撃パケット211UVを破棄する。
また、フィルタルールデータ208と攻撃パケット211UVが一致しない場合であっても、攻撃パケット211UVのトラヒックパターンが、トラヒックパターンデータ210と比較して異常値を示す場合には、攻撃パケット211UVをフィルタするように、ルール作成部207がフィルタルールデータ208を変更する(S601)。その結果、変更されたフィルタルールデータ208と一致する攻撃パケット211Vは、廃棄される(S602)。異常の検知方法については、後に図12〜図14で説明する。
悪意あるサーバ106DVからの攻撃パケット211DVも同様に、フィルタルールデータ208を変更し(S603)、一致した攻撃パケット211DVは廃棄される(S604)。
以上の処理は、各エッジノード105が自律的にフィルタルールデータ208を変更する例である。ただし、これに加えて、あるいはこれに代えて、管理サーバ107からの指示でフィルタルールデータ208を変更してもよい。すなわち、管理サーバ107もトラヒックパターンデータ304を備えているため、各地のエッジノード105からの情報に基づく統計情報が、トラヒックパターンデータ304に基づいて異常値を示す場合には、関連するエッジノード105のフィルタルールデータ208に対して変更の指示を出す。
管理サーバ107は、システム全体のトラヒックパターンを把握しているので、エッジノード105単独で検知できない異常を検知できる可能性がある。ただし、
エッジノード105からの情報を収集するまでにタイムラグがあるため、反応は遅くなる。
<7.高負荷時サーバ切替え処理例1>
図7はクラウドサーバ106の負荷が高い時の、上りパケット211Uの流れを示すチャート図である。ユーザ108からの上りパケット211Uは、M2MGW109を経由してエッジノード105で処理される。
エッジノード105はユーザ108からの上りパケット211Uのトラヒックを学習する一方、DPIによりクラウドサーバ106毎の通信量を監視し、特定のクラウドサーバ106への負荷が高い場合、宛先をクラウドサーバ106からエッジサーバ104に切り替える(S701)。負荷が高いサーバの検出方法は、後に図12〜図14で説明する。
切り換えた結果、上りパケット211Uはクラウドサーバ106からエッジサーバ104にリダイレクトされる。
クラウドサーバ106とエッジサーバ104は定期的に、あるいは、クラウドサーバ106の負荷が低いときなどを契機にデータの同期を実施する(S702)。
<8.高負荷時サーバ切替え処理例2>
図8はクラウドサーバ106の負荷が高い時の、上りパケット211Uの流れを示すチャート図である。図7の例では、クラウドサーバ106の負荷は、エッジノード105が検出し、自律的に切替えた。しかし、単一のエッジノード105では特定のクラウドサーバ106に負荷が集中しているように見えなくても、他のエッジノード105が送出するパケットを考慮すると、特定のクラウドサーバに負荷が集中している場合がある。
図8の例では、エッジノード105−1、105−2其々では、クラウドサーバ106向けのパケット量は多くない。しかし、クラウドサーバ106には、エッジノード105−1、105−2の両方から上りパケット211Uが集中するため、負荷が大きくなっている。
図8の例では、管理サーバ107は、配下の各エッジノード105からトラヒック統計情報の報告(S801)を受け、統計情報を集計し、負荷が大きくなっているクラウドサーバ106を検出すると、当該クラウドサーバ106にパケット211Uを送出しているエッジノードに対して、送出先の切り替え指示を行い、宛先をクラウドサーバ106からエッジサーバ104に切り替える(S802)。
統計情報の集計手法としては、例えば宛先となるクラウドサーバ106毎に、転送量を合算すればよい。
<9.トラヒックパターンデータ例と異常判定例>
図9は、エッジノード105が格納する、トラヒックパターンデータ210の一例を示す図である。本実施例では、トラヒックパターンデータ210は上り通信と下り通信とで2つ設ける。ただし両者に形態上の違いはないため、同じ図で説明する。
なお、管理サーバ107が格納する、トラヒックパターンデータ304も同様に構成できる。トラヒックパターンデータ304は、各エッジノード105のトラヒックパターンデータ210を集計したものである。ただし、前述のようにトラヒックパターンデータ210より時間的に遅れて更新される。トラヒックパターンデータ304では、送信元IPアドレス901の代わりに、送信元エッジノード105のIPアドレスを用いて、エッジノード単位の統計をとることもできる。
トラヒックパターンデータ210は、送信元IPアドレス(検索キー#1)901、宛先IPアドレス(検索キー#2)902、アプリケーション名称(検索キー#3)903と、時間帯毎のCプレーンのカウンタ904と、Uプレーンのカウンタ905が記憶されている。Cプレーンは、送受信機間でコネクションの設定、解放等に関する制御情報を扱うプロトコルである。Uプレーンは、送受信機間でユーザ情報を送受するために使用するプロトコルである。
これらのカウンタはトラヒック学習機能部204がパケット211を受信するたびに計上する。ここで時間帯とは、例えば周期的に実行する場合には、その周期によって定められる。例えば、図9では10分間隔である。メモリ量を節約したい場合には、ある程度の時間が経過すると、時間帯毎のカウンタは古い時間帯から順に上書きされるように構成してもよい。
またトラヒックパターンデータ210は、全IPアドレス、および、アプリケーションの合計カウンタ906を時間帯毎に計算し、記録してある。また、任意のまとまった時間帯で時間帯毎の合計カウンタの平均値907と分散値908を計算し、記録してある。この平均値と分散値を基準として時間帯毎のマハラノビス距離909を計算し、記録する。マハラノビス距離は統計量の一つとして、過去データから外れたデータを異常値として検出するために用いることができる。統計量とは、過去のデータに所望の関数を適用して得た、データの特徴を要約した数値をいう。例えば、平均値、分散、偏差値、マハラノビス距離のようなものである。統計量を求める処理のことを統計的処理という。このように、過去のデータを統計的に処理することにより、異常判定を行うことができる。
ルール作成部207はトラヒックパターンデータ210をモニタして、マハラノビス距離909があらかじめ定めた一定値を超えた場合に、検索キー#1(送信元IPアドレス)や、検索キー#2(宛先IPアドレス)、検索キー#3(アプリケーション名称)毎に、Cプレーン、Uプレーンのカウンタをチェックし、通信量の過多など判定する。判定は、カウンタの値を、例えば「閾値」、「所定期間のカウンタの値の平均値」、あるいは、「所定期間前のカウンタの値」等との比較により行うことができる。ただし、これに限るものではなく、他の方法を用いてもよい。その結果、異常と判定された通信量と関連する送信IPアドレス、受信アドレス、あるいはアプリケーションを検出することができる。異常と判定されたIPアドレスあるいはアプリケーションは、フィルタルールデータ208あるいはリダイレクトルールデータ209に登録される。
上記のマハラノビス距離は、異常検知の一手法であるが他の異常検知手法を用いてもよい。例えば、単純に時間帯毎のUプレーン合計値の一つ前の時間帯との差分を見て、その値があらかじめ定めた一定量を超えた場合に検索キー#1(送信元IPアドレス)、検索キー#2(宛先IPアドレス)、検索キー#3(アプリケーション名称)毎に、Uプレーンのカウンタをチェックし、通信量の過多を判定して、どのIPアドレスあるいはアプリケーションが異常なのかを検出し、フィルタルールデータ208の作成に用いることもできる。
<2−4.管理サーバによるエッジノードのリダイレクト制御例>で説明したように、ルール作成部207は、管理サーバ107からの転送停止指示または転送許可指示に従って、リダイレクトルール209の設定内容を変更することができる。またルール作成部207は、管理サーバ107の指示によらず、エッジノード105のトラヒックパターンデータ210を参照して、クラウドサーバ106のIPアドレスを検索キー#2(宛先IPアドレス)にて検索し、クラウドサーバ毎にCプレーン、Uプレーンの時間帯における合計値を計算し、あらかじめ定めた一定値を超えた場合にリダイレクトルールデータ209の設定内容を変更することもできる。
また、同様にルール作成部207は、管理サーバ107からの指示に従って、フィルタルールデータ208の設定内容を変更することができる。
<10.フィルタルールデータ例>
図10は、エッジノード105が記憶する、フィルタルールデータ208の例を示す図である。フィルタルールデータ208は、エッジノード105のフィルタ機能部202で参照される。フィルタルールデータ208には、例えばブロックする対象とする通信の送信元IPアドレス1001、あるいはアプリケーション1002が記載されている。この他に、ブロックする対象とする通信の送信先IPアドレスや、送信元エッジノードのIPアドレス等、他のパラメータを記載してもよい。
<11.リダイレクトルールデータ例>
図11は、エッジノード105が記憶する、リダイレクトルールデータ209の例を示す図である。リダイレクトルールデータ209は、エッジノード105のルーティング機能部203で参照される。
図11に示すようにリダイレクトルールデータ209は、クラウドサーバIPアドレス1001毎に、リダイレクト指示の有無1102が記載されている。
ルーティング機能部203は、パケットを受信するとパケットの宛先IPアドレスをチェックする。そして、リダイレクトルールデータ209の該当宛先IPアドレス1101のリダイレクト指示1102を参照する。
リダイレクト指示1102が「無」の場合、上り方向の通信において、パケットはトラヒック学習機能部204に転送され、さらに、クラウドサーバ106へ転送される。
リダイレクト指示が「有」の場合、上り方向の通信において、パケットはリダイレクトルールデータ209のエッジサーバIPアドレス1103で指定されるエッジサーバ104に宛先が変更される。その後、パケットはトラヒック学習機能部204に転送され、転送先であるエッジサーバ104の、対応するサービス1104に転送される。リダイレクト指示1102はルール作成部207によって有無が設定される。
なお、上記の実施例では、クラウドサーバ106が高負荷の場合には、エッジサーバ104でサービスを代行させた。他の例としては、負荷の少ないクラウドサーバに代行させることもできる。負荷の少ないクラウドサーバの検出方法は、負荷の大きいクラウドサーバの検出方法と同様である。この方法では、処理のためのリソースを有効に利用できるが、クラウドサーバの負荷状況に応じて、同期処理S501を行う相手の組合せを、動的に変更する必要がある。
<12.トラヒックパターン学習の例1>
図12は、エッジノード105のトラヒック学習機能部204が行う、トラヒックパターン学習の例を示す概念図である。トラヒックパターンの学習、フィルタ機能を説明する。ここで「学習」とは、過去のトラヒックの状況を時系列的なデータとして蓄積することをいう。
図12(a)は、トラヒック学習機能部204で収集された、各時刻におけるトラフィック量を示すグラフである。ここでは、Uプレーンのデータ量をモニタしているものとする。すなわち、図12(a)のグラフは、エッジノード105を通過するパケット211の量を反映している。
トラヒック学習機能部204は、各時刻におけるトラフィック量を基に、パケット211の送信元アドレス、送信先アドレス、アプリケーション等に基づいて分類を行うことができる。例えば、図12(b)は、ある特定の送信元アドレス1から送信されるトラヒック量の時間変化を示し、図12(c)は、他の特定の送信元アドレス2から送信されるトラヒック量の時間変化を示すとする。このほか、特定の受信元アドレスや、特定のアプリケーションごとのデータに分類することにしてもよい。
トラヒック学習機能部204は、このようなトラヒックパターンを、図9で説明したように、例えば平均値やマハラノビス距離のような統計量とともに、トラヒックパターンデータ210として記憶装置に記憶する。また、ルール作成部201では、トラヒックパターンデータ210を分析し、フィルタリングすべきパケットや、リダイレクトすべきパケットに適用するルールを決定する。
どのようなパケットをフィルタリングするかは、トラヒックパターンに通常と異なる兆候が表れているかを検知する。簡単な例としては、時間あたりのトラヒック量の変動幅(例えば直前の値との差分)をモニタし、閾値を超えた場合に「異常」と判断する。例えば、図12(b)の例では、変動幅超過分1201が閾値を超えた許容外変動である場合、そのパケットは異常通信であると判定し、当該パケットの送信元を、フィルタルールデータ208の送信元IPアドレス1001に登録する。あるいは、図9で説明したように平均値やマハラノビス距離を用いたり、標準偏差を計算したりして異常通信を判定してもよい。
また、図12(b)を、ある特定のクラウドサーバ1へ送信されるトラヒック量の時間変化とし、図12(c)を、他のクラウドサーバ2へ送信されるトラヒック量の時間変化を示すものとすれば、上記と同様の手法により、クラウドサーバ1への送信パケットが急激に増加していることが分かる。その場合には、当該パケットの送信先を、図11のリダイレクトルールデータ209の、クラウドサーバIPアドレス1101に登録し、パケットをエッジサーバ104にリダイレクトする。
あるいは、当該パケットがクラウドサーバ1の攻撃を意図するトラヒックであると判断し、図10のフィルタルールデータ208の、クラウドサーバ1への送信パケットを廃棄する。
以上のように、トラヒックパターンデータ210は、ルール作成部201で使用され、フィルタルールデータ208やリダイレクトルール209に反映することができる。過去のラヒックパターンデータを学習し、これを基準とすることで、実際のトラフィックの状況を反映した異常検出をすることができる。
<13.トラヒックパターン学習の例2>
図13はトラヒックパターンの他の学習例である。図9に示したデータを用いたトラヒックパターンの学習、フィルタ機能の例を説明する。この例では、トラヒック学習機能部204は、Cプレーンコネクション数とUプレーンデータ量の相関をモニタする。通常、Cプレーンコネクション数の多さとUプレーンデータ量の間には相関がある。しかし、DoS攻撃などにより大量のデータが送信される状況では,コネクション数に対してデータ量が多くなり、異常と認識される。一方、データ量は少ないがコネクション数が増えている状況は、例えばSYN Floodのような攻撃が行われていると想定される。
図13は、縦軸にCプレーンコネクション数、横軸にUプレーンデータ量を定義したグラフである。白丸1301は相関に基づき正常と判定される通信であり、黒丸1302は相関に基づき異常と判定される通信である。正常通信と異常通信の境界は、例えば点線1303で示される。
正常通信と異常通信の境界1303はオペレータが固定値で設定してもよいし、過去のトラヒックパターンデータ210から統計的に設定してもよい。例えば、過去データの分布の90%が含まれる範囲のように設定することができる。
異常通信と判定された通信に関連する、送信元、送信先、アプリケーションの少なくとも一つは、フィルタルールデータ208に登録され、廃棄対象となる。図13に示すように、過去のトラヒックパターンデータを統計的に分析することで、適切な異常検出が可能となる。
<14.トラヒックパターンとサーバ側キャパシティの関係例>
以上の図12と図13では、エッジノード105のトラヒック学習機能部204とトラヒックパターンデータ210を例に説明したが、管理サーバ107のクラウドトラヒック学習機能部302とトラヒックパターンデータ304でも同様の処理を行うことができる。この場合には、管理サーバ107は各エッジノード105のフィルタルールデータ208やリダイレクトルールデータ209を、クラウド通信部206を介して変更する。
図14は、図8のフローS801により管理サーバ107で集計された、エッジノード105−1のトラフィック量1401と、エッジノード105−2のトラヒック量トラフィック量1402のトラフィックパターンと、クラウドサーバ106のキャパシティ1403の関係を示す。
トラフィックパターンのデータに基づいて、図9で説明した平均や分散、マハラノビス距離を利用することで、合計トラフィック量がクラウドサーバ106のキャパシティを超える前に、統計情報の傾向から増加の兆候を判定し、オーバ量1404をエッジサーバ104に転送することができる。
<15.エッジノードのトラヒック学習機能部の動作例>
図15は、エッジノード105のトラヒック学習機能部204の動作フローの一例を示す図である。図2Aおよび図2Bも参照しつつ動作を説明する。
処理S1501では、トラヒック学習機能部204は、ルーティング機能部203またはフィルタ機能部202からパケットを受信する。
処理S1502では、トラヒック学習機能部204は、受信したパケットの送信元IPアドレス、宛先IPアドレス、アプリケーション名称をチェックする。
処理S1503では、トラヒック学習機能部204は、トラヒックパターンデータ210を参照し、受信したパケットの送信元IPアドレス、宛先IPアドレス、アプリケーション名称が、既にトラヒックパターンデータ210に登録されているか否かを確認する。
処理S1504では、これらが登録されていない場合に、トラヒックパターンデータ210に新たな行を追加する。
処理S1505では、登録済みのあるいは新たに登録したトラヒックパターンデータ210において、最新の時間帯のCプレーンカウンタ904およびUプレーンカウンタ905の少なくともひとつを計上する。
処理S1506では、トラヒック学習機能部204は、カウンタの計上に基づいて、統計上必要な種々のパラメータを計算し、記録する。例えば、合計値906、平均値907、分散908、マハラノビス距離909である。
処理S1507では、トラヒック学習機能部204での学習処理が終了し、パケットは方路振分機能部205に転送される。
以上はトラヒック学習機能部204の処理の一例であり、トラヒックパターンデータ210もパターンデータの一例である。トラヒック学習機能部204は、トラヒックの傾向を把握することにより、定常状態からの変化を検知するものであり、その趣旨から逸脱しなければ、他の処理や他のデータを採用してもよい。
<16.エッジノードのルール作成部の動作例1>
図16は、エッジノード105のルール作成部207における、フィルタルールデータ208の作成例を示すフロー図である。この例は、図12で説明したように、Uプレーントラヒックを周期的に監視し、過去データ例えば前回の値等との差分をモニタしながら、異常検出をするフローである。この処理は、定期的に行われてもよいし、トラヒックパターンデータ210あるいは304が更新されたタイミングで行ってもよい。図16の例では、定期的に行うものとした。
処理S1601では、ルール作成部207は、Uプレーンのデータ量の、前回処理時との差分を計算する。
処理S1602では、ルール作成部207は、計算した差分を閾値と比較する。
処理S1603では、差分の閾値との比較結果で処理を分岐する。
処理S1604では、差分が閾値以内の場合、ルール作成部207は次の更新タイミングまで待機する。
処理S1605では、差分が閾値を超える場合、ルール作成部207は異常トラヒックの原因となるフローを特定する。例えば、異常トラヒックで閾値以上の割合を占めるフローを原因と特定する。
処理S1606では、ルール作成部207はフィルタルールデータ208に、異常トラヒックの原因となるフローに関連するIPアドレスやアプリケーションを登録する。あるいは、異常トラヒックの原因となるフローはリダイレクトルールデータ209に登録し、他のサーバに転送してもよい。他のサーバでは異常トラヒックに対して、対抗措置を講じる等を行うことができる。
<17.エッジノードのルール作成部の動作例2>
図17は、エッジノード105のルール作成部207における、フィルタルールデータ208の作成例を示すフロー図である。この例は、図13で説明したように、Cプレーン(コネクション接続数)とUプレーン(転送データ量)のトラヒックの相関を周期的に監視し、異常検出をするフローである。この処理は、定期的に行われてもよいし、トラヒックパターンデータ210あるいは304が更新されたタイミングで行ってもよい。図17の例では、定期的に行うものとした。
CプレーンとUプレーンの比率の計算には例えば両者の単位時間あたりの通信量の平均値からのずれをマハラノビス距離で計測するなどが考えられる。
処理S1701では、ルール作成部207は、最新のCプレーンとUプレーン量の相関を計算する。
処理S1702では、ルール作成部207は、計算した相関を過去のトラヒックパターンの相関と比較する。あるいは、基準となるトラヒックパターンの相関(たとえば固定値)と比較する。比較の結果、ずれ量が規定値以上の場合には、CプレーンとUプレーン量の相関比率が異常と判定する。
処理S1703では、相関比率が正常か否かで処理を分岐する。
処理S1704では、比率が正常の場合、ルール作成部207は次の更新タイミングまで待機する。
処理S1705では、比率が異常の場合、ルール作成部207は異常トラヒックの原因となるフローを特定する。例えば、異常トラヒック中に占める割合の大きなフローを特定する。
処理S1706では、ルール作成部207はフィルタルールデータ208に、異常トラヒックの原因となるフローに関連するIPアドレスやアプリケーションを登録する。その後、処理S1704で待機に入る。
<18.エッジノードのルール作成部によるリダイレクトルール作成処理例(周期処理)>
図18は、エッジノードのルール作成部によるリダイレクトルール作成処理例である。<9.トラヒックパターンデータ例>で説明したように、エッジノード105のルール作成部207は、自らリダイレクトルールデータ209を生成してもよい。
ここでは、ルール作成部207は、一定周期でトラヒックパターンデータ210を参照し、ルール作成を行う周期処理とした。すなわち図18は、リダイレクトルールデータ209を周期的に設定しなおすためのフローである。既に述べたように、このほかに管理サーバ107からの指示に基づいてリダイレクトルールの設定を変更することもありうる。ただしこれは自明な処理であるため、フローに起こすことはしない。
処理S1801では、ルール作成部207は、リダイレクトルール209を参照し、クラウドサーバのIPアドレス1101を検索キー#1(送信元IPアドレス)としてトラヒックパターンデータ210を検索する。
処理S1802では、トラヒックパターンデータ210の宛先IPアドレス902毎に、Cプレーン、Uプレーンの合計値を計算する。
処理S1803では、計算した合計値が閾値を超えている宛先アドレスがあるかどうかを判定する。なお、判定においては、固定された閾値との比較の他、過去のCプレーン、Uプレーンの合計値からのずれを判定してもよい。例えば、過去一定期間の合計値の平均値を閾値とする。この方式は、閾値を動的に設定できるので、システムの通常の状態を反映しやすい特長がある。
処理S1804では、合計値が閾値を超えている場合、リダイレクトルール209の該当宛先IPアドレスのリダイレクト指示が「無」であるかどうかを判定する。「無」ではない場合には、一定時間経過待ち処理S1808に進む。
処理S1805では、リダイレクト指示が「無」の場合、リダイレクトルールデータ209において、該当する宛先アドレスの行のリダイレクト指示を「有」に設定する。
処理S1806では、合計値が閾値を超えていない場合、リダイレクトルールの該当宛先IPアドレスのリダイレクト指示が「有」であるかどうかを判定する。「有」ではない場合には、一定時間経過待ち処理S1808に進む。
処理S1807では、リダイレクトルールデータにおいて該当する宛先アドレスの行のリダイレクト指示を「無」に設定する。
処理S1808では、次の処理時間になるまで待機する。
なお合計値の閾値との比較において、超過をみるための閾値と超過からの回復を見るための閾値とは同じでないほうがより好ましい。閾値が同じ場合、合計値が閾値付近で変動する場合リダイレクト指示が「有」と「無」の間を過度に変遷するためである。回復を見るための閾値は、超過を見る閾値よりも低く設定することが望ましい。
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることが可能である。また、各実施例の構成の一部について、他の実施例の構成の追加・削除・置換をすることが可能である。
エッジサーバ104
エッジノード:105
クラウドサーバ:106
ユーザ:108
M2MGW:109

Claims (2)

  1. 複数のユーザ端末と、前記複数のユーザ端末と接続されるエッジノードと、前記エッジノードに接続されるネットワークと、前記ネットワークに接続される複数のサービスサーバとを備える通信システムであって、
    前記エッジノードは、
    入力されるパケットの特性を時系列的に蓄積するトラヒックパターンデータと、
    前記パケットを処理するためのルールを格納するルールデータと、
    を格納し、
    前記エッジノードは、
    前記ルールデータに基づいて前記パケットの処理を行う機能部と、
    前記機能部による処理の後に、前記入力されるパケットを、所定の宛先に向けて出力する方路振分機能部と、
    を備え、
    前記通信システムは、
    時間的な分解能を持つ前記トラヒックパターンデータの内容に基づいて、前記ルールデータを更新するルール作成部を備え、
    前記エッジノードは、
    前記トラヒックパターンデータの内容に基づいて、前記ルールデータであるフィルタルールデータを更新する前記ルール作成部と、
    前記フィルタルールデータに基づいて、前記入力されるパケットをフィルタする、前記機能部であるフィルタ機能部を備え、
    前記ルール作成部は、前記トラヒックパターンデータの内容に基づいて、異常なトラヒックを検知し、前記異常なトラヒックに関連する、送信元IPアドレス、宛先IPアドレス、および、アプリケーション名称の少なくとも一つを、前記フィルタルールデータに登録し、
    前記フィルタ機能部は、前記フィルタルールデータに登録された、前記送信元IPアドレス、前記宛先IPアドレス、および、前記アプリケーション名称の少なくとも一つを有するパケットを廃棄し、
    前記ルール作成部は、前記トラヒックパターンデータである、Cプレーン数とUプレーン量の相関が、あらかじめ定めた範囲から逸脱した場合、当該トラヒックを異常として検知する、
    通信システム。
  2. 複数のユーザ端末と、前記複数のユーザ端末と接続されるエッジノードと、前記エッジノードに接続されるネットワークと、前記ネットワークに接続される複数のサービスサーバとを備える通信システムであって、
    前記エッジノードは、
    入力されるパケットの特性を時系列的に蓄積するトラヒックパターンデータと、
    前記パケットを処理するためのルールを格納するルールデータと、
    を格納し、
    前記エッジノードは、
    前記ルールデータに基づいて前記パケットの処理を行う機能部と、
    前記機能部による処理の後に、前記入力されるパケットを、所定の宛先に向けて出力する方路振分機能部と、
    を備え、
    前記通信システムは、
    時間的な分解能を持つ前記トラヒックパターンデータの内容に基づいて、前記ルールデータを更新するルール作成部を備え、
    前記エッジノードは、
    前記トラヒックパターンデータの内容に基づいて、前記ルールデータであるフィルタルールデータを更新する前記ルール作成部と、
    前記フィルタルールデータに基づいて、前記入力されるパケットをフィルタする、前記機能部であるフィルタ機能部を備え、
    前記ルール作成部は、前記トラヒックパターンデータの内容に基づいて、異常なトラヒックを検知し、前記異常なトラヒックに関連する、送信元IPアドレス、宛先IPアドレス、および、アプリケーション名称の少なくとも一つを、前記フィルタルールデータに登録し、
    前記フィルタ機能部は、前記フィルタルールデータに登録された、前記送信元IPアドレス、前記宛先IPアドレス、および、前記アプリケーション名称の少なくとも一つを有するパケットを廃棄し、
    前記ルール作成部は、前記トラヒックパターンデータである、Cプレーン数とUプレーン量の相関が、過去の前記トラヒックパターンデータから定めた範囲から逸脱した場合、当該トラヒックを異常として検知する、
    通信システム。
JP2016032238A 2016-02-23 2016-02-23 通信システム Active JP6692178B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016032238A JP6692178B2 (ja) 2016-02-23 2016-02-23 通信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016032238A JP6692178B2 (ja) 2016-02-23 2016-02-23 通信システム

Publications (2)

Publication Number Publication Date
JP2017152852A JP2017152852A (ja) 2017-08-31
JP6692178B2 true JP6692178B2 (ja) 2020-05-13

Family

ID=59739108

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016032238A Active JP6692178B2 (ja) 2016-02-23 2016-02-23 通信システム

Country Status (1)

Country Link
JP (1) JP6692178B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6901687B2 (ja) * 2018-02-09 2021-07-14 日本電信電話株式会社 パケット処理システム及び方法
JP7176295B2 (ja) * 2018-08-22 2022-11-22 日本電信電話株式会社 判定装置、ゲートウェイ、判定方法及び判定プログラム
WO2020053953A1 (ja) 2018-09-11 2020-03-19 株式会社日立国際電気 照合システム及び照合サーバ
KR102189829B1 (ko) 2018-09-19 2020-12-11 주식회사 맥데이타 네트워크 보안 모니터링 방법, 네트워크 보안 모니터링 장치 및 시스템
KR101990022B1 (ko) 2018-11-28 2019-06-17 한국인터넷진흥원 악성코드에 감염된 디바이스를 포함하는 단말그룹에 대한 가상의 악성 트래픽 템플릿 생성 방법 및 그 장치
US11956256B2 (en) 2019-02-05 2024-04-09 Nec Corporation Priority determination apparatus, priority determination method, and computer readable medium
JP7487769B2 (ja) * 2020-03-27 2024-05-21 日本電気株式会社 異常アクセス予測システム、異常アクセス予測方法および異常アクセス予測プログラム
CN114553964A (zh) * 2020-11-20 2022-05-27 中移动信息技术有限公司 一种联播系统的管控方法、装置、设备及联播系统
CN114945016B (zh) * 2021-02-10 2024-06-25 维沃移动通信有限公司 信息处理方法、装置及设备
JP7494240B2 (ja) 2022-03-30 2024-06-03 尚承科技股▲フン▼有限公司 Aiによるネットワーク攻撃防御システムおよびその方法
CN115460427B (zh) * 2022-08-26 2024-03-12 上海哔哩哔哩科技有限公司 直播调度方法、装置、计算设备和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004318552A (ja) * 2003-04-17 2004-11-11 Kddi Corp Idsログ分析支援装置、idsログ分析支援方法及びidsログ分析支援プログラム
JP2006254134A (ja) * 2005-03-11 2006-09-21 Alaxala Networks Corp 通信統計収集装置
WO2011118575A1 (ja) * 2010-03-24 2011-09-29 日本電気株式会社 通信システム、制御装置およびトラヒック監視方法

Also Published As

Publication number Publication date
JP2017152852A (ja) 2017-08-31

Similar Documents

Publication Publication Date Title
JP6692178B2 (ja) 通信システム
Li et al. LossRadar: Fast detection of lost packets in data center networks
JP6726331B2 (ja) アクセス要求を規制するシステムおよび方法
KR101844136B1 (ko) 분산 소프트웨어 정의 네트워킹 환경에서 네트워크 이상을 감지하는 방법, 장치 및 컴퓨터 프로그램
US11381974B2 (en) Method and attack detection function for detection of a distributed attack in a wireless network
CN103782546B (zh) 拆分架构网络中的全网络流量监测
CN105493450B (zh) 动态检测网络中的业务异常的方法和系统
CN108063765B (zh) 适于解决网络安全的sdn系统
EP3154224B1 (en) Systems and methods for maintaining network service levels
CN106161333A (zh) 基于sdn的ddos攻击防护方法、装置及系统
US20180109556A1 (en) SOFTWARE DEFINED NETWORK CAPABLE OF DETECTING DDoS ATTACKS AND SWITCH INCLUDED IN THE SAME
CN103262472B (zh) 计算机系统、控制器、控制器管理器和通信路由分析方法
CN108028828B (zh) 一种分布式拒绝服务DDoS攻击检测方法及相关设备
CN103561011A (zh) 一种SDN控制器盲DDoS攻击防护方法及系统
EP3576356A1 (en) Devices for analyzing and mitigating dropped packets
JP2016116029A (ja) ネットワーク監視方法、中継装置、および、ネットワーク監視システム
JP5593944B2 (ja) 判定装置、判定方法及びコンピュータプログラム
Jung et al. Anomaly Detection in Smart Grids based on Software Defined Networks.
Wang et al. A bandwidth-efficient int system for tracking the rules matched by the packets of a flow
US20110141899A1 (en) Network access apparatus and method for monitoring and controlling traffic using operation, administration, and maintenance (oam) packet in internet protocol (ip) network
Beitollahi et al. A cooperative mechanism to defense against distributed denial of service attacks
CN110247893A (zh) 一种数据传输方法和sdn控制器
JP2004328307A (ja) 攻撃防御システム、攻撃防御制御サーバおよび攻撃防御方法
US20160254979A1 (en) Communication system, common service control apparatus, data transmission method, and non-transitory computer readable medium
JP5221594B2 (ja) ネットワーク監視装置、ネットワーク監視方法及びネットワーク監視プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180626

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190313

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190514

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190716

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200107

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200306

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200414

R150 Certificate of patent or registration of utility model

Ref document number: 6692178

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150