(57)【要約】【課題】転送遅延を抑制できるサービスチェイン構築方法等を提供する。【解決手段】管理サーバは、複数段配置された仮想通信機能群のうちの最前段の仮想通信機能群の前段に仮想分散機能群を配置するサービスチェインを、終端型の仮想通信機能群及び仮想分散機能群の配置位置に基づき、複数の区間に区分する。管理サーバは、区間毎に当該区間内の最前段又は最後段の仮想分散機能群又は仮想通信機能群のトラヒック割合に基づき、当該区間内の最前段の仮想分散機能群又は仮想通信機能群と最後段の仮想通信機能群又は仮想分散機能群との間の通信経路を決定する。管理サーバは、決定された通信経路を仮想領域上に配置された仮想分散機能群及び仮想通信機能群に設定する。【選択図】図６
2018037802.tif 000002
【特許請求の範囲】
【請求項１】
複数段配置された仮想通信機能群のうちの最前段の仮想通信機能群の前段に仮想分散機能群を配置するサービスチェインを、前記複数段の仮想通信機能群のうちの終端型の仮想通信機能群及び前記仮想分散機能群の配置位置に基づき、複数の区間に区分し、
前記区間毎に当該区間内の最前段又は最後段の前記仮想分散機能群又は前記仮想通信機能群のトラヒック割合に基づき、当該区間内の最前段の前記仮想分散機能群又は前記仮想通信機能群と当該区間内の最後段の仮想通信機能群又は前記仮想分散機能群との間の通信経路を決定し、
決定された前記通信経路を配置された前記仮想分散機能群及び前記仮想通信機能群に設定する
処理を実行することを特徴とするサービスチェイン構築方法。
【請求項２】
前記サービスチェイン内の配置順序で前記複数の区間の内の一つの区間を順次指定する
処理を実行することを特徴とする請求項１に記載のサービスチェイン構築方法。
【請求項３】
前記区間を指定する処理として、
前記サービスチェイン内の前記配置順序の最前段から最後段への昇順で前記区間を順次指定する
処理を実行することを特徴とする請求項２に記載のサービスチェイン構築方法。
【請求項４】
前記区間を指定する処理として、
前記サービスチェイン内の前記配置順序の最後段から最前段への降順で前記区間を順次指定する
処理を実行することを特徴とする請求項２に記載のサービスチェイン構築方法。
【請求項５】
前記通信経路を決定する処理として、
指定された区間内の前記最前段の前記仮想分散機能群又は前記仮想通信機能群のトラヒック割合に基づき、当該区間内の前記最前段の前記仮想分散機能群又は前記仮想通信機能群と当該区間内の前記最後段の前記仮想分散機能群又は前記仮想通信機能群との間の通信経路を決定する
処理を実行することを特徴とする請求項３に記載のサービスチェイン構築方法。
【請求項６】
前記通信経路を決定する処理として、
指定された区間内の前記最後段の前記仮想分散機能群又は前記仮想通信機能群のトラヒック割合に基づき、当該区間内の前記最前段の前記仮想分散機能群又は前記仮想通信機能群と当該区間内の前記最後段の前記仮想分散機能群又は前記仮想通信機能群との間の通信経路を決定する
処理を実行することを特徴とする請求項４に記載のサービスチェイン構築方法。
【請求項７】
前記指定された区間内の前記最前段の前記仮想分散機能群又は前記仮想通信機能群の前記トラヒック割合として、当該区間の前段の区間内の前記最後段の前記仮想分散機能群又は前記仮想通信機能群の前記トラヒック割合を設定する
処理を実行することを特徴とする請求項５に記載のサービスチェイン構築方法。
【請求項８】
前記指定された区間内の前記最後段の前記仮想分散機能群又は前記仮想通信機能群の前記トラヒック割合として、当該区間の後段の区間内の前記最前段の前記仮想分散機能群又は前記仮想通信機能群の前記トラヒック割合を設定する
処理を実行することを特徴とする請求項６に記載のサービスチェイン構築方法。
【請求項９】
複数段配置された仮想通信機能群のうちの最前段の仮想通信機能群の前段に仮想分散機能群を配置するサービスチェインを、前記複数段の仮想通信機能群のうちの終端型の仮想通信機能群及び前記仮想分散機能群の配置位置に基づき、複数の区間に区分する区分決定部と、
前記区間毎に当該区間内の最前段又は最後段の前記仮想分散機能群又は前記仮想通信機能群のトラヒック割合に基づき、当該区間内の最前段の前記仮想分散機能群又は前記仮想通信機能群と当該区間内の最後段の仮想通信機能群又は前記仮想分散機能群との間の通信経路を決定する経路決定部と、
決定された前記通信経路を前記仮想領域上に配置された前記仮想分散機能群及び前記仮想通信機能群に設定する設定部と
を有することを特徴とするサーバ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービスチェイン構築方法及びサーバ装置に関する。
【背景技術】
【０００２】
最近のネットワークでは、拠点から外部のサイト、又は、拠点から他の拠点にアクセスする際に、要求に応じてＦＷ（FireWall）やＰｒｏｘｙ等のＮＷ（NetWork）機能を通信経路上に仮想的に配置してパケットを転送するサービスチェインシステムがある。仮想的なＮＷ機能を経由する通信経路をサービスチェインという。
【０００３】
従来、ＮＷ機能は、ＮＷサーバ等の物理ＮＷ装置で機能していた。しかしながら、近年の汎用サーバの性能向上によって汎用サーバ上のソフトウェア処理でもＮＷ機能が機能できる。従って、汎用サーバの仮想化環境の仮想マシン上でＮＷ機能のプログラムを動作させる形態でＮＷ機能の運用を開始している。尚、仮想マシン上で動作するＮＷに関するソフトウェア処理を仮想ＮＷ機能(Virtual  Network  Function：ＶＮＦ)という。
【０００４】
しかしながら、データ転送等のＮＷ関連の処理が物理ＮＷ装置から汎用サーバ上のソフトウェア処理のＶＮＦに運用形態が移行した結果、データ転送の処理性能が低下する事態が生じている。そこで、複数のプログラムを並列に実行し、複数のサーバ上に仮想マシンを並列動作してスケールアウトすることで、データ転送の負荷を分散し、データ転送の処理性能を改善している。
【０００５】
図３２は、サービスチェインの配置構成の一例を示す説明図である。図３２に示すサービスチェイン２００は、例えば、ＦＷ２０１Ａ、ＩＤＳ（Intrusive  Detection  System）２０１Ｂ及びＰｒｏｘｙ２０１Ｃ等の各ＶＮＦ２０１を配置している。更に、サービスチェイン２００は、各ＶＮＦ２０１の前段にトラヒックを分散するＬＢ（Load  Balancer）２０２を仮想的に配置している。ＬＢ２０２は、次段に配置する各ＶＮＦ２０１にトラヒックを分配する。その結果、各ＶＮＦ２０１の転送処理の負荷を分配することで、ソフトウェア化による処理性能の低下を抑制している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０１５−１５４３２５号公報
【特許文献２】特開２０１６−４６６０３号公報
【特許文献３】国際公開第２０１４／２０８６６１号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、サービスチェイン２００を構成するＶＮＦ２０１では、ＶＮＦ２０１毎にＬＢ２０２を要し、ＬＢ２０２を通過する毎に転送遅延が生じる。しかも、サービスチェイン２００は、多数のＬＢ２０２を要するため、汎用サーバ上の仮想領域のリソースが使われることになる。
【０００８】
一つの側面では、転送遅延を抑制できるサービスチェイン構築方法及びサーバ装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
一つの態様の方法は、複数段配置された仮想通信機能群のうちの最前段の仮想通信機能群の前段に仮想分散機能群を配置するサービスチェインを、終端型の仮想通信機能群及び仮想分散機能群の配置位置に基づき、複数の区間に区分する。方法は、区間毎に当該区間内の最前段又は最後段の仮想分散機能群又は仮想通信機能群のトラヒック割合に基づき、当該区間内の最前段の仮想分散機能群又は仮想通信機能群と当該区間内の最後段の仮想通信機能群又は仮想分散機能群との間の通信経路を決定する。更に、方法は、決定された通信経路を配置された仮想分散機能群及び仮想通信機能群に設定する。
【発明の効果】
【００１０】
一つの側面として、転送遅延を抑制できる。
【図面の簡単な説明】
【００１１】
【図１】図１は、サービスチェインシステムの一例を示す説明図である。
【図２】図２は、管理サーバのハードウェア構成の一例を示す説明図である。
【図３】図３は、サービスチェインの一例を示す説明図である。
【図４】図４は、第１のサービスチェイン構築処理に関わる管理サーバの処理動作の一例を示すフローチャートである。
【図５】図５は、サービスチェイン内の集約ＬＢ群のトラヒック分散方法の一例を示す説明図である。
【図６】図６は、実施例１のサービスチェインの一例を示す説明図である。
【図７】図７は、実施例１の管理サーバのプロセッサの機能構成の一例を示す説明図である。
【図８Ａ】図８Ａは、ＬＢ区間内の終端宛先の一例を示す説明図である。
【図８Ｂ】図８Ｂは、ＬＢ区間内の転送経路の一例を示す説明図である。
【図８Ｃ】図８Ｃは、ＬＢ区間内の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図９Ａ】図９Ａは、第１のＬＢレス区間内の終端宛先の一例を示す説明図である。
【図９Ｂ】図９Ｂは、第１のＬＢレス区間内の転送経路の一例を示す説明図である。
【図９Ｃ】図９Ｃは、第１のＬＢレス区間内の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図１０Ａ】図１０Ａは、第２のＬＢレス区間内の終端宛先の一例を示す説明図である。
【図１０Ｂ】図１０Ｂは、第２のＬＢレス区間内の転送経路の一例を示す説明図である。
【図１０Ｃ】図１０Ｃは、第２のＬＢレス区間内の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図１１】図１１は、第２のサービスチェイン構築処理に関わる管理サーバの処理動作の一例を示すフローチャートである。
【図１２】図１２は、ＬＢ区間内の転送経路及びＶＮＦ群のトラヒック割合の一例を示す説明図である。
【図１３】図１３は、実施例２の管理サーバのプロセッサの機能構成の一例を示す説明図である。
【図１４Ａ】図１４Ａは、第２のＬＢレス区間内の最後段の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図１４Ｂ】図１４Ｂは、第２のＬＢレス区間内の転送経路の一例を示す説明図である。
【図１４Ｃ】図１４Ｃは、第２のＬＢレス区間内の最前段の終端のＶＮＦ群のトラヒック割合（送信量）の一例を示す説明図である。
【図１５Ａ】図１５Ａは、第１のＬＢレス区間内の最後段の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図１５Ｂ】図１５Ｂは、第１のＬＢレス区間内の転送経路の一例を示す説明図である。
【図１５Ｃ】図１５Ｃは、第１のＬＢレス区間内の最前段の終端のＶＮＦ群のトラヒック割合（送信量）の一例を示す説明図である。
【図１６Ａ】図１６Ａは、ＬＢ区間内の最後段の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図１６Ｂ】図１６Ｂは、ＬＢ区間内の転送経路の一例を示す説明図である。
【図１６Ｃ】図１６Ｃは、ＬＢ区間内の最前段の終端のＶＮＦ群のトラヒック割合（送信量）の一例を示す説明図である。
【図１７】図１７は、第３のサービスチェイン構築処理に関わる管理サーバの処理動作の一例を示すフローチャートである。
【図１８】図１８は、実施例３のサービスチェインの一例を示す説明図である。
【図１９】図１９は、実施例３の管理サーバのプロセッサの機能構成の一例を示す説明図である。
【図２０Ａ】図２０Ａは、第２のＬＢ区間内の終端宛先の一例を示す説明図である。
【図２０Ｂ】図２０Ｂは、第２のＬＢ区間内の転送経路の一例を示す説明図である。
【図２０Ｃ】図２０Ｃは、第２のＬＢ区間内の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図２１Ａ】図２１Ａは、第３のＬＢレス区間内の終端宛先の一例を示す説明図である。
【図２１Ｂ】図２１Ｂは、第３のＬＢレス区間内の転送経路の一例を示す説明図である。
【図２１Ｃ】図２１Ｃは、第３のＬＢレス区間内の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図２２Ａ】図２２Ａは、第４のＬＢレス区間内の終端宛先の一例を示す説明図である。
【図２２Ｂ】図２２Ｂは、第４のＬＢレス区間内の転送経路の一例を示す説明図である。
【図２２Ｃ】図２２Ｃは、第４のＬＢレス区間内の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図２３】図２３は、第４のサービスチェイン構築処理に関わる管理サーバの処理動作の一例を示すフローチャートである。
【図２４】図２４は、実施例４の管理サーバのプロセッサの機能構成の一例を示す説明図である。
【図２５Ａ】図２５Ａは、第４のＬＢレス区間内の最後段の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図２５Ｂ】図２５Ｂは、第４のＬＢレス区間内の転送経路の一例を示す説明図である。
【図２５Ｃ】図２５Ｃは、第４のＬＢレス区間内の最前段の終端のＶＮＦ群のトラヒック割合（送信量）の一例を示す説明図である。
【図２６Ａ】図２６Ａは、第３のＬＢレス区間内の最後段の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図２６Ｂ】図２６Ｂは、第３のＬＢレス区間内の転送経路の一例を示す説明図である。
【図２６Ｃ】図２６Ｃは、第３のＬＢレス区間内の最前段の終端のＶＮＦ群のトラヒック割合（送信量）の一例を示す説明図である。
【図２７Ａ】図２７Ａは、第２のＬＢ区間内の最後段の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図２７Ｂ】図２７Ｂは、第２のＬＢ区間内の転送経路の一例を示す説明図である。
【図２７Ｃ】図２７Ｃは、第２のＬＢ区間内の最前段の終端のＶＮＦ群のトラヒック割合（送信量）の一例を示す説明図である。
【図２８Ａ】図２８Ａは、第２のＬＢレス区間内の最後段の終端のＶＮＦ群のトラヒック割合（受信量）の一例を示す説明図である。
【図２８Ｂ】図２８Ｂは、第２のＬＢレス区間内の転送経路の一例を示す説明図である。
【図２８Ｃ】図２８Ｃは、第２のＬＢレス区間内の最前段の終端のＶＮＦ群のトラヒック割合（送信量）の一例を示す説明図である。
【図２９】図２９は、第５のサービスチェイン構築処理に関わる管理サーバの処理動作の一例を示すフローチャートである。
【図３０Ａ】図３０Ａは、ＬＢ区間内の転送経路及びＶＮＦ群のトラヒック割合の一例を示す説明図である。
【図３０Ｂ】図３０Ｂは、ＬＢ区間内の転送経路及びＶＮＦ群のトラヒック割合の一例を示す説明図である。
【図３１】図３１は、サービスチェイン構築プログラムを実行する情報処理装置の一例を示す説明図である。
【図３２】図３２は、サービスチェインの配置構成の一例を示す説明図である。
【発明を実施するための形態】
【００１２】
以下、図面に基づいて、本願の開示するサービスチェイン構築方法及びサーバ装置の実施例を詳細に説明する。尚、本実施例により、開示技術が限定されるものではない。また、以下に示す実施例は、矛盾を起こさない範囲で適宜組み合わせても良い。
【００１３】
図１は、サービスチェインシステム１の一例を示す説明図である。図１に示すサービスチェインシステム１は、キャリアＮＷ２と、管理サーバ３と、端末装置４とを有する。キャリアＮＷ２は、例えば、企業の本社、支社や海外拠点等の拠点２Ａと接続するＮＷである。キャリアＮＷ２は、例えば、複数の汎用サーバ２Ｂで構成し、各汎用サーバ２Ｂのリソース領域にある仮想領域で稼働する仮想ＮＷ１１と、その仮想ＮＷ１１上に配置した複数のＶＮＦ１２とを有する。管理サーバ３は、拠点２Ａ間で通信するサービスチェインを仮想領域に確立する。
【００１４】
ＶＮＦ１２は、例えば、Ｗｅｂキャッシュ１２Ａ、パケットモニタリング１２Ｂ、ＦＷ１２Ｃ、高速ＷＡＮ１２Ｄ、アドレス変換部１２Ｅ、ＶＰＮ１２Ｆ、ＩＤＳやＰｒｏｘｙ等の仮想ＮＷ機能である。Ｗｅｂキャッシュ１２Ａは、図示せぬＷｅｂサーバとのキャッシュデータを格納するＮＷ機能である。パケットモニタリング１２Ｂは、通信経路上のパケットの状態を監視するＮＷ機能である。ＦＷ１２Ｃは、不正アクセスを防止するＮＷ機能である。高速ＷＡＮ１２Ｄは、高速ＷＡＮ等のＮＷ機能である。アドレス変換部１２Ｅは、アドレスを変換するＮＷ機能である。ＶＰＮ１２Ｆは仮想専用線等のＮＷ機能である。ＩＤＳは、外部からの不正侵入を検知するＮＷ機能である。Ｐｒｏｘｙは、代理サーバのＮＷ機能である。ＶＮＦ１２は、汎用サーバ２Ｂ上の仮想領域に仮想的に配置した仮想通信機能である。
【００１５】
管理サーバ３は、端末装置４からサービスチェインの構成要求に応じて、キャリアＮＷ２内の各汎用サーバ２Ｂの仮想領域上に所望の仮想ＮＷ１１及びＶＮＦ１２を配置するサーバ装置である。端末装置４は、例えば、ＦＷ４Ａ、高速ＷＡＮ４ＢやＶＰＮ４Ｃ等を経由して管理サーバ３と接続し、管理サーバ３に対してサービスチェインの構成要求を指示する、例えば、システム管理者等の端末装置である。尚、構成要求は、パケット転送の通信経路上に１台若しくは複数台のＶＮＦ１２の配置を要求するコマンドである。また、構成要求は、ＶＮＦ１２及びＬＢ１３のインスタンス数を指定する場合の他に、ＶＮＦ１２のインスタンス数のみを指定する場合もある。また、構成要求には、例えば、サービスチェインの要求品質を指定する場合もある。管理サーバ３は、要求品質を指定した構成要求を検出した場合、構成要求で指定された所望の機能や負荷状況からＶＮＦ１２やＬＢ１３のインスタンス数を決定する。
【００１６】
図２は、管理サーバ３のハードウェア構成の一例を示す説明図である。図２に示す管理サーバ３は、例えば、ＮＷサーバとしての専用コンピュータや、汎用コンピュータに相当する。管理サーバ３は、ＮＷインタフェース３１と、入力装置３２と、出力装置３３と、補助記憶装置３４と、主記憶装置３５と、プロセッサ３６とを有する。ＮＷインタフェース３１は、キャリアＮＷ２と接続すると共に、ＶＮＦ１２と接続する通信インタフェースである。尚、ＮＷインタフェース３１は、例えば、有線又は無線の通信を司る通信インタフェースである。ＮＷインタフェース３１は、例えば、ＮＩＣ(Network  Interface  Card)やＬＡＮ(Local  Area  Network)カード等の通信カードである。
【００１７】
入力装置３２は、各種情報を入力する、例えば、キーボードやマウス等のポインティングデバイス等の入力インタフェースである。出力装置３３は、各種情報を出力する、例えば、音声出力装置や表示装置等の出力インタフェースである。補助記憶装置３４は、例えば、各種プログラムや、プロセッサ３６が使用するデータ等の各種情報を記憶する、例えば、ＥＰＲＯＭ（Erasable  Programmable  ROM）、又はハードディスクドライブ（Hard  Disc  Drive）等の不揮発性のメモリである。更に、補助記憶装置３４は、例えば、オペレーティングシステム（ＯＳ）や、その他様々なアプリケーションプログラムを保持する領域である。
【００１８】
主記憶装置３５は、各種情報、例えば、補助記憶装置３４に格納されているプログラムをロードする領域や作業領域を提供する、例えば、ＲＡＭ（Random  Access  Memory）等の半導体メモリである。プロセッサ３６は、管理サーバ３全体を制御する、例えば、ＣＰＵ（Central  Processing  Unit）等の制御部である。プロセッサ３６は、補助記憶装置３４又は可搬記録媒体に保持されたＯＳや様々なアプリケーションプログラムを主記憶装置３５にロードして実行することで各種処理機能を実行する。プロセッサ３６は、１個に限定されるものではなく、複数個設けても良い。
【００１９】
図３は、サービスチェイン２０の一例を示す説明図である。図３に示すサービスチェイン２０は、複数のＶＮＦ群２１と、ＬＢ群２２とを有する。複数のＶＮＦ群２１は、ＶＮＦ＃１と、ＶＮＦ＃２と、ＶＮＦ＃３とを所定順序に配置する。ＶＮＦ＃１は、例えば、ＦＷ１Ａ〜ＦＷ１Ｄを有する。ＶＮＦ＃２は、例えば、ＩＤＳ１Ａ〜ＩＤＳ１Ｃを有する。ＶＮＦ＃３は、例えば、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｃを有する。ＬＢ群２２は、例えば、ＬＢ１Ａ及びＬＢ１Ｂを有する。
【００２０】
プロセッサ３６は、構成要求を検出すると、構成要求内で指定する各ＶＮＦ群２１内のＶＮＦ１２のインスタンス数に基づき、所定順序の内、最前段のＶＮＦ群２１、すなわちＶＮＦ＃１の前段に配置する集約ＬＢ１３Ａの数を決定する。尚、所定順序は、例えば、前段からＶＮＦ＃１（ＦＷ）、ＶＮＦ＃２（ＩＤＳ）及びＶＮＦ＃３（Ｐｒｏｘｙ）の順に配置する順序とする。
【００２１】
プロセッサ３６は、構成要求を検出すると、構成要求に基づき、ＶＮＦ群２１へのトラヒックを分配するＬＢ１３の特性の内、上位レイヤ「Ｌ４レベル」のＬＢ群２２（ＶＮＦ＃３に対するＬＢ１３（Ｌ４））を特定する。尚、Ｌ４レベル（ＴＣＰセッション）単位の分配処理は、Ｌ３レベル（ＩＰ）単位の分配処理も実行できる。プロセッサ３６は、上位レイヤ「Ｌ４レベル」の分配処理を実行するＬＢ群２２の内、ＬＢインスタンス数が最大数となるＬＢ１３を特定し、そのＬＢインスタンス数を集約ＬＢ１３Ａのインスタンス数と決定する。例えば、プロセッサ３６は、ＶＮＦ＃３のＬＢインスタンス数がＬ４レベルＬＢの２個の場合、そのＬ４レベルＬＢの２個を集約ＬＢ１３Ａの数として決定する。尚、Ｌ４レベルのＶＮＦ群２１を特定する理由は、Ｌ４レベル（ＴＣＰセッション）単位の処理でＬ３レベル（ＩＰ）単位の処理も実行できるためである。
【００２２】
更に、プロセッサ３６は、ＶＮＦ＃１、ＶＮＦ＃２及びＶＮＦ＃３の配置順序としてトポロジ構成を決定する。プロセッサ３６は、図３に示すようにサービスチェイン２０の最前段にＶＮＦ＃１、ＶＮＦ＃１の次段にＶＮＦ＃２、ＶＮＦ＃２の次段にＶＮＦ＃３を配置し、更に、最前段のＶＮＦ＃１の前段に集約ＬＢ１３Ａを配置するトポロジ構成を決定する。尚、トポロジ構成は、最前段に集約ＬＢ１３Ａ内のＬＢ１Ａ及びＬＢ１Ｂ、次段にＶＮＦ＃１内のＦＷ１Ａ〜ＦＷ１Ｄ、その次段にＶＮＦ＃２内のＩＤＳ１Ａ〜ＩＤＳ１Ｃ、その次段にＶＮＦ＃３内のＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｃを配置する構成である。
【００２３】
プロセッサ３６は、集約ＬＢ１３Ａから複数のＶＮＦ群２１の内、終端のＶＮＦ群２１内の各ＶＮＦ１２までのトラヒックが分散する、集約ＬＢ１３Ａのトラヒック量の分配割合及びＶＮＦ１２のトラヒック割合を決定する。プロセッサ３６は、複数のＶＮＦ群２１の内、終端となるＶＮＦ群２１内のＶＮＦ１２を決定すると共に、集約ＬＢ１３Ａから各終端のＶＮＦ１２までの最適経路を決定する。
【００２４】
プロセッサ３６は、集約ＬＢ１３ＡがＬ４レベルのＬＢであるため、集約ＬＢ１３ＡからＬ４レベルが終端となる終端のＶＮＦ群２１として、例えば、ＶＮＦ＃３のＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｃと決定する。集約ＬＢ１３Ａの「ＬＢ１Ａ」は、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｃの３本の経路を決定する。更に、集約ＬＢ１３Ａの「ＬＢ１Ｂ」も、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｃの３本の経路を決定する。集約ＬＢ１３Ａの「ＬＢ１Ａ」及び「ＬＢ１Ｂ」は、終端のＶＮＦ１２の台数分、トラヒックを分散できる終端型のＬＢである。例えば、ＬＢ１Ａは、終端のＶＮＦ群２１がＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｃの３台のため、トラヒックを３経路に分散できる。
【００２５】
プロセッサ３６は、集約ＬＢ１３Ａの「ＬＢ１Ａ」から終端のＶＮＦ１２、すなわちＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｃまでの３経路で、例えば、ダイクストラ法等の最短経路コスト法において計算済み経路上のリンクコストを高くして最短経路計算を行う。プロセッサ３６は、ＬＢ１Ａから終端のＶＮＦ１２までの３経路の最短経路計算で、ＶＮＦ＃１及びＶＮＦ＃２を経由する経路が分散した最適経路Ｒ１、Ｒ３及びＲ５を決定する。プロセッサ３６は、集約ＬＢ１３Ａの「ＬＢ１Ｂ」から終端のＶＮＦ１２、すなわちＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｃまでの３経路で、最短経路コスト法の利用とリンクコスト加算を行う。そして、プロセッサ３６は、その計算によってＶＮＦ＃１及びＶＮＦ＃２を経由する経路が分散した最適経路Ｒ２、Ｒ４及びＲ６を決定する。
【００２６】
プロセッサ３６は、各最適経路Ｒ１〜Ｒ６に配置するＶＮＦ群２１の内、ＶＮＦ１２のインスタンス数が最大数のＶＮＦ群２１の各ＶＮＦ１２のトラヒック量が均等に分散すべく、集約ＬＢ１３Ａから各最前段のＶＮＦ１２へのトラヒック量の分配割合を決定する。プロセッサ３６は、ＶＮＦ＃１〜ＶＮＦ＃３の内、最大個数のＶＮＦ１２、すなわちＶＮＦ＃１（ＦＷ１Ａ〜ＦＷ１Ｄ）を特定する。プロセッサ３６は、６本の最適経路の内、ＶＮＦ＃１のＦＷ１Ａ〜ＦＷ１Ｄのトラヒック量が均等になるように集約ＬＢ１３Ａ「ＬＢ１Ａ」及び「ＬＢ１Ｂ」からＶＮＦ＃１内のＦＷ１Ａ〜ＦＷ１Ｄに分配する分配割合を算出する。サービスチェイン２０全体のトラヒック量を１とした場合、ＬＢ１ＡからＦＷ１Ａへの分配割合は全体トラヒック量の１／４、ＬＢ１ＡからＦＷ１Ｂへの分配割合は全体トラヒック量の１／８、ＬＢ１ＡからＦＷ１Ｃへの分配割合は全体トラヒック量の１／８となる。更に、ＬＢ１ＢからＦＷ１Ｄへの分配割合は全体トラヒック量の１／４、ＬＢ１ＢからＦＷ１Ｂへの分配割合は全体トラヒック量の１／８、ＬＢ１ＢからＦＷ１Ｃへの分配割合は全体トラヒック量の１／８となる。その結果、ＦＷ１Ａ〜ＦＷ１Ｄは、各々、１／４のトラヒック量が均等に割り当てられることになる。
【００２７】
プロセッサ３６は、最適経路毎に各ＶＮＦ１２へのトラヒック量のトラヒック割合が最適となるように各ＶＮＦ１２から次段のＶＮＦ１２へのトラヒック割合を算出する。プロセッサ３６は、集約ＬＢ１３ＡのＬＢ１Ａ及びＬＢ１Ｂから各ＶＮＦ＃１内の各ＦＷ１Ａ〜ＦＷ１Ｄのトラヒック量の分配割合を決定した後、先に決定した最適経路Ｒ１〜Ｒ６上の転送経路を決定する。更に、プロセッサ３６は、その転送経路上の各ＶＮＦ１２への分配割合を決定する。転送経路は、最適経路の内、ＶＮＦ１２が次段のＶＮＦ１２にパケットを転送する経路である。
【００２８】
集約ＬＢ１３ＡのＬＢ１Ａの転送経路は、Ｐｒｏｘｙ１Ａ宛のパケットをＦＷ１Ａに転送する経路、Ｐｒｏｘｙ１Ｂ宛のパケットをＦＷ１Ｂに転送する経路、Ｐｒｏｘｙ１Ｃ宛のパケットをＦＷ１Ｃに転送する経路となる。集約ＬＢ１３ＡのＬＢ１Ｂの転送経路は、Ｐｒｏｘｙ１Ａ宛のパケットをＦＷ１Ｂに転送する経路、Ｐｒｏｘｙ１Ｂ宛のパケットをＦＷ１Ｃに転送する経路、Ｐｒｏｘｙ１Ｃ宛のパケットをＦＷ１Ｄに転送する経路となる。
【００２９】
更に、ＦＷ１Ａの転送経路は、Ｐｒｏｘｙ１Ａ宛のパケットをＩＤＳ１Ａに転送する経路となる。ＦＷ１Ｂの転送経路は、Ｐｒｏｘｙ１Ａ宛のパケットをＩＤＳ１Ａに転送する経路及び、Ｐｒｏｘｙ１Ｂ宛のパケットをＩＤＳ１Ｂに転送する経路となる。ＦＷ１Ｃの転送経路は、Ｐｒｏｘｙ１Ｂ宛のパケットをＩＤＳ１Ｂに転送する経路及び、Ｐｒｏｘｙ１Ｃ宛のパケットをＩＤＳ１Ｃに転送する経路となる。ＦＷ１Ｄの転送経路は、Ｐｒｏｘｙ１Ｃ宛のパケットをＩＤＳ１Ｃに転送する経路となる。
【００３０】
更に、ＩＤＳ１Ａの転送経路は、Ｐｒｏｘｙ１Ａ宛のパケットをＰｒｏｘｙ１Ａに転送する経路となる。ＩＤＳ１Ａの転送経路は、Ｐｒｏｘｙ１Ｂ宛のパケットをＰｒｏｘｙ１Ｂに転送する経路となる。ＩＤＳ１Ｃの転送経路は、Ｐｒｏｘｙ１Ｃ宛のパケットをＰｒｏｘｙ１Ｃに転送する経路となる。更に、プロセッサは、各転送経路の各ＶＮＦ１２のトラヒック量が最適となるように各ＶＮＦ１２のトラヒック割合を決定する。尚、各ＶＮＦ１２のトラヒック割合は、例えば、Weighted  Round  Robin方式やWeighted  HASH振り分け方式等で算出する。
【００３１】
プロセッサ３６は、ＶＮＦ＃１からＶＮＦ＃２までの転送経路毎にトラヒック割合を決定する。ＦＷ１ＡからＩＤＳ１Ａへの転送経路のトラヒック割合は全体トラヒック量の２／８、ＦＷ１ＢからＩＤＳ１Ａへの転送経路のトラヒック割合は全体トラヒック量の１／８、ＦＷ１ＢからＩＤＳ１Ｂへの転送経路のトラヒック割合は全体トラヒック量の１／８となる。ＦＷ１ＣからＩＤＳ１Ｂへの転送経路のトラヒック割合は全体トラヒック量の１／８、ＦＷ１ＣからＩＤＳ１Ｃへの転送経路のトラヒック割合は全体トラヒック量の１／８、ＦＷ１ＤからＩＤＳ１Ｃへの転送経路のトラヒック割合は全体トラヒック量の２／８となる。
【００３２】
更に、プロセッサ３６は、ＶＮＦ＃２からＶＮＦ＃３までの転送経路毎にトラヒック割合を決定する。例えば、ＩＤＳ１ＡからＰｒｏｘｙ１Ａへの転送経路のトラヒック割合は３／８、ＩＤＳ１ＢからＰｒｏｘｙ１Ｂへの転送経路のトラヒック割合は２／８、ＩＤＳ１ＣからＰｒｏｘｙ１Ｃへの転送経路のトラヒック割合は３／８となる。尚、説明の便宜上、ＶＮＦ＃２からＶＮＦ＃３までの転送経路のトラヒック割合は、例えば、３／８、２／８及び３／８としたが、転送経路毎にトラヒック割合を均等になるように調整しても良い。
【００３３】
プロセッサ３６は、集約ＬＢ１３Ａ及びＶＮＦ１２の数、最適経路Ｒ１〜Ｒ６及び転送経路に基づき、集約ＬＢ１３Ａ及びＶＮＦ１２を汎用サーバ２Ｂ等の仮想領域に配置して機能を起動させる。プロセッサ３６は、決定した集約ＬＢ１３Ａの分配割合を配置された集約ＬＢ１３Ａに設定する。プロセッサ３６は、決定した各ＶＮＦ１２のトラヒック割合を配置されたＶＮＦ１２に設定する。その結果、仮想環境下で構成要求のサービスチェイン２０を構築できる。
【００３４】
管理サーバ３は、集約ＬＢ１３Ａ、集約ＬＢ１３Ａから終端のＶＮＦ１２までの最適経路、集約ＬＢ１３Ａの分配割合及び各ＶＮＦ１２のトラヒック割合に基づき、キャリアＮＷ２上の指定の汎用サーバ２Ｂの仮想領域に、構成要求のサービスチェイン２０を構築する。
【００３５】
次にサービスチェインシステム１について説明する。図４は、第１のサービスチェイン構築処理に関わる管理サーバ３の処理動作の一例を示すフローチャートである。
【００３６】
図４において管理サーバ３内のプロセッサ３６は、端末装置４から構成要求を受信したか否かを判定する（ステップＳ１１）。プロセッサ３６は、構成要求を受信した場合（ステップＳ１１肯定）、構成要求内のＶＮＦ群２１内のＶＮＦ１２のインスタンス数及びＶＮＦ群２１毎のＬＢ１３のインスタンス数に基づき、集約ＬＢ１３Ａの数を決定する（ステップＳ１２）。尚、プロセッサ３６は、構成要求内の上位レベルのＶＮＦ群２１の内、例えば、ＶＮＦ１２のインスタンス数が最大数のＶＮＦ群２１を特定し、特定されたＶＮＦ群２１のＬＢインスタンス数を集約ＬＢ１３Ａの数と決定する。更に、プロセッサ３６は、構成要求内のＶＮＦ群２１に基づき、図３に示すように、集約ＬＢ１３Ａの集約ＬＢ群２２及びＶＮＦ群２１のトポロジ構成を決定する（ステップＳ１３）。
【００３７】
プロセッサ３６は、サービスチェイン２０の最前段の集約ＬＢ群２２のトラヒック割合（送信量）を決定する（ステップＳ１４）。尚、集約ＬＢ群２２のトラヒック割合（送信量）は、図３に示すように、ＬＢ１Ａが全体トラヒック量の１／２及びＬＢ１Ｂが全体トラヒック量の１／２を送信することになる。プロセッサ３６は、最前段の集約ＬＢ群２２の終端宛先となる終端のＶＮＦ群２１を特定する（ステップＳ１５）。尚、終端のＶＮＦ群２１は、例えば、図３に示すＶＮＦ＃３に相当し、終端のＶＮＦ１２はＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｃとなる。
【００３８】
プロセッサ３６は、集約ＬＢ群２２と終端のＶＮＦ群２１との間の全経路が分散する転送経路を決定する（ステップＳ１６）。尚、全経路は、図３に示すように、ＬＢ１ＡとＰｒｏｘｙ１Ａとの間、ＬＢ１ＡとＰｒｏｘｙ１Ｂとの間、ＬＢ１ＡとＰｒｏｘｙ１Ｃとの間、ＬＢ１ＢとＰｒｏｘｙ１Ａとの間、ＬＢ１ＢとＰｒｏｘｙ１Ｂとの間、ＬＢ１ＢとＰｒｏｘｙ１Ｃとの間の転送経路となる。プロセッサ３６は、各転送経路のトラヒック割合を決定する（ステップＳ１７）。
【００３９】
プロセッサ３６は、集約ＬＢ群２２及び転送経路のトラヒック割合に基づき、終端のＶＮＦ群２１内の各ＶＮＦ１２のトラヒック割合（受信量）を決定する（ステップＳ１８）。尚、終端のＶＮＦ群２１はＶＮＦ＃３のため、Ｐｒｏｘｙ１Ａは全体トラヒック量の３／８、Ｐｒｏｘｙ１Ｂは全体トラヒック量の２／８、Ｐｒｏｘｙ１Ｃは全体トラヒック量の３／８を受信することになる。
【００４０】
そして、プロセッサ３６は、集約ＬＢ群２２の分配割合を決定する（ステップＳ１９）。更に、プロセッサ３６は、集約ＬＢ群２２及びＶＮＦ群２１の転送経路及びトラヒック割合を決定した後（ステップＳ２０）、集約ＬＢ群２２及びＶＮＦ群２１を汎用サーバ２Ｂ上の仮想領域に配置して、その機能を起動する（ステップＳ２１）。更に、プロセッサ３６は、集約ＬＢ群２２の分配割合を仮想領域上の集約ＬＢ１３Ａに設定すると共に、ＶＮＦ群２１のトラヒック割合を仮想領域上の各ＶＮＦ１２に設定し（ステップＳ２２）、図４に示す処理動作を終了する。その結果、構成要求に応じたサービスチェイン２０を仮想領域上に配置できる。プロセッサ３６は、構成要求を受信しなかった場合（ステップＳ１１否定）、図４に示す処理動作を終了する。
【００４１】
上記例では、サービスチェイン２０の最前段に複数の集約ＬＢ１３Ａを配置し、集約ＬＢ１３Ａから終端のＶＮＦ群２１までのトラヒック量が均等になるように集約ＬＢ群２２の分配割合及び各ＶＮＦ１２のトラヒック割合を決定する。その結果、ＬＢ１３の数を少なくすることで転送遅延を抑制できると共に、有限な仮想領域の資源を節減できる。
【００４２】
しかしながら、上記例のサービスチェイン２０に使用する集約ＬＢ１３は、受信したパケットを複数の終端宛先に分散する終端型ＬＢである。図５は、サービスチェイン２０Ａ内の集約ＬＢ群２２のトラヒック分散方法の一例を示す説明図である。図５に示すサービスチェイン２０Ａは、ＶＮＦ＃１、ＶＮＦ＃２、ＶＮＦ＃３、ＶＮＦ＃４及びＶＮＦ＃５の順に配置し、最前段のＶＮＦ＃１の前段に集約ＬＢ群２２を配置した構成である。尚、集約ＬＢ群２２は、例えば、ＬＢ１Ａ及びＬＢ１Ｂを有し、終端型ＬＢである。ＶＮＦ＃１は、例えば、ＦＷ１Ａ〜ＦＷ１Ｃを有し、ＶＮＦ＃２は、例えば、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄを有し、ＶＮＦ＃３は、例えば、Ｐｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃを有する。また、ＶＮＦ＃４は、例えば、ＦＷ２Ａ及びＦＷ２Ｂを有し、ＶＮＦ＃５は、Ｐｒｏｘｙ３Ａ及びＰｒｏｘｙ３Ｂを有する。ＶＮＦ＃２、ＶＮＦ＃３及びＶＮＦ＃５は終端のＶＮＦ群２１である。終端のＶＮＦ群２１は、ＴＣＰセッションを終端してパケット処理を実行し、新しいＴＣＰセッションにパケットを送信するＮＷ機能や、受信パケットの宛先ＩＰアドレスを他の宛先ＩＰアドレスに変換して中継するＮＷ機能がある。
【００４３】
図５に示すサービスチェイン２０Ａ内の集約ＬＢ１Ａ及び１Ｂの受信トラヒックの終端宛先は、ＦＷ１Ａ〜ＦＷ１Ｃの後段にＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄが配置された場合、終端のＶＮＦ数、すなわちＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄの台数の４台である。従って、集約ＬＢ１Ａ及び１Ｂは、受信トラヒックを４台のＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄに分散することになる。しかしながら、集約ＬＢ１Ａ及び１Ｂは、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄの後段に終端のＶＮＦ１２が配置された場合、ＶＮＦ＃２内の各終端のＶＮＦ１２までのトラヒック量を分散できるものの、ＶＮＦ＃２以降のＶＮＦ＃３及びＶＮＦ＃５のトラヒック量を分散できない。従って、終端型ＬＢは、最初の終端のＶＮＦ群２１内の各終端のＶＮＦ１２の台数でトラヒック量を分散できるものの、最初の終端のＶＮＦ群２１の後段の終端のＶＮＦ群２１内の終端のＶＮＦ１２の台数でトラヒック量を分散できない。
【００４４】
そこで、このような事態に対処すべく、最初の終端のＶＮＦ群２１の後段以降の終端のＶＮＦ群２１の終端のＶＮＦ１２の台数でもトラヒック量を分散できるサービスチェインシステム１の実施の形態につき、実施例１として以下に説明する。尚、上記例のサービスチェインシステム１と同一の構成には同一符号を付すことで、その重複する構成及び動作の説明については省略する。
【実施例１】
【００４５】
図６は、実施例１のサービスチェイン２０Ｂの配置構成の一例を示す説明図である。図６に示すサービスチェイン２０Ｂは、ＶＮＦ＃１〜ＶＮＦ＃５の複数のＶＮＦ群２１と、複数のＶＮＦ群２１の内、最前段のＶＮＦ＃１の前段に配置された集約ＬＢ群２２とを有する。ＶＮＦ＃１は、例えば、ＦＷ１Ａ〜ＦＷ１Ｃを有する。ＶＮＦ＃２は、例えば、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄを有する。ＶＮＦ＃３は、例えば、Ｐｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃを有する。ＶＮＦ＃４は、例えば、ＦＷ２Ａ及びＦＷ２Ｂを有する。ＶＮＦ＃５は、例えば、Ｐｒｏｘｙ３Ａ及びＰｒｏｘｙ３Ｂを有する。尚、ＶＮＦ＃２、ＶＮＦ＃３及びＶＮＦ＃５は、終端のＶＮＦ群２１である。集約ＬＢ群２２はＬ３終端型ＬＢ、ＶＮＦ＃２、ＶＮＦ＃３及びＶＮＦ＃５はＬ３終端型ＶＮＦ、ＶＮＦ＃１及びＶＮＦ＃４はＬ３中継型ＶＮＦである。
【００４６】
図７は、実施例１の管理サーバ３内のプロセッサ３６の機能構成の一例を示す説明図である。図７に示すプロセッサ３６は、第１の決定部４１と、第２の決定部４２と、第３の決定部４３と、設定部４４とを有する。補助記憶装置３４には、サービスチェイン構築方法に関わる処理プログラムが記憶されているものとする。プロセッサ３６は、サービスチェイン構築方法に関わる処理プログラムを補助記憶装置３４から読み出し、プロセッサ３６上で第１の決定部４１、第２の決定部４２、第３の決定部４３及び設定部４４を機能として実行する。第１の決定部４１は、構成要求に応じてサービスチェイン２０Ｂの集約ＬＢ群２２の数及びトポロジ構成を決定する。
【００４７】
第２の決定部４２は、区分決定部５１と、指定部５２と、経路決定部５３とを有する。区分決定部５１は、サービスチェイン２０Ｂのトポロジ構成から、終端のＶＮＦ群２１及び集約ＬＢ群２２に基づき、ＬＢ区間２３及びＬＢレス区間２４を決定する。ＬＢ区間２３は、集約ＬＢ群２２から後段の直近の終端のＶＮＦ群２１までの区間である。ＬＢレス区間２４は、終端のＶＮＦ群２１から後段の直近の終端のＶＮＦ群２１までの集約ＬＢ１３Ａなしの区間である。図６に示すＬＢ区間２３は、例えば、集約ＬＢ群２２（ＬＢ１Ａ、ＬＢ１Ｂ）と終端のＶＮＦ＃２（Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄ）との間の区間である。第１のＬＢレス区間２４Ａは、例えば、終端のＶＮＦ＃２（Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄ）と終端のＶＮＦ＃３（Ｐｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃ）との間の区間である。第２のＬＢレス区間２４Ｂは、例えば、終端のＶＮＦ＃３（Ｐｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃ）と終端のＶＮＦ＃５（Ｐｒｏｘｙ３Ａ、Ｐｒｏｘｙ３Ｂ）との間の区間である。
【００４８】
指定部５２は、ＬＢ区間２３→第１のＬＢレス区間２４Ａ→第２のＬＢレス区間２４Ｂを昇順に順次指定する。経路決定部５３は、ＬＢ区間２３内の集約ＬＢ群２２及びＶＮＦ群２１内の転送経路及びトラヒック割合を決定する。ＬＢ区間２３内の集約ＬＢ群２２及びＶＮＦ群２１の転送経路のトラヒック割合は、転送経路上のＶＮＦ群２１で平均化できるトラヒック量である。経路決定部５３は、ＬＢレス区間２４内のＶＮＦ群２１の転送経路及びトラヒック割合を決定する。ＬＢレス区間２４内のＶＮＦ群２１の転送経路のトラヒック割合は、ＬＢレス区間２４内の最後段の終端のＶＮＦ群２１の受信量が平均化するように送信し、かつ、ＬＢレス区間２４内の全ＶＮＦ１２が処理するトラヒック量が平均化できるように分散する。
【００４９】
第３の決定部４３は、ＬＢ区間２３及びＬＢレス区間２４内の集約ＬＢ群２２及びＶＮＦ群２１の転送経路及びトラヒック割合に基づき、集約ＬＢ群２２の分配割合及びＶＮＦ群２１内の転送経路及びトラヒック割合を決定する。設定部４４は、トポロジ構成に基づき、仮想領域上にＶＮＦ群２１及び集約ＬＢ群２２を配置して起動し、配置されたＶＮＦ群２１及び集約ＬＢ群２２に転送経路及びトラヒック割合を設定する。設定部４４は、配置部４４Ａと、割合設定部４４Ｂとを有する。配置部４４Ａは、トポロジ構成に基づき、仮想領域上にＶＮＦ群２１及び集約ＬＢ群２２を配置して起動する。割合設定部４４Ｂは、配置されたＶＮＦ群２１及び集約ＬＢ群２２に転送経路及びトラヒック割合を設定する。
【００５０】
図８Ａは、ＬＢ区間２３内の終端宛先の一例を示す説明図である。尚、図８Ａに示すＬＢ区間２３内の終端のＶＮＦ群２１は、例えば、ＶＮＦ＃２内のＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄとする。第２の決定部４２内の経路決定部５３は、集約ＬＢ群２２の前段に区間がなく、集約ＬＢ群２２がＬＢ１Ａ及びＬＢ１Ｂの２台であるため、集約ＬＢ群２２のトラヒック割合（受信量）を全体トラヒック量の１／２と決定する。経路決定部５３は、ＬＢ区間２３内の集約ＬＢ群２２の終端宛先となる終端のＶＮＦ群２１（ＶＮＦ＃２内のＰｒｏｘｙ１Ａ〜１Ｄ）を決定する。
【００５１】
図８Ｂは、ＬＢ区間２３内の転送経路の一例を示す説明図である。経路決定部５３は、ＬＢ区間２３内の集約ＬＢ群２２と終端のＶＮＦ群２１との間の全経路が分散する転送経路を決定する。経路決定部５３は、ＬＢ区間２３内のＬＢ１ＡからＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄまでの４本の転送経路及びＬＢ１ＢからＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄまでの４本の転送経路を決定する。
【００５２】
図８Ｃは、ＬＢ区間２３内の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３は、集約ＬＢ群２２のトラヒック割合（送信量）及びＬＢ区間２３内の転送経路に基づき、ＬＢ区間２３内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３は、ＬＢ区間２３内の転送経路のトラヒック割合に基づき、ＬＢ区間２３内の最後段のＶＮＦ＃２のトラヒック割合（受信量）を決定する。
【００５３】
経路決定部５３は、ＬＢ区間２３内の複数のＶＮＦ群２１の内、ＶＮＦ台数が最大個数のＶＮＦ＃２のトラヒック量が平均化できるように各転送経路を流れるトラヒック量を算出する。図８Ｃの例では、ＶＮＦ＃２内の各Ｐｒｏｘｙのトラヒック量は１／８である。ＬＢ１Ａのトラヒック割合は、全体トラヒック量の１／８、すなわちＬＢ１Ａが受信するトラヒック量の１／４をＰｒｏｘｙ１Ａ宛にＦＷ１Ａ経由で送信となる。更に、ＬＢ１Ａのトラヒック割合は、全体トラヒック量の１／８、すなわちＬＢ１Ａが受信するトラヒック量の１／４をＰｒｏｘｙ１Ｂ宛にＦＷ１Ｂ経由で送信となる。ＬＢ１Ａのトラヒック割合は、全体トラヒック量の１／８、すなわちＬＢ１Ａが受信するトラヒック量の１／４をＰｒｏｘｙ１Ｃ宛にＦＷ１Ｃ経由で送信となる。更に、ＬＢ１Ａのトラヒック割合は、全体トラヒック量の１／８、すなわちＬＢ１Ａが受信するトラヒック量の１／４をＰｒｏｘｙ１Ｄ宛にＦＷ１Ａ経由で送信となる。ＬＢ１Ｂのトラヒック割合は、全体トラヒック量の１／８、すなわちＬＢ１Ｂが受信するトラヒック量の１／４をＰｒｏｘｙ１Ａ宛にＦＷ１Ｂ経由で送信となる。更に、ＬＢ１Ｂのトラヒック割合は、全体トラヒック量の１／８、すなわちＬＢ１Ｂが受信するトラヒック量の１／４をＰｒｏｘｙ１Ｂ宛にＦＷ１Ｃ経由で送信となる。ＬＢ１Ｂのトラヒック割合は、全体トラヒック量の１／８、すなわちＬＢ１Ｂが受信するトラヒック量の１／４をＰｒｏｘｙ１Ｃ宛にＦＷ１Ａ経由で送信となる。更に、ＬＢ１Ｂのトラヒック割合は、全体トラヒック量の１／８、すなわちＬＢ１Ｂが受信するトラヒック量の１／４をＰｒｏｘｙ１Ｄ宛にＦＷ１Ｂ経由で送信となる。Ｐｒｏｘｙ１Ａのトラヒック割合を全体トラヒック量の１／４、Ｐｒｏｘｙ１Ｂのトラヒック割合を全体トラヒック量の１／４、Ｐｒｏｘｙ１Ｃのトラヒック割合を全体トラヒック量の１／４、Ｐｒｏｘｙ１Ｄのトラヒック割合を全体トラヒック量の１／４とする。
【００５４】
図９Ａは、第１のＬＢレス区間２４Ａ内の終端宛先の一例を示す説明図である。図９Ａに示す第１のＬＢレス区間２４Ａ内の終端のＶＮＦ群２１は、例えば、ＶＮＦ＃３のＰｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃとする。経路決定部５３は、ＬＢ区間２３内の最後段のＶＮＦ＃２のトラヒック割合（受信量）を第１のＬＢレス区間２４Ａ内の最前段のＶＮＦ＃２のトラヒック割合（送信量）とする。Ｐｒｏｘｙ１ＡはＰｒｏｘｙ２Ａ宛に全体トラヒック量の１／４送信、Ｐｒｏｘｙ１ＢはＰｒｏｘｙ２Ｂ宛に全体トラヒック量の１／４送信となる。また、Ｐｒｏｘｙ１ＣはＰｒｏｘｙ２Ｃ宛に全体トラヒック量の１／４送信、Ｐｒｏｘｙ１ＤはＰｒｏｘｙ２Ａ宛に全体トラヒック量の１／４送信となる。経路決定部５３は、第１のＬＢレス区間２４Ａ内のＶＮＦ＃２（Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄ）の終端宛先となる最後段の終端のＶＮＦ群２１（ＶＮＦ＃３内のＰｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃ）を決定する。
【００５５】
図９Ｂは、第１のＬＢレス区間２４Ａ内の転送経路の一例を示す説明図である。経路決定部５３は、第１のＬＢレス区間２４Ａ内のＶＮＦ＃２とＶＮＦ＃３との間の全経路が分散する転送経路を決定する。尚、第１のＬＢレス区間２４Ａ内の各転送経路を通過するトラヒック量が均一になるように転送経路を決定する。経路決定部５３は、第１のＬＢレス区間２４Ａ内のＰｒｏｘｙ１ＡとＰｒｏｘｙ２Ａとの間、Ｐｒｏｘｙ１ＢとＰｒｏｘｙ２Ｂとの間、Ｐｒｏｘｙ１ＣとＰｒｏｘｙ２Ｃとの間、Ｐｒｏｘｙ１ＤとＰｒｏｘｙ２Ａとの間の転送経路を決定する。
【００５６】
図９Ｃは、第１のＬＢレス区間２４Ａ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３は、ＶＮＦ＃２のトラヒック割合（送信量）及び第１のＬＢレス区間２４Ａ内の転送経路に基づき、第１のＬＢレス区間２４Ａ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３は、第１のＬＢレス区間２４Ａ内の転送経路のトラヒック割合に基づき、第１のＬＢレス区間２４Ａ内の最後段のＶＮＦ＃３のトラヒック割合（受信量）を決定する。ＶＮＦ＃３内のＰｒｏｘｙ２Ａのトラヒック割合は全体トラヒック量の２／４、Ｐｒｏｘｙ２Ｂのトラヒック割合は全体トラヒック量の１／４、Ｐｒｏｘｙ２Ｃのトラヒック割合は全体トラヒック量の１／４とする。
【００５７】
図１０Ａは、第２のＬＢレス区間２４Ｂ内の終端宛先の一例を示す説明図である。尚、第２のＬＢレス区間２４Ｂの終端のＶＮＦ群２１は、例えば、ＶＮＦ＃５のＰｒｏｘｙ３Ａ及び３Ｂとする。経路決定部５３は、第１のＬＢレス区間２４Ａ内の最後段のＶＮＦ＃３のトラヒック割合（受信量）を第２のＬＢレス区間２４Ｂ内の最前段のＶＮＦ＃３のトラヒック割合（送信量）とする。Ｐｒｏｘｙ２ＡはＰｒｏｘｙ３Ａ宛に全体トラヒック量の２／４送信、Ｐｒｏｘｙ２ＢはＰｒｏｘｙ３Ｂ宛に全体トラヒック量の１／４送信、Ｐｒｏｘｙ２ＣはＰｒｏｘｙ３Ｂ宛に全体トラヒック量の１／４送信となる。経路決定部５３は、第２のＬＢレス区間２４Ｂ内の最前段のＶＮＦ＃３内のＰｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃの終端宛先となる最後段の終端のＶＮＦ群２１（ＶＮＦ＃５内のＰｒｏｘｙ３Ａ及び３Ｂ）を決定する。
【００５８】
図１０Ｂは、第２のＬＢレス区間２４Ｂ内の転送経路の一例を示す説明図である。経路決定部５３は、第２のＬＢレス区間２４Ｂ内のＶＮＦ＃３とＶＮＦ＃５との間の全経路が分散する転送経路を決定する。尚、転送経路の決定方法としては、各種方法があるが、例えば、トラヒック量が大きい順に経路を決定するものとする。この場合、Ｐｒｏｘｙ２ＡからＰｒｏｘｙ３Ａの経路を最初に決定する。この際、各段の最も通過トラヒック量が小さいＶＮＦ１２を経由ノードとして経路を決定していく。ＦＷ２Ａ及びＦＷ２Ｂは通過トラヒックがないため、ＦＷ２Ａが選択され、Ｐｒｏｘｙ２Ａ→ＦＷ２Ａ→Ｐｒｏｘｙ３Ａの転送経路を算出する。次に帯域が大きいＰｒｏｘｙ２ＢからＰｒｏｘｙ３Ｂの経路を決定する。ＦＷ２Ａは既に全体トラヒックの２／４が通過しているため、ＦＷ２Ｂが選択され、Ｐｒｏｘｙ２Ｂ→ＦＷ２Ｂ→Ｐｒｏｘｙ３Ｂの転送経路を算出する。同様に繰り返し全ての転送経路を決定する。経路決定部５３は、第２のＬＢレス区間２４Ｂ内のＰｒｏｘｙ２ＡとＰｒｏｘｙ３Ａとの間、Ｐｒｏｘｙ２ＢとＰｒｏｘｙ３Ｂとの間、Ｐｒｏｘｙ２ＣとＰｒｏｘｙ３Ｂとの間の転送経路を決定する。
【００５９】
図１０Ｃは、第２のＬＢレス区間２４Ｂ内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３は、ＶＮＦ＃３のトラヒック割合（送信量）及び第２のＬＢレス区間２４Ｂ内の転送経路に基づき、第２のＬＢレス区間２４Ｂ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３は、第２のＬＢレス区間２４Ｂ内の転送経路のトラヒック割合に基づき、第２のＬＢレス区間２４Ｂ内の終端のＶＮＦ＃５のトラヒック割合（受信量）を決定する。ＶＮＦ＃５のＰｒｏｘｙ３Ａのトラヒック割合は全体トラヒック量の１／２、Ｐｒｏｘｙ３Ｂのトラヒック割合は全体トラヒック量の１／２とする。
【００６０】
第３の決定部４３は、ＬＢ区間２３及びＬＢレス区間２４内の転送経路及び各転送経路のトラヒック割合に基づき設定情報を設定部４４に登録する。設定情報は、ＬＢ１Ａのトラヒック割合、ＬＢ１Ｂのトラヒック割合、ＬＢ１Ａ、ＬＢ１Ｂ、ＦＷ１Ａ〜ＦＷ１Ｃ、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄ、Ｐｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃ、ＦＷ２Ａ及びＦＷ２Ｂ、Ｐｒｏｘｙ３Ａ及び３Ｂの転送経路となる。
【００６１】
ＬＢ１Ａのトラヒック割合は、１／４のトラヒックをＰｒｏｘｙ１Ａへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｂへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｃへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｄへ送信に設定される。ＬＢ１Ｂのトラヒック割合は、１／４のトラヒックをＰｒｏｘｙ１Ａへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｂへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｃへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｄへ送信に設定される。
【００６２】
ＬＢ１Ａの転送経路は、Ｐｒｏｘｙ１Ａ宛のトラヒックをＦＷ１Ａへ転送、Ｐｒｏｘｙ１Ｂ宛のトラヒックをＦＷ１Ｂへ転送、Ｐｒｏｘｙ１Ｃ宛のトラヒックをＦＷ１Ｃへ転送、Ｐｒｏｘｙ１Ｄ宛のトラヒックをＦＷ１Ａへ転送に設定される。ＬＢ１Ｂの転送経路は、Ｐｒｏｘｙ１Ａ宛のトラヒックをＦＷ１Ｂへ転送、Ｐｒｏｘｙ１Ｂ宛のトラヒックをＦＷ１Ｃへ転送、Ｐｒｏｘｙ１Ｃ宛のトラヒックをＦＷ１Ａへ転送、Ｐｒｏｘｙ１Ｄ宛のトラヒックをＦＷ１Ｂへ転送に設定される。
【００６３】
ＦＷ１Ａの転送経路は、Ｐｒｏｘｙ１Ａ宛のトラヒックをＰｒｏｘｙ１Ａへ転送、Ｐｒｏｘｙ１Ｃ宛のトラヒックをＰｒｏｘｙ１Ｃへ転送、Ｐｒｏｘｙ１Ｄ宛のトラヒックをＰｒｏｘｙ１Ｄへ転送に設定される。ＦＷ１Ｂの転送経路は、Ｐｒｏｘｙ１Ａ宛のトラヒックをＰｒｏｘｙ１Ａへ転送、Ｐｒｏｘｙ１Ｂ宛のトラヒックをＰｒｏｘｙ１Ｂへ転送、Ｐｒｏｘｙ１Ｄ宛のトラヒックをＰｒｏｘｙ１Ｄへ転送に設定される。ＦＷ１Ｃの転送経路は、Ｐｒｏｘｙ１Ｂ宛のトラヒックをＰｒｏｘｙ１Ｂへ転送、Ｐｒｏｘｙ１Ｃ宛のトラヒックをＰｒｏｘｙ１Ｃへ転送に設定される。
【００６４】
Ｐｒｏｘｙ１Ａの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ２Ａへ送信、Ｐｒｏｘｙ１Ｂの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ２Ｂへ送信となる。Ｐｒｏｘｙ１Ｃの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ２Ｃへ送信、Ｐｒｏｘｙ１Ｄの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ２Ａへ送信となる。
【００６５】
Ｐｒｏｘｙ１Ａの転送経路は、Ｐｒｏｘｙ２Ａ宛のトラヒックをＰｒｏｘｙ２Ａへ転送に設定される。Ｐｒｏｘｙ１Ｂの転送経路は、Ｐｒｏｘｙ２Ｂ宛のトラヒックをＰｒｏｘｙ２Ｂへ転送に設定される。Ｐｒｏｘｙ１Ｃの転送経路は、Ｐｒｏｘｙ２Ｃ宛のトラヒックをＰｒｏｘｙ２Ｃへ転送に設定される。Ｐｒｏｘｙ１Ｄの転送経路は、Ｐｒｏｘｙ２Ａ宛のトラヒックをＰｒｏｘｙ２Ａへ転送に設定される。
【００６６】
Ｐｒｏｘｙ２Ａの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ３Ａへ送信、Ｐｒｏｘｙ２Ｂの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ３Ｂへ送信となる。Ｐｒｏｘｙ２Ｃの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ３Ｂへ送信となる。
【００６７】
Ｐｒｏｘｙ２Ａの転送経路は、Ｐｒｏｘｙ３Ａ宛のトラヒックをＦＷ２Ａへ転送に設定される。Ｐｒｏｘｙ２Ｂの転送経路は、Ｐｒｏｘｙ３Ｂ宛のトラヒックをＦＷ２Ｂへ転送に設定される。Ｐｒｏｘｙ２Ｃの転送経路は、Ｐｒｏｘｙ３Ｂ宛のトラヒックをＦＷ２Ｂへ転送に設定される。ＦＷ２Ａの転送経路は、Ｐｒｏｘｙ３Ａ宛のトラヒックをＰｒｏｘｙ３Ａへ転送に設定される。ＦＷ２Ｂの転送経路は、Ｐｒｏｘｙ３Ｂ宛のトラヒックをＰｒｏｘｙ３Ｂへ転送に設定される。
【００６８】
次に実施例１のサービスチェインシステム１の動作について説明する。図１１は、第２のサービスチェイン構築処理に関わる管理サーバ３内のプロセッサ３６の処理動作の一例を示すフローチャートである。
【００６９】
第２の決定部４２内の区分決定部５１は、ステップＳ１３にてサービスチェイン２０Ｂのトポロジ構成を決定後、サービスチェイン２０Ｂの集約ＬＢ群２２及び終端のＶＮＦ群２１に基づき、ＬＢ区間２３及びＬＢレス区間２４を決定する（ステップＳ３１）。第２の決定部４２内の経路決定部５３は、ＬＢ区間２３内の最前段の集約ＬＢ群２２のトラヒック割合（送信量）を決定する（ステップＳ３２）。経路決定部５３は、ＬＢ区間２３内の最前段の集約ＬＢ群２２の最終宛先となる最後段の終端のＶＮＦ群２１を決定する（ステップＳ３３）。尚、経路決定部５３は、終端宛先として図８Ａに示すようにＶＮＦ＃２（Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄ）を決定する。
【００７０】
経路決定部５３は、ＬＢ区間２３内の集約ＬＢ群２２と終端のＶＮＦ群２１との間の全経路が分散する転送経路を決定する（ステップＳ３４）。尚、経路決定部５３は、最短経路計算等で図８Ｂに示すようにＬＢ１ＡとＶＮＦ＃２との間の３経路、ＬＢ１ＢとＶＮＦ＃２との間の３経路を決定する。経路決定部５３は、ＬＢ区間２３内の集約ＬＢ群２２のトラヒック割合（送信量）及びＬＢ区間２３内の転送経路に基づき、ＬＢ区間２３内の各転送経路のトラヒック割合を決定する（ステップＳ３５）。
【００７１】
経路決定部５３は、ＬＢ区間２３内の転送経路のトラヒック割合に基づき、ＬＢ区間２３内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）を決定する（ステップＳ３６）。
【００７２】
第２の決定部４２内の指定部５２は、次の区間がＬＢレス区間２４であるか否かを判定する（ステップＳ３７）。指定部５２は、次の区間がＬＢレス区間２４の場合（ステップＳ３７肯定）、ＬＢレス区間２４を指定する（ステップＳ３８）。経路決定部５３は、指定ＬＢレス区間の前区間内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）を指定ＬＢレス区間２４内の最前段のＶＮＦ群２１のトラヒック割合（送信量）とする（ステップＳ３９）。
【００７３】
経路決定部５３は、指定ＬＢレス区間２４内の最前段のＶＮＦ群２１と最後段のＶＮＦ群２１との間の全経路が分散する転送経路を決定する（ステップＳ４０）。経路決定部５３は、指定ＬＢレス区間２４内の各転送経路のトラヒック割合を決定する（ステップＳ４１）。
【００７４】
経路決定部５３は、指定ＬＢレス区間２４内の転送経路のトラヒック割合に基づき、指定ＬＢレス区間２４内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）を決定する（ステップＳ４２）。そして、経路決定部５３は、次の区間がＬＢレス区間２４であるか否かを判定すべく、ステップＳ３７に移行する。
【００７５】
指定部５２は、次の区間がＬＢレス区間２４でない場合（ステップＳ３７否定）、集約ＬＢ群２２の分配割合を決定すべく、ステップＳ１９に移行する。その結果、構成要求に応じたサービスチェイン２０Ｂを仮想領域上に配置できる。
【００７６】
実施例１の管理サーバ３は、サービスチェイン２０Ｂ内の集約ＬＢ群２２及び終端のＶＮＦ群２１の配置位置に基づき、サービスチェイン２０ＢをＬＢ区間２３及びＬＢレス区間２４に区分する。管理サーバ３は、サービスチェイン２０Ｂの最前段から最後段までの昇順でＬＢ区間２３及びＬＢレス区間２４を順次指定する。管理サーバ３は、指定されたＬＢ区間２３及びＬＢレス区間２４毎に最前段のトラヒック割合（送信量）、転送経路のトラヒック割合及び最後段のトラヒック割合（受信量）を決定する。そして、管理サーバ３は、ＬＢ区間２３及びＬＢレス区間２４内の最前段のトラヒック割合、転送経路のトラヒック割合及び最後段のトラヒック割合に基づき、サービスチェイン２０Ｂ内の集約ＬＢ群２２の分配割合、ＶＮＦ群２１のトラヒック割合を決定する。その結果、最初の終端のＶＮＦ群２１後段以降の終端のＶＮＦ群２１を配置したサービスチェイン２０Ｂであっても、最初の終端のＶＮＦ群２１後段以降のＶＮＦ群２１の台数を反映したトラヒック量を分散できる。しかも、ＬＢ１３に割当てるはずの仮想リソースを削減することで、低コストのサービスチェイン２０Ｂを構築できる。
【００７７】
管理サーバ３は、サービスチェイン２０Ｂ内のＬＢ区間２３→第１のＬＢレス区間２４Ａ→第２のＬＢレス区間２４Ｂの順に指定する。管理サーバ３は、第１のＬＢレス区間２４Ａが指定された場合、前区間であるＬＢ区間２３内の最後段のＶＮＦ群２１のトラヒック割合を第１のＬＢレス区間２４Ａ内の最前段のＶＮＦ群２１のトラヒック割合に設定する。また、管理サーバ３は、第２のＬＢレス区間２４Ｂが指定された場合、前区間である第１のＬＢレス区間２４Ａ内の最後段のＶＮＦ群２１のトラヒック割合を第２のＬＢレス区間２４Ｂ内の最前段のＶＮＦ群２１のトラヒック割合に設定する。トラヒック割合を設定する際の処理負担を軽減できる。
【００７８】
尚、図１１に示すステップＳ３５のＬＢ区間２３内の転送経路のトラヒック割合を決定する処理やステップＳ４１のＬＢレス区間２４内の転送経路のトラヒック割合を決定する処理としては、区間内の負荷分散対象のＶＮＦ群２１の指定があるか否かを判定する。プロセッサ３６は、区間内の負荷分散対象のＶＮＦ群２１の指定がある場合、負荷分散対象のＶＮＦ群２１内の各ＶＮＦ１２のトラヒック量が均等になるように区間内の各転送経路のトラヒック割合を決定しても良い。また、プロセッサ３６は、区間内の負荷分散対象のＶＮＦ群２１の指定がない場合、区間内の最大個数のＶＮＦ群２１内の各ＶＮＦ１２のトラヒック量が均等になるように各転送経路のトラヒック割合を決定する。
【００７９】
図１２は、ＬＢ区間２３内の転送経路及びＶＮＦ群２１のトラヒック割合の一例を示す説明図である。尚、ＬＢ区間２３内のＶＮＦ＃１（ＦＷ１Ａ〜ＦＷ１Ｃ）内のトラヒック割合を均等に全体トラヒック量の１／３に設定し、ＦＷ１Ａ及びＦＷ１Ｂに３本の経路、ＦＷ１Ｃに２本の経路を設定した場合を例示している。経路決定部５３は、ＬＢ区間２３内で負荷分散対象のＶＮＦ群２１としてＶＮＦ＃１が指定された場合、負荷分散対象のＶＮＦ＃１のトラヒック量が均等になるようにＬＢ区間２３内の各転送経路のトラヒック割合を決定する。経路決定部５３は、ＬＢ区間２３内の各転送経路のトラヒック割合に基づき、ＶＮＦ＃２のトラヒック割合を決定する。
【００８０】
図１２の例では、ＶＮＦ＃２内の各Ｐｒｏｘｙのトラヒック量は１／９である。ＬＢ１Ａのトラヒック割合は、全体トラヒック量の１／９、すなわちＬＢ１Ａが受信するトラヒック量の２／９をＰｒｏｘｙ１Ａ宛にＦＷ１Ａ経由で送信となる。更に、ＬＢ１Ａのトラヒック割合は、全体トラヒック量の１／９、すなわちＬＢ１Ａが受信するトラヒック量の２／９をＰｒｏｘｙ１Ｂ宛にＦＷ１Ｂ経由で送信となる。ＬＢ１Ａのトラヒック割合は、全体トラヒック量の１／９、すなわちＬＢ１Ａが受信するトラヒック量の２／９をＰｒｏｘｙ１Ｃ宛にＦＷ１Ｃ経由で送信となる。更に、ＬＢ１Ａのトラヒック割合は、全体トラヒック量の１／６、すなわちＬＢ１Ａが受信するトラヒック量の３／９をＰｒｏｘｙ１Ｄ宛にＦＷ１Ａ経由で送信となる。ＬＢ１Ｂのトラヒック割合は、全体トラヒック量の１／９、すなわちＬＢ１Ｂが受信するトラヒック量の２／９をＰｒｏｘｙ１Ａ宛にＦＷ１Ｂ経由で送信となる。更に、ＬＢ１Ｂのトラヒック割合は、全体トラヒック量の１／６、すなわちＬＢ１Ｂが受信するトラヒック量の３／９をＰｒｏｘｙ１Ｂ宛にＦＷ１Ｃ経由で送信となる。ＬＢ１Ｂのトラヒック割合は、全体トラヒック量の１／９、すなわちＬＢ１Ｂが受信するトラヒック量の２／９をＰｒｏｘｙ１Ｃ宛にＦＷ１Ａ経由で送信となる。更に、ＬＢ１Ｂのトラヒック割合は、全体トラヒック量の１／９、すなわちＬＢ１Ｂが受信するトラヒック量の２／９をＰｒｏｘｙ１Ｄ宛にＦＷ１Ｂ経由で送信となる。その結果、ＶＮＦ＃２内のＰｒｏｘｙ１Ａのトラヒック割合は全体トラヒック量の４／１８、Ｐｒｏｘｙ１Ｂのトラヒック割合は全体トラヒック量の５／１８となる。更に、Ｐｒｏｘｙ１Ｃのトラヒック割合は全体トラヒック量の５／１８、Ｐｒｏｘｙ１Ｄのトラヒック割合は全体トラヒック量の４／１８となる。
【００８１】
尚、上記実施例１の管理サーバ３では、最前段のＬＢ区間２３→第１のＬＢレス区間２４Ａ→第２のＬＢレス区間２４Ｂの昇順に区間毎の転送経路及びトラヒック割合を順次算出した。しかしながら、ＬＢ区間２３→第１のＬＢレス区間２４Ａ→第２のＬＢレス区間２４Ｂの昇順に限定されるものではなく、適宜変更可能である。例えば、第２のＬＢレス区間２４Ｂ→第１のＬＢレス区間２４Ａ→ＬＢ区間２３の降順に区間毎の転送経路及びトラヒック割合を順次算出しても良く、その実施の形態につき、実施例２として以下に説明する。尚、上記実施例１のサービスチェインシステム１と同一の構成には同一符号を付することで、その重複する構成及び動作の説明については省略する。
【実施例２】
【００８２】
図１３は、実施例２の管理サーバ３のプロセッサ３６の機能構成の一例を示す説明図である。図１３に示す第２の決定部４２Ａ内の指定部５１は、第２のＬＢレス区間２４Ｂ→第１のＬＢレス区間２４Ａ→ＬＢ区間２３の降順に区間を順次指定する。第２の決定部４２Ａ内の経路決定部５３Ａは、ＬＢ区間２３及びＬＢレス区間２４の転送経路及びトラヒック割合に基づき、サービスチェイン２０Ｂの集約ＬＢ群２２の分配割合及び、ＶＮＦ群２１及び転送経路のトラヒック割合を決定する。
【００８３】
図１４Ａは、第２のＬＢレス区間２４Ｂ内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。指定部５２は、サービスチェイン２０Ｂの最後段の第２のＬＢレス区間２４Ｂを指定する。経路決定部５３Ａは、第２のＬＢレス区間２４Ｂ内の終端宛先のＶＮＦ群２１内の終端のＶＮＦ１２の台数が２台であるため、第２のＬＢレス区間２４Ｂ内の終端のＶＮＦ群２１のトラヒック割合（受信量）を全体トラヒック量の１／２とする。
【００８４】
図１４Ｂは、第２のＬＢレス区間２４Ｂ内の転送経路の一例を示す説明図である。経路決定部５３Ａは、第２のＬＢレス区間２４Ｂ内の最後段の終端のＶＮＦ群２１（ＶＮＦ＃５内のＰｒｏｘｙ３Ａ及び３Ｂ）の送信元となる最前段のＶＮＦ＃３内のＰｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃを決定する。経路決定部５３Ａは、第２のＬＢレス区間２４Ｂ内のＶＮＦ＃３とＶＮＦ＃５との間の全経路が分散する転送経路を決定する。経路決定部５３Ａは、第２のＬＢレス区間２４Ｂ内のＰｒｏｘｙ２ＡとＰｒｏｘｙ３Ａとの間、Ｐｒｏｘｙ２ＢとＰｒｏｘｙ３Ｂとの間、Ｐｒｏｘｙ２ＣとＰｒｏｘｙ３Ａとの間の転送経路を決定する。
【００８５】
図１４Ｃは、第２のＬＢレス区間２４Ｂ内の最前段の終端のＶＮＦ群２１のトラヒック割合（送信量）の一例を示す説明図である。経路決定部５３Ａは、第２のＬＢレス区間２４Ｂ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）及び転送経路に基づき、第２のＬＢレス区間２４Ｂ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ａは、第２のＬＢレス区間２４Ｂ内の転送経路のトラヒック割合に基づき、第２のＬＢレス区間２４Ｂ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）を決定する。Ｐｒｏｘｙ２Ａのトラヒック割合は全体トラヒック量の１／４、Ｐｒｏｘｙ２Ｂのトラヒック割合は全体トラヒック量の２／４、Ｐｒｏｘｙ２Ｃのトラヒック割合は全体トラヒック量の１／４とする。
【００８６】
図１５Ａは、第１のＬＢレス区間２４Ａ内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３Ａは、第２のＬＢレス区間２４Ｂ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）を第１のＬＢレス区間２４Ａ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）とする。Ｐｒｏｘｙ１ＡはＰｒｏｘｙ３Ａ宛に全体トラヒック量の２／４受信、Ｐｒｏｘｙ１ＢはＰｒｏｘｙ３Ｂ宛に全体トラヒック量の１／４受信、Ｐｒｏｘｙ１ＣはＰｒｏｘｙ２Ｃ宛に全体トラヒック量の１／４受信となる。
【００８７】
図１５Ｂは、第１のＬＢレス区間２４Ａ内の転送経路の一例を示す説明図である。経路決定部５３Ａは、第１のＬＢレス区間２４Ａ内の最後段の終端のＶＮＦ群２１（ＶＮＦ＃３内のＰｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃ）の送信元となる最前段のＶＮＦ＃２内のＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄを決定する。経路決定部５３Ａは、第１のＬＢレス区間２４Ａ内のＶＮＦ＃２とＶＮＦ＃３との間の全経路が分散する転送経路を決定する。経路決定部５３Ａは、第１のＬＢレス区間２４Ａ内のＰｒｏｘｙ１ＡとＰｒｏｘｙ２Ａとの間、Ｐｒｏｘｙ１ＢとＰｒｏｘｙ２Ｂとの間、Ｐｒｏｘｙ１ＣとＰｒｏｘｙ２Ｂとの間、Ｐｒｏｘｙ１ＣとＰｒｏｘｙ２Ｃとの間の転送経路を決定する。
【００８８】
図１５Ｃは、第１のＬＢレス区間２４Ａ内の最前段の終端のＶＮＦ群２１のトラヒック割合（送信量）の一例を示す説明図である。経路決定部５３Ａは、第１のＬＢレス区間２４Ａ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）及び転送経路に基づき、第１のＬＢレス区間２４Ａ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ａは、第１のＬＢレス区間２４Ａ内の転送経路のトラヒック割合に基づき、第１のＬＢレス区間２４Ａ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）を決定する。Ｐｒｏｘｙ１Ａのトラヒック割合は全体トラヒック量の１／４、Ｐｒｏｘｙ１Ｂのトラヒック割合は全体トラヒック量の１／４、Ｐｒｏｘｙ１Ｃのトラヒック割合は全体トラヒック量の１／４、Ｐｒｏｘｙ１Ｄのトラヒック割合は全体トラヒック量の１／４とする。
【００８９】
図１６Ａは、ＬＢ区間２３内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３Ａは、第１のＬＢレス区間２４Ａ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）をＬＢ区間２３内の最後段のＶＮＦ群２１のトラヒック割合（受信量）とする。
【００９０】
図１６Ｂは、ＬＢ区間２３内の転送経路の一例を示す説明図である。経路決定部５３Ａは、ＬＢ区間２３内の最後段の終端のＶＮＦ群２１（ＶＮＦ＃２内のＰｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄ）の送信元となる最前段の集約ＬＢ群２２内のＬＢ１Ａ及び１Ｂを決定する。経路決定部５３Ａは、ＬＢ区間２３内の集約ＬＢ群２２とＶＮＦ＃２との間の全経路が分散する転送経路を決定する。経路決定部５３Ａは、ＬＢ区間２３内のＬＢ１ＡとＰｒｏｘｙ１Ａとの間、ＬＢ１ＡとＰｒｏｘｙ１Ｂとの間、ＬＢ１ＡとＰｒｏｘｙ１Ｃとの間、ＬＢ１ＡとＰｒｏｘｙ１Ｄとの間の転送経路を決定する。経路決定部５３Ａは、ＬＢ区間２３内のＬＢ１ＢとＰｒｏｘｙ１Ａとの間、ＬＢ１ＢとＰｒｏｘｙ１Ｂとの間、ＬＢ１ＢとＰｒｏｘｙ１Ｃとの間、ＬＢ１ＢとＰｒｏｘｙ１Ｄとの間の転送経路を決定する。
【００９１】
図１６Ｃは、ＬＢ区間２３内の最前段の集約ＬＢ群２２のトラヒック割合（送信量）の一例を示す説明図である。経路決定部５３Ａは、ＬＢ区間２３内の最後段のＶＮＦ群２１のトラヒック割合（受信量）及び転送経路に基づき、ＬＢ区間２３内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ａは、ＬＢ区間２３内の転送経路のトラヒック割合に基づき、ＬＢ区間２３内の最前段の集約ＬＢ群２２のトラヒック割合（送信量）を決定する。ＬＢ１Ａのトラヒック割合を全体トラヒック量の１／２、ＬＢ１Ｂのトラヒック割合を全体トラヒック量の１／２とする。
【００９２】
第３の決定部４３は、ＬＢ区間２３及びＬＢレス区間２４内の転送経路及び各転送経路のトラヒック割合に基づき設定情報を設定部４４に登録する。設定情報は、ＬＢ１Ａのトラヒック割合、ＬＢ１Ｂのトラヒック割合、ＬＢ１Ａ、ＬＢ１Ｂ、ＦＷ１Ａ〜ＦＷ１Ｃ、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄ、Ｐｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃ、ＦＷ２Ａ及びＦＷ２Ｂ、Ｐｒｏｘｙ３Ａ及び３Ｂの転送経路となる。
【００９３】
ＬＢ１Ａのトラヒック割合は、１／４のトラヒックをＰｒｏｘｙ１Ａへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｂへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｃへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｄへ送信に設定される。ＬＢ１Ｂのトラヒック割合は、１／４のトラヒックをＰｒｏｘｙ１Ａへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｂへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｃへ送信、１／４のトラヒックをＰｒｏｘｙ１Ｄへ送信に設定される。
【００９４】
ＬＢ１Ａの転送経路は、Ｐｒｏｘｙ１Ａ宛のトラヒックをＦＷ１Ａへ転送、Ｐｒｏｘｙ１Ｂ宛のトラヒックをＦＷ１Ｂへ転送、Ｐｒｏｘｙ１Ｃ宛のトラヒックをＦＷ１Ｃへ転送、Ｐｒｏｘｙ１Ｄ宛のトラヒックをＦＷ１Ａへ転送に設定される。ＬＢ１Ｂの転送経路は、Ｐｒｏｘｙ１Ａ宛のトラヒックをＦＷ１Ｂへ転送、Ｐｒｏｘｙ１Ｂ宛のトラヒックをＦＷ１Ｃへ転送、Ｐｒｏｘｙ１Ｃ宛のトラヒックをＦＷ１Ａへ転送、Ｐｒｏｘｙ１Ｄ宛のトラヒックをＦＷ１Ｂへ転送に設定される。
【００９５】
ＦＷ１Ａの転送経路は、Ｐｒｏｘｙ１Ａ宛のトラヒックをＰｒｏｘｙ１Ａへ転送、Ｐｒｏｘｙ１Ｃ宛のトラヒックをＰｒｏｘｙ１Ｃへ転送、Ｐｒｏｘｙ１Ｄ宛のトラヒックをＰｒｏｘｙ１Ｄへ転送に設定される。ＦＷ１Ｂの転送経路は、Ｐｒｏｘｙ１Ａ宛のトラヒックをＰｒｏｘｙ１Ａへ転送、Ｐｒｏｘｙ１Ｂ宛のトラヒックをＰｒｏｘｙ１Ｂへ転送、Ｐｒｏｘｙ１Ｄ宛のトラヒックをＰｒｏｘｙ１Ｄへ転送に設定される。ＦＷ１Ｃの転送経路は、Ｐｒｏｘｙ１Ｂ宛のトラヒックをＰｒｏｘｙ１Ｂへ転送、Ｐｒｏｘｙ１Ｃ宛のトラヒックをＰｒｏｘｙ１Ｃへ転送に設定される。
【００９６】
Ｐｒｏｘｙ１Ａの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ２Ａへ送信、Ｐｒｏｘｙ１Ｂの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ２Ｂへ送信となる。Ｐｒｏｘｙ１Ｃの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ２Ｃへ送信、Ｐｒｏｘｙ１Ｄの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ２Ａへ送信となる。
【００９７】
Ｐｒｏｘｙ１Ａの転送経路は、Ｐｒｏｘｙ２Ａ宛のトラヒックをＰｒｏｘｙ２Ａへ転送に設定される。Ｐｒｏｘｙ１Ｂの転送経路は、Ｐｒｏｘｙ２Ｂ宛のトラヒックをＰｒｏｘｙ２Ｂへ転送に設定される。Ｐｒｏｘｙ１Ｃの転送経路は、Ｐｒｏｘｙ２Ｃ宛のトラヒックをＰｒｏｘｙ２Ｃへ転送に設定される。Ｐｒｏｘｙ１Ｄの転送経路は、Ｐｒｏｘｙ２Ａ宛のトラヒックをＰｒｏｘｙ２Ａへ転送に設定される。
【００９８】
Ｐｒｏｘｙ２Ａの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ３Ａへ送信、Ｐｒｏｘｙ２Ｂの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ３Ｂへ送信となる。Ｐｒｏｘｙ２Ｃの上位Ｐｒｏｘｙ設定は、Ｐｒｏｘｙ３Ｂへ送信となる。
【００９９】
Ｐｒｏｘｙ２Ａの転送経路は、Ｐｒｏｘｙ３Ａ宛のトラヒックをＦＷ２Ａへ転送に設定される。Ｐｒｏｘｙ２Ｂの転送経路は、Ｐｒｏｘｙ３Ｂ宛のトラヒックをＦＷ２Ｂへ転送に設定される。Ｐｒｏｘｙ２Ｃの転送経路は、Ｐｒｏｘｙ３Ｂ宛のトラヒックをＦＷ２Ｂへ転送に設定される。ＦＷ２Ａの転送経路は、Ｐｒｏｘｙ３Ａ宛のトラヒックをＰｒｏｘｙ３Ａへ転送に設定される。ＦＷ２Ｂの転送経路は、Ｐｒｏｘｙ３Ｂ宛のトラヒックをＰｒｏｘｙ３Ｂへ転送に設定される。
【０１００】
次に実施例２のサービスチェインシステム１の動作について説明する。図１７は、第３のサービスチェイン構築処理に関わる管理サーバ３内のプロセッサ３６の処理動作の一例を示すフローチャートである。
【０１０１】
第２の決定部４２Ａ内の区分決定部５１は、ステップＳ１３にてサービスチェイン２０Ｂのトポロジ構成を決定後、サービスチェイン２０Ｂの集約ＬＢ群２２及び終端のＶＮＦ群２１に基づき、ＬＢ区間２３及びＬＢレス区間２４を決定する（ステップＳ５１）。
【０１０２】
第２の決定部４２Ａ内の経路決定部５３Ａは、サービスチェイン２０Ｂの最後段のＬＢレス区間２４を指定し（ステップＳ５２）、指定ＬＢレス区間２４内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）を決定する（ステップＳ５３）。
【０１０３】
経路決定部５３Ａは、指定ＬＢレス区間２４内の最前段の終端のＶＮＦ群２１と最後段の終端のＶＮＦ群２１との間の全経路が分散する転送経路を決定する（ステップＳ５４）。経路決定部５３Ａは、指定ＬＢレス区間２４内の各転送経路のトラヒック割合を決定する（ステップＳ５５）。
【０１０４】
経路決定部５３Ａは、指定ＬＢレス区間２４内の転送経路のトラヒック割合に基づき、指定ＬＢレス区間２４内の最前段の終端のＶＮＦ群２１のトラヒック割合（送信量）を決定する（ステップＳ５６）。
【０１０５】
第２の決定部４２Ａ内の指定部５２は、降順順序において次の区間がＬＢレス区間２４であるか否かを判定する（ステップＳ５７）。尚、降順順序とは、例えば、第２のＬＢレス区間２４Ｂ→第１のＬＢレス区間２４Ａ→ＬＢ区間２３の順序である。指定部５２は、次の区間がＬＢレス区間２４の場合（ステップＳ５７肯定）、ＬＢレス区間２４を指定する（ステップＳ５８）。更に、経路決定部５３Ａは、指定ＬＢレス区間２４の後区間の最前段のＶＮＦ群２１のトラヒック割合（送信量）を指定ＬＢレス区間２４の最後段のＶＮＦ群２１のトラヒック割合（受信量）とし（ステップＳ５９）、ステップＳ５４に移行する。
【０１０６】
指定部５２は、ステップＳ５７にて次の区間がＬＢレス区間２４でない場合（ステップＳ５７否定）、ＬＢ区間２３を指定する（ステップＳ６０）。経路決定部５３Ａは、指定ＬＢ区間２３の後区間の最前段の終端のＶＮＦ群２１のトラヒック割合（送信量）をＬＢ区間２３の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）とする（ステップＳ６１）。更に、経路決定部５３Ａは、指定ＬＢ区間２３内の最前段の集約ＬＢ群２２と最後段の終端のＶＮＦ群２１との間の全経路が分散する転送経路を決定する（ステップＳ６２）。経路決定部５３Ａは、指定ＬＢ区間２３内の各転送経路のトラヒック割合を決定する（ステップＳ６３）。
【０１０７】
経路決定部５３Ａは、指定ＬＢ区間２３内の転送経路のトラヒック割合に基づき、指定ＬＢ区間２３内の最前段の集約ＬＢ群２２のトラヒック割合（送信量）を決定し（ステップＳ６４）、集約ＬＢ群２２の分配割合を決定すべく、ステップＳ１９に移行する。
【０１０８】
実施例２の管理サーバ３は、サービスチェイン２０Ｂ内の集約ＬＢ群２２及び終端のＶＮＦ群２１の配置位置に基づき、サービスチェイン２０ＢをＬＢ区間２３及びＬＢレス区間２４に区分する。管理サーバ３は、サービスチェイン２０Ｂの最後段から最前段までの降順でＬＢ区間２３及びＬＢレス区間２４を順次指定する。管理サーバ３は、指定されたＬＢ区間２３及びＬＢレス区間２４毎に最前段のトラヒック割合（送信量）、転送経路のトラヒック割合及び最後段のトラヒック割合（受信量）を決定する。そして、管理サーバ３は、ＬＢ区間２３及びＬＢレス区間２４内の最前段のトラヒック割合、転送経路のトラヒック割合及び最後段のトラヒック割合に基づき、サービスチェイン２０Ｂ内の集約ＬＢ群２２の分配割合、ＶＮＦ群２１のトラヒック割合を決定する。その結果、最初の終端のＶＮＦ群２１後段以降の終端のＶＮＦ群２１を配置したサービスチェイン２０Ｂであっても、最初の終端のＶＮＦ群２１後段以降のＶＮＦ群２１の台数を反映したトラヒック量を分散できる。しかも、ＬＢ１３に割当てるはずの仮想リソースを削減することで、低コストのサービスチェイン２０Ｂを構築できる。
【０１０９】
管理サーバ３は、サービスチェイン２０Ｂ内の第２のＬＢレス区間２４Ｂ→第１のＬＢレス区間２４Ａ→ＬＢ区間２３の順に指定する。管理サーバ３は、第１のＬＢレス区間２４Ａが指定された場合、後区間である第２のＬＢレス区間２４Ｂ内の最前段のＶＮＦ群２１のトラヒック割合を第１のＬＢレス区間２４Ａ内の最後段のＶＮＦ群２１のトラヒック割合に設定する。また、管理サーバ３は、ＬＢ区間２３が指定された場合、後区間である第１のＬＢレス区間２４Ａ内の最前段のＶＮＦ群２１のトラヒック割合をＬＢ区間２３内の最後段のＶＮＦ群２１のトラヒック割合に設定する。トラヒック割合を設定する際の処理負担を軽減できる。
【０１１０】
尚、実施例１及び２のサービスチェインシステム１では、最前段に集約ＬＢ群２２を配置する構成としたが、最前段に加えて、途中に集約ＬＢ群２２を配置しても良く、その場合の実施の形態につき、実施例３として以下に説明する。
【実施例３】
【０１１１】
図１８は、実施例３のサービスチェイン２０Ｃの一例を示す説明図である。図１８に示すサービスチェイン２０Ｃは、第１の集約ＬＢ群２２Ａと、ＶＮＦ＃１〜ＶＮＦ＃４と、第２の集約ＬＢ群２２Ｂと、ＶＮＦ＃５〜ＶＮＦ＃９とを配置した構成である。第１の集約ＬＢ群２２Ａは、例えば、ＬＢ１Ａ及びＬＢ１Ｂを有し、ＶＮＦ＃１は、例えば、ＦＷ１Ａ〜ＦＷ１Ｃを有し、ＶＮＦ＃２は、例えば、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄを有する。ＶＮＦ＃３は、例えば、Ｐｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃを有し、ＶＮＦ＃４は、例えば、ＦＷ２Ａ及びＦＷ２Ｂを有する。また、第２の集約ＬＢ群２２Ｂは、ＬＢ２Ａ及びＬＢ２Ｂを有し、ＶＮＦ＃５は、例えば、ＦＷ３Ａ〜ＦＷ３Ｃを有する。ＶＮＦ＃６は、例えば、Ｐｒｏｘｙ３Ａ〜Ｐｒｏｘｙ３Ｄを有し、ＶＮＦ＃７は、例えば、Ｐｒｏｘｙ４Ａ〜Ｐｒｏｘｙ４Ｃを有し、ＶＮＦ＃８は、例えば、ＦＷ４Ａ及びＦＷ４Ｂを有し、ＶＮＦ＃９は、例えば、Ｐｒｏｘｙ５Ａ及びＰｒｏｘｙ５Ｂを有する。尚、ＶＮＦ＃２、＃３、＃６、＃７、＃９は、終端のＶＮＦ群である。
【０１１２】
図１９は、実施例３の管理サーバ３内のプロセッサ３６の機能構成の一例を示す説明図である。第２の決定部４２Ｂ内の区分決定部５１は、サービスチェイン２０Ｃ内の集約ＬＢ群２２及び終端のＶＮＦ群２１の配置箇所に基づき、サービスチェイン２０ＣをＬＢ区間２３及びＬＢレス区間２４に区分する。区分決定部５１は、図１８に示すトポロジ構成において第１のＬＢ区間２３Ａ、第１のＬＢレス区間２４Ａ、第２のＬＢレス区間２４Ｂ、第２のＬＢ区間２３Ｂ、第３のＬＢレス区間２４Ｃ及び第４のＬＢレス区間２４Ｄを決定する。第１のＬＢ区間２３Ａは、第１の集約ＬＢ群２２Ａと、ＶＮＦ＃１と、ＶＮＦ＃２とを配置した区間である。第１のＬＢレス区間２４Ａは、ＶＮＦ＃２と、ＶＮＦ＃３とを配置した区間である。第２のＬＢレス区間２４Ｂは、ＶＮＦ＃３と、ＶＮＦ＃４と、第２の集約ＬＢ群２２Ｂとを配置した区間である。第２のＬＢ区間２３Ｂは、第２の集約ＬＢ群２２Ｂと、ＶＮＦ＃５と、ＶＮＦ＃６とを配置した区間である。第３のＬＢレス区間２４Ｃは、ＶＮＦ＃６とＶＮＦ＃７とを配置した区間である。第４のＬＢレス区間２４Ｄは、ＶＮＦ＃７と、ＶＮＦ＃８と、ＶＮＦ＃９とを配置した区間である。
【０１１３】
第２の決定部４２Ｂ内の指定部５２は、第１のＬＢ区間２３Ａ→第１のＬＢレス区間２４Ａ→第２のＬＢレス区間２４Ｂ→第２のＬＢ区間２３Ｂ→第３のＬＢレス区間２４Ｃ→第４のＬＢレス区間２４Ｄの昇順に順次指定する。第２の決定部４２Ｂ内の経路決定部５３Ｂは、指定されたＬＢ区間２３又はＬＢレス区間２４毎に最前段のトラヒック割合（送信量）、転送経路のトラヒック割合及び最後段のトラヒック割合（受信量）を算出する。経路決定部５３Ｂは、ＬＢ区間２３及びＬＢレス区間２４毎の最前段のトラヒック割合（送信量）、転送経路のトラヒック割合及び最後段のトラヒック割合（受信量）に基づき、集約ＬＢ群２２の分配割合及び転送経路上のＶＮＦ群２１のトラヒック割合を算出する。
【０１１４】
尚、経路決定部５３Ｂは、第２のＬＢレス区間２４Ｂ内の最後段の第２の集約ＬＢ群２２Ｂのトラヒック割合を算出する。経路決定部５３Ｂは、第２のＬＢレス区間２４Ｂ内の最後段の第２の集約ＬＢ群２２Ｂのトラヒック割合（受信量）を第２のＬＢ区間２３Ｂ内の最前段の第２の集約ＬＢ群２２Ｂのトラヒック割合（送信量）とする。
【０１１５】
図２０Ａは、第２のＬＢ区間２３Ｂ内の終端宛先の一例を示す説明図である。尚、ＶＮＦ＃６内のＰｒｏｘｙ３Ａ〜３Ｄは終端のＶＮＦ群２１とする。経路決定部５３Ｂは、第２のＬＢレス区間２４Ｂ内の最後段の第２の集約ＬＢ群２２Ｂのトラヒック割合（受信量）を第２のＬＢ区間２３Ｂ内の最前段の第２の集約ＬＢ群２２Ｂのトラヒック割合（送信量）とする。経路決定部５３Ｂは、第２のＬＢ区間２３Ｂ内の第２の集約ＬＢ群２２Ｂの終端宛先となる終端のＶＮＦ群２１（ＶＮＦ＃６内のＰｒｏｘｙ３Ａ〜Ｐｒｏｘｙ３Ｄ）を決定する。
【０１１６】
図２０Ｂは、第２のＬＢ区間２３Ｂ内の転送経路の一例を示す説明図である。経路決定部５３Ｂは、第２のＬＢ区間２３Ｂ内の第２の集約ＬＢ群２２Ｂと終端のＶＮＦ群２１との間の全経路が分散する転送経路を決定する。経路決定部５３Ｂは、第２のＬＢ区間２３Ｂ内のＬＢ２ＡからＰｒｏｘｙ３Ａ〜Ｐｒｏｘｙ３Ｄまでの４本の転送経路及びＬＢ２ＢからＰｒｏｘｙ３Ａ〜Ｐｒｏｘｙ３Ｄまでの４本の転送経路を決定する。
【０１１７】
図２０Ｃは、第２のＬＢ区間２３Ｂ内の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３Ｂは、第２のＬＢ区間２３Ｂ内の最前段の第２の集約ＬＢ群２２Ｂのトラヒック割合（送信量）及び転送経路に基づき、第２のＬＢ区間２３Ｂ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ｂは、第２のＬＢ区間２３Ｂ内の転送経路のトラヒック割合に基づき、第２のＬＢ区間２３Ｂ内の最後段のＶＮＦ＃６のトラヒック割合（受信量）を決定する。Ｐｒｏｘｙ３Ａのトラヒック割合は全体トラヒック量の１／４、Ｐｒｏｘｙ３Ｂのトラヒック割合は全体トラヒック量の１／４、Ｐｒｏｘｙ３Ｃのトラヒック割合は全体トラヒック量の１／４、Ｐｒｏｘｙ３Ｄのトラヒック割合は全体トラヒック量の１／４とする。
【０１１８】
図２１Ａは、第３のＬＢレス区間２４Ｃ内の終端宛先の一例を示す説明図である。尚、ＶＮＦ＃９のＰｒｏｘｙ４Ａ〜Ｐｒｏｘｙ４Ｃは終端のＶＮＦ群２１とする。経路決定部５３Ｂは、第２のＬＢ区間２３Ｂ内の最後段のＶＮＦ＃６のトラヒック割合（受信量）を第３のＬＢレス区間２４Ｃ内の最前段のＶＮＦ＃６のトラヒック割合（送信量）とする。経路決定部５３Ｂは、第３のＬＢレス区間２４Ｃ内のＶＮＦ＃６（Ｐｒｏｘｙ３Ａ〜Ｐｒｏｘｙ３Ｄ）の終端宛先となる最後段の終端のＶＮＦ群２１（ＶＮＦ＃７内のＰｒｏｘｙ４Ａ〜Ｐｒｏｘｙ４Ｃ）と決定する。
【０１１９】
図２１Ｂは、第３のＬＢレス区間２４Ｃ内の転送経路の一例を示す説明図である。経路決定部５３Ｂは、第３のＬＢレス区間２４Ｃ内のＶＮＦ＃６とＶＮＦ＃７との間の全経路が分散する転送経路を決定する。経路決定部５３Ｂは、第３のＬＢレス区間２４Ｃ内のＰｒｏｘｙ３ＡとＰｒｏｘｙ４Ａとの間、Ｐｒｏｘｙ３ＢとＰｒｏｘｙ４Ｂとの間、Ｐｒｏｘｙ３ＣとＰｒｏｘｙ４Ｃとの間、Ｐｒｏｘｙ３ＤとＰｒｏｘｙ４Ａとの間の転送経路を決定する。
【０１２０】
図２１Ｃは、第３のＬＢレス区間２４Ｃ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３Ｂは、第３のＬＢレス区間２４Ｃ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）及び転送経路に基づき、第３のＬＢレス区間２４Ｃ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ｂは、第３のＬＢレス区間２４Ｃ内の転送経路のトラヒック割合に基づき、第３のＬＢレス区間２４Ｃ内の最後段のＶＮＦ＃７のトラヒック割合（受信量）を決定する。ＶＮＦ＃７内のＰｒｏｘｙ４Ａのトラヒック割合は全体トラヒック量の２／４、Ｐｒｏｘｙ４Ｂのトラヒック割合は全体トラヒック量の１／４、Ｐｒｏｘｙ４Ｃのトラヒック割合は全体トラヒック量の１／４とする。
【０１２１】
図２２Ａは、第４のＬＢレス区間２４Ｄ内の終端宛先の一例を示す説明図である。尚、ＶＮＦ＃７のＰｒｏｘｙ５Ａ及び５Ｂは終端のＶＮＦ群２１とする。経路決定部５３Ｂは、第３のＬＢレス区間２４Ｃ内の最後段のＶＮＦ＃７のトラヒック割合（受信量）を第４のＬＢレス区間２４Ｄ内の最前段のＶＮＦ＃７のトラヒック割合（送信量）とする。経路決定部５３Ｂは、第４のＬＢレス区間２４Ｄ内の最前段のＶＮＦ＃７内のＰｒｏｘｙ４Ａ〜Ｐｒｏｘｙ４Ｃの終端宛先となる最後段の終端のＶＮＦ群２１（ＶＮＦ＃９内のＰｒｏｘｙ５Ａ及び５Ｂ）として決定する。
【０１２２】
図２２Ｂは、第４のＬＢレス区間２４Ｄ内の転送経路の一例を示す説明図である。経路決定部５３Ｂは、第４のＬＢレス区間２４Ｄ内のＶＮＦ＃７とＶＮＦ＃９との間の全経路が分散する転送経路を決定する。経路決定部５３Ｂは、第４のＬＢレス区間２４Ｄ内のＰｒｏｘｙ４ＡとＰｒｏｘｙ５Ａとの間、Ｐｒｏｘｙ４ＢとＰｒｏｘｙ５Ｂとの間、Ｐｒｏｘｙ４ＣとＰｒｏｘｙ５Ｂとの間の転送経路を決定する。
【０１２３】
図２２Ｃは、第４のＬＢレス区間２４Ｄ内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３Ｂは、第４のＬＢレス区間２４Ｄ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）及び転送経路に基づき、第４のＬＢレス区間２４Ｄ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ｂは、第４のＬＢレス区間２４Ｄ内の転送経路のトラヒック割合に基づき、第４のＬＢレス区間２４Ｄ内の終端のＶＮＦ群２１のトラヒック割合（受信量）を決定する。Ｐｒｏｘｙ５Ａのトラヒック割合は全体トラヒック量の１／２、Ｐｒｏｘｙ５Ｂのトラヒック割合は全体トラヒック量の１／２とする。
【０１２４】
第３の決定部４３は、ＬＢ区間２３及びＬＢレス区間２４内の転送経路及び各転送経路のトラヒック割合に基づき設定情報を設定部４４に登録する。設定情報は、ＬＢ１Ａのトラヒック割合、ＬＢ１Ｂのトラヒック割合、ＬＢ１Ａ、ＬＢ１Ｂ、ＦＷ１Ａ〜ＦＷ１Ｃ、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄ、Ｐｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃ、ＦＷ２Ａ及びＦＷ２Ｂ、Ｐｒｏｘｙ３Ａ及び３Ｂの転送経路となる。設定情報は、ＬＢ２Ａのトラヒック割合、ＬＢ２Ｂのトラヒック割合、ＬＢ２Ａ、ＬＢ２Ｂ、ＦＷ３Ａ〜ＦＷ３Ｃ、Ｐｒｏｘｙ３Ａ〜Ｐｒｏｘｙ３Ｄ、Ｐｒｏｘｙ４Ａ〜Ｐｒｏｘｙ４Ｃ、ＦＷ４Ａ及びＦＷ４Ｂ、Ｐｒｏｘｙ５Ａ及びＰｒｏｘｙ５Ｂの転送経路となる。
【０１２５】
次に実施例３のサービスチェインシステム１の動作について説明する。図２３は、第４のサービスチェイン構築処理に関わる管理サーバ３内のプロセッサ３６の処理動作の一例を示すフローチャートである。
【０１２６】
第２の決定部４２Ｂ内の経路決定部５３Ｂは、ステップＳ１３にてサービスチェイン２０Ｃのトポロジ構成を決定後、サービスチェイン２０Ｃの集約ＬＢ群２２及び終端のＶＮＦ群２１に基づき、ＬＢ区間２３及びＬＢレス区間２４を決定する（ステップＳ７１）。第２の決定部４２Ｂ内の指定部５１は、最前段のＬＢ区間２３を指定する（ステップＳ７２）。尚、最前段のＬＢ区間２３は、第１のＬＢ区間２３Ａである。
【０１２７】
第２の決定部４２Ｂ内の経路決定部５３Ｂは、指定ＬＢ区間２３内の最前段の集約ＬＢ群２２のトラヒック割合（送信量）を決定する（ステップＳ７３）。経路決定部５３Ｂは、指定ＬＢ区間２３内の最前段の集約ＬＢ群２２の最終宛先となる最後段の終端のＶＮＦ群２１を決定する（ステップＳ７４）。
【０１２８】
経路決定部５３Ｂは、指定ＬＢ区間２３内の集約ＬＢ群２２と終端のＶＮＦ群２１との間の全経路が分散する転送経路を決定する（ステップＳ７５）。経路決定部５３Ｂは、指定ＬＢ区間２３内の各転送経路のトラヒック割合を決定する（ステップＳ７６）。
【０１２９】
経路決定部５３Ｂは、指定ＬＢ区間２３内の転送経路のトラヒック割合に基づき、指定ＬＢ区間２３内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）を決定する（ステップＳ７７）。指定部５２は、昇順において次の区間があるか否かを判定する（ステップＳ７８）。指定部５２は、次の区間がある場合（ステップＳ７８肯定）、次の区間がＬＢレス区間２４であるか否かを判定する（ステップＳ７９）。指定部５２は、次の区間がＬＢレス区間２４の場合（ステップＳ７９肯定）、次のＬＢレス区間２４を指定する（ステップＳ８０）。経路決定部５３Ｂは、前区間内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）を指定ＬＢレス区間２４内の最前段のＶＮＦ群２１のトラヒック割合（送信量）とする（ステップＳ８１）。
【０１３０】
経路決定部５３Ｂは、指定ＬＢレス区間２４内の最前段のＶＮＦ群２１と最後段のＶＮＦ群２１との間の全経路が分散する転送経路を決定する（ステップＳ８２）。経路決定部５３Ｂは、指定ＬＢレス区間２４内の各転送経路のトラヒック割合を決定する（ステップＳ８３）。
【０１３１】
経路決定部５３Ｂは、指定ＬＢ区間２３内の転送経路のトラヒック割合に基づき、指定ＬＢ区間２３内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）を決定し（ステップＳ８４）、次の区間があるか否かを判定すべく、ステップＳ７８に移行する。
【０１３２】
指定部５２は、次の区間がＬＢレス区間２４でない場合（ステップＳ７９否定）、次のＬＢ区間２３を指定する（ステップＳ８５）。経路決定部５３Ｂは、ＬＢ区間２３の前区間の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）をＬＢ区間２３の最前段の集約ＬＢ群２２のトラヒック割合（送信量）とする（ステップＳ８６）。そして、経路決定部５３Ｂは、指定ＬＢ区間２３内の終端のＶＮＦ群２１を決定すべく、ステップＳ７４に移行する。第１の決定部４１は、構成要求を受信しなかった場合（ステップＳ１１否定）、図２３に示す処理動作を終了する。指定部５２は、次の区間がない場合（ステップＳ７８否定）、集約ＬＢ群２２の分配割合を決定すべく、ステップＳ１９に移行する。
【０１３３】
実施例３の管理サーバ３は、サービスチェイン２０Ｃ内の集約ＬＢ群２２及び終端のＶＮＦ群２１の配置位置に基づき、サービスチェイン２０ＣをＬＢ区間２３及びＬＢレス区間２４に区分する。管理サーバ３は、サービスチェイン２０Ｃの最前段から最後段までの昇順でＬＢ区間２３及びＬＢレス区間２４を順次指定する。管理サーバ３は、指定されたＬＢ区間２３及びＬＢレス区間２４毎に最前段のトラヒック割合（送信量）、転送経路のトラヒック割合及び最後段のトラヒック割合（受信量）を決定する。そして、管理サーバ３は、ＬＢ区間２３及びＬＢレス区間２４内の最前段のトラヒック割合、転送経路のトラヒック割合及び最後段のトラヒック割合に基づき、サービスチェイン２０Ｃ内の集約ＬＢ群２２の分配割合、ＶＮＦ群２１のトラヒック割合を決定する。その結果、集約ＬＢ群２２が途中に配置されたサービスチェイン２０Ｃであっても、最初の終端のＶＮＦ群２１後段以降のＶＮＦ群２１の台数を反映したトラヒック量を分散できる。
【０１３４】
管理サーバ３は、サービスチェイン２０Ｃ内の第１のＬＢ区間２３Ａ→第１のＬＢレス区間２４Ａ→第２のＬＢレス区間２４Ｂ→第２のＬＢ区間２３Ｂ→第３のＬＢレス区間２４Ｃ→第４のＬＢレス区間２４Ｄの順に指定する。管理サーバ３は、例えば、第２のＬＢ区間２３Ｂが指定された場合、前区間である第２のＬＢ区間２３Ｂ内の最後段のＶＮＦ群２１のトラヒック割合を第２のＬＢ区間２３Ｂ内の最前段のＶＮＦ群２１のトラヒック割合に設定する。また、管理サーバ３は、例えば、第４のＬＢレス区間２４Ｄが指定された場合、前区間である第３のＬＢレス区間２４Ｃ内の最後段のＶＮＦ群２１のトラヒック割合を第４のＬＢレス区間２４Ｄ内の最前段のＶＮＦ群２１のトラヒック割合に設定する。トラヒック割合を設定する際の処理負担を軽減できる。
【０１３５】
尚、上記実施例３の管理サーバ３は、第１のＬＢ区間２３Ａ→第１のＬＢレス区間２４Ａ→第２のＬＢレス区間２４Ｂ→第２のＬＢ区間２３Ｂ→第３のＬＢレス区間２４Ｃ→第４のＬＢレス区間２４Ｄの昇順に区間毎の転送経路及びトラヒック割合を順次算出した。しかしながら、第１のＬＢ区間２３Ａ→第１のＬＢレス区間２４Ａ→第２のＬＢレス区間２４Ｂ→第２のＬＢ区間２３Ｂ→第３のＬＢレス区間２４Ｃ→第４のＬＢレス区間２４Ｄの昇順に限定されるものではなく、適宜変更可能である。例えば、第４のＬＢレス区間２４Ｄ→第３のＬＢレス区間２４Ｃ→第２のＬＢ区間２３Ｂ→第２のＬＢレス区間２４Ｂ→第１のＬＢレス区間２４Ａ→第１のＬＢ区間２３Ａの降順に区間毎の転送経路及びトラヒック割合を順次算出しても良い。その実施の形態につき、実施例４として以下に説明する。尚、実施例３のサービスチェインシステム１と同一の構成には同一符号を付することで、その重複する構成及び動作の説明については省略する。
【実施例４】
【０１３６】
図２４は、実施例４の管理サーバ３内のプロセッサ３６の機能構成の一例を示す説明図である。図２４に示す第２の決定部４２Ｃ内の指定部５２は、第４のＬＢレス区間２４Ｄ→第３のＬＢレス区間２４Ｃ→第２のＬＢ区間２３Ｂ→第２のＬＢレス区間２４Ｂ→第１のＬＢレス区間２４Ａ→第１のＬＢ区間２３Ａの降順に区間を順次指定する。第２の決定部４２Ｃ内の経路決定部５３Ｃは、ＬＢ区間２３及びＬＢレス区間２４の転送経路及びトラヒック割合に基づき、サービスチェイン２０Ｃの集約ＬＢ群２２の分配割合及び、ＶＮＦ群２１及び転送経路のトラヒック割合を決定する。
【０１３７】
指定部５２は、図１８に示すサービスチェイン２０Ｃにおいて最後段の第４のＬＢレス区間２４Ｄを指定する。図２５Ａは、第４のＬＢレス区間２４Ｄ内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３Ｃは、第４のＬＢレス区間２４Ｄ内の終端宛先のＶＮＦ群２１内の終端のＶＮＦ１２の台数が２台であるため、第４のＬＢレス区間２４Ｄ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）を全体トラヒック量の１／２とする。
【０１３８】
図２５Ｂは、第４のＬＢレス区間２４Ｄ内の転送経路の一例を示す説明図である。経路決定部５３Ｃは、第４のＬＢレス区間２４Ｄ内の最後段の終端のＶＮＦ群２１（ＶＮＦ＃９内のＰｒｏｘｙ５Ａ及び５Ｂ）の送信元となる最前段のＶＮＦ＃７内のＰｒｏｘｙ４Ａ〜Ｐｒｏｘｙ４Ｃを決定する。経路決定部５３Ｃは、第４のＬＢレス区間２４Ｄ内のＶＮＦ＃７とＶＮＦ＃９との間の全経路が分散する転送経路を決定する。経路決定部５３Ｃは、第４のＬＢレス区間２４Ｄ内のＰｒｏｘｙ４ＡとＰｒｏｘｙ５Ａとの間、Ｐｒｏｘｙ４ＢとＰｒｏｘｙ５Ｂとの間、Ｐｒｏｘｙ４ＣとＰｒｏｘｙ５Ａとの間の転送経路を決定する。
【０１３９】
図２５Ｃは、第４のＬＢレス区間２４Ｄ内の最前段の終端のＶＮＦ群２１のトラヒック割合（送信量）の一例を示す説明図である。経路決定部５３Ｃは、第４のＬＢレス区間２４Ｄ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）及び転送経路に基づき、第４のＬＢレス区間２４Ｄ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ｃは、第４のＬＢレス区間２４Ｄ内の転送経路のトラヒック割合に基づき、第４のＬＢレス区間２４Ｄ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）を決定する。Ｐｒｏｘｙ４Ａのトラヒック割合を全体トラヒック量の２／４、Ｐｒｏｘｙ４Ｂのトラヒック割合を全体トラヒック量の１／４、Ｐｒｏｘｙ４Ｃのトラヒック割合を全体トラヒック量の１／４とする。
【０１４０】
図２６Ａは、第３のＬＢレス区間２４Ｃ内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３Ｃは、第４のＬＢレス区間２４Ｄ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）を第３のＬＢレス区間２４Ｃ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）とする。
【０１４１】
図２６Ｂは、第３のＬＢレス区間２４Ｃ内の転送経路の一例を示す説明図である。経路決定部５３Ｃは、第３のＬＢレス区間２４Ｃ内の最後段の終端のＶＮＦ群２１（ＶＮＦ＃７内のＰｒｏｘｙ４Ａ〜Ｐｒｏｘｙ４Ｃ）の送信元となる最前段のＶＮＦ＃６内のＰｒｏｘｙ３Ａ〜Ｐｒｏｘｙ３Ｄを決定する。経路決定部５３Ｃは、第３のＬＢレス区間２４Ｃ内のＶＮＦ＃６とＶＮＦ＃７との間の全経路が分散する転送経路を決定する。経路決定部５３Ｃは、第３のＬＢレス区間２４Ｃ内のＰｒｏｘｙ３ＡとＰｒｏｘｙ４Ａとの間、Ｐｒｏｘｙ３ＢとＰｒｏｘｙ４Ｂとの間、Ｐｒｏｘｙ３ＣとＰｒｏｘｙ４Ｃとの間、Ｐｒｏｘｙ３ＤとＰｒｏｘｙ４Ａとの間の転送経路を決定する。
【０１４２】
図２６Ｃは、第３のＬＢレス区間２４Ｃ内の最前段の終端のＶＮＦ群２１のトラヒック割合（送信量）の一例を示す説明図である。経路決定部５３Ｃは、第３のＬＢレス区間２４Ｃ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）及び転送経路に基づき、第３のＬＢレス区間２４Ｃ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ｃは、第３のＬＢレス区間２４Ｃ内の転送経路のトラヒック割合に基づき、第３のＬＢレス区間２４Ｃ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）を決定する。Ｐｒｏｘｙ３Ａのトラヒック割合を全体トラヒック量の１／４、Ｐｒｏｘｙ３Ｂのトラヒック割合を全体トラヒック量の１／４、Ｐｒｏｘｙ３Ｃのトラヒック割合を全体トラヒック量の１／４、Ｐｒｏｘｙ３Ｄのトラヒック割合を全体トラヒック量の１／４とする。
【０１４３】
図２７Ａは、第２のＬＢ区間２３Ｂ内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３Ｃは、第３のＬＢレス区間２４Ｃ内の最前段のＶＮＦ群のトラヒック割合（送信量）を第２のＬＢ区間２３Ｂ内の最後段のＶＮＦ群２１のトラヒック割合（受信量）とする。
【０１４４】
図２７Ｂは、第２のＬＢ区間２３Ｂ内の転送経路の一例を示す説明図である。経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内の最後段の終端のＶＮＦ群２１（ＶＮＦ＃６内のＰｒｏｘｙ３Ａ〜Ｐｒｏｘｙ３Ｄ）の送信元となる最前段の第２の集約ＬＢ群２２Ｂ内のＬＢ２Ａ及び２Ｂを決定する。経路決定部５３Ｃは、第２のＬＢ区２３Ｂ間内の第２の集約ＬＢ群２２ＢとＶＮＦ＃６との間の全経路が分散する転送経路を決定する。経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内のＬＢ２ＡとＰｒｏｘｙ３Ａとの間、ＬＢ２ＡとＰｒｏｘｙ３Ｂとの間、ＬＢ２ＡとＰｒｏｘｙ３Ｃとの間、ＬＢ２ＡとＰｒｏｘｙ３Ｄとの間の転送経路を決定する。経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内のＬＢ２ＢとＰｒｏｘｙ３Ａとの間、ＬＢ２ＢとＰｒｏｘｙ３Ｂとの間、ＬＢ２ＢとＰｒｏｘｙ３Ｃとの間、ＬＢ２ＢとＰｒｏｘｙ３Ｄとの間の転送経路を決定する。
【０１４５】
図２７Ｃは、第２のＬＢ区間２３Ｂ内の最前段の第２の集約ＬＢ群２２Ｂのトラヒック割合（送信量）の一例を示す説明図である。経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内の転送経路のトラヒック割合に基づき、第２のＬＢ区間２３Ｂ内の最前段の第２の集約ＬＢ群２２Ｂのトラヒック割合（送信量）を決定する。ＬＢ２Ａのトラヒック割合を全体トラヒック量の１／２、ＬＢ２Ｂのトラヒック割合を全体トラヒック量の１／２とする。
【０１４６】
図２８Ａは、第２のＬＢレス区間２４Ｂ内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）の一例を示す説明図である。経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内の最前段の第２の集約ＬＢ群２２Ｂのトラヒック割合（送信量）を第２のＬＢレス区間２４Ｂ内の最後段の第２の集約ＬＢ群２２Ｂのトラヒック割合（受信量）とする。
【０１４７】
図２８Ｂは、第２のＬＢレス区間２４Ｂ内の転送経路の一例を示す説明図である。経路決定部５３Ｃは、第２のＬＢレス区間２４Ｂ内の最後段の第２の集約ＬＢ群２２Ｂ（ＬＢ２Ａ及びＬＢ２Ｂ）の送信元となる最前段のＶＮＦ＃３内のＰｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃを決定する。経路決定部５３Ｃは、第２のＬＢレス区間２４Ｂ内の第２の集約ＬＢ群２２ＢとＶＮＦ＃３との間の全経路が分散する転送経路を決定する。経路決定部５３Ｃは、第２のＬＢレス区間２４Ｂ内のＬＢ２ＡとＰｒｏｘｙ２Ａとの間、ＬＢ２ＢとＰｒｏｘｙ２Ｂとの間、ＬＢ２ＡとＰｒｏｘｙ２Ｃとの間の転送経路を決定する。
【０１４８】
図２８Ｃは、第２のＬＢレス区間２４Ｂ内の最前段のＶＮＦ群２１のトラヒック割合（送信量）の一例を示す説明図である。経路決定部５３Ｃは、第２のＬＢレス区間２４Ｂ内の各転送経路のトラヒック割合を決定する。更に、経路決定部５３Ｃは、第２のＬＢレス区間２４Ｂ内の転送経路のトラヒック割合に基づき、第２のＬＢレス区間２４Ｂ内の最前段のＶＮＦ＃３のトラヒック割合（送信量）を決定する。Ｐｒｏｘｙ２Ａのトラヒック割合を全体トラヒック量の１／４、Ｐｒｏｘｙ２Ｂのトラヒック割合を全体トラヒック量の２／４、Ｐｒｏｘｙ２Ｃのトラヒック割合を全体トラヒック量の１／４とする。
【０１４９】
第３の決定部４３は、ＬＢ区間２３及びＬＢレス区間２４内の転送経路及び各転送経路のトラヒック割合に基づき設定情報を設定部４４に登録する。設定情報は、ＬＢ１Ａのトラヒック割合、ＬＢ１Ｂのトラヒック割合、ＬＢ１Ａ、ＬＢ１Ｂ、ＦＷ１Ａ〜ＦＷ１Ｃ、Ｐｒｏｘｙ１Ａ〜Ｐｒｏｘｙ１Ｄ、Ｐｒｏｘｙ２Ａ〜Ｐｒｏｘｙ２Ｃ、ＦＷ２Ａ及びＦＷ２Ｂ、Ｐｒｏｘｙ３Ａ及び３Ｂの転送経路となる。設定情報は、ＬＢ２Ａのトラヒック割合、ＬＢ２Ｂのトラヒック割合、ＬＢ２Ａ、ＬＢ２Ｂ、ＦＷ３Ａ〜ＦＷ３Ｃ、Ｐｒｏｘｙ３Ａ〜Ｐｒｏｘｙ３Ｄ、Ｐｒｏｘｙ４Ａ〜Ｐｒｏｘｙ４Ｃ、ＦＷ４Ａ及びＦＷ４Ｂ、Ｐｒｏｘｙ５Ａ及び５Ｂの転送経路となる。
【０１５０】
次に実施例４のサービスチェインシステム１の動作について説明する。図２９は、第５のサービスチェイン構築処理に関わる管理サーバ３内のプロセッサ３６の処理動作の一例を示すフローチャートである。
【０１５１】
第２の決定部４２Ｃ内の区分決定部５１は、ステップＳ１３にてサービスチェイン２０Ｃのトポロジ構成を決定後、サービスチェイン２０Ｃの集約ＬＢ群２２及び終端のＶＮＦ群２１に基づき、ＬＢ区間２３及びＬＢレス区間２４を決定する（ステップＳ９１）。
【０１５２】
第２の決定部４２Ｃ内の指定部５２は、サービスチェイン２０Ｃの最後段のＬＢレス区間２４を指定する（ステップＳ９２）。経路決定部５３Ｃは、指定ＬＢレス区間２４内の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）を決定する（ステップＳ９３）。
【０１５３】
経路決定部５３Ｃは、指定ＬＢレス区間２４内の最前段の終端のＶＮＦ群２１と最後段の終端のＶＮＦ群２１との間の全経路が分散する転送経路を決定する（ステップＳ９４）。経路決定部５３Ｃは、指定ＬＢレス区間２４内の各転送経路のトラヒック割合を決定する（ステップＳ９５）。
【０１５４】
経路決定部５３Ｃは、指定ＬＢレス区間２４内の転送経路のトラヒック割合に基づき、指定ＬＢレス区間２４内の最前段の終端のＶＮＦ群２１のトラヒック割合（送信量）を決定する（ステップＳ９６）。
【０１５５】
経路決定部５３Ｃは、降順順序において次の区間があるか否かを判定する（ステップＳ９７）。指定部５２は、次の区間がある場合（ステップＳ９７肯定）、次の区間がＬＢレス区間２４であるか否かを判定する（ステップＳ９８）。指定部５２は、次の区間がＬＢレス区間２４の場合（ステップＳ９８肯定）、次のＬＢレス区間２４を指定する（ステップＳ９９）。更に、経路決定部５３Ｃは、指定ＬＢレス区間２４の後区間の最前段のＶＮＦ群２１のトラヒック割合（送信量）を指定ＬＢレス区間２４の最後段のＶＮＦ群２１のトラヒック割合（受信量）とし（ステップＳ１００）、ステップＳ９４に移行する。
【０１５６】
指定部５２は、ステップＳ９８にて次の区間がＬＢレス区間２４でない場合（ステップＳ９８否定）、ＬＢ区間２３を指定する（ステップＳ１０１）。経路決定部５３Ｃは、指定ＬＢ区間２３の後区間の最前段の終端のＶＮＦ群２１のトラヒック割合（送信量）をＬＢ区間２３の最後段の終端のＶＮＦ群２１のトラヒック割合（受信量）とする（ステップＳ１０２）。更に、経路決定部５３Ｃは、指定ＬＢ区間２３内の最前段の集約ＬＢ群２２と最後段の終端のＶＮＦ群２１との間の全経路が分散する転送経路を決定する（ステップＳ１０３）。経路決定部５３Ｃは、指定ＬＢ区間２３内の各転送経路のトラヒック割合を決定する（ステップＳ１０４）。
【０１５７】
経路決定部５３Ｃは、指定ＬＢ区間２３内の転送経路のトラヒック割合に基づき、指定ＬＢ区間２３内の最前段の集約ＬＢ群２２のトラヒック割合（送信量）を決定し（ステップＳ１０５）、次の区間があるか否かを判定すべく、ステップＳ９７に移行する。経路決定部５３Ｃは、次の区間がない場合（ステップＳ９７否定）、集約ＬＢ群２２の分配割合を決定すべく、ステップＳ１９に移行する。第１の決定部４１は、構成要求を受信しなかった場合（ステップＳ１１否定）、図２９に示す処理動作を終了する。
【０１５８】
実施例４の管理サーバ３は、サービスチェイン２０Ｃ内の集約ＬＢ群２２及び終端のＶＮＦ群２１の配置位置に基づき、サービスチェイン２０ＣをＬＢ区間２３及びＬＢレス区間２４に区分する。管理サーバ３は、サービスチェイン２０Ｃの最後段から最前段までの降順でＬＢ区間２３及びＬＢレス区間２４を順次指定する。管理サーバ３は、指定されたＬＢ区間２３及びＬＢレス区間２４毎に最前段のトラヒック割合（送信量）、転送経路のトラヒック割合及び最後段のトラヒック割合（受信量）を決定する。そして、管理サーバ３は、ＬＢ区間２３及びＬＢレス区間２４内の最前段のトラヒック割合、転送経路のトラヒック割合及び最後段のトラヒック割合に基づき、サービスチェイン２０Ｃ内の集約ＬＢ群２２の分配割合、ＶＮＦ群２１のトラヒック割合を決定する。その結果、集約ＬＢ群２２が途中に配置されたサービスチェイン２０Ｃであっても、最初の終端のＶＮＦ群２１後段以降のＶＮＦ群２１の台数を反映したトラヒック量を分散できる。
【０１５９】
管理サーバ３は、サービスチェイン２０Ｃ内の第４のＬＢレス区間２４Ｄ→第３のＬＢレス区間２４Ｃ→第２のＬＢ区間２３Ｂ→第２のＬＢレス区間２４Ｂ→第１のＬＢレス区間２４Ａ→第１のＬＢ区間２３Ａの順に指定する。管理サーバ３は、第３のＬＢレス区間２４Ｃが指定された場合、後区間である第４のＬＢレス区間２４Ｄ内の最前段のＶＮＦ群２１のトラヒック割合を第３のＬＢレス区間２４Ｃ内の最後段のＶＮＦ群２１のトラヒック割合に設定する。また、管理サーバ３は、第２のＬＢ区間２３Ｂが指定された場合、後区間である第３のＬＢレス区間２４Ｃ内の最前段のＶＮＦ群２１のトラヒック割合を第２のＬＢ区間２３Ｂ内の最後段のＶＮＦ群２１のトラヒック割合に設定する。トラヒック割合を設定する際の処理負担を軽減できる。
【０１６０】
尚、上記実施例３では、ステップＳ７６のＬＢ区間２３内の転送経路のトラヒック割合を決定する処理やステップＳ８３のＬＢレス区間２４内の転送経路のトラヒック割合を決定する処理で、区間内の負荷分散対象のＶＮＦ群２１の指定があるか否かを判定する。プロセッサ３６は、区間内の負荷分散対象のＶＮＦ群２１の指定がある場合、負荷分散対象のＶＮＦ群２１内の各ＶＮＦ１２のトラヒック量が均等になるように区間内の各転送経路のトラヒック割合を決定しても良い。
【０１６１】
図３０Ａは、第２のＬＢ区間２３Ｂ内の転送経路及びＶＮＦ群２１のトラヒック割合の一例を示す説明図である。尚、第２のＬＢ区間２３Ｂ内のＶＮＦ＃５（ＦＷ３Ａ〜ＦＷ３Ｃ）内のトラヒック割合を均等に全体トラヒック量の１／３、第２の集約ＬＢ群２２Ｂ内のトラヒック割合を全体トラヒック量の１／２に設定した場合を例示している。経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内で負荷分散対象のＶＮＦ群２１としてＶＮＦ＃５が指定された場合、負荷分散対象のＶＮＦ＃５のトラヒック量が均等になるように第２のＬＢ区間２３Ｂ内の各転送経路のトラヒック割合を決定する。経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内の各転送経路のトラヒック割合に基づき、ＶＮＦ＃６のトラヒック割合を決定する。その結果、ＶＮＦ＃６内のＰｒｏｘｙ３Ａのトラヒック割合は全体トラヒック量の４／１８、Ｐｒｏｘｙ３Ｂのトラヒック割合は全体トラヒック量の５／１８となる。更に、Ｐｒｏｘｙ３Ｃのトラヒック割合は全体トラヒック量の５／１８、Ｐｒｏｘｙ３Ｄのトラヒック割合は全体トラヒック量の４／１８となる。
【０１６２】
図３０Ｂは、第２のＬＢ区間２３Ｂ内の転送経路及びＶＮＦ群２１のトラヒック割合の一例を示す説明図である。尚、第２のＬＢ区間２３Ｂ内のＶＮＦ＃５（ＦＷ３Ａ〜ＦＷ３Ｃ）内のトラヒック割合を均等に全体トラヒック量の１／３、第２の集約ＬＢ群２２Ｂ内のＬＢ２Ａのトラヒック割合を全体トラヒック量の３／５に設定した場合を例示している。更に、ＬＢ２Ｂのトラヒック割合を全体トラヒック量の２／５に設定した場合を例示している。経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内で負荷分散対象のＶＮＦ群２１としてＶＮＦ＃５が指定された場合、負荷分散対象のＶＮＦ＃５のトラヒック量が均等になるように第２のＬＢ区間２３Ｂ内の各転送経路のトラヒック割合を決定する。経路決定部５３Ｃは、第２のＬＢ区間２３Ｂ内の各転送経路のトラヒック割合に基づき、ＶＮＦ＃６のトラヒック割合を決定する。その結果、ＶＮＦ＃６内のＰｒｏｘｙ３Ａのトラヒック割合は全体トラヒック量の２５／１２０、Ｐｒｏｘｙ３Ｂのトラヒック割合は全体トラヒック量の３１／１２０となる。更に、Ｐｒｏｘｙ３Ｃのトラヒック割合は全体トラヒック量の３４／１２０、Ｐｒｏｘｙ３Ｄのトラヒック割合は全体トラヒック量の２５／１２０となる。
【０１６３】
尚、上記実施例では、構成要求のフォーマットとしてＶＮＦ群２１及びＶＮＦ群２１に使用する集約ＬＢ１３Ａの情報を含む場合を例示したが、ＶＮＦ群２１毎に使用する集約ＬＢ１３Ａが１台の場合、使用する集約ＬＢ１３Ａの情報を含めなくても良い。その結果、構成要求の容量をコンパクト化できる。
【０１６４】
管理サーバ３は、仮想領域上にＶＮＦ群２１を複数段に配置する際に指定するＶＮＦ群２１毎のＬＢインスタンス数に基づき、最前段のＶＮＦ群２１（ＶＮＦ＃１）の前段に配置する集約ＬＢ１３Ａの数を決定する。その結果、管理サーバ３は、サービスチェインを構築する際に要する最小限の集約ＬＢ１３Ａの数を決定できる。
【０１６５】
管理サーバ３は、構成要求で指定された各ＶＮＦ群２１の任意の機能特性、例えば、Ｌ４レベルのＶＮＦ群２１を特定し、特定されたＶＮＦ群２１内のＬＢインスタンス数に応じて、集約ＬＢ１３Ａの数を決定する。その結果、管理サーバ３は、サービスチェインを構築する際に、任意の機能特性に適した最小限の集約ＬＢ１３Ａの数を決定できる。
【０１６６】
管理サーバ３は、構成要求で指定された各ＶＮＦ群２１の任意の機能特性、例えば、Ｌ４レベルのＶＮＦ群２１を特定する。更に、管理サーバ３は、特定されたＶＮＦ群２１の内、ＶＮＦ１２の数が最大数のＶＮＦ群２１を特定する。更に、管理サーバ３は、特定されたＶＮＦ群２１のＬＢインスタンス数に応じて集約ＬＢ１３Ａの数を決定する。その結果、管理サーバ３は、サービスチェインを構築する際に、任意の機能特性の最大数のＶＮＦ１２を収容したＶＮＦ群２１に適し、かつ、最小限の集約ＬＢ１３Ａの数を決定できる。
【０１６７】
管理サーバ３は、構成要求で指定された各ＶＮＦ群２１の内、上位レイヤ特性、例えばＬ４レベルのＶＮＦ群２１を特定し、特定されたＶＮＦ群２１内のＬＢインスタンス数に応じて、集約ＬＢ１３Ａの数を決定する。その結果、管理サーバ３は、サービスチェインを構築する際に、上位レイヤ特性のＶＮＦ１２を収容したＶＮＦ群２１に適し、かつ、最小限の集約ＬＢ１３Ａの数を決定できる。
【０１６８】
管理サーバ３は、構成要求で指定されたＶＮＦ群２１毎のＶＮＦ１２の数に基づき、複数のＶＮＦ群２１の内、上位レイヤ特性のＶＮＦ群２１を特定する。更に、特定されたＶＮＦ群２１内のＬＢインスタンス数に応じて、集約ＬＢ１３Ａの数を決定すると共に、指定されたＬＢの数を削除する。
【０１６９】
尚、上記実施例では、構成要求で指定されたＬＢインスタンス数に応じて集約ＬＢ１３Ａの数を決定した。しかしながら、構成要求にＬＢインスタンス数が含まれていなくても良い。この場合、管理サーバ３は、構成要求で指定されたＶＮＦ群２１のＶＮＦ１２のインスタンス数に基づき、ＶＮＦ群２１毎に必要となる処理性能を算出しそれを処理するために必要なＬＢインスタンス数を算出する。そして、管理サーバ３は、自分で算出したＶＮＦ群２１毎のＬＢインスタンス数に基づき集約ＬＢ１３Ａの数を決定しても良い。
【０１７０】
また、上記実施例の第１の決定部４１は、構成要求を検出すると、構成要求内の上位レイヤであるＬ４レベルのＶＮＦ群２１を特定し、特定したＶＮＦ群２１の内、そのＶＮＦ１２のインスタンス数が最大数のＶＮＦ群２１を特定する。そして、第１の決定部４１は、特定したＶＮＦ群２１内のＬＢインスタンス数に応じて集約ＬＢ１３Ａの数を決定した。しかしながら、これらに限定されるものではない。
【０１７１】
上記実施例では、ＬＢレス区間２４内の最前段のＶＮＦ群２１の最適経路を決定し、最前段のＶＮＦ群２１内の各ＶＮＦ１２のトラヒック割合を算出した。しかしながら、最前段のＶＮＦ群２１内の各ＶＮＦ１２のトラヒック割合を算出した後、最前段のＶＮＦ群２１から終端のＶＮＦ１２までの最適経路を決定しても良い。
【０１７２】
上記実施例では、集約ＬＢ１３Ａの分配割合を算出した後、各最適経路のＶＮＦ１２毎のトラヒック割合を算出した。しかしながら、最適経路のＶＮＦ１２毎のトラヒック割合を算出した後、集約ＬＢ１３Ａの分配割合を算出しても良く、特定アルゴリズムを用いて最適経路のＶＮＦ１２毎のトラヒック割合及び集約ＬＢ１３Ａの分配割合を同時に算出しても良い。
【０１７３】
上記実施例では、構成要求で指定された複数のＶＮＦ群２１の内、機能特性、例えば、Ｌ４レベルのＶＮＦ群２１のＬＢインスタンス数で集約ＬＢ１３Ａの数を決定した。しかしながら、機能特性として、例えば、送信元アドレスのハッシュ計算で分散する計算機能を使用するＶＮＦ群２１を特定し、その特定されたＶＮＦ群２１のＬＢインスタンス数で集約ＬＢ１３Ａの数を決定しても良い。
【０１７４】
上記実施例では、構成要求で指定された各ＶＮＦ群２１のＬＢインスタンス数で最前段のＬＢ１３に集約し、最前段のＬＢインスタンス数を算出しても良い。また、最前段の集約ＬＢ１３Ａと、この集約ＬＢ１３Ａに接続する次段のＶＮＦ１２と、そのＶＮＦ１２のインスタンス数を指定する構成要求でも良い。
【０１７５】
実施例では、ＬＢ区間２３及びＬＢレス区間２４内の負荷分散対象のＶＮＦ群２１内の各ＶＮＦ１２のトラヒック量を均等にすべく、各ＶＮＦ１２のトラヒック割合及び集約ＬＢ１３Ａの分配割合を算出した。しかしながら、負荷分散対象のＶＮＦ群２１内のＶＮＦ１２に限定されるものではなく、ＬＢ区間２３及びＬＢレス区間２４内の全てのＶＮＦ群２１の全ＶＮＦ１２の負荷を均等にすべく、各ＶＮＦ１２のトラヒック割合及び集約ＬＢ１３Ａの分配割合を算出しても良い。また、管理サーバ３は、各ＶＮＦ１２の転送経路を決定した後、各ＶＮＦ１２のトラヒック割合を算出したが、ＶＮＦ１２毎の転送経路及びトラヒック割合を同時に算出しても良い。
【０１７６】
また、本実施例では、ＬＢ区間２３又はＬＢレス区間２４を複数区間配置したが、これらに限定されるものではなく、適宜変更可能である。
【０１７７】
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。
【０１７８】
更に、各装置で行われる各種処理機能は、ＣＰＵ（Central  Processing  Unit）、ＤＳＰ（Digital  Signal  Processor）やＦＰＧＡ（Field  Programmable  Gate  Array）等上で、その全部又は任意の一部を実行するようにしても良い。また、各種処理機能は、ＣＰＵ等で解析実行するプログラム上、又はワイヤードロジックによるハードウェア上で、その全部又は任意の一部を実行するようにしても良い。
【０１７９】
各種情報を記憶する領域は、例えば、ＲＯＭ（Read  Only  Memory）や、ＳＤＲＡＭ（Synchronous  Dynamic  Random  Access  Memory）、ＭＲＡＭ（Magnetoresistive  Random  Access  Memory）やＮＶＲＡＭ（Non  Volatile  Random  Access  Memory）等のＲＡＭ（Random  Access  Memory）で構成しても良い。
【０１８０】
ところで、本実施例で説明した各種の処理は、予め用意されたプログラムをコンピュータ内のＣＰＵ等のプロセッサで実行させることによって実現できる。そこで、以下では、上記実施例と同様の機能を有するプログラムを実行する情報処理装置１００の一例を説明する。図３１は、サービスチェイン構築プログラムを実行する情報処理装置１００の一例を示す説明図である。
【０１８１】
図３１に示すサービスチェイン構築プログラムを実行する情報処理装置１００は、通信部１１０と、ＨＤＤ（Hard  Disc  Drive）１２０と、ＲＯＭ１３０と、ＲＡＭ１４０と、ＣＰＵ１５０とを有する。通信部１１０、ＨＤＤ１２０、ＲＯＭ１３０、ＲＡＭ１４０及びＣＰＵ１５０は、バス１６０を介して接続される。通信部１１０は、図示せぬ他の情報処理装置と接続し、他の情報処理装置と通信する。そして、情報処理装置１００は、他の情報処理装置と通信し、他の情報処理装置内の仮想領域上に仮想通信機能群を複数段に配置してサービスチェインを構成する。
【０１８２】
そして、ＲＯＭ１３０には、上記実施例と同様の機能を発揮するサービスチェイン構築プログラムが予め記憶されている。ＲＯＭ１３０は、サービスチェイン構築プログラムとして区分決定プログラム１３０Ａ、経路決定プログラム１３０Ｂ及び設定プログラム１３０Ｃが記憶されている。尚、ＲＯＭ１３０ではなく、図示せぬドライブでコンピュータ読取可能な記録媒体にサービスチェイン構築プログラムが記録されていても良い。また、記録媒体としては、例えば、ＣＤ−ＲＯＭ、ＤＶＤディスク、ＵＳＢメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ等でも良い。
【０１８３】
そして、ＣＰＵ１５０は、区分決定プログラム１３０ＡをＲＯＭ１３０から読み出し、ＲＡＭ１４０上で区分決定プロセス１４０Ａとして機能させる。更に、ＣＰＵ１５０は、経路決定プログラム１３０ＢをＲＯＭ１３０から読み出し、ＲＡＭ１４０上で経路決定プロセス１４０Ｂとして機能させる。更に、ＣＰＵ１５０は、設定プログラム１３０ＣをＲＯＭ１３０から読み出し、ＲＡＭ１４０上で設定プロセス１４０Ｃとして機能させる。
【０１８４】
ＣＰＵ１５０は、複数段配置された仮想通信機能群の内の最前段の仮想通信機能群の前段に仮想分散機能群を配置するサービスチェインを、複数段の仮想通信機能群の内の終端型の仮想通信機能群及び仮想分散機能群の配置位置に基づき、複数の区間に区分する。ＣＰＵ１５０は、区間毎に当該区間内の最前段又は最後段の仮想分散機能群又は仮想通信機能群のトラヒック割合に基づき、区間内の最前段の仮想分散機能群又は仮想通信機能群と区間内の最後段の仮想通信機能群又は仮想分散機能群との間の通信経路を決定する。ＣＰＵ１５０は、決定された通信経路を配置された仮想分散機能群及び仮想通信機能群に設定する。その結果、転送遅延を抑制できる。しかも、最初の終端の仮想通信機能群後段以降の終端の仮想通信機能群を配置したサービスチェインであっても、最初の終端の仮想通信機能群後段以降の仮想通信機能群の台数を反映したトラヒック量を分散できる。
【符号の説明】
【０１８５】
３  管理サーバ
２０Ｂ、２０Ｃ  サービスチェイン
４２，４２Ａ，４２Ｂ，４２Ｃ  第２の決定部
５１  区分決定部
５２  指定部
５３，５３Ａ，５３Ｂ，５３Ｃ  経路決定部
４３  第３の決定部
４４  設定部
ＶＮＦ＃１〜ＶＮＦ＃５  ＶＮＦ群
ＬＢ１Ａ、ＬＢ１Ｂ  集約ＬＢ群
【図１】
2018037802.tif 000003
【図２】
2018037802.tif 000004
【図３】
2018037802.tif 000005
【図４】
2018037802.tif 000006
【図５】
2018037802.tif 000007
【図６】
2018037802.tif 000008
【図７】
2018037802.tif 000009
【図８Ａ】
2018037802.tif 000010
【図８Ｂ】
2018037802.tif 000011
【図８Ｃ】
2018037802.tif 000012
【図９Ａ】
2018037802.tif 000013
【図９Ｂ】
2018037802.tif 000014
【図９Ｃ】
2018037802.tif 000015
【図１０Ａ】
2018037802.tif 000016
【図１０Ｂ】
2018037802.tif 000017
【図１０Ｃ】
2018037802.tif 000018
【図１１】
2018037802.tif 000019
【図１２】
2018037802.tif 000020
【図１３】
2018037802.tif 000021
【図１４Ａ】
2018037802.tif 000022
【図１４Ｂ】
2018037802.tif 000023
【図１４Ｃ】
2018037802.tif 000024
【図１５Ａ】
2018037802.tif 000025
【図１５Ｂ】
2018037802.tif 000026
【図１５Ｃ】
2018037802.tif 000027
【図１６Ａ】
2018037802.tif 000028
【図１６Ｂ】
2018037802.tif 000029
【図１６Ｃ】
2018037802.tif 000030
【図１７】
2018037802.tif 000031
【図１８】
2018037802.tif 000032
【図１９】
2018037802.tif 000033
【図２０Ａ】
2018037802.tif 000034
【図２０Ｂ】
2018037802.tif 000035
【図２０Ｃ】
2018037802.tif 000036
【図２１Ａ】
2018037802.tif 000037
【図２１Ｂ】
2018037802.tif 000038
【図２１Ｃ】
2018037802.tif 000039
【図２２Ａ】
2018037802.tif 000040
【図２２Ｂ】
2018037802.tif 000041
【図２２Ｃ】
2018037802.tif 000042
【図２３】
2018037802.tif 000043
【図２４】
2018037802.tif 000044
【図２５Ａ】
2018037802.tif 000045
【図２５Ｂ】
2018037802.tif 000046
【図２５Ｃ】
2018037802.tif 000047
【図２６Ａ】
2018037802.tif 000048
【図２６Ｂ】
2018037802.tif 000049
【図２６Ｃ】
2018037802.tif 000050
【図２７Ａ】
2018037802.tif 000051
【図２７Ｂ】
2018037802.tif 000052
【図２７Ｃ】
2018037802.tif 000053
【図２８Ａ】
2018037802.tif 000054
【図２８Ｂ】
2018037802.tif 000055
【図２８Ｃ】
2018037802.tif 000056
【図２９】
2018037802.tif 000057
【図３０Ａ】
2018037802.tif 000058
【図３０Ｂ】
2018037802.tif 000059
【図３１】
2018037802.tif 000060
【図３２】
2018037802.tif 000061