JP4716194B2 - Shaping device and shaping method - Google Patents
Shaping device and shaping method Download PDFInfo
- Publication number
- JP4716194B2 JP4716194B2 JP2007216403A JP2007216403A JP4716194B2 JP 4716194 B2 JP4716194 B2 JP 4716194B2 JP 2007216403 A JP2007216403 A JP 2007216403A JP 2007216403 A JP2007216403 A JP 2007216403A JP 4716194 B2 JP4716194 B2 JP 4716194B2
- Authority
- JP
- Japan
- Prior art keywords
- transmission
- communication data
- cell
- control information
- counter
- 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
Links
- 238000007493 shaping process Methods 0.000 title claims description 26
- 238000000034 method Methods 0.000 title claims description 20
- 230000005540 biological transmission Effects 0.000 claims description 259
- 238000004891 communication Methods 0.000 claims description 125
- 238000012545 processing Methods 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000012546 transfer Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- CIWBSHSKHKDKBQ-JLAZNSOCSA-N Ascorbic acid Chemical compound OC[C@H](O)[C@H]1OC(=O)C(O)=C1O CIWBSHSKHKDKBQ-JLAZNSOCSA-N 0.000 description 2
- 101100480512 Caenorhabditis elegans tag-51 gene Proteins 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 101100480513 Caenorhabditis elegans tag-52 gene Proteins 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- BLFWHYXWBKKRHI-JYBILGDPSA-N plap Chemical compound N([C@@H](CC(C)C)C(=O)N[C@@H]([C@@H](C)CC)C(=O)N[C@@H](C)C(=O)N[C@@H](CCCCN)C(=O)N[C@@H](C(C)C)C(=O)N[C@@H](CC(C)C)C(=O)N[C@@H]([C@@H](C)O)C(=O)N[C@@H]([C@@H](C)O)C(=O)N[C@@H](CCC(O)=O)C(=O)N1[C@@H](CCC1)C(=O)N1[C@@H](CCC1)C(=O)N[C@@H]([C@@H](C)CC)C(=O)N[C@@H]([C@@H](C)CC)C(=O)N[C@@H]([C@@H](C)O)C(=O)N1[C@@H](CCC1)C(=O)N[C@@H](C(C)C)C(=O)N[C@@H](CCCNC(N)=N)C(=O)N[C@@H](CCCNC(N)=N)C(O)=O)C(=O)[C@@H]1CCCN1C(=O)[C@H](CO)NC(=O)[C@@H](N)CCC(O)=O BLFWHYXWBKKRHI-JYBILGDPSA-N 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
本発明は、通信データを複数のセルに分割し、そのセルを決まった時間間隔で回線に送信する、シェーピング装置およびシェーピング方法に関する。 The present invention relates to a shaping device and a shaping method for dividing communication data into a plurality of cells and transmitting the cells to a line at a predetermined time interval.
ATM(Asynchronous Transfer Mode)通信方式は、複数のチャンネルの通信データを、それぞれセル(ATMセル)と呼ぶ一定長の長さのデータに区切り、それぞれの通信データの特性に合わせた統計的なレートで、一つの伝送路に多重化して伝送する通信方式である。ATM通信方式によって、多種多様な特性を持つメディアの通信データをそれぞれの特性に応じて通信しながら、伝送路の帯域を有効に利用できる。 The ATM (Asynchronous Transfer Mode) communication method divides communication data of a plurality of channels into data of a fixed length called a cell (ATM cell), and at a statistical rate according to the characteristics of each communication data. This is a communication system for multiplexing and transmitting on one transmission path. By using the ATM communication method, it is possible to effectively use the bandwidth of the transmission path while communicating the communication data of media having various characteristics according to the respective characteristics.
ATM通信方式では、通信データごとに割り当てられたレートで、それぞれ等間隔にセル化してATMスイッチに入力する必要がある。これをシェーピングという。ATM通信方式は、特に高速の伝送路に効果がある。伝送路が高速になるほど、それぞれの通信データのシェーピングを的確に、かつ高速に行う必要がある。 In the ATM communication system, it is necessary to form cells at equal intervals and input to the ATM switch at a rate assigned for each communication data. This is called shaping. The ATM communication system is particularly effective for high-speed transmission paths. As the transmission path becomes faster, it is necessary to shape each communication data accurately and at high speed.
例えば特許文献1には、品質クラスの異なるATM方式のセルを、各品質クラスの要求を満足させながら多重化する方法において、セルバッファの使用効率を高める技術が記載されている。特許文献1の技術は、セルバッファを1つとして、このセルバッファの記憶領域をポインタ値で管理する。セルバッファには品質クラスの異なるATMセルを混在して蓄積し、セルバッファからの品質クラス別の読み出しはポインタバッファに品質クラス別に設けるクラスバッファ(FIFO(First In First Out:先入れ先出し記憶))に記憶されたセルバッファのポインタ値を基に行う。
For example,
特許文献3は、データ端末の情報転送速度に応じた間隔でATMセルをATMスイッチに送出することが記載されている。特許文献3の技術は、情報転送速度に対応させて該速度で転送する端末の番号を登録すると共に、情報転送速度と登録端末数とを乗じて得られる乗算値に応じた読み出し間隔を指示するマークを記憶する。シェーピング制御部は回線速度での1セル送信時間内に、マークがあるか調べ、マークがある場合には対応する登録された端末番号を1つ出力してセル送信FIFOに入力する。ATMセル組み立て部は、セル送信FIFOに記憶されている端末番号を回線速度での1セル送信時間間隔で読み出し、端末番号が指示するデータ端末からのデータをATMセルに組み立ててATMスイッチに送信する。
特許文献4は、セル転送タイミング情報の訂正不能な誤りを生じたとき短時間で正常に復帰させる方法が記載されている。送信局はユーザ情報セル数の累積値を制御フレーム毎に得て、その累積値をセル間隔情報として受信局に転送する。受信局は受信セル間隔情報を基にユーザ情報セル数の累積値の制御フレーム毎の差分から個々の制御フレーム単位でのユーザ情報セル数を求める。送信局で、セル間隔情報に訂正不可能な符号誤りを検出した時、符号誤りを含む制御フレームとその直後の符号誤りを含まない制御フレームをまとめた複数制御フレーム単位でセルの送出タイミング制御を行う。セル出力タイミング制御回路ではセル間隔情報を基にセルの出力タイミングを作成し、このタイミングに従ってメモリからセルを読み出して出力する。
特許文献5は、ABR(Available Bit Rate)サービスを実行するATM網に於ける仮想端末装置の技術が記載されている。データセルを送出するセル間隔情報を格納するセル間隔テーブルを備える。逆方向の制御用セルの制御情報によりデータセルを送出するセル間隔情報の書換えを行い、データセルの所定数毎に順方向の制御用セルを挿入する。セル間隔情報に従ってデータセルを読出して送出する毎に、セル間隔情報をカウンタに設定し、カウント動作によるセル間隔の計数を行わせる。
その他、ホストコンピュータ等からのイメージデータをコマンド解析せずにイメージバッファに描画して、印字処理速度の向上を図る技術が、特許文献2に記載されている。印字制御データ及びイメージデータをそれぞれ別々に受信する制御データ用FIFO及びイメージデータ用FIFOを備える。制御データ用FIFOで受信された印字制御データのみをコマンド解析し、イメージデータ転送コマンドの解析時にはDMA転送許可の信号を出力する。このコマンド解析部からのDMA転送許可の信号を入力するとイメージデータ用FIFOで受信されたイメージデータをイメージバッファへDMA転送する。
上述の関連する技術のシェーピング方式では、想定されたフレーム数分の送信制御情報を記憶するメモリをもち、送信の有無に関わらず想定されたフレーム数分の送信制御情報を検査する必要がある。また、メモリのどこに送信制御情報が記憶されているかアドレス管理をする必要があった。そのため、エントリ数の増加によってアドレス管理の処理が増大し、シェーピング処理の制約になる不都合があった。 The shaping method of the related technique described above has a memory for storing the transmission control information for the assumed number of frames, and it is necessary to check the transmission control information for the assumed number of frames regardless of the presence or absence of transmission. Further, it is necessary to manage the address where the transmission control information is stored in the memory. For this reason, the address management process increases due to the increase in the number of entries, which has the disadvantage of limiting the shaping process.
本発明は上述の状況に鑑みてなされたもので、送信制御情報を記憶するメモリのアドレス管理を不要として、エントリ数の増大に容易に対応可能なシェーピング装置を提供することを目的とする。 The present invention has been made in view of the above situation, and an object of the present invention is to provide a shaping apparatus that can easily cope with an increase in the number of entries without requiring address management of a memory that stores transmission control information.
上記の目的を達成するために、本発明の第1の観点に係るシェーピング装置は、
通信データを連続してバッファに蓄積した後に、その通信データを複数のセルに分割し、そのセルを所定の時間間隔で回線に送信するシェーピング装置であって、
前記連続してバッファに蓄積された通信データを特定する識別符号と、該通信データに割り当てられたセルの送信間隔時間を基準時間で除算した送信間隔値と、前記送信間隔時間の残り時間を表す送信カウンタと、前記通信データの送信すべき残りのセルの数を表す残セル数と、を有する送信制御情報を前記通信データごとに生成して記憶する記憶手段と、
通信データを蓄積したときに、その送信間隔値を演算し、前記送信カウンタに該送信間隔値を設定して、前記送信制御情報を前記記憶手段に記憶する登録手段と、
前記基準時間を経過するごとに報知するタイマ手段と、
前記タイマ手段が報知するごとに、前記記憶手段に記憶されている送信制御情報を順にすべて読み出し、それぞれの送信制御情報について、
前記送信カウンタを減算する送信カウンタ減算手段と、
前記送信カウンタの値が所定の値以下の場合に、前記識別符号で特定される通信データのセルを送信すると判断する送信判断手段と、
前記送信判断手段でセルを送信すると判断した場合に、前記残セル数を減算し、前記送信カウンタに前記送信間隔値を設定する送信セル数減算手段と、
前記残セル数が0以下でないならば、再度前記記憶手段にその送信制御情報を記憶する再登録手段と、
を含む送信処理手段と、
を備えることを特徴とする。
In order to achieve the above object, a shaping device according to the first aspect of the present invention provides:
A communication device that continuously accumulates communication data in a buffer, divides the communication data into a plurality of cells, and transmits the cells to a line at predetermined time intervals.
An identification code for identifying the communication data continuously stored in the buffer, a transmission interval value obtained by dividing a transmission interval time of a cell assigned to the communication data by a reference time, and a remaining time of the transmission interval time Storage means for generating and storing transmission control information for each piece of communication data, including a transmission counter and a number of remaining cells representing the number of remaining cells to be transmitted of the communication data ;
A registration unit that calculates a transmission interval value when communication data is accumulated, sets the transmission interval value in the transmission counter, and stores the transmission control information in the storage unit;
Timer means for informing each time the reference time elapses;
Every time the timer means notifies, all the transmission control information stored in the storage means is read in order, and for each transmission control information,
Transmission counter subtraction means for subtracting the transmission counter;
Transmission determination means for determining that a cell of communication data specified by the identification code is to be transmitted when the value of the transmission counter is a predetermined value or less;
When it is determined that the cell is transmitted by the transmission determination means, the number of remaining cells is subtracted, and the transmission cell number subtraction means for setting the transmission interval value in the transmission counter;
If the number of remaining cells is not less than 0, re-registration means for storing the transmission control information in the storage means again;
Transmission processing means including:
It is characterized by providing.
好ましくは、前記タイマ手段が報知する間隔の基準時間は、前記送信間隔時間に比較して十分小さく、前記送信処理手段が、前記記憶手段に記憶された送信制御情報すべてを読み出して、該すべての送信制御情報について処理ができる時間である。 Preferably, the reference time of the interval notified by the timer means is sufficiently smaller than the transmission interval time, and the transmission processing means reads all the transmission control information stored in the storage means, This is the time during which transmission control information can be processed.
好ましくは、前記記憶手段は、先入れ先出し記憶装置であることを特徴とする。 Preferably, the storage means is a first-in first-out storage device.
さらに好ましくは、前記記憶手段は、記憶されているデータ数を表示するカウンタを備える先入れ先出し記憶装置である。 More preferably, the storage means is a first-in first-out storage device including a counter that displays the number of stored data.
本発明の第2の観点に係るシェーピング方法は、
通信データを連続してバッファに蓄積した後に、その通信データを複数のセルに分割し、そのセルを決まった時間間隔で回線に送信するシェーピング方法であって、
通信データを連続して蓄積したときに、該通信データに割り当てられたセルの送信間隔時間を基準時間で除算した送信間隔値を演算する送信間隔演算ステップと、
前記バッファに蓄積された通信データを特定する識別符号と、前記送信間隔値と、該送信間隔値が設定され前記基準時間間隔ごとに減算される送信カウンタと、前記通信データの送信すべき残りのセルの数を表す残セル数と、を有する送信制御情報を、前記通信データごとに生成して記憶部に記憶する登録ステップと、
前記基準時間を経過するごとに、前記記憶部に記憶されている前記送信制御情報を順にすべて読み出し、それぞれの送信制御情報について、
前記送信カウンタを減算する送信カウンタ減算ステップと、
前記送信カウンタが所定の値以下の場合に前記識別符号で特定される通信データのセルを送信すると判断する送信判断ステップと、
前記送信判断ステップでセルを送信すると判断した場合に、前記残セル数を減算し、前記送信カウンタに送信間隔値を設定する送信セル数減算ステップと、
前記残セル数が0以下でないならば、再度前記記憶部にその送信制御情報を記憶する再登録ステップと、
を含む送信処理ステップと、
を備えることを特徴とする。
The shaping method according to the second aspect of the present invention is:
After the communication data is continuously stored in the buffer, the communication data is divided into a plurality of cells, and the cell is transmitted to the line at a predetermined time interval.
A transmission interval calculation step for calculating a transmission interval value obtained by dividing a transmission interval time of a cell assigned to the communication data by a reference time when the communication data is continuously accumulated;
An identification code for identifying the communication data stored in the buffer; the transmission interval value; a transmission counter in which the transmission interval value is set and subtracted for each reference time interval; and the remaining communication data to be transmitted A registration step of generating transmission control information for each communication data and storing it in a storage unit, and a remaining cell number representing the number of cells;
Every time the reference time elapses, all the transmission control information stored in the storage unit is read in order, and for each transmission control information,
A transmission counter subtraction step for subtracting the transmission counter;
A transmission determination step of determining to transmit a cell of communication data specified by the identification code when the transmission counter is a predetermined value or less;
When it is determined to transmit cells in the transmission determination step, the number of remaining cells is subtracted, and a transmission cell number subtraction step for setting a transmission interval value in the transmission counter;
If the remaining cell number is not less than or equal to 0, a re-registration step of storing the transmission control information in the storage unit again;
A transmission processing step including:
It is characterized by providing.
本発明のシェーピング装置によれば、送信すべきデータが存在する場合のみ送信制御情報を記憶することにより、送信制御情報を記憶するメモリのアドレス管理が不要となり、エントリ数の増大にたいして容易に対応可能となる。 According to the shaping apparatus of the present invention, by storing the transmission control information only when there is data to be transmitted, it is not necessary to manage the address of the memory storing the transmission control information, and can easily cope with the increase in the number of entries. It becomes.
以下、この発明の実施の形態について図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付し、その説明は繰り返さない。本実施の形態では、通信データを複数のセルに分割し、そのセルを決まった時間間隔で回線に送信するシェーピング装置について説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals, and description thereof will not be repeated. In the present embodiment, a description will be given of a shaping device that divides communication data into a plurality of cells and transmits the cells to a line at a fixed time interval.
図1は、本発明の実施の形態に係るシェーピング装置100の構成の一例を示すブロック図である。
FIG. 1 is a block diagram showing an example of the configuration of a
シェーピング装置100は、バッファ1と、送信制御部2と、送信バッファ(送信FIFO)4から構成される。送信制御部2はスケジュール部3を含む。送信制御部2には、入力線Lが接続されている。送信FIFO4には回線Nが接続されている。送信制御部2は入力線Lから通信データ6を受信する。シェーピング装置100は、受信した通信データ6をバッファ1に蓄積し、セルに分割して、通信データ6に応じた所定の時間間隔で送信FIFO4に出力する。送信FIFO4は、入力したセルを所定の伝送レートで回線Nに送信する。
The
通信データ6は、タグ61とデータ62から構成される。タグ61は、その通信を識別する情報と、例えば、保証伝送レート、最大伝送レート、誤り制御のレベルなどのサービス情報を指定する情報を含む。データ62は、1つのセルで伝送されるデータ(ペイロード)ごとに区切られる。セルは1つのペイロードにセルヘッダを付加したデータである。図1では、セルとペイロードを同一視して、セル1等と記載しているが、通信データ6にはセルヘッダは含まれない。
図2は、シェーピング装置100のスケジュール部3の一例を示すブロック図である。スケジュール部3は、記憶部7と、制御部8と、生成部9と、記憶部入力部10とを備える。記憶部7は、先入れ先出し記憶装置(FIFO:First In First Out。以下、FIFOという)から構成される。記憶部入力部(以下、FIFO入力部ともいう)10は、FIFO7にデータを入力する順序とタイミングを調整する。FIFO7は、FIFO入力部10からデータが入力され、制御部8へデータが読み出される。FIFO7から制御部8へ読み出されるデータの順は、FIFO入力部10から入力された順である。
FIG. 2 is a block diagram illustrating an example of the
FIFO7には、送信制御情報70が記憶される。1つの送信制御情報70は、1つの通信データ6に対応している。FIFO7には、バッファ1に蓄積された通信データ6の数だけ、通信制御情報70が記憶される。
In the FIFO 7,
送信制御情報70は、通信データID71、送信カウンタ72、送信間隔値73および残セル数74を含む。通信データID71は、その送信制御情報70の対象である通信データ6を識別する符号である。通信データID71でバッファ1に蓄積された通信データ6を参照できる。
The
送信カウンタ72は、通信データ6の次のセルを送信するまでの残り時間を所定の基準時間単位で表した値である。送信間隔値73は、対象となる通信データ6のセルを送信する時間間隔を、所定の基準時間単位で表した値である。送信カウンタ72には、最初に送信間隔値73が設定される。基準時間が経過するごとに、送信カウンタ72が減算される。送信カウンタ72の値が0になったときが、セルを送信するタイミングである。
The
残セル数は、対象となる通信データ6のうち、まだ送信されていないデータをセル(のペイロード長さ)単位で表した値である。残セル数は、最初に通信データ6のデータ62の長さをセル単位で表した値が設定される。セルを送信するごとに、残セル数から送信したセルの数が減算される。残セル数が0以下になったとき、通信データ6は送信が完了したことを表す。
The number of remaining cells is a value representing data not yet transmitted among the
生成部9は、通信データ6がバッファ1に蓄積されたとき、その通信データ6に対応する送信制御情報70を生成して、FIFO入力部10に入力する。FIFO入力部10は、生成部9から入力されるデータと制御部8から入力されるデータとを、順序とタイミングを調節して、送信制御情報70を単位としてFIFO7に入力する。
When the
生成部9は、通信データ6を参照するための識別符号を通信データID71に設定する。つぎに、通信データ6のタグ61で指定される初期パラメータ5を参照して、送信制御情報70を生成する。すなわち、タグ61と同じタグ51を有する初期パラメータ5を参照する。初期パラメータ5の送信時間=Tを所定の基準時間で除した値を、送信間隔値73に設定する。そして、送信カウンタ72を送信間隔値73と同じ値に設定する。また、通信データ6のデータ長さをセルのペイロード長さで除した値を残セル数74に設定する。
The
初期パラメータ5は、例えば、通信のQoS(Quality of Service:サービス品質)に応じて複数のセットが予め用意されている。または、通信のコネクションを確立するときに、ネゴシエーションして設定する。初期パラメータ5は通信ごとに異なるが、1つの通信(コネクション)については、通信データ6ごとに同じである。1つの通信について通信データ6ごとに変更する場合もあり得る。
As the
制御部8は、所定の基準時間ごとに、FIFO7に記憶されているすべての送信制御情報70を読み出し、それぞれの送信制御情報70について送信セルの有無を判定する。そして、対応する通信データ6からデータを読み出してセルに設定し、送信FIFO4に入力する。また、送信するセルが残っている通信データ6の送信制御情報70を、再度FIFO入力部10に入力する。
The control unit 8 reads all the
制御部8は、ベースタイマ部81、送信カウンタ減算部82、送信判断部83、残セル数減算部84、再登録判断部85および送信カウンタ設定部86を備える。ベースタイマ部81は、前述の所定の基準時間が経過するごとに、クロックパルスを発生するなどして報知する。
The control unit 8 includes a
送信カウンタ減算部82は、送信制御情報70の送信カウンタ72の値を減算する。送信判断部83は、送信カウンタ72が0以下の場合に、対応する通信データ6から送信するセルがあると判定する。残セル数減算部84は、送信するセルがあると判定された場合に、残セル数74から送信したセル数を減算する。再登録判断部85は、残セル数74が0以下でない場合に、その送信制御情報70を再度FIFO入力部10に入力すると判断する。送信カウンタ設定部86は、送信するセルがあると判定された(すなわち、送信カウンタ72が0以下だった)場合に、送信カウンタ72に送信間隔値73の値を設定する。
The transmission
制御部8は、1つの送信制御情報70を処理すると、次の送信制御情報70を読み込んで、送信カウンタ72の減算、送信セルの有無判定、ならびに、送信セルがあった場合に、残セル数減算、再登録判定および送信カウンタ設定を行う。FIFO7に記憶されている送信制御情報70の数だけ処理を繰り返し、処理する送信制御情報70が尽きたら、次のベースタイマ部81の報知を待機する。
When one
送信制御情報70が尽きたことは、例えばつぎのようにして判定できる。FIFO7に記憶されているデータの数を表すカウンタ7Cを設ける。ベースタイマ部81の報知によって、送信制御情報70の読み込みを開始するときに、制御部8は、カウンタ7Cの値を読み込んで内部のレジスタにセットする。制御部8はFIFO7からデータを読み出すごとに、読み出したデータ数をカウンタ7Cの値をセットしたレジスタから減算する。レジスタの値が0になったとき、読み出しを開始したときに記憶されていたデータを全部読み出したことになる。
It can be determined, for example, that the
カウンタ7Cは、FIFO7にデータが入力されると、そのデータ数だけ加算される。また、データが読み出されるとそのデータ数だけ減算される。FIFO7がリセットされてデータが全部消去されたときに、カウンタ7Cも0にリセットされる。したがって、カウンタ7CはFIFO7に記憶されているデータの数を表す。
When data is input to the FIFO 7, the counter 7 </ b> C adds the number of data. When data is read out, the number of data is subtracted. When the FIFO 7 is reset and all data is erased, the
制御部8が送信制御情報70を処理したのちに、送信制御情報70を再登録することがあり、また、制御部8の処理中に新たに送信制御情報70が生成部9によって生成されることがあるので、FIFO7に記憶されているデータは変動する。しかし、制御部8が一連の送信制御情報70の読み込みを開始したときに記憶されていた送信制御情報70は、カウンタ7Cの値を読み込んだレジスタを減算していくことによって、ちょうど読み込まれることになる。
After the control unit 8 processes the
図3は、通信データ6の構成を示す概念図である。回線Nは、複数の通信を多重化して伝送する。バッファ1には複数の通信データ6が蓄積される。通信データ6は、入力線Lが回線交換網の場合は通信フレームである。入力線Lが、例えばLANのように、コネクションレス通信の場合は、通信データ6はパケットである。
FIG. 3 is a conceptual diagram showing the configuration of the
それぞれの通信データ6は、例えば図3に示すように、タグ61とデータ62で構成される。データ62は複数のセルに分けて、それぞれセルのペイロードに格納されて伝送される。図3の例では、通信データaは、PLa1〜PLapのデータに分割されて伝送される。通信データmは、PLm1〜PLmqのデータに分割されて伝送される。データ62の長さが異なれば、セルに分割される数は異なる。
Each
図4は、一般的なセルの構造を示す。セルCは、通信ごとの経路情報を表すセルヘッダCHと、通信するデータを格納するペイロードPの部分に分けられる。通信データ6のデータのうち、例えば図3のPLa1が1つのセルCのペイロードPに格納されて伝送される。
FIG. 4 shows a general cell structure. The cell C is divided into a cell header CH that represents path information for each communication and a payload P that stores data to be communicated. Of the
図5は、通信データ6ごとのセルが送信されるタイミングの例を示す。図5の上段のセルは通信データa、下段のセルは通信データbを示す。セルが送信される時間間隔は、通信データ6ごとに異なる。図5の例では、通信データaは、時間T1間隔でセル(セルa1等)が送信され、通信データbは時間T2間隔でセル(セルb1等)が送信される。
FIG. 5 shows an example of timing at which a cell for each
ベースタイマ部81が報知する所定の基準時間は、通常1つのセルが回線Nで伝送される時間より短い。制御部8は、基準時間の間、すなわち1つのセルが回線Nで伝送される間に、FIFO7に記憶されている送信制御情報70をすべて読み込んで処理する。1つの回線Nに対して、複数のスケジュール部3を並列に設けて、通信データ6をそれらのスケジュール部3に割り振って同時に送信処理してもよい。その場合、基準時間は1つのセルが回線Nで伝送される時間より長くできる。回線Nの伝送レートが高く、1つの制御部8で処理が間に合わない場合に有効である。
The predetermined reference time notified by the
図3ないし図5で説明したとおり、通信データ6ごとに、分割して送信するセルの数と、セルを送信する時間間隔が異なっている。しかし、上述のスケジュール部3の構成と作用によって、セルの数と送信する時間間隔が異なる複数の通信データ6を、機械的に簡単にセルに分割して送信処理することができる。
As described with reference to FIGS. 3 to 5, the number of cells to be divided and transmitted and the time interval for transmitting the cells are different for each
次に、図6および図7のフローチャートを参照して本実施の形態に係るシェーピング装置100の動作について説明する。図6は、送信制御情報70を生成して登録する動作の一例を示すフローチャートである。
Next, the operation of the
通信データ6がバッファ1に蓄積されると、生成部9の通信ID生成部91は、その通信データを参照するための通信データID71を生成する(ステップS1)。送信間隔設定部92は、通信データ6のタグ61と同じタグ51を有する初期パラメータ5から、送信時間52を読み込み、所定の基準時間で除して送信間隔値73を算出する(ステップS2)。送信カウンタ設定部93は、送信間隔の値を送信カウンタ72に設定する(ステップS3)。
When the
残セル数設定部94は、初期パラメータ5から通信データ6の通信データ長53とセル長54を読み込み、通信データ長53をセル長54で除してセル数を算出し、残セル数74に設定する(ステップS4)。通信データID71、送信カウンタ72、送信間隔値73および残セル数74を設定した送信制御情報70をFIFO入力部10に入力する(ステップS5)。
The remaining cell
上述のとおり、FIFO入力部10は、送信制御情報70を単位としてFIFO7に入力する。このようにして、FIFO7に新しく送信制御情報70が登録される。1つの通信データ6が処理されて送信される間に、他の通信データ6が蓄積されると、FIFO7には、複数の送信制御情報70が記憶されることになる。
As described above, the
図7は、スケジュール部3が行う送信処理の動作の一例を示すフローチャートである。ベースタイマ部81が、所定の基準時間の経過ごとに報知すると、スケジュール部3の送信処理が起動される。
FIG. 7 is a flowchart illustrating an example of the operation of the transmission process performed by the
制御部8は、内部変数i(レジスタ)にカウンタ7Cの値を初期設定して(ステップS11)、FIFO7から送信制御情報70を入力する(ステップS12)。読み込んだ送信制御情報70の送信カウンタ72を減算し(ステップS13)、送信カウンタ72と0を比較する(ステップS14)。送信カウンタ72が0以下の場合(ステップS14;YES)、通信データID71で指定される通信データ6からセルの送信を設定し、残セル数74を減算する(ステップS15)。
The control unit 8 initializes the value of the
残セル数74が0以下でなければ(ステップS16;YES)、送信カウンタ72に送信間隔値73をセットする(ステップS17)。そして、送信制御情報70をFIFO入力部10に入力する(ステップS18)。FIFO入力部10は、その送信制御情報70を、生成部9で新たに生成された送信制御情報70と調整して、FIFO7に入力する。
If the remaining
残セル数74が0以下であれば(ステップ16;NO)、その送信制御情報70を廃棄する(ステップS19)。そして、次の送信制御情報70の処理に移る(ステップS20)。全てのデータを送信処理し終えた通信データ6の送信制御情報70は、その時刻情報とともに、トレースのためのジャーナル情報としてリングバッファなどに格納してもよい。
If the remaining
ステップS14に戻って、送信カウンタ72が0以下でなければ(ステップS14;NO)、送信処理などを行わす、送信カウンタ72以外のデータを変更することなく、その送信制御情報70をFIFO入力部10に入力する(ステップS18)。前述のとおり、FIFO入力部10が調整して、FIFO7へ入力する。
Returning to step S14, if the
送信制御情報70を再登録したか(ステップS18)、または、廃棄した(ステップS19)のち、内部変数iをデクリメントして(ステップS20)、内部変数iが0かどうか調べる(ステップS21)。ステップS20の記号“−=”は、左辺の変数の値から右辺の値を減算して、改めて左辺の変数に代入することを表す。ここでは、カウンタ7Cの値は、送信制御情報70を単位とするデータ数を表すことを仮定している。
After re-registering the transmission control information 70 (step S18) or discarding (step S19), the internal variable i is decremented (step S20), and it is checked whether the internal variable i is 0 (step S21). The symbol “-=” in step S20 indicates that the value of the right side is subtracted from the value of the variable on the left side and is assigned again to the variable on the left side. Here, it is assumed that the value of the
内部変数iが0以下でなければ(読み込むべき送信制御情報70があれば)(ステップS21;YES)、ステップS12に戻って、送信制御情報入力から繰り返す。内部変数が0以下であれば(読み込むべき送信制御情報70がなければ)(ステップS21;NO)、1回の基準時間内の送信処理を終了する。
If the internal variable i is not 0 or less (if there is
1つの送信制御情報70についてみれば、生成部9によってFIFO7に登録されたのち、ベースタイマ部81の報知ごとに、送信カウンタ72が減算され、送信カウンタ72が0になったときに、セルが送信されて、送信カウンタ72が送信間隔値73に再設定される。セルの送信を繰り返して、残セル数が0になったときに、ちょうど送信データ6はすべてのデータがセルに分割して送信されている。
As for one
複数の通信データ6について、それぞれ1回の基準時間以内に送信カウンタ72が減算されて、セルの送信が判断される。複数の通信データ6の蓄積のタイミングとセルの送信間隔が異なっていても、それらの送信制御情報70に合わせて正しく送信処理が行われる。
For a plurality of
以上説明したとおり、本発明のシェーピング装置100によれば、送信すべきデータ(通信データ6)が存在する場合のみ送信制御情報70を記憶部(FIFO)7に記憶し、1回の基準時間ですべての送信制御情報70の送信カウンタ72を減算しながら、送信処理することにより、送信制御情報70を蓄積するメモリのアドレス管理が不要となり、エントリ数の増大にたいして単純なFIFO7で容易に対応可能となる。
As described above, according to the
送信間隔の精度はベースタイマ部81の基準時間によって決まる。そこで、送信間隔について複数の精度が必要な場合には、FIFO7とベースタイマ部81を複数備えて、異なる基準時間でそれぞれのFIFO7の送信制御情報70を処理することによって、容易に対応できる。
The accuracy of the transmission interval is determined by the reference time of the
なお、実施の形態では、FIFOの場合について説明したが、記憶部7はFIFOに限らず、例えば、2系統の後入れ先出し(LIFO:Last In First Out)記憶装置(スタックともいう)を用いることができる。その場合、一方のLIFOは書込、他方のLIFOは読み出しとして、書込と読み出しを交互に切り替える。すなわち、制御部8が一方のLIFOから送信制御情報70を読み出す場合に、記憶部入力部10は他方のLIFOに書き込む。次の基準時間のタイミングでは、LIFOを切り替えて、前回書き込んでいたLIFOから読み出し、前回読み出していたLIFOに書き込む。LIFOの場合は、カウンタ7Cがなくても、記憶されたデータが尽きたことがわかる。例えば、NULデータを読み出したときに、記憶されたデータがないと判断できる。
In the embodiment, the case of the FIFO has been described. However, the storage unit 7 is not limited to the FIFO, and for example, a two-line last-in-first-out (LIFO) storage device (also referred to as a stack) is used. Can do. In that case, one LIFO is written and the other LIFO is read, and writing and reading are switched alternately. That is, when the control unit 8 reads the
また、FIFO7のカウンタ7Cに代えて、FIFO入力部10が送信制御情報70の数を記憶するカウンタを備えてもよい。その場合、制御部8がベースタイマ部81の起動で読み込みを開始するときに、送信制御情報70の数を読み込んで、FIFO入力部10のカウンタを0にリセットする。制御部8は、読み込んだ数だけ送信制御情報70を処理すればよい。次のベースタイマ部81による起動のときには、次の期間で処理すべき送信制御情報70の数がFIFO入力部10によってカウンタに設定されている。
Further, instead of the
以上、好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものではなく、その技術的思想の範囲内において様々に変形して実施することができる。例えば、送信制御情報70に優先度を表す情報や第2の送信カウンタなどを追加して、送信FIFOの混雑度に応じて、通信データ6ごとに最大伝送レートと保証最低伝送レートの間でセルが送信されるように制御することも可能である。例えば、送信カウンタの値が所定の閾値以下になった場合に優先度を加算していって、送信FIFOの混雑度−優先度が0以下の場合にセルを送信するというようなことが考えられる。
The present invention has been described above with reference to preferred embodiments. However, the present invention is not necessarily limited to the above embodiments, and various modifications can be made within the scope of the technical idea. it can. For example, information indicating priority or a second transmission counter is added to the
その他、前記のハードウエア構成やフローチャートは一例であり、任意に変更および修正が可能である。 In addition, the above-described hardware configuration and flowchart are examples, and can be arbitrarily changed and modified.
1 バッファ
2 送信制御部
3 スケジュール部
4 送信バッファ(送信FIFO)
5 初期パラメータ
6 通信データ
7 記憶部(FIFO)
8 制御部
9 生成部
10 記憶部入力部(FIFO入力部)
51 タグ
52 送信時間
53 通信データ長
54 セル長
61 タグ
62 データ
70 送信制御情報
71 通信データID
72 送信カウンタ
73 送信間隔値
74 残セル数
7C カウンタ
81 ベースタイマ部
82 送信カウンタ減算部
83 送信判断部
84 残セル数減算部
85 再登録判断部
86 送信カウンタ設定部
91 通信データID生成部
92 送信間隔設定部
93 送信カウンタ設定部
94 残セル数設定部
DESCRIPTION OF
5
8
51
72
Claims (5)
前記連続してバッファに蓄積された通信データを特定する識別符号と、該通信データに割り当てられたセルの送信間隔時間を基準時間で除算した送信間隔値と、前記送信間隔時間の残り時間を表す送信カウンタと、前記通信データの送信すべき残りのセルの数を表す残セル数と、を有する送信制御情報を前記通信データごとに生成して記憶する記憶手段と、
通信データを蓄積したときに、その送信間隔値を演算し、前記送信カウンタに該送信間隔値を設定して、前記送信制御情報を前記記憶手段に記憶する登録手段と、
前記基準時間を経過するごとに報知するタイマ手段と、
前記タイマ手段が報知するごとに、前記記憶手段に記憶されている送信制御情報を順にすべて読み出し、それぞれの送信制御情報について、
前記送信カウンタを減算する送信カウンタ減算手段と、
前記送信カウンタの値が所定の値以下の場合に、前記識別符号で特定される通信データのセルを送信すると判断する送信判断手段と、
前記送信判断手段でセルを送信すると判断した場合に、前記残セル数を減算し、前記送信カウンタに前記送信間隔値を設定する送信セル数減算手段と、
前記残セル数が0以下でないならば、再度前記記憶手段にその送信制御情報を記憶する再登録手段と、
を含む送信処理手段と、
を備えることを特徴とするシェーピング装置。 A communication device that continuously accumulates communication data in a buffer, divides the communication data into a plurality of cells, and transmits the cells to a line at predetermined time intervals.
An identification code for identifying the communication data continuously stored in the buffer, a transmission interval value obtained by dividing a transmission interval time of a cell assigned to the communication data by a reference time, and a remaining time of the transmission interval time Storage means for generating and storing transmission control information for each piece of communication data, including a transmission counter and a number of remaining cells representing the number of remaining cells to be transmitted of the communication data ;
A registration unit that calculates a transmission interval value when communication data is accumulated, sets the transmission interval value in the transmission counter, and stores the transmission control information in the storage unit;
Timer means for informing each time the reference time elapses;
Every time the timer means notifies, all the transmission control information stored in the storage means is read in order, and for each transmission control information,
Transmission counter subtraction means for subtracting the transmission counter;
Transmission determination means for determining that a cell of communication data specified by the identification code is to be transmitted when the value of the transmission counter is a predetermined value or less;
When it is determined that the cell is transmitted by the transmission determination means, the number of remaining cells is subtracted, and the transmission cell number subtraction means for setting the transmission interval value in the transmission counter;
If the number of remaining cells is not less than 0, re-registration means for storing the transmission control information in the storage means again;
Transmission processing means including:
A shaping apparatus comprising:
通信データを連続して蓄積したときに、該通信データに割り当てられたセルの送信間隔時間を基準時間で除算した送信間隔値を演算する送信間隔演算ステップと、
前記バッファに蓄積された通信データを特定する識別符号と、前記送信間隔値と、該送信間隔値が設定され前記基準時間間隔ごとに減算される送信カウンタと、前記通信データの送信すべき残りのセルの数を表す残セル数と、を有する送信制御情報を、前記通信データごとに生成して記憶部に記憶する登録ステップと、
前記基準時間を経過するごとに、前記記憶部に記憶されている前記送信制御情報を順にすべて読み出し、それぞれの送信制御情報について、
前記送信カウンタを減算する送信カウンタ減算ステップと、
前記送信カウンタが所定の値以下の場合に前記識別符号で特定される通信データのセルを送信すると判断する送信判断ステップと、
前記送信判断ステップでセルを送信すると判断した場合に、前記残セル数を減算し、前記送信カウンタに送信間隔値を設定する送信セル数減算ステップと、
前記残セル数が0以下でないならば、再度前記記憶部にその送信制御情報を記憶する再登録ステップと、
を含む送信処理ステップと、
を備えることを特徴とするシェーピング方法。 After the communication data is continuously stored in the buffer, the communication data is divided into a plurality of cells, and the cell is transmitted to the line at a predetermined time interval.
A transmission interval calculation step for calculating a transmission interval value obtained by dividing a transmission interval time of a cell assigned to the communication data by a reference time when the communication data is continuously accumulated;
An identification code for identifying the communication data stored in the buffer; the transmission interval value; a transmission counter in which the transmission interval value is set and subtracted for each reference time interval; and the remaining communication data to be transmitted A registration step of generating transmission control information for each communication data and storing it in a storage unit, and a remaining cell number representing the number of cells;
Every time the reference time elapses, all the transmission control information stored in the storage unit is read in order, and for each transmission control information,
A transmission counter subtraction step for subtracting the transmission counter;
A transmission determination step of determining to transmit a cell of communication data specified by the identification code when the transmission counter is a predetermined value or less;
When it is determined to transmit cells in the transmission determination step, the number of remaining cells is subtracted, and a transmission cell number subtraction step for setting a transmission interval value in the transmission counter;
If the remaining cell number is not less than or equal to 0, a re-registration step of storing the transmission control information in the storage unit again;
A transmission processing step including:
A shaping method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007216403A JP4716194B2 (en) | 2007-08-22 | 2007-08-22 | Shaping device and shaping method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007216403A JP4716194B2 (en) | 2007-08-22 | 2007-08-22 | Shaping device and shaping method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009049931A JP2009049931A (en) | 2009-03-05 |
JP4716194B2 true JP4716194B2 (en) | 2011-07-06 |
Family
ID=40501669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007216403A Expired - Fee Related JP4716194B2 (en) | 2007-08-22 | 2007-08-22 | Shaping device and shaping method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4716194B2 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11112525A (en) * | 1997-09-30 | 1999-04-23 | Nec Corp | Rate control system for abr shaper |
JP2004228777A (en) * | 2003-01-21 | 2004-08-12 | Sony Corp | Data transmission apparatus and data transmission method |
-
2007
- 2007-08-22 JP JP2007216403A patent/JP4716194B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11112525A (en) * | 1997-09-30 | 1999-04-23 | Nec Corp | Rate control system for abr shaper |
JP2004228777A (en) * | 2003-01-21 | 2004-08-12 | Sony Corp | Data transmission apparatus and data transmission method |
Also Published As
Publication number | Publication date |
---|---|
JP2009049931A (en) | 2009-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3764609B1 (en) | Message sending method, network node and system | |
US8730821B2 (en) | Packet loss rate detection method, apparatus, and system | |
EP0351818B1 (en) | ATM switching system | |
US20210006502A1 (en) | Flow control method and apparatus | |
JP5115066B2 (en) | Packet transmission method and apparatus | |
US6785238B1 (en) | LAN relaying/switching apparatus | |
WO2009107089A2 (en) | Apparatus and method for shared buffering between switch ports | |
JP4530806B2 (en) | Packet transmission equipment | |
JP4111974B2 (en) | Transmission-driven flow control device | |
JP4716194B2 (en) | Shaping device and shaping method | |
US6628669B1 (en) | LAN relaying/switching apparatus | |
US7533109B2 (en) | Item queue management | |
JPH09319671A (en) | Data transmitter | |
CN101115065B (en) | Method and arrangement for processing management and control messages | |
JP4382122B2 (en) | Relay device and bandwidth control program | |
JPH11506893A (en) | Parallel on-the-fly processing of fixed-length cells | |
US7414991B2 (en) | Computing system and method to select data packet | |
US7337371B2 (en) | Method and apparatus to handle parity errors in flow control channels | |
US7855967B1 (en) | Method and apparatus for providing line rate netflow statistics gathering | |
US20060146871A1 (en) | Optical burst switching system and method using duplicate burst transmission | |
JP4106564B2 (en) | Flow control method | |
US20070133584A1 (en) | Ethernet line card and method of providing various services using the same | |
KR20000033936A (en) | Method for managing buffer for traffic service of non-real time in atm exchange | |
KR100276079B1 (en) | A cell spacer using bucket calendar and its cotrol method | |
JP5239636B2 (en) | Communication device having back pressure packet transmission function |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100913 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100928 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101129 |
|
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: 20110301 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110317 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4716194 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140408 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |