(57)【特許請求の範囲】
【請求項１】
コネクション毎のトラヒック特性値及びパラメータ値を記憶する記憶手段と、現在時刻を計数する時計手段と、到着した固定長パケットであるセルが所属するコネクションに対応した前記トラヒック特性値、前記パラメータ値、及び時計手段が計数する現在時刻に基づいて、前記セルの送信可能時刻を決定し、前記パラメータ値の更新を行うスケジューリング手段と、前記スケジューリング手段によって送信可能時刻が決定されたセルから、前記時計手段が計数する現在時刻に基づいて、前記送信可能時刻が現在時刻以前となるセルを検出し、前記セルを回線に送信するセル送信手段とを備えたセルシェーピング装置であって、
前記各コネクション毎に設けられ、先頭から到着順にセルを格納するキューと、
到着したセルを前記セルが所属するコネクションに対応したキューに格納する入力手段とを有し、
前記スケジューリング手段は、前記キューに格納されたセルが前記キューの先頭に達した際に、前記セルの送信可能時刻を計算して決定する手段と、前記セル送信手段がセルを回線に送信する際に、前記セルが所属するコネクションに対応するパラメータ値を更新する手段とを有し、
前記セル送信手段は、前記スケジューリング手段が決定した送信可能時刻が現在時刻以前となるセルを検出し、前記送信可能時刻が最も早いセルをキューの先頭から取り出して回線に送信する手段を備えたことを特徴とするセルシェーピング装置。
【請求項２】
前記請求項１に記載のセルシェーピング装置において、
セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、前記セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、前記セルが所属するコネクションに対応したパラメータ値をＴＡＴ、前記セルの送信可能時刻をｔｓとすると、
前記スケジューリング手段は、セルの送信可能時間ｔｓを計算する際に、
ｔａ＜ＴＡＴ−τの関係が成立する場合に、セルの送信可能時刻ｔｓをＴＡＴ−τとし、
ＴＡＴ−τ≦ｔａの関係が成立する場合に、セルの送信可能時刻ｔｓをｔａとして決定し、パラメータ値ＴＡＴを更新する際に、
ｔｅ＜ＴＡＴの関係が成立する場合に、パラメータの値ＴＡＴをＴＡＴ＋Ｔに更新し、
ＴＡＴ≦ｔｅの関係が成立する場合に、パラメータの値ＴＡＴをｔｅ＋Ｔに更新する手段を有することを特徴とするセルシェーピング装置。
【請求項３】
前記請求項１に記載のセルシェーピング装置において、
セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、前記セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、前記セルが所属するコネクションに対応したパラメータ値をＴＡＴ、前記セルの送信可能時刻をｔｓとすると、
前記スケジューリング手段は、セルの送信可能時間ｔｓを計算する際に、
ｔａ≦ＴＡＴ−τの関係が成立する場合に、セルの送信可能時刻ｔｓをＴＡＴ−τとし、
ＴＡＴ−τ＜ｔａの関係が成立する場合に、セルの送信可能時刻ｔｓをｔａとして決定し、パラメータ値ＴＡＴを更新する際に、
ｔｅ≦ＴＡＴの関係が成立する場合に、パラメータの値ＴＡＴをＴＡＴ＋Ｔに更新し、
ＴＡＴ＜ｔｅの関係が成立する場合に、パラメータの値ＴＡＴをｔｅ＋Ｔに更新する手段を有することを特徴とするセルシェーピング装置。
【請求項４】
前記請求項１に記載のセルシェーピング装置において、
セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、前記セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、前記セルが所属するコネクションに対応したパラメータ値をＴＥＴ、前記セルの送信可能時刻をｔｓとすると、
前記スケジューリング手段は、セルの送信可能時間ｔｓを計算する際に、
ｔａ＜ＴＥＴの関係が成立する場合に、セルの送信可能時刻ｔｓをＴＥＴとし、
ＴＥＴ≦ｔａの関係が成立する場合に、セルの送信可能時刻ｔｓをｔａとして決定し、パラメータ値ＴＥＴを更新する際に、
ｔｅ＜ＴＥＴ＋τの関係が成立する場合に、パラメータの値ＴＥＴをＴＥＴ＋Ｔに更新し、
ＴＥＴ＋τ≦ｔｅの関係が成立する場合に、パラメータの値ＴＥＴをｔｅ−τ＋Ｔに更新する手段を有することを特徴とするセルシェーピング装置。
【請求項５】
前記請求項１に記載のセルシェーピング装置において、
セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、前記セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、前記セルが所属するコネクションに対応したパラメータ値をＴＥＴ、前記セルの送信可能時刻をｔｓとすると、
前記スケジューリング手段は、セルの送信可能時間ｔｓを計算する際に、
ｔａ≦ＴＥＴの関係が成立する場合に、セルの送信可能時刻ｔｓをＴＥＴとし、
ＴＥＴ＜ｔａの関係が成立する場合に、セルの送信可能時刻ｔｓをｔａとして決定し、パラメータ値ＴＥＴを更新する際に、
ｔｅ≦ＴＥＴ＋τの関係が成立する場合に、パラメータの値ＴＥＴをＴＥＴ＋Ｔに更新し、
ＴＥＴ＋τ＜ｔｅの関係が成立する場合に、パラメータの値ＴＥＴをｔｅ−τ＋Ｔに更新する手段を有することを特徴とするセルシェーピング装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＡＴＭセル等の固定長パケット（セル）に対するセルシェーピング装置に関し、特に、ＧＣＲＡ（Ｇｅｎｅｒｉｃ  Ｃｅｌｌ  Ｒａｔｅ  Ａｌｇｏｒｉｔｈｍ）方式で実現されたセルシェーピング装置に適用して有効な技術である。
【０００２】
【従来の技術】
セルシェーピング装置とは、コネクション毎に定められたトラヒック特性値に適合する様に、必要に応じてセルに遅延時間を付与する装置のことである。
【０００３】
従来の、シェーパの実現方式には、原理的に異なる２つの方式が存在する。一つはトークン方式、もう一つはＧＣＲＡ方式である。
【０００４】
従来のトークン方式によるセルシェーピング装置（以下、シェーパと記す）１００の実現例を図１４に示す。従来のトークン方式によるシェーパ１００は、図１４に示すように、入力手段１０１、キュー１０２，１０３、送信タイミング生成手段１０４，１０５、調停手段１０６から構成される。
【０００５】
この図１４に示す実現例において、従来のトークン方式によるシェーパ１００の動作を説明する。シェーパに到着したセルは、入力手段１０１によってセルが所属するコネクションに対応したキュー１０２，１０３等に格納される。ここで、コネクションとはセルヘッダに含まれるＶＰＩ及びＶＣＩフィールドの一部、あるいは全部によって識別される仮想的なパスやチャネルを意味する。
【０００６】
キュー１０２，１０３は、先頭から到着順にセルを格納するもので、コネクション対応に存在する。
【０００７】
送信タイミング生成手段１０４，１０５は、各々キュー１０２，１０３等の先頭のセルが送信可能となったことを示すタイミング信号を生成するもので、コネクションに対応したキュー毎に存在する。また、送信タイミング生成手段１０４，１０５は、コネクション毎のトラヒック特性値に応じて、クロック信号を分周することによってタイミング信号を生成する方式で実現できる。このことは、特願平１０−１８４５７号や特願平１０−２８１５００号の明細書に開示されている。
【０００８】
調停手段１０６は、セルが送信可能となったことを示すタイミング信号が生成されたキューの先頭から、セルを取り出して回線に送信する。この際に、セルが送信可能となったキューが複数存在する場合、調停手段１０６は、キュー間に予め設定された固定優先度、ラウンドロビン、ランダムやこれらの組み合わせ等の調停規則に基づいてセルを取り出すキューを選択する。
【０００９】
次に、従来のＧＣＲＡ方式によるシェーパ２００の実現例を図１５に示す。
【００１０】
従来のＧＣＲＡ方式によるシェーパ２００は、図１５に示すように、トラヒック特性値，パラメータ値を記憶する記憶手段２０１、時計手段２０２、スケジューリング手段２０３、セル送信手段２０４から構成される。
【００１１】
この図１５に示す実現例において、従来のＧＣＲＡ方式によるセルシェーピング装置（シェーパ）２００の動作を説明する。
【００１２】
記憶手段２０１は、コネクション毎のトラヒック特性値，パラメータ値を記憶する手段で、コネクションの識別子の値でアドレッシングされる配列で構成される。ここで、コネクションとはセルヘッダに含まれるＶＰＩ及びＶＣＩフィールドの一部、あるいは全部によって識別される仮想的なパスやチャネルを意味する。
【００１３】
図１５に示すように、セルがシェーパに到着した際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶手段２０１から、到着したセルのコネクションに対応したこれらの値がスケジューリング手段２０３に入力される。
【００１４】
スケジューリング手段２０３は、入力されたトラヒック特性値，パラメータ値、及び時計手段２０２が計数する現在時刻に基づいて、到着したセルの送信可能時刻を決定してセル送信手段２０４に出力する。
【００１５】
同時に、スケジューリング手段２０３は、パラメータ値の更新値を決定して、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶手段２０１に出力し、記憶されているパラメータ値を更新する。
【００１６】
セル送信手段２０４は、シェーパにセルが到着した際に、到着したセルとスケジューリング手段２０３によって決定したセルの送信可能時刻を対で記憶する。
【００１７】
セル送信手段２０４は、時計手段２０２が計数する現在時刻に基づいて、記憶されているセルの中から送信可能時刻が現在時刻以前となるセルを検出して、そのセルを回線に送信する。
【００１８】
次に、従来のＧＣＲＡ方式によるシェーパ２００のスケジューリング手段２０３の動作例について説明する。図１６は、図１５に示すスケジューリング手段２０３の動作例を示すフローチャートである。このスケジューリング手段２０３の動作については、例えば、Ｋａｎ  Ｔｏｙｏｓｈｉｍａ、”ＣＤＶ    Ｒｅｄｕｃｔｉｏｎ  Ｓｈａｐｉｎｇ  Ａｌｇｏｒｉｔｈｍ  ｉｎ    ＡＴＭ    Ｎｅｔｗｏｒｋｓ、”  ＩＥＩＣＥ  Ｔｒａｎｓ．  Ｃｏｍｍｕｎ．，  Ｖｏｌ．  Ｅ７９−Ｂ、  Ｎｏ．  ４、  Ａｐｒ．  １９９６に開示されている。
【００１９】
この図１６に示すフローチャートでは、トラヒック特性値としてセル間隔の値と許容されるセル遅延時間のゆらぎを用い、セルの送信可能時刻を計算する際の現在時刻をｔａ、セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、セルが所属するコネクションに対応したパラメータ値をＴＥＴ、セルの送信可能時刻をｔｓとしている。
【００２０】
従来のＧＣＲＡ方式によるシェーパのスケジューリング手段２０３は、まず、セルがシェーパ２００に到着した際に、このセルが所属するコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＥＴの入力を受ける。
【００２１】
スケジューリング手段２０３は、入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＥＴ、及び時計手段が２０２が計数する現在時刻ｔａに基づいて、図１６のフローチャートに示された動作を開始する。
【００２２】
ｔａ≦ＴＥＴの関係が成立する場合は、セルの送信可能時刻ｔｓをＴＥＴとし、パラメータの値ＴＥＴをＴＥＴ＋Ｔに更新する（ステップ３０１、３０３、３０６）。
【００２３】
ｔａ＞ＴＥＴの関係が成立する場合は、セルの送信可能時刻ｔｓをｔａとする（ステップ３０１、３０２）。この場合、さらにｔａ≦ＴＥＴ＋τ、の関係が成立する場合は、パラメータの値ＴＥＴをＴＥＴ＋Ｔに更新する（ステップ３０４、３０６）。
【００２４】
ｔａ＞ＴＥＴ＋τの関係が成立する場合は、パラメータの値ＴＥＴをｔａ−τ＋Ｔに更新する（ステップ３０４、３０５、３０６）。
【００２５】
このように決定したセルの送信可能時刻ｔｓは、セル送信手段２０４に出力される。また、更新されたパラメータの値ＴＥＴは、コネクション毎のトラヒック特性値，パラメータを記憶する記憶手段２０１に出力され、記憶されているパラメータ値が更新される。
【００２６】
次に、従来のＧＣＲＡ方式によるシェーパのセル送信手段２０４の動作例につい説明する。図１７は、図１５のセル送信手段２０４の実現例を示した図であり、一般に、リングバッファ方式と呼ばれる。このことについては、例えば、Ｐｉｅｒｒｅ  Ｂｏｙｅｒ、  Ｆａｂｒｉｃｅ  Ｇｕｉｌｌｅｍｉｎ、  Ｍｉｃｈｅｌ  Ｓｅｒｖｅｌ、Ｊｅａｎ−Ｐｉｅｒｒｅ  Ｃｏｕｄｒｅｕｓｅ、”Ｓｐｅｃｅｉｎｇ  Ｃｅｌｌｓ  Ｐｒｏｔｅｃｔｓ  ａｎｄ  Ｅｎｈａｎｃｅｓ  Ｕｔｉｌｉｚａｔｉｏｎ  ｏｆ  ＡＴＭ  Ｎｅｔｗｏｒｋ  Ｌｉｎｋｓ”  ＩＥＥＥ  Ｎｅｔｗｏｒｋ、Ｖｏｌ．６、Ｎｏ．５、Ｓｅｐ．１９９２．の文献に開示されている。
【００２７】
図１７に示す４０１は現在時刻に対応するバッファを示すポインタ、４０２，４０３，４０４はセルを格納するバッファ１，２，Ｎである。
【００２８】
図１７を用いて、従来のＧＣＲＡ方式によるシェーパ２００のセル送信手段２０４の動作をリングバッファ方式によって説明する。
【００２９】
リングバッファ方式とは、回線上で１セルの転送に要する時間（ＳＴＭ−１／ＳＴＳ−３ｃ回線で約２．７μ秒）を１タイムスロットとし、図１７に示すように、タイムスロットに対応するセルを格納するバッファを環状に並べ、現在時刻に対応するタイムスロットのセルを順次送信する方式である。
【００３０】
具体的には、図１７において、現在時刻に対応するバッファを示すポインタ４０１が示すバッファは、現在時刻のタイムスロットに対応するセルを格納する。ここで、１タイムスロットに要する時間で正規化された時刻、即ち（時刻／１タイムスロットに要する時間）を正規化時刻と呼ぶものとし、図１７における正規化された現在時刻をｔ、バッファの数をＮとすると、このバッファの右隣のバッファは送信可能時刻が正規化時刻ｔ＋１、左隣のバッファは正規化時刻ｔ＋Ｎ−１となるセルを格納する。
【００３１】
また、現在時刻に対応するバッファを示すポインタ４０１は、時計手段２０２が計数する時刻に基づいて更新される。
【００３２】
リングバッファは、シェーパにセルが到着した際に、スケジューリング手段２０３によって決定したセルの送信可能時刻に対応するタイムスロットのバッファに到着セルを格納することによって、到着したセルと送信可能時刻を対で記憶する。但し、送信可能時刻に対応するタイムスロットのバッファに既に他のセルが格納されている場合は、時刻順に空きのバッファを検索して、最も近い空きのバッファにセルを格納する。リングバッファは、現在時刻に対応するバッファを示すポインタ４０１によって示されるバッファのセルを回線に送信することによって、リングバッファに格納されているセルの中から送信可能時刻が現在時刻以前となるセルを検出して回線に送信する。
【００３３】
従来のＧＣＲＡ方式によるシェーパのセル送信手段２０４の第２の動作例について説明する。図１８は、図１５に示すセル送信手段２０４の実現例を示した図であり、一般にカレンダ方式と呼ばれる。このことについては、例えば、Ｅｕｇｅｎ  Ｗａｌｌｍｅｉｅｒ、  Ｔｏｍ  Ｗｏｒｓｔｅｒ、  ”Ｔｈｅ  ｓｐａｃｉｎｇ  Ｐｏｌｉｃｓｅｒ、  Ａｎ  Ａｌｇｏｒｉｔｈｍ  ｆｏｒ  Ｅｆｆｉｃｉｅｎｔ  Ｐｅａｋ  Ｂｉｔ  Ｒａｔｅ  Ｃｏｎｔｒｏｌ  ｉｎ  ＡＴＭ  Ｎｅｔｗｏｒｋｓ，”ＩＳＳ  １９９２、Ｏｃｔ．１９９２．の文献に開示されている。
【００３４】
図１８に示す５０１は現在時刻に対応するリストを示すポインタ、５０２，５０３，５０４は各々セルを格納するリストである。ここに示すリストとは、順序関係のある要素を記憶する際に用いられるデータ構造のことで、リストの先頭の要素を示すポインタ、後尾の要素を示すポインタ、リストに記憶される要素から成り、更に、各要素は格納される情報、及び次の要素を示すポインタから成る。例えば、５０５はリスト１（５０２）の後尾の要素、５０６はリスト１（５０２）の先頭の要素である。
【００３５】
また、図１８では、リストに格納される要素の情報はセルとなる。５０７は送信可能時刻に達したセルを格納する送信リストである。
【００３６】
従来のＧＣＲＡ方式によるシェーパ２００のセル送信手段２０４の動作をカレンダ方式によって説明する。
【００３７】
カレンダ方式とは、回線上で数セルの転送に要する時間を１タイムスロットとし、図１８に示すように、タイムスロットに対応するセルを格納するリストを環状に並べ、送信可能時刻に達したタイムスロットに対応するリストに格納された全てのセルを送信リストの後尾に移動する方式である。具体的には、図１８において、現在時刻に対応するリストを示すポインタ５０１が示すリストは、現在時刻のタイムスロットに対応するセルを格納する。ここで、１タイムスロットに要する時間で正規化された時刻、即ち（時刻／１タイムスロットに要する時間）を正規化時刻と呼ぶものとし、図１８における正規化された現在時刻をｔ、リストの数をＮとすると、このリストの右隣のリストは送信可能時刻が正規化時刻ｔ＋１、左隣のリストは正規化時刻ｔ＋Ｎ−１となるセルを格納する。
【００３８】
また、現在時刻に対応するリストを示すポインタ５０１は、時計手段２０２が計数する時刻に基づいて更新される。カレンダは、シェーパ２００にセルが到着した際に、スケジューリング手段２０３によって決定したセルの送信可能時刻に対応するタイムスロットのリストの最後尾に、到着したセルをリストの要素として順次付け加えて格納することによって、到着したセルと送信可能時刻を対で記憶する。
【００３９】
カレンダは、現在時刻に対応するリストを示すポインタ５０１によって示される、送信可能時刻に達したタイムスロットに対応するリストに格納された全てのセルを送信リストの後尾に移動し、送信リストに格納されたセルを、先頭から順に回線に送信することによって、カレンダに格納されているセルの中から送信可能時刻が現在時刻以前となるセルを検出して送信可能時刻が最も早いセルから送信可能時刻順に回線に送信する。
【００４０】
従来のＧＣＲＡ方式によるシェーパ２００のセル送信手段２０４の第３の動作例について説明する。図１９は、図１５のセル送信手段２０４の実現例を示した図であり、一般にシーケンサ方式と呼ばれる。このことについては、例えば、Ｊｏｎａｔｈａｎ  Ｃｈａｏ、  ”Ａ  Ｇｅｎｅｒａｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｌｉｎｋ−Ｌａｙｅｒ  Ｃｏｎｇｅｓｔｉｏｎ  Ｃｏｎｔｒｏｌ  ｉｎ  ＡＴＭ  Ｎｅｔｗｏｒｋｓ、”  ＩＳＳ  １９９２、Ｏｃｔ．１９９２．の文献に開示されている。
【００４１】
図１９に示す６０１，６０２はセルを格納するバッファ、６０３はセルを格納するバッファヘのポインタ、６０４はセルの送信可能時刻に対応するタイムスロット値、６０５はポインタとタイムスロット値を要素とする配列構造、６０６は到着したセルを格納するバッファ、６０７は到着したセルを格納するバッファへのポインタ、６０８は到着したセルの送信可能時刻に対応するタイムスロット値、６０９はブロードキャストバスである。
【００４２】
従来のＧＣＲＡ方式によるシェーパ２００のセル送信手段２０４の動作をシーケンサ方式によって説明する。シーケンサ方式とは、回線上で１セルの転送に要する時間を１タイムスロットとし、図１９に示すように、送信可能時刻の決定したセルをバッファに格納し、セルを格納するバッファヘのポインタとそのセルの送信可能時刻に対応するタイムスロット値から成る要素をタイムスロット値の順にソートする方式である。
【００４３】
シーケンサ方式では、主にポインタとタイムスロット値を要素とする配列構造で構成され、図１９に示す例では右側から送信可能時刻順に要素がソートされている。具体的には、図１９において、ポインタとタイムスロット値を要素とする配列構造６０５の各要素は隣の要素にシフトすることが可能な構造となっている。シーケンサは、シェーパ２００にセルが到着した際に、到着したセルを格納するバッファ６０６にセルを格納し、このバッファを示すように到着したセルを格納するバッファヘのポインタ６０７を設定し、スケジューリング手段２０３によって決定したセルの送信可能時刻に対応するタイムスロットの値を、到着したセルの送信可能時刻に対応するタイムスロット値６０８に設定することによって、到着したセルと送信可能時刻を対で記憶する。
【００４４】
次に、シーケンサ方式では、到着したセルの送信可能時刻に対応するタイムスロット値６０８を、ブロードキャストバス６０９を用いてポインタとタイムスロット値を要素とする配列構造６０５内の各要素のタイムスロット値と並列に比較し、配列構造６０５内の各要素のタイムスロット値が、到着したセルの送信可能時刻に対応するタイムスロット値６０８以降となる最初の要素の位置を挿入位置として、それ以降の全ての要素を左側にシフトし、到着したセルを格納するバッファへのポインタ６０７と到着したセルの送信可能時刻に対応するタイムスロット値６０８を挿入位置に格納することによって、要素を送信可能時刻順にソートする。
【００４５】
シーケンサ方式では、配列構造６０５の最も右の要素のタイムスロット値と、時計手段２０２が計数する時刻に対応するタイムスロット値を比較し、後者の値が前者の値以前となる場合は、最も右の要素のポインタが示すバッファに格納されたセルを回線に送信し、最も右の要素を配列構造６０５から削除し、残りの要素を右側にシフトすることによって、シーケンスに格納されているセルの中から送信可能時刻が現在時刻以前となるセルを検出して送信可能時刻が最も早いセルから送信可能時刻順に回線に送信する。
【００４６】
以上から明らかな通リ、従来のトークン方式によるシェーパ１００の送信タイミング生成手段１０４，１０５は、コネクション毎のトラヒック特性値に基づいたクロック信号によって、キューの先頭のセルが送信可能となったことを示すタイミング信号を生成していた。
【００４７】
また、従来のＧＣＲＡ式によるシェーパ２００のスケジューリング手段２０４は、シェーパにセルが到着した際にコネクションに応じた送信可能時刻を決定し、決定された送信可能時刻に基づいてパラメータの更新を行っていた。
【００４８】
このため、従来のトークン方式のシェーパ１００には、複数のコネクションが送信可能となるタイミングや時刻が同一となった場合、キューの先頭のセルが送信可能となったことを示すタイミング信号の生成から実際にセルが送信されるタイミングに対して遅延時間が発生する可能性がある。
【００４９】
また、従来のＧＣＲＡ方式のシェーパ２００では、セルの送信可能時刻から実際にセルが送信される時刻に対して遅延時間が発生する可能性があり、多数のコネクションに対してシェーピングを行う場合、これらの遅延時間が無視し得ない値となる可能性がある。例えば、４０９６コネクションに対するシェーピングを行っているシェーパにおいて、５１２コネクションの送信タイミングや送信可能時刻が同一となった場合、発生する遅延時間の最悪値は５１１セル時間となる。ここで、１セル時間とは、回線上で１セルの転送に要する時間（ＳＴＭ−１／ＳＴＳ−３ｃ回線で約２．７μ秒）とする。
【００５０】
一方、従来のトークン方式によるシェーパ１００の送信タイミング生成手段１０４，１０５は、キューの先頭のセルが送信可能となったことを示すタイミング信号の生成から、実際にセルが送信されるタイミングにおける遅延時間に係わらず、コネクション毎のトラヒック特性値に基づいたクロック信号に基づいて、タイミング信号を生成している。
【００５１】
また、従来のＧＣＲＡ方式によるシェーパ２００のスケジューリング手段２０３は、シェーパにセルが到着した際にコネクションに応じた送信可能時刻を決定し、セルの送信可能時刻からセルが実際に送信される時刻の間の遅延時間に係わらず、決定された送信可能時刻に基づいてパラメータの更新を行っている。
【００５２】
以上をまとめると、従来のシェーパには、あるコネクションに属するセルが送信可能となるタイミングや時刻から、実際にセルが送信されるタイミングや時刻の間に遅延時間が発生する可能性があるにも係わらず、送信タイミング生成手段やスケジューリング手段がこの遅延時間を考慮しない方式となっている。
【００５３】
このため、遅延時間が発生したコネクションに引き続き送信可能となるタイミングや時刻を待っているセルが存在する場合、遅延が生じたセルとこのセルの送信間隔は、遅延が生じなかった場合と比較して短くなり、セル遅延時間のゆらぎが許容値を越える可能性があるという問題点がある。例えば、４０９６コネクションに対するシェーピングを行っているシェーパにおいて、５１２コネクションの送信タイミングや送信可能時刻が同一となった場合、これらのコネクションにおける遅延時間は０から５１１セル時間となる。
【００５４】
一方、コネクションにおいて許容されるセル遅延時間のゆらぎの値が２５６セル時間であった場合、遅延時間が発生したコネクションに引き続き送信可能となるタイミングや時刻を待っているセルが存在すれば、セル遅延時間のゆらぎが許容値を越える可能性がある。この問題はシェーパにおけるクランピングの問題点として知られている。
【００５５】
従来のＧＣＲＡ方式によるシェーパ２００のスケジューリング手段２０３におけるクランピングの解決方法について説明する。図２０は、図１５のスケジューリング手段２０３の動作例を示すフローチャートであり、セル送信手段２０４としてリングバッファ方式を用いることを前提としている。このことについては、例えば、Ｆａｂｒｉｃｅ  Ｇｕｉｌｌｅｍｉｎ、  Ｐｉｅｒｒｅ  Ｂｏｙｅｒ、  Ｌｕｃ  Ｒｏｍｏｅｕｆ、  ”Ｔｈｅ  Ｓｐａｃｅｒ−Ｃｏｎｔｒｏｌｌｅｒ：  Ａｒｃｈｉｔｅｃｔｕｒｅ  ａｎｄ  Ｆｉｒｓｔ  Ａｓｓｅｓｍｅｎｔｓ、”  Ｐｒｏｃ．  ｏｆ  ｔｈｅ  ＩＦＩＰ  ＴＣ６  Ｗｏｒｋｓｈｏｐ  ｏｎ  Ｂｒｏａｄｂａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ、Ｊａｎ．１９９２の文献に開示されている。
【００５６】
この図２０に示すフローチャートでは、トラヒック特性値としてセル間隔の値と許容されるセル遅延時間のゆらぎを用い、セルの送信可能時刻を計算する際の現在時刻をｔａ、セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、セルが所属するコネクションに対応したパラメータ値をＬＲＴ、セルの送信可能時刻をｔｓ、リングバッファにおいてセルが格納されたバッファのタイムスロットに対応する時刻をｔｅとしている。
【００５７】
従来のＧＣＲＡ方式によるシェーパ２００のスケジューリング手段２０３は、図２０に示すように、まず、セルがシェーパに到着した際に、このセルが所属するコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎτ、パラメータ値ＬＲＴの入力を受ける。
【００５８】
スケジューリング手段２０３は、入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＬＲＴ、及び時計手段２０２が計数する現在時刻ｔａに基づいて、図２０のフローチャートに示された動作を開始する。
【００５９】
最初にｔｓの値をＬＲＴ＋Ｔとする（ステップ７０１）。次に、ｔｓ＜ｔａの関係が成立する場合は、ｔｓの値をｔａとし（ステップ７０２、７０３）、ｔｓ＜ｔａの関係が成立しない場合で、ｔｓ＞ｔａ＋τの関係が成立する場合は、セルを廃棄し（ステップ７０２、７０４、７０５）、ｔｓ＜ｔａの関係が成立しない場合で、ｔｓ＞ｔａ＋τの関係も成立しない場合は、ｔｓの値は変更しない（ステップ７０２、７０４）。
【００６０】
決定したセルの送信可能時刻ｔｓは、リングバッファ方式で実現されたセル送信手段２０４に出力される。
【００６１】
リングバッファ方式で実現きれたセル送信手段２０４は、ｔｓに対応するタイムスロットのバッファが空きの場合はそのバッファに、ｔｓに対応するタイムスロットのバッファに既に他のセルが格納されている場合は、それ以降のタイムスロットのバッファにセルを格納し、セルが格納されたバッファのタイムスロットに対応する時刻ｔｅをスケジューリング手段２０３に返し、ＬＲＴの値をｔｅに更新する（ステップ７０６）。更新されたパラメータの値ＬＲＴは、コネクション毎のトラヒック特性値，パラメータ値を記憶する手段２０１に出力され、記憶されているパラメータ値が更新される。
【００６２】
以上のアルゴリズムに基づくスケジューリング手段２０３は、パラメータの値をセルが実際に送信される時刻に基づいて更新することによって、セルの送信可能時刻から実際にセルが送信される時刻の間の遅延時間を考慮しているため、従来のＧＣＲＡ方式によるシェーパにおけるクランピングの問題を解決することができる。
【００６３】
しかし、このスケジューリング手段２０３は、リングバッファ方式における、セルの格納時にセルが実際に送信される時刻が決定される性質を利用しているため、カレンダ方式やシーケンサ方式等の、セルの格納時にはセルが実際に送信される時刻が決定されない性質を持つセル送信手段とは組み合わせて使用することができない。
【００６４】
リングバッファ方式では、セルを送信するタイムスロットを、送信可能時刻以降の最初の空きスロットに決定するため、リングバッファに先に到着した送信可能時刻が遅い時刻のセルが、後に到着した送信可能時刻の早いセルの前のタイムスロットに格納される可能性があり、実際に送信されるセルが必ずしも送信可能時刻順とはならず、セルの送信順序が逆転する可能性がある。
【００６５】
一方、カレンダ方式によるセル送信手段２０４は、送信可能時刻に対応するタイムスロットのリストの最後尾に順次セルを付け加えて格納する。
【００６６】
また、シーケンサ方式によるセル送信手段２０４は、セルを格納するバッファへのポインタとそのセルの送信可能時刻から成る要素を送信可能時刻順にソートするため、これらのセル送信手段では実際に送信されるセルは必ず送信可能時刻順となり、セルの送信順序が逆転する可能性は存在しない。
【００６７】
このため、以上のアルゴリズムに基づくスケジューリング手段２０３は、セル送信手段２０４としてリングバッファ方式を用いることを前提としているため、セルの送信順序が逆転する可能性がある。
【００６８】
従来のトークン方式のシェーパ１００の送信タイミング生成手段１０４，１０５におけるクランピングの解決方法は例えば、特開平９−１３０３９８号公報に開示されている。図１４に示された、従来のトークン方式のシェーパ１００の実現例における送信タイミング生成手段１０４、１０５は上記公報におけるセル送出要求手段、及びコネクション管理手段に相当する。
【００６９】
また、調停手段１０６は上記公報におけるセル多重化制御手段、及びセル送出手段に相当する。上記公報におけるセル多重化制御手段は、セル送出要求信号の選択又は非選択を表す競合結果情報を、該当するセル送出要求手段に返送する競合結果送信部を備えている。
【００７０】
また、セル送出要求手段は、送信された競合結果情報が自己が送出したセル送信要求信号の競合制御での負けを表している場合に、次セル送信要求タイミングをセル転送間隔だけ遅らせるようにセル送信カウント時間の値を操作する手段を備えている。
【００７１】
このため、上記公報におけるトークン方式のシェーパ１００の実現例では、複数のコネクションが送信可能となるタイミングが同一となり、同時に複数のセル送出要求手段からセル送出要求信号がセル多重化制御手段に入力され、競合制御の結果セル送出要求信号の発生から実際にセルが送出されるタイミングの間に遅延時間が発生しても、セル送出要求手段は次セル送信要求タイミングをセル転送間隔だけ遅らせることによって遅延時間を考慮することができる。
【００７２】
【発明が解決しようとする課題】
上記従来のＧＣＲＡ方式で実現されたシェーパにおけるクランピングの解決方法では、セル送信手段としてリングバッファ方式を用いることを前提としていた。
【００７３】
しかし、リングバッファ方式では、セルを送信するタイムスロットを、送信可能時刻以降の最初の空きスロットに決定するため、リングバッファに先に到着した送信可能時刻が遅い時刻のセルが、後に到着した送信可能時刻の早いセルの前のタイムスロットに格納される可能性があり、実際に送信されるセルが必ずしも送信可能時刻順とはならず、セルの送信順序が逆転するという問題点があった。
【００７４】
また、従来のＧＣＲＡ方式で実現されたシェーパにおけるクランピングの解決方法では、セルの格納時にセルが実際に送信される時刻が決定されるリングバッファ方式の性質を利用しているため、セル送信順序の逆転を抑止できるカレンダ方式やシーケンサ方式等を用いた、セルの格納時にセルが実際に送信される時刻が決定されない性質を持つセル送信手段とは組み合わせて使用することができない。
【００７５】
上記従来のトークン方式によるシェーパでは、セルの送信順序の逆転が生じることなく、クランピングの問題を解決することができるが、上記従来技術で述べた通り、個々のコネクション毎にセルの送信が可能となるタイミングを生成することによってシェーパを実現するトークン方式と、個々のコネクション毎にセルの送信可能時刻を計算し、時計手段が計数する現在時刻に基づいて送信可能時刻が現在時刻以前となるセルを検出して、そのセルを回線に送信するＧＣＲＡ方式は、根本的に動作原理が異なる方式である。
【００７６】
このため、トークン方式のシェーパにおけるクランピング問題の解決方法は、ＧＣＲＡ方式によるシェーパには適用できない。
【００７７】
以上のことから、従来のＧＣＲＡ方式で実現されたシェーパでは、クランピング問題の解決と、セルの送信順序の逆転を抑止を同時に満足することができなかったという問題点があった。
【００７８】
本発明は、この問題点を解決するために成されたものであり、その目的は、クランピング問題を解決し、かつセルの送信順序の逆転を抑止するＧＣＲＡ方式のシェーピング装置を提供することにある。
【００７９】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述及び添付図面によって明らかにする。
【００８０】
【課題を解決するための手段】
本願において開示される発明の概要を簡単に説明すれば、下記のとおりである。
【００８１】
（１）コネクション毎のトラヒック特性値及びパラメータ値を記憶する記憶手段と、現在時刻を計数する時計手段と、到着したセルが所属するコネクションに対応した前記トラヒック特性値、前記パラメータ値、及び時計手段が計数する現在時刻に基づいて、前記セルの送信可能時刻を決定し、前記パラメータ値の更新を行うスケジューリング手段と、前記スケジューリング手段によって送信可能時刻が決定されたセルから、前記時計手段が計数する現在時刻に基づいて、前記送信可能時刻が現在時刻以前となるセルを検出し、前記セルを回線に送信するセル送信手段とを備えたセルシェーピング装置であって、前記各コネクション毎に設けられ、先頭から到着順にセルを格納するキューと、到着したセルを前記セルが所属するコネクションに対応したキューに格納する入力手段とを備え、前記スケジューリング手段は、前記キューに格納されたセルが前記キューの先頭に達した際に、前記セルの送信可能時刻を計算して決定する手段と、前記セル送信手段がセルを回線に送信する際に、前記セルが所属するコネクションに対応するパラメータ値を更新する手段とを備え、前記セル送信手段は、前記スケジューリング手段が決定した送信可能時刻が現在時刻以前となるセルを検出し、前記送信可能時刻が最も早いセルをキューの先頭から取り出して回線に送信する手段を備える。
【００８２】
（２）（１）のセルシェーピング装置において、セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、前記セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、前記セルが所属するコネクションに対応したパラメータ値をＴＡＴ、前記セルの送信可能時刻をｔｓとすると、前記スケジューリング手段は、セルの送信可能時間ｔｓを計算する際に、ｔａ＜ＴＡＴ−τの関係が成立する場合に、セルの送信可能時刻ｔｓをＴＡＴ−τとし、ＴＡＴ−τ≦ｔａの関係が成立する場合に、セルの送信可能時刻ｔｓをｔａとして決定し、パラメータ値ＴＡＴを更新する際に、ｔｅ＜ＴＡＴの関係が成立する場合に、パラメータの値ＴＡＴをＴＡＴ＋Ｔに更新し、ＴＡＴ≦ｔｅの関係が成立する場合に、パラメータの値ＴＡＴをｔｅ＋Ｔに更新する手段を有する。
【００８３】
（３）（１）のセルシェーピング装置において、セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、前記セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、前記セルが所属するコネクションに対応したパラメータ値をＴＡＴ、前記セルの送信可能時刻をｔｓとすると、前記スケジューリング手段は、セルの送信可能時間ｔｓを計算する際に、ｔａ≦ＴＡＴ−τの関係が成立する場合に、セルの送信可能時刻ｔｓをＴＡＴ−τとし、ＴＡＴ−τ＜ｔａの関係が成立する場合に、セルの送信可能時刻ｔｓをｔａとして決定し、パラメータ値ＴＡＴを更新する際に、ｔｅ≦ＴＡＴの関係が成立する場合に、パラメータの値ＴＡＴをＴＡＴ＋Ｔに更新し、ＴＡＴ＜ｔｅの関係が成立する場合に、パラメータの値ＴＡＴをｔｅ＋Ｔに更新する手段を有する。
【００８４】
（４）（１）のセルシェーピング装置において、セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、前記セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、前記セルが所属するコネクションに対応したパラメータ値をＴＥＴ、前記セルの送信可能時刻をｔｓとすると、前記スケジューリング手段は、セルの送信可能時間ｔｓを計算する際に、ｔａ＜ＴＥＴの関係が成立する場合に、セルの送信可能時刻ｔｓをＴＥＴとし、ＴＥＴ≦ｔａの関係が成立する場合に、セルの送信可能時刻ｔｓをｔａとして決定し、パラメータ値ＴＥＴを更新する際に、ｔｅ＜ＴＥＴ＋τの関係が成立する場合に、パラメータの値ＴＥＴをＴＥＴ＋Ｔに更新し、ＴＥＴ＋τ≦ｔｅの関係が成立する場合に、パラメータの値ＴＥＴをｔｅ−τ＋Ｔに更新する手段を有する。
【００８５】
（５）（１）のセルシェーピング装置において、セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、前記セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、前記セルが所属するコネクションに対応したパラメータ値をＴＥＴ、前記セルの送信可能時刻をｔｓとすると、前記スケジューリング手段は、セルの送信可能時間ｔｓを計算する際に、ｔａ≦ＴＥＴの関係が成立する場合に、セルの送信可能時刻ｔｓをＴＥＴとし、ＴＥＴ＜ｔａの関係が成立する場合に、セルの送信可能時刻ｔｓをｔａとして決定し、パラメータ値ＴＥＴを更新する際に、ｔｅ≦ＴＥＴ＋τの関係が成立する場合に、パラメータの値ＴＥＴをＴＥＴ＋Ｔに更新し、ＴＥＴ＋τ＜ｔｅの関係が成立する場合に、パラメータの値ＴＥＴをｔｅ−τ＋Ｔに更新する手段を有する。
【００８６】
このように、上記本発明のセルシェーピング装置では、先頭から到着順にセルを格納するキューをコネクション毎に有し、到着したセルをそのセルが所属するコネクションに対応したキューに格納する入力手段を有し、キューに格納されたセルがそのキューの先頭に達した際に、スケジューリング手段がそのセルの送信可能時刻を決定し、セル送信手段が送信可能時刻が現在時刻以前となるセルを検出した際に、その送信可能時刻が最も早いセルをキューの先頭から取り出して回線に送信し、セル送信手段がセルを回線に送信する際に、スケジューリング手段が前記セルが所属するコネクションに対応するパラメータ値を更新するため、あるコネクションに属するセルが送信可能となる時刻から、実際にセルが送信される時刻の間に遅延時間が発生した場合であっても、パラメータの値をセルが実際に送信される時刻に基づいて更新することにより、セルの送信可能時刻から実際にセルが送信される時刻の間の遅延時間を考慮しており、クランピングの問題を解決することが可能となる。
【００８７】
かつ、キューに格納されたセルがそのキューの先頭に達した際に、スケジューリング手段がそのセルの送信可能時刻を決定し、セル送信手段が送信可能時刻が現在時刻以前となるセルを検出した際に、その送信可能時刻が最も早いセルをキューの先頭から取り出して回線に送信し、セル送信手段がセルを回線に送信する際に、スケジューリング手段が前記セルが所属するコネクションに対応するパラメータ値を更新することにより、セルがキューに格納される際に、セルが実際に送信される時刻を決定しないので、セル送信手段はセルを送信可能時刻順に送信することができ、セルが送信可能順にソートされないことによって生じるセルの送信順序の逆転を抑止することが可能になる。
【００８８】
【発明の実施の形態】
以下に、本発明の実施の形態を図面を参照して説明する。
【００８９】
図１は、本発明の一実施形態にかかるセルシェーピング装置（シェーパ）の構成を説明するための図である。
【００９０】
図１に示すように、本発明の実施形態にかかるシェーパ８００は、トラヒック特性値，パラメータ値を記憶する記憶部８０１と、現在時刻を計数する時計部８０２と、セルの送信可能時刻の決定及びパラメータ値の更新を行うスケジューリング部８０３と、セルの送信を行うセル送信部８０４と、セルを送信するコネクション毎に設けられたキュー８０５，８０６、コネクションからセルをキュー８０５，８０６に入力する入力部８０７とを備える。
【００９１】
次に本実施形態のシェーパ８００の動作について詳細に説明する。
【００９２】
記憶部８０１はコネクション毎のトラヒック特性値，パラメータ値を記憶する記憶手段であり、コネクションの識別子の値でアドレッシングされる配列で構成される。ここで、コネクションとはセルヘッダに含まれるＶＰＩ及びＶＣＩフィールドの一部、あるいは全部によって識別される仮想的なパスやチャネルを意味する。
【００９３】
図１に示すように、シェーパ８００に到着したセルは、入力部８０７によってセルが所属するコネクションに対応したキュー８０５，８０６等に格納される。
【００９４】
キュー８０５、８０６は、先頭から到着順にセルを格納するもので、各コネクション毎にそれぞれ独立して設けられる。セルがキューの先頭に達した際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、キューの先頭に達したセルのコネクションに対応したこれらの値がスケジューリング部８０３に入力される。
【００９５】
スケジューリング部８０３は、入力されたトラヒック特性値，パラメータ値、及び時計部８０２が計数する現在時刻に基づいて、キューの先頭に達したセルの送信可能時刻を決定してセル送信部８０４に出力する。
【００９６】
セル送信部８０４は、キューの先頭のセルへのポインタ情報とスケジューリング部８０３によって決定したセルの送信可能時刻を対で記憶する。
【００９７】
セル送信部８０４は、時計部８０２が計数する現在時刻に基づいて、送信可能時刻が現在時刻以前となるセルのポインタ情報を検出して、ポインタで示されるセルをキューの先頭から送信可能時刻順に取り出して回線に送信する。セルを回線に送信する際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、送信するセルのコネクションに対応したこれらの値がスケジューリング部８０３に入力される。
【００９８】
スケジューリング部８０３は、入力されたトラヒック特性値，パラメータ値、及び時計部８０２が計数する現在時刻に基づいて、パラメータ値の更新値を決定して、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１に出力し、記憶されているパラメータ値を更新する。
【００９９】
なお、トラヒック特性値，パラメータ値を記憶する記憶部８０１、時計部８０２は、従来のＧＣＲＡ方式によるシェーパのパラメータ値を記憶する記憶手段、及び時計手段を用い、また、キュー８０５，８０６、入力部８０７は、従来のトークン方式によるシェーパのキュー、及び入力手段を用いるので、その動作に関する説明は省略する。
【０１００】
次に、本実施形態のスケジューリング部８０３の動作を図２及び図３を用いて説明する。図２及び図３はスケジューリング部の動作例を示すフローチャートである。
【０１０１】
まず、セルがキューの先頭に達した際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、キューの先頭に達したセルのコネクションに対応したこれらの値がスケジューリング部８０３に入力されると、その入力されたトラヒック特性値，パラメータ値、及び時計部８０２が計数する現在時刻に基づいて、図２のフローチャートに示された以下の動作を開始する。
【０１０２】
スケジューリング部８０３は、従来のＧＣＲＡ方式によるシェーパのスケジューリング手段の動作に従って、セルの送信可能時刻を決定し（ステップ９０１）、その決定したセルの送信可能時刻は、セル送信部８０４に出力される。
【０１０３】
セルが回線に送信される際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、送信するセルのコネクションに対応したこれらの値がスケジューリング部８０３に入力される。
【０１０４】
スケジューリング部８０３は、入力されたトラヒック特性値，パラメータ値、及び時計部８０２が計数する現在時刻に基づいて、図３のフローチャートに示された以下の動作を開始する。
【０１０５】
スケジューリング部８０３は、従来のＧＣＲＡ方式によるシェーパのスケジューリング手段の動作に従って、パラメータ値の更新値を決定し（ステップ１００１）、その決定したパラメータ値の更新値は、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１に出力され、記憶されているパラメータ値が更新される。
【０１０６】
次に、本実施形態のセル送信部８０４について説明する。図４は、従来のカレンダ方式によるセル送信手段を、本実施形態のシェーパ８００のセル送信部８０４として適用するために、リストに格納される要素の情報を、キューの先頭のセルへのポインタとしたものである。
【０１０７】
図４において、１１０１は現在時刻に対応するリストを示すポインタ、１１０２，１１０３，１１０４は各々キューの先頭のセルへのポインタを格納するリストである。１１０７は送信可能時刻に達したキューの先頭のセルへのポインタを格納する送信リストである。
【０１０８】
セル送信部８０４は、図４に示すように、回線上で数セルの転送に要する時間を１タイムスロットとし、タイムスロットに対応するセルへのポインタを格納するリストを環状に並べ、送信可能時刻に達したタイムスロットに対応するリストに格納された全てのセルへのポインタを送信リストの後尾に移動させる。
【０１０９】
具体的には、図４において、現在時刻に対応するリストを示すポインタ１１０１が示すリストは、現在時刻のタイムスロットに対応するセルヘのポインタを格納する。
【０１１０】
また、現在時刻に対応するリストを示すポインタ１１０１は、時計部８０２が計数する時刻に基づいて更新される。
【０１１１】
セル送信部８０４は、図４に示すように、セルがキューの先頭に達した際に、スケジューリング部８０３によって決定したセルの送信可能時刻に対応するタイムスロットのリストの最後尾に、キューの先頭のセルへのポインタをリストの要素として順次付け加えて格納することによって、キューの先頭のセルヘのポインタと送信可能時刻を対で記憶する。
【０１１２】
セル送信部８０４は、図４に示すように、現在時刻に対応するリストを示すポインタ１１０１によって示される、送信可能時刻に達したタイムスロットに対応するリストに格納されたセルヘのポインタを全て送信リストの後尾に移動し、送信リストに格納されたセルへのポインタで示されるセルを、キューの先頭から取り出して順に回線に送信することによって、格納されているセルへのポインタの中から送信可能時刻が現在時刻以前となるセルへのポインタを検出して、ポインタが示すセルを送信可能時刻が最も早いセルから送信可能時刻順に回線に送信する。
【０１１３】
次に、上述した実施形態のセル送信部８０４の第２の実現例について図５を用いて説明する。この第２の実現例では、従来のシーケンサ方式によるセル送信手段を、シェーピング装置８００のセル送信部８０４として適用するために、セルを格納するバッファヘのポインタをキューの先頭のセルへのポインタとしたものである。
【０１１４】
図５において、１２０１，１２０２はキュー、１２０３はキューの先頭のセルへのポインタ、１２０４はキューの先頭のセルの送信可能時刻に対応するタイムスロット値、１２０５はポインタとタイムスロット値を要素とする配列構造、１２０６はキュー、１２０７はキューの先頭に達したセルヘのポインタ、１２０８はキューの先頭に達したセルの送信可能時刻に対応するタイムスロット値、１２０９はブロードキャストバスをそれぞれ示す。
【０１１５】
セル送信部８０４の第２の実現例では、図５に示すように、回線上で１セルの転送に要する時間を１タイムスロットとし、送信可能時刻が決定したキューの先頭のセルへのポインタと、そのセルの送信可能時刻に対応するタイムスロット値から成る要素をタイムスロット値の順にソートする。
【０１１６】
具体的には、図５において、ポインタとタイムスロット値を要素とする配列構造１２０５の各要素は隣の要素にシフトすることが可能な構造となっている。
【０１１７】
図５に示すセル送信部８０４の第２の実現例では、セルがキュー１２０６の先頭に達した際に、このキューの先頭を示すようにキューの先頭に達したセルへのポインタ１２０７を設定し、スケジューリング部８０３によって決定したセルの送信可能時刻に対応するタイムスロットの値を、１２０８のキューの先頭に達したセルの送信可能時刻に対応するタイムスロット値に設定することによって、キューの先頭のセルヘのポインタと送信可能時刻を対で記憶する。
【０１１８】
次に、図５に示すセル送信部８０４の第２の実現例では、キューの先頭に達したセルの送信可能時刻に対応するタイムスロット値１２０８を、ブロードキャストバス１２０９を用いてポインタとタイムスロット値を要素とする配列構造１２０５内の各要素のタイムスロット値と並列に比較し、配列構造１２０５内の各要素のタイムスロット値が、キューの先頭に達したセルの送信可能時刻に対応するタイムスロット値１２０８以降となる最初の要素の位置を挿入位置として、それ以降の全ての要素を左側にシフトし、キューの先頭に達したセルヘのポインタ１２０７とキューの先頭に達したセルの送信可能時刻に対応するタイムスロット値１２０８を挿入位置に格納することによって、要素を送信可能時刻順にソートする。
【０１１９】
図５に示すセル送信部８０４の第２の実現例では、配列構造１２０５の最も右の要素のタイムスロット値と、時計手段８０２が計数する時刻に対応するタイムスロット値を比較し、後者の値が前者の値以前となる場合は、最も右の要素のポインタが示すキューの先頭に格納されたセルを回線に送信し、最も右の要素を配列構造１２０５から削除し、残りの要素を右側にシフトすることによって、格納されているセルへのポインタの中から送信可能時刻が現在時刻以前となるセルへのポインタを検出して、ポインタが示すセルを送信可能時刻が最も早いセルから送信可能時刻順に回線に送信する。
【０１２０】
次に、上述の実施形態１のシェーピング装置８００におけるスケジューリング部８０３の処理は、従来のＧＣＲＡ方式のスケジューリング手段における処理を適用してきたが、本発明はこれに限定されるものではなく、例えば、以下の各実施例に示す処理でスケジューリング部８０３を実現してもよい。
【０１２１】
（実施例１）
図６及び図７は本実施例１のスケジューリング部８０３の処理を示すフローチャートである。以下、これら図６及び図７のフローチャートを用いて本実施例１のスケジューリング部８０３の動作について説明する。
【０１２２】
なお、これらのフローチャートでは、トラヒック特性値としてセル間隔の値と許容されるセル遅延時間のゆらぎを用い、セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、セルが所属するコネクションに対応したパラメータ値をＴＡＴ、セルの送信可能時刻をｔｓとしている。
【０１２３】
本実施例１のスケジューリング部８０３は、セルがキューの先頭に達した際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、キューの先頭に達したセルのコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＡＴが入力されると、その入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＡＴ、及び時計部８０２が計数する現在時刻ｔａに基づいて、図６のフローチャートに示された以下の動作を開始する。
【０１２４】
ｔａ＜ＴＡＴ−τの関係が成立する場合は、セルの送信可能時刻ｔｓをＴＡＴ−τとする（ステップ１３０１、１３０３）。
【０１２５】
ＴＡＴ−τ≦ｔａの関係が成立する場合は、セルの送信可能時刻ｔｓをｔａとする（ステップ１３０１、１３０２）。決定したセルの送信可能時刻ｔｓは、セル送信部８０４に出力される。
【０１２６】
セルが回線に送信される際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、キューの先頭に達したセルのコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＡＴが本実施例１のスケジューリング部８０３に入力される。
【０１２７】
本実施例１のスケジューリング部８０３は、入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＡＴ、及び時計部８０２が計数する現在時刻ｔｅに基づいて、図７のフローチャートに示された以下の動作を開始する。
【０１２８】
ｔｅ＜ＴＡＴの関係が成立する場合は、パラメータの値ＴＡＴをＴＡＴ＋Ｔに更新する（ステップ１４０１、１４０３）。
【０１２９】
ＴＡＴ≦ｔｅの関係が成立する場合は、パラメータの値ＴＡＴをｔｅ＋Ｔに更新する（ステップ１４０１、１４０２）。決定したパラメータ値の更新値ＴＡＴは、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１に出力され、記憶されているパラメータ値が更新される。
【０１３０】
なお、本実施例１のスケジューリング部８０３は、上記のアルゴリズムにおけるセル遅延時間のゆらぎの値τを０もしくは定数等の固定的な値に置き換えることによって、トラヒック特性値としてセル間隔の値のみを用いるシェーパにも適応可能である。
【０１３１】
（実施例２）
図８及び図９は本実施例２のスケジューリング部８０３の処理を示すフローチャートである。以下、これら図８及び図９のフローチャートを用いて本実施例２のスケジューリング部８０３の動作について説明する。
【０１３２】
なお、本実施例２のスケジューリング部８０３は、上述の実施例１のスケジューリング部８０３と異なる手段であるが、論理的には同一の動作を行うものである。
【０１３３】
なお、これらのフローチャートでは、トラヒック特性値としてセル間隔の値と許容されるセル遅延時間のゆらぎを用い、セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、セルが所属するコネクションに対応したパラメータ値をＴＡＴ、セルの送信可能時刻をｔｓとしている。
【０１３４】
本実施例２のスケジューリング部８０３は、セルがキューの先頭に達した際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、キューの先頭に達したセルのコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＡＴが入力されると、その入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＡＴ、及び時計部８０２が計数する現在時刻ｔａに基づいて、図８のフローチャートに示された以下の動作を開始する。
【０１３５】
ｔａ≦ＴＡＴ−τの関係が成立する場合は、セルの送信可能時刻ｔｓをＴＡＴ−τとする（ステップ１５０１、１５０３）。
【０１３６】
ＴＡＴ−τ＜ｔａの関係が成立する場合は、セルの送信可能時刻ｔｓをｔａとする（ステップ１５０１、１５０２）。決定したセルの送信可能時刻ｔｓは、セル送信部８０４に出力される。
【０１３７】
セルが回線に送信される際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、キューの先頭に達したセルのコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＡＴが本実施例２のスケジューリング部８０３に入力される。
【０１３８】
本実施例２のスケジューリング部８０３は、入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＡＴ、及び時計部８０２が計数する現在時刻ｔｅに基づいて、図９のフローチャートに示された以下の動作を開始する。
【０１３９】
ｔｅ≦ＴＡＴの関係が成立する場合は、パラメータの値ＴＡＴをＴＡＴ＋Ｔに更新する（ステップ１６０１、１６０３）。
【０１４０】
ＴＡＴ＜ｔｅの関係が成立する場合は、パラメータの値ＴＡＴをｔｅ＋Ｔに更新する（ステップ１６０１、１６０２）。決定したパラメータ値の更新値ＴＡＴは、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１に出力され、記憶されているパラメータ値が更新される。
【０１４１】
なお、本実施例２のスケジューリング部８０３も、上記のアルゴリズムにおけるセル遅延時間のゆらぎの値τを０もしくは定数等の固定的な値に置き換えることによって、トラヒック特性値としてセル間隔の値のみを用いるシェーパにも適応可能である。
【０１４２】
（実施例３）
図１０及び図１１は本実施例３のスケジューリング部８０３の処理を示すフローチャートである。以下、これら図１０及び図１１のフローチャートを用いて本実施例３のスケジューリング部８０３の動作について説明する。
【０１４３】
なお、本実施例３のスケジューリング部８０３は、上述の実施例１のスケジューリング部８０３と異なる手段であるが、論理的には同一の動作を行うものである。
【０１４４】
なお、これらのフローチャートでは、トラヒック特性値としてセル間隔の値と許容されるセル遅延時間のゆらぎを用い、セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、セルが所属するコネクションに対応したパラメータ値をＴＥＴ、セルの送信可能時刻をｔｓとしている。
【０１４５】
本実施例３のスケジューリング部８０３は、セルがキューの先頭に達した際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、キューの先頭に達したセルのコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＥＴが入力されると、その入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＥＴ、及び時計部８０２が計数する現在時刻ｔａに基づいて、図１０のフローチャートに示された以下の動作を開始する。
【０１４６】
ｔａ＜ＴＥＴの関係が成立する場合は、セルの送信可能時刻ｔｓをＴＥＴとする（ステップ１７０１、１７０３）。
【０１４７】
ＴＥＴ≦ｔａの関係が成立する場合は、セルの送信可能時刻ｔｓをｔａとする（ステップ１７０１、１７０２）。決定したセルの送信可能時刻ｔｓは、セル送信部８０４に出力される。
【０１４８】
セルが回線に送信される際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、キューの先頭に達したセルのコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎの値τ、パラメータ値ＴＥＴが本実施例３のスケジューリング部８０３に入力される。
【０１４９】
本実施例３のスケジューリング部８０３は、入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＥＴ、及び時計部８０２が計数する現在時刻ｔｅに基づいて、図１１のフローチャートに示された以下の動作を開始する。
【０１５０】
ｔｅ＜ＴＥＴ＋τの関係が成立する場合は、パラメータの値ＴＥＴをＴＥＴ＋Ｔに更新する（ステップ１８０１、１８０３）。
【０１５１】
ＴＥＴ＋τ≦ｔｅの関係が成立する場合は、パラメータの値ＴＥＴをｔｅ−τ＋Ｔに更新する（ステップ１８０１、１８０２）。決定したパラメータ値の更新値ＴＥＴは、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１に出力され、記憶されているパラメータ値が更新される。
【０１５２】
なお、本実施例３のスケジューリング部８０３も、上記のアルゴリズムにおけるセル遅延時間のゆらぎの値τを０もしくは定数等の固定的な値に置き換えることによって、トラヒック特性値としてセル間隔の値のみを用いるシェーパにも適応可能である。
【０１５３】
（実施例４）
図１２、図１３は本実施例４のスケジューリング部８０３の処理を示すフローチャートである。以下、これら図１２、図１３のフローチャートを用いて本実施例３のスケジューリング部８０３の動作について説明する。
【０１５４】
なお、本実施例４のスケジューリング部８０３は、上述の実施例１のスケジューリング部８０３と異なる手段であるが、論理的には同一の動作を行うものである。
【０１５５】
なお、これらのフローチャートでは、トラヒック特性値としてセル間隔の値と許容されるセル遅延時間のゆらぎを用い、セルの送信可能時刻を計算する際の現在時刻をｔａ、パラメータ値を更新する際の現在時刻をｔｅ、セルが所属するコネクションに対応したトラヒック特性値のセル間隔の値をＴ、許容されるセル遅延時間のゆらぎの値をτ、セルが所属するコネクションに対応したパラメータ値をＴＥＴ、セルの送信可能時刻をｔｓとしている。
【０１５６】
本実施例４のスケジューリング部８０３は、セルがキューの先頭に達した際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１から、キューの先頭に達したセルのコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＥＴが入力されると、その入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＥＴ、及び時計部８０２が計数する現在時刻ｔａに基づいて、図１２のフローチャートに示された以下の動作を開始する。
【０１５７】
ｔａ≦ＴＥＴの関係が成立する場合は、セルの送信可能時刻ｔｓをＴＥＴとする（ステップ１９０１、１９０３）。
【０１５８】
ＴＥＴ＜ｔａの関係が成立する場合は、セルの送信可能時刻ｔｓをｔａとする（ステップ１９０１、１９０２）。決定したセルの送信可能時刻ｔｓは、セル送信部８０４に出力される。
【０１５９】
セルが回線に送信される際に、コネクション毎のトラヒック特性値，パラメータ値を記憶する部８０１から、キューの先頭に達したセルのコネクションに対応したトラヒック特性値であるセル間隔の値Ｔと許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＥＴが本実施例４のスケジューリング部８０３に入力される。
【０１６０】
本実施例３のスケジューリング部８０３は、入力されたセル間隔の値Ｔ、許容されるセル遅延時間のゆらぎτ、パラメータ値ＴＥＴ、及び時計部８０２が計数する現在時刻ｔｅに基づいて、図１３のフローチャートに示された以下の動作を開始する。
【０１６１】
ｔｅ≦ＴＥＴ＋τの関係が成立する場合は、パラメータの値ＴＥＴをＴＥＴ＋Ｔに更新する（ステップ２００１、２００３）。
【０１６２】
ＴＥＴ＋τ＜ｔｅの関係が成立する場合は、パラメータの値ＴＥＴをｔｅ−τ＋Ｔに更新する（ステップ２００１、２００２）。決定したパラメータ値の更新値ＴＥＴは、コネクション毎のトラヒック特性値，パラメータ値を記憶する記憶部８０１に出力され、記憶されているパラメータ値が更新される。
【０１６３】
なお、本実施例４のスケジューリング部８０３も、上記のアルゴリズムにおけるセル遅延時間のゆらぎの値τを０もしくは定数等の固定的な値に置き換えることによって、トラヒック特性値としてセル間隔の値のみを用いるシェーパにも適応可能である。
【０１６４】
以上、説明してきたように、本実施形態及び実施例１〜４のセルシェーピング装置は、先頭から到着順にセルを格納するキューをコネクション毎に有し、到着したセルをそのセルが所属するコネクションに対応したキューに格納する入力手段を有し、キューに格納されたセルがそのキューの先頭に達した際に、スケジューリング手段がそのセルの送信可能時刻を決定し、セル送信手段が送信可能時刻が現在時刻以前となるセルを検出した際に、その送信可能時刻が最も早いセルをキューの先頭から取り出して回線に送信し、セル送信手段がセルを回線に送信する際に、スケジューリング手段が前記セルが所属するコネクションに対応するパラメータ値を更新するため、あるコネクションに属するセルが送信可能となる時刻から、実際にセルが送信される時刻の間に遅延時間が発生した場合であっても、パラメータの値をセルが実際に送信される時刻に基づいて更新することにより、セルの送信可能時刻から実際にセルが送信される時刻の間の遅延時間を考慮しており、クランピングの問題を解決することが可能となる。
【０１６５】
また同時に、キューに格納されたセルがそのキューの先頭に達した際に、スケジューリング手段がそのセルの送信可能時刻を決定し、セル送信手段が送信可能時刻が現在時刻以前となるセルを検出した際に、その送信可能時刻が最も早いセルをキューの先頭から取り出して回線に送信し、セル送信手段がセルを回線に送信する際に、スケジューリング手段が前記セルが所属するコネクションに対応するパラメータ値を更新するため、セルがキューに格納される際に、セルが実際に送信される時刻を決定しないので、セル送信手段はセルを送信可能時刻順に送信することができ、セルが送信可能順にソートされないことによって生じるセルの送信順序の逆転を抑止することが可能になる。
【０１６６】
また、セル送信手段へのセルの格納時にセルが実際に送信される時刻が決定されるという、リングバッファ方式に固有の性質を利用しておらず、カレンダ方式やシーケンサ方式等の、セルの格納時にはセルが実際に送信される時刻が決定されない性質を持つセル送信手段を実現手段として使用することが可能である。
【０１６７】
以上、本発明者によってなされた発明を、前記実施形態に基づき具体的に説明したが、本発明は、前記実施形態及び各実施例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは勿論である。
【０１６８】
【発明の効果】
本願において開示される発明によって得られる効果を簡単に説明すれば、下記のとおりである。
【０１６９】
セル送信手段がセルを回線に送信する際に、スケジューリング手段が前記セルが所属するコネクションに対応するパラメータ値を更新するため、あるコネクションに属するセルが送信可能となる時刻から、実際にセルが送信される時刻の間に遅延時間が発生した場合であっても、パラメータの値をセルが実際に送信される時刻に基づいて更新することにより、セルの送信可能時刻から実際にセルが送信される時刻の間の遅延時間を考慮しており、クランピングの問題を解決することが可能となる。
【０１７０】
また、セル送信手段がセルを回線に送信する際に、スケジューリング手段が前記セルが所属するコネクションに対応するパラメータ値を更新するため、セルがキューに格納される際に、セルが実際に送信される時刻を決定しないので、セル送信手段はセルを送信可能時刻順に送信することができ、セルが送信可能順にソートされないことによって生じるセルの送信順序の逆転を抑止することが可能になる。
【図面の簡単な説明】
【図１】本発明の一実施形態にかかるセルシェーピング装置の構成を説明するための図である。
【図２】本実施形態のスケジューリング手段の動作を示すフローチャートである。
【図３】本実施形態のスケジューリング手段の動作を示すフローチャートである。
【図４】本実施形態のセル送信手段の構成を説明するための図である。
【図５】本実施形態の第２のセル送信手段の構成を説明するための図である。
【図６】本実施例１のスケジューリング手段の動作を示すフローチャートである。
【図７】本実施例１のスケジューリング手段の動作を示すフローチャートである。
【図８】本実施例２のスケジューリング手段の動作を示すフローチャートである。
【図９】本実施例２のスケジューリング手段の動作を示すフローチャートである。
【図１０】本実施例３のスケジューリング手段の動作を示すフローチャートである。
【図１１】本実施例３のスケジューリング手段の動作を示すフローチャートである。
【図１２】本実施例４のスケジューリング手段の動作を示すフローチャートである。
【図１３】本実施例４のスケジューリング手段の動作を示すフローチャートである。
【図１４】従来のトークン方式によるシェーパの構成を説明するための図である。
【図１５】従来のＧＣＲＡ方式によるシェーパの構成を説明するための図である。
【図１６】従来のＧＣＲＡ方式によるシェーパのスケジューリング手段の動作を示すフローチャートである。
【図１７】リングバッファ方式によるセル送信手段を説明するための図である。
【図１８】カレンダ方式によるセル送信手段を説明するための図である。
【図１９】シーケンサ方式によるセル送信手段を説明するための図である。
【図２０】従来のＧＣＲＡ方式によるシェーパのクランピング問題を解決するスケジューリング手段の動作を示すフローチャートである。
【符号の説明】
１０１…入力手段、１０２，１０３…キュー、１０４，１０５…送信タイミング生成手段、１０６…調停手段、２０１…トラヒック特性値，パラメータ値を記憶する記憶手段、２０２…時計手段、２０３…スケジューリング手段、２０４…セル送信手段、８０１…トラヒック特性値，パラメータ値を記憶する記憶部、８０２…時計部、８０３…スケジューリング部、８０４…セル送信部、８０５，８０６…キュー、８０７…入力部。
【図１】
0003623907.tif 000002
【図２】
0003623907.tif 000003
【図３】
0003623907.tif 000004
【図４】
0003623907.tif 000005
【図５】
0003623907.tif 000006
【図６】
0003623907.tif 000007
【図７】
0003623907.tif 000008
【図８】
0003623907.tif 000009
【図９】
0003623907.tif 000010
【図１０】
0003623907.tif 000011
【図１１】
0003623907.tif 000012
【図１２】
0003623907.tif 000013
【図１３】
0003623907.tif 000014
【図１４】
0003623907.tif 000015
【図１５】
0003623907.tif 000016
【図１６】
0003623907.tif 000017
【図１７】
0003623907.tif 000018
【図１８】
0003623907.tif 000019
【図１９】
0003623907.tif 000020
【図２０】
0003623907.tif 000021