JP2007110515A - Apparatus and method for controlling packet communication quality - Google Patents

Apparatus and method for controlling packet communication quality Download PDF

Info

Publication number
JP2007110515A
JP2007110515A JP2005300276A JP2005300276A JP2007110515A JP 2007110515 A JP2007110515 A JP 2007110515A JP 2005300276 A JP2005300276 A JP 2005300276A JP 2005300276 A JP2005300276 A JP 2005300276A JP 2007110515 A JP2007110515 A JP 2007110515A
Authority
JP
Japan
Prior art keywords
packet
input
output
information
transmission
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
JP2005300276A
Other languages
Japanese (ja)
Other versions
JP4279281B2 (en
Inventor
Kouho Nishida
享邦 西田
Kenji Kawai
健治 川合
Keiichi Koike
恵一 小池
Shuichi Chagi
修一 茶木
Tetsuo Hayashi
徹夫 林
Katsuichi Oyama
勝一 大山
Hiroyuki Nouchi
裕之 野内
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.)
NTT Electronics Corp
Nippon Telegraph and Telephone Corp
Original Assignee
NTT Electronics Corp
Nippon Telegraph and Telephone 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 NTT Electronics Corp, Nippon Telegraph and Telephone Corp filed Critical NTT Electronics Corp
Priority to JP2005300276A priority Critical patent/JP4279281B2/en
Publication of JP2007110515A publication Critical patent/JP2007110515A/en
Application granted granted Critical
Publication of JP4279281B2 publication Critical patent/JP4279281B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To enhance the degree of freedom in adjusting or changing communication quality while realizing high-speed packet processing. <P>SOLUTION: A packet input 1 stores an input packet into a packet buffer 2. A queue controlling unit 5 stores packet information into predetermined queues. A QoS (quality of service) processor 6 receives the packet information from the queues in the decided order in accordance with packet scheduling (priority control, weighting fair control or packet shaping), and notifies a below-described packet transmitter 7 together with a transmission request. The packet transmitter 7 acquires a storing address of a packet to be transmitted in the packet buffer 2 based on the notified packet information or a management number, and transmits the packet to be specified on the basis of the storing address in the packet buffer. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、パケット通信技術に関し、特に、ネットワークを介して受信した通信パケットを送信する際の通信品質を制御するパケット通信品質制御装置およびパケット通信品質制御方法に関する。   The present invention relates to a packet communication technique, and more particularly to a packet communication quality control apparatus and a packet communication quality control method for controlling communication quality when transmitting a communication packet received via a network.

データ通信以外に音声電話やTV電話など、多様な通信サービスがインターネットを介して提供されている。このような多様化に伴い、QoS(Quality of Service)と呼ばれる通信品質制御が必要となっている。このQoS制御は、多様に通信制御を行う必要があるため、プログラム制御によって行われてきた。また、一部の処理をハードウェアで行うことで、プログラム制御の問題であった処理速度を向上させるようとするものもある(例えば、非特許文献1参照)。
「簡単・快適・安全なネットワークサービスを実現するホームゲートウェイ(HIKARI GATE)」、NTT技術ジャーナル、2003 Vol.15 No.5 pp.18−21
In addition to data communication, various communication services such as voice calls and videophones are provided via the Internet. With such diversification, communication quality control called QoS (Quality of Service) is required. This QoS control has been performed by program control because it is necessary to perform various communication controls. In addition, there is a technique that improves processing speed, which is a problem of program control, by performing part of processing by hardware (for example, see Non-Patent Document 1).
“Home Gateway (HIKARI GATE) for Realizing Simple, Comfortable and Safe Network Services”, NTT Technical Journal, 2003 Vol. 15 No. 5 pp. 18-21

しかしながら、従来技術では、パケットが入力されるキュー、パケットの通信品質制御を行うパケットスケジューラおよびパケットを外部に送信する送信部等、装置の各構成部品の接続が固定されているため、通信品質の制御のための調整または変更の自由度が小さいという問題があった。   However, in the prior art, since the connection of each component of the apparatus, such as a queue to which packets are input, a packet scheduler for controlling packet communication quality, and a transmission unit for transmitting packets to the outside, is fixed, There was a problem that the degree of freedom of adjustment or change for control was small.

本発明は、このような事情を考慮してなされたものであり、その目的は、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるパケット通信品質制御装置およびパケット通信品質制御方法を提供することにある。   The present invention has been made in consideration of such circumstances, and its object is to achieve packet communication quality control capable of expanding the degree of freedom of adjustment or change of communication quality control while realizing high-speed packet processing. An apparatus and a packet communication quality control method are provided.

上述した課題を解決するために、本発明は、入力された通信パケットの通信品質を制御して出力するパケット通信品質制御装置において、入力された通信パケットを示すパケットデータを記憶する記憶手段と、前記記憶手段に記憶されたパケットデータに関する情報であるパケット情報を順次記憶する複数のキューと、前記複数のキューに記憶されたパケット情報を所定の順序に基づいて読み出して出力する複数の重み付け公平制御手段と、前記複数の重み付け公平制御手段から出力されたパケット情報で特定されるパケットデータを前記記憶手段から読み出し、そのパケットデータに基づいて通信パケットを生成して送信する送信手段と、前記複数のキューと、前記複数の重み付け公平制御手段と、前記送信手段とを収容するとともに、これら各部の入出力を相互に切替可能に接続する経路切替手段とを備え、前記キューは、記憶する前記パケット情報とこのパケット情報に対応するパケットデータの出力要求とを前記経路切替手段を介して対応する接続相手へ出力し、前記重み付け公平制御手段は、入力の各々に対応する複数のカウンタと、該複数のカウンタへの重みの積算速度を調整するための加算手段とを備え、前記複数のカウンタへの重みの積算速度を前記加算手段により調整しつつ、出力要求を送信可能な入力が存在せず、かつ前記カウンタの値が所定の閾値に達するまでの間、当該カウンタに所定の重みを積算し、該複数のカウンタの値と前記経路切替手段を介して入力される前段からの出力要求とに基づいて、前記経路切替手段を介して入力されたパケット情報および出力要求を選択し、前記経路切替手段を介して対応する接続相手へ出力し、前記送信手段は、入力された出力要求に応じて当該出力要求とともに入力されたパケット情報で特定されるパケットデータを前記記憶手段から読み出し、そのパケットデータに基づいて送信パケットを生成して送信することを特徴とする。   In order to solve the above-described problem, the present invention provides a storage means for storing packet data indicating an input communication packet in a packet communication quality control apparatus that controls and outputs the communication quality of an input communication packet; A plurality of queues for sequentially storing packet information, which is information relating to packet data stored in the storage means, and a plurality of weighted fair controls for reading and outputting the packet information stored in the plurality of queues in a predetermined order Means, a transmission means for reading out packet data specified by the packet information output from the plurality of weighted fair control means from the storage means, and generating and transmitting a communication packet based on the packet data; and The queue, the plurality of weighted fair control means, and the transmission means are accommodated, and Path switching means for connecting the input and output of each section so as to be mutually switchable, and the queue sends the packet information to be stored and the output request of packet data corresponding to the packet information via the path switching means. The weighted fairness control means includes a plurality of counters corresponding to each of the inputs, and an adding means for adjusting the speed of integration of the weights to the plurality of counters. While adjusting the integrated speed of the weight to the counter by the adding means, there is no input capable of transmitting an output request, and a predetermined weight is applied to the counter until the value of the counter reaches a predetermined threshold value. Based on the value of the plurality of counters and the output request from the previous stage input via the path switching means, the packet information and the data input via the path switching means are integrated. Packet data specified by the packet information input together with the output request in response to the input output request in response to the input output request. Is read from the storage means, and a transmission packet is generated based on the packet data and transmitted.

本発明は、上記の発明において、前記複数の重み付け公平制御手段は、前記複数のカウンタの値と前記経路切替手段を介して入力される前段からの出力要求とに基づいて前記パケット情報および前記出力要求を選択する際、接続相手から送信完了通知が入力されたときは、出力要求した接続相手に対して送信完了通知を送信することを特徴とする。   According to the present invention, in the above invention, the plurality of weighted fair control units are configured to output the packet information and the output based on the values of the plurality of counters and the output request from the previous stage input via the route switching unit. When selecting a request, if a transmission completion notification is input from the connection partner, a transmission completion notification is transmitted to the connection partner that requested the output.

本発明は、上記の発明において、前記複数の重み付け公平制御手段は、後段への出力要求の送出後、出力要求している入力に対応するカウンタから出力要求したパケットのパケット長だけ減算し、出力要求したパケットのパケット長を前記加算手段に積算する一方、該加算手段の値に基づいて、前記複数のカウンタに重みを積算するとともに、前記加算手段の値を前記重み分減算することを特徴とする。   In the present invention according to the above invention, the plurality of weighted fair control means subtracts the packet length of the requested packet from the counter corresponding to the requested output after the output request is sent to the subsequent stage, While adding the packet length of the requested packet to the adding means, the weight is added to the plurality of counters based on the value of the adding means, and the value of the adding means is subtracted by the weight. To do.

本発明は、上記の発明において、前記複数の重み付け公平制御手段は、出力要求を送信可能な入力が存在せず、かつ前記カウンタの値が所定の閾値に達している場合、前記複数のカウンタの値を前記加算手段に積算した後、前記複数のカウンタの値をゼロとすることを特徴とする。   According to the present invention, in the above invention, when the plurality of weighted fair control means does not have an input capable of transmitting an output request and the value of the counter has reached a predetermined threshold value, After the values are added to the adding means, the values of the plurality of counters are set to zero.

本発明は、上記の発明において、前記複数の重み付け公平制御手段は、前記接続相手から送信完了通知を受信してから、次の接続相手から入力されたパケット情報および出力要求を受理するまでの時間を調整する調整手段を備えることを特徴とする。   The present invention is the above invention, wherein the plurality of weighted fair control units receive a packet completion information and an output request input from the next connection partner after receiving the transmission completion notification from the connection partner. It is characterized by comprising adjusting means for adjusting.

本発明は、上記の発明において、前記複数の重み付け公平制御手段の各々の前段または後段に配置され、前段から出力要求されたパケットのパケット長さとに基づいて、パケット送出レートを制御する複数のパケット送出レート調整手段を備えることを特徴とする。   According to the present invention, in the above invention, a plurality of packets arranged in a preceding stage or a succeeding stage of each of the plurality of weighted fair control means and controlling a packet transmission rate based on a packet length of a packet requested to be output from the preceding stage It comprises a transmission rate adjusting means.

本発明は、上記の発明において、前記複数のパケット送出レート調整手段は、その入出力を前記経路切替手段の入出力に接続され、該経路切替手段による切り替え動作によって前記複数の重み付け公平制御手段の各々の前段または後段に配置されることを特徴とする。   According to the present invention, in the above invention, the plurality of packet transmission rate adjustment means are connected to the input / output of the path switching means, and the plurality of weighted fair control means are switched by the path switching means. It arrange | positions at each front | former stage or back | latter stage, It is characterized by the above-mentioned.

本発明は、上記の発明において、前記複数のパケット送出レート調整手段は、その入力を前記複数の重み付け公平制御手段の出力に接続され、その出力を前記経路切替手段の入力に接続されていることを特徴とする。   According to the present invention, in the above invention, the plurality of packet transmission rate adjusting means have their inputs connected to the outputs of the plurality of weighted fair control means, and their outputs connected to the inputs of the path switching means. It is characterized by.

本発明は、上記の発明において、前記複数のパケット送出レート調整手段は、その入力を前記複数のキューの出力に接続され、その出力を前記経路切替手段の入力に接続されていることを特徴とする。   The present invention is characterized in that, in the above invention, the plurality of packet transmission rate adjusting means have their inputs connected to the outputs of the plurality of queues and their outputs connected to the inputs of the path switching means. To do.

また、上述した課題を解決するために、本発明は、入力された通信パケットの通信品質を制御して出力するパケット通信品質制御装置において、入力された通信パケットを示すパケットデータを記憶する記憶手段と、前記記憶手段に記憶されたパケットデータに関する情報であるパケット情報を順次記憶する複数のキューと、前記複数のキューに記憶されたパケット情報を所定の順序に基づいて読み出して出力する複数の優先制御手段と、前記複数の優先制御手段から出力されたパケット情報で特定されるパケットデータを前記記憶手段から読み出し、そのパケットデータに基づいて通信パケットを生成して送信する送信手段と、前記複数のキューと、前記複数の優先制御手段と、前記送信手段とを収容するとともに、これら各部の入出力を相互に切替可能に接続する経路切替手段とを備え、前記キューは、記憶する前記パケット情報とこのパケット情報に対応するパケットデータの出力要求とを前記経路切替手段を介して対応する接続相手へ出力し、前記優先制御手段は、後段の接続相手のいずれかから送信完了通知を受信してから、次の前段の接続相手から入力されたパケット情報および出力要求を受理するまでの時間を調整する調整手段を備え、前記調整手段による時間調整後、前記前段の接続相手の各々に固有の優先度に基づいて、前記前段の接続相手のいずれか1つから、パケット情報および出力要求を選択して出力し、前記送信手段は、前記出力された出力要求に応じて、該出力要求とともに出力されたパケット情報で特定されるパケットデータを前記記憶手段から読み出し、そのパケットデータに基づいて送信パケットを生成して送信することを特徴とする。   Further, in order to solve the above-described problems, the present invention provides a storage means for storing packet data indicating an input communication packet in a packet communication quality control apparatus that controls and outputs the communication quality of an input communication packet. A plurality of queues that sequentially store packet information that is information on the packet data stored in the storage means, and a plurality of priorities that read and output the packet information stored in the plurality of queues based on a predetermined order A control unit; a transmission unit that reads out packet data specified by packet information output from the plurality of priority control units from the storage unit; generates and transmits a communication packet based on the packet data; and The queue, the plurality of priority control means, and the transmission means are accommodated, and input / output of each of these parts is performed. Path switching means for connecting to each other so as to be switchable, and the queue outputs the packet information to be stored and an output request for packet data corresponding to the packet information to the corresponding connection partner via the path switching means. The priority control means adjusts the time from receipt of a transmission completion notification from one of the subsequent connection partners until reception of the packet information and output request input from the next previous connection partner. And the packet information and the output request are selected and output from any one of the preceding connection partners based on the priority specific to each of the preceding connection partners after the time adjustment by the adjusting means. In response to the output request, the transmission means reads packet data specified by the packet information output together with the output request from the storage means. Out, wherein the generating and transmitting a transmission packet based on the packet data.

本発明は、上記の発明において、前記優先制御手段は、前記各接続相手に固有の優先度に基づいて、いずれか1つのパケット情報および出力要求を選択する際、接続相手から送信完了通知が入力されたときは、出力要求した接続相手に対して送信完了通知を送信することを特徴とする。   According to the present invention, in the above invention, when the priority control unit selects any one packet information and output request based on a priority specific to each connection partner, a transmission completion notification is input from the connection partner. When the transmission is completed, a transmission completion notification is transmitted to the connection partner that requested the output.

また、上述した課題を解決するために、本発明は、入力された通信パケットの通信品質を制御して出力するパケット通信品質制御方法において、入力された通信パケットを示すパケットデータを記憶するステップと、前記パケットデータに関する情報であるパケット情報を複数のキューに順次記憶するステップと、出力要求を送信可能なキューが存在しない場合、所定の閾値に達するまでの間、複数のカウンタに所定の重みを積算するステップと、前記複数のカウンタへの重みの積算頻度を制御するステップと、前記積算された重みの値と前記複数のキューからの出力要求とに基づいて、前記複数のキューから入力されたパケット情報および出力要求を選択するステップと、前記選択されたパケット情報で特定されるパケットデータを読み出し、そのパケットデータに基づいて通信パケットを生成して送信するステップとを含むことを特徴とする。   In order to solve the above-described problem, the present invention provides a packet communication quality control method for controlling and outputting the communication quality of an input communication packet, and storing packet data indicating the input communication packet; , Sequentially storing packet information, which is information about the packet data, in a plurality of queues, and when there is no queue capable of transmitting an output request, a predetermined weight is assigned to a plurality of counters until a predetermined threshold is reached. A step of integrating, a step of controlling an accumulation frequency of weights to the plurality of counters, and a value input from the plurality of queues based on the value of the accumulated weights and output requests from the plurality of queues. Selecting packet information and an output request, and reading packet data specified by the selected packet information , Characterized in that it comprises the steps of generating and transmitting a communication packet based on the packet data.

また、上述した課題を解決するために、本発明は、入力された通信パケットの通信品質を制御して出力するパケット通信品質制御方法において、入力された通信パケットを示すパケットデータを記憶するステップと、前記パケットデータに関する情報であるパケット情報を複数のキューに順次記憶するステップと、前記複数のキューから入力されたパケット情報および出力要求を受理するまでの時間を調整するステップと、前記時間調整後、入力の各々に固有の優先度に基づいて、前記複数のキューのいずれか1つから、パケット情報および出力要求を選択して出力するステップと、前記出力された出力要求に応じて、該出力要求とともに出力されたパケット情報で特定されるパケットデータを読み出し、そのパケットデータに基づいて通信パケットを生成して送信するステップとを含むことを特徴とする。   In order to solve the above-described problem, the present invention provides a packet communication quality control method for controlling and outputting the communication quality of an input communication packet, and storing packet data indicating the input communication packet; A step of sequentially storing packet information, which is information about the packet data, in a plurality of queues; a step of adjusting packet information input from the plurality of queues; and a time until an output request is received; Selecting and outputting packet information and an output request from any one of the plurality of queues based on a priority specific to each of the inputs; and depending on the output request, the output Reads the packet data specified by the packet information output with the request and communicates based on the packet data Characterized in that it comprises the steps of generating and transmitting a packet.

この発明によれば、複数のキューと、複数の制御手段と、送信手段との入出力を経路切替手段により切替可能に接続し、重み付け公平制御手段により、複数のカウンタへの重みの積算速度を加算手段により調整しつつ、出力要求を送信可能な入力が存在せず、かつ前記カウンタの値が所定の閾値に達するまでの間、当該カウンタに所定の重みを積算し、該複数のカウンタの値と経路切替手段を介して入力される前段からの出力要求とに基づいて、経路切替手段を介して入力されたパケット情報および出力要求を対応する接続相手へ出力し、送信手段によって、入力された出力要求に応じて当該出力要求とともに入力されたパケット情報で特定されるパケットデータを記憶手段から読み出し、そのパケットデータに基づいて送信パケットを生成して送信する。したがって、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   According to the present invention, the input / output of the plurality of queues, the plurality of control units, and the transmission unit are connected to be switchable by the path switching unit, and the weighted fair control unit is used to control the cumulative speed of the weights to the plurality of counters. While there is no input capable of transmitting an output request while adjusting by the adding means, and until the value of the counter reaches a predetermined threshold value, a predetermined weight is added to the counter, and the values of the counters And the output request from the previous stage input via the path switching means, the packet information input via the path switching means and the output request are output to the corresponding connection partner, and input by the transmission means In response to the output request, the packet data specified by the packet information input together with the output request is read from the storage means, and a transmission packet is generated based on the packet data To send Te. Therefore, there is an advantage that the degree of freedom of adjustment or change of communication quality control can be expanded while realizing high-speed packet processing.

また、本発明によれば、複数のカウンタの値と複数のキューからの出力要求とに基づいてパケット情報および出力要求を選択する際、接続相手から送信完了通知が入力されたときは、出力要求した接続相手に対して送信完了通知を送信する。したがって、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   Also, according to the present invention, when packet information and an output request are selected based on a plurality of counter values and output requests from a plurality of queues, when a transmission completion notification is input from a connection partner, an output request A transmission completion notification is sent to the connected partner. Therefore, there is an advantage that the degree of freedom of adjustment or change of communication quality control can be expanded while realizing high-speed packet processing.

また、この発明によれば、重み付け公平制御手段により、後段への出力要求の送出後、出力要求している入力に対応するカウンタから出力要求したパケットのパケット長だけ減算し、出力要求したパケットのパケット長を加算手段に積算する一方、該加算手段の値に基づいて、複数のカウンタに重みを積算するとともに、加算手段の値を重み分減算する。したがって、パケットの送信速度の高低に関わらず、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   Further, according to the present invention, after sending the output request to the subsequent stage, the weighted fair control means subtracts the packet length of the requested packet from the counter corresponding to the requested output, and While adding the packet length to the adding means, the weights are added to a plurality of counters based on the value of the adding means, and the value of the adding means is subtracted by the weight. Therefore, there is an advantage that the degree of freedom of adjustment or change of communication quality control can be expanded while realizing high-speed packet processing regardless of the packet transmission speed.

また、本発明によれば、重み付け公平制御手段により、出力要求を送信可能な入力が存在せず、かつカウンタの値が所定の閾値に達している場合、複数のカウンタの値を加算手段に積算した後、複数のカウンタの値をゼロとする。したがって、重みの積算速度を向上させることができ、パケットの送信速度の高低に関わらず、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   Further, according to the present invention, when there is no input capable of transmitting an output request and the counter value has reached a predetermined threshold, the weighted fair control means adds the values of a plurality of counters to the adding means. After that, the values of a plurality of counters are set to zero. Therefore, the weight integration rate can be improved, and the degree of freedom of adjustment or change of communication quality control can be increased while realizing high-speed packet processing regardless of the packet transmission rate. can get.

また、この発明によれば、調整手段により、接続相手から送信完了通知を受信してから、次の接続相手から入力されたパケット情報および出力要求を受理するまでの時間を調整する。したがって、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   Further, according to the present invention, the adjustment unit adjusts the time from the reception of the transmission completion notification from the connection partner to the reception of the packet information and the output request input from the next connection partner. Therefore, there is an advantage that the degree of freedom of adjustment or change of communication quality control can be expanded while realizing high-speed packet processing.

また、本発明によれば、複数の重み付け公平制御手段の各々の前段または後段に配置された複数のパケット送出レート調整手段により、前段から出力要求されたパケットのパケット長さとに基づいて、パケット送出レートを制御する。したがって、容易にパケット送出レートを制御することができ、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   Further, according to the present invention, the packet transmission based on the packet length of the packet requested to be output from the preceding stage by the plurality of packet transmission rate adjusting means arranged in the preceding stage or the succeeding stage of each of the plurality of weighted fair control means. Control the rate. Therefore, there is an advantage that the packet transmission rate can be easily controlled, and the degree of freedom in adjusting or changing the communication quality control can be expanded while realizing high-speed packet processing.

また、本発明によれば、複数のパケット送出レート調整手段の入出力を経路切替手段の入出力に接続し、該経路切替手段による切り替え動作によって、複数のパケット送出レート調整手段を複数の重み付け公平制御手段の各々の前段または後段に配置する。したがって、容易にパケット送出レートを制御することができ、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   Also, according to the present invention, the input / output of the plurality of packet transmission rate adjusting means is connected to the input / output of the path switching means, and the plurality of packet transmission rate adjusting means are connected to the plurality of weighted fairness by the switching operation by the path switching means. It arrange | positions in each front stage or back | latter stage of each control means. Therefore, there is an advantage that the packet transmission rate can be easily controlled, and the degree of freedom in adjusting or changing the communication quality control can be expanded while realizing high-speed packet processing.

また、この発明によれば、複数のパケット送出レート調整手段の入力を複数の重み付け公平制御手段の出力に接続し、その出力を経路切替手段の入力に接続する。したがって、回路構成を簡単にすることができ、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   According to the present invention, the inputs of the plurality of packet transmission rate adjusting means are connected to the outputs of the plurality of weighted fair control means, and the outputs are connected to the inputs of the path switching means. Therefore, it is possible to simplify the circuit configuration and to obtain an advantage that the degree of freedom of adjustment or change of communication quality control can be expanded while realizing high-speed packet processing.

また、この発明によれば、複数のパケット送出レート調整手段の入力を複数のキューの出力に接続し、その出力を経路切替手段の入力に接続する。したがって、回路構成を簡単にすることができ、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   According to the present invention, the inputs of the plurality of packet transmission rate adjusting means are connected to the outputs of the plurality of queues, and the outputs are connected to the inputs of the path switching means. Therefore, it is possible to simplify the circuit configuration and to obtain an advantage that the degree of freedom of adjustment or change of communication quality control can be expanded while realizing high-speed packet processing.

また、この発明によれば、複数のキューと、複数の制御手段と、送信手段との入出力を経路切替手段により切替可能に接続し、優先制御手段の調整手段により、後段の接続相手のいずれかから送信完了通知を受信してから、次の前段の接続相手から入力されたパケット情報および出力要求を受理するまでの時間を調整し、該時間調整後、前段の接続相手の各々に固有の優先度に基づいて、前段の接続相手のいずれか1つから、パケット情報および出力要求を所定の順序で読み出して、送信手段により、当該出力要求とともに入力されたパケット情報で特定されるパケットデータを記憶手段から読み出し、そのパケットデータに基づいて送信パケットを生成して送信する。したがって、固有の優先度に従ってパケットを送信することができ、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   Further, according to the present invention, the input / output to / from the plurality of queues, the plurality of control means, and the transmission means are connected so as to be switchable by the path switching means, and any one of the subsequent connection partners is adjusted by the adjustment means of the priority control means. After the transmission completion notification is received, the time from receiving the next packet information and output request received from the previous connection partner is adjusted. Based on the priority, the packet information and the output request are read in a predetermined order from any one of the connection partners in the previous stage, and the packet data specified by the packet information input together with the output request is transmitted by the transmission unit. Read from the storage means, generate a transmission packet based on the packet data, and transmit. Therefore, packets can be transmitted according to a specific priority, and there is an advantage that the degree of freedom in adjusting or changing communication quality control can be expanded while realizing high-speed packet processing.

また、この発明によれば、優先制御手段により、各接続相手に固有の優先度に基づいて、いずれか1つのパケット情報および出力要求を選択する際、接続相手から送信完了通知が入力されたときは、出力要求した接続相手に対して送信完了通知を送信する。したがって、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができるという利点が得られる。   Further, according to the present invention, when the priority control means selects any one packet information and output request based on the priority specific to each connection partner, when a transmission completion notification is input from the connection partner. Transmits a transmission completion notification to the connection partner that requested the output. Therefore, there is an advantage that the degree of freedom of adjustment or change of communication quality control can be expanded while realizing high-speed packet processing.

以下、本発明の一実施形態を、図面を参照して説明する。
図1は、本発明の実施形態によるパケット処理装置の構成を示すブロック図である。図1において、パケット入力部1は、入力されたパケットをパケットバッファ2に格納するためのアドレスを空き領域管理テーブル3に問い合わせ、格納アドレスを取得し、その格納アドレスに入力されるパケットを格納する。また、パケット入力部1は、同時に空き領域管理テーブル3から管理番号を取得する。このとき、パケット識別に必要となるパケットの情報(送信元MACアドレス、宛先MACアドレス、宛先IPアドレス等)やパケット長を抽出し、パケット情報としてパケット識別器4に入力する。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 1 is a block diagram showing a configuration of a packet processing apparatus according to an embodiment of the present invention. In FIG. 1, a packet input unit 1 inquires an empty area management table 3 for an address for storing an input packet in a packet buffer 2, acquires a storage address, and stores a packet input to the storage address. . Further, the packet input unit 1 acquires a management number from the free space management table 3 at the same time. At this time, packet information necessary for packet identification (source MAC address, destination MAC address, destination IP address, etc.) and packet length are extracted and input to the packet identifier 4 as packet information.

空き領域管理テーブル3は、パケットバッファ2に格納されているパケットを管理するための管理番号、パケット情報、格納アドレス、パケット長などを対応付けて記憶するパケット情報テーブル3−1を備えている。   The free space management table 3 includes a packet information table 3-1 that stores a management number, packet information, a storage address, a packet length, and the like for managing packets stored in the packet buffer 2 in association with each other.

パケット識別器4は、予め設定されたルールに従い、上記パケット情報を後述する複数のキューのうち、どのキューに格納するのかを決定し、キュー制御部5にパケット情報を入力する。キュー制御部5は、複数のキュー#0〜#Jを備え、パケット情報を上記パケット識別器4によって決定されたキュー#j(j=0〜J)に格納する。キュー制御部5は、キュー#j(j=0〜J)にパケット情報が存在するとき、QoS処理部6に対して、送信要求(Req)を送出する。また、同時にパケット情報自体、あるいは管理番号を通知する。   The packet discriminator 4 determines which queue to store the packet information from among a plurality of queues to be described later according to a preset rule, and inputs the packet information to the queue control unit 5. The queue control unit 5 includes a plurality of queues # 0 to #J, and stores packet information in the queue #j (j = 0 to J) determined by the packet identifier 4. The queue control unit 5 sends a transmission request (Req) to the QoS processing unit 6 when packet information exists in the queue #j (j = 0 to J). At the same time, the packet information itself or the management number is notified.

QoS処理部6は、予め指定された後述するパケットスケジューリング(優先制御、重み付け公平制御、パケットシェーピング)により送信決定されたパケット情報あるいは管理番号を送信要求とともに後述するパケット送信部7に通知する。また、QoS処理部6は、後述するパケット送信部7から通知された完了通知を送信要求を行ったパスを辿って戻すことで、自身の内部状態を、次のパケットを送信できる状態にするとともに、キュー制御部5に完了通知を通知する。完了通知は、当該完了通知を送信する契機となった送信要求を行ったキューに到達するので、完了通知を受け取ったキューは、送信要求を送信する契機となったパケット情報を削除する。   The QoS processing unit 6 notifies packet transmission unit 7 (to be described later) together with a transmission request of packet information or a management number determined to be transmitted by packet scheduling (priority control, weighted fair control, packet shaping), which will be specified later. In addition, the QoS processing unit 6 sets its own internal state to a state where the next packet can be transmitted by tracing back the completion notification notified from the packet transmission unit 7 which will be described later, along the path where the transmission request is made. The completion notification is sent to the queue control unit 5. Since the completion notification reaches the queue that made the transmission request that triggered the transmission of the completion notification, the queue that received the completion notification deletes the packet information that triggered the transmission request.

パケット送信部7は、通知されたパケット情報あるいは管理番号から、送信すべきパケットのパケットバッファ2内の格納アドレスを取得し、該格納アドレスで特定されるパケットバッファ内のパケットを送信する。また、パケット送信部7は、送信開始、あるいは送信終了時に、QoS処理部6に対して、完了通知(Ack)を送出する。また、パケット送信完了時、当該パケットの管理番号を他のパケットが使用できるように空き領域管理テーブル3に通知する。   The packet transmission unit 7 acquires the storage address in the packet buffer 2 of the packet to be transmitted from the notified packet information or management number, and transmits the packet in the packet buffer specified by the storage address. The packet transmission unit 7 sends a completion notification (Ack) to the QoS processing unit 6 at the start of transmission or at the end of transmission. Further, when the packet transmission is completed, the free space management table 3 is notified so that the management number of the packet can be used by another packet.

次に、図2は、上述したQoS処理部6の構成を示すブロック図である。図2において、QoS処理部6は、セレクタ10と、複数のパケットスケジューラ(優先制御、重み付け公平制御)11−1〜11−Kと、複数のシェーパ12−1〜12−Lとを備えている。セレクタ10の入力には、キュー制御部5のキュー#0〜#Jからの出力(パケット情報)および各パケットスケジューラ11−1〜11−Kおよび各シェーパ12−1〜12−Lの出力が接続されており、セレクタ10の出力には、最終段の出力を除いて、各パケットスケジューラ11−1〜11−Kの入力および各シェーパ12−1〜12−Lの入力が接続されている。セレクタ10は、外部からの設定に従って、任意の入力を任意の出力に接続することが可能となっている。   Next, FIG. 2 is a block diagram showing the configuration of the QoS processing unit 6 described above. 2, the QoS processing unit 6 includes a selector 10, a plurality of packet schedulers (priority control, weighted fair control) 11-1 to 11-K, and a plurality of shapers 12-1 to 12-L. . Connected to the input of the selector 10 are the outputs (packet information) from the queues # 0 to #J of the queue controller 5 and the outputs of the packet schedulers 11-1 to 11-K and the shapers 12-1 to 12-L. The input of the packet schedulers 11-1 to 11-K and the inputs of the shapers 12-1 to 12-L are connected to the output of the selector 10, except for the output of the final stage. The selector 10 can connect an arbitrary input to an arbitrary output in accordance with an external setting.

次に、該QoS処理部6における接続設定の例を図3(a)、(b)、図4(a)、(b)に示す。図3(a)、図4(a)は、セレクタ内の接続状態を示す図、図3(b)、図4(b)は、それを展開して見やすくした図である。図3(a)に示すように、セレクタ10の入出力を接続することで、図3(b)に示すように、キュー#0〜#3の出力をセレクタ10を介してパケットスケジューラ11−1に入力し、キュー#4の出力をセレクタ10を介してパケットスケジューラ11−2に入力する。さらに、セレクタ10を介してパケットスケジューラ11−1の出力をパケットスケジューラ11−2に入力する。そして、パケットスケジューラ11−2の出力をシェーパ12−1に入力し、該シェーパ12−1の出力を最終の出力(パケット送信部7への入力)としている。   Next, examples of connection settings in the QoS processing unit 6 are shown in FIGS. 3 (a), 3 (b), 4 (a), and 4 (b). 3 (a) and 4 (a) are diagrams showing the connection state in the selector, and FIGS. 3 (b) and 4 (b) are developed views for easy viewing. As shown in FIG. 3A, by connecting the input and output of the selector 10, as shown in FIG. 3B, the output of the queues # 0 to # 3 is sent via the selector 10 to the packet scheduler 11-1. And the output of the queue # 4 is input to the packet scheduler 11-2 via the selector 10. Further, the output of the packet scheduler 11-1 is input to the packet scheduler 11-2 via the selector 10. The output of the packet scheduler 11-2 is input to the shaper 12-1, and the output of the shaper 12-1 is used as the final output (input to the packet transmission unit 7).

また、図4(a)、(b)に示す例では、図4(a)に示すように、セレクタ10の入出力を接続することで、図4(b)に示すように、キュー#0の出力をシェーパ12−1に入力し、キュー#1およびキュー#2の出力をパケットスケジューラ11−1に入力する。さらに、シェーパ12−1の出力と、パケットスケジューラ11−1の出力とを、パケットスケジューラ11−2に入力し、該パケットスケジューラ11−2の出力を最終の出力(パケット送信部7への入力)としている。このようにセレクタ10の接続状態を外部より設定することで、構成において自由度の高いQoS制御が可能となる。   In the example shown in FIGS. 4A and 4B, as shown in FIG. 4A, by connecting the input and output of the selector 10, as shown in FIG. Are input to the shaper 12-1, and the outputs of the queue # 1 and the queue # 2 are input to the packet scheduler 11-1. Further, the output of the shaper 12-1 and the output of the packet scheduler 11-1 are input to the packet scheduler 11-2, and the output of the packet scheduler 11-2 is the final output (input to the packet transmission unit 7). It is said. In this way, by setting the connection state of the selector 10 from the outside, QoS control with a high degree of freedom is possible in the configuration.

ここで、図4(a)、(b)に示す接続状態の場合におけるQoS処理部6の動作を図5から図10を参照して説明する。   Here, the operation of the QoS processing unit 6 in the connection state shown in FIGS. 4A and 4B will be described with reference to FIGS.

図5(a)は、キュー#0、#1、#2にそれぞれ4つのパケット情報Q0_0〜Q0_3、Q1_0〜Q1_3、Q2_0〜Q2_3が蓄積され、それぞれセレクタ10により接続されるシェーパ12−1、パケットスケジューラ11−1に送信要求Req0_0、Req1_0、Req2_0を送出している。   FIG. 5A shows that four pieces of packet information Q0_0 to Q0_3, Q1_0 to Q1_3, and Q2_0 to Q2_3 are accumulated in queues # 0, # 1, and # 2, respectively. Transmission requests Req0_0, Req1_0, and Req2_0 are sent to the scheduler 11-1.

図5(b)では、シェーパ12−1およびパケットスケジューラ11−1から送信要求Req0_0、Req1_0がパケットスケジューラ11−2に送出されている。シェーパ12−1は、トラヒック量を調整するためのもので、内部的に持っているトークン量と送信要求されたパケットの長さを比較し、トークン量が大きければ、受信した送信要求を後段に送出する。送出後、トークン量を送信要求されたパケット長さ分減算する。トークンの追加は、トークンレートで制御されており、トークンレートが遅い場合、パケットの送出レートを低下させることができ、トークンレートが速い場合、パケットの送出レートを高くすることができる。これにより、パケット送出レートを制御している。   In FIG. 5B, transmission requests Req0_0 and Req1_0 are sent from the shaper 12-1 and the packet scheduler 11-1 to the packet scheduler 11-2. The shaper 12-1 is for adjusting the traffic amount. The shaper 12-1 compares the token amount internally held with the length of the packet requested to be transmitted. If the token amount is large, the received transmission request is sent to the subsequent stage. Send it out. After sending, the token amount is subtracted by the packet length requested to be sent. The addition of tokens is controlled by the token rate. When the token rate is low, the packet transmission rate can be reduced. When the token rate is high, the packet transmission rate can be increased. Thereby, the packet transmission rate is controlled.

図5(b)に示す状態では、トークン量が要求パケット長よりも大きいものとして取り扱っている。パケットスケジューラ11−1は、優先制御になっているので、優先度の高い送信要求Req1_0が出力されている。   In the state shown in FIG. 5B, the token amount is handled as being larger than the request packet length. Since the packet scheduler 11-1 has priority control, a transmission request Req1_0 having a high priority is output.

次に、図6(a)では、パケットスケジューラ11−2からパケット送信部7に送信要求Req0_0が出力されている。これは、パケットスケジューラ11−2に入力されている送信要求Req0_0、Req1_0のうち、送信要求Req0_0のほうが、高い優先入力であるためである。図6(b)では、送信要求Req0_0を受信したパケット送信部7が、送信要求Req0_0の指し示すパケット情報Q0_0から得られたパケットを送出開始し、完了通知Ackをパケットスケジューラ11−2に返している。   Next, in FIG. 6A, a transmission request Req0_0 is output from the packet scheduler 11-2 to the packet transmission unit 7. This is because, among the transmission requests Req0_0 and Req1_0 input to the packet scheduler 11-2, the transmission request Req0_0 has a higher priority input. In FIG. 6B, the packet transmitting unit 7 that has received the transmission request Req0_0 starts to transmit a packet obtained from the packet information Q0_0 indicated by the transmission request Req0_0, and returns a completion notification Ack to the packet scheduler 11-2. .

次に、図7(a)で、完了通知Ackを受信したパケットスケジューラ11−2が送信要求Req0_0を停止し、送信要求Req0_0を入力したポート(シェーパ12−1)に対して完了通知Ackを返している。この間、パケット情報Q0_0のパケットが全て送出されていない場合、そのまま継続してパケットを送出する。図7(b)では、完了通知Ackを受信したシェーパ12−1がその完了通知Ackをキュー#0に返している。   Next, in FIG. 7A, the packet scheduler 11-2 that has received the completion notification Ack stops the transmission request Req0_0 and returns a completion notification Ack to the port (shaper 12-1) that has input the transmission request Req0_0. ing. During this time, if all the packets of the packet information Q0_0 are not transmitted, the packets are continuously transmitted as they are. In FIG. 7B, the shaper 12-1 that has received the completion notification Ack returns the completion notification Ack to the queue # 0.

次に、図8(a)では、完了通知Ackを受信したキュー#0は、パケット情報Q0_0を削除し、さらにキューイングされているパケット情報Q0_1の送信要求Req0_1をシェーパ12−1に送信している。図8(b)では、先ほど、送信要求Req0_0を送信したばかりなので、シェーパ12−1でのトークン量がパケット情報Q0_1のパケット長に満たないため、送信要求はパケットスケジューラ11−2に送出されない。しかし、パケットスケジューラ11−2の低優先ポートには、送信要求Req1_0が通知されているので、パケットスケジューラ11−2は、送信要求Req1_0をパケット送信部7に送出する。   Next, in FIG. 8A, the queue # 0 that has received the completion notification Ack deletes the packet information Q0_0, and further transmits a transmission request Req0_1 for the queued packet information Q0_1 to the shaper 12-1. Yes. In FIG. 8B, since the transmission request Req0_0 has just been transmitted, the amount of tokens in the shaper 12-1 is less than the packet length of the packet information Q0_1, and therefore the transmission request is not sent to the packet scheduler 11-2. However, since the transmission request Req1_0 is notified to the low priority port of the packet scheduler 11-2, the packet scheduler 11-2 sends the transmission request Req1_0 to the packet transmission unit 7.

次に、図9(a)では、パケット送信部7がパケット送出状態を確認し、パケット送出中であれば、送信要求Req1_0に対する完了通知Ackを返さないが、現時点では、先のパケット情報Q0_0のパケットの送信が完了しているので、送信要求Req1_0を受理し、完了通知Ackをパケットスケジューラ11−2に返すとともに、パケット情報Q1_0が示すパケットの送出を開始する。図9(b)では、パケットスケジューラ11−2が受信した完了通知Ackを送信要求Req1_0を要求した低優先ポートに送信すると同時に、パケット送信部7に送出していた送信要求Req1_0を止める。そして、この完了通知Ackは、パケットスケジューラ11−1で受信され、パケットスケジューラ11−1では、送信要求Req1_0を送信していた高優先ポートに接続されているキュー#1に完了通知Ackを送出する。   Next, in FIG. 9A, the packet transmission unit 7 confirms the packet transmission state, and if the packet is being transmitted, the completion notification Ack for the transmission request Req1_0 is not returned, but at present, the previous packet information Q0_0 Since the transmission of the packet is completed, the transmission request Req1_0 is accepted, a completion notification Ack is returned to the packet scheduler 11-2, and transmission of the packet indicated by the packet information Q1_0 is started. In FIG. 9B, the completion notification Ack received by the packet scheduler 11-2 is transmitted to the low priority port that requested the transmission request Req1_0, and at the same time, the transmission request Req1_0 sent to the packet transmission unit 7 is stopped. The completion notification Ack is received by the packet scheduler 11-1, and the packet scheduler 11-1 sends the completion notification Ack to the queue # 1 connected to the high priority port that has transmitted the transmission request Req1_0. .

次に、図10(a)では、シェーパ12−1におけるトークン量が送信要求Req0_1に対応するパケット情報Q0_1が示すパケット長がトークン量を超えるので、送信要求Req0_1がパケットスケジューラ11−2に送出される。また、キュー#1は、先に受けた完了通知Ackによりパケット情報Q1_0を削除し、次にキューイングされていたパケット情報Q1_1の送信要求Req1_1をパケットスケジューラ11−1に送出する。パケットスケジューラ11−1は、高優先ポートに通知されている送信要求Req1_1をパケットスケジューラ11−2に送出する。図10(b)では、パケットスケジューラ11−2は、高優先ポートに通知されている送信要求Req0_1をパケット送信部7に送出し、それを受けたパケット送信部7は、パケット送出状態を確認し、パケットが送出されていない状況である場合、完了通知Ackをパケットスケジューラ11−2に送出するとともに、送信要求Q0_1の示すパケットを送出する。   Next, in FIG. 10A, since the packet length indicated by the packet information Q0_1 corresponding to the transmission request Req0_1 exceeds the token amount in the shaper 12-1, the transmission request Req0_1 is sent to the packet scheduler 11-2. The Further, the queue # 1 deletes the packet information Q1_0 by the completion notification Ack received first, and sends the transmission request Req1_1 of the next queued packet information Q1_1 to the packet scheduler 11-1. The packet scheduler 11-1 sends the transmission request Req1_1 notified to the high priority port to the packet scheduler 11-2. In FIG. 10B, the packet scheduler 11-2 sends the transmission request Req0_1 notified to the high priority port to the packet transmission unit 7, and the packet transmission unit 7 receiving the transmission request confirms the packet transmission state. When the packet is not sent, a completion notification Ack is sent to the packet scheduler 11-2 and a packet indicated by the transmission request Q0_1 is sent.

このような送信要求(Req)とその要求を受理したことを示す完了通知(Ack)、およびシェーパ12−1〜12−Lや、パケットスケジューラ11−1〜11−Kの動作モードの1つである重み付け公平制御(後述)を行うためのパケット長を用いてQoS処理を行う。   Such a transmission request (Req) and a completion notification (Ack) indicating that the request has been accepted, and one of the operation modes of the shapers 12-1 to 12-L and the packet schedulers 11-1 to 11-K. QoS processing is performed using a packet length for performing certain weighted fair control (described later).

次に、図11及び図12は、セレクタ10とパケットスケジューラ11−1〜11−Kやシェーパ12−1〜12−Lとの接続形態の一例を示すブロック図である。図11に示すように、パケットスケジューラ11−1〜11−Kの各出力をシェーパ12−1〜12−Kに固定的に接続したり、図12に示すように、キュー#0〜#Jとセレクタ10との間にシェーパ13−1〜13−Jを接続したりすることで、図2の構成に比べて、セレクタ10の接続端子を削減したり、キュー#0〜#Jからの出力帯域を予め絞った状態で、運用するようにしてもよい。   Next, FIGS. 11 and 12 are block diagrams illustrating an example of a connection form between the selector 10 and the packet schedulers 11-1 to 11-K and the shapers 12-1 to 12-L. As shown in FIG. 11, the outputs of the packet schedulers 11-1 to 11-K are fixedly connected to the shapers 12-1 to 12-K, and as shown in FIG. By connecting the shapers 13-1 to 13 -J with the selector 10, the connection terminals of the selector 10 can be reduced or the output bands from the queues # 0 to #J can be reduced compared to the configuration of FIG. You may make it operate | move in the state which narrowed down beforehand.

次に、図13は、パケットスケジューラ11−1〜11−Kの一構成例を示すブロック図である。図13に示すパケットスケジューラ11−k(k=0〜K)は、4入力の構成例であり、カウンタ制御部20およびReqAck制御部21からなる。カウンタ制御部20は、入力数に対応する、重み付け公平制御を行うためのカウンタ#0〜#3を備えており、該カウンタ#0〜#3の動作を制御する。カウンタ制御部20は、ReqAck制御部21の状態が後述するSi(i=0〜3)に遷移したとき、すなわち、後段のパケットスケジューラ11−(k+1)、あるいはシェーパ12−(l)、あるいはパケット送信部7に送信要求(Req)を通知するときに、当該パケットのフレーム長を、前段のパケットスケジューラ11−(k−i−1)、あるいはシェーパ12−(l−1)、あるいはキュー#jからの送信要求のうち、後段のパケットスケジューラ11−(k+1)に通知しようとする入力に対応するカウンタ#iから減ずる。   Next, FIG. 13 is a block diagram illustrating a configuration example of the packet schedulers 11-1 to 11-K. The packet scheduler 11-k (k = 0 to K) shown in FIG. 13 is a four-input configuration example and includes a counter control unit 20 and a ReqAck control unit 21. The counter control unit 20 includes counters # 0 to # 3 for performing weighted fair control corresponding to the number of inputs, and controls the operations of the counters # 0 to # 3. The counter control unit 20 changes the state of the ReqAck control unit 21 to Si (i = 0 to 3) to be described later, that is, the packet scheduler 11- (k + 1), the shaper 12- (l), or the packet in the subsequent stage. When notifying the transmission unit 7 of a transmission request (Req), the frame length of the packet is changed to the previous packet scheduler 11- (ki-1), shaper 12- (l-1), or queue #j. Of the transmission requests from the counter #i corresponding to the input to be notified to the packet scheduler 11- (k + 1) in the subsequent stage.

より具体的には、カウンタ制御部20は、重み付け公平制御におけるカウンタ#0〜#3の動作を調整するためのクレジット部20−1を備えている。カウンタ制御部20は、後述するschedi(i=0〜3)のいずれかが1のとき(スケジューリング完了状態のものがあるとき)、すなわち、パケット送信可能な状態の入力がある場合で、かつ、クレジット部20−1の値が負または0のとき、各カウンタ#iへの重み#iの加算を行わない。また、パケットスケジューラ11−kが入力#iに対する送信要求を行うとき、カウンタ#iからそのパケット長分の値を減算するとともに、そのパケット長分の値をクレジット部20−1に加算する。   More specifically, the counter control unit 20 includes a credit unit 20-1 for adjusting the operations of the counters # 0 to # 3 in the weighted fair control. The counter control unit 20 is when any of schedi (i = 0 to 3), which will be described later, is 1 (when there is a scheduling completed state), that is, when there is an input of a packet transmittable state, and When the value of the credit unit 20-1 is negative or 0, the weight #i is not added to each counter #i. Further, when the packet scheduler 11-k makes a transmission request for the input #i, the value for the packet length is subtracted from the counter #i, and the value for the packet length is added to the credit unit 20-1.

また、カウンタ制御部20は、後述するschedi(i=0〜3)の全てが0のとき(スケジューリング完了状態のものがない)、すなわち、パケット送信可能な状態の入力がない場合で、かつ、クレジット部20−1の値が正のとき、各カウンタ#0〜#3に対応する重み#0〜#3を加算するようになっている。重み#0〜#3を加算する場合には、加算した分、クレジット部20−1から減算する。   Further, the counter control unit 20 is when all of schedi (i = 0 to 3), which will be described later, are 0 (no scheduling complete state), that is, when there is no input of a packet transmittable state, and When the value of the credit unit 20-1 is positive, the weights # 0 to # 3 corresponding to the counters # 0 to # 3 are added. When adding the weights # 0 to # 3, the added amount is subtracted from the credit unit 20-1.

すなわち、カウンタ制御部20は、上述したクレジット部20−1を用いることで(カウンタへ重みを加算するか否かの判定条件にクレジット部20−1の値を加えることで)、送信要求を行う度に、該当カウンタ#i(i=0〜3)から減算されたパケット長分の重みを再び全てのカウンタ#0〜#3に対して重みとして分配するという動作を行うことになる。schedi(i=0〜3)が1になる条件は、「ReqIni(i=0〜3)により送信要求が通知されており、かつ、カウンタ値が正もしくは0」の場合である。   That is, the counter control unit 20 makes a transmission request by using the credit unit 20-1 described above (by adding the value of the credit unit 20-1 to the determination condition as to whether or not to add a weight to the counter). Each time, the weight corresponding to the packet length subtracted from the corresponding counter #i (i = 0 to 3) is again distributed as a weight to all the counters # 0 to # 3. The condition that schedi (i = 0 to 3) becomes 1 is a case where a transmission request is notified by “ReqIni (i = 0 to 3) and the counter value is positive or 0”.

このようにクレジット部20−1を用いる効果は、1つのパケットに対する送信要求を行った後、すぐにカウンタ#0〜#3への加算が行われるので、パケットスケジューラ11−k(k=0〜3)の出力が高速であっても低速であっても、次の出力回線が空くまでに、カウンタ#0〜#3への加算を途中まで完了(スケジューリング完了状態)させることができることにある。また、重み#0〜#3の値を小さくすることができ、重み#0〜#3の値が小さいと、重み付け公平制御の精度を高めることができることにある。   As described above, the effect of using the credit unit 20-1 is that the packet scheduler 11-k (k = 0 to 0) is added to the counters # 0 to # 3 immediately after making a transmission request for one packet. Even if the output of 3) is high speed or low speed, the addition to the counters # 0 to # 3 can be completed halfway (scheduling completed state) until the next output line becomes available. Further, the values of the weights # 0 to # 3 can be reduced, and if the values of the weights # 0 to # 3 are small, the accuracy of the weighted fair control can be increased.

また、送信レートが低い場合、すなわち、送信要求(Req)を通知してから完了通知(Ack)が返ってくるまでの時間が長い場合、クレジット部20−1を用いない場合、重みが各カウンタ#0〜#3に加算し続けられる。このため、カウンタの最大値、あるいは、ある閾値に達すると、カウンタ#0〜#3に対する加算を停止させる機構が必要となる。このような場合、全てのカウンタ#0〜#3の値が同じ値になるので、ただの公平制御となってしまい、重み付け公平制御を行うことができなくなる。そこで、クレジット部20−1を用いて、送信要求したパケット長分のみ、カウンタ#0〜#3への重みとして分配することにより、送信レートが低い場合であっても、重み付け公平制御を行うことができるようになる。   Further, when the transmission rate is low, that is, when the time from notification of the transmission request (Req) until the completion notification (Ack) is returned is long, when the credit unit 20-1 is not used, the weight is set to each counter. It continues to add to # 0 to # 3. For this reason, when the maximum value of the counter or a certain threshold value is reached, a mechanism for stopping the addition to the counters # 0 to # 3 is required. In such a case, the values of all the counters # 0 to # 3 are the same value, so that only fair control is performed, and weighted fair control cannot be performed. Therefore, weighted fair control is performed even when the transmission rate is low by using the credit unit 20-1 to distribute only the packet length requested for transmission as a weight to the counters # 0 to # 3. Will be able to.

また、別の考え方として、パケットの送信要求を送信した後、次に送信要求を送出できるのは、送出パケット長÷出力帯域後である。送信要求を行ってからクレジット部20−1に加算され、それが各カウンタ#0〜#3に分配されるわけであるが、全て分配した後、カウンタ#0〜#3への分配は止まる。次に、分配が開始されるのは、次の送信要求が送出されたときである。このため、この分配を平均化すると、分配速度は、出力帯域と同じとなる。これにより、出力帯域が高速の場合であっても、低速の場合であっても、それに合わせた分配速度になるように調整されるように動作することになる。   As another concept, after a packet transmission request is transmitted, the next transmission request can be transmitted after transmission packet length ÷ output bandwidth. The transmission request is made and then added to the credit unit 20-1, which is distributed to each of the counters # 0 to # 3. However, after all the distribution is performed, the distribution to the counters # 0 to # 3 is stopped. Next, distribution starts when the next transmission request is sent. For this reason, when this distribution is averaged, the distribution speed is the same as the output band. Accordingly, even when the output band is high speed or low speed, the operation is performed so that the distribution speed is adjusted to match the output band.

上述したカウンタ#0〜#3およびクレジット部20−1に加算または減算されるフレーム長は、後述するPIIni(i=0〜3)から得る場合や、PIIniで通知されるのが管理番号だけである場合、この管理番号を用いてパケット情報テーブル3−1からフレーム長を検索する。さらに、実際のパケット送信時に付加されるヘッダ(トンネリングヘッダなど)や情報分(EthenetフレームのプリアンブルやFSCなど)の長さを加えた値をフレーム長として用いることも有用である。   The frame length added to or subtracted from the counters # 0 to # 3 and the credit unit 20-1 described above is obtained from PIIni (i = 0 to 3), which will be described later, or only the management number is notified by PIIni. If there is, the frame length is retrieved from the packet information table 3-1 using this management number. Furthermore, it is also useful to use a value obtained by adding a header (tunneling header or the like) added at the time of actual packet transmission or information (such as an Ethernet frame preamble or FSC) as the frame length.

ReqAck制御部21は、外部からの優先制御/重み付け公平制御動作切り替え指示に従って、初期状態であるIdle、後段に送信要求(ReqOut)を行っている状態Si(i=0,1,2,3)、後段からの完了通知(AckIn)を受信し、delay部21−1で示される動作サイクル時間が経過するのを待っている状態Wi(i=0,1,2,3)を用いて、パケット情報の後段への出力を制御する。送信要求(ReqOut)は、状態がSi(i=0,1,2,3)に遷移したときに1となり、それ以外の時には0となる。PIOutには、現在の状態がS0のときPIIn0のパケット情報、S1のときPIIn1のパケット情報、S2のときPIIn2のパケット情報、S3のときPIIn3のパケット情報が出力される。   The ReqAck control unit 21 is in an initial state of idle according to an external priority control / weighted fair control operation switching instruction, and in a state where a transmission request (ReqOut) is made in the subsequent stage Si (i = 0, 1, 2, 3) , The completion notification (AckIn) from the subsequent stage is received, and the packet is transmitted using the state Wi (i = 0, 1, 2, 3) waiting for the operation cycle time indicated by the delay unit 21-1 to elapse. Controls the output of information to the subsequent stage. The transmission request (ReqOut) becomes 1 when the state transits to Si (i = 0, 1, 2, 3), and becomes 0 otherwise. When the current state is S0, PIIn0 packet information is output to PIOut, PIIn1 packet information is output when it is S1, PIIn2 packet information is output when it is S2, and PIIn3 packet information is output when it is S3.

AckOuti(i=0,1,2,3)は、後段からの完了通知(AckIn)を受けたときの状態がS0のとき、AckOut0のみが1、S1のときAckOut1のみが1、S2のときAckOut2のみが1、S3のときAckOut3のみが1となり、前段のパケットスケジューラに対して完了通知を送信する。ここで、重み付け公平制御動作における状態遷移を図14に示し、重み付け公平制御動作における状態遷移の条件を図15に示す。   AckOuti (i = 0, 1, 2, 3) is A0 when only the AckOut0 is 1 when the state when the completion notification (AckIn) is received from the subsequent stage is A0, AckOut1 is 1 when S1, and AckOut2 when S2 Only 1 and when S3, only AckOut3 becomes 1, and a completion notification is transmitted to the preceding packet scheduler. Here, the state transition in the weighted fair control operation is shown in FIG. 14, and the condition of the state transition in the weighted fair control operation is shown in FIG.

ここで、delay部21−1は、セレクタ10を通してパケットスケジューラ11−1〜11−nが多段に接続された場合、後段からの完了通知(AckIn)を受け、すぐに入力状態を調べ、次の入力が選択されてしまうと、完了通知Ackがキュー#0〜#Jに辿り着いてから次のパケットの送信要求を送ったとしても、伝播遅延のため、その送信要求を受けることができない。そのため、伝播遅延を考慮した値をdelay部21−1に設定することにより伝播遅延の影響をなくすようになっている。なお、図15に示すdelayは、delay部21−1に設定されている値を示している。   Here, when the packet schedulers 11-1 to 11-n are connected in multiple stages through the selector 10, the delay unit 21-1 receives a completion notification (AckIn) from the subsequent stage, immediately checks the input state, If the input is selected, even if a transmission request for the next packet is sent after the completion notification Ack reaches the queues # 0 to #J, the transmission request cannot be received due to a propagation delay. Therefore, the influence of the propagation delay is eliminated by setting a value in consideration of the propagation delay in the delay unit 21-1. In addition, delay shown in FIG. 15 has shown the value set to the delay part 21-1.

次に、上述した本実施形態の動作について説明する。
まず、本実施形態のパケット処理装置による優先制御および重み付け公平制御の基本的な動作について説明する。図16は、本実施形態のパケット処理装置による優先制御および重み付け公平制御の基本的な動作を説明するための構成およびそれぞれのシーケンス図である。ここでは、説明を簡単にするために、図16(a)に示すように、2つのキュー#0、#1からのパケット情報をパケットスケジューラ11−1を介して出力する基本構成を例として説明する。
Next, the operation of the above-described embodiment will be described.
First, basic operations of priority control and weighted fair control by the packet processing apparatus of the present embodiment will be described. FIG. 16 is a configuration and a sequence diagram for explaining basic operations of priority control and weighted fairness control by the packet processing apparatus of this embodiment. Here, in order to simplify the explanation, as shown in FIG. 16A, a basic configuration for outputting packet information from two queues # 0 and # 1 via the packet scheduler 11-1 will be described as an example. To do.

優先制御では、パケットスケジューラ11−1において、キュー#0側の入力の方がキュー#1側の入力に比べて優先度が高いものとする。この場合、現在のパケット情報(キュー#0、#1のいずれでも構わない)を出力している間に、優先度の高い方の入力である、キュー#0にパケット情報Q0_m(m=1〜4)が入力されていると、そのパケット情報Q0_mを優先して出力する。したがって、優先度の高い側のキュー#0からのパケット情報Q0_mに対しては、送出可能な最小時間(図示の矢印を参照)で送出されることになる。   In the priority control, in the packet scheduler 11-1, the input on the queue # 0 side is higher in priority than the input on the queue # 1 side. In this case, while outputting the current packet information (which may be either queue # 0 or # 1), packet information Q0_m (m = 1 to m) is input to queue # 0, which is the higher priority input. If 4) is input, the packet information Q0_m is preferentially output. Therefore, the packet information Q0_m from the queue # 0 on the higher priority side is sent in the minimum sendable time (see the arrow in the figure).

次に、重み付け公平制御では、パケットスケジューラ11−1において、2つの入力とも同じ重みとし、キュー#0、#1ともパケット長は同じであるとする。この場合、すなわち同じ重みである場合には、キュー#0のパケット情報Q0_mとキュー#1のパケット情報Q1_m(m=1〜5)とを交互に出力する。したがって、最小の待ち時間で送出されることはないが、指定された重みに従って、この場合、双方とも同じであるので交互に出力される(重みに従い帯域分割される)。   Next, in the weighted fair control, the packet scheduler 11-1 assumes that the two inputs have the same weight, and the queues # 0 and # 1 have the same packet length. In this case, that is, when the weights are the same, packet information Q0_m of queue # 0 and packet information Q1_m (m = 1 to 5) of queue # 1 are alternately output. Therefore, although it is not transmitted with the minimum waiting time, according to the designated weight, in this case, since both are the same, they are alternately output (band division according to the weight).

次に、本実施形態のパケット処理装置による重み付け公平制御動作について説明する。ここで、図17は、重み付け公平制御時におけるカウンタ制御部20及びReqAck制御部21の一動作例を説明するためのフローチャートである。まず、カウンタ制御部20は、各カウンタ#0〜#3及びクレジット部20−1を0にリセットする(S1)。次に、ReqAck制御部21が、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S0に遷移したか否かを判定する(S2)。そして、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S0に遷移した場合には、PIIn0から得られるパケット長をカウンタ#0から減ずるとともに、同パケット長をクレジット部20−1に加算し(S3)、ステップS2へ戻る。   Next, the weighted fair control operation by the packet processing apparatus of this embodiment will be described. Here, FIG. 17 is a flowchart for explaining an operation example of the counter control unit 20 and the ReqAck control unit 21 during the weighted fair control. First, the counter control unit 20 resets the counters # 0 to # 3 and the credit unit 20-1 to 0 (S1). Next, the ReqAck control unit 21 determines whether or not the state transitions from the initial state Idle or the state Wi (i = 0, 1, 2, 3) to the state S0 (S2). When the state transitions from the initial state Idle or the state Wi (i = 0, 1, 2, 3) to the state S0, the packet length obtained from PIIn0 is subtracted from the counter # 0, and the packet length is converted to the credit unit 20. −1 is added (S3), and the process returns to step S2.

一方、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S0に遷移していない場合には、ReqAck制御部21が、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S1に遷移したか否かを判定する(S4)。そして、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S1に遷移した場合には、PIIn1から得られるパケット長をカウンタ#1から減ずるとともに、同パケット長をクレジット部20−1に加算し(S5)、ステップS2へ戻る。   On the other hand, when the initial state Idle or the state Wi (i = 0, 1, 2, 3) has not changed to the state S0, the ReqAck control unit 21 performs the initial state Idle or the state Wi (i = 0, 1, It is determined whether or not the state has changed from (2, 3) to state S1 (S4). When the state transitions from the initial state Idle or the state Wi (i = 0, 1, 2, 3) to the state S1, the packet length obtained from PIIn1 is decremented from the counter # 1, and the packet length is converted to the credit unit 20 −1 is added (S5), and the process returns to step S2.

一方、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S1に遷移していない場合には、ReqAck制御部21が、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S2に遷移したか否かを判定する(S6)。そして、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S2に遷移した場合には、PIIn2から得られるパケット長をカウンタ#2から減ずるとともに、同パケット長をクレジット部20−1に加算し(S7)、ステップS2へ戻る。   On the other hand, when the initial state Idle or the state Wi (i = 0, 1, 2, 3) has not changed to the state S1, the ReqAck control unit 21 performs the initial state Idle or the state Wi (i = 0, 1, It is determined whether or not the state has shifted from (2, 3) to state S2 (S6). When the state transitions from the initial state Idle or the state Wi (i = 0, 1, 2, 3) to the state S2, the packet length obtained from PIIn2 is decremented from the counter # 2, and the packet length is converted to the credit unit 20. −1 is added (S7), and the process returns to step S2.

一方、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S2に遷移していない場合には、ReqAck制御部21が、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S3に遷移したか否かを判定する(S8)。そして、初期状態Idleあるいは状態Wi(i=0,1,2,3)から状態S3に遷移した場合には、PIIn3から得られるパケット長をカウンタ#3から減ずるとともに、同パケット長をクレジット部20−1に加算し(S9)、ステップS2へ戻る。   On the other hand, when the initial state Idle or the state Wi (i = 0, 1, 2, 3) has not transited to the state S2, the ReqAck control unit 21 performs the initial state Idle or the state Wi (i = 0, 1, It is determined whether or not the state has changed from (2, 3) to state S3 (S8). When the state transitions from the initial state Idle or the state Wi (i = 0, 1, 2, 3) to the state S3, the packet length obtained from the PIIn3 is subtracted from the counter # 3, and the packet length is converted to the credit unit 20. -1 is added (S9), and the process returns to step S2.

また、いずれの場合でもない場合には、schedi(i=0,1,2,3)のいずれかが1であり、かつクレジット部20−1の値が0以下であるか否かを判定する(S10)。そして、schedi(i=0,1,2,3)のいずれかが1であり(スケジューリング完了状態)、すなわち、パケット送信可能な状態の入力があり、かつクレジット部20−1の値が0以下であるとき(スケジューリング完了状態)、すなわち、パケット送信可能な状態の入力がある場合、各カウンタ#0〜#3への重みの加算を行うことなく、ステップS2へ戻る。   If none of the cases is true, it is determined whether any of schedi (i = 0, 1, 2, 3) is 1 and the value of the credit unit 20-1 is 0 or less. (S10). Then, any one of schedi (i = 0, 1, 2, 3) is 1 (scheduling completion state), that is, there is an input of a packet transmission enabled state, and the value of the credit unit 20-1 is 0 or less. (Scheduling completed state), that is, if there is an input of a packet transmittable state, the process returns to step S2 without adding the weights to the counters # 0 to # 3.

一方、そうでない場合、すなわち、パケット送信可能な状態の入力がない場合、変数nを0とし(S11)、変数nが入力数(今回は4)以上になったか否かを判定し(S12)、変数nが4以上でなければ、送信要求を受けている(ReqIn=1)か否かを判定する(S13)。そして、送信要求を受けていない場合(ReqIn=0)には、カウンタ#n(n=0〜3)が0以上であるか否かを判定する(S14)。そして、カウンタ#n(n=0〜3)が0以上でなければ、カウンタ#nに対応する重み#nを加算するとともに、クレジット部20−1から重み#nを減算する(S15)。一方、カウンタ#n(n=0〜3)が0以上であれば、カウンタ#nへの重みの加算およびクレジット部20−1からの重みの減算を行わない。また、送信要求を受けている場合(ReqIn=0)には、カウンタ#nの値に関係なく、カウンタ#nに対応する重み#nを加算するとともに、クレジット部20−1から重み#nを減算する(S15)。   On the other hand, if this is not the case, that is, if there is no input in a state where packet transmission is possible, the variable n is set to 0 (S11), and it is determined whether or not the variable n is equal to or greater than the number of inputs (this time 4) (S12). If the variable n is not 4 or more, it is determined whether a transmission request is received (ReqIn = 1) (S13). If no transmission request is received (ReqIn = 0), it is determined whether or not the counter #n (n = 0 to 3) is 0 or more (S14). If counter #n (n = 0 to 3) is not 0 or more, weight #n corresponding to counter #n is added and weight #n is subtracted from credit unit 20-1 (S15). On the other hand, if the counter #n (n = 0 to 3) is 0 or more, the addition of the weight to the counter #n and the subtraction of the weight from the credit unit 20-1 are not performed. When a transmission request is received (ReqIn = 0), the weight #n corresponding to the counter #n is added regardless of the value of the counter #n, and the weight #n is added from the credit unit 20-1. Subtract (S15).

次に、いずれの場合も、変数nを1つだけインクリメントし(S16)、ステップS12へ戻り、変数nが4以上になるまで、すなわち、全てのカウンタ#0〜#3に対する処理が終了するまで、上述した処理を繰り返す。そして、変数nが4以上になると、ステップS2に戻る。   Next, in either case, the variable n is incremented by one (S16), and the process returns to step S12 until the variable n becomes 4 or more, that is, until the processing for all counters # 0 to # 3 is completed. The above process is repeated. When the variable n becomes 4 or more, the process returns to step S2.

次に、図18は、重み付け公平制御時におけるカウンタ制御部20及びReqAck制御部21の他の動作例を説明するためのフローチャートである。なお、図18におけるステップS21〜S33は、上述した図17におけるステップS1〜S13と同じであるので説明を省略する。   Next, FIG. 18 is a flowchart for explaining another operation example of the counter control unit 20 and the ReqAck control unit 21 during the weighted fair control. Note that steps S21 to S33 in FIG. 18 are the same as steps S1 to S13 in FIG.

ステップS33で、送信要求を受けている(ReqIn=1)か否かを判定した際、送信要求を受けていない場合(ReqIn=0)には、カウンタ#n(n=0〜3)が0以上で、かつ、delay部21−1が0または完了通知Ackを受信したか否かを判定する(S34)。そして、カウンタ#n(n=0〜3)が0以上でなく、またはdelay部21−1が0または完了通知Ackを受信していなければ、カウンタ#nに対応する重み#nを加算するとともに、クレジット部20−1から重み#nを減算する(S35)。一方、カウンタ#n(n=0〜3)が0以上で、かつdelay部21−1が0または完了通知Ackを受信した場合には、カウンタ#nの値をクレジット部20−1に加算するとともに、同カウンタ#nの値を0とする(S36)。また、送信要求を受けている場合(ReqIn=0)には、カウンタ#nの値やdelay部21−1の値、あるいは完了通知Ackを受信しているか否かに関係なく、カウンタ#nに対応する重み#nを加算するとともに、クレジット部20−1から重み#nを減算する(S35)。   In step S33, when it is determined whether or not a transmission request is received (ReqIn = 1), if no transmission request is received (ReqIn = 0), the counter #n (n = 0 to 3) is 0. As described above, it is determined whether the delay unit 21-1 has received 0 or a completion notification Ack (S34). If counter #n (n = 0 to 3) is not equal to or greater than 0, or delay unit 21-1 has not received 0 or completion notification Ack, weight #n corresponding to counter #n is added. The weight #n is subtracted from the credit unit 20-1 (S35). On the other hand, when the counter #n (n = 0 to 3) is 0 or more and the delay unit 21-1 receives 0 or the completion notification Ack, the value of the counter #n is added to the credit unit 20-1. At the same time, the value of the counter #n is set to 0 (S36). When a transmission request is received (ReqIn = 0), the counter #n is set regardless of the value of the counter #n, the value of the delay unit 21-1, or the completion notification Ack. The corresponding weight #n is added and the weight #n is subtracted from the credit unit 20-1 (S35).

そして、いずれの場合も、変数nを1つだけインクリメントし(S37)、ステップS32へ戻り、変数nが入力数(今回は4)以上になるまで、すなわち、全てのカウンタ#0〜#3に対する処理が終了するまで、上述した処理を繰り返す。そして、変数nが4以上になると、ステップS22に戻る。   In either case, the variable n is incremented by one (S37), and the process returns to step S32. Until the variable n reaches the number of inputs (this time, 4) or more, that is, for all counters # 0 to # 3. The above-described processing is repeated until the processing is completed. When the variable n becomes 4 or more, the process returns to step S22.

図17と図18の処理の違いは、送信要求を受けていない入力のカウンタの値が正の値をとったときの動作にある。クレジット部20−1と各カウンタ#0〜#3との和は、基本的には0となっている。このため、図17に示す動作の場合、いずれかのカウンタ#i(i=0〜3)が正の値である場合、それ以外のカウンタ#p(p=0〜3;i以外)が負であることが考えられる。したがって、クレジット部20−1の全ての値が分配された場合、次のパケットが送出され、クレジット部20−1にそのパケット長が加算されるまで、あるいは、スケジューリング完了状態の入力がなくなるまで、重み#0〜#3はカウンタ#0〜#3に加算されなくなる。これにより、その負の値を有するカウンタ#pに対する入力のスケジューリング完了が遅れる可能性がある。そこで、図18に示す動作では、送信要求を受けていないにもかかわらず、正の値を有するカウンタ#iに対しては、該カウンタ#iの値を0にし、そのカウンタ#iが有する値をクレジット部20−1に戻すことで、見かけ上、重みの加算速度を向上させている。   The difference between the processing of FIG. 17 and FIG. 18 is the operation when the value of the counter of the input that has not received a transmission request takes a positive value. The sum of the credit unit 20-1 and the counters # 0 to # 3 is basically 0. Therefore, in the case of the operation shown in FIG. 17, if any counter #i (i = 0-3) is a positive value, the other counters #p (p = 0-3; other than i) are negative. It is thought that it is. Therefore, when all the values of the credit unit 20-1 are distributed, the next packet is sent out, until the packet length is added to the credit unit 20-1, or until no scheduling completion state is input. The weights # 0 to # 3 are not added to the counters # 0 to # 3. As a result, there is a possibility that input scheduling completion for the counter #p having the negative value is delayed. Therefore, in the operation shown in FIG. 18, for a counter #i having a positive value even though no transmission request is received, the value of the counter #i is set to 0, and the value of the counter #i Is returned to the credit unit 20-1, and the weight addition speed is apparently improved.

ところで、上述したカウンタ#0〜#3への追加方法は、図17および図18では、シーケンシャルに行われているように記載されているが、並列処理を行ってもよい。この場合、クレジット部20−1からの減算に際して競合が生じないようにする配慮が必要である。また、カウンタ#0〜#3への重みの加算は、カウントアップの時間を重みに合わせて調整したり(重みが4であれば、カウントアップサイクルを4とする)、加算器を用いることが考えられる。   By the way, although the addition method to the counters # 0 to # 3 described above is described as being performed sequentially in FIGS. 17 and 18, parallel processing may be performed. In this case, it is necessary to consider that no competition occurs when subtracting from the credit unit 20-1. In addition, the addition of the weights to the counters # 0 to # 3 is performed by adjusting the count-up time according to the weights (if the weight is 4, the count-up cycle is 4), or an adder is used. Conceivable.

ここで、図19(a)〜(d)は、上述したカウンタへの追加方法として、同時加算(並列処理)、順次加算、およびカウントアップ時間を調整して行う場合の動作例を示すタイミングチャートである。図19(a)には、カウンタ#0〜#3に対して同時に重み#0〜#3を加算する様子を示しており、図19(b)には、カウンタ#0〜#3に重み#0〜#3を順次加算する様子を示している。また、図19(c)には、カウントアップ時間を調整してカウンタ#0〜#3へのカウントアップを同時に行う様子を示しており、図19(d)には、カウントアップ時間を調整してカウンタ#0〜#3へのカウントアップを順次行う様子を示している(斜線部分がカウントアップ時間)。   Here, FIGS. 19A to 19D are timing charts showing an operation example in the case of performing simultaneous addition (parallel processing), sequential addition, and count-up time as an addition method to the counter described above. It is. FIG. 19A shows a state in which the weights # 0 to # 3 are simultaneously added to the counters # 0 to # 3. FIG. 19B shows the weights # 0 to # 3 to the counters # 0 to # 3. A state in which 0 to # 3 are sequentially added is shown. FIG. 19C shows a state in which the count-up time is adjusted and the counters # 0 to # 3 are simultaneously counted up. FIG. 19D shows the count-up time being adjusted. The counters # 0 to # 3 are sequentially counted up (the shaded area is the count up time).

回路規模の点から考えると、図19(a)は加算器が4つ、図19(b)は加算器が1つ、図19(c)はカウンタが4つ、図19(d)はカウンタが1つ必要であるため、(a)>(b)>(c)>(d)の順に回路規模が小さくなる。しかしながら、高速動作させるために必要な動作周波数は、(a)<(b)<(c)<(d)の順に大きくなる。そのため、回路規模と動作周波数を考慮して使用するカウンタ制御方法を選択する。   From the viewpoint of circuit scale, FIG. 19A shows four adders, FIG. 19B shows one adder, FIG. 19C shows four counters, and FIG. 19D shows counters. Therefore, the circuit scale becomes smaller in the order of (a)> (b)> (c)> (d). However, the operating frequency required for high-speed operation increases in the order of (a) <(b) <(c) <(d). Therefore, the counter control method to be used is selected in consideration of the circuit scale and the operating frequency.

次に、優先制御動作について説明する。
優先制御動作時には、カウンタ制御部20を使用しないので、停止させておいてもよい。基本的には、重み付け公平制御時と同様の動作を行う。違いは、状態遷移である。優先制御時における状態遷移を図20に示し、優先制御時における状態遷移の条件を図21に示す。入力の優先順は、入力#0>入力#1>入力#2>入力#3の場合を示している。この状態遷移によりReqInが存在する場合、優先順に入力された送信要求を後段のパケットスケジューラに通知することができる。優先制御の場合、特に、delay部21−1が重要であり、その理由を図22(a)、(b)を参照して説明する。
Next, the priority control operation will be described.
Since the counter control unit 20 is not used during the priority control operation, it may be stopped. Basically, the same operation as in weighted fair control is performed. The difference is the state transition. FIG. 20 shows state transitions during priority control, and FIG. 21 shows conditions for state transitions during priority control. The priority order of input indicates the case of input # 0> input # 1> input # 2> input # 3. When ReqIn exists due to this state transition, the transmission requests input in the priority order can be notified to the subsequent packet scheduler. In the case of priority control, the delay unit 21-1 is particularly important, and the reason will be described with reference to FIGS. 22 (a) and 22 (b).

図22(a)、(b)において、各々のパケットスケジューラ11−1、11−2は、優先制御スケジューラであり、階層的に接続されている。説明を簡単にするために、入力ポート数を2としている。現時点で、キュー#0の最初のパケット情報Q0_0が示すパケットが送信開始され、完了通知Ackがパケットスケジューラ11−2に戻ってきている状態とする。期待される動作としては、パケット情報Q0_0の次に出力されるのは、パケット情報Q0_1が示すパケットである。   22A and 22B, each of the packet schedulers 11-1 and 11-2 is a priority control scheduler and is connected in a hierarchical manner. In order to simplify the explanation, the number of input ports is two. At this time, the transmission of the packet indicated by the first packet information Q0_0 in the queue # 0 is started, and the completion notification Ack is returned to the packet scheduler 11-2. As an expected operation, what is output next to the packet information Q0_0 is a packet indicated by the packet information Q0_1.

図22(a)に示すように、遅延制御がない場合には、パケットスケジューラ11−2からパケットスケジューラ11−1に完了通知Ackを送出した時点で、高優先ポートに通知されている送信要求を一度キャンセルするために、高優先ポートからの送信要求がない状態になる。このとき、低優先ポートには、送信要求が通知されているので、低優先ポートに接続されているキュー#2からのパケット情報Q2_0が示すパケットが、パケット情報Q0_0が示すパケットの次に出力されてしまう。   As shown in FIG. 22A, when there is no delay control, the transmission request notified to the high priority port is sent when the completion notification Ack is sent from the packet scheduler 11-2 to the packet scheduler 11-1. In order to cancel once, there is no transmission request from the high priority port. At this time, since the transmission request is notified to the low priority port, the packet indicated by the packet information Q2_0 from the queue # 2 connected to the low priority port is output next to the packet indicated by the packet information Q0_0. End up.

図22(b)に示すように、遅延制御がある場合にも、パケットスケジューラ11−2がパケットスケジューラ11−1に完了通知Ackを送出した時点で、高優先ポートに通知されている送信要求を一度キャンセルするが、このとき、delay部21−1に3を設定しているため待ち状態になる。パケットスケジューラ11−2がパケットスケジューラ11−1に完了通知Ackを送出したあと、パケットスケジューラ11−1がキュー#0に完了通知Ackを送出するのに1サイクル、キュー#0がパケット情報Q0_1の送信要求を送出するのに1サイクル、パケットスケジューラ11−2がパケットスケジューラ11−1に送信要求するのに1サイクルの合計3サイクル、完了通知Ackを送出してから送信要求Reqを受けるまでにかかる。パケット情報Q0_1の送信要求Reqを受けたとき、ちょうどdelay部21−1の遅延は0となるので、この時点で出力する入力ポートをパケットスケジューラ11−1が選択する。   As shown in FIG. 22B, even when there is delay control, when the packet scheduler 11-2 sends a completion notification Ack to the packet scheduler 11-1, the transmission request notified to the high priority port is sent. Although it cancels once, since it has set 3 to the delay part 21-1, it will be in a waiting state. After the packet scheduler 11-2 sends a completion notification Ack to the packet scheduler 11-1, the packet scheduler 11-1 sends a completion notification Ack to the queue # 0 for one cycle, and the queue # 0 sends the packet information Q0_1. It takes one cycle to send a request, and one cycle for the packet scheduler 11-2 to make a transmission request to the packet scheduler 11-1, a total of three cycles, from sending a completion notification Ack to receiving a transmission request Req. When the transmission request Req for the packet information Q0_1 is received, the delay of the delay unit 21-1 is 0, so the packet scheduler 11-1 selects an input port to be output at this time.

次に、パケットスケジューラ11−2がQ0_1を受けたとき、パケットスケジューラ1−2のdelay部がちょうど0になるので、この時点で出力する入力ポートをパケットスケジューラ11−2が選択する。もちろんこの場合には、高優先ポートに通知されたパケット情報Q0_1が示すパケットが出力される。   Next, when the packet scheduler 11-2 receives Q0_1, the delay section of the packet scheduler 1-2 is exactly 0, so the packet scheduler 11-2 selects an input port to be output at this point. Of course, in this case, the packet indicated by the packet information Q0_1 notified to the high priority port is output.

このように、特に、優先制御スケジューラを階層的に接続して用いる場合には、完了通知Ackを送出してから送信要求Reqを受けるまでの遅延時間動作を行うことにより、正しい(この場合、パケット情報Q0_0が示すパケットの次にパケット情報Q0_1が示すパケットが出力される)パケットスケジューリングが可能となる。   In this way, in particular, when the priority control schedulers are used in a hierarchical connection, the delay time operation from when the completion notification Ack is sent until the transmission request Req is received is correct (in this case, the packet Packet scheduling is possible (the packet indicated by the packet information Q0_1 is output next to the packet indicated by the information Q0_0).

次に、図23に示すような単純なスケジューリング構成を用いて、重み付け公平制御動作時の各信号の様子を説明する。図23において、パケットスケジューラ(総称してパケットスケジューラ11とする)の4つの入力に接続されている各キュー#0〜#3には、各々、パケット情報Q0_0〜Q0_3、パケット情報Q1_0〜Q1_3、パケット情報Q2_0〜Q2_3、パケット情報Q3_0〜Q3_3が蓄積されており、パケットスケジューラ11に対して送信要求ReqIn0〜ReqIn3を通知している。それぞれのキュー#0〜#3に蓄積されているパケット情報は、Qj_m(j:キュー番号、m:蓄積されている順に付けたパケット情報の番号)で示される。   Next, the state of each signal during the weighted fair control operation will be described using a simple scheduling configuration as shown in FIG. In FIG. 23, each of queues # 0 to # 3 connected to four inputs of a packet scheduler (collectively referred to as packet scheduler 11) has packet information Q0_0 to Q0_3, packet information Q1_0 to Q1_3, packet Information Q2_0 to Q2_3 and packet information Q3_0 to Q3_3 are accumulated, and the packet scheduler 11 is notified of transmission requests ReqIn0 to ReqIn3. The packet information stored in each of the queues # 0 to # 3 is indicated by Qj_m (j: queue number, m: number of packet information given in the order of storage).

パケットスケジューラ11により送信するパケットが決定されたときには、先に記述したように、パケット送信部7にパケット情報と合わせて送信要求ReqOutが送信される。送信要求ReqOutを受けたパケット送信部7は、パケットを送信できる状態であれば、パケット情報Qj_mに示されるパケットを送信するとともに、パケットスケジューラ11に対して完了通知AckInを送出する。完了通知AckInを受け取ったパケットスケジューラ11は、送信要求元のキュー#j(j=0〜3)に対し、完了通知AckOuti(i=0〜3)を通知する。完了通知AckOutiを受けたキュー#jは、当該パケット情報Qj_mを開放するとともに、次のパケット情報を通知し、さらに送信要求をパケットスケジューラ11に通知する。   When the packet to be transmitted is determined by the packet scheduler 11, the transmission request ReqOut is transmitted to the packet transmission unit 7 together with the packet information as described above. The packet transmission unit 7 that has received the transmission request ReqOut transmits a packet indicated by the packet information Qj_m and sends a completion notification AckIn to the packet scheduler 11 if the packet can be transmitted. The packet scheduler 11 that has received the completion notification AckIn notifies the transmission request source queue #j (j = 0 to 3) of the completion notification AckOuti (i = 0 to 3). Upon receiving the completion notification AckOuti, the queue #j releases the packet information Qj_m, notifies the next packet information, and notifies the packet scheduler 11 of a transmission request.

以下の説明においては、パケットスケジューラ11の各入力に対する重み#0〜#3を、入力#0に対しては16、入力#1に対しては12、入力#2に対しては8、入力#3に対しては4として説明を行う(4:3:2:1)。また、キュー#0〜#3に蓄積されている各パケット情報が示すパケットの長さを、説明を簡単にするために100とする。同様の理由でdelay部21−1に設定する遅延時間を0とする。   In the following description, the weights # 0 to # 3 for each input of the packet scheduler 11 are 16 for the input # 0, 12 for the input # 1, 8 for the input # 2, and the input # 3 is described as 4 (4: 3: 2: 1). Further, the length of the packet indicated by each piece of packet information stored in the queues # 0 to # 3 is set to 100 for the sake of simplicity. For the same reason, the delay time set in the delay unit 21-1 is set to zero.

次に、図24は、本実施形態による重み付け公平制御動作時の各信号(Reqin、PIIn、AckOut、PIOut、AckIn、およびカウンタ値)の様子を示すタイミングチャートである。   Next, FIG. 24 is a timing chart showing the state of each signal (Reqin, PIIn, AckOut, PIOut, AckIn, and counter value) during the weighted fair control operation according to the present embodiment.

期間Aは、初期状態で、パケットスケジューラは、アイドル(Idle)状態であり、各カウンタ#0〜#3の値は0であり、各入力#0〜#3には、送信要求とともにパケット情報が入力される。各入力#0〜#3には、ReqIn0〜ReqIn3が立っており、かつカウンタ#0〜#3が0であるので、スケジュール完了状態にある(sched0〜sched3が1)。このとき、パケットスケジューラ11の内部状態は、アイドル状態Idleから状態S0へ遷移する。   The period A is an initial state, the packet scheduler is in an idle state, the values of the counters # 0 to # 3 are 0, and each input # 0 to # 3 includes packet information along with a transmission request. Entered. Since ReqIn0 to ReqIn3 are set for each input # 0 to # 3 and the counters # 0 to # 3 are 0, the schedule is in a completed state (sched0 to sched3 is 1). At this time, the internal state of the packet scheduler 11 transitions from the idle state Idle to the state S0.

期間Bでは、内部状態がS0なので、パケット送信部7にReqOutとパケット情報Q0_0を送出する。さらに、カウンタ#0の値からパケット情報Q0_0の示すパケットの長さである100を減ずる(−100になる)。加えて、クレジット部20−1にそのパケット長が加算され、クレジットの値は100となる。   In period B, since the internal state is S0, ReqOut and packet information Q0_0 are sent to the packet transmitter 7. Further, 100, which is the length of the packet indicated by packet information Q0_0, is subtracted from the value of counter # 0 (becomes -100). In addition, the packet length is added to the credit unit 20-1, and the credit value becomes 100.

期間Cにおいて、パケット送信部7では、これより前にパケットを送出していないので、回線に空きがある。そのため、直ちにパケット情報Q0_0により示されるパケットを送出するとともに、完了通知AckInをパケットスケジューラ11に返す。完了通知AckInを受信したパケットスケジューラ11は、現在の状態がS0であるので、状態W0に遷移する。加えて、クレジット値≧0であるので、各カウンタ#0〜#3への重み#0〜#3の加算を開始する。   In the period C, the packet transmission unit 7 has not sent a packet before this, so there is a free line. For this reason, the packet indicated by the packet information Q0_0 is immediately transmitted, and a completion notification AckIn is returned to the packet scheduler 11. The packet scheduler 11 that has received the completion notification AckIn transitions to the state W0 because the current state is S0. In addition, since the credit value ≧ 0, the addition of the weights # 0 to # 3 to the counters # 0 to # 3 is started.

期間Dでは、現在の状態がW0であるので、入力#0から完了信号AckOut0を送出し、送信が完了したことをキュー#0に通知する。このとき、delay部21−1による遅延時間を設定する。今回の説明では0として考えているので、delay==0は常に成り立つ。通常は、0でない値を設定するので、設定されたサイクル分状態を変更させずに待ち続ける。現時点でReqIn1が立っており、カウンタ#1の値が0であるので、入力#1に対するスケジューリングは完了している(sched1=1)。また、delay==0であるので、パケットスケジューラ11の内部状態は、W0→S1に遷移する。   In the period D, since the current state is W0, a completion signal AckOut0 is transmitted from the input # 0 to notify the queue # 0 that the transmission is completed. At this time, the delay time by the delay unit 21-1 is set. In this explanation, since 0 is considered, delay == 0 always holds. Normally, since a value other than 0 is set, the process waits without changing the state for the set cycle. Since ReqIn1 is currently set and the value of the counter # 1 is 0, scheduling for the input # 1 is completed (sched1 = 1). Since delay == 0, the internal state of the packet scheduler 11 changes from W0 to S1.

ところで、ReqIn0〜ReqIn3の信号は、図24においてパルスとして書かれているが、パケットスケジューラ11の内部的には、送信要求されているということで、期間Dの場合であっても、ReqIn1は立っていることとして取り扱う。実際には、Set−Resetフリップフロップを用い、Set端子がReqIn0〜ReqIn3につながり、Reset端子をAckInにつなげ、その出力をReqIn0〜ReqIn3とすることなどで対応可能である。これにより、ReqIn0〜ReqIn3を受けてからAckInを受けるまでの間、ReqIn0〜ReqIn3を受けているとして取り扱える。   By the way, the signals ReqIn0 to ReqIn3 are written as pulses in FIG. 24. However, because the packet scheduler 11 internally requests transmission, ReqIn1 is set even in the period D. Treat as being. In practice, this can be dealt with by using a Set-Reset flip-flop, the Set terminal is connected to ReqIn0 to ReqIn3, the Reset terminal is connected to AckIn, and the output is ReqIn0 to ReqIn3. Thus, it can be handled that ReqIn0 to ReqIn3 are received after receiving ReqIn0 to ReqIn3 until receiving AckIn.

期間Eでは、内部状態がS1になったので、PIOutとしてパケット情報Q1_0を出力するとともに、送信要求ReqOutをパケット送信部7に通知する。期間Cとは異なり、今回は、パケット情報Q0_0のパケットを送信中であるので、送信が完了する期間Gまで、送信完了は通知されない。また、カウンタ#1からパケット長である100を減ずる(−100になる)。さらに、クレジット部20−1にそのパケット長を加算する。   In the period E, since the internal state is S1, the packet information Q1_0 is output as PIOut and the transmission request ReqOut is notified to the packet transmission unit 7. Unlike the period C, since the packet of the packet information Q0_0 is currently being transmitted, the transmission completion is not notified until the period G when the transmission is completed. Also, the packet length 100 is subtracted from the counter # 1 (becomes -100). Further, the packet length is added to the credit unit 20-1.

期間Gでは、クレジット部20−1の全ての値が各カウンタ#0〜#3に分配されて0になり、かつスケジューリングが完了しているものがあるので((sched0‖sched1‖sched2‖sched3)=1)、各カウンタ#0〜#3への加算を停止する。該期間Gに至るまでにクレジット部20−1は、合計200蓄積し、カウンタ#0〜#3のそれぞれに累計80、60、40、20ずつ加算されたことと、入力#0、#1に対するフレーム送信要求を行った(カウンタ#0、#1から各々100減じられた)ので、カウンタ#0〜#3の現時点での値は、−20、−40、40、20となっている。   In the period G, all the values of the credit unit 20-1 are distributed to the counters # 0 to # 3 and become 0, and the scheduling has been completed ((sched0‖sched1‖sched2‖sched3). = 1) Stop addition to each counter # 0 to # 3. By the time period G, the credit unit 20-1 has accumulated a total of 200, and the total of 80, 60, 40, 20 has been added to each of the counters # 0 to # 3, and the inputs # 0 and # 1 Since a frame transmission request is made (the counters # 0 and # 1 are each subtracted by 100), the current values of the counters # 0 to # 3 are −20, −40, 40, and 20, respectively.

期間Hでは、先に送出した入力1に対する送信完了が通知されているので、現在の状態S1から状態W1に遷移する。   In the period H, since the transmission completion for the input 1 sent out is notified, the current state S1 changes to the state W1.

期間Iでは、状態がW1であるので、入力#1から完了信号AckOut1を送出し、送信が完了したことをキュー#1に通知する。このとき、delay部21−1に遅延時間を設定する(この場合、0)。現時点で、ReqIn2が立っており、カウンタ#2の値が40であるので、入力#2に対するスケジューリングは完了しているので、状態W1→状態S2に遷移する。   In the period I, since the state is W1, a completion signal AckOut1 is transmitted from the input # 1 to notify the queue # 1 that the transmission is completed. At this time, a delay time is set in the delay unit 21-1 (in this case, 0). At this time, since ReqIn2 is set and the value of the counter # 2 is 40, the scheduling for the input # 2 is completed, and the state transitions from the state W1 to the state S2.

期間J以降は同様の処理を行っていく。
期間Qでは、パケット情報Q2_0のパケット送信が終了したので、送信要求を出しているパケット情報Q3_0の送信が開始され、完了通知Ackが返される。これにより、S3→W3に遷移する。
The same processing is performed after the period J.
In the period Q, since the packet transmission of the packet information Q2_0 is completed, the transmission of the packet information Q3_0 that has issued the transmission request is started, and the completion notification Ack is returned. Thereby, the process transits from S3 to W3.

期間Rでは、状態W3であるので、入力#3に対して完了信号AckOutを通知する。また、入力#0に対するスケジューリングが完了しているので、状態W3→状態S0に遷移する。   In the period R, since the state is W3, the completion signal AckOut is notified to the input # 3. Further, since the scheduling for the input # 0 has been completed, the state transitions from state W3 to state S0.

このような処理を続けていくことにより出力されるパケットは、図24の最下段に示すようになる。すなわち、図示されている10パケットを見ると、キュー#0のパケットが4つ、キュー#1のパケットが3つ、キュー#2のパケットが2つ、キュー#3のパケットが1つとなり、重みで指定した4:3:2:1の比率で、パケットが送信されたことが分かる。   Packets output by continuing such processing are as shown in the bottom row of FIG. That is, looking at the 10 packets shown in the figure, there are 4 packets for queue # 0, 3 packets for queue # 1, 2 packets for queue # 2, and 1 packet for queue # 3. It can be seen that the packets were transmitted at the ratio of 4: 3: 2: 1 specified in.

上述した実施形態によれば、パケットスケジューラの回路ブロックはそのままで、制御方法を変えることで、優先制御、重み付け公平制御を行うことで、高速パケット処理を実現しつつ、通信品質制御の調整または変更の自由度を拡大することができる。   According to the above-described embodiment, the packet scheduler circuit block remains unchanged, and the control method is changed to perform priority control and weighted fair control, thereby realizing high-speed packet processing and adjusting or changing communication quality control. The degree of freedom can be expanded.

なお、上述した実施形態においては、上述したパケット入力部1、パケット識別器4、キュー制御部5、QoS処理部6、パケット送信部7などによる一連の処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶され、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われるようにしてもよい。すなわち、パケット入力部1、パケット識別器4、キュー制御部5、QoS処理部6、パケット送信部7などは、CPU等の中央演算処理装置がROMやRAM等の主記憶装置に上記プログラムを読み出して、情報の加工・演算処理を実行することにより、実現されるようにしてもよい。   In the above-described embodiment, the series of processes performed by the packet input unit 1, the packet identifier 4, the queue control unit 5, the QoS processing unit 6, the packet transmission unit 7 and the like described above are computer-readable in the form of a program. The above processing may be performed by storing the program in a possible recording medium and reading and executing the program by a computer. That is, in the packet input unit 1, the packet identifier 4, the queue control unit 5, the QoS processing unit 6, the packet transmission unit 7, etc., a central processing unit such as a CPU reads the above program into a main storage device such as a ROM or a RAM. It may be realized by executing information processing / arithmetic processing.

ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。   Here, the computer-readable recording medium means a magnetic disk, a magneto-optical disk, a CD-ROM, a DVD-ROM, a semiconductor memory, or the like. Alternatively, the computer program may be distributed to the computer via a communication line, and the computer that has received the distribution may execute the program.

本発明の実施形態によるパケット処理装置の構成を示すブロック図である。It is a block diagram which shows the structure of the packet processing apparatus by embodiment of this invention. QoS処理部の構成を示すブロック図である。It is a block diagram which shows the structure of a QoS process part. QoS処理部における接続設定の例を示すブロック図である。It is a block diagram which shows the example of the connection setting in a QoS process part. QoS処理部における接続設定の例を示すブロック図である。It is a block diagram which shows the example of the connection setting in a QoS process part. QoS処理部の動作を説明するためのブロック図である。It is a block diagram for demonstrating operation | movement of a QoS process part. QoS処理部の動作を説明するためのブロック図である。It is a block diagram for demonstrating operation | movement of a QoS process part. QoS処理部の動作を説明するためのブロック図である。It is a block diagram for demonstrating operation | movement of a QoS process part. QoS処理部の動作を説明するためのブロック図である。It is a block diagram for demonstrating operation | movement of a QoS process part. QoS処理部の動作を説明するためのブロック図である。It is a block diagram for demonstrating operation | movement of a QoS process part. QoS処理部の動作を説明するためのブロック図である。It is a block diagram for demonstrating operation | movement of a QoS process part. セレクタとパケットスケジューラやシェーパとの接続形態の一例を示すブロック図である。It is a block diagram which shows an example of the connection form of a selector, a packet scheduler, and a shaper. セレクタとパケットスケジューラやシェーパとの接続形態の一例を示すブロック図である。It is a block diagram which shows an example of the connection form of a selector, a packet scheduler, and a shaper. パケットスケジューラの一構成例を示すブロック図である。It is a block diagram which shows one structural example of a packet scheduler. 重み付け公平制御動作における状態遷移を示す概念図である。It is a conceptual diagram which shows the state transition in weighted fair control operation | movement. 重み付け公平制御動作における状態遷移の条件を示す図である。It is a figure which shows the conditions of the state transition in weighted fair control operation | movement. 本実施形態のパケット処理装置による優先制御および重み付け公平制御の基本的な動作を説明するための構成およびそれぞれのシーケンス図である。FIG. 5 is a configuration for explaining basic operations of priority control and weighted fairness control by the packet processing apparatus of the present embodiment, and respective sequence diagrams. 重み付け公平制御時におけるカウンタ制御部の一動作例を説明するためのフローチャートである。It is a flowchart for demonstrating one operation example of the counter control part at the time of weighted fair control. 重み付け公平制御時におけるカウンタ制御部の他の動作例を説明するためのフローチャートである。It is a flowchart for demonstrating the other operation example of the counter control part at the time of weighted fair control. 上述したカウンタへの追加方法として、同時加算(並列処理)、順次加算、およびカウントアップ時間を調整して行う例を示すタイミングチャートである。It is a timing chart which shows the example performed by adjusting simultaneous addition (parallel processing), sequential addition, and count-up time as an addition method to the counter mentioned above. 優先制御時における状態遷移を示す概念図である。It is a conceptual diagram which shows the state transition at the time of priority control. 優先制御時における状態遷移の条件を示す図である。It is a figure which shows the conditions of the state transition at the time of priority control. 優先制御時におけるdelay部の重要性を説明するためのブロック図である。It is a block diagram for demonstrating the importance of the delay part at the time of priority control. 重み付け公平制御動作時における各信号の様子を説明するための一構成例を示すブロック図である。It is a block diagram which shows the example of 1 structure for demonstrating the mode of each signal at the time of weighted fair control operation | movement. 重み付け公平制御動作時における各信号の様子を示すタイミングチャートである。It is a timing chart which shows the mode of each signal at the time of weighted fair control operation | movement.

符号の説明Explanation of symbols

1 パケット入力部
2 パケットバッファ(記憶手段)
3 空き領域管理テーブル
3−1 パケット情報テーブル
4 パケット識別器
5 キュー制御部(複数のキュー)
6 QoS処理部
7 パケット送信部(送信手段)
10 セレクタ(経路切替手段)
11−1〜11−K パケットスケジューラ(複数の重み付け公平制御手段、複数の優先制御手段)
12−1〜12−L シェーパ(パケット送出レート調整手段)
12−1〜12−K シェーパ(パケット送出レート調整手段)
13−1〜13−J シェーパ(パケット送出レート調整手段)
20 カウンタ制御部(複数のカウンタ)
20−1 クレジット部(加算手段)
21 ReqAck制御部
21−1 delay部(調整手段)

1 packet input unit 2 packet buffer (storage means)
3 Free space management table 3-1 Packet information table 4 Packet identifier 5 Queue control unit (multiple queues)
6 QoS processing unit 7 Packet transmission unit (transmission means)
10 Selector (route switching means)
11-1 to 11-K packet scheduler (multiple weighted fair control means, multiple priority control means)
12-1 to 12-L shaper (packet transmission rate adjusting means)
12-1 to 12-K shaper (packet transmission rate adjusting means)
13-1 to 13-J shaper (packet transmission rate adjusting means)
20 Counter control unit (multiple counters)
20-1 Credit part (addition means)
21 ReqAck control part 21-1 delay part (adjustment means)

Claims (13)

入力された通信パケットの通信品質を制御して出力するパケット通信品質制御装置において、
入力された通信パケットを示すパケットデータを記憶する記憶手段と、
前記記憶手段に記憶されたパケットデータに関する情報であるパケット情報を順次記憶する複数のキューと、
前記複数のキューに記憶されたパケット情報を所定の順序に基づいて読み出して出力する複数の重み付け公平制御手段と、
前記複数の重み付け公平制御手段から出力されたパケット情報で特定されるパケットデータを前記記憶手段から読み出し、そのパケットデータに基づいて通信パケットを生成して送信する送信手段と、
前記複数のキューと、前記複数の重み付け公平制御手段と、前記送信手段とを収容するとともに、これら各部の入出力を相互に切替可能に接続する経路切替手段とを備え、
前記キューは、記憶する前記パケット情報とこのパケット情報に対応するパケットデータの出力要求とを前記経路切替手段を介して対応する接続相手へ出力し、
前記重み付け公平制御手段は、入力の各々に対応する複数のカウンタと、該複数のカウンタへの重みの積算速度を調整するための加算手段とを備え、前記複数のカウンタへの重みの積算速度を前記加算手段により調整しつつ、出力要求を送信可能な入力が存在せず、かつ前記カウンタの値が所定の閾値に達するまでの間、当該カウンタに所定の重みを積算し、該複数のカウンタの値と前記経路切替手段を介して入力される前段からの出力要求とに基づいて、前記経路切替手段を介して入力されたパケット情報および出力要求を選択し、前記経路切替手段を介して対応する接続相手へ出力し、
前記送信手段は、入力された出力要求に応じて当該出力要求とともに入力されたパケット情報で特定されるパケットデータを前記記憶手段から読み出し、そのパケットデータに基づいて送信パケットを生成して送信することを特徴とするパケット通信品質制御装置。
In the packet communication quality control device that controls and outputs the communication quality of the input communication packet,
Storage means for storing packet data indicating the input communication packet;
A plurality of queues for sequentially storing packet information, which is information relating to packet data stored in the storage means;
A plurality of weighted fair control means for reading out and outputting the packet information stored in the plurality of queues based on a predetermined order;
Transmitting means for reading out packet data specified by the packet information output from the plurality of weighted fair control means from the storage means, and generating and transmitting a communication packet based on the packet data;
A path switching means for accommodating the plurality of queues, the plurality of weighted fair control means, and the transmission means, and for connecting the input and output of these units to each other so as to be switchable;
The queue outputs the packet information to be stored and a packet data output request corresponding to the packet information to the corresponding connection partner via the path switching unit,
The weighted fair control means includes a plurality of counters corresponding to each of the inputs, and an adding means for adjusting the cumulative speed of the weights to the multiple counters. While there is no input capable of transmitting an output request while adjusting by the adding means, and until the value of the counter reaches a predetermined threshold, a predetermined weight is added to the counter, Based on the value and the output request from the previous stage input through the route switching unit, the packet information and the output request input through the route switching unit are selected, and the response is made through the route switching unit. Output to the connection partner,
The transmission means reads packet data specified by packet information input together with the output request in response to the input output request from the storage means, generates a transmission packet based on the packet data, and transmits the packet. A packet communication quality control device.
前記複数の重み付け公平制御手段は、前記複数のカウンタの値と前記経路切替手段を介して入力される前段からの出力要求とに基づいて前記パケット情報および前記出力要求を選択する際、接続相手から送信完了通知が入力されたときは、出力要求した接続相手に対して送信完了通知を送信することを特徴とする請求項1記載のパケット通信品質制御装置。   The plurality of weighted fair control means, when selecting the packet information and the output request based on the value of the plurality of counters and the output request from the previous stage input via the path switching means, from the connection partner 2. The packet communication quality control apparatus according to claim 1, wherein when a transmission completion notification is input, a transmission completion notification is transmitted to the connection partner that requested the output. 前記複数の重み付け公平制御手段は、後段への出力要求の送出後、出力要求している入力に対応するカウンタから出力要求したパケットのパケット長だけ減算し、出力要求したパケットのパケット長を前記加算手段に積算する一方、該加算手段の値に基づいて、前記複数のカウンタに重みを積算するとともに、前記加算手段の値を前記重み分減算することを特徴とする請求項1または2記載のパケット通信品質制御装置。   The plurality of weighted fair control means, after sending the output request to the subsequent stage, subtracts the packet length of the requested packet from the counter corresponding to the requested input, and adds the packet length of the requested output packet 3. The packet according to claim 1, wherein the packet is accumulated in said means, while a weight is accumulated in said plurality of counters based on the value of said adder, and the value of said adder is subtracted by said weight. Communication quality control device. 前記複数の重み付け公平制御手段は、出力要求を送信可能な入力が存在せず、かつ前記カウンタの値が所定の閾値に達している場合、前記複数のカウンタの値を前記加算手段に積算した後、前記複数のカウンタの値をゼロとすることを特徴とする請求項3記載のパケット通信品質制御装置。   The plurality of weighted fair control means, when there is no input capable of transmitting an output request and the value of the counter reaches a predetermined threshold value, after adding the values of the plurality of counters to the adding means 4. The packet communication quality control apparatus according to claim 3, wherein the values of the plurality of counters are set to zero. 前記複数の重み付け公平制御手段は、前記接続相手から送信完了通知を受信してから、次の接続相手から入力されたパケット情報および出力要求を受理するまでの時間を調整する調整手段を備えることを特徴とする請求項1ないし4のいずれかに記載のパケット通信品質制御装置。   The plurality of weighted fair control means includes an adjusting means for adjusting a time from reception of a transmission completion notification from the connection partner to reception of packet information and an output request input from the next connection partner. 5. The packet communication quality control device according to claim 1, wherein 前記複数の重み付け公平制御手段の各々の前段または後段に配置され、前段から出力要求されたパケットのパケット長さとに基づいて、パケット送出レートを制御する複数のパケット送出レート調整手段を備えることを特徴とする請求項1記載のパケット通信品質制御装置。   A plurality of packet sending rate adjusting means are provided in the preceding stage or the succeeding stage of each of the plurality of weighted fair control means and control the packet sending rate based on the packet length of the packet requested to be output from the preceding stage. The packet communication quality control apparatus according to claim 1. 前記複数のパケット送出レート調整手段は、その入出力を前記経路切替手段の入出力に接続され、該経路切替手段による切り替え動作によって前記複数の重み付け公平制御手段の各々の前段または後段に配置されることを特徴とする請求項6記載のパケット通信品質制御装置。   The plurality of packet transmission rate adjusting means are connected to the input / output of the path switching means, and the upstream and downstream stages of the plurality of weighted fair control means are arranged by the switching operation by the path switching means. The packet communication quality control apparatus according to claim 6. 前記複数のパケット送出レート調整手段は、その入力を前記複数の重み付け公平制御手段の出力に接続され、その出力を前記経路切替手段の入力に接続されていることを特徴とする請求項6記載のパケット通信品質制御装置。   7. The plurality of packet transmission rate adjusting means, the input is connected to the output of the plurality of weighted fairness control means, and the output is connected to the input of the path switching means. Packet communication quality control device. 前記複数のパケット送出レート調整手段は、その入力を前記複数のキューの出力に接続され、その出力を前記経路切替手段の入力に接続されていることを特徴とする請求項6記載のパケット通信品質制御装置。   7. The packet communication quality according to claim 6, wherein the plurality of packet transmission rate adjusting means have their inputs connected to the outputs of the plurality of queues and their outputs connected to the inputs of the path switching means. Control device. 入力された通信パケットの通信品質を制御して出力するパケット通信品質制御装置において、
入力された通信パケットを示すパケットデータを記憶する記憶手段と、
前記記憶手段に記憶されたパケットデータに関する情報であるパケット情報を順次記憶する複数のキューと、
前記複数のキューに記憶されたパケット情報を所定の順序に基づいて読み出して出力する複数の優先制御手段と、
前記複数の優先制御手段から出力されたパケット情報で特定されるパケットデータを前記記憶手段から読み出し、そのパケットデータに基づいて通信パケットを生成して送信する送信手段と、
前記複数のキューと、前記複数の優先制御手段と、前記送信手段とを収容するとともに、これら各部の入出力を相互に切替可能に接続する経路切替手段とを備え、
前記キューは、記憶する前記パケット情報とこのパケット情報に対応するパケットデータの出力要求とを前記経路切替手段を介して対応する接続相手へ出力し、
前記優先制御手段は、後段の接続相手のいずれかから送信完了通知を受信してから、次の前段の接続相手から入力されたパケット情報および出力要求を受理するまでの時間を調整する調整手段を備え、前記調整手段による時間調整後、前記前段の接続相手の各々に固有の優先度に基づいて、前記前段の接続相手のいずれか1つから、パケット情報および出力要求を選択して出力し、
前記送信手段は、前記出力された出力要求に応じて、該出力要求とともに出力されたパケット情報で特定されるパケットデータを前記記憶手段から読み出し、そのパケットデータに基づいて送信パケットを生成して送信することを特徴とするパケット通信品質制御装置。
In the packet communication quality control device that controls and outputs the communication quality of the input communication packet,
Storage means for storing packet data indicating the input communication packet;
A plurality of queues for sequentially storing packet information, which is information relating to packet data stored in the storage means;
A plurality of priority control means for reading out and outputting the packet information stored in the plurality of queues based on a predetermined order;
Transmission means for reading out packet data specified by packet information output from the plurality of priority control means from the storage means, and generating and transmitting a communication packet based on the packet data;
A path switching unit that accommodates the plurality of queues, the plurality of priority control units, and the transmission unit, and connects the input and output of these units so as to be switchable with each other.
The queue outputs the packet information to be stored and a packet data output request corresponding to the packet information to the corresponding connection partner via the path switching unit,
The priority control means includes an adjusting means for adjusting a time from reception of a transmission completion notification from one of the subsequent connection partners until reception of the packet information and output request input from the next previous connection partner. Comprising, after the time adjustment by the adjusting means, selecting and outputting the packet information and the output request from any one of the preceding connection partners based on the priority specific to each of the preceding connection partners;
In response to the output request, the transmission means reads packet data specified by the packet information output together with the output request from the storage means, generates a transmission packet based on the packet data, and transmits the packet And a packet communication quality control device.
前記優先制御手段は、前記各接続相手に固有の優先度に基づいて、いずれか1つのパケット情報および出力要求を選択する際、接続相手から送信完了通知が入力されたときは、出力要求した接続相手に対して送信完了通知を送信することを特徴とする請求項10記載のパケット通信品質制御装置。   The priority control means, when selecting any one packet information and output request based on the priority specific to each connection partner, when a transmission completion notification is input from the connection partner, 11. The packet communication quality control apparatus according to claim 10, wherein a transmission completion notification is transmitted to the other party. 入力された通信パケットの通信品質を制御して出力するパケット通信品質制御方法において、
入力された通信パケットを示すパケットデータを記憶するステップと、
前記パケットデータに関する情報であるパケット情報を複数のキューに順次記憶するステップと、
出力要求を送信可能なキューが存在しない場合、所定の閾値に達するまでの間、複数のカウンタに所定の重みを積算するステップと、
前記複数のカウンタへの重みの積算頻度を制御するステップと、
前記積算された重みの値と前記複数のキューからの出力要求とに基づいて、前記複数のキューから入力されたパケット情報および出力要求を選択するステップと、
前記選択されたパケット情報で特定されるパケットデータを読み出し、そのパケットデータに基づいて通信パケットを生成して送信するステップと
を含むことを特徴とするパケット通信品質制御方法。
In a packet communication quality control method for controlling and outputting the communication quality of an input communication packet,
Storing packet data indicating the input communication packet;
Sequentially storing packet information, which is information about the packet data, in a plurality of queues;
A step of adding a predetermined weight to a plurality of counters until a predetermined threshold is reached when there is no queue capable of transmitting an output request;
Controlling an accumulation frequency of weights to the plurality of counters;
Selecting packet information and output requests input from the plurality of queues based on the accumulated weight value and output requests from the plurality of queues;
Reading packet data specified by the selected packet information, generating and transmitting a communication packet based on the packet data, and a packet communication quality control method.
入力された通信パケットの通信品質を制御して出力するパケット通信品質制御方法において、
入力された通信パケットを示すパケットデータを記憶するステップと、
前記パケットデータに関する情報であるパケット情報を複数のキューに順次記憶するステップと、
前記複数のキューから入力されたパケット情報および出力要求を受理するまでの時間を調整するステップと、
前記時間調整後、入力の各々に固有の優先度に基づいて、前記複数のキューのいずれか1つから、パケット情報および出力要求を選択して出力するステップと、
前記出力された出力要求に応じて、該出力要求とともに出力されたパケット情報で特定されるパケットデータを読み出し、そのパケットデータに基づいて通信パケットを生成して送信するステップと
を含むことを特徴とするパケット通信品質制御方法。

In a packet communication quality control method for controlling and outputting the communication quality of an input communication packet,
Storing packet data indicating the input communication packet;
Sequentially storing packet information, which is information about the packet data, in a plurality of queues;
Adjusting packet information and output time received from the plurality of queues until receiving the output request;
After the time adjustment, selecting and outputting packet information and output requests from any one of the plurality of queues based on a priority specific to each of the inputs;
Reading packet data specified by the packet information output together with the output request in response to the output request, generating a communication packet based on the packet data, and transmitting the packet data. Packet communication quality control method.

JP2005300276A 2005-10-14 2005-10-14 Packet communication quality control apparatus and packet communication quality control method Active JP4279281B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005300276A JP4279281B2 (en) 2005-10-14 2005-10-14 Packet communication quality control apparatus and packet communication quality control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005300276A JP4279281B2 (en) 2005-10-14 2005-10-14 Packet communication quality control apparatus and packet communication quality control method

Publications (2)

Publication Number Publication Date
JP2007110515A true JP2007110515A (en) 2007-04-26
JP4279281B2 JP4279281B2 (en) 2009-06-17

Family

ID=38035996

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005300276A Active JP4279281B2 (en) 2005-10-14 2005-10-14 Packet communication quality control apparatus and packet communication quality control method

Country Status (1)

Country Link
JP (1) JP4279281B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011049983A (en) * 2009-08-28 2011-03-10 Fujitsu Ltd Frame output method and frame output apparatus
JP2012505572A (en) * 2008-10-14 2012-03-01 ノーテル・ネットワークス・リミテッド Method and system for weighted fair queue management
WO2012056551A1 (en) * 2010-10-28 2012-05-03 株式会社日立製作所 Communication method of monitoring control system and monitoring control system
JP2014042237A (en) * 2012-08-06 2014-03-06 Renesas Electronics Europe Ltd Hardware circuit, credit-based traffic shaper, apparatus, and hardware-implemented method
JP2014507917A (en) * 2011-03-10 2014-03-27 マーベル ワールド トレード リミテッド Data block system for non-arbitrary networks
JP2018050246A (en) * 2016-09-23 2018-03-29 富士通株式会社 Transmitter and transmission processing method

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012505572A (en) * 2008-10-14 2012-03-01 ノーテル・ネットワークス・リミテッド Method and system for weighted fair queue management
US8711871B2 (en) 2008-10-14 2014-04-29 Rockstar Consortium US LLP Method and system for weighted fair queuing
US9042224B2 (en) 2008-10-14 2015-05-26 Rpx Clearinghouse Llc Method and system for weighted fair queuing
JP2015109672A (en) * 2008-10-14 2015-06-11 ノーテル・ネットワークス・リミテッド Method and system for weighted fair queuing
JP2011049983A (en) * 2009-08-28 2011-03-10 Fujitsu Ltd Frame output method and frame output apparatus
WO2012056551A1 (en) * 2010-10-28 2012-05-03 株式会社日立製作所 Communication method of monitoring control system and monitoring control system
JP2014507917A (en) * 2011-03-10 2014-03-27 マーベル ワールド トレード リミテッド Data block system for non-arbitrary networks
KR101918695B1 (en) 2011-03-10 2018-11-14 마벨 월드 트레이드 리미티드 Data blocking systems for non-arbitrary networks
JP2014042237A (en) * 2012-08-06 2014-03-06 Renesas Electronics Europe Ltd Hardware circuit, credit-based traffic shaper, apparatus, and hardware-implemented method
JP2018050246A (en) * 2016-09-23 2018-03-29 富士通株式会社 Transmitter and transmission processing method

Also Published As

Publication number Publication date
JP4279281B2 (en) 2009-06-17

Similar Documents

Publication Publication Date Title
US20230388239A1 (en) Packet sending method, network node, and system
WO2019214561A1 (en) Packet sending method, network node, and system
US5831971A (en) Method for leaky bucket traffic shaping using fair queueing collision arbitration
Prabhavat et al. Effective delay-controlled load distribution over multipath networks
US20050281277A1 (en) Establishing traffic priorities in a voice over IP network
US9197570B2 (en) Congestion control in packet switches
JP2003224599A (en) Delay minimizing system with guaranteed band width delivery for real-time traffic
JPH07221795A (en) Isochronal connection processing method and packet switching network
KR20030045987A (en) An apparatus and method for scheduling packets by using a round robin based on credit
JP4279281B2 (en) Packet communication quality control apparatus and packet communication quality control method
JP4376855B2 (en) Packet communication quality control device
CN114553792A (en) Method, device and equipment for adjusting scheduling parameters and computer readable storage medium
US7602797B2 (en) Method and apparatus for request/grant priority scheduling
WO2024131109A1 (en) Dynamic operation-based queue gating scheduling method and system, and storage medium
JPH11298523A (en) Packet scheduling method
JPH1168787A (en) Packet scheduling method
US12199873B2 (en) Scalable E2E network architecture and components to support low latency and high throughput
US20250030645A1 (en) Packet transmission
US8159944B2 (en) Time based queuing
JP3972370B2 (en) Differentiated scheduling method in downlink communication between RNC and Node B in network
JP4194972B2 (en) Packet communication quality control device
JP2004104571A (en) Method and apparatus for packet transfer control, software, and recording medium
Zaidi et al. Simplified Static Image Face Detection Algorithm
JP2009171372A (en) Packet transfer device equipped with transmission control function
Ghaffar et al. The output-controlled round robin scheduling in differentiated services edge switches

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080501

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080617

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080812

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090303

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090311

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

Free format text: PAYMENT UNTIL: 20120319

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4279281

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120319

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20120319

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250