JP2007194885A - パケット分類装置 - Google Patents

パケット分類装置 Download PDF

Info

Publication number
JP2007194885A
JP2007194885A JP2006010840A JP2006010840A JP2007194885A JP 2007194885 A JP2007194885 A JP 2007194885A JP 2006010840 A JP2006010840 A JP 2006010840A JP 2006010840 A JP2006010840 A JP 2006010840A JP 2007194885 A JP2007194885 A JP 2007194885A
Authority
JP
Japan
Prior art keywords
condition
classification
packet
data
item
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.)
Pending
Application number
JP2006010840A
Other languages
English (en)
Inventor
Shuji Kamiya
周治 神谷
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2006010840A priority Critical patent/JP2007194885A/ja
Publication of JP2007194885A publication Critical patent/JP2007194885A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】大量のパケットデータ(例えばAVストリーム情報用のパケットデータ)を後続の処理へ容易に振り分けできるようにする。
【解決手段】イーサMAC受信部110が受信したパケットデータから所定の項目データを取り出す受信データ解析部101と、項目データと所定の条件データとを比較した結果を出力する項目条件比較部102と、比較結果に対応する、パケットデータの分類条件に適合するものがあるかどうかを判定する分類条件判定部104を設ける。そして、分類条件判定部104から、適合した分類条件に対応した値を含む分類結果情報を、受信ステータスの一部として書込めるように、イーサMAC受信部110に出力する。
【選択図】図1

Description

本発明は、パケットデータを所定の条件に応じて分類するパケット分類装置に関するものである。
近年の通信ネットワーク技術の進歩により、音楽や映像ストリーム情報(AVストリーム情報)をMPEG2−TSなどの形式を用いて、ネットワーク経由で伝送することが可能になってきている。これにより、遠隔地にある映像サーバからAVストリーム情報を受信したり、ネットワークに接続された機器同士で音楽やAVストリーム情報をやりとりしたりすることが可能になってきている。
AVストリーム情報をネットワーク経由で伝送する場合、AVストリーム情報は、TCP/IPプロトコルやUDP/IPプロトコルのパケットでやりとりされるのが一般的である。この場合、そのパケットを受信し、それを処理する端末では、その端末に搭載されたCPUによるTCP(UDP)/IPプロトコル処理プログラム(プロトコルスタック)の実行により、受信パケットのヘッダを解析し、引き続く処理へ受信パケットを振り分けるようになっている。
現在一般に使われているIPプロトコルは、IPv4(IPバージョン4)であるが、IPv6(IPバージョン6)という次バージョンのIPプロトコルも使われ始めている。ここでは、IPv4について説明する。
図15は、IPv4におけるIPv4ヘッダ、TCPヘッダ、UDPヘッダ、ICMPヘッダの各ヘッダの形式を示している。また、図16は、イーサネットと呼ばれるネットワーク上で、これらのプロトコルヘッダを伴ってデータを送受信するときに使われるイーサネットフレームの概略示す図である。
TCPヘッダ、UDPヘッダ、ICMPヘッダは、図16のIP上位層ヘッダに該当し、どの上位層ヘッダがIPヘッダに続いているかは、IPv4ヘッダのプロトコル番号によって示される。
AVストリームパケットをTCP/IPパケットで受信するには、受信側システムは、まず、サーバ(送信側システム)の既定のTCPポート番号を宛先ポート番号として、TCPコネクション要求を発行し、TCPコネクションを確立して、その後のパケットの送受信を行う。この場合、受信側システムにおいて、受信したパケットがこのコネクションに係わるパケットであるかどうかは、「IPv4送信元アドレスが、送信側システムのIPv4アドレスである。」、「IPv4宛先アドレスが、受信側システムのIPv4アドレスである。」、「IPv4プロトコルヘッダのプロトコル番号がTCP(6)である。」、「TCPヘッダの送信元ポート番号が既定の値である。」、「TCPヘッダの宛先ポート番号が既定の値である。」という条件で判別する必要がある。
また、UDP/IPを使って、AVストリームパケットを受信する場合は、受信側システムでIPv4送信元アドレス、IPv4宛先アドレス、プロトコル番号がUDP(17)、UDP送信元ポート番号とUDP宛先ポート番号がそれぞれ既定の値であるかどうかによってそのパケットを識別する必要がある。
また、受信パケットの特定位置にあるデータが特定の値に一致するかどうかどうかを判定し、一致した場合にパケットを受信し、一致しなかった場合にパケットを破棄するフィルタ動作をする装置が知られている(例えば特許文献1を参照)。
さらに、パケットヘッダの解析をして、MACアドレス、IPアドレス、TCPポート番号、UDPポート番号でフィルタリングし、通過パケットに対して、前記データをパケットヘッダ情報として受信パケットに付加しているものもある(例えば特許文献2を参照)。
特開2001−69173号公報 特開2005−203941号公報
しかしながら、上記のように、受信したパケットがAVストリーム情報用のパケットであるかどうかを判定し、それを後続の処理に振り分けるためには、IPヘッダの解析、アドレスの判定、プロトコル番号の判定、IP上位層ヘッダとしてのTCPやUDPヘッダの解析、さらにはポート番号の判定等をCPUが実行する必要があり、大量に受信されるAVストリームパケットを処理する場合、CPUの処理能力の多くがその処理に当てられると、装置の応答速度が遅くなったり、処理が間に合わなくなったりすることが考えられる。
また、特定の条件に合致したパケットを破棄したり受信したりするフィルタ装置では、受信したパケットの中から、AVストリーム用のパケットを識別して、後続の処理に振り分けるCPUの処理負荷を下げることはできない。
また、パケットヘッダ情報をそのまま付加した場合も、CPU側の処理で、ヘッダを解析する処理は削減できるが、再度、IPアドレス、プロトコル番号、ポート番号の判定をしてAVストリームパケットであるかどうかを識別して、後続の処理へ振り分ける必要がある。
本発明は、前記の問題に着目してなされたものであり、大量のパケットデータ(例えばAVストリーム情報用のパケットデータ)を後続の処理へ容易に振り分けできるパケット分類装置を提供することを目的としている。
前記の課題を解決するため、請求項1の発明は、
パケットデータを所定の条件に応じて分類するパケット分類装置であって、
受信したパケットデータおよび受信ステータスを出力する受信装置が受信したパケットデータから、パケットデータを分類するための項目データを取り出す受信データ解析部と、
前記項目データと所定の条件データとを比較して、比較結果を出力する項目条件比較部と、
前記項目条件比較部が出力した比較結果に、前記比較結果の所定の組み合わせによってパケットデータを分類する分類条件と適合するものがあるかどうかを判定するとともに、適合した分類条件に対応した値を含む分類結果情報を、前記受信装置が前記受信ステータスの一部として書込めるように出力する分類条件判定部と、
を備えたことを特徴とする。
これにより、パケットデータを分類した結果が、分類条件に対応した値としてステータス情報に出力されるので、大量のパケットデータを後続の処理への振り分けが容易になる。それゆえ、例えば受信したAVストリーム情報用のパケットデータを後続の処理へ振り分ける処理を行なうCPU等の負荷を軽減することが可能になる。
また、請求項2の発明は、
請求項1のパケット分類装置であって、
前記分類条件判定部は、判定の結果、合致する分類条件がないときには、その要因を示す要因コードを含む分類結果情報を、前記受信装置が前記受信ステータスの一部として書込めるように、出力するように構成されていることを特徴とする。
これにより、パケットデータの要否を容易に判断できる。例えば、受信したパケットデータを後続の処理へ振り分けるCPUは、パケットデータを処理する際に、その要因コードを参照することにより、エラー発生による廃棄可能なパケットなのか、CPUでパケットヘッダの解析が必要なパケットなのかを容易に切り分けることができる。
また、請求項3の発明は、
請求項1または請求項2のパケット分類装置であって、さらに、
前記条件データが格納される項目条件設定部と、
前記分類条件が格納される分類条件設定部とを備え
前記項目条件設定部および前記分類条件設定部への値の設定は、パケットデータの受信および前記分類条件判定部で行なわれる分類動作を止めることなく行なわれることを特徴とする。
これにより、他の設定済み分類条件による分類動作を止めることなく、パケットデータを識別する条件を追加したり、停止させたりすることができる。
また、請求項4の発明は、
請求項1から請求項3のパケット分類装置であって、
前記分類条件には、IPv4送信元アドレス、IPv4宛先アドレス、IP上位層のプロトコル番号、およびTCPやUDPのポート番号の組み合わせを含む条件を指定できることを特徴とする。
また、請求項5の発明は、
請求項1から請求項3のパケット分類装置であって、
前記分類条件には、IPv6送信元アドレス、IPv6宛先アドレス、IP上位層のプロトコル番号、およびTCPやUDPのポート番号の組み合わせを含む条件を指定できることを特徴とする。
また、請求項6の発明は、
請求項1から請求項3のパケット分類装置であって、
前記分類条件には、IPv4パケット受信時には、IPv4送信元アドレス、IPv4宛先アドレス、IP上位層のプロトコル番号、およびTCPやUDPのポート番号の組み合わせを含む条件を指定でき、IPv6パケット受信時には、IPv6送信元アドレス、IPv6宛先アドレス、IP上位層のプロトコル番号、およびTCPやUDPのポート番号の組み合わせを含む条件を指定できることを特徴とする。
これらにより、例えば、分類条件にAVストリーム用のパケットであることを識別するための値を設定すれば、IPv4ネットワークやIPv6ネットワークにおいて、受信パケットがAVストリーム用のパケットであるかどうかを容易に判別できる。それゆえ、AVストリーム情報を受信している端末装置においてパケットの振り分け処理を行なうCPUの負荷を削減できる。
本発明によれば、パケットデータを分類した結果が、分類条件に対応した値としてステータス情報に出力されるので、大量のパケットデータ(例えばAVストリーム情報用のパケットデータ)を後続の処理へ容易に振り分けできる。
以下、本発明の実施形態について図面を参照しながら説明する。
図1は、本発明の実施形態に係るパケット分類装置100の構成を示すブロック図である。パケット分類装置100は、イーサMAC受信部110が受信したパケットデータ(受信データ)を、指定された分類条件と照合することによって受信データを分類し、その分類結果情報をイーサMAC受信部110へ出力する装置であり、図1に示すように、イーサMAC受信部110とホストバス制御部120に接続されている。
イーサMAC受信部110は、受信制御部111と受信FIFO112を備え、通信ネットワークを介して送られたパケットデータを受信するようになっている。ここで、パケット分類装置100とイーサMAC受信部110が、互いにやりとりする信号を図2に示す。
受信制御部111は、RXクロックと呼ばれる動作クロックごとに4ビットの通信データをネットワークから受信するようになっている。したがって、受信制御部111が出力する32ビットの受信データwdata[31:0]は、RXクロックの8クロックごとに、通信ネットワークを介して送られた32ビットデータに更新される。
また、受信制御部111は、受信FIFO112へ書き込みを行なうために、1動作クロック期間パケットデータ書込みストローブ信号をアサートするようになっている。
受信FIFO112は、受信制御部111が受信したパケットデータとともに、受信ステータスを格納するバッファである。
ホストバス制御部120は、CPU130がパケット分類装置100やイーサMAC受信部110の各種レジスタを読み書きしたり、受信FIFO112の内容を読み出したりするためのインタフェース回路部である。
上記のパケット分類装置100、イーサMAC受信部110、ホストバス制御部120によって、パケット受信装置が構成される。
パケット分類装置100は、具体的には、受信データ解析部101、項目条件比較部102、項目条件設定部103、分類条件判定部104、および分類条件設定部105を備えている。
受信データ解析部101は、イーサMAC受信部110が受信したパケットデータを取得するとともに、取得したパケットデータを解析して、解析結果(後述する項目データ、および項目データの種別を示す項目種別コード)を項目条件比較部102に出力するようになっている。
図3は、受信される一連の32ビットの受信データwdata[31:0]の1例を示している。図3では、上から下方向に時間順で新しく受信される受信データを示している。ここでは、32ビットの受信データの中では、wdata[31:24]、wdata[23:16]、wdata[15:8]、wdata[7:0]の順で時間的に早く受信された1バイトの受信データとする。
このような一連の受信データは、イーサネットフレームと呼ばれる形式のバイト列を構成する。図3は、イーサMAC受信部110がイーサネットフレームに先立って挿入した2バイトのパディングデータ(16’h0000)に引き続き、MACヘッダ(14バイト)、IPv4ヘッダ(20バイト)IP上位層ヘッダの先頭4バイトが一連のwdata[31:0]として受信された様子を示しており、さらに1個のイーサネットフレームを構成するデータ(IPの上位層のヘッダの続きおよびアプリケーションデータ)が続いている。
受信したパケットデータに含まれたプロトコル番号、TCPポート番号、IPv4送信元アドレスなどの情報が、受信データ解析部101が求める項目データであり、これらの項目データには所定の値の項目種別コードが対応づけられている。図4に本実施形態における項目種別コードを示す。
なお、先頭のパディングデータはなくてもよく、その場合には、受信データ解析部101にて挿入すれば、以降の処理は同一となる。また、ここでは、イーサMAC受信部110から32ビットの受信データを受け取っているが、受け取るデータとしては、8ビットや16ビット幅でもよい。受信データ解析部101で32ビット分のデータに調整してから出力すれば、以降の処理は同一となる。また、以降の処理を8ビットや16ビット幅で実施することも可能である。
次に、受信データ解析部101で行なわれる受信データの解析および、解析結果の出力について説明する。受信データ解析部101では、受信データに応じて、処理の状態が遷移する。図5は、受信データ解析部101の状態遷移制御の仕様を示している。また、図6は、その状態遷移やアクションの動作フローを示している。図5において、受信データ解析部101の状態は、内部状態を管理するHDRとINXという二つの変数で示されている。HDRは、受信データwdata[31:0]がどのヘッダに属すかを表しており、図5に示す「次状態」への遷移が発生したときに変化する。受信データ解析部101は、HDRとINXに応じて、項目種別コードを求めるようになっている。
次状態への遷移は、遷移条件が成立したときに発生する。また、INXは次状態への遷移が発生したときは、次状態に対応した値に変更され、そうでないときは、パケットデータの書込みストローブ信号ごとに+1(1加算)される。項目データの出力処理は、図5においてアクションとして示されている。
項目種別コードが0のときには、プロトコル番号が項目データとして出力されていることを示し、受信データ解析部101は、受信データwdata[31:0]のうちのwdata[23:16]の1バイトを4回繰り返して32ビットデータとした項目データを出力する。その他の項目種別コードの場合は、wdata[31:0]を項目データとして出力する。なお、その際に受信データ解析部101は、項目データ等が有効であることを示す項目条件有効通知信号を1クロック期間アサートして項目条件比較部102に出力する。
項目条件設定部103は、条件データ(後述)が格納されたメモリである。図7に本実施形態における条件データの格納仕様を示す。条件データは、図7に示すように、プロトコル番号、ポート番号、IPv4送信元アドレスなどの情報であり、32ビットずつの2つのブロックに分けて格納されている。
項目条件比較部102は、受信データ解析部101から受け取った項目データと項目条件設定部103に設定されている条件データとを比較するとともに、比較結果を分類条件判定部104に出力するようになっている。
まず、項目条件比較部102は、項目種別コードに対応する条件データを、項目条件設定部103に比較対象データインデックス(条件データの位置を示すインデックス)を指示することによって読み出す。同一の項目種別コードに対し、複数回の読み出しおよび比較が必要な場合には、比較対象データインデックスを変化させて、読み出しおよび比較動作を繰り返す。
図8は、項目条件設定部103から読み出された条件データ(32ビット×2=64ビット)と受信データ解析部101から取得した項目データ(32ビット)に対する項目条件比較部102における比較処理を示している。項目条件比較部102では、比較回路102a〜102bによって、バイトごとに比較が行なわれ、このバイトごとの比較結果と比較対象データインデックスとを分類条件判定部104へ出力する。なお、この際に項目条件比較部102は、比較結果が有効であることを示す比較結果有効通知信号を1クロック期間アサートして分類条件判定部104に出力する。
分類条件判定部104は、項目条件比較部102から出力された比較結果に対応する分類条件(後述)に適合するものがあるかどうかを判定して、適合した分類条件に対応した値(分類結果情報)を求めるとともに、求めた分類結果情報をイーサMAC受信部110がステータス情報の書込む際に、イーサMAC受信部110が利用可能なように出力するようになっている。
分類条件判定部104は、具体的には、比較対象データインデックスに基づいて、バイトマスク制御部104aでバイトマスク制御(後述)を行うとともに、比較対象データインデックスに応じたデータを記憶するようになっている。
バイトマスク制御は、次のように行う。分類条件判定部104には、項目条件比較部102からのバイト比較結果毎に対応してセレクタ104bを設ける。セレクタ104bは、入力された制御ビットが1であるときは、項目条件比較部102からの比較結果を出力し、0であるときは固定的に1を出力するようになっている。分類条件判定部104では、比較対象データインデックスが1〜4(ポート番号)のときには、分類条件設定部105に格納されている分類条件のポート番号条件(バイトマスク)を制御ビットに設定し、比較対象データインデックスが1〜4以外の場合は、制御ビットを1にする。
また、分類条件判定部104は、具体的には、比較対象データインデックスが0の場合には、各バイトの比較結果(比較結果1〜8)、それ以外のときは、各32ビットワードの比較結果9〜10を、例えば図9に示すような構成のレジスタcmp_reg[27:0](比較結果の取得レジスタ)で記憶する。
分類条件設定部105は、パケットの分類条件が格納されたレジスタである。図10に本実施形態におけるパケットの分類条件の構成を示す。
条件番号0〜7の分類条件の1つの分類条件は、IPv4送信元アドレス条件、IPv4宛先アドレス条件、IP上位層プロトコル条件、ポート番号条件(バイトマスク)を設定可能である。なお、各分類条件は、図10に示す8つのレジスタCN0[9:0]〜CN7[9:0](分類条件レジスタ)のそれぞれに格納されている。
IPv4送信元アドレス条件では、任意の送信元アドレス(IPv4送信元アドレスは、ドントケア)または、分類条件番号に対応する項目条件設定部103のIPv4送信元アドレスが受信パケットの項目データと一致を指定できる。
IPv4宛先アドレス条件では、任意の宛先アドレス(IPv4宛先アドレスは、ドントケア)または、対応するビットを1とした項目条件設定部103のIPv4宛先アドレスA〜Dのうちいずれかが受信パケットの項目データに一致するとき条件成立を指定できる。
IP上位層のプロトコル条件では、任意のプロトコル番号(プロトコル番号は、ドントケア)、または、条件データのプロトコル番号が一致した場合を指定できる。
ポート番号条件(バイトマスク)は、分類条件番号に対応する項目条件設定部103のポート番号と受信パケットの項目データ(IP上位層ヘッダの先頭32ビット)を比較するときに使われるバイトマスクで、1が設定されたバイトを比較対象とし、0が設定されているバイトは、ドントケアとして比較する。図11にIP上位層プロトコル番号がTCP、UDP、ICMPの場合の受信パケットデータ項目とポート番号条件(バイトマスク)の対応を示す。
ある分類条件が受信パケットに対して合致しているかどうかは、CN0[9:0]〜CN7[9:0]のそれぞれとcmp_reg[27:0]による組み合わせ論理回路によって実現可能である。なお、合致する複数の分類条件が存在した場合、最も小さい番号を選択して出力する。
分類条件判定部104は、次のようにして、イーサMAC受信部110のステータス情報の書込み時に、イーサMAC受信部110に対して分類結果情報を利用可能なように出力する。イーサMAC受信部110が受信ステータス情報を受信FIFO112に書き込むのは、イーサフレーム受信完了後である。したがって、受信データ解析部101が受信時間的な順番で最後となるポート番号(IP上位層ヘッダの先頭32ビット)を項目データとして出力した後、分類条件判定部104が項目条件比較部102の出力を取得し、そして分類条件判定部104が分類結果情報を次のイーサネットフレームの開始信号がアサートされるまで保持することにより、イーサMAC受信部110は、分類結果情報を受信パケットのステータス情報の書込みタイミングにおいて利用することができる。図12に分類結果情報の構成例とステータス情報への分類結果情報の設定例を示す。なお、分類条件判定部104は、合致する分類条件がないときには、その要因を示す要因コードをイーサMAC受信部110に出力する。合致する分類条件がないときの要因コードの構成例を図13に示す。
上記のように構成されたパケット受信装置では、パケット分類装置100が、イーサネットフレームの開始通知信号を受け取ると、受信データ解析部101は、受信データを解析するために内部状態を初期化する。また、分類条件判定部104は、比較結果情報受け取るように内部状態を初期化する。
その後、受信データ解析部101は、取得したパケットデータを解析して、項目データ、および項目種別コードを項目条件比較部102に出力する。分類条件判定部104は、項目条件比較部102の出力に対して分類を行い、イーサMAC受信部110がステータス情報の書込む際に、分類結果情報を利用可能なようにイーサMAC受信部110に出力する。イーサMAC受信部110は、受信したパケットデータのステータス情報に、この分類結果情報を含めて格納する。
これにより、CPU130は、ステータス情報内の分類結果情報を参照して取得した分類条件の番号(合致する分類条件があった場合)を用いて容易に、パケットデータを後の処理に振り分けることができる。それゆえ、本実施形態のパケット分類装置によれば、CPU130の負荷の低減が可能になる。
なお、項目条件設定部103や分類条件設定部105に対する値の設定は、パケットデータの受信や分類条件判定部104での分類動作を止めることなく行なわれるようにするのが好ましい。これにより、他の設定済み分類条件による分類動作を止めることなく、例えばAVストリームパケットを識別する条件を追加したり、停止させたりすることができる。
例えば、分類条件判定部104による分類動作実行中に分類条件の変更を可能とするために、図14に示すような制御レジスタ(エントリの有効および無効設定レジスタ)を設ける。
この制御レジスタでは、各分類条件の有効・無効、IPv4宛先アドレス項目条件の有効・無効は、0のとき無効、1のとき有効を示すものとする。また、無効と設定された分類条件は、受信パケットに対して合致せず、無効と設定されたIPv4宛先アドレス項目条件は、項目データとの比較において不一致と判定される。
変更したい項目条件に対応するビット(エントリ制御ビット)を無効に設定してから、条件データを変更することにより、条件データの書き換えが分類結果に影響を及ぼさないようにできる。
このとき、有効であったエントリ制御ビットを実際に無効に設定するのは、分類結果情報を保持している期間であるように制御し、実際に無効であるかどうかを制御レジスタの読み出し値に反映させるように制御回路を設けて、変更したい項目条件に対するエントリ制御ビットが0になったことを確認してから、項目条件を変更するものとするようにすればよい。
また、無効であったエントリ制御ビットを有効にする場合、前述のように、分類結果情報を保持している期間に行うよう制御することにより、新たに設定された条件データや分類条件は、次のパケットの始まりから評価されるので、正しい分類結果を出力することができる。
また、レジスタのビット構成やコードの構成などは、各種の構成が可能である。
また、本実施形態は、IPプロトコルとして、IPv4に対応する例を説明したが、例えば、受信データ解析部101にIPv6ヘッダに対する状態遷移を追加し、項目種別コードとしてIPv6アドレスに関するコードを追加し、項目条件設定部103にIPv6アドレスに関する条件データを追加し、比較結果の取得レジスタをIPv6アドレスに関する比較結果を含むように拡張し、分類条件レジスタにIPv6アドレス条件を設定できるように拡張することにより、IPv6プロトコルに対しても適用が可能である。
また、IPv6プロトコルに対しても適用する場合には、分類条件としてIPv4パケットを対象とするか、IPv6パケットを対象とするか、あるいは両方のパケットを対象とするかを選択するフィールドを追加してもよい。
また、同様に、IPアドレス、プロトコル番号、ポート番号以外のヘッダ項目を条件データとして追加し、分類条件で利用する構成も可能である。
本発明に係るパケット分類装置は、パケットデータを分類した結果が、分類条件に対応した値としてステータス情報に出力されるので、大量のパケットデータ(例えばAVストリーム情報用のパケットデータ)を後続の処理へ容易に振り分けできるという効果を有し、受信したパケットデータを所定の条件に応じて分類するパケット分類装置等として有用である。
本実施形態に係るパケット分類装置の構成を示すブロック図である。 パケット分類装置100とイーサMAC受信部110が、互いにやりとりする信号を示す図である。 受信されるデータ(32ビット)の構成例を示す図である。 本実施形態に係る項目種別コードを示す図である。 受信データ解析部101の状態遷移制御の仕様を示す図である。 受信データ解析部101における状態遷移やアクションの動作フローを示す図である。 本実施形態における条件データの格納仕様を示す図である。 項目条件比較部102における比較処理を示す図である。 比較結果の取得レジスタの構成を示す図である。 分類条件レジスタの構成を示す図である。 分類条件レジスタ中のポート番号条件(バイトマスク)と受信項目データとの対応を示す図である。 イーサMAC受信部110における受信ステータスへの分類結果情報の格納例を示す図である。 要因コードの構成例を示す図である。 制御レジスタの構成を示す図である。 IPv4における各種パケットヘッダのデータ構造を示す図である。 イーサネットフレームの概略を示す図である。
符号の説明
100 パケット分類装置
101 受信データ解析部
102 項目条件比較部
102a〜102b 比較回路
103 項目条件設定部
104 分類条件判定部
104a バイトマスク制御部
104b セレクタ
105 分類条件設定部
110 イーサMAC受信部
111 受信制御部
112 受信FIFO
120 ホストバス制御部
130 CPU

Claims (6)

  1. パケットデータを所定の条件に応じて分類するパケット分類装置であって、
    受信したパケットデータおよび受信ステータスを出力する受信装置が受信したパケットデータから、パケットデータを分類するための項目データを取り出す受信データ解析部と、
    前記項目データと所定の条件データとを比較して、比較結果を出力する項目条件比較部と、
    前記項目条件比較部が出力した比較結果に、前記比較結果の所定の組み合わせによってパケットデータを分類する分類条件と適合するものがあるかどうかを判定するとともに、適合した分類条件に対応した値を含む分類結果情報を、前記受信装置が前記受信ステータスの一部として書込めるように出力する分類条件判定部と、
    を備えたことを特徴とするパケット分類装置。
  2. 請求項1のパケット分類装置であって、
    前記分類条件判定部は、判定の結果、合致する分類条件がないときには、その要因を示す要因コードを含む分類結果情報を、前記受信装置が前記受信ステータスの一部として書込めるように、出力するように構成されていることを特徴とするパケット分類装置。
  3. 請求項1または請求項2のパケット分類装置であって、さらに、
    前記条件データが格納される項目条件設定部と、
    前記分類条件が格納される分類条件設定部とを備え
    前記項目条件設定部および前記分類条件設定部への値の設定は、パケットデータの受信および前記分類条件判定部で行なわれる分類動作を止めることなく行なわれることを特徴とするパケット分類装置。
  4. 請求項1から請求項3のパケット分類装置であって、
    前記分類条件には、IPv4送信元アドレス、IPv4宛先アドレス、IP上位層のプロトコル番号、およびTCPやUDPのポート番号の組み合わせを含む条件を指定できることを特徴とするパケット分類装置。
  5. 請求項1から請求項3のパケット分類装置であって、
    前記分類条件には、IPv6送信元アドレス、IPv6宛先アドレス、IP上位層のプロトコル番号、およびTCPやUDPのポート番号の組み合わせを含む条件を指定できることを特徴とするパケット分類装置。
  6. 請求項1から請求項3のパケット分類装置であって、
    前記分類条件には、IPv4パケット受信時には、IPv4送信元アドレス、IPv4宛先アドレス、IP上位層のプロトコル番号、およびTCPやUDPのポート番号の組み合わせを含む条件を指定でき、IPv6パケット受信時には、IPv6送信元アドレス、IPv6宛先アドレス、IP上位層のプロトコル番号、およびTCPやUDPのポート番号の組み合わせを含む条件を指定できることを特徴とするパケット分類装置。
JP2006010840A 2006-01-19 2006-01-19 パケット分類装置 Pending JP2007194885A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006010840A JP2007194885A (ja) 2006-01-19 2006-01-19 パケット分類装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006010840A JP2007194885A (ja) 2006-01-19 2006-01-19 パケット分類装置

Publications (1)

Publication Number Publication Date
JP2007194885A true JP2007194885A (ja) 2007-08-02

Family

ID=38450224

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006010840A Pending JP2007194885A (ja) 2006-01-19 2006-01-19 パケット分類装置

Country Status (1)

Country Link
JP (1) JP2007194885A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010142081A1 (zh) * 2009-06-12 2010-12-16 华为技术有限公司 一种传送视频报文的方法、路由器设备及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010142081A1 (zh) * 2009-06-12 2010-12-16 华为技术有限公司 一种传送视频报文的方法、路由器设备及系统

Similar Documents

Publication Publication Date Title
US7774497B2 (en) Apparatus and method for classifier identification
KR100647949B1 (ko) 네트워크 패킷 전달 방법 및 패킷 캡슐화 - 캡슐 해제 방법과 컴퓨터 판독 가능한 매체 및 프로세서
US8681819B2 (en) Programmable multifield parser packet
US20080005352A1 (en) Flexible and extensible receive side scaling
JP2006325054A (ja) Tcp/ip受信処理回路及びそれを具備する半導体集積回路
US20120163392A1 (en) Packet processing apparatus and method
US20040156368A1 (en) Frame alteration logic for network processors
WO2023093334A1 (zh) 用于执行原子操作的系统、原子操作方法及装置
US7664898B2 (en) Method and system for efficient framing on addressed buses
WO2020087400A1 (zh) 一种报头解析装置及方法
CN115733832A (zh) 计算设备、报文接收方法、可编程网卡及存储介质
JP4229810B2 (ja) 通信試験装置
JP2007274056A (ja) データグラム再組立装置
JP2007194885A (ja) パケット分類装置
US8625619B2 (en) Domain gateway control system and method thereof
EP1067769A2 (en) Method and apparatus for filtering data streams
US7158529B2 (en) Device for data stream decoding
US6694198B2 (en) Control system, control device and control method
US5428650A (en) Method and device for selecting information usable by a local unit connected to a digital transmission system
WO2021095179A1 (ja) 振り分け装置、振り分け方法、振り分けプログラム
US8643655B2 (en) Method and system for communicating with external device through processing unit in graphics system
JP4275059B2 (ja) パケット通信方法及びシステム並びにその装置
JP4685368B2 (ja) データを処理する装置、トレースデータを発生する方法、及びトレースデータを分析する装置
US20070140281A1 (en) Network communication apparatus with shared buffers
US20030200324A1 (en) Apparatus and method for protocol processing, and apparatus and method for traffic processing