JP2000059365A - オ―バ―ブッキングの能力がある場合、ない場合の階層的な転送速度制限を保証しながらサ―ビスの提供をスケジュ―ルするポ―トスケジュ―ラとその手法 - Google Patents

オ―バ―ブッキングの能力がある場合、ない場合の階層的な転送速度制限を保証しながらサ―ビスの提供をスケジュ―ルするポ―トスケジュ―ラとその手法

Info

Publication number
JP2000059365A
JP2000059365A JP20739399A JP20739399A JP2000059365A JP 2000059365 A JP2000059365 A JP 2000059365A JP 20739399 A JP20739399 A JP 20739399A JP 20739399 A JP20739399 A JP 20739399A JP 2000059365 A JP2000059365 A JP 2000059365A
Authority
JP
Japan
Prior art keywords
entity
service
time
controller
virtual
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
Application number
JP20739399A
Other languages
English (en)
Other versions
JP4327948B2 (ja
Inventor
Basaku Debashisu
バサク デバシス
Cho Fan
チョウ ファン
Pap Suuruya
パプ スールヤ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
FORE SYST Inc
Original Assignee
FORE SYST Inc
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 FORE SYST Inc filed Critical FORE SYST Inc
Publication of JP2000059365A publication Critical patent/JP2000059365A/ja
Application granted granted Critical
Publication of JP4327948B2 publication Critical patent/JP4327948B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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)
  • Computer And Data Communications (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【解決手段】 サーバによって実体を操作する際の制御
を行なうスケジューラである。スケジューラは、N個の
実体を含んでおり、Nは2又は2よりも大きい整数であ
る。各実体は、サーバからサービスを受信するレートを
有するN個の実体を有する。スケジューラは、N個の実
体の終了時間fiを有するメモリーを含んでおり、f
iは、i番目の実体が、サーバによって操作される時間
に対応している。スケジューラは、仮想クロックを含ん
でおり、該仮想クロックは、仮想時間のトラックを保持
して、終了時間fiを確認する。スケジューラは、終了
時間の関数としてサーバによって操作される実体を選択
するコントローラを含んでいる。該コントローラは、実
体にサービスを提供するための仮想時間を遅らせるもの
であり、仮想クロックとメモリーに接続される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明はサーバが実体に対
してサービスを提供する際のスケジューリングを行うた
めのスケジューラに関するものである。より具体的に
は、この発明はオーバーブッキングされた状態でのAT
Mスケジューラの階層的な転送レート制限の実行方法に
関するものである。
【0002】
【従来の技術】発明の背景 これまでにはパケットの公平な順序付けに基づく様々な
スケジューリング法が提案されてきた。これらの方法
は、典型的にはそれぞれのセッションに対して時計と時
刻情報とを管理することを必要とした。セッションはそ
れらの時刻情報に基づいてソートされ、その順序に従い
送出される。 この方法における提案された変形は、時
計とセッションの時刻情報とを更新する方法において本
質的な違いがある。同様にそれらは、サービスにおいて
生成されるジッターにおいても異なる。J.C.R. Bennett
と H.Zhang. Wf2q: Worst-case fair weighted weighte
d fair queuing. In INFOCOM'96, pages 120-128, Mar.
1996. を参照。
【0003】セッション間における調整に関連する2つ
の主なコストがある。仮想時間関数の計算、それはそれ
ぞれのセッションが受け付けるべきサービスの標準化さ
れた公正な量を動的に測定するコスト、そして、log N
のオーダーの複雑さとなる、異なるセッションからの転
送要求の優先順序を管理するコストである。但しNはセ
ッションの数。
【0004】J.C.R. Bennettと、D.C. Stephensと、H.
Zhang. High Speed, Scalable, Accurate Implementati
on of Fair Queuing Algorithms in ATM Networks. ICN
P'97Mar. 1997,には、上記のコストを緩和する構造の一
例が開示されている。J.C.R. BennettとD.C.Stephensと
H.Zhang. High Speed, Scalable and AccurateImplemen
tation of Fair Queuing Algorithms in ATM Networks
を参照。ICNP'97,Mar.1997, において、サーバは固定し
た数の転送レートをサポートするよう制約されている。
そして同一のレートをもつセッションが互いにまとめら
れる。関連順序付けをすることなく、同一の転送レート
を持つグループに属するセッションの間で優先度の関係
が管理されていることが示されている。その問題は、す
べてのセッションの間でスケジュールするといった問題
から、グループのヘッドにて、すべてのセッションをス
ケジュールする問題へと簡単にされる。そのような実行
においては、順序付けを管理し仮想時間を計算する複雑
さは、セッションの数よりも、むしろ、サポートする離
散したレートの数により増大する。
【0005】これまでの研究や特許において、パケット
の公平な順序付けの実行(PFQ)が示されてきた。
[J.C.R. Bennett と H. Zhang. Wf2q: Worst-case fair
weighted weighted fair queuing. INFOCOM'96 pages
120-128, Mar. 1996; J.C.R. Bennettと H. Zhang. Hie
rarchical Packet Fair Queuing Algorithms.In ACM SI
GCOMM'96 pages 143-156, Aug. 1996; J.L. Rexford と
A.G. Greenberg と F.G. Bonomi. Hardware-efficient
Fair Queuing Architectures for High Speed Network
s. INFOCOM'96 Mar. 1996; J.C.R. Bennett と D.C. St
ephensと and H.Zhang. High Speed, Scalable, and Ac
curate Implementation of Fair QueuingAlgorithms in
ATM Networks. ICNP'97 Mar.1997]これらはバンド幅を
保証されたものにしようとしている。これまでの従来例
として、そのようなパケットの公平な順序付けの実施例
が示される。以下に示す手法は、いくつものセッション
のそれぞれの転送レート要求の間でバンド幅を割り当て
る。1つのセッションは、要求したレート以上のバンド
幅を割り当てられることはない。
【0006】それぞれのセッションCiは要求するサー
ビスの転送レートri をもち、それは図1においてライ
ンレートの一部分として示されている。基本的な考え方
はそれぞれのセッションは、セルスロット時間の 1/ri
毎に1度割り当てられる。この間隔はセッション時間間
隔(TIi)として引用される。最後のTIiのセル時間内に割
り当てを受けていないセッションは、出来る限りはやい
機会に割り当てを受けるべきである。各セッションにつ
いて開始時間(Si)はそれが適格としてスケジュールされ
るべき最も早い時間を示すために管理される。各セッシ
ョンの終了時間Fiもまた管理され、それは計算式 Fi=Si
+TIiによって導出される。セッションはそれぞれの終了
時間に基づき割り当てられる。そのアルゴリズムの詳細
は以下に示されている: ・仮想時間は所定のポートに対し,ポートサイクルごと
に以下のように更新される。 V(t+1)=V(t)+1
【0007】これ以外にもより複雑な仮想時間関数が論
文において提案されているが、その多くは上の式にある
ものと同じような、単調に増加する関数を仮定する。 ・セッションi は時間 tによってスケジュールされてい
るものとする。もしセッションが残っているのなら、セ
ルは送出され、残っていないのであればそのサイクルは
何もしない。新たな開始時間と終了時間Si(t+)と Fi(t
+) とは以下に従い更新される: Si(t+)=Fi(t), and Fi(t+)=Si(t+)+L/ri ただしLはセルの長さであり、riはセッションの転送速
度である。新たなセッション iが時刻 tに追加された
時、それに割り当てられる開始時間はSi(t)=V(t)and Fi
(t)=Si(t)+L/rとなる。ポートスロット時刻 tにおい
て、すべての活動している(セルが溜まっている)セッ
ションのうちで、適格なものは次のように決定される。 Si(t)≦V(t) すべての適格なセッションのうちで、もっとも小さい終
了時間 Fi(t)をもつものが、次の送出の為に選択され
る。
【0008】上の手法において、セッションはセッショ
ン初期化の間にスケジュールに組み込まれることに注意
したい。それはセッションが壊されるまでの間存続す
る。すべてのセッションの転送レートの合計が、回線速
度(line rate)(LR)と同じかそれ以下であることが期
待される。オーバーブッキングを実行するこの手法に関
する問題のひとつは次のようなものである。活動してい
ない(溜まっていない)セッションは、スケジュールさ
れる可能性があるが、セルを持たないものは、サイクル
を無駄にしてしまう。このことはハードウェアーが、ア
ルゴリズムを繰り返し、空ではない接続を見つけ出すた
めの時間がないという実際的な制約を仮定している。オ
ーバーブッキングの状況において, 無駄になるサイクル
は他の(セルが)溜まっているセッションに対して使わ
れるべきであった。この問題は、たとえばスケジューラ
はセルを持っているセッションの間でのみスケジュール
されるといった方法により、活動していないセッション
をスケジューラから取り除くことにより解決できる。上
記の手法には次のような修正が必要となる。 ・(セルを)送出したあと、もしセッションに溜まって
いるものがなくなったのであれば、それはポートのバン
ド幅を調整するために活動しているセッションのリスト
からはずされる。 ・活動していないセッション iは、時刻 tに活動を始め
(セルが溜まり)、スケジューラ調整プロセスに書き戻
される。それの新たな開始時間はつぎのように割り当て
られる。 Si(t)=max(Si(t-),V(t)) and Fi(t)=Si(t)+L/r
【0009】上記の式におけるmaximum関数(最大値関
数)は、セッションがSi(t-)よりも前には開始されない
ことを保証する。もし最後のサービスのあとセッション
が空となり、そしてスケジュールされた次の開始時間よ
りも前に再び(セルが)溜まったら、その開始時間を仮
想時間に対して再設定することにより、それは要求され
た転送レートよりも大きくなることが出来る。
【0010】しかしながら、修正された手法に従ったと
しても, それをオーバーブッキングな状況で用いるには
以下で議論するような更なる問題がある。PFQの実行可
能性に関する一般的なコメントがここでは必要となる。
セッションの間で、最短の終了時間を決定するために、
すべての活動しているセッションの間で最小の計算を行
う必要がある。もしセッションの数が大きくなった時、
これはセルスロット時間の間に行うことはできない。こ
れまでの手法では、この問題を解決するために時刻情報
にもとづくセッションの順序付けされたヒープを管理す
ることを提案してきた。同様に転送速度でまとめる手法
は、[J.C.R. Bennett と H.Zhang. Wf2q: Worst-case f
air weighted weighted fair queuing. INFOCOM'97,pa
ges 120-128, Mar. 1996]で提案されている。この発明
はすべてのセッションの間での最短の終了時間を決定す
るためにこれらの手法のいずれかを用いることもある。
【0011】これまで提案されてきたPFQ手法に関する
実行では、目的とする転送レートにレート制限するよう
プログラムすることで、転送レート制限を実行すること
が可能である(上の箇条書きにおける最初の項目)。し
かしながら、オーバーブッキングな状況においては,こ
れらの実行において予想される振る舞いは、求められて
いる振る舞いから大きく外れたものとなる。これまでに
提案されてきたPFQ手法によるオーバーブッキングに対
する能力により転送レート制限が可能なスケジューラを
実行する際の問題について分析をする前に、理想的な実
行による予想される振る舞いについて考慮するべきであ
る。 ・混雑していないポート(即ちポートに入力されるトラ
フィックの合計が回線転送レートに等しいか少ない状
況)にとっては、溜まっているセッションはその転送速
度の制限により受け取りを制限される。 ・混雑している状況(溜まっているセッションに要求さ
れる転送レート制限の合計が回線転送レートよりも大き
い状況)においては、この方法は、溜まったセッション
の各々が、要求されたレートを、ラインレートがオーバ
ーブッキングされてラインレートの時間が割算したもの
と等しいレートを確実に受けるようにする。
【0012】実施例 図2はこの動作を図示した例である。2つのセッションC0
とC1とは同じポートをあて先としている。到着したセル
はそれぞれの別個のキューに溜め込まれる。スケジュー
ラはそれらを送出する。セッションC0とC1は、それぞれ
転送レートが2/4と3/4とに制限されている。これはキュ
ーにC0だけがセルを持っていたとしたら、そのレートは
2/4に制限されていることを意味する。同様にキューにC
1だけがセルを持っているとしたら,それは3/4の転送レ
ートに制限される。しかしながら、両方のセッションが
セルを持っているとしたら、回線転送レートの5/4倍に
オーバーブッキングしてしまう。セッションにより受け
取られるサービスは、そのオーバーブッキング率により
縮小される。この状況においては、C0とC1はそれぞれ回
線転送レートの2/5と3/5を受け取る。
【0013】前の手法にもとづくオーバーブッキングレ
ート制限による実行は考慮される。その手法はセッショ
ンの間でサービスの欠乏を発生させる。図は特定の実行
にもとづくものであるが、オーバーブッキングされたシ
ナリオのときに焦点が当てられる問題は、実行する際に
単調に仮想時間関数が増加する様な、公平な順序付けア
ルゴリズムのすべての変形中に存在する。
【0014】図3は、それぞれが回線転送レートの1/2,
1,1といった要求をする3つのセッションC0,C1,C2がオ
ーバーブッキングしている状況を図示している。セッシ
ョンC0とC1は時刻 t=0に活動的になり(セルを溜め)、
セッションC2はそれより遅れてt=10000 において活動的
になる。この表は、V(t+1) = V(t) + 1に従い増加する
仮想時間の実行に基づいたよる仮想時間の値をあらわし
ている。それは継続する列が、それぞれセッションC0,C
1,C2の開始時間と終了時間を表してもいる。それぞれの
スロット時間 tに対して、下線が引かれた開始時間と終
了時間の対は、与えられたサイクルに送出されるセッシ
ョンを表している。送出されるべきセッションは、適格
なセッションの中から最短終了時間に基づいて選択され
る。適格セッションの中で最小終了時間について同じ適
格性である場合は、最も早い開始時間のセッションが選
ばれる。以下の観測が例から作成される: ・スケジューラーは、セッションC0とC1の要求レートに
よりオーバーブッキングしている。 ・時刻が進むにつれ、これらのセッションの開始/終了
時間は徐々にV(t)からの遅れを溜めていく。例えば
t=10000の時、V(t)=10000はF0= 6670と F1 6669に対
してかなり進んでしまっている。t=10000においてセッ
ションC2が開始され、S2=V(t)=10000として開始時間が
記載されている。 ・最短終了時間によるセッション送出の基準によると、
セッションC2とC1の終了時間がC2の終了時間に追いつく
までは、セッションC2は信号送出しない。セッション
C2が信号送出を始めるのは、この時間が経過してから
である。これは例においては t=15000で発生する。それ
ゆえC2は5000スロット時間の間、送出がされないことに
なる。一般的に、セッションは活動的になってからも、
他のセッションが仮想時間に対しての遅れがどの程度あ
るかに従い、任意の時間待たされることになる。
【0015】それゆえに活動しているセッションの時間
記録のために使われている仮想時計が単調に増加するこ
とは、不公平と窮乏とにつながることになる。この問題
は、セッションの終了時間を任意に進め変更できるよう
な仮想時計関数によるいかなるPHQ手法によっても、オ
ーバーブッキングな状況で発生する。
【0016】発明の概要 この発明は、実体がサーバーによって操作される時のス
ケジューラの制御に関するものである。スケジューラは
N個の実体からなる。但しNは2に等しいかそれより大き
い整数である。個々の実体はサーバーから受けるサービ
スの転送レートを有している。スケジューラは、 N個の
実体の終了時間 fiを保持するメモリを含む。fiは i番
目の実体がサーバーによって操作されるべき時間に対応
する。スケジューラは、終了時間fiが判別できるように
するための仮想時間のトラックを表す仮想時計を含む。
スケジューラは、終了時間の関数としてサーバーが作用
するべき実体を選択する、コントローラを含む。コント
ローラは実体にサービスを提供するために仮想時間を遅
らせる。コントローラは仮想時計とメモリーに接続され
ている。
【0017】この発明は、実体(entities)がサーバー
に対して操作される、制御のためのスケジューラに関係
する。スケジューラはN個の実体から構成される。但しN
は2に等しいかそれよりも大きい整数である。個々の実
体は、サーバーからサービスを受ける転送速度(rate)
を持っている。N個の実体のうちの少なくとも最初の1つ
には、2つ以上の接続(connections)があり、2つの接
続のうちの少なくとも1つがサービスを待っており、複
数の接続の中、少なくとも1つがサービスを受けること
を待っており、かつ終了時間がサービスを待っている実
態の中で、もっとも早い終了時間を有している時に、コ
ントローラは最初の実体を選択し、サービスを提供す
る。スケジューラは、N個の実体の終了時間fiを保持し
ているメモリーを持ちっている。但しfiはサーバーによ
って操作を行われるべきi 番目の実体の時間に対応す
る。スケジューラは仮想時計を持ち、その時計は終了時
間 fiが判別できるように仮想時間のトラックを保持す
る。スケジューラは、終了時間の関数としてサーバによ
って操作されるべき実体を選択するコントローラを具え
ている。コントローラは実体に対してサービスを提供す
る仮想時計を遅らせる。コントローラは、仮想時計とメ
モリーとに接続されている。
【0018】この発明はサービスを提供するサーバーの
スケジュールを行う方法に関係する。この手法は、サー
バーからの第1の転送レートを持つ第1の実体から第1の
要求を受け取るステップを含む。次に第1の実体が第1の
実体からのサービスを受け取ろうとする時に、その終了
時間をメモリーに蓄えるステップがある。次に、サーバ
ーからサービスを受け取る2番目の転送レートを持つ第2
の実体から第2の要求を受け取るステップがある。次
に、第2の実体がメモリー中のサーバーからサービスを
受け取る時に、その終了時間を蓄えるステップがある。
第2の実体の終了時間は、第1の実体の終了時間と同じで
ある。そして第1の実体に対してサービスを提供するス
テップがある。次に仮想時間を止めるステップがある。
そして、第1の実体がサーバーからサービスを受け取る
のと同じ仮想時間に、第2の実体に対してサーバーから
サービスを提供するステップがある。
【0019】本発明のATMスケジューラに望まれる特徴
は次のようなものである。 1.セッションに対して、保証されたバンド幅に見合う
ように供給出来ること。 VC毎のキューイングが出来ることが仮定される。 2.ジッターを最小に出来ること。 VCに対してセルを送出する際の大きなジッター(大きな
セル配送の変化)が、下流の装置に対してセルの脱落を
発生させるような破滅(burstiness)につながること
は、よく知られている。このような問題を最小化するた
めに、スケジューラはセルを円滑に送出する必要があ
る。 3.転送レート制限 異種のネットワーク機器の環境では、ATMスイッチは限
られたバッファーとバンド幅を制御する能力を用いて末
端やエンドユーザーの装置にまでトラフィックを供給す
る必要がある。それゆえ、そのような装置に向けた断続
的なトラフィックによる激しいバーストは取りこぼされ
ることとなる。このようなロスを最小化することは、本
質的に興味のある問題である。この目標はネットワーク
(もしくはATMスイッチ)がトラフィックを装置に対し
てそれが取り扱うことが可能な転送レートで供給するこ
とにより達成される。バーストは、目的に対して排出さ
れるまでの間、ネットワークの内部に蓄積される。上の
ような目的を達成するために、ATMポートスケジューラ
はトラフィックを予め制限された転送レートに制限する
能力を持つ必要がある。 4.階層的な転送レート制限 上記のような転送レート制限は、単一のセッション(外
形を付ける形成法と同様)のレベルにおいては実現可能
であるし、同じ目的地に向けたセッションの組み合わせ
のようなレベル、例えばT1やxDSLのパイプのようなスピ
ードの遅いより下流へのポートにおいても実現可能であ
る。この文書において、このようなセッションのグルー
プは仮想回線として引用される。階層的な転送レート制
限は、転送レートを仮想回線が寄せ集められたレベルに
おいても制限される必要があるし、また個々のセッショ
ンの仮想回線のレベルにおいても制限される必要があ
る。 5.オーバーブッキング ほとんどの場合において、転送レートの制限された仮想
回線上の入力トラフィックは、その転送レートの制限と
比較して非常に小さい。それゆえ仮想回線のためのバン
ド幅を、それらの転送レートの制限によって予約するす
ることは、ポートのバンド幅の非常な無駄遣いにつなが
る。この問題を解決するには、ポートにおいて転送レー
ト制限をオーバーブッキングする機構が必要となる。そ
れゆえ、あるポートに属するすべての仮想回線の転送レ
ート制限の合計が、ポートのバンド幅(回線転送レー
ト)より大きくなることがありうる。これはバーストを
起こしやすかったり、断続的なトラフィックにおいては
特に有益である。もっとも良い場合においては、入力ソ
ースのトラフィックは、個々のセッションが要求したレ
ートで受信できるように分散して到着する。それゆえオ
ーバーブッキングは、統計的な意味合いにおける多重化
を利用することを可能にする。最も悪い場合において
は、複数のセッションが同時に到着した際に、そのため
集約されたトラフィックが回線転送レートを超えてしま
ったとき、このメカニズムはセッションに対するサービ
スの質を支障のない程度で低下させる。そのような機構
は、本発明の一部を構成する。 6.セッション保証を満足しているオーバーブッキング オーバーブッキングにおけるサービスの転送レート低下
は、CBRやrt-VBRのような時間に影響を受けやすいセッ
ションにとっては許容できないものがある。このような
セッションはサービスを受け取る上で、例えば彼らが要
求する転送レートは常に維持されるといったように、よ
り高い優先度を与えられるべきである。この問題は、こ
のようなセッションが仮想回線の一部分であるような場
合に、より興味深いものとなる。例えば仮想回線が10Mb
psといった転送レートを要求しているとする。仮想回線
は二つのセッションC0とC1からなるとする。セッション
C0は7Mbpsの転送レートを要求し、C1は8Mbpsの転送レ
ートの保証を要求しているとする。両方のセッションが
活動的になったとき、C1にとって期待される振る舞いは
8Mbpsが保証されながら受信でき、C0は2Mbpsもしくは
それに等しくなり、このような集約により回線の転送レ
ートである10Mbps以下になる。このような品質保証を確
実としながら、オーバーブッキングにおける階層的な転
送レート制限を達成するためのメカニズムは、この書類
において提案される装置の一部を構成する。ここで、仮
想回線により受信される集約されたバンド幅が特定の転
送レートに制限されることが必要であるが、仮想回線に
属する個々のセッションのレベルにおける品質保証が要
求を満たすことも重要である。上記のことを保証するた
めに、スケジューラにおける転送レートの間で、二つの
関係が含まれることが必須である。 ・仮想リンクにおけるセッションの保証の合計は、仮想
回線の転送レートの制限よりも少ない。 ・すべてのセッションのすべての保証の合計が、回線の
(ポートの)転送レートよりも小さい。
【0020】添付の図面に於いて、本発明の好ましい実
施例及び本発明を実行する好ましい方法は、以下に記述
される。
【0021】
【詳細な記述】図面中で同様な参照番号はいくつかの図
を通じて同様な又は同一の部分に言及する。特に図9を
参照する。該図には、サーバ(14)により実体(12)が作動
しているときに、制御するスケジューラー(10)が示され
ている。スケジューラー(10)はN個の実体(12)を有し、
ここでNは1以上又は1に等しい整数である。各実体は
レートを有し、該レートでサーバ(14)からサービスを受
信する。スケジューラー(10)はN個の実体(12)の終了時
間fiを有するメモリー(16)を具え、fiはi番目の実体
がサーバ(14)により作動される仮想時間に対応してい
る。スケジューラー(10)は、終了時間fiが識別される
ように仮想時間のトラックを保つ仮想クロック(18)を有
する。スケジューラー(10)は、終了時間の関数として、
サーバ(14)により作動される実体(12)を選択するコント
ローラ(20)を有する。オーバーブッキングを容易にすべ
く、コントローラ(20)は仮想時間を遅らせて、実体(12)
にサービスを供給する。コントローラ(20)は仮想クロッ
ク(18)及びメモリー(16)にコネクションされている。
【0022】各実体はサーバ(14)からサービスを要求す
るレートを有している。実体(12)は1よりも大きなレー
トの総和を有する。コントローラ(20)は好ましくは、各
実体のレートの関数として各実体にサービスを供給し、
レートの総和量は1より大きい。
【0023】好ましくは、オーバーブッキングを容易に
する為に、コントローラ(20)は、仮想時間に等しい終了
時間を有する全ての実体(12)がサーバ(14)からサービス
を受信完了するまで仮想時間を停止させる。コントロー
ラ(20)は好ましくは以下に対応した仮想時間を作動す
る。 V(t+1)=min(V(t)+1、minF)、 但し、minFは終了時間を有する全ての実体の中で最
も早い終了時間を示す。
【0024】好ましくは、メモリー(16)はN個の実体(1
2)の開始時間siを有し、但しiは1≦i<Nで、整数
である。siはi番目の実体がサーバ(14)から次のサー
ビスを要求でき、メモリがN個の実体(12)のレート限界
時間TIiを有しているときの最も早い時間に対応して
いる。コントローラ(20)は好ましくは、最も早い終了時
間で実体にサービスを供給する。図10に示すように、
コントローラ(20)には階層があり、それによってN個の
実体の少なくとも最初の実体が、第2層にてコントロー
ラ(20)の複数の実体を表し、第2層の第2番目の実体が
第3層にてコントローラ(20)の実体を表す。サービスを
要求しているコネクションは、スケジューラー中でコネ
クションが最初に接続するコントローラに繋がったメモ
リ中にて、時間間隔と開始時間を格納する。より低いレ
ベルのコントローラに繋がったコントローラは、時間間
隔、開始時間をより低い層のコントローラに繋がったメ
モリに格納する。第1層のコントローラは第1の実体を
選択し、実体が適格で、サービスを待っている実体の中
で最も早い終了時間を有しているときにサービスを供給
し、またローカルメモリ内の実体の開始及び終了時間の
更新もする。第1の実体は次段の中にもう1つのコント
ローラを含む。該もう1つのコントローラは更に第2の
実体を選択し、第2の実体が適格で第2のコントローラ
でサービスを待っている実体の中で最も早い終了時間を
有しているときにサービスを供給し、またローカルメモ
リ内の実体の開始及び終了時間の更新もする。各コント
ローラは仮想クロックを維持し、該仮想クロックは異な
る段又は同じ段の他のコントローラの他の全ての仮想ク
ロックから独立し、全ての仮想クロックは、該クロック
にコネクションされた適格な実体の終了時間に基づいて
更新される。全ての仮想クロックは、各々のサイクル時
間が増される。最小の動作が仮想クロックに実行され、
コントローラがサービスを受信したときに、クロックの
正確な値を得て、次のレベルでコントローラがクロック
の正確な値を用いることを許容する。コントローラに於
ける実体のレートの総和は1より大きいことが可能であ
り、このようにしてスケジューラーがオーバーブックさ
れることを許し、セッション密集中(congestion)にコン
トローラはオーバーブッキング動作を反映して、仮想時
間の減速を確実にする。実体によりオーバーブッキング
なしに受信されたレートは、実体のレートに等しい。し
かし、オーバーブッキングとともに実体によって受信さ
れたレートは、実体のレートの最小値か、又はコントロ
ーラにて適格な実体のレートの総和により縮小された実
体のレートの最小値である。
【0025】好ましくは、少なくとも1つの実体(12)
は、サービスを待っている実体(12)の中で最も早い終了
時間である終了時間を有するときに、サーバ(14)からの
サービスが保証される。サービスが保証された実体がサ
ービスを待っている実体(12)の中で最も早い終了時間を
有することを特定するため、コントローラ(20)がどの実
体が次にサービスを受けるべきかを決めているときに、
サービスが保証された実体がコントローラ(20)によって
最先に吟味されることが望ましい。
【0026】本発明は、実体(12)がサーバ(14)上にて操
作を受けているときに制御するためのスケジューラー(1
0)に関するものである。スケジューラー(10)はN個の実
体(12)を有し、Nは1より大きい又は1に等しい整数で
ある。各実体はサーバ(14)からのサービスを受けるべき
レートを有する。N個の実体(12)中の少なくとも最初の
実体(121)は複数のコネクションを有し、複数のコネク
ションの少なくとも1つがサービスを待っており、サー
ビスを待っている実体(12)の中で最初の実体(121)が最
も早い終了時間を有しているとき、コントローラ(20)は
最初の実体(121)を選択して、サービスを供給する。ス
ケジューラー(10)は、N個の実体(12)の終了時間fi
有するメモリー(16)を有し、fiはi番目の実体がサー
バ(14)により操作されるべき時間に対応する。スケジュ
ーラー(10)は終了時間fiが特定されるように仮想時間
のトラックを保つ仮想クロック(18)を有する。スケジュ
ーラー(10)はコントローラ(20)を有し、該コントローラ
は、終了時間の関数としてサーバ(14)により操作される
べき実体(12)を選択する。コントローラ(20)は、仮想時
間を遅らせて実体(12)にサービスを供給する。コントロ
ーラ(20)は、仮想クロック(18)とメモリー(16)にコネク
ションされる。
【0027】本発明は、図12に示すように、サーバ(1
4)からサービスをスケデューリングする方法に関する。
該方法は、サーバ(14)から受けるサービスへの最初のレ
ートを有する最初の実体(121)からの最初の要求を受信
する工程を有する。次に、最初の実体(121)がサーバ(1
4)からサービスを受けるべき時までに、終了時間をメモ
リー(16)に格納する工程がある。然る後、サーバ(14)か
ら受けるサービスについて2番目のレートを有する2番
目の実体から2番目の要求を受信する工程がある。次
に、2番目の実体がサーバ(14)からサービスを受けるべ
き時に、終了時間をメモリー(16)に格納する工程があ
る。然る後、サービスを最初の実体(121)に供給する工
程がある。次に、仮想時間を停止する工程がある。この
とき、サーバ(14)から2番目の実体にサービスを供給す
る工程がある。
【0028】本発明は、実体(12)の1より大きなレート
の総和を許すことにより、オーバーブッキングを許容す
る。最初の実体(121)にサービスを供給する工程は、好
ましくは最初の実体(121)の最初のコネクションへサー
ビスを供給し、最初の実体(121)の2番目のコネクショ
ンへサービスを供給する工程を含む。好ましくは、最初
の実体(121)にサービスを供給する工程の前に、終了時
間を具える実体(12)の中で最初の実体(121)が有する終
了時間が最も早い終了時間であるか否かを決定する工程
があるのがよい。
【0029】好ましい実施例の動作にて、従来のスケジ
ューラーのレート限定及びオーバーブッキングに関する
主要な問題は、セッションの開始・終了時間の範囲を越
えて仮想クロックが進む可能性があることである。新た
な仮想クロック(18)関数がここに記載されており、それ
は実体(12)のコネクション又はセッションが、オーバー
ブッキングに関して適切に扱われることを確実にする。
新たな仮想クロック(18)関数は、仮想クロックを遅ら
せ、オーバーブックされたセッションへの遅いサービス
に歩調を合わせるとの概念に基づいている。このように
して、新たに到達したセッションは、クロックを用いて
開始時間を時刻記録(timestamp)し、もはや不公平に有
利にはならない。
【0030】最小限の関数と、他の動作しているセッシ
ョンの中での最小の終了時間とを適用するように仮想ク
ロック(18)の計算は増やされる。こうして、仮想クロッ
ク(18)関数は以下のようになる。 V(t+1)=min(V(t)+1、minF)、 ここで、minFは全ての溜った(backlogged)セッショ
ンの中で最小の終了時間を示す。最小の終了時間に基づ
く仮想クロック(18)のスローダウンには、仮想クロック
をセッションの終了時間の範囲内に保つことである。こ
のようにして、動的になりつつあるセッションは、既に
動的になったセッションの開始・終了時間よりも遙かに
先の開始・終了時間は刻まれない。このことは、そのよ
うなセッションの飢餓状態を回避する。動的セッション
により見られるサービスレートは、即時的なオーバーブ
ッキング要素により分割され要求されたレートとして決
定される。
【0031】上記の例は新たな仮想クロック(18)実行と
ともに図4に示される。 ・V(t)は動的セッションの中で最小終了時間を決して
越えない。従ってt=10、000にあってはV(t)の
値はセッションC1の6669という最小終了時間によ
り限定される。 ・t=10、000というそのようなより遅い時間のと
きに、動的になりつつあるセッションC2は、V(t)=
6669に等しい開始時間が刻まれる。 ・この実行に於いて、C2は15、000の代わりに時
間10、002にてサービスされる。従って、セッショ
ンによっては、任意の飢餓状態は見られない。
【0032】前述したとおり、転送速度制限は単一セッ
ションのレベル及び同一着信地に向けられた一組のセッ
ションレベル、例えばT1又はxDSLパイプなどの、
より低速の下流ポートのレベルでも実行されることが必
要であるだろう。その様な1群のセッションは、仮想リ
ンクと称する。階層的なレートリミティングでは、集合
的仮想リンク(VL)のレベルにおいて及び、VL中の
個々のセッションに於いてもレートリミティングを必要
とする。RLでは、VLs間のオーバーブッキングが許
される。オーバーブッキングした場合、RLが利用でき
る帯域は、各帯域のレート配分に比例したVLsに分け
られる。同様にVL中のセッション間でのオーバーブッ
キングも又許されている。オーバーブッキングがある場
合、VLが利用できる帯域は、各レート配分に比例して
セッション間で分けられる。
【0033】実施例 図5は、レート制限されたVLをオーバーブッキングす
る様子を図面で示した1例である。2つのセッションC
0とC1が、1つのポートの同一VLに属している。到
着したセルは別々の待ち列(queue)でバッファーされ
る。VLは4/10ラインレートにレートリミットされ
ることになっている。セッションC0とC1は、ライン
レートの2/10と4/10のレートに夫々リミットさ
れる。これはC0だけがその待ち列にセルを有するとき
には、2/10のレートにリミットされることを意味す
る。同じく、C1だけがその待ち列にセルを有するとき
は、それは4/10のレートにリミットとされる。しか
しながら両方のセッションがセルを有するときは、VL
レートは(2/10+4/10)/(4/10)=1.
5の率でオーバーブックされる。セッションによって受
け取られるサービスは、オーバーブック要素で縮小され
る。この場合、C0とC1は、1.33/10と2.66
/10のラインレートを夫々受取る。これらレートの合
計は4/10であることに注目すると、VLのレートの
限界は常に一定に維持されている。
【0034】仮想リンク(VL)レベルでのレートリミ
ッター(RL)の実行は、前述した方式のセッションを
仮想リンクに置き換えることによって得られる。VL
は、セッションがかつてそうであったように、正確にサ
ービスされる。適格な仮想リンク間で、最小の終了時間
の仮想リンクが選択されサービスされる。以前V(t)
として示したポートレベルでの基準仮想クロック(18)
は、VP(t)として示され、以下の議論に於いて仮想
リンククロックとは区別できるようにする。以前説明し
たとおり、RL中ではVLs間のオーバーブッキングは
許されている。オーバーブッキングの場合、RLに利用
可能な帯域幅は、夫々に配分されたVL率に比例してV
Lsの間で分けられる。
【0035】一旦VLが決定されると、どのセッション
がVLの下でサービスするかを決めるため、第2レベル
の決定がなされる。望ましい実施例ではVLの下でセッ
ション間で調整するために、同様な方式が複製される。
各仮想リンクは夫々自身の基準仮想リンク(18)を有して
いる。VLiの場合、これはVL i(t)と表示される。
VLi中のセッションはVL i(t)に基づいた時間スタ
ンプがなされる。前述したとおり、VL中でセッション
間のオーバーブッキングは許されている。オーバーブッ
キングの場合、VLに利用できる帯域幅は、セッション
に割り当てられた夫々のレートに比例してセッション間
で分けられる。各仮想リンクのための個別の基準クロッ
クは、セッションが異なったリンクの下で、個別に処理
されることを許容する。このことは、異なった仮想リン
クの下で、異なったレベルのオーバーブッキングを許
す。全体の方式は図6に示す。望ましい実施例のための
対応する疑似コードを附属書類に示した。
【0036】以下は最も重要な特徴である。 ・活動しているセッションだけを維持し、スケジュール
することと同様にして、第1レベルに於いて調整しなが
ら活動している仮想リンクは検討されるだけである。あ
るセッションが存在し、その下で仮想リンクが働らき、
適正であるとき、仮想リンクは働らく。この定義の背景
にあるモチベーションは、この仮想リンクがスケジュー
ルされた時、その下でのセッションは第2レベルの調整
によってそれも又スケジュールされることが出来、サイ
クルは無駄にはされないということである。VLiが活
動的であるかを決める工程は、次のようにして決めるこ
とが出来る。 −仮想リンクの下で、全セッションの中で最小開始時間
のトラックを保持する。これをmimSvとして表す。
(Sv≦VL i(t))の比較が真であることは、VLの下
での少なくともあるセッションは適切であることを示し
ている。 −リンクが空でない時、EMPTY(i)=FALS
E、すなわちその下で活動的セッションが存在するとき
トラックを維持する。パラメータminSvは、EMP
TY(i)=FALSEの場合にだけ真である。 −したがってVLは次の場合には活動的である。 ACTIVE(i)=((EMPTY(i)=FALSE)&&(minSv≧V
L i(t))) ・ポートシステムのクロックは、仮想リンクの適格さを
計ることに屡々使用され、セル時間ごとに更新される。 VP(t+1)=min(VP(t)+1,minFT) ただしminFTは、働いている仮想リンクのすべての
中で最小の終了時間(finish time)を示す。 ・前述したとおり、オーバーブッキングを許すために、
各VLのための個別の独立した仮想クロック(18)が
維持される。全てのVLクロックは次式に基づいた知識
のサイクルごとに更新される。 Vi L(t+1)=min(Vi L(t)+1,minF
V) ただし、minFvはVLiの下で働いている全てのセ
ッションの中で、最小終了時間である。多数の仮想リン
クがあるので、ハードウェア中の制約された数の最少の
比較器では上記操作は困難となる。賢い方式を用いるこ
とによってハードウェアの必要事項は減らすことが出来
る。仮想クロック(18)は、全VLsについてサイク
ルごとに盲目的に増分している。ある仮想リンクがサー
ビスのために選ばれた時だけMinFVの最小の操作が
実行され、Vi L(t+1)の正しい値を得る。この操作
は該正しい値をセッション間で第2レベルの調整に用い
る以前に行われる。VLの下でセッションがオーバーブ
ックされた時、この方式はVLクロックが減速に対応で
きるようにし、所望するオーバーブック操作を確実に行
わせる。 ・VLsが一緒になってポートのオーバーブックをしな
い時。個別の各VLは、その中のセッションに依っては
依然としてオーバーブックされることが出来る。しかし
ながら、オーバーブックされたVL中のセッションは、
他のVLsのセッションには影響を与えない。
【0037】オーバーブッキングによってサービスレー
トの品質が低下することは、例えばCBR,rt−VB
Rのごとき高感度のセッションには、時によっては許容
できないことがある。その様なセッションは、サービス
の受取りについてより高い優先順位が与えられ、それら
のサービスレートが満足出来るようにせねばならない。
その様なセッションが仮想リンクの一部であるときは、
問題は一層難しくなる。図7は、レートが制限されてい
るVLと、補償されたサービスを要求しているセッショ
ンをオーバーブッキングしたときの様子を描いている。
【0038】実施例 2つのセッションC0とC1は、1ポート上の同じVL
に属している。到着するセルは、別々の待ち行列(queue
s)中でバッファリングされている。VLのレートは、4
/10のラインレート以内に制限されている。セッショ
ンC0が2/10のレート保証を要求し、セッションC
1は、4/10のラインレートのレート制限を要求す
る。これは、C0だけがその待ち行列中にセルを有する
ときに、C0は2/10のレート以内に制限されること
を意味している。同様に、C1だけが待ち行列中にセル
を有するときに、C1は4/10のレート以内に制限さ
れる。しかしながら、両方のセッションがセルを有して
いるときには、セッションC0は、2/10のラインレ
ートを受信し続ける。VLレートの残りは、4/10−
2/10=2/10であり、これをC1が受信する。こ
れらレートの合計は4/10であることに注目すると、
VLのレートの制限は、常に維持される。保証が確保さ
れているときに、オーバーブッキングにより、そのよう
な階層的レートの制限を達成させる機構は、以下のよう
に説明される。
【0039】スケジューラー(10)におけるレート間に、
2つの関係が必然的に含まれていることにも注意すべき
である。 ・仮想リンク中のセッション保証の総計は、仮想リンク
上のレート制限よりも小さい。従って、上述の例では、
セッションC0は、それのVLのレートである4/10
のラインレートより多くを要求することはできない。 ・すべてのセッションについての全保証の総計は、ライ
ンレートよりも小さい。
【0040】先の実施例は、RLブロック(26)としてこ
こで言及しているが、RGブロック(24)は、個々のセッ
ションの保証に応ずるための目的で加えられている。R
Gブロック(24)は、オーバーブッキングされるべきでは
ない。RGブロック(24)は、前述の単調なスキーム(fla
t scheme)のように実行する。RGブロックは、自己基
準用の仮想クロック(18)を具える。全体のスキームは図
8に示している。RGブロック(24)についての次いで生
ずる付加的な制約と、RLブロック(26)との相互作用
は、次のとおりである。 ・所与のセルスロット中では、RLを越えたRGを提供
するために、より高い優先順位が与えられる。RGに適
正なセッションがない場合にのみ、RLの下でセッショ
ンが検討される。 ・RGから提供されるセッションについて、VLの対応
する開始時間は、RL中で更新される。これが、VLに
よってそのセッションを介し、RG中で受信されたバン
ド幅を決める。VLがRLを介して獲得できる付加的な
バンド幅は、バンド幅の合計が、そのレート制限よりも
下方に保たれるように制限される。
【0041】図10に示すように、スケジューラには、
階層が存在する。この構成では、1つのポートについ
て、主コントローラ(20)は、コネクション(19)に代え
て、1又は2以上の付加コントローラ(20)に接続でき、
要望がある場合には、1又は2以上のこれら付加コント
ローラを、順にコントローラに接続することもできる。
サービスを要求する各コネクションは、夫々、時間間
隔、開始時間、終了時間を、メモリー(16)に格納してお
り、該メモリー(16)は、コネクションがスケジューラ(1
0)中で最初に接続されたコントローラ(20)に関連づけら
れる。コントローラ(20)は、コネクションの代わりに、
下位レベルのコントローラ(20)に接続され、同様に、下
位のコントローラ(20)に関連づけられたメモリー(16)の
中に、時間間隔、開始時間及び終了時間を記憶してい
る。
【0042】任意のコネクション(19)又は次の上位層
(ポートから離れる側)にて、そこへ接続されたコントロ
ーラ(20)がサービスを受けるのに適しているときは、あ
る層のコントローラ(20)は、サービスを受けることに適
しているか否かを決定する。サービス受信の適格を定め
るコントローラ(20)は、次の下位層(ポートに近い側)で
接続されているコントローラ(20)に、サービスを伝達す
る。
【0043】如何なる所与のスロットタイムにおいて
も、サービスを提供するための決定は、主コントローラ
(20)から、中間コントローラを通って、コネクションで
終わるところまで伝達する。主コントローラは、そのメ
モリー(16)中の適正な情報と最も早い終了時間に基づい
ており、次の上位層でコントローラに直接接続された実
体のどれが、サービスを受信することを決定する。次
に、そのローカルメモリ中の実体の開始と終了時間が更
新される。選択された実体が、次の層中の他のコントロ
ーラ(20)である場合には、該コントローラは、そのメモ
リー(16)中の適格についての情報と最も早い終了時間に
基づいて、次の上位層でコントローラ(20)に直接接続さ
れたどの実体がサービスを受信することに関して、同様
の決定を順に行なう。このように、決定プロセスは、階
層を通じて伝達する。それは、コネクションをサービス
対象に選択したときに終了する。従って、階層的な構造
は、階層的手法によって、順応性(flexibility)が帯域
幅を代表することを許容している。所与のコントローラ
(20)の下でのコネクションの組は、あるレート以内に累
積的に制限されており、これは、次の下位層における接
続されたコントローラ(20)中でそのようなレートに対応
する時間間隔をプログラミングすることによって行なわ
れる。
【0044】関連づけられたコントローラに対する仮想
クロックは夫々、異なる層又は同じ層の他のコントロー
ラの他のすべての仮想クロックとは独立して、仮想時間
を維持することに注意すべきである。各々のスロット時
間、すべての仮想クロックは、仮想ブロックに接続され
た適正な実体の終了時間に基づく等式(1)で記載したよ
うに更新される。等式(1)は、スケジューラ中で、各仮
想クロック(18)に対して行なわれる増分(increment)と
最小の操作を要求する。多数の仮想リンクを用いて、上
述の操作をハードウェア中で実行するには非常に費用が
かかる。ハードウェアの要件は、次のスキームを用いる
ことによって減じることができる。すべての仮想クロッ
ク(18)は、各スロット時間で盲目的に増大する。コント
ローラ(20)がサービスを受信したときに、クロックの正
確な値を得るために、最小の操作を仮想クロック(18)上
で行なう。このことによって、コントローラは、次のレ
ベルでの調整(next level of arbitration)によりクロ
ックの正確な値を用いることができる。コントローラの
下で実体がオーバーブッキングされているとき、スキー
ムは、所望のオーバーブッキング操作を保証するため
に、仮想クロックがスローダウンを反映する(reflect)
ことを保証する。
【0045】図8及び図11を参照すると、保証された
サービスは、上述した階層的な構造で確立することがで
きる。本実施例では、サービスの保証レートを要求する
コネクションは、レート制限されたコントローラの主コ
ントローラと下位層のコントローラから分離したレート
保証コントローラ(20)に接続される。各スロット時間に
おいて、階層づけられた主レート制限コントローラ(10)
が、コントローラの下で、如何なるコネクションとの手
続を進める前に、レート保証コントローラ(20)は、ま
ず、サービスを受信するレート保証コネクションが存在
するかどうかを調べるための確認を行なう。もし存在す
るのであれば、他のレート制限されたコントローラのコ
ネクションがサーバ(14)からサービスを受信する前に、
これらコネクションは、まず、サーバ(14)からサービス
を受信する。レート保証コネクションが、また、特殊な
レート以内に制限されたレートであるコネクションの組
に属するのであれば、そのようなコネクションによって
受信されたレートを制御する階層に沿ってレートリミッ
ター中のコントローラ(20)は、受信したサービスをアカ
ウントするために、開始と終了時間を更新する。
【0046】本発明は、例示を目的とした上述の実施例
で詳細に説明されているが、これら説明は、単にその目
的のためのものであり、次の請求の範囲の記載された事
項を除いて、本発明の精神と範囲から離れることなく、
当業者が変形を加え得ることは理解されるべきである。
【0047】なお、図13及び図14に、オーバーブッ
キングをサポートするフラットレートリミッターの実施
についての擬似コードを示す。また、両レベルでのオー
バーブッキングをサポートする階層レートリミッター手
法についての擬似コードを、図15及び図16に示す。
【図面の簡単な説明】
【図1】典型的なPFQスキーム内にて維持される従来
の仮想クロック及びセッションの開始/終了時間を示
す。
【図2】オーバーブッキングが存在するときの望ましい
動作を示す例である。セッションC0及びC1は夫々2/
4及び3/4のレート限界を要求する。このように、C
0、C1が同時に動作しているときは、ラインはオーバー
ブックされる。そのような期間中、夫々2/5及び3/
5のラインレートを受信する。それ以外の場合は、要求
したレート限界のサービスを受信する。
【図3】オーバーブッキングが単純に増加する仮想クロ
ック時間関数が与えられて、レート限界の実行に伴う飢
餓状態(starvation)の問題を示す例である。行1は実時
間(t)の進行を示す。行2はこの例のtのように、対応
するV(t)の値を示す。行3、4及び5は、セッション
C0、C1及びC2の開始/終了時間を夫々示す。
【図4】オーバーブッキングを有するときのレートリミ
ッターを新たに実行する際に伴うセッションの動作を示
す例である。この実行に於ける仮想時間機能は、動的セ
ッションの最小終了時間を越える(move ahead)ことは許
されない。行1は、実時間(t)の進行を示す。行2はこ
の例のtのように、対応するV(t)の値を示す。行3、
4及び5は、セッションC0、C1及びC2の開始/終了
時間を夫々示す。
【図5】限定されたレートVLの内部にてオーバーブッ
キングが存在するときの望ましい動作を示す例である。
セッションC0及びC1はラインレート4/10に限定さ
れたレートVLの内部で、夫々ラインレートが2/10
及び4/10のレート限界を夫々要求する。従って、C
0、C1が同時に動作しているときは、VLはオーバーブ
ックされる。その期間中、夫々1.33/10及び2.6
6/10のラインレートを受信する。それ以外の場合
は、要求したレート限界のサービスを受信する。
【図6】階層的レートリミッター(RL)の実行であり、
VL間で、更にはVL下にあるセッション間でのオーバ
ーブッキングを支持する。ポート基準クロックはV
P(t)である。各仮想リンクVLiは自身の基準クロック
L i(t)を有する。
【図7】限定されたレートVLの内部で、あるオーバー
ブッキングの存在下に於ける望ましい動作を示す例であ
る。ラインレートが4/10に限定されたレートVLの
内部でセッションC0は2/10のレートを保証するこ
とを要求し、セッションC1はラインレートが4/10
のレート限界を要求する。従って、C1とC0が同時に動
的であるときは、VLはオーバーブックされる。その期
間中、C0は2/10のラインレート保証を受信し続
け、一方C1はラインレートの2/10を受信するのみ
である。
【図8】階層的なレート限界及びオーバーブッキング、
更に保証されたセッションのレート支持を許す例であ
る。RGブロック内のセッションは、RLブロックより
もより上位の優先順位を得る。RGから出力して供され
るセッションがあって、それもまたVLに属するなら
ば、VLの対応する開始時間は、RL内で更新される。
そのような演算は、VLがRLを介して得ることができ
る更なる帯域幅を制限し、それによってそのレート限界
内にて残るようにする。
【図9】本発明のスケジューラーの概略図である。
【図10】階層的な構造を有するスケジューラーの概略
図である。
【図11】レート保証部とともに階層的な構造を有する
スケジューラーの概略図である。
【図12】本発明の方法のフローチャートである。
【図13】オーバーブッキングをサポートするフラット
レートリミッターの実施についての擬似コードを示す図
である。
【図14】図13の続きを示す図である。
【図15】両レベルでのオーバーブッキングをサポート
する階層レートリミッター手法についての擬似コードを
示す図である。
【図16】図15の続きを示す図である。
【符号の説明】
(10) スケジューラー (14) サーバ (16) メモリー (18) 仮想クロック (20) コントローラ
フロントページの続き (72)発明者 ファン チョウ アメリカ合衆国 16066 ペンシルベニア, クランベリー,アバディーン ドライブ 120 (72)発明者 スールヤ パプ アメリカ合衆国 95054 カリフォルニア, サンタクララ,パーク ビュー ドライブ 610,#212

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 サーバによって実体を操作する際の制御
    を行なうスケジューラであって、 N個の実体であって、Nは1又は1よりも大きい整数で
    あり、各実体は、サーバからサービスを受信するレート
    を有するN個の実体と、 N個の実体の終了時間fiを有するメモリーであって、
    iは、i番目の実体が、サーバによって操作される時
    間に対応するメモリーと、 仮想時間のトラックを保持して、終了時間fiを確認す
    る仮想クロックと、 終了時間の関数としてサーバによって操作される実体を
    選択するコントローラであって、該コントローラは、実
    体にサービスを提供するための仮想時間を遅らせるもの
    であり、仮想クロックとメモリーに接続されたコントロ
    ーラと、を具える。
  2. 【請求項2】 請求項1に記載のスケジューラであっ
    て、各実体は、サーバからサービスを要求するレートを
    有しており、実体のレートの合計は、1よりも大きくで
    きる。
  3. 【請求項3】 請求項2に記載のスケジューラであっ
    て、コントローラは、仮想時間に等しい終了時間を有す
    るすべての実体が、サーバからサービスを受信するま
    で、仮想時間を停止させる。
  4. 【請求項4】 請求項3に記載のスケジューラであっ
    て、コントローラは、各実体のレートの関数として各実
    体にサービスを提供するものであり、レートの総計は、
    1よりも大きいものである。
  5. 【請求項5】 請求項4に記載のスケジューラであっ
    て、コントローラは、次式に応じて仮想時間を操作す
    る。 V(t+1)=min(V(t)+1,minF) 但し、minFは、終了時間を有するすべての実体中の
    最も早い終了時間を示している。
  6. 【請求項6】 請求項5に記載のスケジューラであっ
    て、メモリーは、N個の実体の開始時間siを有してお
    り、iは1≦i<Nである整数であり、siは、i番目
    の実体がサーバから次のサービスを要求でき、メモリー
    がN個の実体のレート制限時間TIiを有するときの最
    も早い時間に対応している。
  7. 【請求項7】 請求項6に記載のスケジューラであっ
    て、コントローラは、実体に最も早い終了時間でサービ
    スを提供する。
  8. 【請求項8】 請求項7に記載のスケジューラであっ
    て、コントローラの階層を有しており、N個の実体のう
    ちの少なくとも第1の実体は、第2層のコントローラ中
    の複数の実体を表しており、第2層の第2の実体は、第
    3層のコントローラ中の実体を表しており、スケジュー
    ラ中で最初にコネクションが接続されたコントローラに
    関連づけられたメモリー中に、時間間隔と開始時間を格
    納しているサービスを必要とするコネクションであり、 下位レベルのコントローラに接続されたコントローラ
    は、時間間隔と開始時間を、下位層のコントローラに関
    連づけられたメモリー中に格納している。
  9. 【請求項9】 請求項8に記載の階層的なスケジューラ
    であって、第1層のコントローラは、第1の実体が適正
    であり、サービスを待っている実体の最も早い終了時間
    を有しているとき、サービスを提供するために第1の実
    体を選択し、そのローカルメモリー中の実体の開始時間
    と終了時間を更新し、 他のコントローラは、さらに、第2の実体が適正であ
    り、第2のコントローラでサービスを待っている実体の
    最も早い終了時間を有しているとき、サービスを提供す
    るために第2の実体を選択し、そのローカルメモリ中で
    実体の開始時間と終了時間を更新する。
  10. 【請求項10】 請求項9に記載の階層的なスケジュー
    ラであって、各コントローラは、コントローラに接続さ
    れた適正な実体の終了時間に基づいて更新されたすべて
    の仮想ブロックによって、異なる層又は同じ層の他のコ
    ントローラのすべての他のクロックから独立した仮想ク
    ロックを維持している。
  11. 【請求項11】 請求項10に記載の階層的なスケジュ
    ーラであって、すべての仮想クロックは、各サイクルタ
    イムで増分され、クロックの正しい値を獲得するため
    に、最小の操作を仮想クロック上で行なって、コントロ
    ーラがサービスを受信したときに、コントローラが次の
    レベルのクロックの正しい値を用いることを許容する。
  12. 【請求項12】 請求項9に記載の階層的なスケジュー
    ラであって、コントローラにおける実体の合計は、1よ
    りも大きくすることができ、従って、スケジューラにオ
    ーバーブッキングを許容し、過密になっている間、コン
    トローラはオーバーブッキング動作を反映させるため
    に、仮想クロックのスローダウンを保証する。
  13. 【請求項13】 請求項12に記載の階層的なスケジュ
    ーラであって、オーバーブッキングのない実体により受
    信されたレートは、オーバーブッキングされたレートに
    等しく、実体によって受信されたレートは、レートの最
    小値又はコントローラで適正な実体のレートの合計によ
    って減じられたレートである。
  14. 【請求項14】 請求項13に記載のスケジューラであ
    って、少なくとも1の実体は、サービスを待っている実
    体の最も早い終了時間である終了時間を有していると
    き、サーバからサービスを保証される。
  15. 【請求項15】 請求項14に記載のスケジューラであ
    って、コントローラが、サービスを保証された実体が、
    サービスを待っている実体の最も早い終了時間を有して
    いるかどうかを確認し、どの実体が次にサービスを受信
    するかを決定するとき、サービスを保証された実体は、
    コントローラによって最初に再調査される。
  16. 【請求項16】 サーバによって実体を操作する際の制
    御を行なうスケジューラであって、 N個の実体であって、Nは1又は1よりも大きい整数で
    あり、各実体は、サーバからサービスを受信するレート
    を有しており、N個の実体の第1の実体は複数のコネク
    ションを有しており、コントローラは、複数のコネクシ
    ョンのうち、少なくとも1つが、サービスを待ってお
    り、サービスを待っている実体の最も早い終了時間が終
    了時間である場合、サービスを提供する第1の実体を選
    択するものであるN個の実体と、 N個の実体の終了時間fiを有するメモリーであって、
    iは、i番目の実体がサーバによって操作される時間
    に対応したメモリーと、 仮想時間のトラックを維持して、終了時間fiを確認す
    る仮想クロックと、 終了時間の関数としてサーバによって操作される実体を
    選択するコントローラであって、該コントローラは、実
    体にサービスを提供するための仮想時間を遅らせるもの
    であり、仮想クロックとメモリーに接続されたコントロ
    ーラと、を具える。
  17. 【請求項17】 サーバからのサービスをスケジュール
    するための方法であって、 サービスについての第1のレートを有する第1の実体か
    ら第1の要求を、サーバから受信し、 第1の実体が第1の実体からサービスを受信するとき
    に、メモリーに終了時間を格納し、 サービスについての第2のレートを有する第2の実体か
    ら第2の要求を、サーバから受信し、 第1の実体にサービスを提供し、 第2の実体の終了時間が、仮想時間と等しいければ、仮
    想時間を停止し、 第2の実体へ、サービスを提供するステップを含んでい
    る。
  18. 【請求項18】 請求項17に記載の方法であって、実
    体のレートの合計は、1よりも大きい。
  19. 【請求項19】 請求項14に記載の方法であって、第
    1の実体へサービスを提供するステップは、第1の実体
    の第1のコネクションへサービスを提供し、次に、第1
    の実体の第2のコネクションへサービスを提供するステ
    ップである。
  20. 【請求項20】 請求項16に記載の方法であって、第
    1の実体へサービスを提供するステップの前に、第1の
    実体が、終了時間を有する実体の最も早い終了時間であ
    る終了時間を有しているかどうか決定するステップを含
    んでいる。
JP20739399A 1998-07-22 1999-07-22 オーバーブッキングの能力がある場合、ない場合の階層的な転送速度制限を保証しながらサービスの提供をスケジュールするポートスケジューラとその手法 Expired - Fee Related JP4327948B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/120697 1998-07-22
US09/120,697 US6122673A (en) 1998-07-22 1998-07-22 Port scheduler and method for scheduling service providing guarantees, hierarchical rate limiting with/without overbooking capability

Publications (2)

Publication Number Publication Date
JP2000059365A true JP2000059365A (ja) 2000-02-25
JP4327948B2 JP4327948B2 (ja) 2009-09-09

Family

ID=22391998

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20739399A Expired - Fee Related JP4327948B2 (ja) 1998-07-22 1999-07-22 オーバーブッキングの能力がある場合、ない場合の階層的な転送速度制限を保証しながらサービスの提供をスケジュールするポートスケジューラとその手法

Country Status (5)

Country Link
US (1) US6122673A (ja)
EP (1) EP0986221B1 (ja)
JP (1) JP4327948B2 (ja)
AT (1) ATE375046T1 (ja)
DE (1) DE69937219T2 (ja)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002528819A (ja) 1998-10-28 2002-09-03 バーティカルワン コーポレイション 自動集合の装置および方法、電子パーソナルインフォメーションあるいはデータを送達する装置および方法、ならびに電子パーソナルインフォメーションあるいはデータを含むトランザクション
US6517587B2 (en) * 1998-12-08 2003-02-11 Yodlee.Com, Inc. Networked architecture for enabling automated gathering of information from Web servers
US7085997B1 (en) 1998-12-08 2006-08-01 Yodlee.Com Network-based bookmark management and web-summary system
US7672879B1 (en) 1998-12-08 2010-03-02 Yodlee.Com, Inc. Interactive activity interface for managing personal data and performing transactions over a data packet network
US8069407B1 (en) 1998-12-08 2011-11-29 Yodlee.Com, Inc. Method and apparatus for detecting changes in websites and reporting results to web developers for navigation template repair purposes
US7065762B1 (en) * 1999-03-22 2006-06-20 Cisco Technology, Inc. Method, apparatus and computer program product for borrowed-virtual-time scheduling
US7752535B2 (en) 1999-06-01 2010-07-06 Yodlec.com, Inc. Categorization of summarized information
US6976258B1 (en) 1999-11-30 2005-12-13 Ensim Corporation Providing quality of service guarantees to virtual hosts
US6754716B1 (en) 2000-02-11 2004-06-22 Ensim Corporation Restricting communication between network devices on a common network
US7343421B1 (en) 2000-02-14 2008-03-11 Digital Asset Enterprises Llc Restricting communication of selected processes to a set of specific network addresses
US6948003B1 (en) 2000-03-15 2005-09-20 Ensim Corporation Enabling a service provider to provide intranet services
US6985937B1 (en) 2000-05-11 2006-01-10 Ensim Corporation Dynamically modifying the resources of a virtual server
US6907421B1 (en) 2000-05-16 2005-06-14 Ensim Corporation Regulating file access rates according to file type
US6904045B1 (en) * 2000-06-02 2005-06-07 Agere Systems Inc. Method and apparatus for guaranteeing data transfer rates and delays in asynchronous transfer mode networks using pivot sessions
US7143024B1 (en) 2000-07-07 2006-11-28 Ensim Corporation Associating identifiers with virtual processes
US6909691B1 (en) * 2000-08-07 2005-06-21 Ensim Corporation Fairly partitioning resources while limiting the maximum fair share
DE10051147B4 (de) * 2000-10-16 2005-04-14 Siemens Ag Verfahren zum Zugriff auf ein IP-Netz und zur Arbeit in diesem
JP3526269B2 (ja) * 2000-12-11 2004-05-10 株式会社東芝 ネットワーク間中継装置及び該中継装置における転送スケジューリング方法
US7219354B1 (en) 2000-12-22 2007-05-15 Ensim Corporation Virtualizing super-user privileges for multiple virtual processes
US7310345B2 (en) 2001-11-01 2007-12-18 International Business Machines Corporation Empty indicators for weighted fair queues
US7317683B2 (en) * 2001-11-01 2008-01-08 International Business Machines Corporation Weighted fair queue serving plural output ports
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
US7280474B2 (en) 2001-11-01 2007-10-09 International Business Machines Corporation Weighted fair queue having adjustable scaling factor
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
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
US7187684B2 (en) * 2001-11-01 2007-03-06 International Business Machines Corporation Weighted fair queue having extended effective range
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
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
US7599002B2 (en) * 2003-12-02 2009-10-06 Logitech Europe S.A. Network camera mounting system
US20050120128A1 (en) * 2003-12-02 2005-06-02 Wilife, Inc. Method and system of bandwidth management for streaming data
WO2005094012A1 (en) * 2004-03-27 2005-10-06 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for overload handling at a processing device
US20060171453A1 (en) * 2005-01-04 2006-08-03 Rohlfing Thomas R Video surveillance system
US20060255931A1 (en) * 2005-05-12 2006-11-16 Hartsfield Andrew J Modular design for a security system
US7606752B2 (en) 2006-09-07 2009-10-20 Yodlee Inc. Host exchange in bill paying services
US7801045B2 (en) 2007-06-19 2010-09-21 Alcatel Lucent Hierarchical rate limiting with proportional limiting
US8261334B2 (en) 2008-04-25 2012-09-04 Yodlee Inc. System for performing web authentication of a user by proxy
US20090323529A1 (en) * 2008-06-27 2009-12-31 Ericsson Inc. Apparatus with network traffic scheduler and method
US8555359B2 (en) 2009-02-26 2013-10-08 Yodlee, Inc. System and methods for automatically accessing a web site on behalf of a client
US8705486B2 (en) * 2011-01-19 2014-04-22 Qualcomm Incorporated Methods and apparatus for scheduling peer to peer traffic in cellular networks
JP2015095220A (ja) * 2013-11-14 2015-05-18 ソニー株式会社 情報処理装置、情報処理方法および記録媒体
RU2676423C2 (ru) * 2014-06-25 2018-12-28 Сименс Акциенгезелльшафт Способ и устройство для реализации концепции транзакций в opc ua посредством механизма таймаута
DE102014011185A1 (de) 2014-07-31 2016-02-04 Daimler Ag Betrieb eines Systems, mit dem Mietfahrzeuge in einem Gebiet zur Anmietung durch Nutzer bereitgestellt werden

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2150967C (en) * 1994-12-22 2001-04-03 Jon C. R. Bennett Method and a scheduler for controlling when a server provides service with rate control to an entity
EP0748086A1 (en) * 1995-06-09 1996-12-11 Siemens Aktiengesellschaft Method for scheduling message cells leaving an ATM node
US6038217A (en) * 1996-06-27 2000-03-14 Xerox Corporation Rate shaping in per-flow output queued routing mechanisms for available bit rate (ABR) service in networks having segmented ABR control loops
EP0817431B1 (en) * 1996-06-27 2007-01-17 Xerox Corporation A packet switched communication system
US5991812A (en) * 1997-01-24 1999-11-23 Controlnet, Inc. Methods and apparatus for fair queuing over a network
JP2001519120A (ja) * 1997-04-04 2001-10-16 アセンド コミュニケーションズ インコーポレイテッド 階層型パケット・スケジューリング方法及び装置

Also Published As

Publication number Publication date
JP4327948B2 (ja) 2009-09-09
US6122673A (en) 2000-09-19
DE69937219D1 (de) 2007-11-15
DE69937219T2 (de) 2008-07-03
EP0986221A3 (en) 2003-12-03
EP0986221A2 (en) 2000-03-15
EP0986221B1 (en) 2007-10-03
ATE375046T1 (de) 2007-10-15

Similar Documents

Publication Publication Date Title
JP4327948B2 (ja) オーバーブッキングの能力がある場合、ない場合の階層的な転送速度制限を保証しながらサービスの提供をスケジュールするポートスケジューラとその手法
US7177317B2 (en) Flexible scheduler in an asynchronous transfer mode (ATM) switch
JP3618390B2 (ja) Atmスイッチにおける帯域幅要求を処理する装置および方法
JP3814393B2 (ja) セルスケジューリング方法及びその装置
US5408465A (en) Flexible scheme for admission control of multimedia streams on integrated networks
US6067301A (en) Method and apparatus for forwarding packets from a plurality of contending queues to an output
US5831971A (en) Method for leaky bucket traffic shaping using fair queueing collision arbitration
JP3813695B2 (ja) パケット交換通信システム
US7558278B2 (en) Apparatus and method for rate-based polling of input interface queues in networking devices
US7616567B2 (en) Shaping apparatus, communication node and flow control method for controlling bandwidth of variable length frames
JPH0846590A (ja) データ伝送システム
Vogt et al. HeiRAT-quality-of-service management for distributed multimedia systems
JPH08237279A (ja) トラフィック制御装置
JPH10215258A (ja) パケット交換通信システム
WO2002098080A1 (en) System and method for scheduling traffic for different classes of service
JPH10313324A (ja) 通信ネットワークにおけるパケットの配送装置とその方法
JP2002232470A (ja) スケジューリング装置
EP1393498B1 (en) Distributed shared memory packet switch
CA2462793C (en) Distributed transmission of traffic streams in communication networks
US7130270B2 (en) Method and apparatus for varying bandwidth provided to virtual channels in a virtual path
US7640355B1 (en) Supplemental queue sampling technique for packet scheduling
EP2063580B1 (en) Low complexity scheduler with generalized processor sharing GPS like scheduling performance
JP4238415B2 (ja) 送信端末装置およびネットワークノードおよび中継スイッチ
US6618391B1 (en) Method and apparatus for guaranteeing data transfer rates and delays in data packet networks using discrete data transfer rates
Liebeherr et al. Design and analysis of a high-performance packet multiplexer for multiservice networks with delay guarantees

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20040901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040906

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20040906

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060705

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20080514

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081024

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081125

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090217

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090220

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090324

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090414

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090612

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

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4327948

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130619

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees