JP3865748B2 - ネットワークスイッチ装置およびネットワークスイッチ方法 - Google Patents
ネットワークスイッチ装置およびネットワークスイッチ方法 Download PDFInfo
- Publication number
- JP3865748B2 JP3865748B2 JP2004567119A JP2004567119A JP3865748B2 JP 3865748 B2 JP3865748 B2 JP 3865748B2 JP 2004567119 A JP2004567119 A JP 2004567119A JP 2004567119 A JP2004567119 A JP 2004567119A JP 3865748 B2 JP3865748 B2 JP 3865748B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- pointer
- buffer
- transmission queue
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 68
- 230000005540 biological transmission Effects 0.000 claims description 366
- 239000000872 buffer Substances 0.000 claims description 241
- 238000012546 transfer Methods 0.000 claims description 80
- 230000015654 memory Effects 0.000 claims description 53
- 230000008569 process Effects 0.000 description 51
- 238000012545 processing Methods 0.000 description 34
- 238000007726 management method Methods 0.000 description 23
- 239000002957 persistent organic pollutant Substances 0.000 description 19
- 238000010586 diagram Methods 0.000 description 14
- 230000000903 blocking effect Effects 0.000 description 10
- 230000004044 response Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9042—Separate storage for different parts of the packet, e.g. header and payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/103—Packet switching elements characterised by the switching fabric construction using a shared central buffer; using a shared memory
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
- H04L49/9021—Plurality of buffers per packet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/50—Overload detection or protection within a single switching element
- H04L49/505—Corrective measures
- H04L49/508—Head of Line Blocking Avoidance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/552—Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
Description
図15に示すネットワーク装置は、複数のネットワーク201〜204の間でパケットの転送を行う。このネットワーク装置は、各ネットワーク201〜204に対応する受信インタフェース211〜214および受信バッファ221〜224と、各ネットワーク201〜204に対応する送信インタフェース231〜234および送信バッファ241〜244と、データ転送回路250によって構成される。なお、図15では、理解を容易にするために、受信インタフェース211〜214と送信インタフェース231〜234とを別々の要素として示している。
図16では、図15と同様に、複数のネットワーク301〜304の間でパケットの転送を行うネットワーク装置を示している。このネットワーク装置は、各ネットワーク301〜304に対応する受信インタフェース311〜314と、各ネットワーク301〜304に対応する送信インタフェース321〜324と、受信パケットおよび送信パケットにそれぞれ対応するデータ転送回路330および340と、共有バッファ350とによって構成される。なお、図16では、理解を容易にするために、受信側に対応する受信インタフェース311〜314およびデータ転送回路330と、送信側に対応する送信インタフェース321〜324およびデータ転送回路340とを別々の要素として示している。
図1は、本発明の原理を説明するための原理図である。
本発明のネットワークスイッチ装置は、可変長のパケットを用いて通信が行われる複数のネットワークに接続して、これらのネットワーク間でパケットを転送する装置である。このネットワークスイッチ装置は、図1に示すように、バッファ1と、パケット分割回路2と、バッファ制御回路3とを有している。
パケット分割回路2は、受信したパケットを1つ以上の固定長のデータブロックに分割してバッファ1に供給する。従って、1つのデータブロックの容量は、1パケット内に許容される最大のデータ量よりも小さく設定される。
所定のネットワークからパケットを受信すると、このパケットはパケット分割回路2により固定長のデータブロックに分割され、バッファ制御回路3の制御によってバッファ1に格納される。このとき、バッファ制御回路3は、例えば、データブロックの書き込み動作ごとに、ポインタスタック5からポインタをPOPして、このポインタの示すアドレスに対してデータブロックを書き込む。また、1パケットの中で分割されたデータブロック間の連結を、ポインタを用いた連結リスト構造として管理する。
図2は、本発明の第1の実施の形態に係るネットワークスイッチ装置の接続例を示す図である。
図3に示すように、ネットワークスイッチ装置100は、送受信インタフェース111〜114、データ転送回路120、共有バッファ130、書き込み/読み出し制御回路140、ポインタスタック150、ポインタ制御回路160、およびポインタカウンタ群170を具備する。また、書き込み/読み出し制御回路140、ポインタスタック150およびポインタカウンタ群170は、ポインタが伝送されるポインタ用バス180に接続されている。
各送受信インタフェース111〜114は、ネットワーク21〜24から可変長のパケットを受信し、このパケットを順次固定長のデータブロックに分割するとともに、データ転送回路120に対して受信要求を通知する。そして、この要求に対する応答を受信すると、分割したデータブロックをデータ転送回路120に出力する。このとき、出力したデータブロックが、パケット中の先頭のものであるか、あるいは最終のものであるかを示すブロック位置情報を通知する。また、パケットの宛先を示す情報を抽出して、この情報もデータ転送回路120に通知する。さらに、受信エラー等が発生したときは、該当するパケットのデータを廃棄するとともに、廃棄信号をポインタ制御回路160に対して出力する。
図4に示すように、共有バッファ130内には、各受信ポートに対応する受信パケット専用バッファ領域131a〜131dと、各送信ポートに対応する送信キュー専用バッファ領域132a〜132dとが形成される。なお、この図に示す領域はあくまでも論理的なバッファ領域を示しており、実際の物理的なバッファ領域は必ずしもこの通りにはならない。
図5は、ポインタ制御回路160およびポインタカウンタ群170の内部構成例を示すブロック図である。なお、図5では、各部の接続関係の理解を容易にするために、ポインタ制御回路160およびポインタカウンタ群170の周囲の機能ブロックについても、必要に応じて示している。
[ステップS601]データ転送回路120からは、送受信インタフェース111〜114からのデータブロックを共有バッファ130に格納する際に、各データブロックに関するインタフェース情報がPOP制御部161に対して出力される。POP制御部161は、データ転送回路120からのインタフェース情報に基づいて、データブロックの共有バッファ130への格納処理が開始したか否かを判断する。そして、開始したと判断した場合にステップS602に進む。
図7は、パケット送信時におけるネットワークスイッチ装置100における処理の流れを示すフローチャートである。このフローチャートでは、1つの送信ポートに対するパケットの転送が行われる場合の処理を示している。以下、図7に示す処理をステップ番号に沿って説明する。
[ステップS702]データ転送回路120から、読み出しを行う送信ポートが書き込み/読み出し制御回路140に通知され、書き込み/読み出し制御回路140が、読み出しアドレスを指定する。これにより、対応する送信キューからデータブロックが読み出され、データ転送回路120によって宛先に対応する送受信インタフェースに対して転送される。
[ステップS707]ポインタの格納先の送信中ポインタカウンタをクリアする。これにより、1パケット分のデータブロックの転送処理が終了される。
〔第1の連結リスト管理例〕
連結リスト構造を用いた第1の管理例では、共有バッファ130内にデータブロックごとに対応する付属セル領域が設けられる。そして、書き込み/読み出し制御回路140は、1パケット内のデータブロック間の連結、および各送信キュー内におけるパケット間の連結を管理するための付属情報を生成して、付属セル領域に格納する。また、書き込み/読み出し制御回路140は、データブロック間の連結を受信ポートごとおよび送信ポートごとに管理するための各種レジスタ群を具備して、このレジスタ群を順次書き換えることにより、共有バッファ130内におけるデータブロックの書き込みおよび読み出しを制御する。
図9に示すように、書き込み/読み出し制御回路140は、各受信ポートに対応した受信先頭アドレスレジスタ141a〜141d、および受信最終アドレスレジスタ142a〜142dと、各送信ポートに対応した送信済パケットアドレスレジスタ143a〜143d、送信ブロックアドレスレジスタ144a〜144d、送信最終アドレスレジスタ145a〜145d、および次送信パケットアドレスレジスタ146a〜146dを具備する。
(S1003−3)格納したデータブロックが、パケット内の最終データブロックである場合、受信最終アドレスレジスタ142aに格納されたポインタを参照する。そして、このポインタが指し示すアドレスに書き込まれたデータブロックの付属セル領域133aに、ステップS1002で取得したポインタを格納し、直前のデータブロックとを連結させる。また、格納したデータブロックの付属セル領域133aに、後続のデータブロックが存在しないことを示す情報を書き込む。
[ステップS1005]インタフェース情報に基づいて、宛先の送信ポートを選択する。なお、ここでは、宛先としてネットワーク22が選択されたものとして説明する。また、このとき、受信中ポインタカウンタ171aのカウント数が、送信キューポインタカウンタ173bのカウント値に加算される。
〔第2の連結リスト管理例〕
連結リスト構造を用いた第2の管理例では、書き込み/読み出し制御回路140に、受信ポートごと、および送信ポートごとにメモリ領域を設け、これらのメモリ領域に、データブロックの書き込みアドレスを指し示すポインタを順次格納することにより、データブロック間の連結を管理する。
図12に示すように、書き込み/読み出し制御回路140は、各受信ポートに対応した受信用アドレスメモリ147a〜147dと、各送信ポートに対応した送信用アドレスメモリ148a〜148dを具備する。
[ステップS1304]転送処理中のデータブロックがパケット内の最終データブロックであるか否かを判断し、最終データブロックでない場合は、ステップS1301に戻る。そして、以上のステップS1301〜S1304の処理が繰り返されることにより、1パケット分のデータブロックが、共有バッファ130内に格納される。これとともに、格納したデータブロックを指し示すポインタが、受信用アドレスメモリ147aに順次格納され、パケット内のデータブロック間が連結される。
[ステップS1309]他の宛先が指定されているか否かを判定し、指定されている場合はステップS1305に戻って、新たな送信ポートを選択する。
2 パケット分割回路
3 バッファ制御回路
4−1〜n 送信キュー
5 ポインタスタック
21〜24 ネットワーク
21a、22a、23a、24a 端末装置
100 ネットワークスイッチ装置
111〜114 送受信インタフェース
120 データ転送回路
130 共有バッファ
140 書き込み/読み出し制御回路
150 ポインタスタック
160 ポインタ制御回路
170 ポインタカウンタ群
180 ポインタ用バス
Claims (13)
- 可変長のパケットを複数のネットワーク間で転送するネットワークスイッチ装置において、
受信したパケットのデータおよび送信するパケットのデータの各格納領域として共用されるバッファと、
受信した前記パケットを1つ以上の固定長のデータブロックに分割して前記バッファに供給するパケット分割回路と、
前記パケットの転送先の前記ネットワークごとに一定数の前記データブロックを登録可能な送信キューを形成して、分割された前記データブロックを前記バッファに書き込んだ後、その宛先に対応する前記送信キューに前記パケット単位で順次登録し、かつ、前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを、前記各データブロックの前記バッファにおける書き込み位置に基づく連結リスト構造として管理して、前記各送信キューに登録された前記データブロックを前記連結リスト構造に従って順次読み出すバッファ制御回路と、
を有し、
前記バッファ制御回路は、1つの前記パケット当たりで許容される最大数の前記データブロックが登録可能な受信キューを、受信元の前記ネットワークごとに形成し、前記各受信キューに対する1つの前記パケット分の前記データブロックの登録が完了すると、対応する前記受信キューを宛先に対応する前記送信キューに連結し、その連結の際に、宛先に対応する前記送信キューへの前記データブロックの登録数が登録可能数を超えた場合は、この時点で登録処理中の前記データブロックを含む前記パケットを廃棄することを特徴とするネットワークスイッチ装置。 - 可変長のパケットを複数のネットワーク間で転送するネットワークスイッチ装置において、
受信したパケットのデータおよび送信するパケットのデータの各格納領域として共用されるバッファと、
受信した前記パケットを1つ以上の固定長のデータブロックに分割して前記バッファに供給するパケット分割回路と、
前記パケットの転送先の前記ネットワークごとに一定数の前記データブロックを登録可能な送信キューを形成して、分割された前記データブロックを前記バッファに書き込んだ後、その宛先に対応する前記送信キューに前記パケット単位で順次登録し、かつ、前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを、前記各データブロックの前記バッファにおける書き込み位置に基づく連結リスト構造として管理するバッファ制御回路と、
を有し、
前記バッファ制御回路は、
前記バッファにおける前記データブロックの書き込み位置を指し示すポインタを一元的に保持するポインタスタックを具備して、前記バッファへの前記データブロックの書き込み時に前記ポインタスタックから前記ポインタを取得し、取得した前記ポインタを用いて前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを管理し、
前記各パケット内の後続の前記データブロックの書き込み位置を示す前記ポインタを、前記データブロックとともに付属データとして前記バッファに書き込み、
同一の前記送信キューに複数の前記パケットが登録された場合に、後続パケットの先頭に位置する前記データブロックを指し示す前記ポインタを、先行パケットの先頭に位置する前記データブロックの前記付属データとしてさらに前記バッファに書き込むことを特徴とするネットワークスイッチ装置。 - 前記バッファ制御回路は、前記各送信キュー内に登録されたうち、次に送信が予定されている前記パケットの先頭に位置する前記データブロックを指し示す前記ポインタと、次に送信が予定されている前記データブロックを指し示す前記ポインタとを、それぞれ次送信パケットアドレスレジスタおよび送信ブロックアドレスレジスタに保持し、前記各レジスタを参照して前記バッファからの前記データブロックの読み出しアドレスを指定することを特徴とする請求項2記載のネットワークスイッチ装置。
- 前記バッファ制御回路は、前記各送信キューから前記データブロックを読み出すたびに、読み出した前記データブロックの前記付属データに基づいて前記送信ブロックアドレスレジスタを更新し、前記パケットを読み出すたびに、読み出した前記パケットの先頭に位置する前記データブロックの前記付属データに基づいて前記次送信パケットアドレスレジスタを更新することを特徴とする請求項3記載のネットワークスイッチ装置。
- 可変長のパケットを複数のネットワーク間で転送するネットワークスイッチ装置において、
受信したパケットのデータおよび送信するパケットのデータの各格納領域として共用されるバッファと、
受信した前記パケットを1つ以上の固定長のデータブロックに分割して前記バッファに供給するパケット分割回路と、
前記パケットの転送先の前記ネットワークごとに一定数の前記データブロックを登録可能な送信キューを形成して、分割された前記データブロックを前記バッファに書き込んだ後、その宛先に対応する前記送信キューに前記パケット単位で順次登録し、かつ、前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを、前記各データブロックの前記バッファにおける書き込み位置に基づく連結リスト構造として管理するバッファ制御回路と、
を有し、
前記バッファ制御回路は、前記バッファにおける前記データブロックの書き込み位置を指し示すポインタを一元的に保持するポインタスタックを具備して、前記バッファへの前記データブロックの書き込み時に前記ポインタスタックから前記ポインタを取得し、取得した前記ポインタを用いて前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを管理し、
前記バッファ制御回路は、さらに、
受信元の前記ネットワークごとに設けられて、前記パケットの受信時に前記ポインタスタックから取得した前記ポインタが順次格納されるとともに、格納されているポインタ数をカウントする受信中ポインタカウンタと、
転送先の前記ネットワークごとに設けられて、前記各送信キューに登録された前記データブロックに対応するポインタ数をカウントする送信キューポインタカウンタと、
転送先の前記ネットワークごとに設けられて、前記送信キューから送信される前記パケットに対応する前記ポインタが順次格納されるとともに、格納されているポインタ数をカウントする送信中ポインタカウンタと、
を具備して、受信した前記パケットを宛先に対応する前記送信キューに登録する際に、対応する前記受信中ポインタカウンタのカウント値を宛先に対応する前記送信キューポインタカウンタのカウント値に合算し、前記パケットを前記送信キューから送信する際に、対応する前記送信キューポインタカウンタを順次カウントダウンするとともに、対応する前記送信中ポインタカウンタを順次カウントアップすることを特徴とするネットワークスイッチ装置。 - 前記バッファ制御回路は、前記送信キューからの前記パケットの送信時に前記ポインタを前記ポインタスタックにPUSHして返却することを特徴とする請求項5記載のネットワークスイッチ装置。
- 前記バッファ制御回路は、前記送信キューからの前記パケットの送信後に、さらに他の前記ネットワークへの転送を行う場合には、送信済みの前記送信キューに対応する前記送信中ポインタカウンタのカウント値を、転送先の前記ネットワークに対応する前記送信キューポインタカウンタのカウント値に合算することを特徴とする請求項5記載のネットワークスイッチ装置。
- 前記バッファ制御回路は、受信した前記パケットを宛先に対応する前記送信キューに登録する際に、宛先に対応する前記送信キューポインタカウンタのカウント値が一定値を超えた場合には、登録処理中の前記パケットを廃棄するとともに、対応する前記受信中ポインタカウンタに格納されていた前記ポインタを前記ポインタスタックにPUSHして返却することを特徴とする請求項5記載のネットワークスイッチ装置。
- 前記バッファ制御回路は、前記各送信キューに登録した前記データブロックの書き込み位置を指し示す前記ポインタを格納するための送信用ブロック位置メモリを送信先の前記ネットワークごとに具備し、
前記送信用ブロック位置メモリを参照して前記バッファからの前記データブロックの読み出しアドレスを指定することを特徴とする請求項5記載のネットワークスイッチ装置。 - 前記バッファ制御回路は、分割した前記データブロックが前記バッファに書き込まれた後、同一パケット内の後続の前記データブロックの書き込み位置を指し示す前記ポインタが順次格納される受信用ブロック位置メモリをさらに具備し、
前記送信キューに対する前記パケットの登録時に、前記受信用ブロック位置メモリに格納されていた該当する前記ポインタを登録先の前記送信キューに対応する前記送信用ブロック位置メモリに格納することを特徴とする請求項9記載のネットワークスイッチ装置。 - 可変長のパケットを1つのバッファに一旦蓄積しながら複数のネットワーク間で転送するネットワークスイッチ方法において、
受信した前記パケットを1つ以上の固定長のデータブロックに分割して前記バッファに供給するパケット分割ステップと、
前記パケットの転送先の前記ネットワークごとに一定数の前記データブロックを登録可能な送信キューを形成して、分割された前記データブロックを前記バッファに書き込んだ後、その宛先に対応する前記送信キューに前記パケット単位で順次登録し、かつ、前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを、前記各データブロックの前記バッファにおける書き込み位置に基づく連結リスト構造として管理して、前記各送信キューに登録された前記データブロックを前記連結リスト構造に従って順次読み出すバッファ制御ステップと、
を含み、
前記バッファ制御ステップでは、1つの前記パケット当たりで許容される最大数の前記データブロックが登録可能な受信キューを、受信元の前記ネットワークごとに形成し、前記各受信キューに対する1つの前記パケット分の前記データブロックの登録が完了すると、対応する前記受信キューを宛先に対応する前記送信キューに連結し、その連結の際に、宛先に対応する前記送信キューへの前記データブロックの登録数が登録可能数を超えた場合は、この時点で登録処理中の前記データブロックを含む前記パケットを廃棄することを特徴とするネットワークスイッチ方法。 - 可変長のパケットを1つのバッファに一旦蓄積しながら複数のネットワーク間で転送するネットワークスイッチ方法において、
受信した前記パケットを1つ以上の固定長のデータブロックに分割して前記バッファに供給するパケット分割ステップと、
前記パケットの転送先の前記ネットワークごとに一定数の前記データブロックを登録可能な送信キューを形成して、分割された前記データブロックを前記バッファに書き込んだ後、その宛先に対応する前記送信キューに前記パケット単位で順次登録し、かつ、前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを、前記各データブロックの前記バッファにおける書き込み位置に基づく連結リスト構造として管理するバッファ制御ステップと、
を含み、
前記バッファ制御ステップでは、
前記バッファにおける前記データブロックの書き込み位置を指し示すポインタを一元的に保持するポインタスタックを用いて、前記バッファへの前記データブロックの書き込み時に前記ポインタスタックから前記ポインタを取得し、取得した前記ポインタを用いて前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを管理し、
前記各パケット内の後続の前記データブロックの書き込み位置を示す前記ポインタを、前記データブロックとともに付属データとして前記バッファに書き込むとともに、同一の前記送信キューに複数の前記パケットが登録された場合に、後続パケットの先頭に位置する前記データブロックを指し示す前記ポインタを、先行パケットの先頭に位置する前記データブロックの前記付属データとしてさらに前記バッファに書き込むことで、前記データブロック間の連結および前記パケット間の連結を管理する、
ことを特徴とするネットワークスイッチ方法。 - 可変長のパケットを1つのバッファに一旦蓄積しながら複数のネットワーク間で転送するネットワークスイッチ方法において、
受信した前記パケットを1つ以上の固定長のデータブロックに分割して前記バッファに供給するパケット分割ステップと、
前記パケットの転送先の前記ネットワークごとに一定数の前記データブロックを登録可能な送信キューを形成して、分割された前記データブロックを前記バッファに書き込んだ後、その宛先に対応する前記送信キューに前記パケット単位で順次登録し、かつ、前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを、前記各データブロックの前記バッファにおける書き込み位置に基づく連結リスト構造として管理するバッファ制御ステップと、
を含み、
前記バッファ制御ステップでは、
前記バッファにおける前記データブロックの書き込み位置を指し示す前記ポインタを一元的に保持するポインタスタックを用いて、前記バッファへの前記データブロックの書き込み時に前記ポインタスタックから前記ポインタを取得し、取得した前記ポインタを用いて前記各パケット内の前記データブロック間の連結と、前記各送信キュー内の前記パケット間の連結とを管理し、
受信元の前記ネットワークごとに設けられて、前記パケットの受信時に前記ポインタスタックから取得した前記ポインタが順次格納されるとともに、格納されているポインタ数をカウントする受信中ポインタカウンタと、
転送先の前記ネットワークごとに設けられて、前記各送信キューに登録された前記データブロックに対応するポインタ数をカウントする送信キューポインタカウンタと、
転送先の前記ネットワークごとに設けられて、前記送信キューから送信される前記パケットに対応する前記ポインタが順次格納されるとともに、格納されているポインタ数をカウントする送信中ポインタカウンタと、
を用いて、受信した前記パケットを宛先に対応する前記送信キューに登録する際に、対応する前記受信中ポインタカウンタのカウント値を宛先に対応する前記送信キューポインタカウンタのカウント値に合算し、前記パケットを前記送信キューから送信する際に、対応する前記送信キューポインタカウンタを順次カウントダウンするとともに、対応する前記送信中ポインタカウンタを順次カウントアップする、
ことを特徴とするネットワークスイッチ方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2003/000436 WO2004066571A1 (ja) | 2003-01-20 | 2003-01-20 | ネットワークスイッチ装置およびネットワークスイッチ方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2004066571A1 JPWO2004066571A1 (ja) | 2006-05-18 |
JP3865748B2 true JP3865748B2 (ja) | 2007-01-10 |
Family
ID=32750568
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004567119A Expired - Fee Related JP3865748B2 (ja) | 2003-01-20 | 2003-01-20 | ネットワークスイッチ装置およびネットワークスイッチ方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7733889B2 (ja) |
JP (1) | JP3865748B2 (ja) |
CN (1) | CN1689284B (ja) |
AU (1) | AU2003203352A1 (ja) |
TW (1) | TWI221370B (ja) |
WO (1) | WO2004066571A1 (ja) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7623452B2 (en) * | 2003-08-01 | 2009-11-24 | Hewlett-Packard Development Company, L.P. | User configurable functions for adjusting service differentiation meters |
JP4100340B2 (ja) * | 2003-12-22 | 2008-06-11 | ソニー株式会社 | 磁気記録再生装置 |
US20060036802A1 (en) * | 2004-08-11 | 2006-02-16 | Ixi Mobile (R&D) Ltd. | Flash file system management |
US7518996B2 (en) * | 2004-09-16 | 2009-04-14 | Jinsalas Solutions, Llc | Fast credit system |
DE102004052692B4 (de) * | 2004-10-29 | 2008-04-24 | Siemens Ag | Verfahren zur Übermittlung von in Form von Datenpaketen zur Verfügung stehenden Daten |
US7693166B2 (en) * | 2005-02-17 | 2010-04-06 | Nec Corporation | Method and apparatus for transmitting data to network and method and apparatus for receiving data from network |
CN100393070C (zh) * | 2005-06-14 | 2008-06-04 | 杭州华三通信技术有限公司 | 堆叠设备中报文重定向的方法 |
US7487271B2 (en) * | 2005-09-22 | 2009-02-03 | Motorola, Inc. | Method and apparatus using buffer pools and arrays of buffer pointers for sharing memory in a multiprocessor system |
CN102347901A (zh) | 2006-03-31 | 2012-02-08 | 高通股份有限公司 | 用于高速媒体接入控制的存储器管理 |
US8736627B2 (en) * | 2006-12-19 | 2014-05-27 | Via Technologies, Inc. | Systems and methods for providing a shared buffer in a multiple FIFO environment |
CN101094183B (zh) * | 2007-07-25 | 2011-12-07 | 杭州华三通信技术有限公司 | 一种缓存管理方法及装置 |
US8059670B2 (en) * | 2007-08-01 | 2011-11-15 | Texas Instruments Incorporated | Hardware queue management with distributed linking information |
US8223779B2 (en) * | 2008-02-07 | 2012-07-17 | Ciena Corporation | Systems and methods for parallel multi-core control plane processing |
US8271683B2 (en) * | 2008-03-21 | 2012-09-18 | International Business Machines Corporation | Content push service |
KR20110021184A (ko) * | 2009-08-25 | 2011-03-04 | 삼성전자주식회사 | 컴퓨터시스템, 디스크저장장치 및 그 제어방법 |
TWI416336B (zh) * | 2009-11-10 | 2013-11-21 | Realtek Semiconductor Corp | 可共享緩衝器的網路介面卡與緩衝器共享方法 |
JP5342428B2 (ja) * | 2009-12-18 | 2013-11-13 | 富士通テレコムネットワークス株式会社 | 通信制御装置 |
JP2011254149A (ja) * | 2010-05-31 | 2011-12-15 | Nippon Telegr & Teleph Corp <Ntt> | 情報処理装置、情報処理方法およびプログラム |
JP5732806B2 (ja) * | 2010-10-15 | 2015-06-10 | 富士通株式会社 | データ転送装置及びデータ転送方法 |
JP5585725B2 (ja) * | 2011-04-20 | 2014-09-10 | 富士通株式会社 | 中継装置、及び復旧方法 |
JP2012257041A (ja) * | 2011-06-08 | 2012-12-27 | Sony Corp | 通信装置、通信システム、通信方法及びプログラム |
CN104040977B (zh) * | 2012-12-28 | 2016-10-05 | 华为技术有限公司 | 缓存报文的方法和装置 |
JP5908416B2 (ja) * | 2013-01-23 | 2016-04-26 | 株式会社東芝 | インターフェース制御装置、データ記憶装置及びインターフェース制御方法 |
CN103581054A (zh) * | 2013-10-30 | 2014-02-12 | 清华大学 | 用于变长包交换的交换系统 |
CN103746945B (zh) * | 2013-12-30 | 2017-06-27 | 上海华为技术有限公司 | 一种数据传输装置及方法 |
CN104486263B (zh) * | 2014-12-09 | 2017-10-24 | 中国航空工业集团公司第六三一研究所 | 一种共享存储交换机发送控制方法及系统 |
CN104486264B (zh) * | 2014-12-09 | 2018-01-12 | 中国航空工业集团公司第六三一研究所 | 一种基于交换控制字的交换机内部总线结构 |
JP2016158024A (ja) * | 2015-02-23 | 2016-09-01 | 日本電信電話株式会社 | 通信用入出力装置 |
US10114741B1 (en) | 2016-11-23 | 2018-10-30 | Levyx, Inc. | Data traffic reservation systems and methods |
CN108462652B (zh) * | 2017-07-31 | 2019-11-12 | 新华三技术有限公司 | 一种报文处理方法、装置和网络设备 |
US10481980B2 (en) * | 2018-03-29 | 2019-11-19 | International Business Machines Corporation | Enabling segmented source data introspection within dispersed storage network (DSN) memory |
CN110098977B (zh) * | 2019-04-12 | 2020-11-06 | 中国科学院声学研究所 | 网络数据包按序存储方法、计算机设备和存储介质 |
CN111491038B (zh) * | 2020-06-29 | 2020-10-09 | 北京一流科技有限公司 | 静态网络中的数据传输系统及其方法 |
CN114185513B (zh) * | 2022-02-17 | 2022-05-20 | 沐曦集成电路(上海)有限公司 | 数据缓存装置和芯片 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3064650B2 (ja) * | 1992-03-27 | 2000-07-12 | 株式会社日立製作所 | 同報通信装置 |
JPH06164641A (ja) * | 1992-11-17 | 1994-06-10 | Matsushita Electric Ind Co Ltd | Fifoメモリ・パケットスイッチ |
US5530806A (en) * | 1994-12-15 | 1996-06-25 | At&T Corp. | Method and apparatus for storing and retrieving routing information in a network node |
JPH1098475A (ja) * | 1996-09-24 | 1998-04-14 | Fujitsu Ltd | 共通バッファメモリ管理方式 |
US5950231A (en) * | 1996-11-25 | 1999-09-07 | Northern Telecom Limited | Memory manager system |
US6493347B2 (en) * | 1996-12-16 | 2002-12-10 | Juniper Networks, Inc. | Memory organization in a switching device |
JPH10247924A (ja) * | 1997-03-06 | 1998-09-14 | Fujitsu Ltd | 共通セルバッファ装置 |
US6018763A (en) * | 1997-05-28 | 2000-01-25 | 3Com Corporation | High performance shared memory for a bridge router supporting cache coherency |
JPH11122257A (ja) * | 1997-10-15 | 1999-04-30 | Hitachi Ltd | 共通バッファ型スイッチ |
US7145868B2 (en) * | 1997-11-28 | 2006-12-05 | Alcatel Canada Inc. | Congestion management in a multi-port shared memory switch |
JP3854745B2 (ja) * | 1999-04-12 | 2006-12-06 | 富士通株式会社 | パケット処理装置およびパケット処理方法 |
US6977941B2 (en) * | 2000-11-08 | 2005-12-20 | Hitachi, Ltd. | Shared buffer type variable length packet switch |
JP3652245B2 (ja) * | 2000-12-13 | 2005-05-25 | 株式会社日立コミュニケーションテクノロジー | パケットスイッチ |
US6779084B2 (en) * | 2002-01-23 | 2004-08-17 | Intel Corporation | Enqueue operations for multi-buffer packets |
US7337275B2 (en) * | 2002-08-13 | 2008-02-26 | Intel Corporation | Free list and ring data structure management |
GB2393273A (en) * | 2002-09-20 | 2004-03-24 | Sharp Kk | Method and apparatus for detecting an error in writing to persistent memory |
-
2003
- 2003-01-20 CN CN038239116A patent/CN1689284B/zh not_active Expired - Fee Related
- 2003-01-20 JP JP2004567119A patent/JP3865748B2/ja not_active Expired - Fee Related
- 2003-01-20 WO PCT/JP2003/000436 patent/WO2004066571A1/ja active Application Filing
- 2003-01-20 AU AU2003203352A patent/AU2003203352A1/en not_active Abandoned
- 2003-01-29 TW TW092102031A patent/TWI221370B/zh not_active IP Right Cessation
-
2005
- 2005-03-18 US US11/082,831 patent/US7733889B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US20050163141A1 (en) | 2005-07-28 |
WO2004066571A1 (ja) | 2004-08-05 |
TW200414719A (en) | 2004-08-01 |
US7733889B2 (en) | 2010-06-08 |
CN1689284B (zh) | 2010-04-28 |
CN1689284A (zh) | 2005-10-26 |
TWI221370B (en) | 2004-09-21 |
JPWO2004066571A1 (ja) | 2006-05-18 |
AU2003203352A1 (en) | 2004-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3865748B2 (ja) | ネットワークスイッチ装置およびネットワークスイッチ方法 | |
JP3397144B2 (ja) | パケット処理装置とパケット処理方法とパケット交換機 | |
US7782849B2 (en) | Data switch and switch fabric | |
US20030112818A1 (en) | Deferred queuing in a buffered switch | |
JPWO2004066570A1 (ja) | ネットワークスイッチ装置およびネットワークスイッチ方法 | |
JPH07288546A (ja) | 回線アダプタおよび経路指定方法 | |
JPH05219098A (ja) | フレーム変換方法及び装置 | |
JPH0824320B2 (ja) | 通信制御装置における緩衝域連鎖の方法およびその装置 | |
US20050138238A1 (en) | Flow control interface | |
US20080263171A1 (en) | Peripheral device that DMAS the same data to different locations in a computer | |
US20060050722A1 (en) | Interface circuitry for a receive ring buffer of an as fabric end node device | |
EP1554644A2 (en) | Method and system for tcp/ip using generic buffers for non-posting tcp applications | |
US7174394B1 (en) | Multi processor enqueue packet circuit | |
TW200844738A (en) | Data packet processing device | |
US7756131B2 (en) | Packet forwarding system capable of transferring packets fast through interfaces by reading out information beforehand for packet forwarding and method thereof | |
US8315269B1 (en) | Device, method, and protocol for data transfer between host device and device having storage interface | |
EP1032885B1 (en) | Apparatus and method for protocol application data frame operation requests interfacing with an input/output device | |
US6799227B2 (en) | Dynamic configuration of a time division multiplexing port and associated direct memory access controller | |
JP4209186B2 (ja) | パケットの高速ルーティング及びスイッチングに対するメモリ要件を低減するように構成されたプロセッサ | |
RU175049U9 (ru) | УСТРОЙСТВО КОММУНИКАЦИОННЫХ ИНТЕРФЕЙСОВ SpaceWire | |
KR100732135B1 (ko) | 네트워크 스위치 장치 및 네트워크 스위치 방법 | |
CN100484136C (zh) | 网络协议引擎 | |
US6847637B1 (en) | Unit and method for switching data packets, a data processing apparatus comprising such a unit and a network comprising them | |
JP2001024661A (ja) | マルチキャスト方式とその交換方法 | |
EP1347597B1 (en) | Embedded system having multiple data receiving channels |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060530 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060731 |
|
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: 20061003 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061003 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3865748 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091013 Year of fee payment: 3 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091013 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101013 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101013 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111013 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111013 Year of fee payment: 5 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111013 Year of fee payment: 5 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111013 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121013 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121013 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131013 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |