JP2011004083A - Communication quality control device and communication quality control method - Google Patents
Communication quality control device and communication quality control method Download PDFInfo
- Publication number
- JP2011004083A JP2011004083A JP2009144589A JP2009144589A JP2011004083A JP 2011004083 A JP2011004083 A JP 2011004083A JP 2009144589 A JP2009144589 A JP 2009144589A JP 2009144589 A JP2009144589 A JP 2009144589A JP 2011004083 A JP2011004083 A JP 2011004083A
- Authority
- JP
- Japan
- Prior art keywords
- input
- value
- input port
- priority
- packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004891 communication Methods 0.000 title claims abstract description 36
- 238000003908 quality control method Methods 0.000 title claims abstract description 30
- 230000005540 biological transmission Effects 0.000 claims abstract description 89
- 241001522296 Erithacus rubecula Species 0.000 claims abstract description 30
- 238000000034 method Methods 0.000 claims description 25
- 230000008878 coupling Effects 0.000 abstract 1
- 238000010168 coupling process Methods 0.000 abstract 1
- 238000005859 coupling reaction Methods 0.000 abstract 1
- LLYXJBROWQDVMI-UHFFFAOYSA-N 2-chloro-4-nitrotoluene Chemical compound CC1=CC=C([N+]([O-])=O)C=C1Cl LLYXJBROWQDVMI-UHFFFAOYSA-N 0.000 description 22
- 238000010586 diagram Methods 0.000 description 21
- 238000012545 processing Methods 0.000 description 18
- 238000007667 floating Methods 0.000 description 5
- 230000001186 cumulative effect Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000007493 shaping process Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
Description
本発明は、通信品質制御装置、及び通信品質制御方法に関する。 The present invention relates to a communication quality control apparatus and a communication quality control method.
データ通信以外に音声電話やTV電話など、多様な通信サービスがインターネットを介して提供されている。このような多様化に伴い、柔軟性と高速性を両立するために、各キュー(Queue、待ち行列)、スケジューラ、そしてシェーパ(Shaper)をセレクタにより接続し、送信要求と要求受理信号のハンドシェークを用いたQoS(Quality of Service)方式が提案されてきた(例えば、特許文献1、2参照)。なお、QoSとは、ネットワーク上で、通信のための帯域を予約した際に、一定の通信品質を保証する技術である。
In addition to data communication, various communication services such as voice calls and videophones are provided via the Internet. Along with such diversification, in order to achieve both flexibility and high speed, each queue (Queue), scheduler, and shaper (Shaper) are connected by a selector, and a handshake of a transmission request and a request acceptance signal is performed. The QoS (Quality of Service) method used has been proposed (see, for example,
さらに、このQoS方式に用いるスケジューリング方法が提案されている(例えば、特許文献3、4参照)。この方式は、各入力に指定された重みをクロックサイクル毎に時分割、あるいは、加算値の変更により各入力に設置されるカウンタへ各入力の重みに比例した値を加算し、カウンタの値が0または正であり、送信要求を受けている入力をラウンドロビン(Round Robin)により選択し、後段に送信要求を送信(伝達)する。上記ラウンドロビンとは、リソースを順番に割り振ることにより選択される入力の偏りをなくすことを行う方式である。
Furthermore, a scheduling method used for this QoS method has been proposed (see, for example,
従来の通信品質制御装置は、送信時、選択された入力カウンタから要求パケットの長さ分を減じ、送出機会を他の入力より下げる。もし、加算値が小さい場合には、次の送出機会までの時間が長くなることにより、出力レートは低下する。一方、もし、加算値が大きい場合には、次の送出機会までの時間が短くなることにより、出力レートは増加する。これにより、重み付け公平制御が行われている。 The conventional communication quality control device subtracts the length of the request packet from the selected input counter at the time of transmission, and lowers the transmission opportunity from other inputs. If the added value is small, the output rate is lowered by increasing the time until the next transmission opportunity. On the other hand, if the added value is large, the output rate is increased by shortening the time until the next transmission opportunity. Thereby, weighted fair control is performed.
送信要求したパケットが出力されると、送信要求が通過したパスを経由し、送信受理信号が戻ってくる。この送信受理信号を受けた場合、先に選択された送信要求入力に対して受理信号を送出する。 When the transmission request packet is output, the transmission acceptance signal is returned via the path through which the transmission request has passed. When this transmission acceptance signal is received, the acceptance signal is transmitted in response to the transmission request input selected previously.
しかしながら、従来の通信品質制御装置は、受理信号を送出後すぐに次に送出するパケットを選択すると誤った入力を選択してしまうので、ある一定期間、選択を行わず(WaitCntと言う変数をカウントダウンすることにより計測)、一定期間経過後(WaitCntと言う変数が0となった場合)に入力選択を開始する。精度や、動作速度に影響が発生するため、従来の通信品質制御装置は、この一定期間中にも、先に記述した重みに比例する値を加算しなければならない。但し、送信要求を受けておらず、入力カウンタが正であり、送信受理信号を受け取った、あるいはWaitCntが0になった場合、従来の通信品質制御装置は、そのカウンタに蓄積されていた値を総カウンタに戻さなければならない。このため、従来の通信品質制御装置は、処理が複雑で、かつ各入力は最大フレームサイズの負数分のレジスタを持たなければならず、かつそれらがすべて総カウンタに戻った場合のレジスタを持たなければならないので、回路規模が大きくなる。 However, since the conventional communication quality control device selects the wrong input when the next packet to be transmitted is selected immediately after the acceptance signal is transmitted, the selection is not performed for a certain period of time (a variable called WaitCnt is counted down). The input selection is started after a certain period of time has elapsed (when the variable WaitCnt becomes 0). Since the accuracy and the operation speed are affected, the conventional communication quality control apparatus must add a value proportional to the previously described weight even during this fixed period. However, if a transmission request is not received, the input counter is positive, a transmission acceptance signal is received, or WaitCnt becomes 0, the conventional communication quality control device uses the value stored in the counter. Must return to the total counter. For this reason, the conventional communication quality control apparatus is complicated in processing, and each input must have a register corresponding to a negative number of the maximum frame size, and must have registers when they all return to the total counter. Therefore, the circuit scale becomes large.
また、重みの範囲が大きくなった場合(例えば、1:15→1:255)、従来の通信品質制御装置は、正確なカウンタへの加算ができなくなる。これは、加算時にある入力カウンタに対しては1が加算され、他のある入力には、255が一度に加算されることになり、パケットがバーストして送信される可能性があるからである。例えば、255が加算された入力に蓄積されているパケット長が64Byteである場合、3パケット(255/64=3.98)が一度に送出される可能性がある。 In addition, when the weight range becomes large (for example, 1: 15 → 1: 255), the conventional communication quality control device cannot accurately add to the counter. This is because 1 is added to an input counter at the time of addition, and 255 is added at one time to some other input, and packets may be transmitted in bursts. . For example, when the packet length accumulated in the input to which 255 is added is 64 bytes, there is a possibility that 3 packets (255/64 = 3.98) are transmitted at a time.
また、従来技術で提案されているスケジューリング方法は、優先制御、あるいは重み付け公平制御を同時に実行することはできず、排他的な動作を余儀なくされる。そのため、優先制御の後に重み付け公平制御を行う、あるいは重み付け公平制御を行った後で優先制御を行うために、従来の通信品質制御装置は、スケジューラ等の接続関係を変更するためのセレクタを必要とする。そのため、回路規模がさらに増大するという問題がある。 Also, the scheduling method proposed in the prior art cannot execute priority control or weighted fair control at the same time, and is forced to perform exclusive operations. Therefore, in order to perform weighted fair control after priority control or perform priority control after weighted fair control, a conventional communication quality control device requires a selector for changing the connection relationship such as a scheduler. To do. Therefore, there is a problem that the circuit scale further increases.
また、従来技術では、各入力への重みの加算速度は、そのスケジューラが取り扱う最大性能に合わせなければならない。このため、従来の通信品質制御装置は、加算回路の並列化/動作周波数の上昇/加算単位の増加のいずれか、あるいは併せた対策を行う必要があり、回路規模の増大、消費電力の増大、設計の複雑さの増大、スケジューリング精度の低下といった問題を生じる。 In the prior art, the speed of adding the weight to each input must match the maximum performance handled by the scheduler. For this reason, the conventional communication quality control device needs to take one of the following measures: parallelization of the adder circuit / increase in operating frequency / increase in the addition unit, or an increase in circuit scale, power consumption, This causes problems such as an increase in design complexity and a decrease in scheduling accuracy.
本発明は、このような事情を考慮してなされたものであり、その目的は、回路規模の縮小・スケジューリング精度の向上を図ることができる通信品質制御装置、及び通信品質制御方法を提供することにある。 The present invention has been made in view of such circumstances, and an object of the present invention is to provide a communication quality control apparatus and a communication quality control method capable of reducing the circuit scale and improving the scheduling accuracy. It is in.
上述した課題を解決するために、本発明は、スケジューリング回路の入力ポート毎に設定された重み値に基づいて出力優先順位を決定し、該出力優先順に従って前記入力ポート毎に割り振られた送信パケットを出力する通信品質制御装置において、前記スケジューリング回路は、前記入力ポート毎に複数の参照値に基づいて入力選択用比較値を生成する入力選択比較値生成手段と、前記入力選択用比較値を比較し、最も値が小さい入力ポートを選択する選択手段と、前記最も値が小さい入力ポートに対する送信パケットのフレーム長を、当該入力ポートに対して設定されている重み値で除算する算出手段と、前記算出手段による除算結果である商及び余りを、次回の入力ポート選択時に、前記入力選択比較値生成手段により前記入力選択用比較値を生成する際の前記複数の参照値の1つとして当該入力ポートに対して保持する保持手段とを備えることを特徴とする通信品質制御装置である。 In order to solve the above-described problem, the present invention determines an output priority based on a weight value set for each input port of a scheduling circuit, and transmits a transmission packet allocated to each input port according to the output priority order. In the communication quality control device that outputs the input selection comparison value generation means for generating an input selection comparison value based on a plurality of reference values for each of the input ports, the input selection comparison value is compared. Selecting means for selecting the input port having the smallest value; calculation means for dividing the frame length of the transmission packet for the input port having the smallest value by the weight value set for the input port; The quotient and the remainder, which are the division results by the calculation means, are selected by the input selection comparison value generation means when the input port is selected next time. A communication quality control unit, characterized in that it comprises holding means for holding the one of the plurality of reference values in generating the values for the input port.
また本発明は、上記の発明において、前記入力選択比較値生成手段は、前記入力ポート毎に保持されている、送信パケットの送信要求、優先度、商、及びラウンドロビン値を、前記複数の参照値として用いて入力選択用比較値を生成する、ことを特徴とする。 Further, the present invention is the above invention, wherein the input selection comparison value generation means refers to the transmission packet transmission request, priority, quotient, and round robin value stored for each of the input ports. A comparison value for input selection is generated using the value as a value.
また本発明は、上記の発明において、前記入力選択比較値生成手段は、重み付け公平制御、優先制御、重み付け公平制御と優先制御、または優先制御と重み付け公平制御のいずれを実行するかに応じて、前記入力選択用比較値を生成するための参照値の組み合わせを変えて、前記入力選択用比較値を生成する、ことを特徴とする。 Further, in the present invention according to the above invention, the input selection comparison value generating means performs weighted fair control, priority control, weighted fair control and priority control, or priority control and weighted fair control. The combination of reference values for generating the input selection comparison value is changed to generate the input selection comparison value.
また、上述した課題を解決するために、本発明は、スケジューリング回路の入力ポート毎に設定された重み値に基づいて出力優先順位を決定し、該出力優先順に従って前記入力ポート毎に割り振られた送信パケットを出力する通信品質制御方法において、前記スケジューリング回路の入力ポート毎に複数の参照値に基づいて入力選択用比較値を生成するステップと、前記入力選択用比較値を比較し、最も値が小さい入力ポートを選択するステップと、前記最も値が小さい入力ポートに対する送信パケットのフレーム長を、当該入力ポートに対して設定されている重み値で除算するステップと、前記除算結果である商及び余りを、次回の入力ポート選択時に、前記入力選択用比較値を生成する際の前記複数の参照値として当該入力ポートに対して保持するステップとを含むことを特徴とする通信品質制御方法である。 In order to solve the above-described problem, the present invention determines an output priority based on a weight value set for each input port of the scheduling circuit, and is assigned to each input port according to the output priority order. In the communication quality control method for outputting a transmission packet, a step of generating a comparison value for input selection based on a plurality of reference values for each input port of the scheduling circuit is compared with the comparison value for input selection. A step of selecting a small input port; a step of dividing a frame length of a transmission packet for the input port having the smallest value by a weight value set for the input port; and a quotient and a remainder as a result of the division For the input port as the plurality of reference values when the comparison value for input selection is generated at the next input port selection. A communication quality control method characterized by including the step of holding.
また本発明は、上記の発明において、前記入力選択比較値は、前記入力ポート毎に保持されている、送信パケットの送信要求、優先度、商、及びラウンドロビン値を、前記複数の参照値として用いて生成される、ことを特徴とする。 In the present invention, the input selection comparison value may be a transmission packet transmission request, priority, quotient, and round robin value held for each input port, as the plurality of reference values. It is generated using.
また本発明は、上記の発明において、前記入力選択比較値は、重み付け公平制御、優先制御、重み付け公平制御と優先制御、または優先制御と重み付け公平制御のいずれを実行するかに応じて、前記複数の参照値の組み合わせを変えて生成される、ことを特徴とする。 Further, the present invention is the above invention, wherein the input selection comparison value is determined based on whether the weighted fair control, priority control, weighted fair control and priority control, or priority control and weighted fair control is executed. It is generated by changing the combination of reference values.
この発明によれば、通信品質制御装置は、加減算処理への要求性能を大幅に削減することができ、回路規模の縮小・スケジューリング精度の向上を図ることができるという利点が得られる。 According to the present invention, the communication quality control apparatus can greatly reduce the performance required for the addition / subtraction process, and can obtain the advantages that the circuit scale can be reduced and the scheduling accuracy can be improved.
また、この発明によれば、優先制御のみ/重み付け公平制御のみ/前段優先制御・後段重み付け公平制御/前段重み付け公平制御・後段優先制御を実現することが可能となり、通信品質制御装置は、従来手法で必要であったセレクタを廃することが可能となり、更なる回路規模を削減することができるという利点が得られる。 Further, according to the present invention, it is possible to realize only priority control / only weighted fair control / preceding priority control / backward weighted fair control / preceding weighted fair control / backward priority control. Thus, it is possible to eliminate the selector that was necessary in the above-described method, and the advantage that the circuit scale can be further reduced can be obtained.
以下、本発明の一実施形態を、図面を参照して説明する。 Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
A.第1実施形態
まず、本発明の第1実施形態について説明する。
図1は、本発明の第1実施形態によるQoS回路の構成を示すブロック図である。図において、QoS回路に入力されたパケットは、受信部1において受信処理が行われ、識別部2、FIFO(First-In First-Out)3に供給される。識別部2では、例えば、TOS(Type Of Service)値や、IPアドレス、ポート番号によって品質クラス分けされ、結果を識別結果生成部4に供給する。なお、TOS値は、IPパケットのヘッダに含まれ、QoSを制御する目的で処理の優先度を指定するために用いられる。
A. First Embodiment First, a first embodiment of the present invention will be described.
FIG. 1 is a block diagram showing a configuration of a QoS circuit according to the first embodiment of the present invention. In the figure, a packet input to the QoS circuit is subjected to reception processing in the
識別結果生成部4では、当該QoS回路において使われる制御情報(パケット長、仮想品質クラス、出力ポート等)を生成し、送信パケット生成部5に供給する。送信パケット生成部5では、識別結果生成部4から制御情報を受けることで、FIFO3からデータを読み出し、TTL(Time To Live)減算や、NAT(Network Address Translation)処理に伴うパケットの書き換えを行い、識別結果生成部4から受けたデータと共にパケット書き込み部6に供給する。
The identification result generation unit 4 generates control information (packet length, virtual quality class, output port, etc.) used in the QoS circuit and supplies it to the transmission
なお、上記TTL減算とは、パケット転送処理を行う際にパケットの生存時間(TTL)を減算し、データの行き先が見つからずに無限ループに陥ることを防ぐための処理である。また、NAT処理とは、ネットワークで用いられる、ローカルアドレスとグローバルアドレスとを相互変換する処理である。 Note that the TTL subtraction is a process for subtracting the lifetime of a packet (TTL) when performing packet transfer processing and preventing a data destination from being found and falling into an infinite loop. The NAT process is a process for mutually converting a local address and a global address used in the network.
パケット書き込み部6では、受け取ったパケットや、識別結果をパケットバッファ7に格納する。また、パケット書き込み部6では、書き込んだパケットに関するパケット情報を識別結果等から生成し、キュー部8に渡す。キュー部8は、例えばメモリであって、複数のインタフェース毎にパケット情報を保持するキューを有する。キュー判定部9では、受け取ったパケット情報を、複数のインタフェースのうち、どのインタフェースのどのキューにキューイングするのかを判定するための制御情報である、仮想品質クラスおよび出力ポート等から判定してキューイングする。もし、キューが空であれば、キュー判定部9は、キュー部8のキュー毎に、送信要求、フレーム長、キュー番号をスケジューリング回路10に送出させる。スケジューリング回路10は、受信した情報の送出先の空き状況や、内部状態に応じて、優先制御や、重み付けラウンドロビン、シェーピング(Shaping)などによりスケジューリングし、パケット読み出し部11に送出する。
The
なお、上記重み付けラウンドロビンとは、重み付けに従ってリソースを順番に割り振ることを意味する。また、シェーピングとは、ネットワーク上のトラフィックを制御し、パケットを遅延させることで通信性能を保証する方式である。 The weighted round robin means that resources are allocated in order according to weighting. Shaping is a method for guaranteeing communication performance by controlling traffic on a network and delaying packets.
送出要求を受け取ったパケット読み出し部11は、受け取った要求に対するキュー番号からパケット情報をキュー部8から取得し、送出要求されたパケットがパケットバッファ7のどの位置にあるのかなどの情報を読み出す。また、パケット読み出し部11は、送信部12に対してパケットの送出が可能か調べ、可能であれば、先に取得した位置に従って、パケットバッファ7からパケットを読み出し、送信部12に対してパケットを送出する。さらにパケット読み出し部11は、併せてスケジューリング回路10に対して送信要求受理信号を送出する。
The
送信部12では、出力状態を監視しており、パケットを送出可能状態にあるかどうかをパケット読み出し部11に通知するとともに、パケット読み出し部11から受け取ったパケットを、その出力形式に合わせて送出する。また、受理信号を受けたキュー部8は、当該キューにキューイングされている先頭キューを削除し、結果、次のキューが残っている場合、そのキューに対する送信要求をスケジューリング回路10に対して送出する。
The
次に、スケジューリング回路10について詳しく実施形態を説明するが、その前に、既出の重み付け公平制御回路の基本動作を説明する。上記において、既出の重み付け公平制御回路は重みに比例した値を加算すると説明したが、以下では、これを減算に置き換えて説明する。同様に、パケット送出時、そのパケット長により入力カウンタを減算すると説明したが、加算に置き換えて説明する。
Next, an embodiment of the
(S1)既出の重み付け公平制御回路は、キュー部8から送信要求を受信する。
(S1) The already described weighted fair control circuit receives a transmission request from the
(S2)パケット読み出し部11に出力選択された入力からのパケット情報と送信要求とを出力する。
(S2) The packet information and the transmission request from the input selected for output are output to the
(S3)出力選択された入力ポートのカウンタに、送信要求したパケットのパケット長を加算する。 (S3) The packet length of the packet requested for transmission is added to the counter of the input port selected for output.
(S4)各入力ポートのカウンタから、入力ポート毎に予め設定された重み値を所定の周期(例えば、システムクロック毎)で減算する。この減算は、当該入力に対する送信要求がなくなったとき(WaitCntが0で送信要求が検出されないとき)、停止すると共に、負数分をトータルカウンタへ戻す。 (S4) The weight value preset for each input port is subtracted from the counter of each input port at a predetermined cycle (for example, every system clock). This subtraction stops when there is no transmission request for the input (when WaitCnt is 0 and no transmission request is detected), and a negative number is returned to the total counter.
(S5)パケット読み出し部11から受理信号を受信した場合、キュー部8に受理信号を出力する。
(S5) When an acceptance signal is received from the
(S6)待ち制御を行うカウンタであるWaitCntに、待ちの上限値であるJudgeWaitの値を設定する。 (S6) A value of JudgeWait, which is an upper limit value of waiting, is set in WaitCnt, which is a counter that performs waiting control.
(S7)WaitCntの値が0になるまでWaitCntの値を所定の周期(例えば、システムクロック毎)で1ずつ減算する。 (S7) The value of WaitCnt is subtracted by 1 at a predetermined cycle (for example, every system clock) until the value of WaitCnt becomes 0.
(S8)WaitCntの値が0になったときに、入力カウンタの値が0以下になっている入力ポートを選択する。 (S8) When the value of WaitCnt becomes 0, the input port whose input counter value is 0 or less is selected.
すなわち、既出の重み付け公平制御回路は、上記ステップS4において所定の周期で重み値により減算してゆき、0以下になった入力ポートからの要求を、パケット読み出し部11への送信要求とする。また、既出の重み付け公平制御回路は、複数が0以下になっている場合には、ラウンドロビンで入力を選択する(上記ステップS2へ)。入力カウンタは、パケット読み出し部11に送信要求を出力した時点で、上記ステップS3によりフレーム長が加算される。入力ポートへの送信要求がなくなった場合、ステップS1を行い、次の送信要求が受信されるのを待つ。
That is, the above-described weighted fair control circuit subtracts the weight value at a predetermined period in step S4, and sets a request from the input port that has become 0 or less as a transmission request to the
このように、既出の重み付け公平制御回路は、カウンタを制御することで、パケット読み出し部11への送信要求の送出タイミングを適切に制御することが可能となる。
As described above, the previously described weighted fair control circuit can appropriately control the transmission timing of the transmission request to the
上述したWFQ(Weighted Fair Queuing:重み付け公平制御)回路の動作を数式で表現し、それに基づき、以下では、本実施形態のWFQ制御についての基本原理を説明する。 The operation of the WFQ (Weighted Fair Queuing) circuit described above is expressed by mathematical formulas, and based on this, the basic principle of WFQ control of the present embodiment will be described below.
本実施形態のWFQ制御において、入力カウンタをcnt[i](iは入力ポートの番号)、重み値をweight[i](iは、入力ポートの番号)、フレーム長をflenとすると、各入力カウンタcnt[i]の値は、所定の周期で重み値により減算されることから、次式(1)のようになる。 In the WFQ control according to the present embodiment, when the input counter is cnt [i] (i is the input port number), the weight value is weight [i] (i is the input port number), and the frame length is flen, each input Since the value of the counter cnt [i] is subtracted by the weight value at a predetermined period, the following equation (1) is obtained.
cnt[i]=cnt[i]−weight[i] ……(1)
但し、cnt[i]>0
cnt [i] = cnt [i] -weight [i] (1)
However, cnt [i]> 0
上記数式(1)の両辺をweight[i]で除算すると、
cnt[i]/weight[i]=cnt[i]/weight[i]−1
となる。
When both sides of the above formula (1) are divided by weight [i],
cnt [i] / weight [i] = cnt [i] / weight [i] -1
It becomes.
ここで、CNT[i]=cnt[i]/weight[i]とすると、次式(2)で表される。 Here, when CNT [i] = cnt [i] / weight [i], it is expressed by the following equation (2).
CNT[i]=CNT[i]−1 ……(2) CNT [i] = CNT [i] -1 (2)
この場合、最初にcnt[i]が0以下となるのは、明らかに、|CNT[i]|が最も小さい入力の場合である。このことから、スケジューリング回路10は、数式(1)のように、weight[i]を減算し続け、値が0以下になる入力ポートを選択する。あるいは、スケジューリング回路10は、0以下になるのを待つのではなく、CNT[i]の大きさを比較することにより、送信要求の送出を行う入力ポートの選択が可能となり、演算処理の高速化が図れる。
In this case, cnt [i] first becomes 0 or less obviously when | CNT [i] | is the smallest input. From this, the
各入力ポートのcnt[i]は、ある入力ポートのcnt[i]が0以下となるまで、cnt[i]からweight[i]を減算し続けることで更新される。そこで、すべての入力のCNT[i]の最小値をCNTminとすると、CNTminで各入力ポートに対応するCNT[i]を減ずることで、ある入力ポートのcnt[i]が0以下となるまで、各入力ポートのcnt[i]からweight[i]を減算し続けるのと同じになる。 The cnt [i] of each input port is updated by continuing to subtract weight [i] from cnt [i] until the cnt [i] of a certain input port becomes 0 or less. Therefore, assuming that the minimum value of CNT [i] of all inputs is CNTmin, by subtracting CNT [i] corresponding to each input port by CNTmin, until cnt [i] of a certain input port becomes 0 or less, This is the same as continuing to subtract weight [i] from cnt [i] of each input port.
すなわち、スケジューリング回路10は、CNT[i]=CNT[i]−CNTminの演算を行うことにより、各入力ポートに対応するCNT[i]を更新することができる。このため、スケジューリング回路10は、cnt[i]が0以下となるまで、weight[i]を減算し続ける場合に比べ、処理が簡単化され、演算処理の高速化が図れる。この部分が従来と大きく異なるところである。
That is, the
また、パケット読み出し部11に送信要求送出するとき、cnt[i]にフレーム長flenを加算する必要がある。すなわち、CNT[i]は、次式(3)で表すことができる。
Further, when sending a transmission request to the
CNT[i]=(cnt[i]+flen)/weight[i]=CNT[i]+flen/weight[i] ……(3) CNT [i] = (cnt [i] + flen) / weight [i] = CNT [i] + flen / weight [i] (3)
上記数式(3)において、flen/weight[i]の演算を、浮動小数点で行うことが考えられるが、浮動小数点の除算は一般に計算コスト(回路規模等)が高くなる。従って、浮動小数点で除算する以外に、固定小数点で除算することも考えられる。固定小数点で行ったほうがハードウェア化、処理の高速化の面から好ましい。 In the above formula (3), it is conceivable that the calculation of flen / weight [i] is performed in floating point, but division of floating point generally increases the calculation cost (circuit scale, etc.). Therefore, in addition to dividing by floating point, dividing by fixed point is also conceivable. It is preferable to use a fixed point in terms of hardware and high-speed processing.
しかしながら、固定小数点のため、割り切れない場合が存在し、その余りR[i]が累積的な誤差を生む。そこで、次式(4)のように、余りを次の計算時、フレーム長flenに加算することで、スケジューリング回路10は、累積誤差を0にでき、固定小数点除算を行う場合の課題が解決される。除算を行う前のCNT[i]の値をCNT’[i]とし、除算を行ったことによる商をQ[i]、余りをR[i]とすると、次式(4)で表すことができる。
However, because there is a fixed point, there are cases where it cannot be divided, and the remainder R [i] causes a cumulative error. Therefore, as shown in the following equation (4), by adding the remainder to the frame length flen at the time of the next calculation, the
CNT[i]=CNT’[i]+flen/weight[i]=CNT’[i]+(flen−R[i])/weight[i]+R[i]/weight[i]
=CNT’[i]+Q[i]+R[i]/weight[i] ……(4)
CNT [i] = CNT ′ [i] + flen / weight [i] = CNT ′ [i] + (flen−R [i]) / weight [i] + R [i] / weight [i]
= CNT '[i] + Q [i] + R [i] / weight [i] (4)
となる。そして、その次に除算機会を得たときは、同様に、次式(5)で表される。 It becomes. When the next division opportunity is obtained, it is similarly expressed by the following equation (5).
CNT[i]=CNT’[i]+flen/weight[i]
=CNT’’[i]+Q’[i]+R’[i]/weight[i]+flen/weight[i]
=CNT’’[i]+Q’[i]+(flen+R’[i]−R[i])/weight[i]+R[i]/weight[i]
=CNT’’[i]+Q’[i]+Q[i]+R[i]/weight[i]
……(5)
CNT [i] = CNT ′ [i] + flen / weight [i]
= CNT ″ [i] + Q ′ [i] + R ′ [i] / weight [i] + flen / weight [i]
= CNT ″ [i] + Q ′ [i] + (flen + R ′ [i] −R [i]) / weight [i] + R [i] / weight [i]
= CNT ″ [i] + Q ′ [i] + Q [i] + R [i] / weight [i]
...... (5)
ここで、CNT’’[i]は、除算2回前のCNT[i]の値、Q’、R’は、それぞれ前回除算を行ったときの商と余りである。Rは、0≦R<weight[i]を満たすので、累積誤差は、weight[i]に収まる。 Here, CNT ″ [i] is the value of CNT [i] two times before the division, and Q ′ and R ′ are the quotient and the remainder when the previous division is performed. Since R satisfies 0 ≦ R <weight [i], the accumulated error falls within weight [i].
例えば、図2は、フレーム長に対して浮動小数点演算、余りを計算に入れ込んだ固定小数点演算、あるいは余りを計算に入れない固定小数点演算を行う場合での累積値を示す概念図である。上述した本実施形態による余りを計算に入れ込んだ固定小数点演算を用いると、浮動小数点演算の累積結果との差は、小数点以下のみとなる。しかし、余りの足しこみを行わない固定小数点演算の場合には、誤差は、次々と累積されていくことが示されている。 For example, FIG. 2 is a conceptual diagram showing a cumulative value in the case of performing a floating point operation, a fixed point operation in which a remainder is included in the calculation, or a fixed point operation in which a remainder is not included in the calculation with respect to the frame length. If a fixed-point operation in which the remainder according to the above-described embodiment is included in the calculation is used, the difference from the accumulated result of the floating-point operation is only after the decimal point. However, it is shown that errors are accumulated one after the other in the case of fixed-point arithmetic that does not perform extra addition.
また、除算時除数の最大値m(weight[i]の取り得る最大値)分、CNT[i]、flenをmビット左シフトして除算を行うことで、加算の必要はなくなり、ビット結合だけで処理することが可能となり、演算時間をさらに短縮できる。具体的には、次式(6)で表される。 Further, by dividing the CNT [i] and flen by m bits to the left by the maximum value m (the maximum value that can be taken by weight [i]) for division, division is not necessary, and only bit combination is required. The processing time can be further reduced. Specifically, it is represented by the following formula (6).
CNT[i]<<m−R[i]=CNT[i]<<m−(flen<<m+R’[i])/weight[i] ……(6) CNT [i] << m-R [i] = CNT [i] << m- (flen << m + R '[i]) / weight [i] (6)
ここで、R’[i]は、前回入力iが送信要求として選択されたときに行われた除算の余りである。以上のように、スケジューリング回路10は、入力カウンタcnt[i]の値を用いるのではなく、cnt[i]をweight[i]で除したCNT[i]及びその最小値CNTminを用いることで、送信要求の送出を行う入力の選択や重み値による減算による更新処理を簡単に行うことが可能となり、演算時間の高速化が図れる。
Here, R ′ [i] is the remainder of the division performed when the previous input i was selected as the transmission request. As described above, the
また、パケット読み出し部11にパケットを送出したときのパケット長を加算し、CNT[i]の値を更新する演算においても、上述したように、スケジューリング回路10は、固定小数点を用いた場合の余りによる誤差の累積を適切に処理することで、簡単な処理でCNT[i]の値を更新することができ、演算処理を高速化できる。
In addition, in the calculation for adding the packet length when the packet is sent to the
図3は、入力数3のWFQにおいて、各レジスタ値がどのように変化するかの一例を示す概念図である。初期状態(0)において、入力がない時刻t1で、入力0と入力1に送信要求が受信される。このとき、cnt[i]が最も小さいのは、入力0なので、入力0が選択され、(1000<<5+2)/3=10667…1となる。また、他の入力からは、cnt[0]の値であった1000が引かれる。入力2は、減算後、負になるので、cnt[2]は、0となる。また、ラウンドロビン値は、最近選択されたものが最も大きな値になるので、round[0]が3から3となり、他の各入力のround[i]で3以上の値を持つものをデクリメントする必要があるが、送信したものが最も大きな値である3であったためデクリメントは行わない。
FIG. 3 is a conceptual diagram showing an example of how each register value changes in a WFQ with three inputs. In the initial state (0), a transmission request is received at
状態(1)の時刻t2において、入力2にも送信要求が受信される。cnt[2]が最も小さいので、cnt[2]が選択され、各入力から0が減じられる。cnt[2]は、(100<<5+0)/1から3200となる。ラウンドロビン値round[2]は、2から3に変化し、他の入力のround[i]で2以上のものは、デクリメントされ、入力0のround[0]は、3から2に変化する。これを繰り返すことにより、スケジューリング回路10は、WFQ処理を行う。
A transmission request is also received at
ところで、入力ポートを選択する段階で以下のことを考える。通常のWFQ(重み付け公平制御)は、最小のカウンタ値CNT[i]を持つ入力を選択するが、優先度値をこのCNT[i]のMSB側、LSB側に結合することにより、以下の様な選択規則になる。 By the way, the following is considered at the stage of selecting an input port. In normal WFQ (weighted fair control), an input having the smallest counter value CNT [i] is selected. By combining the priority value with the MSB side and LSB side of this CNT [i], the following is performed. Selection rules.
(優先度値をMSB側に結合した場合)
優先度値が小さいものがその後のCNT[i]に優先する。優先度値が同じ場合、CNT[i]の小さい入力が選択される。
(When the priority value is combined with the MSB side)
The one with the smaller priority value has priority over the subsequent CNT [i]. If the priority values are the same, an input with a small CNT [i] is selected.
(優先度値をLSB側に結合した場合)
CNT[i]が優先し、優先度値は、CNT[i]値が同じでない限り無視される。CNT[i]が同じ場合、優先度値の小さい入力が選択される。
(When the priority value is combined with the LSB side)
CNT [i] takes precedence and the priority value is ignored unless the CNT [i] values are the same. When CNT [i] is the same, an input with a low priority value is selected.
この規則を利用して、スケジューリング回路10は、従来、PQ(優先制御)/WFQ(重み付け公平制御)スケジューラの接続変更を行うのに必要であったセレクタを廃すことが可能となる。
Using this rule, the
図4は、上述した本発明の基本原理に基づく、本第1実施形態によるスケジューリング回路10の構成を示すブロック図である。スケジューリング回路10は、制御回路101、制御テーブル102、演算回路103からなる。制御テーブル102は、各入力ポートに対して、入力ポートに送信要求が受信されているかを示す送信要求(0でなし、1であり)、当該入力ポートに要求された送信要求パケットのフレーム長、当該入力ポートの制御を司るグループ番号、WFQの重み、PQの優先度、ラウンドロビン制御を行うために使用するラウンドロビン値、入力に対する上述したCNT[i]を示す商、CNT[i]の余りを記憶する。制御回路101は、上述したJudgeWait、WaitCntを保持するとともに、設定された動作モードを格納する。制御回路101は、制御テーブル102に格納されている各種値に従って、後述する図5、図6に示す処理を実行する。演算回路103は、制御回路101による処理に伴う加減算、除算などを行う。
FIG. 4 is a block diagram showing a configuration of the
次に、WFQあるいは、前段PQ後段WFQ制御時のスケジューリング回路10の動作について説明する。
図5は、本第1実施形態において、WFQあるいは、前段PQ後段WFQ制御時の動作を説明するためのフローチャートである。制御回路101は、各入力ポートのいずれかに送信要求が受信されているか否かを判定し(ステップSa1)、送信要求が受信されていない場合(ステップSa1のNO)、送信要求が受信されるまで当該判定を行う。
Next, the operation of the
FIG. 5 is a flowchart for explaining the operation during WFQ or front-stage PQ rear-stage WFQ control in the first embodiment. The
一方、各入力ポートのいずれかに送信要求が受信された場合(ステップSa1のYES)、制御回路101は、図7に示すように、比較するための情報として、入力n(0〜N)の送信要求、商、ラウンドロビンカウンタ、優先度の値を連結し、入力選択用比較値を作成する(ステップSa2)。連結は、比較を簡便に行うための1つの方法であり、比較優先順は左から行うため、要素毎に比較を行っても良いが、ハードウェア等を用いて検索ビット長を長くできる場合、一度に比較した方が処理時間は短くなる。
On the other hand, when a transmission request is received at any one of the input ports (YES in step Sa1), the
ここで、図10は、WFQモードでの動作概要を示す概念図であり、図11は、前段PQで後段WFQモードでの動作概要を示す概念図である。WFQモードの場合には、例えば、図10に示すように、スケジューリング回路10において、入力ポート0〜3には、各々、グループ0〜3、優先度7、重み24、89、8、254が設定されている。この場合、帯域分割は、入力ポート0:入力ポート1:入力ポート2:入力ポート3=24:89:8:254の割合で出力される。
Here, FIG. 10 is a conceptual diagram showing an operation outline in the WFQ mode, and FIG. 11 is a conceptual diagram showing an operation outline in the preceding stage PQ and in the subsequent stage WFQ mode. In the case of the WFQ mode, for example, as shown in FIG. 10, in the
また、前段PQで後段WFQモードの場合には、例えば、図11に示すように、スケジューリング回路10において、入力ポート0〜3には、各々、グループ0、0、1、3、優先度0、1、1、0、重み24、24、254、254が設定されている。この場合、出力優先順位は、前段PQ(グループ0)が入力ポート0:高優先、入力ポート1:低優先、前段PQ(グループ1)が入力ポート2:低優先、入力ポート3:高優先となり、帯域分割は、PQ(グループ0)出力:PQ(グループ1)出力=24:254となる。
Further, in the case of the post-stage WFQ mode in the pre-stage PQ, for example, as shown in FIG. 11, in the
次に、制御回路101は、各入力n(0〜N)の入力選択用比較値を比較し、入力選択用比較値が最も小さい入力Nminを求める(ステップSa3)。この比較には、入力要求のビット反転がMSBに設定されており、送信要求が存在する場合には、入力要求のビットは1であり、存在しない場合には、入力要求のビットは0となる。当然、0(送信要求有)が最小値として選択されるので、大小比較により、送信要求があるかどうかの判断が可能となる。また、最小値を検索した結果、MSBが1である場合、送信要求している入力が存在しないことを表しており、容易にいずれかの入力に送信要求があるのかないのか判断することが可能となる。
Next, the
次に、制御回路101は、各入力に対して最小の入力選択用比較値を持つ入力Nminのフレーム長及び送信要求をパケット読み出し部11に送信する(ステップSa4)。ところで、入力選択用比較値には、ラウンドロビンカウンタも連結されている。これは、最小値を求める際に、同じ値が存在したり、同時に0以下になる入力が存在したりする場合には、WFQ処理を行うときに該当する入力をラウンドして選択する必要がある。この処理は、順繰りにtmp=入力0ラウンドロビンカウンタ、入力0ラウンドロビンカウンタ=入力1ラウンドロビンカウンタ、入力1ラウンドロビンカウンタ=入力2ラウンドロビンカウンタ、入力2ラウンドロビンカウンタ=入力3ラウンドロビンカウンタ、入力3ラウンドロビンカウンタ=tmpとすることで実現する。
Next, the
あるいは、このラウンドロビン値を用いず、別の記憶手段を用い、今までの送信履歴から最も送信していない入力を選択するようにすることで、ラウンドロビンを実現する方法も考えられる。これは、例えば、入力ポート数を4とすると、入力2が送信要求ポートとして選択された場合、入力2ラウンドロビンカウンタより大きい値を持つ各入力iラウンドロビン値は、1デクリメントされ、入力2ラウンドロビン値=3とする。このようにすることで、最近送信した順に3、2、1、0という値を持つことになり、最小値比較においてパラメータ値がまったく同じ場合、過去最も送信していない入力が選択されるようになる。
Alternatively, a method of realizing round robin by using another storage means without using this round robin value and selecting the least transmitted input from the past transmission history can be considered. For example, when the number of input ports is 4, when
次に、演算回路103は、送信要求されたパケットのフレーム長に最小値を持つ入力の余りを結合(加算)して作られる被除数を入力Nminの重みで除し、制御テーブル102の商及び余りを更新する(ステップSa5)。この結合(加算)は、数式(6)及び図9で示されるように、連結処理で実現可能であり、演算処理量を削減することができる。上記、商、余りは、制御テーブル102の当該入力ポートに対応する、商、余りに設定される。
Next, the
次に、制御回路101は、入力n(0〜N)のグループ番号が入力Nminのグループ番号と一致しているか判定し(ステップSa6)、一致している場合には、制御テーブル102に対して、最小値を持つ入力Nminと同じグループに属する入力ポートに対する商・余りを、その最小値を持つ入力Nminの商・余りにより上書きする(ステップSa7)。一方、一致しない他の入力の商に対しては、最小値を持つ入力Nminの商を、他の入力nの商から減ずる(ステップSa8)。但し、商を減じて負になる場合、その商を0とする。また、場合により余りも0にする。
Next, the
これにより、動作モードがWFQ(図10)あるいは、前段PQ後段WFQ(図11)モードの場合、同一グループ内では、常に同じ商・余りを持ち、グループ間では、上述したWFQの動作説明に従った商・余りを持つことになる。最小値比較に使う値は、図7に示す形なので、あるグループ内の優先付けは、LSB側に付く優先度により決定するので、WFQあるいは前段PQ後段WFQ動作となる。 As a result, when the operation mode is the WFQ (FIG. 10) or the previous-stage PQ latter-stage WFQ (FIG. 11) mode, the same group always has the same quotient / remainder. You will have a quotient and a remainder. Since the values used for the minimum value comparison are in the form shown in FIG. 7, the prioritization within a certain group is determined by the priority assigned to the LSB side, so that the WFQ or the previous stage PQ latter stage WFQ operation is performed.
最後に、WaitCntが満了するまで待ち(ステップSa9)、次の送信要求受理開始までの時間を調整する。すなわち、図1に示す要求/受理信号の送受で制御されるQoS回路は、送信受理後の要求受付時間の調整を行う必要がある。このWaitCntは、パケット読み出し部11からの受理信号を受けたときに、制御回路101のWaitCntに予め設定されているJudgeWaitの値を書き込む。そして、選択された入力に接続されるキュー部8へ受理信号を送信する。WaitCntは、所定の周期(例えば、システムクロック毎)で減算される。WaitCntの値が0になるまで繰り返し減算し、0になった場合、WaitCntの減算を停止する。そして、WaitCntの値が0になった場合、最小値選択に戻り、最小の入力の選択を行う。
Finally, it waits until WaitCnt expires (step Sa9), and adjusts the time until the start of reception of the next transmission request. That is, the QoS circuit controlled by the transmission / reception of the request / acceptance signal shown in FIG. 1 needs to adjust the request reception time after the transmission is accepted. When this WaitCnt receives an acceptance signal from the
次に、PQあるいは、前段WFQ後段PQ制御時の動作について説明する。
図6は、本第1実施形態において、PQあるいは、前段WFQ後段PQ制御時の動作を説明するためのフローチャートである。なお、図6に示すフローチャートにおいて、図5と異なる点は、ステップSb2と、ステップSb6以降の処理であるので、図5と同じステップSb1、ステップSb3〜Sb5については説明を省略する。
Next, the operation at the time of PQ or front-stage WFQ rear-stage PQ control will be described.
FIG. 6 is a flowchart for explaining the operation at the time of PQ or front-stage WFQ rear-stage PQ control in the first embodiment. In the flowchart shown in FIG. 6, the difference from FIG. 5 is the processing after step Sb2 and step Sb6, and thus the description of steps Sb1 and Sb3 to Sb5 that are the same as those in FIG. 5 is omitted.
また、図12は、PQモードでの動作概要を示す概念図であり、図13は、前段WFQで後段PQモードでの動作概要を示す概念図である。PQモードの場合には、例えば、図12に示すように、スケジューリング回路10において、入力ポート0〜3には、各々、優先度0〜3、重み255が設定されている。出力優先順位は、入力ポート0:高優先であり、順次、優先順位が下がり、入力ポート3:低優先となる。
FIG. 12 is a conceptual diagram showing an outline of the operation in the PQ mode, and FIG. 13 is a conceptual diagram showing an outline of the operation in the rear stage PQ mode in the preceding stage WFQ. In the PQ mode, for example, as shown in FIG. 12, in the
また、前段WFQで後段PQモードの場合には、例えば、図13に示すように、スケジューリング回路10において、入力ポート0〜3には、各々、優先度0、0、1、1、重み24、89、8、254が設定されている。この場合、帯域分割は、前段WFQ(0)で、入力ポート0:入力ポート1=24:89となり、前段WFQ(1)で、入力ポート2:入力ポート3=8:254となる。また、出力優先順位は、WFQ(0):高優先で、WFQ(1):低優先となる。
In the case of the front stage WFQ and the rear stage PQ mode, for example, as shown in FIG. 13, in the
動作モードがPQ、前段WFQで後段PQモードの場合には、図8に示すように、制御回路101は、比較するための情報として、入力n(0〜N)の送信要求、優先度、商、ラウンドロビンカウンタの値を連結し、入力選択用比較値を作成する(ステップSb2)。なお、この場合も、要素毎に比較を行ってもかまわない。
When the operation mode is PQ, front WFQ, and rear PQ mode, as shown in FIG. 8, the
また、動作モードがPQ、あるいは、前段WFQ後段PQモードの場合、制御回路101は、入力n(0〜N)の優先度が入力Nminの優先度と一致しているか判定し(ステップSb6)、一致している場合には、最小値を持つ入力Nminと同じ優先度を持つ入力nに対する商から、最小値を持つ入力Nminの商を減じる。但し、商を減じて負になる場合、その商を0とする。また、場合により余りも0にする。
When the operation mode is PQ or the previous-stage WFQ latter-stage PQ mode, the
この場合、先に示したWFQの動作の影響は、同一優先度(言い換えると、グループ)内にしか波及しない。これにより、同一優先度内は、WFQ動作となるが、最小値比較においては、優先度比較の方がMSB側に存在するので、先に優先度(グループ)により選択されることにより、PQあるいは、前段WFQ後段PQの動作となる。 In this case, the influence of the WFQ operation shown above only affects the same priority (in other words, a group). As a result, the WFQ operation is performed within the same priority. However, in the minimum value comparison, since the priority comparison exists on the MSB side, PQ or PQ or The operation of the front stage WFQ and the rear stage PQ is performed.
B.第2実施形態
本発明の第2実施形態について説明する。
図14は、本発明の第2実施形態による、QoS回路の構成を示すブロック図である。なお、図1に対応する部分には同一の符号を付けて説明を省略する。図1に示す構成との違いは、パケット送出後に、TTL減算や、IPアドレス書き換えなどのパケット書き換えを行う送信パケット生成部5を、パケット読み出し部11と送信部12との間に配置している点にある。
B. Second Embodiment A second embodiment of the present invention will be described.
FIG. 14 is a block diagram showing a configuration of a QoS circuit according to the second embodiment of the present invention. It should be noted that portions corresponding to those in FIG. The difference from the configuration shown in FIG. 1 is that a transmission
図14に示す構成による長所は、受信後、すぐにパケットバッファ7にパケットを書き込むことができるため、パケット書き込みまでのFIFO(図1のFIFO3)をなくすことができる点である。但し、パケット読み出し後にパケット書き換えを行うための情報をキュー部8に蓄積しておく必要がある。そのため、キュー部8のサイズによっては、キュー部8の回路規模が増大する可能性があるが、FIFO3がなくなるため、装置としては、回路規模が削減される可能性もある。図1と図14のどちらの構成を採用するかは、FIFO3のサイズとキュー部8のサイズとによる回路規模比較により選択すればよい。
The advantage of the configuration shown in FIG. 14 is that the packet (
上述した第1、第2実施形態によれば、スケジューリング回路10は、各入力への減算処理がパケット送出要求時のみであり、加減算処理への要求性能を大幅に削減することができ、回路規模の縮小・スケジューリング精度の向上を図ることができる。
According to the first and second embodiments described above, the
また、スケジューリング回路10は、重み付け公平制御における送信パケット選択時に使用される各種カウンタの組み合わせの変更、及び多少の処理手法の変更により、優先制御のみ/重み付け公平制御のみ/前段優先制御・後段重み付け公平制御/前段重み付け公平制御・後段優先制御が実現可能となり、従来手法で必要であったセレクタを廃することが可能となり、更なる回路規模の削減が可能となる。
Further, the
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。 The embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and includes designs and the like that do not depart from the gist of the present invention.
本発明は、パケットの送受信処理を行う通信品質制御装置、及び通信品質制御方法に好適である。 The present invention is suitable for a communication quality control apparatus and a communication quality control method for performing packet transmission / reception processing.
1…受信部、2…識別部、3…FIFO、4…識別結果生成部、5…送信パケット生成部、6…パケット書き込み部、7…パケットバッファ、8…キュー部、9…キー判定部、10…スケジューリング回路、11…パケット読み出し部、12…送信部、101…制御回路、102…制御テーブル、103…演算回路
DESCRIPTION OF
Claims (6)
前記スケジューリング回路は、
前記入力ポート毎に複数の参照値に基づいて入力選択用比較値を生成する入力選択比較値生成手段と、
前記入力選択用比較値を比較し、最も値が小さい入力ポートを選択する選択手段と、
前記最も値が小さい入力ポートに対する送信パケットのフレーム長を、当該入力ポートに対して設定されている重み値で除算する算出手段と、
前記算出手段による除算結果である商及び余りを、次回の入力ポート選択時に、前記入力選択比較値生成手段により前記入力選択用比較値を生成する際の前記複数の参照値の1つとして当該入力ポートに対して保持する保持手段と
を備えることを特徴とする通信品質制御装置。 In the communication quality control apparatus for determining the output priority based on the weight value set for each input port of the scheduling circuit and outputting the transmission packet allocated to each input port according to the output priority order,
The scheduling circuit includes:
Input selection comparison value generating means for generating an input selection comparison value based on a plurality of reference values for each input port;
Selecting means for comparing the input selection comparison values and selecting the input port having the smallest value;
A calculation means for dividing the frame length of the transmission packet for the input port having the smallest value by the weight value set for the input port;
The quotient and the remainder, which are the division results by the calculation means, are input as one of the plurality of reference values when the input selection comparison value generation means generates the input selection comparison value at the next input port selection. A communication quality control apparatus comprising: holding means for holding the port.
前記入力ポート毎に保持されている、送信パケットの送信要求、優先度、商、及びラウンドロビン値を、前記複数の参照値として用いて入力選択用比較値を生成する、
ことを特徴とする請求項1記載の通信品質制御装置。 The input selection comparison value generating means includes
A transmission request of transmission packets, priority, quotient, and round robin value held for each input port are used as the plurality of reference values to generate an input selection comparison value.
The communication quality control apparatus according to claim 1.
重み付け公平制御、優先制御、重み付け公平制御と優先制御、または優先制御と重み付け公平制御のいずれを実行するかに応じて、前記入力選択用比較値を生成するための参照値の組み合わせを変えて、前記入力選択用比較値を生成する、
ことを特徴とする請求項1または2に記載の通信品質制御装置。 The input selection comparison value generating means includes
Depending on whether to perform weighted fair control, priority control, weighted fair control and priority control, or priority control and weighted fair control, the combination of reference values for generating the input selection comparison value is changed, Generating the input selection comparison value;
The communication quality control apparatus according to claim 1 or 2, characterized by the above.
前記スケジューリング回路の入力ポート毎に複数の参照値に基づいて入力選択用比較値を生成するステップと、
前記入力選択用比較値を比較し、最も値が小さい入力ポートを選択するステップと、
前記最も値が小さい入力ポートに対する送信パケットのフレーム長を、当該入力ポートに対して設定されている重み値で除算するステップと、
前記除算結果である商及び余りを、次回の入力ポート選択時に、前記入力選択用比較値を生成する際の前記複数の参照値として当該入力ポートに対して保持するステップと
を含むことを特徴とする通信品質制御方法。 In a communication quality control method for determining an output priority based on a weight value set for each input port of a scheduling circuit and outputting a transmission packet allocated to each input port according to the output priority order,
Generating an input selection comparison value based on a plurality of reference values for each input port of the scheduling circuit;
Comparing the input selection comparison value and selecting the input port with the smallest value;
Dividing the frame length of the transmission packet for the input port with the smallest value by the weight value set for the input port;
Holding the quotient and the remainder resulting from the division for the input port as the plurality of reference values when the input selection comparison value is generated at the next input port selection. Communication quality control method.
前記入力ポート毎に保持されている、送信パケットの送信要求、優先度、商、及びラウンドロビン値を、前記複数の参照値として用いて生成される
ことを特徴とする請求項4記載の通信品質制御方法。 The input selection comparison value is
The communication quality according to claim 4, wherein the transmission quality, the priority, the quotient, and the round robin value held for each input port are generated using the plurality of reference values. Control method.
重み付け公平制御、優先制御、重み付け公平制御と優先制御、または優先制御と重み付け公平制御のいずれを実行するかに応じて、前記複数の参照値の組み合わせを変えて生成される、
ことを特徴とする請求項4または5に記載の通信品質制御方法。 The input selection comparison value is
Depending on whether to perform weighted fair control, priority control, weighted fair control and priority control, or priority control and weighted fair control, the combination of the plurality of reference values is generated,
The communication quality control method according to claim 4 or 5, wherein
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009144589A JP4806716B2 (en) | 2009-06-17 | 2009-06-17 | Communication quality control apparatus and communication quality control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009144589A JP4806716B2 (en) | 2009-06-17 | 2009-06-17 | Communication quality control apparatus and communication quality control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011004083A true JP2011004083A (en) | 2011-01-06 |
JP4806716B2 JP4806716B2 (en) | 2011-11-02 |
Family
ID=43561691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009144589A Active JP4806716B2 (en) | 2009-06-17 | 2009-06-17 | Communication quality control apparatus and communication quality control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4806716B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013255159A (en) * | 2012-06-08 | 2013-12-19 | Hitachi Ltd | Communication device and priority control method |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0346051A (en) * | 1989-07-14 | 1991-02-27 | Oki Electric Ind Co Ltd | Interruption control system for multiprocessor system |
JP2003018196A (en) * | 2001-04-27 | 2003-01-17 | Fujitsu Ltd | Packet transfer device, semiconductor device, and packet transfer system |
JP2003229896A (en) * | 2002-02-01 | 2003-08-15 | Fujitsu Ltd | Device and method for scheduling packet transmission |
JP2006141028A (en) * | 2004-11-10 | 2006-06-01 | Alcatel | Gigabit passive optical network strict priority weighted round robin scheduling mechanism |
JP2009105669A (en) * | 2007-10-23 | 2009-05-14 | Nippon Telegr & Teleph Corp <Ntt> | Method and device for controlling traffic |
-
2009
- 2009-06-17 JP JP2009144589A patent/JP4806716B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0346051A (en) * | 1989-07-14 | 1991-02-27 | Oki Electric Ind Co Ltd | Interruption control system for multiprocessor system |
JP2003018196A (en) * | 2001-04-27 | 2003-01-17 | Fujitsu Ltd | Packet transfer device, semiconductor device, and packet transfer system |
JP2003229896A (en) * | 2002-02-01 | 2003-08-15 | Fujitsu Ltd | Device and method for scheduling packet transmission |
JP2006141028A (en) * | 2004-11-10 | 2006-06-01 | Alcatel | Gigabit passive optical network strict priority weighted round robin scheduling mechanism |
JP2009105669A (en) * | 2007-10-23 | 2009-05-14 | Nippon Telegr & Teleph Corp <Ntt> | Method and device for controlling traffic |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013255159A (en) * | 2012-06-08 | 2013-12-19 | Hitachi Ltd | Communication device and priority control method |
Also Published As
Publication number | Publication date |
---|---|
JP4806716B2 (en) | 2011-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140112147A1 (en) | Refresh mechanism for a token bucket | |
US7778174B2 (en) | Shaper circuit and shaper circuit combination | |
JP3784049B2 (en) | Method and system for a network processor for scheduling output using a disconnect / reconnect flow queue | |
Checconi et al. | QFQ: Efficient packet scheduling with tight guarantees | |
WO2020142867A1 (en) | Traffic shaping method and related device | |
CN110149282B (en) | Traffic scheduling method and device | |
CN110086728B (en) | Method for sending message, first network equipment and computer readable storage medium | |
CN104869079A (en) | Queue scheduling method and device based on dynamic weighted round robin | |
CN100505688C (en) | A difference weight queue scheduling apparatus and scheduling method for network processor | |
JP4806716B2 (en) | Communication quality control apparatus and communication quality control method | |
JPWO2009016692A1 (en) | Packet processing device | |
CN114553792A (en) | Method, device and equipment for adjusting scheduling parameters and computer readable storage medium | |
WO2019167859A1 (en) | Estimating device and estimating method | |
US7801164B2 (en) | Two dimensional timeout table mechanism with optimized delay characteristics | |
JP2008010905A (en) | Priority control method and apparatus at packet transmission | |
JP4601657B2 (en) | Traffic shaping apparatus and method | |
JP4637154B2 (en) | Traffic control method and apparatus | |
JP2002252628A (en) | Packet output adjustment device | |
US11461069B2 (en) | Multi-core audio processor with deadline scheduler | |
JP5935599B2 (en) | Control device, transmission device, and control method | |
US7843913B2 (en) | Method of operating a scheduler of a crossbar switch and scheduler | |
US7193928B2 (en) | Signal output device and method for the same | |
JP2005286383A (en) | Band control method and packet processing device using the same | |
US20020003796A1 (en) | Trafic control apparatus | |
JP2024132486A (en) | COMMUNICATION DEVICE, COMMUNICATION METHOD, AND PROGRAM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110328 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110510 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110628 |
|
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: 20110802 |
|
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: 20110815 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4806716 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: 20140819 Year of fee payment: 3 |
|
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 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |