(57)【要約】複数の技術によって共有される処理ステップが重複して行われる必要のない複数のデータ通信の処理を統合化すること。プロトコル変換を行う工程と、ＭＰＥＸ（３００）が属するネットワークの１つまたは複数の上の複数の代替の宛先（３４７）の間で負荷バランシングを行う工程と、ＭＰＥＸ（３００）が属するネットワークの１つまたは複数の上のノードのいずれか、またはすべてに関してファイアウォール解析およびその他のコンテンツベースの解析（３４５）を行う工程と、適切な宛先を特定するためにデータ通信のコンテンツベースの経路指定を提供する工程となどの、宛先に転送されるべき受信されたデータ通信に関する複数の処理技術（３４３、３４５、３４７、３４９）を、マルチプロトコルエッジスイッチ（「ＭＰＥＸ」３００）を使用して、並列に処理する。
2005502228.tif 000002
【特許請求の範囲】
【請求項１】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべきデータを受信する工程であって、該受信されたデータは、第１のプロトコルに従ってフォーマットされ、
複数の技術のそれぞれを並列に行うことによって妥当であると特定された前記受信されたデータの少なくとも部分を処理する工程と
を具え、前記複数の技術は、
指定されたタイプのコンテンツが存在するかどうかを判定するために前記特定された部分の少なくともいくつかの中に含まれるコンテンツを解析する工程と、
複数の可能な宛先の負荷バランシングを行うような仕方で前記受信されたデータに関する宛先を決定する工程と
を含むことを特徴とする方法。
【請求項２】
前記受信されたデータを前記決定された宛先に通信する工程を含むことを特徴とする請求項１記載の方法。
【請求項３】
前記ネットワークを介して前記決定された宛先に至るパスに対応し、かつ、前記ネットワークを介して前記受信されたデータを前記決定された宛先に経路指定するのに使用される仮想識別子を決定する工程
を含むことを特徴とする請求項１記載の方法。
【請求項４】
前記処理されるべき前記受信されたデータの部分は、前記受信されたデータを分解することによって特定されることを特徴とする請求項１記載の方法。
【請求項５】
前記受信されたデータを分解する工程は、前記第１のプロトコルに基づく仕方で行われることを特徴とする請求項４記載の方法。
【請求項６】
前記受信されたデータを分解する工程は、単一回だけ行われることを特徴とする請求項４記載の方法。
【請求項７】
前記第１のプロトコルは、データリンク層ネットワークプロトコルであることを特徴とする請求項１記載の方法。
【請求項８】
前記第１のプロトコルは、ネットワーク層ネットワークプロトコルであることを特徴とする請求項１記載の方法。
【請求項９】
前記第１のプロトコルは、トランスポート層ネットワークプロトコルであることを特徴とする請求項１記載の方法。
【請求項１０】
前記第１のプロトコルは、アプリケーション層ネットワークプロトコルであることを特徴とする請求項１記載の方法。
【請求項１１】
前記第１のプロトコルは、バスプロトコルであることを特徴とする請求項１記載の方法。
【請求項１２】
前記第１のプロトコルは、ファイバチャネルであることを特徴とする請求項１記載の方法。
【請求項１３】
前記第１のプロトコルは、ＩｎｆｉｎｉＢａｎｄであることを特徴とする請求項１記載の方法。
【請求項１４】
前記受信されたデータは、データフレームまたはデータパケットであり、前記受信されたデータの前記特定された部分は、前記受信されたデータのヘッダ部分を含むことを特徴とする請求項１記載の方法。
【請求項１５】
前記受信されたデータは、データフレームまたはデータパケットであり、前記受信されたデータの前記特定された部分は、前記受信されたデータのペイロード部分を含むことを特徴とする請求項１記載の方法。
【請求項１６】
前記受信されたデータの前記特定された部分は、前記受信されたデータのヘッダ部分の中のエントリを含むことを特徴とする請求項１記載の方法。
【請求項１７】
前記受信されたデータの前記特定された部分は、前記受信されたデータのペイロードの部分を含むことを特徴とする請求項１記載の方法。
【請求項１８】
前記特定された部分の中に含まれるコンテンツを解析する工程は、前記特定された部分の少なくともいくつかが、禁止されたコンテンツを含むかどうかを判定することを含むことを特徴とする請求項１記載の方法。
【請求項１９】
前記特定された部分の１つまたは複数が禁止されたコンテンツを含むと判定された場合、前記受信されたデータの伝送をブロックする工程を含むことを特徴とする請求項１８記載の方法。
【請求項２０】
前記特定された部分の１つまたは複数が禁止されたコンテンツを含むと判定された場合、前記禁止されたコンテンツを前記受信されたデータから除去する工程を含むことを特徴とする請求項１８記載の方法。
【請求項２１】
前記特定された部分の中に含まれるコンテンツを解析することは、前記特定された部分の少なくともいくつかが必要とされるコンテンツを含まないかどうかを判定する工程を含むことを特徴とする請求項１記載の方法。
【請求項２２】
前記特定された部分の中に含まれるコンテンツの解析に基づいてファイアウォール機能を提供することを含むことを特徴とする請求項１記載の方法。
【請求項２３】
前記並列に行われる複数の技術は、別個の第２のプロトコルに従って受信されたデータをフォーマットする工程をさらに含むことを特徴とする請求項１記載の方法。
【請求項２４】
前記並列に行われる複数の技術は、前記特定された部分の少なくともいくつかを、前記受信されたデータのそれらの部分のタイプを分類するために解析する工程をさらに含むことを特徴とする請求項１記載の方法。
【請求項２５】
前記受信されたデータの前記特定された部分の前記タイプを分類する工程は、それらの特定された部分のデータをフォーマットするのに使用されたアプリケーション層プロトコルに基づくやり方でそれらの特定された部分を分類する工程を含むことを特徴とする請求項２４記載の方法。
【請求項２６】
別々のプロトコルをそれぞれが使用する少なくとも２つのネットワークに接続されたマルチプロトコルエッジスイッチによって行われることを特徴とする請求項１記載の方法。
【請求項２７】
前記複数の処理技術がそれぞれ、方法を行うコンピューティングシステムの別々の処理能力を使用して行われることを特徴とする請求項１記載の方法。
【請求項２８】
前記別々の処理能力は、前記コンピューティングシステムの別々のプロセッサであることを特徴とする請求項２７記載の方法。
【請求項２９】
所定の方法を行うことによってコンピューティングデバイスに受信されたデータ通信を処理させるコンテンツを有するコンピュータ可読媒体であって、該方法は、
ネットワークを介して宛先に通信されるべきデータを受信する工程と、
複数の技術のそれぞれを並列に行うことによって興味の対象として特定された前記受信されたデータの少なくとも部分を処理する工程と
を具え、前記複数の技術は、
前記受信されたデータの前記特定された部分の少なくともいくつかの中に許可されないタイプのコンテンツが存在しているかどうかを判定する工程と、
前記受信されたデータが伝送される先の宛先を決定するために複数の可能な宛先の負荷バランシングを行う工程と
含むことを特徴とするコンピュータ可読媒体。
【請求項３０】
並列に行われる前記複数の技術は、前記受信されたデータの前記特定された部分の少なくともいくつかの部分のタイプを分類する工程をさらに含むことを特徴とする請求項２９に記載のコンピュータ可読媒体。
【請求項３１】
並列に行われる前記複数の技術は、前記受信されたデータがフォーマットされるのに準拠している第１のプロトコルとは別個の第２のプロトコルに従って前記受信されたデータをフォーマットする工程をさらに含むことを特徴とする請求項２９記載のコンピュータ可読媒体。
【請求項３２】
前記方法は、前記受信されたデータを前記決定された宛先に通信するように指示する工程をさらに含む方法を特徴とする請求項２９記載のコンピュータ可読媒体。
【請求項３３】
前記処理されるべき受信されたデータの部分は、前記受信されたデータを単一回、分解することによって特定され、前記複数の技術のそれぞれは、前記分解された受信データを使用することを特徴とする請求項２９記載のコンピュータ可読媒体。
【請求項３４】
該媒体は、コンピュータシステムのメモリであることを特徴とする請求項２９記載のコンピュータ可読媒体。
【請求項３５】
該媒体は、前記コンテンツを含む生成されたデータ信号を伝送するデータ伝送媒体であることを特徴とする請求項２９記載のコンピュータ可読媒体。
【請求項３６】
前記コンテンツは、実行された際に前記コンピューティングデバイスに、前記方法を行なわせる命令であることを特徴とする請求項２９に記載のコンピュータ可読媒体。
【請求項３７】
受信されたデータ通信を処理するためのコンピューティングデバイスであって、
ネットワークを介して宛先に通信されるべきデータを受信することができる第１の構成要素と、
前記受信されたデータの少なくとも部分を処理するために複数の技術の１つをそれぞれ並列に行うことができる複数の処理構成要素であって、前記複数の技術は、
指定されたタイプのコンテンツが存在するかどうかを判定するために前記特定された部分の少なくともいくつかの中に含まれるコンテンツを解析する手段と、
複数の可能な宛先の負荷バランシングを行うような仕方で前記受信されたデータに関する宛先を決定する手段と
を含むことを特徴とするコンピューティングデバイス。
【請求項３８】
前記ネットワーク上のマルチプロトコルノードであるコンピューティングデバイスであって、
前記複数の技術は、前記受信されたデータがフォーマットされるのに準拠している第１のプロトコルとは別個の第２のプロトコルに従って前記受信されたデータをフォーマットする手段を含むことを特徴とする請求項３７記載のコンピューティングデバイス。
【請求項３９】
マルチプロトコルエッジスイッチであることを特徴とする請求項３７記載のコンピューティングデバイス。
【請求項４０】
前記第１の構成要素は、コンピューティングデバイスのメモリの中で実行されることを特徴とする請求項３７記載のコンピューティングデバイス。
【請求項４１】
前記処理構成要素はそれぞれ、コンピューティングデバイスの別個のプロセッサ上で実行されることを特徴とする請求項３７記載のコンピューティングデバイス。
【請求項４２】
受信されたデータフレームを処理する方法であって、マルチプロトコルエッジスイッチは、別々のデータリンク層ネットワークプロトコルをそれぞれが使用する少なくとも２つのネットワークに接続され、該方法は、
第１のデータリンク層ネットワークプロトコルを使用する前記ネットワークの第１のネットワーク上の送信元ノードから伝送された複数のデータフレームを受信し、各データフレームは、前記第１のデータリンク層ネットワークプロトコルに特有の仕方で指定されたヘッダおよびペイロードを含み、各ヘッダは、前記ネットワークの第２のネットワーク上のノードに対応する宛先ネットワークアドレスの指示を含み、各ペイロードは、アプリケーション層ネットワークプロトコルを使用して指定されたメッセージを含み、
前記複数の受信されたデータフレームのそれぞれに関して、
前記データフレームを分解して前記指示された宛先ネットワークアドレス、および前記データフレームに関するペイロードを特定する工程と、
該分解は、前記第１のデータリンク層ネットワークプロトコルに基づく仕方で行われ、
前記データフレームを２回目に分解することなく、複数の処理技術のそれぞれを並列に行うことによって前記分解されたデータフレームを処理する工程と、
前記複数の処理技術は、
前記含まれるメッセージのタイプを判定するために前記特定されたペイロードを解析する工程と、該解析は、前記含まれるメッセージを指定するのに使用されたアプリケーション層ネットワークプロトコルに基づく仕方で行われ、
前記特定されたペイロードを解析して許可されないコンテンツの不在を検証する工程と、
前記特定された宛先ネットワークアドレスが対応する前記第２のネットワークの複数のノードの１つを選択する工程と、該複数のノードはそれぞれ、前記特定された宛先ネットワークアドレスに関連し、該選択は、前記複数のノード上の処理負荷のバランスをとるように行われ、
前記選択された１つのノードに伝送するために、別個のデータフレームを構成する工程と
を含み、
該データフレームは、ヘッダ、および前記特定されたペイロードを含み、前記第２のネットワークによって使用される前記データリンク層ネットワークプロトコルに特有の仕方で指定され、
前記構成された別個のデータフレームを前記第２のネットワーク上の前記選択された１つのノードに伝送する工程と
を具え、前記データフレームの前記ペイロードを宛先ノードに伝送する前に、前記受信されたデータフレームのそれぞれが前記データフレームの単一回の分解に基づいて並列に複数の仕方で処理することを特徴とする方法。
【請求項４３】
前記複数の処理技術がそれぞれ、前記マルチプロトコルエッジスイッチの別々の処理能力を使用して行われることを特徴とする請求項４２に記載の方法。
【請求項４４】
前記別々の処理能力は、前記マルチプロトコルエッジスイッチの別々のプロセッサであることを特徴とする請求項４３に記載の方法。
【請求項４５】
前記構成されたデータフレームを伝送する前に、前記特定されたペイロードを解析して前記含まれるメッセージのタイプを判定している間、前記特定されたペイロードを前記解析して許可されないコンテンツの不在を検証している間、および前記１つのノードを前記選択している間に、生成された情報に基づいて前記構成されたデータフレームを変更する工程を含むことを特徴とする請求項４２記載の方法。
【請求項４６】
前記構成されたデータフレームのそれぞれを前記伝送する工程は、前記特定されたペイロードを前記解析して前記含まれるメッセージのタイプを判定する工程と、前記特定されたペイロードを前記解析して許可されないコンテンツの不在を検証する工程と、および前記１つのノードを選択する工程と
のうち１つまたは複数に基づく仕方で行われることを特徴とする請求項４２記載の方法。
【請求項４７】
前記ネットワークの１つによって使用されるデータリンク層ネットワークプロトコルは、イーサネット（登録商標）プロトコルであることを特徴とする請求項４２記載の方法。
【請求項４８】
前記ネットワークの１つによって使用されるデータリンク層ネットワークプロトコルは、ファイバチャネルプロトコルであることを特徴とする請求項４２記載の方法。
【請求項４９】
前記ネットワークの１つによって使用されるデータリンク層ネットワークプロトコルは、ＩｎｆｉｎｉＢａｎｄプロトコルであることを特徴とする請求項４２記載の方法。
【請求項５０】
前記データフレームのそれぞれを前記分解する工程は、前記マルチプロトコルエッジスイッチのネットワークプロセッサによって行われることを特徴とする請求項４２記載の方法。
【請求項５１】
前記データフレームのそれぞれを前記分解する工程は、前記特定されたペイロードのタイプをさらに特定する工程であり、
前記処理技術の１つまたは複数は、前記特定されたペイロードの前記特定されたタイプに少なくともある程度、基づく仕方で行われることを特徴とする請求項４２記載の方法。
【請求項５２】
前記特定されたペイロードの少なくともいくつかの中に含まれるメッセージは、ＨＴＴＰメッセージであり、
該ペイロードのそれぞれを前記解析して前記含まれるメッセージのタイプを判定する工程は、前記メッセージの中で指定されたユニフォームリソースアイデンティファイアを特定する工程を含むことを特徴とする請求項４２記載の方法。
【請求項５３】
前記受信されたデータフレームのそれぞれの前記特定されたペイロードを解析する工程は、前記メッセージを指定するのに使用されたアプリケーション層ネットワークプロトコルに基づく仕方でそのペイロードの中に含まれる前記メッセージのコンテンツを抽出する工程を含むことを特徴とする請求項４２記載の方法。
【請求項５４】
受信されたデータフレームに関する構成された別個のデータフレームを伝送する工程は、前記受信されたデータフレームの前記特定されたペイロードを解析して許可されないコンテンツの不在を検証することに失敗した場合には、行われないことを特徴とする請求項４２記載の方法。
【請求項５５】
受信されたデータフレームに関して構成された別個のデータフレームを伝送する工程は、前記複数のノードの前記１つを前記選択する工程が、前記複数のノード上の前記処理負荷のバランスを十分にとることができない場合には、行われないことを特徴とする請求項４２記載の方法。
【請求項５６】
前記受信されたデータフレームのそれぞれに関して、前記選択された１つのノードに対応する第２の宛先ネットワークアドレスの指示を前記構成されたデータフレームのヘッダに追加する工程を含み、前記第２の宛先ネットワークアドレスは、その受信されたデータフレームに関して特定された宛先ネットワークアドレスとは別個であることを特徴とする請求項４２記載の方法。
【請求項５７】
前記受信されたデータフレームのそれぞれに関して、前記選択された１つのノードにそのノードが属する前記第２のネットワークを介して至るパスに割り当てられた伝送仮想パス識別子を特定する工程を含み、
前記構成された別個のデータフレームを前記第２のネットワーク上の前記選択された１つのノードに伝送する工程は、前記データフレームが前記パス上を前記第２のネットワークを介して経路指定されるように前記特定された伝送仮想パス識別子を使用することを特徴とする請求項４２記載の方法。
【請求項５８】
前記受信されたデータフレームのそれぞれに関して、前記選択された１つのノードに関する宛先ネットワークアドレスの代わりに、前記特定された伝送仮想パス識別子が前記別個のデータフレームのヘッダに追加されることを特徴とする請求項５７記載の方法。
【請求項５９】
受信されたデータフレームに関して前記選択された１つのノードに至る前記パスに割り当てられた前記伝送仮想パス識別子を特定する工程は、前記選択された１つのノードが属する前記第２のネットワークに関するネットワークマネージャに登録を行い、応答として、前記伝送仮想パス識別子を受け取る工程を含むことを特徴とする請求項５７記載の方法。
【請求項６０】
受信されたデータ通信を処理するためのコンピュータシステムであって、
ネットワークを介して宛先に通信されるべきデータを受信するための手段と、該受信したデータは、第１のプロトコルに従ってフォーマットされ、
複数の技術のそれぞれを並列に行うことによって前記受信されたデータの少なくとも妥当であるとして特定された部分を処理するための手段と
を具え、該複数の技術は、
指定されたタイプのコンテンツが存在するかどうかを判定するために特定された部分の少なくともいくつかの中に含まれるコンテンツを解析する手段と、
複数の可能な宛先の間で負荷のバランスをとるように前記受信されたデータの宛先を決定する手段と
を含むことを特徴とするコンピュータシステム。
【請求項６１】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１の仕方でフォーマットされたデータを受信する工程と、
コンテンツをそれぞれが有する前記受信されたデータの部分を特定するために前記受信されたデータを分解する工程と
を具え、複数の技術の少なくとも３つを並列に行うことによって前記分解されたデータを処理し、前記複数の技術は、
前記受信されたデータの前記コンテンツの少なくともいくつかのコンテンツのタイプを分類する工程と、
許容されないタイプのコンテントが存在するかどうかを決定するために少なくとも前記コンテンツのいくつかを分析する工程と、
複数の可能な宛先の間で負荷のバランスをとるように前記コンテンツの少なくともいくつかに関する宛先を決定する工程と、
前記コンテンツの少なくともいくつかを別個の第２の仕方でフォーマットする工程と
を含むことを特徴とする方法。
【請求項６２】
前記フォーマットされたコンテンツを前記決定された宛先に通信する工程を含むことを特徴とする請求項６１記載の方法。
【請求項６３】
前記受信されたデータに基づいて前記複数の技術のいずれを行うかを決定する工程を含むことを特徴とする請求項６１記載の方法。
【請求項６４】
前記複数の技術のそれぞれを行うことを含むことを特徴とする請求項６１記載の方法。
【請求項６５】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
複数の技術の少なくとも２つを並列に行うことによって妥当であるとして特定された前記受信されたデータの少なくとも部分を処理する工程と
を具え、前記複数の技術は、
前記特定された部分の少なくともいくつかの部分のタイプを分類する工程と、
指定されたタイプのコンテンツが存在するかどうかを判定するために前記特定された部分の少なくともいくつかの中に含まれるコンテンツを解析する工程と、
前記特定された部分の少なくともいくつかを前記宛先に基づいて選択された別個の第２のプロトコルに従ってフォーマットする工程と
を含むことを特徴とする方法。
【請求項６６】
前記受信されたデータに基づいて前記複数の技術のいずれを行うかを決定することを含むことを特徴とする請求項６５記載の方法。
【請求項６７】
前記複数の技術のそれぞれを行うことを含むことを特徴とする請求項６５記載の方法。
【請求項６８】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべきデータを受信する工程と、該受信されたデータは、第１のプロトコルに従ってフォーマットされ、
複数の技術の少なくとも２つを並列に行うことによって妥当であるとして特定された前記受信されたデータの少なくとも部分を処理する工程と
を具え、前記複数の技術は、
前記特定された部分の少なくともいくつかの部分のタイプを分類する工程と、
複数の可能な宛先の間で負荷のバランスをとるように前記特定された部分の少なくともいくつかに関する宛先を決定する工程と、
前記特定された部分の少なくともいくつかを前記決定された宛先に基づいて選択された別個の第２のプロトコルに従ってフォーマットする工程とを含むことを特徴とする方法。
【請求項６９】
前記受信されたデータに基づいて前記複数の技術のいずれを行うかを決定する工程を含むことを特徴とする請求項６８記載の方法。
【請求項７０】
前記複数の技術のそれぞれを行うことを含むことを特徴とする請求項６８記載の方法。
【請求項７１】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべきデータを受信する工程と、
複数の技術のそれぞれを並列に行うことによって妥当であるとして特定された前記受信されたデータの少なくとも部分を処理する工程と
を具え、前記複数の技術は、
前記受信されたデータの前記特定された部分の少なくともいくつかの部分のコンテンツのタイプを分類する工程と、
許可されないタイプのコンテンツが存在するかどうかを判定するために前記特定された部分の少なくともいくつかの部分のコンテンツを解析する工程と、
複数の可能な宛先の間で負荷のバランスをとるように前記特定された部分の少なくともいくつかの部分のコンテンツに関する宛先を決定する工程と、
前記特定された部分の少なくともいくつかの部分のコンテンツを前記宛先に対応する第２のプロトコルに従ってフォーマットする工程と
を含むことを特徴とする方法。
【請求項７２】
別々のデータリンク層ネットワークプロトコルをそれぞれが使用する少なくとも２つのネットワークに接続されたマルチプロトコルエッジスイッチが受信されたデータフレームを処理するための方法であって、
第１のデータリンク層ネットワークプロトコルを使用する前記ネットワークの第１のネットワーク上の送信元ノードから伝送された複数のデータフレームを受信する工程と、
各データフレームは、前記第１のデータリンク層ネットワークプロトコルに特有の仕方で指定されたヘッダおよびペイロードを含み、各ヘッダは、前記ネットワークの第２のネットワーク上のノードに対応する宛先ネットワークアドレスの指示を含み、各ペイロードは、アプリケーション層ネットワークプロトコルを使用して指定されたメッセージを含み、
前記複数の受信されたデータフレームのそれぞれに関して、
前記データフレームを分解して前記指示された宛先ネットワークアドレス、および前記データフレームに関するペイロードを特定する工程と、
該分解は、前記第１のデータリンク層ネットワークプロトコルに基づく仕方で行われ、
前記データフレームを２回目に分解することなく、前記分解されたデータフレームを処理する工程と、
前記含まれるメッセージのタイプを判定するために前記特定されたペイロードを解析する工程と、
該解析は、前記含まれるメッセージを指定するのに使用されたアプリケーション層ネットワークプロトコルに基づく仕方で行われ、
前記特定されたペイロードを解析して許可されないコンテンツの不在を検証する工程と、
前記特定された宛先ネットワークアドレスが対応する前記第２のネットワークの複数のノードの１つを選択する工程と、
該複数のノードはそれぞれ、前記特定された宛先ネットワークアドレスに関連し、該選択は、前記複数のノード上の処理負荷のバランスをとるように行われ、
前記選択された１つのノードに伝送する別個のデータフレームを構成する工程と、
該データフレームは、ヘッダ、および前記特定されたペイロードを含み、前記第２のネットワークによって使用される前記データリンク層ネットワークプロトコルに特有の仕方で指定され、
前記構成された別個のデータフレームを前記第２のネットワーク上の前記選択された１つのノードに伝送する工程と、
前記データフレームの前記ペイロードを宛先ノードに伝送する前に、前記受信されたデータフレームのそれぞれは、前記データフレームの単一回の分解に基づいて複数の仕方で処理されることを特徴とする方法。
【請求項７３】
前記分解されたデータフレームのそれぞれを前記処理する工程は、
前記ペイロードを前記解析して前記含まれるメッセージのタイプを特定する工程と、前記特定されたペイロードを前記解析して許可されないコンテンツの不在を検証する工程と、前記１つのノードを前記選択する工程と、前記別個のデータフレームを前記構成することを並列に行う工程と
を含むことを特徴とする請求項７２記載の方法。
【請求項７４】
前記ペイロードを前記解析して前記含まれるメッセージのタイプを判定する工程と、前記特定されたペイロードを前記解析して許可されないコンテンツの不在を検証する工程と、前記１つのノードを前記選択する工程と、前記別個のデータフレームを構成する工程とは、それぞれ、前記マルチプロトコルエッジスイッチの別々のプロセッサ上で行われることを特徴とする請求項７３記載の方法。
【請求項７５】
前記データフレームのそれぞれの前記特定されたペイロードを前記解析して許可されないコンテンツの不在を検証する工程は、その特定されたペイロードを前記解析して前記含まれるメッセージのタイプを特定することの後に行われ、
前記特定されたペイロードを前記解析して許可されないコンテンツの不在を検証する工程は、その特定されたペイロードの前記含まれるメッセージの前記判定されたタイプに特有の仕方で行われることを特徴とする請求項７２記載の方法。
【請求項７６】
前記データフレームのそれぞれに関して前記１つのノードを前記選択する工程は、そのデータフレームの前記特定されたペイロードを前記解析して前記含まれるメッセージのタイプを判定することの後に行われ、
前記データフレームのそれぞれに関して選択された前記１つのノードは、そのデータフレームに関する前記特定されたペイロードの前記含まれるメッセージの前記判定されたタイプに対するその１つのノードの対応に少なくともある程度、基づくことを特徴とする請求項７２記載の方法。
【請求項７７】
受信されたデータフレームに基づいて構成された前記別個のデータフレームのそれぞれを前記伝送する工程は、その受信されたデータフレームに関する前記特定されたペイロードの前記含まれるメッセージの前記判定されたタイプに少なくともある程度、基づいて行われることを特徴とする請求項７２記載の方法。
【請求項７８】
前記第１のネットワーク上の宛先ノードを示す発信データフレームを受信する工程は、
前記第１のデータリンク層ネットワークプロトコルとは別個の第２のデータリンク層ネットワークプロトコルを使用する前記別のネットワークの１つの上の送信元ノードによって伝送され、
前記発信データフレームを分解して前記宛先ノードの前記指示を特定し、前記データフレームに関するペイロードを特定する工程と、
該分解は、前記第２のデータリンク層ネットワークプロトコルに特有の仕方で行われ、
前記宛先ノードに伝送するために別個のデータフレームを構成する工程と、
前記別個のデータフレームが、前記第１のデータリンク層ネットワークプロトコルに特有の仕方で指定され、
前記構成された別個のデータフレームを前記宛先ノードに伝送する工程とを具えたことを特徴とする請求項７２記載の方法。
【請求項７９】
前記ネットワークの１つによって使用されるデータリンク層ネットワークプロトコルは、イーサネット（登録商標）プロトコルであることを特徴とする請求項７２記載の方法。
【請求項８０】
前記ネットワークの１つによって使用されるデータリンク層ネットワークプロトコルは、ファイバチャネルプロトコルであることを特徴とする請求項７２記載の方法。
【請求項８１】
前記ネットワークの１つによって使用されるデータリンク層ネットワークプロトコルは、ＩｎｆｉｎｉＢａｎｄプロトコルであることを特徴とする請求項７２記載の方法。
【請求項８２】
前記データフレームのそれぞれを前記分解することが、前記マルチプロトコルエッジスイッチのネットワークプロセッサによって行われることを特徴とする請求項７２記載の方法。
【請求項８３】
前記データフレームのそれぞれを前記分解する工程は、
前記特定されたペイロードのタイプをさらに特定し、前記ペイロードを前記解析して前記含まれるメッセージのタイプを判定する工程と、前記特定されたペイロードを前記解析して許可されないコンテンツの不在を検証すること、前記１つのノードを前記選択する工程と、前記別個のデータフレームを前記構成する工程とのうち、
１つまたは複数が、前記特定されたペイロードの前記特定されたタイプに少なくともある程度、基づく仕方で行われることを特徴とする請求項７２記載の方法。
【請求項８４】
前記特定されたペイロードの少なくともいくつかの中に含まれるメッセージは、ＨＴＴＰメッセージであり、
それらのペイロードのそれぞれを前記解析して前記含まれるメッセージのタイプを判定する工程は、前記メッセージの中で指定されたユニフォームリソースアイデンティファイアを特定する工程を含むことを特徴とする請求項７２記載の方法。
【請求項８５】
前記受信されたデータフレームのそれぞれの前記特定されたペイロードを解析する工程は、メッセージを指定するのに使用されたアプリケーション層ネットワークプロトコルに基づく仕方でそのペイロードの中に含まれる前記メッセージのコンテンツを抽出する工程を含むことを特徴とする請求項７２記載の方法。
【請求項８６】
受信されたデータフレームに関して構成された別個のデータフレームを伝送する工程は、前記受信されたデータフレームの前記特定されたペイロードを前記解析して許可されないコンテンツの不在を検証することができなかった場合には、行われないことを特徴とする請求項７２記載の方法。
【請求項８７】
受信されたデータフレームの前記特定されたペイロードを解析して許可されないコンテンツの不在を検証する代わりに、許可されないコンテンツの存在を特定する場合、前記許可されないコンテンツを取り除くように前記受信されたデータフレームに関して構成された別個のデータフレームの中に含まれる前記特定されたペイロードを変更することを含むことを特徴とする請求項７２記載の方法。
【請求項８８】
受信されたデータフレームに関して構成された別個のデータフレームを前記伝送する工程は、前記複数のノードの前記１つを前記選択することが前記複数のノード上の前記処理負荷のバランスを十分にとることができない場合には、行われないことを特徴とする請求項７２記載の方法。
【請求項８９】
前記第１のネットワーク以外の前記ネットワークの少なくとも１つのネットワークのノード群の複数のノード上の前記処理負荷を監視する工程を含み、
前記受信されたフレームの少なくともいくつかに関して前記複数のノード上の前記処理負荷のバランスをとるように前記複数のノードの前記１つを前記選択する工程は、前記監視された処理負荷を使用する工程を含むことを特徴とする請求項７２記載の方法。
【請求項９０】
前記受信されたデータフレームのそれぞれに関して、前記選択された１つのノードに伝送するために前記別個のデータフレームを前記構成する工程は、
その受信されたデータフレームに関して特定された宛先ネットワークアドレスとは別個の前記選択された１つのノードに対応する第２の宛先ネットワークアドレスの指示を前記別個のデータフレームのヘッダに追加する工程
を含むことを特徴とする請求項７２記載の方法。
【請求項９１】
前記受信されたデータフレームのそれぞれに関して、前記選択された１つのノードにそのノードが属する前記第２のネットワークを介して至るパスに割り当てられた伝送仮想パス識別子を特定することを含み、
前記第２のネットワーク上の前記選択された１つのノードに前記構成された別個のデータフレームを前記伝送する工程は、前記データフレームが前記パス上で前記第２のネットワークを介して経路指定されるように、前記特定された伝送仮想パス識別子を使用することを特徴とする請求項７２記載の方法。
【請求項９２】
前記受信されたデータフレームのそれぞれに関して、前記特定された伝送仮想パス識別子が、前記選択された１つのノードに関する宛先ネットワークアドレスの代わりに前記別個のデータフレームのヘッダに追加されることを特徴とする請求項９１記載の方法。
【請求項９３】
受信されたデータフレームに関して前記選択された１つのノードに至る前記パスに割り当てられた前記伝送仮想パス識別子を前記特定する工程は、
前記選択された１つのノードが属する前記第２のネットワークに関するネットワークマネージャに登録を行う工程と、応答として前記伝送仮想パス識別子を受け取る工程とを含むことを特徴とする請求項９１記載の方法。
【請求項９４】
前記受信されたデータフレームのそれぞれに関して、１つまたは複数のサービス品質パラメータを決定する工程を含み、
前記構成された別個のデータフレームのそれぞれを前記伝送する工程は、そのデータフレームに関して決定された前記サービス品質パラメータに従って行われることを特徴とする請求項７２記載の方法。
【請求項９５】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
関心対象となる前記受信されたデータの部分を特定するため、前記第１のプロトコルに基づく仕方で前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
前記特定された部分の少なくともいくつかを前記受信されたデータのそれらの部分のタイプを分類するために解析する工程と、
指定されたタイプのコンテンツが存在するかどうかを判定するために前記特定された部分の少なくともいくつかの中に含まれるコンテンツを解析する工程と、
複数の可能な宛先の間で負荷のバランスをとるように前記受信されたデータの宛先を決定する工程とを含むことを特徴とする方法。
【請求項９６】
前記第１のプロトコルは、データリンク層ネットワークプロトコルであることを特徴とする請求項９５記載の方法。
【請求項９７】
前記第１のプロトコルは、ネットワーク層ネットワークプロトコルであることを特徴とする請求項９５記載の方法。
【請求項９８】
前記第１のプロトコルは、トランスポート層ネットワークプロトコルであることを特徴とする請求項９５記載の方法。
【請求項９９】
前記第１のプロトコルは、アプリケーション層ネットワークプロトコルであることを特徴とする請求項９５記載の方法。
【請求項１００】
前記第１のプロトコルは、バスプロトコルであることを特徴とする請求項９５に記載の方法。
【請求項１０１】
前記第１のプロトコルは、ファイバチャネルであることを特徴とする請求項９５記載の方法。
【請求項１０２】
前記第１のプロトコルは、ＩｎｆｉｎｉＢａｎｄであることを特徴とする請求項９５記載の方法。
【請求項１０３】
前記受信されたデータは、データフレームまたはデータパケットであり、前記受信されたデータの前記特定された部分は、前記受信されたデータのヘッダ部分を含むことを特徴とする請求項９５記載の方法。
【請求項１０４】
前記受信されたデータは、データフレームまたはデータパケットであり、
前記受信されたデータの前記特定された部分は、前記受信されたデータのペイロード部分を含むことを特徴とする請求項９５記載の方法。
【請求項１０５】
前記受信されたデータの前記特定された部分は、前記受信されたデータのヘッダ部分内のエントリを含むことを特徴とする請求項９５記載の方法。
【請求項１０６】
前記受信されたデータの前記特定された部分は、前記受信されたデータのペイロードの部分を含むことを特徴とする請求項９５記載の方法。
【請求項１０７】
前記受信されたデータを前記分解する工程は、単一回だけ行われることを特徴とする請求項９５記載の方法。
【請求項１０８】
前記受信されたデータを前記宛先に通信する工程を含むことを特徴とする請求項９５記載の方法。
【請求項１０９】
前記ネットワークを介して前記宛先に至るパスに対応し、かつ、前記ネットワークを介して前記受信されたデータを前記宛先に経路指定するのに使用される、仮想識別子を特定する工程を含むことを特徴とする請求項９５記載の方法。
【請求項１１０】
前記受信されたデータの前記特定された部分のタイプを前記分類する工程は、それらの特定された部分のデータをフォーマットするのに使用されたアプリケーション層プロトコルに基づく仕方でそれらの特定された部分を分類する工程を含むことを特徴とする請求項９５記載の方法。
【請求項１１１】
前記特定された部分の中に含まれる前記コンテンツを前記解析する工程は、前記特定された部分の少なくともいくつかが禁止されたコンテンツを含むかどうかを判定する工程を含むことを特徴とする請求項９５記載の方法。
【請求項１１２】
前記特定された部分の１つまたは複数が禁止されたコンテンツを含むと判定された場合、前記受信されたデータの伝送をブロックする工程を含むことを特徴とする請求項１１１記載の方法。
【請求項１１３】
前記特定された部分の１つまたは複数が禁止されたコンテンツを含むと判定された場合、前記禁止されたコンテンツを前記受信されたデータから取り除く工程を含むことを特徴とする請求項１１１記載の方法。
【請求項１１４】
前記特定された部分の中に含まれるコンテンツを解析する工程は、前記特定された部分の少なくともいくつかが必要とされるコンテンツを含まないかどうかを判定する工程を含むことを特徴とする請求項９５記載の方法。
【請求項１１５】
前記特定された部分の中に含まれるコンテンツを前記解析する工程に基づいてファイアウォール機能を提供する工程を含むことを特徴とする請求項９５記載の方法。
【請求項１１６】
前記分解されたデータを前記処理する工程は、別個の第２のプロトコルに従って前記受信されたデータをフォーマットする工程を含むことを特徴とする請求項９５記載の方法。
【請求項１１７】
前記特定された部分の中に含まれるコンテンツを解析する工程は、それらの特定された部分の前記分類されたタイプに少なくともある程度、基づく仕方で行われることを特徴とする請求項９５記載の方法。
【請求項１１８】
前記特定された部分をそれらの部分のタイプを分類するために解析する工程は、前記指定されたタイプのコンテンツが存在するかどうかの判定に少なくともある程度、基づく仕方で行われることを特徴とする請求項９５記載の方法。
【請求項１１９】
前記宛先を前記決定することが、前記解析を受けた特定された部分の前記分類されたタイプに少なくともある程度、基づく仕方でさらに行われることを特徴とする請求項９５記載の方法。
【請求項１２０】
前記宛先を前記決定する工程は、前記指定されたタイプのコンテンツが存在するかどうかの前記判定に少なくともある程度、基づく仕方でさらに実行されることを特徴とする請求項９５記載の方法。
【請求項１２１】
前記特定された部分を解析する工程は、それぞれが、前記含まれるコンテンツを解析する工程と、前記宛先を前記判定する工程とが、並列に実行されることを特徴とする請求項９５記載の方法。
【請求項１２２】
前記特定された部分を前記解析する工程と、前記含まれるコンテンツを前記解析する工程と、前記宛先を前記判定する工程とは、別個のプロセッサ上で実行されることを特徴とする請求項９５記載の方法。
【請求項１２３】
別々のプロトコルをそれぞれが使用する少なくとも２つのネットワークに接続されたマルチプロトコルエッジスイッチによって実行されることを特徴とする請求項９５記載の方法。
【請求項１２４】
所定の方法を行うことによってコンピューティングデバイスが受信されたデータ通信を処理するようにさせるコンテンツを有するコンピュータ可読媒体であって、該方法は、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
前記受信されたデータの部分を特定するために前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
前記特定された部分の少なくともいくつかの中に指定されたタイプのコンテンツが存在するかどうかを検出する工程と、
前記指定されたタイプのコンテンツが存在することが検出されなかった場合、前記受信されたデータが通信される先の宛先を決定するために前記受信されたデータの複数の可能な宛先の間で負荷のバランスをとる工程と
を含むことを特徴とするコンピュータ可読媒体。
【請求項１２５】
コンピュータシステムのメモリであることを特徴とする請求項１２４記載のコンピュータ可読媒体。
【請求項１２６】
前記コンテンツを含む生成されたデータ信号を伝送するデータ伝送媒体であることを特徴とする請求項１２４記載のコンピュータ可読媒体。
【請求項１２７】
前記分解されたデータを前記処理することは、前記受信されたデータの前記特定された部分の少なくともいくつかの部分のタイプを分類することをさらに含むことを特徴とする請求項１２４に記載のコンピュータ可読媒体。
【請求項１２８】
前記分解されたデータを前記処理する工程は、別個の第２のプロトコルに従って前記受信されたデータをフォーマットし、前記第２のプロトコルに従ってフォーマットされた前記データを前記決定された宛先に通信するように指示する工程をさらに含むことを特徴とする請求項１２４記載のコンピュータ可読媒体。
【請求項１２９】
前記受信されたデータを前記分解する工程は、単一回だけ行われることを特徴とする請求項１２４記載のコンピュータ可読媒体。
【請求項１３０】
受信されたデータ通信を処理するためのコンピューティングデバイスであって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信することができる第１の構成要素と、
受信されたデータの部分を特定するために前記受信されたデータを分解することができる分解構成要素と、
指定されたタイプのコンテンツが前記特定された部分の少なくともいくつかの中に存在するかどうかを検出する手段と、および前記指定されたタイプのコンテンツが存在することが検出されない場合、前記受信されたデータに関する複数の可能な宛先の間で負荷のバランスをとることによって受信されたデータが通信される先の宛先を決定する手段とによって、前記分解されたデータを処理することができる１つまたは複数の処理構成要素と
を具えたことを特徴とするコンピューティングデバイス。
【請求項１３１】
前記１つまたは複数の処理構成要素は、前記受信されたデータの前記特定された部分の少なくともいくつかの部分のタイプを分類することによって前記分解されたデータを処理することがさらにできることを特徴とする請求項１３０記載のコンピューティングデバイス。
【請求項１３２】
前記コンピューティングデバイスは、前記ネットワーク上のマルチプロトコルノードであり、
前記１つまたは複数の処理構成要素は、別個の第２のプロトコルに従って前記受信されたデータをフォーマットする手段と、前記第２のプロトコルに従ってフォーマットされた前記データを前記決定された宛先に通信するように指示する手段とによって、前記分解されたデータを処理することがさらにできることを特徴とする請求項１３０記載のコンピューティングデバイス。
【請求項１３３】
前記第１の構成要素および前記分解構成要素は、前記コンピューティングデバイスのメモリの中で実行されることを特徴とする請求項１３０記載のコンピューティングデバイス。
【請求項１３４】
前記処理構成要素は、並列に実行されることを特徴とする請求項１３０記載のコンピューティングデバイス。
【請求項１３５】
前記処理構成要素はそれぞれ、前記コンピューティングデバイスの別個のプロセッサ上で実行されることを特徴とする請求項１３０記載のコンピューティングデバイス。
【請求項１３６】
受信されたデータ通信を処理するためのコンピュータシステムであって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信するための手段と、
前記受信されたデータの部分を特定するために前記第１のプロトコルに基づく仕方で前記受信されたデータを分解するための手段と、
前記分解されたデータを処理する手段と
を具え、該処理は、
前記受信されたデータの前記特定された部分の少なくともいくつかの中に含まれるコンテンツのタイプを分類する手段と、
指定されたタイプのコンテンツが前記含まれるコンテンツの少なくともいくつかの中に存在するかどうかを検出する手段と、
前記指定されたタイプのコンテンツが存在することが検出されない場合には、前記受信されたデータが通信される先の宛先を決定するために前記受信されたデータに関する複数の可能な宛先の間で負荷のバランスをとる手段と
を含むことを特徴とするコンピュータシステム。
【請求項１３７】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
コンテンツをそれぞれが有する前記受信されたデータの部分を特定するために前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
前記受信されたデータの前記特定された部分の少なくともいくつかの部分のコンテンツのタイプを分類する工程と、
前記コンテンツの前記分類されたタイプに少なくともある程度、基づき、許可されないタイプのコンテンツが存在するかどうかを判定するために前記コンテンツの少なくともいくつかを解析する工程と、
前記許可されないタイプのコンテンツが存在すると判定された場合には、前記受信されたデータが前記宛先に前記通信されるのを防止する工程と
を含むことを特徴とする方法。
【請求項１３８】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
前記受信されたデータの部分を特定するために前記第１のプロトコルに基づく仕方で前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
前記特定された部分の少なくともいくつかの部分のタイプを分類する工程と、
前記分類することに少なくともある程度、基づき、前記宛先に通信されるべき別個の第２のプロトコルに従ってフォーマットされた新しい一群のデータを構成する工程と
を含むことを特徴とする方法。
【請求項１３９】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
前記受信されたデータの部分を特定するために前記第１のプロトコルに基づく仕方で前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
前記特定された部分の少なくともいくつかの部分のタイプを分類する工程と、
前記分類することに少なくともある程度、基づく仕方で宛先に伝送されるべき受信されたデータを別個の第２のプロトコルに従ってフォーマットする工程と
を含むことを特徴とする方法。
【請求項１４０】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
前記受信されたデータの部分を特定するために前記第１のプロトコルに基づく仕方で前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
指定されたタイプのコンテンツが存在するかどうかを検出するために前記特定された部分の少なくともいくつかのコンテンツを解析する工程と、
前記指定されたタイプのコンテンツが存在することが検出されたかどうかに基づいて前記受信されたデータが前記宛先に通信されることを許すかどうかを決定する工程と、
前記受信されたデータが通信されるのを許すことが決定された場合、前記宛先に対応する別個の第２のプロトコルに従って前記受信されたデータをフォーマットし、前記第２のプロトコルに従ってフォーマットされた前記データを前記宛先に通信するように指示する工程と
を含むことを特徴とする方法。
【請求項１４１】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
前記受信されたデータの部分を特定するために前記第１のプロトコルに基づく仕方で前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
許可されないタイプのコンテンツが存在するかどうかを判定するために前記特定された部分の少なくともいくつかの中に含まれるコンテンツを解析する工程と、
前記許されないタイプのコンテンツが存在しないと判定された場合、複数の可能な宛先の間で負荷のバランスをとるように受信されたデータの宛先を決定する工程と、
前記決定された宛先に通信するために別個の第２のプロトコルに従って前記受信されたデータをフォーマットする工程と
を含むことを特徴とする方法。
【請求項１４２】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
前記受信されたデータの部分を特定するために前記第１のプロトコルに基づく仕方で前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
前記特定された部分の少なくともいくつかの部分のタイプを分類する工程と、
前記受信されたデータが通信される先の宛先を決定するために前記受信されたデータに関する複数の可能な宛先の間で負荷のバランスをとる工程と、
前記決定された宛先に対応する別個の第２のプロトコルを使用して前記受信されたデータをフォーマットする工程と
を含むことを特徴とする方法。
【請求項１４３】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
前記受信されたデータの部分を特定するために前記第１のプロトコルに基づく仕方で前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
前記特定された部分の少なくともいくつかの部分のタイプを分類する工程と、
前記特定された部分の少なくともいくつかの中に指定されたタイプのコンテンツが存在するかどうかを判定する工程と、
前記指定されたタイプのコンテンツが存在することが検出されなかった場合、別個の第２のプロトコルに従って前記受信されたデータをフォーマットする工程と
を含むことを特徴とする方法。
【請求項１４４】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
前記受信されたデータの部分を特定するために前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と
を具え、該処理は、
前記特定された部分の少なくともいくつかの部分に含まれるコンテンツのタイプを分類する工程と、
ファイアウォール機能を提供するために前記含まれるコンテンツを解析する工程と、
複数の可能な宛先の間で負荷のバランスをとるように前記受信されたデータの宛先を決定する工程と、
別個の第２のプロトコルに従って前記受信されたデータをフォーマットする工程と
を含むことを特徴とする方法。
【請求項１４５】
受信されたデータ通信を処理するためのコンピュータによって実施される方法であって、
ネットワークを介して宛先に通信されるべき第１のプロトコルに従ってフォーマットされたデータを受信する工程と、
前記受信されたデータの部分を特定するために前記第１のプロトコルに基づく仕方で前記受信されたデータを分解する工程と、
前記分解されたデータを処理する工程と、
該処理は、
前記特定された部分の少なくともいくつかの部分に含まれるコンテンツのタイプを分類する工程と、
前記特定された部分の少なくともいくつかの部分の中に含まれるコンテンツを解析する工程と、
複数の可能な宛先の間で負荷のバランスをとるように前記受信されたデータの宛先を決定する工程と、
別個の第２のプロトコルを使用してフォーマットされた新しい一群のデータを構成する工程と
を含み、
前記構成された新しい一群のデータを前記決定された宛先に伝送する工程とを具えたことを特徴とする方法。
【請求項１４６】
前記コンテンツは、実行された際に前記コンピューティングデバイスが前記方法を行うようにさせる命令であることを特徴とする請求項１２４記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ網における着信データ伝送の解析に関し、より詳細には、ネットワークを介して伝送される複数の通信データの処理を統合化することが可能な、データ通信処理方法、コンピューティングデバイス、および、コンピュータ可読媒体に関する。
【背景技術】
【０００２】
インターネットが、世界中の企業および消費者のためのクリティカルな商業プラットフォームおよび通信プラットフォームとして台頭している。インターネットユーザの数の劇的な増加が、インターネット中でデータの開発、処理、および配布を可能にする強力な新しいツールおよび機器がますます利用できるようになっていることと相俟って、インターネットベースのアプリケーションの普及につながっている。それらのアプリケーションには、電子商取引、電子メール、電子ファイル転送、およびオンライン対話型アプリケーションが含まれる。
インターネットのユーザおよび用途の数が増大するにつれ、インターネットトラフィックの複雑さおよび量も増大している。このトラフィック、およびこのトラフィックのビジネス上の可能性のため、ますます多くの企業が、インターネットを中心にしたビジネスを構築しており、インターネットによって提供されるべきミッションクリティカルな（ｍｉｓｓｉｏｎ−ｃｒｉｔｉｃａｌ）ビジネスアプリケーションを開発している。
【０００３】
電子商取引アプリケーションをサポートする既存の企業データ網（「ＥＤＮ」）は、顧客にさらなるパフォーマンスおよびサービスを提供するデマンドの下で極限まで使われている。詳細には、サービスに対する増大する顧客のデマンドが、ますます複雑な特定目的の（ａｄ  ｈｏｃ）ＥＤＮを生じさせている。
ＥＤＮの現在のアーキテクチャは、通常、次の３つのサブネットワークを含む。すなわち、１）Ｗｅｂサーバのローカルエリアネットワーク（ＬＡＮ）、２）アプリケーションサーバに関する計算ネットワーク、３）ストレージエリアネットワーク（ＳＡＮ）である。
以上のサブネットワークに接続された処理要素および記憶要素は、エッジスイッチとして一般に知られるブリッジングデバイスを介してワイドエリアネットワーク（ＷＡＮ）またはメトロポリタンエリアネットワーク（ＭＡＮ）にアクセスを有することが可能である。
残念ながら、以上のサブネットワークのそれぞれは、通常、別個のプロトコル、ならびにネットワークインターフェースアダプタ、ネットワークスイッチ、ネットワークオペレーティングシステム、および管理アプリケーションを含む別個の関連する１組のハードウェアおよびソフトウェアを使用する。ＥＤＮを介する通信は、プロトコル変換およびプロトコル解釈のためのサーバ処理リソースのアクティブな参加を要するサブネットワーク間のブリッジングを要する。ＥＤＮの現在のアーキテクチャには様々な欠点が存在し、その多くは、サブネットワークおよび関連するアプリケーションが、異なるベンダによって開発されており、そのようなベンダ間のＥＤＮを統合し、管理し、維持し、スケール変更することが困難であるために生じている。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ＥＤＮの現在のアーキテクチャの１つの特定の欠点は、複数の代替の宛先の間で負荷バランシングを提供すること、着信データ通信に関するファイアウォール機能を提供すること、宛先を特定するためにデータ通信のコンテンツベースの経路指定を提供すること、１つのネットワークプロトコルを使用して特定されたデータ通信が、異なるネットワークプロトコルを使用してネットワークを介して伝送されるのを可能にするプロトコル変換機能を提供すること、などのために、データ通信に対して様々なタイプの処理を行う必要があることに関連する。
多くのそのようなデータ通信処理技術は、様々な妥当なヘッダ情報およびペイロード情報を抽出するために、データを符号化するのに使用されたネットワークプロトコルに基づいて受信されたデータフレームまたはデータパケットを分解することなどの様々な共通のステップを含む。
しかし、現行の通常のマルチベンダＥＤＮによって使用される様々な異なるハードウェアおよびソフトウェアにある程度、起因して、それぞれのそのようなデータ通信処理技術は、通常、異なるハードウェア構成要素およびソフトウェア構成要素によって提供される。それらの多くの異なる構成要素のそれぞれを提供する費用、ならびにそのような構成要素を一緒に組み込むことの困難さにより、多くのシステムが所望の有用な機能をあきらめることが生じている。
さらに、複数の異なる構成要素を使用して複数のそのようなデータ通信処理技術を提供する数少ないシステムでさえ、構成要素群が構成要素群の中の他の構成要素によって既に行われた冗長なステップを行うことによって生じさせられる遅延および非効率を被る。
したがって、大幅な拡張性、非常に高い可用性、および管理の容易さを備えた手頃なパフォーマンスの高いＥＤＮソリューションを提供する能力をそのような特定目的の既存のシステムは相当に損なっているか、または完全に失っている。
【０００５】
現在のＥＤＮアーキテクチャに存在するベンダ間の問題に加えて、エッジスイッチなどの単一のデバイスでさえ、セキュアな仕方で適切な宛先にデータを転送するのを、特に伝送のサービス品質（「ＱＯＳ」）について何らかの保証をして行うことが、しばしば困難である。
例えば、現在のアーキテクチャは、通常、ネットワーク内の各ノードに１つまたは複数のネットワークアドレス（例えば、ＩＰアドレスなどの論理ネットワークアドレス、および／またはメディアアクセス制御（「ＭＡＣ」）アドレスなどの物理ネットワークアドレス）を割り当て、ネットワーク経路指定−スイッチングデバイスが、宛先ノードのネットワークアドレスを使用して、送信元ノードからのデータの伝送をその宛先ノードに経路指定する。
しかし、許可のない送信元ノードが既知のネットワークアドレスを有する宛先ノードにデータを送信するのを防止することは、特にその送信元ノードが、自らのネットワークアドレスを詐称することによって自らの身元を隠している場合、困難であり、これに対応して、受信データが許可された送信元から来ていることを宛先ノードが確認することも困難である。
さらに、許可された送信元ノードでさえ、所望の宛先にデータを伝送することが困難である可能性がある。その理由としては、送信元ノードは、伝送を行うために宛先ノードに割り当てられている、またはマップされている適切なネットワークアドレス、またはその他の論理名（例えば、ＤＮＳ名）を知らなければならないからである。
さらに困難なのが、様々な加入者となる可能性のある宛先の興味を引く可能性があるタイプのデータを公開する場合などの、適切な宛先を特定することが困難な状況である。
最後に、現在のアーキテクチャでは、通常、伝送されたデータが、最小ネットワーク待ち行列、または最小のスループットレベルなどの所望のＱＯＳで処理されることが確実にならない。
そこで、本発明の目的は、重複して行われる必要のない複数の通信処理データ通信の処理を統合化することが可能な、データ通信処理方法、コンピューティングデバイス、および、コンピュータ可読媒体を提供することにある。
【０００６】
【特許文献１】
米国特許仮出願第２８７，０６８号明細書
【特許文献２】
米国特許仮出願第２８７，１２１号明細書
【特許文献３】
米国特許仮出願第２８７，０６９号明細書
【特許文献４】
米国特許仮出願第２８７，１２０号明細書
【特許文献５】
米国特許仮出願第２８６，９１８号明細書
【特許文献６】
米国特許仮出願第２８６，９２２号明細書
【特許文献７】
米国特許仮出願第２８７，０８１号明細書
【特許文献８】
米国特許仮出願第２８７，０７５号明細書
【特許文献９】
米国特許仮出願第３１４，０８８号明細書
【特許文献１０】
米国特許仮出願第３１４，１５８号明細書
【非特許文献１】
Robert W.Kembel, "Fibre Channel: A Comprehensive Introduction", Northwest Learning Associates, Inc.
【非特許文献２】
"InfiniBand Architecture Specification, Volume1 and 2, Release 1.0a"
【課題を解決するための手段】
【０００７】
複数の技術によって共有される処理ステップの一部、またはすべてが１度だけ行われるようにデータ通信を処理するための複数の技術を統合するソフトウェア機構を以下に説明する。一部の実施形態では、複数の処理技術の一部、またはすべてが、パフォーマンスをさらに速めるために、異なるプロセッサ群上などで並列に行われる。複数の処理技術を統合することにより、以下により詳細に説明するとおり、様々な利点が提供される。
【０００８】
一実施形態として、マルチプロトコルエッジスイッチ（「ＭＰＥＸ」）を使用して、異なるネットワーク上の宛先に転送されるべきあるネットワークからの受信データ通信に関する複数の処理技術が統合される。そのようなＭＰＥＸは、通常、イーサネット（登録商標）とファイバチャネルなどの複数のデータリンク層ネットワークプロトコル（すなわち、７層ＩＳＯネットワークモデルの層２）を使用するネットワークをブリッジするゲートウェイとして作用するように設計される。詳細には、そのようなＭＰＥＸは、通常、ＭＰＥＸが属する送信元ネットワークによって使用される送信元ネットワークプロトコルを使用して符号化された着信データ通信を受け取り、受信データ通信に対応するが、異なる宛先ネットワークによって使用される異なる宛先ネットワークプロトコルを使用して符号化された発信データ通信を構成するためにプロトコル変換を行う。以下により詳細に説明する実施形態では、ＭＰＥＸが、妥当なヘッダ情報およびペイロード情報を明らかにするために着信データフレームまたは着信データパケットを再構成することなどの共通の処理ステップが１度だけ行われるように１つまたは複数の追加のデータ通信処理技術を統合するように強化される。さらに、一部のＭＰＥＸ実施形態は、ネットワークプロセッサ（例えば、ＣポートコーポレーションからのＣポートＣ−５ネットワークプロセッサ）などの特殊化されたハードウェアを使用して、共通の処理ステップ、および／または共通でない処理ステップの速度を高める。
【０００９】
一実施形態として、強化されたＭＰＥＸが、プロトコル変換処理、ＭＰＥＸが属するネットワークの１つまたは複数の上の複数の代替の宛先の間における負荷バランシング、ＭＰＥＸが属するネットワークの１つまたは複数の上のノードのいずれか、またはすべてに関するファイアウォール解析およびその他のコンテンツベースの解析、および適切な宛先および／または伝送経路を特定するためのデータ通信のコンテンツベースの経路指定のうちの一部、またはすべてを含むことが可能な複数の処理技術を提供する。様々な他のデータ通信処理技術も同様に一緒に統合することができる。さらに、ＭＰＥＸの一部の実施形態は、適切に構成された個別の汎用プロセッサ（例えば、モトローラ社からのＰｏｗｅｒＰＣプロセッサ）上などで、追加の処理技術の一部、またはすべて、およびプロトコル変換処理（例えば、共通でない処理ステップ）を並列に行う。
【００１０】
その他の実施形態では、複数のデータ通信処理技術が、最終の宛先にデータ通信を転送する前にデータ通信を受け取る中間デバイスまたは中間構成要素が存在すれば、そのデバイスまたは構成要素によってなど、ＭＰＥＸ以外のデバイスによって一緒に統合される。さらに、様々な特殊化されたハードウェアを一部の実施形態を使用して、データ通信処理技術の一部、またはすべてのパフォーマンスを助けることができる。例えば、データ通信のコンテンツベースの経路指定（例えば、適切な宛先を特定するのを助けるなどのために、ＩＳＯネットワーキングモデルの層４〜７の一部、またはすべてにおいてデータ通信を解析することによる）、および／または負荷バランシングをＣＳＳ  １１０００系のスイッチ（例えば、ＣＳＳ１１１５４）、および／またはシスコシステムズ社からのＣｏｎｔｅｎｔ  Ｒｏｕｔｅｒ  ４４００、ＩＢＭコーポレーションからのＷｅｂＳｐｈｅｒｅ  Ｅｄｇｅ  Ｓｅｒｖｅｒ、およびアルテオンＷｅｂＳｙｓｔｅｍｓからのＡＣＥｄｉｒｅｃｔｏｒ  Ｗｅｂスイッチなどの製品を使用して支援することができる。
【００１１】
さらに、ＭＰＥＸの一部の実施形態、またはその他の中間デバイスは、仮想識別子を使用して、そのＭＰＥＸ、またはその他の中間デバイスが属するネットワークの１つまたは複数を介して通信を経路指定する。各仮想識別子が、一部の実施形態では、ネットワークを介して１つまたは複数の宛先に至るパスに、そのネットワークに関するネットワークマネージャによるなどして、割り当てられる。通信の経路指定のために、宛先に特有のネットワークアドレス、または論理名ではなく、仮想識別子を使用することにより、以下により詳細に説明する様々な利点が提供される。
【００１２】
詳細には、仮想識別子を使用してデータ通信を経路指定するＭＰＥＸまたはその他の中間デバイスの実施形態は、１つまたは複数の仮想識別子（「ＶＩ」）ネットワークインターフェースコントローラ（「ＮＩＣ」）機構（例えば、各ネットワークインターフェースに関して１つのＶＩ  ＮＩＣ）を含む。ＶＩ  ＮＩＣは、ローカルのアプリケーション、または遠隔のアプリケーションからなど、ネットワーク上の１つまたは複数の遠隔ノードに対するデータ通信が生じるという指示を受け取った場合、ネットワークを介して適切な遠隔の宛先ノードに至るようにデータ通信を経路指定するのに使用されることが、その宛先ノードに割り当てられる、または直接に関連付けられることなく可能な適切な伝送仮想識別子を特定する。そのようなデータ通信には、データの一時的なコネクションレス伝送（例えば、送信元から宛先への単方向伝送）とデータの複数回の個別の伝送（例えば、コネクション開始側の宛先とコネクション宛先がデータをやりとりするように伝送するのを可能にする持続的な専用のコネクション）がともに含まれることが可能である。
【００１３】
ＶＩ  ＮＩＣは、データ通信を様々な仕方で経路指定するために適切な伝送仮想識別子を特定することができる。一部の実施形態では、ＶＩ  ＮＩＣは、一部の、またはすべての発信データ通信をネットワークに関するネットワークマネージャに登録し、そのネットワークを介するその通信のために使用されるべき適切な伝送仮想識別子をネットワークマネージャから受け取る。ただし、示されたデータ通信が以前に登録されているデータ通信に（例えば、既存のコネクションに、または同じ宛先に対する以前の通信に同じ伝送の仕方で）対応する場合、ＶＩ  ＮＩＣは、代わりに、一部の実施形態では、示されたデータ通信に関してさらなる登録を行うのではなく、そのデータ通信に関する以前に受け取られた伝送仮想識別子を使用することが可能である。データ通信を伝送することができる仕方は、ネットワークによってサポートされる伝送特性とともに変わり、特定のサービスクラス（「ＣＯＳ」）、または伝送優先順位などの因子を含むことが可能である。
【００１４】
仮想識別子がネットワークを介するパスに割り当てられる一部の実施形態では、そのような仮想パス識別子に対するパスの割当ては、データ通信登録の受領時にネットワークマネージャによるなどして、データ通信が生じるという指示が受け取られた後に動的な仕方で行われる。パスに仮想パス識別子を割り当てることには、ネットワークマネージャによるなどして、宛先に至るパス上の１つまたは複数の中間経路指定デバイス（例えば、ルータまたはスイッチ）のそれぞれを構成して、経路指定デバイスの１つが、仮想識別子を含むデータ通信を受信した際、その通信を適切な仕方で宛先に直接にか、または同様に構成されたパス上の次の経路指定デバイスに代わりに転送するようにすることが含まれることが可能である。
【００１５】
また、ＶＩ  ＮＩＣは、一部の実施形態では、直接にか、またはネットワークマネージャと連携して（例えば、データ通信をネットワークマネージャに登録することにより）、示されたデータ通信に関する適切な宛先を特定するのを助けることができ、そのデータ通信に関する伝送仮想識別子は、データ通信をそれらの宛先に経路指定するように選択される。一部の状況では、示されたデータ通信は、宛先ネットワークアドレスを使用するなどして、宛先を明確に指定することが可能であり、他方、別の状況では、アプリケーションが情報を公開しており、情報をその情報に対する１名または複数名の現在の加入者に経路指定するのに第三者に頼っている場合などのように、宛先が指定されないことが可能である。ただし、宛先が指定されるかどうかにかかわらず、これらの実施形態におけるＶＩ  ＮＩＣおよび／またはネットワークマネージャは、指定された宛先が選択された宛先のなかにない場合でも、示されたデータ通信に関して適切な１つまたは複数の宛先を選択することができる。この宛先選択は、指定された宛先が存在すれば、その宛先、データ通信に対して、受け手となる可能性のある人によって関心の表明（例えば、加入要求）が行われていれば、その表明、通信されているデータのタイプまたは分類、データ通信の仕方（例えば、指定されたＣＯＳ、および／または指定された伝送優先順位）、送信元ノード、および／または送信元アプリケーションの識別またはタイプ、宛先アプリケーションのタイプ等を含め、様々な因子の１つまたは複数を考慮して行うことができる。
【００１６】
一部の状況では、示されたデータ通信の送信元が、ネットワーク内のいずれのノードにもマップされていない宛先ネットワークアドレスを使用して宛先を指定することができ、その場合、ＶＩ  ＮＩＣ、および／またはネットワークマネージャが、その宛先ネットワークアドレスに関する適切な宛先を選択することができる。また、示されたデータ通信に関して複数の宛先が選択されることも、そのデータ通信が単一の宛先（選択された宛先の１つであることも、そうでないことも可能な）を指定していた場合でも可能である。そうである場合、複数の宛先（または複数の次の経路指定デバイス）のそれぞれに受信された通信のコピーを転送するように伝送仮想識別子を使用する受信された通信を分割するように１つまたは複数の中間経路指定デバイスを構成することなどにより、単一の伝送仮想識別子を使用してデータ通信を複数の選択された宛先のそれぞれに経路指定することができる。
【００１７】
一実施形態として、仮想識別子は、送信元に特有であるネットワークを介するパスに対応する。そうである場合、異なるパスが重なり合わない場合、異なる宛先に向かうなどの異なるパスに関して単一の仮想識別子が、異なる送信元によって使用されることが可能である。また、仮想アドレスの使用により、仮想識別子に対応するパスが、同一の宛先に至る異なるパスに、または異なる宛先に至るパスに対応するように、仮想識別子を使用する送信元にトランスペアレントな仕方で再構成されることも可能になる。
【００１８】
一部の実施形態では、送信元によって示されたデータ通信が双方向通信（例えば、宛先の１つまたは複数からの応答）をもたらす可能性がある場合、ＶＩ  ＮＩＣは、宛先の１つまたは複数から送信元に戻るようにデータを経路指定するために使用することができる応答仮想識別子も特定する。ＶＩ  ＮＩＣがデータ通信をネットワークマネージャに登録する場合、この応答仮想識別子は、ネットワークマネージャから受け取られることが可能である。この応答仮想識別子を特定した後、ＶＩ  ＮＩＣは、応答仮想識別子を使用して経路指定される受信データ通信をどのように処理するかを示す情報にその識別子を関連付ける。そのような受信データ通信は、宛先ノードに関連する１つまたは複数のリソース（例えば、実行中のアプリケーションプログラム、ストレージ上のファイル、またはノードの一部であるデバイス）にそのデータ通信を転送することなどにより、様々な仕方で処理することができる。例えば、送信元ノード上の送信元アプリケーションが双方向通信を開始した場合、その送信元ノードに関するＶＩ  ＮＩＣは、応答仮想識別子をその送信元アプリケーションに関連付けて、受信された応答が送信元アプリケーション（この場合、それらの受信された通信に関して宛先アプリケーションとなる）に転送されることが可能であるようにすることができる。代替として、ＭＰＥＸ上のＶＩ  ＮＩＣは、前述した処理技術の１つまたは複数を使用して受信データ通信を処理してから、対応する生成された発信データ通信を別のネットワーク上の遠隔ノードに転送することも可能である。
【００１９】
データ通信が転送される先の対応する宛先アプリケーションに仮想識別子を関連付けることは、様々な仕方で行うことができる。例えば、ＴＣＰ／ＩＰ機構を使用して通信するソフトウェアアプリケーションは、しばしば、ＩＰアドレスと、そのＩＰアドレスを使用するコンピューティングデバイスに特有のソフトウェアポート番号の組合せを含むＴＣＰ／ＩＰソケットを使用する。したがって、それらの実施形態では、応答仮想識別子は、送信元アプリケーションに関するソケット情報に関連付けることができる。同様に、一部の実施形態では、宛先ノードは、その宛先ノードにデータ通信を経路指定するのに使用された伝送仮想識別子を、データ通信の登録の一環としてネットワークマネージャによって宛先ノードに提供される情報に基づき、かつ／またはデータ通信の一部として含まれる情報に基づくなどして、宛先ノードにローカルな適切なリソースに関連付ける。
【００２０】
ＶＩ  ＮＩＣは、応答仮想識別子に関連するＴＣＰ／ＩＰソケット情報などの受信された通信に関する宛先アプリケーションについてのアプリケーション特有の情報にアクセスを有する場合、その情報を使用してさらなる利点を提供することができる。例えば、多くのネットワークノード、および／またはそのようなノード上で実行されているアプリケーションは、セキュリティ上の理由などで、通信が受け入れ可能であるためには、様々な情報が受信された通信の中で正しく指定されていることを要する。一例は、ＴＣＰ／ＩＰ通信機構を使用する宛先アプリケーションが、いずれの受信された伝送もそのアプリケーションに対応する正しいＴＣＰ／ＩＰソケット情報を含むことを要する可能性があることである。ただし、伝送仮想識別子の前述した使用により、以下により詳細に説明するとおり、有効な通信が、宛先アプリケーションに関する誤ったＴＣＰ／ＩＰソケット情報を有して受信されることがもたらされる可能性がある。これが生じた場合、通信を受信したＶＩ  ＮＩＣは、その通信を経路指定するのに使用された伝送仮想識別子に関連するＴＣＰ／ＩＰソケット情報を使用することにより、そのアプリケーションに関する正しい情報で誤った含まれるＴＣＰ／ＩＰソケット情報を置き換えることができる。さらに、一部の実施形態では、ＶＩ  ＮＩＣは、受信された通信の正確さを様々な仕方で検証してから、そのような情報の置換えを行うことができる。
【００２１】
仮想識別子の使用により、宛先アプリケーションに関して誤った情報を有する有効な受信された通信が様々な仕方でもたらされる可能性がある。例えば、送信元アプリケーションが宛先ＩＰアドレスを指定し、その宛先ＩＰアドレスが通信されるデータの中に（例えば、そのような宛先ネットワークアドレスのために確保された場所に）含められるが、その送信元アプリケーションに関するＶＩ  ＮＩＣが、その宛先ＩＰアドレスに対応しない（例えば、他のＩＰアドレスを有する）１つまたは複数の宛先を特定した場合、そのデータ通信は、特定された宛先におけるアプリケーションによって使用されるＩＰアドレスに対応しない指定された宛先ＩＰアドレスを含む。さらに、単一の宛先ＩＰアドレスだけが指定されていた場合に、異なるＩＰアドレスを有する複数の宛先がＶＩ  ＮＩＣによって特定された場合、宛先のほとんどは、正しいＩＰアドレス情報を含まない通信を受信する。そのような状況では、通信を受信したＶＩ  ＮＩＣは、その通信を経路指定するのに使用された仮想識別子に関連するＴＣＰ／ＩＰソケット情報を使用することにより、アプリケーションに対する正しいＩＰアドレス情報で、誤った含まれるＩＰアドレス情報を置き換えることができる。同様の情報の置換えをその他の通信機構に関しても使用できることが、当分野の技術者には認められよう。さらに、データ通信が単一の宛先だけに経路指定されている状況では、データ通信を送信するＶＩ  ＮＩＣは、そのＶＩ  ＮＩＣが宛先アプリケーションに関する必要なアプリケーション特有の情報にアクセスを有する場合、情報の置換えを行うことができる。
【００２２】
一実施形態として、ＶＩ  ＮＩＣは、直接に、またはネットワークマネージャと連携して（例えば、データ通信をネットワークマネージャに登録することにより）、伝送仮想識別子以外のデータ通信を経路指定することに関連する情報も特定することができる。例えば、ＶＩ  ＮＩＣは、データの伝送のために使用されるべき指定されたＣＯＳ、および／または優先順位などの、データ通信が行われるべき仕方に関連する１つまたは複数のＱＯＳパラメータを特定することができる。そうである場合、ＶＩ  ＮＩＣは、そのデータ通信に関するデータを伝送する際にそのようなＱＯＳパラメータを使用することもできる。
【００２３】
複数のデータ通信処理技術を統合すること、および仮想識別子の使用に関するさらなる詳細は、それぞれ参照により全体が組み込まれている次の特許出願で説明されている。すなわち、「同期された５０％デューティサイクルクロックの生成（GENERATION OF SYNCHRONIZED 50% DUTY CYCLE CLOCK）」という名称の２００１年４月２７日に出願した（特許文献１）（弁理士整理番号０３００４８０１１ＵＳ）、「位相ロックループのための周波数検出およびロック（FREQUENCY DETECTION AND LOCK FOR PHASED LOCK LOOP）」という名称の２００１年４月２７日に出願した（特許文献２）（弁理士整理番号０３００４８０１２ＵＳ）、「ファイバチャネルスイッチファブリックを使用して高いパフォーマンスおよび高い可用性のためにクラスタネットワークを実施するための方法（METHOD FOR IMPLEMENTING A CLUSTER NETWORK FOR HIGH PERFORMANCE AND HIGH AVAILABILITY USING A FIBRE CHANNEL SWITCH FABRIC）」という名称の２００１年４月２７日に出願した（特許文献３）（弁理士整理番号０３００４８０１３ＵＳ）、「企業データセンタのためのマルチプロトコルネットワーク（MULTI-PROTOCOL NETWORK FOR ENTERPRISE DATA CENTERS）」という名称の２００１年４月２７日に出願した（特許文献４）（弁理士整理番号０３００４８０１４ＵＳ）、「統一された企業ネットワークスイッチ（ＵＥＮＸ）製品規格（UNIFIED ENTERPRISE NETWORK SWITCH (UENX) PRODUCT SPECIFICATION）」という名称の２００１年４月２７日に出願した（特許文献５）（弁理士整理番号０３００４８０１５ＵＳ）、「サービス品質の例（QUALITY OF SERVICE EXAMPLE）」という名称の２００１年４月２７日に出願した（特許文献６）（弁理士整理番号０３００４８０１６ＵＳ）、「通信モデル（COMMUNICATIONS MODEL）」という名称の２００１年４月２７日に出願した（特許文献７）（弁理士整理番号０３００４８０１７ＵＳ）、「均一な企業ネットワークシステム（UNIFORM ENTERPRISE NETWORK SYSTEM）」という名称の２００１年４月２７日に出願した（特許文献８）（弁理士整理番号０３００４８０１８ＵＳ）である。次の特許出願のそれぞれも同様に、複数のデータ通信処理技術を統合すること、および仮想識別子の使用に関するさらなる詳細を含み、やはりそれぞれ、参照により全体が本明細書に組み込まれている。すなわち、２００１年８月２１日に出願した「相互接続ファブリックモジュール（INTERCONNECT FABRIC MODULE）」という名称の（特許文献９）（弁理士整理番号０３００４８０１５ＵＳ１）、および２００１年８月２１日に出願した「仮想識別子を使用してネットワークを介して伝送されるデータを経路指定すること（USING VIRTUAL IDENTIFIERS TO ROUTE TRANSMITTED DATA THROUGH A NETWORK）」という名称の（特許文献１０）（弁理士整理番号０３００４８０３６ＵＳ）である。
【発明の効果】
【００２４】
本発明によれば、プロトコル変換を行う工程と、ＭＰＥＸ（３００）が属するネットワークの１つまたは複数の上の複数の代替の宛先（３４７）の間で負荷バランシングを行う工程と、ＭＰＥＸ（３００）が属するネットワークの１つまたは複数の上のノードのいずれか、またはすべてに関してファイアウォール解析およびその他のコンテンツベースの解析（３４５）を行う工程と、適切な宛先を特定するためにデータ通信のコンテンツベースの経路指定を提供する工程となどの、宛先に転送されるべき受信されたデータ通信に関する複数の処理技術（３４３、３４５、３４７、３４９）を、マルチプロトコルエッジスイッチ（「ＭＰＥＸ」３００）を使用して、並列に処理するようにしたので、複数の技術によって共有化された処理ステップが、重複して行われる必要のない複数のデータ通信処理を統合化することができ、作業効率を高め、処理能力を向上させることができる。
【発明を実施するための最良の形態】
【００２５】
例示の目的で、ファイバチャネルベースのネットワークを別のネットワークプロトコルを使用するネットワークに接続するのにＭＰＥＸが使用され、かつ／またはＭＰＥＸがＥＤＮアーキテクチャの一環として使用される一部の実施形態を以下に説明する。
ただし、本発明の技術は、多種多様な他の状況で、ＩｎｆｉｎｉＢａｎｄベースのネットワークおよびデバイスを含む他のタイプのデバイスおよびネットワークとともに使用することもできること、ならびに本発明は、ファイバチャネルネットワークまたはＥＤＮアーキテクチャとともに使用されることに限定されないことが、当分野の技術者には認められよう。ファイバチャネルについてのさらなる詳細は、参照により本明細書に全体が組み込まれている（非特許文献１）で見ることができる。ＩｎｆｉｎｉＢａｎｄについてのさらなる詳細は、参照により本明細書に全体が組み込まれている２００１年６月１９日付けの、「ｗｗｗ．ｉｎｆｉｎｉｂａｎｄｔａ．ｏｒｇ」でＩｎｆｉｎｉＢａｎｄトレードアソシエーションのＷｅｂサイトにおいて、この執筆の時点で入手可能である（非特許文献２）で見ることができる。
【００２６】
図１は、仮想識別子を使用し互いに通信する例示的なファイバチャネルファブリックベースの相互接続ネットワークの様々なノードを示すネットワーク図である。この例示的な実施形態では、高速スイッチング機能を備えた複数の相互接続ファブリックモジュール（「ＩＦＭ」）１１０が、中間経路指定デバイスとして使用されて相互接続ファブリックを形成し、複数のノード１０５、ネットワークマネージャ１１５、およびマルチプロトコルエッジスイッチ（「ＭＰＥＸ」）１２０がファブリックに接続されている。ノードのそれぞれは、データを通信する際、およびデータを受け取る際に仮想識別子を使用する少なくとも１つのＶＩ  ＮＩＣを有する。ＭＰＥＸは、ファイバチャネルネットワークをイーサネット（登録商標）ベースのネットワーク、またはＩｎｆｉｎｉＢａｎｄベースのネットワークなどの外部ネットワークに接続するのに使用され、同様に、少なくとも１つのＶＩ  ＮＩＣを含む。データは、ファイバチャネル標準によって規定されるようなフレームを使用して相互接続ファブリックを介して伝送される。
【００２７】
この例示的な実施形態では、ＩＦＭは、データが互いに接続されたポートを介して伝送されることが可能であるように自らの通信ポートを互いに接続するように動的に構成されることが可能である。ネットワークマネージャは、送信元ノードから宛先ノードへのデータ通信に関してＶＩ  ＮＩＣから登録指示を受け取った際、フレームを互いに送信する際に送信元ノードおよび宛先ノードによって使用される伝送仮想識別子および応答仮想識別子を選択する。ＶＩ  ＮＩＣがＭＰＥＸの一部である場合、伝送仮想識別子および応答仮想識別子は、ＭＰＥＸ、および／または遠隔ネットワーク上の送信元ノードまたは宛先ノードに使用のために供給されることが可能である。また、ネットワークマネージャは、フレームがノード間を移動する際に使用するＩＦＭおよびＩＦＭのポートを介する経路を特定することも行う。次に、ネットワークマネージャは、特定されたパスのＩＦＭを構成して、伝送仮想識別子または応答仮想識別子がＩＦＭの１つで受信されたことをフレームが示す場合、そのフレームが適宜、そのパスを介して宛先ノードまたは送信元ノードに転送されるようにする。したがって、伝送仮想識別子と応答仮想識別子は、この例示的な実施形態では同一のパスを（反対方向で）使用するが、他の実施形態では別々のパスを使用することも可能である。
【００２８】
各ＩＦＭは、仮想識別子を宛先ポートにマップするポートのそれぞれに関して仮想識別子テーブルを保持することが可能である。フレームが送信元ポートで受信された場合、ＩＦＭは、そのフレームに関する仮想識別子とその送信元ポートに関する仮想識別子テーブルを使用して、そのフレームが経由して転送されるべき宛先ポートを特定する。したがって、この実施形態では、仮想識別子は、送信元デバイスまたは宛先デバイスを特定するのではなく、デバイス間のパスを特定する。一実施形態では、仮想識別子は、ドメインアドレスおよび仮想アドレスの両方を含む。各ＩＦＭにドメインアドレスが割り当てられ、同一のドメインアドレスを割り当てられたＩＦＭは、同一のドメイン内にある。ＩＦＭは、ドメインアドレスを使用してドメイン間でフレームを転送し、ネットワークマネージャが、ＩＦＭをドメイン間パスを伴って構成することも可能である。ＩＦＭが、自らのドメインアドレスに一致するドメインアドレスを有する仮想識別子のフレームを受信した場合、そのフレームは、宛先ドメインに着信している。次に、ＩＦＭは、そのフレームを仮想識別子の仮想アドレスに従って転送する。しかし、ドメインアドレスが一致しない場合、フレームは、宛先ドメインに着信しておらず、ＩＦＭは、ドメイン間パスを使用してフレームを転送する。したがって、ＩＦＭポートに関する仮想識別子テーブルは、一部の実施形態では、ドメインアドレスおよび仮想アドレスをフレームが経由して転送されるべき宛先ポートにそれぞれマップするドメインアドレステーブルと仮想アドレステーブルに分割されることが可能である。
【００２９】
第１のデータリンク層ネットワークプロトコル（すなわち、７層ＩＳＯネットワークモデルの層２）を使用して符号化されたデータフレームを処理することを図示する例として、図２Ａが、着信のイーサネット（登録商標）符号化されたデータフレームを示している。この着信データフレームに対して複数の処理技術が施され、着信データフレームに対応するが、第２のデータリンク層ネットワークプロトコルを使用して符号化された新たなデータフレームが、例示的な発信のファイバチャネル符号化されたデータフレームで図２Ｂに示すとおり構成される。次に、このファイバチャネルデータフレームを、宛先ネットワークアドレスまたは仮想識別子を使用してファイバチャネルデータフレームをファイバチャネルネットワーク上のノードに経路指定することなどにより、所定の宛先に転送することができる。
【００３０】
図示する実施形態では、図２Ａに示すイーサネット（登録商標）データフレームは、ＨＴＴＰ要求メッセージをペイロードが含むカプセル化されたＴＣＰ／ＩＰパケットであるペイロードを含む。このイーサネット（登録商標）データフレームのヘッダをエントリ２０２〜２０８の中で示しており、データフレームに関する宛先物理アドレス（例えば、ＭＡＣアドレス）、送信元物理アドレス、およびイーサネット（登録商標）データフレームペイロードのタイプなどの情報を含む。この図示した実施形態では、イーサネット（登録商標）データフレームは、異なるデータリンク層ネットワークプロトコルを使用する２つまたはそれより多くの別個のローカルエリアネットワーク（「ＬＡＮ」）を接続するＭＰＥＸに経路指定されており、したがって、エントリ２０４の中の宛先物理アドレスは、受信が行われたイーサネット（登録商標）データフレームの源であるイーサネット（登録商標）ベースのＬＡＮ上のＭＰＥＸに関する宛先物理アドレスである。
【００３１】
イーサネット（登録商標）データフレームを受信すると、ＭＰＥＸは、様々なタイプの処理を統合された仕方で行ってから、対応するデータフレームをファイバチャネルプロトコルを使用するＭＰＥＸが属する異なるＬＡＮ上の次の（そして、場合により、最終的な）宛先に転送する。詳細には、図示した実施形態におけるＭＰＥＸは、まず、処理のために使用されるべきイーサネット（登録商標）データフレームのヘッダおよびペイロードの中の様々な情報を明らかにするため、受信されたイーサネット（登録商標）データフレームを分解する。データフレームのこの分解は、ペイロードタイプ情報がデータフレームの第２１番および第２２番のバイトに存在し、ペイロード情報がデータフレームのバイト２３から開始するという知識に基づくなど、イーサネット（登録商標）プロトコルに特有の仕方で行われる。この分解は、適切な仕方で構成された汎用プロセッサによる、または代わりに、分解を効率的に行うように最適化された適切なネットワークプロセッサによるなど、様々な仕方で行われることが可能である。
【００３２】
受信されたデータフレームの分解が行われた後、分解されたデータフレーム情報は、逐次に、または並列に様々な処理技術によって使用されることが可能である。受信されたデータフレームを一度だけ分解し、次に、分解された情報を使用して複数の処理技術を施すことにより、処理を迅速に効率的に行うことが、特に、技術の一部、またはすべてが並列に行われることが可能な状況において可能になる。一部の実施形態では、複数の汎用プロセッサ、またはその他の別々の処理機能がＭＰＥＸに利用可能であり（例えば、ネットワークプロセッサの一部として）、そうである場合、各解析技術を別個の処理機能の１つで並列に行うことが可能である。
【００３３】
図示した実施形態では、受信されたデータフレームに対して行われる解析技術には、データフレームペイロードの中に含まれるコンテンツのタイプを分類すること、ペイロードを解析して、許可されていないコンテンツタイプが存在しているかどうかを判定すること、対応するデータフレームが転送される先の複数の可能な宛先の１つまたは複数を選択すること（例えば、その可能な宛先の間で負荷のバランスをとるため）、ならびに選択された宛先が属するネットワークによって使用されるデータリンク層ネットワークプロトコルに基づいて新たなデータフレームを構成することが含まれる。
【００３４】
コンテンツ分類解析は、宛先アプリケーションに最終的に供給される情報を決定するように行われ、したがって、７層ＩＳＯネットワーキングモデルの層４〜７における分類に対応する。図示した実施形態では、コンテンツ分類解析は、エントリ２０８の中に含まれるペイロードタイプ情報を使用して、そのイーサネット（登録商標）データフレームペイロードがＩＰパケットであることを判定する。次に、コンテンツ分類解析は、エントリ２１２の中のＩＰパケットペイロードのプロトコルのタイプを含め、エントリ２１０〜２２０の中のＩＰパケットヘッダの中の情報を解析する。ＩＰパケットペイロードがＴＣＰプロトコルベースのパケットであると判定すると、コンテンツ分類は、次に、エントリ２２４の中の宛先ソフトウェアポートアドレスを含め、エントリ２２２〜２２６の中のＴＣＰパケットヘッダの中の様々な情報を解析する。図示した実施形態では、コンテンツ分類解析は、次に、そのＴＣＰパケットのペイロードがＨＴＴＰプロトコルベースのメッセージである可能性が高いことを、ＨＴＴＰアプリケーション層（すなわち、７層ＩＳＯモデルの層７）プロトコルベースのメッセージに関する周知のポート８０の使用に基づいて判定する。
【００３５】
一部の実施形態では、コンテンツタイプ分類は、コンテンツのアプリケーション層タイプがＨＴＴＰメッセージであると判定した後に終了することが可能であるが、図示した実施形態では、解析技術は、継続してＴＣＰパケットペイロードを符号化するのに使用されたアプリケーション層プロトコルに特有の仕方でエントリ２２８〜２３６の中のＴＣＰパケットペイロードを解析する。例えば、エントリ２２８の中に示されたＨＴＴＰメッセージの最初の行を解析することにより、コンテンツ分類技術は、そのＨＴＴＰメッセージが要求メッセージであると判定することができる（すなわち、「ＧＥＴ」コマンドの存在により）。さらに、そのメッセージによって要求された特定のユニフォームリソースアイデンティファイア（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）（「ＵＲＩ」）などの様々な他のタイプの情報も特定することができる。図示したメッセージでは、そのような解析は、エントリ２３０の中のホストＨＴＴＰメッセージヘッダフィールド値「ｗｗｗ．ＸＹＺ．ｃｏｍ」をエントリ２２８の中の「ＧＥＴ」コマンドの後のＵＲＩのパス部分と結合して、「ｈｔｔｐ：／／ｗｗｗ．ＸＹＺ．ｃｏｍ／ｐｕｂ／ｔｅｘｔ．ｈｔｍｌ」という要求されたＵＲＩを形成することに関わる。その他のＨＴＴＰメッセージヘッダフィールドの存在または値、あるいはＨＴＴＰメッセージ本文の中の情報などのＨＴＴＰメッセージに関する他のタイプの情報が関心の対象となることが可能であること、ならびに他のアプリケーション層プロトコル（例えば、ｔｅｌｎｅｔ、ＦＴＰ、ＳＭＴＰ、ＤＮＳ、ＮＦＳ等）を使用して符号化された情報、および他のタイプのデータ（例えば、ビデオデータまたはストリーミング音声データ）も同様に、そのアプリケーション層プロトコル、またはデータのタイプに特有の仕方で解析できることが、当分野の技術者には認められよう。
【００３６】
次に、コンテンツタイプ分類から得られた情報を、コンテンツ分類の後に行われる他の処理技術を支援し、かつ／または対応するデータフレームを選択された宛先に伝送する仕方を決めるのを支援する（例えば、ビデオデータに関する最小サービス品質（「ＱｏＳ」）パラメータを指定して、または高い優先順位タイプの要求または応答のために選択された宛先に対する既存のコネクションに割り込みを行って）などの、様々な仕方で使用することができる。
【００３７】
イーサネット（登録商標）データフレームペイロードのコンテンツタイプを分類することに加えて、分解されたデータフレーム情報を、ペイロードの中に必要とされるコンテンツまたは禁止されたコンテンツが存在すること、または存在しないことを検出するなどの様々な他の仕方で解析することも可能である。一部の実施形態では、コンテンツ解析技術により、禁止されたタイプのデータが宛先ネットワークに入ることが防止されるファイアウォール機能が提供される。例えば、ファイアウォールは、ＩＰパケットヘッダのエントリ２１６および２１８の中の送信元ＩＰアドレスや宛先ＩＰアドレスなどの、ペイロードの中で指定された高レベルの送信元ネットワークアドレスおよび／または宛先ネットワークアドレスに基づいてデータフレームをブロックすることができる。さらに、イーサネット（登録商標）データフレーム、ＩＰパケット、および／またはＴＣＰパケットのペイロードを解析して、指定された情報（例えば、指定されたパターンに一致する文字のストリング）の存在または不在を検出することも可能である。より高いレベルの情報がコンテンツタイプ分類解析から利用できる場合、コンテンツ解析技術は、そのような情報をさらに使用してより高度な解析を行うことが可能である。例えば、ファイアウォールが、すべてのＦＴＰトラフィック、すべてのＨＴＴＰ要求（ただし、応答ではない）メッセージ、またはあるＵＲＩを指定するメッセージなどのあるタイプのメッセージだけを禁止することが可能である。
【００３８】
コンテンツ解析技術が禁止された情報の存在を明らかにした場合、エントリ２１８の中で示される宛先ＩＰアドレスに対応する選択された宛先への対応するデータフレームの転送を防止する、あるいは代わりに、禁止されたコンテンツ（例えば、実行可能コード、または特定のタイプの添付ファイル）を変更する、または除去するなどの、様々な応答を行うことが可能である。同様に、必要とされるコンテンツが存在しない場合、コンテンツ解析技術は、対応するデータフレームの転送を同様に防止する、あるいは代わりに、必要とされるコンテンツ（例えば、発信電子メールの終りの守秘義務通知）を対応するデータフレームに追加してから転送することができる。
【００３９】
また、分解されたデータフレーム情報を解析して、対応するデータフレームが転送される先の適切な宛先を特定することも可能である。一部の実施形態では、宛先の特定は、対応するデータフレームの転送が防止されるべき場合、処理を行う必要性をなくする、あるいは他の技術によって提供される情報を使用して適切な宛先の特定を支援するなどのために、コンテンツタイプ分類および／またはコンテンツ解析の後に行われる。一部の実施形態では、宛先選択解析は、指定された論理宛先ネットワークアドレス情報（例えば、エントリ２１８の中で指定された宛先ＩＰアドレス）だけを使用し、ＭＰＥＸが属するネットワークの１つの上の宛先ネットワークアドレスに対応する単一のノードを特定する。他の実施形態では、示された宛先ネットワークアドレスに対応する複数の代替のノードの負荷バランシングを行い、かつ／または受信されたデータフレームの中に含まれるデータのタイプ（例えば、ビデオデータ）、またはアプリケーション層プロトコル情報のタイプ（例えば、ＦＴＰまたはＨＴＴＰ）などの分解されたデータフレームからの他の情報に基づいて１つまたは複数の宛先を選択するなどのために、より高度な解析が行われる。コンテンツタイプ分類解析がコンテンツのタイプに特有の情報（例えば、ＨＴＴＰ要求メッセージにおいて要求された特定のＵＲＩ）をさらに提供する場合、宛先を選択する際にそのような情報を同様に使用することができる。
【００４０】
また、分解されたデータフレーム情報を使用して、分解されたデータフレームのプロトコルとは異なるデータリンク層ネットワークプロトコルを使用して符号化された新たなデータフレームを構成するプロトコル変換技術によるなどして、受信されたデータフレームに対応する新たなデータフレームを構成することも可能である。そのようなデータフレーム構成処理により、図示した実施形態におけるＭＰＥＸが、イーサネット（登録商標）ネットワークプロトコルを使用するネットワークとファイバチャネルネットワークプロトコルを使用するネットワークをブリッジするゲートウェイとして作用することが可能になる。コンテンツタイプ分類技術、コンテンツ解析技術、および／または宛先選択解析技術から情報が利用可能な場合、新たなデータフレームが構成される際に、新たなデータフレームにそのような情報を組み込むことができる。代替として、新たなデータフレームの構成が、それらの他の解析技術が完了する前に行われる場合（例えば、その他の技術と並列に行われる場合）、選択された宛先に関する高レベルの宛先ネットワークアドレスを追加するなどのために、それらの技術の完了後に新たに構成されたデータフレームに妥当な情報を追加することができる。
【００４１】
図２Ｂは、分解されたイーサネット（登録商標）データフレームに対応する新たに構成されたファイバチャネルベースのデータフレームの例を示している。詳細には、図示した実施形態では、ＭＰＥＸが属するファイバチャネルベースのネットワーク上で、ある宛先が選択されており、この宛先の指示は、データフレームを受信するノード上の宛先ハードウェアポートの物理アドレスを保持するものと規定される新しいデータフレームのエントリ２５６に置き換えられる。ただし、前述したとおり、一部の実施形態では、ＭＰＥＸは、エントリ２５６の中の宛先物理アドレスを使用するが、他の実施形態では、宛先に関連付けられていない仮想識別子（例えば、ネットワークを介してＭＰＥＸから宛先に至るパスに関連付けられた）が代わりに、エントリ２５６の中で指定される。データフレームが既存の専用コネクションに関連する伝送優先順位情報および割込み（ｐｒｅｅｍｐｔｉｏｎ）情報とともに伝送される仕方に影響を与える新たなデータフレームのエントリ２５８の中で指定されるクラス特有制御情報を含め、データフレームのヘッダに対応するエントリ２５２〜２６４の中で様々な他の情報が指定される。図示した実施形態では、新たなデータフレームのペイロードは、受信されたイーサネット（登録商標）データフレームのペイロードと同様の仕方で指定され、ＴＣＰ／ＩＰパケット情報が、ペイロードの中にカプセル化される。ただし、前述したとおり、他の状況では、コンテンツ解析技術によって行われた変更に応答してなど、ペイロードは、様々な理由で変更されることが可能である。新たなデータフレームを構成した後、そのデータフレームの転送を防止する指示が全く受け取られなかった場合、新たに構成されたデータフレームは、ファイバチャネルベースのネットワーク上で選択された宛先に転送される。転送を行う前に、一部の実施形態では、新たに構成されたデータフレームをファイバチャネルベースのネットワークに関するネットワークマネージャに登録する追加のステップが、そのデータフレームの伝送のために使用されるべき適切な仮想識別子を決め、かつ／またはそのデータフレームに関する１つまたは複数の適切な宛先を選択するのを助けるなどのために行われることが可能である。
【００４２】
図３Ａは、前述したデータフレーム分解技術、および統合されたデータ通信処理技術を行うのに適したＭＰＥＸコンピューティングデバイス３００の実施形態を示し、ＭＰＥＸが相互通信することができる様々なノードのコンピューティングデバイス３５５および３６５も示すブロック図である。図示したＭＰＥＸは、ノード３５５およびネットワークマネージャ３５７を含むファイバチャネルベースの相互接続ファブリックネットワーク３５０に属し、ノード３６５が属するイーサネット（登録商標）ベースのネットワーク３６０にも属する。
【００４３】
ＭＰＥＸの図示した実施形態は、１つまたは複数のＣＰＵ３０５と、様々なＩ／Ｏデバイス３１０と、ストレージ３２０と、メモリ３３０を含む。Ｉ／Ｏデバイスは、ＭＰＥＸを相互接続ファブリックに接続するファイバチャネルネットワークインターフェース３１２と、ＭＰＥＸをイーサネット（登録商標）ネットワークに接続するイーサネット（登録商標）ネットワークインターフェース３１６と、コンピュータ可読媒体ドライブ３１３と、様々な他のＩ／Ｏデバイス３１４とを含む。着信イーサネット（登録商標）フレームプロセッサ構成要素３４０の実施形態、および着信ファイバチャネルフレームプロセッサ構成要素３３１の実施形態がメモリの中で実行されており、オプションのノード負荷決定（Ｎｏｄｅ  Ｌｏａｄ  Ｄｅｔｅｒｍｉｎｅｒ）構成要素３３３およびオプションのＶＩ  ＮＩＣ構成要素３３５も同様にメモリの中で実行されている。図示した実施形態におけるフレームプロセッサ構成要素３３１および３４０は、ノードのメインメモリの中で実行されている構成要素を含むが、他の実施形態では、ＭＰＥＸに追加することができる単一のプラグインカード上で対応するネットワークインターフェースとともにフレームプロセッサ構成要素を実施し、プラグインカードが、独立型メモリを提供し、かつ／またはハードワイヤド論理を含む様々な処理機能を提供するなどの、その他の構成が可能であることが、当分野の技術者には認められよう。
【００４４】
図示した実施形態では、着信イーサネット（登録商標）フレームプロセッサ構成要素は、イーサネット（登録商標）フレーム分解器３４１、コンテンツタイプ分類器３４３、ファイアウォール機能を備えたコンテンツ解析器３４５、負荷バランシング機能を備えた宛先選択器３４７、およびファイバチャネルフレーム構成器３４９を含む様々な下位構成要素を含む。図示する実施形態では、イーサネット（登録商標）ネットワーク上のノード３６５の１つが、イーサネット（登録商標）ネットワークインターフェースによって受信され、相互接続ファブリックネットワーク上のノード３５５の１つを宛先とする通信を送信した場合、着信イーサネット（登録商標）フレームプロセッサが、受信されたデータフレームの通知を受ける。これに応答して、イーサネット（登録商標）フレーム分解器が、受信されたデータフレームを分解して、そのデータフレームのペイロード、およびデータフレームヘッダの中の様々な情報を明らかにする。次に、この分解されたデータフレーム情報が、その他の下位構成要素３４３〜３４９に供与される。次に、コンテンツタイプ分類器下位構成要素、コンテンツ解析器下位構成要素、宛先選択器下位構成要素、およびファイバチャネルフレーム構成器下位構成要素が、逐次に、または並列に様々な仕方で分解されたデータフレーム情報を処理する。
【００４５】
ＭＰＥＸが複数のＣＰＵを含む場合、例えば、解析技術のそれぞれを異なるＣＰＵ上で行うことができる。また、下位構成要素の１つまたは複数が、解析を行う際に様々なアクセス可能な情報を使用することも可能である。例えば、図示した実施形態における宛先選択器構成要素３４７が、着信イーサネット（登録商標）データフレームの中で指定された宛先ＩＰアドレスを特定し、そのＩＰアドレスがそのデータフレームを受け取り、応答することができる複数の代替の宛先ノード３５５に対応しているかどうかを判定する。図示した実施形態では、負荷バランシングテーブル３２１がストレージ３２０上に存在し、テーブル３２１は、指定された宛先ＩＰアドレスを、その指定された宛先ＩＰアドレスの代わりに使用することができる複数の代替の宛先ＩＰアドレスにマップする。一部の実施形態では、負荷バランシングテーブルは、ノード負荷決定構成要素が、ノード３５５の一部またはすべてに関するそのような負荷情報（例えば、ノードまたはネットワークマネージャからの）を獲得して、その情報を負荷バランシングテーブルの中に記憶する場合などに、代替の宛先ＩＰアドレスに対応するノードの一部、またはすべてに関する様々な負荷情報（例えば、応答時間、または処理負荷のその他の指示）も含むことも可能である。
【００４６】
着信ファイバチャネルフレームプロセッサは、一部の実施形態では、着信イーサネット（登録商標）フレームプロセッサと同じ下位構成要素を有し、そうである場合、それに対応する仕方でノード３５５から受信されたデータフレームを処理することが、当分野の技術者には認められよう。代替として、その他の実施形態では、コンテンツタイプ分類、コンテンツ解析、および／または負荷バランシングなどの追加の解析を行うことなくデータフレームが分解され、代替のデータリンク層ネットワークプロトコルを使用するデータフレームに変換される場合などに、ファイバチャネル相互接続ファブリックネットワークからの着信データフレームが別個の仕方で処理されることが可能である。
【００４７】
さらに、一部の実施形態では、ＭＰＥＸは、着信イーサネット（登録商標）データフレームを適切な宛先ノード３５５に経路指定することを前述したとおり、適切な仕方で行うのを助けるオプションのＶＩ  ＮＩＣ構成要素を含む。そうである場合、ＶＩ  ＮＩＣは、選択された宛先ＩＰアドレスについての情報、および／または通信されている日付のタイプの指示（例えば、コンテンツタイプ分類からの）を供給することなどにより、着信イーサネット（登録商標）データフレームの一部、またはすべてをネットワークマネージャに登録することができ、応答として、対応する新たに構成されたファイバチャネルベースのデータフレームを１つまたは複数の適切な宛先ノード３５５に伝送するのに使用する適切な伝送仮想識別子を受け取ることができる。ＶＩ  ＮＩＣは、ストレージ上のネットワークマネージャ通信パラメータ３２７を使用してネットワークマネージャと通信することができ、同一の、または同様のデータ通信の一部である追加の受信データフレームとともに使用する目的などで、選択された宛先ＩＰアドレス（ならびに宛先アプリケーションソフトウェアポート番号）および／またはデータタイプ情報から仮想識別子変換テーブル３２５の中の対応する仮想識別子に対するマッピングをストレージ上に記憶することができる。
【００４８】
ＭＰＥＸ３００は、単に例示的であり、本発明の範囲を限定することを意図するものではないことが、当分野の技術者には認められよう。ＭＰＥＸは、１つまたは複数の追加のネットワーク（例えば、インターネットの一部である）を含め、図示していない他のデバイスに接続することができる。さらに、ＭＰＥＸは、ＥＤＮのストレージエリアネットワークをＥＤＮの別の部分に接続することなどにより、ＥＤＮの一部となることが可能である。また、一部の実施形態では、図示したフレームプロセッサ構成要素によって提供される機能をより少ない構成要素において結合すること、または追加の構成要素において分散させることが可能であることも、当分野の技術者には認められよう。同様に、一部の実施形態では、図示した構成要素のうち一部の構成要素の機能が提供されず、かつ／または負荷バランシング以外の仕方で、またはそれに追加された仕方で宛先を選択することなどの、他のさらなる機能が利用できることが可能である。
【００４９】
また、様々なアイテムが、使用されている最中にメモリの中に記憶されているのを示しているが、これらのアイテム、またはこれらのアイテムの部分をメモリ管理およびデータの完全性の目的でメモリと他の記憶デバイスの間で転送することが可能であることも、当分野の技術者には認められよう。同様に、使用されている最中にストレージ上に存在しているものとして示されているアイテムが、代わりに、メモリの中に存在し、ストレージとメモリの間で転送されることも可能である。また、構成要素およびデータ構造の一部、またはすべてを、ハードドライブ、メモリ、ネットワーク、または適切なドライブによって読み取られる可搬の品目などのコンピュータ可読媒体上に記憶することも可能である（例えば、命令または構造化されたデータとして）。また、構成要素、およびデータ構造を生成されたデータ信号として伝送することも可能である（無線ベースの媒体および有線／ケーブルベースの媒体を含む様々なコンピュータ可読伝送媒体上の搬送波の一部として）。したがって、本発明は、他のコンピュータシステム構成を使用して実施することが可能である。
【００５０】
図３Ｂは、受信されたイーサネット（登録商標）データフレームの統合されたマルチ技術処理を助ける様々な専用ハードウェアを含むイーサネット（登録商標）フレームプロセッサ構成要素３７０の代替の実施形態を示すブロック図である。ＭＰＥＸの一部であるプラグインカードとして実装することなどにより、図３Ａに図示したソフトウェア構成要素３４０およびネットワークインターフェース３１６の代わりに、図示するイーサネット（登録商標）フレームプロセッサを使用することが可能である。他の実施形態では、イーサネット（登録商標）フレームプロセッサは、イーサネット（登録商標）と別のネットワーキングプロトコルの間で交互にプロトコル変換を提供し、オプションとして、一方のプロトコル、または両方のプロトコルで符号化された受信データフレームに対して他のタイプの処理を行う独立型デバイスとして作用することが可能である。
【００５１】
図示した実施形態では、イーサネット（登録商標）フレームプロセッサ３７０は、イーサネット（登録商標）フレームを受信し、送信することができるイーサネット（登録商標）ネットワークインターフェース３７１を含む。イーサネット（登録商標）フレームが受信された場合、ネットワークプロセッサ３７２は、ネットワークインターフェースからデータフレームを受け取り、加速された分解を提供する特殊化されたハードウェア構成要素を使用することなどにより、イーサネット（登録商標）プロトコルに特有の仕方でデータフレームを分解する。次に、ネットワークプロセッサが、情報の解析のために分解されたデータフレーム情報を様々なプロセッサ３７３〜３７６に提供する。これらのプロセッサは、特定の仕方でプログラミングされた汎用プロセッサであること、あるいは、代わりに、様々な解析タスクのために特殊化されたハードウェアによることが可能であり、並列に、または逐次に解析技術を行うことができる。
【００５２】
詳細には、コンテンツ分類器プロセッサ３７３は、分解されたデータフレームのコンテンツのタイプを分類し、コンテンツ解析器プロセッサ３７４は、ファイアウォール機能を提供するなどのために分解されたデータフレームのコンテンツを解析し、負荷バランシング器プロセッサ構成要素３７５は、負荷バランシング機能および／または他の宛先選択機能を提供し、イーサネット（登録商標）−他のプロトコル間のゲートウェイプロセッサ（Ｅｔｈｅｒｎｅｔ（登録商標）−Ｔｏ−Ｏｔｈｅｒ  Ｐｒｏｔｏｃｏｌ  Ｇａｔｅｗａｙ  Ｐｒｏｃｅｓｓｏｒ）３７６は、受信されたイーサネット（登録商標）データフレームに対応するイーサネット（登録商標）でないデータリンク層ネットワークプロトコルに特有のデータフレームを構成する。また、イーサネット（登録商標）フレームプロセッサ３７０は、プロセッサ３７２〜３７６の１つまたは複数がタスクを行う際に使用することが可能なメモリ３７９も含む。例えば、負荷バランシング器プロセッサ３７５は、負荷バランシング情報をそのメモリの中に記憶することができる。代替として、プロセッサ３７２〜３７６の１つまたは複数が、必要な情報を獲得するために外部リソース（例えば、メモリまたはストレージ）と通信することも可能である。
【００５３】
イーサネット（登録商標）フレームプロセッサ３７０は、イーサネット（登録商標）以外のデータリンク層ネットワークプロトコルに特有のネットワークインターフェース３７８をさらに含む。例えば、ネットワークインターフェース３７８は、ファイバチャネルネットワークインターフェースであることが可能であり、そうである場合、ゲートウェイプロセッサ３７６は、選択された宛先に伝送するためにファイバチャネルベースのデータフレームを生成する。代替として、イーサネット（登録商標）フレームプロセッサは、対話する複数のフレームプロセッサの１つであることが可能であり、ネットワークインターフェース３７８が、そのフレームプロセッサのすべてに共通な中間プロトコル（例えば、ＰＣＩまたはＩｎｆｉｎｉＢａｎｄ）に対応することが可能である。そのような実施形態では、新たなデータフレームは、その中間フォーマットで構成されることが可能であり、その中間フォーマットのためのネットワークインターフェース上でデータフレームを受け取り、そのデータフレームをイーサネット（登録商標）ではないデータリンク層ネットワークプロトコル（例えば、ファイバチャネル）に変換する異なるフレームプロセッサ構成要素に転送されてから、そのフレームプロセッサの別のネットワークインターフェースが接続されている別個のネットワーク上の宛先に変換されたデータフレームが転送されることが可能である。そのような実施形態では、フレームプロセッサのそれぞれは、そのフレームプロセッサのネットワークインターフェースのいずれを介して受信されたデータフレームも処理する能力を有する。
【００５４】
イーサネット（登録商標）フレームプロセッサ３７０の様々な下位構成要素は、ＰＣＩベースのバス、またはｉｎｉｆｉｎｉＢａｎｄベースのバスを使用するなど、様々な仕方で通信できることが、当分野の技術者には認められよう。同様に、他の実施形態では、図示したフレームプロセッサは、追加の機能（例えば、ノード負荷決定機能および／またはＶＩ  ＮＩＣ機能）を含み、かつ／または独立型ＭＰＥＸとして使用されることが可能である。
【００５５】
図３Ｃは、複数の異なるデータ通信処理技術を統合するＭＰＥＸ３８０の代替の実施形態を示すブロック図である。詳細には、ＭＰＥＸの図示する実施形態は、接続された先のネットワークに関するデータリンク層ネットワークプロトコルにそれぞれが特有の複数のフレームプロセッサを含み、フレームプロセッサはそれぞれ、着信データフレームに対して様々なタイプの処理技術を施し、それらのデータフレームを共通の中間フォーマット（図示した実施形態では、ＩｎｆｉｎｉＢａｎｄ）に変換する。図示した実施形態におけるフレームプロセッサのそれぞれは、ＩｎｆｉｎｉＢａｎｄバックプレーン３８５に接続するブレードであり、ブレードスロットのそれぞれは、マルチポートＩｎｆｉｎｉＢａｎｄスイッチ３９０上の対応するＩｎｆｉｎｉＢａｎｄポート３９２に接続している。このスイッチは、着信ＩｎｆｉｎｉＢａｎｄポート３９２上で受信された各ＩｎｆｉｎｉＢａｎｄデータ通信を、その受信されたデータ通信の宛先が属するネットワークに接続されたフレームプロセッサブレードに対応する適切な発信ＩｎｆｉｎｉＢａｎｄポート３９２に経路指定する。図示した実施形態では、スイッチ３９０は、様々な管理機能およびマネージメント機能を行う統合されたマネージャ構成要素３９６、ならびに他の外部通信のための１つまたは複数の追加のＩｎｆｉｎｉＢａｎｄポート３９４をさらに含む。
【００５６】
図４は、着信フレームプロセッサルーチン４００の実施形態の流れ図である。ルーチンは、１つまたは複数のデータリンク層ネットワークプロトコルで着信データフレームの指示を受け取り、それらのフレームを分解して、そのデータフレームが符号化されているデータリンク層ネットワークプロトコルに特有の仕方でペイロードおよびヘッダ情報を獲得し、分解されたデータフレーム情報を様々な仕方で解析し、適宜、転送するために異なるデータリンク層ネットワークプロトコルで符号化された対応するデータフレームを生成して伝送する。
【００５７】
ルーチンは、着信データフレームの指示が受け取られるステップ４０５で始まる。ルーチンは、ステップ４１０に進み、データフレームを分解してデータフレームのヘッダ部分およびペイロード部分からの情報にアクセスする。ステップ４１５で、ルーチンは、その受信されたデータフレームに関する動的な指示に基づき、あるいは代わりに、受信されたデータフレームの一部またはすべてに対応するデータリンク層ネットワークプロトコルのタイプに基づくなどして、様々な解析技術を並列に行うか、または逐次に行うかを決める。
【００５８】
処理が並列に行われない場合、ルーチンは、ステップ４２０に進み、データフレームのペイロードのコンテンツのタイプを分類する処理を行う。次に、ルーチンは、ステップ４２５に進み、様々なタイプの必要とされるコンテンツ、または禁止されたコンテンツに関してデータフレームのペイロードを解析し、一部の実施形態では、ステップ４２０からのコンテンツタイプ分類情報を解析の一環として使用することができる。一部の実施形態では、禁止されたコンテンツが検出され、かつ／または必要とされるコンテンツが存在していない場合、コンテンツ解析は、そのようなコンテンツを除去する、置き換える、または追加することができる。代替として、他の実施形態では、そのような情報の存在または不在により、コンテンツ解析技術がコンテンツが拒否されたことを示すようにさせられることが可能である。ステップ４３０で、コンテンツ解析技術がコンテンツを拒否するように指示したと判定された場合、ルーチンは、ステップ４９５に進み、そのように判定されなかった場合、ステップ４３５に進む。
【００５９】
ステップ４３５で、データフレームの宛先が、着信データフレームに関して指定された宛先ネットワークアドレスに対して負荷バランシング技術を施すことによって選択される。一部の実施形態では、ステップ４２０からのコンテンツタイプ分類情報、および／またはステップ４２５からのコンテンツ解析情報を使用して、受信されたデータフレームの特定のコンテンツに併せて最適化された、またはコンテンツの解析中に特定された情報に基づく宛先を選択するなどのために、宛先選択プロセスを支援することができる。一部の実施形態では、ステップ４３５における宛先選択技術は、そのデータフレームを受信するのに現在、適切な宛先が全く存在しないと判定する可能性がある。ステップ４４０でそのように判定された場合、ルーチンは、ステップ４９５に進み、そのように判定されなかった場合、ルーチンは、ステップ４４５に進んで、受信されたデータフレームに対応するが、選択された宛先が属するネットワークに関する新たなデータリンク層ネットワークプロトコルに特有の新たなデータフレームを生成する。コンテンツタイプ分類処理、コンテンツ解析処理、および宛先選択処理の一部、またはすべてからの情報が、選択された宛先に関する宛先ネットワークアドレスを追加する、コンテンツの分類されたタイプ、またはコンテンツ解析に基づいて新たなデータフレームの伝送の仕方を指定する、またはコンテンツ解析プロセスによって行われた変更に基づいて新たなデータフレームのペイロードを変更するなどのために、新たなデータフレームの生成において使用されることが可能である。ステップ４４５の後、ルーチンは、ステップ４５０に進み、宛先が属するネットワークに関するネットワークインターフェースにフレームを送信するなどのために、フレームを出力する。代替の実施形態では、フレームは、さらなる処理のためにＶＩ  ＮＩＣなどの他の構成要素に出力されてから伝送されることが可能である。ステップ４５０の後、ルーチンは、ステップ４９５に進み、受信されるべきさらなるデータフレームが存在するかどうかを判定する。存在する場合、ルーチンは、ステップ４０５に戻り、存在しない場合、ルーチンは、ステップ４９９に進んで終了する。
【００６０】
ステップ４１５で、分解されたデータフレーム情報を並列で処理することが代わりに決定された場合、ルーチンは、別々のプロセッサ上で、またはマルチタスクシステム上の別々のプロセスとしてなど、ステップ４５５、４６０、４６５、および４７０を並列に行うことにとりかかる。ステップ４５５、４６０、４６５、および４７０の後、ルーチンは、ステップ４７５に進み、処理のなかで、生成された発信フレームの伝送を拒否するように示したものが存在するかどうかを判定し（例えば、コンテンツ解析、または負荷バランシングに基づき）、存在する場合、ルーチンは、ステップ４９５に進む。発信フレームが拒否されなかった場合、ルーチンは、ステップ４８０に代わりに進み、ステップ４５５、４６０、および４６５における処理からの情報をステップ４７０で生成されたフレームに適宜、結合する。次に、ルーチンは、ステップ４８５に進み、ステップ４５０と同様の仕方でフレームを出力し、ステップ４９５に進む。
【００６１】
他の実施形態では、分解されたデータフレーム情報処理のタイプの一部は、行われない可能性があるか、または追加のタイプの処理が並列に、または逐次に行われる可能性があることが、当分野の技術者には認められよう。さらに、まず、コンテンツタイプ分類を行い、次に、コンテンツ解析と負荷バランシングを並列に行い、次にステップ４８０に関して示したのと同様の仕方で適切な発信フレームを生成するなどのために、受信されたデータフレームの一部、またはすべてに関して逐次処理と並列処理の混合を行うことが可能であることが、当分野の技術者には認められよう。さらに、処理が逐次式に行われる実施形態では、他の実施形態において処理が他の順序で行われる可能性があること、および図示した実施形態においてルーチンで早期に示されているステップ（例えば、コンテンツタイプ分類）が、図示した実施形態で後に処理されるものとして示されている他の解析技術によって提供される情報を使用する可能性があることが、当分野の技術者には認められよう。
【００６２】
また、前述し、前掲の米国特許出願で説明している受信データ通信の処理、および仮想識別子の使用により、様々な他の利点も提供される。例えば、前述した技術により、一部の実施形態において伝送されるデータが、様々な仕方で特定されることが可能なタイプによって識別され、したがって、データの伝送をそのデータタイプに適合させることが可能な通信モデルを使用することが可能になる。例えば、一部の実施形態では、データタイプに対応する１つまたは複数の仮想識別子を使用することなどにより、そのデータタイプに適切な１つまたは複数の宛先が選択されることが可能である。同様に、１つまたは複数のＱＯＳ変数をそのデータタイプに適したデータ送信間に使用するように選択できる。さらに、仮想識別子の使用により、その仮想識別子を使用するデータの経路指定が、そのデータタイプに関するＱＯＳを維持するなどのために、送信元および宛先にトランスペアレントな仕方で構成しなおされることが可能になる（例えば、その仮想識別子が対応するパスを変更することにより）。さらに、データのタイプを含む登録などの、伝送されるべきデータの登録により、ネットワークに関するネットワークマネージャが、様々な監視サービスおよび構成サービスを提供することが可能になる。以上の様々な技術は、任意の論理上の組合せで結合できることが、当分野の技術者には認められよう。
【００６３】
また、前述した技術により、帯域幅、待ち時間、ジッタ、および／または可用性などに、様々なタイプのＱＯＳ保証を提供することができるように、一部の実施形態においてＱＯＳモデルを使用することが可能になる。スイッチによる構成可能なラベルテーブルの使用により、ネットワークマネージャが、各スイッチ上の各リンクをどれだけの数の通信が通過し、どの通信が通過するかを制御することが可能になり、したがって、ネットワークマネージャは、ある通信に十分な帯域幅が利用できることを、同じリンク群のリンクを使用するその他の通信を制限することによって確実にすることができる。また、リンクに対する通信の割振りを必要に応じて調整することができるように、ネットワークトラフィックを監視することも可能である。これにより、専用物理コネクションが使用されない仮想コネクションに保証された帯域幅が提供される。さらに、スイッチ間のハント（ｈｕｎｔ）グループを使用して、通信のための代替のパスを提供することによって最小レベルの帯域幅を提供することも可能である。データ通信に割り当てられた伝送優先順位を、その通信が中間経路指定デバイスをどれだけ迅速に通過するかを制御するのに使用することができ、したがって、待ち時間とジッタをともに制御するのに使用することができる。さらに、データ通信に割り当てられたＣＯＳを変更することにより、配信に関する保証を行うことが可能になり、異なるＣＯＳに異なる優先順位が中間経路指定デバイスによって与えられる場合、待ち時間およびジッタに影響を与えるように使用することも可能である。最後に、監視に基づいて初期にも、再構成中にも仮想識別子に割り当てられたパスの管理により、様々なＱＯＳパラメータに関する保証を行うことが可能になる。以上の様々な技術は、任意の論理上の組合せで結合できることが、当分野の技術者には認められよう。
【００６４】
また、前述した技術により、一部の実施形態においてセキュリティモデルを使用して様々なタイプの、様々なレベルのセキュリティを提供することが可能になる。仮想アドレス指定の使用によりノードが制約され、したがって、ノードは、ノードの対応するスイッチポート上のＳＰＣのラベルテーブルが有効な仮想アドレスを有し、スイッチポートが通信を経路指定する宛先ノードとだけ通信することができる。さらに、ノードは、仮想アドレスに対応する宛先の実際の物理アドレスさえ知らないか、またはこの宛先の身元さえ知らないことが可能であり、別のノードは、その別のノードの対応するスイッチポート上のＳＰＣラベルテーブルが同様の仕方で構成されていない限り、その仮想アドレスを利用して同じ宛先と通信することができない。さらに、データ通信登録に関して、ネットワークマネージャは、ノードが、そのノードに以前に（例えば、ノードの登録中、またはノードの製造中）供給された様々なタイプの許可情報（例えば、パスワード）を供給することを必須とすることが可能である。さらに、ノードがネットワークマネージャに登録してからでないと、その他の通信を全く行うことができないという要件により、ネットワークマネージャが、特にデータ通信登録と組み合わせてネットワークを介するデータ通信を監視し、制御することが可能になる。さらに、ＶＩ  ＮＩＣおよび／または中間経路指定デバイスが、伝送仮想識別子と応答仮想識別子の組合せが有効であることを検証でき、指定されたＱＯＳパラメータがその仮想識別子に許可されていることを検証できることにより、様々なセキュリティ上の利点が提供される。中間経路指定デバイスに関する統合されたマネージャが互いに通信する場合（例えば、その統合されたマネージャ、または対応するスイッチの遠隔管理のために）、または統合されたマネージャに対するあらゆる他の通信に関して、様々なパスワード検証スキームまたは他の身元検証スキーム、あるいは許可検証スキームを使用して、受信された通信およびコマンドが有効であり、許可されていることを確実にすることができる。以上の様々な技術は、任意の論理上の組合せで結合できることが、当分野の技術者には認められよう。
【００６５】
また、一部の実施形態では、前述したルーチンによって提供される機能は、より多くのルーチンの間に分割する、またはより少ないルーチンにまとめるなどして、代替のやり方で提供されることが可能であることも、当分野の技術者には認められよう。同様に、一部の実施形態では、図示したルーチンは、説明したのより多くの機能、または少ない機能を提供することが、他の図示したルーチンが代わりにそのような機能を欠いている場合、または含む場合にそれぞれ、あるいは提供される機能の量が変更された場合に可能である。また、単一のデータ構造を複数のデータ構造に分割する、または複数のデータ構造を単一のデータ構造にまとめることなどにより、前述したデータ構造を異なる仕方で構造化することができることも、当分野の技術者には認められよう。同様に、一部の実施形態では、図示したデータ構造は、説明したのよりも多くの情報、または少ない情報を記憶することが、他の図示するデータ構造が代わりに、そのような情報を欠いている場合、または含む場合にそれぞれ、あるいは記憶される情報の量またはタイプが変更された場合に可能である。
【００６６】
以上のことから、例示の目的で特定の実施形態を本明細書で説明してきたが、本発明の趣旨および範囲を逸脱することなく様々な変更を行うことができることが認められよう。したがって、本発明は、頭記の特許請求の範囲による以外、限定されない。さらに、本発明のいくつかの態様をいくつかの請求項の形態で頭記に提示するが、本発明者は、本発明の様々な態様をいずれの用意された請求項の形態においても企図している。例えば、本発明のあるいくつかの態様だけが、コンピュータ可読媒体で実現されるものと記載されている可能性があるが、他の態様も同様にそのように実現することができる。したがって、本発明者は、本発明の他の態様に関してそのような追加の請求項の形態を追求するために出願を提出した後にさらなる特許請求の範囲を追加する権利を保留する。
【図面の簡単な説明】
【００６７】
【図１】マルチプロトコルエッジスイッチを介して異なるネットワークプロトコルを使用する外部ネットワークに接続された例示的なファイバチャネルインターコネクトファブリックベースのネットワークを示すネットワーク図である。
【図２Ａ】イーサネット（登録商標）ベースのネットワークからの着信データフレームがファイバチャネルベースのネットワーク上の発信データフレームに変換されている例を示す図である。
【図２Ｂ】イーサネット（登録商標）ベースのネットワークからの着信データフレームがファイバチャネルベースのネットワーク上の発信データフレームに変換されている例を示す図である。
【図３Ａ】複数の異なるデータ通信処理技術を統合するマルチプロトコルエッジスイッチの実施形態を示すブロック図である。
【図３Ｂ】複数の異なるデータ通信処理技術を統合する構成要素の実施形態を示すブロック図である。
【図３Ｃ】複数の異なるデータ通信処理技術を統合するマルチプロトコルエッジスイッチの代替の実施形態を示すブロック図である。
【図４】着信フレームプロセッサルーチンの実施形態を示す流れ図である。
【図１】
2005502228.tif 000003
【図２Ａ】
2005502228.tif 000004
【図２Ｂ】
2005502228.tif 000005
【図３Ａ】
2005502228.tif 000006
【図３Ｂ】
2005502228.tif 000007
【図３Ｃ】
2005502228.tif 000008
【図４】
2005502228.tif 000009
【国際公開パンフレット】
2005502228.tif 000010
2005502228.tif 000011
2005502228.tif 000012
2005502228.tif 000013
2005502228.tif 000014
2005502228.tif 000015
2005502228.tif 000016
2005502228.tif 000017
2005502228.tif 000018
2005502228.tif 000019
2005502228.tif 000020
2005502228.tif 000021
2005502228.tif 000022
2005502228.tif 000023
2005502228.tif 000024
2005502228.tif 000025
2005502228.tif 000026
2005502228.tif 000027
2005502228.tif 000028
2005502228.tif 000029
2005502228.tif 000030
2005502228.tif 000031
2005502228.tif 000032
2005502228.tif 000033
2005502228.tif 000034
2005502228.tif 000035
2005502228.tif 000036
2005502228.tif 000037
2005502228.tif 000038
2005502228.tif 000039
2005502228.tif 000040
2005502228.tif 000041
2005502228.tif 000042
2005502228.tif 000043
2005502228.tif 000044
2005502228.tif 000045
2005502228.tif 000046
2005502228.tif 000047
2005502228.tif 000048
2005502228.tif 000049
2005502228.tif 000050
2005502228.tif 000051
2005502228.tif 000052
2005502228.tif 000053
2005502228.tif 000054
2005502228.tif 000055
2005502228.tif 000056
2005502228.tif 000057
2005502228.tif 000058
2005502228.tif 000059
2005502228.tif 000060
2005502228.tif 000061
2005502228.tif 000062
2005502228.tif 000063
2005502228.tif 000064
2005502228.tif 000065
2005502228.tif 000066
2005502228.tif 000067
2005502228.tif 000068
2005502228.tif 000069
2005502228.tif 000070
2005502228.tif 000071
2005502228.tif 000072
2005502228.tif 000073
【国際調査報告】
2005502228.tif 000074
2005502228.tif 000075