(58)【調査した分野】(Int.Cl.,DB名)
複数の装置を経由する一連の処理フローの識別情報と、前記処理フローの構成を示す構成情報と、前記処理フローに関する関連情報とを対応付けて記憶部に記憶させる記憶ステップと、
前記識別情報を有する前記処理フローの構成に変更が生じた場合に、該変更に伴って変更が生じる、前記処理フロー以外の他の処理フローを、前記関連情報を用いて検索する検索ステップと、
前記変更が、前記他の処理フローの更新を伴う構成変更である場合、前記検索ステップにおける検索後に、前記関連情報を用いて、前記記憶部内の前記構成情報または前記関連情報を更新する一方、前記変更が、前記他の処理フローの更新を伴わない構成変更である場合、前記検索ステップにおける検索後に、前記構成情報または前記関連情報を更新することなく更新処理を完了する更新ステップと
をコンピュータに実行させるためのパス検索プログラム。
【図面の簡単な説明】
【0020】
【
図1】
図1は、本実施例に係るSFCの概要を示す図である。
【
図2】
図2は、本実施例に係るSFCの構成例を示す図である。
【
図3】
図3は、本実施例に係るSFCの構成変更例を示す図である。
【
図4】
図4は、SFCの構成変更時に必要な作業を説明するための図である。
【
図5】
図5は、MPLSにおける従来のパス管理方法を示す図である。
【
図6】
図6は、従来のパス検索装置の問題点を説明するための図である。
【
図7】
図7は、SFC管理テーブルの管理方法を示す図である。
【
図8】
図8は、SFC管理テーブルの構成例を示す図である。
【
図9A】
図9Aは、SFC管理テーブルの第2の構成例を示す図である。
【
図9B】
図9Bは、SFCに変更が有った場合のSFC管理テーブルの第2の構成例を示す図である。
【
図10】
図10は、SFCに追加が有った場合のSFC管理テーブルの第2の構成例を示す図である。
【
図11】
図11は、SFCが削除された場合のSFC管理テーブルの第2の構成例を示す図である。
【
図12】
図12は、SFCが更新された場合のSFC管理テーブルの第2の構成例を示す図である。
【
図13B】
図13Bは、SFCに変更が有った場合のSFC管理テーブルの第3の構成例を示す図である。
【
図14A】
図14Aは、SFCに追加が有った場合のSFC管理テーブルの第3の構成例を示す図である。
【
図14B】
図14Bは、SFCに追加が有った場合のSFCの第3の構成例を示す図である。
【
図15A】
図15Aは、SFCに削除が有った場合のSFC管理テーブルの第3の構成例を示す図である。
【
図15B】
図15Bは、SFCに追加が有った場合のSFCの第4の構成例を示す図である。
【
図16A】
図16Aは、SFCが更新された場合のSFC管理テーブルの第3の構成例を示す図である。
【
図16B】
図16Bは、SFCが更新された場合のSFCの第3の構成例を示す図である。
【
図17B】
図17Bは、SFCに変更が有った場合のSFC管理テーブルの第4の構成例を示す図である。
【
図18】
図18は、SFCに追加が有った場合のSFC管理テーブルの第4の構成例を示す図である。
【
図19】
図19は、SFCに削除が有った場合のSFC管理テーブルの第4の構成例を示す図である。
【
図20】
図20は、SFCが更新された場合のSFC管理テーブルの第4の構成例を示す図である。
【
図21B】
図21Bは、SFCに変更が有った場合のSFC管理テーブルの第5の構成例を示す図である。
【
図22】
図22は、SFCに追加が有った場合のSFC管理テーブルの第5の構成例を示す図である。
【
図23】
図23は、SFCに削除が有った場合のSFC管理テーブルの第5の構成例を示す図である。
【
図24】
図24は、SFCに更新が有った場合のSFC管理テーブルの第5の構成例を示す図である。
【
図26】
図26は、SFCに追加が有った場合のSFC管理テーブルの第6の構成例を示す図である。
【
図27】
図27は、SFCに削除が有った場合のSFC管理テーブルの第6の構成例を示す図である。
【
図28】
図28は、SFCに更新が有った場合のSFC管理テーブルの第6の構成例の前半部分を示す図である。
【
図29】
図29は、SFCに更新が有った場合のSFC管理テーブルの第6の構成例の後半部分を示す図である。
【
図31】
図31は、SFCに追加が有った場合のSFC管理テーブルの第7の構成例を示す図である。
【
図32】
図32は、SFCに削除が有った場合のSFC管理テーブルの第7の構成例を示す図である。
【
図33】
図33は、SFCに更新が有った場合のSFC管理テーブルの第7の構成例を示す図である。
【
図34A】
図34Aは、複数のSFCが同一のSFCを構成情報に含む場合のSFC管理テーブルの第8の構成例を示す図である。
【
図34B】
図34Bは、複数のSFCが同一のSFCを構成情報に含む場合の問題点を説明するための図である。
【
図35A】
図35Aは、複数のSFCが同一のSFCを構成情報に含む場合の問題点を解決する方法の前半部分を説明するための図である。
【
図35B】
図35Bは、複数のSFCが同一のSFCを構成情報に含む場合の問題点を解決する方法の後半部分を説明するための図である。
【
図36】
図36は、本実施例に係るパス検索装置の構成を示す図である。
【
図37】
図37は、集中管理方式のモジュール構成を示す図である。
【
図38】
図38は、SFC管理テーブルを作成するための基となるデータを示す図である。
【
図39】
図39は、方式1における必須機能としての第1のSFC管理テーブルのデータ格納例を示す図である。
【
図40】
図40は、方式1におけるオプション機能としての第1のSFC管理テーブルのデータ格納例を示す図である。
【
図41】
図41は、方式1における必須機能としての第2のSFC管理テーブルのデータ格納例を示す図である。
【
図42】
図42は、方式1におけるオプション機能としての第2のSFC管理テーブルのデータ格納例を示す図である。
【
図43】
図43は、方式1における必須機能としての第3のSFC管理テーブルのデータ格納例を示す図である。
【
図44】
図44は、方式1における必須機能としての第4のSFC管理テーブルのデータ格納例を示す図である。
【
図45】
図45は、方式1における必須機能としての第5のSFC管理テーブルのデータ格納例を示す図である。
【
図46】
図46は、方式1における必須機能としての第6のSFC管理テーブルのデータ格納例を示す図である。
【
図47】
図47は、方式1における必須機能としての第7のSFC管理テーブルのデータ格納例を示す図である。
【
図48】
図48は、方式1における必須機能としての第8のSFC管理テーブルのデータ格納例を示す図である。
【
図49】
図49は、方式1におけるオプション機能としての第8のSFC管理テーブルのデータ格納例を示す図である。
【
図50】
図50は、方式1における必須機能としての第9のSFC管理テーブルのデータ格納例を示す図である。
【
図51】
図51は、方式1におけるオプション機能としての第9のSFC管理テーブルのデータ格納例を示す図である。
【
図52】
図52は、方式2における必須機能としての第1のSFC管理テーブルのデータ格納例を示す図である。
【
図53】
図53は、方式2におけるオプション機能としての第1のSFC管理テーブルのデータ格納例を示す図である。
【
図54】
図54は、方式2における必須機能としての第2のSFC管理テーブルのデータ格納例を示す図である。
【
図55】
図55は、方式2におけるオプション機能としての第2のSFC管理テーブルのデータ格納例を示す図である。
【
図56】
図56は、方式2における必須機能としての第3のSFC管理テーブルのデータ格納例を示す図である。
【
図57】
図57は、方式2における必須機能としての第4のSFC管理テーブルのデータ格納例を示す図である。
【
図58】
図58は、方式2におけるオプション機能としての第4のSFC管理テーブルのデータ格納例を示す図である。
【
図59】
図59は、方式2における必須機能としての第5のSFC管理テーブルのデータ格納例を示す図である。
【
図60】
図60は、方式2における必須機能としての第6のSFC管理テーブルのデータ格納例を示す図である。
【
図61】
図61は、方式2におけるオプション機能としての第6のSFC管理テーブルのデータ格納例を示す図である。
【
図62】
図62は、方式2における、同一SFC内で2つ以上の同じSFCを使用しない場合のSFC管理テーブルのデータ格納例を示す図である。
【
図63】
図63は、方式2における、同一SFC内で2つ以上の同じSFCを使用する場合のSFC管理テーブルのデータ格納例を示す図である。
【
図64】
図64は、方式2における、同一SFC内で2つ以上の同じSFCを使用する場合の問題点を解決したSFC管理テーブルのデータ格納例を示す図である。
【
図65】
図65は、方式3における必須機能としての第1のSFC管理テーブルのデータ格納例を示す図である。
【
図66】
図66は、方式3におけるオプション機能としての第1のSFC管理テーブルのデータ格納例を示す図である。
【
図67】
図67は、方式3における必須機能としての第2のSFC管理テーブルのデータ格納例を示す図である。
【
図68】
図68は、方式3におけるオプション機能としての第2のSFC管理テーブルのデータ格納例を示す図である。
【
図69】
図69は、方式3における必須機能としての第3のSFC管理テーブルのデータ格納例を示す図である。
【
図70】
図70は、方式3における必須機能としての第4のSFC管理テーブルのデータ格納例を示す図である。
【
図71】
図71は、方式3におけるオプション機能としての第4のSFC管理テーブルのデータ格納例を示す図である。
【
図72】
図72は、方式3における必須機能としての第5のSFC管理テーブルのデータ格納例を示す図である。
【
図73】
図73は、方式3におけるオプション機能としての第5のSFC管理テーブルのデータ格納例を示す図である。
【
図74A】
図74Aは、集中管理方式におけるSFCの状況を示すテーブルを示す図である。
【
図74B】
図74Bは、集中管理方式の方式1におけるSFC管理テーブルを示す図である。
【
図75A】
図75Aは、分散管理方式における方式4のA社のSFC管理テーブル(必須機能)を示す図である。
【
図75B】
図75Bは、分散管理方式における方式4のB社のSFC管理テーブル(必須機能)を示す図である。
【
図75C】
図75Cは、分散管理方式における方式4のC社のSFC管理テーブル(必須機能)を示す図である。
【
図76A】
図76Aは、分散管理方式における方式4のA社のSFC管理テーブル(オプション機能)を示す図である。
【
図76B】
図76Bは、分散管理方式における方式4のB社のSFC管理テーブル(オプション機能)を示す図である。
【
図76C】
図76Cは、分散管理方式における方式4のC社のSFC管理テーブル(オプション機能)を示す図である。
【
図77】
図77は、方式4における必須機能としての第1のSFC管理テーブルのデータ格納例の前半部分を示す図である。
【
図78】
図78は、方式4における必須機能としての第1のSFC管理テーブルのデータ格納例の後半部分を示す図である。
【
図79】
図79は、方式4におけるオプション機能としての第1のSFC管理テーブルのデータ格納例を示す図である。
【
図80】
図80は、方式4における必須機能としての第2のSFC管理テーブルのデータ格納例を示す図である。
【
図81】
図81は、集中管理テーブルのデータ格納例を示す図である。
【
図82】
図82は、方式4における必須機能としての第3のSFC管理テーブルのデータ格納例の前段部分を示す図である。
【
図83】
図83は、方式4における必須機能としての第3のSFC管理テーブルのデータ格納例の中段部分を示す図である。
【
図84】
図84は、方式4における必須機能としての第3のSFC管理テーブルのデータ格納例の後段部分を示す図である。
【
図85】
図85は、方式4における必須機能としての第4のSFC管理テーブルのデータ格納例の前段部分を示す図である。
【
図86】
図86は、方式4における必須機能としての第4のSFC管理テーブルのデータ格納例の中段部分を示す図である。
【
図87】
図87は、方式4における必須機能としての第4のSFC管理テーブルのデータ格納例の後段部分を示す図である。
【
図88】
図88は、方式4における必須機能としての第5のSFC管理テーブルのデータ格納例の前半部分を示す図である。
【
図89】
図89は、方式4における必須機能としての第5のSFC管理テーブルのデータ格納例の後半部分を示す図である。
【
図90】
図90は、方式4におけるオプション機能としての第5のSFC管理テーブルのデータ格納例を示す図である。
【
図91】
図91は、方式4における必須機能としての第6のSFC管理テーブルのデータ格納例を示す図である。
【
図92】
図92は、方式4におけるオプション機能としての第6のSFC管理テーブルのデータ格納例を示す図である。
【
図93】
図93は、集中管理方式にて説明したSFC管理テーブルの構成例を示す図である。
【
図94A】
図94Aは、分散管理方式における方式5のA社のSFC管理テーブル(必須機能)を示す図である。
【
図94B】
図94Bは、分散管理方式における方式5のB社のSFC管理テーブル(必須機能)を示す図である。
【
図94C】
図94Cは、分散管理方式における方式5のC社のSFC管理テーブル(必須機能)を示す図である。
【
図95A】
図95Aは、分散管理方式における方式5のA社のSFC管理テーブル(オプション機能)を示す図である。
【
図95B】
図95Bは、分散管理方式における方式5のB社のSFC管理テーブル(オプション機能)を示す図である。
【
図95C】
図95Cは、分散管理方式における方式5のC社のSFC管理テーブル(オプション機能)を示す図である。
【
図96】
図96は、方式5における必須機能としての第7のSFC管理テーブルのデータ格納例を示す図である。
【
図97】
図97は、方式5におけるオプション機能としての第7のSFC管理テーブルのデータ格納例を示す図である。
【
図98】
図98は、方式5における必須機能としての第8のSFC管理テーブルのデータ格納例を示す図である。
【
図99】
図99は、方式5における必須機能としての第9のSFC管理テーブルのデータ格納例の前半部分を示す図である。
【
図100】
図100は、方式5における必須機能としての第9のSFC管理テーブルのデータ格納例の後半部分を示す図である。
【
図101】
図101は、方式5におけるオプション機能としての第9のSFC管理テーブルのデータ格納例を示す図である。
【
図102】
図102は、方式5における必須機能としての第10のSFC管理テーブルのデータ格納例を示す図である。
【
図103】
図103は、方式5におけるオプション機能としての第10のSFC管理テーブルのデータ格納例を示す図である。
【
図104】
図104は、集中管理方式にて説明したSFC管理テーブルの第2の構成例を示す図である。
【
図105A】
図105Aは、分散管理方式における方式6のA社のSFC管理テーブル(必須機能)を示す図である。
【
図105B】
図105Bは、分散管理方式における方式6のB社のSFC管理テーブル(必須機能)を示す図である。
【
図105C】
図105Cは、分散管理方式における方式6のC社のSFC管理テーブル(必須機能)を示す図である。
【
図106A】
図106Aは、分散管理方式における方式6のA社のSFC管理テーブル(オプション機能)を示す図である。
【
図106B】
図106Bは、分散管理方式における方式6のB社のSFC管理テーブル(オプション機能)を示す図である。
【
図106C】
図106Cは、分散管理方式における方式6のC社のSFC管理テーブル(オプション機能)を示す図である。
【
図107】
図107は、方式6における必須機能としての第1のSFC管理テーブルのデータ格納例を示す図である。
【
図108】
図108は、方式6におけるオプション機能としての第1のSFC管理テーブルのデータ格納例を示す図である。
【
図109】
図109は、方式6における必須機能としての第2のSFC管理テーブルのデータ格納例を示す図である。
【
図110】
図110は、方式6における必須機能としての第3のSFC管理テーブルのデータ格納例を示す図である。
【
図111】
図111は、方式6におけるオプション機能としての第3のSFC管理テーブルのデータ格納例を示す図である。
【
図112】
図112は、方式6における必須機能としての第4のSFC管理テーブルのデータ格納例を示す図である。
【
図113】
図113は、方式6におけるオプション機能としての第4のSFC管理テーブルのデータ格納例を示す図である。
【
図114】
図114は、方式6における必須機能としての第5のSFC管理テーブルのデータ格納例を示す図である。
【
図115】
図115は、パス検索プログラムによる情報処理がコンピュータを用いて具体的に実現されることを示す図である。
【
図116】
図116は、従来のパス管理に使用するパス管理テーブルを示す図である。
【発明を実施するための形態】
【0021】
以下に、本願の開示するパス検索装置、パス検索方法、及びパス検索プログラムの実施例を、図面を参照しながら詳細に説明する。なお、以下の実施例により本願の開示するパス検索装置、パス検索方法、及びパス検索プログラムが限定されるものではない。
【0022】
図1は、本実施例に係るSFCの概要を示す図である。SFCは、ファイアウォールやDPI(Deep Packet Inspection)、NAT(Network Address Translation)等のネットワークサービスの機能(SF:Service Function)を実行する複数の装置にパケットを処理させる際、オペレータが指示した順番にパケットが各装置を通過するようにする技術である。
図1に示す様に、MPLS(Multi-Protocol Label Switching)が、到達パケットのラベルを参照して次の宛先を決めるのと同様に、各SF10は、パケットを処理した後、転送先のSF10を決定し、そのSF10に向けてパケットを送信する。SF10間では、トンネリング技術を用いてパケット転送が行われるため、IP(Internet Protocol)ルーチングの結果とは独立にパケット転送をすることが可能である。これにより、ネットワークトポロジの変更が起きた場合でも、ネットワーク管理者は、SF10間の経路情報を設定する必要がなくなる。なお、MPLSでは、SF10間におけるパケット転送は、LSR(Label Switch Router)20を経由してもよい。
【0023】
図2は、本実施例に係るSFCの構成例を示す図である。
図2に示す様に、SFCは、他業者のSFCと自社のSFとを組み合わせて構成することもできる。例えば、業者A(SFCa)がデータ受付機能と放送機能とを有する場合、業者B(SFCb)の字幕添付機能や業者Cの画像補正機能と組み合わせることにより、所望の放送サービスが提供される。
【0024】
図3は、本実施例に係るSFCの構成変更例を示す図である。
図3に示す様に、SFCの構成は各社毎に自由に変更可能である。変更の理由は、例えば、サービス品質の向上やコストの節減である。例えば、従前では業者C(SFCc)が提供していた画像補正サービスは、業者D(SFCd)による高精度画像補正サービスに変更される。
【0025】
図4は、SFCの構成変更時に必要な作業を説明するための図である。
図4に示す様に、SFCの構成変更前のb2は、変更後にb3により迂回される。これにより、転送経路C:A1=F:a1→C:B1→F:a2及び転送経路C:B1=F:b1→F:b2の変更が必要となる。その結果、パス検索装置が何れのSFCを変更するべきかを検索する方法が必要となる。
【0026】
図5は、MPLSにおける従来のパス管理方法を示す図である。従来のパス管理方法は、上記非特許文献1に記載の技術であるため、詳細な説明は省略するが、Path managementは、LSP(Label Switched Path)が通過するLSR(Label Switching Router)を列挙(例えば、A→C→E→G)することでパスを管理する。
【0027】
図6は、従来のパス検索装置の問題点を説明するための図である。従来のパス検索装置は、SFCの構成変更箇所を探すために、まず、構成対象のSFCを使用しているSFCを特定する。次に、パス検索装置は、変更の有ったSFの情報を探索し、新しいSFの情報に書き換える。例えば、
図6に示す様に、B:b1→C:C1という部分区間の内、C:C1をE:e1に変更する場合を想定する。この場合、全てのSFCに対して検索を掛けると、C:D1,C:A1,C:B1は何れも、B:B1を使用しているため、変更の対象となる。これに対し、C:F1はB:B1を使用していないため、変更の対象とならない。一方、C:G1については、B:B1を使用していないことから、本来は変更対象とはならないが、C:B1と構成が同一であるため、C:B1と同様に、誤って変更対象であるとみなされてしまう。
【0028】
そこで、本実施例に係る検索装置は、SFCを、SFとSFCとが混在する形で管理する。検索装置は、変更箇所を示すテーブルを、後述する所定のアルゴリズムに従って作成する。また、検索装置は、SFCの構成変更時に、アルゴリズムに従い、変更を要するSFCを検索すると共に、検索に使用するテーブルを更新する。
図7は、SFC管理テーブルの管理方法を示す図である。
図7に示す様に、SFC管理テーブルの管理方法には、集中管理型モデルと分散管理型モデルとの2種類が存在する。また、それぞれの管理型モデルについて、上述した3種類の方法(テーブル作成方法、検索方法、更新方法)が存在する。集中管理型モデルでは、1台のサーバである検索装置1が、SFC管理テーブル2に関する計算を全て行う。これに対して、分散管理型モデルでは、複数の検索装置1a〜1cが、パス検索システムを構成し、相互に情報を交換し合うことにより、SFC管理テーブル2a〜2cに関する計算を、各装置(サーバ)間で分散して行う。すなわち、集中管理とは、例えば、SFCを提供する全業者のSFCのパス管理テーブルを纏めたものが1つ存在する場合を意味する。また、分散管理とは、例えば、SFCを提供する業者毎に、自社のSFCのパス管理テーブルが業者の数だけ分散して存在する場合を意味する。
【0029】
図8は、SFC管理テーブルT1の構成例を示す図である。
図8に示す様に、SFC管理テーブルT1には、SFC(処理フロー)のID(例えば、A,B,C,D)と、SFCの構成情報(例えば、B→a1,b1→C→D)と、SFCの関連情報(例えば、A,B,C,C1,C2,D,D1,D2)とが、対応付けて格納される。パス検索装置は、SFCの構成に変更が生じた場合、併せて変更が生じる他のSFCを検索し、その検索結果を出力する。上記変更が、他のSFCの更新を伴う構成変更である場合、パス検索装置は、上記検索処理の後、SFC管理テーブルT1を更新する。上記変更が、他のSFCの更新を伴わない構成変更である(他のSFCの新規追加または自SFCの削除のみである)場合、パス検索装置は、上記検索処理のみを行い、SFC管理テーブルT1の更新は行わない。
【0030】
図9Aは、SFC管理テーブルT2の第2の構成例を示す図である。
図9Aに示す様に、SFC管理テーブルT2には、SFCの関連情報として、SFCの一部となるSFCの全IDが格納される。例えば、SFCのID“A”に対応する関連情報として、“A,B,C,C1,C2,D,D1,D2”が格納される。
図9Bは、SFCに変更が有った場合のSFC管理テーブルT2の第2の構成例を示す図である。
図9Bに示す様に、例えば、ID“C”を有するSFCに変更が有った場合、関連情報に“C”を含むエントリが、検索結果(構成変更の必要なSFCのエントリ)となる。
【0031】
図10は、SFCに追加が有った場合のSFC管理テーブルT2の第2の構成例を示す図である。
図10に示す様に、SFCに追加が有ると、テーブルエントリが追加され、関連情報が更新される。例えば、ID“F”を有するSFCが新規追加された場合、追加されたSFCを構成する全てのSFC(B,E)用のエントリの関連情報が、追加されたSFC用エントリの関連情報のフィールドにコピーされる。
【0032】
図11は、SFCが削除された場合のSFC管理テーブルT2の第2の構成例を示す図である。
図11に示す様に、SFCに削除が有ると、削除されるSFCのID“C”が関連情報として存在するエントリ(A,B)が検索される。そして、削除するSFC“C”用エントリの関連情報のフィールドに記憶されたSFC識別子(C,C1,C2)が、上記検索されたエントリ(A,B)の関連情報のフィールドから削除される。
【0033】
図12は、SFCが更新された場合のSFC管理テーブルT2の第2の構成例を示す図である。
図12に示す様に、SFCに更新を伴う構成変更が有ると、使用しなくなるSFC(C,D)と、新たに使用するSFC(E,F)とが抽出される。使用しなくなるSFC用エントリの関連情報として記憶されたSFC識別子(C,C1,C2)及び(D,D1,D2)は、更新するSFC用エントリの関連情報のフィールドから削除される。一方、新たに使用するSFC用エントリの関連情報として記憶されたSFC識別子(E,E1,E2)及び(F,F1,F2)は、更新するSFC用エントリの関連情報のフィールドに追記される。
【0034】
図13Aは、SFC管理テーブルT3の第3の構成例を示す図である。
図13Aに示す様に、SFC管理テーブルT3には、SFCの関連情報として、SFCをその一部とするSFCのIDが格納される。例えば、SFCのID“B”に対応する関連情報として“A”が、“C”に対応する関連情報として“A,B”が、“D”に対応する関連情報として“A,B”が、それぞれ格納される。
図13Bは、SFCに変更が有った場合のSFC管理テーブルT3の第3の構成例を示す図である。
図13Bに示す様に、例えば、ID“G”を有するSFCに変更が有った場合、SFCのID“G”をその一部とするSFCのIDとして、関連情報“A,B,C”が検索対象となる。
【0035】
図14Aは、SFCに追加が有った場合のSFC管理テーブルT3の第3の構成例を示す図である。
図14Bは、SFCに追加が有った場合のSFCの第3の構成例を示す図である。
図14A及び
図14Bに示す様に、SFCに追加が有ると、テーブルエントリが追加され、関連情報が更新される。例えば、ID“G”を有するSFCが新規追加された場合、追加されたSFCを構成するSFC(A)、並びに、該SFC(A)を構成するSFC(B)という様に、パス検索装置は、各SFCの構成情報を辿り、辿った各SFCの関連情報のフィールドに、追加したSFCのIDを記憶していく。
【0036】
削除の場合にも追加の場合と同様の処理が実行される。
図15Aは、SFCに削除が有った場合のSFC管理テーブルT3の第3の構成例を示す図である。
図15Bは、SFCに追加が有った場合のSFCの第4の構成例を示す図である。
図15A及び
図15Bに示す様に、SFCに削除が有ると、テーブルエントリが削除され、関連情報が更新される。例えば、ID“B”を有するSFCが削除された場合、削除されたSFCを構成するSFC(C,D)、並びに、該SFC(C,D)を構成するSFC(E,F,D1)という様に、パス検索装置は、各SFCの構成情報を辿る。そして、パス検索装置は、辿った各SFCの関連情報のフィールドから、削除したSFCのID(B)と、削除したSFCの関連情報のフィールドに記憶されたID(A)とを削除する。
【0037】
更新の場合にも削除及び追加の場合と同様の処理が実行される。
図16Aは、SFCが更新された場合のSFC管理テーブルT3の第3の構成例を示す図である。
図16Bは、SFCが更新された場合のSFCの第3の構成例を示す図である。
図16A及び
図16Bに示す様に、SFCに更新を伴う構成変更が有ると、使用しなくなるSFC(C,D)と、新たに使用するSFC(E,F)とが抽出される。例えば、ID“B”を有するSFCが更新された場合、使用しなくなるSFC(C,D)、並びに、該SFC(C,D)を構成するSFC(C1,C2,D1,D2)という様に、パス検索装置は、各SFCの構成情報を辿る。そして、パス検索装置は、辿った各SFCの関連情報のフィールドから、削除したSFCのID(B)と、削除したSFCの関連情報のフィールドに記憶されたID(A,X)とを削除する。同様に、使用するSFC(E,F)、並びに、該SFC(E,F)を構成するSFC(E1,E2,F1,F2)という様に、パス検索装置は、各SFCの構成情報を辿る。そして、パス検索装置は、辿った各SFCの関連情報のフィールドに、削除したSFCのID(B)と、削除したSFCの関連情報のフィールドに記憶されたID(A,X)とを追加する。
【0038】
すなわち、パス検索装置は、更新したSFC(B)とその関連情報であるSFC(A,X)とを、SFCID“C”,“D”のSFC用エントリの関連情報のフィールドから削除する。併せて、パス検索装置は、更新したSFC(B)とその関連情報であるSFC(A,X)とを、SFCID“E”,“F”のSFC用エントリの関連情報のフィールドに追加する。
【0039】
図17Aは、SFC管理テーブルT4の第4の構成例を示す図である。
図17Aに示す様に、SFC管理テーブルT4には、SFCの関連情報として、SFCを構成要素とするSFCのIDが格納される。例えば、SFCのID“B”に対応する関連情報として、“B”を構成情報に含む“A”が、SFCのID“C”に対応する関連情報として、“C”を構成情報に含む“B”が、それぞれ格納される。
図17Bは、SFCに変更が有った場合のSFC管理テーブルT4の第4の構成例を示す図である。
図17Bに示す様に、変更の有ったSFC(G)の関連情報のフィールドに記憶されたSFC(C)、並びに、該SFC(C)の関連情報のフィールドに記憶されたSFC(B)という様に、パス検索装置は、各SFCの関連情報を辿る。そして、パス検索装置は、辿っていった時に走査したSFC(C,B,A)を検索結果とする。
【0040】
図18は、SFCに追加が有った場合のSFC管理テーブルT4の第4の構成例を示す図である。
図18に示す様に、SFCに追加が有ると、テーブルエントリが追加され、関連情報が更新される。例えば、ID“G”を有するSFCが新規追加された場合、追加されたSFC(G)を構成するSFC(A)用のエントリにおける関連情報のフィールドに、追加したSFC(G)のIDが記憶される。
【0041】
削除の場合にも追加の場合と同様の処理が実行される。
図19は、SFCに削除が有った場合のSFC管理テーブルT4の第4の構成例を示す図である。
図19に示す様に、SFCに削除が有ると、テーブルエントリが削除され、関連情報が更新される。例えば、ID“C”を有するSFCが削除された場合、削除されたSFC(C)を構成するSFC(E,F)用のエントリにおける関連情報のフィールドから、削除したSFC(C)のIDが削除される。
【0042】
更新の場合にも削除及び追加の場合と同様の処理が実行される。
図20は、SFCが更新された場合のSFC管理テーブルT4の第4の構成例を示す図である。
図20に示す様に、SFCに更新を伴う構成変更が有ると、使用しなくなるSFC(C,D)と、新たに使用するSFC(E,F)とが抽出される。例えば、ID“B”を有するSFCが更新された場合、使用しなくなるSFC(C,D)を構成するSFC用のエントリ(C,D)における関連情報のフィールドから、構成変更を行ったSFC(B)が削除される。同様に、使用するSFC(E,F)を構成するSFC用のエントリ(E,F)における関連情報のフィールドに、構成変更を行ったSFC(B)が追加される。
【0043】
図21Aは、SFC管理テーブルT5の第5の構成例を示す図である。
図21Aに示す様に、SFC管理テーブルT5には、SFCの関連情報として、SFCの一部となるSFCの全IDが格納される。例えば、SFCのID“A”に対応する関連情報として、“A,B,C,C1,C2,D,D1,D2”が格納される。
図21Bは、SFCに変更が有った場合のSFC管理テーブルT5の第5の構成例を示す図である。
図21Bに示す様に、例えば、ID“C”を有するSFCに変更が有った場合、関連情報に“C”を含むエントリが、検索結果(構成変更の必要なSFCのエントリ)となる。
【0044】
図22は、SFCに追加が有った場合のSFC管理テーブルT5の第5の構成例を示す図である。
図22に示す様に、SFCに追加が有ると、テーブルエントリが追加され、関連情報が更新される。例えば、SFC(F)のエントリが追加されると(S1)、Fの構成要素B,Eを管理している検索機能はB,Eである(S2)ので、SFC(B)は検索機能Bに、SFC(E)は検索機能Eに存在することが判明する(S3)。従って、検索機能Fは、検索機能B,Eに対して、関連情報の送信を要求する(S4a,S4b)。検索機能B,Eは、SFC(B)の関連情報とSFC(E)の関連情報とを返信する(S5a,S5b)。S6では、検索機能Fは、S5で受け取った関連情報をF用エントリの関連情報のフィールドに記入する。
【0045】
図23は、SFCに削除が有った場合のSFC管理テーブルT5の第5の構成例を示す図である。
図23に示す様に、SFC(C)のエントリが削除されると(S11)、検索機能Cは、SFC(C)用エントリを削除し(S12)、関連情報のフィールドに削除対象(C)のIDを含むエントリから、SFC(C)用エントリの関連情報に記載のID(C,C1,C2)を削除する(S13)。S14a,S14b,S14cでは、検索機能A,B,Dの各々は、関連情報のフィールドにSFC“C”のIDを含むエントリを検索し、検索機能Cから通知されたID(C,C1,C2)を関連情報のフィールドから削除する。
【0046】
図24は、SFCに更新が有った場合のSFC管理テーブルT5の第5の構成例を示す図である。
図24に示す様に、SFC“B”を管理している検索機能が検索機能Bであることが判明すると(S21,S22)、SFC“B”の構成は、E→Fに変更される(S23)。検索機能Bは、SFC“B”の元の構成(C→D)と新しい構成(E→F)とを比較し、使用されなくなったSFC(C,D)と新たに使用されたSFC(E,F)とを抽出する(S24)。検索機能Bは、SFC(C,D,E,F)を管理している検索機能を、フロー検索用テーブルから特定すると(S25,S26)、関連情報のフィールドに記載のIDを、各検索機能C〜Fから取得する(S27,S28)。そして、検索機能Bは、他の検索機能から送信された情報を基に、使用されなくなったSFCに関する関連情報を削除し、新たに使用するSFCに関する関連情報を追加する(S29)。
【0047】
図25Aは、SFC管理テーブルT6の第6の構成例を示す図である。
図25Aに示す様に、SFC管理テーブルT6には、検索機能B〜Eの関連情報として、それぞれ“A”,“A,B”,“A,B”,“A,B,C”が記憶されている。
図25Bは、SFC管理テーブルT6の第6の検索方法を示す図である。
図25Bに示す様に、SFC“E”の情報を管理している検索機能Eが特定されると(S31,S32)、パス検索装置の受付機能は、SFC“E”の変更に伴って変更が必要なSFCの通知を検索機能Eに求める(S33)。検索機能Eは、関連情報のフィールドに記載のSFC(A,B,C)を検索結果として、出力機能に出力する(S34,S35)。
【0048】
図26は、SFCに追加が有った場合のSFC管理テーブルT6の第6の構成例を示す図である。
図26に示す様に、パス検索装置の検索機能EにSFC(E)用エントリが追加されると(S41)、検索機能Eは、構成情報フィールドに記載のあるSFCを検索し(S42)、該構成情報フィールドに記載のあるSFC(A)のテーブルを解決する(S43)。S44では、検索機能Eは、検索機能Aに対し、SFC(A)の関連情報フィールドにSFC(E)のIDを追加する様に指示する。検索機能Aは、SFC(A)の関連情報フィールドにSFC(E)のIDを追加した後(S45)、上記S42と同様の処理を実行し(S46)、構成情報フィールドに記載のあるSFC(B)のテーブルを解決する(S47)。S48では、検索機能Aは、検索機能Bに対し、SFC(B)の関連情報フィールドにSFC(E)のIDを追加する様に指示する。検索機能Bは、SFC(B)の関連情報フィールドにSFC(E)のIDを追加した後(S49)、上記S42と同様の処理を実行し(S50)、構成情報フィールドに記載のあるSFC(C,D)のテーブルを解決する(S51)。S52a,S52bでは、検索機能Bは、検索機能C,Dに対し、SFC(C,C1,C2,D)の関連情報フィールドにSFC(E)のIDを追加する様に指示する。以降、パス検索装置は、上述したS42〜S46の一連の動作を、対象エントリが示すSFCの構成SFCが存在する限り繰り返す。
【0049】
図27は、SFCに削除が有った場合のSFC管理テーブルT6の第6の構成例を示す図である。
図27に示す様に、パス検索装置の受付機能は、削除対象のSFC(A)のテーブルを解決し(S61)、SFC(A)用エントリの削除を検索機能Aに指示する(S62)。検索機能Aは、構成情報のフィールドに記載されたSFC(B)を抽出し(S63)、SFC(A)用のエントリを削除する(S64)。検索機能Aは、対象のSFC(B)のテーブルを解決し(S65)、検索機能Bに対し、抽出されたSFC(B)の関連情報フィールドから削除対象のSFC(A)のIDと、SFC(A)用エントリの関連情報フィールドに記載のID(E,F)とを、削除する様に指示する(S66)。検索機能Bは、通知されたID(A,E,F)を削除し(S67)、上述したS63と同様の処理を実行する(S68)。S69では、検索機能Bは、SFC(C,D)に関し、上記S65と同様の処理を実行する。S70a,S70bでは、検索機能Bは、検索機能C,Dに対し、削除対象のSFC(A)のIDと、SFC(A)用エントリの関連情報フィールドに記載のID(E,F)とを、削除する様に指示する。以降、パス検索装置は、上述したS63、S65〜S67の一連の動作を、処理中のエントリの構成情報フィールドが空でない限り繰り返す。
【0050】
図28は、SFCに更新が有った場合のSFC管理テーブルT6の第6の構成例の前半部分を示す図である。
図28に示す様に、パス検索装置の受付機能は、更新対象のSFC(A)のテーブルを解決し(S71)、SFC(A)用エントリの変更を検索機能Aに指示する(S72)。検索機能Aは、構成情報のフィールドに記載された従前のSFC(C,D)と、新たな構成情報(E→F)とを比較し、使用されなくなったSFC(C,D)と、新たに使用されるSFC(E,F)とを抽出し(S73)、SFC(A)用のエントリを削除する(S74)。検索機能Aは、対象のSFC(C,D,E,F)のテーブルを解決し(S75)、検索機能C,Dに対し、抽出されたSFC(C,D)の関連情報フィールドから削除対象のSFC(A)のIDと、SFC(A)用エントリの関連情報フィールドに記載のID(X,Y)とを、削除する様に指示する(S76a,S76b)。更に、検索機能Aは、検索機能E,Fに対し、抽出されたSFC(E,F)の関連情報フィールドから更新対象のSFC(A)のIDと、SFC(A)用エントリの関連情報フィールドに記載のID(X,Y)とを、追加する様に指示する(S76c,S76d)。検索機能Cは、通知されたID(A,X,Y)を削除した後(S77a)、構成情報フィールドに記載のSFC(該当無し)を抽出する(S78a)。同様に、検索機能Dは、通知されたID(A,X,Y)を削除した後(S77b)、構成情報フィールドに記載のSFC(G,H)を抽出する(S78b)。検索機能Dは、対象のSFC(G,H)のテーブルを解決し(S79)、検索機能H,Gに対しても、上記S76a〜S76dと同様の処理を実行する(S80a,S80b)。以降、パス検索装置は、上述したS74、S76a〜S79の一連の動作を、対象エントリの構成情報フィールドが空でない限り繰り返す。
【0051】
図29は、SFCに更新が有った場合のSFC管理テーブルT6の第6の構成例の後半部分を示す図である。
図29に示す様に、検索機能Aは、検索機能E,Fに対し、抽出されたSFC(E,F)の関連情報フィールドに、更新対象のSFC(A)のIDと、SFC(A)用エントリの関連情報フィールドに記載のID(X,Y)とを、追加する様に指示する(S81a,S81b)。検索機能Eは、通知されたID(A,X,Y)を追加した後(S82a)、構成情報フィールドに記載のSFC(該当無し)を抽出する(S83a)。同様に、検索機能Fは、通知されたID(A,X,Y)を追加した後(S82b)、構成情報フィールドに記載のSFC(I,J)を抽出する(S83b)。検索機能Fは、上記S79と同様に、対象のSFC(I,J)のテーブルを解決し(S84)、検索機能I,Jに対しても、上記S81と同様の処理を実行する(S85a,S85b)。以降、パス検索装置は、上述したS74、S81a〜S84の一連の動作を、対象エントリの構成情報フィールドが空でない限り繰り返す。
【0052】
図30Aは、SFC管理テーブルT7の第7の構成例を示す図である。
図30Aに示す様に、SFC管理テーブルT7には、検索機能B,C,D,Gの関連情報として、それぞれ“A”,“B”,“B”,“C”が記憶されている。
図30Bは、SFC管理テーブルT7の第7の検索方法を示す図である。
図30Bに示す様に、SFC“G”に変更が有ると、パス検索装置の受付機能は、対象SFC(G)用のテーブルを解決し(S91)、検索機能Aに対し、SFC(G)用テーブルの検索を指示する(S92)。検索機能Aは、出力機能に対し、関連情報のフィールドに記載されたCを通知し(S93)、SFC(C)を管理する関連情報のフィールドを通知する(S94)。検索機能Cは、上記S93と同様の処理を出力機能に実行する(S95)と共に、上記S94と同様の処理を検索機能Bに実行する(S96)。同様に、検索機能Bは、上記S93と同様の処理を出力機能に実行する(S97)と共に、上記S94と同様の処理を検索機能Aに実行する(S98)。上記S93,S94と同様の処理は、関連情報のフィールドの無いエントリに遭遇するまで、繰り返し実行される。
【0053】
図31は、SFCに追加が有った場合のSFC管理テーブルT7の第7の構成例を示す図である。
図31に示す様に、パス検索装置の検索機能AにSFC A(B→C)が追加されると、検索機能Aは、追加するSFCの構成情報であるSFC(B,C)を抽出し(S101)、SFC(B,C)のテーブルを解決する(S102)。S103a,S103bでは、検索機能Aは、検索機能B,Cに対し、関連情報フィールドに、追加したSFCのID(A)を記載する様に指示する。検索機能B,Cは、対応する関連情報フィールドに、指示されたID(A)を追記する(S104a,S104b)。
【0054】
図32は、SFCに削除が有った場合のSFC管理テーブルT7の第7の構成例を示す図である。
図32に示す様に、SFC(A)が削除されると、パス検索装置の受付機能は、削除対象SFC(A)のテーブルを解決し(S111)、検索機能Aに対し、SFC(A)用エントリの削除を指示する(S112)。検索機能Aは、上記指示に従い、削除するSFCの構成情報であるSFC(B,C)を抽出し(S113)、抽出されたSFC(B,C)のテーブルを解決する(S114)。S115a,S115bでは、検索機能Aは、検索機能B,Cに対し、関連情報フィールドから、削除したSFCのID(A)を削除する様に指示する。検索機能B,Cは、対応する関連情報フィールドから、指示されたID(A)を削除する(S116a,S116b)。
【0055】
図33は、SFCに更新が有った場合のSFC管理テーブルT7の第7の構成例を示す図である。
図33に示す様に、SFC A(B→C)がD→Eに更新されると、パス検索装置の受付機能は、更新対象SFC(A)のテーブルを解決し(S121)、検索機能Aに対し、SFC(A)用エントリの更新を指示する(S122)。検索機能Aは、上記指示に従い、更新する構成情報のフィールドに記載のSFC(B→C)と新たな構成情報であるD→Eとを比較し、使用されなくなったSFC(B,C)と、新たに使用されるSFC(D,E)とを抽出する(S123)。検索機能Aは、抽出されたSFC(B,C,D,E)のテーブルを解決する(S124)。検索機能Aは、検索機能B,Cに対し、関連情報フィールドから、更新したSFCのID(A)を削除する様に指示する(S125a,S125b)。検索機能B,Cは、対応する関連情報フィールドから、指示されたID(A)を削除する(S126a,S126b)。同様に、検索機能Aは、検索機能D,Eに対し、関連情報フィールドに、更新したSFCのID(A)を追加する様に指示する(S125c,S125d)。検索機能D,Eは、対応する関連情報フィールドに、指示されたID(A)を追記する(S126c,S126d)。
【0056】
しかしながら、上述の構成では、複数のSFCが同一のSFCを構成情報に含む場合、以下の様な問題が懸念される。
図34Aは、複数のSFCが同一のSFCを構成情報に含む場合のSFC管理テーブルT8の第8の構成例を示す図である。
図34Aに示す様に、SFC管理テーブルT8では、SFC“C”とSFC“B”とにおいて、同一のSFC“A”が使用されている。
図34Bは、複数のSFCが同一のSFCを構成情報に含む場合の問題点を説明するための図である。
図34Bに示す様に、C(C:C)からB(C:B)が削除された場合、Bを介してCの構成要素となっているAの関連情報からも、CのIDが削除される。その結果、CがAを構成要素としているにも拘らず、パス検索装置は、Aに変更があった場合に、Cが変更対象であることを検知できないことが懸念される。
【0057】
図35Aは、複数のSFCが同一のSFCを構成情報に含む場合の問題点を解決する方法の前半部分を説明するための図である。
図35Aに示す様に、SFC管理テーブルT9は、関連情報のフィールドに記載するSFCのIDにカウンタ(例えば、C(1),C(2),B(1))を有する。パス検索装置の更新機能は、関連情報のフィールドにIDが追記される度に上記カウンタを増加させる。
図35Bは、複数のSFCが同一のSFCを構成情報に含む場合の問題点を解決する方法の後半部分を説明するための図である。
図35Bに示す様に、パス検索装置の更新機能は、関連情報のフィールドからIDを削除する時、該IDに対応するカウンタを1ずつ減少させる(例えば、C(2→1))。そして、パス検索装置の更新機能は、カウンタの値が0になったID(例えば、C(1→0))を、関連情報のフィールドから削除する。
【0058】
以下、図面を参照しながら、本実施例に係るパス検索装置について、より詳細に説明する。
図36は、本実施例に係るパス検索装置10の構成を示す図である。パス検索装置10は、切替え対象のパスを検索するため、
図36に示す様に、SFC管理テーブル11と検索部12と更新部13と入出力部14と通信部15とを有する。これら各構成部分は、一方向又は双方向に、信号やデータの入出力が可能な様に接続されている。なお、通信部15は、分散管理方式にて使用し、集中管理方式では使用されない。
【0059】
SFC管理テーブル11は、通信ネットワーク内のSFC情報を管理するためのテーブルであり、SFCのID、SFCの構成要素(例えば、経由するSFやSFCのパス)を記憶する。検索部12は、SFCの定義、変更、削除、追加等が行われた時、これらのイベントに関連して変更すべきSFCの構成要素(例えば、経由するSFやSFCのパス)を検索する。更新部13は、SFCの定義、変更、削除、追加等のイベントに応じて、SFC管理テーブル11を編集する。例えば、更新部13は、特定のSFCが変更された際、関連するSFCを連動させて、自動的にSFC管理テーブル11を更新する。入出力部14は、様々なネットワークサービスを提供するため、SFCの定義の入力、あるいは、SFCの変更や削除の指示を行う。また、入出力部14は、各ネットワークサービスが使用しているSFC、SF、及びこれらのパスを出力する。
【0060】
通信部15は、分散管理方式において、新しいSFCの定義、変更、削除、追加等が行われた時、これらのイベントに関連して変更すべきSFCの構成要素の検索、編集を行うために必要な情報を、SFC管理テーブル11間で送受信する。
【0061】
まず、集中管理方式のモジュール構成を説明する。集中管理方式は、対象とするネットワークに対してSFC情報を一括管理するSFC管理テーブルを1つ用意する方式であり、例えば、対象とするネットワーク内の全ての業者のSFC情報を一括管理する場合が想定される。
【0062】
図37は、集中管理方式のモジュール構成を示す図である。
図37に示す様に、パス検索装置10は、フローを管理するSFC管理テーブル11と、SFC管理テーブル11の検索機能を有する検索部12と、SFC管理テーブル11の編集機能を有する更新部13と、SFC管理テーブル11に対する入出力部14とを有する。検索部12は、例えば、チェインの構成変更を行った時に編集が必要となるアイテムを検索する。更新部13は、例えば、チェインの構成変更を行った時に編集が必要となるアイテムを編集する。入出力部14は、例えば、チェインの構成変更を行った時に、SFCの追加や機能チェインの構成変更等を入出力する。
【0063】
集中管理方式では、SFC管理テーブル11は、SFCのIDと、SFCを構成しているSFのパスを記載する機能チェインと、SFC構成情報とを有する。SFC構成情報の記載方法として、次の3つの方式がある。方式1は、該当SFCを構成している自社及び他社のSFCを記載する方法である。方式2は、該当SFCを利用している自社及び他社のSFC全てを記載する方法である。方式3は、該当SFCを直接利用している自社及び他社のSFCのみを記載する方法である。以下、これら3つの方式について、SFC管理テーブル11の作成方法、既存SFC変更時の処理、既存SFC削除時の処理、及び新規SFC追加時の処理を説明する。
【0064】
(方式1のSFC管理テーブル11)
方式1に基づくSFC管理テーブル11の構成方法を説明する。
図38は、SFC管理テーブル11を作成するための基となるデータM1を示す図である。
図38に示す様に、SFC管理テーブル11には、SFC毎に、SFCを構成しているSFのパス(SF機能チェイン)と、SFCを構成しているSFと、自社及び他社のSFC情報(SFC構成)とが記載されている。例えば、SFC:B1は、SF機能チェインより、“SF:b1→SF:a1→SF:a2”のSFのパスにより構成されていることが分かり、SFC構成より、“B社のb1とA社のSFC:A1”を利用していることが分かる。
【0065】
パス検索装置10は、
図38に示した基データM1を用いて、SFC管理テーブル11を作成する。
図39は、方式1における必須機能としての第1のSFC管理テーブル111aのデータ格納例を示す図である。
図40は、方式1におけるオプション機能としての第1のSFC管理テーブル111bのデータ格納例を示す図である。
図39の必須機能は、SFC名、機能チェイン、及びSFC構成情報により構成される。SFC名には、SFCを特定するためのIDが記載され、機能チェインには、SFCの構成要素(SFCが提供するサービスを実現するためのパス)がSFとSFCとを用いて表記されている。SFC構成情報には、組み合わせて使用される自社及び他社のSFCのIDが記載される。
【0066】
例えば、SFC:IDがSFC:A1であるSFCに着目すると、SF機能チェインがSF:a1→SF:a2であることから、該当SFCがa1,a2のSFを経由することが分かる。また、SFC構成情報が空欄であることから、他のSFCを利用していないことが分かる。一方、SFC:IDがSFC:B1であるSFCに着目すると、機能チェインがSF:b1→SFC:A1であることから、該当SFCがb1のSFとA1のSFCとを経由することが分かる。また、SFC構成情報がSFC:A1であることから、他のSFC:A1を利用していることが分かる。また、SFC:IDがSFC:C1であるSFCに着目すると、機能チェインがSF:c1→SFC:B1であることから、該当SFCがc1のSFとB1のSFCとを経由することが分かる。また、SFC構成情報がSFC:A1、SFC:B1であることから、他のSFC:A1、SFC:B1を利用していることが分かる。SFC:C1の場合、機能チェインだけではSFC:A1を使用していることは分からないが、構成情報を参照することで容易に判断可能である。この様に、パス検索装置10は、SFC構成情報を参照することで、他のSFCの利用の有無と利用しているSFC:IDとを知ることができる。また、パス検索装置10は、SFC構成情報を用いることで、SFCの構成に変更があった場合に、連動させて変更すべき変更対象のSFC(SFC:ID)を正しく抽出することができる。なお、
図40のオプション機能は、
図39の機能チェインをSFのみにより表記したものである。
【0067】
(方式1の既存SFCの変更)
次に、SFC構成を変更した時の処理を説明する。SFCの構成要素はSF及びSFCであるので、SFを変更した場合、及びSFCを変更した場合の2ケースについて説明する。
【0068】
まず、SFC構成要素のSFを変更した場合について、SFC管理テーブル11を用いて説明する。
図41は、方式1における必須機能としての第2のSFC管理テーブル111cのデータ格納例を示す図である。本実施例では、A社がSFC:A1の構成をSF:a1→SF:a2からSF:a1→SF:a6に変更した場合の処理を説明する。SFC:A1の構成変更(SF:a1→SF:a2からSF:a1→SF:a6)が行われると、パス検索装置10の更新部13は、SFC管理テーブル111cのSFC:A1の機能チェインをSF:a1→SF:a6に変更する(V1)。次に、更新部13は、SFC構成情報のフィールドをサーチし、SFC:A1を構成情報として有するSFC:IDを抽出する(V2a,V2b、
図41ではSFC:B1,SFC:C1)。次に、更新部13は、抽出されたSFC:IDを変更対象SFC(SFC:A1の構成変更に連動させて変更すべき変更対象SFC)とする(V3a,V3b)。
【0069】
なお、
図42は、方式1におけるオプション機能としての第2のSFC管理テーブル111dのデータ格納例を示す図である。
図42に示す様に、更新部13は、オプションを使用する場合には、V3a,V3bにおいて特定されたSFC:IDの機能チェイン情報を書き換える。
【0070】
次に、SFC構成要素のSFCを変更した場合について、SFC管理テーブル11を用いて説明する。SFCを変更した場合についても、SFを変更した場合と同様の方法により、変更対象のSFCを抽出することができる。本実施例では、B社がSFC:B1の構成をSF:b1→SFC:A1からSF:b1→SFC:A2に変更した場合の処理を説明する。
【0071】
まず、
図43を参照し、変更に伴う削除処理を説明する。
図43は、方式1における必須機能としての第3のSFC管理テーブル111eのデータ格納例を示す図である。
図43に示す様に、SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)が行われると、更新部13は、SFC管理テーブル111eのSFC:B1の機能チェインをSF:b1→SFC:A2に変更する(V11)。V12では、更新部13は、変更したSFCのSFC:ID(SFC:B1)を抽出する。V13では、検索部12は、変更対象(変更前のSFC)であるSFC:A1をSFC:IDから検索する。V14では、更新部13は、検索したSFC:ID(SFC:A1)のSFC構成情報(SFC:A1,SFC:C2)を抽出する。V15では、検索部12は、SFC構成情報のフィールドにV12で抽出したSFC:ID(SFC:B1)を有するSFC:ID(SFC:B1,SFC:C1)を検索する。V16a,V16bでは、更新部13は、SFC:IDを基にSFC:B1,SFC:C1を特定する。V17a,V17bでは、更新部13は、特定したSFC:B1,SFC:C1のSFC構成情報フィールドに記載してあるV14で抽出されたSFC構成情報(SFC:A1,SFC:C2)を削除する。
【0072】
続いて、
図44を参照し、変更に伴う追加処理を説明する。
図44は、方式1における必須機能としての第4のSFC管理テーブル111fのデータ格納例を示す図である。
図44に示す様に、検索部12は、
図43のV11,V12に示した処理と同様の処理(V21,V22)の実行後、変更対象(変更後のSFC)であるSFC:A2をSFC:IDから検索する(V23)。V24では、更新部13は、検索したSFC:ID(SFC:A2)のSFC構成情報(SFC:A2,SFC:D1)を抽出する。V25では、検索部12は、SFC構成情報のフィールドにV21で抽出したSFC:ID(SFC:B1)を有するSFC:ID(SFC:B1,SFC:C1)を検索する。V26a,V26bでは、更新部13は、SFC:IDからSFC:B1,SFC:C1を特定する。V27a,V27bでは、更新部13は、特定したSFC:B1,SFC:C1のSFC構成情報のフィールドに、V24で抽出したSFC構成情報(SFC:A2,SFC:D1)を追加する。
【0073】
(方式1の特殊な場合のオプション機能について)
ここで、方式1において、同一SFC内で2つ以上の同じSFCを使用した場合に生じる問題とその解決を図る方式を説明する。同一SFC内で2つ以上の同じSFCを使用することはサービスファンクションチェイニングのように一般に禁じられる場合が多いと想定される。禁止されている場合には、同じSFCを使用しているか否かを前処理としてチェックを行うことで対処する方式が採られる。禁止されていない場合は、特殊と考えられるため、本実施例ではオプションとする。
【0074】
まず、
図45、
図46を参照し、同一SFC内において2つ以上の同じSFCを使用する場合の問題を説明する。
図45は、方式1における必須機能としての第5のSFC管理テーブル111gのデータ格納例を示す図である。
図46は、方式1における必須機能としての第6のSFC管理テーブル111hのデータ格納例を示す図である。
図43、
図44と
図45、
図46との相違点は、SFC:C1の機能チェインが、
図43、
図44では“SF:c1→SFC:B1”であるのに対し、
図45、
図46では“SFC:A1→SFC:B1”であるという点である。
【0075】
図45、
図46のSFC:C1の機能チェインを参照すると、SFC:A1→SFC:B1であり、一方、SFC:B1はSF:b1→SFC:A1であるので、SFC:C1は、“SFC:A1→SF:b1→SFC:A1”という機能チェインになる。この機能チェインは、SFC:C1内において、同じSFC:A1を2回使用している。
【0076】
図45、
図46においても、
図43、
図44の場合と同じ変更を行った場合、すなわち、SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)を行った場合を想定する。
【0077】
図45を参照し、変更に伴う削除処理を説明する。SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)が行われると、更新部13は、SFC管理テーブル111gのSFC:B1の機能チェインをSF:b1→SFC:A2に変更する(V31)。V32では、更新部13は、変更したSFCのSFC:ID(SFC:B1)を抽出する。V33では、検索部12は、変更対象(変更前のSFC)であるSFC:A1をSFC:IDから検索する。V34では、更新部13は、検索したSFC:ID(SFC:A1)のSFC構成情報(SFC:A1,SFC:C2)を抽出する。V35では、検索部12は、SFC構成情報のフィールドにV32で抽出したSFC:ID(SFC:B1)を有するSFC:ID(SFC:B1,SFC:C1)を検索する。V36a,V36bでは、更新部13は、SFC:IDからSFC:B1,SFC:C1を特定する。V37a,V37bでは、更新部13は、特定したSFC:B1,SFC:C1のSFC構成情報のフィールドに記載されたV34で抽出したSFC構成情報(SFC:A1,SFC:C2)を削除する。
【0078】
図46を参照し、変更に伴う追加処理を説明する。更新部13が、
図45に示したV31,V32の処理と同様の処理(V41,V42)を実行した後、検索部12は、変更対象(変更後のSFC)であるSFC:A2をSFC:IDから検索する(V43)。V44では、更新部13は、検索したSFC:ID(SFC:A2)のSFC構成情報(SFC:A2,SFC:D1)を抽出する。V45では、検索部12は、SFC構成情報のフィールドにV42で抽出したSFC:ID(SFC:B1)を有するSFC:ID(SFC:B1,SFC:C1)を検索する。V46a,V46bでは、更新部13は、SFC:IDからSFC:B1,SFC:C1を特定する。V47a,V47bでは、更新部13は、特定したSFC:B1,SFC:C1のSFC構成情報のフィールドに、V44で抽出したSFC構成情報(SFC:A2,SFC:D1)を追加する。
【0079】
しかしながら、上述のSFC管理テーブル111hは正しくない。なぜなら、SFC管理テーブル111hでは、SFC:C1のSFC構成情報からSFC:A1は既に削除されており、このことは、SFC:C1がSFC:A1を使用していないことを意味している。しかしながら、一方では、SFC:C1の機能チェインにはSFC:A1が記載されており、SFC:C1は、SFC:A1を使用している。従って、SFC:C1の機能チェインとSFC構成情報とは矛盾している。
【0080】
ここで、SFC:C1の機能チェインを見ると、SFC:C1は、SFC:A1とSFC:B1との2つのSFCを介して、SFC:A1を利用していることが分かる。SFC:C1のSFC構成情報には、SFC:A1が記載されている。その内訳は、SFC:A1を介して使用される場合とSFC:B1を介して使用される場合とで、2回使用されているが、区別することはできない(縮退している)。パス検索装置10の更新部13は、SFC:B1の構成変更に伴って、SFC:C1のSFC構成情報から、SFC:B1を介して使用されるSFC:A1を削除しなければならないが、SFC:A1を介して直接使用されるSFC:A1は削除してはならない。しかしながら、2回使用されているSFC:A1は区別できないために削除され、その結果、SFC:A1を介して利用しているという情報が欠落してしまい、矛盾が生じた。誤って削除した理由は、SFC:C1においてSFC:A1が2回使用されているという情報が、SFC:C1のSFC構成情報に記載されていないためである。
【0081】
次に、上述した問題点の解決方法を説明する。
図47は、方式1における必須機能としての第7のSFC管理テーブル111iのデータ格納例を示す図である。同一SFC内で2つ以上の同じSFCを使用した場合に生じる上記問題点を解決するには、
図47に示す様に、SFC管理テーブル111iが、SFCを使用している回数をカウンタとして用意し、更新部13が、SFC構成情報のSFCにカウンタ値を設定すればよい。本実施例では、SFC:C1のSFC構成情報においては、SFC:A1とSFC:B1との2つのSFCを介して、SFC:A1が利用されているため、カウンタ値は“2”となる。SFC管理テーブル111iは、SFC構成情報として、SFC:IDとカウンタ値とをセットにして用意しておく。更新部13は、SFC管理テーブル111iの作成時に、SFC:IDとセットにして使用回数をカウンタに設定しておき、SFCが変更、削除、追加される毎に、カウンタ値の変更、減算、加算の各処理を行う。そして、更新部13は、カウンタ値が“0”であれば、対応するSFC:IDは存在せず、“1”以上であれば、対応するSFC:IDが存在するものとして処理を行う。
【0082】
(方式1の既存SFCの削除)
A社がSFC:A1の提供を中止した場合を例に採り、SFCを削除した時の処理を、
図48のSFC管理テーブル111jを用いて説明する。
図48は、方式1における必須機能としての第8のSFC管理テーブル111jのデータ格納例を示す図である。
図48に示す様に、SFC:A1の提供が中止されると、更新部13は、SFC管理テーブル111jのSFC:A1のIDを削除する(V51)。V52a,V52bでは、更新部13は、SFC構成情報のフィールドをサーチし、SFC:A1を構成情報として有するSFC:ID(SFC:B1,SFC:C1)を抽出する。V53a,V53bでは、更新部13は、抽出したSFC:IDを変更対象SFCとする。V54aでは、機能チェインに記載されているSFCがSFC:A1であれば、更新部13は、SFC:A1を、SFC:IDがSFC:A1の機能チェインに記載されているSF:a1→SF:a2に変更してSF:b1→SF:a1→SF:a2とする。一方、V54bでは、上記機能チェインに記載されているSFCがSFC:B1であれば、更新部13は、SFC:B1を、SFC:IDがSFC:B1の機能チェインに記載されているSF:b1→SFC:A1に変更してSF:c1→SF:b1→SFC:A1とする。更に、更新部13は、SFC:A1を、SFC:IDがSFC:A1の機能チェインに記載されているSF:a1→SF:a2に変更してSF:c1→SF:b1→SF:a1→SF:a2とする。
【0083】
図49は、方式1におけるオプション機能としての第8のSFC管理テーブル111kのデータ格納例を示す図である。
図49に示す様に、パス検索装置10の更新部13は、オプションを使用する場合には、SFC:A1を削除すると共に、
図48のV53a,V53bにて特定したSFC:IDの機能チェインの見直しを行う。
【0084】
(方式1の新規SFCの追加)
SFCを組み合わせて新規SFCの提供を行った場合の処理を、SFC管理テーブル111lを用いて説明する。
図50は、方式1における必須機能としての第9のSFC管理テーブル111lのデータ格納例を示す図である。C社がSFC:C1とSF:d1とを組み合わせた新規のSFC:C3の提供を開始すると、
図50に示す様に、更新部13は、SFC:C3をSFC:IDに追加する(V61)。V62では、更新部13は、SFC:C1→SF:d1を機能チェインに書き込む。V63では、SFC:C3はSFC:C1を利用しているので、検索部12は、SFC:C1をSFC:IDから検索する。V64では、更新部13は、検索したSFC:C1のSFC構成情報を抽出する。V65では、更新部13は、抽出したSFC構成情報(SFC:A1,SFC:B1)とSFC:C3の機能チェインに記載されているSFC(SFC:C1)とにより、SFC:C3のSFC構成情報を作成する。すなわち、更新部13は、V64で抽出したSFC構成情報とSFC:C3の機能チェインに記載されているSFCとを追加したものを、SFC:C3のSFC構成情報とする。
【0085】
図51は、方式1におけるオプション機能としての第9のSFC管理テーブル111mのデータ格納例を示す図である。
図51に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、
図50に示したSFC管理テーブル111lを参照して、SF機能チェイン情報を追記する。
【0086】
(方式2のSFC管理テーブル11)
方式2に基づくSFC管理テーブル11の構成方法を説明する。
図52は、方式2における必須機能としての第1のSFC管理テーブル112aのデータ格納例を示す図である。
図52に示す必須機能は、SFC名、機能チェイン、及びSFC構成情報により実現される。方式2のSFC管理テーブル112aは、SFC構成情報の記載内容において方式1と異なる。SFC構成情報には、方式1では、使用している自社及び他社のSFCのIDが記載されるが、方式2では、該当SFCが使用されている自社及び他社のSFCのIDが記載される。例えば、SFC:IDがSFC:A1であるSFCに着目すると、SFC構成情報のフィールドには、SFC:B1,SFC:C1が記載されている。このことは、SFC:A1が、SFC:B1とSFC:C1とにより使用されていることを示している。この様に、パス検索装置10は、SFC構成情報を参照することで、各SFCが、他のSFCによって利用されているか否か、及び利用されている場合には利用している他のSFC:IDを特定可能となる。従って、パス検索装置10は、SFC構成情報を用いることで、SFCの構成に変更があった場合に、連動させて変更すべきSFCを正しく抽出することができる。なお、
図53は、方式2におけるオプション機能としての第1のSFC管理テーブル112bのデータ格納例を示す図である。
図53のオプション機能は、
図52の機能チェインを、SFを用いて表記したものである。
【0087】
(方式2の既存SFCの変更)
以下、SFC構成を変更した時の処理を、SFC構成要素のSFを変更した場合とSFCを変更した場合とについて説明する。まず、
図54のSFC管理テーブル112cを用いて、SFC構成要素のSFを変更した場合について説明する。
図54は、方式2における必須機能としての第2のSFC管理テーブル112cのデータ格納例を示す図である。本実施例では、A社が、SFC:A1の構成をSF:a1→SF:a2からSF:a1→SF:a6に変更した場合の処理を例示する。
【0088】
SFC:A1の構成変更(SF:a1→SF:a2からSF:a1→SF:a6)が行われると、パス検索装置10の更新部13は、SFC管理テーブル112cのSFC:A1の機能チェインをSF:a1→SF:a6に変更する(W1)。更新部13は、SFC構成情報により、SFC:A1を利用しているSFCがSFC:B1,SFC:C1であると判定し(W2)、変更対象のSFCを特定する(W3a,W3b)。
【0089】
図55は、方式2におけるオプション機能としての第2のSFC管理テーブル112dのデータ格納例を示す図である。
図55に示す様に、更新部13は、オプションを使用する場合には、上記W3a,W3bにて特定したSFCの機能チェイン情報を書き換える。
【0090】
次に、
図56のSFC管理テーブル112eを用いて、SFC構成要素のSFCを変更した場合について説明する。
図56は、方式2における必須機能としての第3のSFC管理テーブル112eのデータ格納例を示す図である。本実施例では、B社が、SFC:B1の構成をSF:b1→SFC:A1からSF:b1→SFC:A2に変更した場合の処理を例示する。SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)が行われると、更新部13は、SFC管理テーブル112eのSFC:B1の機能チェインをSF:b1→SFC:A2に変更する(W11)。W12では、更新部13は、変更したSFC:ID(SFC:B1)を抽出する。W13では、更新部13は、W11にて処理したSFC:A1をキーとして、SFC:IDからSFC:A1を特定する。W14では、更新部13は、SFC:A1のSFC構成情報から、W12で抽出したSFC:B1を削除する。W15では、更新部13は、W11で処理したSFC:A2をキーとして、SFC:IDからSFC:A2を特定する。W16では、更新部13は、SFC:A2のSFC構成情報に、W12で抽出したSFC:B1を記載する。W17では、検索部12はSFC:A2を検索し、更新部13は、SFC:A2を使用しているSFCの構成情報に、W12で抽出したSFC:B1を記載する。なお、オプションの処理については、
図55に示した処理と同様の処理であるので、詳細な説明は省略する。
【0091】
(方式2の既存SFCの削除)
A社がSFC:A1の提供を中止した場合を例に採り、SFCを削除した時の処理を、
図57のSFC管理テーブル112fを用いて説明する。
図57は、方式2における必須機能としての第4のSFC管理テーブル112fのデータ格納例を示す図である。
図57に示す様に、SFC:A1の提供が中止されると、更新部13は、SFC管理テーブル112fのSFC:A1のSFC構成情報から、SFC:A1を使用しているSFC:ID(SFC:B1,SFC:C1)を求める(W21)。W22a,W22bでは、更新部13は、W21で求めたSFC:IDを有するSFCを変更対象のSFCとする。機能チェインに記載されているSFCがSFC:A1であれば、更新部13は、該SFC:A1を、SFC:IDがSFC:A1の機能チェインに記載されているSF:a1→SF:a2に変更して、SF:b1→SF:a1→SF:a2とする(W23a)。一方、機能チェインに記載されているSFCがSFC:B1であれば、更新部13は、該SFC:B1を、SFC:IDがSFC:B1の機能チェインに記載されているSF:b1→SFC:A1に変更して、SF:c1→SF:b1→SFC:A1とする。更に、更新部13は、SFC:A1を、SFC:IDがSFC:A1の機能チェインに記載されているSF:a1→SF:a2に変更して、SF:c1→SF:b1→SF:a1→SF:a2とする(W23b)。W24では、更新部13は、SFC管理テーブル112fから、SFC:A1に関する項目の全てを削除する。
【0092】
図58は、方式2におけるオプション機能としての第4のSFC管理テーブル112gのデータ格納例を示す図である。
図58に示す様に、パス検索装置10の更新部13は、オプションを使用する場合には、SFC:A1を削除する。
【0093】
(方式2の新規SFCの追加)
次に、SFCを組み合わせて新規SFCの提供を行った場合の処理を説明する。
図59は、方式2における必須機能としての第5のSFC管理テーブル112hのデータ格納例を示す図である。
図59に示す様に、C社がSFC:C1とSF:d1とを組み合わせた新規のSFC:C3(SFC:C1→SF:d1)の提供を開始すると、パス検索装置10の更新部13は、SFC:C3をSFC:IDに追加する(W31)。W32では、更新部13は、機能チェインにSFC:C1→SF:d1を書き込む。これにより、SFC:C3の機能チェインが、SFC:C1を利用していることが分かる。つまり、SFC:C1は、SFC:C3によって利用されている。
【0094】
そこで、W33では、検索部12は、SFC:C3が使用しているSFC:C1をSFC:IDから検索する。W34aでは、更新部13は、検索したSFC:C1のSFC構成情報にSFC:C3を記載する。検索したSFC:C1の機能チェインから、SFC:C1がSFC:B1を利用していることが分かる(W34b)。つまり、SFC:B1はSFC:C1によって利用されており、SFC:C1はSFC:C3によって利用されている。
【0095】
図60に移り、
図60は、方式2における必須機能としての第6のSFC管理テーブル112iのデータ格納例を示す図である。
図60に示す様に、検索部12は、SFC:B1をSFC:IDから検索する(W35)。W36aでは、更新部13は、SFC:IDがSFC:B1であるSFC構成情報にSFC:C3を記載する。SFC:B1の機能チェインから、SFC:B1がSFC:A1を利用していることが分かる(W36b)。つまり、SFC:A1はSFC:B1によって利用され、SFC:B1はSFC:C1によって利用され、SFC:C1はSFC:C3によって利用されている。W37では、検索部12は、SFC:A1をSFC:IDから検索する。W38では、更新部13は、SFC:IDがSFC:A1であるSFC構成情報にSFC:C3を記載する。本実施例では、SFC:A1の機能チェインにSFCが記載されていないので、現時点で処理は終了する。
【0096】
なお、機能チェインにSFCが記載されている場合には、検索部12は、記載されているSFCをSFC:IDから検索し、更新部13は、SFC構成情報にSFC:A1を記載する。更に、更新部13は、機能チェインにSFCが記載されているか否かをチェックし、上述した一連の処理(W31〜W38)を繰り返し実行する。
【0097】
図61は、方式2におけるオプション機能としての第6のSFC管理テーブル112jのデータ格納例を示す図である。
図61に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、
図59及び
図60に示したSFC管理テーブル112h,112iを参照して、SF機能チェイン情報を追記する。
【0098】
(方式2の特殊な場合のオプション機能について)
ここで、方式2において、同一のSFC内において2つ以上の同じSFCを使用した場合に生じる問題とその解決方法を説明する。同一SFC内で2つ以上の同じSFCを使用することは、サービスファンクションチェイニングの様に、禁止されている場合が多いと想定される。禁止されている場合には、同じSFCを使用しているか否かを前処理としてチェックすることで対処する方式がある。禁止されていない場合は特殊と考えられるので、オプションの方式とする。
【0099】
以下では、説明の便宜上、最初に、
図62を参照して、同一SFC内において2つ以上の同じSFCを使用しない場合について説明し、その後、
図63を参照して、同一SFC内において2つ以上の同じSFCを使用した場合に生じる問題点を説明する。
【0100】
図62は、方式2における、同一SFC内で2つ以上の同じSFCを使用しない場合のSFC管理テーブル112kのデータ格納例を示す図である。
図62では、パス検索装置10の更新部13が、SFC:C1においてSFC:B1を削除し、SF:c1→SFC:B1をSF:c1に変更した場合を例示する。まずW41では、更新部13は、SFC:C1の機能チェインのSFC:B1を削除する。W42では、検索部12は、削除したSFC:B1をSFC:IDから検索する。W43aでは、更新部13は、W42で検索したSFC:B1のSFC構成情報のフィールドからSFC:C1を削除する。W43bでは、更新部13は、W42で検索したSFC:B1の機能チェインに記載されているSFC(SFC:A1)を抽出する。W44では、検索部12は、W43bで抽出したSFC(SFC:A1)をSFC:IDから検索する。W45では、更新部13は、W44で検索したSFC:A1のSFC構成情報からSFC:C1を削除する。以上の処理により、SFC管理テーブル112kは正しく変更される。
【0101】
図63は、方式2における、同一SFC内で2つ以上の同じSFCを使用する場合のSFC管理テーブル112lのデータ格納例を示す図である。
図62と
図63との相違点は、SFC:C1の機能チェインが、
図62ではSF:c1→SFC:B1であるのに対し、
図63ではSFC:A1→SFC:B1であるという点である。
図63では、SFC:C1の機能チェインはSFC:A1→SFC:B1であり、一方、SFC:B1の機能チェインはSF:b1→SFC:A1である。従って、SFC:C1の機能チェインは、SFC:A1→SF:b1→SFC:A1となる。この機能チェインは、SFC:C1内において、同一のSFC:A1を2回使用している。
【0102】
図63において、更新部13は、SFC:B1を削除し、SFC:A1→SFC:B1をSFC:A1に変更した場合、SFC:C1の機能チェインのSFC:B1を削除する(W51)。W52では、検索部12は、W51で削除したSFC:B1をSFC:IDから検索する。W53aでは、更新部13は、W52で検索したSFC:B1のSFC構成情報のフィールドからSFC:C1を削除する。W53bでは、更新部13は、W52で検索したSFC:B1の機能チェインに記載されているSFC(SFC:A1)を抽出する。W54では、検索部12は、W53bで抽出したSFC(SFC:A1)をSFC:IDから検索する。W55では、W53bで抽出したSFC:A1のSFC構成情報から、SFC:C1を削除する。
【0103】
以上の処理により、
図62の場合と同一のSFC管理テーブル112lが得られる。しかしながら、このSFC管理テーブル112lは正しくない。なぜなら、SFC:A1のSFC構成情報からSFC:C1は削除されており、このことは、SFC:A1がSFC:C1によって使用されていないことを意味する。しかしながら、SFC:C1の機能チェインにはSFC:A1が記載されており、このことは、SFC:C1によってSFC:A1が使用されていることを意味することから、上記と矛盾している。
【0104】
SFC:C1の機能チェインを参照すると、SFC:C1は、SFC:A1とSFC:B1との2つのSFCを介して、SFC:A1を利用していることが分かる。SFC:A1のSFC構成情報にはSFC:C1が記載されているが、その内訳は、SFC:A1を介して使用される場合とSFC:B1を介して使用される場合とがあり、これらを区別することはできない(縮退している)。上述したSFC:C1の削除は、SFC:B1を介して使用されるSFC:C1の削除を意味するが、上記区別ができないため、SFC:C1が削除され、その結果、SFC:A1を介して利用しているという情報が欠落した。これにより、上記矛盾が生じたものである。誤って削除した理由は、SFC:C1においてSFC:A1が2回使用されているという情報が、SFC:A1のSFC構成情報に欠落しているためである。
【0105】
そこで、
図64は、方式2における、同一SFC内で2つ以上の同じSFCを使用する場合の問題点を解決したSFC管理テーブル112mのデータ格納例を示す図である。
図64に示す様に、同一SFC内で2つ以上の同じSFCを使用した場合に生じる問題点を解決するには、パス検索装置10は、SFCを使用している回数をカウンタとして用意すればよい。本実施例では、SFC:C1は、SFC:A1とSFC:B1との2つのSFCを介してSFC:A1を利用しているため、カウンタ値は“2”となる。SFC管理テーブル112mは、SFC構成情報として、SFC:IDとカウンタ値とをセットにして用意しておく。更新部13は、SFC管理テーブル112mの作成時に、SFC:IDとセットにして使用回数をカウンタに設定しておき、SFCの変更、削除、追加がある毎に、カウンタ値の変更、減算、加算を行う。そして、更新部13は、カウンタ値が0であれば、対応するSFC:IDは存在せず、1以上であれば存在するものとして処理を行う。
【0106】
(方式3のSFC管理テーブル11)
方式3に基づくSFCのルーチング管理テーブル構成方法を説明する。
図65は、方式3における必須機能としての第1のSFC管理テーブル113aのデータ格納例を示す図である。
図65に示す必須機能は、SFC名、機能チェイン、及びSFC構成情報により実現される。方式2との相違点は、SFC構成情報の記載内容である。方式2では、該当SFCが使用されている自社及び他社のSFCのIDが全て記載されるが、方式3では、直接使用されるSFCのIDのみが記載される。
【0107】
例えば、
図62(方式2)のSFC:A1に着目すると、SFC:A1を使用しているSFCは、SFC:B1とSFC:C1との2つであり、後者のSFC:C1は、SFC:B1を介して使用されている。換言すれば、SFC:C1が直接使用するSFCはSFC:B1であり、SFC:A1はSFC:B1を介して使用されている。この場合、方式2では、SFC構成情報として、SFC;B1,SFC:C1が記載されるが、方式3では、SFC:B1のみが記載され、SFC:C1は記載されない。つまり、SFC構成情報に対し、直接使用と間接使用とを区別せずにSFCを記載する方式が方式2であり、直接使用しているSFCのみを記載する方式が方式3である。なお、
図66は、方式3におけるオプション機能としての第1のSFC管理テーブル113bのデータ格納例を示す図である。
図66のオプション機能は、
図65の機能チェインを、SFを用いて表記したものである。
【0108】
(方式3の既存SFCの変更)
以下、SFC構成を変更した時の処理を、SFC構成要素のSFを変更した場合とSFCを変更した場合とについて説明する。
【0109】
まず、A社がSFC:A1の構成をSF:a1→SF:a2からSF:a1→SF:a6に変更した場合を例に採り、SFC構成要素のSFを変更した時の処理を説明する。
図67は、方式3における必須機能としての第2のSFC管理テーブル113cのデータ格納例を示す図である。
図67に示す様に、SFC:A1の構成変更(SF:a1→SF:a2からSF:a1→SF:a6)が行われると、パス検索装置10の更新部13は、SFC管理テーブル113cのSFC:A1の機能チェインをSF:a1→SF:a6に変更する(X1)。X2では、更新部13は、SFC:A1のSFC構成情報から、SFC:A1を利用しているSFCがSFC:B1であると判定する。X3では、更新部13は、SFC:IDから変更対象のSFC:B1を特定する。X4では、更新部13は、SFC:B1のSFC構成情報から、SFC:B1を介してSFC:A1を利用しているSFCがSFC:C1であると判定する。X5では、更新部13は、SFC:IDから変更対象のSFC:C1を特定する。
【0110】
図68は、方式3におけるオプション機能としての第2のSFC管理テーブル113dのデータ格納例を示す図である。
図68に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、SFC:A1と、上記X3,X5にて特定されたSFC:B1及びSFC:C1とに対し、SFCの機能チェイン情報の書き換えを行う。
【0111】
次に、B社がSFC:B1の構成をSF:b1→SFC:A1からSF:b1→SFC:A2に変更した場合を例に採り、SFC構成要素のSFCを変更した時の処理を説明する。
図69は、方式3における必須機能としての第3のSFC管理テーブル113eのデータ格納例を示す図である。
図69に示す様に、SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)が行われると、更新部13は、SFC管理テーブル113eのSFC:B1の機能チェインをSF:b1→SFC:A2に変更する(X11)。X12では、更新部13は、X11で変更したSFC:ID(SFC:B1)を抽出する。X13では、X11で処理したSFC:A1(変更前のSFC)をキーとして、SFC:IDからSFC:A1を特定する。X14では、更新部13は、X13で特定したSFC:A1のSFC構成情報から、X12で抽出したSFC:B1を削除する。X15では、更新部13は、X11で処理したSFC:A2(変更後のSFC)をキーとして、SFC:IDからSFC:A2を特定する。X16では、更新部13は、SFC:A2のSFC構成情報に、X12で抽出したSFC:B1を記載する。なお、オプションの処理については、
図68に示した処理と同様の処理であるので、詳細な説明は省略する。
【0112】
(方式3の既存SFCの削除)
A社がSFC:A1の提供を中止した場合を例に採り、SFCを削除した場合の処理を説明する。
図70は、方式3における必須機能としての第4のSFC管理テーブル113fのデータ格納例を示す図である。
図70に示す様に、SFC:A1の提供が中止されると、更新部13は、SFC管理テーブル113fのSFC:A1のSFC構成情報から、SFC:A1を使用しているSFC:ID(SFC:B1)を求める(X21)。X22では、検索部12は、X21で求めたSFC(SFC:B1)をSFC:IDから検索し、変更対象のSFCとする。X23では、更新部13は、X22で検索したSFC:B1の機能チェインに記載されているSFC:A1を、SF:a1→SF:a2(SFC:A1の機能チェインに記載)に変更する。X24では、更新部13は、X22で検索したSFC:B1のSFC構成情報から、SFCを抽出する。なお、
図70では、抽出されるSFCは、SFC:C1のみであるが、SFC構成情報にSFCが複数記載されている場合には、複数のSFCが抽出される。
【0113】
ここで、
図70における“SFC:B1”のレコードは、SFC:C1がSFC:B1を介してSFC:A1を使用していることを意味する。X25では、検索部12は、X24で抽出したSFC:C1を変更対象のSFCとし、SFC:IDから検索する。X26では、更新部13は、X25で検索したSFC:C1の機能チェインに記載されているSFC:B1を、SFC:IDがSFC:B1である機能チェインに記載されているSF:b1→SFC:A1に変更して、SF:c1→SF:b1→SFC:A1とする。更に、更新部13は、SFC:A1を、SFC:IDがSFC:A1である機能チェインに記載されているSF:a1→SF:a2に変更して、SF:c1→SF:b1→SF:a1→SF:a2とする。X27では、更新部13は、SFC管理テーブル113fから、SFC:A1に関する項目の全てを削除する。
【0114】
図71は、方式3におけるオプション機能としての第4のSFC管理テーブル113gのデータ格納例を示す図である。
図71に示す様に、パス検索装置10の更新部13は、オプションを使用する場合には、SFC:A1を削除する。
【0115】
(方式3の新規SFCの追加)
続いて、SFCを組み合わせて新規SFCの提供を行った場合の処理を説明する。
図72は、方式3における必須機能としての第5のSFC管理テーブル113hのデータ格納例を示す図である。C社がSFC:C1とSF:d1とを組み合わせた新規のSFC:C3の提供を開始すると、パス検索装置10の更新部13は、SFC:C3をSFC:IDに追加する(X31)。X32では、更新部13は、X31にて追加したID(SFC:C3)の機能チェインにSFC:C1→SF:d1を書き込む。SFC:C3はSFC:C1を利用しているので、検索部12は、SFC:C1をSFC:IDから検索する(X33)。X34では、更新部13は、X33で検索したSFC:C1のSF構成情報にSFC:C3を記載する。
【0116】
図73は、方式3におけるオプション機能としての第5のSFC管理テーブル113iのデータ格納例を示す図である。
図73に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、
図72に示したSFC管理テーブル113hを参照して、SFC:C3のSF機能チェイン情報を追記する。
【0117】
次に、
図36に戻り、分散管理方式のモジュール構成を説明する。分散管理方式は、SFC管理テーブル11を分散設置する方式であり、適用例としては、例えば、SFC提供業者毎に自社が提供しているSFC管理テーブル11を用意する場合が想定される。集中管理方式では、パス検索装置10は、1つのSFC管理テーブル11に対して、変更、削除、追加の各処理を行うものとした。これに対して、分散管理方式では、複数のパス検索装置10の各々が、通信ネットワークを介して分散設置されている複数のSFC管理テーブル11の各々に対して、変更、削除、追加の各処理を行う。
【0118】
詳細な説明は上述したため省略するが、
図36に示す様に、パス検索装置10は、フローを管理するSFC管理テーブル11と、SFC管理テーブル11の検索部12と、SFC管理テーブル11の更新部13と、SFC管理テーブル11に対する入出力部14と、通信部15とを有する。分散管理方式のモジュール構成との相違は、他のSFC管理テーブル11との通信機能が追加されている点である。すなわち、分散管理方式のパス検索装置10は、あるSFC管理テーブル11が管理するフローに構成変更があった場合、他のSFC管理テーブル11とデータの送受信を行う。これにより、パス検索装置10は、フローの構成変更に伴ってSFC管理テーブル11の編集が必要となるアイテムの編集を行う。
【0119】
分散管理方式においても、SFC管理テーブル11は、SFCのIDと、SFCを構成しているSFのパスを記載する機能チェインと、SFC構成情報とを有する。SFC構成情報の記載方法としては、次の3つの方式がある。方式1は、該当SFCを構成している自社及び他社SFCを記載する方法であり、方式2は、該当SFCを利用している自社及び他社SFCの全てを記載する方法であり、方式3は、該当SFCを直接利用している自社及び他社SFCのみを記載する方法である。
【0120】
以下では、これら3つの方式について、SFC管理テーブル作成構成方法、既存SFC変更時の処理、既存SFC削除時の処理、及び新規SFC追加時の処理を説明する。但し、以下の説明では、分散管理方式における方式1〜3を、既に説明した集中管理方式における方式1〜3と区別するため、方式4〜6と記載する。すなわち、分散管理方式における方式4,5,6は、集中管理方式における方式1,2,3にそれぞれ対応する。また、説明の便宜上、SFC管理テーブル11が事業者毎に設置されている状況を想定し、これら各事業者を“A社”や“B社”と記す。従って、「A社への変更通知」、「A社はSFC管理テーブルを更新する」といった説明を行う。
【0121】
(方式4のSFC管理テーブル11)
方式4に基づく、SFC管理テーブル11の構成方法を説明する。
図74Aは、集中管理方式におけるSFCの状況を示すテーブル114aを示す図である。
図74Aに示す様に、SFC管理テーブル114aには、提供会社(例えば、A社、B社)毎に、SFC名とSFチェインとSFCの構成とが対応付けて格納されている。
図74Bは、集中管理方式の方式1におけるSFC管理テーブル114bを示す図である。これに対し、
図75Aは、分散管理方式における方式4のA社のSFC管理テーブル114c(必須機能)を示す図である。
図75Bは、分散管理方式における方式4のB社のSFC管理テーブル114d(必須機能)を示す図である。
図75Cは、分散管理方式における方式4のC社のSFC管理テーブル114e(必須機能)を示す図である。
図74Bに示す様に、集中管理方式では、全てのSFC提供事業者(A社〜C社)分の機能チェインとSFC構成情報とが、1つのテーブルに纏めて格納されている。これに対して、分散管理方式では、
図75A〜
図75Cに示す様に、機能チェインとSFC構成情報とが、各SFC提供事業者(A社〜C社)の有する各テーブルに分散して格納されている。
【0122】
なお、
図76A〜
図76Cは、機能チェインをSFのみで表記したオプション機能を示す。すなわち、
図76Aは、分散管理方式における方式4のA社のSFC管理テーブル114f(オプション機能)を示す図である。
図76Bは、分散管理方式における方式4のB社のSFC管理テーブル114g(オプション機能)を示す図である。
図76Cは、分散管理方式における方式4のC社のSFC管理テーブル114h(オプション機能)を示す図である。
【0123】
(方式4の既存SFCの変更)
以下、SFC構成を変更した時の処理を、SFC構成要素のSFを変更した場合とSFCを変更した場合とについて説明する。
【0124】
まず、SFC構成要素のSFを変更した場合について、
図77、
図78を参照して説明する。
図77は、方式4における必須機能としての第1のSFC管理テーブル114i〜114kのデータ格納例の前半部分を示す図である。
図77では、A社がSFC:A1の構成をSF:a1→SF:a2からSF:a1→SF:a6に変更した場合を想定する。SFC:A1の構成変更(SF:a1→SF:a2からSF:a1→SF:a6)が行われると、A社のパス検索装置10の更新部13は、自社のSFC管理テーブル114iのSFC:A1の機能チェインをSF:a1→SF:a6に変更する(Y1)。Y2a,Y2bでは、A社の通信部15は、他社のパス検索装置10に対し、変更情報を通知する。
【0125】
図78は、方式4における必須機能としての第1のSFC管理テーブル114l,114mのデータ格納例の後半部分を示す図である。
図78のY3a,Y3bでは、上記通知を受けた各社(B社、C社)のパス検索装置10の検索部12は、自社のSFC構成情報フィールドをサーチし、SFC:A1を構成情報として有するSFC:IDを抽出する(
図78では、B社はSFC:B1、C社はSFC:C1)。Y4a,Y4bでは、各社の更新部13は、Y3a,Y3bにてそれぞれ抽出したSFC:IDを変更対象SFCとする。
【0126】
なお、
図79は、方式4におけるオプション機能としての第1のSFC管理テーブル114n〜114pのデータ格納例を示す図である。オプションを使用する場合には、各社(A社〜C社)のパス検索装置10の更新部13は、
図79に示す様に、上記Y4a,Y4bで特定したSFCの機能チェイン情報を書き換える。
【0127】
次に、SFC構成要素のSFCを変更した場合について、
図80を参照して説明する。
図80は、方式4における必須機能としての第2のSFC管理テーブル114q〜114sのデータ格納例を示す図である。
図80では、B社がSFC:B1の構成をSF:b1→SFC:A1からSF:b1→SFC:A2に変更した場合の処理について説明する。SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)が行われると、B社のパス検索装置10の更新部13は、SFC管理テーブル114qのSFC:B1の機能チェインをSF:b1→SFC:A2に変更する(Y11)。Y12では、検索部12は、Y11で変更したSFC:IDのSFC:B1を抽出する。Y13a,Y13bでは、B社の通信部15は、SFC:B1のSFC:A1をSFC:A2へ変更したことを他社(A社、C社)へ通知する。Y14a,Y14bでは、B社から変更通知を受けた各社のパス検索装置10の検索部12は、SFC構成情報から、SFC:B1を利用しているSFCを検索する。Y15では、C社の検索部12は、SFC:B1を利用しているSFCを特定する。Y16では、C社の更新部13は、Y15にて特定したSFCのSFC構成情報のSFC:A1をSFC:A2へ変更する。なお、オプションの処理については、
図79と同様の処理が実行される。
【0128】
次に、
図81を参照して、SFC構成要素のSFCを変更した場合について説明する。
図81は、集中管理テーブル114tのデータ格納例を示す図である。以下では、
図81において、パス検索装置10が、SFC:B1の構成をSF:b1→SFC:A1からSF:b1→SFC:A2に変更した場合の処理を説明する。この変更に伴い、削除処理と追加処理とが必要となる。
【0129】
まず、
図82〜
図84を参照して、変更に伴う削除処理を説明する。
図82は、方式4における必須機能としての第3のSFC管理テーブル114u〜114wのデータ格納例の前段部分を示す図である。SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)が行われると、
図82に示す様に、B社のパス検索装置10の更新部13は、SFC管理テーブル114uのSFC:B1の機能チェインをSF:b1→SFC:A2に変更する(Y21)。Y22では、検索部12は、構成変更を行ったSFC:ID(SFC:B1)を抽出する。Y23a,Y23bでは、B社の通信部15は、変更対象(変更前のSFC)であるSFC:A1とY21で抽出したSFC:ID(SFC:B1)とを、他社(他データベース)へ通知する。
【0130】
Y24では、通知を受けた各社(例えば、A社)のパス検索装置10の検索部12は、上記通知に記載されている変更対象(変更前のSFC)であるSFC:A1を、SFC:IDから特定する。Y25では、検索部12は、Y24で特定したSFCのSFC構成情報(SFC:A1,SFC:C2)を抽出する。
【0131】
図83は、方式4における必須機能としての第3のSFC管理テーブル114y〜114zのデータ格納例の中段部分を示す図である。Y26a,Y26bでは、A社のパス検索装置10の通信部15は、抽出したSFC構成情報を他社(B社、C社)へ通知する。一方、Y27a〜Y27cでは、SFC構成情報の通知を受けた他社の検索部12は、上記通知に記載されている構成変更を行ったSFC:ID(SFC:B1)をSFC構成情報から検索する。
【0132】
図84は、方式4における必須機能としての第3のSFC管理テーブル115a〜115cのデータ格納例の後段部分を示す図である。Y28a,Y28bでは、他社(B社、C社)のパス検索装置10の検索部12は、SFC構成情報から検索したSFC:ID(SFC:B1,SFC:C1)を特定する。Y29a,Y29bでは、更新部13は、特定したSFC:IDのSFC構成情報から、上記Y26a,Y26bの通知にて受信されたSFC構成情報(SFC:A1,SFC:C2)を削除する。
【0133】
次に、
図85〜
図87を参照して、変更に伴う追加処理を説明する。
図85は、方式4における必須機能としての第4のSFC管理テーブル115d〜115fのデータ格納例の前段部分を示す図である。SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)が行われると、B社のパス検索装置10の更新部13は、SFC管理テーブル115dのSFC:B1の機能チェインをSF:b1→SFC:A2に変更する(Y31)。Y32では、検索部12は、構成変更を行ったSFC:ID(SFC:B1)を抽出する。Y33では、通信部15は、変更対象(変更後のSFC)であるSFC:A2とY32にて抽出したSFC:ID(SFC:B1)とを、他社(他データベース)へ通知する。
【0134】
Y34では、通知を受けた各社(例えば、A社)のパス検索装置10の検索部12は、上記通知に記載されている変更対象(変更後のSFC)であるSFC:A2をSFC:IDから特定する。Y35では、検索部12は、Y34で特定したSFCのSFC構成情報(SFC:A2,SFC:D1)を抽出する。
【0135】
図86は、方式4における必須機能としての第4のSFC管理テーブル115g〜115iのデータ格納例の中段部分を示す図である。Y36a,Y36bでは、A社のパス検索装置10の通信部15は、抽出したSFC構成情報を他社(B社、C社)のパス検索装置10へ通知する。Y37a〜Y37cでは、上記SFC構成情報の通知を受けた他社のパス検索装置10の検索部12は、上記通知に記載されている構成変更を行ったSFC:ID(本実施例ではSFC:B1)をSFC構成情報から検索する。
【0136】
図87は、方式4における必須機能としての第4のSFC管理テーブル115j〜115lのデータ格納例の後段部分を示す図である。Y38a,Y38bでは、他社(B社、C社)のパス検索装置10の検索部12の各々は、SFC構成情報から検索したSFC:ID(SFC:B1,SFC:C1)を特定する。Y39a,Y39bでは、各更新部13は、Y38a,Y38bにて特定されたSFC:IDのSFC構成情報に対し、上記Y36a,Y36bの通知にて受信されたSFC構成情報(SFC:A2,SFC:D1)を追加する。
【0137】
なお、上記「方式1の特殊な場合のオプション機能について」において説明した様な、同一SFC内において2つ以上の同じSFCを使用した場合に生じる問題は、方式4においても同様に生じ得る。従って、各パス検索装置10は、上述の方式2と同様に、SFC構成情報として、SFC:IDとカウンタ値とをセットにして用意しておく。
【0138】
(方式4の既存SFCの削除)
次に、A社がSFC:A1の提供を中止した場合を例に採り、SFCを削除した時の処理を説明する。
図88は、方式4における必須機能としての第5のSFC管理テーブル115m〜115oのデータ格納例の前半部分を示す図である。まずY41では、A社のパス検索装置10の更新部13は、SFC管理テーブル115mのSFC:A1のIDを削除する。Y42a,Y42bでは、A社の通信部15は、他社のパス検索装置10に対し、SFC:A1の機能チェインと削除したこととを通知する。Y43a,Y43bでは、通知を受けた各社(B社、C社)のパス検索装置10の検索部12の各々は、自社のSFC構成情報のフィールドをサーチし、SFC:A1を構成情報として有するSFC:ID(B社はSFC:B1、C社はSFC:C1)を抽出する。Y44a,Y44bでは、各社の検索部12は、Y43a,Y43bにてそれぞれ抽出したSFC:IDを変更対象SFCとする。
【0139】
Y45a,Y45bでは、各社の更新部13は、抽出したSFC:ID(B社はSFC:B1、C社はSFC:C1)のSFC構成情報のフィールドに、SFC:A1以外のSFCの有無(自SFCを除く)をチェックする。
図88では、B社のSFC構成情報には、SFC:A1以外のSFCの記載は無いが、C社のSFC構成情報には、SFC:A1以外にSFC:B1が記載されている。従って、C社のパス検索装置10の通信部15は、該当SFC(本実施例では、C社のSFC:B1)の機能チェインを、B社のパス検索装置10に問い合わせ(Y46)、SFC:B1の機能チェインを受信する(Y47)。
【0140】
図89は、方式4における必須機能としての第5のSFC管理テーブル115p〜115rのデータ格納例の後半部分を示す図である。Y48aでは、B社のパス検索装置10の更新部13は、Y42a(
図88参照)にて通知された情報に基づき、変更対象SFC(SFC:B1)の機能チェインのSF:A1をSF:a1→SF:a2に変更して、「SF:b1→SF:a1→SF:a2」とする。一方、Y48bでは、C社のパス検索装置10の更新部13は、Y47(
図88参照)にて通知された情報に基づき、変更対象SFC(SFC:C1)の機能チェインのSF:B1をSF:b1→SFC:A1に変更して「SF:c1→SF:b1→SFC:A1」とする。更に、更新部13は、Y42b(
図88参照)にて通知された情報に基づき、機能チェインのSFC:A1をSF:a1→SF:a2に変更して「SF:c1→SF:b1→SF:a1→SF:a2」とする。
【0141】
図90は、方式4におけるオプション機能としての第5のSFC管理テーブル115s〜115uのデータ格納例を示す図である。
図90に示す様に、オプションを使用する場合には、A社のパス検索装置10のSFC管理テーブル115sでは、更新部13が、SFC:A1を削除する。また、B社のパス検索装置10のSFC管理テーブル115tでは、更新部13が、Y44a(
図88参照)で特定したSFCの機能チェインの見直しを行う。同様に、C社のパス検索装置10のSFC管理テーブル115uでは、更新部13が、Y44b(
図88参照)で特定したSFCの機能チェインの見直しを行う。
【0142】
(方式4の新規SFCの追加)
次に、複数のSFCを組み合わせて新規SFCの提供を行った場合の処理を説明する。
図91は、方式4における必須機能としての第6のSFC管理テーブル116a〜116cのデータ格納例を示す図である。
図91に示す様に、C社がSFC:C1とSF:d1とを組み合わせた新規のSFC:C3(SFC:C1→SF:d1)の提供を開始すると、パス検索装置10の更新部13は、SFC:C3をSFC:IDに追加する(Y51)。Y52では、更新部13は、機能チェインにSFC:C1→SF:d1を書き込む。Y53a,Y53bでは、C社のパス検索装置10の通信部15は、他社(例えば、A社、B社)のパス検索装置10に対し、変更情報を通知する。SFC:C3はSFC:C1を利用しているので、検索部12は、SFC:C1をSFC:IDから検索する(Y54)。Y55では、検索部12は、Y54で検索したSFC:C1のSF構成情報を抽出する。Y56では、更新部13は、Y55にて抽出したSF構成情報(SFC:A1,SFC:B1)とSFC:C3の機能チェインに記載されているSFC(
図91ではSFC:C1)とにより、SFC:C3のSFC構成情報を作成する。
【0143】
なお、
図92は、方式4におけるオプション機能としての第6のSFC管理テーブル116d〜116fのデータ格納例を示す図である。
図92に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、
図91に示したSFC管理テーブル116a〜116cを参照して、SF機能チェイン情報を書き込む。
【0144】
なお、本実施例では、自社のSFCを用いてSFCを追加した場合を例示したが、他社のSFCを用いてSFCを追加した場合においても、パス検索装置10は、同様の手順で処理を行うことができる。例えば、C社において、新規のSFC:C3をSFC:B1→SF:d1と設定した場合を想定する。この場合、SFC:B1のSFC構成情報が自社のSFC管理テーブル11に無いため、パス検索装置10は、以下の様な処理を行う。すなわち、Y53a,Y53bにてSFC:C3(SFC:B1→SF:d1)追加の通知を受けたA社及びB社のパス検索装置10は、検索部12により、SFC:B1をキーとして、SFC:IDを検索し、通信部15により、抽出したSFC:IDのSFC構成情報をC社のパス検索装置10へ返信する。なお、SFC:C3追加の通知を受けたA社及びB社の処理は、通信処理を除き、上述したC社の処理(Y54,Y55)に対応する。その後、C社のパス検索装置10の更新部13は、受信したSFC:B1のSF構成情報(SFC:A1)とSFC:C3の機能チェインに記載されているSFC(SFC:B1)とにより、SFC:C3のSFC構成情報を作成する。
【0145】
(方式5のSFC管理テーブル11)
方式5に基づく、SFCのルーチング管理テーブル構成方法を説明する。
図93は、集中管理方式にて説明したSFC管理テーブル117aの構成例を示す図である。
図93に示す様に、SFC管理テーブル117aには、提供会社(例えば、A社、B社、C社)毎に、機能チェインとSFC構成情報とが対応付けて格納されている。これに対し、
図94Aは、分散管理方式における方式5のA社のSFC管理テーブル118a(必須機能)を示す図である。
図94Bは、分散管理方式における方式5のB社のSFC管理テーブル118b(必須機能)を示す図である。
図94Cは、分散管理方式における方式5のC社のSFC管理テーブル118c(必須機能)を示す図である。
図93に示す様に、集中管理方式では、全てのSFC提供事業者(A社〜C社)分の機能チェインとSFC構成情報とが、1つのテーブルに纏めて格納されている。これに対して、分散管理方式では、
図94A〜
図94Cに示す様に、機能チェインとSFC構成情報とが、各SFC提供事業者(A社〜C社)の有する各テーブルに分散して格納されている。
【0146】
なお、
図95A〜
図95Cは、機能チェインをSFのみで表記したオプション機能を示す。すなわち、
図95Aは、分散管理方式における方式5のA社のSFC管理テーブル119a(オプション機能)を示す図である。
図95Bは、分散管理方式における方式5のB社のSFC管理テーブル119b(オプション機能)を示す図である。
図95Cは、分散管理方式における方式5のC社のSFC管理テーブル119c(オプション機能)を示す図である。
【0147】
(方式5の既存SFCの変更)
以下、SFC構成を変更した時の処理を、SFC構成要素のSFを変更した場合とSFCを変更した場合とについて説明する。
【0148】
A社がSFC:A1の構成をSF:a1→SF:a2からSF:a1→SF:a6に変更した場合を例に採り、SFC構成要素のSFを変更した場合について説明する。
図96は、方式5における必須機能としての第7のSFC管理テーブル120a〜120cのデータ格納例を示す図である。SFC:A1の構成変更(SF:a1→SF:a2からSF:a1→SF:a6)が行われると、パス検索装置10の更新部13は、SFC管理テーブル120aのSFC:A1の機能チェインをSF:a1→SF:a6に変更する(Z1)。Z2では、更新部13は、SFC構成情報により、SFC:A1を利用しているSFCがSFC:B1,SFC:C1であることからB社、C社に影響が生じると判定する。Z3a,Z3bでは、A社のパス検索装置10の通信部15は、B社、C社のパス検索装置10に対し、変更情報とSFC構成情報(SFC:B1,SFC:C1)とを通知する。Z4a,Z4bでは、上記通知を受けた各社(B社、C社)のパス検索装置10の検索部12は、受信データに記載されているSFC構成情報(SFC:B1,SFC:C1)から変更対象SFCを特定する。
【0149】
図97は、方式5におけるオプション機能としての第7のSFC管理テーブル120d〜120fのデータ格納例を示す図である。
図97に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、Z4a,Z4bにて特定されたSFCの機能チェイン情報を、変更情報に従って書き換える。
【0150】
B社がSFC:B1の構成をSF:b1→SFC:A1からSF:b1→SFC:A2に変更した場合を例に採り、SFC構成要素のSFCを変更した場合について説明する。
図98は、方式5における必須機能としての第8のSFC管理テーブル120g〜120iのデータ格納例を示す図である。SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)が行われると、B社のパス検索装置10の更新部13は、SFC管理テーブル120gのSFC:B1の機能チェインを、SF:b1→SFC:A2に変更する(Z11)。Z12は、検索部12は、変更したSFC:ID(SFC:B1)を抽出する。Z13a,Z13bでは、通信部15は、他社(A社、C社)のパス検索装置10に対し、SFC:B1においてSFC:A1をSFC:A2へ変更したことを通知する。
【0151】
Z14では、B社から変更通知を受けた各社(例えば、A社)のパス検索装置10の検索部12は、通知情報のSFC:A1をキーとして、変更対象SFCをSFC:IDから特定する。Z15では、更新部13は、特定したSFCのSFC構成情報からSFC:B1を削除する。Z16では、検索部12は、通知情報のSFC:A2をキーとして、変更対象SFCを特定する。Z17では、更新部13は、Z16にて特定したSFCのSFC構成情報にSFC:B1を追加する。Z18a,Z18bでは、各社(A社、C社)のパス検索装置10の検索部12は、Z16にて特定したSFC:A2をキーとして、SFC構成情報を検索し、更新部13は、構成情報にSFC:A2が有ればSFC:B1を記載する。なお、オプションの処理については、
図97に示した処理と同様の処理が実行される。
【0152】
(方式5の既存SFCの削除)
A社がSFC:A1の提供を中止した場合を例に採り、SFCを削除した場合の処理を説明する。
図99は、方式5における必須機能としての第9のSFC管理テーブル121a〜121cのデータ格納例の前半部分を示す図である。SFC:A1の提供が中止されると、A社のパス検索装置10の更新部13は、SFC:A1を削除する(Z21)。Z22では、更新部13は、SFC:A1のSFC構成情報により、SFC:A1を利用しているSFCがSFC:B1,SFC:C1であることからB社、C社に影響が生じると判定する。Z23a,Z23bでは、A社のパス検索装置10の通信部15は、B社、C社のパス検索装置10に対し、SFC:A1の削除と、SFC:A1の機能チェインと、SFC:A1のSFC構成情報(SFC:B1,SFC:C1)とを通知する。Z24a,Z24bでは、該通知を受けた各社(B社、C社)のパス検索装置10の検索部12は、受信データに記載されているSFC構成情報(SFC:B1,SFC:C1)から変更対象SFCを特定する。すなわち、B社のパス検索装置10は、SFC:B1を変更対象SFCと判定し、C社のパス検索装置10は、SFC:C1を変更対象SFCと判定する。Z25では、SFC:C1が変更対象であると判定したC社のパス検索装置10の通信部15は、SFC:C1の機能チェインにSFC:B1があるので、B社のパス検索装置10に、SFC:B1の機能チェインを問い合わせる。Z26では、C社の通信部15は、B社のパス検索装置10から、SFC:B1の機能チェインを受け取る。
【0153】
図100は、方式5における必須機能としての第9のSFC管理テーブル121d〜121fのデータ格納例の後半部分を示す図である。Z27では、SFC:B1が変更対象であると判定しB社のパス検索装置10の更新部13は、機能チェインにあるSFC:A1を、Z23aにて受信したSFC:A1の機能チェイン(SF:a1→SF:a2)に変更し、SF:b1→SF:a1→SF:a2とする。Z28では、SFC:C1が変更対象であると判定したC社のパス検索装置10の更新部13は、Z24bにて特定されたSFC構成情報から、SFC:A1が変更対象であると判定する。更新部13は、SFC:C1の機能チェインのSFC:B1を、Z26にて通知されたSFC:B1の機能チェイン(SF:b1→SFC:A1)に変更し、SF:c1→SF:b1→SFC:A1とする。更に、更新部13は、SFC:A1を、Z23bにて通知されたSFC:A1の機能チェイン(SF:a1→SF:a2)に変更し、SF:c1→SF:b1→SF:a1→SF:a2とする。Z29では、A社のパス検索装置10の更新部13は、SFC管理テーブル121dから、SFC:A1に関する項目を全て削除する。
【0154】
図101は、方式5におけるオプション機能としての第9のSFC管理テーブル121g〜121iのデータ格納例を示す図である。
図101に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、Z24a,Z24bにて特定されたSFCの機能チェイン情報を、変更情報に従って書き換える。
【0155】
(方式5の新規SFCの追加)
次に、SFCを組み合わせて新規SFCの提供を行った場合の処理を説明する。
図102は、方式5における必須機能としての第10のSFC管理テーブル122a〜122cのデータ格納例を示す図である。C社が、SFC:C1とSF:d1とを組み合わせた新規のSFC:C3の提供を開始すると、C社のパス検索装置10の更新部13は、SFC:C3をSFC:IDに追加する(H1)。H2では、更新部13は、SFC:C3の機能チェインにSFC:C1→SF:d1を書き込む。H3では、更新部13は、SFC:C3においてSFC:C1を利用していると判定する。H4では、検索部12は、SFC:IDからSFC:C1を検索する。H5では、更新部13は、H4にて検索したSFC:C1の構成情報にSFC:C3を記載する。H6では、検索部12は、SFC:C1の機能チェインにおけるSFCの有無をチェックし、SFC:B1を検出する。
【0156】
H7では、パス検索装置10の通信部15は、SFC:B1がB社のSFCであるため、B社のパス検索装置10に対し、SFC:C3がSFC:B1を利用していることを通知する。H8では、C社から通知(SFC:C3がSFC:B1を利用)を受けたB社のパス検索装置10の更新部13は、上記通知の内容に基づき、SFC:B1のSFC構成情報にSFC:C3を記載する。H9では、検索部12は、SFC:B1の機能チェインにおけるSFCの有無をチェックし、SFC:A1を検出する。H10では、通信部15は、SFC:A1がA社のSFCであるため、A社のパス検索装置10に対し、SFC:C3がSFC:A1を利用していることを通知する。
【0157】
H11では、B社から通知(SFC:C3がSFC:A1を利用)を受けたA社のパス検索装置10の更新部13は、上記通知の内容に基づき、SFC:A1のSFC構成情報にSFC:C3を記載する。そして、検索部12は、SFC:A1の機能チェインにおけるSFCの有無をチェックするが、SFCが存在しないため、検索を終了する。
【0158】
なお、
図103は、方式5におけるオプション機能としての第10のSFC管理テーブル122d〜122fのデータ格納例を示す図である。
図103に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、
図102に示したSFC管理テーブル122a〜122cを参照して、SF機能チェイン情報を書き込む。
【0159】
また、特殊な場合のオプション機能について、同一SFC内において2つ以上の同じSFCを利用すると、分散管理方式においても、集中管理方式の方式2と同様の問題が生じ得る。しかしながら、分散管理方式においても、集中管理方式での解決策と同様に、パス検索装置10は、SFCを使用しているカウンタを用意することで、上記問題を解決することができる。
【0160】
(方式6のSFC管理テーブル11)
方式6に基づく、SFCのルーチング管理テーブル構成方法を説明する。
図104は、集中管理方式にて説明したSFC管理テーブル123aの第2の構成例を示す図である。
図104に示す様に、SFC管理テーブル123aには、提供会社(例えば、A社、B社、C社)毎に、機能チェインとSFC構成情報とが対応付けて格納されている。これに対し、
図105Aは、分散管理方式における方式6のA社のSFC管理テーブル124a(必須機能)を示す図である。
図105Bは、分散管理方式における方式6のB社のSFC管理テーブル124b(必須機能)を示す図である。
図105Cは、分散管理方式における方式6のC社のSFC管理テーブル124c(必須機能)を示す図である。
図104に示す様に、集中管理方式では、全てのSFC提供事業者(A社〜C社)分の機能チェインとSFC構成情報とが、1つのテーブルに纏めて格納されている。これに対して、分散管理方式では、
図105A〜
図105Cに示す様に、機能チェインとSFC構成情報とが、各SFC提供事業者(A社〜C社)の有する各テーブルに分散して格納されている。
【0161】
なお、
図106A〜
図106Cは、機能チェインをSFのみで表記したオプション機能を示す。すなわち、
図106Aは、分散管理方式における方式6のA社のSFC管理テーブル125a(オプション機能)を示す図である。
図106Bは、分散管理方式における方式6のB社のSFC管理テーブル125b(オプション機能)を示す図である。
図106Cは、分散管理方式における方式6のC社のSFC管理テーブル125c(オプション機能)を示す図である。
【0162】
(方式6の既存SFCの変更)
続いて、SFC構成を変更した時の処理を、SFC構成要素のSFを変更した場合とSFCを変更した場合とについて説明する。
【0163】
A社がSFC:A1の構成をSF:a1→SF:a2からSF:a1→SF:a6に変更した場合を例に採り、SFC構成要素のSFを変更した場合について説明する。
図107は、方式6における必須機能としての第1のSFC管理テーブル126a〜126cのデータ格納例を示す図である。SFC:A1の構成変更(SF:a1→SF:a2からSF:a1→SF:a6)が行われると、A社のパス検索装置10の更新部13は、SFC管理テーブル126aのSFC:A1の機能チェインをSF:a1→SF:a6に変更する(J1)。J2では、更新部13は、SFC:A1のSFC構成情報(SFC:B1)により、SFC:A1を利用しているSFC:B1の存在を検知し、B社への通知が必要であると判定する。J3では、通信部15は、B社のパス検索装置10に対し、SFC:A1の機能チェインを変更したこと、該変更の内容、及びSFC構成情報(SFC:B1)を通知する。
【0164】
J4では、上記通知を受けたB社のパス検索装置10の検索部12は、SFC構成情報(SFC:B1)により、SFC:B1が変更対象SFCであることを検知する。J5では、更新部13は、SFC:B1のSFC構成情報により、SFC:B1を利用しているSFC:C1の存在を検知し、C社への通知が必要であると判定する。J6では、通信部15は、C社のパス検索装置10に対し、SFC:B1の機能チェインにて利用されているSFC:A1に変更があったこと、及びSFC構成情報(SFC:C1)を通知する。J7では、B社から通知を受けたC社のパス検索装置10の検索部12は、SFC構成情報(SFC:C1)により、SFC:C1が変更対象であること、及び変更内容(SFC:B1の機能チェインにて利用されているSFC:A1の変更)を検知する。
【0165】
図108は、方式6におけるオプション機能としての第1のSFC管理テーブル126d〜126fのデータ格納例を示す図である。
図108に示す様に、オプションを使用する場合には、B社のパス検索装置10の更新部13は、A社のパス検索装置10から受信した信号を用いて、SFCの機能チェイン情報を書き換える。同様に、オプションを使用する場合には、C社のパス検索装置10の更新部13は、B社のパス検索装置10から受信した信号を用いて、SFCの機能チェイン情報を書き換える。
【0166】
B社がSFC:B1の構成をSF:b1→SFC:A1からSF:b1→SFC:A2に変更した場合を例に採り、SFC構成要素のSFCを変更した場合について説明する。
図109は、方式6における必須機能としての第2のSFC管理テーブル126g〜126iのデータ格納例を示す図である。SFC:B1の構成変更(SF:b1→SFC:A1からSF:b1→SFC:A2)が行われると、B社のパス検索装置10の更新部13は、SFC管理テーブル126gのSFC:B1の機能チェインをSF:b1→SFC:A2に変更する(J11)。J12では、検索部12は、J11にて変更したSFC:IDのSFC:B1を抽出する。J13a,J13bでは、更新部13は、変更SFC(SFC:A1,SFC:A2)と、SFC構成情報に記載されているSFC(SFC:C1)とから、変更の通知先がA社及びC社であると判定する。そして、通信部15は、SFC:B1の機能チェインのSFC:A1をSFC:A2へ変更したこと、及びSFC構成情報(SFC:C1)を、A社及びC社のパス検索装置10の各々に通知する。
【0167】
J14a〜J14cでは、B社から変更通知を受けた各社(A社、C社)のパス検索装置10の検索部12は、J13a,J13bでの上記通知に記載されているSFC(SFC:A1,SFC:A2,SFC:C1)をキーとして、変更対象SFCを、SFC:IDから特定する。J15では、A社のパス検索装置10の更新部13は、SFC:A1をキーとして、変更対象SFCを特定したSFC:IDに関し、SFC構成情報からSFC:B1を削除する。J16では、更新部13は、SFC:A2をキーとして、変更対象SFCを特定したSFC:IDに関し、SFC構成情報にSFC:B1を追加する。なお、オプションの処理については、
図108に示した処理と同様の処理が実行される。
【0168】
(方式6の既存SFCの削除)
次に、A社がSFC:A1の提供を中止した場合を例に採り、SFCを削除した場合の処理を説明する。
【0169】
図110は、方式6における必須機能としての第3のSFC管理テーブル127a〜127cのデータ格納例を示す図である。まずJ21では、SFC:A1の提供が中止されたことに伴い、A社のパス検索装置10の更新部13は、SFC:A1を削除する。J22では、更新部13は、SFC:A1のSFC構成情報により、SFC:B1がSFC:A1を利用していることが分かるため、B社への通知が必要であると判定する。J23では、通信部15は、B社のパス検索装置10に対し、SFC:A1の提供を中止したこと、中止する前の機能チェイン、及びSFC:B1がSFC:A1を利用していることを通知する。J24では、該通知を受けたB社のパス検索装置10の検索部12は、SFC:B1が変更対象SFCであることを検知する。J25では、更新部13は、受信情報に基づき、SFC:B1の機能チェインを、SFC:A1からSF:a1→SF:a2に変更し、SF:b1→SF:a1→SF:a2とする。
【0170】
J26では、更新部13は、SFC:B1のSFC構成情報から、SFC:C1がSFC:B1を利用していることが分かるため、C社のパス検索装置10への通知が必要であると判定する。J27では、B社のパス検索装置10の通信部15は、C社のパス検索装置10に対し、SFC:B1の構成変更を行ったこと、構成変更後の機能チェイン、及びSFC:C1がSFC:B1を利用していることを通知する。J28では、該通知を受けたC社のパス検索装置10の検索部12は、SFC:C1が変更対象SFCであることを検知する。J29では、更新部13は、受信情報に基づき、SFC:C1の機能チェインを変更し、SF:c1→SF:b1→SF:a1→SF:a2とする。
【0171】
なお、
図111は、方式6におけるオプション機能としての第3のSFC管理テーブル127d〜127fのデータ格納例を示す図である。
図111に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、SFC:A1を削除する。
【0172】
(方式6の新規SFCの追加)
続いて、SFCを組み合わせて新規SFCの提供を行った場合の処理を説明する。
図112は、方式6における必須機能としての第4のSFC管理テーブル128aのデータ格納例を示す図である。C社が、SFC:C1とSF:d1とを組み合わせた新規のSFC:C3の提供を開始すると、C社のパス検索装置10の更新部13は、SFC:C3をSFC:IDに追加する(K1)。K2では、更新部13は、機能チェインに対し、SFC:C1→SF:d1を書き込む。K3では、検索部12は、SFC:C1をSFC:IDから検索する。K4では、更新部13は、K3にて検索したSFC:C1のSF構成情報にSFC:C3を記載する。
【0173】
なお、
図113は、方式6におけるオプション機能としての第4のSFC管理テーブル128b〜128dのデータ格納例を示す図である。
図113に示す様に、オプションを使用する場合には、パス検索装置10の更新部13は、
図112に示したSFC管理テーブル128aを参照して、SFC:C3のSF機能チェイン情報を書き込む。
【0174】
図114は、方式6における必須機能としての第5のSFC管理テーブル129a〜129bのデータ格納例を示す図である。
図112では、自社のSFCを利用してSFCを追加する例を示したが、
図114では、他社のSFCを利用してSFCを追加する例を示す。以下では、SFC:A1が、A社が提供しているSFCであるとして、C社が、SFC:A1とSF:d1とを組み合わせた新規のSFC:C3の提供を開始する場合について、説明する。
【0175】
L1では、C社のパス検索装置10の更新部13は、SFC:C3をSFC:IDに追加する。L2では、更新部13は、機能チェインに対し、SFC:A1→SF:d1を書き込む。L3では、SFC:A1はA社が提供しているため、通信部15は、A社のパス検索装置10に対し、追加したSFC:ID(SFC:C3)と機能チェイン(SFC:A1→SF:d1)とを通知する。L4では、該通知を受けたA社のパス検索装置10の検索部12は、C社のパス検索装置10からの通知情報(機能チェイン)を基に、SFC:A1をSFC:IDから検索し、変更対象SFCとする。L5では、更新部13は、C社のパス検索装置10からの通知情報(追加したSFC:ID)を基に、SFC:A1のSFC構成情報にSFC:C1を記載する。L6では、通信部15は、SFC:A1の機能チェインをC社のパス検索装置10に通知する(オプション)。
【0176】
以上説明した様に、本実施例に係るパス検索装置10は、SFC管理テーブル11と、検索部12と、更新部13とを有する。SFC管理テーブル11は、複数の装置(例えば、SF(Service Function))を経由する一連の処理フロー(例えば、SFC(Service Function Chain))の識別情報(例えば、A,C,X等のSFCID)と、上記処理フローの構成を示す構成情報(例えば、B,E等のSFC構成情報)と、上記処理フローに関する関連情報(例えば、C,C1,C2等のSFC関連情報)とを対応付けて記憶する。検索部12は、上記識別情報を有する上記処理フローの構成に変更が生じた場合に、該変更に伴って変更が生じる、上記処理フロー以外の他の処理フローを、上記関連情報を用いて検索する。更新部13は、上記変更が、上記他の処理フローの更新を伴う構成変更である場合、検索部12による検索後に、上記関連情報を用いて、SFC管理テーブル11内の上記構成情報または上記関連情報を更新する一方、上記変更が、上記他の処理フローの更新を伴わない構成変更である場合、検索部12による検索後に、上記構成情報または上記関連情報を更新することなく更新処理を完了する。
【0177】
また、パス検索装置10において、SFC管理テーブル11は、複数のパス検索装置10に分散して複数設けられ、SFC管理テーブル11の各々に記憶された上記識別情報と上記構成情報と上記関連情報とは、上記複数のパス検索装置10間で交換されるものとしてもよい。
【0178】
更に、パス検索装置10において、検索部12は、上記変更の対象となる処理フローの識別情報を上記関連情報に含む処理フローを検索し、更新部13は、上記変更が上記他の処理フローの追加である場合、追加された処理フローの構成情報を含む関連情報を、上記追加された処理フローの関連情報として記憶させ、上記変更が上記処理フローの削除である場合、削除された処理フローの識別情報を上記関連情報に含む処理フローの関連情報から、上記削除された処理フローの関連情報を削除するものとしてもよい。かかる態様では、更新部13は、上記変更が上記他の処理フローの更新を伴う構成変更である場合、該構成変更に伴って使用しなくなる不使用処理フローと新たに使用する新規使用処理フローとを特定し、上記不使用処理フローの関連情報を、上記他の処理フローの関連情報から削除すると共に、上記新規使用処理フローの関連情報を、上記他の処理フローの関連情報として記憶させるものとしてもよい。
【0179】
また、パス検索装置10において、検索部12は、上記変更の対象となる処理フローの関連情報に含まれる処理フローを検索し、更新部13は、上記変更が上記他の処理フローの追加である場合、追加された処理フローを構成する処理フローの関連情報と、該処理フローを構成する処理フローの関連情報とに、上記追加された処理フローの識別情報を記憶させ、上記変更が上記処理フローの削除である場合、削除された処理フローを構成する処理フローの関連情報と、該処理フローを構成する処理フローの関連情報とから、上記削除された処理フローの識別情報と該処理フローの関連情報に記憶された処理フローの識別情報とを削除するものとしてもよい。かかる態様では、更新部13は、上記変更が上記他の処理フローの更新を伴う構成変更である場合、該構成変更に伴って使用しなくなる不使用処理フローと新たに使用する新規使用処理フローとを特定し、上記不使用処理フローの関連情報と、該不使用処理フローを構成する処理フローの関連情報とから、上記削除された処理フローの識別情報と該処理フローの関連情報に記憶された処理フローの識別情報とを削除すると共に、上記新規使用処理フローの関連情報と、該新規使用処理フローを構成する処理フローの関連情報とに、上記削除された処理フローの識別情報と該処理フローの関連情報に記憶された処理フローの識別情報とを記憶させるものとしてもよい。
【0180】
更に、パス検索装置10において、検索部12は、上記変更の対象となる処理フローの関連情報に含まれる処理フローと、該処理フローの関連情報に含まれる処理フローとを検索し、更新部13は、上記変更が上記他の処理フローの追加である場合、追加された処理フローを構成する処理フローの関連情報に、上記追加された処理フローの識別情報を記憶させ、上記変更が上記処理フローの削除である場合、削除された処理フローを構成する処理フローの関連情報から、上記削除された処理フローの識別情報を削除するものとしてもよい。かかる態様では、更新部13は、上記変更が上記他の処理フローの更新を伴う構成変更である場合、該構成変更に伴って使用しなくなる不使用処理フローと新たに使用する新規使用処理フローとを特定し、上記不使用処理フローを構成する処理フローの関連情報から、上記構成変更の行われた処理フローの識別情報を削除すると共に、上記新規使用処理フローを構成する処理フローの関連情報に、上記構成変更の行われた処理フローの識別情報を記憶させるものとしてもよい。
【0181】
また、パス検索装置10において、検索部12は、上記変更の対象となる処理フローの識別情報を上記関連情報に含む処理フローを検索し、更新部13は、上記変更が上記他の処理フローの追加である場合、追加された処理フローの構成情報を含む関連情報を、上記追加された処理フローの関連情報として記憶させ、上記変更が上記処理フローの削除である場合、削除された処理フローの識別情報を上記関連情報に含む処理フローの関連情報から、上記削除された処理フローの関連情報を削除するものとしてもよい。かかる態様では、更新部13は、上記変更が上記他の処理フローの更新を伴う構成変更である場合、上記変更の対象となる処理フローの元の構成と新規の構成とを比較することにより、上記構成変更に伴って使用しなくなる不使用処理フローと新たに使用する新規使用処理フローとを特定し、上記不使用処理フローの関連情報を、上記他の処理フローの関連情報から削除すると共に、上記新規使用処理フローの関連情報を、上記他の処理フローの関連情報として記憶させるものとしてもよい。
【0182】
上述した様に、パス検索装置10は、SFの構成要素のパターンマッチングではなく、SFCをキーとした抽出ができるようなSFC管理テーブル11を構成することで、適切な変更対象SFCの抽出を実現する。これにより、パス検索装置10は、SFC等の処理フローを管理するテーブルの更新を適切に行うことができる。
【0183】
(パス検索プログラム)
図115は、パス検索プログラムによる情報処理がコンピュータ100を用いて具体的に実現されることを示す図である。
図115に示す様に、コンピュータ100は、例えば、メモリ101と、CPU(Central Processing Unit)102と、ハードディスクドライブインタフェース103と、ディスクドライブインタフェース104と、シリアルポートインタフェース105と、ビデオアダプタ106と、ネットワークインタフェース107とを有し、これらの各部はバスCによって接続される。
【0184】
メモリ101は、
図115に示す様に、ROM(Read Only Memory)101a及びRAM(Random Access Memory)101bを含む。ROM101aは、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース103は、
図115に示す様に、ハードディスクドライブ108に接続される。ディスクドライブインタフェース104は、
図115に示す様に、ディスクドライブ109に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ109に挿入される。シリアルポートインタフェース105は、
図115に示す様に、例えばマウス110、キーボード111に接続される。ビデオアダプタ106は、
図115に示す様に、例えばディスプレイ112に接続される。
【0185】
ここで、
図115に示す様に、ハードディスクドライブ108は、例えば、OS(Operating System)108a、アプリケーションプログラム108b、プログラムモジュール108c、プログラムデータ108d、SFCの識別情報、構成情報、関連情報等を含むSFC管理テーブル11を記憶する。すなわち、開示の技術に係るパス検索プログラムは、コンピュータ100によって実行される指令が記述されたプログラムモジュール108cとして、例えばハードディスクドライブ108に記憶される。具体的には、上記実施例で説明した検索部12、更新部13、入出力部14、通信部15の各々と同様の情報処理を実行する各種手順が記述されたプログラムモジュール108cが、ハードディスクドライブ108に記憶される。また、パス検索プログラムによる情報処理に用いられるデータは、プログラムデータ108dとして、例えばハードディスクドライブ108に記憶される。そして、CPU102が、ハードディスクドライブ108に記憶されたプログラムモジュール108cやプログラムデータ108dを必要に応じてRAM101bに読み出し、上記各種手順を実行する。
【0186】
なお、パス検索プログラムに係るプログラムモジュール108cやプログラムデータ108dは、ハードディスクドライブ108に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ109等を介してCPU102によって読み出されてもよい。あるいは、パス検索プログラムに係るプログラムモジュール108cやプログラムデータ108dは、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶され、ネットワークインタフェース107を介してCPU102によって読み出されてもよい。
【0187】
上記実施例では、説明の便宜上、サービスファンクションチェイニング技術を例示して説明したが、本発明は、サービスファンクションチェイニング技術に限定されるものではない。すなわち、本発明は、種々の機能をネットワーク上に分散し、分散された装置間を適切な順序に従ってパケットルーチングすることでサービスを提供する様々な技術に適用可能である。
【0188】
また、上述したパス検索装置10の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は、図示のものに限らず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することもできる。例えば、パス検索装置10に関し、検索部12と更新部13、あるいは、検索部12と入出力部14を1つの構成要素として統合してもよい。反対に、更新部13に関し、SFCの関連情報や識別情報を記憶させる部分と、SFCの関連情報や識別情報を削除する部分とに分散してもよい。更に、ハードディスクドライブ108を、パス検索装置10の外部装置として、ネットワークやケーブル経由で接続する様にしてもよい。
【0189】
更に、上記説明では、SFC情報の持たせ方と、管理方式(集中、分散)とに応じて、テーブル作成方法、変更を行うべきSFCの構成要素抽出方法(検索方法)、テーブル更新方法を採用した。しかしながら、各々の方式や方法に係るパス検索装置10は、他の方式や方法に特有の構成要素を併せて有するものとしてもよい。また、各方式や方法毎の組合せについても、2つに限らず、3つの組合せ等、任意の形態を採ることが可能である。例えば、分散管理方式のパス検索装置10の各々が、テーブル作成方法、変更を行うべきSFCの構成要素抽出方法、テーブル更新方法の内、少なくとも1つの方法を採用するものとしてもよい。