JP3287529B2 - トラヒックシェイピング装置 - Google Patents

トラヒックシェイピング装置

Info

Publication number
JP3287529B2
JP3287529B2 JP19772895A JP19772895A JP3287529B2 JP 3287529 B2 JP3287529 B2 JP 3287529B2 JP 19772895 A JP19772895 A JP 19772895A JP 19772895 A JP19772895 A JP 19772895A JP 3287529 B2 JP3287529 B2 JP 3287529B2
Authority
JP
Japan
Prior art keywords
cell
connection
pointer
list
cells
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
JP19772895A
Other languages
English (en)
Other versions
JPH0946354A (ja
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 JP19772895A priority Critical patent/JP3287529B2/ja
Priority to EP96925120A priority patent/EP0812083B1/en
Priority to DE69637027T priority patent/DE69637027T2/de
Priority to PCT/JP1996/002131 priority patent/WO1997005724A1/ja
Publication of JPH0946354A publication Critical patent/JPH0946354A/ja
Priority to US08/825,936 priority patent/US6046983A/en
Application granted granted Critical
Publication of JP3287529B2 publication Critical patent/JP3287529B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は非同期転送モード
(以下、ATMという)通信網の中に設けられ、セルま
たはパケットを一時的に蓄積するバッファ手段として利
用する。本発明はコネクション毎に所定のセルまたはパ
ケットの送出間隔を制御する技術に関する。
【0002】
【従来の技術】情報を固定長のパケットであるセルに分
割して網内を転送するATMにおいては、セル間隔を元
にトラヒック収容設計を行う。このようなトラヒック収
容設計を行うため、コネクション毎にセル間隔を規定す
る。それが守られているか否かを監視するためにUPC
/NPC(Usage/Network Parameter Control) などの使
用量監視装置を設置するのが一般的である。UPC/N
PCは規定のセル間隔よりも短い間隔で到着したセルに
ついては即座に廃棄もしくはタギングなどを行う。
【0003】一方、ATM通信網においてはセルは非同
期転送されるので、網内を転送されるうちにセル毎に異
なる遅延を被る。これによって、加入者が規定どおりに
間隔を守ってセルを送出したとしてもUPC/NPCを
実施する点では規定が満足できなくなる場合がある。C
DV(Cell Delay Variation)はセルの転送遅延の揺らぎ
を規定する概念であり、CDVによるUPC/NPCや
トラヒック収容設計への影響が問題となっている。網内
で生じるCDVを縮小するため、一旦、セルをセルバッ
ファに蓄積して、セルバッファからのセルの読み出しを
制御するトラヒックシェイピング装置が考案されてい
る。
【0004】この従来例を図14および図15を参照し
て説明する。図14はATM通信網の全体構成の概念と
トラヒックシェイピング装置を示す図である。図15は
トラヒックシェイピング装置の概念図である。
【0005】近年ATMフォーラムの場で盛んに議論さ
れているABR(Available Bitrate) サービスはルート
上の帯域の空き状況をRM(Resource Management) セル
を用いてエンド−エンドで通知しあい、フロー制御を行
うものである。ABRサービスではRMセルの制御ルー
プがエンド−エンドで閉じているため、輻輳でRMセル
が廃棄されても、負のフィードバックメカニズムが効
き、フローの抑制が動作する。しかしながら、公衆網の
ようにセルの転送遅延が大きくなる場合には、RMセル
により得られるルート上の帯域の空き状況に関する情報
がもはや古くなるため、良好な制御効果が得られないこ
とが問題となる。
【0006】このような問題点を解決するため、公衆網
の適切なところにRMセルにより制御ループを閉じるた
めVD/VS(Virtual Distination/Virtual Source)を
配置することが検討されている。VD/VSはセルバッ
ファを用意し、コネクション毎にセルを蓄積する。セル
バッファからのセルの読み出しはトラヒックシェイピン
グ装置により行われる。自分が送出したRMセルが網を
転送されて折り返ってくると、その内容に基づいて当該
コネクションのセルの送出間隔を決定し、その間隔で当
該コネクションのセルをセルバッファから読み出す。
【0007】
【発明が解決しようとする課題】トラヒックシェイピン
グを行う場合には、コネクション数が増えるとセルバッ
ファのキューが多くなるため、メモリ量の増大その他で
ハードウェア規模が大きくなることが問題である。
【0008】トラヒックシェイピング装置は1スロット
に1セルしか転送できないが、同一スロットに複数のセ
ルがスケジューリングされると、どちらかは転送されな
い。コネクション数が増えると同一スロットに複数のセ
ルがスケジューリングされる確率は高くなり、この問題
が顕在化する。
【0009】本発明はこのような背景に行われたもので
あり、コネクション数が増大しても比較的妥当なハード
ウェア規模でトラヒックシェイピングを実現することが
できるトラヒックシェイピング装置を提供することを目
的とする。本発明は、同一スロット(時刻)にスケジュ
ーリングされた複数のセルを転送することができるトラ
ヒックシェイピング装置を提供することを目的とする。
本発明は、ATM通信網のスループットを向上させるこ
とができるトラヒックシェイピング装置を提供すること
を目的とする。
【0010】
【課題を解決するための手段】本発明のトラヒックシェ
イピング装置はコネクション識別子をアドレスとしトー
クン、セル間隔、セルバッファへのポインタなどのレコ
ードからなるコネクションテーブルと、各エントリ間の
順序関係を指示するポインタとセルそのものを保持する
フィールドなどのレコードからなるセルバッファと、各
エントリ間の順序を指示するポインタと、コネクション
識別子などのレコードからなる同時到着コネクションリ
ストと、同時到着コネクションリストへのポインタと時
間とを対にして保持するスケジューリングテーブルとス
ケジューリングテーブルの処理対象を示すタイマと、現
時刻を示すタイマと、からなる。
【0011】本発明のトラヒックシェイピング装置はセ
ルバッファにはコネクション毎にリストを構成し、その
リストの先頭と末尾のアドレスをコネクションテーブル
に登録し、セルの到着毎に該当するコネクションのリス
トに当該セルを追加し、トークンがある場合にはその時
点で転送スケジューリングを行う。また、同時到着コネ
クションリストには同一時刻に読み出すセルのコネクシ
ョン識別子のリストが形成されており、スケジューリン
グテーブルの処理対象を示すタイマが示すアドレスから
順次読み出すことにより、スケジューリングされたとお
りの順番でコネクションのセルを読み出し、読み出した
後には、コネクションテーブルが示すセル間隔でスケジ
ューリングすることによりコネクション毎に所定のセル
間隔を保証するものである。
【0012】このように、共通バッファをセルバッファ
として、メモリ容量を効率よく使用できるため、コネク
ション数の増大に伴うハードウェア量の増大を抑えるこ
とができる。また、同時到着したセルを順次読み出すよ
うに制御することができるため、廃棄されるセル数を低
減することができる。したがって、スループットの高い
ATM通信網を実現することができる。
【0013】すなわち、本発明の第一の観点は、ATM
通信網内に備えられ、セル流が到来する入力端子と、到
着したセルを一時蓄積するセルバッファと、指示される
セル送出間隔にしたがってこのセルバッファからセルを
読み出すトラヒックシェイピング部とを備えたトラヒッ
クシェイピング装置である。
【0014】ここで、本発明の特徴とするところは、コ
ネクション識別子(VPI/VCI)をアドレスとし前
記セル送出間隔の情報(Int)を含むコネクション情
報を保持するコネクションテーブルを備え、前記セルバ
ッファは、セルが一つずつ収容される複数のメモリ領域
と、このメモリ領域と前記コネクションテーブルとを対
応させるポインタ値(Ptr)を示すポインタ領域とを
含むところにある。
【0015】前記コネクション情報には、コネクション
識別子対応に同一のコネクション識別子を有するセルの
先頭および末尾が収容される前記メモリ領域のポインタ
値を含むことがよい。
【0016】前記ポインタ値により前記セルバッファに
蓄積された複数のセルがチェインを構成するようにする
ことがよい。このチェインにより連結された順序で、指
示されるセル送出間隔にしたがってセルバッファからセ
ルが読み出される。
【0017】前記コネクション情報は、当該コネクショ
ンの末尾セルの到着後に送出スケジューリングの実行の
可否を表すトークン(Tk)を含むことがよい。
【0018】前記セルバッファの空きメモリ領域の先頭
ポインタ値および末尾ポインタ値を保持する手段を備え
ることが望ましい。
【0019】現在時刻を計時するタイマと、このタイマ
にしたがってセル送出予定をスケジューリングする手段
とを備える構成とすることもできる。
【0020】前記スケジューリングする手段は、複数の
セルがほとんど同時に到着しその複数のセル送出予定時
刻が重複するときには、その重複するセル送出予定時刻
を順次ずらして送出させるようにスケジューリングする
手段を備えることもできる。
【0021】前記スケジューリングする手段は、前記セ
ル送出予定時刻が重複する複数のセルについて全部の送
出が完了するまで計時を中止する仮想タイマを前記タイ
マとは別に備えた構成とすることもできる。
【0022】前記セル送出予定時刻が重複する複数のコ
ネクションについてそのコネクション識別子情報が収容
されるメモリ領域と、このメモリ領域に対応して設けら
れこのメモリ領域に付与されたポインタ値を示すポイン
タ領域とを含む同時到着コネクションリストと、この同
時到着コネクションリストの空きメモリ領域の先頭ポイ
ンタ値および末尾ポインタ値を保持する手段とを備える
構成とすることもできる。
【0023】前記スケジューリングする手段には、あら
かじめ複数のセル送出予定時刻を表示する手段を含む構
成とすることもできる。
【0024】前記セルバッファのメモリ領域には、コネ
クション毎の蓄積セル数についてその上限値が設けられ
るようにすることもよい。
【0025】前記コネクション情報には、セル送出順位
についての優先権情報を含むようにすることもよい。
【0026】本発明の第二の観点は、このトラヒックシ
ェイピング装置を含むATM通信網である。
【0027】
【発明の実施の形態】本発明の実施の形態を図1を参照
して説明する。図1は本発明第一実施例の要部構成を示
す図である。ATM通信網の概念図は図14を参照のこ
と。また、トラヒックシェイピング装置の概念図は図1
5を参照のこと。
【0028】本発明は、ATM通信網内に備えられ、セ
ル流が到来する入力端子INと、到着したセルを一時蓄
積するセルバッファCBと、指示されるセル送出間隔に
したがってこのセルバッファCBからセルを読み出すト
ラヒックシェイピング部TSとを備えたトラヒックシェ
イピング装置である。
【0029】ここで、本発明の特徴とするところは、コ
ネクション識別子(VPI/VCI)をアドレスとし前
記セル送出間隔Intを含むコネクション情報を保持す
るコネクションテーブルCTを備え、前記セルバッファ
CBは、セルが一つずつ収容される複数のメモリ領域C
ellと、このメモリ領域Cellとコネクションテー
ブルCTとを対応させるポインタ値を示すポインタ領域
Ptrとを含むところにある。
【0030】
【実施例】
(第一実施例)本発明第一実施例を図1を参照して説明
する。本発明第一実施例は、全てのコネクションのセル
を蓄積する共通のセルバッファCBとセルバッファCB
内に蓄積された各コネクション毎のセル送出間隔Int
とセルの到着順のチェインのセルバッファCB内の先頭
と末尾のアドレスを持つコネクションテーブルCTから
なり、所定のスケジューリング規則にしたがって各コネ
クションのセルをセルバッファCBから読み出す。
【0031】コネクションテーブルCTはコネクション
毎の情報を保持するテーブルである。コネクション毎の
トークンTkとセル送出間隔Intとポインタヘッドh
ead,ポインタテイルtailを持つ。トークンTk
は当該コネクションの次に到着するセルが到着時刻に転
送される権利を有することを示す。セル送出間隔Int
は当該コネクションが保持しなければいけない最小のセ
ル送出間隔Intを示す。ポインタヘッドhead,ポ
インタテイルtailはセルバッファCBへのリンク関
係(図1の(1),(2) の矢印)を示し、当該コネクション
の先頭((1) の矢印)と末尾((2) の矢印)のセルの保
持されている番地を保持している。
【0032】あるコネクションのセルをセルバッファC
Bに書込むとき、まず、セルバッファCBの空き領域に
セルを書込む。このときの書込み動作例を図2に示す。
図2はセルバッファCBへのセル書込み動作を示す図で
ある。図2はセルバッファ内の空きセルのチェインを示
しており、CBフリーポインタの付け換えにより、空き
セルチェインの先頭のアドレスが到着セルに割当てられ
ている。図2は到着セルをセルバッファCBに書込んだ
だけであり、当該セルとコネクションの対応をとる必要
がある。そこで、当該コネクションのリストの組み換え
処理を行う。このときの当該コネクションのリストの組
み換え処理を図3に示す。図3はコネクションリストの
組み換え処理を示す図である。図3(a)では、セルバ
ッファCB内の該当コネクションのセルのチェインの末
尾に到着したセルのアドレスを付け加えている。図3
(b)に示すように、セルバッファCBにチェインがな
い場合は新たにチェインを作る。
【0033】あるコネクションのセルをセルバッファC
Bから取り出す場合を図4に示す。図4は、セルバッフ
ァCBからセルを取り出す動作を示す図である。図4で
はセルバッファCB内の該当コネクションのセルチェイ
ンの先頭のセルを取り出して、ポインタヘッドを付け換
えている。
【0034】このようにセルバッファCBは全コネクシ
ョンのセルの共通バッファであり、各コネクション毎の
FIFOキューを論理的に構成している。図1におい
て、CBフリーポインタはセルバッファCBの空き領域
の先頭((3) の矢印)と末尾((4) の矢印)の番地を保
持する。セルバッファCBとCBフリーポインタは組み
合わせて用いられる。セルバッファCBはセルの内容を
保持するメモリ領域Cellとコネクション毎のセルの
読み出し順序を指示するためのポインタ領域Ptrとを
一つのエントリとして構成される。セルバッファCBに
はポインタで指示する読み出し順序の関係で論理的にコ
ネクション毎のセルのリストが構成されている。つま
り、あるコネクションを例に取り上げると、コネクショ
ンテーブルCTの当該コネクションのポインタヘッドh
eadが示す番地((1) の矢印)でセルバッファCBを
アドレッシングし、セルバッファCBのその番地のポイ
ンタが示す番地((5),(6) の矢印)でリストを順次手繰
ることにより当該コネクションのセルをその読み出し順
にアクセスすることができる。コネクションテーブルC
TはセルバッファCB上の当該コネクションのリストの
末尾の番地をリンク情報としてポインタテイルtail
に保持する((2) の矢印)。また、空き領域もコネクシ
ョン毎の場合と同じように論理的にリストで構成されて
いる。セルバッファCBの空き領域の先頭と末尾の番地
はCBフリーポインタのポインタヘッドhead((3)
の矢印)、ポインタテイルtail((4) の矢印)に保
持される。つまり、ポインタヘッドheadは次に空き
領域として使う番地を示し((3) の矢印)、セルバッフ
ァCBのその番地のポインタにはその次に空き領域とし
て使う番地が示されている。CBフリーポインタはセル
バッファCBに保持されている空き領域のリストの末尾
の番地をリンク情報としてポインタテイルtailに保
持する((4) の矢印)。
【0035】(第二実施例)次に、本発明第二実施例を
図5を参照して説明する。図5は本発明第二実施例の要
部構成図である。本発明第二実施例は、本発明第一実施
例の構成に加えて時刻とコネクションの対応関係を持つ
スケジューリングテーブルSTとタイマTimからな
る。タイマTimは現時刻を示すタイマであり、タイマ
Timが示す時刻において、スケジューリングテーブル
STに記載されたコネクションのセルを読み出す。セル
を読み出すと同時に当該コネクションの次のセルの読み
出し時刻をスケジューリングする。すなわち、タイマT
imが示す現時刻より当該コネクションのセル間隔(コ
ネクションテーブルCTのセル送出間隔Intフィール
ドに記載されている)だけ後にスケジューリングテーブ
ルSTのエントリーに当該コネクションを記載する。
【0036】(第三実施例)次に、本発明第三実施例を
図6を参照して説明する。図6は本発明第三実施例の要
部構成図である。本発明第三実施例は、本発明第二実施
例のスケジューリングテーブルSTに複数のコネクショ
ンを同一時刻に割り当てるためにフィールドを複数持つ
ものである。また、現在の時刻を示すタイマTimに加
え、仮想時刻を示す仮想タイマHTimを具備する。
【0037】本発明第二実施例においては同一時刻にス
ケジューリングされたコネクションのうち一つしか実際
にはスケジューリングされないが、本発明第三実施例で
は複数のコネクションをスケジューリングすることがで
きる。
【0038】仮想タイマHTimの値はスケジューリン
グテーブルSTの所定の番地を指示するのに用いられ
る。タイマTimは常に正確に現時刻を示すのに対し、
スケジューリングテーブルSTが同一時刻に読み出すよ
うにスケジューリングされた複数のセルをセルバッファ
CBから読み出す間は仮想タイマHTimは同じ時刻を
示したままになる。
【0039】(第四実施例)次に、本発明第四実施例を
図7を参照して説明する。図7は本発明第四実施例の要
部構成図である。本発明第四実施例は、コネクションテ
ーブルCT、セルバッファCB、セルバッファCBの空
きアドレスのリストの先頭と末尾のアドレスを保持する
CBフリーポインタ、スケジューリングテーブルST、
現時刻を示すタイマTim、仮想時刻を示す仮想タイマ
HTim、同時到着コネクションリストSL、同時到着
コネクションリストSLの空きアドレスのリストの先頭
と末尾のアドレスを保持するSLフリーポインタからな
る。
【0040】スケジューリングテーブルSTはセルの読
み出しをスケジューリングするテーブルである。スケジ
ューリングテーブルSTは同一時刻にセルバッファCB
から読み出すようにスケジューリングされているコネク
ション識別子を保持するリストである同時到着コネクシ
ョンリストSLへのポインタヘッドhead,ポインタ
テイルtailと時刻を対として管理している。ポイン
タヘッドhead、ポインタテイルtailは同時到着
コネクションリストSLへのリンク関係(図7の(10),
(11) の矢印)を示し、その時刻にセルバッファCBか
ら読み出すことになっている先頭と末尾のセルの識別子
を保持する。
【0041】現在の時刻を示すタイマTimに加え、仮
想時刻を示す仮想タイマHTimを具備する。仮想タイ
マHTimの値はスケジューリングテーブルSTの所定
の番地を指示するのに用いられる。
【0042】タイマTimは常に正確に現時刻を示すの
に対し、同時到着コネクションリストSLが同一時刻に
読み出すようにスケジューリングされた複数のセルをセ
ルバッファCBから読み出す間は仮想タイマHTimは
同じ時刻を示したままになる。
【0043】同時到着コネクションリストSLは同一時
刻にセルバッファCBから読み出すことになるスケジュ
ーリングされているコネクションのチェインを構成す
る。これにより同一時刻にスケジューリングされたコネ
クション数を柔軟に増やすことができる。チェインの構
成は共通のセルバッファCBで各コネクションのFIF
Oのキューを構成したのと同様の方法である。すなわ
ち、SLフリーポインタは同時到着コネクションリスト
SLの空き領域の先頭と末尾の番地を保持する。同時到
着コネクションリストSLとSLフリーポインタは組み
合わせて用いられる。同時到着コネクションリストSL
はセルのコネクション識別子を保持するリストであり、
コネクション識別子と同一時刻にセルバッファCBから
読み出すコネクション識別子の順序関係を指示するため
のポインタ(図7の(12),(13) の矢印)とを一つのエン
トリとして構成される。同時到着コネクションリストS
Lにはポインタで指示する読み出し順序の関係で論理的
に同一時刻で読み出すようにスケジューリングされたセ
ルのコネクション識別子のリストが構成されている。つ
まり、ある時刻を例に取り上げると、仮想タイマHTi
mのポインタヘッドheadが示す番地(図7の(10)の
矢印)で同時到着コネクションリストSLをアドレッシ
ングし、同時到着コネクションリストSLのその番地の
ポインタが示す番地(図7の(12),(13) の矢印)でリス
トを順次手繰ることにより当該時刻に読み出すようにス
ケジューリングされたセルのコネクション識別子をその
読み出し順にアクセスすることができる。仮想タイマH
Timは同時到着コネクションリストSL上の当該時刻
のリストの末尾の番地(図7の(11))をリンク情報とし
てポインタテイルtailに保持する。また、空き領域
も時刻毎の場合と同じように論理的にリストで構成され
ている。同時到着コネクションリストSLの空き領域の
先頭と末尾の番地はSLフリーポインタのポインタヘッ
ドhead(図7の(10)) 、ポインタテイルtail
(図7の(11)) に保持される。つまりポインタヘッドh
eadは次に空き領域として使う番地を示し、同時到着
コネクションリストSLのその番地のポインタにはその
次の空き領域として使う番地が示されている。SLフリ
ーポインタは同時到着コネクションリストSLに保持さ
れている空き領域のリストの末尾の番地をリンク情報と
してポインタテイルtail(図7の(11))に保持す
る。
【0044】ある時刻にスケジューリングされたセルの
コネクション識別子を同時到着コネクションリストSL
に書込む場合を図8に示す。図8はコネクション識別子
を同時到着コネクションリストSLに書込む動作を示す
図である。図8(a)では、新たにスケジューリングさ
れたコネクションをチェインの先頭につける場合と末尾
につける場合を示す。また、図8(b)に示すように、
同時到着コネクションリストSLにチェインがない場合
にはチェインを新たに作る。
【0045】ある時刻にスケジューリングされたコネク
ション識別子を同時到着コネクションリストSLから取
り出す場合を図9に示す。図9は、コネクション識別子
を同時到着コネクションリストSLから取り出す動作を
示す図である。図9ではチェインの先頭からコネクショ
ン識別子を取り出している様子を示している。
【0046】上の説明ではコネクション識別子を組み込
む位置は同一時刻でスケジューリングされているコネク
ション識別子のリストのポインタテイルtailであっ
た。また、コネクション識別子を読み出す位置は同一時
刻でスケジューリングされているコネクション識別子の
リストのポインタヘッドheadであった。つまり同一
時刻にスケジューリングされるコネクション識別子は先
着順FIFOで読み出されることになる。また、同一時
刻にスケジューリングされるコネクション識別子はセル
間隔が短いほど、後でリストに組み込まれるため、セル
間隔が短いほど、逆にいうと、セル速度が速いほど後ろ
にスケジューリングされる。コネクション識別子を組み
込む位置を同一時刻でスケジューリングされているコネ
クション識別子のリストのポインタヘッドheadにす
ることにより、同一時刻にスケジューリングされるコネ
クション識別子は後着順LIFOで読み出される。この
ようにすると速度が速いコネクションほど速く読み出さ
れることになる。また、コネクション毎にコネクション
識別子を組み込む位置を同一時刻でスケジューリングさ
れているコネクション識別子のリストのポインタテイル
tailかポインタヘッドheadのいずれかを決めて
おけば、コネクションを2つのクラスに分類することが
できる。すなわち、同一時刻にスケジューリングされた
コネクションの中で先にスケジューリングされるものと
後にスケジューリングされるものの2クラスを作ること
ができる。
【0047】以上で、各ブロックの機能を個別に述べ
た。以下では各ブロックがどのようにして相互に作用
し、所望の目的を達するかを説明する。図10にフロー
を示す。図10は本発明第四実施例の動作を示すフロー
チャートである。セルを読み出すコネクションの決定
(ステップ1)、当該コネクションのセルの読み出し
(ステップ2)、当該コネクションの次のセルの読み出
しスケジューリング(ステップ3)、到着セルのセルバ
ッファCB内のFIFOキューへの書込み(ステップ
4)の順で処理が行われる。
【0048】(セルの到着処理)セルの到着にともない
必要な処理は当該セルのセルバッファCBへの書込みと
当該セルの転送スケジューリングの有無の判断である。
セルのセルバッファCBへの書込み処理は既に当該セル
のコネクションのリストがセルバッファCBにあるか否
かで異なる。当該コネクションのリストがない場合はま
ず、セルバッファCB上に当該コネクションのリストが
新たに作成される。さらに、セルバッファCBの空き領
域にセルを書込む。この手順については図2を用いて詳
述したとおりである。次にセルバッファCB上に当該コ
ネクションのリストの論理的な関係を新たに作成する。
この手順についても図3を用いて詳述したとおりであ
る。
【0049】リストが既にある場合には、次のように処
理が実行され、セルバッファCB上の当該コネクション
のリストが変更される。まず、セルバッファCBの空き
領域にセルを書込む。この手順については図2を用いて
詳述したとおりである。次に、セルバッファCB上の当
該コネクションのリストの論理的な関係を変更する。こ
の手順についても図3を用いて詳述したとおりである。
【0050】セルの転送スケジューリングの有無は当該
セルのコネクションがトークンTkを持つか否かで決ま
る。セルが到着するとヘッダに搭載されているコネクシ
ョン識別子を元にコネクションテーブルCTを検索す
る。
【0051】トークンTkがセットされていなければ、
その時点では当該セルの転送スケジューリングは行われ
ず、当該コネクションのその時点の末尾のセルが転送さ
れた時点でスケジューリングされる。これについてはセ
ル読み出し処理の項で詳細に説明する。
【0052】トークンTkがセットされていれば、現時
刻を示すタイマTimでアドレッシングしてスケジュー
リングテーブルを検索する。以降の処理はその時刻に既
にスケジューリングされたコネクションがあるか否かで
異なる。
【0053】スケジューリングされたコネクションがな
い場合はつぎのように処理が実行され、同時到着コネク
ションリストSL上にタイマTimが示す現時刻に転送
されることになっているセルのリストが新たに作成され
る。まず、同時到着コネクションリストSLの空き領域
に当該コネクション識別子を書き込む。次に同時到着コ
ネクションリストSL上にタイマTimが示す現時刻に
転送されることになっているセルのリストの論理的な関
係を新たに作成する。この手順については図8を用いて
詳述したとおりである。
【0054】既にスケジューリングされたコネクション
がある場合はつぎのように処理が実行され、同時到着コ
ネクションリストSL上にタイマTimが示す現時刻に
転送されることになっているセルのリストが変更され
る。まず、同時到着コネクションリストSLの空き領域
に当該コネクション識別子を書込む。次に同時到着コネ
クションリストSL上のタイマTimが示す現時刻に転
送されることになっているセルのリストの論理的な関係
を変更する。この手順についても図8を用いて詳述した
とおりである。
【0055】上で説明したとおりにトークンTkがセッ
トされている場合には当該セルはタイマTimが示す現
時刻にスケジューリングされるが、スケジューリングテ
ーブルSTを処理中の仮想タイマHTimが示す仮想時
刻が遅れている場合には当該セルを転送したい場合もあ
る。この場合は仮想タイマHTimが示す時刻でスケジ
ューリングテーブルSTをアドレッシングし、その番地
のポインタヘッドheadが示すリストの先頭に当該セ
ルのコネクション識別子を追加する。
【0056】(セルの読み出し処理)セルの読み出しに
ともない必要な処理はセルを読み出すコネクションの決
定とセルの読み出しと次のセルのスケジューリングであ
る。コネクションの決定は仮想タイマHTimが示す仮
想時刻に転送することになっているセルがあるか否かで
異なる。転送するセルがない場合には、仮想タイマHT
imを一単位時間毎進め、その都度その時刻に転送する
セルがあるか否かを検査する。転送するセルが見つかる
まで仮想タイマHTimは通常の速度より速く進める。
所定の時間だけ進めて見つからない場合はセルの読み出
しを諦める。この処理をより効率的に実行するにはスケ
ジューリングテーブルSTにもリストの概念を導入すれ
ばよい。これについては一単位時間内に行う処理の項で
説明する。所定の時間内に転送するセルが見つかった場
合は以降の処理は転送するセルがある場合と共通であ
る。
【0057】転送するセルがある場合は、この時刻に読
み出すコネクションを決定する。つまり、この時刻にス
ケジューリングされたコネクション識別子を同時到着コ
ネクションリストSLから取り出す。この手順について
は図9を用いて詳述したとおりである。
【0058】次に、当該コネクションのセルをセルバッ
ファCBから読み出す。セルのセルバッファCBからの
読み出し処理は当該コネクションのセルがセルバッファ
CBにあるか否かで処理が異なる。先に決定されたコネ
クション識別子を元にコネクションテーブルCTをアク
セスする。
【0059】当該コネクションのセルがセルバッファC
Bにない場合はコネクションテーブルCTのトークンT
kをセットするだけで、セルバッファCBからのセルの
読み出しは実行しない。
【0060】当該コネクションのセルがセルバッファC
Bにある場合はセルを取り出す。この処理については先
にセルバッファCBの項で詳述したとおりである。
【0061】次のセルのスケジューリング処理は当該コ
ネクションのトークンTkがセットされているか否かで
異なる。先に決定されたコネクション識別子を元にコネ
クションテーブルCTをアクセスする。
【0062】コネクションテーブルCTのトークンTk
がセットされている場合には次に当該コネクションのセ
ルが到着したときに、当該コネクションのスケジューリ
ングが行われる。これについてはセルの到着処理の項で
詳述したとおりである。
【0063】コネクションテーブルCTのトークンTk
がセットされていない場合にはコネクションテーブルC
Tにある当該コネクションの最小セル間隔Intをタイ
マTimが計時する現時刻に加えたものを次のセルの転
送時刻として当該コネクションをスケジューリングす
る。つまり、Int+Timとなるようにスケジューリ
ングテーブルSTをアドレッシングし、そのポインタヘ
ッドheadが示す同時到着コネクションリストSL上
の時刻Int+Timにスケジューリングされたセルの
コネクション識別子のリストに当該コネクション識別子
を追加する。この追加の処理については先に同時到着コ
ネクションリストSLの説明の項で詳述したので省略す
る。ここでセルの転送スケジューリングは仮想タイマH
Timでなくて現在の時刻を示すタイマTimを用いて
いるので、当該コネクションのセル送出間隔Intは所
定のセル送出間隔Intより厳密に小さくならないこと
に注意する。同時刻にスケジューリングされたセル同士
の揺らぎを許容すれば、Int+HTimの時刻にスケ
ジューリングすれば当該コネクションはより早く転送す
ることができる。スケジューリングテーブルSTへの登
録はセルの到着処理の項でトークンTkがセットされて
いないときとほぼ同等である。
【0064】(第五実施例)次に、本発明第五実施例を
図11を参照して説明する。図11は本発明第五実施例
の要部構成図である。一単位時間は出力回線上にセルを
転送するのに必要な時間である。一単位時間内にはセル
の到着処理、セルの読み出し処理をこの順番で行う。本
発明第五実施例は、スケジューリングテーブルSTの処
理対象番地を示す仮想タイマHTimを現時刻を示すタ
イマTimに効率的に追い付かせるためのものである。
前述したようにタイマTimは常に正確に現時刻を示す
のに対し、同時到着コネクションリストSLが同一時刻
に読み出すようにスケジューリングされた複数のセルを
セルバッファCBから読み出す間は仮想タイマHTim
は同じ時刻を示したままになる。同一時刻に多量のコネ
クションがスケジューリングされたとき、仮想タイマH
TimとタイマTimの時間差が大きくなる。仮想HT
imが示す時刻にスケジューリングされたセルの読み出
し処理が完了した後に仮想HTimに追い付くのに時間
がかかる。
【0065】そこで本発明第五実施例においてはスケジ
ューリングテーブルSTの各時刻のエントリーにポイン
タフィールドを導入し、セルが送出すべき時刻のリスト
を組むことで効率的に仮想タイマHTimに追い付くよ
うにしている。
【0066】図11においてはセルを送出すべき時刻の
リストがスケジューリングテーブルST上に構成されて
おり、リストの先頭は仮想タイマHTimが示す番地で
あり、末尾は追従タイマTTimが示す番地である。ス
ケジューリングテーブルSTにはポインタで指示する関
係でセルを送出すべき時刻のリストが論理的に構成され
ている。つまり、仮想タイマHTimが示す番地でスケ
ジューリングテーブルSTをアドレッシングし、仮想タ
イマHTimのその番地のポインタが示す番地リストを
順次手繰ることによりセルを読み出すことになっている
時刻を順次アクセスすることができる。
【0067】初期状態としては仮想タイマHTim、追
従タイマTTim、タイマTimは共に同じ時刻を示す
が、ある時刻において同一時刻にスケジューリングされ
たセルが複数あると、仮想タイマHTimは遅れ出し相
対的にタイマTimが先行する。仮想タイマHTimと
タイマTimがずれても新たにセルの到着がなくかつタ
イマTimがセルのスケジューリングされた時刻を指す
ことがなければ、その間、追従タイマTTimは仮想タ
イマHTimと同じ時刻を示す。
【0068】新たにセルの到着があったとすると、追従
タイマTTimが示すスケジューリングテーブルSTの
番地のポインタにタイマTimが示す番地を書込み、追
従タイマTTimにもその番地を示す。タイマTimが
セルのスケジューリングされた時刻を指したときも同じ
処理を行い、セルを読み出すことになっている時刻のリ
ストに現時刻を追加する。
【0069】(第六実施例)次に、本発明第六実施例を
図12を参照して説明する。図12は本発明第六実施例
の要部構成図である。本発明第六実施例は、コネクショ
ン毎にセルバッファCB内セル数の制限を与え、コネク
ション間の品質の影響を低減するものである。本発明に
おいてはセルバッファCBは共通バッファなので特定の
コネクションのセルが過剰に到着した場合にはセルバッ
ファCBを占有してしまい、他のコネクションの品質へ
悪影響が及ぶ危険がある。本発明第六実施例はこのよう
な場合に特定のコネクションがセルバッファCBを占有
しないようにコネクション毎にセルバッファCBに入り
得るセル数を制限するものである。
【0070】セルをセルバッファCBに書込む前にコネ
クションテーブルCTのQlenフィールドとBlen
フィールドを比較し、Qlenフィールドが小さい場合
にはセルバッファCBに書込むと同時にQlenを“+
1”する。Qlenフィールドが小さくない場合にはセ
ルをセルバッファCBに書込むのを禁止する。また、セ
ルをセルバッファCBから読み出す場合にはQlenフ
ィールドの値を“−1”する。Qlenフィールドは当
該コネクションのセルバッファCB内のセル数を示し、
Blenフィールドは当該コネクションの許容されるセ
ルバッファCB内のセル数を示す。
【0071】(第七実施例)次に、本発明第七実施例を
図13を参照して説明する。図13は本発明第七実施例
の要部構成図である。本発明第七実施例は、コネクショ
ンのスケジューリングに優先権の概念を導入したもので
ある。前述したように同一時刻にスケジューリングされ
るコネクション識別子は先着順FIFOで読み出される
ことになる。また、同一時刻にスケジューリングされる
コネクション識別子はセル送出間隔Intが短いほど後
でリストに組み込まれるため、セル送出間隔Intが短
いほど、逆にいうと、セル速度が速いほど後ろにスケジ
ューリングされる。コネクション識別子を組み込む位置
を同一時刻でスケジューリングされているコネクション
識別子のリストのポインタヘッドheadにすることに
より、同一時刻にスケジューリングされるコネクション
識別子は後着順LIFOで読み出される。このようにす
ると速度が速いコネクションほど速く読み出されること
になる。また、コネクション毎にコネクション識別子を
組み込む位置を同一時刻でスケジューリングされている
コネクション識別子のリストのポインタテイルtail
かポインタヘッドheadのいずれかを決めておけば、
コネクションを2つのクラスに分類することができる。
すなわち、同一時刻にスケジューリングされたコネクシ
ョンの中で先にスケジューリングされるものと後にスケ
ジューリングされるものの2クラスを作ることができ
る。
【0072】コネクションテーブルCTにはコネクショ
ン毎の優先権の高低を表示するフィールドPriが設け
られている。同時到着コネクションリストSL上の同一
時刻にスケジューリングされたコネクション識別子のリ
ストに要素を追加するときに、その要素のコネクション
識別子に該当するコネクションテーブルCTのフィール
ドPriが高優先であれば、スケジューリングテーブル
STのポインタヘッドheadが指す位置に新しい要素
を追加し、低優先であれば、スケジューリングテーブル
STのポインタテイルtailが指す位置に新しい要素
を追加する。
【0073】これまでの説明では全ての実施例において
同時到着コネクションリストSLにコネクション識別子
を記載していたが、その代わりにコネクションテーブル
CTのアドレスを記載することも可能である。
【0074】
【発明の効果】以上説明したように、本発明によれば、
コネクション数が増大しても比較的妥当なハードウェア
規模でトラヒックシェイピングを実現することができ
る。さらに、同一スロット(時刻)にスケジューリング
された複数のセルを転送することができる。したがっ
て、スループットの高いATM通信網を実現することが
できる。
【0075】すなわち、本発明のトラヒックシェイピン
グ装置はセルバッファにはコネクション毎にリストを構
成しているため、コネクションテーブルを追加するだけ
で多量のコネクションのトラヒックシェイピングを実行
することができる。また、セルテーブルには同一時刻に
読み出すセルのコネクション識別子のリストが形成され
ており、スケジューリングテーブルの処理対象を示すタ
イマが示すアドレスから順次読み出すことにより、スケ
ジューリングされたとおりの順番でコネクションのセル
を読み出すことにより、同一スロットで競合が起きた場
合でもセルを廃棄することなくスケジューリングするこ
とができる。
【図面の簡単な説明】
【図1】本発明第一実施例の要部構成図。
【図2】セルバッファへのセル書込み動作を示す図。
【図3】コネクションリストの組み換え処理を示す図。
【図4】セルバッファからセルを取り出す動作を示す
図。
【図5】本発明第二実施例の要部構成図。
【図6】本発明第三実施例の要部構成図。
【図7】本発明第四実施例の要部構成図。
【図8】コネクション識別子を同時到着コネクションリ
ストに書込む動作を示す図。
【図9】コネクション識別子を同時到着コネクションリ
ストから取り出す動作を示す図。
【図10】本発明第四実施例の動作を示すフローチャー
ト。
【図11】本発明第五実施例の要部構成図。
【図12】本発明第六実施例の要部構成図。
【図13】本発明第七実施例の要部構成図。
【図14】ATM通信網の全体構成の概念とトラヒック
シェイピング装置を示す図。
【図15】トラヒックシェイピング装置の概念図。
【符号の説明】
CB セルバッファ Cell メモリ領域 CT コネクションテーブル head ポインタヘッド HTim 仮想タイマ Int セル送出間隔 IN 入力端子 OUT 出力端子 Ptr ポインタ領域 SL 同時到着コネクションリスト ST スケジューリングテーブル tail ポインタテイル Tim タイマ Tk トークン TS トラヒックシェイピング部 TTim 追従タイマ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 長谷川 治久 東京都千代田区内幸町一丁目1番6号 日本電信電話株式会社内 (56)参考文献 特開 平4−98938(JP,A) 特開 平7−135503(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04L 12/28,12/56

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 非同期転送モード(ATM)通信網内に
    備えられ、セル流が到来する入力端子と、到着したセル
    を一時蓄積するセルバッファと、指示されるセル送出間
    隔にしたがってこのセルバッファからセルを読み出すト
    ラヒックシェイピング部とを備えたトラヒックシェイピ
    ング装置において、 コネクション識別子(VPI/VCI)をアドレスとし
    前記セル送出間隔が保証すべき最小値(Int)を含む
    コネクション情報を保持するコネクションテーブルを備
    え、 前記セルバッファは、セルが一つずつ収容される複数の
    第1のメモリ領域と、この第1のメモリ領域と前記コネ
    クションテーブルとを対応させるポインタ値(Ptr)
    を示す第1のポインタ領域とを含み、 前記コネクション情報には、コネクション識別子対応に
    同一のコネクション識別子を有するセルの先頭および末
    尾が収容される前記第1のメモリ領域のポインタ値を含
    み、前記ポインタ値により前記セルバッファに蓄積され
    た複数のセルが第1のチェインを構成し、 セル送出間隔を計数するため現在時刻を計時するタイマ
    と、このタイマとそれぞれのコネクションの実際のセル
    送出時刻を基準に、前記セル送出間隔が保証すべき最小
    値(Int)を保証して、次セルのセル送出予定時刻に
    送出すべきコネクション識別子(VPI/VCI)を
    ケジューリングする手段と、前記コネクション識別子(VPI/VCI)を収容する
    複数の第2のメモリ領域と、この第2のメモリ領域に対
    応して設けられたメモリ領域に付与されたポインタ値を
    示す第2のポインタ領域とを含む同時到着コネクション
    リストとを備え セル送出予定時刻が同一となった複数のコネクション識
    別子(VPI/VCI)が前記同時到着コネクションリ
    ストに備えられた前記第2のメモリ領域に各々収容さ
    れ、そのメモリ領域に対応する前記第2のポインタ領域
    に設定されたポインタ値により前記複数の第2のメモリ
    領域に設定された複数のコネクション識別子が第2のチ
    ェインを構成し、 前記スケジューリングする手段は、前記第2のチェイン
    の先頭および末尾が収 容される前記第2のポインタ領域
    を示すポインタ値を保持する手段と、前記第2のチェイ
    ンにしたがって 重複するセル送出予定時刻を順次ずらし
    て送出させるようにスケジューリングする手段を含むこ
    とを特徴とするトラヒックシェイピング装置。
  2. 【請求項2】 前記スケジューリングする手段は、前記
    セル送出予定時刻が重複する複数のセルについて全部の
    送出が完了するまで計時を中止する仮想タイマを前記現
    在時刻を計時するタイマとは別に備えた請求項1記載の
    トラヒックシェイピング装置。
  3. 【請求項3】 前記コネクション情報には、セル送出順
    位についての優先権情報を含む請求項1または2に記載
    のトラヒックシェイピング装置。
JP19772895A 1995-08-02 1995-08-02 トラヒックシェイピング装置 Expired - Fee Related JP3287529B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP19772895A JP3287529B2 (ja) 1995-08-02 1995-08-02 トラヒックシェイピング装置
EP96925120A EP0812083B1 (en) 1995-08-02 1996-07-29 Dynamic rate controller
DE69637027T DE69637027T2 (de) 1995-08-02 1996-07-29 Steuereinrichtung für dynamische übertragungsraten
PCT/JP1996/002131 WO1997005724A1 (fr) 1995-08-02 1996-07-29 Unite de commande de vitesse dynamique
US08/825,936 US6046983A (en) 1995-08-02 1997-04-01 Dynamic rate control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19772895A JP3287529B2 (ja) 1995-08-02 1995-08-02 トラヒックシェイピング装置

Publications (2)

Publication Number Publication Date
JPH0946354A JPH0946354A (ja) 1997-02-14
JP3287529B2 true JP3287529B2 (ja) 2002-06-04

Family

ID=16379361

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19772895A Expired - Fee Related JP3287529B2 (ja) 1995-08-02 1995-08-02 トラヒックシェイピング装置

Country Status (1)

Country Link
JP (1) JP3287529B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5491282B2 (ja) * 2010-05-26 2014-05-14 日本電信電話株式会社 データ入出力装置、データ記憶方法及びプログラム

Also Published As

Publication number Publication date
JPH0946354A (ja) 1997-02-14

Similar Documents

Publication Publication Date Title
US6256315B1 (en) Network to network priority frame dequeuing
US5859835A (en) Traffic scheduling system and method for packet-switched networks
US7619969B2 (en) Hardware self-sorting scheduling queue
US7372857B1 (en) Methods and apparatus for scheduling tasks
US6389019B1 (en) Time-based scheduler architecture and method for ATM networks
US6175570B1 (en) Method and an apparatus for shaping the output traffic in a fixed length cell switching network node
US6704321B1 (en) Traffic shaper
JP3438651B2 (ja) パケット多重装置
US6262989B1 (en) Apparatus and method for providing different quality of service connections in a tunnel mode
KR19990087972A (ko) 버퍼관리를통한속도보증
CA2060432C (en) Method for monitoring and smoothing data streams that are transmitted asynchronously
US6594270B1 (en) Ageing of data packets using queue pointers
US20040218592A1 (en) Method and apparatus for fast contention-free, buffer management in a multi-lane communication system
JP4530806B2 (ja) パケット伝送装置
JP2820106B2 (ja) トラヒックシェーパ装置
JP3157113B2 (ja) トラヒックシェイパー装置
US6490629B1 (en) System and method for scheduling the transmission of packet objects having quality of service requirements
JP3287529B2 (ja) トラヒックシェイピング装置
CN115086239A (zh) 一种共享式tsn整形调度装置
US5920564A (en) Method and apparatus for direct memory access on transmit complete
US7142547B2 (en) Scheduling device and cell communication device
JP2000299686A (ja) スケジューリング装置
JP3185751B2 (ja) Atm通信装置
JP2756766B2 (ja) セル優先処理装置
JPH04369139A (ja) Atmトラヒック制御方式

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090315

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees