IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ プライムワン リミテッドの特許一覧

特開2024-116231仮想転送デバイス、その動作方法およびコンピュータ可読記憶媒体
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024116231
(43)【公開日】2024-08-27
(54)【発明の名称】仮想転送デバイス、その動作方法およびコンピュータ可読記憶媒体
(51)【国際特許分類】
   H04L 61/2592 20220101AFI20240820BHJP
   H04L 41/40 20220101ALI20240820BHJP
【FI】
H04L61/2592
H04L41/40
【審査請求】有
【請求項の数】19
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2024091325
(22)【出願日】2024-06-05
(62)【分割の表示】P 2022575958の分割
【原出願日】2021-03-19
(31)【優先権主張番号】16/907,075
(32)【優先日】2020-06-19
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】522362660
【氏名又は名称】プライムワン リミテッド
【氏名又は名称原語表記】PRIMEWAN LIMITED
(74)【代理人】
【識別番号】100107456
【弁理士】
【氏名又は名称】池田 成人
(74)【代理人】
【識別番号】100162352
【弁理士】
【氏名又は名称】酒巻 順一郎
(74)【代理人】
【識別番号】100123995
【弁理士】
【氏名又は名称】野田 雅一
(72)【発明者】
【氏名】リー, ミン
(57)【要約】      (修正有)
【課題】データ及びフレームレートに柔軟性をもたらす仮想ネットワークを形成する方法を提供する。
【解決手段】仮想転送デバイス(1000、VFD)の動作方法(1050)であって、第2のカプセル化フレームを受信するステップ(1052)と、プロセッサにより、前記第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出するステップ(1054)と、前記第1のカプセル化フレームから仮想出口デバイス(VXD)の識別子を抽出するステップ(1056)と、前記識別子から次のホップデバイス及び代替ホップデバイスを決定するステップ(1058)と、前記次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定するステップ(1060)と、を含む。
【選択図】図10B
【特許請求の範囲】
【請求項1】
仮想転送デバイスであって、
第2のカプセル化フレームを受信する受信物理ポートと、
次のホップデバイスに連結されることになる伝送物理ポートと、
代替ホップデバイスに連結されることになる代替物理ポートと、
前記受信物理ポート、前記伝送物理ポート、及び前記代替物理ポートに連結された仮想ポートであって、
前記受信物理ポートから前記第2のカプセル化フレームを受信すること、
現在のデバイスが最後のホップデバイスであるかどうかを判定すること、
前記現在のデバイスが前記最後のホップデバイスでないとき、前記第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出すること、
前記第1のカプセル化フレームから仮想出口デバイスの識別子を抽出すること、
前記識別子から前記次のホップデバイス及び代替ホップデバイスを決定すること、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定すること、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができるとき、
前記第1のカプセル化フレームをカプセル化して第3のカプセル化フレームを形成することであり、前記第3のカプセル化フレームが、前記次のホップデバイスを識別するヘッダを有する、カプセル化すること、
前記次のホップデバイスに連結された前記伝送物理ポートに前記第3のカプセル化フレームを転送すること、並びに
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができないとき、前記代替ホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定すること
を行うように構成されている、仮想ポートと
を備える、仮想転送デバイス。
【請求項2】
前記第2のカプセル化フレームが、仮想入口デバイスから前記受信物理ポートにて受信される、請求項1に記載の仮想転送デバイス。
【請求項3】
前記仮想ポートは、
前記仮想出口デバイスの抽出された前記識別子に基づいてルックアップテーブルから前記代替ホップデバイス及び前記次のホップデバイスの物理アドレスを決定する
ようにさらに構成されている、請求項1に記載の仮想転送デバイス。
【請求項4】
前記伝送物理ポートは、
前記伝送物理ポートに転送される前記フレームの第1のレートが、前記伝送物理ポートが前記次のホップデバイスに前記フレームを物理的に出力することができる第2のレートよりも大きいときに、保留信号をアサートする
ように構成されている、請求項1に記載の仮想転送デバイス。
【請求項5】
前記第3のカプセル化フレームは、前記第1のカプセル化フレームを含むフィールドをさらに含む、請求項1に記載の仮想転送デバイス。
【請求項6】
前記次のホップデバイスに連結された前記伝送物理ポートは、
前記第3のカプセル化フレームを前記次のホップデバイスに出力する
ように構成されている、請求項1に記載の仮想転送デバイス。
【請求項7】
前記仮想ポートは、
前記代替ホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができないとき、前記第1のカプセル化フレームを捨てる
ように構成されている、請求項1に記載の仮想転送デバイス。
【請求項8】
前記仮想ポートは、
前記代替ホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができるとき、前記第1のカプセル化フレームをカプセル化して別の第3のカプセル化フレームを形成するステップであり、前記別の第3のカプセル化フレームが、前記代替ホップデバイスに連結された前記代替物理ポートを識別する別のヘッダを有する、形成するステップ
を実行するようにさらに構成されている、請求項1に記載の仮想転送デバイス。
【請求項9】
前記仮想ポートに連結された仮想スイッチをさらに備え、
前記仮想スイッチは、
前記別の第3のカプセル化フレームを、前記代替ホップデバイスに連結された前記伝送物理ポートに転送する
ように構成されている、請求項8に記載の仮想転送デバイス。
【請求項10】
前記代替ホップデバイスに連結された前記伝送物理ポートは、
前記別の第3のカプセル化フレームを前記代替ホップデバイスに出力する
ように構成されている、請求項9に記載の仮想転送デバイス。
【請求項11】
仮想転送デバイスの動作方法であって、
プロセッサにより、第2のカプセル化フレームを受信するステップと、
前記プロセッサにより、前記第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出するステップと、
前記プロセッサにより、前記第1のカプセル化フレームから仮想出口デバイスの識別子を抽出するステップと、
前記プロセッサにより、前記識別子から次のホップデバイス及び代替ホップデバイスを決定するステップと、
前記プロセッサにより、前記次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定するステップと、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができるとき、
前記プロセッサにより、前記第1のカプセル化フレームをカプセル化して第3のカプセル化フレームを形成するステップであって、前記第3のカプセル化フレームが、前記次のホップデバイスを識別するヘッダを有する、ステップと、
前記プロセッサにより、前記次のホップデバイスに連結された前記伝送物理ポートに前記第3のカプセル化フレームを転送するステップと、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができないとき、
前記プロセッサにより、前記代替ホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定するステップと
を含む、仮想転送デバイスの動作方法。
【請求項12】
前記第2のカプセル化フレームが、仮想入口デバイスから前記受信物理ポートにて受信される、請求項11に記載の動作方法。
【請求項13】
前記プロセッサにより、前記仮想出口デバイスの抽出された前記識別子に基づいてルックアップテーブルから前記代替ホップデバイス及び前記次のホップデバイスの物理アドレスを決定するステップ
をさらに含む、請求項11に記載の動作方法。
【請求項14】
前記プロセッサにより、前記伝送物理ポートに転送される前記フレームの第1のレートが、前記伝送物理ポートが前記次のホップデバイスに前記フレームを物理的に出力することができる第2のレートよりも大きいときに、保留信号をアサートするステップ
をさらに含む、請求項11に記載の動作方法。
【請求項15】
前記プロセッサにより、前記第3のカプセル化フレームを前記次のホップデバイスに出力するステップ
をさらに含む、請求項11に記載の動作方法。
【請求項16】
前記プロセッサにより、前記代替ホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができないとき、前記第1のカプセル化フレームを捨てるステップ
をさらに含む、請求項11に記載の動作方法。
【請求項17】
前記プロセッサにより、前記代替ホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができるとき、前記第1のカプセル化フレームをカプセル化して別の第3のカプセル化フレームを形成するステップであり、前記別の第3のカプセル化フレームが、前記代替ホップデバイスに連結された前記代替物理ポートを識別する別のヘッダを有する、形成するステップ
をさらに含む、請求項11に記載の動作方法。
【請求項18】
前記プロセッサにより、前記別の第3のカプセル化フレームを、前記代替ホップデバイスに連結された前記伝送物理ポートに転送するステップと、
前記プロセッサにより、前記別の第3のカプセル化フレームを前記代替ホップデバイスに出力するステップと、
をさらに含む、請求項17に記載の動作方法。
【請求項19】
プログラム命令を埋め込んだ非一時的コンピュータ可読記憶媒体であって、前記プログラム命令が、プロセッサによって実行されると、仮想転送デバイスの動作方法を前記プロセッサに実行させ、前記動作方法が、
第2のカプセル化フレームを受信することと、
前記第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出することと、
前記第1のカプセル化フレームから仮想出口デバイスの識別子を抽出することと、
前記識別子から次のホップデバイス及び代替ホップデバイスを決定することと、
前記次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定することと、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができるとき、
前記第1のカプセル化フレームをカプセル化して第3のカプセル化フレームを形成することであり、前記第3のカプセル化フレームが、前記次のホップデバイスを識別するヘッダを有する、カプセル化することと、
前記次のホップデバイスに連結された前記伝送物理ポートに前記第3のカプセル化フレームを転送することと、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができないとき、前記代替ホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定することと
を含む、非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、コンピュータネットワークの分野に関し、詳細には、仮想ネットワークを形成する方法に関する。
【背景技術】
【0002】
ワイドエリアネットワーク(WAN:wide area network)は、州をまたがる又は国をまたがるなど、大きい地理的エリアにわたってローカルエリアネットワーク又はメトロポリタンエリアネットワークを典型的に相互接続するネットワークデバイスの相互接続されたウェブである。WANは、遠くに位置するコンピュータが、ネットワークデバイスを介して互いに通信することを可能にする。
【0003】
従来のネットワークデバイスは、典型的には、例えば、10/100/1000Mbps(メガビット/秒)、10Gbps(ギガビット/秒)、40Gbps、及び100Gbps接続など、予め定められた固定データレートで動作する1つ又は複数の物理ネットワークポートを含む。ネットワークを介したコンピュータシステム間の通信を可能にすることの一部として、従来のネットワークデバイスは、ネットワークポートの転送スピードを交渉し、そのプロセス中、ネットワークポートの転送スピードは固定される。
【0004】
従来のネットワークデバイスの短所の1つは、利用可能な物理ポートより多くの物理ポートをしばしば必要とすることであり、これにより、サービスが低下する、又はアップグレードが高価になる。その結果、ポートへのますます増加する必要性に合わせることへのアプローチの必要がある。
【発明の概要】
【0005】
本発明は、データ及びフレームレートに柔軟性をもたらす仮想ネットワークを提供する。本発明は、2つ以上の物理ファイバをそれぞれ有する1つ又は複数の光ファイバケーブルにわたって或るフレームレートでデータのフレームを渡す(pass、パスする)ことを含む、仮想ネットワークを形成する方法を含む。データのフレームのフレームレートが、光ファイバケーブルにおける第1の物理ファイバの最大フレームレートより大きいとき、パスすることは、第1の物理ファイバの最大データレート以下の第1のデータレートで第1の物理ファイバを介してデータの第1の数のフレームをパスすること、及び第2の物理ファイバの最大データレート以下の第2のデータレートで第2の物理ファイバを介してデータの第2の数のフレームをパスすることを含む。データのフレームのフレームレートが、光ファイバケーブルにおける第1の物理ファイバのフレームレート以下であるとき、パスすることは、フレームのペアが複数のソースからのデータを含むように、第1の物理ファイバを通じてデータのフレームのペアを順番にパスすることを含む。
【0006】
本発明は、さらに、主要な経路が、フレームが受信され得るレートより低いレートでフレームを転送するとき、代替経路を介して仮想出口デバイスにフレームを転送する仮想転送デバイスを含む。本発明の仮想転送デバイスは、第2のカプセル化フレームを受信する受信物理ポートと、次のホップデバイスに連結されることになる伝送物理ポートと、代替ホップデバイスに連結されることになる代替物理ポートと、受信物理ポート、伝送物理ポート、及び代替物理ポートに連結された仮想ポートとを含む。仮想ポートは、受信物理ポートから第2のカプセル化フレームを受信すること、第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出すること、及び第1のカプセル化フレームから仮想出口デバイスの識別子を抽出することを行うためのものである。仮想ポートは、さらに、識別子から次のホップデバイス及び代替ホップデバイスを決定すること、並びに伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定することを行うためのものである。伝送物理ポートが転送用フレームを受け入れることができるとき、第1のカプセル化フレームをカプセル化して第3のカプセル化フレームを形成すること、及び伝送物理ポートに第3のカプセル化フレームを転送することを行う。第3のカプセル化フレームは、次のホップデバイスを識別するヘッダを有する。伝送物理ポートが転送用フレームを受け入れることができないとき、代替物理ポートが転送用フレームを受け入れることができるかどうかを判定する。
【0007】
本発明は、仮想転送デバイスの動作方法をさらに含む。方法は、第2のカプセル化フレームを受信することと、第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出することと、第1のカプセル化フレームから仮想出口デバイスの識別子を抽出することとを含む。方法は、識別子から次のホップデバイス及び代替ホップデバイスを決定することと、次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定することとをさらに含む。方法は、さらに、次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるとき、第1のカプセル化フレームをカプセル化して第3のカプセル化フレームを形成することと、次のホップデバイスに連結された伝送物理ポートに第3のカプセル化フレームを転送することとを含む。第3のカプセル化フレームは、次のホップデバイスを識別するヘッダを有する。方法は、追加として、次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができないとき、代替ホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定することを含む。
【0008】
本発明は、さらに、プログラム命令を埋め込んだ非一時的コンピュータ可読記憶媒体を提供し、プログラム命令は、プロセッサによって実行されると、仮想転送デバイスの動作方法をプロセッサに実行させる。方法は、第2のカプセル化フレームを受信することと、第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出することと、第1のカプセル化フレームから仮想出口デバイスの識別子を抽出することとを含む。方法は、識別子から次のホップデバイス及び代替ホップデバイスを決定することと、次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定することとをさらに含む。方法は、さらに、次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるとき、第1のカプセル化フレームをカプセル化して第3のカプセル化フレームを形成することと、次のホップデバイスに連結された伝送物理ポートに第3のカプセル化フレームを転送することとを含む。第3のカプセル化フレームは、次のホップデバイスを識別するヘッダを有する。方法は、追加として、次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができないとき、代替ホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定することを含む。
【0009】
本発明の特徴及び長所のより良い理解は、本発明の重要事項が利用される例証的実施形態を示す以下の詳細な説明及び添付の図面を参照することによって得られるであろう。
【図面の簡単な説明】
【0010】
図1A図1Aは、本発明による仮想ネットワーク100の例を示すブロック図である。
図1B1図1B1は、本発明による仮想ネットワーク100の動作方法150を示すフローチャートである。
図1B2図1B2は、本発明による仮想ネットワーク100の動作方法150を示すフローチャートである。
図1C図1Cは、本発明によるフレームの例を示す図である。
図2A図2Aは、本発明による伝送回路200の例を示すブロック図である。
図2B図2Bは、本発明による伝送回路250の例を示すブロック図である。
図2C図2Cは、本発明による伝送回路270の例を示すブロック図である。
図2D図2Dは、本発明による結合器274の動作の例を示すタイミング図である。
図3A図3Aは、本発明による伝送回路200の動作方法300の例を示すフローチャートである。
図3B図3Bは、本発明による伝送回路200の動作方法350の例を示すフローチャートである。
図4図4は、本発明の代替実施形態による伝送回路400の例を示すブロック図である。
図5図5は、本発明の代替実施形態による伝送回路500の例を示すブロック図である。
図6図6は、本発明による仮想出口デバイスの受信回路600の例を示すブロック図である。
図7図7は、本発明による受信回路600の動作方法700の例を示すフローチャートである。
図8図8は、本発明の代替実施形態による受信回路800の例を示すブロック図である。
図9図9は、本発明の代替実施形態による受信回路900の例を示すブロック図である。
図10A図10Aは、本発明による仮想転送デバイス1000の例を示すブロック図である。
図10B図10Bは、本発明による仮想転送デバイス1000の動作方法1050の例を示すフローチャートである。
図11図11は、本発明による仮想転送デバイス1100の例を示すブロック図である。
図12図12は、本発明による仮想ネットワークを形成する方法1200の例を示すフローチャートである。
【0011】
本発明の特徴及び長所のより良い理解は、本発明の重要事項が利用される例証的実施形態を示す以下の詳細な説明及び添付の図面を参照することによって得られるであろう。
【本発明を実施するための最善のモード】
【0012】
図1Aは、本発明による仮想ネットワーク100の例を示すブロック図を示す。図1Aに示されているように、仮想ネットワーク100は、ある数の仮想入口デバイスVED1~VEDr、光ファイバケーブルを介して仮想入口デバイスVED1~VEDrに連結されたある数の仮想転送デバイスVFD1~VFDs、及び、相互接続されたデバイスのウェブを形成するために光ファイバケーブルを介して仮想転送デバイスVFD1~VFDsに連結されたある数の仮想出口デバイスVXD1~VXDtを含む。
【0013】
仮想ネットワーク100は、ローカルルータ/スイッチLRS1~LRSxなどのある数のローカルデバイスを、リモートルータ/スイッチRRS1~RRSyなどのある数のリモートデバイスと相互接続する。本例では、ローカルルータ/スイッチLRSは、セットトップボックス(STB:set-top box)、パーソナルコンピュータ(PC:personal computer)、及びビデオデバイス(VID:video device)などのある数のユーザデバイスに連結され、その一方で、リモートルータ/スイッチRRSは、同様に、ある数のユーザデバイスに連結される。
【0014】
図1B1図1B2は、本発明による仮想ネットワーク100の動作方法150を示すフローチャートを示す。図1B1に示されているように、方法150は、152で始まり、ここで、仮想入口デバイスVEDが、ローカルルータ/スイッチから、STB、PC、及びビデオフレームなど、入力フレームのストリームを受信する。各入力フレームは、順番に、リモートルータ/スイッチRRSなどのリモートデバイスを識別するヘッダを有する。例えば、仮想入口デバイスVED1は、ローカルルータ/スイッチLRS1から入力フレームのストリームを受信することができ、ここで、各入力フレームは、リモートルータ/スイッチRRS1を識別するヘッダを有する。
【0015】
図1Cは、本発明によるフレームの例を示す図を示す。図1Cに示されているように、入力フレームは、ローカルルータ/スイッチLRS1などのローカルルータ/スイッチのMACアドレスを識別するSrc MAC Aフィールドと、リモートルータ/スイッチRRS1などのリモートルータ/スイッチのMACアドレスを識別するDist MAC Bフィールドとを含むヘッダを有する。入力フレームは、さらに、タイプフィールド、データフィールド、及びエラー訂正(CRC:error correction)フィールドなど、他のフィールドを含む。
【0016】
図1B1を再び参照すると、方法150は、次に、154に移動し、ここで、仮想入口デバイスVEDが、入力フレームのヘッダからリモートルータ/スイッチを決定する。この後、方法150は、156に移動して、リモートルータ/スイッチRRSの識別情報(identity)から、リモートルータ/スイッチRRSに連結された仮想出口デバイスVXDを決定する。例えば、リモートルータ/スイッチのMACアドレスRRS1は、Dist MAC Bフィールドから取られ、ルックアップテーブルを介して仮想出口デバイスVXD1のMACアドレスを識別するために使用されることが可能であり、仮想出口デバイスVXD1は、リモートルータ/スイッチRRS1に連結されている。
【0017】
仮想出口デバイスVXDを決定した後、方法150は、158に移動し、ここで、仮想入口デバイスVEDが、入力フレームをカプセル化して第1のカプセル化(FE:first encapsulated)フレームを形成する。FEフレームは、順番に、本例では仮想出口デバイスVXD1である仮想出口デバイスを識別するフィールド、及び入力フレームを含むフィールドを有する。カプセル化は、プロバイダバックボーンブリッジ-トラフィックエンジニアリング(PBB-TE)プロトコル、又はトランスポートマルチプロトコルラベルスイッチング(T-MPLS)プロトコルなど、従来のプロトコルで実施されることが可能である。
【0018】
図1Cに示されているように、FEフレームは、仮想出口デバイスVXD1などの仮想出口デバイスVXDのMACアドレスを識別するDst MAC Xフィールド、及び仮想入口デバイスVED1などの仮想入口デバイスVEDのMACアドレスを識別するSrc MAC Nフィールドを有する。FEフレームは、さらに、Iタグフィールド、入力フレームを含むペイロードフィールド、及びCRCフィールドなど、他のフィールドを含む。
【0019】
図1B1を再び参照すると、方法150は、次に、160に移動し、ここで、仮想入口デバイスが、仮想出口デバイスの識別情報から、FEフレームのための第1のホップデバイスを決定する。第1のホップデバイスは、仮想出口デバイスVXD又は仮想転送デバイスVFDの方にあることが可能である。例えば、仮想入口デバイスVED1は、仮想ネットワーク100における第1のホップデバイスのMACアドレスを決定するために、ルックアップテーブルに仮想出口デバイスVXD1のMACアドレスを入力することができる。この後、方法150は、162に移動し、ここで、仮想入口デバイスが、第2のカプセル化(SE:second encapsulated)フレームを形成するためにFEフレームをカプセル化する。各SEフレームは、順番に、第1のホップデバイスを識別するフィールド、及びFEフレームを含むフィールドを有する。
【0020】
図1Cに示されているように、SEフレームは、本例では仮想入口デバイスVED1である現在のデバイスのMACアドレスを識別するSrc MAC Cフィールド、及び本例では仮想転送デバイスVFD1である仮想ネットワーク100における第1のホップのMACアドレスを識別するDist MAC Hフィールドを有する。SEフレームは、さらに、仮想入口デバイスの仮想ポートを識別するDst vIDフィールド、及び仮想出口デバイスの対応する仮想ポートを識別するSrc vIDフィールドを含む。
【0021】
図1B1を再び参照すると、方法150は、次に、164に移動し、ここで、仮想入口デバイスVEDが、本例では仮想転送デバイスVFDの方にある第1のホップデバイスにSEフレームを伝送する。例えば、仮想入口デバイスVED1は、仮想転送デバイスVFD1にSEフレームを伝送することができる。
【0022】
方法150は、次に、166に移動し、ここで、第1のホップデバイスが、SEフレームを受信し、SEフレームから、第1のホップデバイスが仮想出口デバイスであるかどうかを判定する。第1のホップデバイスが仮想出口デバイスでないとき、方法150は、168に移動して、次のホップデバイス及び代替ホップデバイスを決定する。例えば、仮想転送デバイスVFD1は、SEフレームを受信し、仮想転送デバイスVFD1が仮想出口デバイスではないと決定することができる。
【0023】
次に、方法150は、170に移動して、次のホップデバイスに連結された物理ポートが伝送用フレームを受け入れることができるかどうかを判定する。次のホップデバイスに連結された物理ポートが伝送用フレームを受け入れることができるとき、方法150は、172に移動して、次のホップデバイスに連結された物理ポートにSEフレームを出力し、次いで、174に移動して、次のホップデバイスにSEフレームを伝送する。
【0024】
170において、次のホップデバイスに連結された物理ポートが伝送用フレームを受け入れることができないとき、方法150は、176に移動して、代替ホップデバイスに連結された物理ポートが伝送用フレームを受け入れることができるかどうかを判定する。代替ホップデバイスに連結された物理ポートが伝送用フレームを受け入れることができるとき、方法150は、178に移動して、代替ホップデバイスに連結された物理ポートにSEフレームを出力し、次いで、174に移動して、代替ホップデバイスにSEフレームを伝送する。この後、方法150は、166に戻る。
【0025】
本例では、代替ホップデバイスは、仮想転送デバイスVFD2であり、したがって、図1B1の要素166~178を実施して、仮想出口デバイスVXD1に又は別の仮想転送デバイスVFDに、第2のカプセル化フレームを転送する。
【0026】
図1B2に示されているように、166において、第1のホップデバイスが仮想出口デバイスであるとき、方法150は、182に移動して、FEフレームを抽出するためにSEフレームを解凍し、次いで、184に移動して、入力フレームを抽出するためにFEフレームを解凍する。方法150は、次に、186に移動して、入力フレームからリモートルータ/スイッチを決定し、次いで、188に移動して、リモートルータ/スイッチに入力フレームを伝送する。
【0027】
本発明の長所のうちの1つは、リモートルータ/スイッチのMACアドレスを参照せずに仮想ネットワーク100全体にフレームが転送されることが可能なことである。
【0028】
図1Aを再び参照すると、仮想入口デバイスVED、仮想転送デバイスVFD、及び仮想出口デバイスVXDは、管理者によって割り当てられた静的な転送テーブルを有する。例えば、STB、PC、及びビデオのような各入力フレームは、リモートルータ/スイッチRRSのMACアドレスを含む。リモートルータ/スイッチRRSに連結された仮想出口デバイスVXDの識別情報は、仮想ネットワーク100を通じてフレームが取るホップが予め割り当てられるように、仮想入口デバイスVED及び仮想出口デバイスに、管理者によって割り当てられ、提供されることが可能である。
【0029】
図2Aは、本発明による仮想入口デバイスの伝送回路200の例を示すブロック図を示す。図2Aに示されているように、伝送回路200は、ローカル物理ポート210、ローカル物理ポート210に連結されたフレーミング回路212、及びフレーミング回路212に連結されたある数の伝送仮想ポートvPORTa1~vPORTanを含む。
【0030】
各伝送仮想ポートvPORTaは、順番に、伝送待ち行列(queue、キュー)及び伝送フレームフォーマット回路を含む。追加として、伝送回路200は、さらに、伝送仮想ポートvPORTaのそれぞれに連結された伝送仮想スイッチ214、並びに伝送仮想スイッチ214に及び光ファイバケーブルに連結されたネットワーク物理ポート216を含む。
【0031】
図3Aは、本発明による伝送回路200の動作方法300の例を示すフローチャートを示す。図3Aに示されているように、方法300は、310で始まり、フレーミング回路212が、ローカル物理ポート210から一連の入力フレームを受信する。方法300は、次に、312に移動して、一連の入力フレームを検査して各入力フレームのフレームタイプ(例えば、STB、PC、ビデオ)を決定し、次いで、314に移動して、フレームタイプに基づいて、各入力フレームに関連付けられた仮想出口デバイスを決定する。各仮想出口デバイスは、順番に、ある数の受信仮想ポートを有する。
【0032】
これに続いて、方法300は、316に移動し、ここで、フレーミング回路212が、一連の入力フレームをカプセル化して、ある数の第1のカプセル化(FE)フレームを形成する。FEフレームは、一連の入力フレームに関連付けられた仮想出口デバイスを識別するヘッダを有する。
【0033】
この後、方法300は、318に移動し、ここで、伝送仮想ポートvPORTa1~vPORTanが、FEフレームのヘッダの仮想出口デバイスに基づいて、FEフレームのための仮想ネットワークにおける第1のホップを決定する。次に、方法300は、320に移動し、ここで、伝送仮想ポートvPORTa1~vPORTanが、FEフレームをカプセル化して第2のカプセル化(SE)フレームを形成する。各SEフレームは、SEフレームの第1のホップを識別するヘッダを有する。ヘッダは、さらに、入力フレームの関連付けられた仮想出口デバイスの受信仮想ポートを識別する。追加として、伝送仮想ポートは、共有メモリの第1の部分を占有する。
【0034】
これに続いて、方法300は、322に移動し、ここで、伝送仮想スイッチ214が、伝送仮想ポートvPORTa1~vPORTanを通じて、SEフレームのシーケンスを出力するために、固定された繰り返し順で各伝送仮想ポートvPORTaからSEフレームを順次転送することを循環させる。例えば、仮想スイッチ214は、SEフレームのシーケンスを出力することができ、ここで、第1のSEフレームは、vPORT1からのものであり、第2のフレームは、vPORT2からのものであり、第3のフレームは、vPORT3からのものであり、第4のフレームは、再びvPORT1からのものである。
【0035】
伝送仮想ポートvPORTaが空であるか部分的に満杯の場合、フレームは生成されない。例えば伝送仮想ポートvPORT2が空の場合、ネットワーク物理ポート216は、フレーム1、フレームなし、フレーム3を含むフレームシーケンスを出力する。方法300は、次に、324に移動し、ここで、ネットワーク物理ポート216が、仮想ネットワーク上にSEフレームを伝送する。
【0036】
図3Bは、本発明の代替実施形態による伝送回路200の動作方法350の例を示すフローチャートを示す。方法350は、方法300に類似しており、その結果、同じ参照番号を利用して、両方の方法に共通の要素を指名する。
【0037】
図3Bに示されているように、方法350は、まず、352において方法300から分岐し、ここで、仮想スイッチ214は、伝送仮想ポートvPORTaのいずれかから完全な信号が受信されたかどうかを判定する。完全な信号は、SEフレームが伝送仮想ポートvPORTaにおいて伝送される準備ができていることを示す。仮想スイッチ214が伝送仮想ポートvPORTaから完全な信号を検出すると、方法350は、354に移動し、ここで、仮想スイッチ214が、ネットワーク物理ポート216に完全な信号を出力する伝送仮想ポートvPORTaからSEフレームを転送する。
【0038】
例えば、仮想スイッチ214は、伝送仮想ポートvPORTa1、伝送仮想ポートvPORTa2、及び伝送仮想ポートvPORTa3から完全な信号を順次受信することができる。この場合、仮想スイッチ214は、SEフレームのシーケンスを出力し、ここで、第1のSEフレームは、伝送仮想ポートvPORT1からのものであり、第2のフレームは、伝送仮想ポートvPORT2からのものであり、第3のフレームは、伝送仮想ポートvPORT3からのものである。
【0039】
代替として、ソース(例えば、STB、PC、ビデオソース)のうちの1つが、他のソース(例えば、STB、PC、ビデオソース)のデータレートより遙かに速いデータレートを有することができ、これにより、一方の伝送仮想ポートvPORTaが、他方の伝送仮想ポートvPORTaより遙かに頻繁に完全な信号を出力する。
【0040】
例えば、ネットワーク物理ポート216が、1秒当たり5フレームのフレームレートでフレームを伝送し、伝送仮想ポートvPORTa2が、伝送仮想ポートvPORTa1及びvPORTa3のフレームレートのそれぞれより3倍速いレートでフレームを出力し、伝送仮想ポートvPORTa2が、他のポートより前に3回、完全に信号送信し、伝送仮想ポートvPORTa1が、vPORTa3が信号送信する前に信号送信する場合、仮想スイッチ214は、伝送仮想ポートvPORT2からの第1のフレーム、伝送仮想ポートvPORT2からの第2のフレーム、伝送仮想ポートvPORT2からの第3のフレーム、伝送仮想ポートvPORT1からの第4のフレーム、及び伝送仮想ポートvPORT3からの第5のフレームを含むフレームのシーケンスを転送する。
【0041】
完全な信号を受信する順序が、仮想スイッチ214によって伝送仮想ポートvPORTaからSEフレームが出力される順序を決定する、ファーストインファーストアウトアプローチに加えて、伝送仮想ポートvPORTa~vPORTanは、代替として、フレームが任意の量及び任意の順序で伝送仮想ポートvPORTaからネットワーク物理ポートに転送されることを可能にする、優先方式を含むことができる。
【0042】
図3Bを再び参照すると、ネットワーク物理ポート216に完全な信号を出力する伝送仮想ポートvPORTaからのSEフレームを仮想スイッチ214が転送した後、方法350は、356に移動し、ここで、ネットワーク物理ポート216が、SEフレームを伝送する。方法300では、出力されることになるフレームは予測可能であり、その一方で、方法350で出力されることになるフレームは予測可能ではないが、優先方式は、ある程度の予測可能性をもたらす。
【0043】
図2Aの例を再び参照すると、フレーミング回路212は、仮想スイッチ220、及び仮想スイッチ220に連結されたフレーマ222を含む。仮想スイッチ220は、入力フレームのタイプ(例えば、STB、PC、ビデオ)を検出し、静的な転送テーブルから、フレームのタイプに一致する伝送仮想ポートvPORTaへのフレームのルートを決定し、伝送仮想ポートvPORTaに向けてフレームを出力する。
【0044】
本例では、仮想スイッチ220は、ルータ/スイッチ120などのローカルソースルータ/スイッチによって伝送されたSTBフレームを受信し、STBフレームにおけるソース及び/又は宛先MACアドレスから、受信後フレームがSTBフレームであることを知る。スイッチ220は、次いで、伝送仮想ポートvPORTa1に向かう経路を定められた第1の仮想ポート線路P1にSTBフレームを出力し、伝送仮想ポートvPORTa1は、STBフレームを受信するために予め選択されたものである。
【0045】
同様に、仮想スイッチ220は、ローカルソースルータ/スイッチによって伝送されたPCフレームを受信し、PCフレームにおけるソース及び/又は宛先MACアドレスから、受信後フレームがPCフレームであることを知る。スイッチ220は、次いで、伝送仮想ポートvPORTa2に向かう経路を定められた第2の仮想ポート線路P2にPCフレームを出力し、伝送仮想ポートvPORTa2は、PCフレームを受信するために予め選択されたものである。
【0046】
仮想スイッチ220は、さらに、ローカルルータ/スイッチによって伝送されたビデオフレームを受信し、ビデオフレームにおけるソース及び/又は宛先MACアドレスから、受信後フレームがビデオフレームであることを知り、次いで、伝送仮想ポートvPORTa3に向かう経路を定められた第3の仮想ポート線路P3にビデオフレームを出力し、伝送仮想ポートvPORTa3は、ビデオフレームを受信するために予め選択されたものである。
【0047】
フレーマ222は、仮想ポート線路P1でSTBフレームを受信し、STBフレームをカプセル化して第1のカプセル化(FE)STBフレームを形成し、次いで、伝送仮想ポートvPORTa1の伝送キューにFE STBフレームを転送する。同様に、フレーマ222は、仮想ポート線路P2でPCフレームを受信し、PCフレームをカプセル化して第1のカプセル化(FE)PCフレームを形成し、次いで、伝送仮想ポートvPORTa2の伝送キューにFE PCフレームを転送する。フレーマ222は、さらに、仮想ポート線路P3でビデオフレームを受信し、ビデオフレームをカプセル化して第1のカプセル化(FE)ビデオフレームを形成し、次いで、伝送仮想ポートvPORTa3の伝送キューにFEビデオフレームを転送する。
【0048】
フレーマ222は、プロバイダバックボーンブリッジ-トラフィックエンジニアリング(PBB-TE)プロトコル、又はトランスポートマルチプロトコルラベルスイッチング(T-MPLS)プロトコルなど、従来のプロトコルを利用してカプセル化フレームを生成することができる。追加として、FE STBフレーム、FE PCフレーム、及びFEビデオフレームは、それぞれ、仮想出口デバイスの識別表示(identification)を含むある数のフィールドを有するヘッダを有する。
【0049】
例えば、FEフレームのヘッダは、仮想出口デバイスのMACアドレス用の出口アドレスフィールド、Iタグフィールド、又は同様のフィールドを含むことができる。ヘッダは、さらに、仮想入口デバイスのMACアドレスなどの他のフィールドを含むことができる。本例では、仮想出口デバイスのMACアドレスは、仮想入口デバイスに管理者によって提供される。
【0050】
伝送仮想ポートvPORTaについては、伝送回路200の伝送仮想ポートvPORTa1のフレームフォーマット回路は、FE STBフレームを受信し、FE STBフレームのヘッダにおける仮想出口デバイスのMACアドレスなどの仮想出口デバイスの識別表示に基づいて、静的な転送テーブルからFE STBフレームのための仮想ネットワークにおける第1のホップを決定し、FE STBフレームをカプセル化して第2のカプセル化(SE)STBフレームを形成する。
【0051】
同様に、伝送回路200の伝送仮想ポートvPORTa2のフレームフォーマット回路は、FE PCフレームを受信し、FE PCフレームのヘッダにおける仮想出口デバイスのMACアドレスなどの仮想出口デバイスの識別表示に基づいて、静的な転送テーブルからFE PCフレームのための仮想ネットワークにおける第1のホップを決定し、FE PCフレームをカプセル化して第2のカプセル化(SE)PCフレームを形成する。
【0052】
追加として、伝送回路200の伝送仮想ポートvPORTa3のフレームフォーマット回路は、FEビデオフレームを受信し、FEビデオフレームのヘッダにおける仮想出口デバイスのMACアドレスなどの仮想出口デバイスの識別表示に基づいて、静的な転送テーブルからFEビデオフレームのための仮想ネットワークにおける第1のホップを決定し、FEビデオフレームをカプセル化して第2のカプセル化(SE)ビデオフレームを形成する。
【0053】
SE STBフレーム、SE PCフレーム、及びSEビデオフレームは、それぞれ、仮想ネットワークにおける第1のホップデバイスのMACアドレスを識別する第1のホップフィールド、仮想入口デバイスの仮想ポート番号を識別するソースフィールドSrc_vID、及び仮想入口デバイスの仮想ポート番号に一致する仮想出口デバイスの仮想ポート番号を識別する宛先フィールドDst_vIDを有するヘッダを含む。本例では、SE STBフレームのためのソースフィールドSrc_vIDは、伝送仮想ポートvPORTa1である。他のフィールドがさらに含まれることが可能である。
【0054】
さらに、仮想スイッチ214は、伝送仮想ポートvPORTa1~vPORTanを通じて、物理ポート216に一連のSEフレームを出力するために、各仮想ポートvPORTaから第2のカプセル化(SE)フレームを転送することを順次循環させる。本例では、スイッチ214は、伝送仮想ポートvPORTa1からのSE STBフレームを物理ポート216に転送し、その後、伝送仮想ポートvPORTa2からのSE PCフレームを物理ポート216に転送し、その後、伝送仮想ポートvPORTa3からのSEビデオフレームを物理ポート216に転送し、その後、仮想ポートvPORTa1からのSE STBフレームを物理ポート216に転送し、同じように、物理ポート216がフレームを出力することが続く。図2は、単一のローカルルータ/スイッチからの入力を受信し、入力で動作するものとして伝送回路200を示しているが、伝送回路200は、代替として、複数のルータ/スイッチからの入力を受信し、この入力で動作することができる。
【0055】
図2Bは、本発明による伝送回路250の例を示すブロック図を示す。伝送回路250は、伝送回路200に類似しており、その結果、同じ参照番号を利用して、伝送回路200と伝送回路250両方に共通の要素を指名する。
【0056】
図2Bに示されているように、伝送回路250は、伝送回路250が、第1のネットワーク物理ポート216A及び第2のネットワーク物理ポート216Bを含み、その両方が仮想スイッチ214に連結されているという点で伝送回路200とは異なる。追加として、仮想スイッチ214は、伝送仮想ポートvPORTa1とネットワーク物理ポート216Aとの間の連続的な接続を提供する。さらに、追加の伝送仮想ポートvPORTa4が示されている。
【0057】
伝送回路250は、ソース(例えば、STB、PC、又はビデオソース)のうちの1つ又は複数が、ネットワーク物理ポート216A及び216Bの最大フレームレートより大きいフレームレートでデータのフレームを出力することを除いて、伝送回路200と実質的に同じものを動作させる。例えば、ネットワーク物理ポート216A及び216Bのそれぞれは、1秒当たり5フレームの最大フレームレートを有することができる。
【0058】
図2Bの例では、セットトップボックスは、1秒当たり7つのSTBフレームを出力し、その一方で、パーソナルコンピュータは、1秒当たり2つのPCフレームを出力し、ビデオデバイスは、1秒当たり1つのビデオフレームを出力する。(引用される数は、単に例証のためのものである。)図2Bに示されているように、7つのSTBフレームのうちの5つが、ネットワーク物理ポート216Aから伝送され、その一方で、残りの2つのSTBフレーム、2つのPCフレーム、及び1つのビデオフレームは、方法300及び350によって示されたようにネットワーク物理ポート216Bから伝送される。伝送回路250の長所の1つは、伝送回路250が、ネットワーク物理ポートの最大フレームレートより大きい着信フレームレートをハンドリングできることである。
【0059】
図2Cは、本発明による伝送回路270の例を示すブロック図を示す。伝送回路270は、伝送回路200に類似しており、その結果、同じ参照番号を利用して、伝送回路200と伝送回路270両方に共通の構造を指名する。
【0060】
図2Cに示されているように、伝送回路270は、伝送回路270が、フレーミング回路212の代わりに、フレーミング回路272を利用するという点で伝送回路200とは異なる。フレーミング回路272は、結果として、STBフレーム、PCフレーム、及びビデオフレームからのデータを単一の結合フレームに結合させる結合器274をフレーミング回路272が含むことを除いて、フレーミング回路212と同じである。
【0061】
結合器274は、フレームタイプの数に一致するフレーミング仮想ポートVP1~VP3などのある数のフレーミング仮想ポート、及び異なるフレーミング仮想ポートVP1~VP3からのデータを結合して、フレーマ222に出力される結合フレームを生成する、結合エンジンCEを含む。結合エンジンCEは、ロジック又はソフトウェアで実装されることが可能である。
【0062】
動作中、結合器274は、20Mbpsの第1のソースからのSTBフレーム、32Mbpsの第2のソースからのPCフレーム、及び48Mbpsの第3のソースからのビデオフレームなど、ある数の非標準データレートのある数のソースからのデータのある数の着信フレームを受信し、例えば、STB、PC、ビデオのようなフレームのソースに一致するフレーミング仮想ポートVP1~VP3に、着信フレームを記憶する。
【0063】
結合器274は、フレーミング仮想ポートVP1~VP3に記憶されたSTB、PC、及びビデオフレームからのデータを結合して、ネットワーク物理ポート216の予め定められた固定データレート(例えば、100Mbps)以下のデータレートで結合フレームを出力する。例えば、20MbpsのSTBフレームからのデータ、32MbpsのPCフレームからのデータ、及び48Mbpsのビデオフレームからのデータは、例における100Mbpsの予め定められた固定データレートに等しい100Mbpsの結合フレームを生成するために結合される。
【0064】
図2Dは、本発明による結合器274の動作の例を示すタイミング図を示す。図2Dの例では、伝送クロック信号280内で選択されたパルスにクロック制御された、3つのフレーミング仮想ポートVP1、VP2、及びVP3からのデータと共に、1秒当たり10サイクルの予め定められた固定レートで動作する伝送クロック信号280が示されている。
【0065】
1秒当たり2サイクルの予め定められていないデータレートを有する第1のソースからSTBフレームの第1のデータストリーム、1秒当たり3サイクルの予め定められていないデータレートを有する第2のソースからのPCフレームの第2のデータストリーム、及び1秒当たり4サイクルの予め定められていないデータレートを有する第3のソースからのビデオフレームの第3のデータストリームを結合器274が受信した場合、線路282によって示されているように、結合器274は、第1のデータストリームからのデータを、1秒当たり10回の予め定められた固定サイクルの第1の2つのクロックサイクルにクロック制御し、第2のデータストリームからのデータを、1秒当たり10回の予め定められた固定サイクルの第3、第4、及び第5のクロックサイクルにクロック制御し、第3のデータストリームからのデータを、1秒当たり10回の予め定められた固定サイクルの第6、第7、第8、及び第9のクロックサイクルにクロック制御する。この例における最後のサイクルは空である。着信フレームは、予め定められた固定クロックサイクルの全てが利用されるようにグループ化されることが理想的である。
【0066】
追加として、図2Dに線路284で示されているように、第1のデータストリームからのデータ、第2のデータストリームからのデータ、及び第3のデータストリームからのデータは、伝送クロック信号610の10回の予め定められた固定サイクルのクロックサイクルのいずれかにクロック制御されることが可能である。例えば、ヘッダ、ペイロードのような任意のタイプのデータ、及び例えば、ビット、バイト、ワード、タイプのような任意の量のデータは、伝送クロック信号280の各パルスにクロック制御されることが可能である。図2Dの例は、タイミングを示すための簡素化された例である。
【0067】
図2Cを再び参照すると、フレーマ222は、結合フレームのヘッダから、例えばリモートルータ/スイッチのようなリモートデバイスを識別し、リモートデバイスの識別情報から仮想出口デバイス識別する。結合フレームは、仮想出口デバイスを識別するヘッダを有するFE結合フレームを生成するためにフレーマ222によってカプセル化される。
【0068】
FE結合フレームは、FEフレームのヘッダの仮想出口デバイスに基づいて、FEフレームのための仮想ネットワークにおける第1のホップを決定するために、伝送仮想ポートvPORTa1に転送される。伝送仮想ポートvPORTa1は、さらに、FE結合フレームをカプセル化して、SEフレームの第1のホップを識別するヘッダを有する第2のカプセル化(SE)フレームを形成する。伝送仮想ポートvPORTa1は、SEフレームを物理ポート216に転送し、物理ポート216は、SE結合フレームを出力する。
【0069】
図4は、本発明の代替実施形態による伝送回路400の例を示すブロック図を示す。伝送回路400は、伝送回路200に類似しており、その結果、同じ参照番号を利用して、両方の回路に共通の構造を指名する。
【0070】
図4に示されているように、伝送回路400は、伝送回路400のフレーミング回路212が、フレーマ222が後に続く仮想スイッチ220の代わりに、仮想ポートvPORTa1~vPORTanに連結されたシリアル対パラレル仮想スイッチ412が後に続くシリアル対シリアルフレーマ410を利用するという点で伝送回路200とは異なる。さらなる代替実施形態では、伝送回路400のフレーマ410及び仮想スイッチ412は物理的に分離されることが可能であり、フレーマ410は、ローカルルータ/スイッチに組み込まれる。
【0071】
図5は、本発明による伝送回路500の例を示すブロック図を示す。伝送回路500は、伝送回路400に類似しており、その結果、同じ参照番号を利用して、回路400と回路500両方に共通の構造を指名する。図5に示された例に示されているように、STB、PC、及びビデオフレームを受信及び出力するローカルルータ/スイッチの代わりに、ローカルフレーマルータ/スイッチ510が伝送回路500と共に利用される。
【0072】
図6は、本発明による仮想出口デバイスの受信回路600の例を示すブロック図を示す。(仮想入口デバイスは、さらに、受信回路を含み、その一方で、仮想出口デバイスは、さらに、伝送回路を含む。)図6に示されているように、受信回路600は、ネットワーク物理ポート610、及びネットワーク物理ポート610に連結された受信仮想スイッチ612を含む。受信回路600は、さらに、スイッチ612に連結されたある数の受信仮想ポートvPORTb1~vPORTbnを含む。各受信仮想ポートvPORTbは、順番に、受信キュー及び受信フレームフォーマット回路を含む。受信回路600は、受信仮想ポートvPORTbのそれぞれに連結されたデフレーミング回路614、及びデフレーミング回路614に連結されたローカル物理ポート616をさらに含む。
【0073】
図7は、本発明による受信回路600の動作方法700の例を示すフローチャートを示す。図7に示されているように、方法700は、710で始まり、ネットワーク物理ポート610が、第1の/次のホップアドレス及び受信仮想ポート識別子を含むヘッダをそれぞれ有する、例えばSEフレームのような、2重カプセル化(DE:double encapsulated)フレームを受信する。
【0074】
次に、方法700は、712に移動し、ここで、ネットワーク物理ポート610が、DEフレームを検査して第1の/次のホップアドレスを決定し、第1の/次のホップアドレスを記憶済アドレスと比較する。この後、方法700は、714に移動し、ここで、ネットワーク物理ポート610が、マッチする第1の/次のホップアドレスを有するDEフレームを転送し、記憶済アドレスにマッチしない第1の/次のホップアドレスを有するDEフレームを捨てる。
【0075】
この後、方法700は、716に移動し、ここで、受信仮想スイッチ612が、DEフレームのヘッダの受信仮想ポート識別子に基づいて、転送されたDEフレームをスイッチ可能なようにパスする。方法700は、次いで、718に移動し、ここで、各受信仮想ポートvPORTbがDEフレームを解凍して1Eフレームを抽出するように、受信仮想ポートvPORTb1~vPORTbnが、DEフレームを解凍して、DEフレームから、例えばFEフレームのような単一のカプセル化(1E:single capsulated)フレームを抽出する。
【0076】
これに続いて、方法700は、720に移動し、ここで、デフレーミング回路614が、1Eフレームを解凍して、1Eフレームから元のSTB、PC、及びビデオ入力フレームを抽出する。元のSTB、PC、及びビデオ入力フレームは、ある数のフレームタイプを有する。さらに、各入力フレームは、宛先ルータ/スイッチを識別するヘッダを有する。方法700は、次いで、722に移動し、ここで、デフレーミング回路614が、STB、PC、及びビデオフレームをローカル物理ポート616に転送し、ローカル物理ポート616は、リモートルータ/スイッチ122などのリモートルータ/スイッチに、元のSTB、PC、及びビデオフレームを出力する。
【0077】
本例では、仮想スイッチ612が、ネットワーク物理ポート610からDE STBフレームを受信し、DE STBフレームのヘッダの宛先仮想ポート番号Dst_vIDから、宛先仮想ポートが仮想ポートvPORTb1であると決定する。追加として、スイッチ612は、静的な転送テーブルから、仮想ポートvPORTb1へのルートを決定し、次いで、仮想ポートvPORTb1に向かう経路を定められた第1の仮想ポート線路に、DE STBフレームを出力する。
【0078】
同様に、仮想スイッチ612は、ネットワーク物理ポート610からDE PCフレームを受信し、ME PCフレームのヘッダの宛先仮想ポート番号Dst_vIDから、宛先仮想ポートが仮想ポートvPORTb2であると決定する。さらに、スイッチ612は、静的な転送テーブルから、仮想ポートvPORTb2へのルートを決定し、次いで、仮想ポートvPORTb2に向かう経路を定められた第2の仮想ポート線路に、DE PCフレームを出力する。
【0079】
追加として、仮想スイッチ612は、ネットワーク物理ポート610からDEビデオフレームを受信し、MEビデオフレームのヘッダの宛先仮想ポート番号Dst_vIDから、宛先仮想ポートが仮想ポートvPORTb3であると決定する。スイッチ612は、静的な転送テーブルから、仮想ポートvPORTb3へのルートを決定し、次いで、仮想ポートvPORTb3に向かう経路を定められた第3の仮想ポート線路に、DEビデオフレームを出力する。
【0080】
仮想ポートvPORTb1~vPORTbnは、DEフレームを受信し、DEフレームを解凍して、DEフレームから、FE STBフレーム、FE PCフレーム、及びFEビデオフレームなど、1Eフレームを抽出する。図6の例では、第1の仮想ポートvPORTb1の受信キューは、DE STBフレームを受信し、その一方で、仮想ポートvPORTb1のフレームフォーマット回路は、DE STBフレームを解凍して、仮想出口デバイスの識別情報を含むヘッダを有する1E STBフレームを抽出する。
【0081】
同様に、第2の仮想ポートvPORTb2の受信キューは、DE PCフレームを受信し、その一方で、仮想ポートvPORTb2のフレームフォーマット回路は、DE PCフレームを解凍して、仮想出口デバイスの識別情報を含むヘッダを有する1E PCフレームを抽出する。追加として、第3の仮想ポートvPORTb3の受信キューは、DEビデオフレームを受信し、その一方で、仮想ポートvPORTb3のフレームフォーマット回路は、DEビデオフレームを解凍して、仮想出口デバイスの識別情報を含むヘッダを有する1Eビデオフレームを抽出する。
【0082】
デフレーミング回路614は、例えばFEフレームのような複数の1Eフレームを受信し、1Eフレームから、元のSTB、PC、及びビデオ入力フレームを抽出する。入力フレームは、例えば、STB、PC、ビデオのようなある数のフレームタイプを有する。各入力フレームは、リモートルータ/スイッチの識別情報を含むヘッダを有する。各受信されたFEフレームに対して、デフレーミング回路614は、1Eフレームを解凍して入力フレームを抽出し、入力フレームのヘッダからリモートルータ/スイッチの識別情報を決定し、入力フレームをローカル物理ポート616に出力し、ローカル物理ポート616は、リモートルータ/スイッチ122などのリモートルータ/スイッチに入力フレームを出力する。
【0083】
図6に示されているように、デフレーミング回路614は、デフレーマ620、及びデフレーマ620に連結された仮想スイッチ622を含む。動作中、デフレーマ620は、複数の受信仮想ポートvPORTb1~vPORTbnから1Eフレームを受信し、1Eフレームを解凍して、例えば、STBフレーム、PCフレーム、及びビデオフレームのような、元の入力フレームを抽出し、STBフレーム、PCフレーム、及びビデオフレームを仮想スイッチ622に転送する。
【0084】
図6の例では、デフレーマ620は、受信仮想ポートvPORTb1から1E STBフレームを受信し、1Eフレームを解凍してSTBフレームを抽出し、STBフレームを仮想スイッチ622に転送する。同様に、デフレーマ620は、受信仮想ポートvPORTb2から1E PCフレームを受信し、1Eフレームを解凍してPCフレームを抽出し、PCフレームを仮想スイッチ622に転送する。追加として、デフレーマ620は、受信仮想ポートvPORTb3から1Eビデオフレームを受信し、1Eフレームを解凍してビデオフレームを抽出し、ビデオフレームを仮想スイッチ622に転送する。デフレーマ620は、フレーマ222と同じ又は異なるプロトコルを利用することができる。
【0085】
仮想スイッチ622は、デフレーマ620の出力を通じて、出力フレームを受信すること、及び出力フレームをローカル物理ポート616に転送することを順次循環させる。本例では、仮想スイッチ622は、デフレーマ620からSTBフレームを受信し、リモートルータ/スイッチのMACアドレスを検出し、STBフレームをローカル物理ポート616に出力する。同様に、仮想スイッチ622は、デフレーマ620からPCフレームを受信し、リモートルータ/スイッチのMACアドレスを検出し、PCフレームをローカル物理ポート616に出力する。追加として、仮想スイッチ622は、デフレーマ620からビデオフレームを受信し、リモートルータ/スイッチのMACアドレスを検出し、ビデオフレームをローカル物理ポート616に出力する。ローカル物理ポート616は、順番に、フレームをリモートルータ/スイッチに出力する。
【0086】
図6の例は、パラレル対シリアル仮想スイッチ622が後に続くパラレル対パラレルデフレーマ620を有するデフレーミング回路614を示す。デフレーミング回路614は、代替として、他の回路配置で実現されることが可能である。例えば、デフレーミング回路614は、シリアル対シリアルフレーマが後に続く仮想ポートvPORTb1~vPORTbnに連結されたシリアル対パラレル仮想スイッチと共に実装されることが可能である。
【0087】
図8は、本発明の代替実施形態による受信回路800の例を示すブロック図を示す。受信回路800は、受信回路600に類似しており、その結果、同じ参照番号を利用して、両方のデバイスに共通の構造を指名する。
【0088】
図8に示されているように、受信回路800は、受信回路800のフレーミング回路614が、シリアル対シリアルデフレーマ812が後に続く、仮想ポートvPORTb1~vPORTbnに連結されたパラレル対シリアル仮想スイッチ810を含むという点で受信回路600とは異なる。フレーミング回路212とデフレーミング回路614の実装は、入れ替えられることが可能である。例えば、仮想入口デバイスVEDは、仮想スイッチ220及びフレーマ222と共に実装されたフレーミング回路212を利用することができ、その一方で、仮想出口デバイスVEDは、デフレーミング回路614、仮想スイッチ810、及びデフレーマ812を利用することができる。
【0089】
さらなる代替実施形態では、仮想スイッチ810及びデフレーマ812は、物理的に分離されていることが可能であり、デフレーマ812は、ローカルルータ/スイッチに組み込まれる。
【0090】
図9は、本発明による受信回路900の例を示すブロック図を示す。受信回路900は、受信回路800に類似しており、その結果、同じ参照番号を利用して、回路800と回路900両方に共通の構造を指名する。図9に示された例に示されているように、ローカルデフレーマルータ/スイッチ910が、ローカルルータスイッチの代わりに、受信回路900において利用される。
【0091】
仮想ネットワーク全体にデータのフレームを転送することに加えて、仮想ネットワーク全体のホップが、テストSEフレームを生成することによってテストされることが可能である。伝送仮想ポートvPORTaは、テスト中に、リンクの端部になる仮想出口デバイスへの、仮想ネットワークにおける次のホップを決定する。これに続いて、伝送仮想ポートvPORTaは、テストフレームとしてのフレームと、テストされることになるリンクの端部になる仮想出口デバイスとを識別するヘッダを有する、テストSEフレームを生成する。
【0092】
仮想スイッチ214は、上記で説明されたようにテストSEフレームをネットワーク物理ポートにパスし、ネットワーク物理ポートは、テストSEフレームを伝送する。テストSEフレームは、上記で説明されたように仮想出口デバイスに到着し、ここで、受信仮想ポートvPORTbが、上記で説明されたようにテストSEフレームを解凍してテスト情報を抽出する。受信仮想ポートvPORTbは、次いで、テストSEフレームから、フレームレイテンシ、フレーム損失率、及びライブ/シャットダウンステータスを決定することができ、これらは、サービス品質(QoS)基準を決定するために利用されることが可能である。
【0093】
図10Aは、本発明による仮想転送デバイス1000の例を示すブロック図を示す。図10Aに示されているように、仮想転送デバイス1000は、ある数の受信物理ポートRP1~RPm、及び受信物理ポートRP1~RPmに連結されたある数の転送仮想ポートvPORTc1~vPORTcnを含む。各転送仮想ポートvPORTcは、順番に、フレームを圧縮及び解凍するための転送フレームフォーマット回路と、圧縮及び解凍中にフレームデータを保持する転送キューとを含む。仮想転送デバイス1000は、転送仮想ポートvPORTcのそれぞれに連結された仮想スイッチ1010、及び仮想スイッチ1010に連結されたある数の伝送物理ポートTP1~TPzをさらに含む。
【0094】
図10Bは、本発明による仮想転送デバイス1000の動作方法1050の例を示すフローチャートを示す。図10Bに示されているように、方法1050は、1052において、第2のカプセル化(SE)フレームを受信することによって始まる。例えば、転送仮想ポートvPORTc1は、受信物理ポートRP1を介して仮想入口デバイスVED1からSEフレームを受信することができる。
【0095】
次に、方法1050は、1054に移動して、SEフレームを解凍して第1のカプセル化フレーム(FE)を抽出し、次いで、1056に移動して、FEフレームから識別子を抽出する。例えば、転送仮想ポートvPORTc1は、解凍されたSEフレームからFEフレームを抽出し、次いで、仮想出口デバイスのMACアドレスとして識別子を抽出することができる。
【0096】
これに続いて、方法1050は、1058に移動して、識別子から次のホップデバイス及び代替ホップデバイスを決定する。例えば、転送仮想ポートvPORTc1は、仮想出口デバイスVXD1のMACアドレス(識別子)をルックアップテーブルに入力することができる。ルックアップテーブルに示されているように、仮想出口デバイスVXD1がテーブルに入力されると、次のホップデバイスのMACアドレス及び代替ホップデバイスのMACアドレスが決定されることが可能である。(ルックアップテーブルは、代替として、ある数の追加の代替ホップデバイスのMACアドレスを含むことができる。)
【表1】
【0097】
この後、方法1050は、1060に移動して、次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定する。フレームが伝送物理ポートに転送されるレートが、伝送物理ポートがフレームを次のホップデバイスに物理的に出力できるレートより大きいレートのとき、伝送物理ポートは、伝送物理ポートが追加のフレームを受信するのを防ぐ保留信号をアサートする。例えば、転送仮想ポートvPORTc1は、次のホップ(仮想出口)デバイスVXD1に連結された伝送物理ポートTP1が転送用フレームを受け入れることができるかどうかを判定することができる。
【0098】
伝送物理ポートが転送用フレームを受け入れることができるとき、方法1050は、1062に移動し、ここで、仮想転送vPORTcが、FEフレームを圧縮又はカプセル化して、第1のホップMACアドレスを置き換える次のホップMACアドレスを有する2重カプセル化(DE)フレームを形成する。DEフレームは、順番に、次のホップを識別するフィールド、及びFEフレームを含むフィールドを有する。例えば、伝送物理ポートTP1が伝送用フレームを受け入れることができると転送仮想ポートvPORTc1が決定すると、転送仮想ポートvPORTc1は、FEフレームを圧縮又はカプセル化して、仮想出口デバイスVXD1を識別するフィールドを有するDEフレームを形成する。
【0099】
これに続いて、方法1050は、1064に移動し、ここで、仮想スイッチ272が、次のホップデバイスに連結された伝送物理ポートに、次のホップMACアドレスを有するDEフレームを転送し、次いで、1066に移動し、ここで、伝送物理ポートが、DEフレームを出力する。例えば、仮想スイッチ272は、転送仮想ポートvPORTcからのDEフレームを伝送物理ポートTP1に転送することができ、伝送物理ポートTP1は、次いで、DEフレームを仮想出口デバイスVXD1に伝送する。
【0100】
その一方で、伝送物理ポートが転送用フレームを受け入れることができないとき、方法1050は、1070に移動して、代替ホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定する。例えば、転送仮想ポートvPORTc1は、仮想転送デバイスVFD2に連結された伝送物理ポートTP2が転送用フレームを受け入れることができるかどうかを判定することができる。
【0101】
伝送物理ポートが転送用フレームを受け入れることができるとき、方法1050は、1072に移動し、ここで、転送仮想ポートvPORTcが、FEフレームを圧縮又はカプセル化して、第1のホップMACアドレスを置き換える代替ホップMACアドレスを有するDEフレームを形成する。DEフレームは、順番に、代替ホップを識別するフィールド、及びFEフレームを含むフィールドを有する。例えば、伝送物理ポートTP1が伝送用フレームを受け入れることができると転送仮想ポートvPORTc1が決定すると、転送仮想ポートvPORTc1は、FEフレームを圧縮又はカプセル化して、仮想転送デバイスVFD1を識別するフィールドを有するDEフレームを形成する。
【0102】
DEフレームは、順番に、代替ホップを識別するフィールド、及びFEフレームを含むフィールドを有する。例えば、伝送物理ポートTP2が伝送用フレームを受け入れることができると転送仮想ポートvPORTc1が決定すると、転送仮想ポートvPORTc1は、FEフレームを圧縮又はカプセル化して、次のホップとして仮想転送デバイスVFD2を識別するフィールドを有するDEフレームを形成する。
【0103】
これに続いて、方法1050は、1074に移動し、ここで、仮想スイッチ272が、代替ホップデバイスに連結された伝送物理ポートに、代替MACアドレスを有するDEフレームを転送し、次いで、1076に移動し、ここで、伝送物理ポートが、代替ホップデバイスにDEフレームを出力する。例えば、仮想スイッチ272は、転送仮想ポートvPORTcからのDEフレームを伝送物理ポートTP2に転送することができ、伝送物理ポートTP2は、次いで、DEフレームを仮想転送デバイスVFD2に伝送する。伝送物理ポートが転送用フレームを受け入れることができないとき、方法1050は、1078に移動し、ここで、転送仮想ポートvPORTcが、フレームを捨てる。(ルックアップテーブルが追加の代替デバイスを定めているとき、方法360は、フレームを捨てる前に他のデバイスを評価する)。
【0104】
仮想転送デバイスVFD2は、仮想転送デバイスVFD1と同じように機能する。仮想転送デバイスVFD2は、SEフレームを受信し、フレームを解凍し、次のホップデバイス及び代替ホップデバイスを識別し、次のホップデバイスに関連付けられた伝送物理ポートが伝送用フレームを受け入れることができるかどうかを判定する。
【0105】
次のホップに関連付けられた伝送物理ポートが伝送用フレームを受け入れることができるとき、仮想転送デバイスVFD2は、FEフレームを圧縮してDEフレームを形成し、仮想スイッチは、仮想転送デバイスVFD2の伝送物理ポートにDEフレームを転送する。次のホップに関連付けられた物理ポートが伝送用フレームを受け入れることができないとき、仮想転送デバイスVFD2は、代替MACアドレスによって識別されたデバイスに関連付けられた伝送物理ポートが伝送用フレームを受け入れることができるかどうかを判定する。
【0106】
代替MACアドレスによって識別されたデバイスに関連付けられた伝送物理ポートが伝送用フレームを受け入れることができるとき、仮想転送デバイスVFD2は、FEフレームを圧縮してDEフレームを形成し、仮想スイッチは、DEフレームを伝送物理ポートに転送する。例えば、仮想転送デバイスVFDに連結された伝送物理ポートTP2が伝送用フレームを受け入れることができるとき、仮想転送デバイスVFD2は、FEフレームを圧縮してDEフレームを形成し、仮想スイッチは、DEフレームを伝送物理ポートTP2に転送する。
【0107】
代替MACアドレスによって識別されたデバイスに関連付けられた伝送物理ポートが伝送用フレームを受け入れることができないとき、方法は、伝送用フレームを受け入れる伝送物理ポートが見つかるか、フレームが落されるまで、ルックアップテーブルに定められたものに応じて、フレームを捨てるか、第2、第3などの代替MACアドレスをチェックし続けることができる。
【0108】
図11は、本発明による仮想転送デバイス1100の例を示すブロック図を示す。仮想転送デバイス1100は、仮想転送デバイス1000に類似しており、その結果、同じ参照番号を利用して、両方のデバイスに共通の構造を指名する。
【0109】
図11に示されているように、仮想転送デバイス1100は、転送仮想ポートvPORTcnの転送フレームフォーマット回路が、必要なときに、第三者ネットワークにわたる伝送のための伝送物理ポートTPzを介して第三者ネットワーク対ネットワーク(NNI)デバイスに、解凍されたFEフレームを転送することができるという点で仮想転送デバイス1000とは異なる。転送仮想ポートvPORTcnは、PBB-TEフォーマットなど、従来のフォーマットを有する解凍されたFEフレームを提供する。
【0110】
仮想ネットワーク全体にデータのフレームを転送することに加えて、仮想ネットワーク全体のホップが、テストSEフレームを生成することによってテストされることが可能である。伝送仮想ポートvPORTaは、テスト中に、リンクの端部になる仮想出口デバイスへの、仮想ネットワークにおける第1のホップを決定する。これに続いて、伝送仮想ポートvPORTaは、テストフレームとしてのフレームと、テストされることになるリンクの端部になる仮想出口デバイスとを識別するヘッダを有する、テストSEフレームを生成する。
【0111】
テストSEフレームは、上記で説明されたようにネットワーク物理ポートにパスされ、ネットワーク物理ポートは、テストSEフレームを伝送する。テストSEフレームは、上記で説明されたように仮想出口デバイスに到着し、ここで、受信仮想ポートvPORTbが、上記で説明されたようにテストSEフレームを解凍してテスト情報を抽出する。受信仮想ポートvPORTbは、次いで、テストSEフレームから、フレームレイテンシ、フレーム損失率、及びライブ/シャットダウンステータスを決定することができ、これらは、サービス品質(QoS)基準を決定するために利用されることが可能である。
【0112】
図12は、本発明による仮想ネットワークを形成する方法1200の例を示すフローチャートである。図12の例に示されているように、方法1200は、1210において、2つ以上の物理ファイバをそれぞれ有する1つ又は複数の光ファイバケーブルにわたって或るフレームレートでデータのフレームをパスすることによって始まる。
【0113】
データのフレームのフレームレートが、光ファイバケーブルにおける第1の物理ファイバの最大フレームレートより大きいとき、パスすることは、第1の物理ファイバの最大データレート以下の第1のデータレートで第1の物理ファイバを介してデータの第1の数のフレームをパスすることを含む。パスすることは、さらに、第2の物理ファイバの最大データレート以下の第2のデータレートで第2の物理ファイバを介してデータの第2の数のフレームをパスすることを含む。
【0114】
データのフレームのフレームレートが、光ファイバケーブルにおける第1の物理ファイバのフレームレート以下であるとき、パスすることは、フレームのペアが複数のソースからのデータを含むように、第1の物理ファイバを通じてデータのフレームのペアを連続的にパスすることを含む。
【0115】
方法1200は、次に、1212に移動して、光ファイバネットワークにわたってパスされることになるデータのフレームを生成する。第1の実施形態では、データのフレームは、最大フレームレートより大きいフレームレートでソースデバイスからデータのフレームを受信して、データの受信後フレームを形成することによって生成され、その後、最大フレームレートより大きいデータの受信後フレーム及びフレームレートを、第1の物理ファイバの最大データレート以下の第1のデータレートを有するデータの第1の数の受信後フレームと、第2の物理ファイバの最大データレート以下の第2のデータレートを有するデータの第2の数の受信後フレームとに分ける。
【0116】
例えば、2つの物理ファイバが、100Gbpsの最大データレートをそれぞれ有し、顧客データが200Gbpsで流れる場合、光ファイバケーブルは、第1の物理ファイバと第2の物理ファイバ両方で100Gbpsをパスすることによって、2つ以上の物理ファイバの100Gbpsの最高の最大データレートより大きい200Gbpsの顧客データ及びデータレートを分けるように形成されることが可能である。
【0117】
これに続いて、データのフレームは、データの受信後フレームからリモートデバイスを決定することと、リモートデバイスから仮想出口デバイスを決定することと、データの受信後フレームの第1のカプセル化を行って、仮想出口デバイスを識別するヘッダを有する第1のカプセル化フレームを形成することとによって生成される。
【0118】
次に、データのフレームは、第1のカプセル化フレームから仮想出口デバイスを決定することと、仮想出口デバイスから第1のホップデバイスを決定することと、第1のカプセル化フレームの第2のカプセル化を行って、第1のホップデバイスを識別するヘッダを有する第2のカプセル化フレームを形成することとによって生成される。
【0119】
第2の実施形態では、データのフレームは、第1のフレームレートで第1のソースからのデータの第1のフレームを、及び第2のフレームレートで第2のソースからのデータの第2のフレームを受信することによって生成される。これに続いて、データのフレームは、第1のソースからの第1のフレームからのデータを、第2のソースからの第2のフレームからのデータと結合して、データの結合されたフレームを形成することによって生成される。
【0120】
この後、データのフレームは、第1のソースからの第1のフレームからリモートデバイスを決定することと、リモートデバイスから仮想出口デバイスを決定することと、データの結合されたフレームの第1のカプセル化を行って、仮想出口デバイスを識別するヘッダを有する第1のカプセル化フレームを形成することとによって生成される。
【0121】
次に、データのフレームは、第1のカプセル化フレームから仮想出口デバイスを決定することと、仮想出口デバイスから第1のホップデバイスを決定することと、第1のカプセル化フレームの第2のカプセル化を行って、第1のホップデバイスを識別するヘッダを有する第2のカプセル化フレームを形成することとによって生成される。
【0122】
第3の実施形態では、データのフレームは、第1のフレームレートで第1のソースからのデータの第1のフレームを、及び第2のフレームレートで第2のソースからのデータの第2のフレームを受信することと、第1のソースからのデータの第1のフレームからリモートデバイスを決定することと、リモートデバイスから仮想出口デバイスを決定することとによって生成される。
【0123】
この後、データのフレームは、第1のソースからのデータの第1のフレームをカプセル化して、仮想出口デバイスを識別するヘッダを有する第1のカプセル化フレームを形成することと、第2のソースからのデータの第2のフレームをカプセル化して、仮想出口デバイスを識別するヘッダを有する第2のカプセル化フレームを形成することとによって生成される。
【0124】
次に、データのフレームは、第1のカプセル化フレームから仮想出口デバイスを決定することと、仮想出口デバイスから第1のホップデバイスを決定することと、第1のカプセル化フレームをカプセル化して、第1のホップデバイスを識別するヘッダを有する第3のカプセル化フレームを形成することと、第2のカプセル化フレームをカプセル化して、第1のホップデバイスを識別するヘッダを有する第4のカプセル化フレームを形成することによって生成される。
【0125】
これに続いて、データのフレームは、第3のカプセル化フレームと第4のカプセル化フレームとの結合されたフレームレートが第1のファイバの最大フレームレート以下であるように、ある数の第3のカプセル化フレーム及びある数の第4のカプセル化フレームを出力することによって生成される。
【0126】
図12を再び参照すると、方法1200は、次に、1214に移動して、光ファイバケーブルにわたってパスされたデータのフレームを受信する。第1の実施形態では、データのフレームは、第2のカプセル化フレームを解凍して、第1のカプセル化フレーム及び仮想出口デバイスの識別情報を抽出することと、第1のホップデバイスが仮想出口デバイスであるかどうかを判定することとによって受け取られる。この後、フレームは、第1のホップデバイスが仮想出口デバイスであるとき、第1のカプセル化フレームを解凍して、データの受信後フレームを抽出することと、第1のホップデバイスが仮想出口デバイスでないとき、仮想出口デバイスの識別情報から次のホップデバイスを決定することとによって受け取られる。
【0127】
次のホップデバイスが仮想転送デバイスであるとき、第1のカプセル化フレームは、仮想転送ホップデバイスを識別するヘッダを有する第3のカプセル化フレームを形成するためにカプセル化される。次のホップデバイスがネットワーク対ネットワークインターフェースデバイスであるとき、第1のカプセル化フレームは、ネットワーク対ネットワークインターフェースデバイスに転送される。
【0128】
本開示の様々な実施形態への参照が今詳しく行われてきており、その例が、添付の図面に示されている。様々な実施形態と共に説明されたが、これらの様々な実施形態は、本開示の限定を意図しないことが理解されよう。反対に、本開示は、代替形態、変更形態、及び同等物を含むことを意図するものであり、これらは、特許請求の範囲に従って解釈されるものとして本開示の範囲内に含まれ得る。
【0129】
さらに、本開示の様々な実施形態の前述の詳細な説明では、本開示の完全な理解をもたらすために、非常に多くの固有の詳細が示される。それでも、本開示は、これらの固有の詳細がなくても又はその同等物を用いて、実践され得ることが当業者によって認識されよう。他の例では、よく知られた方法、手順、構成要素、及び回路は、本開示の様々な実施形態の態様を必要以上にあいまいにしないように詳しく説明されてこなかった。
【0130】
方法は、明瞭さのために番号付き動作のシーケンスとして本明細書で描写されることがあるが、番号付けは、必ずしも動作の順序を指示しないことに留意されたい。動作のうちのいくつかは、スキップされても、同時に実施されても、シーケンスの厳格な順序を維持する必要なく実施されてもよいことを理解されたい。
【0131】
本開示による様々な実施形態を示す図面は半図解式であり、スケーリングするためのものではなく、特に、寸法のうちのいくつかは、提示の明瞭さのためのものであり、描いた図に誇張して示されている。同様に、図面におけるビューは説明の容易さのために、一般に、同様の向きを示すが、図におけるこの描写は大部分、任意である。一般に、本開示による様々な実施形態は、任意の向きで動作されることが可能である。
【0132】
詳細な説明のある数の部分は、手順、論理ブロック、処理、及び、コンピュータメモリ内のデータビットに対する動作の他の記号による表現の観点で提示される。これらの説明及び表現は、データ処理技術の当業者によって、その作業の実体を他の当業者に効果的に伝達するために使用される。
【0133】
本開示では、手順、論理ブロック、プロセス、又は同様のものは、所望の結果につながる動作又は命令の首尾一貫したシーケンスであると考えられる。動作は、物理量の物理的操作を利用するものである。通常、必ずというわけではないが、これらの量は、コンピューティングシステムにおいて記憶される、転送される、結合される、比較される、及びそうでなければ、操作される余地がある、電気又は磁気信号の形をしている。これらの信号を、トランザクション、ビット、値、要素、シンボル、キャラクタ、サンプル、ピクセル、又は同様のものとして言及することが、主に共通の使用のために時々便利であることがわかってきた。
【0134】
それでも、これらの及び同様の用語の全てが、適切な物理量に関連付けられることになること、及びこれらの量に適用される便利なラベルにすぎないことを心に留めるべきである。以下の議論から明らかであると別途具体的に述べられない限り、本開示の全体を通して、「生成すること」、「決定すること」、「割り当てること」、「集約すること」、「利用すること」、「仮想化すること」、「処理すること」、「アクセスすること」、「実行すること」、「記憶すること」、又は同様のものなどの用語を利用する議論は、コンピュータシステム、又は同様の電子コンピューティングデバイス若しくはプロセッサのアクション及びプロセスに言及することが理解されている。
【0135】
コンピューティングシステム、又は同様の電子コンピューティングデバイス若しくはプロセッサは、コンピュータシステムメモリ、レジスタ、他のこのような情報ストレージ、及び/又は他のコンピュータ可読媒体内の物理(電子)量として表現されたデータを操り、コンピュータシステムメモリ若しくはレジスタ、又は他のこのような情報ストレージ、伝送若しくは表示デバイス内の物理量として同様に表現された他のデータに変換する。
【0136】
本出願の実施形態における技術的解決策は、本出願の実施形態の図面を参照しながら、前のセクションで明らか且つ完全に説明されてきた。本発明の説明及び請求項における並びに上記の図面における、「第1」、「第2」、及び同様のものという用語は、類似のオブジェクトを区別するために使用され、固有のシーケンス又は順序を説明するために必ずしも使用されないことに留意されたい。これらの番号は、本明細書に記載の本発明の実施形態が、本明細書で図示又は説明された順序以外の順序で実施されることが可能なように、適切な場合、入れ替えられてもよいことを理解されたい。
【0137】
本実施形態の方法に記載の機能は、ソフトウェア機能ユニットの形式で実施され、スタンドアロン製品として販売又は使用される場合、コンピューティングデバイス可読記憶媒体に記憶されることが可能である。このような理解に基づいて、従来技術に寄与する本出願の実施形態の一部分又は技術的解決策の一部分は、コンピューティングデバイス(パーソナルコンピュータ、サーバ、モバイルコンピューティングデバイス、又はネットワークデバイスなどでよい)に、本出願の様々な実施形態に記載の方法のステップの全て又は一部を実施させるための複数の命令を含む、記憶媒体に記憶されたソフトウェア製品の形式で具体化され得る。前述の記憶媒体は、プログラムコードを記憶することができるUSBドライブ、ポータブルハードディスク、リードオンリメモリ(ROM)、ランダムアクセスメモリ(RAM)、磁気ディスク、光ディスク、及び同様のものを含む。
【0138】
本出願の明細書における様々な実施形態は、段階的に説明され、各実施形態は、他の実施形態との差に重点を置き、様々な実施形態の間の同じ又は類似の部分は、別のケースに参照され得る。記載の実施形態は、本出願の実施形態の全てではなく、実施形態の一部にすぎない。発明のスキルから逸脱することなく本出願の実施形態に基づいて当業者によって取得される全ての他の実施形態は、本出願の範囲内である。
【0139】
開示の実施形態の上述の説明は、当業者が、本出願を作成又は使用することを可能にする。これらの実施形態への様々な修正は、当業者には明らかであり、本明細書で定義される一般的な原理は、本出願の精神又は範囲から逸脱することなく他の実施形態において実施され得る。したがって、本出願は、本明細書で示される実施形態に限定されず、最も広い範囲が、本明細書で開示された原理及び斬新な特徴に一致する。
[発明の項目]
[項目1]
2つ以上の物理ファイバをそれぞれ有する1つ又は複数の光ファイバケーブルにわたって或るフレームレートでデータのフレームをパスするステップ
を含み、
データの前記フレームの前記フレームレートが、光ファイバケーブルにおける第1の物理ファイバの最大フレームレートより大きいとき、パスする前記ステップが、
前記第1の物理ファイバの最大データレート以下の第1のデータレートで前記第1の物理ファイバを介してデータの第1の数の前記フレームをパスすること、及び
第2の物理ファイバの最大データレート以下の第2のデータレートで前記第2の物理ファイバを介してデータの第2の数の前記フレームをパスすること
を含み、
データの前記フレームの前記フレームレートが、前記光ファイバケーブルにおける前記第1の物理ファイバの前記フレームレート以下であるとき、パスする前記ステップが、
フレームのペアが複数のソースからのデータを含むように、前記第1の物理ファイバを通じてデータのフレームの前記ペアを順番にパスすること
を含む、仮想ネットワークを形成する方法。
[項目2]
前記光ファイバケーブルにわたってパスされることになるデータの前記フレームを生成するステップをさらに含む、項目1に記載の仮想ネットワークを形成する方法。
[項目3]
データの前記フレームを生成するステップが、
前記最大フレームレートより大きい前記フレームレートでソースデバイスからデータのフレームを受信して、データの受信後フレームを形成することと、
前記最大フレームレートより大きいデータの前記受信後フレーム及び前記フレームレートを、第1の物理ファイバの前記最大データレート以下の第1のデータレートを有するデータの第1の数の受信後フレーム、及び第2の物理ファイバの前記最大データレート以下の第2のデータレートを有するデータの第2の数の受信後フレームに分けること、
を含む、項目2に記載の仮想ネットワークを形成する方法。
[項目4]
データの前記フレームを生成するステップが、
データの受信後フレームからリモートデバイスを決定することと、
前記リモートデバイスから仮想出口デバイスを決定することと、
データの前記受信後フレームの第1のカプセル化を行って、前記仮想出口デバイスを識別するヘッダを有する第1のカプセル化フレームを形成することと
をさらに含む、項目3に記載の仮想ネットワークを形成する方法。
[項目5]
データの前記フレームを生成するステップが、
前記第1のカプセル化フレームから前記仮想出口デバイスを決定することと、
前記仮想出口デバイスから第1のホップデバイスを決定することと、
前記第1のカプセル化フレームの第2のカプセル化を行って、前記第1のホップデバイスを識別するヘッダを有する第2のカプセル化フレームを形成することと
をさらに含む、項目4に記載の仮想ネットワークを形成する方法。
[項目6]
前記光ファイバケーブルにわたってパスされたデータの前記フレームを受信するステップと、
前記第2のカプセル化フレームを解凍して、前記第1のカプセル化フレーム及び前記仮想出口デバイスの前記識別情報を抽出するステップと、
前記第1のホップデバイスが前記仮想出口デバイスであるかどうかを判定するステップと、
前記第1のホップデバイスが前記仮想出口デバイスであるとき、前記第1のカプセル化フレームを解凍して、データの前記受信後フレームを抽出するステップと、
前記第1のホップデバイスが前記仮想出口デバイスでないとき、前記仮想出口デバイスの前記識別情報から次のホップデバイスを決定するステップと
をさらに含む、項目5に記載の仮想ネットワークを形成する方法。
[項目7]
前記次のホップデバイスが仮想転送デバイスであるとき、前記第1のカプセル化フレームをカプセル化して、前記仮想転送ホップデバイスを識別するヘッダを有する第3のカプセル化フレームを形成するステップと、
前記次のホップデバイスがネットワーク対ネットワークインターフェースデバイスであるとき、前記ネットワーク対ネットワークインターフェースデバイスに前記第1のカプセル化フレームを転送するステップと
をさらに含む、項目6に記載の仮想ネットワークを形成する方法。
[項目8]
データの前記フレームを生成するステップが、
第1のフレームレートで第1のソースからのデータの第1のフレームを、及び第2のフレームレートで第2のソースからのデータの第2のフレームを受信することと、
前記第1のソースからの第1のフレームからのデータを、前記第2のソースからの第2のフレームからのデータと結合して、データの結合されたフレームを形成することと
を含む、項目2に記載の仮想ネットワークを形成する方法。
[項目9]
データの前記フレームを生成するステップが、
前記第1のソースからの前記第1のフレームからリモートデバイスを決定することと、
前記リモートデバイスから仮想出口デバイスを決定することと、
データの前記結合されたフレームの第1のカプセル化を行って、前記仮想出口デバイスを識別するヘッダを有する第1のカプセル化フレームを形成することと
をさらに含む、項目8に記載の仮想ネットワークを形成する方法。
[項目10]
データの前記フレームを生成するステップが、
前記第1のカプセル化フレームから前記仮想出口デバイスを決定することと、
前記仮想出口デバイスから第1のホップデバイスを決定することと、
前記第1のカプセル化フレームの第2のカプセル化を行って、前記第1のホップデバイスを識別するヘッダを有する第2のカプセル化フレームを形成することと
をさらに含む、項目9に記載の仮想ネットワークを形成する方法。
[項目11]
前記光ファイバケーブルにわたってパスされたデータの前記フレームを受信するステップと、
前記第2のカプセル化フレームを解凍して、前記第1のカプセル化フレーム及び前記仮想出口デバイスの前記識別情報を抽出するステップと、
前記第1のホップデバイスが前記仮想出口デバイスであるかどうかを判定するステップと、
前記第1のホップデバイスが前記仮想出口デバイスであるとき、前記第1のカプセル化フレームを解凍して、データの前記結合されたフレームを抽出するステップと、
前記第1のホップデバイスが前記仮想出口デバイスでないとき、前記仮想出口デバイスの前記識別情報から次のホップデバイスを決定するステップと
をさらに含む、項目10に記載の仮想ネットワークを形成する方法。
[項目12]
前記次のホップデバイスが仮想転送デバイスであるとき、前記第1のカプセル化フレームをカプセル化して、前記仮想転送ホップデバイスを識別するヘッダを有する第3のカプセル化フレームを形成するステップと、
前記次のホップデバイスがネットワーク対ネットワークインターフェースデバイスであるとき、前記ネットワーク対ネットワークインターフェースデバイスに前記第1のカプセル化フレームを転送するステップと
をさらに含む、項目11に記載の仮想ネットワークを形成する方法。
[項目13]
データの前記フレームを生成するステップが、
第1のフレームレートで第1のソースからのデータの第1のフレームを、及び第2のフレームレートで第2のソースからのデータの第2のフレームを受信することと、
前記第1のソースからのデータの第1のフレームからリモートデバイスを決定することと、
前記リモートデバイスから仮想出口デバイスを決定することと、
前記第1のソースからのデータの第1のフレームをカプセル化して、前記仮想出口デバイスを識別するヘッダを有する第1のカプセル化フレームを形成することと、
前記第2のソースからのデータの第2のフレームをカプセル化して、前記仮想出口デバイスを識別するヘッダを有する第2のカプセル化フレームを形成することと
を含む、項目2に記載の仮想ネットワークを形成する方法。
[項目14]
データの前記フレームを生成するステップが、
前記第1のカプセル化フレームから前記仮想出口デバイスを決定することと、
前記仮想出口デバイスから第1のホップデバイスを決定することと、
前記第1のカプセル化フレームをカプセル化して、前記第1のホップデバイスを識別するヘッダを有する第3のカプセル化フレームを形成することと、
前記第2のカプセル化フレームをカプセル化して、前記第1のホップデバイスを識別するヘッダを有する第4のカプセル化フレームを形成することと
をさらに含む、項目13に記載の仮想ネットワークを形成する方法。
[項目15]
データの前記フレームを生成するステップが、第3のカプセル化フレームと第4のカプセル化フレームとの結合されたフレームレートが前記第1のファイバの前記最大フレームレート以下であるように、ある数の前記第3のカプセル化フレーム及びある数の前記第4のカプセル化フレームを出力することをさらに含む、項目14に記載の仮想ネットワークを形成する方法。
[項目16]
前記光ファイバケーブルにわたってパスされたデータの前記フレームを受信するステップと、
前記第3のカプセル化フレームを解凍して、前記第1のカプセル化フレーム及び前記仮想出口デバイスの前記識別情報を抽出するステップと、
前記第1のホップデバイスが前記仮想出口デバイスであるかどうかを判定するステップと、
前記第1のホップデバイスが前記仮想出口デバイスであるとき、前記第1のカプセル化フレームを解凍して、前記第1のソースからのデータの前記第1のフレームを抽出するステップと、
前記第1のホップデバイスが前記仮想出口デバイスでないとき、前記仮想出口デバイスの前記識別情報から次のホップデバイスを決定するステップと、
前記次のホップデバイスが仮想転送デバイスであるとき、前記第1のカプセル化フレームをカプセル化して、前記仮想転送ホップデバイスを識別するヘッダを有する第5のカプセル化フレームを形成するステップと、
前記次のホップデバイスがネットワーク対ネットワークインターフェースデバイスであるとき、前記ネットワーク対ネットワークインターフェースデバイスに前記第1のカプセル化フレームを転送するステップと
をさらに含む、項目15に記載の仮想ネットワークを形成する方法。
[項目17]
テスト中に、仮想出口デバイスを識別するヘッダを有するテストフレームを生成するステップ、及びテスト中に、前記仮想出口デバイスに前記テストフレームを伝送するステップ、並びに
前記テストフレームを受信するステップ、前記テストフレームを解凍するステップ、及び前記解凍されたテストフレームからステータスの1つ又は複数の基準を決定するステップ
をさらに含む、項目2に記載の仮想ネットワークを形成する方法。
[項目18]
第2のカプセル化フレームを受信する受信物理ポートと、
次のホップデバイスに連結されることになる伝送物理ポートと、
代替ホップデバイスに連結されることになる代替物理ポートと、
前記受信物理ポート、前記伝送物理ポート、及び前記代替物理ポートに連結された仮想ポートであって、
前記受信物理ポートから前記第2のカプセル化フレームを受信すること、
現在のデバイスが最後のホップデバイスであるかどうかを判定すること、
前記現在のデバイスが前記最後のホップデバイスでないとき、前記第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出すること、
前記第1のカプセル化フレームから仮想出口デバイスの識別子を抽出すること、
前記識別子から次のホップデバイス及び代替ホップデバイスを決定すること、
前記伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定すること、
前記伝送物理ポートが転送用フレームを受け入れることができるとき、
前記第1のカプセル化フレームをカプセル化して第3のカプセル化フレームを形成することであり、前記第3のカプセル化フレームが、前記次のホップデバイスを識別するヘッダを有する、カプセル化すること、
前記伝送物理ポートに前記第3のカプセル化フレームを転送すること、並びに
前記伝送物理ポートが転送用フレームを受け入れることができないとき、前記代替物理ポートが転送用フレームを受け入れることができるかどうかを判定すること
を行うための、仮想ポートと
を備える、仮想転送デバイス。
[項目19]
第2のカプセル化フレームを受信するステップと、
前記第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出するステップと、
前記第1のカプセル化フレームから仮想出口デバイスの識別子を抽出するステップと、
前記識別子から次のホップデバイス及び代替ホップデバイスを決定するステップと、
前記次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定するステップと、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができるとき、
前記第1のカプセル化フレームをカプセル化して第3のカプセル化フレームを形成するステップであって、前記第3のカプセル化フレームが、前記次のホップデバイスを識別するヘッダを有する、ステップと、
前記次のホップデバイスに連結された前記伝送物理ポートに前記第3のカプセル化フレームを転送するステップと、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができないとき、前記代替ホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定するステップと
を含む、仮想転送デバイスの動作方法。
[項目20]
プログラム命令を埋め込んだ非一時的コンピュータ可読記憶媒体であって、前記プログラム命令が、プロセッサによって実行されると、仮想転送デバイスの動作方法を前記プロセッサに実行させ、前記動作方法が、
第2のカプセル化フレームを受信することと、
前記第2のカプセル化フレームを解凍して第1のカプセル化フレームを抽出することと、
前記第1のカプセル化フレームから仮想出口デバイスの識別子を抽出することと、
前記識別子から次のホップデバイス及び代替ホップデバイスを決定することと、
前記次のホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定することと、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができるとき、
前記第1のカプセル化フレームをカプセル化して第3のカプセル化フレームを形成することであり、前記第3のカプセル化フレームが、前記次のホップデバイスを識別するヘッダを有する、カプセル化することと、
前記次のホップデバイスに連結された前記伝送物理ポートに前記第3のカプセル化フレームを転送することと、
前記次のホップデバイスに連結された前記伝送物理ポートが転送用フレームを受け入れることができないとき、前記代替ホップデバイスに連結された伝送物理ポートが転送用フレームを受け入れることができるかどうかを判定することと
を含む、非一時的コンピュータ可読記憶媒体。
図1A
図1B1
図1B2
図1C
図2A
図2B
図2C
図2D
図3A
図3B
図4
図5
図6
図7
図8
図9
図10A
図10B
図11
図12
【外国語明細書】