(57)【要約】      （修正有）【課題】複数の仮想ネットワークに対して要求される光ネットワーク資源の経路制御および波長割り当ての方法を提供する。【解決手段】資源マネージャ１１０は複数の仮想ネットワーク要求を受信し、各仮想ネットワーク要求に対する仮想リンク数を判定する。判定した仮想リンク数に基づいて複数の仮想ネットワーク要求を分類するとともに、複数の仮想ネットワーク要求から仮想ネットワーク要求を選択し、許容可能スパン数を設定する。更に許容可能スパンに基づいて、複数の波長の何れかに上に仮想ネットワーク要求に対する有効仮想ノードマッピングが存在するかを判定し、複数の波長の何れかの上にも有効仮想ノードマッピングが存在しないという判定に基づいて、許容可能スパン数を増加する。【選択図】図１
2014078943.tif 000002
【特許請求の範囲】
【請求項１】
複数の仮想ネットワーク要求に対して要求される光ネットワーク資源の経路制御および波長割り当ての方法であって、
前記複数の仮想ネットワーク要求を受信することと、
各仮想ネットワーク要求に対する仮想リンク数を判定することと、
前記仮想リンク数に基づいて、前記複数の仮想ネットワーク要求を分類することと、
前記複数の仮想ネットワーク要求から仮想ネットワーク要求を選択して、許容可能スパン数を設定することと、
前記許容可能スパンに基づいて、複数の波長の何れかの上に前記仮想ネットワーク要求に対する有効仮想ノードマッピングが存在するかを判定することと、
前記複数の波長の何れかの上にも有効仮想ノードマッピングが存在しないという判定に基づいて、前記許容可能スパン数を増加することと、
を備えることを特徴とする方法。
【請求項２】
前記複数の波長数は、所定の最大波長数により制限される、請求項１に記載の方法。
【請求項３】
前記許容可能スパン数は、所定の最大スパン数により制限される、請求項１に記載の方法。
【請求項４】
前記増加された許容可能スパン数に基づいて、前記複数の波長の何れかの上に前記仮想ネットワーク要求に対する有効仮想ノードマッピングが存在するかを判定することを更に備える、請求項１に記載の方法。
【請求項５】
有効仮想ノードマッピングが存在するかを判定することは、
仮想ノード自由度に基づいて、前記仮想ネットワーク要求に関連している複数の仮想ノードを分類することと、
前記分類された複数の仮想ノードそれぞれに対して候補ノードを判定することと、を備える、請求項１に記載の方法。
【請求項６】
前記複数の仮想ノードを通信可能に結合する複数の仮想リンクそれぞれに対して利用可能なライトパスがあるかを判定することを更に備える、請求項５に記載の方法。
【請求項７】
前記仮想ネットワーク要求に関連している複数の仮想ノードそれぞれを物理ノードにマッピングすることを更に備える、請求項１に記載の方法。
【請求項８】
光ネットワークであって、
複数の物理ノードと、
前記複数の物理ノードを通信可能に結合する複数の物理リンクと、
前記複数の物理ノードに通信可能に結合される資源マネージャであって、
複数の仮想ネットワーク要求を受信し、
各仮想ネットワーク要求に対する仮想リンク数を判定し、
前記仮想リンク数に基づいて前記複数の仮想ネットワーク要求を分類し、
前記複数の仮想ネットワーク要求から仮想ネットワーク要求を選択して、許容可能スパン数を設定し、
前記許容可能スパンに基づいて、複数の波長の何れかの上に前記仮想ネットワーク要求に対する有効仮想ノードマッピングが存在するかを判定し、
前記複数の波長の何れかの上にも有効仮想ノードマッピングが存在しないという判定に基づいて、前記許容可能スパン数を増加するように構成されている資源マネージャと、を備えることを特徴とする光ネットワーク。
【請求項９】
前記複数の波長数は、所定の最大波長数により制限される、請求項８に記載の光ネットワーク。
【請求項１０】
前記許容可能スパン数は、所定の最大スパン数により制限される、請求項８に記載の光ネットワーク。
【請求項１１】
前記資源マネージャは、前記増加された許容可能スパンに基づいて、前記複数の波長の何れかの上の前記仮想ネットワーク要求に対する有効仮想ノードマッピングが存在するかを判定するように更に構成されている、請求項８に記載の光ネットワーク。
【請求項１２】
有効仮想ノードマッピングが存在しているかを判定することは、
仮想ノード自由度に基づいて、前記仮想ネットワーク要求に関連している複数の仮想ノードを分類することと、
前記複数の仮想ノードそれぞれに対して候補ノードを判定することと、を備える、請求項８に記載の光ネットワーク。
【請求項１３】
前記複数の仮想ノードを通信可能に結合する複数の仮想リンクそれぞれに対して利用可能なライトパスがあるかを判定することを更に備える、請求項１２に記載の光ネットワーク。
【請求項１４】
前記資源マネージャは、前記仮想ネットワーク要求に関連している複数の仮想ノードそれぞれを物理ノードにマップするように更に構成されている、請求項８に記載の光ネットワーク。
【請求項１５】
仮想ネットワーク要求に対する論理を備える非一時的コンピュータ読取り可能記憶媒体であって、前記論理はプロセッサにより実行されたときに、
複数の仮想ネットワーク要求を受信し、
各仮想ネットワーク要求に対する仮想リンク数を判定し、
前記仮想リンク数に基づいて前記複数の仮想ネットワーク要求を分類し、
前記複数の仮想ネットワーク要求から仮想ネットワーク要求を選択して許容可能スパン数を設定し、
前記許容可能スパンに基づいて、複数の波長の何れかの上に前記仮想ネットワーク要求に対する有効仮想ノードマッピングが存在するかを判定し、
前記複数の波長の何れかの上にも有効仮想ノードマッピングが存在しないという判定に基づいて、前記許容可能スパン数を増加するように動作可能であることを特徴とする非一時的コンピュータ読取り可能記憶媒体。
【請求項１６】
前記複数の波長数は、所定の最大波長数により制限される、請求項１５に記載の非一時的コンピュータ読取り可能記憶媒体。
【請求項１７】
前記許容可能スパン数は、所定の最大スパン数により制限される、請求項１５に記載の非一時的コンピュータ読取り可能記憶媒体。
【請求項１８】
前記論理は、前記増加された許容可能スパン数に基づいて、前記複数の波長の何れかの上に前記仮想ネットワーク要求に対する有効仮想ノードマッピングが存在するかを更に判定するように動作可能である、請求項１５に記載の非一時的コンピュータ読取り可能記憶媒体。
【請求項１９】
有効仮想ノードマッピングが存在するかの判定は、
仮想ノード自由度に基づいて、前記仮想ネットワーク要求に関連する複数の仮想ノードを分類することと、
前記複数の仮想ノードそれぞれに対する候補ノードを判定することと、を備える、請求項１５に記載の非一時的コンピュータ読取り可能記憶媒体。
【請求項２０】
前記複数の仮想ノードを通信可能に結合する複数の仮想リンクそれぞれに対して利用可能なライトパスがあるかを判定することを更に備える、請求項１９に記載の非一時的コンピュータ読取り可能記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、米国特許法第１１９条に基づいて、２０１２年１０月８日に出願された米国暫定特許出願番号第６１／７１０、９５５号に対する優先権を主張するものである。その内容は、ここに参考文献として全体が組み込まれる。
【０００２】
本発明は一般的に、光通信ネットワークに関し、より特別には、光波長分割多重ネットワークにおけるネットワーク仮想化のための経路制御（ｒｏｕｔｉｎｇ）および波長割り当てに関する。
【背景技術】
【０００３】
電気通信システム、ケーブルテレビジョンシステム、およびデータ通信ネットワークは、遠隔地点間で大量の情報を迅速に搬送するために、光ネットワークを使用する。光ネットワークにおいて、情報は、光ファイバを通して光信号の形状で搬送される。光ファイバは、非常に小さな損失で信号を長距離通信できる細いガラスの撚り糸を含む。光ネットワークはしばしば波長分割多重方式（ＷＤＭ）または高密度波長分割多重方式（ＤＷＤＭ）を採用して送信容量を増加させる。ＷＤＭおよびＤＷＤＭネットワークにおいては、多数の光チャネルがそれぞれのファイバにおいて異なる波長で搬送され、それによりネットワーク容量を増加させている。ＷＤＭ、ＤＷＤＭ、または他の多波長送信技術が光ネットワークに採用されて、一本の光ファイバ当たりの集積帯域幅を増加させている。ＷＤＭやＤＷＤＭがなければ、ネットワークにおける帯域幅は、たった１波長のビットレートに制限されてしまうだろう。帯域幅が大きいほど、光ネットワークは、より大量の情報を送信できる。
【０００４】
データおよび情報に対する必要性が増加するにつれ、地理的に、より分散されたデータセンターが、計算および格納資源に対する増加しつつある要求を受け入れるために、物理的インターネット基盤に追加される可能性がある。物理的ネットワーク基盤は、例えば、より良好な顧客体験、高鮮明ビデオストリーミング、およびデータバックアップサービスのための地理的なサービスの分散のようなサービスの局在化により、広範囲に分散している計算資源を要求する可能性のあるアプリケーションをサポートできる。ネットワークの仮想化は、物理的基盤の成長および非柔軟性に対処するための方式を提供できる。仮想ネットワーク（ＶＮ）マッピングは、ネットワーク仮想化のために物理資源を割り当てることができる。
【発明の概要】
【課題を解決するための手段】
【０００５】
本開示の１つ以上の実施の形態によれば、複数の仮想ネットワーク要求に対して要求される光ネットワークに対する経路制御と波長割り当ての方法は、複数の仮想ネットワーク要求を受信することを含む。方法は、各仮想ネットワーク要求に対する仮想リンク数を判定することを更に含む。方法は、仮想リンク数に基づいて複数の仮想ネットワーク要求を分類することと、複数の仮想ネットワーク要求から仮想ネットワーク要求を選択して、許容可能スパン数を設定すること、とを含む。更に、方法は、許容可能スパンに基づいて、複数の波長の何れかの上に仮想ネットワーク要求に対する有効仮想ノードマッピングが存在するかを判定することを含み、複数の波長の何れの上にも有効仮想ノードマッピングが存在しないという判定に基づいて、許容可能スパン数を増加すること、とを含む。
【０００６】
本開示の他の実施の形態によれば、光ネットワークは、複数の物理ノードと、複数の物理ノードを通信可能に結合する複数の物理リンクを含む。ネットワークは、複数の物理ノードに通信可能に結合されている資源マネージャを含む。資源マネージャは、複数の仮想ネットワーク要求を受信し、各仮想ネットワーク要求に対する仮想リンク数を判定するように構成されている。資源マネージャは更に、仮想リンク数に基づいて複数の仮想ネットワーク要求を分類し、複数の仮想ネットワーク要求から仮想ネットワーク要求を選択し、許容可能スパン数を設定するように構成されている。更に、資源マネージャは、許容可能スパンに基づいて、複数の波長の何れかの上に仮想ネットワーク要求に対する有効ノードマッピングが存在するかを判定し、複数の波長の何れかの上にも有効仮想ノードマッピングが存在しないという判定に基づいて、許容可能スパン数を増加するように構成されている。
【０００７】
本開示の他の実施の形態によれば、非一時的コンピュータ読取り可能記憶媒体は、仮想ネットワーク要求に対して、プロセッサにより実行されたときに、複数の仮想ネットワーク要求を受信し、各仮想ネットワーク要求に対する仮想リンク数を判定するように動作可能な論理を備えている。論理はまた、仮想リンク数に基づいて、複数の仮想ネットワーク要求を分類し、複数の仮想ネットワーク要求から仮想ネットワーク要求を選択し、許容可能スパン数を設定するようにも動作可能である。更に論理は、許容可能スパンに基づいて、複数の波長の何れかの上に仮想ネットワーク要求に対する有効仮想ノードマッピングが存在するかを判定し、複数の波長の何れの上にも有効仮想ノードマッピングが存在しないという判定に基づいて、許容可能スパン数を増加するようにも動作可能である。
【図面の簡単な説明】
【０００８】
【図１】図１は、本開示の１つの実施の形態に従う、例としての光ネットワークのブロック図を例示している。
【図２】図２は、本開示の１つの実施の形態に従う、Ｍｉｎ＿Ｓｐａｎ方法を利用する、光ネットワークへの例としての仮想ノードマッピングを例示している。
【図３】図３は、本開示の１つの実施の形態に従う、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法を利用する、光ネットワークへの例としての仮想ノードマッピングを例示している。
【図４Ａ】図４Ａは、本開示の１つの実施の形態に従う、図５を参照して検討されるｉスパンマッピング方法を利用する、仮想ノードに対する例としての候補ノードマッピングを例示している。
【図４Ｂ】図４Ｂは、本開示の１つの実施の形態に従う、図５を参照して検討されるｉスパンマッピング方法を利用する、仮想ノードに対する例としての候補ノードマッピングを例示している。
【図５】図５は、本開示の１つの実施の形態に従う、ｉスパンマッピング方法を利用する仮想ノードマッピングの方法を例示している。
【図６】図６は、本開示の１つの実施の形態に従う、Ｍｉｎ＿Ｓｐａｎ方法を利用する仮想ノードマッピングの方法を例示している。
【図７】図７は、本開示の１つの実施の形態に従う、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法を利用する仮想ノードマッピングの方法を例示している。
【図８】図８は、本開示の１つの実施の形態に従う、ＶＮ要求数の関数としての波長インデックスＷmaxのシミュレーション結果のグラフを例示している。
【図９】図９は、本開示の１つの実施の形態に従う、ＶＮ要求数の関数としての、仮想長さ当たりの平均波長スパンのシミュレーション結果のグラフを例示している。
【図１０】図１０は、本開示の１つの実施の形態に従う、ＶＮ要求数の関数としての、物理ノードにおける計算資源の標準偏差のシミュレーション結果のグラフを例示している。
【図１１】図１１は、本開示の１つの実施の形態に従う、１仮想ノード当たりの平均候補ノードｃνの関数としての波長インデックスＷmaxのシミュレーション結果のグラフを例示している。
【図１２】図１２は、本開示の１つの実施の形態に従う、１仮想ノード当たりの平均候補ノードｃνの関数としての、仮想長さ当たりの平均波長スパンのシミュレーション結果のグラフを例示している。
【図１３】図１３は、本開示の１つの実施の形態に従う、１仮想ノード当たりの平均候補ノードｃνの関数としての、ブロック化された要求の比のシミュレーション結果のグラフを例示している。
【図１４】図１４は、本開示の１つの実施の形態に従う、１仮想ノード当たりの平均候補ノードｃνの関数としての、物理ノードにおける計算資源の標準偏差のシミュレーション結果のグラフを例示している。
【発明を実施するための形態】
【０００９】
本発明の実施の形態とその利点は、図１〜１４を参照することにより最も良く理解される。それぞれの図における同様または対応する部分には同様な数字が使用されている。
【００１０】
図１は、本開示の１つの実施の形態に従う、例としての光ネットワーク１００のブロック図を例示している。光ネットワーク１００は、まとめて物理ノード１０２と称され、物理リンク１０４で結合される物理ノード１０２ａ〜１０２ｆを含むことができる。動作中、特別な物理ノード１０２は、他の物理ノード１０２および／または光ネットワーク１００の他の構成要素と、適切な波長で物理リンク１０４上を伝搬する光信号によりデータを通信する。データの経路制御と格納を容易にするために、光ネットワーク１００は、仮想ネットワーク（ＶＮ）の作成と使用をサポートできる。光ネットワーク１００は、地理的に分散および／または永続的接続の計算資源（例えば、顧客サービス、ビデオストリーミング、データバックアップ、または、地理的に分散されたデータの大規模および／またはリアルタイムな処理）を要求する多数のアプリケーションをサポートできるので、ＶＮの使用は、ネットワーク資源の効率的な利用を提供するように働く。光ネットワーク１００は、仮想ノードを物理ノード１０２にマップするためのＶＮマッピング方式を採用できる。更に、光ネットワーク１００は、経路制御および波長割り当て（ＲＷＡ）アルゴリズムを含むことができる。例えば、クラウドサービスのようなインターネットサービスをサポートするためのネットワークの仮想化は、ＶＮを、例えば、光ネットワーク１００のような基盤となっている物理的基盤から切り離し、孤立させることを含むことができる。
【００１１】
ある実施の形態において、光ネットワーク１００は、電気通信、データ通信、および／または任意の他の適切な機能のために利用される任意のネットワークであってよい。図１は、光ネットワーク１００の特別な実施の形態と構成を例示しているが、他の適切なタイプの光ネットワークも利用できる。光ネットワーク１００は、端子ノードを有する二地点間光ネットワーク、リング光ネットワーク、メッシュ光ネットワーク、または任意の他の適切な光ネットワーク、または光ネットワークの組み合わせであってよい。ある実施の形態においては、光ネットワーク１００は、異なる波長で共通の経路上を搬送される多数の光チャネルを含むことができる。光ネットワーク１００は、光ネットワーク資源または物理ノード１０２により通信される、１つ以上の光信号を転送するように構成されている１つ以上の光ファイバまたはリンクを含むことができる。光ネットワーク１００の情報搬送機能を増大するために、多数のチャネルにおいて送信される多数の信号を、単一の光信号に合成できる。単一光信号の多数のチャネルにおける情報の通信プロセスは、波長分割多重（ＷＤＭ）と称される。高密度波長分割多重（ＤＷＤＭ）とは、より多くの（より高い密度の）数の波長、通常は４０を超える数の波長をファイバ内に多重化することを指す。ＷＤＭ、ＤＷＤＭ、または他の多波長送信技術は、一本の光ファイバ当たりの集積帯域幅を増大するために光ネットワークにおいて採用できる。ＷＤＭまたはＤＷＤＭがなければ、光ネットワークにおける帯域幅は、わずか１波長のビットレートに制限されてしまうであろう。帯域幅が大きいと、光ネットワークは、より大量の情報を送信することができる。従って、光ネットワーク１００は、ＷＤＭネットワーク、ＤＷＤＭネットワーク、または任意の他の適切な多チャネルネットワークであってよい。光ネットワーク１００は、短距離メトロポリタンネットワーク、広域ネットワーク、または任意の他の適切なネットワークまたはネットワークの組み合わせのすべてまたは一部を表わすことができる。
【００１２】
ある実施の形態において、光ネットワーク１００における各物理ノード１０２は、トラフィックを送信および受信するように作動可能な任意の適切なシステムを含むことができる。光ネットワーク１００の物理ノード１０２はリンク１０４により結合されており、サーバ、コンピュータ、データセンター、記憶媒体、送信器、マルチプレクサ（ＭＵＸ）、増幅器、光分岐／挿入マルチプレクサ（ＯＡＤＭ）、受信器、および／または任意の他の適切な構成要素を含むことができる。物理ノード１０２は、「データセンターノード」または「ローカルノード」と称することができる。例示されている実施の形態において、各物理ノード１０２は、トラフィックを、特別な物理リンク１０４により接続されている１つ以上の他の物理ノード１０２へ直接送信および／またはそこから直接受信するように作動可能であってよい。更に物理ノード１０２は、外部の接続を通して、光ネットワーク１００の外部の構成要素からトラフィックを受信、および／またはそこへトラフィックを送出可能であってよい。例えば、外部接続は、光ネットワーク１００を、光ネットワーク１００と構造および動作が類似しているネットワークを含む他の光ネットワークに接続可能である。
【００１３】
参照を容易にするために、物理ノード１０２ａ〜１０２ｆを物理ノードＡ〜Ｆと称してよい。例えば、物理ノード１０２ａは物理ノードＡと称してよい。物理ノード１０２ｂは物理ノードＢと称してよい。物理ノード１０２ｃは、物理ノードＣと称してよい。更に物理ノード１０２ｄ、１０２ｅ、および１０２ｆはそれぞれ物理ノードＤ、Ｅ、およびＦと称してよい。
【００１４】
ここで使用されているように、「トラフィック」は、ネットワークにおいて送信、格納、または分類される情報を意味する。そのようなトラフィックは、オーディオ、ビデオ、テキスト、リアルタイム、非リアルタイム、および／または他の適切なデータをコード化するために変調される少なくとも１つの特性を有する光信号を備えることができる。変調は、位相偏移変調（ＰＳＫ）、強度変調（ＩＭ）、および／または他の適切な方法に基づくことができる。更に、このトラフィックにより搬送される情報は、任意の適切な方法で構造化できる。下記の記述は、パケットの形状でトラフィックを通信する光ネットワーク１００の実施の形態に焦点を当てているが、光ネットワーク１００は、パケットのような光フレームの形状、または任意の他の適切な方法により構造化されたトラフィックを通信するように構成できる。
【００１５】
更に、光ネットワーク１００は、物理ノード１０２に結合および／または他のネットワークに結合された装置の論理的グループ化をそれぞれが表す１つ以上のＶＮ（図示しない）をサポートする。例えば、特別な実施の形態においては、ある会社に関連しているすべてのコンピュータは、それらのコンピュータが地理的に分散していても、単一ＶＮのメンバーであることが可能である。一般的に、ＶＮは、光ネットワーク１００内の任意の適切な装置および／または外部接続を通してネットワークに結合している装置の任意の適切なグループ化を表すことができる。しかし、下記の記述は、例示の目的のために、ＶＮが、光ネットワーク１００内の物理ノード１０２のポートに結合されている装置のグループ化を表す光ネットワーク１００の実施の形態に焦点を当てている。ＶＮは、仮想リンクにより接続可能な仮想ノードを含むことができる。仮想ノードは物理ノード１０２に割り当て、仮想リンクは、１つ以上の物理リンク１０４に割り当てることができる。
【００１６】
光ファイバまたは物理リンク１０４は、非常に少ない損失で信号を長距離通信できるガラスの細い撚り糸であってよい。物理リンク１０４は、Ｓｉｎｇｌｅ−Ｍｏｄｅ  Ｆｉｂｅｒ（ＳＭＦ）、Ｅｎｈａｎｃｅｄ  Ｌａｒｇｅ  Ｅｆｆｅｃｔｉｖｅ  Ａｒｅａ  Ｆｉｂｅｒ（ＥＬＥＡＦ）、またはＴｒｕｅＷａｖｅ（商標）  Ｒｅｄｕｃｅｄ  Ｓｌｏｐｅ（ＴＷ−ＲＳ）ファイバのような、任意の適切なタイプのファイバであってよい。光ネットワーク１００は、物理リンク１０４上で光信号を送信するように構成されている装置を含むことができる。情報は、波長上の情報をコード化するための光の１つ以上の波長の変調により光ネットワーク１００を通して送信または受信できる。光ネットワーク接続において、光の波長はチャネルと称することもできる。各チャネルは、光ネットワーク１００を通してある量の情報を搬送するように構成できる。
【００１７】
参照を容易にするために、各物理リンク１０４は、各物理リンク１０４が結合している特別な物理ノード１０２への参照により称してよい。例えば、物理ノードＡとＢの間の物理リンク１０４は物理リンク（Ａ、Ｂ）と称してよい。他の例として、物理ノードＢとＥの間の物理リンク１０４は物理リンク（Ｂ、Ｅ）と称してよい。
【００１８】
ある実施の形態において、光ネットワーク１００はネットワーク資源マネージャ（ＮＲＭ）１０６、計算資源マネージャ（ＣＲＭ）１０８、および／または資源マネージャ１１０を含むことができる。ＮＭＲ１０６は、ネットワーク資源、および／または物理ノード１０２および／または物理リンク１０４に関する資源利用可能性情報を収集、送信、および／または管理できる。ＮＭＲ１０６は、ネットワーク利用可能性情報を、資源マネージャ１１０および／または任意の他の適切な構成要素に送信できる。ＮＲＭ１０６は、１つ以上のチャネル１４０を介して資源マネージャ１１０および／または物理ノード１０２に遠隔結合できるサーバ（例えば、ネットワーク管理サーバ）、データベース、または他の計算システムであってよい。ＮＲＭ１０６はプロセッサ、メモリ、管理コントローラ、ネットワークポート、および／または任意の他の適切な構成要素を含むことができる。また、ＮＲＭ１０６は資源マネージャのハードウェア、ソフトウェア、および／またはファームウェア構成要素であってよい。ＮＲＭ１０６に関連しているプロセッサは、プログラム指令を解釈および／または実行し、および／またはデータを処理するように動作可能な任意のシステム、装置、または機器を備えることができ、プログラム指令を解釈および／または実行し、および／またはデータを処理するように構成されているマイクロプロセッサ、マイクロコントローラ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、または任意の他のデジタルまたはアナログ回路を制限なしに含むことができる。ある実施の形態において、プロセッサは、プログラム指令を解釈および／または実行し、および／または、例えば、ＮＲＭ１０６のメモリ、管理コントローラ、および／または他の構成要素に格納されているデータを処理できる。プロセッサは、チャネル１４０を超えて（例えば、帯域チャネルおよび／または帯域内チャネルから外へ）、および／またはネットワークポートを超えて、ディスプレイを介して、グラフィカルユーザインタフェース（ＧＵＩ）、ウェブサイトなどを介して結果を出力できる。ＮＲＭ１０６に関連しているメモリはプロセッサに結合可能で、プログラム指令またはデータをある期間保持するように動作可能な任意のシステム、装置、または機器を備えることができる。メモリは、ランダムアクセスメモリ（ＲＡＭ）、電気的消去可能プログラマブル読出し専用メモリ（ＥＥＰＲＯＭ）、ＰＣＭＣＩＡカード、フラッシュメモリ、または、ＮＲＭ１０６の電源が切られた後にデータを保持するように構成されている揮発性または不揮発性メモリの任意の適切な選択および／または配列を含むことができる。ある実施の形態において、メモリはプログラム指令、タスク、ポリシーデータ、および／または他のデータを格納できる。
【００１９】
ＣＲＭ１０８は、物理ノード１０２に関連している計算資源に対する計算資源利用可能性を収集、送信、および／または管理できる。ＣＲＭ１０８は、計算利用可能性情報を、資源マネージャ１１０および／または任意の他の適切な構成要素に送信できる。ＣＲＭ１０８は、１つ以上のチャネル１４０を介して資源マネージャ１１０および／または物理ノード１０２に遠隔結合できるサーバ（例えば、ネットワーク管理サーバ）、データベース、または他の計算システムであってよい。ＣＲＭ１０８はプロセッサ、メモリ、管理コントローラ、ネットワークポート、および／または任意の他の適切な構成要素を含むことができる。また、ＣＲＭ１０８は資源マネージャ１１０のハードウェア、ソフトウェア、および／またはファームウェア構成要素であってよい。ＣＲＭ１０８に関連しているプロセッサは、プログラム指令を解釈および／または実行し、および／またはデータを処理するように動作可能な任意のシステム、装置、または機器を備えることができ、プログラム指令を解釈および／または実行し、および／またはデータを処理するように構成されているマイクロプロセッサ、マイクロコントローラ、ＤＳＰ、ＡＳＩＣ、または任意の他のデジタルまたはアナログ回路を制限なしに含むことができる。ある実施の形態において、プロセッサはプログラム指令を解釈および／または実行し、および／または、例えば、ＣＲＭ１０８のメモリ、管理コントローラ、および／または他の構成要素に格納されているデータを処理できる。プロセッサは、チャネル１４０を超えて（例えば、帯域チャネルおよび／または帯域内チャネルから外へ）、および／またはネットワークポートを超えて、ディスプレイを介して、ＧＵＩ、ウェブサイトなどを介して結果を出力できる。ＣＲＭ１０８に関連しているメモリはプロセッサに結合可能で、プログラム指令またはデータをある期間保持するように動作可能な任意のシステム、装置、または機器を備えることができる。メモリはＲＡＭ、ＥＥＰＲＯＭ、ＰＣＭＣＩＡカード、フラッシュメモリ、または、ＣＲＭ１０８の電源が切られた後にデータを保持するように構成されている揮発性または不揮発性メモリの任意の適切な選択および／または配列を含むことができる。ある実施の形態において、メモリはプログラム指令、タスク、ポリシーデータ、および／または他のデータを格納できる。
【００２０】
１つの実施の形態において、資源マネージャ１１０はＶＮ要求を受信でき、資源利用可能性に基づいて仮想ノードマッピングを計算でき、ＮＲＭ１０６、ＣＲＭ１０４、および／または任意の他の適切な構成要素に結果を提供できる。資源マネージャ１１０は、Ｓｙｓｔｅｍ（ＩａａＳ）マネージャおよび／または任意の他の適切なマネージャとしての基盤であってよい。資源マネージャ１１０は、１つ以上のチャネル１４０を介してＮＲＭ１０６、ＣＲＭ１０４、ＣＲＭ１０８、および／また物理ノード１０２に遠隔結合できるサーバ（例えば、ネットワーク管理サーバ）、データベース、または他の計算システムであってよい。資源マネージャ１１０はプロセッサ、メモリ、管理コントローラ、ネットワークポート、および／または任意の他の適切な構成要素を含むことができる。資源マネージャ１１０に関連しているプロセッサは、プログラム指令を解釈および／または実行し、および／またはデータを処理するように動作可能な任意のシステム、装置、または機器を備えることができ、プログラム指令を解釈および／または実行し、および／またはデータを処理するように構成されているマイクロプロセッサ、マイクロコントローラ、ＤＳＰ、ＡＳＩＣ、または任意の他のデジタルまたはアナログ回路を制限なしに含むことができる。ある実施の形態において、プロセッサはプログラム指令を解釈および／または実行し、および／または、例えば、資源マネージャ１１０のメモリ、管理コントローラ、および／または他の構成要素に格納されているデータを処理できる。プロセッサは、チャネル１４０を超えて（例えば、帯域チャネルおよび／または帯域内チャネルから外へ）、および／またはネットワークポートを超えて、ディスプレイを介して、ＧＵＩ、ウェブサイトなどを介して結果を出力できる。資源マネージャに関連しているメモリはプロセッサに結合可能で、プログラム指令またはデータをある期間保持するように動作可能な任意のシステム、装置、または機器を備えることができる。メモリはＲＡＭ、ＥＥＰＲＯＭ、ＰＣＭＣＩＡカード、フラッシュメモリ、または、資源マネージャ１１０の電源が切られた後にデータを保持するように構成されている揮発性または不揮発性メモリの任意の適切な選択および／または配列を含むことができる。ある実施の形態において、メモリはプログラム指令、タスク、ポリシーデータ、および／または他のデータを格納できる。
【００２１】
図２は、本開示の１つの実施の形態に従う、Ｍｉｎ＿Ｓｐａｎ方法を利用する、光ネットワーク１００への例としての仮想ノードマッピング２００を例示している。光ネットワーク１００は、まとめて仮想ノード２０２と称される仮想ノード２０２ａ〜２０２ｇとして示されているＶＮ要求２１０ａおよび２１０ｂを受信できる。仮想ノード２０２は、仮想リンク２０４により通信可能に結合可能である。参照を容易にするために、仮想ノード２０２ａ〜２０２ｇに数字を振ることができる。例えば、仮想ノード２０２ａは仮想ノード１１と称してよい。仮想ノード２０２ｂは仮想ノード１２と称してよく、仮想ノード２０２ｃは仮想ノード１３と称してよい。更に、仮想ノード１２は、仮想ノード１１および１３に連結可能である。仮想ノード２０２ｄは仮想ノード１４と称してよい。仮想ノード１３は、仮想ノード１１および１４に連結可能である。仮想ノード１１、１２、１３、および１４はＶＮ要求２１０ａを表わすことができる。１つの実施の形態において、仮想ノード２０２ｅは仮想ノード２１と称してよく、仮想ノード２０２ｆは仮想ノード２２と称してよい。更に、仮想ノード２０２ｇは仮想ノード２３と称してよく、仮想リンク２０４により仮想ノード２２および２１の両者に連結可能である。仮想ノード２１は仮想ノード２２にも連結可能である。仮想ノード２１、２２、および２３はＶＮ要求２１０ｂを表わすことができる。仮想ノード自由度とは、各仮想ノードにおける仮想リンク２０４の数のことであるといえる。例えば、仮想ノード１３は、仮想ノード自由度３を有することができる。他の例として、仮想ノード１４は、仮想ノード自由度１を有することができる。更に、参照を容易にするために、２つの仮想ノード２０２を結合する特別仮想リンク２０４を仮想リンク（ノード１、ノード２）と称することができる。例えば、仮想ノード１２との間の仮想リンク２０４は仮想リンク（１２、１３）と称してよい。
【００２２】
１つの実施の形態において、Ｍｉｎ＿Ｓｐａｎ方法は、各特別仮想リンク２０４に対して最大スパン（または物理リンク１０４）数ｉを設定できる。例えば、図２において、Ｓｐａｎmaxは１以下に、つまり、Ｓｐａｎmax≦ｉ、ｉ＝１と設定できる。そのため、ＶＮ要求２１０ａおよび２１０ｂをマップするために、ＶＮマッピング２００は、光ネットワーク１００の２つの波長λ1およびλ2を利用できる。仮想ノード１１〜１４上のＶＮ要求２１０ａは、波長λ1の物理ノードＡ、Ｂ、Ｅ、およびＦにマップできる。仮想ノード１１〜１４は、仮想リンク２０４が１スパンのみを通過するように物理ノードＡ、Ｂ、Ｅ、およびＦにマップできる。例えば、仮想ノード１１は物理ノードＢにマップでき、仮想ノード１２は物理ノードＡにマップできる。仮想ノード１３は物理ノードＦにマップでき、仮想ノード１４は物理ノードＥにマップできる。
【００２３】
ＶＮ要求２１０ｂに対して波長λ1上に有効１スパンマッピング（Ｓｐａｎmax≦１）がないので、ＶＮ要求２１０ｂは波長λ2を利用してマップできる。このようにして、仮想ノード２１〜２３は、波長λ2上の物理ノードＡ、Ｂ、およびＦにマップできる。仮想ノード２１〜２３は、仮想リンク２０４が１スパンのみを通過するように物理ノードＡ、Ｂ、およびＦにマップできる。例えば、仮想ノード２１は物理ノードＦにマップでき、仮想ノード２２は物理ノードＡにマップでき、仮想ノード２３は物理ノードＢにマップできる。本実施の形態においては、仮想リンク２０４のそれぞれは、最大スパン数未満の数だけスパンできる。従って、仮想ノードマッピング２００は、２つの波長と７つの波長スパンを要求できる。最大スパン数未満の数をスパンする仮想ノードマッピングは、Ｍｉｎ＿Ｓｐａｎマッピングと呼ぶことができる。
【００２４】
図３は、本開示の１つの実施の形態に従う、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法を利用する、光ネットワーク１００への例としての仮想ノードマッピング３００を例示している。波長インデックスＷは、特別なマッピングで利用される最大波長層数であってよい。仮想ノードマッピングに利用される波長層数を最小にすると、ネットワーク資源を節約できる。Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法においては、特別な最大波長インデックス、例えば、Ｗmaxを設定できる。例えば、仮想ノードマッピングに使用される波長λの数は、例えば、Ｗmax＝１またはｍａｘＬａｙｅｒ＝１のような１である最大数に設定できる。本例にこの制約条件を利用して、ＶＮ要求２１０ａおよび２１０ｂを１つの波長λ1にマップできる。例えば、仮想ノード１１〜１４上のＶＮ要求２１０ａは、波長λ1上の物理ノードＡ、Ｂ、Ｅ、およびＦにマップできる。仮想ノード１１〜１４は物理ノードＡ、Ｂ、Ｅ、およびＦに、仮想リンク２０４を維持するようにマップできる。例えば、仮想ノード１１は物理ノードＢにマップでき、仮想ノード１２は物理ノードＡにマップできる。他の例として、仮想ノード１３は物理ノードＦにマップでき、仮想ノード１４は物理ノードＥにマップできる。仮想ノード２１〜２３上のＶＮ要求２１０ｂもまた波長λ1上の物理ノードＢ、Ｄ、およびＥにマップできる。仮想ノード２１〜２３は、仮想リンク２０４を維持するように物理ノードＢ、Ｄ、およびＥにマップできる。例えば、仮想ノード２１は物理ノードＥにマップでき、仮想ノード２２は物理ノードＢにマップでき、仮想ノード２３は物理ノードＤにマップできる。本実施の形態においては、物理ノードＢおよびＥは多数のＶＮ要求を受信することができ、多数の仮想ノードにマップできる。
【００２５】
１つの実施の形態において、各仮想リンク２０４はライトパスを要求できる。ライトパスは、通過する物理リンク１０４の数に無関係にトラフィックが追従するための画定されたパスである。例えば、図３を参照すると、仮想ノード２２と２３の間のトラフィックのためのライトパスは、２つの物理リンク１０４、例えば、物理リンク（Ｂ、Ｃ）および物理リンク（Ｃ、Ｄ）を通過する。
【００２６】
ＮＶマッピング３００は、１つの波長と８つの波長スパンを利用できる。最大波長数、例えば、ｍａｘＬａｙｅｒ＝１を利用するように設定されたＶＮマッピングは、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法またはＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈマッピングと呼ぶことができる。従って、図２に示されているＭｉｎ＿Ｓｐａｎマッピングまたは図３に示されているＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈマッピングのような仮想ノードマッピング方法は、光ネットワーク、例えば、光ＷＤＭネットワークにおいてＲＷＡを課す可能性があり、そのためネットワークに費用がかかる。このため、光ネットワークにおける仮想ノードマッピング方式を変更して、ネットワーク費用を最小にするように構成できる。
【００２７】
１つの実施の形態において、Ｍｉｎ＿ＳｐａｎマッピングとＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈマッピングを利用すると、仮想ノードマッピングとＲＷＡを一緒に考慮してネットワーク資源を最小にすることができる。１つの実施の形態において、１つの目的は、各物理ノード１０２において要求される計算資源のバランスを取ることであってよい。そのような目的は、仮想ノードは物理ノードＢにマップでき、仮想リンクは、波長の連続性を課するライトパスにマップでき、同じＶＮ要求の２つの仮想ノードは、同じ物理ノードにマップされることから制限されるという制約条件に従わせることができる。光ネットワーク１００に対しては、各仮想ノード２０２の仮想ノードマッピング、各仮想リンク２０４に対するＲＷＡ、および各物理ノード１０２で要求できる全体の計算容量の判定があってよい。
【００２８】
Ｍｉｎ＿Ｓｐａｎマッピングおよび／またはＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈを採用するために、各仮想ノード２０２は、候補の物理ノード１０２の組における任意のノードに割り当てることができる。そのような割り当ては、ネットワーク仮想化により提供される資源割り当ての柔軟性を利用できる。ＶＮ要求２１０は、ある計算資源を要求でき、候補ノードｃνの組にマップできる各仮想ノードνを示すことができる。候補ノードｃνの中央物理ノードｎνからの物理距離はｄν未満であってよい。組（ｎν、ｄν）は仮想ノードマッピングの柔軟性を提供できる。候補ノードの組からの有効仮想ノードマッピングの選択は、下記に図４および５を参照して検討されるｉ＿ｓｐａｎＭａｐｐｉｎｇ方法を採用することにより達成できる。
【００２９】
図４は、本開示の１つの実施の形態に従う、図５において下記に検討されるｉスパンマッピング方法を利用する、仮想ノード２０２に対する例としての候補ノードマッピング４００を例示している。ｉスパンマッピング方法は、「候補ノードマッピング」、「ｉ＿ｓｐａｎＭａｐｐｉｎｇ」、または「ｉスパンマッピング」と呼ぶことができる。候補ノードマッピングは、特別なＶＮ要求において、他の仮想ノードの一部またはすべての割り当てがあれば、特別な仮想ノードに対する有効候補ノードを検索できる。例えば、仮想ノード割り当てまたはマッピングは、図２を参照して示されているＶＮ要求２１０ａに対して判定できる。マッピングの初期の繰返しは、１つのスパン、例えば、ｍａｘＳｐａｎ＝１に制限できる。マッピングの間、仮想ノード１３は物理ノードＡ、例えば（１３、Ａ）にマップでき、仮想ノード１２は物理ノードＢ、例えば（１２、Ｂ）にマップできる。マップされたノードの組４１０ａは、仮想ノード１２および１３を含むことができる。このようにして、マップされたノードは、｛（１３、Ａ）、（１２、Ｂ）｝から構成できる。残りのマップされていないノードの組４２０ａは、仮想ノード１１および１４を含むことができる。利用可能な候補ノードの組、例えばｃνは、｛（１１、Ｆ）、（１１、Ｅ）、（１４、Ｆ）、（１４、Ｅ）｝を含むことができる。光ネットワークの制約条件内において、仮想ノード１１は、提案されたマッピング４３０において示されている物理ノードＦ、例えば、（１１、Ｆ）にマップできると判定できる。仮想ノード１１のマッピングに基づくと、唯一残っているマップされていないノード４２０ｂは仮想ノード１４の可能性がある。しかし、残っている候補ノードマッピング、例えば（１４、Ｅ）は、仮想リンク（１３、１４）に対して物理ノードＡとＥの間に１スパンパスがないので有効でない可能性がある。このため、ｉ＿ｓｐａｎＭａｐｐｉｎｇ方法では、パスを戻り、マッピング（１１、Ｆ）に戻り、仮想ノード１１を次の候補ノード（１１、Ｅ）にマップし直すことができる。ｉ＿ｓｐａｎＭａｐｐｉｎｇ方法では、パスを戻り、有効な仮想ノードマッピングが見つかるまで多数の繰返しを行うことができる。
【００３０】
従って、１つの実施の形態に対して、ｉ＿ｓｐａｎＭａｐｐｉｎｇ方法は、計量（ｍn）に対して大きい方から順に、各仮想ノードに対する候補物理ノードを分類する下記の方程式を利用できる。
ｍn＝Ｐn×（Σｅｘｐ（−１／ｘw））／ｍａｘＬａｙｅｒ＋（ｍａｘＮｏｄｅＵｓａｇｅ−ｎｏｄｅＵｓａｇｅn）／ｍａｘＮｏｄｅＵｓａｇｅ  （１）
ここで、
ｎ＝候補物理ノード
ｘw＝ｗ番目の波長層において、ｎへの利用可能なパスを有する物理ノード数
ｍａｘＮｏｄｅＵｓａｇｅ＝すべての物理ノード間で要求される最大計算資源
ｎｏｄｅＵｓａｇｅn＝ｎにおいて要求される計算資源であり、物理ノード間の計算資源のバランスを取るために使用される
Ｐn＝１／Ｐmapped＋α×１／Ｐunmappedであり、ここにおいて、
Ｐmapped＝ｎとマップされた物理ノード間の平均スパン
Ｐunmapped＝ｎとマップされていない物理ノード間の平均スパン
α＝マップされていない仮想リンクとνにおける仮想リンク全体の比である。
【００３１】
方程式（１）を使用すると、物理ノード１０２において計算資源負荷のバランスを取ることができると共に、ＷＤＭネットワーク資源を減少することができる。例えば、仮想ノードνがより高いＰnの候補ノードにマップされると、仮想リンクはより少ないスパンを有することができる。他の例としては、仮想ノードνがより高いΣｅｘｐ（−１／ｘw）の候補ノードにマップされると、波長を分離する可能性は少なくなる。ＭａｘＮｏｄｅＵｓａｇｅはすべての物理ノード間で要求される最大計算資源負荷であり、ｎｏｄｅＵｓａｇｅnは、候補物理ノードｎにおいて要求される計算資源負荷であり、物理ノード間で計算資源負荷のバランスを取るために使用できる。
【００３２】
図５は、本開示の１つの実施の形態に従う、ｉスパンマッピング方法を利用する仮想ノードマッピングの方法５００を例示している。方法５００は、図６を参照して下記に検討されるＭｉｎ＿Ｓｐａｎ方法と、図７を参照して下記に検討されるＭｉｎ＿Ｗａｖｅｌｅｇｔｈ方法の両者において利用できる。ｉスパンマッピングは、波長割り当て、波長スパン、および波長分離のような、光ネットワークの特徴を考慮した仮想ノードマッピングを見つけるために利用できる。方法５００は、図１〜３の光ネットワーク１００により全体的または部分的に実現できる。方法５００のステップは、スパニングツリートンネリング（spanning tree tunneling）およびピーイング(peeing)を行うように構成されているハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせにより行うことができる。ソフトウェアまたはファームウェアは、コンピュータ読取り可能媒体に格納された指令を含むことができ、それが実行されたときに、下記のステップの１つ以上を行うように動作可能である。コンピュータ読取り可能媒体は、ハードディスクドライブ、コンパクトディスク、フラッシュメモリ、または任意の他の適切な装置のような、プログラムまたは指令を格納且つ検索するように構成されている任意のシステム、機器、または装置を含むことができる。ソフトウェアまたはファームウェアは、プロセッサまたは他の適切なユニットに、コンピュータ読取り可能媒体から指令を検索且つ実行することを指示するように構成できる。例示の目的のために、方法５００を図１〜３のネットワーク１００に関して記述する。しかし方法５００は、任意の適切なネットワーク上の仮想ノードマッピングに使用できる。
【００３３】
方法５００は、例えば、図１の資源マネージャ１１０のような資源マネージャにおいて受信された、ＶＮ要求２１０のようなＶＮ要求に関連して行うことができる。方法５００は、ＶＮ要求の組のそれぞれに１つ対して平行に繰返すこと、または行うことができる。更に、図５は、方法５００に関して行われるステップのある順序を開示しているが、方法５００を含むステップは、任意の適切な順序で完了できる。
【００３４】
ステップ５０５において、資源マネージャ１１０のような資源マネージャは、ＶＮ要求２１０のようなＶＮ要求（ｒ）を、ＶＮ要求ｒに対して要求された最大スパン数（ｉ）だけ受信できる。ステップ５１０において、資源マネージャは、仮想ノード自由度の大きい順に仮想ノードを分類できる。例えば、資源マネージャ１１０は、図２に示されているＶＮ要求２１０ａを受信できる。資源マネージャ１１０は最初に、要求２１０ａにおいて仮想ノード自由度が最も高い仮想ノードをマップできる。仮想ノード１３は仮想ノード自由度３を有し、仮想ノード１２、１１、および１４は仮想ノード自由度２、２、および１をそれぞれ有している。そのため、仮想ノード１３を最初にマップできる。次の仮想ノードは、有効なマップされた仮想ノードの隣接する仮想ノードにおける最も高い仮想ノード自由度を有することができる。
【００３５】
ステップ５１５において、資源マネージャは、ＶＮ要求を構成する各仮想ノードνiに対して候補物理ノード｛ｎ｝を判定できる。この判定は、例えば、所定の（ｎν、ｄν）のような中央の物理ノードｎνからの物理距離ｄν未満にある仮想ノードνiに基づくことができる。例えば、図４を参照すると、ＶＮ要求２１０ａにおけるマップされていない仮想ノードに対する候補ノードは、｛（１１、Ｆ）、（１１、Ｅ）、（１４、Ｆ）、（１４、Ｅ）｝を含むことができる。
【００３６】
ステップ５２０において、資源マネージャは、すべての候補ノードが、ＶＮ要求に対して十分な計算資源を有しているかを判定できる。すべての候補ノードが十分な計算資源を有しているわけではない場合は、ステップ５２５において、資源マネージャは、ＶＮ要求に対して十分な計算資源を有していない候補ノードを無視できる。例えば、資源マネージャ１１０は、ＶＮ要求２１０ａを完了するための計算資源を有していない候補を削除できる。
【００３７】
ステップ５３０において、資源マネージャは、マップされた仮想ノードの隣接する仮想ノードを、仮想ノード自由度の大きい順に分類でき、例えばｓｏｒｔ（  ）関数を利用できる。各仮想ノードνに対して、方法４００は、図４を参照して検討した方程式（１）において定義された計量（ｍn）の大きい順に、その候補物理ノードｎを分類できる。
【００３８】
ステップ５３５において、分類された候補ノードの組｛ｎ｝における各候補ノードｎに対して、資源マネージャは、各仮想リンクが、マッピング制約条件に従う利用可能なライトパスを有しているかを判定できる。マッピング制約条件は、例えば、ｍａｘＬａｙｅｒ波長層内、および／または同じ波長のｉスパン内というような、物理ネットワークの制約条件に基づいて設定できる。この判定は、マッピングを有効にするｖａｌｉｄ（  ）関数を利用して行うことができる。例えば、資源マネージャ１１０は、ｍａｘＬａｙｅｒを１に等しく、ｉを１に等しく設定できる。現在のマッピングが有効でない場合は、方法５００はステップ５４０に進むことができる。現在のマッピングが有効な場合は、方法５００はステップ５５５に進むことができる。
【００３９】
ステップ５４０において、資源マネージャは、すべての候補ノードがチェックされたかを判定できる。チェックされていない候補ノードが残っている場合は、方法５００はステップ５３５に戻ることができる。チェックされていない候補ノードが残っていない場合は、方法５００はステップ５４５に進むことができる。ステップ５４５で、資源マネージャは、所定のＶＮ要求のマッピングの失敗を記録でき、ステップ５１５に戻ることができる。
【００４０】
ステップ５５０において、資源マネージャは、マップされた仮想ノードを更新できる。ステップ５５５において、資源マネージャは、すべての仮想ノードがマップされたかを判定できる。すべての仮想ノードがまだマップされていない場合、方法５００はステップ５１５に戻ることができる。すべてのノードがマップされた場合、方法５００はステップ５０５に戻ることができる。
【００４１】
図６は、本開示の１つの実施の形態に従う、Ｍｉｎ＿Ｓｐａｎ方法を利用する仮想ノードマッピングの方法６００を例示している。上記したように、Ｍｉｎ＿Ｓｐａｎ方法は、もっとも少ない波長スパンの仮想ノードマッピングを見つける試みを行うことができる。方法６００は、図１〜３の光ネットワーク１００により全体的または部分的に実現できる。方法６００のステップは、スパニングツリートンネリングおよびピーイングを行うように構成されているハードウェア、ソフトウェア、ファームウェア、またはそれら任意の組み合わせにより行うことができる。ソフトウェアまたはファームウェアは、コンピュータ読取り可能媒体上に格納された指令を含むことができ、それが実行されたときに、下記のステップの１つ以上を行うように動作可能である。コンピュータ読取り可能媒体は、ハードディスクドライブ、コンパクトディスク、フラッシュメモリ、または任意の他の適切な装置のような、プログラムまたは指令を格納且つ検索するように構成されている任意のシステム、機器、または装置を含むことができる。ソフトウェアまたはファームウェアは、プロセッサまたは他の適切なユニットに、コンピュータ読取り可能媒体から指令を検索且つ実行することを指示するように構成できる。例示の目的のために、方法６００を図１〜３のネットワーク１００に関して記述する。しかし方法６００は、任意の適切なネットワーク上の仮想ノードマッピングに使用できる。
【００４２】
方法６００は、例えば、図１の資源マネージャ１１０のような資源マネージャにおいて受信された、ＶＮ要求２１０のようなＶＮ要求に関連して行うことができる。方法６００は、ＶＮ要求の組のそれぞれ１つに対して平行に繰返すこと、または行うことができる。更に、図６は、方法６００に関して行われるステップのある順序を開示しているが、方法６００を含むステップは、任意の適切な順序で完了できる。
【００４３】
ステップ６０５において、資源マネージャ１１０のような資源マネージャは、ＶＮ要求２１０のようなＶＮ要求（ｒ）の組を受信できる。ステップ６１０において、資源マネージャは、各ＶＮ要求における仮想リンクの総数の多い順にＶＮ要求を分類できる。例えば、資源マネージャ１１０は、図２に示されているＶＮ要求２１０ａおよび２１０ｂを受信できる。資源マネージャ１１０は、仮想リンク２０４の総数の多い順にＶＮ要求２１０ａおよび２１０ｂを分類できる。このようにして、ＶＮ要求はＶＮ要求２１０ａ（４つの仮想リンク２０４を有する）として、そしてＶＮ要求２１０ｂ（３つの仮想リンク２０４を有する）として分類できる。
【００４４】
ステップ６１５において、資源マネージャはＶＮ要求（ｒ＝ｒ＋１）を選択でき、選択されたＶＮ要求に対して要求されるスパン数（ｉ）を設定できる。スパン（ｉ）は、各仮想リンクに対するライトパスに対して要求される物理リンク数に対応できる。ＶＮ要求における各仮想リンクは、ｉスパンまたは物理リンクを超えないライトパスにのみマップできる。例えば、資源マネージャ１１０はＶＮ要求２１０ａを選択でき、各仮想リンク２０４のライトパスに対して許容される物理リンク１０４またはスパンの数を１に設定できる（ｉ＝１）。
【００４５】
ステップ６２０において、資源マネージャは、選択されたＶＮ要求に対するスパン数（ｉ）が、許容される最大スパン数（Ｓｐａｎmax）以下であるかどうかを判定できる。Ｓｐａｎmaxは、光ネットワークのトポロジーに基づいて資源マネージャにより予め判定または設定できる。例えば、Ｓｐａｎmaxを５に設定できる。選択されたＶＮ要求に対するスパン数（ｉ）がＳｐａｎmax以下の場合、方法６００はステップ６３０に進むことができる。選択されたＶＮ要求に対するスパン数（ｉ）がＳｐａｎmaxを超える場合、方法６００はステップ６２５に進むことができる。
【００４６】
ステップ６２５において、資源マネージャは、ＶＮ要求の選択された組に対しては、現在の制約条件において仮想ノードマッピングは存在しないと判定できる。
【００４７】
ステップ６３０において、資源マネージャは、図５を参照して下記に詳細に検討される方法５００のようなｉ−ｓｐａｎマッピング方法を、ｉスパンの制約条件ですべての波長（Ｗmax）に対して実行できる。例えば、図２を参照すると、第２波長層λ2における１スパンマッピングがＶＮ要求２１０ｂに対して見つけられる。
【００４８】
ステップ６３５において、資源マネージャは、ｉスパンマッピングが見つけられたかを判定できる。ｉスパンマッピングが見つけられなかった場合、方法６００はステップ６４０に進むことができる。ｉスパンマッピングが見つけられた場合、方法６００はステップ６４５に進むことができる。
【００４９】
ステップ６４０において、資源マネージャは、スパン数を増加して（ｉ＝ｉ＋１）、ステップ６２０に戻ることができる。例えば、資源マネージャ１１０は、すべての波長（Ｗmax）上の特別なＶＮ要求に対する１スパンマッピングを検索できるが、その特別なＶＮ要求に対する１スパンマップを首尾よく見つけることはできない。資源マネージャ１１０は、スパンを２スパンマッピングに増加してステップ６２０に戻ることができる。
【００５０】
ステップ６４５において、資源マネージャは、すべてのＶＮ要求がマップされたかを判定できる。例えば、資源マネージャ１１０は、光ネットワーク１００に対してペンディングとなっているＶＮ要求があるかを判定できる。すべてのＶＮ要求がまだマップされている場合、方法６００はステップ６１０に戻ることができる。マップされるＶＮ要求が残っていない場合、方法６００はステップ６０５に戻ることができる。
【００５１】
検討したように、方法６００では、最大波長Ｗmaxまですべての波長を検索して、最小数のスパンの仮想ノードマッピングを見つける。そのため、ＶＮに対して利用される最大波長数である波長インデックスは、スパン数を最小にする試みを行わないマッピングよりも高くなり得る。
【００５２】
図７は、本開示の１つの実施の形態に従う、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法を利用する仮想ノードマッピングの方法７００を例示している。上記のように、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法では、各仮想ノードマッピングに対して許容される最大波長層インデックス（ｍａｘＬａｙｅｒ）を動的に制限することにより仮想ノードマッピングを見つける試みを行うことができる。方法７００は、図１〜３の光ネットワーク１００により全体的または部分的に実現できる。方法７００のステップは、スパニングツリートネリングおよびピーイングを行うように構成されているハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせにより行うことができる。ソフトウェアまたはファームウェアは、コンピュータ読取り可能媒体に格納された指令を含むことができ、それが実行されたときに、下記のステップの１つ以上を行うように動作可能である。コンピュータ読取り可能媒体は、ハードディスクドライブ、コンパクトディスク、フラッシュメモリ、または任意の他の適切な装置のような、プログラムまたは指令を格納且つ検索するように構成されている任意のシステム、機器、または装置を含むことができる。ソフトウェアまたはファームウェアは、プロセッサまたは他の適切なユニットに、コンピュータ読取り可能媒体から指令を検索且つ実行することを指示するように構成できる。例示の目的のために、方法７００を図１〜３のネットワーク１００に関して記述する。しかし方法７００は、任意の適切なネットワーク上の仮想ノードマッピングに使用できる。
【００５３】
方法７００は、例えば、図１の資源マネージャ１１０のような資源マネージャにおいて受信された、ＶＮ要求２１０のようなＶＮ要求に関連して行うことができる。方法７００は、各ＶＮ要求に対して平行に繰返すこと、または行うことができる。更に、図７は、方法７００に関して行われるステップのある順序を開示しているが、方法７００を含むステップは、任意の適切な順序で完了できる。方法７００は、ネットワーク資源を最適化するために、図６の方法６００と提携して、および／または同時に利用できる。
【００５４】
ステップ７０５において、資源マネージャ１１０のような資源マネージャは、ＶＮ要求２１０のようなＶＮ要求の組（ｒ）を受信できる。ステップ７１０において、資源マネージャは、各ＶＮ要求における仮想リンクの総数の大きい順にＶＮ要求を分類できる。例えば、資源マネージャ１１０は、図２に示されているＶＮ要求２１０ａおよび２１０ｂを受信できる。資源マネージャ１１０は、仮想リンク２０４の総数の大きい順にＶＮ要求２１０ａおよび２１０ｂを分類できる。このようにして、ＶＮ要求はＶＮ要求２１０ａ（４つの仮想リンク２０４を有する）として、そしてＶＮ要求２１０ｂ（３つの仮想リンク２０４を有する）として分類できる。ｍａｘＬａｙｅｒはＷmaxに等しく設定できる。
【００５５】
ステップ７１５において、資源マネージャはＶＮ要求（ｒ＝ｒ＋１）を選択でき、選択されたＶＮ要求に対して要求されるスパン数（ｉ）を設定できる。スパン（ｉ）は、各仮想リンクに対するライトパスに対して要求される物理リンク数に対応できる。ＶＮ要求における各仮想リンクは、ｉスパンまたは物理リンクを超えないライトパスにのみマップできる。例えば、資源マネージャ１１０はＶＮ要求２１０ａを選択でき、各仮想リンク２０４のライトパスに対して許容される物理リンク１０４またはスパンの数を１に設定できる（ｉ＝１）。
【００５６】
ステップ７２０において、資源マネージャは、選択されたＶＮ要求に対するスパン数（ｉ）が、許容される最大スパン数（Ｓｐａｎmax）以下であるかを判定できる。Ｓｐａｎmaxは、光ネットワークのトポロジーに基づいて、資源マネージャにより予め判定または設定できる。例えば、Ｓｐａｎmaxを５に設定できる。選択されたＶＮ要求に対するスパン数（ｉ）がＳｐａｎmax以下の場合、方法７００はステップ７４０に進むことができる。選択されたＶＮ要求に対するスパン数（ｉ）がＳｐａｎmaxを超える場合、方法７００はステップ７２５に進むことができる。
【００５７】
ステップ７２５において、資源マネージャは、現在の最大波長層ｍａｘＬａｙｅｒが、最大波長インデックスＷmax未満であるかを判定できる。現在の最大波長層ｍａｘＬａｙｅｒがＷmax未満の場合、方法７００はステップ７３５に進むことができる。現在の最大波長層ｍａｘＬａｙｅｒがＷmax未満でない場合、方法７００はステップ７３０に進むことができる。ステップ７３０において、資源マネージャは、ＶＮ要求に対しては、現在の制約条件において仮想ノードマッピングは存在しないと判定できる。ステップ７３５において、資源マネージャは、現在の最大波長層ｍａｘＬａｙｅｒをＷmaxに等しく設定でき、方法７００はステップ７５５に進むことができる。このようにして、後続の各ＶＮ要求に対して、方法７００は基本的にＭｉｎ＿Ｓｐａｎ方法を適用して、第１からｍａｘＬａｙｅｒ番目までの波長層からマッピングを見つけることができる。
【００５８】
ステップ７４０において、資源マネージャは、図５を参照して下記に詳細に検討される方法５００のようなｉスパンマッピング方法を、ｉスパンの制約条件ですべての波長（Ｗmax）に対して実行できる。例えば、図２を参照すると、第２波長層λ2における１スパンマッピングがＶＮ要求２１０ｂに対して見つけられる。
【００５９】
ステップ７４５において、資源マネージャは、ｉスパンマッピングが見つけられたかを判定できる。ｉスパンマッピングが見つけられなかった場合、方法７００はステップ７５５に進むことができる。ｉスパンマッピングが見つけられた場合、方法７００はステップ７５０に進むことができる。
【００６０】
ステップ７５５において、資源マネージャは、スパン数を増加して（ｉ＝ｉ＋１）、ステップ７２０に戻ることができる。例えば、資源マネージャ１１０は、すべての波長（Ｗmax）上の特別なＶＮ要求に対する１スパンマッピングを検索できるが、その特別なＶＮ要求に対する１スパンマップを首尾よく見つけることはできない。資源マネージャ１１０は、スパンを２スパンマッピングに増加してステップ７２０に戻ることができる。
【００６１】
ステップ７５０において、資源マネージャは、すべてのＶＮ要求がマップされたかを判定できる。例えば、資源マネージャ１１０は、光ネットワーク１００に対してペンディングとなっているＶＮ要求があるかを判定できる。すべてのＶＮ要求がまだマップされていない場合、方法７００はステップ７１０に戻ることができる。マップされるＶＮ要求が残っていない場合、方法７００はステップ７０５に戻ることができる。
【００６２】
従って、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法７００は、Ｍｉｎ＿Ｓｐａｎ方法６００の結果を、各仮想のノードマッピングに対して許容される最大波長層インデックス（ｍａｘＬａｙｅｒ）を動的に制限することにより最適化できる。方法５００、６００および／または７００を利用すれば、ネットワーク資源の利用法を改善する結果とすることができる。例えば、Ｍｉｎ＿Ｓｐａｎ方法とＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法の両者を利用してシミュレーションを行うことができる。比較の目的のため、シミュレーションは、光ネットワークにおいてＶＮマッピングとＲＷＡを分離する２ステップ（Ｔｗｏ＿Ｓｔｅｐ）アプローチを含むことができる。第１ステップでは、光ネットワークにおけるＶＮマッピングに対する既存の方式を適用できる。第２ステップでは、ＷＤＭネットワークにおける波長割り当てに対してグラフ彩色を適用できる。Ｔｗｏ＿Ｓｔｅｐアプローチでは、リンクとノードの両者に対して負荷のバランスを取る試みを行うことができる。任意の２つの物理ノード間の固定最短経路制御をすべての方式に適用できる。
【００６３】
シミュレーションの間、ネットワークは、１つの物理リンク当たり８８波長を含むことができる。各ＶＮ要求に対して、仮想ノード数は３と５の間でランダムに生成できる。各仮想ノードは、１と３の間のノード自由度と組（ｎν、ｄν）を有することができ、それらはランダムに生成される。平均ｄvは、１つの仮想ノード（ｃν）当たりの候補ノードの平均数を増加するように設定できる。シミュレーションは、異なる乱数の根を有する１００の実験を含むことができる。
【００６４】
図８は、本開示の１つの実施の形態に従う、ＶＮ要求数の関数としての波長インデックスＷmaxのシミュレーション結果のグラフ８００を例示している。このシミュレーションにおいては、１つの仮想ノード（ｃν）当たりの候補ノードは８に等しく設定されている。グラフ８００は、Ｔｗｏ＿Ｓｔｅｐ方法８１０、Ｍｉｎ＿Ｓｐａｎ方法８２０、およびＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法８３０に対するプロットを含むことができる。グラフ８００から分かるように、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ８３０は、より低い最大波長インデックス（Ｗmax）という結果とすることができる。例えば、要求数が約２５０のときは、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ８３０は、Ｔｗｏ＿Ｓｔｅｐ８１０よりも約３０パーセント少ない波長層を要求する。図８は、要求数が２５０のときは、Ｔｗｏ＿Ｓｔｅｐが仮想ノードマッピングおよびＲＷＡを分離するので、８８を超える波長を要求することを示している。
【００６５】
図９は、本開示の１つの実施の形態に従う、ＶＮ要求数の関数としての仮想長さ当たりの平均波長スパンのシミュレーション結果のグラフ９００を例示している。グラフ９００は、Ｔｗｏ＿Ｓｔｅｐ方法９１０、Ｍｉｎ＿Ｓｐａｎ方法９２０、およびＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法９３０に対するプロットを含むことができる。グラフ９００から分かるように、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈは、Ｔｗｏ＿Ｓｔｅｐよりも少ない波長スパンという結果とすることができる。例えば、要求数が約２５０のときは、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ９３０は、Ｔｗｏ＿Ｓｔｅｐ９１０よりも約３５パーセント少ない波長スパンを要求する。図８および９は、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈは最も低いＷmaxを有しているが、Ｍｉｎ＿ＷａｖｅｌｅｎｇｔｈがｍａｘＬａｙｅｒ制限を課すために、Ｍｉｎ＿Ｓｐａｎよりも波長スパンがわずかに多いことを例示している。
【００６６】
図１０は、本開示の１つの実施の形態に従う、ＶＮ要求数の関数としての、物理ノードにおける計算資源の標準偏差のシミュレーション結果のグラフを例示している。グラフ１０００は、Ｔｗｏ＿Ｓｔｅｐ方法１０１０と、Ｍｉｎ＿Ｓｐａｎ方法１０２０と、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１０３０に対するプロットを含むことができる。グラフ１０００は、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１０３０とＭｉｎ＿Ｓｐａｎ方法１０２０は、Ｔｗｏ＿Ｓｔｅｐ方法１０１０よりも高い、物理ノードにおける計算資源負荷の標準偏差を有することができることを例示している。より高い標準偏差を有することができるのは、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１０３０とＭｉｎ＿Ｓｐａｎ方法１０２０の両者が、最も少ないネットワーク資源を有する候補ノードの中からバランスの取れた物理ノードを選択することだけができるからである。図８、９および１０は、計算資源負荷のバランスを取ることは、ネットワーク資源に対する制約条件が最小化または削除できるならば達成できることを例示している。
【００６７】
図１１は、本開示の１つの実施の形態に従う、１仮想ノード当たりの候補ノード平均数の関数としての波長インデックスＷmaxと、１仮想リンク当たりの平均波長スパンのグラフを例示している。グラフ１１００は、Ｔｗｏ＿Ｓｔｅｐ方法１１１０と、Ｍｉｎ＿Ｓｐａｎ方法１１２０と、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１１３０に対するプロットを含むことができる。図１１は、１仮想リンク当たりのＷmaxを例示していると記述できる。例えば、固定ノードマッピング（ｃν＝１）に対しては、Ｗmaxは約７２であってよい。仮想ノードが増大された割り当ての柔軟性を有するときは（ｃν＝２４）、Ｗmaxは、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１１３０に対しては約１２、または、固定ノードマッピング（ｃν＝１）よりも約８３パーセント少なくてよい。
【００６８】
図１２は、本開示の１つの実施の形態に従う、１仮想ノード当たりの候補ノード平均数の関数としての、仮想長さ当たりの平均波長スパンのグラフを例示している。グラフ１２００は、Ｔｗｏ＿Ｓｔｅｐ方法１２１０、Ｍｉｎ＿Ｓｐａｎ方法１２２０、およびＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１２３０に対するプロットを含むことができる。図１２は、１仮想リンク当たりの平均波長スパンを例示していると記述できる。例えば、固定ノードマッピング（ｃν＝１）に対しては、１仮想リンク当たりの平均波長スパンは約３であってよい。仮想ノードが増大された割り当ての柔軟性を有するときは（ｃν＝２４）、１仮想リンク当たりの平均波長スパンは、Ｍｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１２３０に対して約１．１４、または固定ノードマッピング（ｃν＝１）より６２パーセント少なくてよい。
【００６９】
図１３は、本開示の１つの実施の形態に従う、１仮想ノード当たりの候補ノード平均数の関数としての、ブロック化されたＶＮ要求の比のシミュレーション結果のグラフ１３００を例示している。グラフ１３００は、Ｔｗｏ＿Ｓｔｅｐ方法１３１０、Ｍｉｎ＿Ｓｐａｎ方法１３２０、およびＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１３３０に対するプロットを含むことができる。グラフ１３００は、Ｔｗｏ＿Ｓｔｅｐ方法１３１０におけるＶＮ要求が、ｃνが約２と８の間のときはブロック化できるということを例示している。このブロック化は、十分なネットワークおよび計算資源があるときでも起こり得る。ＶＮ要求は、Ｔｗｏ＿Ｓｔｅｐ方法１３１０を利用するときにブロック化できるが、これは２つの仮想ノードは、この方法では同じ物理ノードにマップできず、異なる候補ノードｃνへ再マップするために戻る経路がないためである。
【００７０】
図１４は、本開示の１つの実施の形態に従う、１仮想ノード当たりの候補ノード平均数の関数としての、物理ノードにおける計算資源の標準偏差のシミュレーション結果のグラフ１４００を例示している。グラフ１４００は、Ｔｗｏ＿Ｓｔｅｐ方法１４１０、Ｍｉｎ＿Ｓｐａｎ方法１４２０、およびＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１４３０に対するプロットを含むことができる。グラフ１４００は、ｃνが２から８に増加するにつれて、計算資源負荷の標準偏差が、Ｍｉｎ＿Ｓｐａｎ方法１４２０とＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法１４３０の両者において増加できることを例示している。この増加が可能なのは、候補ノードｃνの選択を制限でき、より短い波長スパンの仮想ノードマッピングを選択できるからである。ｃνが８から２４に増加するにつれて、標準偏差は減少できるが、これは、ますますバランスの取れた物理ノードを、増加した候補ノード数から選択できるからである。図１１〜１４は、仮想ノードマッピングの柔軟性（ｃν）が増加するにつれての、ネットワーク資源に対する影響を例示している。
【００７１】
例としてのシミュレーション結果は、図６に示されているＭｉｎ＿Ｓｐａｎ方法６００と、図７に示されているＭｉｎ＿Ｗａｖｅｌｅｎｇｔｈ方法７００の利用が、仮想ネットワークマッピングとＲＷＡを独立して行う既存のＴｗｏ＿Ｓｔｅｐ方法と比較して、光ネットワーク１００の資源において、約３０パーセントまでの節約という結果とすることができるということを例示している。また、柔軟性のある仮想ノードマッピングを有するネットワーク設計では、ネットワーク仮想化を利用して、固定ノードマッピングと比較して、効率よく光ネットワーク資源を利用できる。
【００７２】
ここに列挙されたすべての例と条件付き用語は、技術の推進に、本発明の発明者によって貢献された発明と概念を、読者が理解することを支援する教育的目的のために意図され、そのように具体的に列挙された例および条件に制限されないと解釈されるべきである。本発明の実施の形態を詳細に記述したが、種々の変更、置換、および改変が本発明の精神および範囲を逸脱することなく可能であることは理解されるべきである。
【図１】
2014078943.tif 000003
【図２】
2014078943.tif 000004
【図３】
2014078943.tif 000005
【図４Ａ】
2014078943.tif 000006
【図４Ｂ】
2014078943.tif 000007
【図５】
2014078943.tif 000008
【図６】
2014078943.tif 000009
【図７】
2014078943.tif 000010
【図８】
2014078943.tif 000011
【図９】
2014078943.tif 000012
【図１０】
2014078943.tif 000013
【図１１】
2014078943.tif 000014
【図１２】
2014078943.tif 000015
【図１３】
2014078943.tif 000016
【図１４】
2014078943.tif 000017
【外国語明細書】
2014078943000001.pdf