[go: up one dir, main page]

JP3144386B2 - Back pressure control method and device - Google Patents

Back pressure control method and device

Info

Publication number
JP3144386B2
JP3144386B2 JP20424798A JP20424798A JP3144386B2 JP 3144386 B2 JP3144386 B2 JP 3144386B2 JP 20424798 A JP20424798 A JP 20424798A JP 20424798 A JP20424798 A JP 20424798A JP 3144386 B2 JP3144386 B2 JP 3144386B2
Authority
JP
Japan
Prior art keywords
packet
back pressure
link
address
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.)
Expired - Fee Related
Application number
JP20424798A
Other languages
Japanese (ja)
Other versions
JP2000022716A (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
Priority to JP20424798A priority Critical patent/JP3144386B2/en
Publication of JP2000022716A publication Critical patent/JP2000022716A/en
Application granted granted Critical
Publication of JP3144386B2 publication Critical patent/JP3144386B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、入力されたパケッ
トを所定の宛先に出力するパケットスイッチのバックプ
レッシャ制御方法およびその装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method and an apparatus for controlling a back pressure of a packet switch for outputting an input packet to a predetermined destination.

【0002】[0002]

【従来の技術】従来、パケット交換機におけるバックプ
レッシャ制御方法としては、例えば特表平8−5045
54号公報に記載のように、バックプレッシャ制御の際
のスイッチ構成として、入力バッファおよび出力バッフ
ァを設け、非同期転送モード(Asyncronous
Transfer Mode;ATM)セルのように
固定長パケットに対してスイッチングをし、固定パケッ
ト長単位で出力バッファに対する入力制限をしている。
2. Description of the Related Art Conventionally, as a back pressure control method in a packet switch, for example, Japanese Patent Laid-Open Publication No.
As disclosed in Japanese Patent Application Publication No. 54-54, an input buffer and an output buffer are provided as a switch configuration for back pressure control, and an asynchronous transfer mode (Asynchronous) is provided.
Switching is performed for fixed-length packets such as Transfer Mode (ATM) cells, and input to an output buffer is restricted in fixed packet length units.

【0003】一方、特開平9−181740号公報に記
載のように、リソース管理用のマネージメントセルを用
い、ATMセルレベルでパケットの出力制限をする構成
も知られている。
On the other hand, as described in Japanese Patent Application Laid-Open No. 9-181740, a configuration is known in which a management cell for resource management is used to limit the output of packets at the ATM cell level.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、上記特
表平8−504554号公報および特開平9−1817
40号公報に記載のように、従来のバックプレッシャ制
御方法では、パケットをATMセルにという固定長のパ
ケットに分割してバックプレッシャが実行されている状
況下において、パケットが考慮されずATMセルに対し
てバックプレッシャを実行することとなり、パケットを
構成する一部のATMセルが入力バッファで破棄される
ことでバックプレッシャを実行するおそれがある。この
ため、出力バッファ側、あるいは、パケットの再組立に
おいて、不完全なパケットに対する廃棄処理が必要とな
る問題がある。
However, Japanese Patent Application Laid-Open No. Hei 8-504554 and Japanese Unexamined Patent Publication No. Hei 9-1817 disclose the above.
As described in Japanese Patent Application Publication No. 40 (1994), in the conventional back pressure control method, in a situation where a packet is divided into fixed-length packets called ATM cells and the back pressure is being executed, the packets are not considered and the ATM cells are not considered. On the other hand, back pressure is executed, and there is a possibility that some ATM cells constituting the packet are discarded in the input buffer, thereby executing back pressure. For this reason, there is a problem that it is necessary to discard incomplete packets on the output buffer side or in packet reassembly.

【0005】本発明は、このような点に鑑みなされたも
ので、パケットメモリを有効利用してパケット入力状況
下でバックプレッシャの公平性を確保するバックプレッ
シャ制御方法およびその装置を提供することを目的とす
る。
SUMMARY OF THE INVENTION The present invention has been made in view of the above points, and provides a back pressure control method and apparatus for ensuring the back pressure fairness under a packet input condition by effectively using a packet memory. Aim.

【0006】[0006]

【課題を解決するための手段】請求項1記載のバックプ
レッシャ制御方法は、入力されたパケットを所定の宛先
に出力するパケットスイッチのバックプレッシャ制御方
法において、前記入力されたパケットのパケット長を共
有バックプレッシャカウンタにてあらかじめ設定された
閾値に基づいてカウントし、この共有バックプレッシャ
カウンタにてカウントしたパケット長が前記共有バック
プレッシャカウンタの閾値を越えた際に、個別バックプ
レッシャカウンタにてあらかじめ設定された閾値に基づ
いてパケット長をカウントするものである。
According to a first aspect of the present invention, there is provided a back pressure control method for a packet switch for outputting an input packet to a predetermined destination, wherein the packet length of the input packet is shared. It counts based on a threshold value set in advance by the back pressure counter, and when the packet length counted by the shared back pressure counter exceeds the threshold value of the shared back pressure counter, it is set in advance by the individual back pressure counter. The packet length is counted based on the threshold value.

【0007】請求項2記載のバックプレッシャ制御方法
は、請求項1記載のバックプレッシャ制御方法におい
て、パケット長が個別バックプレッシャカウンタのあら
かじめ設定された閾値を越える場合には、パケットスイ
ッチへのパケットの入力を制限するものである。
According to a second aspect of the present invention, there is provided a back pressure control method according to the first aspect, wherein when the packet length exceeds a preset threshold value of an individual back pressure counter, the packet is transmitted to a packet switch. It restricts input.

【0008】請求項3記載のバックプレッシャ制御方法
は、請求項1または2記載のバックプレッシャ制御方法
において、個別バックプレッシャカウンタをパケットス
イッチにパケットを入力する複数の送信元に対応して設
けるものである。
A back pressure control method according to a third aspect of the present invention is the back pressure control method according to the first or second aspect, wherein individual back pressure counters are provided corresponding to a plurality of transmission sources that input packets to the packet switch. is there.

【0009】請求項4記載のバックプレッシャ制御方法
は、請求項1ないし3のいずれか一に記載のバックプレ
ッシャ制御方法において、パケットを複数の固定長のペ
ージに分割し、この分割した複数のページをカウントし
てパケット長をカウントするものである。
A back pressure control method according to a fourth aspect of the present invention is the back pressure control method according to any one of the first to third aspects, wherein the packet is divided into a plurality of fixed-length pages, and the divided plurality of pages are divided. Is counted to count the packet length.

【0010】請求項5記載のバックプレッシャ制御方法
は、請求項4記載のバックプレッシャ制御方法におい
て、パケットを構成する複数のページを所定の宛先に出
力させるスイッチ処理部に転送する際に、複数のページ
をパケットメモリに保存し、パケットメモリにパケット
を構成する全てのページが保存された後にスイッチ処理
部に連続的にページを転送するものである。
According to a fifth aspect of the present invention, there is provided a back pressure control method according to the fourth aspect, wherein a plurality of pages constituting a packet are transferred to a switch processing unit for outputting a plurality of pages to a predetermined destination. The page is stored in the packet memory, and after all the pages constituting the packet are stored in the packet memory, the pages are continuously transferred to the switch processing unit.

【0011】請求項6記載のバックプレッシャ制御装置
は、入力されたパケットを所定の宛先に出力するパケッ
トスイッチのバックプレッシャ制御装置において、閾値
を有し入力されたパケットのパケット長をカウントする
共有バックプレッシャカウンタと、閾値を有し前記共有
バックプレッシャカウンタにてカウントしたパケット長
が前記共有バックプレッシャカウンタの閾値を越えると
前記パケットのパケット長をカウントする個別バックプ
レッシャカウンタとを具備したものである。
A back pressure control device according to a sixth aspect of the present invention is a back pressure control device of a packet switch for outputting an input packet to a predetermined destination, wherein the back pressure control device has a threshold and counts the packet length of the input packet. A pressure counter, and an individual back pressure counter that counts the packet length of the packet when the packet length counted by the shared back pressure counter exceeds the threshold value of the shared back pressure counter.

【0012】請求項7記載のバックプレッシャ制御装置
は、請求項6記載のバックプレッシャ制御装置におい
て、個別バックプレッシャカウンタは、パケットスイッ
チにパケットを入力する複数の送信元に対応して複数設
けたものである。
According to a seventh aspect of the present invention, there is provided the back pressure control device according to the sixth aspect, wherein a plurality of individual back pressure counters are provided corresponding to a plurality of transmission sources for inputting a packet to the packet switch. It is.

【0013】請求項8記載のバックプレッシャ制御装置
は、請求項6または7記載のバックプレッシャ制御装置
において、パケットを複数の固定長のページに分割する
受信処理部を具備し、共有バックプレッシャカウンタお
よび個別バックプレッシャカウンタは、分割された複数
のページをカウントしてパケット長をカウントするもの
である。
According to an eighth aspect of the present invention, there is provided a back pressure control device according to the sixth or seventh aspect, further comprising a reception processing unit for dividing a packet into a plurality of fixed-length pages, a shared back pressure counter, The individual back pressure counter counts a plurality of divided pages and counts a packet length.

【0014】請求項9記載のバックプレッシャ制御装置
は、請求項6ないし8のいずれか一に記載のバックプレ
ッシャ制御装置において、パケットを構成する複数のペ
ージを所定の宛先に出力するスイッチ処理部と、複数の
ページを保存するパケットメモリと、パケットメモリに
パケットを構成する全てのページが保存された後にスイ
ッチ処理部に連続的にページを転送するパケットメモリ
管理部とを具備したものである。
A back pressure control device according to a ninth aspect of the present invention is the back pressure control device according to any one of the sixth to eighth aspects, wherein the switch processing unit outputs a plurality of pages constituting the packet to a predetermined destination. , A packet memory for storing a plurality of pages, and a packet memory management unit for continuously transferring the pages to the switch processing unit after all the pages constituting the packet are stored in the packet memory.

【0015】[0015]

【発明の実施の形態】次に、本発明の一実施の形態を示
すパケットスイッチの構成を、図面を参照して説明す
る。
Next, the configuration of a packet switch according to an embodiment of the present invention will be described with reference to the drawings.

【0016】図1は、本発明の一実施の形態を示すパケ
ットスイッチのブロック図である。
FIG. 1 is a block diagram of a packet switch according to an embodiment of the present invention.

【0017】図1において、1はパケットスイッチで、
このパケットスイッチ1は、入力バッファ処理部40〜
45と出力バッファ50〜55とを一組とした複数のバ
ッファ処理部30〜35と、これら複数のバッファ処理
部30〜35の相互のデータを交信するスイッチ処理部
2とを備えている。また、バッファ処理部30〜35
は、それぞれパケットの入出力インターフェースを有
し、これら入出力インターフェースを介して種々の機能
を有したパケット処理部20〜25が接続されている。
In FIG. 1, 1 is a packet switch,
The packet switch 1 includes input buffer processing units 40 to
The system includes a plurality of buffer processing units 30 to 35, each of which includes a set of an output buffer 45 and output buffers 50 to 55, and a switch processing unit 2 for communicating data between the plurality of buffer processing units 30 to 35. Also, the buffer processing units 30 to 35
Have packet input / output interfaces, and are connected to packet processing units 20 to 25 having various functions via these input / output interfaces.

【0018】そして、バッファ処理部30〜35の入力
バッファ処理部40〜45は、パケット処理部20〜2
5からパケットの入力インターフェースを介してパケッ
トおよびこのパケットの宛先となるバッファ処理部30
〜35の宛先番号が伝送される。さらに、このパケット
と宛先番号とを受信した入力バッファ処理部40〜45
は、受信したパケットを複数のページという固定長パケ
ットに分割し、出力インターフェースを介して宛先番号
とともにスイッチ処理部2に伝送する。
The input buffer processing units 40 to 45 of the buffer processing units 30 to 35 are
5 through the packet input interface and the buffer processing unit 30 serving as the destination of the packet.
~ 35 destination numbers are transmitted. Further, the input buffer processing units 40 to 45 receiving the packet and the destination number
Divides the received packet into fixed-length packets of a plurality of pages, and transmits the divided packets to the switch processing unit 2 together with the destination number via the output interface.

【0019】また、固定長パケットおよび宛先番号を受
信したスイッチ処理部2は、宛先番号に基づいて複数の
固定長パケットであるページを宛先のバッファ処理部3
0〜35の出力バッファ処理部50〜55にパケットの
入力インターフェースを介して転送する。そして、複数
のページを受信した出力バッファ処理部50〜55は、
受信したページからパケットを再生し、パケットの出力
インターフェースを介して再生したパケットをパケット
処理部20〜25に伝送する。
Further, the switch processing unit 2 having received the fixed-length packet and the destination number converts the pages, which are a plurality of fixed-length packets, to the destination buffer processing unit 3 based on the destination number.
The packet is transferred to the output buffer processing units 50 to 55 of 0 to 35 via the input interface of the packet. Then, the output buffer processing units 50 to 55 receiving the plurality of pages,
The packet is reproduced from the received page, and the reproduced packet is transmitted to the packet processing units 20 to 25 via the packet output interface.

【0020】一方、出力バッファ処理部50〜55は、
複数のうちのいずれか特定の入力バッファ処理部40〜
45からパケットの入力制限を行う、すなわちバックプ
レッシャを行うため、常時入力制限情報をスイッチ処理
部2に出力する。
On the other hand, the output buffer processing units 50 to 55
Any one of a plurality of specific input buffer processing units 40 to
From 45, input restriction information is constantly output to the switch processing unit 2 in order to restrict the input of the packet, that is, perform the back pressure.

【0021】そして、スイッチ処理部2は、入力された
入力制限情報に基づいて、いずれの入力バッファ処理部
40〜45からパケットを制限するかを判断し、入力制
限情報を複数の入力バッファ処理部40〜45に出力制
限情報として常時出力する。このスイッチ処理部2から
入力される出力制限情報に基づいて、入力バッファ処理
部40〜45は、特定のバッファ処理部30〜35へペ
ージの転送を制限する。
The switch processing unit 2 determines which of the input buffer processing units 40 to 45 should limit the packet based on the input input restriction information, and converts the input restriction information to a plurality of input buffer processing units. 40 to 45 are always output as output restriction information. Based on the output restriction information input from the switch processing unit 2, the input buffer processing units 40 to 45 restrict the transfer of pages to specific buffer processing units 30 to 35.

【0022】次に、入力バッファ処理部40〜45の詳
細な説明を図2に示すブロック図を参照して説明する。
なお、各入力バッファ処理部40〜45は、同一の構成
であるため、入力バッファ処理部40について説明す
る。
Next, the input buffer processing units 40 to 45 will be described in detail with reference to the block diagram shown in FIG.
Since the input buffer processing units 40 to 45 have the same configuration, only the input buffer processing unit 40 will be described.

【0023】入力バッファ処理部40は、この入力バッ
ファ処理部40に入力インターフェースを介してパケッ
ト処理部20に接続された受信処理部60を備えてい
る。そして、この受信処理部60には、ページ識別部6
2およびリード/ライト制御部63が接続されている。
この受信処理部60は、対応するパケット処理部20か
らパケットおよびパケットの宛先番号を受信すると、パ
ケットを複数のページという固定長パケットに分割し、
固定長パケットである複数のページおよび宛先番号をリ
ード/ライト制御部63とページ識別部62に出力す
る。
The input buffer processing unit 40 includes a reception processing unit 60 connected to the packet processing unit 20 via an input interface. The reception processing unit 60 includes the page identification unit 6
2 and the read / write control unit 63 are connected.
Upon receiving the packet and the destination number of the packet from the corresponding packet processing unit 20, the reception processing unit 60 divides the packet into a plurality of pages of fixed length packets,
A plurality of pages and destination numbers, which are fixed-length packets, are output to the read / write control unit 63 and the page identification unit 62.

【0024】また、ページ識別部62には、リンクリス
ト管理部66およびフリーリスト管理部67を備えたパ
ケットメモリ管理部64とリンクヘッダ生成部68とが
接続されている。そして、ページ識別部62は、受信処
理部60からリード/ライト制御部63に出力されるペ
ージの入力通知を、このページがパケットのどの位置の
情報を含むものであるかを示す位置情報として、宛先番
号とともにパケットメモリ管理部64とリンクヘッダ生
成部68とに出力する。
The page identification section 62 is connected to a packet memory management section 64 having a link list management section 66 and a free list management section 67, and a link header generation section 68. Then, the page identification unit 62 sends the page input notification output from the reception processing unit 60 to the read / write control unit 63 as the location information indicating which location of the packet contains the destination number as the location information indicating the location of the packet. At the same time, the data is output to the packet memory management unit 64 and the link header generation unit 68.

【0025】一方、リード/ライト制御部63には、パ
ケットメモリ61およびパケットメモリ管理部64が接
続されているとともに、出力インターフェースを介して
スイッチ処理部2に接続されている。そして、リード/
ライト制御部63は、受信処理部60からページを受信
するとともにパケットメモリ管理部64からアドレスと
ライト制御信号を受信し、受信したページをパケットメ
モリ61に書き込んで保存する。さらに、リード/ライ
ト制御部63は、パケットメモリ管理部64からリード
制御信号とアドレスと宛先番号を受信し、これらの情報
を受信することによりパケットメモリ61に保存したペ
ージを読み出し、宛先番号とページとを出力インターフ
ェースを介してスイッチ制御部2に出力する。
On the other hand, a packet memory 61 and a packet memory management unit 64 are connected to the read / write control unit 63, and are also connected to the switch processing unit 2 via an output interface. And lead /
The write control unit 63 receives a page from the reception processing unit 60, receives an address and a write control signal from the packet memory management unit 64, and writes and stores the received page in the packet memory 61. Further, the read / write control unit 63 receives a read control signal, an address, and a destination number from the packet memory management unit 64, reads out the page stored in the packet memory 61 by receiving these information, and reads the destination number and the page number. Are output to the switch control unit 2 via the output interface.

【0026】また、パケットメモリ管理部64には、ペ
ージ識別部62、リード/ライト制御部63、リンクヘ
ッダ生成部68およびスイッチ処理部2とが接続されて
いるとともに、リンクメモリ65が接続されている。そ
して、パケットメモリ管理部64は、リード/ライト制
御部63によるパケットメモリ61とのページの読み出
しおよび書き込みのアドレス管理とタイミング制御とを
リード/ライト制御部63に対して行う。このパケット
メモリ61のアドレス管理は、パケットメモリ管理部6
4を構成するリンクリスト管理部66とフリーリスト管
理部67とが、リンクメモリ65を用いて管理する。ま
た、パケットメモリ管理部64は、リンクヘッダ生成部
68に対してスイッチ処理部2に送信すべきパケットが
存在するか否かを監視するとともに、スイッチ処理部2
から入力される出力制限情報に基づいてリンクヘッダ生
成部68からリンクヘッダ情報を読み出し、読み出しア
ドレスをリード・ライト制御部63に通知することで、
パケットメモリ61からスイッチ処理部2にパケットを
構成する複数のページを転送させる。
The packet memory management unit 64 is connected to a page identification unit 62, a read / write control unit 63, a link header generation unit 68, and a switch processing unit 2, and is also connected to a link memory 65. I have. Then, the packet memory management unit 64 controls the read / write control unit 63 to perform address management and timing control for reading and writing pages from / to the packet memory 61 by the read / write control unit 63. The address management of the packet memory 61 is performed by the packet memory management unit 6.
The link list management unit 66 and the free list management unit 67 constituting the management unit 4 manage using the link memory 65. Further, the packet memory management unit 64 monitors the link header generation unit 68 to determine whether or not there is a packet to be transmitted to the switch processing unit 2.
By reading the link header information from the link header generation unit 68 based on the output restriction information input from the, and notifying the read address to the read / write control unit 63,
A plurality of pages constituting a packet are transferred from the packet memory 61 to the switch processing unit 2.

【0027】そして、フリーリスト管理部67は、ペー
ジ識別部62からページが入力されたことを通知される
と、パケットメモリ61にページを書き込むためのアド
レスをフリーリストから1つ読み出すとともに、この読
み出したアドレスをフリーリストから削除する。ここ
で、フリーリストとは、パケットメモリ61の空きのア
ドレスが順番に並べられたリストであり、これらアドレ
スはリンクメモリ65に保存される。
When notified that a page has been input from the page identification section 62, the free list management section 67 reads one address for writing a page into the packet memory 61 from the free list, and reads this address. Deleted addresses from the free list. Here, the free list is a list in which free addresses of the packet memory 61 are arranged in order, and these addresses are stored in the link memory 65.

【0028】さらに、フリーリスト管理部67は、読み
出したアドレスを、ライトアドレスとしてリード/ライ
ト制御部63、リンクリスト管理部66、リンクヘッダ
生成部68に出力する。
Further, the free list management section 67 outputs the read address to the read / write control section 63, the link list management section 66, and the link header generation section 68 as a write address.

【0029】一方、リンクリスト管理部66からアドレ
スが入力された場合、アドレスは空きのアドレスである
と判断し、フリーリスト管理部67はアドレスをフリー
リストの最後に追加してリンクメモリ65に保存する。
On the other hand, when an address is input from the link list management unit 66, it is determined that the address is a free address, and the free list management unit 67 adds the address to the end of the free list and stores it in the link memory 65. I do.

【0030】なお、フリーリストは、入力バッファ制御
部40の初期設定の際に生成し、パケットメモリ61の
全てのアドレスが1つのリンクとなるように保存され
る。
The free list is generated at the time of initial setting of the input buffer control unit 40, and is stored so that all addresses of the packet memory 61 are one link.

【0031】すなわち、図3に示すように、リンクメモ
リ65のアドレスであるa0〜anは、パケットメモリ
61のアドレスに対応させ、リンクメモリ65のa0の
位置にa1を保存し、リンクメモリ65のa1の位置に
a2を保存し、この保存を順次繰り返して全てのアドレ
スを関連付け、a0〜anまでの順番に並べられたフリ
ーリストを完成する。また、このフリーリストの最初と
最後とを識別するために、フリーヘッドポインタ91と
フリーテールポインタ92を設け、フリーヘッドポイン
タ91にa0を、フリーテールポインタ92にanを保
存する。
That is, as shown in FIG. 3, the addresses a0 to an of the link memory 65 correspond to the addresses of the packet memory 61, a1 is stored at the position a0 of the link memory 65, and a2 is stored at the position of a1, and this storage is sequentially repeated to associate all addresses, thereby completing a free list arranged in the order of a0 to an. In order to identify the beginning and end of the free list, a free head pointer 91 and a free tail pointer 92 are provided, and a0 is stored in the free head pointer 91 and an is stored in the free tail pointer 92.

【0032】そして、フリーリスト管理部67がアドレ
スを出力する際、図4に示すように、フリーヘッドポイ
ンタ91に保存されているアドレスa0を出力するとと
もに、このフリーヘッドポインタ91が示すアドレスa
0に保存されているアドレスa1を読み出し、これをフ
リーヘッドポインタ91に保存して、フリーリストから
アドレスa0を削除する。
When the free list management section 67 outputs an address, as shown in FIG. 4, it outputs the address a0 stored in the free head pointer 91, and outputs the address a0 indicated by the free head pointer 91.
The address a1 stored at 0 is read, the address is stored in the free head pointer 91, and the address a0 is deleted from the free list.

【0033】また、リンクリスト管理部66からフリー
リスト管理部67にアドレスが出力された場合、図5に
示すように、出力されたアドレスは、フリーリストにリ
ンクされていないアドレスが出力される。すなわち、図
4に示すように、アドレスa0がフリーリストにリンク
されていないので、このアドレスa0がリンクリスト管
理部66から通知される。このとき、フリーリスト管理
部67は、図5に示すように、フリーテールポインタ9
2が示すリンクメモリ65のアドレスanに、アドレス
anを書き込んだ後、フリーテールポインタ92にもア
ドレスa0を書き込み、フリーリストの最後にアドレス
a0を追加する。
When an address is output from the link list management section 66 to the free list management section 67, as shown in FIG. 5, the output address is an address that is not linked to the free list. That is, as shown in FIG. 4, since the address a0 is not linked to the free list, the address a0 is notified from the link list management unit 66. At this time, the free list management unit 67, as shown in FIG.
After writing the address an to the address an of the link memory 65 indicated by No. 2, the address a0 is also written to the free tail pointer 92, and the address a0 is added to the end of the free list.

【0034】このように、ページがパケットメモリ61
に書き込まれる毎にフリーヘッドポインタ91が更新さ
れ、逆にパケットメモリ61からページが読み出される
毎にフリーテールポインタ92が更新される。
As described above, the page is stored in the packet memory 61.
Is updated every time a page is read from the packet memory 61, and the free tail pointer 92 is updated each time a page is read from the packet memory 61.

【0035】そして、リンクリスト管理部66は、フリ
ーリスト管理部67から受け取ったアドレスと、ページ
識別部62から受け取ったページ入力の通知とから、パ
ケット毎にリンクリストを生成する。ここで、リンクリ
ストとは、フリーリスト管理部67から出力されたアド
レスと、ページ識別部62から通知されたパケットの位
置情報とを、出力された順序で並べられたリストであ
り、これらアドレスと位置情報とは、リンクメモリ65
において保存される。
The link list management unit 66 generates a link list for each packet from the address received from the free list management unit 67 and the page input notification received from the page identification unit 62. Here, the link list is a list in which the addresses output from the free list management unit 67 and the position information of the packets notified from the page identification unit 62 are arranged in the output order. The position information is the link memory 65
Saved in

【0036】また、リンクリスト管理部66は、リンク
ヘッダ生成部68からリンクヘッダ情報を受け取ると、
その中に指示されているパケットの宛先番号とスイッチ
処理部2からの出力制限情報とを比較することによりパ
ケットの転送が可能か否かを判断する。さらに、リンク
ヘッダ情報の中に含まれているアドレス情報から、その
パケットに対するリンクリストの最初の位置を確認す
る。そして、リンクメモリ65から、このパケットを構
成するページが保存されているアドレスを読み出し、こ
れらリードアドレスとして、宛先番号およびリード制御
信号と一緒にリード/ライト制御部63とフリーリスト
管理部67とに出力する。
When the link list management unit 66 receives the link header information from the link header generation unit 68,
By comparing the destination number of the packet specified therein with the output restriction information from the switch processing unit 2, it is determined whether the packet can be transferred. Further, the first position of the link list for the packet is confirmed from the address information included in the link header information. Then, from the link memory 65, the address where the page making up the packet is stored is read out, and these read addresses are sent to the read / write control unit 63 and the free list management unit 67 together with the destination number and the read control signal. Output.

【0037】そして、リンクヘッダ生成部68は、ペー
ジ識別部62からパケットを構成する最初のページが入
力されたことを通知されると、パケットメモリ管理部6
4のリンクリスト管理部66から出力されるアドレスを
リンクヘッドポインタ93に保存する。また、リンクヘ
ッダ生成部68は、ページ識別部62からパケットを構
成する最後のページが入力されたことを通知されると、
リンクヘッドポインタ93のアドレス情報と宛先番号と
をリンクヘッダ情報として宛先毎の送信キューに保存す
る。そして、パケットメモリ管理部64は、この宛先毎
の送信キューにリンクヘッダ情報が含まれているか否か
を判断し、リンクヘッダ情報が含まれていることを認識
すると、リンクヘッダ生成部68からリンクヘッダ情報
を読み出す。
When the link header generation unit 68 is notified by the page identification unit 62 that the first page constituting the packet has been input, the packet memory management unit 6
4 is stored in the link head pointer 93. When the link header generation unit 68 is notified that the last page constituting the packet has been input from the page identification unit 62,
The address information and the destination number of the link head pointer 93 are stored in the transmission queue for each destination as link header information. Then, the packet memory management unit 64 determines whether or not the link queue information is included in the transmission queue for each destination, and when recognizing that the link header information is included, the link Read the header information.

【0038】仮に、特定の宛先番号に対して出力制限が
行われていたならば、パケットメモリ管理部64は、こ
の宛先の送信キューにリンクヘッダ情報が含まれたとし
ても、このリンクヘッダ情報を読み出すことなく、送信
キューに保存しておき、他の宛先に対する送信キューに
含まれているリンクヘッダ情報を読み出す。さらに、も
し、リンクヘッダ生成部68の特定の宛先に対する送信
キューが無くなったならば、パケットメモリ管理部64
は、受信処理部から転送されるこの宛先に対するページ
をパケットメモリ61に書き込むように制御を行わな
い。このため、ページをスイッチ処理部2に転送するこ
となく、出力制限情報によりパケットが廃棄されること
になる。
If the output is restricted for a specific destination number, the packet memory management unit 64 stores the link header information even if the transmission queue of the destination includes the link header information. Instead, the link header information is stored in the transmission queue, and the link header information included in the transmission queue for another destination is read. Further, if the transmission queue for the specific destination of the link header generation unit 68 is gone, the packet memory management unit 64
Does not control to write the page for this destination transferred from the reception processing unit to the packet memory 61. Therefore, the packet is discarded by the output restriction information without transferring the page to the switch processing unit 2.

【0039】すなわち、例えばパケットが4ページから
構成され、フリーリスト管理部66からa1、a3、a
5、a7の順でパケットメモリ61の空きのアドレスが
提供される場合、パケットの最初のページが入力される
と、図6に示すように、リンクリスト管理部66とリン
クヘッダ生成部68とは、フリーリスト管理部67から
アドレスa1を受け取る。このとき、リンクヘッダ生成
部68は、このアドレスa1をリンクヘッドポインタ9
3に保存する。また、リンクリスト管理部66は、内部
に設定されたリンクテールポインタ94にこのアドレス
a1を保存するとともに、リンクメモリ65のアドレス
a1に入力されたページがパケットの最後か否かを示す
ラストビットを0として書き込む。
That is, for example, a packet is composed of four pages, and a1, a3, a
When empty addresses of the packet memory 61 are provided in the order of 5, a7, when the first page of the packet is input, as shown in FIG. 6, the link list management unit 66 and the link header generation unit 68 Receives the address a1 from the free list management unit 67. At this time, the link header generation unit 68 stores the address a1 in the link head pointer 9
Save to 3. Further, the link list management unit 66 stores the address a1 in the link tail pointer 94 set therein, and sets a last bit indicating whether the page input to the address a1 of the link memory 65 is the last of the packet. Write as 0.

【0040】次に、同一のパケットの次のページが入力
されると、図7に示すように、リンクリスト管理部66
とリンクヘッダ生成部68は、フリーリスト管理部67
からアドレスa3を受け取る。このとき、リンクヘッダ
生成部68は、このアドレスa3を無視する。また、リ
ンクリスト管理部66は、リンクメモリ65のリンクテ
ールポインタ94に保存されているアドレスa1にアド
レスa3を保存し、アドレスa3にはラストビットを0
として書き込むとともに、リンクテールポインタ94を
アドレスa3に更新する。この時点で、{a1,a3}
のリンクリストが生成される。
Next, when the next page of the same packet is input, as shown in FIG.
And the link header generation unit 68 include a free list management unit 67
Receives the address a3. At this time, the link header generator 68 ignores the address a3. Further, the link list management unit 66 stores the address a3 in the address a1 stored in the link tail pointer 94 of the link memory 65, and sets the last bit to 0 in the address a3.
And updates the link tail pointer 94 to the address a3. At this point, {a1, a3}
Is generated.

【0041】同様に、アドレスa5が入力されると、図
8に示すように、リンクテールポインタ94がアドレス
a5に更新され、アドレスa3にはアドレスa5が保存
され、アドレスa5にはラストビットを0として書き込
まれ、結果として{a1,a3,a5}のリンクリスト
が生成される。
Similarly, when the address a5 is input, as shown in FIG. 8, the link tail pointer 94 is updated to the address a5, the address a5 is stored in the address a3, and the last bit is set to 0 in the address a5. Is written, and as a result, a link list of {a1, a3, a5} is generated.

【0042】そして、パケットの最後のページが入力さ
れると、図9に示すように、リンクリスト管理部66と
リンクヘッダ生成部68とは、フリーリスト管理部67
からアドレスa7を受け取る。このとき、リンクヘッダ
生成部68は、このアドレスa7を無視するが、以前に
保存してあるリンクヘッダポインタ93の値であるアド
レスa1を宛先番号と組み合わせてリンクヘッダ情報と
して内部の宛先毎の送信キューに保存する。また、リン
クリスト管理部66は、リンクメモリ65のリンクテー
ルポインタ94に保存されているアドレスa5にアドレ
スa7を書き込み、アドレスa7にラストビットを1と
して書き込んでリンクテールポインタ94をアドレスa
7に更新する。この時点で、{a1,a3,a5,a
7}のリンクリストが生成される。
When the last page of the packet is input, as shown in FIG. 9, the link list management unit 66 and the link header generation unit 68 make the free list management unit 67
Receives the address a7. At this time, the link header generation unit 68 ignores the address a7, but combines the address a1 stored as the value of the link header pointer 93 previously stored with the destination number as link header information and transmits the link header information for each internal destination. Save to queue. Further, the link list management unit 66 writes the address a7 in the address a5 stored in the link tail pointer 94 of the link memory 65, writes the last bit as 1 in the address a7, and stores the link tail pointer 94 in the address a.
Update to 7. At this point, {a1, a3, a5, a
A link list of 7 $ is generated.

【0043】この図6ないし図9に示すようにパケット
メモリ61に蓄積されたパケットを読み出す場合、図1
0に示すように、パケットメモリ管理部64は、リンク
ヘッダ生成部68から送信キューに保存してあるリンク
ヘッダ情報からアドレスa1を読み出し、このアドレス
a1を内部のヘッダポインタ95に保存する。そして、
リンクリスト管理部66は、保存したアドレスa1をリ
ード/ライト制御部63とフリーリスト管理部67とに
転送し、パケットメモリ61からページをスイッチ処理
部2に転送するとともに、リンクメモリ65のアドレス
a1のラストビットの状態が0であると認識すると、こ
こに書き込まれているアドレスa3を取り出し、ヘッダ
ポインタ95を更新する。この時点で、このパケットに
関するリンクリストは{a3,a5,a7}となる。
When reading out the packets stored in the packet memory 61 as shown in FIGS.
As indicated by 0, the packet memory management unit 64 reads the address a1 from the link header information stored in the transmission queue from the link header generation unit 68, and stores this address a1 in the internal header pointer 95. And
The link list management unit 66 transfers the stored address a1 to the read / write control unit 63 and the free list management unit 67, transfers the page from the packet memory 61 to the switch processing unit 2, and transfers the address a1 of the link memory 65. When the state of the last bit is recognized as 0, the address a3 written here is taken out and the header pointer 95 is updated. At this point, the link list for this packet is {a3, a5, a7}.

【0044】さらに、リンクリスト管理部66は、同様
にリンクメモリ65のヘッダポインタ95に保存されて
いるアドレスa3の情報を取り出し、このアドレスa3
をリード/ライト制御部63とフリーリスト管理部67
とに転送し、パケットメモリ61からページをスイッチ
処理部2に転送するとともに、リンクメモリ65のアド
レスa3のラストビットの状態が0であると認識する
と、ここに書き込まれているアドレスa5を取り出し、
ヘッダポインタ95を更新する。
Further, the link list management unit 66 similarly extracts the information of the address a3 stored in the header pointer 95 of the link memory 65, and
Read / write control unit 63 and free list management unit 67
When the page is transferred from the packet memory 61 to the switch processing unit 2 and the state of the last bit of the address a3 of the link memory 65 is recognized as 0, the address a5 written here is taken out.
The header pointer 95 is updated.

【0045】このように、ヘッダポインタ95の更新を
繰り返し、ラストビットの状態が1であると認識する
と、ヘッダポインタ95の更新を中止して上述の繰り返
し動作を終了し、結果として、パケットを構成する全て
のページがスイッチ処理部2に転送される。
As described above, when the update of the header pointer 95 is repeated and the state of the last bit is recognized to be 1, the update of the header pointer 95 is stopped, and the above-described repetition operation is terminated. All the pages to be processed are transferred to the switch processing unit 2.

【0046】次に、出力バッファ処理部50〜55の詳
細な説明を図11に示すブロック図を参照して説明す
る。なお、各出力バッファ処理部50〜55は、同一の
構成であるため、出力バッファ処理部50について説明
する。
Next, the output buffer processing units 50 to 55 will be described in detail with reference to the block diagram shown in FIG. Since the output buffer processing units 50 to 55 have the same configuration, only the output buffer processing unit 50 will be described.

【0047】出力バッファ処理部50は、この出力バッ
ファ処理部50に出力インターフェースを介してスイッ
チ処理部2に接続されたページ識別部70およびリード
/ライト制御部72を備えている。
The output buffer processing unit 50 includes a page identification unit 70 and a read / write control unit 72 connected to the switch processing unit 2 via an output interface.

【0048】また、ページ識別部70には、リンクリス
ト管理部66およびフリーリスト管理部67を備えたパ
ケットメモリ管理部64と、カウンタ制御部75と、リ
ンクヘッダ生成部78とが接続されている。そして、ペ
ージ識別部70は、スイッチ処理部2から出力されるペ
ージおよび送信元番号から、リード/ライト制御部72
に出力されるページの入力通知をこのページがパケット
のどの位置の情報を含んでいるのかを示す位置情報と送
信元番号として、パケットメモリ管理部73、カウンタ
制御部75およびリンクヘッダ生成部78に出力する。
The page identification section 70 is connected to a packet memory management section 64 having a link list management section 66 and a free list management section 67, a counter control section 75, and a link header generation section 78. . Then, the page identification unit 70 determines the read / write control unit 72 from the page output from the switch processing unit 2 and the transmission source number.
The input notification of the page output to the packet memory management unit 73, the counter control unit 75, and the link header generation unit 78 as the position information and the transmission source number indicating which position of the packet this page contains. Output.

【0049】一方、リード/ライト制御部72には、パ
ケットメモリ71、パケットメモリ管理部73および送
信処理部79が接続されている。そして、リード/ライ
ト制御部72は、スイッチ処理部2からページを入力す
るとともにパケットメモリ管理部73からアドレスとラ
イト制御信号とを入力すると、スイッチ処理部2から入
力したページをパケットメモリ71に書き込んで保存す
る。さらに、パケットメモリ管理部73からリード制御
信号とアドレスとが入力されると、パケットメモリ71
からページを読み出し、読み出したページを送信処理部
79に出力する。
On the other hand, the read / write control section 72 is connected to a packet memory 71, a packet memory management section 73, and a transmission processing section 79. When the read / write control unit 72 inputs a page from the switch processing unit 2 and inputs an address and a write control signal from the packet memory management unit 73, the read / write control unit 72 writes the page input from the switch processing unit 2 into the packet memory 71. To save. Further, when the read control signal and the address are input from the packet memory management unit 73, the packet memory 71
, And outputs the read page to the transmission processing unit 79.

【0050】また、パケットメモリ管理部73には、ペ
ージ識別部70、リード/ライト制御部72、リンクヘ
ッダ生成部78、リンクメモリ77、送信処理部79お
よびカウンタ制御部75に接続されたアカウントメモリ
76が接続されている。そして、パケットメモリ管理部
73は、リード/ライト制御部72によるパケットメモ
リ71とのページの読み出しおよび書き込みのアドレス
管理とタイミング制御とをリード/ライト制御部72に
対して行う。このパケットメモリ71のアドレス管理
は、パケットメモリ管理部73を構成するリンクリスト
管理部80とフリーリスト管理部81とが、リンクメモ
リ77を用いて管理する。また、パケットメモリ管理部
73は、送信処理部79にパケットを構成する複数のペ
ージを転送するため、送信処理部79からリンクヘッダ
情報を受信することにより、パケットメモリ71から複
数のページを読み出す際のタイミング制御をする。さら
に、パケットメモリ管理部73は、バックプレッシャ機
能とパケットメモリ71のアドレス管理との相関性を持
たせるために、アカウントメモリ76にリード/ライト
制御部72に対して出力したアドレスを出力するととも
に、この制御信号をカウンタ制御部7に出力する。
The packet memory management section 73 includes a page identification section 70, a read / write control section 72, a link header generation section 78, a link memory 77, a transmission processing section 79, and an account memory connected to the counter control section 75. 76 is connected. Then, the packet memory management unit 73 controls the read / write control unit 72 for address management and timing control for reading and writing pages to and from the packet memory 71 by the read / write control unit 72. The address management of the packet memory 71 is managed by a link list management unit 80 and a free list management unit 81 constituting the packet memory management unit 73 using a link memory 77. The packet memory management unit 73 receives the link header information from the transmission processing unit 79 to transfer the plurality of pages constituting the packet to the transmission processing unit 79, and reads out the plurality of pages from the packet memory 71. Timing control. Further, the packet memory management unit 73 outputs the address output to the read / write control unit 72 to the account memory 76 in order to provide a correlation between the back pressure function and the address management of the packet memory 71. This control signal is output to the counter control unit 7.

【0051】そして、フリーリスト管理部81は、入力
バッファ処理部40に設けられているフリーリスト管理
部67と同様の動作により、ページ識別部70からペー
ジが入力されたことを通知されると、パケットメモリ7
1にページを書き込むためのアドレスをフリーリストか
ら1つ読み出すとともに、この読み出したアドレスをフ
リーリストから削除する。ここで、フリーリストとは、
パケットメモリ71の空きのアドレスが順番に並べられ
たリストであり、これらアドレスはリンクメモリ77に
保存される。
When the free list management unit 81 is notified that a page has been input from the page identification unit 70 by the same operation as the free list management unit 67 provided in the input buffer processing unit 40, Packet memory 7
One address for writing a page to 1 is read from the free list, and the read address is deleted from the free list. Here, the free list is
A list in which free addresses of the packet memory 71 are arranged in order, and these addresses are stored in the link memory 77.

【0052】さらに、フリーリスト管理部81は、読み
出したアドレスを、ライトアドレスとしてリード/ライ
ト制御部72、リンクリスト管理部80、リンクヘッダ
生成部78およびアカウントメモリ76に出力する。
Further, free list management section 81 outputs the read address to read / write control section 72, link list management section 80, link header generation section 78, and account memory 76 as a write address.

【0053】一方、リンクリスト管理部80からアドレ
スが入力された場合、アドレスは空きのアドレスである
と判断し、フリーリスト管理部81はアドレスをフリー
リストの最後に追加してリンクメモリ77に保存する。
On the other hand, when an address is input from the link list management unit 80, it is determined that the address is a free address, and the free list management unit 81 adds the address to the end of the free list and stores it in the link memory 77. I do.

【0054】なお、フリーリストは、図3ないし図5に
示す入力バッファ制御部40と同様に、初期設定の際に
生成し、パケットメモリ71の全てのアドレスが1つの
リンクとなるように保存される。このアドレスをリンク
メモリ77に保存する方法は、入力バッファ処理部40
と同様であるため、説明を省略する。
The free list is generated at the time of initial setting, as in the case of the input buffer control unit 40 shown in FIGS. 3 to 5, and is stored so that all addresses of the packet memory 71 become one link. You. The method of storing this address in the link memory 77 is based on the input buffer processor 40.
Therefore, the description is omitted.

【0055】そして、リンクリスト管理部80は、入力
バッファ処理部40と同様に、フリーリスト管理部81
から受け取ったアドレスと、ページ識別部70から受け
取ったページ入力の通知とから、パケット毎にリンクリ
ストを生成する。ここで、リンクリストとは、フリーリ
スト管理部81から出力されたアドレスと、ページ識別
部70から通知されたパケットの位置情報とを、出力さ
れた順序で並べられたリストであり、これらアドレスと
位置情報とは、リンクメモリ77において保存される。
Then, like the input buffer processing unit 40, the link list management unit 80 includes a free list management unit 81.
A link list is generated for each packet based on the address received from the server and the page input notification received from the page identification unit 70. Here, the link list is a list in which the addresses output from the free list management unit 81 and the position information of the packets notified from the page identification unit 70 are arranged in the output order. The position information is stored in the link memory 77.

【0056】また、リンクリスト管理部80は、送信処
理部79からリンクヘッダ情報を受け取ると、その中に
含まれているアドレス情報からそのパケットに対するリ
ンクリストの最初の位置を認識する。そして、リンクメ
モリ77から、このパケットを構成するページが保存さ
れているアドレスを読み出し、これらリードアドレスと
して、リード/ライト制御部72、フリーリスト管理部
81およびアカウントメモリ76に出力する。
Upon receiving the link header information from the transmission processing unit 79, the link list management unit 80 recognizes the first position of the link list for the packet from the address information contained therein. Then, the address at which the page making up the packet is stored is read out from the link memory 77, and is output to the read / write control unit 72, the free list management unit 81, and the account memory 76 as these read addresses.

【0057】さらに、リンクヘッダ生成部78は、ペー
ジ識別部70からパケットを構成する最初のページが入
力されたことを通知されると、パケットメモリ管理部7
3のリンクリスト管理部80から出力されるアドレスを
送信元番号毎のリンクヘッドポインタ93に保存する。
また、リンクヘッダ生成部78は、ページ識別部70か
らパケットを構成する最後のページが入力されたことを
通知されると、リンクヘッドポインタ93に保存された
アドレス情報をリンクヘッダ情報として送信処理部79
に出力する。
Further, when the link header generation unit 78 is notified from the page identification unit 70 that the first page constituting the packet has been input, the packet memory management unit 7
3 is stored in the link head pointer 93 for each transmission source number.
Further, upon being notified from the page identification section 70 that the last page constituting the packet has been input, the link header generation section 78 uses the address information stored in the link head pointer 93 as link header information as the transmission processing section. 79
Output to

【0058】ここで、このリンクリストの生成方法は、
入力バッファ処理部40と同様であるため、説明を省略
する。なお、入力バッファ処理部40との相違点は、ペ
ージをパケットメモリ71から読み出す際、入力バッフ
ァ処理部40はリンクヘッダ情報がリンクヘッダ生成部
68から入力されるのに対し、出力バッファ処理部50
は送信処理部79から入力される点、スイッチ処理部2
から複数の入力バッファ処理部40〜45からページが
無秩序に入力されるため、リンクリストの生成に利用さ
れるリンクヘッドポインタ93および、リンクテールポ
インタ94が入力バッファ処理部40〜45の個数分必
要となる点である。
Here, this link list generation method is as follows.
Since it is the same as the input buffer processing unit 40, the description is omitted. The difference from the input buffer processing unit 40 is that when reading a page from the packet memory 71, the input buffer processing unit 40 receives the link header information from the link header generation unit 68 while the output buffer processing unit 50
Is a point input from the transmission processing unit 79, the switch processing unit 2
Since the pages are randomly input from the plurality of input buffer processing units 40 to 45, the link head pointers 93 and link tail pointers 94 used for generating the link list are required for the number of input buffer processing units 40 to 45. This is the point.

【0059】また、カウンタ制御部75には、バックプ
レッシャカウンタ74が接続されている。このバックプ
レッシャカウンタ74は、共有バックプレッシャカウン
タと、送信元番号毎の個別バックプレッシャカウンタと
を有している。そして、カウンタ制御部75からの指示
により、それぞれの共有バックプレッシャカウンタおよ
び個別バックプレッシャカウンタのカウント値をインク
リメントあるいはデクリメントとする。また、それぞれ
の共有バックプレッシャカウンタおよび個別バックプレ
ッシャカウンタは、あらかじめカウント値に対する閾値
が設定されており、カウント値がその閾値を越えた場合
にその状況をカウンタ監視部に通知する。
The counter control unit 75 is connected to a back pressure counter 74. The back pressure counter 74 has a shared back pressure counter and an individual back pressure counter for each transmission source number. Then, according to an instruction from the counter control unit 75, the count value of each of the shared back pressure counter and the individual back pressure counter is incremented or decremented. Further, a threshold value for the count value is set in advance for each of the shared backpressure counter and the individual backpressure counter, and when the count value exceeds the threshold value, the counter monitoring unit is notified of the situation.

【0060】そして、カウンタ制御部75は、ページ識
別部70からページが入力されたことを通知される毎に
インクリメントするバックプレッシャカウンタを選択
し、そのバックプレッシャカウンタのカウント値をイン
クリメントするようにバックプレッシャカウンタ74に
指示する。さらに、ページがパケットメモリ71に書き
込まれる際、パケットメモリ管理部73から入力される
アドレスに対し、選択したバックプレッシャカウンタの
番号をアカウントメモリ76に書き込む。
The counter control unit 75 selects a back pressure counter to be incremented every time a page is notified from the page identification unit 70, and increments the back pressure counter by a counter value. Instruct the pressure counter 74. Further, when a page is written to the packet memory 71, the number of the selected back pressure counter is written to the account memory 76 for the address input from the packet memory management unit 73.

【0061】また、カウンタ制御部75は、パケットメ
モリ管理部73からパケットメモリ71のページの読み
出しが指示されると、パケットメモリ管理部73から入
力されるアドレスに対し、アカウントメモリ76に保存
されているバックプレッシャカウンタの番号を読み出
し、その番号で指示されるバックプレッシャカウンタの
カウント値をデクリメントするようにバックプレッシャ
カウンタ74に指示する。
When the reading of the page of the packet memory 71 is instructed from the packet memory management unit 73, the counter control unit 75 stores the address input from the packet memory management unit 73 in the account memory 76. The number of the back pressure counter is read out, and the back pressure counter 74 is instructed to decrement the count value of the back pressure counter indicated by the number.

【0062】そして、ページが入力された際にカウンタ
制御部75が選択するバックプレッシャカウンタは、そ
のページの送信元に関わらず最初に共有バックプレッシ
ャカウンタを選択する。仮に、共有バックプレッシャカ
ウンタのカウント値が設定されている閾値を越えたこと
が通知されている場合には、入力したページの送信元の
個別バックプレッシャカウンタを選択する。そして、個
別バックプレッシャカウンタのカウント値が設定されて
いる閾値を越えていることを通知された場合、カウンタ
制御部75はその個別バックプレッシャカウンタに対す
る送信元に対して入力制限をするように入力制限情報を
スイッチ処理部2に出力する。
The back pressure counter selected by the counter control unit 75 when a page is input first selects the shared back pressure counter regardless of the source of the page. If it is notified that the count value of the shared back pressure counter has exceeded the set threshold value, the individual back pressure counter of the source of the input page is selected. Then, when notified that the count value of the individual back pressure counter exceeds the set threshold value, the counter control unit 75 sets the input limit to the source for the individual back pressure counter so as to limit the input. The information is output to the switch processing unit 2.

【0063】ここで、リンクメモリ77およびアカウン
トメモリ76のアドレスは、パケットメモリ71のアド
レスに一致している。すなわち、図12、図13に示す
ように、例えば、アドレスa0は、1つのページが保存
されるパケットメモリ71のアドレスを指すと共に、リ
ンクメモリ77および、アカウントメモリ76におい
て、そのページに対する付加情報が保存されているアド
レスを指す。付加情報とは、リンクメモリ77におい
て、アドレスa0で指定されるページが関連する次のペ
ージのアドレス情報を指し、アカウントメモリ76にお
いて、もし、アドレスa0で指定されるページが、パケ
ットの保存に利用されているなら、そのページがカウン
トされたバックプレッシャカウンタの番号を指す。図1
2は、ページが一度も入力されていないので、リンクメ
モリ77にはフリーリスト管理部81が管理するフリー
リストのみが生成されている。このフリーリストの最初
を表すフリーヘッドポインタ91にはアドレスa0がセ
ットされ、フリーリストの最後を表すフリーテールポイ
ンタ92にはアドレスa11がセットされ、リンクメモ
リ77の全てのアドレス、すなわちパケットメモリ71
の全てのアドレスが1つのリンクとして関係付けられて
いる。従って、例えば、アドレスa0で示されるパケッ
トメモリ71のページは、パケットの保存には利用され
ていないので、フリーページとして扱われ、そのアドレ
スに対し、リンクメモリ77は、そのページが関連する
ページのアドレスa1を保存し、また、アカウントメモ
リ76は、そのページがパケットの保存に利用されてい
ないので、そのアドレスが示すデータは、無効データと
して扱われる。
Here, the addresses of the link memory 77 and the account memory 76 match the addresses of the packet memory 71. That is, as shown in FIGS. 12 and 13, for example, the address a0 indicates the address of the packet memory 71 in which one page is stored, and the link memory 77 and the account memory 76 store additional information for the page. Points to the stored address. The additional information refers to the address information of the next page to which the page specified by the address a0 is related in the link memory 77, and the page specified by the address a0 is used for storing the packet in the account memory 76. If so, it indicates the number of the back pressure counter that counted the page. FIG.
In No. 2, since no page has been input, only a free list managed by the free list management unit 81 is generated in the link memory 77. The address a0 is set in the free head pointer 91 indicating the beginning of the free list, the address a11 is set in the free tail pointer 92 indicating the end of the free list, and all addresses of the link memory 77, that is, the packet memory 71 are set.
Are associated as one link. Therefore, for example, the page of the packet memory 71 indicated by the address a0 is treated as a free page because it is not used for storing the packet, and the link memory 77 stores the address of the page related to the page. The address a1 is stored, and the data indicated by the address is treated as invalid data in the account memory 76 because the page is not used for storing the packet.

【0064】ここで、例えば5つのページから構成され
るパケットが出力バッファ処理部50に入力された場
合、図13に示すように、出力バッファ処理部50にペ
ージが入力される毎に、フリーリスト管理部81はフリ
ーリストからアドレスをa0,a1,a2,a3,a4
と取り出す。そして、これらアドレスはページをパケッ
トメモリ71に保存するためのライトアドレスとして利
用され、フリーヘッドポインタ91はアドレスa5に更
新される。また、パケットメモリ71には、取り出した
アドレスに5つのページが保存される。そして、リンク
メモリ管理部80は、リンクテールポインタ94を利用
して、ページが保存されたアドレスのリンクリストを生
成する。また、リンクヘッダ生成部78はリンクヘッド
ポインタ93にアドレスa0をセットし、アカウントメ
モリ76にはリンクリストに利用したアドレスに共有バ
ックプレッシャカウンタのカウンタ番号0が保存され
る。
Here, for example, when a packet composed of five pages is input to the output buffer processing unit 50, as shown in FIG. The management unit 81 assigns addresses a0, a1, a2, a3, a4 from the free list.
And take it out. These addresses are used as write addresses for storing the page in the packet memory 71, and the free head pointer 91 is updated to the address a5. The packet memory 71 stores five pages at the extracted address. Then, the link memory management unit 80 uses the link tail pointer 94 to generate a link list of the address where the page is stored. The link header generator 78 sets the address a0 to the link head pointer 93, and the account memory 76 stores the counter number 0 of the shared back pressure counter at the address used for the link list.

【0065】そして、送信処理部79は、リンクヘッダ
生成部78からリンクヘッダ情報が入力されると、内部
の処理状況に応じてパケットメモリ71からパケットを
読み出すために、リンクヘッダ情報をパケットメモリ管
理部73に出力する。この後、パケットメモリ71から
入力される複数のページからパケットの再組立をしてパ
ケット処理部20に出力する。
Then, when the link header information is input from the link header generation unit 78, the transmission processing unit 79 manages the link header information to read out the packet from the packet memory 71 in accordance with the internal processing status. Output to the unit 73. Thereafter, the packets are reassembled from the plurality of pages input from the packet memory 71 and output to the packet processing unit 20.

【0066】次に、上記一実施の形態の動作を説明す
る。
Next, the operation of the above embodiment will be described.

【0067】まず、パケット処理部20〜25からパケ
ットとその宛先番号を受け取った入力バッファ処理部4
0〜45は、内部の受信処理部60において複数のペー
ジという固定パケットに分割して、これをリード/ライ
ト制御部63とページ識別部62に伝える。
First, the input buffer processing unit 4 receiving the packet and its destination number from the packet processing units 20 to 25
0 to 45 are divided into fixed packets of a plurality of pages in the internal reception processing unit 60 and transmitted to the read / write control unit 63 and the page identification unit 62.

【0068】そして、ページ識別部62は、ページが入
力されたことをリンクヘッダ生成部68およびパケット
メモリ管理部64に伝える。さらに、パケットメモリ管
理部64は、そのページをパケットメモリ61に保存す
るために、パケットメモリ61の空きのアドレスをリー
ド/ライト制御部63に伝える。そして、リード/ライ
ト制御部63は、受け取ったページを、パケットメモリ
管理部64から供給されるアドレスに書き込む。
Then, page identification section 62 informs link header generation section 68 and packet memory management section 64 that the page has been input. Further, the packet memory management unit 64 notifies the read / write control unit 63 of an empty address of the packet memory 61 in order to store the page in the packet memory 61. Then, the read / write control unit 63 writes the received page to an address supplied from the packet memory management unit 64.

【0069】この動作は、リード/ライト制御部63に
入力される全てのページに対して繰り返され、その間、
パケットメモリ管理部64は、パケットを構成するペー
ジが書き込まれたパケットメモリ61のアドレスをリン
クリストとしてリンクメモリ65に保存し、リンクヘッ
ダ生成部68ではそのパケットを構成するする先頭のペ
ージが書き込まれたアドレスを記録する。そして、パケ
ットを構成する最後のページが書き込まれると、リンク
ヘッダ生成部68は、パケットの先頭ページのアドレス
を、リンクヘッダ情報として、宛先毎に用意された送信
キューに保存する。
This operation is repeated for all pages input to the read / write control unit 63.
The packet memory management unit 64 saves the address of the packet memory 61 on which the page constituting the packet is written in the link memory 65 as a link list, and the link header generation unit 68 writes the first page constituting the packet. Record the address. When the last page of the packet is written, the link header generation unit 68 stores the address of the first page of the packet as link header information in a transmission queue prepared for each destination.

【0070】また、パケットメモリ管理部64は、リン
クヘッダ生成部68の送信キューを監視し、その中にリ
ンクヘッダ情報を発見すると、そのリンクヘッダ情報に
記録されているアドレスからリンクメモリ65に保存さ
れているリンクリストの先頭のアドレス、すなわちパケ
ットメモリ61に保存されているパケットの先頭ページ
のアドレスを認識する。そして、このアドレスを利用し
て、パケットメモリ61からパケットの全ページの読み
出しを行うために、リンクメモリ65からパケットを構
成するページが書き込まれたパケットメモリ61のアド
レスをリンクリストの順番に従って取り出し、これを宛
先番号と一緒にリード/ライト制御部63に供給する。
Further, the packet memory management unit 64 monitors the transmission queue of the link header generation unit 68, and when link packet information is found therein, saves it in the link memory 65 from the address recorded in the link header information. The first address of the linked list, that is, the address of the first page of the packet stored in the packet memory 61 is recognized. Then, in order to read all the pages of the packet from the packet memory 61 using this address, the address of the packet memory 61 in which the page constituting the packet is written is taken out from the link memory 65 in the order of the link list, This is supplied to the read / write control unit 63 together with the destination number.

【0071】さらに、リード/ライト制御部63では、
パケットメモリ61からページを読み出し、宛先番号と
一緒にこのページをスイッチ処理部2に供給する。この
間、読み出しに利用したアドレスは再び、パケットメモ
リ管理部64において、パケットメモリ61の空きのア
ドレスとして管理され、他のパケットの入力において再
利用可能となる。
Further, in the read / write control unit 63,
The page is read from the packet memory 61 and this page is supplied to the switch processing unit 2 together with the destination number. During this time, the address used for reading is again managed as an empty address in the packet memory 61 by the packet memory management unit 64, and can be reused when another packet is input.

【0072】このように、入力バッファ処理部40〜4
5は、パケットメモリ61にパケットを構成する全ての
ページが一度保存された後、スイッチ処理部2にパケッ
トが供給される。また、パケットメモリ61のライト処
理とリード処理は交互に実行されることによって、両方
の動作は独立に実行することができる。
As described above, the input buffer processing units 40 to 4
In 5, the packet is supplied to the switch processing unit 2 after all pages constituting the packet are once stored in the packet memory 61. Further, the write processing and the read processing of the packet memory 61 are executed alternately, so that both operations can be executed independently.

【0073】また、入力バッファ処理部40〜45から
ページと宛先番号を受け取ったスイッチ処理部2は、そ
の宛先番号から、その宛先となる出力バッファ処理部5
0〜55を決定し、その決定された出力バッファ処理部
50〜55に対して、受け取ったページと、そのページ
を出力した入力バッファ処理部40〜45を識別可能な
送信元番号とを出力する。
Further, the switch processing unit 2 which has received the page and the destination number from the input buffer processing units 40 to 45 outputs the output buffer processing unit 5 as the destination from the destination number.
0 to 55, and outputs the received page and the transmission source number capable of identifying the input buffer processing units 40 to 45 that output the page to the determined output buffer processing units 50 to 55. .

【0074】そして、スイッチ処理部2からページと送
信元番号とを入力した出力バッファ処理部50〜55
は、これをリード/ライト制御部72とページ識別部7
0に伝える。この後、ページ識別部70は、ページが入
力されたことをリンクヘッダ生成部78、カウンタ制御
部75およびパケットメモリ管理部73に伝える。ま
た、パケットメモリ管理部73は、そのページをパケッ
トメモリ71に保存するために、パケットメモリ71の
空きのアドレスをリード/ライト制御部72に伝える。
そして、リード/ライト制御部72は、入力されたペー
ジをパケットメモリ管理部73から供給されるアドレス
に書き込む。
Then, the output buffer processing units 50 to 55 which input the page and the transmission source number from the switch processing unit 2
The read / write control unit 72 and the page identification unit 7
Tell 0. Thereafter, the page identification unit 70 notifies the link header generation unit 78, the counter control unit 75, and the packet memory management unit 73 that the page has been input. Further, the packet memory management unit 73 notifies the read / write control unit 72 of a free address of the packet memory 71 in order to store the page in the packet memory 71.
Then, the read / write control unit 72 writes the input page to the address supplied from the packet memory management unit 73.

【0075】この動作は、送信元番号ごとに実行するこ
とで、複数の入力バッファ処理部40〜45からのペー
ジ入力に対応させ、リード/ライト制御部生72に入力
される全てのページに対して繰り返される。その間、パ
ケットメモリ管理部73は、パケットを構成するページ
が書き込まれたパケットメモリ71のアドレスをリンク
リストとしてリンクメモリ77に保存し、リンクヘッダ
生成部78では、そのパケットを構成するする先頭のペ
ージが書き込まれたアドレスを記録する。
This operation is executed for each transmission source number so as to correspond to the page input from the plurality of input buffer processing units 40 to 45, and to execute the operation for all the pages input to the read / write control unit 72. Is repeated. In the meantime, the packet memory management unit 73 stores the address of the packet memory 71 in which the page constituting the packet is written in the link memory 77 as a link list, and the link header generation unit 78 stores the first page constituting the packet. Record the address where was written.

【0076】また、カウンタ制御部75では、入力した
ページをカウントするバックプレッシャカウンタ74に
設けられているカウンタを指定して、そのカウント値を
インクリメントするとともに、アカウントメモリ76を
利用して、パケットメモリ71に保存したページのアド
レスに対してカウント値のインクリメントを指定したバ
ックプレッシャカウンタの番号を関連づけて保存する。
そして、パケットを構成する最後のページが書き込まれ
ると、リンクヘッダ生成部68は、パケットの先頭ペー
ジのアドレスをリンクヘッダ情報として送信処理部79
に供給する。
The counter control unit 75 designates a counter provided in the back pressure counter 74 for counting the number of input pages, increments the count value, and uses the account memory 76 to execute the packet memory operation. The number of the back pressure counter that specifies the increment of the count value is stored in association with the address of the page stored in 71.
Then, when the last page constituting the packet is written, the link header generation unit 68 uses the address of the first page of the packet as link header information as the transmission processing unit 79.
To supply.

【0077】さらに、リンクヘッダ生成部78から、リ
ンクヘッダ情報を受け取った送信処理部79は、内部の
処理状況に応じてパケットメモリ71からパケットを読
み出すために、このリンクヘッダ情報をパケットメモリ
管理部73に供給する。そして、パケットメモリ処理部
73がリンクヘッダ情報を受け取ると、そのリンクヘッ
ダ情報に記録されているアドレスからリンクメモリ77
に保存されているリンクリストの先頭のアドレス、すな
わちパケットメモリ71に保存されているパケットの先
頭ページのアドレスを認識する。そして、このアドレス
を利用して、パケットメモリ71からパケットを構成す
る全ページの読み出しを行うために、リンクメモリ77
からパケットを構成するページが書き込まれたパケット
メモリ71のアドレスをリンクリストの順番に従って取
り出し、これをリード/ライト制御部72に供給する。
Further, the transmission processing unit 79, which has received the link header information from the link header generation unit 78, reads the link header information from the packet memory 71 in accordance with the internal processing status so as to read the packet from the packet memory management unit. 73. Then, when the packet memory processing unit 73 receives the link header information, the link memory 77 starts from the address recorded in the link header information.
Of the link list stored in the packet memory 71, that is, the address of the first page of the packet stored in the packet memory 71. The link memory 77 is used to read all the pages making up the packet from the packet memory 71 using this address.
, The address of the packet memory 71 in which the page constituting the packet is written is taken out according to the order of the link list, and supplied to the read / write control unit 72.

【0078】また、リード/ライト制御部72では、こ
のアドレスでパケットメモリ71からページを読み出
し、これを送信処理部79に供給する。この動作は、1
つのパケットに対し、リンクリストで関連付けられてい
る複数のアドレスが全て取り出されるまで繰り返され
る。この間、読み出しに利用したアドレスは、再び、パ
ケットメモリ管理部64において、パケットメモリ61
の空きのアドレスとして管理され、他のパケットの入力
において再利用可能となる。
The read / write control unit 72 reads a page from the packet memory 71 at this address and supplies it to the transmission processing unit 79. This operation is 1
The process is repeated until all addresses associated with the link list are extracted for one packet. During this time, the address used for reading is again stored in the packet memory 61 in the packet memory management unit 64.
Is managed as a free address, and can be reused when another packet is input.

【0079】一方、カウンタ制御部75では、読み出し
に利用したアドレスに関し、以前、ページが保存される
ときに関連づけたカウンタ番号をアカウントメモリ76
から読み出し、そのカウンタ番号に対するバックプレッ
シャカウンタ74のカウント値をデクリメントするよう
にバックプレッシャカウンタ74に指示する。
On the other hand, the counter control unit 75 stores the counter number associated with the address used for reading when the page was saved before, in the account memory 76.
And instructs the back pressure counter 74 to decrement the count value of the back pressure counter 74 for that counter number.

【0080】そして、リード/ライト制御部72からペ
ージを受け取った送信処理部79は、パケットの再組立
を行い、これをパケット処理部20〜25に供給する。
Then, the transmission processing unit 79, which has received the page from the read / write control unit 72, reassembles the packet and supplies it to the packet processing units 20 to 25.

【0081】このように、出力バッファ処理部50〜5
5は、パケットメモリ71にパケットを構成する全ての
ページが一度保存された後、パケット処理部20〜25
にパケットを供給する。また、パケットメモリ71のラ
イト処理とリード処理は交互に実行されることによっ
て、両方の動作は独立に実行することができる。
As described above, the output buffer processing units 50 to 5
5 indicates that after all the pages constituting the packet are once stored in the packet memory 71, the packet processing units 20 to 25
To supply the packet. Further, the write operation and the read operation of the packet memory 71 are executed alternately, so that both operations can be executed independently.

【0082】そして、バックプレッシャカウンタ74
は、共有バックプレッシャカウンタと複数の入力バッフ
ァ処理部40〜45に対応した個別バックプレッシャカ
ウンタを用意する。また、それぞれのカウンタは、あら
かじめそのカウント値に対する閾値を設定し、カウント
値がその閾値を超えた場合、その状況をカウンタ監視部
75に通知するようにする。ここで、設定する閾値は、
次のような関係において制限される。
Then, the back pressure counter 74
Prepares a shared back pressure counter and individual back pressure counters corresponding to the plurality of input buffer processing units 40 to 45. In addition, each counter sets a threshold value for the count value in advance, and when the count value exceeds the threshold value, notifies the counter monitoring unit 75 of the situation. Here, the threshold to be set is
It is restricted in the following relations.

【0083】 PM1max > BP0 + SUM(BPn) (n=1 〜 N)(1) BP0 + BPn > PSmax (2) PMmax: パケットメモリの最大保存ページ数 BP0: 共有バックプレッシャカウンタの閾値 BPn: 個別バックプレッシャカウンタの閾値 PSmax: 1つの送信元から入力されるページの最大
レートを考慮したページ数 n: 個別バックプレッシャカウンタの番号 N: 出力バッファ処理部の合計数
PM1max> BP0 + SUM (BPn) (n = 1 to N) (1) BP0 + BPn> PSmax (2) PMmax: Maximum number of stored pages in the packet memory BP0: Threshold of the shared back pressure counter BPn: Individual back Pressure counter threshold PSmax: Number of pages considering the maximum rate of pages input from one transmission source n: Individual back pressure counter number N: Total number of output buffer processing units

【0084】このため、送信元毎に個別のバックプレッ
シャカウンタのみを用意したものと比較して、パケット
メモリ71の容量を小さくすることができる。すなわ
ち、上記実施の形態では、各個別バックプレッシャカウ
ンタの閾値は、個別のバックプレッシャカウンタのみを
用意したものと比較して小さくすることが可能だからで
ある。このように、個別のバックプレッシャカウンタの
みを用意した場合、1つの送信元から入力されるパケッ
トの最大レートを考慮して閾値を決定するため、個別の
バックプレッシャカウンタの閾値を大きくする必要があ
る。これは、必然的にパケットメモリ71を大きくする
要因となる。すなわち、個別のバックプレッシャカウン
タのみ用意した場合、以下の関係になる。
Therefore, the capacity of the packet memory 71 can be reduced as compared with the case where only an individual back pressure counter is prepared for each transmission source. That is, in the above embodiment, the threshold value of each individual back pressure counter can be made smaller than that of a case where only an individual back pressure counter is prepared. As described above, when only the individual back pressure counter is prepared, the threshold value is determined in consideration of the maximum rate of the packet input from one transmission source, so that the threshold value of the individual back pressure counter needs to be increased. . This inevitably causes the packet memory 71 to be large. That is, when only an individual back pressure counter is prepared, the following relationship is obtained.

【0085】 PMmax > SUM(BPn) (n=1〜N) (3) BPn > PSmax (4)PMmax> SUM (BPn) (n = 1 to N) (3) BPn> PSmax (4)

【0086】上述したように、共有バックプレッシャカ
ウンタを用意して、その閾値を個別バックプレッシャカ
ウンタが共用することで、個別バックプレッシャカウン
タの閾値を低めに抑えることを可能にしている。すなわ
ち、閾値の合計が小さい分、パケットメモリ71の容量
を低くすることができる。
As described above, the shared back pressure counter is prepared, and the threshold value is shared by the individual back pressure counters, so that the threshold value of the individual back pressure counter can be kept low. In other words, the capacity of the packet memory 71 can be reduced because the total threshold value is small.

【0087】また、ページが入力されたとき、カウンタ
制御部75は、そのページを出力した入力バッファ処理
部40〜45に関わらず、まず、最初に共有バックプレ
ッシャカウンタを選択する。したがって、出力バッファ
処理部50〜55に入力するページの量が少ない場合
は、ほとんどがこの共有バックプレッシャカウンタでペ
ージがカウントされる。
When a page is input, the counter control unit 75 first selects a shared back pressure counter regardless of the input buffer processing units 40 to 45 that output the page. Therefore, when the amount of pages input to the output buffer processing units 50 to 55 is small, the pages are mostly counted by this shared back pressure counter.

【0088】そして、仮に、共有バックプレッシャカウ
ンタのカウント値が設定されている閾値を超えた場合、
そのとき入力されるページは、そのページを出力した入
力バッファ処理部40〜45に対して用意された個別バ
ックプレッシャカウンタを選択し、ページ数をカウント
することになる。そしてさらに、個別バックプレッシャ
カウンタのカウント値が設定されている閾値を超えた場
合、カウンタ制御部75は、その個別バックプレッシャ
カウンタに対応する入力バッファ処理部40〜45に対
して入力制限をするように、入力制限情報をスイッチ処
理部2に供給する。
If the count value of the shared back pressure counter exceeds the set threshold value,
For the page input at that time, an individual back pressure counter prepared for the input buffer processing units 40 to 45 that output the page is selected, and the number of pages is counted. Further, when the count value of the individual back pressure counter exceeds the set threshold value, the counter control unit 75 limits the input to the input buffer processing units 40 to 45 corresponding to the individual back pressure counter. Then, the input restriction information is supplied to the switch processing unit 2.

【0089】また、スイッチ処理部2では、出力バッフ
ァ処理部50〜55から入力制限を受けた入力バッファ
処理部40〜45に対し出力制限情報を出力する。この
出力制限情報を受け取った入力バッファ処理部40〜4
5は、出力制限を指示している出力バッファ処理部50
〜55宛ての送信キューにリンクヘッダ情報が保存され
ていたとしても、読み出しを行わない。すなわち、出力
制限を指示している出力バッファ処理部50〜55に対
しページの転送を行わない。したがって、この動作によ
り、パケットレベルでのバックプレッシャを可能にして
いる。
The switch processing section 2 outputs the output restriction information to the input buffer processing sections 40 to 45 which have received the input restriction from the output buffer processing sections 50 to 55. The input buffer processing units 40 to 4 receiving the output restriction information
5 is an output buffer processing unit 50 for instructing output restriction.
Even if the link header information is stored in the transmission queue addressed to .about.55, no reading is performed. That is, the page is not transferred to the output buffer processing units 50 to 55 instructing the output restriction. Therefore, this operation enables back pressure at the packet level.

【0090】なお、出力バッファ処理部50〜55は、
常にパケットメモリ71から1パケット分のページが蓄
積された後に、ページの読み出しを行っているため、カ
ウンタ制御部75は、1つのパケットを構成する複数の
ページのカウントに利用するカウンタが異なることがあ
る。しかしながら、リンクリストによってページの保存
されているアドレスを管理し、バックプレッシャカウン
タのカウント値とは無関係のため、パケットメモリ71
からのページの読み出しには影響を与えない。
The output buffer processing units 50 to 55
Since the page is always read after one packet page is accumulated from the packet memory 71, the counter control unit 75 may use different counters for counting a plurality of pages constituting one packet. is there. However, since the link list manages the address where the page is stored and is not related to the count value of the back pressure counter, the packet memory 71
It does not affect the reading of the page from.

【0091】また、共有バックプレッシャカウンタのカ
ウント値が閾値を下回っているにもかかわらず、個別バ
ックプレッシャカウンタのカウント値が閾値を上回る状
況を発生させることができる。これは、バックプレッシ
ャの要因となったパケットがパケットメモリ71から読
み出されて処理されるまで、バックプレッシャを継続
し、他の入力バッファ処理部40〜45から入力された
ページの処理に対して与える影響を低く押さえることが
できる。
Further, it is possible to generate a situation where the count value of the individual back pressure counter exceeds the threshold value even though the count value of the shared back pressure counter is lower than the threshold value. This is because the back pressure is continued until the packet that caused the back pressure is read from the packet memory 71 and processed, and the processing of the page input from the other input buffer processing units 40 to 45 is performed. The effect can be kept low.

【0092】[0092]

【発明の効果】本発明は、入力されたパケットを分割し
たページを、共有バックプレッシャカウンタと送信元の
パケットメモリに対応した個別バックプレッシャカウン
タとの2種類にてカウントするため、共有バックプレッ
シャカウンタによる閾値を個別バックプレッシャカウン
タが共有するので、個別バックプレッシャカウンタの閾
値が低めに設定でき、閾値の合計が小さく設定でき、パ
ケットメモリの容量を低く設定できるので、パケットメ
モリを大きくすることなくバックプレッシャ機能が得ら
れる。
According to the present invention, since a page obtained by dividing an input packet is counted by two types, a shared back pressure counter and an individual back pressure counter corresponding to the packet memory of the transmission source, the shared back pressure counter is used. Since the threshold value of the individual back pressure counter is shared by the individual back pressure counters, the threshold value of the individual back pressure counter can be set lower, the total of the threshold values can be set smaller, and the capacity of the packet memory can be set lower, so that the packet A pressure function is obtained.

【0093】また、共有バックプレッシャカウンタと送
信元に対応した個別バックプレッシャカウンタにてバッ
クプレッシャカウンタを構成し、通常は共有バックプレ
ッシャカウンタを用いてカウントするので、ある特定の
パケットメモリからパケット長の長いパケットが入力さ
れても、連続して到着するページに対応でき、比較的小
さいパケットメモリでもバックプレッシャ機能を得るこ
とができる。
A back pressure counter is composed of a shared back pressure counter and an individual back pressure counter corresponding to the transmission source. Normally, counting is performed using the shared back pressure counter. Even if a long packet is input, it can cope with continuously arriving pages, and a back pressure function can be obtained even with a relatively small packet memory.

【0094】そして、パケットを一旦パケットメモリに
保存した後に、パケットを構成する複数のページを出力
側に転送するかを判断するため、パケット単位でバック
プレッシャができる。
Then, after once storing the packet in the packet memory, it is determined whether or not to transfer a plurality of pages constituting the packet to the output side.

【0095】さらに、入力側のパケットメモリに対応し
て出力側に個別のバックプレッシャカウンタを設けるた
め、特定の入力側のパケットメモリからのパケットに対
してバックプレッシャを実行できる。
Further, since an individual back pressure counter is provided on the output side in correspondence with the packet memory on the input side, back pressure can be executed on a packet from a specific packet memory on the input side.

【0096】また、パケットをページという固定長のパ
ケットとして分割し、パケットスイッチの出力側でパケ
ット単位での入力ではなく、複数の入力側からページ単
位で入力できるため、1つの入力側からのパケット長の
大きなパケットによって、スイッチが占有されることな
く、複数の入力側からパケットを同時に入力できるの
で、高速なパケットスイッチングによるパケット単位で
のバックプレッシャができる。
Also, a packet is divided as a fixed length packet called a page, and the packet switch can be inputted in a page unit from a plurality of input sides instead of a packet unit input on the output side. Packets can be input simultaneously from a plurality of input sides without occupying a switch by a long packet, so that back pressure in units of packets can be achieved by high-speed packet switching.

【図面の簡単な読明】[Brief reading of drawings]

【図1】本発明の一実施の形態を示すパケットスイッチ
のブロック図である。
FIG. 1 is a block diagram of a packet switch according to an embodiment of the present invention.

【図2】同上入力バッファ処理部の構成を示すブロック
図である。
FIG. 2 is a block diagram illustrating a configuration of an input buffer processing unit according to the embodiment.

【図3】同上入力バッファ処理部での全てのアドレスを
1つのリンクにして保存する状況を示す説明図である。
FIG. 3 is an explanatory diagram showing a situation where all addresses in the input buffer processing unit are stored as one link.

【図4】同上入力バッファ処理部での全てのアドレスを
1つのリンクにして保存する状況を示す説明図である。
FIG. 4 is an explanatory diagram showing a situation where all addresses in the input buffer processing unit are stored as one link.

【図5】同上入力バッファ処理部での全てのアドレスを
1つのリンクにして保存する状況を示す説明図である。
FIG. 5 is an explanatory diagram showing a situation in which all addresses in the input buffer processing unit are stored as one link.

【図6】同上入力バッファ処理部でのリンクリストの生
成状況を示す説明図である。
FIG. 6 is an explanatory diagram showing a generation state of a link list in the input buffer processing unit of the embodiment.

【図7】同上入力バッファ処理部でのリンクリストの生
成状況を示す説明図である。
FIG. 7 is an explanatory diagram showing a generation state of a link list in the input buffer processing unit of the embodiment.

【図8】同上入力バッファ処理部でのリンクリストの生
成状況を示す説明図である。
FIG. 8 is an explanatory diagram showing a state of generating a link list in the input buffer processing unit of the embodiment.

【図9】同上入力バッファ処理部でのリンクリストの生
成状況を示す説明図である。
FIG. 9 is an explanatory diagram showing a generation state of a link list in the input buffer processing unit.

【図10】同上入力バッファ処理部でのパケットメモリ
に蓄積したパケットを読み出した際のリンクリストの状
況を示す説明図である。
FIG. 10 is an explanatory diagram showing a status of a link list when packets stored in a packet memory in the input buffer processing unit are read out.

【図11】同上出力バッファ処理部の構成を示すブロッ
ク図である。
FIG. 11 is a block diagram illustrating a configuration of an output buffer processing unit according to the embodiment.

【図12】同上出力バッファ処理部でのリンクメモリ、
アカウントメモリおよびパケットメモリの関係を示す説
明図である。
FIG. 12 is a link memory in the output buffer processing unit,
FIG. 3 is an explanatory diagram showing a relationship between an account memory and a packet memory.

【図13】同上出力バッファ処理部にパケットが入力さ
れた際の状況を示す説明図である。
FIG. 13 is an explanatory diagram showing a situation when a packet is input to the output buffer processing unit.

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

1 パケットスイッチ 2 スイッチ処理部 20〜25 パケット処理部 30〜35 バッファ処理部 40〜45 入力バッファ処理部 50〜55 出力バッファ処理部 60 受信処理部 61,71 パケットメモリ 62,70 ページ処理部 63,72 リード/ライト制御部 64,73 パケットメモリ管理部 65,77 リンクメモリ 66,80 リンクリスト管理部 67,81 フリーリスト管理部 68,78 リンクヘッダ生成部 74 バックプレッシャカウンタ 75 カウンタ制御部 76 アカウントメモリ 79 送信処理部 91 フリーヘッドポインタ 92 フリーテールポインタ 93 リンクヘッドポインタ 94 リンクテールポインタ 95 ヘッダポインタ DESCRIPTION OF SYMBOLS 1 Packet switch 2 Switch processing part 20-25 Packet processing part 30-35 Buffer processing part 40-45 Input buffer processing part 50-55 Output buffer processing part 60 Reception processing part 61, 71 Packet memory 62, 70 Page processing part 63, 72 read / write control unit 64, 73 packet memory management unit 65, 77 link memory 66, 80 link list management unit 67, 81 free list management unit 68, 78 link header generation unit 74 back pressure counter 75 counter control unit 76 account memory 79 Transmission processing unit 91 Free head pointer 92 Free tail pointer 93 Link head pointer 94 Link tail pointer 95 Header pointer

フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H04L 12/56 H04L 12/28 Continuation of the front page (58) Field surveyed (Int.Cl. 7 , DB name) H04L 12/56 H04L 12/28

Claims (9)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 入力されたパケットを所定の宛先に出力
するパケットスイッチのバックプレッシャ制御方法にお
いて、 前記入力されたパケットのパケット長を共有バックプレ
ッシャカウンタにてあらかじめ設定された閾値に基づい
てカウントし、 この共有バックプレッシャカウンタにてカウントしたパ
ケット長が前記共有バックプレッシャカウンタの閾値を
越えた際に、個別バックプレッシャカウンタにてあらか
じめ設定された閾値に基づいてパケット長をカウントす
ることを特徴とするバックプレッシャ制御方法。
1. A back pressure control method for a packet switch for outputting an input packet to a predetermined destination, wherein a packet length of the input packet is counted based on a threshold set in advance by a shared back pressure counter. When the packet length counted by the shared back pressure counter exceeds the threshold value of the shared back pressure counter, the packet length is counted based on a preset threshold value by the individual back pressure counter. Back pressure control method.
【請求項2】 パケット長が個別バックプレッシャカウ
ンタのあらかじめ設定された閾値を越える場合には、パ
ケットスイッチへのパケットの入力を制限することを特
徴とする請求項1記載のバックプレッシャ制御方法。
2. The back pressure control method according to claim 1, wherein when the packet length exceeds a preset threshold value of the individual back pressure counter, input of a packet to the packet switch is restricted.
【請求項3】 個別バックプレッシャカウンタをパケッ
トスイッチにパケットを入力する複数の送信元に対応し
て設けることを特徴とする請求項1または2記載のバッ
クプレッシャ制御方法。
3. The back pressure control method according to claim 1, wherein an individual back pressure counter is provided for each of a plurality of transmission sources that input packets to the packet switch.
【請求項4】 パケットを複数の固定長のページに分割
し、この分割した複数のページをカウントしてパケット
長をカウントすることを特徴とする請求項1ないし
いずれか一に記載のバックプレッシャ制御方法。
4. A dividing a packet into a plurality of fixed length pages back according to any one of claims 1 to 3, characterized in that counting the packet length and counts the plurality of pages this division Pressure control method.
【請求項5】 パケットを構成する複数のページを所定
の宛先に出力させるスイッチ処理部に転送する際に、複
数のページをパケットメモリに保存し、パケットメモリ
にパケットを構成する全てのページが保存された後にス
イッチ処理部に連続的にページを転送することを特徴と
する請求項4記載のバックプレッシャ制御方法。
5. When transferring a plurality of pages constituting a packet to a switch processing unit for outputting the page to a predetermined destination, the plurality of pages are saved in a packet memory, and all the pages constituting the packet are saved in the packet memory. 5. The back pressure control method according to claim 4, wherein the pages are continuously transferred to the switch processing unit after the switching.
【請求項6】 入力されたパケットを所定の宛先に出力
するパケットスイッチのバックプレッシャ制御装置にお
いて、 閾値を有し入力されたパケットのパケット長をカウント
する共有バックプレッシャカウンタと、 閾値を有し前記共有バックプレッシャカウンタにてカウ
ントしたパケット長が前記共有バックプレッシャカウン
タの閾値を越えると前記パケットのパケット長をカウン
トする個別バックプレッシャカウンタとを具備したこと
を特徴とするバックプレッシャ制御装置。
6. A back pressure control device of a packet switch for outputting an input packet to a predetermined destination, comprising: a shared back pressure counter having a threshold value for counting the packet length of the input packet; A back pressure control device comprising: an individual back pressure counter that counts a packet length of a packet when a packet length counted by the shared back pressure counter exceeds a threshold value of the shared back pressure counter.
【請求項7】 個別バックプレッシャカウンタは、パケ
ットスイッチにパケットを入力する複数の送信元に対応
して複数設けたことを特徴とした請求項6記載のバック
プレッシャ制御装置。
7. The back pressure control device according to claim 6, wherein a plurality of individual back pressure counters are provided corresponding to a plurality of transmission sources that input packets to the packet switch.
【請求項8】 パケットを複数の固定長のページに分割
する受信処理部を具備し、 共有バックプレッシャカウンタおよび個別バックプレッ
シャカウンタは、分月された複数のページをカウントし
てパケット長をカウントすることを特徴とした請求項6
または7記載のバックプレッシャ制御装置。
8. A reception processing unit for dividing a packet into a plurality of fixed-length pages, wherein the shared back pressure counter and the individual back pressure counter count the plurality of divided pages and count the packet length. 7. The method according to claim 6, wherein
Or the back pressure control device according to 7.
【請求項9】 パケットを構成する複数のページを所定
の宛先に出力するスイッチ処理部と、 複数のページを保存するパケットメモリと、 パケットメモリにパケットを構成する全てのページが保
存された後にスイッチ処理部に連続的にページを転送す
るパケットメモリ管理部とを具備したことを特徴とする
請求項6ないし8のいずれか一に記載のバックプレッシ
ャ制御装置。
9. A switch processing unit for outputting a plurality of pages constituting a packet to a predetermined destination, a packet memory for storing a plurality of pages, and a switch after all pages constituting the packet are stored in the packet memory. The back pressure control device according to any one of claims 6 to 8, further comprising a packet memory management unit that continuously transfers pages to the processing unit.
JP20424798A 1998-07-06 1998-07-06 Back pressure control method and device Expired - Fee Related JP3144386B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20424798A JP3144386B2 (en) 1998-07-06 1998-07-06 Back pressure control method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20424798A JP3144386B2 (en) 1998-07-06 1998-07-06 Back pressure control method and device

Publications (2)

Publication Number Publication Date
JP2000022716A JP2000022716A (en) 2000-01-21
JP3144386B2 true JP3144386B2 (en) 2001-03-12

Family

ID=16487299

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20424798A Expired - Fee Related JP3144386B2 (en) 1998-07-06 1998-07-06 Back pressure control method and device

Country Status (1)

Country Link
JP (1) JP3144386B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7633935B2 (en) * 2003-05-29 2009-12-15 Ericsson Ab Dynamic port updating
JP4506506B2 (en) * 2005-02-28 2010-07-21 沖電気工業株式会社 Wireless access device and communication control method
WO2008004301A1 (en) * 2006-07-06 2008-01-10 Fujitsu Limited Data transfer unit, processing unit, and data transfer method
JP5233775B2 (en) * 2009-03-19 2013-07-10 富士通株式会社 Packet transmission apparatus, line interface unit, and packet transmission apparatus control method
CN105573711B (en) * 2014-10-14 2019-07-19 深圳市中兴微电子技术有限公司 A data cache method and device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
1998信学通信大会B−6−89

Also Published As

Publication number Publication date
JP2000022716A (en) 2000-01-21

Similar Documents

Publication Publication Date Title
JP3359499B2 (en) Outgoing traffic control device
USRE45756E1 (en) Method and apparatus for serving data
JP4205181B2 (en) Method and apparatus for burst transfer of ATM packet header and data to a host computer system
WO1998036357A1 (en) Shared memory control using multiple linked lists with pointers, status flags, memory block counters and parity
US5732082A (en) System and method for multi-frame received queuing with sorting in an asynchronous transfer mode (ATM) system
JP3144386B2 (en) Back pressure control method and device
US6584512B1 (en) Communication DMA device for freeing the data bus from the CPU and outputting divided data
WO2003102792A1 (en) Direct memory access circuit with atm support
GB2320160A (en) Shaping processing of ATM cells
US7009981B1 (en) Asynchronous transfer mode system for, and method of, writing a cell payload between a control queue on one side of a system bus and a status queue on the other side of the system bus
JP3449302B2 (en) Cell transmission method and switch device
JP3435244B2 (en) Communication control device
JP3044653B2 (en) Gateway device
JP2933904B2 (en) Common buffer type asynchronous transfer mode switch
US7613788B2 (en) Apparatus and method for data transmission
JP3812784B2 (en) ATM switch
JP2001186181A (en) Device and method for controlling queue buffer
CN1125565C (en) Method for transmitting MPEG-compressed data and apparatus for performing the same
JP2899609B2 (en) Cell sending device
JPH10322360A (en) ATM network system
EP0847166A1 (en) Method for traffic shaping and traffic shaper
KR100256679B1 (en) Atm cell segmentation
US7239640B1 (en) Method and apparatus for controlling ATM streams
EP0847217A1 (en) Method and apparatus for translating VPI/VCI of an ATM cell into an internal ID
JP3681810B2 (en) Data transfer method, data reception method and parallel computer system for parallel computer system

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees