JP3375191B2 - スループットシェイピング装置、交換システムおよびスループットシェイピング方法 - Google Patents
スループットシェイピング装置、交換システムおよびスループットシェイピング方法Info
- Publication number
- JP3375191B2 JP3375191B2 JP03155494A JP3155494A JP3375191B2 JP 3375191 B2 JP3375191 B2 JP 3375191B2 JP 03155494 A JP03155494 A JP 03155494A JP 3155494 A JP3155494 A JP 3155494A JP 3375191 B2 JP3375191 B2 JP 3375191B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- input
- link
- transmission
- unit
- 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
Landscapes
- Use Of Switch Circuits For Exchanges And Methods Of Control Of Multiplex Exchanges (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
【0001】
【産業上の利用分野】本発明は、パケット交換網または
ATM交換網の入口または網内各ノードの出口におい
て、パケットまたはセル送出時のスループットをリンク
毎に制限することを可能とするシェイピング装置、交換
システムおよびスループットシェイピング方法に関す
る。
ATM交換網の入口または網内各ノードの出口におい
て、パケットまたはセル送出時のスループットをリンク
毎に制限することを可能とするシェイピング装置、交換
システムおよびスループットシェイピング方法に関す
る。
【0002】
【従来の技術】ATM(Asynchronous Transfer Mode)
において、VC(バーチャルチャネル)やVP(バーチ
ャルパス)の転送品質を保証するために、トラヒック特
性は、あらかじめ定められているトラヒック記述子に記
載された条件を守ったものであることが必要である。し
かし、複数のVC間でのバーストレベルやセルレベルの
到着関係の影響により各網内のVCの短時間的トラヒッ
クが、トラヒック記述子の条件を守らないことがある。
これを解決するための従来技術としては、電子情報通信
学会技術報告エスエスイー(SSE)91−186の第
91頁から第96頁に示されている技術がある。この従
来技術においては、全ての網内VPの発側終端点におい
て、各VPのセル流を、規定されたトラヒック記述子に
反しないように制御(このような制御をシェイピングと
いう)するために、入力されたセルをVP毎のバッファ
に振り分け、トラヒック記述子の条件を守るように、こ
のバッファ群から出力すべきセルを選択する方法が提案
されている。また、シェイピング機能を備えるATM通
信システムについては、特開平4−100451号公
報、特開平3−150944号公報に示される技術があ
る。
において、VC(バーチャルチャネル)やVP(バーチ
ャルパス)の転送品質を保証するために、トラヒック特
性は、あらかじめ定められているトラヒック記述子に記
載された条件を守ったものであることが必要である。し
かし、複数のVC間でのバーストレベルやセルレベルの
到着関係の影響により各網内のVCの短時間的トラヒッ
クが、トラヒック記述子の条件を守らないことがある。
これを解決するための従来技術としては、電子情報通信
学会技術報告エスエスイー(SSE)91−186の第
91頁から第96頁に示されている技術がある。この従
来技術においては、全ての網内VPの発側終端点におい
て、各VPのセル流を、規定されたトラヒック記述子に
反しないように制御(このような制御をシェイピングと
いう)するために、入力されたセルをVP毎のバッファ
に振り分け、トラヒック記述子の条件を守るように、こ
のバッファ群から出力すべきセルを選択する方法が提案
されている。また、シェイピング機能を備えるATM通
信システムについては、特開平4−100451号公
報、特開平3−150944号公報に示される技術があ
る。
【0003】
【発明が解決しようとする課題】上述した従来技術のシ
ェイピングは、シェイピング対象の全リンク(VP)の
セルを平等な判定論理で送出選択する必要がある。すな
わち、バッファのすべてから平等な判定論理で1個のセ
ルを選択するために、全バッファをスキャンしてバッフ
ァ内のセル有無判定、および、セル有時のセル送出可否
判定等を行う必要が生じる。特開平4−100451号
公報に示される技術では、対象リンク数を制限すること
で処理速度を向上させようとしているが、一般的には、
1セルの送出選択のために全リンク数分のバッファテー
ブルのスキャンを必要とするため、リンク数の多い広帯
域システムに適用すると処理速度がネックとなる問題点
がある。
ェイピングは、シェイピング対象の全リンク(VP)の
セルを平等な判定論理で送出選択する必要がある。すな
わち、バッファのすべてから平等な判定論理で1個のセ
ルを選択するために、全バッファをスキャンしてバッフ
ァ内のセル有無判定、および、セル有時のセル送出可否
判定等を行う必要が生じる。特開平4−100451号
公報に示される技術では、対象リンク数を制限すること
で処理速度を向上させようとしているが、一般的には、
1セルの送出選択のために全リンク数分のバッファテー
ブルのスキャンを必要とするため、リンク数の多い広帯
域システムに適用すると処理速度がネックとなる問題点
がある。
【0004】本発明の目的は、この問題を解決し、高速
広帯域システムに適用できるシェイピング装置、交換シ
ステムおよびスループットシェイピング方法を実現する
ことにある。
広帯域システムに適用できるシェイピング装置、交換シ
ステムおよびスループットシェイピング方法を実現する
ことにある。
【0005】
【課題を解決するための手段】本発明では、課題を解決
する手段として従来技術のようなテーブルスキャンが不
要な構成をとるものである。
する手段として従来技術のようなテーブルスキャンが不
要な構成をとるものである。
【0006】このため、入力されたパケットの送出を、
あらかじめ定められた多重化論理単位であるリンクごと
に、あらかじめ定められたスループットの上限に従いシ
ェイピングを行なうスループットシェイピング装置であ
って、前記入力されたパケットを入力順に保持する保持
部と、前記保持部に保持する順に、前記パケットが送出
すべきパケットか否かを前記スループットの上限に基づ
いて判断する送出可否判断部と、前記送出可否判断部に
より送出すべきでないと判断されたパケットの送出を待
ち合わせるために、当該パケットを前記保持部に保持す
るパケットの最後尾に移行させる送出順制御部とを設け
る。
あらかじめ定められた多重化論理単位であるリンクごと
に、あらかじめ定められたスループットの上限に従いシ
ェイピングを行なうスループットシェイピング装置であ
って、前記入力されたパケットを入力順に保持する保持
部と、前記保持部に保持する順に、前記パケットが送出
すべきパケットか否かを前記スループットの上限に基づ
いて判断する送出可否判断部と、前記送出可否判断部に
より送出すべきでないと判断されたパケットの送出を待
ち合わせるために、当該パケットを前記保持部に保持す
るパケットの最後尾に移行させる送出順制御部とを設け
る。
【0007】また、入力されたパケットの送出を、あら
かじめ定められた多重化論理単位であるリンクごとに、
あらかじめ定められたスループットの上限に従いシェイ
ピングを行なうスループットシェイピング装置であっ
て、前記入力されたパケットを入力順に記憶するパケッ
ト記憶手段と、前記入力したパケットについてのあらか
じめ定められたリンクの識別情報と、前記パケットを記
憶した前記パケット記憶手段のアドレスとをパケット制
御データとして生成し、前記パケット記憶手段に前記パ
ケットを書き込む書き込み制御部と、前記書き込み制御
部で生成されたパケット制御データを入力順に保持し、
前記パケットが送出すべきパケットか否かを前記スルー
プットの上限に基づいて判断し、送出すべきでないと判
断されたパケットの送出を遅延させるシェイピング制御
部と、前記シェイピング制御部により送出すべきパケッ
トであると判断されたときに前記パケット記憶手段から
パケットを読み出す読みだし制御部とを設けるようにし
てもよい。
かじめ定められた多重化論理単位であるリンクごとに、
あらかじめ定められたスループットの上限に従いシェイ
ピングを行なうスループットシェイピング装置であっ
て、前記入力されたパケットを入力順に記憶するパケッ
ト記憶手段と、前記入力したパケットについてのあらか
じめ定められたリンクの識別情報と、前記パケットを記
憶した前記パケット記憶手段のアドレスとをパケット制
御データとして生成し、前記パケット記憶手段に前記パ
ケットを書き込む書き込み制御部と、前記書き込み制御
部で生成されたパケット制御データを入力順に保持し、
前記パケットが送出すべきパケットか否かを前記スルー
プットの上限に基づいて判断し、送出すべきでないと判
断されたパケットの送出を遅延させるシェイピング制御
部と、前記シェイピング制御部により送出すべきパケッ
トであると判断されたときに前記パケット記憶手段から
パケットを読み出す読みだし制御部とを設けるようにし
てもよい。
【0008】
【作用】送出順制御部は、送出可否判断部により送出す
べきでないと判断されたパケットの送出を待ち合わせる
ために、当該パケットを保持部に保持するパケットの最
後尾に移行させる。送出可否判断部は、保持部に保持す
る順に、前記パケットが送出すべきパケットか否かを前
記スループットの上限に基づいて判断する。
べきでないと判断されたパケットの送出を待ち合わせる
ために、当該パケットを保持部に保持するパケットの最
後尾に移行させる。送出可否判断部は、保持部に保持す
る順に、前記パケットが送出すべきパケットか否かを前
記スループットの上限に基づいて判断する。
【0009】送出可否判断は、先頭抽出手段により、当
該装置に存在する入力されたパケットのうちリンクごと
により先に入力された先頭パケットを抽出し、前記スル
ープットの上限として、パケットの送出間隔をあらかじ
め定めて記憶する送出間隔記憶手段を参照して、前記リ
ンクごとの送出間隔が、前記送出間隔記憶手段に記憶す
る送出間隔以上であれば、送出すべきであると判断す
る。
該装置に存在する入力されたパケットのうちリンクごと
により先に入力された先頭パケットを抽出し、前記スル
ープットの上限として、パケットの送出間隔をあらかじ
め定めて記憶する送出間隔記憶手段を参照して、前記リ
ンクごとの送出間隔が、前記送出間隔記憶手段に記憶す
る送出間隔以上であれば、送出すべきであると判断す
る。
【0010】先頭抽出手段における先頭パケットの抽出
方法としては、以下に示す2つの方法がある。
方法としては、以下に示す2つの方法がある。
【0011】1つめは、前記先頭抽出手段において、前
記リンクごとにパケットが入力された順序番号を前記入
力されたパケットに付加する入力順序番号管理手段と、
前記リンクごとにパケットが送出された順序番号を保持
する出力順序番号管理手段とを備えることにより、前記
先頭パケットの抽出を、前記パケットに付加された入力
順序番号と前記出力順序番号管理手段に保持する出力順
序番号とに基づいて行なう方法である。この場合、保持
部内のパケットのすべてに、リンク別の順序番号が割り
当てられる。例えば、入力順序番号管理部は、前記パケ
ットの入力に従って前記入力順序番号を更新し、前記出
力順序番号管理部は、前記パケットの送出に従って前記
出力順序番号を更新することにより、送出すべきパケッ
トは、リンク別の最若番の順序番号を持つパケットであ
り、出力順序番号管理手段はその最若番の順序番号を保
持している。このため、前記パケットに付加された入力
順序番号と前記出力順序番号管理手段に保持する出力順
序番号とが一致したときに当該パケットを先頭パケット
として抽出することができる。
記リンクごとにパケットが入力された順序番号を前記入
力されたパケットに付加する入力順序番号管理手段と、
前記リンクごとにパケットが送出された順序番号を保持
する出力順序番号管理手段とを備えることにより、前記
先頭パケットの抽出を、前記パケットに付加された入力
順序番号と前記出力順序番号管理手段に保持する出力順
序番号とに基づいて行なう方法である。この場合、保持
部内のパケットのすべてに、リンク別の順序番号が割り
当てられる。例えば、入力順序番号管理部は、前記パケ
ットの入力に従って前記入力順序番号を更新し、前記出
力順序番号管理部は、前記パケットの送出に従って前記
出力順序番号を更新することにより、送出すべきパケッ
トは、リンク別の最若番の順序番号を持つパケットであ
り、出力順序番号管理手段はその最若番の順序番号を保
持している。このため、前記パケットに付加された入力
順序番号と前記出力順序番号管理手段に保持する出力順
序番号とが一致したときに当該パケットを先頭パケット
として抽出することができる。
【0012】また、先頭パケットを抽出する2つめの方
法としては、前記保持部の前段に設けられ、入力された
パケットをリンクごとに入力順に保持するFIFO(Fi
rstIn First Out)などのリンク別保持手段と、前記リ
ンク別保持手段に保持する先頭パケットに対して、前記
保持部においてリンクごとに1つのパケットが保持され
るように、前記保持部への入力を許可する入力許可手段
とを設けておき、入力許可手段において、前記送出可否
判断部においてパケットが送出されたときに、前記リン
ク別保持手段に保持する当該リンクの先頭パケットがあ
る場合には当該先頭パケットに対して入力を許可し、ま
た、前記リンク別保持手段に先頭パケットが入力したと
きに前記保持部において保持されている当該リンクのパ
ケットがないときには、当該先頭パケットに対して前記
保持部への入力を許可することにより先頭パケットだけ
を保持部に入力することができる。この場合、入力許可
手段は、トークンなどの入力を許可することを示す入力
許可権を管理したり、パケットが保持部に入力している
ことを示すフラグを用いることにより入力を許可するこ
とができる。
法としては、前記保持部の前段に設けられ、入力された
パケットをリンクごとに入力順に保持するFIFO(Fi
rstIn First Out)などのリンク別保持手段と、前記リ
ンク別保持手段に保持する先頭パケットに対して、前記
保持部においてリンクごとに1つのパケットが保持され
るように、前記保持部への入力を許可する入力許可手段
とを設けておき、入力許可手段において、前記送出可否
判断部においてパケットが送出されたときに、前記リン
ク別保持手段に保持する当該リンクの先頭パケットがあ
る場合には当該先頭パケットに対して入力を許可し、ま
た、前記リンク別保持手段に先頭パケットが入力したと
きに前記保持部において保持されている当該リンクのパ
ケットがないときには、当該先頭パケットに対して前記
保持部への入力を許可することにより先頭パケットだけ
を保持部に入力することができる。この場合、入力許可
手段は、トークンなどの入力を許可することを示す入力
許可権を管理したり、パケットが保持部に入力している
ことを示すフラグを用いることにより入力を許可するこ
とができる。
【0013】また、送出可否を送出間隔により求める方
法としては、以下に示す2つの方法を取ることができ
る。
法としては、以下に示す2つの方法を取ることができ
る。
【0014】1つめの方法としては、リンクごとに前記
保持部における送出の待ち合せ回数を管理する待合せ回
数管理手段を備えることにより、待合せ回数管理手段に
おいて、前記送出可否判断部においてパケットが送出さ
れたときに、当該パケットのリンクに対応する、前記送
出間隔記憶手段に記憶する送出間隔を待合せ回数として
プリセットし、前記送出可否判断部においてパケットが
送出不可と判断されたときに、前記待合せ回数を1減算
し、前記送出可否判断部は、前記待合せ回数が0になっ
たときに当該パケットを送出すべきであると判断する。
保持部における送出の待ち合せ回数を管理する待合せ回
数管理手段を備えることにより、待合せ回数管理手段に
おいて、前記送出可否判断部においてパケットが送出さ
れたときに、当該パケットのリンクに対応する、前記送
出間隔記憶手段に記憶する送出間隔を待合せ回数として
プリセットし、前記送出可否判断部においてパケットが
送出不可と判断されたときに、前記待合せ回数を1減算
し、前記送出可否判断部は、前記待合せ回数が0になっ
たときに当該パケットを送出すべきであると判断する。
【0015】また、2つめの方法としては、リンクごと
に、前記パケットが送出されたときの前記現在時刻確認
部における現在時刻を最終送出時刻として記録する最終
送出時刻記録手段を備え、前記リンクごとの送出間隔を
求めるために、前記最終送出時刻記録手段に記録してい
る最終送出時刻と、現在時刻確認部における現在時刻と
から送出間隔を求め、前記リンクごとの送出間隔が、送
出間隔記憶手段に記憶する送出間隔以上であれば、送出
すべきであると判断する。
に、前記パケットが送出されたときの前記現在時刻確認
部における現在時刻を最終送出時刻として記録する最終
送出時刻記録手段を備え、前記リンクごとの送出間隔を
求めるために、前記最終送出時刻記録手段に記録してい
る最終送出時刻と、現在時刻確認部における現在時刻と
から送出間隔を求め、前記リンクごとの送出間隔が、送
出間隔記憶手段に記憶する送出間隔以上であれば、送出
すべきであると判断する。
【0016】また、前記パケットを記憶するパケット記
憶手段と、前記パケットのリンクごとの識別情報と、前
記パケットを記憶した前記パケット記憶手段のアドレス
とをパケット制御データとして生成して前記保持部に入
力させる生成手段とをさらに備えることにより、前記保
持部は、前記パケットの代わりに、前記生成手段で生成
されたパケット制御データを保持し、前記送出可否判断
部は、前記パケットの代わりに、前記パケット制御デー
タにより前記判断を行なうことができる。
憶手段と、前記パケットのリンクごとの識別情報と、前
記パケットを記憶した前記パケット記憶手段のアドレス
とをパケット制御データとして生成して前記保持部に入
力させる生成手段とをさらに備えることにより、前記保
持部は、前記パケットの代わりに、前記生成手段で生成
されたパケット制御データを保持し、前記送出可否判断
部は、前記パケットの代わりに、前記パケット制御デー
タにより前記判断を行なうことができる。
【0017】以上のように、本発明においては、各リン
ク毎に設定されたスループットの上限値を守りながらパ
ケットを送出する。入力スループットが設定上限値を越
えているときは、その入力を廃棄するのではなく、遅延
させてそのリンクのパケット送出間隔を広げる制御を行
う。遅延させるために、送出すべきでないと判断された
パケットを保持部に保持するパケットの最後尾に移行さ
せて周回させるようにする。このため、送出可否を判定
する際に保持部内に保持するパケットに対応するリンク
についてのテーブル内容アクセスを行えばよいので、全
リンク数分のテーブルスキャンは不要となり、リンク数
の多い場合にも処理速度ネックとならない。
ク毎に設定されたスループットの上限値を守りながらパ
ケットを送出する。入力スループットが設定上限値を越
えているときは、その入力を廃棄するのではなく、遅延
させてそのリンクのパケット送出間隔を広げる制御を行
う。遅延させるために、送出すべきでないと判断された
パケットを保持部に保持するパケットの最後尾に移行さ
せて周回させるようにする。このため、送出可否を判定
する際に保持部内に保持するパケットに対応するリンク
についてのテーブル内容アクセスを行えばよいので、全
リンク数分のテーブルスキャンは不要となり、リンク数
の多い場合にも処理速度ネックとならない。
【0018】なお、本発明におけるパケットとは、宛先
情報を含むデータであり、ATMセル等も含まれる。
情報を含むデータであり、ATMセル等も含まれる。
【0019】
【実施例】以下、図面を参照して周回型スループットシ
ェイピング方法の実施例を説明する。まず、第1の実施
例における周回型スループットシェイピング方法の構成
と動作の概要とを図1から図4を参照して説明する。
ェイピング方法の実施例を説明する。まず、第1の実施
例における周回型スループットシェイピング方法の構成
と動作の概要とを図1から図4を参照して説明する。
【0020】図1は、基本的な第1の周回型スループッ
トシェイピング方法の構成と動作の概要を示したブロッ
ク図を示している。図1において、シェイピング装置
(シェイパー)は、パケットを待ち合わせるためにパケ
ットを周回させる周回部1、入力パケットおよび周回パ
ケットのうち送出すべきパケットを選択する送出選択部
2、周回部1内にパケットを入力する際、リンク別の入
力順序番号を管理するための入力順序番号管理部3、リ
ンク別に送出すべきパケットの出力順序番号を管理する
ための出力順序番号管理部4、および、リンク別に周回
中のパケットが送出を待ち合わせるべき回数を管理する
ための待合せ回数管理部5を備える。
トシェイピング方法の構成と動作の概要を示したブロッ
ク図を示している。図1において、シェイピング装置
(シェイパー)は、パケットを待ち合わせるためにパケ
ットを周回させる周回部1、入力パケットおよび周回パ
ケットのうち送出すべきパケットを選択する送出選択部
2、周回部1内にパケットを入力する際、リンク別の入
力順序番号を管理するための入力順序番号管理部3、リ
ンク別に送出すべきパケットの出力順序番号を管理する
ための出力順序番号管理部4、および、リンク別に周回
中のパケットが送出を待ち合わせるべき回数を管理する
ための待合せ回数管理部5を備える。
【0021】ここでは、VPをリンクといい、リンクご
とにトラヒック識別子があらかじめ定められているの
で、トラヒックに対するシェイピングする度合いもあら
かじめ定められている。パケットは、リンクごとに入力
した順番に出力し、出力するパケットとパケットとの出
力間隔がトラヒック識別子に対応しなければ出力をさせ
ないようにするために、周回部1において周回させるこ
とにより待ち合わせる。周回部1は、入力した順番にパ
ケットを記憶し、最も先に入力したものからパケットの
送出の判断がなされ、待合せさせる場合には、記憶して
いるパケットのうち最後部に記憶させる。待合せ回数C
(L)は、周回させる回数をリンクごとに示しており、
シェイピングの度合いにより待合せ回数管理部5に保持
する、リンクごとの待合せ回数(プリセット値)があら
かじめ定められている。送出選択部2は、リンクごと先
頭パケット(周回部1に存在するパケットのうち最も先
に入力したパケット)の待合せ回数を示すために、パケ
ット出力後、あらかじめ規定されている待合せ回数(プ
リセット値)を保持し、先頭パケットの周回ごとに待合
せ回数C(L)をカウントダウンし、C(L)が0にな
ると、あらかじめ規定された待合せ回数分、周回したこ
とになるのでパケットを出力する。もしくは、送出選択
部2は、周回した回数をカウントして周回した回数があ
らかじめ定めた待合せ回数と一致するか否かを判断する
ようにしもよい。
とにトラヒック識別子があらかじめ定められているの
で、トラヒックに対するシェイピングする度合いもあら
かじめ定められている。パケットは、リンクごとに入力
した順番に出力し、出力するパケットとパケットとの出
力間隔がトラヒック識別子に対応しなければ出力をさせ
ないようにするために、周回部1において周回させるこ
とにより待ち合わせる。周回部1は、入力した順番にパ
ケットを記憶し、最も先に入力したものからパケットの
送出の判断がなされ、待合せさせる場合には、記憶して
いるパケットのうち最後部に記憶させる。待合せ回数C
(L)は、周回させる回数をリンクごとに示しており、
シェイピングの度合いにより待合せ回数管理部5に保持
する、リンクごとの待合せ回数(プリセット値)があら
かじめ定められている。送出選択部2は、リンクごと先
頭パケット(周回部1に存在するパケットのうち最も先
に入力したパケット)の待合せ回数を示すために、パケ
ット出力後、あらかじめ規定されている待合せ回数(プ
リセット値)を保持し、先頭パケットの周回ごとに待合
せ回数C(L)をカウントダウンし、C(L)が0にな
ると、あらかじめ規定された待合せ回数分、周回したこ
とになるのでパケットを出力する。もしくは、送出選択
部2は、周回した回数をカウントして周回した回数があ
らかじめ定めた待合せ回数と一致するか否かを判断する
ようにしもよい。
【0022】入力順序番号管理部3と出力順序番号管理
部4とは、初期状態において同じ値(初期値)例えば0
を保持し、リングバッファなどにより構成される。入力
順序番号管理部3は、入力パケット到着処理を行ない、
周回部1に入力したパケットが、リンクごとに何番目に
入力したかの入力順序番号を入力パケットに付与するた
めに、リンクごとに入力パケットの個数をカウンタW
(L)により示し、入力パケットがあるとリンク別にカ
ウントアップをする。このため、周回部1にパケットが
入力すると、入力パケットのリンク番号を識別し、識別
したリンク番号に対応する入力パケットのカウント値W
(L)を参照し、カウント値W(L)を入力パケットの
入力順序番号として付与し、カウント値W(L)を1カ
ウントアップする。カウンタのカウント値が最大までカ
ウントアップされると0に戻る。これにより、周回部1
内のパケットには、リンク別の入力順序番号が割り当て
られる。最大値は、シェイピングの度合いにより十分な
容量を確保しておく。
部4とは、初期状態において同じ値(初期値)例えば0
を保持し、リングバッファなどにより構成される。入力
順序番号管理部3は、入力パケット到着処理を行ない、
周回部1に入力したパケットが、リンクごとに何番目に
入力したかの入力順序番号を入力パケットに付与するた
めに、リンクごとに入力パケットの個数をカウンタW
(L)により示し、入力パケットがあるとリンク別にカ
ウントアップをする。このため、周回部1にパケットが
入力すると、入力パケットのリンク番号を識別し、識別
したリンク番号に対応する入力パケットのカウント値W
(L)を参照し、カウント値W(L)を入力パケットの
入力順序番号として付与し、カウント値W(L)を1カ
ウントアップする。カウンタのカウント値が最大までカ
ウントアップされると0に戻る。これにより、周回部1
内のパケットには、リンク別の入力順序番号が割り当て
られる。最大値は、シェイピングの度合いにより十分な
容量を確保しておく。
【0023】出力順序番号管理部4は、周回部1から出
力するパケットが、リンクごとに何番目に出力するかの
出力順序番号を示す、リンクごとに出力パケットの個数
をカウンタR(L)により示し、出力パケットがあると
リンク別にカウントアップをする。送出選択部2では、
周回しているパケットがリンクごとに先頭のパケットで
あるかないかを判定(先頭パケット判定処理)するため
に、周回するパケットのリンク番号を識別し、識別した
リンク番号に対応する出力順序番号管理部4のカウント
値R(L)を参照し、このカウント値R(L)と、入力
時に付与されたW(L)とを比較し、比較した結果値が
等しければ、このパケットが周回部1に存在するパケッ
トのうち先頭のパケットであると判断し、一致しなけれ
ばこのパケットをさらに周回させる。また、出力順序番
号管理部4は、パケットが出力すると、カウント値R
(L)1カウントアップする。カウンタのカウント値が
最大までカウントアップされると0に戻る。最大値は、
カウント値W(L)の最大値と等しくしておく。
力するパケットが、リンクごとに何番目に出力するかの
出力順序番号を示す、リンクごとに出力パケットの個数
をカウンタR(L)により示し、出力パケットがあると
リンク別にカウントアップをする。送出選択部2では、
周回しているパケットがリンクごとに先頭のパケットで
あるかないかを判定(先頭パケット判定処理)するため
に、周回するパケットのリンク番号を識別し、識別した
リンク番号に対応する出力順序番号管理部4のカウント
値R(L)を参照し、このカウント値R(L)と、入力
時に付与されたW(L)とを比較し、比較した結果値が
等しければ、このパケットが周回部1に存在するパケッ
トのうち先頭のパケットであると判断し、一致しなけれ
ばこのパケットをさらに周回させる。また、出力順序番
号管理部4は、パケットが出力すると、カウント値R
(L)1カウントアップする。カウンタのカウント値が
最大までカウントアップされると0に戻る。最大値は、
カウント値W(L)の最大値と等しくしておく。
【0024】パケットを周回部1から送出するか否かを
判断するパケット送出可否判断処理は、送出選択部2に
おいて、先頭のパケットであると判断されたときに、待
合せ回数管理部5からの待合せ回数C(L)が0であれ
ば送出可能、0以外ならば送出不可と判断する。送出可
能な時は、このパケットを周回部1から送出して出力順
序番号管理部4の出力順序番号をカウントアップし、待
合せ回数管理部5の待合せ回数を、あらかじめ定められ
ている値にセットする。送出不可時は、待合せ回数管理
部5の待合せ回数をカウントダウンする。いずれの場合
でも、その後は、周回部1内の次のパケットに対して先
頭パケットの判定を行う。
判断するパケット送出可否判断処理は、送出選択部2に
おいて、先頭のパケットであると判断されたときに、待
合せ回数管理部5からの待合せ回数C(L)が0であれ
ば送出可能、0以外ならば送出不可と判断する。送出可
能な時は、このパケットを周回部1から送出して出力順
序番号管理部4の出力順序番号をカウントアップし、待
合せ回数管理部5の待合せ回数を、あらかじめ定められ
ている値にセットする。送出不可時は、待合せ回数管理
部5の待合せ回数をカウントダウンする。いずれの場合
でも、その後は、周回部1内の次のパケットに対して先
頭パケットの判定を行う。
【0025】つぎに、図1に示す第1の実施例における
周回型スループットシェイピング方法の動作を、図16
および図17に示すフローチャートを参照して説明す
る。また、図22に、図1における各テーブル内容の一
変化例を示す。ここではリンク番号L=1のパケットに
のみ着目して変化例を示している。
周回型スループットシェイピング方法の動作を、図16
および図17に示すフローチャートを参照して説明す
る。また、図22に、図1における各テーブル内容の一
変化例を示す。ここではリンク番号L=1のパケットに
のみ着目して変化例を示している。
【0026】本実施例においては、図16に示すよう
に、周回部1にパケットが入力した際に、入力順序番号
管理部3が入力パケット到着処理を行ない、また、図1
7に示すように、送出選択処理は送出選択部2において
行なう。
に、周回部1にパケットが入力した際に、入力順序番号
管理部3が入力パケット到着処理を行ない、また、図1
7に示すように、送出選択処理は送出選択部2において
行なう。
【0027】図22において、時刻0のときに、入力順
序番号管理部3、出力順序番号管理部4および待合せ回
数管理部5に保持する値は初期状態にある(W(1)=R
(1)=0、C(1)の待合せ回数(プリセット値)、すな
わちシェイピングの度合い=2とする)。時刻は、一定
間隔で処理される先頭パケット判定処理とパケット送出
選択処理を行なうタイミングにおける処理回数を示す。
また、入力したパケットを識別するために、説明上入力
パケットを〜として示す。
序番号管理部3、出力順序番号管理部4および待合せ回
数管理部5に保持する値は初期状態にある(W(1)=R
(1)=0、C(1)の待合せ回数(プリセット値)、すな
わちシェイピングの度合い=2とする)。時刻は、一定
間隔で処理される先頭パケット判定処理とパケット送出
選択処理を行なうタイミングにおける処理回数を示す。
また、入力したパケットを識別するために、説明上入力
パケットを〜として示す。
【0028】時刻1のときに、パケット入力(第1のパ
ケット)があると(S1610)、図16において、
入力順序番号管理部3は、入力パケットからリンク番号
Lを読み取る(S1620)。読み取ったリンク番号に
対応する入力パケットのカウント値W(L)を参照し
(S1630)、カウント値W(1)=0を入力パケッ
トの入力順序番号として付与し(S1640)、周回部
1に入力する。入力パケットに入力順序番号を付与する
方法としては、パケットのあらかじめ定めた領域に入力
順序番号を格納する方法がある。また、後述するよう
に、パケットを周回させないで、パケットのデータは記
憶手段に記憶させておいて、パケットごとに識別される
制御データを周回させる場合には、その制御データに付
加するか、またはパケットデータとともに入力順序番号
を格納しておいてもよい。その後、入力順序番号管理部
3は、カウント値W(1)を1カウントアップする(S
1650)。
ケット)があると(S1610)、図16において、
入力順序番号管理部3は、入力パケットからリンク番号
Lを読み取る(S1620)。読み取ったリンク番号に
対応する入力パケットのカウント値W(L)を参照し
(S1630)、カウント値W(1)=0を入力パケッ
トの入力順序番号として付与し(S1640)、周回部
1に入力する。入力パケットに入力順序番号を付与する
方法としては、パケットのあらかじめ定めた領域に入力
順序番号を格納する方法がある。また、後述するよう
に、パケットを周回させないで、パケットのデータは記
憶手段に記憶させておいて、パケットごとに識別される
制御データを周回させる場合には、その制御データに付
加するか、またはパケットデータとともに入力順序番号
を格納しておいてもよい。その後、入力順序番号管理部
3は、カウント値W(1)を1カウントアップする(S
1650)。
【0029】一方、時刻1のときに、送出選択部2は、
図17に示すように、送出選択開始として(S170
1)、周回するパケットに付与されているW(1)=0
を取り出し(S1702)、周回するパケットのリンク
番号L=1を読みだしておく(S1703)。つぎに、
識別したリンク番号Lに対応する出力順序番号管理部4
のカウント値R(L)を取り出し(S1704)、この
カウント値R(L)と、入力時に付与されたW(L)と
を比較する(S1705)。比較した結果、値が等しけ
れば、このパケットが周回部1に存在するパケットのう
ち先頭のパケットであると判断し(S1702)、一致
しなければこのパケットをさらに周回させ、つぎのパケ
ットの送出選択を行なう(S1706)。周回部1にお
いて第1のパケットに付与されたW(1)が0であり、
R(1)と等しいことから、この第1のパケットが、現
在、周回部1内においてL=1のリンクの先頭パケット
であることを知る。従って第1のパケットに対し送出可
否判定を行う。まず、送出可否判定では、先頭のパケッ
トであると判断されたときに、待合せ回数管理部5から
の待合せ回数C(L)を取り出す(S1707)。C
(L)が0であれば送出可能、0以外ならば送出不可と
判断する(S1708)。その結果C(1)=2≠0なの
で送出不可と判定し、周回部1から送出しない。また、
待合せ回数管理部5の待合せ回数C(1)をカウントダウ
ンし(S1709)、つぎのパケットの送出選択を行な
う(S1710)。
図17に示すように、送出選択開始として(S170
1)、周回するパケットに付与されているW(1)=0
を取り出し(S1702)、周回するパケットのリンク
番号L=1を読みだしておく(S1703)。つぎに、
識別したリンク番号Lに対応する出力順序番号管理部4
のカウント値R(L)を取り出し(S1704)、この
カウント値R(L)と、入力時に付与されたW(L)と
を比較する(S1705)。比較した結果、値が等しけ
れば、このパケットが周回部1に存在するパケットのう
ち先頭のパケットであると判断し(S1702)、一致
しなければこのパケットをさらに周回させ、つぎのパケ
ットの送出選択を行なう(S1706)。周回部1にお
いて第1のパケットに付与されたW(1)が0であり、
R(1)と等しいことから、この第1のパケットが、現
在、周回部1内においてL=1のリンクの先頭パケット
であることを知る。従って第1のパケットに対し送出可
否判定を行う。まず、送出可否判定では、先頭のパケッ
トであると判断されたときに、待合せ回数管理部5から
の待合せ回数C(L)を取り出す(S1707)。C
(L)が0であれば送出可能、0以外ならば送出不可と
判断する(S1708)。その結果C(1)=2≠0なの
で送出不可と判定し、周回部1から送出しない。また、
待合せ回数管理部5の待合せ回数C(1)をカウントダウ
ンし(S1709)、つぎのパケットの送出選択を行な
う(S1710)。
【0030】つぎに、時刻2のときには、続けてパケッ
トの入力(第2のパケット)があり、W(1)=1を第2
のパケットに付与し、W(1)の値を更新する。
トの入力(第2のパケット)があり、W(1)=1を第2
のパケットに付与し、W(1)の値を更新する。
【0031】一方、先に入力されて周回部1内にあると
ころの第1のパケットに付与されたW(1)が0であ
り、R(1)=0と等しいことから、送出選択部2は、こ
の第1のパケットが、現在、周回部1においてL=1
のリンクの先頭パケットであることを知る。従って第1
のパケットに対し送出可否判定を行う。その結果C
(1)=1≠0なので送出不可と判定し、周回部1から送
出しない。C(1)はダウンカウントされる。
ころの第1のパケットに付与されたW(1)が0であ
り、R(1)=0と等しいことから、送出選択部2は、こ
の第1のパケットが、現在、周回部1においてL=1
のリンクの先頭パケットであることを知る。従って第1
のパケットに対し送出可否判定を行う。その結果C
(1)=1≠0なので送出不可と判定し、周回部1から送
出しない。C(1)はダウンカウントされる。
【0032】また、周回部1内に存在する第2のパケッ
トに付与されたW(1)が1であり、R(1)=0と等し
くないことから、送出選択部2はこの第2のパケット
が、現在、周回部1においてL=1のリンクの先頭パケ
ットではないことを知る。従って第2のパケットに対し
送出可否判定は行わず、周回部1からの送出も行わない
で、このパケットを再び周回させる。
トに付与されたW(1)が1であり、R(1)=0と等し
くないことから、送出選択部2はこの第2のパケット
が、現在、周回部1においてL=1のリンクの先頭パケ
ットではないことを知る。従って第2のパケットに対し
送出可否判定は行わず、周回部1からの送出も行わない
で、このパケットを再び周回させる。
【0033】時刻3においては、続けてパケット入力
(第3のパケット)があり、W(1)=2を第3のパケッ
トに付与し、W(1)を3に更新する。
(第3のパケット)があり、W(1)=2を第3のパケッ
トに付与し、W(1)を3に更新する。
【0034】一方、時刻2のとき同様、先に入力されて
周回部1内にあるところの第1のパケットがL=1の
リンクの先頭パケットであることから、第1のパケット
に対し送出可否判定を行う。その結果C(1)=0なので
送出可と判定し、出力順序番号管理部4の出力順序番号
をカウントアップし(S1711)、R(1)が1に更新
される。また、待合せ回数管理部5の待合せ回数C(1)
に、あらかじめ定められているプリセット値2をセット
し(S1712)、このパケットを周回部1から送出す
る(S1713)。この時刻においては、出力パケット
が決定されたのでL=1のリンクの残りのパケットに対
する送出可否判定は行わない。この場合、もし周回部1
内に他のリンクのパケットがある場合には、先頭パケッ
トを見つけてC(L)〉0のときC(L)をダウンカウント
する。
周回部1内にあるところの第1のパケットがL=1の
リンクの先頭パケットであることから、第1のパケット
に対し送出可否判定を行う。その結果C(1)=0なので
送出可と判定し、出力順序番号管理部4の出力順序番号
をカウントアップし(S1711)、R(1)が1に更新
される。また、待合せ回数管理部5の待合せ回数C(1)
に、あらかじめ定められているプリセット値2をセット
し(S1712)、このパケットを周回部1から送出す
る(S1713)。この時刻においては、出力パケット
が決定されたのでL=1のリンクの残りのパケットに対
する送出可否判定は行わない。この場合、もし周回部1
内に他のリンクのパケットがある場合には、先頭パケッ
トを見つけてC(L)〉0のときC(L)をダウンカウント
する。
【0035】つぎに、時刻4において、新たなパケット
入力はないのでW(1)は更新されない。
入力はないのでW(1)は更新されない。
【0036】一方、周回部1内にあるところの第2のパ
ケットに付与されたW(1)が1であり、R(1)=1と
等しいことから、送出選択部2は、この第2のパケット
が、現在、周回部1においてL=1のリンクの先頭パ
ケットであることを知る。従って第2のパケットに対
し、送出可否判定を行う。その結果、C(1)=2≠0な
ので送出不可と判定し、周回部1から送出しない。C
(1)はダウンカウントされる。
ケットに付与されたW(1)が1であり、R(1)=1と
等しいことから、送出選択部2は、この第2のパケット
が、現在、周回部1においてL=1のリンクの先頭パ
ケットであることを知る。従って第2のパケットに対
し、送出可否判定を行う。その結果、C(1)=2≠0な
ので送出不可と判定し、周回部1から送出しない。C
(1)はダウンカウントされる。
【0037】また、周回部1内に存在する第3のパケッ
トに付与されたW(1)が2であり、R(1)と等しくない
ことから、送出選択部2はこの第3のパケットが、現
在、周回部1においてL=1のリンクの先頭パケットで
はないことを知る。従って第3のパケットに対し送出可
否判定は行わず、周回部1からの送出も行わない。
トに付与されたW(1)が2であり、R(1)と等しくない
ことから、送出選択部2はこの第3のパケットが、現
在、周回部1においてL=1のリンクの先頭パケットで
はないことを知る。従って第3のパケットに対し送出可
否判定は行わず、周回部1からの送出も行わない。
【0038】つぎに、時刻5において、周回部1内にあ
るところの第2のパケットに付与されたW(1)が1で
あり、R(1)=1と等しいことから、送出選択部2は、
この第2のパケットが、現在、周回部1においてL=
1のリンクの先頭パケットであることを知る。従って第
2のパケットに対し送出可否判定を行う。その結果C
(1)=1≠0なので送出不可と判定し、周回部1から送
出しない。C(1)はダウンカウントされ、C(1)=0と
なる。
るところの第2のパケットに付与されたW(1)が1で
あり、R(1)=1と等しいことから、送出選択部2は、
この第2のパケットが、現在、周回部1においてL=
1のリンクの先頭パケットであることを知る。従って第
2のパケットに対し送出可否判定を行う。その結果C
(1)=1≠0なので送出不可と判定し、周回部1から送
出しない。C(1)はダウンカウントされ、C(1)=0と
なる。
【0039】また、周回部1内に存在する第3のパケッ
トに付与されたW(1)が2であり、R(1)と等しくな
いことから、送出選択部2はこの第3のパケットが、
現在、周回部1においてL=1のリンクの先頭パケット
ではないことを知る。従って、第3のパケットに対し送
出可否判定は行わず、周回部1からの送出も行わない。
トに付与されたW(1)が2であり、R(1)と等しくな
いことから、送出選択部2はこの第3のパケットが、
現在、周回部1においてL=1のリンクの先頭パケット
ではないことを知る。従って、第3のパケットに対し送
出可否判定は行わず、周回部1からの送出も行わない。
【0040】つぎに、時刻6において、周回部1内にあ
るところの第2のパケットに付与されたW(1)が1であ
り、R(1)と等しいことから送出選択部2は、この第2
のパケットが、現在、周回部1においてL=1のリンク
の先頭パケットであることを知る。従って、第2のパケ
ットに対し送出可否判定を行う。その結果C(1)=0
なので送出可と判定し、第2のパケットを周回部1か
ら送出する。C(1)はプリセット値2がセットされる。
また、R(1)も2に更新され、第2のパケット送出後の
L=1のリンクの先頭パケットが、R(1)=2に等しい
W(1)を付与されていることを示す。
るところの第2のパケットに付与されたW(1)が1であ
り、R(1)と等しいことから送出選択部2は、この第2
のパケットが、現在、周回部1においてL=1のリンク
の先頭パケットであることを知る。従って、第2のパケ
ットに対し送出可否判定を行う。その結果C(1)=0
なので送出可と判定し、第2のパケットを周回部1か
ら送出する。C(1)はプリセット値2がセットされる。
また、R(1)も2に更新され、第2のパケット送出後の
L=1のリンクの先頭パケットが、R(1)=2に等しい
W(1)を付与されていることを示す。
【0041】この時刻においては、出力パケットが決定
されたのでL=1のリンクの残りのパケットに対する送
出可否判定は行わない。もし、周回部1内に他のリンク
のパケットがある場合には、先頭パケットを見つけてC
(L)〉0のときC(L)をダウンカウントする。
されたのでL=1のリンクの残りのパケットに対する送
出可否判定は行わない。もし、周回部1内に他のリンク
のパケットがある場合には、先頭パケットを見つけてC
(L)〉0のときC(L)をダウンカウントする。
【0042】時刻7においては、周回部1内にあるとこ
ろの第3のパケットに付与されたW(1)が2であり、
R(1)=2と等しいことから、送出選択部2は、この第
3のパケットが、現在、周回部1においてL=1のリ
ンクの先頭パケットであることを知る。従って第3のパ
ケットに対し送出可否判定を行う。その結果C(1)=2
≠0なので送出不可と判定し、周回部1から送出しな
い。C(1)はダウンカウントされる。
ろの第3のパケットに付与されたW(1)が2であり、
R(1)=2と等しいことから、送出選択部2は、この第
3のパケットが、現在、周回部1においてL=1のリ
ンクの先頭パケットであることを知る。従って第3のパ
ケットに対し送出可否判定を行う。その結果C(1)=2
≠0なので送出不可と判定し、周回部1から送出しな
い。C(1)はダウンカウントされる。
【0043】時刻8においても、時刻7のとき同様、周
回部1内にあるところの第3のパケットがL=1のリ
ンクの先頭パケットであることから、第3のパケット
に対し送出可否判定を行う。その結果、C(1)=1≠0
なので送出不可と判定し、周回部1から送出しない。C
(1)はダウンカウントされる。
回部1内にあるところの第3のパケットがL=1のリ
ンクの先頭パケットであることから、第3のパケット
に対し送出可否判定を行う。その結果、C(1)=1≠0
なので送出不可と判定し、周回部1から送出しない。C
(1)はダウンカウントされる。
【0044】時刻9においても、時刻8のとき同様、周
回部1内にあるところの第3のパケットがL=1のリ
ンクの先頭パケットであることから、第3のパケットに
対し送出可否判定を行う。その結果、C(1)=0なので
送出可と判定し、第3のパケットを周回部1から送出
する。C(1)はプリセットされる。また、R(1)も更新
されて第3のパケット送出後のL=1のリンクの先頭パ
ケットがR(1)=3に等しいW(1)を付与されているこ
とを示す。すなわち、さらに続けて第4のパケットが入
力された場合、これが先頭パケットであることを示す。
回部1内にあるところの第3のパケットがL=1のリ
ンクの先頭パケットであることから、第3のパケットに
対し送出可否判定を行う。その結果、C(1)=0なので
送出可と判定し、第3のパケットを周回部1から送出
する。C(1)はプリセットされる。また、R(1)も更新
されて第3のパケット送出後のL=1のリンクの先頭パ
ケットがR(1)=3に等しいW(1)を付与されているこ
とを示す。すなわち、さらに続けて第4のパケットが入
力された場合、これが先頭パケットであることを示す。
【0045】以上説明したように、時刻1〜3に連続入
力された同一リンクのパケットは、時刻3、6、9にお
いて送出間隔を広げられて出力される。このときの送出
間隔は、C(L)のプリセット値に従うので、本例では少
なくとも2パケット以上の間隔が確保される。C(L)の
プリセット値としては、全リンク共通の値とする他にリ
ンク毎にプリセット値を持ち、シェイピングの度合いを
リンク毎に制御することも可能である。
力された同一リンクのパケットは、時刻3、6、9にお
いて送出間隔を広げられて出力される。このときの送出
間隔は、C(L)のプリセット値に従うので、本例では少
なくとも2パケット以上の間隔が確保される。C(L)の
プリセット値としては、全リンク共通の値とする他にリ
ンク毎にプリセット値を持ち、シェイピングの度合いを
リンク毎に制御することも可能である。
【0046】つぎに、図26および図27を参照し、パ
ケットがATMセルの場合のシェイピング例を説明す
る。図26および図27において、524は入力セル
流、10は本実施例におけるシェイパー、525は出力
セル流を示している。図26および図27ともシェイピ
ングの度合いとして同一VPIのセル間隔が2セル以上
確保されるよう設定された場合を示している。図26に
おいて、VPI=1のセルに注目すると、入力セル流5
24がVPI=1のセルのみのときは、出力セル流52
5においてVPI=1のセルの間は空セルとなる。ま
た、図27に示すように、入力セル流524に他のVP
Iのセルもあるときは、出力セル流525においてVP
I=1のセルの間に他のVPIのセルが入ることもあ
り、各VPIごとにシェイピングが行なわれる。
ケットがATMセルの場合のシェイピング例を説明す
る。図26および図27において、524は入力セル
流、10は本実施例におけるシェイパー、525は出力
セル流を示している。図26および図27ともシェイピ
ングの度合いとして同一VPIのセル間隔が2セル以上
確保されるよう設定された場合を示している。図26に
おいて、VPI=1のセルに注目すると、入力セル流5
24がVPI=1のセルのみのときは、出力セル流52
5においてVPI=1のセルの間は空セルとなる。ま
た、図27に示すように、入力セル流524に他のVP
Iのセルもあるときは、出力セル流525においてVP
I=1のセルの間に他のVPIのセルが入ることもあ
り、各VPIごとにシェイピングが行なわれる。
【0047】このように、複数VPIのセルが入力され
たときのシェイピングにおいても、送出可否判定は、周
回中のセルに対してのみ行い、1送出選択のために全対
象リンク分のテーブルスキャン等を行わない。従って、
第1の実施例によれば、対象リンク数の増加および処理
速度の高速化に簡単に対応可能なシェイピングを実現で
きる。
たときのシェイピングにおいても、送出可否判定は、周
回中のセルに対してのみ行い、1送出選択のために全対
象リンク分のテーブルスキャン等を行わない。従って、
第1の実施例によれば、対象リンク数の増加および処理
速度の高速化に簡単に対応可能なシェイピングを実現で
きる。
【0048】つぎに、第2の実施例を説明する。図2
に、第2の実施例における周回型スループットシェイピ
ング方法の構成と動作の概要を示したブロック図を示
す。第2の実施例においては、第1の実施例とパケット
送出可否判断が異なる。第1の実施例においては、待合
せ回数をあらかじめ定められたシェイピングの度合いに
よりプリセットし、周回するごとに待合せ回数を減算し
て待合せ回数が0になったときにパケット送出を行なっ
ていたが、第2の実施例においては、パケットの最終送
出時刻を保持し、送出可否判断時の現在時刻と最終送出
時刻とから送出時間間隔を求め、送出時間間隔があらか
じめ定められたシェイピングの度合いの値より大きけれ
ばパケットの送出を行なう。
に、第2の実施例における周回型スループットシェイピ
ング方法の構成と動作の概要を示したブロック図を示
す。第2の実施例においては、第1の実施例とパケット
送出可否判断が異なる。第1の実施例においては、待合
せ回数をあらかじめ定められたシェイピングの度合いに
よりプリセットし、周回するごとに待合せ回数を減算し
て待合せ回数が0になったときにパケット送出を行なっ
ていたが、第2の実施例においては、パケットの最終送
出時刻を保持し、送出可否判断時の現在時刻と最終送出
時刻とから送出時間間隔を求め、送出時間間隔があらか
じめ定められたシェイピングの度合いの値より大きけれ
ばパケットの送出を行なう。
【0049】図2において、周回部1、入力順序番号管
理部3および出力順序番号管理部4は、図1に示すもの
と同一の機能を備える。また、最終送出時刻記録部6
は、リンク毎のパケット送出最終時刻T(L)を記録す
る。現在時刻確認部7は、現在の時刻Tを示す。時刻T
は、一定間隔で処理される先頭パケット判定処理とパケ
ット送出選択処理を行なうタイミングにおける処理回数
を示す。送出間隔保持部61は、あらかじめ定められた
シェイピングの度合い(閾値)H(L)を保持するもの
であり、前述の第1の実施例におけるプリセット値と等
しく、全てのリンクの閾値を同じにしてもよいし、リン
クごとに閾値を規定しておいてもよい。送出選択部2
は、最終送出時刻記録部6からのパケット送出最終時刻
T(L)と現在時刻確認部7からの現在時刻Tの差分に
より経過時間を求め、パケット送出可否を経過時間と送
出間隔の大小により判断する。パケット送出可能時は、
パケットを周回部1から送出し、最終送出時刻記録部6
の内容を現在時刻に更新するが、送出不可時はパケット
を周回部1から送出せず、周回させる。いずれの場合で
も、その後は、周回部1内の次のパケットに対して先頭
パケット判定を行う。先頭パケット判定処理は、前述の
第1の実施例と同様に行なう。
理部3および出力順序番号管理部4は、図1に示すもの
と同一の機能を備える。また、最終送出時刻記録部6
は、リンク毎のパケット送出最終時刻T(L)を記録す
る。現在時刻確認部7は、現在の時刻Tを示す。時刻T
は、一定間隔で処理される先頭パケット判定処理とパケ
ット送出選択処理を行なうタイミングにおける処理回数
を示す。送出間隔保持部61は、あらかじめ定められた
シェイピングの度合い(閾値)H(L)を保持するもの
であり、前述の第1の実施例におけるプリセット値と等
しく、全てのリンクの閾値を同じにしてもよいし、リン
クごとに閾値を規定しておいてもよい。送出選択部2
は、最終送出時刻記録部6からのパケット送出最終時刻
T(L)と現在時刻確認部7からの現在時刻Tの差分に
より経過時間を求め、パケット送出可否を経過時間と送
出間隔の大小により判断する。パケット送出可能時は、
パケットを周回部1から送出し、最終送出時刻記録部6
の内容を現在時刻に更新するが、送出不可時はパケット
を周回部1から送出せず、周回させる。いずれの場合で
も、その後は、周回部1内の次のパケットに対して先頭
パケット判定を行う。先頭パケット判定処理は、前述の
第1の実施例と同様に行なう。
【0050】つぎに、第2の実施例における周回型スル
ープットシェイピング方法の動作を、図16および図1
8に示すフローチャートを参照して説明する。また、図
23に、図2における各テーブル内容の一変化例を示
す。ここではリンク番号L=1のパケットにのみ着目し
て変化例を示している。
ープットシェイピング方法の動作を、図16および図1
8に示すフローチャートを参照して説明する。また、図
23に、図2における各テーブル内容の一変化例を示
す。ここではリンク番号L=1のパケットにのみ着目し
て変化例を示している。
【0051】本実施例においては、第1の実施例と同
様、図16に示すように、周回部1にパケットが入力し
た際に、入力順序番号管理部3が入力パケット到着処理
を行ない、また、図18に示すように、送出選択処理は
送出選択部2において行なう。
様、図16に示すように、周回部1にパケットが入力し
た際に、入力順序番号管理部3が入力パケット到着処理
を行ない、また、図18に示すように、送出選択処理は
送出選択部2において行なう。
【0052】図23において、時刻0のときに、入力順
序番号管理部3、出力順序番号管理部4および待合せ回
数管理部5に保持する値は初期状態にある(W(1)=R
(1)=T(1)=0、シェイピングの度合いを示す経過時
間閾値H(1)=2とする)。時刻Tは、一定間隔で処
理される先頭パケット判定処理とパケット送出選択処理
を行なうタイミングにおける処理回数を示す。また、入
力したパケットを識別するために、説明上入力パケット
を〜として示す。
序番号管理部3、出力順序番号管理部4および待合せ回
数管理部5に保持する値は初期状態にある(W(1)=R
(1)=T(1)=0、シェイピングの度合いを示す経過時
間閾値H(1)=2とする)。時刻Tは、一定間隔で処
理される先頭パケット判定処理とパケット送出選択処理
を行なうタイミングにおける処理回数を示す。また、入
力したパケットを識別するために、説明上入力パケット
を〜として示す。
【0053】時刻1のときに、パケット入力(第1のパ
ケット)があり、W(1)=0を第1のパケットに付与
し、W(1)を更新する(S1610〜S1650)。
ケット)があり、W(1)=0を第1のパケットに付与
し、W(1)を更新する(S1610〜S1650)。
【0054】一方、時刻1のときに、送出選択部2は、
図17に示すように、送出選択開始とし、周回部1にお
いて第1のパケットに付与されたW(1)が0であり、R
(1)=0と等しいことから、この第1のパケットが、現
在、周回部1内においてL=1のリンクの先頭パケット
であることを知る(S1801〜S1805)。従って
第1のパケットに対し送出可否判定を行う。送出可否判
定としては、まず、最終送出時刻記録部6からのパケッ
ト送出最終時刻T(L)=0を取り出す(S180
7)。また、現在確認部7から現在時刻T0を読み取る
(S1808)。T−T(1)を求め、その結果T−T
(1)=1≦H(1)=2であり、最終送出時刻からの経
過時間が閾値H(1)以下なので送出不可と判定し(S
1809)、周回部1からこのパケットを送出しない。
つぎのパケットの送出選択を行なう(S1813)。
図17に示すように、送出選択開始とし、周回部1にお
いて第1のパケットに付与されたW(1)が0であり、R
(1)=0と等しいことから、この第1のパケットが、現
在、周回部1内においてL=1のリンクの先頭パケット
であることを知る(S1801〜S1805)。従って
第1のパケットに対し送出可否判定を行う。送出可否判
定としては、まず、最終送出時刻記録部6からのパケッ
ト送出最終時刻T(L)=0を取り出す(S180
7)。また、現在確認部7から現在時刻T0を読み取る
(S1808)。T−T(1)を求め、その結果T−T
(1)=1≦H(1)=2であり、最終送出時刻からの経
過時間が閾値H(1)以下なので送出不可と判定し(S
1809)、周回部1からこのパケットを送出しない。
つぎのパケットの送出選択を行なう(S1813)。
【0055】つぎに、時刻2のときには、続けてパケッ
トの入力(第2のパケット)があり、W(1)=1を第
2のパケットに付与し、W(1)を更新する。
トの入力(第2のパケット)があり、W(1)=1を第
2のパケットに付与し、W(1)を更新する。
【0056】一方、先に入力されて周回部1内にあると
ころの第1のパケットに付与されたW(1)が0であ
り、R(1)=0と等しいことから、送出選択部2は、こ
の第1のパケットが、現在、周回部1においてL=1
のリンクの先頭パケットであることを知る。従って第1
のパケットに対し送出可否判定を行う。その結果T−
T(1)=2≦2であり、最終送出時刻からの経過時間が
閾値以下なので送出不可と判定し、周回部1から送出し
ない。
ころの第1のパケットに付与されたW(1)が0であ
り、R(1)=0と等しいことから、送出選択部2は、こ
の第1のパケットが、現在、周回部1においてL=1
のリンクの先頭パケットであることを知る。従って第1
のパケットに対し送出可否判定を行う。その結果T−
T(1)=2≦2であり、最終送出時刻からの経過時間が
閾値以下なので送出不可と判定し、周回部1から送出し
ない。
【0057】また、周回部1内に存在する第2のパケッ
トに付与されたW(1)が1であり、R(1)と等しくな
いことから、送出選択部2は、この第2のパケット
が、現在、周回部1においてL=1のリンクの先頭パケ
ットではないことを知る。従って第2のパケットに対
し送出可否判定は行わず、周回部1からの送出も行わな
い。
トに付与されたW(1)が1であり、R(1)と等しくな
いことから、送出選択部2は、この第2のパケット
が、現在、周回部1においてL=1のリンクの先頭パケ
ットではないことを知る。従って第2のパケットに対
し送出可否判定は行わず、周回部1からの送出も行わな
い。
【0058】つぎに、時刻3においては、続けてパケッ
ト入力(第3のパケット)があり、W(1)=2を第3の
パケットに付与し、W(1)を更新する。
ト入力(第3のパケット)があり、W(1)=2を第3の
パケットに付与し、W(1)を更新する。
【0059】一方、時刻2のとき同様、先に入力されて
周回部1内にあるところの第1のパケットがL=1のリ
ンクの先頭パケットであることから、第1のパケットに
対し送出可否判定を行う。その結果T−T(1)=3〉2
であり、最終送出時刻からの経過時間が閾値H(1)を
越えたので送出可と判定し、第1のパケットを周回部1
から送出する(S1812)。R(1)も更新されて第1
のパケット送出後のL=1のリンクの先頭パケットがR
(1)=1に等しいW(1)を付与されていることを示す
(S1810)。T(1)は現在時刻Tの値に更新される
(S1811)。
周回部1内にあるところの第1のパケットがL=1のリ
ンクの先頭パケットであることから、第1のパケットに
対し送出可否判定を行う。その結果T−T(1)=3〉2
であり、最終送出時刻からの経過時間が閾値H(1)を
越えたので送出可と判定し、第1のパケットを周回部1
から送出する(S1812)。R(1)も更新されて第1
のパケット送出後のL=1のリンクの先頭パケットがR
(1)=1に等しいW(1)を付与されていることを示す
(S1810)。T(1)は現在時刻Tの値に更新される
(S1811)。
【0060】つぎに、時刻4において、新たなパケット
入力はないのでW(1)は更新されない。
入力はないのでW(1)は更新されない。
【0061】一方、周回部1内にあるところの第2のパ
ケットに付与されたW(1)が1であり、R(1)=1と
等しいことから、送出選択部2は、この第2のパケット
が、現在、周回部1においてL=1のリンクの先頭パ
ケットであることを知る。従って第2のパケットに対
し送出可否判定を行う。その結果T−T(1)=1≦2で
あり、最終送出時刻からの経過時間が閾値H(1)以下
なので送出不可と判定し、周回部1から送出しない。
ケットに付与されたW(1)が1であり、R(1)=1と
等しいことから、送出選択部2は、この第2のパケット
が、現在、周回部1においてL=1のリンクの先頭パ
ケットであることを知る。従って第2のパケットに対
し送出可否判定を行う。その結果T−T(1)=1≦2で
あり、最終送出時刻からの経過時間が閾値H(1)以下
なので送出不可と判定し、周回部1から送出しない。
【0062】また、周回部1内に存在する第3のパケッ
トに付与されたW(1)が2であり、R(1)=1と等し
くないことから、送出選択部2はこの第3のパケット
が、現在、周回部1においてL=1のリンクの先頭パケ
ットではないことを知る。従って第3のパケットに対
し送出可否判定は行わず、周回部1からの送出も行わな
い。
トに付与されたW(1)が2であり、R(1)=1と等し
くないことから、送出選択部2はこの第3のパケット
が、現在、周回部1においてL=1のリンクの先頭パケ
ットではないことを知る。従って第3のパケットに対
し送出可否判定は行わず、周回部1からの送出も行わな
い。
【0063】つぎに、時刻5において、周回部1内にあ
るところの第2のパケットに付与されたW(1)が1で
あり、R(1)=1と等しいことから、送出選択部2は、
この第2のパケットが、現在、周回部1においてL=
1のリンクの先頭パケットであることを知る。従って第
2のパケットに対し送出可否判定を行う。その結果T
−T(1)=2≦2であり、最終送出時刻からの経過時間
が閾値H(1)以下なので送出不可と判定し、周回部1
から送出しない。
るところの第2のパケットに付与されたW(1)が1で
あり、R(1)=1と等しいことから、送出選択部2は、
この第2のパケットが、現在、周回部1においてL=
1のリンクの先頭パケットであることを知る。従って第
2のパケットに対し送出可否判定を行う。その結果T
−T(1)=2≦2であり、最終送出時刻からの経過時間
が閾値H(1)以下なので送出不可と判定し、周回部1
から送出しない。
【0064】また、周回部1内に存在する第3のパケッ
トに付与されたW(1)が2であり、R(1)=1と等し
くないことから、送出選択部2はこの第3のパケット
が、現在、周回部1においてL=1のリンクの先頭パケ
ットではないことを知る。従って第3のパケットに対
し送出可否判定は行わず、周回部1からの送出も行わな
い。
トに付与されたW(1)が2であり、R(1)=1と等し
くないことから、送出選択部2はこの第3のパケット
が、現在、周回部1においてL=1のリンクの先頭パケ
ットではないことを知る。従って第3のパケットに対
し送出可否判定は行わず、周回部1からの送出も行わな
い。
【0065】つぎに、時刻6において、周回部1内にあ
るところの第2のパケットに付与されたW(1)が1で
あり、R(1)=1と等しいことから、送出選択部2は、
この第2のパケットが、現在、周回部1においてL=
1のリンクの先頭パケットであることを知る。従って第
2のパケットに対し送出可否判定を行う。その結果T
−T(1)=3〉2であり、最終送出時刻からの経過時間
が閾値H(1)を越えたので送出可と判定し、第2のパ
ケットを周回部1から送出する。T(1)は、T=6の
値に更新される。R(1)も更新されて、第2のパケット
の送出後のL=1のリンクの先頭パケットがR(1)=
2に等しいW(1)を付与されていることを示す。
るところの第2のパケットに付与されたW(1)が1で
あり、R(1)=1と等しいことから、送出選択部2は、
この第2のパケットが、現在、周回部1においてL=
1のリンクの先頭パケットであることを知る。従って第
2のパケットに対し送出可否判定を行う。その結果T
−T(1)=3〉2であり、最終送出時刻からの経過時間
が閾値H(1)を越えたので送出可と判定し、第2のパ
ケットを周回部1から送出する。T(1)は、T=6の
値に更新される。R(1)も更新されて、第2のパケット
の送出後のL=1のリンクの先頭パケットがR(1)=
2に等しいW(1)を付与されていることを示す。
【0066】つぎに、時刻7において、周回部1内にあ
るところの第3のパケットに付与されたW(1)が2で
あり、R(1)=2と等しいことから、送出選択部2は、
この第3のパケットが、現在、周回部1においてL=
1のリンクの先頭パケットであることを知る。従って第
3のパケットに対し送出可否判定を行う。その結果T
−T(1)=1≦2であり、最終送出時刻からの経過時間
が閾値H(1)以下なので送出不可と判定し、周回部1
から送出しない。
るところの第3のパケットに付与されたW(1)が2で
あり、R(1)=2と等しいことから、送出選択部2は、
この第3のパケットが、現在、周回部1においてL=
1のリンクの先頭パケットであることを知る。従って第
3のパケットに対し送出可否判定を行う。その結果T
−T(1)=1≦2であり、最終送出時刻からの経過時間
が閾値H(1)以下なので送出不可と判定し、周回部1
から送出しない。
【0067】つぎに、時刻8において、時刻7のとき同
様、周回部1内にあるところの第3のパケットがL=
1のリンクの先頭パケットであることから、第3のパケ
ットに対し送出可否判定を行う。その結果T−T(1)
=2≦2であり、最終送出時刻からの経過時間が閾値H
(1)以下なので送出不可と判定し、周回部1から送出
しない。
様、周回部1内にあるところの第3のパケットがL=
1のリンクの先頭パケットであることから、第3のパケ
ットに対し送出可否判定を行う。その結果T−T(1)
=2≦2であり、最終送出時刻からの経過時間が閾値H
(1)以下なので送出不可と判定し、周回部1から送出
しない。
【0068】時刻9において、時刻8のとき同様、周回
部1内にあるところの第3のパケットがL=1のリン
クの先頭パケットであることから、第3のパケットに
対し送出可否判定を行う。その結果T−T(1)=3〉2
であり、最終送出時刻からの経過時間が閾値H(1)を
越えたので送出可と判定し、第3のパケットを周回部
1から送出する。T(1)はT=9の値に更新される。R
(1)も更新されて第3のパケット送出後のL=1のリ
ンクの先頭パケットがR(1)=3に等しいW(1)を付与
されていることを示す。すなわち、さらに続けて第4の
パケットが入力された場合、これが先頭パケットである
ことを示す。
部1内にあるところの第3のパケットがL=1のリン
クの先頭パケットであることから、第3のパケットに
対し送出可否判定を行う。その結果T−T(1)=3〉2
であり、最終送出時刻からの経過時間が閾値H(1)を
越えたので送出可と判定し、第3のパケットを周回部
1から送出する。T(1)はT=9の値に更新される。R
(1)も更新されて第3のパケット送出後のL=1のリ
ンクの先頭パケットがR(1)=3に等しいW(1)を付与
されていることを示す。すなわち、さらに続けて第4の
パケットが入力された場合、これが先頭パケットである
ことを示す。
【0069】以上説明したように、時刻1〜3に連続入
力された同一リンクのパケットは、時刻3、6、9にお
いて送出間隔を広げられて出力される。このときの送出
間隔は、シェイピングの度合いを示す閾値H(L)に従
うので、本例では少なくとも2パケット以上の間隔が確
保される。
力された同一リンクのパケットは、時刻3、6、9にお
いて送出間隔を広げられて出力される。このときの送出
間隔は、シェイピングの度合いを示す閾値H(L)に従
うので、本例では少なくとも2パケット以上の間隔が確
保される。
【0070】複数リンクのパケットが入力されたときに
も同様に、シェイピングにおける送出可否判定は、周回
中のパケットに対してのみ送出時間間隔を求めることに
より行い、1送出選択のために全対象リンク分のテーブ
ルスキャン等を行わない。従って、第2の実施例におい
ても、対象リンク数の増加および処理速度の高速化に簡
単に対応可能なシェイピングを実現できる。
も同様に、シェイピングにおける送出可否判定は、周回
中のパケットに対してのみ送出時間間隔を求めることに
より行い、1送出選択のために全対象リンク分のテーブ
ルスキャン等を行わない。従って、第2の実施例におい
ても、対象リンク数の増加および処理速度の高速化に簡
単に対応可能なシェイピングを実現できる。
【0071】さらに、第3の実施例を説明する。図3
に、第3の実施例における周回型スループットシェイピ
ング方法の構成と動作の概要を示したブロック図を示
す。第3の実施例においては、第1の実施例と先頭パケ
ットの判定方法が異なる。第3の実施例においては、入
力されたパケットは、後述するリンク別キュー管理部8
により、リンク別に入力順に記憶され、周回部1内に存
在するパケット数が1リンク当たり1個を越えないよう
に周回部1へパケットが入力される。すなわち、周回部
1内にパケットを入力したリンクは、このパケットが送
出されるまで、リンク別キュー管理部8から次のパケッ
トが周回部1に入力できないように制御する。したがっ
て、周回パケットは全て各リンクの最初に入力されたパ
ケットなので、パケットへの順序番号付与は不要とな
り、周回中のパケットは先頭パケット判定なしでパケッ
ト送出可否判断を行うことができる。
に、第3の実施例における周回型スループットシェイピ
ング方法の構成と動作の概要を示したブロック図を示
す。第3の実施例においては、第1の実施例と先頭パケ
ットの判定方法が異なる。第3の実施例においては、入
力されたパケットは、後述するリンク別キュー管理部8
により、リンク別に入力順に記憶され、周回部1内に存
在するパケット数が1リンク当たり1個を越えないよう
に周回部1へパケットが入力される。すなわち、周回部
1内にパケットを入力したリンクは、このパケットが送
出されるまで、リンク別キュー管理部8から次のパケッ
トが周回部1に入力できないように制御する。したがっ
て、周回パケットは全て各リンクの最初に入力されたパ
ケットなので、パケットへの順序番号付与は不要とな
り、周回中のパケットは先頭パケット判定なしでパケッ
ト送出可否判断を行うことができる。
【0072】図3において、周回部1、送出選択部2お
よび待合せ回数管理部5は、図1に示すものと同一の機
能を備える。リンク別キュー管理部8は、入力パケット
をリンク毎のキューにより管理する。リンク別キュー管
理部8は、入力した順番に、出力することができるFI
FO(First in First out)であり、FIFOは、リン
ク別に設けられる。周回部1からパケットが送出される
と、リンク別キュー管理部8は、そのパケットと同じリ
ンクのFIFOからパケットを1つ送出する。
よび待合せ回数管理部5は、図1に示すものと同一の機
能を備える。リンク別キュー管理部8は、入力パケット
をリンク毎のキューにより管理する。リンク別キュー管
理部8は、入力した順番に、出力することができるFI
FO(First in First out)であり、FIFOは、リン
ク別に設けられる。周回部1からパケットが送出される
と、リンク別キュー管理部8は、そのパケットと同じリ
ンクのFIFOからパケットを1つ送出する。
【0073】図3におけるパケット送出可否判断は、第
1の実施例と同様に、待合せ回数をあらかじめ定められ
たシェイピングの度合いによりプリセットし、周回する
ごとに待合せ回数を減算して待合せ回数管理部5の待合
せ回数C(L)が、0であれば送出可能、0以外ならば
送出不可と判断する。送出可能時は、このパケットを周
回部1から送出してリンク別キュー管理部8の対応する
リンクのキューから周回部1への入力を可能とし、送出
不可時は、待合せ回数管理部5の内容を減算する。いず
れの場合でも、その後は周回部1内の次のパケットに対
してパケット送出可否判断を行う。
1の実施例と同様に、待合せ回数をあらかじめ定められ
たシェイピングの度合いによりプリセットし、周回する
ごとに待合せ回数を減算して待合せ回数管理部5の待合
せ回数C(L)が、0であれば送出可能、0以外ならば
送出不可と判断する。送出可能時は、このパケットを周
回部1から送出してリンク別キュー管理部8の対応する
リンクのキューから周回部1への入力を可能とし、送出
不可時は、待合せ回数管理部5の内容を減算する。いず
れの場合でも、その後は周回部1内の次のパケットに対
してパケット送出可否判断を行う。
【0074】つぎに、第3の実施例における周回型スル
ープットシェイピング方法の動作を、図19および図2
0に示すフローチャートを参照して説明する。また、図
24に、図3における各テーブル内容の一変化例を示
す。ここではリンク番号L=1のパケットにのみ着目し
て変化例を示している。
ープットシェイピング方法の動作を、図19および図2
0に示すフローチャートを参照して説明する。また、図
24に、図3における各テーブル内容の一変化例を示
す。ここではリンク番号L=1のパケットにのみ着目し
て変化例を示している。
【0075】本実施例においては、図19に示すよう
に、周回部1にパケットが入力した際に、リンク別キュ
ー管理部8が入力パケット到着処理を行ない、また、図
20に示すように、送出選択処理は送出選択部2におい
て行なう。
に、周回部1にパケットが入力した際に、リンク別キュ
ー管理部8が入力パケット到着処理を行ない、また、図
20に示すように、送出選択処理は送出選択部2におい
て行なう。
【0076】図24において、時刻0のときに、待合せ
回数管理部5に保持する値は、初期状態にある(C
(1)のプリセット値すなわちシェイピングの度合=2
とする)。また、リンク別キュー管理手段8にはパケッ
トが保持されていないものとする。
回数管理部5に保持する値は、初期状態にある(C
(1)のプリセット値すなわちシェイピングの度合=2
とする)。また、リンク別キュー管理手段8にはパケッ
トが保持されていないものとする。
【0077】時刻1のときに、パケット入力(第1のパ
ケット)があり、リンク別キュー管理部8に入力す
る。図19に示すように、リンク別キュー管理部8は、
入力パケットからリンク番号Lを読み取る(S190
2)。読み取ったリンク番号に対応するキューに入力パ
ケットをチェインする(S1903)。周回部1内にリ
ンク番号L=1のパケットが周回中か否かを判断する
(S1904)。周回中でなければ、リンク別キュー管
理部8は、L=1に対応するキューから1パケット取り
出し、周回部1に入力する(S1905)。周回中か否
かの判断は、周回中であることを示すフラグをリンクご
とに設けておき、そのフラグを参照することにより判断
できる。この場合、周回中であることを示すフラグは、
リンク別キュー管理部8が周回部1にパケットを入力し
たときにセットされ、送出可否判断処理において送出可
と判断されて周回部1から出力されたときにリセットさ
れる。
ケット)があり、リンク別キュー管理部8に入力す
る。図19に示すように、リンク別キュー管理部8は、
入力パケットからリンク番号Lを読み取る(S190
2)。読み取ったリンク番号に対応するキューに入力パ
ケットをチェインする(S1903)。周回部1内にリ
ンク番号L=1のパケットが周回中か否かを判断する
(S1904)。周回中でなければ、リンク別キュー管
理部8は、L=1に対応するキューから1パケット取り
出し、周回部1に入力する(S1905)。周回中か否
かの判断は、周回中であることを示すフラグをリンクご
とに設けておき、そのフラグを参照することにより判断
できる。この場合、周回中であることを示すフラグは、
リンク別キュー管理部8が周回部1にパケットを入力し
たときにセットされ、送出可否判断処理において送出可
と判断されて周回部1から出力されたときにリセットさ
れる。
【0078】送出選択部2では、図20に示すように、
周回部1内の第1のパケットに対し送出可否判定を行
う。その結果C(1)=2≠0なので送出不可と判定し、
周回部1から送出しない。C(1)はダウンカウントされ
る(S2000〜S2005)。
周回部1内の第1のパケットに対し送出可否判定を行
う。その結果C(1)=2≠0なので送出不可と判定し、
周回部1から送出しない。C(1)はダウンカウントされ
る(S2000〜S2005)。
【0079】時刻2のときに、続けてパケット入力(第
2のパケット)があり、リンク別キュー管理部8に入
力する。周回部1内にはL=1のリンクのパケット(第
1のパケット)が存在しているので、リンク別キュー管
理部8からL=1のリンクのパケットを取り出して周回
部1へ入力することはできない。
2のパケット)があり、リンク別キュー管理部8に入
力する。周回部1内にはL=1のリンクのパケット(第
1のパケット)が存在しているので、リンク別キュー管
理部8からL=1のリンクのパケットを取り出して周回
部1へ入力することはできない。
【0080】一方、送出選択部2は、周回部1内の第1
のパケットに対し送出可否判定を行う。その結果C
(1)=1≠0なので送出不可と判定し、周回部1から送
出しない。C(1)はダウンカウントされる。
のパケットに対し送出可否判定を行う。その結果C
(1)=1≠0なので送出不可と判定し、周回部1から送
出しない。C(1)はダウンカウントされる。
【0081】時刻3のときに、続けてパケット入力(第
3のパケット)があり、リンク別キュー管理部8に入
力する。周回部1内にはL=1のリンクのパケット(第
1のパケット)が存在しているので、リンク別キュー
管理部8からL=1のリンクのパケットを取り出して周
回部1へ入力することはできない。
3のパケット)があり、リンク別キュー管理部8に入
力する。周回部1内にはL=1のリンクのパケット(第
1のパケット)が存在しているので、リンク別キュー
管理部8からL=1のリンクのパケットを取り出して周
回部1へ入力することはできない。
【0082】一方、送出選択部2は、周回部1内の第1
のパケットに対し送出可否判定を行う。その結果C
(1)=0なので送出可と判定し、第1のパケットを周
回部1から送出する(S2007)。また、C(1)はプ
リセットされる(S2006)。第1のパケットの送
出によって周回部1内にはL=1のリンクのパケットが
存在しなくなったので(S2008)、リンク別キュー
管理部8からL=1のリンクのパケットを1パケット取
り出し、周回部1へ入力する(S2009)。
のパケットに対し送出可否判定を行う。その結果C
(1)=0なので送出可と判定し、第1のパケットを周
回部1から送出する(S2007)。また、C(1)はプ
リセットされる(S2006)。第1のパケットの送
出によって周回部1内にはL=1のリンクのパケットが
存在しなくなったので(S2008)、リンク別キュー
管理部8からL=1のリンクのパケットを1パケット取
り出し、周回部1へ入力する(S2009)。
【0083】時刻4のときに、送出選択部2は、周回部
1内の第2のパケットに対し送出可否判定を行う。その
結果C(1)=2≠0なので送出不可と判定し、周回部1
から送出しない。C(1)はダウンカウントされる。
1内の第2のパケットに対し送出可否判定を行う。その
結果C(1)=2≠0なので送出不可と判定し、周回部1
から送出しない。C(1)はダウンカウントされる。
【0084】時刻5のときに、時刻4と同様に、第2の
パケットに対する送出可否判定の結果、C(1)=1≠0
なので送出不可と判定し、周回部1から送出しない。C
(1)はダウンカウントされる。
パケットに対する送出可否判定の結果、C(1)=1≠0
なので送出不可と判定し、周回部1から送出しない。C
(1)はダウンカウントされる。
【0085】時刻6のときに、送出選択部2は、周回部
1内の第2のパケットに対し送出可否判定を行う。その
結果C(1)=0なので送出可と判定し、第2のパケット
を周回部1から送出する。C(1)はプリセットされる。
1内の第2のパケットに対し送出可否判定を行う。その
結果C(1)=0なので送出可と判定し、第2のパケット
を周回部1から送出する。C(1)はプリセットされる。
【0086】第2のパケットの送出によって周回部1内
にはL=1のリンクのパケットが存在しなくなったの
で、リンク別キュー管理部8からL=1のリンクのパケ
ットを1パケット取り出し、周回部1へ入力する。
にはL=1のリンクのパケットが存在しなくなったの
で、リンク別キュー管理部8からL=1のリンクのパケ
ットを1パケット取り出し、周回部1へ入力する。
【0087】時刻7のときに、送出選択部2は、周回部
1内の第3のパケットに対し送出可否判定を行う。その
結果C(1)=2≠0なので送出不可と判定し、周回部1
から送出しない。C(1)はダウンカウントされる。
1内の第3のパケットに対し送出可否判定を行う。その
結果C(1)=2≠0なので送出不可と判定し、周回部1
から送出しない。C(1)はダウンカウントされる。
【0088】時刻8のときに、時刻7と同様に、第3の
パケットに対する送出可否判定の結果、C(1)=1≠0
なので送出不可と判定し、周回部1から送出しない。C
(1)はダウンカウントされる。
パケットに対する送出可否判定の結果、C(1)=1≠0
なので送出不可と判定し、周回部1から送出しない。C
(1)はダウンカウントされる。
【0089】時刻9のときに、送出選択部2は、周回部
1内の第3のパケットに対し送出可否判定を行う。その
結果C(1)=0なので送出可と判定し、第3のパケット
を周回部1から送出する。C(1)はプリセットされる。
1内の第3のパケットに対し送出可否判定を行う。その
結果C(1)=0なので送出可と判定し、第3のパケット
を周回部1から送出する。C(1)はプリセットされる。
【0090】以上説明したように、時刻1〜3に連続入
力された同一リンクのパケットは時刻3、6、9におい
て送出間隔を広げられて出力される。このときの送出間
隔はC(L)のプリセット値に従うので、本例では少なく
とも2パケット以上の間隔が確保される。C(L)のプリ
セット値としては全リンク共通の値とする他にリンク毎
に持ち、シェイピングの度合いをリンク毎に制御するこ
とも可能である。
力された同一リンクのパケットは時刻3、6、9におい
て送出間隔を広げられて出力される。このときの送出間
隔はC(L)のプリセット値に従うので、本例では少なく
とも2パケット以上の間隔が確保される。C(L)のプリ
セット値としては全リンク共通の値とする他にリンク毎
に持ち、シェイピングの度合いをリンク毎に制御するこ
とも可能である。
【0091】つぎに、第4の実施例を説明する。図4
に、第4の実施例における周回型スループットシェイピ
ング方法として構成と動作の概要を示したブロック図を
示す。第4の実施例においては、第3の実施例における
リンク別キュー管理部8による先頭パケットの管理と、
第2の実施例におけるパケット送出可否判断とを組み合
わせている。図4において周回部1、送出選択部2、最
終送出時刻記録部6、送出間隔保持部61および現在時
刻確認部7は、図2に示すものと同一の機能を備え、リ
ンク別キュー管理部8は図3に示すものと同一の機能を
備える。図4においても先頭パケット判定なしでパケッ
ト送出可否判断が可能であり、パケット送出可否判断の
方法は第2の実施例と同様に行なえる。
に、第4の実施例における周回型スループットシェイピ
ング方法として構成と動作の概要を示したブロック図を
示す。第4の実施例においては、第3の実施例における
リンク別キュー管理部8による先頭パケットの管理と、
第2の実施例におけるパケット送出可否判断とを組み合
わせている。図4において周回部1、送出選択部2、最
終送出時刻記録部6、送出間隔保持部61および現在時
刻確認部7は、図2に示すものと同一の機能を備え、リ
ンク別キュー管理部8は図3に示すものと同一の機能を
備える。図4においても先頭パケット判定なしでパケッ
ト送出可否判断が可能であり、パケット送出可否判断の
方法は第2の実施例と同様に行なえる。
【0092】つぎに、第4の実施例における周回型スル
ープットシェイピング方法の動作を、図19および図2
1に示すフローチャートを参照して説明する。また、図
25に、図4におけるテーブル内容の一変化例を示す。
ここではリンク番号L=1のパケットにのみ着目して変
化例を示している。
ープットシェイピング方法の動作を、図19および図2
1に示すフローチャートを参照して説明する。また、図
25に、図4におけるテーブル内容の一変化例を示す。
ここではリンク番号L=1のパケットにのみ着目して変
化例を示している。
【0093】本実施例においては、図19に示すよう
に、周回部1にパケットが入力した際に、リンク別キュ
ー管理部8が入力パケット到着処理を行ない、また、図
21に示すように、送出選択処理は送出選択部2におい
て行なう。
に、周回部1にパケットが入力した際に、リンク別キュ
ー管理部8が入力パケット到着処理を行ない、また、図
21に示すように、送出選択処理は送出選択部2におい
て行なう。
【0094】図25において、時刻0のときに、最終送
出時刻記録部6に保持する値は、初期状態にある(シェ
イピングの度合いを示す経過時間閾値H(L)は2とす
る)。
出時刻記録部6に保持する値は、初期状態にある(シェ
イピングの度合いを示す経過時間閾値H(L)は2とす
る)。
【0095】時刻1のときに、パケット入力(第1のパ
ケット)があり、リンク別キュー管理部8に入力す
る。周回部1内にL=1のリンクのパケットが存在しな
いので、リンク別キュー管理部8からL=1のリンクの
パケットを1パケット取り出し、周回部1へ入力する
(S1901〜S1905)。
ケット)があり、リンク別キュー管理部8に入力す
る。周回部1内にL=1のリンクのパケットが存在しな
いので、リンク別キュー管理部8からL=1のリンクの
パケットを1パケット取り出し、周回部1へ入力する
(S1901〜S1905)。
【0096】送出選択部2は、図21に示すように、周
回部1内の第1のパケットに対し送出可否判定を行う
(S2101〜S2105)。その結果T−T(1)=1
≦H(1)=2であり、最終送出時刻からの経過時間が
閾値以下なので送出不可と判定し、周回部1から送出し
ない。
回部1内の第1のパケットに対し送出可否判定を行う
(S2101〜S2105)。その結果T−T(1)=1
≦H(1)=2であり、最終送出時刻からの経過時間が
閾値以下なので送出不可と判定し、周回部1から送出し
ない。
【0097】時刻2のときに、続けてパケット入力(第
2のパケット)があり、リンク別キュー管理部8に入
力する。周回部1内にはL=1のリンクのパケット(第
1のパケット)が存在しているので、リンク別キュー
管理部8からL=1のリンクのパケットを取り出して周
回部1へ入力することはできない。
2のパケット)があり、リンク別キュー管理部8に入
力する。周回部1内にはL=1のリンクのパケット(第
1のパケット)が存在しているので、リンク別キュー
管理部8からL=1のリンクのパケットを取り出して周
回部1へ入力することはできない。
【0098】一方、送出選択部2は、周回部1内の第1
のパケットに対し送出可否判定を行う。その結果T−
T(1)=2≦2であり、最終送出時刻からの経過時間が
閾値以下なので送出不可と判定し、周回部1から送出し
ない。
のパケットに対し送出可否判定を行う。その結果T−
T(1)=2≦2であり、最終送出時刻からの経過時間が
閾値以下なので送出不可と判定し、周回部1から送出し
ない。
【0099】時刻3のときに、続けてパケット入力(第
3のパケット)があり、リンク別キュー管理部8に入
力する。周回部1内にはL=1のリンクのパケット(第
1のパケット)が存在しているので、リンク別キュー
管理部8からL=1のリンクのパケットを取り出して周
回部1へ入力することはできない。
3のパケット)があり、リンク別キュー管理部8に入
力する。周回部1内にはL=1のリンクのパケット(第
1のパケット)が存在しているので、リンク別キュー
管理部8からL=1のリンクのパケットを取り出して周
回部1へ入力することはできない。
【0100】一方、送出選択部2は、周回部1内の第1
のパケットに対し送出可否判定を行う。その結果T−
T(1)=3〉2であり、最終送出時刻からの経過時間が
閾値を越えたので送出可と判定し、第1のパケットを
周回部1から送出する。T(1)はTの値に更新される。
のパケットに対し送出可否判定を行う。その結果T−
T(1)=3〉2であり、最終送出時刻からの経過時間が
閾値を越えたので送出可と判定し、第1のパケットを
周回部1から送出する。T(1)はTの値に更新される。
【0101】第1のパケットの送出によって周回部1
内にはL=1のリンクのパケットが存在しなくなったの
で、リンク別キュー管理部8からL=1のリンクのパケ
ットを1パケット取り出し、周回部1へ入力する。
内にはL=1のリンクのパケットが存在しなくなったの
で、リンク別キュー管理部8からL=1のリンクのパケ
ットを1パケット取り出し、周回部1へ入力する。
【0102】時刻4のときに、送出選択部2は、周回部
1内の第2のパケットに対し送出可否判定を行う。その
結果T−T(1)=1≦2であり、最終送出時刻からの経
過時間が閾値以下なので送出不可と判定し、周回部1か
ら送出しない。
1内の第2のパケットに対し送出可否判定を行う。その
結果T−T(1)=1≦2であり、最終送出時刻からの経
過時間が閾値以下なので送出不可と判定し、周回部1か
ら送出しない。
【0103】時刻5のときに、時刻4と同様に、第2の
パケットに対する送出可否判定の結果、T−T(1)=2
≦2であり、最終送出時刻からの経過時間が閾値以下な
ので送出不可と判定し、周回部1から送出しない。
パケットに対する送出可否判定の結果、T−T(1)=2
≦2であり、最終送出時刻からの経過時間が閾値以下な
ので送出不可と判定し、周回部1から送出しない。
【0104】時刻6のときに、送出選択部2は、周回部
1内の第2のパケットに対し送出可否判定を行う。その
結果T−T(1)=3〉2であり、最終送出時刻からの経
過時間が閾値を越えたので送出可と判定し、第2のパケ
ットを周回部1から送出する。T(1)はTの値に更新さ
れる。
1内の第2のパケットに対し送出可否判定を行う。その
結果T−T(1)=3〉2であり、最終送出時刻からの経
過時間が閾値を越えたので送出可と判定し、第2のパケ
ットを周回部1から送出する。T(1)はTの値に更新さ
れる。
【0105】第2のパケットの送出によって周回部1内
にはL=1のリンクのパケットが存在しなくなったの
で、リンク別キュー管理部8からL=1のリンクのパケ
ットを1パケット取り出し、周回部1へ入力する。
にはL=1のリンクのパケットが存在しなくなったの
で、リンク別キュー管理部8からL=1のリンクのパケ
ットを1パケット取り出し、周回部1へ入力する。
【0106】時刻7のときに、送出選択部2は、周回部
1内の第3のパケットに対し送出可否判定を行う。その
結果T−T(1)=1≦2であり、最終送出時刻からの経
過時間が閾値以下なので送出不可と判定し、周回部1か
ら送出しない。
1内の第3のパケットに対し送出可否判定を行う。その
結果T−T(1)=1≦2であり、最終送出時刻からの経
過時間が閾値以下なので送出不可と判定し、周回部1か
ら送出しない。
【0107】時刻8のときに、時刻7と同様に、第3の
パケットに対する送出可否判定の結果、T−T(1)=2
≦2であり、最終送出時刻からの経過時間が閾値以下な
ので送出不可と判定し、周回部1から送出しない。
パケットに対する送出可否判定の結果、T−T(1)=2
≦2であり、最終送出時刻からの経過時間が閾値以下な
ので送出不可と判定し、周回部1から送出しない。
【0108】時刻9のときに、送出選択部2は、周回部
1内の第3のパケットに対し送出可否判定を行う。その
結果T−T(1)=3〉2であり、最終送出時刻からの経
過時間が閾値を越えたので送出可と判定し、第3のパケ
ットを周回部1から送出する。T(1)はTの値に更新さ
れる。
1内の第3のパケットに対し送出可否判定を行う。その
結果T−T(1)=3〉2であり、最終送出時刻からの経
過時間が閾値を越えたので送出可と判定し、第3のパケ
ットを周回部1から送出する。T(1)はTの値に更新さ
れる。
【0109】以上説明したように、時刻1〜3に連続入
力された同一リンクのパケットは時刻3、6、9におい
て送出間隔を広げられて出力される。このときの送出間
隔はシェイピングの度合いを示す経過時間に従うので、
本例では少なくとも2パケット以上の間隔が確保され
る。経過時間閾値としては全リンク共通の値とする他に
リンク毎に持ち、シェイピングの度合いをリンク毎に制
御することも可能である。
力された同一リンクのパケットは時刻3、6、9におい
て送出間隔を広げられて出力される。このときの送出間
隔はシェイピングの度合いを示す経過時間に従うので、
本例では少なくとも2パケット以上の間隔が確保され
る。経過時間閾値としては全リンク共通の値とする他に
リンク毎に持ち、シェイピングの度合いをリンク毎に制
御することも可能である。
【0110】以上、第1の実施例〜第4の実施例におい
て説明したように、先頭パケットの判定は、入力順序番
号と出力順序番号とを管理することにより判断してもよ
いし、リンク別キューを設けて周回部1に周回するパケ
ットは先頭パケットのみにするようにしてもよい。ま
た、送出可否の判定は、待合せ回数をあらかじめ定めら
れたシェイピングの度合いによりプリセットし、周回す
るごとに待合せ回数を減算して待合せ回数が0になった
ときにパケット送出を行なったり、パケットの最終送出
時刻を保持し、送出可否判断時の現在時刻と最終送出時
刻とから送出時間間隔を求め、送出時間間隔があらかじ
め定められたシェイピングの度合いの値より大きければ
パケットの送出を行なうようにしてもよい。
て説明したように、先頭パケットの判定は、入力順序番
号と出力順序番号とを管理することにより判断してもよ
いし、リンク別キューを設けて周回部1に周回するパケ
ットは先頭パケットのみにするようにしてもよい。ま
た、送出可否の判定は、待合せ回数をあらかじめ定めら
れたシェイピングの度合いによりプリセットし、周回す
るごとに待合せ回数を減算して待合せ回数が0になった
ときにパケット送出を行なったり、パケットの最終送出
時刻を保持し、送出可否判断時の現在時刻と最終送出時
刻とから送出時間間隔を求め、送出時間間隔があらかじ
め定められたシェイピングの度合いの値より大きければ
パケットの送出を行なうようにしてもよい。
【0111】例えば、従来方法において、リンク数を2
56とし、1リンク当たりのテーブルスキャンにメモリ
アクセス2回(リード/ライト)計100nsを必要と
した場合、1周期が25.6μsとなる。1セル53バ
イト(424ビット)の送出時間を25.6μsとおい
た場合の総スループットは、約16.6Mビット/秒に
すぎない。対象リンク数の増加または総スループット向
上のためには、より高速のメモリおよび制御回路を必要
とするため簡単ではない。上記実施例では、256リン
クのスキャンが不要となるため、総スループットを数十
Mビット/秒以上に高めることが簡単に実現可能であ
る。また、対象リンク数を増加することにも簡単に対応
可能である。
56とし、1リンク当たりのテーブルスキャンにメモリ
アクセス2回(リード/ライト)計100nsを必要と
した場合、1周期が25.6μsとなる。1セル53バ
イト(424ビット)の送出時間を25.6μsとおい
た場合の総スループットは、約16.6Mビット/秒に
すぎない。対象リンク数の増加または総スループット向
上のためには、より高速のメモリおよび制御回路を必要
とするため簡単ではない。上記実施例では、256リン
クのスキャンが不要となるため、総スループットを数十
Mビット/秒以上に高めることが簡単に実現可能であ
る。また、対象リンク数を増加することにも簡単に対応
可能である。
【0112】つぎに、図5から図10を参照して、上述
した第1の実施例〜第4の実施例における周回型スルー
プットシェイピング方法を実現するシェイパーの構成と
動作を詳細に説明する。
した第1の実施例〜第4の実施例における周回型スルー
プットシェイピング方法を実現するシェイパーの構成と
動作を詳細に説明する。
【0113】図5は、上述した第1の実施例〜第4の実
施例におけるシェイパーの1構成例を示したものであ
る。図5において、シェイピングを実現してパケットを
送出するシェイパー10は、パケット内容をバッファリ
ングするパケットバッファ11と、パケットのリンク番
号を読み取り、パケットバッファ11への書き込みを制
御し、書込みパケット制御データ13を出力する書込み
制御部12と、シェイピングを実現し、送出すべきパケ
ットを決定するシェイピング制御部14と、読出しパケ
ット制御データ15により読みだし制御を行なう読出し
制御部16とを備えている。図5における構成において
は、パケットの内容そのものを周回させるのではなく、
パケットを記憶する領域を示すバッファアドレスとリン
ク番号とをパケット制御データとして周回させている。
施例におけるシェイパーの1構成例を示したものであ
る。図5において、シェイピングを実現してパケットを
送出するシェイパー10は、パケット内容をバッファリ
ングするパケットバッファ11と、パケットのリンク番
号を読み取り、パケットバッファ11への書き込みを制
御し、書込みパケット制御データ13を出力する書込み
制御部12と、シェイピングを実現し、送出すべきパケ
ットを決定するシェイピング制御部14と、読出しパケ
ット制御データ15により読みだし制御を行なう読出し
制御部16とを備えている。図5における構成において
は、パケットの内容そのものを周回させるのではなく、
パケットを記憶する領域を示すバッファアドレスとリン
ク番号とをパケット制御データとして周回させている。
【0114】パケットがシェイパー10へ入力される
と、書込み制御部12は、パケットの内容をパケットバ
ッファ11へ書込むと共に、このパケットのリンク番号
およびパケットバッファ内におけるバッファアドレスを
書込みパケット制御データ13としてシェイピング制御
部14へ出力する。シェイピング制御部14は、後で述
べる方法により書込みパケット制御データ13から送出
すべきパケット制御データを選択し、読出しパケット制
御データ15として読出し制御部16へ出力する。読出
し制御部16は読出しパケット制御データ15に含まれ
ているバッファアドレスによりパケットバッファ11か
らパケット内容を読出し、シェイパー10からのパケッ
トとして出力する。ここで、現在出力中のパケットが終
了するにもかかわらず次の読出しパケット制御データ1
5がない場合は、読出し制御部16は有効な情報を含ま
ない無効なパケット(例えば、ATMの場合には空きセ
ル)を出力することにより、パケット間の送出間隔を保
証することができる。
と、書込み制御部12は、パケットの内容をパケットバ
ッファ11へ書込むと共に、このパケットのリンク番号
およびパケットバッファ内におけるバッファアドレスを
書込みパケット制御データ13としてシェイピング制御
部14へ出力する。シェイピング制御部14は、後で述
べる方法により書込みパケット制御データ13から送出
すべきパケット制御データを選択し、読出しパケット制
御データ15として読出し制御部16へ出力する。読出
し制御部16は読出しパケット制御データ15に含まれ
ているバッファアドレスによりパケットバッファ11か
らパケット内容を読出し、シェイパー10からのパケッ
トとして出力する。ここで、現在出力中のパケットが終
了するにもかかわらず次の読出しパケット制御データ1
5がない場合は、読出し制御部16は有効な情報を含ま
ない無効なパケット(例えば、ATMの場合には空きセ
ル)を出力することにより、パケット間の送出間隔を保
証することができる。
【0115】つぎに、上述したシェイピング制御部14
の構成例を図6〜図10を参照して説明する。
の構成例を図6〜図10を参照して説明する。
【0116】(1)シェイピング制御部14の構成例1
前述した第1の実施例におけるシェイピングを実現する
シェイピング制御部14のブロック図を図6に示す。
シェイピング制御部14のブロック図を図6に示す。
【0117】図6において、13は、図5における書込
みパケット制御データである。101は、入力順序番号
制御回路であり、入力順序番号を管理する入力順序番号
管理部3に相当する。入力順序番号テーブルには、入力
順序番号をリンクごとに記憶し、入力順序番号制御回路
101は、パケット制御データが入力されると、そのリ
ンク番号に対応する入力順序番号を入力順序番号テーブ
ルに格納する。入力側メモリ102は、入力順序番号テ
ーブルを格納している。103は、セレクタであり、周
回部へ新たに入力されるパケット制御データと周回して
いるパケット制御データとを切り換えて出力する。10
4は、読出待FIFOであり、読出待のパケット制御デ
ータを格納する。105は、書込み制御回路Aであり、
読出待FIFO104への書込み制御と、セレクタ10
3の制御とを行なう。106は、読出し制御回路Aであ
り、読出待FIFO104からの読出しを制御する。1
07は、判定回路であり、送出可否判断を行なう。10
8は、パケット送出タイミング回路であり、パケットの
送出に同期したタイミングを通知する。15は、図5に
おける読出しパケット制御データである。109は、出
力側メモリであり、リンクごとの出力順序番号を出力順
序番号テーブルとして格納し、また、リンクごとの待合
せ回数とそのプリセット値とを待ち合わせ回数テーブル
として格納する。110は、再入待FIFOであり、再
度入力待となるパケット制御データを格納する。111
は、書込み制御回路Bであり、再入待FIFOへの書込
みを制御する。112は、読出し制御回路Bであり、再
入待FIFOからの読出しを制御する。
みパケット制御データである。101は、入力順序番号
制御回路であり、入力順序番号を管理する入力順序番号
管理部3に相当する。入力順序番号テーブルには、入力
順序番号をリンクごとに記憶し、入力順序番号制御回路
101は、パケット制御データが入力されると、そのリ
ンク番号に対応する入力順序番号を入力順序番号テーブ
ルに格納する。入力側メモリ102は、入力順序番号テ
ーブルを格納している。103は、セレクタであり、周
回部へ新たに入力されるパケット制御データと周回して
いるパケット制御データとを切り換えて出力する。10
4は、読出待FIFOであり、読出待のパケット制御デ
ータを格納する。105は、書込み制御回路Aであり、
読出待FIFO104への書込み制御と、セレクタ10
3の制御とを行なう。106は、読出し制御回路Aであ
り、読出待FIFO104からの読出しを制御する。1
07は、判定回路であり、送出可否判断を行なう。10
8は、パケット送出タイミング回路であり、パケットの
送出に同期したタイミングを通知する。15は、図5に
おける読出しパケット制御データである。109は、出
力側メモリであり、リンクごとの出力順序番号を出力順
序番号テーブルとして格納し、また、リンクごとの待合
せ回数とそのプリセット値とを待ち合わせ回数テーブル
として格納する。110は、再入待FIFOであり、再
度入力待となるパケット制御データを格納する。111
は、書込み制御回路Bであり、再入待FIFOへの書込
みを制御する。112は、読出し制御回路Bであり、再
入待FIFOからの読出しを制御する。
【0118】以下、図6における動作を説明する。書込
みパケット制御データ13の入力により、入力順序番号
制御回路101は、入力側メモリ102内の入力順序番
号テーブルから書込みパケット制御データ13が持つリ
ンク番号に対応した入力順序番号を読出し、これを書込
みパケット制御データ13に付加し、入力側メモリ10
2内の入力順序番号テーブル内容を更新しておく。さら
に、入力順序番号制御回路101は、このパケット制御
データ内に周回停止フラグを付加し、最終的なパケット
制御データを作成する。ここで、周回停止フラグとは、
1パケット送出時間、すなわち1パケット制御データを
選択する時間内に同一パケット制御データが2回以上送
出判定されないよう、送出判定が一巡したときにパケッ
ト制御データの周回を停止させるために設けるものであ
る。入力順序番号制御回路101は、周回停止フラグを
クリアして書込み制御回路A105へパケット制御デー
タの書込みを要求する。また、送出判定が行なわれたと
きに、判定回路107により周回停止フラグがセットさ
れる。
みパケット制御データ13の入力により、入力順序番号
制御回路101は、入力側メモリ102内の入力順序番
号テーブルから書込みパケット制御データ13が持つリ
ンク番号に対応した入力順序番号を読出し、これを書込
みパケット制御データ13に付加し、入力側メモリ10
2内の入力順序番号テーブル内容を更新しておく。さら
に、入力順序番号制御回路101は、このパケット制御
データ内に周回停止フラグを付加し、最終的なパケット
制御データを作成する。ここで、周回停止フラグとは、
1パケット送出時間、すなわち1パケット制御データを
選択する時間内に同一パケット制御データが2回以上送
出判定されないよう、送出判定が一巡したときにパケッ
ト制御データの周回を停止させるために設けるものであ
る。入力順序番号制御回路101は、周回停止フラグを
クリアして書込み制御回路A105へパケット制御デー
タの書込みを要求する。また、送出判定が行なわれたと
きに、判定回路107により周回停止フラグがセットさ
れる。
【0119】読出し制御回路B112は、再入待FIF
O110内にパケット制御データがある場合のみ書込み
制御回路A105へパケット制御データ書込みを要求す
る。
O110内にパケット制御データがある場合のみ書込み
制御回路A105へパケット制御データ書込みを要求す
る。
【0120】書込み制御回路A105は、上記の2者
(入力順序番号制御回路101と読出し制御回路B11
2)からのパケット制御データ書込み要求の競合を調停
し、選択した方へセレクタ103を切り替えてパケット
制御データを転送させ、読出待FIFO104へパケッ
ト制御データを書込む。ここで要求の競合調停方法は、
一般的なハードウエアによる2入力競合調停回路を仮定
するが、他の方法でも可能である。
(入力順序番号制御回路101と読出し制御回路B11
2)からのパケット制御データ書込み要求の競合を調停
し、選択した方へセレクタ103を切り替えてパケット
制御データを転送させ、読出待FIFO104へパケッ
ト制御データを書込む。ここで要求の競合調停方法は、
一般的なハードウエアによる2入力競合調停回路を仮定
するが、他の方法でも可能である。
【0121】読出待FIFO104にパケット制御デー
タがある場合、読出し制御回路A106は、読出待FI
FO104からパケット制御データを読出し、判定回路
107へ判定要求を行う。判定回路107では、読出待
FIFO104から読出されたパケット制御データの周
回停止フラグがセットされていれば、パケット送出タイ
ミング回路108から送出選択開始通知113があるま
で処理を中断する。
タがある場合、読出し制御回路A106は、読出待FI
FO104からパケット制御データを読出し、判定回路
107へ判定要求を行う。判定回路107では、読出待
FIFO104から読出されたパケット制御データの周
回停止フラグがセットされていれば、パケット送出タイ
ミング回路108から送出選択開始通知113があるま
で処理を中断する。
【0122】この目的は、図5に示す読出し制御部16
が1パケットを送出している間に、一旦送出不可と判定
されたパケット制御データが何回も送出可否判断される
事を防止するためである。したがって、周回停止フラグ
がセットされるのは、1パケット制御データ送出選択時
間内で初めて送出不可と判定されたパケット制御データ
のみである。
が1パケットを送出している間に、一旦送出不可と判定
されたパケット制御データが何回も送出可否判断される
事を防止するためである。したがって、周回停止フラグ
がセットされるのは、1パケット制御データ送出選択時
間内で初めて送出不可と判定されたパケット制御データ
のみである。
【0123】読出待FIFO104の出力データが周回
停止フラグのクリアされているパケット制御データであ
る場合、判定回路107は、パケット送出可否判断を行
う。判定回路107では、以下に示すアルゴリズムによ
りパケット送出の可否判断を行なう。
停止フラグのクリアされているパケット制御データであ
る場合、判定回路107は、パケット送出可否判断を行
う。判定回路107では、以下に示すアルゴリズムによ
りパケット送出の可否判断を行なう。
【0124】ステップ1:出力側メモリ109内の出力
順序番号テーブルより、パケット制御データのリンク番
号に対応する出力順序番号を読出す。
順序番号テーブルより、パケット制御データのリンク番
号に対応する出力順序番号を読出す。
【0125】ステップ2:パケット制御データに付加さ
れている入力順序番号と一致しなければ送出不可と判定
しステップ9へ。
れている入力順序番号と一致しなければ送出不可と判定
しステップ9へ。
【0126】ステップ3:出力側メモリ109内の待ち
合わせ回数テーブルより、該パケット制御データのリン
ク番号に対応する待合せ回数を読出す。
合わせ回数テーブルより、該パケット制御データのリン
ク番号に対応する待合せ回数を読出す。
【0127】ステップ4:待合せ回数が0でなければ送
出不可と判定し、該テーブル内容を1減じてステップ9
へ。
出不可と判定し、該テーブル内容を1減じてステップ9
へ。
【0128】ステップ5:パケット送出タイミング回路
108からの送出選択開始通知113を受けた後、最初
の送出判定であるか判断する。既に送出可として判定し
たパケット制御データがあり、本パケット制御データは
最初の送出判定でなかったときは送出不可と判定し、ス
テップ9へ。
108からの送出選択開始通知113を受けた後、最初
の送出判定であるか判断する。既に送出可として判定し
たパケット制御データがあり、本パケット制御データは
最初の送出判定でなかったときは送出不可と判定し、ス
テップ9へ。
【0129】ステップ6:該パケット制御データを読出
しパケット制御データ15として出力する。
しパケット制御データ15として出力する。
【0130】ステップ7:出力側メモリ109内の待合
わせ回数テーブル内該リンク対応の待合せ回数をあらか
じめ定められている値にプリセットする。
わせ回数テーブル内該リンク対応の待合せ回数をあらか
じめ定められている値にプリセットする。
【0131】ステップ8:出力側メモリ109内の出力
順序番号テーブル内該リンク対応の出力順序番号を更新
し、ステップ10へ。
順序番号テーブル内該リンク対応の出力順序番号を更新
し、ステップ10へ。
【0132】ステップ9:その送出選択時間内で初めて
送出不可と判定された場合であれば書込み制御回路B1
11に指示し該パケット制御データを再入待FIFO1
10に書込むときに周回停止フラグをセットして書込ま
せる。
送出不可と判定された場合であれば書込み制御回路B1
11に指示し該パケット制御データを再入待FIFO1
10に書込むときに周回停止フラグをセットして書込ま
せる。
【0133】ステップ10:終了。
【0134】上記アルゴリズムのステップ7での待合せ
回数のセット値は、全リンク一定である必要はない。例
えば出力側メモリ109内に待合せ回数初期値テーブル
を追加し、そこから読出した値をプリセットすることに
より、リンク毎に異なった値を設定可能である。
回数のセット値は、全リンク一定である必要はない。例
えば出力側メモリ109内に待合せ回数初期値テーブル
を追加し、そこから読出した値をプリセットすることに
より、リンク毎に異なった値を設定可能である。
【0135】書込み制御回路B111は、上記の判定ア
ルゴリズムにより送出不可と判定された制御データを、
再入待FIFO110へ書込む。
ルゴリズムにより送出不可と判定された制御データを、
再入待FIFO110へ書込む。
【0136】以上のように構成することにより、前述し
た第1の実施例を実現することができる。
た第1の実施例を実現することができる。
【0137】(2)シェイピング制御部14の構成例2
つぎに、前述した第2の実施例におけるシェイピングを
実現するシェイピング制御部14のブロック図を図7に
示す。
実現するシェイピング制御部14のブロック図を図7に
示す。
【0138】図7において、書込みパケット制御データ
13、読出しパケット制御データ15、入力順序番号制
御回路101、入力側メモリ102、セレクタ103、
読出待FIFO104、書込み制御回路A105、読出
し制御回路A106、パケット送出タイミング回路10
8、再入待FIFO110、書込み制御回路B111お
よび読出し制御回路B112は、図6に示すものと同じ
機能を備える。201は、第2の実施例における判定回
路、202は、出力側メモリであり、最終送出時刻を保
持する最終送出時刻テーブルを格納する。203は、フ
リーランカウンタであり、判定回路201において現在
時刻を確認する。このフリーランカウンタ203は、パ
ケット送出タイミング回路108から1パケット送出時
間毎に送出開始通知114を受けカウントアップする。
13、読出しパケット制御データ15、入力順序番号制
御回路101、入力側メモリ102、セレクタ103、
読出待FIFO104、書込み制御回路A105、読出
し制御回路A106、パケット送出タイミング回路10
8、再入待FIFO110、書込み制御回路B111お
よび読出し制御回路B112は、図6に示すものと同じ
機能を備える。201は、第2の実施例における判定回
路、202は、出力側メモリであり、最終送出時刻を保
持する最終送出時刻テーブルを格納する。203は、フ
リーランカウンタであり、判定回路201において現在
時刻を確認する。このフリーランカウンタ203は、パ
ケット送出タイミング回路108から1パケット送出時
間毎に送出開始通知114を受けカウントアップする。
【0139】第2の実施例において、図6に示す第1の
実施例の構成と異なる点は、送出可否判断を、送出判定
を待合せ回数ではなく最後に送出したパケットの送出時
刻からの経過時間により行うことである。そのため、出
力側メモリ202内には待合せ回数テーブルではなく最
終送出時刻テーブルが格納されている。そして、判定回
路201における判定アルゴリズムは、以下に示す通り
となる。
実施例の構成と異なる点は、送出可否判断を、送出判定
を待合せ回数ではなく最後に送出したパケットの送出時
刻からの経過時間により行うことである。そのため、出
力側メモリ202内には待合せ回数テーブルではなく最
終送出時刻テーブルが格納されている。そして、判定回
路201における判定アルゴリズムは、以下に示す通り
となる。
【0140】ステップ1:出力側メモリ202内の出力
順序番号テーブルより、パケット制御データのリンク番
号に対応する出力順序番号を読出す。
順序番号テーブルより、パケット制御データのリンク番
号に対応する出力順序番号を読出す。
【0141】ステップ2:パケット制御データに付加さ
れている入力順序番号と一致しなければ送出不可と判定
しステップ9へ(第1の実施例と同じ)。
れている入力順序番号と一致しなければ送出不可と判定
しステップ9へ(第1の実施例と同じ)。
【0142】ステップ3:出力側メモリ202内の最終
送出時刻テーブルより、該パケット制御データのリンク
番号に対応する最終送出時刻を読出す。
送出時刻テーブルより、該パケット制御データのリンク
番号に対応する最終送出時刻を読出す。
【0143】ステップ4:最終送出時刻とフリーランカ
ウンタ203の値の差分を算出し、一定閾値以下であれ
ば送出不可と判定し、ステップ9へ。
ウンタ203の値の差分を算出し、一定閾値以下であれ
ば送出不可と判定し、ステップ9へ。
【0144】ステップ5:パケット送出タイミング回路
108からの送出選択開始通知113を受けた後、最初
の送出判定であるか判断する。既に送出可として判定し
たパケット制御データがあり、本パケット制御データは
最初の送出判定でなかったときは送出不可と判定し、ス
テップ9へ(第1の実施例1と同じ)。
108からの送出選択開始通知113を受けた後、最初
の送出判定であるか判断する。既に送出可として判定し
たパケット制御データがあり、本パケット制御データは
最初の送出判定でなかったときは送出不可と判定し、ス
テップ9へ(第1の実施例1と同じ)。
【0145】ステップ6:該パケット制御データを読出
しパケット制御データ15として出力する(第1の実施
例1と同じ)。
しパケット制御データ15として出力する(第1の実施
例1と同じ)。
【0146】ステップ7:出力側メモリ202内の最終
送出時刻テーブルに、リンク対応の最終送出時刻を、フ
リーランカウンタ203の内容にセットする。
送出時刻テーブルに、リンク対応の最終送出時刻を、フ
リーランカウンタ203の内容にセットする。
【0147】ステップ8:出力側メモリ202内の出力
順序番号テーブル内該リンク対応の出力順序番号を更新
し、ステップ10へ。
順序番号テーブル内該リンク対応の出力順序番号を更新
し、ステップ10へ。
【0148】ステップ9:その送出選択時間内で初めて
送出不可と判定された場合であれば書込み制御回路B1
11に指示し該パケット制御データを再入待FIFO1
10に書込むときに周回停止フラグをセットして書込ま
せる(第1の実施例と同じ)。
送出不可と判定された場合であれば書込み制御回路B1
11に指示し該パケット制御データを再入待FIFO1
10に書込むときに周回停止フラグをセットして書込ま
せる(第1の実施例と同じ)。
【0149】ステップ10:終了(第1の実施例と同
じ)。
じ)。
【0150】また、上記第2の実施例のアルゴリズムの
ステップ4においては、差分が一定閾値以下か否かを判
定しているが、例えば、出力側メモリ202内に経過時
間閾値テーブルを追加し、その内容と比較することによ
り、リンク別に異なった値での送出可否判定が可能であ
る。また、フリーランカウンタ203の歩進単位は1パ
ケットの送出時間でなくても良い。
ステップ4においては、差分が一定閾値以下か否かを判
定しているが、例えば、出力側メモリ202内に経過時
間閾値テーブルを追加し、その内容と比較することによ
り、リンク別に異なった値での送出可否判定が可能であ
る。また、フリーランカウンタ203の歩進単位は1パ
ケットの送出時間でなくても良い。
【0151】(3)シェイピング制御部14の構成例3
つぎに、前述した第3の実施例におけるシェイピングを
実現するシェイピング制御部14のブロック図を図8お
よび図9に示す。
実現するシェイピング制御部14のブロック図を図8お
よび図9に示す。
【0152】図8および図9における構成において、重
要であるのは、読出待FIFO104および再入待FI
FO110によって構成された周回ループの中に存在す
るパケット制御データの個数をリンク毎に1個を越えな
いように制御することである。第3の実施例では、周回
していないことを示す入場許可権としてトークンをリン
クごとに設けてこの制御を行う。すなわち、リンクごと
に、周回しているパケットがある場合には、トークンな
しとし、周回部1から出力されると、トークンを返却し
てトークンありにするとともに、つぎのパケットを周回
部1に入力するように書き込み制御回路へ通知する。通
知があると書き込み制御回路は周回待ちキューからパケ
ットを出力し、周回ループに入力させる。また、入力パ
ケットがあると周回待キューに記憶しておき、トークン
を確認し、トークンがある場合には、周回部1にパケッ
トを出力してから、トークンなしにする。また、トーク
ンがない場合にはそのまま周回待キューに記憶してお
き、トークンが返却されたという通知があるまで待つ。
このように、トークンがある場合にだけ周回ループに入
力することができる。
要であるのは、読出待FIFO104および再入待FI
FO110によって構成された周回ループの中に存在す
るパケット制御データの個数をリンク毎に1個を越えな
いように制御することである。第3の実施例では、周回
していないことを示す入場許可権としてトークンをリン
クごとに設けてこの制御を行う。すなわち、リンクごと
に、周回しているパケットがある場合には、トークンな
しとし、周回部1から出力されると、トークンを返却し
てトークンありにするとともに、つぎのパケットを周回
部1に入力するように書き込み制御回路へ通知する。通
知があると書き込み制御回路は周回待ちキューからパケ
ットを出力し、周回ループに入力させる。また、入力パ
ケットがあると周回待キューに記憶しておき、トークン
を確認し、トークンがある場合には、周回部1にパケッ
トを出力してから、トークンなしにする。また、トーク
ンがない場合にはそのまま周回待キューに記憶してお
き、トークンが返却されたという通知があるまで待つ。
このように、トークンがある場合にだけ周回ループに入
力することができる。
【0153】図8において、8は、図3に示したリンク
別キュー管理部である。リンク数が多数の場合ハードウ
エアのFIFO素子を使用するのは困難であるので、メ
モリ素子による全リンク共通のパケット制御データバッ
ファを用意し、そのバッファアドレスをポインタ等で管
理して多数のFIFO構造を実現する、いわゆるソフト
ウエアFIFOとするようにしてもよい。309は、リ
ンク別キュー管理部8において実現されるリンク毎の周
回待キューである。同一リンクのパケット制御データが
複数個周回しないように書き込みパケット制御データ1
3は、リンク毎の周回待キュー309において待たされ
る。書き込みパケット制御データ13、セレクタ10
3、読出待FIFO104、再入待FIFO110およ
び読出し制御回路B112は、図6に示すものと同じ機
能を備える。301は、受信処理回路であり、入力され
た書込みパケット制御データ13のリンク番号を識別
し、対応するリンク毎の周回待キュー309にパケット
制御データを書込む。302は、書込み制御回路Cであ
り、読出待FIFO104への書込みを制御する。30
3は、トークン制御回路Aであり、リンク毎に読出待F
IFO104への書込みが可能か否かを判定するための
トークンを管理する。304は、トークン制御回路Aに
よって管理されるトークンメモリであり、各リンクごと
に周回しているパケットがある場合にはトークンがクリ
アされる。305は、トークン返却待FIFOであり、
パケットを送出した後、トークン制御回路A303によ
ってトークンメモリ304に返却するためのトークンを
一時蓄える。
別キュー管理部である。リンク数が多数の場合ハードウ
エアのFIFO素子を使用するのは困難であるので、メ
モリ素子による全リンク共通のパケット制御データバッ
ファを用意し、そのバッファアドレスをポインタ等で管
理して多数のFIFO構造を実現する、いわゆるソフト
ウエアFIFOとするようにしてもよい。309は、リ
ンク別キュー管理部8において実現されるリンク毎の周
回待キューである。同一リンクのパケット制御データが
複数個周回しないように書き込みパケット制御データ1
3は、リンク毎の周回待キュー309において待たされ
る。書き込みパケット制御データ13、セレクタ10
3、読出待FIFO104、再入待FIFO110およ
び読出し制御回路B112は、図6に示すものと同じ機
能を備える。301は、受信処理回路であり、入力され
た書込みパケット制御データ13のリンク番号を識別
し、対応するリンク毎の周回待キュー309にパケット
制御データを書込む。302は、書込み制御回路Cであ
り、読出待FIFO104への書込みを制御する。30
3は、トークン制御回路Aであり、リンク毎に読出待F
IFO104への書込みが可能か否かを判定するための
トークンを管理する。304は、トークン制御回路Aに
よって管理されるトークンメモリであり、各リンクごと
に周回しているパケットがある場合にはトークンがクリ
アされる。305は、トークン返却待FIFOであり、
パケットを送出した後、トークン制御回路A303によ
ってトークンメモリ304に返却するためのトークンを
一時蓄える。
【0154】また、図9において、読出待FIFO10
4、読出し制御回路A106、パケット送出タイミング
回路108、再入待FIFO110および書込み制御回
路B111は、図6に示すものと同じ機能を備える。ト
ークン返却待FIFO305は、図8に示すものと同じ
ものである。306は、判定回路であり、送出可否判断
を行なう。307は、出力側メモリであり、リンクごと
の待合せ回数とそのプリセット値とを待ち合わせ回数テ
ーブルとして格納する。308は、トークン制御回路B
であり、トークンを返却するために返却待FIFO30
5へトークンを書込む。
4、読出し制御回路A106、パケット送出タイミング
回路108、再入待FIFO110および書込み制御回
路B111は、図6に示すものと同じ機能を備える。ト
ークン返却待FIFO305は、図8に示すものと同じ
ものである。306は、判定回路であり、送出可否判断
を行なう。307は、出力側メモリであり、リンクごと
の待合せ回数とそのプリセット値とを待ち合わせ回数テ
ーブルとして格納する。308は、トークン制御回路B
であり、トークンを返却するために返却待FIFO30
5へトークンを書込む。
【0155】以下、図8および図9における動作を説明
する。
する。
【0156】図8において、受信処理回路301により
リンク毎の周回待キュー309に書き込みパケット制御
データ13が入力されると、受信通知310によって受
信した書き込みパケット制御データ13のリンク番号が
書込み制御回路C302へ通知される。その場合、書込
み制御回路C302は、リンクのパケット制御データを
読出待FIFO104に書込む事を許可するトークンの
有無をトークン制御回路A303に問い合わせる。トー
クン制御回路A303は、トークンメモリ304内のリ
ンク別に管理しているトークンの有無を調べ、トークン
なしの場合はトークンなしを書込み制御回路C302に
返答し、トークンありの場合はトークンメモリ304内
の対応するトークンを取り出してトークンを書込み制御
回路C302に返送する。
リンク毎の周回待キュー309に書き込みパケット制御
データ13が入力されると、受信通知310によって受
信した書き込みパケット制御データ13のリンク番号が
書込み制御回路C302へ通知される。その場合、書込
み制御回路C302は、リンクのパケット制御データを
読出待FIFO104に書込む事を許可するトークンの
有無をトークン制御回路A303に問い合わせる。トー
クン制御回路A303は、トークンメモリ304内のリ
ンク別に管理しているトークンの有無を調べ、トークン
なしの場合はトークンなしを書込み制御回路C302に
返答し、トークンありの場合はトークンメモリ304内
の対応するトークンを取り出してトークンを書込み制御
回路C302に返送する。
【0157】トークンなしの場合、書込み制御回路C3
02はなにもせず、トークン制御回路A303からトー
クン返却通知を受けるか、または、図6と同様に読出し
制御回路B112からの書込み要求が発生するのを待
つ。書込み制御回路C302がトークン制御回路A30
3からトークン返却通知を受けたときは、トークンのリ
ンク番号に対応する周回待キュー309からパケット制
御データを読出し、セレクタ103を0入力に切替えて
読出待FIFO104に読みだしたパケット制御データ
を書込む。トークン自身は、読出待FIFO104に書
込む必要はなく、トークン制御回路A303の制御によ
りトークンメモリ304において対応リンクのトークン
をクリアしてトークンなしとしておけばよい。
02はなにもせず、トークン制御回路A303からトー
クン返却通知を受けるか、または、図6と同様に読出し
制御回路B112からの書込み要求が発生するのを待
つ。書込み制御回路C302がトークン制御回路A30
3からトークン返却通知を受けたときは、トークンのリ
ンク番号に対応する周回待キュー309からパケット制
御データを読出し、セレクタ103を0入力に切替えて
読出待FIFO104に読みだしたパケット制御データ
を書込む。トークン自身は、読出待FIFO104に書
込む必要はなく、トークン制御回路A303の制御によ
りトークンメモリ304において対応リンクのトークン
をクリアしてトークンなしとしておけばよい。
【0158】トークン制御回路A303は、トークン返
却待FIFO305にトークンがあった場合、このトー
クンを読出し、トークンメモリ304へ格納する。そし
て書込み制御回路C302へトークン返却通知を行い、
返却されたトークンのリンク番号を通知する。書込み制
御回路C302では、通知されたリンク番号の周回待キ
ューにパケット制御データがあるかどうか調べ、なけれ
ばなにもしない。周回待キュー309にパケット制御デ
ータがあった場合、書込み制御回路C302は、改めて
パケット制御データのリンクに対応するトークンの有無
をトークン制御回路A303に問い合わせる。そして、
トークン制御回路A303では、トークンメモリ304
からこのトークンを取り出し、トークンメモリ304内
のトークンをクリアしておく。このとき、書込み制御回
路C302は、周回待キュー309からパケット制御デ
ータを読出し、セレクタ103を0入力に切替えて読出
待FIFO104に書込む。
却待FIFO305にトークンがあった場合、このトー
クンを読出し、トークンメモリ304へ格納する。そし
て書込み制御回路C302へトークン返却通知を行い、
返却されたトークンのリンク番号を通知する。書込み制
御回路C302では、通知されたリンク番号の周回待キ
ューにパケット制御データがあるかどうか調べ、なけれ
ばなにもしない。周回待キュー309にパケット制御デ
ータがあった場合、書込み制御回路C302は、改めて
パケット制御データのリンクに対応するトークンの有無
をトークン制御回路A303に問い合わせる。そして、
トークン制御回路A303では、トークンメモリ304
からこのトークンを取り出し、トークンメモリ304内
のトークンをクリアしておく。このとき、書込み制御回
路C302は、周回待キュー309からパケット制御デ
ータを読出し、セレクタ103を0入力に切替えて読出
待FIFO104に書込む。
【0159】1リンク当たり1個のトークンしか存在し
ないため、一旦読出待FIFO104へパケット制御デ
ータが書込まれたリンクについては、トークンが返却さ
れるまで次のパケット制御データを読出待FIFO10
4へ書込むことができない。図9において、トークン制
御回路B308は、判定回路306がリンクのパケット
制御データを読出し、パケット制御データ15として送
出したことにより返却待FIFO305へ返却すべき該
リンクのトークンを書込む。
ないため、一旦読出待FIFO104へパケット制御デ
ータが書込まれたリンクについては、トークンが返却さ
れるまで次のパケット制御データを読出待FIFO10
4へ書込むことができない。図9において、トークン制
御回路B308は、判定回路306がリンクのパケット
制御データを読出し、パケット制御データ15として送
出したことにより返却待FIFO305へ返却すべき該
リンクのトークンを書込む。
【0160】また、第3の実施例においては、読出待F
IFO104と再入待FIFO110とによって構成し
た周回ループ内には、各リンクのパケット制御データが
たかだか1個ずつしか存在しない。そのためリンク毎の
順序番号管理が不要であるので、図9における判定回路
306の判定アルゴリズムは、前述した第1の実施例に
おけるステップ1、ステップ2およびステップ8を削除
したものになる。また、ステップ3、ステップ7の出力
側メモリ109は出力側メモリ307と読替える。ま
た、出力側メモリ307内には出力順序番号管理テーブ
ルが不要となる。このような判定アルゴリズムにより、
送出可否判断を行なう。
IFO104と再入待FIFO110とによって構成し
た周回ループ内には、各リンクのパケット制御データが
たかだか1個ずつしか存在しない。そのためリンク毎の
順序番号管理が不要であるので、図9における判定回路
306の判定アルゴリズムは、前述した第1の実施例に
おけるステップ1、ステップ2およびステップ8を削除
したものになる。また、ステップ3、ステップ7の出力
側メモリ109は出力側メモリ307と読替える。ま
た、出力側メモリ307内には出力順序番号管理テーブ
ルが不要となる。このような判定アルゴリズムにより、
送出可否判断を行なう。
【0161】本実施例によれば、先頭パケット判定のた
めの処理が必要なく、トークンを管理することにより周
回中のパケット制御データをリンクごとに1つずつに
し、送出判定を待合せ回数によって行なうことにより、
第3の実施例におけるシェイパーを実現することができ
る。
めの処理が必要なく、トークンを管理することにより周
回中のパケット制御データをリンクごとに1つずつに
し、送出判定を待合せ回数によって行なうことにより、
第3の実施例におけるシェイパーを実現することができ
る。
【0162】(4)シェイピング制御部14の構成例4
つぎに、前述した第4の実施例におけるシェイピングを
実現するシェイピング制御部14のブロック図を図8お
よび図10に示す。
実現するシェイピング制御部14のブロック図を図8お
よび図10に示す。
【0163】図10において、読出しパケット制御デー
タ15、読出待FIFO104、読出し制御回路A10
6、パケット送出タイミング回路108、再入待FIF
O110、書込み制御回路B111、トークン返却待F
IFO305およびトークン制御回路B308は、図9
に示すものと同じ機能を備える。フリーランカウンタ2
03は、図7に示すものと同じ機能を備える。判定回路
401は、本実施例における送出可否判断を行なう。4
02は、出力側メモリであり、最終送出時刻を保持する
最終送出時刻テーブルを格納する。
タ15、読出待FIFO104、読出し制御回路A10
6、パケット送出タイミング回路108、再入待FIF
O110、書込み制御回路B111、トークン返却待F
IFO305およびトークン制御回路B308は、図9
に示すものと同じ機能を備える。フリーランカウンタ2
03は、図7に示すものと同じ機能を備える。判定回路
401は、本実施例における送出可否判断を行なう。4
02は、出力側メモリであり、最終送出時刻を保持する
最終送出時刻テーブルを格納する。
【0164】図8に示す構成の動作は、前述の第3の実
施例と同じである。また、本実施例での判定回路401
における送出可否判定方法は、図7に示す第2の実施例
の動作と同様に、最後に送出したパケットの送出時刻か
らの経過時間により行う。
施例と同じである。また、本実施例での判定回路401
における送出可否判定方法は、図7に示す第2の実施例
の動作と同様に、最後に送出したパケットの送出時刻か
らの経過時間により行う。
【0165】本実施例における送出可否判定は、第3の
実施例と同様にリンク毎の順序番号管理が不要であるの
で、判定回路401の判定アルゴリズムは、前述の第2
の実施例におけるステップ1、ステップ2およびステッ
プ8を削除した処理になる。また、ステップ3、ステッ
プ7の出力側メモリ202は、出力側メモリ402と読
替える。さらに、出力側メモリ402内には出力順序番
号管理テーブルが不要となる。
実施例と同様にリンク毎の順序番号管理が不要であるの
で、判定回路401の判定アルゴリズムは、前述の第2
の実施例におけるステップ1、ステップ2およびステッ
プ8を削除した処理になる。また、ステップ3、ステッ
プ7の出力側メモリ202は、出力側メモリ402と読
替える。さらに、出力側メモリ402内には出力順序番
号管理テーブルが不要となる。
【0166】本実施例によれば、先頭パケット判定のた
めの処理が必要なく、トークンを管理することにより周
回中のパケット制御データをリンクごとに1つずつに
し、送出判定を送出時間間隔によって行なうことによ
り、第4の実施例におけるシェイパーを実現することが
できる。
めの処理が必要なく、トークンを管理することにより周
回中のパケット制御データをリンクごとに1つずつに
し、送出判定を送出時間間隔によって行なうことによ
り、第4の実施例におけるシェイパーを実現することが
できる。
【0167】(5)シェイピング制御部14のその他の
構成例5 図6〜図10において、セレクタ103の0入力から入
力される単位時間あたりのパケット制御データ量と、判
定回路が送出不可であると判断して再入待FIFO11
0へ書込まれなければならない単位時間あたりのパケッ
ト制御データ量との和よりも、読出待FIFO104へ
書込み可能な単位時間あたりのパケット制御データ量が
十分大きければ、再入待FIFO110は必要ない。こ
の場合、図6〜図10の構成において、再入待FIFO
110内にパケット制御データが保留されることがない
からである。
構成例5 図6〜図10において、セレクタ103の0入力から入
力される単位時間あたりのパケット制御データ量と、判
定回路が送出不可であると判断して再入待FIFO11
0へ書込まれなければならない単位時間あたりのパケッ
ト制御データ量との和よりも、読出待FIFO104へ
書込み可能な単位時間あたりのパケット制御データ量が
十分大きければ、再入待FIFO110は必要ない。こ
の場合、図6〜図10の構成において、再入待FIFO
110内にパケット制御データが保留されることがない
からである。
【0168】同様に、図8、図9および図10におい
て、トークン制御回路A303の処理能力が十分大き
く、結果的にトークン返却待FIFO305内に返却さ
れるべきトークンが保留されることがなければ、トーク
ン返却待FIFO305は必要ない。
て、トークン制御回路A303の処理能力が十分大き
く、結果的にトークン返却待FIFO305内に返却さ
れるべきトークンが保留されることがなければ、トーク
ン返却待FIFO305は必要ない。
【0169】また、読出待FIFO104と再入待FI
FO110によって構成した周回ループへの入場許可権
として、トークンを用いるかわりにフラグを用いて制御
しても同様に処理できる。
FO110によって構成した周回ループへの入場許可権
として、トークンを用いるかわりにフラグを用いて制御
しても同様に処理できる。
【0170】つぎに、上述したシェイパーを用いた交換
システムの実施例を説明する。シェイパー10を用いた
交換システムの実施例を図11および図12に示す。
システムの実施例を説明する。シェイパー10を用いた
交換システムの実施例を図11および図12に示す。
【0171】図11において、502は、交換機であ
り、受信したパケットを宛先にしたがって交換し、各方
路に送信する。10は、上述したシェイパーである。交
換システム501は、交換機502と、各送信側方路に
対応して設けられるシェイパー10とを備える。シェイ
パー10は、前述した図5に示すシェイピング制御部1
4と、出力側メモリ503とを備える。出力側メモリ5
03には、図6に示す出力側メモリ109のように出力
順序番号テーブルおよび待ち合わせ回数テーブルを記憶
したり、また、図7に示す出力側メモリ202のように
最終送出時刻テーブルを記憶したり、図9に示す出力側
メモリ307および図10に示す出力側メモリ402の
ように待ち合わせ回数テーブルを記憶することができ
る。504は、保守用の情報処理装置などからなる制御
卓であり、交換システム501を制御することができ、
出力側メモリ503の内容を設定することができる。
り、受信したパケットを宛先にしたがって交換し、各方
路に送信する。10は、上述したシェイパーである。交
換システム501は、交換機502と、各送信側方路に
対応して設けられるシェイパー10とを備える。シェイ
パー10は、前述した図5に示すシェイピング制御部1
4と、出力側メモリ503とを備える。出力側メモリ5
03には、図6に示す出力側メモリ109のように出力
順序番号テーブルおよび待ち合わせ回数テーブルを記憶
したり、また、図7に示す出力側メモリ202のように
最終送出時刻テーブルを記憶したり、図9に示す出力側
メモリ307および図10に示す出力側メモリ402の
ように待ち合わせ回数テーブルを記憶することができ
る。504は、保守用の情報処理装置などからなる制御
卓であり、交換システム501を制御することができ、
出力側メモリ503の内容を設定することができる。
【0172】また、図12に、出力側メモリの構成を示
す。図12において、出力側メモリ503は、シェイピ
ングの度合いすなわち制御スループットに対応するとこ
ろの値である待合せ回数初期値または経過時間閾値を格
納する初期値/閾値テーブル506と、各リンク番号ご
とに初期値/閾値テーブル506に格納する待合せ回数
初期値または経過時間を対応づけるための初期値/閾値
テーブルアドレスを格納するマッピングテーブル505
とを備える。
す。図12において、出力側メモリ503は、シェイピ
ングの度合いすなわち制御スループットに対応するとこ
ろの値である待合せ回数初期値または経過時間閾値を格
納する初期値/閾値テーブル506と、各リンク番号ご
とに初期値/閾値テーブル506に格納する待合せ回数
初期値または経過時間を対応づけるための初期値/閾値
テーブルアドレスを格納するマッピングテーブル505
とを備える。
【0173】図11において、交換システム501に入
力された受信パケットは交換機502で交換され、各方
路のシェイパー10に入力される。シェイパー10で
は、シェイピング制御部14によりシェイピングが行わ
れるが、そのシェイピングの度合は全リンク一律としな
いで、各リンクごとに設定しておく制御が可能である。
力された受信パケットは交換機502で交換され、各方
路のシェイパー10に入力される。シェイパー10で
は、シェイピング制御部14によりシェイピングが行わ
れるが、そのシェイピングの度合は全リンク一律としな
いで、各リンクごとに設定しておく制御が可能である。
【0174】前述の第1の実施例における図6に示す判
定回路107または第3の実施例における図9に示す判
定回路306の判定アルゴリズムの場合は、ステップ7
の待合せ回数テーブルへのプリセット値を一律の値では
なく、各リンク対応の値とすればよい。このプリセット
値を得るためには、図12において、予め制御卓504
より初期値/閾値テーブル506に適当な待合せ回数初
期値を必要数設定しておき、その設定アドレスをマッピ
ングテーブル505の各リンク対応のアドレスに格納し
ておく。前記ステップ7においては、リンク番号をアド
レスにマッピングテーブル505をアクセスし、得られ
た内容をアドレスに初期値/閾値テーブル506をアク
セスすることにより該リンクのプリセット値が得られ
る。
定回路107または第3の実施例における図9に示す判
定回路306の判定アルゴリズムの場合は、ステップ7
の待合せ回数テーブルへのプリセット値を一律の値では
なく、各リンク対応の値とすればよい。このプリセット
値を得るためには、図12において、予め制御卓504
より初期値/閾値テーブル506に適当な待合せ回数初
期値を必要数設定しておき、その設定アドレスをマッピ
ングテーブル505の各リンク対応のアドレスに格納し
ておく。前記ステップ7においては、リンク番号をアド
レスにマッピングテーブル505をアクセスし、得られ
た内容をアドレスに初期値/閾値テーブル506をアク
セスすることにより該リンクのプリセット値が得られ
る。
【0175】また、第2の実施例における図7に示す判
定回路201または第4の実施例における図10に示す
判定回路401の判定アルゴリズムの場合は、ステップ
4で最終送出時刻とフリーランカウンタ203の値の差
分が一定閾値以下かどうかを判定しているが、この閾値
を一律の値ではなく、各リンク対応の値とすればよい。
この閾値を得るための方法もプリセット値を得るための
方法と同様に、マッピングテーブル505および初期値
/閾値テーブル506を用いる。
定回路201または第4の実施例における図10に示す
判定回路401の判定アルゴリズムの場合は、ステップ
4で最終送出時刻とフリーランカウンタ203の値の差
分が一定閾値以下かどうかを判定しているが、この閾値
を一律の値ではなく、各リンク対応の値とすればよい。
この閾値を得るための方法もプリセット値を得るための
方法と同様に、マッピングテーブル505および初期値
/閾値テーブル506を用いる。
【0176】このように、マッピングテーブルを設ける
ことにより、待合せ回数初期値または経過時間閾値を変
更する際には、制御卓504から初期値/閾値テーブル
506に格納する値を変更したり、値を追加したり、も
しくは、マッピングテーブル505のアドレスを変更す
るだけで容易に変更することができる。例えば、全リン
クが同じ待合せ回数初期値または経過時間閾値を持つ場
合、その値を変更する際には、初期値/閾値テーブル5
06に対してのみのアクセスして変更するだけで、全リ
ンクのシェイピングの度合いを変更できる。
ことにより、待合せ回数初期値または経過時間閾値を変
更する際には、制御卓504から初期値/閾値テーブル
506に格納する値を変更したり、値を追加したり、も
しくは、マッピングテーブル505のアドレスを変更す
るだけで容易に変更することができる。例えば、全リン
クが同じ待合せ回数初期値または経過時間閾値を持つ場
合、その値を変更する際には、初期値/閾値テーブル5
06に対してのみのアクセスして変更するだけで、全リ
ンクのシェイピングの度合いを変更できる。
【0177】さらに、待合せ回数初期値または経過時間
閾値の必要数が少ない場合、出力側メモリ503の容量
を小さくできる。
閾値の必要数が少ない場合、出力側メモリ503の容量
を小さくできる。
【0178】また、図12における出力側メモリ503
の代わりに、図13に示すように、待合せ回数初期値ま
たは経過時間閾値を各リンク毎に独立に持つ出力側メモ
リ503を用いてもよい。
の代わりに、図13に示すように、待合せ回数初期値ま
たは経過時間閾値を各リンク毎に独立に持つ出力側メモ
リ503を用いてもよい。
【0179】つぎに、上記交換システム501を複数備
える交換網の実施例について説明する。交換システム5
01を複数用いた交換網の実施例を図14に示す。
える交換網の実施例について説明する。交換システム5
01を複数用いた交換網の実施例を図14に示す。
【0180】図14において、交換網507は、複数の
交換システム508/509を備え、交換システム間は
高速回線513により接続されている。各交換システム
には、低速回線を介して端末が接続され、交換網を介し
て端末間でパケット通信をすることができる。本実施例
においては、端末510から発信し、交換システム50
8が発側として用いられ、交換システム509が着側と
して用いられ、端末511において着信する場合につい
て説明する。
交換システム508/509を備え、交換システム間は
高速回線513により接続されている。各交換システム
には、低速回線を介して端末が接続され、交換網を介し
て端末間でパケット通信をすることができる。本実施例
においては、端末510から発信し、交換システム50
8が発側として用いられ、交換システム509が着側と
して用いられ、端末511において着信する場合につい
て説明する。
【0181】図14において、発側端末510から送出
されるパケット流は、低速回線512を介して発側交換
システム508へ送られる。ここで、もし発側交換シス
テム508にシェイピング機能がなければ、発側交換シ
ステム508でバッファリングされたパケット流が高速
回線513によってバースト的に伝送され、瞬間的に低
速回線512におけるスループットを超えることがあ
る。このバーストトラフィックが、図14に示すよう
に、複数の発側交換システム508から特定の着側交換
システム509に集中した場合、着側交換システム50
9と着側端末511の間の低速回線512の転送能力を
越えるので、着側交換システム509におけるパケット
の廃棄が発生する。
されるパケット流は、低速回線512を介して発側交換
システム508へ送られる。ここで、もし発側交換シス
テム508にシェイピング機能がなければ、発側交換シ
ステム508でバッファリングされたパケット流が高速
回線513によってバースト的に伝送され、瞬間的に低
速回線512におけるスループットを超えることがあ
る。このバーストトラフィックが、図14に示すよう
に、複数の発側交換システム508から特定の着側交換
システム509に集中した場合、着側交換システム50
9と着側端末511の間の低速回線512の転送能力を
越えるので、着側交換システム509におけるパケット
の廃棄が発生する。
【0182】しかし、発側交換システム508におい
て、本発明によるシェイピング機能を備えていれば、パ
ケット流を高速回線513に送出する際、スループット
を制限しながら送出することができる。そのため着側交
換システム509において、輻輳の発生を起こりにくく
することができ、また、輻輳が発生した場合でも着側交
換システム509から発側交換システム508へ通知手
段により輻輳通知を行えば発側交換システム508にお
いてスループットの制限の度合いを大きくし、輻輳の解
消を図ることができる。通知手段としては、例えば、逆
方向の回線によりパケットで通知する方法や、共通線信
号方式により通知する方法がある。この場合、着側交換
システム509においては、着側端末511への送出に
対しシェイピング機能は使用しなくてよい。
て、本発明によるシェイピング機能を備えていれば、パ
ケット流を高速回線513に送出する際、スループット
を制限しながら送出することができる。そのため着側交
換システム509において、輻輳の発生を起こりにくく
することができ、また、輻輳が発生した場合でも着側交
換システム509から発側交換システム508へ通知手
段により輻輳通知を行えば発側交換システム508にお
いてスループットの制限の度合いを大きくし、輻輳の解
消を図ることができる。通知手段としては、例えば、逆
方向の回線によりパケットで通知する方法や、共通線信
号方式により通知する方法がある。この場合、着側交換
システム509においては、着側端末511への送出に
対しシェイピング機能は使用しなくてよい。
【0183】つぎに、上述したシェイパー10を用いて
契約サービス上限の監視を行う交換システムの実施例に
ついて説明する。シェイパー10を用いて契約サービス
上限の監視を行う交換システムの実施例を図15に示
す。
契約サービス上限の監視を行う交換システムの実施例に
ついて説明する。シェイパー10を用いて契約サービス
上限の監視を行う交換システムの実施例を図15に示
す。
【0184】図15において、510は、発側端末、5
22は発側端末510から発信される入力セル/パケッ
ト流を示す。交換機502は、入力セル/パケット流5
22を交換して宛先の方路に送出する。シェイパー10
は、交換機502の出方路毎に設けられる。パケットバ
ッファ11は、シェイピングされるセル/パケットが一
時的に蓄えられる。出力セル/パケット流523は、リ
ンク毎にシェイピングされている。シェイピングレート
517は、リンク毎のシェイピングの度合いを示す設定
値であり第1の契約サービス上限値である。警告閾値5
18は、パケットバッファ11においてセル/パケット
の滞留が増加傾向にあることをリンク毎に検出するため
の第2の契約サービス上限値である。オーバフロー閾値
519は、同じくパケットバッファ11において当該リ
ンクのセル/パケットが過剰に入力されていることを検
出するための第3の契約サービス上限値である。契約情
報テーブル515は、シェイピングレート517、警告
閾値518、オーバフロー閾値519を格納し、シェイ
パー10の制御において参照される。警告/オーバフロ
ー通知520は、いずれかのリンクにおいてパケットバ
ッファ11でのセル/パケット滞留量が警告閾値518
またはオーバフロー閾値519を越えたことを通知する
ためのあらかじめ定められた情報である。警報装置51
6は、シェイパー10により警告時期またはオーバーフ
ローが検出され警告/オーバフロー通知520が出力さ
れると、警報通知セル/パケット521を出力し、発側
端末510に警報を転送する。警報通知セル/パケット
521は警報装置516によって発側端末510に転送
される。
22は発側端末510から発信される入力セル/パケッ
ト流を示す。交換機502は、入力セル/パケット流5
22を交換して宛先の方路に送出する。シェイパー10
は、交換機502の出方路毎に設けられる。パケットバ
ッファ11は、シェイピングされるセル/パケットが一
時的に蓄えられる。出力セル/パケット流523は、リ
ンク毎にシェイピングされている。シェイピングレート
517は、リンク毎のシェイピングの度合いを示す設定
値であり第1の契約サービス上限値である。警告閾値5
18は、パケットバッファ11においてセル/パケット
の滞留が増加傾向にあることをリンク毎に検出するため
の第2の契約サービス上限値である。オーバフロー閾値
519は、同じくパケットバッファ11において当該リ
ンクのセル/パケットが過剰に入力されていることを検
出するための第3の契約サービス上限値である。契約情
報テーブル515は、シェイピングレート517、警告
閾値518、オーバフロー閾値519を格納し、シェイ
パー10の制御において参照される。警告/オーバフロ
ー通知520は、いずれかのリンクにおいてパケットバ
ッファ11でのセル/パケット滞留量が警告閾値518
またはオーバフロー閾値519を越えたことを通知する
ためのあらかじめ定められた情報である。警報装置51
6は、シェイパー10により警告時期またはオーバーフ
ローが検出され警告/オーバフロー通知520が出力さ
れると、警報通知セル/パケット521を出力し、発側
端末510に警報を転送する。警報通知セル/パケット
521は警報装置516によって発側端末510に転送
される。
【0185】図15において、交換機502の入方路に
発側端末510が、出方路にシェイパー10がそれぞれ
1台ずつしか接続されていないが、一般的にはそれぞれ
複数台が交換機502に接続される。このとき、契約情
報テーブル515は、シェイパー10と組なのでシェイ
パー10と同数必要である。警報装置516は、複数の
シェイパー10からの警告/オーバフロー通知520を
処理でき、複数の発側端末510へ警報通知セル/パケ
ット521を転送できるならば1台でよい。
発側端末510が、出方路にシェイパー10がそれぞれ
1台ずつしか接続されていないが、一般的にはそれぞれ
複数台が交換機502に接続される。このとき、契約情
報テーブル515は、シェイパー10と組なのでシェイ
パー10と同数必要である。警報装置516は、複数の
シェイパー10からの警告/オーバフロー通知520を
処理でき、複数の発側端末510へ警報通知セル/パケ
ット521を転送できるならば1台でよい。
【0186】図15において、シェイパー10では、各
リンク毎のシェイピングレート517に従いシェイピン
グを行って出力セル/パケット流523を送出してい
る。シェイパー10においては、パケットバッファ11
内のセル/パケット滞留量をリンク毎に管理しておき、
セル/パケット送出時に警告閾値518およびオーバフ
ロー閾値519と比較する。もし、セル/パケット滞留
量が警告閾値518を越えた場合、シェイパー10は警
報装置516に通知し、警報装置516は警報通知セル
/パケット521を発側端末510へ転送する。また、
もしセル/パケット滞留量がオーバフロー閾値519を
越えた場合には、さらに入力される当該リンクのセル/
パケットはシェイパー10において廃棄される。廃棄が
発生したことは警告閾値518を越えた場合と同様に、
発側端末510へ通知される。発側端末510では、警
告を受けたら直ちに入力セル/パケット流522のスル
ープットを下げ、オーバフローの発生を回避することが
望ましい。
リンク毎のシェイピングレート517に従いシェイピン
グを行って出力セル/パケット流523を送出してい
る。シェイパー10においては、パケットバッファ11
内のセル/パケット滞留量をリンク毎に管理しておき、
セル/パケット送出時に警告閾値518およびオーバフ
ロー閾値519と比較する。もし、セル/パケット滞留
量が警告閾値518を越えた場合、シェイパー10は警
報装置516に通知し、警報装置516は警報通知セル
/パケット521を発側端末510へ転送する。また、
もしセル/パケット滞留量がオーバフロー閾値519を
越えた場合には、さらに入力される当該リンクのセル/
パケットはシェイパー10において廃棄される。廃棄が
発生したことは警告閾値518を越えた場合と同様に、
発側端末510へ通知される。発側端末510では、警
告を受けたら直ちに入力セル/パケット流522のスル
ープットを下げ、オーバフローの発生を回避することが
望ましい。
【0187】本実施例によれば、契約サービス上限を越
えると直ちにセル/パケットを廃棄する単純なポリシン
グ機能に比べて、より柔軟なサービスを提供することが
できる。
えると直ちにセル/パケットを廃棄する単純なポリシン
グ機能に比べて、より柔軟なサービスを提供することが
できる。
【0188】以上のように、上記それぞれの実施例にお
けるシェイパーを用いることにより、交換システムにお
ける様々なシェイピングを実現することができ、対象リ
ンク数の増加および処理速度の高速化に簡単に対応可能
なシェイピングを実現できる。
けるシェイパーを用いることにより、交換システムにお
ける様々なシェイピングを実現することができ、対象リ
ンク数の増加および処理速度の高速化に簡単に対応可能
なシェイピングを実現できる。
【0189】
【発明の効果】以上説明したように、本発明において
は、各リンク毎に設定されたスループットの上限値を守
りながらセルまたはパケットを送出する。入力スループ
ットが設定上限値を越えているときは、その入力を廃棄
するのではなく、遅延させそのリンクのセルまたはパケ
ット送出間隔を広げる制御を行う。送出可否判定は、周
回中のものに対してのみ行い、1入力送出のために全対
象リンク分のテーブルスキャン等を行わない。従って、
本発明によれば、対象リンク数の増加および処理速度の
高速化に簡単に対応可能なシェイピングを実現できると
いう効果がある。
は、各リンク毎に設定されたスループットの上限値を守
りながらセルまたはパケットを送出する。入力スループ
ットが設定上限値を越えているときは、その入力を廃棄
するのではなく、遅延させそのリンクのセルまたはパケ
ット送出間隔を広げる制御を行う。送出可否判定は、周
回中のものに対してのみ行い、1入力送出のために全対
象リンク分のテーブルスキャン等を行わない。従って、
本発明によれば、対象リンク数の増加および処理速度の
高速化に簡単に対応可能なシェイピングを実現できると
いう効果がある。
【図1】第1の実施例における周回型スループットシェ
イピング方法の概念図を示す。
イピング方法の概念図を示す。
【図2】第2の実施例における周回型スループットシェ
イピング方法の概念図を示す。
イピング方法の概念図を示す。
【図3】第3の実施例における周回型スループットシェ
イピング方法の概念図を示す。
イピング方法の概念図を示す。
【図4】第4の実施例における周回型スループットシェ
イピング方法の概念図を示す。
イピング方法の概念図を示す。
【図5】実施例における周回型スループットシェイピン
グ方法を実現するシェイパーのブロック図を示す。
グ方法を実現するシェイパーのブロック図を示す。
【図6】第1の実施例におけるシェイパー内のシェイピ
ング制御部のブロック図を示す。
ング制御部のブロック図を示す。
【図7】第2の実施例におけるシェイパー内のシェイピ
ング制御部のブロック図を示す。
ング制御部のブロック図を示す。
【図8】第3と第4の実施例におけるシェイパー内のシ
ェイピング制御部において共通の機能のブロック図を示
す。
ェイピング制御部において共通の機能のブロック図を示
す。
【図9】第3の実施例におけるシェイパー内のシェイピ
ング制御部のブロック図を示す。
ング制御部のブロック図を示す。
【図10】第4の実施例におけるシェイパー内のシェイ
ピング制御部のブロック図を示す。
ピング制御部のブロック図を示す。
【図11】実施例における交換システムのブロック図を
示す。
示す。
【図12】実施例における交換システムにおけるシェイ
パー内のシェイピング制御部の第1の出力側メモリの構
成図を示す。
パー内のシェイピング制御部の第1の出力側メモリの構
成図を示す。
【図13】実施例における交換システムにおけるシェイ
パー内のシェイピング制御部の第2の出力側メモリの構
成図を示す。
パー内のシェイピング制御部の第2の出力側メモリの構
成図を示す。
【図14】複数交換システムからなる交換網の概念図を
示す。
示す。
【図15】シェイパーによって契約サービス上限の監視
を行う交換システムの概念図を示す。
を行う交換システムの概念図を示す。
【図16】第1および第2の実施例における周回型スル
ープットシェイピング方法における入力パケット到着処
理のフローチャートを示す。
ープットシェイピング方法における入力パケット到着処
理のフローチャートを示す。
【図17】第1の実施例における周回型スループットシ
ェイピング方法における送出選択処理のフローチャート
を示す。
ェイピング方法における送出選択処理のフローチャート
を示す。
【図18】第2の実施例における周回型スループットシ
ェイピング方法における送出選択処理のフローチャート
を示す。
ェイピング方法における送出選択処理のフローチャート
を示す。
【図19】第3および第4の実施例における周回型スル
ープットシェイピング方法における入力パケット到着処
理のフローチャートを示す。
ープットシェイピング方法における入力パケット到着処
理のフローチャートを示す。
【図20】第3の実施例における周回型スループットシ
ェイピング方法における送出選択処理のフローチャート
を示す。
ェイピング方法における送出選択処理のフローチャート
を示す。
【図21】図21は第4の実施例における周回型スルー
プットシェイピング方法における送出選択処理のフロー
チャートを示す。
プットシェイピング方法における送出選択処理のフロー
チャートを示す。
【図22】第1の実施例における周回型スループットシ
ェイピング方法における各テーブル内容の一変化例の説
明図を示す。
ェイピング方法における各テーブル内容の一変化例の説
明図を示す。
【図23】第2の実施例における周回型スループットシ
ェイピング方法における各テーブル内容の一変化例の説
明図を示す。
ェイピング方法における各テーブル内容の一変化例の説
明図を示す。
【図24】第3の実施例における周回型スループットシ
ェイピング方法における各テーブル内容の一変化例の説
明図を示す。
ェイピング方法における各テーブル内容の一変化例の説
明図を示す。
【図25】第4の実施例における周回型スループットシ
ェイピング方法における各テーブル内容の一変化例の説
明図を示す。
ェイピング方法における各テーブル内容の一変化例の説
明図を示す。
【図26】シェイパーへの入力セルがシェイピングされ
て出力される第1の例の説明図を示す。
て出力される第1の例の説明図を示す。
【図27】シェイパーへの入力セルがシェイピングされ
て出力される第2の例の説明図を示す。
て出力される第2の例の説明図を示す。
1…周回部、2…送出選択部、3…入力順序番号管理
部、4…出力順序番号管理部、5…待合せ回数管理部、
6…最終送出時刻記録部、7…現在時刻確認部、8…リ
ンク別キュー管理部、10…シェイパー、11…パケッ
トバッファ、12…書込み制御部、13…書込みパケッ
ト制御データ、14…シェイピング制御部、15…読出
しパケット制御データ、16…読出し制御部、101…
入力順序番号制御回路、102…入力側メモリ、103
…セレクタ、104…読出待FIFO、105…書込み
制御回路A、106…読出し制御回路A、107…判定
回路、108…パケット送出タイミング回路、109…
出力側メモリ、110…再入待FIFO、111…書込
み制御回路B、112…読出し制御回路B、113…送
出選択開始通知、114…送出開始通知、201…判定
回路、202…出力側メモリ、203…フリーランカウ
ンタ、301…受信処理回路、302…書込み制御回路
C、303…トークン制御回路A、304…トークンメ
モリ、305…トークン返却待FIFO、306…判定
回路、307…出力側メモリ、308…トークン制御回
路B、309…周回待キュー、310…受信通知、40
1…判定回路、402…出力側メモリ、501…交換シ
ステム、502…交換機、503…出力側メモリ、50
4…制御卓、505…マッピングテーブル、506…初
期値/閾値テーブル、507…交換網、508…発側交
換システム、509…着側交換システム、510…発側
端末、511…着側端末、512…低速回線、513…
高速回線、514…交換システム、515…契約情報テ
ーブル、516…警報装置、517…シェイピングレー
ト、518…警報閾値、519…オバーフロー通知、5
20…警告/オーバフロー通知、521…警報通知セル
/パケット、522…入力セル/パケット流、523…
出力セル/パケット流、524…入力セル流、525…
出力セル流。
部、4…出力順序番号管理部、5…待合せ回数管理部、
6…最終送出時刻記録部、7…現在時刻確認部、8…リ
ンク別キュー管理部、10…シェイパー、11…パケッ
トバッファ、12…書込み制御部、13…書込みパケッ
ト制御データ、14…シェイピング制御部、15…読出
しパケット制御データ、16…読出し制御部、101…
入力順序番号制御回路、102…入力側メモリ、103
…セレクタ、104…読出待FIFO、105…書込み
制御回路A、106…読出し制御回路A、107…判定
回路、108…パケット送出タイミング回路、109…
出力側メモリ、110…再入待FIFO、111…書込
み制御回路B、112…読出し制御回路B、113…送
出選択開始通知、114…送出開始通知、201…判定
回路、202…出力側メモリ、203…フリーランカウ
ンタ、301…受信処理回路、302…書込み制御回路
C、303…トークン制御回路A、304…トークンメ
モリ、305…トークン返却待FIFO、306…判定
回路、307…出力側メモリ、308…トークン制御回
路B、309…周回待キュー、310…受信通知、40
1…判定回路、402…出力側メモリ、501…交換シ
ステム、502…交換機、503…出力側メモリ、50
4…制御卓、505…マッピングテーブル、506…初
期値/閾値テーブル、507…交換網、508…発側交
換システム、509…着側交換システム、510…発側
端末、511…着側端末、512…低速回線、513…
高速回線、514…交換システム、515…契約情報テ
ーブル、516…警報装置、517…シェイピングレー
ト、518…警報閾値、519…オバーフロー通知、5
20…警告/オーバフロー通知、521…警報通知セル
/パケット、522…入力セル/パケット流、523…
出力セル/パケット流、524…入力セル流、525…
出力セル流。
フロントページの続き
(56)参考文献 特開 平2−121549(JP,A)
特開 平2−170645(JP,A)
特許3103854(JP,B2)
特許2880271(JP,B2)
小樋康晴・山田敏明・河合淳夫・土岐
隆一,高速パケット網におけるトラヒッ
ク制御実現方法の一考察,信学技報,日
本,電子情報通信学会,1993年 3月19
日,SSE92−194
(58)調査した分野(Int.Cl.7,DB名)
H04L 12/56 200
Claims (5)
- 【請求項1】入力されたパケットの送出を、あらかじめ
定められた多重化論理単位であるリンクごとに、あらか
じめ定められたスループットの上限に従いシェイピング
を行なうスループットシェイピング装置であって、 前記入力されたパケットを入力順に保持する保持部と、 前記保持部に保持する順に、前記パケットが送出すべき
パケットか否かを前記スループットの上限に基づいて判
断する送出可否判断部と、 前記送出可否判断部により送出すべきでないと判断され
たパケットの送出を待ち合わせるために、当該パケット
を前記保持部に保持するパケットの最後尾に移行させる
送出順制御部とを有することを特徴とするスループット
シェイピング装置。 - 【請求項2】請求項1において、当該装置に存在する入
力されたパケットのうちリンクごとにより先に入力され
た先頭パケットを抽出するための先頭抽出手段と、前記
スループットの上限として、パケットの送出間隔をあら
かじめ定めて記憶する送出間隔記憶手段とをさらに有
し、 前記送出可否判断部は、前記先頭抽出手段において抽出
された先頭パケットについて、前記リンクごとの送出間
隔が、前記送出間隔記憶手段に記憶する送出間隔以上で
あれば、送出すべきであると判断することを特徴とする
スループットシェイピング装置。 - 【請求項3】入力されたパケットの送出を、あらかじめ
定められた多重化論理単位であるリンクごとに、あらか
じめ定められたスループットの上限に従いシェイピング
を行なうスループットシェイピング装置であって、 前記入力されたパケットを入力順に記憶するパケット記
憶手段と、 前記入力したパケットについてのあらかじめ定められた
リンクの識別情報と、前記パケットを記憶した前記パケ
ット記憶手段のアドレスとをパケット制御データとして
生成し、前記パケット記憶手段に前記パケットを書き込
む書き込み制御部と、 前記書き込み制御部で生成されたパケット制御データを
入力順に保持し、前記パケットが送出すべきパケットか
否かを前記スループットの上限に基づいて判断し、送出
すべきでないと判断されたパケットの送出を遅延させる
シェイピング制御部と、 前記シェイピング制御部により送出すべきパケットであ
ると判断されたときに前記パケット記憶手段からパケッ
トを読み出す読みだし制御部とを有することを特徴とす
るスループットシェイピング装置。 - 【請求項4】受信したパケットを宛先にしたがって交換
し、各方路に送信する交換機と、送信側の各方路に対応
して設けられるスループットシェイピング装置とを有す
る交換システムであって、 前記スループットシェイピング装置は、 前記入力されたパケットを入力順に保持する保持部と、 前記保持部に保持する順に、前記パケットが送出すべき
パケットか否かを前記スループットの上限に基づいて判
断する送出可否判断部と、 前記送出可否判断部により送出すべきでないと判断され
たパケットの送出を待ち合わせるために、当該パケット
の前記保持部に保持するパケットの最後尾に移行させる
送出順制御部とを有することを特徴とする交換システ
ム。 - 【請求項5】入力されたパケットの送出を、あらかじめ
定められた多重化論理単位であるリンクごとに、あらか
じめ定められたスループットの上限に従いシェイピング
を行なうスループットシェイピング方法であって、 前記入力されたパケットを入力順に保持し、 前記保持する順に、前記パケットが送出すべきパケット
か否かを前記スループットの上限に基づいて判断し、 前記判断の結果、送出すべきであると判断されたパケッ
トは送出し、 送出すべきでないと判断されたパケットを前記保持する
パケットの最後尾に移行させることによりパケットを周
回させてパケットの送出を待ち合わせることを特徴とす
るスループットシェイピング方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03155494A JP3375191B2 (ja) | 1993-03-16 | 1994-03-01 | スループットシェイピング装置、交換システムおよびスループットシェイピング方法 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5532393 | 1993-03-16 | ||
JP5-55323 | 1993-03-16 | ||
JP03155494A JP3375191B2 (ja) | 1993-03-16 | 1994-03-01 | スループットシェイピング装置、交換システムおよびスループットシェイピング方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0715441A JPH0715441A (ja) | 1995-01-17 |
JP3375191B2 true JP3375191B2 (ja) | 2003-02-10 |
Family
ID=26370041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03155494A Expired - Fee Related JP3375191B2 (ja) | 1993-03-16 | 1994-03-01 | スループットシェイピング装置、交換システムおよびスループットシェイピング方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3375191B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10173677A (ja) | 1996-12-16 | 1998-06-26 | Toshiba Corp | パケット通信における物理ポートの流量制御方法及びその装置 |
-
1994
- 1994-03-01 JP JP03155494A patent/JP3375191B2/ja not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
小樋康晴・山田敏明・河合淳夫・土岐隆一,高速パケット網におけるトラヒック制御実現方法の一考察,信学技報,日本,電子情報通信学会,1993年 3月19日,SSE92−194 |
Also Published As
Publication number | Publication date |
---|---|
JPH0715441A (ja) | 1995-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2043600C (en) | Serving constant bit rate traffic in a broadband data switch | |
US5457687A (en) | Method and apparatus for backward explicit congestion notification (BECN) in an ATM network | |
Chao | A novel architecture for queue management in the ATM network | |
EP0577269B1 (en) | Arrangement for bounding jitter in a priority-based switching system | |
JP3128654B2 (ja) | 監視制御方法、監視制御装置及び交換システム | |
US5278828A (en) | Method and system for managing queued cells | |
US5629928A (en) | Dynamic fair queuing to support best effort traffic in an ATM network | |
US6122279A (en) | Asynchronous transfer mode switch | |
US5390176A (en) | Low delay or low loss switch for ATM | |
US6430191B1 (en) | Multi-stage queuing discipline | |
JP3623089B2 (ja) | 非同期転送モードにおいてセルを伝送するための方法 | |
JPH10173661A (ja) | パケット交換機、および輻輳通知方式 | |
JPH07264190A (ja) | Atm交換機における呼受付方法 | |
JPH09510062A (ja) | 広帯域交換網 | |
JP2000501260A (ja) | 情報パケット交換機のためのスケジューラ | |
US6172963B1 (en) | Flow control for switching | |
JP2002543740A (ja) | Atmネットワークのトラフィックを管理する方法および装置 | |
Lund et al. | Fair prioritized scheduling in an input-buffered switch | |
AU1216399A (en) | Asynchronous transfer mode switch with function for assigning queue having forwarding rate close to declared rate | |
US6490640B1 (en) | Packet data switching apparatus | |
JP3375191B2 (ja) | スループットシェイピング装置、交換システムおよびスループットシェイピング方法 | |
EP0604538B1 (en) | Method and apparatus for asynchronous transfer mode (atm) network | |
JPH11510009A (ja) | 割付型並びに動的交換機フロー制御 | |
JP3159961B2 (ja) | セル受信側装置及びトラヒック制御システム | |
Pao et al. | Cell scheduling for ATM switch with two priority classes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 |