JP3018975B2 - Atmプロトコル処理コントローラ - Google Patents

Atmプロトコル処理コントローラ

Info

Publication number
JP3018975B2
JP3018975B2 JP7342199A JP34219995A JP3018975B2 JP 3018975 B2 JP3018975 B2 JP 3018975B2 JP 7342199 A JP7342199 A JP 7342199A JP 34219995 A JP34219995 A JP 34219995A JP 3018975 B2 JP3018975 B2 JP 3018975B2
Authority
JP
Japan
Prior art keywords
transmission
cell
cell transmission
atm
rate
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 - Lifetime
Application number
JP7342199A
Other languages
English (en)
Other versions
JPH09186692A (ja
Inventor
美加 水谷
達也 横山
栄三 端
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7342199A priority Critical patent/JP3018975B2/ja
Priority to US08/775,022 priority patent/US5974466A/en
Publication of JPH09186692A publication Critical patent/JPH09186692A/ja
Priority to US09/350,892 priority patent/US6714989B1/en
Application granted granted Critical
Publication of JP3018975B2 publication Critical patent/JP3018975B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は,ATM−LANに
接続する端末に実装し,AALレイヤのSAR機能と,
ATMレイヤのセルの多重/分離機能を持つATMプロ
トコル処理コントローラに関し,特に複数論理コネクシ
ョンに対するトラヒックシェーピング機能を実現する送
信トラヒック制御に関するものである。
【0002】
【従来の技術】ATMに於て,VPI/VCIによって
一意に識別できる論理コネクション(VC)設定時に,
その論理コネクション上を転送するトラヒックの種別に
より,遅延の許容をどこまで許可するか等の通信品質
と,送信レートをネットワーク,エンドシステムに要求
することが出来る。実際には,ATMレイヤの機能とし
て定義されている4つのトラヒックサービスクラス(C
BR:固定レートサービス,VBR:可変レートサービ
ス,ABR:ネットワーク輻輳状態に対応してレートを
変動させるサービス,UBR:無規定,無保証のサービ
ス)から,VC設定時に使用するクラスを選択するとと
もに,送信レートを要求する。
【0003】ATM−LANに接続する為に必要なAT
Mプロトコル処理コントローラは,VC設定時に申告し
たサービスクラスに従い,同じくVC設定時に申告した
送信レートに即してセルの送信をVC対応に実現させる
必要がある。
【0004】既存のATMプロトコル処理コントローラ
でサポートしているトラヒックシェーピング機能として
は,例えば,ハードウェアにて2つのプライオリティ対
応に4つのレートキューを具備し,レートキュー対応に
ピークレートを規定し,規定したレートでレートキュー
に登録してある複数VCをラウンドロビン方式でアクセ
スしてセルを送信するといった方法により実現している
もの,全体VCの送信レートから,セルを送信するVC
の順番を記載したテーブルを予め準備しておき,ハード
ウェアでは前記テーブルを一定周期毎にアクセスし,記
載してあるVCに対応したセルを送信するといった方法
により実現しているものがある。
【0005】尚,前記トラヒックシェーピング機能を持
ったATMプロトコル処理コントローラとしては,Tran
Switch社SARAチップ,後記機能を持つコントローラ
としては,Integrated Device Technology社のATM
SARチップ(IDT77201)がある。
【0006】
【発明が解決しようとする課題】しかしながらこのよう
な従来装置では,VC対応に申告されたATMプロトコ
ルで規定されているサービスクラス,送信レートに即し
た送信トラヒック制御を実現するためには,ATMプロ
トコル処理コントローラのドライバにてVC対応に送信
レートを意識することが必要であり,加えて,VCが設
定された場合,全体の送信レートのスケジュールを見直
す必要がある。
【0007】例えば,上述した公知例のように,レート
キューヘのピークレートの割り付けや,スケジュールの
ため予めテーブルを作成が必要である。
【0008】一般に,ATM−LANに接続するネット
ワークカードでは,コスト低減のため,ATMプロトコ
ル処理コントローラのドライバ用のローカルプロセッサ
を実装しない構成をとるため,計算機側の主プロセッサ
にてVC対応の送信トラヒック制御を実行する必要があ
る。
【0009】本発明の目的は,ATMプロトコル処理コ
ントロール内において,ATMレイヤの規定する様々な
サービスクラス,送信レートに即したトラヒック制御に
柔軟に対応することにある。
【0010】本発明の他の目的は,VC対応に申告され
る送信レートに即したトラヒックシェーピング機能をハ
ードウェアとファームウェアの双方で実現することにあ
る。
【0011】本発明の他の目的は,全VC上の総送信レ
ートを監視,常に各VCに最適な送信レートを割り付け
ることにある。
【0012】
【課題を解決するための手段】本発明の特徴は,ATM
プロトコル処理コントローラにおいて,VC単位にセル
の送信間隔を管理する手段と,セル送信時刻到達時にセ
ルの送信を行う手段と,複数VCにおいて同時にセル送
信時刻に到達した場合にスケジューリングを行う手段を
持ったハードウェア回路であるセル送信処理部を具備
し,複数のVCに対して同時にトラヒックシェーピング
を実現する点にある。
【0013】さらに,ATMプロトコル処理コントロー
ラにCPUコアとCPUコアで実行するファームウェア
を格納するメモリと,ファームウエアが使用するテーブ
ルを配置するメモリを具備することにより,前記ファー
ムウエアにてVC毎にセル送信間隔を管理する機能と,
VC毎に最適な送信レートを選択する機能と,総送信レ
ートを監視する機能等を持つことにより,VC対応に申
告されるサービスクラスの例えばBurst tole
ranceといったパラメータと送信レートに即したト
ラヒック制御を実現する点も本発明の特徴の一つであ
る。
【0014】さらに,セル送信管理部においては,複数
セル送信毎に送信レートを変更できる手段と,セルの周
期転送手段とを持つことも特徴の一つである。
【0015】このような構成とすることから,セル送信
管理部にて,複数VCに対するトラヒックシェーピング
機能を実現することが可能である。さらに,複数セル送
信毎にセル送信レートを変更することが可能である。セ
ル送信間隔管理方法として,一定周期でのセル送信と,
セル送信完了から一定時間でのセル送信から選択するこ
とが可能である。
【0016】さらに,セル送信管理部とCPUコアで実
行するファームウェアの双方で,同時に複数のVCに対
するトラヒックシェーピング機能を実現することが可能
である。セル送信管理部とファームウェアが担当する処
理を,データセルと管理セル,あるいは高速な送信レー
トが申告されたVCと低速な送信レートが申告されたV
C等に分担することが可能である。
【0017】各VCに対して,ATMプロトコル規定の
サービスタイプのパラメータと,送信レートとを申告す
るだけで,CPUコアで実行するファームウェアが各V
Cに即したセル送信間隔の算出と,管理セルの送信管理
とをすることが可能である。
【0018】さらに,送信中のVCの総送信レートを監
視し,総送信レートが伝送路の転送帯域を越えた場合,
各VC毎にサービスクラスに対応して送信レートを削減
することが可能である。
【0019】
【発明の実施の形態】
(実施例1)本発明の第一の実施例を図1から図13を
参照して説明する。
【0020】図1は,本発明を適用したATMプロトコ
ル処理コントローラ110を実装し,ATM−LANに
計算機を接続するATMカード108の構成例を示すブ
ロック図である。計算機は,主プロセッサ100と主メ
モリ102から構成され,プロセッサバス104とPC
MCIA接続部106を介してATMカード108に接
続されている。ATMカード108は,計算機とのイン
タフェース機能とAAL/ATM機能とを持つATMプ
ロトコル処理コントローラ110,PHY機能を持つP
HYプロトコル処理コントーラ114,セルの分割/組
立に使用するバッファメモリ112,トランス116,
メタルケーブルのコネクタ118を備えており,メタル
ケーブル120を介して支線HUB122に接続しAT
M−LANを構成するものである。ATMプロトコル処
理コントローラ110は,PCMCIAとして物理的な
インタフェースを実現するPCMCIA I/F部13
2,主プロセッサからの送信要求,ATMカードからの
受信報告などに係わる制御情報を授受するホストI/F
部134,主メモリ102とバッファメモリ112間の
データ転送を行うホストDMAC136,バッファメモ
リ112とPHYプロトコル処理プロセッサ114間で
セル送信を行うセル送信DMAC140,セル受信を行
うセル受信DMAC142,PHYプロトコル処理部1
14とのインタフェース部であるセル送受信インタフェ
ース部146,DMAC136,140,142,ある
いはCPUコア128によるバッファメモリアクセス競
合を制御するアービタ138,セル送信時のトラヒック
シェーピング機能を実現するハードウェア回路であるセ
ル送信管理部148,上記処理部とCPUコア128を
接続するCPUコアI/F部130,CPUコア12
8,CPUコアが実行するファームウェアを格納するF
ROM124,CPUコアが管理するテーブル等を配置
するRAM124から構成する。
【0021】図2は,ATMにおける通信プロトコル構
成例と通信プロトコルで規定されている処理動作例を示
した図である。AALレイヤとしてAAL5の適用を仮
定している。ATMカード108は,AALレイヤのC
PCSレイヤ以下のプロトコル処理をATMプロトコル
処理コントローラ110とPHYプロトコル処理コント
ローラ114とにより実行する。
【0022】送信処理と受信処理の概略を以下に示す。
【0023】ATMプロトコル処理コントローラ110
は,主プロセッサ100からの送信要求を受け付ける
と,主プロセッサ100が主メモリ102上に準備した
送信CPCS−PDUをホストDMAC136を用いて
バッファメモリ112へDMA転送する。その後,バッ
ファメモリ112上のCPCS−PDUを48Bに分割
し,セルヘッダを付加し,PHYプロトコ処理コントロ
ーラ114に対して送信を要求する。尚,セル送信DM
AC140ではセルを送信しながらCRC32を計算
し,CPCS−PDUのトレイラにCRC32の計算結
果を挿入する。
【0024】ATMプロトコル処理コントローラ110
は,PHYプロトコル処理コントローラ114から受信
報告を受けて,受信セルからセルヘッダを削除し,バッ
ファメモリ112上でCPCS−PDUの組立を行う。
尚,セル受信DMAC142ではセルを受信しながらC
RC32を計算し,CPCS−PDU組立完了時にCR
C32のチェックを行う。CPCS−PDU組立が完了
すると,ホストDMAC136にて,バッファメモリ1
12から主プロセッサ100が指定する主メモリ102
上へ受信CPCS−PDUをDMA転送する。転送完了
後,ATMプロトコル処理コントローラ110から主プ
ロセッサ100へ受信完了を割り込み等により通知す
る。
【0025】図3にバッファメモリ112の構成を示
す。バッファメモリ112は,ATMプロトコル処理コ
ントローラ110がセル送信処理を行うために使用する
送信管理テーブル300,セル受信処理に使用する受信
管理テーブル312,送信CPCS−PDUを格納する
ための複数の送信バッファ314(314A,314
B,314M),受信CPCS−PDUを格納するため
の複数の受信バッファ316(316A,316B,3
16N)から構成する。送信管理テーブル300のエン
トリ310は,セルヘッダのVPI,VCIにより識別
可能な論理コネクション(VC)対応に準備し,CRC
計算結果を退避するエリア302,セル送信時に付加す
るセルヘッダ304,ATMプトコル処理コントローラ
にて連続して送信する送信セル数306,次に送信する
セルペイロードの送信バッファでの位置を示す送信ポイ
ンタ308,から構成する。ATMプロトコル処理コン
トローラは110,送信管理テーブル300を用いてセ
ル送信管理部148にてトラヒックシェーピングを実現
する。
【0026】図4は,本発明のセル送信管理部148の
機能を示すブロック構成図である。セル送信管理部14
8では,VC対応にセル送信間隔を管理し,セル送信時
刻に到達するとセル送信DMACに対してセル送信要求
を発行することにより,VC毎に規定される種々の送信
レート(セル数/秒)に対応し,加えて複数VCのセル
多重を行い,トラヒックシェーピングを実現するもので
ある。セル送信管理部148は,VC対応にセル送信間
隔を管理するための管理エントリ404(404A,4
04B,404N),トラヒック制御を柔軟に行うため
CPUコア128からの1セル送信要求を受け付ける送
信要求レジスタ406,セル送信間隔管理のためのCl
ock402,複数の管理エントリ404,あるいはC
PUコア128からのセル送信要求をスケジューリング
するスケジューラ部400,セル送信完了をCPUコア
へ報告するための送信報告レジスタ408から構成す
る。管理エントリ数はセル送信管理部にて同時に管理可
能なVC数に対応する。管理エントリ404は,セル送
信間隔管理を起動するためのctlレジスタ401(4
10A,410B,410N),バッファメモリ上に設
ける送信管理テーブル(SMT)300の位置情報(S
MT index)を設定するSMT indexレジ
スタ412(412A,412B,412N),セル送
信間隔を設定するrate valueレジスタ414
(414A,414B,414N),セル送信間隔管理
のためのワークエリアであるcountレジスタ416
(416A,416B,416N)の4レジスタと,c
ountレジスタ416を利用してセル送信間隔管理を
行うタイマ処理部418(418A,418B,418
N)から構成する。セル送信間隔管理を起動する際に
は,上記4レジスタの設定をCPUコア128にて行う
必要がある。
【0027】次に,セル送信管理部148を用いること
により実現するトラヒック制御方式を図5から図10に
示す処理フローにより示す。これらのフローにて,セル
送信処理部148のタイマ処理部418とスケジューラ
部400,セル送信DMAC140の処理を示す。
【0028】図5は,タイマ処理部418のカウント処
理を示す処理フローである。Clock402から一定
時間,たとえばμsec毎に信号が入ると,管理エント
リ404に対して起動要求が出されているかをctlレ
ジスタ410の設定値より確認する(502)。起動要
求が無ければ処理を終了し,起動要求があれば,cou
ntレジスタ416の設定値をチェックし,「0」であ
れば処理を終了し(504),「0」でなければ,co
untレジスタ416の設定値から「1」減算する(5
06)。その後,再度countレジスタ416の設定
をチェックし(508),「0」であればスケジューラ
部400へtime out信号を発行する(51
0)。同時にSMT indexをスケジューラ部40
0へ渡す(510)。タイマ処理部418は,スケジュ
ーラ部400からの再起動要求があるまで,処理を停止
する(514)。
【0029】図6,図7においてスケジューラ部400
のスケジューリング処理を示した処理フローである。
【0030】図6は,スケジューラ部400のセル送信
起動のランダムなスケジューリング処理を行う場合の処
理フローである。各管理エントリ404のタイマ処理部
418からのTime out信号の有無と(602,
604,606),CPUコア128による送信要求レ
ジスタ406の設定有無(608)を順番にチェックし
続け,セル送信要求があれば,セル送信DMAC140
を起動する(610)。上述したスケジューリング処理
を繰り返し行う事により,各管理エントリ404のタイ
マ処理部418からの複数のTime out信号とC
PUコアによる送信要求レジスタの設定によるセル送信
要求をランダムに受け付け,複数VCに対するセル送信
要求を平等に扱う。
【0031】図7は,スケジューラ部400のセル送信
起動の優先機能付きスケジューリング処理を行う場合の
一処理フローである。優先順位は,管理エントリ404
番号が小さい方が優先順位が高いと仮定する(管理エン
トリ1,404Aは管理エントリ2,404Bよりも優
先順位が高く,管理エントリn−1は管理エントリn,
404Nよりも優先順位が高い)。スケジュール部40
0では,まず管理エントリ404のタイマ処理部418
からのTime out信号をチェックする(61
2)。Time out信号が無い場合,CPUコア1
28による送信要求レジスタ406の設定有無を調べ
(608),セル送信要求があれば,セル送信DMAC
140を起動する(610)。Time out信号が
ある場合,管理エントリ1から順番にTime out
信号の有無をチェックし(602,604),セル送信
要求があれば,セル送信DMAC140を起動する(6
10)。一管理エントリに対してセル送信DMAC14
0を起動後,CPUコア128による送信要求レジスタ
406の設定有無を調べ(608),セル送信要求があ
れば,セル送信DMAC140を起動し(610),管
理エントリ404のタイマ処理部418からのTime
out信号によるセル送信と,CPUコア128によ
る送信要求レジスタ406の設定によるセル送信とは交
互に行う。上述した処理を繰り返して行う事により,優
先順位をサポートしたスケジューリング処理を実現す
る。
【0032】図8は,スケジューラ部400におけるセ
ル送信DMAC起動処理を示した処理フローである。セ
ル送信DMAC140にSMT indexを渡すこと
により起動した後(702),1セルの送信が完了する
までウェイトする(704)。セル送信DMAC140
からセル送信完了とSMTの送信セル数が「0」になっ
たことを示す信号を受け付けた場合,タイマ処理部へ停
止要求を発行する(706,708,710)。送信報
告レジスタ408にSMT indexをロードし(7
12),CPUコア128へ通知するため割り込み信号
を発行する(714)。セル送信DMAC140からセ
ル送信完了の信号だけを受け付けた場合,タイマ処理部
へ再起動要求を発行する(716,718,720)。
【0033】図9は,タイマ処理部418のセル送信完
了処理を示す処理フローである。スケジューラ部400
からの要求を受け付けると,タイマ処理部418は停止
状態から回復し,要求の種別により(802),再起動
要求であれば,管理エントリ404のrate val
ueレジスタ414の設定値をcountレジスタ41
6にロードし(804),停止要求であれば,管理エン
トリ404のctlレジスタ410を「inactiv
e」にする(806)。
【0034】図10は,スケジューラ部400より起動
されるセル送信DMAC140の処理を示す処理フロー
である。スケジューラ部400より指定されたSMT
indexの指すSMT300のエントリ310内の送
信ポインタ308より48バイトを読みだし,読みだし
たデータの前にセルヘッダ304を付加してセルを作成
し,セル送受信I/F部146へDMA転送する(90
2)。エントリ310内の送信ポインタ308に48バ
イトを加算し(904),送信セル数306から「1」
を減算する(906)。送信セル数306の値をチェッ
クし(908),「0」の場合,スケジューラ部400
へ送信完了と送信セル数「0」を通知し(910),
「0」でなければ,スケジュータ部400へ送信完了の
みを通知する(912)。
【0035】次に,セル送信管理部148の機能を利用
する場合のCPUコア128にて実行するファームェア
の処理フローを図11から図13を用いて述べる。
【0036】図11は,VCに対するセル送信管理を管
理エントリ404を用いて行う場合のファームウェアの
処理フローである。バッファメモリ112上のSMT3
00内のVCに対応したエントリ310の送信ポインタ
308に送信バッファ314先頭アドレスを設定し(1
002),送信セル数306として,送信バッファ31
4内の総送信セル数を設定する(1004)。管理エン
トリ404のSMTindexレジスタ412にSMT
300のエントリ310の位置情報を設定する(100
6)。セル送信間隔を計算し(1008),管理エント
リのratevalueレジスタ414,countレ
ジスタ416に計算値を設定する(1010,101
2,1014)。その後,ctlレジスタ410に「A
ctive」を設定し,タイマ処理部418によりセル
送信管理を行う(1016)。
【0037】図12は,セル送信管理をファームウェア
で行った場合の処理を示したフローである。ファームウ
ェアにて時計を規定し,予め送信レートより次のセル送
信時刻を計算しておく。次のセル送信時刻が現在時刻を
越えたVCに対して1セル送信処理を行う(110
2)。SMT300のVCに対応したエントリ310の
送信ポインタ308に送信するデータのある位置を設定
し(1104),送信セル数306に「1」を設定する
(1106)。送信要求レジスタ406にSMTind
exを設定しセル送信管理部148のスケジューラ部4
00へセル送信DMAC起動を要求する(1108)。
その後,送信するセルがあれば,送信レートより次のセ
ル送信時刻を計算する(1110)。
【0038】図13は,セル送信管理部148からの割
り込みを受け付けた場合のファームウェアの処理であ
る。管理エントリ404を使用してセル送信管理を行っ
ている場合,送信バッファ314を解放し空き状態とし
(1202,1204),さらに未送信の送信バッファ
があれば,管理エントリ404を利用してセル送信を行
う(1206)。管理エントリ404を利用していない
場合(図11に従い,送信要求レジスタからセル送信を
要求した場合),送信バッファ314内のデータが全て
送信されていれば,送信バッファを解放する(120
2,1208,1210)。次のセル送信に関しては,
図12のフローに従う。
【0039】本実施例で示したように,上述した機能を
持つセル送信管理部148を実装したATMプロトコル
処理コントローラ110では,セル送信管理部148が
管理するVCに対するセル送信とCPUコアで実行され
るファームウェアからのセル送信とを併せてトラヒック
シェーピングできることから,高速な送信レートである
VCに関しては,セル送信部のセル送信管理機能を利用
し,低速な送信レートであるVCに関しては,ファーム
ウェアにてセル送信管理を行う事が可能である。さら
に,セル送信管理部148が持つ管理エントリ数を越え
たVC数の同時送信に対しても,ファームェアにてセル
送信管理が可能であるため,同時に送信可能なVC数は
ハードウェア制限を受けない。
【0040】(実施例2)本発明の第2の実施例を図
5,図8,14を用いて説明する。
【0041】図14は,セル送信管理部148における
セル送信間隔の管理方式を示す図である。実施例1で示
したセル送信管理部のタイマ処理部の管理方式は,図1
4のリスタート方式に当たる。この方式では,セル送信
DMAC140よりセル送信完了通知を受けたスケジュ
ーラ部400からの再起動要求を受け,タイマ処理部4
18がセル送信間隔を再度カウントを開始する。スケジ
ュラー部400へのTime out信号が同時に2つ
の管理エントリ404から発行された場合(図14にお
ける管理エントリ1,404Aと管理エントリ2,40
4B),スケジューラ部400のスケジューリング機能
にて,例えば図14に示すように管理エントリ2,40
4Bの要信要求を受けてセルを送信した後,管理エント
リ1,404Aのセルを送信する。このため,同時に2
つのTime outが生じた場合,実際にせルが送信
される間隔は,管理エントリ1,404Aでは登録した
セル送信間隔よりΔtだけ遅延することになる。Δtの
大きさは,回線の伝送速度が155Mbpsの場合,約
2.7μsecである。
【0042】遅延が生じた後,そこから新たにセル送信
間隔のカウントを行うリスタート方式は,UNIで規定
されているVirtual Scheduling Algorithmに即してい
るが,一方,音声,動画のようなコンティニュアスなデ
ータ送信では,図14のフリーラン方式に示すように,
ある程度の送信間隔の変動は許可されるが,転送開始時
から常に一定の間隔でのセルの周期転送が要求される。
【0043】図14に示す一定のセル送信間隔を実現す
るフリーラン方式を,図5と図8のタイマ処理部418
とスケジューラ部400の処理フローにより示す。
【0044】図5は,タイマ処理部414のカウント処
理を示す処理フローである。Clock402からの信
号を受けて,タイマ処理部418は実施例1で述べた処
理を開始する(502,504,506,508)。ス
ケジューラ部400へTime out信号を発行した
後(510),管理エントリ404を使用しているVC
がフリーラン方式を要求している場合,タイマ処理部を
停止させずに,countレジスタ416にrate
valueレジスタ414の設定値をロードし,続けて
カウント処理を実行する(512,516)。
【0045】図8は,スケジューラ部400におけるセ
ル送信DMAC起動処理を示した処理フローである。セ
ル送信DMAC140からセル送信完了の信号を受け付
けた場合(SMT300の送信セル数は「0」でな
い),フリーラン方式の場合,既にタイマ処理部は次の
セル送信時間のカウントを開始しているので,タイマ処
理部に対して再起動要求を発行する必要はない。
【0046】本実施例に示すように,セル送信管理部に
おいて,フリーラン方式によるセル送信間隔の時間管理
を行い,音声,動画といったデータ転送に対して周期転
送を実現する。
【0047】(実施例3)本発明の第3の実施例を図1
5から図18を用いて説明する。
【0048】図15は本発明のセル送信管理部148の
構成を示す図である。セル送信管理部148は,複数の
管理エントリ404,スケジューラ部400,送信要求
レジスタ406,受信報告レジスタ408,Clock
402,複数セル毎に新たなセル送信間隔を管理エント
リのrate valueレジスタ414にロードする
rate設定処理部1402から構成する。
【0049】図16にバッファメモリ112の構成を示
す。バッファメモリ112は,送信管理テーブル30
0,受信管理テーブル312,複数の送信バッファ31
4,複数の受信バッファ316,複数セル送信毎に変更
するセル送信間隔を複数設定可能なレートエントリ15
08(1508A,1508B)から構成する。レート
エントリ1508は,VC単位に準備するものであり,
VCに対応したSMT300のエントリ310によりポ
インタ情報を管理される。SMT300のエントリ31
0は,CRC結果302,セルヘッダ304,送信セル
数306,送信ポインタ308,何セル送信毎にセル送
信間隔を変更するかを設定する連続送信数1502,セ
ル送信DMAC140のセル送信数のカウンタとして利
用される連続数カウンタ1504,レートエントリ15
08のポインタ情報を管理するレートエントリポインタ
1506から構成する。
【0050】管理エントリ404を用いてセル送信管理
を行う場合,CPUコア128にて実行するファームウ
ェアにて,SMT300の送信ポインタ308と送信セ
ル数306,管理エントリのレジスタを設定する。加え
て,複数セル送信毎にセル送信間隔を変更する場合,レ
ートエントリ1508にセル送信間隔を複数設定し,S
MTのレートエントリポインタ1506にレートエント
リの先頭アドレスを,連続送信数1504に同一のセル
送信間隔で送信するセル数を設定する。例えば1セル送
信毎にセル送信間隔を変更する場合,SMT300の連
続送信数1502には「1」を設定する。
【0051】図17は,セル送信管理部148のrat
e設定処理部1402の処理を示す処理フローである。
スケジューラ部400では,送信DMAC起動処理内で
rate設定処理部1402を起動しSMT inde
xを渡す。本処理を図8の処理A722の部分にて行
う。これを受けてrate設定処理部1402は,バッ
ファメモリ112上のレートエントリ1508内のレー
ト値の転送するため,SMT indexを渡すことに
より,セル送信DMAC140を起動する(160
2)。rate設定処理部1402は,レート値の転送
を受けて,SMT indexに対応した管理エントリ
300のrate valueレジスタ414にレート
値をロードする(1604,1606)。
【0052】図18は,rate設定処理部1402よ
り起動されるセル送信DMAC140によるレート値転
送処理を示す処理フローである。rate設定処理部1
402から指定されたSMT indexの指すSMT
300のエントリ310内のレートエントリポインタ1
506よりレート値を読みだし,rate設定処理部1
402へDMA転送する(1702)。エントリ310
内の連続数カウンタ1504が「0」であるかチェック
し(1704),「0」の場合のみ連続送信数1502
の設定値を連続数カウンタ1504にロードする(17
06)。連続数カウンタ1504から「1」を減算し
(1708),連続セル数カウンタ1504が「0」に
なった場合に限り,レートエントリポインタ1506を
次のレート値を指すように更新する(1710,171
2)。
【0053】本実施例に示すように,セル送信管理部で
は複数セル送信毎にセル送信間隔を変更することが可能
であるため,1CPCS PDU転送中でも送信レート
を変更でき,柔軟なトラヒック制御を実現する。
【0054】(実施例4)本発明の第4の実施例を図1
9から図21を用いて説明する。
【0055】図19は,CPUコア128にて実行する
ファームウェアにおいて複数VCに対する送信トラヒッ
ク制御を行うため,RAM126上に作成する送信トラ
ヒック管理テーブル1802の構成例を示す。送信トラ
ヒック管理テーブル1802は,VC毎に,CBR,V
BR等のサービスクラスを示すエリア1804,現在の
送信レートを示すエリア1806,連続送信セル数のカ
ウンタ1808,PCR(peak cell rate),SCR
(Sustainable cell rate),ACR(Availabel ce
ll rate),MCR(Minimum cell rate),バース
ト等のトラヒック管理パラメータ群1810から構成す
る。
【0056】例えば,サービスクラスとしてCBRを選
択した場合,トラヒック管理パラメータ1810として
は,例えばPCRが規定され,現在レート1806とし
てはPCRを設定する。VBRでは,トラヒック管理パ
ラメータ1810として,例えばPCR,SCR,バー
ストが規定される。バーストを監視するため,連続送信
セル数1808を用いる。現在レート1806としては
PCRかSCRの何れかを設定する。ABRでは,トラ
ヒック管理パラメータ1810は,例えばMCR,PC
R,ACR等が規定される。ACRはABRの規定に従
い,MCRとPCRの間で輻輳状態を反映して規定し,
このACRを現在レート1806として設定する。
【0057】CPUコア128で実行するファームウェ
アで行うトラヒック制御を図20,図21を参照して説
明する。
【0058】図20は,サービスクラスに対応したセル
送信間隔規定処理の処理フローを示す。CPCS−PD
Uの送信要求を受け付けると,以下のようにVCのサー
ビスクラスに対応した送信レートを選択し,選択した送
信レートからセル送信管理部148の管理エントリ40
4内のrate valueレジスタ414,coun
tレジスタ416に設定するセル送信間隔を算出する
(1920)。VCのサービスクラスがCBRの場合
(1902),送信トラヒック管理テーブル1802の
現在レート1806にPCRを設定する(1904)。
VBRの場合(1906),連続送信セル数1808が
バースト数より大きければ,現在レート1806にSC
Rを(1908,1912),そうでなければPCRを
設定する(1910)。ABRの場合,まずACR削減
の有無をチェックし(1914),必要ならばACRを
削減する(1916)。現在レート1806にACRを
設定する(1918)。
【0059】図21は,ATMプロトコル処理コントロ
ーラ110が送信要求を受け付ける毎に行う全体レート
監視処理の処理フローである。送信要求を受け付けたV
C上で現在セルの送信が行われているかを調べるため,
送信トラヒック管理テーブル1802の現在レート19
06が「0」であるかどうかをチェックする(200
2)。送信が行われている場合,送信トラヒック管理テ
ーブル1802の現在レート1806には現在の送信レ
ートが登録されている。送信が行われていない場合,図
19に従い,トラヒック管理テーブル1802の現在レ
ート1806に送信レートを設定する(2004)。ト
ラヒック管理テーブル1802の現在レート1806の
総和が伝送帯域以下であることをチェックする(200
6)。伝送路の伝送速度が155Mbpsであれば,伝
送帯域は約365kセル/秒である。伝送帯域を越えて
いる場合,送信中である全てのVCに対して,現在レー
トを再設定し送信レートの保証を行う。サービスクラス
としてCBRを選択した場合,現在レートは変更しない
(2008)。VBRの場合,現在レートをSCRとす
る(2010,2012)。ABRの場合,現在レート
をMCRとし,トラヒック管理テーブル1802のトラ
ヒック管理パラメータ1810のACRにMCRを設定
する(2014)。
【0060】本実施例に示すように,CPUコアで実行
するファームウェアでは,セル送信管理部148を用い
て,種々のサービスクラスに対応した処理を行う事が可
能である。加えて,帯域制御を行う事により,VC対応
に規定した送信レートを保証することが可能である。
【0061】
【発明の効果】本発明によれば,ATMーLANに接続
する端末に実装し,AALレイヤのSAR機能,ATM
レイヤのセル多重/分離機能を持つATMプロトコル処
理プロセッサに於て,セル送受信機能に加えて,VC対
応にセル送信間隔を管理する手段と,セル送信要求をス
ケジューリングする手段と,セル送信要求を受けてセル
を送信する手段を持つハードウェア回路であるセル送信
管理部と,CPUコアを具備することにより,VC対応
に申告されるサービスクラスと送信レートに対応したト
ラヒック制御を行うことが出来る。
【0062】さらに,VC毎に規定された送信レートに
即したトラヒックシェーピング機能を,複数VCに対し
てセル送信管理部とCPUコアで実行するファームウェ
アの双方にて実現することが出来る。
【図面の簡単な説明】
【図1】本発明を適用したATMプロトコル処理コント
ローラを実装したATMカードの構成例を示す図であ
る。
【図2】ATMにおける通信プロトコル構成例と通信プ
ロトコルで規定されている処理動作例を示す図である。
【図3】バッファメモリの一構成例を示す図である。
【図4】本発明のセル送信管理部の一構成例を示す図で
ある。
【図5】タイマ処理部におけるカウント処理を示すフロ
ーチャートである。
【図6】スケジューラ部におけるランダムなスケジュー
リング処理を示すフローチャートである。
【図7】スケジューラ部における優先順位付きスケジュ
ーリング処理を示すフローチャートである。
【図8】スケジューラ部におけるセル送信DMAC起動
処理を示すフローチャートである。
【図9】タイマ処理部におけるセル送信完了処理を示す
フローチャートである。
【図10】セル送信DMACにおけるセル送信処理を示
すフローチャートである。
【図11】CPUコアで実行するファームウェアにおけ
る管理エントリ使用時の処理を示すフローチャートであ
る。
【図12】CPUコアで実行するファームウェアにおけ
るセル送信管理処理を示すフローチャートである。
【図13】CPUコアで実行するファームウェアにおけ
る送信完了処理を示すフローチャートである。
【図14】セル送信管理部におけるセル送信時間の管理
方式を示す図である。
【図15】本発明における,複数セル送信毎に送信レー
トを変更する場合のセル送信管理部の一構成例を示す図
である。
【図16】複数セル送信毎に送信レートを変更する場合
のバッファメモリの一構成例を示す図である。
【図17】rate設定処理部の処理を示すフローチャ
ートである。
【図18】セル送信DMACにおけるレート値転送処理
を示すフローチャートである。
【図19】送信トラヒック管理テーブルの構成例を示す
図である。
【図20】CPUコアで実行するファームウェアにおけ
るサービスクラスに対応したセル送信間隔規定処理を示
すフローフャートである。
【図21】CPUコアで実行するファームウェアにおけ
る全体レート監視処理を示すフローチャートである。
【符号の説明】
108…ATMカード,110…ATMプロトコル処理
コントローラ,112…バッファメモリ,114…PH
Yプロトコル処理コントローラ,128…CPUコア,
130…CPU I/F部,136…ホストDMAC,
138…アービタ,140…セル送信DMAC,142
…セル受信DM,146…セル送受信I/F部,148
…セル送信管理部,300…送信管理テーブル,400
…スケジューラ部,402…Clock,404…管理
エントリ,406…送信要求レジスタ,408…送信報
告レジスタ,410…ctlレジスタ,412…SMT
indexレジスタ,414…rate value
レジスタ,416…countレジスタ,418…タイ
マ処理部,1402…rate設定処理部,1508…
レートエントリ,1802…送信トラヒック管理テーブ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 清水洋他「ATM−LAN」(1995. 7.5),株式会社ソフトリサーチセン ター,P.115−116及びP.200−203 (58)調査した分野(Int.Cl.7,DB名) H04L 12/28

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】ホスト計算機インターフェース回路と、送
    受信データを保持するバッファメモリとのインタフェー
    ス回路と、ATM−LANに接続するためのPHYプロ
    トコル処理コントローラとのインタフェース回路と、計
    算機内の主メモリと前記バッファメモリ間のデータ転送
    を行う第一のデータ転送装置と、前記バッファメモリ内
    のパケットを53バイトのセルとして送信を行う第2のデ
    ータ転送装置と、受信したセルをバッファメモリ上にパ
    ケットとして構成する第3のデータ転送装置と、CPU
    コアと、前記CPUコアが実行するファームウェアを格
    納する第1のメモリと、前記CPUコアが使用するデー
    タを格納する第2のメモリとを有するATM処理コント
    ローラにおいて、複数論理コネクションに対し、論理コ
    ネクション単位にセル送信間隔を管理する機能と、前記
    CPUコアが実行するファームウェアによりセル送信間
    隔を設定するインタフェースと、セル送信時刻到達時に
    セル送信を要求する機能と、前記ファームウェアからの
    セル送信要求を記憶する手段を備え、セル送信間隔を管
    理している複数の論理コネクションからの少なくとも一
    つ以上のセル送信要求とファームウェアからのセル送信
    要求のスケジューリングを行い、選択したセル送信要求
    に応じたセル送信を前記第2のデータ転送装置に要求す
    機能を備えたハードウェア回路を備えることを特徴と
    するATMプロトコル処理コントローラ。
  2. 【請求項2】請求項1のATMプロトコル処理コントロ
    ーラと、前記ATMプロトコル処理コントローラとのイ
    ンタフェース機能を持つPHYプロトコル処理コントロ
    ーラと、トランスと、ケーブルコネクタとを有するAT
    M通信アダプタ。
  3. 【請求項3】PCMCIAとして物理インターフェース
    を実現するホスト計算機インターフェース回路を具備し
    た請求項1記載のATMプロトコル処理コントローラ
    と、前記ATMプロトコル処理コントローラとのインタ
    フェース機能を持つPHYプロトコル処理コントローラ
    と、トランスと、ケーブルコネクタとを有するPCMC
    IA準拠のATM通信カード。
JP7342199A 1995-12-28 1995-12-28 Atmプロトコル処理コントローラ Expired - Lifetime JP3018975B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP7342199A JP3018975B2 (ja) 1995-12-28 1995-12-28 Atmプロトコル処理コントローラ
US08/775,022 US5974466A (en) 1995-12-28 1996-12-27 ATM controller and ATM communication control device
US09/350,892 US6714989B1 (en) 1995-12-28 1999-07-12 ATM controller and ATM communication control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7342199A JP3018975B2 (ja) 1995-12-28 1995-12-28 Atmプロトコル処理コントローラ

Publications (2)

Publication Number Publication Date
JPH09186692A JPH09186692A (ja) 1997-07-15
JP3018975B2 true JP3018975B2 (ja) 2000-03-13

Family

ID=18351891

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7342199A Expired - Lifetime JP3018975B2 (ja) 1995-12-28 1995-12-28 Atmプロトコル処理コントローラ

Country Status (1)

Country Link
JP (1) JP3018975B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6829660B2 (en) * 2001-12-12 2004-12-07 Emulex Design & Manufacturing Corporation Supercharge message exchanger
JP5821608B2 (ja) * 2011-12-20 2015-11-24 富士通株式会社 パケットシェーピング装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
清水洋他「ATM−LAN」(1995.7.5),株式会社ソフトリサーチセンター,P.115−116及びP.200−203

Also Published As

Publication number Publication date
JPH09186692A (ja) 1997-07-15

Similar Documents

Publication Publication Date Title
JP3155472B2 (ja) ネットワークインタフェースコントローラ
JP3359499B2 (ja) 送出トラヒック制御装置
CA2214838C (en) Broadband switching system
CA2184830C (en) Broadband switching network
US5974466A (en) ATM controller and ATM communication control device
AU707294B2 (en) ATM throttling
US5784358A (en) Broadband switching network with automatic bandwidth allocation in response to data cell detection
CA2214897C (en) Broadband switching network
AU719514B2 (en) Broadband switching system
US6768717B1 (en) Apparatus and method for traffic shaping in a network switch
JP2001156785A (ja) バッファに於けるセル廃棄回避システムおよび方法
CA2233491A1 (en) Atm adaption layer traffic scheduling
JPH10243000A (ja) スイッチングフロー制御
WO2006036124A1 (en) Improved handling of atm data
US5680401A (en) Method and apparatus for asynchronously segmenting packets of multiple channels into ATM cells
JP2000324130A (ja) Atmセル化回路、及びatmセル化方法
JP3018975B2 (ja) Atmプロトコル処理コントローラ
JP2737726B2 (ja) バッファ制御装置
JP2970598B2 (ja) 最適なサイズの受信メモリを自動で選択するatmコントローラ
JP3094995B2 (ja) 通信制御装置及び通信制御方法
JP3177188B2 (ja) パケットの送受信方法及び装置
KR100264299B1 (ko) 보증된 최소 대역폭을 갖는 비동기 전송 방식 접속을 지원하기 위한 스케줄링 방법 및 장치
WO2000074321A9 (en) Apparatus and method for traffic shaping in a network switch
JPH07283814A (ja) フロー制御方式
JPH10190691A (ja) トラフィック成形装置及びルーチン

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060209