JP6147095B2 - データパケットのペイロードを検査キーと照合する入出力装置、方法及びプログラム - Google Patents
データパケットのペイロードを検査キーと照合する入出力装置、方法及びプログラム Download PDFInfo
- Publication number
- JP6147095B2 JP6147095B2 JP2013115006A JP2013115006A JP6147095B2 JP 6147095 B2 JP6147095 B2 JP 6147095B2 JP 2013115006 A JP2013115006 A JP 2013115006A JP 2013115006 A JP2013115006 A JP 2013115006A JP 6147095 B2 JP6147095 B2 JP 6147095B2
- Authority
- JP
- Japan
- Prior art keywords
- output
- data packet
- buffer
- registered
- input
- 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
- 238000007689 inspection Methods 0.000 title claims description 81
- 238000000034 method Methods 0.000 title claims description 37
- 239000000872 buffer Substances 0.000 claims description 114
- 238000004891 communication Methods 0.000 claims description 31
- 238000012795 verification Methods 0.000 claims description 11
- 230000003139 buffering effect Effects 0.000 claims description 4
- 230000001934 delay Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
データパケットのヘッダ情報と、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録したフローテーブルと、
データパケットのペイロード情報から検査すべき検査キーと、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録した検査キーテーブルと、
入力バッファから出力されたデータパケットについて、そのヘッダ情報が、フローテーブルに登録されたヘッダ情報と一致するか否かを判定し、真と判定した場合、当該データパケットを、当該ヘッダ情報に対応する識別子の出力バッファへ出力するフロー制御手段と、
フロー制御手段によって偽と判定されたデータパケットについて、そのペイロード情報に、検査キーテーブルに登録された検査キーが含まれているか否かを判定し、真と判定した場合、当該データパケットのヘッダ情報と、当該検査キーに登録された出力バッファの識別子とを対応付けてフローテーブルへ登録する共に、判定後の当該データパケットを出力バッファへ出力する検査キー照合手段と
を有することを特徴とする。
入力バッファの前段で、データパケット毎にタイムスタンプを付与するタイムスタンプ付与手段と、
フロー制御手段によって偽と判定されたデータパケットを、検査キー照合手段の前段でバッファする待機バッファと、
待機バッファから出力されたデータパケットについて、そのデータパケットに付与されたタイムスタンプと現在時刻との時間差が、所定遅延閾値以上であるか否かを判定し、真と判定した場合、当該データパケットを出力バッファへ出力し、検査キー照合手段へ出力しないように制御する遅延制限手段と
を更に有することも好ましい。
入出力装置は、ネットワークに接続され且つデータパケットを中継する通信装置に搭載されており、
ヘッダ情報は、レイヤ1からレイヤ4までのプロトコルヘッダに基づく情報であることも好ましい。
ネットワークに接続された他の通信装置へ、自らのフローテーブルを送信し、及び/又は、他の通信装置からフローテーブルを受信し且つ自らのフローテーブルへ登録するフローテーブル共有手段を更に有することも好ましい。
装置は、
データパケットのヘッダ情報と、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録したフローテーブルと、
データパケットのペイロード情報から検査すべき検査キーと、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録した検査キーテーブルと
を有し、
入力バッファから出力されたデータパケットについて、そのヘッダ情報が、フローテーブルに登録されたヘッダ情報と一致するか否かを判定し、真と判定した場合、当該データパケットを、当該ヘッダ情報に対応する識別子の出力バッファへ出力する第1のステップと、
第1のステップによって偽と判定されたデータパケットについて、そのペイロード情報に、検査キーテーブルに登録された検査キーが含まれているか否かを判定し、真と判定した場合、当該データパケットのヘッダ情報と、当該検査キーに登録された出力バッファの識別子とを対応付けてフローテーブルへ登録する共に、判定後の当該データパケットを出力バッファへ出力する第2のステップと
を実行することを特徴とする。
第1のステップの前に、データパケット毎にタイムスタンプを付与し、
第1のステップと第2のステップとの間で、
第1のステップによってヘッダ情報が一致しないと判定したデータパケットを、待機バッファにバッファし、
待機バッファから出力されたデータパケットについて、そのデータパケットに付与されたタイムスタンプと現在時刻との時間差が、所定遅延閾値以上であるか否かを判定し、真と判定した場合、当該データパケットを出力バッファへ出力し、第2のステップを実行しないように制御することも好ましい。
装置は、ネットワークに接続され且つデータパケットを中継する通信装置に搭載されており、
ヘッダ情報は、レイヤ1からレイヤ4までのプロトコルヘッダに基づく情報であることも好ましい。
ネットワークに接続された他の通信装置へ、自らのフローテーブルを送信し、及び/又は、他の通信装置からフローテーブルを受信し且つ自らのフローテーブルへ登録することも好ましい。
データパケットのヘッダ情報と、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録したフローテーブルと、
データパケットのペイロード情報から検査すべき検査キーと、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録した検査キーテーブルと、
入力バッファから出力されたデータパケットについて、そのヘッダ情報が、フローテーブルに登録されたヘッダ情報と一致するか否かを判定し、真と判定した場合、当該データパケットを、当該ヘッダ情報に対応する識別子の出力バッファへ出力するフロー制御手段と、
フロー制御手段によって偽と判定されたデータパケットについて、そのペイロード情報に、検査キーテーブルに登録された検査キーが含まれているか否かを判定し、真と判定した場合、当該データパケットのヘッダ情報と、当該検査キーに登録された出力バッファの識別子とを対応付けてフローテーブルへ登録する共に、判定後の当該データパケットを出力バッファへ出力する検査キー照合手段と
してコンピュータを機能させることを特徴とする。
図2は、データパケットのフレーム構成に対する照合部分を表す説明図である。
フローテーブル130は、データパケットの「ヘッダ情報」(フロー識別子)を登録する。装置が、ネットワークに接続され且つデータパケットを中継する通信装置である場合、ヘッダ情報は、「フロータプル」であってもよい。フロータプルとは、レイヤ1(例えばスイッチの物理ポート)から、レイヤ4(例えばTCP/IPのポート番号)までのプロトコルヘッダに基づく情報である。例えばOpenFlowスイッチに本発明を適用する場合、フロータプルは14種類程度あり、フローテーブルには、特定のレイヤに基づくことなく設定することができる。また、フローテーブルには、各種のフロータプルを、個々に又は組み合わせて登録することもできる。図1のフローテーブル130によれば、例えば以下のように種々のヘッダ情報が登録されている。
[ヘッダ情報]
MAC:11:22:33:44:55:66
IP:111.111.111.111
・・・・・
図2によれば、データパケットにおけるレイヤ1からレイヤ4までのプロトコルヘッダに基づく情報が表されている。
検査キーテーブル140は、データパケットのペイロード情報から検査すべき「検査キー」を登録する。ここで、検査キーは、「シグネチャ(signature)」であってもよい。シグネチャとは、例えばメソッド、フィールド、プロパティ、又はローカル変数の定義に関係する型をいう。メソッドの場合、シグネチャは、メソッドの名前や、パラメータの数と型、返される型、及び、呼び出し規約であってもよい。図1の検査キーテーブル140によれば、例えば以下のように種々の検査キーが登録されている。
[検査キー]
"Media=Voice"
"Media=Text"
・・・・・
図2によれば、データパケットのペイロードにおける不定位置に、"Media=Voice"のテキストが含まれている。ここで、メディアが音声のようなデータパケットは、ネットワーク内では低遅延で中継転送されることが所望される。
フロー制御部131は、入力バッファ111から出力されたデータパケットについて、そのヘッダ情報が、フローテーブル130に登録されたヘッダ情報と一致するか否かを判定する。ここで、真と判定された場合、当該データパケットを出力バッファ121へ出力する。これによって、フローテーブル130に登録されたヘッダ情報を含むデータパケットは、DPIの検査キー照合部141の処理を実行することなく、出力バッファ121へ出力される。検査キー照合部141の処理を実行しないということは、その照合にかかる時間だけ、通信遅延時間が短縮されることを意味する。
検査キー照合部141は、データパケットのペイロード情報に、検査キーテーブル140に登録された検査キーが含まれているか否かを判定する。これは、DPIにおけるペイロードの照合処理である。ここで、真と判定した場合、検査キー照合部141は、当該データパケットのヘッダ情報をフローテーブル130へ登録する。また、検査キー照合部141は、判定後の当該データパケットを、出力バッファ121へ出力する。
(高速)フローテーブル130に登録されたヘッダ情報を有するデータパケットは、ペイロードの照合処理を実行することなく直ぐに、出力バッファ121へ出力される。
(低速)フローテーブル130に登録されていないヘッダ情報を有するデータパケットは、ペイロードの照合処理を実行した後、出力バッファ121へ出力される。
タイムスタンプ付与部15は、入力インタフェース110から出力されたデータパケット毎に、タイムスタンプを付与する。タイムスタンプが付与されたデータパケットは、入力バッファ111へ出力される。入力時のタイムスタンプを記録することによって、後段の処理について、その入出力装置における許容遅延時間以内に、そのデータパケットが出力されるように制御する。
待機バッファ161は、フロー制御部131によって、フローテーブル130に登録されたヘッダ情報(フロータプル)と一致しない(偽)と判定されたデータパケットを、FIFO形式でバッファする。そして、待機バッファ161は、データパケットを逐次、遅延制限部162へ出力する。
遅延制限部162は、待機バッファ161から出力されたデータパケットについて、そのデータパケットに付与されたタイムスタンプと現在時刻との「時間差」が、「所定遅延閾値」以上であるか否かを判定する。所定遅延閾値とは、当該データパケットにおける許容遅延時間に近い値を意味する(所定遅延閾値<許容遅延時間)。
現在時刻−タイムスタンプ=時間差(現在遅延時間)
時間差と所定遅延閾値とを比較
ここで、真と判定した場合、当該データパケットを出力バッファ121へ出力し、検査キー照合部141へ出力しないように制御する。即ち、許容遅延時間に近づいているデータパケットは、できるだけ早くに入出力装置から出力する必要があるために、検査キー照合部141へ出力することなく、出力バッファ121へ出力する。
(高速)フローテーブル130に登録されたヘッダ情報を有するデータパケットは、ペイロードの照合処理を実行することなく直ぐに、出力バッファ121へ出力される。
(中速)フローテーブル130に登録されていないヘッダ情報を有するデータパケットは、所定遅延閾値に達した際、ペイロードの照合処理を実行することなく、出力バッファ121へ出力される。
(低速)フローテーブル130に登録されていないヘッダ情報を有するデータパケットは、所定遅延閾値に達していなければ、ペイロードの照合処理を実行した後、出力バッファ121へ出力される。
[検査キー] <-> [出力バッファ]
"Media=Voice" <-> 出力バッファC(伝送遅延:小)
"Media=Text" <-> 出力バッファA(伝送遅延:大)
・・・・・ <-> ・・・・・・・・・・・・
これによって、検査キー照合部141は、データパケットのペイロード情報に検査キーが含まれている(真)と判定した場合、判定後の当該データパケットを、その検査キーに応じた優先度の出力バッファ121を選択して出力することができる。
[ヘッダ情報] <-> [出力バッファ]
MAC:11:22:33:44:55:66 <-> 出力バッファC(伝送遅延:小)
IP:111.111.111.111 <-> 出力バッファA(伝送遅延:大)
・・・・・ <-> ・・・・・・・・・・・・
これによって、フロー制御部131は、データパケットのヘッダ情報に、フローテーブル130のヘッダ情報が含まれている(真)と判定された場合、当該データパケットを、そのヘッダ情報に応じた優先度の出力バッファ121を選択して出力することができる。
111 入力バッファ
120 出力インタフェース
121 出力バッファ
130 フローテーブル
131 フロー制御部
140 検査キーテーブル
141 検査キー照合部
15 タイムスタンプ付与部
161 待機バッファ
162 遅延制限部
2 端末
Claims (9)
- データパケットに対して、入力バッファと、通信遅延の異なる複数の出力バッファとを有する入出力装置において、
データパケットのヘッダ情報と、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録したフローテーブルと、
データパケットのペイロード情報から検査すべき検査キーと、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録した検査キーテーブルと、
前記入力バッファから出力されたデータパケットについて、そのヘッダ情報が、前記フローテーブルに登録されたヘッダ情報と一致するか否かを判定し、真と判定した場合、当該データパケットを、当該ヘッダ情報に対応する識別子の出力バッファへ出力するフロー制御手段と、
前記フロー制御手段によって偽と判定された前記データパケットについて、そのペイロード情報に、前記検査キーテーブルに登録された検査キーが含まれているか否かを判定し、真と判定した場合、当該データパケットのヘッダ情報と、当該検査キーに登録された出力バッファの識別子とを対応付けて前記フローテーブルへ登録する共に、判定後の当該データパケットを出力バッファへ出力する検査キー照合手段と
を有することを特徴とする入出力装置。 - 前記入力バッファの前段で、データパケット毎にタイムスタンプを付与するタイムスタンプ付与手段と、
前記フロー制御手段によって偽と判定された前記データパケットを、前記検査キー照合手段の前段でバッファする待機バッファと、
前記待機バッファから出力されたデータパケットについて、そのデータパケットに付与されたタイムスタンプと現在時刻との時間差が、所定遅延閾値以上であるか否かを判定し、真と判定した場合、当該データパケットを出力バッファへ出力し、前記検査キー照合手段へ出力しないように制御する遅延制限手段と
を更に有することを特徴とする請求項1に記載の入出力装置。 - 前記入出力装置は、ネットワークに接続され且つデータパケットを中継する通信装置に搭載されており、
前記ヘッダ情報は、レイヤ1からレイヤ4までのプロトコルヘッダに基づく情報である
ことを特徴とする請求項1又は2に記載の入出力装置。 - 前記ネットワークに接続された他の通信装置へ、自らの前記フローテーブルを送信し、及び/又は、他の通信装置からフローテーブルを受信し且つ自らのフローテーブルへ登録するフローテーブル共有手段を更に有することを特徴とする請求項3に記載の入出力装置。
- データパケットに対して、入力バッファと、通信遅延の異なる複数の出力バッファとを有する装置における入出力方法において、
前記装置は、
データパケットのヘッダ情報と、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録したフローテーブルと、
データパケットのペイロード情報から検査すべき検査キーと、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録した検査キーテーブルと
を有し、
前記入力バッファから出力されたデータパケットについて、そのヘッダ情報が、前記フローテーブルに登録されたヘッダ情報と一致するか否かを判定し、真と判定した場合、当該データパケットを、当該ヘッダ情報に対応する識別子の出力バッファへ出力する第1のステップと、
第1のステップによって偽と判定された前記データパケットについて、そのペイロード情報に、前記検査キーテーブルに登録された検査キーが含まれているか否かを判定し、真と判定した場合、当該データパケットのヘッダ情報と、当該検査キーに登録された出力バッファの識別子とを対応付けて前記フローテーブルへ登録する共に、判定後の当該データパケットを出力バッファへ出力する第2のステップと
を実行することを特徴とする入出力方法。 - 第1のステップの前に、データパケット毎にタイムスタンプを付与し、
第1のステップと第2のステップとの間で、
第1のステップによってヘッダ情報が一致しないと判定した前記データパケットを、待機バッファにバッファし、
前記待機バッファから出力されたデータパケットについて、そのデータパケットに付与されたタイムスタンプと現在時刻との時間差が、所定遅延閾値以上であるか否かを判定し、真と判定した場合、当該データパケットを出力バッファへ出力し、第2のステップを実行しないように制御する
ことを特徴とする請求項5に記載の入出力方法。 - 前記装置は、ネットワークに接続され且つデータパケットを中継する通信装置に搭載されており、
前記ヘッダ情報は、レイヤ1からレイヤ4までのプロトコルヘッダに基づく情報である
ことを特徴とする請求項6に記載の入出力方法。 - 前記ネットワークに接続された他の通信装置へ、自らの前記フローテーブルを送信し、及び/又は、他の通信装置からフローテーブルを受信し且つ自らのフローテーブルへ登録することを特徴とする請求項7に記載の入出力方法。
- データパケットに対して、入力バッファと、通信遅延の異なる複数の出力バッファとを有する装置に搭載されたコンピュータを機能させるプログラムにおいて、
データパケットのヘッダ情報と、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録したフローテーブルと、
データパケットのペイロード情報から検査すべき検査キーと、当該データパケットを出力すべき出力バッファの識別子とを対応付けて登録した検査キーテーブルと、
前記入力バッファから出力されたデータパケットについて、そのヘッダ情報が、前記フローテーブルに登録されたヘッダ情報と一致するか否かを判定し、真と判定した場合、当該データパケットを、当該ヘッダ情報に対応する識別子の出力バッファへ出力するフロー制御手段と、
前記フロー制御手段によって偽と判定された前記データパケットについて、そのペイロード情報に、前記検査キーテーブルに登録された検査キーが含まれているか否かを判定し、真と判定した場合、当該データパケットのヘッダ情報と、当該検査キーに登録された出力バッファの識別子とを対応付けて前記フローテーブルへ登録する共に、判定後の当該データパケットを出力バッファへ出力する検査キー照合手段と
してコンピュータを機能させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013115006A JP6147095B2 (ja) | 2013-05-31 | 2013-05-31 | データパケットのペイロードを検査キーと照合する入出力装置、方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013115006A JP6147095B2 (ja) | 2013-05-31 | 2013-05-31 | データパケットのペイロードを検査キーと照合する入出力装置、方法及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014236268A JP2014236268A (ja) | 2014-12-15 |
JP6147095B2 true JP6147095B2 (ja) | 2017-06-14 |
Family
ID=52138701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013115006A Expired - Fee Related JP6147095B2 (ja) | 2013-05-31 | 2013-05-31 | データパケットのペイロードを検査キーと照合する入出力装置、方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6147095B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6907903B2 (ja) * | 2017-11-24 | 2021-07-21 | 日本電信電話株式会社 | パケット識別装置および方法 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10145388A (ja) * | 1996-11-14 | 1998-05-29 | Advantest Corp | Atm擬似交換機 |
JP2003158543A (ja) * | 2001-11-22 | 2003-05-30 | Anritsu Corp | 中継装置及び中継方法 |
JP2005218039A (ja) * | 2004-02-02 | 2005-08-11 | Fujitsu Ltd | セル遅延廃棄バッファ装置およびセル遅延廃棄制御の補正方法 |
JP4334379B2 (ja) * | 2004-03-12 | 2009-09-30 | 富士通株式会社 | ネットワークシステム |
JP2012205159A (ja) * | 2011-03-26 | 2012-10-22 | Fujitsu Ltd | フロー別流量監視制御方法、通信装置、およびプログラム |
JP5703111B2 (ja) * | 2011-04-25 | 2015-04-15 | 株式会社日立製作所 | 通信システムおよび装置 |
-
2013
- 2013-05-31 JP JP2013115006A patent/JP6147095B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2014236268A (ja) | 2014-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108141416B (zh) | 一种报文处理方法、计算设备以及报文处理装置 | |
JP4640128B2 (ja) | 応答通信機器及びarp応答通信機器 | |
US8559429B2 (en) | Sequential frame forwarding | |
US20110307628A1 (en) | Communication system, node, control server, communication method and program | |
US8842672B2 (en) | Systems and methods for modifying network packets to use unrecognized headers/fields for packet classification and forwarding | |
JP2007208963A (ja) | パケット処理装置及びパケット処理方法 | |
JP6024664B2 (ja) | 通信システム、制御装置および通信方法 | |
JP5858141B2 (ja) | 制御装置、通信装置、通信システム、通信方法及びプログラム | |
EP2720421A1 (en) | Method for processing congestion and network device | |
KR101292873B1 (ko) | 네트워크 인터페이스 카드장치 및 상기 네트워크 인터페이스 카드장치를 이용한 트래픽 처리 방법 | |
JP5720340B2 (ja) | 制御サーバ、通信システム、制御方法およびプログラム | |
KR101494565B1 (ko) | 네트워크 시스템, 패킷 처리 방법 및 기억 매체 | |
US20200028779A1 (en) | Packet processing method and apparatus | |
JP6147095B2 (ja) | データパケットのペイロードを検査キーと照合する入出力装置、方法及びプログラム | |
JP4382122B2 (ja) | 中継装置および帯域制御プログラム | |
JP2016506217A (ja) | パケット処理方法及び転送要素 | |
CN111262752B (zh) | 一种带内遥测的方法以及设备 | |
CN108632115B (zh) | 一种POF交换机idle定时的测试系统及方法 | |
CN108270675B (zh) | 流表实现控制器、转发设备、系统和方法 | |
KR101469244B1 (ko) | 수신된 데이터에서의 불필요한 패킷 제거 장치 및 방법 | |
JP4638851B2 (ja) | パケット処理装置 | |
JP5359357B2 (ja) | パケット処理装置、該処理装置に用いられるパケット処理順序制御方法及びパケット処理順序制御プログラム | |
Sindhura et al. | Implementation and testing of openflow switch using FPGA | |
KR100550013B1 (ko) | 라우터와 가상근거리통신망간의 패킷 통신 방법 | |
JP2003283542A (ja) | プロトコル処理装置及びその方法並びにトラフィック処理装置及びその方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160119 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161028 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161108 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170106 |
|
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: 20170516 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170516 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6147095 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |