(57)【特許請求の範囲】
【請求項１】
複数のフローの各々に設定された複数の設定帯域に基づいて各フローの帯域を制限する装置において、
パケット送信完了時点からの経過時間を計測する計測手段と、
前記複数の設定帯域の最大帯域および最低帯域と前記送信されたパケットのパケット長とに基づいて、当該フローにおける次のパケットを送信開始するまでの最大帯域パケット間隔および最低帯域パケット間隔をそれぞれ生成するパケット間隔生成手段と、
前記経過時間と前記最大帯域パケット間隔および前記最低帯域パケット間隔とをそれぞれ比較する比較手段と、
当該フローにおける次パケットの送信に対して、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していない場合は相対的に低い送信優先度を、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していている場合は相対的に高い送信優先度を、それぞれ決定する送信判定手段と、
を有することを特徴とする帯域制限装置。
【請求項２】
前記送信判定手段は、前記経過時間が前記最大帯域パケット間隔にも前記最低帯域パケット間隔にも到達していない場合は当該フローのパケット送信を禁止することを特徴とする請求項１に記載の帯域制限装置。
【請求項３】
前記パケット間隔生成手段は、最大帯域と前記パケット長とに基づいて最大帯域パケット間隔を生成する最大帯域パケット間隔生成手段と、最低帯域と前記パケット長とに基づいて最低帯域パケット間隔を生成する最低帯域パケット間隔生成手段と、を有することを特徴とする請求項１または２に記載の帯域制限装置。
【請求項４】
前記比較手段は、前記経過時間が前記最大帯域パケット間隔に到達したか否かを示す第１判定信号を生成する第１比較手段と、前記経過時間が前記最低帯域パケット間隔に到達したか否かを示す第２判定信号を生成する第２比較手段と、を有し、
前記送信判定手段は、前記第１および第２判定信号により前記送信優先度を決定することを特徴とする請求項１−３のいずれか１項に記載の帯域制限装置。
【請求項５】
少なくとも前記パケット間隔生成手段、前記比較手段および前記送信判定手段は、ロジック構成されてデジタル集積回路に組み込まれたことを特徴とする請求項１−４のいずれか１項に記載の帯域制限装置。
【請求項６】
請求項５に記載の帯域制限装置を備えたルータ。
【請求項７】
ネットワークに接続するためのインタフェース手段と、
ルーティングを制御するための制御手段と、
を有し、前記帯域制限装置が前記制御手段および前記インタフェース手段のいずれか一方に集積化されたことを特徴とする請求項６に記載のルータ。
【請求項８】
複数のフローの各々に設定された最大帯域および最低帯域に基づいて各フローの帯域を制限する機能を有するネットワーク通信機器において、
任意のフローにおける直前に送信されたパケットの送信完了時点からの経過時間を計測する計測手段と、
前記フローに設定された前記最大帯域および前記最低帯域の各々と前記送信されたパケットのパケット長とに基づいて、次のパケットを送信開始するまでの最大帯域パケット間隔および最低帯域パケット間隔をそれぞれ生成するパケット間隔生成手段と、
前記経過時間と前記最大帯域パケット間隔および前記最低帯域パケット間隔とをそれぞれ比較する比較手段と、
前記複数のフローの各々に関して、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していない場合は相対的に低い送信優先度を、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していている場合は相対的に高い送信優先度を、それぞれ決定する送信判定手段と、
前記複数のフローごとに設けられ、前記送信優先度に従ってパケット送信を許可あるいは禁止する複数の送信回路と、
を有することを特徴とするネットワーク通信機器。
【請求項９】
複数のフローの各々に設定された複数の設定帯域に基づいて各フローの帯域を制限する方法において、
パケット送信完了時点からの経過時間を計測し、
前記複数の設定帯域の最大帯域および最低帯域と前記送信されたパケットのパケット長とに基づいて、当該フローにおける次のパケットを送信開始するまでの最大帯域パケット間隔および最低帯域パケット間隔をそれぞれ生成し、
前記経過時間と前記最大帯域パケット間隔および前記最低帯域パケット間隔とをそれぞれ比較し、
当該フローにおける次パケットの送信に対して、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していない場合は相対的に低い送信優先度を、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していている場合は相対的に高い送信優先度を、それぞれ決定する、
ことを特徴とする帯域制限方法。
【請求項１０】
前記経過時間が前記最大帯域パケット間隔にも前記最低帯域パケット間隔にも到達していない場合は当該フローのパケット送信を禁止することを特徴とする請求項９に記載の帯域制限方法。
【請求項１１】
前記高い送信優先度を有するパケットが存在しない場合に前記低い送信優先度のパケット送信を許可することを特徴とする請求項１０に記載の帯域制限方法。
【請求項１２】
複数のフローの各々に設定された複数の設定帯域に基づいて各フローの帯域を制限する帯域制限方法をコンピュータに実行させるためのプログラムにおいて、
ａ）パケット送信完了時点からの経過時間を計測するステップと、
ｂ）前記複数の設定帯域の最大帯域および最低帯域と前記送信されたパケットのパケット長とに基づいて、当該フローにおける次のパケットを送信開始するまでの最大帯域パケット間隔および最低帯域パケット間隔をそれぞれ生成するステップと、
ｃ）前記経過時間と前記最大帯域パケット間隔および前記最低帯域パケット間隔とをそれぞれ比較するステップと、
ｄ）当該フローにおける次パケットの送信に対して、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していない場合は相対的に低い送信優先度を、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していている場合は相対的に高い送信優先度を、それぞれ決定するステップと、
を有することを特徴とする帯域制限プログラム。
【請求項１３】
前記経過時間が前記最大帯域パケット間隔にも前記最低帯域パケット間隔にも到達していない場合は当該フローのパケット送信を禁止することを特徴とする請求項１２に記載の帯域制限プログラム。
【請求項１４】
前記ステップｄ）は、
ｄ−１）前記高い送信優先度を有するパケットが存在するか否かを判断するステップと、
ｄ−２）前記高い送信優先度を有するパケットが存在する場合には当該パケットを送信許可するステップと、
ｄ−３）前記高い送信優先度を有するパケットが存在しない場合には、前記低い送信優先度のパケットが存在するか否かを判断するステップと、
ｄ−４）前記低い送信優先度のパケットが存在する場合には、当該パケットの送信を許可するステップと、
ｄ−５）前記ステップｄ−４）が終了すると、前記ステップｄ−１）に戻ることを特徴とする請求項１２または１３に記載の帯域制限プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワークに対して適正なレートでデータ送信を行うための帯域制限方法および装置ならびにそれを用いたネットワーク通信機器に関する。
【背景技術】
【０００２】
近年のブロードバンド環境では、映像、音声、データなど各種サービスが展開されており、有限な帯域のなかでより効率的なネットワーク構築が求められるようになってきた。このようなネットワークの円滑な運用を図るために、パケットフローごとあるいはサービスごとに最低の帯域を保証したり帯域の上限を設定したりする帯域制限機能を備えたルータなどが提案されている。
【０００３】
たとえば特開２００２−２３７８４１号公報（特許文献１）に開示されたパケット転送レート監視制御装置では、受信パケットの転送間隔と受信パケット長とを用いてパケット転送レートを測定し、その測定値と最大制限レートおよび最低保証レートとを比較することで優先順位を決定し余剰帯域の公平な配分を行う（特許文献１のたとえば段落０００６、００２９を参照のこと）。
【０００４】
【特許文献１】特開２００２−２３７８４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記特許文献１に記載された帯域制限機能はパケット転送レートの測定値に基づいてパケット転送レートを制御するものであるが、パケット転送レートの測定を行わずにレート制御を実行できれば、回路構成を簡略化できデジタルＩＣへの集積化が容易となる。
【０００６】
そこで、本発明はレート測定を行うことなく送信レート制限を可能にする新たな帯域制限方法及び装置ならびにそれを用いたネットワーク通信機器を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明による帯域制限装置は、複数のフローの各々に設定された複数の設定帯域に基づいて各フローの帯域を制限するものであり、複数の設定帯域の各々の条件を満たすパケット間隔を生成し、パケット送信完了時点からの経過時間とパケット間隔との比較に基づいて各フローにおける次パケットの送信優先度を判定する。
【０００８】
より詳しくは、パケット送信完了時点からの経過時間を計測する計測手段と、前記複数の設定帯域の最大帯域および最低帯域と前記送信されたパケットのパケット長とに基づいて、当該フローにおける次のパケットを送信開始するまでの最大帯域パケット間隔および最低帯域パケット間隔をそれぞれ生成するパケット間隔生成手段と、前記経過時間と前記最大帯域パケット間隔および前記最低帯域パケット間隔とをそれぞれ比較する比較手段と、当該フローにおける次パケットの送信に対して、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していない場合は相対的に低い送信優先度を、前記経過時間が前記最大帯域パケット間隔に到達し、かつ前記最低帯域パケット間隔に到達していている場合は相対的に高い送信優先度を、それぞれ決定する送信判定手段と、を有することを特徴とする。前記送信判定手段は、前記経過時間が前記最大帯域パケット間隔にも前記最低帯域パケット間隔にも到達していない場合は当該フローのパケット送信を禁止することができる。
【０００９】
送信優先度は、最低帯域を下回ったときの高い送信優先度と最低帯域以上であるときの低い送信優先度とを含むが、送信判定は、高い送信優先度を有するパケットが存在しない場合に低い送信優先度のパケットの送信を許可するように実行される。
【発明の効果】
【００１０】
上述したように、本発明によれば、複数の設定帯域の各々の条件を満たすパケット間隔を生成し、パケット送信完了時点からの経過時間とパケット間隔との比較に基づいて各フローにおける次パケットの送信優先度を判定する。したがって、パケット間隔に到達しない期間は送信禁止状態にすることができ、最大帯域の条件を満たすことができ、さらに、経過時間に従って最低帯域を保証するように送信許可を発生することができるために、パケット転送レートを測定することなくレート制御を実行することができる。すなわち、従来のようにパケット転送レートを測定し、それを最大帯域および最低帯域と比較することでパケット間隔を調整するという複雑な制御を行う必要がない。
【００１１】
また送信判定手段は比較手段の比較結果を監視するだけで送信の可否を容易に判定することができ、比較的簡単なロジック構成で送信レート制御が可能となる。特に、帯域制限装置がロジック構成で実現できるためにＣＰＵや媒体アクセス制御デバイスなどのデジタルＩＣへの集積化が容易となる。
【発明を実施するための最良の形態】
【００１２】
図１は本発明の一実施形態による帯域制限装置を備えたルータを通してサービス要求および提供を行うネットワークシステムの一例を示すブロック図である。このネットワークシステムの例では、ルータ１０が複数の端末Ｔ1−ＴN（Ｎは２以上の整数）を収容し、本発明による帯域制限機能を有するものとする。
【００１３】
ネットワーク通信機器であるルータ１０は、ネットワーク２０を通して各端末を複数のサーバＳ1−ＳM（Ｍは２以上の整数）のいずれかに接続し、それぞれの端末に対してサーバからの個別のサービス提供を可能にする。ここでは、端末Ｔ1がサーバＳ1に接続されて映像データのサービス提供を受け、端末Ｔ2がサーバＳ2に接続されて音声データ(VoIP: Voice over IP)のサービス提供を、端末Ｔ3がサーバＳ3に接続されてインターネット通信データのサービス提供をそれぞれ受けているものとする。
【００１４】
一般に、端末Ｔ1−サーバＳ1間の映像データの通信には大きな帯域が必要であるが、端末Ｔ2−サーバＳ2間の音声データの通信にはそれほどの帯域を必要としない。しかしながら、映像や音声の配信はリアルタイム性が要求され、帯域の不足は画質や音質といったユーザから容易に判断できる品質に直接影響を与えるために、最低帯域を保証することが必要となる。
【００１５】
これに対して、端末Ｔ3−サーバＳ3間のインターネット通信データは、リアルタイム性が特に要求されない限り、最低帯域を保証するまでもない。しかしながら、映像データ配信や音声通信などのサービスに大きな使用帯域を確保することは、インターネット通信データサービスの通信速度を低下させる結果となる。したがって、ネットワークの使用帯域に上限がある状況下では、システム管理者あるいはユーザが使用帯域の上限を設定しておき、それぞれのサービスに対してそれらの特性に応じた公平な帯域使用が可能となるように帯域の割り当てを調整することが重要である。
【００１６】
図１に示す例では、たとえば端末Ｔ1−サーバＳ1間の映像通信に対しては最大５０Ｍｂｐｓに制限し最低２０Ｍｂｐｓを保証する。同様に、端末Ｔ2−サーバＳ2間の音声通信に対しては最大１０Ｍｂｐｓに制限し最低１Ｍｂｐｓを保証する。端末Ｔ3−サーバＳ3間のインターネット通信に対しては最大５０Ｍｂｐｓに制限し最低帯域は保証しない。このような帯域の割り当て調整および制限が本実施形態による帯域制限装置により実行される。
【００１７】
図２は本実施形態による帯域制限装置を有するルータの概略的な機能構成を示すブロック図である。ただし、図２では、動作が理解しやすいようにパケットフローに沿った構成が図示されている。
【００１８】
図２において、ルータ１０には、ルータ全体の制御を実行するためのＣＰＵ１１およびメモリ１２が設けられている。ＣＰＵ１１はプログラム制御プロセッサであり、メモリ１２に格納されたプログラムに従って装置全体の制御およびルーティング処理などを実行する。メモリ１２はＲＯＭ（読み出し専用メモリ）、ＲＡＭ（ランダムアクセスメモリ）などの記録装置を含む。
【００１９】
ＣＰＵ１１は、バッファ１３を介して帯域制限回路１４に接続され、さらに媒体アクセス制御デバイスＭＡＣ（ＷＡＮ）、物理層デバイスＰＨＹ（ＷＡＮ）、トランス（ＷＡＮ）およびコネクタ（ＷＡＮ）を通して広域ネットワークＷＡＮ２０に接続され、ＷＡＮ２０との間でデータ送受信を行う。他方、ＣＰＵ１１は、バッファ１５、媒体アクセス制御デバイスＭＡＣ（ＬＡＮ）、物理層デバイスＰＨＹ（ＬＡＮ）、トランス（ＬＡＮ）およびコネクタ（ＬＡＮ）を通してローカルエリアネットワークＬＡＮ３０に接続され、ＬＡＮ３０との間でデータ送受信を行う。なお、バッファ１３および１５は、別個にＦＩＦＯメモリで構成することもあるが、メモリ１２の一部の領域をバッファとして使用することもできる。
【００２０】
本実施形態による帯域制限回路１４は、バッファ１３と媒体アクセス制御デバイスＭＡＣ（ＷＡＮ）との間に接続され、ＣＰＵ１１の制御下でＷＡＮ２０への送信データの帯域制限を行う。以下、帯域制限回路１４の構成および動作を詳細に説明する。
【００２１】
図３は本実施形態による帯域制限回路の一例を示す機能的ブロック図である。ここでは帯域制限回路１４が複数（Ｎ個）のパケットフローの送信帯域制御を行うものとする。Ｎは２以上の任意の整数である。
【００２２】
図３に示す帯域制限回路１４には、Ｎ個の送信帯域にそれぞれ対応する送信回路ＴＸ1−ＴＸNに対して帯域制限を行う帯域演算部ＢＷＣＡＬ1−ＢＷＣＡＬNが設けられている。帯域演算部ＢＷＣＡＬi（ｉ＝１〜Ｎの整数）は、後述する最大帯域通知信号ＳMAXiおよび最低帯域通知信号ＳMINiを送信判定部１００へそれぞれ出力し、それらに対応する選択許可信号ＳPiをそれぞれ受け取ると、それらを送信回路ＴＸiへそれぞれ転送する。各送信回路は、入力した選択許可信号がアクティブであれば当該帯域の送信データをＷＡＮ２０へ送信する。
【００２３】
送信判定部１００は、各帯域演算部ＢＷＣＡＬiから入力した最大帯域通知信号ＳMAXiおよび最低帯域通知信号ＳMINiから、後述するロジックに従って当該帯域のデータ送信の可否、言い換えれば優先順位を判定する。送信判定部１００は１つの判定ロジック回路としてハードウエアで構成されてもよいが、ＣＰＵ１１上でプログラムを実行することにより実現することも可能である。
【００２４】
図４は本実施形態における帯域演算部ＢＷＣＡＬの一例を示すブロック図である。帯域演算部ＢＷＣＡＬには最大帯域設定レジスタ１０１と最低帯域設定レジスタ１０２とが設けられ、ＣＰＵ１１によって最大データ転送帯域（最大通信レート）ＢＷMAXと最低データ転送帯域（最低通信レート）ＢＷMINとがそれぞれ設定される。たとえば１００ＢＡＳＥ−ＴＸのような全帯域が１００Ｍｂｐｓの伝送路では、最大帯域ＢＷMAX＝５０Ｍｂｐｓ、最低帯域ＢＷMIN＝３３Ｍｂｐｓに設定される。送信バイトカウンタ１０３は転送したパケットのバイト数をカウントし、直前に転送したパケットのバイト数を常に保持している。
【００２５】
最大帯域ＧＡＰ生成部１０４はレジスタ１０１からの最大帯域ＢＷMAXと送信バイトカウンタ１０３からの直前パケットバイト数Lengthとを用いて、最大レートで転送を行うために必要なパケット間隔ＧＡＰBW=MAXを算出する。同様に、最低帯域ＧＡＰ生成部１０５はレジスタ１０２からの最低帯域ＢＷMINと送信バイトカウンタ１０３からの直前パケットバイト数Lengthとを用いて、最小レートで転送を行うために必要なパケット間隔ＧＡＰBW-MINを算出する。これらのパケット間隔ＧＡＰは式（１）により算出することができる。
【００２６】
【数１】
0004404848.tif 000002
【００２７】
式（１）において、ＴＲは伝送速度(kbit)であり、ＢＷは最大帯域ＢＷMAXあるいは最低帯域ＢＷMIN（kbit）である。伝送速度ＴＲでLengthバイト＝（Length×８）ビットのパケットが送信された場合、それに続くパケットを送信するまでの間隔ＧＡＰは、
(Length×８)：(Length×８＋ＧＡＰ)＝ＢＷ：ＴＲ
という比例式から得ることができる。
【００２８】
たとえば、伝送速度ＴＲ＝１００Ｍｂｐｓ（＝１０００００ｋｂｐｓ）の伝送路で、最大帯域ＢＷMAX＝２０Ｍｂｐｓ（＝２００００ｋｂｐｓ）、直前パケットバイト数Length＝１５００バイトの場合、
ＧＡＰBW=MAX＝（（１０００００−２００００）×１５００×８）／２００００
＝４８０００（ｂｉｔ）
となる。この場合のパケット送信間隔ＧＡＰBW=MAX＝４８０００ｂｉｔとは、送信したパケット（１５００×８＝１２０００ビット）の４倍の間隔に相当する時間経過後に次のパケットを送信すれば、最大帯域ＢＷMAX＝２０Ｍｂｐｓのデータ転送が行われることを意味する。
【００２９】
そこで、パケット送信間隔ＧＡＰと経過時間とを比較するために比較器１０６および１０７と計時カウンタ１０８とを設ける。計時カウンタ１０８は、直前のパケット送信が終了した時点でスタートし、データ通信のための転送クロックに従ってカウント数Ｃを順次上昇させる。たとえば１００ＢＡＳＥ−ＴＸでは１００ＭＨｚのクロックに従ってカウントする。
【００３０】
比較器１０６は最大帯域パケット間隔ＧＡＰBW=MAXと経時カウント値Ｃとを比較し、経過時間ＣがＧＡＰBW=MAXに到達したか否かを示す最大帯域通知信号ＳMAXを出力する。同様に、比較器１０７は最低帯域パケット間隔ＧＡＰBW-MINと経時カウント値Ｃとを比較し、経過時間ＣがＧＡＰBW-MINに到達したか否かを示す最低帯域通知信号ＳMINを出力する。
【００３１】
送信判定部１００は、最大帯域通知信号ＳMAXおよび最低帯域通知信号ＳMINからパケット送信優先度を決定し、それに従って各フローのパケット送信可否を判定する。以下、経過時間Ｃが最大帯域パケット間隔ＧＡＰBW=MAXに到達していない場合（ＧＡＰBW=MAX＞Ｃの時）はＳMAX＝１、到達後（ＧＡＰBW=MAX≦Ｃの時）はＳMAX＝０とし、同様に、経過時間Ｃが最低帯域パケット間隔ＧＡＰBW-MINに到達していない場合（ＧＡＰBW-MIN＞Ｃの時）はＳMIN＝１、到達後（ＧＡＰBW-MIN≦Ｃの時）はＳMIN＝０として、送信判定部１００の送信判定動作を説明する。
【００３２】
図５は本実施形態における送信判定動作を説明するためのタイミングチャートである。ここでは、１００ＢＡＳＥ−ＴＸのような全帯域が１００Ｍｂｐｓの伝送路で、最大帯域ＢＷMAX＝５０Ｍｂｐｓ、最低帯域ＢＷMIN＝３３Ｍｂｐｓに設定された場合を例示する。
【００３３】
図５（ａ）に示すように、ＬＡＮ２０上のデータが送信期間２０１で実際にＷＡＮ３０へ送信され、パケット送信完了までに時間Ｔ（送信バイト数Length×８[bit]に相当する。）を要したものとする。この例では全帯域が１００Ｍｂｐｓの伝送路で最大帯域ＢＷMAX＝５０Ｍｂｐｓに設定されているので、式（１）に従って、最大帯域ＧＡＰ生成部１０４はパケット送信期間２０１（＝Ｔ）と同じ時間間隔に相当するパケット送信間隔ＧＡＰBW=MAXを生成し、最低帯域ＧＡＰ生成部１０５は最低帯域ＢＷMIN＝３３Ｍｂｐｓに設定されているので、時間Ｔのほぼ２倍の時間間隔に相当するパケット送信間隔ＧＡＰBW-MINを生成する。
【００３４】
したがって、比較器１０６から出力される最大帯域通知信号ＳMAXは、図５（ｂ）に示すように、時点０で立ち上がり、時点２*Ｔ（計算上は正確に２倍ではないので「２*Ｔ」と表示する。）で立ち下がる。最低帯域通知信号ＳMINは、図５（ｃ）に示すように、時点０で立ち上がり、時点３*Ｔ（計算上は正確に３倍ではないので「３*Ｔ」と表示する。）で立ち下がる。
【００３５】
送信判定部１００は、図５（ｂ）および（ｃ）に示すような最大帯域通知信号ＳMAXおよび最低帯域通知信号ＳMINを入力し、次のように送信の可否を判定する。
【００３６】
（１）パケットの送信が完了した時点Ｔから時点２*ＴまではＳMAX＝１およびＳMIN＝１であるから、送信不可期間２０２と判定し当該送信データの送信を許可しない。すなわち、データ送信に要した時間Ｔとほぼ同じ時間だけ送信を禁止することで最大帯域ＢＷMAXを超えないようにする（送信禁止）。
【００３７】
（２）時点２*Ｔから時点３*ＴまではＳMAX＝０およびＳMIN＝１であるから、送信可能期間２０３と判定し送信禁止を解除する。ただし、最低帯域ＢＷMINを下回っているわけではないので、積極的に送信を開始する必要はない。したがって、この場合には他に最低帯域を下回っている送信データが存在しない限り、送信を実行すればよい（低い優先度）。
【００３８】
（３）時点３*Ｔ以降はＳMAX＝０およびＳMIN＝０であるから、最低帯域ＢＷMINを下回っており、積極的にデータ送信を行う必要がある送信可能期間２０４と判定する（高い優先度）。
【００３９】
このように最大帯域通知信号ＳMAXおよび最低帯域通知信号ＳMINの２つの信号で送信状態を含む４つの状態を管理し、どの状態にあるかによって送信の優先順位を決定する。したがって、パケット転送レートを測定することなく帯域制限を行うことができ、更に、図４に示すように帯域演算部ＢＷＣＡＬはカウンタベースのロジック構成で実現することができるために集積化に適している。
【００４０】
図６は本発明の一実施例による帯域制限回路の構成を示すブロック図である。ここでは、４種類の帯域制限を行う場合を示す。帯域演算部を増設することで、より多くの帯域設定に対しても容易に対応することができる。ただ、今日のブロードバンド事情では、映像、音声、データなどの各種サービスの提供に伴い、装置の使用として４種類の帯域制限が要求されるケースが多いために、ここでは４つの送信回路をサポートする場合を例示する。
【００４１】
帯域制限回路には、４個の送信帯域にそれぞれ対応する送信回路ＴＸ1−ＴＸ4（図示せず。）に対して帯域制限を行う帯域演算部ＢＷＣＡＬ1−ＢＷＣＡＬ4が設けられている。各帯域演算部ＢＷＣＡＬi（ｉ＝１〜４の整数）は、図４に示すロジック構成により実現されうる。各各帯域演算部ＢＷＣＡＬiは、既に説明した最大帯域通知信号ＳMAXiおよび最低帯域通知信号ＳMINiを送信判定部１００へ出力する。それらに基づいて判定された選択許可信号ＳPiは、対応する送信回路ＴＸiへそれぞれ出力される。
【００４２】
送信判定部１００は、帯域演算部ＢＷＣＡＬ1〜ＢＷＣＡＬ4からそれぞれ入力した（ＳMAX1，ＳMIN1）〜（ＳMAX4，ＳMIN4）を用いてそれぞれのデータ送信の優先順位を判定する。以下、送信判定動作について説明する。
【００４３】
図７は本実施例における帯域制限回路の送信判定動作を示すフローチャートである。送信判定動作は、先ず、積極的にデータ送信を行う必要がある状態（図５の送信可能期間２０４）について先に判定し、積極的にデータ送信を行う必要がある状態が存在しなくなった段階で、積極的に送信を行う必要がない状態（図５の送信可能期間２０３）について判定するという基本的な動作を繰り返す。
【００４４】
起動されると、送信判定部１００は先ず帯域演算部ＢＷＣＡＬ1からの最大帯域通知信号および最低帯域通知信号（ＳMAX1，ＳMIN1）が（０，０）であるか否かを判断する（ステップＳ３０１）。（ＳMAX1，ＳMIN1）＝（０，０）であれば、上述したように最低帯域ＢＷMIN1を下回っているので積極的にデータ送信を行う必要があり、選択許可信号ＳP1をアクティブにする（ステップＳ３０９）。選択許可信号ＳP1をアクティブにした後、再度ステップＳ３０１に戻る。そのとき送信期間２０１あるいは送信不可期間２０２にあれば（ＳMAX1，ＳMIN1）＝（１，１）である（図５（ａ）および（ｂ）参照）。
【００４５】
（ＳMAX1，ＳMIN1）≠（０，０）であれば（ステップＳ３０１のＮＯ）、帯域演算部ＢＷＣＡＬ2からの最大帯域通知信号および最低帯域通知信号（ＳMAX2，ＳMIN2）が（０，０）であるか否かを判断する（ステップＳ３０２）。（ＳMAX2，ＳMIN2）＝（０，０）であれば、上述したように最低帯域ＢＷMIN2を下回っているので積極的にデータ送信を行う必要があり、選択許可信号ＳP2をアクティブにする（ステップＳ３１０）。選択許可信号ＳP2をアクティブにした後、再度ステップＳ３０１に戻る。そのとき送信期間２０１あるいは送信不可期間２０２にあれば（ＳMAX1，ＳMIN1）＝（１，１）であり、同様にステップＳ３０２でも送信期間２０１あるいは送信不可期間２０２にあれば（ＳMAX2，ＳMIN2）＝（１，１）である（図５（ａ）および（ｂ）参照）。また、ステップＳ３０１で送信可能期間２０３であれば（ＳMAX1，ＳMIN1）＝（０，１）、ステップＳ３０２で送信可能期間２０３であれば（ＳMAX2，ＳMIN2）＝（０，１）である。
【００４６】
（ＳMAX2，ＳMIN2）≠（０，０）であれば（ステップＳ３０２のＮＯ）、帯域演算部ＢＷＣＡＬ3からの最大帯域通知信号および最低帯域通知信号（ＳMAX3，ＳMIN3）が（０，０）であるか否かを判断する（ステップＳ３０３）。（ＳMAX3，ＳMIN3）＝（０，０）であれば、上述したように最低帯域ＢＷMIN3を下回っているので積極的にデータ送信を行う必要があり、選択許可信号ＳP3をアクティブにする（ステップＳ３１１）。選択許可信号ＳP3をアクティブにした後、再度ステップＳ３０１に戻り、上述したようにステップＳ３０１〜Ｓ３０３の判定が行われる。
【００４７】
（ＳMAX3，ＳMIN3）≠（０，０）であれば（ステップＳ３０３のＮＯ）、帯域演算部ＢＷＣＡＬ4からの最大帯域通知信号および最低帯域通知信号（ＳMAX4，ＳMIN4）が（０，０）であるか否かを判断する（ステップＳ３０４）。（ＳMAX4，ＳMIN4）＝（０，０）であれば、上述したように最低帯域ＢＷMIN4を下回っているので積極的にデータ送信を行う必要があり、選択許可信号ＳP4をアクティブにする（ステップＳ３１２）。選択許可信号ＳP4をアクティブにした後、再度ステップＳ３０１に戻り、上述したようにステップＳ３０１〜Ｓ３０４の判定が行われる。
【００４８】
（ＳMAX4，ＳMIN4）≠（０，０）であれば（ステップＳ３０４のＮＯ）、現時点では、全ての種類の帯域で積極的な送信を必要としていないことがわかる。
【００４９】
続いて、送信判定部１００は、帯域演算部ＢＷＣＡＬ1からの最大帯域通知信号および最低帯域通知信号（ＳMAX1，ＳMIN1）が（０，１）であるか否かを判断する（ステップＳ３０５）。（ＳMAX1，ＳMIN1）＝（０，１）であれば選択許可信号ＳP1をアクティブする（ステップＳ３０９）。選択許可信号ＳP1をアクティブにした後、再度ステップＳ３０１に戻り、上述したようにステップＳ３０１〜Ｓ３０５の判定が行われる。
【００５０】
（ＳMAX1，ＳMIN1）≠（０，１）であれば（ステップＳ３０５のＮＯ）、帯域演算部ＢＷＣＡＬ2からの最大帯域通知信号および最低帯域通知信号（ＳMAX2，ＳMIN2）が（０，１）であるか否かを判断する（ステップＳ３０６）。（ＳMAX2，ＳMIN2）＝（０，１）であれば選択許可信号ＳP2をアクティブする（ステップＳ３１０）。選択許可信号ＳP2をアクティブにした後、再度ステップＳ３０１に戻り、上述したようにステップＳ３０１〜Ｓ３０６の判定が行われる。
【００５１】
（ＳMAX2，ＳMIN2）≠（０，１）であれば（ステップＳ３０６のＮＯ）、帯域演算部ＢＷＣＡＬ3からの最大帯域通知信号および最低帯域通知信号（ＳMAX3，ＳMIN3）が（０，１）であるか否かを判断する（ステップＳ３０７）。（ＳMAX3，ＳMIN3）＝（０，１）であれば選択許可信号ＳP3をアクティブする（ステップＳ３１１）。選択許可信号ＳP3をアクティブにした後、再度ステップＳ３０１に戻り、上述したようにステップＳ３０１〜Ｓ３０７の判定が行われる。
【００５２】
（ＳMAX3，ＳMIN3）≠（０，１）であれば（ステップＳ３０７のＮＯ）、帯域演算部ＢＷＣＡＬ4からの最大帯域通知信号および最低帯域通知信号（ＳMAX4，ＳMIN4）が（０，１）であるか否かを判断する（ステップＳ３０８）。（ＳMAX4，ＳMIN4）＝（０，１）であれば選択許可信号ＳP4をアクティブする（ステップＳ３１２）。選択許可信号ＳP4をアクティブにした後、再度ステップＳ３０１に戻り、上述したようにステップＳ３０１〜Ｓ３０８の判定が行われる。
【００５３】
（ＳMAX4，ＳMIN4）≠（０，１）であれば（ステップＳ３０８のＮＯ）、制御はステップＳ３０１に戻り、以上ステップＳ３０１〜Ｓ３１２が繰り返される。
【００５４】
このようにして送信判定部１００から出力された選択許可信号ＳPにより送信が許可された送信回路が送信を実行することができ、設定した帯域に応じた送信選択を行うことができる。
【００５５】
本実施例では４つのフローの送信帯域制限について例示したが、複数のフローの送信帯域の場合も、図７のステップＳ３０１〜Ｓ３０４と、Ｓ３０５〜Ｓ３０８と、Ｓ３０９〜Ｓ３１２のステップ数をそれぞれ増加させるだけで同様に制御できる。
【００５６】
このように、最大帯域通知信号および最低帯域通知信号は最大帯域以上での送信を禁止する情報を含んでおり、送信判定部１００は最大帯域通知信号および最低帯域通知信号を監視するだけで優先順位に従った送信の可否を容易に判定することができる。このために比較的簡単な情報処理で送信レート制御が可能となる。
【産業上の利用可能性】
【００５７】
本発明による帯域制限装置および方法は、ルータなどのネットワーク通信機器に適用可能である。
【図面の簡単な説明】
【００５８】
【図１】本発明の一実施形態による帯域制限装置を備えたルータを通してサービス要求および提供を行うネットワークシステムの一例を示すブロック図である。
【図２】本実施形態による帯域制限装置を有するルータの概略的な機能構成を示すブロック図である。
【図３】本実施形態による帯域制限回路の一例を示す機能的ブロック図である。
【図４】本実施形態における帯域演算部ＢＷＣＡＬの一例を示すブロック図である。
【図５】本実施形態における送信判定動作を説明するためのタイミングチャートである。
【図６】本発明の一実施例による帯域制限回路の構成を示すブロック図である。
【図７】本実施例における帯域制限回路の送信判定動作を示すフローチャートである。
【符号の説明】
【００５９】
１０  ルータ
１１  ＣＰＵ
１２  メモリ
１３  バッファ
１４  帯域制限回路
１５  バッファ
１００  送信判定部
１０１  最大帯域レジスタ
１０２  最低帯域レジスタ
１０３  送信バイトカウンタ
１０４  最大帯域ＧＡＰ生成部
１０５  最低帯域ＧＡＰ生成部
１０６  比較器
１０７  比較器
ＴＸ  送信回路
ＢＷＣＡＬ  帯域演算部
【図１】
0004404848.tif 000003
【図２】
0004404848.tif 000004
【図３】
0004404848.tif 000005
【図４】
0004404848.tif 000006
【図５】
0004404848.tif 000007
【図６】
0004404848.tif 000008
【図７】
0004404848.tif 000009