(57)【要約】  【課題】  パケットＩＤに対応する出力帯域がそれぞれ設定された帯域を維持して帯域制御を行いながらパケットＩＤの個数の増減に対応することができるパケット中継装置を提供すること。  【解決手段】  パケットの出力帯域を制御するパケット中継装置において、入力ポート１１によって入力されたパケットの属性を表すパケット識別子を付与するパケット識別部１４と、パケット識別子毎に対応するカウント値に一定の加算値を一定の周期でそれぞれ加算するカウンタ加算部２２と、パケット識別子と対応するパケットを出力ポート１３に出力させるか否かをカウント値に基づいて判定し、出力させると判定したときのパケットのサイズの値をカウント値から減算するカウンタ減算部２３とを備え、パケット識別子の個数が増減した場合には、周期および加算値を変更するように構成する。【選択図】  図１
2006101337.tif 000002
【特許請求の範囲】
【請求項１】
パケットを入力する入力ポート１１と、
前記入力ポート１１によって入力されたパケットを蓄積するパケットバッファ１２と、
前記パケットバッファ１２に蓄積されたパケットを出力する出力ポート１３とを有し、パケットの出力帯域を制御するパケット中継装置において、
前記入力ポート１１によって入力されたパケットに対してパケットの属性を表すパケット識別子を付与するパケット識別部１４と、
前記パケット識別子毎に対応するカウント値に一定の加算値を一定の周期でそれぞれ加算するカウンタ加算部２２と、
前記パケット識別子と対応するパケットを前記出力ポート１３に出力させるか否かを前記カウント値に基づいて判定し、出力させると判定したときのパケットのサイズの値を前記カウント値から減算するカウンタ減算部２３とを備え、
前記パケット識別子の個数が増減した場合には、前記周期および前記加算値を変更することを特徴とするパケット中継装置。
【請求項２】
前記カウンタ加算部２２には、前記周期および前記加算値からなる設定情報が複数設定されており、
前記パケット識別子の個数が増減した場合には、複数の前記設定情報のうち何れか１つを選択する選択部３２を備え、
前記カウンタ加算部２２は、前記選択部３２によって選択された設定情報の加算値を、前記パケット識別子毎に対応するカウント値に前記設定情報の周期でそれぞれ加算することを特徴とする請求項１に記載のパケット中継装置。
【請求項３】
前記選択部３２は、前記パケット識別子の個数と所定の閾値とを比較し、比較した結果に応じて複数の前記設定情報のうち何れか１つを選択することを特徴とする請求項２に記載のパケット中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介してパケットを中継するときの帯域制御を行うパケット中継装置に関する。
【背景技術】
【０００２】
従来のパケット中継装置に関わる装置としては、入力したパケットを複数のバッファメモリに蓄積し、各バッファメモリから出力されたパケットのパケット長をカウントし、カウントしたカウント値と予め指定された最低保証帯域に対応する閾値との差分値に基づいて、パケットを読み出すべきバッファメモリを特定することによって帯域制御を行うものが知られている（例えば特許文献１参照。）。
【０００３】
また、この種の従来のパケット中継装置は、入力したパケットを蓄積するバッファメモリと、入力したパケットに対してパケットの属性を表すパケット識別子を付与するパケット識別部と、パケット識別部が付与したパケット識別子毎に帯域制御を行うスケジューラとを備え、スケジューラがパケット識別子毎に対応するカウント値に一定の加算値（ビット数等）を一定の周期でそれぞれ加算し、加算した加算値以内となるパケットの量をバッファメモリから読み出して出力することによって帯域制御を行うようになっている。
【０００４】
図４は、パケット識別子（以下、パケットＩＤという。）に対応する上述したスケジューラの加算動作を示すタイミング図である。図４では、３つのパケットＩＤに対応する加算動作を示している。
【０００５】
スケジューラは、各パケットＩＤに対応するパケットの出力帯域がそれぞれ設定された帯域を維持するようにスケジュールを行っており、一定の周期ＴでパケットＩＤの加算動作を行う加算器を備えている。また、スケジューラの資源を有効活用するため、パケットＩＤの加算動作を同一の加算器で実現し、スケジューラは、各パケットＩＤの加算動作の開始をそれぞれ異なるタイミングで行っている。なお、１つのパケットＩＤの加算動作には、加算動作を行うための所要時間がかかるため、それぞれのパケットＩＤの加算動作の開始時刻の間隔は、この所要時間よりも長くする必要がある。
【特許文献１】特開２００３−１９８６１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来のパケット中継装置では、パケットＩＤに対応するパケットの出力帯域を変更せずに、図４における３つのパケットＩＤからさらに１つのパケットＩＤを加えて、４つのパケットＩＤに対応する加算動作をスケジューラに行わせた場合、パケットＩＤそれぞれに対する加算動作の合計時間が一定の周期よりも長くなってしまうため、パケットＩＤ毎の帯域制御を行うためのスケジュールが処理できなくなるという問題があった。
【０００７】
本発明は、従来の問題を解決するためになされたもので、パケットＩＤに対応する出力帯域がそれぞれ設定された帯域を維持して帯域制御を行いながらパケットＩＤの個数の増減に対応することができるパケット中継装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明のパケット中継装置は、パケットを入力する入力ポート１１と、前記入力ポート１１によって入力されたパケットを蓄積するパケットバッファ１２と、前記パケットバッファ１２に蓄積されたパケットを出力する出力ポート１３とを有し、パケットの出力帯域を制御するパケット中継装置において、前記入力ポート１１によって入力されたパケットに対してパケットの属性を表すパケット識別子を付与するパケット識別部１４と、前記パケット識別子毎に対応するカウント値に一定の加算値を一定の周期でそれぞれ加算するカウンタ加算部２２と、前記パケット識別子と対応するパケットを前記出力ポート１３に出力させるか否かを前記カウント値に基づいて判定し、出力させると判定したときのパケットのサイズの値を前記カウント値から減算するカウンタ減算部２３とを備え、前記パケット識別子の個数が増減した場合には、前記周期および前記加算値を変更する構成を有している。
【０００９】
この構成により、パケット識別子の個数の増減に応じて、パケット識別子に対応するパケットの出力が設定された帯域になるように周期および加算値を変更するため、パケット識別子に対応する出力帯域がそれぞれ設定された帯域を維持して帯域制御を行いながら、パケット識別子の個数の増減に対応することができる。
【００１０】
また、本発明のパケット中継装置は、前記カウンタ加算部２２には、前記周期および前記加算値からなる設定情報が複数設定されており、前記パケット識別子の個数が増減した場合には、複数の前記設定情報のうち何れか１つを選択する選択部３２を備え、前記カウンタ加算部２２は、前記選択部３２によって選択された設定情報の加算値を、前記パケット識別子毎に対応するカウント値に前記設定情報の周期でそれぞれ加算する構成を有している。
【００１１】
この構成により、パケット識別子の個数の増減に応じて、複数の設定情報のうち何れか１つを選択するため、ネットワーク管理者等が、設定情報を構成する周期および加算値を予め決めて取り扱うことができる。
【００１２】
また、本発明のパケット中継装置の前記選択部３２は、前記パケット識別子の個数と所定の閾値とを比較し、比較した結果に応じて複数の前記設定情報のうち何れか１つを選択する構成を有している。
【００１３】
この構成により、パケット識別子の個数の増減に応じて、パケット識別子の個数と所定の閾値とを比較し、比較した結果に応じて複数の設定情報のうち何れか１つを選択するため、パケット識別子の個数に応じて適切な周期および加算値を選択することができる。
【発明の効果】
【００１４】
本発明は、パケットＩＤに対応する出力帯域がそれぞれ設定された帯域を維持して帯域制御を行いながらパケットＩＤの個数の増減に対応することができるパケット中継装置を提供するものである。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態に係るパケット中継装置について、図面を用いて説明する。
【００１６】
本発明の実施の形態に係るパケット中継装置の装置構成図を図１に示す。図１に示したパケット中継装置は、パケットの出力帯域を制御する装置であり、パケットを入力する複数の入力ポート１１、入力ポート１１によって入力されたパケットを蓄積するパケットバッファ１２、パケットバッファ１２に蓄積されたパケットを出力する出力ポート１３、各入力ポート１１によって入力されたパケットに対してパケットの属性を表すパケットＩＤを付与するパケット識別部１４、パケット識別部１４によって出力されたパケットをパケットバッファ１２に書き込むＰＢ（パケットバッファ）ライト部１５、パケットバッファ１２からパケットを読み出すＰＢ（パケットバッファ）リード部１６、ＰＢリード部１６によって読み出されたパケットを出力ポート１３の何れかに出力するパケット出力部１７、および帯域制御を行うスケジューラ２０によって構成される。さらに、図１に示したパケット中継装置は、パケットＩＤの個数をカウントするパケットＩＤカウンタ３１と、加算値および周期からなる設定情報が複数ある場合、複数の設定情報のうち何れか１つを選択する選択部３２とを備えて構成される。
【００１７】
また、スケジューラ２０は、パケットＩＤ格納リスト２１、カウンタ加算部２２、カウンタ減算部２３、およびタイマ２４によって構成される。
【００１８】
パケットＩＤ格納リスト２１は、ＰＢライト部１５がパケットバッファ１２に書き込んだ、同一のパケットＩＤに属するパケット群のうちの先頭のパケットの先頭アドレスと、先頭アドレスからのデータのサイズ（以下、データ長という。）と、パケットＩＤとを対応付けたリストを格納するようになっている。なお、パケットＩＤに対応するアドレスとは、パケットバッファ１２の記憶領域を示すアドレスである。
【００１９】
カウンタ加算部２２は、１つの加算器を有し、パケットＩＤ毎に対応するカウント値に、パケットＩＤ毎に対応する加算値を一定の周期でそれぞれ加算するようになっている。なお、一定の周期は、タイマ２４によって計時される。また、パケット識別子の個数が増減した場合には、周期および加算値が変更される。
【００２０】
カウンタ減算部２３は、パケットＩＤと対応するパケットを出力ポート１３に出力させるか否かをカウント値に基づいて判定し、出力させると判定したときのパケットのサイズ（以下、パケット長という。）の値をカウント値から減算するようになっている。
【００２１】
以上のように構成された本発明の実施の形態に係るパケット中継装置において、本発明の実施の形態に係るパケット中継装置の動作について、図面を用いて以下に説明する。
【００２２】
まず、パケット識別部１４は、各入力ポート１１によって入力されたパケットに対してパケットの属性を表すパケットＩＤを付与する。ここで、パケットの属性とは、帯域制御したいパケットに含まれる特定の情報である。例えば、パケットがＩＰ（Internet Protocol）に準拠しており、ＩＰヘッダ部の宛先ＩＰアドレスに対して帯域制御したいとすれば、パケット識別部１４は、パケットのＩＰヘッダ部の宛先ＩＰアドレスからパケットＩＤを付与する。
【００２３】
また、宛先ＩＰアドレスだけに限定されず、パケットのＩＰヘッダ部の宛先ＩＰアドレスと送信元ＩＰアドレスとをパケットの属性とし、パケット識別部１４は、宛先ＩＰアドレスと送信元ＩＰアドレスとからパケットＩＤを付与するようにしてもよい。さらに、パケット識別部１４は、ＩＰヘッダ部だけでなくＩＰペイロード部に含まれているＴＣＰ（Transmission Control Protocol）またはＵＤＰ（User datagram protocol）のヘッダ部のポート番号と、宛先ＩＰアドレスと、送信元ＩＰアドレスとからパケットＩＤを付与するようにしてもよい。
【００２４】
次に、ＰＢライト部１５は、入力されたパケットをパケットバッファ１２に書き込み、パケットＩＤ格納リスト２１は、ＰＢライト部１５が書き込んだパケットＩＤと対応するパケット長等に基づいてリストを更新する。
【００２５】
パケットＩＤカウンタ３１は、リストに登録されているパケットＩＤのうち、データ長が０より大きいパケットＩＤであって、かつパケットＩＤと対応する先頭アドレスが存在する（先頭アドレスが０でない）パケットＩＤの個数をカウントしている。より詳細に説明すれば、パケットＩＤと対応するデータ長が０から０より大きい値になった時点であって、かつパケットＩＤと対応する先頭アドレスが０から０と異なる値になった時点で、パケットＩＤカウンタ３１は、パケットＩＤの個数を１つカウントする。また、パケットＩＤと対応するデータ長が０より大きい値から０になった時点であって、かつパケットＩＤと対応する先頭アドレスが０と異なる値から０になった時点で、パケットＩＤカウンタ３１は、パケットＩＤの個数から１つ減算する。
【００２６】
パケットＩＤカウンタ３１によってカウントされたパケットＩＤの個数が増減した場合、選択部３２は、パケットＩＤの個数と所定の閾値とを比較し、比較した結果に応じて複数の設定情報のうち何れか１つを選択する。ここで、複数の設定情報の一例を図２に示す。図２に示したように、加算値および周期からなる設定情報のそれぞれは、選択信号Ａ〜選択信号Ｃと対応している。なお、制御すべき帯域をパケットＩＤ毎に別々に設定するために、図２に示した設定情報を設定帯域（出力レート）毎に持つようにしても良い。
【００２７】
また、パケットＩＤの個数と所定の閾値との関係の一例を図３に示す。図３に示したように、パケットＩＤの個数が増減して使用中のパケットＩＤの個数が０よりも大きく閾値α（例えば１０）以下である場合、選択部３２は、選択信号Ａをカウンタ加算部２２に送信する。また、選択部３２は、使用中のパケットＩＤの個数が閾値αよりも大きく閾値β（例えば１００）以下である場合、選択信号Ｂをカウンタ加算部２２に送信し、使用中のパケットＩＤの個数が閾値βよりも大きく閾値γ（例えば１０００）以下である場合、選択信号Ｃをカウンタ加算部２２に送信する。すなわち、選択部３２は、選択信号を選択することにより、選択信号と対応する設定情報を選択することになる。
【００２８】
一方、カウンタ加算部２２は、パケットＩＤ毎に対応するカウント値に、パケットＩＤ毎に対応する加算値を一定の周期でそれぞれ加算している。なお、図２に示した加算値および周期からなる設定情報は、該当するパケットＩＤに対応するパケットの出力帯域が１００Ｍｂｐｓ（毎秒１００メガビット）の速度になるための設定値を示している。
【００２９】
さらに、カウンタ加算部２２は、選択部３２によって送信された選択信号を受信し、受信した選択信号と対応する設定情報に従って周期および加算値を変更してカウント値に加算する。カウンタ加算部２２は、例えば選択信号Ａを受信したとき、受信した選択信号Ａと対応する周期が８μ秒であるため、カウンタ加算部２２は、８μ秒の周期でパケットＩＤ毎に対応するカウント値に１００ｂｙｔｅずつ加算する。また、カウンタ加算部２２は、図４に示したように各パケットＩＤの加算動作の開始をそれぞれ異なるタイミングで行う。
【００３０】
一方、カウンタ減算部２３は、パケット識別子と対応するパケットを出力ポート１３に出力させるか否かをカウント値に基づいて判定する。例えば、カウンタ減算部２３は、パケット識別子と対応するカウント値が正の値であった場合、パケット識別子と対応するパケットを出力ポート１３に出力させると判定する。
【００３１】
次に、カウンタ減算部２３は、出力させると判定したときのパケットＩＤに対応する先頭アドレスをパケットＩＤ格納リスト２１から読み出し、読み出した先頭アドレス、出力ポート１３に出力させるパケットのパケット長、および出力ポート１３の識別番号等をＰＢリード部１６に出力すると共に、出力ポート１３に出力させるパケットのパケット長の値をカウント値から減算し、先頭アドレスを次のパケットのアドレスに更新する。
【００３２】
ＰＢリード部１６は、カウンタ減算部２３によって出力された先頭アドレス、パケット長、および出力ポート１３の識別番号等に基づいて、パケットバッファ１２からパケットを読み出し、パケットを構成するデータおよび出力ポート１３の識別番号をパケット出力部１７に出力する。パケット出力部１７は、ＰＢリード部１６によって出力された出力ポート１３の識別番号と対応する出力ポート１３に対してパケットを出力する。
【００３３】
また、カウンタ減算部２３は、カウント値から減算したときのカウント値が正の値であった場合、引き続き、パケットＩＤに対応する先頭アドレスをパケットＩＤ格納リスト２１から読み出し、読み出した先頭アドレス、出力ポート１３に出力させるパケットのパケット長、および出力ポート１３の識別番号等をＰＢリード部１６に出力すると共に、出力ポート１３に出力させるパケットのパケット長の値をカウント値から減算し、先頭アドレスを次のパケットのアドレスに更新する。
【００３４】
ところで、パケット識別子と対応するカウント値が０以下の値であった場合、カウンタ減算部２３は、パケット識別子と対応するパケットの出力を行わず、カウント値が正の値になるまで待ち合わせる。また、パケット識別子と対応するパケットが全く入力されない場合等、カウンタ加算部２２は、パケット識別子と対応するカウント値を無制限に増加させてしまうため、所定の最大値を超えてしまう場合のカウント値には加算しない。
【００３５】
なお、本発明の実施の形態では、設定情報の個数を３つとして説明したが、本発明では、設定情報の個数を限定することはない。また、パケットＩＤの個数が少ないと、短い間隔の周期でパケットが少量ずつ出力されるが、パケットＩＤの個数が多くなれば、長い間隔の周期で多量のパケットが出力されるため、設定情報の個数においては、パケット中継装置を運用する際のパケットＩＤの個数の許容値や許容可能な周期等を踏まえて、適切な個数が予め決められていることが好ましい。
【００３６】
以上説明したように、本発明の実施の形態に係るパケット中継装置は、パケットＩＤの個数が増減した場合には、パケットＩＤに対応するパケットの出力が一定の速度になるように周期および加算値を変更するため、パケットＩＤに対応する出力帯域がそれぞれ同一になるような帯域制御を行いながら、パケットＩＤの個数の増減に対応することができる。
【００３７】
また、本発明の実施の形態に係るパケット中継装置は、パケットＩＤの個数が増減した場合には、複数の設定情報のうち何れか１つを選択するため、ネットワーク管理者等が、設定情報を構成する周期および加算値を予め決めて取り扱うことができる。
【００３８】
また、パケットＩＤの個数が増減した場合には、パケットＩＤの個数と所定の閾値とを比較し、比較した結果に応じて複数の設定情報のうち何れか１つを選択するため、パケットＩＤの個数に応じて適切な周期および加算値を選択することができる。
【産業上の利用可能性】
【００３９】
以上のように、本発明に係るパケット中継装置は、パケットＩＤに対応する出力帯域がそれぞれ設定された帯域を維持して帯域制御を行いながら、パケットＩＤの個数の増減に対応することができるという効果を有し、ネットワークを介してパケットを中継するときの帯域制御を行うルータ、トラフィックシェーパ、またはスイッチ等として有用である。
【図面の簡単な説明】
【００４０】
【図１】本発明の実施の形態に係るパケット中継装置の装置構成図
【図２】本発明の実施の形態に係る複数の設定情報の一例を示す図
【図３】本発明の実施の形態に係るパケットＩＤの個数と所定の閾値との関係の一例を示す図
【図４】パケットＩＤに対応するスケジューラの加算動作を示すタイミング図
【符号の説明】
【００４１】
１１  入力ポート
１２  パケットバッファ
１３  出力ポート
１４  パケット識別部
１５  ＰＢライト部
１６  ＰＢリード部
１７  パケット出力部
２０  スケジューラ
２１  パケットＩＤ格納リスト
２２  カウンタ加算部
２３  カウンタ減算部
２４  タイマ
３１  パケットＩＤカウンタ
３２  選択部
【図１】
2006101337.tif 000003
【図２】
2006101337.tif 000004
【図３】
2006101337.tif 000005
【図４】
2006101337.tif 000006