(57)【特許請求の範囲】
【請求項１】
複数のチャネルを介して送信されるパケットを優先制御して転送する通信装置において、
前記受信したパケットのパケット長と、当該パケットのチャネルに設定された最大保証帯域速度に基づいて算出したタイムスロットによって、前記最大保証帯域速度の送信を保証するクラスのパケットの転送のスケジューリングを行う手段と、
前記タイムスロットによってスケジューリングされたパケットを送信する順番を制御して、当該パケットのチャネルに設定されたサービス品質に基づいて送信するパケットを決定する帯域管理部と、
前記スケジューリングを実行するタイミングを指示する受信側カウンタと、
前記帯域管理部における送信するパケットを決定するタイミングを指示する送信側カウンタを備え、
前記受信側カウンタと前記送信側カウンタは、同一の一定周期でカウントアップし、かつ前記送信側カウンタの更新タイミングを、前記受信側カウンタの更新時点から、前記カウントアップの周期よりも短い予め定められた一定時間後とし、
前記帯域管理部は、前記タイムスロットの、前記送信側カウンタの更新タイミングから、前記受信側カウンタの更新タイミングまでの期間で、前記最大保証帯域速度の送信を保証するクラスのパケットを送信し、
前記タイムスロットの残りの期間にて、前記スケジューリング手段が前記タイムスロットにスケジューリングしたパケットが存在しない場合には、前記最大保証帯域速度の送信を保証するクラス以外のパケット送信することを特徴とする通信装置。
【請求項２】
前記帯域管理部は、前記パケットのパケット長と、当該パケットのチャネルに設定されたサービス品質に基づいて、前記タイムスロットでスケジューリングされた前記最大保証帯域速度の送信を保証するクラスのパケットの送信に設定する使用帯域と前記最大保証帯域速度の送信を保証するクラス以外のパケット送信に設定する使用帯域の量を更新することを特徴とする請求項１に記載の通信装置。
【請求項３】
各前記チャネルにおいて、帯域保証型とベストエフォート型とのいずれかのサービス品質の設定を備え、設定されたサービス品質及び使用帯域の量に基づいて各チャネルのパケットを優先制御して転送することを特徴とする請求項２に記載の通信装置。
【請求項４】
複数のチャネルを介して送信されるパケットを優先制御して転送する通信装置の優先制御方法において、
前記通信装置は、同一の一定周期でカウントアップする受信側カウンタと送信側カウンタを備え、前記送信側カウンタの更新タイミングを、前記受信側カウンタの更新時点から、前記カウントアップの周期よりも短い予め定められた一定時間後とし、
前記受信側カウンタの更新時毎に、前記受信したパケットのパケット長と、当該パケットのチャネルに設定された最大保証帯域速度に基づいて算出したタイムスロットによって、前記最大保証帯域速度の送信を保証するクラスのパケットの転送のスケジューリングを行うステップと、
前記送信側カウンタの更新時毎に、前記タイムスロットによってスケジューリングされたパケットの送信する順番を制御して当該パケットのチャネルに設定されたサービス品質に基づいて送信するパケットを決定するステップを備えると共に、
前記送信するパケットを決定するステップにて、
前記タイムスロットの、前記送信側カウンタの更新タイミングから、前記受信側カウンタの更新タイミングまでの期間で、前記最大保証帯域速度の送信を保証するクラスのパケットを送信し、
前記タイムスロットの残りの期間にて、前記スケジューリング手段が該当のタイムスロットにスケジューリングしたパケットが存在しない場合には、前記最大保証帯域速度の送信を保証するクラス以外のパケット送信することを特徴とする優先制御方法。
【請求項５】
前記パケットのパケット長と、当該パケットのチャネルに設定されたサービス品質に基づいて、前記タイムスロットでスケジューリングされた前記最大保証帯域速度の送信を保証するクラスのパケットの送信に設定する使用帯域と前記最大保証帯域速度の送信を保証するクラス以外のパケット送信に設定する使用帯域の量を更新することを特徴とする請求項４に記載の優先制御方法。
【請求項６】
各前記チャネルにおいて、帯域保証型とベストエフォート型とのいずれかのサービス品質の設定を備え、設定されたサービス品質及び使用帯域の量に基づいて各チャネルのパケットを優先制御して転送することを特徴とする請求項５に記載の優先制御方法。
【請求項７】
コンピュータを制御することにより、複数のチャネルを介して送信されるパケットを優先制御して転送する優先制御プログラムにおいて、
同一の一定周期で受信側カウンタと送信側カウンタをカウントアップし、かつ前記送信側カウンタの更新タイミングを、前記受信側カウンタの更新時点から、前記カウントアップの周期よりも短い予め定められた一定時間後とする処理と、
前記受信側カウンタの更新時毎に、前記受信したパケットのパケット長と、当該パケットのチャネルに設定された最大保証帯域速度に基づいて算出したタイムスロットによって、前記最大保証帯域速度の送信を保証するクラスのパケットの転送のスケジューリングを行う処理と、
前記送信側カウンタの更新時毎に、前記タイムスロットによってスケジューリングされたパケットの送信する順番を制御して当該パケットのチャネルに設定されたサービス品質に基づいて送信するパケットを決定する処理を実行させると共に、
前記送信するパケットを決定する処理にて、
前記タイムスロットの、前記送信側カウンタの更新タイミングから、前記受信側カウンタの更新タイミングまでの期間で、前記最大保証帯域速度の送信を保証するクラスのパケットを送信し、
前記タイムスロットの残りの期間にて、前記スケジューリング手段が該当のタイムスロットにスケジューリングしたパケットが存在しない場合には、前記最大保証帯域速度の送信を保証するクラス以外のパケット送信する処理を実行することを特徴とする優先制御プログラム。
【請求項８】
前記パケットのパケット長と、当該パケットのチャネルに設定されたサービス品質に基づいて、前記タイムスロットでスケジューリングされた前記最大保証帯域速度の送信を保証するクラスのパケットの送信に設定する使用帯域と前記最大保証帯域速度の送信を保証するクラス以外のパケット送信に設定する使用帯域の量を更新する処理を実行させることを特徴とする請求項７に記載の優先制御プログラム。
【請求項９】
各前記チャネルにおいて、帯域保証型とベストエフォート型とのいずれかのサービス品質の設定を備え、設定されたサービス品質及び使用帯域の量に基づいて各チャネルのパケットを優先制御して転送する処理を実行させることを特徴とする請求項８に記載の優先制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信パケットの中継に関し、特に、複数のチャネルを介して送信されるパケットを優先制御して転送する通信装置とその優先制御方法、及び優先制御プログラムに関する。
【０００２】
【従来の技術】
通信パケットを中継する通信装置においては、複数のチャネルによる通信を中継するものがあり、またその各チャネルのそれぞれに異なったサービス品質（スループット等）が設定されている場合もある。
【０００３】
各チャンネルに設定されるスループットとしては、例えば、常に一定のスループットを保証する帯域保証型や、スループットの値を保証せず良好なサービスを維持するための努力をする方式のベストエフォート型（Best Effort Type）等がある。
【０００４】
【発明が解決しようとする課題】
上述したように従来の技術では、受信側におけるスケジューラ論理を簡素化して、該当チャネルの最大保証帯域速度（契約レート）にのみ基づき帯域予約（スケジューリング）すると、異チャネルの複数パケットが同一タイムスロットに集中して送信インタフェースの帯域を超えてしまい、送信側における最大保証帯域速度のトラフィックの保証と、未使用帯域が生じた時のベストエフォートトラフィック制御が困難になるという問題点があった。
【０００５】
本発明の目的は、上記従来技術の欠点を解決し、従来の装置よりも帯域予約（スケジューリング）における論理を簡素化し、更に、スケジューラによる最大保証帯域速度のトラフィックを保証するクラスと、それよりも低優先で未使用帯域に応じてベストエフォートに送信されるクラスとの効率の良い優先制御を実現する通信装置とその優先制御方法、及び優先制御プログラムを提供する。
【０００６】
【課題を解決するための手段】
上記目的を達成するため本発明の通信装置は、複数のチャネルを介して送信されるパケットを優先制御して転送する通信装置において、前記受信したパケットのパケット長と、当該パケットのチャネルに設定された最大保証帯域速度に基づいて算出したタイムスロットによって、前記最大保証帯域速度の送信を保証するクラスのパケットの転送のスケジューリングを行う手段と、前記タイムスロットによってスケジューリングされたパケットを送信する順番を制御して、当該パケットのチャネルに設定されたサービス品質に基づいて送信するパケットを決定する帯域管理部と、前記スケジューリングを実行するタイミングを指示する受信側カウンタと、前記帯域管理部における送信するパケットを決定するタイミングを指示する送信側カウンタを備え、前記受信側カウンタと前記送信側カウンタは、同一の一定周期でカウントアップし、かつ前記送信側カウンタの更新タイミングを、前記受信側カウンタの更新時点から、前記カウントアップの周期よりも短い予め定められた一定時間後とし、前記帯域管理部は、前記タイムスロットの、前記送信側カウンタの更新タイミングから、前記受信側カウンタの更新タイミングまでの期間で、前記最大保証帯域速度の送信を保証するクラスのパケットを送信し、前記タイムスロットの残りの期間にて、前記スケジューリング手段が前記タイムスロットにスケジューリングしたパケットが存在しない場合には、前記最大保証帯域速度の送信を保証するクラス以外のパケット送信することを特徴とする。
【０００７】
これにより本発明の通信装置は、受信側カウンタのカウントアップ時において、最大保証帯域速度に基づいて各パケットをスケジューリングし、続いて帯域管理部が、前記カウントアップの周期よりも短い予め定められた一定時間後に、各チャネルに設定されたサービス品質に基づいて送信するパケットを決定することにより、各チャネルのサービス品質に基づいて効率良く優先制御を行うことができる。
【０００８】
請求項２の本発明の通信装置は、前記帯域管理部は、前記パケットのパケット長と、当該パケットのチャネルに設定されたサービス品質に基づいて、前記タイムスロットでスケジューリングされた前記最大保証帯域速度の送信を保証するクラスのパケットの送信に設定する使用帯域と前記最大保証帯域速度の送信を保証するクラス以外のパケット送信に設定する使用帯域の量を更新することを特徴とする。
【０００９】
請求項３の本発明の通信装置は、各前記チャネルにおいて、帯域保証型とベストエフォート型とのいずれかのサービス品質の設定を備え、設定されたサービス品質及び使用帯域の量に基づいて各チャネルのパケットを優先制御して転送することを特徴とする。
【００１０】
請求項４の本発明の優先制御方法は、複数のチャネルを介して送信されるパケットを優先制御して転送する通信装置の優先制御方法において、前記通信装置は、同一の一定周期でカウントアップする受信側カウンタと送信側カウンタを備え、前記送信側カウンタの更新タイミングを、前記受信側カウンタの更新時点から、前記カウントアップの周期よりも短い予め定められた一定時間後とし、前記受信側カウンタの更新時毎に、前記受信したパケットのパケット長と、当該パケットのチャネルに設定された最大保証帯域速度に基づいて算出したタイムスロットによって、前記最大保証帯域速度の送信を保証するクラスのパケットの転送のスケジューリングを行うステップと、前記送信側カウンタの更新時毎に、前記タイムスロットによってスケジューリングされたパケットの送信する順番を制御して当該パケットのチャネルに設定されたサービス品質に基づいて送信するパケットを決定するステップを備えると共に、前記送信するパケットを決定するステップにて、前記タイムスロットの、前記送信側カウンタの更新タイミングから、前記受信側カウンタの更新タイミングまでの期間で、前記最大保証帯域速度の送信を保証するクラスのパケットを送信し、前記タイムスロットの残りの期間にて、前記スケジューリング手段が該当のタイムスロットにスケジューリングしたパケットが存在しない場合には、前記最大保証帯域速度の送信を保証するクラス以外のパケット送信することを特徴とする。
【００１１】
請求項５の本発明の優先制御方法は、前記パケットのパケット長と、当該パケットのチャネルに設定されたサービス品質に基づいて、前記タイムスロットでスケジューリングされた前記最大保証帯域速度の送信を保証するクラスのパケットの送信に設定する使用帯域と前記最大保証帯域速度の送信を保証するクラス以外のパケット送信に設定する使用帯域の量を更新することを特徴とする。
【００１２】
請求項６の本発明の優先制御方法は、各前記チャネルにおいて、帯域保証型とベストエフォート型とのいずれかのサービス品質の設定を備え、設定されたサービス品質及び使用帯域の量に基づいて各チャネルのパケットを優先制御して転送することを特徴とする。
【００１３】
請求項７の本発明の優先制御プログラムは、コンピュータを制御することにより、複数のチャネルを介して送信されるパケットを優先制御して転送する優先制御プログラムにおいて、同一の一定周期で受信側カウンタと送信側カウンタをカウントアップし、かつ前記送信側カウンタの更新タイミングを、前記受信側カウンタの更新時点から、前記カウントアップの周期よりも短い予め定められた一定時間後とする処理と、前記受信側カウンタの更新時毎に、前記受信したパケットのパケット長と、当該パケットのチャネルに設定された最大保証帯域速度に基づいて算出したタイムスロットによって、前記最大保証帯域速度の送信を保証するクラスのパケットの転送のスケジューリングを行う処理と、前記送信側カウンタの更新時毎に、前記タイムスロットによってスケジューリングされたパケットの送信する順番を制御して当該パケットのチャネルに設定されたサービス品質に基づいて送信するパケットを決定する処理を実行させると共に、前記送信するパケットを決定する処理にて、前記タイムスロットの、前記送信側カウンタの更新タイミングから、前記受信側カウンタの更新タイミングまでの期間で、前記最大保証帯域速度の送信を保証するクラスのパケットを送信し、前記タイムスロットの残りの期間にて、前記スケジューリング手段が該当のタイムスロットにスケジューリングしたパケットが存在しない場合には、前記最大保証帯域速度の送信を保証するクラス以外のパケット送信する処理を実行することを特徴とする。
【００１４】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００１５】
図１は、本発明の一実施の形態による通信装置１００の一実施例の構成を示すブロック図である。
【００１６】
本実施の形態の通信装置１００は、様々なサービス品質（スループット等）の設定された複数のチャネルによる多重されたトラフィックを、スケジューラにより帯域保証してパケットの転送を行う。このパケットは、固定長のパケットに限定されるものではなく、可変長パケットとしてもよい。
【００１７】
通信装置１００内の受信側スケジューラにおいては、該当チャネルの最大保証帯域速度（契約レート）にのみ基づき帯域予約（スケジューリング）するものとして、従来の装置よりも簡素化した装置構成にする。
【００１８】
またこの簡素化によって、異チャネルの複数パケットが同一タイムスロットに集中し、送信インタフェースの帯域を超えてスケジューリングされる場合が生じる可能性があるため、送信側の帯域管理部３０が、こうした送信インタフェースの帯域を超えてスケジューリングされたパケットを制御するものとする。
【００１９】
以下に説明するように、帯域管理部３０は、受信側のスケジューラが参照するタイムスロットよりも、遅延されたタイムスロットを参照して送信するパケットを決定し送信する。これにより、スケジューラによる最大保証帯域速度のトラフィッククラスを保証することができ、また、それよりも低優先で未使用帯域に応じてベストエフォートに送信されるクラスとの優先制御を実現する。
【００２０】
なお、以下の説明においては、スケジューリング制御され最大保証帯域速度のトラフィックを保証するクラスをＡクラスと呼び、このＡクラスよりも低優先でＡクラスの未使用帯域に応じてベストエフォートに送信されるクラスをＢクラスと呼ぶこととする。
【００２１】
次に、本実施の形態の通信装置１００の各部の機能を説明する
図１を参照すると、本実施の形態の通信装置１００は、パケット受信部１０、トラフィッククラシファイ部２０、帯域管理部３０、Ａクラススケジューラ５０、Ｂクラスバッファ６０、パケット用バッファ７０、パケット送信部８０を備えており、パケット入力回線Ｌ１により入力されたパケットをパケット出力回線Ｌ２から出力する。
【００２２】
パケット入力回線Ｌ１及びパケット出力回線Ｌ２は、可変長パケットのトラフィックが複数チャネル多重されている。
【００２３】
パケット受信部１０は、パケット入力回線Ｌ１より受信したパケットからチャネル番号とパケット優先クラスと受信パケットのパケット長を抽出し、装置内の制御セルを生成する。生成された制御セルは受信パケットと一意に対応していて、パケット受信部１０からトラフィッククラシファイ部２０へ転送される。
【００２４】
また、パケット受信部１０は、パケットの実体をパケット用バッファ７０に転送する。ここで生成される制御セルは、チャネル番号、優先クラス、パケット長及びパケットの実体へのポインタで構成されている。
【００２５】
パケット用バッファ７０は、受信パケットの実体を格納するバッファである。パケット受信部１０は、パケット用バッファ７０への受信したパケットの書込を行い、パケット送信部８０は、パケット用バッファ７０からバッファ読出を行い外部へ送信する。
【００２６】
タイマ部４０は、内部クロックを分周し、受信側において用いるタイムスロットカウンタ（Ｔｉ、受信側カウンタ）と、送信側において用いるタイムスロットカウンタ（Ｔｏ、送信側カウンタ）とを生成する。このタイムスロットカウンタ（Ｔｉ）は受信側のＡクラススケジューラ５０が参照し、タイムスロットカウンタ（Ｔｏ）は送信側の帯域管理部３０が参照する。この双方のタイムスロットカウンタ（Ｔｉ）（Ｔｏ）は、その更新タイミングが（予め定められた）αクロック分ずらされた、同一の周期のカウンタである。
【００２７】
更に、タイマ部４０は、Ｂクラスバッファからのパケット送信の可否を指定するためのフラグ（Ｂｍ）を生成する。このフラグ（Ｂｍ）は、タイムスロット内にＢクラスバッファからのパケット送信を禁止する場合には“０”を示し、パケット送信を許可する場合には“１”を示す。このフラグ（Ｂｍ）は、帯域管理部３０で参照され用いられる。
【００２８】
また、タイマ部４０は、帯域管理部３０が参照するクラス（Ａ、Ｂ）を指定するためのフラグ（Ｐｆ）を定期的にリセットする。フラグ（Ｐｆ）は、Ｐｆ＝０の場合にＡクラスを帯域管理部３０が参照し、Ｐｆ＝１の場合にＢクラスを帯域管理部３０が参照する。フラグ（Ｐｆ）は、当該タイムスロットにスケジューリングされている未送信パケットが存在せず（Ｒｃ＝０）、かつ直近タイムスロットにおいてタイムスロットにスケジューリングされたパケットを１タイムスロット時間内に全て送信完了し（Ｔｏ＝Ｔｋ）、かつＢクラスバッファからのパケット送信が許可（Ｂｍ＝１）されている場合に“１”がセットされ、又、帯域管理部３０により定期的に“０”にリセットされる。
【００２９】
トラフィッククラシファイ部２０は、制御セル中の優先クラスに従って、制御セルをＡクラススケジューラとＢクラスバッファへクラシファイする。また、クラス優先度の変更を許されたトラフィックについては、帯域管理部からの使用帯域に応じて優先クラスが変更される場合がある。
【００３０】
Ａクラススケジューラ５０は、トラフィッククラシファイ部２０からの要求で制御セルを、チャネル毎に設定される最大保証帯域速度（ＰＲ）と受信パケット長ＰＬから、スケジューリングされるべきタイムスロット（ＴＳ）をＴＳ＝ＴＳ＋ＰＬ／ＰＲにより算出し帯域予約（該当タイムスロットへスケジューラ書き込み）する。また、この時、タイムスロット毎に管理されるパケット数（Ｒｃ）を、インクリメントする。スケジューラ書き込み時に参照するタイムスロットは、タイマ部の受信側のカウンタであるＴｉである。
【００３１】
また、帯域管理部３０からの要求により、スケジューラからの読み出しを行う時には、パケット数（Ｒｃ）をデクリメントする。スケジューラ読み出し時に参照するタイムスロットは、帯域管理部のＴｋである。ここでは、１タイムスロットに対し異チャネルの複数パケットが同一タイムスロットに集中して、送信インタフェースの帯域を超えてスケジューリングされる場合がある。
【００３２】
Ｂクラスバッファ６０は、チャネル毎にバッファリングされる。トラフィッククラシファイ部２０からのバッファ書き込み時には、バッファ長（Ｑｃ）をインクリメントする。帯域管理部３０からのバッファ読み出し時には、バッファ長（Ｑｃ）をデクリメントする。Ｂクラスバッファ内では、更に相対的なクラスに細分化してバッファ管理する場合がある。
【００３３】
帯域管理部３０は、Ａクラススケジューラ５０もしくはＢクラスバッファ６０から得られる受信パケット長ＰＬに基づいて、タイムスロット内の使用帯域のＡクラス使用帯域（ＡＲ）、Ｂクラス使用帯域（ＢＲ）の更新を行う。また、送信インタフェース物理速度（ＷＲ）から未使用帯域ＷＲ−ＡＲ−ＢＲの更新をする。
【００３４】
また、帯域管理部３０は、Ａクラススケジューラの読み出しタイムスロットを示すカウンタであるＴｋを生成する。Ｔｋが更新されるのは、Ｐｆ＝０かつＲｃ＝０かつＴｏ≠Ｔｋの時である。
【００３５】
“Ｂｍ＝０”の時には、帯域管理部３０は、Ａクラスの該当タイムスロットにスケジューリングされた制御セルを読み出し、パケット送信部８０へ送信する。送信時に該当タイムスロットのＲｃはデクリメントし、Ａクラスからの送信毎にパケット長に応じたタイムスロット内使用帯域（ＡＲ）を更新するＢｍ＝０である区間は、Ｒｃ＝０となってもＢクラスの制御セル読み出しは行わない。
【００３６】
“Ｂｍ＝１”の時には、帯域管理部３０は、Ａクラスから制御セルを読み出し、パケット送信部８０へ送信する。ここで、“Ｒｃ＝０”、かつ“未使用帯域＞受信パケット長ＰＬ”の時、Ｂクラスバッファから制御セルを読み出し、パケット送信部８０へ送信する。パケット送信部８０は、帯域管理部３０より転送されたパケットを受信すると、パケットへのポインタを抽出し、そのポインタに従ってパケット用バッファ７０からパケットを読出し、パケット出力回線Ｌ２へ送出する。
【００３７】
次に、本実施の形態の通信装置の動作を説明する。
【００３８】
図２は、本実施の形態のタイマ部４０の処理を説明するためのフローチャートである。ここで、ｔ：ｍビットカウンタ（クロック）、Ｔｉ、Ｔｏ：ｎビットカウンタ、ｓ、α定数（但しｓ＞α）であり、本実施の形態のタイマ部４０は、図２に従い動作する。なお、フローチャート中に示される変数（クロックやカウンタ）の右に示される“＋＋”の記号は、その変数の値を１加算する旨を示すものである。
【００３９】
Ｔｉ及びＴｏは、ｔをｓ分周して生成される（つまり、カウンタｔのｓ倍の周期を備える）。Ｔｉはカウンタｔが“ｓ−α”の時点で更新し、Ｔｏはカウンタｔが“ｓ”の時点で更新するので、ＴｉとＴｏカウンタはαクロック分のオフセットがある。
【００４０】
また、Ｔｏの更新時点であるｔ＝ｓの時には、Ｂｍ、Ｐｆを“０”にリセットする。Ｔｉの更新時点であるｔ＝ｓ−αの時には、Ｂｍに“１”をセットする。
【００４１】
図４は、本実施の形態のパケットがタイムスロットに分散してスケジューリングされた場合の実施例の動作を説明するためのタイムチャートであり、図５は、この実施例における各クラスの使用帯域を示すグラフである。
【００４２】
図６は、本実施の形態のパケットが同一タイムスロットに集中してスケジューリングされて送信インタフェースの帯域を超えた場合の実施例の動作を説明するためのタイムチャートであり、図７は、この実施例における各クラスの使用帯域を示すグラフである。
【００４３】
本実施の形態の通信装置１００では、パケット受信部１０は、パケット入力回線Ｌ１よりパケットを受信し、受信したパケットから抽出されるチャネル番号、パケット優先クラス、パケット長と、パケット用バッファへのポインタから装置内の制御セルを生成し、パケット受信部１０からトラフィッククラシファイ部２０へ転送する。
【００４４】
トラフィッククラシファイ部２０では、制御セル中の優先クラスに従って、制御セルをＡクラスとＢクラスにクラシファイする。Ａクラスへクラシファイされた制御セルは、Ａクラススケジューラ５０により、チャネル毎に設定される最大保証帯域速度（ＰＲ）と受信パケット長ＰＬから、スケジューリングされるべきタイムスロット（ＴＳ）をＴＳ＝ＴＳ＋ＰＬ／ＰＲにより算出し帯域予約（該当ＴＳへスケジューラ書き込み）する。また、この時、ＴＳ毎に管理されるパケット数（Ｒｃ）をインクリメントする。スケジューラ書き込み時に参照するＴＳはタイマ部のＴｉである。Ｂクラスへクラシファイされた制御セルは、Ｂクラスバッファ６０へチャネル毎に書き込まれる。
【００４５】
図３は、本実施の形態の帯域管理部３０の処理を説明するためのフローチャートであり、図３に従って送信すべき優先クラスの選択と使用帯域管理を行う。
【００４６】
帯域管理部３０は、まずフラグＰｆを参照し、“Ｐｆ＝０”ならばＡクラスを参照する。帯域管理部３０は、カウンタＴｋの示す該当タイムスロットにスケジューリングされているパケットが存在する場合、すなわち“Ｒｃ≠０”ならば、先頭にスケジューリングされているパケットを読み出し、Ｒｃをデクリメントし、使用帯域ＡＲをパケット長分の加算する。なお、フローチャート中に示される変数の右に示される“−−”の記号は、その変数の値を１減算する旨を示すものである。
【００４７】
また、“Ｒｃ＝０”の場合には、ＴｏとＴｋの値の関係を判定し、もし“Ｔｏ＞Ｔｋ”の場合にには（これは、近傍タイムスロットにおいて、タイムスロットにスケジューリングされたパケットを１タイムスロット時間内に全て送信完了できなかった場合を示している）Ｔｋを１加算し、ＢＲとＡＲを“０”にリセットする。
【００４８】
“Ｔｏ＝Ｔｋ”の場合には（これは、直近タイムスロットにおいて、タイムスロットにスケジューリングされたパケットを１タイムスロット時間内に全て送信完了した場合を示している）Ｂｍの値を参照する。
【００４９】
Ｂｍの参照において、“Ｂｍ＝０”ならば、Ｂクラス禁止なので、Ｂクラスのパケット読み出しはしない。“Ｂｍ＝１”ならば、Ｐｆ＝１とセットして、Ｂクラスのバッファ長Ｑｃとパケット長ＰＬを参照する。
【００５０】
“Ｑｃ≠０”かつ“ＷＲ−ＡＲ−ＢＲ＞ＰＬ”ならば、バッファ長Ｑｃをデクリメント、使用帯域ＢＲをパケット長分の加算する。このように帯域管理部より読み出されたパケットは、パケット送信部８０へ転送される。パケット送信部では、パケットよりパケットへのポインタを抽出し、そのポインタに従ってパケット用バッファ７０からパケットを読出しパケット出力回線Ｌ２へ送出する。
【００５１】
なお、本実施の形態の通信装置１００は、帯域管理部３０、タイマ部４０等の機能や、その他の機能をハードウェア的に実現することは勿論として、各機能を備えるコンピュータプログラムである優先制御プログラムを、コンピュータ処理装置のメモリにロードされることで実現することができる。この優先制御プログラムは、磁気ディスク、半導体メモリその他の記録媒体９０に格納される。そして、その記録媒体９０からコンピュータ処理装置にロードされ、コンピュータ処理装置の動作を制御することにより、上述した各機能を実現する。
【００５２】
以上好ましい実施の形態及び実施例をあげて本発明を説明したが、本発明は必ずしも上記実施の形態及び実施例に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。
【００５３】
【発明の効果】
以上説明したように本発明によれば、受信側のスケジューラが参照するタイムスロット（Ｔｉ）よりも遅延されたタイムスロット（Ｔｏ）に基づいて送信するパケットを選択することにより、スケジューラによる最大保証帯域速度のトラフィックを保証するクラスと、それよりも低優先で未使用帯域に応じてベストエフォートに送信されるクラスとの効率の良い優先制御の実現と、従来の装置よりも帯域予約（スケジューリング）における論理の簡素化を実現することができる。
【図面の簡単な説明】
【図１】  本発明の一実施の形態による通信装置の一実施例の構成を示すブロック図である。
【図２】  本発明の一実施の形態のタイマ部の処理を説明するためのフローチャートである。
【図３】  本発明の一実施の形態の帯域管理部の処理を説明するためのフローチャートである。
【図４】  本発明の一実施の形態のパケットがタイムスロットに分散してスケジューリングされた場合の実施例の動作を説明するためのタイムチャートである。
【図５】  本発明の一実施の形態のパケットがタイムスロットに分散してスケジューリングされた場合の実施例の各クラスの使用帯域を示すグラフである。
【図６】  本発明の一実施の形態のパケットが同一タイムスロットに集中してスケジューリングされて送信インタフェースの帯域を超えた場合の実施例の動作を説明するためのタイムチャートである。
【図７】  本発明の一実施の形態のパケットが同一タイムスロットに集中してスケジューリングされて送信インタフェースの帯域を超えた場合の実施例の各クラスの使用帯域を示すグラフである。
【符号の説明】
１００  通信装置
１０  パケット受信部
２０  トラフィッククラシファイ部
３０  帯域管理部
４０  タイマ部
５０  クラススケジューラ
６０  クラスバッファ
７０  パケット用バッファ
８０  パケット送信部
９０  記録媒体
【図１】
0003785635.tif 000002
【図２】
0003785635.tif 000003
【図３】
0003785635.tif 000004
【図４】
0003785635.tif 000005
【図５】
0003785635.tif 000006
【図６】
0003785635.tif 000007
【図７】
0003785635.tif 000008