JP3646772B2 - Atm装置 - Google Patents
Atm装置 Download PDFInfo
- Publication number
- JP3646772B2 JP3646772B2 JP33962998A JP33962998A JP3646772B2 JP 3646772 B2 JP3646772 B2 JP 3646772B2 JP 33962998 A JP33962998 A JP 33962998A JP 33962998 A JP33962998 A JP 33962998A JP 3646772 B2 JP3646772 B2 JP 3646772B2
- Authority
- JP
- Japan
- Prior art keywords
- queue
- weight value
- class queue
- class
- cell
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
【発明の属する技術分野】
この発明は、ATM(Asynchronous Transfer Mode)装置に関するものであり、より詳細には優先制御方式を用いてセルの送出を行うATM装置に関するものである。
【0002】
【従来の技術】
従来、ATM装置のセル送出にかかる優先制御方式としては、例えば、完全優先制御方式や、WRR(Weighted Round Robin)方式等が使用されていた。
【0003】
完全優先制御方式では、各クラスキューに優先度が設定される。そして、最も優先度の高いクラスキューにセルが1個でも存在する場合には、常に、そのクラスキューのセルを送出する。一方、優先度の低いクラスキューからは、このクラスキューよりも優先度の高いクラスキューにセルが全く存在しない場合に限って、セルの送出が行われる。
【0004】
また、WRR方式では、各クラスキューに対して、何らかの基準に従って、送出セル数のウエイト値を設定する。また、各クラスキューにはダウン・カウンタを設け、ウエイト値に応じた初期値を設定する。ATM装置の稼働中は、クラスキューから1個のセルが送出される度に、そのクラスキューのダウン・カウンタを「1」ずつ減数する。そして、ダウン・カウンタの計数値が「0」になったクラスキューはセルの送出を停止し、全てのクラスキューのダウン・カウンタの計数値が「0」になると各クラスキューのダウン・カウンタを初期値にリセットする。
【0005】
【発明が解決しようとする課題】
しかしながら、完全優先方式には、優先度の高いクラスキューからのセルの送出が多くなりすぎ、優先度の低いクラスキューからセルが送出され難いという欠点があった。
【0006】
また、WRR方式には、各クラスキューに対応させて固定的に帯域を保証することはできるものの、通信回線の使用効率が悪いという欠点があった。
【0007】
このため、優先度が低いキューも適切なセル送出速度を得ることができ、且つ、回線の使用効率が良いATM装置が嘱望されていた。
【0008】
【課題を解決するための手段】
この発明は、セルを出力する複数のキューと、これらのキューのいずれかを適宜選択してセルを送出させるキュー選択手段とを備えたATM装置に関するものである。
【0009】
そして、キュー選択手段が、キューごとに算出された最低保証帯域のウエイト値および最大保証帯域のウエイト値を用い、キューにそれぞれ設定された優先度にしたがって、キューのいずれかを適宜選択する制御部を備え、最低保証帯域のウエイト値が、キューを最低保証帯域が設定されているものと設定されていないものとに分類し、次に、これらの最低保証帯域の総和をシェーピング速度から減算することによって得られた帯域を、最低保証帯域が設定されていないものの中で最も優先度が高いキューの最低保証帯域とし、続いて、全ての最低保証帯域についての最大公約数を算出し、さらに、この最大公約数で最低保証帯域をそれぞれ除算することによって得られ、最大保証帯域のウエイト値が、最大公約数で最大保証帯域を除算することによって得られることを特徴とする。
【0010】
このような構成によれば、キューごとに算出された最低保障帯域のウエイト値および最大保障帯域のウエイト値の範囲内で、キューの優先制御を行うので、セル送出が優先度の高いキューに偏ることを防止しつつ、十分な回線使用効率を確保することができる。
【0011】
【発明の実施の形態】
以下、この発明の実施の形態について、図面を用いて説明する。なお、図中、各構成成分の大きさ、形状および配置関係は、この発明が理解できる程度に概略的に示してあるにすぎず、また、以下に説明する数値的条件は単なる例示にすぎないことを理解されたい。
【0012】
図1は、この実施の形態に係るATM装置の要部構成を概略的に示すブロック図である。なお、ここでは、クラスキューが4個の場合を例に採って説明する。
【0013】
図1において、振り分け部110は、入力セルを、サービスのクラスに応じてクラスキューQ1〜Q4に振り分ける。例えば、ITU−T標準のサービスであれば、クラスキューQ1にはDBR(Deteministic Bit Rate transfer capacity) に係るセルC1,C1,・・・を、クラスキューQ2にはSBR(Statistical Bit Rate)に係るセルC2,C2,・・・を、クラスキューQ3にはGFR/ABR(Guaranteed Frame Rate/Available Bit Rate)に係るセルC3,C3,・・・を、クラスキューQ4にはDBRのUクラスに係るセルC4,C4,・・・を、それぞれ振り分けること等が可能である。
【0014】
クラスキューQ1〜Q4は、振り分け部110によって振り分けられたセルを順次格納し、キュー選択部120の制御にしたがって、格納順に1個ずつ送出する。後述するように、各クラスキューQ1〜Q4には、それぞれ、サービスの種類に応じて優先度、最大帯域保証値および最低帯域保証値が設定される。
【0015】
キュー選択部120は、制御部121の制御にしたがってクラスキューQ1〜Q4のいずれかを適宜選択し、セルを送出させる。キュー選択部120からのセルの送出は、一定の帯域(シェーピング速度)で行われ、この帯域を越えてセルを送出することはできない。
【0016】
制御部121は、優先度、最低保証帯域のウエイト値および最大保証帯域のウエイト値を、クラスキューQ1〜Q4ごとに記憶している。そして、これらの値を用いてクラスキューQ1〜Q4の選択を制御する。
【0017】
次に、最低保証帯域および最大保証帯域のウエイト値を演算する手順について、図2のフローチャートを用いて説明する。
【0018】
まず、初期値の設定等を行った後(S201)、最初のクラスキューQ1に最低帯域保証値Bmin(1)が設定されているか否かを判断する(S202)。そして、クラスキューQ1に最低帯域保証値Bmin(1)が設定されていない場合(すなわちBmin(1)=0の場合)は、このクラスキューQ1を最優先キューに指定する(S203)。一方、クラスキューQ1に最低帯域保証値Bmin(1)が設定されている場合(すなわちBmin(1)≠0の場合)には、この最低帯域保証値をBsum (初期設定では「0」)に加算する。
【0019】
次に、全てのクラスキューQ1〜Q4についての処理が終了したか否かを判断する(S205)。ここではクラスキューQ2〜Q4についての処理が行われていないので、続いて、クラスキューQ2に最低帯域保証値が設定されているか否かを判断する(S202)。そして、クラスキューQ2に最低帯域保証値Bmin(2)が設定されていない場合は、クラスキューQ1の優先度とクラスキューQ2の優先度とを比較し、クラスキューQ2の優先度の方が高い場合には、最優先キューをクラスキューQ2に変更する(S203)。一方、クラスキューQ2に最低帯域保証値Bmin(2)が設定されている場合には、この最低帯域保証値をBsum に加算する。
【0020】
以下同様にして、クラスキューQ3,Q4の処理を行う。
【0021】
全てのクラスキューQ1〜Q4についての処理が終了すると、続いて、キュー選択部120に固有のシェーピング速度Bs と最低帯域保証値の総和Bsum との差Bs −Bsum を算出し、この算出結果を、ステップS203で求めた最優先キューの最低帯域保証値Bmin に設定する(S206)。
【0022】
次に、ウエイト係数kwとして、クラスキューQ1〜Q4の最低帯域保証値Bmin についての最大公約数を求める(S207)。この演算に使用する最低帯域保証値Bmin には、ステップS206で設定した最優先キューの最低帯域保証値を含むが、最低帯域保証値が設定されていないクラスキュー(すなわちBmin =0)については無視する。
【0023】
続いて、このウエイト係数kwを用いて、最低帯域保証値Bmin および最大帯域保証値Bmax のウエイト値を算出する(S208)。最低帯域保証値Bmin のウエイト値(以下、「最低帯域保証ウエイト値」と記す)Wmin は、各最低帯域保証値Bmin をウエイト係数kwで除算することによって得られる。同様に、最大帯域保証値Bmax のウエイト値(以下、「最大帯域保証ウエイト値」と記す)Wmax は、各最大帯域保証値Bmax をウエイト係数kwで除算することによって得られる。
【0024】
以下、図2に示した演算処理の具体例について説明する。ここでは、各クラスキューQ1〜Q4の最低帯域保証値Bmin(i)、最大帯域保証値Bmax(i)および優先度D(i) を表1のように定め、且つ、キュー選択部120のシェーピング速度Bs を「15」とした場合を例に採って説明する。
【0025】
【表1】
【0026】
表1に示したように、最低帯域保証値Bmin が設定されていないクラスキュー(すなわち、Bmin(i)=0のクラスキュー)はQ1,Q2であり、また、クラスキューQ2よりもクラスキューQ1の方が優先度が高い。したがって、ステップS203で指定される最優先キューは、クラスキューQ1となる。また、表1より、ステップ204で算出される最低帯域保証値Bmin の総和はBsum =5となる。したがって、シェーピング速度Bs (=15)と総和Bsum との差はBs −Bsum =10となるので、ステップ206では、クラスキューQ1の最低帯域保証値Bmin(1)に「10」が代入される。
【0027】
また、ステップ207では、Bmin(1)=10、Bmin(3)=3およびBmin(4)=2の最大公約数が求められ、したがって、ウエイト係数kw=1となる。これにより、各クラスキューQ1〜Q4の最低帯域保証ウエイト値Wmin(1)〜Wmin(4)および最大帯域保証ウエイト値Wmax(1)〜Wmax(4)は、表2のようになる。
【0028】
【表2】
【0029】
次に、これらのウエイト値を用いた優先制御の手順について、図3のフローチャートを用いて説明する。
【0030】
制御部121は、まず、初期値の設定等を行った後(S301)、クラスキューQ1〜Q4から、処理を行うクラスキューを選択する(S302)。通常は、クラスキューの番号順に処理を行えばよい。この実施の形態では、Q1→Q2→Q3→Q4の順で処理を行うこととする。
【0031】
次に、最初に処理を行うクラスキューQ1の最低帯域保証ウエイト値Wmin(1)が「0」であるか否かをチェックする(S303)。「0」の場合には、クラスキューQ1〜Q4の最低帯域保証ウエイト値Wmin(1)〜Wmin(4)が全て「0」になっているか否かをチェックする(S310)。そして、他に最低帯域保証ウエイト値が「0」でないクラスキューが存在する場合にはステップS302に戻り、最低帯域保証ウエイト値Wmin(1)〜Wmin(4)が全て「0」の場合には処理を終了する。
【0032】
一方、ステップS303において、最低帯域保証ウエイト値Wmin(1)が「0」でない場合には、Wmin(1)を「1」だけ減らし(S304)、クラスキューQ1内にセルC1が格納されているか否かをチェックする(S305)。ここで、クラスキューQ1内にセルC1が格納されている場合には、そのセルC1をクラスキューQ1から送出し(S307)、最大帯域保証ウエイト値Wmax(1)の値を「1」だけ減らした後(S308)、ステップS302に戻る。
【0033】
ステップS305において、セルC1が格納されていないと判断した場合には、他のクラスキューQ2〜Q4のうちセルの送出が可能なクラスキューを、優先度にしたがって検索する(S306)。この検索では、まず、優先度が高いクラスキューから順にセルの有無をチェックし、セルが格納されている場合には、そのクラスキューの最大帯域保証ウエイト値Wmax が「0」であるか否かをチェックする。セルが格納され且つ最大帯域保証ウエイト値Wmax が「0」で無い場合には、セル送出が可能なクラスキューであると判断される。
【0034】
ステップS306において、セルの送出が可能なクラスキューが存在する場合には、そのクラスキューからセルを送出し(S307)、セルを送出したクラスキューの最大帯域保証ウエイト値Wmax を「1」だけ減らした後(S308)、ステップS302に戻る。
【0035】
一方、ステップS306において、セルの送出が可能なクラスキューが存在しない場合には、空セルを出力した後(S309)、ステップS302に戻る。
【0036】
ステップS302に戻ると、クラスキューQ1の場合と同様にして、クラスキューQ2〜Q4の処理を順次行う。
【0037】
以下、図3に示した優先制御の具体例について、図4〜図9の概念図を用いて説明する。
【0038】
ここでは、各クラスキューQ1〜Q4の最低帯域保証ウエイト値Wmin(i)、最大帯域保証ウエイト値Wmax(i)および優先度D(i) を、表2のように定めた場合を例に採って説明する。また、図4(A)に示したように、初期状態では、クラスキューQ1には7個のセルC1,C1,・・・が、クラスキューQ2には2個のセルC2,C2が、クラスキューQ3,Q4にはそれぞれ3個のセルC3,C3,C3、C4,C4,C4が、格納されているものとする。
【0039】
まず、ステップS301で初期値の設定等を行った後、ステップS302で、最初に処理を行うクラスキューとして、クラスキューQ1を選択する。
【0040】
次に、ステップS303で、クラスキューQ1の最低帯域保証ウエイト値Wmin(1)が「0」か否かをチェックする。ここではWmin(1)は「0」ではないので、ステップS304で、Wmin(1)に「9」を代入する。そして、ステップS305で、クラスキューQ1内にセルC1が格納されているか否かをチェックする。ここではセルC1が格納されているので、ステップS307でクラスキューQ1の1個目のセルC1を送出し、さらに、ステップS308で最大帯域保証ウエイト値Wmax(1)に「14」を代入して(図4(B)参照)、ステップS302に戻る。
【0041】
続いて、ステップS302でクラスキューQ2を選択し、ステップS303でクラスキューQ2の最低帯域保証ウエイト値Wmin(2)が「0」であると判断する。そして、ステップS310で、他の最低帯域保証ウエイト値Wmin に「0」でないものがあると判断して、ステップS302に戻る。
【0042】
ステップS302でクラスキューQ3を選択し、ステップS303で最低帯域保証ウエイト値Wmin(3)が「0」でないと判断する。そして、ステップS304で、Wmin(3)に「2」を代入した後、ステップS305で、クラスキューQ3内にセルC3が格納されていると判断する。続いて、ステップS307でクラスキューQ3の1個目のセルC3を送出し、さらに、ステップS308で最大帯域保証ウエイト値Wmax(3)に「3」を代入して(図4(C)参照)、ステップS302に戻る。
【0043】
ステップS302でクラスキューQ4を選択し、ステップS303で最低帯域保証ウエイト値Wmin(4)が「0」でないと判断する。そして、ステップS304で、Wmin(4)に「1」を代入した後、ステップS305で、クラスキューQ4内にセルC4が格納されていると判断する。続いて、ステップS307でクラスキューQ4の1個目のセルC4を送出し、さらに、ステップS308で最大帯域保証ウエイト値Wmax(4)に「2」を代入して(図5(A)参照)、ステップS302に戻る。
【0044】
ステップS302で再びクラスキューQ1が選択され、上述のクラスキューQ1の制御と同様にして、このクラスキューQ1の2個目のセルC1が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(1)に「8」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(1)に「13」が代入される(図5(B)参照)。
【0045】
ステップS302でクラスキューQ2が選択され、上述のクラスキューQ2の制御と同様にしてステップS302に戻る。
【0046】
ステップS302でクラスキューQ3が選択され、上述のクラスキューQ3の制御と同様にして、このクラスキューQ3の2個目のセルC3が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(3)に「1」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(3)に「2」が代入される(図5(C)参照)。
【0047】
ステップS302でクラスキューQ4が選択され、上述のクラスキューQ4の制御と同様にして、このクラスキューQ4の2個目のセルC4が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(4)に「0」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(4)に「1」が代入される(図6(A)参照)。
【0048】
ステップS302でクラスキューQ1が選択され、上述のクラスキューQ1の制御と同様にして、このクラスキューQ1の3個目のセルC1が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(1)に「7」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(1)に「12」が代入される(図6(B)参照)。
【0049】
ステップS302でクラスキューQ2が選択され、上述のクラスキューQ2の制御と同様にしてステップS302に戻る。
【0050】
ステップS302でクラスキューQ3が選択され、上述のクラスキューQ3の制御と同様にして、このクラスキューQ3の3個目のセルC3が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(3)に「0」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(3)に「1」が代入される(図6(C)参照)。
【0051】
続いて、ステップS302でクラスキューQ4が選択され、ステップS303で最低帯域保証ウエイト値Wmin(4)が「0」であると判断し、さらに、ステップS310で、最低帯域保証ウエイト値Wmin が「0」でないクラスキューが存在すると判断して、ステップS302に戻る。そして、ステップS302で、クラスキューQ1が選択されて、上述のクラスキューQ1の制御と同様にして、このクラスキューQ1の4個目のセルC1が送出される。この制御においては、ステップS304では最低帯域保証ウエイト値Wmin(1)に「6」が代入され、ステップS308では最大帯域保証ウエイト値Wmax(1)に「11」が代入される(図7(A)参照)。
【0052】
ステップS302でクラスキューQ2が選択され、ステップS303で最低帯域保証ウエイト値Wmin(2)が「0」であると判断され、さらに、ステップS310で、最低帯域保証ウエイト値Wmin が「0」でないクラスキューが存在すると判断されて、ステップS302に戻る。そして、ステップS302で、クラスキューQ1が選択されて、上述のクラスキューQ1の制御と同様にして、このクラスキューQ1の5個目のセルC1が送出される。この制御においては、ステップS304では最低帯域保証ウエイト値Wmin(1)に「5」が代入され、ステップS308では最大帯域保証ウエイト値Wmax(1)に「10」が代入される(図7(B)参照)。
【0053】
以下、これと同様にして、クラスキューQ2についての制御とクラスキューQ1についての制御とが、2回繰り返される。先の制御では、ステップS304で最低帯域保証ウエイト値Wmin(1)に「4」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(1)に「9」が代入される(図7(C)参照)。また、後の制御では、ステップS304で最低帯域保証ウエイト値Wmin(1)に「3」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(1)に「8」が代入される(図8(A)参照)。これにより、クラスキューQ1の7個のセルC1が全て送出されたことになる。
【0054】
続いて、クラスキューQ2,Q3,Q4についてステップS302,S303,S310の処理が繰り返された後、ステップS302でクラスキューQ1が選択される。そして、ステップS304で最低帯域保証ウエイト値Wmin(1)に「2」が代入された後、ステップS305でセルC1がないと判断される。このため。ステップS306では、セルが格納されているクラスキューの中で最も優先度が高く且つ最大帯域保証ウエイト値Wmax が「0」でないクラスキューである、クラスキューQ2が選択される。そして、ステップS307で、クラスキューQ2から、1個目のセルC2が送出される。その後、ステップS308で、最大帯域保証ウエイト値Wmax(2)に「14」が代入され、ステップS302に戻る(図8(B)参照)。
【0055】
同様に、クラスキューQ2,Q3,Q4についてステップS302,S303,S310の処理が繰り返された後、ステップS302でクラスキューQ1が選択される。そして、ステップS304で最低帯域保証ウエイト値Wmin(1)に「1」が代入された後、ステップS305でセルC1がないと判断され、ステップS306でクラスキューQ2が選択され、さらに、ステップS307でクラスキューQ2の2個目のセルC2が送出される。その後、ステップS308で最大帯域保証ウエイト値Wmax(2)に「13」が代入され、ステップS302に戻る(図8(C)参照)。
【0056】
次に、クラスキューQ2,Q3,Q4についてステップS302,S303,S310の処理が繰り返された後、ステップS302でクラスキューQ1が選択される。そして、ステップS304で最低帯域保証ウエイト値Wmin(1)に「0」が代入された後、ステップS305でセルC1がないと判断される。これに続いて、ステップS306では、セルが格納されている唯一のクラスキューである、クラスキューQ4が選択される。さらに、ステップS307で、クラスキューQ4の3個目のセルC4が送出される。その後、最大帯域保証ウエイト値Wmax(4)に「0」が代入され、ステップS302に戻る(図9参照)。
【0057】
最後に、ステップS302でクラスキューQ2が選択され、ステップS303でクラスキューQ2の最低帯域保証ウエイト値Wmin(2)が「0」であると判断され、さらに、ステップS310で他の最低帯域保証ウエイト値Wmin に「0」以外のものがないと判断されて、優先制御を終了する。
【0058】
続いて、図3に示した優先制御の他の具体例について、図10〜図15の概念図を用いて説明する。
【0059】
この例でも、各クラスキューQ1〜Q4の最低帯域保証ウエイト値Wmin(i)、最大帯域保証ウエイト値Wmax(i)および優先度D(i) を、表2のように定めた場合を例に採って説明する。また、図10(A)に示したように、初期状態では、クラスキューQ1には3個のセルC1,C1,C1が、クラスキューQ2には2個のセルC2,C2が、クラスキューQ3,Q4にはそれぞれ5個のセルC3,C3,・・・、C4,C4,・・・が格納されているものとする。
【0060】
まず、ステップS301で初期値の設定等を行った後、ステップS302で、最初に処理を行うクラスキューとして、クラスキューQ1を選択する。そして、ステップS303で、クラスキューQ1の最低帯域保証ウエイト値Wmin(1)が「0」でないと判断し、テップS304で、Wmin(1)に「9」を代入する。続いて、ステップS305で、クラスキューQ1内にセルC1が格納されていると判断し、ステップS307でクラスキューQ1の1個目のセルC1を送出し、さらに、ステップS308で最大帯域保証ウエイト値Wmax(1)に「14」を代入して(図10(B)参照)、ステップS302に戻る。
【0061】
続いて、ステップS302でクラスキューQ2を選択し、ステップS303でクラスキューQ2の最低帯域保証ウエイト値Wmin(2)が「0」であると判断する。そして、ステップS310で、他の最低帯域保証ウエイト値Wmin に「0」でないものがあると判断して、ステップS302に戻る。
【0062】
ステップS302でクラスキューQ3を選択し、ステップS303で最低帯域保証ウエイト値Wmin(3)が「0」でないと判断する。そして、ステップS304で、Wmin(3)に「2」を代入した後、ステップS305で、クラスキューQ3内にセルC3が格納されていると判断する。続いて、ステップS307でクラスキューQ3の1個目のセルC3を送出し、さらに、ステップS308で最大帯域保証ウエイト値Wmax(3)に「3」を代入して(図10(C)参照)、ステップS302に戻る。
【0063】
ステップS302でクラスキューQ4を選択し、ステップS303で最低帯域保証ウエイト値Wmin(4)が「0」でないと判断する。そして、ステップS304で、Wmin(4)に「1」を代入した後、ステップS305で、クラスキューQ4内にセルC4が格納されていると判断する。続いて、ステップS310でクラスキューQ4の1個目のセルC4を送出し、ステップS308で最大帯域保証ウエイト値Wmax(4)に「2」を代入して(図11(A)参照)、ステップS302に戻る。
【0064】
ステップS302でクラスキューQ1が選択され、上述のクラスキューQ1の制御と同様にして、このクラスキューQ1の2個目のセルC1が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(1)に「8」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(1)に「13」が代入される(図11(B)参照)。
【0065】
ステップS302でクラスキューQ2が選択され、上述のクラスキューQ2の制御と同様にしてステップS302に戻る。
【0066】
ステップS302でクラスキューQ3が選択され、上述のクラスキューQ3の制御と同様にして、このクラスキューQ3の2個目のセルC3が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(3)に「1」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(3)に「2」が代入される(図11(C)参照)。
【0067】
ステップS302でクラスキューQ4が選択され、上述のクラスキューQ4の制御と同様にして、このクラスキューQ4の2個目のセルC4が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(4)に「0」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(4)に「1」が代入される(図12(A)参照)。
【0068】
ステップS302でクラスキューQ1が選択され、上述のクラスキューQ1の制御と同様にして、このクラスキューQ1の3個目のセルC1が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(1)に「7」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(1)に「12」が代入される(図12(B)参照)。
【0069】
ステップS302でクラスキューQ2が選択され、上述のクラスキューQ2の制御と同様にしてステップS302に戻る。
【0070】
ステップS302でクラスキューQ3が選択され、上述のクラスキューQ3の制御と同様にして、このクラスキューQ3の3個目のセルC3が送出される。この制御においては、ステップS304で最低帯域保証ウエイト値Wmin(3)に「0」が代入され、ステップS308で最大帯域保証ウエイト値Wmax(3)に「1」が代入される(図12(C)参照)。
【0071】
次に、ステップS302でクラスキューQ4が選択され、ステップS303で最低帯域保証ウエイト値Wmin(4)が「0」であると判断し、さらに、ステップS310で、最低帯域保証ウエイト値Wmin が「0」でないクラスキューが存在すると判断して、ステップS302に戻る。そして、ステップS302で、クラスキューQ1が選択され、ステップS303で最低帯域保証ウエイト値Wmin(1)が「0」でないと判断し、ステップS304でWmin(1)に「6」を代入するが、その後、ステップS305で、クラスキューQ1にセルC1が格納されていないと判断される。このため、ステップS306では、セルが格納されているクラスキューの中で最も優先度が高く且つ最大帯域保証ウエイト値Wmax が「0」でないクラスキューである、クラスキューQ2が選択される。そして、ステップS307で、クラスキューQ2の1個目のセルC2が送出される。その後、ステップS308で最大帯域保証ウエイト値Wmax(2)に「14」が代入され、ステップS302に戻る(図13(A)参照)。
【0072】
続いて、クラスキューQ2,Q3,Q4についてステップS302,S303,S310の処理が繰り返された後、ステップS302でクラスキューQ1が選択される。そして、ステップS304で最低帯域保証ウエイト値Wmin(1)に「5」が代入された後、ステップS305でクラスキューQ1内にセルC1がないと判断され、ステップS306でクラスキューQ2が選択される。そして、ステップS307で、クラスキューQ2の2個目のセルC2が送出される。その後、ステップS308で最大帯域保証ウエイト値Wmax(2)に「13」が代入され、ステップS302に戻る(図13(B)参照)。
【0073】
次に、クラスキューQ2,Q3,Q4についてステップS302,S303,S310の処理が繰り返された後、ステップS302でクラスキューQ1が選択される。そして、ステップS304で最低帯域保証ウエイト値Wmin(1)に「4」が代入された後、ステップS305でクラスキューQ1内にセルC1がないと判断される。このため、ステップS306では、セルの送出が可能で且つ最大帯域保証ウエイト値Wmax が「0」でないクラスキューQ3,Q4から、優先度が高いクラスキューQ3が選択される。そして、ステップS307で、クラスキューQ3の4個目のセルC3が送出される。その後、ステップS309で最大帯域保証ウエイト値Wmax(3)に「0」が代入され、ステップS302に戻る(図13(C)参照)。
【0074】
同様に、クラスキューQ2,Q3,Q4についてステップS302,S303,S310の処理が繰り返された後、ステップS302でクラスキューQ1が選択される。そして、ステップS304で最低帯域保証ウエイト値Wmin(1)に「3」が代入された後、ステップS305で、クラスキューQ1内にセルC1がないと判断される。ここで、セルが格納されているクラスキューはQ3,Q4のみであり、且つ、クラスキューQ3の最低帯域保証ウエイト値Wmax(3)は「0」であるため、ステップS306では、クラスキューQ4が選択される。そして、ステップS307で、クラスキューQ4の3個目のセルC4が送出される。その後、ステップS308で最大帯域保証ウエイト値Wmax(4)に「0」が代入され、ステップS302に戻る(図14(A)参照)。
【0075】
続いて、クラスキューQ2,Q3,Q4についてステップS302,S303,S310の処理が繰り返された後、ステップS302でクラスキューQ1が選択される。そして、ステップS304で最低帯域保証ウエイト値Wmin(1)に「2」が代入された後、ステップS305でクラスキューQ1内にセルC1がないと判断される。ここで、クラスキューQ3,Q4にはセルが格納されているが、これらのクラスキューQ3,Q4の最大帯域保証ウエイト値Wmax(3),Wmax(4)は「0」なので、ステップS306では、セルの送出が可能なクラスキューは無いと判断される。この場合には、ステップS309で空セルが出力された後、ステップS302に戻る(図14(B)参照)。
【0076】
以下、これと同様にして、ステップS309で空セルが出力する制御が、2回繰り返される。先の制御では、ステップS304で最低帯域保証ウエイト値Wmin(1)に「1」が代入される(図14(C)参照)。また、後の制御では、ステップS304で最低帯域保証ウエイト値Wmin(1)に「0」が代入される(図15参照)。
【0077】
最後に、ステップS302でクラスキューQ2が選択され、ステップS303でクラスキューQ2の最低帯域保証ウエイト値Wmin(2)が「0」であると判断され、さらに、ステップS310で他の最低帯域保証ウエイト値Wmin に「0」以外のものがないと判断されて、優先制御を終了する。
【0078】
このように、この実施の形態では、最大帯域保証ウエイト値Wmax が「0」の場合には、クラスキューにセルが格納されていたとしても、セルを送出しない。
【0079】
このように、この実施の形態にかかるATM装置では、最大保証帯域および最低保障帯域のウエイト値Wmin ,Wmax の制限にしたがって、優先制御を行うこととした。これにより、この実施の形態によれば、セル送出が優先度の高いクラスキューに偏ることを防止しつつ、通信回線の使用効率を向上させることができる。
【0080】
【発明の効果】
以上詳細に説明したように、この発明によれば、優先度に応じて適切なセル送出速度を得ることができ、且つ、通信回線の使用効率が良いATM装置を提供することができる。
【図面の簡単な説明】
【図1】実施の形態に係るATM装置の要部構成を概略的に示すブロック図である。
【図2】 実施の形態の最低保証帯域および最大保証帯域のウエイト値を演算する手順を示す概略フローチャートである。
【図3】実施の形態にかかるATM装置の制御方法を示す概略フローチャートである。
【図4】実施の形態にかかるATM装置の一動作例を説明するための概念図である。
【図5】実施の形態にかかるATM装置の一動作例を説明するための概念図である。
【図6】実施の形態にかかるATM装置の一動作例を説明するための概念図である。
【図7】実施の形態にかかるATM装置の一動作例を説明するための概念図である。
【図8】実施の形態にかかるATM装置の一動作例を説明するための概念図である。
【図9】実施の形態にかかるATM装置の一動作例を説明するための概念図である。
【図10】実施の形態にかかるATM装置の他の動作例を説明するための概念図である。
【図11】実施の形態にかかるATM装置の他の動作例を説明するための概念図である。
【図12】実施の形態にかかるATM装置の他の動作例を説明するための概念図である。
【図13】実施の形態にかかるATM装置の他の動作例を説明するための概念図である。
【図14】実施の形態にかかるATM装置の他の動作例を説明するための概念図である。
【図15】実施の形態にかかるATM装置の他の動作例を説明するための概念図である。
【符号の説明】
110 振り分け部
120 キュー選択部
121 制御部
Q1〜Q4 クラスキュー
Claims (2)
- セルを出力する複数のキューと、これらのキューのいずれかを適宜選択してセルを送出させるキュー選択手段とを備えたATM装置において、
前記キュー選択手段が、前記キューごとに算出された最低保証帯域のウエイト値および最大保証帯域のウエイト値を用い、前記キューにそれぞれ設定された優先度にしたがって、前記キューのいずれかを適宜選択する制御部を備え、
前記最低保証帯域のウエイト値が、前記キューを最低保証帯域が設定されているものと設定されていないものとに分類し、次に、これらの最低保証帯域の総和をシェーピング速度から減算することによって得られた帯域を、前記最低保証帯域が設定されていないものの中で最も優先度が高いキューの最低保証帯域とし、続いて、全ての前記最低保証帯域についての最大公約数を算出し、さらに、この最大公約数で前記最低保証帯域をそれぞれ除算することによって得られ、
前記最大保証帯域のウエイト値が、前記最大公約数で前記最大保証帯域を除算することによって得られる、
ことを特徴とするATM装置。 - 前記制御部が、前記キューの前記最低保証帯域のウエイト値を優先度の高いものから順に読み出し、この最低保証帯域のウエイト値が「0」でない場合に、この最低保証帯域のウエイト値から「1」を減算した後で、当該キューにセルが存在するか否かを判断し、
当該キューにセルが存在する場合には、当該キューから1個のセルを送出するとともに、当該キューの前記最大保証帯域のウエイト値から「1」を減算し、
当該キューにセルが存在しない場合には、セルの送出が可能な他のキューの中で最も優先度が高いものから1個のセルを送出するとともに、セル送出を行った前記キューの前記最大保証帯域のウエイト値から「1」を減算する、
処理を繰り返すことを特徴とする請求項1に記載のATM装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33962998A JP3646772B2 (ja) | 1998-11-30 | 1998-11-30 | Atm装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33962998A JP3646772B2 (ja) | 1998-11-30 | 1998-11-30 | Atm装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000165386A JP2000165386A (ja) | 2000-06-16 |
JP3646772B2 true JP3646772B2 (ja) | 2005-05-11 |
Family
ID=18329315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33962998A Expired - Fee Related JP3646772B2 (ja) | 1998-11-30 | 1998-11-30 | Atm装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3646772B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6807588B2 (en) * | 2002-02-27 | 2004-10-19 | International Business Machines Corporation | Method and apparatus for maintaining order in a queue by combining entry weights and queue weights |
JP2008244979A (ja) * | 2007-03-28 | 2008-10-09 | Nec Corp | ロードバランス型セルスイッチ装置、優先制御方法 |
-
1998
- 1998-11-30 JP JP33962998A patent/JP3646772B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000165386A (ja) | 2000-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Serpanos et al. | FIRM: A class of distributed scheduling algorithms for high-speed ATM switches with multiple input queues | |
CN1745549B (zh) | 基于内容处理消息的系统 | |
JP3347926B2 (ja) | メモリ割り付けを改善したパケット通信システム及び方法 | |
US6795870B1 (en) | Method and system for network processor scheduler | |
EP1080416A1 (en) | System and method for scheduling message transmission and processing in a digital data network | |
JP6569374B2 (ja) | スイッチ装置及びスイッチ装置の制御方法 | |
JPH11275112A (ja) | Atmネットワークにおけるセル送出スケジューリング装置 | |
CN111181873A (zh) | 数据发送方法、装置、存储介质和电子设备 | |
JP3646772B2 (ja) | Atm装置 | |
CN110113269B (zh) | 一种基于中间件的流量控制的方法及相关装置 | |
CN1937787A (zh) | 一种多模块短消息系统的负荷分担方法 | |
US6931014B2 (en) | Method for generating and transmitting a train packet in an ATM switch system | |
US6738385B1 (en) | ATM cell buffer read control system and control method | |
US20030043813A1 (en) | Distribution of weightings between port control system and switch cards of a packet switching device | |
US7009975B2 (en) | Low delay and low loss packet switch | |
CN111444183A (zh) | 一种键值存储系统中的分布式自适应用户请求调度方法 | |
US7675910B2 (en) | Distribution of status information from several virtual output queus over a plurality of switch cards of a packet switching device | |
US7808896B2 (en) | Data path-based service deployment in hierarchical networks | |
US6430157B1 (en) | Communication controlling apparatus | |
KR100458206B1 (ko) | 비동기 전송 모드의 가중치 기반 라운드 로빈 방식 셀스케줄링 장치 및 방법 | |
AU2599792A (en) | Method and apparatus for asynchronous transfer mode (atm) network | |
KR100679091B1 (ko) | 블루투스 환경에서의 패킷 스케줄링 장치 및 그 방법 | |
JPH06338902A (ja) | 呼受付制御装置 | |
Hanczewski et al. | Modeling of Complex Non-Full-Availability Systems | |
Hwang et al. | Link capacity allocation by input power spectrum |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040611 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041005 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041125 |
|
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: 20050201 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050201 |
|
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: 20090218 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090218 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100218 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110218 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110218 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120218 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130218 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140218 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |