(57)【特許請求の範囲】
【請求項１】
各々ネットワークと接続された複数の入出力ユニットと、各入出力ユニットに接続されて入出力ユニット間のデータ転送を制御するクロスバスイッチユニットを備えたネットワーク装置において、
クロスバスイッチユニットは、各入出力ユニットからのデータ転送を監視し、各入出力ユニットに対して、データ転送相手側のビジーまたはノンビジー状態を示すビジー情報を送付する手段を備え、
入出力ユニットは、前記クロスバスイッチユニットから送付される各入出力ユニット毎のビジー情報を保持する手段と、前記保持されたビジー情報を元に、データ転送相手側がノンビジー状態に相当するデータを優先してクロスバスイッチユニットに送出する手段とを備える、
ことを特徴とするネットワーク装置。
【請求項２】
請求項１記載のネットワーク装置であって、
前記ビジー情報は、前記クロスバスイッチユニットから前記入出力ユニットへ転送するデータに付加されて、前記入出力ユニットに転送されることを特徴とするネットワーク装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ルータなどのネットワーク装置に関し、特にネットワークと接続される複数の入出力ユニットを有して、この入出力ユニット間のデータ転送を、クロスバスイッチを介して実現するネットワーク装置に関する。
【０００２】
【従来の技術】
従来、ネットワークと接続される複数の入出力ユニットを有するネットワーク装置は、バスを介して入出力ユニット間のデータ転送処理を実現する装置が一般的であった。
【０００３】
しかし、近年パソコンに代表される端末装置の高性能化、各種アプリケーションの高機能化が著しい。また、ネットワークを取りまく環境もインターネットに代表されるアプリケーションの普及により、ネットワークトラフィックが急激的に増加している。従って、従来のバス構造のネットワーク装置では、この急増するトラフィックの収容に限界がある。
【０００４】
【発明が解決しようとする課題】
近年、このバス構造に変わるものとして、クロスバスイッチを具備し、入出力ユニット間のデータ転送の性能を向上したネットワーク装置が製品化されてきている。バスは一本の伝送路をＮ個の入出力ユニットが、アービトレーション等により選択され、任意の１つが特定の相手とデータ転送を実現するのに対して、クロスバスイッチは、このＮ個の入出力ユニットを、二次元マトリックスにて接続して、データ転送を実現するものである。この為、複数の入出力ユニット間での同時データ転送が可能である。しかし、二次元マトリックス構造のため、特定の１つに複数の入出力ユニットから同時にデータ転送を実現する事は出来ない。この時はバスと同様にアービトレーション等によって要求順番などで任意の一つが選択される為、非選択の入出力ユニットで、待ちが発生する。即ち、この事象が発生した時は、データ転送の効率が低下する問題がある。
【０００５】
本発明の目的は、ネットワークと接続される複数の入出力ユニット間のデータ転送を、クロスバスイッチを介して実現するネットワーク装置において、入出力ユニットでの上記待ちが発生するのを軽減して、データ転送の効率の向上を図ることにある。
【０００６】
【課題を解決するための手段】
本発明は、上記目的を達するために、各々ネットワークと接続された複数の入出力ユニットと、各入出力ユニットに接続されて入出力ユニット間のデータ転送を制御するクロスバスイッチユニットを備えたネットワーク装置において、クロスバスイッチユニットは、各入出力ユニットからのデータ転送を監視し、各入出力ユニットに対して、データ転送相手側のビジーまたはノンビジー状態を示すビジー情報を送付する手段を備え、入出力ユニットは、前記クロスバスイッチユニットから送付される各入出力ユニット毎のビジー情報を保持する手段と、前記保持されたビジー情報を元に、データ転送相手側がノンビジー状態に相当するデータを優先してクロスバスイッチユニットに送出する手段とを備えることを主要な特徴とする。
【０００７】
クロスバスイッチユニットが各入出力ユニットにビジー情報を送付するやり方は、入出力ユニットとクロスバスイッチユニット間に転送されるデータ本体のヘッダ部にビジー情報専用のフィールドを設けて、クロスバスイッチユニットから入出力ユニットへのデータ転送時に該データに挿入して送付する。
【０００８】
【発明の実施の形態】
以下、本発明の一実施の形態について図面により説明する。なお、以下の実施の形態では、クロスバスイッチユニットから各入出力ユニットへのビジー情報の送付は、両者間に転送されるデータ本体のヘッダ部にビジー情報用のフィールドを設けて行う方式を採るとする。
【０００９】
図１は本発明のネットワーク装置の一実施の形態の構成図を示す。図において、１００はクロスバスイッチユニット、２００は入出力ユニット、３００はＬＡＮやＷＡＮなどのネットワークである。便宜上、図１では、入出力ユニット２００は一つしか示していないが、実際には、図２に示すように、本ネットワーク装置１０に収容されるポート（０〜Ｎ）の数分の入出力ユニットが存在する。
【００１０】
クロスバスイッチ回路１００は、各ポート（０〜Ｎ）対応の受信インタフェース回路群１１０と送信インタフェース回路群１２０、クロスバマトリックス回路１３０、ビジー監視回路１４０、及び、各ポート対応のオアゲート群１５０などで構成される。受信インタフェース回路群１１０は、それぞれ対応する入出力ユニット２００からのデータを受信してクロスバマトリックス回路１３０へ転送する。送信インタフェース回路群１２０は、クロスバマトリックス回路１３０から出力されるデータを、それぞれ対応する入出力ユニット２００へ転送する。クロスバマトリックス回路１３０は、受信インタフェース回路群１１０とオアゲート群１５０を介しての送信インタフェース回路群１２０の信号線群を二次元マトリックスにて接続し、受信インタフェース回路群１１０からのデータを、その送信先情報に基づいて送信インタフェース回路群１２０へ選択出力する。また、クロスバマトリックス回路１３０は、この送信インタフェース回路群１２０へのデータの出力タイミングに同期して信号線１３５に制御タイミング信号を出力する。ビジー監視回路１４０は、受信インタフェース回路群１１０からクロスバマトリックス回路１３０へ転送されるデータを監視して、各ポート（０〜Ｎ）毎のビジーまたはノットビジー状態を示すビジー情報を、クロスバマトリックス回路１３０から信号線１３５を介して与えられる制御タイミング信号に同期して信号線１４５に出力する。オアゲート群１５０は、クロスバマトリックス回路１３０から出力される送信データとビジー監視回路１４０から出力されるビジー情報をオアする回路である。
【００１１】
入出力ユニット２００は、ネットワークインタフェース回路２１０、バッファメモリ２２０、メモリ制御回路２３０、送信インタフェース回路２４０、受信インタフェース回路２５０、各ポート（０〜Ｎ）対応の送信キュー制御回路群２６０、ビジー情報保持回路２７０、アービトレーション制御回路２８０、及び、オアゲート２９０などで構成される。ネットワークインタフェース回路２１０は、当該入出力ユニット２００に接続されるネットワーク３００とデータの送受信を行う。また、該ネットワークインタフェース回路２１０は、ネットワーク３００からデータを受信すると、該データの送信先情報から、信号線２１５を介して送信キュー制御回路群２６０の該当ポートの制御回路に対して送信キューの追加要求を指示する。バッファメモリ２２０は、ネットワーク３００からの受信データあるいはネットワーク３００への送信データを格納する。メモリ制御回路２３０は、バッファメモリ２２０のデータの読み書きを制御する。送信インタフェース回路２４０は、メモリ制御回路２３０によりバッファメモリ２２０から読み出されたデータをクロスバスイッチユニット１００へ転送する。受信インタフェース回路２５０は、クロスバスイッチユニット１００からのデータをメモリ制御回路２３０へ転送し、また、ビジー情報をビシー情報保持回路２７０へ転送する。送信キュー制御回路群２６０は、各ポート（０〜Ｎ）ごとにデータ転送制御情報
（データヘッダ）をキューイングして、それぞれ信号線群２６１を介してアービトレーション制御回路２８０に送信要求を出し、また、アービトレーション制御回路２８０から信号線群２６２を介して送信許可を受け取る。該送信キュー制御回路群２００では、アービトレーション制御回路２８０から送信許可を受け取ると、それぞれオアゲート２９０を介してメモリ制御回路２３０へ送信開始を指示する。ビジー情報保持回路２７０は、クロスバスイッチユニット１００から送付されて、受信インタフェース回路群２５０から出力される各ポート（０〜Ｎ）毎のビジーまたはノットビジー状態を示す最新ビジー情報を保持する。アービトレーション制御回路２８０は、送信キュー制御回路群２６０から信号線群２６１を介して各ポート対応の送信要求とビジー情報保持回路２７０からの信号線２７５を介して各ポート毎のビジーまたはノンビジー状態を示すビジー情報とにより、送信要求の許可・不許可を制御する。オアゲート２９０は、送信キュー制御回路群２６０からの送信開始の指示をオアしてメモリ制御回路２３０へあげる回路である。
【００１２】
図３は、クロスバスイッチユニット１００と入出力ユニット２００間の転送データのフォーマットを示す。転送データはヘッダ部とネットワークデータ部からなる。ネットワークデータ部はネットワーク３００の送受信データである。一方、ヘッダ部は従来からのデータ転送制御情報に加えてビジー情報のフィールドを有する。データ転送制御情報は、各ポート（０〜Ｎ）毎に送信先指示の有無を示す情報（送信先情報）を含み、ここでは、送信先指示なしの場合は０、送信先指示ありの場合は１が設定されるとする。ビジー情報は、各ポート（０〜Ｎ）毎にビジーまたはノットビジーを示し、ここでは、ノットビジーの場合は０、ビジーの場合は１が設定されるとする。
【００１３】
以下に図１の動作について、図２で、ＬＡＮのネットワーク３００からポートＮo.０の入出力ユニット２００に入力したデータを、クロスバスイッチユニット１００を経由してポートＮo.Ｎの入出力ユニット２００からＷＡＮのネットワーク３００へ出力する場合を例に詳述する。
【００１４】
ＬＡＮのネットワーク３００からのデータは、入出力ユニット（ポートＮo.０）２００にて、ネットワークインタフェース回路２１０を介してバッファメモリ２２０にバッファリングされる。同時に、該データの送信先情報により、本例ではネットワークインタフェース回路２１０から信号線２１５を介してポートＮo.Ｎの送信キュー制御回路２６０に送信キューが追加される。ポートＮo.Ｎの送信キュー制御回路２６０は、送信キューの追加により、信号線２６１を介して送信要求をアービトレーション制御回路２８０に出す。アービトレーション制御回路２８０では、このポートＮo.Ｎからの送信要求と他のポートの送信キュー制御回路群からの送信要求に対する許可を、ビジー情報保持回路２７０のビジー情報をもとに制御する。具体的には、ビジー情報保持回路２７０のビジー情報が、ポートＮo.Ｎのビジーを示していれば、ポートＮo.Ｎ以外の送信要求を優先して許可し、ポートＮo.Ｎのノンビジーを示していれば、該ポートＮo.Ｎを含めてノンビジーのポートの送信要求について均等な条件で許可する。ここでは、現在、ビジー情報保持回路２７０のビジー情報がポートＮo.Ｎのノンビジーを示し、アービトレーション制御回路２８０は、ポートＮo.Ｎの送信キュー制御回路２６０の送信要求を許可し、該ポートＮo.Ｎの送信キュー制御回路に送信許可が返ってきたとする。これにより、ポートＮo.Ｎの送信キュー制御回路２６０は、オアゲート２９０を介して送信開始をメモリ制御回路２３０に要求する。メモリ制御回路２３０は、バッファメモリ２２０から転送先ポートＮo.Ｎのデータ（ネットワークデータ本体）を読み出し、該データに、図３のフォーマットでデータ転送制御情報の送信先情報がＮ＝１、ビジー情報はオール不定のヘッダ部を付加し、送信インタフェース２４０を介してクロスバスイッチユニット１００に出力する。
【００１５】
クロスバスイッチユニット１００では、入出力ユニット（ポートＮo.０）２００からのデータを受信インタフェース回路（ポートＮo.０）１１０で受信してクロスバマトリックス回路１３０に上げる。クロスバマトリックス回路１３０は、該データのデータ転送制御情報に含まれる送信先情報がＮ＝１であることから、該データをポートＮo.Ｎに出力する。一方、ビジー監視回路１４０は、ポートＮo.０〜ポートＮo.Ｎの各受信インタフェース回路１１０からクロスバマトリックス回路１３０へ転送されるデータを監視して、そのデータ転送制御情報に含まれる送信先情報から、各ポート（０〜Ｎ）毎のビジーまたはノンビジー状態を示すビジー情報を組み立て、クロスバマトリックス回路１３０から信号線１３５を介して与えられる制御タイミング信号に同期して信号線１４５に出力する。本例では、ポートＮo.０の受信インタフェース回路１１０からクロスバマトリックス回路１３０へ転送されるデータの送信先情報がＮ＝１であることから、ビジー監視回路１４０では、Ｎ＝１（ポートＮがビジー）のビジー情報を信号線１４５に出力する。オアゲート群１５０は、クロスバマトリックス回路１３０から出力されるデータとビジー監視回路１４０から出力されるビジー情報とをオアし（即ち、データヘッダ部のビジー情報フィールドにビジー情報を挿入）、送信インタフェース回路群１２０を介して各入出力ユニット（ポートＮo.０〜Ｎ）２００に転送する。なお、オアゲート群１５０では、当該ポート宛のデータが存在しない場合には、ビジー監視回路１４０から出力されるビジー情報だけを送信インタフェース回路群１２０を介して入出力ユニット群２００に転送する。
【００１６】
各入出力ユニット２００では、クロスバスイッチユニット１００からのデータをそれぞれ受信インタフェース回路２５０で受信してメモリ制御回路２３０に転送するとともに、ビジー情報をビジー情報保持回路２７０にて保持する。本例の場合、ポートＮo.Ｎがビジーであることを示すビジー情報がそれぞれビジー情報保持回路２７０に保持される。これにより、アービトレーション制御回路２８０では、送信キュー制御回路群２６０からの新たな送信要求について、ポートＮo.Ｎ以外の送信要求を優先して許可するようになる。一方、メモリ制御回路２３０は、受信インタフェース回路２５０から転送されたデータについて、そのネットワークデータ部をバッファメモリ２２０に書き込み、これをネットワークインタフェース回路２１０が読み出してネットワーク３００に送出する。本例の場合、ポートＮo.Ｎの入出力ユニット２００が、ＷＡＮのネットワーク３００へデータを送出する。
【００１７】
なお、所定ポートへのデータ転送が終了した時及びデータ転送が無いアイドルの時、クロスバマトリックス回路１３０からの信号線１３５を介して制御タイミング信号等によって、ビジー監視回路１４０はノンビジーの内容のビジー情報を信号線１４５からオアゲート群１５０に出力する。これにより、各入出力ユニット２００内のビジー情報保持回路２７０の内容を、ノンビジーとすることができる。
【００１８】
以上、実施の形態では、クロスバスイッチユニットから入出力ユニットへのデータ転送の際に、ビジー情報をデータに挿入して送付するとしたが、データ転送とは独立に、ビジー情報のみを一定時間毎に送付することでもよく、この場合は、クロスバマトリックス回路１３０からビジー監視回路１４０への制御タイミング信号は不要であるため、クロスバスイッチユニット１００の構成が簡単化できる。
【００１９】
【発明の効果】
本発明によれば、クロスバスイッチを用いたネットワーク装置において、特定の送信先に複数の入出力ユニットから同時にデータ転送の要求が発生した時、データ転送を実行する前、すなわちクロスバスイッチにデータを出力する前に送信先の輻輳状態を検出し、輻輳状態にない送信先のデータを優先して選択することができるため、クロスバスイッチを介したデータ転送の効率の向上を図ることが可能になる。
【図面の簡単な説明】
【図１】本発明のネットワーク装置の一実施の形態を示す詳細ブロック図である。
【図２】本発明が対象とするネットワーク装置の概略ブロック図である。
【図３】本発明による転送データのフォーマット例を示す図である。
【符号の説明】
１０  ネットワーク装置
１００  クロスバスイッチユニット
１１０  受信インタフェース回路群
１２０  送信インタフェース回路群
１３０  クロスバマトリックス回路
１４０  ビジー監視回路
１５０  オアゲート群
２００  入出力ユニット
２１０  ネットワークインタフェース回路
２２０  バッファメモリ
２３０  メモリ制御回路
２４０  送信インタフェース回路
２５０  受信インタフェース回路
２６０  送信キュー制御回路群
２７０  ビジー情報保持回路
２８０  アービトレーション制御回路
２９０  オアゲート
【図１】
0004014061.tif 000002
【図２】
0004014061.tif 000003
【図３】
0004014061.tif 000004