説明

パケット・データの同期化された組合せの方法、装置、およびシステム

【課題】少なくとも共通の端末宛のデータ・パケットの待ち時間を減らし、使用可能なシステム帯域幅の使用を改善する手段を提供すること。
【解決手段】ネットワーク内でのパケット・データの同期化された組合せの方法、装置、およびシステムに、所定の時間期間中に受信されたデータ・パケットを、受信されたデータ・パケットがあてられたネットワークの通信デバイスに従ってグループにソートすることが含まれる。めいめいの通信デバイス宛のグループのそれぞれのデータ・パケットは、それぞれ、タイム・アラインされ、直交して組み合わされる。特定の通信デバイスのそれぞれ宛のめいめいの組み合わされたデータ・パケットは、その後、単一のヘッダを使用し、実質的に圧縮されたフォーマットで所期のデバイスに送信される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ通信の分野に関し、具体的には、パケット・ネットワークでのデータの同期化された組合せに関する。
【背景技術】
【0002】
ネットワークは、複数のワークステーション、コンピュータ、または他の機器(下では集合的に「コンピュータ」)が互いに通信できるようにする通信設備である。ネットワークの諸部分に、ハードウェアおよびソフトウェア、たとえばコンピュータまたはステーション(個別に、1つまたは複数の処理ユニット、ランダム・アクセス・メモリ、および永続メモリを含むことができる)、インターフェース・コンポーネント、それらを接続するのに使用されるケーブルまたは光ファイバ、ならびにネットワークへのアクセスおよびネットワークを介する情報の流れを管理するソフトウェアが含まれる。ネットワーク内では、ネットワーク・アーキテクチャによって、コンピュータおよび他の機器ならびにソフトウェアが厳守しなければならないプロトコル、メッセージ・フォーマット、および他の標準規格が定義される。
【0003】
パケット・ネットワークでのデータの物理的伝送は、通常は、ネットワークがクリアになるまで伝送を遅延させるキャリア・センスを使用して確実にされる。短く言うと、送信するステーション(たとえばコンピュータまたはユーザ)は、たとえば媒体が空いているかどうかを知るために、送信の前に伝送媒体(たとえばケーブル)をリスンまたは監視して、別のステーション(たとえばコンピュータまたはユーザ)が、現在メッセージを伝送しているかどうかを判定する。たとえば、媒体アクセス管理は、伝送媒体(またはキャリア)が現在使用中であるかどうかを判定する。媒体が使用中でない場合に、データ・フレームが伝送について承認される。フレームの伝送が開始された後であっても、キャリアは監視される。キャリアがビジーである間に、キャリアは、他のステーションが送信しなくなるまで、継続的に監視される。他のステーションが送信していないと判定された後に、伝送を開始する前にネットワークがクリアになるために、指定されたランダムな時間期間が許容される。
【0004】
しかし、送信すべきメッセージを有する他のステーションのすべてが、同時にリスンし、送信媒体が静かに見えると認識し、たとえば共通のステーションへ、メッセージを同時に送信し始める場合がある。その結果は、衝突と誤ったメッセージである。信号衝突が検出される場合に、受信側ステーションは、誤った伝送を無視し、送信側ステーションは、メッセージの送信を即座に停止し、媒体を介してジャミング・シグナルを送信する。衝突の次に、各送信側ステーションは、キャリアがクリアになるためのランダムなバックオフ遅延時間期間だけ待った後に再送信を試みる。したがって、送信するステーションは、衝突が発生しなかったことを保証するのに十分に長くリスンしなければならない。しかし、そのようなシステムは、データ・パケットの配送に関する長い待ち時間をもたらす可能性があり、使用可能なシステム帯域幅を最適に使用しない。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】米国特許第5757767号明細書
【発明の概要】
【発明が解決しようとする課題】
【0006】
当技術分野で必要なものは、少なくとも共通の端末宛のデータ・パケットの待ち時間を減らし、使用可能なシステム帯域幅の使用を改善する手段である。
【課題を解決するための手段】
【0007】
本発明は、共通の受信ステーション宛のパケット・データの同期化された組合せの方法、装置、およびシステムを提供することによって、従来技術の不足を解決する。
本発明の一実施形態で、共通の通信デバイス宛のデータを組み合わせる、パケット・ネットワークにおける方法に、所定の時間期間中に受信されたデータ・パケットを、受信されたデータ・パケットがあてられたネットワークの通信デバイスに従ってグループにソートすることが含まれる。この方法には、さらに、各グループのデータ・パケットをそれぞれタイム・アラインし、各グループのソートされタイム・アラインされたデータ・パケットを直交して組み合わせることが含まれる。特定の通信デバイス宛の組み合わされたデータ・パケットが、その後、単一のヘッダを使用し、実質的に圧縮されたフォーマットでデバイスに送信される。具体的に言うと、組み合わされたデータ・パケットの伝送に必要な帯域幅は、特定の通信デバイス宛のデータ・パケットのめいめいのグループ内で最大のデータ・パケットの送信に必要な帯域幅と実質的に等しい。
【0008】
本発明の教示は、添付図面と共に下の詳細な説明を検討することによってすぐに理解できる。
理解を容易にするために、同一の符号が、可能な場合に複数の図面に共通する同一の要素を示すのに使用される。
【図面の簡単な説明】
【0009】
【図1】本発明の一実施形態による同期化されたパケットの組合せおよびルーティングを含むパケット・ネットワークを示す高水準ブロック図である。
【図2】図1のパケット・ネットワークのコンバイナ・スイッチでの使用に適するネットワーク・インターフェース・コントローラの実施形態を示す高水準ブロック図である。
【図3】図1のパケット・ネットワークのコンバイナ・スイッチを介する第2、第3、および第4の端末のそれぞれから第1端末へのデータ・パケットの伝送を示すタイミング図である。
【図4】図1のパケット・ネットワークでの使用に適する新規のネットワーク・インターフェース・コントローラを有するコンバイナ・スイッチの代替実施形態を示す高水準ブロック図である。
【図5】本発明の代替実施形態による、ネットワーク端末での同期化されたパケットの組合せおよびルーティングを含むパケット・ネットワークを示す高水準ブロック図である。
【図6】図5のパケット・ネットワークの端末のそれぞれでの使用に適するネットワーク・インターフェース・コントローラの実施形態を示す高水準ブロック図である。
【発明を実施するための形態】
【0010】
本発明は、共通の通信デバイス宛のサービス、たとえばデータ・パケットの、同期化された組合せの方法、装置、およびシステムを有利に提供する。本発明のさまざまな実施形態を、特定の端末宛の特定のパケット・ネットワーク内のデータ・パケットの組合せに関して本明細書で説明するが、本発明の特定の実施形態を、本発明の範囲を制限するものとして扱ってはならない。本発明の概念を、通信デバイス宛のサービスの同期化および組合せに関して実質的にすべてのネットワークで有利に適用できることを、本発明の教示を知らされた当業者は諒解するであろう。
【0011】
図1に、本発明の一実施形態による同期化されたパケットの組合せおよびルーティングを含むパケット・ネットワークの高水準ブロック図を示す。図1のパケット・ネットワーク100には、例として、4つの端末(たとえばイーサネット(登録商標)端末)110から110と、本発明によるコンバイナ・スイッチ120の一実施形態が示されている。図1のパケット・ネットワーク100では、コンバイナ・スイッチ120に、さらに、本発明の一実施形態による新規のネットワーク・インターフェース・コントローラ125が含まれる。
【0012】
図2に、図1のパケット・ネットワーク100のコンバイナ・スイッチ120での使用に適するネットワーク・インターフェース・コントローラの実施形態の高水準ブロック図を示す。図2のネットワーク・インターフェース・コントローラ125には、例として、受信部分および送信部分が含まれる。図2のネットワーク・インターフェース・コントローラ125の受信部分には、例として、受信MAC 210、宛先アドレス・ルックアップ・テーブル(たとえばフィルタ)215、受信データ先入れ先出し(FIFO)メモリ220、および受信タイマ225が含まれる。図2のネットワーク・インターフェース・コントローラ125の送信部分には、例として、送信データ先入れ先出し(FIFO)メモリ230、コンバイナ回路235、および送信MAC 240が含まれる。図2のネットワーク・インターフェース・コントローラ125には、さらに、バッファ・マネージャ/クロスバ250およびオプションのビット・スケーリング回路260が含まれる。
【0013】
本発明の概念によれば、共通の端末宛の複数の端末からのデータ・パケットは、単一のヘッダと共に、組み合わされたフォーマットで共通の端末に通信されるように直交して組み合わされる。たとえば、図1のパケット・ネットワーク100では、第2、第3、および第4の端末110から110のそれぞれが、第1端末110宛のデータ・パケットをコンバイナ・スイッチ120に送信する。図3に、コンバイナ・スイッチ120を介する第2、第3、および第4の端末110から110のそれぞれから第1端末110へのデータ・パケットの伝送を示すタイミング図を示す。第2、第3、および第4の端末110から110からの第1端末110宛のデータ・パケットのそれぞれに、例として、全体で60バイトと等しいMACヘッダ部分およびデータ・セクションが含まれる。図3からわかるように、第2、第3、および第4の端末110から110のそれぞれからのデータ・パケットは、たとえば3つの端末110から110の伝送媒体の待ち時間の差のゆえに、同時にコンバイナ・スイッチ120に到着しない可能性がある。したがって、データ・パケットが、所期の端末、たとえば端末110のスイッチ120によって受信される時に、受信端末、たとえば第1端末110宛の他のデータ・パケットがコンバイナ・スイッチ120に達するために、受信されたデータが、所定の時間期間だけコンバイナ・スイッチ120内でバッファリングされる。
【0014】
具体的に言うと、データ・パケットが、たとえば第2端末110から、たとえば第1端末110宛に送信される時に、そのデータ・パケットは、コンバイナ・スイッチ120を介してルーティングされる。コンバイナ・スイッチ120のネットワーク・インターフェース・コントローラ125の受信MAC 210は、MACヘッダからデータ・パケットの宛先を判定し、その後、そのデータ・パケットを宛先アドレス・ルックアップ・フィルタ215に通信する。宛先アドレス・ルックアップ・フィルタ215内では、受信されたパケットの宛先アドレスが、受信されたデータ・パケットを受信データFIFO 220の特定の位置に置くのに使用される。受信データFIFO 220の各位置は、その後、受信されたデータ・パケットを送信データFIFO 230(下で説明する)の対応する位置に切り替えるのに使用される。受信されたデータ・パケットは、受信タイマ225が満了するまで受信データFIFO 220内で維持される。すなわち、受信タイマ225は、最初のデータ・パケットの受信の時にカウントを開始する(すなわち、リセットされる)。受信タイマ225は、所定の時間の間カウントを継続し、その間に、他のデータ・パケットをコンバイナ・スイッチ120によって受信することができる。受信タイマ225の値は、ユーザがプログラムすることができ、あるいは、受信されたデータ・パケットのヘッダ内で見つかる情報によって動的に制御することができる。たとえば共通端末宛の同期化されたデータ・パケットがコンバイナ・スイッチ120に達することを可能にする所定の時間だけカウントするように受信タイマ225を構成するためのタイミング情報が、たとえば、受信されたデータ・パケットのヘッダに含まれる場合がある。
【0015】
受信タイマ225のカウント中に、第1端末110宛の第2データ・パケットが、たとえば第3端末110から受信される場合に、そのデータ・パケットの宛先、この例では第1端末110が、受信MAC 210によって判定される。やはり、受信されたデータ・パケットは、宛先アドレス・ルックアップ・フィルタ215に通信される。宛先アドレス・ルックアップ・フィルタ215では、受信されたパケットの宛先アドレスが、この第2の受信されたデータ・パケットを受信データFIFO 220の特定の位置に保管するのに使用される。第2データ・パケットは、2つの受信されたデータ・パケットが、同一の端末、この例では第1端末110宛なので、受信データFIFO 220内で、第1の受信されたデータ・パケットに対応する位置に保管される。同様に、図3を参照すると、第1端末110宛の第3データ・パケットが、たとえば第4端末110から受信される時に、やはり、そのデータ・パケットの宛先、この例では第1端末110が、受信MAC 210によって判定される。受信データ・パケットは、宛先アドレス・ルックアップ・フィルタ215に通信される。宛先アドレス・ルックアップ・フィルタ215では、受信されたデータ・パケットの宛先アドレスが、この第3データ・パケットを受信データFIFO 220の特定の位置に保管するのに使用される。3つのデータ・パケットが、同一の端末、この例では第2端末110宛なので、第3データ・パケットは、受信データFIFO 220内で第1および第2の受信されたデータ端末に対応する位置に保管される。
【0016】
図1のパケット・ネットワーク100では、受信データFIFO 220が、例として、複数のセクションに分割される。受信データFIFO 220のセクションのそれぞれは、送信データFIFO 230のめいめいのセクションに対応するものとすることができる。たとえば、受信タイマ225が満了する時に、受信データFIFO 220の第1セクションに保管されたデータ・パケットが、バッファ・マネージャ/クロスバ250を介して通信され、たとえば送信データFIFO 230の第1セクションに通信され、このセクションは、この例では、第1端末110宛のデータ・パケットの保管に使用される。送信データFIFO 230の第1セクションで維持されるデータ・パケットは、その後、組み合わされ(下で説明する)、所期の端末、この例では第1端末110に単一のデータ・パケットとして送信される。
【0017】
図2では、ネットワーク・インターフェース・コントローラ125が、複数の物理スロットを含む受信データFIFO 220および送信データFIFO 230を含むものとして図示されているが、本発明の代替実施形態では、本発明の受信データFIFO 220および送信データFIFO 230を、ソフトウェアでフォーマットし、制御して、FIFO内のデータ・パケットを、上で説明したように区別可能であるが、必ずしも異なる物理スロットで維持されないように配置することができる。
【0018】
バッファ・マネージャ/クロスバ250は、コンバイナ・スイッチ120へのデータ・パケットの到着の間の待ち時間を除去する。具体的に言うと、バッファ・マネージャ/クロスバ250は、受信されたデータをバッファリングして、コンバイナ・スイッチ120のコンバイナ回路235による後の組合せのためにデータの位相をアラインする。所期の端末に関してコンバイナ・スイッチ120によって受信されたデータ・パケットの間の待ち時間は、受信タイマ225によってカウントでき、バッファ・マネージャ/クロスバ250によって除去できる時間の長さまでに制限されなければならない。
【0019】
たとえば、本発明のさまざまな実施形態で、本発明のコンバイナ・スイッチ120は、同期化されたネットワークで実施される。すなわち、同期化されたネットワーク内では、データの通信がグローバル・タイミング・スケジュールに従って達成されるので、送信されるデータ・パケットの待ち時間は既知である。したがって、特定の端末宛の複数のデータ・パケットの待ち時間は、確定でき、含まれる受信タイマが、宛先端末宛のデータ・パケットの最大待ち時間の後に満了し、含まれるバッファ・マネージャ/クロスバが、受信データFIFO 220内のデータ・パケットが受信タイマ225の満了の後に限って送信データFIFO 230に通信されるようにすることによって、最大の既知の待ち時間までの受信データ・パケットの間の待ち時間を除去するように適合されるように、本発明の受信タイマおよびバッファ・マネージャ/クロスバを構成することができる。
【0020】
図3に戻ると、上で開示したように、受信データFIFO 220の第1セクションに保管された3つのデータ・パケットが、送信データFIFO 230の対応する第1セクションに通信される。保管されたデータ・パケットは、その後、コンバイナ回路235に通信され、そこで、データ・パケットが直交して組み合わされる。直交して組み合わされたデータ・パケットは、共通のMACヘッダを有する単一のパケットとして第1端末110に送信される。具体的に言うと、データ・パケットのそれぞれが、直交エンコードされ、所期の端末、この例では第1端末110に、単一のヘッダと共に送信される。図1のパケット・ネットワーク100のネットワーク・インターフェース・コントローラ125のオプションのビット・スケーリング回路260は、コンバイナ回路235によって組み合わされるビット数を定義するために実施される。
【0021】
本発明の一実施形態で、直交エンコーディング/組合せは、複数のデータ・パケットまたはエンコードされたデータ・パケットを並列に受信し、受信されたデータ・パケットのそれぞれに少なくとも1つの事前に選択された直交関数を適用することによって達成される。これによって、直交的にカバリングされた(orthogonally covered)データ・パケットが作られる。並行データ・パケットは、それぞれ、コンバイナ回路235によって、直交エンコードされ組み合わされた出力データ・ストリームにマッピングされる。本発明の一実施形態では、コンバイナ回路235に、データ・パケットに直交コーディングおよび組合せを適用する高速アダマール変換器(fast Hadamard Transformer)が含まれる。そのようなエンコーディングおよび組合せの手段が、全般的に、その全体を参照によって本明細書に組み込まれている1998年5月26日にゼハビ(Zehavi)に発行された米国特許第5757767号に記載されている。上で本発明のこの実施形態に関して直交組合せの特定の例を開示したが、データ・パケットを直交して組み合わせるさまざまな方法および技法が、当技術分野で既知であり、したがって、そのような既知の方法および技法の実質的にすべてを、本発明の代替実施形態について本発明の概念の中で適用することができる。
【0022】
本発明の原理によるデータ・パケットの同期化された組合せの長所の1つが、所期の端末に関して受信されたさまざまなデータ・パケットをその端末の特定の時間期間中に通信するのに必要な帯域幅の量が減ることである。たとえば、図3からわかるように、第2、第3、および第4の端末110から110によって送信されるめいめいのデータ・パケットのそれぞれに、合計60バイトを含むMACヘッダおよびデータが含まれる。しかし、図3からわかるように、第1端末110に送信される直交して組み合わされたデータ・パケットにも、合計60バイトを含む単一のMACヘッダおよびデータが含まれる。したがって、少なくとも、上で説明した図3の実施形態から、本発明のさまざまな実施形態で、共通の端末について意図された所定の時間間隔中に受信されたデータ・パケットをその端末に送信するのに必要な帯域幅を減らすことが本発明の意図であることが、明白である。さまざまな受信されたデータ・パケットの組合せ中にオーバーフロー状態が発生する場合に、エラー・メッセージが、たとえばシステム・コントローラ(図示せず)またはその代わりにネットワーク・インターフェース・コントローラ125のビット・スケーリング回路260に通信されて、たとえばオーバーフロー状態を訂正するようにビット・スケーリングのレベルを調整するために、オーバーフローが示される。
【0023】
本発明のパケット・ネットワーク100では、異なる端末、たとえば第2端末110のためにコンバイナ・スイッチ120によって、別の端末、上の例では第1端末110宛のデータ・パケットの受信用に構成された受信タイマ225の時間期間中に受信されるデータ・パケットは、共通の端末、たとえば第2端末110宛の他の受信されたデータ・パケットとの後続の可能な組合せおよび伝送のために受信データFIFO 220の別々のセクションに保管することができる。その代わりに、組み合わされないデータ・パケット(すなわち、特定の時間間隔中に組み合わされたデータ・パケットを受け取る端末以外の端末宛の受信されたデータ・パケット)を、普通のプロトコルに従って本発明のコンバイナ・スイッチ120によって処理することができる(すなわち、IPパケット・ネットワークで、組み合わされないデータ・パケットを、普通のイーサネット(登録商標)・プロトコルに従ってネットワーク内で通信することができる)。
【0024】
本発明のさまざまな実施形態で、図1のパケット・ネットワーク100などのネットワークを、本発明のコンバイナ・スイッチによって組み合わされる特定のアドレスを有する特定のデータ・パケットだけについて構成することができる。そのような実施形態では、本発明のコンバイナ・スイッチの宛先アドレス・ルックアップ・テーブルが、所望の組み合わされるアドレスを保管するように構成され、データ・パケットの受信時に、本発明のコンバイナ・スイッチが、上で開示したように受信されたデータ・パケットのヘッダを検査し、上で開示したように所定のアドレスを有するデータ・パケットを組み合わせる。本発明のそのような実施形態では、そのアドレスが宛先アドレス・ルックアップ・テーブルで見つからない受信されたデータ・パケットを、最初の使用可能な機会の間の伝送のために本発明のコンバイナ・スイッチの送信側に実質的に即座に通信することができる。具体的に言うと、本発明の実施形態では、組み合わされないデータ・パケットが、普通のイーサネット(登録商標)・プロトコルに従って本発明のコンバイナ・スイッチによって送信される。
【0025】
図2のネットワーク端末125では、受信データFIFO 220および送信データFIFO 230のセクションの数が、等しいものとして図示されているが、本発明の代替実施形態では、セクションの数を等しくする必要はない。すなわち、本発明の代替実施形態で、特定の端末用の受信データFIFOのセクションに保管されたデータ・パケットを、送信データFIFOの複数のセクションに通信し、保管することができる。同様に、特定の端末用の受信データFIFOの複数のセクションに保管されたデータ・パケットを、送信データFIFOOの単一のセクションに通信し、保管することができる。同様に、特定の端末用の受信データFIFOのセクションに保管されたデータ・パケットを、送信データFIFOの実質的に任意の、必ずしもめいめいの番号のセクションではない1つまたは複数のセクションに通信し、保管することができる。本発明の重要な態様は、特定の端末宛の複数のデータ・パケットを、これらのデータ・パケットを別の端末宛のデータ・パケットから区別可能に保管することである。
【0026】
図2のパケット・ネットワーク100では、本発明のコンバイナ・スイッチの実施形態を、単一の受信MACおよび単一の送信MACを含むものとして図示し、説明したが、本発明の教示を知った当業者は、そのようなコンバイナ・スイッチに実質的に任意の個数および組合せの、上で説明した受信セクションおよび送信セクションを含めることができることを諒解するであろう。たとえば、図4に、本発明による、図1のパケット・ネットワーク100での使用に適する新規のネットワーク・インターフェース・コントローラ425を有するコンバイナ・スイッチ400の代替実施形態の高水準ブロック図を示す。コンバイナ・スイッチ400のネットワーク・インターフェース・コントローラ425には、例として、複数の受信パスを有する受信部分および複数の送信パスを有する送信部分が含まれる。図4のネットワーク・インターフェース・コントローラ425の受信部分に、例として、複数の受信MAC 410から410、複数の宛先アドレス・ルックアップ・テーブル415から415、複数の受信データFIFO 420から420、および複数の受信タイマ422から422が含まれる。図4のネットワーク・インターフェース・コントローラ425の送信部分に、例として、複数の送信データFIFO 430から430、複数のコンバイナ回路435から435、および複数の送信MAC 440から440が含まれる。図4のネットワーク・インターフェース・コントローラ425に、さらに、バッファ・マネージャ/クロスバ450およびオプションのビット・スケーリング回路460から460が含まれる。図4のネットワーク・インターフェース・コントローラ425では、上にリストされたコンポーネントのそれぞれの1つに、ネットワーク・インターフェース・コントローラ425の別々の通信パスが含まれる。
【0027】
本発明の概念によれば、共通の端末宛のコンバイナ・スイッチ400のさまざまな受信MAC 410によって受信された複数の端末からのデータ・パケットは、直交して組み合わされ、単一のヘッダと共に組み合わされたフォーマットで共通の端末に通信される。たとえば、上で説明したように、図1のパケット・ネットワーク100で、第2、第3、および第4の端末110から110のそれぞれが、第1端末110宛のデータ・パケットをコンバイナ・スイッチ120に送信する。上で開示したように、受信されたデータは、受信端末宛の他のデータ・パケットがコンバイナ・スイッチ120に到達するための所定の時間期間の間コンバイナ・スイッチ120でバッファリングされる。図4のコンバイナ・スイッチ400およびネットワーク・インターフェース・コントローラ425は、実質的に上で説明したコンバイナ・スイッチ120およびネットワーク・インターフェース・コントローラ125と同一の形で動作するが、図4のコンバイナ・スイッチ400は、特定の端末宛のデータを異なる入力(受信MAC)を介して受信できることが異なる。
【0028】
具体的に言うと、データ・パケットが、たとえば第2、第3、および第4の端末110から110から、コンバイナ・スイッチ400の異なる入力パスで受信される時に、ネットワーク・インターフェース・コントローラ425の受信パスのそれぞれの受信MAC 410は、受信されたデータ・パケットのそれぞれのめいめいのMACヘッダを使用して、データ・パケットの宛先、この例では第1端末110を判定する。データ・パケットのそれぞれは、その後、めいめいの受信器パスで、めいめいの宛先アドレス・ルックアップ・テーブル415に通信される。宛先アドレス・ルックアップ・テーブル415では、受信されたデータ・パケットの宛先アドレスが、受信されたデータ・パケットをめいめいの受信データFIFO 420の特定の位置に置くのに使用される。めいめいの受信データFIFO 420のその特定の位置は、その後、第1端末110宛の受信されたデータ・パケットを、第1端末110宛のデータ・パケットを保管するように構成されたネットワーク・インターフェース・コントローラ425の送信部分に配置された送信データFIFO 430の対応する位置に切り替えるのに使用される。しかし、上で説明したように、受信されたデータ・パケットは、上で説明したようにデータ・パケットを第1端末110のために受信する特定の時間を可能にするように構成された受信タイマ422の満了まで、めいめいの受信データFIFO 420内で維持される。たとえば、第1端末110用のネットワーク・インターフェース・コントローラ425の第1受信MAC 410、第2受信MAC 410、および第3受信MAC 410によって受信されたパケットは、それぞれ、第1宛先ルックアップ・テーブル415、第2宛先ルックアップ・テーブル415、および第3宛先ルックアップ・テーブル415に通信される。めいめいの宛先アドレス・ルックアップ・テーブル415のそれぞれで、受信されたデータ・パケットの宛先アドレスが、めいめいの受信データFIFO、この例では受信データFIFO 420、420、および420の特定の位置に受信されたパケットを置くのに使用される。めいめいの受信データFIFO 420のその特定の位置は、その後、第1端末110宛の受信されたデータ・パケットを送信データFIFO、たとえば送信データFIFO 430の対応する位置に切り替えるのに使用される。図4に示された例では、第1送信データFIFO 430が、第1コンバイナ回路435によって組み合わされ、第1端末110に送信されるデータ・パケットを保管するのに使用される。
【0029】
受信タイマ422のカウント中に、第1端末110以外の端末、たとえば第2端末110宛のデータ・パケットが、たとえば第1受信MAC 410によって受信される場合に、受信されたデータ・パケットは、第1宛先ルックアップ・テーブル415に通信される。第1宛先アドレス・ルックアップ・テーブル415内では、受信されたデータ・パケットの宛先アドレスが、第2端末110のために受信されたこのデータ・パケットを第1パスの受信データFIFO 420の第2セクションに保管するのに使用される。受信データFIFO 420の第2セクションは、この例で、第2端末110宛のデータ・パケットを保管するのに使用される。同様に、第3端末110宛の第1パスで受信されたデータ・パケットは、第1パスの受信データFIFO 420の第3セクションに保管され、以下同様である。ネットワーク・インターフェース・コントローラ425の他のパスで受信されたデータ・パケットは、同様に受信データFIFOのめいめいのセクションに保管され、上で説明したようにめいめいの送信データFIFOに送られて、めいめいのコンバイナ回路によって組み合わされ、所期の端末に送信される。たとえば、第1パスの送信データFIFO 430を、組み合わされ第1端末110に送られるデータ・パケットを保管するように構成することができ、第2パスの送信データFIFO 430を、組み合わされ第2端末110に送られるデータ・パケットを保管するように構成することができ、以下同様である。ネットワーク・インターフェース・コントローラ425では、受信データFIFO 420が、例として、複数のセクションに分割される。受信データFIFO 420のセクションのそれぞれは、めいめいの端末にデータを送信するためのめいめいの送信データFIFO 430に対応するものとすることができる。
【0030】
図4では、ネットワーク・インターフェース・コントローラ425が、複数の物理スロットを含む受信データFIFO 420および送信データFIFO 430を含むものとして図示されているが、本発明の代替実施形態では、本発明の受信データFIFO 420および送信データFIFO 430を、ソフトウェアでフォーマットし、制御して、FIFO内のデータ・パケットを、上で説明したように区別可能であるが、必ずしも異なる物理スロットで維持されないように配置することができる。
【0031】
本発明の代替実施形態では、図2および図4のネットワーク・インターフェース・コントローラなどのネットワーク・インターフェース・コントローラを、ネットワーク端末内で実施して、本発明によるデータ・パケットの組合せおよび送信を実行することができる。たとえば、図5に、本発明の代替実施形態による、ネットワーク端末での同期化されたパケットの組合せおよびルーティングを含むパケット・ネットワークの高水準ブロック図を示す。図5のパケット・ネットワーク500には、例として、4つの端末(例としてイーサネット端末)510から510およびノンブロッキング・スイッチ520が含まれる。図5のパケット・ネットワーク500では、端末510から510のそれぞれに、さらに、本発明の実施形態によるめいめいのネットワーク・インターフェース・コントローラ525から525が含まれる。
【0032】
図6に、図5のパケット・ネットワーク500の端末510から510のそれぞれでの使用に適するネットワーク・インターフェース・コントローラ525の実施形態の高水準ブロック図を示す。端末510から510のインターフェース・コントローラ525から525のそれぞれは、実質的に同一なので、図6のネットワーク・インターフェース・コントローラ525は、図5のパケット・ネットワークの端末510から510のインターフェース・コントローラ525から525のそれぞれを表すと考えなければならない。図6のネットワーク・インターフェース・コントローラ525には、例として、受信部分と送信部分が含まれる。図6のネットワーク・インターフェース・コントローラ525の受信部分には、例として、受信MAC 610、受信バッファ・マネージャ/DMA 605、受信データFIFO 620、宛先アドレス・ルックアップ・テーブル615、および受信フィルタ622が含まれる。図6のネットワーク・インターフェース・コントローラ525の送信部分には、例として、送信データFIFO 630、送信バッファ・マネージャ/DMA 632、コンバイナ回路635、および送信MAC 640が含まれる。図6のネットワーク・インターフェース・コントローラ525には、さらに、カウンタ625およびオプションのビット・スケーリング回路660が含まれる。
【0033】
図5のパケット・ネットワークの端末510から510のネットワーク・インターフェース・コントローラ525から525は、図1のパケット・ネットワーク100のコンバイナ・スイッチ120のネットワーク・インターフェース・コントローラ125と実質的に同一の形で機能する。具体的に言うと、本発明の概念によれば、共通端末宛の端末によって受信されるデータ・パケットが、直交して組み合わされ、単一のヘッダと共に組み合わされたフォーマットで共通端末に通信される。たとえば、図5のパケット・ネットワーク500では、たとえば第1端末510によって受信された、たとえば第2端末510宛のデータ・パケットが、受信MAC 610によって受け取られる。第1端末510のネットワーク・インターフェース・コントローラ525の受信MAC 610は、データ・パケットの宛先をMACヘッダから判定し、その後、データ・パケットを宛先アドレス・ルックアップ・テーブル615に通信する。宛先アドレス・ルックアップ・テーブル615では、受信されたデータ・パケットの宛先アドレスが、受信されたデータ・パケットを受信データFIFO 620の特定の位置に置くのに使用される。上で開示したように、受信データFIFO 620の各セクションは、その後、受信されたデータ・パケットを送信データFIFO 630の対応する位置に切り替えるのに使用される。
【0034】
受信されたデータ・パケットは、カウンタ625による所定の回数のカウントの満了まで、受信データFIFO 620内で維持される。すなわち、カウンタ625は、最初のデータ・パケットの受信時にカウントを開始する(すなわちリセットされる)。カウンタ625は、所定の回数のカウントまでカウントを継続し、その間に、他のデータ・パケットを第1端末510によって受信することができる。カウンタ625の値は、ユーザがプログラムすることができ、あるいは、受信されたデータ・パケットのヘッダにある情報によって動的に制御することができる。たとえば共通端末宛の同期化されたデータ・パケットが第1端末510に達することを可能にする所定の回数のカウントをカウントするようにカウンタ625を構成するためのタイミング情報が、たとえば、受信されたデータ・パケットのヘッダに含まれる場合がある。
【0035】
カウンタ625のカウント中に、第2端末510宛の第2データ・パケットが第1端末510によって受信される場合に、このデータ・パケットの宛先が、やはり受信MAC 610によって判定される。やはり、受信されたデータ・パケットは、宛先アドレス・ルックアップ・テーブル615に通信される。宛先アドレス・ルックアップ・テーブル615では、受信されたデータ・パケットの宛先アドレスが、この第2の受信されたデータ・パケットを受信データFIFO 620の特定のセクションに保管するのに使用される。第2データ・パケットは、第1の受信されたデータ・パケットに対応する受信データFIFO 620内の位置に保管される。というのは、この2つの受信されたデータ・パケットが、同一の端末、この例では第2端末510宛であるからである。しかし、たとえば第1端末510によって受信された、別の共通端末宛のデータ・パケットは、たとえば、送信デバイスの伝送媒体の待ち時間の差のゆえに、同一の時刻に第1端末510に到着しない場合がある。したがって、データ・パケットが、所期の共通端末、たとえば第2端末510のために第1端末510によって受信される時に、受信されたデータは、共通の端末、たとえば第2端末510宛の他のデータ・パケットが第1端末510によって受信されるようにするために、所定の時間(すなわち、指定された回数のカウント)だけ受信データFIFO 620内でバッファリングされる。
【0036】
本発明のさまざまな実施形態で、本発明のネットワーク・インターフェース・コントローラ525およびネットワーク端末は、同期化されたネットワーク内で実施される。すなわち、同期化されたネットワーク内では、データの通信がグローバル・タイミング・スケジュールに従って達成されるので、送信されるデータ・パケットの待ち時間が既知である。したがって、特定の端末宛複数のデータ・パケットの待ち時間は、確定でき、含まれるカウント数が、宛先端末宛のデータ・パケットの最大待ち時間を表すように構成され、バッファ時間が、最大の既知の待ち時間までの受信されるデータ・パケットの間の待ち時間を除去するように構成されるように、本発明の端末の受信データFIFOのカウンタの所定のカウントの数およびバッファ時間を構成することができる。
【0037】
図5のパケット・ネットワーク500では、受信データFIFO 620が、例として、複数のセクションに分割される。受信データFIFO 620のセクションのそれぞれは、送信データFIFO 630のめいめいのセクションに対応するものとすることができる。カウントの所定の数が、カウンタ625によってカウントされた時に、受信データFIFO 620の第1セクションに保管されたデータ・パケットが、受信バッファ・マネージャ/DMA 605によってコンバイナ回路635に通信される。コンバイナ回路635では、データ・パケットが、上で説明したように直交して組み合わされる。ネットワーク・インターフェース・コントローラ525のオプションのビット・スケーリング回路660は、コンバイナ回路635によって組み合わされるビット数を定義するために実施される。
【0038】
組合せの後に、たとえば第2端末510宛のめいめいの受信されたデータ・パケットが、送信データFIFO 630の対応するセクションに通信される。たとえば、組み合わされた後に、データ・パケットは、たとえば送信データFIFO 630の第2セクションに保管され、この第2セクションは、この例では、第2端末510宛のデータ・パケットを保管するのに使用される。組み合わされたデータ・パケットは、その後、第2端末510に送信される。図5のパケット・ネットワーク500の端末510から510のそれぞれは、めいめいの受信されたデータ・パケットを共通端末に送信するために、同一の形で動作する。
【0039】
図6では、ネットワーク・インターフェース・コントローラ525が、複数の物理スロットを含む受信データFIFO 620および送信データFIFO 630を含むものとして示されているが、本発明の代替実施形態では、本発明の受信データFIFO 620および送信データFIFO 630を、ソフトウェアでフォーマットし、制御して、FIFO内のデータ・パケットを、上で説明したように区別可能であるが、必ずしも異なる物理スロットで維持されないように配置することができる。
【0040】
本発明のさまざまな実施形態では、図5のパケット・ネットワーク500などのネットワークを、本発明のコンバイナ・スイッチによって組み合わされる特定のアドレスを有する特定のデータ・パケットだけについて構成することができる。そのような実施形態では、本発明のネットワーク端末の宛先アドレス・ルックアップ・テーブルが、組み合わされる所望のアドレスを保管するように構成され、データ・パケットの受信時に、受信する端末が、上で開示されたように受信されたデータ・パケットのヘッダを検査し、上で開示されたように所定のアドレスを有するデータ・パケットを組み合わせる。本発明のそのような実施形態では、アドレスが宛先アドレス・ルックアップ・テーブルで見つからない受信されたデータ・パケットが、普通のイーサネット(登録商標)・プロトコルに従って、端末によって通信される。そのようなデータ・パケットは、普通のネットワーク・プロトコルによって通信されるパケットとして受信フィルタ622によって検出され、そのようなデータ用の受信データFIFO 620のセクション、例としてIP受信データFIFOと示されたセクションに保管される。
【0041】
前述は、本発明のさまざまな実施形態を対象とするが、本発明の他のおよびさらなる実施形態を、本発明の基本的な範囲から逸脱せずに考案することができる。したがって、本発明の範囲は、請求項に従って判定されなければならない。

【特許請求の範囲】
【請求項1】
通信ネットワークにおいて、共通通信デバイス宛のデータ・パケットを組み合わせる方法であって、
所定の時間期間中に受信されたデータ・パケットを、前記受信されたデータ・パケットがあてられた前記ネットワークの通信デバイスに従うグループにソートすることと、
前記グループのそれぞれの前記データ・パケットをそれぞれタイム・アラインメントすることと、
各グループ内の前記ソートされタイム・アラインされたデータ・パケットを直交して組み合わせることとを含む方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2011−130516(P2011−130516A)
【公開日】平成23年6月30日(2011.6.30)
【国際特許分類】
【出願番号】特願2011−77057(P2011−77057)
【出願日】平成23年3月31日(2011.3.31)
【分割の表示】特願2005−66768(P2005−66768)の分割
【原出願日】平成17年3月10日(2005.3.10)
【出願人】(596092698)アルカテル−ルーセント ユーエスエー インコーポレーテッド (965)
【Fターム(参考)】