(57)【要約】【課題】ネットワーク符号化を利用し、閾値秘密分散された複数の部分コンテンツや冗長化された複数の同一コンテンツを異なる経路で配信するシステムにおいて、障害に対する信頼性の高い配信経路を決定する。【解決手段】ネットワーク符号化を適用すれば、宛先が異なる複数の部分コンテンツは一つに符号化できるので、配信先ノードd(2)，d(4)へ配信される２つの部分コンテンツ１を一つの符号化データDD1にまとめ、配信先ノードd(1)，d(3)，d(4)へ配信される３つの部分コンテンツ２を一つの符号化データDD2にまとめ、配信先ノードd(3)，d(D)に配信される２つの部分コンテンツ３および配信先ノードd(4)に配信される部分コンテンツ４を一つの符号化データDD3にまとめ、配信先ノードd(4)，d(K)へ配信される２つの部分コンテンツNを一つの符号化データDD4にまとめられる。【選択図】図５
2014120997.tif 000002
【特許請求の範囲】
【請求項１】
配信対象のコンテンツが(K,N)閾値秘密分散法によりN分割されてネットワーク上の配信元ノードに分散配置され、複数の配信元ノードから複数の配信先ノードへ、ネットワーク符号化を適用した中継ノードを介して複数の経路で各部分コンテンツを配信するコンテンツ配信システムの経路計算装置において、
符号化ネットワークのトポロジに基づいて、複数の配信元ノードから各配信先ノードへ至るリンク独立な経路の最大数mを第１の整数計画法で求解して、各配信先ノードに関するリンク独立な経路の最大数mの最小数Mを求める第１求解手段と、
N本の経路をM本のリンクに均等に配分するときに、N-K+1本の経路が含まれ得る最少のリンク数Fを算出する多重数算出手段と、
N-K+1本以上の経路が含まれるF本以下のリンク組でリンク障害が生じる多重リンク障害の発生によって、元のコンテンツを復元できなくなる配信先ノード数の期待値を最小化するような各配信先ノードに至るN本の経路を第２の整数計画法で求解する第２求解手段とを具備し、
前記第２求解手段は、各中継ノードの出リンクの使用帯域を、当該出リンクを通過して同一宛先に至る経路数のうちの最大値に見積もり、ネットワーク符号化された部分コンテンツが損失した場合は、符号化の元になった全ての部分コンテンツが損失となるような制約条件を設けることを特徴とするコンテンツ配信システムの経路計算装置。
【請求項２】
前記ネットワークのトポロジを、各配信元ノードの上流側に擬似発ノードが仮想的に設けられて各配信元ノードと仮想リンクで接続された仮想トポロジに変換する仮想トポロジ変換手段をさらに具備し、
前記第１求解手段および第２求解手段は、各配信元ノードと接続される各仮想リンクの容量を、当該配信元ノードが保有している部分コンテンツ数に相当する値に設定し、前記擬似発ノードから各仮想リンクおよび各配信元ノードを経由して配信先ノードへ至る経路を求解することを特徴とする請求項１に記載のコンテンツ配信システムの経路計算装置。
【請求項３】
配信対象のコンテンツが(K，N)閾値秘密分散法によりN分割されてネットワーク上の複数の配信元ノードに分散配置され、各配信元ノードから複数の配信先ノードへ、ネットワーク符号化を適用した中継ノードを介して複数の経路で各部分コンテンツを配信するための経路を計算するコンテンツ配信システムの経路計算方法において、
コンピュータが、符号化ネットワークのトポロジに基づいて、各配信元ノードから配信先ノードへ至るリンク独立な経路の最大数mを第１の整数計画法で求解して、各配信先ノードに関するリンク独立な経路の最大数mの最小数Mを求める手順と、
コンピュータが、N本の経路をM本のリンクに均等に配分するときに、N-K+1本の経路が含まれ得る最少のリンク数Fを算出する手順と、
コンピュータが、N-K+1本以上の経路が含まれるF本以下のリンク組でリンク障害が生じる多重リンク障害の発生によって、元のコンテンツを復元できなくなる配信先ノード数の期待値を最小化するような各配信先ノードに至るN本の経路を第２の整数計画法で求解する手順とを含み、
前記第２の整数計画法では、各中継ノードの出リンクの使用帯域が、当該出リンクを通過して同一宛先に至る経路数のうちの最大値に見積もり、ネットワーク符号化された部分コンテンツが損失した場合は、符号化の元になった全ての部分コンテンツが損失となるような制約条件を設けることを特徴とするコンテンツ配信システムの経路計算方法。
【請求項４】
コンピュータが、各配信元ノードの上流側に擬似発ノードを仮想的に設けて各配信元ノードと仮想リンクで接続する手順と、
コンピュータが、各配信元ノードと接続される仮想リンクの容量を、当該配信元ノードが保有している部分コンテンツ数に相当する値に設定する手順とを更に含み、
前記第１の整数計画法および第２の整数計画法では、前記擬似発ノードから各仮想リンクおよび各配信元ノードを経由して配信先ノードへ至る経路が求解されることを特徴とする請求項３に記載のコンテンツ配信システムの経路計算方法。
【請求項５】
配信対象のコンテンツが(K,N)閾値秘密分散法によりN分割されてネットワーク上の複数の配信元ノードに分散配置され、各配信元ノードから複数の配信先ノードへ、ネットワーク符号化を適用した中継ノードを介して複数の経路で各部分コンテンツを配信するための経路を計算するコンテンツ配信システムの経路計算方法において、
多重リンク障害によって元のコンテンツを復元できなくなる配信先ノード数の期待値を小さくするコンテンツ配信経路を、各リンクのコストを更新しながら、各配信先ノードへの経路数がN本になるまで、最小コスト経路計算を繰り返して配信先ノードごとに設定する手順と、
前記最小コスト経路計算において、ネットワーク符号化が実施されるリンクから配信先ノードまで、ネットワーク符号化データが配信される実経路と経路が同一の仮想経路を設定し、ネットワーク符号化される一方の部分コンテンツが実経路、他方の部分コンテンツが仮想経路、でそれぞれ転送されるトポロジを仮想する手順とを含むことを特徴とするコンテンツ配信システムの経路計算方法。
【請求項６】
前記最小コスト経路計算では、各リンクのコストが、既にN本の配信経路が決定している配信先ノードの中で、元のコンテンツを復元できなくなる配信先ノード数の期待値と、今回の配信先ノードにおいてN -K+1個以上の部分コンテンツを復元できなくなる確率との和として算出されることを特徴とする請求項５に記載のコンテンツ配信システムの経路計算方法。
【請求項７】
前記最小コスト経路計算において、各配信先ノードに至る配信経路が各リンクの容量分通過することを許容することを特徴とする請求項５または６に記載のコンテンツ配信システムの経路計算方法。
【請求項８】
各配信元ノードの上流側に擬似発ノードを仮想的に設けて各配信元ノードと仮想リンクで接続する手順と、
擬似発ノードと各配信元ノードとが接続される各仮想リンクの容量を、当該配信元ノードが保有している部分コンテンツ数に相当する値に設定する手順とをさらに含むことを特徴とする請求項５ないし７のいずれかに記載のコンテンツ配信システムの経路計算方法。
【請求項９】
前記最小コスト経路計算において、最小コスト端点を選択する度に、擬似発ノードから当該端点までの配信経路に基づいて当該端点の出リンクコストが算出されることを特徴とする請求項５ないし８のいずれかに記載のコンテンツ配信システムの経路計算方法。
【請求項１０】
前記リンクコストの初期値が、既に全ての配信経路が決定している配信先ノードの中で、当該リンクを含む多重リンク障害によって元のコンテンツが復元できなくなる配信先ノード数の期待値に設定されることを特徴とする５ないし９のいずれかに記載のコンテンツ配信システムの経路計算方法。
【請求項１１】
前記リンクコストの算出において、新たな配信経路が設定されていない場合に、当該配信先ノードに向かうN-K+1個以上の部分コンテンツが損失になる多重リンク障害の発生確率と、新たな配信経路が当該リンクを通過することにより、当該配信先ノードに向かうN-K+1個よりも少ない全ての部分コンテンツもしくはN-K+1個の部分コンテンツが損失になる当該リンクを含む多重リンク障害の発生確率とをリンクコストの初期値に加算することを特徴とする請求項１０に記載のコンテンツ配信システムの経路計算方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ配信システムの経路計算方法および装置に係り、特に、一つのコンテンツを複数の部分コンテンツに分割してネットワーク上に分散配置し、かつネットワーク符号化（network coding）によるスループットの向上を図りながら、各部分コンテンツを複数の配信先ノードへ複数の経路で配信する閾値秘密分散に好適なコンテンツ配信システムの経路計算方法および装置に関する。
【背景技術】
【０００２】
非特許文献１には、１つのコンテンツを、暗号化されたn個の部分コンテンツに分割し、n個の部分コンテンツのうち、k (≦n) 個以上の部分コンテンツが集まらないと元のコンテンツを復元できないように秘密分散する閾値秘密分散方法が開示されている。
【０００３】
特許文献１，２には、複数のノードで秘密分散保持されているN個の部分コンテンツをネットワーク経由で配信先ノードまで転送する際に、多重リンク障害によってN-K個よりも多い数の部分コンテンツが転送途中で損失となり、配信先ノードで元のコンテンツを復元できなくなる確率が最小となる配信経路を計算する方法が開示されている。
【０００４】
非特許文献２には、中継ノードにおいて、ネットワーク符号化技術を用いて、異なる配信先ノードへ配信される複数の部分コンテンツを１つの部分コンテンツに符号化して転送することにより、リンク帯域の有効利用を図る技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特願２０１２−２３９９３号
【特許文献２】特願２０１２−４５３１５号
【非特許文献】
【０００６】
【非特許文献１】Shamir, Adi (1979), "How to share a secret", Communications of the ACM 22 (11): 612-613
【非特許文献２】R. Ahlswede, et.al., "Network information flow," IEEE Trans. Inf. Theory, vol. 46, no. 4, pp. 1204-1216, July 2000.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
N個の部分コンテンツから任意のK個の部分コンテンツを集めれば元データを復元できるが(K-1)個の部分コンテンツからでは元データを復元できない（K,N）閾値秘密分散では、N個の部分コンテンツがネットワーク上の配信元ノードに分散配置され、元データを復元しようとする配信先ノードに対して、部分コンテンツを保持する配信元ノードから各配信先ノードへ部分コンテンツが配信される。
【０００８】
（K,N）閾値秘密分散では、N個の部分コンテンツから任意のK個の部分コンテンツを集めれば元のコンテンツを復元できるので、複数のノードで秘密分散保持されているN個の部分コンテンツを配信先ノードまでネットワークを介して転送する際、転送途中でN-K個の部分コンテンツが失われても、配信先ノードで元のコンテンツを復元できる。
【０００９】
すなわち、（K,N）閾値秘密分散では、多重リンク障害によってN-K+1個以上の部分コンテンツが失われてしまう確率を最小化できる部分コンテンツの配信経路を設定できれば、多重リンク障害により元のコンテンツを復元できなくなる確率を最小化できる。
【００１０】
一方、各部分コンテンツの配信経路が同一リンクを通っていると、当該リンクに障害が発生した場合にはN-K本未満の多重リンク障害でも元のコンテンツを復元できなくなってしまう場合がある。したがって、（K,N）閾値秘密分散を適用したデータ配信では、各配信経路は同一リンクを通らない経路（リンク独立経路）であることが望ましい。
【００１１】
しかしながら、従来技術では（K,N）閾値秘密分散を利用して部分コンテンツを複数経路で配信する際に、部分コンテンツがリンク独立経路を通るようにすることで、多重リンク障害により元のコンテンツを復元できなくなる確率を最小化できる経路を簡単に計算することができなかった。
【００１２】
一方、複数の配信先ノードのそれぞれにN個の部分コンテンツを配信する場合、ネットワーク符号化を適用すればスループットの向上が期待できる。しかしながら、従来のネットワーク符号化では、障害に対する信頼性が十分に考慮されていなかった。
本発明の目的は、上記した従来技術の課題を解決し、ネットワーク符号化を利用し、閾値秘密分散された複数の部分コンテンツや冗長化された複数の同一コンテンツを異なる経路で配信するシステムにおいて、障害に対する信頼性の高い配信経路を決定できるコンテンツ配信システムの経路計算方法および装置を提供することにある。
【課題を解決するための手段】
【００１３】
上記の目的を達成するために、本発明は、配信対象のコンテンツが(K,N)閾値秘密分散法によりN分割されてネットワーク上の配信元ノードに分散配置され、各配信元ノードから複数の配信先ノードへ、ネットワーク符号化を適用した中継ノードを介して複数の経路で各部分コンテンツを配信するコンテンツ配信システムの経路計算装置において、以下のような手段を講じた点に特徴がある。
【００１４】
(1)符号化ネットワークのトポロジに基づいて、各配信元ノードから配信先ノードへ至るリンク独立な経路の最大数mを第１の整数計画法で求解して、各配信先ノードに関するリンク独立な経路の最大数mの最小数Mを求める第１求解手段と、N本の経路をM本のリンクに均等に配分するときに、N-K+1本の経路が含まれ得る最少のリンク数Fを算出する多重数算出手段と、N-K+1本以上の経路が含まれるF本のリンク組でリンク障害が生じるＦ重リンク障害の発生によって、元のコンテンツを復元できなくなる配信先ノード数の期待値を最小化するような各配信先ノードに至るN本の経路を第２の整数計画法で求解する第２求解手段とを設け、第２求解手段は、各中継ノードの出リンクの使用帯域を、当該出リンクを通過して同一宛先に至る経路数のうちの最大値に見積もり、ネットワーク符号化された部分コンテンツが損失した場合は、符号化の元になった全ての部分コンテンツが損失となるような制約条件を設けるようにした。
【００１５】
(2)ネットワークのトポロジを、各配信元ノードの上流側に擬似発ノードが仮想的に設けられて各配信元ノードと仮想リンクで接続された仮想トポロジに変換する仮想トポロジ変換手段をさらに設けた。そして、第１求解手段および第２求解手段は、各配信元ノードと接続される各仮想リンクの容量を、当該配信元ノードが保有している部分コンテンツ数に相当する値に設定し、擬似発ノードから各仮想リンクおよび各配信元ノードを経由して配信先ノードへ至る経路を求解するようにした。
【００１６】
(3)多重リンク障害によって元のコンテンツを復元できなくなる配信先ノード数の期待値を小さくするコンテンツ配信経路を、各リンクのコストを更新しながら、経路数がN本になるまで、最小コスト経路計算を繰り返して配信先ノードごとに設定する手順と、最小コスト経路計算において、ネットワーク符号化が実施されるリンクから配信先ノードまで、ネットワーク符号化データが配信される実経路と経路が同一でリンク使用帯域がゼロである仮想経路を設定し、ネットワーク符号化される一方の部分コンテンツが実経路、他方の部分コンテンツが仮想経路、でそれぞれ転送されるトポロジを仮想する手順とを含むようにした。
【発明の効果】
【００１７】
本発明によれば、以下のような効果が達成される。
(1)複数のノードで閾値秘密分散保持されているN個の部分コンテンツを複数の配信先ノードまでネットワーク符号化を適用して配信する際に、リンク帯域の有効利用を図りつつ、多重リンク障害によって元のコンテンツが復元できなくなる配信先ノード数の期待値を最小化する高信頼なコンテンツ配信経路の最適計算が可能となる。
【００１８】
(2)複数の配信元ノードで閾値秘密分散保持されているN個の部分コンテンツを配信先ノードまでネットワークを介して転送する際に、多重リンク障害によって転送途中のN-K+1個以上の部分コンテンツが損失する確率を最小化することにより、配信先ノードで元のコンテンツを復元できる確率を最大化する高信頼なコンテンツ配信経路の最適計算が可能となる。
【００１９】
(3)各配信元ノードの上流側に擬似発ノードを仮想的に設けると共に、擬似発ノードと各配信元ノードとを接続する仮想リンクの容量が、当該配信元ノードが保有している部分コンテンツ数に相当する値に設定されるので、各配信元ノードが保持する部分コンテンツ数を考慮した経路計算が可能になる。
【図面の簡単な説明】
【００２０】
【図１】本発明が適用されるコンテンツ配信システムのネットワーク構成を示した図である。
【図２】配信経路計算サーバの第１実施形態の機能ブロック図である。
【図３】本発明の一実施形態の動作を示したフローチャートである。
【図４】ネットワークトポロジの変形例を示した図である。
【図５】各リンクにおけるネットワーク符号化の適用方法を示した図である。
【図６】配信経路計算サーバの第２実施形態の機能ブロック図である。
【図７】第２実施形態に係るコンテンツ配信経路の設定手順を示したフローチャートである。
【図８】ネットワーク符号化を利用した場合のリンク障害と損失データとの関係を、仮想経路の概念を導入して説明するための図である。
【図９】最小コスト経路の計算手順を示したフローチャートである。
【図１０】リンクコストCost lの初期値の算出手順を示したフローチャートである。
【図１１】リンクコストCost lを算出する手順を示したフローチャートである。
【図１２】リンクコストの算出例を模式的に示した図である。
【発明を実施するための形態】
【００２１】
以下、図面を参照して本発明の実施の形態について詳細に説明する。図１は、本発明の配信経路計算方法および装置が適用されるコンテンツ配信システムのネットワーク構成を示した図であり、ここでは、(K，N)閾値秘密分散を利用した複数経路によるコンテンツ配信を例にして説明する。
【００２２】
制御対象のネットワークには、コンテンツを保持するS個の配信元ノードsが配置され、各配信元ノードsには、１つのコンテンツをN分割して得られるN個の部分コンテンツが分散配置されている。各配信元ノードsに分散配置される部分コンテンツは一つとは限らず、複数の異なる部分コンテンツが配置される場合もある。D個の各配信先ノードdには、S個の各配信元ノードからN個の部分コンテンツがそれぞれ配信される。
【００２３】
各配信元ノードsから送信された部分コンテンツは、複数の中継ノードを経由して各配信先ノードdへ配信される。各中継ノードは、宛先の配信先ノードdが異なる複数の部分コンテンツを符号化して一つの符号化データにまとめる周知のネットワーク符号化機能を備える。
【００２４】
このようなネットワーク符号化を用いれば、各中継ノードは、互いに異なる配信先ノードに転送される任意の部分コンテンツを１つの部分コンテンツに符号化して、その出リンクから転送する。このとき、リンク障害によってネットワーク符号化された部分コンテンツが損失すると、配信先ノードでは、符号化の元になった複数の部分コンテンツをネットワーク復号できなくなる可能性がある。
【００２５】
各配信先ノードdは、ネットワーク符号化により複数の部分コンテンツが一つにまとめられた符号化データを復号して各部分コンテンツを再現するネットワーク復号機能、および少なくともK個の部分コンテンツから元のコンテンツを復元するコンテンツ復元機能を備えている。
【００２６】
配信経路計算サーバ１は、各配信元ノードsから各配信先ノードdへ、ネットワーク符号化を利用してN個の部分コンテンツを漏れなく配信する経路を決定して各配信元ノードsへ通知し、その配信を要求する。各配信元ノードsは、保持している部分コンテンツを、通知された配信経路で各配信先ノードdへ配信する。
【００２７】
なお、配信経路計算サーバ１から各配信元ノードsへ配信要求される部分コンテンツ数は一つとは限らず、複数の場合もある。そして、複数の部分コンテンツを配信する配信元ノードsに対しては、部分コンテンツ数分の複数の経路が通知される。
本実施形態では、ネットワーク符号化によるリンク帯域使用の効率化を図りながら、多重リンク障害によって元のコンテンツを復元できなくなる配信先ノード数の期待値を最小化するような配信経路が計算される。
【００２８】
[第１実施例]
図２は、本発明の第１実施形態に係る配信経路計算サーバ（コンピュータ）１の主要部の構成を示した機能ブロック図であり、ここでは、本発明の説明に不要な構成は図示が省略されている。
【００２９】
トポロジ取得部１００は、前記ネットワークのトポロジを取得する。トポロジ変形部１０１は、取得されたネットワークの実トポロジを、後に詳述するように、図４に示した仮想トポロジに変形する。第１求解部１０２は、各配信元ノードsから各配信先ノードdへ至るリンク独立な経路の最大数mを、後述する第１の整数計画法により求解し、さらにはD個の各配信先ノードdに関して求めたリンク独立な経路の最大数mの中の最小値Mを求める。
【００３０】
多重数計算部１０３は、N個の部分コンテンツを転送するためのN本の経路を、配信元ノードsと配信先ノードdとの間の最小カットセットを構成するM個のリンクに均等に配分するときに、N-K+1本の経路が含まれる最少のリンク数Fを算出する。
【００３１】
第２求解部１０４は、N-K+1本以上の経路が含まれることになるF本以下のリンク全てにリンク障害が生じるF重リンク障害以下の多重リンク障害の発生によって、元のコンテンツを復元できなくなる配信先ノード数の期待値を最小化するような各配信先ノードに至るN本の経路を、後述する第２の整数計画法により、ネットワーク符号化を用いたリンク帯域の有効利用を図りながら求解する。経路通知部１０５は、前記N本の経路の決定結果を、対応する各配信元ノードsへ通知する。
【００３２】
次いで、フローチャートを参照して本発明の動作について説明する。図３は、本発明の一実施形態に係るコンテンツ配信経路の設定手順を示したフローチャートである。
ステップＳ１では、ネットワークの実トポロジ(Node，Link)が、各リンクlinkの障害確率と共に前記トポロジ取得部１０１により取得される。ステップＳ２では、ネットワークのトポロジが、前記トポロジ変形部１０２により図４のように仮想的に変形される。
【００３３】
すなわち、各配信ノードs(s)の上流側に一つの擬似発ノードvsを仮想的に設けて各配信元ノードs(s)と仮想リンクvlinkで接続する。各仮想リンクvlinkの障害確率はゼロとし、各仮想リンクvlinkの容量は、接続している各配信元ノードs(s)が保有している部分コンテンツ数C(s)に相当する値に設定する。このようなネットワーク変形により、各配信元ノードs(s)が保持している部分コンテンツ数C(s)を考慮してコンテンツ配信経路を計算できるようになる。
【００３４】
ステップＳ３では、部分コンテンツを保持しているS個の各配信元ノードs(s)から各配信先ノードdに至る、互いに共通のリンクを含まないリンク独立経路の最大数mが、前記第１求解部１０２において、以下の第１の整数計画法を解くことにより求められる。第１の整数計画法では、定数が以下のように定義される。
【００３５】
・node：ネットワークを構成するノード（擬似発ノードは含まない）
・Node：ノードnodeの集合
・d：配信先ノード
・link：ネットワークを構成するリンク（仮想リンクも含む）
・Link：リンクlinkの集合
・vs：擬似発ノード
・vlink：仮想リンク
・VLink：仮想リンクの集合
・s(vlink)：仮想リンクvlinkが接続する配信元ノード
・Cs(vlink)：配信元ノードs(vlink)が保有している部分コンテンツ数
・Clink：仮想ノードを除く各リンクlinkの容量
・INnode：ノードnodeを終点とするリンクの集合
・OUTnode：ノードnodeを始点とするリンクの集合
【００３６】
また、本実施形態では変数が以下のように定義される。
・x link：リンクlinkを通過するリンク独立経路の本数を表す整数変数
・m：リンク独立な経路の本数
【００３７】
前記第１求解部１０２における第１の整数計画法では、制約式が次式(1)〜(4)で与えられる。これらは経路保存則に係り、(1)式は、擬似発ノードvsから出る経路の総数がリンク独立な経路数mと等しくなるという制約である。(2)式は、各配信先ノードdに入る経路数がmであるという制約である。(3)式は、各配信先ノードdから出る経路数がゼロであるという制約である。(4)式は、擬似発ノードvsおよび配信先ノードd以外のノード（中継ノード）では、入る経路数と出る経路数とが同一であるという制約である。
【００３８】
【数１】
2014120997.tif 000003
【００３９】
【数２】
2014120997.tif 000004
【００４０】
【数３】
2014120997.tif 000005
【００４１】
【数４】
2014120997.tif 000006
【００４２】
また、本実施形態では全ての経路がリンク独立でなければならず、各リンクを複数の経路が通ることは無いので、次式(5)がリンク独立の条件として与えられる。
【００４３】
【数５】
2014120997.tif 000007
【００４４】
さらに、本実施形態では各配信元ノードsが保持する部分コンテンツ数の制約条件が次式(6)で与えられる。これは、擬似発ノードvsと各配信元ノードsとを結ぶ仮想リンクvlinkを通過する経路の本数、すなわち配信元ノードsから配信される部分コンテンツ数は、各配信元ノードsが保持している部分コンテンツ数を超えないという条件となる。
【００４５】
【数６】
2014120997.tif 000008
【００４６】
さらに、本実施形態ではリンクlinkの容量条件が次式(7)で与えられる。これは、各リンクlinkを通過するリンク独立な経路の本数が当該リンクClinkを越えないという条件となる。
【００４７】
【数７】
2014120997.tif 000009
【００４８】
ここで、最大化すべき目的関数Objは変数mなので、ステップＳ３では、上記の第１整数計画法を解いてリンク独立な経路の最大数mが求められる。そして、この最大数mおよび前記変数x linkに基づいて全てのリンク独立経路が具体的に求まる。
【００４９】
一方、リンク独立な経路の最大数がmであるということは、各配信元ノードsから各配信先ノードdに至るN本の経路全てが、あるm本のリンク組に含まれる何れかのリンクを必ず通過することを意味する。したがって、D個の各配信先ノードdに関して求めたリンク独立な経路の最大数mの中の最小値をMとした時、リンク独立経路の最大数がMであるような配信先ノードdに至るN本の経路は、あるM本のリンクの何れかを通過することになる。本実施形態では、このようなN本の経路を、リンク容量は考慮しないで、できるだけ均等（整数単位で最も均等）にM本のリンクに分配することを考える。
【００５０】
ステップＳ４では、前記多重数計算部１０３において、N本の経路をM本のリンクに均等に配分するときに、N-K+1本の経路が含まれ得る最少のリンク数Fが算出される。すなわち、i (=1〜M)番目のリンクには、次式(8)で与えられるhi本の経路が配分される。
【００５１】
【数８】
2014120997.tif 000010
また、Hは次式(9)で与えられる。
【００５２】
【数９】
2014120997.tif 000011
【００５３】
この時、リンク数Ｆは、配分される経路数の総和がN-K+1本以上となる最小リンク数として、次式(10)で与えられる。
【００５４】
【数１０】
2014120997.tif 000012
【００５５】
このようにして算出されたリンク数Fは、M本のうちF本のリンクが障害となるF重リンク障害が発生すると、部分コンテンツを転送するためのN本の経路の内、必ずN-K+1本以上の経路に損失が生じて元のコンテンツを復元できなくなること、すなわち各リンク組に属するF本のリンクに損失が生じるとN-K+1個以上の部分コンテンツに損失が生じ得ることを意味する。このような場合は、ネットワーク符号化が実行されなくてもN-K+1個以上の部分コンテンツが失われ、配信先ノードdでは元のコンテンツを復元できなくなる。
【００５６】
なお、リンクの容量制約によって、F本よりも少ないリンクの多重障害でも、ある配信先ノードに至るN-K+1本以上の経路が障害になる可能性もあるが、リンクの容量制約が全く存在しない場合でも、F重リンク障害によって、ある配信先ノードに至るN-K+1本以上の経路が必ず障害になる。
【００５７】
そこで、ステップＳ５以降では、各リンクの障害確率は十分に小さいと仮定して、F重リンク障害以下の多重リンク障害のみを考慮し、N-K+1個以上の部分コンテンツに損失が生じ得るF重リンク障害以下の多重リンク障害の発生確率を最小化するN本の配信経路が、前記第２求解部１０４において、第２の整数計画法により求解される。
【００５８】
換言すれば、F重リンク障害以下の多重リンク障害が発生した時、元のコンテンツを復元できなくなる配信先ノード数の期待値が最小となるような配信経路が求められる。この時、各中継ノードにおいて、ネットワーク符号化を用いて複数の部分コンテンツを一つの符号化データに変換して出リンク上に転送することにより、出リンク帯域の有効利用を図ることも考える。
【００５９】
また、各部分コンテンツは、同一出リンク上に転送される配信先ノードが異なる全ての部分コンテンツと共にネットワーク符号化され、かつ符号化された当該各部分コンテンツが損失した場合は、符号化の元になった全ての部分コンテンツが、配信先ノードにおいてネットワーク復号できないと考える。
【００６０】
本実施形態では、第２の整数計画法における定数および集合が以下のように定義される。なお、前記と同一の符号は同一または同等部分を表しているので、その説明は省略する。
・Dest：配信先ノードの集合
・FLink：仮想リンクを含まないF本以下のリンクの組合せの集合
・FLinkf：FLink内のf番目の組合せに含まれるリンクの集合
・Plink：予め与えられているリンクlinkの障害確率
【００６１】
また、第２の整数計画法における変数は以下の様に定義される。
・Xlink(d,n)：配信先ノードd(1〜D)に至るn（1〜N）番目の経路が、注目しているリンクlinkを通過する時に「1」、通過しない時に「0」であるバイナリ変数
・XClink(d,n,n')：配信先ノードd（1〜D）に至るn（1〜N）番目の経路がリンクlinkを通過し、かつ通過するn番目の部分コンテンツが、n'（1〜N）番目の部分コンテンツとネットワーク符号化されている時に「1」、符号化されていない時に「0」であるバイナリ変数
・Yf(d,n)：リンク組合せFLink fの多重リンク障害によって、配信先ノードd（1〜D）において、n（1〜N）番目の部分コンテンツをネットワーク復号できない時「1」、復号できる時に「0」であるバイナリ変数
・Zf(d)：リンク組合せFLink fの多重リンク障害によって、配信先ノードd（1〜D）において、N-K+1個以上の部分コンテンツをネットワーク復号できず、元のコンテンツを復元できない時に「1」、復元できる時に「0」であるバイナリ変数
【００６２】
さらに、この第２の整数計画法では制約式が次式(11)〜(13)で与えられる。(11)式は、各N本の経路が、擬似発ノードから出る仮想リンクの中の１本だけを通ること、すなわちN本の経路は擬似発ノードから出る仮想リンクのいずれかを通るという経路保存則である。(12)式は、全ての監視経路は、配信先ノードに入るリンクのいずれかを１回だけ通過し、配信先ノードから出るリンクを通過することはないという経路保存則である。(13)式は、全ての経路は、配信先ノードd以外の中継ノードを始点とするリンクおよび終点とするリンクを１回だけ通過するか、どちらも通過しないという経路保存則である。
【００６３】
【数１１】
2014120997.tif 000013
【００６４】
【数１２】
2014120997.tif 000014
【００６５】
【数１３】
2014120997.tif 000015
【００６６】
また、本実施形態では仮想リンクvlinkの容量条件が次式(14)で与えられる。これは、擬似発ノードvsと各配信元ノードsとを結ぶ仮想リンクvlinkを通過する経路の本数、すなわち配信元ノードsから配信される部分コンテンツ数は、当該配信元ノードsが保持している部分コンテンツ数を超えないという条件となる。
【００６７】
【数１４】
2014120997.tif 000016
【００６８】
ネットワーク符号化を採用すれば、各中継ノードでは、配信先ノードdが異なる複数の部分コンテンツを１つの符号化データに変換して出リンクへ転送できる。すなわち、各出リンクを通過して異なる配信先ノードに至る複数の配信経路は、互いに出リンク帯域を共用することができる。従って、各リンクの使用帯域は、当該リンクを通過して各配信先ノードに至る配信経路数の最大数となる。
【００６９】
図５は、ネットワーク符号化により各中継ノードの出リンクにおいて帯域が複数の経路により共有される様子を模式的に表現した図であり、横軸はD個の配信先ノードdを示し、縦軸はN個の配信経路を示している。
【００７０】
この出リンクは、配信先ノードd(2)，d(4)へ部分コンテンツ１を配信する２つの経路と、配信先ノードd(1)，d(3)，d(4)へ部分コンテンツ２を配信する３つの経路と、配信先ノードd(3)，d(K)へ部分コンテンツ３を配信する２つの経路と、配信先ノードd(4)へ部分コンテンツ４を配信する経路と、配信先ノードd(4)，d(K)へ部分コンテンツNを配信する２つの経路の、計１０本の経路により共有されていることになる。
【００７１】
ここで、ネットワーク符号化を適用すれば、宛先が異なる複数の部分コンテンツは一つに符号化できるので、例えば、配信先ノードd(2)，d(4)へ配信される２つの部分コンテンツ１を一つの符号化データDD1にまとめ、配信先ノードd(1)，d(3)，d(4)へ配信される３つの部分コンテンツ２を一つの符号化データDD2にまとめ、配信先ノードd(3)，d(D)に配信される２つの部分コンテンツ３および配信先ノードd(4)に配信される部分コンテンツ４を一つの符号化データDD3にまとめ、配信先ノードd(4)，d(K)へ配信される２つの部分コンテンツNを一つの符号化データDD4にまとめれば、本出リンクの使用帯域は、通過する経路数が最大となる配信先ノードd(4)の通過経路数である「4」に抑えられる。
【００７２】
このように、ネットワーク符号化を適用すれば、宛先の異なる複数の部分コンテンツを一つの符号化データにまとめられるので、第２の整数計画法における各リンクの容量制約は以下のようになる。
【００７３】
次式(15)は、ネットワーク符号化を前提としたリンク容量の制約である。各リンクの使用帯域は、当該リンクを通過して各配信先ノードに至る配信経路数のうちの最大数となり、各リンクの使用帯域は、リンク容量以下でなければならない。
【００７４】
【数１５】
2014120997.tif 000017
【００７５】
一方、ネットワーク符号化された部分コンテンツがリンク障害によって失われると、配信先ノードdでは、符号化の元になった複数の部分コンテンツをネットワーク復号できなくなる可能性がある。そこで、各部分コンテンツは、同一出リンク上に転送される、配信先ノードdが異なる全ての部分コンテンツと共にネットワーク符号化され、かつ符号化された当該各部分コンテンツが失われた場合は、符号化の元になった全ての部分コンテンツが、配信先ノードdにおいてネットワーク復号できないと考える。これにより、各中継ノードにおけるネットワーク符号化の際の部分コンテンツの組合せ法を考慮することなく、信頼性に関して安全側のコンテンツ配信経路を計算できる。
【００７６】
例えば、前記図５に示した模式図では、配信先ノードd(4)に向かう部分コンテンツNは、配信先ノードが異なる部分コンテンツ１、２，３とネットワーク符号化されると考える。そして、当該部分コンテンツがリンク障害によって損失になると、配信先ノード４においては、部分コンテンツ１，２，３、Nの全てがネットワーク復号できなくなると考える。この時、第２の整数計画法における制約条件は次式の様になる。次式(16)は、前記仮想リンクvlink上ではXC link(d,n,n')の値が「0」という制約条件である。
【００７７】
【数１６】
2014120997.tif 000018
【００７８】
次式(17)は、配信先ノードd（1〜D）に至るn（1〜N）番目の経路がリンクlinkを通過しない時、XC link(d,n,n')の値は「0」であるという制約条件である。
【００７９】
【数１７】
2014120997.tif 000019
【００８０】
次式(18)は、配信先ノードd（1〜D）に至るn（1〜N）番目の経路がリンクlinkを通過し、かつ異なる配信先ノードに至るn'（1〜N）番目の経路もリンクlinkを通過する時、n番目の部分コンテンツは、n'番目の部分コンテンツとネットワーク符号化されるので、XC link(d,n,n')の値は「1」であるという制約条件である。
【００８１】
【数１８】
2014120997.tif 000020
【００８２】
次式(19)は、配信先ノードd（1〜D）に至るn（1〜N）番目の経路がリンクlinkを通過する時、通過する部分コンテンツは、当然n番目の部分コンテンツを含むので、XC link(d,n,n)の値は「1」であるという制約条件である。
【００８３】
【数１９】
2014120997.tif 000021
【００８４】
次式(20)は、配信先ノードd（1〜D）に至るn（1〜N）番目の経路がリンクlinkを通過し、かつ通過するn番目の部分コンテンツが、上流リンクにおいてn'（1〜N）番目の部分コンテンツとネットワーク符号化されている場合、XC link(d,n,n')の値は「1」であるという制約条件である。
【００８５】
【数２０】
2014120997.tif 000022
【００８６】
次式(21)は、各々の多重リンク障害によって、各配信先ノードにおける部分コンテンツのネットワーク復号ができない条件である。
【００８７】
【数２１】
2014120997.tif 000023
【００８８】
次式(22)は、各々の多重リンク障害によって、各配信先ノードにおける元のコンテンツの復元ができない条件である。なお、符号Aは十分大きな値を持つ正定数である。
【００８９】
【数２２】
2014120997.tif 000024
【００９０】
本発明の目的は、F重リンク障害以下の多重リンク障害によって、N個の部分コンテンツのうち、N-K+1本個以上の部分コンテンツが復元できなくなって元のコンテンツを復元できなくなる配信先ノード数の期待値を最小化することであるから、最小化すべき目的関数は、次式(23)で与えられる。
【００９１】
【数２３】
2014120997.tif 000025
【００９２】
第２の整数計画法を解法することによって得られるXlink(d,n)の値から、各配信先ノードdに至るN本の経路が計算される。
【００９３】
本発明によれば、複数のノードで閾値秘密分散保持されているN個の部分コンテンツを複数の配信先ノードまで符号化ネットワークを介して転送する際に、リンク帯域の有効利用を図りつつ、多重リンク障害によって元のコンテンツが復元できなくなる配信先ノード数の期待値を最小化する高信頼なコンテンツ配信経路の最適計算が可能となる。
【００９４】
図３へ戻り、ステップＳ６では、前記第２の整数計画法を解法することによって得られるXlink(n)の値から、n番目の経路の通過リンクが計算され、計N本の経路の通過リンク情報が、前記経路通知部６から対応する各配信元ノードsへ通知される。
【００９５】
本実施形態によれば、複数のノードで閾値秘密分散保持されているN個の部分コンテンツを、ネットワーク符号化を利用して配信先ノードdまで転送する際に、多重リンク障害によって転送途中のN-K+1個以上の部分コンテンツが損失する確率を最小化して、配信先ノードdで元のコンテンツを復元できる確率を最大化する高信頼なコンテンツ配信経路の最適計算が可能となる。
【００９６】
さらに、本実施形態によれば、各配信元ノードの上流側に擬似発ノードを仮想的に設けると共に、擬似発ノードと各配信元ノードとを接続する仮想リンクの容量が、当該配信元ノードが保有している部分コンテンツ数に相当する値に設定されるので、各配信元ノードが保持する部分コンテンツ数を考慮した経路計算が可能になる。
【００９７】
[第２実施例]
次いで、本発明の第２実施形態について説明する。図６は、前記配信経路計算サーバ（コンピュータ）１の主要部の構成を示した機能ブロック図であり、本発明の説明に不要な構成は図示が省略されている。本実施形態では、多重リンク障害によって元のコンテンツを復元できなくなる配信先ノード数の期待値を小さくするコンテンツ配信経路が、各リンクのコストを更新しながら、最小コスト経路計算によって逐次的に設定される。
【００９８】
トポロジ取得部２０１は、図１に示した監視対象ネットワークNWの実トポロジを各リンクの障害確率と共に取得する。トポロジ変形部２０２は、前記ネットワークNWの実トポロジを、前記第１実施形態と同様に、図４に示した仮想トポロジに変換する。リンク独立経路数算出部２０３は、複数の配信元ノードsから各配信先ノードdへ至るリンク独立な経路の最大数mを、後述する整数計画法により求解する。
【００９９】
経路設定部２０４は、ネットワークを構成する各リンクlのコストCost lを更新するリンクコスト更新部２０４ａを備える。そして、逐次的な経路計算の各段階で、各リンクlのコストCost lを更新しながら、各配信先ノードdへ至る既設の経路数がN本になるまで、最小コスト経路の計算を繰り返して配信経路に追加する。経路通知部２０５は、前記各配信先ノードdへ至るN本の最小コスト経路の設定結果を、対応する各配信元ノードsへ通知する。
【０１００】
次いで、フローチャートを参照して本実施形態の動作を説明する。図７は、第２実施形態に係るコンテンツ配信経路の設定手順を示したフローチャートである。
ステップＳ２０では、ネットワークの実トポロジ(Node，Link)および各リンクlの障害確率が前記トポロジ取得部２０１により取得される。ステップＳ２１では、コンテンツ配信経路を算出するためのネットワークが、前記トポロジ変形部２０２により、前記図４のように仮想的に変形される。
【０１０１】
ステップＳ２２では、配信先ノードdの識別子iに初期値(=1)がセットされる。ステップＳ２３では、部分コンテンツを保持しているS個の配信元ノードsから今回の配信先ノードd(i)に至る多数の経路のうち、互いに共通のリンクを含まないリンク独立な経路の最大数mが、前記リンク独立経路数算出部２０３において、以下の整数計画法を解くことにより求められる。ここでは、整数計画法の定数が以下のように定義される。
【０１０２】
・node：ネットワークを構成するノード（擬似発ノードは含まない）
・Node：ノードnodeの集合
・d：配信先ノード
・link：ネットワークを構成するリンク（仮想リンクも含む）
・Link：リンクlinkの集合
・vs：擬似発ノード
・vlink：仮想リンク
・VLink：仮想リンクの集合
・s(vlink)：仮想リンクvlinkが接続する部分コンテンツ保持ノード
・Cs(vlink)：配信元ノードs(vlink)が保有している部分コンテンツ数
・INnode：ノードnodeを終点とするリンクの集合
・OUTnode：ノードnodeを始点とするリンクの集合
【０１０３】
また、本実施形態では変数が以下の様に定義される。
・x link：：リンクlinkを通過するリンク独立経路の本数を表す整数変数。
・m：リンク独立な経路の数。
【０１０４】
前記リンク独立経路数算出部２０３における整数計画法では、制約式が前記第１実施形態と同様に上式(1)〜(5)で与えられる。これらは経路保存則に関する。また、本実施形態でも全ての経路がリンク独立でなければならず、各リンクを複数の経路が通ることは無いので、上式(5)がリンク独立の条件として与えられる。さらに、仮想リンクvlinkの容量条件が上式(6)で与えられる。
【０１０５】
ここで、最大化すべき目的関数Objは変数mなので、ステップＳ２３では、上記の整数計画法を解いてリンク独立な経路数の最大数mが求められる。最大化された目的関数mの値が、今回の配信先ノードd(i)までのリンク独立な経路の最大数である。ステップＳ２４では、各リンクコストCost lの初期値が算出される。
【０１０６】
ステップＳ２５ないしＳ２８では、前記経路設定部２０４において、既設経路数nがN本になるまで、ネットワークを構成する各リンクlのコストCost lをリンクコスト更新部２０４ａで更新しながら、擬似発ノードvsから各配信元ノードsを経由して今回の配信先ノードd(i)へ至る最小コスト経路が逐次的に計算される。
【０１０７】
すなわち、ステップＳ２５では、既設の経路数nが初期化(=0)される。ステップＳ２６では、擬似発ノードvsから配信先ノードd(i)へ至る最小コスト経路が、更新された各リンクコストCost lに基づいて計算される。各リンクコストCost lの更新方法および最小コスト経路の算出方法は、後に詳述する。
【０１０８】
ステップＳ２７では、前記計算された最小コスト経路が既設経路として追加され、前記既設経路数nがインクリメントされる。ステップＳ２８では、前記既設経路数nとNとが比較され、経路数nがNに達していなければ前記ステップＳ２６へ戻り、各リンクlのコストCost lを更新しながら上記の各処理が繰り返される。
【０１０９】
既設の経路数がN本になると、ステップＳ２９では、配信先ノードdの識別子iがインクリメントされる。ステップＳ３０では、全ての配信先ノードdに対して上記の各処理が完了したか否かが判定される。完了していなければ前記ステップＳ２３へ戻り、配信先ノードdを切り替えながら上記の各処理が繰り返される。
【０１１０】
前記ステップＳ２６において最小コスト経路を計算する際は、各仮想リンクの容量制約を満足する必要がある。すなわち、ある仮想リンクvlinkを通過して配信先ノードd(i)まで設定された配信経路の数が、当該仮想リンクの容量に達した場合は、当該仮想リンクのコストをゼロから十分大きな値に変更する。
【０１１１】
最小コスト経路計算を繰り返し実行する際の各リンクのコストCost lは、最小コスト経路計算によって、既にN本の配信経路が決定しているi-1個の配信先ノードdの中で、元のコンテンツを復元できなくなる配信先ノード数の期待値と、今回の配信先ノードd(i)においてN -K+1個以上の部分コンテンツを復元できなくなる確率との和が最小化される経路が得られるように設定される。
【０１１２】
この時、各中継ノードにおいて、ネットワーク符号化を用いて配信先ノードが異なる複数の部分コンテンツを１つの部分コンテンツに符号化して出リンク上に転送することにより、出リンク帯域の有効利用が図られる。
【０１１３】
すなわち、各リンクの使用帯域は、当該リンクを通過して各配信先ノードに至る配信経路数のうちの最大数となる。従って、配信先ノードd(i)に向けて既に設定されている配信経路のうち、あるリンクlを通過している既設経路数が当該リンクlの容量分に達している場合は、リンク容量制約によって、当該リンクのコストを十分大きな値に設定する。
【０１１４】
また、各部分コンテンツは、各中継ノードから同一出リンク上に転送される、配信先ノードdが異なる他の全ての部分コンテンツと共にネットワーク符号化され、かつ符号化された当該各部分コンテンツが失われた場合は、符号化の元になった全ての部分コンテンツが、配信先ノードdにおいてネットワーク復号できないと考える。そこで、本実施形態では配信先ノードdにおけるネットワーク復号の可否を考慮するために、実際の配信経路に加えて仮想的な配信経路を導入する。
【０１１５】
図８は、ネットワーク符号化を利用した場合のリンク障害と損失データとの関係を、仮想経路の概念を導入して説明するための図である。
【０１１６】
ここでは、配信元ノードs1から配信先ノードd1へ部分コンテンツc1を転送するための配信経路P11、配信元ノードs1から配信先ノードd2へ部分コンテンツc1を転送するための配信経路P12、配信元ノードs2から配信先ノードd1へ部分コンテンツc2を転送するための配信経路P21、および配信元ノードs2から配信先ノードd2へ部分コンテンツc2を転送するための配信経路P22の、計４本の実経路が存在する。
【０１１７】
このような仮想経路を含むネットワーク構成では、中継ノードt1の出リンクt1-t2上において、部分コンテンツc1，c2がネットワーク符号化され、当該ネットワーク符号化された部分コンテンツが、中継ノードt2と配信先ノードd1とを結ぶリンクt2-d1および中継ノードt2と配信先ノードd2とを結ぶリンク上に転送される。
【０１１８】
したがって、リンクt2-d1が障害になると、実経路P21で転送される部分コンテンツc2のみならず、ネットワーク符号化の元になった部分コンテンツc1のネットワーク復号も、配信先ノードd1において不可となる可能性がある。そこで、本実施形態ではリンクt2-d1上に部分コンテンツc1を転送するための仮想経路VP21を考える。
【０１１９】
仮想経路VP21は、部分コンテンツc2が部分コンテンツc1と共にネットワーク符号化されるリンクt1-t2よりも下流側に存在し、配信先ノードまで部分コンテンツc2の実経路と同じルートを辿るものとする。同様に、リンクt2-d2上には部分コンテンツc2を転送するための仮想経路VP12を考える。
【０１２０】
この様に仮想経路の概念を導入して、リンク障害が発生した際には、実経路に加えて仮想経路によって転送される部分コンテンツも配信先ノードでネットワーク復号できないと考えることにより、各中継ノードにおけるネットワーク符号化の際の部分コンテンツの組合せ法を考慮することなく、信頼性に関して安全側のコンテンツ配信経路計算を行える。
【０１２１】
図９は、前記ステップＳ２６において、擬似発ノードvsから各配信先ノードdに至る最小コスト経路を計算する手順を示したフローチャートであり、最小コストの注目する端点が選択されるごとに、擬似発ノードvsから当該端点までの配信経路に基づき、当該端点の出リンクコストが更新されることを除き、グラフ理論における最短経路問題を解くためのダイクストラ法と同等の手法により算出される。
【０１２２】
配信先ノードdに至る最小コスト経路を算出する際のリンクlのコストCost lは、既にN本の配信経路が決定しているd-1個の配信先ノードの中で、元のコンテンツが復元できなくなる配信先ノード数の期待値に対応するコスト初期値と、配信先ノードdにおいてN-K+1個以上の部分コンテンツが復元化できなくなる確率に対応するコスト更新値との和によって算出される。
【０１２３】
配信先ノードdに向かうn本目の配信経路を算出する場合、リンクlのコスト初期値としては、リンクlを含む多重リンク障害によって、既にN本の配信経路が決定しているd-1個の配信先ノードの中で、元のコンテンツが復元できなくなる配信先ノード数の期待値を設定する。配信先ノードdに向かうn本目の配信経路を算出する場合、リンクlのコスト更新値としては、リンクlを含む多重リンク障害によって、配信先ノードdにおいてN-K+1個以上の部分コンテンツが復元化できなくなる確率を設定する。
【０１２４】
ネットワーク符号化が実施されている時は、多重リンク障害による仮想経路の障害も考慮して、元のコンテンツが復元できなくなる配信先ノード数の期待値を算出する。ネットワーク符号化は、既に配信経路が決定している部分コンテンツ間のみならず、擬似発ノードvsから選択した端点までの配信経路に基づき、配信先ノードdに向けて転送されるｎ番目の部分コンテンツと既に配信経路が決定している部分コンテンツとのネットワーク符号化も考慮する。
【０１２５】
すなわち、ステップＳ４１では、擬似発ノードvsがコストゼロとして端点集合に入力される。ステップＳ４２では、端点集合の中からコストが最小のノードが取り出され、最初は擬似発ノードvsが取り出される。ステップＳ４３では、前記取り出されたノードが配信先ノードdであるか否かが判定される。配信先ノードdであれば当該処理を終了し、配信先ノードdでなければステップＳ４４へ進む。
【０１２６】
ステップＳ４４では、取り出されたノードの出リンクlのコストCost lが更新される。ステップＳ４５では、出リンクlが接続するノードのコストが、取り出されたノードのコストと出リンクコストとの和に設定される。ステップＳ４６では、ノードが初出であれば新たに端点集合に入力し、既に端点集合に存在すれば、端点集合中の当該ノードに最小コストが設定される。ステップＳ４７では、取り出されたノードの全ての出リンクに関して上記の処理が完了したか否かが判定される。完了していなければステップＳ４４へ戻り、出リンクを切り替ながら上記の各処理が繰り返される。
【０１２７】
図１０は、前記図７のステップＳ２４で実行される各リンクコストCost lの初期値の算出手順を示したフローチャートである。ここでは、リンクlを含む多重リンク障害によって、全ての配信経路が既に決定しているd-1個の各配信先ノードにおいて元のコンテンツを復元できなくなる場合、当該多重リンク障害の発生確率が、リンクコストの初期値に加算される。
【０１２８】
すなわち、各配信先ノードdに至る実経路および仮想経路によって転送されるN個の部分コンテンツの内のN-K+1個以上の部分コンテンツを損失させるような、リンクlを含む多重リンク障害の発生確率が初期値に加算される。リンクコストの初期値は、配信先ノードdまでのリンク独立な経路の最大数をm本とすると、リンクlを含む最大m重リンク障害までを考慮して算出する。この時、各リンクの障害確率は十分小さいと仮定し、f (=1〜m)重リンク障害によってCost lの初期値に正の数が加算された場合は、fよりも大きい多重リンク障害は考慮しない。
【０１２９】
さらに具体的に説明すれば、ステップＳ６１では、コストCost lがリセット(=0)され、リンク障害の多重数fが初期化(=1)される。ステップＳ６２では、今回の注目リンクlを含むf本のリンクの組合せが列挙されてリストが構成される。ステップＳ６３では、前記リストからリンクの組合せが１つずつ取り出されて多重リンク障害が想定される。
【０１３０】
ステップＳ６４では、注目する配信先ノードdを特定する識別子iが初期化(=1)される。ステップＳ６５では、仮想経路によって転送される部分コンテンツも含めて、配信先ノードd(i)に至るN-K+1個以上の部分コンテンツが失われているか否かが判定される。失われていればステップＳ６６へ進み、その多重リンク障害確率がコストCost lに加算される。
【０１３１】
ステップＳ６７では、注目する配信先ノードdを特定する識別子iが更新される。ステップＳ６８では、識別子iと配信先ノード数dとが比較される。i＜dであればステップＳ６５へ戻り、配信先ノードdを切り替えて上記の各処理が繰り返される。ステップＳ６９では、全てのリンク組合せの取り出しが完了したか否かが判定される。完了していなければステップＳ６３へ戻り、リンク組合せを切り替えながら上記の各処理が繰り返される。
【０１３２】
その後、全てのリンク組合せの取り出しが完了するとステップＳ７０へ進み、コストCost lがゼロであるか否かが判定される。ゼロでなければ当該処理を終了し、ゼロであればステップＳ７１へ進む。ステップＳ７１では、リンク組合せ数fとmとが比較され、f＜mでなければ当該処理を終了し、f＜mであれば、ステップＳ７２でfを更新（f=f＋1）してステップＳ６２へ戻る。
【０１３３】
配信先ノードdに向かう配信経路を算出する場合、リンクlのコストCost lは、新たな配信経路がリンクlを通ることによって、配信先ノードdに向かう既設の経路数nがN-K本以下の時は、配信先ノードdに転送される新たな部分コンテンツも含めて、N-K+1個以下の全ての部分コンテンツが損失になる確率を、また配信先ノードdに向かう既設の経路数nがN-K+1本以上の時は、配信先ノードdに転送される新たな部分コンテンツも含めて、N-K+1個以上の部分コンテンツが損失になる確率を更新値として初期値に加算することによって得られる。この時、新たな配信経路に対してリンクlの上流でネットワーク符号化が実施されている場合は、新たな配信経路に付随してリンクlを通過する仮想経路と、リンクl上でネットワーク符号化が実施される場合は、ネットワーク符号化の対象となる他の実経路も、リンクlの障害によって影響を受けると考えて、損失となる部分コンテンツを数える。
【０１３４】
図１１は、前記図９のステップS４４で実行されるリンクコストCost lの算出手順を示したフローチャートである。ここでは、既に配信経路が設定されているN-K+1個以上の部分コンテンツが損失になる確率と、配信先ノードdに向かう既設の経路数nがN-K本以下の時は、新たな配信経路がリンクlを通過することにより、N-K+1個以下の全ての部分コンテンツが損失となる確率、もしくは配信先ノードdに向かう既設の経路数nがN-K+1本以上の時は、新たな配信経路がリンクlを通過することにより、N-K+1個の部分コンテンツが損失となる確率が、リンクコスト初期値に加算される。但し、配信先ノードdに向かう既設の経路数nがN-K本以下の時は、既に配信経路が設定されているN-K+1個以上の部分コンテンツが損失になる確率はゼロと見なす。
【０１３５】
すなわち、新たな配信経路が設定されていない場合に、配信先ノードdに向かうN-K+1個以上の部分コンテンツが損失になる多重リンク障害の発生確率と、新たな配信経路がリンクlを通過することにより、配信先ノードdに向かうN-K+1個よりも少ない全ての部分コンテンツもしくはN-K+1個の部分コンテンツが損失になるリンクlを含む多重リンク障害の発生確率とが、リンクコストCost lの初期値に加算される。
【０１３６】
リンクコストCost lは、配信先ノードdまでのリンク独立な経路の最大数をm本とすると、リンクlを含む最大m重リンク障害までを考慮して算出する。この時、各リンクの障害確率は十分小さいと仮定して、f (=1〜m)重リンク障害によって、Cost lの初期値に正の数が加算された場合は、fよりも大きい多重リンク障害は考慮しない。
【０１３７】
さらに具体的に説明すれば、図１１のステップＳ８１では、コストCost lが初期値にセットされ、リンク障害の多重数fが初期化(=1)される。ステップＳ８２では、f本のリンクの組合せが列挙されてリストが構成される。ステップＳ８３では、前記リストからリンクの組合せが１つずつ取り出されて多重リンク障害が想定される。
【０１３８】
ステップＳ８４では、既に配信経路が設定されているN-K+1個以上の部分コンテンツが損失になるか否かが判定される。N-K+1個以上の部分コンテンツが損失していればステップＳ８５へ進み、その多重リンク障害確率がリンクコストCost lに加算される。損失していなければ加算されない。
【０１３９】
ステップＳ８６では、リンクlを含む障害であるか否かが判定される。リンクlを含む障害であればステップＳ８７へ進み、既設の配信経路数がN-K+1本以上であるか否かが判定される。N-K+1本未満であればステップＳ８８へ進み、新たな部分コンテンツも含めて全ての部分コンテンツが損失するか否かが判定される。全ての部分コンテンツが損失すればステップＳ９０へ進み、その多重リンク障害確率がリンクコストCost lに加算される。
【０１４０】
一方、前記ステップＳ８７において、既設の配信経路数がN-K+1本以上であると判定されるとステップＳ８９へ進み、新たな部分コンテンツも含めてN-K+1個の部分コンテンツが損失するか否かが判定される。N-K+1個の損失であれば前記ステップＳ９０へ進み、N-K+1個以外の損失であればステップＳ９１へ進む。ステップＳ９１では、全てのリンク組合せの取り出しが完了したか否かが判定される。完了していなければステップＳ８３へ戻り、リンク組合せを切り替えながら上記の各処理が繰り返される。
【０１４１】
その後、全てのリンク組合せの取り出しが完了するとステップＳ９２へ進み、リンクコストCost lが初期値のままであるか否かが判定される。初期値のままでなければ当該処理を終了し、初期値のままであればステップＳ９３へ進む。ステップＳ９３では、リンク組合せ数fとmとが比較され、f＜mでなければ当該処理を終了し、f＜mであれば、ステップＳ９４へ進んでリンク組合せ数fを更新（f=f+1）した後にステップＳ８２へ戻る。
【０１４２】
図１２は、リンクコストの算出例を模式的に示した図であり、ここでは説明を簡単にするため、ネットワーク符号化に伴う仮想経路は存在しないと仮定している。
【０１４３】
N-K+1＞4と仮定して配信経路P4を設定する場合、リンクl1のコストCost l1は、配信経路P1、P2、P3が全て障害になる確率とリンクl1の障害確率p l1との積を初期値に加算することによって算出される。また、リンクl2のコストCost l2は、配信経路P2、P3が全て障害になる確率とリンクl2の障害確率p l2との積を初期値に加算することによって得られる。リンクl3のコストCost l3は、配信経路P1が障害になる確率とリンクl3の障害確率p l3との積を初期値に加算することによって得られる。リンクl4のコストCost l4は、リンクl4の障害確率p l4を初期値に加算することによって得られる。
【０１４４】
同様に、N-K+1=3と仮定して配信経路P4を設定する場合、リンクl1のコストCost l1は、初期値に対して、配信経路P1、P2、P3の３本が障害になる確率と、配信経路P1、P2、P3の内２本のみが障害になる確率とリンクl1の障害確率p l1との積を加算した値に設定する。
【０１４５】
また、リンクl2のコストCost l2は、初期値に対して、配信経路P1、P2、P3の３本が障害になる確率と、配信経路P2、P3の内１本のみが障害になる確率とリンクl2の障害確率p l2との積を加算した値に設定する。リンクl3のコストCost l3は、初期値に対して、配信経路P1、P2、P3の３本が障害になる確率と、リンクl3の障害確率p l3を加算した値に設定する。リンクl4のコストCost l4は、初期値に対して、配信経路P1、P2、P3の３本が障害になる確率を加算した値に設定する。
【０１４６】
本実施形態によれば、複数のノードで閾値秘密分散保持されているN個の部分コンテンツを複数の配信先ノードまでネットワークを介して転送する際に、多重リンク障害によって、転送途中にN-K+1個以上の部分コンテンツが損失となり、元のコンテンツを復元できなくなる配信先ノード数の期待値を小さくする高信頼なコンテンツ配信経路の計算が可能となる。
【０１４７】
また、本発明は、リンクコストを更新しつつ、各配信先ノードまでのN本の最小コスト経路を１本ずつ逐次的に算出する方法であるため、コンテンツ配信経路を高速に計算できる。
【０１４８】
さらに、各リンクにおいて、同一配信先ノードに至る配信経路が、当該リンクの容量分通過することを許容することにより、ネットワーク符号化を考慮したリンク帯域の有効利用を図った配信経路を計算できる。
【０１４９】
さらに、ネットワーク符号化が実施されたリンクから配信先ノードまで、ネットワーク符号化された一方の部分コンテンツの配信経路と同じルートを辿って、他方の部分コンテンツを転送する仮想経路を導入し、多重リンク障害において実際の配信経路に加えて仮想経路の障害も考慮することで、信頼性に関して安全側のコンテンツ配信経路計算を簡易に行える。
【符号の説明】
【０１５０】
１…配信経路計算サーバ、１００，２０１…トポロジ取得部、１０１，２０１…トポロジ変形部，１０２…第１求解部、１０３…多重数計算部、１０４…第２求解部、１０５…経路通知部、２０３…リンク独立経路数出部、２０４…経路設定部、２０４ａ…リンクコスト更新部、２０５…経路通知部
【図１】
2014120997.tif 000026
【図２】
2014120997.tif 000027
【図３】
2014120997.tif 000028
【図４】
2014120997.tif 000029
【図５】
2014120997.tif 000030
【図６】
2014120997.tif 000031
【図７】
2014120997.tif 000032
【図８】
2014120997.tif 000033
【図９】
2014120997.tif 000034
【図１０】
2014120997.tif 000035
【図１１】
2014120997.tif 000036
【図１２】
2014120997.tif 000037