JPH08251233A - メモリ割り付けを改善したパケット通信システム及び方法 - Google Patents
メモリ割り付けを改善したパケット通信システム及び方法Info
- Publication number
- JPH08251233A JPH08251233A JP27989695A JP27989695A JPH08251233A JP H08251233 A JPH08251233 A JP H08251233A JP 27989695 A JP27989695 A JP 27989695A JP 27989695 A JP27989695 A JP 27989695A JP H08251233 A JPH08251233 A JP H08251233A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- memory
- queue
- incoming
- output port
- 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
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/104—Asynchronous transfer mode [ATM] switching fabrics
- H04L49/105—ATM switching elements
- H04L49/108—ATM switching elements using shared central buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5651—Priority, marking, classes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
- H04L2012/5682—Threshold; Watermark
Abstract
法の改善。 【解決手段】 パケット通信モジュール10が、入パケ
ットを入力ポ−ト12に受信し出パケットを出力ポ−ト
14から送信すようにパケットを入パケット及び出パケ
ットとして処理するためのパケット処理回路16と、処
理されたパケットを出力ポ−ト14に連関する待ち行列
22に記憶するためのメモリ20と、受け入れられたパ
ケットに対してメモリ20内のメモリ領域を割り付ける
ためにパケット処理回路16がパケットを処理するよう
にパケット処理回路16を制御する動作とメモリ20の
合計占有量に基づいて利用可能量値を計算する動作と、
制御パラメータを利用可能量値の関数として計算する動
作と待ち行列長さを計算する動作と待ち行列長さと制御
パラメータとを用いて入パケットの待ち行列22への受
け入れを制御する動作とを行うように構成したプロセッ
サ18とからなる。
Description
システムに関し、詳しくは、共用メモリを用いる非同期
転送モード(ATM)交換装置における待ち行列長さを
調整するための、動的待ち行列長さしきい値システム及
びその方法に関する。
い、そして/又は効率のよい通信を行うため、又はチャ
ネル容量を最大にするために、利用可能なメモリ又は帯
域幅のような資源の最適割り付けを必要とする。メモリ
及び帯域幅は概して資源の量が限られているが、従来の
手法は、利用可能なメモリ又は帯域幅の全てを使用する
手法である。
ないでおく手法を用いると有利である。例えば、文献
(E.L.Hahne et al., "DQDB Networks With and Withou
t Bandwidth Balancing", IEEE TRANS. ON COMMUNICATI
ONS, VOL. 40, NO.7, pp. 1192- 1204) に述べられて
いるように、分散待ち行列二重バス(DQDB)ネット
ワークプロトコルによれば、そのバスを現に使用中のノ
ード間に協調をもたらすために少量のバス幅を割り付け
ることにより、処理能力(スループット)を等化するた
めの帯域幅平衡が実現される。最大許容ノード処理能力
比は、使用されていないバス容量に比例する。
ル通信サービス網)(BISDN)の分野において、非
同期転送モードパケット交換が、共用バッファメモリを
基盤とするアーキテクチャを用いて実現される。この場
合、異なるいくつもの出力ポ−ト宛の入パケットは、こ
れらのポ−トに対応する待ち行列においてバッファ処理
され、待ち行列は共通のメモリを共用する。
大にするため、又メモリのオーバフロー問題に対処する
ために、種々の構成が開発展開されている。このような
構成の1つがPashan et al. の米国特許第5,233,6
06号に記述されている。
TM交換装置でバッファ管理手順のない場合、少数の出
力ポ−ト待ち行列がメモリの広範囲の部分を占有するの
で、他の出力ポ−ト待ち行列が効率よく機能するのに十
分なメモリ領域を得ることができない。したがって、十
分なメモリ量を得られない出力待ち行列の処理能力は減
少し、連関するパケットロス率が増加する。その結果得
られるサービスは不公平なものとなり、システム全体の
効率も低下する。
hne の文献に類似の仕方で、メモリの一部分をわざと利
用しないでおく手法を用いることにより、より公平な、
そしてより効率的なシステムを達成することができる。
ード(ATM)交換装置における待ち行列にメモリ領域
を割り付けるためのシステムを提供する。本システム
は、内蔵プログラムを有するプロセッサと、共用メモリ
と、複数の入出力ポ−トとを有するATM交換装置から
なる。プロセッサの命令を受けて、ATM交換装置は、
その入力ポ−トに複数のパケットを受信し、これらのパ
ケットを一時的にメモリに記憶し、各パケットを適切な
出力ポ−トから送信する。
記憶するように構成され、各待ち行列は、出力ポ−トの
うちの対応する出力ポ−トについて受信されたパケット
に連関する。出力ポ−ト待ち行列は全て、メモリ領域を
共通に共用する。
く利用可能量の値を計算する動作と、これら利用可能量
値の関数として制御パラメータ(制御しきい値)を計算
する動作と、出力ポ−ト待ち行列長さを計算する動作
と、出力ポ−ト待ち行列長さを制御しきい値と比較する
動作と、これらの比較に基づいて出力ポ−ト待ち行列へ
のパケットの受け入れを制御する動作とを行うように構
成される。
ときに、プロセッサが用いる個々の利用可能量値、した
がって個々の制御しきい値は、パケットのメモリ領域優
先順位(又は簡単に、優先順位)に依存する。
装置においてメッセ−ジ領域を割り付ける方法を提供す
る。本方法は、各出力ポ−トの待ち行列の長さの計数値
を維持するステップと、各パケット優先順位クラス毎に
1個の制御しきい値からなる制御しきい値セットを維持
するステップと、メモリへのパケットの受け入れを調整
するステップとからなる。
メモリ内の出力ポ−ト待ち行列に対するパケットの書き
込み又は読み出しに起因する共用メモリ占有量が変化す
る都度次の動作を行うステップからなる。すなわち、各
パケット優先順位クラス毎に1個の利用可能量値からな
る利用可能量値セットをメモリ占有量に基づき更新する
動作ステップと、各制御しきい値をこれに対応する利用
可能量値の関数として計算する動作ステップとである。
次のステップからなる。すなわち、このパケットを受信
するステップと、このパケットの優先順位クラスを定め
るステップと、このパラメータに対する出力ポ−トを定
めるステップと、対応する出力ポ−ト待ち行列の長さを
定めるステップと、パケット優先順位に基づき適切な制
御しきい値を定めるステップと、出力ポ−ト待ち行列の
長さを制御しきい値と比較するステップと、もし比較結
果が受け入れを可とするものである場合、このパケット
をその出力ポ−ト待ち行列に記憶するステップとであ
る。
することによって、維持するステップが、その出力ポ−
ト待ち行列に対する待ち行列長さ計数値の更新と、全て
の優先順位クラスについての利用可能量値及び制御しき
い値の更新とを行う。
ト処理用の、バッファ及びメモリの共用を基盤とするパ
ケット通信モジュール10を示す。ここに「パケット」
を、ルーティング(経路選択)情報をもってアドレスさ
れる複数のデータユニットと定義する。パケット処理シ
ステムに関して、パケットはいかなる長さにもでき、又
予め定められた最大値を超えない長さにもできるものと
する。
待ち行列長さしきい値(又は簡単に、動的しきい値)方
式例示システムとして、非同期転送モード(ATM)交
換装置のような多数の入力ポ−トと多数の出力ポ−トと
を有し、固定長のパケットを用いるパケット交換装置に
ついて説明する。例えば、パケット長さを正確に53バ
イトの長さとし、この53バイト長のパケットを「セ
ル」と呼ぶこととする。又、より高いプロトコル層にあ
るパケットにはより長い長さを持たせて「メッセ−ジ」
と呼ぶこととする。メッセ−ジは分割されてATM交換
用の複数のセルが生成される。
さも本発明によって処理できることを注記したい。
ATM交換装置を例示するものである。本発明は別の実
施例においては、多数入力/単一出力のパケットシステ
ム(すなわちマルチプレクサ)及び単一入力/多数出力
のパケットシステム(すなわちデマルチプレクサ)に関
連しても用いられる。マルチプレクサについては、競合
する入力ポ−トから受信されたパケット間にメモリを割
り付けるのに動的しきい値が用いられる。
換装置としてパケット通信モジュール10が、それぞれ
メモリ領域優先順位(優先順位)を有する入パケットを
受信するための1個以上の入力ポ−ト12に接続され
る。パケット通信モジュール10は又、交換されたパケ
ットを出力するための1個以上の出力ポ−ト14にも接
続される。入力ポ−ト12は入出力回路16に接続さ
れ、入出力回路16は入力ポ−ト12をプロセッサ18
及びメモリ20に結合する。
である。ATM交換装置としてのパケット通信モジュー
ル10において、入出力回路16は、位相合わせ回路、
直並列シフトレジスタ、及び並直列シフトレジスタのよ
うな機構を有する。入力ポ−トから受信された入パケッ
トのヘッダ部分のコピーが入出力回路16によってプロ
セッサ18に送られ、パケットは入出力回路16によっ
てメモリ20に送られ記憶される。
のRAMとして実施され、これらのRAM少なくとも1
個の待ち行列22を出力ポ−ト待ち行列として実現す
る。出力ポ−ト待ち行列は各々1個の特定の出力ポ−ト
に専用である。一実施例においては、図1の待ち行列2
2は、リンクされたリストの形式の論理待ち行列として
実現するのが望ましい。しかし別の実施例においては、
待ち行列22は、メモリ20における物理的待ち行列又
は何か別の構造として実現される。待ち行列長さの計数
値は、各待ち行列についてプロセッサ18によって実現
される。
モリ20における入パケットの記憶(保管)と、記憶さ
れているパケットの出力ポ−トにおける送信とを制御す
る。本実施例において、プロセッサ18は、入力ポ−ト
カウンタ26、出力ポ−トカウンタ28、待ち行列長さ
値30、制御しきい値32、及び利用可能量値を維持す
るための連関メモリ24及び制御論理を有する。
18内又は連関メモリ24内に含められる。又比較器3
8がプロセッサ18に含められ又はプロセッサ18によ
って実現される。
値に基づき各待ち行列の状態を記憶し追跡するために受
け入れテーブル(図示しない)が用いられる。
のヘッダに基づき、プロセッサ18が、受信されたパケ
ットの優先順位及び宛先出力ポ−トを判断する。入力ポ
−トカウンタ26が、受信されたパケットを読み出すべ
き入力ポ−ト及び読み出すべき時期を判断する。
の対応する出力ポ−ト待ち行列にパケットを記憶させ、
待ち行列長さカウンタ内のそのパケットに対応する待ち
行列長さ値30の計数値を増値する。プロセッサ18は
又、出力ポ−トカウンタ28の現在の計数値によって識
別特定される出力ポ−ト待ち行列に定期的にアクセスし
て、そこから待ち行列の先頭にあるパケットを引き出
し、待ち行列長さカウンタ内のそのパケットに対応する
待ち行列長さ値30の計数値を減値し、入出力回路16
をして引き出されたパケットを出力ポ−トのうちの対応
する1つの出力ポ−トから送信させる。
22が、ハードウエア又はソフトウエアいずれかの形で
実現され当技術分野で知られている手順を用いて従来の
方法でメモリ20を占有するのを許す。
ケット通信モジュールとしての共用メモリATM交換モ
ジュール10における異なる出力ポ−ト待ち行列間のメ
モリ共用が調整される。この調整は、どの時点における
どの個々の待ち行列についてもその最大許容長さを、共
用のメモリ20内の利用可能なバッファ領域の関数とす
ることによって行われる。
が、ここに説明する推薦実施例においては、線形関数を
使用する。例えば、最大許容待ち行列長さは、利用可能
なメモリに対して予め定められた比例定数で得られる比
例部分又は分数である。
ば、全ての出力待ち行列に対してバッファ領域へのアク
セスを保証することにより、システムの公平度及び効率
が改善される。ここに述べたように、異なる優先順位ク
ラスのパケットを取り扱うように本発明に基づく動的し
きい値システムを適応させることにより、より高い優先
順位のパケットの、損失に関する性能を改善することが
できる。
ないバッファ処理に待ち行列長さを瞬時に比例させる手
法は、上に述べた分散待ち行列二重バス(DQDB)ネ
ットワークにおける帯域幅平衡手法に類似である。本発
明の動的しきい値方式においてはメモリ20内の少量の
バッファ領域を利用せず、残っているバッファ領域を活
動中の出力待ち行列間に平等に共用させようとする。
きい値方式によれば、全ての出力待ち行列に対してバッ
ファ領域へのアクセスを保証することにより、システム
の公平度及び効率が改善されるが、これに加えて、本発
明の動的しきい値方式で生じるパケット損失は、いくつ
かの待ち行列に集中発生する傾向がある。これはATM
システムにおける望ましい特長といえる。理由は、この
ことにより、より高いプロトコル層においてメッセ−ジ
で損失を受けるものが少ししかなく、したがってメッセ
−ジの再送信も少なくなるためである。
ァに入る前にパケットが脱落するので、比較的実現しや
すい。又、動的しきい値は、不確実な又は変動する負荷
状況に適応するので、静的しきい値よりも動作性能がよ
い。
値]本説明においてはATM交換装置についての動的し
きい値システムを、複数の領域(損失)優先順位がない
ものとして述べる。ATM交換装置が過負荷になった場
合、活動中の出力待ち行列間に公平にメモリを分割する
ことが望ましい。しきい値を保証するに十分なトラヒッ
クがある待ち行列は全て、同じ量の領域(制御しきい値
と呼ぶ)を得るべきである。制御しきい値は、共用メモ
リ内の使用されていないバッファ領域の全量をモニタす
ることによって定められる。
待ち行列長さを使用されていないバッファ領域の或る関
数fに限定しようとする。そして、これよりも需要が少
ない出力待ち行列は、その必要とする領域を全て取るこ
とができる。時点tにおいてT(t)を制御しきい値と
し、Qi(t) を待ち行列iの長さとする。Q(t)を
待ち行列長さ全部の和、すなわち共用メモリの合計占有
量とする。すると、もしBを共用メモリの合計バッファ
容量とすると、次式が成立する。 T(t)= f(B−Q(t)) (1)
い値を、使用されていないバッファ領域の倍数(又は代
わりに分数)とすることである。 T(t)= α・(B−Q(t)) (2) これは、図1に示すように、プロセッサ18の連関メモ
リ24内の制御しきい値レジスタに制御しきい値32と
して記憶される。ここに、αは比例乗算定数である。こ
こで用いられるように「倍数」には分数をも含むものと
する。その場合にはα<1となる。
非線形関数が式(1)によって実現されることが考えら
れている。
Qi(t)≧T(t) の場合、時点tにおいて阻止され
る。この待ち行列に行くパケットは全て、待ち行列長さ
が制御しきい値よりも低下するまで阻止される。
ムは、過渡的応答に入る。例えば、軽負荷の出力待ち行
列が、急に活動的となった場合、合計バッファ占有量が
上昇し、制御しきい値が下降し、制御しきい値を超える
待ち行列は、到着パケットを一時的に阻止状態にする。
その間に、阻止されたパケットが脱落して、より多くの
パケットバッファが自由になり、待ち行列が新たに活動
状態となる。もしM個の待ち行列があり、すべてが非常
に活動的であるとすると、これら待ち行列の「定常状
態」の待ち行列長さは、次式で表される。 Qi(t)= T(t)= α・B/(1+α・M) (3)
なる。 α・M・B/(1+α・M) (4)
ていないメモリの量は、(B − α・B/(1+α))
= B/(1+α) となる。
は、メモリ内の少量の領域を現在活動中の出力待ち行列
のどれにも割り付けずに意図的に予備に取っておく。こ
の予備バッファ領域はいくつもの役割を果たすことがで
きる。例えば、予備バッファ領域は、出力待ち行列がま
ず活動に入りバッファ領域を必要とするような過途的期
間中、緩衝材の機能を果たす。これによって、このよう
な過途期間中のパケット損失が減少する。
ファ領域のいくぶんかを使い始めると、この作用が、バ
ッファ割り付け機構に、負荷状況が変化し、しきい値の
調整が必要である旨の信号を送る。もしこのような内蔵
の予備バッファがなかったと仮定した場合、いつ負荷状
況が変化するかを判断するために個々の出力待ち行列の
パケット到着レート及び/又は損失レートをモニタしな
ければならないことになる。
に基づくので、しきい値の計算は非常に容易である。
値]別の実施例においては、動的待ち行列長さしきい値
(動的しきい値)が、多数の領域(損失)優先順位を有
するシステムに適用される。領域優先順位クラスには0
からpまでの数字が呼び符号として割り当てられる。こ
の場合、小さい方の数字をより重要な(優先順位のより
高い)クラスに割り当てるように取り決めることとす
る。例えば、クラスが2つある場合、クラス0のパケッ
トは損失に鋭敏なクラスに属し、クラス1のパケット
は、より高いパケット損失レートを許容できる。
方法においては、もし次式が成立する場合に、待ち行列
iに優先順位pのパケットが受け入れられる。 Qi(t)< T(t)= α・(B−Q(t)) (5) ここで領域優先順位を組み込むには4種類の方法があ
る。
ズBを変化させる。その結果、式(5)が次式となる。 Qi(t)< Tp(t)= α・(Bp−Q(t)) 2.優先順位に基づいてファクタαを変化させる。その
結果、式(5)が次式となる。 Qi(t)< Tp(t)= αp・(B−Q(t))
i と比較する代わりに待ち行列i内の優先順位pのパケ
ットの数Qi p(t)と比較する。その結果、式(5)が
次式となる。 Qi p(t)< T(t)= α・(B−Q(t))
する。
位pパケットの数Qp(t) に置換する。この場合、式
(5)は次式となる。 Qi(t)< Tp(t)= α・(B−Qp(t)) (8)
置換する。
は、組み合わせることによってよりよく作用する。そし
て、多くのこのような組合せが可能である。
て、各優先順位クラスpに、合計バッファ占有量Q
(t)と比較されるパラメータBp が対応している。こ
こに、 0 < Bp < Bp-1 <...< B2 < B1 < B0 = B (11) 優先順位クラスpのパケットに利用可能な有効バッファ
領域Ap は、次式で表される。 Ap =
Bp − Q(t)
いか又はこれを超える場合には、すなわち Ap ≦ 0
の場合には、優先順位pのパケットは1個もバッファに
受け入れられない。もし合計バッファ占有量Q(t)が
Bp よりも小さい場合、優先順位pのパケットは、この
パケットが入ろうとする待ち行列iの長さに依っては受
け入れられ又は阻止される。具体的には、もし次式が成
立する場合に、優先順位pのパケットは待ち行列iに受
け入れられる。 Qi(t)< Tp(t)= α・Ap = α・(Bp − Q(t)) (12)
て次の通り説明する。第1のシナリオでは、単一の過負
荷待ち行列が成長する一方、合計バッファ占有量Q
(t)は比較的安定している。Qi(t)がα・(Bp
− Q(t))を超えると優先順位pのパケットはもは
や待ち行列iに受け入れられない。もしQi(t) がα
・(Bp-1 − Q(t)) へ成長を続けると、優先順位
p−1のパケットも待ち行列iへの受け入れを拒絶され
る。
− Q(t))に到達すると、どの優先順位のパケット
も待ち行列iへ受け入れられず、この状態は、待ち行列
の長さ値が再びこのしきい値よりも下がるまで続く。
長さQ(t)が成長中であるが、どれか1個の待ち行列
が極端に過負荷になっているからではない、と仮定す
る。Q(t)がBp に近づくと、まず長さの長い方の待
ち行列において優先順位pのトラヒックが阻止される。
Q(t)がBp に到達する時点までに、全ての待ち行列
について優先順位pのトラヒックが阻止されている。理
由は、個々の待ち行列長さしきい値α・(Bp−Q
(t)) がその時点で0になるからである。
が満足されると、これら最初に優先順位pの到着パケッ
トを失った非常に長い待ち行列iにおいて、優先順位p
−1のパケットの阻止が始まる。 Qi(t)≧ α・(Bp-1 − Q(t)) もしQ(t)がBp を超えてBp-1 に近づく場合には、
結局全ての待ち行列において優先順位p−1のトラヒッ
クが阻止される。
えると、対応する優先順位クラスのトラヒックが阻止さ
れる。最後に、もしB1 ≦ Q(t)≦ B0 = B の場
合、優先順位0のパケットだけがそのバッファに受け入
れられる。バッファがほぼ完全に満量(フル)状態にな
ると、動的しきい値システム及び方法においては、優先
順位0のパケットでさえも極端に長い待ち行列から阻止
される。
しきい値制御を受けるに十分な優先順位0のトラヒック
需要がある場合、待ち行列長さは上記の式(3)で与え
られる平等値に移る傾向にある。
スp=0、1、2、...、pは、制御しきい値T
p(t) を有し、領域優先順位pのパケットが待ち行列
iに入ることを望む場合に、待ち行列長さQiがこの制
御しきい値Tp(t)と比較される。これらの待ち行列
制御しきい値は、全ての待ち行列について同じである。
したがって、プロセッサ18に連関するメモリ24に記
憶して維持すべき待ち行列制御しきい値32の数は、p
+1個しかない。
に、最高の優先順位クラス0に対する待ち行列制御しき
い値設定値T0 は、量A0 = (B0 − Q(t))=
(B− Q(t)) の関数である。これは単に自由領域
であり、自由リストの長さである。ここでいう自由リス
トとは、すなわち共用メモリ内の占有されていないパケ
ットバッファのリストを意味する。
い値設定値Tp は、優先順位クラスpのパケットに対し
て利用可能な自由領域であるAp = (Bp − Q
(t))の関数である。この量Ap を計算するにはいく
つかの方法がある。
て1個のカウンタを用いる。このカウンタは、Bp に初
期化され、パケットの出発(離脱)及び到着それぞれに
ついてその都度、計数値の増減を行う。(ii)次式の
ように自由リストの長さから定数を差し引く。 (Bp − Q(t))= (B − Q(t))− (B − Bp)
テム及び方法においては、ファクタαの選択を2の整数
べき数(...、1/8、1/4、1/2、1、2、
4、8、...)に制約する。ここに、整数べき数の整
数は正、負、又は0である。すなわち、0の場合には、
αは20 に等しく、これは1に等しい。なお、他のファ
クタαを用いることも可能である。αを2のべき数と
し、α≠1とした場合、上記の式(12)によって与え
られるしきい値Tp(t) は、図1に示すようなシフタ
36を用いてAp を左又は右にシフトすることによって
得られる。
に行われる3種類の主ステップからなる。すなわち、各
出力ポ−ト待ち行列の長さの計数値を維持するステップ
と、各パケット優先順位クラスに1個づつの制御しきい
値からなる制御しきい値セットを維持するステップと、
メモリへのパケットの受け入れを調整するステップとで
ある。出力ポ−ト待ち行列の長さの計数値は、その出力
ポ−ト待ち行列に対するパケットの書き込み又は読み出
しが行われる都度更新される。
流れ図に示す。このプロセスは、共用メモリ内の出力ポ
−ト待ち行列に対するパケットの書き込み又は読み出し
に起因する共用メモリの占有量が変化する都度ステップ
40から開始される。ステップ42において、共用メモ
リの現在の合計占有量Q(t)に基づいて、各パケット
優先順位毎に利用可能量値Ap = Bp − Q(t)が更
新される。
ト優先順位毎に制御しきい値 Tp(t)が計算される。
ここに、制御しきい値は、現在の利用可能量値A
p(t) に乗数又は分数係数αを乗じて次式により得ら
れる。 Tp(t)= α・Ap プロセスはステップ46において、合計バッファ占有量
が再び変化するまで待つ。変化が生じた時点でプロセス
はステップ48において、変化を判断し、ステップ42
に戻って利用可能量値の更新を継続する。
3に流れ図で示す。ステップ50においてプロセスが開
始され、ステップ52において、到着パケットが入力ポ
−トで受信される。それから、ステップ54において、
パケットの優先順位pが定められ、ステップ56におい
て、パケットが入る出力ポ−ト待ち行列iが定められ
る。
れぞれ、出力ポ−ト待ち行列iについての長さ計数値Q
i 及び優先順位pについての制御しきい値Tp(t) が
メモリから引き出され、ステップ62において、これら
2つの量が比較される。もし比較結果が受け入れにとっ
て好ましくない、すなわち待ち行列長さ計数値が制御し
きい値に等しいか又はこれを超える場合、ステップ66
において、受信されたパケットが共用メモリに受け入れ
られない。
好ましい、すなわち待ち行列長さ計数値が制御しきい値
よりも小さい場合、ステップ68において、受信された
パケットが受け入れられ、適切な出力ポ−ト待ち行列に
記憶される。ステップ70において、出力ポ−ト待ち行
列へのパケット挿入によって上記の維持ステップが稼動
し、その出力ポ−ト待ち行列についての長さ計数値が更
新され、全ての優先順位クラスについて利用可能量値及
び制御しきい値が更新される。ステップ72において、
プロセスはステップ52に戻り、次のパケット受信に備
える。
動的しきい値システム及び方法を固定長のATMパケッ
トに関連して説明した。別の実施例においては、本発明
に基づく動的しきい値システム及び方法が、ATM基準
長さの53バイト以外の固定長パケットを用いるシステ
ム及び可変長パケットを用いるシステムを含む、どのよ
うなバッファ通信に関連しても用いられる。
動的しきい値システム及び方法を単段交換装置に関連し
て説明した。別の実施例においては、本発明に基づく動
的しきい値システム及び方法が、単段交換装置を他の単
段交換装置及び/又はマルチプレクサ及びデマルチプレ
クサに接続して形成される多段交換装置に関連しても用
いられる。
単段交換装置、マルチプレクサ、又はデマルチプレクサ
のそれぞれにおいて本発明の動的しきい値システム及び
方法を用いてそれ自体の共用メモリの管理を行うことも
できる。マルチプレクサについては、動的しきい値シス
テムを用いて、競合する入力ポ−トから受信されたパケ
ット間にメモリを割り付けが行われる。
動的しきい値システム及び方法を出力ポ−ト待ち行列に
関連して説明した。更に別の実施例においては、本発明
に基づく動的しきい値システム及び方法が、スケジュー
リングクラス(例えば、遅れ優先順位クラス)を有する
交換装置においても用いられる。
−ト宛であるが交換となるスケジューリングクラスにあ
るパケットは別個の待ち行列に入れられる。交換装置内
の全ての出力ポ−トについての全てのスケジューリング
クラスの待ち行列間に領域を割り付けるのに、動的シス
テムが用いられる。
動的しきい値システム及び方法をしきい値を超える待ち
行列への全てのパケット受け入れを阻止することで説明
した。なお別の実施例においては、本発明に基づく動的
しきい値システム及び方法が、レート制御のような別の
制御に関連しても用いられる。その上、もし信号送信制
御体系が含まれる場合には、トラヒック・ソースと輻湊
する交換装置との間のルートに沿ったどの地点において
もこのような制御を実施することができる。
もので、この技術分野の当業者であれば、本発明の種々
の変形例を考え得るが、それらはいずれも本発明の技術
的範囲に包含される。
TM交換装置のようなメモリ共用のパケット通信システ
ムにおいて、メモリ内の待ち行列長さと待ち行列長さの
しきい値とを動的に対比して到着パケットの受け入れ可
否を判断するようにし、常に予備メモリ領域を設けるよ
うにしたので、全ての待ち行列にバッファ領域へのアク
セスが保証され、特定の単一待ち行列だけがメモリを独
占する事態が防止される。したがって、共用メモリ利用
における公平性及び効率が改善される。
を用いたパケット通信モジュールの構成要素を例示する
ブロック図である。
のうちの制御パラメータ(制御しきい値)を計算する部
分の流れ図である。
のうちのパケット受け入れを調整する部分の流れ図であ
る。
モジュール) 12 入力ポ−ト 14 出力ポ−ト 16 入出力回路 18 プロセッサ 20 メモリ 22 待ち行列 24 連関メモリ 26 入力ポ−トカウンタ 28 出力ポ−トカウンタ 30 待ち行列長さ値 32 制御しきい値 34 利用可能量値 36 シフタ 38 比較器
Claims (22)
- 【請求項1】 パケット通信システムであって、 パケットを入パケット及び出パケットとして処理するた
めと、入パケットを入力ポ−トに受信するためと、出パ
ケットを出力ポ−トから送信するためとのパケット処理
回路であって、該パケットが少なくとも1個の領域優先
順位クラスと少なくとも1個のスケジューリングクラス
とに属するパケット処理回路と、 前記処理されたパケットを待ち行列に記憶するためのメ
モリと、 制御論理回路を用いるプロセッサであって、前記パケッ
ト処理回路がパケットを処理するように前記パケット処
理回路を制御する動作と、前記待ち行列間にメモリ領域
を割り付ける動作とを行うように構成されるプロセッサ
であって、該割り付けが、前記メモリの占有量に基づい
て利用可能量値を計算することと、制御パラメータを該
利用可能量値の関数として計算することと、前記待ち行
列の長さを計算することと、該待ち行列長さと該制御パ
ラメータとに基づいて各入パケットのその待ち行列への
受け入れを制御することとによって行われるプロセッサ
と、からなることを特徴とする、パケット通信システ
ム。 - 【請求項2】 前記パケットが非同期転送モードのセル
であることを特徴とする請求項1のシステム。 - 【請求項3】 前記入パケットの待ち行列が、前記入パ
ケットと同じ出力ポ−ト宛であるパケットで且つ前記入
力パケットと同じ領域優先順位クラスに属するパケッ
ト、を含むことを特徴とする請求項1のシステム。 - 【請求項4】 前記入パケットの待ち行列が、前記入パ
ケットと同じ出力ポ−ト宛であるパケットで且つ前記入
力パケットと同じ領域優先順位クラスと前記入パケット
よりも高い領域優先順位クラスとのうちの1つに属する
パケット、を含むことを特徴とする請求項1のシステ
ム。 - 【請求項5】 前記入パケットの待ち行列が、前記入パ
ケットと同じ出力ポ−ト宛であるパケットで且つ前記入
力パケットと同じスケジューリングクラスに属するパケ
ット、を含むことを特徴とする請求項1のシステム。す
ることを特徴とする請求項1のシステム。 - 【請求項6】 前記入パケットの待ち行列が、前記入パ
ケットと同じ入力ポ−トを経て到着したパケットを含む
ことを特徴とする請求項1のシステム。 - 【請求項7】 前記プロセッサが、前記待ち行列長さが
前記制御パラメータ以上かどうかを判断する比較器を有
することを特徴とする請求項1のシステム。 - 【請求項8】 前記プロセッサが、前記制御パラメータ
が前記利用可能量値と前記利用可能量値の倍数と前記利
用可能量値の分数とのうちの少なくとも1つであるよう
に前記制御パラメータを計算することを特徴とする請求
項1のシステム。 - 【請求項9】 前記用いられる個々の倍数及び分数が前
記入パケットの領域優先順位に依存することを特徴とす
る請求項8のシステム。 - 【請求項10】 前記プロセッサが、前記利用可能量値
を、有効バッファ容量の測定値とメモリ占有量の測定値
との差として計算することを特徴とする請求項1のシス
テム。 - 【請求項11】 前記メモリ占有量の測定値が、前記入
パケットと同じ領域優先順位クラスに属する前記メモリ
内のパケットの数であることを特徴とする請求項10の
システム。 - 【請求項12】 前記メモリ占有量の測定値が、前記入
パケットと同じ領域優先順位クラスと、前記入パケット
よりも高い領域優先順位クラスとのうちの少なくとも1
つに属する前記メモリ内のパケットの数であることを特
徴とする請求項10のシステム。 - 【請求項13】 パケット通信システムにおいて待ち行
列間にメモリ領域を割り付ける方法であって、該待ち行
列が、少なくとも1個の領域優先順位クラスと少なくと
も1個のスケジューリングクラスとに属するパケットを
含むような、メモリ領域を割り付ける方法において、 前記待ち行列の長さの計数値を維持するステップと、 前記メモリの占有量に連関する利用可能量値と、該利用
可能量値の関数である制御パラメータとを維持するステ
ップと、 前記待ち行列長さと前記制御パラメータとに基づいて入
パケットをその待ち行列に受け入れるステップと該入パ
ケットを拒絶するステップとのうちの少なくとも1つの
ステップからなる、該入パケットを処理するステップ
と、からなることを特徴とする、パケット通信システム
において待ち行列間にメモリ領域を割り付ける方法。 - 【請求項14】 前記処理するステップが、前記入パケ
ットとして、非同期転送モードセルを処理するステップ
からなることを特徴とする請求項13の方法。 - 【請求項15】 前記処理するステップがパケットを待
ち行列に受け入れ又は待ち行列から除去する都度すぐに
該待ち行列長さの計数値を更新するステップからなるこ
とを特徴とする請求項13の方法。 - 【請求項16】 前記制御パラメータを、前記利用可
能量値と前記利用可能量値の倍数と前記利用可能量値の
分数とのうちの少なくとも1つに等しく設定するステッ
プからなることを特徴とする請求項13の方法。 - 【請求項17】 前記制御パラメータを前記入パケット
の領域優先順位クラスと連関させるステップからなるこ
とを特徴とする請求項13の方法。 - 【請求項18】 前記入パケットを受け入れるステップ
及び拒絶するステップが、 前記入パケットを受信するステップと、 前記入パケットの領域優先順位クラスを定めるステップ
と、 前記入パケットのスケジューリングクラスを定めるステ
ップと、 前記入パケットが入る待ち行列を定めるステップと、 該待ち行列の長さを定めるステップと、 前記制御パラメータを定めるステップと、 前記入パケットをその待ち行列に受け入れるかどうかの
受け入れ可否決定を行うステップと、 もし受け入れ可否決定が可の場合、前記入パケットを前
記メモリ内のその待ち行列に記憶するステップと、から
なることを特徴とする請求項13の方法。 - 【請求項19】 パケット通信モジュールであって、 入パケットを入力ポ−トに受信するため及び出パケット
を出力ポ−トから送信するためにパケットを入パケット
及び出パケットとして処理するためのパケット処理回路
と、 前記出力ポ−トに連関する出力ポ−ト待ち行列に前記処
理されたパケットを記憶するためのメモリと、 制御論理回路を用いるプロセッサであって、受け入れら
れたパケットに対して前記メモリ内のメモリ領域を割り
付けるために、前記パケット処理回路がパケットを処理
するように前記パケット処理回路を制御する動作と、前
記メモリの合計占有量に基づいて利用可能量値を計算す
る動作と、制御パラメータを該利用可能量値の関数とし
て計算する動作と、出力ポ−ト待ち行列長さを計算する
動作と、該出力ポ−ト待ち行列長さと該制御パラメータ
とを用いて入パケットの前記出力ポ−ト待ち行列への受
け入れを制御する動作とを行うように構成されるプロセ
ッサと、からなることを特徴とする、パケット通信モジ
ュール。 - 【請求項20】 ATMパケットを切り替えるためのA
TM交換装置においてメモリ領域を割り付けるためのシ
ステムであって、 入ATMパケットを複数の入力ポ−トに受信するため及
び出ATMパケットを複数の出力ポ−トから送信するた
めにATMパケットを入ATMパケット及び出ATMパ
ケットとして処理するための該ATMパケット交換装置
と、 出力ポ−ト待ち行列に前記処理されたATMパケットを
記憶するためのメモリと、 連関するメモリを有し且つ内蔵プログラムを用いるプロ
セッサであって、受け入れられたATMパケットに対し
て前記メモリ内のメモリ領域を割り付けるために、前記
ATMパケット交換装置がATMパケットを処理するよ
うに前記ATMパケット交換装置を制御する動作と、前
記メモリの合計占有量に基づいて利用可能量値を計算す
る動作と、制御パラメータを該利用可能量値の関数とし
て計算する動作と、出力ポ−ト待ち行列長さを計算する
動作と、該出力ポ−ト待ち行列長さと該制御パラメータ
とに基づいてATMパケットの前記出力ポ−ト待ち行列
への受け入れを制御する動作とを行うように構成される
プロセッサと、からなることを特徴とする、ATM交換
装置においてメモリ領域を割り付けるためのシステム。 - 【請求項21】 ATM交換装置の共用メモリにおいて
メモリ領域を割り付けるための方法であって、 パケットを受信するステップと、 前記共用メモリの占有量値の関数を定めるステップと、 前記占有量値の関数に基づいて前記共用メモリ内に前記
パケットを記憶するステップと、からなることを特徴と
する、ATM交換装置の共用メモリにおいてメモリ領域
を割り付けるための方法。 - 【請求項22】 ATM交換装置モジュールの共用メモ
リにおいて複数の出力待ち行列間にメモリ領域を割り付
けるための方法であって、 前記共用メモリの占有量値から第1の計数値を定めるス
テップと、 入力ポ−トからATMパケットを受信するステップと、 前記受信されたパケットの領域優先順位設定値を定める
ステップと、 前記領域優先順位設定値に対応する第1の待ち行列の待
ち行列長さを定めるステップと、 前記第1の待ち行列長さが前記第1の計数値の予め定め
られた倍数よりも小さい場合にそれに応動して、前記共
用メモリに前記ATMパケットを記憶するステップと、
からなることを特徴とする、ATM交換装置モジュール
の共用メモリにおいて複数の出力待ち行列間にメモリ領
域を割り付けるための方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/318,007 US5541912A (en) | 1994-10-04 | 1994-10-04 | Dynamic queue length thresholds in a shared memory ATM switch |
US318007 | 1994-10-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08251233A true JPH08251233A (ja) | 1996-09-27 |
JP3347926B2 JP3347926B2 (ja) | 2002-11-20 |
Family
ID=23236227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP27989695A Expired - Lifetime JP3347926B2 (ja) | 1994-10-04 | 1995-10-04 | メモリ割り付けを改善したパケット通信システム及び方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US5541912A (ja) |
EP (1) | EP0706298A3 (ja) |
JP (1) | JP3347926B2 (ja) |
KR (1) | KR100326789B1 (ja) |
CA (1) | CA2156654C (ja) |
MX (1) | MX9504163A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011009876A (ja) * | 2009-06-23 | 2011-01-13 | Nippon Telegr & Teleph Corp <Ntt> | バッファ回路及びバッファ回路制御方法 |
Families Citing this family (142)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7321553B2 (en) * | 2003-07-22 | 2008-01-22 | Intel Corporation | Methods and apparatus for asserting flow control at input ports of a shared-memory switch |
AUPM699394A0 (en) * | 1994-07-25 | 1994-08-18 | Curtin University Of Technology | Link level controlled access to available asynchronous network service |
DK0705006T3 (da) * | 1994-09-28 | 2000-03-13 | Siemens Ag | ATM kommunikationssystem til statistisk multipleksering af celler |
US5737547A (en) * | 1995-06-07 | 1998-04-07 | Microunity Systems Engineering, Inc. | System for placing entries of an outstanding processor request into a free pool after the request is accepted by a corresponding peripheral device |
US5812799A (en) * | 1995-06-07 | 1998-09-22 | Microunity Systems Engineering, Inc. | Non-blocking load buffer and a multiple-priority memory system for real-time multiprocessing |
US5737314A (en) * | 1995-06-16 | 1998-04-07 | Hitachi, Ltd. | ATM exchange, ATM multiplexer and network trunk apparatus |
JP3434642B2 (ja) * | 1995-07-07 | 2003-08-11 | 株式会社東芝 | パケットスケジューリング装置 |
US5982771A (en) | 1995-07-19 | 1999-11-09 | Fujitsu Network Communications, Inc. | Controlling bandwidth allocation using a pace counter |
WO1997003549A2 (en) * | 1995-07-19 | 1997-02-06 | Fujitsu Network Communications, Inc. | Prioritized access to shared buffers |
EP0845181A4 (en) * | 1995-07-19 | 2001-07-18 | Fujitsu Network Communications | SCHEDULE OF LINKS |
AU6501796A (en) * | 1995-07-19 | 1997-02-18 | Ascom Nexion Inc. | Network switch utilizing centralized and partitioned memory for connection topology information storage |
US6643765B1 (en) | 1995-08-16 | 2003-11-04 | Microunity Systems Engineering, Inc. | Programmable processor with group floating point operations |
US5898671A (en) | 1995-09-14 | 1999-04-27 | Fujitsu Network Communications, Inc. | Transmitter controlled flow control for buffer allocation in wide area ATM networks |
US5751951A (en) * | 1995-10-30 | 1998-05-12 | Mitsubishi Electric Information Technology Center America, Inc. | Network interface |
US5757771A (en) * | 1995-11-14 | 1998-05-26 | Yurie Systems, Inc. | Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch |
WO1997026737A1 (en) | 1996-01-16 | 1997-07-24 | Fujitsu Limited | A reliable and flexible multicast mechanism for atm networks |
JP3156752B2 (ja) * | 1996-02-09 | 2001-04-16 | 日本電気株式会社 | Atmスイッチ装置及びその制御方法 |
US5906658A (en) * | 1996-03-19 | 1999-05-25 | Emc Corporation | Message queuing on a data storage system utilizing message queuing in intended recipient's queue |
US6219728B1 (en) * | 1996-04-22 | 2001-04-17 | Nortel Networks Limited | Method and apparatus for allocating shared memory resources among a plurality of queues each having a threshold value therefor |
US6222822B1 (en) * | 1996-04-23 | 2001-04-24 | Cisco Systems, Incorporated | Method for optimizing a digital transmission network operation through transient error monitoring and control and system for implementing said method |
US5864539A (en) * | 1996-05-06 | 1999-01-26 | Bay Networks, Inc. | Method and apparatus for a rate-based congestion control in a shared memory switch |
US6034945A (en) * | 1996-05-15 | 2000-03-07 | Cisco Technology, Inc. | Method and apparatus for per traffic flow buffer management |
US6128278A (en) * | 1996-08-30 | 2000-10-03 | Mmc Networks, Inc. | Cell queuing in ATM switches |
US5748905A (en) | 1996-08-30 | 1998-05-05 | Fujitsu Network Communications, Inc. | Frame classification using classification keys |
US5901147A (en) * | 1996-08-30 | 1999-05-04 | Mmc Networks, Inc. | Apparatus and methods to change thresholds to control congestion in ATM switches |
US6263411B1 (en) * | 1996-09-20 | 2001-07-17 | Matsushita Electric Industrial Co., Ltd. | Video server scheduling for simultaneous read-write requests |
US5909547A (en) * | 1996-10-24 | 1999-06-01 | Lucent Technologies Inc. | Method for shared memory management in network nodes |
US6341301B1 (en) | 1997-01-10 | 2002-01-22 | Lsi Logic Corporation | Exclusive multiple queue handling using a common processing algorithm |
US5966547A (en) * | 1997-01-10 | 1999-10-12 | Lsi Logic Corporation | System for fast posting to shared queues in multi-processor environments utilizing interrupt state checking |
US5922057A (en) * | 1997-01-10 | 1999-07-13 | Lsi Logic Corporation | Method for multiprocessor system of controlling a dynamically expandable shared queue in which ownership of a queue entry by a processor is indicated by a semaphore |
CA2278317A1 (en) * | 1997-01-14 | 1998-07-16 | Bell Communications Research, Inc. | Method and system for dynamic allocation of bandwidth in asynchronous transfer mode (atm) switching systems |
GB2322761B (en) * | 1997-01-17 | 1999-02-10 | Donal Casey | Method for selecting virtual channels based on address p;riority in an asynchronous transfer mode device |
GB2323744B (en) * | 1997-01-17 | 1999-03-24 | Connell Anne O | Method of supporting unknown addresses in an interface for data transmission in an asynchronous transfer mode |
GB2321820B (en) * | 1997-01-17 | 1999-04-14 | Tadhg Creedon | Method and apparatus for buffer management in virtual circuit systems |
GB2321821B (en) | 1997-01-17 | 1999-03-24 | Neill Eugene O | Method for distributing and recovering buffer memories in an asynchronous transfer mode edge device |
US6092115A (en) * | 1997-02-07 | 2000-07-18 | Lucent Technologies Inc. | Method for supporting per-connection queuing for feedback-controlled traffic |
US5872997A (en) * | 1997-02-14 | 1999-02-16 | Exabyte Corporation | System for dynamically determining motion and reconnect thresholds of a storage media based on the effective transfer rate |
US6014367A (en) * | 1997-04-25 | 2000-01-11 | Mmc Networks, Inc | Method for weighted fair queuing for ATM cell scheduling |
US6041059A (en) * | 1997-04-25 | 2000-03-21 | Mmc Networks, Inc. | Time-wheel ATM cell scheduling |
KR100216368B1 (ko) * | 1997-06-11 | 1999-08-16 | 윤종용 | Atm 스위치에서 셀 손실율 개선을 위한 역방향압력 신호를 이용한 입력 버퍼 제어기 장치 및 논리버퍼 크기 결정알고리즘 |
KR100247022B1 (ko) * | 1997-06-11 | 2000-04-01 | 윤종용 | Atm 스위칭 시스템의 단일 스위치 소자 및 버퍼 문턱값 결정 방법 |
US6487202B1 (en) | 1997-06-30 | 2002-11-26 | Cisco Technology, Inc. | Method and apparatus for maximizing memory throughput |
US6430191B1 (en) | 1997-06-30 | 2002-08-06 | Cisco Technology, Inc. | Multi-stage queuing discipline |
US6198724B1 (en) | 1997-10-02 | 2001-03-06 | Vertex Networks, Inc. | ATM cell scheduling method and apparatus |
FI104603B (fi) | 1997-11-04 | 2000-02-29 | Nokia Networks Oy | Puskurinhallinta |
US7145868B2 (en) * | 1997-11-28 | 2006-12-05 | Alcatel Canada Inc. | Congestion management in a multi-port shared memory switch |
US6526060B1 (en) | 1997-12-05 | 2003-02-25 | Cisco Technology, Inc. | Dynamic rate-based, weighted fair scheduler with explicit rate feedback option |
US6256677B1 (en) * | 1997-12-16 | 2001-07-03 | Silicon Graphics, Inc. | Message buffering for a computer-based network |
US6330584B1 (en) | 1998-04-03 | 2001-12-11 | Mmc Networks, Inc. | Systems and methods for multi-tasking, resource sharing and execution of computer instructions |
US6307860B1 (en) | 1998-04-03 | 2001-10-23 | Mmc Networks, Inc. | Systems and methods for data transformation and transfer in networks |
US7055151B1 (en) | 1998-04-03 | 2006-05-30 | Applied Micro Circuits Corporation | Systems and methods for multi-tasking, resource sharing and execution of computer instructions |
US6085254A (en) * | 1998-04-10 | 2000-07-04 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic size alteration of memory files |
US7346063B1 (en) * | 1998-07-08 | 2008-03-18 | Broadcom Corporation | Memory management unit for a network switch |
CA2338218A1 (en) * | 1998-07-22 | 2000-02-03 | General Datacomm, Inc. | Dynamic buffer management scheme for atm switches |
US6430153B1 (en) * | 1998-09-04 | 2002-08-06 | Cisco Technology, Inc. | Trunk delay simulator |
US6594264B1 (en) * | 1998-11-24 | 2003-07-15 | Industrial Technology Research Institute | Versatile scheduler for ATM switches |
US6229813B1 (en) * | 1998-11-25 | 2001-05-08 | Alcatel Canada Inc. | Pointer system for queue size control in a multi-task processing application |
KR100295753B1 (ko) * | 1998-12-23 | 2001-08-07 | 윤종용 | 무선호출교환시스템의패킷데이터전송방법 |
US7120117B1 (en) * | 2000-08-29 | 2006-10-10 | Broadcom Corporation | Starvation free flow control in a shared memory switching device |
US6539024B1 (en) * | 1999-03-26 | 2003-03-25 | Alcatel Canada Inc. | Method and apparatus for data buffer management in a communications switch |
US6724721B1 (en) * | 1999-05-07 | 2004-04-20 | Cisco Technology, Inc. | Approximated per-flow rate limiting |
US6657955B1 (en) * | 1999-05-27 | 2003-12-02 | Alcatel Canada Inc. | Buffering system employing per traffic flow accounting congestion control |
US6757679B1 (en) * | 1999-06-25 | 2004-06-29 | International Business Machines Corporation | System for building electronic queue(s) utilizing self organizing units in parallel to permit concurrent queue add and remove operations |
US6721796B1 (en) * | 1999-07-22 | 2004-04-13 | Cisco Technology, Inc. | Hierarchical dynamic buffer management system and method |
US6614756B1 (en) * | 1999-08-20 | 2003-09-02 | 3Com Corporation | Method of detecting and recovering from signaling congestion in an asynchronous transfer mode network |
US6747951B1 (en) * | 1999-09-20 | 2004-06-08 | Nortel Networks Limited | Method and apparatus for providing efficient management of resources in a multi-protocol over ATM (MPOA) |
US6678813B1 (en) * | 1999-10-28 | 2004-01-13 | Hewlett-Packard Development Company, L.P. | Dynamically adaptive buffer mechanism |
US6788697B1 (en) * | 1999-12-06 | 2004-09-07 | Nortel Networks Limited | Buffer management scheme employing dynamic thresholds |
US6690951B1 (en) | 1999-12-20 | 2004-02-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Dynamic size allocation system and method |
US6775292B1 (en) | 2000-01-24 | 2004-08-10 | Cisco Technology, Inc. | Method for servicing of multiple queues carrying voice over virtual circuits based on history |
KR100641093B1 (ko) * | 2000-02-01 | 2006-11-02 | 엘지전자 주식회사 | 패킷 스케줄링 장치 및 방법 |
US6700894B1 (en) * | 2000-03-15 | 2004-03-02 | Broadcom Corporation | Method and apparatus for shared buffer packet switching |
US7142558B1 (en) | 2000-04-17 | 2006-11-28 | Cisco Technology, Inc. | Dynamic queuing control for variable throughput communication channels |
US6694388B1 (en) * | 2000-05-31 | 2004-02-17 | 3Com Corporation | Dynamic queuing system incorporating multiple queues sharing a single memory |
US20020018474A1 (en) * | 2000-06-01 | 2002-02-14 | Seabridge Ltd. | Efficient packet transmission over ATM |
US7302704B1 (en) | 2000-06-16 | 2007-11-27 | Bbn Technologies Corp | Excising compromised routers from an ad-hoc network |
US6792484B1 (en) * | 2000-07-28 | 2004-09-14 | Marconi Communications, Inc. | Method and apparatus for storing data using a plurality of queues |
US6625709B2 (en) * | 2000-10-30 | 2003-09-23 | Microsoft Corporation | Fair share dynamic resource allocation scheme with a safety buffer |
US6947996B2 (en) * | 2001-01-29 | 2005-09-20 | Seabridge, Ltd. | Method and system for traffic control |
US6990115B2 (en) * | 2001-02-26 | 2006-01-24 | Seabridge Ltd. | Queue control method and system |
US6950396B2 (en) * | 2001-03-20 | 2005-09-27 | Seabridge Ltd. | Traffic control method and system |
US7139280B2 (en) * | 2001-07-30 | 2006-11-21 | Yishay Mansour | Buffer management policy for shared memory switches |
US7457297B2 (en) * | 2001-11-16 | 2008-11-25 | Enterasys Networks, Inc. | Methods and apparatus for differentiated services over a packet-based network |
US7269198B1 (en) | 2001-11-19 | 2007-09-11 | Bbn Technologies Corp. | Systems and methods for beaconing in wireless networks with low probability of detection |
US7421257B1 (en) | 2001-11-30 | 2008-09-02 | Stragent, Llc | Receiver scheduling in ad hoc wireless networks |
US7385970B1 (en) * | 2001-12-07 | 2008-06-10 | Redback Networks, Inc. | Method and apparatus for balancing bandwidth among multiple ports of a network element |
KR100429897B1 (ko) * | 2001-12-13 | 2004-05-03 | 한국전자통신연구원 | 공유 버퍼형 스위치의 적응 버퍼 배분 방법 및 이에사용되는 스위치 |
US7257125B1 (en) | 2002-01-22 | 2007-08-14 | Marvell International Ltd. | Quality of service half-duplex media access controller |
US7035273B1 (en) | 2002-02-06 | 2006-04-25 | Marvell International Ltd. | Quality of service queueing system for a network switch |
US7209440B1 (en) | 2002-05-07 | 2007-04-24 | Marvell International Ltd. | Method and apparatus for preventing blocking in a quality of service switch |
US7286547B2 (en) * | 2002-05-09 | 2007-10-23 | Broadcom Corporation | Dynamic adjust multicast drop threshold to provide fair handling between multicast and unicast frames |
US7110415B1 (en) | 2002-05-17 | 2006-09-19 | Marvell International Ltd. | Apparatus and method for dynamically limiting output queue size in a quality of service network |
US7436769B2 (en) * | 2002-05-23 | 2008-10-14 | Lucent Technologies Inc. | Method of throttling data flow through a router |
US20030223442A1 (en) * | 2002-05-29 | 2003-12-04 | Huang Anguo T. | Buffer memory reservation |
DE10225913B4 (de) * | 2002-06-11 | 2005-08-11 | Siemens Ag | Verfahren zur Überlastabwehr |
US20040076166A1 (en) * | 2002-10-21 | 2004-04-22 | Patenaude Jean-Marc Guy | Multi-service packet network interface |
KR20040046351A (ko) * | 2002-11-27 | 2004-06-05 | (주)텔리언 | 복합 트래픽 처리기능을 갖는 패킷 포워딩 장치 |
US7983239B1 (en) | 2003-01-07 | 2011-07-19 | Raytheon Bbn Technologies Corp. | Systems and methods for constructing a virtual model of a multi-hop, multi-access network |
US7561590B1 (en) | 2003-05-05 | 2009-07-14 | Marvell International Ltd. | Network switch having virtual input queues for flow control |
US20040246902A1 (en) * | 2003-06-02 | 2004-12-09 | Weinstein Joseph J. | Systems and methods for synchronizing multple copies of a database using datablase digest |
US7881229B2 (en) | 2003-08-08 | 2011-02-01 | Raytheon Bbn Technologies Corp. | Systems and methods for forming an adjacency graph for exchanging network routing data |
US7606927B2 (en) * | 2003-08-27 | 2009-10-20 | Bbn Technologies Corp | Systems and methods for forwarding data units in a communications network |
US8166204B2 (en) * | 2003-08-29 | 2012-04-24 | Raytheon Bbn Technologies Corp. | Systems and methods for automatically placing nodes in an ad hoc network |
US7624063B1 (en) * | 2003-09-30 | 2009-11-24 | Trading Technologies International, Inc. | System and method for improved distribution of market information |
US20050083958A1 (en) * | 2003-10-17 | 2005-04-21 | Adc Telecommunications Israel Ltd. | Managing a queue in a shared memory |
US20050091467A1 (en) * | 2003-10-22 | 2005-04-28 | Robotham Robert E. | Method and apparatus for accessing data segments having arbitrary alignment with the memory structure in which they are stored |
US7668083B1 (en) | 2003-10-28 | 2010-02-23 | Bbn Technologies Corp. | Systems and methods for forwarding data in a communications network |
US7369512B1 (en) | 2003-11-06 | 2008-05-06 | Bbn Technologies Corp. | Systems and methods for efficient packet distribution in an ad hoc network |
US7532623B2 (en) * | 2004-03-24 | 2009-05-12 | Bbn Technologies Corp. | Methods for wireless mesh multicasting |
US7778168B1 (en) * | 2004-08-02 | 2010-08-17 | Lsi Corporation | Queuing system with mechanism to limit blocking of high-priority packets |
US7948880B2 (en) * | 2004-10-29 | 2011-05-24 | Broadcom Corporation | Adaptive dynamic thresholding mechanism for link level flow control scheme |
US7593329B2 (en) * | 2004-10-29 | 2009-09-22 | Broadcom Corporation | Service aware flow control |
US7522622B2 (en) * | 2005-02-18 | 2009-04-21 | Broadcom Corporation | Dynamic color threshold in a queue |
US7630306B2 (en) * | 2005-02-18 | 2009-12-08 | Broadcom Corporation | Dynamic sharing of a transaction queue |
US8909807B2 (en) * | 2005-04-07 | 2014-12-09 | Opanga Networks, Inc. | System and method for progressive download using surplus network capacity |
US7577133B1 (en) * | 2005-09-09 | 2009-08-18 | Juniper Networks, Inc. | Scalable central memory switching fabric |
US7593330B1 (en) | 2006-01-30 | 2009-09-22 | Juniper Networks, Inc. | Processing of partial frames and partial superframes |
US20070294498A1 (en) * | 2006-06-14 | 2007-12-20 | International Business Machines Corporation | Storage Allocation Management in Switches Utilizing a Flow Control |
US8681807B1 (en) | 2007-05-09 | 2014-03-25 | Marvell Israel (M.I.S.L) Ltd. | Method and apparatus for switch port memory allocation |
US8015327B1 (en) * | 2007-09-17 | 2011-09-06 | Emc Corporation | Techniques for monitoring and managing wait queues |
US9389921B2 (en) * | 2008-01-14 | 2016-07-12 | Hewlett Packard Enterprise Development Lp | System and method for flexible device driver resource allocation |
WO2010073979A1 (ja) * | 2008-12-25 | 2010-07-01 | 日本電気株式会社 | 通信品質監視装置、通信システム、通信品質監視方法及びそのプログラム |
US8139504B2 (en) * | 2009-04-07 | 2012-03-20 | Raytheon Bbn Technologies Corp. | System, device, and method for unifying differently-routed networks using virtual topology representations |
TW201115458A (en) * | 2009-10-29 | 2011-05-01 | Ralink Technology Corp | Buffer space allocation method and related packet switch |
US20110282980A1 (en) * | 2010-05-11 | 2011-11-17 | Udaya Kumar | Dynamic protection of a resource during sudden surges in traffic |
JP5498889B2 (ja) * | 2010-08-06 | 2014-05-21 | アラクサラネットワークス株式会社 | パケット中継装置および輻輳制御方法 |
US20130132962A1 (en) * | 2011-11-22 | 2013-05-23 | Microsoft Corporation | Scheduler combinators |
US8825927B2 (en) * | 2012-09-04 | 2014-09-02 | Advanced Micro Devices, Inc. | Systems and methods for managing queues |
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 |
JP6417097B2 (ja) * | 2014-03-05 | 2018-10-31 | 日本放送協会 | パケット伝送装置 |
US10305819B2 (en) | 2015-05-13 | 2019-05-28 | Cisco Technology, Inc. | Dynamic protection of shared memory used by output queues in a network device |
US9866401B2 (en) | 2015-05-13 | 2018-01-09 | Cisco Technology, Inc. | Dynamic protection of shared memory and packet descriptors used by output queues in a network device |
KR101726375B1 (ko) * | 2015-11-04 | 2017-04-12 | 한전케이디엔주식회사 | 데이터 이중화 장치 |
US11010193B2 (en) * | 2017-04-17 | 2021-05-18 | Microsoft Technology Licensing, Llc | Efficient queue management for cluster scheduling |
US10476803B2 (en) | 2017-12-18 | 2019-11-12 | Mellanox Technologies, Ltd. | Elephant flow detection in network access |
US10462060B2 (en) | 2018-02-14 | 2019-10-29 | Mellanox Technologies, Ltd. | Ability to detect unlimited elephant flows |
CN111447154B (zh) * | 2019-01-17 | 2023-06-23 | 瑞昱半导体股份有限公司 | 设置在交换器内的电路以及管理交换器中的存储器的方法 |
CN109947572B (zh) * | 2019-03-25 | 2023-09-05 | Oppo广东移动通信有限公司 | 通信控制方法、装置、电子设备及存储介质 |
US10986026B2 (en) | 2019-06-11 | 2021-04-20 | Cisco Technology, Inc. | Proportional integral based shaper for lossless output buffer |
US20230353510A1 (en) * | 2020-01-31 | 2023-11-02 | Cyberstorm Pte. Ltd. | Method of reducing latency in communication of data packets |
US11558316B2 (en) | 2021-02-15 | 2023-01-17 | Mellanox Technologies, Ltd. | Zero-copy buffering of traffic of long-haul links |
US11973696B2 (en) | 2022-01-31 | 2024-04-30 | Mellanox Technologies, Ltd. | Allocation of shared reserve memory to queues in a network device |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5193090A (en) * | 1988-07-15 | 1993-03-09 | Janusz Filipiak | Access protection and priority control in distributed queueing |
US5072443A (en) * | 1989-07-28 | 1991-12-10 | At&T Bell Laboratories | Communications system |
US5163046A (en) * | 1989-11-30 | 1992-11-10 | At&T Bell Laboratories | Dynamic window sizing in a data network |
US5014265A (en) * | 1989-11-30 | 1991-05-07 | At&T Bell Laboratories | Method and apparatus for congestion control in a data network |
US5272697A (en) * | 1990-02-23 | 1993-12-21 | At&T Bell Laboratories | Apparatus and method for time multiplexing a resource among a plurality of entities |
US5136584A (en) * | 1990-07-11 | 1992-08-04 | At&T Bell Laboratories | Hardware interface to a high-speed multiplexed link |
US5115430A (en) * | 1990-09-24 | 1992-05-19 | At&T Bell Laboratories | Fair access of multi-priority traffic to distributed-queue dual-bus networks |
EP0487235B1 (en) * | 1990-11-21 | 1999-02-03 | AT&T Corp. | Bandwidth and congestion management in accessing broadband ISDN networks |
US5128937A (en) * | 1991-04-17 | 1992-07-07 | Bell Communications Research, Inc. | Adaptive bandwidth balancing for distributed queue dual bus networks |
US5278969A (en) * | 1991-08-02 | 1994-01-11 | At&T Bell Laboratories | Queue-length monitoring arrangement for detecting consistency between duplicate memories |
US5233606A (en) * | 1991-08-02 | 1993-08-03 | At&T Bell Laboratories | Arrangement for controlling shared-buffer-memory overflow in a multi-priority environment |
US5285441A (en) * | 1992-03-17 | 1994-02-08 | At&T Bell Laboratories | Errorless line protection switching in asynchronous transer mode (ATM) communications systems |
US5278828A (en) * | 1992-06-04 | 1994-01-11 | Bell Communications Research, Inc. | Method and system for managing queued cells |
US5289303A (en) * | 1992-09-30 | 1994-02-22 | At&T Bell Laboratories | Chuted, optical packet distribution network |
-
1994
- 1994-10-04 US US08/318,007 patent/US5541912A/en not_active Expired - Lifetime
-
1995
- 1995-08-22 CA CA002156654A patent/CA2156654C/en not_active Expired - Fee Related
- 1995-09-27 EP EP95306817A patent/EP0706298A3/en not_active Withdrawn
- 1995-09-29 KR KR1019950032878A patent/KR100326789B1/ko not_active IP Right Cessation
- 1995-09-29 MX MX9504163A patent/MX9504163A/es unknown
- 1995-10-04 JP JP27989695A patent/JP3347926B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011009876A (ja) * | 2009-06-23 | 2011-01-13 | Nippon Telegr & Teleph Corp <Ntt> | バッファ回路及びバッファ回路制御方法 |
Also Published As
Publication number | Publication date |
---|---|
EP0706298A3 (en) | 1998-08-12 |
MX9504163A (es) | 1997-01-31 |
EP0706298A2 (en) | 1996-04-10 |
CA2156654A1 (en) | 1996-04-05 |
CA2156654C (en) | 2001-08-07 |
US5541912A (en) | 1996-07-30 |
JP3347926B2 (ja) | 2002-11-20 |
KR960016290A (ko) | 1996-05-22 |
KR100326789B1 (ko) | 2002-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3347926B2 (ja) | メモリ割り付けを改善したパケット通信システム及び方法 | |
JP3525656B2 (ja) | パケット交換機、および輻輳通知方式 | |
US6580721B1 (en) | Routing and rate control in a universal transfer mode network | |
US6535484B1 (en) | Method and apparatus for per traffic flow buffer management | |
US5757771A (en) | Queue management to serve variable and constant bit rate traffic at multiple quality of service levels in a ATM switch | |
US7061910B2 (en) | Universal transfer method and network with distributed switch | |
US5917804A (en) | Connection admission control for ATM networks handling CBR and VBR services | |
US6430191B1 (en) | Multi-stage queuing discipline | |
US6219728B1 (en) | Method and apparatus for allocating shared memory resources among a plurality of queues each having a threshold value therefor | |
US6526060B1 (en) | Dynamic rate-based, weighted fair scheduler with explicit rate feedback option | |
JP4845310B2 (ja) | 接続型ネットワークの共用出力バッファを仕切るための双モード制御システム及び方法 | |
US5949757A (en) | Packet flow monitor and control system | |
US5862126A (en) | Connection admission control for ATM networks | |
US6404768B1 (en) | Method and apparatus for serving ATM packets/cells | |
JP3567828B2 (ja) | Atmスイッチ及び動的しきい値設定方法 | |
JPH0744542B2 (ja) | 非同期転送モードにおける仮想パスの帯域割当方式 | |
EP0897232A2 (en) | Traffic management in packet communication networks having service priorities and employing effective bandwidths | |
KR100429897B1 (ko) | 공유 버퍼형 스위치의 적응 버퍼 배분 방법 및 이에사용되는 스위치 | |
EP0838970B1 (en) | Method for shared memory management in network nodes | |
EP0481447A2 (en) | Method of controlling communication network incorporating virtual channels exchange nodes and virtual paths exchange nodes | |
JP2002247081A (ja) | バッファ管理方法およびatm交換機 | |
JP2580556B2 (ja) | 帯域運用方法および呼受付け制御方法 | |
Sabaa et al. | Implementation of a window-based scheduler in an ATM switch | |
Oki et al. | Scalable-distributed-arbitration ATM switch supporting multiple QoS classes | |
Engbersen | High-Speed Switching |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080906 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080906 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090906 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090906 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100906 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100906 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110906 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120906 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130906 Year of fee payment: 11 |
|
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 |
|
EXPY | Cancellation because of completion of term |