JP5798530B2 - パケット処理装置およびパケット処理方法 - Google Patents
パケット処理装置およびパケット処理方法 Download PDFInfo
- Publication number
- JP5798530B2 JP5798530B2 JP2012177322A JP2012177322A JP5798530B2 JP 5798530 B2 JP5798530 B2 JP 5798530B2 JP 2012177322 A JP2012177322 A JP 2012177322A JP 2012177322 A JP2012177322 A JP 2012177322A JP 5798530 B2 JP5798530 B2 JP 5798530B2
- Authority
- JP
- Japan
- Prior art keywords
- record
- value
- packet
- hash
- hash table
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
また、パケット処理装置が、ハッシュテーブルのコリジョンレコードにレコードがヒットしない入力パケット(非該当パケット)を所定の頻度以上で受信するようになった場合でも、ハッシュテーブルの検索にかかる時間が長くなってしまうことを抑制できる。
まず、図2を用いて、第1の実施の形態のパケット処理装置100の処理概要を説明する。パケット処理装置100は、パケットの入力を受け付けると、ハッシュ関数を用いて入力パケットの評価箇所に対応するハッシュ値を計算する。例えば、パケット処理装置100は、HTTP(HyperText Transfer Protocol)で取得するURI(Uniform Resource Identifier)の「www.example.com」のハッシュ値を計算する。そして、パケット処理装置100は、このハッシュ値をキーとしてハッシュテーブル160から入力パケットに対し実行すべき処理(アクション)を検索する。例えば、入力パケットの評価箇所に「www.example.com」が記載されている場合、「www.example.com」に対するハッシュ値として「0011」を計算する。そして、パケット処理装置100は、ハッシュ値「0011」をキーとして、ハッシュテーブル160を検索し、このハッシュ値「0011」に対応するレコードが1つであれば、そのレコードに対するアクションを実行する。一方、図2に例示するようにハッシュ値「0011」に対応するレコードが複数あるとき、このレコードの中から「www.example.com」のレコードを線形検索する。つまり、パケット処理装置100はコリジョンレコードの中から「www.example.com」のレコードを上から順に検索する。そして、パケット処理装置100は、ハッシュテーブル160にそのレコードに対し実行すべきアクションを見つけると、このアクションを実行する。
次に、パケット処理装置100を詳細に説明する。図3に示すようにパケット処理装置100は、パケット入力部110と、ハッシュ値計算部120と、パケット処理部130と、周期制御部140と、ソート部150と、ハッシュテーブル160と、パケット出力部170とを備える。以下、各部の機能を説明する。
次に、図4を用いて、第2の実施の形態の概要を説明する。第2の実施の形態のパケット処理装置100A(図5参照)は、ハッシュテーブル160のコリジョンレコードを検索しても、レコードがヒットしないパケット(非該当パケット)を所定の頻度以上で受信するようになった場合、ハッシュテーブル160にこの非該当パケットのレコードを登録することを特徴とする。以下、図5を参照しながら、パケット処理装置100Aの処理を簡単に説明する。
<構成>
パケット処理装置100Aを、図5を用いて詳細に説明する。前記した第1の実施の形態と同様の構成要素は、同じ符号を付して説明を省略する。パケット処理装置100Aは、第1の実施の形態のパケット処理装置100(図3参照)の構成に非該当レコード蓄積処理部180と、サンプリングレート計算部181と、非該当レコードバッファ161と、非該当レコードバッファ統計部182と、非該当レコードハッシュテーブル162と、非該当レコード削除部183と、非該当レコードクリア部184とを付加した構成となっている。また、パケット処理装置100Aは、図3のソート部150に代えてソート部150Aを備える。
次に、図5を参照しつつ、パケット処理装置100Aの処理手順を説明する。
110 パケット入力部
120 ハッシュ値計算部
130 パケット処理部
131 ハッシュ値比較部
132 アクション実行部
133 統計情報更新部
140 周期制御部
150,150A ソート部
160 ハッシュテーブル
161 非該当レコードバッファ
162 非該当レコードハッシュテーブル
170 パケット出力部
180 非該当レコード蓄積処理部
181 サンプリングレート計算部
182 非該当レコードバッファ統計部
183 非該当レコード削除部
Claims (5)
- パケットの入力を受け付けるパケット入力部と、
前記パケットの所定のエリアの値を入力値として、この入力値のハッシュ値を計算するハッシュ値計算部と、
前記ハッシュ値ごとに、前記ハッシュ値に対応するレコードと、前記レコードを持つパケットに対し実行すべきアクションと、前記ハッシュ値に対応するレコードの検索頻度とを対応付けて示したハッシュテーブル、非該当レコードバッファ、および、非該当レコードハッシュテーブルを記憶する記憶部と、
前記計算したハッシュ値をキーとして、前記ハッシュテーブルにおける前記ハッシュ値に対応する1以上のレコードの中から、前記入力値と同じ値を持つレコードに対応するアクションを検索するハッシュ値比較部と、
前記パケットに対し、前記アクションが検索された場合、前記検索されたアクションを実行し、前記アクションが検索されなった場合、デフォルトのアクションの実行処理を行うアクション実行部と、
前記入力値と同じ値を持つレコードを発見したとき、前記ハッシュテーブルにおける前記レコードの検索頻度を加算することで更新する統計情報更新部と、
前記ハッシュテーブルにおいて、前記ハッシュ値に対応する2以上のレコードがあるコリジョンレコードのエントリリストそれぞれについて、前記エントリリスト内のレコードを検索頻度が多い順にソートし、前記ハッシュテーブルにおける検索頻度の値をクリアして、前記ハッシュテーブルの更新を行うソート部と、
前記アクションの実行後のパケットを出力するパケット出力部と、
前記ハッシュテーブルのコリジョンレコードに、前記計算したハッシュ値に対応するレコードがないパケットを所定の頻度で受信したとき、前記入力したパケットを所定のサンプリングレートでサンプリングし、前記サンプリングした入力パケットの入力値のハッシュ値ごとに、前記ハッシュ値に対応するレコードである非該当レコード群を前記非該当レコードバッファに蓄積する非該当レコード蓄積処理部と、
前記非該当レコードバッファにおける非該当レコードごとに、当該レコードの出現頻度を集計し、前記集計した非該当レコードの出現頻度が所定の閾値以上のレコードの出現頻度に、前記サンプリングレートの逆数を乗算した補正統計値を計算し、前記非該当レコードのハッシュ値ごとに、前記非該当レコードと、前記非該当レコードに対応するアクションと、前記計算した補正統計値とを示したエントリを前記非該当レコードハッシュテーブルに格納する非該当レコードバッファ統計部と、
前記非該当レコードバッファおよび前記非該当レコードハッシュテーブルをクリアする非該当レコードクリア部とを備え、
前記パケット入力部経由で新たなパケットが入力されたとき、前記ハッシュ値比較部は、新たな入力パケットの所定のエリアの値を入力値として前記ハッシュ値計算部により計算されたハッシュ値をキーとして、前記更新されたハッシュテーブルにおける前記ハッシュ値に対応する1以上のレコードの中から、前記入力値と同じ値を持つレコードに対応するアクションを検索し、
前記ソート部は、さらに、 前記非該当レコードハッシュテーブルに格納されたエントリのうち、前記補正統計値が所定の閾値以上のエントリを前記ハッシュテーブルのコリジョンレコードに追加し、
前記非該当レコードクリア部は、前記ソート部により、前記補正統計値が所定の閾値以上のエントリが前記ハッシュテーブルのコリジョンレコードに追加されたとき、前記非該当レコードバッファおよび前記非該当レコードハッシュテーブルをクリアすること
を特徴とするパケット処理装置。 - 前記パケット処理装置は、
前記非該当レコード蓄積処理部における前記入力パケットのサンプリングレートを計算するサンプリングレート計算部をさらに備え、
前記サンプリングレート計算部は、
前記非該当レコードバッファに割り当てられた記憶容量が少ないほど、前記サンプリングレートを低くすることを特徴とする請求項1に記載のパケット処理装置。 - 前記パケット処理装置は、
前記非該当レコード蓄積処理部における前記入力パケットのサンプリングレートを計算するサンプリングレート計算部をさらに備え、
前記サンプリングレート計算部は、
前記ハッシュテーブルに前記計算したハッシュ値に対応するレコードがないパケットの受信頻度が高いほど、前記サンプリングレートを低くすることを特徴とする請求項1に記載のパケット処理装置。 - 前記ハッシュテーブルから前記検索頻度が所定の閾値に満たないエントリを削除する非該当レコード削除部をさらに備えることを特徴とする請求項1ないし請求項3のいずれか1項に記載のパケット処理装置。
- ハッシュ値ごとに、前記ハッシュ値に対応するレコードと、前記レコードを持つパケットに対し実行すべきアクションと、前記ハッシュ値に対応するレコードの検索頻度とを対応付けて示したハッシュテーブル、非該当レコードバッファ、および、非該当レコードハッシュテーブルを記憶する記憶部を備えるパケット処理装置が、
パケットの入力を受け付けるステップと、
前記パケットの所定のエリアの値を入力値として、この入力値のハッシュ値を計算するステップと、
前記計算したハッシュ値をキーとして、前記ハッシュテーブルにおける前記ハッシュ値に対応する1以上のレコードの中から、前記入力値と同じ値を持つレコードに対応するアクションを検索するステップと、
前記パケットに対し、前記アクションが検索された場合、前記検索されたアクションを実行し、前記アクションが検索されなった場合、デフォルトのアクションの実行処理を行うステップと、
前記入力値と同じ値を持つレコードを発見したとき、前記ハッシュテーブルにおける前記レコードの検索頻度を加算することで更新するステップと、
前記ハッシュテーブルにおいて、前記ハッシュ値に対応する2以上のレコードがあるコリジョンレコードのエントリリストそれぞれについて、前記エントリリスト内のレコードを検索頻度が多い順にソートし、前記ハッシュテーブルにおける検索頻度の値をクリアして、前記ハッシュテーブルの更新を行うステップと、
前記アクションの実行後のパケットを出力するステップと、
前記ハッシュテーブルの更新後、新たなパケットが入力されたとき、新たな入力パケットの所定のエリアの値を入力値として計算されたハッシュ値をキーとして、前記更新されたハッシュテーブルにおける前記ハッシュ値に対応する1以上のレコードの中から、前記入力値と同じ値を持つレコードに対応するアクションを検索するステップと、
前記ハッシュテーブルのコリジョンレコードに、前記計算したハッシュ値に対応するレコードがないパケットを所定の頻度で受信したとき、前記入力パケットを所定のサンプリングレートでサンプリングし、前記サンプリングした入力パケットの入力値のハッシュ値ごとに、前記ハッシュ値に対応するレコードである非該当レコード群を前記非該当レコードバッファに蓄積するステップと、
前記非該当レコードバッファにおける非該当レコードごとに、当該レコードの出現頻度を集計し、前記集計した非該当レコードの出現頻度が所定の閾値以上のレコードの出現頻度に、前記サンプリングレートの逆数を乗算した補正統計値を計算し、前記非該当レコードのハッシュ値ごとに、前記非該当レコードと、前記非該当レコードに対応するアクションと、前記計算した補正統計値とを示したエントリを前記非該当レコードハッシュテーブルに格納するステップと、
前記非該当レコードハッシュテーブルに格納されたエントリのうち、前記補正統計値が所定の閾値以上のエントリを前記ハッシュテーブルのコリジョンレコードに追加するステップと、
前記補正統計値が所定の閾値以上のエントリが前記ハッシュテーブルのコリジョンレコードに追加されたとき、前記非該当レコードバッファおよび前記非該当レコードハッシュテーブルをクリアするステップと、
を実行することを特徴とするパケット処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012177322A JP5798530B2 (ja) | 2012-08-09 | 2012-08-09 | パケット処理装置およびパケット処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012177322A JP5798530B2 (ja) | 2012-08-09 | 2012-08-09 | パケット処理装置およびパケット処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014036369A JP2014036369A (ja) | 2014-02-24 |
JP5798530B2 true JP5798530B2 (ja) | 2015-10-21 |
Family
ID=50285089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012177322A Expired - Fee Related JP5798530B2 (ja) | 2012-08-09 | 2012-08-09 | パケット処理装置およびパケット処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5798530B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6236571B2 (ja) * | 2015-02-27 | 2017-11-22 | 株式会社東芝 | インダクタ及び無線電力伝送装置 |
JP6868582B2 (ja) * | 2018-02-27 | 2021-05-12 | Kddi株式会社 | 中継装置、通信システム及び通信履歴記憶方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10210066A (ja) * | 1997-01-16 | 1998-08-07 | Sumitomo Electric Ind Ltd | ネットワーク間中継先判定用データベース及びデータベースの構築方法 |
US7515589B2 (en) * | 2004-08-27 | 2009-04-07 | International Business Machines Corporation | Method and apparatus for providing network virtualization |
JP4774307B2 (ja) * | 2006-02-06 | 2011-09-14 | アラクサラネットワークス株式会社 | 不正アクセス監視装置及びパケット中継装置 |
US7894358B2 (en) * | 2007-03-15 | 2011-02-22 | Cisco Technology, Inc. | Detection of heavy users of network resources |
JP5012674B2 (ja) * | 2008-06-03 | 2012-08-29 | 日本電気株式会社 | Ipパケット制御装置におけるソフトウェア検索方法 |
JP5437194B2 (ja) * | 2010-08-05 | 2014-03-12 | 日本電信電話株式会社 | フロー通信品質推定方法及び装置及びプログラム |
-
2012
- 2012-08-09 JP JP2012177322A patent/JP5798530B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014036369A (ja) | 2014-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11601351B2 (en) | Aggregation of select network traffic statistics | |
EP2530874B1 (en) | Method and apparatus for detecting network attacks using a flow based technique | |
US8964548B1 (en) | System and method for determining network application signatures using flow payloads | |
US8577817B1 (en) | System and method for using network application signatures based on term transition state machine | |
Lee et al. | Toward scalable internet traffic measurement and analysis with hadoop | |
US8494985B1 (en) | System and method for using network application signatures based on modified term transition state machine | |
US20190230095A1 (en) | Detection of malware and malicious applications | |
JP6217839B2 (ja) | パケット処理装置、パケット処理方法およびプログラム | |
US8711014B2 (en) | Methods and devices for creating, compressing and searching binary tree | |
KR100997182B1 (ko) | 플로우 정보 제한장치 및 방법 | |
US7957315B2 (en) | System and method for sampling network traffic | |
CN108696543B (zh) | 基于深度森林的分布式反射拒绝服务攻击检测、防御方法 | |
EP2530873B1 (en) | Method and apparatus for streaming netflow data analysis | |
JP5798530B2 (ja) | パケット処理装置およびパケット処理方法 | |
JP5719054B2 (ja) | アクセス制御装置、アクセス制御方法、およびアクセス制御プログラム | |
Shomura et al. | Analyzing the number of varieties in frequently found flows | |
CN114710444A (zh) | 基于塔型摘要和可驱逐流表的数据中心流量统计方法和系统 | |
KR101268621B1 (ko) | 동적 플로우 샘플링 장치 및 방법 | |
TWI618387B (zh) | Method for improving packet processing of virtual switch | |
KR101308091B1 (ko) | 요약 데이터를 이용하여 로그 데이터의 정렬 정보를 생성하기 위한 장치 및 방법 | |
Yoshida et al. | Stream mining for network management | |
CN111581489B (zh) | 一种基于共享计数树的存储空间优化采样方法 | |
JP2009171252A (ja) | 計数方法、計数プログラム、計数装置 | |
Lee et al. | Detecting violations of service-level agreements in programmable switches | |
WO2021001879A1 (ja) | トラフィック監視装置、およびトラフィック監視方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20140502 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20140528 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140729 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150409 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150414 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150608 |
|
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: 20150818 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150821 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5798530 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |