(57)【特許請求の範囲】
【請求項１】
１または複数のサーバに実装される１または複数のネットワーク機能の各々に割り当てる複数種類のリソースを管理するリソース割当管理装置であって、
前記サーバを経由するフローごとに、当該フローの流量、および、当該フローを処理する前記ネットワーク機能の組み合わせを、フロー情報として取得するフロー情報取得部と、
前記リソースの種類ごとに、所定の設定値を設定する設定値設定部と、
前記取得したフロー情報、および、前記設定した設定値を用いて、前記リソースの種類ごとのリソース使用量に関するスコアを算出するスコア算出部と、
前記リソースの種類ごとに算出したスコアの合計を最小にする、前記フローの各々の経路を決定する経路決定部と、を備える、
ことを特徴とするリソース割当管理装置。
【請求項２】
前記設定値設定部が設定する設定値は、
前記リソースの種類ごとの、前記リソース使用量に関する最大値、および、他の種類のリソースとの間の重みづけとなる優先度、を含む、
ことを特徴とする請求項１に記載のリソース割当管理装置。
【請求項３】
１または複数のネットワーク機能を実装する１または複数のサーバと、
前記サーバにパケットを転送し、当該パケットのフローの流量を計測する転送装置と、
前記パケットを交換するスイッチと、
前記ネットワーク機能を管理するネットワーク機能管理サーバと、
前記転送装置に前記フローの各々の経路を通知するコントローラと、
１または複数の前記ネットワーク機能の各々に割り当てる複数種類のリソースを管理するリソース割当管理装置と、を備えるサービスチェイニングシステムであって、
前記リソース割当管理装置は、
前記サーバを経由するフローごとに、当該フローの流量、および、当該フローを処理する前記ネットワーク機能の組み合わせを、フロー情報として前記転送装置から取得するフロー情報取得部と、
前記リソースの種類ごとに、所定の設定値を設定する設定値設定部と、
前記取得したフロー情報、および、前記設定した設定値を用いて、前記リソースの種類ごとのリソース使用量に関するスコアを算出するスコア算出部と、
前記リソースの種類ごとに算出したスコアの合計を最小にする、前記フローの各々の経路を決定する経路決定部と、を備え、
前記決定した前記フローの各々の経路への変更を前記コントローラに指示し、
前記決定した前記フローの各々が経由する前記サーバが実装する前記ネットワーク機能を起動するように前記ネットワーク機能管理サーバに指示する、
ことを特徴とするサービスチェイニングシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＮＦＶ（Network Function Virtualization：ネットワーク機能仮想化）が導入されたキャリアネットワークにおいて実現されるサービスチェイニングの技術に関する。
【背景技術】
【０００２】
専用のハードウェア装置で実現されてきたネットワーク機能（以下、「ＮＷ（network）機能」と表記する場合がある）、例えば、ファイアウォールやＷＡＮ（Wide Area Network）高速化機能などを仮想化し、汎用サーバ上の仮想マシン（以下、「ＶＭ（Virtual Machine）」と表記する場合がある）で動作させることが行われつつある。また、転送装置が転送するパケットのフローに対して、複数のネットワーク機能を順に適用するサービスチェイニングの実現が検討されている。非特許文献１には、サービスチェイニングのためのリソース割当方式について開示されている。
【０００３】
サービスチェイニングの実現モデルとして、図７に示すように、（１）１台のサーバ６に１つのネットワーク機能だけを実装し、スイッチ５を介してサーバ６同士を接続することで、転送装置４が転送するパケットのフローに対して複数のネットワーク機能を適用する第１のモデル（サーバ外チェイニング。図７（ａ）参照。）と、（２）１台のサーバ６に複数のネットワーク機能を実装し、転送装置が転送するパケットのフローに対して複数のネットワーク機能の適用を行う第２のモデル（サーバ内チェイニング。図７（ｂ）参照。）が考えられる。
【０００４】
第１のモデルでは、転送装置４がネットワークの環境に応じてパケットの転送先を動的に決定することができる。一方、ＮＷ機能の生成には時間がかかるため、例えばファイアウォールのように高い応答性が求められる場合、要求を受けてからＮＷ機能を生成する方式では要件を満たさない。そのため、第２のモデルでは、各サーバ６に実装する複数のネットワーク機能、および、必要なネットワーク機能を適用するフローの経路を予め（静的に）決定する。第２のモデルは、第１のモデルと比較して、ネットワーク機能間を複数のサーバ６を跨いで接続するのではなく１台のサーバ６内で接続するため、同じフロー群を処理する際、スイッチ５の使用帯域（スイッチ帯域。ネットワークリソースの一例。）や各サーバ６におけるネットワークインターフェース（ＮＩＣ（Network Interface Controller））の使用帯域（ＮＩＣ帯域。ネットワークリソースの一例。）を抑制することができ（図７（ａ）、（ｂ）参照）、サービス提供を高速化できるというメリットがある。よって、サービスの継続に伴い、フローの流量が時間帯によって大きく増減する場合には、第２のモデルのほうが適している。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】栗田弘之、本野智治、「サービスチェイニングのためのリソース割当方式に関する一検討」、［online］、［平成２５年１０月５日検索］、インターネット<URL: http://www.gakkai-web.net/gakkai/ieice/S_2015/Settings/ab/bs_03_001.html>
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、第２のモデルは、サービスチェイニングのチェインの組み合わせ、具体的には、ネットワーク機能の組み合わせが多様になる場合には、各組み合わせが適用されるフローそれぞれが存在するとは限らない。このため、第２のモデルのサーバに関して、利用されないサーバリソースが多くなってしまい、サーバリソースを有効利用できないというデメリットがある。よって、サービスの継続に伴い、ユーザのサービス契約または解約によってフローが追加または削除され、チェインの組み合わせが増減する場合には、フローの経路を変更するだけで済む第１のモデルのほうが適している。このように第２のモデルは、サービスを継続するうえで常に最適なモデルにはなり得ない。非特許文献１には、サービスチェイニングの実現モデルの最適化については、記載も示唆もされていない。
【０００７】
そこで、本発明は、上記事情に鑑みて、サービスチェイニングのネットワーク機能が適用されるフローに対して、サービスチェイニングの実現モデルを動的に最適化することを課題とする。
【課題を解決するための手段】
【０００８】
前記課題を解決するために、請求項１に記載の発明は、１または複数のサーバに実装される１または複数のネットワーク機能の各々に割り当てる複数種類のリソースを管理するリソース割当管理装置であって、前記サーバを経由するフローごとに、当該フローの流量、および、当該フローを処理する前記ネットワーク機能の組み合わせを、フロー情報として取得するフロー情報取得部と、前記リソースの種類ごとに、所定の設定値を設定する設定値設定部と、前記取得したフロー情報、および、前記設定した設定値を用いて、前記リソースの種類ごとのリソース使用量に関するスコアを算出するスコア算出部と、前記リソースの種類ごとに算出したスコアの合計を最小にする、前記フローの各々の経路を決定する経路決定部と、を備える、ことを特徴とする。
【０００９】
また、請求項３に記載の発明は、１または複数のネットワーク機能を実装する１または複数のサーバと、前記サーバにパケットを転送し、当該パケットのフローの流量を計測する転送装置と、前記パケットを交換するスイッチと、前記ネットワーク機能を管理するネットワーク機能管理サーバと、前記転送装置に前記フローの各々の経路を通知するコントローラと、１または複数の前記ネットワーク機能の各々に割り当てる複数種類のリソースを管理するリソース割当管理装置と、を備えるサービスチェイニングシステムであって、前記リソース割当管理装置は、前記サーバを経由するフローごとに、当該フローの流量、および、当該フローを処理する前記ネットワーク機能の組み合わせを、フロー情報として前記転送装置から取得するフロー情報取得部と、前記リソースの種類ごとに、所定の設定値を設定する設定値設定部と、前記取得したフロー情報、および、前記設定した設定値を用いて、前記リソースの種類ごとのリソース使用量に関するスコアを算出するスコア算出部と、前記リソースの種類ごとに算出したスコアの合計を最小にする、前記フローの各々の経路を決定する経路決定部と、を備え、前記決定した前記フローの各々の経路への変更を前記コントローラに指示し、前記決定した前記フローの各々が経由する前記サーバが実装する前記ネットワーク機能を起動するように前記ネットワーク機能管理サーバに指示する、ことを特徴とする。
【００１０】
請求項１，３に記載の発明によれば、スコア算出部が算出するスコアに基づいて、サーバを経由するフローごとに、サービスの提供の高速化を重視してフローの経路を決定するのがよいか（第２のモデルを優先適用）、サーバリソースの有効利用を重視してフローの経路を決定するのがよいか（第１のモデルを優先適用）、動的に判定することができる。
したがって、サービスチェイニングのネットワーク機能が適用されるフローに対して、サービスチェイニングの実現モデルを動的に最適化することができる。
【００１１】
また、請求項２に記載の発明は、請求項１に記載のリソース割当管理装置であって、前記設定値設定部が設定する設定値は、前記リソースの種類ごとの、前記リソース使用量に関する最大値、および、他の種類のリソースとの間の重みづけとなる優先度、を含む、ことを特徴とする。
【００１２】
請求項２に記載の発明によれば、設定値設定部が設定する設定値に、最大値および優先度を含ませることで、フローの経路の決定に、リソース割当管理装置による管理を行う者（オペレータ）の意思を的確に反映させることができる。
【発明の効果】
【００１３】
本発明によれば、サービスチェイニングのネットワーク機能が適用されるフローに対して、サービスチェイニングの実現モデルを動的に最適化することができる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態のサービスチェイニングシステムの構成図である。
【図２】リソース割当管理サーバの機能構成図である。
【図３】リソース割当管理サーバによるフローの経路変更処理を示すフローチャートである。
【図４】サービスチェイニングの最適な実現モデルを見つける具体例１であり、（ａ）は、試算条件であり、（ｂ）は、各フロー経路パターンのスコアの合計の一覧表の一部である。
【図５】サービスチェイニングの最適な実現モデルを見つける具体例２であり、（ａ）は、試算条件であり、（ｂ）は、各フロー経路パターンのスコアの合計の一覧表の一部である。
【図６】サービスチェイニングの最適な実現モデルを見つける具体例３であり、（ａ）は、試算条件であり、（ｂ）は、各フロー経路パターンのスコアの合計の一覧表の一部である。
【図７】サービスチェイニングの実現モデルとして、（ａ）がサーバ外チェイニングを示す第１のモデルの説明図であり、（ｂ）がサーバ内チェイニングを示す第２のモデルの説明図である。
【発明を実施するための形態】
【００１５】
本発明を実施するための形態（実施形態）について、図面を参照しながら詳細に説明する。
【００１６】
（全体構成）
図１に示す本実施形態のサービスチェイニングシステムは、リソース割当管理サーバ１（リソース割当管理装置）と、ＮＷ機能管理サーバ２と、ＳＦＦコントローラ３（コントローラ。ＳＦＦ：Small Form Factor。）と、転送装置４（ＳＦＦ）と、スイッチ５と、サーバ６−１ａ，６−１ｂ，６−１ｃ，６−２とを備える。説明の便宜上、サーバ６−１ａ，６−１ｂ，６−１ｃ，６−２を、サーバ６と称する場合がある。
図１中の、オペレータ端末７は、通信キャリアのオペレータが使用する汎用な端末であり、リソース割当管理サーバ１に通信可能に接続している。
【００１７】
サーバ６−１ａ，６−１ｂ，６−１ｃは、第１のモデルを実現するサーバであり、サーバ６−１ａがＮＷ機能Ａという１つのＮＷ機能を実装し、サーバ６−１ｂがＮＷ機能Ｂという１つのＮＷ機能を実装し、サーバ６−１ｃがＮＷ機能Ｃという１つのＮＷ機能を実装する。説明の便宜上、本実施形態で採り上げるＮＷ機能は、ＮＷ機能Ａ〜Ｃの３種類であるとするが、２種類以下や４種類以上であっても本発明を適用できる。
サーバ６−２は、第２のモデルを実現するサーバであり、ＮＷ機能Ａ、ＮＷ機能Ｂ、ＮＷ機能Ｃという３つのＮＷ機能を実装する。サーバ６−２は、自身を経由するフローを、ＮＷ機能Ａ、ＮＷ機能Ｂ、ＮＷ機能Ｃの順番で処理する。図１には図示を省略しているが、第２のモデルを実現するサーバには、サーバ６−２とは異なる順番でフローを処理する３つのＮＷ機能を備えるサーバや、ＮＷ機能Ａ、ＮＷ機能Ｂ、ＮＷ機能Ｃのうち２つを備えるサーバもある。
【００１８】
リソース割当管理サーバ１は、サーバ６に実装されている１または複数のＮＷ機能の各々に割り当てる複数種類のリソースを管理する。リソース割当管理サーバ１は、オペレータ端末７からの指示にしたがって、リソースの割り当てに関する処理を実行する。本実施形態では、リソースの種類として、ＮＩＣ帯域、スイッチ帯域、サーバリソースの３種類を採り上げるが、これらに限定されない。また、サーバリソースには、ＣＰＵコア数、メモリ量、ＨＤＤ量、Ｉ（Input）／Ｏ（Output）量を採り上げることができるが、これらに限定されない。
【００１９】
ＮＷ機能管理サーバ２は、サーバ６に実装するＮＷ機能を管理する。ＮＷ機能管理サーバ２は、リソース割当管理サーバ１から指定されたＶＭに対してＮＷ機能を設定し、当該ＶＭを該当のサーバ６に配備することで、サーバ６にＮＷ機能を実装する。
【００２０】
ＳＦＦコントローラ３は、サーバ６に転送されるパケットのフローの各々の経路の管理情報を転送装置４に通知する。ＳＦＦコントローラ３は、リソース割当管理サーバ１からの指示に応じて、転送装置４に対して、フローの経路の変更を指示することができる。
転送装置４は、サーバ６にパケットを転送する。転送装置４は、当該パケットのフローの流量を計測する流量計測部４１を備える。流量計測部４１は、リソース割当管理サーバ１に、計測したフローの流量、および、当該フローを処理するＮＷ機能の組み合わせを通知することができる。フローを処理するＮＷ機能の組み合わせは、例えば、転送装置４が当該フローを解析することで特定することができる。
スイッチ５は、転送装置４とサーバ６との間でパケットを交換する。
【００２１】
図１には、転送装置４が転送するパケットのフロー（１）（２）が図示されている。フロー（２）には、第１のモデルが適用され、サーバ６−１ａに実装されるＮＷ機能Ａによる処理、サーバ６−１ｃに実装されるＮＷ機能Ｃによる処理を経て、転送装置４から出力される。
一方、フロー（１）には、当初は、第１のモデルが適用され、フロー（１）は、サーバ６−１ａに実装されるＮＷ機能Ａによる処理、サーバ６−１ｂに実装されるＮＷ機能Ｂによる処理、サーバ６−１ｃに実装されるＮＷ機能Ｃによる処理を経て、転送装置４から出力されていた（破線表示）。しかし、所定の条件（後記）を満たした場合、ＳＦＦコントローラ３によるフロー経路変更指示を受けて、転送装置４は、フロー（１）に第２のモデルを適用し、フロー（１）は、サーバ６−２に実装されるＮＷ機能Ａ、ＮＷ機能Ｂ、ＮＷ機能Ｃによる処理を経て、転送装置４から出力されるようになる（実線表示）。
【００２２】
（リソース割当管理サーバ１）
図２に示すように、リソース割当管理サーバ１は、処理部１１、通信部１２、および、記憶部１３を備える。
通信部１２は、通信回線を介して情報を送受信する通信インターフェースによって構成され、内部バスなどを介して処理部１１に接続されている。
【００２３】
記憶部１３は、例えば、ハードディスク、フラッシュメモリ、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などの記憶装置である。記憶部１３は、例えば、転送装置４の流量計測部４１から取得したフローの流量、流量から得られるリソース使用量、オペレータ端末７から取得した情報、リソース割当管理サーバ１内での演算の処理結果、サービスチェイニングの実現モデルを動的に最適化するためのプログラムなどを記憶する。
【００２４】
処理部１１は、リソース割当管理サーバ１が実行する処理の全体を司る。処理部１１は、例えば、記憶部１３が記憶するプログラムをＣＰＵ（Central Processing Unit）が記憶部１３のＲＡＭに展開して実行することによって実現される。処理部１１は、フロー情報取得部１０１、設定値設定部１０２、スコア算出部１０３、および、経路決定部１０４、といった機能部を備えている。
【００２５】
フロー情報取得部１０１は、サーバ６を経由するフローごとに、当該フローの流量、および、当該フローを処理するＮＷ機能の組み合わせを、フロー情報として取得する。転送装置４は、転送装置４自身に入力されるフローを解析してフロー情報を生成することができ、リソース割当管理サーバ１に送信することができる。フロー情報のフローの流量、および、フローの経路から、フローごとの使用中ネットワークリソース量としての、使用中ＮＩＣ帯域、使用中スイッチ帯域を求めることができる。なお、本実施形態では、リソースの種類の１つであるサーバリソースに関しては、フローごとの使用中サーバリソース量も取り扱うことができ、使用中サーバリソース量は、各ＮＷ機能の事前検証などで得た情報から周知の計算方法で求めることができる。
【００２６】
設定値設定部１０２は、リソースの種類ごとに、所定の設定値を設定する。この設定値は、例えば、オペレータ端末７にて入力され、オペレータ端末７から取得することができる。設定値は、具体的には、ＮＩＣ帯域、スイッチ帯域、サーバリソースの３種類のリソースの、リソース使用量に関する最大値、および、他の種類のリソースとの間の重みづけとなる優先度である。ＮＩＣ帯域、スイッチ帯域、サーバリソースそれぞれの最大値および優先度を、「ＮＩＣ帯域（最大値）」、「ＮＩＣ帯域（優先度）」、「スイッチ帯域（最大値）」、「スイッチ帯域（優先度）」、「サーバリソース（最大値）」、「サーバリソース（優先度）」と表記する場合がある。最大値および優先度の具体的な利用例については後記する。
【００２７】
スコア算出部１０３は、フロー情報取得部１０１が取得したフロー情報、および、設定値設定部１０２が設定した設定値を用いて、リソースの種類ごとのリソース使用量に関するスコアを算出する。具体的には、フローごとの使用中ＮＩＣ帯域、使用中スイッチ帯域、使用中サーバリソース量、および、ＮＩＣ帯域（最大値）、ＮＩＣ帯域（優先度）、スイッチ帯域（最大値）、スイッチ帯域（優先度）、サーバリソース（最大値）、サーバリソース（優先度）を用いて所定の演算を行い、スコアを算出する。スコアの算出方法の例については後記する。
【００２８】
経路決定部１０４は、スコア算出部１０３がリソースの種類ごとに算出したスコアの合計を最小にする、フローの各々の経路を決定する。具体的には、各フローについて、第１のモデルまたは第２のモデルのいずれを適用するかを決定し、フローの経路を変更する。フローの各々の経路を決定する方法については後記する。
【００２９】
＜処理＞
図３に示すように、本実施形態におけるフローの経路変更処理は、以下の手順で実行される。なお、リソース割当管理サーバ１は、例えば、初期状態では、サーバ６を経由するフローのすべてに第１のモデルを適用しているとする。この処理は、ステップＳ１から開始する。
【００３０】
ステップＳ１にて、リソース割当管理サーバ１のフロー情報取得部１０１は、転送装置４の流量計測部４１から、転送装置４がサーバ６に転送するパケットのフローのフロー情報を取得する。フロー情報取得部１０１は、サーバ６を経由するフローごとに、流量、および、当該フローを処理するＮＷ機能の組み合わせを取得することができる。取得した流量、および、ＮＷ機能の組み合わせに対応する、サーバ６経由の経路から、使用中ＮＩＣ帯域、使用中スイッチ帯域、使用中サーバリソース量を求めることができる。
【００３１】
次に、ステップＳ２にて、リソース割当管理サーバ１の設定値設定部１０２は、オペレータ端末７にて入力され、オペレータ端末７から取得した設定値をリソースの種類ごとに設定する。設定値設定部１０２は、設定値として、「ＮＩＣ帯域（最大値）」、「ＮＩＣ帯域（優先度）」、「スイッチ帯域（最大値）」、「スイッチ帯域（優先度）」、「サーバリソース（最大値）」、「サーバリソース（優先度）」を取得することができる。オペレータ端末７を操作するオペレータは、特定の種類のリソース使用量が小さくなるようにフローの経路を動的に変更したい場合には、「ＮＩＣ帯域（優先度）」、「スイッチ帯域（優先度）」、「サーバリソース（優先度）」のうち所望の設定値を、他の設定値よりも相対的に大きくすればよい。
【００３２】
次に、ステップＳ３にて、リソース割当管理サーバ１のスコア算出部１０３は、サーバ６を経由するフローごと、および、リソースの種類ごとのリソース使用量（使用中ＮＩＣ帯域、使用中スイッチ帯域、使用中サーバリソース量）に関するスコアを、設定値を用いて算出する。
例えば、スコア算出部１０３は、各フローについて、使用中ＮＩＣ帯域（Ｇｂｐｓ）×ＮＩＣ帯域（優先度）、使用中スイッチ帯域（Ｇｂｐｓ）×スイッチ帯域（優先度）、使用中サーバリソース量×サーバリソース（優先度）をスコアとして算出する。使用中ＮＩＣ帯域（Ｇｂｐｓ）がＮＩＣ帯域（最大値）を超える場合には、ＭＡＸ値（例：９９９９９９９）をスコアとする。使用中スイッチ帯域（Ｇｂｐｓ）がスイッチ帯域（最大値）を超える場合には、ＭＡＸ値をスコアとする。使用中サーバリソース量がサーバリソース（最大値）を超える場合には、ＭＡＸ値をスコアとする。
【００３３】
次に、ステップＳ４にて、リソース割当管理サーバ１の経路決定部１０４は、リソースの種類ごとに算出したスコアの合計が最小になるように、フローの各々の経路を決定する。リソースの種類ごとに算出したスコアの合計とは、具体的には、使用中ＮＩＣ帯域（Ｇｂｐｓ）×ＮＩＣ帯域（優先度）＋使用中スイッチ帯域（Ｇｂｐｓ）×スイッチ帯域（優先度）＋使用中サーバリソース量×サーバリソース（優先度）である。
【００３４】
次に、ステップＳ５にて、リソース割当管理サーバ１は、経路決定部１０４の決定に応じて、サーバ６を経由するフローの経路を変更するようにＳＦＦコントローラ３に指示する。ＳＦＦコントローラ３は、フローの経路の変更を転送装置４に通知し、転送装置４は、通知された変更にしたがって、対象のフローが経由するサーバを第１のモデルのサーバ（６−１ａ〜１ｃ）から第２のモデルのサーバ（６−２）に変更したり、第２のモデルのサーバ（６−２）から第１のモデルのサーバ（６−１ａ〜１ｃ）に変更したりする。
【００３５】
次に、ステップＳ６にて、リソース割当管理サーバ１は、経路決定部１０４の決定に応じて、サーバ６を経由するフローを処理することになるＮＷ機能を起動し、フローを処理することがなくなったＮＷ機能を停止するようにＮＷ機能管理サーバ２に指示する。ＮＷ機能管理サーバ２は、経路が変更されたフローを処理するサーバ６に実装されているＮＷ機能を起動し、経路の変更によりフローを処理することがなくなったサーバ６に実装されているＮＷ機能を停止する。
図３に示す手順により、リソースの種類ごとに算出したスコアの合計が最小になるようにフローの経路を変更し、サービスチェイニングの実現モデルを動的に最適化することができる。
【００３６】
＜実施例＞
次に、本実施形態のリソース割当管理サーバ１が、オペレータ端末７のオペレータの希望を踏まえ、転送装置４に入力されるフローに対して、サービスチェイニングの最適な実現モデルを見つけることについて、具体例１〜３を採り上げて説明する。
【００３７】
［具体例１］
図４に具体例１の内容を示す。具体例１は、ＮＩＣ帯域、スイッチ帯域、サーバリソースの３種類すべてのリソースについて、スコアをバランス良く最小化したい場合における、サービスチェイニングの実現モデルの最適化に関する例である。図４（ａ）に示すように、説明の便宜上、本実施例で採り上げるＮＷ機能は、Ａ，Ｂ，Ｃの３種類とし、転送装置４に入力されるフローは、フロー（１）〜（６）の６つとする。各フロー（１）〜（６）に対して、当該フローを処理するＮＷ機能組み合わせ、および、当該フローの流量が決められている（フロー情報取得部１０１が取得可能）。例えば、フロー（１）は、ＮＷ機能Ａ、ＮＷ機能Ｂ、ＮＷ機能Ｃがこの順番で処理することになるフローであり、流量が１０Ｇｂｐｓとなる。サーバ６に関しては、ＮＷ機能Ａ，Ｂ，Ｃのうち１つだけを実装するサーバ（第１のモデル）、および、ＮＷ機能Ａ，Ｂ，Ｃのすべてを、処理順番が異なるように実装するサーバ（第２のモデル）が存在する。
【００３８】
また、図４（ａ）に示す設定値は、設定値設定部１０２が設定するものであり、「ＮＩＣ帯域（優先度）」、「スイッチ帯域（優先度）」、「サーバリソース（優先度）」、「ＮＩＣ帯域（最大値）」、「スイッチ帯域（最大値）」、「サーバリソース（最大値）」の値が、オペレータ端末７から入力される。説明を簡単にするため、サーバリソースに関しては、１つのＮＷ機能（Ａ〜Ｃのいずれか１つ）がフローを処理するときの使用中サーバリソース量を１と定義する。「サーバリソース（最大値）」の値は、この定義に基づいて設定される。（後記の具体例２，３と比較して）スコアをバランス良く最小化するという目的に対して、「ＮＩＣ帯域（優先度）」、「スイッチ帯域（優先度）」、「サーバリソース（優先度）」の値を、例えば図４（ａ）に示すものとすることができる。
【００３９】
スコア算出部１０３は、フロー（１）〜（６）に対して、設定値を考慮して、リソースの種類ごとのスコアを算出する。このとき、フロー（１）〜（６）の各々が、第１のモデルのサーバ、または、第２のモデルのサーバのうちいずれかを経由することが想定されるので、フロー（１）〜（６）を対象とするフロー経路パターン（各フローが第１のモデルのサーバを経由するか第２のモデルのサーバを経由するか）ごとにスコアを算出する。
【００４０】
図４（ｂ）には、各フロー経路パターンについて、リソースの種類（ＮＩＣ帯域、スイッチ帯域、サーバリソース）ごとの使用中リソース量、および、リソースの種類ごとに算出したスコアの合計（合計スコア）の一覧表が示されている。一覧表の最上段のレコードには、フロー（１）〜（６）のすべてが第１のモデルのサーバを経由するフロー経路パターン（「フロー（１）〜（６）・・・第１のモデル」）に関する、使用中ＮＩＣ帯域、使用中スイッチ帯域、使用中サーバリソース量、および、合計スコアが示されている。「フロー（１）〜（６）・・・第１のモデル」の使用中ＮＩＣ帯域は、上り下りを考慮して、（10＋0.1＋0.1＋0.1＋0.1＋0.1）×2＝21Gbpsとなり、ＮＩＣ帯域（優先度）（＝10）を用いるとスコアは、21×10＝210となる。「フロー（１）〜（６）・・・第１のモデル」の使用中スイッチ帯域は、各フローがスイッチ５によって６回パケット交換されるので（図１参照）、（10＋0.1＋0.1＋0.1＋0.1＋0.1）×6＝63Gbpsとなり、スイッチ帯域（優先度）（＝1）を用いるとスコアは、63×1＝63となる。「フロー（１）〜（６）・・・第１のモデル」の使用中サーバリソース量は、フロー（１）〜（６）のすべてが、ＮＷ機能Ａ〜Ｃのみそれぞれ実装する３つのサーバを経由し、３つのＮＷ機能で処理されるので、３となり、「サーバリソース（優先度）」（＝10）を用いるとスコアは、3×10＝30となる。よって、「フロー（１）〜（６）・・・第１のモデル」の合計スコアは、210＋63＋30＝303となる。
【００４１】
また、一覧表の上から２番目のレコードには、フロー（１）〜（６）のすべてが第２のモデルのサーバを経由するフロー経路パターン（「フロー（１）〜（６）・・・第２のモデル」）に関する、使用中ＮＩＣ帯域、使用中スイッチ帯域、使用中サーバリソース量、および、合計スコアが示されている。「フロー（１）〜（６）・・・第２のモデル」の使用中ＮＩＣ帯域は、上り下りを考慮して、10×2＝20Gbpsとなり、ＮＩＣ帯域（優先度）（＝10）を用いるとスコアは、20×10＝200となる。「フロー（１）〜（６）・・・第２のモデル」の使用中スイッチ帯域は、各フローがスイッチ５によって２回パケット交換されるので（図１参照）、（10＋0.1＋0.1＋0.1＋0.1＋0.1）×2＝21Gbpsとなり、スイッチ帯域（優先度）（＝1）を用いるとスコアは、21×1＝21となる。「フロー（１）〜（６）・・・第２のモデル」の使用中サーバリソース量は、フロー（１）〜（６）の各々が、図４（ａ）に示すＮＷ機能の組み合わせを実装する６種類のサーバを経由し、各サーバに実装されている３つのＮＷ機能で処理されるので、3×6＝18となり、「サーバリソース（優先度）」（＝10）を用いるとスコアは、18×10＝180となる。よって、「フロー（１）〜（６）・・・第２のモデル」の合計スコアは、200＋21＋180＝401となる。
【００４２】
上記の説明にならって、一覧表の上から３番目のレコードに示すフロー（１）が第２のモデルのサーバを経由し、フロー（２）〜（６）が第１のモデルのサーバを経由するフロー経路パターン（「フロー（１）・・・第２のモデル、フロー（２）〜（６）・・・第１のモデル」）や、図示しない他のフロー経路パターン（例：「フロー（４）（６）・・・第２のモデル、フロー（１）〜（３）（５）・・・第１のモデル」）についても、使用中ＮＩＣ帯域のスコア、使用中スイッチ帯域のスコア、使用中サーバリソース量のスコア、および、合計スコアを求めることができる。経路決定部１０４は、各フロー経路パターンの合計スコアのうち最小の合計スコアをとるフロー経路パターンを採用する。図４（ｂ）では、最小の合計スコア（263）をとる「フロー（１）・・・第２のモデル、フロー（２）〜（６）・・・第１のモデル」のフロー経路パターンを採用する。
【００４３】
これにより、経路決定部１０４は、フロー（１）に第２のモデルを適用し、フロー（２）〜（６）に第１のモデルを適用するようにフローの経路を決定し、フローの経路を変更する。このようにして、ＮＩＣ帯域、スイッチ帯域、サーバリソースの３種類すべてのリソースについて、スコアをバランス良く最小化できるようにサービスチェイニングの実現モデルを最適化することができる。
【００４４】
［具体例２］
図５に具体例２の内容を示す。具体例２は、ＮＩＣ帯域、スイッチ帯域、サーバリソースの３種類すべてのリソースについて、使用中サーバリソース量を優先的に最小化したい場合における、サービスチェイニングの実現モデルの最適化に関する例である。図５（ａ）は、図４（ａ）と比較して、サーバリソース（優先度）が10から10,000に引き上げられている点が異なり、その他は同じである。
【００４５】
スコア算出部１０３は、具体例１と同様、フロー（１）〜（６）に対して、設定値を考慮して、リソースの種類ごとのスコアを算出する。
図５（ｂ）には、各フロー経路パターンについて、リソースの種類（ＮＩＣ帯域、スイッチ帯域、サーバリソース）ごとの使用中リソース量、および、リソースの種類ごとに算出したスコアの合計（合計スコア）の一覧表が示されている。スコアの算出方法は、具体例１と同じである。図５（ｂ）によれば、経路決定部１０４は、最小の合計スコア（30,084）をとる「フロー（１）〜（６）・・・第１のモデル」のフロー経路パターンを採用する。このフロー経路パターンに対する合計スコアが最小になるのは、大きな優先度が設定されたサーバリソースに関して、フロー（１）〜（６）を処理するＮＷ機能の数（つまり3）が、すべてのフロー経路パターンのなかで最も少ないからである。
【００４６】
これにより、経路決定部１０４は、フロー（１）〜（６）に第１のモデルを適用するようにフローの経路を決定し、フローの経路を変更する。このようにして、ＮＩＣ帯域、スイッチ帯域、サーバリソースの３種類すべてのリソースについて、使用中サーバリソース量を優先的に最小化できるようにサービスチェイニングの実現モデルを最適化することができる。
【００４７】
［具体例３］
図６に具体例３の内容を示す。具体例３は、ＮＩＣ帯域、スイッチ帯域、サーバリソースの３種類すべてのリソースについて、使用中サーバリソース量を優先的に最小化しつつ、使用中ＮＩＣ帯域を抑えたい（例えば、最大１０Ｇｂｐs（上り下りで計２０Ｇｂｐｓ）に抑えたい）場合における、サービスチェイニングの実現モデルの最適化に関する例である。図６（ａ）は、図４（ａ）と比較して、サーバリソース（優先度）が10から10,000に引き上げられている点、および、ＮＩＣ帯域（最大値）が80Ｇｂｐｓから20Ｇｂｐｓに引き下げられている点が異なり、その他は同じである。
【００４８】
スコア算出部１０３は、具体例１，２と同様、フロー（１）〜（６）に対して、設定値を考慮して、リソースの種類ごとのスコアを算出する。
図６（ｂ）には、各フロー経路パターンについて、リソースの種類（ＮＩＣ帯域、スイッチ帯域、サーバリソース）ごとの使用中リソース量、および、リソースの種類ごとに算出したスコアの合計（合計スコア）の一覧表が示されている。スコアの算出方法は、具体例１，２と同じである。
【００４９】
ここで、「フロー（１）〜（６）・・・第１のモデル」のフロー経路パターンにおいて、使用中ＮＩＣ帯域は、上り下りを考慮して、（10＋0.5）×2＝21Gbpsとなり、ＮＩＣ帯域（最大値）（＝20Ｇｂｐｓ）を超えている。この場合、すでに説明したように、使用中ＮＩＣ帯域のスコアをＭＡＸ値（9,999,999）とする（図６（ｂ）中の符号ｍ参照）。これにより、「フロー（１）〜（６）・・・第１のモデル」の合計スコアも、ＭＡＸ値（9,999,999）となる。
【００５０】
図６（ｂ）によれば、経路決定部１０４は、最小の合計スコア（40,043）をとる「フロー（１）・・・第２のモデル、フロー（２）〜（６）・・・第１のモデル」のフロー経路パターンを採用する。このフロー経路パターンに対する合計スコアが最小になるのは、大きな優先度が設定されたサーバリソースに関して、使用中ＮＩＣ帯域がＮＩＣ帯域（最大値）を超えてしまう「フロー（１）〜（６）・・・第１のモデル」のフロー経路パターンを除外すると、フロー（１）〜（６）を処理するＮＷ機能の数（つまり4）が、残りのすべてのフロー経路パターンのなかで最も少なくなるからである。
【００５１】
これにより、経路決定部１０４は、フロー（１）に第２のモデルを適用し、フロー（２）〜（６）に第１のモデルを適用するようにフローの経路を決定し、フローの経路を変更する。このようにして、ＮＩＣ帯域、スイッチ帯域、サーバリソースの３種類すべてのリソースについて、使用中サーバリソース量を優先的に最小化しつつ、使用中ＮＩＣ帯域を抑えるようにサービスチェイニングの実現モデルを最適化することができる。
【００５２】
（まとめ）
本実施形態によれば、スコア算出部１０３が算出するスコアに基づいて、サーバを経由するフローごとに、サービスの提供の高速化を重視してフローの経路を決定するのがよいか（第２のモデルを優先適用）、サーバリソースの有効利用を重視してフローの経路を決定するのがよいか（第１のモデルを優先適用）、動的に判定することができる。
したがって、サービスチェイニングのネットワーク機能が適用されるフローに対して、サービスチェイニングの実現モデルを動的に最適化することができる。
【００５３】
また、設定値設定部１０２が設定する設定値に、最大値および優先度を含ませることで、フローの経路の決定に、リソース割当管理装置による管理を行う者（オペレータ）の意思を的確に反映させることができる。
【００５４】
（変形例）
ＮＷ機能には、その仕様によって、フローへの適用順序が決められているもの（図４（ａ），図５（ａ），図６（ａ）参照）と、決められていないものがある。どちらのＮＷ機能であっても本発明によるフローの経路決定を行うことができる。
【００５５】
また、ＮＷ機能には、ＶＭに割り当てるリソースを増やすことで処理可能なトラフィックを増やすことができるもの（つまり、割当リソースが可変）と、ＶＭに割り当て可能なリソースは固定であり、処理可能トラフィックを増やすには、ＶＭの増設（ＶＭの数を増やす）が必要なものがある。どちらのＮＷ機能であっても本発明によるフローの経路決定を行うことができる。
【００５６】
また、本実施形態の経路決定部１０４は、リソースの種類ごとのスコアの合計スコアが最小化できるのであれば、１つのフローが第１のモデルのサーバおよび第２のモデルのサーバも経由するようにフローの経路を決定することもできる。
【００５７】
本実施形態で説明した種々の技術を適宜組み合わせた技術を実現することもできる。
本実施形態で説明したソフトウェアをハードウェアとして実現することもでき、ハードウェアをソフトウェアとして実現することもできる。
その他、ハードウェア、ソフトウェア、フローチャートなどについて、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【００５８】
１      リソース割当管理サーバ（リソース割当管理装置）
２      ＮＷ機能管理サーバ
３      ＳＦＦコントローラ
４      転送装置
５      スイッチ
６，６−１ａ，６−１ｂ，６−１ｃ，６−２      サーバ
７      オペレータ端末
１１    処理部
１２    通信部
１３    記憶部
４１    流量計測部
１０１  フロー情報取得部
１０２  設定値設定部
１０３  スコア算出部
１０４  経路決定部
【図１】
0006427083.tif 000002
【図２】
0006427083.tif 000003
【図３】
0006427083.tif 000004
【図４】
0006427083.tif 000005
【図５】
0006427083.tif 000006
【図６】
0006427083.tif 000007
【図７】
0006427083.tif 000008