(57)【要約】【課題】ネットワークプロセッサの伝送路上のデータ量を削減し、フレーム転送の効率化を図る。【解決手段】外部ネットワーク装置１０１から受信された受信イーサネットフレームＡから、ヘッダ抽出回路２７によって宛先及び送信元を示す受信ヘッダ情報ＩＮＦ１を抽出する。エントリー比較テーブル回路２８には、予め受信ヘッダ情報ＩＮＦ１がアドレスデータＡＤに対応付けられたエントリー比較テーブルを有しており、比較回路２９は、抽出された受信ヘッダ情報ＩＮＦ１がこのエントリー比較テーブルと一致するか否か判定を行う。受信ヘッダ情報ＩＮＦ１がエントリー比較テーブルと一致した場合には、受信ヘッダ情報ＩＮＦ１を対応するアドレスデータＡＤに置換して再構築フレームデータＭＤを生成する。再構築フレームデータＭＤは、システムバス２５を介して外部メモリ部２４やイーサネットフレーム送信部２２に送信される。【選択図】  図３
2008205942.tif 000002
【特許請求の範囲】
【請求項１】
外部ネットワーク装置から受信した受信フレームに含まれる宛先及び送信元を示す受信ヘッダ情報を、他の外部ネットワーク装置に送信する送信フレームの宛先及び送信元を示す送信ヘッダ情報に変換して前記送信フレームを生成するネットワークプロセッサであって、
前記ネットワークプロセッサ内のデータが転送される伝送路と、
前記受信ヘッダ情報よりもデータ量の少ないアドレスデータと前記受信ヘッダ情報が対応付けられた比較テーブルを参照し、前記受信ヘッダ情報を対応する前記アドレスデータに置換して前記伝送路上に転送されるデータである再構築フレームデータを生成して前記伝送路に転送するフレーム受信部と、
前記伝送路に接続され前記再構築フレームデータを保存するメモリと、
前記アドレスデータと前記送信ヘッダ情報が対応付けられた変換テーブルを参照し、前記再構築フレームデータの前記アドレスデータを対応する前記送信ヘッダ情報と置換することにより前記送信フレームを生成して前記他の外部ネットワーク装置に前記送信フレームを送信するフレーム送信部と
を備えたことを特徴とするネットワークプロセッサ。
【請求項２】
演算処理を行う演算処理部を備え、
前記フレーム受信部は、受信した前記受信ヘッダ情報が前記比較テーブルに該当しない場合には、前記受信フレームに前記受信ヘッダ情報が前記比較テーブルに一致しなかったことを示す不一致情報を付加して前記再構築フレームデータを生成して前記メモリに転送し、
前記演算処理部は、前記メモリに転送された前記不一致情報が付加された前記再構築フレームデータの前記受信ヘッダ情報を前記送信ヘッダ情報に変換して前記メモリに保存し、
前記フレーム送信部は、前記メモリより転送された前記不一致情報及び前記送信ヘッダ情報を有する前記再構築フレームデータから前記不一致情報を削除することにより前記送信フレームを生成することを特徴とする請求項１記載のネットワークプロセッサ。
【請求項３】
前記伝送路は、前記フレーム受信部、前記フレーム送信部、及び前記メモリが接続され、前記フレーム受信部と前記メモリとの間のデータ転送、及び前記フレーム送信部と前記メモリとの間のデータ転送に共通して使用される第１伝送路を有することを特徴とする請求項１又は２記載のネットワークプロセッサ。
【請求項４】
前記伝送路は、前記フレーム受信部及び前記フレーム送信部にそれぞれスイッチング部を介して接続される第１伝送路及び第２伝送路を有し、
前記メモリは、前記第１伝送路に接続され前記アドレスデータを有する前記再構築フレームデータのみが保存される第１メモリと、前記第２伝送路に接続され前記不一致情報を有する前記再構築フレームデータが保存される第２メモリを有することを特徴とする請求項１又は２記載のネットワークプロセッサ。
【請求項５】
データが転送される伝送路と、
外部ネットワーク装置から受信した受信フレームから宛先及び送信元を示す受信ヘッダ部情報を抽出するヘッダ抽出回路と、前記受信ヘッダ情報よりもデータ量の少ないアドレスデータと前記受信ヘッダ情報が対応付けられた比較テーブルを有する比較テーブル回路と、前記受信ヘッダ情報が前記比較テーブルに一致するか否かを判定する比較回路と、前記受信フレームから前記受信ヘッダ情報を削除する削除回路と、前記削除回路によって前記受信ヘッダ情報が削除されたデータに、前記受信ヘッダ情報に対応する前記アドレスデータを付加して前記伝送路に転送されるデータである再構築フレームデータを生成して前記伝送路に転送する再構築フレーム生成回路と、を備えたフレーム受信部と、
前記伝送路に接続され、前記再構築フレームデータを保存するメモリと、
前記比較テーブルが有する前記アドレスデータと前記送信ヘッダ情報が対応付けられた変換テーブルと、前記メモリから前記伝送路を介して前記再構築フレームデータを入力し前記変換テーブルを参照して前記アドレスデータに対応する前記送信ヘッダ情報を前記アドレス情報と置換することにより他の外部ネットワーク装置に送信する送信フレームを生成する送信フレーム生成回路と、を備えたフレーム送信部と、
を備えたことを特徴とするネットワークプロセッサ。
【請求項６】
演算処理を行う演算処理部を備え、
前記フレーム生成回路は、前記受信ヘッダ情報が前記比較テーブルに該当しない場合には、前記受信フレームに前記受信ヘッダ情報が前記比較テーブルに一致しなかったことを示す不一致情報を付加して前記再構築フレームデータを生成し、
前記演算処理部は、前記メモリに転送された前記不一致情報を有する前記再構築フレームデータの前記受信ヘッダ情報を演算処理によって前記送信ヘッダ情報に変換して前記メモリに保存し、
前記フレーム送信部は、前記メモリから転送された前記不一致情報及び前記送信ヘッダ情報を有する前記再構築フレームデータから前記不一致情報を削除することにより前記送信フレームを生成することを特徴とする請求項５記載のネットワークプロセッサ。
【請求項７】
前記伝送路は、前記フレーム受信部、前記フレーム送信部、及びメモリに接続された第１伝送路であることを特徴とする請求項５又は６記載のネットワークプロセッサ。
【請求項８】
前記伝送路は、スイッチング部を介して前記フレーム受信部に接続すると共に他のスイッチング部を介して前記フレーム送信部に接続する第１伝送路と、前記スイッチング部を介して前記フレーム受信部に接続すると共に前記他のスイッチング部を介して前記フレーム送信部に接続する第２伝送路とを備え、
前記メモリは、前記第１伝送路に接続された第１メモリと、前記第２伝送路に接続された第２メモリとを備えた
ことを特徴とする請求項５乃至７記載のネットワークプロセッサ。
【請求項９】
請求項１乃至８のうちいずれか１項に記載のネットワークプロセッサを有するネットワーク装置。
【請求項１０】
外部ネットワーク装置から受信フレームを受信し、
前記受信フレームの宛先及び送信元を示す前記受信ヘッダ情報を抽出し、
前記受信ヘッダ情報よりもデータ量の少ないアドレスデータと前記受信ヘッダ情報が対応付けられた比較テーブルと前記受信ヘッダ部情報が一致するか否かを判定し、
前記比較テーブルと前記受信ヘッダ部情報が一致した場合には、前記受信ヘッダ部情報を前記アドレスデータに置換してシステムバス上に転送される再構築フレームデータを生成してメモリに保存し、
前記メモリに保存された前記再構築フレームデータを受け取り、
前記アドレスデータと他の外部ネットワーク装置に送信する送信フレームの宛先及び送信元を示す送信ヘッダ部情報が対応付けられた変換テーブルを参照して前記アドレスデータに対応する前記送信ヘッダ情報を抽出し、
前記再構築フレームデータの有する前記アドレスデータを前記送信ヘッダ部情報に置換して前記送信フレームを生成することを特徴とするフレーム転送方法。
【請求項１１】
前記比較テーブルと前記受信ヘッダ部情報が一致しない場合には、前記受信フレームに前記比較テーブルと前記受信ヘッダ部情報が一致しなかったことを示す不一致情報を付加して前記再構築フレームデータを生成してメモリに保存し、
演算処理によって前記不一致情報を有する前記再構築フレームデータの前記受信ヘッダ情報を前記送信ヘッダ情報に変換して前記メモリに保存し、
前記メモリに保存された前記送信ヘッダ情報及び前記不一致情報を有する前記再構築フレームデータから前記不一致情報を削除して前記送信フレームを生成する
ことを特徴とする請求項１０記載のフレーム転送方法。
【発明の詳細な説明】
【技術分野】
【０００１】
データの伝送路上に複数のシステムが接続されたネットワークプロセッサにおいて、データ転送の高速化を図る技術に関する。
【背景技術】
【０００２】
ブロードバンド通信の高速化に伴い、イーサネット（登録商標）フレームの転送を行う家庭用ネットワーク装置の需要が急速に伸びている。これに伴い、イーサネットフレームを送受信するネットワーク装置に搭載されるネットワークプロセッサのデータ通信の高速化が求められている。
【０００３】
ここで、外部ネットワーク装置からイーサネットフレームを受信し、他の外部ネットワーク装置にフレーム転送を行うネットワーク装置では、受信されたイーサネットフレームの宛先及び送信元を示す受信ヘッダ情報を、送信するイーサネットフレームの宛先及び送信元を示す送信ヘッダ情報に変換する必要がある。また、社内ネットワークなどの閉ざされたネットワークをインターネットに接続する場合には、アドレス変換機能を用いて、社内ネットワークで使用されるプライベートアドレスをインターネット上で使用されるグローバルアドレスに変換する必要がある。このようなヘッダ情報の変換や、プライベートアドレスからグローバルアドレスへの変換は、ネットワーク装置に搭載されたネットワークプロセッサによって処理される。
【０００４】
このような従来技術が非特許文献１に記載されている。図９は、非特許文献１に記載された従来のネットワークプロセッサの構成を一部簡略化した機能ブロック図である。このネットワークプロセッサは、ＭＡＣブロック部９１、ルックアップブロック部９２、スイッチブロック部９３、ホストインタフェースブロック部９６を備えて構成されている。また、ホストインタフェースブロック部９６には、ＦＥＦ  ＮＡＴ／ＩＰフォワーディング用テーブル９４及び送受信バッファ９５が内蔵されている。
【０００５】
ＭＡＣブロック部９１は、インタフェース９９を介してイーサネットフレームの送受信を行うように構成されている。スイッチブロック部９３は、システムバス９７を介してルックアップブロック部９２から情報を入力し、この情報に基づいて該当するインタフェースイーサネットフレームを転送するよう構成されている。ルックアップブロック部９２は、ＭＡＣブロック部９１においてイーサネットフレームから抽出された受信ヘッダ情報をシステムバス９７を介してスイッチブロック部９３に転送するよう構成されている。また、ルックアップブロック部９２は、後述する内部テーブルであるＦＥＦ  ＮＡＴ／ＩＰフォワーディング用テーブル９４を参照して、受信ヘッダ情報を送信ヘッダ情報に変換するよう構成されている。
【０００６】
ホストインタフェースブロック部９６は、パケットのフォワーディング処理を行うと共にイーサネットフレームの一時保存をするよう構成されている。また、ホストインタフェースブロック部９６は、外部メモリ部９８との間でイーサネットフレームを授受するよう構成されている。
【０００７】
ＦＥＦ  ＮＡＴ／ＩＰフォワーディング用テーブル９４は、受信イーサネットフレームに含まれる受信ヘッダ情報と、送信イーサネットフレームの送信ヘッダ情報が対応付けて登録された内部テーブルである。送受信バッファ９５は、ＭＡＣブロック部９１を介して送受信されるイーサネットフレームを一時保存するよう構成されている。また、外部メモリ９８は、イーサネットフレームを保存するよう構成されている。
【０００８】
このように構成されたネットワークプロセッサでは、インタフェース９９から受信イーサネットフレームが入力されると、ＭＡＣブロック部９１によって受信ヘッダ情報が抽出される。また、受信イーサネットフレームは、システムバス９７を介して送受信バッファ９５に一時保存される。ルックアップブロック部９２は、ＭＡＣブロック部９１が抽出した受信ヘッダ情報と内部テーブルであるＦＥＦ  ＮＡＴ／ＩＰフォワーディング用テーブル９４とを比較する。ルックアップブロック部９２は、受信ヘッダ情報と内部テーブルが一致する場合には、内部テーブルに指定された転送先の送信ヘッダ情報をＭＡＣブロック部９１に転送すると共に、内部テーブルと一致したことを示す一致情報をスイッチブロック部９３に送信する。スイッチブロック部９３は、この一致情報を受信すると、送受信バッファ９５に一時保存されていたイーサネットフレームを受け取り、受信ヘッダ情報を送信ヘッダ情報に書換えて送信イーサネットフレームを生成する。
【０００９】
なお、このようなネットワークプロセッサは、特許文献１〜３にも開示されている。
【特許文献１】特開２００２−２０８９４５号公報
【特許文献２】特開２００３−１５２７８２号公報
【特許文献３】特開平１１−１８７０４５号公報
【非特許文献１】富士通株式会社、「富士通半導体デバイスＤＡＴＡ  ＳＨＥＥＴ：ＤＳ０４−２２１１４−１  ＩＰフォワーディングエンジン  ＭＢ８６９７７」、［online］、［平成１９年２月２０日検索］、インターネット＜ＵＲＬ：http://edevice.fujitsu.com/jp/datasheet/j-ds/j422114.pdf＞
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、上述したような従来のネットワークプロセッサでは、送受信バッファ９５の容量が小さい場合や、イーサネットフレームの送受信が多量に発生した場合では、受信された受信ヘッダ情報とＦＥＦ  ＮＡＴ／ＩＰフォワーディング用テーブル９４とが一致する場合であっても、送受信バッファ９５のオーバーフローを防止するために、システムバス９７を介して外部メモリ９８に転送されるイーサネットフレームが増大する。この結果、伝送路であるシステムバス９７を介した外部メモリ９８とのリードライト処理が発生し、イーサネットフレームの転送速度が低下するという問題点を有する。
【課題を解決するための手段】
【００１１】
本発明に係るネットワークプロセッサは、外部ネットワーク装置から受信した受信フレームに含まれる宛先及び送信元を示す受信ヘッダ情報を、他の外部ネットワーク装置に送信する送信フレームの宛先及び送信元を示す送信ヘッダ情報に変換して前記送信フレームを生成するネットワークプロセッサであって、前記ネットワークプロセッサ内のデータが転送される伝送路と、前記受信ヘッダ情報よりもデータ量の少ないアドレスデータと前記受信ヘッダ情報が対応付けられた比較テーブルを参照し、前記受信ヘッダ情報を対応する前記アドレスデータに置換して前記伝送路上に転送されるデータである再構築フレームデータを生成して前記伝送路に転送するフレーム受信部と、前記伝送路に接続され前記再構築フレームデータを保存するメモリと、前記アドレスデータと前記送信ヘッダ情報が対応付けられた変換テーブルを参照し、前記再構築フレームデータの前記アドレスデータを対応する前記送信ヘッダ情報と置換することにより前記送信フレームを生成して前記他の外部ネットワーク装置に前記送信フレームを送信するフレーム送信部とを備えたことを特徴とする。
【００１２】
このように、フレーム受信部において受信ヘッダ情報よりもデータ量の少ないアドレスデータを受信ヘッダ情報に置換して再構築フレームデータを生成し、フレーム送信部において再構築フレームデータのアドレスデータに対応する送信ヘッダ情報に置換して送信フレームを生成することにより、ネットワークプロセッサの伝送路上を転送されるデータ量を削減し、フレームの転送速度を高速化することができる。
【発明の効果】
【００１３】
本発明に係るネットワークプロセッサによれば、伝送路上のデータ量を削減することにより、フレーム転送の高効率化を図ることができる。
【発明を実施するための最良の形態】
【００１４】
以下、添付した図面を参照して本発明の実施の形態について説明する。
［第１の実施形態］
図１は、本発明の第１の実施形態に係るネットワーク装置１０２を示すブロック図である。ネットワーク装置１０２は、外部ネットワーク装置１０１及び外部ネットワーク装置１０３に接続されている。外部ネットワーク装置１０１、１０２は、例えば、ルータ装置又はパソコン等の端末である。ネットワーク装置１０２は、外部ネットワーク装置１０１から受信イーサネットフレームＡを受信し、外部ネットワーク装置１０３に送信イーサネットフレームＢを送信するよう構成されている。
【００１５】
ネットワーク装置１０２、及び外部ネットワーク装置１０１、１０３には、それぞれネットワーク装置１０１〜１０３を識別するＭＡＣアドレス及びＩＰアドレスが付与されている。ここで、ネットワーク装置１０２はＭＡＣアドレス＝Ｂ、ＩＰアドレス＝１９２．１６８．５０．１、外部ネットワーク装置１０１はＭＡＣアドレス＝Ａ、ＩＰアドレス＝１９２．１６８．５０．２、及び外部ネットワーク装置１０３にはＭＡＣアドレス＝Ｃ、ＩＰアドレス＝１９２．１６８．５０．３が付与されているものとする。
【００１６】
受信イーサネットフレームＡは、受信イーサネットフレームＡの宛先及び送信先を示す受信ヘッダ情報ＩＮＦ１を有している。受信ヘッダ情報ＩＮＦ１には、受信イーサネットフレームＡの宛先のネットワーク装置のＭＡＣアドレスである宛先ＭＡＣアドレスと、受信イーサネットフレームＢの送信元のネットワーク装置のＭＡＣアドレスである送信元ＭＡＣアドレスが含まれている。受信イーサネットフレームＡは、外部ネットワーク装置１０１からネットワーク装置１０２に転送されるため、宛先ＭＡＣアドレス＝Ｂ、送信元ＭＡＣアドレス＝Ａとなる。
【００１７】
一方、送信イーサネットフレームＢは、送信イーサネットフレームＢの宛先及び送信先を示す送信ヘッダ情報ＩＮＦ２を有している。送信ヘッダ情報ＩＮＦ２は、受信ヘッダ情報ＩＮＦ１と同様に宛先ＭＡＣアドレス及び送信元ＭＡＣアドレスを有している。送信イーサネットフレームＢは、ネットワーク装置１０２からネットワーク装置１０３に転送されるため、宛先ＭＡＣアドレス＝Ｃ、送信元ＭＡＣアドレス＝Ｂとなる。
【００１８】
ネットワーク装置１０２は、受信された受信イーサネットフレームＡが有する受信ヘッダ情報ＩＮＦ１を、送信ヘッダ情報ＩＮＦ２に変換して送信イーサネットフレームＢを送信するよう構成されている。このような受信イーサネットフレームＡから送信イーサネットフレームＢへの変換は、ネットワーク装置１０２が有する後述のネットワークプロセッサ２０によって処理される。
【００１９】
図２は、受信イーサネットフレームＡ及び送信イーサネットフレームＢの更に詳細な構成を示す図である。受信イーサネットフレームＡ及び送信イーサネットフレームＢは、宛先ＭＡＣアドレス１、送信元ＭＡＣアドレス２、タイプフィールド３、ＩＰヘッダ４、宛先ＩＰアドレス５、送信元ＩＰアドレス６、宛先ポート７、送信元ポート８、及びデータ９を備えて構成されている。
【００２０】
宛先ＭＡＣアドレス１及び送信元ＭＡＣアドレス２は、前述したように、送信先及び送信元のネットワーク装置のＭＡＣアドレスである。なお、宛先ＭＡＣアドレス１及び送信元ＭＡＣアドレスをＭＡＣアドレス１０とする。タイプフィールド３は、ネットワーク層がどのようなプロトコルを使用しているかを示す。宛先ＩＰアドレス５及び送信元ＩＰアドレス６は、送信先及び送信元のネットワーク装置のＩＰアドレスである。なお、宛先ＩＰアドレス５及び送信元ＩＰアドレス６をＩＰアドレス１１とする。宛先ポート７及び送信元ポート８は、宛先及び送信元のスイッチングＨＵＢの有する物理的ポートである。なお、宛先ポート７及び送信元ポート８をポート番号１２とする。
【００２１】
受信イーサネットフレームＡに含まれる、ＭＡＣアドレス１０、ＩＰアドレス１１、及び宛先ポート番号１２は、前述した受信イーサネットフレームＡの宛先及び送信元を示す受信ヘッダ情報ＩＮＦ１を構成している。送信イーサネットフレームＢは、受信イーサネットフレームＡと同一の構成要素を有している。同様に、送信イーサネットフレームＢの有するＭＡＣアドレス１０、ＩＰアドレス１１、及びポート番号１２は、送信イーサネットフレームＢの宛先及び送信元を示す送信ヘッダ情報ＩＮＦ２を構成している。
【００２２】
図３は、ネットワークプロセッサ２０の構成を示す機能ブロック図である。ネットワーク装置１０２は、ネットワークプロセッサ２０を有している。ネットワークプロセッサ２０は、イーサネットフレーム受信部２１、イーサネットフレーム送信部２２、ＣＰＵ部２３、及び外部メモリ部２４を備えて構成されている。
【００２３】
イーサネットフレーム受信部２１、イーサネットフレーム送信部２２、及びＣＰＵ部２３は、同一のシステムバス２５に接続され、それぞれがバスマスタとして動作するよう構成されている。イーサネットフレーム受信部２１は、入力した受信イーサネットフレームＡを外部メモリ部２４へ書き込む動作を制御するよう構成されている。イーサネットフレーム送信部２２は、外部メモリ部２４のデータを読み出す動作を制御するよう構成されている。ＣＰＵ部２３は、外部メモリ部２４に保存されたデータの参照や、書き込み動作及び読み出し動作におけるネットワークプロセッサ２０の全体的な制御を行うよう構成されている。
【００２４】
イーサネットフレーム受信部２１は、ヘッダ抽出回路２７、エントリー比較テーブル回路２８、比較回路２９、ヘッダ削除回路３０、及び再構築データフレーム生成回路３１を備えて構成されている。
【００２５】
ヘッダ抽出回路２７は、ネットワーク装置１０１より受信イーサネットフレームＡを受信し、受信イーサネットフレームＡに含まれる受信ヘッダ情報ＩＮＦ１を抽出するよう構成されている。エントリー比較テーブル回路２８は、エントリー比較テーブルを備えて構成されている。エントリー比較テーブルは、図４に示すように、複数の受信ヘッダ情報ＩＮＦがそれぞれのアドレスデータＡＤに対応付けられて登録されている。なお、エントリー比較テーブルは、アドレスデータＡＤのデータ長を伸縮することにより任意の数のテーブルを設定することができる。
【００２６】
比較回路２９は、ヘッダ抽出回路２７から出力されたヘッダ部情報ＩＮＦ１と、エントリー比較テーブルに登録された受信ヘッダ情報ＩＮＦ１と入力して比較し、一致するか否かを示す一致／不一致情報をヘッダ削除回路３０及び再構築フレームデータ生成回路３１に出力するよう構成されている。
【００２７】
ヘッダ削除回路３０は、ネットワーク通信装置１０１から受信イーサネットフレームＡを入力し、比較回路２９から入力された一致／不一致情報が一致情報であった場合に、受信イーサネットフレームＡから受信ヘッダ情報ＩＮＦ１を削除するよう構成されている。
【００２８】
再構築データフレーム生成回路３１は、比較回路２９からを一致／不一致情報入力し、受信イーサネットフレームＡを再構築して再構築データフレームＭＤを生成するよう構成されている。なお、生成された再構築データフレームＭＤは、システムバス２５を介して転送され、外部メモリ部２４に保存される。
【００２９】
再構築データフレーム生成回路３１は、比較回路２９から一致情報を入力した場合には、図２に示すように、ヘッダ削除回路３０によって受信イーサネットフレームＡから受信ヘッダ情報ＩＮＦ１が削除されたデータに、一致情報１３及び一致テーブル１４を付加して再構築フレームデータＭＤを生成するよう構成されている。なお、一致テーブルは、アドレスデータＡＤによって構成されている。
【００３０】
一方、再構築データフレーム生成回路３１は、比較回路２９から不一致情報を入力した場合には、図２に示すように、受信イーサネットフレームＡに不一致情報１６を付加して再構築フレームデータＭＤを生成するよう構成されている。なお、比較回路２９から不一致情報が入力された場合には、受信ヘッダ情報ＩＮＦ１は削除されない。
【００３１】
イーサネットフレーム送信部２２は、エントリー変換テーブル回路３３及び送信フレーム生成回路３４を備えて構成されている。
【００３２】
エントリー変換テーブル回路３３は、図５に示すようなエントリー変換テーブルを有している。エントリー変換テーブルは、送信ヘッダ情報ＩＮＦ２がアドレスデータＡＤに対応付けて登録されている。なお、エントリー変換テーブルのアドレスデータＡＤは、エントリー比較テーブルのアドレスデータＡＤに対応している。エントリー変換テーブル回路３３は、再構築フレームデータＭＤに一致情報１３が含まれている場合には、再構築フレームデータＭＤに含まれるアドレスデータＡＤ（一致テーブル１４）を参照し、このアドレスデータＡＤに対応する送信ヘッダ情報ＩＮＦ２をデータバス２６に出力するよう構成されている。
【００３３】
送信フレーム生成回路３４は、エントリー変換テーブル回路３３から送信ヘッダ部情報ＩＮＦ２を入力し、再構築データフレームＭＤの有する一致情報１３及び一致テーブル１４を送信ヘッダ情報ＩＮＦ２に置換することにより送信イーサネットフレームＢを構築するよう構成されている。また、再構築フレームデータＭＤに不一致情報１６が含まれる場合には、この不一致情報１６を削除して送信イーサネットフレームＢを構築するよう構成されている。
【００３４】
ＣＰＵ部２３は、システムバス２５に接続され、ネットワークプロセッサ２０全体の動作を管理するよう構成されている。外部メモリ部２４は、システムバス２５に接続され、再構築フレームＭＤを記憶するよう構成されている。なお、図３では、外部メモリ部２４がネットワークプロセッサ２０に含まれているが、外部メモリ部２４は、ＣＰＵ部２３と同一システム上に設置されていればいずれに設置されていてもよい。
【００３５】
次に、このように構成されたネットワーク装置１０２の動作について説明する。ネットワーク装置１０２は、外部ネットワーク装置１０１から受信ネットワークフレームＡを受信し、外部ネットワーク装置１０３に送信ネットワークフレームＢを出力するよう動作する。図６は、ネットワーク装置１０２の受信イーサネットフレームＡの受信時の動作を示すフローチャートである。
【００３６】
はじめに、外部ネットワーク装置１０１から受信イーサネットフレームＡを受信する（Ｓ１１）。この受信イーサネットフレームＡは、ヘッダ抽出回路２７及びヘッダ削除回路３０に取り込まれる。ヘッダ抽出回路２７は、入力された受信イーサネットフレームＡからＭＡＣアドレス１０、ＩＰアドレス１１、及びポート番号１２からなる受信ヘッダ情報ＩＮＦ１を抽出する（Ｓ１２）。この受信ヘッダ情報ＩＮＦ１は、比較回路２９に出力される。
【００３７】
比較回路２９は、入力された受信ヘッダ情報ＩＮＦ１と、エントリー比較テーブル回路２８の有するエントリー比較テーブル（図４）を比較し（Ｓ１３）、受信ヘッダ情報ＩＮＦ１がエントリー比較テーブルと一致するか否か判定を行う（Ｓ１４）。この判定結果である一致／不一致情報は、再構築データフレーム生成回路３１に出力される。
【００３８】
受信ヘッダ情報ＩＮＦ１とエントリー比較テーブルが一致する場合には、ヘッダ削除回路３０によって受信イーサネットフレームＡの受信ヘッダ情報ＩＮＦ１が削除される（Ｓ１５）。次に、再構築データフレーム生成回路３１によって、受信イーサネットフレームＡから受信ヘッダ報部ＩＮＦ１が削除されたデータに、一致情報１３及び一致テーブル１４情報を付加することにより再構築フレームデータＭＤを生成する（Ｓ１６）。生成された再構築フレームデータＭＤは、システムバス２５を介して外部メモリ部２４に格納される。この保存が完了すると、ＣＰＵ部２３は、イーサネットフレーム送信部２２に対して送信要求を行う。
【００３９】
一方、ステップＳ４において、受信ヘッダ情報ＩＮＦ１がエントリー比較テーブルと一致しない場合には、受信イーサネットフレームＡに不一致情報１６を付加し、再構築フレームデータＭＤを生成する（Ｓ１７）。このように生成された再構築フレームデータＭＤは、システムバス２５を介して外部メモリ部２４に格納される。その後、ＣＰＵ部２３によって、再構築フレームデータＭＤのヘッダ情報ＩＮＦ１を読み出しながら、演算処理によって受信ヘッダ情報ＩＮＦ１を送信ヘッダ情報ＩＮＦ２に変換し、再構築フレームデータＭＤを上書きして再度外部メモリ部２４に保存する。この保存が完了すると、ＣＰＵ部２３は、イーサネットフレーム送信部２２に対して送信要求を行う。これにより、ネットワークプロセッサ２０は、次に示す送信イーサネットフレームＢの送信時の動作を行う。
【００４０】
図７は、ネットワーク装置１０２の送信イーサネットフレームＢの送信時の動作を示すフローチャートである。はじめに、イーサネットフレーム送信部２２は、メモリ部２４からシステムバス２５を介して再構築フレームデータＭＤを受け取る（Ｓ２１）。この再構築フレームデータＭＤは、データバス２６を介してエントリー変換テーブル回路３３及び送信フレーム生成回路３４に出力される。次に、送信フレーム生成回路３４おいて、再構築フレームデータＭＤに含まれる比較結果情報１５を抽出し（Ｓ２２）、比較結果情報１５に一致情報１３が含まれているか否かを判定する（Ｓ２３）。
【００４１】
比較結果情報１５に一致情報１３が含まれている場合は、再構築フレームデータＭＤから一致テーブル１４であるアドレスデータＡＤを抽出した後、比較結果情報１５を削除する（Ｓ２４）。送信フレーム生成回路３４は、アドレスデータＡＤに対応した送信ヘッダ情報ＩＮＦ２をエントリー変換テーブル回路３３から抽出し、この送信ヘッダ情報ＩＮＦ２を比較結果情報１５が削除された再構築フレームデータＭＤに付加してイーサネットフレームＢを生成する（Ｓ２５）。その後、送信フレーム生成回路３４は、送信イーサネットフレームＢを外部ネットワーク装置１０３に送信する（Ｓ２６）。
【００４２】
一方、ステップ（Ｓ２３）において、比較結果情報１５に不一致情報１６含まれている場合には、再構築フレームデータＭＤから不一致情報１６を削除することにより送信イーサネットフレームＢを生成し（Ｓ２７）、この送信イーサネットフレームＢを外部ネットワーク装置１０３に送信する。
【００４３】
このように、互いにアドレスデータＡＤによって対応付けられたエントリー比較テーブルとエントリー変換テーブルとを受信側及び送信側に分割して設け、受信ヘッダ情報ＩＮＦ１を比較結果情報１５に置換して圧縮した再構築フレームデータＭＤをシステムバス２５上に転送することで、システムバス２５とメモリ部２４との間で転送されるデータ量を削減し、データの処理時間を短縮することができる。これにより、ネットワーク装置１０２におけるデータ転送の高効率化を図ることができる。
【００４４】
ここで、外部ネットワーク装置１０１、１０３に転送されるイーサネットフレームＡ、Ｂは、図３に示すように、６バイトの宛先ＭＡＣアドレス、６バイトの送信元ＭＡＣアドレス、１６バイトの宛先ＩＰアドレス、１６バイトの送信元ＩＰアドレス、２バイトの宛先ポート、及び２バイトの送信元ポートからなる、４８バイトの受信ヘッダ情報ＩＮＦ１を有している。これに対し、ＩＮＦ１がエントリー比較テーブルと一致した場合の再構築フレームデータＭＤでは、４８バイトの受信ヘッダ情報ＩＮＦ１が、受信ヘッダ情報ＩＮＦ１がエントリー比較テーブルと一致するか否かを示す１ビットの一致情報１３と、７ビットのアドレスデータＡＤ（エントリー比較テーブルが２７＝１２８通りのテーブルを有している場合）である一致テーブル１４に置換することができる。これにより、４８バイトの受信ヘッダ情報ＩＮＦ１が１バイトの比較結果情報１５に圧縮されることとなる。
【００４５】
ここで、イーサネットプロトコルで規定された最短フレームに必要なバイト数は６４バイトである。システムバス２５上のデータ削減率（％）は、
（式１）１００−（削減後の転送データ量／削減前の転送データ量）×１００
によって表すことができる。そのため、最短フレーム長さで通信を行う際のデータ削減率は、
（式２）１００−（（６４−４８＋１）×１００／６４）＝７３（％）
となり、システムバス２５上のデータ量を約１／４にまで削減することができる。
【００４６】
一方、イーサネットプロトコルで規定された最長フレームに必要なバイト数は１５１８バイトである。そのため、最長フレーム長さで通信を行う際のデータ削減率は、
（式３）１００−（（１５１８−４８＋１）×１００／１５１８）＝３（％）
となり、システムバス２５上のデータ量を３％削減することが可能となる。
【００４７】
このように、システムバス２５上のデータ量を削減することにより、複数のバスマスタがシステムバス２５に対してアクセス要求した場合であっても、各バスマスタのアクセス待ち状態を低減し、イーサネットフレーム転送処理効率の低下を防止することができる。また、複数のバスマスタがアクセス要求した場合に生じるシステムバス２５上に転送されるデータの廃棄確率を低減することができる。また、外部メモリ部２４をネットワークプロセッサ２０外部に設けることにより、ネットワークプロセッサ２０に内蔵するメモリ容量を増やす必要はない。
【００４８】
なお、エントリーテーブルの数は１２８に限定されるものではない。エントリーテーブル数を２ｎとすると（ｎは自然数）、エントリーテーブルと受信ヘッダ情報ＩＮＦ１が一致したときの比較結果情報１５のデータ量は、（一致／不一致情報の１ビット）＋（アドレスデータであるｎビット）＝（ｎ＋１）ビットとなる。そのため、（ｎ＋１）ビットが４８バイトの受信ヘッダ情報ＩＮＦ１のデータ量よりも小さい場合では、本発明のデータ量を削減するという効果を奏することが可能である。
【００４９】
［第２の実施形態］
図８は、本発明の第２の実施形態に係るネットワーク装置２０２の構成を示すブロック図である。ネットワーク装置２０２は、ネットワークプロセッサ４０を有している。第２の実施形態の特徴は、イーサネットフレーム受信部２１がスイッチブロック（以下、Ｓ／Ｗブロックとする。）３５を介してシステムバス２５に接続され、イーサネットフレーム送信部２２がＳ／Ｗブロック３６を介してシステムバス２５に接続されている点にある。また、Ｓ／Ｗブロック３５と、Ｓ／Ｗブロック３６との間には、内蔵メモリ３７が接続されている。なお、他の構成については、第１の実施形態と略同一構成であるため、同一要素については同一符号を付すことによりその説明を省略する。
【００５０】
内蔵メモリ３７は、受信ヘッダ情報ＩＮＦ１とエントリー比較テーブルとを比較し、受信ヘッダ情報ＩＮＦ１とエントリー比較テーブルとが一致する場合には、再構築データフレーム生成回路３１で生成された再構築データフレームＭＤを一時保存するよう構成されている。
【００５１】
Ｓ／Ｗブロック３５は、内蔵メモリ３７の空き容量に応じて、再構築データフレームＭＤを内蔵メモリ３７か外部メモリ部２４に保存するのか切替えを行い、どちらに保存したかを保存情報としてＣＰＵ部２３に送信するよう構成されている。Ｓ／Ｗブロック３６は、ＣＰＵ部２３に送信された保存情報に基づいて、内蔵メモリ３７又は外部メモリ部２４に保存されたデータを取り出し、イーサネットフレーム送信部２２に出力するよう構成されている。なお、内蔵メモリ３７又は外部メモリ部２４のどちらかに優先的に再構築データフレームＭＤを記憶するようシステムとして選択可能に構成されている。
【００５２】
このように、Ｓ／Ｗブロック３５、３６、及び内蔵メモリ３７を設けることによって、受信ヘッダ情報ＩＮＦ１がエントリー比較テーブル（図４）と一致する場合に、内蔵メモリ３７が空き容量を有しているときは、システムバス２５を経由せずに再構築データフレームＭＤをイーサネットフレーム受信部２１からイーサネットフレーム送信部２２へ転送することができる。これにより、システムバス２５のデータ占有率を削減することができる。再構築データフレームＭＤは、受信ヘッダ情報ＩＮＦ１がエントリー比較テーブルと一致した場合には、４８バイトの受信ヘッダ情報ＩＮＦ１が１バイトの比較結果情報１５に圧縮されるため（エントリーテーブルの数を１２８とした場合）、内部メモリ３７に保存可能なフレーム数を増大させることができる。なお、内部メモリ３７に空き容量がない場合には、第１の実施形態と同様に、再構築データフレームＭＤをシステムバス２５を介してイーサネットフレーム受信部２１からイーサネットフレーム送信部２２へ転送する。この際のデータ削減率は、第１の実施形態と同様である。
【図面の簡単な説明】
【００５３】
【図１】本発明の第１の実施形態に係るネットワーク装置１０２の機能を示すブロック図である。
【図２】ネットワークプロセッサ２０の構成を示す機能ブロック図である。
【図３】ネットワークプロセッサ２０において送受信されるイーサネットフレームの構成を示す図である。
【図４】エントリー比較テーブル回路２８のエントリー比較テーブルを示す図である。
【図５】エントリー変換テーブル回路３３のエントリー変換テーブルを示す図である。
【図６】ネットワーク装置１０２の受信イーサネットフレームＡの受信時の動作を示すフローチャートである。
【図７】ネットワーク装置１０２の送信イーサネットフレームＢの送信時の動作を示すフローチャートである。
【図８】本発明の第２の実施形態に係るネットワーク装置２０２の構成を示すブロック図である。
【図９】非特許文献１に記載された従来のネットワークプロセッサの構成を一部簡略化した機能ブロック図である。
【符号の説明】
【００５４】
１...宛先ＭＡＣアドレス
２...送信元ＭＡＣアドレス
３...タイプフィールド
４...ＩＰヘッダ
２０...ネットワークプロセッサ
２１...イーサネットフレーム受信部
２２...イーサネットフレーム送信部
２３...ＣＰＵ部
２４...外部メモリ部
２５...システムバス
【図１】
2008205942.tif 000003
【図２】
2008205942.tif 000004
【図３】
2008205942.tif 000005
【図４】
2008205942.tif 000006
【図５】
2008205942.tif 000007
【図６】
2008205942.tif 000008
【図７】
2008205942.tif 000009
【図８】
2008205942.tif 000010
【図９】
2008205942.tif 000011