(57)【要約】【課題】  レイヤ２スイッチの後段にレイヤ３以上の転送処理を行うＣＰＵを備える高速ＩＰ転送装置において、転送性能の劣化を防ぐ。【解決手段】  受信したパケットデータから抽出したレイヤ２およびレイヤ３以上のヘッダ情報に基づいて、転送すべきパケットデータを識別する検索を行い、検索結果に対応する特定のヘッダ情報を前記パケットデータへ付与してＣＰＵへ転送するレイヤ２スイッチと、前記レイヤ２スイッチより受信したパケットデータから前記特定のヘッダ情報を検出し、検出したヘッダ情報に基づき前記ヘッダ情報に対応させてあらかじめメモリへ登録した処理情報を取得して当該パケットデータへレイヤ３以上の転送処理を行うＣＰＵとを備える。【選択図】          図２
2010183421.tif 000002
【特許請求の範囲】
【請求項１】
レイヤ２スイッチの後段にレイヤ３以上の転送処理を行うＣＰＵを備える高速ＩＰ転送装置において、前記レイヤ２スイッチは、
受信したパケットデータからレイヤ２およびレイヤ３以上のヘッダ情報を抽出して検索キーを生成するレイヤ２スイッチ受信制御部、
転送すべきパケットデータを識別する条件を登録したテーブルを有し、前記検索キーに基づいて検索する高速検索機能部、
この高速検索機能部での検索結果に対応する特定のヘッダ情報を前記パケットデータへ付与し、当該パケットデータを前記ＣＰＵへ転送するレイヤ２スイッチ送信制御部を備え、前記ＣＰＵは、
前記レイヤ２スイッチより受信したパケットデータから前記特定のヘッダ情報を検出するＣＰＵ受信制御部、
このＣＰＵ受信制御部で検出したヘッダ情報に基づき、前記ヘッダ情報に対応させてあらかじめメモリへ登録した処理情報を取得するＣＰＵルーティング制御部、
この取得した処理情報に基づき、前記パケットデータへレイヤ３以上の転送処理を行うＣＰＵ制御部を備えることを特徴とする高速ＩＰ転送装置。
【請求項２】
前記高速検索機能部の検索結果に対応する特定のヘッダ情報は、ＶＬＡＮ−ＩＤまたはＤＳＣＰであることを特徴とする請求項１に記載の高速ＩＰ転送装置。
【請求項３】
前記高速検索機能部の検索結果に対応する特定のヘッダ情報は、前記あらかじめメモリへ登録した処理情報の格納場所を示すアドレスであることを特徴とする請求項１に記載の高速ＩＰ転送装置。
【請求項４】
前記高速検索機能部での検索において前記検索キーが前記テーブルの条件にヒットしなかった場合に、前記レイヤ２スイッチ送信制御部は、ミスヒットに対応する特定のヘッダ情報を前記パケットデータへ付与し、
前記ＣＰＵ受信制御部は、受信したパケットデータから前記ミスヒットに対応する特定のヘッダ情報を検出した場合に、当該受信したパケットデータからレイヤ２またはレイヤ３以上のヘッダ情報を抽出して検索キーを生成し、
前記ＣＰＵルーティング制御部は、転送すべきパケットデータを識別する条件を登録したテーブルを有して、前記検索キーに基づいて検索し、前記検索キーが前記テーブルの条件にヒットした場合には、前記パケットデータに対する処理情報を前記メモリに格納するとともに、この処理情報に対応する特定のヘッダ情報が前記レイヤ２スイッチ送信制御部で付与されるように、当該パケットデータの識別条件を前記高速検索機能部のテーブルに登録することを特徴とする請求項１に記載の高速ＩＰ転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブロードバンドルータ等のＩＰ転送装置において、特にレイヤ２スイッチの後段にレイヤ３以上の転送処理を行うＣＰＵを備える高速ＩＰ転送装置に関する。
【背景技術】
【０００２】
高速ＩＰ転送装置である従来の一般的なブロードバンドルータは、図４に示すように、レイヤ２スイッチ（Ｌ２ＳＷ）４１、ＣＰＵ４２、ＰＨＹ４３、メモリ４４の各チップを含み構成されている。このチップ構成における従来のＩＰ転送処理について、次に説明する。
【０００３】
このブロードバンドルータで使用されるチップＬ２ＳＷ４１は高速検索機能部４６を実装しており、ＭＡＣヘッダ、ＶＬＡＮタグ等のレイヤ２ヘッダ情報に加え、ＩＰヘッダ等のレイヤ３ヘッダ情報に基づいて転送すべきパケットデータを検索することが可能になっている。
【０００４】
高速検索機能部４６がアクセスするＬ２ＳＷ内蔵メモリ４８は、前記高速検索機能部４６の検索で抽出されるパケットデータの検索後の処理についての情報（処理情報）を格納し、高速検索機能部４６に対しては、前記処理情報のＬ２ＳＷ内蔵メモリ４８内の格納場所を示すアドレス情報を、前記ヘッダ情報等（レイヤ２又はレイヤ３情報）の転送条件に対応させて登録する。
【０００５】
Ｌ２ＳＷ４１へ受信パケットデータが入力されると、Ｌ２ＳＷ受信制御部４５は受信パケットデータからヘッダ情報等を抽出して検索キーを生成する。高速検索機能部４６は、生成された検索キーに基づき当該受信パケットデータが転送すべきパケットデータか否かを確認するための検索を行い、検索キーが登録情報に対しヒットした場合に、その検索キーの条件に対応して登録されているアドレス情報を用いてＬ２ＳＷ内蔵メモリ４８から処理情報を読み出す。Ｌ２ＳＷ送信制御部４７は、読み出された処理情報に従って、優先制御、ＶＬＡＮ−ＩＤ付替え等の処理を行う。
【０００６】
高速検索機能部４６は、前記検索で検索キーが登録情報にヒットしなかった場合（ミスヒット時）は、あらかじめ登録されているミスヒット時の処理情報を格納するＬ２ＳＷ内蔵メモリ４８の特定アドレスを用いて、Ｌ２ＳＷ内蔵メモリ４８から処理情報を読み出す。Ｌ２ＳＷ送信制御部４７は、読み出された処理情報に従って、受信パケットデータの破棄、非優先制御等の処理を行う。
【０００７】
また、チップＣＰＵ４２に含まれるＣＰＵルーティング制御部５０がアクセスするメモリ４４には、前記ＣＰＵルーティング制御部５０の検索で抽出されるパケットデータの検索後の処理についての情報が格納されており、上位のＣＰＵ４２は、その格納場所を示すアドレス情報を、パケットデータのヘッダ情報等の条件に対応させて、ＣＰＵルーティング制御部５０に登録する。
【０００８】
ＣＰＵ４２がＬ２ＳＷ４１からパケットデータを受信すると、ＣＰＵ受信制御部４９は受信パケットデータからヘッダ情報等を抽出して検索キーを生成する。ＣＰＵルーティング制御部５０は、生成された検索キーに基づき当該受信パケットデータが転送すべきパケットデータか否かを確認するための検索を行い、検索キーが登録情報に対しヒットした場合に、その検索キーの条件に対応して登録されているアドレス情報を用いてメモリ４４から処理情報を読み出す。ＣＰＵ送信制御部５１は、読み出された処理情報に従って、ＭＡＣヘッダ付替え等の転送処理を実施し、ＰＨＹ３へ送信する。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】http://ja.broadcom.com/collateral/pb/53115-PB00-R.pdf
【発明の概要】
【発明が解決しようとする課題】
【００１０】
上記のように従来のブロードバンドルータでは、Ｌ２ＳＷ４１とＣＰＵ４２の各チップは、それぞれ受信パケットデータのＬ２およびＬ３ヘッダ情報等に基づく検索機能を有しているが、その検索結果は各チップ内での処理のみに閉じて使用されるように構成されている。すなわち、Ｌ２ＳＷ４１ではＬ３ヘッダ情報に基づく検索を行うことができても、Ｌ３ヘッダ情報の書き換え処理等を行うことはできないため、これらの処理はＣＰＵ４２で行う必要がある。
【００１１】
ここで、ＣＰＵ４２におけるＣＰＵルーティング制御部５０の検索処理は、ソフトウェアによる処理であるために、転送すべきパケットデータのヘッダ情報等と、これに対応するメモリ４４のアドレス情報の登録が増えるに従い検索処理に要する時間が増加して、転送性能が劣化するという問題があった。特に、検索時に最も長い検索条件を採用するロンゲストマッチ方式を使用している場合は、検索を実施する度に毎回全登録情報を検索する必要があるために、大きく転送性能が劣化するという問題があった。
【課題を解決するための手段】
【００１２】
この発明は上記の問題を解決することを目的としたものであり、レイヤ２スイッチの後段にレイヤ３以上の転送処理を行うＣＰＵを備える高速ＩＰ転送装置であって、前記レイヤ２スイッチが、受信したパケットデータからレイヤ２およびレイヤ３以上のヘッダ情報を抽出して検索キーを生成するレイヤ２スイッチ受信制御部と、転送すべきパケットデータを識別する条件を登録したテーブルを有し、前記検索キーに基づいて検索する高速検索機能部と、この高速検索機能部での検索結果に対応する特定のヘッダ情報を前記パケットデータへ付与し、当該パケットデータを前記ＣＰＵへ転送するレイヤ２スイッチ送信制御部とを備え、前記ＣＰＵが、前記レイヤ２スイッチより受信したパケットデータから前記特定のヘッダ情報を検出するＣＰＵ受信制御部と、このＣＰＵ受信制御部で検出したヘッダ情報に基づき、前記ヘッダ情報に対応させてあらかじめメモリへ登録した処理情報を取得するＣＰＵルーティング制御部と、この取得した処理情報に基づき、前記パケットデータへレイヤ３以上の転送処理を行うＣＰＵ制御部とを備えるものである。
【発明の効果】
【００１３】
この発明は、Ｌ２ＳＷでの検索結果をレイヤ３転送処理を行うＣＰＵへ通知し、この通知された検索結果を用いてＣＰＵでレイヤ３転送処理を行うようにしたので、ＣＰＵでの検索処理を簡略化することができ、転送性能の劣化を削減することができる。
【図面の簡単な説明】
【００１４】
【図１】この発明の実施の形態１に係るブロードバンドルーターのチップ構成例を示すブロック図である。
【図２】この発明の実施の形態１に係るブロードバンドルーターの機能ブロック図である。
【図３】この発明の実施の形態２に係るブロードバンドルーターの機能ブロック図である。
【図４】従来のブロードバンドルーターの機能ブロック図である。
【発明を実施するための形態】
【００１５】
実施の形態１．
この発明の実施の形態１について、図１、図２を用いて説明する。図１のとおり、この発明の高速ＩＰ転送装置であるブロードバンドルータは、レイヤ２転送処理を行うレイヤ２スイッチ（Ｌ２ＳＷ）１、レイヤ３転送処理を行うＣＰＵ２、レイヤ１を終端するＰＨＹ３、メモリ４を含む各チップで構成されている。ここで、メモリ４はチップＣＰＵ２の外部メモリとしているが、チップ内部のＬ２キャッシュ等の使用も可能である。
【００１６】
図２において、このブロードバンドルータで使用されるチップＬ２ＳＷ１は、受信したパケットデータからＬ２およびＬ３ヘッダ情報を抽出して検索キーを生成するＬ２ＳＷ受信制御部５と、この検索キーを用いて検索を行う高速検索機能部６、この高速検索機能部６で検索されたパケットデータの処理情報を格納するＬ２ＳＷ内蔵メモリ８、前記処理情報に基づきパケットデータへの処理を行うＬ２ＳＷ送信制御部７を実装している。
【００１７】
前記高速検索機能部６は、転送すべきパケットデータを識別する条件を登録したテーブルを有し、ＭＡＣヘッダ、ＶＬＡＮタグ等のレイヤ２ヘッダ情報に加え、ＩＰヘッダ等のレイヤ３ヘッダ情報の条件を組み合わせた検索キーに基づいて、転送すべきパケットデータを検索する機能を備える。高速検索機能部６の検索で抽出されるパケットデータの検索後の処理についての情報（処理情報）は、高速検索機能部６のアクセスするＬ２ＳＷ内蔵メモリ８にあらかじめ格納し、その格納アドレスを高速検索機能部６のテーブルへ転送条件に対応させて登録する。前記処理情報は、Ｌ２ＳＷ送信制御部７において、Ｌ３ヘッダ情報に基づく検索結果による処理情報、すなわちメモリ４に格納される処理情報の格納アドレスをＶＬＡＮ−ＩＤとして付与する処理を含む。
【００１８】
ＣＰＵ２は、入力したパケットデータからＶＬＡＮ−ＩＤを検出するＣＰＵ受信制御部９と、検出されたＶＬＡＮ−ＩＤをアドレスとしてメモリ４から処理情報を読み出すＣＰＵルーティング制御部１０、取得した処理情報に従い、パケットデータへ処理を行うＣＰＵ送信制御部１１を実装する。メモリ４には、ＭＡＣヘッダ付替え等の処理に必要な処理情報をあらかじめ設定する。これらレイヤ３の処理はＣＰＵ２においてＳ／Ｗで実施する必要があるものである。
【００１９】
次に動作を説明する。Ｌ２ＳＷ１へ受信パケットデータが入力されると、Ｌ２ＳＷ受信制御部５は受信パケットデータからＬ２およびＬ３ヘッダ情報を抽出して前記検索キーを生成する。この検索キーは、従来技術においてＣＰＵルーティング制御部１０での検索時に必要な検索キーと同等となるＬ３ヘッダ情報を含む。高速検索機能部６は、生成された検索キーに基づき当該受信パケットデータが転送すべきパケットデータか否かを確認するための検索を行い、検索キーが登録情報に対しヒットした場合に、その検索キーの条件に対応して登録されているアドレス情報を用いてＬ２ＳＷ内蔵メモリ８から処理情報を読み出す。この処理情報には、高速検索機能部６での検索結果のうちＣＰＵ２へ通知すべき情報、すなわちメモリ４に格納される処理情報の格納アドレスであるＶＬＡＮ−ＩＤを付与する処理情報が含まれる。Ｌ２ＳＷ送信制御部７は、読み出された処理情報に従って、ＶＬＡＮ−ＩＤをパケットデータに付与し、上位ＣＰＵ２へ転送する。
【００２０】
高速検索機能部６は、前記検索で検索キーが登録情報にヒットしなかった場合（ミスヒット時）は、あらかじめ登録されているミスヒット時の処理情報を格納するＬ２ＳＷ内蔵メモリ８の特定アドレスを用いて、Ｌ２ＳＷ内蔵メモリ８から処理情報を読み出す。Ｌ２ＳＷ送信制御部７は、読み出された処理情報に従って、ミスヒット時の特定ＶＬＡＮ−ＩＤをパケットデータに付与して、上位ＣＰＵ２へ転送する。
【００２１】
次に、ＣＰＵ２がＬ２ＳＷ１からパケットデータを受信すると、ＣＰＵ受信制御部９は受信パケットデータからＶＬＡＮ−ＩＤを検出する。ＣＰＵルーティング制御部１０は、検出されたＶＬＡＮ−ＩＤをアドレスとしてメモリ４に対しアクセスし、処理情報を取得する。ＣＰＵ送信制御部１１は、取得した処理情報に従って、ＭＡＣヘッダ付替え等の処理を実施し、ＰＨＹ３へ転送する。
【００２２】
ＣＰＵ２のＣＰＵ受信制御部９は、受信したパケットデータから高速検索機能部６でミスヒットとなった場合に付与される特定ＶＬＡＮ−ＩＤを検出した場合、ＣＰＵ受信制御部９において改めてＬ２およびＬ３ヘッダ情報を検出して検索キーを作成し、ＣＰＵルーティング制御部１０において従来技術と同様の検索をＳ／Ｗで行い、転送すべきパケットデータか否かを判定する。転送すべきと判定した場合は、メモリ４へ上記転送処理情報を登録し、その格納アドレスであるＶＬＡＮ−ＩＤの付与を含む処理情報をＬ２ＳＷ内蔵メモリ８へ格納する。このＬ２ＳＷ内蔵メモリ８の格納アドレスを、前記改めて作成した検索キーの条件と対応させてＬ２ＳＷ１の高速検索機能部６のテーブルへ登録し、以降は高速検索機能部６での検索時にヒットするようにする。
【００２３】
上記によれば、Ｌ２ＳＷ１においてＬ２およびＬ３ヘッダ情報に基づく検索を行い、メモリ４に格納されるＬ３の処理情報のアドレスをＶＬＡＮ−ＩＤとしてＬ２ＳＷ１内でパケットデータに付与するようにしたので、ＣＰＵ２においてＬ２ＳＷ１での検索結果を用いることができ、重い検索処理を行う必要がないため、ＣＰＵ２での転送性能の劣化を防ぐことが可能となる。
【００２４】
尚、上記実施の形態１では、メモリ４に格納される処理情報のアドレスをＶＬＡＮ−ＩＤとして付与したが、Ｌ２ＳＷ１で付与可能であり、かつＣＰＵ２で検出可能なヘッダ情報であればこれに限らない。例えば、６４エントリまでの検索であれば、６ｂｉｔ情報であるＤＳＣＰ（Differentiated Services Code Point）を代用することも可能である。
【００２５】
実施の形態２．
上記実施の形態１では、Ｌ２ＳＷにおいて検索したＬ２およびＬ３ヘッダ情報による検索結果をＶＬＡＮ−ＩＤとしてＣＰＵへ転送したが、この実施の形態２では、更にＴＣＰやＵＤＰヘッダ等のレイヤ４（Ｌ４）ヘッダ情報による検索結果までＶＬＡＮ−ＩＤとしてＣＰＵへ転送する。
【００２６】
図３において、この実施の形態２の高速ＩＰ転送装置であるブロードバンドルータで使用されるチップＬ２ＳＷ２１はレイヤ２転送処理を行う機能を有し、受信したパケットデータからＬ２、Ｌ３およびＬ４ヘッダ情報を抽出して検索キーを生成するＬ２ＳＷ受信制御部２５と、この検索キーを用いて検索を行う高速検索機能部２６、この高速検索機能部２６で検索されたパケットデータの処理情報を格納するＬ２ＳＷ内蔵メモリ２８、前記処理情報に基づきパケットデータへの処理を行うＬ２ＳＷ送信制御部２７を実装している。
【００２７】
前記高速検索機能部２６は、転送すべきパケットデータを識別する条件を登録したテーブルを有し、レイヤ２、レイヤ３およびレイヤ４ヘッダ情報の条件を組み合わせた検索キーに基づいて、転送すべきパケットデータを検索する機能を備える。高速検索機能部２６の検索で抽出されるパケットデータの検索後の処理についての情報（処理情報）は、高速検索機能部２６のアクセスするＬ２ＳＷ内蔵メモリ２８にあらかじめ格納し、その格納アドレスを高速検索機能部２６のテーブルへ転送条件に対応させて登録する。前記処理情報は、Ｌ２ＳＷ送信制御部２７において、Ｌ３およびＬ４ヘッダ情報に基づく検索結果による処理情報、すなわちメモリ２４に格納される処理情報の格納アドレスをＶＬＡＮ−ＩＤとして付与する処理を含む。
【００２８】
ＣＰＵ２２は、レイヤ３転送処理およびレイヤ４転送処理を行う機能を有し、入力したパケットデータからＶＬＡＮ−ＩＤを検出するＣＰＵ受信制御部２９と、検出されたＶＬＡＮ−ＩＤをアドレスとしてメモリ２４から処理情報を読み出すＣＰＵルーティング制御部３０、取得した処理情報に従い、パケットデータへ処理を行うＣＰＵ送信制御部３１を実装する。メモリ２４には、ＭＡＣヘッダ付替え、ＮＡＴ／ＮＡＰＴ、フラグメント、ＳＰＩおよびＦｉｒｅｗａｌｌ機能等の処理に必要な処理情報をあらかじめ設定する。これらのレイヤ３以上の処理はＣＰＵ２２においてＳ／Ｗで実施する必要があるものである。
【００２９】
次に動作を説明する。Ｌ２ＳＷ２１へ受信パケットデータが入力されると、Ｌ２ＳＷ受信制御部２５は受信パケットデータからＬ２、Ｌ３およびＬ４ヘッダ情報を抽出して前記検索キーを生成する。高速検索機能部２６は、生成された検索キーに基づき当該受信パケットデータが転送すべきパケットデータか否かを確認するための検索を行い、検索キーが登録情報に対しヒットした場合に、その検索キーの条件に対し登録されているアドレス情報を用いてＬ２ＳＷ内蔵メモリ２８から処理情報を読み出す。この処理情報には、高速検索機能部２６での検索結果のうちＣＰＵ２２へ通知すべき情報、すなわちメモリ２４に格納される処理情報の格納アドレスであるＶＬＡＮ−ＩＤを付与する処理情報が含まれる。Ｌ２ＳＷ送信制御部２７は、読み出された処理情報に従って、ＶＬＡＮ−ＩＤをパケットデータに付与し、上位ＣＰＵ２２へ転送する。
【００３０】
高速検索機能部２６は、前記検索で検索キーが登録情報にヒットしなかった場合（ミスヒット時）は、あらかじめ登録されているミスヒット時の処理情報を格納するＬ２ＳＷ内蔵メモリ２８の特定アドレスを用いて、Ｌ２ＳＷ内蔵メモリ２８から処理情報を読み出す。Ｌ２ＳＷ送信制御部２７は、読み出された処理情報に従って、ミスヒット時の特定ＶＬＡＮ−ＩＤをパケットデータに付与して、上位ＣＰＵ２２へ転送する。
【００３１】
次に、ＣＰＵ２２がＬ２ＳＷ２１からパケットデータを受信すると、ＣＰＵ受信制御部２９は受信パケットデータからＶＬＡＮ−ＩＤを検出する。ＣＰＵルーティング制御部３０は、検出されたＶＬＡＮ−ＩＤをアドレスとしてメモリ２４に対しアクセスし、処理情報を取得する。ＣＰＵ送信制御部３１は、取得した処理情報に従って、ＭＡＣヘッダ付替え、ＮＡＴ／ＮＡＰＴ、フラグメント、ＳＰＩおよびＦｉｒｅｗａｌｌ機能等の処理を実施し、レイヤ１を終端するＰＨＹ２３へ転送する。
【００３２】
ＣＰＵ２２のＣＰＵ受信制御部２９は、受信したパケットデータから高速検索機能部２６でミスヒットとなった場合に付与される特定ＶＬＡＮ−ＩＤを検出した場合、ＣＰＵ受信制御部２９において改めてＬ２、Ｌ３およびＬ４ヘッダ情報を検出して検索キーを作成し、ＣＰＵルーティング制御部３０において従来技術と同様の検索をＳ／Ｗで行い、転送すべきパケットデータか否かを判定する。転送すべきと判定した場合は、メモリ２４へ上記転送処理情報を登録し、その格納アドレスであるＶＬＡＮ−ＩＤの付与を含む処理情報をＬ２ＳＷ内蔵メモリ２８へ格納する。このＬ２ＳＷ内蔵メモリ２８の格納アドレスを、前記改めて作成した検索キーの条件に対応させてＬ２ＳＷ２１の高速検索機能部２６のテーブルへ登録し、以降は高速検索機能部２６での検索時にヒットするようにする。
【００３３】
上記によれば、Ｌ２ＳＷ２１においてＬ２、Ｌ３およびＬ４ヘッダ情報に基づく検索を行い、メモリ２４に格納されるＬ３以上の処理情報のアドレスをＶＬＡＮ−ＩＤとしてＬ２ＳＷ２１内でパケットデータに付与するようにしたので、ＣＰＵ２２においてＬ２ＳＷ２１での検索結果を用いることができ、重い検索処理を行う必要がないため、ＣＰＵ２２での転送性能の劣化を防ぐことが可能となる。
【符号の説明】
【００３４】
１、２１  レイヤ２ＳＷ（Ｌ２ＳＷ）
２、２２  ＣＰＵ
３、２３  ＰＨＹ
４、２４  メモリ
５、２５  Ｌ２ＳＷ受信制御部
６、２６  高速検索機能部
７、２７  Ｌ２ＳＷ送信制御部
８、２８  Ｌ２ＳＷ内蔵メモリ
９、２９  ＣＰＵ受信制御部
１０、３０  ＣＰＵルーティング制御部
１１、３１  ＣＰＵ送信制御部
【図１】
2010183421.tif 000003
【図２】
2010183421.tif 000004
【図３】
2010183421.tif 000005
【図４】
2010183421.tif 000006