(57)【特許請求の範囲】
【請求項１】
複数の入、出力回線に接続され、各入力回線から受信したパケットをヘッダ情報によって特定される何れかの出力回線に転送するパケット転送装置であって、
各受信パケットのヘッダ情報から該パケットが属するパケットフローを識別するためのフロー検出部と、
各受信パケットに対して予めパケットフロー毎に指定された転送制御を実施するための手段とを有し、
上記フロー検出部が、複数のフロー定義エントリを有するフロー検出ＣＡＭ（Content Addressable Memory）と、フロー識別条件によって異なるフォーマットの検索キーを生成する検索キー生成部とを備え、
上記ＣＡＭの各フロー定義エントリが、上記検索キー生成部で生成される検索キーの情報項目数と同数のフィールドからなり、同一のフィールドに、上記検索キー生成部で生成される検索キーフォーマットに応じて種類が異なる情報項目が登録されており、
上記フロー検出部が、上記ＣＡＭをパケットヘッダから抽出された少なくとも１つのヘッダ情報項目を含む可変フォーマットの検索キーでアクセスして、フロー検出することを特徴とするパケット転送装置。
【請求項２】
複数の入、出力回線に接続され、各入力回線から受信したパケットをヘッダ情報によって特定される何れかの出力回線に転送するパケット転送装置であって、
各受信パケットのヘッダ情報から該パケットが属するパケットフローを識別し、受信パケットに対して実施すべき転送制御を決定する制御装置と、
各受信パケットに対して上記制御装置で決定した転送制御を実施するための手段とを有し、
上記制御装置が、複数のフロー定義エントリを有するフロー検出ＣＡＭ（Content Addressable Memory）と、フロー識別条件によって異なるフォーマットの検索キーを生成する検索キー生成部とからなるフロー検出部を備え、
上記ＣＡＭの各フロー定義エントリが、上記検索キー生成部で生成される検索キーの情報項目数と同数のフィールドからなり、同一のフィールドに、上記検索キー生成部で生成される検索キーフォーマットに応じて種類が異なる情報項目が登録されており、
上記フロー検出部が、上記ＣＡＭをパケットヘッダから抽出された少なくとも１つのヘッダ情報項目を含む可変フォーマットの検索キーでアクセスして、フロー検出することを特徴とするパケット転送装置。
【請求項３】
前記制御装置が、前記フロー検出ＣＡＭの各フロー定義エントリのアドレスと対応して、受信パケットに対して実施すべき転送制御内容を示す検索結果保持テーブルを有し、上記ＣＡＭからフロー検出結果として出力されるフロー定義エントリのアドレスに従って、上記検索結果保持テーブルから受信パケットに対して実施すべき転送制御内容を読み出すようにしたことを特徴とする請求項２に記載のパケット転送装置。
【請求項４】
前記検索キー生成部が、前記各入力回線の識別子と対応してフロー識別条件となるヘッダ情報項目を指定した検索キー定義テーブルを備え、各受信パケットの入力回線の識別子に基づいて上記検索キー定義テーブルを参照し、該テーブルで指定されたヘッダ情報項目を含む検索キーを生成することを特徴とする請求項１〜請求項３の何れかに記載のパケット転送装置。
【請求項５】
前記検索キー生成部が、前記各入力回線の識別子とフロー検出モードとの対応関係を示すフロー検出モードテーブルと、上記フロー検出モードテーブルが示す各フロー検出モードと対応してフロー識別条件となるヘッダ情報項目を指定した検索キー定義テーブルを備え、
上記検索キー生成部が、上記フロー検出モードテーブルを参照して各受信パケットのフロー検出モードを特定し、上記検索キー定義テーブルが示す上記特定フロー検出モードのフロー識別条件に従って、前記検索キーを生成することを特徴とする請求項１〜請求項３の何れかに記載のパケット転送装置。
【請求項６】
前記検索キー生成部が、前記各入力回線の識別子とモード識別条件との対応関係を示すモード識別条件テーブルと、前記各入力回線の識別子とモード識別条件とフロー検出モードとの対応関係を示す検出モードテーブルと、上記フロー検出モードテーブルが示す各フロー検出モードと対応してフロー識別条件となるヘッダ情報項目を指定した検索キー定義テーブルを備え、
上記検索キー生成部が、各受信パケットの入力回線の識別子と上記モード識別条件テーブルで指定されたモード識別条件に従って、上記フロー検出モードテーブルから各受信パケットのフロー検出モードを特定し、上記検索キー定義テーブルが示す上記特定フロー検出モードのフロー識別条件に従って、前記検索キーを生成することを特徴とする請求項１〜請求項３の何れかに記載のパケット転送装置。
【請求項７】
前記各受信パケットのヘッダ情報が、前記各入力回線に接続された入力回線インタフェースで生成された内部ヘッダ情報を含み、該内部ヘッダ情報が入力回線識別子と出力回線識別子とを含むことを特徴とする請求項１〜請求項６の何れかに記載のパケット転送装置。
【請求項８】
複数のフロー定義エントリを有するフロー検出ＣＡＭ（Content Addressable Memory）と、フロー識別条件によって異なるフォーマットの検索キーを生成する検索キー生成部と、上記ＣＡＭの各フロー定義エントリのアドレスと対応してフロー検索結果を保持するテーブルとを備え、
上記ＣＡＭの各フロー定義エントリが、上記検索キー生成部で生成される検索キーの情報項目数と同数のフィールドからなり、同一のフィールドに、上記検索キー生成部で生成される検索キーフォーマットに応じて種類が異なる情報項目が登録されており、
上記ＣＡＭをパケットヘッダから抽出された少なくとも１つのヘッダ情報項目を含む可変フォーマットの検索キーでアクセスし、上記ＣＡＭから出力される上記検索キーに一致したフロー定義エントリのアドレスに従って、上記テーブルからフロー検索結果を得るようにしたことを特徴とするフロー検出装置。
【請求項９】
前記フロー検出ＣＡＭが、前記検索キーのフォーマットと対応した複数のテーブル領域からなり、上記テーブル領域毎に、フロー識別条件となるヘッダ情報項目の値を含む複数のフロー定義エントリを有し、前記検索キーに一致した最初のフロー定義エントリのアドレスを出力することを特徴とする請求項８に記載のフロー検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のネットワークを接続するパケット転送装置およびフロー検出装置に関し、更に詳しくは、ＣＡＭ（Content Addressable Memory）を利用したフロー検出装置およびパケット転送装置に関する。
【０００２】
【従来の技術】
ＩＰ（Internet Protocol）ネットワークを構成するパケット転送装置、例えば、ルータは、受信パケットのヘッダ情報から該パケットの属するフローを検出するフロー検出機能が必要となる。ここで、フローとは、パケットの入力回線または出力回線の識別子（回線番号）や、受信パケットのヘッダに含まれるＩＰアドレス、プロトコル識別子、優先度等の情報の組み合せによって特定される一連のパケットを意味している。パケット転送装置は、フロー検出部によって検出されたフロー毎に、例えば、パケット廃棄の要否判定（フィルタリング判定）や、通信品質を確保するためのパケット転送優先度（ＱｏＳ：Quality of Service）の判定等のフロー制御を行う。
【０００３】
近年、ＩＰトラフィックの急増に対応するために、フロー検出の高速化が検討されている。例えば、２０００年電子情報通信学会総合大会講演論文集、ＳＢ−４−２には、ＣＡＭ（Content Addressable Memory）を利用した「連想メモリを用いたフロー識別法」（従来技術１）が開示されている。
【０００４】
ＣＡＭを使用したフロー検出では、図２に示すように、フロー制御部６１で検索キーＫＥＹを生成し、ＣＡＭ６２に与える。ＣＡＭ６２には、図３に示すように、フロー識別条件となる項目値を記述した複数のフローエントリ６２０−１〜６２０−ｎが格納してあり、ＣＡＭからは、検索キーＫＥＹと一致したフロー識別条件をもつフローエントリのアドレスが出力される。フロー制御部６１は、ＣＡＭ６２のフローエントリアドレスと対応して入力パケットに実施すべき転送制御を指示した検索結果保持テーブル６３を備えており、検索結果保持テーブル６３から上記ＣＡＭ出力アドレスと対応した転送制御指示を読み出し、該指示に従って入力パケットを処理する。ＣＡＭは、エントリの検索所要時間が登録フローエントリ数に依存しないため、ＣＡＭを利用することによってフロー検出を高速化することができる。
【０００５】
従来技術１は、入力パケットのヘッダ情報からフロー識別に必要な全ての項目（フィールド）、例えば、送信元ＩＰアドレス６０１、宛先ＩＰアドレス６０２、プロトコル６０３等を検索キー情報として抽出し、ＣＡＭ６２内に検索キーと一致するフローエントリが複数存在していた場合、アドレスが最も若いエントリを優先させることを提案している。また、従来技術１は、１つのＣＡＭ内に、長いビット幅を持つフロー識別用のエントリと、短いビット幅をもつフォワーディング制御用のエントリとを登録しておき、検索キーが示すフロー識別条件に一致するフロー識別エントリと、フロー識別条件の上位特定項目に一致したフォワーディング制御用のエントリとを同時に検索することを提案している。
【０００６】
ＩＰネットワークでは、ＩＰｖ６（RFC2460、Internet Protocol Version 6(IPv6) Specification、  R.Hinden他）によるＩＰアドレスの拡張、ＭＰＬＳ−ＶＰＮ（RFC2547、BGP/MPLS VPNs、E.Rosen他）、ＭＰＬＳ  Ｆａｓｔ  Ｒｅｒｏｕｔｅ（draft-haskin-mpls-fast-reroute-05.txt、”Method for Setting an Alternative Label Switched Paths to Handle Fast Reroute” D.Haskin他）によるＭＰＬＳラベルスタック（RFC3032、”MPLS Label Stack Encoding” E.Rosen他）等の新規技術に対応するために、パケット転送装置のフロー検出部における検索キー（フロー識別条件）のビット長が拡大し、フロー識別条件が多様化する傾向にある。
【０００７】
フロー識別条件のビット長が増大し、ＣＡＭで提供可能な検索ビット幅を超えた場合の対策として、例えば、２０００年電子情報通信学会通信ソサイエティ大会Ｂ−６−２１では、検索キーを２分割し、前半キーによるフローエントリ検索と後半キーによるフローエントリ検索の２回の検索を実行することによって、フロー検出条件に合致したエントリを見つける「連想メモリを用いたＩＰｖ６のフロー識別法」（従来技術２）が提案されている。
【０００８】
従来技術２では、図４のように、ＣＡＭを前半用フローエントリ領域６２Ａと後半用フローエントリ領域６２Ｂに分け、各フローエントリに、前後半の区分フィールド６２１とルール番号フィールド６２２を与えている。また、検索結果保持テーブル６３（６３Ａ、６３Ｂ）で、後半検索の要否６３１、ルール番号６３２、アクション６３３を指定している。前半キーＫＥＹ−Ａと前半用フローエントリでは、ルール番号フィールド６２２がDon't Care値となっており、前半キーＫＥＹ−ＡによるＣＡＭ検索の結果、検索結果保持テーブル６３Ａからルール番号が特定され、このルール番号を適用した後半キーＫＥＹ−ＢによるＣＡＭ検索によって、入力パケットに対して実行すべきアクションが決まる。
【０００９】
また、特開２００１−１５６８４０号公報（従来技術３）には、入力パケットのヘッダから、フロー識別条件となり得る特定のフィールド、例えば、ＩＰヘッダに含まれる送信元アドレス、宛先アドレス、プロトコル、ＴＯＳ（Type of Service）と、ＴＣＰまたはＵＤＰヘッダに含まれる発信元ポート、宛先ポートを抽出し、これらのフィールド項目に対して、予め入力論理リンク番号と対応して検索フラグテーブルに登録されたマスク用のフラグビットを適用することによって、入力論理リンク毎に、フロー検出に必要な項目（フィールド）にのみ有効データを残し、フロー検出に不要な項目は無効値に置き換えた形の検索キーを生成し、この検索キーでフロー検索テーブル用のＣＡＭをアクセスするようにしたフロー識別装置が提案されている。
【００１０】
【発明が解決しようとする課題】
然るに、上記従来技術２は、検索キーのビット長が増大した場合の１つの解決策を提案したものであって、検索キーおよびフローエントリのビット長短縮を意図したものではない。また、従来技術３は、フロー識別条件となり得るヘッダ情報項目の全てを含む汎用的な検索キー・フォーマットを採用し、入力論理リンク毎に、不要となるヘッダ情報項目をマスキングすることによって、検索キーとフローエントリとの照合を容易にしたものであり、従来技術２と同様、検索キーおよびフローエントリのビット長短縮を意図したものではない。
多様化するフロー識別条件に対して、このように汎用化された同一フォーマットの検索キーで対応しようとすると、検索キーのビット長が増大し、ＣＡＭ６２とフロー制御用ＬＳＩ６１におけるピンネックおよびＣＡＭの容量不足の問題に直面する。
【００１１】
本発明の目的は、ＣＡＭを有効に利用して、多様化されたフロー識別条件に対応できるフロー検出装置およびパケット転送装置を提供することにある。
本発明の他の目的は、ＣＡＭ検索キーのビット長を短縮することによって、フロー識別条件が多様化した場合でも、ＣＡＭ容量を有効に利用できるフロー検出装置およびパケット転送装置を提供することにある。
【００１２】
【課題を解決するための手段】
上記目的を達成するため、本発明のフロー検出装置は、複数のフロー定義エントリを有するフロー検出ＣＡＭ（Content Addressable Memory）と、フロー識別条件によって異なるフォーマットの検索キーを生成する検索キー生成部と、上記ＣＡＭの各フロー定義エントリのアドレスと対応してフロー検索結果を保持するテーブルとを備え、上記ＣＡＭをフロー識別条件に応じてパケットヘッダから抽出された少なくとも１つのヘッダ情報項目を含む可変フォーマットの検索キーでアクセスし、上記ＣＡＭから出力される上記検索キーに一致したフロー定義エントリのアドレスに従って、上記テーブルからフロー検索結果を得るようにしたことを特徴とする。
【００１３】
上記フロー検出ＣＡＭは、例えば、検索キー・フォーマットの種類と対応した複数のテーブル領域からなり、テーブル領域毎に、フロー識別条件となるヘッダ情報項目の値を記述した複数のフロー定義エントリを有し、検索キーに一致した最初のフロー定義エントリのアドレスを出力する。
【００１４】
また、本発明は、複数の入、出力回線に接続され、各入力回線から受信したパケットをヘッダ情報によって特定される何れかの出力回線に転送するパケット転送装置において、各受信パケットのヘッダ情報から該パケットが属するパケットフローを識別するためのフロー検出部と、各受信パケットに対して予めパケットフロー毎に指定された転送制御を実施するための手段とを有し、
上記フロー検出部が、複数のフロー定義エントリを有するフロー検出ＣＡＭと、フロー識別条件によって異なるフォーマットの検索キーを生成する検索キー生成部とを備え、上記ＣＡＭをパケットヘッダから抽出された少なくとも１つのヘッダ情報項目を含む可変フォーマットの検索キーでアクセスして、フロー検出することを特徴とする。
更に詳述すると、上記検索キー生成部は、例えば、各入力回線の識別子と対応してフロー識別条件となるヘッダ情報項目を指定した検索キー定義テーブルを備え、各受信パケットの入力回線の識別子に基づいて上記検索キー定義テーブルを参照し、該テーブルで指定されたヘッダ情報項目を含む検索キーを生成する。
【００１５】
本発明の１実施例によれば、上記検索キー生成部が、各入力回線の識別子とフロー検出モードとの対応関係を示すフロー検出モードテーブルと、上記フロー検出モードテーブルが示す各フロー検出モードと対応してフロー識別条件となるヘッダ情報項目を指定した検索キー定義テーブルを備え、上記検索キー生成部が、上記フロー検出モードテーブルを参照して各受信パケットのフロー検出モードを特定し、上記検索キー定義テーブルが示す上記特定フロー検出モードのフロー識別条件に従って、検索キーを生成する。
【００１６】
本発明の別の実施例では、上記検索キー生成部が、各入力回線の識別子とモード識別条件との対応関係を示すモード識別条件テーブルと、各入力回線の識別子とモード識別条件とフロー検出モードとの対応関係を示す検出モードテーブルと、上記フロー検出モードテーブルが示す各フロー検出モードと対応してフロー識別条件となるヘッダ情報項目を指定した検索キー定義テーブルを備え、上記検索キー生成部が、各受信パケットの入力回線の識別子と上記モード識別条件テーブルで指定されたモード識別条件に従って、上記フロー検出モードテーブルから各受信パケットのフロー検出モードを特定し、上記検索キー定義テーブルが示す上記特定フロー検出モードのフロー識別条件に従って、検索キーを生成する。
【００１７】
ここで、フロー検出部が参照するヘッダ情報には、各入力回線に接続された入力回線インタフェースで生成された内部ヘッダ情報を含む。内部ヘッダ情報は、例えば、入力回線識別子、出力回線識別子、転送優先度情報を示す複数のフィールドからなり、１つの物理回線上に論理的な複数のパスが多重化される場合は、上記入／出力回線識別子として、物理回線識別子と論理回線識別子とが適用される。また、モード識別条件テーブルには、同一入力回線上に多重化されたパス毎にフロー識別条件を設定する場合に、モード識別条件として、例えば、入力論理回線番号やフローラベル等のパス特定情報が記憶される。
【００１８】
本発明によれば、ＣＡＭ検索キーが、冗長フィールドのない、各受信パケットのフロー識別に必要な項目のみを含むフォーマットとなっているため、検索キーとＣＡＭフローエントリのビット長を短縮することができ、フロー識別条件が多様化しても、ＣＡＭ容量を有効に利用して、高速のフロー検索が可能となる。
【００１９】
【発明の実施の形態】
以下、本発明の実施例について、図面を参照して説明する。
図５は、本発明のパケット転送装置が適用される通信ネットワークの１例を示す。
この通信ネットワークでは、企業Ａに属したサイトＡ１とＡ２、企業Ｂに属したサイトＢ１とＢ２が、それぞれキャリアＩＰネットワーク２００を介して通信する。
【００２０】
キャリアＩＰネットワーク２００は、エッジルータ２０１、２０２と、これらのエッジルータ間に配置されたバックボーンルータ２０３、２０４からなる。キャリアＩＰネットワーク２００内でのパケット転送は、例えば、ＩＰパケットに付加されたＭＰＬＳラベルによりパスを識別するＭＰＬＳ（Multi Protocol Label Switching）によって行われる。ＭＰＬＳでは、トラフィックエンジニアリングやＶＰＮ（仮想閉域網）を実現でき、ＥＸＰ（EXPerimental）ビットフィールドでパケット転送の優先度を表示することができる。
【００２１】
サイトＡ１は、ゲートウェイ（ＧＷ）ルータ２１１を介してエッジルータ２０１に接続される複数の端末２１２、２１３、・・・からなり、サイトＡ２は、ＧＷルータ２３１を介してエッジルータ２０２に接続される複数の端末２３２、２３３、・・・からなる。同様に、サイトＢ１は、ＧＷルータ２２１を介してエッジルータ２０１に接続される複数の端末２２２、２２３、・・・からなり、サイトＢ２は、ＧＷルータ２４１を介してエッジルータ２０２に接続される複数の端末２４２、２４３、・・・からなる。
【００２２】
本発明のパケット転送装置は、エッジルータ２０１、２０２に適用される。以下の説明では、サイトＡ１、Ｂ１とエッジルータ２０１との間で、ＩＰｖ６アドレスをもつＩＰパケットが通信されるものと仮定する。本発明では、例えば、ＧＷルータ２２１からエッジルータ２０１に向かうパケットフローＦＬ１、エッジルータ２０１からＧＷルータ２１１に向かうパケットフローＦＬ２、エッジルータ２０１からバックボーンルータ２０３に向かうパケットフローＦＬ３のように、エッジルータ２０１が、各入力パケットの属したフローを識別し、各入力パケットに対して、フロー毎に予め指定された転送制御制御を実行する。
【００２３】
図６は、エッジルータ２０１が扱うパケットフォーマットを示す。
図６（Ａ）は、エッジルータ２０１とサイトＡ１、Ｂ１との間で送受信されるパケット５００のフォーマットを示す。パケット５００は、データ（ユーザ情報）部５１０に、ＩＳＯ参照モデルにおけるレイヤ４（トランスポート層）のヘッダ５２０、レイヤ３（ネットワーク層）のヘッダ５３０、レイヤ２（データリンク層）のヘッダ５４０からなるパケットヘッダを付加した構成となっている。
【００２４】
レイヤ４ヘッダ５２０は、上位アプリケーションを表す送信ポート（Source Port：「ＳＰＯＲＴ」）５２１と、宛先ポート（Destination Port：「ＤＰＯＲＴ」）５２２と、図面では省略されたシーケンス番号などの情報を含む。レイヤ３ヘッダ５３０は、送信元ＩＰアドレス（Source IP Address：「ＳＩＰ」）５３１、宛先ＩＰアドレス（Destination IP Address：「ＤＩＰ」）５３２、フローラベル５３３、その他の情報を含む。
【００２５】
レイヤ２ヘッダ５４０には、ＧＷルータ２１１、２２１とエッジルータ２０１との接続回線の種類に応じて、例えば、イーサネット（登録商標）の場合は、送信元ＭＡＣアドレスと宛先ＭＡＣアドレス、フレームリレー回線の場合はＤＬＣＩ（Data Link Connection Identifier）等の情報が設定される。接続回線がＡＴＭ回線の場合、データ部５１０〜レイヤ３ヘッダ５３０からなるＩＰパケットが固定長の複数のブロック分割され、各ブロックにＶＰＩ／ＶＣＩを含むセルヘッダを付加し、ＡＴＭセル形式のデータ転送が行われる。この場合、レイヤ２ヘッダ５４０は、ＡＴＭセルに付加すべきＶＰＩ／ＶＣＩを意味している。ここでは、ネットワーク層のプロトコルがＩＰのパケットフォーマットを示したが、本発明のフロー制御は、ネットワーク層のプロトコルがＩＰ以外のもの、例えば、ＩＰＸ等であっても良い。
【００２６】
図６（Ｂ）は、エッジルータ２０１とバックボーンルータ２０３、２０４との間で送受信されるパケット５０１のフォーマットを示す。
パケット５０１は、パケット５００のレイヤ２ヘッダ５４０とレイヤ３ヘッダ５３０との間に、ＭＰＬＳ用のＳｈｉｍヘッダ５５０を付加した構成となっている。Ｓｈｉｍヘッダ５５０は、ＭＰＬＳラベル５５１と、優先度等を表すＥＸＰ５５２と、ＴＴＬ（生存時間）等の情報を含む。
【００２７】
図６（Ｃ）は、エッジルータ２０１内部でのパケット転送とフロー制御のために、上記パケット５００および５０１の先頭に付加される内部ヘッダ５６０の構成を示す。
内部ヘッダ５６０は、例えば、パケットを受信した入力回線の識別子（物理回線番号５６１と論理回線番号５６２）と、パケットを送出すべき出力回線の識別子（物理番号回線５６３と論理回線番号５６４）と、パケット転送の優先度５６５とを示すフィールドからなっている。論理回線番号５６２、５６４を示すフィールドの内容は、例えば、ＡＴＭ回線やＭＰＬＳ回線のように、入出力回線上に複数のパスが多重化されている場合に有効となる。
【００２８】
図１は、上述したエッジルータ２０１として適用可能な本発明によるパケット転送装置１０の１実施例を示す。
パケット転送装置１０は、それぞれ入力回線ＩＮｉ(ｉ＝１〜ｎ)に接続された複数の入力回線インタフェース１１−ｉ(ｉ＝１〜ｎ)と、それぞれ出力回線ＯＵＴｉ(ｉ＝１〜ｎ)に接続された複数の出力回線インタフェース１２−ｉ(ｉ＝１〜ｎ)と、出力回線インタフェース１２−ｉ毎に設けられた出力バッファ１３−ｉおよびパケット振り分け回路１８−ｉ(ｉ＝１〜ｎ)と、上記複数の入力回線インタフェース１１−ｉおよびパケット振り分け回路１８−ｉに接続されたパケット中継部（パケットスイッチ部）１４と、各入力回線インタフェース１１−ｉで受信された可変長パケットの転送先となる出力回線の判定（ルーティング）機能とフロー検出機能とを備えた制御部１５と、上記各入力回線インタフェース１１−ｉから信号線Ｌ１−ｉ(ｉ＝１〜ｎ)に出力されたパケットヘッダ情報を順次に制御部１５に供給する多重化回路１６と、制御部１５が信号線Ｌ２、Ｌ３に出力した出力回線識別子（出力回線番号）とフロー制御指示情報を各パケットヘッダ情報の送信元となる入力回線インタフェース１１−ｉに供給する振り分け回路１７とからなる。
後述するように、制御部１５は、各種のテーブルおよびＣＡＭを備えており、これらのテーブル類へのデータ設定は管理端末９０から信号線Ｌ４を介して行われる。
【００２９】
図７は、入力回線インタフェース１１−ｉと制御部１５の詳細を示す。
入力回線インタフェース１１−ｉは、入力回線ＩＮｉからの受信信号から入力パケット５００または５０１を再生するＬ２終端部１１１と、Ｌ２終端部１１１から受信した入力パケットに内部ヘッダ５３０を付加し、内部パケットとして出力する内部ヘッダ付加部１１２と、内部ヘッダ付加部１１２から受信した内部パケットを入力バッファ１１４に格納すると共に、内部パケットから抽出したパケットヘッダ（レイヤ４ヘッダ５２０〜内部ヘッダ５６０）を信号線Ｌ１−ｉに出力するパケットヘッダ抽出部１１３と、入力バッファ１１４に蓄積されたパケットのヘッダ情報の書き換えとパケット中継部１４への転送を制御するパケット転送制御部１１５と、入力バッファ１１４からヘッダ変換されたパケットを読み出すパケット読出し部１１６とからなる。
【００３０】
Ｌ２終端部１１１は、入力回線ＩＮｉからの受信パケットがＡＴＭセルの場合、受信セルから入力パケット５００または５０１を再生し、受信セルヘッダから抽出したＶＰＩ／ＶＣＩの値をレイヤ２ヘッダ５４０に設定する。内部ヘッダ付加部１１２は、図６の（Ｃ）に示したフォーマットを持つ内部ヘッダ５６０を生成し、予め指定してある入力回線ＩＮｉの識別子（番号）を入力物理回線番号５６１に設定する。入力回線上に多重化パスが形成されていた場合は、パス識別子が入力論理回線番号５６２に設定され、そうでない場合は、入力論理回線番号５６２に無意味な値が設定される。この時点では、出力物理回線番号５６３、出力論理回線番号５６４、パケット転送優先度５６５には、無意味な値が設定される。
【００３１】
制御部１５は、ルーティング処理部２０と、フロー検出部３０と、フロー制御指示部４０とからなっている。
ルーティング処理部２０は、ルーティングテーブルを備え、多重化回路１６から信号線Ｌ１に出力されるパケットヘッダ情報から宛先ＩＰアドレス５２２を抽出し、ルーティングテーブルから上記宛先ＩＰアドレスと対応して予め登録されている出力回線識別子（出力物理回線番号と出力論理回線番号）を読出して、信号線Ｌ２に出力する。
【００３２】
フロー検出部３０は、後述するように、フロー識別条件に応じて上記パケットヘッダ情報から抽出した複数のヘッダ情報項目からなる検索キーを生成し、フロー検出ＣＡＭから上記検索キーに該当したフローエントリを検索する。フロー制御指示部４０は、フロー検出ＣＡＭから信号線Ｌ５に出力されるフローエントリアドレスの値に従って、検索結果保持テーブルを参照し、該テーブルで指定されたフロー制御指示情報（パケット処理の種類または転送優先度）を信号線Ｌ３に出力する。
【００３３】
信号線Ｌ２に出力された出力回線識別子と、信号線Ｌ３に出力されたフロー制御指示情報は、振り分け回路１７に入力される。振り分け回路１７には、信号線Ｌ１に出力されたパケットヘッダ情報中の入力回線番号５６１の値ｉが制御信号として与えてあり、信号線Ｌ２、Ｌ３から入力された出力回線番号とフロー制御指示情報が、上記入力回線番号ｉで特定される入力回線インタフェース１１−ｉのパケット転送制御部１１５に振り分けられる。
【００３４】
フロー制御指示情報が特定の優先度付与を示していた場合、パケット転送制御部１１５は、入力バッファ１１４に蓄積された先頭パケットの内部ヘッダ５６０に、上記振り分け回路１７から受信した出力回線識別子（出力物理回線番号５６３と出力論理回線番号５６４の値）と優先度（パケット転送優先度５６５の値）を書き込み、信号線Ｌ１１５を介して、パケット読出し部１１６に上記パケットの読出しを指示する。これによって、入力パケットに対するＱｏＳ制御が実現される。
フロー制御指示情報がパケット廃棄を示していた場合は、上記内部ヘッダ５６０への情報の書き込みとパケット読出し部１１６へのパケット読出しの指示は省略され、受信パケットが廃棄処理される。これによって、入力パケットのフィルタリング制御が実現される。
【００３５】
パケット転送制御部１１５は、入力バッファ１１４からのパケットの転送または廃棄の都度、入力バッファの読出しアドレスを次パケットの先頭アドレスに位置付けることによって、入力バッファ中の蓄積パケットを次々と処理する。
図７に示した実施例では、ルーティング処理部２０が複数の入力回線インタフェースで共用される構成となっているが、ルーティング処理部２０を各入力回線インタフェース１１−ｉに配置し、制御部１５がフロー検出部３０とフロー制御指示部４０を備えた構成としてもよい。
【００３６】
図１において、パケット中継部１４は、入力回線インタフェース１１−ｉ（ｉ＝１〜ｎ）と接続される入力ポートＰＩｉ（ｉ＝１〜ｎ）と、パケット振り分け回路１８−ｉ（ｉ＝１〜ｎ）と接続される出力ポートＰＯｉ（ｉ＝１〜ｎ）とを備えており、各入力ポートＰＩｉから受信したパケットを出力物理回線番号５６３の値ｊで特定される出力ポートＰＩｊにスイッチングする。送信バッファ１３−ｊは、優先度に対応した複数の送信キューからなっており、振り分け回路１８―ｊは、出力ポートＰＩｊから出力されたパケットを内部ヘッダのパケット転送優先度５６５に従って、何れかの送信キューに蓄積する。出力回線インタフェース１２−ｊは、送信バッファ１３−ｊの蓄積パケットを優先度順に読み出し、内部ヘッダ５３０を除去した後、出力回線ＯＵＴｊのデータリンク層プロトコルに従ったＬ２ヘッダを付加した形で、出力回線ＯＵＴｊに送出する。
【００３７】
図８は、フロー検出部３０とフロー制御指示部４０の１実施例を示す。
フロー検出部３０は、検索キー生成部３１と、ＣＡＭ制御部３２と、フロー検出ＣＡＭ３３とからなる。検索キー生成部３１は、信号線Ｌ１から受信したヘッダ情報を格納するためのヘッダ情報レジスタ３１０と、フロー検出モードテーブル３１１と、検索キー定義テーブル３１２と、検索キー生成制御部３１３とからなっている。
【００３８】
フロー検出モードテーブル３１１は、例えば、図９に示すように、入力回線番号（入力物理回線番号）３１１１と対応して、入力回線上のプロトコルを示す識別子３１１２と、フロー検出モード３１１３とを示した複数のエントリ３１１−１、３１１−２、…からなっている。フロー検出モード３１１３は、検索キー生成制御部３１３で生成すべき検索キーのフォーマット種類（タイプ）を示している。
【００３９】
また、検索キー定義テーブル３１２は、例えば、図１０に示すように、フロー検出モード３１２１と対応して、フロー識別条件となる検索キー要素３１２２を指定した複数のエントリ３１２−１、３１２−２、・・・からなっている。検索キー要素３１２２は、検索キー生成制御部３１３で生成すべき検索キーの構成要素となるヘッダ情報の項目名（フィールド名）を示している。
【００４０】
ここで、エントリ３１２−１は、検出モード１のフローが、入力パケットのＭＰＬＳフィールド５５１とＥＸＰフィールド５５２（図６（Ｂ）参照）の組み合せによって識別されことを意味し、エントリ３１２−２は、検出モード２のフローが、入力パケットのＳＩＰ５３１とＳＰＯＲＴ５２１の組み合せによって決まることを意味している。また、エントリ３１２−３は、検出モード３のフローが、入力パケットのＤＩＰ５３２とＤＰＯＲＴ５２２の組み合せによって決まることを意味している。
【００４１】
図８に戻って、ヘッダ情報レジスタ３１０には、信号線Ｌ１を介して、パケットヘッダ抽出部１１３で抽出した入力パケットのヘッダ情報５６０〜５２０が設定される。本実施例において、検索キー生成制御部３１３は、ヘッダ情報レジスタ３１０に設定されたヘッダ情報の中から、信号線Ｓ１で示すように、内部ヘッダ５６０の先頭に位置した入力物理回線番号（以下、単に入力回線番号という）フィールド５６１の値を読み出し、フロー検出モードテーブル３１１から、上記入力回線番号５６１（信号線Ｓ２）と対応したプロトコル識別子３１１２（信号線Ｓ３）とフロー検出モード３１１３（信号線Ｓ４）を読み出す。
【００４２】
検索キー生成制御部３１３は、フロー検出モード３１１３（信号線Ｓ５）に従って検索キー定義テーブル３１２を参照し、上記フロー検出モードと対応する検索キー要素３１１２（信号線Ｓ６）を読み出す。また、ヘッダ情報レジスタ３１０から、上記検索キー要素３１１２で指定されたヘッダ情報項目（信号線Ｓ７）の値を読み出して、これらのヘッダ情報項目を含むフロー検索キーＫＥＹを生成する。
【００４３】
尚、ヘッダ情報レジスタ３１０に格納されたヘッダ情報は、図６の（Ａ）、（Ｂ）で示したように、入力回線によって部分的に異なったフォーマットとなっているが、レジスタ３１０に格納されているヘッダ情報のフォーマットは、フロー検出モードテーブル３１１から読み出されたプロトコル識別子３１１２によって特定されるため、検索キー生成制御部３１３は、上記プロトコル識別子に従って、ヘッダ情報レジスタ３１０から検索キー要素３１１２で指定された任意のヘッダ情報項目を抽出できる。また、フロー検出モードテーブル３１１と検索キー定義テーブル３１２へのエントリの設定と更新は、管理端末９０から信号線Ｌ４、検索キー生成制御部３１３を介して行われる。
【００４４】
図１１は、検索キー生成制御部３１３で生成されるフロー検索キーの１例を示す。
フロー検索キーは、フロー検出モード３２１と、入力回線番号３２２と、検索キー定義テーブル３１２で指定された検索キー要素３２３、３２４、・・・とからなる。ここに示したフロー検索キーＫＥＹ１〜ＫＥＹ３は、それぞれ図１０に示した検出モード１〜検出モード３に対応している。
【００４５】
本実施例によれば、回線番号１の入力回線からの受信パケットを処理する時は、モード１、入力回線番号１、ＭＰＬＳ、ＥＸＰからなるフォーマットのフロー検索キーＫＥＹ１が生成され、回線番号２の入力回線からの受信パケットを処理する時は、モード２、入力回線番号２、ＳＩＰ、ＳＰＯＲＴからなるフォーマットのフロー検索キーＫＥＹ２が生成される。また、回線番号３の入力回線からの受信パケットを処理する時は、モード３、入力回線番号３、ＤＩＰ、ＤＰＯＲＴからなるフォーマットのフロー検索キーＫＥＹ３が生成される。
検索キー生成制御部３１３で生成されたフロー検索キーＫＥＹは、ＣＡＭ制御部３２に与えられる。ＣＡＭ制御部３２は、上記フロー検索キーＫＥＹに従ってフロー検出ＣＡＭ３３をアクセスする。
【００４６】
本発明において、フロー検出ＣＡＭ３３は、例えば、図１２に示すように、フロー検出モード（フロー検出キー・フォーマット）と対応した複数のテーブル領域３３０−１〜３３０−ｎに分割され、各テーブル領域３３０−ｊには、フロー検索キーと対応したヘッダ情報項目を記述した複数のフローエントリＥＮ−ｊｋ（ｊ＝１〜ｎ、ｋ＝１、２、・・・）が登録されている。
【００４７】
従って、前述のフロー検索キーＫＥＹ１でアクセスした場合、テーブル領域３３０−１に登録されたエントリＥＮ−１１〜ＥＮ−１ｉのうちの何れが検索され、最初に見つかったフローエントリのアドレスが信号線Ｌ５に出力される。同様に、フロー検索キーＫＥＹ２でアクセスした場合は、テーブル領域３３０−２に登録されたエントリ群（ＥＮ−２１〜ＥＮ−２ｊ）、フロー検索キーＫＥＹ３でアクセスした場合は、テーブル領域３３０−３に登録されたエントリ群（ＥＮ−３１、ＥＮ−３２、・・・）の中から検索条件に合致したエントリが検索され、それぞれの領域で最初に見つかったエントリアドレスが信号線Ｌ５に出力される。尚、フロー検出ＣＡＭ３３へのフローエントリの設定と更新は、管理端末９０から信号線Ｌ４、ＣＡＭ制御部３２を介して行われる。
【００４８】
フレー検出ＣＡＭ３３から信号線Ｌ５に出力されたエントリアドレスは、フロー制御指示部４０に入力される。フロー制御指示部４０は、図８に示すように、テーブル制御部４１と、検索結果保持テーブル４２とからなる。
【００４９】
検索結果保持テーブル４２は、ＣＡＭ検索結果を保持するためのものであり、例えば、図１３に示すように、フロー検索ＣＡＭ３３のフローエントリアドレスと対応した複数のエントリ４１０−１〜４１０−ｑを含んでいる。これらのエントリ４１０−１〜４１０−ｑには、フロー制御指示情報として、入力パケットに与えるべきＱｏＳ制御（優先度）情報やフィルタリング制御情報が設定されている。
【００５０】
テーブル制御部４１は、上記信号線Ｌ５からフローエントリアドレスを受信すると、検索結果保持テーブル４２から上記フローエントリアドレスと対応するフロー制御指示情報を信号線Ｌ３に読み出す。検索結果保持テーブル４２へのエントリの設定と更新は、管理端末９０から信号線Ｌ４、テーブル制御部４１を介して行われる。
【００５１】
上述したように、本発明のフロー検出部３０では、入力回線毎に、予め検索キー定義テーブル３１２で指定されたフロー識別条件に従って、フロー検索キーＫＥＹを生成し、フロー検出ＣＡＭ３３から上記フロー検索キーＫＥＹに一致したフローエントリを検索するようにしている。従って、本発明によれば、図１１に示したように、各フロー検索キーＫＥＹが、入力回線毎に固有のヘッダ情報項目のみを組み合せた構造となるため、フロー検索キーのビット長を短縮することが可能となる。また、フロー検索キーのビット長が短縮された結果、フロー定義ＣＡＭ３３に登録されるフローエントリのビット長も短縮され、フロー定義ＣＡＭ３３のメモリ容量を有効に利用できる。
【００５２】
これに対して、例えば、従来技術１のように、常に同一フォーマットの検索キーでＣＡＭをアクセスする方式を採用した場合は、上述したモード１〜モード３のようにヘッダ情報の組み合せを異にした複数種類のフロー識別条件が必要となった時、フロー検索キーとＣＡＭエントリが、個々のフロー検出では無用となる冗長なフィールドを含むことになる。
【００５３】
例えば、図１０に示したモード１〜モード３の３種類のフロー検出を従来技術で実現しようとすると、入力回線番号、ＭＰＬＳ、ＥＸＰ、ＳＩＰ、ＳＰＯＲＴ、ＤＩＰ、ＤＰＯＲＴの７つのフィールドからなる検索キー・フォーマットにおいて、モード１のフロー検出では、検索キーとフローエントリのＳＩＰ、ＳＰＯＲＴ、ＤＩＰ、ＤＰＯＲＴフィールドをDon't Care値とし、モード２のフロー検出では、ＭＰＬＳ、ＥＸＰ、ＤＩＰ、ＤＰＯＲＴフィールドをDon't Care値、モード３のフロー検出では、ＭＰＬＳ、ＥＸＰ、ＳＩＰ、ＳＰＯＲＴフィールドをDon't Care値とする必要がある。
【００５４】
この場合、本発明に比較して、検索キーのビット長が増大し、ＣＡＭ容量の利用率が大幅に低下することは明らかである。また、ＣＡＭで検索可能なエントリビット幅の制約から、例えば、従来技術２のように、検索キーを前半キーと後半キーに分け、ＣＡＭを前半用フローエントリ領域と後半用フローエントリ領域に分割せざるを得なくなった場合、上述したＣＡＭ容量の利用率低下の他に、フロー処理の所要時間増加の問題が発生する。これらの問題は、本発明を適用することによって解決される。
【００５５】
図８に示したフロー検出部３０では、検索キー生成制御部３１３が、フロー検出モードテーブル３１１と検索キー定義テーブル３１２を使用して、入力回線毎に固有のフロー検索キーＫＥＹを生成したが、入力回線番号とフロー識別条件とが１対１の関係にある場合は、フロー検出モードテーブル３１１と検索キー定義テーブル３１２とを統合し、フロー検出モード３１１３を介在させることなく、検索キー生成制御部３１３が、入力回線番号（Ｓ２）に基づいて、統合テーブルからプロトコル識別子３１１２（Ｓ３）と検索キー要素３１２２（Ｓ６）を直接的に入手するようにしてもよい。この場合、各検出キーとフロー検出ＣＡＭ３３の各フローエントリから、検出モード３３１を除外できる。
【００５６】
図１４は、検索キー生成部３１の第２の実施例を示す。
本実施例は、同一入力回線上に複数種類のフロー検出モードを設定可能にしたものであり、フロー検出モードテーブル３１１が、モード識別条件テーブル３１１Ａとフロー検出モードテーブル３１１Ｂとからなることを特徴としている。
【００５７】
モード識別条件テーブル３１１Ａは、例えば、図１５に示すように、入力回線番号３１１１と対応して、プロトコル識別子３１１２とモード識別条件３１１４とを示す複数のエントリ３１１Ａ−１〜３１１Ａ−ｎからなっている。ここで、モード識別条件３１１４は、入力回線番号３１１１をもつ入力回線上でフロー検出モードを特定するために必要なヘッダ情報項目を示す。
【００５８】
一方、本実施例におけるフロー検出モードテーブル３１１Ｂは、例えば、図１６に示すように、入力回線番号３１１１と対応して、モード識別条件となるヘッダ情報項目３１１５とフロー検出モード３１１３との関係を示す複数のエントリ３１１Ｂ−１〜３１１Ｂ−ｐからなっている。モード識別条件３１１５は、モード識別条件テーブル３１１Ａでモード識別条件３１１４として使用されたヘッダ情報項目と対応する複数の項目、この例では、入力論理回線番号３１１５−１とフローラベル３１１５−２の値を示している。マーク＊は、モード識別条件から除外されるマスク項目またはDon't Care値を意味している。
【００５９】
検索キー生成制御部３１３は、ヘッダ情報レジスタ３１０から入力回線番号５７１（信号線Ｓ１）を読み出し、モード識別条件テーブル３１１Ａから、上記入力回線番号（信号線Ｓ２）と対応するエントリのプロトコル識別子３１１２（信号線Ｓ３）とモード識別条件３１１４（信号線Ｓ１０）を読み出す。
【００６０】
ここで、例えば、ヘッダ情報レジスタ３１０から読み出した入力回線番号５７１の値が「回線番号２」であったと仮定すると、モード識別条件テーブル３１１Ａからは、モード識別条件３１１４として、エントリ３１１Ａ−２が示す「入力論理回線番号」が読み出される。この場合、検索キー生成制御部３１３は、ヘッダ情報レジスタ３１０から内部ヘッダ３５６の入力論理回線番号５６２の値を抽出し、「回線番号２」と上記入力論理回線番号５６２の値をキー（信号線Ｓ１１）として、フロー検出モードテーブル３１１Ｂからフロー検出モード３１１３（信号線Ｓ４）を読み出す。上記入力論理回線番号５６２の値が「論理回線１」であれば、フロー検出モードは「モード３」となり、「論理回線２」であれば、フロー検出モードは「モード２」となる。
【００６１】
検索キー生成制御部３１３は、図８で説明した第１実施例と同様、上記検出モード３１１３（信号線Ｓ５）に従って検索キー定義テーブル３１２を参照し、検出モード３１１３と対応する検索キー要素３１１２（信号線Ｓ６）を読み出し、ヘッダ情報レジスタ３１０から、上記検索キー要素３１１２で指定された項目のヘッダ情報（信号線Ｓ７）を読み出して、これらのヘッダ情報を含むフロー検索キーＫＥＹを生成する。
【００６２】
本実施例によれば、図１６に示したフロー検出モードテーブル３１１Ｂの内容から明らかなように、同一の入力回線上に多重化された複数のフローに対して選択的にフロー検出モードを指定し、同一入力回線上に異なった複数種類のフロー識別条件を適用することが可能となる。
【００６３】
図１７は、フロー検出キー生成部３１の第３の実施例を示す。
本実施例では、第２実施例におけるフロー検出モードテーブル３１１Ｂの検索にＣＡＭを適用することによって、検索キーＫＥＹの生成に要する時間を短縮したことを特徴としている。本実施例の検索キー生成制御部３１は、図１４に示したモード識別条件テーブル３１１Ａとフロー検出モードテーブル３１１Ｂに代えて、プロトコル識別子テーブル３１１Ｃと、ＣＡＭ制御部３１４と、検出モード定義ＣＡＭ３１５と、検出モード保持テーブル３１１Ｄとを備えている。
【００６４】
プロトコル識別子テーブル３１１Ｃは、例えば、図１５に示したモード識別条件テーブル３１１Ａにおける入力回線番号３１１１とプロトコル識別子３１１２との関係を示している。また、検出モード定義ＣＡＭ３１５は、例えば、図１６に示したフロー検出モードテーブル３１１Ｂにおける入力回線番号３１１１とモード識別条件３１１５（３１１５−１、３１１５−２）との関係を示す複数のエントリからなり、検出モード保持テーブル３１１Ｄには、上記検出モード定義ＣＡＭ３１５のエントリアドレスと対応して、上記フロー検出モードテーブル３１１Ｂにおける検出モード３１１３の値が格納されている。
【００６５】
検索キー生成制御部３１３は、ヘッダ情報レジスタ３１０から入力回線番号５７１（信号線Ｓ１）を読み出し、プロトコル識別子テーブル３１１Ｃから、上記入力回線番号（信号線Ｓ２）と対応するプロトコル識別子３１１２（信号線Ｓ３）を読み出す。
本実施例では、検索キー生成制御部３１３は、入力回線番号には関係なく、ヘッダ情報レジスタ３１０から、上記検出モード定義ＣＡＭ３１５でモード識別条件３１１５として指定されている入力論理回線番号５６２とフローラベル５３２の値（信号線Ｓ７）を読み出し、図１８に示すように、入力回線番号５７１と入力論理回線番号５６２とフローラベル５３２とからなる検索キーＫＹを生成し、これをＣＡＭ制御部３１４に与える。
【００６６】
ＣＡＭ制御部３１４は、上記検索キーＫＹによって検出モード定義ＣＡＭ３１５をアクセスする。この結果、検出モード定義ＣＡＭ３１５から信号線Ｓ１２に、上記検索キーＫＹに一致した内容をもつ最初に見つかったエントリのアドレスが出力され、検出モード保持テーブル３１１Ｄから信号線Ｓ４に、上記ＣＡＭ出力アドレスと対応する検出モードの値が読み出される。
【００６７】
検索キー生成制御部３１３は、図８、図１４で説明した実施例と同様、上記検出モード（信号線Ｓ５）に従って検索キー定義テーブル３１２を参照し、検出モード３１１３と対応する検索キー要素３１１２（信号線Ｓ６）を読み出し、ヘッダ情報レジスタ３１０から、上記検索キー要素３１１２で指定されたヘッダ情報項目の値（信号線Ｓ７）を読み出して、これらのヘッダ情報項目を含むフロー検索キーＫＥＹを生成する。
【００６８】
本実施例によれば、入力回線上の複数のフローに対して、例えば、図１６のエントリ３１１Ｂ−１や３１１Ｂ−ｐが示すように、同一の検出モード（同じヘッダ情報項目の組み合せ）でフロー識別条件を設定した場合でも、あるいは、図１６のエントリ３１１Ｂ−２、３１１Ｂ−３が示すように、入力論理回線番号やフローラベルなどの特定ヘッダ情報項目の値に応じて異なる検出モード（異なるヘッダ情報項目の組み合せ）でフロー識別条件を設定した場合でも、入力回線番号とモード識別条件となり得る数種類のヘッダ情報項目を利用して、フロー検出モードを迅速に特定し、フロー定義ＣＡＭ３３のアクセスに必要な検索キーＫＥＹを短時間で生成することが可能となる。
【００６９】
【発明の効果】
以上の実施例から明らかなように、本発明によれば、フロー識別条件に応じて異なったフォーマットの検索キーを生成することによって、フロー識別条件が多様化した場合でも、検索キーのビット長を短縮できる。従って、本発明によれば、検索キーと対応関係にあるフローエントリのビット長も短縮することができ、フロー検出用のＣＡＭ容量の有効利用と、多様化されたフロー識別条件下での高速フロー検出を実現できる。
【図面の簡単な説明】
【図１】本発明によるパケット転送装置の１実施例を示すブロック図。
【図２】ＣＡＭを利用したフロー検出システムの概略的な構成を示す図。
【図３】ＣＡＭを利用した従来技術１によるフロー検出を説明するための図。
【図４】ＣＡＭを利用した従来技術２によるフロー検出を説明するための図。
【図５】本発明によるパケット転送装置が適用される通信ネットワークの１例を示す図。
【図６】図５に示したエッジルータ２０１に入力されるパケット（Ａ、Ｂ）と、エッジルータで生成される内部ヘッダ（Ｃ）のフォーマットの１例を示す図。
【図７】図１に示した入力回線インタフェース１１−ｉと制御部１５の詳細を示すブロック構成図。
【図８】図７に示した検索キー生成部３１の第１の実施例とフロー処理部４０の詳細を示す図。
【図９】図８に示したフロー検出モードテーブル３１１の内容の１例を示す図。
【図１０】図８に示した検索キー定義テーブル３１２の内容の１例を示す図。
【図１１】図８に示した検索キー生成部３１から出力されるフロー検索キーＫＥＹの１例を示す図。
【図１２】図８に示したフロー検出ＣＡＭ３３の内容の１例を示す図。
【図１３】図８に示した検索結果保持テーブル４２の内容の１例を示す図。
【図１４】検索キー生成部３１の第２の実施例を示す図。
【図１５】図１４に示したモード識別条件テーブル３１１Ａの内容の１例を示す図。
【図１６】図１４に示したフロー検出モードテーブル３１１Ｂの内容の１例を示す図。
【図１７】検索キー生成部３１の第３の実施例を示す図。
【図１８】図１７に示した検索キー生成制御部３１３からＣＡＭ制御部３１４に与えられるＣＡＭ検索キーＫＹの１例を示す図。
【符号の説明】
１０：パケット転送装置（ルータ）、１１：入力回線インタフェース、
１２：出力回線インタフェース、１３：出力バッファ、１４：パケット中継部、
１５：制御部、１６：多重化回路、１７、１８：振り分け回路、
２０：ルーティング処理部、３０：フロー検出部、３１：検索キー生成部、
３２：ＣＡＭ制御部、３３：フロー検索ＣＡＭ、３１０：ヘッダ情報レジスタ、
３１１：フロー検出モードテーブル、３１２：検索キー定義テーブル、
４０：フロー制御指示部、４１：テーブル制御部、４２：検索結果保持テーブル。
【図１】
0003936883.tif 000002
【図２】
0003936883.tif 000003
【図３】
0003936883.tif 000004
【図４】
0003936883.tif 000005
【図５】
0003936883.tif 000006
【図６】
0003936883.tif 000007
【図７】
0003936883.tif 000008
【図８】
0003936883.tif 000009
【図９】
0003936883.tif 000010
【図１０】
0003936883.tif 000011
【図１１】
0003936883.tif 000012
【図１２】
0003936883.tif 000013
【図１３】
0003936883.tif 000014
【図１４】
0003936883.tif 000015
【図１５】
0003936883.tif 000016
【図１６】
0003936883.tif 000017
【図１７】
0003936883.tif 000018
【図１８】
0003936883.tif 000019