(57)【特許請求の範囲】
【請求項１】
複数の通信インターフェイスを備えたデータ送信装置により使用されるマッピングの生成方法であって、
ａ）前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定する第１のマッピングを受信し、ここで、少なくとも１つの次のホップ・インターフェイスは１組の論理インターフェイスに属する、
ｂ）前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素のための第２の次のホップ・インターフェイスを特定する第２のマッピングを受信し、ここで、少なくとも１つの第２の次のホップ・インターフェイスは、前記複数の通信インターフェイスに属する、
ｃ）前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの各部を、第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換することによって前記第１と第２のマッピングから統合マッピングを生成する方法。
【請求項２】
前記第１のマッピングにより特定された少なくとも１つの他の次のホップ・インターフェイスは、前記複数の通信インターフェイスに属し、前記統合マッピングの生成は、更に、前記複数の通信インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの各部を保持することを含む、請求項１記載の方法。
【請求項３】
前記統合マッピングをメモリに記憶することを更に含む、請求項１記載の方法。
【請求項４】
ｄ）前記通信インターフェイスの１つでデータ要素を受信し、
ｅ）前記通信インターフェイスで受信された各データ要素に関連する次のホップ・インターフェイスを決定するために前記統合マッピングにアクセスし、
ｆ）ｅ）で決定された前記次のホップ・インターフェイスに前記受信されたデータ要素を送信する、ことを更に含む請求項３記載の方法。
【請求項５】
前記受信したデータ要素の少なくとも１つの特性を決定することをさらに含み、前記統合マッピングにアクセスすることは、前記受信したデータ要素の前記少なくとも１つの特性に関連した次のホップ・インターフェイスを特定する前記統合マッピングの一部を識別することを含む、請求項４記載の方法。
【請求項６】
各受信されたデータ要素は、ソース・アドレスに関連付けられており、特定の受信されたデータ要素のために前記統合マッピングにより特定された前記次のホップ・インターフェイスは前記特定の受信されたデータ要素に関連付けられたソース・アドレスの関数である、請求項１記載の方法。
【請求項７】
各受信されたデータ要素は、ソース・アドレスに関連付けられており、特定の受信されたデータ要素のために前記統合マッピングにより特定された前記次のホップ・インターフェイスは前記特定の受信されたデータ要素に関連付けられたソース・アドレスの関数である、請求項１記載の方法。
【請求項８】
各受信されたデータ要素は、行き先アドレスに関連付けられており、特定の受信されたデータ要素のために前記統合マッピングにより特定された前記次のホップ・インターフェイスは前記特定の受信されたデータ要素に関連付けられた行き先アドレスの関数である、請求項１記載の方法。
【請求項９】
各受信されたデータ要素は、優先レベルに関連付けられており、特定の受信されたデータ要素のために前記統合マッピングにより特定された前記次のホップ・インターフェイスは前記特定の受信されたデータ要素に関連付けられた優先レベルの関数である、請求項１記載の方法。
【請求項１０】
各受信されたデータ要素は、年齢に関連付けられており、特定の受信されたデータ要素のために前記統合マッピングにより特定された前記次のホップ・インターフェイスは前記特定の受信されたデータ要素に関連付けられた年齢の関数である、請求項１記載の方法。
【請求項１１】
特定の受信されたデータ要素のために前記統合マッピングにより特定された前記次のホップ・インターフェイスは前記特定の受信されたデータ要素が受信された前記通信インターフェイスの関数である、請求項１記載の方法。
【請求項１２】
各受信されたデータ要素は、接続状態を持つ接続部に関連付けられており、特定の受信されたデータ要素のために前記統合マッピングにより特定された前記次のホップ・インターフェイスは前記特定の受信されたデータ要素に関連した接続部の接続状態の関数である、請求項１記載の方法。
【請求項１３】
前記第１のマッピングは、更に、対応する第１の処置を前記通信インターフェイスの１つで受信された各データ要素に関連付ける、請求項１記載の方法。
【請求項１４】
前記第２のマッピングは、更に、対応する第２の処置を、前記第１のマッピングによって特定された前記次のホップ・インターフェイスが前記論理インターフェイスの１つである特定のデータ要素に関連付ける、請求項１３記載の方法。
【請求項１５】
前記統合マッピングは、更に、対応する第３の処置を、前記通信インターフェイスの１つで受信された各データ要素に関連付け、前記対応する第３の処置は、前記第１のマッピングによって特定された前記次のホップ・インターフェイスが前記通信インターフェイスの１つである場合に前記対応する第１の処置であり、前記対応する第３の処置は、前記第１のマッピングによって特定された前記次のホップ・インターフェイスが前記論理インターフェイスの１つである場合に前記対応する第１と第２の処置の合成である、請求項１２記載の方法。
【請求項１６】
前記通信インターフェイスは制御インターフェイスを有する、請求項１記載の方法。
【請求項１７】
ａ）データ要素を受信する複数の通信インターフェイスと、
ｂ）第１のマッピング、第２のマッピング及びこの統合されたマッピングを記憶するメモリであって、
ｉ）前記第１のマッピングは、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定し、少なくとも１つの次のホップ・インターフェイスは１組の論理インターフェイスに属し、
ｉｉ）前記第２のマッピングは、前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素のための第２の次のホップ・インターフェイスを特定し、少なくとも１つの第２の次のホップ・インターフェイスは前記複数の通信インターフェイスに属し、
ｉｉｉ）前記統合されたマッピングは、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定し、前記統合されたマッピングにより特定された如何なる次のホップ・インターフェイスも前記１組の論理インターフェイスには属さない、メモリと、
ｃ）前記物理的インターフェイスと前記メモリに接続された処理装置であって、
ｉ）前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの各部を、第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換することによって前記第１と第２のマッピングから統合マッピングを生成することが可能であり、
ｉｉ）前記通信インターフェイスで受信された各データ要素に関連する次のホップ・インターフェイスを決定するために前記統合マッピングにアクセスすることが可能であり、
ｉｉｉ）ｉｉ）で決定された前記次のホップ・インターフェイスに前記受信されたデータ要素を送信することが可能な処理装置と、
を有するデータ送信装置。
【請求項１８】
前記第１のマッピングは、更に、対応する第１の処置を前記通信インターフェイスの１つで受信された各データ要素に関連付ける、請求項１７記載のデータ送信装置。
【請求項１９】
前記第２のマッピングは、更に、対応する第２の処置を、前記第１のマッピングによって特定された前記次のホップ・インターフェイスが前記論理インターフェイスの１つである特定のデータ要素に関連付ける、請求項１８記載のデータ送信装置。
【請求項２０】
前記統合マッピングは、更に、対応する第３の処置を、前記通信インターフェイスの１つで受信された各データ要素に関連付け、前記対応する第３の処置は、前記第１のマッピングによって特定された前記次のホップ・インターフェイスが前記通信インターフェイスの１つである場合に前記対応する第１の処置であり、前記対応する第３の処置は、前記第１のマッピングによって特定された前記次のホップ・インターフェイスが前記論理インターフェイスの１つである場合に前記対応する第１と第２の処置の合成である、請求項１９記載のデータ送信装置。
【請求項２１】
前記通信インターフェイスが分散されている複数のライン・カードを更に有する、請求項１７記載のデータ送信装置。
【請求項２２】
更に、前記ライン・カード間で分散された複数の物理的データ・ポートを有する、請求項２１記載のデータ送信装置。
【請求項２３】
各前記通信インターフェイスは、前記物理的データ・ポートの１つである、請求項２２記載のデータ送信装置。
【請求項２４】
前記通信インターフェイスの内の複数のものは、前記物理的データ・ポートの内の共通のものを共有する、請求項２２記載のデータ送信装置。
【請求項２５】
複数の通信インターフェイスを備えたデータ処理システムで実行されるアプリケーション・プログラムによりアクセスされるデータを記憶するメモリであって、
ａ）前記メモリに記憶されたデータ構造体を有し、このデータ構造体は、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定する第１のマッピングに関する情報を有し、少なくとも１つの次のホップ・インターフェイスは１組の論理インターフェイスに属し、
ｇ）前記データ構造体は、前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素のための第２の次のホップ・インターフェイスを特定する第２のマッピングに関する情報を有し、少なくとも１つの第２の次のホップ・インターフェイスは前記複数の通信インターフェイスに属し、
ｈ）前記データ構造体は、前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの各部を、第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換することによって前記第１と第２のマッピングから作成された統合マッピングに関する情報を有する、メモリ。
【請求項２６】
マッピングを発生する方法を実施するために複数の通信インターフェイスを備えているデータ送信装置により実行可能な命令のプログラムを確実に具体化する、コンピュータが読み取り可能な記録媒体であって、前記方法が、
ａ）通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定する第１のマッピングを受信し、ここで、少なくとも１つの次のホップ・インターフェイスは１組の論理インターフェイスに属する、
ｂ）前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素のための第２の次のホップ・インターフェイスを特定する第２のマッピングを受信し、ここで、少なくとも１つの第２の次のホップ・インターフェイスは、前記複数の通信インターフェイスに属する、
ｃ）前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの各部を、第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換することによって前記第１と第２のマッピングから統合マッピングを生成することを含む、記録媒体。
【請求項２７】
複数の通信インターフェイスを備えたデータ送信装置により使用されるマッピングの生成方法であって、
ａ）前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定する第１のマッピングを受信し、ここで、前記受信されたデータ要素の内の特定のものの少なくとも１つのために特定された前記複数の次のホップ・インターフェイスの少なくとも１つは１組の論理インターフェイスに属する、
ｂ）前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素用の複数の第２の次のホップ・インターフェイスを特定する第２のマッピングを受信し、ここで、少なくとも１つの第２の次のホップ・インターフェイスは前記複数の通信インターフェイスに属する、
ｃ）前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの少なくとも１部を、複数の第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換することによって前記第１と第２のマッピングから統合マッピングを生成する方法。
【請求項２８】
ａ）データ要素を受信する複数の通信インターフェイスと、
ｂ）第１のマッピング、第２のマッピング、第３のマッピング及びこの統合されたマッピングを記憶するメモリであって、
ｉ）前記第１のマッピングは、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定し、少なくとも１つの次のホップ・インターフェイスは１組の論理インターフェイスに属し、
ｉｉ）前記第２のマッピングは、前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素のための第２の次のホップ・インターフェイスを特定し、少なくとも１つの第２の次のホップ・インターフェイスは前記複数の通信インターフェイスに属し、
ｉｉｉ）前記第３のマッピングは、前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素のための第３の次のホップ・インターフェイスを特定し、少なくとも１つの第３の次のホップ・インターフェイスは前記複数の通信インターフェイスに属し、
ｉｖ）前記統合されたマッピングは、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定し、前記統合されたマッピングにより特定された如何なる次のホップ・インターフェイスも前記１組の論理インターフェイスには属さず、
ｃ）前記物理的インターフェイスと前記メモリに接続された処理装置であって、
ｉ）前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの特定部を、第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換し、前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの特定部分を、第３の次のホップ・インターフェイスを特定する前記第３のマッピングの対応部分により置換することによって前記第１、第２、第３のマッピングから前記統合されたマッピングを生成することが可能であり、
ｉｉ）前記通信インターフェイスで受信された各データ要素に関連する次のホップ・インターフェイスを決定するために前記統合マッピングにアクセスすることが可能であり、
ｉｉｉ）ｉｉ）で決定された前記次のホップ・インターフェイスに前記受信されたデータ要素を送信することが可能な処理装置と、
を有するデータ送信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはデータ通信送信システムに関し、特に、多数の相互接続論理送信サブシステムの機能性(functionality)を示しながらその通信インターフェイスの効率的使用を維持することが可能なデータ送信装置に関する。
【背景技術】
【０００２】
現代のデータ通信送信システム（例えば、交換機及びルータ）は、一般的には、「制御平面」と「データ平面」に仕切られた機能性を有している。制御平面は、一般的には、制御プロトコルとオペレータ・インターフェイスを実装するために汎用言語で記載された複雑なソフトウエアを実行することができるハードウエアを使用して実装される。データ平面は、専用ハードウエアで実装され、送信及び処理の決定は別々のシステムで別々の方法で実行される。データ平面の処理が汎用ＣＰＵで実施されるときでも、データ平面は、一般的には、別個の存在として扱われ、効率的な送信のために最適化される。
【０００３】
制御平面とデータ平面に仕切られた機能性を有する送信システムの例は、ＩＰルータ、種々のタイプのレイヤ−２(layer-2)交換機（例えば、イーサネット（登録商標）、フレーム・リレー（ＦＲ）、非同期転送モード（ＡＴＭ）、マルチプロトコル・ラベル・スイッチング（ＭＰＬＳ））、種々のタイプの回路交換機（例えば、ＤＡＣＳ、同期光ネットワーク（ＳＯＮＥＴ）アドドロップ・マルチプレクサ（Add-Drop Multiplexer：ＡＤＭ）、光クロスコネクト（ＯＸＣ）、無線電話装置、上記の動作の組み合わせを行う装置、及び送信機能を実行する大部分の他のプログラム可能な通信装置を有している。
【０００４】
データ平面により達成される処理の例は、ラベル・ルックアップ（ＭＰＬＳ、ＦＲ、ＡＴＭ、Ｘ．２５）、ソース・ルックアップ（イーサネット（登録商標）、インターネット・プロトコル（ＩＰ））、行き先ルックアップ（イーサネット（登録商標）、ＩＰ）、出インターフェイス・ルックアップ（全ての交換タイプ）、出サブ・インターフェイス・ルックアップ（大部分の交換タイプ）、カプセル化（大部分の交換タイプ）、フィルタリング、メータリング、統計累算及びサンプリングを含んでいる。
【０００５】
多数の論理送信サブシステムに単一の物理的な送信システムを仕切ることはしばしば望ましい。例えば、サービス・プロバイダは、カストマごとの別々の装置を実際に設置せずに各カストマにルータを提供することを望むであろう。あるいは、２つの機能（例えば、ＩＰルーティングとフレーム・リレー交換）を遂行する送信システムでは、その２つの機能のために論理的に分離した制御平面を実装することは容易であろう。更に別のシナリオでは、大ＩＰネットワークにおけるように、ネットワークを階層に論理的に仕切り、その階層の各層内でルータに別々の機能性を持たせることが望ましい。別々の層のルータが同一場所に配置される場合には、単一の物理的な送信システムにおいて２つ以上の論理送信サブシステムを具体化(instantiate)することが好都合である。
【０００６】
同一のハードウエアに多くの論理送信サブシステムを実装する現在の方式は、このサブシステムごとのデータ平面処理の個別の段階(instance)を具体化することにより動作する。データは、２つ以上の論理送信サブシステムによって順次論理的に処理する必要があるとき、第１のデータ平面の段階から次のデータ平面の段階へと順次送られてついに最後のデータ平面の段階に達する。更に、一般的な実装では、論理送信サブシステムの間で物理的なシステムの入インターフェイスと出インターフェイスが分離される。特定のサブシステムに属する入力部(ingress)への全ての入力は、まずそのサブシステムにより処理される。物理的なポートが（例えば、ＴＤＭによりまたはラベルを使用して）低レベルで何らかの方法でデータを識別することができるプロトコルを使用する場合は、個々のデータ・ストリームは種々の論理送信サブシステムにより取り扱ってもよい。
【０００７】
しかし、論理送信サブシステムの間で物理的な送信システムのインターフェイスを仕切るには、重大な欠陥がある。特に、論理送信サブシステムは互いに接続されているので、この各接続は物理的送信システムの１対のインターフェイスを消費することになる。従って、物理的な送信システムのインターフェイスのかなりの部分は、論理送信サブシステム間の接続により占められ、これによりインターフェイスの利用が非常に非効率的となる。このことは、事実上複数の論理送信サブシステムの役割を演ずるように割り当てられた単一の物理的送信システムが、インターフェイス・レベルで過度に資源を供給させる(over-provisioned)必要があるということを意味する。このことは、少なくとも費用が増加した形となり、サービス・プロバイダにとっては不便なことになる。
【発明の開示】
【課題を解決するための手段】
【０００８】
本発明は、まず複数の論理送信サブシステム内の１つの論理送信サブシステムのデータ平面により、次に、そのサブシステム内の他の１つのサブシステムのデータ平面により、論理的にデータを処理する形式の送信システムに適用可能である。敷衍すると、本発明は、３つ以上の論理送信サブシステムのデータ平面が順次同一データを処理する必要があるときにも適用される。本発明は、個々の論理ルータの送信動作を特定する個々のマッピング機能に基づく統合マッピング機能の作成に関する。この概念により、多くの論理送信サブシステムを具体化する送信システムにおける効率的な共同データ平面動作が可能となる。同一データが同一の物理的送信システムにおける１つ以上の論理送信サブシステムにより処理されるときに、効率は増大する。この概念は、集中または分散データ平面を持つシステムに適用可能である。また、集中または分散制御平面を持つシステムにも適用可能である。
【０００９】
広義の態様によれば、本発明は、複数の通信インターフェイスを備えたデータ送信装置により使用されるマッピングの生成方法を提供する。本方法は、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定する第１のマッピングを受信することを含む。少なくとも１つの次のホップ・インターフェイスは１組の論理インターフェイスに属する。本方法は、前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素のための第２の次のホップ・インターフェイスを特定する第２のマッピングを受信することをも含む。少なくとも１つの第２の次のホップ・インターフェイスは、前記複数の通信インターフェイスに属する。
【００１０】
さらに、本方法は、前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの各部を、第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換することによって前記第１と第２のマッピングから統合マッピングを生成することを含む。
【００１１】
他の広義の態様によれば、本発明は、データ送信装置と要約してもよい。このデータ送信装置は、データ要素を受信する複数の通信インターフェイスと、メモリと、前記通信インターフェイスと前記メモリに接続された処理装置を有している。前記メモリは、第１のマッピング、第２のマッピング及びこの統合されたマッピングを記憶する。前記第１のマッピングは、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定する。少なくとも１つの次のホップ・インターフェイスは１組の論理インターフェイスに属する。前記第２のマッピングは、前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素のための第２の次のホップ・インターフェイスを特定する。少なくとも１つの第２の次のホップ・インターフェイスは前記複数の通信インターフェイスに属する。
【００１２】
前記統合されたマッピングは、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定する。前記統合されたマッピングにより特定された如何なる次のホップ・インターフェイスも前記１組の論理インターフェイスには属さない。前記処理装置は、前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの各部を、第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換することによって前記第１と第２のマッピングから統合マッピングを生成する。更に、前記処理装置は、前記通信インターフェイスで受信された各データ要素に関連する次のホップ・インターフェイスを決定するために前記統合マッピングにアクセスし、このアクセス段階で決定された前記次のホップ・インターフェイスに前記受信されたデータ要素を送信する。
【００１３】
更に他の広義の態様によれば、本発明は、複数の通信インターフエイスを備えたデータ処理システムで実行されるアプリケーション・プログラムによりアクセスされるデータを記憶するメモリとして要約してもよい。本メモリは、前記メモリに記憶されたデータ構造体を有し、このデータ構造体は、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定する第１のマッピングに関する情報を有し、少なくとも１つの次のホップ・インターフェイスは１組の論理インターフェイスに属する。前記データ構造体は、前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素のための第２の次のホップ・インターフェイスを特定する第２のマッピングに関する情報をも有し、少なくとも１つの第２の次のホップ・インターフェイスは前記複数の通信インターフェイスに属する。
【００１４】
更に、前記データ構造体は、前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの各部を、第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換することによって前記第１と第２のマッピングから作成された統合マッピングに関する情報を有する。
【００１５】
本発明は、マルチキャスト環境にも適用可能であり、複数の通信インターフェイスを備えたデータ送信装置により使用されるマッピングの発生方法と要約してもよい。本方法は、前記通信インターフェイスで受信されたデータ要素用の次のホップ・インターフェイスを特定する第１のマッピングを受信する。前記受信されたデータ要素内の特定のものの少なくとも１つのために特定された前記複数の次のホップ・インターフェイスの少なくとも１つは１組の論理インターフェイスに属する。本方法は、前記第１のマッピングにより特定された前記次のホップ・インターフェイスが前記１組の論理インターフェイスに属する特定のデータ要素用の複数の第２の次のホップ・インターフェイスを特定する第２のマッピングを受信もする。少なくとも１つの第２の次のホップ・インターフェイスは前記複数の通信インターフェイスに属する。
【００１６】
更に、本方法は、前記１組の論理インターフェイスに属する次のホップ・インターフェイスを特定する前記第１のマッピングの少なくとも１部を、複数の第２の次のホップ・インターフェイスを特定する前記第２のマッピングの対応部分により置換することによって前記第１と第２のマッピングから統合マッピングを生成する。
【００１７】
本発明は、上記の方法を実施するためにデータ送信装置により実行可能な命令のプログラムを明確に具体化するコンピュータが読み取り可能なメディアと要約してもよい。
【００１８】
本発明の以上及び他の態様及び特徴は、添付図面に関し本発明の特定の実施例の以下の記載を吟味するときに当業者に明らかとなろう。
【実施例】
【００１９】
図１を参照するに、本発明の単一のデータ通信送信システムにより置換されるべきデータ通信送信システムのクラスタが（今後単に「クラスタ」１０と呼ばれる）示してある。この例では、クラスタ１０は、２つのデータ通信送信システム、すなわち、第１のルータＲ１と第２のルータＲ２を有している。一般的に、クラスタ１０の要素は、ルータ以外のデータ通信システムであってもよく、更に、要素の数が２つ以上であってもよく、更に、要素は同一タイプのものである必要はない。
【００２０】
本発明の単一のデータ通信送信システムにより置換されることが可能なデータ通信送信システムの特定例は、ＩＰルータ、種々のタイプのレイヤ−２(layer-2)交換機（例えば、イーサネット（登録商標）、フレーム・リレー（ＦＲ）、非同期転送モード（ＡＴＭ）、マルチプロトコル・ラベル・スイッチング（ＭＰＬＳ））、種々のタイプの回路交換機（例えば、ＤＡＣＳ、同期光ネットワーク（ＳＯＮＥＴ）アドドロップ・マルチプレクサ（Add-Drop Multiplexer：ＡＤＭ）、光クロスコネクト（ＯＸＣ）、無線電話装置、上記の動作の組み合わせを行う装置、及び送信機能を実行する大部分の他のプログラム可能な通信装置を有している。
【００２１】
また、本発明においては、用語「データ要素」は、記載される状況に依存して、パケット交換データ（例えば、パケットまたはデータグラム）の要素または回路交換データ（例えば、タイム・スロットに含まれるデータ）を包含するものとする。その役割について用語「パケット」は、限定的な意味で解釈されるべきではなく、むしろ、任意の統計的に多重化された情報単位を広く包含するものとする。従って、明らかに本発明は、パケット交換機能及び回路交換機能のいずれかまたは両方を実施するデータ送信装置に適用される。
【００２２】
図１に見ることができるように、クラスタ１０は、複数のクラスタ外インターフェイスｘ、ｙ、ｚ、ｗ及び複数のクラスタ内インターフェイスａ、ｂ、ｃ、ｄを有している。クラスタ外インターフェイスｘ、ｙ、ｚ、ｗは、クラスタ１０の外部からデータ要素を受信し、経路を決めたデータ要素をクラスタ１０の外部の行き先へ送信もする。この特定の実施例では、クラスタ外インターフェイスｘ、ｙ、ｚ、ｗは、それぞれ行く先１．３．２．７．、１．５．７．９、１．２．３．４、２．４．６．８へ接続されている。クラスタ内インターフェイスａ、ｂ、ｃ、ｄは、互いにルータＲ１とＲ２を接続する働きをする。特に、ルータＲ１のクラスタ内インターフェイスａは、ルータＲ２のクラスタ内インターフェイスｃに接続され、ルータＲ１のクラスタ内インターフェイスｂは、ルータＲ２のクラスタ内インターフェイスｄに接続されている。
【００２３】
クラスタ外インターフェイスとクラスタ内インターフェイスの数は、例示的にのみ示してあるが、本発明のデータ通信送信システムは、広範囲のクラスタ外インターフェイスとクラスタ内インターフェイスを備えたクラスタ１０に代わってもよいということは理解されるべきである。
【００２４】
ルータＲ１、Ｒ２の各々は、一般的には問題の特定のルータの送信動作を明示するマッピングを記憶する制御平面を有している。この場合、Ｍ１とＭ２は、ルータＲ１とＲ２にそれぞれ関連するマッピングを表すものとする。従って、マッピングＭ１は、インターフェイスｘ、ｙ、ａ及びｂの間のマッピングを明示し、一方、マッピングＭ２は、インターフェイスｚ、ｗ、ｃ及びｄの間のマッピングを明示する。さらに特定すると、マッピングＭ１とＭ２は、そのインターフェイスの１つで受信されたデータ要素ごとの次のホップ・インターフェイスを特定する。次のホップ・インターフェイスは、（例えば、ＩＰアドレスにより識別される）データ要素のソース、（例えば、ＩＰアドレスにより識別される）データ要素の行き先、データ要素に関連する優先レベル、データ要素が到着するインターフェイスの独自性、（例えば、接続指向交換用の）接続状態または受信されたデータ要素の一部の他の特性の関数として探してもよい。
【００２５】
マッピングＭ１とＭ２及びルータＲ１とＲ２の間に存在する相互接続のためにクラスタ外インターフェイスｘ、ｙ、ｚ、ｗの内の１つに到着するデータ要素は、同一ルータでクラスタ外インターフェイス内の１つを介して直接送り出されるか、またはクラスタ１０の他のルータへ送られ、そこからこの他のルータのクラスタ外インターフェイス内の１つに現れる。例えば、インターフェイスｘに到達するデータ要素は、インターフェイスｙ（またはｘ、しかしこれは稀である）を介してルータＲ１を介してルータＲ１から去るか、またはクラスタ内インターフェイスａ、ｂの一方を介してルータＲ２へ移動する。このデータ要素は、次にクラスタ外インターフェイスｚ、ｗの内の１つを介してルータＲ２から現れる。
【００２６】
単一のルータが成功裏にクラスタ１０に置き換わることができるためには、クラスタ外インターフェイスｘ、ｙ、ｚ、ｗを介してクラスタ１０に入り更にこれを去るという視点からのデータ要素の動作を再現する必要がある。
【００２７】
図２Ａには、本発明の実施例によるデータ通信送信システム２００が示してある。この特定例では、データ通信送信システム２００は、ルータではあるが、本発明の動作必要条件に従う他の役割を演じてもよい。外から見ると、単一のルータ２００は、図１に関して上に記載したクラスタ１０に機能的には等価である。ルータＲ１とＲ２は、物理的には存在しないが、論理形でルータ２００内に明示されるので、今後便宜上「論理ルータ」を呼ぶことにする。
【００２８】
ルータ２００は、制御平面に維持されたマッピングに従ってデータ要素を受信したり送信したりするデータ平面を有している。データ要素は、クラスタ１０のクラスタ外インターフェイスｘ、ｙ、ｚ、ｗに対応する複数の通信インターフェイスｘ、ｙ、ｚ、ｗで受信される。しかし、ルータ２００は、クラスタ１０のクラスタ内インターフェイスａ、ｂ、ｃ、ｄに匹敵するどんな通信インターフェイスも所有していない。むしろ、これらの前者のクラスタ内インターフェイスは、本質が論理的であるので本例ではＶａ、Ｖｂ、Ｖｃ、Ｖｄと示す。従って、明らかにルータ２００は、置換するように設計されたクラスタ１０のクラスタ外インターフェイスの数よりも大きな数の通信インターフェイスを必要とはしない。
【００２９】
物理的観点からは、図３に示したように、通信インターフェイスｘ、ｙ、ｚ、ｗは、複数のライン・カード２２０に存在してもよく、この複数のライン・カード２２０は、プロセッサと他のハードウエアを有している。ルータ２００のデータ平面は、ライン・カード２２０が接続された交換装置２３０を物理的に有していてデータ要素が１つのライン・カードから他のライン・カードへ移動する（すなわち「ホップする」）ことができるようにしてもよい。この例では、通信インターフェイスｘとｙが位置づけられているライン・カード２２０は、論理ルータＲ１（一様色のブロック）と関連付けられ、通信インターフェイスｚとｗが位置づけられているライン・カード２２０は、論理ルータＲ２（縞付きブロック）と関連付けられる。
【００３０】
他の実施例では、論理ルータの間での物理的資源の仕切りは、ライン・カードごとに行われる必要はない。しかし、ルータ２００の全ての場合に、どのライン・カードまたは他の物理的資源も論理インターフェイスＶａ、Ｖｂ、Ｖｃ、Ｖｄと関連付けられてはいない。
【００３１】
引き続き図２Ａにおいて、本発明のルータ２００の制御平面は、ルータ２００の送信動作を明示するマッピングＭ３を維持している。この制御平面は、ライン・カード２２０の間に分布されるか、ルータ２００のシャーシ内に別々に設けられた一組の制御カード上に実装してもよい。マッピングＭ３は、通信インターフェイスｘ、ｙ、ｚ、ｗの内の１つで受信された各データ要素の次のホップ・インターフェイスを明示する。ルータ２００は、ルータＲ１とＲ２を置換するように設計されているので、マッピングＭ３はマッピングＭ１とＭ２に何らかの関係を有しなければならない。
【００３２】
実際、マッピングＭ１とＭ２は、ルータ２００に提供されるが、マッピングＭ３を作成するに必要な情報の全てを有している。しかし、マッピングＭ１とＭ２は（もはや存在しない）クラスタ内インターフェイスに関わるものであり、従って、マッピングＭ３は、マッピングＭ１とＭ２とは異ならなければならないということは注意すべきである。マッピングＭ３に到達するために、マッピングＭ１とＭ２を統合する１つの方法を次に更に詳しく述べる。
【００３３】
マッピングＭ３は、統合エンジン２４０により作成されるが、この統合エンジン２４０は、制御平面のソフトウエア要素として実装してもよい。概念的には、統合されたマッピングＭ３は、マッピングＭ１とＭ２により特定されたマッピング機能の「畳み込み(convolution)」に等価な物理的データ平面機能のためのマッピング機能を特定する。実際問題として、一度適用され統合されたマッピングＭ３は、適当な順序で適当な個々のマッピングＭ１とＭ２を適用するものと（外部動作に関する限り）同一の結果を有する。
【００３４】
図２Ａの例では、マッピングＭ１により特定された送信動作は、通信インターフェイスｘ、ｙ、ｚ、ｗの内の１つで受信された各データ要素の行き先に依存する。データ平面は、そのデータ要素のヘッダから各受信データ要素の行き先の知識を得る。送信動作がデータ要素を受信する通信インターフェイスに依存しないということは興味あることであるが、他の場合（図４Ａから図４Ｃまで参照）、送信動作はデータ要素が受信される通信インターフェイスと、恐らくその優先レベル、年齢等のような受信データ要素の他の特徴とに依存してもよい。
【００３５】
更に特定すると、マッピングＭ１は、行き先１．３．２．７を備えたデータ要素は通信インターフェイスｘに送られるべきであり、行き先１．５．７．９を備えたデータ要素は通信インターフェイスｙに送られるべきであり、行き先１．２．３．４を備えたデータ要素は論理インターフェイスＶａに送られるべきであり、行き先２．４．６．８を備えたデータ要素は論理インターフェイスＶｂに送られるべきであるということを明示する。更に、マッピングＭ２は、行き先１．２．３．４を備えたデータ要素は通信インターフェイスｚに送られるべきであり、行き先２．４．６．８を備えたデータ要素は通信インターフェイスｗに送られるべきであり、行き先１．３．２．７を備えたデータ要素は論理インターフェイスＶｃに送られるべきであり、行き先１．５．７．９を備えたデータ要素は論理インターフェイスＶｄに送られるべきであるということを明示する。
【００３６】
１つの実施例では、統合マッピングＭ３は、マッピングＭ１の基本部分を取り、それをマッピングＭ２の増加した部分と統合することによって作成することができる。図２Ｂに示したように、Ｍ１ＢＡＳＩＣと示したマッピングＭ１の基本部分は、全マッピングＭ１であると理解されるが、一方Ｍ２ＡＵＧと示したマッピングＭ２の増加部分は、論理ルータＲ１により論理ルータＲ２に対し決めたルートで送られるデータ要素のために次のホップ・インターフェイスが設けられるマッピングＭ２の部分のみを言う。
【００３７】
従って、Ｍ２ＡＵＧは、行き先１．２．３．４または行き先２．４．６．８を備えたデータ要素のための次のホップ・インターフェイスを特定するマッピングＭ２の部分のみを有する。これは、論理ルータＲ２とＲ１が別々に実装された場合に、論理ルータＲ１により論理ルータＲ２に送られていたであろう唯一のデータ要素のみであるからである。次に、論理ルータＲ２への送信動作を特定するＭ１ＢＡＳＩＣの部分を、送信処理を続行するＭ２ＡＵＧの対応部分で置換することによってマッピングＭ３は作成された。
【００３８】
更に特定すると、マッピングＭ３は、行き先１．３．２．７を備えたデータ要素は（Ｍ１ＢＡＳＩＣの場合のように）通信インターフェイスｘに送られるべきであり、行き先１．５．７．９を備えたデータ要素は（Ｍ２ＢＡＳＩＣの場合のように）通信インターフェイスｙに送られるべきであり、行き先１．２．３．４を備えたデータ要素は（Ｍ２ＡＵＧの場合のように）通信インターフェイスｚに送られるべきであり、行き先１．５．７．９を備えたデータ要素は（Ｍ１ＡＵＧの場合ように）通信インターフェイスｗに送られるべきであるということを特定する。注意すべきは、マッピングＭ３は、単一の次のホップ・マッピング機能であり、このことは、データ要素が（マッピングＭ１とＭ２を介して）多数通路に従っていた場合に、このデータ要素がルート決めで送られたと同じ通信インターフェイスに１度のルックアップ後に直ちに送られるということを意味する。
【００３９】
換言すれば、マッピングＭ３の正味の効果は、通信インターフェイスｘ、ｙ、ｚ、ｗの視点からのクラスタ１０の正味の送信動作に等しい。更に、如何なる通信インターフェイスもルータ内通信のために取っておく必要はない。更に、如何なるデータ要素もルータ２００によりデータ平面を介して論理インターフェイスに送られることはない。このことは、論理インターフェイスＶａ、Ｖｂ、Ｖｃ、Ｖｄは、物理的存在として存在しないという概念と矛盾しない。
【００４０】
または、統合マッピングＭ３は、マッピングＭ２の基本部分を取り出してマッピングＭ１の増加部分と統合することにより作成することができる。図２Ｃに示すように、Ｍ２ＢＡＳＩＣと示したマッピングＭ２の基本部分は、全マッピングＭ２であると考えられ、一方、Ｍ１ＡＵＧと示したマッピングＭ１の増加部分は、次のホップ・インターフェイスが、論理ルータＲ２により論理ルータＲ１にルートを決めて送られるデータ要素のために設けられているマッピングＭ１の部分のみを言うものである。従って、Ｍ１ＡＵＧは、行き先１．３．２．７または行き先１．５．７．９を備えたデータ要素のための次のホップ・インターフェイスを特定するマッピングＭ１の部分のみを有している。これは、これらが論理ルータＲ１とＲ２が別々に実装された場合に論理ルータＲ２により論理ルータＲ１に送られていたデータ要素のみであるからである。
【００４１】
次に、論理ルータＲ１に対する送信動作を特定するＭ２ＢＡＳＩＣの部分を、送信処理を続行するＭ１ＡＵＧの対応部分で置換することによって、図２Ｂと同一のマッピングＭ３が作成された。
【００４２】
マッピングＭ１とＭ２により特定された送信動作の更に複雑な例を次に図４Ａから図４Ｃまでについて記載する。特に、図４Ａでは、マッピングＭ１’が設けられている。これは、データ要素の行き先ばかりでなくデータ要素を受信する通信インターフェイスにも基づいて、受信したデータ要素を送るべき次のホップ・インターフェイスを特定する。この特定例では、通信インターフェイスの一部は、制御平面と通信するようにされている。これは、動作、管理及びメンテナンスの機能において有用であろう。例えば、データ要素を制御平面に送るべき能力は、エラー検出及び／または訂正を行うため、または制御情報または変化さえもマッピングＭ１とＭ２に送るために使用してもよい。
【００４３】
十分な情報を得て各受信したデータ要素を送信するために、データ平面は、前のようにデータ要素のヘッダから受信したデータ要素の行き先を得ることができる。更に、データ平面は、データ要素が受信される通信インターフェイスの知識を有すると仮定することができる。これは、それが到来データ要素を処理するからである。もちろん、マッピングＭ１’とＭ２’は、論理ルータＲ１とＲ２と関係付けられているので、各マッピングの特定部分は物理的に存在しない、すなわち、論理インターフェイスＶａ、Ｖｂ、Ｖｃ、Ｖｄであるインターフェイスのことをいうと理解されよう。
【００４４】
この特定例では、マッピングＭ１’は、通信インターフェイスｘで受信された行き先１．２．３．４を備えたデータ要素は論理インターフェイスＶａに送られるものであり、通信インターフェイスｙで受信された行き先１．２．３．４を備えたデータ要素は論理インターフェイスＶｂに送られるものであり、論理インターフェイスＶａに「到着する」行き先１．２．３．４を備えたデータ要素は論理インターフェイスＶｂに送られるものであり、論理インターフェイスＶｂに「到着する」行き先１．２．３．４を備えたデータ要素は論理インターフェイスＶａに送られるものであるということを特定する。
【００４５】
更に、通信インターフェイスｙで受信された行き先１．３．２．７を備えたデータ要素は通信インターフェイスｘに送られるものであり、通信インターフェイスｘで受信された行き先１．３．２．７を備えたデータ要素は制御面に送られるものであり（それは、ルータ２００に決して入るべきではなかったから）、論理インターフェイスＶａか論理インターフェイスＶｂのいずれかに「到着する」行き先１．３．２．７を備えたデータ要素は論理インターフェイスｘに送られるものであるということを特定する。
【００４６】
さらに、通信インターフェイスｘで受信された行き先１．５．７．９を備えたデータ要素は通信インターフェイスｙに送られるものであり、通信インターフェイスｙで受信された行き先１．５．７．９を備えたデータ要素は制御平面に送られるものであり（それは、ルータ２００に決して入るべきではなかったから）、論理インターフェイスＶａまたは論理インターフェイスＶｂのいずれかに「到着する」行き先１．５．７．９を備えたデータ要素は通信インターフェイスｙに送られるものである。
【００４７】
最後に、通信インターフェイスｘで受信された行き先２．４．６．８を備えたデータ要素は論理インターフェイスＶａに送られるものであり、通信インターフェイスｙで受信された行き先２．４．６．８を備えたデータ要素は論理インターフェイスＶｂに送られるものであり、論理インターフェイスＶａに「到着する」行き先２．４．６．８を備えたデータ要素は論理インターフェイスＶｂに送られるものであり、論理インターフェイスＶｂに「到着する」行き先２．４．６．８を備えたデータ要素は論理インターフェイスＶａに送られるものである。
【００４８】
さらに、マッピングＭ２’は、論理インターフェイスＶｃまたは論理インターフェイスＶｄに「到着する」行き先１．２．３．４を備えたデータ要素は通信インターフェイスｚに送られるものであり、通信インターフェイスｗで受信された行き先１．２．３．４を備えたデータ要素は通信インターフェイスｚに送られるものであり、通信インターフェイスｚで受信された行き先１．２．３．４を備えたデータ要素は制御平面に送られるものであり（それは、ルータ２００に決して入るべきではなかったから）、通信インターフェイスｚに到着する行き先１．３．２．７を備えたデータ要素は論理インターフェイスＶｃに送られるものであり、通信インターフェイスｗで受信した行き先１．３．２．７を備えたデータ要素は論理インターフェイスＶｄに送られるものであり、論理インターフェイスＶｃに「到着する」行き先１．３．２．７を備えたデータ要素は論理インターフェイスＶｄに送られるものであり、
【００４９】
論理インターフェイスＶｄに「到着する」行き先１．３．２．７を備えたデータ要素は論理インターフェイスＶｃに送られるものであり、論理インターフェイスｚで受信した行き先１．５．７．９を備えたデータ要素は論理インターフェイスＶｃに送られるものであり、通信インターフェイスｗで受信された行き先１．５．７．９を備えたデータ要素は論理インターフェイスＶｄに送られるものであり、論理インターフェイス１．５．７．９に「到着する」行き先１．５．７．９を備えたデータ要素は論理インターフェイスＶｄに送られるものであり、論理インターフェイスＶｄに「到着する」行き先１．５．７．９を備えたデータ要素は論理インターフェイスＶｃに送られるものであり、論理インターフェイスＶｃまたは論理インターフェイスＶｄに「到着する」行き先２．４．６．８を備えたデータ要素は通信インターフェイスｗに送られるものであり、
【００５０】
通信インターフェイスｚで受信された行き先２．４．６．８を備えたデータ要素は通信インターフェイスｗに送られるものであり、通信インターフェイスｚで受信された行き先２．４．６．８を備えたデータ要素は制御平面に送られるものである（それは、ルータ２００に決して入るべきではなかったから）ということを特定する。
【００５１】
統合マッピングＭ３’は、２つの半部からなり、その第１の半部は、（マッピングＭ３’→の作成をもたらす）通信インターフェイスｘとｙにおいてルータ２００により受信されたデータ要素を取り扱い、第２の半部は、マッピングＭ３’←の作成をもたらす）通信インターフェイスｚとｗにおいてルータ２００により受信されたデータ要素を取り扱う。マッピングＭ３’→の作成は、図４Ｂに示してあり、マッピングＭ３’←の作成は、図４Ｃに示してある。もちろん、統合マッピングＭ３’の両半部の各々はそれ自体統合マッピングであり、その構造は本発明の範囲内に入る。
【００５２】
図４Ｂにおいて、マッピングＭ３’→は、通信インターフェイスｘとｙにおいて受信されたデータ要素に関する、Ｍ１’→ＢＡＳＩＣと示したマッピングＭ１’の基本部分を取り出し、これをＭ２’→ＡＵＧと示したマッピングＭ２’の増加部分と統合することにより構成される。マッピング部分Ｍ２’→ＡＵＧは、論理ルータＲ１により論理ルータＲ２に方向決めで送られていたはずのデータ要素のために次のホップ・インターフェイスが設けられているマッピングＭ２’の部分に関する。
【００５３】
従って、Ｍ２’→ＡＵＧは、論理インターフェイスＶｃまたはＶｄに「到着する」データ要素用の次のホップ・インターフェイスを特定するマッピングＭ２’の部分のみを有している。これは、これらのデータ要素はこれらの論理ルータが別々に実装されていたならば論理ルータＲ２に対し論理ルータＲ１により送信されていたはずのデータ要素のみであるからである。次に、論理ルータＲ２に対する送信動作を特定するＭ１’→ＢＡＳＩＣの部分を、送信処理を続行するＭ２’→ＡＵＧの対応部分で置換することによってマッピングＭ３’→は作成された。
【００５４】
結果において、マッピングＭ３’→は、通信インターフェイスｘまたは通信インターフェイスｙで受信された行き先１．２．３．４を備えたデータ要素は通信インターフェイスｚ（Ｍ１’→ＢＡＳＩＣとＭ２’→ＡＵＧの結合）に送られ、通信インターフェイスｙで受信された行き先１．３．２．７を備えたデータ要素は（Ｍ１’→ＢＡＳＩＣに従って）通信インターフェイスｘに送られ、通信インターフェイスｘで受信された行き先１．３．２．７を備えたデータ要素は（Ｍ１’→ＢＡＳＩＣに従って）制御平面に送られ、通信インターフェイスｘで受信された行き先１．５．７．９を備えたデータ要素は（Ｍ１’→ＢＡＳＩＣに従って）通信インターフェイスｙに送られ、通信インターフェイスｙで受信された行き先１．５．７．９を備えたデータ要素は（Ｍ１’→ＢＡＳＩＣに従って）通信インターフェイスｙに送られ、通信インターフェイスｘまたは通信インターフェイスｙで受信された行き先２．４．６．８を備えたデータ要素は通信インターフェイスｗに送られる（Ｍ１’→ＢＡＳＩＣとＭ２’→ＡＵＧの組み合わせ）ものであるということを特定する。
【００５５】
注意すべきことは、マッピングＭ３’→は、単一の次のホップ・マッピング機能であり、このことは、データ要素が（マッピングＭ１’→ＢＡＳＩＣとＭ２’→ＡＵＧを介して）多数路に従っていた場合に、このデータ要素が送られていたと同一の通信インターフェイスに１回のルックアップの後に直ちに送られるということを意味する。換言すれば、マッピングＭ３’→の正味の効果は、通信インターフェイスｘとｙにおいて受信されたデータ要素の視点からクラスタ１０の正味の送信動作と同一である。更に、如何なる通信インターフェイスもルータ内通信のために取って置く必要はない。更に、如何なるデータ要素もデータ平面を介して論理インターフェイスにルータ２００により「送信される」ことは決してない。このことは、論理インターフェイスＶａ、Ｖｂ、Ｖｃ、Ｖｄは、物理的存在としては存在しないという概念と矛盾しない。
【００５６】
次に、図４Ｃにおいて、マッピングＭ３’←は、通信インターフェイスｘとｙにおいて受信されたデータ要素に関するＭ２’←ＢＡＳＩＣと示したマッピングＭ２’の基本部分を取り出し、これをＭ１’←ＡＵＧと示したマッピングＭ１’の増加部分と統合することにより構成される。マッピング部分Ｍ１’←ＡＵＧは、論理ルータＲ１に対し論理ルータＲ２により方向決めで送られていたはずのデータ要素のために次のホップ・インターフェイスが設けられているマッピングＭ１’の部分に関する。従って、Ｍ１’←ＡＵＧは、論理インターフェイスＶａまたは論理インターフェイスＶｂに「到着する」データ要素用の次のホップ・インターフェイスを特定するマッピングＭ１’の部分のみを有している。これは、これらのデータ要素は、論理ルータＲ１とＲ２が別々に実装されていたならば論理ルータＲ２により論理ルータＲ１へ送信されていたはずのデータ要素のみであるからである。次に、論理ルータＲ１に対する送信動作を特定するＭ２’←ＢＡＳＩＣの部分を、送信処理を続行するＭ１’←ＡＵＧの対応部分で置換することによってマッピングＭ３’←が作成された。
【００５７】
結果において、マッピングＭ３’←は、通信インターフェイスｚまたは通信インターフェイスｗで受信された行き先１．３．２．７を備えたデータ要素は通信インターフェイスｘ（Ｍ２’←ＢＡＳＩＣとＭ１’←ＡＵＧの結合）に送られ、通信インターフェイスｗで受信された行き先１．２．３．４を備えたデータ要素は（Ｍ２’←ＢＡＳＩＣに従って）通信インターフェイスｚに送られ、通信インターフェイスｚで受信された行き先１．２．３．４を備えたデータ要素は（Ｍ２’←ＢＡＳＩＣに従って）制御平面に送られ、通信インターフェイスｚで受信された行き先２．４．６．８を備えたデータ要素は（Ｍ２’←ＢＡＳＩＣに従って）通信インターフェイスｗに送られ、通信インターフェイスｗで受信された行き先２．４．６．８を備えたデータ要素は（Ｍ２’←ＢＡＳＩＣに従って）制御平面に送られ、通信インターフェイスｚまたは通信インターフェイスｗで受信された行き先１．５．７．９を備えたデータ要素は通信インターフェイスｙに送られる（Ｍ２’←ＢＡＳＩＣとＭ１’←ＡＵＧの組み合わせ）ものであるということを特定する。
【００５８】
注意すべきは、マッピングＭ３’←は、単一の次のホップ・マッピング機能であり、このことは、データ要素が（マッピングＭ２’←ＢＡＳＩＣとＭ１’  ←ＡＵＧを介して）多数路に従っていた場合に、このデータ要素がルートを決めて送られていたと同一の通信インターフェイスに１回のルックアップの後に直ちにルートを決めて送られるということを意味するということである。換言すれば、マッピングＭ３’←の正味の効果は、通信インターフェイスｚとｗにおいて受信されたデータ要素の視点からクラスタ１０の正味の送信動作と同一である。更に、如何なる通信インターフェイスもルータ内通信のために取って置く必要はない。更に、如何なるデータ要素もデータ平面を介して論理インターフェイスにルータ２００により「送信される」ことは決してない。このことは、論理インターフェイスＶａ、Ｖｂ、Ｖｃ、Ｖｄは、物理的存在としては存在しないという概念と矛盾しない。
【００５９】
もちろん、マッピングＭ３’→とＭ３’←を単一のマッピングＭ３’に組み合わせることは可能であり、これにより、通信インターフェイスｘ、ｙ、ｚ、ｗのどれにおいても受信されたデータ要素の観点からクラスタ１０と同一の正味の送信動作が特定される。
【００６０】
当業者は、多くのルータ用の多くのマッピングと同一の全体効果を有する統合マッピングを実装するには多くの方法があり、この統合マッピングの概念の有用性は精密な実装とは無関係であるということを理解するであろう。統合マッピングを物理的なデータ平面に適用する結果、適当な論理ルータ・マッピングが順次適用された場合に発生されるのと同一の結果を生成するために、各データ要素はデータ平面により一度処理される。
【００６１】
送信のほかに、受信されたデータ要素は、２つの論理ルータＲ１とＲ２について特定された処置に基づく合成処置であるルータによる他の処置を受けてもよい。本発明の実施例に従えば、与えられたデータ要素に関しルータ２００により取られる最終処置は、論理ルータが別々に実装されていた場合にたどったであろうクラスタ１０を介する通路の関数となる。実際問題として、一部の処置は続く処置とは独立で、他の処置は続く処置により置換され、更に他の処置は続く処置により変更される。例えば、「カプセル化」という第１の処置と「非カプセル化」という第２の処置は、「無為」という最終処置をもたらす。他の例としては、処置「優先順位１の使用」は、続く処置「優先順位２の使用」により置き換えてもよい。
【００６２】
当業者は、統合マッピング機能の概念は、任意のデータ平面アーキテクチャにとって有用であるが、分散データ平面処理を行う現代の高速交換装置では特に有用であるということを理解しよう。なお、分散を許容するために物理的データ平面を仕切ることは、システムを論理データ通信送信システムに仕切ることとは無関係である。統合マッピングの概念は、全体としてデータ平面に適用される。統合マッピングが分散データ平面に実装されるときには、処理を論理交換仕切り、またはデータ平面仕切り、またはこの両者に整合させるようにその処理を仕切ることが可能である。精密実装は、当業者により決定されるところであるが、システムの動作必要条件に依存する。
【００６３】
当業者は、畳み込みが徹底的には適用されないときでも統合マッピングの概念が有用であるということを理解もするであろう。例えば、特定のアーキテクチャでは、論理平面に適用することができるマッピング機能を制限することが必要であるかもしれない。これは、単に一般的な現象の特定の場合であり、これにより種々のインターフェイスの種類は種々の制限を有する。これらの能力が物理的な交換装置間の物理的なインターフェイスの能力と異なると同程度に論理交換装置を構成する物理的システムの機能性は相互接続した物理的な交換装置の等価な集合と異なる。
【００６４】
更に、本発明は、マルチキャスト環境に適用してもよい。この記載事項の意味では、用語「マルチキャスト」は、単一ユニットのデータの再生と、１つ以上の出点(egress point)へのそのデータの送信とをもたらすその単一ユニットのデータの受信を意味する。これは、この用語をインターネット・プロトコル（ＩＰ）に関し使用する方法の一般化である。マルチキャストについては、（論理ルータの各々の）各マッピング機能は、入空間(ingress space)の１対複数のマッピング（マルチキャスト「ツリー」）を特定し、統合マッピングは、畳み込み(convolved)マッピングを特定する。この畳み込みマッピングも、１対複数のマッピングとなる。これを達成するために、畳み込みはマルチキャスト・ツリーの各「ブランチ」に従う。
【００６５】
また、大部分の実用的な応用において、（上記の例から取った）論理ルータＲ１とＲ２の制御平面は、単一の物理的ルータ２００内に別々に実装され、制御信号は、個々の制御平面間を通る。しかし、当業者は、本発明が論理ルータＲ１、Ｒ２のデータ平面に適用される他にこれらの論理ルータＲ１、Ｒ２の制御平面にも適用されることができ、これにより、単一の「統合された」制御平面が有効に発生されるということを理解するであろう。
【００６６】
なお、データ平面または制御平面で使用されたプロセッサは、それぞれ算術論理演算装置（ＡＬＵ）として実装されてもよい。このＡＬＵは、その動作のためのプログラム命令を記憶するコード・メモリ（図示せず）にアクセスする。プログラム命令は、固定されていて、プロセッサにより直接感知でき、かつ読み取ることができる媒体（例えば、取り出し可能なディスケット、ＣＤ−ＲＯＭ、ＲＯＭまたは固定ディスク）に記憶することができ、またプログラム命令は遠隔記憶可能であるが、通信媒体を介してネットワークに接続されたモデムまたは他のインターフェイス（例えば、通信アダプタ）を更に介してプロセッサに送信可能である。送信媒体は、具体的な媒体（例えば、光学的またはアナログ的な通信線）かまたは無線技術（例えば、マイクロ波、赤外線または他の送信機構）を使用して実装される媒体であってもよい。
【００６７】
当業者は、コード・メモリに記憶されたプログラム命令は、多くのコンピュータ・アーキテクチャまたは作動システムと使用される若干のプログラミング言語で書かれた高レベルのプログラムからコンパイルすることができるということを理解もすべきである。例えば、高レベル・プログラムは、アセンブリ言語で記載してもよく、他のバージョンは、手順向きプログラミング言語（例えば、「Ｃ」）またはオブジェクト指向プログラミング言語（例えば、「Ｃ＋＋」または「ＪＡＶＡ（登録商標）」）で書いてもよい。
【００６８】
当業者は、本発明の一部の実施例では、プロセッサの機能性は、予めプログラムしたハードウエアまたはファームウエア要素（例えば、アプリケーション特定集積回路（ＡＳＩＣ）、電気的消去可能なプログラマブルＰＲＯＭ（ＥＥＰＲＯＭ）など）または他の関連要素として実装してもよいということを理解すべきである。
【００６９】
本発明の特定実施例が記載され図示されたが、明らかに当業者には数多くの変形及び変更が添付の請求項に明示された本発明の範囲から逸脱せずになし得るということは明らかとなろう。
【図面の簡単な説明】
【００７０】
【図１】本発明の実施例に従う単一ルータにより置換される１対のルータを示す。
【図２Ａ】１対のマッピングを備えている、本発明の実施例によるルータを示す。
【図２Ｂ】図２Ａのルータに設けられたマッピング（複数）から統合マッピングを作成する１つの方法を示す。
【図２Ｃ】図２Ａのルータに設けられたマッピング（複数）から統合マッピングを作成する別の方法を示す。
【図３】本発明の実施例によるルータの物理的実装例を示す。
【図４Ａ】１対のマッピングを備えている、本発明の他の実施例によるルータを示す。
【図４Ｂ】図４Ａのルータに設けられたマッピング（複数）から部分的な統合マッピングを作成する１つの方法を示す。
【図４Ｃ】図４Ａのルータに設けられたマッピング（複数）から部分的な統合マッピングを作成する別の方法を示す。
【図１】
0004454499.tif 000002
【図２Ａ】
0004454499.tif 000003
【図２Ｂ】
0004454499.tif 000004
【図２Ｃ】
0004454499.tif 000005
【図３】
0004454499.tif 000006
【図４Ａ】
0004454499.tif 000007
【図４Ｂ】
0004454499.tif 000008
【図４Ｃ】
0004454499.tif 000009