(57)【要約】【課題】パケットデータの記憶領域を対象とする空塞管理を不要とし、従来の装置よりも通信速度を向上させる。【解決手段】パケット入力処理回路１１０において、通信パケットのヘッダ情報とキュー部１２０が有する各キューの状態とに基づいて、入力された通信パケットを記憶するかまたは廃棄するかを決定し、通信パケットを記憶すると決定したとき、この通信パケットを記憶させるパケットデータ記憶領域を識別する記憶領域識別情報、および、パケット情報を生成する。【選択図】  図１
2005323231.tif 000002
【特許請求の範囲】
【請求項１】
入力された通信パケットの通信品質を制御して出力するパケット通信品質制御装置において、
入力された通信パケットを示すパケットデータを記憶するパケットデータ記憶領域を複数有するパケットデータ記憶部と、
前記パケットデータ記憶領域毎に、当該パケットデータ記憶領域で記憶されているパケットデータに関する情報であるパケット情報を順次記憶するキューを有するキュー部と、
入力された前記通信パケットのヘッダ情報と前記キュー部が有する各キューの状態とに基づいて、入力された前記通信パケットを記憶するかまたは廃棄するかを決定し、前記通信パケットを記憶するとの決定に応じて、この通信パケットを記憶させる前記パケットデータ記憶領域を識別する記憶領域識別情報、および、この通信パケットの前記パケット情報を生成するパケット入力処理回路とを備え、
前記パケット入力処理回路は、入力された前記通信パケットに保証する通信品質に応じて前記パケットデータ記憶領域を決定し、
前記キュー部は、前記パケット入力処理回路が生成した前記記憶領域識別情報およびパケット情報を、前記記憶領域識別情報によって特定される前記パケットデータ記憶領域と対応する前記キューに記憶することを特徴とするパケット通信品質制御装置。
【請求項２】
請求項１に記載のパケット通信品質制御装置において、
前記パケットデータ記憶部は、記憶しているパケットデータをその記憶した順番に出力する、１つ以上のＦＩＦＯを有することを特徴とするパケット通信品質制御装置。
【請求項３】
請求項１または２に記載のパケット通信品質制御装置において、
入力された前記パケット情報を記憶するとともに、記憶した前記パケット情報を読み出すための複数のアクセスポートを有するマルチアクセスキューと、
前記パケット入力処理回路で生成された前記パケット情報がマルチキャストを指示するマルチキャスト指示情報を含む際には、前記マルチキャスト指示情報を含むパケット情報を前記マルチアクセスキューに記憶させ、前記マルチアクセスキューに記憶したパケット情報を前記出力部のいずれかに出力させる際には、前記マルチアクセスキューの前記アクセスポートを選択するとともに、出力させる前記パケット情報が記憶された記憶領域を特定する位置情報を前記マルチアクセスキューに出力するマルチキャスト用キュー制御部と、
前記マルチアクセスキューが前記パケット情報を出力した際、前記パケットデータ記憶部から前記マルチアクセスキューに対応する前記パケットデータ記憶領域に記憶されたパケットデータを読み出して通信パケットを生成し出力する複数の出力部とをさらに備えることを特徴とするパケット通信品質制御装置。
【請求項４】
請求項１〜３のいずれか１項に記載のパケット通信品質制御装置において、
入力された前記通信パケットのうちの所定の通信パケットのパケットデータに対して所定のパケット処理を行うパケット処理部をさらに備え、
前記パケットデータ記憶部は、前記パケット処理部が前記パケット処理を行う対象の通信パケットのパケットデータを記憶する、ランダムアクセス可能な複数のＲＡＭ記憶領域を有するパケットデータメモリを有し、
前記パケット入力処理回路は、少なくとも、入力された各通信パケットから当該通信パケットのヘッダ情報に基づいて前記パケット処理を行う通信パケットを抽出し、抽出した前記通信パケットのパケットデータを記憶させる前記ＲＡＭ記憶領域を識別するＲＡＭ領域識別情報および抽出した通信パケットの前記パケット情報を生成する空塞管理回路を有し、抽出した前記通信パケットを前記ＲＡＭ領域識別情報で識別される前記ＲＡＭ記憶領域に記憶させ、
前記パケット処理部は、前記ヘッダ情報と前記空塞管理回路が生成した前記パケット情報とに基づいて、前記ＲＡＭ領域識別情報によって特定されるＲＡＭ記憶領域に記憶されているパケットデータに対して前記パケット処理を行うことを特徴とするパケット通信品質制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット通信技術に関し、特にネットワークを介して受信した通信パケットを送信する際の通信品質を制御するパケット通信品質制御技術に関する。
【背景技術】
【０００２】
近年、電話回線を用いた通信や、インターネットを介した通信、さらには宛先に通信パケットが到達するまでの時間が所定内に限定される通信等、利用される通信態様が多様化しつつある。
このような多様化に伴い、ＱｏＳ（Quality of Service）と呼ばれる通信品質の制御の重要性が高まっており、保証する通信品質に応じて通信制御を行うパケット通信品質制御技術が注目を集めている。
【０００３】
このようなパケット通信品質制御は、通常、ＣＰＵを用いて行われる。ＣＰＵは、入手が容易で、汎用性が高く、プログラムに応じて、動作を容易に決定したり、変更したりすることが可能である等の理由があるからである。コンピュータを通信サーバとして用いるのは、この一例といえるであろう。
【０００４】
従来、このようなＣＰＵによる通信品質制御は、例えば、ＲＯＭ（Read Only Memory）等から読み込んだプログラムに基づいて、入力された通信パケットのデータであるパケットデータを記憶させるメモリ上の記憶領域を決定し、決定された記憶領域にパケットデータを記憶させ、その後、上記の入力された通信パケットに関する情報であるパケット情報を生成し、生成したパケット情報を出力するキューを複数のキューの中から決定し、選択したキューに上記で生成したパケット情報を出力する等によって行われるものとなっていた。
【０００５】
なお、出願人は、本明細書に記載した先行技術文献情報で特定される先行技術文献以外には、本発明に関連する先行技術文献を出願時までに発見するには至らなかった。
【非特許文献１】「簡単・快適・安全なネットワークサービスを実現するホームゲートウェイ(HIKARI GATE)」,http://www.ntt.co.jp/RD/OFIS/active/2003pdf/sw24.pdf,日本電信電話株式会社,端末・ソフトウェア技術,サイバーソリューション研究所
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、このような従来のパケット通信品質制御技術では、メモリ領域の空塞領域の管理（以下、空塞管理という）が複雑になり、十分な通信速度を実現できないという問題があった。
特に、ＣＰＵを用いて行う通信品質の制御では、入力された通信パケットを必ずしも全て処理できるほど処理速度を速くできないため、または、かかる処理速度を保証できないため、パケット情報を出力するキューを決定する前にパケットデータを記憶させていることから、上記のような空塞領域が発生する。
【０００７】
具体的には、パケット情報をキューに出力した後の優先制御により、装置から出力するパケットデータの順番が入れ替わり、データが記憶された順番にパケットデータが読み出されず、メモリ内に記憶領域の空塞領域が発生してしまうことなどがあげられる。
通常、メモリは、一定時間内に入力されるパケットデータを格納可能な記憶容量を備える必要があり、入力速度の高速化に伴ってメモリに格納する通信パケット数が増加する。このため、空塞管理が複雑になり、十分な通信速度を実現できなかった。
【０００８】
本発明はこのような課題を解決するためのものであり、パケットデータの記憶領域を対象とする空塞管理を不要とし、従来の装置よりも通信速度を向上できるパケット処理装置を提供することを目的としている。
【課題を解決するための手段】
【０００９】
このような目的を達成するために、本発明にかかるパケット通信品質制御装置は、入力された通信パケットの通信品質を制御して出力するパケット通信品質制御装置において、入力された通信パケットを示すパケットデータを記憶するパケットデータ記憶領域を複数有するパケットデータ記憶部と、パケットデータ記憶領域毎に、当該パケットデータ記憶領域で記憶されているパケットデータに関する情報であるパケット情報を順次記憶するキューを有するキュー部と、入力された通信パケットのヘッダ情報とキュー部が有する各キューの状態とに基づいて、入力された通信パケットを記憶するかまたは廃棄するかを決定し、通信パケットを記憶するとの決定に応じて、この通信パケットを記憶させるパケットデータ記憶領域を識別する記憶領域識別情報、および、この通信パケットのパケット情報を生成するパケット入力処理回路とを備え、パケット入力処理回路で、入力された通信パケットに保証する通信品質に応じてパケットデータ記憶領域を決定し、キュー部で、パケット入力処理回路が生成した記憶領域識別情報およびパケット情報を、記憶領域識別情報によって特定されるパケットデータ記憶領域と対応するキューに記憶するようにしたものである。
【００１０】
この際、パケットデータ記憶部に、記憶しているパケットデータをその記憶した順番に出力する、１つ以上のＦＩＦＯを設けてもよい。
【００１１】
また、マルチキャスト対応として、入力されたパケット情報を記憶するとともに、記憶したパケット情報を読み出すための複数のアクセスポートを有するマルチアクセスキューと、パケット入力処理回路で生成されたパケット情報がマルチキャストを指示するマルチキャスト指示情報を含む際には、マルチキャスト指示情報を含むパケット情報をマルチアクセスキューに記憶させ、マルチアクセスキューに記憶したパケット情報を出力部のいずれかに出力させる際には、マルチアクセスキューのアクセスポートを選択するとともに、出力させるパケット情報が記憶された記憶領域を特定する位置情報をマルチアクセスキューに出力するマルチキャスト用キュー制御部と、マルチアクセスキューがパケット情報を出力した際、パケットデータ記憶部からマルチアクセスキューに対応するパケットデータ記憶領域に記憶されたパケットデータを読み出して通信パケットを生成し出力する複数の出力部とをさらに備えてもよい。
【００１２】
また、入力された通信パケットのうちの所定の通信パケットのパケットデータに対して所定のパケット処理を行うパケット処理部をさらに備え、パケットデータ記憶部に、パケット処理部がパケット処理を行う対象の通信パケットのパケットデータを記憶する、ランダムアクセス可能な複数のＲＡＭ記憶領域を有するパケットデータメモリを設け、パケット入力処理回路で、少なくとも、入力された各通信パケットから当該通信パケットのヘッダ情報に基づいてパケット処理を行う通信パケットを抽出し、抽出した通信パケットのパケットデータを記憶させるＲＡＭ記憶領域を識別するＲＡＭ領域識別情報および抽出した通信パケットのパケット情報を生成する空塞管理回路を有し、抽出した通信パケットをＲＡＭ領域識別情報で識別されるＲＡＭ記憶領域に記憶させ、パケット処理部で、ヘッダ情報と空塞管理回路が生成したパケット情報とに基づいて、ＲＡＭ領域識別情報によって特定されるＲＡＭ記憶領域に記憶されているパケットデータに対してパケット処理を行うようにしてもよい。
【発明の効果】
【００１３】
本発明によれば、パケット入力処理回路で、入力された通信パケットのヘッダ情報とキュー部が有する各キューの状態とに基づいて、入力された通信パケットを記憶するかまたは廃棄するかが決定され、通信パケットを記憶すると決定したとき、その通信パケットを記憶させるパケットデータ記憶領域を識別する記憶領域識別情報、および、この通信パケットのパケット情報が生成されため、パケットデータの記憶領域を対象とする空塞管理を不要とし、従来の装置よりも通信速度を向上させることができる。
【発明を実施するための最良の形態】
【００１４】
次に、本発明の実施の形態について図面を参照して説明する。
［第１の実施の形態］
まず、図１を参照して、本発明の第１の実施の形態にかかるパケット通信品質制御装置について説明する。図１は本発明の第１の実施の形態にかかるパケット通信品質制御装置の構成を示すブロック図である。
このパケット通信品質制御装置１００は、パケット入力処理回路１１０、キュー部１２０、パケットデータ記憶部１３０、および出力部１４０が設けられている。
【００１５】
パケット入力処理回路１１０は、入力された通信パケットに対して後述する入力処理を施し、パケット情報をキュー部１２０に出力し、入力された通信パケットのデータであるパケットデータをパケットデータ記憶部１３０に出力する回路部である。
このパケット情報は、例えば、パケット長、パケットデータ記憶部１３０に記憶されたパケットデータの記憶領域を示すポインタ等の通信パケットに関する所定のデータであり、通信パケット毎に生成されるものである。パケット通信品質制御装置１００は、かかるパケット情報等に基づいて通信品質の制御を行うようになっている。
【００１６】
本実施の形態にかかるパケット入力処理回路１１０は、入力部１１１とメモリ管理部１１２とによって構成されている。このパケット入力処理回路１１０では、上記入力処理として、入力された通信パケットのヘッダ情報とキュー部１２０が有する各キューの状態とに基づいて、入力された通信パケットを記憶するかまたは廃棄するかを決定し、通信パケットを記憶すると決定したとき、この通信パケットを記憶させるパケットデータ記憶領域を識別する記憶領域識別情報（以下、書き込み位置情報という）およびこの通信パケットのパケット情報を生成する処理を行う。
なお、パケット入力処理回路１１０は、従来のＣＰＵ等のプログラムに応じて処理を行うものではなく、デジタル回路によって構成され、プログラム無しで上記の入力処理を行う回路である。
【００１７】
パケットデータ記憶部１３０は、入力されたパケットデータを記憶するパケットデータ記憶領域を複数有する回路部である。
キュー部１２０は、上記パケット情報を記憶する複数のキューをパケットデータ記憶領域と対応させて有する回路部である。
出力部１４０は、パケットデータ記憶部１３０に記憶されたパケットデータを出力する回路部である。この出力部１４０は、キュー部１２０およびパケットデータ記憶部１３０と接続され、メモリ管理部１１２を介してパケットデータ記憶部１３０に記憶されたパケットデータを読み出すようになっている。
【００１８】
［キュー部およびパケットデータ記憶部の構成］
次に、キュー部１２０の構成について詳細に説明する。キュー部１２０を構成する各キューは、ＦＩＦＯ（First In First Out）動作と称される、最初に入力されたパケットデータが最初に出力されるようにメモリ管理が行われる記憶領域によって構成されている。以下、キュー部１２０を構成する各キューを、単に、ＦＩＦＯという。このようなＦＩＦＯとしては、リングバッファ回路を用いて実現できる。同様に、パケットデータ記憶部１３０が、上記のパケットデータ記憶領域毎に、上記のＦＩＦＯによって構成されるものとする。
【００１９】
図１には、パケットデータを記憶するパケットデータＦＩＦＯ［１］〜パケットデータＦＩＦＯ［Ｎ］がパケットデータ記憶部１３０を構成する例が示されている。ここで、各パケットデータＦＩＦＯ［ｉ］（ｉ＝１〜Ｎ：Ｎは２以上の整数）は、パケットデータ記憶部１３０内の記憶領域を各パケットデータＦＩＦＯ［ｉ］毎に区分けして構成されている。そして、例えば、パケットデータＦＩＦＯ［１］には、パケットデータａ、パケットデータｂおよびパケットデータｃが記憶されており、パケットデータＦＩＦＯ［Ｎ］には、パケットデータＡ、パケットデータＢおよびパケットデータＣが記憶されている例が示されている。ここで、各パケットデータＦＩＦＯ［ｉ］は、Ｓ（ｉ）個のパケットデータを記憶できるようになっている。
【００２０】
また、図１に、パケット情報を記憶するパケット情報ＦＩＦＯ［１］〜パケット情報ＦＩＦＯ［Ｎ］がキュー部１２０を構成する例が示されている。そして、例えば、パケット情報ＦＩＦＯ［１］には、パケットデータＦＩＦＯ［１］と対応して、パケット情報ａ、パケット情報ｂおよびパケット情報ｃが記憶されており、パケット情報ＦＩＦＯ［Ｎ］には、パケットデータＦＩＦＯ［Ｎ］と対応して、パケット情報Ａ、パケット情報Ｂおよびパケット情報Ｃが記憶されている例が示されている。ここで、各パケット情報ＦＩＦＯ［ｉ］は、Ｓ（ｉ）個のパケット情報を記憶できるようになっている。
【００２１】
［第１の実施の形態の動作］
次に、図１を参照して、本発明の第１の実施の形態にかかるパケット通信品質制御装置１００の動作について詳細に説明する。
入力部１１１は、入力された通信パケットに対して、通信パケットのヘッダ情報を抽出するとともに、キュー部１２０を構成する各パケット情報ＦＩＦＯ［ｉ］の状態を検出し、上記のヘッダ情報と各パケット情報ＦＩＦＯ［ｉ］の状態とに基づいて、入力された通信パケットを廃棄するか否かを決定する。ここで、上記の「通信パケットのヘッダ情報を抽出する」とは、ヘッダ情報を読み出し、所定のバッファ等に記憶させておくことをいう。
【００２２】
具体的には、例えば、各パケット情報ＦＩＦＯ［ｉ］のパケット情報の蓄積量が予め指定された閾値を超えているか否かや、予め廃棄するように設定されたヘッダ情報を含む通信パケットであるか否か、等に基づいて通信パケットを記憶するかまたは廃棄するかを決定する。ここで、上記の、各パケット情報ＦＩＦＯ［ｉ］のパケット情報の蓄積量が予め指定された閾値を超えているか否かを、フラグを用いて管理するのでもよく、このフラグを、例えば、パケット情報ＦＩＦＯ［ｉ］毎に設け、入力部１１１が記憶しておくのでも、その他のメモリ等に記憶しておくのでもよい。
【００２３】
入力部１１１は、上記で通信パケットを記憶させると判断したとき、パケットデータを記憶させるパケットデータＦＩＦＯ［ｉ］を特定する書き込み位置情報を決定し、記憶させるパケットデータおよび上記の書き込み位置情報を決定する。入力部１１１は、また、書き込み位置情報を決定した後、記憶されるパケットデータについてのパケット情報を生成するとともに、パケットデータを記憶させるパケットデータＦＩＦＯ［ｉ］に対応するパケット情報ＦＩＦＯ［ｉ］を決定する。ここで、パケット情報のキューヘの振り分けは、保証する通信品質に応じて決定される。具体的には、ヘッダ情報等に基づいて決定される。
【００２４】
出力部１４０は、パケットデータを読み出すパケットデータＦＩＦＯ［ｉ］を特定する読み出し位置情報を決定し、メモリ管理部１１２に出力し、メモリ管理部１１２から出力されたパケットデータを外部に出力するようになっている。
【００２５】
上記で説明したように、パケットデータが記憶されるパケットデータＦＩＦＯ［ｉ］は、ヘッダ情報に基づいて、パケット情報ＦＩＦＯ［ｉ］と対応するものとして決定されるため、パケットデータおよび書き込み位置情報のメモリ管理部１１２への出力は、パケットデータのキュー部１２０への出力の後に行われる必要はない。そのため、パケットデータおよび書き込み位置情報のメモリ管理部１１２への出力と、パケットデータのキュー部１２０への出力とのうち、いずれが先でも、ヘッダ情報に応じたパケット情報ＦＩＦＯ［ｉ］が決定され、空塞管理が不要となるように優先制御がなされることになる。
【００２６】
図１には、メモリ管理部１１２に出力されるパケットデータは、上記の出力部１４０が読み出すパケットデータと区別するために、書き込みパケットデータと記載され、それに対応してキュー部１２０に出力するパケット情報を書き込みパケット情報と記載されている。また、入力部１１１からキュー部１２０に出力される書き込みパケット情報には、パケット情報ＦＩＦＯの番号に合わせて書き込みパケット情報［１］から書き込みパケット情報［Ｎ］のように符号が付されている。
【００２７】
メモリ管理部１１２は、入力部１１１から入力された書き込み位置情報と内部状態とに基づいて、パケットデータ記憶部１３０上の書き込みアドレスを決定し、書き込み位置情報とともに入力されたパケットデータを上記で決定した書き込みアドレスが指定する記憶領域に書き込む。なお、メモリ管理部１１２は、記憶されたパケットデータを出力する出力部１４０からの要求により記憶したパケットデータを読み出し、出力部１４０に出力するようになっている方が、回路規模が縮小できるなどの点から好適である。メモリ管理部１１２が出力部１４０からの要求により記憶したパケットデータを読み出す構成では、メモリ管理部１１２は、出力部１４０から入力される読み出し位置情報と内部状態とに基づいて、パケットデータ記憶部１３０上の読み出しアドレスを決定してパケットデータを読み出す。
【００２８】
［メモリ管理部の動作］
次に、図２を参照して、メモリ管理部１１２の動作について詳細に説明する。図２は、メモリ管理部１１２の動作をＶＨＤＬ（ＶＨＳＩＣ（Very High Speed Integrated Circuit）−Hardware Discription Language）的に記載した説明図である。
ステップＳ２１１〜Ｓ２１８までの処理は、メモリ管理部１１２がパケットデータをパケットデータ記憶部１３０に書き込むときの処理であり、ステップＳ２２１〜Ｓ２２７までの処理は、メモリ管理部１１２がパケットデータ記憶部１３０からパケットデータを読み出すときの処理である。
【００２９】
まず、書き込みアドレスを決定し、入力されたパケットデータを記憶させる（Ｓ２１１）。ここで、図２中の「ｎｗ」は、書き込みを行うパケットデータＦＩＦＯを特定する番号、すなわち、書き込み位置情報の一例であり、１〜Ｎまでの自然数とする。「Ａｓ［ｎ］」は、パケットデータＦＩＦＯ［ｎ］のアドレスの先頭値であり、予め指定された値である。「Ｐｗ［ｎ］」は、書き込みポインタ等の、パケットデータの書き込み位置を特定するための変数であり（以下、書き込みポインタとする）、０〜Ｐｍａｘ［ｎ］のいずれかの値をとるものとする。ここで、「０」は初期値である。「Ｌ」は、最大パケット長であり、予め指定された値である。
【００３０】
次に、ステップＳ２１２〜Ｓ２１８までの各ステップでの処理で、書き込みポインタおよびＦＩＦＯに空がないことを示すフラグの更新を行う。まず、書き込みポインタＰｗ［ｎｗ］が最大値Ｐｍａｘ［ｎｗ］未満であるか否かを判断し（Ｓ２１２）、書き込みポインタＰｗ［ｎｗ］が最大値Ｐｍａｘ［ｎｗ］未満であると判断したときは、変数Ｐｗｎに「Ｐｗ［ｎｗ］＋１」を代入し書き込みポインタの更新の準備をする（Ｓ２１３）。書き込みポインタＰｗ［ｎｗ］が最大値Ｐｍａｘ［ｎｗ］未満でないと判断したときは、Ｐｗｎに「０」を入力し初期値に戻す準備をする（Ｓ２１４）。
【００３１】
次に、変数Ｐｗｎが、パケットデータの読み出し位置を特定するための変数Ｐｒ［ｎｗ］（以下、読み出しポインタとする）と等しいか否かを判断し（Ｓ２１５）、等しくないと判断したときは、書き込みポインタＰｗ［ｎｗ］にＰｗｎを代入して書き込みポインタを「１」更新し（Ｓ２１６）、ＦＩＦＯに空きがないことを示すフラグＦＦ［ｎｗ］に「０」を代入し（Ｓ２１７）、等しいと判断したときは、フラグＦＦ［ｎｗ］に「１」を代入する（Ｓ２１８）。ここで、フラグＦＦ［ｎ］は、「０」をとるときにＦＩＦＯに空きがあることを示し、「１」をとるときにＦＩＦＯに空きがないことを示すものとする。
【００３２】
次に、パケットデータの読み出しの処理について説明する。
まず、読み出しアドレスを決定する（Ｓ２２１）。ここで、図２中の「ｎｒ」は、読み出しを行うパケットデータＦＩＦＯを特定する番号、すなわち、読み出し位置情報の一例であり、１〜Ｎまでの自然数とする。「Ｐｒ［ｎ］」は、読み出しポインタ等の、パケットデータの読み出し位置を特定するための変数であり（以下、読み出しポインタとする）、０〜Ｐｍａｘ［ｎ］のいずれかの値をとる。ここで、「０」は初期値である。
【００３３】
次に、ステップＳ２２２〜Ｓ２２７までの各ステップでの処理で、読み出しポインタおよびＦＩＦＯに空があることを示すフラグの更新を行う。まず、読み出しポインタＰｒ［ｎｒ］が最大値Ｐｍａｘ［ｎｒ］未満であるか否かを判断し（Ｓ２２２）、読み出しポインタＰｒ［ｎｒ］が最大値Ｐｍａｘ［ｎｒ］未満であると判断したときは、読み出しポインタＰｒ［ｎｒ］に「Ｐｒ［ｎｒ］＋１」を代入して読み出しポインタを更新する（Ｓ２２３）。読み出しポインタＰｒ［ｎｒ］が最大値Ｐｍａｘ［ｎｒ］未満でないと判断したときは、読み出しポインタＰｒ［ｎｒ］に「０」を入力し初期値に戻す（Ｓ２２４）。
【００３４】
次に、読み出しポインタＰｒ［ｎｒ］が書き込みポインタＰｗ［ｎｒ］と等しいか否かを判断し（Ｓ２２５）、等しいと判断したときは、ＦＩＦＯが空であることを示すフラグＥＦ［ｎｗ］に「１」を代入し（Ｓ２２６）、等しくないと判断したときは、フラグＥＦ［ｎｗ］に「０」を代入する（Ｓ２２７）。ここで、フラグＥＦ［ｎ］は、「０」をとるときにＦＩＦＯが空でないことを示し、「１」をとるときにＦＩＦＯが空であることを示すものとする。
【００３５】
メモリ管理部１１２がこのように動作することによって、わずかな処理とパラメータで、パケットデータ記憶部１３０のメモリ管理が可能となる。なお、上記、書き込み時の処理を入力部１１１が実施し、書き込み位置情報としてｎｗとＰｗ［ｎｗ］を、または、書き込みアドレス値を採用することも可能である。同様に、読み出し時の処理を出力部１４０が実施し、読み出し位置情報としてｎｒとＰｒ［ｎｒ］を、または、読み出しアドレス値を採用することも可能である。さらに、入力ポート数や出力ポート数は、１つに限定されず、複数個設けるのでもよい。
【００３６】
キュー部１２０は、入力部１１１から書き込みパケット情報がいずれかのパケット情報ＦＩＦＯに入力され、パケット情報が記憶されているパケット情報ＦＩＦＯのパケット情報を出力するための出力要求とパケット情報（以下、キュー部１２０に入力されるパケット情報と区別するために読み出しパケット情報という）を出力部１４０に出力する。図１に、各パケット情報ＦＩＦＯ［ｉ］から、出力要求［ｉ］および読み出しパケット情報［ｉ］が出力部１４０に出力されている様子を示した。
【００３７】
なお、後述するように、キュー部１２０が出力部１４０に出力した出力要求およびパケットデータに応じて、パケットデータ記憶部１３０に記憶されたパケットデータが出力部１４０から出力されたとき、このパケットデータが出力されたことを示す出力応答が出力部１４０からキュー部１２０に出力され、キュー部１２０は、この出力応答に応じて、出力要求とともに出力したパケット情報の記憶を消去する。パケット情報の記憶の消去は、パケット情報そのものを消去するのではなく、パケット情報を記憶していた記憶領域を開放することによって行う方が処理の負担が少なく、好適である。
【００３８】
出力部１４０は、キュー部１２０から各ポートを介して出力要求とパケット情報が入力され、入力されたパケット情報によって特定されるパケットデータの読み出し位置情報を生成してメモリ管理部１１２に出力し、メモリ管理部１１２を介してパケット情報によって特定されるパケットデータを読み出し、読み出したパケットデータを内容とする通信パケットを生成して出力する。出力部１４０は、読み出し位置情報をメモリ管理部１１２に出力したときの前後に、出力応答を、出力要求とパケット情報が入力されたポートを介してキュー部１２０に出力する。
【００３９】
以上説明したように、本発明の第１の実施の形態にかかるパケット通信品質制御装置は、パケット入力処理回路により、入力された通信パケットのヘッダ情報とキュー部が有する各キューの状態とに基づいて、入力された通信パケットを記憶するかまたは廃棄するかを決定し、通信パケットを記憶すると決定したとき、この通信パケットを記憶させるパケットデータ記憶領域を識別する記憶領域識別情報、および、この通信パケットのパケット情報を生成するため、パケットデータの記憶領域を対象とする空塞管理を不要とし、従来の装置よりも、通信速度を向上させることができる。
また、パケットデータ記憶部が１つ以上のＦＩＦＯによって構成されるため、メモリ管理の処理負担が低減でき、さらに通信速度を向上させることができる。
【００４０】
［第２の実施の形態］
次に、図３を参照して、本発明の第２の実施の形態にかかるパケット通信品質制御装置について説明する。図３は、本発明の第２の実施の形態にかかるパケット通信品質制御装置におけるマルチキャストの機能を実現する構成部のブロック構成を示す図である。
本発明の第２の実施の形態にかかるパケット通信品質制御装置は、マルチキャストの機能を実現するものであるが、ユニキャストの機能を実現する構成部を含むように構成されるのでもよい。以下では、ユニキャストの機能を実現する構成部を含むものとし、この機能を本発明の第１の実施の形態に示すパケット通信品質制御装置の各構成部によって実現するものとする。
【００４１】
図３において、本発明の第１の実施の形態にかかるパケット通信品質制御装置の各構成部と重複する部分については、その記載が省略されている。また、本発明の第１の実施の形態にかかるパケット通信品質制御装置の各構成部と重複する部分についての説明は、省略する。
【００４２】
本発明の第２の実施の形態にかかるパケット通信品質制御装置３００は、記憶したパケット情報を読み出すための複数のアクセスポートを有するマルチアクセスキュー（以下、マルチキャスト用パケット情報ＦＩＦＯという）３２１を含む複数のキュー（以下、各キューを本発明の第１の実施の形態のＦＩＦＯによって構成するものとする）を有するキュー部３２０と、このキュー部３２０を構成する各ＦＩＦＯに対応して設けられたパケットデータＦＩＦＯを有するパケットデータ記憶部３３０と、パケットデータ記憶部３３０のメモリ管理を行うメモリ管理部３１２と、複数の出力部３４０1〜３４０M（Ｍは２以上の整数）と、マルチキャストを指示するマルチキャスト指示情報を含むマルチキャスト用パケット情報ＦＩＦＯ３２１の制御を行うマルチキャスト用キュー制御部（以下、マルチキャスト用ＦＩＦＯ制御部という）３２２とを備える。
【００４３】
以下では、キュー部が有するマルチキャスト用パケット情報ＦＩＦＯ３２１以外の各キューは、それぞれ、本発明の第１の実施の形態にかかるキュー部１２０を構成する各パケット情報ＦＩＦＯ［ｉ］（ｉ＝１〜Ｎ：Ｎは２以上の整数）によって構成され、パケットデータ記憶部３３０中のＦＩＦＯであって、マルチキャスト用パケット情報ＦＩＦＯ３２１に対応して設けられたＦＩＦＯ（以下、マルチキャスト用パケットデータＦＩＦＯという）以外の各ＦＩＦＯは、それぞれ、本発明の第１の実施の形態にかかるパケットデータ記憶部１３０を構成するパケットデータＦＩＦＯ［ｉ］によって構成されるものとして説明を行う。
【００４４】
ここで、マルチキャスト用パケット情報ＦＩＦＯ３２１とこれに対応するパケットデータ記憶部３３０中のマルチキャスト用パケットデータＦＩＦＯは、それぞれ、ユニキャスト用の他のパケット情報ＦＩＦＯおよびパケットデータＦＩＦＯとは、区別されて形成されている。また、マルチキャスト用パケット情報ＦＩＦＯ３２１とマルチキャスト用パケットデータＦＩＦＯの出力ポートも、ユニキャスト用の他のパケット情報ＦＩＦＯおよびパケットデータＦＩＦＯの出力ポートとは異なるものとする。
【００４５】
［第２の実施の形態の動作］
次に、図３を参照して、本発明の第２の実施の形態にかかるパケット通信品質制御装置３００の動作について詳細に説明する。
キュー部３２０を構成するマルチキャスト用パケット情報ＦＩＦＯ３２１には、入力部１１１からマルチキャストを指示するマルチキャスト指示情報を含むパケット情報が出力され、マルチキャスト用ＦＩＦＯ制御部３２２は、書き込みポインタＰｗを書き込み用ポートＷに指定し、書き込みポインタＰｗによって指定された記憶領域に、上記のマルチキャストの指示の情報を含むパケット情報を書き込ませる。
【００４６】
また、マルチキャスト用ＦＩＦＯ制御部３２２は、マルチキャストする出力数（以下、自然数ｍとする）に応じた数の出力部３４０k（ｋ＝ｋ１，ｋ２，…，ｋｍ、ｋ１，ｋ２，…，ｋｍは、それぞれ異なる自然数）にマルチキャストパケットの出力要求を出力するにあたって、まず、マルチキャスト用パケット情報ＦＩＦＯ３２１の読み出し用ポートＲｋ１，Ｒｋ２，…，Ｒｋｍを決定し、このマルチキャストパケットのパケット情報の読み出し位置を指定する読み出しポインタＰｒ［ｋ１］，Ｐｒ［ｋ２］，…，Ｐｒ［ｋｍ］を、ぞれぞれ、上記で決定したマルチキャスト用パケット情報ＦＩＦＯ３２１の読み出し用ポートＲｋ１，Ｒｋ２，…，Ｒｋｍに順次出力し、マルチキャストパケットのパケット情報を順次出力部３４０k1，３４０k2，…，３４０kmに出力させる。マルチキャスト用パケット情報ＦＩＦＯ３２１は、上記で入力された読み出しポインタＰｒ［ｋ１］，Ｐｒ［ｋ２］，…，Ｐｒ［ｋｍ］に応じて、マルチキャストパケットのパケット情報を順次出力部３４０k1，３４０k2，…，３４０kmに出力する。
【００４７】
ここで、上記の読み出しポインタＰｒ［ｋ１］，Ｐｒ［ｋ２］，…，Ｐｒ［ｋｍ］を、予め、相互に異なるように設定しておくのでもよい。そして、マルチキャスト用ＦＩＦＯ制御部３２２は、マルチキャストパケットのパケット情報の出力に対応するように出力要求を順次出力部３４０k1，３４０k2，…，３４０kmに出力する。これにより、出力要求がマルチキャスト用ＦＩＦＯ制御部３２２から順次出力部３４０k1、３４０k2，…，３４０kmに出力され、出力要求に合わせてマルチキャストパケットのパケット情報がマルチキャスト用パケット情報ＦＩＦＯ３２１から順次出力部３４０k1、３４０k2、…、３４０kmに出力される。
【００４８】
各出力部３４０1〜３４０Mからの出力応答は、異なるポートを介してマルチキャスト用ＦＩＦＯ制御部３２２に入力される。マルチキャスト用ＦＩＦＯ制御部３２２は、各ポートからの出力応答を区別して管理する。マルチキャスト用ＦＩＦＯ制御部３２２は、マルチキャストパケットの出力要求とパケット情報を出力部３４０k1，３４０k2，…，３４０kmに出力した後、全ての出力部３４０k1，３４０k2，…，３４０kmからの出力応答が入力されたら、出力要求とともに出力したマルチキャストパケットのパケット情報の記憶を消去する。マルチキャストパケットのパケット情報の記憶の消去は、パケット情報そのものを消去するのではなく、パケット情報を記憶していた記憶領域を開放することによって行う方が処理の負担が少なく、好適である。
【００４９】
各出力部３４０1〜３４０Mは、ユニキャストパケットの出力要求および読み出しパケット情報が入力され、ユニキャストパケットの出力要求に対する出力応答をキュー部に出力する。上記の動作は、本発明の第１の実施の形態の出力部１４０の動作と同様である。各出力部３４０1〜３４０Mは、さらに、マルチキャスト用ＦＩＦＯ制御部３２２からのマルチキャストパケットの出力要求とマルチキャスト用パケット情報ＦＩＦＯ３２１からのマルチキャストパケットのパケット情報が入力され、入力されたマルチキャストパケットのパケット情報によって特定されるパケットデータについての読み出し位置情報（図３に、符号ＲＰＩを付して示す）ＲＰＩ［ｋ１］，ＲＰＩ［ｋ２］，…，ＲＰＩ［ｋｍ］をメモリ管理部３１２に出力する。
【００５０】
出力部３４０k（ｋ＝ｋ１，ｋ２，…，ｋｍ）から出力される読み出し位置情報ＲＰＩ［ｋ１］，ＲＰＩ［ｋ２］，…，ＲＰＩ［ｋｍ］は、読み出されるマルチキャストパケットが同一であるため、それぞれ、同一の情報であるが、一般に異なるタイミングで出力される。メモリ管理部３１２は、読み出し位置１青報ＲＰＩ［ｋ１］，ＲＰＩ［ｋ２］，…，ＲＰＩ［ｋｍ］が入力される毎に、指定されたマルチキャストパケットをパケットデータ記憶部３３０から読み出して読み出し位置情報を出力した出力部３４０kに出力する。その結果、各出力部３４０1〜３４０Mは、メモリ管理部３１２を介してマルチキャストパケットをパケットデータ記憶部３３０から読み出すことになる。出力部３４０kは、マルチキャスト用ＦＩＦＯ制御部３２２のｋ番目のポートから出力された出力要求に応じて、上記のマルチキャストパケットを出力すると、ｋ番目のポートを介して出力応答をマルチキャスト用ＦＩＦＯ制御部３２２に出力し、ポート毎に出力応答を管理するようになっている。
【００５１】
出力部３４０kがパケットデータ記憶部３３０に出力する読み出し位置情報として、マルチキャスト用パケットデータＦＩＦＯを特定する番号等の情報が用いられる場合は、メモリ管理部３１２は、マルチキャスト用パケットデータＦＩＦＯ内の読み出し位置を指定するポインタを設けて読み出し位置を管理する必要がある。一方、出力部３４０kがパケットデータ記憶部３３０に出力する読み出し位置情報として、マルチキャスト用パケットデータＦＩＦＯを特定する番号に加えポインタ値の情報をも含む場合は、メモリ管理部３１２は、マルチキャスト用パケットデータＦＩＦＯ内の読み出し位置を指定するポインタの管理は不要である。パケットデータ記憶部３３０の他のパケットデータＦＩＦＯについても、同様である。
【００５２】
［マルチキャスト用ＦＩＦＯ制御部の動作］
次に、図４を参照して、マルチキャスト用ＦＩＦＯ制御部３２２の動作について詳細に説明する。図４は、マルチキャスト用パケット情報ＦＩＦＯ３２１およびマルチキャスト用ＦＩＦＯ制御部３２２の動作をＶＨＤＬ的に記載した説明図である。
ステップＳ４１１〜Ｓ４１７までの処理は、マルチキャスト用ＦＩＦＯ制御部３２２がマルチキャストの指示の情報を含むパケット情報をマルチキャスト用パケット情報ＦＩＦＯ３２１に書き込んだ後の処理であり、ステップＳ４２１〜Ｓ４２６までの処理は、出力応答［ｎ］がマルチキャスト用ＦＩＦＯ制御部３２２に入力されたときの処理である。
【００５３】
まず、マルチキャスト用ＦＩＦＯ制御部３２２は、マルチキャスト用パケット情報ＦＩＦＯ３２１の書き込みポインタＰｗが指定する位置に、入力されたパケット情報を記憶させる。その後、ステップＳ４１１〜Ｓ４１３までの処理により書き込みポインタＰｗの更新を行う。すなわち、ステップＳ４１１〜Ｓ４１３で、Ｐｗｎを「１」増加させる。ただし、リングバッファの最後に書き込みポインタＰｗがある場合を除く。
【００５４】
まず、書き込みポインタＰｗが書き込みポインタＰｗの上限Ｐｍａｘより小さいか否かを判断し（Ｓ４１１）、小さいと判断したときは、Ｐｗｎを「１」増加させて書き込みポインタの更新の準備をする（Ｓ４１２）。書き込みポインタＰｗが上限Ｐｍａｘより小さくないと判断したときは、Ｐｗｎに「０」を代入し初期値に戻す準備をする（Ｓ４１３）。
【００５５】
次に、ステップＳ４１４で、Ｐｗｎを「１」増加させたときにＰｗｎが読み出しポインタＰｒ［ｉ］（ｉ＝１，２，…，Ｍ：Ｍは２以上の整数）のいずれの値にも一致しないか否かを判断し、一致しないと判断したとき、読み出しポインタＰｒ［ｎ］を「１」増加させ（Ｓ４１５）、フラグＦＦに「０」を代入する（Ｓ４１６）。ステップＳ４１４で一致すると判断したとき、フラグＦＦに「１」を代入する（Ｓ４１７）。フラグＦＦは、「０」をとるときにＦＩＦＯに空きがあることを示し、「１」をとるときにＦＩＦＯに空きがないことを示すものとする。
【００５６】
マルチキャスト用パケット情報ＦＩＦＯ３２１は、読み出しポインタＰｒ［ｎ］（ｎ＝１，２，…，Ｍ：Ｍは２以上の整数）が指定する位置に格納されたパケット情報を出力部３４０nに、読み出しパケット情報として出力する。なお、出力要求を、本発明の第１の実施の形態で説明したＥＦ［ｎ］の反転、すなわち、ＥＦが「０」のときに出力部３４０nに出力され、「１」のときは、出力されないように設定するのでもよい。
【００５７】
次に、出力応答［ｎ］がマルチキャスト用ＦＩＦＯ制御部３２２に入力されたときの処理について説明する。
まず、読み出しポインタＰｒ［ｎ］が最大値Ｐｍａｘ［ｎ］未満であるか否かを判断し（Ｓ４２１）、読み出しポインタＰｒ［ｎ］が最大値Ｐｍａｘ［ｎ］未満であると判断したときは、読み出しポインタＰｒ［ｎ］を「１」増加させて更新し（Ｓ４２２）、読み出しポインタＰｒ［ｎ］が最大値Ｐｍａｘ［ｎ］未満でないと判断したときは、読み出しポインタＰｒ［ｎ］がリングバッファの最後に位置するため、読み出しポインタＰｒ［ｎ］に「０」を入力する（Ｓ４２３）。ここで、「０」は初期値である。
【００５８】
次に、読み出しポインタＰｒ［ｎ］が書き込みポインタＰｗと等しいか否かを判断し（Ｓ４２４）、読み出しポインタＰｒ［ｎ］が書き込みポインタＰｗと等しいと判断したときは、ＦＩＦＯが空であることを示すフラグＥＦ［ｎ］に「１」を代入し（Ｓ４２５）、等しくないと判断したときは、フラグＥＦ［ｎ］に「０」を代入する（Ｓ４２６）。ここで、フラグＥＦ［ｎ］は、本発明の第１の実施の形態で説明したＥＦ［ｎ］と同様である。
【００５９】
以上では、マルチキャスト用パケット情報ＦＩＦＯ３２１およびマルチキャスト用ＦＩＦＯ制御部３２２が１つの場合について説明したが、必ずしも１つに限られず、複数でもよい。この場合、マルチキャスト用パケット情報ＦＩＦＯに対応するマルチキャスト用パケットデータＦＩＦＯについても、マルチキャスト用パケット情報ＦＩＦＯと同数設けるものとする。これにより、異なるマルチキャストのフローに対して、異なる通信品質の制御や異なる出力ポートの組を設定することが可能となる。
【００６０】
以上説明したように、本発明の第２の実施の形態にかかるパケット通信品質制御装置は、本発明の第１の実施の形態の効果に加え、マルチキャスト用キュー制御部がマルチアクセスキューに記憶された同一のパケット情報を複数の出力部に出力するように制御できるため、マルチキャスト機能を実現することができる。
【００６１】
［第３の実施の形態］
次に、図５を参照して、本発明の第３の実施の形態にかかるパケット通信品質制御装置について説明する。図５は、本発明の第３の実施の形態にかかるパケット通信品質制御装置のブロック構成を示す図である。
図５において、パケット通信品質制御装置５００は、本発明の第１の実施の形態にかかるパケット通信品質制御装置１００に、入力された通信パケットのうちの所定の通信パケットにパケット処理を行うパケット処理部５５０が付加された構成を有し、パケットデータ記憶部５３０は、ランダムアクセス可能な複数のＲＡＭ記憶領域を有するパケットデータメモリ（以下、パケットデータＲＡＭという）を有し、パケット入力処理回路５１０を構成する入力部５１１は、空塞管理を行う空塞管理回路５１２を有するように構成される。
【００６２】
ここで、上記のパケットデータ記憶部５３０には、本発明の第１の実施の形態のパケットデータＦＩＦＯ［ｎ］（ｎ＝１，２，…，Ｎ）がパケットデータＲＡＭと区別されて含まれているものとする。以下、本発明の第３の実施の形態にかかるパケット通信品質制御装置５００の構成部のうち、本発明の第１の実施の形態にかかるパケット通信品質制御装置１００の構成部と同様のものについては、同一の符号を付し、その説明を省略する。
【００６３】
上記のパケットデータＲＡＭは、パケットデータを複数記録できる記憶領域を右し、ランダムアクセスが可能である点がパケットデータ記憶部５３０中のＦＩＦＯ方式のキューとは異なる。ただし、メモリ管理部１１２が、所定の場合に、パケットデータＲＡＭに記憶されているパケットデータのポインタ等の位置情報を管理する必要がある。
【００６４】
パケットデータ記憶部５３０中のパケットデータＲＡＭは、パケット処理部５５０がパケット処理を行う対象の通信パケットを記憶するための記憶領域を複数有する。以下、本発明の第３の実施の形態にかかるパケット通信品質制御装置５００の構成部のうち、本発明の第１の実施の形態にかかるパケット通信品質制御装置１００の構成部と同様のものについては、同一の符号を付し、その説明を省略する。
【００６５】
［第３の実施の形態の動作］
次に、図５を参照して、本発明の第３の実施の形態にかかるパケット通信品質制御装置５００の動作について詳細に説明する。
入力部５１１は、入力された通信パケットからヘッダ情報を抽出し、抽出されたヘッダ情報と、各パケット情報ＦＩＦＯ［ｉ］（ｉ＝１，２，…，Ｎ）の状態とに基づいて、入力された通信パケットを廃棄するか否かを判断する。ここで、上記の「通信パケットのヘッダ情報を抽出し」とは、ヘッダ情報を読み出し、所定のバッファ等に記憶させておくことをいう。
【００６６】
入力部５１１が上記の判断をし通信パケットを廃棄しないと決定したとき、空塞管理回路５１２は、少なくとも、上記のヘッダ情報に基づいて、入力された通信パケットをＦＩＦＯ方式で管理する記憶領域に格納するか、空塞管理を行う記憶領域であるパケットデータＲＡＭに格納するかを判定する。なお、上記の通信パケットの記憶領域の判定は、ヘッダ情報に加え、各パケット情報ＦＩＦＯ［ｉ］の状態とに基づいて行うのでもよい。
【００６７】
また、図５に示すように、パケットデータＲＡＭの記憶領域毎に記憶領域が空いているか否かの空塞フラグを設け、この空塞フラグを用いて空塞管理を行うのでもよい。具体的には、空塞管理を行うパケットデータの記憶領域を決定する際、空塞フラグに基づいて空いている記憶領域を検出し、検出した記憶領域に空塞管理を行う通信パケットのパケットデータを記憶させるようにするのでもよい。なお、入力された通信パケットをＦＩＦＯ方式で管理する記憶領域に格納すると判定した場合に入力部５１１が行う処理は、本発明の第１の実施の形態で説明した、入力部１１１が行う処理と同様である。
【００６８】
入力された通信パケットを空塞管理を行う記憶領域であるパケットデータＲＡＭに格納すると判定した場合、空塞管理回路５１２は、この通信パケットのパケットデータをパケットデータ記憶部５３０のパケットデータＲＡＭに記憶させるための、ＲＡＭ記憶領域を識別するＲＡＭ領域識別情報（以下、書き込み位置情報の一態様とする）、および、この通信パケットのパケット情報を生成し、書き込み位置情報および書き込みパケットデータをメモリ管理部１１２に出力し、上記で抽出したヘッダ情報、上記で生成したパケット情報、および、パケットデータの格納位置を示す情報（以下、書き込み格納位置情報という）をパケット処理部５５０に出力する。
【００６９】
パケットデータＲＡＭを指定する書き込み位置情報は、パケットデータＲＡＭを特定する番号でも、パケットデータＲＡＭの記憶領域を特定する情報を含むのでもよい。書き込み位置情報が、パケットデータＲＡＭを特定する番号、または、この番号に加えてパケットデータＲＡＭの記憶領域を特定する情報を含む場合については、本発明の第２の実施の形態において説明したため、その説明は省略する。
【００７０】
なお、書き込み位置情報および書き込みパケットデータのメモリ管理部１１２への出力、ならびに、生成したパケット情報、パケットデータの書き込み格納位置情報、および、ヘッダ情報のパケット処理部５５０への出力は、空塞管理回路５１２が行うのではなく、入力部５１１が行うのでもよい。入力部５１１は、書き込み位置情報および書き込みパケットデータをメモリ管理部１１２に出力し、書き込み位置情報で識別されるパケットデータＲＡＭの記憶領域に、書き込みパケットデータをメモリ管理部１１２を介して記憶させる。
【００７１】
メモリ管理部１１２は、パケットデータをパケットデータＲＡＭに記憶させるための書き込みパケットデータおよび書き込み位置情報が入力されたら、書き込み位置情報に応じてパケットデータＲＡＭ中の書き込み位置を決定し、決定した書き込み位置にパケットデータを書き込む。パケットデータＲＡＭからのパケットデータの読み出すときも、読み出し位置１青報に応じてパケットデータＲＡＭ中の読み出し位置を決定し、決定した読み出し位置に記憶されたパケットデータを読み出す。
【００７２】
パケット処理部５５０は、キュー、スケジューラ等の通信品質の制御を行う構成要素を有し、入力されたヘッダ情報とパケット情報に基づき、内部のキューの制御、これらのキューヘのパケットの振り分け、キューからのパケットの取り出し等の通信品質の制御を行い、パケット情報と書き込み格納位置情報を出力部１４０に出力する。出力部１４０は、パケット処理部５５０から出力されたパケット情報とパケット情報ＦＩＦＯから出力されたパケット情報を対象にパケットデータの出力の通信品質の制御を行う。通信品質の制御により出力が決定されたパケットデータについて、パケットデータ記憶部５３０からパケットデータを読み出して通信パケットを生成し、出力ポートから出力する。
【００７３】
また、パケット処理部５５０は、入力された書き込み格納位置情報に基づいて、パケットデータ記憶部１３０中のパケットデータの読み書きを行う機能を有するとともに、暗号化処理等のパケットデータを対象に行う所定のパケット処理を行う機能を有するように構成されるのでもよい。また、空塞管理回路５１２が抽出した通信パケットのパケットデータを入力とし、このパケットデータにパケット処理を行い送信部１４０に出力するように構成されるのでもよい。
【００７４】
一般に、通信速度が大きいパケットフローについては、そのパケットデータを格納するバッファ容量を、大きくする必要がある。ＦＩＦＯを用いて通信品質の制御を行う方式（以下、ＦＩＦＯ方式という）は、メモリを管理するための回路規模や処理量は小さく、バッファ容量に依存しない。したがって、入力された通信パケットのうち、比較的大きい帯域を占有する可能性のある通信パケットを識別し、これをＦＩＦＯ方式で管理する記憶領域に格納するキューに振り分けることにより、メモリを管理するための回路規模や処理量を低減することができる。
【００７５】
一方、入力された通信パケットの振り分けの際に、ＦＩＦＯ方式で管理する記憶領域に格納するキューに振り分けることができなかったパケットフローは、帯域の占有率が小さくなる。そこで、この通信パケットについては、空塞管理を行う領域に格納した上で、低速ではあるが複雑なパケットの振り分けの処理や通信品質の制御が可能なパケット処理部（例えば、ＣＰＵ上でプログラムに基づいて処理を行うなど）に任せることができる。
【００７６】
パケット処理部５５０での通信品質の制御により、パケット処理部５５０への通信パケットの入力順序と出力順序が異なり得るため、パケットデータをパケットデータＦＩＦＯではなく、空塞管理を行う記憶領域であるパケットデータＲＡＭに格納する。空塞管理を行う通信の通信速度が小さく、小さいバッファ容量で済むため、バッファ容量の増大によって回路規模と処理量が増大する空塞管理においても、回路規模と処理量が増大の問題は、発生しない。このように、パケットフローの特性に応じて、ＦＩＦＯ方式か空塞管理方式かを選択してメモリに格納し、通信品質の制御を行うことで、高速１生と高度の通信品質の制御を両立できるという効果が得られる。
【００７７】
なお、本発明の第３の実施の形態にかかるパケット通信品質制御装置５００は、本発明の第２の実施の形態のマルチキャストを行う機能を有するものではないが、マルチキャストを行う機能を実現するための本発明の第２の実施の形態にかかるパケット通信品質制御装置３００の各構成部を付加しても、同様の空塞管理による効果を得ることができる。
【００７８】
以上説明したように、本発明の第３の実施の形態にかかるパケット通信品質制御装置は、本発明の第１の実施の形態の効果に加え、空塞管理回路が、空塞管理を行うパケットデータをＲＡＭ記憶領域に格納させ、ＲＡＭ記憶領域に記憶されたパケットデータに対してパケット処理を行うようにしたため、パケットフローの特性に応じて、ＲＡＭ記憶領域にパケットデータを格納させて通信品質の制御を行うことによって、高速性と高度の通信品質の制御を両立させることができる。
【産業上の利用可能性】
【００７９】
本発明にかかるパケット通信品質制御装置は、パケットデータの記憶領域を対象とする空塞管理を不要とし、従来の装置よりも、通信速度を向上させることができるという効果が有用なネットワーク上の中継器やスイッチ等の用途にも適用できる。
【図面の簡単な説明】
【００８０】
【図１】本発明の第１の実施の形態にかかるパケット通信品質制御装置の構成を示すブロック図である。
【図２】メモリ管理部の動作をＶＨＤＬ的に記載した説明図である。
【図３】本発明の第２の実施の形態にかかるパケット通信品質制御装置の構成を示すブロック図である。
【図４】マルチキャスト用パケット情報ＦＩＦＯおよびマルチキャスト用ＦＩＦＯ制御部の動作をＶＨＤＬ的に記載した説明図である。
【図５】本発明の第３の実施の形態にかかるパケット通信品質制御装置の構成を示すブロック図である。
【符号の説明】
【００８１】
１００…パケット通信品質制御装置、１１０…パケット入力処理回路、１１１…入力部、１１２…メモリ管理部、１３０…パケットデータ記憶部、１４０…出力部、３００…パケット通信品質制御装置、３１２…メモリ管理部、３２０…キュー部、３２１…マルチキャスト用パケット情報ＦＩＦＯ、３２２…マルチキャスト用ＦＩＦＯ制御部、３３０…パケットデータ記憶部、３４０1〜３４０M…出力部、５００…パケット通信品質制御装置、５１０…パケット入力処理回路、５１１…入力部、５１２…空塞管理回路、５３０…パケットデータ記憶部、５５０…パケット処理部。
【図１】
2005323231.tif 000003
【図２】
2005323231.tif 000004
【図３】
2005323231.tif 000005
【図４】
2005323231.tif 000006
【図５】
2005323231.tif 000007