JP3592586B2 - Contention control device - Google Patents

Contention control device Download PDF

Info

Publication number
JP3592586B2
JP3592586B2 JP21074799A JP21074799A JP3592586B2 JP 3592586 B2 JP3592586 B2 JP 3592586B2 JP 21074799 A JP21074799 A JP 21074799A JP 21074799 A JP21074799 A JP 21074799A JP 3592586 B2 JP3592586 B2 JP 3592586B2
Authority
JP
Japan
Prior art keywords
buffers
packet
buffer
read
packets
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP21074799A
Other languages
Japanese (ja)
Other versions
JP2001045049A (en
Inventor
英司 大木
正義 鍋島
康平 中井
直明 山中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP21074799A priority Critical patent/JP3592586B2/en
Publication of JP2001045049A publication Critical patent/JP2001045049A/en
Application granted granted Critical
Publication of JP3592586B2 publication Critical patent/JP3592586B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はパケットを用いた通信に利用する。本発明は大規模かつ高速なパケット交換機に利用するに適する。
【0002】
【従来の技術】
パケット交換機では、パケットを一時蓄積するために複数のバッファが設けられている。このバッファからパケットを読み出すときには、同一出力回線に向かう複数のパケットが互いに衝突しないように、バッファ間の競合制御が必要になる。
【0003】
従来の競合制御装置の構成を図7に示す。従来の競合制御装置の動作を図8に示す。入力されたパケットは、図7に示すように、それぞれのバッファに入力される。図7では、#1〜#Nまでバッファがあるが、これらは、例えば、各入力回線毎にバッファが備えられている場合もあるし、各クラス毎にバッファが備えられている場合もある。パケットは、一般に可変長パケットである。図7では、説明の簡単化のため、固定長単位でパケットを分割している。読み出し制御部10は、N個のバッファから1個のバッファを選択し、その先頭のパケットを読み出す。
【0004】
図8を用いて従来の競合制御の動作を説明する。競合制御を開始して、時間T後に、競合制御が終了し、次に読み出すバッファが選択される。競合制御の方式として、例えば、リングアービトレーションがある。ここで、どのバッファにもパケットが存在しなければ、次に読み出すバッファは選択されない。競合制御が終了しても、パケットが読み出されている場合は、パケットの読み出しが終了するまで待つ。パケットの読み出しが終了していれば、読み出しパケットがある場合には、前回選択した選択バッファからパケットを読み出すと同時に、再度競合制御を開始する。これらの動作を繰り返す。
【0005】
【発明が解決しようとする課題】
しかしながら、パケット長Lが短く、その読み出し時間L/C(Cは読み出し回線速度)が競合制御所要時間Tより小さいとき、パケットが読み出されても、次に選択するバッファが見つからないため、出力回線はアイドル状態となる。したがって、スループットの低下を招く。
【0006】
もし、従来の方式において、スループットの低下を防ぐには、最小パケット長Lmin の読み出し時間Lmin /Cより、Tを小さくする必要があるが、高速処理のスイッチでは、インプリメントの制約があり、経済的に実現することは困難である。
【0007】
このように、従来の競合制御装置では、L/C<Tとなるパケットが到着すると、スループットが低下するという問題がある。特に、大規模化され、高速化されたパケット交換機では、このようなスループットの低下は大きな問題となる。
【0008】
本発明は、このような背景に行われたものであって、本発明の目的は、L/C<Tとなるパケットが到着しても、スループットの低下を招かない競合制御装置を提供することにある。本発明は、大規模化され、高速化されたパケット交換機に適した競合制御装置を提供することを目的とする。
【0009】
【課題を解決するための手段】
本発明は、実際のバッファからのパケット読み出しとは別に、実際のバッファのパケット蓄積状況に基づくモデルを利用して競合制御をシミュレートすることを最も主要な特徴とする。
【0010】
このモデルでは、実際の複数のバッファに対応する仮想的な複数のキューを想定し、実際の複数のバッファに蓄積されたパケットの識別情報をこの仮想的な複数のキューに蓄積しこの複数のキューに蓄積された当該識別情報に対して競合制御シミュレーションを実行する。
【0011】
したがって、シミュレーションにおける競合制御は一定周期で実行される。これに対し、実際のバッファからのパケット読み出しでは、さまざまなパケット長のパケットが読み出されるので、比較的パケット長の長いパケットを読み出している間は、次の読み出し予定のバッファに送出許可を与えるまでの待ち時間が多く発生する。この待ち時間の間にもシミュレーションにおける競合制御は一定周期で実行されている。
【0012】
このため、シミュレーションにおける競合制御では、実際のバッファに与える送出許可を実際のパケット読み出しに先行して生成することができる。このようにして生成された送出許可は、時系列的に記録して蓄積しておく。これにより、実際のバッファにおけるパケット読み出しに対する送出許可を隙間なく与えることが可能となる。
【0013】
これにより、L/C<Tとなる状況が発生しても、パケットの競合制御は先行して終了しているため、読み出し許可を速やかに与えることができる。したがって、L/C<Tとなるパケットが到着しても、スループットの低下を招かない競合制御装置を実現することができる。
【0014】
すなわち、本発明は、到来するパケットを一時蓄積する複数のバッファと、この複数のバッファからのパケットの読み出しを制御する読み出し制御部とを備え、 この読み出し制御部は、パケットが互いに衝突することなく前記複数のバッファから読み出されるように競合制御する手段を含む競合制御装置である。
【0015】
ここで、本発明の特徴とするところは、前記競合制御する手段は、前記複数のバッファのパケット蓄積状況にしたがって競合制御をシミュレートする手段と、このシミュレートする手段のシミュレーション結果にしたがって前記バッファにパケットの読み出し許可を与える手段とを備えたところにある。
【0016】
このとき、前記シミュレートする手段は、前記複数のバッファに対応する仮想的な複数のキューを備え、前記複数のバッファに蓄積されたパケットの識別情報をこの仮想的な複数のキューにそれぞれ蓄積しこの複数のキューに蓄積された当該識別情報に対して競合制御シミュレーションを実行する手段を含むことが望ましい。
【0017】
前記許可を与える手段によりパケットの読み出し許可が与えられるバッファの順序を時系列的に記録する手段を備えることが望ましい。
【0018】
さらに、この記録する手段の記録数が閾値をこえるときには前記シミュレートする手段によるシミュレーションを一時休止させる手段を備えることが望ましい。
【0019】
例えば、頻繁にパケットが到着するバッファaと、そうでないバッファbがある場合に、頻繁にパケットが到着するバッファaについては、バッファbにパケットが到着しない期間中に、前記シミュレートする手段により送出許可が次々に生成されることになる。
【0020】
このときに、頻繁にパケットが到着しないバッファbにパケットが到着した場合には、バッファaに次々に与えられる送出許可によりバッファaからおおかたのパケットの読み出しが終了した後に、やっとバッファbに送出許可が与えられることになり、バッファbの待ち時間を増大させる結果となる。このようなスループットの不公平性を是正するために、バッファaに対する送出許可がある程度蓄積されたときには、一時的にシミュレーションを休止させる。この休止期間中にバッファbにパケットが到着したならば、シミュレーションが再開されたときには、バッファbに対する送出許可がバッファaと対等に与えられることになり、スループットの不公平性が是正される。
【0021】
前記シミュレートする手段は、例えば、リングアービトレーションにより競合制御をシミュレートする手段を含むことができる。
【0022】
【発明の実施の形態】
参考例
本発明の参考例の競合制御装置の構成を図1を参照して説明する。図1は本発明の参考例の競合制御装置の構成を示す図である。
【0023】
参考例は、図1に示すように、到来するパケットを一時蓄積する複数のバッファ#1〜#Nと、この複数のバッファ#1〜#Nからのパケットの読み出しを制御する読み出し制御部10とを備え、この読み出し制御部10は、パケットが互いに衝突することなく複数のバッファ#1〜#Nから読み出されるように競合制御する競合制御装置である。
【0024】
ここで、本参考例の特徴とするところは、複数のバッファ#1〜#Nのパケット蓄積状況にしたがって競合制御をシミュレートする手段であるバーチャルキュー部20を備え、このバーチャルキュー部20のシミュレーション結果にしたがってバッファ#1〜#Nにパケットの読み出し許可を与えるところにある。
【0025】
バーチャルキュー部20は、複数のバッファ#1〜#Nに対応する仮想的な複数のバーチャルキュー#1〜#Nを備え、複数のバッファ#1〜#Nに蓄積されたパケットの識別情報としてのリクエスト情報をこの仮想的な複数のバーチャルキュー#1〜#Nにそれぞれ蓄積しこの複数のバーチャルキュー#1〜#Nに蓄積された当該リクエスト情報に対して競合制御シミュレーションを実行する。
【0026】
また、読み出し制御部10によりパケットの読み出し許可が与えられるバッファの順序を時系列的に記録する手段である読み出し情報キュー22を備える。
【0027】
バーチャルキュー部20は、リングアービトレーションにより競合制御をシミュレートする。
【0028】
次に、本発明の参考例の動作を図1ないし図3を参照して説明する。図2は本発明の参考例のバーチャルキュー部の動作を示すフローチャートである。図3は本発明の参考例のバッファ部の動作を示すフローチャートである。
【0029】
図1は、複数の入力回線に転送されてくるパケットがそれぞれ回線毎にバッファ#1〜#Nに入力される構成を示している。パケットを固定長単位で分割しているのは説明の簡単化のためである。パケットがあるバッファ#i(iは1〜Nのいずれか)に入力されると、それに相当するバーチャルキュー#iに、リクエスト要求のためのリクエスト情報が入力される。バーチャルキュー#iは、リクエスト個数をカウントするカウンタ(図示せず)を備えている。
【0030】
図2に示すように、バーチャルキュースケジューラ21は、バーチャルキュー#1〜#Nに対して競合制御シミュレーションを行う。競合制御シミュレーションの所要時間Tは、Lmin /Cに近く設定される。競合制御シミュレーションにより読み出しバッファが選択されると、その送出許可は、読み出し情報キュー(FIFO)22に入力される。ここでは、競合制御シミュレーションにはリングアービトレーションを用いる。
【0031】
すなわち、バーチャルキュー#1〜#Nにそれぞれ備えられたカウンタはバッファ#1〜#Nにそれぞれ蓄積されているパケット数を示す。リングアービタがバーチャルキュー#1〜#Nを巡回することにより、カウンタが“0”ではないバーチャルキューに順次送出許可を与える。
【0032】
バーチャルキュー部20の動作は、バッファ部30のバッファ#1〜#Nにおけるパケットの読み出しのタイミングとは独立に行われている。したがって、L/C>Tなるパケットを読み出した場合には、競合制御がパケット読み出しよりも早く終了するので、次の読み出しバッファをサーチする。
【0033】
図3にあるように、バッファ部30の読み出し制御部10は、パケットの読み出しが終了すると、バーチャルキュー部20の読み出し情報キュー22に情報があれば、読み出し情報キューの先頭の情報(選択すべきバッファ)をFIFOで読み出し、当該バッファの先頭パケットをバッファ部30から読み出す。
【0034】
この動作によって、Lmin /C<Tである場合でも、Lmin /C<Tなるパケットの場合に先行して競合制御を行うことができるので、スループットの低下を防ぐことができる。
【0035】
(実施例)
本発明実施例を図4を参照して説明する。図4は本発明実施例の競合制御装置の構成を示す図である。
【0036】
本発明実施例の競合制御装置は、図1に示した本発明の参考例の競合制御装置に加え、図4に示すように、読み出し情報キュー22のキュー長にしたがってバーチャルキュースケジューラ21によるシミュレーションを一時休止させるためのキュー長閾値を設けたところが異なる。
【0037】
次に、本発明実施例の競合制御装置の動作を図4および図5を参照して説明する。図5は本発明実施例のバーチャルキュー部20の動作を示すフローチャートである。バッファ部30の動作は、本発明の参考例と同様である。
【0038】
本発明実施例が本発明の参考例と異なるところは、バーチャルキュー部20の読み出し情報キュー22に閾値Qを設定しておくところにある。図5に示したように、読み出し情報キュー22のキュー長がQ以下であれば、本発明第一実施例と同じであるが、キュー長がQよりも大きくなると、バーチャルキュースケジューラ21にバックプレッシャ信号が転送され、競合制御シミュレーションの開始がストップされる。キュー長がQ以下ならば、競合制御シミュレーションが開始される。
【0039】
この動作によって、Qを小さく設定すれば、各バッファ#1〜#Nのスループットの不公平性を改善することができる。その原理は、既に説明したように、頻繁にパケットが到着するバッファaと、そうでないバッファbがある場合に、頻繁にパケットが到着するバッファaについては、バッファbにパケットが到着しない期間中に、バーチャルキュースケジューラ21により送出許可が次々に生成されることになる。
【0040】
このときに、頻繁にパケットが到着しないバッファbにパケットが到着した場合には、バッファaに次々に与えられる送出許可によりバッファaからおおかたのパケットの読み出しが終了した後に、やっとバッファbに送出許可が与えられることになり、バッファbの待ち時間を増大させる結果となる。このようなスループットの不公平性を是正するために、バッファaに対する送出許可がある程度蓄積されたときには、一時的にシミュレーションを休止させる。この休止期間中にバッファbにパケットが到着したならば、シミュレーションが再開されたときには、バッファbに対する送出許可がバッファaと対等に与えられることになり、スループットの不公平性が是正される。ただし、小さ過ぎると、従来の方式に近づいてしまうので、適当なQを選ぶ必要がある。
【0041】
(実施例まとめ)
図6に、従来の競合制御装置と本発明の競合制御装置のスループットを比較した。図6は横軸に平均パケット長をとり、縦軸にスループットをとる。パケット長は、指数分布にしたがうと仮定し、平均パケット長Lは、競合制御時間に対して規格化した値としている。Qは無限大と仮定した。本発明では、競合制御時間が緩和されても、バーチャルキューを用いてあらかじめパケットを選択しているので、スループットの低下を防ぐことができる。
【0042】
【発明の効果】
以上説明したように、本発明によれば、L/C<Tとなるパケットが到着しても、スループットの低下を招かない競合制御装置を実現することができる。本発明によれば、大規模化され、高速化されたパケット交換機に適する競合制御装置を実現することができる。
【図面の簡単な説明】
【図1】本発明参考例の競合制御装置の構成を示す図。
【図2】本発明参考例のバーチャルキュー部の動作を示すフローチャート。
【図3】本発明参考例のバッファ部の動作を示すフローチャート。
【図4】本発明実施例の競合制御装置の構成を示す図。
【図5】本発明実施例のバーチャルキュー部の動作を示すフローチャート。
【図6】従来の競合制御装置と本発明の競合制御装置のスループットを比較する図。
【図7】従来の競合制御装置を説明するための図。
【図8】従来の競合制御装置の動作を示すフローチャート。
【符号の説明】
10 読み出し制御部
20 バーチャルキュー部
21 バーチャルキュースケジューラ
22 読み出し情報キュー
30 バッファ部
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention is used for communication using packets. The present invention is suitable for use in a large-scale and high-speed packet switch.
[0002]
[Prior art]
In a packet switch, a plurality of buffers are provided for temporarily storing packets. When reading packets from this buffer, contention control between buffers is required so that a plurality of packets destined for the same output line do not collide with each other.
[0003]
FIG. 7 shows the configuration of a conventional contention control device. FIG. 8 shows the operation of the conventional contention control device. The input packet is input to each buffer as shown in FIG. In FIG. 7, there are buffers # 1 to #N. For example, these buffers may be provided for each input line, or may be provided for each class. The packet is generally a variable length packet. In FIG. 7, packets are divided into fixed length units for simplification of the description. The read control unit 10 selects one buffer from the N buffers and reads the first packet.
[0004]
The operation of the conventional conflict control will be described with reference to FIG. After the contention control is started and the time T has elapsed, the contention control ends, and a buffer to be read next is selected. Ring arbitration, for example, is a method of contention control. Here, if there is no packet in any of the buffers, the buffer to be read next is not selected. If the packet has been read even after the conflict control ends, the process waits until the packet reading ends. If the reading of the packet has been completed and there is a read packet, the packet is read from the previously selected selection buffer and the conflict control is started again at the same time. These operations are repeated.
[0005]
[Problems to be solved by the invention]
However, when the packet length L is short and the read time L / C (C is the read line speed) is shorter than the contention control required time T, even if the packet is read, the buffer to be selected next cannot be found. The line becomes idle. Therefore, the throughput is reduced.
[0006]
In the conventional method, in order to prevent a decrease in throughput, it is necessary to make T smaller than the read time L min / C of the minimum packet length L min , but in a high-speed processing switch, there are restrictions on implementation, It is difficult to realize economically.
[0007]
As described above, the conventional contention control device has a problem in that when a packet satisfying L / C <T arrives, the throughput is reduced. In particular, in a large-scale and high-speed packet switch, such a decrease in throughput becomes a serious problem.
[0008]
The present invention has been made in such a background, and an object of the present invention is to provide a contention control device which does not cause a decrease in throughput even when a packet satisfying L / C <T arrives. It is in. An object of the present invention is to provide a contention control device suitable for a large-scale and high-speed packet switch.
[0009]
[Means for Solving the Problems]
The most important feature of the present invention is to simulate contention control using a model based on the packet accumulation status of the actual buffer, separately from the packet reading from the actual buffer.
[0010]
In this model, virtual queues corresponding to the actual buffers are assumed, and the identification information of the packets stored in the actual buffers is stored in the virtual queues and the queues are stored in the virtual queues. A competition control simulation is executed on the identification information stored in the.
[0011]
Therefore, the competition control in the simulation is executed at a constant cycle. On the other hand, when reading packets from an actual buffer, packets of various packet lengths are read out. Therefore, while reading out a packet having a relatively long packet length, the transmission permission is given to the next buffer to be read out. Waiting time occurs a lot. Even during this waiting time, the competition control in the simulation is executed at a constant cycle.
[0012]
Therefore, in the competition control in the simulation, the transmission permission given to the actual buffer can be generated prior to the actual packet reading. The transmission permission generated in this way is recorded and accumulated in chronological order. As a result, it is possible to give transmission permission for packet reading in the actual buffer without any gap.
[0013]
As a result, even if a situation where L / C <T occurs, read permission can be given promptly because packet contention control has been completed in advance. Therefore, it is possible to realize a contention control device that does not cause a decrease in throughput even when a packet satisfying L / C <T arrives.
[0014]
That is, the present invention includes a plurality of buffers for temporarily storing incoming packets, and a read control unit for controlling the reading of packets from the plurality of buffers. The read control unit does not cause packets to collide with each other. A contention control device including means for performing contention control so as to be read from the plurality of buffers.
[0015]
Here, the feature of the present invention is characterized in that the means for controlling contention includes means for simulating contention control in accordance with the packet accumulation status of the plurality of buffers, and means for simulating contention control in accordance with a simulation result of the simulating means. And means for giving packet read permission to the
[0016]
At this time, the simulating means includes a plurality of virtual queues corresponding to the plurality of buffers, and stores identification information of packets stored in the plurality of buffers in the plurality of virtual queues. It is desirable to include means for executing a conflict control simulation on the identification information stored in the plurality of queues.
[0017]
It is preferable that the apparatus further comprises means for recording the order of buffers to which packet read permission is given by the permission means in time series.
[0018]
Further, it is preferable that a means is provided for temporarily stopping the simulation by the simulating means when the number of records of the recording means exceeds a threshold value.
[0019]
For example, if there is a buffer a in which packets frequently arrive and a buffer b in which it does not, the buffer a in which packets frequently arrive will be transmitted by the simulating means during a period in which no packets arrive in buffer b. Permissions will be generated one after another.
[0020]
At this time, if a packet arrives at the buffer b where the packet does not frequently arrive, the transmission permission given to the buffer a one after the other end of the reading of most of the packets from the buffer a and finally the transmission permission to the buffer b Which results in an increase in the waiting time of the buffer b. In order to correct such unfairness of the throughput, the simulation is temporarily stopped when the transmission permission for the buffer a is accumulated to some extent. If a packet arrives at the buffer b during this pause period, when the simulation is restarted, the transmission permission for the buffer b is given on an equal basis to the buffer a, and the unfairness of the throughput is corrected.
[0021]
The means for simulating may include, for example, means for simulating competitive control by ring arbitration.
[0022]
BEST MODE FOR CARRYING OUT THE INVENTION
( Reference example )
A configuration of a conflict control device according to a reference example of the present invention will be described with reference to FIG. FIG. 1 is a diagram showing a configuration of a contention control device according to a reference example of the present invention.
[0023]
In this embodiment , as shown in FIG. 1, a plurality of buffers # 1 to #N for temporarily storing incoming packets, and a read control unit 10 for controlling the reading of packets from the plurality of buffers # 1 to #N. The read control unit 10 is a contention control device that performs contention control so that packets are read from a plurality of buffers # 1 to #N without colliding with each other.
[0024]
Here, the feature of the present reference example is that the virtual queue unit 20 is provided as means for simulating contention control according to the packet accumulation status of the plurality of buffers # 1 to #N. According to the result, a packet read permission is given to the buffers # 1 to #N.
[0025]
The virtual queue unit 20 includes a plurality of virtual queues # 1 to #N corresponding to the plurality of buffers # 1 to #N, and serves as identification information of packets stored in the plurality of buffers # 1 to #N. The request information is stored in the plurality of virtual queues # 1 to #N, respectively, and a contention control simulation is performed on the request information stored in the plurality of virtual queues # 1 to #N.
[0026]
Further, the read control unit 10 includes a read information queue 22 which is a means for recording in chronological order the order of buffers to which packet read permission is given by the read control unit 10.
[0027]
The virtual queue unit 20 simulates contention control by ring arbitration.
[0028]
Next, the operation of the reference example of the present invention will be described with reference to FIGS. FIG. 2 is a flowchart showing the operation of the virtual queue unit according to the reference example of the present invention. FIG. 3 is a flowchart showing the operation of the buffer unit according to the reference example of the present invention.
[0029]
FIG. 1 shows a configuration in which packets transferred to a plurality of input lines are input to buffers # 1 to #N for each line. The reason why the packet is divided into fixed length units is to simplify the description. When a packet is input to a certain buffer #i (i is any one of 1 to N), request information for a request request is input to a corresponding virtual queue #i. The virtual queue #i has a counter (not shown) for counting the number of requests.
[0030]
As shown in FIG. 2, the virtual queue scheduler 21 performs a contention control simulation on the virtual queues # 1 to #N. The required time T of the competitive control simulation is set close to L min / C. When a read buffer is selected by the contention control simulation, the transmission permission is input to a read information queue (FIFO) 22. Here, ring arbitration is used for the competition control simulation.
[0031]
That is, the counters provided in the virtual queues # 1 to #N indicate the number of packets stored in the buffers # 1 to #N, respectively. As the ring arbiter circulates through the virtual queues # 1 to #N, transmission permission is sequentially given to the virtual queues whose counters are not "0".
[0032]
The operation of the virtual queue unit 20 is performed independently of the packet reading timing in the buffers # 1 to #N of the buffer unit 30. Therefore, when a packet that satisfies L / C> T is read, the contention control ends earlier than the packet read, and the next read buffer is searched.
[0033]
As shown in FIG. 3, when the reading of the packet is completed, the read control unit 10 of the buffer unit 30 determines, if there is information in the read information queue 22 of the virtual queue unit 20, the head information of the read information queue (to be selected). Buffer), and reads the first packet of the buffer from the buffer unit 30.
[0034]
This operation, even if it is L min / C <T, can be performed prior to contention control in the case of L min / C <T becomes packets, it is possible to prevent a decrease in throughput.
[0035]
(Real施例)
This onset AkiraMinoru施例be described with reference to FIG. Figure 4 is a diagram showing a configuration of a contention control apparatus of the present onset AkiraMinoru施例.
[0036]
Contention control apparatus of the present onset AkiraMinoru施例, in addition to the contention control device of the reference example of the present invention shown in FIG. 1, as shown in FIG. 4, a simulation by the virtual queue scheduler 21 according to the queue length of the read information queue 22 Is different in that a queue length threshold value for temporarily suspending is provided.
[0037]
Next, the operation of the contention control apparatus of the present onset AkiraMinoru施例with reference to FIGS. Figure 5 is a flowchart showing the operation of the virtual queuing unit 20 of the present onset AkiraMinoru施例. The operation of the buffer unit 30 is the same as that of the reference example of the present invention.
[0038]
When the onset AkiraMinoru施例is different from the reference example of the present invention is to setting the threshold value Q to the read information queue 22 of the virtual queue section 20. As shown in FIG. 5, if the queue length of the read information queue 22 is equal to or less than Q, the operation is the same as that of the first embodiment of the present invention. The signal is transferred, and the start of the conflict control simulation is stopped. If the queue length is equal to or less than Q, the contention control simulation is started.
[0039]
If Q is set small by this operation, the unfairness of the throughput of each of the buffers # 1 to #N can be improved. The principle is that, as described above, if there is a buffer a where packets frequently arrive and a buffer b where it does not, for the buffer a where packets frequently arrive, the buffer a during which packets do not arrive at the buffer b The transmission permission is generated one after another by the virtual queue scheduler 21.
[0040]
At this time, if a packet arrives at the buffer b where the packet does not frequently arrive, the transmission permission given to the buffer a one after the other end of the reading of most of the packets from the buffer a and finally the transmission permission to the buffer b Which results in an increase in the waiting time of the buffer b. In order to correct such unfairness of the throughput, the simulation is temporarily stopped when the transmission permission for the buffer a is accumulated to some extent. If a packet arrives at the buffer b during this pause period, when the simulation is restarted, the transmission permission for the buffer b is given equally to the buffer a, and the unfairness of the throughput is corrected. However, if it is too small, it approaches the conventional method, so it is necessary to select an appropriate Q.
[0041]
(Example summary)
FIG. 6 compares the throughputs of the conventional contention control device and the contention control device of the present invention. FIG. 6 shows the average packet length on the horizontal axis and the throughput on the vertical axis. The packet length is assumed to follow an exponential distribution, and the average packet length L is a value standardized for the contention control time. Q was assumed to be infinity. According to the present invention, even if the contention control time is relaxed, since the packets are selected in advance using the virtual queue, a decrease in throughput can be prevented.
[0042]
【The invention's effect】
As described above, according to the present invention, it is possible to realize a contention control device that does not cause a decrease in throughput even when a packet satisfying L / C <T arrives. According to the present invention, it is possible to realize a contention control device suitable for a large-scale and high-speed packet switch.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a contention control device according to a reference example of the present invention.
FIG. 2 is a flowchart illustrating an operation of a virtual queue unit according to the reference example of the present invention.
FIG. 3 is a flowchart illustrating an operation of a buffer unit according to the reference example of the present invention.
4 is a diagram showing a configuration of a contention control apparatus of the present onset AkiraMinoru施例.
5 is a flowchart showing the operation of the virtual queue portion of the onset AkiraMinoru施例.
FIG. 6 is a diagram comparing throughputs of a conventional contention control device and the contention control device of the present invention.
FIG. 7 is a diagram for explaining a conventional conflict control device.
FIG. 8 is a flowchart showing the operation of a conventional conflict control device.
[Explanation of symbols]
10 read control unit 20 virtual queue unit 21 virtual queue scheduler 22 read information queue 30 buffer unit

Claims (1)

到来するパケットを一時蓄積する複数のバッファと、この複数のバッファからのパケットの読み出しを制御する読み出し制御部とを備え、
この読み出し制御部は、パケットが互いに衝突することなく前記複数のバッファから読み出されるように競合制御する手段を含む競合制御装置において、
前記競合制御する手段は、前記複数のバッファのパケット蓄積状況にしたがって競合制御をシミュレートする手段と、このシミュレートする手段のシミュレーション結果にしたがって前記バッファにパケットの読み出し許可を与える手段とを備え、
前記シミュレートする手段は、前記複数のバッファに対応する仮想的な複数のキューと、このキューそれぞれに備えられた複数のカウンタとを備え、
この複数のカウンタは対応する前記バッファに蓄積されているパケット数を保持し、
前記複数のカウンタの保持するパケット数にしたがって競合制御をシミュレートする手段を含み、
前記許可を与える手段によりパケットの読み出し許可が与えられるバッファの順序を時系列的に記録する手段を備え、
前記記録する手段の記録数が閾値をこえるときには前記シミュレートする手段によるシミュレーションを一時休止させる手段を備え、
前記閾値はスループットと公平性に応じて設定された
ことを特徴とする競合制御装置。
A plurality of buffers for temporarily storing incoming packets, and a read control unit for controlling reading of packets from the plurality of buffers,
The read control unit is a contention control device including means for performing contention control such that packets are read from the plurality of buffers without colliding with each other,
The contention control means includes means for simulating contention control according to the packet accumulation status of the plurality of buffers, and means for giving packet read permission to the buffer according to a simulation result of the simulation means.
The means for simulating comprises a plurality of virtual queues corresponding to the plurality of buffers, and a plurality of counters provided for each of the queues,
The plurality of counters hold the number of packets stored in the corresponding buffer,
Look including means for simulating the competition control according to the number of packets held by the plurality of counters,
A means for recording the order of buffers to which packet read permission is given by the means for giving permission in chronological order,
Means for temporarily stopping simulation by the simulating means when the number of records of the recording means exceeds a threshold,
The contention control device, wherein the threshold is set according to throughput and fairness .
JP21074799A 1999-07-26 1999-07-26 Contention control device Expired - Fee Related JP3592586B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21074799A JP3592586B2 (en) 1999-07-26 1999-07-26 Contention control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21074799A JP3592586B2 (en) 1999-07-26 1999-07-26 Contention control device

Publications (2)

Publication Number Publication Date
JP2001045049A JP2001045049A (en) 2001-02-16
JP3592586B2 true JP3592586B2 (en) 2004-11-24

Family

ID=16594465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21074799A Expired - Fee Related JP3592586B2 (en) 1999-07-26 1999-07-26 Contention control device

Country Status (1)

Country Link
JP (1) JP3592586B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5953998B2 (en) * 2012-07-10 2016-07-20 富士通株式会社 Packet processing apparatus and packet processing method
JP6036310B2 (en) * 2013-01-09 2016-11-30 富士通株式会社 Packet switching apparatus, transmission apparatus, and packet scheduling method
JP6160449B2 (en) * 2013-11-05 2017-07-12 富士通株式会社 Communication apparatus and communication method
JP6273780B2 (en) * 2013-11-06 2018-02-07 富士通株式会社 Transmission apparatus, transmission method, and transmission program

Also Published As

Publication number Publication date
JP2001045049A (en) 2001-02-16

Similar Documents

Publication Publication Date Title
CN109787919B (en) Information transmission method and device, computer storage medium and terminal
US7295553B2 (en) Packet buffer
US6201807B1 (en) Real-time hardware method and apparatus for reducing queue processing
US5535214A (en) Timely processing of transmission and reception requests in a multi-node communication network
CN106878132B (en) Bus scheduling method based on period and priority
CN111786900A (en) Time queue-based temporal sensing flow shaper
JP5953998B2 (en) Packet processing apparatus and packet processing method
KR100826911B1 (en) Method and apparatus of processing downstream packets for cable modem in hybrid fiber coaxial networks
US20030225739A1 (en) Flexible scheduling architecture
JP3592586B2 (en) Contention control device
JP2008527853A (en) Method and apparatus for scheduling packets and / or cells
CN101394334A (en) Data packet scheduling transmitting device used for WLAN
EP1934733B1 (en) Rate pacing
CA2399186C (en) Data transfer apparatus and data transfer method
JPS6091743A (en) Multimaster communication bus
CN117097679A (en) Aggregation method and device for network interruption and network communication equipment
CN108347389A (en) A kind of method and device for realizing flow equalization in data forwarding network
CN115955441A (en) Management scheduling method and device based on TSN queue
Sventek et al. Token ring local area networks: a comparison of experimental and theoretical performance
CN105988725A (en) Disk I/O (Input/Output) scheduling method and device
JPH09223102A (en) Direct memory access controller
Spaniol Analysis and performance evaluation of HYPERchannel access protocols
JPH04233353A (en) Network controller for fiber scattering type data interface network
EP2854042A1 (en) Information processing apparatus, data transfer apparatus, and data transfer method
JP3601592B2 (en) Packet scheduling method

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040511

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040628

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040701

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: 20040824

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040825

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

Free format text: PAYMENT UNTIL: 20080903

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080903

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090903

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090903

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100903

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100903

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110903

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120903

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees