JP6096084B2 - トラヒック走査装置及び方法 - Google Patents

トラヒック走査装置及び方法 Download PDF

Info

Publication number
JP6096084B2
JP6096084B2 JP2013175567A JP2013175567A JP6096084B2 JP 6096084 B2 JP6096084 B2 JP 6096084B2 JP 2013175567 A JP2013175567 A JP 2013175567A JP 2013175567 A JP2013175567 A JP 2013175567A JP 6096084 B2 JP6096084 B2 JP 6096084B2
Authority
JP
Japan
Prior art keywords
hash
data
unit
packet
pattern
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
JP2013175567A
Other languages
English (en)
Other versions
JP2015046683A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013175567A priority Critical patent/JP6096084B2/ja
Publication of JP2015046683A publication Critical patent/JP2015046683A/ja
Application granted granted Critical
Publication of JP6096084B2 publication Critical patent/JP6096084B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、通信ネットワーク上で転送されるパケットに含まれるデータを識別するトラヒック走査装置及び方法に関する。
2つのデータがビット列、バイト列、文字列などとして一致するかどうかを照合するデータ一致照合問題は、多くのアプリケーションにおいて頻出する重要な問題であり、例えば、テキスト検索、データベース工学、通信工学などの分野において重要な技術課題の要素技術として利用されている。とりわけ、通信ネットワークにおいてパケットを比較し、一致するものを検出し弁別する技術は、セキュリティの確保や異常トラヒックの検出によるインフラの安定化などに利用される重要な要素技術となっている。
データを照合して一致するものを判別するため用いられる技術として、非特許文献1に示されるブルームフィルタ(Bloom filter)がよく知られている。ブルームフィルタは、データサイエンス分野で考案された古典的なデータ構造の一種であり、ある程度の偽陽性(false-positive)検出を許容することにより空間計算効率の向上を図ったものである。ブルームフィルタは、効率のよいデータ探索・一致判定を行えるため、通信分野においても一般的に利用されている。
通信分野におけるブルームフィルタの利用例として、非特許文献2に示すようなものが挙げられる。非特許文献2に示すものでは、ブルームフィルタの高速性を維持しながら様々のデータ長のパケットに対応させるために、図1に示すように、複数のブルームフィルタを並列に配置している。この構成では、パケットのデータ長の最小値Lminが3バイト、最大値Lmaxがwバイトであるとして、長さがLmaxバイトであってパケットデータが1クロックにつき1バイトずつシフトするウィンドウバッファ91と、相互に並列に設けられたLmax−Lmin+1個のブルームフィルタ92とを備えている。これらのブルームフィルタ92は、それぞれ、ウィンドウキャッシュ91の先頭の3バイトが入力するデータ長がLmin(=3バイト)用のブルームフィルタ、ウィンドウキャッシュ91の先頭の4バイトが入力するデータ長が4バイト用のブルームフィルタ、…、ウィンドウキャッシュ91内の全データが入力するデータ長がLmax(=wバイト)用のブルームフィルタである。図1に示した構成では、データ長ごとのブルームフィルタを設けることによって、種々のデータ長のパケットデータをハードウェアにより高速に処理することができる。
特表2005−522781号公報
Burton H. Bloom, "Space/Time Trade-offs in Hash Coding with Allowable Errors", Communications of the ACM, Vol. 13, No. 7, pp. 422-426 (July, 1970). S. Dharmapurikar, et al., "Deep Packet Inspection Using Parallel Bloom Filters", IEEE Micro, Vol. 24, Issue 1, pp. 52-61 (January/February 2004).
通信ネットワーク上に流れるトラヒックには様々なデータ長のパケットが含まれており、トラヒックの検査などを目的としてパケットに含まれるデータが所定のデータ集合に含まれるか否かを判別するために、非特許文献1に示されるもののように、それぞれ対象とするデータ長が異なるような複数のブルームフィルタを配置する構成がある。この構成では高速に処理を行うことができる反面、検査するパケットのデータ長ごとにハードウェアを用意することとなるから、回路規模及び配線複雑度が増大するという課題がある。またこの構成は、予め用意されたレジスタ長以外の検査長には対応できず、柔軟性が十分に大きいとは言い難い。
一方、ソフトウェア処理によってパケットのデータが所定のデータ集合に含まれるか否かを判定することも可能であるが、ハードウェアによる処理に比べてソフトウェア処理は時間がかかり、広帯域化する通信トラヒックにおけるパケットデータのデータの比較及び一致の判定を行うことに対しては、ソフトウェアによる処理では十分な処理性能を得ることができない。
本発明の目的は、通信ネットワーク上で転送されるデータを識別するためのトラヒック走査方法であって、転送されるパケットに含まれるデータが所定のデータ集合に属するか否かを高速かつ柔軟に弁別することができるトラヒック走査装置及び方法を提供することにある。
本発明のトラヒック走査装置は、通信ネットワーク上で転送されるパケットに含まれるデータが所定のデータ集合に属するか否かを判別するトラヒック走査装置であって、キーが与えられてキーの写像となるハッシュ値を生成するハッシュ演算を実行するハッシュ演算手段と、所定のエントリパターンをキーとしてハッシュ演算部によりハッシュ演算を実行して得た結果を陽性の照合データとして保持する記憶手段と、トラヒックパターンから、その任意の位置からの任意の検査長のデータを抽出してエントリとする抽出手段と、抽出手段で抽出されたエントリをキーとしてハッシュ演算手段に与えてハッシュ演算を実行させて結果を取得し、その結果と記憶手段に保持されている照合データとを比較照合する検査手段と、を有する。
本発明のトラヒック走査方法は、通信ネットワーク上で転送されるパケットに含まれるデータが所定のデータ集合に属するか否かを判別するトラヒック走査方法であって、所定のエントリパターンをキーとしてハッシュ演算を実行し、そのハッシュ演算の結果を陽性の照合データとして保持する段階と、トラヒックパターンから、その任意の位置からの任意の検査長のデータを抽出してエントリとする抽出段階と、エントリをキーとしてハッシュ演算を実行してその結果を比較データとする段階と、比較データと照合データとを比較照合する段階と、を有する。
本発明によれば、トラヒックパターンから、その任意の位置からの任意の検査長のデータを抽出してエントリとしてハッシュ値を演算し、このハッシュ値と照合用のハッシュ値とを比較照合するようにしたので、複数のブルームフィルタを用いることなく任意の検査長に対応でき、パケットに含まれるデータが所定のデータ集合に属するか否かを高速かつ柔軟に弁別することができるようになる、という効果が得られる。
複数のブルームフィルタを用いてパケットの照合を行う回路の一例を示すブロック図である。 本発明の実施の一形態のトラヒック走査装置の構成を示すブロック図である。 RISCプロセッサの構成の一例を示すブロック図である。 トラヒック走査の処理を説明する図である。
次に、本発明の好ましい実施の形態について、図面を参照して説明する。
図2に示す本発明の実施の一形態のトラヒック走査装置は、通信ネットワーク上で転送されるパケットに含まれるデータが所定のデータ集合に属するか否かを弁別するためのものである。このトラヒック走査装置は、トラヒックパターン及び所定の参照用のエントリパターンの値をキーとして、その写像となるハッシュ値を生成するハッシュ演算部21と、ハッシュ値生成に利用したエントリパターンを記録し、その出力及びビット操作を実現するエントリ登録部22と、比較対象として利用するために、ハッシュ演算部21において得られた任意のハッシュ値を陽性(positive)の照合データとして記憶する照合データ記憶部23と、1パケットずつ到着するトラヒックパターンから任意の検査長のエントリを取り出すためのオフセット切り出し部24及び走査ウィンドウ設定部25と、ハッシュ値によって表されているパターンを照合するパターン照合部26と、パターン照合部26での照合を判別する照合結果弁別部27と、これらの各機能部21〜27相互の間やそれらと外部のメモリとの間でトラヒックや制御命令を含むデータの転送を行う信号入出力部28と、各機能部21〜28の全体を制御するために一般的なCPU(Central Processing Unit)命令及び拡張された命令セットを備え、設定と操作をユーザからの任意の指示に応じて実行させる信号制御部29と、を備えている。特にハッシュ演算部21はハッシュ演算手段に対応し、照合データ記憶部23は記憶手段に対応し、オフセット切り出し部24及び走査ウィンドウ設定部25は抽出手段に対応し、パターン照合部26は検査手段に対応する。各機能部、すなわちハッシュ演算部21、エントリ登録部22、照合データ記憶部23、オフセット切り出し部24、走査ウィンドウ設定部25、パターン照合部26、照合結果弁別部27、信号入出力部28及び信号制御部29は、バス形態の信号線20に接続することによって、相互にデータや信号等をやり取りできるようになっている。
上記の構成において、パターン照合部26は、具体的には、オフセット切り出し部24及び走査ウィンドウ設定部25によってトラヒックパターンから取り出されたエントリをハッシュ演算部21に与えてそのハッシュ値を計算させ、このようにして得られた各パケット固有のハッシュ値(すなわちトラヒックパターンのハッシュ値)と照合データ記憶部23に記憶されている上述した陽性の照合データとを比較し、これによって、トラヒックパターンから取り出されたエントリが目的のパターンに合致するか否かを検査する。照合結果弁別部27は、パターン照合部26での検査結果に応じ、被疑パターンを検出した場合を陽性、反対に、被疑パターンが検出されなかった場合を陰性と判別する。例えば、廃棄すべきパケットが含んでいるであろうパターンがエントリパターンとされ、そのエントリパターンのハッシュ値が陽性値として照合データ記憶部23に記憶されているときに、パターン照合部26が、トラヒックパターンから得られたハッシュ値が照合データ記憶部23に記憶されているものと合致することを検出したときは、被疑パターンが検出されたものとして、照合結果弁別部27は、陽性と判別する。
次に、オフセット切り出し部24及び走査ウィンドウ設定部25による、トラヒックパターンからのエントリの取り出しについて説明する。
本実施形態のトラヒック走査装置では、パケットに含まれるデータのうちの任意のデータ長(これを検査長と呼ぶ)の部分をエントリとして、ユーザ設定により、あるいはプログラムによって予め指定しておく。このエントリは、パケットの先頭にあるとは限られないから、1パケットずつ順次到着するトラヒックパターンにおいてエントリに対応するフィールドの値の始まりがオフセット値として指定されると、オフセット切り出し部24は、各パケットごとにそのパケットの先頭からオフセット値で示される長さの部分を取り除いて残ったフィールドの部分を切り出して走査ウィンドウ設定部25に送る。走査ウィンドウ設定部25は、前述した検査長のエントリを生成するためのマスク機能を有しており、オフセット切り出し部24によって切り出されたフィールドに対してマスク操作を実行する。例えば、検査長に相当するビット数だけ“1”のビットが連続しそれに引き続いて“0”のビットが連続するマスクを使用し、オフセット切り出し部24によって切り出されたフィールドに対してビットごとの論理積(AND)演算を実行することによって、走査ウィンドウ設定部25は、検査長の長さを有するエントリを生成する。このエントリは、上述したように、パターン照合部26によってハッシュ演算部21に送られてハッシュ演算の対象となる。
本実施形態のトラヒック走査装置は、各機能部21〜29がそれぞれ別個のハードウェア要素であるようにして構成することもできるし、あるいは、各機能部21〜29の動作に相当する処理をコンピュータに実行させるプログラムにより、ソフトウェアによって実現することもできる。例えば、コンピュータとして一般的なRISC(Reduced Instruction Set Compuer:縮小命令セットコンピュータ)プロセッサを用いることができる。
ところで、本実施形態のトラヒック走査装置で行う処理には、ハッシュ演算やハッシュ値の比較、オフセット値に基づくフィールドの切り出し、任意のビット長でのマスク動作などといった、トラヒック走査という特定用途に特有の演算が含まれるが、これらの演算はコンピュータにおける汎用のハードウェア資源では高速で実行することが難しい。そこで、特許文献1に開示されているような特定用途向けプロセッサ設計手法を一般的なRISCプロセッサに適用して、ハッシュ演算やハッシュ値の比較、オフセット値に基づくフィールドの切り出し、任意のビット長でのマスク動作などの演算を特定用途向けの専用命令として実行するための演算ユニットないしレジスタをプロセッサに追加することができる。特定用途向けの専用命令を実行する演算ユニットないしレジスタを追加することによって、ソフトウェア制御でありながらトラヒック走査のための演算処理を高速で実行するトラヒック走査装置を実現できることは、当業者が容易に理解できることである。
図3は、本実施形態において使用できる一般的なRISCプロセッサの構成を示している。このRISCプロセッサ30は、複数のレジスタ31と、複数のALU(算術論理演算ユニット:Arithmetic Logical Unit)からなるALUセット32と、ALUセット32にデータを送出するレジスタを選択するセレクタ33と、メモリ(RAM)34と、外部インタフェース(I/F)35と、RAM34及び外部インタフェース35に対してロード及びストアの処理を実行するロード/ストア部36と、ALUセット32及びロード/ストア部36からのデータが供給されるレジスタを選択するセレクタ37と、を備えている。一般的にプロセッサにおいては、メモリ及びレジスタファイル間の頻繁なデータ移動を伴うため、これが高性能な処理を要求した際のボトルネックとなる。本実施形態において用いられるRISCプロセッサは、ハードウェアアシストを含む特定処理への拡張および最適化を行ったALUと一般的なALUとを組み合わせたALUセット32として実行ステージを構成し、さらにそれらを効率的に稼働させる論理を含む処理命令を備えるようにすることにより、トラヒック操作の処理に要求される演算における所要サイクル数を大幅に削減することができる。
本実施形態で用いられるRISCプロセッサは、上述したような特定用途向け演算の機能を制御する命令セットを備えるが、命令セットやデータ幅のビット幅が特定の値に限定されるものではない。設計技術によっては命令セットなどについて複数の実装解がありうる。
次に、本実施形態のトラヒック走査装置の動作について説明する。
通信トラヒックの走査を行って目的とするトラヒックパターンを検出するために、あらかじめ、検出対象となるパターンをエントリパターンとして、エントリ登録部22によって照合データ記憶部23に登録しておく。本実施形態においては、検出対象となるパターンを変更することを含意しているため、エントリ登録部22及び照合データ記憶部23は、エントリパターンの削除に対応しているものとする。
ハッシュ演算部21は、ハッシュ演算のために特化した構成をとるため、高速な演算を可能とし、汎用ALUによる演算のアシストを行う。ハッシュ演算部21は、エントリ登録部22から入力されたエントリの値をキーとして、単一あるいは複数種類のハッシュ演算命令の組み合わせを任意の回数演算することで、キーとした値の写像となるハッシュ値を生成し、エントリ登録部22に出力する。図4に示した例では、2進表記で"101001010101111"がエントリパターンとしてエントリ登録部22にあらかじめ与えられており、これがキーとしてハッシュ演算部21に送られ、ハッシュ演算部21は、このエントリパターンのハッシュ値を計算してエントリ登録部22に出力する。当然のことながら複数のエントリパターンを用意してそれらの各々のハッシュ値を計算し、照合データ記憶部23に記憶することができる。
一方、信号入出力部28からパターン照合部26に入力されたトラヒックパターンに対しては、プログラムあるいはユーザによって指定されたオフセット値に応じてオフセット命令によって切り出し位置が指定され、オフセット切り出し部24が上述したように切り出し処理を行う。続いて、切り出されたトラヒックパターンに対し、マスク命令に応じて、走査ウィンドウ設定部25によってマスク処理を実行する。マスク処理に用いられるマスクは、上述したように、例えば、プログラムあるいはユーザによって指定される検査長に一致するビット数の“1”が連続しそれに引き続いて“0”のビットが連続したものである。これらの処理の結果、最初のトラヒックパターンから、オフセット命令で指定された切り出し位置から開始して検査長に一致する長さのエントリが取り出されることになる。図4に示した例では、オフセット値として2進表現で"1000"、すなわち8ビットが指定されており、マスクとして、検査長20ビットに対応する"11111111 11111111 11110000 00000000"が用いられている。その結果、"00000000 10101010 11101110 01010101 00000000"で表されるトラヒックパターンが入力したときに、最初の8ビットがオフセットとして除去され、引き続く20ビットの部分、すなわち"10101010 11101110 0101"がマスクによる有効値、すなわちエントリパターンに対応するフィールドとして取り出されることになる。ハッシュ演算部21は、このようにして取り出されたエントリパターンによる値をキーとして、単一あるいは複数種類のハッシュ演算命令の組み合わせを任意の回数演算し、写像となるハッシュ値を生成してパターン照合部26に出力する。
本実施形態では、トラヒックパターン中の任意の検査長のエントリに関して所定のデータ集合に含まれるか否かを判定できるようにするため、トラヒックパターンに対するオフセットの指定とマスク動作とを使用している。その結果、トラヒックパターン中の任意の長さ、位置にあるエントリに対するハッシュ値を得ることができ、従来のハードウェアのみで実現された回路に比べ、検査長に対する高い柔軟性が得られる。
本実施形態のトラヒック走査は、エントリから算出されるハッシュ値どうしの照合に基づくものであり、基本的にはブルームフィルタと同様の処理原理に依存している。しかしながら上述したように、トラヒックパターン中の任意の長さ、位置にあるエントリに対するハッシュ値を得ることができるようにしているから、本実施形態のトラヒック走査は、複数のブルームフィルタを設けることなく、単一のハッシュ演算部と単一のパターン照合部とを用いることにより、任意の検査長に対応することができるという利点を有する。これにより本実施形態によれば、複数のブルームフィルタを設ける場合と同様の処理の高速さを維持しつつ、ハードウェア規模を大幅に縮小することができる。
エントリ登録部22に入力されたハッシュ値は、エントリパターンがハッシュ値に写像された縮約表現とみなすことができ、通信トラヒックパターンの照合時に陽性(positive)を表すためのデータ(陽性値)となる。エントリ登録部22はこの陽性値をビット操作により照合データ記憶部23に登録する。
パターン照合部26は、この陽性値と1パケットずつトラヒックからから算出されるハッシュ値とを比較照合する。この比較照合の結果の値は照合結果弁別部27において判断され、その結果陽性と判断された場合には、被疑パターンの検出が完了となり、信号制御部29からの命令によって、トラヒックの分離や遮断、廃棄等の制御を行うことができるようになる。
本実施形態では、ブルームフィルタと同様の処理原理に基づいているため、偽陰性の発生の可能性はないが、偽陽性の発生の可能性がある。詳細は割愛するが、ブルームフィルタを用いるデータ照合においては、エントリ数とハッシュテーブルのサイズとが決定しているときに偽陽性を最小化できるハッシュの演算数が定式化されて広く知られている。本実施形態でも、ハッシュテーブルのサイズとエントリ数との比を適切に保つことで、実用上十分小さな偽陽性の出現確率とすることができる。ハッシュテーブルのサイズは、用途等に応じて任意に定めることができる。また、本実施形態では、エントリを登録し削除することが可能な構成としているので、ハッシュテーブルのサイズを任意に定めたとしても、ハッシュテーブルのサイズに合わせてエントリ数を変化させることにより、偽陽性の発生確率を許容水準に保つことができる。なお偽陰性の発生の可能性は原理的に存在しないことにより、照合結果弁別部27において陰性を判断された場合には、信号制御部29は、陰性に合致するパケットに対する通過等の制御を実施する。
ブルームフィルタにおけるハッシュ値の演算手順に関して数多くのアルゴリズムが提案されているが、本実施形態でのハッシュ演算部21において用いられるアルゴリズムとしてもこれらの既に提案されているアルゴリズムを用いることもできるし、さらに、これら以外のアルゴルズムを採用してハッシュ値の分散特性の改善を図ることもできる。
結局、本実施形態のトラヒック走査装置では、要約すると、検出すべき所定のエントリパターンをキーとしてハッシュ演算部21においてハッシュ値を生成し、このハッシュ値を照合データとして照合データ記憶部23に保存する。また、トラヒックに含まれる所望の検査長のデータをエントリとして利用するためのマスクを生成・記憶しておく。トラヒックパターンから、オフセット切り出し部24によって、オフセット値で指定される所望の位置からのデータを切り出し、走査ウィンドウ設定部25によって、切り出されたデータに対してマスクを適用して検査長の長さを有するエントリとして、ハッシュ演算部21によりこのエントリハッシュ値を生成する。パターン照合部26は、このようにして得られた各パケットのハッシュ値を記憶されている照合データと比較し、照合結果弁別部27が、被疑パターンが含まれるか否かを判定する。
図2に示した本実施形態のトラヒック走査装置において、各機能部21〜29(すなわちハッシュ演算部21、エントリ登録部22、照合データ記憶部23、オフセット切り出し部24、走査ウィンドウ設定部25、パターン照合部26、照合結果弁別部27、信号入出力部28及び信号制御部29)あるいは各手段は、いずれも、回路、装置、機器等であってもよく、また、ソフトウェア処理によって実現されるものであってもよい。さらにはこれらの機能部あるいは手段は、ファームウエアによって実現されても、あるいは、再構成型デバイス・素子・基盤・配線などのハードウェアで実現されていても構わない。ソフトウェアあるいはファームウェアによってトラヒック走査装置を実現する場合、ソフトウェアあるいはファームウェアはプログラムとして記憶媒体に記憶され、CPUによって読み出されて実行される。したがってこのプログラムは、上述した機能部あるいは手段としてコンピュータを機能させるものに他ならず、本発明の範疇に含まれるものである。
20 信号線
21 ハッシュ演算部
22 エントリ登録部
23 照合データ記憶部
24 オフセット切り出し部
25 走査ウィンドウ設定部
26 パターン照合部
27 照合結果弁別部
28 信号入出力部
29 信号制御部
30 RISCプロセッサ
31 レジスタ
32 ALUセット
33,37 セレクタ
34 メモリ
35 外部インタフェース
36 ロード/ストア部

Claims (6)

  1. 通信ネットワーク上で転送されるパケットに含まれるデータが所定のパターンに合致するか否かを判別するトラヒック走査装置であって、
    キーが与えられて前記キーの写像となるハッシュ値を生成するハッシュ演算を実行するハッシュ演算手段と、
    前記所定のパターンを前記キーとして前記ハッシュ演算手段により前記ハッシュ演算を実行して得た結果を陽性の照合データとしてハッシュテーブルに保持させるとともに、前記ハッシュテーブルのサイズと前記ハッシュテーブルのエントリ数との比が所定比となるように前記エントリ数を変化させるエントリ登録手段と、
    前記パケットから、その指定された位置から指定された検査長のデータを抽出する抽出手段と、
    前記抽出手段で抽出されたデータを前記キーとして前記ハッシュ演算手段に与えて前記ハッシュ演算を実行させて結果を取得し、該結果前記ハッシュテーブルに保持されている前記照合データと合致するか否かを照合するパターン照合手段と、
    前記パターン照合手段が合致することを検出したときに前記パケットを陽性と判別する照合結果弁別手段と、
    を有する、トラヒック走査装置。
  2. 前記抽出手段は、
    オフセット値が指定されて前記パケットの先頭から前記オフセット値で表される位置からフィールドの切り出しを行うオフセット切り出し部と、
    前記検査長に相当するデータを取り出すためのマスクが指定されて、前記オフセット切り出しで切り出された前記フィールドに対して前記マスクによるマスク処理を実行する走査ウィンドウ設定部と、
    を有する、請求項1に記載のトラヒック走査装置。
  3. 前記ハッシュ演算手段、前記抽出手段及び前記パターン照合手段の少なくとも1つの機能を特定用途向け専用命令としてハードウェアにより実装するプロセッサを備える請求項1または2に記載のトラヒック走査装置。
  4. 通信ネットワーク上で転送されるパケットに含まれるデータが所定のパターンに合致するか否かを判別するトラヒック走査方法であって、
    前記所定のパターンをキーとしてハッシュ演算を実行し、該ハッシュ演算の結果を陽性の照合データとしてハッシュテーブルに保持させるとともに、前記ハッシュテーブルのサイズと前記ハッシュテーブルのエントリ数との比が所定比となるように前記エントリ数を変化させるエントリ登録段階と、
    前記パケットから、その指定された位置から指定された検査長のデータを抽出する抽出段階と、
    前記抽出段階で抽出されたデータをキーとして前記ハッシュ演算を実行し、該ハッシュ演算の結果が前記ハッシュテーブルに保持されている前記照合データと合致するか否かを照合するパターン照合段階と、
    前記パターン照合段階で合致することを検出したときに前記パケットを陽性と判別する照合結果弁別段階と、
    を有する、トラヒック走査方法。
  5. 前記抽出段階は、
    オフセット値が指定されて前記パケットの先頭から前記オフセット値で表される位置からフィールドの切り出しを行う段階と、
    前記検査長に相当するデータを取り出すためのマスクが指定されて、前記切り出されたフィールドに対して前記マスクによるマスク処理を実行する段階と、
    を有する、請求項4に記載のトラヒック走査方法。
  6. コンピュータに請求項またはに記載のトラヒック走査方法での各段階の処理を実行させるプログラム。
JP2013175567A 2013-08-27 2013-08-27 トラヒック走査装置及び方法 Active JP6096084B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013175567A JP6096084B2 (ja) 2013-08-27 2013-08-27 トラヒック走査装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013175567A JP6096084B2 (ja) 2013-08-27 2013-08-27 トラヒック走査装置及び方法

Publications (2)

Publication Number Publication Date
JP2015046683A JP2015046683A (ja) 2015-03-12
JP6096084B2 true JP6096084B2 (ja) 2017-03-15

Family

ID=52671892

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013175567A Active JP6096084B2 (ja) 2013-08-27 2013-08-27 トラヒック走査装置及び方法

Country Status (1)

Country Link
JP (1) JP6096084B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007061319A1 (en) 2005-11-25 2007-05-31 Skomsvold Aage Joergen A device for production of hydrogen by electrolysis

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023112175A1 (ja) * 2021-12-14 2023-06-22 日本電信電話株式会社 トラフィック監視装置、トラフィック監視方法、及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3750803B2 (ja) * 2002-03-29 2006-03-01 横河電機株式会社 パケットログ記録装置
JP4098127B2 (ja) * 2003-03-14 2008-06-11 株式会社エヌ・ティ・ティ・データ パケット追跡方法およびパケット追跡プログラム
JP2005223673A (ja) * 2004-02-06 2005-08-18 Matsushita Electric Ind Co Ltd 受信パケット処理方法および装置
JP4408052B2 (ja) * 2004-04-07 2010-02-03 日本電信電話株式会社 パケットクラシファイア装置
US20120147892A1 (en) * 2010-12-14 2012-06-14 International Business Machines Corporation Analysis of network packets using a generated hash code

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007061319A1 (en) 2005-11-25 2007-05-31 Skomsvold Aage Joergen A device for production of hydrogen by electrolysis

Also Published As

Publication number Publication date
JP2015046683A (ja) 2015-03-12

Similar Documents

Publication Publication Date Title
US9990583B2 (en) Match engine for detection of multi-pattern rules
JP6348656B2 (ja) マルウェア感染端末の検出装置、マルウェア感染端末の検出システム、マルウェア感染端末の検出方法およびマルウェア感染端末の検出プログラム
US9645828B2 (en) Method of searching character string, character string searching device, and recording medium
JP4699438B2 (ja) 侵入コード探知装置およびその方法
JP5378452B2 (ja) パターンマッチング方法及びシステム
US20180083770A1 (en) Detecting encoding attack
JP2009535747A5 (ja)
US11080398B2 (en) Identifying signatures for data sets
WO2020108357A1 (zh) 一种程序分类模型训练方法、程序分类方法及装置
CN111370064A (zh) 基于simd的哈希函数的基因序列快速分类方法及系统
US8700918B2 (en) Data masking
JP6096084B2 (ja) トラヒック走査装置及び方法
CN112789831A (zh) 异常检测方法以及异常检测装置
CN112926647B (zh) 模型训练方法、域名检测方法及装置
US20180247047A1 (en) Determining whether continuous byte data of inputted data includes credential
KR102289408B1 (ko) 해시 코드 기반의 검색 장치 및 검색 방법
WO2020119771A1 (zh) 可移植的执行体文件的处理方法、检测方法及装置
US11025650B2 (en) Multi-pattern policy detection system and method
CN114301671A (zh) 网络入侵检测方法、系统、设备及存储介质
JP5952239B2 (ja) トラヒック走査方法および装置
US20220113969A1 (en) Techniques for use of a large scale multi-literal matching algorithm
JP5952240B2 (ja) トラヒック走査方法および装置
CN113051566B (zh) 一种病毒检测方法、装置、电子设备及存储介质
JP2005242668A (ja) パターンマッチング装置および方法ならびにプログラム
US9843442B2 (en) Operation method and apparatus for providing compression function for fast message hashing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150701

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20151001

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20151005

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160712

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160908

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170215

R150 Certificate of patent or registration of utility model

Ref document number: 6096084

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150