(57)【要約】論理ネットワークモデルに基づいてネットワークを制御するための方法およびコンパイラ。コンパイラは、論理モデルをコンパイルできる物理ノードおよび物理リンクからなる物理および/または仮想リソースを決定します。ネットワークには既知の物理ノード、未知の物理ノード、論理ノードがあります。既知の物理的ノードは、ネットワーク内に存在するかまたはまだセットアップ（仮想）ノードである「物理的ノード」である。既知の物理ノードは、物理ネットワークレイアウトに従って物理リンクによって相互接続される。論理ネットワークモデルは、ネットワーク内の少なくとも1つの既知の物理ノードまたは1つの未知の物理ノードを参照する論理ノード名で示される論理ノードを有する。この方法は、論理ノードが既知の物理ノードおよび未知の物理ノードにどのようにマッピングされるかを定義する深さマッピング関係を使用する。「未知の物理ノード」という用語は、論理ノードが深さマッピングによってマッピングされ、物理ノード名が格納されているネットワークの物理ノードによって置換される仮想の物理ノードを定義するために使用される。この方法は、既知の物理ノードおよび/または未知の物理ノードと深度マッピング関係との間の経路に依存して、論理ノード間の論理リンクを作成することを含む。未知の物理ノードについては既知の物理ノードが決定され、未知の物理ノード間の未知の物理パスについては既知の物理パスが探索されて決定される。この方法では、論理リンク、論理パス、物理リンク、物理パス、および深度マッピング関係の間のエッジ関係を使用します。論理ネットワーク内の論理パスは、再帰的計算によって物理ノード間の物理リンクを含む物理パスに変換され、物理リンク間のエッジ関係およびアタッチメントポイント名に基づいて、物理ノードに対してフォワーディング命令が作成される  物理ノード。
2017529796.tif 000002
【特許請求の範囲】
【請求項１】
論理的なネットワークモデルに基づいて、コンパイラによってネットワーク全体を制御する1方法は、複数の物理ノードを含むネットワーク全体が、物理的なノードは、物理的なネットワークレイアウトに従って、物理リンクによって相互接続され、論理的なネットワークモデルを含みます論理ノード、論理ノード名で示されている各論理ノード、次のアクションを含む、コンパイラによって実行される方法であって：
a)  物理ノード名を格納する、各物理ノードユニークな名前を付けています一つの物理ノードの識別子、物理トポロジマッピングが有向グラフ表現に基づいて、と言った物理ノードのポイントオブアタッチメントの名前を格納していると述べ、各物理トポロジマッピングは一方向に一つの物理リンクと、物理トポロジのマッピングを保存します、当該の物理ノードと別の物理ノードに関係する物理ノードを接続する物理リンク間のポイントオブアタッチメントのユニークな識別子である、当該物理ノードのポイントオブアタッチメントの各名称、
b)  1つ以上の未知の物理ノード名を作成して格納する、各未知の物理ノード名は、未知の物理ノードの一意の識別子である。
c)  は、論理的な保存します言った論理ノードのノード名は、一つの論理ノードと保存深度マッピングのユニークな識別子である各論理ノード名は、少なくとも深さのマッピングは既知/未知の物理ノードにマッピングする方法の論理ノード画定し、奥行きマッピングは有向グラフに基づいていると述べました表現、
d)  の作成および1つまたは複数の論理トポロジマッピングを格納し、最初から最初の深さ優先のマッピングの連結として算出された第2の論理ノードへの最初の論理ノードから有向グラフ表現をされている各論理トポロジマッピング、論理最初の既知/未知の物理ノードにノード、第二の既知/未知の物理ノードと第2の論理ノードへの第2の既知/未知の物理ノードから第2の深さマッピングへの最初の既知/未知の物理ノードから既知/未知の物理トポロジパスは、前記既知/未知の物理トポロジパスは、物理トポロジパスまたは未知の、作成され記憶された物理トポロジパスのいずれかであり、物理トポロジパスは、1つまたはの連結あることを特徴と複数の物理トポロジのマッピング、
e)  未知の物理ノードごとにネットワーク全体で適切な物理ノードを決定する各未知の物理トポロジパスについてネットワーク全体で適切な物理トポロジパスを決定すること各未知の物理トポロジパスを適切な物理トポロジパスのセットの1つと照合することを含む検索を実行することによって、各未知の物理ノードを1組の適切な物理ノードの1つと照合するステップと、前記未知の物理トポロジー経路の各々を、前記1組の適切な物理トポロジー経路の1つによって置き換えて記憶するステップと、前記適切な物理トポロジパスの1つは、1つまたは複数の物理トポロジマッピングの連結であり、前記未知の物理ノードを、前記検索の結果に従って前記適切な物理ノードの前記1つのセットで置き換えるステップとを含む方法。
f)  要求されたトポロジパスの作成および保管は、1つまたは複数の論理トポロジマッピングの連結です、
g)  は再帰を通して計算とを再帰的にパスを保存するには、論理ノード名、奥行きマッピング、物理言っによって示されるように論理ノードを備え、要求されたトポロジパスを前記で示されるように、ノードは、物理ノード名、物理トポロジマッピング、物理的なポイントオブアタッチメント物理的ポイントオブアタッチメント名称によって示されるように、再帰的な経路はの有向グラフ表現に基づいている、
h)  からの再帰パスは、再帰パス前記内の物理ノードに対する転送エントリを作成します、
i)  物理ノードに、直接または間接的に言っフォワーディングテーブルエントリの送信は、再帰的な経路を言います。
【請求項２】
以下の動作を含む請求項1に記載の方法：
-  請求項1)の動作d）において、前記第1のデプスマッピングと前記論理トポロジマッピングとの間の関係である第1のエッジ関係を含む前記論理トポロジマッピングのそれぞれについて記憶するステップと、前記物理的トポロジパス内の前記1つ以上の物理トポロジ・マッピングの1つと前記論理トポロジ・マッピングとの間の関係である1つ以上の第2のエッジ関係、既知/未知の物理トポロジパスと前記論理トポロジマッピング、前記第2の深度マッピングと前記論理トポロジマッピングとの間の関係である第3のエッジ関係と、各第4のエッジ関係は、前記1つ以上の物理トポロジマッピングのうちの1つと前記物理トポロジパスとの間の関係である、1つ以上の第4のエッジ関係、
-  請求項1)の動作e）において、前記適切な物理トポロジー経路の各々について1つ以上の第5のエッジ関係を記憶するステップと、各第5のエッジ関係は前記1つ以上の物理トポロジマッピングの1つと前記適切な物理トポロジパスとの間の関係であり、前記検索の結果に応じて、
-  請求項1)の動作e）において、前記論理トポロジマッピングの各々について、エッジ関係を記憶するステップと、前記第1の深さマッピングと前記論理トポロジマッピングとの間の関係である第6のエッジ関係を備え、前記第7のエッジ関係は、前記適切な物理トポロジパスと前記論理トポロジマッピングとの間の関係であり、前記第2の深さマッピングと前記論理トポロジマッピングとの間の関係である第8のエッジ関係と、前記検索の結果に応じて、
-  求されたトポロジパス内の1つの論理トポロジマッピングと前記要求されたトポロジパスとの間の関係である、1つ以上の更なるエッジ関係を記憶する請求項1)に記載の動作f）、
【請求項３】
以下の動作を含む、請求項2に記載の方法：
-  ネストされたエッジ関係を計算し記憶する、請求項1に記載の動作g）、
【請求項４】
前記ネットワーク全体が複数のネットワークを含む、請求項1または請求項2または請求項3に記載の方法。前記複数のネットワークは、1つまたは複数のネットワーク（KA,KB,KC,KD）を含む第1のネットワークセットを含み、前記論理ネットワークモデルは、1つまたは複数のネットワーク（LA,  LB,  LC,  LD）
を含む第2のネットワークセットを備える。前記第1のネットワークセットは、1つ以上のレイヤ（n）にグループ化され、前記第2のネットワークセット
（LA,  LB,  LC,  LD）は、前記第1のネットワークセット（KA,  KB,  KC,  KD）から1つまたは複数のレイヤnおよび1つまたは複数の深さdにグループ化され、同じレイヤnにある前記第1のセットのそれらのネットワーク（KA,  KB,  KC,  KD）の各々は、トポロジマッピングによって互いに関連している。
特定の深さdにおいて最下位レイヤであり、n_min（d）が>  =0である最小レイヤn=n_min（d）、n_min（d）よりも上位レイヤにある前記第1のセットのネットワーク（KC,  KD）レイヤーマッピングによって、0  <y  <=  n-n_min（d）を有する先行する層n-yにおける前記第1の組のネットワークのゼロ以上のネットワークに関係する。前記第1の組のネットワーク（KA,  KB,  KC,  KD）から第1の深さd  =  1にある前記第2の組のネットワーク（LA,LB,LC,LD）の各ネットワークは、前記第1の組のネットワーク（KA,KB,KC,KD）の1つ以上の前記ネットワークに関係し、第1の深さマッピングによって生成される。最小層n  =  n_minよりも
上位層にある前記第2のネットワークセットのこれらのネットワーク（LC,  LD）の各々は、先行する層n-yにおいて前記第2のネットワークセッ
トの0以上のネットワークに関連し、0  <y  <  n-n_min、n_minは、
レイヤマッピングによって特定の深度dで最下位層である。前記第1の組のネットワーク（KA,  KB,  KC,  KD）から第2の深度d>  =  2にある前記第2の組のネッ
トワークの各ネットワークは、前記第2の組のネットワークの1つ以上のネットワークに先行する深度深さマッピングによってxが0より大きくdに等しいかま
たはそれより小さく、および/または深さマッピングによって前記第1のネットワークセット（KA,  KB,  KC,  KD）の1つまたは複数のネット
ワークに関連する。前記第1のネットワークセットの各ネットワークは1つ以上の物理ノードを含み、前記第2のネットワークセットの各ネットワークは論理ノードを含む。
【請求項５】
請求項4に記載の方法において、
前記第1の組のネットワークの少なくとも1つのネットワークが、第1のレベルマッピングによって互いに関連する1つ以上のレベルhで1つ以上のネットワークの第1のネストされた構成として配置され、最も低いレベルの前記第1のネットワークセットのネットワークh  =  h_minは、物理ノードまたは仮想ノードのいずれかであり、最低レベルh  =  h_minより高いレベルのネットワークは、物理ノードまたは仮想ノードのいずれかである可能性があり、ここで、h_min  =  <h  =  <h_max、h_maxは最大レベルである。
【請求項６】
請求項4または5に記載の方法において、
前記第2の組のネットワークの少なくとも1つのネットワークは、第2のレベルマッピングによって互いに関係する1つ以上のレベルhで1つ以上のネットワークの第2のネストされた構成として構成され、最下位レベルの前記第2のネットワークセットのネットワークh  =  h_minが論理ノードであり、最低レベルh  =  h_minより高いレベルのネットワークは、論理ノードである可能性があり、ここで、h_min  =  <h  =  <h_max、h_maxは最大レベルである。
【請求項７】
以下の動作を含む、請求項4に記載の方法：
前記第1のネットワークから（d-x,  n2,  h2）の第3のネットワークへの深さマッピング、前記第3のネットワークから（d-x,  n2,  h2）の第4のネットワークへのトポロジーレベルパスおよび前記第4のネットワークから前記第2のネットワークへの深さマッピングの連結として、（d、n1、h1）の第1のネットワークから（d、n1、h1）の第2のネットワークへのトポロジマッピングを計算して記憶する、xが0より大きくd以下であり、ここで、n1はn2に等しくてもよい、
【請求項８】
以下の動作を含む、請求項4に記載の方法：
前記第1のネットワークから（d,  n-y,  h2）の第3のネットワークへのレイヤーマッピング、前記第3のネットワークから（d,  n-y,  h2）の第4のネットワークへのトポロジーレベルパスおよび前記第4のネットワークから前記第2のネットワークへのレイヤーマッピングの連結として、（d、n、h1）の第1のネットワークから（d、n、h1）の第2のネットワークへのトポロジマッピングを計算して記憶する、yが0より大きくn-n_min(d)以下であり。
【請求項９】
以下の動作を含む、請求項4に記載の方法：
前記第1のネットワークから（d=0,  n2,  h3）の第3のネットワークへの深さマッピング、前記第3のネットワークから（d=0,  n2-y,  h4）の第4のネットワークへの0以上の既知/未知の物理レイヤーマッピングよび前記第4のネットワークから前記第2のネットワークへの深さマッピングの連結として、（d+x,  n1,  h1）の第1のネットワークから（d+x,  n1-y,  h2）の第2のネットワークへのレイヤーマッピングを計算して記憶する、xが0より大き、yが0より大きくかつn1-n1_minより小さくかつn2-n2_min以下であり、n1_minは深度d+xで最下位層であり、n2_minは深度d=0で最下位層である。
【請求項１０】
以下の動作を含む、請求項4に記載の方法：
前記第1のネットワークから（d=0,  n2,  h3）の第3のネットワークへの深さマッピング、前記第3のネットワークから（d=0,  n2+y,  h4）の第4のネットワークへの0以上の既知/未知の物理レイヤーマッピングよび前記第4のネットワークから前記第2のネットワークへの深さマッピングの連結として、（d+x,  n1,  h1）の第1のネットワークから（d+x,  n1+y,  h2）の第2のネットワークへのレイヤーマッピングを計算して記憶する、xが0より大き、yが0より大きくかつn1_max-n1より小さくかつn2_max-n2以下であり、n1_maxは深さd+xで最高の層であり、n2_maxは深さd=0で最高の層である。
【請求項１１】
以下の動作を含む、請求項9および10に記載の方法：
-  請求項1)に記載の動作e）において、
適切な物理レイヤーマッピングのセットの1つを用いて各未知の物理レイヤマッピングを一致させる前記検索に含ませることによって、未知の物理レイヤマッピングごとにネットワーク全体で適切な物理レイヤマッピングを決定し、前記1組の適切な物理レイヤーマッピングの前記1つによる各未知の物理レイヤーマッピングを置き換えて記憶するステップとを含む方法。
【請求項１２】
以下の動作を含む、請求項1または請求項11に記載の方法：
-  前記物理ノードの1つ以上の特性を格納する請求項1)に記載のアクションa）、
-  請求項1)に記載のアクションc）において、前記論理ノードの1つまたは複数の要件を格納すること、
-  請求項1)の動作e）において、前記論理ノードの各々の前記要件を、前記論理ノードにマッピングされた前記未知の物理ノードに、1つ以上の深さマッピングを介してコピーするステップとを含む方法。前記深さマッピングは、前記論理トポロジマッピングの計算に使用される。前記未知の物理的ノードの各々の前記要件を、前記検索における前記物理的ノードの前記プロパティと一致させるステップとを含む。
【請求項１３】
以下の動作を含む請求項1、請求項11または請求項12に記載の方法：
-  前記物理的トポロジマッピングを用いて一方向に前記1つ以上の物理リンクの特性を記憶する請求項1)に記載の動作a）、
-  請求項1)に記載のアクションd）において、前記論理トポロジマッピングの要件を格納すること、
-  請求項1)に記載のアクションe）において、前記論理トポロジマッピングのそれぞれの前記要件を、前記論理トポロジマッピングの計算に使用される前記未知の物理トポロジパスにコピーするステップであって、前記未知の物理トポロジパスの各々の前記要件を、前記検索における前記物理トポロジパスの前記プロパティとマッチングするステップとを含む方法、前記物理的トポロジー経路の前記特性は、前記物理的トポロジー経路が計算される前記物理的トポロジマッピングの前記特性によって決定される、
【請求項１４】
請求項12に記載の方法において、物理ノードのプロパティは前記物理ノードのノードタイプであり、および/または前記物理ノードの1つまたは複数のスイッチング特性と、および/または前記物理ノードの容量、および/または前記物理ノードのレイテンシ、および/または前記物理ノードのアベイラビリティ、および/または前記物理ノードによって実行される可能性がある付加的な動作を含む。
【請求項１５】
請求項13に記載の方法において、一方向における物理リンクの特性は一方向における前記物理リンクの容量であり、および/または一方向における前記物理リンクの待ち時間、および/または一方向における前記物理的リンクの利用可能性を含む。
【請求項１６】
請求項12に記載の方法において、論理ノードの要件は前記論理ノードのノードタイプであり、前記論理ノードの1つ以上のスイッチング特性、および/または、
前記論理ノードの容量、および/または前記論理ノードの容量、および/または前記論理ノードの待ち時間、および/または前記論理ノードの利用可能性を判定し、
および/または前記論理ノードによって実行されるべき付加的な動作を含む。
【請求項１７】
請求項13に記載の方法において、論理トポロジマッピングの要件は前記論理トポロジマッピングの容量であり、および/または前記論理トポロジマッピングのレイテンシ、および/または前記論理トポロジマッピングの利用可能性を含む。
【請求項１８】
以下の動作を含む、請求項1、請求項2、請求項15および請求項16に記載の方法:
物理ノードによるパケットの追加操作の実行
再帰的パスが、前記物理ノードから論理ノードへの第1の深さマッピングを含み、前記論理ノードから前記物理ノードへの第2の深さマッピングが直接続く場合。
【請求項１９】
物理ノードが、深さマッピングを介して複数の論理ノードにマッピングされ、結果としてマルチキャストが行われる、請求項1または請求項2または請求項3に記載の方法。
【請求項２０】
請求項1または請求項2または請求項3に記載の方法であって、
第1の物理ノードと第2の物理ノードとの間の第1のトポロジマッピングが除去される前記第2の物理ノードと第3の物理ノードとの間の第2のトポロジマッピングが作成され、前記第2の物理ノードの移動性がもたらされる。
【請求項２１】
前記請求項のいずれかに記載の方法
深さd>  0における1つ以上のネットワークがユーザの要求を表し、
1つまたは複数のトポロジマッピングおよび/またはレイヤマッピングおよび/またはレベルマッピングがユーザ要件を表す、ゼロまたはそれ以上のポリシーがユーザ要件を表す、
深さd>  0にある1つまたは複数のネットワークの名前空間は、
物理または仮想ノードによる転送の決定に使用されません。
【請求項２２】
最上位層の論理ノードが論理記憶または論理計算を示し、要求されたトポロジパスが論理メッセージストリームを示す、請求項4~21のいずれか1項に記載の方法。
【請求項２３】
前記請求項のいずれかに記載の方法、
ネットワーク、マッピングおよびトポロジーレベルパスがグラフデータベースに格納され、前記ネットワークは前記グラフデータベースに名前付き頂点として格納され、前記マッピングは、前記グラフデータベースに名前付き有向エッジとして格納され、前記トポロジ・レベルパスは、前記グラフ・データベース内に名前付き有向エッジとして格納され、前記ネットワークの特性が前記グラフデータベースに頂点属性として格納され、前記マッピングの特性が前記グラフデータベースにエッジ属性として記憶され、前記トポロジーレベル経路の特性が前記グラフデータベースにエッジ属性として記憶され、前記グラフデータベースにエッジタイプとしてマッピングの種類が格納され、前記グラフデータベースにエッジタイプとしてトポロジーレベルパスの種類が格納されており、マッピングおよびトポロジーレベル経路の作成および再計算は、グラフデータベースを照会することによって実施される。
【請求項２４】
請求項1に記載のアクションe）における前記検索は、グラフデータベースに問い合わせることによって行われることを特徴とする請求項23に記載の方法。
【請求項２５】
請求項1または請求項2または請求項3に記載の方法:
物理的パケット交換ノードのための転送エントリの計算、以下の方法ではノードと呼ばれ、以下の動作を含む以下の方法を実行することによって、要求されたパスの再帰的パス内で実行される:
i.  再帰的パスが、前記物理的パケット交換ノードの着信トポロジマッピングまたは着信レイヤマッピングを含まない場合、前記物理的パケット交換ノードは、1つまたは複数の深さマッピングを介して前記再帰パスのソースネットワークにマッピングされ、前記再帰パス内の前記物理的パケット交換ノードに、前記物理的パケット交換ノードにパケットを作成するように指示する転送エントリを送信するステップと、前記出力トポロジマッピングまたは前記出力レイヤマッピングのエッジ関係の出力セットのスイッチング識別子を含むパケットオーバーヘッドと比較して、前記出力ポートは、前記物理的パケット交換ノードと前記出力トポロジマッピングまたは前記出力レイヤマッピングとの間のアタッチメントポイントであることを特徴とする請求項1に記載の方法、
ii.  そうでなければ、再帰パスが前記物理的パケット交換ノードに対する発信トポロジマッピングまたは発信レイヤマッピングを含まない場合、前記物理的パケット交換ノードは、1つ以上の深度マッピングを介して前記再帰的パスの宛先ネットワークにマッピングされ、前記再帰パス内の前記物理的パケット交換ノードの、各着信トポロジマッピングおよび各着信レイヤマッピングを作成して、転送エントリを作成し、前記着信トポロジマッピングまたは前記着信レイヤマッピングのエッジ関係の着信セットのスイッチング識別子に従ってパケットを入力ポートで受信するように前記物理パケット交換ノードに指示するステップと、前記入力ポートは、前記物理的パケット交換ノードと前記着信トポロジマッピング又は前記着信レイヤマッピングとの間のアタッチメントポイントであることを特徴とする方法、
iii.  そうでなければ、再帰パスが、前記物理パケット交換ノードに対する1つの着信トポロジマッピングまたは着信レイヤマッピングを含み、前記再帰パスが前記物理パケット交換ノードに対する1つまたは複数の発信トポロジマッピングまたは送信レイヤマッピングを含み、スイッチングノード、前記再帰パス内の前記物理的パケット交換ノードの各出力トポロジマッピングおよび各出力レイヤマッピングのために、入力ポートで入力パケットを受信するように前記物理パケット交換ノードに指示する転送エントリを作成するステップと、前記入力ポートは、前記物理的パケット交換ノードと前記到来トポロジマッピングとの間のアタッチメントポイントであるか、または前記再帰パスによって指定された前記入力レイヤーマッピングであり、前記パケットは、前記着信トポロジマッピングまたは前記着信レイヤマッピングのエッジ関係の着信セットのスイッチング識別子に従って、前記着信トポロジマッピングの着信セットの前記着信トポロジマッピングトポロジマッピングまたは前記発信レイヤマッピング、前記パケットを出力ポートから転送し、前記出力ポートは、前記物理的パケット交換ノードと前記出力トポロジマッピングまたは前記出力レイヤマッピングとの間のアタッチメントポイントであることを特徴とする方法。
【請求項２６】
請求項1または請求項2または請求項3に記載の方法:
以下のアクションを含む以下の方法を実行することによって、要求されたパスの再帰パス内の物理的非パケット交換ノードのための転送エントリを計算する、
i.  再再帰的経路が、前記物理的非パケット交換ノードに対する着信トポロジマッピングまたは着信レイヤマッピングを含まない場合、前記物理的非パケット交換ノードは、1つ以上の深度マッピングを介して前記再帰パスのソースネットワークにマッピングされ、前記再帰的経路内の前記物理的非パケット交換ノードの命令とをそれぞれ生成するステップと、前記物理的非パケット交換ノードに、前記出力トポロジマッピングまたは前記出力レイヤマッピングのエッジ関係の出力セットのスイッチング識別子に従って信号を生成するように指示するステップと、前記出力ポートは、前記物理的非パケット交換ノードと前記出力トポロジマッピングまたは前記出力レイヤマッピングとの間のアタッチメントポイントであることを特徴とする請求項1に記載の方法、
ii.  そうでなければ、再帰的経路が、前記物理的非パケット交換ノードに対する発信トポロジマッピングまたは送信レイヤマッピングを含まない場合、前記物理的非パケット交換ノードは、1つ以上の深さマッピングを介して前記再帰パスの宛先ネットワークにマッピングされ、前記再帰的パス内の前記物理的非パケット交換ノードの各着信トポロジマッピングおよび各着信レイヤマッピングを作成し、前記物理的非パケット交換ノードに、前記着信トポロジマッピングまたは前記着信レイヤマッピングのエッジ関係の着信セットのスイッチング識別子に従って入力ポートで信号を受信するように指示するステップと、前記入力ポートは、前記物理的非パケット交換ノードと前記着信トポロジマッピングまたは前記着信レイヤマッピングとの間のアタッチメントポイントであることを特徴とする方法、
iii.  そうでなければ、再帰的経路が、物理的非パケット交換ノードのための1つの着信トポロジマッピングまたは1つの着信レイヤーマッピングを含み、再帰的経路が前記物理的なための1つ以上の送信トポロジマッピングまたは送信レイヤマッピングを含む非パケット交換ノード、前記再帰的経路内の前記物理的非パケット交換ノードの命令とをそれぞれ生成するステップと、前記着信トポロジマッピングまたは前記着信レイヤマッピングのエッジ関係の着信セットのスイッチング識別子に従って入力ポートで着信信号を受信するように前記物理的非パケット交換ノードに指示するステップと、前記入力ポートは、前記物理的非パケット交換ノードと前記到来トポロジマッピングとの間のアタッチメントポイントであるか、または前記再帰パスによって指定される前記入力レイヤマッピングであり、前記出力トポロジマッピングまたは前記出力レイヤマッピングのエッジ関係の出力セットのスイッチング識別子に従って前記信号を修正し、前記信号を出力ポートから転送し、前記出力ポートは、前記物理的非パケット交換ノードと前記出力トポロジマッピングまたは前記出力レイヤマッピングとの間のアタッチポイントであることを特徴とする方法。
【請求項２７】
プロセッサおよびコンピュータプログラム製品を格納するメモリを備えたコンパイラは、前記請求項のいずれかに記載の方法を実行するように構成されました。
【請求項２８】
命令及びデータを含むコンピュータプログラム製品は、請求項27に記載のコンパイラによってロードされるように配置され、その後、許可は、請求項1〜26のいずれかに記載のコンパイラは、メソッドを実行すると述べました。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワーク、記憶装置及び計算装置に関する。そのようなネットワークは、パケット交換または回線交換であってもよい。特に、本発明は、物理および仮想ネットワーク内のパケット転送装置、コンピューティング装置、ストレージ装置、仮想スイッチ、仮想マシンおよびコンテナを構成する方法に関する。
【背景技術】
【０００２】
パケット交換ネットワーク（PSN）およびコンピューティングの分野における最近の進展により、ソフトウェア定義ネットワーク（SDN）という概念が生まれました。本発明の文脈の中で、ソフトウェア定義されたネットワーキングは、（ハイレベルのプログラミングまたはスクリプト言語であるがこれに限定されない）ハイレベル仕様のネットワークを定義する能力であると考えられ、  物理的および仮想的なネットワーキング、ストレージおよびコンピューティングリソースを含む。
そのような最近の開発は、WO2010115060「仮想スイッチを実装し管理するための方法と装置」およびWO2012082988「ネットワークスイッチを構成する方法」に記載されている。
最近、標準化されたプロトコルを介してオープンインタフェースを使用して所望の転送動作を有するパケット転送装置に指示することが可能になった。このための現在の主要なプロトコルはOpenFlowであるが、本発明はOpenFlowプロトコルに限定されるものではなく、本質的に汎用であり、パケット転送装置の転送テーブルへのプログラム的なアクセスを提供する将来のプロトコルでも機能する。転送テーブルは、着信パケットおよび入力ポートからの情報が一致する情報を含み、パケットを転送するための所望の出力ポートを提供する。
本書の残りの部分では、「パケット転送デバイス」を「スイッチ」と呼ぶことにします。これは、OSIレイヤ2に限らず、パケット転送を実行するデバイスを指します。転送機能の他に、パケットを転送する前に、受信パケットヘッダおよび/またはペイロードの監視および/または記録および/またはバッファリングおよび/または変更など、スイッチがパケットに追加の動作を提供してもよいが、これに限定されない。1つまたは複数の出力ポート。また、スイッチはパケットを転送（ブロック）しないこともあります。パケット交換以外のパケット上で追加の操作を実行するこれらのタイプのデバイスは、通常、ミドルボックスと呼ばれ、このドキュメントで使用されているスイッチの定義に含まれています。
近年、ネットワーク機能を展開する際の柔軟性と機敏性を高め、潜在的にコストを削減するために、ネットワーク機能仮想化（NFV）と呼ばれる、仮想化された物理サーバまたはコンテナ内で実行される仮想マシンでスイッチングおよびミドルボックス機能を実行するようになりました  。
【０００３】
本発明に記載され、請求されているSDNコンパイラは、これらの仮想マシンまたはコンテナの転送命令を作成する能力を有するべきである。
これらの転送テーブルのスイッチへの分配は、通常、いわゆる「SDNコントローラ」によって行われます。SDNコントローラは、機能的には、ネットワーク内の一般的に地理的に分散したスイッチ間で集中的に指定された転送テーブルが分散される中央の場所（実装は通常は冗長です）です。さらに、SDNコントローラは、そのノースバウンドインターフェイスに、物理および/または仮想ネットワークリソースの集中ビューを提供する。  ネットワーク内のスイッチ、そのトポロジ、個々のリンクのステータス。
上記は、SDNと従来のネットワークの重要な違いの概要を示しています。ネットワーク内のスイッチの転送テーブルは、さまざまなネットワーキング制御プロトコルに基づく従来のネットワークの分散方式とは異なり、集中的に計算されます。これにより、ネットワークオペレータ、ITオペレータ、オペレーションシステム、アプリケーション、他のネットワーク、他のSDNコンパイラなど、SDNネットワークのユーザ（最も広い意味ではユーザがネットワークオペレータ、ITオペレータ、オペレーションシステムなど）が一元的にネットワークの動作を指定できるようになり、ネットワークを介した制御。さらに、クラウドコンピューティングの導入に伴い、コンピューティング、ストレージ、およびネットワーキングリソース間の緊密な統合と集中管理が必須要件となっています。
現在、ネットワーキング業界は、パケット転送装置の転送テーブルへのプログラム的なアクセスに焦点を当てている。しかし、ネットワーキング、ストレージ、コンピューティングの間の緊密な統合を実現するためには、物理ホスト、仮想ホスト、物理NICにも命令を提供する必要があります。例えば。  特定の宛先ノードにパケットを送信するためにどのインタフェースを介してホストに指示することができる。例えば。  どのパケットを受け入れ、どのパケットを廃棄するかをホストに指示することができる。例えば。  どのパケットを転送するか、どのパケットを廃棄するかをNICに指示することができる。これには、物理ネットワーキング、仮想ネットワーキング、ストレージ、コンピューティングリソースを含むソフトウェア定義ネットワーキングに対する包括的なアプローチが必要です。
【０００４】
コンピューティングの分野では、物理サーバを1つ以上の仮想マシンに仮想化して前述のクラウドコンピューティングを実現することが一般的になりました。サーバー仮想化のプロセスは、物理コンピューティングリソースの論理的抽象化を作成します。コンピューティングとネットワーキングの今日の緊密な統合を考えると、物理的および仮想的なネットワーキングリソースを論理的に抽象化する必要が生じています。
US2013/058215は、
ネットワークを介してデータを転送する複数の管理スイッチング素子を管理する仮想化装置を開示している。バーチャライザは、入力論理転送プレーンデータを格納する第1のテーブルセットと、出力物理制御プレーンデータを格納する第2のテーブルセットとを備える。第1の組のテーブル内の入力論理転送面データをマッピングして、第2の組のテーブル内の物理制御面データを出力するためのテーブルマッピングエンジンを含む。最初のテーブルのセット。いくつかの実施形態では、物理的制御プレーンデータは、その後、管理されたスイッチング要素によるデータの転送を指示する物理的転送動作に変換される。
この先行技術文献では、管理対象スイッチは、この物理制御プレーンデータを、管理対象スイッチの転送動作を指定する物理転送プレーンデータに変換する（参照[0197]）が、この変換を実行するために物理ノードに要件を課すという欠点を有する前記物理ノード内のリソースを使用することとを含む方法。
【０００５】
US2013  /  044641に提示されている従来技術は、
アンダーレイ（典型的にはIPベースのネットワーク）のトンネルに基づいて、このアプリケーションの用語で論理ネットワークをオーバーレイ仮想ネットワークとして作成する。このアプローチは、仮想オーバーレイネットワークとアンダーレイネットワークの両方を動作させる操作が複雑になるという欠点を有する。さらに、US2013  /  044641による従来技術は、
物理ノードの後に論理ノードをこのアプリケーションの用語でモデル化し、ネットワークサービスではなくネットワーク要素オペレーションに基づいてネットワークを構成および管理し続けるという欠点を有する。
【発明の概要】
【０００６】
本特許出願は、公開されていないが2014年9月22日に出願されたEP14185824.1の優先権を主張する。
【０００７】
本特許出願は、EP14185828.2からの優先権を主張し、これは、事前に公表されておらず、2014年9月22日に出願されたものである。
本出願人と同じ発明者の先行公開特許出願PCT  /  EP2014  /  055640は、
コンピューティングとネットワーキングとの間の上述した緊密な統合、および物理的および仮想的なネットワーキングリソースの論理的抽象化の必要性に対処する方法およびコンパイラを記載する。
したがって、PCT  /  EP2014  /  055640は、高レベルのネットワーク仕様を、
適切な物理的および/または仮想的なネットワークおよび/またはコンピューティング資源のための命令セットに変換またはコンパイルする方法を記載する。これらの命令は、着信パケットの転送、受信、廃棄、および送信元ノードからのパケットの送信方法など、着信パケットに対して実行するアクションを指定します。
PCT  /  EP2014  /  055640に記載された発明は、
このような方法を実行するように構成されたSDNコンパイラにも関する。
このタスクを達成するために、SDNコンパイラは、高水準ネットワーク仕様によって定義された各論理ネットワークのモデルを保持します。また、SDNコンパイラは、物理的および/または仮想的なネットワーキングおよび/またはコンピューティングリソースのモデルを保持する。両方のモデルとそれらの関係は、行列などの一連の関係で表されます。論理ネットワークは、論理ノードを含む。各論理ソースと論理宛先ノードとの間の転送経路は、これらのマトリクス上で実行される操作によって決定され、物理的および仮想的なリソースのポイント・オブ・アタッチメント（例えば、これに限定されないが、イーサネット・メディア・アクセス制御（MAC）アドレス）  。
行列に格納されたこれらの転送経路から、上記の適切な命令が導出される。
上記のアプローチは、同じ物理および仮想リソース上の複数の同時論理ネットワークの定義および作成を可能にする。
PCT  /  EP2014  /  055640に記載された方法は、
現在入手可能なOpenFlowベースの製品に適用することができるが、OpenFlowに限定されず、パケット転送装置の転送テーブルへのプログラム的なアクセスを提供する将来のプロトコルで動作することができる。記載された方法は、イーサネット（登録商標）MACアドレスなど、現在広く使用されているポイントオブアタッチメントの識別子に適用することができる。記載された方法は、IPv4およびIPv6命名およびパケットフォーマットに適用することができる。
PCT  /  EP2014  /  055640に記載された発明は、
着信パケットの転送決定を行うために直接使用することができる転送エントリを作成し、より複雑でない転送ハードウェアおよびソフトウェア転送実装を可能にする物理ノードでの変換を必要としない。本発明は、論理ネームスペースを使用して論理ネットワークを物理ネットワーキングリソースにコンパイルすることにより、アンダーレイネットワークを必要とせず、操作を単純化する。記述された発明は、SDNコンパイラのユーザが宣言的要求に基づいてネットワークサービスを指定することを可能にする有向グラフに基づくネットワーク抽象化と、前記ネットワークサービスを実装し維持するSDNコンパイラとを使用して、オペレーションを単純化し、  複雑なネットワークサービス。
クラウドベースのIT（情報技術）環境では、論理ストレージと論理コンピューティングのほか、物理的および/または仮想リソースに対する論理ストレージと論理コンピューティングから構築されたアプリケーションを最適な方法でオンデマンドで展開することが目的です。現在のところ、ネットワークはこのプロセスのボトルネックになりますが、理想的には、論理的なネットワークは論理的なストレージと論理計算と共に最適な方法で物理的および/または仮想的なリソースに対して最適な方法で展開されます。
PCT  /  EP2014  /  055640は、高レベルのネットワーク仕様を、
適切な物理的および/または仮想的なネットワークおよび/またはコンピューティング資源のための命令セットに変換またはコンパイルする方法を記載している。
【０００８】
PCT  /  EP2014  /  055640に記載された方法は、
最上位層の論理ノードが論理記憶装置または論理計算を示し、要求されたトポロジーレベルパスが論理メッセージストリームを示す全体ネットワークに適用することができる。
【０００９】
本発明の目的は、論理的計算、記憶及びネットワークを物理的及び/又は仮想的リソースに対して最適な方法でコンパイルし、それによって論理的計算、記憶及びネットワークの要件に基づいて物理及び/又は仮想リソースを選択することである。
そのために、本発明は、請求項1に記載の方法を提供する。
PCT  /  EP2014  /  055640に記載されているSDNコンパイラ方法は、
論理ノード、論理トポロジマッピング、およびオプションで論理レイヤーマッピングの要件に基づいて、深度マッピングを決定し、異なる深度のノードをSDNコンパイラによって決定する  SDNコンパイラのユーザによって実行される。前記拡張により、SDNコンパイラのユーザは、論理ノード、論理ノードの要件、論理トポロジマッピングおよび論理トポロジマッピングの要件、ならびに任意で論理レイヤーマッピングおよび論理レイヤーマッピングの要件を指定し、前記SDNコンパイラ  前記論理仕様をコンパイルすることができ、それにより、深さマッピング、物理的トポロジー経路、および任意選択で物理的経路によって表される論理ノードと物理ノードとの間の関係を決定するステップと、  レイヤーマッピング。
【図面の簡単な説明】
【００１０】
本発明は、本発明の実施形態を示すことのみを意図しており、範囲を限定するものではないいくつかの図面を参照して詳細に説明される。本発明の範囲は、添付の特許請求の範囲およびその技術的な等価物によって規定される。当業者であれば、本発明を説明するために明示的に使用された特徴、構成要素、要素などは、特に明記しない限り、技術的に均等物で置き換えることができることを理解するであろう。さらに、異なる実施形態の別個の特徴は、そのような組み合わせが物理的に不可能でない限り、図面に明示的に示されていないか、または明細書に説明されていなくても組み合わせることができる。
図面は次のとおりです。
【図１】ソフトウェア定義ネットワークの様々なコンポーネントを示す図である
【図２Ａ】物理ノードBA、BB、BCおよびBDの機能的表現を示す図である
【図２Ｂ】リンクによって相互接続された物理ノードBA、BB、BCおよびBDからなる物理ネットワークBAAの機能的表現を示す図である。
【図２Ｃ】物理リンクによって相互接続された物理ノードBA、BB、BCおよびBDからなる物理ネットワークBAAの機能的表現を示す図であり、物理ノードと物理リンクとの間の相互接続は、物理リンクの各方向の物理リンクのコストが示されている物理接続点（PoA）p101〜p108によって示されている
【図２Ｄ】エッジによって相互接続された頂点（ノード）BA、BB、BCおよびBDからなる物理ネットワークBAAの重み付き有向グラフ表現を示す図であり、頂点とエッジとの間の相互接続は、  添付ファイル（PoA）、p101〜p108（各エッジのコストが表示されます）
【図３Ａ】ネットワークKAおよびKBおよびそれらのトポロジマッピング関係を示す図である。
【図３Ｂ】ネットワークKA、KB、KC、KDおよびそれらのマッピング関係を示す図であり、トポロジマッピングまたはレイヤマッピングのいずれかである。
【図３Ｃ】ネットワークKA、KB、KC、KD、LA、LB、LC、LDを示す図であり、それらのマッピング関係は、トポロジマッピング、レイヤマッピングまたはデプスマッピングのいずれかである。
【図３Ｄ】レベルhにおけるネットワークKA、KB、KC、KD、LA、LB、LC、LDおよびそれらのマッピング関係ならびにレベル（h  +  1）  におけるネットワークKAA、KCC、LAA、LCCを示す図である。（d、n、h  +  1）のネットワークKAAは、（d、n、h）の両方のネットワークKAおよびKBを含む。（d、n  +  1、h  +  1）のネットワークKCCは、（d、n  +  1、h）  の両方のネットワークKCおよびKDを含む。（d  +  1、n、h  +  1）におけるネットワークLAAは、（d  +  1、n、h）  の両方にネットワークLAおよびLBを含む。（d  +  1、n  +  1、h  +  1）  のネットワークLCCは、（d  +  1、n  +  1、h）  の両方のネットワークLCおよびLDを含む。図3Cに示されているノードKAとKD、KBとKC、LAとLD、LBとLCとの間の対角レイヤーマッピングは、図を簡略化するためにこの図では省略されている。図3Cに示されているノードKAおよびLA、KBおよびLA、KCおよびLD、KDおよびLC、KAおよびLC、KCおよびLA、KBおよびLD、KDおよびLBの対角線の深さマッピングは、  図を単純化する。
【図４Ａ】（d、n、h  +  1）におけるネットワークNAA、NCCおよびNEEからなる（d、n、h  +  2）におけるネットワークNAAAを示す図である。  ネットワークNAAは、（d、n、h）のネットワークNAおよびNBからなる。  ネットワークNCCは、（d、n、h）のネットワークNCおよびNDからなる。  ネットワークNEEは、（d、n、h）のネットワークNEおよびNFからなる。  図4Aはまた、（d、n、h）におけるネットワーク間のトポロジマッピングを示す。
【図４Ｂ】（d、n、h  +  1）におけるネットワークNAA、NCCおよびNEEからなる（d、n、h  +  2）におけるネットワークNAAAを示す図である。  ネットワークNAAは、（d、n、h）のネットワークNAおよびNBからなる。  ネットワークNCCは、（d、n、h）のネットワークNCおよびNDからなる。  ネットワークNEEは、（d、n、h）のネットワークNEおよびNFからなる。  図4Bはまた、（d、n）におけるネットワークと（d、n、h）におけるネットワーク間のトポロジマッピングとの間のレベルマッピングを示す。
【図５Ａ】ネットワークKA、KB、KC、KD、LA、LB、LC、LDおよびネットワークKAとネットワークKBとの間のトポロジマッピング、ネットワークKAとネットワークKCとの間のレイヤマッピング、ネットワークKBとネットワークKDとの間のレイヤマッピング、ネットワークKAとネットワークLAとの間の深度マッピング、ネットワークKBとネットワークLBとの間の深さマッピング、ネットワークKCとネットワークLCとの間の深度マッピング、およびネットワークKDとネットワークLDとの間の深さマッピング  。  また、トポロジマッピングおよびレイヤマッピングのPoAも示されています。
【図５Ｂ】ネットワークKA、KB、KC、KD、LA、LB、LC、LDおよび名前付きトポロジマッピング、レイヤマッピングおよび深度マッピングを示す図である。  また、  トポロジマッピングおよびレイヤマッピングのPoAも示されています。
【図５Ｃ】ネットワークKA、KB、KC、KD、LA、LB、LC、LD、ネットワークLAからネットワークLBへのL14という名前のトポロジマッピングを計算して記憶するステップと、ネットワークLAからネットワークKAへのL12という深さマッピングの連結として、ネットワークKAネットワークKBからのL11という名前のトポロジパス、ネットワークKBからネットワークLBへのL13という名前の深さマッピングとを含み、L11という名前のトポロジパスは、ネットワークKAからネットワークKBへのL5という名前の単一トポロジマッピングである。
【図５Ｄ】図5Cに加えて、ネットワークLCからネットワークLAへのL19と名付けられたレイヤーマッピングを計算して記憶することに加えて、ネットワークKA、KB、KC、KD、LA、LB、LC、ネットワークLCからネットワークKCへのL17という名前の深さマッピングの連結として、ネットワークKCネットワークKAからのL7というレイヤマッピング、ネットワークKAからネットワークLAへのL15という名前の深度マッピングと、ネットワークLBからネットワークLDへのレイヤーマッピングL20を計算して記憶するステップと、ネットワークLBからネットワークKBへのL16という深さマッピングの連結として、ネットワークKBネットワークKDからL10という名前のレイヤマッピング、ネットワークKDからネットワークLDへのL18という名前の深度マッピングとを含む。
【図５Ｅ】ネットワークKA、KB、KC、KD、LA、LB、LC、LD、図5Dに加えて、ネットワークLCからネットワークLDへのL22という名前のトポロジマッピングを計算して記憶すること、ネットワークLCからネットワークLAへのL19という名前のレイヤマッピングの連結として、ネットワークLAネットワークLBからのL21という名前のトポロジパスと、ネットワークLBからネットワークLDへのレイヤーマッピングL20と、L21という名前のトポロジパスは、ネットワークLAからネットワークLBへのL14という名前の単一のトポロジマッピングです。
【図５Ｆ】ネットワークLCからネットワークLDへのL23という名前のトポロジー経路を計算してL22という名前の単一のトポロジマッピングとして計算し記憶する図5Eに加えて、ネットワークKA、KB、KC、KD、LA、LB、LC、LD  ネットワークLCからネットワークLDへ
【図６Ａ】第1のネットワークから第2のネットワークへの第1のマッピング・タイプによる第1のマッピング・タイプの第1のマッピングに使用される表記を示す図である。
【図６Ｂ】第2のネットワークから第3のネットワークへの第2のマッピング・タイプによる第2のマッピング・タイプの第2のマッピングに使用される表記を示す図である。
【図６Ｃ】第3のエッジタイプの第3のエッジに使用される表記を示す図であり、第3のエッジ名は、第1のエッジと第1のエッジ名との連結であり、第2のエッジと第2のエッジ名との連結である。
【図６Ｄ】第3のエッジタイプの第3のエッジに使用される表記を示す図であり、第3のエッジ名は第1のマッピングと第1のエッジ関係のセットとの連結であり、第2のマッピングは第2のエッジセット  -  関係。
【図７Ａ】トポロジマッピングL5およびL6、レイヤーマッピングL7、L8、L9およびL10ならびに深度マッピングL12、L13、L15、L16、L17、L18、L24およびL25を示す図である。
【図７Ｂ】トポロジマッピングL14およびL22、レイヤマッピングL19およびL20およびトポロジパスL11、L21およびL23を示す図である。
【図７Ｃ】ステップ1において、ネットワークLCからネットワークLDへのL23という名前のトポロジパスを示す図であり、ステップ6において、ネットワークLCからネットワークLDへのL23という名前のトポロジパスの再帰パス、ステップ2からステップ5は中間  計算のステップ。
【図８】（d  =  1、n  =  0、h  =  1）における論理ネットワークNAA、NCCおよびNEEからなる論理ネットワークNAAA（d  =  1、n  =  0、h  =  2）を示す図である。  論理ネットワークNAAは、（d  =  1、n  =  0、h  =  0）のネットワーク論理ネットワークNAおよびNBからなる。  論理ネットワークNCとNDからなる論理ネットワークNCC（d  =  1、n  =  0、h  =  0）。（d  =  1、n  =  0、h  =  0）におけるネットワークNEとNFからなる論理ネットワークNEE。  図8はまた、（d  =  0、n  =  0、h  =  0）における物理ネットワークQA、QB、QC、QD、QEおよびQFも示す。  図8はまた、各トポロジマッピング、レベルマッピング、トポロジパス、およびエッジ関係の名前と同様に、ネットワーク間のトポロジマッピング、深さマッピング、レベルマッピングおよびトポロジパスを示す。
【図９】データベース、イベントハンドラおよびインストラクタを備える例示的なSDNコンパイラ装置を示す図である。  図9はまた、ユーザおよびSDNコントローラおよびSDNノードならびにメッセージフロー51乃至61を示す。
【図１０】コンピュータ装置の概略概要図である。
【図１１Ａ】論理ノードFE、論理ノードFF、論理ノードFGを示す図である。  図11Aはまた、論理ノードFEから論理ノードFFへのトポロジマッピングと、論理ノードFFから論理ノードFGへのトポロジマッピングとを、グラフの有向エッジとして表す。
【図１１Ｂ】（d  =  1、n  =  0、h  =  0）の論理ノードFE、（d  =  1、n  =  0、h  =  0）の論理ノードFF及び（d  =  1、n  =  0、h  =  0）の論理ノードFG、（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X1、（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X2及び（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X3を示す図である。また、図11Bは、K1とK2という名前のトポロジマッピング、K3からK8という深度マッピング、?K9とK10という未知の物理トポロジパスをグラフの有向枝として表したものです。図11Bにおいて、疑問符は、未知の物理ノードおよび未知の物理トポロジパスを示す。
【図１１Ｃ】図6Aの表記に従って、K3からK8までの深さマッピングを示す図である。
【図１１Ｄ】図6Cの表記法によるトポロジマッピングK1およびK2を示す図である。図11Dにおいて、「?K9  [トポロジパス]  」は、K9が未知のトポロジー経路であることを示し、「?K10  [トポロジパス]」は、K10が未知のトポロジー経路であることを示す。
【図１１Ｅ】K1という名前のトポロジマッピングを示す図である。
【図１１Ｆ】K2という名前のトポロジマッピングを示す図である。
【図１１Ｇ】K1という名前のトポロジマッピング、K2という名前のトポロジマッピングの物理エンティティ、および検索文の物理的なエンティティを示す図である。
【図１１Ｈ】論理トポロジマッピングの要件が、未知の物理トポロジパスの要件にどのように関連するかを示す図である。
【図１１Ｉ】論理ノードの要件が未知の物理ノードの要件にどのように関連しているかを示す図である。
【図１２Ａ】物理ノードKPで表される第1のコンピューティング機器と、物理ノードKQによって表される第1のパケット転送システムと、物理ノードKRによって表される第2のパケット転送システムと、物理ノードKSによって表される第2のコンピューティング機器と、  物理リンクであるトポロジマッピングによって接続された、物理ノードKTによって表される第3のコンピューティング機器とを含む。図12Aはまた、ポイントオブアタッチメント（PoA）p211からp218を示す。
【図１２Ｂ】（d  =  0、n  =  0、h  =  0）の物理ノードKPと、（d  =  0、n  =  0、h  =  0）の物理ノードKQと、（d  =  0、n  =  0、h  =  0）の物理ノードKRと、（d  =  0、n  =  0、h  =  0）の物理ノードKSと、（d  =  0、n  =  0、h  =  0）の物理ノードKTとを示す図である。また、図12Bは、K11からK18という名前のトポロジマッピングを示しており、グラフの有向エッジとして表されている。
【図１２Ｃ】図6Aの表記に従って、K11からK18と名付けられたトポロジマッピングを示す図である。
【図１２Ｄ】未知の物理ノードが物理ノードにどのように関連しているかを示す図である。
【図１２Ｅ】未知の物理トポロジパスが物理トポロジパスにどのように関連しているかを示す図である。
【図１２Ｆ】（d  =  1、n  =  0、h  =  0）の論理ノードFE、（d  =  1、n  =  0、h  =  0）の論理ノードFF、（d  =  1、n  =  0、h  =  0）の論理ノードFG、（d  =  0、n  =  0、h  =  0）の物理ノードKP、（d  =  0、n  =  0、h  =  0）の物理ノードKQ、（d  =  0、n  =  0、h  =  0）の物理ノードKR、（d  =  0、n  =  0、h  =  0）の物理ノードKS、および（d  =  0、n  =  0、h  =  0）の物理ノードKTを示す図である。図12Fはまた、グラフの有向エッジとして表される、K1、K2、K11からK18、K3からK8という名前の深さマッピング、K9およびK10という名前の物理トポロジパス、およびK19という論理トポロジパスという名前のトポロジマッピングを示す。
【図１２Ｇ】図6Aの表記に従って、K3からK8までの深さマッピングを示す図である。
【図１２Ｈ】図6Cの表記法によるトポロジマッピングK1およびK2を示す図である。
【図１２Ｉ】図6Cの表記法によるトポロジパスK19を示す図である。
【図１２Ｊ】ステップ1において、ノードFEからノードFGへのK19という名前のトポロジパスを示す図であり、ステップ5において、K19という名前のトポロジパスの再帰パスであり、ステップ2からステップ4は、計算の中間ステップである。
【図１２Ｋ】K11からK19という名前のエッジのためのスイッチング識別子を示す図である。
【図１２Ｌ】要求されたトポロジパス名K19転送命令から計算された再帰パス内の物理ノードKP、KQ、KR、KSおよびKTであるネットワーク（d  =  0、h  =  0）を示す図であり、  入力ポートと、出力ポートと、着信セットのエッジ関係と、エッジ関係の出力セットと、出力側エッジ・リレーション・セット中の各エッジのスイッチング識別子と、  関係。
【図１３Ａ】論理ノードFEと、論理ノードFFと、論理ノードFGと、物理ノードKPとを示す図である。図13Aはまた、論理ノードFEから論理ノードFFへのトポロジマッピング、論理ノードFFから論理ノードFGへのトポロジマッピング、および有向枝として表される論理ノードFEから物理ノードKPへの深さマッピングをグラフで示す  。
【図１３Ｂ】（d  =  1、n  =  0、h  =  0）の論理ノードFE、（d  =  1、n  =  0、h  =  0）の論理ノードFFおよび（d  =  1、n  =  0、h  =  0）の論理ノードFG、（d  =  0、n  =  0、h  =  0）の物理ノードKP、（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X2および（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X3を示す図である。図13Bはまた、K1とK2という名前のトポロジマッピング、K4からK8までの深さマッピング、?K9とK10という未知の物理トポロジパスをグラフの有向エッジとして表している。図13Bにおいて、疑問符は、未知の物理ノードおよび未知の物理トポロジパスを示す。
【図１３Ｃ】図6Aの表記に従って、K4からK8までの深さマッピングを示す図である。
【図１３Ｄ】K1という名前のトポロジマッピングを示す図である。
【図１３Ｅ】K1という名前のトポロジマッピング、K2という名前のトポロジマッピングの物理エンティティ、および検索文の物理的なエンティティを示す図である。
【図１４Ａ】論理ノードFE、論理ノードFF、論理ノードFG、および物理ノードKPを示す図である。  図14Aはまた、論理ノードFEから論理ノードFFへのトポロジマッピング、論理ノードFFから論理ノードFEへのトポロジマッピング、論理ノードFFから論理ノードFGへのトポロジマッピング、論理から論理へのトポロジマッピング  ノードFGから論理ノードFFへ、グラフの有向エッジとして表される。
【図１４Ｂ】（d  =  1、n  =  0、h  =  0）の論理ノードFE、（d  =  1、n  =  0、h  =  0）の論理ノードFFおよび（d  =  1、n  =  0、h  =  0）の論理ノードFG、（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X1、（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X2および（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X3を示す図である。図14Bはまた、K1、K2、K21およびK22という名前のトポロジマッピング、K3からK8という深度マッピング、および?K9、K10、K23およびK24という未知の物理トポロジパスをグラフの有向エッジとして表している。図14Bにおいて、疑問符は、未知の物理ノードおよび未知の物理トポロジパスを示す。
【図１４Ｃ】図6Cの表記法によるトポロジマッピングK21およびK22を示す図である。  図14Cにおいて、「?K23  [トポロジパス]  」は、K23が未知のトポロジー経路であることを示し、「?K24  [トポロジパス]」は、K24が未知のトポロジー経路であることを示す。
【図１４Ｄ】K21という名前のトポロジマッピングを示す図である。
【図１４Ｅ】K22という名前のトポロジマッピングを示す図である。
【図１４Ｆ】K1という名前のトポロジマッピング、K2という名前のトポロジマッピングの物理的なエンティティ、K21という名前のトポロジマッピングの物理的なエンティティ、K22という名前のトポロジマッピングの物理的なエンティティ、および、  。
【図１５Ａ】論理ノードFE、FF、FG、FHおよびFJ、トポロジマッピング、レイヤーマッピングおよびトポロジパスを示す図である。
【図１５Ｂ】（d  =  1、n  =  0、h  =  0）の論理ノードFE、FF、FG、（d  =  1、n  =  1、h  =  0）の論理ノードFH、FJ、（d  =  0、n  =  0、h  =  0）の未知物理ノード?X1、（d  =  0、n  =  0、h  =  0）の未知物理ノード?X2、（d  =  0、n  =  0、h  =  0）の未知物理ノード?X3、（d  =  0、n  =  1、h  =  0）の未知物理ノード?X4、（d  =  0、n  =  1、h  =  0）の未知物理ノード  ?X5。図15Bはまた、K1とK2という名前のトポロジマッピング、K3からK8とK28からK31までの深さマッピング、K25とK26という名前の論理レイヤマッピング、?K32と?K33という未知の物理レイヤマッピング、および未知の物理トポロジパス  ?K9およびK10は、有向エッジとしてグラフに表される。  図15Bにおいて、疑問符は未知の物理ノード、未知の物理レイヤーマッピングおよび未知の物理トポロジー経路を示す。
【図１５Ｃ】図6Aの表記に従って、K3からK8、K28からK31までの深さマッピングを示す図である。
【図１５Ｄ】図6Cの表記法によるトポロジマッピングK1、K2およびK34、レイヤーマッピングK25およびK26、およびトポロジパスK27およびK35を示す図である。図15Dにおいて、?K9  [トポロジパス]はK9が未知のトポロジパスであることを示し、?K10  [トポロジパス]はK10が未知のトポロジパスであることを示し、  '?K32  [レイヤーマッピング]'は?K32が未知のレイヤマッピング  「?K33  [レイヤーマッピング]」は、?K33が未知のレイヤーマッピングであることを示している。
【図１５Ｅ】K25という名前のレイヤーマッピングを示す図である。
【図１５Ｆ】K26という名前のレイヤーマッピングを示す図である。
【図１５Ｇ】K1という名前のトポロジマッピング、K2という名前のトポロジマッピングの物理的なエンティティ、K25という名前のレイヤマッピングの物理的なエンティティ、K26という名前のレイヤマッピングの物理的なエンティティ、および、  。
【図１６Ａ】物理ノードKEおよびKKで表される第1のコンピューティング機器と、物理ノードKFによって表される第1のパケット転送システムと、物理ノードKGによって表される第2のパケット転送システムと、  物理ノードKHおよびKLと、物理的リンクであるトポロジマッピングおよびレイヤーマッピングによって接続された、物理ノードKJおよびKMによって表される第3のコンピューティング機器とを含む。図16Aはまた、ポイントオブアタッチメント（PoA）p211からp218およびp221からp226を示す。
【図１６Ｂ】（d  =  0、n  =  0、h  =  0）の物理ノードKE、KF、KG、KH、KJと（d  =  0、n  =  1、h  =  0）の物理ノードKK、KL、KMとを示す図である。図16Bはまた、グラフの有向エッジとして表される、K41からK48およびレイヤーマッピングK49からK54という名前のトポロジマッピングを示す。
【図１６Ｃ】図6Aの表記に従ってK41からK48までのトポロジマッピングと、K49からK54までのレイヤマッピングとを示す図である。
【図１６Ｄ】未知の物理ノードが物理ノードにどのように関連しているかを示す図である。
【図１６Ｅ】未知の物理トポロジパスが物理トポロジパスにどのように関連しているかを示す図である。
【図１６Ｆ】未知の物理レイヤーマッピングが物理レイヤーマッピングにどのように関連しているかを示す図である。
【図１６Ｇ】図6Aの表記に従って、K3からK8、K28からK31までの深さマッピングを示す図である。
【図１６Ｈ】図6Cの表記法ごとのトポロジマッピングK1およびK2、ならびにレイヤマッピングK25およびK26を示す図である。
【図１６Ｉ】（d  =  1、n  =  0、h  =  0）の論理ノードFE、FFおよびFG、（d  =  1、n  =  1、h  =  0）の論理ノードFHおよびFJ、（d  =  0、n  =  0、h  =  0）の物理ノードKE、KF、KG、KH、KJおよび（d  =  0、n  =  1、h  =  0）の物理ノードKK、KLおよびKMを示す図である。図16は、K1、K2、K41からK48までのトポロジマッピング、K3からK8およびK28からK31までの深さマッピング、K25からK26およびK49からK54までのレイヤマッピング、ならびにK9およびK10という物理的トポロジパスを示し、  グラフの有向エッジとして表されます。
【図１６Ｊ】（d  =  1、n  =  0、h  =  0）の論理ノードFE、FFおよびFG、（d  =  1、n  =  1、h  =  0）の論理ノードFHおよびFJ、（d  =  0、n  =  0、h  =  0）の物理ノードKE、KF、KG、KH、KJおよび（d  =  0、n  =  1、h  =  0）の物理ノードKK、KLおよびKMを示す図である。また、図16Jは、K1、K2、K41からK48までのトポロジマッピング、K3からK8およびK28からK31までの深さマッピング、K25からK26およびK49からK54までのレイヤマッピング、およびK9、K10、K27というトポロジパス  およびK35をグラフの有向辺として表します。
【図１７Ａ】ステップ1において、要求されたトポロジパスK35を示し、ステップ6において、要求されたトポロジパスK35の再帰パスを示し、ステップ2からステップ5は、計算の中間ステップである。
【図１７Ｂ】要求されたトポロジパス名付きK35転送命令から計算された再帰パス内の物理ノードKE、KF、KG、KJ、KKおよびKMを示す図であり、入力ポート、出力ポート、  関係とエッジ関係の発信セット。
【図１７Ｃ】K41からK48、K27およびK35と名付けられたエッジのためのスイッチング識別子を示す図である。
【図１７Ｄ】入力ポート、出力ポート、着信セットのエッジを含む、要求されたトポロジパス名のK35転送命令から計算された再帰パス内の物理ノードKE、KF、KG、KJ、KKおよびKMを示す図である。  前記エッジ関係の前記着信セット内の各エッジの関連性およびスイッチング識別子と、前記エッジ関係の前記出力セット内の各エッジのエッジ関係およびスイッチング識別子の出力セットとを含む、請求項1に記載の方法。
【図１７Ｅ】K41からK48、K27およびK35と名付けられたエッジのためのスイッチング識別子を示す図である。
【図１７Ｆ】論理名URI-1を有するユーザエージェントである論理ノードFHと、論理名URI-2を有するオリジンサーバである論理ノードFJと、トポロジマップK34と、トポロジパスK35とを示す図である。  'HTTPリクエスト1'。
【図１７Ｇ】要求されたトポロジパス名K35転送命令から計算された再帰パス内の物理ノードKE、KF、KG、KH、KJ、KK、KLおよびKMを示す図であり、入力ポート、  前記エッジ関係の着信セット内の各エッジの入って来るセットと、前記エッジ関係の前記出力セット内の各エッジの出口関係とスイッチング識別子とを含む、請求項1に記載の方法。
【図１８Ａ】（d  =  0、n  =  0、h  =  0）の物理的ノードKP、KQ、KR、KS、KT、K11からK18までのトポロジマッピング、およびK55からK60までのレイヤーマッピングを、グラフの有向枝として表した図である。
【図１８Ｂ】図6Aの記法によるK55からK60までの名前のレイヤーマッピングである。
【図１８Ｃ】未知の物理ノードが物理ノードにどのように関連しているかを示す図である。
【図１８Ｄ】未知の物理トポロジパスが物理トポロジパスにどのように関連しているかを示す図である。
【図１８Ｅ】未知の物理レイヤーマッピングが物理レイヤーマッピングにどのように関連しているかを示す図である。
【図１９Ａ】（d  =  1、n  =  0、h  =  0）の論理ノードFE、FFおよびFG、（d  =  1、n  =  1、h  =  0）の論理ノードFHおよびFJ、および（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X1、?X2、?X3を示す図である。  図19Aはまた、K1とK2という名前のトポロジマッピング、K3からK8、K37とK38という名前の深さマッピング、K25とK26という名前の論理レイヤマッピング、?K39と?K40という未知の物理レイヤマッピング、および未知の物理トポロジパス  ?K9およびK10は、有向エッジとしてグラフに表される。図19Aにおいて、疑問符は未知の物理ノード、未知の物理レイヤーマッピングおよび未知の物理トポロジー経路を示す。
【図１９Ｂ】図6Aの表記に従ってK3からK8、K37およびK38と名づけられた深度マッピングを示す図である。
【図１９Ｃ】図6Cの表記に従って、K1およびK2という名前のトポロジマッピング、K25という名前のレイヤーでレイヤーマッピングを減少させるレイヤー、K26という名前のレイヤーでレイヤーマッピングを増加させるレイヤーを示す図である。
【図１９Ｄ】K25という名前のレイヤーマッピングを示す図である。
【図１９Ｅ】K26という名前のレイヤーマッピングを示す図である。
【図１９Ｆ】検索文を示す図である。
【図２０】ネットワークKA、KB、KC、KD、LA、LB、LC、LDおよびL5、L14およびL22という名前のトポロジマッピング、L12、L13、L15、L16、L17およびL18という名前の深度マッピング、  L7、L10、L19およびL20という名前のマッピングと、L11、L21およびL23という名前のトポロジパス、およびエッジ関係を示します。
【図２１Ａ】物理ノードKX、KYおよび論理ノードLA、LB、LC、LDおよび名前付きトポロジマッピング、レイヤマッピングおよび深度マッピングを示す図である。
【図２１Ｂ】物理ノードKX、KYおよび論理ノードLA、LB、LC、LDおよび名前付きトポロジマッピング、レイヤマッピングおよび深度マッピングを示す図である。
【発明を実施するための形態】
【００１１】
事前に公開されていない先行技術であるPCT  /  EP2014  /  055640は、
ソフトウェア定義ネットワーク（Software  Defined  Networking）（SDN）のためのコンパイラおよび方法を記載している。  以下に、前記方法の主な要素の要約を記載する。  しかし、PCT  /  EP2014  /  0055640に既に記載されている全ての特徴も本発明に適用できることに留意されたい。また、本明細書に明示的に記載されていないPCT  /  EP2014  /  0055640に記載されているような特徴/実施例との組み合わせもまた、本発明の文脈内の可能な実施形態である。  したがって、以下に参照されるPCT  /  EP2014  /  0055640の全ての文言は、参考として本明細書に組み込まれる。
上記の導入で与えられたようなSDNの定義は、図1に示されるように（PCT  /  EP2014  /  055640参照図1、35ページ）、
以下の成分を含むシステムに本発明の発明者を導く。
1.上位レベルのネットワーク仕様でネットワークを定義するユーザー。
2.高水準ネットワーク仕様を、物理的および仮想的なネットワーキングおよびコンピューティングリソース用の一連の命令に変換するSDNコンパイラ。
3.この一連の命令を物理的および仮想的なネットワーキングおよびコンピューティングリソースに配布するSDNコントローラ。
4.物理的および仮想的なネットワーキングおよびコンピューティングリソースは、受信したセットの命令に従って着信パケットに対してアクションを実行する。  図1では、それらは「SDNノード」という用語で示されている。
上記のポイント1で言及されたユーザは、人、ネットワーク管理システム、クラウド管理システム、アプリケーション、別のSDNコンパイラであってもよいが、これに限定されない。したがって、ユーザは、「ユーザ機器」、すなわちスタンドアロンまたはより大きなネットワークの一部であり得るコンピュータワークステーションのような任意の適切なコンピュータ機器を指すことができる。このようなコンピュータ機器の一例が図10に示されており、後で説明する。
【００１２】
図1において、下から上への方向で、様々な構成要素が、特定のタスクが実行されたことを彼らのノースバウンドインターフェースに報告し、変化、統計およびエラーを報告する。
ポイント4で言及されたリソースは、限定されないが、
・  物理的なパケット転送デバイス（レイヤ2スイッチ、レイヤ3ルータ、ファイアウォール、ディープパケット検査デバイス、キャッシングノード、またはその他のタイプのミドルボックスなど）
・  物理サーバ、パーソナルコンピュータ、ラップトップ、タブレット、携帯電話などのネットワークホストとして動作する物理的デバイスは、
・  物理ネットワークインターフェイスカード（NIC）、
・  仮想化された物理サーバの仮想スイッチ、
・  仮想化された物理サーバ内の仮想マシン、
・  仮想NIC、
・  IPv4対応ルーター、IPv6対応ルーター、MPLSスイッチ[MPLS  =  Multi  Protocol  Label  Switching]、パケット交換を提供するアプリケーションプロセス、
・  一例としての回路交換ノードは、これに限定されるものではないが、ファイバクロスコネクトクロスコネクト光ファイバ、リモート光アド/ドロップマルチプレクサ  (Remote-Optical  Add/Drop  Multiplexers  :  ROADMs)  または光クロスコネクトが光波長をクロスコネクトする場合、同期デジタル階層  (Synchronous  Digital  Hierarchy  :  SDH)  マルチプレクサまたは同期光ネットワーク  (Synchronous  Optical  NETwork  :  SONET)  タイムスロットをクロスコネクトするマルチプレクサ、
・  OS（オペレーティングシステム）カーネル、
・  アプリケーションプロセス、
・  物理ノードまたは仮想ノードの入力バッファおよび出力バッファ、
・  ファイバチャネルオーバーイーサネット（FCoE）をサポートするストレージ装置またはファイバチャネルオーバーIP（FCIP）をサポートするストレージ装置、
・  波長分割多重（Wavelength  Division  Multiplexing  :  WDM）マルチプレクサ、
上述した各層の物理ノードおよび/または仮想ノードは、パケット交換ノードまたは回線交換ノードのいずれかである。  パケット交換ノードと回線交換ノードの両方に対して、一連の命令がSDNコンパイラによって作成される。  パケット交換ノードの場合、
これらの命令は転送テーブルエントリを含む。  回線交換ノードの場合、これらの命令は相互接続設定を構成します。
【００１３】
上述のリソースは、限定はしないが例えば物理的NIC及び物理的パケット転送装置のような物理的装置のような物理的装置の両方の構成要素を含むことに留意されたい。  したがって、ポイント4で参照される一連の命令は、
物理デバイスのコンポーネントまたは物理デバイス全体に対して作成できます。
仮想マシンなどの仮想リソースを表す仮想ノードは、この方法において物理ノードとして表されることに留意されたい
（PCT  /  EP2014  /  055640ページ186参照）。
論理ネットワーク抽象化の仕様は、ユーザによって入力され、上記のポイント1で言及された「高レベルネットワーク仕様」である。理想的には、この仕様は、任意のトポロジ内の任意の数の論理ノードで構成された任意の論理ネットワークを指定します。論理ノードは、任意の物理および仮想ネットワークとコンピューティングリソースにマッピングされます。複数の論理ネットワークは、同じ物理的および仮想的なネットワーキングおよびコンピューティングリソース上で同時に定義および作成できます。
【００１４】
上記のポイント2は、「ネットワークとコンピューティングリソースのための高水準ネットワーク仕様の一連の命令への変換」を指しています。パケット転送スイッチの場合、これらの命令は、どのパケットを転送すべきかに応じて、そのスイッチの転送テーブルエントリである。ホストの場合、これらの命令は、どのパケットを受け入れるか、またはドロップするか、出力ポートがそのホストノードから特定の宛先ノードに発信するパケットを送信するための指示に従って、フィルタテーブルエントリである。
NICの場合、これらの命令は、パケットを転送または廃棄すべきフィルタテーブルエントリである。上で言及したポイント2は、高レベルのネットワーク仕様から、適切な物理的および仮想的なネットワークおよびコンピューティング資源のための命令セットへの変換またはコンパイルを提供する。我々は、このプロセスをコンピューティングで使用されるコンパイラに類似した「SDNコンパイラ」プロセスと呼んでおり、高水準言語を低レベル命令に翻訳しています。
【００１５】
上記のプロセスは、いわゆる「オーバーレイ」仮想ネットワーク（Nicira  /  VMWareなどの提案されたものなど）とは対照的に、物理的および仮想的なネットワーキングおよびコンピューティングリソースへの指示を提供しなければならないことに注意してください。  トンネルの入出力スイッチを除いて、物理スイッチを構成することなく、物理ネットワークに接続できます。
望ましいSDNコンパイラメソッドは、物理ネットワーク全体を含む仮想リソースと物理リソースの両方を含む包括的なアプローチを提供する必要があります。さらに、所望のSDNコンパイラ方法は、上述の非スイッチングネットワーク装置に必要な命令を指示する必要がある。さらに、現在のOpenFlow実装がソフトウェア（例えばOpen  vSwitchは、
仮想化された物理サーバーで実行中の仮想スイッチを提供します）ならびにハードウェア（例えばNEC  ProgrammableFlow  PF5240スイッチ）で利用可能であるため、仮想および物理ネットワーキングおよびコンピューティングリソース全体にわたって前述の命令を決定する必要がある。実装では、「SDNコンパイラ」の機能、またはその一部、および「SDNコントローラ」の機能、またはその少なくとも一部を1つのシステムに結合することができます。
次に、機能表現を使用してSDNコンパイラが適切な命令を作成するための物理リソースと仮想リソースについて説明します。
図2A、図2B、図2Cおよび図2D（PCT  /  EP2014  /  055640図2A、2B、2F、2Gページ37を参照）は、物理ネットワークの構成要素を示す。例示的な物理ノードは図2Aに示され、論理ネットワークが作成される物理リソースと見なされる。そのため、物理ノードの名前（図2AのBA〜BD）は物理リソースを識別するためにのみ使用され、転送の決定には使用されません。図2Bに示すように、我々は、物理的なネットワークの集合（図2Bの
BAAで識別される）を物理的ノードの集合として定義する。  物理ノードは、物理リンク（実線で示す）によって相互接続されています。
物理リンクが双方向である場合、物理リンクは、各方向の1つの隣接関係である一対の物理ノード間に隣接関係のペアを作成します。  物理リンクが単方向である場合、物理リンクは一対の物理ノード間に単一の隣接関係を作成する。物理的リンクは、光ファイバケーブル、銅ケーブル、空気を含むが、これに限定されない任意の物理的媒体とすることができる。  物理的リンクは、光波長、時分割多重（TDM）回路、マルチプロトコルラベルスイッチング（MPLS）パスなどの他のネットワーキング技術によって提供される経路であってもよい。物理リンクのセットと組み合わされた物理ノードのセットは、ネットワークの物理トポロジーを決定します。  物理ネットワークは任意の数のノードと任意のリンクで構成することができ、その結果、任意のトポロジが得られます。
物理ネットワークの典型的な表現が、物理ネットワークBAAおよび物理ノードBA〜BDを示す図2Cに示されている。図2Cに示すように、物理ノードと物理リンクとの間のインタフェースは、物理的な「アタッチメントポイント」(Point-of-Attachment)（PoA）と呼ばれ、p101からp108で示される。
【００１６】
現在配備されているネットワークにおける物理PoA識別子の典型的な例は、イーサネット（登録商標）媒体アクセス制御（MAC）アドレスであるが、本発明はこれに限定されない。  PoA識別子は、SDNコンパイラの制御下にあるネットワークの集合内で一意でなければならない。PoAは、パケットまたは信号がノードによって受信されたときのノードの「入力ポート」と、ノードからパケットまたは信号が送信されたときのノードの「出力ポート」の両方を識別する。図2Cに示すように、各物理リンクは、1つまたは複数のコストタイプと、各方向の各コストタイプに関連付けられたコスト値を有する。物理ネットワークで使用される典型的なコストタイプはリンクの遅延であり、コスト値は典型的にはミリ秒で表されるが、前記リンクの特性を表す任意のタイプのコストを使用することができる。
各双方向物理リンクには2つのコスト値があり、各方向に1つずつあります。  各単方向物理リンクには、各コストタイプごとに1つのコスト値があります。特定の方向の物理リンクのコスト値は、パケットがその特定の方向に由来する物理ノードに最も近いものとして示される。たとえば、BAからBBへのリンクのコスト値は1です。BBからBAへのリンクのコスト値は3です。物理リンクは、一対の物理ノード間の隣接関係を表すが、物理パスとは、ユニキャストネットワーキングの場合、物理ソースノードから物理デスティネーションノードにパケットまたは信号が続く物理ルートを示す。
マルチキャストまたはブロードキャストネットワークの場合、単一の物理ソースノードと複数の物理的な宛先ノードとの間に物理的なパス関係があります。次に、物理ノードは、深さマッピングを介して複数の論理ノードにマッピングされ、結果としてマルチキャストされ、物理パスは、各方向に複数のコストタイプを有することができ、一般に、その特定のコストタイプのコスト値の合計  それが構成する物理リンクの特定の方向。物理パスは、パケットが送信元ノードから宛先ノードへと通過する一連の物理PoAである。「パス」の別の用語は「フロー」である。  OpenFlow仕様は用語「フロー」を使用する。
ネットワークを有向グラフとしても表現します。  前記有向グラフは重み付けされてもよい。ネットワークBAAの有向グラフは図2Dに示されており、頂点（ノード）BAからBDと、頂点の対を接続する有向枝とを示している。図2Dでは、「エッジ」は、矢印の方向がデータのフローの方向を示す別の頂点と1つの頂点を結ぶ矢印で示されている。有向グラフとして表される場合、2つの頂点間の双方向物理リンクは2つのエッジによって表される。各エッジは隣接に対応します。
PCT  /  EP2014  /  055640（39頁、41頁、42頁）は、これらの用語の一般的な使用に従って、物理スイッチノード、物理ホストノード、物理NIC、仮想スイッチノードおよび仮想ホストノードの特性を記述している。限定ではないが、ホストノードは、コンピューティング機器または記憶装置である（例えば、PCT  /  EP2014  /  055640の155および204頁参照）。
これまで、物理的および仮想的なネットワーキングおよびコンピューティングリソースの機能モデルを提供してきました。ここで、本発明を説明するために、高水準仕様で定義することができ、物理および仮想リソースから独立した論理ネットワークを考える。
論理ネットワークは、以下を指定することによって定義されます：
1.  論理ネットワークの名前
2.  論理ネットワークが構成されている論理ノードの名前
3.  論理ノード間の隣接関係
4.  論理ネットワークの1つ以上のコストタイプ
5.  各コストタイプの論理ノード間の論理的隣接関係のコスト
6.  論理ネットワークのフォワーディングポリシー
7.  物理ノードおよび/または仮想ノードから論理ノードへのマッピング
コストタイプと値はリンクのプロパティを表し、転送ポリシーを決定するために使用できます。
上記で説明した物理ノードおよび/または仮想ノードは、以下のように1：1,1：nまたはn：1マッピングを使用して論理ノードにマッピングされる：
-  物理マッピングから論理マッピングへの1：1
-  1：n物理マッピングから論理マッピング
-  n：1物理から論理へのマッピング
-  仮想マッピングから論理マッピングへの1：1
-  1：n仮想から論理へのマッピング
-  n：1仮想から論理へのマッピング
-  n：1物理および仮想から論理へのマッピング
上述のように、仮想ノードは、上記のマッピングを減らす方法（PCT  /  EP2014  /  055640、186頁参照）において、物理ノードとして表される：
-  物理マッピングから論理マッピングへの1：1
-  1：n物理マッピングから論理マッピング
-  n：1物理から論理へのマッピング
図3Cに示すように、論理ノードの機能表現は破線の円である。物理/仮想から論理へのマッピングは、マッピングの各方向について任意のコスト値を有することができる。
SDNコンパイラのユーザは、論理ネットワークを定義します。ユーザは、人、ネットワーク管理システム、クラウド管理システム、アプリケーション、別のSDNコンパイラであってもよいが、これに限定されない。論理ネットワークは、任意の論理的な隣接関係を持つ任意の数の論理ノードで構成することができ、結果として任意の論理トポロジーが得られます。一例として、論理ネットワークは、論理ノードがマッピングされた物理および/または仮想ノードが各論理ノードの属性である高レベルプログラミング言語のグラフとして指定することができる。
論理ノードでは、物理リソースと仮想リソースの名前空間から独立した論理名空間を使用します。論理ネットワークは、任意の適切な数の一意の文字で任意の適切な形式で表現され、必要に応じて適切な仮想および物理リソースにマッピングされる論理ノード名に関して定義することができる。このマッピングを変更することにより、論理ネットワークを他の仮想および物理リソースに再マップすることができます。
【００１７】
1：n物理マッピングから論理マッピングでは、複数の論理名を持つ単一の物理リソースに名前を付けることができます。1：n仮想から論理へのマッピングにより、複数の論理名を持つ単一の仮想リソースに名前を付けることができます。論理ネットワークは、物理ネットワークと仮想リソースから独立していることに注意してください。もちろん、物理リソースと仮想リソースの間にはパスが存在するため、物理ネットワークと仮想リソースの抽象化を提供します。
論理ノードの名前は、転送決定を行うために使用されます（PCT  /  EP2014  /  055640の47ページを参照）。論理ノード自体は、インタフェースではなく名前が付けられています。物理ネットワークに類似して、論理ネットワークを論理ノードの集合として定義する。論理ノードは論理リンク（実線で示す）によって相互接続される。論理リンクが双方向である場合、論理リンクは一対の論理ノード間に隣接関係のペアを作成する。論理リンクが単方向である場合、論理リンクは一対の物理ノード間に単一の隣接関係を作成する。論理リンクの組と組み合わされた論理ノードのセットは、ネットワークの論理トポロジを決定する。
論理リンクは、一対の論理ノード間の隣接関係を表すが、論理パスは、ユニキャストネットワーキングの場合に、パケットが論理ソースノードから論理宛先ノードに続く論理ルートを示す。マルチキャストまたはブロードキャストネットワーキングの場合、単一の論理ソースノードと複数の論理宛先ノードとの間に論理的経路関係が存在する。論理パスは、物理的PoAおよび/または仮想PoAのシーケンスであり、これを介して、パケットは、論理ソースノードから論理宛先ノードまで横断する。ここでは、重要な関係に到達しました。論理的な送信元ノードと論理的な宛先ノードの間の関係、および物理PoAと仮想PoAの観点から記述されたパスです。これにより、論理ノード名でネットワークを定義し、定義されたネットワークを、物理的および/または仮想的なネットワーキングおよび/またはコンピューティングリソースの物理PoAおよび/または仮想PoAの観点から命令に翻訳（コンパイル）することが可能になる。
論理ネットワークは、物理ネットワーク、仮想ネットワーク、または結合された物理/仮想ネットワークから作成することができる（PCT  /  EP2014  /  055640の93ページ参照）。また、別の論理ネットワークから論理ネットワークを作成することもできます。曖昧さを避けるために、以下では、深さ（d-1）
のネットワークから作成された深さdのネットワークを参照する。特定の深さを深度dと呼び、dは0(ゼロ)から始まる正の整数です。深さd  =  0はこれまで参照された物理ネットワークまたは仮想ネットワークに等しい。奥行きd>  =  1はこれまで参照されている論理ネットワークに等しい。
【００１８】
結合された物理および仮想ネットワークは、1つまたは複数の層からなる（PCT  /  EP2014  /  055640の91頁参照）。
各層において、ノードは、物理リンクおよび/または仮想リンクによって相互接続することができる。  物理的リンクは、光ファイバケーブル、銅ケーブル、空気を含むが、これに限定されない任意の物理的媒体とすることができる。物理的リンクは、光波長、時分割多重(Time  Division  Multiplexing)（TDM）回路、
マルチプロトコルラベルスイッチング  (Multi  Protocol  Label  Switching)（MPLS）経路などの他のネットワーキング技術によって提供される経路であってもよい。物理リンクは、GREトンネル[GRE  =汎用ルーティングカプセル化  (Generic  Routing  Encapsulation)]、NVGREトンネル[NVGRE  =汎用ルーティングカプセル化を使用したネットワーク仮想化  (Network  Virtualization  using  Generic  Routing  Encapsulation)]、VXLANトンネル[VXLAN  =  仮想拡張可能ローカルエリアネットワーク  (Virtual  Extensible  Local  Area  Network)]。仮想リンクは、仮想スイッチと仮想マシン間の仮想リンク、仮想マシン間の仮想リンク、ネットワークソケットなどの仮想接続とすることができます。レイヤーは上位レイヤーにサービスを提供し、下位レイヤーからサービスを消費する可能性があります。最も低いパケット交換層は、媒体アクセス制御（MAC）を提供する。論理ネットワークは、1つ以上の層で構成されています。
特定のレイヤーをレイヤーnと呼びます。nは、n_minから始まる正の整数で、0（ゼロ）の値を持つことがあります。深さdにおいて、層n  =  n_min（d）を「最下層」と呼ぶ。  （PCT  /  EP2014  /  055640,93,141頁参照）。現在のネットワークにおける層の例は、物理媒体層、周波数または波長分割多重化層、時分割多重化層、データリンク層、ネットワーク層、トランスポート層、アプリケーション層であるが、これらに限定されない。全体的なネットワーク内で、レイヤnはサービスをレイヤ
（n  +  1）に提供し、レイヤ（n  +  1）はレイヤnによって提供されるサービス
を消費する。
各層は、任意の数の階層レベルを有するサブネットワークの階層内の任意の数のサブネットワークからなる。ネットワークはノードに抽象化することができ、別のネットワーク内のノードになることができます。一例として、図2Cに示されるネットワークBAAは、ネットワークネットワーク内のノードに抽象化することができるが、これに限定されない。以下では、あいまいさを避けるために、レベル（h-1）のネットワークからなるレベルhのネットワークを参照し、
最下位階層レベルを深さdおよびレイヤnのh_min（d、n）とみなす（PCT  /  EP2014  /  055640,93および146頁参照）。レベルh_min（d、n）のネットワークはノードです。これは、物理ネットワークと論理ネットワークに適用されます。この用語を使用して、図2Dに示すレベルhの物理ネットワークBAAは、レベル（h-1）における物理ネットワークBA、BB、BC、BDからなる。
上記は、図3A~3Dに示されている（PCT  /  EP2014  /  055640図33A、33B、33C、34A、94頁参照）。図3Aは、同じレベルhにあり、リンクによって相互接続されているネットワークKAおよびKBを示す。図3Aに示すように、ネットワークKAおよびネットワークKBは、他のネットワークにも相互接続することができる。ネットワーク間の関係は、マッピングと呼ばれます。以下で紹介する様々なマッピングのための一貫した命名を得るために、以下の本文のリンクのモデリングにおける隣接関係ではなく、トポロジマッピングを参照します。リンクが双方向である場合、リンクは一対のネットワーク間に一対のトポロジマッピングを作成する。リンクが単方向である場合、リンクは一対のネットワーク間で単一のトポロジマッピングを作成します。トポロジマッピングは、第1のネットワークから第2のネットワークへのマッピングであり、第1および第2のネットワークは同じ深さd、同じレイヤnおよび同じレベルhにある（PCT  /  EP2014  /  055640図49、ページ179参照）
図3Bは、同じレベルhにあるネットワークKA、KB、KC、KDを示す。  ネットワークKAおよびKBは、トポロジマッピングとして表されるリンクによって相互接続されている。ネットワークKAとKCは、リンクによって相互接続され、レイヤーマッピングとして表されます。ネットワークKBとKCは、レイヤーマッピングとして表されるリンクによって相互接続されています。レイヤマッピングは、第1のネットワークから第2のネットワークへのマッピングであり、第1および第2のネットワークは異なるレイヤnにある。
図3Cのネットワークでは、KA、KB、KC、KD、LA、LB、LC、LDが示されている。この図では、各ネットワークは同じレベルhを有する。
階層レベルがh  =  0で始まる場合、
図3Cのh  =  0のネットワークはこれまで参照された「ノード」に等しい。
h  =  1の場合、図3Cのネットワークは、
以下で参照される「ノードのネットワーク」に等しい。
h  =  2の場合、図3のネットワークは、
以下で参照される「ノードのネットワークネットワーク」などに等しい。各ネットワークは、特定の深さdおよび層nに位置する。ネットワークKAおよびKBが深さd、層n、ネットワークKCおよびKDは深度dにあり、層（n  +  1）、
ネットワークLAおよびLBは、深さ（d  +  1）、層n、ネットワークLCおよび
LDは深さ（d  +  1）、層（n  +  1）にある。
特定のレベルhでネットワーク間の3種類のマッピングを区別する（PCT  /  EP2014  /  055640の94,128および129頁参照）：
-  トポロジマッピングは、同じ深度dとレイヤnを持つネットワーク間の隣接関係です。隣接関係はマッピングであることに注意してください。トポロジマッピングは、ネットワーク（d,  n,  h）からネットワーク（d,  n,  h）へのマッピングとして定義されます。図3Aは、図が3次元に限定されるので、2つのネットワーク（KAとKB、KCとKD、LAとLB、LCとLD）間のトポロジマッピングのみを示す。一般に、トポロジマッピングは任意の数のネットワーク間に存在し、通常は2次元レイアウトとして提示され、ここに提示されたSDNコンパイラ方法によってサポートされる。トポロジマッピングは実線で示されています。物理から仮想へのマッピングは、物理ノードと仮想ノード間の特別なタイプのトポロジマッピングです。
-  レイヤマッピングは、異なるレイヤnおよび同じ深さdのネットワーク間の関係です。レイヤマッピングは、（d,  n,  h）のネットワークからd,  n-y,  h）のネットワークへのマッピングまたはd,  n-y,  h）のネットワークからd,  n,  h）のネットワークへのマッピングとして定義されます、yが0より大きくかつn-n_min（d）以下である場合、n_min（d）は深度dで最下位層である。レイヤーマッピングはストライプとして表示されます。
-  深度マッピングは、異なる深さのネットワーク間の関係であるd。深さマッピングは、（d,  n1,  h）のネットワークから（d-x,  n2,  h）のネットワークへのマッピングまたは（d-x,  n1,  h）のネットワークから（d,  n2,  h）のネットワークへのマッピングとして定義され、xはゼロより大きく、  またはdに等しく、n1はn2に等しくてもよい。深度マッピングは破線で示されている。
物理ノードの機能表現は、図3Aに示すように、黒丸の円である。図3Aに示すように、論理ノードの機能的表現は破線の円である。図3Aにおいて、ネットワークKAとネットワークLDとの間、ネットワークKBとネットワークLCとの間、ネットワークKCとネットワークLBとの間、ネットワークKDとネットワークLAとの間の深さマッピングは、図を比較的単純に保つために示されていない。図3Aのトポロジマッピングでは、単一のネットワークKA、KB、KC、KD、LA、LB、LC、またはLDにのみ接続され、  'で終端されたレイヤマッピングおよび深さマッピングが示されている。  。  。  '反対側に。任意の数のレイヤに拡張できることを示しています。単一のネットワークにのみ接続された深度マッピングは、深度マッピングを任意の深さの数に拡張できることを示している。レベルhの単一のネットワークにのみ接続されたトポロジマッピングは、以下に説明するように、レベル（h  +  1）でのトポロジマッピングを示す。
異なるレベルのネットワーク間では、レベルマッピングを考慮します：
-  レベルマッピングは、異なるレベル、
同じ深さd、同じレイヤnのネットワーク間の関係です。
レベルマッピングは、（d,  n,  h）から（d,  n,  h-z）
のネットワークへのマッピングまたは（d,  n,  h-z）のネットワークから（d,  n,  h）のネットワークへのマッピングとして定義されます.zはゼロより大きく、  h-h_min（d、n）に等しく、
h_min（d、n）は深さdおよびレイヤnにおける最低レベルである。
物理ノードではなく、深さd  =  0、レイヤn、レベルh  =  h_min（d、n）のネットワークを参照します。
我々は、論理ノードではなく、深さd>  =  1、レイヤn、レベルh  =  h_min（d、n）のネットワークを参照する。
レベルマッピングが図3Dに示されている。図3Dは、レベルhのネットワーク
KA、KB、KC、KD、LA、LB、LC、LDおよびそれらのトポロジマッピング、レイヤマッピングおよび深度マッピング関係を示す。図3Cに示されたノード
KAとKD、KBとKC、LAとLD、LBとLCとの間の対角レイヤーマッピングは、図を簡略化するためにこの図では省略されている。図3Cに示されたノードKAとLA、KBとLA、KCとLD、KDとLC、KAとLC、KCとLA、KBとLD、KDとLBとの対角線の深さマッピングは、  図を単純化する。図3Dはまた、
レベル（h  +  1）におけるネットワークKAA、KCC、LAA、LCCを示す。
ネットワークKAA（d,n,h+1）は、（d,n,h）にあるネットワークKAおよびKBを含み、言い換えると、ネットワークKAAは、レベルマッピングを介してネットワークKAおよびKBにマッピングされる。
ネットワークKCC（d,n+1,h+1）は、（d,n+1,h）にあるネットワークKCおよびKDを含み、言い換えると、ネットワークKCCは、レベルマッピングを介してネットワークKCおよびKDにマッピングされる。
ネットワークLAA（d+1,n,h+1）にはネットワークLAとLBの両方が（d+1,n,h）にあります。言い換えれば、ネットワークLAAはネットワークLAとLBにレベルマッピングされています。
ネットワークLCC（d+1,n+1,h+1）にはネットワークLCとLDの両方が
（d+1,n+1,h）にあります。言い換えれば、ネットワークLCCはネットワークLCとLDにレベルマッピングされています。
レベルマッピングが図4Aに示されている（PCT  /  EP2014  /  055640図42Aおよび42、146頁参照）。
【００１９】
図4Aは、ネットワークNAA、NCCおよびNEEからなるネットワークNAAA（d,  n,  h+2）を（d,  n,  h+1）で示す。
【００２０】
ネットワークNAAは、（d,  n,  h）のネットワークNAおよびNBからなる。
ネットワークNCCは、（d,  n,  h）のネットワークNCとNDで構成されます。
ネットワークNEEは、（d,  n,  h）のネットワークNEおよびNFからなる。図4Aはまた、（d,  n,  h）におけるネットワーク間のトポロジマッピングを示す。図4Bは、図4AのネットワークNAAA、NAA、NCC、NEE、NA、NB、NC、ND、NEおよびNFのセットの代替表現を示し、（d  =  1、n  =  0  ）。  一例として、（d=1,  n=0,  h=2）のネットワークNAAAは、（d=1,  n=0,  h=1）のネットワークNAA、
NCCおよびNEEからなる。したがって、ネットワークNAAAとネットワークNAAとの間にレベルマッピングが示され、ネットワークNAAAとネットワークNCCとの間にレベルマッピングが示され、ネットワークNAAAとネットワークNEEとの間にレベルマッピングが示される。このように、階層グラフである階層ネットワークは、非階層グラフとして表されることに留意されたい。第1のネットワークから第2のネットワークへのトポロジマッピング、レイヤマッピング、深度マッピングまたはレベルマッピングは、1：1,1：nまたはn：1マッピング（第1のネットワーク：第2のネットワーク）とすることができる（PCT  /  EP2014  /  055640の96ページ参照）。
提案されたアプローチをスケーラブルにするために、以下の形式のネットワークおよびノードの論理的命名における階層を導入する（PCT  /  EP2014  /  055640ページ80参照）：
。  。  。  。  。  ネットワーク・オブ・ネットワーク・オブ・ネットワーク
。ネットワーク・オブ・ネットワーク  。ネットワーク  。ノード
ドット記号  "。"は、論理名が構成するさまざまな要素を区切ります。
私たちはNoNoNs  (Network-of-Networks-of-Networks)としてネットワークオブネットワークオブネットワークを参照します、NoNs  (Network-of-Networks)としてのネットワーク・オブ・ネットワークを参照してください。上記の命名構造は階層を再帰的に導入します：
-  ネットワークは、ノードの集合です
-  NoNsはネットワークの集合です
-  NoNoNsはNoNsのコレクションです
-  上記の使用された命名フォームの定義で「....」と示されているように。
これにより、ネットワーク内に任意の数の階層レベルが作成されます。実際には、実際の制約に限定されています。
上記の構造を使用すると、ノードは次のように配置されます：
。  。  。  。  。ネットワーク・オブ・ネットワーク・オブ・ネットワーク。  ネットワークオブネットワーク。  ネットワーク。  ノード
同様に、ネットワークは次の場所にあります：
。  。  。  。  。ネットワーク・オブ・ネットワーク・オブ・ネットワーク。  ネットワークオブネットワーク。  ネットワーク
同様に、NoNsは次の場所に配置されます：
。  。  。  。  。ネットワーク・オブ・ネットワーク・オブ・ネットワーク。  ネットワーク・オブ・ネットワーク
階層内のさまざまなレベルについても同様です。
各ドット記号「。」はレベルマッピング（PCT  /  EP2014  /  055640の119ページ参照）を表しているので、アドレス構造はレベルマッピングによって表されるネットワークの階層構造に厳密に従う。物理的なネットワーク内では、階層的な命名も使用できることに注意してください。
ここで、アドレスを次の形式に拡張します：
。  。  。  。  。ネットワーク・オブ・ネットワーク・オブ・ネットワーク。  ネットワークオブネットワーク。  ネットワーク。  ノード。  サブ識別子1。  サブ識別子2。  。  。  。  。
「。  。  。  。  。  ネットワーク・オブ・ネットワーク・オブ・ネットワーク。  ネットワークオブネットワーク。  ネットワーク」内の各ドット記号「。」はレベルマッピングを表し、「ノード。  サブ識別子1。  サブ識別子2。  。  。  。  。」内の各ドット記号「。」はレイヤーマッピングを表す。"。  。  。  。  「ネットワーク・オブ・ネットワーク・オブ・ネットワーク」の前に、階層命名を任意の数のレベルに拡張できることが識別されます。「サブ識別子2」の後の「。  。  。  。」は、
アドレスが任意の数の層を含むことができることを識別する。サブ識別子はノードです。層nのサブ識別子は、層（n  +  1）へのサービスを提供する。
【００２１】
このようなサービスに限定されるものではないが、一例として、多重化サービスがある。このアプローチを使用すると、さまざまなレイヤーの論理名を1つの論理アドレス空間にまとめることができます。これにより、複数のレイヤにまたがる論理アドレス空間を使用して転送を実行することが可能になります。これは、ノードを階層的なネットワーク内でそのアドレスを突き止める手段を提供する。さらに、上記のアプローチは、すべてのネットワークを命名階層内の特定のレベルのノードに抽象化する。たとえば、NoNsは、ネットワークがノード間の隣接関係を持つノードの集合で構成されるのと同じ方法で、ネットワーク間の隣接関係を持つネットワークの集合で構成されます。
トポロジー・パスは、トポロジマッピングの連結です（PCT  /  EP2014  /  055640の174ページを参照）。第1のトポロジパスは、第1のトポロジパスと第2のトポロジパスの入れ子を作成する第2のトポロジパスからなることができる。トポロジパスは、次の方法で作成できます:（d、n、h）での0以上のトポロジマッピングと（d、n、h）での0以上のトポロジパスの連結として、（d、n、h）での第1のネットワークから（d、n、h）での第2のネットワークへのトポロジパスを計算して記憶するステップであって、前記トポロジマッピングの数および前記トポロジパスの数は、合計は少なくとも1つです。この方法は、トポロジパスを計算する方法と呼ばれます。  （PCT  /  EP2014  /  055640の181,182頁参照）。1つのトポロジマッピングの連結は、（d、n、h）の第1のネットワークから（d、n、h）の第2のネットワークへの前記トポロジパスが、単一のトポロジマッピング  。説明を比較的簡単にするために、「1の連結」という用語は、ORステートメントを避けるために使用されます。
レベルパスをレベル・マッピングの連結として定義する（PCT  /  EP2014  /  055640の146ページ参照）、第1のレベルパスは、第1のレベルパスと第2のレベルパスのネストを作成する第2のレベルパスを含むことができる（PCT  /  EP2014  /  055640ページ174参照）。次の方法を使用してレベルパスを作成できます:
（d、n）での0以上のレベルマッピングと（d、n）での0以上のレベルパスの連結として、（d、n、h1）の第1のネットワークから（d、n、h2）の第2のネットワークへのレベルパスを計算して記憶するステップであって、前記レベルマッピングの数および前記レベルパスの数は、  合計は少なくとも1つです。
この方法は、レベルパスを計算する方法と呼ばれます。我々は、転送エントリが要求されたレベルパスとしてユーザによって要求されるレベルパスを参照する。
1つまたは複数のトポロジパスおよび1つまたは複数のレベルパスを連結することができるので、（d、n、h1）の第1のネットワークから（d、n、h2）の第2のネットワークへのトポロジーレベルパス  （d、n）における0以上のトポロジパスと（d、n）における0以上のレベルパスと（d、n）におけるゼロ以上のトポロジーレベルパスとの連結として定義される。前記トポロジパスの数および前記レベルパスの数および前記トポロジ・レベルパスの数は、それらの和が少なくとも1つであるような数である、請求項1に記載の方法。この方法は、トポロジーレベルパスを計算する方法と呼ばれます。第1のトポロジー・レベルパスは、第1のトポロジー・レベルパスと第2のトポロジー・レベルパスの入れ子を作成する第2のトポロジー・レベルパスを含むことができることに留意されたい。トポロジ・レベルのパスは、単一のトポロジパスでも、単一のレベルパスでもかまいません。
【００２２】
フォワーディングエントリが要求されたトポロジパス、要求されたレベルパス、および要求されたトポロジーレベルパスとしてそれぞれ要求されるトポロジパス、レベルパスおよびトポロジーレベルパスを参照する（PCT  /  EP2014  /  055640  ページ182）。
【００２３】
一例として、限定されないが、要求されたトポロジパスは、SDNコントローラ、物理ノード、SDNコンパイラのユーザによって要求される可能性がある。そのような要求は、予防的な経路  -  インスタンス化または反応的な経路  -  インスタンス化であり得る。トポロジマッピング、深度マッピング、レイヤーマッピング、レベルマッピング、トポロジパス、レベルパス、トポロジーレベルパスをエッジと呼びます。
一例として、トポロジーレベルのパスは、単一のトポロジパス、単一のレベルパス、単一のトポロジマッピング、または単一のレベルマッピングを含むことができるが、これに限定されないことに留意されたい。
トポロジマッピングは、次のいずれかの方法を使用して作成できます：
トポロジマッピングを計算するための第1の方法であって、以下の動作を含む：
前記第1のネットワークから（d-x,  n2,  h）の第3のネットワークへの深さマッピング、前記第3のネットワークから（d-x,  n2,  h）の第4のネットワークへのトポロジーレベルパスおよび前記第4のネットワークから前記第2のネットワークへの深さマッピングの連結として、（d、n1、h）の第1のネットワークから（d、n1、h）の第2のネットワークへのトポロジマッピングを計算して記憶する、xが0より大きくd以下であり、  ここで、n1はn2に等しくてもよい。
トポロジマッピングを計算するための第2の方法であって、以下の動作を含む：
前記第1のネットワークから（d,  n-y,  h）の第3のネットワークへのレイヤーマッピング、前記第3のネットワークから（d,  n-y,  h）の第4のネットワークへのトポロジーレベルパスおよび前記第4のネットワークから前記第2のネットワークへのレイヤーマッピングの連結として、（d、n、h）の第1のネットワークから（d、n、h）の第2のネットワークへのトポロジマッピングを計算して記憶する、yが0より大きくn-n_min(d)以下であり、n_min（d）は特定の深度dで最下位層であり、n_min（d）は=>  0である  。
トポロジマッピングを計算する第3の方法であって、以下の動作を含む：
前記第1のネットワークから（d,  n,  h-z）の第3のネットワークへのレベルが減少する1つまたは複数のレベルマッピング、前記第3のネットワークから（d,  n,  h-z）の第4のネットワークへのトポロジーレベルパスおよび前記第4のネットワークから前記第2のネットワークへのレベルが増加する1つまたは複数のレベルマッピング
の連結として、（d、n、h）の第1のネットワークから（d、n、h）の第2のネットワークへのトポロジマッピングを計算して記憶する、zが0より大きくh-h_min以下であり、h_minは深度dとレイヤnで最低レベルです  。
トポロジマッピングを計算するための第1の方法および第2の方法で使用されるトポロジー・レベルパスは、トポロジー・レベルパス、トポロジー・パスまたはレベルパストポロジー・パスとトポロジー・レベルパスは、単一のレベルパスで構成できます。トポロジマッピングの作成時に、トポロジマッピングの計算に使用されるトポロジレベルパスは、明示的に作成されたトポロジレベルパスまたはトポロジマッピングとレベルマッピングの連結であるパスのいずれかです。
【００２４】
レイヤマッピングは、次のいずれかの方法を使用して作成できます：
以下の動作を含むレイヤマッピングを計算するための第1の方法：
前記第1のネットワークから（d-x,  n2,  h）の第3のネットワークへの深さマッピング、前記第3のネットワークから（d-x,  n2-y,  h）の第4のネットワークへの0以上のレイヤーマッピングよび前記第4のネットワークから前記第2のネットワークへの深さマッピングの連結として、（d、n1、h）の第1のネットワークから（d、n1-y、h）の第2のネットワークへのレイヤーマッピングを計算して記憶する、xが0より大きくd以下であり、yが0より大きくかつn1-n1_minより小さくかつn2-n2_min以下であり、n1_minは深度dで最下位層であり、n2_minは深度d-xで最下位層である。
レイヤマッピングを計算する第2の方法であって、以下の動作を含む：
前記第1のネットワークから（d-x,  n2,  h）の第3のネットワークへの深さマッピング、前記第3のネットワークから（d-x,  n2+y,  h）の第4のネットワークへの0以上のレイヤーマッピングよび前記第4のネットワークから前記第2のネットワークへの深さマッピングの連結として、（d、n1、h）の第1のネットワークから（d、n1+y、h）の第2のネットワークへのレイヤーマッピングを計算して記憶する、xが0より大きくd以下であり、yが0より大きくかつn1_max-n1より小さくかつn2_max-n2以下であり、n1_maxは深さdで最高の層であり、n2_maxは深さd-xで最高の層である。
レイヤマッピングを計算するための第1の方法では、第3および第4のネットワークは、（d-x,  n2,  h）または（d-x,  n2-y,  h）の同じネットワークとすることができることに留意されたい。  レイヤマッピングを計算する第2の方法では、第3および第4のネットワークは、（d-x,  n2,  h）または（d-x,  n2+y,  h）の同じネットワークとすることができることに留意されたい。
【００２５】
レイヤnの第1のノードからレイヤ（n-1）の第2のノードへのレイヤマッピング後にトポロジマッピングが行われると、ノードKAのような多重化アクションが生じる（例えば、  PCT  /  EP2014  /  055640ページ236）。したがって、SDNコンパイラは、機器レベルではなくコンポーネントレベルで転送エントリを提供するときに、物理ノードの多重化および逆多重化機能を認識する必要があります。一例として、要素管理システム（EMS）によって多重化および逆多重化機能をSDNコンパイラに提供することができるが、これに限定されない。
各エッジの名前をつけ、マッピングおよびトポロジーレベルパスを示すために図6A〜6Dに示す表記を使用する（PCT  /  EP2014  /  055640図51A〜51D、182ページ参照）。図6Aは、第1のエッジ名を有する第1のマッピングに使用される表記を示し、第1のマッピングは第1のマッピング・タイプであり、第1のマッピング・タイプはトポロジマッピング、深度マッピング、レイヤーマッピングまたはレベル・マッピングである  第1のネットワークを第2のネットワークに接続する。第1のアタッチメントポイント  (Point-of-Attachment)（PoA）における第1のネットワークおよび第1のマッピング・インターフェース、第2のPoAにおける第2のネットワークおよび第1のマッピング・インターフェース。第1のPoAおよび第2のPoAはオプションである。  マッピングの方向を示す  '  -  （）  -  >'記号。
上記の図3Cに示すネットワークKA、KB、KC、KD、LA、LB、LC、LDおよびネットワークKAとネットワークとの間のトポロジマッピングを示す図5Aの例によるエッジおよび表記の命名を説明する。  KB、ネットワークKAとネットワークKCとの間のレイヤーマッピング、およびネットワークKBとネットワークKDとの間のレイヤーマッピング。図5Aはまた、ポイントオブアタッチメント（PoAs）p701からp706を示す。
ネットワークKA、KB、KCおよびKDは物理ネットワークであるため、ネットワークKAとネットワークKBとの間のトポロジマッピングは物理リンクを表し、ネットワークKAとネットワークKCとの間のレイヤマッピングは物理リンクを表し、  ネットワークKBおよびネットワークKDは、物理リンクを表している。物理リンクは一方向または双方向であり得るため、第1のネットワークから第2のネットワークへのトポロジマッピング、深度マッピング、レイヤマッピング、レベルマッピング、トポロジパス、レベルパスまたはトポロジレベルパスを表す。  グラフ内の有向枝によって第2のネットワークに接続される。
これは図5Bに示され、ネットワークKA、KB、KC、KD、LA、LB、LC、LD、トポロジマッピング、レイヤーマッピング、および深さマッピングを示す。図7Aは、図6Aの表記における図5Bのマッピングを示す。一例として、ネットワークKAからネットワークKBへのL5という名前のトポロジマッピングはで表される：L5=KA-(トポロジマッピング  p701::p702)->KB、ここで、「トポロジマッピング」は「トポロジマッピング」を指します。  同様に、「深さマッピング」は「深度マッピング」を、「レイヤーマッピング」は「レイヤーマッピング」を、「レベルマッピング」は「レベルマッピング」を、「トポロジパス」は「トポロジパス」を、「レベルパス」は  使用されている表記法の  'レベルパス'に変換されます。任意選択的に、深度マッピング、レイヤーマッピング、およびレベルマッピングの方向をマッピングタイプに含めることができる（PCT  /  EP2014  /  055640ページ180参照）。
図6Aと同じ表記を使用して、図6Bは、第2のエッジ名を有する第2のマッピングを示し、第2のマッピングは、第2のネットワークから第3のネットワークへの第2のマッピングタイプである。図5Cに示すように、上述のトポロジマッピングを計算するための第1の方法を適用することによって、ネットワークLAからネットワークLBへのL14という名前のトポロジマッピングを計算して格納し、ネットワークLAからネットワークKAへのL12という深さマッピングの連結として、ネットワークKAネットワークKBからのL11という名前のトポロジパス、ネットワークKBからネットワークLBへのL13という名前の深度マッピングと、ネットワークKAからネットワークKBへのL11という名前のトポロジパスは、ネットワークKAからネットワークKBへのL5という名前の単一のトポロジマッピングを含む。
【００２６】
あるいは、L11という名前のトポロジー・パスの作成も省略でき、L14という名前のトポロジマッピングは、トポロジマッピングL5から直接作成できました。図5Cにおいて、ネットワークKAからネットワークKBへのL5という名前のトポロジマッピングは、トポロジマッピングL5がトポロジパスL11を計算するために使用されることを示すL5  /  L11でラベル付けされている。  言い換えれば、トポロジパスL11は、トポロジマッピングL5にマッピングされる。
2つのエッジ間の関係は、第2のエッジが第1のエッジに多重化またはマッピングされ、「第1のエッジ/第2のエッジ」によってフォワードスラッシュ記号を使用してそのようなエッジ関係を表すエッジ関係として参照されます。一例として、図5Cに示すようなL5  /  L11を、エッジ名L5によって示されるトポロジマッピングとエッジ名L11によって示されるトポロジパスとの間のエッジ関係として参照し、ここではL11と名付けられたトポロジパスがマップされる  L5という名前のトポロジマッピングに変換します、言い換えれば、トポロジマッピングL5がトポロジパスL11を計算するために使用される。図5Cでは、そのようなエッジをラベリングするときに、エッジの名前が太字で示されている。
図6Cは、第3のエッジ名を有する第3のエッジの表記を示し、第3のエッジは第3のエッジタイプであり、第1のエッジと第2のエッジの連結であり、プラス記号は連結を示し、前方スラッシュ記号  エッジ関係を表す。例として、図7Bは、図6Cの表記を使用して、L14という名前のトポロジマッピングを「トポロジマッピング  L14  =  L12/L14+L11/L14+L13/L14」として作成し、L11という名前のトポロジパスを「トポロジパスL11  =  L5/L11」として作成することを示す。
図5Dに示すように、レイヤマッピングを計算するための第1の方法および第2の方法を適用することによって、ネットワークLCからネットワークLAへのレイヤマッピングL19を計算し、ネットワークLCからネットワークKCへのL17という名前の深さマッピング  ネットワークKCネットワークKAからのL7という名前のレイヤーマッピングと、ネットワークKAからネットワークLAへのL15という深さマッピングとを含む。そして、ネットワークLBからネットワークLDへのレイヤーマッピングL20を計算し、ネットワークLBからネットワークKBへのL16という名前の深さマッピングと、ネットワークKBからネットワークKDへのL10という名前のレイヤーマッピングと深度  ネットワークKDからネットワークLDにL18という名前のマッピング。
【００２７】
図5Eに示されるように、トポロジマッピングを計算するための第2の方法を適用することにより、ネットワークLCからネットワークLDへのL22という名前のトポロジマッピングを、ネットワークLCからネットワークLAへのレイヤマッピングL19の連結として計算して記憶する  ネットワークLAネットワークLBからのL21という名前のトポロジパスと、ネットワークLBからネットワークLDへのL20という名前のレイヤーマッピングとを含む。ネットワークLAからネットワークLBへのL21という名前のトポロジパスは、ネットワークLAからネットワークLBへのL14という名前の単一のトポロジ・マッピングから成る。
【００２８】
図5Fに示すように、ネットワークLCからネットワークLDまでのL22という名前の単一のトポロジマッピングとして、ネットワークLCからネットワークLDへのL23という名前のトポロジパスを計算して格納する。
図7Bは、図6Cの表記を使用するトポロジパスL11、L21およびL23、トポロジマッピングL14およびL22、ならびにレイヤマッピングL19およびL20の作成を示す。  図5Fに示すエッジ関係は、再帰を介してエッジ関係の集合を計算するために使用することができる。ここで、「再帰」という用語は、数学的再帰操作を指す。  前記エッジ関係のセットは、ネストされたエッジ関係からなる。ここで、「ネストされたエッジ関係」における「ネスト」という用語は、数学的にネストされた形式を有するエッジ関係を指す。
一例として、ネットワークKAからネットワークKBへのトポロジマッピングはエッジ関係L5  /  L11を有し、ネットワークKAからネットワークKBへのトポロジパスはエッジ関係L11  /  L14、ネットワークからのトポロジマッピング  LAからネットワークLBへのエッジ関係L14  /  L21、ネットワークLAからネットワークLBへのトポロジパスはエッジ関係L21  /  L22、ネットワークLCからネットワークLDへのトポロジマッピングはエッジ関係L22  /  L23、トポロジ  ネットワークLCからネットワークLDへのパスは名前L23を有するため、ネットワークKAからネットワークKBへのL11という名前のトポロジマッピングは、エッジ関係L5  /  L11  /  L14  /  L21  /  L22  /  L23の例セットを有する。単一のエッジ関係と、エッジ関係の集合として再帰を組み合わせた2つ以上のエッジ関係を参照します。第1の例は、L5と命名されたトポロジマッピングのエッジ関係の組の限定ではないが、L5  /  L11  /  L14  /  L21  /  L22  /  L23である。  第2の例は、L5と名付けられたトポロジマッピングのエッジ関係のセットのうちのL5  /  L14  /  L23であるが、これに限定されない。
エッジ関係のセットにおける最初のエッジ名は前記エッジの名前であることに留意されたい。  再帰を介して要求されたトポロジパスL23の再帰パスを計算し、各エッジのエッジ関係の集合に入れ子になったエッジ関係を格納する。ここで、再帰パスは、数学的手法として再帰を使用して計算されるパスとして定義されます。再帰的パスの例は、図5FのL23である。
図7Cは、ネットワークLCからネットワークLDへのL23という名前のトポロジパスの再帰パスの計算を示す。図5Fに示されるように、上記では、ネットワークLCからネットワークLDへのL22という名前の単一トポロジマッピングとして、ネットワークLCからネットワークLDへのL23という名前のトポロジパスを計算して格納し、図7BのL23という名前のトポロジパスを  上記の表記に従って、ステップ1に示されている「トポロジパスL23  =  L22/L23」。図7Bに示す関係を使用して、図7Cのステップ5に示すように、再帰パスと各エッジのネストされたエッジ関係を含むエッジ関係の集合を再帰的に計算する。図7Cのステップ2〜4は、計算の中間ステップである。図6Dには、図6A、図6Bおよび図6Cの表記を使用して、トポロジパス、レベルパスまたはトポロジーレベルパスの表記が示されている。図7Cのステップ6では、図7Cのステップ5を図7Aと組み合わせることによって、図6Dの表記を使用して、ステップ5の再帰パスが示される。
ここでは、一連の階層型ネットワークにエッジの名前を付けることにします。  図8は、ネットワークNAAA、NAA、NCC、NEE、NA、NB、NC、ND、NE、NF、QA、QB、QC、QD、QE、QFおよび（d=0,  n=0,  h=0）におけるトポロジマッピング、  （d=1,  n=0,  h=0）および深度マッピングは、図4Aおよび図4Bに示すネットワークの有向枝を用いた表現である。ネットワークNAAとネットワークNAAAとの間のレベルマッピングなどであるがこれに限定されないレベルhの第1のネットワークとレベルh  +  1の第2のネットワークとの間の関係である図4Bのレベルマッピングはそれぞれ、ネットワークNAAからネットワークNAAAへのレベルマッピングおよびネットワークNAAAからネットワークNAAへのレベルマッピングのような、限定されるものではないが有向エッジである一対のレベルマッピングがある。ネットワークNAAからネットワークNAAAへのレベルマッピングはJ22と命名され、図8に示されている。ネットワークNAAAからネットワークNAAへのレベルマッピングはJ47と命名され、図8に示されている。
PCT  /  EP2014  /  055640（図53E）は、図6Aの記法による物理トポロジマッピング、深さマッピングおよびレベルマッピングを説明している。図8に示すように、ネットワークNAAからネットワークNCCへのJ30という名前のトポロジマッピングを、ネットワークNAAからネットワークNBへのレベルマッピングJ17と、ネットワークNBネットワークNCからのJ29という名前のトポロジパスと、  ネットワークNCからネットワークNCCへのJ18という名前のレベルマッピング。ネットワークNBからネットワークNCへのJ29という名前のトポロジパスは、上述したトポロジマッピングを計算する第3の方法を使用して、ネットワークNBからネットワークNCへのJ25という名前の単一のトポロジマッピングを含む。ネットワークNCCからネットワークNDへのレベルマッピングJ19、ネットワークNDネットワークへのJ27という名前のトポロジマッピング、およびネットワークNDNからのレベルマッピングの結合として、ネットワークNCCからネットワークNEEへのJ31という名前のトポロジマッピングを計算して保存します。J20をネットワークNEからネットワークNEEに送信し、上述したトポロジマッピングの計算の第3の方法を使用している。J30およびJ31という名前のトポロジマッピングを作成することにより、ノードNAA、NCC、およびNEE間の転送動作を指定できます。当業者には理解されるように、トポロジマッピングの作成は、任意の数の階層レベルで繰り返すことができる。  PCT  /  EP2014  /  055640（ページ  213）は、レベルパスがどのようにトポロジパスに変更されるかを記述する。
パケット交換ノードを含むパケット交換ネットワーク（Packet  Switched  Network：PSN）においてパケット転送またはスイッチングを可能にするため、または非パケット交換ネットワークにおいて物理信号の中継またはスイッチングを可能にするために、上記では、0または1つのスイッチング識別子  トポロジマッピング、トポロジー・パス、レベルパス、およびトポロジー・レベルパスが含まれます。  （PCT  /  EP2014  /  055640ページ188参照）。スイッチング識別子は、ネットワークおよびトポロジマッピングを含むトポロジが作成される深度dおよびレイヤnに依存する。特定の深さdおよび層nのネットワークは、すべてパケット交換ネットワークまたはすべての非パケット交換ネットワークである。特定の深さdおよび層nのノードは、すべてパケット交換ノードまたはすべての非パケット交換ノードである。以下の種類のスイッチング識別子を区別しますが、これらに限定されません：
i.  深さd  =  0のスイッチング識別子と、
物理的信号からなる任意の層nとで、深さdと層nのノードは非パケット交換ノードである。
ii.  深さd  =  0におけるスイッチング識別子と、媒体アクセス制御（MAC）を実行する層とを含み、深さdおよび層nにおけるノードはパケット交換ノードである。
iii.  任意の深さdおよび論理識別子を含む任意の層nにおける交換識別子を含み、深さdおよびnのノードはパケット交換ノードである。
PCT  /  EP2014  /  055640（189~192ページ）は、タイプi）、タイプii）およびタイプiii）のスイッチング識別子の例を記載している。
深さd、層nにある第1のネットワークの前または作成時に、例えば、ネットワーク管理者（PCT  /  EP2014  /  055640の191ページ参照）などのユーザによってSDNコンパイラに指示されるべきである：
i.前記深さdと前記層nのネットワークがパケット交換網か非パケット交換網かを判定する
ii.  前記深さd及び前記層nのための交換識別子を構成する方法。  PCT  /  EP2014  /  055640（第192頁、第201〜203頁）は、スイッチング識別子を構成する方法の例を記載している。
【００２９】
これは、前記深さdおよび前記層nの初期化時に行われる。なぜなら、この情報は、前記深さdおよび前記層nにおける各ネットワークについて同一であるからである。これは、前記深さdおよび前記層nの初期化時に行われるので、SDNコンパイラのユーザは、作成された各ネットワークでこの情報を指定する必要がない。上記のi）の情報は、物理パケット交換ノードの転送エントリの作成方法を選択するか、物理的な非パケット交換ノードの転送エントリの作成方法を選択するためにSDNコンパイラによって使用されます。
この方法では、要求されたトポロジーレベル経路の前記再帰パス転送エントリから計算する。再帰パスには、d  =  0、h  =  h_minが物理ノードである各ノードの次の情報が含まれます。PCT  /  EP2014  /  055640の192および193ページ参照）各ノードについて以下の情報を含む：
-  パケットまたは信号として入力ポートを持たない再帰パス内の第1のノードを除いて、物理または仮想ノードとトポロジマッピングまたはレイヤーマッピングとの間のPoAである入力ポートが作成される  再帰的パスの第1のノードによって実行される
-  パケットまたは信号の受信時に出力ポートを持たない再帰パス内の最後のノードを除いて、物理ノードまたは仮想ノードとトポロジマッピングまたはレイヤーマッピングの間のPoAである出力ポート  再帰的パスの最後のノードによって行われる。
さらに、エッジ関係のセットが各エッジに対して計算された場合、再帰パスには以下も含まれます：
-  着信トポロジマッピングまたはレイヤーマッピングで着信エッジ関係のセット。ただし、着信トポロジマッピングまたはレイヤーマッピングを持たない再帰パスの最初のノードは例外です
-  送信トポロジマッピングまたはレイヤーマッピングで発信エッジ関係のセット。送信トポロジマッピングまたはレイヤーマッピングを持たない再帰パスの最後のノードを除きます
上記の入力ポート、出力ポート、着信エッジ関係のセット、発信エッジ関係のセット、およびスイッチング識別子の組み合わせにより、物理ノードの転送エントリ（転送命令とも呼ばれる）がさらに説明される。  以下の例。再帰パス内の各物理ノードの転送エントリは、入力ポート、出力ポート、着信セットのエッジ関係のスイッチング識別子、および出力セットのエッジ関係のスイッチング識別子を含む。転送エントリの上には、直接的または間接的に、再帰的パス内の物理ノードにSDNコントローラを介して一例として送信されますが、これに限定されません。
PCT  /  EP2014  /  055640（197頁）は、ノードに関して、着信エッジ関係のセット内のエッジの数が、関連する着信セットのエッジ関係を決定することによって低減され得ることを記載している。ノードに関して、エッジ関係の関連する着信セットは、着信トポロジマッピングの着信トポロジマッピングのセット、または前記ノードの深さ、レイヤ、レベル、およびすべてのネットワークの深度、レイヤ、レベルにおける着信レイヤマッピングである  1つまたは複数の深度マッピングを介して前記ノードにマッピングされた再帰的パス内に存在する。PCT  /  EP2014  /  055640（197頁）は、ノードに関して、一連の出力エッジ関係の中のエッジ数が、関連する出力エッジ関係のセットを決定することによって低減され得ることを記載している。ノードに関して、関連する出力エッジ関係のセットは、前記ノードの深さ、層、レベル、およびすべてのネットワークの深度、層、レベルでの出力トポロジマッピングまたは出力レイヤーマッピングのエッジ関係のセットである  1つまたは複数の深さマッピングを介して前記ノードにマッピングされた再帰的パス内に存在する。
適切な転送命令を作成するために、パケット交換ネットワーク（Packet-Switching  Network  :  PSN）の物理ノードと非PSNの物理ノードを区別します。物理的パケット交換ノードと呼ばれるPSNの物理ノードは、パケットの転送および統計的多重化を実行する。物理的非パケット交換ノードと呼ばれる非PSNの物理ノードは、物理的信号の中継および多重化を行う。非PSNの例は、回線交換ノード（Circuit  Switching  Node:  CSN）であるが、これに限定されるものではない。非PSNの例は、物理的信号の多重化を実行する無線ネットワーク内のノードであるが、これに限定されるものではない。  PCT  /  EP2014  /  055640（193頁および194頁）は、物理的なパケット交換ノードのための転送エントリの計算を記載している。PCT  /  EP2014  /  055640（195および196頁）は、物理的非パケット交換ノードのための転送エントリの計算を記載している。PCT  /  EP2014  /  055640（198〜200頁）は、2つ以上の物理的ノードからなる物理的機器のための単一の転送エントリの作成について説明している。
上述の方法ごとにトポロジマッピング、レイヤマッピング、トポロジパス、レベルパスまたはトポロジーレベルパスを作成する場合、
任意選択で、前記トポロジマッピング、レイヤマッピング、トポロジパス、レベルパスまたはトポロジーレベルパス（PCT  /  EP2014  /  055640の221ページ参照）を作成する際に、1つまたは複数の要件が考慮される。前記トポロジマッピング、レイヤーマッピング、トポロジパス、レベルパスまたはトポロジーレベルパスが前記1つまたは複数の要件に準拠する場合のみ、前記トポロジマッピング、レイヤーマッピング、トポロジパス、レベルパスまたはトポロジーレベルパスが作成される。つまり、トポロジマッピング、レイヤマッピング、トポロジパス、レベルパスまたはトポロジレベルパスの要件が作成されるのは、レベルパスは、計算された前記トポロジマッピング、レイヤーマッピング、トポロジパス、レベルパスまたはトポロジーレベルパスによって計算される。要求されたトポロジパス、レベルパスまたはトポロジーレベルパスは、ユーザのためのサービスとみなすことができる（PCT  /  EP2014  /  055640ページ222参照）。
前記ユーザが人、組織、アプリケーションである例が挙げられるが、これに限定されない。典型的には、前記サービスの要件は、前記ユーザと前記サービスのプロバイダとの間のサービスレベル契約（SLA）である契約に格納される。当業者には理解されるように、上記の方法は、前記サービスの前記プロバイダが、前記サービスを確立するときに使用され得る前記より複雑な要件に基づいて、より豊かなサービスを提供することを可能にする。エッジ関係は、一連のネットワークにおける変更の影響を判断するために使用されます。一例として、図50Cに示すように、ネットワークKAからネットワークKBへのL5という名前のトポロジマッピングは、エッジ関係L5  /  L11を有するため、L5という名前の第1のエッジが変更された場合、L11  影響を受ける。L5という名前のトポロジマッピングが削除された場合、例えば、これに限定されないが、トポロジマッピングL5が切断される物理的ファイバリンクである場合、エッジ関係L5  /  L11に従って、L11というトポロジマッピングが影響を受ける  、SDNコンパイラによって再計算する必要があります。図50Fの例のように、トポロジパスL23が要求されたトポロジパスであり、トポロジパスL23が再計算できない場合、要求されたトポロジパスのサービスレベルアグリーメント（SLA）に違反する。
記載された方法は、ネットワークのセットにおける多層の存続可能性を可能にすることに留意されたい。また、記述された方法は、SLAのより深い分析を可能にすることに留意されたい。  一例として、多数の故障シナリオをこの方法によって記憶された情報からシミュレートすることができ、1つまたは複数のSLAへの影響を判定することができる。これに限定されない例として、前記SLA違反の発生ペナルティに対するSLA違反確率のチェックを可能にする。記載された方法は、各SLA違反を記憶することを可能にし、したがって前記SLAのためのレコードを構築することに留意されたい。
SDNコンパイラは、パケット交換ノードと非パケット交換ノードの両方のための命令を作成する統一的な方法を提供するため、非パケット交換ネットワークの場合にもエントリを転送することを参照する。非パケット交換ネットワークの場合の転送エントリは、前記入力信号を任意に変更した後に入力ポートにおける入力信号を出力ポートにどのように中継すべきかを指定する命令である。
限定ではないが、WDM  ROADMの場合、SDNコンパイラは、入力ポートにおける入力波長を、クロスコネクトとも呼ばれる、出力ポートにどのように中継すべきかを指定する命令を作成する。  例えば入来する波長の周波数を変化させるような、上記の入来波長を有する。転送エントリは、直接的または間接的に、再帰パスの物理ノードにSDNコントローラを介して送信されますが、これに限定されません。
説明された方法は、グラフデータベースを使用して実施することができ、ネットワーク、マッピング、トポロジー・パス、レベルパスおよびトポロジー・レベルパスがグラフ・データベースに格納され、ネットワークはグラフデータベースに名前付き頂点として格納され、トポロジマッピング、深度マッピング、レイヤマッピングまたはレベルマッピングであるマッピングが、名前付きおよび有向エッジとしてグラフデータベースに格納され、トポロジー・パス、レベルパスまたはトポロジー・レベルのパスが、名前付きおよび有向エッジとしてグラフ・データベースに格納され、前記ネットワークの特性が前記グラフデータベースに頂点属性として格納され、前記マッピングの特性が前記グラフデータベースにエッジ属性として格納され、前記トポロジー経路、レベル経路またはトポロジーレベル経路の特性が前記グラフデータベース（PCT  /  EP2014  /  055640図57の145および230頁参照）にエッジ属性として記憶されていることを特徴とする方法。
マッピングのタイプおよび前記マッピングの方向は、前記グラフデータベースにエッジタイプとして格納することができる。トポロジー・パス、レベルパスまたはトポロジー・レベルパスであるトポロジー・レベルパスのタイプは、前記グラフ・データベースにエッジ・タイプとして格納することができる。マッピングのタイプの一例および前記マッピングの方向は、深度マッピングの増加である。複数のエッジタイプをサポートするグラフデータベースは、通常、プロパティグラフをサポートするグラフデータベースと呼ばれます。グラフデータベースは、典型的には、プロパティを有する頂点とプロパティを有する有向エッジとからなるプロパティグラフモデルに基づいているが、これに限定されない。
SDNコンパイラメソッド内のネットワークプロパティは、
頂点プロパティとして格納できます。そのような頂点特性は、頂点属性とも呼ばれ、上述したSDNコンパイラ法のネットワーク関連入力と、例えば、これに限定されるものではないが、物理または仮想ノードの地理的経度、地理的緯度  物理ノードまたは仮想ノードとノードの稼働時間の合計。SDNコンパイラメソッド内のトポロジマッピング、レイヤーマッピング、およびデプスマッピングのプロパティは、エッジプロパティとして保存できます。
【００３０】
トポロジマッピングを計算する第1の方法、トポロジマッピングを計算する第2の方法、トポロジマッピングを計算する第3の方法、レイヤマッピングを計算する第1の方法、レイヤマッピングを計算する第2の方法、  トポロジー・パスを計算する方法、レベルパスを計算する方法、およびトポロジー・レベルパスを計算する方法を使用して、マッピングまたはトポロジー・パス、レベルパスまたはトポロジー・レベルのパスを作成または再計算したり、  パスは、グラフデータベース内のクエリとして実装することができます。
このようなクエリには、上記の追加の要件を含めることができます。
一例として、限定ではないが、トポロジマッピングを計算するための第1の方法のクエリは、第1のノードから第3のノードまで深さが減少する深度マッピングと一致する第1のノードから第2のノードまでの経路のグラフデータベースクエリであり、第4のノードから前記第2のノードへと深さが深くなる深度マッピングをマッチングするステップと、前記第3のノードから第4のノードへのトポロジパスを照合するステップとを含む方法。オプションとして、追加の要件を前記の例のクエリで指定することができる。
ここで、図9に示すように、データベース、イベントハンドラおよびインストラクタを含む例示的なSDNコンパイラ装置を考える（参照：PCT  /  EP2014  /  055640図57、ページ232）。図9はまた、SDNコンパイラのユーザ、1つ以上のSDNコントローラ、および1つ以上の物理的なSDNノードを示す。ネットワークに格納されているネットワーク、トポロジマッピング、深度マッピング、レイヤーマッピング、レベルマッピング、トポロジパス、レベルパス、トポロジーレベルパスのすべての情報。このようなデータベースの例としては、グラフデータベースが挙げられるが、これに限定されるものではない。イベントハンドラは、ユーザー、1つまたは複数のSDNコントローラ、およびデータベースからのすべての着信イベントを処理します。あるいは、データベースは自身に直接問合せを行うこともできますが、イベント処理およびデータベースへの優先順位付けのデータベース要求を、イベント・ハンドラを介したデータベース・フローに許可することができます。イベントハンドラはイベントの優先順位付けを可能にし、クエリ攻撃からデータベースを保護します。
インストラクターは、このトポロジパス、レベルパスまたはトポロジーレベルパスがデータベースに作成された後、ユーザーが要求したトポロジパス、レベルパスまたはトポロジーレベルパスの転送エントリを作成します。1つまたは複数のSDNコントローラがイベントハンドラに要求を送信できます。  あるいは、1つまたは複数のSDNコントローラをポーリングする追加のモニタを使用することもできます。
図9には、以下のメッセージフローが示されている：
51例えば、GET要求、スクリプティング、コマンドインタフェース、GUIのような、ユーザ対イベントハンドラ。
52  SDNコントローラからイベントハンドラへ
53再計算およびエラー報告をトリガする要件違反などのデータベースのイベントハンドラ。
54  イベント・ハンドラーからデータベースへのデータベース照会+アクション
55要求されたトポロジパス  、レベルパスまたはトポロジー・レベルパス情報を含むデータベースへのデータベース
56  コントローラへのインストラクター、転送命令を含む
57  イベントハンドラからユーザへ、エラー報告など
58  たとえば、表示、エラー報告などのためにデータベースからユーザーへ
59  ユーザーにインストラクター、エラー報告、統計など
60  コントローラへのノード、例えば、エラー報告、状態報告
61  SDNコントローラからノードへ、転送手順を含む
前記イベントハンドラは、SDNコンパイラのユーザによって指定された論理ネットワーク仕様を、そのような論理ネットワーク仕様を作成するための方法のいずれかを使用するデータベースクエリに翻訳することに留意されたい。  トポロジマッピング。
SDNコンパイラは、パケット交換ノードと非パケット交換ノードの両方のための命令を作成するための一貫したアプローチを提供するため、パケット交換ネットワークでない場合にも転送エントリを参照する（PCT  /  EP2014  /  055640  196ページ）。非パケット交換ネットワークの場合の転送エントリは、前記入力信号を任意に変更した後に入力ポートにおける入力信号を出力ポートにどのように中継すべきかを指定する命令である。上記の方法が適用される論理ノードおよびネットワークが存在しない非パケット交換ネットワークでは、第2の方法を使用してトポロジマッピングを作成して1つまたは複数のトポロジマッピングを作成し、転送エントリを使用して  非パケット交換ノードの転送エントリを計算する方法、エッジを再計算することができ、一連の要件に従ってサービスを要求することができる。限定ではないが、一例として、上記の方法は、グラフデータベースを使用して実施することができる。
PCT  /  EP2014  /  055640（207頁から211頁、図52N）は、論理ノードを作成する代わりに、物理ノードおよび/または物理トポロジマッピングおよび/または物理PoAに論理名を割り当てることができることを記載している。
【００３１】
PCT  /  EP2014  /  055640（234~240頁、図59B）は、論理ノードの有無にかかわらず非パケット交換ネットワークの例を記載している。
【００３２】
マルチテナントをサポートし、各テナントに別のテナントから隔離された独自のアドレス空間を提供するためには、各テナントのネームスペース内の最上位レベルのネットワークは、他のテナントとの隔離を確保するためにグローバルに一意でなければなりません。一例として、最高階層レベルはIPv6フローラベルであってもよいし、テナントを示すために再識別されたIPv4識別フィールドであってもよい。当業者には理解されるように、SDNコンパイラ方法を記述するために使用された上記の例で使用された比較的単純なトポロジよりもはるかに複雑なトポロジがSDNコンパイラによってサポートされる。当業者には理解されるように、マルチキャスト、トンネリング、ラベルスイッチングなどであるが、これに限定されない、上述の様々な方法が本発明の範囲に含まれる。
PCT  /  EP2014  /  055640に記載されているSDNコンパイラ方法は、
論理ノード、論理トポロジマッピング、およびオプションで論理レイヤーマッピングの要件に基づいて、深度マッピングを決定し、異なる深度のノードをSDNコンパイラによって決定する  SDNコンパイラのユーザによって実行される。
前記拡張により、SDNコンパイラのユーザは、論理ノード、論理ノードの要件、論理トポロジマッピングおよび論理トポロジマッピングの要件を指定することができ、任意選択で論理レイヤーマッピングおよび論理レイヤーマッピングの要件SDNコンパイラが物理的および/または仮想的なリソースを決定していると言い、物理ノードと物理リンクとからなり、前記論理仕様をコンパイルすることができ、これにより、深さマッピング、物理トポロジパス、およびオプションで物理レイヤーマッピングによって表されるように、論理ノードと物理ノードとの間の関係が決定される。
【００３３】
一例として、限定するものではないが、SDNコンパイラのユーザは、論理計算を示す第1の論理ノードと、前記第1の論理ノードから前記第2の論理ノードへの論理計算およびトポロジマッピングを示す第2の論理ノードと、  前記SDNコンパイラが、前記論理仕様をコンパイルすることができる物理的及び/又は仮想的リソースを決定し、それにより、前記論理的ノードと前記物理ノードとの間の関係を決定するステップと、  マッピング、物理トポロジパス、およびオプションで物理レイヤマッピングが含まれます。
この方法は、図11A〜図11Iおよび図12A〜図12Jに示される第1の例を用いて説明される。この方法は、任意の全体ネットワークに適用することができ、提示された例に限定されないことに留意されたい。
【００３４】
図11Aに示すように、FE、FFおよびFGという3つの論理ノードを考える。論理ノードFEおよびFGは論理ホストノードであり、論理ノードFFは論理スイッチノードである。図11Aはまた、論理ノードFEから論理ノードFFへのトポロジマッピングと、論理ノードFFから論理ノードFGへのトポロジマッピングとを、グラフの有向エッジとして表す。SDNコンパイラのユーザは、図11Aに示す論理ノードFE、FF、FGおよびトポロジマッピングを指定する。
図11Aに示す論理仕様をコンパイルすることができる物理ノードおよび物理リンクからなる物理および/または仮想リソースをSDNコンパイラに決定させることが我々の目標である。
そのために、「既知の物理ノード」と「未知の物理ノード」を定義します。
ネットワークモデルでは、論理ノードは、深さマッピングを介して「既知」および/または「未知」の物理ノードにマップすることができます。「既知の物理ノード」は、ネットワーク内に存在する、またはまだセットアップ（仮想）ノードである「物理ノード」であり、その物理ノード名は、コンパイラが直接的または間接的にアクセス可能な1つまたは複数のデータベースに格納される。以下では、「既知」のラベルは、文脈でそのように要求されない場合には必ずしも使用されるとは限りません。「未知の物理ノード」という用語は、論理ノードが深さマッピングによってマッピングされ、物理ノード名が前記データベースに記憶されているネットワークの物理ノードによって置換される仮想の物理ノードを定義するために使用される。このような未知の物理的ノードは、以下でより詳細に説明するように、クラウドコンピューティングの場合にネットワークモデルを構築する方法において有利に使用することができる。
また、「既知の物理トポロジパス」と「未知の物理トポロジパス」を定義します。「既知の物理トポロジー・パス」とは、既存の、または2つの物理ノード間のネットワーク内のトポロジー・パスを既存または依然として設定するための物理トポロジー・パスであり、物理トポロジー・パス名が格納されているか、  コンパイラが直接的または間接的にアクセスできるデータベースが増えています。以下では、「既知」のラベルは、文脈でそのように要求されない場合には必ずしも使用されるとは限りません。「未知の物理トポロジパス」という用語は、2つの「未知の物理ノード」間、または1つの「未知の物理ノード」と「既知の物理ノード」との間の架空の物理トポロジパスを定義するために使用されます。このような「未知の物理トポロジパス」は、物理トポロジパス名が格納されている、または前記データベースに格納されているネットワークの物理トポロジパスに置き換えられ、前記物理トポロジパスは  1つまたは複数の既存またはまだ設定されている物理トポロジマッピングの連結。このような未知の物理的トポロジパスは、以下により詳細に説明するように、ネットワークモデルを構築する方法において有利に使用することができる。
また、「既知の物理レイヤーマッピング」と「未知の物理レイヤーマッピング」を定義する。「既知の物理レイヤーマッピング」は、既存の、または2つの物理ノード間のネットワーク内の設定されたレイヤーマッピングであり、物理レイヤーマッピング名が1つ以上のデータベースに格納されている「物理レイヤーマッピング」である。  直接的または間接的にコンパイラにアクセス可能である。以下では、「既知」のラベルは、文脈でそのように要求されない場合には必ずしも使用されるとは限りません。「未知の物理レイヤーマッピング」という用語は、2つの「未知の物理ノード」間、または1つの「未知の物理ノード」と「既知の物理ノード」との間の仮想物理レイヤーマッピングを定義するために使用される。このような「未知の物理レイヤーマッピング」は、物理レイヤーマッピング名が前記データベースに格納されている物理レイヤーマッピングに（まだ）リンクされていない。このような未知の物理レイヤーマッピングは、以下でより詳細に説明するように、ネットワークモデルを構築する方法において有利に使用することができる。
効率を上げるために、「物理ノード」、「既知の物理ノード」、および「未知の物理ノード」という用語を除いて、「既知/未知の物理ノード」という用語が使用されていることが分かる。この後者の用語は、すべての既知および未知の物理ノードを含むセットを指し、このセットの各メンバーは、既知または未知の物理ノードのいずれかであってもよい。「既知/未知の物理ノード名」は、これらの「既知/未知の物理ノード」の名前である。
同様に、「物理トポロジパス」、「既知物理トポロジパス」、および「未知物理トポロジパス」という用語を除いて、効率を上げるために、「既知/未知の物理トポロジパス」という用語は、  使用されている。この後者の用語は、すべての既知および未知の物理トポロジパスを含むセットを指し、このセットの各メンバは、既知または未知の物理トポロジパスのいずれかであってもよい。「既知/未知の物理トポロジパス名」は、これらの「既知/未知の物理トポロジパス」の名前です。
以下のアクションが実行されます:
a)  1つまたは複数の深さマッピングを介して既知の物理ノードにマッピングされていない各論理ノードについて、少なくとも1つの未知の物理ノードを作成し、未知の物理ノードの未知の物理ノード名を記憶する、。この行為は、請求項1の行為b）に関連する。
b)  既知の物理ノードにマッピングされていない前記論理ノードから前記未知の物理ノードへの深さマッピングを作成する1つまたは複数の深さマッピングを介して物理ノードにマッピングされていない各論理ノードについて、前記未知の物理ノードから既知の物理ノードにマッピングされていない前記論理ノードへの深さマッピングを作成するステップとを含むことを特徴とする方法、このアクションは、請求項1のアクションc）に関するものである。
c)  の作成および1つまたは複数の論理トポロジマッピングを格納し、最初から最初の深さ優先のマッピングの連結として算出された第2の論理ノードへの最初の論理ノードから有向グラフ表現をされている各論理トポロジマッピング、論理最初の既知/未知の物理ノードにノード、第二の既知/未知の物理ノードと第2の論理ノードへの第2の既知/未知の物理ノードから第2の深さマッピングへの最初の既知/未知の物理ノードから既知/未知の物理トポロジパスは、1つまたは複数の物理トポロジマッピングの連結であり、前記未知の物理トポロジパスは作成され記憶される、請求項1に記載の方法。前記1つまたは複数の論理トポロジマッピングは、トポロジマッピングを計算するための第1の方法を使用して計算されることに留意されたい。このアクションは、請求項1)のアクションd）に関する。
d)  未知の物理ノードごとにネットワーク全体で適切な物理ノードを決定する各未知の物理トポロジパスについてネットワーク全体で適切な物理トポロジパスを決定すること各未知の物理トポロジパスを適切な物理トポロジパスのセットの1つと照合することを含む検索を実行することによって、各未知の物理ノードを1組の適切な物理ノードの1つと照合するステップと、前記未知の物理トポロジー経路の各々を、前記1組の適切な物理トポロジー経路の1つによって置き換えて記憶するステップと。ここで、「物理ノード」および「物理トポロジパス」は、それぞれ、使用可能なエンティティである。それらはすでに存在しているか、またはオンデマンドでまだセットアップされているかもしれません。例えば、ノードはまだ存在していないが、SDNコンパイラ（または他のユニット）によって要求される仮想マシンによって実装できます必要。このアクションは、請求項1)のアクションe）に関する。
アクションa）、b）およびc）は、図11Bに示されている。図11Bは、（d  =  1、n  =  0、h  =  0）の論理ノードFE、（d  =  1、n  =  0、h  =  0）の論理ノードFF、
（d  =  1  、n  =  0、h  =  0）の論理ノードFG。  前記論理ノードFE、FFおよびFGも図11Aに示されている。上記のアクション
a）  論理ノードFEが既知の物理ノードにマッピングされていないので、
（d  =  0、n  =  0、h  =  0）で未知の物理ノード?X1を作成する。
図11Bにおいて、「?X1」のX1の前の疑問符は、X1が未知の物理ノードであることを示している。論理ノードFFが既知の物理ノードにマッピングされていないので、（d  =  0、n  =  0、h  =  0）で未知の物理ノード?X2を作成する。
【００３５】
図11Bにおいて、「?X2」内のX2の前の疑問符は、X2が未知の物理ノードであることを示している。
論理ノードFGが既知の物理ノードにマッピングされないので、（d  =  0、n  =  0、h  =  0）で未知の物理ノード?X3を作成する。
【００３６】
図11Bにおいて、「?X3」内のX3の前の疑問符は、X3が未知の物理ノードであることを示している。この例では、未知の物理ノードがd  =  0に、
論理ノードと同じレイヤnに作成され、前記未知の物理ノードは深さマッピングによってマッピングされ、論理ノードと同じレベルhで前記未知の物理ノードがマッピングされる  深度マッピングを介して。
【００３７】
一般に、（d、n1、h1）の論理ノードについては、xが0より大きくdより小さい（d-x、n2、h2）の未知の物理ノードを作成することができ、n1は  n2に等しく、h1はh2に等しくてもよい。
【００３８】
上記のアクションb）では、未知の物理ノード?X1から論理ノードFEまでの深さマッピングK3が作成され、論理ノードFEから未知の物理ノード?X1までの深さマッピングK4が作成され、K5という深度マッピングが作成される  未知の物理ノード?X2から論理ノードFFへと、論理ノードFFから未知の物理ノード?X2への深さマッピングK6が作成され、未知の物理ノード?X3から論理ノードFGへの深さマッピングK7が作成され、深さマッピング  論理ノードFGから未知の物理ノード?X3にK8という名前の名前が作成される。
図11Bは、K3からK8までの深度マッピングを示す。  図11Cは、図6Aの表記に従って、K3からK8までの深さマッピングを示す。  したがって、上記の例のアクションa）とb）は次のとおりです。
a)  少なくとも1つの未知の物理ノード（?X1;  ?X2;  ?X3）を作成し、未知の物理ノード名を格納する1つまたは複数の深度マッピングによって、既知の物理ノードにマッピングされていない各論理ノード（FE;  FF;  FG）  （図11B参照）、
b)  1つ以上の深度マッピングを介して物理ノードにマッピングされていない各論理ノードについて、既知の物理ノードにマッピングされていない前記論理ノード（FE;  FF;  FG）から前記未知の物理ノード（?X1;  ?X2;  ?X3）への深さマッピング（K4;  K6;  K8）を作成するステップと、前記未知の物理ノード（?X1;  ?X2;  ?X3）から既知の物理ノードにマッピングされていない前記論理ノード（FE;  FF;  FG）への深さマッピング（K3;  K5;  K7）を作成するステップと、前記深度マッピングは有向グラフ表現に基づく（図11B参照）、
上記のアクションc）に従って、K1という名前のトポロジマッピングが、K4という名前の深度マッピングと、?K9という名前の未知のトポロジパスと、名前付きの深さマッピングとを含むトポロジマッピングを計算するための第1の方法を使用して作成される  図11Bに示すように、K5。図11Bにおいて、「?K9  /  K1」におけるK9の前の疑問符は、K9が未知の物理的トポロジパスであることを示している。このステップでは、?K9という未知の物理トポロジパスが作成され、保存されることに注意してください。また、K2という名前のトポロジ・マッピングは、図のように、K6という名前の深さマッピングと、?K10という名前の未知のトポロジパスと、K7という名前の深さマッピングの連結を含む、トポロジ・マッピングを計算するための第1の方法を使用して作成されます  図11Bに示す。図11Bにおいて、「?K10  /  K2」
におけるK10の前の疑問符は、K10が未知の物理的トポロジパスであることを示す。このステップでは、?K10という未知の物理トポロジパスが作成され、保存されます。図11Dは、図6Cの表記に従って、上述したようなトポロジマッピングK1およびK2を示す。図11Dにおいて、疑問符は、?K9および?K10という名前のエッジが、トポロジパスではなく未知のトポロジパスであることを示している。したがって、上記の例のアクションc）は、
c)  1つまたは複数の論理トポロジマッピング（K1;  K2）の作成と保存各論理トポロジマッピング（K1;  K2）は、第1の論理ノード（FE;  FF）から第2の論理ノード（FF;  FG）への有向グラフ表現であり、第1の論理ノード（FE;  FF）から第1の既知/未知の物理ノード（?X1;  ?X2）への第1の深さマッピング（K4;  K6）の連結として計算され、第1の既知/未知の物理ノード（?X1;  ?X2）から第2の既知/未知の物理ノード（?X2;  ?X3）への既知/未知の物理トポロジパス（?K9;  ?K10）第2の既知/未知の物理ノード（?X2;  ?X3）から第2の論理ノード（FF;  FG）への第2の深さマッピング（K5;  K7）前記既知の物理トポロジパスは、1つ以上の物理トポロジマッピングの連結であり、前記未知の物理トポロジパス（?K9;  ?K10）は、作成され記憶されることを特徴とする方法。前記1つまたは複数の論理トポロジマッピング（K1;  K2）は、トポロジマッピングを計算するための第1の方法を使用して計算される（図11B参照）、。
図11Eおよび図11Fに示すように、ここで、d）の検索で使用されるトポロジマッピングK1およびK2の物理的エンティティをそれぞれ決定する。図11Eのステップ1）は、図11DのK1という名前のトポロジマッピングを示す。図11Eのステップ2）において、図11Eのステップ1）におけるK4およびK5と名付けられた深さマッピングの値は、図11Cに示されるK4およびK5という深度マッピングの定義に置き換えられている。K1という名前のトポロジマッピングは、FEおよびFFという論理ノード、K4およびK5という名前の深さマッピング、物理ノードがゼロ、?X1および?X2という2つの未知の物理ノード、?K9という名前の未知の物理トポロジパス、マッピング、ゼロ物理的なポイントオブアタッチメント。  図11Fのステップ1）は、図11DのK2という名前のトポロジマッピングを示す。図11Fのステップ2）において、図11Fのステップ1）におけるK6およびK7と名付けられた深さマッピングの値は、図11Cに示されるK6およびK7という深度マッピングの定義に置き換えられている。K2という名前のトポロジマッピングは、FFおよびFGという名前の論理ノード、K6およびK7という名前の深さマッピング、ゼロ物理ノード、?X2および?X3という2つの未知の物理ノード、?K10というゼロの物理トポロジパス、マッピング、ゼロ物理的なポイントオブアタッチメント。
【００３９】
動作d）では、各未知の物理的ノードに対して適切な物理ノードを決定し、各未知の物理的トポロジパスを、未知の物理トポロジパスごとに、適切な物理トポロジパスを生成し、各未知の物理ノードを1組の適切な物理ノードの1つと突き合わせる。図11Gに示すように、未知の物理ノードと、K1という名前のトポロジマッピングの未知の物理トポロジパスとの関係を使用して、最初の検索文として  "?X1-?K9  [トポロジパス]  /  K1->  ?X2"  K2という名前のトポロジマッピングの未知の物理ノードと未知の物理トポロジパスの関係を、第2の検索文として「?X2-?K10  [トポロジパス]  /  K2->  ?X3」とする。"?X1-?K9  [トポロジパス]  /  K1->  ?X2）AND（?X2-?K10  [トポロジパス]  /  K2->  ?X3）"という第1の検索文、論理AND、および第2の検索文からなる第3の検索文を作成する  。前記第3の検索文が前記検索に使用される。
【００４０】
前記第3の探索文は、前記第1の探索文と前記第2の探索文との「論理AND」を含み、前記探索の目的は、各未知の物理ノードの物理ノードと、未知の物理  SDNコンパイラのユーザによって定義された論理ノードおよび論理トポロジマッピングに従って、トポロジパスを使用する。前記探索文は、単一方向（無線リンクを含む）におけるリンクであるトポロジマッピングと、複数の再帰的経路からのそれらの関係とを含むノードおよびトポロジパスを含む物理的エンティティからなることに留意されたい。この例では、未知の物理ノード?X1、?X2および?X3、および?K9および?K10という未知の物理トポロジパスがあります。前記探索は、物理的なトポロジマッピングによって相互接続された物理ノードを含む物理ネットワークレイアウトに対して実行され、前記物理的なトポロジマッピングは、以下に説明するように、有向グラフ表現に基づく。
PCT  /  EP2014  /  055640（ページ  230）は、トポロジマッピングを計算する第1の方法、トポロジマッピングを計算する第2の方法、トポロジマッピングを計算する第3の方法、トポロジマッピングを計算する第4の方法  、トポロジマッピングを計算する第5の方法、レイヤーマッピングを計算する第1の方法、レイヤーマッピングを計算する第2の方法、トポロジパスを計算する方法、レベルパスを計算する方法、  方法は、マッピングまたはトポロジパス、レベルパスまたはトポロジーレベルパスを作成または再計算するために使用されるトポロジーレベルパスを計算するために、グラフデータベース内のクエリとして実装することができる。
【００４１】
上記の追加の要件は、そのようなクエリに含めることができます。  限定ではないが、一例として、上述の第3の検索文は、グラフデータベース内のクエリとして実施することができる。
前記検索では、オプションとして、要件を考慮に入れることができる。
任意選択的に、前記論理トポロジマッピングの前記要件c）を記憶することができる。任意選択的に、アクションd）において、前記論理トポロジマッピングの各々の前記要件は、前記論理トポロジマッピングの計算に使用される前記未知の物理トポロジパスにコピーされてもよい、そして、前記未知の物理トポロジパスの各々の前記要件は、前記サーチにおける物理トポロジパスの特性と一致させることができる、前記物理トポロジー経路の前記特性は、前記物理トポロジー経路が計算される物理トポロジマッピングの特性によって決定される。
一例として、K1という名前の論理トポロジマッピングの要件が、「要件A」であり、アクションc）で「要件A」をK1という名前のトポロジマッピングの要件として格納するという要件を考慮する。動作d）において、K1と名付けられた論理トポロジマッピングの要件は、図示のようにエッジ関係「?K9  /  K1」に従って、論理トポロジマッピングK1の計算に使用される?K9という未知の物理トポロジー経路にコピーされる  図11Dでは、「要求A」である未知の物理トポロジパス?K9の要件は、前記検索における物理トポロジパスのプロパティと一致する。図11Hは、図11Dに示すように、エッジ関係「?K9  /  K1」当たりの?K9という名前の未知の物理トポロジパスの要件に、K1という名前の論理トポロジマッピングの要件がどのように関係するかを示す。図11Hはまた、図11Dに示すように、K2という名前の論理トポロジマッピングの要件が、エッジ関係「?K10  /  K2」ごとに?K10と呼ばれる未知の物理トポロジパスの要件にどのように関連するかを示す。
【００４２】
上記の1つ以上の論理ノードの要件は、オプションでアクションb）に格納することができます。任意選択的に、請求項1)のアクションd）において、
前記論理ノードの各々の前記要件は、1つ以上の深さマッピングを介して前記論理ノードにマッピングされた前記未知の物理ノードにコピーされてもよい、
そして、前記未知の物理的ノードのそれぞれの前記要件は、前記検索における前記物理的ノードの特性と一致させることができる。
一例として、限定ではないが、論理ノードFEはホストノードであるため、FEという名前の論理ノードの要件として、論理ノードFEが「タイプホスト」であり、上記のアクションb）で「タイプホスト」を格納する必要があると見なします。動作d）において、図11Eに示すように、論理ノードFEの要求が、論理ノードFEにマッピングされた未知の物理ノード名?X1に、K1という名前のトポロジ・マッピング内のK4という深さマッピングを介してコピーされ、  前記未知の物理的ノードの各々は、前記検索における前記物理的ノードの特性と一致させることができる。
図11Iは、図11Eに示すように、FEという名前の論理ノードの要件が、K1という名前のトポロジ・マッピング内のK4という名前の深さマッピングごとに?X1という名前の未知の物理ノードの要件にどのように関係しているかを示す。
【００４３】
図11Iは、FFという名前の論理ノードの要件が、?X2という名前の未知の物理ノードの要件にどのように関連しているかを示しています。図11Eに示すように、K1という名前のトポロジマッピングにおいてK5という名前の深さマッピングごとに、図11Fに示すように、K2という名前のトポロジマッピングにおいて、K6という名前の深度マッピングごとに、図11Iは、FGという名前の論理ノードの要件が、?X3という未知の物理ノードの要件にどのように関連しているかを示しており、図11Fに示すように、K2という名前のトポロジマッピングにおいて、K7という名前の深さマッピングごとに。
物理ノードの一般的なプロパティには、次のものがありますが、これらに限定されません。
-  前記物理ノードのノードタイプ。一例として、非パケット交換ネットワーク（非PSN）内のパケット交換ネットワーク（PSN）内のパケット交換ノードまたは非パケット交換ノードであるノードであるノードが挙げられるが、これに限定されない。一例として、限定ではないが、ノードがホスト型ノード、スイッチ型ノード、多重化または逆多重化を実行するマルチプレクサ型ノードである。限定ではないが、一例として、送信ホストであるノード、受信ホスト、多重化マルチプレクサ、逆多重化マルチプレクサ。
-  前記物理ノードのスイッチング特性。一例として、このようなスイッチング特性は、IEEE  802.3イーサネットスイッチング、インターネットプロトコルバージョン4（IPv4）ルーティング、インターネットプロトコルバージョン6（IPv6）ルーティング、またはインターネットプロトコルバージョン6（IPv6）で定義されたものであってもよい。  IPv6  フローラベル、IPv6  ソース  アドレス、およびIPv6宛先アドレスフィールドの3タプルに基づいたルーティング。当業者には理解されるように、スイッチング識別子はスイッチング特性から導き出すことができる。
-  前記物理ノードの容量。
-  前記物理ノードのレイテンシ。
-  前記物理ノードの可用性。
物理リンクの一般的なプロパティには、以下のものが含まれますが、これらに限定されません:
-  一方向における前記物理的リンクの容量と、
-  一方向における前記物理リンクの待ち時間、
-  一方向における前記物理的リンクの利用可能性。
物理トポロジマッピングのプロパティは、一方向の物理リンクのプロパティです。当業者には理解されるように、物理トポロジマッピングの特性は、物理トポロジパスの特性を決定し、前記物理トポロジパスは、ゼロ以上の物理トポロジマッピングと0以上の物理的連結との連結である  前記トポロジ・マッピングの数および前記トポロジパスの数は、それらの合計が少なくとも1つであるようなものである、請求項1に記載の方法。
論理ノードの一般的な要件には、次のものが含まれますが、これらに限定されません:
-  前記論理ノードのタイプ、
-  前記論理ノードのスイッチング特性と、
-  前記論理ノードの容量と、
-  前記論理ノードのレイテンシと、
-  前記論理ノードの可用性、
論理トポロジマッピングの一般的なプロパティには、次のものがありますが、これらに限定されません:
-  前記論理トポロジマッピングの容量と、
-  前記論理トポロジマッピングの待ち時間と、
-  前記論理トポロジマッピングの可用性、
ここで、図12Aに示すように、前記検索が実行される物理的ネットワークレイアウトを検討し、前記物理的ネットワークレイアウトは、使用可能なノードおよびリンクを含む。図12Aは、物理ノードKPで表される第1のコンピューティング機器と、物理ノードKQによって表される第1のパケット転送システムと、物理ノードKRによって表される第2のパケット転送システムと、物理ノードKSによって表される第2のコンピューティング機器と、  物理リンクであるトポロジマッピングによって接続された、物理ノードKTによって表される第3のコンピューティング機器。図12Aはまた、ポイントオブアタッチメント（PoA）p211からp218を示す。
図12Bに示すように、トポロジマッピングを有向エッジとしてグラフに表現する。図12Bは、（d  =  0、n  =  0、h  =  0）における前記物理ノードKP、
（d  =  0、n  =  0、h  =  0）における前記物理ノードKQ、
（d  =  0、n  =  0、h  =  0）における前記物理ノードKR、
（d  =  0、n  =  0、h  =  0）における前記物理ノードKS、
および（d  =  0、n  =  0、h  =  0）における前記物理ノードKTを示す。
また、図12Bは、K11からK18という名前のトポロジマッピングを示し、グラフの有向エッジとして表される。
【００４４】
図12Cは、図6Aの表記に従って、K11からK18という名前のトポロジマッピングを示す。一例として、物理ノードKP、KSおよびKTがそれぞれ第1、第2および第3のコンピューティング機器を表すので、ノードKP、KSおよびKTに対して値「ホスト」を有するノードタイププロパティを格納する。一例として、物理ノードKQおよびKRがそれぞれ第1および第2のパケット転送システムを表すので、ノードKQおよびKRに対して値「スイッチ」を有するノードタイププロパティを格納する。
図12Bに示す物理ネットワークレイアウトに対して上述の第3の検索文「(?X1-?K9[トポロジパス]/K1->?X2)  AND  (?X2-?K10[トポロジパス]/K2->?X3)」
を含む検索を実行し、論理ノードFEおよびFGが論理ホストノードであり、論理ノードFFが論理スイッチノードであるという要件を含む。図11Iに示され、動作d）で上述したように、論理ノードFE、FF、FGの要件は、未知の物理ノード名?X1、?X2、?X3にそれぞれコピーされる。K1とK2という名前の論理トポロジマッピングの要件は考慮されていないため、「/  K1」と「/  K2」を省略して検索ステートメントを「(?X1-?K9[トポロジパス]->?X2)  AND  (?X2-?K10[トポロジパス]  ->?X3)」に減らすことができます。
要件を含む検索ステートメントは、疑似コードで記述されています。
MATCH  (?X1-?K9[トポロジパス]->?X2)
AND
MATCH  (?X2-?K10[トポロジパス]  ->?X3)
WHEREノードタイプ?X1は  "ホスト"
ANDノードタイプ?X2は  "スイッチ"
ANDノードタイプ?X3は  "ホスト"
RETURN  ?X1,  ?X2,  ?X3,  ?K9,  ?K10
検索文の上には、図12Dおよび図12Eに示す一致を含むいくつかの一致が返される。図12Dは、未知の物理ノード?”X1がどのようにして物理ノードKPに対してマッチングされ、未知の物理ノード?X2が物理ノードKQに対してマッチングされ、未知の物理ノード?X3が物理ノードKSに対してマッチングされるかを示す。
【００４５】
図12Eは、?K9と呼ばれる未知の物理トポロジパスが、K11という名前の物理トポロジマッピングを含む一貫性のためにK9という名前の物理トポロジパスとどのように一致するかを示す、図6Cの表記に従って図12Eに示すように。
図12Eは、?K10と呼ばれる未知の物理トポロジパスが、表記法に従って図12Eに示すように、K13およびK15という物理トポロジマッピングの連結を含む、一貫性のためにK10という名前の物理トポロジパスに対してどのように一致するかを示す  図6Cの。
アクションd）では、未知の物理トポロジパスを物理トポロジパスで置き換えて格納します。前記物理トポロジパスは、1つ以上の物理トポロジマッピングの連結であり、前記未知の物理ノードを、前記検索の結果に従って物理ノードで置き換える。上記の例では、?K9という未知の物理トポロジパスを、K9という名前の物理トポロジパスで置き換えて保存します。前記物理トポロジパスK9は、K11という物理トポロジマッピングからなる。また、K10という名前の物理トポロジパスで、？K10という名前の未知の物理トポロジパスを置き換えて保存します。前記物理トポロジパスは、前記物理トポロジパスK10は、物理トポロジマッピングK13とK15の連結である。、上述の探索の結果に従って、未知の物理ノード?X1、?X2、?X3をそれぞれ物理ノードKP、KQ、KSに置き換える。その結果、K3からK8までの深度マッピングは、図12Gに示すように、論理ノードFE、FF、FGと物理ノードKP、KQ、KRとの間の深さマッピングとなっている。K3からK8までの深さマッピングが論理ノードFE、FF、FGと未知の物理ノード?X1、?X2、?X3との間の深さマッピングである図11Cと比較して。
その結果、図12Hに示すように、トポロジマッピングK1およびK2は、それぞれ「トポロジマッピング  K1  =  K4/K1+K9/K1+K5/K1」および「トポロジマッピングK2  =  K6/K2+K10/K2+K7/K2」になっている。図11Dと比較して、トポロジマッピングK1およびK2がそれぞれ「トポロジマッピングK1  =  K4/K1+?K9[未知のトポロジパス]/K1+K5/K1」および「トポロジマッピングK2  =  K6/K2+?K10[未知のトポロジパス]/K2+K7/K2」であった。  これを図12Fに示す。
【００４６】
図12Fは、（d  =  1、n  =  0、h  =  0）の論理ノードFE、（d  =  1、n  =  0、h  =  0）の論理ノードFF、（d  =  1、n  =  0、h  =  0）の論理ノードFG、（d  =  0、n  =  0、h  =  0）の物理ノードKP、（d  =  0、n  =  0、h  =  0）の物理ノードKQ、（d  =  0、n  =  0、h  =  0）の物理ノードKR、（d  =  0、n  =  0、h  =  0）の物理ノードKS、
および（d  =  0、n  =  0、h  =  0）の物理ノードKTを示す。
【００４７】
図12Fはまた、グラフの有向エッジとして表される、K1、K2、K11からK18、K3からK8までの深さマッピング、K9およびK10という物理トポロジパス、およびK19という論理トポロジパスという名前のトポロジマッピングを示す。したがって、上記の例のアクションd）は、
d)未知の物理ノード（?X1;?X2;?X3）ごとにネットワーク全体の適切な物理ノード（KP;KQ;KS）を決定し、未知の物理トポロジパス（?K9;?K10）ごとにネットワーク全体で適切な物理トポロジパス（K9;K10）各未知の物理トポロジパス（?K9;?K10）を1組の適切な物理トポロジパスの1つと照合することを含む検索を実行することによって、各未知の物理ノードを1組の適切な物理ノードの1つ（KP;KQ;KS）と照合するステップと、前記未知の物理トポロジパス（?K9;?K10）を前記適切な物理トポロジパス（K9;K10）の前記セットの1つによって置き換えて記憶するステップと、前記適切な物理トポロジパス（K9;K10）の1つは、1つまたは複数の物理トポロジマッピング（K11;K13,K15）の連結であり、前記未知の物理的ノード（(?X1;?X2;?X3）を前記検索の結果に従って前記適切な物理ノードのセット（KP;KQ;KS）の前記1つに置き換えるステップ（図12F参照）を含む、請求項1に記載の方法。
一例として、限定ではないが、図12Fに示すようなトポロジマッピングK1とK2の連結であり、図6Cの表記に従って図12Iに示すように、要求されたトポロジパスK19を作成する。上記のように、K19という名前のトポロジパスの再帰パスを計算します。K19という名前のトポロジパスの再帰パスは、図12Jのステップ5に示されている。  ステップ2からステップ4は計算の中間ステップである。K19という名前のトポロジパスの再帰パスは、前記再帰パス内の各物理ネットワークについて、物理ノードKP、KQ、KRおよびKSである以下の情報を含む。
-  入力ポート、
-  出力ポート、
-  着信エッジ関係のセット、
-一連の発信エッジ関係。
上記入力ポート、出力ポート、着信エッジ関係のセット、および発信エッジ関係のセットは、K11、K13およびK15という名前のトポロジマッピングに含まれる情報です。上記の入力ポート、出力ポート、着信エッジ関係のセット、発信エッジ関係のセット、および着信セットのエッジ関係および発信関係のエッジ関係のスイッチング識別子の組み合わせは、  物理ノードKP、KQ、KRおよびKSのエントリを転送する。エッジK11〜K19のためのスイッチング識別子が図12Kに示されている。
エッジK11〜K18のスイッチング識別子は、データアクセス層における物理PoAを表し、メディアアクセス制御  (Media  Access  Control  :  MAC）を実行する。
K19という名前のエッジのスイッチング識別子は、ソースとしてK19という名前のトポロジパスのソースノードFEの名前を使用し、名前が付けられたトポロジパスの宛先ノードFGの名前を使用して、「ソースFE、宛先FG」である  目的地としてのK19。図12Lは、要求されたトポロジパスK19から計算された再帰パス内の物理ノードKP、KQ、KR、KSおよびKTであるネットワーク（d=0,  h=0）を示し、入力ポート、出力ポート、着信  前記エッジ関係の前記着信セット内の各エッジのエッジ関係およびスイッチング識別子のセットと、前記エッジ関係の前記出力セット内の各エッジのエッジ関係およびスイッチング識別子の出力セットとを含む。
図11Aに示され、上述された例では、論理ノードと物理ノードとの間に深さマッピングは指定されていなかった。  当業者には理解されるように、
SDNコンパイラのユーザは、論理ノードと物理ノードとの間に1つ以上の深度マッピングを指定することができ、その結果、  上記のアクションd）の検索。
一例として、論理ノードは、前記物理ノードが他のネットワーク（ゲートウェイとも呼ばれる）への接続性を提供することがわかっている場合に、深さマッピングを介して物理ノードにマッピングされてもよい。  図13Aから図13Eは、
論理ノードから既知の物理ノードへの単一の深度マッピングを用いて上述の方法を適用した例を示す。
図13Aは、図11Aの論理ノードFE、論理ノードFF、論理ノードFGを示す。  図13Aはまた、図11Aに示すように、論理ノードFEから論理ノードFFへのトポロジマッピング、論理ノードFFから論理ノードFGへのトポロジマッピングを示す。図13Aはまた、物理ノードKPと、論理ノードFEから有向エッジとして表された物理ノードKPへの深さマッピングをグラフに示している。
図13Bは、（d  =  1、n  =  0、h  =  0）における論理ノードFE、（d  =  1、n  =  0、h  =  0）における論理ノードFF、（d  =  1、n  =  0、h  =  0）における論理ノードFG及び（d  =  0、n  =  0、h  =  0）における物理ノードKPを示す。論理ノードFEが物理ノードKPにマッピングされているため、アクションa）では、未知の物理ノードは、1つ以上の深度マッピングを介して論理ノードFEにマッピングされるように作成されない。
論理ノードFFが物理ノードにマップされていないため、（d=0,  n=0,  h=0）で未知の物理ノード?X2を作成するので、アクションa）に従って。
図13Bにおいて、「?X2」のX2の前の疑問符は、X2が未知の物理ノードであることを示している。論理ノードFGが物理ノードにマッピングされていないので、（d=0,  n=0,  h=0）で未知の物理ノード?X3を作成する。
図13Bにおいて、「?X3」のX3の前の疑問符は、X3が未知の物理ノードであることを示している。
上記のアクションb）では、未知の物理ノード?X2から論理ノードFFまでの深さマッピングK5が作成されます。理ノードFFから未知の物理ノード?X2に、K6という名前の深度マッピングが作成されます。K7という名前の深さマッピングは、未知の物理ノード?X3から論理ノードFGまで作成される。論理ノードFGから未知の物理ノード?X3に、K8という名前の深さマッピングが作成されます。図13Bは、K4からK8までの深さマッピングを示す。  図13Cは、
図6Aの表記に従って、K4からK8までの深さマッピングを示す。
上記のアクションc）において、K1という名前のトポロジマッピングは、K4という名前の深さマッピングと、?K9という名前の未知のトポロジパスと、K5という深さマッピングとの連結を含む、トポロジマッピングを計算するための第1の方法を使用して作成され、  図13Bに示す。図13Bにおいて、「?K9  /  K1」内のK9の前の疑問符は、K9が未知の物理トポロジパスであることを示す。このステップでは、?K9という未知の物理トポロジパスが作成され、保存されることに注意してください。また、図11Bに示すように、K6という名前の深さマッピングとK10という名前の未知のトポロジパスとK7という深さマッピングとの連結を含む、トポロジマッピングを計算するための第1の方法を使用してK2という名前のトポロジマッピングが作成される。図11Bにおいて、「?K10  /  K2」におけるK10の前の疑問符は、
K10が未知の物理的トポロジパスであることを示す。このステップでは、K10という名前の未知の物理トポロジパスが作成され、保存されます。
【００４８】
図11Dは、上述の図6Cの表記法によるトポロジマッピングK1およびK2を示す。
図13Dおよび図11Fに示すように、ここで、d）の検索で使用されるトポロジマッピングK1およびK2の物理的エンティティをそれぞれ決定する。図13Dのステップ1）は、図11DのK1というトポロジマッピングを示す。  図13Dのステップ2）において、図13Dのステップ1）におけるK4およびK5と名付けられた深さマッピングの値は、図13Cに示されたK4およびK5という深度マッピングの定義に置き換えられている。図11Fに示すトポロジマッピングK2は、上で説明した。
【００４９】
動作d）では、各未知の物理的ノードに対して適切な物理ノードを決定し、各未知の物理的トポロジパスを、未知の物理トポロジパスごとに、  適切な物理トポロジパスを生成し、各未知の物理ノードを適切な物理的なセットの1つと突き合わせる。図13Eに示すように、未知の物理ノードと、K1という名前のトポロジ・マッピングの未知の物理トポロジパスとの関係を、第1の検索文として「KP-?K9[トポロジパス]/K1->?X2」とし、
未知の物理ノードと未知の物理  第2の検索文として「“?X2-?K10[トポロジパス]/K2->?X3」である第2の検索文「(?X1-?K9[トポロジパス]/K1->?X2)  AND  
(?X2-?K10[トポロジパス]/K2->?X3)」を作成するために、
K2という名前のトポロジ・マッピングのトポロジパスを使用する。前記第3の検索文は、上述のように前記検索に使用される。前記探索文は、未知の物理ノード?X2および?X3と、?K9およびK10と名付けられた未知の物理トポロジパスとを含むことに留意されたい。前記検索は、物理的なトポロジマッピングによって相互接続された物理ノードを含む物理ネットワークレイアウトに対して実行され、前記物理的なトポロジマッピングは有向グラフ表現に基づく。
前記検索において、必要に応じて、上記のように要件を考慮に入れることができる。一例として、これに限定されるものではないが、前記検索は、上述した図12Bに示す物理的ネットワークレイアウトに対して実行することができる。前記検索は、物理ノードKQと一致する未知の物理ノード?X2を含む一致を含む多数の一致を返す。物理ノードKSに一致する未知の物理ノード?X3。図6Cの表記に従って図12Eに示すように、K11という名前の物理トポロジマッピングからなる、K9という名前の物理トポロジー・パスと一致する不明な物理トポロジー・パス。そして図6Cの表記に従って図12Eに示すように、K13と命名された未知の物理トポロジパスは、K13と命名された物理トポロジマッピングの連結からなるK10という物理トポロジパスと一致する。アクションd）に従って、K9という名前の物理トポロジパスを?K9という名前の未知の物理トポロジパスに置き換えて保存します.K9という物理トポロジパスはK11という名前の物理トポロジマッピングから成ります。K10という名前の物理トポロジパスは、K10という名前の物理トポロジパスで置き換えて格納します.K10という物理トポロジパスは、K13とK15という物理トポロジマッピングの連結です。そして、上述の探索の結果に従って、未知の物理ノード?X2及び?X3をそれぞれ物理ノードKQ及びKSに置き換える。
その結果、K5という深度マッピングは、物理ノードKQから論理ノードFFへの深さマッピングとなり、K6という名前の深さマッピングは、論理ノードFFから物理ノードKQへの深さマッピングとなり、深さマッピング  K7と名付けられた深度マッピングは、物理ノードKSから論理ノードFGへの深さマッピングとなり、深さマッピングK8は、論理ノードFGから物理ノードKSへの深さマッピングとなる。その結果、トポロジマッピングK1およびK2は、それぞれ、図12Fに示され、上で説明されているように、図12Hに示されるように、それぞれ「トポロジマッピングK1  =  K4/K1+K9/K1+K5/K1」および「トポロジマッピングK2  =  K6/K2+K10/K2+K7/K2」になる。
【００５０】
一例として、限定ではないが、図12Fに示すように、また図12Iに示すように、図6Cの表記に従ってトポロジマッピングK1およびK2を連結しているK19という名前の要求されたトポロジパスを作成する。上記のように、K19という名前のトポロジパスの再帰パスを計算します。図12Jのステップ5には、K19というトポロジパスの再帰パスが示されており、ここから、上記のように転送エントリを作成することができる。
【００５１】
図11Aに示され、上述された例では、論理ノードFEから論理ノードFFへのトポロジマッピングと、論理ノードFFから論理ノードFGへのトポロジマッピングが考慮された。当業者には理解されるように、SDNコンパイラのユーザは、通常、第1の論理ノードと第2の論理ノードとの間の両方向、すなわち第1の論理ノードから第2の論理への方向でのトポロジマッピングを指定する  第2の論理ノードから第1の論理ノードへ向かう方向である。図14A〜図14Fは、上述の方法が適用され、論理ノード間のトポロジマッピングが双方向で指定された例を示す。
【００５２】
図14Aは、論理ノードFE、論理ノードFF、論理ノードFGを示す。  図14Aはまた、論理ノードFEから論理ノードFFへのトポロジマッピング、論理ノードFFから論理ノードFEへのトポロジマッピング、論理ノードFFから論理ノードFGへのトポロジマッピング、論理から論理へのトポロジマッピング  ノードFGから論理ノードFFへ、グラフの有向エッジとして表される。
図14Bは、（d  =  1、n  =  0、h  =  0）における論理ノードFE、
（d  =  1、n  =  0、h  =  0）における論理ノードFFおよび（d  =  1、n  =  0、h  =  0）
における論理ノードFG、（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X1、
（d  =  0、n  =  0、h  =  0）の未知の物理ノード?X2および（d  =  0、n  =  0、h  =  0）
の未知の物理ノード?X3を示す。図14Bはまた、K1、K2、K21およびK22という名前のトポロジマッピング、K3からK8という深度マッピング、および
?K9、?K10、?K23および?K24と名付けられた未知の物理トポロジパスをグラフの有向エッジとして表している。  図14Bにおいて、疑問符は、
未知の物理ノードおよび未知の物理トポロジパスを示す。
動作a）、b）およびc）は、図14Bによって示され、上記の図11Bと比較して以下の違いがある。
上述のアクションc）に従って、トポロジマッピングを計算する第1の方法を使用して、K1、K2、K21およびK22という名前のトポロジマッピングが作成される。図14Bおよび図14Cに示すように、K21という名前のトポロジマッピングは、K6という名前の深度マッピング、?K23という名前の未知のトポロジパスおよびK3という深度マッピングの連結を含む。図14Bにおいて、「?K23  /  K21」
内のK23の前の疑問符は、K23が未知の物理トポロジパスであることを示す。図14Bおよび図14Cに示すように、K22という名前のトポロジマッピングは、K8という名前の深度マッピング、?K24という名前の未知のトポロジパスおよびK5という深度マッピングの連結を含む。図14Bにおいて、「?K24  /  K22」のK24の前の疑問符は、K24が未知の物理的トポロジー経路であることを示している。
【００５３】
図11E、図11F、図14Dおよび図14Eに示すように、動作d）での検索に使用されるトポロジマッピングK1、K2、K21およびK22の物理的エンティティをそれぞれ決定する。動作d）では、各未知の物理的ノードに対して適切な物理ノードを決定し、各未知の物理的トポロジパスを、未知の物理トポロジパスごとに、  適切な物理トポロジパスを生成し、各未知の物理ノードを1組の適切な物理ノードの1つと突き合わせる。図14Fに示すように、未知の物理ノードと、K1という名前のトポロジマッピングの未知の物理トポロジパスとの関係を使用して、第1の検索文として「?X1-?K9[トポロジパス]/K1->?X2」を使用する。
【００５４】
未知の物理ノードと、K2という名前のトポロジマッピングの未知の物理トポロジパスの関係を使用します。これは、2番目の検索文として「?X2-?K10[トポロジパス]/K2->?X3」となります。未知の物理ノードと、
K21という名前のトポロジマッピングの未知の物理トポロジパスとの関係を、第3の検索文として「?X2-?K23[トポロジパス]/K21->?X1」とする。
【００５５】
また、未知の物理ノードと、K22というトポロジ・マッピングの未知の物理トポロジパスとの関係を、第4の検索文として「?X3-?K24[トポロジパス]/K22->?X2」とし、第5の検索文「(?X1-?K9[トポロジパス]/K1->?X2)  AND  (?X2-?K10[トポロジパス]/K2->?X3)  AND  (?X2-?K23[トポロジパス]/K21->?X1)  AND  (?X3-?K24[トポロジパス]/K22->?X2)」を作成する。
【００５６】
前記第5の検索文が前記検索に使用される。前記検索文は、未知の物理ノード?X1、?X2および?X3と、?K9、?K10、?K23および?K24と名付けられた未知の物理トポロジパスからなることに留意されたい。
前記検索は、物理的なトポロジマッピングによって相互接続された物理ノードを含む物理ネットワークレイアウトに対して実行され、前記物理的なトポロジマッピングは有向グラフ表現に基づく。  前記検索において、必要に応じて、
上記のように要件を考慮に入れることができる。  一例として、
限定はしないが、前記検索は、上述の図12Bに示す物理的ネットワークレイアウトに対して実行することができる。前記検索は、物理ノードKPと一致する未知の物理ノード?X1を含む一致を含む多数の一致を返す。物理ノードKQに一致する未知の物理ノード?X2。物理ノードKSに一致する未知の物理ノード?X3。K11という名前の物理トポロジ・マッピングからなる物理トポロジパス（K9）と一致する、?K9という名前の未知の物理トポロジパス。そして、未知の物理トポロジパス?K10は、K10という名前の物理トポロジパスと一致し、K13とK15という物理トポロジマッピングの連結を含む。K12という名前の物理トポロジパスで構成された、K23という名前の物理トポロジパスと一致する、?K23という名前の不明な物理トポロジパス。また、K24という名前の物理トポロジパスは、K24という名前の物理トポロジパスと一致し、K16とK14という名前の物理トポロジ・マッピングが連結されています。
アクションd）では、K9という名前の物理トポロジパスで?K9という名前の未知の物理トポロジパスを置き換えて保存します。?K10という名前の未知の物理トポロジパスを、K10という名前の物理トポロジパスで置き換えて格納します。?K23という名前の未知の物理トポロジパスを、K23という名前の物理トポロジパスで置き換えて保存します。K24という名前の物理トポロジパスで、
?K24という未知の物理トポロジパスを置き換えて保管します。そして、未知の物理ノード?X1、?X2、?X3を、上述の検索結果に従って、それぞれ物理ノードKP、KQ、KSに置き換える。
その結果、K3からK8までの深度マッピングは、図12Gに示すように、論理ノードFE、FF、FGと物理ノードKP、KQ、KRとの間の深さマッピングとなっている。その結果、トポロジマッピングK1およびK2は、それぞれ「トポロジマッピングK1  =  K4/K1+K9/K1+K5/K1」、「トポロジマッピングK2  =  K6/K2+K10/K2+K7/K2」、「トポロジマッピングK21  =  K6/K21+K23/K21+K3/K21」および「トポロジマッピングK22  =  K8/K22+K24/K22+K5/K22」になっている。
ここで、上記の方法を複数のレイヤを含むネットワークレイアウトに拡張します。
e）第3の論理ノードから第4の論理ノードへの有向グラフ表現であり、第3の論理ノードから第3の論理ノードへの第3の深さマッピングの連結として計算される、1つ以上の論理レイヤーマッピングを作成して記憶する。  前記第3の既知/未知の物理ノードから第4の既知/未知の物理ノードへの第1の既知/未知の物理レイヤーマッピングと、前記第4の既知/未知の物理ノードから前記第4の既知/  第4の論理ノード。
前記1つ以上の論理レイヤーマッピングは、第1または第2の方法を使用して計算されて、レイヤーマッピングを計算することに留意されたい。
前記論理レイヤーマッピングを使用して、第2の方法を使用して1つまたは複数の第2の論理トポロジマッピングを作成および格納し、トポロジマッピングを計算することができる。各第2の論理トポロジマッピングは、第5の論理ノードから第7の論理ノードへ階層的に減少する第2のレイヤーマッピングの連結として計算された第5の論理ノードから第2の第6の論理ノードへの有向グラフ表現であり、第7の論理ノードから第8の論理ノードへのトポロジパスと、第8の論理ノードから第6の論理ノードへのレイヤーの増加する第3のレイヤーマッピングとを含む。前記第1の論理トポロジパスは、1つ以上の第3の論理トポロジマッピングの連結である。
上述したように、「物理レイヤーマッピング」、「既知の物理レイヤーマッピング」、および「未知の物理レイヤーマッピング」という用語を除いて、効率のために、「既知/未知の物理レイヤーマッピング」という用語は、が使用されます。この後者の用語は、すべての既知および未知の物理レイヤマッピングを含むセットを指し、このセットの各メンバは、既知または未知の物理レイヤマッピングのいずれかであってもよい。
【００５７】
「既知/未知の物理レイヤーマッピング名」は、これらの「既知/未知の物理レイヤーマッピング」の名前である。
アクションd）での検索は、レイヤマッピングを含むことで拡張されました:
d）（拡張）[未知の物理ノードごとにネットワーク全体で適切な物理ノードを決定し、未知の物理トポロジパスごとにネットワーク全体で適切な物理トポロジパスを決定し、全体として適切な物理レイヤマッピングを決定する各未知の物理レイヤーマッピングを適切な物理層トポロジー経路のセットのうちの1つと突き合わせるステップと、前記未知の物理トポロジパスのセットの1つによって前記未知の物理トポロジパスを置き換えて記憶するステップとを含むことを特徴とする請求項1に記載の方法。  1つまたは複数の物理トポロジマッピングの連結と、前記1組の適切な物理的なマッピングの1つによる各未知の物理レイヤマッピングの置換および格納前記未知の物理ノードを、前記検索の結果に従って前記適切な物理ノードの前記1つのセットで置き換えるステップとを含むことを特徴とする方法。ここで、「物理ノード」および「物理トポロジパス」および「物理レイヤマッピング」は、それぞれ、使用可能なエンティティである。それらはすでに存在しているか、またはオンデマンドでまだセットアップされているかもしれません。例えば、ノードはまだ存在していないが、SDNコンパイラ（または他のユニット）によって要求される仮想マシンによって実装できます  必要。この行為は、請求項1)の行為d）及び請求項11に関連する。
図15A〜図16Jは、上記追加の動作を適用した例を示している。この方法は、任意の全体的なネットワークに適用することができ、提示された例に限定されないことに留意されたい。図15Aに示すような論理的ネットワーク仕様を考える。図15Aは、FE、FF、FG、FHおよびFJという名前の論理ノードを示す。論理ノードFE、FF、FGは深さd  =  1、第1層n  =  0、レベルh  =  0、
論理ノードFH、FJは深さd  =  1、第2層n  =  1、レベルh  =  0であり、
前記第2の層は前記第1の層よりも高い。
図15Aはまた、論理ノードFEから論理ノードFFへのK1という名前のトポロジマッピングと、論理ノードFFから論理ノードFGへのK2という名前のトポロジマッピングと、論理ノードFHから論理ノードFJへのK34という名前のトポロジマッピングと、  論理ノードFHから論理ノードFEへのK25という名前のレイヤマッピング、論理ノードFGから論理ノードFJへのK26という名前のレイヤマッピング、論理ノードFEから論理ノードFGへのK27という名前のトポロジパス、および名前付きトポロジパス  K35を論理ノードFHから論理ノードFJに転送し、
グラフの有向エッジとして表す。SDNコンパイラのユーザは、図15Aに示す論理ノードFE、FFおよびFGならびにトポロジマッピング、レイヤマッピングおよびトポロジパスを指定する。
【００５８】
論理ノードFHおよびFJは論理ホストノードであり、論理ノードFFは論理スイッチノードである。当業者には理解されるように、K25と名付けられたレイヤーマッピングは、K1とK2と名づけられたトポロジマッピングを含むK27という名前のトポロジー経路が続き、論理ノードFEに多重化動作をもたらす。したがって、論理ノードFEは、多重化マルチプレクサノードである。K1とK2という名前のトポロジマッピングとそれに続くレイヤ内で増加するK26という名前のレイヤーマッピングからなるトポロジパスK27は、論理ノードFGにおいて逆多重化動作をもたらす。したがって、論理ノードFGは、逆多重化マルチプレクサノードである。マルチプレクサノードは、通常、多重化と逆多重化の両方を提供するので、論理ノードFEおよびFGをマルチプレクサノードと呼ぶ。図15Aに示す論理仕様をコンパイルすることができる、物理ノードおよび物理リンクからなる物理および/または仮想リソースをSDNコンパイラに決定させることが私たちの目的です。
アクションa）を適用し、物理ノードにマッピングされていない各論理ノードについて、未知の物理ノードを作成し、前記未知の物理ノードの物理ノード名を格納する、1つまたは複数の深度マッピングによって適用する。図15Bに示すように、論理ノードFE、FF、FG、FHおよびFJはそれぞれ、1つまたは複数の深さマッピングを介して物理ノードにマッピングされないので、?X1、?X2、?X3、?X4および?X5という未知の物理ノードを作成する。
我々は、アクションb）を適用し、物理ノードにマッピングされていない各論理ノードに対して、1つ以上の深さマッピングを介して、物理ノードにマッピングされていない前記論理ノードから前記未知の物理ノードに深度マッピングを作成し、  前記未知の物理ノードから前記物理ノードにマッピングされていない前記論理ノードにマッピングするステップとを含む方法。図15Bおよび図15Cに示すように、K3からK8およびK28からK31までの深度マッピングが作成される。  図15Cは、図6Aの表記に従って、K3からK8、K28からK31までの深度マッピングを示す。
図15Bおよび図15Dに示され、上で説明したように、トポロジマッピングを計算するための第1の方法を使用して、アクションc）を適用し、K1およびK2という名前のトポロジマッピングを作成および格納する。図15Dにおいて、
「?K9[トポロジパス]」はK9が未知のトポロジパスであることを示し、
「?K10[トポロジパス]」はK10が未知のトポロジパスであることを示す。
アクションe）で上述したように、K25およびK26という名前の論理レイヤーマッピングをさらに作成および格納する。K25という名前の論理レイヤーマッピングは、論理ノードFHから論理ノードFEへの有向グラフ表現である。そして、レイヤーマッピングを計算するための第1の方法を用いて計算され、論理ノードFHから未知の物理ノード?X4へのK29という深さマッピングの連結として、未知の物理的なノード?X4から未知の物理的なノード?X1への?K32という名前の未知の物理レイヤーマッピング、未知の物理ノード?X1から論理ノードFEまでの深さマッピングK3とを含む。?K32という未知の物理レイヤーマッピングを作成して格納する。
K26と名付けられた論理レイヤーマッピングは、論理ノードFGから論理ノードFJへの有向グラフ表現であり、第2の方法を使用して計算され、論理ノードFGから未知の物理ノードへのK8という名前の深さマッピングの連結としてレイヤーマッピングを計算する  ?X3と、
未知の物理ノード?X3から未知の物理ノード?X5への?K33という名前の未知の物理レイヤーマッピングと、?X5という名前の未知の物理ノードから論理ノードFJへの深さマッピングK30とを生成し、  ?K33と命名された。
【００５９】
K25およびK26と名付けられた論理レイヤーマッピングは、図15Bおよび図15Dに示されている。
【００６０】
図15Dにおいて、「?K32[レイヤーマッピング」は、?K32が未知のレイヤーマッピングであることを示し、「?K33[レイヤーマッピング]」は、?K33が未知のレイヤーマッピングであることを示す。
図11E、図11F、図15E及び図15Fに示すように、トポロジマッピングK1及びK2の物理的エンティティ及びレイヤマッピングK25及びK26の物理的エンティティをそれぞれ決定する。これは、アクションd）の探索に使用される。図15Eのステップ1）は、図15DのK25というレイヤーマッピングを示す。図15Eのステップ2）において、図15Eのステップ1）におけるK3およびK29と名付けられた深度マッピングの値は、図15Cに示されるK3およびK29と名付けられた深さマッピングの定義に置き換えられている。図15Fのステップ1）は、図15DのK26という名前のレイヤーマッピングを示す。図15Fのステップ2）において、図15Fのステップ1）におけるK8およびK30と名付けられた深度マッピングの値は、図15Cに示されるK8およびK30という深度マッピングの定義に置き換えられている。
アクションd）では、未知の物理ノードごとに適切な物理ノードを決定します。また、未知の物理トポロジパスごとに適切な物理トポロジパスを決定します。未知の物理レイヤマッピングごとに適切な物理レイヤマッピングを決定する。各未知の物理トポロジパスを適切な物理トポロジパスのセットの1つと照合することを含む検索を実行することによって、各未知の物理レイヤーマッピングを適切な物理レイヤーマッピングの組のうちの1つと照合するステップと、各未知の物理ノードを1組の適切な物理ノードの1つと照合するステップとを含む。
図15Gに示すように、未知の物理ノードと、K1という名前のトポロジマッピングの未知の物理トポロジパスとの関係を使用し、最初の検索文として「?X1-?K9[トポロジパス]/K1->?X2」となる。未知の物理ノードと、
K2という名前のトポロジマッピングの未知の物理トポロジパスの関係を使用します。これは、2番目の検索文として「?X2-?K10[トポロジパス]/K2->?X3」です。我々は、未知の物理的ノードと、K25という名前のレイヤマッピングの未知の物理レイヤーマッピングとの関係を、第3の検索文として「?X4-?K32[レイヤーマッピング]/K25->?X1」とする。また、未知の物理ノードとK26という名前のレイヤマッピングの未知の物理レイヤーマッピング（第4の検索文として「?X3-?K33[レイヤーマッピング]/K26->?X5」である）との関係を使用して、第5の検索文「(?X1-?K9[トポロジパス]/K1->?X2)  AND  (?X2-?K10[トポロジパス]/K2->?X3)  AND  (?X4-?K32[レイヤーマッピング]/K25->?X1)  AND  (?X3-?K33[レイヤーマッピング]/K26->?X5)  」を作成する。
【００６１】
前記第5の検索文が前記検索に使用される。前記探索文は、未知の物理ノード
?X1、?X2、?X3、?X4および?X5と、?K9、?K10と名付けられた未知の物理トポロジパスと、?K32および?K33と名付けられた未知の物理レイヤーマッピングからなることに留意されたい。前記検索は、物理的なトポロジマッピングによって相互接続された物理ノードを含む物理ネットワークレイアウトに対して実行され、前記物理的なトポロジマッピングは有向グラフ表現に基づく。前記検索において、必要に応じて、上記のように要件を考慮に入れることができる。
任意選択的に、以下のアクションは、請求項1)のアクションd）の後で、請求項1)のアクションe）の前に適用されてもよい。
-  再帰を介して計算し、1つまたは複数の論理トポロジマッピングの
それぞれについて再帰パスを最上位レイヤn  =  n_maxに格納する。
一例として、限定するものではないが、図15Dに示す関係を使用して、K34という名前のトポロジマッピングの再帰パスを計算し、
“K29/K25/K34/K35+?K32[レイヤーマッピング]/K25/K34/K35+K3/K25/K34/K35+K4/K1/K27/K34/K35+?K9[トポロジパス]/K1/K27/K34/K35+K5/K1/K27/K34/K35+K6/K2/K27/K34/K35+?K10[トポロジパス]/K2/K27/K34/K35+K7/K2/K27/K34/K35+K8/K26/K34/K35+?K33[レイヤーマッピング]/K26/K34/K35+K30/K26/K34/K35”  
上記の方法により、ここで、請求項1)のアクションe）で検索文で使用される物理的エンティティを決定し、それによりK34という名前のトポロジマッピングの再帰的パスから深度マッピングを除去し、
“?X4-?K32[レイヤーマッピング]/K25/K34/K35->
?X1-?K9[トポロジパス]/K1/K27/K34/K35->
?X2-?K10[トポロジパス]/K2/K27/K34/K35->
?X3-?K33[レイヤーマッピング]/K26/K34/K35->?X5”
この検索文は、図15Gに示す検索文と同一であることに留意されたい。
一例として、限定はしないが、前記検索は、図16Aに示す物理的ネットワークレイアウトに対して実行することができる。図16Aは、物理ノードKEおよびKKによって表される第1のコンピューティング機器を示し、物理ノードKFによって表される第1のパケット転送システムと、物理ノードKGによって表される第2のパケット転送システムと、物理ノードKH、KLで表される第2の計算機と、物理ノードKJおよびKMによって表される第3のコンピューティング機器と、物理リンクであるトポロジマッピングとレイヤーマッピングによって接続されています。図16Aはまた、ポイントオブアタッチメント（PoA）p211からp218およびp221からp226を示す。
図16Bに示すように、トポロジマッピングおよびレイヤマッピングを有向エッジとしてグラフに表現する。  図16Bは、(d=0,  n=0,  h=0)における物理ノードKE、KF、KG、KHおよびKJと、(d=0,  n=1,  h=0)における物理ノードKK、KLおよびKMとを示す。図16Bはまた、グラフの有向エッジとして表される、K41からK48およびレイヤーマッピングK49からK54という名前のトポロジマッピングを示す。
当業者には理解されるように、ノードの入来エッジのタイプと出て行くエッジのタイプとの組み合わせに応じて、ノードにおいて信号を切り替え、多重化し、逆多重化し、送信し、または受信することができる  （図16Jを参照）:
-  ノード（KG;  FF）の入力エッジ（K43;  K1）がトポロジマッピングであり、
前記ノードの出力エッジ（K45;  K2）がトポロジマッピングである場合、
スイッチ操作を実行する、
-  ノードの到来エッジがレイヤー内で増加するレイヤーマッピングであり、
前記ノードの出力エッジがレイヤー内で減少するレイヤーマッピングである場合、スイッチ操作を実行する、
-  ノードの入エッジがトポロジマッピングであり、
前記ノードの出側エッジがレイヤ内で減少するレイヤマッピングである場合、スイッチ動作を実行する、
-  ノードの入ってくるエッジがレイヤー内で増加するレイヤーマッ
ピングであり、前記ノードの出て行くエッジがトポロジマッピングである場合、スイッチ操作を実行する、
-  ノード（KE;  FE）の入ってくるエッジ（K50;  K25）
がレイヤー内で減少するレイヤーマッピングであり、前記ノードの出て行くエッジ（K41;  K1）がトポロジマッピングである場合、
多重化操作を実行する、
-  ノードの到来エッジがレイヤーで減少するレイヤーマッピングであり、
前記ノードの出力エッジがレイヤーで減少するレイヤーマッピングである場合、多重化操作を実行する、
-  ノード（KJ;  FG）の入ってくるエッジ（K47;  K2）
がトポロジマッピングであり、前記ノードの出て行くエッジ（K53;  K26）
が層内で増加しているレイヤーマッピングである場合、デマルチプレックス動作を実行する、
-  ノードの到来エッジがレイヤー内で増加するレイヤーマッピングであり、
前記ノードの出力エッジがレイヤー内で増加するレイヤーマッピングである場合、デマルチプレックス操作を実行する、
-  ノードに着信エッジがなく、前記ノード（KK;  FH）の発信エッジ
（K50;  K25）がトポロジマッピングである場合、
または層内でレイヤマッピング（K50;  K25）が減少する場合、
送信動作を実行する、
-  ノード（KM;  FJ）の着信エッジ（K53;  K26）がレイヤーが増加するトポロジ
ーマッピングまたはレイヤーマッピング（K53;  K26）であり、
前記ノードが発信エッジを持たない場合に受信動作を実行する。
スイッチ動作、多重動作、逆多重動作、送信動作および受信動作を「ネットワーキング動作」と呼ぶ。再帰パス内の物理ノードによって実行されるネットワーキング動作は、前記再帰パスから深さマッピングを除去し、前記物理ステートメントによって実行されるネットワーキング動作を決定するために前記IFステートメントを使用することによって決定することができる。
論理ノードによって実行されるネットワーキング動作を決定するために、上記のIF文を使用して、論理ノードによって実行されるネットワーキング動作を決定することができる。スイッチ動作、多重動作、逆多重動作、送信動作および受信動作の1つまたは複数の前記ネットワーク動作は、上述した方法において物理ノードの能力として記憶されてもよい。スイッチ動作、多重動作、逆多重動作、送信動作および受信動作の1つまたは複数の前記ネットワーク動作は、論理ノードの要件として記憶されてもよく、  方法。我々は、
送信および/または受信動作を実行するノードを「ホスト」ノードと呼ぶ。  我々は、スイッチ動作を実行するノードを「スイッチ」ノードと呼ぶ。  多重化および/または逆多重化動作を実行するノードを「マルチプレクサ」ノードと呼ぶ。
図16Cは、図6Aの記法によるK41からK48という名前のトポロジマッピングと、K49からK54という名前のレイヤマッピングとを示す。一例として、限定ではないが、物理ノードKK、KLおよびKMは、それぞれ第1、第2および第3のコンピューティング機器の最上位層にあるので、ノードKK、KLおよびKMに対して値「ホスト」を有するノードタイププロパティを格納する。一例として、限定ではないが、物理ノードKE、KH、KJは、それぞれ第1、第2、第3のコンピューティング機器の最上位レイヤではないので、ノードKE、KH、KJに対して値「マルチプレクサ」を持つノードタイププロパティを格納する。一例として、限定ではないが、物理ノードKFおよびKGは、それぞれ第1および第2のパケット転送システムを表すので、ノードKFおよびKGに対して値「スイッチ」を持つノードタイププロパティを格納する。
【００６２】
図16Bに示される物理的ネットワークレイアウトに対して上述の第5の検索文
「(?X1-?K9[トポロジパス]/K1->?X2)  AND  (?X2-?K10[トポロジパス]/K2->?X3)  AND  (?X4-?K32[レイヤーマッピング]/K25->?X1)  AND  (?X3-?K33[レイヤーマッピング]/K26->?X5)」
を含む検索を実行し、論理ノードFHおよびFJが論理ホストノードであり、論理ノードFFが論理スイッチノードであり、論理ノードFE  およびFGはマルチプレクサノードである。
上述したように、アクションd）論理ノードFE、FF、FGの要件。  FH、FJはそれぞれ未知の物理ノード名?X1、?X2、?X3、?X4、?X5にコピーされる。K1とK2という名前の論理トポロジマッピングの要件は考慮されておらず、K25とK26という名前の論理レイヤマッピングの要件は考慮されていないため、検索ステートメントを「(?X1-?K9[トポロジパス]->?X2)  AND  (?X2-?K10[トポロジパス]->?X3)  AND  (?X4-?K32[レイヤーマッピング]->?X1)  AND  (?X3-?K33[レイヤーマッピング]->?X5)」「K1」、「/  K2」、「/  K25」、「/  K26」である。
要件を含む検索ステートメントは、疑似コードで記述されています。
MATCH  (?X1-?K9[トポロジパス]->?X2)
AND
MATCH  (?X2-?K10[トポロジパス]  ->?X3)
AND
MATCH  (?X4-?K32[レイヤーマッピング]  ->?X1)
AND
MATCH  (?X3-?K33[レイヤーマッピング]  ->?X5)
WHEREノードタイプ?X1は「マルチプレクサ」に等しい
ANDノードタイプ?X2は「スイッチ」
ANDノードタイプ?X3は「マルチプレクサ」に等しい
ANDノードタイプ?X4は「ホスト」
ANDノードタイプ?X5は「ホスト」
RETURN  ?X1,  ?X2,  ?X3,  ?X4,  ?X5,  ?K9,  ?K10,  ?K32,  ?K33
未知の物理ノードX1~X5の上記ノードタイプは、上記未知の物理ノードによって実行されるネットワーキング動作を決定する上述のIFステートメントによって決定されてもよいことに留意されたい。一例として、限定ではないが、未知の物理ノード?X4は到来エッジを持たず、前記未知の物理ノード（?X4）の発信エッジ（?K32）はトポロジマッピングまたはレイヤーマッピング（?K32）であるため、未知の物理ノードにおいて送信動作が行われるしたがって、未知の物理ノード?X4は、ノードタイプ「ホスト」を有する。
検索文の上には、図16D、16Eおよび16Fに示す一致を含むいくつかの一致が返される。図16Dは、未知の物理ノード?X1、?X2、?X3、?X4、?X5がそれぞれ物理ノードKE、KG、KJ、KK、KMに対してどのように一致するかを示す。
【００６３】
図16Eは、?K9と名付けられた未知の物理トポロジパスが、一貫性のためにK9という名前の物理トポロジパスとマッチングされ、K41およびK43という物理トポロジマッピングの連結を含む方法を示す。図16Eは、?K10と呼ばれる未知の物理トポロジパスが、K47という名前の物理トポロジマッピングを含む一貫性のためにK10という名前の物理トポロジパスに対してどのように一致するかを示す。図16Fは、?K32および?K33と名付けられた未知の物理レイヤーマッピングが、それぞれK50およびK53という物理レイヤーマッピングとどのように一致するかを示す。
アクション毎d）（拡張）上記の未知の物理トポロジパスを物理トポロジパスで置き換えて保管します。物理トポロジパスは1つ以上の物理トポロジマッピングを連結したものであり、  前記未知の物理的なノードを、前記検索の結果に従って物理的なノードに置き換えることを特徴とする請求項1に記載の方法。上記の例では、?K9という名前の未知の物理トポロジパスをK9という名前の物理トポロジパスで置き換えて保存し、?K10という未知の物理トポロジパスをK10という物理トポロジパスで置き換えて保存します。  K50という名前の物理レイヤーマッピングによって?K32という名前の未知の物理レイヤーマッピングを格納し、?K33という名前の未知の物理レイヤーマッピングをK53という物理レイヤーマッピングで置き換えて保存し、未知の物理ノード?X1、?X2  、
?X3、?X4、?X5のそれぞれの物理ノードKE、KG、KJ、KK、KMによる検索を行う。
その結果、図16Gに示すように、K3からK8およびK28からK31までの深度マッピングは、論理ノードFE、FF、FG、FH、FJと物理ノードKE、KG、KJ、KK、KMとの間の深さマッピング  。
【００６４】
K3からK8およびK28からK31までの深さマッピングが、論理ノードFE、FF、FG、FH、FJと未知の物理ノード?X1、?X2、?X3、?X4、?X5との間の深さマッピングであった図15Cと比較して。結果として、トポロジマッピングK1およびK2は、図15Dと比較して図16Hに示されるように、それぞれ「トポロジマッピングK1  =  K4/K1+K9/K1+K5/K1」および「トポロジマッピングK2  =  K6/K2+K10/K2+K7/K2」になる。
その結果、図15Dと比較して、図16Hに示すように、レイヤーマッピングK25およびK26は、それぞれ「レイヤーマッピングK25  =  K29/K25+K50/K25+K3/K25」および「レイヤーマッピングK26  =  K8/K26+K53/K26+K30/K26」になっている。これを図16Iに示す。
【００６５】
図16Iは、（d  =  1、n  =  0、h  =  0）における論理ノードFE、FFおよびFG、
（d  =  1、n  =  1、h  =  0）における論理ノードFHおよびFJ、（d  =  0、n  =  0、h  =  0）の物理ノードKE、KF、KG、KH、KJおよび（d  =  0、n  =  1、h  =  0）の物理ノードKK、KLおよびKMを示す。図16Iは、K1、K2、K41からK48までのトポロジマッピング、K3からK8およびK28からK31までの深さマッピング、K25からK26およびK49からK54までのレイヤマッピング、およびK9およびK10という物理トポロジパス  グラフの有向エッジとして表されます。
PCT  /  EP2014  /  055640（175ページ）は、
トポロジマッピングを計算するための第2の方法を記載しており、以下のアクション（わずかに修正された文言）を含む:
前記第1のネットワークから（d,  n-y,  h2）の第3のネットワークへの最初のレイヤーマッピング、前記第3のネットワークから（d,  n-y,  h2）の第4のネットワークへのトポロジーレベルパスおよび前記第4のネットワークから前記第2のネットワークへの第2のレイヤーマッピングの連結として、（d、n、h1）の第1のネットワークから（d、n、h1）の第2のネットワークへのトポロジマッピングを計算して記憶する、yが0より大きくn-n_min(d)以下であり、n_min（d）は特定の深度dで最下位層であり、n_min（d）は=>  0である、前記トポロジパスは、1つ以上の第2トポロジマッピングの連結である、
任意選択的に、前記トポロジマッピングのそれぞれのエッジ関係のために記憶する。第1のエッジ関係は、第1のレイヤーマッピングと第1のトポロジマッピングとの間の関係である。各第2のエッジ関係は、前記トポロジパス内の前記1つ以上の第2のトポロジマッピングのうちの1つと前記第1のトポロジマッピングとの間の関係である、1つ以上の第2のエッジ関係。または、第2のエッジ関係は、前記トポロジパスと前記第1のトポロジマッピングとの間の関係である。各第4のエッジ関係は、前記1つ以上の第2のトポロジマッピングのうちの1つと前記トポロジパスとの間の関係である、1つ以上の第4のエッジ関係。第3のエッジ関係は、第2のレイヤマッピングと第1のトポロジマッピングとの間の関係である、
トポロジマッピングを計算するための前記第2の方法の上記の説明では、説明を助けるために、トポロジパスの代わりにトポロジパスが使用されることに留意されたい。  この方法は、トポロジマッピングを計算するための第2の方法でトポロジーレベルパスを使用する場合にも適用することができる。
上述のように、トポロジマッピングを計算する第2の方法を使用して、図15Aに示す論理ネットワーク図に従って、K34という名前の論理トポロジマッピングをさらに作成して格納する、。K34という名前のトポロジマッピングは、K25という名前のレイヤマッピング、K27という名前のトポロジパス、K26という名前のレイヤマッピングの連結として計算されます。  K27という名前のトポロジパスは、図15A、図15Dおよび図16Jに示すように、K1およびK2という名前のトポロジマッピングの連結からなる。図15Dは、図6Cの表記を使用する。
図15Aに示されている論理ネットワーク図のトポロジパスK35は、転送エントリを作成する要求されたトポロジパスであると考えられる。上述のように、K35という名前の要求されたトポロジパスの再帰パスを計算する。図16Hに示されるエッジK1、K2、K25、K6、図15Dに示されるエッジK27、K34、K35、および図16Eに示されるエッジK9およびK10を使用して、我々は再帰的パスおよび  図17Aに示すように、各エッジのネストされたエッジ関係を生成する。
【００６６】
PCT  /  EP2014  /  055640（197頁）は、
スイッチング識別子の組のサブセットのみが使用されるため、すべてのネストされたエッジ関係を計算する必要がないことを記載している。
この方法では、要求されたトポロジーレベル経路の前記再帰パス転送エントリから計算する。再帰パスには、d  =  0、h  =  h_minが物理ノード（PCT  /  EP2014  /  055640の192および193ページ参照）である各ノードの次の情報が含まれます。
-  パケットまたは信号として入力ポートを持たない再帰パス内の第1のノードを除いて、物理または仮想ノードとトポロジマッピングまたはレイヤーマッピングとの間のPoAである入力ポートが作成される  再帰的パスの第1のノードによって実行される
-  パケットまたは信号の受信時に出力ポートを持たない再帰パス内の最後のノードを除いて、物理ノードまたは仮想ノードとトポロジマッピングまたはレイヤーマッピングの間のPoAである出力ポート  再帰的パスの最後のノードによって行われる
さらに、エッジ関係のセットが各エッジに対して計算された場合、再帰パスには以下も含まれます。
-  着信トポロジマッピングまたはレイヤーマッピングで着信エッジ関係のセット。ただし、着信トポロジマッピングまたはレイヤーマッピングを持たない再帰パスの最初のノードは例外です
-  送信トポロジマッピングまたはレイヤーマッピングで発信エッジ関係のセット。送信トポロジマッピングまたはレイヤーマッピングを持たない再帰パスの最後のノードを除きます
着信および/または発信エッジ関係のセット内のエッジの数は、上述のような関連する着信および/または発信セットのエッジ関係を決定することによって低減され得る（PCT  /  EP2014  /  055640、197頁参照）。
上記の入力ポート、出力ポート、着信エッジ関係のセット、発信エッジ関係のセット、および着信セットのエッジ関係および発信関係のエッジ関係のスイッチング識別子の組み合わせは、  物理ノードKE、KF、KG、KJ、KK、KMのエントリを転送する。一例として、限定するものではないが、図17Cに示すエッジK27、K35およびK41からK48のためのスイッチング識別子を使用することができる。
再帰的に計算され格納されたネストされたエッジ関係の量が削減される転送エントリを作成する別の方法を提示します。当業者には理解されるように、典型的には、異なる層が異なる識別子を使用し、転送またはスイッチングが前記層の識別子に基づいて実行される。次の操作を実行します。
a)  前記トポロジマッピングを計算するために前記第2の方法を使用して計算された前記第2のエッジ関係（K27/K34）以外のネストされたエッジ関係を計算して格納する、再帰を介して計算して前記要求されたトポロジパス（K35）  （K34/K35）のいずれかを含むことができる。
以下のいずれかの第1のエッジ関係の第2のエッジ関係は、前記第1のエッジ関係に多重化またはマッピングされた任意の第2のエッジ関係を示すことに留意されたい。例えば、限定するものではないが、エッジ関係「x  /  y  /  z」
において、エッジ関係「y  /  z」は、エッジ関係「x  /  y」
の後続のエッジ関係である。
これは、図15Dおよび図17Aに示されている。図15Dでは、トポロジマッピングを計算するための第2の方法を使用して、K34という名前のトポロジマッピングが計算される。図17Aのステップ2に示すように、トポロジマッピングK34は、トポロジマッピングを計算する第2の方法を使用して計算され、ネストされたエッジを計算および格納しないので、K35という名前の要求されたトポロジパスの再帰パスの計算において  「/K34/K35」からの逸脱によって示されるように、K27という名前のトポロジパスおよびそれ以上のエッジ関係の関連性。
トポロジ・レベルのパスは、単一のトポロジパスでも、単一のレベルパスでもかまいません。トポロジマッピングの作成時に、トポロジマッピングの計算に使用されるトポロジレベルパスは、明示的に作成されたトポロジレベルパスでも、トポロジマッピングとレベルマッピングの連結でもかまいません。上記の方法を使用すると、再帰的に計算され、格納されたネストされたエッジ関係の量が削減され、計算プロセスのスピードアップという利点があります。図17Aのステップ6は、図17Aのステップ5を図16Cおよび16Gのエッジと組み合わせた結果である。
図17Bは、要求されたトポロジパスK35から計算された再帰パス内の各物理ノードを、入力ポート、出力ポート、着信セットのエッジ関係、および発信側エッジ関係セットから示す。
我々は以下の行動をとる。
b)  要求されたパスの巡回パスの計算の後、前記巡回パス内のすべての物理ノードのレイヤにおいて減少するすべての着信レイヤマッピングのエッジ関係の着信セットから削除するステップと、  トポロジマッピングを計算するための第2の方法と、それに続くエッジ関係とを使用して、
c)  要求されたパスの再帰的パスの計算の後、前記再帰的パス内のすべての物理的ノードの層内で増加するすべての出て行くレイヤーマッピングのエッジ関係の出力セットから除去し、  トポロジマッピングを計算するための第2の方法と、それに続くエッジ関係とを使用して、
これを図17Bに示す。
アクションb）では、着信レイヤマッピングからの物理ノードKEにおいて、着信セットのエッジ関係から除去されたK50という名前のレイヤにおいて減少する、トポロジマッピング「K25/K34」を計算するための第2の方法を使用して計算されたエッジ関係  図17Bの第3行、及び次のエッジ関係「K34/K35」、
「/K34/K35」を横切ることによって示される。
アクションc）において、着信レイヤマッピングからの物理ノードKJにおいて、着信セットのエッジ関係から除去されたレイヤーK53で増加するネストされたエッジ関係が、トポロジマッピング「K26/K34」を計算する第2の方法を用いて計算される  図17Bの6番目の行と、後続のエッジ関係「K34/K35」と、
「/K34/K35」の交差によって示される。
【００６７】
図17Bでは、図17Cのスイッチング識別子が存在するエッジが太字で示されている。第1の例として、KE、KF、KG、KH、KJという名前の物理ノードは、物理データリンク層（OSIレイヤ2）MAC（Media  Access  Control）およびネットワーク層（OSIレイヤ3）機能を有すると考える。また、SDNコンパイラのユーザは、図15Aに示される論理ネットワーク図の仕様と組み合わせて、特定の深さd>  0および層nにスイッチング特性が適用されるよう
に指定したと考える。
一例として、限定ではないが、そのようなスイッチング特性は、特定の深さd>  0、層nがネットワーク層（OSIレイヤ3）、IPv4ソースおよびIPv6宛先アドレスで転送することを考慮することである。一例として、限定ではないが、そのようなスイッチング特性は、IPv6ソースアドレスの3タプル、IPv6宛先アドレスおよびIPv6を提供するIPv6フローラベルを使用して、特定の深さd>  0、層nをネットワーク層（OSIレイヤ3）とみなすことである  フロー分類。
一例として、このようなスイッチング特性は、特定の深さd>  0、層nをプロトコル番号を使用するトランスポート層（OSIレイヤ4）とみなすことであり得る。一例として、限定ではないが、このようなスイッチング特性は、プロトコル番号の3タプルを使用して、特定の深度d>  0、レイヤnを複合トランスポートレイヤ（OSIレイヤ4）およびアプリケーションレイヤ（OSIレイヤ7）とみなすことであり、  ポートと目的地のよく知られたポート。当業者には理解されるように、前記スイッチング特性は、特定の深さd>  0および層nのすべてのノードおよびネットワークに適用される。
前記スイッチング特性は、ネーミングおよびアドレッシング、パケットフォーマット、および予想される転送動作を含むことができる。当業者には理解されるように、スイッチング識別子は、スイッチング特性を特定のネットワークおよびノードに適用することによって決定される。一例として、特定の深さd>  0でのスイッチング特性の場合、層nは、IPv4ソースおよびIPv6宛先アドレスでの転送を使用するネットワーク層（OSIレイヤ3）であり、第1のノードには第1のIPv4アドレスが動的ホスト制御プロトコル（Dynamic  Host  Control  Protocol  :  DHCP）サーバであり、第2のノードには、例えばDHCPサーバによって限定されるものではないが、第2のIPv4アドレスが割り当てられてもよい。ここで、例えば、前記第1のノードから前記第2のノードへのトポロジパスのスイッチング識別子は、前記第1のアドレスをソースノードとし、前記第2のアドレスを宛先ノードとすることができる。
上述のように、要求論理ノードは、1つ以上の深度マッピングを介して前記論理ノードにマッピングされた未知の物理ノードにコピーされてもよい。  前記要件には、スイッチング特性が含まれていてもよい。
第1の例として、KKおよびKMという名前の物理ノードがトランスポート層（OSIレイヤ4）およびアプリケーション層（OSIレイヤ7）機能を有すると考える。我々は、（d=1,  n=0,  h=0）のノードがネットワーキング層（OSIレイヤ3）
における論理ノードを表すと考える。また、トランスポート層（OSIレイヤ4）とアプリケーション層結合（OSIレイヤ7）で論理ノードを表現するために（d=1,  n=1,  h=0）のノードを考える。図17Cは、一例として、限定するものではないが、K41からK48、K27およびK35という名前のエッジのスイッチング識別子を示す。
エッジK41のスイッチング識別子は、データアクセス層（MAC）を実行しているデータリンク層における物理PoAを示す（d=0,  n=0,  h=0）の「ソースp211、
宛先p212」である。当業者には理解されるように、実装では、イーサネットMACアドレスは、この例で使用されているPoAs  p211およびp212の代わりにアタッチメントポイント  (Point-of-Attachment  :  PoA）として使用できます。エッジK42からK48のスイッチング識別子はまた、データリンク層における物理PoAを示し、MACを実行する。（d=1,  n=0,  h=0）では、IPv6ソースアドレスの3タプル、IPv6宛先アドレスおよびIPv6フローラベルを使用して、IPv6フロー分類を提供します。
我々は、論理ノードFEのインタフェースであるポイント・オブ・アタッチメントと、値「1:2:3:4:11:11:11:10」を持つK1というトポロジ・マッピングを示すIPv6アドレスを使用する。我々は、論理ノードFGのインタフェースであるポイントオブアタッチメントを示すIPv6アドレスと、値「1:2:3:5:11:11:11:13を有するK2というトポロジマッピングを使用する。図17Cに示すように、エッジK27のスイッチング識別子は「ソース1:2:3:4:11:11:11:10,  宛先1:2:3:5:11:11:11:13,  フローラベル100」である。送信元および宛先IPv6アドレスの表現では、先行ゼロは省略されていることに注意してください。
【００６８】
値  '100'がIPv6フローラベルに使用されます。あるいは、PCT  /  EP2014  /  055640（245頁）に記載されているように、IPv6アドレス内のIPv6アドレスのインタフェース識別子を使用して論理ノードを識別することができ、ノードではないネットワークからなる残りのアドレスは、IPv6グローバルルーティングプレフィックスおよび/またはサブネット識別子アドレスのサブネット化によって表すことができる。
【００６９】
移動性を可能にするために、一般に、第1の物理ノードと第2の物理ノードとの間の第1のトポロジマッピングが除去され、前記第2の物理ノードと第3の物理ノードとの間の第2のトポロジマッピングが作成され、  物理ノード。例えば、ノードは、そのIPv6アドレスとして、ノードを識別するIPv6インタフェース識別子と、IPv6グローバルルーティングプレフィックスまたはサブネット識別子として「未指定」を示す特別な値とを使用することができる。言い換えれば、アドレスはノードを指定するだけであり、ノードが存在するネットワークではない。したがって、限定ではないが、TCPおよびアプリケーションなどの上位層プロトコルは、ノードの別のネットワークへの移行の場合には影響を受けない。あるいは、PCT  /  EP2014  /  055640（250頁）
に記載されているように、IPv6アドレスはノードを識別するために使用され、IPv6アドレスはノードではないネットワークを識別するために使用され、移動性を可能にする。
（d=1,  n=1,  h=0）では、プロトコルの3タプル（トランスポート識別子）、
送信元ポート、および宛先ポートを使用します。エッジK35のスイッチング識別子は、「送信制御プロトコル」とHTTPに使用される周知のポート80との組み合わせを示す「TCP、送信元ポート80、宛先ポート80」の3タプルである。あるいは、TCPプロトコルである  'TCP'の代わりに  'PROTOCOL  =  6'を使用することもできます。エッジK41〜K48、K27、K35以外のエッジには、切り替え識別子が割り当てられていないことに留意されたい。
その結果の転送エントリを図17Dに示す。  図17Dは、K35という名前の要求されたトポロジパス  から計算された再帰パス内の各物理ノードKE、KF、KG、KJ、KK、KMを示し、入力ポート、出力ポート、  およびスイッチング識別子を伴うエッジ関係の発信セット。図17Cに示すスイッチング識別子が割り当てられたエッジ関係の着信セットのエッジおよびエッジ関係の出力セットのエッジのみが示されていることに留意されたい。
上記のアクションa）の代替として、次のアクションを実行して、ネストされたエッジ関係をすべて計算して保存し、次のアクションを実行できることに注意してください。
a)  すべてのトポロジマッピングを計算するための第2の方法を使用して計算された前記第2のエッジ関係（前記第2のエッジ関係（K27/K34）を含むエッジ関係のすべての組から、要求された経路の巡回経路の計算後、  前記再帰パス（KE;  KF;  KG;  KJ;  KK;  KM）内の物理ノードと、それに続くエッジ関係（K34/K35）と、
我々は、パケット交換網（PSN）内の物理ノードと非PSN内の物理ノードの転送命令を計算する方法を提示する。我々は、パケット交換網（PSN）内の物理ノードと、非PSN内の物理ノードとを区別する。物理的パケット交換ノードと呼ばれるPSNの物理ノードは、パケットの転送および統計的多重化を実行する。物理的非パケット交換ノードと呼ばれる非PSNの物理ノードは、物理的信号の中継および多重化を行う。非PSNの例は、回線交換ノード（CSN）であるが、これに限定されるものではない。
限定するものではないが、非PSNの一例は、物理的信号の多重化を実行する無線ネットワーク内のノードである。以下のアクションを含む以下の方法を実行することによって、要求されたトポロジパス、レベルパスまたはトポロジーレベルパスの再帰パス内で、以下の方法におけるノードと呼ばれる物理的パケット交換ノードのための転送エントリが計算される  ：
i.  再帰的パスが、前記ノードに対する着信トポロジマッピングまたは着信レイヤマッピングを含まず、前記ノードが1つまたは複数の深度マッピングを介して再帰パスのソースネットワークにマッピングされる場合、前記再帰パス内の前記ノードの、パケットを生成するために前記物理パケット交換ノードに指示する転送エントリを、各送信トポロジマッピングおよび各送信レイヤマッピングに対して作成するステップと、前記出力トポロジマッピングまたは前記出力レイヤマッピングの前記エッジ関係の出力セットのスイッチング識別子を含むパケットオーバーヘッドと比較して、前記出力ポートは、前記ノードと前記出力トポロジマッピングまたは前記出力レイヤマッピングとの間のアタッチメントポイントであることを特徴とする請求項1に記載の方法、
ii.  そうでなければ、再帰的パスが前記ノードに対する発信トポロジマッピングまたは送信レイヤマッピングを含まず、前記ノードが1つまたは複数の深度マッピングを介して再帰パスの宛先ネットワークにマッピングされる場合、それぞれの到来するトポロジマッピングと、前記再帰パス内の前記ノードのフォワーディングエントリへの各入力レイヤマッピングとを作成し、前記着信トポロジマッピングまたは前記着信レイヤマッピングのエッジ関係の着信セットのスイッチング識別子に従ってパケットを入力ポートで受信するように前記ノードに指示するステップと、前記入力ポートは、前記ノードと前記着信トポロジマッピングまたは前記着信レイヤマッピングとの間のアタッチメントポイントであることを特徴とする方法、
iii.  そうでなければ、再帰パスは、前記ノードに対する1つの着信トポロジマッピングまたは1つの着信レイヤマッピングを含み、再帰パスは、前記ノードに対する1つまたは複数の送信トポロジマッピングまたは送信レイヤマッピングを含み、前記再帰パス内の前記ノードの各出力トポロジマッピングおよび各出力レイヤマッピングに対して、入力ポートで入力パケットを受信するように前記ノードに指示する転送エントリを作成するステップと、前記入力ポートは、前記ノードと、前記再帰パスによって指定された前記着信トポロジマッピングまたは前記着信レイヤマッピングとの間のアタッチメントポイントであり、前記着信トポロジマッピングまたは前記着信レイヤーマッピングのエッジ関係の着信セットのスイッチング識別子に従って前記パケットを処理し、前記着信トポロジマッピングまたは着信レイヤマッピングのエッジ関係の前記出力識別子の前記スイッチング識別子に従って前記パケットを変更するステップと、前記送信トポロジマッピングまたは前記送信レイヤマッピング、前記出力ポートは、前記ノードと前記出力トポロジマッピングまたは前記出力レイヤマッピングとの間のアタッチメントポイントであることを特徴とする請求項1に記載の方法。
上記の動作i）における物理的なパケット交換ノードを送信ホストノードと呼ぶ。上記の動作ii）における物理的パケット交換ノードを受信ホストノードと呼ぶ。上記の動作iii）における物理的パケット交換ノードを交換ノードと呼ぶ。第1のネットワークから第2のネットワークへのトポロジマッピングでは、前記トポロジマッピングを第1のネットワークの発信トポロジマッピングと呼び、前記トポロジマッピングを第2のネットワークの着信トポロジマッピングと呼ぶ。第1のネットワークから第2のネットワークへのレイヤマッピングでは、前記レイヤマッピングを第1のネットワークの送信レイヤマッピングと称し、前記レイヤマッピングを第2のネットワークの入力レイヤマッピングと呼ぶ。
フォワーディングエントリは、要求されたトポロジパス、レベルパスまたはトポロジーレベルパスの再帰パス内で、以下の方法でノードと呼ばれる物理的な非パケット交換ノードについて計算される。  以下のアクション：
i.  再帰パスが、前記ノードに対する着信トポロジマッピングまたは着信レイヤマッピングを含まず、前記ノードが1つ以上の深さマッピングを介して再帰パスのソースネットワークにマッピングされる場合、前記再帰的経路内の前記ノードの命令のマッピングを生成するステップと、前記出力トポロジマッピングまたは前記出力レイヤマッピングの前記エッジ関係の出力セットの前記スイッチング識別子に従って信号を生成するように前記ノードに指示するステップと、前記出力ポートは、前記ノードと前記出力トポロジマッピングまたは前記出力レイヤマッピングとの間のアタッチメントポイントであることを特徴とする請求項1に記載の方法、
ii.  そうでなければ、再帰パスが、前記ノードに対する発信トポロジマッピングまたは送信レイヤマッピングを含まず、前記ノードが、1つまたは複数の深さマッピングを介して再帰パスの宛先ネットワークにマッピングされる場合、各到来するトポロジマッピングおよび前記反復パス内の前記ノードの各入力レイヤーマッピングを作成して命令を生成し、前記着信トポロジマッピングまたは前記着信レイヤマッピングのエッジ関係の着信セットのスイッチング識別子に従って信号を入力ポートで受信するように前記ノードに指示するステップと、前記入力ポートは、前記ノードと前記着信トポロジマッピングまたは前記着信レイヤマッピングとの間のアタッチメントポイントであることを特徴とする方法、
iii.  そうでなければ、再帰パスは、前記ノードに対する1つの着信トポロジマッピングまたは1つの着信レイヤマッピングを含み、再帰パスは、前記ノードに対する1つまたは複数の送信トポロジマッピングまたは送信レイヤマッピングを含み、前記再帰パス内の前記ノードの各出力トポロジマッピングおよび各出力レイヤマッピングに対して、入力ポートで入力信号を受信するように前記ノードに指示する命令を生成するステップと、前記入力ポートは、前記ノードと、前記再帰パスによって指定された前記着信トポロジマッピングまたは前記着信レイヤマッピングとの間のアタッチメントポイントであり、前記着信トポロジマッピングまたは前記着信レイヤマッピングのエッジ関係の着信セットのスイッチング識別子に従って前記信号を処理し、前記着信トポロジマッピングまたは前記着信レイヤマッピングの前記エッジリレーションの出力セットのスイッチング識別子に従って前記信号を修正するステップと、発信トポロジマッピングまたは前記発信レイヤマッピング、前記出力ポートは、前記ノードと前記出力トポロジマッピングまたは前記出力レイヤマッピングとの間のアタッチメントポイントであることを特徴とする請求項1に記載の方法
SDNコンパイラがパケット交換ノードと非パケット交換ノードの両方のための命令を作成する統一的な方法を提供するので、非パケット交換ネットワークの場合にもエントリを転送することが参照される。非パケット交換ネットワークの場合の転送エントリは、前記入力信号を任意に変更した後に、入力ポートにおける入力信号を出力ポートにどのように中継すべきかを指定する命令である。
【００７０】
限定ではないが、WDM  ROADMの場合、SDNコンパイラは、
入力ポートにおける入力波長を、クロスコネクトとも呼ばれる、どのようにして出力ポートに中継すべきかを指定する命令を作成する。  例えば入来する波長の周波数を変化させるような、上記の入来波長を有する。
アクションiii）及び複数の出力ポートの場合、入力信号は複製され、複数の出力ポートから送出されることに留意されたい。上述した物理的非パケット交換ノードの転送エントリを作成する方法のステップi）およびステップiii）において、2つ以上の送信トポロジマッピングまたは送信レイヤマッピングの場合には、各送信  トポロジマッピングまたは発信レイヤマッピングをサポートします。当業者には理解されるように、代替的に、2つ以上の出力トポロジマッピングまたは出力レイヤマッピングの出力ポートおよびスイッチング識別子を指定する単一の命令を作成することができる。
図17Dに示すように、物理ノードKE、KF、KG、KJ、KKおよびKMに切り替える物理パケットの転送エントリを作成するために、上述の方法を適用する。上記の転送エントリは、直接的または間接的に、再帰パスの物理ノードにSDNコントローラを介して一例として送信されますが、これに限定されません。
現在の情報技術  (Information  Technology  :  IT）の展開では、
一方ではネットワーキングと他方ではストレージとの間の疎結合があります。結果として、ネットワークはアプリケーションの可視性を制限し、アプリケーションはネットワークの可視性を制限し、結果的に最適なパフォーマンスのITリソースをもたらしません。また、ネットワークオペレータはアプリケーションの可視性が限られており、アプリケーション開発者はネットワーク機能の可視性が限られているため、最適なソフトウェア開発、アプリケーションおよびネットワーク操作が可能になります。PCT  /  EP2014  /  055640は、
SDNコンパイラ方法を記載している。
【００７１】
SDNコンパイラ方法をネットワーク全体に適用することによって、ネットワーキング、ストレージおよび計算の間のより緊密な結合が作成される。ここで、最上位層の論理ノードは、論理ストレージまたは論理計算を示し、要求されたトポロジーレベルパスは、論理メッセージストリーム。前記最上位レイヤーは、「アプリケーションレイヤー」（OSIレイヤー7）ではなく、論理記憶または論理計算を示す論理ノードを含む層であることに留意されたい。
PCT  /  EP2014  /  055640に記載された方法は、
最上位層の論理ノードが論理記憶装置または論理計算を示し、要求されたトポロジーレベルパスが論理メッセージストリームを示す全体ネットワークに適用される。これを図20に示します。図20は、ネットワークKA、KB、KC、KD、LA、LB、LC、LDおよびL5、L14およびL22という名前のトポロジマッピング、L12、L13、L15、L16、L17およびL18という名前の深度マッピング、  L7、L10、L19およびL20と、L11、L21およびL23と名付けられたトポロジパスと、エッジ関係とを含む。図20は、注釈テキストを除いて、図5Fと同一であることに留意されたい。図20は、論理メッセージ・ストリームを示すトポロジー・パスL23を示しています。
当業者には理解されるように、論理メッセージストリームは、第1の物理ストレージまたは計算リソースの第1の論理抽象化から、第2の物理ストレージまたは計算リソースの第2の論理抽象化まで生成される。図20の例では、第1の物理ストレージまたは計算リソースの前記第1の論理抽象化が論理ノードLCであり、前記第2の物理ストレージまたは計算リソースの前記第2の論理抽象化が論理ノードLDであり、前記第1の物理ストレージ  または計算リソースが物理ノードKCであり、前記第2の物理ストレージまたは計算リソースが物理ノードKDであることを特徴とする方法。
前記メッセージストリーム上で交換されるメッセージは、ストレージまたは計算を示す第1の論理ノードによって作成され、記憶または計算を示す第2の論理ノードによって作用されることを当業者は理解するであろう。ストレージまたは計算を表す論理ノードによってメッセージに作用する例には、限定はしないが、前記メッセージの一部を格納するステップと、前記メッセージに応答して、前記メッセージの一部に基づいて機能（計算）を実行し、前記計算の結果をローカルに格納するステップと、前記メッセージの一部に基づいて機能（計算）を実行し、前記計算結果を前記送信側に送信するステップと、任意選択的に前記メッセージの修正および転送（その一部）（メッセージの一部に基づいて）機能（計算）を実行するステップと、前記計算の結果をストレージを示す別の論理ノードに転送すること、またはメッセージの送信者ではないことを計算することとを含む方法。
前記メッセージの格納（その一部）の例は、RESTful  HTTP  PUTメソッド[REST  =代表状態転送]、[HTTP  =  HyperText  Transfer  Protocol]である。前記メッセージに応答する例は、HTTP要求に応答するHTTP応答である。前記メッセージの一部に基づいて機能（計算）を実行し、前記計算の結果を送信者に送り返すことの例は、SOAP  RPC  [SOAP  =  Simple  Object  Access  Protocol]、[RPC  =  REMOTE  PROCEDURE  CALL]を選択します。限定されないが、前記メッセージの一部に基づいて機能（計算）を実行し、前記メッセージの送信者ではない前記論理ノードが記憶または計算を表す論理ノードに前記計算の結果を転送する例は、  分散計算。
【００７２】
図20において、論理メッセージ・ストリームを示すトポロジー・パスL23は、PCT  /  EP2014  /  055640に記載されているSDNコンパイラー・メソッドに従って、
物理ネットワーキング、計算およびストレージ・リソースのための指示を転送する要求されたトポロジパス  である。図20は、L21という名前のトポロジパスが論理パケットストリームであることを示しています。論理メッセージ・ストリームであるL23という名前のトポロジー・パスは、論理パケット・ストリームであるL21というトポロジー・パスに多重化されます。メッセージストリームは、通常、パケットのペイロード内でパケットストリーム内に運ばれる。図20は、L11という名前のトポロジパスが、物理ノードKAからL5という名前のトポロジマッピングによって示される物理ノードKBの方向に物理リンクを使用する物理パケットストリームであることを示す。
上位層の論理ノードが論理記憶装置または論理計算を示し、要求されたトポロジ・レベルパスが論理メッセージ・レベルパスを示す全体的なネットワークに上述の方法を適用することにより、ネットワーキング、ストレージおよび計算の間の緊密な結合が作成される。  ストリーム。一例として、（d=0,  n=1,  h=0）の物理ノードKKおよびKMを物理ストレージを表したり、（d=1,  n=1,  h=0）の論理ノードFHおよびFJを計算して考慮して論理ストレージまたは計算を表すことを考える。図17Fに示すように、要求されたトポロジパスK35は、ユーザエージェントである論理ノードFHからオリジンサーバである論理ノードFJへの「HTTPリクエスト1」という名前のHTTPリクエストを示す。（d=1,  n=0,  h=0）の論理ノードFE、FF、FGは、IPv4ソースアドレス、
IPv4宛先アドレス、プロトコル、ソースポート、および宛先ポートの5タプルを転送するとみなします。当業者には理解されるように、典型的には、そのような5タプルは2つ以上の層に分割されるが、（d=1,  n=0,  h=0）
サーバでは5タプルを使用する。
【００７３】
エッジK41〜K48、K27およびK35のためのスイッチング識別子は、図17Eに示されている。我々は、図16D、16Eおよび16Fに示されているマッチを含む多くのマッチをもたらす上述の方法を適用する。上述したように、転送命令は、K35という名前の要求されたトポロジパスから計算された再帰パス内の各物理ノードについて、入力ポート、出力ポート、到着するエッジ関係セットおよびエッジ関係の出力セットを図17Eに示すように、図17Bに示されているスイッチング識別子と、スイッチング識別子とを含む。結果として得られる転送命令を図17Gに示す。
当業者には理解されるように、K27という名前のスイッチング識別子はパケットヘッダを決定し、K35というスイッチング識別子はパケットペイロードを決定する。要求されたトポロジーレベルパスは、図17Fに示されているように単一のHTTP要求「HTTP要求1」のような単一のメッセージストリームであってもよいことに留意されたい。より実際的には、要求されたトポロジー・レベルパスは、複数のHTTP要求などのメッセージ・ストリームのセットである可能性があります。
メッセージストリームを表す要求されたトポロジーレベルパスを定義または要求するSDNコンパイラのユーザは、ソフトウェア開発者、ITアーキテクト、ITオペレータなどの人物であってもよい。メッセージストリームを表す要求されたトポロジーレベルパスを定義する、または要求するSDNコンパイラのユーザは、例えば、コンパイラまたはクラウドオーケストレーションシステムなどのプログラムであってもよい。トポロジ・レベルパスは、単一のトポロジパスで構成できます。この例では、K35という名前のトポロジパスのスイッチング識別子は、「送信元IPアドレス、宛先IPアドレス、TCP、送信元ポート80、宛先ポート80」の5組です。当業者には理解されるように、いわゆる「よく知られたTCPポート」80が使用され、HTTPを示す。
既知のポートを使用する代わりに、既知のポート範囲外の番号でポートを使用することができます。これは、上記の方法で作成される命令には、アプリケーション層（OSIレイヤ7）の識別子と、  この例では「送信元ポート80、宛先ポート80」およびメッセージストリームの識別子です（この例では「HTTP要求1」）。周知のポートによって提供されるアプリケーションとアプリケーション層（OSIレイヤ7）との間の緩やかな結合の代わりに、アプリケーションとアプリケーション層とのより密接な結合が、上述の手法を使用して作成されることに留意されたい。また、現在よく知られているTCP-port  80（HTTP）を多くのアプリケーションに使用することで、アプリケーション層識別子に基づいてこれらのアプリケーションを区別することは不可能です。
複数のアプリケーションが同一のIPv4またはIPv6アドレスおよび珍しいことではない同じよく知られているポート（たとえば、よく知られたTCPポート80）を使用する場合、パケットヘッダー情報に基づいて前記アプリケーションを区別することはできません。  パケットのペイロードのより多くのリソースを消費する検査の使用。既知のポート範囲外のポート番号を使用すると、IPベースのネットワークで同じIPv4またはIPv6アドレスを使用するアプリケーションを区別できます。上記の説明では、ホストノードの場合にも「転送エントリ」が参照され、物理装置のための命令のための単一の用語として使用されることに留意されたい。当業者には理解されるように、ホストノードは転送するのではなく、パケットまたは信号を送信および受信するだけである。
PCT  /  EP2014  /  055640（222頁）は、要求されたトポロジパス、レベルパスまたはトポロジレベルパスがユーザのためのサービスとみなされることを説明している。前記ユーザが人、組織、またはアプリケーションであることを含むが、これに限定されない。典型的には、前記サービスの要件は、前記ユーザと前記サービスのプロバイダとの間のサービスレベル契約（SLA）である契約に格納される。定義によってトポロジパスを含み、定義によってレベルパスを含む要求されたトポロジーレベルパスがメッセージストリームである場合、アプリケーションとSDNである前記サービスのプロバイダとの間にSLAを作成することができる  コンパイラ。
PCT  /  EP2014  /  055640（ページ  222）では、SDNコンパイラ
の方法では、一連のネットワークの変更の影響を判断するために使用されるエッジ関係を使用し、エッジを再計算して、要求されたトポロジレベル  パス。要求されたトポロジレベルパスがメッセージストリームである場合、
SLAはSDNコンパイラによって維持されるようになりました。PCT  /  EP2014  /  055640（153頁）に記載されているように、トポロジパスの特性に対する典型的な要件には、容量（スループット）、遅延、ジッタ、パケット損失、可用性およびパケットシーケンス保存が重要である  メッセージストリームの特性。
PCT  /  EP2014  /  055640（ページ  221）は、上記の方法ごとにトポロジマッピング、レイヤマッピング、トポロジパス、レベルパスまたはトポロジーレベルパスを作成する場合、オプションで1つ以上の要件が考慮されることを説明しています。  前記トポロジマッピング、レイヤーマッピング、トポロジパス、レベルパスまたはトポロジーレベルパスを作成するステップと、を含む方法。当業者には理解されるように、トポロジマッピング、レイヤマッピング、トポロジパス、レベルパスまたはトポロジーレベルパスの作成においてこの情報を使用することにより、ネットワークおよびエッジの特性を記憶することによって理解されるであろう  この情報を集中的に格納することにより、任意の時点で再帰パスを計算する能力を有することにより、現在のネットワーキング実装よりもはるかに複雑な要件を作成することができる。要求されたトポロジ・レベルパスがメッセージ・ストリームである場合、前記トポロジ・レベルパスを作成する際に、1つ以上の要件を考慮に入れることができる。
当業者には理解されるように、最上層の論理ノードが論理記憶または論理計算を示し、要求されたトポロジーレベルパスが論理メッセージストリームを示す全体のネットワークに上記の方法を適用する  例えばサービス指向アーキテクチャ（SOA）において有益である。  SOAの例は、SOAPベースのWebサービスです。
PCT  /  EP2014  /  055640（ページ  222）では、SDNコンパイラ  の方法では、一連のネットワークの変更の影響を判断するために使用されるエッジ関係を使用し、エッジを再計算して、要求されたトポロジレベル  パス。1つまたは複数のエッジを再計算することができない場合、上記の方法を使用して、ネットワーク全体（の一部）について請求項1のアクションe）を検索することができる。
当業者には理解されるように、上述した方法は、新たな適切な物理ノード、適切な物理的トポロジー・パスを決定することによって、論理記憶装置、論理計算および論理ネットワーキング・リソースの移動性のために、  層ネットワーク、適切な物理レイヤーマッピングを含む。現在の物理ノード、物理トポロジパス、および物理レイヤーマッピングと比較して「新規」です。
PCT  /  EP2014  /  055640（39頁、42頁、245頁）は、監視及び/又は記録及び/又はバッファリング及び/又はそれらに限定されないが、パケット上の物理ノード又は仮想ノードによる動作を、  パケットをその1つ以上の出力ポートに転送する前に、または着信パケットをブロックする前に、入力パケットヘッダおよび/またはペイロードを変更または修正することができる。前記追加のオプションの操作は、SDNコンパイラのユーザによって指定することができる。前記追加の動作は、仮想マシン（例えば、限定するものではないが）に実行され、ネットワーク機能仮想化（NFV）をもたらす。ここで、仮想ノードは、監視および/または  パケットをその1つ以上の出力ポートに転送する前に入力パケットヘッダおよび/またはペイロードの記録および/またはバッファリングおよび/または修正を行うこと、または入力パケットをブロックすることを含む。
再帰的パスが、前記物理ノードから論理ノードへの第1の深さマッピングを含み、前記論理ノードから前記物理ノードへの第2の深さマッピングが直接行われる場合、パケットに対する追加の動作は、物理ノードによって実行されてもよい。  言い換えれば、追加動作を実行するための論理ノードの要件が、前記追加動作を実行するための物理ノードの能力と一致するかどうかを判定する。したがって、物理ノードの特性は、前記物理ノードによって実行され得る1つまたは複数の追加の動作を含むことができる。したがって、論理ノードの要件は、実行されるべき1つ以上の追加の動作を含むことができる。前記追加の動作は、到来パケットまたは着信信号に対して実行することができる。
上記の方法は、ユーザが論理ストレージを定義し、一連の要件でネットワーク仕様を計算し、SDNコンパイラに、どの物理または仮想リソースが適切であるかを含む、物理または仮想リソースに対して前記仕様をコンパイルさせる。一例として、ユーザは、特定の記憶域、コンピューティング、およびネットワーキング要件に論理ストレージを指定し論理計算を指定し、SDNコンパイラにどの物理または仮想リソースが適切であるかを判断させるソフトウェア開発者があります。ソフトウェア開発者は、物理的な場所の要件が無関係な場合に、そのような仕様に物理的な場所の要件を含めることはできません。この方法は、クラウドコンピューティングを提供するオンデマンドまたはユーティリティにおいて使用することができることに留意されたい。前記方法は、分散論理ストレージの論理仕様を作成し、リソースを計算することによって、分散アプリケーションを構築するために使用できることに留意されたい。
当業者には理解されるように、SDNコンパイラのユーザは、論理ノードと物理ノードとの間に1つ以上の深度マッピングを指定することができ、その結果、  図13A〜図13Eに示された例に示されているように、上記d）の検索を実行する。
当業者には理解されるように、物理ノードおよび物理トポロジパスを決定するために検索を実行すると、仮想リソースとしてスピンアップされなければならない可能性があるため、物理リソースは利用可能であるがSDNコンパイラにとっては見えない  例えば、限定はしないが、仮想マシン（VM）またはコンテナのようなものであってもよい。したがって、SDNコンパイラが、可能な仮想リソースの可視性と、前記仮想リソースをスピンアップするように別の装置に要求する能力と、仮想リソース自体をスピンアップする能力を有することが有益であろう。その結果、SDNコンパイラは、どの仮想リソースをスピンアップまたはダウンするかを決定するインフラストラクチャマネージャになります。
当業者には理解されるように、転送命令は典型的には物理的装置に送られ、物理的装置には送られないので、物理的装置を複数の物理的ノードによって表現するのではなく、単一の物理的ノードによって表現することが有益であり得る。  前記物理的装置の個々の構成要素に供給する。
【００７４】
物理装置を複数の物理ノードで表現する場合、物理装置はその構成要素ではなく、物理装置全体の指示を転送する必要があるため、PCT  /  EP2014  /  055640に記載されているようにSDNコンパイラによって複数の転送命令を結合する必要があります  198）、計算に追加のステップが必要です。
【００７５】
さらに、単一の物理ノードによって物理機器を表現する場合、例えばデータベースに限定されることなく格納される物理ノードの数が減少する。物理装置を複数の物理ノードで表すことにより、SDNコンパイラのユーザーは物理システムのサブコンポーネントを制御でき、個々のコンポーネントの命令が作成されるとハードウェアの複雑さが軽減されます。複数の物理コンポーネントは、次のアプローチを使用して単一の物理ノードとして表すことができます。
図5Bは、物理ノードKA、KB、KCおよびKDを示す。  物理ノードKAおよびKCは、第1の物理的装置の物理的構成要素であると考える。  図21Aに示すように、物理的構成要素KAおよびKCの名前をKXに変更する。物理ノードKBおよびKDは、第2の物理的装置の物理的構成要素であると考える。  物理コンポーネントKBとKDの名前をKYに変更します。ここで、図21AのKXという2つの物理ノードを、図21Bに示すKXという単一の物理ノードに縮小します。  これにより、L7と名付けられたレイヤ内のレイヤマッピングとL8と名付けられたレイヤ内のレイヤマッピングが、物理ノードKXから物理ノードKXへのレイヤマッピングとなり、省略することができる（PCT  /  EP2014  /  055640図33Cおよび60B参照）。
ここで、図21AのKYという2つの物理ノードを、図21Bに示すKYという単一の物理ノードに縮小します。  これにより、レイヤーL9のレイヤーマッピングとレイヤーL10のレイヤーマッピングが、物理ノードKYから物理ノードKYへのレイヤーマッピングとなり、省略することができます。第1のコンピューティング機器を表す物理ノードKP、第2のコンピューティング機器を表す物理ノードKS、および第3のコンピューティング機器を表す物理ノードKTについて、図18Aのこのアプローチを使用する。
上述した図12Aに示す物理リソース、物理ノードKPによって表される第1のコンピューティング機器と、物理ノードKQによって表される第1のパケット転送システムは、物理ノードKRによって表される第2のパケット転送システムは、物理ノードKSによって表される第2のコンピューティング機器は、物理ノードKTによって表される第3のコンピューティング機器と、物理リンクであるトポロジマッピングによって接続されます。図12Bは、上述したように、（d=0,  n=0,  h=0）における物理ノードKP、KQ、KR、KS、およびKTと、K11からK18という名前のトポロジマッピングをグラフの有向エッジとして表したものである。必要に応じて、物理ノードKPから物理ノードKPへのK55という名前の層で減少する物理レイヤーマッピングを追加し、物理ノードKPから物理ノードKPへのK56という名前の層内で増加する物理レイヤーマッピングと、物理ノードKSから物理ノードKSへのK57という名前の層内で減少する物理レイヤーマッピングと、物理レイヤーマッピングは、物理ノードKSから物理ノードKSへのK58という名前の層で増加し、物理レイヤーマッピングは、物理ノードKTから物理ノードKTへとK59という名前の層で減少し、物理レイヤーマッピングは、物理ノードKTから物理ノードKTへとK60と名付けられた層で増加し、図18Aに示す。図18Aは、（d=0,  n=0,  h=0）の物理ノードKP、KQ、KR、KS、KT、K11からK18までのトポロジマッピング、K55からK60までのレイヤーマッピングをグラフの有向エッジとして表したものである。図18Bは、図6Aの表記に従ってK55からK60までの名前のレイヤーマッピングを示す。
上述した図15Aに示す論理ネットワーク図と、上述した図15Gに示す探索文とを考える。K1とK2という論理トポロジマッピングの要件は考慮されておらず、K25とK26という名前の論理レイヤマッピングの要件は考慮されていないため、検索ステートメントを「（?X1-?K9[トポロジパス]  ->?X2)  AND  (?X2-?K10[トポロジパス]  ->?X3)  AND  (?X4-?K32[レイヤーマッピング]  ->?X1)  AND  (?X3-?K33[レイヤーマッピング]  ->?X5）」に、  「/  K1」、「/  K2」、「/  K25」、「/  K26」である。K1とK2という名前の論理トポロジマッピングの要件を検討する場合は、
要件を含む検索ステートメントは、疑似コードで書かれています。
MATCH  (?X1-?K9[トポロジパス]  ->?X2)
AND
MATCH  (?X2-?K10[トポロジパス]  ->?X3)
AND
MATCH  (?X4-?K32[レイヤーマッピング]  ->?X1)
AND
MATCH  (?X3-?K33[レイヤーマッピング]  ->?X5)  
WHERE  「?K9の要件」は「K1の要件」に等しい
AND  「?K10の要件」は「K2の要件」と同等です
RETURN  ?X1,  ?X2,  ?X3,  ?X4,  ?X5,  ?K9,  ?K10,  ?K32,  ?K33
図15Gに示す検索文は、図18C、図18Dおよび図18Eに示す一致を含むいくつかの一致を返す。図18Cは、未知の物理ノード?X1がどのようにして物理ノードKPに対してマッチングされ、未知の物理ノード?X2が物理ノードKRに対してマッチングされ、未知の物理ノード?X3が物理ノードKTに対してマッチングされるかを示す。図18Dは、?K9と呼ばれる未知の物理トポロジパスが、整合性のためにK9という名前の物理トポロジパスに対してどのようにマッチングされ、K11およびK13という物理トポロジマッピングの連結を含むかを示している。図18Dは、?K10という未知の物理トポロジパスが、K17という名前の物理トポロジマッピングを含む一貫性のためにK10という名前の物理トポロジパスに対してどのように一致するかを示す。図18Eは、?K32という未知の物理レイヤーマッピングがK55という物理レイヤーマッピングとどのように一致するか、および?K33という未知の物理レイヤーマッピングがK60という物理レイヤーマッピングとどのように一致するかを示している。
物理的装置に類似した論理装置を導入することは有益である。
【００７６】
論理装置を以下のいずれかと定義します:
-  第1のレイヤーマッピングを介して第2の論理ノードに接続されていない単一の第1の論理ノード（FF）
-  第3の論理ノード（FE,  FH;  FG,  FJ）のセットであって、前記第3の論理ノード（FE,  FH;  FG,  FJ）は、1つ以上の第2のレイヤーマッピング（K25;  K26）を介して接続される。
上の定義に従って、図15Aに示す論理ネットワーク図において、第1の論理装置は、論理ノードFEとFHとがレイヤーマッピングK25を介して接続されているので、論理ノードFEとFHからなる。  第2の論理装置は、論理ノードFFがレイヤマッピングを介して他の論理ノードに接続されていないため、論理ノードFFからなる。  第3の論理装置は、論理ノードFGおよびFJがレイヤーマッピングK26を介して接続されているので、論理ノードFGおよびFJからなる。データベースは、論理装置の上記定義にしたがって検索され、論理ノードのセットから1つ以上の論理装置を決定することができる。
SDNコンパイラは、それによって検索オプションの数を減らし、高速化、y>0とし、y<xと、x>0で、物理的な機器のy物理ノードへの論理装置でx論理ノードをコンパイルするように指示することができます検索プロセス。
【００７７】
SDNコンパイラのユーザは、探索が実行される前に、2つ以上の層の2つ以上の論理ノードが同一の既知の物理ノードに対して一致することを知ることができる。一例として、限定ではないが、SDNコンパイラのユーザは、データリンク層である層nに第1の論理ノードを指定し、ネットワーク層である層（n+1）に第2の論理ノードを指定し、第1の論理ノードと第2の論理ノードをコンパイルすることを期待する  1つの物理ノードで表される単一の物理機器。
ケースは、第一の論理ノードは、第1の深さマッピングを介して第1の未知の物理ノードに対してマッピングされ、前記第二の論理ノードは、第2の深さマッピングを介して第2の未知の物理ノードに対してマッピングされ、前記において、SDNコンパイラの使用者は、前知っているかもしれません検索は、2つの以上の未知の物理ノードが同じ既知の物理ノードと照合すべきであることが行われます。例えば、これらに限定されないが、SDNコンパイラのユーザが、物理ノード?X1および未知の物理ノード?X4未知すなわち未知の物理ノード?X1の最初の既知の物理ノードに対して両方の一致が、未知の物理ノード?X4と同一であるべきであることを知ることができます。SDNコンパイラのユーザが入力してもよいSDNコンパイラにこの知識は、それによって制約に検索を制限し、それによって検索オプションの数を低減し、検索処理を高速化、「?X1は?X4に等しいです」。
代替的に、論理装置の定義上記の検索は、2つの以上の層に2つ以上の論理ノードが同じ既知の物理ノードと照合すべきであることが実行される前に決定するために使用され、それは2つ以上の論理ノードがに対してマッピングすることができると言うことができます単一の未知の物理ノードとして19Fを介して、図19Aに示す例では、によって示されるが、これらに限定されません。私たちは、上記説明した図15Aに示す論理的なネットワーク図を、検討してください。上の定義に従って、図15Aに示される論理ネットワーク図において、論理ノードFEおよびFHがレイヤーマッピングK25を介して接続されるとき、第1論理装置は論理ノードFEおよびFHを含み、第2の論理装置は、論理ノードFFとして論理ノードFFを構成し、FFはレイヤーマッピングを介して他の論理ノードに接続されず、第3論理装置は、論理ノードFGおよびFJがレイヤーマッピングK26を介して接続されているため、論理ノードFGおよびFJからなる。
【００７８】
私たちは、次の操作を含む方法を実行します:
a)  各論理装置名（第一の論理装置;第二の論理装置;第三の論理装置）は、一つ以上の論理ノード（FE,  FH;  FF;  FG,  FJ）のセットの一意の識別子である、一つ以上の論理装置名（第一の論理装置;第二の論理装置;第三の論理装置）を作成して記憶する、一つ以上の論理ノード（FE,  FH;  FF;  FG,  FJ）がゼロを介して接続され、前記以上のレイヤーマッピング（K25;なし;  K26）、
b)  一つ以上の未知の物理ノード名を作成して記憶各論理装置名（第一の論理装置;第二の論理装置;第三の論理装置）（?X1;  ?X2;  ?X3）のために、各未知の物理ノード名（?X1;  ?X2;  ?X3）は、未知の物理ノードの一意の識別子です、
c)  論理装置名（第一の論理装置;第二の論理装置;第三の論理装置）前記、および1つまたは複数の未知物理-前記と識別された1つのまたは複数の論理ノード（FE,  FH;  FF;  FG,  FJ）の前記セット内の論理ノード（FE,  FH;  FF;  FG,  FJ）は、前記のそれぞれの間に少なくとも一つの深さマッピング（K3,  K4,  K37;  K5,  K6;  K7,  K8,  K38）を格納しますノード名（?X1;  ?X2;  ?X3）。
図19Aに示すように、請求項1の動作b）論理ノードFEおよびFHを含む前記第1の論理装置に対して未知の物理ノード?X1を作成し、論理ノードFFを含む前記第2の論理装置に対して未知の物理ノード?X2を作成し、論理ノードFGおよびFJからなる前記第3の論理装置に対して、?X3という未知の物理ノードを作成する。図19Aおよび19Bに示すように、請求項1のアクションc）に従って、K3からK8、K37およびK38と名付けられた深さマッピングが作成される。オプションで、?X1という未知の物理ノードからFHという名前の論理ノードに深度マッピングを作成し、FJという名前の論理ノードから?X3という未知の物理ノードまで深さマッピングを作成することもできます。図19Bは、図6Aの記法によるK3からK8、K37およびK38という深度マッピングを示す。
図19Aおよび図19Cに示され、上で説明したように、トポロジマッピングを計算するための第1の方法を使用して、K1およびK2という名前のトポロジマッピングを作成および格納する。アクションd）は、「前記物理トポロジパスは、1つ以上の物理トポロジマッピングの連結である」と述べる。「1の連結」は、前記物理トポロジパスが単一の物理トポロジマッピングからなる状況を指すことに留意されたい。したがって、「前記物理トポロジパスは、1つまたは複数の物理トポロジマッピングの連結」であり、前記物理トポロジパスは、単一の物理トポロジマッピングまたは2つ以上の物理トポロジマッピングの連結であると解釈される。説明を比較的簡単にするために、「1の連結」という用語は、orステートメントを避けるために使用されます。
前述のように、K25とK26という名前の論理レイヤーマッピングを作成して格納します。層内で減少するK25と名付けられた論理レイヤーマッピングは、論理ノードFHから論理ノードFEへの有向グラフ表現であり、この方法を使用して、K37という名前の深さマッピングの連結としてレイヤーマッピング（クレーム9参照）を計算する方法を用いて計算される  論理ノードFHから未知の物理ノード?X1に、未知の物理ノード?X1から未知の物理ノード?X1に階層的に減少する未知の物理レイヤーマッピング?K39と、未知の物理ノード?X1から論理ノードFEに深度マッピングK3と命名される  ?K39という名前の前記未知の物理レイヤーマッピングを作成して格納するステップとを含む。K26と名付けられた論理レイヤーマッピングは、論理ノードFGから論理ノードFJへの有向グラフ表現であり、第2の方法を使用して計算され、論理からK8という名前の深度マッピングの連結としてレイヤーマッピング（クレーム10参照）を計算する  ノードFGを未知の物理ノード?X3に、未知の物理レイヤーマッピングを未知の物理ノード?X3から未知の物理ノード?X3に増加させる?K40という名前の未知の物理レイヤーマッピングと、?X3という未知の物理ノードから論理ノードFJまでの深さマッピングK38と、  ?K40という未知の物理レイヤーマッピングを作成し格納する。K25およびK26という名前の論理レイヤーマッピングが、図19Aおよび19Cに示されている。
図11E、図11F、図19Dおよび図19Eに示すように、請求項1）のアクションe）の検索に使用される、トポロジマッピングK1およびK2の物理エンティティおよびレイヤマッピングK25およびK26の物理エンティティをそれぞれ決定する。図19Dのステップ1）は、図19CのK25という名前のレイヤーマッピングを示す。図19Dのステップ2）において、図19Dのステップ1）におけるK3およびK37と名付けられた深さマッピングの値は、図19Bに示されるK3およびK37という深度マッピングの定義に置き換えられている。図19Eのステップ1）は、図19CのK26という名前のレイヤーマッピングを示す。図19Eのステップ2）において、図19Eのステップ1）におけるK8およびK38と名付けられた深度マッピングの値は、図19Bに示されるK8およびK38という深度マッピングの定義に置き換えられている。
各未知の物理ノードに対して適切な物理ノードを決定し、各未知の物理トポロジパスおよび請求項ごとに適切な物理トポロジパスを決定する11）オプションとして、未知の各物理ノードについての適切な物理レイヤーマッピングを決定する  各未知の物理トポロジパスを1組の適切な物理トポロジパスの1つと照合するステップと、任意に、1組の適切な物理レイヤーマッピングの1つと未知の物理レイヤーマッピングとを適合させるステップを含む検索を実行することによって、  各未知の物理的ノードを1組の適切な物理的ノードの1つと照合するステップとを含む。
図11Eに示すように、未知の物理ノードと未知の物理トポロジパスとの関係を、第1の検索文として「?X1-?K9[トポロジパス]/K1->?X2」
であるトポロジマッピングのK1という名前で使用する。図11Fに示すように、未知の物理的ノードと未知の物理的トポロジーとの間の関係を、第2の検索文として、「?X2-?K10[トポロジパス]/K2  >?X3」
であるトポロジマッピングのK2という名前で使用する。我々は、未知の物理ノードと、第3の探索文として「?X1-?K39[レイヤーマッピングが減少する]/K25->?X1」
であるK25という名前のレイヤーマッピングの未知の物理レイヤーマッピングとの関係を使用する。また、図19Fに示す第5の検索文を作成するために、第4の検索文として「?X3-?K40[レイヤーマッピングの増加]/K26->?X3」である、
K26という名前のレイヤーマッピングの未知の物理ノードと未知の物理レイヤーマッピングとの関係を使用する。前記第5の検索文が前記検索に使用される。前記検索文は、未知の物理ノード?X1、?X2、?X3、および?K9、?K10と名付けられた未知の物理トポロジパスと、?K39および?K40と呼ばれる未知の物理レイヤーマッピングとを含むことに留意されたい。一例として、これに限定されるものではないが、上述の図18Aに示す物理ネットワークレイアウトに対して検索を実行することができる。
図19Fに示す検索文は、未知の物理的ノード?X1が物理的なノードKPと一致する一致を含む多くの一致を返し、未知の物理ノード?X2が物理ノードKRと照合され、未知の物理ノード?X3が物理ノードKTと照合され、未知の物理レイヤーマッピング?K39は物理レイヤーマッピングK55に対してマッピングされ、
未知の物理レイヤーマッピング?K40は物理レイヤーマッピングK60に対してマッピングされ、?K9と名付けられた未知の物理トポロジー経路は、K11とK13と名付けられた物理トポロジマッピングの連結を含む一貫性のためにK9と名付けられた物理トポロジー経路と突き合わされ、?K10と呼ばれる未知の物理トポロジパスは、K17という名前の物理トポロジマッピングを含む整合性のためにK10という名前の物理トポロジパスと照合される。
上述のように、1つまたは複数の論理ノードの必要条件が格納されてもよい。
任意選択的に、前記論理ノードの各々の前記要求は、1つ以上の深度マッピングを介して前記論理ノードにマッピングされた前記未知の物理ノードにコピーされ、前記未知の物理ノードのそれぞれの前記要件は、  サーチ。
【００７９】
一例として、前記論理ノード（FE,  FH;  FG,  FJ）の各々の要件は、
前記未知の物理ノード（?X1;  ?X3）にコピーされ、前記論理ノード（FE,  FH;  FG,  FJ）に1つ以上の深さマッピング（K3,  K37;  K8,  K38）  前記未知の物理的ノード（?X1;  ?X3）のそれぞれの前記物理的ノード（KP;  KT）の特性と一致することを特徴とする請求項1に記載の方法。
物理的なノードによって表される物理的または仮想的なデバイス内の内部リンクおよび/またはそれらの能力が、デバイス内で抽象化されて無視されるので、レイヤーマッピングはオプションであることに注意してください  。
“(?X1-?K9[トポロジパス]/K1->?X2)  AND  (?X2-?K10[トポロジパス]/K2->?X3)”.
一例として、限定ではないが、（図18Aに示されている）K55と名付けられた減少するレイヤーマッピングによって表される内部リンクが、物理的に表現された第1のコンピューティング機器内に存在する場合には（図19Aに示す）、?K39という名前の減少するレイヤーマッピングノードKPは関連性がなく、無視することができる。一例として、これに限定されるものではないが、物理ノードKTによって表される第3のコンピューティング機器内のK60という名前の増加するレイヤマッピングによって表される内部リンクが関連しない場合には、?K40という名前の増加するレイヤマッピングが検索文で省略されてもよい  無視してもよい。結果として、図19Fに示され、
上述された検索文は、検索文に縮小される：
"（?X1-?K9[トポロジパス]/K1->?X2)  AND  (?X2-?K10[トポロジパス]/K2->?X3）"。
物理的なノードによって表される物理的または仮想的なデバイス内の内部リンクが、それらがデバイスの内部で抽象化されているので関係がない場合に、物理的または仮想的なデバイスを表すとき、レイヤーマッピングを省略することができることに留意されたい。一例として、物理ノードKPによって表される第1のコンピューティング機器内の内部リンクを表すK55およびK56と名付けられたレイヤーマッピングは、それらがデバイス内で抽象化されて無視されてもよいため、関連性がないかもしれない。一例として、物理ノードKSによって表される第2のコンピューティング機器内の内部リンクを表すK57およびK58と名付けられたレイヤーマッピングは、それらがデバイス内で抽象化されて無視されるため、関連性がないかもしれない。一例として、限定するものではないが、物理ノードKTによって表される第3のコンピューティング機器内の内部リンクを表すK59およびK60と名付けられたレイヤーマッピングは、それらが装置の内部で抽象化されており、無視することができる図12Bに示す。
未知の物理ノード内の内部リンクが関連しておらず、無視される場合がある場合には、未知の物理ノードを表すときにレイヤマッピングを省略してもよいことに留意されたい。一例として、未知の物理ノード?X1内の内部リンクを表す
?K39（図19Aに示す）と呼ばれる未知のレイヤーマッピングが省略されてもよい。
一例として、未知の物理的ノード?X3内の内部リンクを表す未知のレイヤーマッピング?K40が省略されてもよいが、これに限定されない。
PCT  /  EP2014  /  055640（178頁）は、
レイヤマッピングを計算するための第1の方法において、第3および第4のネットワークが（d-x,  n2,  h）または（d-x,  n2-y,  h）
で同じネットワークであり得ることを記載している。第1および第2のネットワークが同じ未知の物理的ノード?X1であるレイヤーマッピングを計算するために第1の方法を使用して、K37という深さマッピングおよびK3という深さマッピングの連結として計算される。図6Cの記法に従って、K25というレイヤーマッピングは
「レイヤーマッピングが減少するK25  =  K37/K25+K3/K25」である。
K26と名付けられたレイヤマッピングは、K8という名前の深さマッピングと
K38という深さマッピングの連結として計算され、第3のネットワークと第4のネットワークが同じ未知の物理ノード?X3であるレイヤマッピングを計算する第2の方法を使用する。図6Cの記法に従って、K26という名前のレイヤーマッピングは  「レイヤーマッピングK26  =  K8/K26+K38/K26」である。
【００８０】
上記の方法を適用すると、次の検索文が得られます：
"(?X1-?K9[トポロジパス]/K1->?X2)  AND  (?X2-?K10[トポロジパス]/K2->?X3)"  。
上述のように、1つまたは複数の論理ノードのオプションとしての要件が格納されてもよい。任意選択的に、前記論理ノードの各々の前記要求は、1つ以上の深さマッピングを介して前記論理ノードにマッピングされた前記未知の物理ノードにコピーされ、前記未知の物理ノードの各々の前記要求は、  前記調査は、一例として、図19Aに示す例では、前記論理ノード（FE,  FH;  FG,  FJ）の各々の要件は、前記未知の物理ノード（?X1;  ?X3）にコピーされ、
前記論理ノード（FE,  FH;  FG,  FJ）に1つ以上の深さ  マッピング（K3,  K37;  K8,  K38）。  前記未知の物理ノード（?X1;  ?X3）の各々の前記要求は、
前記検索における前記物理ノード（KP;  KT）
の特性と一致させることができる。
エッジに転送に使用できる名前が与えられている場合、スイッチング識別子を省略して、前記エッジの名前から転送エントリを直接作成することができることに留意されたい。しかし実装では、通常、エッジは、転送に使用される名前空間とは異なる名前空間を使用して格納されます。
その特許請求の範囲を含む本出願の内容は、事前に公表されておらず、2014年9月22日に出願されたEP14185825.8（弁護士のファイルP6053230EP）の教示と組み合わせることができることが認められる。
その特許請求の範囲を含む本出願の内容は、事前に公表されておらず、2014年9月23日に出願されたEP14186045.2（弁護士のファイルP6053233EP）の教示と組み合わせることができることが認められる。
その特許請求の範囲を含む本出願の内容は、公開されていないが2014年12月4日に提出されたEP14196330.6（弁護士のファイルP6054266EP）の教示と組み合わせることができることが認められる。
上記の仕様では、コントローラ、コンパイラ、ノード、仮想マシン、NICなどのような多くの異なる種類のユニットが参照されている（PCT  /  EP2014  /  055640ページ89参照）。当業者には明らかなように、そのようなユニットの機能は、処理ユニット上で動作するハードウェアおよびソフトウェアのうちの少なくとも1つによって実行される。そのようなハードウェアは、クレームされた機能を実行するように構成された任意の既知のタイプのハードウェア（現在及び将来）であり得る。  図10は、そのような機能を実行することができるコンピュータ装置の概略図を示す。図10は、ある種の「完全な」画像を示しています。プリンタなどの一部のコンポーネントは、本書で指定されたユニットの多くに使用できないことが明らかです。
図10に示す構成は、算術演算を実行するプロセッサ1を含む。
プロセッサ1は、ハードディスク5、ROM（Read  Only  Memory）7、EEPROM（Electrically  Erasable  Programmable  Read  Only  Memory）9およびRAM（Random  Access  Memory）11を含む複数のメモリコンポーネントに接続されている。
【００８１】
これらのメモリタイプのすべてを必ずしも提供する必要はありません。  さらに、これらのメモリ構成要素は、プロセッサ1に物理的に近接して配置される必要はなく、プロセッサ1から離れて配置されてもよい。
プロセッサ1はまた、キーボード13およびマウス15のようなユーザによる命令、データ等を入力するためのユニットに接続されている。タッチスクリーン、トラックボールおよび/または音声変換器  当業者であれば、これも提供することができる。
プロセッサ1に接続された読取部17が設けられている。読み取りユニット17は、フロッピーディスク19またはCDROM21のようなデータ担体からデータを読み取り、場合によってはデータ担体にデータを書き込むように構成されている。
【００８２】
他のデータキャリアは、テープ、DVD、ブルーレイディスク、コンパクトフラッシュ（登録商標）（CF）、セキュアデジタル（SD）、マイクロSD、ミニSD、エクストリームデジタル（xD）、メモリスティックなどであってもよい。  アート。
【００８３】
データキャリアには、プロセッサ1によって読み取られるように構成された命令およびデータを含むコンピュータプログラム製品が提供され、読み取り後にプロセッサ1に本発明による方法を実行させることができる。そのようなコンピュータプログラム製品は、次に、メモリ構成要素5,7,9,11のうちの1つにロードされ得る。しかし、そのようなコンピュータプログラムは、通信ネットワーク27を介してダウンロードすることもできる。
プロセッサ1は、出力データを紙に印刷するためのプリンタ23に接続され、（LCD）スクリーン、プラズマディスプレイパネル、有機発光ダイオード（OLED）、アクティブマトリックスOLED（AMOLED）、または任意の他のタイプのディスプレイとして知られているディスプレイ3  当業者には明らかである。
【００８４】
プロセッサ1は、通信ネットワーク27、例えば公衆交換電話網（PSTN）、ローカルエリアネットワーク（LAN）、ワイドエリアネットワーク（WAN）、インターネット等にI  /  Oユニット25を含む。プロセッサ1は、ネットワーク27を介して他の通信装置と通信するように構成することができる。
【００８５】
プロセッサ1は、スタンドアロンシステムとして、またはより大きなコンピュータプログラムのサブタスクを実行するようにそれぞれ構成された複数の並列動作プロセッサとして、またはいくつかのサブプロセッサを有する1つまたは複数のメインプロセッサとして実装され得る。  本発明の機能の一部は、ネットワーク27を介してプロセッサ1と通信するリモートプロセッサによって実行されてもよい。
本発明は添付の特許請求の範囲およびその技術的な均等物によってのみ限定されることを理解されたい。この文書およびそのクレームでは、「含む」という動詞およびその活用形は、特に言及しない項目を除外することなく、単語に続く項目が含まれることを意味するために非限定的な意味で使用される。
【００８６】
さらに、不定冠詞「a」または「an」による要素への言及は、文脈上要素が1つだけであることを明確に要求しない限り、複数の要素が存在する可能性を排除するものではない。したがって、不定冠詞「a」または「an」は、通常、「少なくとも1つ」を意味する。
特許請求の範囲において、効率のために、上で定義した「物理ノード」および「未知の物理ノード」という用語を除いて、「既知/未知の物理ノード」という用語が使用されることが認められる。この後者の用語は、すべての既知および未知の物理ノードを含むセットを指し、このセットの各メンバーは、既知または未知の物理ノードのいずれかであってもよい。「既知/未知の物理ノード名」は、これらの「既知/未知の物理ノード」の名前である。
同様に、効率を上げるために、上で定義した「物理トポロジパス」および「未知物理トポロジパス」という用語を除いて、「既知/未知の物理トポロジパス」という用語が特許請求の範囲で使用される。この後者の用語は、すべての既知および未知の物理トポロジパスを含むセットを指し、このセットの各メンバは、既知または未知の物理トポロジパスのいずれかであってもよい。
【００８７】
「既知/未知の物理トポロジパス名」は、これらの「既知/未知の物理トポロジパス」の名前です。
上述したような用語「物理レイヤーマッピング」および「未知の物理レイヤーマッピング」を除いて、効率のために、「既知/未知の物理レイヤーマッピング」という用語が特許請求の範囲で使用されることが認められる。この後者の用語は、すべての既知および未知の物理レイヤマッピングを含むセットを指し、このセットの各メンバは、既知または未知の物理レイヤマッピングのいずれかであってもよい。
【００８８】
「既知/未知の物理レイヤーマッピング名」は、これらの「既知/未知の物理レイヤーマッピング」の名称である。
【図１】
2017529796.tif 000003
【図２Ａ】
2017529796.tif 000004
【図２Ｂ】
2017529796.tif 000005
【図２Ｃ】
2017529796.tif 000006
【図２Ｄ】
2017529796.tif 000007
【図３Ａ】
2017529796.tif 000008
【図３Ｂ】
2017529796.tif 000009
【図３Ｃ】
2017529796.tif 000010
【図３Ｄ】
2017529796.tif 000011
【図４Ａ】
2017529796.tif 000012
【図４Ｂ】
2017529796.tif 000013
【図５Ａ】
2017529796.tif 000014
【図５Ｂ】
2017529796.tif 000015
【図５Ｃ】
2017529796.tif 000016
【図５Ｄ】
2017529796.tif 000017
【図５Ｅ】
2017529796.tif 000018
【図５Ｆ】
2017529796.tif 000019
【図６Ａ】
2017529796.tif 000020
【図６Ｂ】
2017529796.tif 000021
【図６Ｃ】
2017529796.tif 000022
【図６Ｄ】
2017529796.tif 000023
【図７Ａ】
2017529796.tif 000024
【図７Ｂ】
2017529796.tif 000025
【図７Ｃ】
2017529796.tif 000026
【図８】
2017529796.tif 000027
【図９】
2017529796.tif 000028
【図１０】
2017529796.tif 000029
【図１１Ａ】
2017529796.tif 000030
【図１１Ｂ】
2017529796.tif 000031
【図１１Ｃ】
2017529796.tif 000032
【図１１Ｄ】
2017529796.tif 000033
【図１１Ｅ】
2017529796.tif 000034
【図１１Ｆ】
2017529796.tif 000035
【図１１Ｇ】
2017529796.tif 000036
【図１１Ｈ】
2017529796.tif 000037
【図１１Ｉ】
2017529796.tif 000038
【図１２Ａ】
2017529796.tif 000039
【図１２Ｂ】
2017529796.tif 000040
【図１２Ｃ】
2017529796.tif 000041
【図１２Ｄ】
2017529796.tif 000042
【図１２Ｅ】
2017529796.tif 000043
【図１２Ｆ】
2017529796.tif 000044
【図１２Ｇ】
2017529796.tif 000045
【図１２Ｈ】
2017529796.tif 000046
【図１２Ｉ】
2017529796.tif 000047
【図１２Ｊ】
2017529796.tif 000048
【図１２Ｋ】
2017529796.tif 000049
【図１２Ｌ】
2017529796.tif 000050
【図１３Ａ】
2017529796.tif 000051
【図１３Ｂ】
2017529796.tif 000052
【図１３Ｃ】
2017529796.tif 000053
【図１３Ｄ】
2017529796.tif 000054
【図１３Ｅ】
2017529796.tif 000055
【図１４Ａ】
2017529796.tif 000056
【図１４Ｂ】
2017529796.tif 000057
【図１４Ｃ】
2017529796.tif 000058
【図１４Ｄ】
2017529796.tif 000059
【図１４Ｅ】
2017529796.tif 000060
【図１４Ｆ】
2017529796.tif 000061
【図１５Ａ】
2017529796.tif 000062
【図１５Ｂ】
2017529796.tif 000063
【図１５Ｃ】
2017529796.tif 000064
【図１５Ｄ】
2017529796.tif 000065
【図１５Ｅ】
2017529796.tif 000066
【図１５Ｆ】
2017529796.tif 000067
【図１５Ｇ】
2017529796.tif 000068
【図１６Ａ】
2017529796.tif 000069
【図１６Ｂ】
2017529796.tif 000070
【図１６Ｃ】
2017529796.tif 000071
【図１６Ｄ】
2017529796.tif 000072
【図１６Ｅ】
2017529796.tif 000073
【図１６Ｆ】
2017529796.tif 000074
【図１６Ｇ】
2017529796.tif 000075
【図１６Ｈ】
2017529796.tif 000076
【図１６Ｉ】
2017529796.tif 000077
【図１６Ｊ】
2017529796.tif 000078
【図１７Ａ】
2017529796.tif 000079
【図１７Ｂ】
2017529796.tif 000080
【図１７Ｃ】
2017529796.tif 000081
【図１７Ｄ】
2017529796.tif 000082
【図１７Ｅ】
2017529796.tif 000083
【図１７Ｆ】
2017529796.tif 000084
【図１７Ｇ】
2017529796.tif 000085
【図１８Ａ】
2017529796.tif 000086
【図１８Ｂ】
2017529796.tif 000087
【図１８Ｃ】
2017529796.tif 000088
【図１８Ｄ】
2017529796.tif 000089
【図１８Ｅ】
2017529796.tif 000090
【図１９Ａ】
2017529796.tif 000091
【図１９Ｂ】
2017529796.tif 000092
【図１９Ｃ】
2017529796.tif 000093
【図１９Ｄ】
2017529796.tif 000094
【図１９Ｅ】
2017529796.tif 000095
【図１９Ｆ】
2017529796.tif 000096
【図２０】
2017529796.tif 000097
【図２１Ａ】
2017529796.tif 000098
【図２１Ｂ】
2017529796.tif 000099
【国際調査報告】
2017529796.tif 000100
2017529796.tif 000101