JPH11234309A - 非同期転送モード・セル送信スケジューリング - Google Patents
非同期転送モード・セル送信スケジューリングInfo
- Publication number
- JPH11234309A JPH11234309A JP33072298A JP33072298A JPH11234309A JP H11234309 A JPH11234309 A JP H11234309A JP 33072298 A JP33072298 A JP 33072298A JP 33072298 A JP33072298 A JP 33072298A JP H11234309 A JPH11234309 A JP H11234309A
- Authority
- JP
- Japan
- Prior art keywords
- channel
- time stamp
- value
- time
- transmission
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L12/5602—Bandwidth control in ATM Networks, e.g. leaky bucket
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5679—Arbitration or scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
いて、ATMセル送信を公平にスケジュールする。 【構成】 ネットワーク・ハブおよびATMトランスレ
ータ・システム5は、トランスレータ・カード15とイ
ンターフェースするホスト・コントローラ10を備え
る。トランスレータ・カード15のSARデバイス12
は、トランシーバ22と通信するSONET送受信回路
20と接続され、通信設備FOを介してATMパケット
・セルを送受信する。スケジューラ14は、ソートされ
たエントリのリストをオンチップ・パラメータ・メモリ
とオフチップ・パラメータ・メモリ18にヒープ状に保
持するヒープ・ソート状態マシンを備える。スケジュー
ラ14は、そのセルに対して発行した送信クレジットを
SARデバイス12に知らせ、送信させる。
Description
関し、特に、非同期転送モード(ATM)データ通信に
関する。
タル通信の分野、音声,ビデオまたはデータの通信の分
野において、ネットワークを介して接続されたノードま
たはプロセッサ間でメッセージをやり取りするための様
々な通信技術が開発されている。そのための1つのアプ
ローチとして、パケット・スイッチングがある。そこで
は、いくつかのネットワーク・ノードが集信装置として
動作して、パケットとなっているメッセージのある部分
を送信ユニットから受け取る。これらのパケットは、集
信装置で格納され、パケット・アドレスによって指定さ
れた受信ユニットが結合された指定集信装置へ送り出さ
れる。パケットのサイズは、集信装置間で(つまり、店
および行き先ノード間で)通信可能な情報の上限に相当
し、典型的には、メッセージまたはファイル1つ分であ
る。各パケットは、ソース・ネットワーク・アドレスお
よび指定ネットワーク・アドレスに関するヘッダ情報を
含み、これにより、メッセージ・パケットの適切なルー
ティングができる。パケット・スイッチングを行うこと
により、長い個々のメッセージによってルーティング・
パスが不当に塞がることを避けることができるので、店
−行き先・ノードにおける送信遅延を減らすことにな
る。高速パケット・スイッチングは、1秒間に数百メガ
ビット以上の高速データ速度で動作するパケット・スイ
ッチング技術を指す。
の公知例は、パケット・スイッチングの能力を回路スイ
ッチングの予測と結びつけたもので、非同期転送モード
(一般には、「ATM」と呼ばれる。)であり、ここで
は、メッセージ長やデータ種類(すなわち、音声,デー
タまたはビデオ)に関係なく、パケット長および組織化
が固定されている。ATMプロトコルによる固定パケッ
トは「セル」と呼ばれ、各ATMセルは53バイトから
なり、そのうち5バイトがヘッダに使われ、残りの48
バイトがペイロードになる。このプロトコルによれば、
大きなパケットは、多数の固定長ATMセルからなる。
固定長セル・フォーマットにより、ATMセル・スイッ
チングは、ソフトウェアに対するハードウェアに導入さ
れ、その結果、1秒に数ギガバイトという範囲の送信速
度になる。さらに、パケットではなくセルを切り換える
ことによって、ネットワークに対してスケーラブル・ユ
ーザ・アクセスが可能となり、アプリケーションにより
数メガbpsから数ギガbpsまで対応できる。非同期
送信であるため、ATMセルを使用して、遅延可能(de
lay-tolerant)データ・トラフィックを、音声やビデオ
のような時間厳守(time-sensitive)トラフィックと混
ぜて、同じバックボーン機能を使って送信することがで
きる。これらの様々のアプリケーションをより効率良く
利用するために、現在では、時間厳守トラフィックを遅
延可能トラフィックに優先させるトラフィック管理技術
が使用されている。
閉ループ・トラフィック管理方式が開発された。閉ルー
プ・トラフィク管理は、2つのネットワーク・ノード間
でフィードバック信号を使用して、チャンネルのデータ
・レートを支配し、帯域幅利用の効率を改善することを
目的とする。この効率改善が特に必要となるのは、リア
ルタイム音声/ビデオ情報の通信が含まれる場合であ
る。これらのチャンネルの時間厳守が、大きなバースト
の時間に影響されないデータの送信によって乱されるこ
とがあるからである。
信カテゴリーを利用して、ATM通信に帯域幅を割り当
てる。優先順位が上位にあるカテゴリーの1つに、定ビ
ット・レート(CBR)があり、ここでは、送信が一定
速度で行われる。可変ビット・レート(VBR)送信に
は2つのカテゴリーがあり、1つはリアルタイム・デー
タ、もう1つは非リアルタイム・データである。優先順
位が低いカテゴリーには、非スケジュール・ビット・レ
ート(Unscheduled Bit Rate:UBR)があり、ここで
は、送信速度の保証なしに、ソースによってデータが送
信される。
ーは、アベイラブル・ビット・レート(ABR)と呼ば
れる。このカテゴリーでは、受信側ネットワーク・ノー
ドからのフィードバックは、リソース管理(RM)セル
を介してまたはデータ・セル内での明示フロー制御指示
によって、ソース・ネットワーク・ノードにより使用さ
れて、現在のネットワーク条件に応じてその送信レート
を動的に制御する。この制御は、送信チャンネルを開設
するときに指定されるいくつかの送信パラメータ内で行
われる。典型的には、ソース・ノードと指定ノードと
が、ピーク・セル・レート(PCR)および最小セル・
レート(MCR)について折り合いをつけ、ABR通信
用送信の上限および下限を設定する。これらの上下限が
設定されると、フロー制御アルゴリズムが行われる。こ
れは、典型的には、指定ノードで行われ、各チャンネル
について所望の送信レートを画定する。当業者には公知
のように、所与の2つのネットワーク・ノードの間に
は、数千もの接続が同時に開設される。これに応じて、
トラフィック管理もかなり複雑な操作であり、特に、A
BRカテゴリー通信の制御は複雑である。
化および再構築(SAR)デバイス若しくは操作が使用
されて、フロー制御アルゴリズムによって設定された所
望のビットレートに応じて、ATMセルが準備され送信
される。従来のSARデバイスがしばしば含む「トラフ
ィク・シェイパ」機能は、「穴の開いたバケツ」として
知られている。というのは、バーストの間に手早くセル
・データを満たすけれど、ネットワークに対して確実に
データを「漏らす」または送信するバッファを備えるか
らである。このようなバッファからの送信のスケジュー
ル管理は、扱うチャンネル数が増えるにつれて急激に複
雑になり、特に、ABR通信が含まれる場合は複雑にな
る。
て、いくつかの従来のソース・ノードSARデバイスの
導入には、多数のチャンネル間でのATMセルのスケジ
ュールを扱うプログラムがなされた高性能マイクロプロ
セッサが使用されることがある。ただし、そのようなマ
イクロプロセッサの使用は、典型的には、RISCコプ
ロセッサとしてであるが、これは、非常に本質的なもの
であり、特に、プログラムの記憶,送信データのキャッ
シュ化およびバス・インターフェース機能の提供に必要
な外部メモリの実質的量を考えると、非常に本質的なも
のである。たとえば、2048個のチャンネルの各々に
多数の送信セルを記憶するバッファを提供し、各チャン
ネルが、そのチャンネルの最後の送信からいくつの周期
が経過したかをカウントするカウンタ(これにより、次
のセルがいつ送信できるかを決める。)を装備するとな
ると、この機能のために非常に大きなメモリ・リソース
が必要となる。
ラブル・ビット・レート(ABR)非同期転送モード
(ATM)送信に有効なスケジューリング機能を提供す
ることを目的とする。
入することのできるスケジューリング機能を提供するこ
とを目的とする。
の明細書および添付図面を参照することにより、当業者
にとって明らかとなるであろう。
リア・ネットワーク(LAN)からATM通信へのメッ
セージをやりとりするための転送システムに導入するこ
とができる。この転送システムは、ABRスケジューリ
ング機能と組み合わされて動作する分節化および再構築
(SAR)機能を備える。ABRスケジューラは、ヒー
プ(積み上げ)データ構造を維持する回路を備え、そこ
では、各エントリーがタイム・スタンプと関連するチャ
ンネル識別子を含む。タイム・スタンプとは、当該関連
チャンネルに対するセルが送信される次の時刻を示すタ
イマー値である。ヒープ・ソートは、ヒープ・データ構
造内のルート・エレメントが次に送信予定のセルと対応
するように行われる。本発明の一態様によれば、ヒープ
・データ構造は、オンチップ・メモリ・リソースおよび
外部メモリに記憶することができ、そこでは、最新のヒ
ープ・ソート結果がオンチップ記憶される。
できる通信システムの一例を示すもので、これを参照し
て説明を行う。図1の例は、以下の説明から明らかにな
るように、LANにおけるコンピュータのようなデータ
処理装置が他のデータ処理装置と非同期転送モード(A
TM)で通信を行う方法に関する。他のデータ処理装置
は、それ自体が別のLANにあるコンピュータ,スタン
ド・アロン型のコンピュータまたは所望の通信を行いた
い他のシステムであってもよい。当業者にとっては明ら
かなように、本発明は、図1に示されたのとは異なるア
ーキテクチャの通信システムにも実施することができ、
図1のシステムは一例にすぎない。その他の実施も、本
発明の範囲に入るものと考えられる。
て、LANに配設されたコンピュータ2の1つと遠隔地
に配設されたコンピュータ6の1つとの間で通信を行う
とする。この例におけるコンピュタ2は、エーテルネッ
ト(Ethernet)型のLANに配設され、各コンピュータ
2はネットワーク・ハブおよびATMトランスレータ5
と通信状態にある。もちろん、コンピュータ2は、トー
クン・リングLANなど他のLANに配設されてもかま
わない。エーテルネットLANにおいては、ネットワー
ク・ハブおよびATMトランスレータ5の制御下で、2
048個の個別の通信チャンネルを設定することができ
る。ネットワーク・ハブおよびATMトランスレータ5
の構成や動作について以下詳細に説明するが、これは、
ファイバ光設備FOに接続され、コンピュータ2の1つ
およびLANの外のコンピュータと通信のやり取りを行
うことができる。ファイバ光設備FOは、1つまたは2
つ以上の中央局スイッチ7のネットワークによって受信
され、ネットワークハブおよびATMトランスレータ5
と通信で指定された目的地との間を接続する。
に配置されている。この例において、遠隔地コンピュー
タ6はそれぞれ、ATM構内(premises)スイッチ8に
接続される。ATM構内スイッチ8により、ワーク・グ
ループまたは部署におけるコンピュータ6間でのATM
通信が可能となる。この例において、ATM構内スイッ
チ8は、外部ファイバ光機能FOにも接続され、そのロ
ーカルATMワーク・グループ内のコンピュータ6はA
TMメッセージをそのワーク・グループ外の目的地に通
信することもできる。ATM構内スイッチ8は、転送は
行なわず、(ファイバ光機能FOを介してまたはコンピ
ュータ6のワーク・グループ内で)ATM通信だけを行
う。あるいはまた、コンピュータ6がLANにも配設さ
れている場合、ATM構内スイッチ8の代わりに、別の
ネットワーク・ハブおよびATMトランスレータ5を導
入することができる。図1のコンピュータ6の配置は単
なる一例にすぎない。
びATMトランスレータ5は、エーテルネットLANを
介してコンピュータ2のインターフェースを行うととも
に、ATM通信用のファイバ光機能FOにもインターフ
ェースを行う。このようなネットワーク・ハブおよびA
TMトランスレータ5は、そのハブ管理機能に加えて、
エーテルネット・パケットを転送しなければならず、そ
の長さはおよそ1500バイトになり、ファイバ光機能
FOを介したコンピュータ2からの通信用の固定長AT
Mセルに入れられる。受信の場合は、この逆になる。
実施の形態によるネットワーク・ハブおよびATMトラ
ンスレータの構成について説明する。本発明のこの実施
の形態によれば、ネットワーク・ハブおよびATMトラ
ンスレータ5は、ホスト・コントローラ10を備える。
ホスト・コントローラ10は、コンピュータ2からのエ
ーテルネット通信用のエーテルネット・ハブ機能を扱う
ための従来のコンピュータ・ワークステーションであ
り、ホスト・コントローラ10は、この厳しい性能にお
いて動作する充分な性能をもつものとする。この例にお
いて、ホスト・コントローラ10は、そのデータ処理機
能とともに、公知のPCIバス規格により動作する高性
能ローカル・バスPCIBUSを備える。ホスト・コン
トローラ10と組み合わされ、ネットワーク・ハブおよ
びATMトランスレータ5は、トランスレータ・カード
15を備える。トランスレータ・カード15は、図示さ
れているように、ローカル・バスPCIBUSとのイン
ターフェースを行い、かつ、LANからATMへの転送
を行うとともにファイバ光機能FOへのインターフェー
スを行う回路を備える。このように、ホスト・コントロ
ーラ10は、遠隔目的地向けのコンピュータ2の1つか
らの通信を認識し、これらの通信をローカル・バスPC
IBUSを介してトランスレータ・カード15に送るの
に必要な機能を備える。
バイス12を備える。SARデバイス12は、トランス
レータ・カード15が扱う通信のための分節化および再
構築機能を行い、そのために、ホスト・コントローラ1
0のローカル・バスPCIBUSに接続されている。本
発明の好ましい実施の形態に関連して使用される適当な
SARデバイス12の例としては、テキサス・インスツ
ルメンツ社(本発明の譲受人)から出されているTEN
TA1575ATM分節化および再構築デバイスがあ
る。SARデバイス12は、ローカル・バスLBUSを
介して、公知のSONET規格により通信のエンコード
およびデコードを行うSONET送受信回路20に接続
されている。SONET送受信(Rx/Tx)回路20
は、トランスシーバ22に接続され、トランスシーバ2
2は、従来の方法で、ファイバ光設備FO上へ信号を送
信し、そこから信号を受信する。
ワーク・ハブおよびATMトランスレータ5におけるト
ランスレータ・カード15は、スケジューラ14を備え
る。スケジューラ14は、コプロセッサ・バスCOPB
USによってSARデバイス12と制御メモリ16とに
接続されている。本発明の好ましい実施の形態によれ
ば、スケジューラ14は1個の集積回路デバイスに導入
される。制御メモリー16は、システム・ソフトウェア
によってアクセスされる構成空間を備え、それが、構
成,初期設定およびエラー操作機能を提供する。また、
スケジューラ14は、制御バスCOPIを介してSAR
デバイス12に接続され、それにより、同期のためのク
ロックがスケジューラ14に提供される。また、制御バ
スCOPIは、ATMセルが受信または送信されたこと
をスケジューラ14に知らせるための制御信号を搬送す
る。制御信号は、スケジューラ14に対するリセット信
号、また、FIFOリソースの状態についてのスケジュ
ーラ14からSARデバイス12への信号として機能
し、また、そこへの割り込みを提供する信号として機能
する。また、スケジューラ14は、ATM(UTOPI
A)バス・プロトコル用の従来のユニバーサル・テスト
および動作・物理インターフェースにおけるラインに対
応するバスRXUTOPIAを介して信号を受信する。
スケジューラ14は、ラインRXUTOPIAを介した
オブザーバとしてのみ動作し、到来するATMセルの受
信を認識する。
メモリ18に接続されている。パラメータ・メモリ18
はメモリ・リソースであって、スケジューラ14からの
オフチップで、ネットワーク・ハブおよびATMトラン
スレータ5が扱う各エーテルネット・チャンネルについ
ての情報を記憶する。このパラメータ・メモリ18は、
各チャンネルについて、そのチャンネルで行われる通信
の様々なセル・レートに関するインジケータを記憶し、
また、そのチャンネルについての識別子(たとえば、仮
想パス識別子(VPI)または仮想チャンネル識別子
(VCI))を記憶する。本発明の好ましい実施の形態
によれば、パラメータ・メモリ18は、チャンネルのい
くつかについて、各エーテルネット・チャンネルと関連
するタイム・スタンプ・オフセットおよびベース値を記
憶するとともに、そのチャンネルに対する次のセルがフ
ァイバ光設備FOを介する通信のために処理される時刻
を示すタイム・スタンプの値を記憶する。本発明のこの
実施の形態において、パラメータ・メモリ18は、64
kのオーダーで32ビット・ワードを含む。
形態による、ソース操作を行うスケージュラ14の部分
の構成について、以下に詳細に説明する。スケジューラ
14は、図3に示された部分の他に、制御信号によって
選択されたATMモードまたはPHYモードで、UTO
PIAインターフェース(つまり、RXUTOPIAバ
ス)を介したセルの受信をモニタする目的地処理回路を
備える。ATMモードでは、スケジューラ14の受信側
が、到来するセルを受信し、それらをSARデバイス1
2の再構築インターフェースに転送する。PHYモード
では、スケジューラ14の受信側が、PHYデバイスの
TXUTOPIAとして動作し、到来するセルが切換え
エレメントによってSARデバイス12の再構築インタ
ーフェースに適用されるとき、到来するセルをモニタす
る。
のソース側では、以下に詳細に説明するように、ソース
挙動プロセッサ24が、ファイバ光設備FOを介してA
TMセルを送信するスケジュールを行うスケジューラ1
4の一次操作ロジックを構成する。ソース挙動プロセッ
サ14は、アベイラブル・ビット・レート(ABR)送
信を実行し、バスCOPI上の制御信号に基づきコプロ
セッサ・バスCOPBUSを介してSARデバイス12
と通信を行い、スケジューラ14内の他の機能を介して
高レベル制御を提供する。ソース挙動プロセッサ24
は、ヒープ・ソート状態マシン36のように、外部パラ
メータ・メモリ18とインターフェースを行う。
・ソート状態マシン36は、外部パラメータ・メモリ1
8およびオンチップ・パラメータ・メモリ(PM)44
の両方とインターフェースする。以下の説明から明らか
になるように、オンチップ・パラメータ・メモリ44
は、次に送信される予定のATMセル(たとえば、送信
される次の256個のATMセル)についてのタイム・
スタンプ情報を含み、一方、オフチップ・パラメータ・
メモリ18は、すべてのセルに関してソース挙動プロセ
ッサ24が使用する送信パラメータと、残りのATMセ
ル(たとえば、現在の送信待ち行列内のATMセル25
6〜2047)についてのタイム・スタンプ情報とを含
む。オンチップ・パラメータ・メモリ44とオフチップ
・パラメータ・メモリ18とがこのように構成されるこ
とは、スケジューラ14およびSARデバイス12にと
って有利である。というのは、オンチップ・メモリの方
が普通アクセスが早く、また、スケジューラ14がスケ
ジュールすべきLANチャンネルの数は、オフチップ・
パラメータ・メモリ18のサイズを大きくするだけで簡
単にスケールできるからである。
プロセッサ24が、アドレス・バスADDR上のアドレ
ス情報を提供し、データ・バスDATA上のデータを双
方向に通信する。スケジューラ・コマンド・レジスタ2
6は、バスADDR,DATAに接続され、新規ATM
セルの待ち行列を送信待ち行列に繋げるためのソース挙
動プロセッサ24からの通信を扱い、そこには、セルが
送信予定にあるまたは送信スケジュールされたと宣言さ
れる時刻の決定も含まれる。スケジューラ・コマンド・
レジスタ26は、ソース挙動プロセッサ24からそのよ
うなコマンドを受け取り、ヒープ・ソート状態マシン3
6にコマンド信号を送るとともに、ラインACR上の許
可されたセル・レート値をデバイダ28へ送る。
についてタイム・スタンプを決定する回路は、デバイダ
28を備える。デバイダ28は、スケジューラ・コマン
ド・レジスタ26からラインACR上のセル用の許可さ
れたセル・レート値を受け取り、また、ラインCLK上
のクロック信号を受信する。図3には示されていない
が、ラインCLK上のクロック信号は、スケジューラ1
4の他の同期回路にも入力され、スケジューラ14が行
うすべての同期操作はこのクロック信号に基づくことが
好ましい。一般に、デバイダ28は、ラインCLK上の
クロック信号のサイクル数に対応する値を生成し、それ
がラインACR上でやり取りされる許可されたセル・レ
ート値に対する周期になり、この周期値が浮動小数点・
整数回路30に供給される。この浮動小数点・整数回路
30は、この周期値を整数値に変換し、加算器31への
ラインOFFSET上の信号を生成する。ラインOFF
SET上の信号の値は、セルに「送信クレジット」が発
行される(つまり、送信がスケジュールされる)までに
経過したラインCLK上のクロック信号のサイクル数に
対応する。この操作のより詳細な説明は、以下に行う。
上の値が、マルチプレクサ32から受信されるラインB
ASE上の信号の値に加算される。マルチプレクサ32
は、ラインRKEY上のヒープ・ソート状態マシン36
の出力から、当該チャンネルが最後に使用された(matu
red )時刻であるルート・キー値に対応する1つの入力
を受信し、また、基準タイマー38から、タイマーの現
在値に対応するもう1つの入力を受信する。このタイマ
ーの現在値が、デュー・コンパレータ40によって、セ
ル・タイム・スタンプと比較される。マルチプレクサ制
御機能33によってマルチプレクサ32への制御入力が
生成される。マルチプレクサ制御機能33は、ラインR
KEY上のヒープ・ソート状態マシン36の出力と、基
準タイマー38からの現在グローバル時刻と、浮動小数
点・整数回路30からのラインOFFSET上のオフセ
ット値とを受け取る。マルチプレクサ32が選択するベ
ース値の選択について、以下、詳細に説明する。加算器
31からの結果として得られる和は、ラインKEY上
に、新たにスケジュールされるセルについてのタイム・
スタンプ(BASE+OFFSET)としてヒープ・ソ
ート状態マシン36に提供される。以下に詳細に説明す
るように、ヒープ・ソート状態マシン36は、それらの
タイム・スタンプによりすべての現時点でアクティブな
セルをソートし、セルが送信クレジットを受け取る順序
を設定する。ヒープ・ソート状態マシン36からの制御
信号は、スケジューラ出力レジスタ42に提供される。
これらの制御信号は、ヒープ・ソート状態マシン36が
現在ソート処理中であることを示すラインSORTBU
SY上の信号を含む。このソート期間中、ソース挙動プ
ロセッサ24はスケジュール用に新規セルを送り出すこ
とはない。ラインCHANおよびラインVALID上の
信号は、ルート・セル(すなわち、以下に述べるよう
に、次の”デュー”セル)の識別および有効性を示し、
それらの信号は当該チャンネル用のラインRKEY上の
デュー・コンパレータ40に提示され、そのタイム・ス
タンプ値を伝える。
ロック信号が1サイクル進むごとに進む単純なカウンタ
であり、スケジューリング操作の時刻ベースとなる。デ
ュー・コンパレータ40は、ヒープ・ソート状態マシン
36からのラインRKEY上のタイム・スタンプ値と一
緒に基準タイマー38の出力を受け取る。ソート処理の
結果としてルート・チャンネルが見つかったことを知ら
せるVALID信号をヒープ・ソート状態マシン36か
ら受け取ると、コンパレータ40は、当該ルート・チャ
ンネル用のタイム・スタンプを基準タイマー38からの
現在値と比較して、このセルの送信クレジットを発行す
べき時刻になったかどうかを決定し、もしそうであれ
ば、それをスケジューラ出力レジスタ42にラインDU
Eラインを介して知らせる。スケジューラ出力レジスタ
42は、ソート回路からソース挙動プロセッサ24への
通信を扱う。この通信には、たとえば、送信クレジット
が発行されるべきセルを有するチャンネルの指示や、パ
ラメータ・メモリ18,44を更新するためのデータな
どが含まれる。
動作は以上の通りであり、次に、図4を参照して、本発
明の好ましい実施の形態による、送信用のATMセルを
スケジュールするスケジューラ14の動作について、詳
細に説明する。図4に示された動作は、一方では、ソー
ス挙動プロセッサ24によって行われものであり、また
他方において、スケジューラ14内のソート回路(ヒー
プ・ソート状態マシン36およびそれと関連する上述し
た回路)によって行われる。スケジューラ14のこれら
の2つの部分の動作は、図4のフロー・ダイアグラムに
おける2つの部分に対応し、相互に協調的に行われる。
動作をスケジュールしたATMチャンネル(チャンネル
CHn )用のスケジュール動作を開始する。プロセス4
8において、ソース挙動プロセッサ24は、パラメータ
・メモリ18またはSARデバイス12からチャンネル
CHn 用の許可されたセル・レート(ACR)値を検索
して、このACR値を必要に応じて更新する。なお、通
信システムにおけるアクティブ・チャンネル用のACR
値の更新は、セル送信要求が受け取られるたびに行われ
る必要はなく、チャンネル条件が変更されたとき(たと
えば、ATM送信が終了したとき、または、新しいAT
Mチャンネルが開設されたとき)にのみ行われる。条件
に変更がない場合、プロセス48でソース挙動プロセッ
サ24が行うことは、パラメータ・メモリ18からチャ
ンネルCHn 用の現在のACR値を検索し、ラインAC
R上のこの値をデバイダ28に送るだけである。
49を行い、ヒープ・ソート状態マシン36がソート処
理の最中であるかどうかをスケジューラ出力レジスタ4
2に決定させる。上述したように、このビジー状態は、
ヒープ・ソート状態マシン36が制御ラインSORTB
USY上のアクティブ信号をスケジューラ出力レジスタ
42へ発行することによって示される。ヒープ・ソート
状態マシン36がビジー(判定49がYES)であれ
ば,ソース挙動プロセッサ24は、ヒープ・ソート状態
マシン36がビジーでなくなるまで、待ち状態50にな
り、この間、ソート回路に新しいコマンドを発行するこ
とはない。ヒープ・ソート状態マシン36がビジーでな
いと判定49が決定する(判定49がNO)と、制御は
チャンネルCHn の処理用のプロセス52にパスされ
る。
4は、現在のATMチャンネルCH n のチャンネル番号
および関連ACR値をスケジューラ・コマンド・レジス
タ26に書き込む。その後、ソース挙動プロセッサ24
は待ちループに入り、(ATMセルが満期になる次のチ
ャンネル(以下に説明されるように、普通は、異なった
チャンネルCHm )に対して、ヒープ・ソート状態マシ
ン36がアクティブVALID信号を発行したのに対応
して)有効ビットがセットされたかどうかをスケジュー
ラ出力レジスタ42に決定させる。まだである(判定5
3がNO)場合には、ソース挙動プロセッサ24は、こ
の有効ビットがセットされるまで待ち状態54に入る。
コマンドおよびACR値を受け取ると、プロセス62
で、スケジューラ・コマンド・レジスタ26がACR値
をデバイダ28に渡し、チャンネルCHn 用のタイム・
スタンプを以下のように決定する。本発明の本好ましい
実施の形態によれば、ソース挙動プロセッサ24によっ
て引き出されるACRレート(セル/秒の単位)は、ラ
インCLK上のクロック信号のサイクル数に変換され
る。プロセス64で、デバイダ28は、ラインCLK上
のクロック信号の周波数をチャンネルCHn 用のライン
ACR上の許可されたセル・レート値で割って、チャン
ネルCHn のセル送信の期間を表す値をクロック・サイ
クル数/セルの単位で引き出す。この値は、浮動小数点
・整数回路30によって浮動小数点値から整数に変換さ
れ、プロセス64の結果はオフセット値としてラインO
FFSET上で加算器31に供給される。このオフセッ
ト値は、チャンネルCHn に対して送信クレジットが満
期になる「未来の」時刻までのCLKサイクル数に対応
する。
インOFFSET上のこのオフセット値は、ベース時刻
に加算され、チャンネルCHn 用の実際のタイム・スタ
ンプを引き出す。プロセス66で、マルチプレクサ32
はマルチプレクサ制御機能33によって制御されて、ベ
ース時刻を選択する。ベース時刻は、典型的には、当該
チャンネルが最後に送信クレジットを受け取った時刻で
ある。チャンネルCH n に対して送信クレジットが発行
されたばかりであっても、上述したプロセスの潜伏時間
がセル・レートに対して実質的相関にあることを考慮す
ると、この選択は有益である。本発明の好ましい実施の
形態によれば、ベース時刻は現在のグローバル時刻(す
なわち、基準タイマ38の出力)であってもよい。マル
チプレクサ32によってどちらのベース時刻を選択すべ
きかの決定について、以下に詳細に述べる。というの
は、この決定は、スケジューラ14によって扱われる各
ABRチャンネルの最終セル・レートにとって決定的な
ものだからである。
3は別個の回路であるが、マルチプレクサ制御機能33
は、必要なら、デュー・コンパレータ40とヒープ・ソ
ート状態マシン36とともにソース挙動プロセッサ24
内に設けられてもよい。
R)サービスは、保証された固定のビット・レートで通
信されることが必要であり、CBRチャンネルと関連す
るATMセル用のACR値は変化しない。一方、ABR
チャンネルのACR値は、使用可能な帯域幅に従って設
定される。本発明の好ましい実施の形態によれば、CB
Rチャンネルは、SARデバイス12によってのみ扱わ
れ、そのスケジューリングにはスケジューラ14の動作
が関与しない。スケジューラ14がスケジュールするの
は、ABRチャンネル用のセルだけであり、そのような
セルは時間的に可能な範囲でSARデバイス12によっ
て送信されるだけである。
態によれば、高データ・レートのチャンネル(たとえ
ば、CBRチャンネルやその他のアクティビティ)が満
期になった低データ・レート・チャンネルを先取する
と、「公平(fairness)」の発行が生じ得ることが観察
されている。本発明の好ましい実施の形態によりベース
選択プロセス66で行われるマルチプレクサ32の制御
では、タイム・スタンプ値の割り当ては必ず公平に行わ
れ、オーバー・スケジュール条件においては、高データ
・レートのABRチャンネルが残りの帯域幅を公平に分
割する間、低データ・レートのチャンネルが先取りされ
ることはない。次に、プロセス66の全体的結果につい
て説明するが、そこでは、本発明の好ましい実施の形態
によるスケジューラ14内で行われるプロセス66につ
いて詳細に述べる。
は、本質的に、ABRチャンネル数で割られ、1チャン
ネルにつき等しく割られたビット・レートが得られる。
この等しく割られたビット・レートがどのABRチャン
ネルにとっても十分に満足させるものであれば(1また
はそれ以上の比較的低いビット・レートのABRチャン
ネルに対して真であり得る)、これらの満足されたチャ
ンネルは、それらの要求されたビット・レートに実質的
に設定されたACR値を有し、それ以上の考慮はされな
い。(CBR要求および十分に満足されたABRチャン
ネルの両方を引き算した後の)残りの帯域幅は、再度、
まだ満足されていないABRチャンネルの数によって割
られ、そこで満足されたチャンネルは、ビット・レート
が再び割り当てられ、それ以上の考慮は必要なくなり、
このプロセスが繰り返される。
BRチャンネルが1つもなくなると、等しく分割された
ビット・レートは、これらの残りのABRチャンネルの
それぞれのACR値となる。もちろん、この時点ですべ
てのチャンネルが満足された場合(すなわち、残ってい
るチャンネルがない場合)、この条件はアンダー・ディ
マンド条件となり、その場合、すべてのABRチャンネ
ルがそれらの要求されたビット・レートに対応するAC
Rを受け取る。ただし、十分に満足されないABRチャ
ンネルが少なくとも1つでもあれば、等しく分割された
ビット・レートは、これらのチャンネルに対する帯域幅
のかなり公平な分割を提供することになる。
し、この操作の説明の一助とする。この例には、次のよ
うなオーバー・スケジュール条件がある。
ケジュールされている。すべてのチャンネルCH1〜C
H6のビット・レート要求の合計が帯域幅全体の290
%になっている。したがって、すべてのチャンネルのA
CRが単にそれらの要求されたビット・レートに設定さ
れることはない。
BRチャンネルCH1,CH2が要求する帯域幅の50
%が全体の帯域幅から引き算され、要求された25%C
BR値がチャンネルCH1,CH2に割り当てられる。
残りの帯域幅(全体の帯域幅の50%)は、処理される
べき4つのABRチャンネルCH3〜CH6が残ってい
るので、“4”で割り算される。その結果、全体の帯域
幅の12.5%に当たるビット・レート値Qに等しく分
割される。この12.5%レートは、2つのABRチャ
ンネルCH3,CH4を満足させる。この場合、全体の
帯域幅の5%のACR値がチャンネルCH3に割り当て
られ、全体の帯域幅の10%のACR値がチャンネルC
H4に割り当てられる。次に、残りの帯域幅(全体の帯
域幅の35%)が、懸案となっている残りの2つのAB
Rチャンネルによって再度分割される。その結果、全体
の帯域幅の17.5%のビット・レートに等しく分割さ
れる。この2回目の等分割は残りのABRチャンネルC
H5,CH6のどちらも満足させないが、これらのチャ
ンネルに対するACR値は、この等分割された17.5
%のビット・レートに設定される。以上をまとめると、
次のようになる。
(一般的には、プレミアム料金を支払う)CBRチャン
ネルと比較的低いビット・レートを要求しているABR
チャンネルとは満足し、一方、(プレミアム料金を支払
わずに)使用可能帯域幅のうち法外な量を要求するAB
Rチャンネルには、使用可能帯域幅によって提供される
分だけが割り当てられる。また、このプロセスによれ
ば、各チャンネルが要求する帯域幅以上の帯域幅を割り
当てることは避けられる。たとえば、使用可能帯域幅の
200%を要求するチャンネルCH6は、帯域幅の25
%しか要求していないチャンネルCH5以上の帯域幅を
もらうことはできない。
の調整が実際の回路に導入された場合、反復される分割
および割り当て操作を行うために多数のマシン・サイク
ルが必要になる。特に、本例におけるスケジューラ14
では2048ものチャンネルが扱われるのであるから、
大変なマシン・サイクルになる。本発明と関連して、次
のようなことが発見された。セルの1つ手前のルート・
キー値,現在のオンラインRKEYまたは当該チャンネ
ル用の次のセルがすでに満期を過ぎていれば基準タイマ
38からのグローバル時刻を選択的に使用することによ
って、上述した公平なセル・レート決定を行うための適
切なタイム・スタンプ値を決定することができる。
て、本発明の好ましい実施の形態によるプロセス66に
おけるマルチプレクサ制御機能33の動作について詳細
に説明する。プロセス66は、プロセス78で始まり、
そこでは、マルチプレクサ制御機能33が、浮動小数点
・整数回路30からのラインOFFSET上のオフセッ
ト値を、ヒープ・ソート状態マシン36によりラインR
KEY上に提示される現在値に加算する。上述したよう
に、このラインRKEY上の値は、送信クレジットが最
後に発行されたルート・チャンネル用のタイム・スタン
プであり、このルート・チャンネルは、新しいタイム・
スタンプ値が現在決定されている同じチャンネルと関連
している。このようなラインRKEY上の値は、1つ前
のセルが送信用にスケジュールされた時刻に対応する
(この時刻は、潜伏その他の介在する事象により、当該
セルが実際に送信された時刻とは異なるのがふつうであ
る。)。プロセス78の結果は、未来の保証時刻FCT
であり、これは、このチャンネルで次に送信が行われる
(基準タイマ38のサイクル内の)時点での第1の予測
であり、この予測はソース挙動プロセッサ24が提供す
るオフセットを使用して行われ、オーバー・スケジュー
ル条件は考慮されない。
3は、基準タイマ38からの現在のグローバル時刻に対
する未来の保証時刻FCTの値をテストして、同じチャ
ンネルに対する最後に送信クレジットを受け取った新し
いセルがすでに満期を過ぎているかどうかを決定する。
もしなっていなければ(判定79がNO、すなわち、こ
のチャンネル用の次のセルがまだ満期を過ぎていなけれ
ば)、プロセス82に移り、そこで、マルチプレクサ制
御機能33がラインRKEY上の値をベースとして選択
し、これらのラインを加算器31に渡して、新しタイム
・スタンプを決定させる。このような状況が起きるの
は、帯域幅がオーバー・スケジュールされていない間で
あり、その結果、次のラインRKEY上の値(すなわ
ち、最後の送信クレジットに対応するラインRKEY上
の値をRKEYn とした場合のRKEYn+1 )は、この
チャンネルに対する要求されたACR値に対応する。こ
れにより、送信クレジットの発行が遅れても、所与のチ
ャンネルで遅延が蓄積されることはない。基準タイマ3
8からのグローバル(現在の)時刻がベースとして使用
されると、このようなことが起きる可能性がある。
件では、最後に送信クレジットを受け取ったそのチャン
ネル用の次のセルが既に満期を過ぎていることもある。
この状況は、未来のクレジット時刻FCTが現在のグロ
ーバル時刻より小さいこと(判定79がYES)に対応
する。この場合、プロセス80に移り、そこで、マルチ
プレクサ制御機能33は、新しいタイム・スタンプの生
成に使用するベースとして基準タイマ38からのグロー
バル時刻を選択して、その値を加算器31に供給する。
ラインRKEY上の前の値ではなくグローバル時刻を使
用することにより、そのセル用のタイム・スタンプを効
果的に遅らせ、それにより、オーバー・スケジュール状
況に対処することができる。
を公平にスケジュールする本発明の好ましい実施の形態
による方法における操作方法の一例について以下に詳細
に説明するが、その前に、図4の方法についての説明を
終わらせる。
SEおよびラインOFFSET上の値が加算器31によ
り加算されて、ラインKEY上の新しいタイム・スタン
プ値が生成され、ヒープ・ソート状態マシン36に送ら
れる。スケジューラ・コマンド・レジスタ26からのラ
インCMD上の適当な制御信号と組み合わされてライン
KEY上のこの新しい値に応答して、ヒープ・ソート状
態マシン36は、PUSH−POP操作を実行する。こ
のPUSH−POP操作は、チャンネルCHnと関連す
るラインKEY上の現在値をプロセス70におけるソー
ト用のヒープ(山積み)に押し込む動作を含む。これに
ついて、図6(A)および図6(B)を参照しながら説
明する。図6(A)および図6(B)はそれぞれ、チャ
ンネル情報およびタイム・スタンプ情報を山積み的に記
憶するオンチップ・パラメータ・メモリ44およびオフ
チップ・パラメータ・メモリ18を示す。
い実施の形態によるオンチップ・パラメータ・メモリ4
4は、アドレス00〜FFh に256個の40ビット・
データ・ワードを含む。アドレス00のデータ・ワード
は保存され、この例では使用されない。オンチップ・パ
ラメータ・メモリ44内のアドレス01は、本実施の形
態において、次に満期になるATMセルと関係するチャ
ンネルであるルート・チャンネルと関係する。オンチッ
プ・パラメータ・メモリ44の連続するアドレスは、そ
れらのタイム・スタンプの順序で並んだチャンネルと関
連づけられ、アドレスFFh は、次に満期になる255
番目のチャンネルと関係する。オンチップ・パラメータ
・メモリ44内の各ワードは、タイム・スタンプを記憶
する部分とチャンネル番号を記憶する部分とを含む。
プ・パラメータ・メモリ18は、少し異なった構成にな
る。この例では、オフチップ・パラメータ・メモリ18
の最小アドレス部分は、次に満期になるチャンネルと関
係する。255個のチャンネルがオンチップ・パラメー
タ・メモリ44に記憶された後、残りのチャンネルはオ
フチップ・パラメータ・メモリ18に順番に記憶された
パラメータを有する。オフチップ・パラメータ・メモリ
18では、各チャンネルがATM送信と関連した状態パ
ラメータの多くを記憶する部分を持ち、その後に、その
タイム・スタンプを記憶する32ビット・ワードが続
き、その後に、チャンネル番号を記憶するワードが続
く。オフチップ・パラメータ・メモリ18内のチャンネ
ル・エントリ間には未使用ワードが保持される。また、
オフチップ・パラメータ・メモリ18は、タイム・スタ
ンプがオンチップ・パラメータ・メモリ44に記憶され
ているチャンネルと関連したパラメータも記憶する。と
いうのは、これらのATMパラメータはオンチップ・パ
ラメータ・メモリ44には記憶されないからである。
ート状態マシン36が(スケジューラ・コマンド・レジ
スタ28からの)チャンネル番号と(加算器31からの
ラインKEY上の)タイム・スタンプとを押し込むと、
ヒープ・ソート・プロセス70が開始される。プロセス
70は、多数ある従来のヒープ・ソート・アルゴリズム
のいずれかにより実行され、その間、ヒープ・ソート状
態マシン36はパラメータ・メモリ18,44内のヒー
プ(山積み)の現在のメンバーのタイム・スタンプを尋
ね、これらのタイム・スタンプをオンチップ・パラメー
タ・メモリ44の最小アドレス(01)に記憶して、現
在のチャンネルCHn に新しいタイム・スタンプを使用
するとともに従来のヒープ・ソート・アルゴリズムに従
ってタイム・スタンプによるチャンネルのソートを継続
する。ヒープ・ソートを使用する方法は、本発明に関し
ては、とりわけ有効である。というのは、ヒープ・ソー
ト技術は、記憶されるべき要素の数が本例(たとえば、
2048個のチャンネル・タイム・スタンプ値)のよう
に非常に大きい場合でも、パラメータ(つまり、ルー
ト)の最小値を素早く見つけるのに適しているからであ
る。
ープ・ソート・プロセス70は、まず、ヒープ中の新し
いルート・チャンネルを識別する。特に、本発明による
オーバー・スケジュール条件での帯域幅の公平な割り当
てを行う場合、新規ヒープ・エントリが以前にスケジュ
ールされたエントリと同じタイム・スタンプを持ってい
れば、新規ヒープ・エントリが以前に置かれたエントリ
の後のヒープに置かれる。この決定の有効性は、以下の
説明から明らかになる。
されると、ヒープ・ソート状態マシン36は、プロセス
72を実行して、この新規ルート・チャンネル(C
Hm )のチャンネル番号をスケジューラ出力レジスタ4
2に渡し、この新規ルート・チャンネルCHm のタイム
・スタンプをラインRKEY上のデュー・コンパレータ
40に渡し、デュー・コンパレータ40およびスケジュ
ーラ出力レジスタ42へのラインVALID上の制御信
号をアクティブにしてそこに有効ビットをセットする。
本発明の好ましい実施の形態によれば、ルート・チャン
ネルは、たとえそのタイム・スタンプ値がどんなに古い
ものであっても、常に送信クレジットを得る。つまり、
オーバー・スケジュール条件では、ルート・チャンネル
のタイム・スタンプは、基準タイマ38によって提示さ
れるグローバル時刻よりずっと「古い」(つまり、小さ
い)可能性がある。次に、ヒープ・ソート・プロセス7
0は、新しいルート・チャンネルCHm の処理と並行し
て、残りのアクティブ・チャンネルのソートを続ける。
ソート・プロセス70が完了すると、小さいタイム・ス
タンプ値を持つチャンネルはそのエントリがオンチップ
・パラメータ・メモリ44に記憶され、大きい(つま
り、遅い)タイム・スタンプ値を持つチャンネルに関連
するエントリは外部パラメータ・メモリ18に記憶され
る。この間、スケジューラ制御レジスタ42への制御ラ
インSORTBUSYはアクティブのままである。
(ループ方法で)を行っている間に、スケジューラ出力
レジスタ42内の有効ビットがプロセス72によってセ
ットされることを認識する。この結果が出る(判定53
がYES)と、ソース挙動プロセッサ24は、プロセス
56を実行して、パラメータ・メモリ18からチャンネ
ルCHm 用のチャンネル状態情報の読み出しを開始す
る。これは、送信クレジットを正しく発行し、それ用の
ATMセルの送信をスケジュールするために必要であ
る。これらのパラメータを検索した後、ソース挙動プロ
セッサ24は、判定57を行い、スケジューラ出力レジ
スタ42にチャンネルCHm が満期になったかどうかを
見させる。まだ(判定57がNO)なら、ソース挙動プ
ロセッサ24は待ち状態58に入り、判定57を繰り返
す。
タ40がヒープ・ソート状態マシン36からラインVA
LID上のアクティブ信号を受け取り、デュー・コンパ
レータ40は、チャンネルCHm が満期になったかどう
かを決める判定73の実行を開始する。判定73は、最
も単純な場合、チャンネルCHm と関連する(かつ、ヒ
ープ・ソート状態マシン36からラインRKEY上で通
信される)タイム・スタンプを基準タイマ38から通信
されているグローバル時刻と比較する。まだグローバル
時刻がルート・チャンネルCHm 用のタイム・スタンプ
値に達していなければ(判定73がNOなら)、デュー
・コンパレータ40はプロセス74でラインCLK上の
クロック信号の次のサイクルを待ち、判定73を繰り返
す。グローバル時刻がラインRKEY上のタイム・スタ
ンプ値に到達するか過ぎていれば(判定73がYE
S)、デュー・コンパレータ40は、プロセス76でラ
インDUE上にスケジューラ出力レジスタ4へのデュー
信号を発行する。
態によれば、基準タイマー38は、ラインCLK上のク
ロック信号の各サイクルごとに進む単純なカウンタであ
り、フル・カウント状態に到達すると、循環(wrap ar
ound)する。デュー・コンパレータ40がラインRKE
Y上のタイム・スタンプの値を基準タイマ38の出力と
比較するだけであれば、チャンネルCHm が満期になっ
ても、基準タイマ38が循環してゼロに戻ってしまえ
ば、気づかれないこともあり得る。本発明と関連してわ
かったことであるが、基準タイマからの出力のワード幅
をラインRKEY上のタイム・スタンプの幅に対してか
つラインOFFSET上のオフセット部分の幅に対して
相対的に選択することによって、循環に由来する多くの
中間的状態を避けることができる。
インRKEY上のタイム・スタンプのワード幅は、最上
位ビット部分で、基準タイマ38の出力でのワード幅よ
り1ビット多くなるよう選択される。図3の例では、基
準タイマ38の出力はkビット幅であり、ラインRKE
Yはk+1になる。この関係により、タイム・スタンプ
値の範囲は基準タイマの出力範囲を2倍にすることがで
きる。たとえば、クロック時刻を参照して、ラインRK
EY上のタイム・スタンプは24時間クロック値(たと
えば、13:30は午後1:30を表す。)であると考
えることができ、一方、基準タイマ38の出力は24時
間クロック値に対応する。このような基準タイマ38に
おける循環が、デュー・コンパレータ40により実行さ
れる比較において簡単に考えられる。
ド幅は、ラインOFFSET上のオフセット(この例で
は、k−1)より1ビット広くなっている。これによ
り、チャンネルをスケジュールするのに、基準タイマ3
8の値から基準タイマ38の範囲の半分以上離れること
はない。したがって、デュー・コンパレータ40は、現
在のグローバル時刻から基準タイマ38の範囲の半分し
か後ろを見ない。この考え方が、次のような特徴と組み
合わせて使用される。ヒープ・ソート状態マシン36が
タイム・スタンプのソートを行う場合、基準タイマ38
がその範囲の前半の値を出力するときには、最上位タイ
ム・スタンプ・ビットを使用せず、基準タイマ38がそ
の範囲の後半の値を出力するとき(つまり、MSB=
1)には、最上位タイム・スタンプ・ビットを使用す
る。各タイム・スタンプは各セル処理が終了するごとに
ヒープ・ソート状態マシン36によってソートされるの
で、このような考え方によって、基準タイマの循環が間
違った結果をもたらすことを確実になくすことができ
る。
タ40の操作により、基準タイマ38の出力におけるk
ビット値とラインRKEY上のルート・チャンネルCH
m のタイム・スタンプのk+1ビットとの比較の信頼度
を高くすることができる。判定73の結果、ルート・チ
ャンネルCHm が満期(判定73がYES)であれば、
デュー・コンパレータ40は、スケジューラ出力レジス
タ42に対してラインDUE上にアクティブ信号を発行
し、そこにビットをセットし、それが次のパスで判定5
7においてソース挙動プロセッサ24によって問われ
る。チャンネルCHm 用のデュー信号が発行されたこと
(判定57がYES)が検出されると、ソース挙動プロ
セッサ24は、チャンネルCHm に対する送信クレジッ
トをプロセス60で発行し、チャンネルCHm 用のチャ
ンネル識別子をプロセス56で検索されたそのATM送
信パラメータと一緒に従来方法でSARデバイス12に
供給する。
サ24がチャンネルCHm に対する送信クレジットを発
行し、プロセス48からのプロセスが繰り返される。ソ
ース挙動プロセッサ24は、必要なら、チャンネルCH
m 用のACR値を検索して更新する。このプロセスが繰
り返され、プロセス77でヒープ・ソート状態マシン3
6によるヒープ・ソートが終了し、関連する制御ライン
SORTBUSYがクリアされ、これにより、判定49
から再度プロセス52に制御が移る。
によって送信クレジットが発行されると、ソース挙動プ
ロセッサ24は、ABRセル用の送信機会が出るときに
SARデバイス12によって提示されるかも知れない指
示をセットする。たとえば、ソース挙動プロセッサ24
は、送信されるべきセルと関連して、発行された送信ク
レジットを含む「次のセル・レジスタ」を含むことが好
ましい。ABRチャンネル用の送信機会がSARデバイ
ス12によって検出されると、SARデバイス12は、
この次のセル・レジスタに、ABRセルがスケジューラ
14によって送信用にスケジュールされているかを決め
させる。そうであるなら、SARデバイス12はATM
プロトコルに従ってこのセルの送信を行わせることがで
きる。もちろん、送信機会が来なければ(たとえば、使
用可能帯域幅がすべてCBRチャンネルによって占めら
れていれば)、スケジューラ14のこの状態がしばらく
続く。
形態により、タイム・スタンプの決定のための適当なベ
ース値を選択することによって、オーバー・スケジュー
ル条件において帯域幅を公平に割り当てることができ
る。まとめると、この帯域幅の公平な割り当ては、3つ
の規則を使うことによってもたらされる。すなわち、 1)タイム・スタンプ値が現在のグローバル時刻より古
い(つまり、小さい)チャンネルとして定義される「オ
ーバー・ デュー」送信が、決して落ちない。ルート・チ
ャンネルは、そのタイム・スタンプ値に関係なく、常に
送信クレジットを得ることができる。 2)ヒープ・データ構造のソートが次のように行われ
る。より古い(つまり、より早い時点で押し込まれた)
チャンネルと同じタイム・スタンプを持つ新しい(つま
り、より最近ヒープに押し込まれた)チャンネルが、ヒ
ープにおいて、より古いチャンネルの後に置かれる。 3)有効セル送信レートが、タイム・スタンプ値の計算
にオフセット値がベースとされるACR値より少なくな
る。それは、オフセット値と合計されるベースが選択さ
れて、新しいタイム・スタンプ値が決定されるからであ
る。このような選択が行われることによって、生成され
た時点で既に満期が過ぎたタイム・スタンプを前進させ
ることができる。 これらの規則は、図4および図5の方法による動作に関
連して上述したように、オーバー・スケジュール条件に
おいても、帯域幅の公平な割り当てをする結果となる。
この結果について、3つのABRチャンネルCH1,C
H2,CH3がオーバー・スケジュール条件にある例を
用いて、100クロック・サイクルごとの速さで送信ク
レジットが新しいセルに発行されるシステムに対して、
以下に説明する。この例において、チャンネルCH1
は、そのセル・レートとして帯域幅の100%を要求し
ており、これは、本例において、100クロック・サイ
クルのタイム・スタンプ・オフセットに対応する。チャ
ンネルCH2は帯域幅の200%を要求している。これ
は、50クロック・サイクル(100サイクル・レート
の2倍の速さ)のオフセットに対応する。そして、チャ
ンネルCH3は、ライン・レートの20%しか要求して
おらず、そのタイム・スタンプ・オフセットは500サ
イクル(100サイクル・レートの5分の1の遅さ)で
ある。
よるスケジューラ14の動作を示す。
T)は、GT=0(クロックサイクル数で)から始ま
る。GT=50になるまでは、単にチャンネルCH1〜
CH3をセットアップするだけであり、送信クレジット
は発行されない。この例において、セルが送信クレジッ
トを受け取る頻度は、上述したように100クロック・
サイクルを越えない。GT=0において、チャンネルC
H1は、その最初のタイム・スタンプを受け取り、この
例では100である(セットアップ中、ベースはゼ
ロ)。GT=5において、チャンネルCH2が、その最
初のタイム・スタンプ(この例では、50)を受け取る
(ここでも、セットアップ中につきベースはゼロであ
る。)。GT=5におけるルート・チャンネルはCH1
であり、タイム・スタンプは100である。というの
は、このチャンネルがタイム・スタンプを持つ唯一のチ
ャンネルである(したがって、このチャンネルが最小の
タイム・スタンプ値を持つ)からである。同様に、GT
=10において、チャンネルCH3がそのタイム・スタ
ンプ“500”を受け取る。この時点のルート・チャン
ネルはCH2である。というのは、そのタイム・スタン
プ値が最小だからである。このようにして、本例では、
各チャンネルCH1,CH2,CH3が、所望のACR
に対応する各オフセットに等しい初期タイム・スタンプ
を受け取る。GT=0,GT=5,GT=10におい
て、送信クレジットは発行されない。というのは、どの
タイム・スタンプも満期になっていないから(ルート・
タイム・スタンプは、これらのどの場合においても、グ
ローバル時刻より大きい)からである。
CH2が満期になる。というのは、そのタイム・スタン
プがグローバル時刻と等しくなるからである。このよう
に、チャンネルCH2は、GT=50において送信クレ
ジットを受け取り、また、新しいタイム・スタンプを受
け取る。図5において、プロセス66を実行することに
よって、新しいタイム・スタンプを生成する際の正しい
ベースを決定する。まず、プロセス78が、未来のクレ
ジット時刻FCTを最後のタイム・スタンプ値+オフセ
ットの合計として決定する。合計は100(50+5
0)である。この未来のクレジット時刻FCTは、現在
のグローバル時刻より小さくはないので、以前のタイム
・スタンプ値がベースとして使用されて、新しいタイム
・スタンプ“100”(50+50)が生成される。表
に示された通りである(もちろん、この場合は、グロー
バル時刻GTを使用しても同じ結果になる。)。送信ク
レジットが満期になるGT=150において、ルート・
チャンネルはチャンネルCH1であり、タイム・スタン
プは100である。一方、チャンネルCH2も、GT=
50で決定されたようにタイム・スタンプ“100”を
持つ。チャンネルCH1がルートになる。なぜなら、先
に述べたように、同じタイム・スタンプを持つ新しくオ
ーダーされたチャンネルは、その前にオーダーされたチ
ャンネルの後に置かれるからである。したがって、GT
=150において、チャンネルCH1は送信クレジット
と新しいタイム・スタンプ“200”とを受け取る(先
のタイム・スタンプ“100”+チャンネルCH1のオ
フセット“100”、それはグローバル時刻GT=15
0より大きいので、先のタイム・スタンプ“100”が
ベースとして使用される)。
ルCH2が満期になる。タイム・スタンプが100であ
るので、送信クレジットを受け取る。この時点で、チャ
ンネルCH2は新しいタイム・スタンプを受け取る。上
述したように、ベースがまず選ばれなければならない。
この場合、プロセス78が、まず、未来のクジット時刻
FCTを150(100+50)と決める。この未来の
クレジット時刻FCTは、現在のグローバル時刻(GT
=250)より小さいので、グローバル時刻GTがベー
スとして使用されて、表に示されたように、新しいタイ
ム・スタンプ300(250+50)が生成される。
イム・スタンプ値の引き出しがこのように100クロッ
ク・サイクルごとに続く結果、表のようになる。表に示
されたように、たとえば、GT=650において、チャ
ンネルCH3がルート・チャンネルになり、満期にな
る。というのは、そのタイム・スタンプ値がその時点
“500”で、(より遅く、GT=450に生成され
た)チャンネルCH2のタイム・スタンプより先の順番
にあるからである。
公平であることは、時間を追いながら表の「クレジット
・チャンネル」欄を見ればわかることである。この表か
ら明らかなように、各チャンネルは時間に従ってクレジ
ットされ(GT=250で始まる、初期遷移の後)、C
H2,CH1,CH2,CH1,CH3というシーケン
スとなる。このシーケンスに従って、チャンネルCH3
は、送信クレジットを5回に1回受け取り、これはライ
ン・レートの20%(CH3の要求されたライン・レー
ト)となる。他のチャンネルCH1,CH2は(それぞ
れライン・レートの100%および200%を要求して
おり)使用可能帯域幅で満足できない。これらのチャン
ネルは、チャンネルCH3への割り当ての後に残ったラ
イン・レートを分け合うことになり、チャンネルCH
1,CH2はそれぞれ、使用可能帯域幅の40%を受け
取る。このようなやり方が公平であることは、上述の全
体の説明に従うものであり、当業者にとって明らかであ
ろう。
のよれば、スケジューラ14がSARデバイスと組み合
わされて行うATM送信のスケジューリングは、ATM
通信を行う上で非常に有利である。第1に、本発明は、
アベイラブル・ビット・レート(ABR)非同期転送モ
ード(ATM)送信を効率よく公平にスケジュールする
ことを提供する。たとえば、本発明の好ましい実施の形
態の例として、近代的ファイバ光設備で得られる155
Mビットのライン・レートに簡単に合わせることがで
き、工業規格を十分に満足させることができる。第2
に、ヒープ記憶技術を使用することによって、メモリ・
リソースをかなり減らすことができる。この技術がなけ
れば、扱われるべき可能なチャンネルのそれぞれにカウ
ンタを装備しなければならない。
て提供されるスケジューリング機能は、高度のスケーラ
ビリティ(scalability )を提供する。すなわち、間も
なく満期になるチャンネル用にはオンチップ・パラメー
タ・メモリを使用し、より遅くスケジュールされるチャ
ンネルにはオフチップ・パラメータ・メモリを使用する
ので、オフチップ・パラメータ・メモリのサイズを拡張
するだけでチャンネルの追加を簡単に行うことができ
る。さらにまた、本発明をATMセルのスケジューリン
グに導入すれば、チャンネルに対するセルの実際のスケ
ジューリングにおける遅延が同じチャンネルの複数のセ
ルに渡って蓄積されることがない。
BRチャンネルに対する許可されたセル・レートを割り
当てる際に、多数のABRチャンネルからの要求を考慮
し、また、一定ビット・レート・チャンネルのように固
定ビット・レート・チャンネルを考慮し、特に、所望さ
れる送信容量が通信設備の帯域幅を越える場合に、公平
に割り当てを行う。この公平さが得られるのは、各チャ
ンネルに対して要求されるACRオフセットに加算され
るべきベース値を選択することによって、サイクルを効
率的に使用できること、また、従来のATMネットワー
クにおいて行われるフロー制御アルゴリズムにおいて考
慮されていないことを考慮しているからである。
ネルと関連するパケット・セルの送信をスケジュールす
る方法であって、複数のチャンネル・エントリをヒープ
・メモリ内にソートするステップであって、前記各チャ
ンネル・エントリが、各チャンネルと関連するタイム・
スタンプ値を含み、該タイム・スタンプ値が、関連チャ
ンネルに対するセルの送信が次に満期になる時刻を示
し、前記ソート・ステップが、次の満期になるチャンネ
ルに対応するルート・チャンネル・エントリを識別す
る、ステップと、前記ルート・チャンネル・エントリの
タイム・スタンプ値を基準タイマによって生成されたグ
ローバル時刻と比較するステップと、該比較ステップに
応答して、前記グローバル時刻が少なくとも前記ルート
・チャンネル・エントリのタイム・スタンプ値に達した
ことを決定し、前記ルート・チャンネル・エントリと関
連するチャンネルに対して送信クレジットを発行するス
テップと、を含む。
るステップの後に、前記ルート・チャンネル・エントリ
と関連する前記チャンネルに対して、許可されたセル・
レート値をパラメータ・メモリから検索するステップ
と、 前記ルート・チャンネル・エントリと関連する前
記チャンネルに対する新規タイム・スタンプ値を引き出
すステップと、前記ソート・ステップ,前記比較ステッ
プおよび前記発行ステップを反復するステップと、をさ
らに含む、
が、スケジューラ・クロック周波数を前記許可されたセ
ル・レート値で割った値に基づいてオフセット・タイム
・スタンプ値を生成するステップと、前記オフセット・
タイム・スタンプ値をベース・タイム・スタンプ値に加
算して前記新規タイム・スタンプ値を生成するステップ
と、をさらに含む。
スタンプ値が前記ルート・チャンネル・エントリのタイ
ム・スタンプ値と等しい。
スタンプ値が前記グローバル時刻と等しい。
が、前記複数のチャンネルの第1および第2のグループ
を識別するステップであって、前記複数のチャンネルの
前記第1のグループが、前記複数のチャンネルの前記第
2のグループのタイム・スタンプ値より早く満期になる
タイム・スタンプ値を有する、ステップと、前記複数の
チャンネルの前記第1のグループに対するチャンネル・
エントリを第1のパラメータ・メモリに記憶するステッ
プと、前記複数のチャンネルの前記第2グループに対す
るチャンネル・エントリを第2のパラメータ・メモリに
記憶するステップと、を含む。
がスケジューラ集積回路内の回路によって実行され、前
記第1のパラメータ・メモリが前記スケジューラ集積回
路内に設けられ、前記第2のパラメータ・メモリが前記
スケジューラ集積回路の外部メモリに設けられている。
るステップの後に、前記ルート・チャンネル・エントリ
と関連する複数のチャンネルの1つに対する許可された
セル・レート値を検索するステップと、前記ルート・チ
ャンネル・エントリと関連する前記チャンネルに対する
新規タイム・スタンプ値を引き出すステップと、前記ソ
ート・ステップ,前記比較ステップおよび前記発行ステ
ップを反復するステップと、をさらに含む。
が、スケジューラ・クロック周波数を前記許可されたセ
ル・レート値で割った値に基づいてオフセット・タイム
・スタンプ値を生成するステップと、前記ルート・チャ
ンネル・エントリと関連する前記チャンネルに対する前
記タイム・スタンプ値を前記オフセット・タイム・スタ
ンプ値に加算して未来のクレジット時刻値を引き出すス
テップと、前記未来のクレジット時刻値を前記グローバ
ル時刻と比較するステップと、該比較ステップに応答し
て、前記未来のクレジット時刻値が前記グローバル時刻
より遅いことを決定し、前記新規タイム・スタンプ値を
前記未来のクレジット時刻値に設定するステップと、前
記比較ステップに応答して、前記未来のクレジット時刻
値が前記グローバル時刻より早いことを決定し、前記オ
フセット・タイム・スタンプ値を前記グローバル時刻に
加算して前記新規タイム・スタンプ値を生成するステッ
プと、を含む。
ーフェースを有するホスト・コントローラと、ATMト
ランスレータ・サブシステムとを備える、ネットワーク
・ハブおよびATMトランスレータ・システムであっ
て、 高データ・レート通信設備に結合されたトランシ
ーバ・インターフェースと、該トランシーバ・インター
フェースおよび前記ホスト・コントローラに結合された
分節化・再構築回路と、複数のATM通信チャンネルの
各々と関連するエントリを記憶するパラメータ・メモリ
と、該パラメータ・メモリおよび前記分節化・再構築回
路に結合された、前記複数のATM通信チャンネルと関
連するパケット・セルの送信を一連の操作によってスケ
ジュールするスケジューラと、を具備し、前記スケジュ
ーラが、前記パラメータ・メモリ内にチャンネル・エン
トリをソートするヒープ・ソート回路であって、前記各
チャンネル・エントリが、各チャンネルと関連するタイ
ム・スタンプ値を有し、該タイム・スタンプ値が、前記
関連チャンネルに対するセルの送信が次に満期になる時
刻を示し、前記ヒープ・ソート回路が、次に満期になる
チャンネルに対応するルート・チャンネル・エントリを
識別する、前記ヒープ・ソート回路と、グローバル時刻
を生成する基準タイマと、前記ルート・チャンネル・エ
ントリの前記タイム・スタンプ値を前記グローバル時刻
と比較するコンパレータと、前記分節化・再構築回路に
結合された、前記ルート・チャンネル・エントリと関連
する前記チャンネルに対する送信クレジットを発行する
ソース挙動プロセッサ回路と、を備える。
ューラは単一集積回路に集積されてもよい。
ューラは、スケジューラと同じ集積回路に設けられた、
複数のチャンネルの第1のグループと関連するタイム・
スタンプ値を記憶するオンチップ・パラメータ・メモリ
をさらに備え、このパラメータメモリは、スケジューラ
集積回路に対して外部であり、複数のチャンネルの第2
のグループと関連するタイム・スタンプ値を記憶する。
複数のチャンネルの第1のグループは、複数のチャンネ
ルの第2のグループより近い満期になるタイム・スタン
プ値を持っている。
挙動プロセッサ回路は、送信クレジットを発行した後
に、ルート・チャンネルと関連するチャンネル用にパラ
メータ・メモリから許可されたセルレート値を検索し、
前記スケジューラは、ヒープ・ソート回路と結合され
た、ルート・チャンネル・エントリと関連するチャンネ
ルに対する新規タイム・スタンプ値を引き出す回路を備
える。
し回路は、スケジューラ・クロック周波数を許可された
セル・レート値で割った値に基づくオフセット・タイム
・スタンプ値を生成するデバイダと、そのオフセット・
タイム・スタンプ値をベース・タイム・スタンプ値に加
算して新規タイム・スタンプ値を生成する加算器とを備
える。
・タイム・スタンプ値は、ルート・チャンネル・エント
リのタイム・スタンプ値と等しい。
し回路は、マルチプレクサとマルチプレクサ制御機能と
を備える。このマルチプレクサは、基準タイマからグロ
ーバル時刻を受け取るための第1の入力と、ルート・チ
ャンネル・エントリのタイム・スタンプ値を受け取る第
2の入力と、前記加算器に結合されてベース・タイム・
スタンプ値をそこへ供給する出力と、グローバル時刻ま
たはベース・タイム・スタンプ値用のルート・チャンネ
ル・エントリのタイム・スタンプ値を選択する制御入力
とを備える。前記マルチプレクサ制御機能は、以下の操
作を実行することによって、マルチプレクサの制御入力
に供給される選択信号を生成する。スケジューラ・クロ
ック周波数を許可されたセル・レート値で割った値に基
づいてオフセット・タイム・スタンプ値を生成し、ルー
ト・チャンネル・エントリと関連するチャンネル用のタ
イム・スタンプ値をオフセット・タイム・スタンプ値に
加算して、未来のクレジット時刻値を引き出し、この未
来のクレジット時刻をグローバル時効と比較し、この比
較の結果に応答して、未来のクレジット時刻がグローバ
ル時刻より遅いことを決定し、新規タイム・スタンプ値
を未来のクレジット時刻に設定し、前記比較の結果に応
答して、未来のクレジット時刻がグローバル時刻より早
いことを決定し、オフセット・タイム・スタンプ値をグ
ローバル時刻に加算して新規タイム・スタンプ値を生成
する。
て述べてきたが、本発明はこれらの実施の形態の他にも
様々な形態が可能であり、また、それらの変形も本発明
の範囲に入るものであり、そのことは、当業者にとって
は、本明細書及び図面から明らかであろう。そのような
変形、あるいは別の形態も、本発明の請求の範囲に入る
ものである。
る。 (1)複数の通信チャンネルと関連するパケット・セル
の送信をスケジュールする方法であって、複数のチャン
ネル・エントリをヒープ・メモリ内にソートするステッ
プであって、前記各チャンネル・エントリが、各チャン
ネルと関連するタイム・スタンプ値を含み、該タイム・
スタンプ値が、関連チャンネルに対するセルの送信が次
に満期になる時刻を示し、前記ソート・ステップが、次
の満期になるチャンネルに対応するルート・チャンネル
・エントリを識別する、ステップと、前記ルート・チャ
ンネル・エントリのタイム・スタンプ値を基準タイマに
よって生成されたグローバル時刻と比較するステップ
と、該比較ステップに応答して、前記グローバル時刻が
少なくとも前記ルート・チャンネル・エントリのタイム
・スタンプ値に達したことを決定し、前記ルート・チャ
ンネル・エントリと関連するチャンネルに対して送信ク
レジットを発行するステップと、を含む、方法。
の後に、前記ルート・チャンネル・エントリと関連する
前記チャンネルに対して、許可されたセル・レート値を
パラメータ・メモリから検索するステップと、前記ルー
ト・チャンネル・エントリと関連する前記チャンネルに
対する新規タイム・スタンプ値を引き出すステップと、
前記ソート・ステップ,前記比較ステップおよび前記発
行ステップを反復するステップと、をさらに含む、第1
項記載の方法。 (3)前記引き出しステップが、スケジューラ・クロッ
ク周波数を前記許可されたセル・レート値で割った値に
基づいてオフセット・タイム・スタンプ値を生成するス
テップと、前記オフセット・タイム・スタンプ値をベー
ス・タイム・スタンプ値に加算して前記新規タイム・ス
タンプ値を生成するステップと、をさらに含む、第2項
記載の方法。 (4)前記ベース・タイム・スタンプ値が前記ルート・
チャンネル・エントリのタイム・スタンプ値と等しい、
第3項記載の方法。 (5)前記ベース・タイム・スタンプ値が前記グローバ
ル時刻と等しい、第3項記載の方法。 (6)前記ソート・ステップが、前記複数のチャンネル
の第1および第2のグループを識別するステップであっ
て、前記複数のチャンネルの前記第1のグループが、前
記複数のチャンネルの前記第2のグループのタイム・ス
タンプ値より早く満期になるタイム・スタンプ値を有す
る、ステップと、前記複数のチャンネルの前記第1のグ
ループに対するチャンネル・エントリを第1のパラメー
タ・メモリに記憶するステップと、前記複数のチャンネ
ルの前記第2グループに対するチャンネル・エントリを
第2のパラメータ・メモリに記憶するステップと、を含
む、第1項記載の方法。
ラ集積回路内の回路によって実行され、前記第1のパラ
メータ・メモリが前記スケジューラ集積回路内に設けら
れ、前記第2のパラメータ・メモリが前記スケジューラ
集積回路の外部メモリに設けられた、第6項記載の方
法。 (8)送信クレジットを発行するステップの後に、前記
ルート・チャンネル・エントリと関連する複数のチャン
ネルの1つに対する許可されたセル・レート値を検索す
るステップと、前記ルート・チャンネル・エントリと関
連する前記チャンネルに対する新規タイム・スタンプ値
を引き出すステップと、前記ソート・ステップ,前記比
較ステップおよび前記発行ステップを反復するステップ
と、をさらに含む、第1項記載の方法。 (9)前記引き出しステップが、スケジューラ・クロッ
ク周波数を前記許可されたセル・レート値で割った値に
基づいてオフセット・タイム・スタンプ値を生成するス
テップと、前記ルート・チャンネル・エントリと関連す
る前記チャンネルに対する前記タイム・スタンプ値を前
記オフセット・タイム・スタンプ値に加算して未来のク
レジット時刻値を引き出すステップと、前記未来のクレ
ジット時刻値を前記グローバル時刻と比較するステップ
と、該比較ステップに応答して、前記未来のクレジット
時刻値が前記グローバル時刻より遅いことを決定し、前
記新規タイム・スタンプ値を前記未来のクレジット時刻
値に設定するステップと、前記比較ステップに応答し
て、前記未来のクレジット時刻値が前記グローバル時刻
より早いことを決定し、前記オフセット・タイム・スタ
ンプ値を前記グローバル時刻に加算して前記新規タイム
・スタンプ値を生成するステップと、を含む、第8項記
載の方法。
を有するホスト・コントローラと、ATMトランスレー
タ・サブシステムとを備える、ネットワーク・ハブおよ
びATMトランスレータ・システムであって、高データ
・レート通信設備に結合されたトランシーバ・インター
フェースと、該トランシーバ・インターフェースおよび
前記ホスト・コントローラに結合された分節化・再構築
回路と、複数のATM通信チャンネルの各々と関連する
エントリを記憶するパラメータ・メモリと、該パラメー
タ・メモリおよび前記分節化・再構築回路に結合され
た、前記複数のATM通信チャンネルと関連するパケッ
ト・セルの送信を一連の操作によってスケジュールする
スケジューラと、を具備し、前記スケジューラが、前記
パラメータ・メモリ内にチャンネル・エントリをソート
するヒープ・ソート回路であって、前記各チャンネル・
エントリが、各チャンネルと関連するタイム・スタンプ
値を有し、該タイム・スタンプ値が、前記関連チャンネ
ルに対するセルの送信が次に満期になる時刻を示し、前
記ヒープ・ソート回路が、次に満期になるチャンネルに
対応するルート・チャンネル・エントリを識別する、前
記ヒープ・ソート回路と、グローバル時刻を生成する基
準タイマと、前記ルート・チャンネル・エントリの前記
タイム・スタンプ値を前記グローバル時刻と比較するコ
ンパレータと、前記分節化・再構築回路に結合された、
前記ルート・チャンネル・エントリと関連する前記チャ
ンネルに対する送信クレジットを発行するソース挙動プ
ロセッサ回路と、を備える、ネットワーク・ハブおよび
ATMトランスレータ・システム。
されるネットワーク・ハブおよびATMトランスレータ
・システム5が開示される。ネットワーク・ハブおよび
ATMトランスレータ・システム5は、LANのハブと
なるホスト・コントローラ10を備え、それがトランス
レータ・カード15とインターフェースする。トランス
レータ・カードは、分節化・再構築デバイス12を備
え、それがトランシーバ22と通信するSONET送受
信回路20と接続されて、通信設備(FO)を介してA
TMパケット・セルを送受信する。トランスレータ・カ
ード15は、スケジューラ14を備え、スケジューラ
は、ソートされたエントリ・リストをオンチップ・パラ
メータ・メモリとオフチップ・パラメータ・メモリ18
とにヒープ状に保持するヒープ・ソート状態マシンを備
える。エントリは、各ATMチャンネルに対して、チャ
ンネル識別子と、そのチャンネルに対する次のセルが転
送されることになっている時刻を示すタイム・スタンプ
とを含む。デュー・コンパレータは、ヒープ内のルート
値のタイム・スタンプ(つまり、次に送信されるべきセ
ルをもつチャンネル)を基準タイマによって生成された
グローバル時刻と比較し、セルが転送されることになっ
ている時刻になったことをスケジューラ14内のソース
挙動プロセッサに示す。スケジューラは、そのセルに対
する送信クレジットを発行し、これをSARデバイス1
2に知らせ、送信させる。
1997年11月21に出願され、本明細書に組み込ま
れている仮出願番号第60/066,328号を含む。
本出願は、「オーバースケジュール条件でのATMセル
送信の公平なスケジューリング」と題する米国出願(T
I−26035)にも関連する。
ムの電気的接続のブロック図である。
システムにおけるネットワーク・ハブおよび非同期転送
モード(ATM)トランスレータの電気的接続を示すブ
ロック図である。
トワーク・ハブおよび非同期転送モード(ATM)トラ
ンスレータ内のスケジューラの電気的接続を示すブロッ
ク図である。
ジューラの動作を示すフローチャートである。
ジューラ内のソース挙動プロセッサがATMチャンネル
用の許可されたセル・レート値を調整する動作を示すフ
ローチャートである。
しい実施の形態による図2のネットワーク・ハブおよび
ATMトランスレータ内のオンチップ・パラメータ・メ
モリおよびオフチップ・パラメータ・メモリの構成を示
すメモリマップである。
Claims (2)
- 【請求項1】 複数の通信チャンネルと関連するパケッ
ト・セルの送信をスケジュールする方法であって、 複数のチャンネル・エントリをヒープ・メモリ内にソー
トするステップであって、前記各チャンネル・エントリ
が、各チャンネルと関連するタイム・スタンプ値を含
み、該タイム・スタンプ値が、関連チャンネルに対する
セルの送信が次に満期になる時刻を示し、前記ソート・
ステップが、次の満期になるチャンネルに対応するルー
ト・チャンネル・エントリを識別する、ステップと、 前記ルート・チャンネル・エントリのタイム・スタンプ
値を基準タイマによって生成されたグローバル時刻と比
較するステップと、 該比較ステップに応答して、前記グローバル時刻が少な
くとも前記ルート・チャンネル・エントリのタイム・ス
タンプ値に達したことを決定し、前記ルート・チャンネ
ル・エントリと関連するチャンネルに対して送信クレジ
ットを発行するステップと、 を含む、方法。 - 【請求項2】 ローカル通信を受信するインターフェー
スを有するホスト・コントローラと、ATMトランスレ
ータ・サブシステムとを備える、ネットワーク・ハブお
よびATMトランスレータ・システムであって、 高データ・レート通信設備に結合されたトランシーバ・
インターフェースと、 該トランシーバ・インターフェースおよび前記ホスト・
コントローラに結合された分節化・再構築回路と、 複数のATM通信チャンネルの各々と関連するエントリ
を記憶するパラメータ・メモリと、 該パラメータ・メモリおよび前記分節化・再構築回路に
結合された、前記複数のATM通信チャンネルと関連す
るパケット・セルの送信を一連の操作によってスケジュ
ールするスケジューラと、 を具備し、 前記スケジューラが、 前記パラメータ・メモリ内にチャンネル・エントリをソ
ートするヒープ・ソート回路であって、前記各チャンネ
ル・エントリが、各チャンネルと関連するタイム・スタ
ンプ値を有し、該タイム・スタンプ値が、前記関連チャ
ンネルに対するセルの送信が次に満期になる時刻を示
し、前記ヒープ・ソート回路が、次に満期になるチャン
ネルに対応するルート・チャンネル・エントリを識別す
る、前記ヒープ・ソート回路と、 グローバル時刻を生成する基準タイマと、 前記ルート・チャンネル・エントリの前記タイム・スタ
ンプ値を前記グローバル時刻と比較するコンパレータ
と、 前記分節化・再構築回路に結合された、前記ルート・チ
ャンネル・エントリと関連する前記チャンネルに対する
送信クレジットを発行するソース挙動プロセッサ回路
と、を備える、ネットワーク・ハブおよびATMトラン
スレータ・システム。
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US6632897P | 1997-11-21 | 1997-11-21 | |
| US08/993,801 US6205151B1 (en) | 1997-11-21 | 1997-12-18 | ATM cell scheduler which uses a heap memory and associates timestamps with each channel |
| US993801 | 1997-12-18 | ||
| US066328 | 1997-12-18 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH11234309A true JPH11234309A (ja) | 1999-08-27 |
Family
ID=26746624
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP33072298A Pending JPH11234309A (ja) | 1997-11-21 | 1998-11-20 | 非同期転送モード・セル送信スケジューリング |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US6205151B1 (ja) |
| EP (1) | EP0939573B1 (ja) |
| JP (1) | JPH11234309A (ja) |
| DE (1) | DE69817756T2 (ja) |
Families Citing this family (72)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6377550B1 (en) * | 1997-10-28 | 2002-04-23 | Texas Instruments Incorporated | Nested measurement period switch algorithm for flow control of available bit rate ATM communications |
| US6272131B1 (en) * | 1998-06-11 | 2001-08-07 | Synchrodyne Networks, Inc. | Integrated data packet network using a common time reference |
| US6549514B1 (en) * | 1998-07-07 | 2003-04-15 | Nokia Corporation | Method and apparatus for shaping traffice for a SIMA network |
| US6765911B1 (en) * | 1999-02-03 | 2004-07-20 | International Business Machines Corporation | Communications adapter for implementing communications in a network and providing multiple modes of communications |
| US7016337B1 (en) * | 1999-03-02 | 2006-03-21 | Cisco Technology, Inc. | System and method for multiple channel statistical re-multiplexing |
| US7593433B1 (en) * | 1999-03-02 | 2009-09-22 | Cisco Technology, Inc. | System and method for multiple channel statistical re-multiplexing |
| US6728265B1 (en) * | 1999-07-30 | 2004-04-27 | Intel Corporation | Controlling frame transmission |
| US7156301B1 (en) | 1999-09-07 | 2007-01-02 | American Express Travel Related Services Company, Inc. | Foldable non-traditionally-sized RF transaction card system and method |
| US7093767B2 (en) | 1999-09-07 | 2006-08-22 | American Express Travel Related Services Company, Inc. | System and method for manufacturing a punch-out RFID transaction device |
| US7889052B2 (en) | 2001-07-10 | 2011-02-15 | Xatra Fund Mx, Llc | Authorizing payment subsequent to RF transactions |
| US7239226B2 (en) | 2001-07-10 | 2007-07-03 | American Express Travel Related Services Company, Inc. | System and method for payment using radio frequency identification in contact and contactless transactions |
| US7837116B2 (en) | 1999-09-07 | 2010-11-23 | American Express Travel Related Services Company, Inc. | Transaction card |
| US7070112B2 (en) | 1999-09-07 | 2006-07-04 | American Express Travel Related Services Company, Inc. | Transparent transaction device |
| US7306158B2 (en) | 2001-07-10 | 2007-12-11 | American Express Travel Related Services Company, Inc. | Clear contactless card |
| US7172112B2 (en) | 2000-01-21 | 2007-02-06 | American Express Travel Related Services Company, Inc. | Public/private dual card system and method |
| US8429041B2 (en) | 2003-05-09 | 2013-04-23 | American Express Travel Related Services Company, Inc. | Systems and methods for managing account information lifecycles |
| US8543423B2 (en) | 2002-07-16 | 2013-09-24 | American Express Travel Related Services Company, Inc. | Method and apparatus for enrolling with multiple transaction environments |
| US7268668B2 (en) | 2003-05-09 | 2007-09-11 | American Express Travel Related Services Company, Inc. | Systems and methods for managing multiple accounts on a RF transaction instrument |
| US6748445B1 (en) * | 2000-02-01 | 2004-06-08 | Microsoft Corporation | System and method for exchanging data |
| JP2001230810A (ja) * | 2000-02-16 | 2001-08-24 | Fujitsu Ltd | パケット流量制御装置および方法 |
| WO2001067355A2 (en) | 2000-03-07 | 2001-09-13 | American Express Travel Related Services Company, Inc. | System for facilitating a transaction |
| US20020126690A1 (en) * | 2001-02-26 | 2002-09-12 | Maple Optical Systems, Inc. | Packet transmission scheduling in a data communication network |
| US7650314B1 (en) | 2001-05-25 | 2010-01-19 | American Express Travel Related Services Company, Inc. | System and method for securing a recurrent billing transaction |
| US7542942B2 (en) | 2001-07-10 | 2009-06-02 | American Express Travel Related Services Company, Inc. | System and method for securing sensitive information during completion of a transaction |
| US7059531B2 (en) | 2001-07-10 | 2006-06-13 | American Express Travel Related Services Company, Inc. | Method and system for smellprint recognition biometrics on a fob |
| US8294552B2 (en) | 2001-07-10 | 2012-10-23 | Xatra Fund Mx, Llc | Facial scan biometrics on a payment device |
| US7121471B2 (en) | 2001-07-10 | 2006-10-17 | American Express Travel Related Services Company, Inc. | Method and system for DNA recognition biometrics on a fob |
| US7360689B2 (en) | 2001-07-10 | 2008-04-22 | American Express Travel Related Services Company, Inc. | Method and system for proffering multiple biometrics for use with a FOB |
| US9031880B2 (en) | 2001-07-10 | 2015-05-12 | Iii Holdings 1, Llc | Systems and methods for non-traditional payment using biometric data |
| US7746215B1 (en) | 2001-07-10 | 2010-06-29 | Fred Bishop | RF transactions using a wireless reader grid |
| US7228155B2 (en) | 2001-07-10 | 2007-06-05 | American Express Travel Related Services Company, Inc. | System and method for remotely initializing a RF transaction |
| US7668750B2 (en) | 2001-07-10 | 2010-02-23 | David S Bonalle | Securing RF transactions using a transactions counter |
| US7463133B2 (en) | 2001-07-10 | 2008-12-09 | American Express Travel Related Services Company, Inc. | Systems and methods for providing a RF transaction device operable to store multiple distinct calling card accounts |
| US20040233037A1 (en) * | 2001-07-10 | 2004-11-25 | American Express Travel Related Services Company, Inc. | Method and system for iris scan recognition biometrics on a fob |
| US8538863B1 (en) | 2001-07-10 | 2013-09-17 | American Express Travel Related Services Company, Inc. | System and method for facilitating a transaction using a revolving use account associated with a primary account |
| US7119659B2 (en) | 2001-07-10 | 2006-10-10 | American Express Travel Related Services Company, Inc. | Systems and methods for providing a RF transaction device for use in a private label transaction |
| US8635131B1 (en) | 2001-07-10 | 2014-01-21 | American Express Travel Related Services Company, Inc. | System and method for managing a transaction protocol |
| US7543738B1 (en) | 2001-07-10 | 2009-06-09 | American Express Travel Related Services Company, Inc. | System and method for secure transactions manageable by a transaction account provider |
| US7154375B2 (en) | 2001-07-10 | 2006-12-26 | American Express Travel Related Services Company, Inc. | Biometric safeguard method with a fob |
| US7493288B2 (en) | 2001-07-10 | 2009-02-17 | Xatra Fund Mx, Llc | RF payment via a mobile device |
| US20040236699A1 (en) | 2001-07-10 | 2004-11-25 | American Express Travel Related Services Company, Inc. | Method and system for hand geometry recognition biometrics on a fob |
| US7303120B2 (en) | 2001-07-10 | 2007-12-04 | American Express Travel Related Services Company, Inc. | System for biometric security using a FOB |
| US7827106B2 (en) | 2001-07-10 | 2010-11-02 | American Express Travel Related Services Company, Inc. | System and method for manufacturing a punch-out RFID transaction device |
| US7312707B1 (en) | 2001-07-10 | 2007-12-25 | American Express Travel Related Services Company, Inc. | System and method for authenticating a RF transaction using a transaction account routing number |
| US8279042B2 (en) | 2001-07-10 | 2012-10-02 | Xatra Fund Mx, Llc | Iris scan biometrics on a payment device |
| US8548927B2 (en) | 2001-07-10 | 2013-10-01 | Xatra Fund Mx, Llc | Biometric registration for facilitating an RF transaction |
| US7925535B2 (en) | 2001-07-10 | 2011-04-12 | American Express Travel Related Services Company, Inc. | System and method for securing RF transactions using a radio frequency identification device including a random number generator |
| US7429927B2 (en) | 2001-07-10 | 2008-09-30 | American Express Travel Related Services Company, Inc. | System and method for providing and RFID transaction device |
| US7805378B2 (en) | 2001-07-10 | 2010-09-28 | American Express Travel Related Servicex Company, Inc. | System and method for encoding information in magnetic stripe format for use in radio frequency identification transactions |
| US7762457B2 (en) | 2001-07-10 | 2010-07-27 | American Express Travel Related Services Company, Inc. | System and method for dynamic fob synchronization and personalization |
| US7705732B2 (en) | 2001-07-10 | 2010-04-27 | Fred Bishop | Authenticating an RF transaction using a transaction counter |
| US9454752B2 (en) | 2001-07-10 | 2016-09-27 | Chartoleaux Kg Limited Liability Company | Reload protocol at a transaction processing entity |
| US8960535B2 (en) | 2001-07-10 | 2015-02-24 | Iii Holdings 1, Llc | Method and system for resource management and evaluation |
| US7503480B2 (en) | 2001-07-10 | 2009-03-17 | American Express Travel Related Services Company, Inc. | Method and system for tracking user performance |
| US7996324B2 (en) | 2001-07-10 | 2011-08-09 | American Express Travel Related Services Company, Inc. | Systems and methods for managing multiple accounts on a RF transaction device using secondary identification indicia |
| US8001054B1 (en) | 2001-07-10 | 2011-08-16 | American Express Travel Related Services Company, Inc. | System and method for generating an unpredictable number using a seeded algorithm |
| US9024719B1 (en) | 2001-07-10 | 2015-05-05 | Xatra Fund Mx, Llc | RF transaction system and method for storing user personal data |
| US7249112B2 (en) | 2002-07-09 | 2007-07-24 | American Express Travel Related Services Company, Inc. | System and method for assigning a funding source for a radio frequency identification device |
| US7284111B1 (en) | 2002-04-17 | 2007-10-16 | Dinochip, Inc. | Integrated multidimensional sorter |
| US7587756B2 (en) | 2002-07-09 | 2009-09-08 | American Express Travel Related Services Company, Inc. | Methods and apparatus for a secure proximity integrated circuit card transactions |
| US7529276B1 (en) | 2002-09-03 | 2009-05-05 | Cisco Technology, Inc. | Combined jitter and multiplexing systems and methods |
| US6805287B2 (en) | 2002-09-12 | 2004-10-19 | American Express Travel Related Services Company, Inc. | System and method for converting a stored value card to a credit card |
| US7268667B2 (en) | 2003-05-09 | 2007-09-11 | American Express Travel Related Services Company, Inc. | Systems and methods for providing a RF transaction device operable to store multiple distinct accounts |
| US7317727B2 (en) * | 2003-05-21 | 2008-01-08 | International Business Machines Corporation | Method and systems for controlling ATM traffic using bandwidth allocation technology |
| US7362765B1 (en) * | 2003-12-15 | 2008-04-22 | Dinochip, Inc. | Network traffic management system with floating point sorter |
| US7474638B2 (en) * | 2003-12-15 | 2009-01-06 | Agilent Technologies, Inc. | Method and system for distributed baseband measurements |
| US7352697B1 (en) | 2004-06-23 | 2008-04-01 | Dinochip, Inc. | Network processing using fractional time stamp values |
| US7314165B2 (en) | 2004-07-01 | 2008-01-01 | American Express Travel Related Services Company, Inc. | Method and system for smellprint recognition biometrics on a smartcard |
| US7318550B2 (en) | 2004-07-01 | 2008-01-15 | American Express Travel Related Services Company, Inc. | Biometric safeguard method for use with a smartcard |
| US8169891B2 (en) * | 2005-03-31 | 2012-05-01 | Agere Systems Inc. | Apparatus and method for handling lost cells in a communications system |
| US7623539B2 (en) * | 2005-03-31 | 2009-11-24 | Agere Systems Inc. | Apparatus and method for processing cells in an ATM adaptation layer device in a communications system that exhibits cell delay variation |
| US7596147B2 (en) | 2006-06-28 | 2009-09-29 | Agere Systems Inc. | Apparatus and method for fractional processing of cells in a communications system |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5796735A (en) * | 1995-08-28 | 1998-08-18 | Integrated Device Technology, Inc. | System and method for transmission rate control in a segmentation and reassembly (SAR) circuit under ATM protocol |
| US5917822A (en) * | 1995-11-15 | 1999-06-29 | Xerox Corporation | Method for providing integrated packet services over a shared-media network |
| US5751709A (en) | 1995-12-28 | 1998-05-12 | Lucent Technologies Inc. | Adaptive time slot scheduling apparatus and method for end-points in an ATM network |
| US5812527A (en) * | 1996-04-01 | 1998-09-22 | Motorola Inc. | Simplified calculation of cell transmission rates in a cell based netwook |
| US6128303A (en) | 1996-05-09 | 2000-10-03 | Maker Communications, Inc. | Asynchronous transfer mode cell processing system with scoreboard scheduling |
| US5926459A (en) * | 1996-06-27 | 1999-07-20 | Xerox Corporation | Rate shaping in per-flow queued routing mechanisms for available bit rate service |
| JP2930020B2 (ja) * | 1996-07-18 | 1999-08-03 | 日本電気株式会社 | 通信制御装置 |
| US5844890A (en) * | 1997-03-25 | 1998-12-01 | International Business Machines Corporation | Communications cell scheduler and scheduling method for providing proportional use of network bandwith |
| US6028843A (en) * | 1997-03-25 | 2000-02-22 | International Business Machines Corporation | Earliest deadline first communications cell scheduler and scheduling method for transmitting earliest deadline cells first |
| US6115360A (en) * | 1997-11-21 | 2000-09-05 | Texas Instruments Incorporated | Fair scheduling of ATM cell transmissions during overscheduled conditions |
-
1997
- 1997-12-18 US US08/993,801 patent/US6205151B1/en not_active Expired - Lifetime
-
1998
- 1998-11-20 JP JP33072298A patent/JPH11234309A/ja active Pending
- 1998-11-23 EP EP98204004A patent/EP0939573B1/en not_active Expired - Lifetime
- 1998-11-23 DE DE69817756T patent/DE69817756T2/de not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| EP0939573A2 (en) | 1999-09-01 |
| EP0939573B1 (en) | 2003-09-03 |
| DE69817756D1 (de) | 2003-10-09 |
| US6205151B1 (en) | 2001-03-20 |
| EP0939573A3 (en) | 1999-11-10 |
| DE69817756T2 (de) | 2004-07-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH11234309A (ja) | 非同期転送モード・セル送信スケジューリング | |
| JPH11252127A (ja) | オーバースケジュール条件でのatmセル送信の公平なスケジューリング | |
| US6914881B1 (en) | Prioritized continuous-deficit round robin scheduling | |
| US5818815A (en) | Method and an apparatus for shaping the output traffic in a fixed length cell switching network node | |
| US6389019B1 (en) | Time-based scheduler architecture and method for ATM networks | |
| US6414963B1 (en) | Apparatus and method for proving multiple and simultaneous quality of service connects in a tunnel mode | |
| US5926459A (en) | Rate shaping in per-flow queued routing mechanisms for available bit rate service | |
| US5446726A (en) | Error detection and correction apparatus for an asynchronous transfer mode (ATM) network device | |
| US6483839B1 (en) | Apparatus and method for scheduling multiple and simultaneous traffic in guaranteed frame rate in ATM communication system | |
| US6813249B1 (en) | System and method for prefetching data | |
| US6049526A (en) | Enhanced integrated rate based available bit rate scheduler | |
| US6292491B1 (en) | Distributed FIFO queuing for ATM systems | |
| US6262989B1 (en) | Apparatus and method for providing different quality of service connections in a tunnel mode | |
| JPH07321822A (ja) | マルチキャスティング機能を備えた装置 | |
| WO2000001120A9 (en) | Cbr/vbr traffic scheduler | |
| JPH07321823A (ja) | マルチキャスティング機能を備えた装置 | |
| JPH08181703A (ja) | 仮想チャネルのセルの伝送を調整する方法及び装置 | |
| US5940397A (en) | Methods and apparatus for scheduling ATM cells | |
| JPH05304534A (ja) | 複数の実体中での資源を時分割多重化する装置及びその方法 | |
| WO2002003612A2 (en) | Technique for assigning schedule resources to multiple ports in correct proportions | |
| US20050010676A1 (en) | Time-based transmission queue for traffic management of asynchronous transfer mode virtual circuits on a multi-threaded, multi-processor system | |
| JPH0818576A (ja) | 通信システム | |
| JP3157113B2 (ja) | トラヒックシェイパー装置 | |
| JP2001285362A (ja) | 動的ビットマップジェネレータスケジューラの方法及び装置 | |
| Tyan | A rate-based message scheduling paradigm |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051108 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070813 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070817 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071119 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071122 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071217 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071220 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080314 |