JP3609255B2 - セルスケジューラを動作させる方法およびスケジューリングシステム - Google Patents

セルスケジューラを動作させる方法およびスケジューリングシステム Download PDF

Info

Publication number
JP3609255B2
JP3609255B2 JP11746698A JP11746698A JP3609255B2 JP 3609255 B2 JP3609255 B2 JP 3609255B2 JP 11746698 A JP11746698 A JP 11746698A JP 11746698 A JP11746698 A JP 11746698A JP 3609255 B2 JP3609255 B2 JP 3609255B2
Authority
JP
Japan
Prior art keywords
entry
queue
time
cell scheduler
cell
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.)
Expired - Fee Related
Application number
JP11746698A
Other languages
English (en)
Other versions
JPH10322369A (ja
Inventor
アレクサンダー・ヨッフェ
アリ・バーガー
Original Assignee
アプライド マイクロサーキッツ コーポレイション
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by アプライド マイクロサーキッツ コーポレイション filed Critical アプライド マイクロサーキッツ コーポレイション
Publication of JPH10322369A publication Critical patent/JPH10322369A/ja
Application granted granted Critical
Publication of JP3609255B2 publication Critical patent/JP3609255B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L12/5602Bandwidth control in ATM Networks, e.g. leaky bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5678Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
    • H04L2012/5679Arbitration or scheduling

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の分野】
この発明は一般に、非同期転送モード(ATM)ネットワークにおけるセルのスケジューリングに関し、より特定的にはATMネットワークにおけるタイムホイールセルスケジューリングに関する。
【0002】
【発明の背景】
次に簡単な先行技術のタイムホイールスケジューラを図示する図1を参照する。いくつかのキュー10がラウンドキュー12に組織される。各キュー10は、ゼロまたは1以上の伝送されるべき仮想チャネル(VC)エントリ14を含む。スケジューラの動作を制御するため2つのタイムポインタが用いられる。すなわち、タイムポインタ16と伝送ポインタ18とである。タイムポインタ16はセルタイムごとに1つのキュー10から次のキュー10へ時計回り方向に進み、それの後ろのキュー10内のすべてのVCエントリ14ができる限り早く伝送されねばならないことを指示する。伝送ポインタ18はタイムポインタ16に遅れていくかまたはそれとともに進み、どのキュー10が現在サービスされているかを指示する。典型的には、スケジューリングは、キュー10内にVCエントリ14を置く役割を持つ外部マネージャ(図示せず)により行なわれる。
【0003】
図1に示すような簡単なタイムホイールセルスケジューラは、いくつかの限界を有する。第1に、伝送ポインタ18が新しいキューに到達するたびに、たとえそのキューが空であったとしても、複雑な計算が必要である。計算が必要である結果、実現できるキューの総数も限られる。さらに、キューの数の制限によって、VCに割当てることができる最小帯域幅および帯域幅の分解能が限定される。VCの数または属性のいかなる変更のためにも、キュー内の固定エントリを決定するため複雑な計算を再び行なう必要がある。
【0004】
帯域幅の分解能が高く、多数のVCをサポートする能力を備える定ビット速度(CBR)および可変ビット速度(VBR)セルスケジューリングのための容易に実現される方法が必要である。
【0005】
【発明の概要】
したがって、この発明は、帯域幅の分解能が高く多数のVCをサポートすることができるCBRおよびVBRセルスケジューリングのための容易に実現される方法を提供する。
【0006】
この発明はさらに、伝送ポインタが新しいキューに到達するたびにそのキューが空であったとしても複雑な計算をせねばならないという必要性を取除く。
【0007】
さらに、この発明は、VCの数または属性が変更される場合に複雑な計算を行なう必要性を取除く。
【0008】
上述のおよび他の目的を達成するため、そしてこの発明の目的により、帯域幅の高分解能および多数のVCを可能にする、複雑な再計算の必要性を除去する自動再スケジューリング機構を備えた、タイムホイールATMセルスケジューラが提供される。
【0009】
スケジューラは、いくつかの回転キューと、1つまたは2つ以上の静止キューと、回転キューと静止キューとの間でVCエントリを転送するための手段とを含む。スケジューラは、各回転キューと静止キューとを漸進的に接触させることによって動作する。回転キュー内のすべてのVCエントリは静止キューに転送され、(もしエントリが存在すれば)セルタイムごとに物理チャネル上で1エントリが伝送される。
【0010】
伝送の直後に、VCの[m,i]属性(iセルタイムにおけるm個のセル)により決定されるステップにより、近づいてくる回転キューにエントリが再スケジュールされる。もしm/iが整数でなければ、その端数部分が累算器レジスタ内に記憶される。次の回転キューは静止キューと接触させられ、そのエントリが静止キューに付加される。次に、別のエントリが伝送され近づいてくるキューに再スケジュールされる。累算器レジスタがオーバーフローするとき、ちょうど伝送されたセルを再スケジュールするステップが、1だけ増分される。
【0011】
結果として、新しいVCが付加されるとしても、または、既存のVCの特性が変更されるとしても、大域的な計算は必要ない。加えて、m/iがキューの数に等しいかまたはキューの数よりも小さい限り、スケジューラは任意の数のVCを扱うことができる。
【0012】
キューが次第に申込み過剰になってくると、セルはそれらの所望のステップよりも長い間静止キュー内に待機することになってしまうだろう。この課題を解決するため、各VCエントリが近づいてくる適切な回転キュー内に位置づけられるとき、各VCエントリにタイムスタンプが付加される。セルが再スケジュールされるとき、そのタイムスタンプと現在時間とが比較され、もしその差がその計算されるステップよりも大きければ、そのセルは静止キューへと再スケジュールされる。
【0013】
結果的に、チャネルのさらなる申込み過剰に伴い、異なったVCの帯域幅が調節される。より高帯域幅のVCはより頻繁に静止キューへ再スケジュールされ、したがって、それらの帯域幅が減じられ、一方、より低帯域幅のVCはより稀に静止キューへ再スケジュールされ、したがってそれらに割当てられる帯域幅が維持される。したがって、スケジューラは再計算の必要なく、VCの数および特性の両方における変化に対処することができる。
【0014】
本明細書に組み込まれその一部をなす添付する図面は、この発明のいくつかの局面を示しており、本明細書とともにこの発明の原理を説明する役割を果たす。
【0015】
【詳細な説明】
図2は、図1の簡単な先行技術のスケジューラよりも優れた改良例を図示しており、キュー内の固定エントリを有するのではなく、自動再スケジューリング機構を用いている。このスケジューラの動作は、VCがサービスされるとき、その現在のキュー10から取除かれ何らかの予め定められた固定ステップにより近づいてくるキュー10内に位置づけられるという点を除いては、簡単な図1のスケジューラの動作といくらか類似的なものである。ステップはVCに割当てられる帯域幅を決定する。同一のキュー上に2つのVCが位置づけられるのでない限り、他のVCの数または特性の変化はそのVCの帯域幅に全く影響しない。しかし、サポートされる最小帯域幅は依然として、キューの数でチャネルの帯域幅を除したものに等しく、サポートされる別個の帯域幅はステップサイズで乗じた最小帯域幅に等しい。やはり、伝送ポインタが新しいキューに到達するたびごとにたとえそのキューが空であったとしても、計算が必要である。
【0016】
次にこの発明の好ましい実施例を図示する図3を参照する。図1に図示した背景技術におけると同様、キュー10のラウンドロビンキューからなるタイムホイール12が構築される。伝送がスケジュールされるVCエントリ14が、キュー10内に置かれる。タイムホイール12は、ATMセルタイムごとに1ステップずつ、時計回り方向に回転する。静止キュー20が、タイムホイール12の上の位置0に取付けられる。回転キュー10がタイムホイール12上の位置0に到達するごとに、そのエントリ14が静止キュー20に付加される。各セルタイムごとに1回、静止キュー20内のVCエントリ14が伝送のために取出され、近づいてくるキュー10内に置かれることによってすぐに再スケジュールされる。
【0017】
VCエントリを近づくキュー内に位置づけるために使用されるステップが、2つの尺度によって計算される。すなわち、(1)チャネルに割当てられる帯域幅および(2)他のVCに対する影響である。
【0018】
VCに割当てられる帯域幅は、たとえばmセルタイムにおけるi個のセルとして2つのパラメータiおよびmにより定義される。したがって、VCに割当てられる帯域幅は、VCを定義するパラメータであるi/mで乗じた全物理チャネルの帯域幅に等しい。理想的には、仮想チャネルからのセルは物理チャネル内に均一に拡散されねばならず、セルはm/iセルタイムごとに放出されねばならない。したがって、もしm/iが整数であれば、このステップは単にm/iとなるであろう。しかし、もしm/iが整数でなければ、図6に示すように、その整数部分は初期ステップにおいてとられ、その端数部分が累算器レジスタ22に付加される。図6においては、タイムホイール12は、回転キュー10により形成される円筒状の形で図示される。各回転キューは、VCエントリ14のキューのヘッドおよびテールを指し示すヘッドポインタ25およびテールポインタ27を含む。各VCエントリ14は、m/iに等しい実数であるステップ21と、累算器レジスタ22と、回転キュー10内の次のVCエントリ14へのポインタ29とを含む。累算器レジスタ22がオーバーフローするとき、ステップサイズが増やされる。このステップ生成を表1に、より正式に示すが、Aは累算器レジスタ22内に記憶される値であり、Sはステップ21に記憶される値すなわちm/iである。
【0019】
【表1】
Figure 0003609255
【0020】
静止キュー20内に2つ以上のVCエントリ14が存在するときは、各セルタイムごとに1つのVCがサービスされる。したがって、ステップサイズの計算においては、各VCエントリが静止キュー内で待機していた時間を考慮せねばならない。これは図6に示すように、VCエントリ14にタイムスタンプ23を付加することによって行なわれる。VCがサービスされるとき、そのタイムスタンプは現在時間と比較され、その差がステップサイズから減算される。もしその差がステップサイズよりも大きいかまたはステップサイズに等しければ、図5に図示するようにVCエントリ14は元の静止キュー20に置かれ、そうでなければ、図4に図示するようにそのステップサイズにより、近づいてくる回転キュー10に位置づけられる。
【0021】
このプロセスは表2に、より正式に示す。
【0022】
【表2】
Figure 0003609255
【0023】
図41は、表2のプロセスをさらに説明するフローチャートである。ステップ60において、静止キューにスケジュールされるVCエントリがあるか否かが判断される。もしあれば、これらのVCエントリの第1のものがステップ62において伝送される。次にステップ64において、その間にVCエントリが再スケジュールされるべき間隔が生成される。ステップ66において、VCエントリが再スケジュールされる。最後に、ステップ68においてキューが回転させられプロセスが繰返される。
【0024】
次に連続した時点におけるVCの帯域幅の割当のグラフを示す図7を参照する。物理チャネルが過剰に申し込まれるため、すなわち、全VCの帯域幅の合計が物理チャネルの帯域幅を超えるので、最も高い帯域幅24のVCのエントリは絶えず静止キューに戻され、その帯域幅を効率的に減じる。次にこのプロセスが2番目に高い帯域幅26を有するVCに対して繰返される。もし過剰な申込みが継続すれば、最終的にすべてのVCが同一の有効帯域幅を共有することになるだろう。
【0025】
図8から図11は、異なったVC構成に対するこの発明の機能の例を示す。
図8は、それぞれ3および1に等しいパラメータmおよびiを備えるタイムホイール12上の単一のVCエントリ14という単純な場合を図示する。タイム=0において、VCエントリ14は静止キュー20から1つ位置が離れた回転キュー10内にある。タイム=1において、回転キュー10は静止キュー20に到達し、その内容が静止キュー20に転送され、VCエントリ14は伝送ライン30上で伝送され、静止キューから3つ位置が離れた回転キュー10へと再スケジュールされる。タイム=2において、タイムホイール12が回転し、VCエントリ14がその上に位置づけられる回転キュー10を静止キュー20から2つ位置が離れたところにもっていく。
【0026】
図9は、それぞれ3および2に等しいパラメータmおよびiを備える、タイムホイール12上の単一のVCエントリ14を図示する。タイム=0において、VCエントリ14は、静止キュー20から1つ位置が離れた回転キュー10内にある。タイム=1において、回転キュー10は静止キュー20に到達し、その内容が静止キュー20へ転送され、VCエントリ14が伝送ライン30上で伝送され、静止キュー20から1つ位置が離れた回転キュー10へと再スケジュールされる。m/i=3/2に対するステップは1.5であろうから、0.5が累算器レジスタ22内に記憶される。タイム=2において、回転キュー10は静止キュー20に到達し、その内容が静止キュー20へと転送され、VCエントリ14が伝送ライン30上で伝送され、静止キュー20から2つ位置が離れた回転キュー10へと再スケジュールされ、累算器レジスタ22内に記憶される0.5がステップm/i=1.5に加算される。
【0027】
図10は、それぞれ2および1ならびに3および2に等しいパラメータmおよびiを備える、2つのVCエントリを備えるより複雑な例を示す。タイム=0において、静止キュー20上にあるm/i項=3/2のVCエントリ14が伝送ライン30上で伝送され、静止キュー20から1つ位置が離れた回転キュー10へと再スケジュールされる。m/i=3/2に対するステップは1.5であろうから、累算器レジスタ22内に0.5が記憶される。タイム=1において、回転キュー10は静止キュー20に到達し、その内容が静止キュー20へ転送される。静止キュー20上のm/i項=2/1のVCエントリ14は伝送ライン30上で伝送され、タイムスタンプ23がステップm/i=2に等しいため、静止キュー20の末尾に再スケジュールされる。タイム=2において、m/i項=3/2のVCエントリ14は伝送ライン30上で伝送され、現在時間とタイムスタンプ23との間の差は、累算器レジスタ22へと記憶された値0.5をm/i=1.5に加算して計算されたステップサイズよりも大きいので、静止キュー20の末尾へと再スケジュールされる。タイム=3において、静止キュー20上のm/i項=2/1のVCエントリ14は伝送ライン30上で伝送され、現在時間とタイムスタンプ23との間の差がステップサイズm/i=2に等しいので、静止キュー20の末尾に再スケジュールされる。
【0028】
図11は、それぞれ3および2ならびに4および3に等しいパラメータmおよびiの2つのVCエントリ14を備えるより複雑な例を示す。タイム=0において、静止キュー20上のm/i=4/3のVCエントリ14は伝送ライン30上で伝送され、静止キュー20から1つ位置が離れた回転キュー10へと再スケジュールされる。m/i=4/3に対するステップは1.34であろうから、0.34が累算器レジスタ22内に記憶される。タイム=1において、回転キュー10は静止キュー0に到達し、その内容が静止キュー20へと転送される。静止キュー20上のm/i=3/2のVCエントリ14は伝送ライン30上で伝送され、静止キュー20から1つ位置が離れた回転キュー10へと再スケジュールされる。m/i=3/2に対するステップは1.5であろうから、0.5が累算器レジスタ22内に記憶される。タイム=2において、m/i=4/3のVCエントリ14は伝送ライン30上で伝送され、現在時間とタイムスタンプ23との差が、累算器レジスタ2に記憶された値0.34をm/i=1.34に加算して計算されたステップサイズに等しいので、静止キュー20の末尾へと再スケジュールされる。タイム=3において、静止キュー20上のm/i=3/2のVCエントリ14は伝送ライン30上で伝送され、現在時間とタイムスタンプ23との差がステップサイズ2に等しいので、静止キュー20の末尾に再スケジュールされる。タイム=4において、m/i項=4/3のVCエントリ14は伝送ライン30上で伝送され、現在時間とタイムスタンプ23との差が、累算器レジスタ2へ記憶された値0.68をm/i=1.34に加算して計算されたステップサイズよりも大きいので、静止キュー20の末尾へと再スケジュールされる。タイム=5において、静止キュー20上のm/i項=1.5のVCエントリ14は伝送ライン30へと伝送され、現在時間とタイムスタンプ23との間の差がステップサイズ2よりも大きいので、静止キュー20の末尾へと再スケジュールされる。
【0029】
図12−図19は、m=3およびi=2での単一のスケジューラの動作をステップごとに絵的に示すものである。タイム=0(図12)において、単一のVCエントリ14はタイムホイール35上の位置32において回転キュー31へ入れられ、一方、静止キュー33は空であり、伝送ライン30上にはエントリは存在しない。タイム=1(図13)においては、VCエントリ14が静止キュー33に動かされ、伝送ライン30上で伝送され、そしてタイムホイール35上の位置32で回転キュー31へと再スケジュールされる。タイム=2(図14)において、VCエントリ14は再び静止キュー33へ動かされ、伝送されそして累積レジスタ22がオーバフローしてしまっているためタイムホイール35上の位置32ではなく位置34の回転キュー31へと再スケジュールされる。タイム=3(図15)において、キューがタイム=0における状態と同じ状態にあり、タイム0、1および2でのステップと同一のステップがそれぞれタイム3、4および5において繰返されることがわかる。したがって、タイム=7(図19)における伝送ライン30は、予想されるように、3セルタイムごとに2つのVCエントリが伝送されるパターンを示す。
【0030】
図20から図35は、それぞれ3および2ならびに9および2に等しいmおよびi項の2つのVCエントリ14を備える単一のスケジューラの動作をステップごとに絵的に示したものである。タイム=0(図20)において、2つのVCエントリ36および38が、タイムホイール35上の位置32の回転キュー31に入れられ、一方、静止キュー33は空であり伝送ライン30上にはエントリは存在しない。タイム=1(図21)において、VCエントリ36は静止キュー33へ動かされ、伝送ライン30上で伝送され、タイムホイール35上の位置32の回転キュー31へと再スケジュールされる。タイム=2(図22)において、VCエントリ36は静止キュー33へ動かされ、VCエントリ38は伝送ライン30上で伝送されタイムホイール35上の位置42の回転キュー31へと再スケジュールされる。タイム=3(図23)において、VCエントリ36は伝送ライン30上で伝送され、タイムホイール35上の位置32において回転キュー31へと再スケジュールされる。タイム=4(図24)において、VCエントリ36は静止キュー33へと動かされ、伝送ライン30上で伝送され、タイムホイール35上の位置32の回転キュー31へと再スケジュールされる。タイム=5(図25)において、VCエントリ36は静止キュー33へと動かされ、VCエントリ38は静止キュー33へと動かされ、伝送ライン30上で伝送されタイムホイール35上の位置44の回転キュー31へと再スケジュールされる。タイム=6(図26)において、VCエントリ36は静止キュー33へと動かされ、伝送ライン30上で伝送され、タイムホイール35上の位置32の回転キュー31へと再スケジュールされる。タイム=7(図27)において、VCエントリ36は静止キュー33へと動かされ、伝送ライン30上で伝送され、タイムホイール35上の位置32の回転キュー31へと再スケジュールされる。タイム=8(図28)において、VCエントリ36は静止キュー33へと動かされ、伝送ライン30上で伝送され、タイムホイール35上の位置34の回転キュー31へと再スケジュールされる。タイム=9(図29)において、VCエントリ38および36はともにタイムホイール35上の位置32の回転キュー31へと動かされる。タイム=10(図30)において、VCエントリ36は静止キュー33へ動かされ、VCエントリ38は静止キュー33へと動かされ、伝送ライン30上で伝送されタイムホイール35上の位置40の回転キュー31へと再スケジュールされる。タイム=11(図31)において、VCエントリ36は伝送ライン30上で伝送され、これが最後にサービスされてから経過した時間がそのステップに等しいため、静止キュー33へと再スケジュールされる。タイム=12(図32)において、VCエントリ36は伝送ライン30上で伝送され、タイムホイール35上の位置34の回転キュー31へと再スケジュールされる。タイム=13(図33)において、VCエントリ36は静止キュー33へと動かされ、伝送ライン30上で伝送され、タイムホイール35上の位置32の回転キュー31へと再スケジュールされる。タイム=14(図34)において、VCエントリ36は静止キュー33へと動かされ、VCエントリ38は静止キュー33へと動かされ、伝送ライン30上で伝送され、タイムホイール35上の位置44の回転キュー31へと再スケジュールされる。タイム=15(図35)において、VCエントリ36は伝送ライン30上で伝送され、タイムホイール35上の位置32の回転キュー31へと再スケジュールされる。
【0031】
最後に、特定の調停/優先順位機構を実現するため多数のスケジューラを並行して使用してもよい。たとえば、ある仮想チャネルに保証される最低帯域幅を割当てるが、同時に、このVCが取ることができる最大帯域幅をいかなる特定の時点においても限定したいと所望するかも知れない。図36は、保証される最低帯域幅50と可能な最大帯域幅52との関係を示す。この機能は並行して作業する2つのスケジューラにより達成できる。図37は、図3の好ましい実施例による2つのスケジューラを図示する。すなわち、保証される最低帯域幅50に等しい属性mおよびiを備えるスケジューラ54と、可能な最大帯域幅52と保証される最低帯域幅50との差に等しいm項およびi項を備えるスケジューラ56である。スケジューラ56にスケジューラ58より高い優先順位を与えることによって、所望の帯域幅割当が達成される。
【0032】
この機構のもう1つの説明が、図38の「二重漏れバケツ」により与えられる。バケツ70は液体72で満たされる。蛇口74および76が、異なった速度での液体72の漏斗78への排出を可能にする。もし、蛇口74が保証される最低帯域幅50に対応する速度に設定され、蛇口76が可能な最大帯域幅52と保証される最低帯域幅50との差に対応する速度に設定されるならば、液体72は、図37のスケジューラ56および58によりVCエントリがプロセシングされる態様と類比的な態様で漏斗78へと排出されるであろう。
【0033】
さらに、多数のスケジューラを使用して、いくつかのより低い帯域幅のチャネルが単一のより高い帯域幅のチャネルへと多重化されてもよい。図39においては、いくつかの低帯域幅チャネル間で帯域幅を分割するためスケジューラ80が使用され、各チャネルのVCに適切な帯域幅を割当てるためにスケジューラ82が使用される。
【0034】
さらに、単一の仮想パス(VP)上でいくつかのVCが搬送されてよい。図40において、いくつかのVPへ適切な帯域幅を提供するためスケジューラ84が使用され、一方、VPの1つの中のVCへ適切な帯域幅を提供するためスケジューラ86が使用される。
【0035】
この発明の一実施例によるATMセルスケジューリングのための集積回路のブロック図が図42に示される。ATMセルスケジューラ90は、タイムホイールスケジューラ92および重み付ラウンドロビン/厳密優先順位スケジューラ94を含む。重み付ラウンドロビンスケジューラは、同時係属中の共通の譲受人に譲渡されたアレクサンダー・ヨッフェ(Alexander Joffe )による「ATMセルスケジューリングのための重み付けされた公平なキューイングのための方法(METHOD FOR WEIGHTED FAIR QUEUEING FOR ATM CELL SCHEDULING )」と題された、代理人書類番号No.M−4079 USの米国特許出願連続番号第08/843,108号に記載されており、これはここにその全体として引用により援用される。
【0036】
ATMセルスケジューラ90はさらに、サブポートスケジューリングインターフェイスモジュール95、キュー速度記述子メモリインターフェイスモジュール96、OVC記述子メモリインターフェイス97およびキューイングコントローラインターフェイス98を含む。ATMセルスケジューラ90およびそれと対応するピンによって受送信される信号のリストを、付録A(表3から表7)に提供する。
【0037】
ATMセルスケジューラ90は、OVC記述子メモリインターフェイス97を通してVCごと回路100とインターフェイスする。VCごと回路100はVCセルを表わすデータ構造に対する記憶装置を含む。予め定められたプロトコルによりVCごと回路100と信号を交換することによって、ATMセルスケジューラ90は、図43のATMスイッチにおいてキューに入れられたATMセルのスケジューリングを制御する。図43は、この発明によるATMスイッチの構造を図示する。スイッチコントローラ120はスイッチインターフェイス110を通してVCごと回路100とインターフェイスする。VCごと回路100はスケジューラ90と信号を交換し、伝送のためのATMセルのスケジューリングを行なう。図43のATMスイッチは、アレクサンダー・ヨッフェ、アリ・バーガー(Ari Birger)およびプラバット・ミシュラ(Pravat Mishra )による「ATMスイッチにおけるセルキューイング(CELL QUEUING IN ATM SWITCHES)」と題された代理人書類番号No.M−4177 USの、米国特許出願連続番号第08/706,104号に記載されており、これはここにその全体として引用により援用される。
【0038】
【表3】
Figure 0003609255
【0039】
【表4】
Figure 0003609255
【0040】
【表5】
Figure 0003609255
【0041】
【表6】
Figure 0003609255
【0042】
【表7】
Figure 0003609255

【図面の簡単な説明】
【図1】簡単な先行技術のタイムホイールセルスケジューラの斜視図である。
【図2】この発明の一実施例による自動再スケジューリング機構を用いるタイムホイールセルスケジューラの斜視図である。
【図3】この発明の他実施例の斜視図である。
【図4】図3の静止キュー構成要素の部分図である。
【図5】図3の静止キュー構成要素の部分図である。
【図6】この発明の一実施例のブロック図である。
【図7】仮想チャネルの帯域幅の過剰申込の影響を表わす2次元グラフである。
【図8】この発明の動作における連続的な時点での図3の好ましい実施例の斜視図に示す、この発明の動作の例の図である。
【図9】この発明の動作における連続的な時点での図3の好ましい実施例の斜視図に示す、この発明の動作の例の図である。
【図10】この発明の動作における連続的な時点での図3の好ましい実施例の斜視図に示す、この発明の動作の例の図である。
【図11】この発明の動作における連続的な時点での図3の好ましい実施例の斜視図に示す、この発明の動作の例の図である。
【図12】この発明の動作を絵的に表わした図である。
【図13】この発明の動作を絵的に表わした図である。
【図14】この発明の動作を絵的に表わした図である。
【図15】この発明の動作を絵的に表わした図である。
【図16】この発明の動作を絵的に表わした図である。
【図17】この発明の動作を絵的に表わした図である。
【図18】この発明の動作を絵的に表わした図である。
【図19】この発明の動作を絵的に表わした図である。
【図20】この発明の動作を絵的に表わした図である。
【図21】この発明の動作を絵的に表わした図である。
【図22】この発明の動作を絵的に表わした図である。
【図23】この発明の動作を絵的に表わした図である。
【図24】この発明の動作を絵的に表わした図である。
【図25】この発明の動作を絵的に表わした図である。
【図26】この発明の動作を絵的に表わした図である。
【図27】この発明の動作を絵的に表わした図である。
【図28】この発明の動作を絵的に表わした図である。
【図29】この発明の動作を絵的に表わした図である。
【図30】この発明の動作を絵的に表わした図である。
【図31】この発明の動作を絵的に表わした図である。
【図32】この発明の動作を絵的に表わした図である。
【図33】この発明の動作を絵的に表わした図である。
【図34】この発明の動作を絵的に表わした図である。
【図35】この発明の動作を絵的に表わした図である。
【図36】この発明の多スケジューラ実施例において保証される最低帯域幅と可能な最大帯域幅との関係を表わす2次元グラフである。
【図37】この発明の多スケジューラ実施例の斜視図である。
【図38】「二重漏れバケツ」を絵的に示す図である。
【図39】この発明の多スケジューラ実施例を絵的に表わす図である。
【図40】この発明の多スケジューラ実施例を絵的に表わす図である。
【図41】VCエントリのプロセシングのフローチャートである。
【図42】この発明の一実施例による、ATMセルのスケジューリングのための集積回路のブロック図である。
【図43】この発明の一実施例による、ATMスイッチのブロック図である。
【符号の説明】
10 キュー
12 タイムホイール
14 VCエントリ
20 静止キュー

Claims (11)

  1. 予め定められたセル伝送時間間隔で仮想チャネルエントリの非同期タイムモード転送のためセルスケジューラを動作させる方法であって、セルスケジューラは、第1の型の複数のキューと、第2の型の少なくとも1つのキューと、第1のキューおよび第2のキューの間で仮想チャネルエントリを転送するための手段とを含み、
    前記方法は各間隔において、
    第1の型のキューの1つを反復して選択する工程と、
    もし選択されたキューが少なくとも1つのエントリを有していれば、選択されたキューから第1の型のすべてのエントリを第2の型のキューへ転送する工程と、
    第2の型のキューが少なくとも1つのエントリを有していれば、第2の型のキューのヘッドにあるエントリをエントリE1として選択して、そのエントリE1を伝送する工程と、
    現在時間が、そのエントリE1が次に伝送される時間よりも早ければ、前記エントリE1を、第1の型のキューの1つのテールに付け加える工程と、
    現在時間が、そのエントリE1が次に伝送される時間よりも早くなければ、前記エントリE1を、第2の型のキューのテールに付け加える工程とを含む、セルスケジューラを動作させる方法。
  2. 現在時間が、そのエントリE1が次に伝送される時間よりも早いか否かを決定する工程は、エントリE1が最後に伝送されてからエントリE1が次に伝送される時間までの時間間隔を表すステップを決定する工程を含み、前記ステップは整数であり、
    前記ステップを決定する工程は、
    ステップサイズを累算された値に加算する工程を含み、前記ステップサイズはエントリE1の連続した伝送間の所望の時間間隔を表す予め規定された値であり、累算された値はエントリE1の連続した伝送にわたって累算されたステップサイズの累算された端数部分を表し、前記ステップを決定する工程はさらに、
    累算された値の整数部分を抽出する工程含み、整数部分は前記ステップであり、前記ステップを決定する工程はさらに、
    累算された値から整数部分を減算する工程を含む、請求項1に記載のセルスケジューラを動作させる方法。
  3. エントリE1が次に伝送される前記時間を示すタイムスタンプ値を更新する工程をさらに含み、タイムスタンプ値を更新する工程は前記ステップをタイムスタンプ値に加算する工程を含む、請求項に記載のセルスケジューラを動作させる方法。
  4. 現在時間を更新する工程をさらに含む、請求項1〜3のいずれかに記載のセルスケジューラを動作させる方法。
  5. 予め定められたセル伝送時間間隔での仮想チャネルエントリの非同期タイムモード転送のためのセルスケジューラであって、セルスケジューラは、
    第1の型の複数のキューと、
    第2の型の少なくとも1つのキューと、
    以下の処理を実行する第1の手段とを含み、
    前記第1の手段は、
    第1の型のキューの1つを反復して選択する処理と、
    もし選択されたキューが少なくとも1つのエントリを有していれば、選択されたキューから第1の型のすべてのエントリを第2の型のキューへ転送する処理と、
    第2の型のキューが少なくとも1つのエントリを有していれば、第2の型のキューのヘッドにあるエントリをエントリE1として選択して、そのエントリE1を伝送する処理と、
    現在時間が、そのエントリE1が次に伝送される時間よりも早ければ、前記エントリE1を、第1の型のキューの1つのテールに付け加える処理と、
    現在時間が、そのエントリE1が次に伝送される時間よりも早くなければ、前記エントリE1を第2の型のキューのテールに付け加える処理とを実行する、セルスケジューラ。
  6. 第1の手段は、エントリE1のためのステップを決定する手段をさらに含み、そのステップは、エントリE1が最後に伝送されてからエントリE1が次に伝送される時間までの時間間隔を示し、
    ステップを決定する手段は、
    ステップサイズとともに累算された値の合計の整数部分を計算する手段を含み、前記ステップサイズはエントリE1の連続した伝送間の所望の時間間隔を表す予め規定された値であり、累算された値はエントリE1の連続した伝送にわたって累算されたステップサイズの累算された端数部分を表し、整数部分は前記ステップであり、前記ステップを決定する手段はさらに、
    累算された値を更新する手段含む、請求項5に記載のセルスケジューラ。
  7. 第1の手段は、そのエントリE1が次に伝送される時間を示すタイムスタンプ値を保持する手段を含む、請求項5または6に記載のセルスケジューラ。
  8. 仮想チャネルエントリの非同期タイムモード転送で使用されるスケジューリングシステムであって、前記システムは第1および第2のセルスケジューラを含み、第1のセルスケジューラは第1の優先順位を有し、第2のセルスケジューラは第1の優先順位よりも低い第2の優先順位を有し、第1のセルスケジューラおよび第2のセルスケジューラの少なくとも1つは請求項5または6の構成を有する、スケジューリングシステム。
  9. 第1のセルスケジューラおよび第2のセルスケジューラのそれぞれは、請求項5または6の構成を有する、請求項8に記載のスケジューリングシステム。
  10. 仮想チャネルエントリの非同期タイムモード転送で使用されるスケジューリングシステムであって、前記システムは第1および第2のセルスケジューラを含み、第1のセルスケジューラの出力ラインは第2のセルスケジューラの入力ラインと結合され、第1のセルス
    ケジューラおよび第2のセルスケジューラの少なくとも1つは請求項5または6の構成を有する、スケジューリングシステム。
  11. 第1のセルスケジューラおよび第2のセルスケジューラの一方は、第1のセルスケジューラおよび第2のセルスケジューラの他方よりも低い優先順位を有する、請求項10に記載のスケジューリングシステム。
JP11746698A 1997-04-25 1998-04-27 セルスケジューラを動作させる方法およびスケジューリングシステム Expired - Fee Related JP3609255B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/845,710 US6041059A (en) 1997-04-25 1997-04-25 Time-wheel ATM cell scheduling
US08/845710 1997-04-25

Publications (2)

Publication Number Publication Date
JPH10322369A JPH10322369A (ja) 1998-12-04
JP3609255B2 true JP3609255B2 (ja) 2005-01-12

Family

ID=25295914

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11746698A Expired - Fee Related JP3609255B2 (ja) 1997-04-25 1998-04-27 セルスケジューラを動作させる方法およびスケジューリングシステム

Country Status (3)

Country Link
US (1) US6041059A (ja)
EP (1) EP0874531A3 (ja)
JP (1) JP3609255B2 (ja)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208652B1 (en) * 1997-06-13 2001-03-27 Fore Systems, Inc. Increment scheduler
US6154770A (en) * 1997-10-30 2000-11-28 Merrill Lynch & Co. Inc. Internetwork communication system using tiers of configurable multiple bandwidth capacity modes of operation
US6597698B1 (en) * 1997-12-19 2003-07-22 Telefonaktiebolaget Lm Ericsson (Publ) Coordinated cell discharge from ATM queue
US6563798B1 (en) 1998-06-29 2003-05-13 Cisco Technology, Inc. Dynamically created service class-based routing tables
US6529498B1 (en) 1998-04-28 2003-03-04 Cisco Technology, Inc. Routing support for point-to-multipoint connections
US6600724B1 (en) 1998-04-28 2003-07-29 Cisco Technology, Inc. Routing table structures
US6256309B1 (en) * 1998-04-28 2001-07-03 Cisco Technology, Inc. Quality of service sensitive routes precomputed in bandwidth brackets
GB2337406B (en) * 1998-05-11 2003-05-14 Fujitsu Ltd Scheduling circuitry and methods
US6724767B1 (en) 1998-06-27 2004-04-20 Intel Corporation Two-dimensional queuing/de-queuing methods and systems for implementing the same
US6735773B1 (en) 1998-06-27 2004-05-11 Intel Corporation Method and apparatus for issuing commands to a network processor configured to provide a plurality of APIs
US6657959B1 (en) * 1998-06-27 2003-12-02 Intel Corporation Systems and methods for implementing ABR with guaranteed MCR
US6728249B2 (en) 1998-06-27 2004-04-27 Intel Corporation System and method for performing cut-through forwarding in an ATM network supporting LAN emulation
US6603768B1 (en) 1998-06-27 2003-08-05 Intel Corporation Multi-protocol conversion assistance method and system for a network accelerator
US6604136B1 (en) 1998-06-27 2003-08-05 Intel Corporation Application programming interfaces and methods enabling a host to interface with a network processor
US6661774B1 (en) * 1999-02-16 2003-12-09 Efficient Networks, Inc. System and method for traffic shaping packet-based signals
US6813249B1 (en) 1999-02-16 2004-11-02 Efficient Networks, Inc. System and method for prefetching data
US6625122B1 (en) * 1999-11-24 2003-09-23 Applied Micro Circuits Corporation Selection of data for network transmission
AU2001232776A1 (en) * 2000-02-23 2001-09-03 Jean Pierre Bordes Method and device for data traffic shaping
US6810031B1 (en) 2000-02-29 2004-10-26 Celox Networks, Inc. Method and device for distributing bandwidth
US7099330B2 (en) * 2001-01-10 2006-08-29 Lucent Technologies Inc. Method and apparatus for integrating guaranteed-bandwidth and best-effort traffic in a packet network
US7042843B2 (en) * 2001-03-02 2006-05-09 Broadcom Corporation Algorithm for time based queuing in network traffic engineering
EP1393194B1 (en) * 2001-04-27 2012-09-26 Cisco Technology, Inc. Weighted fair queuing-based methods and apparatus for protecting against overload conditions on nodes of a distributed network
US7317683B2 (en) * 2001-11-01 2008-01-08 International Business Machines Corporation Weighted fair queue serving plural output ports
US6973036B2 (en) 2001-11-01 2005-12-06 International Business Machines Corporation QoS scheduler and method for implementing peak service distance using next peak service time violated indication
US7103051B2 (en) * 2001-11-01 2006-09-05 International Business Machines Corporation QoS scheduler and method for implementing quality of service with aging time stamps
US7310345B2 (en) 2001-11-01 2007-12-18 International Business Machines Corporation Empty indicators for weighted fair queues
US6982986B2 (en) * 2001-11-01 2006-01-03 International Business Machines Corporation QoS scheduler and method for implementing quality of service anticipating the end of a chain of flows
US7046676B2 (en) 2001-11-01 2006-05-16 International Business Machines Corporation QoS scheduler and method for implementing quality of service with cached status array
US7187684B2 (en) * 2001-11-01 2007-03-06 International Business Machines Corporation Weighted fair queue having extended effective range
US7280474B2 (en) 2001-11-01 2007-10-09 International Business Machines Corporation Weighted fair queue having adjustable scaling factor
US7539756B2 (en) * 2002-01-31 2009-05-26 Darby & Mohaine, L.L.C. Method and system of data packet transmission timing for controlling bandwidth
US7680043B2 (en) * 2002-03-20 2010-03-16 International Business Machines Corporation Network processor having fast flow queue disable process
US7257124B2 (en) * 2002-03-20 2007-08-14 International Business Machines Corporation Method and apparatus for improving the fairness of new attaches to a weighted fair queue in a quality of service (QoS) scheduler
US7110411B2 (en) * 2002-03-25 2006-09-19 Erlang Technology, Inc. Method and apparatus for WFQ scheduling using a plurality of scheduling queues to provide fairness, high scalability, and low computation complexity
JP5609584B2 (ja) * 2010-08-30 2014-10-22 富士通株式会社 シェーピング装置及び方法
JP5416168B2 (ja) 2011-05-19 2014-02-12 富士通テレコムネットワークス株式会社 通信装置

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2686844A (en) * 1953-04-13 1954-08-17 Bell Telephone Labor Inc Telephone set
FR2616604B1 (fr) * 1987-06-15 1989-09-22 Lespagnol Albert Equipement de reconstitution et multiplexage de trames d'origines diverses constituees de paquets de longueur fixe en nombre variable
JP2860661B2 (ja) * 1989-03-14 1999-02-24 国際電信電話 株式会社 Atm交換機
US5231633A (en) * 1990-07-11 1993-07-27 Codex Corporation Method for prioritizing, selectively discarding, and multiplexing differing traffic type fast packets
US5136584A (en) * 1990-07-11 1992-08-04 At&T Bell Laboratories Hardware interface to a high-speed multiplexed link
US5233606A (en) * 1991-08-02 1993-08-03 At&T Bell Laboratories Arrangement for controlling shared-buffer-memory overflow in a multi-priority environment
EP0531599B1 (en) * 1991-09-13 1998-07-22 International Business Machines Corporation Configurable gigabit/s switch adapter
JPH05207062A (ja) * 1992-01-27 1993-08-13 Nec Corp パケット交換方式
SE515178C2 (sv) * 1992-03-20 2001-06-25 Ericsson Telefon Ab L M Förfaranden och anordningar för prioritering vid bufferthantering i paketnät
DE4328862A1 (de) * 1993-08-27 1995-03-02 Sel Alcatel Ag Verfahren und Vorrichtung zum Zwischenspeichern von Datenpaketen sowie Vermittlungsstelle mit einer solchen Vorrichtung
US5457687A (en) * 1993-09-02 1995-10-10 Network Equipment Technologies, Inc. Method and apparatus for backward explicit congestion notification (BECN) in an ATM network
JP2639335B2 (ja) * 1993-12-22 1997-08-13 日本電気株式会社 Atm網における輻輳制御方式
GB9401092D0 (en) * 1994-01-21 1994-03-16 Newbridge Networks Corp A network management system
JP3354689B2 (ja) * 1994-02-28 2002-12-09 富士通株式会社 Atm交換機、交換機及びそのスイッチングパス設定方法
GB2288096B (en) * 1994-03-23 1999-04-28 Roke Manor Research Apparatus and method of processing bandwidth requirements in an ATM switch
EP0680173B1 (en) * 1994-04-28 2003-09-03 Hewlett-Packard Company, A Delaware Corporation Multicasting apparatus
FI98774C (fi) * 1994-05-24 1997-08-11 Nokia Telecommunications Oy Menetelmä ja laitteisto liikenteen priorisoimiseksi ATM-verkossa
US5633867A (en) * 1994-07-01 1997-05-27 Digital Equipment Corporation Local memory buffers management for an ATM adapter implementing credit based flow control
IT1266895B1 (it) * 1994-07-26 1997-01-21 Cselt Centro Studi Lab Telecom Procedimento per l'allocazione ottimale delle risorse per il trasporto di flussi informativi a banda variabile su reti in tecnica atm, e nodo
EP0700186B1 (en) * 1994-08-31 2005-04-13 Hewlett-Packard Company, A Delaware Corporation Method and apparatus for regulating virtual-channel cell transmission
US5528588A (en) * 1994-09-14 1996-06-18 Fore Systems, Inc. Multicast shared memory
US5633859A (en) * 1994-09-16 1997-05-27 The Ohio State University Method and apparatus for congestion management in computer networks using explicit rate indication
DE69420408T2 (de) * 1994-09-28 2000-01-05 Siemens Ag ATM-Übermittlungssystem zur statistischen Multiplexbildung von Zellen
US5541912A (en) * 1994-10-04 1996-07-30 At&T Corp. Dynamic queue length thresholds in a shared memory ATM switch
US5533020A (en) * 1994-10-31 1996-07-02 International Business Machines Corporation ATM cell scheduler
US5517495A (en) * 1994-12-06 1996-05-14 At&T Corp. Fair prioritized scheduling in an input-buffered switch
EP0717532A1 (en) * 1994-12-13 1996-06-19 International Business Machines Corporation Dynamic fair queuing to support best effort traffic in an ATM network
US5561663A (en) * 1994-12-30 1996-10-01 Stratacom, Inc. Method and apparatus for performing communication rate control using geometric weighted groups
US5583863A (en) * 1995-01-31 1996-12-10 Bell Atlantic Network Services, Inc. Full service network using asynchronous transfer mode multiplexing
US5533009A (en) * 1995-02-03 1996-07-02 Bell Communications Research, Inc. Bandwidth management and access control for an ATM network
JP2723071B2 (ja) * 1995-03-31 1998-03-09 日本電気株式会社 Atm−lan接続装置及びatm−lan
US5809024A (en) * 1995-07-12 1998-09-15 Bay Networks, Inc. Memory architecture for a local area network module in an ATM switch
US6141346A (en) * 1995-07-19 2000-10-31 Fujitsu Network Communications, Inc. Point-to-multipoint transmission using subqueues
US5751951A (en) * 1995-10-30 1998-05-12 Mitsubishi Electric Information Technology Center America, Inc. Network interface
US5771234A (en) * 1995-12-06 1998-06-23 Industrial Technology Research Institute Method and system for ATM cell multiplexing under constant bit rate, variable bit rate and best-effort traffic
US5689508A (en) * 1995-12-21 1997-11-18 Xerox Corporation Reservation ring mechanism for providing fair queued access in a fast packet switch networks
US5765032A (en) * 1996-01-11 1998-06-09 Cisco Technology, Inc. Per channel frame queuing and servicing in the egress direction of a communications network
US5926458A (en) * 1997-01-31 1999-07-20 Bay Networks Method and apparatus for servicing multiple queues
EP0972379A4 (en) * 1997-04-04 2000-07-05 Ascend Communications Inc EXTREMELY FAST PACKET PROGRAMMING METHOD AND DEVICE

Also Published As

Publication number Publication date
US6041059A (en) 2000-03-21
EP0874531A3 (en) 1999-12-22
EP0874531A2 (en) 1998-10-28
JPH10322369A (ja) 1998-12-04

Similar Documents

Publication Publication Date Title
JP3609255B2 (ja) セルスケジューラを動作させる方法およびスケジューリングシステム
JP3153509B2 (ja) セルスケジューラを操作する方法、およびスケジューリングシステム
US6438134B1 (en) Two-component bandwidth scheduler having application in multi-class digital communications systems
US5859835A (en) Traffic scheduling system and method for packet-switched networks
US6754223B1 (en) Integrated circuit that processes communication packets with co-processor circuitry to determine a prioritized processing order for a core processor
US6198724B1 (en) ATM cell scheduling method and apparatus
US6134217A (en) Traffic scheduling system and method for packet-switched networks with fairness and low latency
US6240066B1 (en) Dynamic bandwidth and buffer management algorithm for multi-service ATM switches
EP0986221B1 (en) Port scheduler and method for scheduling service providing guarantees and hierarchical rate limiting with or without overbooking capability
JP3813695B2 (ja) パケット交換通信システム
US6483839B1 (en) Apparatus and method for scheduling multiple and simultaneous traffic in guaranteed frame rate in ATM communication system
US5818815A (en) Method and an apparatus for shaping the output traffic in a fixed length cell switching network node
US6501731B1 (en) CBR/VBR traffic scheduler
US6603739B1 (en) ATM adaption layer traffic scheduling for variable bit rate connections
US6396843B1 (en) Method and apparatus for guaranteeing data transfer rates and delays in data packet networks using logarithmic calendar queues
EP0700186A1 (en) Method and apparatus for regulating virtual-channel cell transmission
WO2000001120A9 (en) Cbr/vbr traffic scheduler
JPH10215258A (ja) パケット交換通信システム
EP0972378A2 (en) Hierarchical packet scheduling method and apparatus
US6526062B1 (en) System and method for scheduling and rescheduling the transmission of cell objects of different traffic types
JPH10242999A (ja) トラフィック成形装置
JPH11234309A (ja) 非同期転送モード・セル送信スケジューリング
US6618380B1 (en) Priority queueing
US20050010676A1 (en) Time-based transmission queue for traffic management of asynchronous transfer mode virtual circuits on a multi-threaded, multi-processor system
US6980513B2 (en) Methods and apparatus for the fair allocation of bandwidth among MCR and best effort service connections in an ATM switch

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040203

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20040220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040426

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040601

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040806

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: 20040914

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041013

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081022

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091022

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091022

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101022

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101022

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111022

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111022

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121022

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees