JP2000332762A - セル送出管理方法および装置 - Google Patents
セル送出管理方法および装置Info
- Publication number
- JP2000332762A JP2000332762A JP14165299A JP14165299A JP2000332762A JP 2000332762 A JP2000332762 A JP 2000332762A JP 14165299 A JP14165299 A JP 14165299A JP 14165299 A JP14165299 A JP 14165299A JP 2000332762 A JP2000332762 A JP 2000332762A
- Authority
- JP
- Japan
- Prior art keywords
- cell
- queues
- chained
- queue
- stored
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
を構成する場合、回路規模を抑え、処理を疑似化するこ
とで実用に適するセル送出管理装置を提供する。 【解決手段】 全伝送帯域を等比的に区切って複数の帯
域を定義し、各帯域毎に、複数のステップに区分された
連鎖待ち行列を対応させる。セルを連鎖待ち行列のいず
れかに登録する際には、登録するセルに加え、前順位、
後順位に蓄積されているセル各々のポインタを更新す
る。先頭ステップの先頭セルをプッシュする際には、先
頭セルの次に蓄積されているセルを、新たに先頭セルと
して指示した上で、先頭セルをプッシュする。連鎖待ち
行列の更新処理を行なう際には、各連鎖待ち行列の先頭
ステップと、次ステップとをマージし、それ以降のステ
ップについては、それぞれを1ステップずつシフトし、
さらに、最後尾のステップを空にする。
Description
(Asynchronous Transfer Mode)通信網に適用される、
セル送出管理装置に関する。より詳細には、セル送出管
理に際して、重み付け制御方法である等級別連鎖待ち行
列を用いる上で、複数の等級別連鎖待ち行列に蓄積され
ているセルを効率的に管理する方法に関する。また、そ
のような管理方法を適用した装置に関する。
データ通信など、様々のトラフィック特性を持つセル
を、個々の通信品質(サービス品質)を保証しつつ多重
化する必要がある。現在のATMネットワークでは、通
信品質クラスとしてCBR、VBRなど、いくつかのカ
テゴリーが定義されている。ATMスイッチでは、これ
らのクラスに応じて、フロー毎にセルスケジューリング
が必要になる。
方式として、重み付けラウンドロビン(Weighted Round
Robin)、DRR(Deficit Round Robin)、さらに、
VC毎にスケジューリングを行う方法など、多数提案さ
れている。
(通信帯域)は高速化の一途をたどっており、ATMス
イッチも高速化/大規模化する傾向にある。このような
状況に対して、従来行われていたようなセルスケジュー
リング方式では、スイッチの高速化/大規模化に対応す
ることが困難になりつつある。そこで近年では、セルフ
ローが大規模化したとしても対応可能なアルゴリズムと
して、CCQ(Chained and Classfied Queue:等級別
連鎖待ち行列)が注目されるようになっている。
ケジューリング方式は、セルを帯域値毎にクラス分け
し、それぞれのクラス毎に、セル送出時刻を算出したタ
イムテーブルを作成しする。個々のクラスは、このタイ
ムテーブルをもとにセルスケジューリングを行ない、最
後に、各クラス間で競合制御を行なって、どのクラスの
セルを送出するかを決定する方式である。
グ方式では、帯域値毎に分けられた各々のクラスは、複
数のステップから構成されているものである。このステ
ップは、一般的にはFIFOメモリとして動作する。し
たがってCCQセルスケジューリング方式では、マトリ
クス状に配置されたFIFOについて、それぞれのFI
FO動作に加えて、指数的にずらしたタイミングで並列
的に連鎖動作させなければならない。
るためには、セルをクラス分けする等級、そして各々の
等級が有するステップとも、数十〜数百という規模にな
る。すなわち、膨大な数のFIFOが、マトリクス状に
配置されることになる。これらのFIFOを並列的に連
鎖動作させるのであるから、並列的な処理量が膨大なも
のとなる。
単に並列動作させるのでは、回路規模の問題で実現性が
低い。したがってこの発明は、問題となる処理を疑似化
する多重化メカニズムを適用し、実用に適するセル送出
管理方法およびセル送出管理装置を提供する。
全伝送帯域を等比的に区切って複数の帯域を定義し、こ
れら定義された各帯域毎に、複数のステップに区分され
た連鎖待ち行列を対応させるとともに、コネクション
を、当該コネクションの帯域に応じて、その帯域に対応
付けられた連鎖待ち行列に登録して管理するセル送出管
理方法である。また、そのような方法でセル送出管理を
行なう装置である。
行列のいずれかに登録する際に、まず当該連鎖待ち行列
のいずれのステップに前記セルを登録するかを決定す
る。次いで、新たに登録するセルの前順位に蓄積されて
いるセル、新たに登録するセル、および新たに登録する
セルの後順位に蓄積されているセルについて、各々のポ
インタを更新する。最後に、新たに登録するセルが蓄積
されるステップの収容セル数を更新する。
ステップに蓄積されている先頭のセルについてプッシュ
要求が発生した場合には、先頭ステップについて、先頭
セルの次に蓄積されているセルを新たに先頭セルとして
指示し、プッシュ要求の発生した先頭セルをプッシュす
る。そして先頭ステップの収容セル数を更新する。
処理を行なう場合には、先頭ステップの最後尾のセルを
指示するポインタを、前記次ステップの最後尾のセルを
指示するポインタに変更することで、連鎖待ち行列の先
頭ステップと、次ステップとをマージする。次いで、以
降のステップについて、それぞれを1ステップずつシフ
トする処理を行ない、最後に、最後尾のステップを空に
する。
出管理は、複数の連鎖待ち行列の各々のステップに対応
して、各々のステップに蓄積されているセル数、各々の
ステップに蓄積されている先頭セルおよび最後尾セルを
指示するポインタを格納する記憶部を有する。この記憶
部は、前記複数の連鎖待ち行列の各々のステップに対応
して、マトリクス状に区分された複数の記憶領域を有す
る。
各々の先頭ステップ以外のステップと、記憶部内の複数
の記憶領域とは、各連鎖待ち行列の更新タイミングをカ
ウントすることによって得られる値から求まる関係に従
い、1対1に対応する。
発明の実施形態について説明する。まず図2に、この発
明の第1の実施形態によるセル送出管理装置のブロック
図を示す。セル送出管理装置100には、複数のコネク
ションが接続されている。図2では、コネクションAか
らコネクションCまで、3本のコネクションが接続され
ている状態を示す。
0、等級別連鎖待ち行列20、競合制御部30、および
制御部40を有する。前述したコネクションAからコネ
クションCまでの複数のコネクションは、セル送出管理
装置100内のセル振分部10に接続されている。等級
別連鎖待ち行列20は、セル振分部10の出力側に接続
されている。競合制御部30は、等級別連鎖待ち行列2
0の出力側に接続されている。また、等級別連鎖待ち行
列20内には、複数の等級別連鎖待ち行列が配置されて
いる。図2では、等級別連鎖待ち行列21から23ま
で、3の等級別連鎖待ち行列が配置されている例を示
す。
0に入力されるセルには、指数的な重み付けがされてい
る。各セルは、この指数的な重み付けごとに、複数の等
級のいずれかにクラス分けされる。それぞれの等級につ
いて、1以上の連鎖待ち行列が割り当てられる。図2に
示すセル送出管理装置100では、セルが3つの等級に
クラス分けされ、各クラスに1つの、すなわち等級別連
鎖待ち行列21ないし23が対応して割り当てられてい
る。
力されてくるセルを、そのセルの重み付けに応じて、対
応する等級別連鎖待ち行列21ないし23のいずれかに
振り分ける。実際には、セル送出管理装置100が受信
したセル自体が等級別連鎖待ち行列21ないし23に一
時蓄積されるのではなく、各セルの送出権(トークン)
が、等級別連鎖待ち行列21ないし23に一時蓄積され
る。
接続されており、等級別連鎖待ち行列20内の各待ち行
列へのトークンの登録、更新などを制御する。各トーク
ンは、等級別連鎖待ち行列の更新毎にステップをシフト
され、最終的にセル送出への競合に参加することとな
る。すなわち、等級別連鎖待ち行列21ないし23の先
頭までシフトされたトークンは競合制御部30における
競合制御に参加し、競合に勝ったトークンに対応するセ
ルが、最終的にセル送出管理装置100から出力され
る。
3へのトークンの登録、更新動作について、図を用いて
詳しく説明する。まず図1には、等級別連鎖待ち行列2
1の詳細な構造が示されている。等級別連鎖待ち行列2
1、そして等級別連鎖待ち行列22も、同様の構造を有
する。よって以下では、セル送出管理装置100に入力
されたセルが等級別連鎖待ち行列21に割り振られた場
合の、等級別連鎖待ち行列21でのトークンの登録、更
新などの制御について説明する。なお、入力されたセル
をいずれの等級別連鎖待ち行列に割り振るかを決定する
アルゴリズムについては、この発明の主要なポイントで
はないので詳細は省略する。
としてのステップ#0、ステップ#1、ステップ#2、
ステップ#3、および最後尾ステップとしてのステップ
#4を有する。これらのステップは、各々がFIFOメ
モリとして動作する。
蓄積されるが、各ステップには、トークンを収容してい
る数を保持する収容トークン数パラメータが設けられて
いる。各等級別連鎖待ち行列のすべてのステップは、さ
らに、それぞれが蓄積しているトークンの最初のもの、
および最後尾のものを特定するためのパラメーター(ポ
インタ値)を保持している。これらのパラメーターは、
各ステップ対応で設置されるレジスタに保持される。
ているすべてのトークンは、自トークンの次のトークン
を指示するポインタを有している。
ラメーターを格納するレジスタ、先頭トークンを示すパ
ラメーターを格納するレジスタ、ステップに蓄積されて
いる複数のトークン、そして最後尾トークンを示すパラ
メーターを格納するレジスタから構成されている様子
が、模式的に示されている。
合、そのセルに対応するトークンが、等級別連鎖待ち行
列21内のいずれかのステップに登録される。なお、セ
ル(トークン)をいずれのステップに登録するかを決定す
るアルゴリズムについても、この発明の主要なポイント
ではないので、詳細は省略する。
行列、およびステップが決定した場合、制御部40は、
以下のような制御を行なう。たとえば、新しいトークン
がステップ#2に登録される場合の制御について説明す
る。
て、新たに登録すべきトークンを与える。前述したよう
に各ステップはFIFOメモリとして動作するので、こ
のトークンはステップ#2内では最後に蓄積される。
ンを登録する場合、ステップ#2の最後尾のトークンの
位置を示すパラメーターの値を修正しなければならな
い。さらに、新たに登録されるトークンの前後において
トークンの順序が狂わないように、新たに登録されるト
ークンの前に蓄積されているトークン、新たに登録され
るトークン、そして新たに登録されるトークンの後に蓄
積されているトークンについて、自トークンの次のトー
クンを指示するポインタを変更しなければならない。
およびポインタの値が修正される。すなわち制御部40
は、まず、ステップ#2に保持されている、ステップ#
2の最後尾のトークンを指示するポインタ値を、新たに
登録するトークンを指示するポインタ値に書き換える
(a)。同時に、それまでステップ#2に保持されてい
る最後尾であったトークンが有するポインタを、新たに
登録するトークンを指示するように変更する(b)。
ポインタを、ステップ#3以降のステップであって、ト
ークンを1以上蓄積しているステップの、最初のトーク
ンを指示するように変更する(c)。図1に示した例で
は、ステップ#3がトークンを蓄積しているので、新た
に登録するトークンが有するポインタは、ステップ#3
が蓄積する最初のトークンを指示するように変更され
る。
録したステップ#2について、収容トークン数パラメー
タの値を1インクリメントする(d)。以上の処理を行
なうことにより、ステップ#2に新たなトークンが蓄積
され、各トークンの順序が新たに定義される。
テップ#0の先頭に位置するトークンは、競合制御部3
0での競合制御に参加する。競合制御部30での競合に
勝ったトークンは、等級別連鎖待ち行列から送出(プッ
シュ)される。このプッシュされたトークンに対応する
セルが、セル送出管理装置100から送出される。
プ#0の先頭に蓄積されているトークンが競合に勝ち、
等級別連鎖待ち行列21からプッシュされる場合の制御
について、図3を用いて説明する。
ステップ#0に保持されている、ステップ#0の最初の
トークンを指示するポインタ値を、その最初のトークン
の次のトークンを指示するポインタ値に書き換える
(a)。次いで制御部40は、ステップ#0について、
収容トークン数パラメータの値を1デクリメントする
(b)。以上の処理により、ステップ#0からトークン
が1プッシュされる。
れる。この更新の頻度は、その等級別連鎖待ち行列が扱
う重み、待ち行列内に連鎖されているステップの数など
に依存する。等級別連鎖待ち行列21について更新時刻
となった場合、制御部40が行なう制御について、図4
を用いて説明する。
テップ#0と、次のステップであるステップ#1とのマ
ージを行なう。
示 ステップ#0にトークンが蓄積されていた場合、ステッ
プ#0に保持されている、ステップ#0の最初のトーク
ンを指示するポインタ値はそのまま(その最初のトーク
ンを指示するように)維持しておく。一方、ステップ#
0になんらのトークンも蓄積されていなかった場合、ス
テップ#0に保持されている、ステップ#0の最初のト
ークンを指示するポインタ値を、ステップ#1以降のス
テップであって、トークンを1以上蓄積しているステッ
プの最初のトークンを指示するように変更する。
ンが蓄積されている。よって制御部40は、ステップ#
0の最初のトークンを指示するポインタ値を特に書き換
えることなく、ステップ#0に保持されている最初のト
ークンを指示するようにそのまま維持する。
指示 次に、ステップ#0に保持されている、ステップ#0の
最後尾のトークンを指示するポインタ値を、ステップ#
1以降のステップであって、トークンを1以上蓄積して
いるステップの最後尾のトークンを指示するように変更
する。
ンが蓄積されている。よって制御部40は、ステップ#
0の最後尾のトークンを指示するポインタ値を、ステッ
プ#1に保持されている最後尾のトークンを指示するよ
うに変更する。
メーターの更新 制御部40は最後に、ステップ#0について、収容トー
クン数パラメータの値を更新する。すなわち、ステップ
#0の収容トークン数パラメーターの値に、ステップ#
1の収容トークン数パラメーターの値を加算し、これを
新たにステップ#0の収容トークン数パラメーターの値
とする。以上の処理によって、ステップ#1に蓄積され
ていたトークンが、以後はステップ#0に蓄積されてい
るものとして扱われるようになる。
各ステップについて、一つ前のステップに移す処理を行
なう。すなわち、ステップ#2が保持する、ステップ#
2の先頭トークンへのポインタおよび最後尾トークンへ
のポインタ、そして収容トークン数パラメーターを、そ
れぞれステップ#1の各パラメーターに上書きする
(d)。同様にして、ステップ#3の保持する各パラメ
ーターを、それぞれステップ#2の各パラメーターに上
書きする(e)。さらに同様にして、ステップ#4の保
持する各パラメーターを、それぞれステップ#3の各パ
ラメーターに上書きする(f)。最後に、最後尾ステッ
プであるステップ#4が保持する収容トークン数パラメ
ーターを0にリセットする(g)。
プ#1とがマージされ、ステップ#2、ステップ#3お
よびステップ#4がそれぞれ一つ前のステップに移動
し、最後尾ステップであるステップ#4が空になる。
行列の更新処理について説明する。たとえば、等級別連
鎖待ち行列20として、図5(a)に示したように7等
級に区分された等級別連鎖待ち行列51ないし57が設
けられているとする。この場合、図5に示すように、各
等級の扱う重みは、指数的に区分されている。等級別連
鎖待ち行列51ないし57の具体的な構成は、図1に示
した等級別連鎖待ち行列21と同様であるので、詳細に
ついては説明を省略する。
0の待ち行列については毎回更新されるものとし、等級
1の待ち行列については2回に1回、等級2の待ち行列
については4回に1回・・・と、等級が1下がるにつれ
て、更新頻度が半分になる。すなわち、ある待ち行列の
更新頻度は、その待ち行列が扱う重みの指数値に比例す
る。
ると、各待ち行列の更新処理を多重化することができ
る。ここで図5(b)を参照しながら説明すれば、等級
0の待ち行列の更新処理は、毎更新処理時に行なう。一
方で、等級1〜等級6までの待ち行列の更新処理は、時
分割的に多重化することができる。したがって、等級0
の待ち行列の更新処理と、それ以外の待ち行列の更新処
理と、2つの更新処理を並列に行なえば足り、設定され
ている等級の数だけ並列処理を行なう必要はない。
では、等級別連鎖待ち行列を実現する上で、トークンの
登録、プッシュ、シフトなど、シリアルに発生する処理
の負担が従来の方法と殆ど変わらず、現実的な制御方法
を提供することができる。
FIFOやタイムテーブル方式に比べて、見かけの並列
処理量は大きいが、更新頻度を指数的に設定しているた
め、実際の並列処理数は2程度と、現実的なレベルの処
理量に抑えられる。
説明する。第1の実施形態では、等級別連鎖待ち行列の
各ステップが保持する各種パラメーターを、各ステップ
対応で設けられたレジスタに格納していた。しかし第2
の実施形態では、各待ち行列の先頭ステップに関するパ
ラメーターはレジスタに格納し、以降の各ステップが保
持する各種パラメーターについて、半導体メモリなどの
記憶装置に格納する。
すセル送出管理装置100の等級別連鎖待ち行列20、
および制御部40の構成が異なる。以下、その相違につ
いて説明する。
様、等級別連鎖待ち行列20は複数の等級別連鎖待ち行
列を有し、これらは、それぞれが複数のステップに区分
されている。ただし第2の実施形態では、各々の等級別
連鎖待ち行列の先頭ステップのみに、パラメーターを保
持するレジスタを設ける。そして、先頭ステップ以外の
ステップは、パラメーター保持用のレジスタを設けな
い、単にトークンを蓄積するFIFOメモリとして構成
する。
するための構成を、図6を用いて説明する。すなわち図
6は、各ステップについてのパラメーターを蓄積する構
成を記憶部60として表わした模式図である。この記憶
部60は、記憶装置61と、レジスタ62とから構成さ
れる。
構成される。記憶装置61は、セルがクラス分けされる
等級数、また各々の等級を構成するステップ数に応じ
て、マトリクス状に多数のステップ記憶領域が配置され
ている。
ップ記憶領域は、セルがクラス分けされる等級数と、各
々の等級を構成するステップ数より1小さい数とで定義
される。たとえば、セルがクラス分けされる等級数が
7、各々の等級を構成するステップが9である場合、記
憶装置61内には、7*(9−1)=56のステップ記
憶領域が形成される。このように記憶装置61に形成さ
れた各ステップ記憶領域#1ないし#8は、それぞれ、
各等級別連鎖待ち行列の先頭ステップ以外のステップに
ついて、収容トークン数パラメーター、それぞれが蓄積
しているトークンの最初のもの、および最後尾のものを
特定するためのパラメーター(ポインタ値)を格納す
る。
列の数と同数のレジスタを有する。これらのレジスタ
は、各等級別連鎖待ち行列の先頭ステップに関するパラ
メーターを格納する。
記憶装置61には、等級#0から等級#6までの7等
級、かつ、ステップ記憶領域#1からステップ記憶領域
#8までの8ステップ分のステップ記憶領域が形成され
ているのが理解されるであろう。そしてレジスタ62に
は、等級別連鎖待ち行列の数と同数の、レジスタ620
からレジスタ626が配置されているのが理解されるで
あろう。
各ステップのパラメーターを更新する処理をシリアルに
行なう。以下、具体的な処理について説明する。
ットカウンタ(TSC:図示せず)を有する。TSC
は、システムが管理する現在時刻をカウントし、そのカ
ウント値を制御部40に与える。制御部40は、このT
SCから取得したカウント値から、ステップスライド係
数を算出する。ステップスライド係数は、時間の関数で
あり、制御部40は、ステップスライド係数に基づい
て、先頭ステップ以外のステップについてのパラメータ
ーを格納するステップ記憶領域を決定する。
各ステップと、ステップに関するパラメーターを格納す
るステップ記憶領域とは、固定的に対応しているのでは
なく、時間の関数によって定められる動的な対応関係に
ある。換言すれば、先頭以外の各ステップと、記憶装置
61内のステップ記憶領域とは、時間の関数によって動
的に、しかし1対1に対応付けられる。ここで、あるス
テップ記憶領域と、記憶部60上のアドレスとが1対1
に対応していれば、両者間の具体的な対応関係は問わな
い。
テップ#3についてのパラメーターを参照しようとする
場合、ある時点ではステップ記憶領域#4を参照する
が、次の時点では同じステップ#3についてのパラメー
ターを参照するためにステップ記憶領域#5を参照する
ということになる。あるいは、同じステップ記憶領域#
4を、ある時点ではステップ#3についてのパラメータ
ーとして参照し、次の時点ではステップ#2についての
パラメーターとして参照するということになる。以下、
第2の実施形態でのトークンの登録、プッシュ、および
更新処理について、等級0を例にとって説明する。
要求は、基本的にはシリアルに発生する。セル送出管理
装置100がセルを受信した場合、制御部40は、この
セル(に対応するトークン)を、いずれのステップに登
録すべきかを決定する。ここで、新たなトークンを先頭
ステップに登録すべきと判断した場合、制御部40は、
レジスタ620に、各種パラメーターを書き込む。
に登録すべきと判断した場合、制御部40は、TSCを
参照してカウント値を取得し、ステップスライド係数を
算出する。次いで制御部40は、ステップスライド係数
に基づいて、その時点における当該ステップのパラメー
ターを格納すべきステップ記憶領域を選定する。
第1の実施形態について述べたと同様であるので、詳細
は省略する。制御部40は、こうして当該ステップ(ト
ークンを登録するステップ)に対応するレジスタ620
あるいはステップ記憶領域にアクセスし、各種パラメー
ターを書き込む。
的にはシリアルな事象として発生する。ただしトークン
のプッシュは、必ず先頭ステップから行われる。したが
ってトークンのプッシュ動作については、第1の実施形
態と同様にして、レジスタ620に保持されているパラ
メーターを書き換える。
と同様である。すなわち、各等級別連鎖待ち行列の更新
動作は、大別して、(1)先頭ステップと次ステップと
のマージ、(2)それ以降のステップを、各々一つ前に
移す、(3)最後尾ステップを空にするという3段階の
処理から構成される。
プとのマージは、次のように行なう。すなわち制御部4
0は、TSCの値を取得してステップスライド係数を算
出し、このステップスライド係数から、その時点での次
ステップのパラメーターを保持しているステップ記憶領
域を選定する。
場合、制御部40は、レジスタ620に保持されてい
る、ステップ#0の最初のトークンを指示するポインタ
値はそのまま(その最初のトークンを指示するように)
維持しておく。
蓄積されていなかった場合、制御部40は、ステップス
ライド係数から選定された、ステップ#1のパラメータ
ーを保持しているステップ記憶領域にアクセスする。こ
のステップ記憶領域に格納されている収容トークン数パ
ラメーターから、ステップ#1にトークンが格納されて
いると判断された場合、制御部40は先頭ステップとス
テップ#1とのマージを行なう。すなわち制御部40
は、レジスタ620に保持されている、ステップ#0の
最初のトークンを指示するポインタ値を、このステップ
記憶領域に格納されている最初のトークンを指示するポ
インタ値で更新する。
れていないと判断された場合、制御部40は、ステップ
スライド係数からさらに次のステップ(この場合、ステ
ップ#2)のパラメーターを格納しているステップ記憶
領域を選定し、上記の動作を繰り返す。
されている、ステップ#0の最後尾のトークンを指示す
るポインタ値を、次ステップに対応するステップ記憶領
域から読み出した、そのステップの最後尾のトークンを
指示するパラメーターに更新する。これで、等級0待ち
行列の先頭ステップの、最後尾のトークンが指示された
ことになる。
容トークン数パラメーターの値を修正する。これで、先
頭ステップと次ステップとのマージが行われたことにな
る。
ップについて、一つ前のステップに移す処理を行なう。
この処理は、第1の実施形態のように各ステップ対応で
レジスタが設けられている構成では、個々のレジスタの
内容を読み出し、前のステップに対応するレジスタの値
を更新していく処理が必要であった。しかし第2の実施
形態では、実際には何らの処理も行なわない。
プを空にする処理を行なう。すなわち制御部40は、ス
テップスライド係数から最後尾のステップのパラメータ
ーを格納しているステップ記憶領域を選定し、この記憶
領域に保持されている収容トークン数パラメーターを0
にリセットする。
ップとがマージされ、それ以降のステップがそれぞれ一
つ前のステップに移動し、最後尾ステップが空になる。
プを、各々一つ前に移す”処理については、実際には何
らの処理も行なわなかった。しかし、一つの等級別連鎖
待ち行列についての更新動作が終了し、次の更新動作を
行なう場合、制御部40は、再度ステップスライド係数
を算出し、該当するステップ記憶領域を選定する。この
時、時間の関数であるステップスライド係数により、前
回の更新動作時と今回の更新動作時とでは、参照するス
テップ記憶領域が変化している。
ステップ#3についてのパラメーターをステップ#2に
移す動作をしたとすれば、実際にパラメーターが格納さ
れているステップ記憶領域は同一でも、制御部40から
みた場合、前回にはステップ#3のパラメーターを参照
するためにアクセスしていたステップ記憶領域#4を、
今回はステップ#2のパラメーターを参照するためにア
クセスする。したがって、記憶装置61内の書き換えを
行なわなくとも、ステップのパラメーターが更新された
と同様の結果が得られる。
では、特にステップの更新動作の際、現実にメモリアク
セスを行なう処理を低減することができる。この結果、
処理量を増やすことなく、それぞれの連鎖待ち行列のス
テップ数を大きくすることができる。ステップ数を大き
くすることは、セル重み付けの精度をより細かくするこ
とになる。
行列の先頭ステップに関する情報を記憶するための構成
としてレジスタを用いた例について説明した。しかし、
先頭ステップについても、他の(それ以降の)ステップ
と同様に、記憶装置61内に形成されたステップ記憶領
域に情報を格納しても良い。
テップ記憶領域の数は、各々の等級を構成するステップ
数よりも多く設けても良い。たとえば各々の連鎖待ち行
列が9ステップに区分されている場合、記憶装置61に
は9よりも多い10ステップ分のステップ記憶領域を設
けても良い。このような場合でも、待ち行列の各ステッ
プとステップ記憶領域とが、ステップスライド係数によ
って1対1に対応されるようになっていればよい。
出管理方法により、並列に行なう処理量をほとんど増大
させずに、より実際的なセル送出管理方法が実現され
る。また、処理量を増やすことなく、セル重み付けの精
度をより細かくすることになる。
トークンの登録処理を示す図である。
る。
のトークンのプッシュ処理を示す図である。
更新処理を示す図である。
行列の更新処理について説明する図である。
ある。
Claims (10)
- 【請求項1】 全伝送帯域を等比的に区切って複数の帯
域を定義し、これら定義された各帯域毎に、複数のステ
ップに区分された連鎖待ち行列を対応させるとともに、 コネクションを、当該コネクションの帯域に応じて、そ
の帯域に対応付けられた前記連鎖待ち行列に登録して管
理するセル送出管理方法であって、 個々のセルを前記連鎖待ち行列のいずれかに登録する際
に、 当該連鎖待ち行列のいずれのステップに前記セルを登録
するかを決定する処理と、 前記登録するセルの前順位に蓄積されているセルのポイ
ンタ、前記登録するセルのポインタ、および前記登録す
るセルの後順位に蓄積されているセル各々のポインタを
更新する処理と、 前記登録するセルが蓄積されるステップの収容セル数を
更新する処理とを行なうことを特徴とするセル送出管理
方法。 - 【請求項2】 全伝送帯域を等比的に区切って複数の帯
域を定義し、これら定義された各帯域毎に、複数のステ
ップに区分された連鎖待ち行列を対応させるとともに、 コネクションを、当該コネクションの帯域に応じて、そ
の帯域に対応付けられた前記連鎖待ち行列に登録して管
理するセル送出管理方法であって、 前記連鎖待ち行列の先頭ステップに蓄積されている先頭
のセルについてプッシュ要求が発生した場合に、 前記先頭ステップについて、前記プッシュ要求の発生し
た前記先頭セルの次に蓄積されているセルを、新たに先
頭セルとして指示する処理と、 前記先頭ステップについて、前記プッシュ要求の発生し
た前記先頭セルをプッシュする処理と、 前記先頭ステップの収容セル数を更新する処理とを行な
うことを特徴とするセル送出管理方法。 - 【請求項3】 全伝送帯域を等比的に区切って複数の帯
域を定義し、これら定義された各帯域毎に、複数のステ
ップに区分された連鎖待ち行列を対応させるとともに、 コネクションを、当該コネクションの帯域に応じて、そ
の帯域に対応付けられた前記連鎖待ち行列に登録して管
理するセル送出管理方法であって、 前記連鎖待ち行列の更新処理を行なう場合に、 前記連鎖待ち行列の先頭ステップと、次ステップとをマ
ージする処理と、 以降のステップについて、それぞれを1ステップずつシ
フトする処理と、 さらに、最後尾のステップを空にする処理とを行なうこ
とを特徴とするセル送出管理方法。 - 【請求項4】 請求項3に記載のセル送出管理方法であ
って、 前記マージ処理では、前記先頭ステップの最後尾のセル
を指示するポインタを、前記次ステップの最後尾のセル
を指示するポインタに変更する処理を行ない、 前記シフト処理では、前記シフト処理の対象となる各ス
テップに関するパラメーターを、それぞれ前ステップに
関するパラメーターとして更新する処理を行ない、 前記空にする処理では、前記最後尾のステップの収容セ
ル数をリセットする処理を行なうことを特徴とするセル
送出管理方法。 - 【請求項5】 全伝送帯域を等比的に区切って定義され
た複数の帯域の各々に対応付けられた、各々が複数のス
テップに区分された複数の連鎖待ち行列を有し、 コネクションを、当該コネクションの帯域に応じて、そ
の帯域に対応付けられた前記複数の連鎖待ち行列のいず
れかに登録して管理するセル送出管理装置であって、 前記連鎖待ち行列の各々のステップは、そのステップに
蓄積されているセル数を格納する記憶部と、そのステッ
プに蓄積されている先頭セルおよび最後尾セルを指示す
るポインタを格納する記憶部とを有し、 前記セル送出管理装置は、個々のセルを前記連鎖待ち行
列のいずれかに登録する際に、前記登録するセルの前順
位に蓄積されているセルのポインタ、前記登録するセル
のポインタ、および前記登録するセルの後順位に蓄積さ
れているセルのポインタを更新する手段と、 前記登録するセルが蓄積されるステップの収容セル数を
更新する手段とを有することを特徴とするセル送出管理
装置。 - 【請求項6】 全伝送帯域を等比的に区切って定義され
た複数の帯域の各々に対応付けられた、各々が複数のス
テップに区分された複数の連鎖待ち行列を有し、 コネクションを、当該コネクションの帯域に応じて、そ
の帯域に対応付けられた前記複数の連鎖待ち行列のいず
れかに登録して管理するセル送出管理装置であって、 前記連鎖待ち行列の各々のステップは、そのステップに
蓄積されているセル数を格納する記憶部と、そのステッ
プに蓄積されている先頭セルおよび最後尾セルを指示す
るポインタを格納する記憶部とを有し、 前記セル送出管理装置は、前記複数の連鎖待ち行列の先
頭ステップについてセルのプッシュ動作を行なう際に、 前記先頭ステップについて、前記プッシュ要求の発生し
た前記先頭セルの次に蓄積されているセルを、新たに先
頭セルとして指示する手段と、 前記先頭ステップについて、前記プッシュ要求の発生し
た前記先頭セルをプッシュする手段と、 前記先頭ステップの収容セル数を更新する手段とを有す
ることを特徴とするセル送出管理装置。 - 【請求項7】 全伝送帯域を等比的に区切って定義され
た複数の帯域の各々に対応付けられた、各々が複数のス
テップに区分された複数の連鎖待ち行列を有し、 コネクションを、当該コネクションの帯域に応じて、そ
の帯域に対応付けられた前記複数の連鎖待ち行列のいず
れかに登録して管理するセル送出管理装置であって、 前記連鎖待ち行列の各々のステップは、そのステップに
蓄積されているセル数を格納する記憶部と、そのステッ
プに蓄積されている先頭セルおよび最後尾セルを指示す
るポインタを格納する記憶部とを有し、 前記セル送出管理装置は、前記連鎖待ち行列の更新処理
を行なう場合に、 前記先頭ステップの最後尾のセルを指示するポインタ
を、前記次ステップの最後尾のセルを指示するポインタ
に変更するマージ手段と、 以降のステップについて、前記シフト処理の対象となる
各ステップに関するパラメーターを、それぞれ前ステッ
プに関するパラメーターとして更新するシフト手段と、 前記最後尾のステップの収容セル数をリセットするリセ
ット手段とを有することを特徴とするセル送出管理装
置。 - 【請求項8】 全伝送帯域を等比的に区切って定義され
た複数の帯域の各々に対応付けられた、各々が複数のス
テップに区分された複数の連鎖待ち行列を有し、 コネクションを、当該コネクションの帯域に応じて、そ
の帯域に対応付けられた前記複数の連鎖待ち行列のいず
れかに登録して管理するセル送出管理装置であって、 前記複数の連鎖待ち行列の各々のステップに対応して、
各々のステップに蓄積されているセル数、各々のステッ
プに蓄積されている先頭セルおよび最後尾セルを指示す
るポインタを格納する記憶部とを有し、 前記記憶部は、前記複数の連鎖待ち行列の各々のステッ
プに対応して、マトリクス状に区分された複数の記憶領
域を有することを特徴とするセル送出管理装置。 - 【請求項9】 請求項8に記載のセル送出管理装置であ
って、 前記記憶部は、前記複数の連鎖待ち行列の各々の先頭ス
テップに対応して、それらの先頭ステップに蓄積されて
いるセル数、各々のステップに蓄積されている先頭セル
および最後尾セルを指示するポインタを格納する複数の
レジスタと、 前記複数の連鎖待ち行列の各々の先頭ステップ以外のス
テップに対応して、それらの先頭ステップに蓄積されて
いるセル数、各々のステップに蓄積されている先頭セル
および最後尾セルを指示するポインタを格納する記憶装
置とを有し、 前記記憶装置は、前記複数の連鎖待ち行列の各々の先頭
ステップ以外のステップに対応して、マトリクス状に区
分された複数の記憶領域を有することを特徴とするセル
送出管理装置。 - 【請求項10】 請求項9に記載のセル送出管理装置で
あって、 前記複数の連鎖待ち行列の各々の先頭ステップ以外のス
テップと、前記記憶装置内の複数の記憶領域とは、前記
複数の連鎖待ち行列の更新タイミングをカウントするこ
とによって得られる値から求まる関係に従い、1対1に
対応することを特徴とするセル送出管理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14165299A JP3673114B2 (ja) | 1999-05-21 | 1999-05-21 | セル送出管理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP14165299A JP3673114B2 (ja) | 1999-05-21 | 1999-05-21 | セル送出管理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000332762A true JP2000332762A (ja) | 2000-11-30 |
JP3673114B2 JP3673114B2 (ja) | 2005-07-20 |
Family
ID=15297036
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP14165299A Expired - Fee Related JP3673114B2 (ja) | 1999-05-21 | 1999-05-21 | セル送出管理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3673114B2 (ja) |
-
1999
- 1999-05-21 JP JP14165299A patent/JP3673114B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3673114B2 (ja) | 2005-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2922119B2 (ja) | 帯域規制装置及びパケット通信装置 | |
US7492782B2 (en) | Scalable crossbar matrix switching apparatus and distributed scheduling method thereof | |
US6359891B1 (en) | Asynchronous transfer mode cell processing system with scoreboard scheduling | |
US7856011B2 (en) | Reordering packets | |
US6661774B1 (en) | System and method for traffic shaping packet-based signals | |
EP1126666B1 (en) | Packet flow control apparatuses and methods for controlling the same | |
WO1997042737A1 (en) | Asynchronous transfer mode cell processing system with multiple cell source multiplexing | |
JPH1188360A (ja) | ショートセル多重装置 | |
US5748630A (en) | Asynchronous transfer mode cell processing system with load multiple instruction and memory write-back | |
US6728256B1 (en) | Shared buffer control device | |
US20030056073A1 (en) | Queue management method and system for a shared memory switch | |
JP2003527755A (ja) | ディジタル通信プロセッサ | |
US6181678B1 (en) | Binary-tree data element sorting device and ATM spacer comprising such a device | |
EP0843499A2 (en) | Method and device for the management of resources in ATM technique for weighted fair queuing (WFQ) applications | |
US20080031262A1 (en) | Load-balanced switch architecture for reducing cell delay time | |
JP3698079B2 (ja) | データ転送方法、データ転送装置及びプログラム | |
JPH1023037A (ja) | トラヒックシェーピング方式 | |
JP2000041067A (ja) | マルチプレクサ | |
US6807171B1 (en) | Virtual path aggregation | |
JP3673114B2 (ja) | セル送出管理装置 | |
JP3942237B2 (ja) | 転送レートコントローラおよび動作方法 | |
JPH09238159A (ja) | トラヒックシェーパ装置 | |
GB2308959A (en) | Data switching apparatus with fair queuing | |
US5794025A (en) | Method and device for performing modulo-based arithmetic operations in an asynchronous transfer mode cell processing system | |
EP0974216B1 (en) | Methods of regulating telecommunication traffic in an ATM network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050114 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050118 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050317 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050412 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050421 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |