JP2000349765A - Packet exchanger, switch control method therefor, and storage medium storing switch control program - Google Patents

Packet exchanger, switch control method therefor, and storage medium storing switch control program

Info

Publication number
JP2000349765A
JP2000349765A JP16019099A JP16019099A JP2000349765A JP 2000349765 A JP2000349765 A JP 2000349765A JP 16019099 A JP16019099 A JP 16019099A JP 16019099 A JP16019099 A JP 16019099A JP 2000349765 A JP2000349765 A JP 2000349765A
Authority
JP
Japan
Prior art keywords
output
output port
packet
input buffer
input
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
Application number
JP16019099A
Other languages
Japanese (ja)
Other versions
JP3397173B2 (en
Inventor
Masayuki Shinohara
誠之 篠原
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
Priority to JP16019099A priority Critical patent/JP3397173B2/en
Publication of JP2000349765A publication Critical patent/JP2000349765A/en
Application granted granted Critical
Publication of JP3397173B2 publication Critical patent/JP3397173B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a packet exchange which avoids generation of HOL blocking, improves throughput and reduces a buffer overflow frequency. SOLUTION: This device is equipped with input buffer parts 10-1 to 10-n which are provided by every input ports and temporarily accumulate a packet that reaches a corresponding input port, a switch exchange part 20 which controls connection of an input port and an output port and switches a packet, and a main arbiter part 30 which performs arbitration processing for deciding any of which input buffer parts 10-1 to 10-n an output permission to a specified output port is to be given to. With respect to each of the input buffer parts 10-l to 10-n and each of output ports 101-1 to 101-n, in the main arbiter part 30, a destination output port which is ready for output is compared with an output port in an empty state in the input buffer parts by specified order, the coincident input buffer parts 10-1 to 10-n and the output ports 101-1 to 101-n are coordinated to one another, and the output permission is given.

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、ATM(Asyn
chronous Transfer Mode)等の
パケット通信技術を用いて特定の入力ポートと出力ポー
トの間でパケットのスイッチングを行うパケット交換装
置及びそのスイッチ制御方法ならびにスイッチ制御プロ
グラムを格納した記憶媒体に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an ATM (Asyn)
The present invention relates to a packet switching apparatus that performs packet switching between a specific input port and an output port using a packet communication technique such as a chronous transfer mode, a switch control method thereof, and a storage medium storing a switch control program.

【0002】[0002]

【従来の技術】図16は従来のパケット交換装置の構成
を示すブロック図、図17は従来のパケット交換装置の
動作を説明する図である。従来、この種のパケット交換
装置は、図16に示すように、入力ポート100−1〜
100−n(入力ポート100−3〜100−nは図示
せず)に到着したパケットを一時的に蓄積する入力バッ
ファ部1610−1〜1610−n(入力バッファ部1
610−3〜1610−nは図示せず)と、パケットを
スイッチングするスイッチ交換部1620と、アービタ
部1630とを備える。
2. Description of the Related Art FIG. 16 is a block diagram showing the configuration of a conventional packet switching device, and FIG. 17 is a diagram for explaining the operation of the conventional packet switching device. Conventionally, this type of packet switching device has input ports 100-1 to 100-1 as shown in FIG.
Input buffer units 1610-1 to 1610-n (input buffer unit 1) for temporarily storing packets arriving at 100-n (input ports 100-3 to 100-n are not shown).
610-3 to 1610-n are not shown), a switch switching unit 1620 for switching packets, and an arbiter unit 1630.

【0003】スイッチ交換部1620の構成としては、
格子状にはりめぐらされた伝送路の交叉点を開閉する
(ON/OFFする)構成が考えられる。この構成で
は、複数の入力ポートが特定の出力ポートに対して同時
にパケットを送信すると、パケット衝突が発生してパケ
ットが運ぶデータが破壊されてしまうので、同一タイミ
ングでは特定の出力ポートへパケットを送信する入力ポ
ートを高々一つに制限する必要がある。
[0003] The structure of the switch exchange unit 1620 is as follows.
A configuration that opens and closes (turns on / off) the crossing point of a transmission line that is routed in a grid pattern is conceivable. In this configuration, if multiple input ports transmit packets to a specific output port at the same time, packet collision occurs and the data carried by the packet is destroyed, so packets are transmitted to a specific output port at the same timing It is necessary to limit the number of input ports to be used to at most one.

【0004】各入力ポート100−1〜100−n毎に
用意される入力バッファ部1610−1〜1610−n
は、それぞれ単一の論理キュー1611を備えている。
入力ポート100−1〜100−nに到着するパケット
を論理キュー1611の最後尾に蓄積すると共に、論理
キュー1611の先頭から順にスイッチ交換部1620
へ送出する。入力バッファ部1610−1〜1610−
nは、どの出力ポート101−1〜101−1n(出力
ポート101−3〜101−nは図示せず)にパケット
を出力したいかを記述した出力要求信号1650をアー
ビタ部1630に発信する。
Input buffer sections 1610-1 to 1610-n prepared for each of the input ports 100-1 to 100-n
Have a single logical queue 1611 respectively.
Packets arriving at the input ports 100-1 to 100-n are stored at the end of the logical queue 1611, and the switch switching unit 1620 is sequentially arranged from the head of the logical queue 1611.
Send to Input buffer units 1610-1 to 1610-
n transmits to the arbiter unit 1630 an output request signal 1650 describing which output port 101-1 to 101-1n (output port 101-3 to 101-n is not shown) the packet is to be output.

【0005】アービタ部1630は、パケット衝突が発
生しないように、スイッチ交換部1620のどの入出力
ポート間でパケットをスイッチングするかを決定すると
共に、調停結果を出力許可信号1651により入力バッ
ファ部1610−1〜1610−nに知らせる。
The arbiter unit 1630 determines which of the input / output ports of the switch switching unit 1620 should switch the packet so that packet collision does not occur, and notifies the arbitration result by the output enable signal 1651 to the input buffer unit 1610-1. 1 to 1610-n.

【0006】次に、従来技術の動作を説明する。まず、
入力ポート100−1〜100−nに到着したパケット
は、論理キュー1611の最後尾に蓄積される。入力バ
ッファ部1610−1〜1610−nは、論理キュー1
611の先頭パケットのヘッダ情報から、当該パケット
がどの出力ポート101−1〜101−nを宛先として
いるかを把握し、出力要求信号1650により、アービ
タ部1630に対して当該宛先である出力ポート101
−1〜101−1nへの出力要求を通知する。
Next, the operation of the prior art will be described. First,
Packets arriving at the input ports 100-1 to 100-n are accumulated at the end of the logical queue 1611. The input buffer units 1610-1 to 1610-n are connected to the logical queue 1
From the header information of the first packet 611, it is determined which output port 101-1 to 101-n the packet is addressed to, and the output request signal 1650 tells the arbiter unit 1630 the output port 101 that is the destination.
-1 to 101-1n are notified of an output request.

【0007】アービタ部1630は、全ての入力バッフ
ァ部1610−1〜1610−nからの出力要求信号1
650を総合して、複数の入力バッファ部1610−1
〜1610−nから同一の出力ポート101−1〜10
1−nに対する出力要求がある場合(競合発生時)に
は、どれか一つの入力バッファ部1610−1〜161
0−nのみに出力許可を与えるように調停を行う。
The arbiter unit 1630 outputs the output request signals 1 from all the input buffer units 1610-1 to 1610-n.
650, a plurality of input buffer units 1610-1
To the same output port 101-1 to 1010-n
If there is an output request for 1-n (when a conflict occurs), any one of the input buffer sections 1610-1 to 1610-1
Arbitration is performed so that output permission is given only to 0-n.

【0008】所定の出力ポート101−1〜101−n
に対して一つの入力バッファ部1610−1〜1610
−nからの出力要求しかない場合、当該出力ポート10
1−1〜101−nに対する出力許可は、当該の入力バ
ッファ部1610−1〜1610−nに与える。
[0008] Predetermined output ports 101-1 to 101-n
Input buffer units 1610-1 to 1610
-N, there is only an output request from the output port 10
The output permission for 1-1 to 101-n is given to the input buffer units 1610-1 to 1610-n.

【0009】全ての出力ポート101−1〜101−n
でパケット衝突が発生しないように調停を行った後、出
力許可信号1651により、要求受諾または要求却下を
入力バッファ部1610−1〜1610−nに通知す
る。
All output ports 101-1 to 101-n
After the arbitration is performed so that the packet collision does not occur, request acceptance or rejection of the request is notified to the input buffer units 1610-1 to 1610-n by the output permission signal 1651.

【0010】要求が受け入れられた入力バッファ部16
10−1〜1610−nは、先頭パケットをスイッチ交
換部1620へ送出する。
The input buffer unit 16 for which the request has been accepted
10-1 to 1610-n send the first packet to the switch switching unit 1620.

【0011】スイッチ交換部20は、アービタ部163
0から得られる調停結果に基づいて、パケットを所定の
出力ポート101−1〜101−nへスイッチする。
The switch exchange unit 20 includes an arbiter unit 163
Based on the arbitration result obtained from 0, the packet is switched to a predetermined output port 101-1 to 101-n.

【0012】図17は、スイッチ交換部1620が四つ
の入力ポート#0〜#3と四つの出力ポート#0〜#3
との間のスイッチングを行う様子を示す図である。図1
7を参照すると、入力ポート#0の先頭パケットが出力
ポート#2への出力許可を獲得して、スイッチ交換部2
0の入力ポート#0と出力ポート#2が接続されてい
る。また、入力ポート#1と#2の先頭パケットもまた
出力ポート#2への接続を希望しているが、出力ポート
#2への出力許可を獲得していないので転送できない状
態にある。
FIG. 17 shows that the switch switching unit 1620 has four input ports # 0 to # 3 and four output ports # 0 to # 3.
FIG. 4 is a diagram showing a state in which switching is performed between and. FIG.
7, the first packet of the input port # 0 obtains the output permission to the output port # 2, and the switch exchange unit 2
0 input port # 0 and output port # 2 are connected. The first packets of the input ports # 1 and # 2 also want to connect to the output port # 2, but cannot transfer because they have not obtained the output permission to the output port # 2.

【0013】この時、入力ポート#1と#2の先頭パケ
ットの次に蓄積されたパケットに着目すれば、入力ポー
ト(#1、#2)が空き状態で、かつ宛先出力ポート
(#1、#0)も空き状態にあるにも関らず、先頭パケ
ットの閉塞により転送できない。これらのパケットの状
態は、HOL(Head Of Line)ブロッキン
グ状態と呼ばれ、スループットの劣化やバッファ溢れを
引き起こす原因となる。
At this time, paying attention to the packet stored next to the first packet of the input ports # 1 and # 2, the input ports (# 1, # 2) are empty and the destination output ports (# 1, # 2) Although # 0) is also in an empty state, it cannot be transferred due to the blockage of the first packet. The state of these packets is called a HOL (Head Of Line) blocking state, and causes deterioration in throughput and buffer overflow.

【0014】また、入力バッファ部1610−1〜16
10−nの論理キュー1611を出力ポートに対応させ
て分割し、パケットのヘッダ情報から得られる宛先出力
ポート101−1〜101−nに対応した論理キュー1
611にパケットを蓄積するように構成した場合であっ
ても、各入力バッファ部1610−1〜1610−nが
同期して出力要求を出す調停方式では、ある出力ポート
101−1〜101−nへの出力要求が却下されると他
の出力ポート101−1〜101−nに対応する論理キ
ュー1611の先頭パケットがHOLブロッキング状態
に陥ってしまい、スループットが劣化する。
Further, input buffer units 1610-1 to 1610-16
The 10-n logical queue 1611 is divided corresponding to the output port, and the logical queue 1 corresponding to the destination output ports 101-1 to 101-n obtained from the header information of the packet.
Even in the case where the packet is stored in the 611, the arbitration method in which the input buffer units 1610-1 to 1610-n synchronously issue an output request to a certain output port 101-1 to 101-n Is rejected, the leading packet of the logical queue 1611 corresponding to the other output ports 101-1 to 101-n falls into the HOL blocking state, and the throughput is degraded.

【0015】[0015]

【発明が解決しようとする課題】上述したように、従来
のパケット交換装置は、複数の入力ポートから入力した
複数のパケットが同時に同一の出力ポートへの出力許可
を要求する場合、当該出力ポートへの接続が許可されな
かった入力ポートにおいて、当該パケットに続くパケッ
トに関して、例え宛先出力ポートが空き状態であっても
転送ができないというHOLブロッキングが発生し、ス
ループットの劣化やバッファ溢れを引き起こすという欠
点が有った。
As described above, in the conventional packet switching apparatus, when a plurality of packets input from a plurality of input ports request output permission to the same output port at the same time, the packet is switched to the output port. At the input port where the connection was not permitted, HOL blocking occurs in which a packet subsequent to the packet cannot be transferred even if the destination output port is in an empty state, which causes a disadvantage that a throughput is degraded and a buffer overflows. There was.

【0016】また、入力バッファ部の論理キューを出力
ポートに対応させて分割し、宛先出力ポートに対応した
論理キューにパケットを蓄積するように構成した場合で
あっても、各入力バッファ部が同期して出力要求を出す
調停方式では、ある出力ポートへの出力要求が却下され
ると他の出力ポートに対応する論理キューの先頭パケッ
トがHOLブロッキング状態に陥ってしまい、スループ
ットが劣化するという欠点が有った。
Further, even when the logical queue of the input buffer section is divided so as to correspond to the output port and packets are stored in the logical queue corresponding to the destination output port, each input buffer section is synchronized. In the arbitration method for issuing an output request, if the output request to a certain output port is rejected, the leading packet of the logical queue corresponding to another output port falls into the HOL blocking state, and the throughput is degraded. There was.

【0017】本発明は、上記従来の欠点を解決し、HO
Lブロッキングの発生を回避して、スループットの向上
とバッファ溢れ頻度の低減を実現するパケット交換装置
及びそのスイッチ制御方法ならびにスイッチ制御プログ
ラムを格納した記憶媒体を提供することを目的とする。
The present invention solves the above-mentioned conventional drawbacks and provides a HO
It is an object of the present invention to provide a packet switching device that realizes an improvement in throughput and a reduction in buffer overflow frequency while avoiding occurrence of L-blocking, a switch control method thereof, and a storage medium storing a switch control program.

【0018】[0018]

【課題を解決するための手段】上記の目的を達成する本
発明は、パケット通信で用いられ、複数の入力ポートと
複数の出力ポートとの間でスイッチングを行うパケット
交換装置において、前記入力ポートごとに設けられ、対
応する入力ポートに到着するパケットを一時的に蓄積す
る入力バッファと、前記入力ポートと前記出力ポートと
の接続を制御してパケットを交換するスイッチ交換手段
と、前記入力バッファのうちのいずれに所定の前記出力
ポートへの出力許可を与えるかを決定する調停処理を行
うアービタとを備え、前記アービタが、前記各入力バッ
ファと前記各出力ポートとに関して、所定の順番で、前
記入力バッファにおいてパケット出力準備ができている
宛先出力ポートと空き状態の前記出力ポートとを比較
し、一致する前記入力バッファと前記出力ポートとを対
応づけて出力許可を与えることを特徴とするパケット交
換装置。
According to the present invention, there is provided a packet switching apparatus used in packet communication for switching between a plurality of input ports and a plurality of output ports. An input buffer for temporarily storing a packet arriving at a corresponding input port, a switch exchange means for controlling connection between the input port and the output port to exchange packets, and An arbiter that performs an arbitration process that determines which of the input buffers is given output permission to the output port, wherein the arbiter performs the input processing in a predetermined order with respect to the input buffers and the output ports. The destination output port ready for packet output in the buffer is compared with the empty output port, and Packet switching device characterized by providing an output permission associated buffers and said output port.

【0019】請求項2の本発明のパケット交換装置は、
前記アービタ手段が、前記各入力バッファを、予め定め
られた順序にしたがって着目し、着目中の前記入力バッ
ファに関して、予め定められた順序にしたがって前記各
出力ポートに対するパケット出力が可能かどうかを順次
検査することによりパケットの出力先の宛先である出力
ポートを決定する出力ポート選択処理を行うことを特徴
とする。
According to a second aspect of the present invention, there is provided a packet switching apparatus comprising:
The arbiter means pays attention to each of the input buffers in a predetermined order, and sequentially checks whether or not a packet output to each of the output ports is possible for the input buffer under consideration in a predetermined order. Thus, an output port selection process for determining an output port that is a destination of a packet output destination is performed.

【0020】請求項3の本発明のパケット交換装置は、
前記アービタ手段が、最初に着目する前記入力バッファ
を、前記調停処理が行われるたびに、前記入力バッファ
に着目する順序にしたがって更新し、前記出力ポート選
択処理において最初に検査対象となる前記出力ポート
を、ポート数に相当する回数の前記調停処理が行われる
たびに、前記出力ポート選択処理の検査対象とする順序
にしたがって更新することを特徴とする。
According to a third aspect of the present invention, there is provided a packet switching apparatus comprising:
The arbiter means updates the input buffer of interest first, each time the arbitration process is performed, according to the order of interest of the input buffer, and the output port to be inspected first in the output port selection process. Is updated every time the arbitration process is performed a number of times corresponding to the number of ports, in accordance with the order in which the output port selection process is to be inspected.

【0021】請求項4の本発明のパケット交換装置は、
前記アービタ手段が、前記出力ポートを、予め定められ
た順序にしたがって着目し、着目中の前記出力ポートに
関して、予め定められた順序にしたがって前記各入力バ
ッファが該着目中の出力ポートに対するパケット出力可
能かどうかを順次検査することにより該着目中の出力ポ
ートを宛先としてパケット出力を行う前記入力バッファ
を決定する入力バッファ選択処理を行うことを特徴とす
る。
According to a fourth aspect of the present invention, there is provided a packet switching apparatus comprising:
The arbiter means pays attention to the output port according to a predetermined order, and the input buffer can output a packet to the output port under consideration according to a predetermined order with respect to the output port under consideration. It is characterized in that an input buffer selecting process for determining the input buffer for outputting a packet with the output port under consideration as a destination is performed by sequentially examining whether the output port is of interest.

【0022】請求項5の本発明のパケット交換装置は、
前記アービタ手段が、最初に着目する前記出力ポート
を、前記調停処理が行われるたびに、前記出力ポートに
着目する順序にしたがって更新し、前記入力バッファ選
択処理において最初に検査対象となる前記入力バッファ
を、ポート数に相当する回数の前記調停処理が行われる
たびに、前記入力バッファ選択処理の検査対象とする順
序にしたがって更新することを特徴とする。
According to a fifth aspect of the present invention, there is provided a packet switching apparatus comprising:
The arbiter means updates the output port of interest first, each time the arbitration process is performed, according to the order of interest of the output port, and the input buffer to be inspected first in the input buffer selection process. Is updated every time the arbitration process is performed a number of times corresponding to the number of ports, in accordance with the order in which the input buffer selection process is to be inspected.

【0023】上記の目的を達成する他の本発明は、パケ
ット通信で用いられ、複数の入力ポートと複数の出力ポ
ートとの間のスイッチングを行うパケット交換装置のス
イッチ制御方法において、前記入力ポートに到着したパ
ケットを前記入力ポートに対応して設けられたバッファ
手段に一時的に蓄積し、前記各バッファ手段と前記各出
力ポートとに関して、所定の順番で、前記バッファ手段
においてパケット出力準備ができている宛先出力ポート
と空き状態の前記出力ポートとを比較し、一致する前記
入力バッファと前記出力ポートとを対応づけて出力許可
を与える調停処理を行い、前記調停処理の結果に応じ
て、前記入力ポートと前記出力ポートとの接続を制御し
てパケットを交換することを特徴とする。
Another aspect of the present invention that achieves the above object is a switch control method for a packet switching device used in packet communication and switching between a plurality of input ports and a plurality of output ports. The arriving packet is temporarily stored in buffer means provided corresponding to the input port, and the buffer means is ready for packet output in a predetermined order with respect to each buffer means and each output port. The arbitration process of comparing the destination output port with the empty output port and providing the output permission by associating the corresponding input buffer with the output port, and performing the arbitration process according to the result of the arbitration process. A packet is exchanged by controlling connection between a port and the output port.

【0024】請求項7の本発明のスイッチ制御方法は、
前記調停処理において、前記各入力バッファを、予め定
められた順序にしたがって着目し、着目中の前記入力バ
ッファに関して、予め定められた順序にしたがって前記
各出力ポートに対するパケット出力が可能かどうかを順
次検査することによりパケットの出力先の宛先である出
力ポートを決定する出力ポート選択処理を行うことを特
徴とする。
According to a seventh aspect of the present invention, there is provided a switch control method comprising:
In the arbitration processing, attention is paid to the input buffers in a predetermined order, and for the input buffer under consideration, it is sequentially checked whether packet output to each output port is possible in a predetermined order. Thus, an output port selection process for determining an output port that is a destination of a packet output destination is performed.

【0025】請求項8の本発明のスイッチ制御方法は、
前記調停処理において、最初に着目する前記入力バッフ
ァを、前記調停処理が行われるたびに、前記入力バッフ
ァに着目する順序にしたがって更新し、前記出力ポート
選択処理において最初に検査対象となる前記出力ポート
を、ポート数に相当する回数の前記調停処理が行われる
たびに、前記出力ポート選択処理の検査対象とする順序
にしたがって更新することを特徴とする。
The switch control method of the present invention according to claim 8 is
In the arbitration process, the input buffer of interest first is updated in accordance with the order of attention of the input buffer each time the arbitration process is performed, and the output port to be inspected first in the output port selection process is updated. Is updated every time the arbitration process is performed a number of times corresponding to the number of ports, in accordance with the order in which the output port selection process is to be inspected.

【0026】請求項9の本発明のスイッチ制御方法は、
前記調停処理において、前記出力ポートを、予め定めら
れた順序にしたがって着目し、着目中の前記出力ポート
に関して、予め定められた順序にしたがって前記各入力
バッファが該着目中の出力ポートに対するパケット出力
可能かどうかを順次検査することにより該着目中の出力
ポートを宛先としてパケット出力を行う前記入力バッフ
ァを決定する入力バッファ選択処理を行うことを特徴と
する。
According to a ninth aspect of the present invention, there is provided a switch control method comprising:
In the arbitration process, the output ports are focused on in accordance with a predetermined order, and the input buffers are capable of outputting packets to the focused output ports in accordance with a predetermined order with respect to the focused output port. It is characterized in that an input buffer selecting process for determining the input buffer for outputting a packet with the output port under consideration as a destination is performed by sequentially examining whether the output port is of interest.

【0027】請求項10の本発明のスイッチ制御方法
は、前記調停処理において、最初に着目する前記出力ポ
ートを、前記調停処理が行われるたびに、前記出力ポー
トに着目する順序にしたがって更新し、前記入力バッフ
ァ選択処理において最初に検査対象となる前記入力バッ
ファを、ポート数に相当する回数の前記調停処理が行わ
れるたびに、前記入力バッファ選択処理の検査対象とす
る順序にしたがって更新することを特徴とする。
According to a tenth aspect of the present invention, in the arbitration process, the arbitration process updates the output port of interest first, each time the arbitration process is performed, according to the order in which the output ports are observed. The input buffer to be inspected first in the input buffer selection processing is updated in accordance with the order to be inspected in the input buffer selection processing every time the arbitration processing is performed a number of times corresponding to the number of ports. Features.

【0028】上記の目的を達成するさらに他の本発明
は、パケット通信で用いられ、複数の入力ポートと複数
の出力ポートとの間のスイッチングを行うパケット交換
装置を制御して、スイッチングの制御を行うスイッチ制
御プログラムを格納した記憶媒体において、前記入力ポ
ートに到着したパケットを前記入力ポートに対応して設
けられたバッファ手段に一時的に蓄積し、前記各バッフ
ァ手段と前記各出力ポートとに関して、所定の順番で、
前記バッファ手段においてパケット出力準備ができてい
る宛先出力ポートと空き状態の前記出力ポートとを比較
し、一致する前記入力バッファと前記出力ポートとを対
応づけて出力許可を与える調停処理を行い、前記調停処
理の結果に応じて、前記入力ポートと前記出力ポートと
の接続を制御してパケットを交換することを特徴とす
る。
Still another aspect of the present invention to achieve the above object is to control a packet switching device used in packet communication for switching between a plurality of input ports and a plurality of output ports, thereby controlling the switching. In a storage medium storing a switch control program to be executed, packets arriving at the input port are temporarily stored in buffer means provided corresponding to the input port, and for each of the buffer means and each of the output ports, In a predetermined order,
The buffer means compares a destination output port ready for packet output with the empty output port, and performs an arbitration process for associating the input buffer and the output port with each other and giving output permission, According to a result of the arbitration process, the connection between the input port and the output port is controlled to exchange packets.

【0029】以上のように構成される本発明は、前記各
入力バッファと前記各出力ポートとに関して、所定の順
番で、前記入力バッファにおいてパケット出力準備がで
きている宛先出力ポートと空き状態の前記出力ポートと
を比較し、一致する前記入力バッファと前記出力ポート
とを対応づけて出力許可を与えることにより、複数の入
力バッファ部からの出力要求が衝突した場合に、所定の
入力バッファ部からパケットを出力できなくなるHOL
ブロッキングが発生することを回避することができる。
According to the present invention having the above-mentioned configuration, the input buffer and the output port are arranged in a predetermined order in a predetermined order with the destination output port ready for packet output in the input buffer. By comparing output ports and matching input buffers with the output ports and giving output permission, when output requests from a plurality of input buffer units collide, packets are output from a predetermined input buffer unit. Cannot be output
Blocking can be avoided.

【0030】[0030]

【発明の実施の形態】以下、図面を参照して本発明の実
施の形態について説明する。図1は、本発明の一実施形
態によるパケット交換装置の構成を示すブロック図であ
る。図1を参照すると本実施形態のパケット交換装置
は、入力ポートごとに設けられた入力バッファ部10−
1〜10−n(入力バッファ部10−3〜10−nは図
示せず)と、スイッチ交換部20、メインアービタ部3
0とを備える。なお、図1には、本実施形態における特
徴的な構成のみを記載し、他の一般的な構成については
記載を省略してある。
Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a packet switching device according to an embodiment of the present invention. Referring to FIG. 1, the packet switching apparatus according to the present embodiment includes an input buffer unit 10-10 provided for each input port.
1 to 10-n (input buffer units 10-3 to 10-n are not shown), switch switching unit 20, main arbiter unit 3
0. In FIG. 1, only the characteristic configuration of the present embodiment is described, and the description of other general configurations is omitted.

【0031】本実施形態のパケット交換装置は、例え
ば、プログラム制御されたマイクロプロセッサとラムそ
の他の内部メモリとで実現される。マイクロプロセッサ
を制御するコンピュータプログラムであるスイッチ制御
プログラムは、磁気ディスクや光ディスク、半導体メモ
リ、その他の一般的な記憶媒体に格納して提供され、内
部メモリにロードされてマイクロプロセッサを制御する
ことにより、各構成要素を実現する。
The packet switching apparatus according to the present embodiment is realized by, for example, a microprocessor controlled by a program and a RAM or other internal memory. The switch control program, which is a computer program for controlling the microprocessor, is provided by being stored in a magnetic disk, an optical disk, a semiconductor memory, or another general storage medium, and is loaded into the internal memory to control the microprocessor. Implement each component.

【0032】上記構成において、入力バッファ部10−
1〜10−nは、論理キュー11−1〜11−nと、パ
ケット入力部12と、フロー情報データベース13と、
サブアービタ部14と、パケット出力部15を備える。
入力バッファ部10−1〜10−nには、識別のための
番号が割り当てられている。本実施形態では、ポート数
をNとして、0〜N−1の整数が割り当てる。
In the above configuration, the input buffer unit 10-
1 to 10-n are logical queues 11-1 to 11-n, a packet input unit 12, a flow information database 13,
A sub arbiter unit 14 and a packet output unit 15 are provided.
Numbers for identification are assigned to the input buffer units 10-1 to 10-n. In the present embodiment, an integer from 0 to N−1 is assigned, where N is the number of ports.

【0033】入力ポート100−1〜100−n(入力
ポート100−3〜100−nは図示せず)と出力ポー
ト101−1〜101−n(出力ポート101−3〜1
01−nは図示せず)の間でパケットをスイッチングす
るスイッチ交換部20は、例えば、格子状にはりめぐら
された伝送路の交叉点を開閉する(ON/OFFする)
構成とすることができる。
Input ports 100-1 to 100-n (input ports 100-3 to 100-n are not shown) and output ports 101-1 to 101-n (output ports 101-3-1 to 101-n)
For example, the switch switching unit 20 that switches a packet between 01-n (not shown) opens and closes (turns on / off) a crossing point of a transmission line arranged in a grid.
It can be configured.

【0034】入力ポート100−1〜100−n及び出
力ポート101−1〜101−nには、識別のための番
号が割り当てられている。例えば、ポート数をNとする
と、0〜N−1の整数が割り当てられている。ただし、
入力ポートの番号と、その入力ポートに設置された入力
バッファ部の番号は一致するものとする。
Numbers for identification are assigned to the input ports 100-1 to 100-n and the output ports 101-1 to 101-n. For example, if the number of ports is N, an integer from 0 to N-1 is assigned. However,
It is assumed that the number of the input port matches the number of the input buffer unit provided at the input port.

【0035】入力バッファ部10−1〜10−nは、出
力ポート101−1〜101−nに対応して区別される
論理キュー11−1〜11−nをその内部に構築し、入
力ポート100−1〜100−nに到着するパケットを
宛先出力ポート101−1〜101−n毎に区別して蓄
積する。本実施形態では、説明の簡単化のために、論理
キュー11−1〜11−nは宛先出力ポート101−1
〜101−n別にパケットを蓄積するとしているが、フ
ロー別に蓄積する場合でも何ら変更を加えることなく本
発明を適用することができ、同一の効果が期待できる。
また、入力バッファ部10−1〜10−nに構築される
出力ポートに対応した論理キュー11−1〜11−nを
サービスクラス毎に用意することによって、容易にマル
チトラヒッククラス環境を提供することができる。本実
施形態では、説明の簡単化のために、サービスクラスが
一つである場合を想定しているが、実際には、所望のサ
ービスクラスの分だけ用意することができる。
The input buffer units 10-1 to 10-n construct therein logical queues 11-1 to 11-n which are distinguished corresponding to the output ports 101-1 to 101-n, respectively. Packets arriving at -1 to 100-n are stored separately for each of the destination output ports 101-1 to 101-n. In the present embodiment, for simplicity of explanation, the logical queues 11-1 to 11-n are connected to the destination output port 101-1.
Although it is described that the packets are stored for each of the packets 101 to 101-n, the present invention can be applied without any change even when storing the packets for each flow, and the same effect can be expected.
Also, by providing logical queues 11-1 to 11-n corresponding to output ports constructed in the input buffer units 10-1 to 10-n for each service class, a multi-traffic class environment can be easily provided. Can be. In the present embodiment, for the sake of simplicity of description, it is assumed that there is one service class, but in practice, it is possible to prepare only the number of desired service classes.

【0036】パケット入力部12は、入力ポート100
−1〜100−nに到着するパケットのヘッダ部分から
フロー識別子を抽出し、フロー識別子をキーとしてフロ
ー情報データベース13を参照することにより、当該パ
ケットが属するサービスクラスや宛先出力ポートを認識
する。そして、当該識別結果を基に適切な論理キュー1
1−1〜11−nにパケットを蓄積する。
The packet input section 12 has an input port 100
The flow identifier is extracted from the header portion of the packet arriving at -1 to 100-n, and the service class to which the packet belongs and the destination output port are recognized by referring to the flow information database 13 using the flow identifier as a key. Then, based on the identification result, an appropriate logical queue 1
Packets are stored in 1-1 to 11-n.

【0037】図2は、サブアービタ部14の構成を示す
ブロック図である。図2に示すように、サブアービタ部
14は、出力要求信号送信部141と、出力許可信号受
信部142とから構成される。
FIG. 2 is a block diagram showing the configuration of the sub-arbiter unit 14. As shown in FIG. 2, the sub-arbiter unit 14 includes an output request signal transmission unit 141 and an output permission signal reception unit 142.

【0038】出力要求信号送信部141は、出力可能な
パケットを有する論理キューについての情報、すなわち
どの出力ポートにパケットを出力する準備ができている
かを伝えるための出力要求信号50を生成して、メイン
アービタ部30に送信する。図3は、出力要求信号50
のフォーマットの一例である。本実施形態においては、
パケットを出力可能な宛先出力ポートの欄には「1」を
記述し、それ以外には「0」を記述する構成としてい
る。
The output request signal transmitting section 141 generates an output request signal 50 for transmitting information about a logical queue having a packet that can be output, that is, which output port is ready to output the packet. This is transmitted to the main arbiter unit 30. FIG. 3 shows the output request signal 50.
Is an example of the format. In the present embodiment,
“1” is described in the column of the destination output port capable of outputting a packet, and “0” is described in the other fields.

【0039】出力許可信号受信部142は、出力許可が
与えられたかどうかを示す出力許可信号51をメインア
ービタ部30から受信して、パケットを出力すべき宛先
出力ポートをパケット出力部15に通知する。図4は、
出力許可信号51のフォーマットの一例である。本実施
形態においては、出力許可信号51は、入力バッファ部
に出力許可を与えたか否かを示す情報(ACK/NAC
K)と、どの宛先出力ポートへの出力許可を与えたかを
示す情報から構成される。
The output permission signal receiving section 142 receives from the main arbiter section 30 an output permission signal 51 indicating whether or not output permission has been given, and notifies the packet output section 15 of a destination output port to which a packet is to be output. . FIG.
It is an example of a format of an output permission signal 51. In the present embodiment, the output permission signal 51 is information (ACK / NAC) indicating whether output permission has been given to the input buffer unit.
K) and information indicating to which destination output port the output permission has been given.

【0040】パケット出力部15は、サブアービタ部1
4から通知される宛先出力ポートに対応した論理キュー
の先頭パケットを取り出して入力ポート100−1〜1
00−nに伝送する。
The packet output unit 15 is a sub arbiter 1
4 to extract the head packet of the logical queue corresponding to the destination output port notified from the input ports 100-1 to 100-1.
00-n.

【0041】図5は、メインアービタ部30の構成を示
すブロック図である。図5を参照すると、メインアービ
タ部30は、調停制御部31と、出力要求信号受信部3
2と、出力許可信号送信部33と、出力要求状況管理メ
モリ34とを備える。メインアービタ部30は、調停処
理を実行すると共に、調停結果に従って入力ポート10
0−1〜100−nと出力ポート101−1〜101−
nの間でパケット交換するようにスイッチ交換部20を
制御する。
FIG. 5 is a block diagram showing the structure of the main arbiter unit 30. Referring to FIG. 5, the main arbiter unit 30 includes an arbitration control unit 31 and an output request signal receiving unit 3
2, an output permission signal transmission unit 33, and an output request status management memory 34. The main arbiter unit 30 executes the arbitration process, and according to the arbitration result, the input port 10
0-1 to 100-n and output ports 101-1 to 101-
The switch switching unit 20 is controlled so as to perform packet switching between n.

【0042】図6は、出力要求状況管理メモリ34に格
納される出力要求状況テーブルの一例である。図示のよ
うに、出力要求状況テーブルには、入力バッファ部10
−1〜10−nからどの出力ポート宛てにパケットを出
力可能であるかの情報が格納される。図6において、
「1」は出力可能であることを示し、「0」は出力不可
能であることを示す。
FIG. 6 is an example of the output request status table stored in the output request status management memory 34. As shown, the output request status table includes the input buffer unit 10.
Information on which output port the packet can be output from -1 to 10-n is stored. In FIG.
“1” indicates that output is possible, and “0” indicates that output is not possible.

【0043】図7は、調停制御部31の構成を示すブロ
ック図である。図7に示すように、調停制御部31は、
ポート番号制御部311とセレクタ部312とから構成
される。ポート番号制御部311は、入力ポート番号X
/出力ポート番号Yを保存/更新したり、どの入力バッ
ファ部にどの出力ポート宛の出力許可を与えたかの履歴
情報を保存する。セレクタ部312は、どの入力バッフ
ァ部にはどの出力ポートへの出力許可を与えるかを決定
するための出力ポート選択処理/入力バッファ選択処理
を実行する。
FIG. 7 is a block diagram showing the configuration of the arbitration control unit 31. As shown in FIG. 7, the arbitration control unit 31
It comprises a port number control unit 311 and a selector unit 312. The port number control unit 311 calculates the input port number X
/ Output port number Y is saved / updated, and history information indicating which output buffer is given output permission to which input buffer unit is saved. The selector unit 312 executes an output port selection process / input buffer selection process for determining which input buffer unit is given output permission to which output port.

【0044】出力要求信号受信部32は、入力バッファ
部10−1〜10−nから出力要求信号50を受信し
て、入力バッファ部10−1〜10−nはどの出力ポー
トにパケットを出力可能であるかを出力要求状況テーブ
ル34に記録する。
The output request signal receiving section 32 receives the output request signal 50 from the input buffer sections 10-1 to 10-n, and the input buffer sections 10-1 to 10-n can output the packet to any output port. Is recorded in the output request status table 34.

【0045】出力許可信号送信部33は、出力を許可し
た宛先出力ポートについての情報を伝えるための出力許
可信号51を生成して、入力バッファ部10−1〜10
−nに通知する。
The output permission signal transmitting section 33 generates an output permission signal 51 for transmitting information about the destination output port to which the output is permitted, and outputs the output buffer signal to the input buffer sections 10-1 to 10-1.
Notify -n.

【0046】図8は、調停制御部31による調停処理の
動作を示すフローチャートである。図8を参照すると、
まず、ポート番号制御部311は、入力ポート番号Xと
出力ポート番号Yを決定する(ステップ801)。この
ステップでは、入力ポート番号Xは、調停処理の開始の
度に予め決められた入力ポート順序に従う次の順番の値
に更新し、出力ポート番号Yは、ポート数に相当する回
数分の調停処理が実行された後に、予め決められた出力
ポート順序に従う次の順番の値に更新する処理が実行さ
れる。予め決められた入力ポート順序/出力ポート順序
の決め方については種々の方法を用いることができる
が、本実施形態では、若番順(#0→#1→#2→・・
・→#N−1)とする。番号N−1の次は、番号0に帰
着する。ただし、当該順序は一例に過ぎず他の方法で定
めた順序でも良いことは言うまでもない。また、出力ポ
ート番号Yを更新するタイミングは、調停処理が実行さ
れる度に減数されるカウンタにより制御される。すなわ
ち、カウンタがゼロの時に、出力ポート番号Yを更新す
ると共に、カウンタにポート数Nを設定するように構成
すればよい。
FIG. 8 is a flowchart showing the operation of the arbitration process by the arbitration control unit 31. Referring to FIG.
First, the port number control unit 311 determines an input port number X and an output port number Y (Step 801). In this step, the input port number X is updated to the value of the next order according to the predetermined input port order every time the arbitration process is started, and the output port number Y is set to the number of arbitration processes corresponding to the number of ports. Is executed, a process of updating to a value in the next order according to a predetermined output port order is executed. Various methods can be used to determine the predetermined input port order / output port order, but in the present embodiment, in the order of youngest (# 0 → # 1 → # 2 →...)
・ → # N-1) Subsequent to the number N-1, the result is number 0. However, it is needless to say that the order is merely an example and may be an order determined by another method. The timing for updating the output port number Y is controlled by a counter that is decremented each time the arbitration process is executed. That is, when the counter is zero, the output port number Y is updated, and the number of ports N is set in the counter.

【0047】図9は、入力ポート番号Xと出力ポート番
号Yの更新の様子を示す。図9を参照すると、ポート数
N=4の場合に、入力ポート番号Xは、調停処理の度に
変更されるが、出力ポート番号Yは、4回の調停処理毎
に変更されている。
FIG. 9 shows how the input port number X and the output port number Y are updated. Referring to FIG. 9, when the number of ports N = 4, the input port number X is changed every arbitration process, but the output port number Y is changed every four arbitration processes.

【0048】次に、変数Aに番号Xを、変数Bに0を入
力し(ステップ802)、変数Bをポート数Nと比較す
る(ステップ803)。そして、変数BがN未満であれ
ば、セレクタ部312が、出力ポート選択処理を実行す
る(ステップ804)。一方、変数BがN以上であれ
ば、調停処理を終了する。
Next, the number X is input to the variable A and 0 is input to the variable B (step 802), and the variable B is compared with the number of ports N (step 803). If the variable B is smaller than N, the selector unit 312 executes an output port selection process (Step 804). On the other hand, if the variable B is equal to or greater than N, the arbitration process ends.

【0049】セレクタ部312による出力ポート選択処
理では、まず、番号Aの入力バッファ部(以下、入力バ
ッファAと表記)において、番号Yの出力ポート(以
下、出力ポートYと表記)から始まる出力ポート順序で
出力可能かどうか検査する。そして、出力ポートが他の
入力バッファ部により占有されておらず、かつその出力
ポート宛にパケット出力準備ができていれば、入力バッ
ファAにその出力ポートにパケットを出力することを許
可する。出力ポートが他の入力バッファ部により占有さ
れているかどうは、セレクタ部312が保持する出力ポ
ート別の内部変数により把握できる。この内部変数は、
調停開始前に「0」にリセットされ、出力ポートが入力
バッファ部により占有される度に、対応する内部変数を
「1」に更新する。入力バッファ部が出力ポート宛にパ
ケット出力準備ができているかどうかは、出力要求状況
管理メモリ34に格納されている出力要求状況テーブル
を参照することで把握できる。また、本実施形態では、
出力ポート選択処理で出力可能かどうか検査する出力ポ
ートの順番は若番順とし、番号N−1の次は、番号0に
帰着する。ただし、これは一例に過ぎず、検査する順番
を他の順番としても良いのは言うまでもない。
In the output port selection processing by the selector unit 312, first, in the input buffer unit of the number A (hereinafter referred to as the input buffer A), the output port starting from the output port of the number Y (hereinafter referred to as the output port Y) Check if output is possible in order. Then, if the output port is not occupied by another input buffer unit and the packet output is ready for the output port, the input buffer A is permitted to output the packet to the output port. Whether or not the output port is occupied by another input buffer unit can be grasped by an internal variable for each output port held by the selector unit 312. This internal variable is
It is reset to "0" before the start of arbitration, and each time the output port is occupied by the input buffer unit, the corresponding internal variable is updated to "1". Whether or not the input buffer unit is ready to output a packet to the output port can be grasped by referring to the output request status table stored in the output request status management memory 34. In the present embodiment,
The order of output ports for checking whether output is possible in the output port selection process is in ascending order, and the number following the number N-1 results in the number 0. However, this is only an example, and it goes without saying that the inspection order may be changed to another order.

【0050】以上のようにして、入力バッファAに対す
る出力ポート選択処理が終了した後、変数Bに1を加算
し、変数Aを更新する(ステップ805)。その後、ス
テップ803に戻って変数Bによる判定処理を実行し、
変数BがN未満であれば、入力バッファAに対する出力
ポート選択処理を実行し、変数BがN以上であれば、全
ての入力バッファ部に対する出力ポート選択処理が完了
したことになり、調停処理を終了する。本実施形態で
は、出力ポート選択処理を行う入力バッファ部の順番は
若番順とし、番号N−1の次は、番号0に帰着する。し
たがって、本実施形態のステップ805では、変数Aに
1を加算した値をポート数Nで除算し、その余りをAに
上書き設定する。ただし、これは一例に過ぎず、出力ポ
ート選択処理を行う入力バッファ部の順番を他の順番と
しても良いのは言うまでもない。
After the output port selection processing for the input buffer A is completed as described above, the variable A is updated by adding 1 to the variable B (step 805). Thereafter, the process returns to step 803 to execute a determination process based on the variable B.
If the variable B is less than N, the output port selection processing for the input buffer A is executed. If the variable B is N or more, the output port selection processing for all the input buffer units is completed, and the arbitration processing is performed. finish. In the present embodiment, the order of the input buffer units that perform the output port selection process is the lowest order, and the number following the number N−1 results in the number 0. Therefore, in step 805 of this embodiment, the value obtained by adding 1 to the variable A is divided by the number of ports N, and the remainder is overwritten and set to A. However, this is only an example, and it goes without saying that the order of the input buffer units for performing the output port selection processing may be changed to another order.

【0051】調停処理を完了したメインアービタ部30
は、出力許可信号送信部33を介して出力許可を入力バ
ッファ部10−1〜10−nに伝達すると共に、出力許
可に基づく入力ポート100−1〜100−nと出力ポ
ート101−1〜101−nの間でパケットがスイッチ
ングされるようにスイッチ交換部20を制御する。
The main arbiter 30 that has completed the arbitration process
Transmits the output permission to the input buffer sections 10-1 to 10-n via the output permission signal transmitting section 33, and also sets the input ports 100-1 to 100-n and the output ports 101-1 to 101-101 based on the output permission. The switch switching unit 20 is controlled so that packets are switched between −n.

【0052】図10は、ポート数N=4のパケット交換
装置において、調停処理を行う場合の動作例を示す。こ
こで、入出力ポート番号/入力バッファ番号としては
0、1、2、3が割り当てられるとする。出力要求状況
管理メモリ34に格納される出力要求状況テーブルを参
照することによって、入力バッファ部#0は、出力ポー
ト#2に対する出力準備ができている。入力バッファ部
#1は、出力ポート#0、#1、#2に対する出力準備
ができている。入力バッファ部#2は、出力ポート#
2、#3に対する出力準備ができている。入力バッファ
部#3は、出力ポート#0、#3に対する出力準備がで
きている。
FIG. 10 shows an operation example in the case where arbitration processing is performed in a packet switching apparatus having the number of ports N = 4. Here, it is assumed that 0, 1, 2, and 3 are assigned as the input / output port number / input buffer number. By referring to the output request status table stored in the output request status management memory 34, the input buffer unit # 0 is ready for output to the output port # 2. The input buffer unit # 1 is ready for output to the output ports # 0, # 1, and # 2. The input buffer unit # 2 is connected to the output port #
2. Ready for output to # 3. The input buffer unit # 3 is ready for output to the output ports # 0 and # 3.

【0053】まず、ポート番号制御部311は、入力ポ
ート番号Xと出力ポート番号Yをそれぞれ決定する。前
述の通り、入力ポート番号Xは調停処理の度に更新され
るが、出力ポート番号Yは、N=4回の調停処理毎に更
新される。本実施形態では、入力ポート番号XはX=
2、出力ポート番号YはY=3に決定されたとする。ま
た、セレクタ部312は、変数Aと変数Bを用いた制御
により、#2→#3→#0→#1に従う入力バッファ順
で出力ポート選択処理を行う。また、入力バッファ部に
おける出力ポート選択処理では、#3→#0→#1→#
2に従う出力ポート順で出力可能かどうか検査する。
First, the port number control section 311 determines an input port number X and an output port number Y, respectively. As described above, the input port number X is updated each time arbitration processing is performed, whereas the output port number Y is updated every N = 4 arbitration processing. In this embodiment, the input port number X is X =
2. It is assumed that the output port number Y is determined to be Y = 3. In addition, the selector unit 312 performs output port selection processing in the order of input buffer according to # 2 → # 3 → # 0 → # 1 under control using the variables A and B. In the output port selection process in the input buffer unit, # 3 → # 0 → # 1 → #
It is checked whether output is possible in the output port order according to 2.

【0054】初期状態では、全ての出力ポートはどの入
力バッファ部にも占有されていないので、入力バッファ
部#2に対する出力ポート選択処理では、出力ポート#
3→#0→#1→#2に従う順序で検査した結果、入力
バッファ部#2は出力ポート#3に対する出力許可を獲
得する。
In the initial state, all the output ports are not occupied by any of the input buffer sections. Therefore, in the output port selection processing for the input buffer section # 2, the output port #
As a result of checking in the order of 3 → # 0 → # 1 → # 2, the input buffer unit # 2 obtains output permission for the output port # 3.

【0055】次に、入力バッファ部#3に対する出力ポ
ート選択処理を実行して、出力ポート#3→#0→#1
→#2に従う順序で検査するが、すでに出力ポート#3
は入力バッファ部#2によって占有されているので、空
いている出力ポート#0の出力許可を獲得する。以下、
入力バッファ部#0→#1の順で出力ポート選択処理を
実行して、空いている出力ポートのうち、それぞれ出力
ポート#2、#1の出力許可を獲得する。
Next, an output port selection process for the input buffer unit # 3 is executed, and the output port # 3 → # 0 → # 1
→ Check in the order according to # 2, but already output port # 3
Is occupied by the input buffer unit # 2, so that the output permission of the vacant output port # 0 is obtained. Less than,
The output port selection process is executed in the order of the input buffer unit # 0 → # 1 to obtain the output permission of the output ports # 2 and # 1 among the vacant output ports.

【0056】以上のようにして、図10の状態から全て
の入力バッファ部に対する出力ポート選択処理が終了し
た時点の状態を図11に示す。
FIG. 11 shows the state at the time when the output port selection processing for all the input buffer units has been completed from the state of FIG. 10 as described above.

【0057】全ての入力バッファ部に対する出力ポート
選択処理が終了したならば、出力要求状況管理メモリ3
4に格納される出力要求状況テーブルの要素のうち、成
立した出力許可に相当する入力ポートと出力ポートの組
み合わせで決定される要素を「0」に設定する。また、
メインアービタ部30は、成立した出力許可に相当する
入力ポートと出力ポートの間でパケットが交換されるよ
うにスイッチ交換部20を制御する。
When the output port selection processing for all the input buffer units is completed, the output request status management memory 3
Among the elements of the output request status table stored in No. 4, the element determined by the combination of the input port and the output port corresponding to the established output permission is set to “0”. Also,
The main arbiter unit 30 controls the switch switching unit 20 so that packets are exchanged between the input port and the output port corresponding to the established output permission.

【0058】以上のように、本実施形態によれば、入力
バッファ部10−1〜10−nが順に出力ポートを決定
していくことにより、複数の入力バッファ部10−1〜
10−nからの出力要求が衝突して所定の入力バッファ
部10−1〜10−nがパケットを送信できなくなるH
OLブロッキングの発生が回避されるため、スループッ
トの向上とバッファ溢れ頻度の低減が達成される。
As described above, according to the present embodiment, the input buffer units 10-1 to 10-n determine the output ports in order, whereby a plurality of input buffer units 10-1 to 10-n are determined.
An output request from 10-n collides and a predetermined input buffer unit 10-1 to 10-n cannot transmit a packet H
Since the occurrence of OL blocking is avoided, an improvement in throughput and a reduction in the frequency of buffer overflow are achieved.

【0059】また、定期的に開始される調停処理におい
て、最初に出力ポート選択処理を実行する入力バッファ
部10−1〜10−nを、調停処理を実行するたびにず
らせていくので、入力バッファ間で公平なパケットサー
ビスが実現される。
Further, in the arbitration process started periodically, the input buffer units 10-1 to 10-n which initially execute the output port selection process are shifted every time the arbitration process is executed. A fair packet service is realized between them.

【0060】さらに、各入力バッファ部10−1〜10
−nで実行される出力ポート選択処理の宛先出力ポート
の検査順序に関して、最初に検査する出力ポートを、N
回の調停処理を実行するたびにずらせていくので、各入
力バッファ部10−1〜10−nにおいて、宛先出力ポ
ート間で公平なパケットサービスが実現される。
Further, each of the input buffer units 10-1 to 10-10
-N, the output port to be checked first is set to N
Each time the arbitration process is executed, the packet is shifted, so that a fair packet service is realized between the destination output ports in each of the input buffer units 10-1 to 10-n.

【0061】図12は、調停制御部31による調停処理
の動作の他の例を示すフローチャートである。図12を
参照すると、まず、ポート番号制御部311は、入力ポ
ート番号Xと出力ポート番号Yを決定する(ステップ1
201)。このステップでは、入力ポート番号Xは、ポ
ート数に相当する回数分の調停処理が実行されると、予
め決められた入力ポート順序に従う次の順番の値に更新
し、出力ポート番号Yは、調停処理の開始の度に予め決
められた出力ポート順序に従う次の順番の値に更新する
処理が実行される。予め決められた入力ポート順序/出
力ポート順序の決め方については種々の方法を用いるこ
とができるが、本実施形態では、若番順(#0→#1→
#2→・・・→#N−1)とする。番号N−1の次は、
番号0に帰着する。ただし、当該順序は一例に過ぎず他
の方法で定めた順序でも良いことは言うまでもない。ま
た、入力バッファ番号Xを更新するタイミングは、調停
処理が実行される度に減数されるカウンタにより制御さ
れる。カウンタがゼロの時に、入力バッファ番号Xを更
新すると共に、カウンタにポート数Nを設定するように
構成すればよい。
FIG. 12 is a flowchart showing another example of the operation of the arbitration processing by the arbitration control unit 31. Referring to FIG. 12, first, the port number control unit 311 determines an input port number X and an output port number Y (Step 1).
201). In this step, when the arbitration process for the number of ports corresponding to the number of ports is executed, the input port number X is updated to the next order value according to the predetermined input port order, and the output port number Y is Every time the process is started, a process of updating to a value in the next order according to a predetermined output port order is executed. Various methods can be used to determine the predetermined input port order / output port order. However, in the present embodiment, in the order of youngest (# 0 → # 1 →
# 2 →... # N−1). After the number N-1,
The result is number 0. However, it is needless to say that the order is merely an example and may be an order determined by another method. The timing at which the input buffer number X is updated is controlled by a counter that is decremented each time the arbitration process is executed. When the counter is zero, the input buffer number X is updated, and the number of ports N is set in the counter.

【0062】図13は、入力ポート番号Xと出力ポート
番号Yの更新の様子を示す。図13を参照すると、ポー
ト数N=4の場合に、入力ポート番号Xは、4回の調停
処理毎に変更されるが、出力ポート番号Yは、調停処理
の度に変更されている。
FIG. 13 shows how the input port number X and the output port number Y are updated. Referring to FIG. 13, when the number of ports N = 4, the input port number X is changed every four arbitration processes, but the output port number Y is changed every arbitration process.

【0063】次に、変数Aに番号Yを、変数Bに0を入
力し(ステップ1202)、変数Bをポート数Nと比較
する(ステップ1203)。そして、変数BがN未満で
あれば、セレクタ部312が、入力バッファ選択処理を
実行する(ステップ1204)。もし、変数BがN以上
であれば、調停処理を終了する。
Next, the number Y is input to the variable A and 0 is input to the variable B (step 1202), and the variable B is compared with the number of ports N (step 1203). If the variable B is smaller than N, the selector unit 312 executes an input buffer selection process (step 1204). If the variable B is equal to or greater than N, the arbitration process ends.

【0064】セレクタ部312による入力バッファ選択
処理では、まず、番号Aの出力ポート(以下、出力ポー
トAと表記)において、番号Xの入力バッファ部(以
下、入力バッファAと表記)から始まる入力バッファ順
序で出力可能かどうか検査する。そして、入力バッファ
部は他の出力ポートへの出力許可を獲得しておらず、か
つその出力ポート宛にパケット出力準備ができていれ
ば、その入力バッファ部に出力ポートAにパケットを出
力することを許可する。入力バッファ部が他の出力ポー
トへの出力許可を獲得しているかどうかは、セレクタ部
312が保持する入力バッファ部別の内部変数により把
握できる。この内部変数は調停開始前に「0」にリセッ
トされ、入力バッファ部が出力許可を獲得する度に、対
応する内部変数を「1」に更新する。入力バッファ部が
出力ポート宛にパケット出力準備ができているかどうか
は、出力要求状況管理メモリ34に格納される出力要求
状況テーブルを参照することで把握できる。また、本実
施形態では、入力バッファ選択処理で出力可能か検査す
る入力バッファ部の順番は、若番順とし、番号N−1の
次は、番号0に帰着する。ただし、これは一例に過ぎ
ず、検査する順番を他の順番としても良いのは言うまで
もない。
In the input buffer selecting process performed by the selector unit 312, first, at the output port of the number A (hereinafter referred to as output port A), the input buffer starting from the input buffer unit of the number X (hereinafter referred to as input buffer A) Check if output is possible in order. Then, if the input buffer unit has not obtained output permission to another output port and is ready to output a packet to the output port, the input buffer unit outputs the packet to the output port A to the input buffer unit. Allow Whether or not the input buffer unit has obtained the output permission to another output port can be grasped by an internal variable for each input buffer unit held by the selector unit 312. This internal variable is reset to “0” before the start of arbitration, and each time the input buffer unit acquires the output permission, the corresponding internal variable is updated to “1”. Whether the input buffer unit is ready to output a packet to an output port can be grasped by referring to the output request status table stored in the output request status management memory 34. In the present embodiment, the order of the input buffer units for checking whether output is possible in the input buffer selection process is in ascending order, and the number following the number N-1 is reduced to number 0. However, this is only an example, and it goes without saying that the inspection order may be changed to another order.

【0065】以上のようにして、出力ポートAに対する
入力バッファ選択処理が終了すると、変数Bに1を加算
し、変数Aを更新する(ステップ1205)。その後、
ステップ1203に戻って変数Bによる判定処理を実行
し、変数BがN未満であれば、出力ポートAに対する入
力バッファ選択処理を実行し、変数BがN以上であれ
ば、全ての出力ポートに対する入力バッファ選択処理が
完了したことになり、調停処理を終了する。本実施形態
では、入力バッファ選択処理を行う出力ポートの順番は
若番順とし、番号N−1の次は、番号0に帰着する。し
たがって、本実施形態のステップ1205では、変数A
に1を加算した値をポート数Nで除算した余りをAに上
書き設定する。ただし、これは一例に過ぎず、入力バッ
ファ選択処理を行う入力バッファ部の順番を他の順番と
しても良いのは言うまでもない。
As described above, when the input buffer selection processing for the output port A is completed, the variable A is updated by adding 1 to the variable B (step 1205). afterwards,
Returning to step 1203, the judgment process is performed by using the variable B. If the variable B is smaller than N, the input buffer selecting process for the output port A is executed. The buffer selection processing is completed, and the arbitration processing ends. In the present embodiment, the order of the output ports for performing the input buffer selection processing is the lowest order, and the number following the number N−1 results in the number 0. Therefore, in step 1205 of the present embodiment, the variable A
The remainder obtained by dividing the value obtained by adding 1 to the number of ports N is overwritten to A. However, this is only an example, and it goes without saying that the order of the input buffer units for performing the input buffer selection processing may be changed to another order.

【0066】調停処理を完了したメインアービタ部30
は、出力許可信号送信部33を介して出力許可を入力バ
ッファ部10−1〜10−nに伝達すると共に、出力許
可に基づく入力ポート100−1〜100−nと出力ポ
ート101−1〜101−nの間でパケットがスイッチ
ングされるようにスイッチ交換部20を制御する。
The main arbiter 30 that has completed the arbitration process
Transmits the output permission to the input buffer sections 10-1 to 10-n via the output permission signal transmitting section 33, and also sets the input ports 100-1 to 100-n and the output ports 101-1 to 101-101 based on the output permission. The switch switching unit 20 is controlled so that packets are switched between −n.

【0067】図14は、ポート数N=4のパケット交換
装置において、調停処理を行う場合の動作例を示す。こ
こで、入出力ポート番号/入力バッファ番号としては
0、1、2、3が割り当てられるとする。出力要求状況
管理メモリ34に格納される出力要求状況テーブルを参
照することによって、入力バッファ部#0は、出力ポー
ト#2に出力準備ができている。入力バッファ部#1
は、出力ポート#0、#1、#2、#3に出力準備がで
きている。入力バッファ部#2は、出力ポート#1、#
3に出力準備ができている。入力バッファ部#3は、出
力ポート#0、#3に出力準備ができている。
FIG. 14 shows an operation example in the case where arbitration processing is performed in a packet switching apparatus having the number of ports N = 4. Here, it is assumed that 0, 1, 2, and 3 are assigned as the input / output port number / input buffer number. By referring to the output request status table stored in the output request status management memory 34, the input buffer unit # 0 is ready for output to the output port # 2. Input buffer section # 1
Are ready for output to output ports # 0, # 1, # 2, and # 3. The input buffer unit # 2 includes output ports # 1 and #
3. Ready for output. The input buffer unit # 3 is ready for output to the output ports # 0 and # 3.

【0068】まず、ポート番号制御部311は、入力ポ
ート番号Xと出力ポート番号Yをそれぞれ決定する。前
述の通り、入力ポート番号XはN回の調停処理毎に変更
されるが、出力ポート番号Yは、調停処理の度に変更さ
れる。本実施形態では、入力ポート番号XはX=3、出
力ポート番号YはY=2に決定されたとする。また、セ
レクタ部312は、変数AとBを用いた制御により、#
2→#3→#0→#1に従う出力ポート順で入力バッフ
ァ選択処理を行う。また、出力ポートにおける入力バッ
ファ選択処理では、#3→#0→#1→#2に従う入力
バッファ順で出力可能かどうか検査する。
First, the port number control section 311 determines an input port number X and an output port number Y, respectively. As described above, the input port number X is changed every N arbitration processes, but the output port number Y is changed every arbitration process. In this embodiment, it is assumed that the input port number X is determined to be X = 3 and the output port number Y is determined to be Y = 2. In addition, the selector unit 312 performs # control by using the variables A and B,
Input buffer selection processing is performed in the order of output ports according to 2 → # 3 → # 0 → # 1. In the input buffer selection processing at the output port, it is checked whether or not output is possible in the input buffer order according to # 3 → # 0 → # 1 → # 2.

【0069】初期状態では、全ての入力バッファ部はど
の出力ポートの出力許可を獲得していないので、出力ポ
ート#2に対する入力バッファ選択処理では、入力バッ
ファ#3→#0→#1→#2に従う順序で検査した結
果、出力ポート#2は入力バッファ部#0に出力許可を
与える。
In the initial state, since all the input buffer units have not obtained the output permission of any output port, in the input buffer selection processing for the output port # 2, the input buffers # 3 → # 0 → # 1 → # 2 As a result, the output port # 2 gives output permission to the input buffer unit # 0.

【0070】次に、出力ポート#3に対する入力バッフ
ァ選択処理を実行して、入力バッファ#3→#0→#1
→#2に従う順序で検査するが、出力ポート#3は入力
バッファ部#3に出力許可を与える。以下、出力ポート
#0→1の順で入力バッファ選択処理を実行して、空い
ている入力バッファ部のうち、それぞれ入力バッファ部
#1、2に出力許可を与える。
Next, an input buffer selection process for the output port # 3 is executed, and the input buffer # 3 → # 0 → # 1
The inspection is performed in the order according to # 2, but the output port # 3 gives the output permission to the input buffer unit # 3. Hereinafter, the input buffer selecting process is executed in the order of the output ports # 0 → 1, and the output permission is given to the input buffer units # 1 and # 2 among the vacant input buffer units.

【0071】以上のようにして、図14の状態から全て
の出力ポートに対する入力バッファ選択処理が終了した
時点の状態を図15に示す。
FIG. 15 shows a state at the time when the input buffer selection processing for all the output ports is completed from the state of FIG. 14 as described above.

【0072】全ての出力ポートに対する入力バッファ選
択処理が終了したならば、出力要求状況管理メモリ34
に格納される出力要求状況テーブルの要素のうち、成立
した出力許可に相当する入力ポートと出力ポートの組み
合わせで決定される要素を「0」に設定する。また、メ
インアービタ部30は、成立した出力許可に相当する入
力ポートと出力ポートの間でパケットが交換されるよう
にスイッチ交換部20を制御する。
When the input buffer selection processing for all the output ports is completed, the output request status management memory 34
Is set to "0" among the elements of the output request status table stored in the combination of the input port and the output port corresponding to the established output permission. Further, the main arbiter unit 30 controls the switch switching unit 20 so that packets are exchanged between the input port and the output port corresponding to the established output permission.

【0073】以上のように、本実施形態によれば、各出
力ポート101−1〜101−nが順に出力許可を与え
る入力バッファ部を決定していくことにより、複数の入
力バッファ部10−1〜10−nからの出力要求が衝突
して所定の入力バッファ部10−1〜10−nがパケッ
トを送信できなくなるHOLブロッキングが発生するこ
とはなくなり、スループットの向上とバッファ溢れ頻度
の低減が達成される。
As described above, according to the present embodiment, each of the output ports 101-1 to 101-n sequentially determines the input buffer section to which the output permission is given, so that the plurality of input buffer sections 10-1 HOL blocking, in which output requests from the input buffers 10-1 to 10-n collide with each other and a predetermined input buffer unit 10-1 to 10-n cannot transmit a packet, does not occur, thereby improving throughput and reducing the frequency of buffer overflow. Is done.

【0074】また、定期的に開始される調停処理におい
て、最初に入力バッファ選択処理を実行する出力ポート
101−1〜101−nを調停処理の実行するたびにず
らせていくので、出力ポート間で片寄ったパケットサー
ビスを提供しなくなる。
In the arbitration process started periodically, the output ports 101-1 to 101-n for executing the input buffer selection process are shifted each time the arbitration process is executed. Stop providing unbalanced packet services.

【0075】さらに、各出力ポート101−1〜101
−nで実行される入力バッファ選択処理の入力バッファ
部10−1〜10−nの検査順序に関して、最初に検査
する入力バッファ部をポート数に相当する回数の調停処
理を実行するたびにずらせていくので、出力ポートは各
入力バッファ部に公平なパケットサービスを提供する。
Further, each of the output ports 101-1 to 101-1
With respect to the inspection order of the input buffer units 10-1 to 10-n in the input buffer selection process executed in -n, the input buffer unit to be inspected first is shifted every time the arbitration process is performed a number of times corresponding to the number of ports. As such, the output port provides a fair packet service to each input buffer unit.

【0076】以上、好ましい実施の形態をあげて本発明
を説明したが、本発明は必ずしも上記実施の形態に限定
されるものではない。
Although the present invention has been described with reference to the preferred embodiments, the present invention is not necessarily limited to the above embodiments.

【0077】[0077]

【発明の効果】以上説明したように、本発明のパケット
交換装置及びそのスイッチ制御方法ならびにスイッチ制
御プログラムを格納した記憶媒体によれば、各入力バッ
ファ部が順に出力許可を獲得する出力ポートを決定して
いくことにより、複数の入力バッファ部からの出力要求
が衝突した場合に、所定の入力バッファ部からパケット
を出力できなくなるHOLブロッキングが発生すること
を回避できるため、スループットの向上とバッファ溢れ
頻度の低減が達成されるという効果がある。
As described above, according to the packet switching device, the switch control method thereof, and the storage medium storing the switch control program of the present invention, each input buffer unit determines the output port from which the output permission is obtained in order. By doing so, when output requests from a plurality of input buffer units collide, it is possible to avoid occurrence of HOL blocking in which packets cannot be output from a predetermined input buffer unit, thereby improving throughput and buffer overflow frequency. There is an effect that reduction of the amount is achieved.

【0078】また、定期的に開始される調停処理におい
て、最初に出力ポート選択処理を実行する入力バッファ
部を調停処理の実行と共にずらせていくので、入力バッ
ファ間で公平なパケットサービスが実現される。
Further, in the arbitration process started periodically, the input buffer unit for executing the output port selection process is first shifted with the execution of the arbitration process, so that a fair packet service is realized between the input buffers. .

【0079】さらに、各入力バッファ部で実行される出
力ポート選択処理の宛先出力ポートの検査順序に関し
て、最初に検査する出力ポートをN回の調停処理を実行
すると共にずらせていくので、各入力バッファでは宛先
出力ポート間で公平なパケットサービスが実現される。
Further, as for the order of checking the destination output port in the output port selection processing executed in each input buffer unit, the output port to be checked first is shifted by executing the arbitration processing N times and shifting each output buffer. Thus, a fair packet service is realized between destination output ports.

【0080】また、本発明によれば、各出力ポートが順
に出力許可を与える入力バッファ部を決定していくこと
により、複数の入力バッファ部からの出力要求が衝突し
た場合に、所定の入力バッファ部からパケットを出力で
きなくなるHOLブロッキングが発生することを回避で
きるため、スループットの向上とバッファ溢れ頻度の低
減が達成されるという効果がある。
According to the present invention, each output port sequentially determines an input buffer unit to which output permission is given, so that when output requests from a plurality of input buffer units collide, a predetermined input buffer Since it is possible to avoid occurrence of HOL blocking in which a packet cannot be output from the unit, there is an effect that improvement in throughput and reduction in buffer overflow frequency are achieved.

【0081】また、定期的に開始される調停処理におい
て、最初に入力バッファ選択処理を実行する出力ポート
を調停処理の実行と共にずらせていくので、出力ポート
間で片寄ったパケットサービスを提供しなくなる。
Further, in the arbitration process started periodically, the output port for executing the input buffer selection process is shifted at the same time as the execution of the arbitration process, so that a biased packet service is not provided between the output ports.

【0082】さらに、各出力ポートで実行される入力バ
ッファ選択処理の入力バッファ部の検査順序に関して、
最初に検査する入力バッファ部をN回の調停処理を実行
する度にずらせていく構成にしたので、出力ポートは各
入力バッファに公平なパケットサービスを提供すること
ができる。
Further, regarding the inspection order of the input buffer section in the input buffer selection processing executed at each output port,
Since the input buffer to be checked first is shifted every time the arbitration process is performed N times, the output port can provide a fair packet service to each input buffer.

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

【図1】 本発明の一実施形態によるパケット交換装置
の構成を示すブロック図である。
FIG. 1 is a block diagram illustrating a configuration of a packet switching device according to an embodiment of the present invention.

【図2】 本実施形態における入力バッファ部のサブア
ービタ部の構成を示すブロック図である。
FIG. 2 is a block diagram illustrating a configuration of a sub-arbiter unit of an input buffer unit according to the present embodiment.

【図3】 本実施形態における出力要求信号のフォーマ
ットの一例を示す図である。
FIG. 3 is a diagram illustrating an example of a format of an output request signal according to the embodiment.

【図4】 本実施形態における出力許可信号のフォーマ
ットの一例を示す図である。
FIG. 4 is a diagram illustrating an example of a format of an output permission signal according to the embodiment.

【図5】 本実施形態におけるメインアービタ部の構成
を示すブロック図である。
FIG. 5 is a block diagram illustrating a configuration of a main arbiter unit according to the present embodiment.

【図6】 本実施形態におけるメインアービタ部の出力
要求状況管理メモリに格納される出力要求状況テーブル
の例を示す図である。
FIG. 6 is a diagram illustrating an example of an output request status table stored in an output request status management memory of the main arbiter unit according to the present embodiment.

【図7】 本実施形態におけるメインアービタ部の調停
制御部の構成を示すブロック図である。
FIG. 7 is a block diagram illustrating a configuration of an arbitration control unit of a main arbiter unit according to the present embodiment.

【図8】 本実施形態の調停制御部による調停処理の動
作例を示すフローチャートである。
FIG. 8 is a flowchart illustrating an operation example of an arbitration process performed by the arbitration control unit according to the embodiment.

【図9】 図8の動作における入力ポート番号Xと出力
ポート番号Yの更新の様子を示す図である。
9 is a diagram showing how an input port number X and an output port number Y are updated in the operation shown in FIG. 8;

【図10】 図8の動作例において、ポート数N=4の
パケット交換装置により調停処理を行う場合の動作例を
示す図である。
FIG. 10 is a diagram illustrating an operation example in a case where arbitration processing is performed by a packet switching device having the number of ports N = 4 in the operation example of FIG. 8;

【図11】 図10の状態から全ての入力バッファ部に
対する出力ポート選択処理が終了した時点の状態を示す
図である。
11 is a diagram illustrating a state at the time when output port selection processing for all input buffer units has been completed from the state of FIG. 10;

【図12】 本実施形態の調停制御部による調停処理の
他の動作例を示すフローチャートである。
FIG. 12 is a flowchart illustrating another operation example of the arbitration process by the arbitration control unit according to the embodiment.

【図13】 図12の動作における入力ポート番号Xと
出力ポート番号Yの更新の様子を示す図である。
13 is a diagram showing a state of updating an input port number X and an output port number Y in the operation of FIG.

【図14】 図12の動作例において、ポート数N=4
のパケット交換装置により調停処理を行う場合の動作例
を示す図である。
FIG. 14 shows an example of the operation of FIG.
FIG. 10 is a diagram illustrating an operation example when arbitration processing is performed by the packet switching device of FIG.

【図15】 図14の状態から全ての出力ポートに対す
る入力バッファ選択処理が終了した時点の状態を示す図
である。
FIG. 15 is a diagram illustrating a state at the time when input buffer selection processing for all output ports is completed from the state of FIG. 14;

【図16】 従来のパケット交換装置の構成を示すブロ
ック図である。
FIG. 16 is a block diagram showing a configuration of a conventional packet switching device.

【図17】 従来のパケット交換装置の動作を説明する
図である。
FIG. 17 is a diagram illustrating the operation of a conventional packet switching device.

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

10−1〜10−n 入力バッファ部 11−1〜11−n 論理キュー 12 パケット入力部 13 フロー情報データベース 14 サブアービタ部 15 パケット出力部 20 スイッチ交換部 30 メインアービタ部 100−1〜100−n 入力ポート 101−1〜101−n 出力ポート 10-1 to 10-n Input buffer unit 11-1 to 11-n Logical queue 12 Packet input unit 13 Flow information database 14 Sub arbiter unit 15 Packet output unit 20 Switch switching unit 30 Main arbiter unit 100-1 to 100-n Input Port 101-1 to 101-n Output port

Claims (15)

【特許請求の範囲】[Claims] 【請求項1】 パケット通信で用いられ、複数の入力ポ
ートと複数の出力ポートとの間でスイッチングを行うパ
ケット交換装置において、 前記入力ポートごとに設けられ、対応する入力ポートに
到着するパケットを一時的に蓄積する入力バッファと、 前記入力ポートと前記出力ポートとの接続を制御してパ
ケットを交換するスイッチ交換手段と、 前記入力バッファのうちのいずれに所定の前記出力ポー
トへの出力許可を与えるかを決定する調停処理を行うア
ービタとを備え、 前記アービタが、前記各入力バッファと前記各出力ポー
トとに関して、所定の順番で、前記入力バッファにおい
てパケット出力準備ができている宛先出力ポートと空き
状態の前記出力ポートとを比較し、一致する前記入力バ
ッファと前記出力ポートとを対応づけて出力許可を与え
ることを特徴とするパケット交換装置。
1. A packet switching device used in packet communication and switching between a plurality of input ports and a plurality of output ports, wherein a packet provided for each of the input ports and temporarily arriving at a corresponding input port is provided. An input buffer for temporarily storing, a switch switching means for controlling connection between the input port and the output port and exchanging packets, and giving an output permission to a predetermined output port to any of the input buffers. An arbiter that performs an arbitration process for determining whether the destination buffer is ready for packet output in the input buffer in a predetermined order with respect to each of the input buffers and the output ports. The output port in the state is compared with the output port, and the matching input buffer and the output port are output in association with each other. Packet switching apparatus characterized by giving permission.
【請求項2】 前記アービタ手段が、 前記各入力バッファを、予め定められた順序にしたがっ
て着目し、 着目中の前記入力バッファに関して、予め定められた順
序にしたがって前記各出力ポートに対するパケット出力
が可能かどうかを順次検査することによりパケットの出
力先の宛先である出力ポートを決定する出力ポート選択
処理を行うことを特徴とする請求項1に記載のパケット
交換装置。
2. The arbiter means pays attention to each input buffer in a predetermined order, and can output a packet to each output port in a predetermined order with respect to the input buffer under consideration. 2. The packet switching apparatus according to claim 1, wherein an output port selection process of determining an output port which is a destination of a packet output by sequentially checking whether the packet is output or not is performed.
【請求項3】 前記アービタ手段が、 最初に着目する前記入力バッファを、前記調停処理が行
われるたびに、前記入力バッファに着目する順序にした
がって更新し、 前記出力ポート選択処理において最初に検査対象となる
前記出力ポートを、ポート数に相当する回数の前記調停
処理が行われるたびに、前記出力ポート選択処理の検査
対象とする順序にしたがって更新することを特徴とする
請求項2に記載のパケット交換装置。
3. The arbiter means updates the input buffer of interest first, each time the arbitration process is performed, according to the order of attention of the input buffer, and first checks the input buffer in the output port selection process. 3. The output port according to claim 2, wherein the output port is updated in accordance with an order to be inspected in the output port selection processing every time the arbitration processing is performed a number of times corresponding to the number of ports. Exchange equipment.
【請求項4】 前記アービタ手段が、 前記出力ポートを、予め定められた順序にしたがって着
目し、 着目中の前記出力ポートに関して、予め定められた順序
にしたがって前記各入力バッファが該着目中の出力ポー
トに対するパケット出力可能かどうかを順次検査するこ
とにより該着目中の出力ポートを宛先としてパケット出
力を行う前記入力バッファを決定する入力バッファ選択
処理を行うことを特徴とする請求項1に記載のパケット
交換装置。
4. The arbiter means pays attention to the output ports in a predetermined order, and for each of the output ports of interest, the respective input buffers output the current output port in accordance with a predetermined order. 2. The packet according to claim 1, wherein an input buffer selection process for determining the input buffer for outputting a packet with the output port of interest as a destination is performed by sequentially checking whether a packet output to a port is possible. Exchange equipment.
【請求項5】 前記アービタ手段が、 最初に着目する前記出力ポートを、前記調停処理が行わ
れるたびに、前記出力ポートに着目する順序にしたがっ
て更新し、 前記入力バッファ選択処理において最初に検査対象とな
る前記入力バッファを、ポート数に相当する回数の前記
調停処理が行われるたびに、前記入力バッファ選択処理
の検査対象とする順序にしたがって更新することを特徴
とする請求項4に記載のパケット交換装置。
5. The arbiter means updates the output port of interest first in accordance with the order of attention of the output port each time the arbitration process is performed, and 5. The packet according to claim 4, wherein each time the arbitration process is performed a number of times corresponding to the number of ports, the input buffer is updated according to an order to be inspected in the input buffer selection process. 6. Exchange equipment.
【請求項6】 パケット通信で用いられ、複数の入力ポ
ートと複数の出力ポートとの間のスイッチングを行うパ
ケット交換装置のスイッチ制御方法において、 前記入力ポートに到着したパケットを前記入力ポートに
対応して設けられたバッファ手段に一時的に蓄積し、 前記各バッファ手段と前記各出力ポートとに関して、所
定の順番で、前記バッファ手段においてパケット出力準
備ができている宛先出力ポートと空き状態の前記出力ポ
ートとを比較し、一致する前記入力バッファと前記出力
ポートとを対応づけて出力許可を与える調停処理を行
い、 前記調停処理の結果に応じて、前記入力ポートと前記出
力ポートとの接続を制御してパケットを交換することを
特徴とするスイッチ制御方法。
6. A switch control method for a packet switching device used in packet communication and performing switching between a plurality of input ports and a plurality of output ports, wherein a packet arriving at the input port corresponds to the input port. Temporarily storing the data in the buffer means provided in the buffer means, and for each of the buffer means and each of the output ports, in a predetermined order, the destination output port ready for packet output in the buffer means and the empty output. A arbitration process of comparing the input buffer and the output port with the corresponding input buffer and performing output arbitration is performed, and a connection between the input port and the output port is controlled according to a result of the arbitration process. A switch control method for exchanging packets.
【請求項7】 前記調停処理において、 前記各入力バッファを、予め定められた順序にしたがっ
て着目し、 着目中の前記入力バッファに関して、予め定められた順
序にしたがって前記各出力ポートに対するパケット出力
が可能かどうかを順次検査することによりパケットの出
力先の宛先である出力ポートを決定する出力ポート選択
処理を行うことを特徴とする請求項6に記載のスイッチ
制御方法。
7. In the arbitration processing, attention is paid to each of the input buffers according to a predetermined order, and a packet output to each of the output ports is possible with respect to the input buffer under consideration in a predetermined order. 7. The switch control method according to claim 6, wherein an output port selection process of determining an output port that is a destination of a packet output by sequentially examining whether the packet is output or not is performed.
【請求項8】 前記調停処理において、 最初に着目する前記入力バッファを、前記調停処理が行
われるたびに、前記入力バッファに着目する順序にした
がって更新し、 前記出力ポート選択処理において最初に検査対象となる
前記出力ポートを、ポート数に相当する回数の前記調停
処理が行われるたびに、前記出力ポート選択処理の検査
対象とする順序にしたがって更新することを特徴とする
請求項7に記載のスイッチ制御方法。
8. In the arbitration processing, the input buffer to be focused on first is updated in accordance with the order in which the input buffer is focused each time the arbitration processing is performed. 8. The switch according to claim 7, wherein the output port is updated in accordance with an order to be inspected in the output port selection processing every time the arbitration processing is performed a number of times corresponding to the number of ports. Control method.
【請求項9】 前記調停処理において、 前記出力ポートを、予め定められた順序にしたがって着
目し、 着目中の前記出力ポートに関して、予め定められた順序
にしたがって前記各入力バッファが該着目中の出力ポー
トに対するパケット出力可能かどうかを順次検査するこ
とにより該着目中の出力ポートを宛先としてパケット出
力を行う前記入力バッファを決定する入力バッファ選択
処理を行うことを特徴とする請求項6に記載のスイッチ
制御方法。
9. In the arbitration process, the output ports are focused on in accordance with a predetermined order, and the input buffers are controlled by the input buffers in accordance with a predetermined order with respect to the output ports under consideration. 7. The switch according to claim 6, wherein an input buffer selection process is performed for sequentially determining whether a packet can be output to a port and determining the input buffer for outputting a packet with the output port of interest as a destination. Control method.
【請求項10】 前記調停処理において、 最初に着目する前記出力ポートを、前記調停処理が行わ
れるたびに、前記出力ポートに着目する順序にしたがっ
て更新し、 前記入力バッファ選択処理において最初に検査対象とな
る前記入力バッファを、ポート数に相当する回数の前記
調停処理が行われるたびに、前記入力バッファ選択処理
の検査対象とする順序にしたがって更新することを特徴
とする請求項9に記載のスイッチ制御方法。
10. In the arbitration processing, the output port of interest first is updated in accordance with the order of attention of the output port every time the arbitration processing is performed, and the inspection target is first checked in the input buffer selection processing. 10. The switch according to claim 9, wherein the input buffer is updated in accordance with an order to be inspected in the input buffer selection process every time the arbitration process is performed a number of times corresponding to the number of ports. 11. Control method.
【請求項11】 パケット通信で用いられ、複数の入力
ポートと複数の出力ポートとの間のスイッチングを行う
パケット交換装置を制御して、スイッチングの制御を行
うスイッチ制御プログラムを格納した記憶媒体におい
て、 前記入力ポートに到着したパケットを前記入力ポートに
対応して設けられたバッファ手段に一時的に蓄積し、 前記各バッファ手段と前記各出力ポートとに関して、所
定の順番で、前記バッファ手段においてパケット出力準
備ができている宛先出力ポートと空き状態の前記出力ポ
ートとを比較し、一致する前記入力バッファと前記出力
ポートとを対応づけて出力許可を与える調停処理を行
い、 前記調停処理の結果に応じて、前記入力ポートと前記出
力ポートとの接続を制御してパケットを交換することを
特徴とするスイッチ制御プログラムを格納した記憶媒
体。
11. A storage medium storing a switch control program for controlling a packet switching device used for packet communication and performing switching between a plurality of input ports and a plurality of output ports, and controlling the switching. A packet arriving at the input port is temporarily stored in buffer means provided corresponding to the input port, and a packet is output from the buffer means in a predetermined order with respect to each buffer means and each output port. Comparing the ready destination output port with the empty output port, performing arbitration processing for associating the corresponding input buffer with the output port and giving output permission, and according to the result of the arbitration processing And controlling the connection between the input port and the output port to exchange packets. Storage medium storing a switch control program.
【請求項12】 前記調停処理において、 前記各入力バッファを、予め定められた順序にしたがっ
て着目し、 着目中の前記入力バッファに関して、予め定められた順
序にしたがって前記各出力ポートに対するパケット出力
が可能かどうかを順次検査することによりパケットの出
力先の宛先である出力ポートを決定する出力ポート選択
処理を行うことを特徴とする請求項11に記載のスイッ
チ制御プログラムを格納した記憶媒体。
12. In the arbitration processing, attention is paid to each of the input buffers in a predetermined order, and a packet output to each of the output ports can be performed according to a predetermined order with respect to the input buffer under consideration. 12. The storage medium storing the switch control program according to claim 11, wherein an output port selection process of determining an output port which is a destination of the output destination of the packet by sequentially examining whether the packet is output or not is performed.
【請求項13】 前記調停処理において、 最初に着目する前記入力バッファを、前記調停処理が行
われるたびに、前記入力バッファに着目する順序にした
がって更新し、 前記出力ポート選択処理において最初に検査対象となる
前記出力ポートを、ポート数に相当する回数の前記調停
処理が行われるたびに、前記出力ポート選択処理の検査
対象とする順序にしたがって更新することを特徴とする
請求項12に記載のスイッチ制御プログラムを格納した
記憶媒体。
13. In the arbitration processing, the input buffer to be focused on first is updated in accordance with the order in which the input buffer is focused each time the arbitration processing is performed. 13. The switch according to claim 12, wherein each time the arbitration process is performed a number of times corresponding to the number of ports, the output port is updated in accordance with an order to be inspected in the output port selection process. A storage medium storing a control program.
【請求項14】 前記調停処理において、 前記出力ポートを、予め定められた順序にしたがって着
目し、 着目中の前記出力ポートに関して、予め定められた順序
にしたがって前記各入力バッファが該着目中の出力ポー
トに対するパケット出力可能かどうかを順次検査するこ
とにより該着目中の出力ポートを宛先としてパケット出
力を行う前記入力バッファを決定する入力バッファ選択
処理を行うことを特徴とする請求項11に記載のスイッ
チ制御プログラムを格納した記憶媒体。
14. In the arbitration processing, the output ports are focused on in accordance with a predetermined order, and the output buffers are focused on in accordance with a predetermined order with respect to the output ports of interest. 12. The switch according to claim 11, wherein an input buffer selection process is performed for sequentially determining whether a packet can be output to a port and determining the input buffer for outputting a packet with the output port of interest as a destination. A storage medium storing a control program.
【請求項15】 前記調停処理において、 最初に着目する前記出力ポートを、前記調停処理が行わ
れるたびに、前記出力ポートに着目する順序にしたがっ
て更新し、 前記入力バッファ選択処理において最初に検査対象とな
る前記入力バッファを、ポート数に相当する回数の前記
調停処理が行われるたびに、前記入力バッファ選択処理
の検査対象とする順序にしたがって更新することを特徴
とする請求項14に記載のスイッチ制御プログラムを格
納した記憶媒体。
15. In the arbitration processing, the output port of interest first is updated in accordance with the order of attention of the output port every time the arbitration processing is performed, and the inspection target is first checked in the input buffer selection processing. The switch according to claim 14, wherein the input buffer is updated in accordance with the order in which the input buffer selection process is to be inspected each time the arbitration process is performed a number of times corresponding to the number of ports. A storage medium storing a control program.
JP16019099A 1999-06-07 1999-06-07 Packet switching device, switch control method therefor, and storage medium storing switch control program Expired - Fee Related JP3397173B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16019099A JP3397173B2 (en) 1999-06-07 1999-06-07 Packet switching device, switch control method therefor, and storage medium storing switch control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16019099A JP3397173B2 (en) 1999-06-07 1999-06-07 Packet switching device, switch control method therefor, and storage medium storing switch control program

Publications (2)

Publication Number Publication Date
JP2000349765A true JP2000349765A (en) 2000-12-15
JP3397173B2 JP3397173B2 (en) 2003-04-14

Family

ID=15709776

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16019099A Expired - Fee Related JP3397173B2 (en) 1999-06-07 1999-06-07 Packet switching device, switch control method therefor, and storage medium storing switch control program

Country Status (1)

Country Link
JP (1) JP3397173B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100437853B1 (en) * 2000-09-06 2004-06-30 닛본 덴끼 가부시끼가이샤 Packet switching equipment and switching control method
KR100441879B1 (en) * 2001-09-05 2004-07-27 한국전자통신연구원 ATM switch system having partially duplicable transmission line board and method therefor
US7042883B2 (en) 2001-01-03 2006-05-09 Juniper Networks, Inc. Pipeline scheduler with fairness and minimum bandwidth guarantee
JP2013526096A (en) * 2010-02-23 2013-06-20 アルカテル−ルーセント Source-based queue selection mechanism in a routing environment

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100437853B1 (en) * 2000-09-06 2004-06-30 닛본 덴끼 가부시끼가이샤 Packet switching equipment and switching control method
US7042883B2 (en) 2001-01-03 2006-05-09 Juniper Networks, Inc. Pipeline scheduler with fairness and minimum bandwidth guarantee
US7499454B2 (en) 2001-01-03 2009-03-03 Juniper Networks, Inc. Pipeline scheduler with fairness and minimum bandwidth guarantee
US7796610B2 (en) 2001-01-03 2010-09-14 Juniper Networks, Inc. Pipeline scheduler with fairness and minimum bandwidth guarantee
US8189597B2 (en) 2001-01-03 2012-05-29 Juniper Networks, Inc. Pipeline scheduler with fairness and minimum bandwidth guarantee
US8576867B2 (en) 2001-01-03 2013-11-05 Juniper Networks, Inc. Pipeline scheduler with fairness and minimum bandwidth guarantee
KR100441879B1 (en) * 2001-09-05 2004-07-27 한국전자통신연구원 ATM switch system having partially duplicable transmission line board and method therefor
JP2013526096A (en) * 2010-02-23 2013-06-20 アルカテル−ルーセント Source-based queue selection mechanism in a routing environment
US9853904B2 (en) 2010-02-23 2017-12-26 Alcatel Lucent Source-based queue selection mechanism in the routing environment

Also Published As

Publication number Publication date
JP3397173B2 (en) 2003-04-14

Similar Documents

Publication Publication Date Title
JP3178470B2 (en) Data flow control switch and scheduling method thereof
US7602790B2 (en) Two-dimensional pipelined scheduling technique
AU746166B2 (en) Fair and efficient cell scheduling in input-buffered multipoint switch
US6813274B1 (en) Network switch and method for data switching using a crossbar switch fabric with output port groups operating concurrently and independently
JP3190522B2 (en) Packet switching system
US6839794B1 (en) Method and system to map a service level associated with a packet to one of a number of data streams at an interconnect device
EP1052804A2 (en) Multicast and unicast scheduling for a network device
US7751427B2 (en) Packet switching equipment and switching control method
EP1052816A2 (en) Backpressure mechanism for a network device
US20050152352A1 (en) Scalable crossbar matrix switching apparatus and distributed scheduling method thereof
US6915372B2 (en) Methods and apparatus for managing traffic through a buffered crossbar switch fabric
US20100238948A1 (en) Packet switching system and method
WO2003017593A1 (en) Method and apparatus for parallel, weighted arbitration scheduling for a switch fabric
JPH0338137A (en) High-speed digital packet exchanging system
JPH09512152A (en) Arbitration method for telecommunications switching
JPH0637797A (en) Reserved ring mechanism of packet exchange network
JPH09186706A (en) Method for solving collision of scheduling between packets
US5497369A (en) Multicast switch circuits
JPH10190710A (en) Access mediation method
US20110013643A1 (en) Advanced telecommunications router and crossbar switch controller
EP1052814A2 (en) Multicast scheduling for a network device
EP1836814A1 (en) Method and apparatus for scheduling packets and/or cells
US7522527B2 (en) Scalable crossbar matrix switch and arbitration method thereof
US6643294B1 (en) Distributed control merged buffer ATM switch
JP3397173B2 (en) Packet switching device, switch control method therefor, and storage medium storing switch control program

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080214

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090214

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100214

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100214

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110214

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110214

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120214

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120214

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130214

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20130214

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20140214

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees