JPH1168787A - パケット・スケジューリング方法 - Google Patents

パケット・スケジューリング方法

Info

Publication number
JPH1168787A
JPH1168787A JP23080597A JP23080597A JPH1168787A JP H1168787 A JPH1168787 A JP H1168787A JP 23080597 A JP23080597 A JP 23080597A JP 23080597 A JP23080597 A JP 23080597A JP H1168787 A JPH1168787 A JP H1168787A
Authority
JP
Japan
Prior art keywords
flow
packet
scheduling method
frame
priority index
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.)
Pending
Application number
JP23080597A
Other languages
English (en)
Inventor
Arutountasch Onur
アルトゥンタシュ オヌル
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.)
Ultra High Speed Network and Computer Technology Laboratories
Original Assignee
Ultra High Speed Network and Computer Technology Laboratories
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 Ultra High Speed Network and Computer Technology Laboratories filed Critical Ultra High Speed Network and Computer Technology Laboratories
Priority to JP23080597A priority Critical patent/JPH1168787A/ja
Publication of JPH1168787A publication Critical patent/JPH1168787A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

(57)【要約】 【課題】 パケットの転送遅延に敏感なリアルタイム・
アプリケーションに対応する。 【解決手段】 フレーム開始時に、各フローに対するス
ケジューリングの最新の優先順位を示す値として、各フ
ローの接続処理時に予め固定的に割り当てられた重み
(サービス転送速度)w1 〜wN と、各フローの最新の
キュー長とから優先インデックスを算出して、優先イン
デックス・テーブルに格納しておき、逐次、これを参照
することにより、各フローのスケージューリングを行
う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、パケットスケジュ
ーリング方法に関し、特に超高速ネットワークを構成す
る中継ノードにおいて、各フローに対し中継ノードのパ
ケット転送処理能力の割り当てを行うパケット・スケジ
ューリング方法に関するものである。
【0002】
【従来の技術】データを固定長のパケット(セル)に格
納して交換接続する超高速ネットワークにおいて、これ
らパケットの遅延に敏感なアプリケーションに対応する
ことは、ネットワーキングにおける主要な課題の一つで
ある。この種の超高速ネットワークでは、ネットワーク
を構成するルータや交換機などの各ノードにおいて、各
データ転送チャネルに対するパケット転送処理、すなわ
ちフローに対するパケット転送処理能力(通信帯域幅)
の割り当てを行うパケット・スケジューリングを用いる
ことによって、各種アプリケーションに対応するという
手法が注目を集めている。
【0003】パケット・スケジューリングとは、ネット
ワーク内部の各ノードにおいて、次にどのフローのパケ
ットを送信するかについて、公平さを維持して決定し、
パケット転送処理能力の割り当てを行うことである。こ
のパケット・スケジューリングにより、ネットワークに
接続された各端末で実施されるリアルタイム・アプリケ
ーションがサポートされる。
【0004】従来のパケット・スケジューリングのアル
ゴリズムとして、タイムスタンピング・アルゴリズム
と、タイムフレームベース・アルゴリズムとが提案され
ている。タイムスタンピング・アルゴリズムとしては、
いわゆるジェネラライズド・プロセッサ・シェアリング
(以下、GPSという)を、パケット転送処理能力の割
り当て方法として適応させた重みづけフェア・キューイ
ング(WFQ)がある。また、タイムフレームベース・
アルゴリズムとしては、重みづけラウンドロビン(WR
R)がある。
【0005】
【発明が解決しようとする課題】しかしながら、このよ
うな従来のパケット・スケジューリング方法では、重み
づけフェア・キューイングなどのタイムスタンピング・
アルゴリズムを用いた場合、ノードに到着する各パケッ
トごとに極めて多くの変数を演算処理する必要があり、
また、重みづけラウンドロビンなどのタイムフレームベ
ース・アルゴリズムを用いた場合、バースト的なトラフ
ィックの影響を受けやすく、高い遅延ジッタを生じるた
め、いずれの場合にも、パケット遅延に敏感なリアルタ
イム・アプリケーションに対応できないという問題点が
あった。本発明はこのような課題を解決するためのもの
であり、パケットの転送遅延に敏感なリアルタイム・ア
プリケーションに対応できるパケット・スケジューリン
グ方法を提供することを目的としている。
【0006】
【課題を解決するための手段】このような目的を達成す
るために、本発明によるパケット・スケジューリング方
法は、各フローが要求するサービス転送速度に対応する
時間量を示す重みと、各フローの待ち行列長とに基づい
て、各フローの読み出し優先順位を示す優先インデック
スを算出し、各フローの重みに対応する割合であって、
かつ、各フローの優先インデックスに基づく順序で各フ
ローにパケット転送能力を割り当てるようにしたもので
ある。また、時間軸上に各フローの重みの和に対応する
長さのフレームを連続して設けるとともに、各フレーム
内に各フローを巡回する長さのラウンドを連続して設け
て、各フレーム内では各フローの重みに対応する割合で
パケット転送能力を割り当てるとともに、各ラウンド内
では各フローに巡回してパケット転送能力を割り当てる
ようにしたものである。
【0007】また、任意のフレーム内の各ラウンドで
は、フレームの開始直前に算出した優先インデックスに
基づく順序で、各フローに巡回してパケット転送能力を
割り当てるようにしたものである。さらに、各ラウンド
では、各フローの優先インデックスのうち最も大きい値
のフローに対して最初にパケット転送能力を割り当てる
ようにしたものである。さらにまた、任意のフローの待
ち行列長をフローの重みで除算することによりフローの
優先インデックスを算出するようにしたものである。
【0008】
【発明の実施の形態】次に、本発明について図面を参照
して説明する。まず、一般的なフレームベース・スケジ
ューリング方法について説明する。WRRなどの一般的
なフレームベース・スケジューリング方法では、時間軸
上に同じ長さのフレームを設け、各フレーム内において
その接続処理時に予め固定的に重みwi という時間量を
各フローiに割り当てることにより、各フローが要求す
るサービス転送速度を各フレームごとに保証するものと
なっている。
【0009】図2は一般的なフレームベース・スケジュ
ーリング方法を示す説明図であり、ここでは4個のフロ
ーF1 〜F4 が存在する場合を例に説明する。まず、各
フローの重みw1 〜w4 に基づいて、フレーム長Lが決
定される。例えば、各フローがそれぞれw1 =4,w2
=3,w3 =2およびw4 =1という重みを有している
場合、これら重みの和によりフレーム長L=10が算出
される。 フレーム長L=Σwi ,i∈F
【0010】次に、これら重みの大きいフローから順
に、パケットが1つづつ読み出されて転送される。各フ
ローからのパケット読み出しが一巡する期間をラウンド
といい、最初のラウンドR1 では、フローF1 ,F2
3 ,F4 の順にパケットが読み出されるものとなる。
【0011】このとき、1つのパケットが読み出された
フローは、1単位時間量を使ったことになる。したがっ
て、ラウンドR1 の終了時点での各フローの残り時間量
は、F1 =3,F2 =2,F3 =1およびF4 =0とな
る。このようにして、各フローから当初の時間量すなわ
ち重みwi を使い切るまで、順にパケットが読み出され
て転送される。
【0012】また、重みwi をすでに使い切っているフ
ローについては、キュー内にパケットが残っている場合
でも、読み出しは行わなわれない。したがって、ラウン
ドR2 では、フローF4 が残り時間量を使い切っている
ことから、フローF4 のキューにパケットが存在してい
ても読み出しは行われなず、フローF1 ,F2 ,F3
らパケットの読み出しが行われる。
【0013】同様にして、ラウンドR3 では、フローF
1 ,F2 からパケットの読み出しが行われ、続くラウン
ドR4 では、フローF1 からパケットの読み出しが行わ
れる。このようにして、ラウンドR4 の終了時点で、す
べてのフローの残り時間量がなくなってフレームが終了
し、新たなフレームが再開される。
【0014】したがって、従来の一般的なフレームベー
ス・スケジューリング方法によれば、重みの残っている
フローからパケットが固定的な順序で読み出されるた
め、到着パケットがいずれかのフローに存在する限り、
スケジューラの出力パターンは変化することはない。こ
のため、スケジューリングと各フローへのパケット到着
状況とは無関係となり、任意のフローでバースト的にパ
ケットが到着した場合、その処理に追従できない。
【0015】これに対して、本発明では、優先インデッ
クスという概念を導入している。優先インデックスと
は、各フローに対するスケジューリングの最新の優先順
位を示す値である。本発明は、この優先インデックスを
優先インデックス・テーブルに格納しておき、逐次、こ
れを参照することにより、各フローのスケージューリン
グを行うものであり、新規なフレームベース・スケジュ
ーリング手法である。
【0016】図1は本発明の一実施の形態であるパケッ
ト・スケジューリング方法の概念を示す説明図である。
同図において、11は各フローF1 〜FN について算出
された優先インデックスが格納される優先インデックス
・テーブルである。この優先インデックスは、各フロー
の接続処理時に予め固定的に割り当てられた重み(サー
ビス転送速度)w1 〜wN と、各フローの最新のキュー
長とから算出される。
【0017】各フローから到着したパケットは、各フロ
ーごとに設けられたキュー・バッファ(待ち行列)に格
納される。ここで、まず、各フローF1 〜FN の重みw
1 〜wN と、各フローF1 〜FNの最新のキュー長とか
ら、優先インデックスu1 〜uN が算出されて、優先イ
ンデックス・テーブル11に格納される。そして、この
優先インデックスu1 〜uN に基づいて、各フローに対
するパケット転送順序の決定すなわちスケジューリング
が行われ、これに従って各フローのキューからパケット
が読み出されて転送される。
【0018】本発明では、次のように優先インデックス
を算出する。時間tにおいて、待ち行列サイズq
i(t)および重みwi のフローiの優先インデックス
i は、 ul(t)=qi(t)/wl により算出する。この場合、優先インデックスは、時間
tにおいて、フローiの待ち行列を空にするために必要
なフレーム数を示すものとなる。
【0019】なお、この優先インデックスは、各フレー
ムが開始される直前に再計算され、優先インデックス・
テーブルが更新される。また、算出された優先インデッ
クスは、各パケットにタイムスタンプするのではなく、
各フレーム終了まで保持される。
【0020】したがって、次のフレームで最初に転送さ
れるパケットは、その時点における各フローの要求に基
づいて選択されるため、パケットの転送遅延に敏感なリ
アルタイム・アプリケーションに対応でき、従来のよう
に、各フレームの重みにより静的に選択されるものでは
なく、またWRRのように固定的な順序で読み出される
ものでもない。
【0021】次に、図3,4を参照して、本発明の動作
を説明する。図3は本発明によるスケジューリング例を
示す説明図、図4は本発明のスケジューリング手順を示
すフローチャートである。以下、図3に示すように、4
個のフローF1 〜F4 が存在する場合を例に説明する。
【0022】いずれかのフローF1 〜F4 のキューに未
転送パケットが存在するか否か判断され(ステップ4
0)、未転送パケットが発生するまで待機状態となる
(ステップ40:NO)。一方、未転送パケットの発生
に応じて(ステップ40:YES)、まず、各フローF
1 〜F4 の重みw1 〜w4 に基づいて、フレーム長Lが
決定される(ステップ41)。
【0023】例えば、各フローF1 〜F4 がそれぞれw
1 =4,w2 =3,w3 =2およびw4 =1という重み
を有している場合、これら重みの和によりフレーム長L
=10が算出される。 フレーム長L=Σwi ,i∈F 続いて、前述した算出方法に基づいて、各フローF1
4 の優先インデックスu1 〜u4 が算出される(ステ
ップ42)。
【0024】このとき、各フローF1 〜F4 のキュー長
すなわちパケット格納個数が、それぞれ10,8,6,
4の場合、各優先インデックスは、u1 =10/4=
2.5,u2 =8/3=2.67,u3 =6/2=3,
4=4/1=4となる。そして、これら優先インデッ
クスのうち最も大きなフロー、この場合にはF4が最初
に選択され、1つのラウンドが開始される(ステップ4
3)。
【0025】続いて、選択されたフローFi の重み(残
り時間量)wi があるか否か判断され(ステップ4
4)、重みwi が0より大きい場合には(ステップ4
4:YES)、そのフローFi からパケットを1つ読み
出して転送するとともに、重みwiおよびフレーム長L
を1単位時間量だけ減算する(ステップ45)。したが
って、この時点では、フローF4 の重みw4 =0、フレ
ーム長L=9となる。
【0026】続いて、次のフローが選択される(ステッ
プ46)。ここでは、直前に選択したフローの次の番号
のフローを選択するものとし、最後の番号のフローの次
は、先頭番号のフローを選択する。したがって、フロー
4 の次にフローF1 が選択される。そして、選択した
フローが現ラウンドで選択済みか否かによりラウンド終
了が判定され(ステップ47)、ラウンド未終了に応じ
て(ステップ47:NO)、ステップ44に戻る。
【0027】なお、ステップ44において、選択された
フローiの重みwi が0の場合には(ステップ44:N
O)、そのフローiが残り時間量を使い切ったと判断し
て、現フレーム内での選択禁止を設定し(ステップ4
8)、ステップ46へ移行する。このようにして、最初
のラウンドR1 では、最大優先インデックスを有するフ
ローF4 を先頭として、F4 ,F1 ,F2 ,F3 の順に
フローが選択されて、1パケットづつ読み出されて転送
される(ステップ44〜48)。
【0028】また、ステップ47において、ラウンド終
了と判断された場合には(ステップ47:YES)、フ
レーム長Lが0より大きいか否か判断し(ステップ4
9)、0より大きい場合には(ステップ49:YE
S)、ステップ43に戻って、新たなラウンドを開始す
る。したがって、ラウンドR2 では、重みw4 が0であ
ることから、フローF4 が選択禁止となり、最大優先イ
ンデックスを有するフローF3 を先頭として、F3,F1
,F2 の順にフローが選択されて、1パケットづつ読
み出されて転送される。
【0029】以降、同様にして、ラウンドR3 では、F
2 ,F1 の順にフローが選択されるとともに、ラウンド
4 ではフローF1 のみが選択されて、1パケットづつ
読み出されて転送される。さらに、ステップ49におい
て、フレーム長Lが0の場合には(ステップ49:N
O)、フレーム終了と判断して、ステップ40に戻り、
未転送パケットありに応じて新たなフレームを開始す
る。
【0030】したがって、次フレームの開始時におい
て、各フローのキュー長が変化していた場合には、新た
な優先インデックスが算出されて優先インデックス・テ
ーブル11が更新されるものとなり、これに応じて、各
フローに対するスケジューリングも変化する。
【0031】なお、以上説明したように、重み(残り時
間量)wi が0となったフローiについては、ステップ
48において、そのフレーム内での再選択をしないよう
にした場合について説明したが、ステップ43におい
て、重みwi >0であって、かつ優先インデックスui
が最大のフローを最初に選択するものとし、各ラウンド
において選択したフローiの重みが0の場合には、ステ
ップ45をスキップして、ステップ46に移行するよう
にしてもよい。
【0032】また、以上の説明からもわかるように、本
発明におけるパケット読み出し速度は、処理フロー数N
の各優先インデックスを算出して、その最大値のフロー
を選択するのに要する時間に依存する。したがって、本
発明では、各フレームごとに各フローの優先インデック
スを算出するとともに、各優先インデックスのうち最大
値のフローを最初に選択し、その後続をフローの番号順
に選択することにより、その処理時間の短縮を実現して
いる。
【0033】しかし、処理時間に余裕がある場合には、
図4のステップ49:YESからステップ42に移行し
て、各ラウンドごとに優先インデックスを再計算するよ
うにしてもよい。また、優先インデックスの最大値を有
するフローを最初に選択した後、その後続をフローの番
号順に選択するのではなく、優先インデックスの大きい
ものから順に選択してもよい。これらいずれの場合に
も、多数のフローを処理する場合でも、各フローのトラ
ヒック変化に柔軟に追従できる。
【0034】
【発明の効果】以上説明したように、本発明は、各フロ
ーが要求するサービス転送速度に対応する時間量を示す
重みと、各フローの待ち行列長とに基づいて、各フロー
の読み出し優先順位を示す優先インデックスを算出し、
各フローの重みに対応する割合であって、かつ、各フロ
ーの優先インデックスに基づく順序で各フローにパケッ
ト転送能力を割り当てるようにしたものである。
【0035】したがって、従来のように、各フレームの
重みにより静的に割り当てられるもの、あるいはWRR
のように固定的な順序割り当てられるものと比較して、
各フローの重みだけではなく、トラフィックにより変化
する各フローその待ち行列長をも考慮して、パケット転
送能力が割り当てられるものとなり、バースト的なトラ
フィックの影響を受けにくく、高い遅延ジッタの発生を
抑制でき、パケットの転送遅延に敏感なリアルタイム・
アプリケーションに対応できる。
【図面の簡単な説明】
【図1】 本発明の一実施の形態によるパケット・スケ
ジューリング方法の概念を示す説明図である。
【図2】 一般的なフレームベース・スケジューリング
方法(WRR)によるスケジューリング例を示す説明図
である。
【図3】 本発明によるスケジューリング例を示す説明
図である。
【図4】 本発明のスケジューリング手順を示すフロー
チャートである。
【符号の説明】
11…優先インデックス・テーブル、F1 〜FN …フロ
ー、w1 〜wN …重み、u1 〜uN …優先インデック
ス、R1 〜R4 …ラウンド、L…フレーム長、N…フロ
ー数。

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 超高速ネットワークを構成する中継ノー
    ドで、個々のパケット流を示す各フローに対し、中継ノ
    ードのパケット転送処理能力の割り当てを行う場合のパ
    ケット・スケジューリング方法において、 各フローが要求するサービス転送速度に対応する時間量
    を示す重みと、各フローの待ち行列長とに基づいて、各
    フローの読み出し優先順位を示す優先インデックスを算
    出し、 各フローの重みに対応する割合であって、かつ、各フロ
    ーの優先インデックスに基づく順序で各フローにパケッ
    ト転送能力を割り当てることを特徴とするパケット・ス
    ケジューリング方法。
  2. 【請求項2】 請求項1のパケット・スケジューリング
    方法において、 時間軸上に各フローの重みの和に対応する長さのフレー
    ムを連続して設けるとともに、各フレーム内に各フロー
    を巡回する長さのラウンドを連続して設けて、各フレー
    ム内では各フローの重みに対応する割合でパケット転送
    能力を割り当てるとともに、各ラウンド内では各フロー
    に巡回してパケット転送能力を割り当てることを特徴と
    するパケット・スケジューリング方法。
  3. 【請求項3】 請求項2のパケット・スケジューリング
    方法において、 任意のフレーム内の各ラウンドでは、前記フレームの開
    始直前に算出した優先インデックスに基づく順序で、各
    フローに巡回してパケット転送能力を割り当てることを
    特徴とするパケット・スケジューリング方法。
  4. 【請求項4】 請求項3のパケット・スケジューリング
    方法において、 各ラウンドでは、各フローの優先インデックスのうち最
    も大きい値のフローに対して最初にパケット転送能力を
    割り当てることを特徴とするパケット・スケジューリン
    グ方法。
  5. 【請求項5】 請求項1〜請求項4のパケット・スケジ
    ューリング方法において、 任意のフローの待ち行列長を前記フローの重みで除算す
    ることにより前記フローの優先インデックスを算出する
    ことを特徴とするパケット・スケジューリング方法。
JP23080597A 1997-08-27 1997-08-27 パケット・スケジューリング方法 Pending JPH1168787A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23080597A JPH1168787A (ja) 1997-08-27 1997-08-27 パケット・スケジューリング方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23080597A JPH1168787A (ja) 1997-08-27 1997-08-27 パケット・スケジューリング方法

Publications (1)

Publication Number Publication Date
JPH1168787A true JPH1168787A (ja) 1999-03-09

Family

ID=16913560

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23080597A Pending JPH1168787A (ja) 1997-08-27 1997-08-27 パケット・スケジューリング方法

Country Status (1)

Country Link
JP (1) JPH1168787A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002084322A (ja) * 2000-07-27 2002-03-22 Roke Manor Research Ltd 交換装置のマルチキャスト・トラフィック帯域幅割当て方法
JP2008010905A (ja) * 2006-06-27 2008-01-17 Nec Corp パケット送信時の優先度制御方法及びパケット送信時の優先度制御装置
US7613114B2 (en) 2000-06-29 2009-11-03 Nec Corporation Packet scheduling apparatus
CN101911612A (zh) * 2008-01-08 2010-12-08 阿克塞斯股份公司 分组丢失得以降低的网络卸载

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7613114B2 (en) 2000-06-29 2009-11-03 Nec Corporation Packet scheduling apparatus
JP2002084322A (ja) * 2000-07-27 2002-03-22 Roke Manor Research Ltd 交換装置のマルチキャスト・トラフィック帯域幅割当て方法
JP4618942B2 (ja) * 2000-07-27 2011-01-26 ローク マナー リサーチ リミテッド 交換装置のマルチキャスト・トラフィック帯域幅割当て方法
JP2008010905A (ja) * 2006-06-27 2008-01-17 Nec Corp パケット送信時の優先度制御方法及びパケット送信時の優先度制御装置
CN101911612A (zh) * 2008-01-08 2010-12-08 阿克塞斯股份公司 分组丢失得以降低的网络卸载
JP2011509628A (ja) * 2008-01-08 2011-03-24 アクシス アクチボラグ パケット・ロスを低減したネットワーク・オフローデング
JP2013062854A (ja) * 2008-01-08 2013-04-04 Axis Ab パケット・ロスを低減したネットワーク・オフローデング
US8761164B2 (en) 2008-01-08 2014-06-24 Axis Ab Network offloading with reduced packet loss

Similar Documents

Publication Publication Date Title
JP3715098B2 (ja) 通信ネットワークにおけるパケットの配送装置とその方法
US5790522A (en) Method and system for performing traffic congestion control in a data communication network
JP3429183B2 (ja) セル伝送のスケジューリング方法、装置及びスケジューラ
JP3814393B2 (ja) セルスケジューリング方法及びその装置
US20020023168A1 (en) Method and system for network processor scheduling based on service levels
US6795870B1 (en) Method and system for network processor scheduler
US20060291495A1 (en) Hardware self-sorting scheduling queue
JP2002519910A (ja) ポリシー・ベースのサービス品質
JP2002016637A (ja) パケットスケジューリング装置
KR100463697B1 (ko) 네트워크 프로세서가 흐름 큐의 연결 해제/재연결을 통해출력을 스케줄링하는 방법 및 시스템
CN110808920B (zh) 一种ccsds帧和ip报文共存的卫星通信流量控制方法
CN101286949A (zh) 基于IEEE802.16d标准的无线Mesh网MAC层资源调度策略
US6882625B2 (en) Method for scheduling packetized data traffic
CN108667746B (zh) 一种在深空延时容忍网络中实现业务优先级的方法
JP4279281B2 (ja) パケット通信品質制御装置およびパケット通信品質制御方法
JPH0471377B2 (ja)
JP2000059377A (ja) 通信装置
JP2001308914A (ja) 無線パケット通信用基地局装置
JPH1168787A (ja) パケット・スケジューリング方法
JP4376855B2 (ja) パケット通信品質制御装置
Ding et al. DAQ: deadline-aware queue scheme for scheduling service flows in data centers
JP4846601B2 (ja) 不足ラウンドロビン方式のデータパケットスケジューリングのインスタントサービス方法
US6643702B1 (en) Traffic scheduler for a first tier switch of a two tier switch
EP1521411A2 (en) Method and apparatus for request/grant priority scheduling
JPH11298523A (ja) パケット・スケジューリング方法