(57)【特許請求の範囲】
【請求項１】
同一の仮想パスに束ねて出力するそれぞれの仮想チャネルごとに設けられ、入力された所定のデータ列からなるセルを格納するキューと、これら対応するキューに格納されたセルをそれぞれ独自に定めた出力レートの範囲内にシェーピングするシェーピング手段と、シェーピング後のセルの前記キューからの出力要求をセルの出力に際しての優先度を表わした優先度情報と共に出力する出力要求手段とをそれぞれ備えた複数のシェーパと、
これら複数のシェーパの前記出力要求手段の出力要求を入力し、高優先のセルの出力要求が存在するかどうかを判別する高優先セル出力要求有無判別手段と、
この高優先セル出力要求有無判別手段が高優先のセルの出力の要求があると判別したときで送出先の装置との間で所定の違反が生じないとされた場合には直ちに、その違反が生じるとされた場合には契約帯域によって定められるシェーピングレートの逆数で求まるセルの送出間隔でこれを対応する前記キューから出力する高優先セル出力手段と、
前記高優先セル出力要求有無判別手段が高優先のセルの出力の要求がないと判別したとき低優先のセルの出力の要求があるかどうかを判別する低優先セル出力要求有無判別手段と、
この低優先セル出力要求有無判別手段が低優先のセルの出力の要求があると判別した場合に、前記仮想パスにおけるセル遅延変化量を送出するセルの間隔が詰まる方向に計算するセル遅延変化量計算手段と、
このセル遅延変化量計算手段の計算値が“０”で遅延が発生していないとされた場合、あるいはそうでない場合には前記計算値が“０”になるのを待って、そのセルの出力が可能であるかどうかを判別する低優先セル出力可否判別手段と、
この低優先セル出力可否判別手段が出力可と判別したときに該当する低優先のセルを対応する前記キューから出力する低優先セル出力手段
とを具備することを特徴とするセル送出制御装置。
【請求項２】
同一の仮想パスに束ねて出力するそれぞれの仮想チャネルごとに設けられ、入力された所定のデータ列からなるセルを格納するキューと、これら対応するキューに格納されたセルをそれぞれ独自に定めた出力レートの範囲内にシェーピングするシェーピング手段と、シェーピング後のセルの前記キューからの出力要求をセルの出力に際しての優先度を表わした優先度情報と共に出力する出力要求手段とをそれぞれ備えた複数のシェーパと、
これら複数のシェーパの前記出力要求手段の出力要求を入力し、高優先のセルの出力要求が存在するかどうかを判別する高優先セル出力要求有無判別手段と、
この高優先セル出力要求有無判別手段が高優先のセルの出力の要求があると判別した場合に、その要求が２以上のシェーパからのものであるか否かを判別する複数要求有無判別手段と、
この複数要求有無判別手段が２以上のシェーパから要求があると判別したとき最優先のシェーパを選択する選択手段と、
前記選択手段が選択した最優先のシェーパのセルあるいは複数要求有無判別手段が単独の要求であると判別したときのシェーパのセルを、送出先の装置との間で所定の違反が生じないとされた場合には直ちに、その違反が生じるとされる場合には契約帯域によって定められるシェーピングレートの逆数で求まるセルの送出間隔で対応する前記キューから出力する高優先セル出力手段と、
前記高優先セル出力要求有無判別手段が高優先のセルの出力の要求がないと判別したとき低優先のセルの出力の要求があるかどうかを判別する低優先セル出力要求有無判別手段と、
この低優先セル出力要求有無判別手段が低優先のセルの出力の要求があると判別した場合に、前記仮想パスにおけるセル遅延変化量を送出するセルの間隔が詰まる方向に計算するセル遅延変化量計算手段と、
このセル遅延変化量計算手段の計算値が“０”で遅延が発生していないとされた場合、あるいはそうでない場合には前記計算値が“０”になるのを待って、そのセルの出力が可能であるかどうかを判別する低優先セル出力可否判別手段と、
この低優先セル出力可否判別手段が出力可と判別したときに該当する低優先のセルを対応する前記キューから出力する低優先セル出力手段
とを具備することを特徴とするセル送出制御装置。
【請求項３】
同一の仮想パスに束ねて出力するそれぞれの仮想チャネルごとに設けられ、入力された所定のデータ列からなるセルを格納するキューと、これら対応するキューに格納されたセルをそれぞれ独自に定めた出力レートの範囲内にシェーピングするシェーピング手段と、シェーピング後のセルの前記キューからの出力要求をセルの出力に際しての優先度を表わした優先度情報と共に出力する出力要求手段とをそれぞれ備えた複数のシェーパと、
これら複数のシェーパの前記出力要求手段の出力要求を入力し、高優先のセルの出力要求が存在するかどうかを判別する高優先セル出力要求有無判別手段と、
この高優先セル出力要求有無判別手段が高優先のセルの出力の要求があると判別した場合に、その要求が２以上のシェーパからのものであるか否かを判別する複数要求有無判別手段と、
この複数要求有無判別手段が２以上のシェーパから要求があると判別したときにはこれらのセルをラウンドロビン方式で順に処理するようにして１つのセルを選択し、複数要求有無判別手段が単独の要求であると判別したときにはそのセルを選択して、送出先の装置との間で所定の違反が生じないとされた場合には直ちに、その違反が生じるとされる場合には契約帯域によって定められるシェーピングレートの逆数で求まるセルの送出間隔で対応する前記キューから出力する高優先セル出力手段と、
前記高優先セル出力要求有無判別手段が高優先のセルの出力の要求がないと判別したとき低優先のセルの出力の要求があるかどうかを判別する低優先セル出力要求有無判別手段と、
この低優先セル出力要求有無判別手段が低優先のセルの出力の要求があると判別した場合に、前記仮想パスにおけるセル遅延変化量を送出するセルの間隔が詰まる方向に計算するセル遅延変化量計算手段と、
このセル遅延変化量計算手段の計算値が“０”で遅延が発生していないとされた場合、あるいはそうでない場合には前記計算値が“０”になるのを待って、そのセルの出力が可能であるかどうかを判別する低優先セル出力可否判別手段と、
この低優先セル出力可否判別手段が出力可と判別したときに該当する低優先のセルを対応する前記キューから出力する低優先セル出力手段
とを具備することを特徴とするセル送出制御装置。
【請求項４】
それぞれのシェーパのサステイナブル・セル・レートＳＣＲの総和が各キューから出力されるセルに対する前記送出先の装置との間で取り決められたピーク・セル・レートＰＣＲを越えるものでないことを条件として、それぞれのシェーパのピーク・セル・レートＰＣＲの総和が前記送出先の装置との間で取り決められたピーク・セル・レートＰＣＲを越えるような値に設定されていることを特徴とする請求項１〜請求項３いずれかに記載のセル送出制御装置。
【請求項５】
前記セルはＡＴＭセルであることを特徴とする請求項１〜請求項３いずれかに記載のセル送出制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はローカルエリアネットワークから外部にＡＴＭセル等のセルの送出を行う場合に使用するセル送出制御装置に関する。
【０００２】
【従来の技術】
ＷＷＷ（ｗｏｒｌｄ  ｗｉｄｅ  ｗｅｂ）に代表される通信ネットワークが急速に普及しており、テキスト情報や静止画情報だけでなく音声や映像等の各種の情報が企業や家庭内に留まらず、ネットワークを通じて各所に送られて利用されるようになっている。このうち、音声や映像に関する情報は時間軸に同期して再生される必要があり、テキスト情報や静止画情報と比較するとリアルタイムに伝送する必要がある。
【０００３】
一例として家庭内の１台のコンピュータがモデム（変復調装置）を介してインターネットに接続され、そのコンピュータから情報が外部に送信される場合を考える。このような場合には、伝送路に接続されたコンピュータが１台だけなので、リアルタイム（実時間）性の高い情報と低い情報が送信に際して競合するといった問題は発生しにくい。
【０００４】
一方、たとえば大学内や事業所内でＬＡＮ（ローカルエリアネットワーク）を組み、内部で複数台のコンピュータが通信を行っている環境を考えてみる。このようなコンピュータの一部は実時間性の高い情報を扱い、これらを外部の通信ネットワークに送出している。また、ＬＡＮを構成する残りのコンピュータの一部は実時間性の低い情報を扱っており同様にこれらを外部の通信ネットワークに送出しているとする。ＬＡＮから外部の通信ネットワークへ接続する回線の容量が十分余裕をもったものであれば、実時間性の高い情報も低い情報も、何のストレスも発生させることなく専用線等の回線を通して外部の通信ネットワークに送出される。
【０００５】
しかしながら、現実にはＬＡＮを構成するコンピュータの増加やそれぞれのコンピュータの処理速度の向上に伴う処理対象のデータの増大および画像の解像度等の向上に伴うデータ量の増大等の要因が重なり、回線に十分な余裕度を持たせて通信を行うことは困難な場合が多い。そこで、たとえばＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ：非同期転送モード）通信の分野ではＶＰシェーピングという技術が採用されている。ＶＰシェーピングとは、ＶＣ（ｖｉｒｔｕａｌ  ｃｈａｎｎｅｌ：仮想チャネル）を束ねたＶＰ（ｖｉｒｔｕａｌ  ｐａｔｈ：仮想パス）を単位として、契約を行っているＡＴＭ網の通信レートやトラヒックパラメータを守るように、セル転送についてスケジューリングを行う機能をいう。
【０００６】
ここでＶＣ（ｖｉｒｔｕａｌ  ｃｈａｎｎｅｌ：仮想チャネル）は、ＡＴＭ網でルーティング処理される最低単位の論理コネクションをいう。また、仮想チャネルＶＣを束ねたものがＶＰ（ｖｉｒｔｕａｌ  ｐａｔｈ：仮想パス）である。ＡＴＭでは回線交換とは異なり、全セルが共通の通信リソースを使用しており、仮想パスＶＰと仮想チャネルＶＣには特定の物理的なリソースが割り付けられていない。このため、「仮想」という言葉が使われている。
【０００７】
たとえばＡＴＭのＬＡＮから外部の専用線へ接続するものとし、専用線に送出するデータが契約帯域を越える可能性があるとする。このような場合には、契約帯域に沿った出力レートの範囲内に出力されるデータの総量を抑制する必要がある。
【０００８】
そこで、たとえば特開平１１−２７５１１２号公報では、入力されたセルを、要求品質に応じてキューイングする複数のクラス別キューを設け、入力されたセルを複数のクラス別キューのいずれかに振り分けて、クラスごとのトラヒック量と制御遅延量に応じてセル遅延を制御することが提案されている。これにより、高優先のクラスのセルを優先して出力することができるものの低優先のクラスのセルの出力を十分確保することができない。
【０００９】
また特開２０００−０１３３９７号公報では、優先クラス、シェーピングクラスおよび非優先クラスにセルを分類している。そして優先クラスのセルについてはそのまま出力し、シェーピングクラスについてはシェーピングを行って出力し、非優先クラスについては帯域の空きを利用してセルを出力している。この提案でも低優先のクラスのセルの出力を十分確保することができない。
【００１０】
ところで、複数の仮想チャネルＶＣを外部と接続したい場合には、（１）それぞれの仮想チャネルＶＣごとに専用線の契約を行う場合もあり、（２）複数の仮想チャネルＶＣをまとめて１本の仮想パスＶＰとして、専用線の契約を行う場合もある。経済的には、後者の１本の仮想パスＶＰを設定する方が優れている。ところが後者の手法を採ると、仮想パスＶＰをデータの総量抑制のためのトラフィックシェーピングの対象とすることになる。したがって、仮想チャネルＶＣの中に、高優先のクラスと低優先のクラスが混在しているような場合で低優先のセルの出力についても配慮しようとすると、高優先のセルについてＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）と呼ばれる品質管理が問題となる。これを次に説明する。
【００１１】
実時間性を有しない低優先のクラスのセルがセルを専用線に送出する装置にバースト的に到着した場合を考える。このような状態が発生すると、装置は一時的に輻輳状態になり、実時間性を有する高優先のセルの遅延や、揺らぎ、損失が発生し、高優先のセルの伝送品質が劣化してしまう。
【００１２】
そこで、高優先のセルの伝送品質の特性劣化を避けるために、各々の仮想チャネルＶＣごとに帯域を設定してトラフィックシェーピングを行い、この後に仮想パスＶＰとしてシェーピングを行う２段階のシェーピング手法が提案されている（特表平１１−５１４１７６号、特表２０００−５００９４９号等）。この提案では、各々の仮想チャネルＶＣをシェーピングするレートあるいは帯域が問題となる。
【００１３】
図７は、２段階のシェーピングについての手法を示したものである。高優先のセルの仮想チャネルＶＣ１は第１の第１段シェーパ１０１の入力側に接続され、低優先のセルの仮想チャネルＶＣ２は第２の第１段シェーパ１０２の入力側に接続されている。第１の第１段シェーパ１０１におけるセルの最大速度としてのＰＣＲ（Ｐｅａｋ  Ｃｅｌｌ  Ｒａｔｅ）をＰＣＲ１とし、第２の第１段シェーパ１０２のそれをＰＣＲ２とする。また、第１の第１段シェーパ１０１におけるセルの平均速度としてのＳＣＲ（Ｓｕｓｔａｉｎａｂｌｅ  Ｃｅｌｌ  Ｒａｔｅ）をＳＣＲ１とし、第２の第１段シェーパ１０２のそれをＳＣＲ２とする。
【００１４】
ここでは仮想チャネルＶＣ１が高優先であるため、帯域は仮想チャネルＶＣ１に優先的に割り当てられ、残りの帯域に仮想チャネルＶＣ２が割り当てられる。そこで、第１の第１段シェーパ１０１のＰＣＲ１とＳＣＲ１がまず決定され、次に第２の第１段シェーパ１０２のＰＣＲ２とＳＣＲ２が決定される。これら第１および第２の第１段シェーパ１０１、１０２でシェーピングされた仮想チャネルＶＣ１、ＶＣ２は第２段シェーパ１０３に入力されて仮想パスＶＰでのシェーピングが行われる。第２段シェーパ１０３におけるセルの最大速度としてのＰＣＲをＰＣＲ３とする。
【００１５】
【発明が解決しようとする課題】
図８は、この従来の提案における仮想チャネルＶＣの設定とその問題を説明するためのものである。この図で縦軸は専用線に出力されるセルの出力レートを示しており、横軸は時間の経過を示している。第１の第１段シェーパ１０１のＰＣＲ１を最優先に割り当てるとすると、第２段シェーパ１０３のＰＣＲ３から第１の第１段シェーパ１０１のＰＣＲ１を差し引いた残りの帯域１１１が第２の第１段シェーパ１０２のＰＣＲ２に割り当てられることになる。これにより、高優先の仮想チャネルＶＣ１については完全に保証される。しかしながら、仮想チャネルＶＣ１のセルレートがＰＣＲ１未満の場合は、この仮想チャネルＶＣ１に割り当てられた帯域が少なくとも一部分空いているにも関わらず、その空いている領域を仮想チャネルＶＣ２に割り当てることができない。
【００１６】
これを図８で説明する。この図で帯域１１２はある時点の仮想チャネルＶＣ１に割り当てられた分であるとする。この例に示した値は第１の第１段シェーパ１０１のＰＣＲ１よりもかなり低い。このときの仮想チャネルＶＣ２の帯域１１３を図示のような分であるとする。この例の場合には、２つの帯域を加算した帯域１１５は第２段シェーパ１０３のＰＣＲ３に納まっている。すなわち、両仮想チャネルＶＣ１、ＶＣ２にこれを使用することができる。ところが、仮想チャネルＶＣ１にＰＣＲ１を画一的に割り振ってしまうと、ＰＣＲ３からＰＣＲ１を差し引いた帯域１１１が帯域１１３よりも狭い場合には仮想チャネルＶＣ２にこれを完全に割り当てることができない。したがって、セルを専用線に送出する装置としてのパフォーマンスが低下することなる。
【００１７】
一方、図９は実際の両仮想チャネルＶＣ１、ＶＣ２をシェーピングを行うことなく割り当てた場合の不都合を説明するためのものである。図８に示したように第１の仮想チャネルＶＣ１の帯域が比較的狭い場合には第２の仮想チャネルＶＣ２の実際の帯域１１６を加えた全帯域は、第２段シェーパ１０３のＰＣＲ３を越えないことが考えられる。しかしながら、たとえば図９に示したように第１の仮想チャネルＶＣ１の帯域１１７が第１の第１段シェーパ１０１のＰＣＲ１に等しくなると、全体の帯域１１８が第２段シェーパ１０３のＰＣＲ３に相当する帯域を越えてしまい、超過帯域１１９が生じてしまう可能性がある。このような場合にはこの超過帯域１１９の分だけ、両仮想チャネルＶＣ１、ＶＣ２の帯域が削られることになる。
【００１８】
この結果として、高優先で扱われるべき第１の仮想チャネルＶＣ１のセルについても遅延や、揺らぎあるいは損失が発生し、第１の仮想チャネルＶＣ１のセルの品質に影響を生じさせるという問題がある。
【００１９】
そこで本発明の目的は、伝送路の輻輳時には低優先のセルの出力を制限しつつ、帯域に余裕がある場合には空き帯域を低優先セルが有効に利用することのできるセル送出制御装置を提供することにある。
【００２０】
【課題を解決するための手段】
請求項１記載の発明では、（イ）同一の仮想パスに束ねて出力するそれぞれの仮想チャネルごとに設けられ、入力された所定のデータ列からなるセルを格納するキューと、これら対応するキューに格納されたセルをそれぞれ独自に定めた出力レートの範囲内にシェーピングするシェーピング手段と、シェーピング後のセルのキューからの出力要求をセルの出力に際しての優先度を表わした優先度情報と共に出力する出力要求手段とをそれぞれ備えた複数のシェーパと、（ロ）これら複数のシェーパの出力要求手段の出力要求を入力し、高優先のセルの出力要求が存在するかどうかを判別する高優先セル出力要求有無判別手段と、（ハ）この高優先セル出力要求有無判別手段が高優先のセルの出力の要求があると判別したときで送出先の装置との間で所定の違反が生じないとされた場合には直ちに、その違反が生じるとされた場合には契約帯域によって定められるシェーピングレートの逆数で求まるセルの送出間隔でこれを対応するキューから出力する高優先セル出力手段と、（ニ）高優先セル出力要求有無判別手段が高優先のセルの出力の要求がないと判別したとき低優先のセルの出力の要求があるかどうかを判別する低優先セル出力要求有無判別手段と、（ホ）この低優先セル出力要求有無判別手段が低優先のセルの出力の要求があると判別した場合に、仮想パスにおけるセル遅延変化量を送出するセルの間隔が詰まる方向に計算するセル遅延変化量計算手段と、（へ）このセル遅延変化量計算手段の計算値が“０”で遅延が発生していないとされた場合、あるいはそうでない場合には計算値が“０”になるのを待って、そのセルの出力が可能であるかどうかを判別する低優先セル出力可否判別手段と、（ト）この低優先セル出力可否判別手段が出力可と判別したときに該当する低優先のセルを対応するキューから出力する低優先セル出力手段とをセル送出制御装置に具備させる。
【００２１】
すなわち請求項１記載の発明では、第１段のシェーパと第２段のシェーパの２段のシェーパでセル送出制御装置を構成している。このうちの第１段のシェーパはそれぞれの仮想チャネルごとに設けられた複数のシェーパであり、対応するセルを格納するキューと、キューに格納されたセルをそれぞれ独自に定めた出力レートの範囲内にシェーピングするシェーピング手段と、シェーピング後のセルのキューからの出力要求をセルの出力に際しての優先度を表わした優先度情報と共に出力する出力要求手段を備えている。第２段のシェーパは、高優先セル出力要求有無判別手段と、高優先セル出力手段と、低優先セル出力要求有無判別手段と、低優先セル出力可否判別手段と、低優先セル出力手段から構成されている。そして、第２段のシェーパはそれぞれの仮想チャネルごとに設けられた第１段のシェーパからシェーピング後のセルについて出力の要求があったときに、高優先のセルの出力の要求があるかどうかを高優先セル出力要求有無判別手段で判別し、この要求があると判別したときで送出先の装置との間で所定の違反が生じないとされた場合は直ちに、その違反が生じるとされた場合には予め取り決められたセルの送出間隔でこれを対応するキューから出力するようにする。高優先のセルの出力の要求がなく低優先のセルの出力の要求がある場合には、契約帯域によって定められるシェーピングレートの逆数で求まるセルの送出間隔で定められるタイミングでそのセルの出力が可能であるかどうかを判別して、可能である場合には該当する低優先のセルを対応するキューから出力するようにしている。これにより、高優先のセルの出力が要求された場合には送出先の装置との関係で違反とされない限り、直ちにセルの送出が可能となるので実時間性に優れた処理が可能になる。また、高優先のセルの出力要求が存在せず帯域に空きが生じている場合には、セル遅延変化量計算手段で仮想パスにおけるセル遅延変化量を送出するセルの間隔が詰まる方向に計算し、この計算値が“０”で遅延が発生していないとされた場合、あるいはそうでない場合には計算値が“０”になるのを待って、そのセルの出力が可能であるかどうかを判別し、出力可と判別したときに該当する低優先のセルを対応するキューから出力するようにしている。ここで所定の違反とは送出先の装置が不利な取り扱いを課すような違反であり、このようなものとしてはセルの廃棄、遅延、特別な課金、優先度を下げること等が存在する。ただし、これらのうちのいずれを違反として送出側が高優先のセルをセルの送出間隔を待たずに送出するかはシステムによって自由に定めることができる。
【００２２】
請求項２記載の発明では、（イ）同一の仮想パスに束ねて出力するそれぞれの仮想チャネルごとに設けられ、入力された所定のデータ列からなるセルを格納するキューと、これら対応するキューに格納されたセルをそれぞれ独自に定めた出力レートの範囲内にシェーピングするシェーピング手段と、シェーピング後のセルのキューからの出力要求をセルの出力に際しての優先度を表わした優先度情報と共に出力する出力要求手段とをそれぞれ備えた複数のシェーパと、（ロ）これら複数のシェーパの出力要求手段の出力要求を入力し、高優先のセルの出力要求が存在するかどうかを判別する高優先セル出力要求有無判別手段と、（ハ）この高優先セル出力要求有無判別手段が高優先のセルの出力の要求があると判別した場合に、その要求が２以上のシェーパからのものであるか否かを判別する複数要求有無判別手段と、（ニ）この複数要求有無判別手段が２以上のシェーパから要求があると判別したとき最優先のシェーパを選択する選択手段と、（ホ）選択手段が選択した最優先のシェーパのセルあるいは複数要求有無判別手段が単独の要求であると判別したときのシェーパのセルを、送出先の装置との間で所定の違反が生じないとされた場合には直ちに、その違反が生じるとされる場合には契約帯域によって定められるシェーピングレートの逆数で求まるセルの送出間隔で対応するキューから出力する高優先セル出力手段と、（へ）高優先セル出力要求有無判別手段が高優先のセルの出力の要求がないと判別したとき低優先のセルの出力の要求があるかどうかを判別する低優先セル出力要求有無判別手段と、（ト）この低優先セル出力要求有無判別手段が低優先のセルの出力の要求があると判別した場合に、仮想パスにおけるセル遅延変化量を送出するセルの間隔が詰まる方向に計算するセル遅延変化量計算手段と、（チ）このセル遅延変化量計算手段の計算値が“０”で遅延が発生していないとされた場合、あるいはそうでない場合には計算値が“０”になるのを待って、そのセルの出力が可能であるかどうかを判別する低優先セル出力可否判別手段と、（リ）この低優先セル出力可否判別手段が出力可と判別したときに該当する低優先のセルを対応するキューから出力する低優先セル出力手段とをセル送出制御装置に具備させる。
【００２３】
すなわち請求項２記載の発明では、第１段のシェーパと第２段のシェーパの２段のシェーパでセル送出制御装置を構成している。このうちの第１段のシェーパはそれぞれの仮想チャネルごとに設けられた複数のシェーパであり、対応するセルを格納するキューと、キューに格納されたセルをそれぞれ独自に定めた出力レートの範囲内にシェーピングするシェーピング手段と、シェーピング後のセルのキューからの出力要求をセルの出力に際しての優先度を表わした優先度情報と共に出力する出力要求手段を備えている。第２段のシェーパは、高優先セル出力要求有無判別手段と、複数要求有無判別手段と、選択手段と、高優先セル出力手段と、低優先セル出力要求有無判別手段と、低優先セル出力可否判別手段と、低優先セル出力手段から構成されている。そして、第２段のシェーパはそれぞれの仮想チャネルごとに設けられた第１段のシェーパからシェーピング後のセルについて出力の要求があったときに、高優先のセルの出力の要求があるかどうかを高優先セル出力要求有無判別手段で判別し、この要求がある場合には複数要求有無判別手段によって要求が２以上のシェーパからのものであるか否かを判別するようにしている。そして２以上のシェーパから要求があると判別したときには選択手段で最優先のシェーパを選択するようにしている。選択したセルについては、送出先の装置との間で所定の違反が生じないとされた場合には直ちに、その違反が生じるとされる場合には予め取り決められたセルの送出間隔でこれを対応するキューから出力するようにする。高優先のセルの出力の要求がなく低優先のセルの出力の要求がある場合には、契約帯域によって定められるシェーピングレートの逆数で求まるセルの送出間隔で定められるタイミングでそのセルの出力が可能であるかどうかを判別して、可能である場合には該当する低優先のセルを対応するキューから出力するようにしている。これにより、高優先のセルの出力が要求された場合で高優先のセル同士で競合が発生した場合に、実時間性のより高いものにより高い優先度を与えておくことで、送出先の装置との関係で違反とされない限り、直ちにセルの送出が可能となるので実時間性に優れた処理が可能になる。もちろん、他の高優先のセルもこれ以外の低優先のセルに優先して、また送出タイミングに同様の特典を持たせた状態で出力処理が可能になる。更に、高優先のセルの出力要求が存在せず帯域に空きが生じている場合には、セル遅延変化量計算手段で仮想パスにおけるセル遅延変化量を送出するセルの間隔が詰まる方向に計算し、この計算値が“０”で遅延が発生していないとされた場合、あるいはそうでない場合には計算値が“０”になるのを待って、そのセルの出力が可能であるかどうかを判別し、出力可と判別したときに該当する低優先のセルを対応するキューから出力するようにしている。
【００２４】
請求項３記載の発明では、（イ）同一の仮想パスに束ねて出力するそれぞれの仮想チャネルごとに設けられ、入力された所定のデータ列からなるセルを格納するキューと、これら対応するキューに格納されたセルをそれぞれ独自に定めた出力レートの範囲内にシェーピングするシェーピング手段と、シェーピング後のセルのキューからの出力要求をセルの出力に際しての優先度を表わした優先度情報と共に出力する出力要求手段とをそれぞれ備えた複数のシェーパと、（ロ）これら複数のシェーパの出力要求手段の出力要求を入力し、高優先のセルの出力要求が存在するかどうかを判別する高優先セル出力要求有無判別手段と、（ハ）この高優先セル出力要求有無判別手段が高優先のセルの出力の要求があると判別した場合に、その要求が２以上のシェーパからのものであるか否かを判別する複数要求有無判別手段と、（ニ）この複数要求有無判別手段が２以上のシェーパから要求があると判別したときにはこれらのセルをラウンドロビン方式で順に処理するようにして１つのセルを選択し、複数要求有無判別手段が単独の要求であると判別したときにはそのセルを選択して、送出先の装置との間で所定の違反が生じないとされた場合には直ちに、その違反が生じるとされる場合には契約帯域によって定められるシェーピングレートの逆数で求まるセルの送出間隔で対応するキューから出力する高優先セル出力手段と、（ホ）高優先セル出力要求有無判別手段が高優先のセルの出力の要求がないと判別したとき低優先のセルの出力の要求があるかどうかを判別する低優先セル出力要求有無判別手段と、（へ）この低優先セル出力要求有無判別手段が低優先のセルの出力の要求があると判別した場合に、仮想パスにおけるセル遅延変化量を送出するセルの間隔が詰まる方向に計算するセル遅延変化量計算手段と、（ト）このセル遅延変化量計算手段の計算値が“０”で遅延が発生していないとされた場合、あるいはそうでない場合には計算値が“０”になるのを待って、そのセルの出力が可能であるかどうかを判別する低優先セル出力可否判別手段と、（チ）この低優先セル出力可否判別手段が出力可と判別したときに該当する低優先のセルを対応するキューから出力する低優先セル出力手段とをセル送出制御装置に具備させる。
【００２５】
すなわち請求項３記載の発明では、第１段のシェーパと第２段のシェーパの２段のシェーパでセル送出制御装置を構成している。このうちの第１段のシェーパはそれぞれの仮想チャネルごとに設けられた複数のシェーパであり、対応するセルを格納するキューと、キューに格納されたセルをそれぞれ独自に定めた出力レートの範囲内にシェーピングするシェーピング手段と、シェーピング後のセルのキューからの出力要求をセルの出力に際しての優先度を表わした優先度情報と共に出力する出力要求手段を備えている。第２段のシェーパは、高優先セル出力要求有無判別手段と、複数要求有無判別手段と、高優先セル出力手段と、低優先セル出力要求有無判別手段と、低優先セル出力可否判別手段と、低優先セル出力手段から構成されている。そして、第２段のシェーパはそれぞれの仮想チャネルごとに設けられた第１段のシェーパからシェーピング後のセルについて出力の要求があったときに、高優先のセルの出力の要求があるかどうかを高優先セル出力要求有無判別手段で判別し、この要求がある場合には要求が２以上のシェーパからのものであるか否かを複数要求有無判別手段で判別することにしている。そして、複数要求有無判別手段が２以上のシェーパから要求があると判別したときには、高優先セル出力手段がこれらのセルをラウンドロビン方式で順に処理するようにして１つのセルを選択し、複数要求有無判別手段が単独の要求であると判別したときにはそのセルを選択して、送出先の装置との間で所定の違反が生じないとされた場合には直ちに、その違反が生じるとされる場合には予め取り決められたセルの送出間隔で対応するキューから出力するようにしている。高優先のセルの出力の要求がなく低優先のセルの出力の要求がある場合には、契約帯域によって定められるシェーピングレートの逆数で求まるセルの送出間隔で定められるタイミングでそのセルの出力が可能であるかどうかを判別して、可能である場合には該当する低優先のセルを対応するキューから出力するようにしている。これにより、高優先のセルの出力が要求された場合には、送出先の装置との関係で違反とされない限り、直ちにセルの送出が可能となるので実時間性に優れた処理が可能になる。また、高優先のセルが競合した場合には、ラウンドロビン方式でこれが処理されるので、優先度が同一の場合でも適切な処理が可能になる。高優先のセルの出力要求が存在せず帯域に空きが生じている場合には、セル遅延変化量計算手段で仮想パスにおけるセル遅延変化量を送出するセルの間隔が詰まる方向に計算し、この計算値が“０”で遅延が発生していないとされた場合、あるいはそうでない場合には計算値が“０”になるのを待って、そのセルの出力が可能であるかどうかを判別し、出力可と判別したときに該当する低優先のセルを対応するキューから出力するようにしている。
【００２６】
請求項４記載の発明では、請求項１〜請求項３いずれかに記載のセル送出制御装置で、それぞれのシェーパのサステイナブル・セル・レートＳＣＲの総和が各キューから出力されるセルに対する送出先の装置との間で取り決められたピーク・セル・レートＰＣＲを越えるものでないことを条件として、それぞれのシェーパのピーク・セル・レートＰＣＲの総和が送出先の装置との間で取り決められたピーク・セル・レートＰＣＲを越えるような値に設定されていることを特徴としている。
【００２７】
すなわち請求項４記載の発明では、シェーパを２段構成としたため、それぞれのシェーパのピーク・セル・レートＰＣＲの総和を、送出先の装置との間で取り決められたピーク・セル・レートＰＣＲ以内に絞り込む必要がなく、余裕を持って設定することで、結果的に高優先のセルを出力する仮想チャネルのシェーピングによって生じるセルの廃棄を減少させることができると共に、高優先のセルの出力要求が存在せず帯域に空きが生じた場合に、より多くの低優先のセルの出力が可能になる。
【００２８】
請求項５記載の発明では、請求項１〜請求項３いずれかに記載のセル送出制御装置で、セルはＡＴＭセルであることを特徴としている。
【００２９】
すなわち請求項５記載の発明では、ＡＴＭセルに本発明を適用できることを示している。
【００３２】
【発明の実施の形態】
【００３３】
本発明の実施例を説明する前に、本発明の原理を説明する。
【００３４】
図１は本発明のセル送出制御装置の原理的な構成を示したものである。この原理的なセル送出制御装置は、高優先のセルの仮想チャネルＶＣ１と接続され、このチャネルによって送られてくるセルを蓄積するための第１のキュー（Ｑｕｅｕｅ）２０１を備えている。第１のキュー２０１の出力側には第１の第１段シェーパ（ＳＨＰ）２０２が配置されている。一方、低優先のセルの仮想チャネルＶＣ２には、このチャネルによって送られてくるセルを蓄積するための第２のキュー２０３が配置されている。第２のキュー２０３の出力側には第２の第１段シェーパ２０４が配置されている。第１および第２の第１段シェーパ２０２、２０４の出力側には、入力されるセルのシェーピングを行う第２段シェーパ２０５が配置されている。第２段シェーパ２０５には専用のキューが配置されていない。
【００３５】
ここで、第１の第１段シェーパ２０２のＳＣＲ（Ｓｕｓｔａｉｎａｂｌｅ  Ｃｅｌｌ  Ｒａｔｅ）をＳＣＲ１１とし、第２の第１段シェーパ２０４のそれをＳＣＲ１２とする。また、第２段シェーパ２０５のＰＣＲ（Ｐｅａｋ  Ｃｅｌｌ  Ｒａｔｅ）をＰＣＲ２０とする。この場合、この原理的な構成のセル送出制御装置ではこれらの関係が次の（１）式に示すような範囲に設定されている。
【００３６】
ＳＣＲ１１＋ＳＣＲ１２＜ＰＣＲ２０      ……（１）
【００３７】
ただし、第１の第１段シェーパ２０２のＰＣＲ１１と第２の第１段シェーパ２０４のＰＣＲ１２は第２段シェーパ２０５のＰＣＲ２０と次の（２）式に示す関係になっていることは構わない。
【００３８】
ＰＣＲ１１＋ＰＣＲ１２＞ＰＣＲ２０      ……（２）
【００３９】
第２段シェーパ２０５には、ＰＣＲ２０と、仮想パスＶＰの出力に対する対向側としての図示しない専用線の他端に接続された受信側の装置のＣＤＶＴ（Ｃｅｌｌ  Ｄｅｌａｙ  Ｖａｒｉａｔｉｏｎ  Ｔｏｌｅｒａｎｃｅ）が設定されている。ここでＣＤＶＴの値は、受信側の装置あるいはネットワークが、到着したセルの揺らぎをどこまで許容するかというパラメータである。ＣＤＶＴの違反は、受信側の装置あるいはネットワークが設定しているＣＤＶＴの値を越えるというもので、違反したセルは廃棄、遅延、特別な課金、優先度を下げる等の処理が行われる場合がある。
【００４０】
ところで第１の第１段シェーパ２０２と第２の第１段シェーパ２０４は、自身のセルを送出するときそれぞれのシェーピングレートに合わせて第２段シェーパ２０５に対して出力要求（リクエスト）を送出する。このとき、第１の第１段シェーパ２０２は自身が高優先セルを出力することを表わした信号をこの出力要求と共に出力する。第２段シェーパ２０５は、第１の第１段シェーパ２０２からこの出力要求を受け取ると、送られてきた高優先の仮想チャネルＶＣ１のセルを出力する。ただし、この高優先の仮想チャネルＶＣ１のセルを専用線に出力することによって、受信側の装置のＣＤＶＴに違反が生じるような場合には、このような違反が生じなくなる時間まで待って第１のキュー２０１から高優先の仮想チャネルＶＣ１のセルの送出を行わせる。
【００４１】
第１の第１段シェーパ２０２と第２の第１段シェーパ２０４から第２段シェーパ２０５に送られるセルは前記した（２）式に示した関係を許容している。したがって、受信側の装置のＣＤＶＴに違反が生じるような事態が発生する可能性はあるが、第１の第１段シェーパ２０２自体がシェーピングを行っているため、通常はこのような事態の発生はない。
【００４２】
一方、第１の第１段シェーパ２０２からの出力要求がなく、第２の第１段シェーパ２０４の出力要求のみがあった場合、第２段シェーパ２０５側ではセルを多重化するアルゴリズムとしてのＧＣＲＡ（Ｇｅｎｅｒｉｃ  Ｃｅｌｌ  Ｒａｔｅ  Ａｌｇｏｒｉｔｈｍ）で、仮想パスＶＰにおけるセル遅延変化量ＣＤＶ（Ｃｅｌｌ  Ｄｅｌａｙ  Ｖａｒｉａｔｉｏｎ）を計算する。ただし、本実施例では送出するセルの間隔が詰まる方向についてのみ計算を行う。そして、セル遅延変化量ＣＤＶの計算値が“０”である場合、すなわち遅延が発生していない場合には第２の第１段シェーパ２０４のセルを送出し、そうでない場合にはセル遅延変化量ＣＤＶの計算値が“０”になるのを待って第２のキュー２０３に格納された第２の第１段のシェーパ２０４のセルを送出する。
【００４３】
このようにセル遅延変化量ＣＤＶの計算値が“０”になるのを待機している間に第１の第１段シェーパ２０２から出力要求が発生する場合がある。このような場合には、受信側の装置のＣＤＶＴに違反が生じない条件の下で、高優先の仮想チャネルＶＣ１のセルが出力される。そして、セル遅延変化量ＣＤＶの計算が再度行われ、その計算値が“０”になった時点で低優先のセルの仮想チャネルＶＣ２が出力されることになる。このような手法を採ることで、高優先のセルは実時間で出力され、低優先のセルは高優先のセルの特性を劣化させない範囲内で出力されることになる。
【００４４】
【実施例】
以下実施例につき本発明を詳細に説明する。
【００４５】
図２は本発明の一実施例におけるセル送出制御装置とその周辺の構成を表わしたものである。セル送出制御装置３０１は、たとえば大学や事業所のＬＡＮ（ローカルエリアネットワーク）３０２と仮想チャネル振り分け用のスイッチ３０３を介して接続されており、ＬＡＮ３０２から外部のネットワークに出力されるＡＴＭデータ３０４を最終的に専用線３０５に送出するようになっている。ＬＡＮ３０２から外部に送出される各種のＡＴＭデータ３０４はスイッチ３０３によって、本実施例ではサービスクラス別に４本の仮想チャネルＶＣ１１〜ＶＣ１４に振り分けられてセル送出制御装置３０１内のシェーピング部３０７に入力されることになる。シェーピング部３０７は図１で説明したように２段のシェーパを備えている。
【００４６】
図３は、図２に示したシェーピング部の要部についてその概要を示したものである。シェーピング部３０７の入力側には第１〜第４の合計４本の仮想チャネルＶＣ１１〜ＶＣ１４が接続されている。第１の仮想チャネルＶＣ１１によって送られてきたセルは、第１のキュー３１１を備えた第１の第１段シェーパ３２１に入力されるようになっている。第２の仮想チャネルＶＣ１２によって送られてきたセルは、第２のキュー３１２を備えた第２の第１段シェーパ３２２に入力されるようになっている。以下同様に、第３の仮想チャネルＶＣ１３によって送られてきたセルは、第３のキュー３１３を備えた第３の第１段シェーパ３２３に入力され、第４の仮想チャネルＶＣ１４によって送られてきたセルは、第４のキュー３１４を備えた第４の第１段シェーパ３２４に入力される。これら第１〜第４の仮想チャネルＶＣ１１〜ＶＣ１４の出力側にはセルの２段目のシェーピングを行う第２段シェーパ３３１が配置されている。第２段シェーパ３３１には専用のキューが配置されていない。
【００４７】
第１の仮想チャネルＶＣ１１は、サービスクラスがＣＢＲ（Ｃｏｎｓｔａｎｔ  Ｂｉｔ  Ｒａｔｅ）となっている。ＣＢＲは、音声やビデオアプリのような厳しい遅延特性や遅延揺らぎ品質を要求されるものに使用されることが多い。また、第２の仮想チャネルＶＣ１２は、サービスクラスがｒｔ−ＶＢＲ（Ｒｅａｌ  Ｔｉｍｅ  Ｖａｒｉａｂｌｅ  Ｂｉｔ  Ｒａｔｅ）となっている。更に、第３の仮想チャネルＶＣ１３は、サービスクラスがｎｒｔ−ＶＢＲ（Ｎｏｎ−Ｒｅａｌ  Ｔｉｍｅ  Ｖａｒｉａｂｌｅ  Ｂｉｔ  Ｒａｔｅ）となっている。ＶＢＲは、ＣＢＲと同様にリアルタイムサービスを想定したものであるが、送信レートが時変（バースト性）となっている。圧縮動画のように通常はあるレートで送信するが、シーンが変わるところでは一時的にデータ量が増えるといった場合などに多く使用される。最後に、第４の仮想チャネルＶＣ１４は、サービスクラスがＵＢＲ（Ｕｎｓｐｅｃｉｆｉｅｄ  Ｂｉｔ  Ｒａｔｅ）となっている。
【００４８】
ここで、第１の仮想チャネルＶＣ１１のＣＢＲと第２の仮想チャネルＶＣ１２のｒｔ−ＶＢＲは、高優先の仮想チャネルＶＣであり、残りの第３および第４の仮想チャネルＶＣ１３、ＶＣ１４の２本については低優先の仮想チャネルＶＣであるとする。
【００４９】
図４は、図３に示した回路部分を具体的に示したものである。ただし、この図４では第１段シェーパについて第１の第１段シェーパ３２１と第４の第１段シェーパ３２４のみを図示している。第１の第１段シェーパ３２１は、このシェーパ３２１について規定されたシェーピングレートにシェーピングするためのものであり、第１の仮想チャネルＶＣ１１からセルを入力して蓄積する第１のキュー３１１を備えている。
【００５０】
第１のキュー３１１はセルが入力されるとその出力を要求するリクエスト信号３４２１を出力するようになっている。リクエスト信号３４２１は第１の第１段シェーパ３２１内の第１の第１段判定器３４３１に入力されてリクエストに対するグラント信号３４４１を出力するか否かの判定が行われるようになっている。この判定のために、第１の第１段判定器３４３１には第１の第１段カウンタ３４５１と第１の第１段レジスタ３４６１が接続されている。
【００５１】
ここで第１の第１段カウンタ３４５１は、セルの送出される基準となる間隔としてのセル時間や送信対象となるセルの数あるいはセルの送信間隔を測定するためのカウンタである。また、第１の第１段レジスタ３４６１は第１の第１段シェーパ３２１に対する設定情報を格納するようになっている。設定情報とは、仮想チャネルＶＣ１１についてのＰＣＲ（Ｐｅａｋ  Ｃｅｌｌ  Ｒａｔｅ）としてのＰＣＲ１やＳＣＲ（Ｓｕｓｔａｉｎａｂｌｅ  Ｃｅｌｌ  Ｒａｔｅ）としてのＳＣＲ１である。
【００５２】
第１の第１段判定器３４３１は、リクエスト信号３４２１が入力されると、規定されたシェーピングレート以下でこれらのセルを出力できるかどうかを判別し、出力できると判別した場合には第２段シェーパ３３１に対してリクエストを出力するようになっている。このとき、第１の第１段シェーパ３２１から出力の対象となるセルの優先度もリクエストと共に出力される。
【００５３】
第２の第１段シェーパ３２２等の他の第１段シェーパ３２２〜３２４についても第１の第１段シェーパ３２１と同一の構成となっている。そこで、第２〜第４のキュー３１２〜３１４以外の回路部分については第１の第１段シェーパ３２１で図示した符合の添え字の“１”を対応する数字に置き換えて、これらの回路部分の説明を省略する。
【００５４】
第１〜第４の第１段シェーパ３２１〜３２４のそれぞれのキュー３１１〜３１４から出力されるセルデータ３４８１〜３４８４は、接続部３５１を経て、出力セルデータ３５２として図１に示したシェーピング部３０７の出力側回路に送られることになる。すなわち、本実施例の回路構成では第２段シェーパ３３１が第１〜第４の第１段シェーパ３２１〜３２４の第１〜第４の第１段判定器３４３１〜３４３４を制御することで、第１〜第４の第１段シェーパ３２１〜３２４の出力するセルの制御（第２段目のシェーピング）を行うようになっている。
【００５５】
このような第２段シェーパ３３１は、出力側のシェーピングレートにシェーピングするためのもので、第２段判定器３５３とこれに接続された第２段カウンタ３５４および第２段レジスタ３５５から構成されている。ここで、第２段カウンタ３５４は、セルの送出される基準となる間隔としてのセル時間ＴＰや送信対象となるセルの数あるいはセルの送信間隔を測定するためのカウンタである。第２段レジスタ３５５は、第２段シェーパ３３１に対する設定情報を格納するようになっている。設定情報とは、第２段シェーパ３３１としてのＰＣＲ２０やＳＣＲ２０である。ここで、（１）式および（２）式を本実施例に置き換えて表わすと次の（３）式および（４）式のようになる。
【００５６】
ＳＣＲ１１＋ＳＣＲ１２＋ＳＣＲ１３＋ＳＣＲ１４＜ＰＣＲ２０      ……（３）
ＰＣＲ１１＋ＰＣＲ１２＋ＰＣＲ１３＋ＰＣＲ１４＞ＰＣＲ２０      ……（４）
【００５７】
第２段判定器３５３は第１〜第４の第１段判定器３４３１〜３４３４から前記したようにセルの出力の要求および要求先の優先度を表わしたリクエスト信号３５６１〜３５６４が入力されると、それぞれの優先度等に応じてグラント信号３５７１〜３５７４を出力するか否かの判定を行うようになっている。ここでリクエスト信号３５６１は、対応する第１の第１段シェーパ３２１でセルの出力が可能であると判定されたときに行われる。このリクエスト信号３５６１に対して第２段判定器３５３がグラント信号３５７１を出力したとき、第１の第１段シェーパ３２１はグラント信号３４４１を出力して第１のキュー３１１から対応するセルの出力が可能になる。他のリクエスト信号３５６１〜３５６４についての第２〜第４の第１段シェーパ３２２〜３２４の動作もこれと同一である。
【００５８】
図５は、本実施例のセル送出制御装置の動作例を示したものである。図５と共にセル送出制御装置３０１の具体的な動作を説明する。まず、図２に示したＬＡＮ３０２からＡＴＭセルからなるＡＴＭデータ３０４が最初のデータとして出力されたものとする。このＡＴＭデータ３０４のサービスクラスがＣＢＲであるとすると、図２に示すスイッチ３０３はこれを第１の仮想チャネルＶＣ11に出力する。このＡＴＭデータは図４に示す第１のキュー３１１に入力される。
【００５９】
第１のキュー３１１は、セルの入力された時刻ｔ１にリクエスト信号３４２１を第１の第１段判定器３４３１に対して出力する（図５（ａ）の▲１▼）。第１段判定器３４３１は第１の第１段カウンタ３４５１と第１の第１段レジスタ３４６１を参照する。そして、第１の第１段シェーパ３２１からセルの出力が可能な場合には、その範囲内で、優先度を表わした情報と共にセルの送出を要求するリクエスト信号３５６１を第２段判定器３５３に送出する。
【００６０】
この例では、この時点で他のセルの送出を要求するリクエストは第２段判定器３５３にまだ送出されていない。そこで第２段判定器３５３は、（３）式および（４）式より、ＰＣＲ１１がＰＣＲ２０を一時的に越えるものであってもＳＣＲ１１がＰＣＲ２０を越えないという条件を満たしているとき、グラント信号３５７１を第１の第１段判定器３４３１に返送する。この結果、図５に示すこの時刻ｔ１に第１のキュー３１１から対応するセルの出力が開始し、接続部３５１を経て、出力セルデータ３５２として図１に示したシェーピング部３０７の出力側回路に送られることになる（図５（ｅ）の▲１▼）。
【００６１】
ところで、本実施例のセル送出制御装置では受信側の装置のＣＤＶＴに違反が生じないようにセルの間隔をある値あるいはこれ以上広げながらそれぞれのセルを送出する必要がある。ここでセル遅延変化量ＣＤＶの計算値が“０”となるセル同士の基準となる間隔を、図５（ｆ）に示すようにセル時間ＴＰとする。図２に示したＬＡＮ３０２から出力されるＡＴＭデータ３０４としての各セルがセル送出制御装置３０１から専用線３０５を通じて外部に出力されるセルの出力態様は、図５（ｇ）に示すような状態が基準となる。
【００６２】
さて、時刻ｔ１に第１のキュー３１１から符号▲１▼で示したセルが出力されてセル時間ＴＰに至る前の時刻ｔ２に、サービスクラスがｎｒｔ−ＶＢＲのセル（図で符号▲２▼で示す）がＬＡＮ３０２からＡＴＭデータ３０４として出力されたものとする。このＡＴＭデータ３０４は第３の仮想チャネルＶＣ１３を通って、図４で図示を省略した第３のキュー３１３に入力される。第３のキュー３１３はこの時刻ｔ２にリクエスト信号３４２３を出力する（図５（ｃ））。
【００６３】
第３の第１段シェーパ３２３は、第３の第１段カウンタ３４５３と第３の第１段レジスタ３４６３を参照する。そして、第３の第１段シェーパ３２３のシェーピングレートの範囲内で、優先度を表わした情報と共にセルの送出を要求するリクエスト信号３５６３を第２段判定器３５３に送出することになる。
【００６４】
第２段判定器３５３は、第２段カウンタ３５４によって送信するセルの数だけでなくセルの送信の間隔を計数している。そして、リクエスト信号３５６３が低優先のセルについての送出要求であるので、時刻ｔ１からセル時間ＴＰが経過した時刻ｔ３になるまでグラント信号３５７３の出力を遅延させる。そして、第３の仮想チャネルＶＣ１３よりも優先する仮想チャネルＶＣに対応する第１または第２の第１段シェーパ３２１、３２２からリクエスト信号３５６１、３５６２が到達していないことを条件として、セル遅延変化量ＣＤＶの計算値が“０”となったこの時刻ｔ３にグラント信号３５７３を出力する。この結果、図５（ｅ）に示すように時刻ｔ３に第３のキュー３１３から符号▲２▼で示したセルが外部に向けて出力されることになる。
【００６５】
符号▲２▼で示したこのセルが出力された後で、かつ時刻ｔ３からセル時間ＴＰが経過する前の時刻ｔ４に、図５（ａ）の符号▲３▼で示すように再び第１のキュー３１１からリクエスト信号３４２１が出力されたものとする。これを基にしたリクエスト信号３５６１は高優先のセルについての送出要求である。したがって、第２段判定器３５３はセル遅延変化量ＣＤＶの計算値が“０”となるのを待つことなくグラント信号３５７１を出力する（図５（ｅ）の▲３▼）。ただし、このように高優先のセルを直ちに対応する第１のキュー３１１から出力するのは、受信側の装置のＣＤＶＴに違反が生じないことを前提としている。第１のキュー３１１から直ちに出力することがＣＤＶＴを越えてしまうような場合には、これを越えない最短の時間まで符号▲３▼で示したセルに対するグラント信号３５７１の出力を停止する。そして、この最短の時間が経過した時点で第１のキュー３１１からこのキューの出力を開始させることになる。
【００６６】
符号▲３▼で示したセルが出力された後、図５（ｄ）に示すように直ちに第４の仮想チャネルＶＣ１４から第４のキュー３１４に低優先のセルが入力されたとする。この時刻ｔ５にセル遅延変化量ＣＤＶの計算値は“０”となっていない。そこでこのセルの出力は時刻ｔ３からセル時間ＴＰが２回経過する時刻ｔ７まで待機されることになる。ところが、時刻ｔ７に到達するまでの途中の時刻に第２の仮想チャネルＶＣ１２から第２のキュー３１２に高優先のセルが入力し、図５（ｂ）に符合▲５▼で示すように時刻ｔ６にリクエスト信号３４２２が出力されたとする。
【００６７】
この場合には、符号▲４▼で示すセルが第４のキュー３１４になおも待機状態に置かれる。これに対して、符合▲５▼で示すセルは高優先なので、時刻ｔ７に到達するのを待つことなく、第２段判定器３５３は図示しないリクエスト信号３５６２に対して直ちにグラント信号３５７２を出力することになる。これにより、対応する第２のキュー３１２からその時刻ｔ６にセルが出力されることになる。
【００６８】
一方、第４のキュー３１４に待機状態に置かれた符号▲４▼で示すセルについては、再度算出されたセル遅延変化量ＣＤＶの計算値が“０”となった時刻ｔ８に第２段判定器３５３がグラント信号３５７４を出力する。すなわち、時刻ｔ８までに他の高優先のセルについての出力のリクエスト３５６が存在しなければ、符号▲４▼で示すセルは時刻ｔ８に第４のキュー３１４から出力されて専用線３０５に送出されることになる。
【００６９】
第２段シェーパ３３１は以上のように動作するので、各仮想チャネルＶＣ１１〜ＶＣ１４のトラフィックは第１〜第４の第１段シェーパ３２１〜３２４によってそれぞれの仮想チャネルＶＣ１１〜ＶＣ１４に必要なレートにシェーピングされることになる。しかも高優先の仮想チャネルＶＣ１１、ＶＣ１２の実時間性を確保しながら、空き時間帯が発生した場合には低優先の仮想チャネルＶＣ１３、ＶＣ１４を送出してこれらのチャネルの有効活用を図ることができる。
【００７０】
図６は、以上説明した第２段シェーパの処理の流れを表わしたものである。第２段シェーパ３３１は図示しないがＣＰＵ（中央処理装置）とプログラムを格納したＲＯＭ（リード・オンリ・メモリ）等の不揮発性の記憶媒体と、各種演算結果等の処理データを一時的に格納する作業用メモリとしてのＲＡＭ（ランダム・アクセス・メモリ）等の揮発性の記憶媒体を備えた制御部を有している。この制御部のＣＰＵがプログラムを実行することで、図５と共に説明したような処理が実現する。
【００７１】
すなわち、第２段シェーパ３３１の前記した制御部はリクエスト信号３５７１〜３５７４の入力を監視している。そして高優先の仮想チャネルＶＣ１１、ＶＣ１２と接続された第１または第２の第１段シェーパ３２１、３２２からリクエスト信号３５６１、３５６２が入力された場合には（ステップＳ４０１：Ｙ）、現時点で直ちに該当するセルを出力した場合に受信側の装置のＣＤＶＴに違反が生じるかどうかの判別を行う（ステップＳ４０２）。その結果、ＣＤＶＴに違反が生じないと判別された場合には（Ｙ）、そのリクエストのあった第１または第２の第１段シェーパ３２１、３２２に対してグラント信号３５７１またはグラント信号３５７２を出力して（ステップＳ４０３）、該当する高優先のセルを出力させる。
【００７２】
なお、高優先のセルが同時に複数存在した場合には、これらのうちより優先度のより高いセルが選択されることになる。すなわち、説明を簡略化するために高優先の仮想チャネルＶＣ１１、ＶＣ１２の間の優劣について特に説明しなかったが、これらに異なった優先度を定めておけば高優先の仮想チャネルＶＣ１１、ＶＣ１２のセルが競合した場合により実時間性の高いセルを優先させて出力することができる。
【００７３】
ステップＳ４０２で受信側の装置のＣＤＶＴに違反が生じると判別された場合には（Ｎ）、その時点での該当するセルの出力が停止される。そしてこの場合には次のセル時間ＴＰを待って（ステップＳ４０４：Ｙ）、ステップＳ４０１からの処理が再開される。すなわち、次のセル時間ＴＰになった時点でステップＳ４０２の判別を行い、ＣＤＶＴに違反が生じなくなっていれば（Ｙ）、該当のセルの出力を行う（ステップＳ４０３）。もちろん、この新たな時点までにより優先度の高いセルの出力についてのリクエストが発生していれば、その新たなセルの出力が優先されることは当然である。
【００７４】
一方、ステップＳ４０１で高優先の仮想チャネルＶＣ１１、ＶＣ１２についてのリクエストがなかった場合には、低優先の仮想チャネルＶＣ１３、ＶＣ１４についてのリクエストが存在しているかどうかのチェックが行われる（ステップＳ４０５）。低優先の仮想チャネルＶＣ１３またはＶＣ１４についてのリクエストがあった場合には（Ｙ）、現時点でセル遅延変化量ＣＤＶの計算値が“０”となっているかどうかの判別が行われる（ステップＳ４０６）。“０”となっていれば（Ｙ）、リクエストのあった第３または第４の第１段シェーパ３２３、３２４に対してグラント信号３５７３またはグラント信号３５７４を出力して（ステップＳ４０７）、該当する低優先のセルを出力させる。
【００７５】
なお、低優先のセルが同時に複数存在した場合には、これらのうち優先度のより高いセルが選択されることになる。すなわち、説明を簡略化するために低優先の仮想チャネルＶＣ１３、ＶＣ１４の間の優劣について特に説明しなかったが、これらに異なった優先度を定めておけば低優先の仮想チャネルＶＣ１３、ＶＣ１４のセルが競合した場合により実時間性の高いセルを優先させて出力することができる。
【００７６】
ステップＳ４０５で低優先の仮想チャネルＶＣ１３またはＶＣ１４についてのリクエストがなかった場合（Ｎ）あるいはステップＳ４０６で、セル遅延変化量ＣＤＶの計算値が“０”となっていないと判別された場合（Ｎ）には、次のセル時間ＴＰを待って（ステップＳ４０４：Ｙ）、ステップＳ４０１からの処理が再開されることになる。
【００７７】
なお、以上説明した実施例では高優先セルがそれらの出力について競合するときには優先度の高いものを優先させることにしたが、同一の優先度のものが複数存在する場合には、ラウンドロビン（Ｒｏｕｎｄ  Ｒｏｂｉｎ）と呼ばれるスケジューリングアルゴリズムを使用することも可能である。ラウンドロビンではタイマ割り込みを利用して、複数のプロセスをＣＰＵに割り当てていくので、同一の優先度のセルを公平に取り扱うことができる。このアルゴリズムを使用した場合には、仮想パスＶＰのＰＣＲおよびセルの平均速度としてのＳＣＲをこれらの間で同一の値とすることができるので、演算処理が簡単になるという利点がある。
【００７８】
【発明の効果】
以上説明したように請求項１〜請求項５記載の発明によれば、仮想チャネルごとに設けられた複数の第１段のシェーパとこれらの出力側に配置された第２段のシェーパの２段のシェーパでセル送出制御装置を構成し、かつ第２段のシェーパ側から第１段のそれぞれのシェーパのキューからのセルの出力を制御することにしたので、それぞれの仮想チャネルの出力レートを直接制御することができる。また、実時間性の高い高優先のセルについては、該当する第１段のシェーパから出力の要求があると判別したときで送出先の装置との間で所定の違反が生じないとされた場合には直ちに、その違反が生じるとされた場合には予め取り決められたセルの送出間隔でこれを対応するキューから出力するようにしたので、高優先のセルの遅延や揺らぎ特性の品質を確保することができる。更に、高優先のセルの出力が要求されていない空き帯域が生じたときには、低優先のセルを対応するキューから出力することができるので、帯域を有効に活用することができる。しかも、このような制御が第２段のシェーパを中心とした出力段の制御によって可能になり、装置全体の閉ループ制御を要しないので、セル送出制御装置をシンプルに構成することができる。
【００７９】
更に請求項２および請求項３記載の発明によれば、高優先のセルの出力要求が競合した場合にこれらのセルの実時間性をできるだけ保持した状態でこれらのセルの円滑な処理が可能になる。
【図面の簡単な説明】
【図１】本発明のセル送出制御装置の原理的な構成を示した要部説明図である。
【図２】本発明の一実施例におけるセル送出制御装置とその周辺の構成を表わした通信システムの要部構成図である。
【図３】図２に示したシェーピング部の要部についてその概要を示した概略構成図である。
【図４】図２に示したシェーピング部の要部を具体的に示したブロック図である。
【図５】本実施例のセル送出制御装置の各セルの処理タイミングを示したタイミング図である。
【図６】本実施例における第２段シェーパの処理の流れを表わした流れ図である。
【図７】従来提案された２段階のシェーピングの手法を示した説明図である。
【図８】図７に示した提案における仮想チャネルＶＣの設定とその問題を示した説明図である。
【図９】両仮想チャネルＶＣ１、ＶＣ２をシェーピングを行うことなく割り当てた場合の不都合を示した説明図である。
【符号の説明】
２０１、３１１  第１のキュー
２０２、３２１  第１の第１段シェーパ
２０３、３１２  第２のキュー
２０４、３２２  第２の第１段シェーパ
２０５、３３１  第２段シェーパ
３０２  ＬＡＮ
３０３  スイッチ
３０５  専用線
３０７  シェーピング部
３１３  第３のキュー
３１４  第４のキュー
３２３  第３の第１段シェーパ
３２４  第４の第１段シェーパ
３４３  第１段判定器
３４５  第１段カウンタ
３４６  第１段レジスタ
３５２  出力セルデータ
３５３  第２段判定器
３５４  第２段カウンタ
３５５  第２段レジスタ
ＶＣ１  高優先のセルの仮想チャネル
ＶＣ２  低優先のセルの仮想チャネル
ＶＣ１１  第１の仮想チャネル
ＶＣ１２  第２の仮想チャネル
ＶＣ１３  第３の仮想チャネル
ＶＣ１４  第４の仮想チャネル
【図１】
0003601449.tif 000002
【図２】
0003601449.tif 000003
【図３】
0003601449.tif 000004
【図４】
0003601449.tif 000005
【図５】
0003601449.tif 000006
【図６】
0003601449.tif 000007
【図７】
0003601449.tif 000008
【図８】
0003601449.tif 000009
【図９】
0003601449.tif 000010