(57)【特許請求の範囲】
【請求項１】
複数の拠点間に跨って構成されるサービスチェーンにおいて、前記複数の拠点のうち第１拠点でパケットを中継するコンピュータのためのパケット中継プログラムであって、
前記サービスチェーンに含まれる複数のサービス機能の組み合わせを示す識別情報と、サービス機能を適用する順番を示すインデックスと、送信先と、が対応付けられた中継情報に基づいて、前記パケットに含まれる識別情報と前記パケットに含まれるインデックスとに対応する送信先を特定し、
特定した前記送信先が前記複数の拠点のうち第２拠点である場合に、前記パケットに含まれるインデックスを、該インデックスについて予め定められている初期値に変更し、
前記パケットに含まれる識別情報と前記初期値のインデックスとを含むパケットを、特定した前記送信先に送信する、
処理を前記コンピュータに実行させるパケット中継プログラム。
【請求項２】
複数の拠点間に跨って構成されるサービスチェーンにおいて、前記複数の拠点のうち第１拠点でパケットを中継するコンピュータのためのパケット中継プログラムであって、
前記第１拠点において前記サービスチェーンに含まれる複数のサービス機能の組み合わせを示す識別情報と、サービス機能を適用する順番を示すインデックスと、送信先と、前記送信先における識別情報が対応付けられた中継情報に基づいて、前記パケットに含まれる識別情報と前記パケットに含まれるインデックスとに対応する送信先を特定し、
特定した前記送信先が前記複数の拠点のうち第２拠点である場合に、前記パケットに含まれるインデックスを、該インデックスについて予め定められている初期値に変更し、前記パケットに含まれる識別情報を特定した前記送信先における識別情報に変更し、
特定した前記送信先における識別情報と前記初期値のインデックスとを含むパケットを、特定した前記送信先に送信する、
処理を前記コンピュータに実行させるパケット中継プログラム。
【請求項３】
複数の拠点間に跨って構成されるサービスチェーンにおいて、前記複数の拠点のうち第１拠点でパケットを中継するコンピュータが実行するパケット中継方法であって、
前記サービスチェーンに含まれる複数のサービス機能の組み合わせを示す識別情報と、サービス機能を適用する順番を示すインデックスと、送信先と、が対応付けられた中継情報に基づいて、前記パケットに含まれる識別情報と前記パケットに含まれるインデックスとに対応する送信先を特定し、
特定した前記送信先が前記複数の拠点のうち第２拠点である場合に、前記パケットに含まれるインデックスを、該インデックスについて予め定められている初期値に変更し、
前記パケットに含まれる識別情報と前記初期値のインデックスとを含むパケットを、特定した前記送信先に送信する、
処理を含むパケット中継方法。
【請求項４】
複数の拠点間に跨って構成されるサービスチェーンにおいて、前記複数の拠点のうち第１拠点でパケットを中継するコンピュータが実行するパケット中継方法であって、
前記第１拠点において前記サービスチェーンに含まれる複数のサービス機能の組み合わせを示す識別情報と、サービス機能を適用する順番を示すインデックスと、送信先と、前記送信先における識別情報が対応付けられた中継情報に基づいて、前記パケットに含まれる識別情報と前記パケットに含まれるインデックスとに対応する送信先を特定し、
特定した前記送信先が前記複数の拠点のうち第２拠点である場合に、前記パケットに含まれるインデックスを、該インデックスについて予め定められている初期値に変更し、前記パケットに含まれる識別情報を特定した前記送信先における識別情報に変更し、
特定した前記送信先における識別情報と前記初期値のインデックスとを含むパケットを、特定した前記送信先に送信する、
処理を含むパケット中継方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット中継プログラムおよびパケット中継方法に関する。
【背景技術】
【０００２】
従来から、ルータやゲートウェイ等の通信機器には専用ハードウェアが用いられている。近年では、各種の通信機器のネットワークサービスに関する機能（以下、ネットワークのサービス機能）を汎用サーバ上のソフトウェアとして仮想化させる手法(Network Functions Virtualization（ＮＦＶ）)が実用化されている。
【０００３】
仮想ネットワーク機能が要求された場合、仮想ネットワーク機能のサーバへの配置と、配置先のサーバに接続するネットワークのパスの設定と、を一括で実行する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１５／１１８８７４号
【特許文献２】特開２０１５−１５４４２１号公報
【特許文献３】特開２０１５−１５４３２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
パケットが仮想化されたネットワークの複数のサービス機能（Virtual Network Function（ＶＮＦ））を経由する場合、該パケットは、各ＶＮＦにより所定の処理がされる。また、パケットの転送経路は、動的に変更されることがある。パケットの転送経路をサービスチェーンと称する。
【０００６】
拠点間に跨ってサービスチェーンを実現する場合、サービスチェーンの設定変更に伴って、複数の拠点のＶＮＦを示すサービスインデックスに影響を与えるため、複数の拠点の再設定が必要となり、運用効率が低下するという問題がある。
【０００７】
また、拠点をつなぐサービスチェーン（上位）と拠点内のサービスチェーン（下位）をそれぞれ定義し、サービスチェーンを階層的に構成する階層型サービスチェーンが提案されている。
【０００８】
階層型サービスチェーンでは、拠点の入り口で上位サービスチェーンを下位サービスチェーンに変換し、拠点の出口で下位サービスチェーンを上位サービスチェーンに変換する処理が行われる。そのため、階層型サービスチェーンでは、サービスチェーンの処理が複雑になるという問題がある。
【０００９】
本発明は、サービスチェーンの変更が生じた場合でも、運用効率を維持することを目的とする。
【課題を解決するための手段】
【００１０】
実施の形態に係るパケット中継プログラムは、複数の拠点間に跨って構成されるサービスチェーンにおいて、前記複数の拠点のうち第１拠点でパケットを中継するコンピュータのためのパケット中継プログラムである。
【００１１】
前記パケット中継プログラムは、前記コンピュータに、前記サービスチェーンに含まれる複数のサービス機能の組み合わせを示す識別情報と、サービス機能を適用する順番を示すインデックスと、送信先と、が対応付けられた中継情報に基づいて、前記パケットに含まれる識別情報と前記パケットに含まれるインデックスとに対応する送信先を特定させる。
【００１２】
前記パケット中継プログラムは、前記コンピュータに、特定した前記送信先が前記複数の拠点のうち第２拠点である場合に、前記パケットに含まれるインデックスを、該インデックスについて予め定められている初期値に変更させる。
【００１３】
前記パケット中継プログラムは、前記コンピュータに、前記パケットに含まれる識別情報と前記初期値のインデックスとを含むパケットを、特定した前記送信先に送信させる。
【発明の効果】
【００１４】
実施の形態によれば、サービスチェーンの変更が生じた場合でも、運用効率を維持することができる。
【図面の簡単な説明】
【００１５】
【図１】サービスチェーンの変更前後のＶＮＦのサービスインデックスを示す図である。
【図２】サービスチェーンの変更前後のＶＮＦのサービスインデックスを示す図である。
【図３】第１の実施の形態に係るシステムの構成図である。
【図４】第１の実施の形態に係るサーバの構成図である。
【図５Ａ】第１の実施の形態に係るＳＦＣ中継テーブルの例である。
【図５Ｂ】第１の実施の形態に係るＳＦＣ中継テーブルの例である。
【図６】サービスパスヘッダを示す図である。
【図７】第１の実施の形態に係るグローバルＳＤＮコントローラの構成図である。
【図８】第１の実施の形態に係るローカルＳＤＮコントローラの構成図である。
【図９】サービスチェーン定義情報の例を示す図である。
【図１０】サービスチェーンの例を示す図である。
【図１１】第１の実施の形態に係るグローバルＳＤＮコントローラのサービスチェーン設定要求処理のフローチャートである。
【図１２】第１の実施の形態に係るローカルＳＤＮコントローラのサービスチェーン設定処理のフローチャートである。
【図１３】サービスチェーンの例を示す図である。
【図１４】変更後のＳＦＣ中継テーブルの例である。
【図１５】第１の実施の形態に係るサーバのパケット中継処理のフローチャートである。
【図１６】第１の実施の形態に係るサービスチェーンの変更前後のＶＮＦのサービスインデックスを示す図である。
【図１７】第１の実施の形態に係るシステムの構成図の変形例である。
【図１８】変形例のローカルＳＤＮコントローラの構成図である。
【図１９Ａ】変形例のローカルＳＤＮコントローラのサービスチェーン設定処理のフローチャートである。
【図１９Ｂ】変形例のローカルＳＤＮコントローラのサービスチェーン設定処理のフローチャートである。
【図２０】第２の実施の形態に係るシステムの構成図である。
【図２１】第２の実施の形態に係るサーバの構成図である
【図２２Ａ】第２の実施の形態に係るＳＦＣ中継テーブルの例である。
【図２２Ｂ】第２の実施の形態に係るＳＦＣ中継テーブルの例である。
【図２３】第２の実施の形態に係るＳＤＮコントローラの構成図である。
【図２４】第２の実施の形態に係るサービスチェーン設定処理のフローチャートである。
【図２５】第２の実施の形態に係るサーバのパケット中継処理のフローチャートである。
【図２６】第２の実施の形態に係るサービスチェーンの変更前後のＶＮＦのサービスインデックスを示す図である。
【図２７】第２の実施の形態に係るＳＦＣ中継テーブルの変形例である。
【図２８】第２の実施の形態に係るパケットの中継処理の変形例およびＶＮＦのサービスインデックスを示す図である。
【図２９】情報処理装置（コンピュータ）の構成図である。
【発明を実施するための形態】
【００１６】
図１は、サービスチェーンの変更前後のＶＮＦのサービスインデックスを示す図である。図１では、２つの拠点Ａ，Ｂに対して、２つのSoftware Defined Network（ＳＤＮ）コントローラがそれぞれ各拠点のService Function Chaining（ＳＦＣ）中継テーブルの設定を行う場合を示す。
【００１７】
図１の上側は、サービスチェーンの変更前、図１の下側は、サービスチェーンの変更後を示す。
【００１８】
各拠点のService Function Forwarder（ＳＦＦ）は、パケットに付与されたサービスタグ情報のうちのサービスインデックスを参照し、当該サービスインデックスに対応するＶＮＦにパケットを転送する。サービスインデックスとＶＮＦとの対応関係は、各拠点が保持するＳＦＣ中継テーブルに記載されている。
【００１９】
サービスチェーンの変更前において、サービスチェーンは、拠点ＡのＶＮＦ１−１と拠点ＢのＶＮＦ２−１を含む。パケットは、ＶＮＦ１−１、ＶＮＦ２−１の順に各ＶＮＦで処理が行われる。また、拠点ＡのＳＦＣ中継テーブルにおいて、ＶＮＦ１−１に対応するサービスインデックスは２５５であり、拠点ＢのＳＦＣ中継テーブルにおいて、ＶＮＦ２−１に対応するサービスインデックスは２５４である。また、パケットのサービスインデックスの初期値は２５５とする。拠点ＡのＳＦＦは、パケットを受信すると、当該パケットのサービスインデックスは２５５であるので、ＶＮＦ１−１に転送する。拠点ＡのＶＮＦ１−１は、パケットに対して処理を行うと、パケットのサービスインデックスを１デクリメント、すなわち２５４にして、ＳＦＦに送信する。拠点ＡのＳＦＦは、サービスインデックス＝２５４のパケットを拠点Ｂに出力する。拠点ＢのＳＦＦは、受信したパケットのサービスインデックスが２５４であるので、パケットをＶＮＦ２−１に転送する。
【００２０】
図１の下側に示すように、サービスチェーンに拠点ＡのＶＮＦ１−２を追加するとする。パケットは、ＶＮＦ１−１、ＶＮＦ１−２，ＶＮＦ２−１の順に各ＶＮＦで処理が行われる。拠点Ａのサービスチェーンの変更に伴い、各拠点のＳＤＮコントローラは自身の拠点のＳＦＣ中継テーブルを変更する。拠点ＡのＳＦＣ中継テーブルにおいて、ＶＮＦ１−１に対応するサービスインデックスは２５５であり、ＶＮＦ１−２に対応するサービスインデックスは２５４となる。また、拠点ＢのＳＦＣ中継テーブルにおいて、ＶＮＦ２−１に対応するサービスインデックスは２５３となる。
【００２１】
このように、拠点Ａのサービスチェーンを変更した場合、拠点ＢのＳＦＣ中継テーブルも変更される。
【００２２】
図２は、サービスチェーンの変更前後のＶＮＦのサービスインデックスを示す図である。図２では、２つの拠点Ａ，Ｂに対して、１つのＳＤＮコントローラが各拠点のＳＦＣ中継テーブルの設定を行う場合を示す。
【００２３】
図２の上側は、サービスチェーンの変更前、図２の下側は、サービスチェーンの変更後を示す。
【００２４】
ＳＦＦの処理やＶＮＦに対応するサービスインデックスは図１の説明と同様である。図２の下側に示すように、図１と同様に、サービスチェーンに拠点ＡのＶＮＦ１−２を追加するとする。パケットは、ＶＮＦ１−１、ＶＮＦ１−２，ＶＮＦ２−１の順に各ＶＮＦで処理が行われる。拠点Ａのサービスチェーンの変更に伴い、ＳＤＮコントローラは各拠点のＳＦＣ中継テーブルを変更する。拠点ＡのＳＦＣ中継テーブルにおいて、ＶＮＦ１−１に対応するサービスインデックスは２５５であり、ＶＮＦ１−２に対応するサービスインデックスは２５４となる。また、拠点ＢのＳＦＣ中継テーブルにおいて、ＶＮＦ２−１に対応するサービスインデックスは２５３となる。
【００２５】
このように、図２においても、拠点Ａのサービスチェーンを変更した場合、拠点ＢのＳＦＣ中継テーブルも変更される。
【００２６】
以下、図面を参照しながら実施の形態について説明する。
図３は、第１の実施の形態に係るシステムの構成図である。
【００２７】
システム１０１は、グローバルSoftware Defined Network（ＳＤＮ）コントローラ２０１、ローカルＳＤＮコントローラ３０１−ｉ（ｉ＝１、２）、およびサーバ４０１−ｉを備える。
【００２８】
グローバルＳＤＮコントローラ２０１は、ローカルＳＤＮコントローラ３０１−ｉとネットワークを介して接続する。また、ローカルＳＤＮコントローラ３０１−ｉ、およびサーバ４０１−ｉは、それぞれネットワークを介して互いに接続する。
【００２９】
ローカルＳＤＮコントローラ３０１−１、およびサーバ４０１−１は、拠点Ａに属している。ローカルＳＤＮコントローラ３０１−２、サーバ４０１−２は、拠点Ｂに属している。拠点は、管理者により決定される装置のグループである。また、拠点をSub-domainと表記する場合がある。
【００３０】
尚、図３に示すサーバ４０１−ｉの数は、一例であり、これに限られるものではない。
グローバルＳＤＮコントローラ２０１は、ローカルＳＤＮコントローラ３０１−ｉに、サービスチェーンの設定を要求する。
【００３１】
ローカルＳＤＮコントローラ３０１−ｉは、サービスチェーンの設定を行う。詳細には、ローカルＳＤＮコントローラ３０１−ｉは、自身が属する拠点内のサーバ４０１−ｉのＳＦＣ中継テーブルの設定を行う。
【００３２】
サーバ４０１−ｉは、ソフトウェアによりネットワークのサービス機能を実行する。これにより、ネットワークのサービス機能（以下、単にサービス機能と称する）は、サーバ５上で仮想化される。サービス機能は、例えば、ファイアーウォール、ルータ、Deep Packet Inspection（ＤＰＩ）、WAN Acceleration、サービス品質モニタ等である。
【００３３】
図４は、第１の実施の形態に係るサーバの構成図である。
サーバ４０１−ｉは、ＶＮＦ部４１１−ｉ−ｊ（ｊ＝１〜ｎ）、Service Function Forwarder（ＳＦＦ）部４２１−ｉ、ＳＦＣマッパー部４３１−ｉ、通信部４４１−ｉ、および記憶部４５１−ｉを備える。
【００３４】
ＶＮＦ部４１１−ｉ−ｊは、パケットに対してネットワークのサービス機能を実行する。以下、ＶＮＦ部４１１−ｉ−ｊは、ＶＮＦｉ−ｊと表記する場合がある。
【００３５】
ＳＦＦ部４２１−ｉは、パケットに含まれるサービスタグ情報とＳＦＣ中継テーブル４６１−ｉに基づいて、パケットを適切なサービス機能（ＶＮＦ部４１１−ｉ−ｊ）に転送する。
【００３６】
ＳＦＣマッパー部４３１−ｉは、他の拠点へのパケットの出力時にサービスタグ情報を更新する。
【００３７】
通信部４４１−ｉは、ローカルＳＤＮコントローラ３０１―ｉや他のサーバ４０１−ｉとの通信を行う。
【００３８】
記憶部４５１−ｉは、サーバ４０１−ｉで使用されるデータを格納する記憶装置である。記憶部４５１−ｉは、ＳＦＣ中継テーブル４６１−ｉを格納する。ＳＦＣ中継テーブル４６１−ｉは、サーバ４０１−ｉが属する拠点におけるサービスチェーン（パケットに適用されるＶＮＦ部４１１−ｉ−ｊの組み合わせ）を示し、サービスチェーンにおけるパケットの出力先を示す。
【００３９】
図５Ａ、５Ｂは、第１の実施の形態に係るＳＦＣ中継テーブルの例である。
図５Ａに示すＳＦＣ中継テーブル４６１−１は、拠点Ａのサーバ４０１−１に格納され、図５Ｂに示すＳＦＣ中継テーブル４６１−２は、拠点Ｂのサーバ４０１−２に格納される。
【００４０】
ＳＦＣ中継テーブル４６１−ｉには、サービスパスＩＤ、サービスインデックス、およびアウトプットが対応付けられて記載されている。
【００４１】
サービスパスＩＤは、サービスチェーンを識別する情報である。サービスパスＩＤは、パケットに対して行われるサービス機能の組み合わせを示す。
【００４２】
サービスインデックスは、サービス機能を示す情報であり、パケットに対して次に適用されるサービス機能を示す情報である。サービスインデックスは、サービス機能を行う順番を示す。また、サービスインデックスは、パケットの次の出力先のサービス機能、拠点、または装置を示す。第１の実施の形態において、サービスインデックスの初期値は２５５であり、各拠点において、ＶＮＦの転送される順に１ずつデクリメントされたサービスインデックスがＶＮＦに割り当てられる。
【００４３】
ここで後述する図１０に示すような拠点Ａと拠点Ｂ間に跨るサービスチェーンを考える。当該サービスチェーンにおいて、ＶＮＦ１−１〜１−１０は拠点Ａ（Sub-domain A）に含まれており、ＶＮＦ２−１〜２−２は拠点Ｂ（Sub-domain B）に含まれている。
【００４４】
また、拠点Ａにおいて、ＶＮＦ１−１、ＶＮＦ１−２、・・・、ＶＮＦ１−１０の順にパケットは転送され各種処理が行われる。パケットがＶＮＦ１−１０で処理された後は、拠点Ｂにパケットは送信される。また、拠点Ｂにおいて、ＶＮＦ２−１、ＶＮＦ２−２の順にパケットは転送され、各種処理が行われる。
【００４５】
このようなサービスチェーンがある場合、拠点Ａのサーバ４０１−１のＳＦＣ中継テーブル４６１−１は図５Ａに示すような値に設定され、拠点Ｂのサーバ４０１−２のＳＦＣ中継テーブル４６１−２は図５Ｂに示すような値に設定される。
【００４６】
拠点Ａにおいて、ＶＮＦ１−１、ＶＮＦ１−２、・・・、ＶＮＦ１−１０の順にパケットは転送され各種処理が行われる。したがって、図５Ａに示すＳＦＣ中継テーブル４６１−１のように、拠点Ａにおいて最初にパケットが転送されるアウトプット＝ＶＮＦ１−１に対応するサービスインデックスは２５５、次にパケットが転送されるアウトプット＝ＶＮＦ１−２に対応するサービスインデックスは２５４となっている。
【００４７】
また、拠点Ｂにおいて、ＶＮＦ２−１、ＶＮＦ２−２の順にパケットは転送され、各種処理が行われる。したがって、図５Ｂに示すＳＦＣ中継テーブル４６１−２のように、拠点Ｂにおいて最初にパケットが転送されるアウトプット＝ＶＮＦ２−１に対応するサービスインデックスは２５５、次にパケットが転送されるアウトプット＝ＶＮＦ２−２に対応するサービスインデックスは２５４となっている。
【００４８】
また、ＳＦＣ中継テーブル４６１−１の各エントリのサービスパスＩＤは１００であり、ＳＦＣ中継テーブル４６１−２の各エントリのサービスパスＩＤは１００となっており、同一の値となっている。よって、ＳＦＣ中継テーブル４６１−１で示される拠点ＡのサービスチェーンとＳＦＣ中継テーブル４６１−２で示される拠点Ｂのサービスチェーンとが繋がっており、図１０に示すような拠点Ａと拠点Ｂ間に跨って構成されるサービスチェーンが構成されていることが分かる。
【００４９】
アウトプットは、パケットの出力先を示す。アウトプットには、サービス機能（ＶＮＦ）、拠点、または装置が記載される。
【００５０】
ＳＦＦ部４２１−ｉは、パケットを受信すると、ＳＦＣ中継テーブル４６１−ｉを参照し、パケットに含まれるサービスパスＩＤとサービスインデックスに対応する出力先を検出し、検出した出力先にパケットを出力する。
【００５１】
例えば、ＳＦＦ部４２１−１がパケットを受信し、受信したパケットの含まれるサービスパスＩＤが１００、サービスインデックスが２５５である場合、ＳＦＣ中継テーブル４６１−１を参照すると、サービスパスＩＤ＝１００且つサービスインデックス＝２５５に対応するアウトプットはＶＮＦ１−１である。よって、ＳＦＦ部４２１−１は、受信したパケットをＶＮＦ１−１に出力する。
【００５２】
また、ＳＦＦ部４２１−１がパケットを受信し、受信したパケットの含まれるサービスパスＩＤが１００、サービスインデックスが２４５である場合、ＳＦＣ中継テーブル４６１−１を参照すると、サービスパスＩＤ＝１００且つサービスインデックス＝２４５に対応するアウトプットはSub-domain Bである。よって、ＳＦＦ部４２１−１は、ＳＦＣマッパー部４３１−１にパケットを転送し、ＳＦＣマッパー部４３１−１はパケットを拠点Ｂに出力する。このとき、ＳＦＣマッパー部４３１−１は、パケットのサービスインデックスをリセット、すなわちサービスインデックスを２５５に更新する。
【００５３】
また、ＳＦＦ部４２１−２がパケットを受信し、受信したパケットの含まれるサービスパスＩＤが１００、サービスインデックスが２５５である場合、ＳＦＣ中継テーブル４６１−２を参照すると、サービスパスＩＤ＝１００且つサービスインデックス＝２５５に対応するアウトプットはＶＮＦ２−１である。よって、ＳＦＦ部４２１−２は、受信したパケットをＶＮＦ２−１に出力する。
【００５４】
図６は、サービスパスヘッダを示す図である。
サービスチェーニングにおいて、パケットには、サービスタグ情報が付与され、ＳＦＦ部４２１−ｉは、サービスタグ情報を参照して、パケットを適切なサービス機能に転送する。サービスタグ情報は、サービスチェーンの入り口に配置されるClassifierにより付与される。
【００５５】
パケットに付与されるサービスタグ情報は、サービスパスヘッダを含む。サービスパスヘッダは、サービスパスＩＤとサービスインデックスを含む。
【００５６】
サービスパスＩＤは、サービスチェーンを識別する情報である。サービスパスＩＤは、パケットに対して行われるサービス機能の組み合わせを示す。
【００５７】
サービスインデックスは、パケットに対して行われたサービス機能の数を示す情報であり、パケットに対して次に適用されるサービス機能を示す情報である。例えば、サービスインデックスの初期値は２５５であり、ＶＮＦ部４１１−ｉ−ｊで処理が行われるごとに、１デクリメントされる。よって、サービスインデックスにより、パケットにいくつのサービス機能が行われたか判定でき、次の転送先のサービス機能が分かる。例えば、パケットのサービスインデックスが２５４である場合、１つのサービス機能による処理が行われたことを示し、図５ＡのＳＦＣ中継テーブル４６１−１を参照すると、パケットは次にＶＮＦ１−２に転送されることが分かる。
【００５８】
図７は、第１の実施の形態に係るグローバルＳＤＮコントローラの構成図である。
グローバルＳＤＮコントローラ２０１は、通信部２１１、リクエスト部２２１、および記憶部２３１を備える。
【００５９】
通信部２１１は、ローカルＳＤＮコントローラ３０１−ｉとのデータの送受信を行う。
リクエスト部２２１は、ローカルＳＤＮコントローラ３０１−ｉにＳＦＣ中継テーブル４６１−ｉの設定を要求する。
【００６０】
記憶部２３１は、グローバルＳＤＮコントローラ２０１で使用されるデータを格納する記憶装置である。記憶部２３１は、サービスチェーン定義情報２４１を格納する。サービスチェーン定義情報２４１は、サービスチェーンを定義する情報である。サービスチェーン定義情報２４１は、サービスチェーンに含まれるサービス機能、サービス機能を適用する順番、およびサービス機能が所属する拠点等の情報を含む。
【００６１】
図８は、第１の実施の形態に係るローカルＳＤＮコントローラの構成図である。
ローカルＳＤＮコントローラ３０１−ｉは、通信部３１１−ｉ、設定部３２１−ｉ、および記憶部３３１−ｉを備える。
【００６２】
通信部３１１−ｉは、グローバルＳＤＮコントローラ２０１およびサーバ４０１−ｉとの通信を行う。
【００６３】
設定部３２１−ｉは、サーバ４０１−ｉのＳＦＣ中継テーブル４６１−ｉの設定を行う。
【００６４】
記憶部３３１−ｉは、ローカルＳＤＮコントローラ３０１−ｉで使用されるデータを格納する記憶装置である。記憶部３３１−ｉは、サービスチェーン定義情報３４１−ｉを格納する。サービスチェーン定義情報３４１−ｉは、サービスチェーンを定義する情報である。サービスチェーン定義情報３４１−ｉは、サービスチェーンに含まれるサービス機能、サービス機能を適用する順番、およびサービス機能が所属する拠点等の情報を含む。
【００６５】
図９は、サービスチェーン定義情報の例を示す図である。
図１０は、サービスチェーンの例を示す図である。
【００６６】
サービスチェーン定義情報２４１、３４１−ｉは、例えば、図９に示されるようなLinked List形式のデータとして表される。また、図９のサービスチェーン定義情報を図示するとサービスチェーンは図１０に示すような構造となる。
【００６７】
図９に示すサービスチェーン定義情報において、ＶＮＦ１−１〜１−１０は拠点Ａ（Sub-domain A）に含まれており、ＶＮＦ２−１〜２−２は拠点Ｂ（Sub-domain B）に含まれている。
【００６８】
また、拠点Ａにおいて、ＶＮＦ１−１、ＶＮＦ１−２、・・・、ＶＮＦ１−１０の順にパケットは転送され各種処理が行われる。パケットがＶＮＦ１−１０で処理された後は、拠点Ｂにパケットは送信される。
【００６９】
また、拠点Ｂにおいて、ＶＮＦ２−１、ＶＮＦ２−２の順にパケットは転送され、各種処理が行われる。
【００７０】
図９のサービスチェーン定義情報を図示すると図１０に示すような拠点Ａと拠点Ｂ間に跨るサービスチェーン、すなわち拠点ＡのＶＮＦと拠点ＢのＶＮＦと含むサービスチェーンが構成されている。
【００７１】
図１１は、第１の実施の形態に係るグローバルＳＤＮコントローラのサービスチェーン設定要求処理のフローチャートである。
【００７２】
ステップＳ６０１において、リクエスト部２２１は、グローバルＳＤＮコントローラのGraphical User Interface（ＧＵＩ）等から、サービスチェーンの設定要求を受信した場合、制御はステップＳ６０２に進む。サービスチェーンの設定要求にはサービスチェーン定義情報が含まれている。
【００７３】
ステップＳ６０２において、リクエスト部２２１は、受信したサービスチェーン定義情報に基づいて、サービスチェーンを拠点毎のサービスチェーンに分解する。図９に示すサービスチェーン定義情報の場合、拠点Ａのサービスチェーン（ＶＮＦ１−１，ＶＮＦ１−２，・・・，ＶＮＦ１−１０）と、拠点Ｂのサービスチェーン（ＶＮＦ２−１，ＶＮＦ２−２）に分解する。
【００７４】
ステップＳ６０３において、リクエスト部２２１は、１つの拠点内に閉じた設定変更であるか判定する。すなわち、リクエスト部２２１は、今回受信したサービスチェーン定義情報と現在のサービスチェーン定義情報とを比較し、サービスチェーンの変更箇所が１つの拠点内だけであるか判定する。１つの拠点内に閉じた設定変更である場合、制御はステップＳ６０４に進み、１つの拠点内に閉じた設定変更でない場合、制御はステップＳ６０６に進む。
【００７５】
ステップＳ６０４において、リクエスト部２２１は、サービスチェーンを変更する拠点のローカルＳＤＮコントローラ３０１−ｉにサービスチェーンの設定要求を送信する。サービスチェーンの設定要求には、受信したサービスチェーン定義情報が含まれている。
【００７６】
ステップＳ６０５において、リクエスト部２２１は、ローカルＳＤＮコントローラ３０１−ｉからサービスチェーンの設定完了通知を受信すると処理を終了する。
【００７７】
ステップＳ６０６において、リクエスト部２２１は、サービスチェーンの設定要求を未送信且つサービスチェーンを変更する拠点の内の１つの拠点のＳＤＮコントローラ３０１−ｉにサービスチェーンの設定要求を送信する。
【００７８】
ステップＳ６０７において、リクエスト部２２１は、ローカルＳＤＮコントローラ３０１−ｉからサービスチェーンの設定完了通知を受信すると、制御はステップＳ６０８に進む。
【００７９】
ステップＳ６０８において、サービスチェーンを変更する全ての拠点にサービスチェーンの設定要求を送信した場合、処理は終了し、サービスチェーンを変更する全ての拠点にサービスチェーンの設定要求を送信していない場合、制御はステップＳ６０６に戻る。
【００８０】
図１２は、第１の実施の形態に係るローカルＳＤＮコントローラのサービスチェーン設定処理のフローチャートである。
【００８１】
ステップＳ６１１において、通信部３１１−ｉは、グローバルＳＤＮコントローラ２０１からサービスチェーンの設定要求を受信すると、制御はステップＳ６１２に進む。
【００８２】
ステップＳ６１２において、設定部３２１−ｉは、サービスチェーンの設定要求に含まれるサービスチェーン定義情報に基づいて、ＳＦＣ中継テーブル４６１−ｉの設定を行う。
【００８３】
ステップＳ６１３において、設定部３２１−ｉは、サービスチェーンの設定完了通知をグローバルＳＤＮコントローラ２０１に送信する。
【００８４】
ここで、サービスチェーンの変更に伴うＳＦＣ中継テーブルの変更の例について説明する。
【００８５】
図１３は、サービスチェーンの例を示す図である。
図１４は、変更後のＳＦＣ中継テーブルの例である。
【００８６】
例えば、サービスチェーンが図１０から図１３に示すような状態に変更されるとする。すなわち、拠点ＡのサービスチェーンにＶＮＦ１−１１が追加されるとする。図１０に示すサービスチェーンでは、サーバ４０１−１のＳＦＣ中継テーブル４６１−１は、図５Ａに示すような状態となっている。
【００８７】
拠点ＡのサービスチェーンにＶＮＦ１−１１が追加されると、ローカルＳＤＮコントローラ３０１−１により、ＳＦＣ中継テーブル４６１−１は、図１４に示すＳＦＣ中継テーブル４６１−１’のようになる。すなわち、ＳＦＣ中継テーブル４６１−１’には、サービスパスＩＤ＝１００，サービスインデックス＝２４５、アウトプット＝ＶＮＦ１−１１のエントリが追加されている。また、アウトプット＝Sub-domain Bのサービスインデックスは２４５から２４４に変更されている。
【００８８】
尚、図１３において、拠点Ｂのサービスチェーンの変更は無い。そのため、拠点Ｂのサーバ４０１−２のＳＦＣ中継テーブル４６１−２は、変更されず、図５Ｂに示す状態のままとなっている。
【００８９】
図１５は、第１の実施の形態に係るサーバのパケット中継処理のフローチャートである。
【００９０】
ステップＳ６２１において、通信部４４１−ｉは、パケットを受信する。
ステップＳ６２２において、ＳＦＦ部４２１−ｉは、パケットのサービスタグ情報を抽出する。詳細には、ＳＦＦ部４２１−ｉは、パケットのサービスパスＩＤとサービスインデックスを抽出する。
【００９１】
ステップＳ６２３において、ＳＦＦ部４２１−ｉは、パケットのサービスパスＩＤとサービスインデックスを検索キーとして、ＳＦＣ中継テーブル４６１−ｉを検索し、対応するパケットの次の出力先（アウトプット）を特定する。
【００９２】
ステップＳ６２４において、ＳＦＦ部４２１−ｉは、検索結果に基づいて、パケットの次の出力先（アウトプット）が同じサーバ４０１−ｉ内のＶＮＦ部４１１−ｉ−ｊであるか判定する。
【００９３】
ステップＳ６２５において、ＳＦＦ部４２１−ｉは、パケットのサービスインデックスとＳＦＣ中継テーブル４６１−ｉに基づいて、次の出力先のＶＮＦ部４１１−ｉ−ｊにパケットを転送する。
【００９４】
ステップＳ６２６において、ＶＮＦ部４１１−ｉ−ｊは、パケットに対して所定のネットワークサービス処理（例えば、ファイアウォール）を行う。
【００９５】
ステップＳ６２７において、ＶＮＦ部４１１−ｉ−ｊは、パケットのサービスインデックスを１デクリメントする。
【００９６】
ステップＳ６２８において、ＶＮＦ部４１１−ｉ−ｊは、ＳＦＦ部４２１−ｉにパケットを出力する。
【００９７】
ステップＳ６２９において、ＳＦＣマッパー部４３１−ｉは、パケットのサービスインデックスとＳＦＣ中継テーブル４６１−ｉを参照し、パケットの次の出力先が他の拠点であるか判定する。パケットの次の出力先が他の拠点である場合、制御はステップＳ６３０に進み、パケットの次の出力先が他の拠点でない場合（すなわち、パケットの次の出力先が同じ拠点内の他のサーバである場合）、制御はステップＳ６３１に進む。
【００９８】
ステップＳ６３０において、ＳＦＣマッパー部４３１−ｉは、パケットのサービスインデックスをリセットする。すななち、ＳＦＣマッパー部４３１−ｉは、パケットのサービスインデックスを予め定められた値（例えば、サービスインデックスの初期値である２５５）に変更する。また、ＳＦＣ中継テーブル４６１−ｉがサービスインデックスをリセットするか否かを示すリセット情報をさらに含み、ＳＦＣマッパー部４３１−ｉは、リセット情報に基づいて、パケットのサービスインデックスをリセットしてもよい。例えば、図５Ａに示すＳＦＣ中継テーブル４６１−１の最終行のアウトプット＝Sub-domain Bに対応するリセット情報が「リセット＝Ｙｅｓ」と設定されていた場合、ＳＦＣマッパー部４３１は、パケットをSub-domain Bに出力する場合に、パケットのサービスインデックスをリセットする。例えば、ＳＦＣ中継テーブル４６１−ｉのエントリのうち、アウトプットが他拠点を示すエントリに、サービスインデックスをリセットすることを示すリセット情報が設定される。
【００９９】
ステップＳ６３１において、ＳＦＣマッパー部４３１−ｉは、通信部４４１−ｉを介して、次の出力先にパケットを送信する。
【０１００】
図１６は、第１の実施の形態に係るサービスチェーンの変更前後のＶＮＦのサービスインデックスを示す図である。
【０１０１】
図１６の上側は、サービスチェーンの変更前、図１６の下側は、サービスチェーンの変更後を示す。
【０１０２】
サービスチェーンの変更前において、サービスチェーンは、拠点ＡのＶＮＦ１−１と拠点ＢのＶＮＦ２−１を含む。パケットは、ＶＮＦ１−１、ＶＮＦ２−１の順に各ＶＮＦで処理が行われる。また、拠点ＡのＳＦＣ中継テーブル４６１−１において、ＶＮＦ１−１に対応するサービスインデックスは２５５であり、拠点ＢのＳＦＣ中継テーブル４６１−２において、ＶＮＦ２−１に対応するサービスインデックスは２５５である。拠点ＡのＳＦＣマッパー部４３１−１は、パケットを拠点Ｂに出力する場合にパケットのサービスインデックスを２５５に変更（リセット）する。拠点ＢのＳＦＦ部４２２−２は、受信したパケットのサービスインデックスが２５５であるので、パケットをＶＮＦ２−１に転送する。
【０１０３】
図１６の下側に示すように、拠点ＡのサービスチェーンにＶＮＦ１−２を追加するとする。パケットは、ＶＮＦ１−１、ＶＮＦ１−２，ＶＮＦ２−１の順に各ＶＮＦで処理が行われる。ローカルＳＤＮコントローラ３０１−１によりＳＦＣ中継テーブル４６１−１は変更され、拠点Ａのサービスチェーンの変更後、拠点ＡのＳＦＣ中継テーブル４６１−１において、ＶＮＦ１−１に対応するサービスインデックスは２５５であり、ＶＮＦ１−２に対応するサービスインデックスは２５４となる。また、拠点ＢのＳＦＣ中継テーブル４６１−２において、ＶＮＦ２−１に対応するサービスインデックスは２５５であり、変更されていない。
【０１０４】
拠点ＡのＳＦＣマッパー部４３１−１は、ＶＮＦ１−２から出力されたパケットを拠点Ｂに出力する場合にパケットのサービスインデックスを２５５に変更（リセット）する。拠点ＢのＳＦＦ部４２２−２は、受信したパケットのサービスインデックスが２５５であるので、パケットをＶＮＦ２−１に転送する。
【０１０５】
このように、第１の実施の形態に係るシステムにおいて、拠点Ａのサービスチェーンを変更しても、拠点ＢのＳＦＣ中継テーブル４６１−２は変更されていない。
【０１０６】
第１の実施の形態に係るシステムによれば、ある拠点のサービスチェーンを変更しても、簡易な方法で複数の拠点の再設定を不要にすることができる。それにより、運用効率を維持することができる。
【０１０７】
図１７は、第１の実施の形態に係るシステムの構成図の変形例である。
システム１１０１は、ローカルＳＤＮコントローラ１３０１−ｉ（ｉ＝１、２）、およびサーバ４０１−ｉを備える。
【０１０８】
ローカルＳＤＮコントローラ１３０１−ｉ、およびサーバ４０１−ｉは、それぞれネットワークを介して互いに接続する。
【０１０９】
ローカルＳＤＮコントローラ１３０１−１、およびサーバ４０１−１は、拠点Ａに属している。ローカルＳＤＮコントローラ３０１−２、サーバ４０１−２，４０１−３は、拠点Ｂに属している。
【０１１０】
尚、図１７に示すサーバ４０１−ｉの数は、一例であり、これに限られるものではない。
【０１１１】
図１８は、変形例のローカルＳＤＮコントローラの構成図である。
ローカルＳＤＮコントローラ１３０１−ｉは、通信部１３１１−ｉ、設定部１３２１−ｉ、問合わせ部１３３１−ｉ、更新部１３４１−ｉ、表示制御部１３５１−ｉ、および記憶部１３６１−ｉを備える。
【０１１２】
通信部１３１１−ｉは、他のローカルＳＤＮコントローラ１３０１−ｉおよびサーバ４０１−ｉとの通信を行う。
【０１１３】
設定部１３２１−ｉは、サーバ４０１−ｉのＳＦＣ中継テーブル４６１−ｉの設定を行う。
【０１１４】
問合わせ部１３３１−ｉは、他のローカルＳＤＮコントローラ１３０１−ｉに問い合わせを行う。
【０１１５】
更新部１３４１−ｉは、サービスチェーン定義情報１３７１−ｉの更新を行う。
表示制御部１３５１−ｉは、ローカルＳＤＮコントローラ−ｉが備えるディスプレイ等の表示部（不図示）の表示の制御を行う。
【０１１６】
記憶部１３６１−ｉは、ローカルＳＤＮコントローラ１３０１−ｉで使用されるデータを格納する記憶装置である。記憶部１３６１−ｉは、サービスチェーン定義情報１３７１−ｉを格納する。サービスチェーン定義情報１３７１−ｉは、サービスチェーン定義情報３４１−ｉと同様であるため説明は省略する。
【０１１７】
図１９Ａ、１９Ｂは、変形例のローカルＳＤＮコントローラのサービスチェーン設定処理のフローチャートである。
【０１１８】
ステップＳ６５１において、設定部１３２１−ｉは、ローカルＳＤＮコントローラ１３０１−ｉのＧＵＩ等から、サービスチェーンの設定要求を受信したか否か判定する。サービスチェーンの設定要求を受信した場合、制御はステップＳ６５２に進み、サービスチェーンの設定要求を受信していない場合、制御はステップＳ６５８に進む。サービスチェーンの設定要求にはサービスチェーン定義情報が含まれている。
【０１１９】
ステップＳ６５２において、設定部１３２１−ｉは、受信したサービスチェーン定義情報に基づいて、サービスチェーンを拠点毎のサービスチェーンに分解する。図９に示すサービスチェーン定義情報の場合、拠点Ａのサービスチェーン（ＶＮＦ１−１，ＶＮＦ１−２，・・・，ＶＮＦ１−１０）と、拠点Ｂのサービスチェーン（ＶＮＦ２−１，ＶＮＦ２−２）に分解する。
【０１２０】
ステップＳ６５３において、設定部１３２１−ｉは、自拠点内に閉じた設定変更であるか判定する。すなわち、設定部１３２１−ｉは、今回受信したサービスチェーン定義情報と現在のサービスチェーン定義情報とを比較し、サービスチェーンの変更箇所が自身が属する拠点内だけであるか判定する。自拠点内に閉じた設定変更である場合、制御はステップＳ６５４に進み、１つの拠点内に閉じた設定変更でない場合、制御はステップＳ６５５に進む。
【０１２１】
ステップＳ６５４において、設定部１３２１−ｉは、受信したサービスチェーン定義情報に基づいて、自拠点内のサーバ４０１−ｉのＳＦＣ中継テーブル４６１−ｉの設定を行う。
【０１２２】
ステップＳ６５５において、設定部１３２１−ｉは、影響を受ける他拠点（すなわち、サービスチェーンが変更される他の拠点）へ受信したサービスチェーン定義情報およびサービスチェーン設定要求を送信する。
【０１２３】
ステップＳ６５６において、設定部１３２１−ｉは、影響を受ける他拠点から応答を受信すると、制御はステップＳ６５７に進む。
【０１２４】
ステップＳ６５７において、設定部１３２１−ｉは、自拠点内のサーバ４０１−ｉのＳＦＣ中継テーブル４６１−ｉの設定を行う。
【０１２５】
ステップＳ６５８において、設定部１３２１−ｉは、他拠点からサービスチェーン設定要求を受信したか判定する。他拠点からサービスチェーン設定要求を受信した場合、制御はステップＳ６６２に進み、他拠点からサービスチェーン設定要求を受信していない場合、制御はステップＳ６５９に進む。
【０１２６】
ステップＳ６５９において、設定部１３２１−ｉは、ユーザからのサービスチェーンの定義情報の問合わせを受信したか判定する。ユーザからのサービスチェーンの定義情報の問合わせを受信した場合、制御はステップＳ６６３に進み、ユーザからのサービスチェーンの定義情報の問合わせを受信していない場合、制御はステップＳ６６０に進む。
【０１２７】
ステップＳ６６０において、設定部１３２１−ｉは、他拠点のローカルＳＤＮコントローラ１３０１−ｉからのサービス問合わせを受信したか判定する。他拠点のローカルＳＤＮコントローラ１３０１−ｉからのサービス問合わせを受信した場合、制御はステップＳ６６１に進み、他拠点のローカルＳＤＮコントローラ１３０１−ｉからのサービス問合わせを受信していない場合、処理は終了する。
【０１２８】
ステップＳ６６１において、問合せ部１３３１−ｉは、サービスチェーン情報１３７１−ｉに含まれる自拠点分のサービスチェーンの情報を問合せ元の他拠点のローカルＳＤＮコントローラ１３０１−ｉに送信する。
【０１２９】
ステップＳ６６２において、設定部１３２１−ｉは、自拠点内のサーバ４０１−ｉのＳＦＣ中継テーブル４６１−ｉの設定を行う。
【０１３０】
ステップＳ６６３において、問合せ部１３３１−ｉは、他拠点へサービスチェーン定義情報の問合せが必要か判定する。他拠点へサービスチェーン定義情報の問合せが必要な場合、制御はステップＳ６６４に進み、他拠点へサービスチェーン定義情報の問合せが必要でない場合、制御はステップＳ６６７に進む。問合せ部１３３１−ｉは、ユーザからのサービスチェーンの定義情報の問合わせに、他拠点のサービスチェーン定義情報が要求されている場合に、他拠点へサービスチェーン定義情報の問合せが必要と判定する。
【０１３１】
ステップＳ６６４において、問合せ部１３３１−ｉは、他拠点のローカルＳＤＮコントローラ１３０１−ｉへサービスチェーン定義情報の問合せを送信する。
【０１３２】
ステップＳ６６５において、問合せ部１３３１−ｉは、他拠点のローカルＳＤＮコントローラ１３０１−ｉから応答を受信した場合、制御はステップＳ６６６に進む。
【０１３３】
ステップＳ６６６において、更新部１３４１−ｉは、他拠点のローカルＳＤＮコントローラ１３０１−ｉから受信した応答に基づいて、サービスチェーン情報１３７１−ｉを更新する。
【０１３４】
ステップＳ６６７において、表示制御部１３５１−ｉは、サービスチェーン情報１３７１−ｉを表示する。
【０１３５】
図２０は、第２の実施の形態に係るシステムの構成図である。
システム２１０１は、ＳＤＮコントローラ２３０１およびサーバ２４０１−ｉ（ｉ＝１、２）を備える。
【０１３６】
ＳＤＮコントローラ２３０１およびサーバ２４０１−ｉは、それぞれネットワークを介して互いに接続する。
【０１３７】
サーバ２４０１−１は、拠点Ａに属している。ＳＤＮコントローラ２３０１、サーバ２４０１−２は、拠点Ｂに属している。拠点は、管理者により決定される装置のグループである。また、拠点をSub-domainと表記する場合がある。
【０１３８】
尚、図２０に示すサーバ４０１−ｉの数は、一例であり、これに限られるものではない。
【０１３９】
ＳＤＮコントローラ２３０１は、サービスチェーンの設定を行う。詳細には、ＳＤＮコントローラ２３０１は、サーバ４０１−ｉのＳＦＣ中継テーブルの設定を行う。
【０１４０】
サーバ２４０１−ｉは、ソフトウェアによりネットワークのサービス機能を実行する。これにより、ネットワークのサービス機能（以下、単にサービス機能と称する）は、サーバ５上で仮想化される。サービス機能は、例えば、ファイアーウォール、ルータ、Deep Packet Inspection（ＤＰＩ）、WAN Acceleration、サービス品質モニタ等である。
【０１４１】
図２１は、サーバの構成図である。
サーバ２４０１−ｉは、ＶＮＦ部２４１１−ｉ−ｊ（ｊ＝１〜ｎ）、ＳＦＦ部２４２１−ｉ、ＳＦＣマッパー部２４３１−ｉ、通信部２４４１−ｉ、および記憶部２４５１−ｉを備える。
【０１４２】
ＶＮＦ部２４１１−ｉ−ｊ、ＳＦＦ部２４２１−ｉ、ＳＦＣマッパー部２４３１−ｉ、および通信部２４４１−ｉは、ＶＮＦ部４１１−ｉ−ｊ、ＳＦＦ部４３１−ｉ、ＳＦＣマッパー部４３１−ｉ、および通信部４４１−ｉとそれぞれ同様の機能を有するため説明は省略する。
【０１４３】
記憶部２４５１−ｉは、サーバ２４０１−ｉで使用されるデータを格納する記憶装置である。記憶部２４５１−ｉは、ＳＦＣ中継テーブル２４６１−ｉを格納する。ＳＦＣ中継テーブル２４６１−ｉは、サーバ２４０１−ｉが属する拠点におけるサービスチェーン（パケットに適用されるＶＮＦ部２４１１−ｉ−ｊの組み合わせ）を示し、サービスチェーンにおけるパケットの出力先を示す。
【０１４４】
図２２Ａ、２２ＢはＳＦＣ中継テーブルの例である。
図２２Ａに示すＳＦＣ中継テーブル２４６１−１は、拠点Ａのサーバ２４０１−１に格納され、図２２Ｂに示すＳＦＣ中継テーブル２４６１−２は、拠点Ｂのサーバ２４０１−２に格納される。
【０１４５】
ＳＦＣ中継テーブル２４６１−ｉには、サービスパスＩＤ、サービスインデックス、アウトプット、およびパスＩＤが対応付けられて記載されている。
【０１４６】
サービスパスＩＤは、自拠点におけるサービスチェーンを識別する情報である。サービスパスＩＤは、自拠点においてパケットに対して行われるサービス機能の組み合わせを示す。
【０１４７】
サービスインデックスは、サービス機能を示す情報であり、パケットに対して次に適用されるサービス機能を示す情報である。サービスインデックスは、サービス機能を行う順番を示す。また、サービスインデックスは、パケットの次の出力先のサービス機能、拠点、または装置を示す。第２の実施の形態において、サービスインデックスの初期値は２５５であり、各拠点において、ＶＮＦの転送される順に１ずつデクリメントされたサービスインデックスがＶＮＦに割り当てられる。例えば、サービスチェーン定義情報が図９に示すような情報であるとする。拠点Ａにおいて、ＶＮＦ１−１、ＶＮＦ１−２、・・・、ＶＮＦ１−１０の順にパケットは転送され各種処理が行われる。したがって、図２２Ａに示すＳＦＣ中継テーブル２４６１−１のように、拠点Ａにおいて最初にパケットが転送されるアウトプット＝ＶＮＦ１−１に対応するサービスインデックスは２５５、次にパケットが転送されるアウトプット＝ＶＮＦ１−２に対応するサービスインデックスは２５４となっている。
【０１４８】
また、拠点Ｂにおいて、ＶＮＦ２−１、ＶＮＦ２−２の順にパケットは転送され、各種処理が行われる。したがって、図２２Ｂに示すＳＦＣ中継テーブル２４６１−２のように、拠点Ｂにおいて最初にパケットが転送されるアウトプット＝ＶＮＦ２−１に対応するサービスインデックスは２５５、次にパケットが転送されるアウトプット＝ＶＮＦ２−２に対応するサービスインデックスは２５４となっている。
【０１４９】
アウトプットは、パケットの出力先を示す。アウトプットには、サービス機能（ＶＮＦ）、拠点、または装置が記載される。
【０１５０】
パスＩＤは、パケットの出力時に設定されるパケットのサービスパスＩＤの値を示す。パスＩＤは、パケットの出力先の拠点におけるサービスチェーンを識別する情報である。パスＩＤは、自拠点におけるサービスチェーンとパケットの出力先の拠点におけるサービスチェーンとの対応関係を示す。
【０１５１】
例えば、図１０に示すような拠点Ａと拠点Ｂ間に跨って構成されるサービスチェーンがある場合、拠点Ａのサーバ２４０１−１のＳＦＣ中継テーブル２４６１−１は図２２Ａに示すような値に設定され、拠点Ｂのサーバ２４０１−２のＳＦＣ中継テーブル２４６１−２は図２２Ｂに示すような値に設定される。ＳＦＣ中継テーブル２４６１−１のアウトプット＝Sub domain Bに対応するパスＩＤは２００であり、ＳＦＣ中継テーブル２４６１−２の各エントリのサービスパスＩＤは２００となっている。よって、ＳＦＣ中継テーブル２４６１−１で示される拠点ＡのサービスチェーンとＳＦＣ中継テーブル２４６１−２で示される拠点Ｂのサービスチェーンとが繋がっており、図１０に示すような拠点Ａと拠点Ｂ間に跨って構成されるサービスチェーンが構成されていることが分かる。
【０１５２】
ＳＦＦ部２４２１−ｉは、パケットを受信すると、ＳＦＣ中継テーブル２４６１−ｉを参照し、パケットに含まれるサービスパスＩＤとサービスインデックスに対応する出力先を検出し、検出した出力先にパケットを出力する。
【０１５３】
例えば、ＳＦＦ部２４２１−１がパケットを受信し、受信したパケットの含まれるサービスパスＩＤが１００、サービスインデックスが２５５である場合、ＳＦＣ中継テーブル２４６１−１を参照すると、サービスパスＩＤ＝１００且つサービスインデックス＝２５５に対応するアウトプットはＶＮＦ１−１である。よって、ＳＦＦ部２４２１−１は、受信したパケットをＶＮＦ１−１に出力する。
【０１５４】
また、ＳＦＦ部２４２１−１がパケットを受信し、受信したパケットの含まれるサービスパスＩＤが１００、サービスインデックスが２４５である場合、ＳＦＣ中継テーブル４６１−１を参照すると、サービスパスＩＤ＝１００且つサービスインデックス＝２４５に対応するアウトプットはSub-domain Bである。よって、ＳＦＦ部２４２１−１は、ＳＦＣマッパー部２４３１−１にパケットを転送し、ＳＦＣマッパー部２４３１−１はパケットを拠点Ｂに出力する。このとき、ＳＦＣマッパー部２４３１−１は、パケットのサービスインデックスをリセット、すなわちサービスインデックスを２５５に更新する。また、ＳＦＣマッパー部２４３１−１は、パケットのサービスパスＩＤを１００から２００に変更する。
【０１５５】
また、ＳＦＦ部２４２１−２がパケットを受信し、受信したパケットの含まれるサービスパスＩＤが２００、サービスインデックスが２５５である場合、ＳＦＣ中継テーブル２４６１−２を参照すると、サービスパスＩＤ＝２００且つサービスインデックス＝２５５に対応するアウトプットはＶＮＦ２−１である。よって、ＳＦＦ部２４２１−２は、受信したパケットをＶＮＦ２−１に出力する。
【０１５６】
図２３は、第２の実施の形態に係るＳＤＮコントローラの構成図である。
ＳＤＮコントローラ２３０１は、通信部２３１１、設定部２３２１、および記憶部２３３１を備える。
【０１５７】
通信部２３１１は、サーバ２４０１−ｉとの通信を行う。
設定部２３２１は、サーバ２４０１−ｉのＳＦＣ中継テーブル４６１−ｉの設定を行う。
【０１５８】
記憶部２３３１は、ＳＤＮコントローラ２３０１使用されるデータを格納する記憶装置である。記憶部２３３１は、サービスチェーン定義情報２３４１を格納する。サービスチェーン定義情報２３４１は、サービスチェーン定義情報３４１−ｉと同様であるため説明は省略する。
【０１５９】
図２４は、第２の実施の形態に係るサービスチェーン設定処理のフローチャートである。
【０１６０】
ステップＳ７０１において、設定部２３２１は、ＳＤＮコントローラ２３０１のＧＵＩ等により、サービスチェーンの設定要求を受信した場合、制御はステップＳ７０２に進む。サービスチェーンの設定要求にはサービスチェーン定義情報が含まれている。
【０１６１】
ステップＳ７０２において、設定部２３２１は、受信したサービスチェーン定義情報に基づいて、サービスチェーンを拠点毎のサービスチェーンに分解する。図９に示すサービスチェーン定義情報の場合、拠点Ａのサービスチェーン（ＶＮＦ１−１，ＶＮＦ１−２，・・・，ＶＮＦ１−１０）と、拠点Ｂのサービスチェーン（ＶＮＦ２−１，ＶＮＦ２−２）に分解する。
【０１６２】
ステップＳ７０３において、設定部２３２１は、１つの拠点内に閉じた設定変更であるか判定する。すなわち、設定部２３２１は、今回受信したサービスチェーン定義情報と現在のサービスチェーン定義情報とを比較し、サービスチェーンの変更箇所が１つの拠点内だけであるか判定する。１つの拠点内に閉じた設定変更である場合、制御はステップＳ７０４に進み、１つの拠点内に閉じた設定変更でない場合、制御はステップＳ７０５に進む。
【０１６３】
ステップＳ７０４において、設定部２３２１は、受信したサービスチェーン定義情報に基づいて、サービスチェーンを変更する拠点のＳＦＣ中継テーブル２４６１−ｉの設定を行う。
【０１６４】
ステップＳ７０５において、設定部２３２１は、受信したサービスチェーン定義情報に基づいて、サービスチェーンを変更する拠点の内の未設定の１つの拠点のＳＦＣ中継テーブル２４６１−ｉの設定を行う。
【０１６５】
ステップＳ７０６において、サービスチェーンを変更する全ての拠点のＳＦＣ中継テーブル２４６１−ｉを設定した場合、処理は終了し、サービスチェーンを変更する全ての拠点のＳＦＣ中継テーブル２４６１−ｉを設定してない場合、制御はステップＳ７０５に戻る。
【０１６６】
図２５は、第２の実施の形態に係るサーバのパケット中継処理のフローチャートである。
【０１６７】
ステップＳ７２１において、通信部２４４１−ｉは、パケットを受信する。
ステップＳ７２２において、ＳＦＦ部２４２１−ｉは、パケットのサービスタグ情報を抽出する。詳細には、ＳＦＦ部２４２１−ｉは、パケットのサービスパスＩＤとサービスインデックスを抽出する。
【０１６８】
ステップＳ７２３において、ＳＦＦ部２４２１−ｉは、パケットのサービスパスＩＤとサービスインデックスを検索キーとして、ＳＦＣ中継テーブル４６１−ｉを検索し、対応するパケットの次の出力先（アウトプット）を検出する。
【０１６９】
ステップＳ７２４において、ＳＦＦ部２４２１−ｉは、検索結果に基づいて、パケットの次の出力先（アウトプット）が同じサーバ２４０１−ｉ内のＶＮＦ部２４１１−ｉ−ｊであるか判定する。
【０１７０】
ステップＳ７２５において、ＳＦＦ部２４２１−ｉは、パケットのサービスインデックスとＳＦＣ中継テーブル２４６１−ｉに基づいて、次の出力先のＶＮＦ部２４１１−ｉ−ｊにパケットを転送する。
【０１７１】
ステップＳ７２６において、ＶＮＦ部２４１１−ｉ−ｊは、パケットに対して所定のネットワークサービス処理（例えば、ファイアウォール）を行う。
【０１７２】
ステップＳ７２７において、ＶＮＦ部２４１１−ｉ−ｊは、パケットのサービスインデックスを１デクリメントする。
【０１７３】
ステップＳ７２８において、ＶＮＦ部２４１１−ｉ−ｊは、ＳＦＦ部２４２１−ｉにパケットを出力する。
【０１７４】
ステップＳ７２９において、ＳＦＣマッパー部２４３１−ｉは、パケットのサービスインデックスとＳＦＣ中継テーブル２４６１−ｉを参照し、パケットの次の出力先が他の拠点であるか判定する。パケットの次の出力先が他の拠点である場合、制御はステップＳ７３０に進み、パケットの次の出力先が他の拠点でない場合（同じ拠点内の他のサーバである場合）、制御はステップＳ７３１に進む。
【０１７５】
ステップＳ７３０において、ＳＦＣマッパー部２４３１−ｉは、パケットのサービスインデックスをリセットする。すななち、ＳＦＣマッパー部２４３１−ｉは、パケットのサービスインデックスを予め定められた値（例えば、サービスインデックスの初期値である２５５）に変更する。また、ＳＦＣマッパー部２４３１は、パケットのサービスパスＩＤをＳＦＣ中継テーブル２４６１−ｉに記載のパケットの次の出力先に対応するパスＩＤの値に変更する。例えば、ＳＦＣマッパー部２４３１−１は、パケットを拠点Ｂ（Sub-domain B）に出力する場合、パケットのサービスパスＩＤを図２２ＡのＳＦＣマッパー部２４３１−ｉのアウトプット＝Sub-domain Bに対応するパスＩＤの値（＝２００）に変更する。
【０１７６】
ステップＳ７３１において、ＳＦＣマッパー部２４３１−ｉは、通信部２４４１−ｉを介して、次の出力先にパケットを送信する。
【０１７７】
図２６は、第２の実施の形態に係るサービスチェーンの変更前後のＶＮＦのサービスインデックスを示す図である。
【０１７８】
図２６の上側は、サービスチェーンの変更前、図２６の下側は、サービスチェーンの変更後を示す。
【０１７９】
サービスチェーンの変更前において、サービスチェーンは、拠点ＡのＶＮＦ１−１と拠点ＢのＶＮＦ２−１を含む。パケットは、ＶＮＦ１−１、ＶＮＦ２−１の順に各ＶＮＦで処理が行われる。また、拠点ＡのＳＦＣ中継テーブル２４６１−１において、ＶＮＦ１−１に対応するサービスインデックスは２５５であり、拠点ＢのＳＦＣ中継テーブル２４６１−２において、ＶＮＦ２−１に対応するサービスインデックスは２５５である。拠点ＡのＳＦＣマッパー部２４３１−１は、パケットを拠点Ｂに出力する場合に、パケットのサービスパスＩＤを２００に変更し、パケットのサービスインデックスを２５５に変更（リセット）する。拠点ＢのＳＦＦ部４２２−２は、受信したパケットのサービスインデックスが２５５であるので、パケットをＶＮＦ２−１に転送する。
【０１８０】
図２６の下側に示すように、拠点ＡのサービスチェーンにＶＮＦ１−２を追加するとする。パケットは、ＶＮＦ１−１、ＶＮＦ１−２，ＶＮＦ２−１の順に各ＶＮＦで処理が行われる。ＳＤＮコントローラ２３０１によりＳＦＣ中継テーブル２４６１−１は変更され、拠点Ａのサービスチェーンの変更後、拠点ＡのＳＦＣ中継テーブル２４６１−１において、ＶＮＦ１−１に対応するサービスインデックスは２５５であり、ＶＮＦ１−２に対応するサービスインデックスは２５４となる。また、拠点ＢのＳＦＣ中継テーブル２４６１−２において、ＶＮＦ２−１に対応するサービスインデックスは２５５であり、変更されていない。
【０１８１】
拠点ＡのＳＦＣマッパー部２４３１−１は、ＶＮＦ１−２から出力されたパケットを拠点Ｂに出力する場合に、パケットのサービスパスＩＤを２００に変更し、パケットのサービスインデックスを２５５に変更（リセット）する。拠点ＢのＳＦＦ部４２２−２は、受信したパケットのサービスインデックスが２５５であるので、パケットをＶＮＦ２−１に転送する。
【０１８２】
このように、第２の実施の形態に係るシステムにおいて、拠点Ａのサービスチェーンを変更しても、拠点ＢのＳＦＣ中継テーブル２４６１−２は変更されていない。
【０１８３】
第２の実施の形態に係るシステムによれば、ある拠点のサービスチェーンを変更しても、簡易な方法で複数の拠点の再設定を不要にすることができる。それにより、運用効率を維持することができる。第２の実施の形態に係るシステムによれば、サービスパスＩＤを変換することにより、拠点間で異なるサービスパスＩＤを繋げてサービスチェーンを構成できる。
【０１８４】
また、ＳＦＣマッパー部２４３１−ｉは、パケットの送信先の負荷状態、回線状態、または端末性能等の条件に応じて送信先を選択してもよい。負荷状態、回線状態、または端末性能等の情報は、定期的にサーバ２４０１−ｉが収集しても良いし、他のサーバ２４０１−ｉやＳＤＮコントローラ２３０１から受信してもよい。
【０１８５】
図２７は、第２の実施の形態に係るＳＦＣ中継テーブルの変形例である。
例えば、ＳＦＣ中継テーブル２４６１−１は、図２７に示すようなＳＦＣ中継テーブル２４６１−１−Ａ，２４６１−１−Ｂのような構成でもよい。ＳＦＣ中継テーブル２４６１−１−Ａ，２４６１−１−Ｂは、拠点Ａのサーバ２４０１−１に格納される。
【０１８６】
ＳＦＣ中継テーブル２４６１−１−Ａには、サービスパスＩＤ、サービスインデックス、およびアウトプットが対応付けられて記載されている。
【０１８７】
サービスパスＩＤは、サービスチェーンを識別する情報である。サービスパスＩＤは、パケットに対して行われるサービス機能の組み合わせを示す。
【０１８８】
サービスインデックスは、サービス機能を示す情報であり、パケットに対して次に適用されるサービス機能を示す情報である。サービスインデックスは、サービス機能を行う順番を示す。また、サービスインデックスは、パケットの次の出力先のサービス機能、拠点、または装置を示す。
【０１８９】
アウトプットは、パケットの出力先を示す。アウトプットには、サービス機能（ＶＮＦ）、拠点のグループが記載される。
【０１９０】
ＳＦＣ中継テーブル２４６１−１−Ａには、サービスパスＩＤ、サービスインデックス、およびアウトプットが対応付けられて記載されている。
【０１９１】
ＳＦＣ中継テーブル２４６１−１−Ｂには、グループ、サブドメイン、パスＩＤ、および条件が対応付けられて記載されている。
【０１９２】
グループは、拠点のグループを示す。
サブドメインは、出力先の拠点を示す。
【０１９３】
パスＩＤはパケットの出力時に設定されるパケットのサービスパスＩＤの値を示す。パスＩＤは、パケットの出力先の拠点におけるサービスチェーンを識別する情報である。パスＩＤは、自拠点におけるサービスチェーンとパケットの出力先の拠点におけるサービスチェーンとの対応関係を示す。
【０１９４】
条件は、パケットの出力先の選択に用いられる条件である。条件には、例えば、パケットの出力先の負荷状態、回線状態、または端末性能等に基づく条件が記載される。例えば、ＳＦＣ中継テーブル２４６１−１−ＢのSub-domain＝Bに対応する条件には「負荷が５０％以下」が記載されている。これは、拠点Ｂのサーバの負荷が５０％以下の場合に、拠点Ｂが出力先として選択されることを示す。
【０１９５】
ＳＦＦ部２４２１−１は、パケットを受信すると、ＳＦＣ中継テーブル２４６１−１−Ａ、２４６１−１−Ｂを参照し、パケットに含まれるサービスパスＩＤとサービスインデックスに対応する出力先を検出し、検出した出力先にパケットを出力する。
【０１９６】
例えば、ＳＦＦ部２４２１−１がパケットを受信し、受信したパケットの含まれるサービスパスＩＤが１００、サービスインデックスが２５５である場合、ＳＦＣ中継テーブル２４６１−１−Ａを参照すると、サービスパスＩＤ＝１００且つサービスインデックス＝２５５に対応するアウトプットはＶＮＦ１−１である。よって、ＳＦＦ部２４２１−１は、受信したパケットをＶＮＦ１−１に出力する。
【０１９７】
また、ＳＦＦ部４２１−１がパケットを受信し、受信したパケットの含まれるサービスパスＩＤが１００、サービスインデックスが２４５である場合、ＳＦＣ中継テーブル４６１−１−Ａを参照すると、サービスパスＩＤ＝１００且つサービスインデックス＝２４５に対応するアウトプットはSub-domain Group 1である。次に、ＳＦＣマッパー部２４３１−１は、ＳＦＣ中継テーブル４６１−１−Ｂを参照し、グループ１に対応するエントリを検出し、当該エントリにおいて、条件に該当するする拠点（サブドメイン）を検出し、検出した拠点にパケットを出力する。例えば、ＳＦＣマッパー部２４３１−１は、拠点Ｂのサーバの負荷が５０％以下の場合に、パケットを拠点Ｂに出力する。このときＳＦＣマッパー部２４３１−１は、パケットのサービスインデックスをリセット、すなわちサービスインデックスを２５５に更新する。また、ＳＦＣマッパー部２４３１−１は、パケットのサービスパスＩＤを１００から２００に変更する。
【０１９８】
図２８は、第２の実施の形態に係るパケットの中継処理の変形例およびＶＮＦのサービスインデックスを示す図である。
【０１９９】
図２８は、拠点ＡのサービスチェーンにＶＮＦ１−２を追加した場合を示す。
サービスチェーンの変更前において、サービスチェーンは、拠点ＡのＶＮＦ１−１と拠点ＢのＶＮＦ２−１を含む。パケットは、ＶＮＦ１−１、ＶＮＦ２−１、またはＶＮＦ１−１、ＶＮＦ３−１の順に各ＶＮＦで処理が行われる。また、拠点ＡのＳＦＣ中継テーブルにおいて、ＶＮＦ１−１に対応するサービスインデックスは２５５であり、拠点ＢのＳＦＣ中継テーブルにおいて、ＶＮＦ２−１に対応するサービスインデックスは２５５であり、拠点ＣのＳＦＣ中継テーブルにおいて、ＶＮＦ３−１に対応するサービスインデックスは２５５である。
【０２００】
サービスチェーンの変更前において、拠点ＡのＳＦＣマッパー部は、ＶＮＦ１−１から出力されたパケットを条件に従って、拠点Ｂまたは拠点Ｃのいずれかに出力する。拠点ＡのＳＦＣマッパー部２４３１−１は、パケットを拠点Ｂに出力する場合に、パケットのサービスパスＩＤを２００に変更し、パケットのサービスインデックスを２５５に変更（リセット）する。拠点ＢのＳＦＦ部は、受信したパケットのサービスインデックスが２５５であるので、パケットをＶＮＦ２−１に転送する。拠点ＡのＳＦＣマッパー部２４３１−１は、パケットを拠点Ｃに出力する場合に、パケットのサービスパスＩＤを３００に変更し、パケットのサービスインデックスを２５５に変更（リセット）する。拠点ＣのＳＦＦ部は、受信したパケットのサービスインデックスが２５５であるので、パケットをＶＮＦ３−１に転送する。
【０２０１】
図２８に示すように、拠点ＡのサービスチェーンにＶＮＦ１−２を追加するとする。パケットは、ＶＮＦ１−１、ＶＮＦ１−２，ＶＮＦ２−１、またはＶＮＦ１−１、ＶＮＦ１−２，ＶＮＦ３−１の順に各ＶＮＦで処理が行われる。拠点Ａのサービスチェーンの変更後、拠点ＡのＳＦＣ中継テーブルにおいて、ＶＮＦ１−１に対応するサービスインデックスは２５５であり、ＶＮＦ１−２に対応するサービスインデックスは２５４となる。また、拠点ＢのＳＦＣ中継テーブルにおいて、ＶＮＦ２−１に対応するサービスインデックスは２５５であり、変更されていない。また、拠点ＣのＳＦＣ中継テーブルにおいて、ＶＮＦ３−１に対応するサービスインデックスは２５５であり、変更されていない。
【０２０２】
拠点ＡのＳＦＣマッパー部は、ＶＮＦ１−２から出力されたパケットを条件に従って、拠点Ｂまたは拠点Ｃのいずれかに出力する。拠点ＡのＳＦＣマッパー部は、ＶＮＦ１−２から出力されたパケットを拠点Ｂに出力する場合に、パケットのサービスパスＩＤを２００に変更し、パケットのサービスインデックスを２５５に変更（リセット）する。拠点ＢのＳＦＦ部４２２−２は、受信したパケットのサービスインデックスが２５５であるので、パケットをＶＮＦ２−１に転送する。拠点ＡのＳＦＣマッパー部は、ＶＮＦ１−２から出力されたパケットを拠点Ｃに出力する場合に、パケットのサービスパスＩＤを３００に変更し、パケットのサービスインデックスを２５５に変更（リセット）する。拠点ＣのＳＦＦ部４２２−２は、受信したパケットのサービスインデックスが２５５であるので、パケットをＶＮＦ２−１に転送する。
【０２０３】
このように、拠点Ａのサービスチェーンを変更しても、拠点Ｂおよび拠点ＣのＳＦＣ中継テーブルは変更されていない。第２の実施の形態に係るパケットの中継処理の変形例によれば、負荷状態、回線状態、または端末性能等の条件に応じて、パケットの出力先の拠点を選択できる。
【０２０４】
図２９は、情報処理装置（コンピュータ）の構成図である。
実施の形態の、ＳＤＮコントローラ２０１、３０１−ｉ、１３０１−ｉ、２３０１、サーバ４０１−ｉ、２４０１−ｉは、例えば、図２９に示すような情報処理装置（コンピュータ）１によって実現可能である。
【０２０５】
情報処理装置１は、ＣＰＵ２、メモリ３、入力装置４、出力装置５、記憶部６、記録媒体駆動部７、及びネットワーク接続装置８を備え、それらはバス９により互いに接続されている。
【０２０６】
ＣＰＵ２は、情報処理装置１全体を制御する中央処理装置である。ＣＰＵ２は、ＶＮＦ部４１１−ｉ−ｊ，２４１１−ｉ−ｊ、ＳＦＦ部４３１−ｉ，２４３１−ｉ、またはＳＦＣマッパー部４３１−ｉ，２４３１−ｉとして動作する。また、ＣＰＵ２は、リクエスト部２２１、設定部３２１−ｉ，１３２１−ｉ，２３２１、問合わせ部１３３１−ｉ、更新部１３４１−ｉ、または表示制御部１３５１−ｉとして動作する。
【０２０７】
メモリ３は、プログラム実行の際に、記憶部６（あるいは可搬記録媒体１０）に記憶されているプログラムあるいはデータを一時的に格納するRead Only Memory(ＲＯＭ)やRandom Access Memory(ＲＡＭ)等のメモリである。ＣＰＵ２は、メモリ３を利用してプログラムを実行することにより、上述した各種処理を実行する。
【０２０８】
この場合、可搬記録媒体１０等から読み出されたプログラムコード自体が実施の形態の機能を実現する。
【０２０９】
入力装置４は、ユーザ又はオペレータからの指示や情報の入力、情報処理装置１で用いられるデータの取得等に用いられる。入力装置４は、例えば、キーボード、マウス、タッチパネル、またはカメラ等である。
【０２１０】
出力装置５は、ユーザ又はオペレータへの問い合わせや処理結果を出力したり、ＣＰＵ２による制御により動作する装置である。出力装置５は、例えば、ディスプレイ、またはプリンタ等である。
【０２１１】
記憶部６は、例えば、磁気ディスク装置、光ディスク装置、テープ装置等である。情報処理装置１は、記憶部６に、上述のプログラムとデータを保存しておき、それらをメモリ３に読み出して使用することができる。メモリ３または記憶部６は、記憶部２３１，３３１−ｉ，４５１−ｉ，１３６１−ｉ，２３３１，２４５１−ｉに相当する。
【０２１２】
記録媒体駆動部７は、可搬記録媒体１０を駆動し、その記録内容にアクセスする。可搬記録媒体としては、メモリカード、フレキシブルディスク、Compact Disk Read Only Memory(ＣＤ−ＲＯＭ)、光ディスク、光磁気ディスク等、任意のコンピュータ読み取り可能な記録媒体が用いられる。ユーザは、この可搬記録媒体１０に上述のプログラムとデータを格納しておき、それらをメモリ３に読み出して使用することができる。
【０２１３】
ネットワーク接続装置８は、Local Area Network（ＬＡＮ）やWide Area Network（ＷＡＮ）等の任意の通信ネットワークに接続され、通信に伴うデータ変換を行う通信インターフェースである。ネットワーク接続装置８は、通信ネットワークを介して接続された装置へデータの送信または通信ネットワークを介して接続された装置からデータを受信する。ネットワーク接続装置８は、２１１，３１１−ｉ，通信部４４１−ｉ，１３１１−ｉ，２４４１−ｉに相当する。
【０２１４】
以上の実施の形態に関し、さらに以下の付記を開示する。
（付記１）
複数の拠点間に跨って構成されるサービスチェーンにおいて、前記複数の拠点のうち第１拠点でパケットを中継するコンピュータのためのパケット中継プログラムであって、
前記サービスチェーンに含まれる複数のサービス機能の組み合わせを示す識別情報と、サービス機能を適用する順番を示すインデックスと、送信先と、が対応付けられた中継情報に基づいて、前記パケットに含まれる識別情報と前記パケットに含まれるインデックスとに対応する送信先を特定し、
特定した前記送信先が前記複数の拠点のうち第２拠点である場合に、前記パケットに含まれるインデックスを所定値に変更し、
前記パケットに含まれる識別情報と前記所定値のインデックスとを含むパケットを、特定した前記送信先に送信する、
処理を前記コンピュータに実行させるパケット中継プログラム。
（付記２）
複数の拠点間に跨って構成されるサービスチェーンにおいて、前記複数の拠点のうち第１拠点でパケットを中継するコンピュータのためのパケット中継プログラムであって、
前記第１拠点において前記サービスチェーンに含まれる複数のサービス機能の組み合わせを示す識別情報と、サービス機能を適用する順番を示すインデックスと、送信先と、前記送信先における識別情報が対応付けられた中継情報に基づいて、前記パケットに含まれる識別情報と前記パケットに含まれるインデックスとに対応する送信先を特定し、
特定した前記送信先が前記複数の拠点のうち第２拠点である場合に、前記パケットに含まれるインデックスを所定値に変更し、前記パケットに含まれる識別情報を特定した前記送信先における識別情報に変更し、
特定した前記送信先における識別情報と前記所定値のインデックスとを含むパケットを、特定した前記送信先に送信する、
処理を前記コンピュータに実行させるパケット中継プログラム。
（付記３）
複数の拠点間に跨って構成されるサービスチェーンにおいて、前記複数の拠点のうち第１拠点でパケットを中継するコンピュータが実行するパケット中継方法であって、
前記サービスチェーンに含まれる複数のサービス機能の組み合わせを示す識別情報と、サービス機能を適用する順番を示すインデックスと、送信先と、が対応付けられた中継情報に基づいて、前記パケットに含まれる識別情報と前記パケットに含まれるインデックスとに対応する送信先を特定し、
特定した前記送信先が前記複数の拠点のうち第２拠点である場合に、前記パケットに含まれるインデックスを所定値に変更し、
前記パケットに含まれる識別情報と前記所定値のインデックスとを含むパケットを、特定した前記送信先に送信する、
処理を含むパケット中継方法。
（付記４）
複数の拠点間に跨って構成されるサービスチェーンにおいて、前記複数の拠点のうち第１拠点でパケットを中継するコンピュータが実行するパケット中継方法であって、
前記第１拠点において前記サービスチェーンに含まれる複数のサービス機能の組み合わせを示す識別情報と、サービス機能を適用する順番を示すインデックスと、送信先と、前記送信先における識別情報が対応付けられた中継情報に基づいて、前記パケットに含まれる識別情報と前記パケットに含まれるインデックスとに対応する送信先を特定し、
特定した前記送信先が前記複数の拠点のうち第２拠点である場合に、前記パケットに含まれるインデックスを所定値に変更し、前記パケットに含まれる識別情報を特定した前記送信先における識別情報に変更し、
特定した前記送信先における識別情報と前記所定値のインデックスとを含むパケットを、特定した前記送信先に送信する、
処理を含むパケット中継方法。
【符号の説明】
【０２１５】
１０１    システム
２０１    グローバルＳＤＮコントローラ
２１１    通信部
２２１    リクエスト部
２３１    記憶部
２４１    サービスチェーン定義情報
３０１    ローカルＳＤＮコントローラ
３１１    通信部
３２１    設定部
３３１    記憶部
３４１    サービスチェーン定義情報
４０１    サーバ
４１１    ＶＮＦ部
４３１    ＳＦＦ部
４３１    ＳＦＣマッパー部
４４１    通信部
４５１    記憶部
４６１    ＳＦＣ中継テーブル
２１０１    システム
２３０１    ＳＤＮコントローラ
２３１１    通信部
２３２１    設定部
２３３１    記憶部
２３４１    サービスチェーン定義情報
２４０１    サーバ
２４１１    ＶＮＦ部
２４３１    ＳＦＦ部
２４３１    ＳＦＣマッパー部
２４４１    通信部
２４５１    記憶部
２４６１    ＳＦＣ中継テーブル
【図１】
0006617594.tif 000002
【図２】
0006617594.tif 000003
【図３】
0006617594.tif 000004
【図４】
0006617594.tif 000005
【図５Ａ】
0006617594.tif 000006
【図５Ｂ】
0006617594.tif 000007
【図６】
0006617594.tif 000008
【図７】
0006617594.tif 000009
【図８】
0006617594.tif 000010
【図９】
0006617594.tif 000011
【図１０】
0006617594.tif 000012
【図１１】
0006617594.tif 000013
【図１２】
0006617594.tif 000014
【図１３】
0006617594.tif 000015
【図１４】
0006617594.tif 000016
【図１５】
0006617594.tif 000017
【図１６】
0006617594.tif 000018
【図１７】
0006617594.tif 000019
【図１８】
0006617594.tif 000020
【図１９Ａ】
0006617594.tif 000021
【図１９Ｂ】
0006617594.tif 000022
【図２０】
0006617594.tif 000023
【図２１】
0006617594.tif 000024
【図２２Ａ】
0006617594.tif 000025
【図２２Ｂ】
0006617594.tif 000026
【図２３】
0006617594.tif 000027
【図２４】
0006617594.tif 000028
【図２５】
0006617594.tif 000029
【図２６】
0006617594.tif 000030
【図２７】
0006617594.tif 000031
【図２８】
0006617594.tif 000032
【図２９】
0006617594.tif 000033