JP2002232469A - スケジューリング装置およびスケジューリング方法 - Google Patents
スケジューリング装置およびスケジューリング方法Info
- Publication number
- JP2002232469A JP2002232469A JP2002000601A JP2002000601A JP2002232469A JP 2002232469 A JP2002232469 A JP 2002232469A JP 2002000601 A JP2002000601 A JP 2002000601A JP 2002000601 A JP2002000601 A JP 2002000601A JP 2002232469 A JP2002232469 A JP 2002232469A
- Authority
- JP
- Japan
- Prior art keywords
- bundle
- service
- data packet
- flow
- frame
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/41—Flow control; Congestion control by acting on aggregated flows or links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/826—Involving periods of time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/828—Allocation of resources per group of connections, e.g. per group of users
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
帯域保証を、個々のデータパケットフローと、それらの
フローの集合(バンドル)の両方に提供する。 【解決手段】 各バンドル401について、スケジュー
ラ402は、そのバンドルに名目上割り当てられる帯域
と、そのバンドルで現在積滞している(バックログのあ
る)フローの帯域割当ての総和との間の比を決定する。
スケジューラは、その比を用いて、個々のフローへの帯
域の分配を規制するタイムスタンプ増分を修正する。こ
のようにして、そのバンドルに対する比が大きいほど、
そのバンドル内のそれぞれのバックログフローが受ける
帯域は大きくなる。スケジューラは、常に、フローが積
滞している限り、与えられたデータパケットフローの帯
域要求を満たし、バンドル内に少なくとも1つのバック
ログフローがある限り、与えられたバンドルの帯域要求
を満たす。
Description
ーラに関し、特に、個々のデータソースへ、および、そ
れらのデータソースの集合(aggregate)へのデータ転送
レートを保証するパケットスケジューリング装置および
方法に関する。
[付録]に掲げた文献1参照]やDifferentiated Servi
ce (Diffserv)[2]のような精緻なサービス品質(Q
oS)フレームワークがますます広まるとともに、フレ
キシブルな帯域管理の可能なパケットスケジューラが重
要視されている。従来のいくつかのパケットスケジュー
ラは、すぐれた最悪の場合の遅延性能を提供するととも
に、正確な帯域保証を提供する[3,4,5,6,7,
8]が、それらのコストはかなり高い[6,7,8]。
ンドロビン(WRR:Weighted Round Robin)スケジュ
ーラ[9,10,11]に相当の関心を示している。W
RRスケジューラは、ぎりぎりまでの(タイトな)遅延
限界を必ずしも達成するものではないが、最小限の複雑
さで頑強(ロバスト)な帯域保証を提供する。このよう
なスケジューラのさまざまな実例が文献に現れている。
よく知られた例には、不足ラウンドロビン(DRR:De
ficit Round Robin)アルゴリズム[10]および余剰
ラウンドロビン(SRR:Surplus Round Robin)[1
1]アルゴリズムがある。
上記の実例は、異種のデータパケットフローの帯域保証
を差別化することには成功している。しかし、それらが
現在規定されている形態に関しては、新しいサービス品
質フレームワークのすべての帯域要求を満たすには十分
でない。一般に、ネットワークノードにおけるフレキシ
ブルな帯域管理は、帯域が、個々のフローに割り当てら
れることが可能であるだけでなく、それらのフローの集
合にも割り当てられることが可能であるような、階層的
スケジューリング構造の展開を必要とする。従来のWR
Rスケジューラでは、帯域分離を達成するための階層構
造の重ね合わせは、基本のスケジューラの単純さを損な
う。
ジューリングの技術分野においては、基本スケジューラ
の単純さを損なわずに階層的帯域分離を達成する改良さ
れたスケジューラ装置が必要とされている。
帯域分離のためのスケジューラ装置を規定することであ
る。この新規な技術の目標は、完全に透過的な方法で、
すなわち、追加のスケジューリング構造を使用せずに、
帯域保証を、個々のデータパケットフローに提供すると
ともに、それらのフローの集合(「バンドル」という)
にも提供することである。
のバンドルに名目上割り当てられる帯域と、そのバンド
ルで現在積滞している(バックログのある)フローの帯
域割当ての総和との間の比を決定する。スケジューラ
は、その比を用いて、個々のフローへの帯域の分配を規
制するタイムスタンプ増分を修正する。このようにし
て、そのバンドルに対する比が大きいほど、そのバンド
ル内のそれぞれのバックログフローが受ける帯域は大き
くなる。スケジューラは、常に、フローが積滞している
限り、与えられたデータパケットフローの帯域要求を満
たし、バンドル内に少なくとも1つのバックログフロー
がある限り、与えられたバンドルの帯域要求を満たす。
置は、複数のデータパケットフローについてデータパケ
ットの送信をスケジューリングする。前記データパケッ
トフローには、通信リンクの送信容量rのうちの所定シ
ェアが割り当てられ、前記データパケットフローは複数
のバンドルにまとめられる。前記バンドルには、前記通
信リンクの処理容量のうちのサービスシェアが割り当て
られる。通信リンクを通じての送信はサービスフレーム
に分けられる。1サービスフレームは、あらゆるバック
ログデータパケットフローに少なくとも1つの送信機会
を提供する。バックログデータパケットフローは、複数
のパケットキューのうちの対応するパケットキューに格
納された少なくとも1つのデータパケットを有するデー
タパケットフローである。本発明のスケジューリング装
置は、(1)サービスフレームの期間を決定する手段
と、(2)各データパケットフローが、十分な数の連続
するサービスフレームにわたり連続してそのデータパケ
ットフローにバックログがある場合に、常に少なくとも
その割り当てられたサービスシェアを受けるとともに、
各バンドルが、十分な数の連続するサービスフレームに
わたり1サービスフレームの全期間中連続してバックロ
グのあるバンドル内に少なくとも1つのデータパケット
フローがある場合に、少なくともその割り当てられたサ
ービスシェアを受けることを保証する手段とを有する。
前記保証する手段は、(A)各バンドルIについて、同
じバンドルIにまとめられた前記データパケットフロー
のそれぞれに割り当てられる前記サービスシェアの総和
に関係する累積シェアΦIを管理する手段と、(B)各
バンドルIについて、該バンドルIに割り当てられるサ
ービスシェアRIと、該バンドルの前記累積シェアΦI
との間のサービス比を計算する手段と、(C)前記複数
のバンドルのそれぞれについて計算されたサービス比を
用いて、前記複数のデータパケットフローのそれぞれに
割り当てられる前記サービスシェアを修正する手段とを
有する。
ーについてデータパケットの送信をスケジューリングす
る方法に関する。前記データパケットフローには、出通
信リンクの送信容量のうちの所定シェアが割り当てら
れ、前記データパケットフローは複数のバンドルにまと
められる。前記バンドルには、前記出通信リンクの送信
容量rのうちのサービスシェアが割り当てられる。通信
リンクを通じての送信はサービスフレームに分けられ
る。1サービスフレームは、あらゆるバックログデータ
パケットフローに少なくとも1つの送信機会を提供す
る。バックログデータパケットフローは、複数のパケッ
トキューのうちの対応するパケットキューに格納された
少なくとも1つのデータパケットを有するデータパケッ
トフローである。この方法は、(1)サービスフレーム
の期間を決定するステップと、(2)各データパケット
フローが、十分な数の連続するサービスフレームにわた
り連続してそのデータパケットフローにバックログがあ
る場合に、常に少なくともその割り当てられたサービス
シェアを受けるとともに、各バンドルが、十分な数の連
続するサービスフレームにわたり1サービスフレームの
全期間中連続してバックログのあるバンドル内に少なく
とも1つのデータパケットフローがある場合に、少なく
ともその割り当てられたサービスシェアを受けることを
保証するステップと、(3)各バンドルIについて、同
じバンドルIにまとめられた前記データパケットフロー
のそれぞれに割り当てられる前記サービスシェアの総和
に関係する累積シェアΦIを管理するステップと、
(4)各バンドルIについて、該バンドルIに割り当て
られるサービスシェアRIと、該バンドルの前記累積シ
ェアΦIとの間のサービス比を計算するステップと、
(5)前記複数のバンドルについて計算されたサービス
比を用いて、前記複数のデータパケットフローのそれぞ
れに割り当てられる前記サービスシェアを修正するステ
ップとを有する。
1−1〜101−pが通信リンクにより相互に接続され
た例示的なパケットネットワークを示す。いくつかのデ
ータソース102−1〜102−qが通信スイッチに接
続される。ネットワークコネクションが、それぞれのデ
ータソースから、対応する宛先103−1〜103−g
へと確立され、データパケットは、各データソースから
対応する宛先へ送信される。
ッチ101−1の例示的なブロック図である。図示のよ
うに、通信スイッチは、スイッチファブリック250
と、複数の通信リンクインタフェース200−1〜20
0−sを有する。各通信リンクインタフェースは、複数
の入力リンクを1つの出力リンクに接続し、データパケ
ットを入力リンクから出力リンクへ転送する。通信スイ
ッチ101−1は、このような通信リンクインタフェー
ス200を1個だけ含むことも、複数含むことも可能で
ある。例えば、入力通信リンクインタフェース200−
1はスイッチファブリック250の前に配置され、その
場合、入力通信リンクインタフェース200−1の入力
リンク201−1〜201−rは通信スイッチ101−
1の入力リンクであり、入力通信リンクインタフェース
200−1の出力リンク203はスイッチファブリック
250に接続される。
ェース200−jはスイッチファブリック250の出力
に配置され、出力通信リンクインタフェース200−j
の入力リンクはスイッチファブリック250の複数の出
力リンク204であることが可能であり、出力通信リン
クインタフェース200−jの出力リンクは通信スイッ
チ101−1の出力リンク202−jである。注意すべ
き点であるが、1つの特定のリンクを通じて、または、
複数の相異なるリンクを通じて受信されるパケットは、
同じ長さであることもそうでないこともある。例えば、
スイッチファブリック250が非同期転送モード(AT
M)スイッチであり、図1のネットワークがATMネッ
トワークである場合、すべてのパケットは同じ長さを有
する。本発明の以下の説明では、1つの特定のリンクを
通じて、または、複数の相異なるリンクを通じて受信さ
れるパケットは、長さが必ずしも同じでないと仮定す
る。
に、図2の通信リンクインタフェース200のそれぞれ
は一般に、少なくともパケット受信器、スケジューラ、
およびパケット送信器を有する。前述のように、スケジ
ューラは、重み付けラウンドロビン(WRR)スケジュ
ーラ[9,10,11]であることが可能であり、さら
にこれは、不足ラウンドロビン(DRR:Deficit Roun
d Robin)[10]または余剰ラウンドロビン(SR
R:Surplus Round Robin)[11]のアルゴリズムに
従って実装されることが可能である。
ムは、その最小限の実装複雑さと、割り当てられるサー
ビスシェアに比例してフローをサービスする際のその効
率とにより、可変サイズのパケットに対するWRRスケ
ジューラの最も普及している実例の1つである。WRR
パラダイムに従って、DRRアルゴリズムは、サービス
シェアρiを各設定フローiに関連づける。サービスシ
ェアは、すべての設定フローにわたるそれらの和がサー
バの容量rを超えないときに、最小の保証サービスレー
トとなる。
る)は、ρiより低くない長期レートでフローiがサー
ビスを受けることを保証する。
ビティをサービスフレームに分割する。本発明は、基準
タイムスタンプ増分TQを用いて仮想時間領域でフレー
ム期間を表現するアルゴリズムの定式化を参照する。こ
の定式化は、最初に[10]で提示されたDRRの定義
と機能的に等価であるが、本発明の記述にはより適して
いる。
式のような量Qiの情報ユニットの送信の権利が与えら
れる。 Qi=ρi・TQ (2)
バックログフローを処理するため、一発でそのフレーム
に対するそれらのフローのサービス期待値を充足する。
各フローiは、パケットのキュー(フローキュー)と、
長さli kの新たなパケットpi kがフローキューの先
頭に到着するごとに更新される次式のタイムスタンプF
iとを管理する。 Fi k=Fi k−1+li k/ρi (3)
そのタイムスタンプがTQより小さくとどまる限り続け
る。タイムスタンプFiが基準タイムスタンプ増分TQ
を超えると、スケジューラは、フローiの処理の終了を
宣言し、TQをフローiのタイムスタンプから減算し、
サービスすべき別のバックログフローを探す。その結
果、TQの減算後、Fiの値は、フローiに対するサー
ビスクレジット(貸し)を表現する。一般に、タイムス
タンプは、バックログフローのサービスクレジットを後
のフレームに持ち越すため、スケジューラは、長期間で
は(すなわち、複数のフレームにわたって)、割り当て
られたサービスシェアに比例してサービスを分配するこ
とができる。
ラは直ちに別のフローに移り、それへのサービスの提供
を開始する。フローiが短時間で再びバックログになる
と、フローiは、サーバからの次の処理を受けるために
は、次のフレームの開始を待たなければならない。フロ
ーがアイドルになると、同じフローが将来のフレームで
再びバックログになった場合のサービスの損失を避ける
ために、そのフローのタイムスタンプはゼロにリセット
される。構成により、アイドルのフローのタイムスタン
プは常にTQより小さいため、タイムスタンプのリセッ
トは、他のフローに不利になるような余分のサービスク
レジットを生じることはない。
は、フローiのタイムスタンプFiの値は0とLi/ρ
iの間にある。ただし、Liはフローiのパケットの最
大サイズである。タイムスタンプの初期値のゆらぎは、
フローiが1フレームで送信する情報ユニットの量のゆ
らぎを引き起こし、これは区間(Qi−Li,Qi+L
i)内にある。このため、すべての設定フローが永続的
に積滞しているときでさえ、サーバが1フレームで送信
する情報ユニットの総量は一定でない。
IFO順に巡回されるバックログフローの単一の連結リ
ストにより実装された。次式のように、基準タイムスタ
ンプ増分TQが、最小サービスシェアのフローに対する
最大サイズのパケットにより定まるタイムスタンプ増分
より小さくない場合には、バックログフローを単一FI
FOキューに配置すると、O(1)の実装複雑さとな
る。 TQ≧Lma/ρmi (4)
ジューラのアルゴリズム複雑さは、連続するパケット送
信間に実行されるべき基本オペレーションの最悪の場合
の数とともに爆発的に増大する(基本オペレーションに
は、連結リストにおけるフローの取り出しおよび挿入、
タイムスタンプ更新、タイムスタンプと基準タイムスタ
ンプ増分の比較、が含まれる)。実際、スケジューラ
は、基準タイムスタンプ増分の反復減算によりタイムス
タンプが[0,TQ)区間内に入るまで、いくつかの連
続するフレームの間、与えられたフローへのサービスを
拒否しなければならない可能性がある。図3Aに、DR
Rにおいて、新たなパケットがフローiのキューの先頭
に到着したときに、そのフローiを処理しそのタイムス
タンプを更新するための規則を指定する例示的な擬似コ
ードのリストを示す。
[11]に与えられている。このアルゴリズムは、DR
Rと同じパラメータおよび変数を有するが、異なるイベ
ントがタイムスタンプの更新を引き起こす。すなわち、
フローiは、パケットpi kの送信が完了すると、その
結果のフローのバックログ状態とは独立に、新たなタイ
ムスタンプFi kを受け取る。フレームの終わりは、1
パケットの送信後に常に検出され、その前には検出され
ない。タイムスタンプは、(DRRの場合のクレジット
(貸し)の代わりに)現フレームの期間中にフローによ
って累積されたデビット(借り)を次フレームに持ち越
す。
は、フローのフレームの終わりを決定するためにキュー
先頭パケットの長さを前もって知る必要がないことであ
る。逆に、悪意のあるフローが競争相手から帯域を盗む
ことを防ぐために、このアルゴリズムは、アイドルにな
ったフローのタイムスタンプをリセットすることができ
ない。アイドルフローのヌルでないタイムスタンプは、
そのフローがアイドルになったのと同じフレームの終了
によって結局は不用(obsolete)となる。理想的には、タ
イムスタンプは、不用になったらすぐにリセットされる
べきである。しかし、数十万、さらには数百万のフロー
を処理するスケジューラでは、同時に不用になる可能性
のあるすべてのタイムスタンプを即座にリセットするこ
とは現実には不可能である。
ローのタイムスタンプの不用性を何らチェックしないS
RRアルゴリズムの実装に焦点をしぼる。この実装で
は、新たに積滞したフローは常に、そのタイムスタンプ
の値がいかに古くとも、そのタイムスタンプの最近の値
からアクティビティを再開する。この仮定の効果は、新
たに積滞したフローが、前に長時間の間に累積したデビ
ットの結果として、サーバが最初にやってくるときにそ
の受けるべきサービスの一部をあきらめなければならな
いことがあることである。図3Bに、SRRにおいて、
サーバがパケットpi kの送信を完了したときにフロー
iを処理しそのタイムスタンプを更新するための規則を
指定する例示的な擬似コードのリストを示す。
部分では、重み付けラウンドロビン(WRR)の名称は
一般に、DRRまたはSRRを総称的に(それらを区別
する特徴への明示的な言及がなければ)指すために用い
るものとする。
ローへの帯域の分配だけを制御することができるという
点で、本質的に「1層」である。複数のスケジューリン
グ層を重ね合わせることにより、個々のフローに帯域を
割り当てることができるだけでなく、フローの集合を生
成しそれに従って帯域を分離することができる、階層的
でフレキシブルな構造を実装すると、これらのスケジュ
ーラの単純さが損なわれる。
当てられるフローのセット(1,1)〜(K,VK)
は、バンドルと呼ばれるK個のサブセット401−1〜
401−Kに分割される。各バンドルIは、VI個のフ
ローを集め、割り当てられたサービスレートRIを有す
る。スケジューラの論理編成は、2層化された階層を反
映する。すなわち、まず、バンドルの総割当てに従って
帯域をバンドルに分配した後、フローの帯域割当てと、
それぞれのバンドル内の他のフローのバックログ状態と
に基づいてフローをサービスする。スケジューラは、少
なくとも1つのフローが積滞している限り、各バンドル
を、対応するフローのバックログ状態とは独立に扱う。
もサポートしようとせずに、フロー集合と、集合内の個
々のフローの両方に対して、厳格な帯域保証を強制する
ことを目標とする(スケジューリング階層において厳格
な遅延保証を提供するためのいくつかのフレームワーク
がすでに利用可能である[7,12]が、それらはすべ
て、スケジューラの複雑さを相当に増大させる高度なア
ルゴリズムによるものである)。フロー集合の帯域要求
をサポートするためには、バンドルのレート割当てに対
して次の条件が常に成り立たなければならない。
ーの帯域要求を満たすためには、次の限界が満たされな
ければならない。
によって示唆されるスケジューリング解では、フローと
リンクサーバの間に、バンドルを処理する本格的な(そ
して高価な)スケジューリング層を導入することにな
る。一般に、本格的な階層スケジューラの実装コスト
は、バンドルの数について線形に増大する。その理由
は、各バンドルがそれぞれ基本のフロー別スケジューラ
を必要とするからである。これに対して、本発明では、
スケジューリング階層におけるバンドル要求を強制する
層は純粋に仮想的であり、単一の基本スケジューラ上に
重ね合わされる。したがって、個々のフローを処理する
構造のコストは、設定されるバンドルの数とは独立であ
るため、スケジューリング階層の実装における相当の節
約になる。
ューラは、WRRスケジューラの基本構造の実質的な変
更を必要とせずに、帯域を階層的に分離する。この新規
な技術によれば、スケジューラは、完全に透過的な方法
で、すなわち、追加のスケジューリング構造を使用せず
に、帯域保証を、個々のフローに提供するとともに、フ
ローの集合(バンドル)にも提供する。本発明は、この
目標を、単に、スケジューラがタイムスタンプを操作す
る方法を改良することによって達成する。その結果得ら
れる「ソフト」なスケジューリング階層は、無視できる
ほどの複雑さしか有しない。にもかかわらず、帯域保証
を、個々のフローに提供するとともに、バンドルにも提
供するのに有効である。
めの改良されたWRRスケジューラによって利用される
キュー、状態テーブル、レジスタ、およびパラメータの
機能図である。図4および図5をあわせて参照すると、
スケジューラは、複数のバンドル401−1〜401−
Kにまとめられた、複数のデータパケットフローi1〜
jN(501)を処理する。フローキュー502は、そ
れぞれのデータパケットフロー501ついてデータパケ
ットを格納する。フローキュー502は、先入れ先出し
(FIFO)キューとして実装可能である。各フローキ
ュー502は、対応するフロー別状態テーブル503を
有し、これは、対応するフロー501に対するいくつか
の変数を格納する。
テーブル503は、タイムスタンプFi1、最小保証サ
ービスレートρi1、フレームフラグFFi1、そのフ
ローを含むバンドルIへのポインタ、ならびに、対応す
るフローキュー502の先頭および末尾のポインタ(図
示せず)を含む。バンドルの状態は、バンドル別状態テ
ーブル504で管理される。例えば、バンドルIの場
合、バンドル別状態テーブル504は、総帯域割当てR
I、現在シェアφI、累積シェアΦI、および開始フラ
グσIを格納する。フローポインタのFIFOキュー5
05は、スケジューラがフロー501のパケットを送信
するために巡回する順序を決定する。レジスタ506
は、フローポインタのFIFOキューの先頭および末尾
のポインタを格納する。スケジューラは、テーブル50
7でグローバル状態情報を管理する。このテーブルは、
フレームカウンタFRMCNTおよび基準タイムスタン
プ増分TQを管理する。
信リンクインタフェース200の例示的なブロック図で
ある。通信リンクインタフェース200は、データパケ
ット受信器601、スケジューラ602、およびパケッ
ト送信器609を有する。例として、スケジューラは、
コントローラ603、バンドル別状態RAM604、お
よびレジスタ605を、すべて同一のチップ606上に
有するように示されている。パケットRAM607およ
びフロー別状態RAM608は、別々のチップ上に位置
するように示されている。明らかに、動作容量およびそ
の他の特性に依存して、スケジューラ602は、他の構
成でも実装可能である。
装したプログラムを格納し実行する。通信リンクインタ
フェース200の動作を制御するプログラムの実施例を
図7〜図8にフローチャート形式で示す。図5および図
6をあわせて参照すると、フローキュー502内のパケ
ットはパケットRAM607に格納される。フロー別状
態テーブル503はフロー別状態RAM608に格納さ
れる。フローポインタのFIFOキュー505の先頭お
よび末尾ポインタ506ならびにグローバル状態テーブ
ル507はレジスタ605に格納される。
通りである。パケット受信器601は、入力リンク20
1−1〜201−rから、データパケットフロー501
のデータパケットを受信する。パケット受信器601
は、各パケット(図示せず)のヘッダに含まれるフロー
識別フィールドの内容を用いて、そのパケットのデータ
パケットフロー501を識別する。データパケットフロ
ー501の識別により、関連するフローキュー502お
よびバンドル401が識別される。スケジューラ602
は、バンドル別状態テーブル504のエントリを用い
て、各バンドルIに対するサービス比を計算する。バン
ドルIのサービス比は、公称帯域割当てRIと、そのバ
ンドルの累積シェアΦIとの間の比として定義される
(累積シェアΦ Iは、バンドルIのバックログフローの
帯域割当てを累積したものである)。構成により、バン
ドルIのサービス比は決して1より小さくならない。
イムスタンプ増分の計算が関係する。これは、バンドル
Iの各バックログフローが、同じバンドルの他のフロー
がフレームの最初にアイドルであると検出されたときの
そのフレームの期間中に受けるサービスの量の増大分を
決定する。サービス比により引き起こされるタイムスタ
ンプ増分の修正は、スケジューラが、バンドルの総帯域
割当てと、個々のフローの帯域割当てとの両方を依然と
して保証することができるようになされる。
スケジューラは、従来技術のWRRスケジューラ上に仮
想スケジューリング層を重ね合わせることによって、サ
ービス帯域の階層的分離を達成する。本発明のスケジュ
ーラは、複数のバンドルをサポートし、各バンドルは、
データパケットフローの集合である。基礎となるWRR
スケジューラのタイムスタンプに基づく定式化において
(説明のこの点では、DRRとSRRの区別はまだ重要
ではない)、本発明の技術は、タイムスタンプ更新の簡
単な修正により、個々のフローの帯域保証を保存すると
同時に、バンドルの総要求を満たす。
て、スケジューラは、公称帯域割当てRIおよび累積シ
ェアΦIを管理する。公称帯域割当てRIは、そのバン
ドル内のすべてのフローの帯域割当ての総和より小さく
なることはない。累積シェアΦ Iは、バンドルIのバッ
クログフローの帯域割当ての総和を追跡し、したがっ
て、決してRIより大きくならない。
いる、バンドルIのフローの集合である。
割当てRIと累積シェアΦIの間のサービス比を用い
て、そのバンドルのフローに付与される実際のサービス
帯域を修正する。具体的には、サービス比は、バンドル
のフローに対するタイムスタンプ増分の定義に寄与す
る。フローiのパケットpi kに関連するタイムスタン
プ更新は次式の通りである。
際にバンドルの帯域保証を強制することを確かめるに
は、バンドルI内の個々のフローが1フレームの期間中
に受けることが期待されるサービスの量を計算すること
が必要である。原理的には、サービス比RI/ΦIがバ
ンドルIについて1より大きいとき、式(8)のタイム
スタンプ割当ての結果、バンドルIの個々のフローは、
それらの公称帯域割当てのRI/ΦI倍のサービス帯域
を得る。
ーのバックログダイナミクスとは無関係に、1フレーム
の期間中は不変である。 (2)そのフレームの期間中にサーバにアクセス可能な
フローのセットは、そのフレームの最初に積滞していた
フローのみを含む(もしバンドル内の一部のフローが、
フレームの開始後に積滞した場合、それらのフローは、
サーバにアクセス可能になる前に、新たなフレームの開
始まで待たなければならない)。
と組み合わせて、バンドルIのフローiが1フレーム期
間中に受けることが期待される基準サービス量Qiを設
定する。
サービス量の総計は、バンドルのサービス量QIとな
る。
(2)におけるフロー量Qiの表式と同一であるため、
フレームの最初にバンドル内で積滞しているフローのセ
ットの組成とは無関係に、式(8)のタイムスタンプ更
新がバンドルIの帯域保証を保存することが証明され
る。
に変化しないという仮定を保持すると、次式のように、
式(8)のタイムスタンプ更新規則は、フレーム期間中
に決してアイドルにならないバンドルIの任意の2個の
フローi、jについて、サービス割合を保存することも
示すことができる。
細を指定するには、式(10)および(11)の結果を
生成する仮定についての議論と、それら仮定のアルゴリ
ズム的な意味の評価とを必要とする。スケジューラが1
フレーム期間中に計算するすべてのタイムスタンプ増分
において一定値の累積シェアΦIを使用することは、バ
ンドルIのフローにサービスを一貫して分配するための
共通の基準を提供する。フレームの開始後になってはじ
めて積滞したフローをサービスフレームから排除するこ
とも、同一の目的を有する。
に対して、関連するパケットの送信について課す料金と
みなすことができる。送信のコストは、それが実行され
るときのバンドル内で利用可能な帯域に依存する。タイ
ムスタンプ増分を、バンドル内の帯域資源のコストと整
合させるためには、タイムスタンプ増分は、資源が使用
されるときに、すなわち、対応するパケットの送信時
に、計算されなければならない。もしスケジューラが、
増分を前もって計算するならば、バンドルの状態は、パ
ケットの送信が起こる前に急激な変化を受ける可能性が
あるため、課金メカニズムが帯域の分配と整合しなくな
る。
ち、SRRは、送信とタイムスタンプ増分の間の整合性
に対する要求に最もよく適合するものである。その理由
は、SRRは、ちょうど送信したばかりのパケットの長
さを用いてタイムスタンプを更新し、対応するフローの
フレーム内状態を決定するからである。これに対して、
DRRでは、スケジューラは、新たなキュー先頭パケッ
トの長さを用いて、タイムスタンプ更新およびフレーム
内状態チェックを実行するが、これは、そのパケットが
実際に送信されるずっと前である可能性がある。DRR
サーバが最終的にパケットを配信するとき、バンドルの
累積シェア、したがってそのバンドル内の帯域のコスト
は、最後のタイムスタンプ更新以来相当に変化してしま
っている可能性がある。
ムの導入は簡単である。最小帯域保証RIおよび累積シ
ェアΦIに加えて、各バンドルIは、現在シェアφIお
よび開始フラグσIを管理する。現在シェアは、次式の
ように、バンドル内のバックログフローのサービスシェ
アの総和を瞬間的に追跡する。
そのバックログ状態を変えるたびに更新される。一般
に、現在シェアφIの更新は、累積シェアΦIの即時更
新を引き起こさない。実際、スケジューラは、開始フラ
グσIと、スケジューラがフレーム境界ごとにトグルす
る1ビットのグローバルなフレームカウンタFRMCN
Tとにおける整合しない値を検出した場合にのみ、バン
ドルの累積シェアΦIを更新する(スケジューラは、バ
ンドルIの1つのフローのサービスを開始するごとに、
σIとFRMCNTを比較する)。
将来のタイムスタンプ計算で用いられる累積シェアの更
新を引き起こす(ΦI←φI)とともに、バンドルの開
始フラグをトグルする(σI←FRMCNT)。他方、
これらの2つのビットがすでに等しい場合、ちょうど完
了したサービスは、現フレームの期間中にバンドルが受
けた最初のサービスではないことが確実であり、バンド
ルパラメータに対して何らのアクションもとられてはな
らない。バンドルの最初のフローが積滞すると、開始フ
ラグはFRMCNTに等しくセットされる。 σI←FRMCNT (13)
ーiはフレームフラグFFiを管理する。フローiのフ
レームフラグは、そのフローがバックログフローのリス
ト505の末尾にキューイングされるときには必ず、F
RMCNTの補数に等しくセットされる。スケジューラ
は、フレームカウンタに一致しないフレームフラグを見
つけると、新たなフレームの開始を宣言し、フレームカ
ウンタをトグルする。1パケットの送信を完了した後に
実行される一連のオペレーションは、図9の擬似コード
にまとめられている。
信のスケジューリングを制御するために図6のスケジュ
ーリング装置を動作させる方法をフローチャート形式で
示す。図7〜図8のフローチャートおよび図9の擬似コ
ードは、SRRが、基礎となるスケジューリングアルゴ
リズムであるという仮定に基づいている。機能性に関す
る限り、SRRの代わりにDRRを用いても問題はな
い。同様に、図5の装置は、バックログフローの単一の
FIFOキューを用いてソフトスケジューリング階層を
実装している。フレーム内とフレーム外のフローの明確
な分離が可能な他の任意のキューイング構造も同様に使
用可能である。
び図7〜図8を参照する。図4(図5、図6)で最初に
現れる要素の参照符号は4(5、6)から始まるが、図
7〜図8のステップは、ステップ番号の前にSを付ける
ことによって(例えば、S510)示される。
603は、新たに受信したデータパケットがあるかどう
かをチェックする。S510で、新たに受信したデータ
パケットがなく、S520で、バックログフローがある
場合、制御はS680に移る。他方、S510で、新た
に受信したデータパケットがなく、S520で、バック
ログフローがない場合、コントローラ603は、新たな
パケットが受信されるまで、ステップS510とS52
0の間を循環する。S510において、新たに受信した
パケットの存在が受信器601で検出されると、S55
0で、コントローラ603は、それらのパケットのうち
の1つを選択する。その後、S560で、コントローラ
603は、データパケットのフローを識別し、最終的に
(S570で)、パケットを適当なフローキュー502
に格納する。S580で、識別されたフローのキューの
長さがゼロでない場合、S970で、そのフローのキュ
ー長をインクリメントし、制御はS680に移る。
ューの長さがゼロである場合、S585で、そのフロー
のフレームフラグ(フロー別状態テーブル503内)が
FRMCNT(グローバル状態テーブル507内)の補
数に等しくセットされる。その後、コントローラは、S
590で、バックログフローの総数を増大させ、S60
0で、識別されたフローのキュー長を増大させる。S6
10で、識別されたフローのバンドルが、フロー別状態
テーブル503のバンドルポインタを用いて識別され
る。識別されたバンドルの現在シェアが0である場合、
S630で、コントローラ603は、バンドルの開始フ
ラグ(バンドル別状態テーブル504に格納される)
を、グローバルフレームカウンタFRMCNTの値に等
しくセットする。その後、制御はS635に移る。他
方、S620で、バンドルの現在シェアが0でない場
合、制御は直接S620からS635に移る。S635
で、識別されたバンドルの現在シェアが、新たに積滞し
たフローの帯域割当てだけ増大させられる。そして、S
640で、フローはフローポインタのFIFOキュー5
05の末尾に付加され、その後、制御はS680に移
る。
の送信でビジーであり、したがって新たなパケットの送
信のために利用可能でない場合、制御はS510に戻
る。そうでない場合、S700で、サービス後処理のた
めに待機しているサービスされたばかりのフローの利用
可能性がチェックされる。S700で、サービスされた
ばかりのフローが利用可能でない場合、S710で、バ
ックログフローがあるかどうかが判定される。バックロ
グフローが存在しない場合、制御はS510に戻り、存
在する場合、S720で、フローポインタのFIFOキ
ュー505の先頭506にあるフロー501がサービス
のために選択され、S730で、選択されたフローのフ
ローキュー502内の最初のデータパケットが送信器6
09に送られる。S740で、サービスのために選択さ
れたフロー501のフレームフラグがグローバルフレー
ムカウンタFRMCNTに等しい場合、制御はS510
に戻り、そうでない場合、S750で、グローバルフレ
ームカウンタFRMCNTはトグルされ、制御はS51
0に戻る。
しているサービスされたばかりのフロー501が利用可
能である場合、コントローラはS760に進み、対応す
るフローキュー502の長さをデクリメントする。S7
70で、サービスされたばかりのフロー501のバンド
ル401が、フロー別状態テーブル503のバンドルポ
インタを用いて識別される。S780で、グローバルフ
レームカウンタFRMCNTが、サービスされたばかり
のフロー501のバンドル401の開始フラグに等しい
かどうかが判定される。開始フラグがグローバルフレー
ムカウンタに等しくない場合、コントローラは、(S7
90で)バンドルの累積シェアをバンドルの現在シェア
に等しいとセットし、(S800で)バンドルの開始フ
ラグをグローバルフレームカウンタに等しいとセットす
る。その後、制御は、フロータイムスタンプの更新のた
めにS810に進む。S780で、サービスされたばか
りのフローのバンドルの開始フラグがグローバルフレー
ムカウンタに等しい場合、サービスされたばかりのフロ
ーのタイムスタンプの更新のために、制御は直接S81
0に移る。
ビスされたばかりのフローのキュー長がゼロに等しいか
どうかを判定する。S820で、サービスされたフロー
501のフローキュー502が空であると判定された場
合、S880で、コントローラは、サービスされたばか
りのフローのタイムスタンプがグローバル状態テーブル
507の基準タイムスタンプ増分以上であるかどうかを
チェックする。タイムスタンプが基準タイムスタンプ以
上である場合、制御はS890に移り、タイムスタンプ
は正当な範囲(0,TQ)内にリセットされる。その
後、制御はS900に移る。S880で、サービスされ
たばかりのフローのタイムスタンプが基準タイムスタン
プ増分より小さいと判定された場合、制御は直接S90
0に移る。S900で、サービスされたばかりのフロー
へのポインタが、フローポインタのFIFOキュー50
5の先頭506から取り出される。その後、S910
で、サービスされたばかりのフローのバンドルの現在シ
ェアが、アイドルになった、サービスされたばかりのフ
ローの帯域割当てだけ減少させられる。S920で、コ
ントローラ603は、バックログフローの総数をデクリ
メントした後、S710に進む。
のフローキュー502が空でないと判定された場合、S
830で、コントローラは、サービスされたばかりのフ
ローのタイムスタンプがグローバル状態テーブル507
の基準タイムスタンプ増分以上であるかどうかをチェッ
クする。タイムスタンプが基準タイムスタンプより小さ
い場合、制御はS840に移り、サービスされたばかり
のフローのフレームフラグがトグルされる。その後、S
850で、サービスされたばかりのフローのタイムスタ
ンプは正当な範囲(0,TQ)内にリセットされる。S
860で、コントローラ603は、サービスされたばか
りのフローへのポインタを、フローポインタのFIFO
キュー505の先頭506から取り出す。S870で、
同じポインタが、FIFOキュー505の末尾506に
再びキューイングされる。その後、制御はS710に移
る。S830で、サービスされたばかりのフローのタイ
ムスタンプが基準タイムスタンプ増分以上であると判定
された場合、制御は直接S710に移る。
Iのフローiを選択しサービス後処理する方法を擬似コ
ード形式で記述したものである。
けラウンドロビン上にソフトスケジューリング階層を重
ね合わせるために使用可能な諸原理の単なる例示であ
る。当業者であれば、ここに明示的に記載していなくと
も、特許請求の範囲により規定される本発明の技術思想
および技術的範囲から離れずに、それらの原理を実現す
るさまざまな構成を考えることが可能である。
rated Services in theInternet Architecture: an Ove
rview", Request for Comments (RFC) 1633, IETF, Jun
e 1994. [2] K. Nichols, V. Jacobson, and L. Zhang, "A T
wo-bit DifferentiatedServices Architecture for the
Internet", Request for Comments (RFC) 2638, IETF,
July 1999. [3] D. Stiliadis and A. Varma, "Design and Anal
ysis of Frame-based Fair Queueing: A New Traffic S
cheduling Algorithm for Packet-Switched Networks",
Proceedings of ACM SIGMETRICS '96, pp.104-115, Ma
y 1996. [4] D. Stiliadis and A. Varma, "Efficient Fair
Queueing Algorithms for Packet-Switched Networks",
IEEE/ACM Transactions on Networking, Vol.6,No.2, p
p.175-185, April 1998. [5] J. C. R. Bennett and H. Zhang, "WF2Q: Worst
-Case-Fair Weighted Fair Queueing", Proceedings of
IEEE INFOCOM '96, pp.120-128, March 1996. [6] D. Stiliadis and A. Varma, "A General Metho
dology for Designing Efficient Traffic Scheduling
and Shaping Algorithms", Proceedings of IEEEINFOCO
M '97, Kobe, Japan, April 1997. [7] I. Stoica, H. Zhang, and T. S. E. Ng, "A Hi
erarchical Fair Service Curve Algorithm for Link-S
haring, Real-Time, and Priority Services", Proceed
ings of ACM SIGCOMM '97, September 1997. [8] D. C. Stephens, J. C. R. Bennett, and H. Zh
ang, "Implementing Scheduling Algorithms in High-S
peed Networks", IEEE Journal on Selected Areas in
Communications, Vol.17, No.6, June 1999, pp.1145-1
158. [9] M. Katevenis, S. Sidiropoulos, and C. Courc
oubetis, "Weighted Round Robin Cell Multiplexing i
n a General-Purpose ATM Switch", IEEE Journal on S
elected Areas in Communications, vol.9, pp.1265-7
9, October 1991. [10] M. Shreedhar and G. Varghese, "Efficient
Fair Queueing Using Deficit Round Robin", IEEE/ACM
Transactions on Networking, vol.4, no.3, pp.375-3
85, June 1996. [11] H. Adiseshu, G. Parulkar, and G. Varghes
e, "A Reliable and Scalable Striping Protocol", Pr
oceedings of ACM SIGCOMM '96, August 1996. [12] J. C. R. Bennett and H. Zhang, "Hierarchi
cal Packet Fair Queueing Algorithms", Proceedings
of ACM SIGCOMM '96, pp.143-156, August 1996.
本スケジューラの単純さを損なわずに階層的帯域分離が
達成される。
記載した番号がある場合は、本発明の一実施例の対応関
係を示すものであって、本発明の範囲を限定するものと
解釈すべきではない。
先を含む例示的なパケットネットワークを示す図であ
る。
的な通信スイッチを示す図である。
頭に到着したときに不足ラウンドロビン(DRR)アル
ゴリズムで用いられる擬似コードの例を示し、図3B
は、サーバが1パケットの送信を完了したときに余剰ラ
ウンドロビン(SRR)アルゴリズムで用いられる擬似
コードの例を示す図である。
示す図である。
ー、状態テーブル、レジスタ、およびパラメータの機能
図である。
ある。
ングする方法を記述した例示的な流れ図である。
ングする方法を記述した例示的な流れ図である。
によって使用される擬似コードの例を示す図である。
Claims (9)
- 【請求項1】 複数のデータパケットフローについてデ
ータパケットの送信をスケジューリングするスケジュー
リング装置において、 前記データパケットフローには、通信リンクの送信容量
rのうちの所定シェアが割り当てられ、前記データパケ
ットフローは複数のバンドルにまとめられ、 前記バンドルには、前記通信リンクの処理容量のうちの
サービスシェアが割り当てられ、 通信リンクを通じての送信はサービスフレームに分けら
れ、1サービスフレームは、あらゆるバックログデータ
パケットフローに少なくとも1つの送信機会を提供し、
バックログデータパケットフローは、複数のパケットキ
ューのうちの対応するパケットキューに格納された少な
くとも1つのデータパケットを有するデータパケットフ
ローであり、 前記スケジューリング装置は、 サービスフレームの期間を決定する手段と、 各データパケットフローが、十分な数の連続するサービ
スフレームにわたり連続して該データパケットフローに
バックログがある場合に、常に少なくとも該データパケ
ットフローに割り当てられたサービスシェアを受けると
ともに、各バンドルが、十分な数の連続するサービスフ
レームにわたり1サービスフレームの全期間中連続して
バックログのあるバンドル内に少なくとも1つのデータ
パケットフローがある場合に、少なくとも該バンドルに
割り当てられたサービスシェアを受けることを保証する
手段とを有し、 前記保証する手段は、 各バンドルIについて、同じバンドルIにまとめられた
前記データパケットフローのそれぞれに割り当てられる
前記サービスシェアの総和に関係する累積シェアΦIを
管理する手段と、 各バンドルIについて、該バンドルIに割り当てられる
サービスシェアRIと、該バンドルの前記累積シェアΦ
Iとの間のサービス比を計算する手段と、 前記複数のバンドルのそれぞれについて計算されたサー
ビス比を用いて、前記複数のデータパケットフローのそ
れぞれに割り当てられる前記サービスシェアを修正する
手段とを有することを特徴とするスケジューリング装
置。 - 【請求項2】 重み付けラウンドロビン(WRR)アル
ゴリズム、不足ラウンドロビン(DRR)アルゴリズ
ム、および余剰ラウンドロビン(SRR)アルゴリズム
を含む群から選択されるアルゴリズムが、データパケッ
トの送信をスケジューリングするために用いられること
を特徴とする請求項1記載のスケジューリング装置。 - 【請求項3】 前記サービスフレームの期間を決定する
手段は、 グローバルフレームカウンタFRMCNTと、 前記複数のバンドルの各バンドルIに対する開始フラグ
σIと、 前記複数のデータパケットフローの各データパケットフ
ローiに対するフレームフラグFFiとを有することを
特徴とする請求項1記載のスケジューリング装置。 - 【請求項4】 バンドルIの開始フラグσIは、該バン
ドル内の最初のデータパケットフローにバックログが生
じたときに、グローバルフレームカウンタFRMCNT
に等しくセットされることを特徴とする請求項3記載の
スケジューリング装置。 - 【請求項5】 データパケットフローiのフレームフラ
グFFiは、該フローにバックログが生じるか、また
は、該フローが現サービスフレーム内で最後に処理され
たフローであるときに、グローバルフレームカウンタF
RMCNTとは異なる値に等しくセットされることを特
徴とする請求項3記載のスケジューリング装置。 - 【請求項6】 サービスフレームの終了と次のサービス
フレームの開始は、処理されるべき次のデータパケット
フローiのフレームフラグFFiがグローバルフレーム
カウンタFRMCNTとは異なる値を有するときに、同
時に検出されることを特徴とする請求項3記載のスケジ
ューリング装置。 - 【請求項7】 バンドルIの累積シェアΦIの値は、バ
ックログを生じているバンドルIのデータパケットフロ
ーのサービスシェアの総和に等しいことを特徴とする請
求項1記載のスケジューリング装置。 - 【請求項8】 バンドルIの累積シェアΦIの値は、該
バンドルの最初のデータフローがサービスフレーム内で
最初にサービスされるときにセットされ、たとえバンド
ルIの1個または複数のデータパケットフローのバック
ログ状態が該サービスフレームの期間中に変化しても、
同じサービスフレームの期間全体で不変のまま保持され
ることを特徴とする請求項1記載のスケジューリング装
置。 - 【請求項9】 複数のデータパケットフローについてデ
ータパケットの送信をスケジューリングするスケジュー
リング方法において、 前記データパケットフローには、出通信リンクの送信容
量のうちの所定シェアが割り当てられ、前記データパケ
ットフローは複数のバンドルにまとめられ、 前記バンドルには、前記出通信リンクの送信容量rのう
ちのサービスシェアが割り当てられ、 通信リンクを通じての送信はサービスフレームに分けら
れ、1サービスフレームは、あらゆるバックログデータ
パケットフローに少なくとも1つの送信機会を提供し、
バックログデータパケットフローは、複数のパケットキ
ューのうちの対応するパケットキューに格納された少な
くとも1つのデータパケットを有するデータパケットフ
ローであり、 前記方法は、 サービスフレームの期間を決定するステップと、 各データパケットフローが、十分な数の連続するサービ
スフレームにわたり連続して該データパケットフローに
バックログがある場合に、常に少なくとも該データパケ
ットフローに割り当てられたサービスシェアを受けると
ともに、各バンドルが、十分な数の連続するサービスフ
レームにわたり1サービスフレームの全期間中連続して
バックログのあるバンドル内に少なくとも1つのデータ
パケットフローがある場合に、少なくとも該バンドルの
サービスシェアを受けることを保証するステップと、 各バンドルIについて、同じバンドルIにまとめられた
前記データパケットフローのそれぞれに割り当てられる
前記サービスシェアの総和に関係する累積シェアΦIを
管理するステップと、 各バンドルIについて、該バンドルIに割り当てられる
サービスシェアRIと、該バンドルの前記累積シェアΦ
Iとの間のサービス比を計算するステップと、 前記複数のバンドルのそれぞれについて計算されたサー
ビス比を用いて、前記複数のデータパケットフローのそ
れぞれに割り当てられる前記サービスシェアを修正する
ステップとを有することを特徴とするスケジューリング
方法。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US26080701P | 2001-01-10 | 2001-01-10 | |
US10/008425 | 2001-11-13 | ||
US10/008,425 US7075934B2 (en) | 2001-01-10 | 2001-11-13 | Method and apparatus for hierarchical bandwidth distribution in a packet network |
US60/260807 | 2001-11-13 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2002232469A true JP2002232469A (ja) | 2002-08-16 |
JP2002232469A5 JP2002232469A5 (ja) | 2005-07-07 |
JP3953819B2 JP3953819B2 (ja) | 2007-08-08 |
Family
ID=26678183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002000601A Expired - Fee Related JP3953819B2 (ja) | 2001-01-10 | 2002-01-07 | スケジューリング装置およびスケジューリング方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7075934B2 (ja) |
JP (1) | JP3953819B2 (ja) |
CA (1) | CA2366781C (ja) |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002084957A2 (en) * | 2001-04-13 | 2002-10-24 | Motorola, Inc., A Corporation Of The State Of Delaware | Manipulating data streams in data stream processors |
US7065091B2 (en) * | 2002-03-21 | 2006-06-20 | Cisco Technology, Inc. | Method and apparatus for scheduling and interleaving items using quantum and deficit values including but not limited to systems using multiple active sets of items or mini-quantum values |
CN100596092C (zh) * | 2002-11-27 | 2010-03-24 | Rgb网络有限公司 | 用于数据包的动态通道映射与最优化调度的设备与方法 |
US7301908B2 (en) * | 2003-03-19 | 2007-11-27 | Lucent Technologies Inc. | Method and apparatus for rescheduling a communication system channel after a channel property change |
FI114599B (fi) * | 2003-10-14 | 2004-11-15 | Tellabs Oy | Menetelmä ja laitteisto aggregaattiosuuskohtaisen vuonmuokkauksen tekemiseksi pakettikytkentäisessä tietoliikenteessä |
US8024416B2 (en) * | 2004-10-20 | 2011-09-20 | Research In Motion Limited | System and method for bundling information |
US7843940B2 (en) * | 2005-06-01 | 2010-11-30 | Cisco Technology, Inc. | Filling token buckets of schedule entries |
KR101266556B1 (ko) * | 2006-01-05 | 2013-05-24 | 삼성전자주식회사 | 데피싯 라운드 로빈 방식 데이터 패킷 스케줄링의 인스턴트서비스 방법 |
US7769026B2 (en) * | 2006-03-23 | 2010-08-03 | Intel Corporation | Efficient sort scheme for a hierarchical scheduler |
US7480240B2 (en) * | 2006-05-31 | 2009-01-20 | Riverbed Technology, Inc. | Service curve mapping |
US8462629B2 (en) * | 2006-06-14 | 2013-06-11 | Riverbed Technology, Inc. | Cooperative operation of network transport and network quality of service modules |
KR100931384B1 (ko) | 2007-12-06 | 2009-12-11 | 한국전자통신연구원 | 패킷 기반의 회선 대역 제어 방법 |
US8213308B2 (en) | 2008-09-11 | 2012-07-03 | Juniper Networks, Inc. | Methods and apparatus for defining a flow control signal related to a transmit queue |
US8325749B2 (en) | 2008-12-24 | 2012-12-04 | Juniper Networks, Inc. | Methods and apparatus for transmission of groups of cells via a switch fabric |
US8154996B2 (en) | 2008-09-11 | 2012-04-10 | Juniper Networks, Inc. | Methods and apparatus for flow control associated with multi-staged queues |
US8254255B2 (en) * | 2008-12-29 | 2012-08-28 | Juniper Networks, Inc. | Flow-control in a switch fabric |
US8565118B2 (en) * | 2008-12-30 | 2013-10-22 | Juniper Networks, Inc. | Methods and apparatus for distributed dynamic network provisioning |
US8331362B2 (en) * | 2008-12-30 | 2012-12-11 | Juniper Networks, Inc. | Methods and apparatus for distributed dynamic network provisioning |
US8054832B1 (en) | 2008-12-30 | 2011-11-08 | Juniper Networks, Inc. | Methods and apparatus for routing between virtual resources based on a routing location policy |
US8190769B1 (en) | 2008-12-30 | 2012-05-29 | Juniper Networks, Inc. | Methods and apparatus for provisioning at a network device in response to a virtual resource migration notification |
US8255496B2 (en) | 2008-12-30 | 2012-08-28 | Juniper Networks, Inc. | Method and apparatus for determining a network topology during network provisioning |
US8953603B2 (en) * | 2009-10-28 | 2015-02-10 | Juniper Networks, Inc. | Methods and apparatus related to a distributed switch fabric |
US8442048B2 (en) | 2009-11-04 | 2013-05-14 | Juniper Networks, Inc. | Methods and apparatus for configuring a virtual network switch |
US9264321B2 (en) | 2009-12-23 | 2016-02-16 | Juniper Networks, Inc. | Methods and apparatus for tracking data flow based on flow state values |
US9602439B2 (en) | 2010-04-30 | 2017-03-21 | Juniper Networks, Inc. | Methods and apparatus for flow control associated with a switch fabric |
US9065773B2 (en) | 2010-06-22 | 2015-06-23 | Juniper Networks, Inc. | Methods and apparatus for virtual channel flow control associated with a switch fabric |
US8553710B1 (en) | 2010-08-18 | 2013-10-08 | Juniper Networks, Inc. | Fibre channel credit-based link flow control overlay onto fibre channel over ethernet |
US9660940B2 (en) | 2010-12-01 | 2017-05-23 | Juniper Networks, Inc. | Methods and apparatus for flow control associated with a switch fabric |
US8891406B1 (en) | 2010-12-22 | 2014-11-18 | Juniper Networks, Inc. | Methods and apparatus for tunnel management within a data center |
US9032089B2 (en) | 2011-03-09 | 2015-05-12 | Juniper Networks, Inc. | Methods and apparatus for path selection within a network based on flow duration |
CA2750345C (en) | 2011-08-24 | 2013-06-18 | Guest Tek Interactive Entertainment Ltd. | Method of allocating bandwidth between zones according to user load and bandwidth management system thereof |
US8811183B1 (en) | 2011-10-04 | 2014-08-19 | Juniper Networks, Inc. | Methods and apparatus for multi-path flow control within a multi-stage switch fabric |
US9641424B1 (en) | 2014-10-10 | 2017-05-02 | Nomadix, Inc. | Shaping outgoing traffic of network packets in a network management system |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6018527A (en) * | 1996-08-13 | 2000-01-25 | Nortel Networks Corporation | Queue service interval based cell scheduler with hierarchical queuing configurations |
US6272109B1 (en) * | 1997-11-18 | 2001-08-07 | Cabletron Systems, Inc. | Hierarchical schedules for different ATM traffic |
US6396834B1 (en) * | 1997-11-24 | 2002-05-28 | Riverstone Networks, Inc. | Flexible scheduler in an asynchronous transfer mode (ATM) switch |
CA2245367A1 (en) * | 1998-08-19 | 2000-02-19 | Newbridge Networks Corporation | Two-component bandwidth scheduler having application in multi-class digital communication systems |
US6470016B1 (en) * | 1999-02-09 | 2002-10-22 | Nortel Networks Limited | Servicing output queues dynamically according to bandwidth allocation in a frame environment |
US6775231B1 (en) * | 1999-09-24 | 2004-08-10 | Cisco Technology | Dynamic weighted resource sharing |
US6940861B2 (en) * | 2000-03-14 | 2005-09-06 | General Instrument Corporation | Data rate limiting |
-
2001
- 2001-11-13 US US10/008,425 patent/US7075934B2/en not_active Expired - Fee Related
-
2002
- 2002-01-07 JP JP2002000601A patent/JP3953819B2/ja not_active Expired - Fee Related
- 2002-01-08 CA CA002366781A patent/CA2366781C/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP3953819B2 (ja) | 2007-08-08 |
CA2366781C (en) | 2007-09-04 |
US20030169743A1 (en) | 2003-09-11 |
CA2366781A1 (en) | 2002-07-10 |
US7075934B2 (en) | 2006-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002232469A (ja) | スケジューリング装置およびスケジューリング方法 | |
JP4017867B2 (ja) | スケジューリング装置 | |
JP3614132B2 (ja) | データをトランスポートするシステムおよび方法 | |
JP3545988B2 (ja) | 通信方法および通信装置 | |
JP4115703B2 (ja) | 通信ネットワークにおける多重パケットをマルチレベルスケジューリングする方法 | |
JP3417512B2 (ja) | リアルタイムトラヒックに対する保証された帯域幅配達を備える遅延最小化システム | |
JP3784049B2 (ja) | 切断/再接続フロー・キューを使用して出力をスケジューリングするネットワーク・プロセッサのための方法およびシステム | |
JP2000049853A (ja) | バッファ管理によるレ―ト保証方法及び装置 | |
US6396843B1 (en) | Method and apparatus for guaranteeing data transfer rates and delays in data packet networks using logarithmic calendar queues | |
US6795870B1 (en) | Method and system for network processor scheduler | |
CN101217495A (zh) | 用于t-mpls网络环境下的流量监控方法和装置 | |
JPH08331154A (ja) | 最大−最小公平割当を行うパケット交換ネットワーク用混雑制御システムおよび方法 | |
JP4163044B2 (ja) | 帯域制御方法およびその帯域制御装置 | |
KR20030045987A (ko) | 크레딧 기반 라운드 로빈을 이용한 패킷 스케쥴링장치 및방법 | |
CN110808920B (zh) | 一种ccsds帧和ip报文共存的卫星通信流量控制方法 | |
CA2526682C (en) | System and method for time-based scheduling | |
US8467401B1 (en) | Scheduling variable length packets | |
EP2063580B1 (en) | Low complexity scheduler with generalized processor sharing GPS like scheduling performance | |
Chiussi et al. | Implementing fair queueing in ATM switches. I. a practical methodology for the analysis of delay bounds | |
Francini et al. | Enhanced weighted round robin schedulers for accurate bandwidth distribution in packet networks | |
KR100757194B1 (ko) | 자원 이용도가 높고 구현 복잡성이 낮은 공정 패킷스케줄링 장치 | |
JP2004520731A (ja) | 複数の情報パケットフロー間で共用資源をスケジュールするための手順及びシステム | |
CN117240795A (zh) | 一种支持多模态处理逻辑的调度方法及系统 | |
Chen | A performance evaluation of multiplexer scheduling algorithms | |
JP3723452B2 (ja) | 通信ネットワーク、特に高レートネットワークにおける動的レート割り振りの方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041102 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041102 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060626 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20060926 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20060929 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061226 |
|
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: 20070402 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070425 |
|
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: 20110511 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120511 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130511 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130511 Year of fee payment: 6 |
|
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 |