(57)【要約】【課題】ルーティング処理に係るプロセッサの負荷を軽減できるルーティング処理装置及びパケット種類を識別するパケット種類識別装置を提供する。【解決手段】本発明のルーティング処理装置は、パケット種別対象の各パケットフォーマット上に設定された特定情報を少なくとも１以上含む範囲の情報を抽出するパケット情報抽出手段と、抽出された範囲の情報のうち１又は複数の位置の情報に基づいて、パケット種類を判定するパケット種類判定手段と、その判定結果に基づいてヘッダ情報を作成してパケットに付与するヘッダ付与手段と、そのヘッダ情報に基づいて、パケットを振り分けるパケット振分け手段と、パケット種類毎にルーティング処理するルーティング処理手段とを備える。【選択図】　　　図１
2004112159.tif 000002
【特許請求の範囲】
【請求項１】
１又は複数種類のパケットフォーマットを種別して、各パケット種類毎にルーティング処理を行なうルーティング処理装置であって、
パケット種別対象の各パケットフォーマット上に設定された特定情報を少なくとも１以上含む範囲の情報を抽出するパケット情報抽出手段と、
上記抽出された範囲の情報のうち、１又は複数の位置の情報に基づいて、当該受信パケットのパケット種類を判定するパケット種類判定手段と、
上記パケット種類判定手段の判定結果に基づいて、当該受信パケットのパケット種類に応じたヘッダ情報を作成し、そのヘッダ情報を当該受信パケットに付与するヘッダ付与手段と、
当該受信パケットに付与された上記ヘッダ情報に基づいて、当該受信パケットを振り分けるパケット振分け手段と、
上記パケット振分け手段により振り分けられた当該受信パケットを、パケット種類毎にルーティング処理するルーティング処理手段と
を備えることを特徴とするルーティング処理装置。
【請求項２】
パケット種類と、ルーティング処理を行うルーティング処理手段とを対応付けたルーティング処理設定テーブルを備え、
上記ヘッダ付与手段は、上記パケット種類判定手段の判定結果と、上記ルーティング処理設定テーブルとに基づいて、ルーティング処理手段を指定するヘッダ情報を作成して付与することを特徴とする請求項１に記載のルーティング処理装置。
【請求項３】
上記ヘッダ付与手段は、当該受信パケットがルーティング処理対象でないと判断した場合、廃棄指令情報をもヘッダ情報に付与し、上記パケット振分け手段が、その廃棄指令情報に基づいて当該受信パケットを廃棄することを特徴とする請求項１又は２に記載のルーティング処理装置。
【請求項４】
上記抽出された範囲の情報のうち１又は複数の位置の範囲は可変であることを特徴とする請求項１〜３に記載のルーティング処理装置。
【請求項５】
１又は複数種類のパケットフォーマットを識別するパケット種類識別装置であって、
パケット種別対象の各パケットフォーマット上に設定された特定情報を少なくとも１以上含む範囲の情報を抽出するパケット情報抽出手段と、
上記抽出された範囲の情報のうち、１又は複数の位置の特定情報に基づいて、当該受信パケットのパケット種類を判定するパケット種類判定手段と
を備えることを特徴とするパケット種類識別装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ルーティング処理装置及びパケット種類識別装置に関し、例えば、ネットワークにおいて、通信パケットに対するルーティング処理に係るプロセッサの負荷を分散させる装置、及び、パケットフォーマットの違いに基づいてパケット種別をする装置に適用し得るものである。
【０００２】
【従来の技術】
【０００３】
【特許文献１】特開２０００−８３０５５号公報
【０００４】
【特許文献２】特開２０００−３４９７７０号公報
【０００５】
【特許文献３】特開２００２−１１１７１２号公報
従来、ネットワークにおいて、通信パケットについて目的の宛先までの最適な経路を選択して、その経路を通じて目的の宛先に配信するルーティング処理が適用されている。
【０００６】
このルーティング処理には、通信パケットの種類毎に分類するパケット分類や、通信パケットの送受信アドレスやプロトコルや識別子等に基づいて、通信パケットを通過させるか廃棄するかを判断するフィルタリングや、通信パケットの送信先アドレスに基づいて適切な選択経路に送り出すフォワーディング等の処理が必要であり、一般的に、これらの処理は、汎用あるいは専用のプロセッサによって一元的に行われている。
【０００７】
【発明が解決しようとする課題】
しかしながら、近年、ネットワークにおける回線速度が飛躍的に向上しているが、ルーティング処理を行うプロセッサの処理速度の向上がそれに追随していないため、１個のプロセッサの一元的なルーティング処理に大きな負担が生じている。
【０００８】
また、ルータは、ネットワークの高いセキュリティを補償するための不正アクセス防止装置（例えばファイヤウォール等）や、ネットワークの負荷分散装置等の高機能な処理を付加させることが求められており、プロセッサに求められる処理が増大してきている。
【０００９】
従って、プロセッサが行なうルーティング処理に係る負荷を軽減させることが大きな課題となっている。
【００１０】
そのため、ネットワークにおけるルーティング処理に係るプロセッサの負荷を軽減することができるルーティング処理装置が求められている。また、ネットワーク上には複数のフォーマットのパケットが混在するため、パケットフォーマットに基づいてパケット種類を容易に識別できるパケット種類識別装置が求められている。
【００１１】
【課題を解決するための手段】
かかる課題を解決するために、第１の本発明のルーティング処理装置は、１又は複数種類のパケットフォーマットを種別して、各パケット種類毎にルーティング処理を行なうルーティング処理装置であって、パケット種別対象の各パケットフォーマット上に設定された特定情報を少なくとも１以上含む範囲の情報を抽出するパケット情報抽出手段と、抽出された範囲の情報のうち、１又は複数の位置の情報に基づいて、当該受信パケットのパケット種類を判定するパケット種類判定手段と、パケット種類判定手段の判定結果に基づいて、当該受信パケットのパケット種類に応じたヘッダ情報を作成し、そのヘッダ情報を当該受信パケットに付与するヘッダ付与手段と、当該受信パケットに付与されたヘッダ情報に基づいて、当該受信パケットを振り分けるパケット振分け手段と、パケット振分け手段により振り分けられた当該受信パケットを、パケット種類毎にルーティング処理するルーティング処理手段とを備えることを特徴とする。
【００１２】
また、第２の本発明のパケット種類識別装置は、１又は複数種類のパケットフォーマットを識別するパケット種類識別装置であって、パケット種別対象の各パケットフォーマット上に設定された特定情報を少なくとも１以上含む範囲の情報を抽出するパケット情報抽出手段と、抽出された範囲の情報のうち、１又は複数の位置の特定情報に基づいて、当該受信パケットのパケット種類を判定するパケット種類判定手段とを備えることを特徴とする。
【００１３】
【発明の実施の形態】
（Ａ）実施形態
以下、本発明のルーティング処理装置の実施形態について図面を参照して説明する。
【００１４】
本実施形態のルーティング処理装置は、コネクションレス型ネットワークに適用した場合であり、このコネクションレス型ネットワークの例として、少なくともＥｔｈｅｒｎｅｔ（登録商標）とＩＥＥＥ（米国電気電子技術者協会）８０２．３とが伝送可能なネットワークとする。
【００１５】
もちろん、ネットワークは、上記のようなネットワークに限定されず、パケットフォーマットがそれぞれ異なるパケットが伝送しうるネットワークに、広く適用することができる。
【００１６】
（Ａ−１）実施形態の構成
図１は、本実施形態のルーティング処理装置１の内部構成を示したブロック図である。図１に示すように、ルーティング処理装置１は、パケット識別部１００と、パケット処理部２００と、回線インターフェース部３００とを備える。
【００１７】
また、パケット識別部１００は、パケット情報抽出部１１０と、パケット判定部１２０と、設定テーブル１３０と、ヘッダ付与部１４０とを有し、また、パケット処理部２００は、パケット振分部２１０と、複数の仮想ルータ（ＶＲ：Ｖｉｒｔｕａｌ　Ｒｏｕｔｅｒ）２２０−１〜２２０−ｎとを有する。
【００１８】
パケット識別部１００は、回線インターフェース部３００から受信パケットを受け取り、その受信パケットから抽出したパケット情報に基づいてパケット種類を判定し、そのパケット種類に応じて作成したヘッダを付与して、パケット処理部２００に与えるものである。
【００１９】
このような機能を備えるパケット識別部１００の内部構成について以下で説明する。
【００２０】
パケット情報抽出部１１０は、回線インターフェース部３００から受信パケットを受け取り、その受信パケットのうち特定フィールドを含む所定範囲のフィールドを抽出して、その抽出フィールドをパケット判定部１２０に与えるものである。
【００２１】
この抽出フィールドは、種別対象のパケット間で、パケット種類を一意に特定するために必要なフィールドである特定フィールドを少なくとも含む共通の所定範囲のフィールドを意味し、抽出フィールドの抽出範囲は、パケット種別対象となるパケット種類のパケットフォーマットに応じて変化させることができる。
【００２２】
例えば、本実施形態におけるルーティング処理装置１が、タグパケットとアンタグパケットとのパケット種類と、ＩＰｖ４対応パケットとＩＰｖ６対応パケットとのパケット種類とを種別できるように、抽出フィールドを設定する場合について説明する。
【００２３】
ここで、タグパケットとは、ＩＥＥＥ８０２．１Ｑタグを有するパケットであり、ＩＥＥＥ８０２．１Ｑタグとは、ＭＡＣ（Ｍｅｄｉａ　Ａｃｃｅｓｓ　Ｃｏｎｔｒｏｌ）フレームを拡張して、ＶＬＡＮ（仮想ＬＡＮ：Ｖｉｒｔｕａｌ　ＬＡＮ）情報を付加するために設けられたＶＬＡＮタグ（図２の「Ｔａｇ」に対応する。）をいう。また、アンタグパケットとは、このようなタグを有しないパケットである。
【００２４】
図２は、本実施形態に係るネットワークに伝送しうるパケットのパケット種別のフォーマット例を示したものである。このようなパケット種別を行なう上で、それぞれのパケットフォーマット例は、図２（Ａ）〜（Ｄ）に示すようなものである。
【００２５】
図２（Ａ）は、アンタグパケットのＩＰｖ６対応パケット（アンタグＥｔｈｅｒＶ２パケット）である。図２（Ｂ）は、アンタグパケットのＩＰｖ４対応パケット（アンタグＩＥＥＥ８０２．３パケット）である。図２（Ｃ）は、タグパケットのＩＰｖ６対応パケット（タグＥｔｈｅｒパケット）である。図２（Ｄ）は、タグパケットのＩＰｖ４パケット（タグＩＥＥＥ８０２．３パケット）である。
【００２６】
ここで、図２に示すように、アンタグＥｔｈｅｒＶ２パケットは、「ＤｓｔＭＡＣ」フィールドと、「ＳｒｃＭＡＣ」フィールドと、「Ｔｙｐｅ」フィールドと、「ＩＰＤａｔａ」フィールドと、「ＣＲＣ」フィールドとを有しており、アンタグＩＥＥＥ８０２．３パケットは、「ＤｓｔＭＡＣ」フィールドと、「ＳｒｃＭＡＣ」フィールドと、「Ｌｅｎｇｔｈ」フィールドと、「ＤＳＡＰｅｔｃ」フィールドと、「Ｔｙｐｅ」フィールドと、「ＩＰＤａｔａ」フィールドと、「ＣＲＣ」フィールドとを有しており、タグＥｔｈｅｒＶ２パケットは、「ＤｓｔＭＡＣ」フィールドと、「ＳｒｃＭＡＣ」フィールドと、「Ｔａｇ」フィールドと、「Ｔｙｐｅ」フィールドと、「ＩＰＤａｔａ」フィールドと、「ＣＲＣ」フィールドとを有しており、タグＩＥＥＥ８０２．３パケットは、「ＤｓｔＭＡＣ」フィールドと、「ＳｒｃＭＡＣ」フィールドと、「Ｔａｇ」フィールドと、「Ｌｅｎｇｔｈ」フィールドと、「ＤＳＡＰｅｔｃ」フィールドと、「Ｔｙｐｅ」フィールドと、「ＩＰＤａｔａ」フィールドと、「ＣＲＣ」フィールドとを有している。
【００２７】
なお、図２において、「ＤｓｔＭＡＣ」はあて先ＭＡＣアドレス、「ＳｒｃＭＡＣ」は送信元ＭＡＣアドレス、「Ｔｙｐｅ」はイーサネット（登録商標）タイプ、「Ｌｅｎｇｔｈ」はパケット長（ＩＥＥＥ８０２．３パケット時）、「Ｔａｇ」はＩＥＥＥ８０２．１Ｑタグ、「ＤＳＡＰｅｔｃ」は、ＤＳＡＰ、ＳＳＡＰ、ＣＴＲＬ、ベンダコード、「ＩＰＤａｔａ」はＩＰパケットデータ、「ＣＲＣ」は巡回冗長符号を示している。
【００２８】
上記のパケット種別を行なう上で、ＩＰｖ４フォーマットとＩＰｖ６フォーマットとの違いは、「Ｔｙｐｅ」フィールドの値により種別することができ、「Ｔｙｐｅ」フィールドの値が、「０ｘ８６ＤＤ」であるときはＩＰｖ６対応パケットであり、「０ｘ０８００」であるときはＩＰｖ４対応パケットである。
【００２９】
また、タグパケットとアンタグパケットとの違いは、「Ｔａｇ」フィールドを有しているか否かの点である。
【００３０】
このような点を考慮すると、図２における４種類の各パケット種類の特定フィールドは、図中において太線で囲んだフィールドであり、これら各特定フィールドを含んだ所定範囲を抽出フィールド（図中の点線で囲んだ区間）とする。
【００３１】
具体的には、この抽出フィールドは、パケットの先頭の１３オクテット目から２５オクテット目までの、１３オクテット分のデータが該当する。
【００３２】
もちろん、他のパケット種類を区別する場合には、その区別の対象となるパケットフォーマットとの関係性を考慮して、抽出フィールドの抽出範囲を決定することができる。また、その抽出範囲を適宜変更することもできる。
【００３３】
パケット判定部１２０は、パケット情報抽出部１１０が抽出した抽出フィールドを受け取り、その抽出フィールドのうち所定の位置の「値」を参照し、その参照結果に基づいて、当該パケットのパケット種類を判定するものである。すなわち、所定位置のフィールドの「値」に基づいて、パケット種類を判定するものである。
【００３４】
例えば、図２（Ａ）〜（Ｄ）において、パケット判定部１２０は、１３オクテットの抽出フィールドについて、それぞれのパケット種類の特定フィールドが検索できるような位置で、各パケットの特定フィールドの「値」を参照して、パケット種類を判定する。本実施形態のパケット判定部１２０は、抽出フィールドの先頭から時間的に固定的な位置の「値」を参照するように設定することができる。これにより、パケット判定部１２０（ひいてはパケット識別部１００）の機能設計をも容易にすることができる。
【００３５】
また、パケット判定部１２０がフィールドを参照する位置については、種別対象のパケット種類のフォーマットに応じて変化させることもでき、さらに、その参照位置の箇所数は１箇所に限られず複数箇所であってもよい。なお、パケット判定部１２０の参照位置の数は、パケット種別を判定するために最低限必要な数にすることが望ましい。
【００３６】
図３は、パケット判定部１２０が参照するフィールド位置を説明する説明図である。図３に示すように、本実施形態でのパケット判定部１２０は、抽出フィールドのうち、Ａ又はＢの位置でフィールドの「値」を参照する。
【００３７】
具体的には、パケット判定部１２０は、抽出された１３オクテット分の抽出フィールドについて、先頭から２オクテット分のフィールドの「値」と、先頭の５オクテット目から２オクテット分のフィールドの「値」とを参照する。
【００３８】
パケット判定部１２０が、この抽出フィールドのＢの位置を参照するときは、抽出フィールドのＡの位置が「Ｔａｇ」に相当する「値」であると判断したときであり、抽出フィールドのＡの位置が「Ｔａｇ」に相当する「値」でないと判断したときは、抽出フィールドのＢの位置を参照しない。
【００３９】
すなわち、抽出フィールドのＡは、タグパケットであるかアンタグパケットであるかを種別するためであって、かつ、アンタグパケットである場合に、ＩＰｖ４対応パケットであるかＩＰｖ６対応パケットであるかを種別するための参照位置である。
【００４０】
また、抽出フィールドのＢは、タグパケットである場合に、ＩＰｖ４対応パケットであるかＩＰｖ６対応パケットであるかを種別するための参照位置である。
【００４１】
このフィールドの「値」は１６進数表示された値であり、一般に「０ｘ８１００」はＩＥＥＥ８０２．１Ｑタグ（すなわち、ここでいう「Ｔａｇ」）を定義づける値である。なお、一般に、ＩＥＥＥ８０２．３フレームにおいて、「０ｘ０〜０ｘ０５ＤＣ」は、「Ｌｅｎｇｔｈ」フィールドを定義づける値である。
【００４２】
また、パケット判定部１２０は、上述したように、ＩＰｖ４対応パケットであるか又はＩＰｖ６パケットであるかを、各パケットフォーマットの「Ｔｙｐｅ」フィールドの値に基づいて判定し（以下「Ｔｙｐｅ」判定という。）、その「Ｔｙｐｅ」フィールドの値が、「０ｘ０８００」であるときＩＰｖ４対応パケットとし、「０ｘ８６ＤＤ」であるときＩＰｖ６対応パケットとし、また「上記以外の値」であるときそれ以外の対応パケットであると判定する。
【００４３】
以下では、本実施形態におけるパケット判定部１２０が行なうパケット種別について図３を参照して具体的に説明する。
【００４４】
抽出フィールドのＡの位置の値が、「Ｌｅｎｇｔｈ（０ｘ０〜０ｘ０５ＤＣ）」であるとパケット判定部１２０が判断したとき、パケット判定部１２０は、抽出された１３オクテットの抽出フィールドの先頭から７オクテット分オフセット（すなわち更に５オクテット分オフセット）したフィールド位置の「値」を参照し、その値をパケット種別のための「Ｔｙｐｅ」判定（すなわちＩＰｖ４対応であるかＩＰｖ６対応であるか又はそれ以外であるかの判定）に用いる。そして、この値が「０ｘ０８００（ＩＰｖ４）」である場合、当該パケットが図２の（Ｂ）に相当するアンタグパケットのＩＰｖ４対応パケットであると判定する。
【００４５】
また、抽出フィールドのＡの位置の値が、「Ｌｅｎｇｔｈ（０ｘ０〜０ｘ０５ＤＣ）」以外の値であるとパケット判定部１２０が判断したとき、その抽出フィールドのＡの位置の値をパケット種別のための「Ｔｙｐｅ」判定（すなわちＩＰｖ４対応であるかＩＰｖ６対応であるか又はそれ以外であるかの判定）に用いる。そして、このＡの位置の値が「０ｘ８６ＤＤ（ＩＰｖ６）」である場合、当該パケットが図２の（Ａ）に相当するアンタグパケットのＩＰｖ６対応パケットであると判定する。
【００４６】
また、抽出フィールドのＡの位置の値が、「Ｔａｇ（０ｘ８１００）」であるとパケット判定部１２０が判断したとき、パケット判定部１２０は、抽出フィールドのＢの位置を参照して、そのＢの位置の値が、「Ｌｅｎｇｔｈ（０ｘ０〜０ｘ０５ＤＣ）」の値であれば、抽出された１３オクテットの抽出フィールドの先頭から１１オクテット分オフセットしたフィールド位置の「値」をパケット種別のための「Ｔｙｐｅ」判定（すなわちＩＰｖ４対応であるかＩＰｖ６対応であるか又はそれ以外であるかの判定）に用いる。そして、この値が「０ｘ０８００（ＩＰｖ４）」判定した結果、当該パケットが図２の（Ｄ）に相当するタグパケットのＩＰｖ４パケットであると判定する。
【００４７】
また、抽出フィールドのＡの位置の値が、「Ｔａｇ（０ｘ８１００）」であるとパケット判定部１２０が判断して、更に抽出フィールドのＢの位置の値が、「Ｌｅｎｇｔｈ（０ｘ０〜０ｘ０５ＤＣ）」以外の値であれば、そのＢの位置の値をパケット種別のための「Ｔｙｐｅ」判定（すなわちＩＰｖ４であるかＩＰｖ６であるか又はそれ以外であるかの判定）に用いる。そして、この値が「０ｘ８６ＤＤ（ＩＰｖ６）」である場合、当該パケットが図２の（Ｃ）に相当するタグパケットのＩＰｖ６パケットであると判定する。
【００４８】
このようにして、パケット判定部１２０は、各パケット種類を判定して、その判定結果をヘッダ付与部１４０へ与える。
【００４９】
ヘッダ付与部１４０は、パケット判定部１２０からのパケット判定結果に基づいて、ルーティング処理を行なう仮想ルータ２２０−１〜２２０−ｎを指定する（又はパケット種類を特定する）ヘッダを当該パケットに付与するものである。
【００５０】
ヘッダ付与部１４０は、パケット判定部１２０からパケット種類の判定結果を受け取り、その判定結果と後述する設定テーブル１３０とを対応させて、その設定テーブル１３０に設定されている仮想ルータ２２０−１〜２２０−ｎの値（以下「ＶＲ値」という。）を設定テーブル１３０から読み出して、ヘッダとして付与する。
【００５１】
設定テーブル１３０は、パケットのルーティング処理を行う仮想ルータ２２０−１〜２２０−ｎを特定するためのテーブルであり、アンタグパケット用設定テーブルとタグパケット用設定テーブルとを有する。
【００５２】
図４は、設定テーブル１３０のテーブル例を示したものである。図４に示すように、図４（Ａ）のアンタグパケット用設定テーブルと、図４（Ｂ）のタグパケット用設定テーブルとが設定されている。
【００５３】
なお、図４において、「Ｖ６ＥＮ」はＩＰｖ６対応パケットについてＶＲ値の有効又は無効を決定する有効／無効表示ビットを示しており、「Ｖ６ＶＲ値」はＩＰｖ６対応パケットに対するＶＲ値を示している。
【００５４】
つまり、この「Ｖ６ＥＮ」が無効である場合（例えば「０」を付与）、後述するパケット振分部２１０は、この無効ビットを確認した後に、当該パケットを廃棄する。また、この「Ｖ６ＥＮ」が有効である場合（例えば「１」を付与）、パケット振分部２１０は、この有効ビットを確認した後に、「Ｖ６ＶＲ値」に基づいて、当該パケットを対応する仮想ルータ２２０−１〜２２０−ｎに振り分ける。
【００５５】
なお、本実施形態では有効ビットを「１」とし、無効ビットを「０」としたが、有効／無効の判断ができればよいので表示ビット「１」、「０」が逆であってもよい。
【００５６】
また、「Ｖ４ＥＮ」、「Ｖ４ＶＲ値」は、ＩＰｖ４対応パケットに関するものであり、「ＥＬＥＮ」、「ＥＬＶＲ値」は、その他のパケットに関するものであって、「Ｖ６ＥＮ」、「Ｖ６ＶＲ値」にそれぞれと対応するものである。
【００５７】
また、本実施形態では、有効／無効表示ビットを各パケット種別に応じて設定したが、この各パケット種別毎の有効／無効表示ビットに代えて、すべてのパケットに共通の有効／無効表示ビットのみを設定したり、又はその各パケット種別毎の有効／無効表示ビットに、すべてのパケットに共通の有効／無効表示ビットを追加して設定するにしてもよい。
【００５８】
ヘッダ付与部１４０は、パケット判定部１２０からの判定結果が、アンタグパケットである場合は設定テーブル１３０のアンタグパケット用設定テーブル（図４（Ａ））を用いて、タグパケットである場合は設定テーブル１３０のタグパケット用設定テーブル（図４（Ｂ））を用いる。
【００５９】
ヘッダ付与部１４０は、アンタグパケットがＩＰｖ６対応パケットである場合、アンタグパケット用設定テーブル（図４（Ａ））の「Ｖ６ＥＮ」及び「Ｖ６ＶＲ値」を読み出して、それに基づいてヘッダを作成して当該パケットに付与する。
【００６０】
ここで、図５は、ヘッダ付与部１４０が付与するヘッダのフォーマット例を示す。図５に示すように、ヘッダは、「ＶＲＥＮ」フィールドと、「ＶＲ」フィールドとを有しており、「ＶＲＥＮ」はＶＲ値の有効／無効表示ビットを示し、「ＶＲ」はＶＲ値を示す。この「ＶＲＥＮ」及び「ＶＲ」は、設定テーブルから読み出した値にそれぞれ対応するものである。
【００６１】
また、ヘッダ付与部１４０は、タグパケットである場合、その「Ｔａｇ」に含まれる「Ｔａｇ　ＩＤ」に対応するタグパケット用設定テーブル（図４（Ｂ））から対応する値を読み出し、それに基づいてヘッダを作成して当該パケットに付与する。
【００６２】
ここで、図６は、「Ｔａｇ」のフォーマット例を示したものである。図６に示すように、「Ｔａｇ」は、「Ｔａｇ　Ｐｒｏｔｏｃｏｌ　ＩＤ」フィールドと、「Ｐｒｉｏｒｉｔｙ」フィールドと、「ＣＦＩ」フィールドと、「Ｔａｇ　ＩＤ」フィールドとを有している。なお、「Ｔａｇ　Ｐｒｏｔｏｃｏｌ　ＩＤ」はタグプロトコルＩＤ（すなわち「０ｘ８１００」）を示し、「Ｐｒｉｏｒｉｔｙ」は優先表示を示し、「ＣＦＩ」は標準フォーマット表示を示し、「Ｔａｇ　ＩＤ」はタグＩＤを示す。
【００６３】
従って、パケット判定部１２０は、「Ｔａｇ　Ｐｒｏｔｏｃｏｌ　ＩＤ」を参照して、タグパケットであるか否かを判定し、ヘッダ付与部１４０は、「ＴａｇＩＤ」を参照して、設定テーブル１３０を選択する。なお、図６の太線で囲んだフィールドは、本実施形態のルーティング処理装置１が参照するフィールドを示している。
【００６４】
この「Ｔａｇ　ＩＤ」は、０〜４０９５の４０９６個のＩＤがあり、タグ用設定テーブルも、この「Ｔａｇ　ＩＤ」の数に応じた４０９６個の設定テーブルがある。
【００６５】
従って、ヘッダ付与部１４０は、「Ｔａｇ　ＩＤ」を確認して、その「ＴａｇＩＤ」に対応するタグパケット用設定テーブルに設定されている値に基づいてヘッダを作成する。ヘッダの作成及び付与は、アンタグパケットの場合と同様である。
【００６６】
以上のようにして、パケット種類に応じてルーティング処理する仮想ルータ（ＶＲ値）２２０−１〜２２０−ｎを指定したヘッダを付与する。
【００６７】
パケット処理部２００は、パケット種類毎に応じてルーティング処理をするものである。パケット処理部２００は、パケット振分部２１０と、仮想ルータ２２０−１〜２２０−ｎとを有する。なお、図１において、各仮想ルータ２２０−１〜２２０−ｎは、物理的にｎ個の仮想ルータが設置されているものとして説明するが、パケット種類毎にルーティング処理をできればよく、必ずしも物理的に設置されていなくてもよい。
【００６８】
パケット振分部２１０は、ヘッダ付与部１４０からヘッダを付与されたパケットを受け取り、そのヘッダに基づいてパケットを対応する仮想ルータ２２０−１〜２２０−ｎに振り分けるものである。パケット振分部２１０は、ヘッダに含まれる「ＶＲＥＮ」に基づいて有効か無効かを確認し、無効である場合はそのパケットを廃棄処理する。また、有効である場合は、そのパケットを「ＶＲ」のＶＲ値に対応する仮想ルータ２２０−１〜２２０−ｎに振り分ける。
【００６９】
また、例えば、すべてのパケットに共通の有効／無効表示ビットがヘッダに付与されている場合、パケット振分部２１０は、その共通の有効／無効表示ビットを確認し、無効であるときに、パケット種類に限らず廃棄処理をするようにしてもよい。
【００７０】
仮想ルータ２２０−１〜２２０−ｎは、パケット種類に応じてルーティング処理をするものである。仮想ルータ２２０−１〜２２０−ｎは、１個のプロセッサがパケットの種類毎にルーティング処理を行う複数のルータを仮想的に設置したルータである。各仮想ルータ２２０−１〜２２０−ｎは、パケット種類に応じて特化したルーティング処理を行うものである。仮想ルータ２２０−１〜２２０−ｎは、ルーティング処理を施してから、パケットを回線インターフェース部３００へ与える。
【００７１】
（Ａ−２）実施形態の動作
次に、本実施形態のルーティング処理装置の動作について、図７を参照して説明する。
【００７２】
回線インターフェース部３００に到着した受信パケットは、パケット情報抽出部１１０に与えられる。
【００７３】
受信されたパケットは、パケット情報抽出部１１０によって、予め設定された範囲のフィールドが抽出され、その抽出された抽出フィールドは、パケット判定部１２０に与えられる。
【００７４】
抽出された抽出フィールドは、パケット判定部１２０において、予め定められた所定位置を参照されて、その所定位置に特定フィールドがあるか否かが確認される。
【００７５】
このパケット判定部１２０が抽出フィールドに対して参照する所定位置は、パケット種別対象のパケットフィールドに応じて異なり、種別対象の特定フィールドを確認できる位置である。
【００７６】
このパケット種類の種別方法について、図３及び図７を参照して説明する。
【００７７】
図３において、まず、パケット判定部１２０は、抽出フィールドの先頭から２オクテットまでに位置する（図３におけるＡの位置）フィールドの値を参照する（Ｓ１）。
【００７８】
この抽出フィールドのＡの値は、タグパケットであるか又はアンタグパケットであるかを判定するためのものであり、かつ、アンタグパケットである場合にＩＰｖ４対応パケットであるか又はＩＰｖ６対応パケットであるかを判定するためのものである。
【００７９】
この抽出フィールドのＡの値が、「０ｘ８１００」である場合には、「Ｔａｇ」フィールドを有するパケットであると判断する（Ｓ３）。
【００８０】
また、この抽出フィールドのＡの値が、「０ｘ０〜０ｘ０５ＤＣ」である場合には、「Ｌｅｎｇｔｈ」フィールドを有するパケットであると判断する（Ｓ２）。
【００８１】
このように、抽出フィールドのＡの値が「（０ｘ０〜０ｘ０５ＤＣ（Ｌｅｎｇｔｈ）」に相当するとき、その抽出フィールドの先頭からの７オクテット分オフセットして、そこに位置するフィールドの値を参照する（Ｓ５）。これは、アンタグＩＰｖ４対応パケットであるかアンタグＩＰｖ６パケットであるか、又は、それ以外のパケットであるかを判定するためである。なお、ここでは、説明便宜のため、ＩＰｖ４対応パケットであるか又はＩＰｖ６パケットであるかを判定するものとして説明する。
【００８２】
そして、その７オクテット分オフセットした位置の値を「Ｔｙｐｅ」判定をして、アンタグＩＰｖ４対応パケットであるか又はアンタグＩＰｖ６対応パケット判定であるかを判定する（Ｓ５）。
【００８３】
さらに、抽出フィールドのＡの値が、「０ｘ８１００（Ｔａｇ）」でも、「０ｘ０〜０ｘ０５ＤＣ（Ｌｅｎｇｔｈ）」でもない場合（Ｓ４）には、その抽出フィールドのＡの値を「Ｔｙｐｅ」判定し、アンタグＩＰｖ６パケットであるかアンタグＩＰｖ６対応パケットであるかを判定する（Ｓ１１）。
【００８４】
次に、上記のようにして、抽出フィールドのＡの値が「０ｘ８１００（Ｔａｇ）」に相当する場合（Ｓ３）、さらに、抽出フィールドの先頭からの５オクテット目から２オクテットまでのフィールドの値を参照する（Ｓ６）。
【００８５】
このＢの値が「０ｘ０〜０ｘ０５ＤＣ（Ｌｅｎｇｔｈ）」に相当する場合、（Ｓ７）、抽出フィールドの先頭からの１１オクテット分オフセットし、そこに位置するフィールドの値を参照する（Ｓ８）。これは、タグＩＰｖ４対応パケットであるか、又は、タグＩＰｖ６パケットであるかを判定するためである。
【００８６】
そして、その１１オクテット分オフセットした位置の値を「Ｔｙｐｅ」判定して、タグＩＰｖ４対応パケットであるかをタグＩＰｖ６対応パケットであるかを判定する（Ｓ８）。
【００８７】
また、抽出フィールドのＢの値が、「０ｘ０〜０ｘ０５ＤＣ（Ｌｅｎｇｔｈ）」に相当する値でない場合には、そのＢの値を「Ｔｙｐｅ」判定して、タグＩＰｖ４パケットであるかタグＩＰｖ６対応パケットであるかを判定する（Ｓ１０）。
【００８８】
以上のようにして、パケット判定部１２０によって、少なくとも４種類のパケットを種別できる。
【００８９】
パケット種類が種別されると、パケット判定部１２０からの判定結果が、ヘッダ付与部１４０に与えられ、パケット付与部１４０において、そのパケット種類の判定結果に応じたヘッダが作成される。
【００９０】
例えば、パケット種類の判定結果がアンタグパケットである場合、ヘッダ付与部１４０は、設定テーブル１３０のアンタグ用設定テーブルを用いて、当該パケットがＩＰｖ４対応であるか又はＩＰｖ６対応であるかによって、そのアンタグ用設定テーブルに設定されている「ＶＲ値」と「有効／無効表示ビット」とを読み出してヘッダを作成する。
【００９１】
また、パケット種類の判定結果がタグパケットである場合、ヘッダ付与部１４０は、設定テーブル１３０のタグ用設定テーブルを用いて、当該パケットの「Ｔａｇ」に含まれている「Ｔａｇ　ＩＤ」に対応するタグ用設定テーブルを選択し、そのタグ用設定テーブルに設定されている「ＶＲ値」と「有効／無効表示ビット」とを読み出してヘッダを作成する。
【００９２】
このようにして作成されたヘッダは当該パケットに付与され、そのヘッダを付与されたパケットはパケット振分部２１０に与えられる。
【００９３】
ヘッダを付与されたパケットは、パケット振分部２１０によって、そのヘッダ情報に基づいて判定されたパケット種類毎に振り分けられ、パケット種類毎にルーティング処理をする仮想ルータ２２０−１〜２２０−ｎに与えられる。
【００９４】
パケット振分部２１０によってパケット種類毎に振り分けられたパケットは、対応する仮想ルータ２２０−１〜２２０−ｎによって、パケット種類に応じた特化したルーティング処理が行われ、回線インターフェース部３００を介して伝送される。
【００９５】
（Ａ−３）実施形態の効果
以上のように、本実施形態によれば、パケット種類に応じたヘッダを作成・付与するパケット識別部１００を備えることから、そのヘッダに基づいてパケット種類毎に特化したルーティング処理をする仮想ルータを、１個のプロセッサが制御することができるので、従来のルータのように、１個のプロセッサがパケット識別等の処理を行う必要がなく、従来と比較して負荷の少ないルーティング処理をすることができる。
【００９６】
また、本実施形態によれば、各仮想ルータ２２０−１〜２２０−ｎが、各パケット種類用のルーティング処理を特化して行えるので、ルーティング処理速度の向上を図ることが可能となる。
【００９７】
さらに、各仮想ルータ２２０−１〜２２０−ｎは、各パケット種類毎に行なうものとして限定することができるので、各仮想ルータ２２０−１〜２２０−ｎの機能設計が容易になる。
【００９８】
（Ｂ）他の実施形態
上記実施形態は、タグパケットとアンタグパケットとが混在するネットワークと、ＩＰｖ４対応パケットとＩＰｖ６対応パケットとが混在するネットワークとが組み合わされたネットワークを例として説明したが、ルーティング処理装置１に到着しうる複数のパケットのそれぞれのフォーマットが、他のパケットとの関係で区別性のある特定フィールドを有するものであれば、複数のネットワークが組み合わされたネットワークについても広く適用できる。
【００９９】
また、上記実施形態は、有線ＬＡＮについて説明したが、各パケット種類間で区別することができれば、光通信ネットワークや無線ＬＡＮ等についても適用することができる。例えば、光通信ネットワークの場合は、例えばＦＤＤＩ（Ｆｉｂｅｒ　Ｄｉｓｔｒｉｂｕｔｅｄ　Ｄａｔａ　Ｉｎｔｅｒｆａｃｅ）等にも適用することができる。
【０１００】
また、上記実施形態では、ＩＥＥＥ８０２．３規格のパケットについても同時に（同種として）処理をする例を示したが、これらのパケットも、異種として分類することにより、ＩＥＥＥ８０２．３パケットを処理／廃棄を選択できるようになり、ＩＥＥＥ８０２．３パケットを許容しないネットワーク等にも適用可能である。
【０１０１】
また、上記実施形態において、ヘッダ付与部１４０は、設定テーブル１３０を用いて、パケット種類に応じたヘッダを作成して付与したが、必ずしも設定テーブル１３０を用いなくてもよい。
【０１０２】
例えば、ヘッダ付与部１４０が、パケット種類に応じた旨の情報をヘッダに付与して、そのパケットをパケット振分部２１０に与え、パケット振分部２１０が、そのヘッダに含まれるパケット種類を判定して振分けるようにしてもよい。また、パケット振分部２１０がパケット振分けに必要な対応関係テーブルを備え、その対応関係テーブルとヘッダとに基づいて、パケット振分部２１０が振分けるようにしてもよい。
【０１０３】
また、上記実施形態におけるパケット識別部１００は、ルーティング処理装置以外の装置にも適用することができる。すなわち、このパケット識別部も単独の装置として構成することができる。
【０１０４】
このパケット識別装置が識別したパケット種類を利用しうる装置は、その識別したパケット種類に応じて処理を施す装置であれば広く適用することができる。
【０１０５】
例えば、不正アクセス防止装置（例えばファイアウォール等）のように、特定種類のパケットの通過を選択的に制御する装置に適用できる。この場合、パケット識別装置はＩＰアドレスやポート番号等に基づいてパケット種別を行なう。また、例えば、優先制御を行う装置にも適用することができる。このように、パケット識別装置は、パケットの各層の転送単位のフォーマット上での特定情報の違いに基づいて、パケット種別をするこができる。
【０１０６】
また例えば、一度に大量かつ連続的にサーバやシステム等に悪意のある処理要求により、サーバやシステム等を一時的にダウンさせるＤｏＳ（Ｄｅｎｉａｌ　Ｏｆ　Ｓｅｒｖｉｃｅ）攻撃を耐え得る装置又はシステムにも適用することができる。
【０１０７】
【発明の効果】
以上、本発明によれば、パケット種別対象の各パケットフォーマット上に設定された特定情報を少なくとも１以上含む範囲の情報を抽出するパケット情報抽出手段と、抽出された範囲の情報のうち、１又は複数の位置の情報に基づいて、当該受信パケットのパケット種類を判定するパケット種類判定手段と、パケット種類判定手段の判定結果に基づいて、当該受信パケットのパケット種類に応じたヘッダ情報を作成し、そのヘッダ情報を当該受信パケットに付与するヘッダ付与手段と、当該受信パケットに付与されたヘッダ情報に基づいて、当該受信パケットを振り分けるパケット振分け手段と、パケット振分け手段により振り分けられた当該受信パケットを、パケット種類毎にルーティング処理するルーティング処理手段とを備えることにより、ネットワークにおけるルーティング処理に係るプロセッサの負荷を軽減することができるルーティング処理をすることができる。
【図面の簡単な説明】
【図１】本実施形態のルーティング処理装置の内部構成を示したブロック図である。
【図２】本実施形態のパケット種類毎のフォーマット例を示した説明図である。
【図３】本実施形態のパケット種類を判定するための参照位置の説明する説明図である。
【図４】本実施形態の設定テーブルを示す説明図である。
【図５】本実施形態のヘッダに含まれるフォーマットを示す説明図である。
【図６】本実施形態のタグに含まれるフォーマットを示す説明図である。
【図７】本実施形態のパケット種別に係るフローチャートである。
【符号の説明】
１００…パケット識別部、１１０…パケット情報抽出部、
１２０…パケット判定部、１３０…設定テーブル、１４０…ヘッダ付与部、
２００…パケット処理部、２２０−１〜２２０−ｎ…仮想ルータ（ＶＲ１〜ｎ）。
【図１】
2004112159.tif 000003
【図２】
2004112159.tif 000004
【図３】
2004112159.tif 000005
【図４】
2004112159.tif 000006
【図５】
2004112159.tif 000007
【図６】
2004112159.tif 000008
【図７】
2004112159.tif 000009