(57)【要約】【課題】データ転送経路にトンネル区間が存在しても、適切な経路設定を行なえるようにする。【解決手段】ネットワークコントローラ１１は、特定部１１４と、経路情報生成部１１５と、経路情報設定部１１６と、を備えてよい。特定部１１４は、複数のノードを、データ転送経路においてトンネルを生成又は終端するトンネルノードであるか否かによって分類した分類情報に基づいて、データ転送経路におけるトンネル区間を特定してよい。経路情報生成部１１５は、前記特定したトンネル区間の始点に位置するトンネルノードを送信元とし、前記特定したトンネル区間の終点に位置するトンネルノードを宛先とした経路情報を生成してよい。経路情報設定部１１６は、前記経路情報を前記特定したトンネル区間に位置するノードに設定してよい。【選択図】図１１
2017085369.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークにおいて複数のノードを経由するデータ転送経路の設定を制御するネットワークコントローラであって、
前記複数のノードを、前記データ転送経路においてトンネルを生成又は終端するトンネルノードであるか否かによって分類した分類情報に基づいて、前記データ転送経路におけるトンネル区間を特定する特定部と、
前記特定したトンネル区間の始点に位置するトンネルノードを送信元とし、前記特定したトンネル区間の終点に位置するトンネルノードを宛先とした経路情報を生成する経路情報生成部と、
前記経路情報を前記特定したトンネル区間に位置するノードに設定する経路情報設定部と、
を備えた、ネットワークコントローラ。
【請求項２】
前記複数のノードの一部又は全部は、仮想マシンである、請求項１に記載のネットワークコントローラ。
【請求項３】
前記経路情報設定部は、前記経路情報を、前記特定したトンネル区間内に位置するノードに設定する、請求項１又は２に記載のネットワークコントローラ。
【請求項４】
前記特定部は、
前記分類情報に基づいて、前記データ転送経路を前記トンネル区間の別に論理的な経路に階層化し、
前記経路情報生成部は、
前記階層化された論理的な経路の別に、前記経路情報を生成する、請求項１〜３のいずれか１項に記載のネットワークコントローラ。
【請求項５】
前記経路情報生成部は、
前記階層化された論理的な経路のうち、最上位ではない階層の経路に属する前記トンネル区間の始点に位置するトンネルノードについて、前記経路情報を生成すると共に、当該階層の上位階層の経路に対し前記経路情報を参照する経路情報を生成する、請求項４に記載のネットワークコントローラ。
【請求項６】
前記特定部は、
階層レベルＬ（Ｌは整数）をＬ＝０とし、前記データ転送経路を送信元端末から宛先端末へ向かう方向へ辿ってノードを探索し、
前記探索によって発見したノードが、前記非トンネルノードであると前記分類情報に基づいて判断すると、前記発見したノードを現在の階層レベルＬの階層の経路に所属させ、
前記探索によって発見したノードが、前記トンネルを生成するトンネルノードであると前記分類情報に基づいて判断すると、前記トンネルを生成するトンネルノードを、現在の階層レベルＬの階層と現在の階層レベルＬを「＋１」した階層との各経路に所属させ、
前記探索によってした発見したノードが、前記トンネルを終端するトンネルノードであると前記分類情報に基づいて判断すると、前記トンネルを終端するトンネルノードを、現在の階層レベルＬの階層と現在の階層レベルＬを「−１」した階層との各経路に所属させる、請求項４又は５に記載のネットワークコントローラ。
【請求項７】
前記データ転送経路において前記ネットワークコントローラが管理を担当する範囲である管理ドメインに、前記トンネル区間の終点に位置するトンネルノードが存在するか否かを判断するトンネル端判断部を更に備え、
前記経路情報生成部は、
前記管理ドメインに前記トンネル区間の終点に位置するトンネルノードが存在しないと前記トンネル端判断部にて判断されると、前記トンネルを生成するためのトンネル設定情報に基づいて、前記終端に位置するトンネルノードのアドレス情報を取得し、前記アドレス情報を宛先とした前記経路情報を生成する、請求項１に記載のネットワークコントローラ。
【請求項８】
前記トンネル設定情報を記憶する記憶部を備え、
前記経路情報生成部は、前記記憶部から前記トンネル設定情報を取得する、請求項７に記載のネットワークコントローラ。
【請求項９】
前記経路情報生成部は、前記終端に位置するトンネルノードにアクセスして当該トンネルノードにおいて記憶された前記トンネル設定情報を取得する、請求項７に記載のネットワークコントローラ。
【請求項１０】
前記データ転送経路において前記ネットワークコントローラが管理を担当する範囲である管理ドメインに、前記トンネル区間の終点に位置するトンネルノードが存在するか否かを判断するトンネル端判断部を更に備え、
前記経路情報生成部は、
前記管理ドメインに前記トンネル区間の終点に位置するトンネルノードが存在しないと前記トンネル端判断部にて判断されると、デフォルトルートアドレスを宛先とした前記経路情報を生成する、請求項１に記載のネットワークコントローラ。
【請求項１１】
前記データ転送経路において前記ネットワークコントローラが管理を担当する範囲である管理ドメインに、前記トンネル区間の終点に位置するトンネルノードが存在するか否かを判断するトンネル端判断部を更に備え、
前記特定部は、
前記管理ドメインに前記トンネル区間の終点に位置するトンネルノードが存在しないと前記トンネル端判断部にて判断された場合において、前記データ転送経路を送信元端末から宛先端末へ向かう方向へ辿ってノードを探索して発見したノードが、前記トンネルを終端するトンネルノードであると前記分類情報に基づいて判断すると、前記トンネルを終端するトンネルノードを階層レベルＬ（Ｌは整数）の階層と階層レベルＬを「−１」した階層との各経路に所属させ、
前記階層レベルＬを「−１」した経路が未生成であれば、前記階層レベルＬを「−１」した新たな経路を生成して、前記トンネルを終端するトンネルノードを前記新たな経路に所属させる、請求項４又は５に記載のネットワークコントローラ。
【請求項１２】
複数のノードと、
前記複数のノードを経由するデータ転送経路の設定を制御するネットワークコントローラと、を備え、
前記ネットワークコントローラは、
前記複数のノードを、前記データ転送経路においてトンネルを生成又は終端するトンネルノードであるか否かによって分類した分類情報に基づいて、前記データ転送経路におけるトンネル区間を特定する特定部と、
前記特定したトンネル区間の始点に位置するトンネルノードを送信元とし、前記特定したトンネル区間の終点に位置するトンネルノードを宛先とした経路情報を生成する経路情報生成部と、
前記経路情報を前記特定したトンネル区間に位置するノードに設定する経路情報設定部と、を備えた、ネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に記載する技術は、ネットワークコントローラ及びネットワークシステムに関する。
【背景技術】
【０００２】
通信ネットワークにおいて、パケットデータ等のデータを転送する経路（便宜的に「データ転送経路」と称してよい。）がネットワークコントローラによって設定されることがある。
【０００３】
例えば、ネットワークコントローラは、データ転送経路に位置する通信ノードに対して、当該通信ノードが受信したデータのアドレス情報に応じた転送先を示す情報（「経路情報」と称してよい。）を生成して設定することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−４４６０１号公報
【特許文献２】特開２００９−１０６０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
データ転送経路に、例えば、仮想プライベートネットワーク（virtual private network, VPN）のトンネルを形成可能な装置や機能によって、トンネル区間が形成されることがある。
【０００６】
データ転送経路にトンネル区間が存在すると、ネットワークコントローラは、トンネル区間に対して適切な経路設定を行なえないことがある。別言すると、ネットワークコントローラは、トンネル区間が含まれるデータ転送経路に対する経路設定をサポートできないことがある。
【０００７】
１つの側面では、本明細書の記載する技術の目的の１つは、データ転送経路にトンネル区間が存在しても、適切な経路設定を行なえるようにすることにある。
【課題を解決するための手段】
【０００８】
１つの側面において、ネットワークコントローラは、ネットワークにおいて複数のノードを経由するデータ転送経路の設定を制御してよく、特定部と、経路情報生成部と、経路情報設定部と、を備えてよい。特定部は、前記複数のノードを、前記データ転送経路においてトンネルを生成又は終端するトンネルノードであるか否かによって分類した分類情報に基づいて、前記データ転送経路におけるトンネル区間を特定してよい。経路情報生成部は、前記特定したトンネル区間の始点に位置するトンネルノードを送信元とし、前記特定したトンネル区間の終点に位置するトンネルノードを宛先とした経路情報を生成してよい。経路情報設定部は、前記経路情報を前記特定したトンネル区間に位置するノードに設定してよい。
【０００９】
また、１つの側面において、ネットワークシステムは、複数のノードと、前記複数のノードを経由するデータ転送経路の設定を制御するネットワークコントローラと、を備えてよい。前記ネットワークコントローラは、上述した特定部、経路情報生成部、及び、経路情報設定部を備えてよい。
【発明の効果】
【００１０】
１つの側面として、データ転送経路にトンネル区間が存在しても、適切な経路設定を行なうことができる。
【図面の簡単な説明】
【００１１】
【図１】ネットワーク機能仮想化（ＮＦＶ）技術を利用したサービスチェイン構築の一例を模式的に示す図である。
【図２】データの送信元アドレス及び宛先アドレスの双方を変更しないネットワーク（ＮＷ）機能（Type 1）を説明するための図である。
【図３】データの送信元アドレスを変更し宛先アドレスを変更しないＮＷ機能（Type 2）を説明するための図である。
【図４】データの送信元アドレスを変更せず宛先アドレスを変更するＮＷ機能（Type 3）を説明するための図である。
【図５】データの送信元アドレス及び宛先アドレスの双方を変更するＮＷ機能（Type 4）を説明するための図である。
【図６】経路設定対象の経路、及び、当該経路に存在するＮＷ機能及び中継ノードに設定される経路情報の一例を、データのアドレス情報の変化と共に示す図である。
【図７】経路設定対象の経路にトンネル区間が存在する場合の、ＮＷ機能及び中継ノードに設定される経路情報の一例を、データのアドレス情報の変化と共に示す図である。
【図８】図７のトンネル区間の始点に位置するノードのための適切な経路情報の一例を示す図である。
【図９】図７のトンネル区間内に位置する中継ノードのための適切な経路情報の一例を示す図である。
【図１０】第１実施形態の管理サーバが生成する、階層化された論理的な経路の情報を説明するための図である。
【図１１】第１実施形態に係る管理サーバの機能的な構成例を示すブロック図である。
【図１２】第１実施形態に係る管理サーバのハードウェア構成例を示すブロック図である。
【図１３】第１実施形態に係る管理サーバの動作例を示すフローチャートである。
【図１４】第１実施形態に係る管理サーバが生成する、階層化された論理的な経路の情報を説明するための図である。
【図１５】第１実施形態に係る管理サーバが図１４の階層化された論理的な経路の情報を生成する手順の一例を示すフローチャートである。
【図１６】第１実施形態に係る管理サーバが経路情報を生成する手順の一例を示すフローチャートである。
【図１７】第２実施形態に係るネットワーク構成例を示すブロック図である。
【図１８】第２実施形態に係る管理サーバの機能的な構成例を示すブロック図である。
【図１９】第２実施形態において、管理サーバの管理ドメイン内のデータ転送経路に、ペアを成すトンネル機能の一方しか存在しない例を示す図である。
【図２０】図１９の例に対して管理サーバが生成する、階層化された論理的な経路の情報を説明するための図である。
【図２１】第２実施形態に係る管理サーバが経路情報を生成する手順の一例を示すフローチャートである。
【図２２】図１９に例示したデータ転送経路の復路に着目した場合のノード配置例を示す図である。
【図２３】図２２の例に対して管理サーバが生成する、階層化された論理的な経路の情報を説明するための図である。
【図２４】第２実施形態に係る管理サーバが図２３の階層化された論理的な経路の情報を生成する手順の一例を示すフローチャートである。
【図２５】第３実施形態において、データ転送経路にトンネルのネスティングが設定されない例を示す図である。
【図２６】図２５の例に対して管理サーバが生成する、階層化された論理的な経路の情報を説明するための図である。
【図２７】第３実施形態に係る管理サーバが図２６の階層化された論理的な経路の情報を生成する手順の一例を示すフローチャートである。
【図２８】第３実施形態に係る管理サーバが図２５のデータ転送経路の復路について階層化された論理的な経路の情報を生成する手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照して実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形や技術の適用を排除する意図はない。また、以下に説明する各種の例示的態様は、適宜に組み合わせて実施しても構わない。なお、以下の実施形態で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
【００１３】
（第１実施形態）
通信ネットワーク技術の一例として、Software Defined Networking（ＳＤＮ）が注目されている。ＳＤＮでは、管理サーバが、ネットワークを成すスイッチやルータ等の通信機器を集中的に、管理、制御し、要求に応じて動的に通信経路を設定できる。
【００１４】
「管理サーバ」は、ネットワークにおける通信経路の設定や制御を行なう「ネットワークコントローラ」の一例である、捉えてもよい。「ネットワークコントローラ」は、「コントローラ」と略称してもよい。
【００１５】
別言すると、「ネットワークコントローラ」は、汎用のサーバコンピュータを用いて実現されてもよいし、ネットワークにおける通信経路の設定や制御に特化した専用の制御装置として実現されてもよい。
【００１６】
「通信経路」は、例示的に、パケットデータやフレームデータ等の何らかのデータや信号が伝送される経路（「パス」と称してもよい。）であり、便宜的に、「データ転送経路」と称してもよい。
【００１７】
パケットデータ及びフレームデータは、それぞれ、「パケット」及び「フレーム」と略称されてよい。したがって、パケットについての「データ転送経路」は、便宜的に、「パケット転送経路」と称してよい。
【００１８】
また、通信ネットワーク技術の一例として、ＳＤＮによる「サービスチェイン（Service Chain）」の提供も注目されている。「サービスチェイン」とは、例示的に、多様なネットワークサービスを提供するために、複数のネットワーク（ＮＷ）機能を通信可能に接続して形成されるデータ転送経路である。
【００１９】
ＮＷ機能とは、例示的に、ネットワークのエレメントである通信機器が有する機能を意味する。「通信機器」は、「ネットワーク機器」と称されてもよいし、「通信ノード」あるいは単に「ノード」と称されてもよい。
【００２０】
ＮＷ機能の一例としては、ＮＡＴ、ＦＷ、プロキシ（proxy）、キャッシュ（cache）、ＷＯＣ、ＤＰＩ、ＩＤＳ、及び、ＳＬＢ等が挙げられる。
【００２１】
「ＮＡＴ」は、「Network Address Translation」の略称であり、「ＦＷ」は、「Fire Wall」の略称であり、「ＷＯＣ」は、「Wide area network Optimization Controller」の略称である。
【００２２】
また、「ＤＰＩ」は、「Deep Packet Inspection」の略称である。「ＩＤＳ」は、侵入検知システム（Intrusion Detection System）の略称であり、「ＳＬＢ」は、「Server Load Balancer」の略称である。
【００２３】
ＳＤＮに加えて、ネットワーク機能仮想化（network functions virtualization, NFV）技術も、通信ネットワーク技術の１つとして注目されている。ＮＦＶでは、ＮＷ機能を、専用のハードウェアで実装するのではなく、ソフトウェア化して仮想マシン（virtual machine, VM）として生成、実行することによって実現する。
【００２４】
管理サーバには、ＳＤＮによるサービスチェインと、ＮＦＶと、を組み合わせた技術を適用してよい。例えば、管理サーバは、ＮＷ機能の動的な配備が可能なＮＦＶを利用してＳＤＮのサービスチェインを構築してよい。
【００２５】
図１に、ＮＦＶを利用したサービスチェイン構築の一例を模式的に示す。図１には、クラウド基盤１００に、３つのＮＷ機能Ｎ１〜Ｎ３が、管理サーバ１１によって、ＶＭとして配備された例を模式的に示している。
【００２６】
また、図１の例では、第１のネットワーク（ＮＷ）＃１に属する送信元端末Ａから送信されたデータが、各ＮＷ機能Ｎ１〜Ｎ３を経由して、第２のネットワーク（ＮＷ）＃２に属する宛先端末Ｚへ転送される。
【００２７】
なお、送信元端末Ａ及び宛先端末Ｚは、いずれもエンドノードの一例であり、それぞれ、「送信元ノードＡ」及び「宛先ノードＺ」と称してもよい。ネットワーク＃１及び＃２は、例示的に、異なる拠点に配備されたネットワークであってよく、例えば、ローカルエリアネットワーク（ＬＡＮ）等であってよい。
【００２８】
クラウド基盤１００に配備された３つのＮＷ機能Ｎ１〜Ｎ３は、例示的に、それぞれ、ＦＷ、ウェブキャッシュ、及び、ウェブプロキシである。
【００２９】
ＦＷは、ネットワークを流れるデータを監視して、例えば、特定のアドレス情報を有するパケットの通過を遮断し、また、特定のアドレス情報を有するパケットを通過させる機能の一例である。
【００３０】
ウェブプロキシは、例示的に、送信元ノードＡに代わってウェブサーバ（図示省略）に対するアクセスを行なう機能の一例である。
【００３１】
ウェブキャッシュは、例示的に、ウェブプロキシによってアクセスされたウェブデータをキャッシュする機能の一例である。例えば、送信元ノードＡから同じウェブデータに対する再度のアクセスがあった場合、ウェブキャッシュは、キャッシュしたウェブデータを送信元ノードＡ宛に送信する。
【００３２】
ここで、ＮＦＶを利用したサービスチェインの構築には、以下に例示する３つの処理Ｓ１〜Ｓ３が含まれてよい。
【００３３】
（処理Ｓ１）管理サーバ１１は、ネットワーク管理者（便宜的に「ユーザ」又は「オペレータ」と称してもよい。）によって入力された、サービスチェインの作成要求に応じて、クラウド基盤１００に、１又は複数のＮＷ機能ＮｘをＶＭとして配備し起動する。サービスチェインの作成要求は、「サービスチェイン要求」と略称してもよい。なお、「Ｎｘ」の「ｘ」は、１以上の整数を表す。
【００３４】
（処理Ｓ２）管理サーバ１１は、ＶＭとして配備したＮＷ機能Ｎｘにアドレス情報を割り当てて、サービスチェインを成すデータ転送経路を設定する。データ転送経路の設定には、例示的に、管理サーバ１１において、経路設定対象のＮＷ機能Ｎｘに設定する経路情報を生成すること、及び、生成した経路情報を経路設定対象のＮＷ機能Ｎｘに設定すること、が含まれてよい。
【００３５】
（処理Ｓ３）サービスチェインにおけるノードは、ＴＣＰを終端するＮＷ機能Ｎｘの有無や、データのアドレス情報を変換するＮＷ機能Ｎｘの有無に応じて、宛先ノード宛、あるいは、中継ノードに相当するＮＷ機能Ｎｘ宛に、データを送信する。「ＴＣＰ」は、「Transmission Control Protocol」の略称である。図１の例では、サービスチェインに、ＴＣＰを終端するウェブキャッシュ（アドレスＰ）が存在するので、送信元ノードＡは、アドレスＰ宛にデータを送信してよい。
【００３６】
アドレス情報は、例示的に、データの送信元を示す送信元アドレスと、データの宛先を示す宛先アドレスと、の一方又は双方を含む概念である。アドレス情報は、例示的に、ＩＰ（Internet Protocol）アドレスであってよいが、その他の通信プロトコルで用いられるアドレスであってもよい。
【００３７】
サービスチェインに、アドレス情報を変更（「変換」と称してもよい。）するＮＷ機能Ｎｘが存在することがある。例えば、データの送信元アドレス及び宛先アドレスの一方又は双方を変換するＮＷ機能Ｎｘが配備されることがある。
【００３８】
送信元アドレスを変換するＮＷ機能Ｎｘの一例としては、透過プロキシ、ＳＮＡＴ、及び、ＳＮＡＰＴ、非透過プロキシ、非透過キャッシュ等が挙げられる。「ＳＮＡＴ」は、「Source based NAT」の略称であり、「ＳＮＡＰＴ」は、「Source based Network Address Port Translation」の略称である。
【００３９】
宛先アドレスを変換するＮＷ機能Ｎｘの一例としては、ＤＮＡＴ、非透過プロキシ、及び、非透過キャッシュ等が挙げられる。「ＤＮＡＴ」は、「Destination based Network Address Translation」の略称である。
【００４０】
したがって、非透過プロキシ、及び、非透過キャッシュは、送信元アドレス及び宛先アドレスの双方を変換するＮＷ機能Ｎｘの一例である。
【００４１】
管理サーバ１１は、多様な処理を行なうＮＷ機能Ｎｘをアドレス情報の変換形態によって分類し、その分類に基づいて、ＮＷ機能Ｎｘに対して設定する経路情報を生成してよい。
【００４２】
例示的に、管理サーバ１１は、以下の手順により、経路設定対象の経路に存在するＮＷ機能Ｎｘや中継ノードに設定する経路情報を生成してよい。
【００４３】
管理サーバ１１は、送信元ノードＡから宛先ノードＺに至るまでの、ＮＷ機能Ｎｘ又は中継ノードを含む経路を探索する。経路探索は、ネットワークのトポロジ情報に基づいて実施されてよい。経路探索には、ダイクストラ法等の経路探索方法が適用されてよい。
【００４４】
そして、管理サーバ１１は、経路探索によって探索された経路に存在するＮＷ機能Ｎｘを、データのアドレス変換形態によって、例えば以下の４つのタイプに分類してよい。
【００４５】
Type １：送信元アドレス及び宛先アドレスの双方を変更しない（別言すると、透過する）ＮＷ機能
Type ２：送信元アドレスを変更し、宛先アドレスは変更しないＮＷ機能
Type ３：送信元アドレスは変更せず、宛先アドレスを変更するＮＷ機能
Type ４：送信元アドレス及び宛先アドレスの双方を変更するＮＷ機能
【００４６】
Type １のＮＷ機能Ｎｘの一例は、ＦＷ、ＤＰＩ、ＩＤＳ等である。例えば図２に示すように、ノードＡとノードＺとの間の経路にルータＲ１、ＦＷ、及び、ルータＲ２が存在すると仮定する。
【００４７】
ルータＲ１及びＲ２は、いずれも中継ノードの一例である。ルータ及びＦＷは、ノードＡとノードＺとの間の経路を伝送されるデータの送信元アドレス及び宛先アドレスのいずれも変更しない。したがって、中継ノードの一例であるルータＲ１及びＲ２は、Type 1のＮＷ機能Ｎｘに分類されてよい。
【００４８】
そのため、管理サーバ１は、ノードＡからノードＺへの方向の経路設定において、ノードＡのアドレスを送信元アドレスとし、ノードＺのアドレスを宛先アドレスとした、経路情報を、ルータＲ１及びＲ２、並びに、ＦＷに設定してよい。
【００４９】
また、管理サーバ１１は、ノードＺからノードＡへの逆方向の経路設定において、ノードＺのアドレスを送信元アドレスとし、ノードＡのアドレスを宛先アドレスとした、経路情報を、ルータＲ１及びＲ２、並びに、ＦＷに設定してよい。
【００５０】
Type ２のＮＷ機能Ｎｘの一例は、透過プロキシ、ＳＮＡＴ、ＳＮＡＴ、ＳＮＡＰＴ等である。例えば図３に示すように、ノードＡとノードＺとの間の経路にルータＲ１、ＳＮＡＴ、及び、ルータＲ２が存在すると仮定する。
【００５１】
ルータＲ１及びＲ２は、ノードＡとノードＺとの間の経路を伝送されるデータの送信元アドレス及び宛先アドレスのいずれも変更しないが、ＳＮＡＴは、当該データの宛先アドレスは変更しないが送信元アドレスを変更する。
【００５２】
そのため、管理サーバ１１は、ノードＺとＳＮＡＴとの間の区間の経路設定と、ＳＮＡＴとノードＡとの間の区間の経路設定と、を個別的に実施してよい。
【００５３】
例えば、管理サーバ１１は、アドレス変更前にデータが通過するルータＲ２に対しては、変更前の送信元アドレスに基づく経路設定を行ない、アドレス変更後にデータが通過するルータＲ１に対しては、変更後の送信元アドレスに基づく経路設定を行なってよい。
【００５４】
Type ３のＮＷ機能Ｎｘの一例は、ＤＮＡＴである。例えば図４に示すように、ノードＡとノードＺとの間の経路にルータＲ１、ＤＮＡＴ、及び、ルータＲ２が存在すると仮定する。
【００５５】
ルータＲ１及びＲ２は、ノードＡとノードＺとの間の経路を伝送されるデータの送信元アドレス及び宛先アドレスのいずれも変更しないが、ＤＮＡＴは、当該データの送信元アドレスは変更しないが宛先アドレスを変更する。
【００５６】
そのため、管理サーバ１１は、ノードＡとＤＮＡＴとの間の区間の経路設定と、ＤＮＡＴとノードＺとの間の区間の経路設定と、を個別的に実施してよい。
【００５７】
例えば、管理サーバ１１は、アドレス変更前にデータが通過するルータＲ１に対しては、変更前の宛先アドレスに基づく経路設定を行ない、アドレス変更後にデータが通過するルータＲ２に対しては、変更後の宛先アドレスに基づく経路設定を行なってよい。
【００５８】
Type 4のＮＷ機能Ｎｘの一例は、非透過プロキシや、非透過キャッシュである。例えば図５に示すように、ノードＡとノードＺとの間の経路にルータＲ１、非透過プロキシ、及び、ルータＲ２が介在すると仮定する。
【００５９】
ルータＲ１及びＲ２は、ノードＡとノードＺとの間の経路を伝送されるデータの送信元アドレス及び宛先アドレスのいずれも変更しないが、非透過プロキシは、当該データの送信元アドレス及び宛先アドレスの双方を変更する。
【００６０】
そのため、管理サーバ１１は、ノードＡとＤＮＡＴとの間の区間の経路設定と、ＤＮＡＴとノードＺとの間の区間の経路設定と、を個別的に実施してよい。
【００６１】
例えば、管理サーバ１１は、ノードＡからノードＺへ向かう方向の経路設定において、アドレス変更前にデータが通過するルータＲ１に対しては、変更前の送信元アドレス及び宛先アドレスに基づく経路設定を行なってよい。また、アドレス変更後にデータが通過するルータＲ２に対しては、管理サーバ１１は、変更後の送信元アドレス及び宛先アドレスに基づく経路設定を行なってよい。
【００６２】
ノードＺからノードＡへ向かう方向の経路設定においても、管理サーバ１１は、例えば、アドレス変更前にデータが通過するルータＲ２に対しては、変更前の送信元アドレス及び宛先アドレスに基づく経路設定を行なってよい。また、アドレス変更後にデータが通過するルータＲ１に対しては、管理サーバ１１は、変更後の送信元アドレス及び宛先アドレスに基づく経路設定を行なってよい。
【００６３】
経路設定のための経路情報は、例えば、管理サーバ１１において、以下のような手順で生成されてよい。
【００６４】
管理サーバ１１は、経路情報を生成する対象のＮＷ機能Ｎｘ又は中継ノードから、経路設定対象の経路を、宛先ノードへ向かう方向（便宜的に「下流」と称してよい。）へ順に辿り、「宛先アドレス」を変更するＮＷ機能Ｎｘ、及び、宛先ノードを探索する。宛先アドレスを変更するＮＷ機能Ｎｘは、Type 3及びType 4のＮＷ機能Ｎｘである。
【００６５】
下流への探索の結果、管理サーバ１１は、最初に探索されたType 3のＮＷ機能、Type 4のＮＷ機能、及び、宛先ノードのいずれかに割り当てられているアドレスを、対象のＮＷ機能Ｎｘ又は中継ノードに設定する経路情報の「宛先アドレス」に設定する。
【００６６】
また、管理サーバ１１は、経路情報を生成する対象のＮＷ機能又は中継ノードから、経路設定対象の経路を、送信元ノードに向かう方向（便宜的に「上流」と称してよい。）へ順に辿り、「送信元アドレス」を変更するＮＷ機能Ｎｘ、及び、送信元ノードを探索する。送信元アドレスを変更するＮＷ機能Ｎｘは、Type 2及びType 4のＮＷ機能である。
【００６７】
上流への探索の結果、管理サーバ１１は、最初に探索されたType 2のＮＷ機能、Type 4のＮＷ機能、及び、送信元ノードのいずれかに割り当てられているアドレスを、対象のＮＷ機能Ｎｘ又は中継ノードに設定する経路情報の「送信元アドレス」に設定する。
【００６８】
そして、管理サーバ１１は、上述のごとく下流及び上流への探索によって特定した宛先アドレス及び送信元アドレスと、経路設定対象の経路と、を基に、経路情報を生成する。
【００６９】
経路情報には、例示的に、宛先アドレスと送信元アドレスとのペアに対するネクストホップアドレスが含まれてよい。ネクストホップアドレスは、データの次の転送先（ネクストホップ）を示す情報の一例である。
【００７０】
ネクストホップアドレスに加えて、データの出力インタフェースに割り当てられているアドレスが経路計算において計算されて、経路情報に含められてもよい。例えば、ＮＷ機能や中継ノードに、複数の経路に応じて複数の出力インタフェースが備えられる場合、出力インタフェースのアドレスによってデータ転送経路が識別されてよい。
【００７１】
図６に、経路設定対象の経路、及び、当該経路に存在するＮＷ機能Ｎｘ及び中継ノードに設定される経路情報の一例を示す。なお、ＮＷ機能及び中継ノードは、便宜的に、「ノード」と総称してもよい。
【００７２】
図６の例では、送信元ノードＡから宛先ノードＺに至る経路に、７つのノードＮ１〜Ｎ７の一例として、ルータＲ１、Type 2のＮＷ機能、ルータＲ２、Type 3のＮＷ機能、ルータＲ３、Type 4のＮＷ機能、及び、ルータＲ４が存在している。ルータＲ１〜Ｒ４は、いずれも、中継ノードの一例であり、Type 1のＮＷ機能に相当すると捉えてよい。
【００７３】
例示的に、ノードＮ１〜Ｎ７には、それぞれ、アドレスＰ１〜Ｐ７が割り当てられていると仮定する。また、送信元ノードＡには、アドレスＡが割り当てられ、宛先ノードＺには、アドレスＺが割り当てられていると仮定する。
【００７４】
この場合、送信元ノードＡから宛先ノードＺへの下流への通信に関して、ノードＮ１（ルータＲ１）には、送信元アドレス＝Ａ、宛先アドレス＝Ｐ４、及び、ネクストホップアドレス＝Ｐ２の経路情報が設定される。
【００７５】
また、ノードＮ２（Type 2のＮＷ機能）には、送信元アドレス＝Ｐ２、宛先アドレス＝Ｐ４、及び、ネクストホップアドレス＝Ｐ３の経路情報が設定される。ノードＮ３（ルータＲ２）の経路情報には、送信元アドレス＝Ｐ２、宛先アドレス＝Ｐ４、及び、ネクストホップアドレス＝Ｐ４が設定される。
【００７６】
ノードＮ４（Type 3のＮＷ機能）には、送信元アドレス＝Ｐ２、宛先アドレス＝Ｐ６、及び、ネクストホップアドレス＝Ｐ５の経路情報が設定される。ノードＮ５（ルータＲ３）には、送信元アドレス＝Ｐ２、宛先アドレスＰ６、及び、ネクストホップアドレス＝Ｐ６の経路情報が設定される。
【００７７】
ノードＮ６（Type 4のＮＷ機能）には、送信元アドレス＝Ｐ６、宛先アドレス＝Ｚ、及び、ネクストホップアドレス＝Ｐ７の経路情報が設定される。ノードＮ７（ルータＲ４）には、送信元アドレス＝Ｐ６、宛先アドレス＝Ｚ、及び、ネクストホップアドレス＝Ｚの経路情報が設定される。
【００７８】
ここで、ノードＮ１〜Ｎ７に設定する各経路情報は、管理サーバ１１において、以下のような手順で生成されてよい。
【００７９】
例えば、管理サーバ１１は、経路情報を生成する対象のノードＮｘから、経路設定対象の経路を、宛先ノードＺへ向かう下流方向へ順に辿り、宛先アドレスを変更するType 3及びType 4のノードＮｘ、並びに、宛先ノードＺを探索する。
【００８０】
例示的に、管理サーバ１１は、経路情報の生成対象をノードＮ１（ルータＲ１）に選択すると、選択したノードＮ１の下流に隣接するノードＮ２を選択する。
【００８１】
ノードＮ２は、Type 2のＮＷ機能であり、宛先アドレスを変更するType 3及びType 4のノードでも、宛先ノードＺでもないため、管理サーバ１１は、ノードＮ２の下流に隣接するノードＮ３（ルータＲ２）を選択する。
【００８２】
ルータＲ２は、宛先アドレスを変更するType 3及びType 4のノードでも、宛先ノードＺでもないため、管理サーバ１１は、更に、ルータＲ２の下流に隣接するノードＮ４を選択する。
【００８３】
ノードＮ４は、宛先アドレスを変更するType 3のＮＷ機能であるため、管理サーバ１１は、当該ノードＮ４のアドレス「Ｐ４」を宛先アドレスとした、ノードＮ１（ルータＲ１）の経路情報を生成する。したがって、ノードＮ１（ルータＲ１）に設定する経路情報の「宛先アドレス」は「Ｐ４」である。
【００８４】
また、管理サーバ１１は、経路情報の生成対象にノードＮ２を選択した場合、ノードＮ２の下流に隣接するノードＮ３（ルータＲ２）を選択する。
【００８５】
ルータＲ２は、宛先アドレスを変更するType 3及びType 4のＮＷ機能でも、宛先ノードＺでもないため、管理サーバ１１は、更に、ルータＲ２の下流に隣接するノードＮ４を選択する。
【００８６】
ノードＮ４は、宛先アドレスを変更するType 3のＮＷ機能であるため、管理サーバ１１は、当該ノードＮ４のアドレス「Ｐ４」を宛先アドレスとした、ノードＮ２の経路情報を生成する。したがって、ノードＮ２に設定する経路情報の「宛先アドレス」は「Ｐ４」である。
【００８７】
更に、管理サーバ１１は、経路情報の生成対象にノードＮ３（ルータＲ２）を選択した場合、ルータＲ２の下流に隣接するノードＮ４を選択する。
【００８８】
ノードＮ４は、宛先アドレスを変更するType 3のＮＷ機能であるため、管理サーバ１１は、当該ノードＮ４のアドレス「Ｐ４」を宛先アドレスとした、ノードＮ３（ルータＲ２）の経路情報を生成する。したがって、ノードＮ３に設定する経路情報の「宛先アドレス」は「Ｐ４」である。
【００８９】
また、管理サーバ１１は、経路情報の生成対象にノードＮ４を選択した場合、当該ノードＮ４の下流に隣接するノードＮ５（ルータＲ３）を選択する。
【００９０】
ルータＲ３は、宛先アドレスを変更するType 3及びType 4のＮＷ機能でも、宛先ノードＺでもないため、管理サーバ１１は、更に、ルータＲ３の下流に隣接するノードＮ６を選択する。
【００９１】
ノードＮ６は、宛先アドレスを変更するType 4のＮＷ機能であるため、管理サーバ１１は、当該ノードＮ６のアドレス「Ｐ６」を宛先アドレスとした、ノードＮ４の経路情報を生成する。したがって、ノードＮ４に設定する経路情報の「宛先アドレス」は「Ｐ６」である。
【００９２】
更に、管理サーバ１１は、経路情報の生成対象にノードＮ５（ルータＲ３）を選択した場合、ルータＲ３の下流に隣接するノードＮ６を選択する。
【００９３】
ノードＮ６は、宛先アドレスを変更するType 4のＮＷ機能であるため、管理サーバ１１は、当該ノードＮ６のアドレス「Ｐ６」を宛先アドレスとした、ノードＮ５の経路情報を生成する。したがって、ルータＲ３に設定する経路情報の「宛先アドレス」は「Ｐ６」である。
【００９４】
また、管理サーバ１１は、経路情報の生成対象にノードＮ６を選択した場合、当該ノードＮ６の下流に隣接するノードＮ７（ルータＲ４）を選択する。
【００９５】
ルータＲ４は、宛先アドレスを変更するType 3及びType 4のＮＷ機能でも、宛先ノードＺでもないため、管理サーバ１１は、更に、ルータＲ４の下流に隣接する宛先ノードＺを選択する。
【００９６】
宛先ノードＺを選択したため、管理サーバ１１は、宛先ノードＺのアドレス「Ｚ」を宛先アドレスとした、ノードＮ６の経路情報を生成する。したがって、ノードＮ６に設定する経路情報の「宛先アドレス」は「Ｚ」である。
【００９７】
更に、管理サーバ１１は、経路情報の生成対象にノードＮ７（ルータＲ４）を選択した場合、当該ノードＮ７の下流に隣接する宛先ノードＺを選択する。
【００９８】
宛先ノードＺを選択したため、管理サーバ１１は、宛先ノードＺのアドレス「Ｚ」を宛先アドレスとした、ノードＮ７の経路情報を生成する。したがって、ルータＲ４に設定する経路情報の「宛先アドレス」は「Ｚ」である。
【００９９】
また、管理サーバ１１は、例えば、経路情報を生成する対象のノードＮｘから、経路設定対象の経路を、送信元ノードＡへ向かう上流方向へ順に辿り、送信元アドレスを変更するType 2及びType 4のノード、並びに、送信元ノードＡを探索する。
【０１００】
図６の例において、管理サーバ１１は、経路情報の生成対象にノードＮ７（ルータＲ４）を選択した場合、ルータＲ４の上流に隣接するノードＮ６を選択する。
【０１０１】
ノードＮ６は、送信元アドレスを変更するType 4のＮＷ機能であるため、管理サーバ１１は、ノードＮ６のアドレス「Ｐ６」を送信元アドレスとした、ノードＮ７の経路情報を生成する。したがって、ルータＲ４に設定する経路情報の「送信元アドレス」は「Ｐ６」である。
【０１０２】
また、管理サーバ１１は、経路情報の生成対象にノードＮ６を選択すると、ノードＮ６は、送信元アドレスを変更するType 4のＮＷ機能であるため、当該ノードＮ６のアドレス「Ｐ６」を送信元アドレスとした経路情報を生成する。したがって、ノードＮ６に設定する経路情報の「送信元アドレス」は「Ｐ６」である。
【０１０３】
更に、管理サーバ１１は、経路情報の生成対象にノードＮ５（ルータＲ３）を選択した場合、ルータＲ３の上流に隣接するノードＮ４を選択する。
【０１０４】
ノードＮ４は、Type 3のＮＷ機能であり、送信元アドレスを変更するType 2及びType 4のＮＷ機能でも、送信元ノードＡでもないため、管理サーバ１１は、更に、ノードＮ４の上流に隣接するノードＮ３（ルータＲ２）を選択する。
【０１０５】
ルータＲ２は、送信元アドレスを変更するType 2及びType 4のＮＷ機能でも、送信元ノードＡでもないため、管理サーバ１１は、更に、ルータＲ２の上流に隣接するノードＮ２を選択する。
【０１０６】
ノードＮ２は、送信元アドレスを変更するType 2のＮＷ機能であるため、管理サーバ１１は、ノードＮ２のアドレス「Ｐ２」を送信元アドレスとした、ノードＮ５の経路情報を生成する。したがって、ルータＲ３に設定する経路情報の「送信元アドレス」は「Ｐ２」である。
【０１０７】
また、管理サーバ１１は、経路情報の生成対象にノードＮ４を選択した場合、ノードＮ４の上流に隣接するノードＮ３（ルータＲ２）を選択する。
【０１０８】
ルータＲ２は、送信元アドレスを変更するType 2及びType 4のＮＷ機能でも、送信元ノードＡでもないため、管理サーバ１１は、更に、ルータＲ２の上流に隣接するノードＮ２を選択する。
【０１０９】
ノードＮ２は、送信元アドレスを変更するType 2のＮＷ機能であるため、管理サーバ１１は、ノードＮ２のアドレス「Ｐ２」を送信元アドレスとした、ノードＮ４の経路情報を生成する。したがって、ノードＮ４に設定する経路情報の「送信元アドレス」は「Ｐ２」である。
【０１１０】
更に、管理サーバ１１は、経路情報の生成対象にノードＮ３（ルータＲ２）を選択した場合、ルータＲ２の上流に隣接するノードＮ２のＮＷ機能を選択する。
【０１１１】
ノードＮ２は、送信元アドレスを変更するType 2のＮＷ機能であるため、管理サーバ１１は、ノードＮ２のＮＷ機能のアドレス「Ｐ２」を送信元アドレスとした、ノードＮ３のＮＷ機能の経路情報を生成する。したがって、ルータＲ２に設定する経路情報の「送信元アドレス」は「Ｐ２」である。
【０１１２】
また、管理サーバ１１は、経路情報の生成対象にノードＮ２を選択すると、ノードＮ２は、送信元アドレスを変更するType 2のＮＷ機能であるため、ノードＮ２のアドレス「Ｐ２」を送信元アドレスとした経路情報を生成する。したがって、ノードＮ２に設定する経路情報の「送信元アドレス」は「Ｐ２」である。
【０１１３】
更に、管理サーバ１１は、経路情報の生成対象にノードＮ１（ルータＲ１）を選択した場合、ルータＲ１は、送信元アドレスを変更するType 2及びType 4のＮＷ機能でも、送信元ノードＡでもないため、ルータＲ１の上流に隣接する送信元ノードＡを選択する。
【０１１４】
送信元ノードＡを選択したため、管理サーバ１１は、送信元ノードＡのアドレス「Ａ」を送信元アドレスとした、ノードＮ１の経路情報を生成する。したがって、ルータＲ１に設定する経路情報の「送信元アドレス」は「Ａ」である。
【０１１５】
以上のようにして、管理サーバ１１は、経路設定対象の経路の下流方向へ宛先アドレス変換するノードを探索し、また、上流方向へ送信元アドレスを変換するノードを探索することによって、当該経路に位置するノードに設定する経路情報を生成できる。
【０１１６】
以下、上述した経路情報の生成方法を、便宜的に、「ノード探索経路情報生成方法」と称することがある。なお、ノード探索経路情報生成方法において、上流方向へのノード探索と下流方向へのノード探索とは、逐次的に実施されてもよいし、パラレルに実施されてもよい。
【０１１７】
ところで、サービスチェインに、ＶＰＮ装置のような、トンネルを生成又は終端するＮＷ機能が含まれることがある。「トンネル」は、仮想的な通信路を表す。
【０１１８】
トンネルを生成又は終端するＮＷ機能は、「トンネル機能」又は「トンネルノード」と総称してよい。また、以下において、便宜的に、トンネルを生成するＮＷ機能を、「トンネル生成機能」あるいは「トンネル機能（生成）」と表し、トンネルを終端するＮＷ機能を、「トンネル終端機能」あるいは「トンネル機能（終端）」と表すことがある。
【０１１９】
トンネル生成機能は、トンネル区間の始点に相当し、受信したデータをカプセル化して仮想的な通信路へ転送してよい。トンネル終端機能は、当該トンネル区間の終点に相当し、トンネルから受信したデータをデカプセル化して宛先に応じた転送先に転送してよい。
【０１２０】
サービスチェインにトンネルを生成又は終端するＮＷ機能が存在すると、管理サーバ１１は、トンネル機能によって形成されるトンネル区間に対して適切な経路設定を実施できないことがある。
【０１２１】
例えば、トンネルを生成するトンネル機能Ｎｘには、データをカプセル化する前に参照する経路表＃１と、データをカプセル化した後に参照する経路表＃２と、の２つの経路表が設定されてよい。経路表＃２は、トンネル区間についての経路表＃２に相当する。
【０１２２】
経路表＃１における経路情報には、受信したデータの宛先に対し、経路表＃２を参照することを示す情報が設定されてよい。経路表＃２における経路情報には、受信したデータをカプセル化した後のデータの宛先をトンネル終端機能とした経路情報が含まれてよい。
【０１２３】
２つの経路表＃１及び＃２により、トンネル機能（生成）Ｎｘは、データをトンネルに転送し、トンネル機能（終端）Ｎｘ宛にパケットを転送することができる。
【０１２４】
したがって、管理サーバ１１は、トンネル機能（生成）Ｎｘに経路情報を設定する場合、ＮＷ機能Ｎｘが「トンネル機能」であることを識別し、経路表＃１及び＃２を生成してトンネル機能（生成）Ｎｘに設定できればよい。
【０１２５】
しかし、既述のType 1〜Type 4のＮＷ機能Ｎｘの分類は、データの送信元アドレスと宛先アドレスとに着目した分類であり、ＮＷ機能Ｎｘが「トンネル機能」であるか否かは識別できない。そのため、トンネル機能Ｎｘに対して適切な経路情報を設定できない。
【０１２６】
また、トンネル区間内に存在するＮＷ機能Ｎｘは、トンネル機能（終端）を宛先としてデータを転送する。そのため、トンネル区間内に存在するＮＷ機能Ｎｘには、トンネル機能（終端）を宛先として計算された経路情報が設定されればよい。
【０１２７】
しかし、上述の通りトンネル区間を識別あるいは特定できないと、トンネル区間内に存在するＮＷ機能も識別できないため、トンネル区間内に存在するＮＷ機能に対しても適切な経路情報を設定できない。
【０１２８】
図７に、サービスチェインにトンネル機能が含まれる場合に、適切な経路情報が設定できない例を模式的に示す。図７の例では、送信元ノードＡから宛先ノードＺに至る経路に、ノードＮ１〜Ｎ５の一例として、それぞれ、ルータＲ１、ＶＰＮ装置、ルータＲ２、ＶＰＮ装置、及び、ルータＲ３が存在している。例示的に、ノードＮ１〜Ｎ５には、それぞれ、アドレスＰ１〜Ｐ５が割り当てられている。
【０１２９】
ノードＮ２及びＮ４のＶＰＮ装置は、いずれもType1のＮＷ機能として定義されてよい。なお、ノードＮ２及びＮ４のＶＰＮ装置を、便宜的に、それぞれＶＰＮノードＮ２及びＶＰＮノードＮ４と表記する。
【０１３０】
ＶＰＮノードＮ２とＶＰＮノードＮ４との間にトンネル機能によってトンネルが形成される。送信元ノードＡから宛先ノードＺへの方向の通信に着目すると、ＶＰＮノードＮ２は、トンネル機能（生成）Ｎ２に相当し、ＶＰＮノードＮ４は、トンネル機能（終端）Ｎ４に相当する。
【０１３１】
例えば、送信元ノードＡから宛先ノードＺ宛に送信されたデータ（送信元アドレスＡ；宛先アドレスＺ）は、図７の下部に例示するように、ＶＰＮノードＮ２において、ＶＰＮノードＮ４宛のデータ（送信元アドレスＰ２；宛先アドレスＰ４）にカプセル化される。カプセル化されたデータは、トンネルへ転送される。
【０１３２】
トンネル終端機能であるＶＰＮノードＮ４では、トンネルを通じて受信したデータをデカプセル化することで、宛先ノードＺ宛のデータ（送信元アドレスＡ；宛先アドレスＺ）を抽出して下流（例えば、ルータＲ２）へ転送する。
【０１３３】
ここで、図７の例において、管理サーバ１１が、既述の「ノード探索経路情報生成方法」に従って、トンネル生成機能であるＶＰＮノードＮ１に設定する経路情報を生成すると仮定する。
【０１３４】
この場合、ＶＰＮノードＮ１は、Type 1のＮＷ機能に分類されるから、管理サーバ１１は、宛先ノードＺのアドレスＺを宛先アドレスとし、送信元ノードＡのアドレスＡを送信元アドレスとした、経路情報を生成する。また、管理サーバ１１は、宛先アドレスＺと送信元アドレスＡとのペアに対し、ネクストホップアドレスが、ルータＲ３のアドレスＰ３である経路情報を生成する。
【０１３５】
しかし、当該経路情報は誤りであり、トンネル生成をするＶＰＮノードＮ１のための適切な経路情報は、図８に例示するように、以下の２つの経路表＃１及び＃２によって示される経路情報である。
【０１３６】
経路表＃１：宛先ノードＺのアドレスＺを宛先アドレスとし、送信元ノードＡのアドレスＡを送信元アドレスとした、宛先アドレスＺと送信元アドレスＡとのペアに対し、経路表＃２を参照することを示す経路情報
【０１３７】
経路表＃２：宛先アドレスをＶＰＮノードＮ４のアドレスＰ４として、送信元アドレスをＶＰＮノードＮ２のアドレスＰ２とした、宛先アドレスＰ４と送信元アドレスＰ２とのペアに対し、ネクストホップアドレスがルータＲ３のアドレスＰ３である経路情報
【０１３８】
また、トンネル区間内のルータＲ２に対しては、既述の「ノード探索経路情報生成方法」に従うと、宛先アドレスＺと送信元アドレスＡとのペアに対し、ネクストホップアドレスがＶＰＮノードＮ４のアドレスＰ４である経路情報が生成される。
【０１３９】
しかし、当該経路情報は誤りであり、ルータＲ２のための適切な経路情報は、トンネルを終端するＶＰＮノードＮ４のアドレスＰ４を宛先アドレスとし、トンネルを生成するＶＰＮノードＮ２のアドレスＰ２を送信元アドレスとした経路情報である（図９参照）。また、当該宛先アドレスＰ４と送信元アドレスＰ２とのペアに対し、ネクストホップアドレスは、ＶＰＮノードＮ４のアドレスＰ４である。
【０１４０】
経路設定対象の経路に、トンネル機能が存在しても、トンネル機能及びトンネル区間内のノードに対して適切な経路情報を設定できるようにするため、管理サーバ１１は、図１０に例示するような、階層化された経路の論理ビューを生成する。
【０１４１】
階層化された経路の論理ビューは、例示的に、データ転送経路を、トンネル機能の有無に応じて論理的に階層化（「分解」と称してもよい。）した経路の情報の一例である。管理サーバ１１は、階層化された論理的な経路の情報を基に、データ転送経路に存在するトンネル区間を識別あるいは特定できる。
【０１４２】
図１０の例では、ネットワークシステム（「通信システム」と称してもよい。）１において、送信元ノードＡから宛先ノードＺに至る経路に、例示的に、１３台のノードＮ１〜Ｎ１３が存在する。なお、複数のノードＮｘの一部又は全部は、ＶＭによって実現されてよい。
【０１４３】
ノードＮ１、Ｎ３、Ｎ５、Ｎ７、Ｎ９、Ｎ１１及びＮ１３は、例示的に、トンネル（ＴＮＬ）機能ではないＮＷ機能又は中継ノード（例えば、ルータ）である。
【０１４４】
ノードＮ２は、経路設定対象の経路において、第１のトンネル＃１を生成するトンネル機能であり、ノードＮ８は、当該トンネル＃１を終端するトンネル機能である。
【０１４５】
ノードＮ４は、トンネル＃１の区間において、第２のトンネル＃２を生成するトンネル機能である。ノードＮ６は、当該トンネル＃２を終端するトンネル機能である。したがって、トンネル＃１の区間に別のトンネル＃２が階層的に形成される。
【０１４６】
また、ノードＮ１０は、経路設定対象の経路において、第３のトンネル＃３を生成するトンネル機能であり、ノードＮ１２は、当該トンネル＃３を終端するトンネル機能である。
【０１４７】
以上のようなノード配置において、送信元ノードＡから宛先ノードＺに至る経路は、例示的に、以下の４つの論理的な経路に階層化できる。
【０１４８】
例えば、管理サーバ１１は、最上位階層に相当する階層＃０の経路＃１に、ノードＮ１、トンネル機能（生成）Ｎ２、トンネル機能（終端）Ｎ８、ノードＮ９、トンネル機能（生成）Ｎ１０、トンネル機能（終端）Ｎ１２、及び、ノードＮ１３を所属させる。
【０１４９】
また、管理サーバ１１は、階層＃０の下位階層である階層＃１の第１経路＃１に、トンネル機能（生成）Ｎ２、ノードＮ３、トンネル機能（生成）Ｎ４、及び、トンネル機能（終端）Ｎ６、ノードＮ７、及び、トンネル機能（終端）Ｎ８を所属させる。
【０１５０】
更に、管理サーバ１１は、階層＃１の第２経路＃２に、トンネル機能（生成）Ｎ１０、ノードＮ１１、及び、トンネル機能（終端）Ｎ１２を所属させる。
【０１５１】
また、階層＃１の下位階層である階層＃２の経路＃１に、トンネル機能（生成）Ｎ４、ノードＮ５、及び、トンネル機能（終端）Ｎ６を所属させる。
【０１５２】
管理サーバ１１は、階層化された論理的な各経路の別に経路設定を行なうことで、各階層の経路に存在するトンネル機能及びトンネル区間内の中継ノードに対して適切な経路情報を設定できる。例えば、管理サーバ１１は、トンネル＃１の区間内に、別のトンネル＃２の区間が設定されるような経路設定にも対応できる。
【０１５３】
（管理サーバの構成例）
図１１に、管理サーバ１１の機能的な構成例を示す。図１１に示すように、管理サーバ１１は、例示的に、サービスチェイン要求受付部１１１、経路計算部１１２、トンネル機能分類部１１３、階層化論理経路生成部１１４、経路情報生成部１１５、及び、経路情報送信部１１６を備えてよい。また、管理サーバ１１は、トポロジデータベース（ＤＢ）１２１、トンネル機能一覧テーブル１２２、及び、トンネル機能設定情報ＤＢ１２３を備えてよい。
【０１５４】
サービスチェイン要求受付部１１１は、例示的に、ネットワーク管理者やネットワークを利用するユーザからのサービスチェイン要求を受け付ける。サービスチェイン要求には、データの転送途中に経由するＮＷ機能を、１つ又は複数指定した情報が含まれてよい。サービスチェイン要求において指定されるＮＷ機能の情報には、ルータであるかＶＰＮ装置であるかといった、ＮＷ機能の種類を識別可能な情報が含まれてよい。サービスチェイン要求受付部１１１は、受け付けたサービスチェイン要求を、経路計算部１１２に与えてよい。
【０１５５】
トポロジＤＢ１２１は、例示的に、中継ノード、及び、ＮＷ機能を実行するＶＭを含むネットワークのトポロジ情報を格納する。トポロジ情報に付随して、あるいは、トポロジ情報の要素として、送信元ノード及び宛先ノードが接続されている場所を示す情報が、トポロジＤＢ１２１に格納されてよい。
【０１５６】
経路計算部１１２は、例示的に、受信したサービスチェイン要求と、トポロジＤＢ１２１に格納されているトポロジ情報と、に基づいて、送信元ノードから宛先ノードまでの、指定されたＮＷ機能を経由した、データ転送経路を算出してよい。
【０１５７】
データ転送経路の算出には、送信元ノードとＮＷ機能との間の経路、ＮＷ機能どうしの間の経路、及び、ＮＷ機能と宛先ノードとの間の経路のそれぞれについての経路計算が含まれてよい。
【０１５８】
算出されたデータ転送経路の情報には、当該データ転送経路に存在するＮＷ機能及び当該ＮＷ機能の配置順序等を示す情報が含まれてよい。なお、以下において、データ転送経路においてノードを探索することは、データ転送経路の情報を検索又は探索することに相当すると捉えてよい。
【０１５９】
トンネル機能一覧テーブル１２２は、トンネル機能（生成）と、トンネル機能（終端）と、非トンネルＮＷ機能と、の一覧が登録されるテーブル形式又はリスト形式のデータ又は情報の一例である。例えば、トンネル機能一覧テーブル１２２には、次表１に示すような情報が登録されてよい。
【０１６０】
【表１】
2017085369.tif 000003
【０１６１】
なお、「ＧＲＥ」は、「Generic Routing Encapsulation」の略称であり、ＶｘＬＡＮは、「Virtual Extensible Local Area Network」の略称である。「ingress」は、トンネル区間の入口（「始点」と称してもよい。）に相当するノードであることを表し、「egress」は、トンネル区間の出口（「終点」と称してもよい。）に相当するノードであることを表す。トンネル機能一覧テーブル１２２に対する情報の登録は、例示的に、ネットワーク管理者によって事前に行なわれてよい。
【０１６２】
トンネル機能分類部１１３は、例示的に、トンネル機能一覧テーブル１２２に基づいて、データ転送経路に存在する各ＮＷ機能を、トンネル機能（生成）、トンネル機能（終端）、及び、トンネル機能ではないＮＷ機能に分類してよい。トンネル機能ではないＮＷ機能は、便宜的に、「非トンネルＮＷ機能」と称してよい。
【０１６３】
このようにＮＷ機能をトンネル機能であるか否かによって分類した情報に基づいて、管理サーバ１１は、データ転送経路におけるトンネル区間を識別あるいは特定することが可能になる。
【０１６４】
なお、トンネル機能一覧テーブル１２２及びトンネル機能一覧テーブル１２２に基づいて分類されたＮＷ機能の情報は、例えば図１２にて後述する記憶部２１０に記憶されてよい。
【０１６５】
階層化論理経路生成部１１４は、例示的に、経路計算部１１２で算出されたデータ転送経路に含まれるＮＷ機能を、トンネル機能分類部１１３による分類結果に基づいて、図１０に例示したような、階層化された論理的な経路の情報を生成する。
【０１６６】
当該情報は、便宜的に、「階層化論理経路情報」と略称してよい。階層化論理経路情報の具体的な生成手順については後述する。階層化論理経路情報に基づいて、データ転送経路におけるトンネル区間を特定することが可能である。したがって、階層化論理経路生成部１１４は、ＮＷ機能の分類情報に基づいてトンネル区間を特定することが可能な特定部の一例である。
【０１６７】
なお、階層化論理経路情報において、トンネル機能は、上位階層の論理的な経路と、下位階層の論理的な経路と、の双方に所属してよい。例示的に、上位階層の論理的な経路についての経路情報が、トンネル機能に設定する第１の経路表＃１の情報に対応し、下位階層の論理的な経路についての経路情報が、当該トンネル機能に設定する第２の経路表＃２の情報に対応する。
【０１６８】
経路情報生成部１１５は、例示的に、階層化論理経路情報に基づいて、階層化された論理的な各経路に存在するＮＷ機能、及び、中継ノードに対して設定する経路情報を生成する。経路情報の生成には、既述の「ノード探索経路情報生成方法」を適用してよい。
【０１６９】
ただし、トンネル機能（生成）に設定する経路情報を生成する際には、当該トンネル機能が、階層化された論理的な経路の始点（別言すると最上流）に位置するか否かによって、以下のように生成する経路情報が変わる。
【０１７０】
例えば、トンネル機能が、階層化された論理的な経路の始点に位置していれば、経路情報生成部１１５は、既述の「ノード探索経路情報生成方法」に従って、経路表＃２に対する経路情報を生成してよい。
【０１７１】
トンネル機能が、階層化された論理的な経路の始点に位置していなければ、経路情報生成部１１５は、経路表＃１に対する経路情報を生成してよい。経路表＃１に対する経路情報には、「ノード探索経路情報生成方法」において特定されたデータの宛先に対し、経路表＃２を参照することを示す情報が含まれてよい。経路表＃２の経路情報には、当該経路表＃２に対応する論理的な経路に属するトンネル機能（終端）を宛先とした経路情報が含まれてよい。
【０１７２】
最上位の階層よりも下位階層の論理的な経路に存在する非トンネルＮＷ機能、及び、中継ノードに対する経路情報を生成する場合、経路情報生成部１１５は、例示的に、当該経路の終点（別言すると最下流）に位置するＮＷ機能を宛先とした経路情報を生成してよい。
【０１７３】
経路情報送信部１１６は、例示的に、経路情報生成部１１５で生成された経路情報を、対応するＮＷ機能や中継ノード宛に送信して設定する。経路情報送信部１１６は、トンネル区間に位置するノードに経路情報を設定する経路情報設定部の一例である。
【０１７４】
トンネル機能設定情報ＤＢ１２３は、例示的に、トンネル機能に対する設定情報（「トンネル設定情報」と略称してよい。）を格納する。トンネル機能に対する設定情報とは、例示的に、当該設定情報を用いてトンネル機能がトンネルを形成するための情報であり、例えば、トンネルの識別子、トンネルの暗号種別、暗号鍵、トンネルを終端する対向トンネル機能のアドレス情報、等である。
【０１７５】
管理サーバ１１が、トンネル機能にアクセスしてトンネルを形成する処理を担当する場合、トンネル機能に対する設定情報がトンネル機能設定情報ＤＢ１２３に保存されてよい。
【０１７６】
経路情報生成部１１５は、当該ＤＢ１２３に保存された設定情報を基に、トンネルを終端する対向トンネル機能のアドレス情報を特定して、経路情報の生成に使用してよい。したがって、管理サーバ１１は、管理サーバ１１の管理ドメイン外に位置する対向トンネル機能宛の経路情報を適切に生成することができる。
【０１７７】
なお、トンネル機能に対する設定情報は、管理サーバ１１が、トンネル機能の動作するＶＭにアクセスすることで取得されてもよいし、管理サーバ１１の起動時等において管理サーバ１１に設定される情報として与えられてもよい。
【０１７８】
これにより、管理サーバ１１が、トンネルを形成する処理を担当しない場合であっても、経路情報生成部１１５は、トンネル機能に対する設定情報を基に、トンネルを終端する対向トンネル機能のアドレス情報を特定して、経路情報の生成に用いることができる。
【０１７９】
（管理サーバのハードウェア構成例）
図１２は、管理サーバ１１のハードウェア構成例を示すブロック図である。管理サーバ１１は、例えば、上述した経路情報の生成及び設定に専用のサーバコンピュータであってもよいし、汎用のコンピュータであってもよい。
【０１８０】
図１２に示すように、管理サーバ１１は、例示的に、プロセッサ２０１、主記憶装置２０２、補助記憶装置２０３、及び、ネットワークインタフェース（ＮＷ−ＩＦ）２０４を備えてよい。
【０１８１】
また、管理サーバ１１は、例示的に、入力インタフェース（ＩＦ）２０５、出力ＩＦ２０６、入出力ＩＦ２０７、及び、ドライブ装置２０８の全部又は一部をオプションとして備えてよい。
【０１８２】
ＣＰＵ２０１、主記憶装置２０２、補助記憶装置２０３、各ＩＦ２０４〜２０７、及び、ドライブ装置２０８は、例示的に、通信バス２０９に接続されて、プロセッサ２０１を介して相互に通信が可能であってよい。
【０１８３】
プロセッサ２０１は、演算能力を備えた演算装置又は演算回路の一例である。複数のプロセッサ２０１が、管理サーバ１１に備えられてもよい。プロセッサ２０１には、ＣＰＵが適用されてもよいし、他の演算装置、例えばＭＰＵ等の集積回路（Integrated Circuit, IC）が適用されてもよい。ＣＰＵは、「Central Processing Unit」の略称であり、ＭＰＵは、「Micro Processing Unit」の略称である。演算能力を備えたプロセッサ２０１は、便宜的に、「コンピュータ」と称してもよい。
【０１８４】
補助記憶装置２０３には、例示的に、ＥＰＲＯＭ（Erasable Programmable Read Only Memory）や、ハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）等の不揮発性メモリが適用されてよい。
【０１８５】
補助記憶装置２０３は、例示的に、オペレーティングシステム（ＯＳ）や、様々なプログラム、プログラムの実行に際してプロセッサ２０１が使用するデータや情報を記憶してよい。
【０１８６】
主記憶装置２０２は、例示的に、プロセッサ２０１に、補助記憶装置２０３に記憶されているプログラムやデータをロードする記憶領域（「作業領域」と称してもよい。）を提供したり、バッファとして用いられたりしてよい。主記憶装置２０２には、例えば、ＲＡＭのような半導体メモリが適用されてよい。ＲＡＭは、「Random Access Memory」の略称である。
【０１８７】
なお、主記憶装置２０２と補助記憶装置２０３とをまとめて「記憶部２１０」と称してよい。記憶部２１０に、図１１に例示した、トポロジＤＢ１２１、トンネル機能一覧テーブル１２２、及び、トンネル機能設定情報ＤＢ１２３が記憶されてよい。
【０１８８】
記憶部２１０に記憶されるプログラムには、図１１に例示した各部１１１〜１１６の全部又は一部を実現可能なプログラム（便宜的に「経路設定プログラム」と称してよい。）が含まれてよい。なお、経路設定プログラムを成すプログラムコードの全部又は一部は、オペレーティングシステム（ＯＳ）の一部として記述されてもよい。
【０１８９】
プロセッサ２０１が、記憶部２１０に記憶された経路設定プログラムを読み取って実行することにより、管理サーバ１１としての各種機能が具現される、と捉えてよい。
【０１９０】
プログラムやデータは、コンピュータ読取可能な記録媒体８０に記録された形態で提供されてよい。記録媒体の一例としては、フレキシブルディスク、ＣＤ−ＲＯＭ，ＣＤ−Ｒ，ＣＤ−ＲＷ，ＭＯ，ＤＶＤ、ブルーレイディスク、ポータブルハードディスク等が上げられる。また、ＵＳＢ（Universal Serial Bus）メモリ等の半導体メモリ７０も記録媒体８０の一例である。
【０１９１】
半導体メモリ７０に記憶されたプログラムやデータは、例示的に、入出力ＩＦ２０７を通じてプロセッサ２０１に読み出されてよい。また、記録媒体８０に記憶されたプログラムやデータは、例示的に、ドライブ装置２０８を通じてプロセッサ２０１に読み出されてよい。
【０１９２】
なお、プログラムやデータは、他のサーバコンピュータ等から通信回線を介して管理サーバ１１に提供（別言すると「ダウンロード」）されてもよい。例えば、ＮＷ−ＩＦ２０４を通じてプログラムやデータが管理サーバ１１に提供されてよい。また、プログラムやデータは、入力装置５０から入力ＩＦ２０５を通じて管理サーバ１１に提供されてもよい。
【０１９３】
入力装置５０は、例示的に、キーボード、マウス等のポインティングデバイスや、操作ボタン（タッチパネル式でもよい。）、マイクロフォン等であってよい。入力装置５０から入力されたデータは、例示的に、入力ＩＦ２０５を通じてプロセッサ２０１に与えられてよい。例えば、オペレータによる管理サーバ１１に対する設定の登録や変更、管理サーバ１１の各種操作やデータの入力等の作業に、入力装置５０が用いられてよい。
【０１９４】
出力装置６０は、例示的に、出力ＩＦ２０６に接続されて、プロセッサ２０１の処理結果を出力する。出力装置６０には、例えば、スピーカ等の音声出力装置、液晶ディスプレイ等の表示装置、プリンタ等の印刷装置が含まれてよい。タッチパネル式の液晶ディスプレイは、入力装置５０にも該当すると捉えてよい。管理サーバ１１のオペレータによる設定の確認やオペレータに対する各種通知等の出力に、出力装置６０が用いられてよい。
【０１９５】
ＮＦ−ＩＦ２０４は、例示的に、ネットワークに接続されて情報やデータの送受信を行なう。ＮＦ−ＩＦ２０４が接続するネットワークは、管理サーバ１１が、管理、制御の対象である中継ノードやＮＷ機能との間で制御に関わる通信を行なうためのネットワークであってよい。当該ネットワークは、便宜的に、「制御ネットワーク」と称してよい。
【０１９６】
制御ネットワークにおける通信は、便宜的に、「制御通信」あるいは「コントロールプレーン（ＣＰ）通信」と称してもよい。制御ネットワークは、有線ネットワークでもよいし無線ネットワークでもよい。したがって、ＮＦ−ＩＦ２０４は、有線ネットワークと接続するインタフェース、及び、無線ネットワークと接続するインタフェースの一方又は双方を含んでよい。
【０１９７】
非限定的な一例として、ＮＦ−ＩＦ２０４は、Network Interface Card（ＮＩＣ）でもよいし、無線Local Area Network（ＬＡＮ）カードでもよい。ＮＦ−ＩＦ２０４で受信されたデータや情報は、プロセッサ２０１に与えられてよい。
【０１９８】
なお、図１２に例示する管理サーバ１１のハードウェア構成例は、あくまでも例示であり、管理サーバ１１においてハードウェアの増減が適宜に行なわれてよい。例えば、任意のハードウェアブロックの追加や削除、分割、任意の組み合わせでの統合、通信バスの追加又は削除等が、管理サーバ１１において、適宜に行なわれてよい。
【０１９９】
（動作例）
図１３は、管理サーバ１１の動作例を示すフローチャートである。
図１３に例示するように、管理サーバ１１は、サービスチェイン要求受付部１１１にて、サービスチェイン要求を受信する（処理Ｓ１１）。
【０２００】
サービスチェイン要求の受信に応じて、管理サーバ１１は、例えば経路計算部１１２にて、トポロジＤＢ１２１に記憶された情報を基に、サービスチェイン要求で指定されたノードＮｘを経由するデータ転送経路を算出する（処理Ｓ１２）。
【０２０１】
算出したデータ転送経路を基に、管理サーバ１１は、例えば階層化論理経路生成部１１４にて、図１０に例示したような階層化論理経路情報を生成する（処理Ｓ１３）。
【０２０２】
生成された階層化論理経路情報を基に、管理サーバ１１は、例えば経路情報生成部１１５にて、階層化された論理的な経路毎に、当該経路に存在するノードＮｘに設定する経路情報を生成する（処理Ｓ１４）。
【０２０３】
そして、管理サーバ１１は、生成した経路情報を、例えば経路情報送信部１１６によって、対象のノードＮｘ宛に送信して設定する（処理Ｓ１５）。
【０２０４】
（階層化論理経路情報の生成手順例）
次に、管理サーバ１１が、上記の処理Ｓ１３において、図１４に例示するようなデータ転送経路について、階層化論理経路情報を生成する手順の一例を説明する。また、図１５に、当該生成手順に対応する動作例をフローチャートにて示す。
【０２０５】
図１４には、図１０と同様に、送信元ノードＡから宛先ノードＺに至るデータ転送経路に、１３のノードＮ１〜Ｎ１３が存在する例が示されている。
【０２０６】
図１０に例示したように、ノードＮ１、Ｎ３、Ｎ５、Ｎ７、Ｎ９、Ｎ１１及びＮ１３は、非トンネルＮＷ機能又は中継ノード（例えば、ルータ）である。ノードＮ２及びＮ８は、それぞれ、第１のトンネル＃１のトンネル機能（生成）及びトンネル機能（終端）である。
【０２０７】
ノードＮ４及びＮ６は、それぞれ、トンネル＃１の区間内に形成される第２のトンネル＃２のトンネル機能（生成）及びトンネル機能（終端）である。また、ノードＮ１０及びＮ１２は、それぞれ、第３のトンネル＃３のトンネル機能（生成）及びトンネル機能（終端）である。
【０２０８】
ノードＮ１〜Ｎ１３が以上のようにトンネル機能、非トンネルＮＷ機能、及び、中継ノードのいずれに相当するかは、トンネル機能分類部１１３によって分類されているものと仮定する。
【０２０９】
階層化論理経路生成部１１４は、図１０及び図１４のノード配置例において、経路計算部１１２で算出された、送信元ノードＡから宛先ノードＺに至るデータ転送経路を、宛先ノードＺに向かう方向（下流）に順に辿ってノードＮｘを探索する。そして、階層化論理経路生成部１１４は、探索したノードＮｘがどの階層に位置するかを判断し、階層化された論理的な経路を生成する。
【０２１０】
例えば図１５に示すように、階層化論理経路生成部１１４は、探索開始時の現在の階層レベルＬを＝０として、Ｌ＝０の論理的な空きの経路＃１を生成し（処理Ｓ１３１）、データ転送経路を下流に辿ってノードＮｘを探索する（処理Ｓ１３２）。
【０２１１】
データ転送経路にノードＮｘが存在しなければ（処理Ｓ１３３でＮＯ）、階層化論理経路生成部１１４は、経路情報を設定する対象ノードＮｘが存在しないと判断して、処理を終えてよい。
【０２１２】
一方、探索によりデータ転送経路に存在するノードＮｘが発見されれば（処理Ｓ１３３でＹＥＳ）、階層化論理経路生成部１１４は、当該ノードＮｘが、中継ノード又は非トンネルＮＷ機能であるか否かをチェックしてよい（処理Ｓ１３４）。
【０２１３】
探索により発見したノードＮｘが中継ノード又は非トンネルＮＷ機能であった場合（処理Ｓ１３４でＹＥＳ）、階層化論理経路生成部１１４は、当該ノードＮｘを現在の階層レベルＬ＝０の経路＃１を構成するノードであると判断してよい。
【０２１４】
したがって、階層化論理経路生成部１１４は、現在の階層レベルＬ＝０の経路＃１にノードＮｘを所属させてよい（処理Ｓ１３５）。例えば、ノードＮ１は、階層（レベル）＃０経路＃１に所属する。
【０２１５】
探索により発見したノードＮｘが、中継ノードでも非トンネルＮＷ機能でもなかった場合（処理Ｓ１３４でＮＯ）、階層化論理経路生成部１１４は、当該ノードＮｘがトンネル機能（生成）であるか否かをチェックしてよい（処理Ｓ１３６）。
【０２１６】
当該ノードＮｘがトンネル機能（生成）であった場合（処理Ｓ１３６でＹＥＳ）、階層化論理経路生成部１１４は、当該ノードＮｘを現在の階層レベルＬ＝０の経路＃１を構成するノードであると判断してよい。したがって、階層化論理経路生成部１１４は、当該ノードＮｘを、現在の階層レベルＬ＝０の経路＃１に所属させてよい（処理Ｓ１３７）。
【０２１７】
また、トンネル機能（生成）である当該ノードＮｘは、現在の階層レベルＬを「＋１」した下位階層Ｌ＝１を構成するノードでもあると判断してよい。
【０２１８】
当該判断に応じて、階層化論理経路生成部１１４は、階層レベルＬ＝１の新しい論理的な経路＃１を生成し、当該階層＃１の経路＃１に、ノードＮｘを所属させてよい（処理Ｓ１３８）。
【０２１９】
例えば、ノードＮ２は、処理Ｓ１３７及びＳ１３８によって、階層＃０の経路＃１と階層＃１の経路＃１との双方に所属することになる。
【０２２０】
一方、探索により発見したノードＮｘが、トンネル機能（終端）であった場合（処理Ｓ１３６でＮＯ）、階層化論理経路生成部１１４は、当該ノードＮｘを現在の階層レベルＬ＝１の経路＃１を構成するノードであると判断してよい。
【０２２１】
当該判断に応じて、階層化論理経路生成部１１４は、当該ノードＮｘを現在の階層レベルＬ＝１の経路＃１に所属させてよい（処理Ｓ１３９）。
【０２２２】
また、階層化論理経路生成部１１４は、当該ノードＮｘは、現在の階層レベルＬを「−１」した上位階層Ｌ＝０の経路＃１を構成するノードでもあると判断して、当該ノードＮｘを階層レベルＬ＝０の経路＃１に所属させてよい（処理Ｓ１４０）。
【０２２３】
例えば、ノードＮ８は、処理Ｓ１３９及びＳ１４０によって、階層＃１の経路＃１と階層＃０の経路＃１との双方に所属することになる。
【０２２４】
以下、図１４のノード配置に対して、上述した図１５のフローチャートの動作に基づいて、階層化論理経路生成部１１４によって、階層化論理経路情報が生成される手順（１）〜（１５）について更に説明する。
【０２２５】
（１）開始
階層化論理経路生成部１１４は、現在の階層レベルＬをＬ＝０に設定し、送信元ノードＡから宛先ノードＺに向かう方向に、データ転送経路を順に辿ってノードＮｘを探索する（図１５の処理Ｓ１３１及びＳ１３２に対応）。
【０２２６】
・現在の階層レベルＬ：０
・階層＃０経路＃１：［］
なお、［］は、論理的な空きの経路を表す。
【０２２７】
（２）ノードＮ１発見
ノード探索により、ノードＮ１が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ１は、非トンネルＮＷ機能であると判断する。よって、階層化論理経路生成部１１４は、ノードＮ１は、現在の階層レベルＬ＝０の経路＃１を構成するノードと判断し、ノードＮ１を階層＃０経路＃１に所属させる（図１５の処理Ｓ１３５に対応）。
【０２２８】
・現在の階層レベルＬ：０
・階層＃０経路＃１：［Ｎ１］
【０２２９】
（３）ノードＮ２発見
次に、ノード探索により、ノードＮ２が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ２はトンネル機能（生成）であると判断する。
【０２３０】
よって、階層化論理経路生成部１１４は、ノードＮ２は現在の階層レベルＬ＝０の経路＃１を構成するノードと判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、ノードＮ２を階層＃０経路＃１に所属させてよい（図１５の処理Ｓ１３７に対応）。
【０２３１】
また、階層化論理経路生成部１１４は、ノードＮ２は現在の階層レベルＬを「＋１」した下位階層＃１を構成するノードでもあると判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、階層＃１の新しい経路＃１を生成し、ノードＮ２を当該階層＃１の経路＃１に所属させてよい（図１５の処理Ｓ１３８に対応）。
【０２３２】
・現在の階層レベルＬ：０＋１＝１
・階層＃０経路＃１：［Ｎ１，Ｎ２］
・階層＃１経路＃１：［Ｎ２］
【０２３３】
（４）ノードＮ３発見
次に、ノード探索により、ノードＮ３が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ３は非トンネルＮＷ機能であると判断する。
【０２３４】
よって、階層化論理経路生成部１１４は、ノードＮ３は現在の階層レベルＬ＝１の経路＃１を構成するノードであると判断して、ノードＮ３を階層＃１経路＃１に所属させてよい（図１５の処理Ｓ１３５に対応）。
【０２３５】
・現在の階層レベルＬ：１
・階層＃０経路＃１：［Ｎ１，Ｎ２］
・階層＃１経路＃１：［Ｎ２，Ｎ３］
【０２３６】
（５）ノードＮ４発見
次に、ノード探索により、ノードＮ４が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ４はトンネル機能（生成）であると判断する。
【０２３７】
よって、階層化論理経路生成部１１４は、ノードＮ４は現在の階層レベルＬ＝１の経路＃１を構成するノードと判断して、ノードＮ４を階層＃１経路＃１に所属させてよい（図１５の処理Ｓ１３７に対応）
【０２３８】
また、階層化論理経路生成部１１４は、ノードＮ４は現在の階層レベルＬ＝１を「＋１」した下位階層＃２を構成するノードでもあると判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、階層レベルＬ＝２の新しい経路＃１を生成して、ノードＮ４を当該階層＃２の経路＃１に所属させてよい（図１５の処理Ｓ１３８に対応）。
【０２３９】
・現在の階層レベルＬ：１＋１＝２
・階層＃０経路＃１：［Ｎ１，Ｎ２］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
・階層＃２経路＃１：［Ｎ４］
【０２４０】
（６）ノードＮ５発見
次に、ノード探索により、ノードＮ５が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ５は非トンネル機能であると判断する。
【０２４１】
よって、階層化論理経路生成部１１４は、ノードＮ５は現在の階層レベルＬ＝２の経路＃１を構成するノードと判断して、ノードＮ５を階層＃２の経路＃１に所属させてよい（図１５の処理Ｓ１３５に対応）。
【０２４２】
・現在の階層レベルＬ：２
・階層＃０経路＃１：［Ｎ１，Ｎ２］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
・階層＃２経路＃１：［Ｎ４，Ｎ５］
【０２４３】
（７）ノードＮ６発見
次に、ノード探索により、ノードＮ６が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ６はトンネル機能（終端）であると判断する。
【０２４４】
よって、階層化論理経路生成部１１４は、ノードＮ６は現在の階層レベルＬ＝２の経路＃１を構成するノードと判断して、ノードＮ６を階層＃２の経路＃１に所属させてよい（図１５の処理Ｓ１３９に対応）。
【０２４５】
また、階層化論理経路生成部１１４は、ノードＮ６は現在の階層レベルＬ＝２を「−１」した上位階層＃１の経路＃１を構成するノードでもあると判断して、ノードＮ６を階層＃１の経路＃１に所属させてよい（図１５の処理Ｓ１４０に対応）。
【０２４６】
・現在の階層レベルＬ：２−１＝１
・階層＃０経路＃１：［Ｎ１，Ｎ２］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６］
・階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
【０２４７】
（８）ノードＮ７発見
次に、ノード探索により、ノードＮ７が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ７は非トンネルＮＷ機能であると判断する。
【０２４８】
よって、階層化論理経路生成部１１４は、ノードＮ７は現在の階層レベルＬ＝１の経路＃１を構成するノードであると判断して、ノードＮ７を階層＃１の経路＃１に所属させてよい（図１５の処理Ｓ１３５に対応）。
【０２４９】
・現在の階層レベルＬ：１
階層＃０経路＃１：［Ｎ１，Ｎ２］
階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７］
階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
【０２５０】
（９）ノードＮ８発見
次に、ノード探索により、ノードＮ８が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ８はトンネル機能（終端）であると判断する。
【０２５１】
よって、階層化論理経路生成部１１４は、ノードＮ８は現在の階層レベルＬ＝１の経路＃１を構成するノードであると判断して、ノードＮ８を階層＃１の経路＃１に所属させてよい（図１５の処理Ｓ１３９に対応）。
【０２５２】
また、階層化論理経路生成部１１４は、ノードＮ８は現在の階層レベルＬ＝１を「−１」した上位階層＃０の経路＃１を構成するノードでもあると判断して、ノードＮ８を階層＃０の経路＃１に所属させてよい（図１５の処理Ｓ１４０に対応）。
【０２５３】
・現在の階層レベルＬ：１−１＝０
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ８］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７，Ｎ８］
・階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
【０２５４】
（１０）ノードＮ９発見
次に、ノード探索により、ノードＮ９が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ９は非トンネルＮＷ機能であると判断する。
【０２５５】
よって、階層化論理経路生成部１１４は、ノードＮ９は現在の階層レベルＬ＝０の経路＃１を構成するノードであると判断して、ノードＮ９を階層＃０の経路＃１に所属させてよい（図１５の処理Ｓ１３５に対応）。
【０２５６】
・現在の階層レベルＬ：０
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ８，Ｎ９］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７，Ｎ８］
・階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
【０２５７】
（１１）ノードＮ１０発見
次に、ノード探索により、ノードＮ１０が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ１０はトンネル機能（生成）であると判断する。
【０２５８】
よって、階層化論理経路生成部１１４は、ノードＮ１０は現在の階層レベルＬ＝０の経路＃１を構成するノードであると判断して、ノードＮ１０を階層＃０経路＃１に所属させてよい（図１５の処理Ｓ１３９に対応）。
【０２５９】
また、階層化論理経路生成部１１４は、ノードＮ１０は現在の階層レベルＬ＝０を「＋１」した下位階層＃１を構成するノードでもあると判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、階層＃１の新しい経路＃２を生成し、ノードＮ１０を階層＃１の経路＃２に所属させてよい（図１５の処理Ｓ１４０に対応）。
【０２６０】
・現在の階層レベルＬ：０＋１＝１
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ８，Ｎ９，Ｎ１０］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７，Ｎ８］
・階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
・階層＃１経路＃２：［Ｎ１０］
【０２６１】
（１２）ノードＮ１１発見
次に、ノード探索により、ノードＮ１１が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ１１は非トンネルＮＷ機能であると判断する。
【０２６２】
よって、階層化論理経路生成部１１４は、ノードＮ１１は現在の階層レベルＬ＝１の経路＃２を構成するノードであると判断して、ノードＮ１１を階層＃１の経路＃２に所属させてよい（図１５の処理Ｓ１３５に対応）。
【０２６３】
・現在の階層レベルＬ：１
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ８，Ｎ９，Ｎ１０］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７，Ｎ８］
・階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
・階層１転送経路２：［Ｎ１０，Ｎ１１］
【０２６４】
（１３）ノードＮ１２発見
次に、ノード探索により、ノードＮ１２が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ１２はトンネル機能（終端）であると判断する。
【０２６５】
よって、階層化論理経路生成部１１４は、ノードＮ１２は現在の階層レベルＬ＝１の経路＃２を構成するノードであると判断して、ノードＮ１２を階層＃１経路＃２に所属させてよい（図１５の処理Ｓ１３９に対応）。
【０２６６】
また、階層化論理経路生成部１１４は、ノードＮ１２は現在の階層レベルＬ＝１を「−１」した上位階層＃０の経路＃１を構成するノードでもあると判断して、ノードＮ１２を階層＃０の経路＃１に所属させてよい（図１５の処理Ｓ１４０に対応）。
【０２６７】
・現在の階層レベルＬ：１−１＝０
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ８，Ｎ９，Ｎ１０，Ｎ１２］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７，Ｎ８］
・階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
・階層＃１経路＃２：［Ｎ１０，Ｎ１１，Ｎ１２］
【０２６８】
（１４）ノードＮ１３発見
次に、ノード探索により、ノードＮ１３が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ１３は非トンネルＮＷ機能であると判断する。
【０２６９】
よって、階層化論理経路生成部１１４は、ノードＮ１３は現在の階層レベルＬ＝０の経路＃１を構成するノードであると判断して、ノードＮ１３を階層＃０の経路＃１に所属させてよい（図１５の処理Ｓ１３５に対応）。
【０２７０】
・現在の階層レベルＬ：０
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ８，Ｎ９，Ｎ１０，Ｎ１２，Ｎ１３］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７，Ｎ８］
・階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
・階層＃１経路＃２：［Ｎ１０，Ｎ１１，Ｎ１２］
【０２７１】
（１５）終了
ノード探索により、宛先ノードＺが探索されるので、データ転送経路における全てのノードＮｘが探索されたことになる（図１５の処理Ｓ１３３でＮＯと判定される）。したがって、階層化論理経路生成部１１４は、階層化論理経路情報の生成処理を終了してよい。
【０２７２】
以上により、図１４のノード配置例に対して、最終的に、以下に示す階層化された４つの論理的な経路の情報が、管理サーバ１１において生成される。なお、生成された階層化論理経路情報は、例示的に、記憶部２１０（図１２参照）に記憶されてよい。
【０２７３】
１．階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ８，Ｎ９，Ｎ１０，Ｎ１２，Ｎ１３］
２．階層＃１経路＃１［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７，Ｎ８］
３．階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
４．階層＃１経路＃２：［Ｎ１０，Ｎ１１，Ｎ１２］
【０２７４】
（経路情報の生成手順例）
次に、上述のごとく生成された階層化論理経路情報を基に、図１３に例示した経路情報の生成処理Ｓ１４において、経路情報生成部１１５が経路情報を生成する手順の一例について、図１６のフローチャートを参照して説明する。
【０２７５】
なお、トンネル機能であるノードＮ２，Ｎ４，Ｎ６，Ｎ８，Ｎ１０及びＮ１２は、いずれも、type 1のＮＷ機能に分類されていると仮定する。また、その他のノードＮ１，Ｎ３，Ｎ５，Ｎ７，Ｎ９及びＮ１１も、type 1のＮＷ機能に分類されていると仮定する。ただし、以上の仮定は、あくまでも説明の便宜のためであり、ノードＮｘは、type 1〜type 4のＮＷ機能のいずれに該当してもよい。
【０２７６】
経路情報生成部１１５は、階層化された論理的な４つの経路の中に、経路情報を生成していない未処理の経路が存在するか否かをチェックする（処理Ｓ１４１）。
【０２７７】
未処理の経路が存在すれば（処理Ｓ１４１でＹＥＳ）、経路情報生成部１１５は、未処理の経路のいずれか１つを選択する（処理Ｓ１４２）。例えば、経路情報生成部１１５は、階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ８，Ｎ９，Ｎ１０，Ｎ１２，Ｎ１３］を選択する。
【０２７８】
経路情報生成部１１５は、選択した経路が最上位の階層＃０に位置する経路であるか否かをチェックする（処理Ｓ１４３）。階層＃０経路＃１は、最上位の階層に位置する経路であるから、処理Ｓ１４３でＹＥＳと判定される。
【０２７９】
したがって、経路情報生成部１１５は、階層＃０経路＃１に、経路情報を生成していない未処理ノードＮｘが存在するか否かをチェックする（処理Ｓ１４５）。この段階では、いずれのノードＮｘに対しても経路情報は生成されていないので、処理Ｓ１４５でＹＥＳと判定される。
【０２８０】
そのため、経路情報生成部１１５は、階層＃０経路＃１に所属するノードＮｘ（ｘ＝１，２，８，９，１０，１２、又は、１３）のいずれか１つを選択する（処理Ｓ１４６）。
【０２８１】
そして、経路情報生成部１１５は、トンネル機能一覧テーブル１２２の情報を基に、選択したノードＮｘがトンネル機能（生成）であるか否かをチェックする（処理Ｓ１４７）。
【０２８２】
選択したノードＮｘがトンネル機能（生成）でなければ（処理Ｓ１４７でＮＯ）、経路情報生成部１１５は、既述の「ノード探索経路情報生成方法」と同様にして、当該ノードＮｘに設定する経路情報を生成してよい（処理Ｓ１５０）。
【０２８３】
例えば、階層＃０経路＃１に所属するノードＮ１，Ｎ８，Ｎ９、Ｎ１２又はＮ１３が選択された場合に、「ノード探索経路情報生成方法」と同様にして経路情報が生成されてよい。
【０２８４】
一方、選択したノードＮｘが、トンネル機能（生成）であれば（処理Ｓ１４７でＹＥＳ）、経路情報生成部１１５は、当該ノードＮｘが、選択中の階層＃０経路＃１の最上流に位置するノードであるか否かをチェックする（処理Ｓ１４８）。
【０２８５】
例えば、トンネル機能（生成）であるノードＮ２又はＮ１０が選択された場合、階層＃０経路＃１において最上流に位置するノードはノードＮ１であるため、処理Ｓ１４８においてＮＯと判定される。
【０２８６】
当該判定に応じて、経路情報生成部１１５は、ノードＮ２又はＮ１０に設定する経路表＃１の経路情報を生成してよい（処理Ｓ１５１）。
【０２８７】
例えば、経路情報生成部１１５は、送信元アドレスを送信元ノードＡのアドレスＡとし、宛先アドレスを宛先ノードＺのアドレスＺとした経路情報を、ノードＮ２又はＮ１０に設定する経路表＃１として生成してよい。
【０２８８】
経路表＃１において、送信元アドレスＳ１と宛先アドレスＤ１とのペアに対して、トンネル区間についての経路表＃２を参照する情報が設定されてよい（処理Ｓ１５１）。経路表＃２の経路情報は、当該トンネル機能（生成）Ｎ２又はＮ１０が所属する下位階層＃１の経路＃１が未処理の経路として処理Ｓ１４２で選択された場合に、後述する処理Ｓ１４９で生成される。
【０２８９】
したがって、経路情報生成部１１５は、トンネル機能（生成）であるノードＮｘに対して、例えば図８にて説明したような、２つの適切な経路表＃１及び＃２の経路情報を生成することができる。
【０２９０】
一方、選択したノードＮｘが、選択中の階層＃０経路＃１の最上流に位置するトンネル機能（生成）であれば（処理Ｓ１４８でＹＥＳ）、経路情報生成部１１５は、経路表＃２の経路情報を生成してよい（処理Ｓ１４９）。
【０２９１】
経路表＃２の経路情報は、「ノード探索経路情報生成方法」と同様にして生成されてよい。なお、図１４の例において、階層＃０経路＃１には、最上流に位置するトンネル機能（生成）は存在しないため、階層＃０経路＃１について経路表＃２の経路情報は生成されない。
【０２９２】
経路情報生成部１１５は、選択中の階層＃０経路＃１に未処理のノードＮｘが存在しなくなるまで（処理Ｓ１４５でＮＯと判定されるまで）、処理Ｓ１４５〜Ｓ１５１を繰り返し実施することで、未処理のノードＮｘを１つずつ選択して経路情報の生成を繰り返す。
【０２９３】
選択中の階層＃０経路＃１に未処理のノードＮｘが存在しなくなると（処理Ｓ１４５でＮＯ）、経路情報生成部１１５は、処理Ｓ１４１に戻り、未処理の経路が存在するか否かをチェックする。
【０２９４】
未処理の経路が存在すれば（処理Ｓ１４１でＹＥＳ）、経路情報生成部１１５は、未処理の経路のいずれか１つを選択する（処理Ｓ１４２）。例えば、経路情報生成部１１５は、階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７，Ｎ８］を選択する。
【０２９５】
経路情報生成部１１５は、選択した経路が最上位の階層＃０に位置する経路であるか否かをチェックする（処理Ｓ１４３）。階層＃１経路＃１は、最上位の階層に位置する経路ではないから、処理Ｓ１４３でＮＯと判定される。
【０２９６】
経路情報生成部１１５は、選択中の階層＃１経路＃１において、最上流に位置するノードＮ２を送信元ノードに設定し、かつ、最下流に位置するノードＮ８を宛先ノードに設定した上で（処理Ｓ１４４）、上述した処理Ｓ１４５〜Ｓ１５１を実施してよい。
【０２９７】
別言すると、経路情報生成部１１５は、送信元ノードＮ２から宛先ノードＮ８に至る階層＃１経路＃１に対して「ノード探索経路情報生成方法」を適用して、階層＃１経路＃１に所属するノードＮｘの経路情報を生成してよい。
【０２９８】
ただし、ノードＮ４は、選択中の階層＃１経路＃１の最上流に位置しないトンネル機能（生成）であるため、経路情報生成部１１５は、処理Ｓ１５１にて、ノードＮ４について経路表＃１の経路情報を生成する。
【０２９９】
例えば、経路情報生成部１１５は、送信元アドレスをノードＮ２のアドレスＰ２とし、宛先アドレスをノードＮ８のアドレスＰ８とした、経路情報をノードＮ４の経路表＃１として生成してよい。当該経路表＃１において、アドレスＰ２とアドレスＰ８とのペアに対して、トンネル区間についての経路表＃２を参照する情報が設定されてよい。
【０３００】
なお、ノードＮ４の経路表＃２に対する経路情報は、当該ノードＮ４が所属する下位階層＃２の経路＃１が未処理の経路として処理Ｓ１４２で選択された場合に、処理Ｓ１４９で生成される。
【０３０１】
また、選択中の階層＃１経路＃１において、トンネル機能（生成）であるノードＮ２は、最上流に位置するため、経路情報生成部１１５は、処理Ｓ１４９にて、ノードＮ２の経路表＃２に対する経路情報を生成してよい。経路表＃２に対する経路情報は、「ノード探索経路情報生成方法」と同様にして生成されてよい。
【０３０２】
例えば、送信元アドレスをノードＮ２のアドレスＰ２とし、宛先アドレスをノードＮ８のアドレスＰ８とした、経路情報が、ノードＮ２の経路表＃２に対する経路情報として生成されてよい。また、経路表＃２において、送信元アドレスＰ２と宛先アドレスＰ８とのペアに対し、ネクストホップアドレスがノードＮ３のアドレスＰ３に設定されてよい。
【０３０３】
経路情報生成部１１５は、選択中の階層＃１経路＃１に未処理のノードＮｘが存在しなくなるまで（処理Ｓ１４５でＮＯと判定されるまで）、処理Ｓ１４５〜Ｓ１５１を繰り返し実施することで、未処理のノードＮｘを１つずつ選択して経路情報の生成を繰り返す。
【０３０４】
選択中の階層＃１経路＃１に未処理のノードＮｘが存在しなくなると（処理Ｓ１４５でＮＯ）、経路情報生成部１１５は、処理Ｓ１４１に戻り、未処理の経路が存在するか否かをチェックする。
【０３０５】
未処理の経路が存在すれば（処理Ｓ１４１でＹＥＳ）、経路情報生成部１１５は、未処理の経路のいずれか１つを選択する（処理Ｓ１４２）。例えば、経路情報生成部１１５は、階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］を選択する。
【０３０６】
経路情報生成部１１５は、選択した経路が最上位の階層＃０に位置する経路であるか否かをチェックする（処理Ｓ１４３）。階層＃２経路＃１は、最上位の階層に位置する経路ではないから、処理Ｓ１４３でＮＯと判定される。
【０３０７】
経路情報生成部１１５は、選択中の階層＃２経路＃１において、最上流に位置するノードＮ４を送信元ノードに設定し、かつ、最下流に位置するノードＮ６を宛先ノードに設定した上で（処理Ｓ１４４）、図１６の処理Ｓ１４５〜Ｓ１５１を実施してよい。
【０３０８】
別言すると、経路情報生成部１１５は、送信元ノードＮ４から宛先ノードＮ６に至る階層＃２経路＃１に対して「ノード探索経路情報生成方法」を適用して、階層＃２経路＃１に所属するノードＮｘの経路情報を生成してよい。
【０３０９】
ただし、選択中の階層＃２経路＃１において、トンネル機能（生成）であるノードＮ４は、最上流に位置するため、経路情報生成部１１５は、処理Ｓ１４９にて、ノードＮ４の経路表＃２に対する経路情報を生成してよい。経路表＃２に対する経路情報は、「ノード探索経路情報生成方法」と同様にして生成されてよい。
【０３１０】
例えば、送信元アドレスをノードＮ４のアドレスＰ４とし、宛先アドレスをノードＮ６のアドレスＰ６とした、経路情報が、ノードＮ４の経路表＃２に対する経路情報として生成されてよい。また、経路表＃２において、送信元アドレスＰ４と宛先アドレスＰ６とのペアに対し、ネクストホップアドレスが、ノードＮ５のアドレスＰ５に設定されてよい。
【０３１１】
経路情報生成部１１５は、選択中の階層＃２経路＃１に未処理のノードＮｘが存在しなくなるまで（処理Ｓ１４５でＮＯと判定されるまで）、処理Ｓ１４５〜Ｓ１５１を繰り返し実施することで、未処理のノードＮｘを１つずつ選択して経路情報の生成を繰り返す。
【０３１２】
選択中の階層＃２経路＃１に未処理のノードＮｘが存在しなくなると（処理Ｓ１４５でＮＯ）、経路情報生成部１１５は、処理Ｓ１４１に戻り、未処理の経路が存在するか否かをチェックする。
【０３１３】
未処理の経路が存在すれば（処理Ｓ１４１でＹＥＳ）、経路情報生成部１１５は、未処理の経路のいずれか１つを選択する（処理Ｓ１４２）。例えば、経路情報生成部１１５は、階層＃１経路＃２：［Ｎ１０，Ｎ１１，Ｎ１２］を選択する。
【０３１４】
経路情報生成部１１５は、選択した経路が最上位の階層＃０に位置する経路であるか否かをチェックする（処理Ｓ１４３）。階層＃１経路＃２は、最上位の階層に位置する経路ではないから、処理Ｓ１４３でＮＯと判定される。
【０３１５】
経路情報生成部１１５は、選択中の階層＃１経路＃２において、最上流に位置するノードＮ１０を送信元ノードに設定し、かつ、最下流に位置するノードＮ１２を宛先ノードに設定した上で（処理Ｓ１４４）、図１６の処理Ｓ１４５〜Ｓ１５１を実施してよい。
【０３１６】
別言すると、経路情報生成部１１５は、送信元ノードＮ１０から宛先ノードＮ１２に至る階層＃１経路＃２に対して「ノード探索経路情報生成方法」を適用して、階層＃１経路＃２に所属するノードＮｘの経路情報を生成してよい。
【０３１７】
ただし、選択中の階層＃１経路＃２において、トンネル機能（生成）であるノードＮ１０は、最上流に位置するため、経路情報生成部１１５は、処理Ｓ１４９にて、ノードＮ１０の経路表＃２に対する経路情報を生成してよい。経路表＃２に対する経路情報は、「ノード探索経路情報生成方法」と同様にして生成されてよい。
【０３１８】
例えば、送信元アドレスをノードＮ１０のアドレスＰ１０とし、宛先アドレスをノードＮ１２のアドレスＰ１２とした、経路情報が、ノードＮ１０の経路表＃２に対する経路情報として生成されてよい。また、経路表＃２において、送信元アドレスＰ１０と宛先アドレスＰ１２とのペアに対し、ネクストホップアドレスが、ノードＮ１１のアドレスＰ１１に設定されてよい。
【０３１９】
経路情報生成部１１５は、選択中の階層＃１経路＃２に未処理のノードＮｘが存在しなくなるまで（処理Ｓ１４５でＮＯと判定されるまで）、処理Ｓ１４５〜Ｓ１５１を繰り返し実施することで、未処理のノードＮｘを１つずつ選択して経路情報の生成を繰り返す。
【０３２０】
選択中の階層＃１経路＃２に未処理のノードＮｘが存在しなくなると（処理Ｓ１４５でＮＯ）、経路情報生成部１１５は、処理Ｓ１４１に戻り、未処理の経路が存在するか否かをチェックする。
【０３２１】
上述した例では、階層＃１経路＃２についての処理が終了すれば、他に未処理の経路は存在しないので（処理Ｓ１４１でＮＯ）、経路情報生成部１１５は、経路情報の生成処理を終了してよい。
【０３２２】
以上のようにして、経路情報生成部１１５は、データ転送経路におけるトンネル区間毎に階層化された論理的な経路の別に、経路情報を生成する。そのため、管理サーバ１１は、個々のトンネル区間に対して適切な経路情報を生成でき、また、トンネル区間内に位置するノードＮｘに対しても適切な経路情報を生成できる。
【０３２３】
なお、上述した例は、送信元ノードＡから宛先ノードＺに向かう方向への経路（「往路」と称してもよい。）についての処理例である。宛先ノードＺから送信元ノードＡに向かう方向の経路（「復路」と称してよい。）についても、上述した処理と同様の処理を適用してよい。
【０３２４】
例えば、復路の処理では、往路の処理での「トンネル機能（生成）」及び「トンネル機能（終端）」を、それぞれ、「トンネル機能（終端）」及び「トンネル機能（生成）」に読み替えて処理すればよい。したがって、管理サーバ１１は、往路と同様に、復路に対しても適切な経路情報を生成して設定することができる。
【０３２５】
以上のように、上述した実施形態によれば、サービスチェインに、ＶＰＮのようなトンネル機能によって形成されたトンネル区間が存在しても、管理サーバ１１は、当該トンネル区間に対して適切な経路設定を実施することができる。
【０３２６】
（第２実施形態）
ＮＦＶにおいて、ネットワークサービスプロバイダは、当該プロバイダが管理するデータセンタに、サービスチェインを成すＮＷ機能を管理サーバ１１によって配備することで、ＮＷ機能に応じたサービスを提供することができる。
【０３２７】
第１実施形態では、管理サーバ１１が経路設定を行なうサービスチェインに、トンネル機能（生成）とトンネル機能（終端）とのペアが存在する例について説明した。この例は、ＮＦＶの適用例として考えると、図１７に模式的に例示するように、管理サーバ１１による管理又は制御が可能な複数のデータセンタ＃１−＃２間をトンネル接続する形態に相当する。
【０３２８】
例えば、ネットワーク＃１に属する送信元ノードＡから、ネットワーク＃２に属する宛先ノードＺ１に至る経路に、サービスチェインＳＣ＃１が、複数の地域に分散したデータセンタ＃１及び＃２を経由して設定される。
【０３２９】
データセンタ＃１−＃２間のトンネル接続のために、トンネル機能が、それぞれ、データセンタ＃１及び＃２に配備される。例えば、データセンタ＃１にトンネル機能（生成）が配備され、データセンタ＃２にトンネル機能（終端）が配備される。
【０３３０】
ここで、管理サーバ１１によって経路設定が可能なサービスチェインの範囲を、便宜的に、「管理ドメイン」と称する。管理サーバ１１は、管理ドメイン内のデータ転送経路であれば、第１実施形態にて説明したように、当該データ転送経路におけるノード（ＮＷ機能又は中継ノード）の経路情報を生成して設定することができる。
【０３３１】
例えば図１７のサービスチェインＳＣ＃１では、トンネル機能（生成）及びトンネル機能（終端）の双方が管理サーバ１１の管理ドメインに属している。そのため、管理サーバ１１は、トンネル機能（生成）及びトンネル機能（終端）の双方に対して、経路情報の生成及び設定が可能である。
【０３３２】
これに対し、図１７に例示するサービスチェインＳＣ＃２のように、管理ドメイン内にトンネル生成機能が配備され、トンネル終端機能が管理ドメイン外に配備されるようなケースが、ＮＦＶの普及に応じて生じ得る。
【０３３３】
サービスチェインＳＣ＃２は、例示的に、送信元ノードＡから、データセンタ＃１及びインターネットを経由して、ネットワーク＃３に属する宛先ノードＺ２に至る経路に設定されている。
【０３３４】
そして、例えば、データセンタ＃１とネットワーク＃３との間のインターネットを経由する区間にトンネルが設定、形成される。そのため、データセンタ＃１にトンネル機能（生成）が配備され、ネットワーク＃３にトンネル機能（終端）が配備される。
【０３３５】
当該ケースにおいて、管理サーバ１１は、第１実施形態の動作のままでは、管理ドメイン内に一方のトンネル機能（生成）しか存在しないサービスチェインＳＣ＃２について、適切な経路情報を生成できない。
【０３３６】
そこで、第２実施形態では、管理ドメイン内にトンネル機能のペアの双方が存在するサービスチェインＳＣ＃１に限らず、管理ドメイン内にトンネル機能のペアの一方しか存在しないサービスチェインＳＣ＃２に対しても、適切な経路情報を生成できるようにする。これにより、いずれのサービスチェインＳＣ＃１及びＳＣ＃２に対しても、適切な経路設定を管理サーバ１１でサポートすることが可能になる。
【０３３７】
管理ドメイン内にトンネル機能の一方しか存在しない場合、トンネル機能の双方が管理ドメイン内に存在する場合（第１実施形態）に対して、管理サーバ１１において追加の情報を用意する。追加の情報は、例示的に、管理ドメイン外に存在する他方のトンネル機能の情報や、管理ドメイン外のノードにデータを転送するための情報等である。
【０３３８】
また、第２実施形態の管理サーバ１１には、例えば図１８に示すように、管理ドメインにペアを成すトンネル機能の双方が存在するか、一方しか存在しないか判断可能なトンネル端判断部１１７を追加的に備えてよい。
【０３３９】
トンネル端判断部１１７は、例示的に、経路情報生成部１１５の一機能として備えられてもよいし、経路情報生成部１１５とは個別の機能として備えられてもよい。なお、図１８において図１１と同じ符号を付したブロックは、第１実施形態にて既述のブロックと同一若しくは同様のブロックである。また、管理サーバ１１のハードウェア構成例は、図１２に例示した構成と同一若しくは同様でよい。
【０３４０】
経路情報生成部１１５は、トンネル端判断部１１７による判断結果に応じて、追加の情報を取得して、なるべく少ない情報で適切な経路情報を生成する。
【０３４１】
トンネル端判断部１１７は、例えば、階層化論理経路生成部１１４から与えられた経路の両端に、トンネル機能（生成）とトンネル機能（終端）の両方が存在すれば、管理ドメインにトンネルの両端が存在すると判断してよい。
【０３４２】
一方、階層化論理経路生成部１１４から与えられた経路の一端にしかトンネル機能（生成）又はトンネル機能（終端）が存在しなければ、トンネル端判断部１１７は、管理ドメインに、トンネルの一端しか存在しないと判断してよい。
【０３４３】
また、経路情報生成部１１５は、トンネル端判断部１１７による判断結果に応じて、次のように動作してよい。例えば、最上位の階層＃０に位置しない経路について、トンネル端判断部１１７で判断した結果、両方のトンネル機能が存在する場合、経路情報生成部１１５は、第１実施形態と同様にして経路情報を生成してよい。
【０３４４】
当該動作は、例えば図２１に示す処理Ｓ１６１でＹＥＳと判定されて処理Ｓ１４４〜Ｓ１５１が実行される動作に相当する。なお、図２１に例示するフローチャートは、図１６に例示したフローチャートと対応している。図２１においては、処理Ｓ１６１及びＳ１６２が追加されている点が、図１６とは異なる。
【０３４５】
一方、当該経路に片方のトンネル機能しか存在しない場合、経路情報生成部１１５は、各ＮＷ機能に設定する経路の宛先を、当該経路に存在するトンネル機能（生成）と分類されているＮＷ機能の、トンネル確立時に使用される対向のトンネル機能に設定してよい。当該動作は、例えば図２１に示す処理Ｓ１６１でＮＯと判定されて処理Ｓ１６２が実行される動作に相当する。
【０３４６】
処理Ｓ１６２の後、経路情報生成部１１５は、第１実施形態と同様に、選択中の経路について未処理のノードＮｘが存在しなくなるまで、処理Ｓ１４４〜Ｓ１５１を繰り返し実行して、ノードＮｘに設定する経路情報を生成してよい。ただし、当該経路の最下流に位置するノードＮｘに設定する経路情報のネクストホップアドレスは、管理ドメイン外に位置するノードのアドレスに設定されてよい。
【０３４７】
（動作例）
管理ドメインにトンネル機能の一方しか存在しないサービスチェインを設定する例として、図１９に例示するようなサービスチェインを例に説明する。図１９の例では、送信元ノードＡから宛先ノードＺ２に至る経路に、８つのノードＮ１〜Ｎ８が存在している。ノードＮ１〜Ｎ７が、管理サーバ１１の管理ドメイン内に位置しており、ノードＮ８は、管理サーバの管理ドメイン外に位置している。
【０３４８】
例示的に、ノードＮ２とノードＮ８との間にインターネットを経由するトンネル＃１の区間が設定されている。例えば、ノードＮ２は、管理ドメイン内のトンネル機能（生成）に相当し、ノードＮ８は、管理ドメイン外のトンネル機能（終端）に相当する。
【０３４９】
また、トンネル＃１の区間において、ノードＮ４とノードＮ６との間に別のトンネル＃２の区間が設定されている。例えば、ノードＮ４及びＮ６は、それぞれ、管理ドメイン内のトンネル機能（生成）及びトンネル機能（終端）に相当する。
【０３５０】
トンネル＃１の区間の経路が、管理ドメイン内に、ペアを成すトンネル機能の一方しか存在しない経路であり、トンネル＃２の区間の経路が、管理ドメイン内に、ペアを成すトンネル機能の双方が存在する経路である。
【０３５１】
図１９に例示するノード配置に対して、階層化論理経路生成部１１４が図１３の処理Ｓ１３において第１実施形態（例えば図１５の処理Ｓ１３１〜Ｓ１４０）と同様に動作すると、図２０に例示するように、以下の３つの階層化された経路の情報が生成される。
【０３５２】
１．階層＃０経路＃１：［Ｎ１，Ｎ２］
２．階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７］
３．階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］
【０３５３】
なお、管理ドメイン内に位置する各トンネル機能Ｎ２，Ｎ４及びＮ６は、いずれもtype 1のＮＷ機能に分類されていると仮定する。また、管理ドメイン内に位置する他のノードＮ１，Ｎ３，Ｎ５及びＮ７も、type 1のＮＷ機能に分類されていると仮定する。
【０３５４】
管理サーバ１１は、階層化論理経路生成部１１４によって生成された上記３つの経路について、経路情報生成部１１５にて経路情報を生成する。例えば、管理サーバ１１は、図１３の処理Ｓ１４において、図２１のフローチャートに例示する処理を実行することで、階層化された論理的な各経路に存在するノードＮｘに設定する経路情報を生成する。
【０３５５】
例えば、経路情報生成部１１５は、階層化された論理的な３つの経路の中に、経路情報を生成していない未処理の経路が存在するか否かをチェックする（処理Ｓ１４１）。
【０３５６】
未処理の経路が存在すれば（処理Ｓ１４１でＹＥＳ）、経路情報生成部１１５は、未処理の経路のいずれか１つを選択する（処理Ｓ１４２）。例えば、経路情報生成部１１５は、階層＃０経路＃１：［Ｎ１，Ｎ２］を選択する。
【０３５７】
経路情報生成部１１５は、選択した経路が最上位の階層＃０に位置する経路であるか否かをチェックする（処理Ｓ１４３）。階層＃０経路＃１は、最上位の階層に位置する経路であるから、処理Ｓ１４３でＹＥＳと判定される。
【０３５８】
したがって、経路情報生成部１１５は、階層＃０経路＃１に、経路情報を生成していない未処理ノードＮｘが存在するか否かをチェックする（処理Ｓ１４５）。この段階では、いずれのノードＮｘに対しても経路情報は生成されていないので、処理Ｓ１４５でＹＥＳと判定される。
【０３５９】
そのため、経路情報生成部１１５は、階層＃０経路＃１に所属するノードＮｘ（ｘ＝１又は２）のいずれか１つを選択する（処理Ｓ１４６）。
【０３６０】
そして、経路情報生成部１１５は、トンネル機能一覧テーブル１２２の情報を基に、選択したノードＮｘがトンネル機能（生成）であるか否かをチェックする（処理Ｓ１４７）。
【０３６１】
選択したノードＮｘがトンネル機能（生成）でなければ（処理Ｓ１４７でＮＯ）、経路情報生成部１１５は、既述の「ノード探索経路情報生成方法」と同様にして、当該ノードＮｘに設定する経路情報を生成してよい（処理Ｓ１５０）。例えば、階層＃０経路＃１に所属するノードＮ１が選択された場合に、「ノード探索経路情報生成方法」と同様にして経路情報が生成されてよい。
【０３６２】
一方、選択したノードＮｘが、トンネル機能（生成）であれば（処理Ｓ１４７でＹＥＳ）、経路情報生成部１１５は、当該ノードＮｘが、選択中の階層＃０経路＃１の最上流に位置するノードであるか否かをチェックする（処理Ｓ１４８）。
【０３６３】
例えば、トンネル機能（生成）であるノードＮ２が選択された場合、階層＃０経路＃１において最上流に位置するノードはノードＮ１であるため、処理Ｓ１４８においてＮＯと判定される。
【０３６４】
当該判定に応じて、経路情報生成部１１５は、ノードＮ２に設定する経路表＃１の経路情報を生成してよい（処理Ｓ１５１）。
【０３６５】
例えば、経路情報生成部１１５は、送信元アドレスを送信元ノードＡのアドレスＡとし、宛先アドレスを宛先ノードＺ２のアドレスＺ２とした経路情報を経路表＃１として生成してよい。
【０３６６】
経路表＃１において、送信元アドレスＡと宛先アドレスＺ２とのペアに対して、経路表＃２を参照する情報が設定されてよい（処理Ｓ１５１）。なお、経路表＃２の経路情報は、当該トンネル機能（生成）Ｎ２が所属する下位階層＃１の経路＃１が未処理の経路として処理Ｓ１４２で選択された場合に、処理Ｓ１４９で生成される。
【０３６７】
一方、選択したノードＮｘが、選択中の階層＃０経路＃１の最上流に位置するトンネル機能（生成）であれば（処理Ｓ１４８でＹＥＳ）、経路情報生成部１１５は、経路表＃２の経路情報を生成してよい（処理Ｓ１４９）。
【０３６８】
経路表＃２の経路情報は、「ノード探索経路情報生成方法」と同様にして生成されてよい。なお、図２０の例において、階層＃０経路＃１には、最上流に位置するトンネル機能（生成）は存在しないため、階層＃０経路＃１について経路表＃２の経路情報は生成されない。
【０３６９】
経路情報生成部１１５は、選択中の階層＃０経路＃１に未処理のノードＮｘが存在しなくなるまで（処理Ｓ１４５でＮＯと判定されるまで）、処理Ｓ１４５〜Ｓ１５１を繰り返し実施することで、未処理のノードＮｘを１つずつ選択して経路情報の生成を繰り返す。
【０３７０】
選択中の階層＃０経路＃１に未処理のノードＮｘが存在しなくなると（処理Ｓ１４５でＮＯ）、経路情報生成部１１５は、処理Ｓ１４１に戻り、未処理の経路が存在するか否かをチェックする。
【０３７１】
未処理の経路が存在すれば（処理Ｓ１４１でＹＥＳ）、経路情報生成部１１５は、未処理の経路のいずれか１つを選択する（処理Ｓ１４２）。例えば、経路情報生成部１１５は、階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４，Ｎ６，Ｎ７］を選択する。
【０３７２】
経路情報生成部１１５は、選択した経路が最上位の階層＃０に位置する経路であるか否かをチェックする（処理Ｓ１４３）。階層＃１経路＃１は、最上位の階層に位置する経路ではないから、処理Ｓ１４３でＮＯと判定される。
【０３７３】
この場合、管理サーバ１１は、例えばトンネル端判断部１１７によって、選択中の階層＃１経路＃１に、トンネル機能（生成）とトンネル機能（終端）とのペアの双方が存在するか否かを判定してよい（処理Ｓ１６１）。
【０３７４】
図２０の例では、階層＃１経路＃１に、一方のトンネル機能（生成）Ｎ２しか存在しないので、トンネル端判断部１１７は、管理サーバ１１の管理ドメインに、トンネルの両端の一方しか存在していないと判断してよい（処理Ｓ１６１でＮＯ）。
【０３７５】
よって、経路情報生成部１１５は、階層＃１経路＃１に所属するノードＮｘに設定する経路情報の宛先アドレスを、トンネル機能（生成）に分類されているＮＷ機能Ｎ２の、トンネル確立時に使用される対向トンネル機能Ｎ８のアドレスＰ８に設定してよい。
【０３７６】
ここで、対向トンネル機能Ｎ８のアドレス情報は、例えば、以下の２つの方法（ａ１）及び（ａ２）のいずれかによって取得されてよい。
【０３７７】
（ａ１）トンネル機能設定情報ＤＢ１２３から取得（図１１参照）
管理サーバ１１が、トンネル機能にアクセスしてトンネルを形成する処理を担当している場合、トンネル機能（生成）に対する設定情報には、トンネルを終端する対向トンネル機能（終端）のアドレス情報が含まれている。
【０３７８】
そのため、トンネル機能（生成）に対する設定情報がトンネル機能設定情報ＤＢ１２３に保存されていれば、経路情報生成部１１５は、当該ＤＢ１２３に保存されている、対向トンネル機能（終端）のアドレス情報を、経路情報の生成に用いることができる。
【０３７９】
（ａ２）トンネル機能のＶＭに保存された設定情報にアクセスして取得（図１１参照）
トンネル機能のＶＭに保存された設定情報とは、例示的に、当該ＶＭ内にコンフィグファイルとして保存されたトンネルに関する設定情報、あるいはトンネルに関する情報を取得するコマンドを実行した結果として得られるトンネル機能に関する情報である。
【０３８０】
トンネル機能のＶＭに保存された設定情報には、例示的に、トンネルの識別子、トンネルの暗号種別、暗号鍵、トンネルを終端する対向トンネル機能のアドレス情報、等が含まれてよい。
【０３８１】
管理サーバ１１がトンネルを形成する処理を担当しない場合でも、経路情報生成部１１５は、トンネル機能が動作するＶＭにアクセスすることで、当該ＶＭに保存された設定情報から、トンネルを終端する対向トンネル機能のアドレス情報を取得できる。
【０３８２】
経路情報生成部１１５は、選択中の階層＃１経路＃１において、最上流に位置するノードＮ２を送信元ノードに設定し、かつ、対向トンネル機能Ｎ８を宛先ノードに設定した上で（処理Ｓ１６２）、第１実施形態と同様の処理Ｓ１４５〜Ｓ１５１を実施してよい。
【０３８３】
別言すると、経路情報生成部１１５は、送信元ノードＮ２から対向トンネル機能Ｎ８に至る階層＃１経路＃１に対して「ノード探索経路情報生成方法」を適用して、階層＃１経路＃１に所属するノードＮｘの経路情報を生成してよい。
【０３８４】
ただし、ノードＮ４は、選択中の階層＃１経路＃１の最上流に位置しないトンネル機能（生成）であるため、経路情報生成部１１５は、処理Ｓ１５１にて、ノードＮ４について経路表＃１の経路情報を生成する。
【０３８５】
例えば、経路情報生成部１１５は、送信元アドレスをノードＮ２のアドレスＰ２とし、宛先アドレスを対向トンネル機能Ｎ８のアドレスＰ８とした、経路情報をノードＮ４の経路表＃１として生成してよい。当該経路表＃１において、アドレスＰ２とアドレスＰ８とのペアに対して、経路表＃２を参照する情報が設定されてよい。
【０３８６】
なお、ノードＮ４の経路表＃２に対する経路情報は、当該ノードＮ４が所属する下位階層＃２の経路＃１が未処理の経路として処理Ｓ１４２で選択された場合に、処理Ｓ１４９で生成される。
【０３８７】
また、選択中の階層＃１経路＃１において、トンネル機能（生成）であるノードＮ２は、最上流に位置するため、経路情報生成部１１５は、処理Ｓ１４９にて、ノードＮ２の経路表＃２に対する経路情報を生成してよい。経路表＃２に対する経路情報は、「ノード探索経路情報生成方法」と同様にして生成されてよい。
【０３８８】
例えば、送信元アドレスをノードＮ２のアドレスＰ２とし、宛先アドレスを対向トンネル機能Ｎ８のアドレスＰ８とした、経路情報が、ノードＮ２の経路表＃２に対する経路情報として生成されてよい。経路表＃２において、送信元アドレスＰ２と宛先アドレスＰ８とのペアに対し、ネクストホップアドレスがノードＮ３のアドレスＰ３に設定されてよい。
【０３８９】
また、選択中の階層＃１経路＃１において、最下流に位置するノードＮ７に設定する経路情報におけるネクストホップアドレスは、管理ドメイン外に位置するノードのアドレスに設定されてよい。
【０３９０】
管理ドメイン外に位置するノードのアドレス情報は、例えば、サービスチェイン要求受付部１１１（図１１参照）にて受信されるサービスチェイン要求に、追加の情報として含められてよい。
【０３９１】
あるいは、管理ドメイン外に位置するノードのアドレス情報は、管理サーバ１１の起動時等において、例えば入力装置２０３によって設定情報として管理サーバ１１に与えられてもよい。
【０３９２】
なお、サービスチェインを成すノードＮｘがルーティングプロトコルを動作させて、経路情報を自律的に生成することで、管理サーバ１１（例えば経路情報生成部１１５）は、管理ドメイン外に位置するノードのアドレス情報を取得しないこととしてもよい。
【０３９３】
この場合、管理サーバ１１は、ルーティングプロトコルを動作させたノードＮｘに設定する経路情報は生成しなくてよい。また、ルーティングプロトコルを動作させたノードＮｘが、トンネル機能（生成）である場合、管理サーバ１１は、当該トンネル機能（生成）のための経路表＃２に対する経路情報を生成しなくてよい。
【０３９４】
経路情報生成部１１５は、選択中の階層＃１経路＃１に未処理のノードＮｘが存在しなくなると（処理Ｓ１４５でＮＯ）、処理Ｓ１４１に戻り、未処理の経路が存在するか否かをチェックする。
【０３９５】
未処理の経路が存在すれば（処理Ｓ１４１でＹＥＳ）、経路情報生成部１１５は、未処理の経路のいずれか１つを選択する（処理Ｓ１４２）。例えば、経路情報生成部１１５は、階層＃２経路＃１：［Ｎ４，Ｎ５，Ｎ６］を選択する。
【０３９６】
経路情報生成部１１５は、選択した経路が最上位の階層＃０に位置する経路であるか否かをチェックする（処理Ｓ１４３）。階層＃２経路＃１は、最上位の階層に位置する経路ではないから、処理Ｓ１４３でＮＯと判定される。
【０３９７】
この場合、管理サーバ１１は、例えばトンネル端判断部１１７によって、選択中の階層＃２経路＃１に、トンネル機能（生成）とトンネル機能（終端）とのペアの双方が存在するか否かを判定してよい（処理Ｓ１６１）。
【０３９８】
図２０の例では、階層＃２経路＃１に、双方のトンネル機能（生成）Ｎ４及びトンネル機能（終端）Ｎ６が存在するので、トンネル端判断部１１７は、管理サーバ１１の管理ドメインに、トンネルの両端の双方が存在すると判断してよい（処理Ｓ１６１でＹＥＳ）。
【０３９９】
したがって、経路情報生成部１１５は、第１実施形態と同様にして、選択中の階層＃２経路＃１において、最上流に位置するノードＮ４を送信元ノードに設定し、かつ、最下流に位置するノードＮ６を宛先ノードに設定してよい（処理Ｓ１４４）。その上で、経路情報生成部１１５は、第１実施形態と同様に、処理Ｓ１４５〜Ｓ１５１を実施してよい。
【０４００】
経路情報生成部１１５は、選択中の階層＃２経路＃１に未処理のノードＮｘが存在しなくなるまで（処理Ｓ１４５でＮＯと判定されるまで）、処理Ｓ１４５〜Ｓ１５１を繰り返し実施することで、未処理のノードＮｘを１つずつ選択して経路情報の生成を繰り返す。
【０４０１】
選択中の階層＃１経路＃２に未処理のノードＮｘが存在しなくなると（処理Ｓ１４５でＮＯ）、経路情報生成部１１５は、処理Ｓ１４１に戻り、未処理の経路が存在するか否かをチェックする。
【０４０２】
上述した例では、階層＃２経路＃１についての処理が終了すれば、他に未処理の経路は存在しないので（処理Ｓ１４１でＮＯ）、経路情報生成部１１５は、経路情報の生成処理を終了してよい。
【０４０３】
（復路についての階層化論理経路情報の生成手順例）
上述した例は、送信元ノードＡから宛先ノードＺ２に向かう方向のデータ転送経路（往路）についての処理例である。宛先ノードＺ２から送信元ノードＡに向かう逆方向のデータ転送経路（復路）についてのノード配置は、図２２に例示する配置となる。
【０４０４】
図２２は、図１９の宛先ノードＺ２を送信元ノードに読み替え、図１９の送信元ノードＡを宛先ノードに読み替えた図に相当する。また、図２２において、管理ドメイン内に位置するノードＮ１〜Ｎ７は、それぞれ、図１９のノードＮ７〜Ｎ１に対応する。なお、図２２は、図１９に対する復路を示すから、図１９と図２２とでは、トンネル機能（生成）とトンネル機能（終端）との関係が逆転する。
【０４０５】
例えば、図１９において、往路のトンネル機能（生成）Ｎ２及びＮ４は、図２２において、復路のトンネル機能（終端）Ｎ６及びＮ４に対応する。また、図１９において、往路のトンネル機能（終端）Ｎ６及びＮ８は、図２２において、復路のトンネル機能（生成）Ｎ２及びＮ８に対応する。
【０４０６】
復路については、階層化論理経路生成部１１４において、探索により発見されたノードがトンネル機能（終端）であった場合に、現在の階層レベルＬを「−１」する。（Ｌ−１）の経路が存在しなければ、階層化論理経路生成部１１４は、新しい経路を生成して、当該経路に、探索により発見されたトンネル機能（終端）を所属させてよい。
【０４０７】
以下、図２２に例示する復路のノード配置に対して、階層化論理経路生成部１１４が、図２３に例示するような階層化論理経路情報を生成する手順の一例について説明する。また、図２４に、当該手順に対応するフローチャートの一例を示す。
【０４０８】
なお、図２４は、第１実施形態の図１５と対応する図であり、図１５と比較して、処理Ｓ１４０が処理Ｓ１４０ａに置き換えられている点が異なる。したがって、図２４において処理Ｓ１４０ａ以外の処理Ｓ１３１〜Ｓ１３９は、それぞれ、特に断らない限り、図１５にて説明した処理と同一若しくは同様でよい。
【０４０９】
（１）開始
階層化論理経路生成部１１４は、現在の階層レベルをＬ＝０に設定し、送信元ノードＡから宛先ノードＺに向かう方向に、データ転送経路を順に辿ってノードＮｘを探索する（図２４の処理Ｓ１３１及びＳ１３２に対応）。
【０４１０】
・現在の階層レベルＬ：０
・階層＃０経路＃１：［］
【０４１１】
（２）ノードＮ１発見
ノード探索により、ノードＮ１が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ１は、非トンネルＮＷ機能であると判断する。よって、階層化論理経路生成部１１４は、ノードＮ１は、現在の階層レベルＬ＝０の経路＃１を構成するノードと判断し、ノードＮ１を階層＃０経路＃１に所属させる（図２４の処理Ｓ１３５に対応）。
【０４１２】
・現在の階層レベルＬ：０
・階層＃０経路＃１：［Ｎ１］
【０４１３】
（３）ノードＮ２発見
次に、ノード探索により、ノードＮ２が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ２はトンネル機能（生成）であると判断する。
【０４１４】
よって、階層化論理経路生成部１１４は、ノードＮ２は現在の階層レベルＬ＝０の経路＃１を構成するノードと判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、ノードＮ２を階層＃０経路＃１に所属させてよい（図２４の処理Ｓ１３７に対応）。
【０４１５】
また、階層化論理経路生成部１１４は、ノードＮ２は現在の階層レベルＬを「＋１」した下位階層＃１を構成するノードでもあると判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、階層＃１の新しい経路＃１を生成し、ノードＮ２を当該階層＃１の経路＃１に所属させてよい（図２４の処理Ｓ１３８に対応）。
【０４１６】
・現在の階層レベルＬ：０＋１＝１
・階層＃０経路＃１：［Ｎ１，Ｎ２］
・階層＃１経路＃１：［Ｎ２］
【０４１７】
（４）ノードＮ３発見
次に、ノード探索により、ノードＮ３が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ３は非トンネルＮＷ機能であると判断する。
【０４１８】
よって、階層化論理経路生成部１１４は、ノードＮ３は現在の階層レベルＬ＝１の経路＃１を構成するノードであると判断して、ノードＮ３を階層＃１経路＃１に所属させてよい（図２４の処理Ｓ１３５に対応）。
【０４１９】
・現在の階層レベルＬ：１
・階層＃０経路＃１：［Ｎ１，Ｎ２］
・階層＃１経路＃１：［Ｎ２，Ｎ３］
【０４２０】
（５）ノードＮ４発見
次に、ノード探索により、ノードＮ４が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ４はトンネル機能（終端）であると判断する。
【０４２１】
よって、階層化論理経路生成部１１４は、ノードＮ４は現在の階層レベルＬ＝１の経路＃１を構成するノードと判断して、ノードＮ４を階層＃１経路＃１に所属させてよい（図１５の処理Ｓ１３９に対応）
【０４２２】
また、階層化論理経路生成部１１４は、ノードＮ４は現在の階層レベルＬ＝１を「−１」した上位階層＃０を構成するノードでもあると判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、ノードＮ４を当該階層＃０の経路＃１に所属させてよい（図２４の処理Ｓ１４０ａに対応）。
【０４２３】
・現在の階層レベルＬ：１−１＝０
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ４］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
【０４２４】
（６）ノードＮ５発見
次に、ノード探索により、ノードＮ５が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ５は非トンネルＮＷ機能であると判断する。
【０４２５】
よって、階層化論理経路生成部１１４は、ノードＮ５は現在の階層レベルＬ＝０の経路＃１を構成するノードであると判断して、ノードＮ５を階層＃０経路＃１に所属させてよい（図２４の処理Ｓ１３５に対応）。
【０４２６】
・現在の階層レベルＬ：０
・階層０転送経路１：［Ｎ１，Ｎ２，Ｎ４，Ｎ５］
・階層１転送経路１：［Ｎ２，Ｎ３，Ｎ４］
【０４２７】
（７）ノードＮ６発見
次に、ノード探索により、ノードＮ６が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ６はトンネル機能（終端）であると判断する。
【０４２８】
よって、階層化論理経路生成部１１４は、ノードＮ６は現在の階層レベルＬ＝０の経路＃１を構成するノードと判断して、ノードＮ６を階層＃０の経路＃１に所属させてよい（図２４の処理Ｓ１３９に対応）。
【０４２９】
また、階層化論理経路生成部１１４は、ノードＮ６は現在の階層レベルＬ＝０を「−１」した上位階層＃−１の経路を構成するノードでもあると判断する。ここで、階層＃−１の経路は未生成であるため、階層化論理経路生成部１１４は、階層＃−１の新しい経路＃１を生成して、階層＃−１経路＃１にノードＮ６を所属させてよい（図２４の処理Ｓ１４０ａに対応）。
【０４３０】
・現在の階層レベルＬ：０−１＝−１
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ４，Ｎ５］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
・階層＃−１経路＃１：［Ｎ６］
【０４３１】
（８）ノードＮ７発見
次に、ノード探索により、ノードＮ７が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ７は非トンネルＮＷ機能であると判断する。
【０４３２】
よって、階層化論理経路生成部１１４は、ノードＮ７は現在の階層レベルＬ＝−１の経路＃１を構成するノードであると判断して、ノードＮ７を階層＃−１の経路＃１に所属させてよい（図２４の処理Ｓ１３５に対応）。
【０４３３】
・現在の階層レベルＬ：−１
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ４，Ｎ５］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
・階層＃−１経路＃１：［Ｎ６，Ｎ７］
【０４３４】
以上のようにして、階層化論理経路生成部１１４は、図２２に例示したサービスチェインのノード配置（復路）について、図２３に例示するような階層化論理経路情報を生成することができる。
【０４３５】
なお、復路についての階層化論理経路情報に基づいて、経路情報生成部１１５が経路情報を生成する手順については、第１実施形態（例えば図１６参照）と同様でよい。
【０４３６】
以上のように、第２実施形態によれば、管理サーバ１１の管理ドメイン内に、トンネル生成機能とトンネル終端機能との一方しか存在しない場合であっても、トンネル区間に対して適切な経路情報を生成して設定することができる。
【０４３７】
（第２実施形態の変形例）
上述した第２実施形態では、例えば図２１の処理Ｓ１６２において、トンネル機能の一方しか存在しない経路におけるノードＮｘに設定する経路情報の宛先アドレスを、対向トンネル機能のアドレスに設定する例について説明した。
【０４３８】
別の方法として、処理Ｓ１６２において、トンネル機能の一方しか存在しない経路におけるノードＮｘに設定する経路情報の宛先アドレスは、デフォルトルートアドレスのような、あらゆるデータの転送経路にマッチするアドレス情報に設定してもよい。
【０４３９】
これにより、管理サーバ１１は、対向トンネル機能のアドレス情報を取得しなくてもよい。
【０４４０】
（第３実施形態）
上述した例では、或るトンネル区間内に更に別のトンネル区間が設定される「トンネルのネスティング」が、サービスチェインにおいて設定され得ることを想定している。
【０４４１】
「トンネルのネスティング」がサービスチェインに設定されないことを前提にしてよければ、既述のトンネル機能一覧テーブル１２２において、トンネル機能を生成と終端とを区別にせずに登録してよい。
【０４４２】
例えば、トンネル機能一覧テーブル１２２には、次表２に示すように、ＶＰＮ装置、ＧＲＥトンネル装置、及び、ＶｘＬＡＮトンネル装置の別に情報を登録しておけばよく、「ingress」及び「egress」の別に各装置の情報を登録しなくてよい。
【０４４３】
【表２】
2017085369.tif 000004
【０４４４】
したがって、トンネル機能一覧テーブル１２２を簡素化することができ、第１及び第２実施形態よりも少ない情報量でトンネル機能の分類が可能となる。トンネル機能一覧テーブル１２２の簡素化に伴って、トンネル機能分類部１１３による分類処理は、以下のように変更されてよい。
【０４４５】
例えば、トンネル機能分類部１１３は、データ転送経路のノード探索において最初に発見されたノードがトンネル機能一覧テーブル１２２に登録されているトンネル機能であれば、当該ノードをトンネル機能（生成）に分類、記憶してよい。
【０４４６】
また、トンネル機能分類部１１３は、データ転送経路のノード探索において発見されたノードがトンネル機能であり、かつ、前回に分類したトンネル機能がトンネル機能（終端）であれば、当該ノードをトンネル機能（生成）に分類、記憶してよい。
【０４４７】
更に、トンネル機能分類部１１３は、データ転送経路のノード探索において発見されたノードがトンネル機能であり、かつ、前回に分類したトンネル機能がトンネル機能（生成）であれば、当該ノードをトンネル機能（終端）に分類、記憶してよい。
【０４４８】
なお、データ転送経路のノード探索において発見されたノードがＮＷ機能一覧テーブル１２２に登録されていなければ、トンネル機能分類部１１３は、当該ノードを非トンネルＮＷ機能に分類、記憶してよい。
【０４４９】
トンネル機能分類部１１３による分類処理の変更に対応して、階層化論理経路生成部１１４による、階層化論理経路情報の生成処理も変更されてよい。
【０４５０】
なお、第３実施形態の管理サーバ１１の機能的な構成例は、第２実施形態（例えば図１８）と同様でよく、第３実施形態の管理サーバ１１のハードウェア構成例は、第１実施形態（例えば図１２）と同様でよい。
【０４５１】
図２７のフローチャートに、第３実施形態の階層化論理経路生成部１１４による、階層化論理経路情報の生成処理の一例を示す。図２７は、図１５のフローチャートと対応しており、図１５に比して、処理Ｓ１３４及び処理Ｓ１３６が、それぞれ、処理Ｓ１３４ｂ及び処理Ｓ１３６ｂに変更され、処理Ｓ１３６ｃ及び処理Ｓ１３６ｄが追加されている点が異なる。
【０４５２】
処理Ｓ１３４ｂにおいて、階層化論理経路生成部１１４は、経路計算部１１２で算出されたデータ転送経路を下流方向に辿って探索されたノードＮｘが、中継ノードであるか、あるいは、生成及び終端の別を問わずに非トンネルＮＷ機能であるかを判定する。
【０４５３】
判定の結果、ノードＮｘが中継ノード又は非トンネルＮＷ機能であった場合（処理Ｓ１３４ｂでＹＥＳ）、階層化論理経路生成部１１４は、当該ノードＮｘは現在の階層レベルＬの経路を構成するノードであると判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、当該ノードＮｘを現在の階層レベルＬの経路に所属させてよい（処理Ｓ１３５）。
【０４５４】
一方、ノードＮｘがトンネル機能であった場合（処理Ｓ１３４ｂでＮＯ）、階層化論理経路生成部１１４は、処理Ｓ１３６ｂの判定を行なってよい。処理Ｓ１３６ｂにおいて、階層化論理経路生成部１１４は、トンネル機能であるノードＮｘが、最初に発見したトンネル機能であるか、又は、前回発見したトンネル機能が「終端」であったかを判定してよい。
【０４５５】
処理Ｓ１３６ｂにおいて「ＹＥＳ」であれば、階層化論理経路生成部１１４は、発見したトンネル機能（ノードＮｘ）をトンネル機能（生成）と判断して判断結果を記憶部２１０に記憶してよい（処理Ｓ１３６ｃ）。
【０４５６】
処理Ｓ１３６ｂにおいて「ＮＯ」と判定されるのは、ノードＮｘが、最初に発見されたのではないトンネル機能であり、かつ、前回発見したトンネル機能がトンネル機能（生成）であった場合である。この場合、階層化論理経路生成部１１４は、当該ノードＮｘはトンネル機能（終端）であると判断して判断結果を記憶部２１０に記憶してよい（処理Ｓ１３６ｄ）。
【０４５７】
（動作例）
以下、第３実施形態の動作例として、図２５に例示するように「トンネルのネスティング」が設定されないサービスチェインに対して、管理サーバ１１が図２６に例示するような階層化論理経路情報を生成する手順の一例について説明する。
【０４５８】
図２５において、送信元ノードＡから宛先ノードＺに至るデータ転送経路には、８つのノードＮ１〜Ｎ８が存在している。ノードＮ１〜Ｎ７が、管理サーバ１１の管理ドメイン内に位置している。これに対し、ノードＮ８は、管理サーバの管理ドメイン外に位置している。
【０４５９】
また、ノードＮ２とノードＮ４との間に、トンネル＃１が形成され、ノードＮ６とノードＮ８との間にインターネットを経由するトンネル＃２が形成されている。トンネル＃１とトンネル＃２とは、「ネスティング」の関係に無い。
【０４６０】
ノードＮ２及びＮ４は、それぞれ、管理ドメイン内のトンネル機能（生成）及びトンネル機能（終端）に相当する。ノードＮ６は、管理ドメイン内のトンネル機能（生成）に相当し、ノードＮ８は、管理ドメイン外のトンネル機能（終端）に相当する。
【０４６１】
したがって、トンネル＃２の区間の経路が、管理ドメイン内に、ペアを成すトンネル機能の一方（例えば、トンネル生成機能）しか存在しない経路であり、トンネル＃１の区間の経路が、管理ドメイン内に、ペアを成すトンネル機能の双方が存在する経路である。
【０４６２】
図２５に例示するノード配置に対して、階層化論理経路生成部１１４が、階層化された論理的な経路の情報を生成する手順の一例を以下に説明する。
【０４６３】
（１）開始
階層化論理経路生成部１１４は、現在の階層レベルＬをＬ＝０に設定し、送信元ノードＡから宛先ノードＺに向かう方向に、データ転送経路を順に辿ってノードＮｘを探索する（図２７の処理Ｓ１３１及びＳ１３２に対応）。
【０４６４】
・現在の階層レベルＬ：０
・前回発見したトンネル機能：無し
・階層＃０経路＃１：［］
【０４６５】
（２）ノードＮ１発見
ノード探索により、ノードＮ１が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ１は、中継ノードであり非トンネルＮＷ機能であると判断する（図２７の処理Ｓ１３４ｂでＹＥＳ）。
【０４６６】
よって、階層化論理経路生成部１１４は、ノードＮ１は、現在の階層レベルＬ＝０の経路＃１を構成するノードと判断し、ノードＮ１を階層＃０経路＃１に所属させる（図２７の処理Ｓ１３５に対応）。
【０４６７】
・現在の階層レベルＬ：０
・前回発見したトンネル機能：無し
・階層０転送経路１：［Ｎ１］
【０４６８】
（３）ノードＮ２発見
次に、ノード探索により、ノードＮ２が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ２はトンネル機能であると判断する（図２７の処理Ｓ１３４ｂでＮＯ）。
【０４６９】
また、階層化論理経路生成部１１４は、前回発見したトンネル機能が「無し」であるため、ノードＮ２は探索により最初に発見されたトンネル機能である（図２７の処理１３６ｂでＹＥＳ）。
【０４７０】
したがって、階層化論理経路生成部１１４は、ノードＮ２はトンネル機能（生成）であると判断して判断結果を記憶部２１０に記憶してよい（図２７の処理１３６ｃに対応）。
【０４７１】
ノードＮ２はトンネル機能（生成）であると判断したので、階層化論理経路生成部１１４は、ノードＮ２は現在の階層レベルＬ＝０の経路＃１を構成するノードと判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、ノードＮ２を階層＃０経路＃１に所属させてよい（図２７の処理Ｓ１３７に対応）。
【０４７２】
また、階層化論理経路生成部１１４は、ノードＮ２は現在の階層レベルＬを「＋１」した下位階層＃１を構成するノードでもあると判断してよい。当該判断に応じて、階層化論理経路生成部１１４は、階層＃１の新しい経路＃１を生成し、ノードＮ２を当該階層＃１の経路＃１に所属させてよい（図２７の処理Ｓ１３８に対応）。
【０４７３】
・現在の階層レベルＬ：０＋１＝１
・前回発見したトンネル機能：無し→トンネル機能（生成）
・階層＃０経路＃１：［Ｎ１，Ｎ２］
・階層＃１経路＃１：［Ｎ２］
【０４７４】
（４）ノードＮ３発見
次に、ノード探索により、ノードＮ３が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ３は、中継ノードであり非トンネルＮＷ機能であると判断する（図２７の処理Ｓ１３４ｂでＹＥＳ）。
【０４７５】
よって、階層化論理経路生成部１１４は、ノードＮ３は現在の階層レベルＬ＝１の経路＃１を構成するノードであると判断して、ノードＮ３を階層＃１の経路＃１に所属させてよい（図２７の処理Ｓ１３５に対応）。
【０４７６】
・現在の階層レベルＬ：１
・前回発見したトンネル機能：トンネル機能（生成）
・階層＃０経路＃１：［Ｎ１，Ｎ２］
・階層＃１経路＃１：［Ｎ２，Ｎ３］
【０４７７】
（５）ノードＮ４発見
次に、ノード探索により、ノードＮ４が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ４はトンネル機能であると判断する。
【０４７８】
ここで、前回発見したトンネル機能は、「トンネル機能（生成）」である。そのため、階層化論理経路生成部１１４は、ノードＮ４はトンネル機能（終端）であると判断して（図２７の処理Ｓ１３６ｂでＮＯ）、判断結果を記憶部２１０に記憶してよい（図２７の処理Ｓ１３６ｄに対応）。
【０４７９】
また、階層化論理経路生成部１１４は、ノードＮ４は現在の階層レベルＬ＝１の経路＃１を構成するノードであると判断して、ノードＮ４を階層＃１の経路＃１に所属させてよい（図２７の処理Ｓ１３９に対応）。
【０４８０】
更に、階層化論理経路生成部１１４は、トンネル機能であるノードＮ４は現在の階層レベルＬ＝１を「−１」した上位階層＃０の経路＃１を構成するノードでもあると判断して、ノードＮ４を階層＃０の経路＃１に所属させてよい（図２７の処理Ｓ１４０に対応）。
【０４８１】
・現在の階層レベルＬ：１−１＝０
・前回発見したトンネル機能：トンネル機能（生成）→トンネル機能（終端）
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ４］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
【０４８２】
（６）ノードＮ５発見
次に、ノード探索により、ノードＮ５が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ５は中継ノードであり非トンネルＮＷ機能であると判断する（図２７の処理Ｓ１３４ｂでＹＥＳ）。
【０４８３】
よって、階層化論理経路生成部１１４は、ノードＮ５は現在の階層レベルＬ＝０の経路＃１を構成するノードであると判断して、ノードＮ５を階層＃０の経路＃１に所属させてよい（図２７の処理Ｓ１３５に対応）。
【０４８４】
・現在の階層レベルＬ：０
・前回発見したトンネル機能：トンネル機能（終端）
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ４，Ｎ５］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
【０４８５】
（７）ノードＮ６発見
次に、ノード探索により、ノードＮ６が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ６はトンネル機能であると判断する。
【０４８６】
ここで、前回発見したトンネル機能は、「トンネル機能（終端）」である。そのため、階層化論理経路生成部１１４は、ノードＮ６は、トンネル機能（生成）と判断して（図２７の処理Ｓ１３６ｂでＹＥＳ）、判断結果を記憶部２１０に記憶してよい（図２７の処理Ｓ１３６ｃに対応）。
【０４８７】
また、階層化論理経路生成部１１４は、トンネル機能であるノードＮ６は現在の階層レベルＬ＝０の経路＃１を構成するノードであると判断して、ノードＮ６を階層＃０の経路＃１に所属させてよい（図２７の処理Ｓ１３７に対応）。
【０４８８】
更に、階層化論理経路生成部１１４は、ノードＮ６は現在の階層レベルＬ＝０を「＋１」した下位階層＃１の新しい経路＃２を生成し、当該階層＃１の経路＃２に、ノードＮ６を所属させてよい（図２７の処理Ｓ１３８に対応）。
【０４８９】
・現在の階層レベルＬ：０＋１＝１
・前回発見したトンネル機能：トンネル機能（終端）→トンネル機能（生成）
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ４，Ｎ５，Ｎ６］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
・階層＃１経路＃２：［Ｎ６］
【０４９０】
（８）ノードＮ７発見
次に、ノード探索により、ノードＮ７が発見される。階層化論理経路生成部１１４は、トンネル機能一覧テーブル１２２の情報を基に、ノードＮ７は、中継ノードであり非トンネルＮＷ機能であると判断する（図２７の処理Ｓ１３４ｂでＹＥＳ）。
【０４９１】
よって、階層化論理経路生成部１１４は、ノードＮ７は現在の階層レベルＬ＝１の経路＃２を構成するノードであると判断して、ノードＮ７を階層＃１の経路＃２に所属させてよい（図２７の処理Ｓ１３５に対応）。
【０４９２】
・現在の階層レベルＬ：１
・前回発見したトンネル機能：トンネル機能（生成）
・階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ４，Ｎ５，Ｎ６］
・階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
・階層＃１経路＃２：［Ｎ６，Ｎ７］
【０４９３】
（９）終了
ノード探索により、宛先ノードＺが探索されるので、データ転送経路における全てのノードＮｘが探索されたことになる（図２７の処理Ｓ１３３でＮＯと判定される）。したがって、階層化論理経路生成部１１４は、階層化論理経路情報の生成処理を終了してよい。
【０４９４】
以上により、図２５のノード配置例（別言すると、図２２のデータ転送経路復路）に対して、最終的に、図２６に例示するように、以下の階層化された３つの論理的な経路の情報が、管理サーバ１１において生成される。生成された階層化論理経路情報は、例示的に、記憶部２１０（図１２参照）に記憶されてよい。
【０４９５】
１．階層＃０経路＃１：［Ｎ１，Ｎ２，Ｎ４，Ｎ５，Ｎ６］
２．階層＃１経路＃１：［Ｎ２，Ｎ３，Ｎ４］
３．階層＃１経路＃２：［Ｎ６］
【０４９６】
なお、上記の階層化論理経路情報を基にして、経路情報生成部１１５が経路情報を生成する手順の一例については、第２実施形態（変形例を含む。）と同じでよい。例えば、経路情報生成部１１５は、図２１に例示したフローチャートに従って、階層化された３つの論理的な経路に対して、それぞれ、経路情報を生成してよい。
【０４９７】
また、図２５のノード配置例において、宛先ノードＺから送信元ノードＡに向かう方向のデータ転送経路（復路）については、階層化論理経路生成部１１４は、例えば図２８に例示するフローチャートに従って動作すればよい。
【０４９８】
図２８は、図２７に比して、処理Ｓ１３６ｂが処理Ｓ１３６ｅに置き換わり、かつ、処理Ｓ１４０が図２４に例示した処理Ｓ１４０ａに置き換わっている点が異なる。その他の処理については、既述の処理と同一若しくは同様でよい。
【０４９９】
図２８の処理Ｓ１３６ｅにおいて、階層化論理経路生成部１１４は、トンネル機能であるノードＮｘが、最初に発見したトンネル機能であるか、又は、前回発見したトンネル機能が「生成」であったかを判定してよい。
【０５００】
処理Ｓ１３６ｅにおいて「ＹＥＳ」であれば、階層化論理経路生成部１１４は、発見したトンネル機能（ノードＮｘ）をトンネル機能（終端）であると判断して判断結果を記憶部２１０に記憶してよい（処理Ｓ１３６ｄ）。
【０５０１】
処理Ｓ１３６ｅにおいて「ＮＯ」と判定されるのは、ノードＮｘが、最初に発見されたのではないトンネル機能であり、かつ、前回発見したトンネル機能がトンネル機能（終端）であった場合である。この場合、階層化論理経路生成部１１４は、当該ノードＮｘはトンネル機能（生成）であると判断して判断結果を記憶部２１０に記憶してよい（処理Ｓ１３６ｃ）。
【０５０２】
処理Ｓ１４０ａにおいて、階層化論理経路生成部１１４は、トンネル機能（終端）であると判断して現在の階層レベルＬの経路に所属させたノードＮｘを、現在の階層レベルＬを「−１」した上位階層の経路にも所属させる。その際、上位階層の経路が未生成であれば、階層化論理経路生成部１１４は、上位階層の新しい経路を生成して、当該ノードＮｘを新しい経路に所属させてよい。
【０５０３】
以上のように、第３実施形態によれば、データ転送経路にトンネルのネスティングが無ければ、第１及び第２実施形態よりも少ない情報量でトンネル機能の分類が可能となるので、例えばトンネル機能一覧テーブル１２２のために用意する記憶容量を削減できる。
【０５０４】
また、階層化論理経路生成部１１４による階層化論理経路情報の生成処理、及び、経路情報生成部１１５による経路情報の生成処理の簡素化を図ることもできる。
【符号の説明】
【０５０５】
１  ネットワークシステム
１１  管理サーバ
１１１  サービスチェイン要求受付部
１１２  経路計算部
１１３  トンネル機能分類部
１１４  階層化論理経路生成部
１１５  経路情報生成部
１１６  経路情報送信部
１１７  トンネル端判断部
１２１  トポロジデータベース（ＤＢ）
１２２  トンネル機能一覧テーブル
１２３  トンネル機能設定情報ＤＢ
Ｎ１〜Ｎ１３  ノード（ＮＷ機能又は中継ノード）
Ｒ１〜Ｒ４  ルータ
【図１】
2017085369.tif 000005
【図２】
2017085369.tif 000006
【図３】
2017085369.tif 000007
【図４】
2017085369.tif 000008
【図５】
2017085369.tif 000009
【図６】
2017085369.tif 000010
【図７】
2017085369.tif 000011
【図８】
2017085369.tif 000012
【図９】
2017085369.tif 000013
【図１０】
2017085369.tif 000014
【図１１】
2017085369.tif 000015
【図１２】
2017085369.tif 000016
【図１３】
2017085369.tif 000017
【図１４】
2017085369.tif 000018
【図１５】
2017085369.tif 000019
【図１６】
2017085369.tif 000020
【図１７】
2017085369.tif 000021
【図１８】
2017085369.tif 000022
【図１９】
2017085369.tif 000023
【図２０】
2017085369.tif 000024
【図２１】
2017085369.tif 000025
【図２２】
2017085369.tif 000026
【図２３】
2017085369.tif 000027
【図２４】
2017085369.tif 000028
【図２５】
2017085369.tif 000029
【図２６】
2017085369.tif 000030
【図２７】
2017085369.tif 000031
【図２８】
2017085369.tif 000032