JP3175735B2 - Switch routing method and shooting blanks switch using the same - Google Patents

Switch routing method and shooting blanks switch using the same

Info

Publication number
JP3175735B2
JP3175735B2 JP24491199A JP24491199A JP3175735B2 JP 3175735 B2 JP3175735 B2 JP 3175735B2 JP 24491199 A JP24491199 A JP 24491199A JP 24491199 A JP24491199 A JP 24491199A JP 3175735 B2 JP3175735 B2 JP 3175735B2
Authority
JP
Japan
Prior art keywords
cell
input
ports
queue
dummy
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
JP24491199A
Other languages
Japanese (ja)
Other versions
JP2000295247A (en
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 JP2000295247A publication Critical patent/JP2000295247A/en
Application granted granted Critical
Publication of JP3175735B2 publication Critical patent/JP3175735B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、複数のサービスを
要求する複数のキューを有するキューイングシステムの
スケジューリング方法に係り、特に入力キュースイッチ
における高いスループットを達成するためのシューティ
ングブランクス(shooting blanks)方法に関する。
The present invention relates to a scheduling method for a queuing system having a plurality of queues requesting a plurality of services, and more particularly to a shooting blanks method for achieving a high throughput in an input queue switch. About.

【0002】[0002]

【従来の技術】いくつかのアプリケーションは、複数の
サービスを要求する複数のキューの割当てを必要とす
る。本発明は、そのようなキューイングシステムにおけ
るスケジューリング技術の改良に関する。
BACKGROUND OF THE INVENTION Some applications require the assignment of multiple queues requesting multiple services. The invention relates to an improvement in the scheduling technique in such a queuing system.

【0003】[グラフ理論の用語]本発明の理解を容易
にするために、ここでいくつかのグラフ理論用語を定義
する。
[Graph Theory Terms] In order to facilitate understanding of the present invention, some graph theory terms are defined here.

【0004】2部グラフとは、図1に例示するように、
複数の頂点を1.1〜1.4と1.5〜1.8という2
つの集合に分割することができて、辺1.9がこれらの
2つの集合の間にのみ位置するような無向グラフをい
う。サービスの集合を要求するキューの集合は、このよ
うな2部グラフによって表現することができる。辺は、
第1の頂点と第2の頂点の間のキューを表す。2頂点間
の辺の存在は、対応するキューが第2の頂点によって表
されるサービスを要求することを示す。
A bipartite graph is, as exemplified in FIG.
A plurality of vertices are 1.1 to 1.4 and 1.5 to 1.8
An undirected graph that can be divided into two sets, such that edge 1.9 is located only between these two sets. A set of queues requesting a set of services can be represented by such a bipartite graph. The sides are
Represents a cue between a first vertex and a second vertex. The presence of an edge between two vertices indicates that the corresponding queue requires the service represented by the second vertex.

【0005】2部マッチングとは、どの頂点も複数の辺
の端点にならないような辺の部分集合である。マッチン
グを求めることは、キューと、要求されるサービスとの
間の置換(あるいは並び替え)の1つを選択することに
対応する。
[0005] Bipartite matching is a subset of sides such that no vertex is an end point of a plurality of sides. Seeking a match corresponds to selecting one of the permutations (or permutations) between the queue and the requested service.

【0006】・最大(サイズ)マッチングとは、可能な
最大数の辺からなるマッチングである。n及びmを、そ
れぞれ、現在の状態を表す基礎となるグラフの頂点及び
辺の数とすると、N個のサービスを要求するN2個のキ
ューを表すN×Nシステムの場合、n=2Nであり、m
≦N2である。
[0006] Maximum (size) matching is a matching consisting of the maximum possible number of sides. Let n and m be the number of vertices and edges, respectively, of the underlying graph representing the current state. For an N × N system representing N 2 queues requesting N services, n = 2N Yes, m
A ≦ N 2.

【0007】・最大重みマッチングとは、グラフ内の辺
に関連づけられた重みも考慮に入れたマッチングをい
う。本発明では、重みは、対応するキューのサイズに等
しくする。
[0007] Maximum weight matching refers to matching that also takes into account weights associated with edges in a graph. In the present invention, the weight is equal to the size of the corresponding queue.

【0008】[システムモデル]背景的知識及び本発明
をよりよく理解するため、次に、システムモデルについ
て説明する。当業者には明らかなように、システムモデ
ルは、ここで説明する事項の理解を簡単にするためにの
み用いられるものであって、本発明の技術的範囲を制限
するように解釈してはならない。
[System Model] In order to better understand background knowledge and the present invention, a system model will be described below. As will be apparent to those skilled in the art, the system model is used only to facilitate understanding of the matter described herein and should not be construed as limiting the technical scope of the present invention. .

【0009】ここでは、N個の入力ポート及びN個の出
力ポートを有するクロスバスイッチを含む交換ファブリ
ックを使用するが、本発明は、M個の入力ポート及びN
個の出力ポートを有するスイッチにも適用可能である。
このクロスバスイッチは、1つの時間ステップ(以下、
1ステップという。)で、固定サイズのパケットの任意
の置換(並び替え)をルーティングすることができる。
1ステップで、入力ポートを出ること、または、出力に
到達することが可能なセルは1個だけである。従って、
多数個のセルは、入力で待合せ(キューイング)される
ことがある。入力ポートごとに1個のキューを使用する
と、HOL(head-of-line)ブロッキング効果を引き起こ
し、スループットをひどく制限する可能性がある。この
ようなブロッキング効果について詳細な情報は、Mark
J. Karol, Michael G. Hluchyj, and Samuel P. Morga
n, "Input versus output queuing on a space-divisio
n packet switch", IEEE Transactions on Communicati
ons, COM-35(12):1347-1356,December 1987、に記載さ
れている。
Although the present invention uses a switching fabric including a crossbar switch having N input ports and N output ports, the present invention employs M input ports and N output ports.
The present invention is also applicable to a switch having three output ports.
This crossbar switch has one time step
One step. ), Any permutation (reordering) of fixed size packets can be routed.
Only one cell can leave the input port or reach the output in one step. Therefore,
Many cells may be queued at the input. Using one queue per input port can cause a head-of-line (HOL) blocking effect and severely limit throughput. For more information about these blocking effects, see Mark
J. Karol, Michael G. Hluchyj, and Samuel P. Morga
n, "Input versus output queuing on a space-divisio
n packet switch ", IEEE Transactions on Communicati
ons, COM-35 (12): 1347-1356, December 1987.

【0010】さまざまな研究グループが、入力ポートご
とにN個のキュー(N個の出力ポートのそれぞれに対し
て1個ずつのキュー)を使用することを提唱している。
例えば、 ・Thomas E. Anderson, Susan S. Owicki, James B. Sa
xe, and Charles P. Thacker, "High-speed switch sch
eduling for local-area networks", ACM Transactions
on Computer Systems, 11(4):319-352, November 1993 ・M. Karol, K. Eng, and H. Obara, "Improving the p
erformance of input-queued ATM packet-switching",
In Proceedings IEEE INFOCOM’92, p.110-115, 1992 ・Nicholas William McKeown, "Scheduling Algorithms
for Input-Queued Cell Switches", PhD thesis, Univ
ersity of California at Berkeley, 1995 を参照のこと。
[0010] Various research groups have suggested using N queues per input port (one queue for each of the N output ports).
For example: Thomas E. Anderson, Susan S. Owicki, James B. Sa
xe, and Charles P. Thacker, "High-speed switch sch
eduling for local-area networks ", ACM Transactions
on Computer Systems, 11 (4): 319-352, November 1993 ・ M. Karol, K. Eng, and H. Obara, "Improving the p
erformance of input-queued ATM packet-switching ",
In Proceedings IEEE INFOCOM'92, p.110-115, 1992 ・ Nicholas William McKeown, "Scheduling Algorithms
for Input-Queued Cell Switches ", PhD thesis, Univ
See ersity of California at Berkeley, 1995.

【0011】これらに記載されている技術(仮想出力キ
ューイング(VOQ:virtual output queuing)とい
う。)は、背景的知識として、本発明の好ましい実施例
を説明するために用いられるモデルである。直観的に
は、VOQによれば、スイッチは、置換を選択する際に
優れたフレキシビリティを有する。図2は、N=4のV
OQスイッチの一例を示す模式的構成図である。
[0011] The techniques described therein (called virtual output queuing (VOQ)) are models used as background knowledge to explain the preferred embodiment of the present invention. Intuitively, according to VOQ, the switch has excellent flexibility in selecting a replacement. FIG. 2 shows V = N = 4.
FIG. 3 is a schematic configuration diagram illustrating an example of an OQ switch.

【0012】入力ポートiから出力ポートjに行く必要
があるパケットの到着レートをαijで表す。レート50
%とは、平均として、1ステップおきに1個のパケット
が、入力ポートiから出力ポートjに送られることを意
味する。パケットが入力ポートiに到着するレートをR
iとする。これはΣjαijに等しい。パケットが出力ポー
トjに到着するレートをSjとする。これはΣiαijに等
しい。なお、この総和において、iはすべての入力ポー
トを表し、jはすべての出力ポートを表す。正式な用語
ではないが、際限なく成長する入力ポートがない場合に
スイッチは安定であるという。すべてのi、jについ
て、Ri,Sj<100%のとき、トラフィックは許容
れるという。
The arrival rate of packets that need to go from input port i to output port j is represented by α ij . Rate 50
% Means that, on average, one packet is sent from input port i to output port j every other step. The rate at which packets arrive at input port i is R
i . This is equal to Σ j α ij . Let S j be the rate at which packets arrive at output port j. This is equal to Σ i α ij . In this sum, i represents all input ports, and j represents all output ports. Although not a formal term, a switch is stable when there are no endlessly growing input ports. When R i , S j <100% for all i, j, traffic is said to be allowed .

【0013】[ルータスイッチとスケジューリング]こ
のようなキューイングシステムの重要な例は、インター
ネットのようなアプリケーションで用いられるルータス
イッチである。本発明は、2部グラフを用いて表現可能
なキューイングシステムの重要な例としてスイッチを使
用する。ただし、本発明は、スイッチに限定されるもの
ではなく、2部グラフを用いて表現可能な任意のキュー
イングシステムに適用可能であることに注意すべきであ
る。
Router Switch and Scheduling An important example of such a queuing system is a router switch used in applications such as the Internet. The present invention uses switches as an important example of a queuing system that can be represented using a bipartite graph. However, it should be noted that the present invention is not limited to a switch, but is applicable to any queuing system that can be expressed using a bipartite graph.

【0014】インターネットの発展は、ルータ及びスイ
ッチの需要をますます増大させ続けている。毎秒数十な
いし数百ギガビットの広帯域を処理可能で、それととも
に多数の入出力ポートを有するスイッチ設計法が現在は
利用可能である。ネットワークシステムにおいて、セル
(あるいはパケット)は、いくつかの入力ポートを通じ
てスイッチに到着する。これらのセルは、スイッチによ
って使用されるスケジューリング方法に基づいて、1つ
またはいくつかの出力ポートを通じてルーティングされ
る。なお、本明細書では、パケットとセルという用語は
交換可能であり、本発明は、いかなる種類のセルあるい
はパケットにも制限されるものではない。
The development of the Internet continues to increase the demand for routers and switches. Switch designs are currently available that can handle tens to hundreds of gigabits per second of broadband and have a large number of input / output ports. In a network system, cells (or packets) arrive at a switch through several input ports. These cells are routed through one or several output ports based on the scheduling method used by the switch. In this specification, the terms packet and cell are interchangeable, and the invention is not limited to any type of cell or packet.

【0015】広帯域スイッチの設計者は、交換ファブリ
ックを通じてセルをスケジューリングする有効な技術を
提供するという問題に直面している。現在、理論的な観
点から、知られている最良のアプローチは、従来の最大
重み2部マッチング(MWBM:Maximum Weight Bipar
tite Matching)を利用するものである。入出力ポート
が100%容量で動作する必要がない限り、かなり一般
的な確率的仮定のもとで、MWBMは安定であること
が、Tassiulas and Ephremidesと、McKeown, Ananthara
m, and Walrandとによって独立に示された。(入力ポー
トまたは出力ポートに関連する)いずれのキューも無制
限に成長しないとき、スケジューリング方法は安定であ
るという。MWBMに関するその他の情報については、 ・Leandros Tassiulas and Anthony Ephremides, "Stab
ility properties ofconstrained queuing systems and
scheduling policies for maximum throughput in mul
tihop radio networks", IEEE Transactions on Automa
tic Control,37(12):1936-1948, December 1992 ・Nick McKeown, Venkat Anantharam, and Jean Walran
d, "Achieving 100% throughput in an input-queued s
witch", In Proceedings IEEE INFOCOM’96, p.296-30
2, San Francisco, CA, March 1996 に記載されている。入出力ポートの負荷がフルでない場
合のトラフィックパターンは許容されるとみなされる。
[0015] Broadband switch designers face the problem of providing an efficient technique for scheduling cells through the switching fabric. Currently, from a theoretical point of view, the best approach known is the conventional Maximum Weight Bipartite Matching (MWBM).
Tite Matching). Unless input / output ports need to operate at 100% capacity, MWBM is stable under fairly general probabilistic assumptions, see Tassiulas and Ephremides and McKeown, Ananthara
m, and independently by Walrand. When none of the queues (associated with the input or output ports) grow indefinitely, the scheduling method is said to be stable. For more information about MWBM, see: Leandros Tassiulas and Anthony Ephremides, "Stab
ility properties of constrained queuing systems and
scheduling policies for maximum throughput in mul
tihop radio networks ", IEEE Transactions on Automa
tic Control, 37 (12): 1936-1948, December 1992 ・ Nick McKeown, Venkat Anantharam, and Jean Walran
d, "Achieving 100% throughput in an input-queued s
witch ", In Proceedings IEEE INFOCOM'96, p.296-30
2, San Francisco, CA, March 1996. A traffic pattern when the load on the input / output port is not full is considered to be acceptable .

【0016】しかしながら、MWBMの既知の最良の方
法の実行時間は、O(N2logN+Nm)及びO(N
1/2mlogNC)である。ただし、Nはスイッチ内の
入力ポートの数であり、m≦N2は空でないキューの数で
あり、Cは最大キューサイズである。MWBM法の実行
時間に関する詳細な情報については、 ・M. L. Fiedman and R. E. Tarjan, "Fibonacci heaps
and their uses in improved network optimization a
lgorithms", Journal of the ACM, 34:596-615, 1987 ・H. N. Gabow and R. E. Tarjan, "Faster scaling al
gorithms for networkproblems", SIAM Journal on Com
puting, 18:1013-1036, 1989 に記載されている。さらに、これらの方法は本質的にシ
ーケンシャルである。置換ごとに伴う実行時間のため
に、MWBMの完全な実現は非実際的である。MWBM
の完全な実現は、セル時間あたり1つの置換計算を必要
とする広帯域スイッチでは可能性はあまりないと考えら
れている。置換はマッチングと等価である。
However, the execution time of the best known method of MWBM is O (N 2 log N + Nm) and O (N
1/2 mlg NC). Here, N is the number of input ports in the switch, m ≦ N 2 is the number of non-empty queues, and C is the maximum queue size. See ML Fiedman and RE Tarjan, "Fibonacci heaps for more information on the execution time of the MWBM method.
and their uses in improved network optimization a
lgorithms ", Journal of the ACM, 34: 596-615, 1987 ・ HN Gabow and RE Tarjan," Faster scaling al
gorithms for networkproblems ", SIAM Journal on Com
puting, 18: 1013-1036, 1989. Furthermore, these methods are sequential in nature. Due to the execution time associated with each replacement, a full implementation of the MWBM is impractical. MWBM
Is not likely to be possible in a wideband switch that requires one permutation calculation per cell time. Substitution is equivalent to matching.

【0017】これに対して、最大(サイズ)2部マッチ
ング(MBM:Maximum (Size) Bipartite Matching)
に基づくスケジューリングアプローチには次の2つの主
要な利点がある。
On the other hand, maximum (size) bipartite matching (MBM)
There are two main advantages to the scheduling approach based on.

【0018】(1)第1に、最良の既知のMBM法の実
行時間はO(N1/2m)である。MBMの実行時間に関
するさらに詳細な情報については、 ・J. E. Hopcroft and R. M. Karp, "An n5.5 algorith
m for maximum matching in bipartite graphs", SIAM
Journal on Computing, 2:225-231, 1973 ・E. A. Dinitz, "Algorithm for solution of a probl
em of maximum flow in networks with power estimati
on", Soviet Math. Dokl., 11:1277-1280, 1970 ・S. Even and R. E. Tarjan, "Network flow and test
ing graph connectivity", SIAM Journal on Computin
g, 4:507-518, 1975 に記載されている。
(1) First, the execution time of the best known MBM method is O (N 1/2 m). For more detailed information on MBM execution times, see: · JE Hopcroft and RM Karp, "An n 5.5 algorith
m for maximum matching in bipartite graphs ", SIAM
Journal on Computing, 2: 225-231, 1973 ・ EA Dinitz, "Algorithm for solution of a probl
em of maximum flow in networks with power estimati
on ", Soviet Math. Dokl., 11: 1277-1280, 1970 ・ S. Even and RE Tarjan," Network flow and test
ing graph connectivity ", SIAM Journal on Computin
g, 4: 507-518, 1975.

【0019】(2)第2に、この方法の入力は、各キュ
ーが空であるか否かについての知識(N2ビット)しか
必要としない。これに対して、MWBM法は、各キュー
の長さについての知識(N2個の整数。ただし、整数の
サイズには上限がない。)を必要とする。
[0019] (2) to a second input of the method, each queue requires only knowledge (N 2 bits) as to whether it is empty. In contrast, the MWBM method requires knowledge of the length of each queue (N 2 integers, where there is no upper limit on the size of the integers).

【0020】しかしながら、MWBMと比べた場合のM
BMの欠点は、MBMは、すべての許容トラフィックパ
ターンに対して安定であるとは限らないことである。特
に、McKeown et al.は、許容されるがMBMのもとで安
定ではないN=3の単純なトラフィックパターンを示し
ている(Nick McKeown, Venkat Anantharam, and Jean
Walrand, "Achieving 100% throughput in an input-qu
eued switch", In Proceedings IEEE INFOCOM’96, p.2
96-302, San Francisco, CA、を参照)。
However, when compared with MWBM, M
A disadvantage of BM is that MBM is not stable for all allowed traffic patterns. In particular, McKeown et al. Show a simple traffic pattern of N = 3 that is acceptable but not stable under MBM (Nick McKeown, Venkat Anantharam, and Jean
Walrand, "Achieving 100% throughput in an input-qu
eued switch ", In Proceedings IEEE INFOCOM'96, p.2
96-302, San Francisco, CA).

【0021】しかし、MBMが安定になるような許容ト
ラフィックパターンの興味深いクラスがあることが予想
される。このクラスのトラフィックは、平衡(balanced)
トラフィックパターンである。平衡トラフィックパター
ンの場合、すべての入出力ポートの負荷は均一である。
以下の事実は、上記の予想を正当化する。
However, it is expected that there will be interesting classes of allowable traffic patterns that will make the MBM stable. This class of traffic, the equilibrium (balanced)
It is a traffic pattern. In the case of a balanced traffic pattern, the load on all I / O ports is even.
The following facts justify the above conjecture.

【0022】1. MBMは、平衡スケジューリング問
題のオフラインバージョンに対して100%の利用率を
提供することが知られている。各入力ポートがちょうど
T個のセルを送出することを必要とし、各出力ポートが
ちょうどT個のセルを受け取ることを必要としている場
合、NT個のすべてのセルをちょうどT回の置換でルー
ティングすることが可能である。以下を参照のこと: ・G. Birkhoff, "Tres observaciones sobre el algebr
a lineal", Univ. Nac. Tuceman Rev. Ser. A5, p.147-
150, 1946; ・Shizhao Li and Nirwan Ansari, "Input-queued swit
ching with QoS guarantees", In Proceedings IEEE IN
FOCOM’99, volume 3, p.1152-1159, March 1999)。従
って、MBM法をT回使用して置換を選択することがで
きる。
1. MBM is known to provide 100% utilization for the offline version of the balanced scheduling problem. If each input port needs to send out exactly T cells and each output port needs to receive exactly T cells, route all NT cells with exactly T permutations It is possible. See: G. Birkhoff, "Tres observaciones sobre el algebr
a lineal ", Univ. Nac. Tuceman Rev. Ser. A5, p.147-
150, 1946; ・ Shizhao Li and Nirwan Ansari, "Input-queued swit
ching with QoS guarantees ", In Proceedings IEEE IN
FOCOM'99, volume 3, p.1152-1159, March 1999). Thus, the substitution can be selected using the MBM method T times.

【0023】2. 現在、MBMアプローチの既知のす
べてのシミュレーションは、トラフィックフローが平衡
であるときは必ず100%負荷まで安定である。シミュ
レーションは、不平衡フローの場合にのみ、不安定性を
示している。
2. Currently, all known simulations of the MBM approach are stable up to 100% load whenever the traffic flow is balanced. Simulations show instability only for unbalanced flows.

【0024】置換選択問題は、グラフ理論用語でモデル
化することができる。2部グラフとは、図1に示すよう
に、頂点を2つの集合に分割することが可能であり、各
辺がこれらの2つの集合間にあるような無向グラフであ
る。2部グラフは、スイッチを表現するために用いるこ
とができる。この場合、各入力ポートは一方の集合のノ
ード(節点、すなわち頂点)によって表され、各出力ポ
ートは、他方の集合のノードによって表される。2頂点
間に辺が存在することは、スイッチ内の対応する入力ポ
ートと出力ポートとの間でルーティングされるべきセル
が存在することを示す。極大マッチングとは、マッチン
グを維持したままで辺を追加することができないような
マッチングのことである。
The permutation choice problem can be modeled in graph theory terms. A bipartite graph is an undirected graph in which vertices can be divided into two sets as shown in FIG. 1 and each edge is between these two sets. Bipartite graphs can be used to represent switches. In this case, each input port is represented by one set of nodes (nodes, or vertices), and each output port is represented by the other set of nodes. The presence of an edge between two vertices indicates that there is a cell to be routed between the corresponding input and output ports in the switch. The maximal matching is a matching in which it is not possible to add an edge while maintaining the matching.

【0025】文献に現れているほとんどのスケジューリ
ング方法は、2つのカテゴリに分けられる。キューのサ
イズを考慮するもの(MWBMによって例示される)
と、考慮しないもの(MBMによって例示される)であ
る。
Most scheduling methods that appear in the literature fall into two categories. Considers queue size (exemplified by MWBM)
And not considered (exemplified by MBM).

【0026】MWBMアプローチでは、2部グラフの辺
に重み値が割り当てられる。一般に、入力ポートiから
出力ポートjへの辺には、入力ポートiにキューイング
された、出力ポートjを宛先とするパケットの数qij
等しい重みが割り当てられる。その後、得られたグラフ
において最大重みマッチングを計算する。前述のよう
に、MWBMアプローチは、トラフィックパターンが不
平衡のときでも安定性を備える。しかし、既知の最良の
方法の実行時間は、O(N2logN+Nm)及びO
(N1/2mlogNC)である。さらに、これらの方法
は本質的にシーケンシャル(直列的、逐次的)であり、
良好なハードウェア実現が困難である。MWBMを近似
しようとするヒューリスティックスも提案されている
が、それらもまた、シーケンシャル計算のボトルネック
によって制限されるようである。以下参照のこと: ・Adisak Mekkittikul and Nick McKeown, "A practica
l scheduling methodto achieve 100% throughput in i
nput-queued switches", In Proceedings IEEE INFOCO
M’98, p.792-799, San Francisco, CA, March 1998; ・Anthony C. Kam and Kai-Yeung Siu, "Linear comple
xity methods for bandwidth reservations and delay
guarantees in input-queued switches with no speedu
p", IEEE International Conference on Network Proto
cols, Austin,Texas, October 1998)。
In the MWBM approach, a weight value is assigned to an edge of a bipartite graph. In general, the edge from input port i to output port j is assigned a weight equal to the number q ij of packets queued at input port i and destined for output port j. Then, the maximum weight matching is calculated in the obtained graph. As mentioned above, the MWBM approach provides stability even when traffic patterns are unbalanced. However, the execution time of the best known method is O (N 2 log N + Nm) and O
(N 1/2 log NC). In addition, these methods are sequential in nature (serial, sequential)
Good hardware implementation is difficult. Heuristics that attempt to approximate MWBM have also been proposed, but they also appear to be limited by sequential computation bottlenecks. See: Adisak Mekkittikul and Nick McKeown, "A practica
l scheduling methodto achieve 100% throughput in i
nput-queued switches ", In Proceedings IEEE INFOCO
M'98, p.792-799, San Francisco, CA, March 1998; Anthony C. Kam and Kai-Yeung Siu, "Linear comple
xity methods for bandwidth reservations and delay
guarantees in input-queued switches with no speedu
p ", IEEE International Conference on Network Proto
cols, Austin, Texas, October 1998).

【0027】MBMアプローチでは、可能な最大数のパ
ケットがタイムスロットごとにルーティングされる。M
WBM法よりも漸近的に優れてはいるが(既知の最良の
MBM法の実行時間はO(N1/2m)でしかない)、M
BMは依然として、広帯域スイッチの速度制約のもとで
は実現が困難な方法である。PIMやSLIPのような
いくつかのヒューリスティック近似が開発されている。
これらは、より簡単な実現が可能であり、最大サイズマ
ッチングに近似しようとするものである。以下参照のこ
と: ・Nick McKeown, Martin Izzard, Adisak Mekkittikul,
William Ellersick,and Mark Horowitz, "The Tiny Te
ra: A packet core switch", In Hot Interconnects I
V, p.161-173, Stanford University, August 1996; ・Nicholas William McKeown, "Scheduling Algorithms
for Input-Queued Cell Switches", PhD thesis, Univ
ersity of California at Berkeley, 1995; ・Thomas E. Anderson, Susan S. Owicki, James B. Sa
xe, and Charles P. Thacker, "High-speed switch sch
eduling for local-area networks", ACM Transactions
on Computer Systems, 11(4):319-352, November 199
3)。これらのヒューリスティックアプローチもまた、
不平衡の許容トラフィックパターンに対しては不安定性
を示すことがある。
In the MBM approach, the maximum possible number of packets is routed per timeslot. M
Although asymptotically superior to the WBM method (the best known MBM method only has an execution time of O (N 1/2 m)),
BM is still a difficult method to implement under the speed constraints of broadband switches. Several heuristic approximations have been developed, such as PIM and SLIP.
These are simpler implementations and attempt to approximate maximum size matching. See: Nick McKeown, Martin Izzard, Adisak Mekkittikul,
William Ellersick, and Mark Horowitz, "The Tiny Te
ra: A packet core switch ", In Hot Interconnects I
V, p.161-173, Stanford University, August 1996; ・ Nicholas William McKeown, "Scheduling Algorithms
for Input-Queued Cell Switches ", PhD thesis, Univ
ersity of California at Berkeley, 1995; ・ Thomas E. Anderson, Susan S. Owicki, James B. Sa
xe, and Charles P. Thacker, "High-speed switch sch
eduling for local-area networks ", ACM Transactions
on Computer Systems, 11 (4): 319-352, November 199
3). These heuristic approaches also
It may show instability for unbalanced allowed traffic patterns.

【0028】[MBMに対するスケジューリングヒュー
リスティックス]当業者には理解されるように、MBM
法についていくつかのヒューリスティックスが使用可能
である。ここで説明するMBM関連のヒューリスティッ
クスは、後述するセクションIVDに記載する実験で、
さまざまなMBM法の包括的な比較研究のために用いら
れる。
[Scheduling Heuristics for MBM] As will be appreciated by those skilled in the art, MBM
Several heuristics are available for the law. The MBM-related heuristics described here were used in experiments described in Section IVD below.
Used for comprehensive comparative studies of various MBM methods.

【0029】PIM: 並列反復マッチング(Parallel
Iterative Matching)は、平均としてO(log
n)で極大マッチングに収束するヒューリスティックス
である(Thomas E. Anderson, Susan S. Owicki, James
B. Saxe, and Charles P. Thacker, "High-speed swit
ch scheduling for local-area networks", ACM Transa
ctions on Computer Systems, 11(4):319-352, Novembe
r 1993、を参照)。各イタレーションごとに、マッチン
グしていない入力が、キューイングされているセルを有
するあらゆる出力に対して提案(要求)をする。マッチ
ングしていない出力は、要求を受け取った場合、すべて
の要求にわたって一様ランダムに選択を行うことによっ
て1つの要求を受け入れる。1つの入力が複数の許可を
受け取った場合、その入力は、それらのうちからランダ
ムに1つを選択する。
PIM : Parallel Iterative Matching (Parallel
Iterative Matching is O (log
n) is a heuristic that converges to a maximal matching (Thomas E. Anderson, Susan S. Owicki, James
B. Saxe, and Charles P. Thacker, "High-speed swit
ch scheduling for local-area networks ", ACM Transa
ctions on Computer Systems, 11 (4): 319-352, Novembe
r 1993). For each iteration, the unmatched input makes a proposal (request) for any output that has cells queued. Unmatched outputs, upon receiving a request, accept one request by making a uniform random selection across all requests. If an input receives multiple permissions, that input randomly selects one of them.

【0030】RND: RNDヒューリスティックスは
PIMに類似している。相違点は、マッチングしていな
いあらゆる入力iは、iがキューイングされているセル
を有するようなランダムに選択された出力ポートjに対
する1つの要求のみを行う点である。
RND : RND heuristics are similar to PIM. The difference is that any unmatched input i makes only one request for a randomly selected output port j such that i has a cell queued.

【0031】RR−RND: ラウンドロビン法RR−
RNDでは、与えられたタイムスロットtに対するスケ
ジューリングは、固定された優先スケジュールによって
決定される。最高の優先度の入力i1は、それがキュー
イングされたセルを有するような出力のうちからランダ
ムに選択を行う。次に高い優先度の入力i2は、取られ
ていない出力のうちから次の選択を行い、以下同様であ
る。次のタイムスロットt+1において、入力ポート優
先度は、Nを法として1だけインクリメントされる。こ
の優先方式の利点は、パイプライン機構を有するハード
ウェアで容易に実現可能なことである。
RR-RND : Round Robin Method RR-
In RND, the scheduling for a given time slot t is determined by a fixed priority schedule. Input i 1 the highest priority, it makes a randomly selected from among the outputs, such as to have a cell that has been queued. Input i 2 of the next highest priority, perform this selection from among the outputs that have not been taken, and so on. In the next time slot t + 1, the input port priority is incremented by 1 modulo N. The advantage of this priority scheme is that it can be easily realized with hardware having a pipeline mechanism.

【0032】SLIP: SLIPは、McKeownによっ
て開発され、広範に解析されている(Nicholas William
McKeown, "Scheduling Algorithms for Input-Queued
CellSwitches", PhD thesis, University of Californi
a at Berkeley, 1995、を参照)。各入力ポート及び出
力ポートは、別々の優先度ホイール(回転盤)を有す
る。1つの入力は、それがキューイングされたセルを有
するようなあらゆる出力に1つずつ要求を送る。1つの
出力jは、自己の優先度ホイールに基づいて、ポートi
からの要求を受け入れることを選択する。iによって受
け入れられた場合、jにおける優先度ホイールは、(i
+1)modNにセットされる。入力ポートは、優先度
ホイールに基づいて許可を受け入れ、自己のホイールを
同様に回す。
SLIP : SLIP was developed by McKeown and has been extensively analyzed (Nicholas William
McKeown, "Scheduling Algorithms for Input-Queued
CellSwitches ", PhD thesis, University of Californi
a at Berkeley, 1995). Each input and output port has a separate priority wheel (turntable). One input sends requests, one at a time, to every output where it has a queued cell. One output j is based on its own priority wheel,
Choose to accept the request from. If accepted by i, the priority wheel at j is (i
+1) Set to modN. The input port accepts permission based on the priority wheel and turns its own wheel as well.

【0033】SHAKEUP: SHAKEUP法は、
米国特許出願第09/342,975号(本特許出願と
同日出願の特願平11−244648号)において本発
明の発明者によって導入されたものである。SHAKE
UPは、それ自体でも、他の方法と組み合わせても使用
可能であり、大きなパフォーマンス利得を達成すること
が示されている(前記特願平11−244648号を参
照のこと)。この方法は、2部グラフで、何らかの初期
マッチングを仮定する。初期マッチングは、例えば、他
のヒューリスティックスにより生成される。基本的な考
え方は、A内のマッチングしていない各頂点は、たとえ
既存のマッチングを除去することになるとしても、その
頂点自身がマッチングを強制されるということである。
具体的には、少なくとも1本の辺の端点である、集合A
内のマッチングしていない各頂点xは、端点となってい
る辺のうちの1つ(例えば、(x,y))を一様ランダ
ムに選択する。y∈Bがマッチングしていない場合、
(x,y)をマッチングに追加する。yが既に辺(z,
y),z∈Aによりマッチングしている場合、(z,
y)をマッチングから除去し、(x,y)を追加する。
最後に、SHAKEUP中に、A内の複数の頂点がB内
の同じ頂点とマッチングしようとする場合、A内の競合
する頂点のうちの1つをランダムに勝者として選択す
る。ここで、SHAKEUPは、並列に実現されておら
ず、A内のマッチングしていない頂点についてランダム
に選択された順序で実行されると仮定する。SHAKE
UPは、少なくとも初期マッチングと同じ大きさのマッ
チングを返す(SHAKEUPに関する詳細な実験及び
理論的正当化については、前記米国特許出願及び特願平
11−244648号を参照)。
SHAKEUP : The SHAKEUP method is
It was introduced by the inventor of the present invention in U.S. patent application Ser. SHAKE
UP can be used by itself or in combination with other methods, and has been shown to achieve large performance gains (see Japanese Patent Application No. 11-244648). This method assumes some initial matching on the bipartite graph. The initial matching is generated by other heuristics, for example. The basic idea is that each unmatched vertex in A is forced to match itself, even if it would remove the existing match.
Specifically, the set A is an end point of at least one side.
In each of the unmatched vertices x, one (for example, (x, y)) of the edges serving as the end points is uniformly and randomly selected. If y∈B does not match,
Add (x, y) to the match. y is already an edge (z,
y), z∈A, if (z,
Remove y) from the matching and add (x, y).
Finally, during SHAKEUP, if multiple vertices in A try to match the same vertex in B, one of the competing vertices in A is randomly selected as the winner. Here, it is assumed that SHAKEUP is not implemented in parallel and is executed in a randomly selected order on unmatched vertices in A. SHAKE
The UP returns a match at least as large as the initial match (for detailed experimental and theoretical justifications for SHAKEUP, see the aforementioned US patent application and Japanese Patent Application No. 11-244648).

【0034】なお、PIM、RND及びSLIPのヒュ
ーリスティックスは、反復ヒューリスティックスのクラ
スに入る。反復ヒューリスティックスは、1回の実行
(イタレーション)で極大マッチングを見つけることは
保証されない。従って、複数回反復することにより、置
換のサイズが増大する可能性がある。
The heuristics of PIM, RND and SLIP fall into the class of iterative heuristics. Iterative heuristics are not guaranteed to find a maximal match in one run (iteration). Thus, multiple iterations can increase the size of the substitution.

【0035】[0035]

【発明が解決しようとする課題】前述のように、MBM
及びMWBMのアプローチはいずれもそれぞれの欠点を
有する。従って、MWBMの安定性を有するとともに、
MBMのような低い実行時間要求条件を有するスケジュ
ーリング方法が、特に広帯域スイッチを実現するために
所望される。
As described above, the MBM
And MWBM approaches each have their disadvantages. Therefore, while having the stability of MWBM,
Scheduling methods with low execution time requirements, such as MBM, are desired, especially for implementing broadband switches.

【0036】本発明の目的は、一般的なトラフィックパ
ターンに対して高いパフォーマンスのスケジューリング
方法を提供することにある。
An object of the present invention is to provide a high performance scheduling method for general traffic patterns.

【0037】特に、本発明の目的は、MWBMスケジュ
ーラの優れた安定性を達成すると共に、より単純なMB
MまたはMBMベースのヒューリスティックスを実行す
る、スイッチのスケジューリング方法を提供することに
ある。
In particular, it is an object of the present invention to achieve excellent stability of the MWBM scheduler and to achieve a simpler MB
An object of the present invention is to provide a switch scheduling method that performs M or MBM-based heuristics.

【0038】[0038]

【課題を解決するための手段】本発明のアプローチは、
シューティングブランクスと呼ばれる。その主な考え方
について以下で説明する。シューティングブランクス法
では、すべての入出力が同じ到着レートΛになるよう
に、ダミーパケットを生成することによって軽い負荷の
ポートを通るトラフィックを増大させる。ダミーパケッ
ト生成をした後、MBMまたはMBM関連のヒューリス
ティックスを適用して、ルーティングされるべき置換を
計算する。軽負荷のポートはダミートラフィックに対応
する辺の端点に相当するため、この方法は、いわば騙さ
れた形で、これらをマッチングに含めるように選択す
る。
SUMMARY OF THE INVENTION The approach of the present invention is:
Called shooting blanks . The main concept will be described below. The Shooting Blanks method increases traffic through lightly loaded ports by generating dummy packets so that all inputs and outputs have the same arrival rate Λ. After generating the dummy packet, the MBM or MBM related heuristics are applied to calculate the permutation to be routed. Since the lightly loaded ports correspond to the endpoints of the side corresponding to the dummy traffic, the method chooses to include them in the match in a so-called deceptive manner.

【0039】本発明は、コンピュータ実装されたスケジ
ューリング方法として、ルーティングに用いられる方法
として、シューティングブランクス・スイッチとして、
またシューティングブランクス・スイッチを用いたネッ
トワークシステムとして、実現される。
The present invention provides a computer-implemented scheduling method, a method used for routing, a shooting blank switch,
It is also realized as a network system using shooting blanks switches.

【0040】本発明によれば、N個の入力キューを1つ
のグループとしてM個のグループを有するシステムのた
めの、コンピュータにより実現されたスケジューリング
方法が提供される。前記N個の入力キューはそれぞれ、
N個のサービスのうちの相異なる1つを要求する。M及
びNは自然数である。従って、システムは、M×N個の
キューを有することになる。前記スケジューリング方法
は、M個のグループ及びN個のサービスに対するエント
リの到着レートを判定するステップと、前記M個のグル
ープ及びN個のサービスのうち最大到着レートを有する
1つを識別するステップと、前記M個のグループ及びN
個のサービスのうち、識別されたグループまたはサービ
ス以外のすべてのグループ及びサービスに、前記M個の
グループ及びN個のサービスに対するエントリの到着レ
ートがほぼ等しくなるように、ダミーエントリを追加す
るステップと、入力キューの長さを考慮しないスケジュ
ーリング法を使用するステップとからなる。
According to the present invention, there is provided a computer implemented scheduling method for a system having M groups with N input queues as one group. The N input queues are:
Request a different one of the N services. M and N are natural numbers. Thus, the system will have M × N queues. Determining an arrival rate of entries for M groups and N services; identifying one of the M groups and N services having a maximum arrival rate; The M groups and N
Adding a dummy entry to all of the services and groups other than the identified group or services such that the arrival rates of entries for the M groups and the N services are approximately equal; Using a scheduling method that does not consider the length of the input queue.

【0041】本発明の他の側面によれば、ポートを有す
るスイッチにおけるルーティング方法が提供される。前
記ポートは、M個の入力ポート及びN個の出力ポートの
うちの1つであり、該M個の入力ポートと該N個の出力
ポートの間でセルがルーティングされる。前記セルは、
ポートのサブセットごとに異なるレートで到着する。前
記M個の入力ポートはそれぞれN個のキューを有するこ
とにより、全部でM×N個のキューが存在する。前記ル
ーティング方法は、1つのポートを、最大のセル到着レ
ートを有するとして識別するステップと、すべての入力
ポート及び出力ポートに対する到着レートがほぼ等しく
なるように、最大のセル到着レートを有するとして識別
された入力ポートまたは出力ポート以外のすべての入力
ポート及び出力ポートにダミーセルを追加するステップ
と、キュー長を考慮しないスケジューリング法を使用す
るステップとからなり、前記M個の入力ポートのうちの
1つの入力ポートに対する到着レートは、該1つの入力
ポートのN個のキューに対する到着レートの和であり、
前記N個の出力ポートのうちの1つの出力ポートに対す
る到着レートは、前記M個の入力ポートのそれぞれから
該1つの出力ポートへの到着レートの和である。
According to another aspect of the present invention, there is provided a routing method in a switch having a port. The port is one of M input ports and N output ports, and cells are routed between the M input ports and the N output ports. The cell is
Different subsets of ports arrive at different rates. Each of the M input ports has N queues, so that there are a total of M × N queues. The routing method includes identifying one port as having a maximum cell arrival rate and identifying as having a maximum cell arrival rate such that arrival rates for all input and output ports are approximately equal. Adding dummy cells to all input ports and output ports other than the input port or output port, and using a scheduling method that does not consider the queue length, wherein one of the M input ports The arrival rate for a port is the sum of the arrival rates for the N queues of the one input port,
The arrival rate at one output port of the N output ports is the sum of the arrival rates from each of the M input ports to the one output port.

【0042】好ましくは、ダミーセルは、すべてのポー
トに対する到着レートが等しくなるように適当なキュー
に対するダミーフローを決定して充填するステップと、
決定された到着レートでダミーセルを生成するステップ
と、からなるプロセスを使用して追加される。
Preferably, the dummy cells determine and fill a dummy flow for the appropriate queue such that arrival rates for all ports are equal;
Generating dummy cells at the determined arrival rate.

【0043】好ましくは、充填は、ポートのうちで最大
到着レートΛのものを識別するステップと、入力ポート
iと出力ポートjの間のパケット伝送レートγijを、初
期伝送レートαijに初期化するステップと、入力ポート
ポインタ及び出力ポートポインタを1に初期化するステ
ップと、入力ポートiの到着レートRi及び出力ポート
jの到着レートSjがΛより小さくなるまで、前記入力
ポートポインタ及び前記出力ポートポインタをインクリ
メントするステップと、iとjの間のフローに対するダ
ミーセルを、RiがSj以上である場合はレートβij=Λ
−Riで、それ以外の場合はβij=Λ−Sjで、追加する
ステップと、目標到着レートγijをγij+βijに更新す
るステップと、すべてのポートについて上記ステップを
繰り返すステップと、からなるプロセスを使用して実行
される。
Preferably, the filling comprises identifying a port having a maximum arrival rate Λ, and initializing a packet transmission rate γ ij between an input port i and an output port j to an initial transmission rate α ij . the method comprising the steps of initializes the input port pointers and output ports pointers, until the arrival rate S j arrival rate R i and the output port j of the input port i is smaller than lambda, the input port pointers and the Incrementing the output port pointer and dummy cells for the flow between i and j, if R i is greater than or equal to S j , rate β ij = Λ
−R i , otherwise β ij = Λ−S j , adding, updating the target arrival rate γ ij to γ ij + β ij , and repeating the above steps for all ports. Is performed using a process consisting of

【0044】好ましくは、生成は、目標到着レートが満
たされるように各入力ポートにおいてダミーセルを生成
するステップと、実セルが入力ポートに到着していると
きには該実セルを対応するダミーセルにピギーバックす
るステップと、によって実行され、各キューは、該キュ
ーにおいて伝送のためにキューイングされているダミー
セルの数に対応するクレジット値を保持し、スケジュー
ラは、前記クレジット値が1以上であるときに、特定の
キュー内のセルについて知らされ、該特定のキューが選
択されると前記クレジット値は1だけデクリメントされ
る。
Preferably, the generation includes generating dummy cells at each input port such that the target arrival rate is satisfied, and piggybacking the real cells to the corresponding dummy cells when a real cell is arriving at the input port. And wherein each queue holds a credit value corresponding to the number of dummy cells queued for transmission in the queue, and the scheduler determines when the credit value is greater than or equal to one. And the credit value is decremented by one when the particular queue is selected.

【0045】さらに好ましくは、ダミーセルは実際に生
成されるのではなく、各入力キューが数dijを保持す
る。この数は、前記クレジット値に等しく、iからjへ
の伝送のためにキューイングされるダミーセルの数に対
応する。前記数dij及び前記クレジット値は、各時間ス
テップごとに、確率γijでインクリメントされる。
More preferably, the dummy cells are not actually generated, but each input queue holds a number d ij . This number is equal to the credit value and corresponds to the number of dummy cells queued for transmission from i to j. The number d ij and the credit value are incremented by a probability γ ij at each time step.

【0046】さらに好ましくは、iとjの間のコネクシ
ョンが許可されたときに、実セルがiとjの間の伝送の
ためにキューイングされている場合には、該実セルが伝
送される。
More preferably, if the real cell is queued for transmission between i and j when the connection between i and j is granted, the real cell is transmitted. .

【0047】もう1つの改良において、好ましくは、ダ
ミーセルは生成されるのではなく、各入力キューが数c
ijを保持する。この数は、前記クレジット値に等しい。
ij及び前記クレジット値は、iからjへの伝送のため
にキューイングされるダミーセルの数に対応する浮動小
数点数である。前記数cij及び前記クレジット値は、各
時間ステップごとに、0と1の間の小数をとるγijだけ
インクリメントされる。
In another refinement, preferably, no dummy cells are generated and each input queue has a number c
Hold ij . This number is equal to the credit value.
c ij and the credit value are floating point numbers corresponding to the number of dummy cells queued for transmission from i to j. The number c ij and the credit value are incremented at each time step by γ ij which takes a decimal between 0 and 1.

【0048】好ましくは、iとjの間のコネクションが
許可されたときに、実セルがiとjの間の伝送のために
キューイングされている場合には、該実セルが伝送され
る。
Preferably, when the connection between i and j is granted, if the real cell is queued for transmission between i and j, the real cell is transmitted.

【0049】別の改良において、好ましくは、cij≧1
の場合、または、実セルがiとjの間のキューに存在す
る場合、該キューは、iとjの間でセルを伝送すること
ができることをスケジューラに通知する。
In another refinement, preferably c ij ≧ 1
Or if a real cell is in the queue between i and j, the queue informs the scheduler that it can transmit cells between i and j.

【0050】本発明のもう1つの側面であるシューティ
ングブランクス・スイッチは、M+N個のポートと、レ
ート識別器と、充填決定器と、ダミーセル生成器と、ス
ケジューラとを有する。前記ポートは、M個の入力ポー
ト及びN個の出力ポートからなり、該M個の入力ポート
と該N個の出力ポートの間でセルがルーティングされ
る。前記セルは、ポートのサブセットごとに異なるレー
トで到着する。前記M個の入力ポートはそれぞれN個の
キューを有することにより、全部でM×N個のキューが
存在する。前記レート識別器は、1つのポートを、最大
のセル到着レートを有するとして識別する。前記M個の
入力ポートのうちの1つの入力ポートに対する到着レー
トは、該1つの入力ポートのN個のキューに対する到着
レートの和であり、前記N個の出力ポートのうちの1つ
の出力ポートに対する到着レートは、前記M個の入力ポ
ートのそれぞれから該1つの出力ポートへの到着レート
の和である。前記充填決定器は、すべてのポートに対す
る到着レートが等しくなるように適当なキューに対する
ダミーフローを決定する。前記ダミーセル生成器は、前
記充填決定器によって決定された到着レートでダミーセ
ルを生成する。前記スケジューラは、キュー長を考慮し
ない。
A shooting blank switch according to another aspect of the present invention has M + N ports, a rate discriminator, a filling determiner, a dummy cell generator, and a scheduler. The ports comprise M input ports and N output ports, and cells are routed between the M input ports and the N output ports. The cells arrive at different rates for each subset of ports. Each of the M input ports has N queues, so that there are a total of M × N queues. The rate identifier identifies one port as having the highest cell arrival rate. The arrival rate for one of the M input ports is the sum of the arrival rates of the one input port for the N queues, and the arrival rate for one of the N output ports. The arrival rate is the sum of the arrival rates from each of the M input ports to the one output port. The filling determiner determines a dummy flow for the appropriate queue such that the arrival rates for all ports are equal. The dummy cell generator generates a dummy cell at an arrival rate determined by the filling determiner. The scheduler does not consider the queue length.

【0051】好ましくは、前記生成器は、目標到着レー
トが満たされるように各入力ポートにおいてダミーセル
を生成し、実セルが入力ポートに到着しているときには
該実セルを対応するダミーセルにピギーバックする。各
キューは、該キューにおいて伝送のためにキューイング
されているダミーセルの数に対応するクレジット値を保
持し、スケジューラは、前記クレジット値が1以上であ
るときに、特定のキュー内のセルについて知らされ、該
特定のキューが選択されると前記クレジット値は1だけ
デクリメントされる。
Preferably, the generator generates a dummy cell at each input port so that the target arrival rate is satisfied, and piggybacks the real cell to the corresponding dummy cell when a real cell arrives at the input port. . Each queue holds a credit value corresponding to the number of dummy cells queued for transmission in the queue, and the scheduler informs about cells in a particular queue when the credit value is greater than one. The credit value is decremented by one when the particular queue is selected.

【0052】好ましくは、ダミーセルは実際に生成され
るのではなく、各入力キューが数d ijを保持する。この
数は、前記クレジット値に等しく、iからjへの伝送の
ためにキューイングされるダミーセルの数に対応する。
前記数dijは、各時間ステップごとに、目標レートγij
に等しい確率でインクリメントされる。
Preferably, the dummy cells are actually generated.
Instead, each input queue is a few d ijHold. this
The number is equal to the credit value and the number of transmissions from i to j
To the number of dummy cells that are queued.
The number dijIs the target rate γ for each time stepij
Is incremented with a probability equal to

【0053】さらに好ましくは、iとjの間のコネクシ
ョンが許可されたときに、実セルがiとjの間の伝送の
ためにキューイングされている場合には、該実セルが伝
送される。
More preferably, when the connection between i and j is granted, if the real cell is queued for transmission between i and j, the real cell is transmitted. .

【0054】もう1つの改良において、好ましくは、ダ
ミーセルは生成されるのではなく、各入力キューは数c
ijを保持する。この数は、前記クレジット値に等しい。
ij及び対応するクレジット値は、iからjへの伝送の
ためにキューイングされるダミーセルの数に対応する浮
動小数点数である。前記数cijは、各時間ステップごと
に、0と1の間の小数をとるγijだけインクリメントさ
れる。
In another refinement, preferably, no dummy cells are generated, and each input queue has a number c
Hold ij . This number is equal to the credit value.
c ij and the corresponding credit value are floating point numbers corresponding to the number of dummy cells queued for transmission from i to j. The number c ij is incremented at each time step by γ ij which takes a decimal number between 0 and 1.

【0055】さらに好ましくは、iとjの間のコネクシ
ョンが許可されたときに、実セルがiとjの間の伝送の
ためにキューイングされている場合には、該実セルが伝
送される。
More preferably, when the connection between i and j is granted, if the real cell is queued for transmission between i and j, the real cell is transmitted. .

【0056】別の改良において、好ましくは、cij≧1
の場合、または、実セルがiとjの間のキューに存在す
る場合、該キューは、キューiとjの間でセルを伝送す
ることができることをスケジューラに通知する。
In another refinement, preferably c ij ≧ 1
Or if the real cell is in a queue between i and j, the queue informs the scheduler that cells can be transmitted between queues i and j.

【0057】本発明のさらにもう1つの側面によれば、
スイッチのサブセットがシューティングブランクス・ス
イッチであるようなスイッチを有するネットワーキング
システムが提供される。
According to yet another aspect of the present invention,
A networking system is provided having switches such that a subset of the switches are shooting blanks switches.

【0058】[0058]

【発明の実施の形態】[IVA.シューティングブラン
クス・アプローチ]好ましい実施例は、最も重い負荷の
ポート(入力または出力のいずれでもよい)において到
着レートをΛに等しくするフローの集合を提供するため
のスイッチを使用する。このような場合、パケットはΛ
に基づく平均値で到着する。
DETAILED DESCRIPTION OF THE INVENTION [IVA. Shooting Blanks Approach] The preferred embodiment uses a switch to provide a set of flows that makes the arrival rate equal to に お い て at the heaviest loaded port (either input or output). In such a case, the packet is Λ
Arrives at an average value based on

【0059】図3は、不平衡フローのスイッチの一例を
示す模式図である。ここでは、最も重い負荷のポートは
いちばん上の入力ポートである。シューティングブラン
クス法では、すべての入出力が同じ到着レートΛになる
ようにダミーパケットを生成することによって、軽い負
荷のポートを通るトラフィックを増大させる。ダミーパ
ケット生成をした後、MBMまたはMBM関連のヒュー
リスティックスを適用してルーティングされるべき置換
を計算する。軽負荷のポートはダミートラフィックに対
応する辺の端点に相当することが多いため、この方法
は、マッチングに含めるようにこれらのダミーパケット
を選択するようだまされることになる。
FIG. 3 is a schematic diagram showing an example of an unbalanced flow switch. Here, the port with the heaviest load is the top input port. The Shooting Blanks method increases traffic through lightly loaded ports by generating dummy packets so that all inputs and outputs have the same arrival rate Λ. After generating the dummy packet, the permutation to be routed is calculated by applying MBM or MBM related heuristics. Since the lightly loaded ports often correspond to the endpoints of the side corresponding to the dummy traffic, the method will be tricked into selecting these dummy packets to include in the matching.

【0060】シューティングブランクス法は、3つの主
要な利点を有する。(i)MBM関連の方法を使用して
いながら、MWBMの優れた安定性に匹敵することが実
験的に示される(セクションIVDを参照)。(ii)
MBMヒューリスティックスの上にシューティングブラ
ンクスの考え方を実現することによるオーバーヘッドは
小さく(セクションIVBを参照)、MWBMあるいは
MBMの複雑さに比べても確実に無視できる。(ii
i)このアプローチはモジュール性がある。すなわち、
このアプローチは、トラフィックを「前処理」すること
に集中しており、任意のスケジューリング方法と組み合
わせることができる。
The shooting blanks method has three main advantages. (I) It is experimentally shown to be comparable to the superior stability of MWBM while using MBM related methods (see section IVD). (Ii)
The overhead of implementing the Shooting Blanks concept on MBM heuristics is small (see section IVB) and is certainly negligible compared to the complexity of MWBM or MBM. (Ii
i) This approach is modular. That is,
This approach focuses on "pre-processing" the traffic and can be combined with any scheduling method.

【0061】[IVB.シューティングブランクスの実
現]好ましい実施例の実現の詳細について以下説明す
る。好ましい実施例のスイッチは、サービス品質(Qo
S)環境で動作し、フローは、許可された帯域を決定す
る契約を有する。この帯域はレートで表され、i−jリ
ンク、すなわち、入力ポートiと出力ポートjの間のリ
ンクのレートαijは、そのリンク上のすべての顧客のた
めに予約されたレートの和である。契約で合意されたレ
ートは呼受付コントローラ(CAC:Call Admission C
ontroller)には既知である。ネットワークシステム
は、どのフローも、それに割り当てられたレートを超過
しないことを保証する。レートは、大きい時間ウィンド
ウを通じて一定であることを仮定することができるくら
いまれにしか変化しない。
[IVB. Implementation of Shooting Blanks] Details of the implementation of the preferred embodiment will be described below. The switch of the preferred embodiment has a quality of service (Qo
S) Operating in the environment, the flow has a contract to determine the allowed bandwidth. This bandwidth is expressed as a rate, and the rate α ij of the ij link, ie, the link between input port i and output port j, is the sum of the rates reserved for all customers on that link. . The rate agreed in the contract is the Call Admission Controller (CAC).
ontroller). The network system ensures that no flow exceeds the rate assigned to it. The rate changes only rarely enough to be able to assume that it is constant over a large time window.

【0062】本発明のシューティングブランクス法は、
3個のコンポーネントを有する。
The shooting blanks method of the present invention comprises:
It has three components.

【0063】(i)充填(Fill-Up)コンポーネントで
は、すべての入力ポート及び出力ポートに対するレート
i、Sjが等しいことを保証するように、適当な入出力
ペアに対してダミーフローを決定する。
(I) In the Fill-Up component, determine a dummy flow for the appropriate input / output pair to ensure that the rates R i , S j for all input and output ports are equal. I do.

【0064】(ii)生成(Generation)コンポーネン
トは、充填コンポーネントによって決定されたレートで
ダミーパケットを生成することを担当する。
(Ii) The Generation component is responsible for generating dummy packets at the rate determined by the filling component.

【0065】(iii)実際のスケジューリングコンポ
ーネントでは、選択された任意の方法(好ましくは、M
BMまたはMBM関連のヒューリスティックス)を実行
して、置換を計算することができる。
(Iii) In the actual scheduling component, any method selected (preferably M
BM or MBM-related heuristics) can be performed to calculate the permutation.

【0066】[IVB.1 充填コンポーネント]図4
は、図3のトラフィックに対する充填の効果の一例を示
す模式図である。充填コンポーネントは、グリーディ
(欲張り)手順を用いて実現される。以下、Λを入出力
のレートのうちの最大値とする。このコンポーネントは
新しいレートγijを出力しようとする。γijはオリジナ
ルレート値αijに初期化される。グリーディ手順は入出
力ポートを1からNへの順に進む。2つのポインタが設
けられ、一方は現在の入力iであり、他方は現在の出力
jである。これらのポインタは、Λより小さい負荷の入
力ポート及び出力ポートが見つかるまでインクリメント
される。i及びjの両方に対して、Ri,Sj<Λであ
る。Λ−Ri<Λ−Sjと仮定しても一般性を失わない。
レートβij=Λ−Riのiからjへのフローを追加し、
レートγijをγij+βijに更新する。入力ポインタを、
i’<Λであるような次のi′>iに移動する。この
ステップを繰り返す。これで、充填コンポーネントの記
述は完了する。
[IVB. 1 Filling component] Figure 4
FIG. 4 is a schematic diagram showing an example of the effect of filling the traffic in FIG. The filling component is implemented using a greedy procedure. Hereinafter, Λ is the maximum value of the input and output rates. This component attempts to output a new rate γ ij . γ ij is initialized to the original rate value α ij . The greedy procedure proceeds through the input / output ports in order from 1 to N. Two pointers are provided, one for the current input i and the other for the current output j. These pointers are incremented until input and output ports with loads less than $ are found. For both i and j, R i , S j <Λ. Even if it is assumed that Λ−R i <Λ−S j , generality is not lost.
Add a flow from rate i to j with rate β ij = Λ-R i ,
Update the rate γ ij to γ ij + β ij . Move the input pointer to
Move to the next i ′> i such that R i ′ <Λ. Repeat this step. This completes the description of the filling component.

【0067】充填コンポーネントは、高々2N−1個の
フローを追加することが分かる。各ステップで、一様な
負荷Λを達成するという目標に向かって進むように辺を
追加することが常に可能である。これは、入力レートの
和が常に出力レートの和に等しいということによる。従
って、この方法は正しい。
It can be seen that the filling component adds at most 2N-1 flows. At each step, it is always possible to add edges to move towards the goal of achieving a uniform load Λ. This is because the sum of the input rates is always equal to the sum of the output rates. Therefore, this method is correct.

【0068】[IVB.2 生成コンポーネント]生成
コンポーネントの実現について説明する。最も重い負荷
のポートのレートをΛとする。このコンポーネントは、
充填コンポーネントによって決定されたレートでダミー
フローを生成しなければならない。さらに複雑なこと
は、実フロー(例えば、入力iから)がその契約で合意
したレート以下である場合、本発明の方法は、充填コン
ポーネントによってiに対して設定されたレートΛを満
たすように、ダミーパケットが生成されるレートを増大
させなければならない。
[IVB. 2 Generation Component] Realization of the generation component will be described. Let the rate of the port with the heaviest load be Λ. This component is
Dummy flows must be generated at the rate determined by the filling component. To complicate matters further, if the actual flow (eg, from input i) is less than or equal to the rate agreed in the contract, the method of the present invention will satisfy the rate た set by the filling component for i. The rate at which dummy packets are generated must be increased.

【0069】生成コンポーネントに対する上記の2つの
要件に効率的に対処するために、「ピギーバック」方式
を用いる。入力iは、ちょうどΛの全レートで、充填コ
ンポーネントによって決定された実フロー及びダミーフ
ローの宛先へ向かうダミーパケットを生成する。すべて
のスケジューラは、コネクションi−jに対して、ダミ
ーパケットの有無に対応して1または0とみる。実パケ
ットが入力iにおいて宛先をjとしてキューイングされ
た場合、これは、次にスケジューラがi−jコネクショ
ンを許可するときに、ダミーパケットの先頭に移され
る。ピギーバック方式によれば、シューティングブラン
クスの実現は、実フローの高価なポリシング(policing)
をさらに行うことなしに、しかも、任意のリンクにおい
てダミーパケット生成に固定レートを使用しながら(こ
れはハードウェアで容易に実現可能な方法である。)達
成される。
To efficiently address the above two requirements for the generating component, a "piggyback" scheme is used. The input i produces a dummy packet destined for the real and dummy flow destinations determined by the filling component, at a full rate of just Λ. All schedulers consider connection ij as 1 or 0 according to the presence or absence of a dummy packet. If a real packet is queued at input i with destination j, it is moved to the beginning of the dummy packet the next time the scheduler grants the ij connection. According to the piggyback method, realization of shooting blanks is expensive policing of real flow
, And using a fixed rate for dummy packet generation on any link (this is an easily implementable method in hardware).

【0070】さらに効率を改善するため、さらに好まし
い実施例では、ダミーパケットは、明示的に生成され保
持されるのではない。入出力ポートのあらゆるペア
(i,j)に対して、iからjへの伝送のためにキュー
イングされているダミーパケットの数dijのみが保持さ
れる。この数は、各時間ステップごとに、確率γijでイ
ンクリメントされる。dij>0の場合、スケジューラは
1(すなわち、i−j辺が2部グラフ内に存在する)と
判断し、そうでない場合は0と判断する。スケジューラ
がi−jコネクション(これはdij>0を意味する。)
を許可し、qij>0(これは、伝送のためにキューイン
グされている実パケットがあることを意味する。)であ
る場合、実パケットがルーティングされ、dijは1だけ
デクリメントされる。i−jコネクションが許可され、
実パケットがキューイングされていない場合、単に、d
ijが1だけデクリメントされる。
To further improve efficiency, in a more preferred embodiment, dummy packets are not explicitly generated and retained. For every pair of input / output ports (i, j), only the number d ij of dummy packets queued for transmission from i to j is kept. This number is incremented with a probability γ ij at each time step. If d ij > 0, the scheduler determines 1 (i.e., the ij side exists in the bipartite graph); otherwise, it determines 0. The scheduler has an ij connection (this implies d ij > 0)
And if q ij > 0 (meaning that there are real packets queued for transmission), the real packets are routed and d ij is decremented by one. ij connection is allowed,
If no real packets are queued, simply d
ij is decremented by one.

【0071】図5は、本発明によるさらに好ましい実施
例であり、生成コンポーネントのカウンタベースでの実
現を示す模式図である。この実施例では、確率的アプロ
ーチではなく決定性アプローチを使用する。このアプロ
ーチは、非常にコストのかかる乱数発生器の使用を回避
する。図5において、i−jコネクションに対して充填
コンポーネントにより決定されたレートをγijとする。
カウンタcijが設けられ、各時間ステップごとにγ
ij(0と1の間の小数をとる。)だけインクリメントさ
れる。カウンタの値は、負の値もとりうる浮動小数点数
である。前と同様に、整数qijは実パケットの数を保持
する。スケジューラは、qij>0またはcij≧1の場
合、2部グラフ内にi−j辺があると判断する。スケジ
ューラがi−jコネクションを許可する場合、cijは1
だけデクリメントされ、実パケットがあれば(すなわち
ij>0)実パケットがルーティングされる。
FIG. 5 is a further preferred embodiment according to the present invention, and is a schematic diagram showing a counter-based realization of a generation component. In this embodiment, a deterministic approach is used instead of a stochastic approach. This approach avoids the use of very expensive random number generators. In FIG. 5, let γ ij be the rate determined by the filling component for the ij connection.
A counter c ij is provided, and γ is set for each time step.
ij (which is a decimal number between 0 and 1). The value of the counter is a floating-point number that can take a negative value. As before, the integer q ij holds the number of real packets. If q ij > 0 or c ij ≧ 1, the scheduler determines that there are ij edges in the bipartite graph. If the scheduler allows ij connection, c ij is 1
, And if there is a real packet (ie, q ij > 0), the real packet is routed.

【0072】[IVC.1 シューティングブランクス
・スイッチ]図6は、本発明によるシューティングブラ
ンクス・スイッチの好ましい実施例を示す概略的構成図
である。シューティングブランクス・スイッチは、M個
の入力ポート6.11〜6.14及びN個の出力ポート
6.21〜6.24を有するものとする。即ち、図示し
たスイッチではM=4及びN=4である。セルは、入力
ポートに到着した後、M個の入力ポートとN個の出力ポ
ートの間でルーティングされなければならない。これら
のセルは、相異なるレートで到着する。各セルは、いく
つかのキュー(6.711〜6.714は一部のキュー
である。)のうちの1つにキューイングされる。1つの
キューは、特定の入力ポートから特定の出力ポートへル
ーティングされるセルに対応する。例えば、キュー6.
714は、入力ポート6.11から出力ポート6.24
へルーティングされるセルをキューイングする。同様
に、キュー6.712は、入力ポート6.11から出力
ポート6.22へルーティングされるセルをキューイン
グする。従って、各入力ポートは、その入力ポートから
N個の出力ポートのそれぞれへルーティングされるセル
に対応するN個のキューを有する。こうして、このスイ
ッチにはM×N個のキューがある。この図の場合では4
×4=16個のキューがある。
[IVC. 1 Shooting Blanks Switch] FIG. 6 is a schematic configuration diagram showing a preferred embodiment of a shooting blanks switch according to the present invention. The shooting blanks switch shall have M input ports 6.11 to 6.14 and N output ports 6.21 to 6.24. That is, M = 4 and N = 4 in the illustrated switch. After a cell arrives at an input port, it must be routed between the M input ports and the N output ports. These cells arrive at different rates. Each cell is queued in one of several queues (6.711 to 6.714 are some queues). One queue corresponds to a cell being routed from a particular input port to a particular output port. For example, queue 6.
714 is an input port 6.11 to an output port 6.24.
Queue the cells to be routed to. Similarly, queue 6.712 queues cells that are routed from input port 6.11 to output port 6.22. Thus, each input port has N queues corresponding to cells routed from that input port to each of the N output ports. Thus, this switch has M × N queues. In this case, 4
× 4 = 16 queues.

【0073】レート識別器6.3は、最大到着レートの
ポートを識別する。入力ポートに対する到着レートは、
その入力ポートのN個のすべてのキューに対する到着レ
ートの和である。同様に、出力ポートに対する到着レー
トは、M個の入力ポートのそれぞれからその出力ポート
への到着レートの和である。充填決定器6.4は、すべ
てのポートに対する到着レートが等しくなるように適当
なキューに対するダミーフローを決定する。ダミーセル
生成器6.5は、充填決定器によって決定された到着レ
ートでダミーセルを生成する。スケジューラ6.6は、
キュー長を考慮しないヒューリスティックMBM法に基
づいてルーティングを行う。
The rate identifier 6.3 identifies the port having the highest arrival rate. The arrival rate for the input port is
The sum of the arrival rates for all N queues at that input port. Similarly, the arrival rate for an output port is the sum of the arrival rates from each of the M input ports to its output port. The fill determiner 6.4 determines a dummy flow for the appropriate queue such that the arrival rates for all ports are equal. The dummy cell generator 6.5 generates a dummy cell at the arrival rate determined by the filling determiner. The scheduler 6.6
Routing is performed based on a heuristic MBM method that does not consider the queue length.

【0074】[IVC.2 シューティングブランクス
・スイッチを用いたネットワークシステム]図7は、シ
ューティングブランクス・スイッチを用いたネットワー
クシステムの好ましい例を示す。ネットワークシステム
7.1は、いくつかのスイッチを有する。これらのスイ
ッチのサブセットが、シューティングブランクス・スイ
ッチ7.21〜7.23からなる。シューティングブラ
ンクス・スイッチの好ましい実施例の構造は前のセクシ
ョンIVC.1(図6)に記載されている。
[IVC. 2 Network System Using Shooting Blanks Switch] FIG. 7 shows a preferred example of a network system using shooting blanks switches. The network system 7.1 has several switches. A subset of these switches consists of shooting blanks switches 7.21 to 7.23. The structure of the preferred embodiment of the shooting blank switch is described in section IVC. 1 (FIG. 6).

【0075】[IVD.実験結果]注意すべき点である
が、ここに記載する実験は単なる例示であり、本発明の
技術的範囲を制限するものと解釈してはならない。これ
らのシミュレーション実験を用いて、シューティングブ
ランクス法が、シューティングブランクス法を使用しな
い従来のスケジューリングアプローチに比べて優れた結
果を与えることを示す。強調されるべき点であるが、シ
ューティングブランクス法は、任意のスケジューリング
ヒューリスティックスと直交して組み合わせることが可
能であるが、平衡入力に最大サイズマッチングに近似す
る良好な方法と組み合わせるほうが良好に動作する。こ
こに記載する実験は、以下のようにして生成されるトラ
フィックパターン例を使用する。任意の時間ステップに
おいて、各入力ポートiは確率Σj=1 Nαijで1個のセル
を生成する。入力ポートiで生成されたセルの宛先が出
力ポートjである確率はαij/Σj=1 Nαijである。
[IVD. [Experimental results] It should be noted that the experiments described here are merely examples and should not be construed as limiting the technical scope of the present invention. Using these simulation experiments, we show that the Shooting Blanks method gives better results than the conventional scheduling approach without the Shooting Blanks method. It should be emphasized that the Shooting Blanks method can be combined orthogonally with any scheduling heuristics, but will work better with a good method that approximates maximum size matching to balanced inputs. The experiment described here uses an example traffic pattern generated as follows. At any time step, each input port i generates one cell with probability Σ j = 1 N α ij . The probability that the destination of the cell generated at input port i is output port j is α ij / Σ j = 1 N α ij .

【0076】入力ポートの次数とは、それがマッチング
される出力ポートの数のことである。同様に、出力ポー
トの次数とは、それがマッチングされる入力ポートの数
である。前述の米国特許出願及び特願平11−2446
48号に記載されているような低次数不平衡のトラフ
ィックパターンは、例とするトラフィックタイプとみな
される。このトラフィックタイプは、McKeown et al.に
記載されたトラフィックパターンの一般化である。McKe
ownに記載されたトラフィックパターンは許容される
が、スケジューリング方法がMBMである場合にはキュ
ーが無制限に成長する(Nick McKeown, Venkat Anantha
ram, and Jean Walrand, "Achieving 100%throughput i
n an input-queued switch", In Proceedings IEEE INF
OCOM’96,p.296-302, San Francisco, CA, March 199
6、を参照)。今のシミュレーションの場合、半数の入
力ポート及び半数の出力ポートがちょうど1個のフロー
をサポートし、他の入力及び出力ポートはちょうど2個
のフローをサポートする。各フローは同じレートでトラ
フィックを生成するため、半数のポートはレートλで負
荷を受け、他の半数は2λで負荷を受ける。シミュレー
ションの開始時のフローを生成するため、2個のランダ
ム置換を使用して、N!個の可能性のそれぞれを等確率
で選択する。重い負荷の入力ポートに対しては、置換に
よって定義される両方のフローを使用する。軽い負荷の
入力ポートに対しては、フローを定義するのに第1の置
換のみを用いる。
The order of an input port refers to the number of output ports to which it is matched. Similarly, the order of an output port is the number of input ports to which it is matched. The aforementioned U.S. patent application and Japanese Patent Application No. 11-2446.
Low-order , unbalanced traffic patterns, such as those described in No. 48, are considered exemplary traffic types. This traffic type is a generalization of the traffic pattern described in McKeown et al. McKe
Although the traffic pattern described in own is allowed, the queue grows indefinitely when the scheduling method is MBM (Nick McKeown, Venkat Anantha
ram, and Jean Walrand, "Achieving 100% throughput i
n an input-queued switch ", In Proceedings IEEE INF
OCOM'96, p.296-302, San Francisco, CA, March 199
6, see). For the current simulation, half the input ports and half the output ports support exactly one flow, and the other input and output ports support exactly two flows. Since each flow generates traffic at the same rate, half of the ports are loaded at rate λ and the other half are loaded at 2λ. Using two random permutations to generate a flow at the start of the simulation, N! Each of the individual possibilities is selected with equal probability. For heavily loaded input ports, use both flows defined by permutation. For lightly loaded input ports, only the first permutation is used to define the flow.

【0077】サイズN=4及びN=8のスイッチについ
て考える。完全を期すため、使用する実際のレート行列
を示す。(i,j)成分は、入力ポートiから出力ポー
トjへのレートを表す。実トラフィックに対するレート
行列をαNで表す。ブランク(ダミー)に対するレート
行列をβNで表す。全レート行列をγN=αN+βNで表
す。なお、αNは、前段落に記載したように生成され、
βNは、前述のセクションIVB.1に記載したように
αNから計算される。
Consider a switch of size N = 4 and N = 8. For completeness, we show the actual rate matrix used. The (i, j) component represents the rate from input port i to output port j. Let α N be the rate matrix for real traffic. The rate matrix for the blank (dummy) is denoted by β N. The total rate matrix is represented by γ N = α N + β N. Note that α N is generated as described in the previous paragraph,
β N is defined in section IVB. Calculated from α N as described in 1.

【0078】サイズN=4の場合、γ4=α4+β4、す
なわち、
When the size N = 4, γ 4 = α 4 + β 4 , that is,

【0079】[0079]

【数1】 である。(Equation 1) It is.

【0080】サイズN=8の場合、γ8=α8+β8、す
なわち、
When the size N = 8, γ 8 = α 8 + β 8 , that is,

【0081】[0081]

【数2】 である。(Equation 2) It is.

【0082】0≦λ≦1/2の範囲を考える。任意のポ
ートに対する最大負荷は2λであるため、2λをシミュ
レーションのレートと呼ぶ。
Consider a range of 0 ≦ λ ≦ 1/2. Since the maximum load on any port is 2λ, 2λ is called the simulation rate .

【0083】実験は、特定のコンフィグレーションに対
する安定性の最大レートを経験的に評価しようとするも
のである。ただし、コンフィグレーションは、スイッチ
サイズ、スケジューリング方法、及びトラフィックパタ
ーンからなる。正式な用語ではないが、入力キューが無
制限に成長しない場合に、コンフィグレーションは安定
であるという。安定性の経験的定義は以下の通りであ
る:入力キューサイズの総和が、ある一定の時間ステッ
プ数Tのうちに、ある一定の上限Qより大きく成長しな
い場合、コンフィグレーションは安定であると宣言され
る。なお、Qの増大あるいはTの減少は、一部のコンフ
ィグレーションの実験的安定性の範囲を増大させる効果
を有することがある。また、QまたはTのいずれかを増
大させることは、シミュレーション時間を増大させるこ
とがある。我々の実験では、Q=16N2個のセルと、
T=256N2を使用する。安定性実験は、我々の安定
性基準が破られるまでにコンフィグレーションが動作可
能な最大レートを決定する。このような安定性実験は非
常に長くなることがあるため、離脱条件を追加する。
1,000ステップごとにキューサイズの総和をチェッ
クする。この総和が前回のチェック以来成長していない
場合、システムは安定であると仮定される。
The experiment seeks to empirically evaluate the maximum rate of stability for a particular configuration. However, the configuration includes a switch size, a scheduling method, and a traffic pattern. Although not a formal term, a configuration is said to be stable if the input queue does not grow indefinitely. An empirical definition of stability is as follows: if the sum of the input queue sizes does not grow larger than a certain upper limit Q within a certain number of time steps T, the configuration is declared stable. Is done. Note that increasing Q or decreasing T may have the effect of increasing the experimental stability range of some configurations. Also, increasing either Q or T may increase simulation time. In our experiment, Q = 16N 2 cells,
Use T = 256N 2 . Stability experiments determine the maximum rate at which a configuration can operate before our stability criteria are violated. Since such stability experiments can be very long, we add extra departure conditions.
Check the total queue size every 1,000 steps. If this sum has not grown since the last check, the system is assumed to be stable.

【0084】表1に実験結果を示す。9個のスケジュー
リング方法に対して、安定性のレートが、ブランクなし
の4個のポート、ブランクありの4個のポート、ブラン
クなしの8個のポート、ブランクありの8個のポートに
対してテストされている。スケジューリング方法は、3
つのクラス、すなわち、MBM、高品質MBMヒューリ
スティックス、及び低品質MBMヒューリスティックス
にグループ分けされている。ヒューリスティックスの品
質とは、ブランクを追加する前のもとのトラフィックに
対するMBMの挙動をどのくらいよく近似するかをい
う。安定性レートがΛより低いヒューリスティックス
は、ここでの考察の目的では低品質として特徴づけられ
る。反復法はすべて4回(4イタレーション)実行し
た。
Table 1 shows the experimental results. Stability rate tested against 4 ports without blank, 4 ports with blank, 8 ports without blank, 8 ports with blank for 9 scheduling methods Have been. The scheduling method is 3
It is grouped into two classes: MBM, high quality MBM heuristics, and low quality MBM heuristics. Heuristic quality refers to how well the MBM behaves with respect to the original traffic before adding the blank. Heuristics with a stability rate lower than Λ are characterized as poor quality for the purposes of this discussion. All iterative methods were performed four times (4 iterations).

【0085】主要な結果は表の第1行に示されている。
N=4の場合、MBMは、ブランクなしでΛまで安定で
あり、ブランクありで100%まで安定である。N=8
の場合、ブランクの使用は安定性レートを93%から1
00%に上昇させる。
The main results are shown in the first row of the table.
For N = 4, MBM is stable up to な し without blank and up to 100% stable with blank. N = 8
In the case of, the use of a blank increases the stability rate from 93% to 1
Increase to 00%.

【0086】次のスケジューリング方法のクラス(これ
は、PIM−SHAKE−4、RND−SHAKE−
4、RRRND−SHAKE−4、及びSLIP−SH
AKE−4を含む。)は、高品質ヒューリスティックス
とみなされる。このクラスのヒューリスティックスの場
合、ブランクの使用により全般的に改善が見られる。代
表的な改善は、4ポートでは安定性93%から安定性9
8%への改善であり、8ポートでは安定性90%から安
定性92%への改善である。なお、これらの方法が、N
=4のブランクなしの場合にMBMよりも良好に動作す
ることは、この例については説明することができるが、
一般には成り立たない。これらのヒューリスティックス
は、2部グラフにおいて接続している辺が多いノードの
ほうに偏る。これは、これらの例にとって有利である。
というのは、2本の辺を有するノードは2倍の帯域をサ
ポートする必要があるからである。
The next class of scheduling method (this is PIM-SHAKE-4, RND-SHAKE-
4, RRRND-SHAKE-4, and SLIP-SH
AKE-4. ) Are considered high quality heuristics. For this class of heuristics, the use of blanks generally improves. Typical improvements are 93% stability to 9 stability at 4 ports
This is an improvement to 8%, and an improvement from 90% stability to 92% stability at 8 ports. In addition, these methods are N
Performing better than MBM without = 4 blanks can be explained for this example,
Generally not. These heuristics are biased towards nodes with more connected edges in a bipartite graph. This is advantageous for these examples.
This is because a node with two edges needs to support twice the bandwidth.

【0087】[0087]

【表1】 [Table 1]

【0088】最後のスケジューリング方法のクラスは、
比較的低品質のMBMヒューリスティックスである。こ
のクラスは、PIM−4、RND−4、RR−RND、
及びSLIP−4を含む。一般に、これらの方法は、ブ
ランクを使用するとわずかにパフォーマンスが悪くな
り、いずれのスイッチサイズの場合でも安定性レートが
88%から86%に低下する。SLIP−4は例外であ
る。SLIP−4の場合の100%のスループットは、
我々のトラフィックフロー例が与えられれば、予測する
ことができる。優先度ホイールが完全に同期することに
より、100%のスループットが可能となる。しかし、
SLIP−4は、この例における平衡トラフィックでは
問題がある。一般に、SLIPは、多くの低次数トラフ
ィックパターンに対して高品質の解を達成するのは困難
であることを示すことができる(前述の米国特許出願及
び特願平11−244648号を参照)。この実験にお
いてブランクなしのSLIPの良好なパフォーマンス
は、単純なトラフィックパターンによる見かけ上の結果
である。
The last class of scheduling method is:
Relatively low quality MBM heuristics. This class includes PIM-4, RND-4, RR-RND,
And SLIP-4. In general, these methods perform slightly worse with blanks and the stability rate drops from 88% to 86% for all switch sizes. SLIP-4 is an exception. The 100% throughput for SLIP-4 is:
Given our example traffic flow, we can predict. Full synchronization of the priority wheels allows for 100% throughput. But,
SLIP-4 is problematic with balanced traffic in this example. In general, SLIP can show that it is difficult to achieve a high quality solution for many low order traffic patterns (see the aforementioned US patent application and Japanese Patent Application No. 11-244648). The good performance of SLIP without blank in this experiment is an apparent result with simple traffic patterns.

【0089】本発明の他の変形例は、当業者には以上の
説明から明らかである。本発明のいくつかの実施例につ
いてのみ具体的に説明したが、本発明の技術思想及び技
術的範囲から離れることなく、さまざまな変形が可能で
あることは明らかである。
[0089] Other modifications of the present invention will be apparent to those skilled in the art from the foregoing description. Although only some embodiments of the present invention have been specifically described, it is apparent that various modifications can be made without departing from the technical spirit and scope of the present invention.

【0090】[0090]

【発明の効果】以上詳細に説明したように、本発明によ
るスケジューリング方法によれば、まず、1つのポート
を最大のセル到着レートを有するとして識別し、次に全
てのポートに対する到着レートがほぼ等しくなるよう
に、最大のセル到着レートを有するとして識別されたポ
ート以外のすべてのポートにダミーセルを追加する。こ
うすることで、MWBM(最大重み2部マッチング)ス
ケジューラの優れた安定性を達成することができるとと
もに、より単純なMBM(最大サイズ2部マッチング)
またはMBMベースのヒューリスティックスを実行する
ことができる。
As described in detail above, according to the scheduling method of the present invention, one port is first identified as having the highest cell arrival rate, and then the arrival rates for all ports are substantially equal. As such, add dummy cells to all ports except those identified as having the highest cell arrival rate. In this way, excellent stability of the MWBM (Maximum Weighted Bipartite Matching) scheduler can be achieved and a simpler MBM (Maximum Size Bipartite Matching) can be achieved.
Or MBM-based heuristics can be performed.

【図面の簡単な説明】[Brief description of the drawings]

【図1】スケジューリング問題の2部グラフを説明する
ための模式図である。
FIG. 1 is a schematic diagram for explaining a bipartite graph of a scheduling problem.

【図2】仮想出力キューイング(VOQ)をサポートす
るN=4のクロスバスイッチの模式的構成図である。
FIG. 2 is a schematic configuration diagram of an N = 4 crossbar switch that supports virtual output queuing (VOQ).

【図3】不平衡フローのスイッチの一例を示す模式図で
ある。
FIG. 3 is a schematic diagram illustrating an example of an unbalanced flow switch.

【図4】本発明の一実施形態における充填コンポーネン
トによるダミーフローの生成後の、図3のトラフィック
の新しいレートを示す模式図である。
FIG. 4 is a schematic diagram illustrating a new rate of the traffic of FIG. 3 after generation of a dummy flow by a filling component in one embodiment of the present invention.

【図5】本発明によるさらに好ましい実施形態であり、
生成コンポーネントのカウンタベースでの実現を示す模
式図である。
FIG. 5 is a further preferred embodiment according to the invention,
FIG. 3 is a schematic diagram illustrating a counter-based implementation of a generation component.

【図6】本発明によるシューティングブランクス・スイ
ッチの好ましい実施例を示す概略的構成図である。
FIG. 6 is a schematic block diagram showing a preferred embodiment of a shooting blank switch according to the present invention.

【図7】本発明によるシューティングブランクス・スイ
ッチを用いたネットワークシステムの好ましい実施例を
示す模式図である。
FIG. 7 is a schematic diagram showing a preferred embodiment of a network system using a shooting blank switch according to the present invention.

【符号の説明】[Explanation of symbols]

6.11〜6.14 入力ポート 6.21〜6.24 出力ポート 6.3 レート識別器 6.4 充填決定器 6.5 ダミーセル生成器 6.6 スケジューラ 6.711〜6.714 キュー 7.1 ネットワークシステム 7.21〜7.23 シューティングブランクススイッ
6.11 to 6.14 Input port 6.21 to 6.24 Output port 6.3 Rate discriminator 6.4 Filling determiner 6.5 Dummy cell generator 6.6 Scheduler 6.711 to 6.714 queue 7. 1 Network System 7.21 to 7.23 Shooting Blanks Switch

───────────────────────────────────────────────────── フロントページの続き (72)発明者 スタフロス・コリオパロス アメリカ合衆国、ニュージャージー 08540 プリンストン、4 インディペ ンデンス ウエイ、エヌ・イー・シー・ リサーチ・インスティテュートゥ・イン ク内 (72)発明者 サティシ・ラオ アメリカ合衆国、ニュージャージー 08540 プリンストン、4 インディペ ンデンス ウエイ、エヌ・イー・シー・ リサーチ・インスティテュートゥ・イン ク内 (56)参考文献 特開 平2−164158(JP,A) 特開 平10−322388(JP,A) IEEE/ACM Transact ions on Networking Vol.7 No.2 p188−201 Globecom’99 p1203−1210 (58)調査した分野(Int.Cl.7,DB名) H04L 12/56 H04L 12/28 ──────────────────────────────────────────────────の Continuing on the front page (72) Inventor Staflors Corioparos United States, New Jersey 08540 Princeton, 4 Independence Way, NAC Research Institute, Inc. New Jersey 08540 Princeton, 4 Independence Way, NEC Research Institute, Inc. (56) References JP-A-2-164158 (JP, A) JP-A-10-322388 (JP, A) IEEE / ACM Transactions on Networking Vol. 7 No. 2 p188-201 Globecom'99 p1203-1210 (58) Fields investigated (Int. Cl. 7 , DB name) H04L 12/56 H04L 12/28

Claims (17)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 M個の入力ポート及びN個の出力ポート
を有し、前記M個の入力ポートと前記N個の出力ポート
の間でセルがルーティングされ、前記セルはポートのサ
ブセットごとに異なるレートで到着し、前記M個の入力
ポートはそれぞれN個のキューを有することにより全部
でM×N個のキューが存在するスイッチのルーティング
方法において、 (a)最大のセル到着レートを有する1つのポートを識
別するステップと、 (b)すべての入力ポート及び出力ポートに対する到着
レートがほぼ等しくなるように、最大のセル到着レート
を有するとして識別された入力ポートまたは出力ポート
以外のすべての入力ポート及び出力ポートにダミーセル
を追加するステップと、 (c)キュー長を考慮しないスケジューリング法を使用
するステップと を有し、 前記ステップ(a)において、前記M個の入力ポートの
うちの1つの入力ポートに対する到着レートは、当該1
つの入力ポートに関連するN個のキューの到着レートの
和であり、前記N個の出力ポートのうちの1つの出力ポ
ートに対する到着レートは、前記M個の入力ポートの各
入力ポートから当該1つの出力ポートへの到着レートの
和である、 ことを特徴とするルーティング方法。
1. An apparatus comprising: M input ports and N output ports, wherein cells are routed between the M input ports and the N output ports, wherein the cells are different for each subset of ports. The M input ports have N queues each, so that there are a total of M × N queues in the switch routing method: (a) one with the maximum cell arrival rate (B) identifying all input and output ports except the input or output port identified as having the maximum cell arrival rate such that the arrival rates for all input and output ports are approximately equal; Adding a dummy cell to the output port; and (c) using a scheduling method that does not consider the queue length. Has, in the step (a), the arrival rate for one of the input ports of the M input ports, the 1
Is the sum of the arrival rates of the N queues associated with one input port, and the arrival rate for one of the N output ports is one for each of the M input ports. A routing method, which is a sum of arrival rates at output ports.
【請求項2】 前記ステップ(b)は、 (b.1)すべてのポートに対する到着レートが等しく
なるように適当なキューに対するダミーフローを決定し
て充填を実行するステップと、 (b.2)前記ステップ(b.1)で決定された到着レ
ートでダミーセルの生成を実行するステップと、を有する ことを特徴とする請求項記載の方法。
2. The step (b) comprises: (b.1) determining a dummy flow for an appropriate queue such that arrival rates for all ports are equal, and executing filling; and (b.2). the method according to claim 1, characterized by having the steps of: performing the generation of the dummy cell arrival rate determined the in step (b.1).
【請求項3】 前記ステップ(b.1)の充填は、 (b.1.1)ポートのうちで最大到着レートΛのもの
を識別するステップと、 (b.1.2)入力ポートiと出力ポートjの間のパケ
ット伝送レートγijを、初期伝送レートαijに初期化す
るステップと、 (b.1.3)入力ポートポインタ及び出力ポートポイ
ンタを1に初期化するステップと、 (b.1.4)入力ポートiの到着レートRi及び出力
ポートjの到着レートSjがΛより小さくなるまで、前
記入力ポートポインタ及び前記出力ポートポインタをイ
ンクリメントするステップと、 (b.1.5)iとjの間のフローに対するダミーセル
を、RiがSj以上である場合はレートβij=Λ−R
iで、それ以外の場合はレートβij=Λ−Sjで、追加す
るステップと、 (b.1.6)目標到着レートγijをγij+βijに更新
するステップと、 (b.1.7)すべてのポートについて前記ステップ
(b.1.4)〜(b.1.6)を繰り返すステップ
と、を有する ことを特徴とする請求項記載の方法。
3. The filling of the step (b.1) includes: (b.1.1) identifying a port having a maximum arrival rate Λ among the ports; and (b.1.2) input port i. Initializing the packet transmission rate γ ij between the output ports j to the initial transmission rate α ij ; (b.1.3) initializing the input port pointer and the output port pointer to 1; .1.4) until the arrival rate S j arrival rate R i and the output port j of the input port i is smaller than lambda, incrementing the input ports pointer and said output port pointer, (B.1.5 ) A dummy cell for the flow between i and j, and a rate β ij = Λ−R when R i is equal to or greater than S j.
i , otherwise at rate β ij = Λ−S j , adding: (b.1.6) updating target arrival rate γ ij to γ ij + β ij , (b.1) the method according to claim 2, comprising the steps of: .7) for all the ports repeating the step (b.1.4) ~ (b.1.6).
【請求項4】 前記ステップ(b.2)の生成は、目標
到着レートが満たされるように各入力ポートにおいてダ
ミーセルを生成し且つ実セルが入力ポートに到着してい
るときには当該実セルを対応するダミーセルにピギーバ
ックすることによって実行され、 各キューは、該キューにおいて伝送のためにキューイン
グしているダミーセルの数に対応するクレジット値を保
持し、 スケジューラは、前記クレジット値が1以上であるとき
に、特定のキュー内のセルについて知らされ、当該特定
のキューが選択されると前記クレジット値は1だけデク
リメントされることを特徴とする請求項記載の方法。
4. The step (b.2) includes generating a dummy cell at each input port so that a target arrival rate is satisfied, and corresponding to the real cell when the real cell arrives at the input port. Implemented by piggybacking on dummy cells, wherein each queue holds a credit value corresponding to the number of dummy cells queued for transmission in the queue, and the scheduler determines when the credit value is greater than one. 3. The method according to claim 2 , wherein the credit value is decremented by 1 when a cell in a particular queue is informed and the particular queue is selected.
【請求項5】 ダミーセルを実際に生成する代わりに、
スケジューラの計算上、ダミーセルが存在するものとし
、各入力キューが、前記クレジット値に等しい数であ
ってiからjへの伝送のためにキューイングしているダ
ミーセルの数に対応する数dijを保持し、 前記数dij及び前記クレジット値は、各時間ステップご
とに、確率γijでインクリメントされることを特徴とす
る請求項記載の方法。
5. Instead of actually generating a dummy cell ,
According to the scheduler calculation, it is assumed that a dummy cell exists.
Te, each input queue, said a number equal to the credit value holds the number d ij corresponding to the number of dummy cells that are queued for transmission from i to j, the number of d ij and the credit 5. The method of claim 4 , wherein the value is incremented at each time step with a probability [gamma] ij .
【請求項6】 iとjの間のコネクションが許可された
ときに、実セルがiとjの間の伝送のためにキューイン
グされている場合には、該実セルが伝送され、dijが1
だけデクリメントされることを特徴とする請求項記載
の方法。
6. When a connection between i and j is granted, if a real cell is queued for transmission between i and j, the real cell is transmitted and d ij Is 1
6. The method according to claim 5 , wherein the value is decremented only.
【請求項7】 ダミーセルを実際に生成する代わりに、
スケジューラの計算上、ダミーセルが存在するものとし
、各入力キューは数cijを保持し、 前記数cijは、前記クレジット値に等しく、 前記数cij及び対応するクレジット値は、iからjへの
伝送のためにキューイングされるダミーセルの数に対応
する浮動小数点数であり、 前記数cij及び前記クレジット値は、各時間ステップご
とに、0と1の間の小数をとるγijだけインクリメント
されることを特徴とする請求項記載の方法。
7. Instead of actually generating a dummy cell ,
According to the scheduler calculation, it is assumed that a dummy cell exists.
Te, dummy cells each input queue holds the number c ij, the number c ij is equal to the credit value, the number c ij and the corresponding credit values, to be queued for transmission from i to j a floating point number corresponding to the number of the number c ij and the credit value, claim 4 for each time step, characterized in that it is incremented by gamma ij taking the fraction between 0 and 1 The described method.
【請求項8】 iとjの間のコネクションが許可された
ときに、実セルがiとjの間の伝送のためにキューイン
グされている場合には、該実セルが伝送されることを特
徴とする請求項記載の方法。
8. When the connection between i and j is granted, if the real cell is queued for transmission between i and j, the real cell is transmitted. The method according to claim 7, characterized in that:
【請求項9】 cij≧1の場合、または、実セルがiと
jの間のキューに存在する場合、該キューは、キューi
とjの間でセルを伝送することができることをスケジュ
ーラに通知することを特徴とする請求項記載の方法。
9. If c ij ≧ 1, or if a real cell exists in a queue between i and j, the queue is
8. The method according to claim 7 , wherein the scheduler is notified that a cell can be transmitted between and j.
【請求項10】 シューティングブランクス・スイッチ
において、 M+N個のポートと、レート識別器と、充填決定器と、
ダミーセル生成器と、スケジューラとを有し、 前記ポートは、M個の入力ポート及びN個の出力ポート
からなり、該M個の入力ポートと該N個の出力ポートの
間でセルがルーティングされ、該セルは、ポートのサブ
セットごとに異なるレートで到着し、前記M個の入力ポ
ートはそれぞれN個のキューを有することにより、全部
でM×N個のキューが存在し、 前記レート識別器は、最大のセル到着レートを有する1
つのポートを識別し、前記M個の入力ポートのうちの1
つの入力ポートに対する到着レートは、該1つの入力ポ
ートのN個のキューに対する到着レートの和であり、前
記N個の出力ポートのうちの1つの出力ポートに対する
到着レートは、前記M個の入力ポートのそれぞれから該
1つの出力ポートへの到着レートの和であり、 前記充填決定器は、すべてのポートに対する到着レート
が等しくなるように適当なキューに対するダミーフロー
を決定し、 前記ダミーセル生成器は、前記充填決定器によって決定
された到着レートでダミーセルを生成し、 前記スケジューラはキュー長を考慮しない、 ことを特徴とするシューティングブランク・ススイッ
チ。
10. A shooting blank switch, comprising: M + N ports, a rate discriminator, a filling determiner,
A dummy cell generator and a scheduler, wherein the port comprises M input ports and N output ports, wherein cells are routed between the M input ports and the N output ports; The cells arrive at different rates for each subset of ports, and the M input ports each have N queues, so that there are a total of M × N queues, 1 with the highest cell arrival rate
One of the M input ports.
The arrival rate for one input port is the sum of the arrival rates of the one input port for the N queues, and the arrival rate for one of the N output ports is the M input ports. , The sum of the arrival rates at the one output port from each of the ports, the filling determiner determines a dummy flow for an appropriate queue such that the arrival rates for all ports are equal, and the dummy cell generator includes: A shooting blank switch, wherein dummy cells are generated at an arrival rate determined by the filling determiner, and the scheduler does not consider a queue length.
【請求項11】 前記生成器は、目標到着レートが満た
されるように各入力ポートにおいてダミーセルを生成
し、実セルが入力ポートに到着しているときには該実セ
ルを対応するダミーセルにピギーバックし、 各キューは、該キューにおいて伝送のためにキューイン
グされているダミーセルの数に対応するクレジット値を
保持し、 前記スケジューラは、前記クレジット値が1以上である
ときに、特定のキュー内のセルについて知らされ、該特
定のキューが選択されると前記クレジット値は1だけデ
クリメントされる、 ことを特徴とする請求項10記載のシューティングブラ
ンクス・スイッチ。
11. The generator generates a dummy cell at each input port so that a target arrival rate is satisfied, and piggybacks the real cell to a corresponding dummy cell when a real cell is arriving at the input port. Each queue holds a credit value corresponding to the number of dummy cells queued for transmission in the queue, and the scheduler determines, for a cell in a particular queue, when the credit value is greater than one. 11. The shooting blank switch of claim 10 , wherein the credit value is decremented by one when notified and the particular queue is selected.
【請求項12】 ダミーセルを実際に生成する代わり
に、スケジューラの計算上、ダミーセルが存在するもの
として、各入力キューが数dijを保持し、前記数dij
前記クレジット値に等しく、iからjへの伝送のために
キューイングされるダミーセルの数に対応し、 前記数dijは、各時間ステップごとに、目標レートγij
に等しい確率でインクリメントされる、 ことを特徴とする請求項11記載のシューティングブラ
ンクス・スイッチ。
12. Instead of actually generating a dummy cell ,
In the scheduler calculation, there is a dummy cell
As each input queue holds the number d ij, the number of d ij corresponds to the number of dummy cells that are queued for transmission equal to the credit value, from i to j, the number of d ij is For each time step, the target rate γ ij
12. The shooting blank switch according to claim 11 , wherein the switch is incremented with a probability equal to:
【請求項13】 iとjの間のコネクションが許可され
たときに、実セルがiとjの間の伝送のためにキューイ
ングされている場合には、該実セルが伝送されることを
特徴とする請求項12記載のシューティングブランクス
・スイッチ。
13. When a connection between i and j is granted, if a real cell is queued for transmission between i and j, the real cell is transmitted. 13. The shooting blank switch according to claim 12, wherein:
【請求項14】 ダミーセルを実際に生成する代わり
に、スケジューラの計算上、ダミーセルが存在するもの
として、各入力キューは数cijを保持し、 前記数cijは、前記クレジット値に等しく、 前記数cij及び対応するクレジット値は、iからjへの
伝送のためにキューイングされるダミーセルの数に対応
する浮動小数点数であり、 前記数cijは、各時間ステップごとに、0と1の間の小
数をとるγijだけインクリメントされる、ことを特徴と
する請求項11記載のシューティングブランクス・スイ
ッチ。
14. Instead of actually generating a dummy cell ,
In the scheduler calculation, there is a dummy cell
As a dummy cell each input queue holds the number c ij, the number c ij is equal to the credit value, the number c ij and the corresponding credit values, to be queued for transmission from i to j 12. The shooting method according to claim 11 , wherein the number c ij is incremented by γ ij which takes a decimal number between 0 and 1 at each time step. Blanks switch.
【請求項15】 iとjの間のコネクションが許可され
たときに、実セルがiとjの間の伝送のためにキューイ
ングされている場合には、該実セルが伝送されることを
特徴とする請求項14記載のシューティングブランクス
・スイッチ。
15. When a connection between i and j is granted, if a real cell is queued for transmission between i and j, the real cell is transmitted. The shooting blank switch according to claim 14, characterized in that:
【請求項16】 cij≧1の場合、または、実セルがi
とjの間のキューに存在する場合、前記キューはiとj
の間でセルを伝送することができることを前記スケジュ
ーラに通知し、cijは1だけデクリメントされることを
特徴とする請求項15記載のシューティングブランクス
・スイッチ。
16. If c ij ≧ 1, or if the real cell is i
If there is a queue between j and j, the queue is i and j
The shooting blanks switch according to claim 15 , wherein the scheduler is informed that the cell can be transmitted between and the c ij is decremented by one.
【請求項17】 スイッチのサブセットが請求項10
載のシューティングブランクス・スイッチであるような
スイッチを有することを特徴とするネットワーキングシ
ステム。
17. A networking system, wherein a subset of the switches comprises switches such as the shooting blanks switches of claim 10 .
JP24491199A 1999-04-09 1999-08-31 Switch routing method and shooting blanks switch using the same Expired - Fee Related JP3175735B2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US12868599P 1999-04-09 1999-04-09
US60/128685 1999-04-09
US09/342976 1999-04-09
US34297699A 1999-06-30 1999-06-30

Publications (2)

Publication Number Publication Date
JP2000295247A JP2000295247A (en) 2000-10-20
JP3175735B2 true JP3175735B2 (en) 2001-06-11

Family

ID=26826835

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24491199A Expired - Fee Related JP3175735B2 (en) 1999-04-09 1999-08-31 Switch routing method and shooting blanks switch using the same

Country Status (1)

Country Link
JP (1) JP3175735B2 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7103051B2 (en) 2001-11-01 2006-09-05 International Business Machines Corporation QoS scheduler and method for implementing quality of service with aging time stamps
US7310345B2 (en) 2001-11-01 2007-12-18 International Business Machines Corporation Empty indicators for weighted fair queues
US7046676B2 (en) 2001-11-01 2006-05-16 International Business Machines Corporation QoS scheduler and method for implementing quality of service with cached status array
US7187684B2 (en) 2001-11-01 2007-03-06 International Business Machines Corporation Weighted fair queue having extended effective range
US7317683B2 (en) 2001-11-01 2008-01-08 International Business Machines Corporation Weighted fair queue serving plural output ports
US6982986B2 (en) 2001-11-01 2006-01-03 International Business Machines Corporation QoS scheduler and method for implementing quality of service anticipating the end of a chain of flows
US7280474B2 (en) 2001-11-01 2007-10-09 International Business Machines Corporation Weighted fair queue having adjustable scaling factor
US6973036B2 (en) 2001-11-01 2005-12-06 International Business Machines Corporation QoS scheduler and method for implementing peak service distance using next peak service time violated indication
US7257124B2 (en) 2002-03-20 2007-08-14 International Business Machines Corporation Method and apparatus for improving the fairness of new attaches to a weighted fair queue in a quality of service (QoS) scheduler
US7680043B2 (en) 2002-03-20 2010-03-16 International Business Machines Corporation Network processor having fast flow queue disable process
CA2592448C (en) * 2005-01-26 2013-01-15 Kenneth Kerpez Capacity management system for passive optical networks
KR101993028B1 (en) * 2015-02-05 2019-06-26 에스케이하이닉스 주식회사 Memory controller
CN113271265B (en) * 2021-05-25 2022-11-08 中国信息安全测评中心 Request queue dynamic adjustment method and related equipment

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Globecom’99 p1203−1210
IEEE/ACM Transactions on Networking Vol.7 No.2 p188−201

Also Published As

Publication number Publication date
JP2000295247A (en) 2000-10-20

Similar Documents

Publication Publication Date Title
Chuang et al. Practical algorithms for performance guarantees in buffered crossbars
Chang et al. Load balanced Birkhoff–von Neumann switches, part I: One-stage buffering
JP3175735B2 (en) Switch routing method and shooting blanks switch using the same
Neely et al. Logarithmic Delay for $ N\times N $ Packet Switches Under the Crossbar Constraint
US20060285548A1 (en) Matching process
Kesselman et al. Improved competitive performance bounds for CIOQ switches
Lin et al. The concurrent matching switch architecture
JP3166766B2 (en) Queuing method, queuing system routing method, and shake-up switch using the same
Yang et al. An efficient scheduling algorithm for CIOQ switches with space-division multiplexing expansion
Szymanski A low-jitter guaranteed-rate scheduling algorithm for packet-switched ip routers
Park et al. NN based ATM cell scheduling with queue length-based priority scheme
Gong et al. Queue-proportional sampling: A better approach to crossbar scheduling for input-queued switches
Fayyazi et al. Parallel maximum weight bipartite matching algorithms for scheduling in input-queued switches
Levy et al. Dynamic allocation of resources to virtual path agents
Li et al. Enhanced Birkhoff–von Neumann decomposition algorithm for input queued switches
EP1065845A2 (en) Shooting blanks method for high throughput in input-queued switches
Xia et al. On practical stable packet scheduling for bufferless three-stage Clos-network switches
Nong et al. Efficient scheduling of variable-length IP packets on high-speed switches
Tabatabaee et al. MNCM: a critical node matching approach to scheduling for input buffered switches with no speedup
Minagar et al. The optimized prioritized iSLIP scheduling algorithm for input-queued switches with ability to support multiple priority levels
Pousada-Carballo et al. High performance real-time neural scheduler for ATM switches
Durković et al. Packet Switch Architecture For Efficient Unicast and Multicast Traffic Switching
Song et al. Integrated Queuing and Scheduling for Unicast and Multicast Traffic in Input-Queued Packet Switches
Koksal et al. Rate quantization and service quality for variable rate traffic over single crossbar switches
Yoshigoe Rate-based Flow-control for the CICQ Switch

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010306

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

Free format text: PAYMENT UNTIL: 20080406

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090406

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100406

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110406

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20120406

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20120406

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20130406

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20130406

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20140406

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees