JP3567828B2 - Atmスイッチ及び動的しきい値設定方法 - Google Patents

Atmスイッチ及び動的しきい値設定方法 Download PDF

Info

Publication number
JP3567828B2
JP3567828B2 JP31714499A JP31714499A JP3567828B2 JP 3567828 B2 JP3567828 B2 JP 3567828B2 JP 31714499 A JP31714499 A JP 31714499A JP 31714499 A JP31714499 A JP 31714499A JP 3567828 B2 JP3567828 B2 JP 3567828B2
Authority
JP
Japan
Prior art keywords
queue
new
value
queues
old
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP31714499A
Other languages
English (en)
Other versions
JP2000236344A (ja
Inventor
ルイクシュー・ファン
チャン・レン
ブライアン・マーク
ゴパラクリシナン・ラママーシー
アレクサンダー・イシイ
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Publication of JP2000236344A publication Critical patent/JP2000236344A/ja
Application granted granted Critical
Publication of JP3567828B2 publication Critical patent/JP3567828B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3081ATM peripheral units, e.g. policing, insertion or extraction
    • 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
    • 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/5681Buffer or queue management
    • 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/5681Buffer or queue management
    • H04L2012/5682Threshold; Watermark

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明はATMスイッチのバッファ管理方式に係り、特に、動的キュー長を用いたATMスイッチの最適バッファ管理方式に関する。本発明は、動的キューしきい値を用いたATMスイッチ、及び、ATMスイッチのキューに対して共通のしきい値を動的に設定する方法として実現される。
【0002】
【従来の技術】
従来、ATMスイッチアーキテクチャは、帯域の競合やスイッチ内の一時的輻輳によるサービスの遅延を受けたセルに対処するためにバッファリングを用いている(E. W. Zegura, ”Architectures for ATM Switching Systems”, IEEE Communications Magazine, pp.28−37, February, 1993、参照)。このようなアーキテクチャのうちで、共有バッファメモリスイッチは、効率的にバッファを利用するため好ましい。例えばすべての出力ポートの間でバッファを共有し、入力トラフィックの統計多重を利用することにより、共有バッファATMスイッチは、ポートあたりのバッファサイズを小さくしても、同じセル遅延及び損失パフォーマンスを達成することができる。このようなバッファサイズの節減効果は、トラフィックがバースト的でありトラフィック負荷が不均一であるときには特に重要である。
【0003】
ATMスイッチでは、バッファメモリは通常、いくつかの異なるレベルで共有される。例えば、バッファは、異なるサービスクラス(例えば、CBR、VBR、ABR、UBRなど)によって論理的に分割され共有されることが可能である。上記のように、バッファは、異なる出力ポートに対応するキューどうしの間で共有することができる。VCごとのキューイングを採用する場合、バッファは、異なるVCに対応するキューどうしの間で共有することができる。
【0004】
しかし、バッファ管理手続きのない共有メモリスイッチは、過負荷条件下ではうまく動作しない(M. I. Irland, ”Buffer management in a packet switch”, IEEE Trans. Commun., vol.COM−26, pp.328−337, Mar. 1978、参照)。重要な問題点は、複数の出力ポートの間の公平性である。バッファメモリの統計的共有は、小さい出力ポートグループがメモリのほとんどを消費する可能性を引き起こす。このような、一部のポートによる過大なメモリ使用により、あまり利用されていないポート宛のセルが公平なメモリのシェアを得ることができない。最悪の場合、アクセスさえも妨げられる。
【0005】
このような問題点に対する1つの従来の解決法は、ポートが使用することができるバッファリングの量に対して制限を設けることである。すなわち、各キューは、最小メモリ量が保証されるとともに、アクセスすることができる最大メモリ量のしきい値を有する。
【0006】
別のしきい値設定方法が、F. Kamoun and L. Kleinrock, ”Analysis of Shared Finite Storage in a Computer Network Node Environment Under General Traffic Conditions”, IEEE Trans. Commun., vol.COM−28, No.7, pp.992−1003, July, 1980、に提案され解析されている。一般に、キューしきい値を設定する2つの方式がある。
【0007】
第1の方式は、静的しきい値(ST:static threshold)法と呼ばれる。この方法では、バッファしきい値は、ネットワーク管理システム(NMS:network management system)によって、各キューごとにあらかじめ設定される。到着セルは、対応するキュー長が、与えられたしきい値より小さいときに限り受容される。ST法は、実装が簡単であり、対応するキューカウンタと1つのコンパレータ(比較器)しか必要としない。複数のキューに対して静的しきい値を選択する際に、NMSは、トラフィックの特性及び統計を知る必要がある。キューに到着するトラフィックは、そのキューの記述と一致している必要がある。従って、ST法は、クラスレベル(例えば、CBR、VBR及びUBR)のトラフィックに適している。この場合、トラフィックは、異なるポートキュー及びクラス内の個々のコネクションに関してはかなり変動するけれども、1つのクラス全体では予測可能性が高いからである。
【0008】
第2の方式は、動的しきい値(DT:dynamic threshold)法と呼ばれる。この方法では、バッファしきい値は、変化するトラフィック負荷に従って動的に調整される。DT法によれば、キューがメモリの公平なシェア(すなわち、動的しきい値)を超過していない限り、過負荷トラフィックがメモリにアクセスすることが可能である。従って、良好な動的しきい値法は、複数のキューの間でバッファメモリの公平な共有を保証しながら、全体のスイッチ帯域利用率を改善するはずである。一般に、DT方式は、より多くの処理パワーを必要とし、ポートまたはVCのレベルでのバッファ管理に適している。これらのレベルでは、トラフィック負荷変動は複数のキューの間でかなり変化する(ほとんどは短い時間しか持続しないが)可能性がある。ポート及びVCのレベルでのトラフィック負荷変動に関する比較的短い時間スケールのために、DT方式は、実装が単純であることが要求される。
【0009】
上記の2つの方式に対して、さまざまなトラフィック条件におけるパフォーマンスが、包括的なシミュレーション研究を通じて比較されている(A. K. Choudhury and E. L. Hahne, “Dynamic Queue Length Thresholds in a Shared−Memory Packet Switch”, IEEE/ACM Trans. Networking, Vol.6, pp.130−140, April, 1998、参照)。具体的には、この文献では、ある量のバッファを未割当てにして、バッファメモリの公平な共有を保証する単純でエレガントなDT方式が提案されている。しかし、この方式では、少数のキューのみが過負荷のときに、バッファメモリ利用率が低い。
【0010】
【発明が解決しようとする課題】
従来の方法における問題点を克服するため、本発明の目的は、過負荷キューの数にかかわらず、空きメモリを効率的に利用する動的キューしきい値方式を使用するATMスイッチを提供することである。
【0011】
本発明のもう1つの目的は、STアルゴリズム及びDTアルゴリズムを用いた階層的バッファ管理方式を提供することである。さらにもう1つの目的は、バッファ利用率を改善する新規な動的キューしきい値アルゴリズムを提供することである。
【0012】
【課題を解決するための手段】
本発明の目的を実現するために、本発明によれば、動的キューしきい値方式を用いたATMスイッチは、K個の出力ポートキューと、該K個の出力ポートキューを共有するB個のセルのバッファとを有し、前記K個の出力ポートキューに対して共通のしきい値が動的に設定される。前記共通のしきい値は、新しいセルが前記K個の出力ポートキューのうちの1つの出力ポートキューに到着したときに古い値から新しい値に変更され、前記新しい値は、全キュー長が0より大きい所定値のB倍より小さいときは前記1つの出力ポートキューの長さに1を加えた値と前記古い値とのうちの最大値であり、全キュー長が前記所定値のB倍以上のときは前記古い値から1を引いた値と統計的に設定された最小バッファしきい値とのうちの最大値である。
【0013】
好ましくは、前記K個の出力ポートキューのそれぞれの出力ポートキューの長さは、入力トラフィック負荷と、該出力ポートキューに割り当てられたサービス帯域との変動に基づいて変化する。
【0014】
好ましくは、新しいセルが特定のキューに受容されるのは、該特定のキューの長さが前記新しい値より小さく、且つ、全キュー長がBより小さいときである。
【0015】
好ましくは、前記統計的に設定された最小バッファしきい値はデフォルトでは0に等しい。
【0016】
好ましくは、少量のバッファBが、ある所定の動作に対して割り当てられる。
【0017】
好ましくは、バッファメモリは、さらに動的キューしきい値方式を用いて、前記1つの出力ポートキュー内のVCに割り当てられる。
【0018】
好ましくは、動的キューしきい値方式は、複数レベルの動的バッファに適用される。
【0019】
本発明のもう1つの特徴によれば、K個のキューと、該K個のキューによって共有されるB個のセルのバッファとを有するATMスイッチのK個のキューに対して共通のしきい値T(t)を動的に設定する方法において、k=1,2,...,Kとして、前記K個のキューはそれぞれ、時刻tにおいてキュー長Q(t)を有し、Q(t)は、入力トラフィック負荷及び出力ポートkに割り当てられるサービス帯域とともに変動する。前記方法は、
時刻tにおける全キュー長をQ(t)とし、0<α≦1とし、統計的に設定された最小バッファしきい値をTとし、T(t)の古い値をToldとし、T(t)の新しい値をTnew(t)として、動的しきい値T(t)を、
Q(t)<α×Bのとき、Tnew(t)=max(Q(t)+1,Told)、
Q(t)≧α×Bのとき、Tnew(t)=max(Told−1,T)、
により設定するステップと、
new(t)を更新するステップと、
(t)<Tnew(t)かつQ(t)<Bならば時刻tで出力ポートkに新たに到着するセルを受容し、それ以外の場合には該新たに到着するセルを拒絶するステップとからなる。
【0020】
本発明のさらにもう1つの特徴によれば、K個のキューと、該K個のキューによって共有されるB個のセルのバッファとを有するATMスイッチのK個のキューに対して共通のしきい値TP(t)を動的に設定する方法において、k=1,2,...,Kとして、前記K個のキューはそれぞれ、時刻tにおいてキュー長Q(t)を有し、Q(t)は、入力トラフィック負荷及び出力ポートkに割り当てられるサービス帯域とともに変動し、各キューは、L個のVCを有し、l=1,2,...,Lとして、ポートkの各VCキューは、キュー長Qkl(t)を有する。前記方法は、
時刻tにおける全キュー長をQ(t)とし、0<α≦1とし、統計的に設定された最小バッファしきい値をTとし、TP(t)の古い値をTPoldとし、TP(t)の新しい値をTPnew(t)として、各出力キューに対する動的しきい値TP(t)を、
Q(t)<α×Bのとき、TPnew(t)=max(Q(t)+1,TPold)、
Q(t)≧α×Bのとき、TPnew(t)=max(TPold−1,T)、
により設定するステップと、
0<β≦1とし、キューkに割り当てられた各VCに対する動的しきい値をTV(t)とし、TV(t)の古い値をTV oldとし、TV(t)の新しい値をTV new(t)として、
Q(t)<β×TP(t)のとき、TV new(t)=max(Qkl(t)+1,TV old)、
Q(t)≧β×TP(t)のとき、TV new(t)=max(TV old−1,T)、
により設定するステップと、
TP(t)及びTV(t)を更新するステップと、
(t)<TP(t)かつQkl(t)<TV(t)かつQ(t)<Bならば時刻tで出力ポートkに新たに到着するセルを受容し、それ以外の場合には該新たに到着するセルを拒絶するステップとからなる。
【0021】
【発明の実施の形態】
[A.ATMスイッチにおけるバッファ管理]
ATMスイッチにおいて、バッファメモリは、
・異なるトラフィッククラスに属するキュー間、
・異なる出力ポート宛のキュー間、
・VCごとのキューイングを採用する場合は異なるVCのキュー間、
などのいくつかの方法で分割され共有される。
図1は、入力及び出力でキューイングを行うATMスイッチのアーキテクチャレイアウトを示す図である。この実施例において、スイッチは、同様の構造及び機能を有するK個の入力モジュールIXBとK個の出力モジュールOXBとを有する。各入力モジュールにおいて、バッファメモリは共有され、図2に示すように階層的な方法で論理的に分割される。
【0022】
図2に示すように、入力モジュールにおける全バッファメモリはセルB個分の容量であり、N個のトラフィッククラスがある。このN個のトラフィッククラスは、CBR、VBR(リアルタイム及び非リアルタイム)、ABR及びUBRなどからなる。各トラフィッククラスは、M個(M<N)のグループのうちの1つに属する。各グループは、同様の統計的特性のトラフィッククラスからなる。例えば、すべての非リアルタイムVBRクラスは1つのグループに属する。全バッファBは、各グループに分割され専用される。グループm(m=1,2,...,M)には専用メモリBGmが割り当てられ、
【数1】
Figure 0003567828
である。
【0023】
グループ間にはメモリの共有はなく、BGは、ネットワーク管理システムによって選択され調整された静的グループバッファしきい値である。グループmに割り当てられる複数のトラフィッククラスは、次のようにグループメモリBGを共有することができる。即ち、クラスi(ただし、クラスiはグループmに割り当てられる)が使用可能な最大バッファが、BC(i=1,2,...,N)及び
【数2】
Figure 0003567828
によっても制限されるように、グループメモリBGを共有することができる。
【0024】
これは、グループ内での完全な共有によってバッファ利用率を最大にしながら、グループ内のいずれのクラスによるバッファメモリの過大な消費もないことを保証する。バッファ割当てBCの各トラフィッククラスiごとに、相異なる損失あるいは遅延優先度のJ個のサブクラスが存在することも可能である。サブクラスjのバッファしきい値はTCij(j=1,2,...,J)に設定される。TCijの選択は、何らかのキューイングモデルを適用することによってなされる(F. Kamoun and L. Kleinrock, “Analysis of Shared Finite Storage in a Computer Network Node Environment Under General Traffic Conditions”, IEEE Trans. Commun., Vol.COM−28, No.7, pp.992−1003, July, 1980、参照)。
【0025】
グループレベルの割当てBGと同様に、クラス及びサブクラスのレベルのバッファしきい値(BC及びTCij)は、ネットワーク管理システムによって静的に選択され調整される。各クラス内で、バッファ管理はさらに2つのレベルに分類される。
・K個の出力ポートへのセルに対するキューがあり、TPで全K個のキューに対する共通のしきい値を表す。
・VCごとのキューイングを採用する場合、各出力ポートごとに異なるVCに対するキューがあり、TVikで出力ポートk(k=1,2,...,K)宛のすべてのVCに対する共通のしきい値を表す。
【0026】
グループ及びクラスのレベルでのバッファ割当てとは異なり、ポート及びVCのレベルでのキューしきい値(TP及びTVik)は、変化するトラフィック条件とともに動的に更新される。ポート及びVCのレベルのバッファ管理に動的しきい値を使用する理由は、これらのレベルではトラフィック負荷の変動が大きくなる傾向があり、動的しきい値は、静的しきい値よりもずっと良好にトラフィック負荷の過渡的挙動に対処することができるからである。従来の静的しきい値方式では、ポートキューしきい値は次のように設定される(F. Kamoun and L. Kleinrock, “Analysis of Shared Finite Storage in a Computer Network Node Environment Under General Traffic Conditions”, IEEE Trans. Commun., Vol.COM−28, No.7, pp.992−1003, July, 1980、参照)。
【数3】
Figure 0003567828
【0027】
次のセクションでは、本発明による新規な動的しきい値方式の実施例について説明する。この方法は、バッファメモリの公平で最適な共有を実現する。この実施例はポートあるいはVCのレベルのキュー長しきい値に関して説明されるが、当業者には直ちに明らかなように、この方式はバッファメモリの動的な公平共有を必要とする任意の問題に直接に適用することができる。
【0028】
[B.動的キューしきい値方式]
ここで説明する実施例はATMスイッチである。本実施例では、ATMスイッチはK個の出力ポートと、対応するK個の出力キューによって共有されるB個のセルのバッファを有すると仮定する。Q(t)は、時刻tにおける出力キューk(k=1,2,...,K)のキュー長である。好ましい実施例では、Q(t)は、出力ポートkの入力トラフィック負荷と、出力ポートkに割り当てられるサービス帯域の変化に応じて変動する可能性がある。K個の出力キューがすべて等しく扱われる場合、バッファ空間Bの公平共有を保証するには、各キューは、過負荷になったとき、少なくともB/Kのバッファメモリ(公平なシェア)にアクセスすることができなければならない。他方、バッファを効率的に利用するため、すなわち、最大バッファ共有を達成するためには、個々の過負荷キューは、他のキューによって使用されていないあるいは要求されていない空きバッファメモリを使用する。
【0029】
上記2つの目標は、K個のすべてのキューに対して共通のしきい値T(t)を動的に設定することによって達成される。この方式では、次のアルゴリズムがT(t)を動的に設定する。
時刻tにおいて出力ポートkへのセルが到着したとき、
【数4】
Figure 0003567828
とする。ここで、
【数5】
Figure 0003567828
であり、時刻tにおける全キュー長を表し、0<α≦1である。Tは、各キューごとに統計的に設定される最小バッファしきい値を表す。デフォルトではT=0である。従って、出力ポートkに到着するセルは、時刻tにおいて、Q(t)<Tnew(t)かつQ(t)<Bの場合にk番目のキューに受容され、それ以外の場合に、このセルは拒絶される。いずれの場合でも、その後、共通しきい値Toldの値はTnew(t)の値によって更新される。
【0030】
なお、式(1)において、パラメータαは、共有されるべきメモリの量を制御する。完全なバッファ共有の場合にはαは1に設定され、その場合、キューが過負荷のとき、メモリが複数の異なるキューの間で公平に共有されつつ100%のバッファ利用率を達成することができる。好ましい実施例では、式(1)におけるパラメータα及びTを調整することによって、少量のバッファを何らかの動作(例えば、RMセル挿入やend−of−messageセル挿入)のために特に残しておくことも可能である。
【0031】
[C.マルチレベル動的キューしきい値]
前のセクションでは、本発明の動的キューしきい値方式を用いて出力ポートレベルで複数のキューに対してバッファメモリを効率的かつ公平に管理する実施例について説明した。K個の出力ポートキューのそれぞれへのバッファメモリ割当ては式(1)によって動的にTnew(t)に設定される。しかし、ATMスイッチでは、バッファメモリは、ポートレベルの下でさらに分割されることが必要となることがある。例えば、前述のように、出力キューは多くのVCからなることがある。VCごとのキューイングを採用する場合、バッファメモリは、各VCキューに論理的に割り当てることも必要になる。
【0032】
もう1つの実施例について説明する。この実施例では、各出力ポートkはL(k=1,2,...,K)個のVCを有する。出力キューkの各VCの時刻tにおけるキュー長をQkl(t)で表す(l=1,2,...,L)。広く採用されているバッファ管理ポリシーは、まず、バッファメモリが、複数の出力キューの間で公平に共有されることを要求する(前のセクションで行われたように)。次に、各出力キュー内で、割り当てられたメモリを、この出力ポートへのすべてのVC間でさらに公平に共有する。これが、マルチレベルバッファ管理問題である。この好ましい実施例では、本発明の方式を用いてマルチレベル動的キューしきい値方式を実現し、上記の基準を満たしながらバッファ利用率を最大にする。
【0033】
TP(t)は、各出力キューの動的キューしきい値であり、TV(t)は、出力ポートk(k=1,2,...,K)宛の各VCキューの動的キューしきい値である。VCのセルが出力ポートkに到着したとき、動的キューしきい値TP(t)及びTV(t)は次の2段階アルゴリズムで計算される。
1.ポートキューkに対して、
【数6】
Figure 0003567828
2.ポートkのVCキューlに対して、
【数7】
Figure 0003567828
ここで、
【数8】
Figure 0003567828
である。パラメータβは、αと同じ目的で用いられ、0<β≦1である。
【0034】
(t)<TP(t)かつQkl(t)<TV(t)かつQ(t)<Bの場合に到着セルは受容される。それ以外の場合、セルは拒絶される。その後、セルが受容されるか廃棄されるかに拘わらず、TP(t)及びTV(t)によって、しきい値TPold及びTV oldがそれぞれ更新される。
【0035】
上記のアルゴリズムは、2つの異なるレベル、すなわち、ポートレベルとVCレベルにおける、バッファ管理のための動的バッファ割当て方式を提供する。これは、2つの異なるレベルで、即ち、まずポートレベルで、次にポート内のVCレベルで、バッファメモリの公平で最適な共有を保証する。詳細にいえば、K個の出力キューのうちのm個が過負荷(オーバーロード。すなわち、できるだけ多くのバッファを要求している状態)であり、残りの出力キューはアンダーロード(すなわち、今のところバッファは不要の状態)であると仮定する。過負荷の出力キューkに対して、n個(n≦L)の過負荷のVCがある。α=β=1に設定することで、バッファメモリBの完全共有を提供する。その場合、式(2)及び(3)のアルゴリズムによって、m個の過負荷出力キューのそれぞれに対するバッファ割当てはB/mであり、ポートkのn個の過負荷VCのそれぞれに対するバッファ割当てはB/(m×n)である。
【0036】
2レベルバッファ管理のための方式のみについて説明したが、当業者には認識されるように、上記アルゴリズムは、マルチレベル動的バッファ割当て問題を扱うように容易に拡張することができる(実際には2レベルの場合が普通であるが)。他方、出力キューどうしの間の公平性に関係なく、すべてのVCが同じ公平なバッファ割当てを要求する場合、上記アルゴリズムを直接にすべてのVCに適用することによって、方式は単純化される。
【0037】
[D.パフォーマンス比較及びシミュレーション結果]
このセクションでは、動的しきい値方式及びその他のバッファ管理方式のパフォーマンスを、いくつかの例を通して比較する。
【0038】
Choudhury及びHahneによる論文(A. K. Choudhury and E. L. Hahne, “Dynamic Queue Length Thresholds in a Shared−Memory Packet Switch”, IEEE/ACM Trans. Networking, Vol.6, pp.130−140, April, 1998)に記載された動的しきい値方式では、定常状態において、次式で定まるある量のバッファメモリΘが未割当てのまま残される。これは彼らの方式で本質的であるからである。
Θ=αB/(1+θ・S)
ここで、Sは過負荷キューの数であり、θは乗数パラメータである。多くの過負荷キューがある場合あるいはパラメータθが非常に大きい値である場合には、未割当てのまま残されるメモリは無視できるかもしれないが、彼らは前掲論文で、θの値が非常に大きいと動的制御が無効になることを示している。他方、適当なトラフィックポリシング、帯域割当て及びその他の制御メカニズムにより、多くのキュー(それぞれ異なる出力ポート又はラインへ行く)が同時に輻輳する可能性は低くなる。従って、場合によっては、Θにおける未利用のメモリ量は大きくなる。例えば、完全共有のα=1でθ=1(通常は良好な選択)の場合、ただ1つの過負荷キューがあるときに、メモリの半分が割り当てられないことになる。
【0039】
第1の例では、120セルのバッファメモリが、4個の出力ポートに対応するキューによって共有される。容量600Mbpsのサーバが、ラウンドロビン方式で4個のポートキューにサービスする。別のソース(VC)が、各ポートキューにセルを供給する。第1のVCは、到着レートが310MbpsのCBRソースである。残りは、ピークレートが310Mbpsで、相異なるオンとオフの周期を有する「オン/オフ」VBRソースであり、システム全体は安定であるが、2個以上のソースがアクティブにセルを送信しているときには過負荷が発生するようになっている。しかし、アクティブで過負荷のVCが1個のみの場合には、Choudhury et al.に記載のアルゴリズムによれば、VCは、すべての空きバッファメモリ(120セル)をとる。
図3から分かるように、本発明のDT方式を用いると、各キューごとの定常状態キュー占有量は、2個、3個及び4個のVCがアクティブのときそれぞれ60セル、40セル及び30セルである。これは、120セルのバッファメモリ全体が使用されている場合にChoudhury et al.のアルゴリズムによって計算されたバッファメモリの公平シェアと厳密に一致する。Choudhury et al.のDTアルゴリズムを用いると、バッファメモリの公平シェアは、それぞれ60セル、40セル、30セル及び24セルとなる。この結果、未使用バッファはそれぞれ50%、33%、25%及び20%となる。
【0040】
各ポートキューのしきい値を60セルとした静的しきい値方式では、過負荷ソースが1個だけのときにバッファは50%未使用であり、第3及び第4のソースは、アクティブになったときに、メモリの公平シェアが得られない。
【0041】
第2の例では、同じ120セルのバッファメモリが、2個の出力ポート宛の4個のVCキューによって共有される。各VCキューは相異なるソースによってセルが供給される。第1のVCは出力ポート#1宛であり、ピークレートが310Mbpsの「オン/オフ」VBRソースである。他の3個の統計的に同一のVCはすべて出力ポート#2宛であり、ピークレートが310MbpsのCBRソースである。従って、出力ポート#2へのVCは常に過負荷状態を生じ、できるだけ多くの空きバッファメモリを必要とする。動的バッファ共有ポリシーは次の2つのレベルを有する。
(i)2個のポートはポートレベルでバッファの公平シェアを有する。
(ii)各ポートバッファシェア内では、複数のVCが公平シェアを有する。
式(2)及び(3)に記載した本発明の動的キューしきい値方式が適用される。図4から明らかなように、ポート#2への3個のVCがt=500(セル時間)でアクティブになると、システムは過負荷になり、ポート#1へのVCは、ポートレベルメモリ割当てで60セルの公平シェアを獲得し、ポート#2へのVCは全体で残りの60セルを獲得し、それらの3個のVCはそれぞれ、VCレベルのメモリ割当てで20セルずつの公平シェアを有する。ポート#1へのVCがt=3500(セル時間)付近でインアクティブになると、その60セルのメモリ割当てが空きになる。ここで、ポート#2への3個のアクティブなVCはポートレベルで全部で120セルのメモリをとり、各VCはVCレベルで40セルずつの公平シェアを有する。その後、ポート#1へのVCが再びアクティブになると、ポートレベルの公平シェアとして60セルを再び獲得する。
【0042】
【発明の効果】
以上、共有メモリATMスイッチのための新規な動的バッファ管理方式について説明した。Choudhury et al.で提案されたバッファ管理方式と同じ考え方で、本発明は、オンデマンドのトラフィック負荷に対して公平なバッファメモリ共有を行うことによって、変化するキュー条件に適応することが示された。動的キューしきい値を計算するのには最小限の処理パワーしか必要としないため、実装はむしろ単純である。さらに、本発明は、バッファメモリの利用率を最大にする。式(1)のパラメータαを調整することによって、メモリ共有の程度を制御することができる。また、マルチレベルバッファ管理方式を実現するために本発明の動的キューしきい値アルゴリズムをどのようにして適用することができるかも示した。
【0043】
動的しきい値とともに、階層的バッファメモリ分割方式も示した。この方式は、複数のレベルでバッファメモリを論理的に分割し割り当てる。この方式は、グループ及びクラスのレベルではトラフィックの統計的特性及びサービスのQoSを考慮し、ポート及びVCのレベルでは、変化するトラフィック条件に対するバッファメモリの公平で最適な割当てを保証する。
【0044】
上記では本発明のいくつかの実施例のみについて説明したが、当業者には明らかなように、上記の説明に基づいて、本発明の技術思想及び技術的範囲から離れることなく、本発明のさまざまな変形例を考えることが可能である。
【図面の簡単な説明】
【図1】入力及び出力キューイングモジュールを有するATMスイッチの図である。
【図2】異なるレベル、すなわち、グループ、クラス、サブクラス、ポート/ライン、VCでの階層的なバッファメモリ割当て方式を示す図である。
【図3】各VCが異なるポートを宛先とする、ポートレベルでの動的バッファ割当てを示す図である。
【図4】ポート及びVCのレベルでの動的バッファ割当てを示す図である。

Claims (9)

  1. それぞれ異なる出力ポートに対応するK個の出力ポートキューと該K個の出力ポートキューの間で共有されるセルB個分の容量のバッファとを有し、動的キューしきい値方式を用いるATMスイッチにおいて、
    前記K個の出力ポートキューに対して共通のしきい値が動的に設定され、
    前記共通のしきい値は、新しいセルが前記K個の出力ポートキューのうちの任意の1つに到着した時に古い値から新しい値に変更され、
    前記新しい値は、全キュー長がプリセット値(0より大きい)のB倍より小さい時には前記任意の1つの出力ポートキューの長さに1を加えた値と前記古い値とのうちの最大値であり、全キュー長が前記プリセット値のB倍以上の時には前記古い値から1を引いた値と統計的に設定された最小バッファしきい値とのうちの最大値である、
    ことを特徴とするATMスイッチ。
  2. 前記K個の出力ポートキューのそれぞれの出力ポートキューの長さは、入力トラフィック負荷と、該出力ポートキューに割り当てられたサービス帯域との変動に基づいて変化することを特徴とする請求項1記載のATMスイッチ。
  3. 新しいセルが特定のキューに受容されるのは、該特定のキューの長さが前記新しい値より小さく、且つ、全キュー長がBより小さいときであることを特徴とする請求項1記載のATMスイッチ。
  4. 前記統計的に設定された最小バッファしきい値はデフォルトでは0に等しいことを特徴とする請求項1記載のATMスイッチ。
  5. 前記バッファの予め定められたメモリを、予め定められた目的のセルに対して割り当てることを特徴とする請求項1記載のATMスイッチ。
  6. 前記バッファのメモリは、さらに動的キューしきい値方式を用いて、前記1つの出力ポートキュー内のVCに割り当てられることを特徴とする請求項1記載のATMスイッチ。
  7. 動的キューしきい値方式は、ポートレベルとその下位レベルとに対するバッファメモリ割り当てに適用されることを特徴とする請求項1記載のATMスイッチ。
  8. それぞれ異なる出力ポートに対応するK個のキューと該K個のキューの間で共有されるセルB個分の容量のバッファとを有し、k=1,2,...,Kとして前記K個のキューはそれぞれ時刻tにおいてキュー長Qk(t)を有し、キュー長Qk(t)は入力トラフィック負荷及び出力ポートkに割り当てられるサービス帯域とともに変動するATMスイッチにおける前記K個のキューに対して共通のしきい値T(t)を動的に設定する方法において、
    時刻tにおける全キュー長をQ(t)、0<α≦1、統計的に設定された最小バッファしきい値をTm、T(t)の古い値をTold、T(t)の新しい値をTnew(t)として、任意のkに対して動的しきい値T(t)を、
    Q(t)<α×Bの時、Tnew(t)=max(Qk(t)+1,Told)、
    Q(t)≧α×Bの時、Tnew(t)=max(Told−1,Tm)、
    により設定するステップと、
    new(t)を更新するステップと、
    k(t)<Tnew(t)かつQ(t)<Bならば時刻tで出力ポートkに新たに到着するセルを受容し、それ以外の場合には該新たに到着するセルを拒絶するステップと、
    からなることを特徴とする、ATMスイッチのキューに対して共通のしきい値を動的に設定する方法。
  9. それぞれ異なる出力ポートに対応するK個のキューと該K個のキューの間で共有されるセルB個分の容量のバッファとを有し、k=1,2,...,Kとして前記K個のキューはそれぞれ時刻tにおいてキュー長Qk(t)を有し、キュー長Qk(t)は入力トラフィック負荷及び出力ポートkに割り当てられるサービス帯域とともに変動し、各キューはLk個のVCを有し、l=1,2,...,Lkとしてポートkの各VCキューはキュー長Qkl(t)を有するATMスイッチのK個のキューに対して共通のしきい値TP(t)を動的に設定する方法において、
    時刻tにおける全キュー長をQ(t)、0<α≦1、統計的に設定された最小バッファしきい値をTm、TP(t)の古い値をTPold、TP(t)の新しい値をTPnew(t)として、任意のkに対して各出力キューに対する動的しきい値TP(t)を、
    Q(t)<α×Bの時、TPnew(t)=max(Qk(t)+1,TPold)、
    Q(t)≧α×Bの時、TPnew(t)=max(TPold−1,Tm)、
    により設定するステップと、
    0<β≦1、キューkに割り当てられた各VCに対する動的しきい値をTVk(t)、TVk(t)の古い値をTVk old、TVk(t)の新しい値をTVk new(t)として、任意lに対して
    Q(t)<β×TP(t)の時、TVk new(t)=max(Qkl(t)+1,TVk old)、
    Q(t)≧β×TP(t)の時、TVk new(t)=max(TVk old−1,Tm)、
    により設定するステップと、
    TP(t)及びTVk(t)を更新するステップと、
    k(t)<TP(t)且つQkl(t)<TVk(t)且つQ(t)<Bならば時刻tで出力ポートkに新たに到着するセルを受容し、それ以外の場合には該新たに到着するセルを拒絶するステップと、
    からなることを特徴とする、ATMスイッチのキューに対して共通のしきい値を動的に設定する方法。
JP31714499A 1999-02-12 1999-11-08 Atmスイッチ及び動的しきい値設定方法 Expired - Fee Related JP3567828B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/249,324 US6424622B1 (en) 1999-02-12 1999-02-12 Optimal buffer management scheme with dynamic queue length thresholds for ATM switches
US09/249324 1999-02-12

Publications (2)

Publication Number Publication Date
JP2000236344A JP2000236344A (ja) 2000-08-29
JP3567828B2 true JP3567828B2 (ja) 2004-09-22

Family

ID=22942984

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31714499A Expired - Fee Related JP3567828B2 (ja) 1999-02-12 1999-11-08 Atmスイッチ及び動的しきい値設定方法

Country Status (4)

Country Link
US (1) US6424622B1 (ja)
EP (1) EP1028600B1 (ja)
JP (1) JP3567828B2 (ja)
DE (1) DE60022243T2 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000269997A (ja) * 1999-03-18 2000-09-29 Fujitsu Ltd Lan中継交換装置
US6788697B1 (en) * 1999-12-06 2004-09-07 Nortel Networks Limited Buffer management scheme employing dynamic thresholds
US6985455B1 (en) * 2000-03-03 2006-01-10 Hughes Electronics Corporation Method and system for providing satellite bandwidth on demand using multi-level queuing
US7072353B2 (en) * 2000-06-15 2006-07-04 At&T Corp. Flexible bandwidth allocation in high-capacity grooming switches
US6967921B1 (en) * 2000-11-27 2005-11-22 At&T Corp. Method and device for efficient bandwidth management
US20020110094A1 (en) * 2001-02-13 2002-08-15 Reddy Naveen S. Spot beam hopping packet scheduler system
GB2372172B (en) 2001-05-31 2002-12-24 Ericsson Telefon Ab L M Congestion handling in a packet data network
US7349419B1 (en) * 2002-02-08 2008-03-25 Nortel Networks Limited Queue sizing for packet routing
WO2004058179A2 (en) * 2002-12-23 2004-07-15 Dynavax Technologies Corporation Immunostimulatory sequence oligonucleotides and methods of using the same
US7352699B2 (en) * 2003-04-25 2008-04-01 Alcatel Usa Sourcing, L.P. Switch fabric access scheduler
US7518996B2 (en) * 2004-09-16 2009-04-14 Jinsalas Solutions, Llc Fast credit system
US7564869B2 (en) 2004-10-22 2009-07-21 Cisco Technology, Inc. Fibre channel over ethernet
US7830801B2 (en) * 2004-10-29 2010-11-09 Broadcom Corporation Intelligent fabric congestion detection apparatus and method
US7990978B1 (en) * 2004-12-17 2011-08-02 Verizon Services Corp. Dynamic bandwidth queue allocation
US7961621B2 (en) 2005-10-11 2011-06-14 Cisco Technology, Inc. Methods and devices for backward congestion notification
JP4701152B2 (ja) * 2006-10-20 2011-06-15 富士通株式会社 データ中継装置、データ中継方法およびデータ中継プログラム
TWI330024B (en) * 2007-02-16 2010-09-01 Realtek Semiconductor Corp Bandwidth control module and control method thereof
US8149710B2 (en) * 2007-07-05 2012-04-03 Cisco Technology, Inc. Flexible and hierarchical dynamic buffer allocation
US8121038B2 (en) 2007-08-21 2012-02-21 Cisco Technology, Inc. Backward congestion notification
EP2187580B1 (en) 2008-11-18 2013-01-16 Alcatel Lucent Method for scheduling packets of a plurality of flows and system for carrying out the method
US8081569B2 (en) * 2009-04-20 2011-12-20 Telefonaktiebolaget L M Ericsson (Publ) Dynamic adjustment of connection setup request parameters
US8755271B2 (en) * 2011-01-28 2014-06-17 Broadcom Corporation Dynamic memory bandwidth allocation
FR2984657B1 (fr) * 2011-12-19 2014-01-10 Kalray Systeme d'emission de flots de donnees concurrents sur un reseau
FR2984656B1 (fr) * 2011-12-19 2014-02-28 Kalray Systeme d'emission de flots de donnees concurrents sur un reseau
US20140105218A1 (en) * 2012-10-12 2014-04-17 Prashant H. Anand Queue monitoring to filter the trend for enhanced buffer management and dynamic queue threshold in 4g ip network/equipment for better traffic performance
CN111669339B (zh) * 2020-05-25 2022-02-15 武汉大学 智慧能源站站控层业务优先级划分及pdwrr队列调度方法
CN113507423A (zh) * 2021-04-25 2021-10-15 清华大学 流量感知的交换机共享缓存调度方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5864538A (en) * 1996-08-26 1999-01-26 Lucent Technologies Inc. First-order rate-based flow control with adaptive queue threshold for ATM networks
US6052361A (en) * 1997-04-16 2000-04-18 Lucent Technologies Inc. Method for providing a fair-rate allocation for available bit rate services
KR100247022B1 (ko) * 1997-06-11 2000-04-01 윤종용 Atm 스위칭 시스템의 단일 스위치 소자 및 버퍼 문턱값 결정 방법
US6118764A (en) * 1997-12-30 2000-09-12 Nortel Networks Corporation Congestion indication/no increase (CI/NI) ABR flow control for ATM switches

Also Published As

Publication number Publication date
EP1028600B1 (en) 2005-08-31
JP2000236344A (ja) 2000-08-29
EP1028600A3 (en) 2002-09-11
DE60022243D1 (de) 2005-10-06
US6424622B1 (en) 2002-07-23
DE60022243T2 (de) 2006-03-09
EP1028600A2 (en) 2000-08-16

Similar Documents

Publication Publication Date Title
JP3567828B2 (ja) Atmスイッチ及び動的しきい値設定方法
US5917804A (en) Connection admission control for ATM networks handling CBR and VBR services
US6404768B1 (en) Method and apparatus for serving ATM packets/cells
US6650645B2 (en) Bi-modal control system and method for partitioning a shared output buffer in a connection-oriented network connections device
JP3347926B2 (ja) メモリ割り付けを改善したパケット通信システム及び方法
US6240066B1 (en) Dynamic bandwidth and buffer management algorithm for multi-service ATM switches
EP1056245B1 (en) Buffering system employing per traffic flow accounting congestion control
US7061910B2 (en) Universal transfer method and network with distributed switch
US20040066785A1 (en) Connection admission control and routing by allocating resources in network nodes
JP3949282B2 (ja) 資源を共有するシステムにおけるサービス要求受付管理方法
US6345040B1 (en) Scalable scheduled cell switch and method for switching
US7092396B2 (en) Asynchronous transfer mode (ATM) based delay adaptive scheduling apparatus adaptive according to traffic types and method thereof
Bian et al. Dynamic flow switching. A new communication service for ATM networks
US6990115B2 (en) Queue control method and system
KR20030048905A (ko) 공유 버퍼형 스위치의 적응 버퍼 배분 방법 및 이에사용되는 스위치
US20040202175A1 (en) Bandwidth control method, cell receiving apparatus, and traffic control system
Fan et al. An optimal buffer management scheme with dynamic thresholds
Yaprak et al. Dynamic buffer allocation in an ATM switch
Wu et al. Two-level dynamic step sizes of virtual paths on bandwidth allocation in ATM networks
AboElFotoh et al. An integrated call admission and buffer management scheme for LAN interconnection over a shared-memory ATM switch
CA2273291A1 (en) Buffering system employing per traffic flow accounting congestion control
Pao et al. Cell scheduling for ATM switch with delay-sensitive and loss-sensitive traffic
Bian et al. Dynamic Flow Switching
Aderounmu et al. Improving the quality of service guarantee in an Asynchronous Transfer Mode (ATM) Network
Wang Threshold-based congestion control scheme for ABR services in ATM networks

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040309

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040510

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040607

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090625

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100625

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100625

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110625

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110625

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120625

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120625

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130625

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees