JP4253264B2 - クロスバスイッチ及びネットワーク転送装置 - Google Patents

クロスバスイッチ及びネットワーク転送装置 Download PDF

Info

Publication number
JP4253264B2
JP4253264B2 JP2004063812A JP2004063812A JP4253264B2 JP 4253264 B2 JP4253264 B2 JP 4253264B2 JP 2004063812 A JP2004063812 A JP 2004063812A JP 2004063812 A JP2004063812 A JP 2004063812A JP 4253264 B2 JP4253264 B2 JP 4253264B2
Authority
JP
Japan
Prior art keywords
packet
cell
transfer
crossbar switch
reception buffer
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
JP2004063812A
Other languages
English (en)
Other versions
JP2005252953A (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 JP2004063812A priority Critical patent/JP4253264B2/ja
Publication of JP2005252953A publication Critical patent/JP2005252953A/ja
Application granted granted Critical
Publication of JP4253264B2 publication Critical patent/JP4253264B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、クロスバスイッチ及びネットワーク転送装置に係り、特に、転送能力の異なるパケット転送エンジン及びクロスバスイッチを組み合わせて構成されるネットワークにおいて、高効率なバッファ管理を可能とするクロスバスイッチ及びネットワーク転送装置に関する。
一般にネットワーク転送装置においては、複数のパケット転送エンジンをクロスバスイッチを介して接続し、パケットを転送している。また、パケットはセルと呼ばれる一定の大きさのデータの集合に分割されて送信され、転送先のパケット転送エンジンにてパケットに再構成される。この際に異なるパケットのセルが入り交じって到着する、あるいは、同一パケットでもセルが異なる順序で到着するとパケットの再構成時のオーバヘッドが大きくなるため、クロスバスイッチなどの転送経路ではパケットの先頭セルの通過時に送信ポートから受信ポートへの転送経路を確保し、パケットの最終セルが通過するまで、確保した転送経路は解放しないパケット転送方式をとる。
このようなパケット転送方式の制御を行うネットワーク転送装置において、転送能力の等しいパケット転送装置とクロスバスイッチを接続しても、特に双方の能力に制限は発生しにくい。しかし、例えば転送能力の低いパケット転送エンジンと転送能力の高いクロスバスイッチを接続すると、転送能力の高いクロスバスイッチの性能が転送能力の低いパケット転送エンジンの性能に制限されてしまう。この制限はネットワーク転送装置全体の性能に影響する。
図5は、クロスバスイッチのモデルを示している。クロスバスイッチ200は、複数の受信バッファ132と、受信バッファ132を選択して出力するスイッチ135とを有し、内部のスループットが2Aのクロスバスイッチにおいて、受信バッファ132の1つにスループットAのパケット転送エンジン45を接続した例を示している。このように接続された従来のクロスバスイッチ300は、スループット2Aの能力を発揮できず、スループット2Aの他のパケット転送エンジン15についてもパケット転送効率が低下する。
図6乃至図8は、従来のパケット転送例(a)及び本発明のパケット転送例(b)を示す図である。
図6(a)は、パケット転送エンジン45から受信バッファ132の保持可能なセル数以下のパケット長のパケットが転送されてきた例を示している。また、図7(a)と図8(a)は、パケット転送エンジン45から受信バッファ132の保持可能なセル数以上のパケット長のパケットが転送されてきた例を示している。図6(b)、図7(b)、図8(b)については後に詳細に述べる。
図6(a)、図7(a)、図8(a)のいずれの場合でも、転送能力の低い(例えばスループットがA)パケット転送エンジン45から転送されてきたセルを受信バッファ132に保持することなく転送能力の高い(例えばスループットが2A)クロスバスイッチ300の出力へ転送していくと、クロスバスイッチ300は本来の転送能力を活かすことができずに、セル間に隙間が空いた転送しかできなくなる。すなわち、クロスバスイッチ300は、スループット2Aの転送能力があるにもかかわらず、この場合はスループットAでセルが転送される。
このため、この回線の占有時間が長くなり、その他の受信バッファ132に転送能力の高い(例えばスループットが2A)、別のパケット転送エンジン15からのパケットが到着しても転送できない状態が長く存在し、ネットワーク転送装置全体の性能を低下させることになる。
また、記憶装置からバッファにデータを読み出して他装置に送信するデータ送信装置において、記憶装置から読み出していく未送信のデータが指定サイズの大きさのものになったか否かを判断する判断手段と、上記判断手段が指定サイズへの到達を判断する度に、ヘッダ情報を付加しつつ、その判断対象となった指定サイズのデータを他装置に送信する送信手段とを備えるデータ送信装置が開示されている(例えば、特許文献1参照)。
特開平8−101818号公報
転送能力の異なるパケット転送エンジン及びスイッチを同一のネットワーク転送装置内に使用する場合、転送能力の低いパケット転送エンジンの性能によって、転送能力の高いクロスバスイッチの性能が制限される場合が発生する。ネットワーク転送装置内でパケット転送の効率化を図るには、転送能力の低いパケット転送エンジンの性能に制限されることなく、転送能力の高いパケット転送エンジン、クロスバスイッチが本来の性能を発揮できることが望まれる。
従来のネットワーク転送装置では、クロスバスイッチの各ポートに設けられたパケットを保持するバッファに入ってきたセルを順次転送しているため、転送能力の低いパケット転送エンジンからのパケット転送はスイッチ本来の転送能力が制限される。また、パケット転送先が転送能力の高いパケット転送エンジンの場合はこのパケット転送エンジンの能力も発揮できない。
特許文献1に開示されるデータ送信装置は、最終セル相当の判断がなく,あらかじめ決められたデータ総量との比較でデータ転送終了の判断がなされている。また、集中転送するデータのサイズ(処理単位サイズ)が定められたサイズになっている。特許文献1に記載のネットワークは、複数のデータ転送装置間転送を多重化して転送できることを想定しているものと考えられる。例えば、装置Aから装置Bへの転送をX,装置Cから装置Dへの転送をYとすると、ネットワーク上では,XYXYXYのように交互に転送できることを想定していると推測される。複数のパケットが同一伝送線上で入り混じることが禁止されている上記パケット転送方式においては、特許文献1に記載の転送装置を用いて効率的なパケット転送をすることは困難である。
例えば、特許文献1に記載の方式は、データの送信は、記憶部からの読み出しとオーバラップするようになされることにより、データの読み出しからデータ送信完了までの時間は短縮されるが、データ送信の開始から終了までの時間は、データ転送間に隙間があくようになっている。すなわち、上述のようなパケットの最終セルが通過するまで確保した転送経路を解放しないパケット転送方式に適用してもデータの送信開始から終了までの回線占有時間は大幅に短くならない。
本発明は、以上の点に鑑み、転送能力の異なるパケット転送エンジン及びクロスバスイッチを同一のネットワーク転送装置内に使用する場合でも、転送能力の高いパケット転送エンジン及びクロスバスイッチの性能低下を抑え、使用効率を大きく又は最大にするためのクロスバスイッチ及びパケット転送装置を提供することを目的とする。
本発明はネットワーク転送装置において、転送能力の低いパケット転送エンジンと転送能力の高いクロスバスイッチを接続した場合に、転送能力の高いクロスバスイッチの転送能力の低下を低減するバッファ制御方式として、以下の構成することができる。
本発明の第1の解決手段によると、
複数のセルを有するパケットの先頭セルの通過から最終セルの通過まで、第1のポートから第2のポートへの転送経路を確保するパケット転送方式におけるクロスバスイッチであって、
受信されたパケットの各セルを保持する受信バッファと、
前記受信バッファに保持されるセル又はパケットの転送を制御する受信バッファ管理部と、
受信されたパケットに含まれる出力方路情報又はパケットのヘッダ情報に基づき得られた出力方路情報に従いパケットの転送先のポートを決定し、前記受信バッファから読み出されたセル又はパケットを決定されたポートへ転送するためのスイッチと
を備え、
前記受信バッファ管理部は、
前記受信バッファへの最終セルの書き込みを検出してパケット又はセルを転送させるための信号を出力し、及び、前記受信バッファからの最終セルの読み出しを検出してパケット又はセルの転送を停止させ、
前記受信バッファへの最終セルの書き込みを検出できなくても、前記受信バッファに保持されているセル数が予め定められた閾値以上の場合に、パケット又はセルを転送させるための信号を出力し、及び、前記受信バッファからの最終セルの読み出しを検出してパケット又はセルの転送を停止させる前記クロスバスイッチが提供される。
本発明の第2の解決手段によると、
複数のセルを有するパケットの先頭セルの通過から最終セルの通過まで、第1のポートから第2のポートへの転送経路を確保するパケット転送方式において、自クロスバスイッチと同じ又はほぼ同じ転送能力を有する装置と、自クロスバスイッチよりも低い転送能力を有する装置とに接続されるためのクロスバスイッチであって、
自クロスバスイッチと同じ又はほぼ同じ転送能力を有する装置から受信されたパケットの各セルを保持する第1の受信バッファと、
前記第1の受信バッファに保持されるセル又はパケットの転送を制御する、前記第1の受信バッファに対応した第1の受信バッファ管理部と、
自クロスバスイッチよりも低い転送能力を有する装置から受信されたパケットの各セルを保持する第2の受信バッファと、
前記第2の受信バッファに保持されるセル又はパケットの転送を制御する、前記第1の受信バッファに対応した第2の受信バッファ管理部と、
受信されたパケットに含まれる出力方路情報又はパケットのヘッダ情報に基づき得られた出力方路情報に従いパケットの転送先のポートを決定し、前記第1及び第2の受信バッファから読み出されたセル又はパケットを決定されたポートへ転送するためのスイッチと、
前記第1及び第2の受信バッファ管理部から出力されるパケット又はセルを転送させるための信号を入力すると、セル又はパケットの転送の優先順位に従い、前記第1及び第2の受信バッファに保持されるセル又はパケットを、順次前記スイッチに送出させてセル又はパケットを転送させる調停回路と
を備え、
前記第1及び第2の受信バッファ管理部は、それぞれ、
対応する前記第1及び第2の受信バッファへの最終セルの書き込みを検出してパケット又はセルを転送させるための信号を出力し、及び、対応する前記第1及び第2の受信バッファからの最終セルの読み出しを検出してパケット又はセルの転送を停止させ、
対応する前記第1及び第2の受信バッファへの最終セルの書き込みを検出できなくても、対応する前記第1及び第2の受信バッファに保持されているセル数が、前記第1及び第2の受信バッファに対応する第1又は第2の閾値以上の場合に、パケット又はセルを転送させるための信号を出力し、及び、対応する前記第1及び第2の受信バッファからの最終セルの読み出しを検出してパケット又はセルの転送を停止させる前記クロスバスイッチが提供される。
本発明の第3の解決手段によると、
上記クロスバスイッチで構成されるサブクロスバスイッチを有する複数のパケット転送部と、
前記サブクロスバスイッチのいずれか及び回線に接続され、回線からのパケットを前記サブクロスバスイッチに転送し、及び、前記サブクロスバスイッチからのパケットを回線に送出するための第1のパケット転送エンジンを有する複数の回線対応部と、
上記クロスバスイッチと、装置全体を管理する装置管理処理部と、前記クロスバスイッチと前記装置管理処理部との間でパケットを転送するための第2のパケット転送エンジンとを有し、前記複数のパケット転送部と前記第2のパケット転送エンジンとのそれぞれの間でパケットを転送する装置管理部と
を備え、
前記第1のパケット転送エンジン及び前記第2のパケット転送エンジンの少なくともひとつの転送能力は、接続される前記クロスバスイッチ又は前記サブクロスバスイッチのパケット転送能力よりも低いネットワーク転送装置が提供される。
本発明によると、転送能力の異なるパケット転送エンジンとクロスバスイッチを同一のネットワーク装置に使用しても性能低下を低減することができる。特に、転送能力の低いパケット転送エンジンと接続されるクロスバスイッチのポートの受信バッファが、受信するパケットの最大セル数と同数のバッファ面数を持っている場合は、クロスバスイッチの転送能力を低下させることなく動作可能である。
図1は、ネットワーク転送装置の概略図である。ネットワーク転送装置は回線対応部10(NIF、Network Interface)と、パケット転送部20(PPU、Packet Processing Unit)と、装置管理部30(RM、Routing Manager)を備える。回線対応部10はパケット転送エンジン15(PFP、Packet Forwarding Processor)を有する。また、パケット転送部20は、サブクロスバスイッチ25(Sub Crossbar Switch)と、経路検索エンジン26(RCTL、Routing Control Processor)と、バス選択回路27(BUSSEL、BUS Selector)を有する。装置管理部30は、クロスバスイッチ35(Crossbar Switch)と、パケット転送エンジン36(PFP)と、装置管理CPU37(RM−CPU、Routing Manager CPU)を有する。なお、ネットワーク転送装置は、現用系と予備系の装置管理部30を備える二重化冗長構成の例である。
回線対応部10は、回線からパケットを受信しパケット転送部20へ送信する。回線対応部10のパケット転送エンジン15は、回線からパケットを受信するとパケットの出力方路情報を抽出し、パケット転送部20の経路検索エンジン26に送信する。また、パケット転送エンジン15(第1のパケット転送エンジン)は、受信したパケットを適宜のバッファに格納する。パケット転送エンジン15は、経路検索エンジン26からパケットの転送先を示す出力方路情報を受け取ると、出力方路情報をバッファに格納した該当するパケットの一部とし、そのパケットをサブクロスバスイッチ25に送信する。また、パケット転送エンジン15は、サブクロスバスイッチ25からパケットを受信すると、パケット内の出力方路情報に従いパケットを回線に出力する。
パケット転送部20は、回線対応部10が受信したパケットのヘッダ情報からパケットの転送先を検索し、パケットを転送先へ転送する。パケット転送部20の経路検索エンジン26には、例えば、宛先アドレスに対応してパケットの転送先をしめす出力方路情報が記憶されている。経路検索エンジン26は、例えば、パケット転送エンジン15から受け取ったパケットヘッダ中の宛先アドレスに基づき出力方路情報を検索して、パケット転送エンジン15に出力方路情報を送る。出力方路情報としては、例えば、出力サブクロスバスイッチ、出力パケット転送エンジン、出力回線を示す適宜の識別情報を用いることができる。
サブクロスバスイッチ25は、経路検索エンジン26により指定された出力方路情報に従い、パケット転送エンジン15から受け取った出力方路情報を含むパケットを出力方路へ転送する。また、サブクロスバスイッチ25は、クロスバスイッチ35から出力方路情報を含むパケットを受信し、出力方路情報に応じたパケット転送エンジン15へ受信した出力方路情報を含むパケットを送信する。サブクロスバスイッチ25は、内部のセレクタにより、現用系及び予備系の装置管理部30のクロスバスイッチ35に選択的に接続される。また、サブクロスバスイッチ25は、異なる種類の(例えば、転送能力の異なる)パケット転送エンジンへ接続するためのポートを備え、それらのポートをパケット転送エンジンに応じて使用することにより異なるパケット転送エンジンと接続することができる。
バス選択回路27は、装置管理部30に接続されているバス(BUS)を選択する。バス選択回路27は、通常、現用系の装置管理部30に接続されているバスを選択し、装置管理部30が予備系に切り替わると予備系に接続されているバスを選択する。サブクロスバスイッチ25、経路検索エンジン26、回線対応部10のパケット転送エンジン15は、バス選択回路27が選択したバスを介して装置管理CPU37とデータの送受信が可能である。
装置管理部30は、現用系又は予備系としてあらかじめ設定され、ネットワーク転送装置を管理する。装置管理部30のクロスバスイッチ35は、パケット転送部20のサブクロスバスイッチ25との間でパケットを転送する。クロスバスイッチ35は、サブクロスバスイッチ25から出力方路情報を含むパケットを受け取ると、出力方路情報に応じたサブクロスバスイッチ25、又はパケット転送エンジン(第2のパケット転送エンジン)36に出力方路情報を含むパケットを転送する。また、装置管理部30のクロスバスイッチ35は、装置管理部30のパケット転送エンジン36との間でパケットを転送する。クロスバスイッチ35は、パケット転送エンジン36から装置管理CPU37が作成した、出力方路情報を含むパケットを受け取ると、出力方路情報に応じたサブクロスバスイッチ25、又はパケット転送エンジン36に出力方路情報を含むパケットを転送する。なお、クロスバスイッチ35と、サブクロスバスイッチ25は、同じ構造のクロスバスイッチ35を用いることができる。
装置管理CPU37は、例えば、経路検索エンジン26に対し、経路情報をクロスバスイッチ35、サブクロスバスイッチ25、パケット転送エンジン15を経由して配布する。また、現用系に設定されている装置に障害が発生した場合に、予備系に切り替える系切替手順を実行する。系切替手順における信号は、バスを介して装置全体に送信される。
図2は、二重化構成のネットワーク転送装置の構成例を示す図である。ネットワーク転送装置は、複数の回線対応部10又は40と、複数のパケット転送部20又は50と、現用系及び予備系の装置管理部30を備える。装置管理部30は、一方が現用系、他方は予備系として予め設定されている。
回線対応部10のパケット転送エンジン15は、複数のパケット転送部20のいずれかのサブクロスバスイッチ25に収容される。ポート番号は、サブクロスバスイッチ25の各ポートに予め割り当てられた識別番号である。例えば、ポート0は第1のパケット転送エンジン15に接続され、接続されたパケット転送エンジン15の識別番号は0、ポート1は第2のパケット転送エンジン15に接続され、接続されたパケット転送エンジン15の識別番号1となる。
また、通常はパケット転送エンジン15とサブクロスバスイッチ25の間の転送はスループットが最大となる第一モードを選択するが、パケット転送エンジン15とサブクロスバスイッチ25に予め設定することによって、周波数を半分としてスループットを半分とする第二モードを選択することも可能である。
回線対応部40のパケット転送エンジン45は、パケット転送エンジン15とは転送能力の異なる低速のインターフェースを有し、例えばサブクロスバスイッチ25のポート9に収容が可能である。図2に示す例では、パケット転送エンジン45は、パケット転送エンジン36と同一のインターフェースを実装している。パケット転送エンジン45は、複数のパケット転送部50のいずれかのサブクロスバスイッチ25に収容される。なお、本実施の形態では、パケット転送部50は回線対応部40を収容するためにサブクロスバスイッチ25のポート9を使用し、パケット転送部20で使用しているポート0、1を未使用にする。サブクロスバスイッチ25はパケット転送部20に搭載されているか、パケット転送部40に接続されているかが予め設定され、その設定に従い機能を切り替える。
各々のサブクロスバスイッチ25の現用系又は予備系に対応する各ポートは、装置管理部30内の現用系又は予備系のクロスバスイッチ35にそれぞれ収容される。例えば、ポート4,6は0系クロスバスイッチ35に搭載され、ポート5,7は1系クロスバスイッチ35に収容される。
クロスバスイッチ35のポート番号は予め割り当てられた識別番号である。例えば、ポート0とポート4はパケット転送部20のサブクロスバスイッチ25のポート4とポート6に接続される。また例えば、ポート9はパケット転送エンジン36に接続される。パケット転送エンジン36は、例えばパケット転送エンジン45と同一のインターフェースを有する。すなわち、パケット転送エンジン15及びクロスバスイッチ35に対して低速なインタフェースを有する。
サブクロスバスイッチ25は予め定められた設定に従い、現用系に接続されているポート(例えばポート4とポート6)を有効とする。また、サブクロスバスイッチ25は、例えば装置管理部30内の装置管理CPU37からの系切替信号に応答して、所定のポートを無効とし、予備系のポート(例えば、ポート5とポート7)を有効とする。これらの動作はパケット転送部20又は50に搭載されても同様の動作を行う。
図2のネットワーク転送装置では、等しい転送能力を有するクロスバスイッチ35及びサブクロスバスイッチ25及びパケット転送エンジン15と、これらスイッチ35、25、及びパケット転送エンジン15よりも低い転送能力のパケット転送エンジン36及び45を接続した構成である。図2の構成は一例であり、パケット転送部20と50の数の変更やパケット転送エンジンをさらに多種にすることも可能である。また、図2に示す例では、転送能力の低いパケット転送エンジン36と45を示しているが、少なくともひとつのパケット転送エンジンまたはスイッチが他のスイッチ等よりも転送能力が低い構成とすることもできる。
図3は、クロスバスイッチ35の内部構造を示す説明図である。サブクロスバスイッチ25も同様の構成をしているが、ここではクロスバスイッチ35として説明する。クロスバスイッチ35は、ポート131と、各ポート131毎の受信バッファ132、受信バッファ管理部133、閾値レジスタ137、受信バッファ書き込み制御部151及び受信バッファ読み出し制御部152と、調停回路134と、スイッチ135とを有する。
サブクロスバスイッチ25あるいはパケット転送エンジン36からポート131を介して受信したパケットは、各ポート131に対応して設けられた受信バッファ132にパケットの構成単位であるセル単位で一旦保持される。なお、このパケットを入出力するためのポートは例えば9ポート存在し、以後の説明では必要に応じて[0]〜[7]及び[9]の番号を付すものとする。
受信バッファ書き込み制御部151は、入出力ポート131から送られてきたセルを受信バッファ132に書き込むとともに、受信バッファ管理部133へセルを受信バッファ132に1つ書き込んだことを示すセル書き込み信号153を発行(出力)する。また受信バッファに書き込んだセルの種別を判定し、セルが最終セルである場合にはセル書き込み信号と共に、最終セル書き込み信号154を発行する。
受信バッファ読み出し制御部152は、受信バッファ管理部133より調停参加指示信号157を受け取ることにより、調停回路134に対して調停参加信号を発行する。また、受信バッファ132からセルを読み出してスイッチ135へセルを送出した際に、セル読み出し信号155を発行し、送出したセル種別が最終セルの場合には、最終セル読み出し信号156を発行する。なお、受信バッファ書き込み制御部151及び受信バッファ読み出し制御部152は、例えばパケット終端情報やパケットの終端にある空白ビットを検出することにより最終セルを判別することができる。最終セルの判断は、これ以外にも適宜の方法を用いてもよい。
受信バッファ132に保持されたセルは受信バッファ管理部133からの指示及び調停回路134からの指示に従い、受信バッファ読み出し制御部152によって読み出され、第一セルにある出力方路情報は、調停回路134に転送される。調停回路134は、各ポート131から並列して入力され、及び受信バッファ読み出し制御部152から調停参加信号を受信したパケットについて、転送の優先順位に従って、パケット又はセルを、順次スイッチ回路135に送出させる機能を奏する。
受信バッファ管理部133は、受信バッファ132内部に保持されたセル数を管理し、受信セルバッファ132の状態(例えばバッファに記憶されているセル数)と閾値レジスタ137の値に従い、調停参加指示信号157を生成する。また、受信バッファ管理部133は、受信バッファ132内部に保持された最終セル数を管理し、最終セル数に従い、調停参加指示信号157を生成する。生成された調停参加指示信号157は、例えば受信バッファ読み出し制御部152に出力される。なお、受信バッファ132の詳細な構成及び調停参加指示の決定方法については後述する。
閾値レジスタ137は、外部から入力される閾値を記憶するプログラマブルな不揮発メモリである。例えば、ポート131[0]〜131[7]に対応する閾値レジスタ137[0]〜137[7]には1を設定し、ポート131[9]に対応する閾値レジスタ137[9]には受信バッファ132の格納可能な最大面数を設定することができる。なお、閾値レジスタに設定する値はこれ以外にも適宜の値を設定することができる。例えば、閾値レジスタ137[9]には、種々の機能(バックプレッシャーなど)を考慮して、最大面数よりもいくらか小さい値としてもよい。
また、通常はパケット転送エンジン15とサブクロスバスイッチ25の間の転送はスループットが最大となる第一モードを選択するが、周波数を半分としてスループットを半分とする第二モードをパケット転送エンジン15とサブクロスバスイッチ25の対応するポートに設定した場合にも、サブクロスバスイッチ25の対応するポートの閾値レジスタ137に例えば受信バッファ132の格納可能な最大面数を設定する。
スイッチ回路135はセルヘッダ情報(出力方路情報)に従って、パケットの転送先を切り替え、指定されたポートに対応した送信バッファ136にパケットを出力する。送信バッファ136はこのパケットをポート131から出力する。なお、説明の便宜上、図中には受信側と送信側にそれぞれポート131を示したが、両者はクロスバスイッチ35の回路上は同一のものである。
また、本実施の形態ではポート131[0]〜131[7](第1のポート)とポート131[9](第2のポート)は、転送能力の異なるインターフェースを持っている。例えば、クロスバスイッチ35のポート131[0]〜131[7]はサブクロスバスイッチのポート131[0]〜131[7]と接続可能であり、クロスバスイッチのポート131[9]はパケット転送エンジン15より低速なパケット転送エンジン36と接続が可能である。
同様に、サブクロスバスイッチ25のポート131[0]〜131[7]はクロスバスイッチのポート131[0]〜131[7]、又は、サブクロスバスイッチ25と同速度のパケット転送エンジン15と接続可能であり、サブクロスバスイッチのポート131[9]はパケット転送エンジン15より低速なパケット転送エンジン45と接続が可能である。
図4は、受信バッファ管理部133の構造を示す説明図である。
受信バッファ管理部133は、セルカウンタ140と、第一比較器141と、転送フラグ142と、最終セルカウンタ143と、第二比較器144と、OR回路145とを有する。
セルカウンタ140は、対応する受信バッファ132に格納されているセル数をカウントするカウンタである。例えば、対応する受信バッファ132にセルが書き込まれることに基づいて受信バッファ書き込み制御部151が送信するセル書き込み信号153を受信することにより例えば+1され、受信バッファ132からセルが読み出されることに基づいて受信バッファ読み出し制御部152が送信するセル読み出し信号155を受信することより例えば−1される。
第一比較器141は、セルカウンタ140の出力(A)と閾値レジスタ137の値(B)を比較する比較器である。セルカウンタ140の出力が閾値レジスタ137の値と等しいか、それ以上の場合に転送フラグ142をセットする。
転送フラグ142は、セル読み出しを行うかどうかを示すフラグであり、受信バッファ132に閾値レジスタ137の値以上にセルが格納されていた場合に、調停参加指示を出力し、最終セルまでセルを転送するための制御を行うためのフラグである。転送フラグ142は、第一比較器141からの信号でセットされ、受信バッファ読み出し制御部152からの最終セルの読み出し信号156によって、リセットされる。
最終セルカウンタ143は、対応する受信バッファ132に格納されている最終セルの数をカウントするカウンタである。受信バッファ132に最終セルが書き込まれることに基づいて受信バッファ書き込み制御部151が送信する最終セル書き込み信号154を受信することにより例えば+1され、受信バッファ132から最終セルが読み出されることに基づいて受信バッファ読み出し制御部152が送信する最終セル読み出し信号156を受信することにより例えば−1される。
第二比較器144は、最終セルカウンタ143の出力(C)が、予め設定された所定値D(例えば1)以上、すなわち最終セルが受信バッファ132に1つ以上格納されている場合に調停参加指示を出力させる。最終セルが受信バッファ132に1つ以上格納されている場合は1パケット分のセルが受信バッファ132に格納されたことを示すため、パケットの転送を開始可能であることを表している。なお、最終セルカウンタ143及び第二比較器144は、カウンタ及び比較器に限らず、最終セルの有無を判別するための適宜の構成(最終セル判別手段)とすることができる。
OR回路145は、転送フラグがセットされている、あるいは第二比較器144の出力が受信バッファ132に最終セルが1つ以上格納されていることを示す場合に調停参加指示を出力するための回路である。調停参加指示が調停回路134に出力されると、転送の優先順位に従って受信バッファ132に格納されているセルが、受信バッファ読み出し制御部152により順次読み出され、最終セルを転送するまで回線を占有してスイッチ回路135を介して転送される。
なお、図4は、受信バッファ管理部133の回路構成例であるが、これ以外の回路構成としてもよいし、同様の機能をソフトウェアで実現してもよい。
(動作例)
図6(b)は、従来例を示す図6(a)に対して、受信バッファ132の保持可能なセル数以下のパケットが入力されたときの本実施の形態のクロスバスイッチの動作例を示す図である。受信バッファ132にパケット200の最終セルが保持されたことを受信バッファ管理部133が検出することにより、パケット転送を開始する。この制御により図6(a)の送信パケット250のようにパケット間に隙間を空けることなく、図6(b)の送信パケット251のように回線占有時間を短縮することができる。すなわち、クロスバスイッチ35は、自らの転送能力を最大限に発揮することができ、回線占有時間が短くなることにより他のポートに入力されるパケットの待ち時間も短くなる。
なお、図中、受信パケット200の1はパケットの1番目のセル、2は2番目のセル、以下数字は何番目のセルであるかを示している。最終セルのみはEで示している。以下のパケット250、251、210、260、261、220、270、271も同様である。
図7(b)は、従来例を示す図7(a)に対して、受信バッファ132の保持可能なセル数以上のパケットが入力されたときの本実施の形態のクロスバスイッチの動作である。受信バッファ132に受信パケット210のセルが閾値レジスタ137の値以上保持されたことを受信バッファ管理部133が検出することにより、パケット転送を開始する。この制御により図7(a)の送信パケット260のようにパケット間に隙間を空けることなく、図7(b)の送信パケット261のように回線占有時間を短縮することができる。
図7(b)では閾値レジスタ137の保持する値は受信バッファ132の保持可能なセル数と同じ値に設定した例である。また、送信パケット261のように隙間なくパケットが転送される場合のパケットの最大セル数(N)は、パケット転送エンジンのスループットAとクロスバスイッチのスループットB(B>A)と受信バッファの面数から算出可能である。例えば、
N=M(1+(A/B)+(A/B)+(A/B)+・・・・)
と表現することができる。M=8、B=2Aの場合、Nは、約16となるが、実際にはN、Mが整数であることからN=15となる。
図8(b)は、従来例を示す図8(a)に対して、受信バッファ132の保持可能なセル数以上のパケットで上記N以上のセル数のパケットが入力されたときの本実施の形態のクロスバスイッチの動作例を示す図である。受信バッファ132に受信パケット220のセルが閾値レジスタ137の値以上保持されたことを受信バッファ管理部133が検出することにより、パケット転送を開始する。この制御により図8(b)の送信パケット271ではN個までのセルはパケット間に隙間を空けることなく転送し、N+1個目のセル以降は従来の送信パケット270と同様の隙間をつくり転送する。従来の送信パケット270に比較して、本実施の形態の送信パケット271のほうが回線占有時間を短縮することができる。
なお、上述は図6〜8は、クロスバスイッチ35として説明したが、サブクロスバスイッチ25も同様である。
パケット転送を行う通信装置に関する産業に利用可能である。
ネットワーク転送装置の概略図。 異なる回線対応部を収容したネットワーク転送装置の構成例を示す図。 クロスバスイッチ35の内部構造を示す説明図。 受信バッファ管理部133の内部構造を示す説明図。 クロスバスイッチのモデル。 クロスバスイッチの動作例(1)を示す図。 クロスバスイッチの動作例(2)を示す図。 クロスバスイッチの動作例(3)を示す図。
符号の説明
10 回線対応部(1)
15 パケット転送エンジン(1)
20 パケット転送部(1)
25 サブクロスバスイッチ
26 経路検索エンジン
27 バス選択回路
30 装置管理部
35 クロスバスイッチ
36 パケット転送エンジン(3)
37 装置管理CPU
40 回線対応部(2)
45 パケット転送エンジン(2)
50 パケット転送部(2)
131 入出力ポート
132 受信バッファ
133 受信バッファ管理部
134 調停回路
135 スイッチ
136 送信バッファ
137 閾値レジスタ
140 セルカウンタ
141 第一比較器
142 転送フラグ
143 最終セルカウンタ
144 第二比較器
145 OR回路
151 受信バッファ書き込み制御部
152 受信バッファ読み出し制御部
153 セル書き込み信号
154 最終セル書き込み信号
155 セル読み出し信号
156 最終セル読み出し信号
157 調停参加指示信号
158 閾値
200、210、220 受信パケット
250、251、260、261、270、271 送信パケット

Claims (7)

  1. 複数のセルを有するパケットの先頭セルの通過から最終セルの通過まで、第1のポートから第2のポートへの転送経路を確保するパケット転送方式におけるクロスバスイッチであって、
    受信されたパケットの各セルを保持する受信バッファと、
    前記受信バッファに保持されるセル又はパケットの転送を制御する受信バッファ管理部と、
    受信されたパケットに含まれる出力方路情報又はパケットのヘッダ情報に基づき得られた出力方路情報に従いパケットの転送先のポートを決定し、前記受信バッファから読み出されたセル又はパケットを決定されたポートへ転送するためのスイッチと
    を備え、
    前記受信バッファ管理部は、
    前記受信バッファへの最終セルの書き込みを検出してパケット又はセルを転送させるための信号を出力し、及び、前記受信バッファからの最終セルの読み出しを検出してパケット又はセルの転送を停止させ、
    前記受信バッファへの最終セルの書き込みを検出できなくても、前記受信バッファに保持されているセル数が予め定められた閾値以上の場合に、パケット又はセルを転送させるための信号を出力し、及び、前記受信バッファからの最終セルの読み出しを検出してパケット又はセルの転送を停止させる前記クロスバスイッチ。
  2. 前記パケット又はセルを転送させるための信号は、調停参加信号であり、
    前記受信バッファ管理部から調停参加信号が出力されると、複数の調停参加信号間でのセル又はパケットの転送の優先順位に従い、前記受信バッファに保持されるセル又はパケットを、順次前記スイッチに送出させてセル又はパケットを転送させる調停回路
    をさらに備えた請求項1に記載のクロスバスイッチ。
  3. 受信されたセルを前記受信バッファに書き込み、及び、パケットの最終セルを検出して、最終セルを前記受信バッファに書き込むことにより最終セル書き込み信号を出力する書き込み制御部と、
    前記受信バッファからセルを読み出し、及び、パケットの最終セルを検出して、最終セルを前記受信バッファから読み出すことにより最終セル読み出し信号を出力する読み出し制御部と
    をさらに備え、
    前記受信バッファ管理部は、
    前記書き込み制御部からの最終セル書き込み信号により最終セルの書き込みを検出し、前記読み出し制御部からの最終セル読み出し信号により最終セルの読み出しを検出する請求項1又は2に記載のクロスバスイッチ。
  4. 前記受信バッファ管理部は、
    前記書き込み制御部からの最終セル書き込み信号及び前記読み出し制御部からの最終セル読み出し信号に基づき、前記受信バッファが保持する最終セルの有無を判別し、最終セルが有る場合にパケット又はセルを転送させるための信号を出力し、及び、最終セルが無くなった場合にパケットの転送を停止させる最終セル判別手段と、
    前記書き込み制御部が前記受信バッファにセルを書き込んだときに出力されるセル書き込み信号、及び、前記読み出し制御部が前記受信バッファからセルを読み出したときに出力される読み出し信号に基づき、前記受信バッファが保持するセル数をカウントするセルカウンタと、
    前記セルカウンタの値と予め定められた閾値とを比較し、前記セルカウンタの値が閾値以上の場合に信号を出力する比較器と、
    前記比較器の出力によってセットされ、前記読み出し制御部からの最終セル読み出し信号によってリセットされる転送フラグと
    を有し、
    前記最終セル判断手段が最終セルなしと判別しても、前記転送フラグがセットされることによりパケット又はセルを転送させるための信号を出力し、前記転送フラグがリセットされることによりパケットの転送を停止させる請求項3に記載のクロスバスイッチ。
  5. 前記閾値を格納する閾値レジスタ
    をさらに備え、
    前記閾値レジスタに格納される閾値により、前記受信バッファ管理部におけるパケット又はセルの転送の制御が、接続される装置に応じて変更可能な請求項1乃至4のいずれかに記載のクロスバスイッチ。
  6. 複数のセルを有するパケットの先頭セルの通過から最終セルの通過まで、第1のポートから第2のポートへの転送経路を確保するパケット転送方式において、自クロスバスイッチと同じ又はほぼ同じ転送能力を有する装置と、自クロスバスイッチよりも低い転送能力を有する装置とに接続されるためのクロスバスイッチであって、
    自クロスバスイッチと同じ又はほぼ同じ転送能力を有する装置から受信されたパケットの各セルを保持する第1の受信バッファと、
    前記第1の受信バッファに保持されるセル又はパケットの転送を制御する、前記第1の受信バッファに対応した第1の受信バッファ管理部と、
    自クロスバスイッチよりも低い転送能力を有する装置から受信されたパケットの各セルを保持する第2の受信バッファと、
    前記第2の受信バッファに保持されるセル又はパケットの転送を制御する、前記第の受信バッファに対応した第2の受信バッファ管理部と、
    受信されたパケットに含まれる出力方路情報又はパケットのヘッダ情報に基づき得られた出力方路情報に従いパケットの転送先のポートを決定し、前記第1及び第2の受信バッファから読み出されたセル又はパケットを決定されたポートへ転送するためのスイッチと、
    前記第1及び第2の受信バッファ管理部から出力されるパケット又はセルを転送させるための信号を入力すると、セル又はパケットの転送の優先順位に従い、前記第1及び第2の受信バッファに保持されるセル又はパケットを、順次前記スイッチに送出させてセル又はパケットを転送させる調停回路と
    を備え、
    前記第1及び第2の受信バッファ管理部は、それぞれ、
    対応する前記第1及び第2の受信バッファへの最終セルの書き込みを検出してパケット又はセルを転送させるための信号を出力し、及び、対応する前記第1及び第2の受信バッファからの最終セルの読み出しを検出してパケット又はセルの転送を停止させ、
    対応する前記第1及び第2の受信バッファへの最終セルの書き込みを検出できなくても、対応する前記第1及び第2の受信バッファに保持されているセル数が、前記第1及び第2の受信バッファに対応する第1又は第2の閾値以上の場合に、パケット又はセルを転送させるための信号を出力し、及び、対応する前記第1及び第2の受信バッファからの最終セルの読み出しを検出してパケット又はセルの転送を停止させる前記クロスバスイッチ。
  7. 請求項1乃至6のいずれかに記載のクロスバスイッチで構成されるサブクロスバスイッチを有する複数のパケット転送部と、
    前記サブクロスバスイッチのいずれか及び回線に接続され、回線からのパケットを前記サブクロスバスイッチに転送し、及び、前記サブクロスバスイッチからのパケットを回線に送出するための第1のパケット転送エンジンを有する複数の回線対応部と、
    請求項1乃至6のいずれかに記載のクロスバスイッチと、装置全体を管理する装置管理処理部と、前記クロスバスイッチと前記装置管理処理部との間でパケットを転送するための第2のパケット転送エンジンとを有し、前記複数のパケット転送部と前記第2のパケット転送エンジンとのそれぞれの間でパケットを転送する装置管理部と
    を備え、
    前記第1のパケット転送エンジン及び前記第2のパケット転送エンジンの少なくともひとつの転送能力は、接続される前記クロスバスイッチ又は前記サブクロスバスイッチのパケット転送能力よりも低いネットワーク転送装置。
JP2004063812A 2004-03-08 2004-03-08 クロスバスイッチ及びネットワーク転送装置 Expired - Lifetime JP4253264B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004063812A JP4253264B2 (ja) 2004-03-08 2004-03-08 クロスバスイッチ及びネットワーク転送装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004063812A JP4253264B2 (ja) 2004-03-08 2004-03-08 クロスバスイッチ及びネットワーク転送装置

Publications (2)

Publication Number Publication Date
JP2005252953A JP2005252953A (ja) 2005-09-15
JP4253264B2 true JP4253264B2 (ja) 2009-04-08

Family

ID=35032981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004063812A Expired - Lifetime JP4253264B2 (ja) 2004-03-08 2004-03-08 クロスバスイッチ及びネットワーク転送装置

Country Status (1)

Country Link
JP (1) JP4253264B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5939323B1 (ja) 2015-02-10 2016-06-22 日本電気株式会社 情報処理装置、情報処理方法、及び、プログラム

Also Published As

Publication number Publication date
JP2005252953A (ja) 2005-09-15

Similar Documents

Publication Publication Date Title
US5675736A (en) Multi-node network with internode switching performed within processor nodes, each node separately processing data and control messages
CA2297836C (en) Multi-port internally cached drams
KR980013147A (ko) 패킷 상호 연결망에서의 메시지 송신 장치 및 메시지 송신 제어방법
US6715055B1 (en) Apparatus and method for allocating buffer space
US7729258B2 (en) Switching device
KR20070065261A (ko) 중재 패킷 프로토콜을 구비한 메모리 중재 시스템 및 방법
JP2001524727A (ja) 低レイテンシ共有メモリスイッチ構造
EP1622324A1 (en) Fault tolerant data transfer in multi-node system via internodal crossbar switch
US20050015529A1 (en) Duplexing system and method using serial-parallel bus matching
KR20220132333A (ko) PCIe 인터페이스 장치 및 그 동작 방법
GB2377138A (en) Ring Bus Structure For System On Chip Integrated Circuits
JP4253264B2 (ja) クロスバスイッチ及びネットワーク転送装置
US20040230717A1 (en) Processing device
US6341313B1 (en) Flow controlling method and apparatus for network between processors
CN100586101C (zh) 在作为目的地的第二层交换机之间切换
EP1284557A2 (en) Inter-nodal data transfer and data transfer apparatus
US8073999B2 (en) Data input-output control apparatus
JP2778520B2 (ja) マルチキャスト方法及び交換スイッチ
CN113900978A (zh) 数据传输方法、装置和芯片
KR100798302B1 (ko) 버스 및 네트워크의 복합 통신 수단을 갖는 시스템 온칩
JP2790112B2 (ja) 遅延優先制御バッファの無瞬断切替装置及び切替方法
JPH06284453A (ja) Atmセルスイッチ
JP7283191B2 (ja) 情報処理システム
US9356873B2 (en) Backbone channel management method and backbone channel management apparatus
JP4411138B2 (ja) データフロー制御方式、その回路、およびその方法

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20051214

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081029

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081208

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: 20090106

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090123

R150 Certificate of patent or registration of utility model

Ref document number: 4253264

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120130

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130130

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140130

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term