JP3529963B2 - パケットバッファ装置 - Google Patents

パケットバッファ装置

Info

Publication number
JP3529963B2
JP3529963B2 JP30299196A JP30299196A JP3529963B2 JP 3529963 B2 JP3529963 B2 JP 3529963B2 JP 30299196 A JP30299196 A JP 30299196A JP 30299196 A JP30299196 A JP 30299196A JP 3529963 B2 JP3529963 B2 JP 3529963B2
Authority
JP
Japan
Prior art keywords
packet
queue
copy destination
copy
buffer device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP30299196A
Other languages
English (en)
Other versions
JPH10145387A (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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP30299196A priority Critical patent/JP3529963B2/ja
Publication of JPH10145387A publication Critical patent/JPH10145387A/ja
Application granted granted Critical
Publication of JP3529963B2 publication Critical patent/JP3529963B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、パケットを一時的
に蓄積し転送するパケットバッファ装置に関し、特に各
パケットを複数の宛先に配送するためにコピーを行う機
能を有するパケットバッファ装置に関する。
【0002】
【従来の技術】マルチメディア情報を楽に扱える強力な
処理能力を備えたパーソナルコンピュータの普及と魅力
的な通信アプリケーションの登場で、インターネットが
一般的に広く知られるようになった。インターネットを
支える網要素への要求は、その伝送機能のみを見ても高
速化や品質保証サービスの付加など、ますます大きくな
ってきている。
【0003】インターネットでは、放送や、離れたオフ
ィスを結ぶ会議システムなど複数の宛先に同一のパケッ
ト(パケットとはATM通信におけるセルを含むものと
する)を伝送するマルチキャスト通信への要望が大き
く、網要素の高速化や品質保証サービスの付加を考える
上でもパケットのマルチキャスト転送を考慮しないわけ
にはいかない。今後のインターネットを支える基盤の一
つと考えられているATM網も同様にマルチキャストを
重視する必要がある。
【0004】網要素としてのルータ、パケットスイッ
チ、セルスイッチなどといった、パケットバッファ装置
のアーキテクチャを考える上で高速化や品質保証に適し
たマルチキャストは必須の機能であると言える。
【0005】ここで、図5に、従来のパケットバッファ
装置の構成例を示す。パケットは、パケットバッファ装
置101の入力ポートからパケットバッファ装置101
に入り、パケットのヘッダから判定される適切なキュー
106に一時的に蓄積され、出力ポートの速度に応じて
出力される。どのキューからパケットを出力するかを指
示する手段をスケジューラ(図示せず)と呼ぶ。
【0006】図5に示したパケットバッファ装置は、出
力パケットがバス107を介して宛先の出力ポートに対
応した物理層チップ108へ転送され、各出力ポートか
ら出力される構成である。このパケットバッファ装置と
出力ポートとの接続には、上記のバスの他にも様々な形
態が考えられる。また、入力ポートも様々な形態が考え
られ、一例としては上記複数の出力ポートと対応する複
数の入力ポートからのパケットを多重化して入力するも
のがある。
【0007】次に、従来のパケットバッファ装置におけ
るマルチキャスト機能について説明する。図6は、一つ
のマルチキャストフローに属するパケットがパケットバ
ッファ装置にてコピーされる形態を表すツリー(木)の
例を示している。ここで言うフローとは、パケットバッ
ファ装置でパケットのヘッダによって識別され、同一の
マルチキャストツリーを共有するパケットの集合であ
る。例えば、ATMの場合、フローは仮想コネクション
(VPCまたはVCC)である。なお、ATMでは仮想
米くしょんに対してリンク毎に仮想コネクション識別子
(VPIおよびVCI)が割り当てられているが、これ
を図6では簡単にVCIとして示した。
【0008】図6は、入力ポート側からVCI=4のパ
ケットが入力すると、そのパケットをコピーして出力ポ
ート3,4,7,9に同報することと、さらに、各出力
ポートにおいて必要分、パケットをコピーすることを示
している。
【0009】先に説明した図5のパケットバッファ装置
では、このようなマルチキャストツリーがフローの数だ
け同時に重ね合わされて存在し得る。なお、ユニキャス
トを宛先が一つの特別なマルチキャストと考えれば、マ
ルチキャストを想定したパケットバッファ装置の構成お
よび動作はユニキャストにも適用できる。
【0010】次に、上記のような従来のパケットバッフ
ァ装置を高速化し、品質保証サービスを付加する際に問
題となる点を述べる。従来のパケットバッファ装置で
は、パケットをコピーする方法として、入力時にパケッ
トをコピーする方法と、到着パケットのないときにコピ
ーデータの処理をする方法があった。
【0011】前者の方法を取るパケットバッファ装置で
は、パケットのコピーを行う場合、パケットが入力ポー
トからパケットバッファ装置へ到着した時点で、必要な
数だけパケットをコピーし、そのすべてのパケットを同
時にキューに入力していた。この方法では、キューのア
クセスのスループットとして、出力ポートへ出力するパ
ケットの読み出しスループットに加え、コピー数のパケ
ットの同時書き込みスループットが必要になる。この結
果、キューのアクセススループットがコピー数に依存し
て大きく変化することになるため、大きなコピー数まで
対応するには大きなアクセススループットを確保する必
要があった。このように、入力時にパケットをコピーす
るパケットバッファ装置は高速化には不向きであった。
【0012】一方、後者の方法を取るパケットバッファ
装置(例えば、特開平8−37525に開示されたも
の)パケットバッファ装置では、コピーパケットを蓄積
しておき、到着パケットのないときに蓄積しておいたコ
ピーパケットを到着パケットと同様なルートで方路決定
回路で処理することにより、マルチキャスト機能を実現
していた。しかしながら、到着パケットが連続すると
き、コピーパケットの処理ができないため、定量的な遅
延時間評価が困難なキューが生じ、品質保証を行うフロ
ーを扱うことができないという問題点があった。
【0013】
【発明が解決しようとする課題】従来の入力時にパケッ
トをコピーするパケットバッファ装置は、キューのアク
セススループットがコピー数に依存して大きく変化する
ため、大きなコピー数まで対応するには大きなアクセス
スループットを確保する必要があった。このようなパケ
ットバッファ装置は高速化には不向きであった。また、
従来の到着パケットのないときにコピーデータの処理を
するパケットバッファ装置は、到着パケットが連続する
とき、コピーパケットの処理ができないため、定量的な
遅延時間評価が困難なキューが生じ、品質保証を行うフ
ローを扱えないという問題点があった。
【0014】本発明は、上記事情を考慮してなされたも
ので、キューのアクセススループットがパケットのコピ
ー数に依存せずこれを小さく抑えても高速化が容易であ
り、またパケットの遅延時間の定量的な評価が容易でフ
ローの品質保証を可能にするパケットバッファ装置を提
供することを目的とする。
【0015】
【課題を解決するための手段】本発明は、入力されたパ
ケットを一時的に蓄積し出力するパケットバッファ装置
において、各フローについて、パケットをコピー先毎に
蓄積する可変長のコピー先毎キューを、直列に連結させ
て設ける手段と、隣接する前記コピー先毎キューの境界
を示す情報を管理する管理手段と、入力パケットを最前
段のコピー先毎キューの末尾の位置に入力する手段と、
パケット出力させるべきコピー先毎キューを選択する手
段と、選択されたコピー先毎キューの先頭に位置するパ
ケットについてパケット出力を行う手段とを備え、前記
管理手段は、最後段のコピー先毎キュー以外の或るコピ
ー先毎キューの先頭に位置するパケットについてパケッ
ト出力が行われた場合には、該或るコピー先毎キュー
と、その後段のコピー先毎キューとの境界を示す情報
を、1つのパケット分だけ前段側に移動させた状態に更
新することを特徴とする。また、好ましくは、前記管理
手段は、最後段のコピー先毎キューの先頭のパケットの
位置を示す情報を管理するとともに、該最後段のコピー
先毎キューの先頭に位置するパケットについてパケット
出力が行われた場合には、該最後段のコピー先毎キュー
の先頭のパケットの位置を示す情報を、1つのパケット
分だけ前段側に移動させた状態に更新するようにしても
よい。 また、好ましくは、前記管理手段は、前記最前
段のコピー先毎キューの末尾のパケットの位置を示す情
報を管理するとともに、前記入力パケットが前記最前段
のコピー先毎キューの末尾の位置に入力された場合に
は、該最前段のコピー先毎キューの末尾のパケットの位
置を示す情報を、1つのパケット分だけ前段側に移動さ
せた状態に更新するようにしてもよい。
【0016】
【0017】本発明によれば、あるコピー先毎パケット
キューから取り出したパケットを出力するとともに、こ
れに連結された次のコピー先毎パケットキューに転送す
ることで、パケットのコピーを逐次的に行い、コピー数
を制限なく増やすことができる。同一フローのコピー先
毎キューが連結されていることにより、パケットのコピ
ー先毎キュー間の転送に関する処理が、キュー間の境界
の位置を示すポインタの更新だけで良く、容易に高速な
パケットバッファ装置を実現できる。また、キューは出
力ポートへの出力を待つ部分にのみ存在するため遅延時
間品質の保証が容易である。
【0018】また、本発明は、請求項1に記載のパケッ
トバッファ装置において、既に設けられている所定のフ
ローの所定のコピー先に対応する前記コピー先毎キュー
を削除する場合、削除すべきコピー先毎キューの前段に
連結されているコピー先毎キューからパケット出力がな
されたとき、削除すべきコピー先毎キューのキュー長情
報を増加させず、削除すべきコピー先毎キューの後段に
連結されているコピー先毎キューのキュー長情報を増加
させることを特徴とする。
【0019】好ましくは、削除すべきコピー先毎キュー
からパケット出力がなされたとき、削除すべきコピー先
毎キューの後段に連結されているコピー先毎キューのキ
ュー長情報を増加させるとともに、該パケット出力を無
効とするようにしても良い。
【0020】本発明によれば、削除したいコピー先毎キ
ューのキュー長を確実にゼロにできる一方で、その下流
のコピー先毎キューのキュー長情報の操作をすることに
より、パケットバッファ装置の各部との整合性を崩さず
に連結したパケットキューの途中からコピー先毎キュー
を削除することができる。
【0021】なお、以上の各装置に係る発明は、方法に
係る説明としても成立する。また、上記の発明は、相当
する手順あるいは手段をコンピュータに実行させるため
のプログラムを記録した機械読取り可能な媒体としても
成立する。
【0022】
【発明の実施の形態】以下、図面を参照しながら発明の
実施の形態を説明する。図1は、本発明の一実施形態に
係るパケットバッファ装置の構成を示す機能ブロック図
である。
【0023】一般的にパケットバッファ装置では、フロ
ー毎に独立したキューを設けることで、フロー間の相互
作用を抑え、出力ポートの帯域を各フローに公平に割り
当てることが可能となる。本実施形態のパケットバッフ
ァ装置も前提としてフロー毎に独立したキューを設け
る。
【0024】さらに本実施形態では、マルチキャストフ
ローの場合には、各フローの各コピー先毎にキュー6を
設けるとともに、各フローごとに、コピー先毎キューを
連結させて連結パケットキュー4を構成する。
【0025】各フローに対応するキューに関する情報、
例えば各コピー先毎キューの先頭位置のメモリアドレス
やキュー長、キュー間のリンク情報、あるいは連結パケ
ットキュー全体のキュー長など情報は、キュー制御部
(図示しない)によって管理される。また、各キューは
必要に応じキュー制御部によって生成あるいは削除等さ
れる。例えば、コネクション設定時、パケット入力時、
そのフローのコピー先の変更時等に、キューの生成等が
行われる。
【0026】パケット振り分け部2は、入力ポート側か
らの入力パケットを、そのヘッダ情報に基づいて求まる
フロー識別子に対応するフロー毎連結パケットキュー4
の最も上流に接続されている(初段の)のコピー先毎キ
ュー6に入力する。
【0027】スケジューラ(図示せず)は、所定のスケ
ジューリング規則に従って、次々とパケット出力させる
べきコピー先毎キュー6を選択し指示していく。スケジ
ューリング規則には、全てのコピー先毎キュー6につい
て均等な比率でパケット出力させるものや、そのフロー
識別子ごとに定められた重み付けをされた比率でパケッ
ト出力させるもの、各キューの内部状態を考慮するもの
など、種々のものが適用可能である。
【0028】パケット出力部(図示せず)は、スケジュ
ーラの指示に従い、指定されたコピー先毎キュー6内の
先頭のパケットを、所定の出力ポート側へ出力させる。
さて、上記のような構成において、パケットがパケット
バッファ装置に到着すると、パケット振り分け部2は、
入力パケットのヘッダ情報に基づいてフロー識別子を求
め、そのフロー識別子からフロー毎連結パケットキュー
4を選択し、入力パケットをそのフロー毎連結パケット
キュー4における最も上流のコピー先毎キュー6に入力
する。
【0029】一方、コピー先毎キュー6に蓄積されてい
るパケットは、スケジューラの指示に基づいて、出力ポ
ート側へ出力されるとともに、連結された下流の(後段
の)コピー先毎キュー6が存在する場合にはそのキュー
に転送される。ただし、詳しくは後述するように、本実
施形態における転送は、現実のパケット転送を行う代わ
りに、コピー先毎キュー6の境界を示すポインタの値を
更新するようにしている。
【0030】パケットバッファ装置全体のキューのアク
セスは、入力ポート側から入力するパケットを書き込む
スループットと、出力ポート側へ出力するパケットを読
み出すスループットがあれば良い。後述するように、コ
ピー先毎キューの境界を管理するポインタの操作を行え
ば、コピー先毎キュー間のパケットの転送に関してパケ
ット自身のキューへの書き込みアクセスは必要ない。
【0031】キューのアクセススループットはこのよう
に上限が定まっており、実装が容易であるのに対し、パ
ケットの最大コピー数はフロー毎連結パケットキューに
おけるコピー先毎キューの連結数を増やすことで制限な
く増やすことができるという利点がある。
【0032】次に、フロー毎連結パケットキュー4のデ
ータ構造の一例について説明する。以下では、図2に示
したマルチキャストツリーの場合を例にとって具体的に
説明する。
【0033】図2のマルチキャストフローは、入力ポー
トからVCI=4のパケットが入力した場合に、出力ポ
ート4でのVCI=2のパケットと、出力ポート7での
VCI=1とVCI=6のパケットの、合計3パケット
にコピーして出力することを示すものである。
【0034】ここでは説明のために、それぞれのコピー
先毎キュー6をパケットキュー#1,#2,#3と名付
ける。また、コピー先毎キュー6の連結は、パケットキ
ュー#1からパケットを出力したときに、このパケット
をパケットキュー#2に転送し、パケットキュー#2か
らパケットを出力したときに、このパケットをパケット
キュー#3に転送するように行うものとする。なお、キ
ューの連結順序はマルチキャストツリーの構造などに関
係なく決定しても構わない。
【0035】図3は、一例として図2のマルチキャスト
フローに属するパケットをどのように管理するかを示し
たものである。蓄積パケット14は、ポインタチェーン
(リンクドリスト)によりコピー先毎にパケットキュー
#1,#2,#3を構成する。さらに、これらのコピー
先毎パケットキュー#1,#2,#3は連結されてい
る。なお、この例では、キューの実現方法には、ポイン
タチェーンを用いているが、リンクバッファ方式など他
の方法を用いても良い。
【0036】キューに関する情報を管理するためのVC
テーブル20は、lidと呼ぶアドレスで参照する複数
のVCテーブル領域21,22に分割される。これらの
領域は、コピー先毎(Leaf)とフロー全体(Tre
e)に対して設定される。また、nlidと呼ぶポイン
タは、これらVCテーブル領域の連結関係を表す。すな
わち、これら領域は、ポインタnlidにより接続され
る。
【0037】コピー先毎のVCテーブル領域21は、コ
ピー先毎キュー6の先頭を示すポインタ(H)、長さを
示す変数(L)、下流のVCテーブル領域のlidアド
レスを示すポインタ(nlid)、および出力ポート番
号や出力VCI番号(ATMの場合)などの各コピー先
に特有なデータを管理する。なお、最も下流のVCテー
ブル領域のポインタnlidは、フロー全体のVCテー
ブル領域22のlidアドレスを示す。
【0038】一方、フロー全体のVCテーブル領域22
は、連結パケットキュー4の末尾を示すポインタ
(T)、連結パケットキュー4全体の長さを示す変数
(L)、最も上流のコピー先毎のVCテーブル領域(こ
の例ではパケットキュー#1に対応するもの)のlid
アドレスを示すポインタ(nlid)など、フロー全体
に関わるデータを管理する。
【0039】各コピー先毎キュー6の境界は、ポインタ
Hにより示される。なお、フロー全体のVCテーブル領
域22とコピー先毎のVCテーブル領域21は、互いに
同じアドレス空間を共用しても良いし、独立したアドレ
ス空間に展開しても良い。
【0040】また、キューの長さを示す変数Lは、例え
ば蓄積パケット数やセル数であっても良いし、蓄積パケ
ットのパケット長の合計であっても良い。次に、パケッ
トがパケットバッファ装置に到着したときの動作につい
て説明する。
【0041】図2のマルチキャストフローに属するある
パケットがパケットバッファ装置に到着すると、まずパ
ケット振り分け部2は、そのヘッダ情報からそのフロー
全体に対応したVCテーブル領域22のlidを、例え
ばハッシュ法やテーブルルックアップなどにより求め
る。ヘッダ情報は、例えばVCIであり、図2の例で
は、VCI=4という情報からlid=91が求められ
たとする。ここからlid=91のVCテーブル領域2
2のポインタTを参照し、パケットを連結パケットキュ
ー4の末尾に追加する。これはパケットキュー#1の末
尾に追加することでもある。したがって、フロー全体に
対応するVCテーブル領域(lid=91)のポインタ
Tと変数L、およびパケットキュー#1に対応するVC
テーブル領域(lid=73)の変数Lをそれぞれ更新
する。
【0042】次に、パケットが一つのコピー先毎キュー
から出力され、別のコピー先毎キューに転送されるとき
の動作について説明する。例えば図3の状態においてス
ケジューラがパケットキュー#1からパケット(出力ポ
ート=7、VCI=6)を出力するように指示した場合
を考える。この場合、まず、lid=73のポインタH
で示されているパケットを出力する。そして、このパケ
ットをパケットキュー#1からパケットキュー#2へ転
送する。転送にあたっては、連結パケットキュー6のポ
インタチェーンを書き換える必要がなく、単にlid=
73のポインタHを(1)の状態から(2)の状態へ一
つ進め、かつlid=73とlid=37のキュー長L
をそれぞれ更新することにより実現できる。
【0043】つまり、本実施形態によれば、同一フロー
のコピー先毎キュー4を連結したため、キュー間の転送
に関する処理が境界の位置を示すポインタHの更新だけ
で良い。したがって、高速なパケットバッファ装置にお
いても、マルチキャスト機能の実現が簡単であるという
利点がある。
【0044】次に、連結パケットキュー4において最も
下流に連結されるコピー先毎キュー(この例ではパケッ
トキュー#3)からパケットを出力するときの動作を説
明する。
【0045】パケットキュー#3からパケットを出力し
た場合、パケットのキュー間転送は行わないため、パケ
ットの出力後、連結パケットキューのポインタチェーン
からパケットを消去する(またはそのパケットの蓄積領
域を解放する)。lid=22のポインタHと変数L、
およびフロー全体のVCテーブル領域の変数Lを更新す
る。
【0046】さて、マルチキャストサービスは一般に通
信サービスの提供中にそのコピー先を付け加えたり削除
したりする。次に、この動作について説明する。本実施
形態では、コピー先の付加はVCテーブル領域のポイン
タチェーンの末尾に、新たに設定したいコピー先に対応
する新たなVCテーブル領域を一つ付け加えることによ
り容易に実現できる。
【0047】例えば、図3の例において新たなコピー先
に対応するVCテーブル領域を、lid=73とlid
=91の間に挿入し、各ポインタの値などを更新する。
コピー先の削除については、削除したいVCテーブル領
域を、VCテーブル領域のポインタチェーンの途中から
はずすことが必要である。削除したいコピー先毎キュー
のキュー長がゼロでない状態で直ちにVCテーブル領域
をポインタチェーンから削除してしまっては、パケット
キューの状態、他のVCテーブル領域やスケジューラの
状態との整合をとることが困難になる。そこで、コピー
先を削除するためには、以下に示すように通常動作と同
様の処理をしてパケットバッファ装置内部の整合性を保
ちつつ、除々に削除したいコピー先毎キューのキュー長
をゼロにすれば良い。
【0048】図4は、図3からパケットキュー#2、つ
まりlid=37のVCテーブル領域が管理するコピー
先の削除動作を説明する図である。コピー先の削除を行
うには、その上流の(前段の)VCテーブル領域(この
例ではlid=73)のnlidポインタを削除したい
VCテーブル領域(lid=37)からその下流のVC
テーブル領域(この例ではlid=22)へ変更する。
この様子を図中で(1),(2)として示した。この変
更を行うことで、キュー長Lの変化のみに着目すると、
パケットキュー#1からパケットを出力したときは、変
更前のようにパケットキュー#2に転送されるのではな
く、さらに一つ下流のパケットキュー#3に転送される
ような計算になる。つまり、パケットキュー#2のLは
増加せず、パケット出力によって減少するだけになる。
したがって、パケットキュー#2のLはしかる後にゼロ
になり、VCテーブル領域のポインタチェーンからはず
すことが可能な状態になる。
【0049】ところで、パケットキュー#3のLは、パ
ケットキュー#1とパケットキュー#2のどちらがパケ
ットを出力しても増加する。これはパケットキュー#2
のLが増加しないことに対してつじつまをあわせるため
と考えて良い。これでコピー先削除の動作中の各部の整
合をとることができる。
【0050】ただし、パケットキュー#2がまだ出力し
ていないパケットをパケットキュー#3が先に出力して
しまうことがあり得る。パケットキュー#3がパケット
を出力すると、そのパケットの蓄積領域は解放され別の
入力パケットが上書きされる可能性がある。この後でパ
ケットキュー#2がパケットを出力すると全く関係のな
いパケットがパケットキュー#2から出力されることに
なる。
【0051】そこで、これを防止するために、削除途中
のパケットキュー#2からの出力パケットを無効にする
処理で対処すれば良い。次に、輻輳制御について説明す
る。
【0052】パケットバッファ装置にとって、過大なパ
ケット入力によって網リソースが不足する輻輳は本質的
に発生し得るものであり、その制御は必須の機能である
といえる。
【0053】パケットバッファ装置の輻輳状態を検出す
る方法の一つは、キュー長の増加を監視することであ
る。本実施形態のマルチキャストフローを扱う連結パケ
ットキューのアーキテクチャの場合には、フロー全体を
管理するVCテーブル領域(図3ではlid=91のV
Cテーブル領域)のキュー長Lがフロー全体の蓄積パケ
ット量を示しており、この値をもとにフロー全体の輻輳
制御を行うことができる。例えば、このLがあるしきい
値より大きければ入力パケットを蓄積せずに廃棄する。
また、例えば、このLが別のしきい値より大きければ端
末に対して輻輳であることを通知する。一つのフロー全
体のキュー長にもとづいてパケットの廃棄を決定すると
いうことは全てのコピー先に同じ帯域でパケットを配送
することを意味する。
【0054】次に、品質保証サービスについて説明す
る。パケットバッファ装置において、品質保証サービス
を提供する場合、ユニキャストフローと同様に、マルチ
キャストフローの遅延時間品質も定量的に計算できる必
要がある。
【0055】本実施形態のパケットバッファ装置では、
出力ポートへパケットを出力する部分のみにコピー先毎
キューができるため、各コピー先毎キューの遅延時間は
到着トラヒック特性とスケジューラの動作特性により定
量的に求めることができる。さらに、一つのパケットバ
ッファ装置内で各コピー先毎キュー間の転送を重ねるマ
ルチキャストフローの遅延時間品質は、転送の繰り返し
により経由した個々のコピー先毎キューの遅延時間品質
の合計から計算できる。この合計計算の方法は複数のパ
ケットバッファ装置を経由するフローのend−to−
endの品質の計算方法と同じにすれば良い。したがっ
て、ユニキャストのend−to−endの通信品質を
求める場合と同様にして、マルチキャストフローの通信
品質を求めることができる。
【0056】なお、以上では、具体例としてATM通信
におけるセルを処理するパケットバッファ装置について
説明したが、本発明は、インターネット・プロトコルに
よるIPパケットを処理するパケットバッファ装置な
ど、種々のものに適用可能である。
【0057】また、以上の各機能は、ソフトウェアとし
ても実現可能である。また、上記した各手順あるいは手
段をコンピュータに実行させるためのプログラムを記録
した機械読取り可能な媒体として実施することもでき
る。本発明は、上述した実施の形態に限定されるもので
はなく、その技術的範囲において種々変形して実施する
ことができる。
【0058】
【発明の効果】本発明によれば、各フローについて、コ
ピー先毎に設けた可変長キューを連結し、隣接するキュ
ーの境界を管理するようにしたので、パケットのコピー
先数にかかわらず、処理の高速化を図ることができる。
また、本発明によれば、パケットの遅延時間の定量的な
評価が可能になるため、フローの品質保証を行うことが
できる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るパケットバッファ装
置の構成を示す図
【図2】マルチキャストツリーの一例を示す図
【図3】フロー毎連結パケットキューの構成を示す図
【図4】コピー先削除の動作を説明するための図
【図5】従来のパケットバッファ装置の構成を示す図
【図6】マルチキャストツリーの一例を示す図
【符号の説明】
2…パケット振り分け部 4…フロー毎連結パケットキュー 6…コピー先毎キュー 20…VCテーブル
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平8−51443(JP,A) 特開 平9−162879(JP,A) 特表 平11−504793(JP,A) (58)調査した分野(Int.Cl.7,DB名) H04L 12/56

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】入力されたパケットを一時的に蓄積し出力
    するパケットバッファ装置において、 各フローについて、パケットをコピー先毎に蓄積する可
    変長のコピー先毎キューを、直列に連結させて設ける手
    段と、 隣接する前記コピー先毎キューの境界を示す情報を管理
    する管理手段と、 入力パケットを最前段のコピー先毎キューの末尾の位置
    に入力する手段と、 パケット出力させるべきコピー先毎キューを選択する手
    段と、 選択されたコピー先毎キューの先頭に位置するパケット
    についてパケット出力を行う手段とを備え、 前記管理手段は、最後段のコピー先毎キュー以外の或る
    コピー先毎キューの先頭に位置するパケットについてパ
    ケット出力が行われた場合には、該或るコピー先毎キュ
    ーと、その後段のコピー先毎キューとの境界を示す情報
    を、1つのパケット分だけ前段側に移動させた状態に更
    新する ことを特徴とするパケットバッファ装置。
  2. 【請求項2】前記管理手段は、最後段のコピー先毎キュ
    ーの先頭のパケットの位置を示す情報を管理するととも
    に、該最後段のコピー先毎キューの先頭に位置するパケ
    ットについてパケット出力が行われた場合には、該最後
    段のコピー先毎キューの先頭のパケットの位置を示す情
    報を、1つのパケット分だけ前段側に移動させた状態に
    更新することを特徴とする請求項1に記載のパケットバ
    ッファ装置。
  3. 【請求項3】前記管理手段は、前記最前段のコピー先毎
    キューの末尾のパケットの位置を示す情報を管理すると
    ともに、前記入力パケットが前記最前段のコピー先毎キ
    ューの末尾の位置に入力された場合には、該最前段のコ
    ピー先毎キューの末尾のパケットの位置を示す情報を、
    1つのパケット分だけ前段側に移動させた状態に更新す
    ることを特徴とする請求項1に記載のパケットバッファ
    装置。
  4. 【請求項4】既に設けられている所定のフローの所定の
    コピー先に対応する前記コピー先毎キューを削除する場
    合、削除すべきコピー先毎キューの前段に連結されてい
    るコピー先毎キューからパケット出力がなされたとき、
    削除すべきコピー先毎キューのキュー長情報を増加させ
    ず、削除すべきコピー先毎キューの後段に連結されてい
    るコピー先毎キューのキュー長情報を増加させることを
    特徴とする請求項1に記載のパケットバッファ装置。
JP30299196A 1996-11-14 1996-11-14 パケットバッファ装置 Expired - Fee Related JP3529963B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30299196A JP3529963B2 (ja) 1996-11-14 1996-11-14 パケットバッファ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30299196A JP3529963B2 (ja) 1996-11-14 1996-11-14 パケットバッファ装置

Publications (2)

Publication Number Publication Date
JPH10145387A JPH10145387A (ja) 1998-05-29
JP3529963B2 true JP3529963B2 (ja) 2004-05-24

Family

ID=17915625

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30299196A Expired - Fee Related JP3529963B2 (ja) 1996-11-14 1996-11-14 パケットバッファ装置

Country Status (1)

Country Link
JP (1) JP3529963B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001186142A (ja) 1999-12-27 2001-07-06 Toshiba Corp パケットバッファ装置、及び、パケットスイッチ装置
JP2003069641A (ja) 2001-08-29 2003-03-07 Fujitsu Ltd パケット転送装置

Also Published As

Publication number Publication date
JPH10145387A (ja) 1998-05-29

Similar Documents

Publication Publication Date Title
US6343066B2 (en) Non-consecutive data readout scheduler
US7333484B2 (en) Services processor having a packet editing unit
JP4334760B2 (ja) ネットワーキングシステム
US7400638B2 (en) Apparatus and methods for managing packets in a broadband data stream
US5487061A (en) System and method for providing multiple loss and service priorities
JP3743194B2 (ja) パケット中継装置
US7239635B2 (en) Method and apparatus for implementing alterations on multiple concurrent frames
US6147999A (en) ATM switch capable of routing IP packet
US6392996B1 (en) Method and apparatus for frame peeking
US7649882B2 (en) Multicast scheduling and replication in switches
US8370545B2 (en) Programmable queuing instruction set
US6219352B1 (en) Queue management with support for multicasts in an asynchronous transfer mode (ATM) switch
EP1158727A2 (en) Packet processor with real-time edit program construction engine
US20090028152A1 (en) Node apparatus
WO1996000474A1 (en) Packet processor having service priority and loss priority features
JP2001217873A (ja) 複数のデータストリームのパケット送信優先順位を決定する方法及び装置、データストリーム間でのデータパケットについての送信優先順位を決定する方法
JP2003229907A (ja) ネットワーク・プロセッサ内のデータ・ブロックの再組立てのための方法および装置
EP0909063A2 (en) Mechanism for dispatching data units via a telecommunications network
JP3765931B2 (ja) バッファ制御方法及びバッファ制御装置
JP2003209575A (ja) データ・ネットワークにおいてマルチキャスト・リストを維持するための方法および装置
JP4316349B2 (ja) パケット転送経路制御装置および制御プログラム
JP3529963B2 (ja) パケットバッファ装置
US6621825B1 (en) Method and apparatus for per connection queuing of multicast transmissions
JP2001186142A (ja) パケットバッファ装置、及び、パケットスイッチ装置
US6320858B1 (en) Asynchronous transfer mode switch with logical multicasting

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040224

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040226

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080305

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090305

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100305

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees