(57)【特許請求の範囲】
【請求項１】
利用可能なネットワークの運用単位を持つサイトの集合において、新たなサイトの追加もしくは既存サイトの離脱があった場合、前記追加もしくは離脱後のネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように複数の前記ネットワーク運用単位の候補が与えられ、当該複数の前記ネットワーク運用単位の候補から１つの前記ネットワーク運用単位の候補を選択することにより、各々の前記サイトが１つ使用すべき前記ネットワーク運用単位の組合せを決定するための設計を行い、
前記設計において前記ネットワーク運用単位の組合せが決定できた場合、決定した前記ネットワーク運用単位を、前記各サイトで新たに使用すべきネットワーク運用単位とすることを特徴とするネットワーク運用方法。
【請求項２】
利用可能なネットワークの運用単位を持つ各サイトにおいて、新たにネットワーク運用単位が利用できるようになった場合、もしくは、既存のネットワーク運用単位が利用できなくなった場合、利用可能なネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように複数の前記ネットワーク運用単位の候補が与えられ、当該複数の前記ネットワーク運用単位の候補から１つの前記ネットワーク運用単位の候補を選択することにより、各々の前記サイトが１つ使用すべき前記ネットワーク運用単位の組合せを決定するための設計を行い、
前記設計において前記ネットワーク運用単位の組合せが決定できた場合、決定した前記ネットワーク運用単位を、前記各サイトで新たに使用すべきネットワーク運用単位とすることを特徴とするネットワーク運用方法。
【請求項３】
１つのネットワーク運用単位を使用している各サイトが利用可能な全てのネットワーク運用単位において、少なくとも１つのネットワーク運用単位のペアにおいて接続関係の変化が生じた場合、前記接続関係の変化後のネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように複数の前記ネットワーク運用単位の候補が与えられ、当該複数の前記ネットワーク運用単位の候補から１つの前記ネットワーク運用単位の候補を選択することにより、各々の前記サイトが１つ使用すべき前記ネットワーク運用単位の組合せを決定するための設計を行い、
前記設計において前記ネットワーク運用単位の組合せが決定できた場合、決定した前記ネットワーク運用単位を、前記各サイトで新たに使用すべきネットワーク運用単位とすることを特徴とするネットワーク運用方法。
【請求項４】
各サイトで１つ使用すべき前記ネットワーク運用単位の組合せを、前記接続関係の変化後のネットワーク運用単位の各ペア間の接続関係に基づいて全てのサイトが到達可能になるように決定するための設計を行うことを特徴とする請求項１から請求項３の何れかに記載のネットワーク運用方法。
【請求項５】
各サイトが１つ使用すべき前記ネットワーク運用単位の組合せを、接続関係のある前記ネットワーク運用単位の各ペア間に与えられたコストに基づいて最小全域木を作成し、前記最小全域木において前記コストの最大値を最小とする前記ネットワーク運用単位の組合せを算出することにより決定することを特徴とする請求項１から請求項４の何れかに記載のネットワーク運用方法。
【請求項６】
各サイトが１つ使用すべき前記ネットワーク運用単位の組合せを、更に、ネットワーク運用単位間で有する接続関係の総数を最大とする前記ネットワーク運用単位の組合せを算出することにより決定することを特徴とする請求項５に記載のネットワーク運用方法。
【請求項７】
各サイトが１つ使用すべき前記ネットワーク運用単位の組合せを、更に、接続関係のあるネットワーク運用単位のそれぞれのペア間に与えられたコストの総和を最小とする前記ネットワーク運用単位の組合せを算出することにより決定することを特徴とする請求項６に記載のネットワークの運用方法。
【請求項８】
各サイトが１つ使用すべき前記ネットワーク運用単位を、順番にサイトを選択する毎に決定し、新たに選択すべきサイトはプリム法に基づいて決定し、前記新たに選択すべきサイトで使用すべきネットワーク運用単位を、他のサイトのネットワーク運用単位と有する接続関係の総数に基づいて決定することを特徴とする請求項１から請求項４の何れかに記載のネットワーク運用方法。
【請求項９】
前記ネットワーク運用単位が、インターネットを構成する自律システムであることを特徴とする請求項１から請求項８の何れかに記載のネットワーク運用方法。
【請求項１０】
前記ネットワーク運用単位が、イーサネット・ドメインであることを特徴とする請求項１から請求項９の何れかに記載のネットワーク運用方法。
【請求項１１】
ある発信サイトから別の着信サイトにデータを転送する際の経路を、変更された前記ネットワーク運用単位の各ペアが有する接続関係に基づいて決定することを特徴とする請求項１から請求項１０の何れかに記載のネットワーク運用方法。
【請求項１２】
あるサイトから、他の１以上のサイトへＨＴＴＰデータを分配する場合、分配経路上の各サイトを、ＨＴＴＰのプロキシーサーバもしくはキャッシュサーバとして動作させることを特徴とする請求項１１に記載のネットワーク運用方法。
【請求項１３】
利用可能なネットワークの運用単位を持つサイトの集合において、新たなサイトの追加もしくは既存サイトの離脱があった場合、前記追加もしくは離脱後のネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように複数の前記ネットワーク運用単位の候補が与えられ、当該複数の前記ネットワーク運用単位の候補から１つの前記ネットワーク運用単位の候補を選択することにより、各々の前記サイトが１つ使用すべき前記ネットワーク運用単位の組合せを決定するための設計を行う設計サーバと、
前記設計において前記ネットワーク運用単位の組合せが決定できた場合、決定した前記ネットワーク運用単位を、前記各サイトで新たに使用すべきネットワーク運用単位とする運用サーバとを備えることを特徴とするネットワーク運用システム。
【請求項１４】
利用可能なネットワークの運用単位を持つ各サイトにおいて、新たにネットワーク運用単位が利用できるようになった場合、もしくは、既存のネットワーク運用単位が利用できなくなった場合、利用可能なネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように複数の前記ネットワーク運用単位の候補が与えられ、当該複数の前記ネットワーク運用単位の候補から１つの前記ネットワーク運用単位の候補を選択することにより、各々の前記サイトが１つ使用すべき前記ネットワーク運用単位の組合せを決定するための設計を行う設計サーバと、
前記設計において前記ネットワーク運用単位の組合せが決定できた場合、決定した前記ネットワーク運用単位を、前記各サイトで新たに使用すべきネットワーク運用単位とする運用サーバとを備えることを特徴とするネットワーク運用システム。
【請求項１５】
１つのネットワーク運用単位を使用している各サイトが利用可能な全てのネットワーク運用単位において、少なくとも１つのネットワーク運用単位のペアにおいて接続関係の変化が生じた場合、前記接続関係の変化後のネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように複数の前記ネットワーク運用単位の候補が与えられ、当該複数の前記ネットワーク運用単位の候補から１つの前記ネットワーク運用単位の候補を選択することにより、各々の前記サイトが１つ使用すべき前記ネットワーク運用単位の組合せを決定するための設計を行う設計サーバと、
前記設計において前記ネットワーク運用単位の組合せが決定できた場合、決定した前記ネットワーク運用単位を、前記各サイトで新たに使用すべきネットワーク運用単位とする運用サーバとを備えることを特徴とするネットワーク運用システム。
【請求項１６】
前記設計サーバが、各サイトで１つ使用すべき前記ネットワーク運用単位の組合せを、前記接続関係の変化後のネットワーク運用単位の各ペア間の接続関係に基づいて全てのサイトが到達可能になるように決定するための設計を行うことを特徴とする請求項１３から請求項１５の何れかに記載のネットワーク運用システム。
【請求項１７】
前記設計サーバが、各サイトが１つ使用すべき前記ネットワーク運用単位の組合せを、接続関係のある前記ネットワーク運用単位の各ペア間に与えられたコストに基づいて最小全域木を作成し、前記最小全域木において前記コストの最大値を最小とする前記ネットワーク運用単位の組合せを算出することにより決定することを特徴とする請求項１３から請求項１６の何れかに記載のネットワーク運用システム。
【請求項１８】
前記設計サーバが、各サイトが１つ使用すべき前記ネットワーク運用単位の組合せを、更に、ネットワーク運用単位間で有する接続関係の総数を最大とする前記ネットワーク運用単位の組合せを算出することにより決定することを特徴とする請求項１７に記載のネットワーク運用システム。
【請求項１９】
前記設計サーバが、各サイトが１つ使用すべき前記ネットワーク運用単位の組合せを、更に、接続関係のあるネットワーク運用単位のそれぞれのペア間に与えられたコストの総和を最小とする前記ネットワーク運用単位の組合せを算出することにより決定することを特徴とする請求項１８に記載のネットワークの運用システム。
【請求項２０】
前記設計サーバが、各サイトが１つ使用すべき前記ネットワーク運用単位を、順番にサイトを選択する毎に決定し、新たに選択すべきサイトはプリム法に基づいて決定し、前記新たに選択すべきサイトで使用すべきネットワーク運用単位を、他のサイトのネットワーク運用単位と有する接続関係の総数に基づいて決定することを特徴とする請求項１３から請求項１７の何れかに記載のネットワーク運用システム。
【請求項２１】
前記ネットワーク運用単位が、インターネットを構成する自律システムであることを特徴とする請求項１３から請求項２０の何れかに記載のネットワーク運用システム。
【請求項２２】
前記ネットワーク運用単位が、イーサネット・ドメインであることを特徴とする請求項１３から請求項２１の何れかに記載のネットワーク運用システム。
【請求項２３】
前記運用サーバが、ある発信サイトから別の着信サイトにデータを転送する際の経路を、変更された前記ネットワーク運用単位の各ペアが有する接続関係に基づいて決定することを特徴とする請求項１３から請求項２２の何れかに記載のネットワーク運用システム。
【請求項２４】
前記運用サーバが、あるサイトから、他の１以上のサイトへＨＴＴＰデータを分配する場合、分配経路上の各サイトを、ＨＴＴＰのプロキシーサーバもしくはキャッシュサーバとして動作させることを特徴とする請求項２３に記載のネットワーク運用システム。
【請求項２５】
設計サーバとしてのコンピュータに、
利用可能なネットワークの運用単位を持つサイトの集合において、新たなサイトの追加もしくは既存サイトの離脱があった場合、前記追加もしくは離脱後のネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように複数の前記ネットワーク運用単位の候補が与えられ、当該複数の前記ネットワーク運用単位の候補から１つの前記ネットワーク運用単位の候補を選択することにより、各々の前記サイトが１つ使用すべき前記ネットワーク運用単位の組合せを決定するための設計を行う処理を実行させ、
運用サーバとしてのコンピュータに、
前記設計処理において前記ネットワーク運用単位の組合せが決定できた場合、決定した前記ネットワーク運用単位を、前記各サイトで新たに使用すべきネットワーク運用単位とする処理を実行させることを特徴とするプログラム。
【請求項２６】
設計サーバとしてのコンピュータに、
利用可能なネットワークの運用単位を持つ各サイトにおいて、新たにネットワーク運用単位が利用できるようになった場合、もしくは、既存のネットワーク運用単位が利用できなくなった場合、利用可能なネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように複数の前記ネットワーク運用単位の候補が与えられ、当該複数の前記ネットワーク運用単位の候補から１つの前記ネットワーク運用単位の候補を選択することにより、各々の前記サイトが１つ使用すべき前記ネットワーク運用単位の組合せを決定するための設計を行う処理を実行させ、
運用サーバとしてのコンピュータに、
前記設計において前記ネットワーク運用単位の組合せが決定できた場合、決定した前記ネットワーク運用単位を、前記各サイトで新たに使用すべきネットワーク運用単位とする処理を実行させることを特徴とするプログラム。
【請求項２７】
設計サーバとしてのコンピュータに、
１つのネットワーク運用単位を使用している各サイトが利用可能な全てのネットワーク運用単位において、少なくとも１つのネットワーク運用単位のペアにおいて接続関係の変化が生じた場合、前記接続関係の変化後のネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように複数の前記ネットワーク運用単位の候補が与えられ、当該複数の前記ネットワーク運用単位の候補から１つの前記ネットワーク運用単位の候補を選択することにより、各々の前記サイトが１つ使用すべき前記ネットワーク運用単位の組合せを決定するための設計を行う処理を実行させ、
運用サーバとしてのコンピュータに、
前記設計において前記ネットワーク運用単位の組合せが決定できた場合、決定した前記ネットワーク運用単位を、前記各サイトで新たに使用すべきネットワーク運用単位とする処理を実行させることを特徴とするプログラム。
【請求項２８】
前記設計処理において、各サイトで１つ使用すべき前記ネットワーク運用単位の組合せを、前記接続関係の変化後のネットワーク運用単位の各ペア間の接続関係に基づいて全てのサイトが到達可能になるように決定するための設計を行うことを特徴とする請求項２５から請求項２７の何れかに記載のプログラム。
【請求項２９】
前記設計処理において、各サイトが１つ使用すべき前記ネットワーク運用単位の組合せを、接続関係のある前記ネットワーク運用単位の各ペア間に与えられたコストに基づいて最小全域木を作成し、前記最小全域木において前記コストの最大値を最小とする前記ネットワーク運用単位の組合せを算出することにより決定することを特徴とする請求項２５から請求項２８の何れかに記載のプログラム。
【請求項３０】
前記設計処理において、各サイトが１つ使用すべき前記ネットワーク運用単位の組合せを、更に、ネットワーク運用単位間で有する接続関係の総数を最大とする前記ネットワーク運用単位の組合せを算出することにより決定することを特徴とする請求項２９に記載のプログラム。
【請求項３１】
前記設計処理において、各サイトが１つ使用すべき前記ネットワーク運用単位の組合せを、更に、接続関係のあるネットワーク運用単位のそれぞれのペア間に与えられたコストの総和を最小とする前記ネットワーク運用単位の組合せを算出することにより決定することを特徴とする請求項３０に記載のプログラム。
【請求項３２】
前記設計処理において、各サイトが１つ使用すべき前記ネットワーク運用単位を、順番にサイトを選択する毎に決定し、新たに選択すべきサイトはプリム法に基づいて決定し、前記新たに選択すべきサイトで使用すべきネットワーク運用単位を、他のサイトのネットワーク運用単位と有する接続関係の総数に基づいて決定することを特徴とする請求項２５から請求項２８の何れかに記載のプログラム。
【請求項３３】
前記ネットワーク運用単位が、インターネットを構成する自律システムであることを特徴とする請求項２５から請求項３２の何れかに記載のプログラム。
【請求項３４】
前記ネットワーク運用単位が、イーサネット・ドメインであることを特徴とする請求項２５から請求項３３の何れかに記載のプログラム。
【請求項３５】
前記運用サーバとしてのコンピュータに、ある発信サイトから別の着信サイトにデータを転送する際の経路を、変更された前記ネットワーク運用単位の各ペアが有する接続関係に基づいて決定する処理を実行させることを特徴とする請求項２５から請求項３４の何れかに記載のプログラム。
【請求項３６】
前記運用サーバとしてのコンピュータに、あるサイトから、他の１以上のサイトへＨＴＴＰデータを分配する場合、分配経路上の各サイトを、ＨＴＴＰのプロキシーサーバもしくはキャッシュサーバとして動作させる処理を実行させることを特徴とする請求項３５に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワーク運用システム、ネットワーク運用方法、及びネットワーク運用プログラムに関し、特に複数のサーバサイト、もしくはデータセンタ等を収容するネットワーク運用システム、ネットワーク運用方法、及びネットワーク運用プログラムに関する。
【背景技術】
【０００２】
インターネットにおいては、地理的に分散配置された各サイト間でデータ転送が行われており、近年、各サイト間で送受信されるデータ転送量は増大してきている。そのため、データ転送量が大きくとも高速にデータを転送できることが望まれている。【０００３】
ここで、サイトとは、例えば図１１に例示するように、データを処理、もしくは蓄積できるアプリケーションサーバを１つもしくは複数設置する場所を指すものとする。【０００４】
図１１を参照すると、サイト１０００のアプリケーションサーバ１０３０ａ〜１０３０ｄは、マルチスレイヤスイッチ１０２０を介して、ＩＳＰ（Ｉｎｔｅｒｎｅｔ  Ｓｅｒｖｉｃｅ  Ｐｒｏｖｉｄｅｒ）が提供するＡＳ（Ａｕｔｏｎｏｍｏｕｓ  Ｓｙｓｔｅｍ：自律システム）１２００ａ，１２００ｂにアクセスするために位置するエッジルータ１０１０と接続されている。
サイト１０００は、ＡＳ１２００ａ及びＡＳ１２００ｂを通じてインターネット１１００全体とつながっている。図１１に示すように、複数のＩＳＰがそれぞれ提供するＡＳを使用できる形態はマルチホーミングといわれる。【０００５】
なお、アプリケーションサーバ１０３０ａ〜１０３０ｄは、少なくとも１台以上であればよく、その台数に制限はないものとする。【０００６】
上述したような地理的に分散配置されている各サイトを識別する具体的な方法としては、例えば都市、もしくは国単位で識別する方法がある。【０００７】
また、サイトの設置形態としては、サーバマシーンをラックに格納してビル内のフロアーに設置するような小型のものから、巨大数のサーバマシーン群を専用に収容するインターネットデータセンター（ｉＤＣ）まである。【０００８】
地理的に分散配置されている各サイト間でデータを高速に転送したい具体的な例としては、ＣＤＮ（Ｃｏｎｔｅｎｔｓ  Ｄｅｌｉｖｅｒｙ  Ｎｅｔｗｏｒｋ：コンテンツ配信網）において、コンテンツホルダーから発行されたＷｅｂサイトや動画等のコンテンツデータがホスティングされているサイト（オリジンサイトとも呼ぶ）から、エンドユーザへの配信を行うエッジサイトへデータを複製する場合が考えられる。【０００９】
また、ＣＤＮにおける別の例としては、コンテンツユーザがアクセスしたエッジサイトに、コンテンツユーザが所望のコンテンツで、かつ期限も有効なコンテンツがキャッシュされていない場合、上記のオリジンサイトからエッジサイトへコンテンツデータを転送するものが考えられる。【００１０】
さらに別の例としては、オリジンサイトで動的に生成されるような、そもそもキャッシュ不能なデータを、オリジンサイトからエンドユーザがアクセスしたエッジサイトへ転送するものが考えられる。【００１１】
これらのすべての例では、オリジンサイトからエッジサイトにデータを高速に転送できれば、エンドユーザの体感や満足度が高めることができる。【００１２】
インターネットにおいては、地理的に分散配置されている各サイト間でデータを転送する場合、高速なデータ転送を行うためには最適な転送経路を選択することが重要となる。【００１３】
しかし、これまでの関連技術においては、必ずしも性能的に最適な経路が選択されるわけではなかった。【００１４】
以下、地理的に分散配置されている各サイト間における関連技術によるデータ転送について、順を追って説明する。【００１５】
まず、インターネットはＩＳＰや大手ポータルの運営業者等が運用するネットワークの単位（ネットワーク運用単位）であるＡＳが相互接続する形で構成されている。【００１６】
ＡＳは個々のルータやエンドシステムの集合になっているおり、各ＡＳには世界中で一意となる番号が振られている。【００１７】
各ＡＳは、あるＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスプレフィックスに到達可能なＡＳ番号の並びに基づく経路情報を、ＢＧＰ（Ｂｏｒｄｅｒ  Ｇａｔｅｗａｙ  Ｐｒｏｔｏｃｏｌ）という経路制御プロトコルを用いて交換する。ＩＰアドレスプレフィックスとは、番号が連続するＩＰアドレスの集合をいう。【００１８】
また、各ＡＳは、受信した経路情報に基づいて、あるＩＰアドレスプレフィックスに対して、次に転送すべきホップ（ルータもしくはサーバのネットワークインタフェイスに付与されたＩＰアドレスで表現される）を示す転送テーブルを作成している。【００１９】
ＡＳ間の接続は個々の運用業者のビジネス判断によって契約、実行されるものであるが、ＡＳ間の接続形態には主としてピアリングとトランジットがある。【００２０】
ピアリングとは、ＩＳＰ同士が相互に対等の条件でＡＳ同士を接続しトラヒックを交換し合うことをいう。ピアリングでは、同等量のトラヒックを交換しあうことを前提として、基本的に互いに無料で送受信できる。【００２１】
また、ピアリングでは、互いの配下への到達可能なアドレス群を通知しあう。【００２２】
一方、トランジットは、あるＩＳＰが同業他社等へ提供するパケット中継サービスのことをいう。トランジットでは、パケット中継サービスを提供するＩＳＰが、パケット中継サービスの提供を受ける顧客（同業他社等）に対して、インターネット全体へのパケットの到達性を保証し、両者間で転送されるトラヒック量に応じて顧客からＩＳＰに料金が支払われる。【００２３】
なお、現在では、上述したピアリングやトランジット等によるＡＳ間の接続関係の積み上げにより、インターネットではＴｉｅｒ１  ，Ｔｉｅｒ２といった運用業者間の階層構造が出来上がっている。【００２４】
ピアリングやトランジット等によるＡＳ間の接続関係は、インターネット上の２地点間での経路に取り方に大きな制約を与える。【００２５】
例えば、あるＡＳがピアリング相手のＡＳから受信したパケットを、トランジットの提供者である上位のＡＳに転送したり、同じく上位のＡＳから受信したパケットをピアリング相手のＡＳに転送したり、あるいはピアリング相手からもらったデータをさらに別のピアリング相手に送ったりした場合、それらは事実上パケットを無料で転送していることになる。【００２６】
この問題を解決するため、ＡＳの管理主体は、通常以下に示す方針によって、ＢＧＰによって経路情報を交換する。すなわち、ＡＳの管理主体は、ピアリングの相手、もしくはトランジットのプロバイダに対しては、自分のＡＳ内へ到達可能な経路、もしくは自分がトランジットプロバイダーの場合にはそのカスタマーの経路しか通知しない。【００２７】
その結果、ＢＧＰによるある２地点間の経路は、必ずしも性能的に最適化された経路であるとは限らない。具体的には、ある２地点間の経路におけるルータのホップ数が最小なものになるとは限らない。【００２８】
例えば、図１２では、ＡＳ１を使用しているサイトＸから、ＡＳ３を使用しているサイトＹにデータを転送する状況を示している。なお、あるサイトがあるＡＳを使用している具体例としては、例えば該サイトがＡＳを運営しているＩＳＰに加入していることが考えられる。【００２９】
サイトＸとサイトＹの間の最小ホップの経路は、ＡＳ１→ＡＳ４→ＡＳ２→ＡＳ５→ＡＳ３であるが、各ＡＳが上述した経路情報を交換する方針に従って経路情報を交換していた場合、選択される経路はＡＳ１→ＡＳ４→ＡＳ６→ＡＳ８→ＡＳ９→ＡＳ７→ＡＳ５→ＡＳ３となり、経路長が最短経路よりも長くなる。【００３０】
経路長が最短経路よりも長くなる実際例は、例えば非特許文献２の図３に示されている。【００３１】
非特許文献２の図３では、互いに地理的に比較的近い地点間であっても、Ｉｎｔｅｒｎｅｔ  Ｅｘｃｈａｎｇｅ等におけるＡＳ間の接続が十分進んでいない東南アジアのような地域では、欧米の各大陸を経由してパケットが転送される状況が示されている。異なる大陸間を経由する場合は大きな伝搬遅延が入ることになる。【００３２】
なお、実際にピアリングもしくはトランジットの契約を結んだＩＳＰのＡＳ間で、常時ＢＧＰで経路を通知しているとは限らない。つまり、各ＩＳＰの独自のポリシーにより、ピアリングやトランジットの接続関係を実際に使用するかどうかは変化する場合がある。さらに、ＩＳＰ間での接続に関する契約は新たに生じたり、また終了したりする場合もある。【００３３】
以降において、接続関係とは、契約ではなく、ＢＧＰのやりとりで実際にデータ転送ができる接続関係のことを指すものとする。【００３４】
以上、地理的に分散配置されているサイト間における関連技術によるデータ転送について説明したが、データ転送においては、データを誤り無く転送することも重要な要件となっている。【００３５】
そのため、インターネットにおいては、サーバマシーン、あるいはエンドユーザのＰＣのようなエンドシステム間でＨＴＴＰ（ＨｙｐｅｒＴｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）のようなアプリケーションのデータを誤りなく転送するために、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）が用いられている。【００３６】
ＴＣＰでは、送信したデータに対する受信確認の応答を受信・処理することで、誤りなくデータを転送する。【００３７】
ＴＣＰによるデータ転送時のスループットは、送受信間での往復でかかった遅延に相当するＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ）、もしくはパケット損失率に依存する。その一例が非特許文献３で示されている。【００３８】
なお、ＲＴＴには、送受信間での往復での伝搬遅延と、往復時の装置内におけるパケットのプロトコル処理遅延および回線上への転送遅延等が含まれる。また、送受信間の往復では往路と復路で同一の経路を通過するとは限らない。【００３９】
一般に、送受信間でインターネット上でのホップ数が大きくなると、パケット損失率が増加する。また、特に異なる大陸もしくは諸島間をつなぐ海底ケーブルによるＡＳ間のリンクを含む場合は、伝搬遅延によりＲＴＴが大きくなる。【００４０】
また、パケット損失率が増加したり、ＲＴＴが大きくなったりすることにより、ＴＣＰによるデータ転送時のスループットは低下する。【００４１】
上述した説明についての参考文献として、非特許文献１、非特許文献２、及び非特許文献３を挙げる。
【先行技術文献】
【非特許文献】
【００４２】
【非特許文献１】Ｙ．  Ｒｅｋｈｔｅｒ  ａｎｄ  Ｔ．  Ｌｉ，  “  Ａ  Ｂｏｒｄｅｒ  Ｇａｔｅｗａｙ  Ｐｒｏｔｏｃｏｌ  ４  （ＢＧＰ−４），  ”  ＲＦＣ１７７１，  Ｍａｒｃｈ  １９９５
【非特許文献２】Ｊｏｎ  Ｂａｇｇａｌｅｙ，  Ｂａｔｃｈｕｌｕｕｎ  Ｂａｔｐｕｒｅｖ，  ａｎｄ  Ｊｉｍ  Ｋｌａａｓ，  “Ｔｈｅ  Ｗｏｒｌｄ−Ｗｉｄｅ  Ｉｎａｃｃｅｓｓｉｂｌｅ  Ｗｅｂ，  Ｐａｒｔ  ２：  Ｉｎｔｅｒｎｅｔ  ｒｏｕｔｅｓ，”  Ｔｈｅ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｒｅｖｉｅｗ  ｏｆ  Ｒｅｓｅａｒｃｈ  ｉｎ  Ｏｐｅｎ  ａｎｄ  Ｄｉｓｔａｎｃｅ  Ｌｅａｒｎｉｎｇ  Ｖｏｌ  ８，  Ｎｏ  ２  （２００７）．
【非特許文献３】Ｊ．  Ｐａｄｈｙｅ，  Ｖ．  Ｆｉｒｏｉｕ，  Ｄ．  Ｔｏｗｓｌｅｙ，  Ｊ．  Ｋｕｒｏｓｅ，  “Ｍｏｄｅｌｉｎｇ  ＴＣＰ  Ｔｈｒｏｕｇｈｐｕｔ：  Ａ  Ｓｉｍｐｌｅ  Ｍｏｄｅｌ  ａｎｄ  ｉｔｓ  Ｅｍｐｉｒｉｃａｌ  Ｖａｌｉｄａｔｉｏｎ，”  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＳＩＧＣＯＭＭ  ９８  １９９８．
【非特許文献４】Ｒｏｂｅｒｔ  Ｅｎｄｒｅ  Ｔａｒｊａｎ，  Ｄａｔａ  Ｓｔｒｕｃｔｕｒｅｓ  ａｎｄ  Ｎｅｔｗｏｒｋ  Ａｌｇｏｒｉｔｈｍｓ，    Ｓｏｃｉｅｔｙ  ｆｏｒ  Ｉｎｄｕｓｔｒｉａｌ  Ｍａｔｈｅｍａｔｉｃｓ，  Ｊａｎ．  １，  １９８７．
【非特許文献５】Ｃｏｎｆｉｇｕｒｉｎｇ  Ｈｉｅｒａｒｃｈｉｃａｌ  Ｓｑｕｉｄ  Ｃａｃｈｅｓ（ｈｔｔｐ：／／ｏｌｄ．ｓｑｕｉｄ−ｃａｃｈｅ．ｏｒｇ／Ｄｏｃ／Ｈｉｅｒａｒｃｈｙ−Ｔｕｔｏｒｉａｌ／ｔｕｔｏｒｉａｌ−７．ｈｔｍｌ）
【非特許文献６】Ｈａｙｉｍ  Ｐｏｒａｔ，  Ｎｕｒｉｔ  Ｓｐｒｅｃｈｅｒ，  ａｎｄ  Ｚｅｈａｖｉｔ  Ａｌｏｎ，  “Ｅ−ＮＮＩ  ｒｅｇｉｓｔｒａｔｉｏｎ  ｐｒｏｔｏｃｏｌ，”  ｈｔｔｐ：／／ｗｗｗ．ｉｅｅｅ８０２．ｏｒｇ／１／ｆｉｌｅｓ／ｐｕｂｌｉｃ／ｄｏｃｓ２００９／ｎｅｗ−ｐｏｒａｔ−Ｅ−ＮＮＩ−Ｒｅｇｉｓｔｒａｔｉｏｎ−ｐｒｏｔｏｃｏｌ−０３０９−ｖ０３．ｐｄｆ
【発明の概要】
【発明が解決しようとする課題】
【００４３】
上述した関連技術における地理的に分散配置された各サイト間でのデータ転送においては、各サイトが使用可能な一つもしくは複数のＡＳの中から、一つを互いに独立に選んで使用すると、データ転送のスループットが上がらない場合があるという問題がある。【００４４】
その理由は、あるサイトから別のサイトにデータを転送するとき、それぞれが使用するＡＳの間に接続関係がない場合は、図１２に示すように両サイト間の経路により多くのＡＳが入ることで、ルータ単位のホップ数が多くなり、その結果、ＲＴＴの増大やパケット損失機会の増加を招き、ＴＣＰのスループットを悪化させる場合があるからである。【００４５】
（発明の目的）
本発明の目的は、サーバ間でよりスループットの高いデータ転送ができるネットワークの運用が可能なネットワーク運用システム、ネットワーク運用方法、及びネットワーク運用プログラムを提供することである。
【課題を解決するための手段】
【００４６】
本発明の第１のネットワーク運用方法は、利用可能なネットワークの運用単位を持つサイトの集合において、新たなサイトの追加もしくは既存サイトの離脱があった場合、追加もしくは離脱した各サイトで１つ使用すべきネットワーク運用単位の組合せを、追加もしくは離脱後のネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように決定するための設計を行い、設計においてネットワーク運用単位の組合せが決定できた場合、決定したネットワーク運用単位を、各サイトで新たに使用すべきネットワーク運用単位とする。【００４７】
本発明の第１のネットワーク運用システムは、利用可能なネットワークの運用単位を持つサイトの集合において、新たなサイトの追加もしくは既存サイトの離脱があった場合、追加もしくは離脱した各サイトで１つ使用すべきネットワーク運用単位の組合せを、追加もしくは離脱後のネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように決定するための設計を行う設計サーバと、設計においてネットワーク運用単位の組合せが決定できた場合、決定したネットワーク運用単位を、各サイトで新たに使用すべきネットワーク運用単位とする運用サーバとを備える。【００４８】
本発明の第１のネットワーク運用プログラムは、設計サーバとしてのコンピュータに、利用可能なネットワークの運用単位を持つサイトの集合において、新たなサイトの追加もしくは既存サイトの離脱があった場合、追加もしくは離脱した各サイトで１つ使用すべきネットワーク運用単位の組合せを、追加もしくは離脱後のネットワーク運用単位の各ペア間の接続関係に基づいて少なくともデータの発信もしくは着信を行うサイトが到達可能になるように決定するための設計を行う処理を実行させ、運用サーバとしてのコンピュータに、設計処理においてネットワーク運用単位の組合せが決定できた場合、決定したネットワーク運用単位を、各サイトで新たに使用すべきネットワーク運用単位とする処理を実行させる。
【発明の効果】
【００４９】
本発明によれば、スループットの高いデータ転送ができる最適なネットワーク運用単位の組合せを適宜再設計することができ、これにより、サーバ間でよりスループットの高いデータ転送ができるネットワークの運用が可能となる。
【図面の簡単な説明】
【００５０】
【図１】本発明の第１の実施の形態の設計サーバの構成を示すブロック図である。
【図２】本発明の第１の実施の形態の設計サーバの動作を示す流れ図である。
【図３】本発明の第１の実施の形態による最適なＡＳの組合せ算出の動作を示す流れ図である。
【図４】本発明の第１の実施の形態の設計サーバの動作の具体例の対象となる設計問題を示す図である。
【図５】本発明の第１の実施の形態の設計サーバの動作の具体例を示す図である。
【図６】本発明の第２の実施の形態の設計サーバの構成を示すブロック図である。
【図７】本発明の第２の実施の形態の設計サーバの動作を示す流れ図である。
【図８】本発明の第２の実施の形態の設計サーバによる部分木作成の動作を示す流れ図である。
【図９】本発明の第２の実施の形態の設計サーバの動作の具体例を示す図である。
【図１０】本発明の運用サーバ及び設計サーバのハードウェア構成例を示すブロック図である。
【図１１】本発明の第１の実施の形態のサイトにおける構成を示す図。
【図１２】インターネットにおけるルーティングの階層性の説明図である。
【図１３】本発明の原理の説明図である。
【図１４】本発明の第１の実施の形態によるネットワーク運用システムの全体構成を示す図
【図１５】本発明の第１の実施の形態の運用サーバの構成を示す図
【図１６】本発明の第１の実施の形態の運用サーバの動作を示す図
【図１７】本発明の第１、および第２の実施の形態における接続関係監視の構成と動作を示す図。
【発明を実施するための形態】
【００５１】
次に、本発明の実施の形態について、図面を参照して詳細に説明する。
【００５２】
（第１の実施の形態）
図１４は、本実施の形態によるネットワーク運用システムの構成を示す図である。
【００５３】
図１４を参照すると、本実施の形態によるネットワーク運用システム２００は、運用サーバ７と、設計サーバ１２と、サイト１０００ａ〜１０００ｅとを備える。
【００５４】
運用サーバ７は、ネットワーク内の複数のサイト１０００から適宜情報を収集し、サイトの数やＡＳの接続関係の変化が生じた場合は、該変化の情報を設計サーバ１２へ提供する。
【００５５】
なお、本実施の形態では便宜上サイト１０００として、サイト１０００ａ〜１０００ｅの５台の構成で説明するが、その台数に制限はないものとする。
【００５６】
また、運用サーバ７は、設計サーバ１２から提供された設計情報で示された各サイトが使用すべきＡＳの組合せにより評価値が改善される場合は、各サイトの使用ＡＳを該設計情報の通りに変更する。運用サーバ７の具体的な構成及び評価値については後述する。
【００５７】
設計サーバ１２は、運用サーバ７からサイトの数やＡＳの接続関係の変化の情報を受け取ると、受け取った該情報において各サイトが使用すべきＡＳの組合せを設計し、該設計情報を運用サーバ７へ提供する。
【００５８】
ここで、図１１を参照すると、図１１はサイト１０００の構成を示す。
【００５９】
各サイト１４の内部では、複数のＩＳＰの接続サービスを適宜選択して使える。
【００６０】
例えばサイト１０００があるＩＳＰの接続サービスを使う場合は、そのＡＳ１２００につながるエッジルータ１０１０を経由してデータが転送される。このエッジルータ１０１０につながっているＡＳが使用可能なＡＳである。
【００６１】
具体的に図１１で説明すると、サイト１０００がＡＳ１２００ａを提供しているＩＳＰの接続サービスを使用したい場合は、ＡＳ１２００ａに繋がるエッジルータ１０１０ａを経由してデータが転送される。
【００６２】
アプリケーションサーバ１０３０は、データの発信、着信、もしくは中継（ＨＴＴＰの場合は、プキャッシング）を行う。マルチレイヤスイッチ１０２０はエッジルータ１０１０とアプリケーションサーバ１０３０を収容し、サイト内の異なるアプリケーションサーバ間のデータ転送、もしくはアプリケーションサーバ１０３０とエッジルータ１０１０との間のデータ転送を行う。
【００６３】
図１４の各サイト１０００ａ〜１０００ｅが１つだけ使用するＡＳの、全サイトにおける組合せは、上述したデータ転送のスループットの向上のために、必要に応じて設定変更される。
【００６４】
具体的には、異なるサイト間のＡＳの各ペアに与えられている接続関係によって到達可能となる条件の下で、設計サーバ７で与えられた目的関数を最適化するようなＡＳの組合せの決定を試みるための設計が行われる。
【００６５】
そして、最適なＡＳの組合せが得られる場合は、運用サーバ７が、サイト内のアプリケーションサーバ１６、マルチレイヤスイッチ１５に対して、必要に応じて設定を行う。
【００６６】
ＡＳ間の接続関係によっては、上記条件を満たすＡＳの組合せが得られない、すなわち全サイトを含むＡＳグラフが連結にはならない場合もあり、このような場合は、設計不能として、その旨を出力装置４を通じて運用者に通知する。
【００６７】
ＡＳの組合せの決定を試みるための設計時に与える情報は、あるデータサービスについて、該データサービスが関連する範囲のサイトの集合と、各サイトで利用可能なＡＳと、各ＡＳペア間の接続関係の有無と、ＡＳ間に接続関係がある場合は該接続関係にに付与されたコストを含む。
【００６８】
ここで、データサービスに関連する範囲のサイトとは、該データサービスに関するデータを生成しているオリジンサイト、そして該オリジンサイトからエンドユーザにデータが配信させるエッジサイトを含む。
【００６９】
また、データサービスに関するデータの発信および着信をするサイト以外に、データの生成も配信も行わずに、配信データの中継のみを行う中継サイトも含まれる場合がある。
【００７０】
各データサービスは、ＨＴＴＰベースで提供される場合は、ＵＲＬで区別される。また、あるサイトが、異なる複数のデータサービスの関連範囲に含まれる場合もある。
【００７１】
アプリケーションサーバ１０３０は、データサービス毎に異なるものを用いるものとする。
【００７２】
アプリケーションサーバ１０３０の実態は、物理的なマシーンでも、同一の物理的なマシーンに同時並列で実現される仮想的なマシーンでもよい。
【００７３】
次に、図１５を参照すると、図１５は、本実施の形態による運用サーバ７の構成を示す図である。
【００７４】
運用サーバ７は、キーボード等の入力装置１と、プログラム制御により動作するデータ処理装置８と、情報を記憶する記憶装置９と、ディスプレイや印刷装置等の出力装置４と、設計サーバ間入出力装置１０と、サイト間入出力装置１１とを備える。
【００７５】
データ処理装置８は、サイト情報管理手段８１と、運用処理手段８２と、接続関係監視手段８３とを含む。
【００７６】
サイト情報管理手段８１は、入力装置１を介してサイト１０００ａ〜１０００ｅから適宜情報を取得し、少なくとも一つのサイトの追加もしくは離脱、もしくはあるサイトにおいて使用可能なＡＳの追加もしくは離脱があった場合に、サイト情報記憶部９１を更新し、運用処理手段８２にサイト情報の変更ありの通知を行う。
【００７７】
運用処理手段８２は、サイト情報管理手段８１からサイト情報の変更の通知を受けた場合、もしくは接続監視手段８３から、ＡＳ間の接続関係の変化の通知をうけた場合、サイト情報記憶部９１と運用情報記憶部９２から、後述する設計情報を取り出して、設計サーバ間入出力装置１０を介して該設計情報を設計サーバ８に送る。
【００７８】
また、運用処理手段８２は、設計サーバ８から設計結果を受取ったら、必要に応じて、サイト間入出力装置１１を介して各サイトに対しＡＳ設定変更のための設定を行う。
【００７９】
接続関係監視手段８３は、運用情報記憶部９２を参照し、あるサイトで使用可能なＡＳと他のサイトで使用可能なＡＳとの間の接続関係に変化がないかどうかを監視する。
【００８０】
より詳しい動作を図１７に示す。いま、サイト１０００ａで利用可能なＡＳ１２００ａと、サイト１０００ｂで利用可能なＡＳ１２００ｂとの間には接続関係があるとする。
【００８１】
接続関係監視手段は８３は、サイト間入出力装置１１を介して、ＡＳ１２００ａを終端するエッジルータ１０１０ａに対して、ＡＳ１２００ａを終端するエッジルータ１０１０ｂ宛にｔｒａｃｅｒｏｕｔｅを実行させるよう指示を出し、エッジルータ１０１０ａからエッジルータ１０１０ｂ宛にｔｒａｃｅｒｏｕｔｅが実行された後、該実行の結果を、サイト間入出力装置１１を介して回収する。
【００８２】
そして、該実行結果において、ＡＳ１２００ａ、ＡＳ１２００ｂ以外に含まれるＩＰアドレスを検出した場合は、運用情報記憶部９２で、ＡＳ１２００ａとＡＳ１２００ｂのペアは隣接関係無しであると更新するとともに、運用処理手段８２に、ＡＳの接続関係に変化があった旨の通知をする。
【００８３】
記憶装置９はサイト情報記憶部９１と、運用情報記憶部９２から構成される。
【００８４】
サイト情報記憶部９１は、あるサービスについて、該サービスに関連する範囲となるサイトの集合及び各サイトで使用可能なＡＳの情報を記憶している。該情報は、入力装置１からサイト情報管理手段８１を介して入力される。
【００８５】
運用情報記憶部９２は、各サイトで使用中のＡＳに関する情報と、各サイトで使用可能な全ＡＳの、異なるサイト間のＡＳの各ペアでの接続関係の有無に関する情報とを記憶している。該情報は、接続関係監視手段８３が監視によって変化を検出した時に変更される。
【００８６】
次いで、図１を参照すると、図１は、本実施の形態による設計サーバ１２の構成を示す図である。
設計サーバ１２は、運用サーバ間入出力装置１３と、プログラム制御により動作するデータ処理装置２と、情報を記憶する記憶装置３とを含む。
【００８７】
データ処理装置２は、設計情報処理手段２１と、ＡＳ組合せ評価手段２２と、最適化処理手段２３とを備える。
【００８８】
設計情報処理手段２１は、運用サーバ入出力装置１３を介して入力される設計情報を、データ処理装置２の各手段における扱いに適した形式に変換して、設計情報記憶部３１に格納する処理を行う。
【００８９】
ここで、設計情報は、サイトの集合と、各サイトが使用可能なＡＳと、異なるサイト間の各ＡＳのペア間の隣接関係の有無と、接続関係がある場合は該接続関係に付与されたコスト（ＡＳリンクのコスト）とを含む。
【００９０】
また、設計情報処理手段２１は、扱いに適した形式に変換した設計情報を設計情報記憶部３１に格納した後、ＡＳ組合せ評価手段２２を起動する。
【００９１】
ＡＳ組合せ評価手段２２は、設計情報記憶部３１に格納されている設計情報を参照して、各サイトが１つ使用するＡＳ候補の組合せを１組ずつ作成すると共に、該組合せに対応する最小全域木を、接続関係を有するＡＳ間に与えられたコストに基づいてプリム法により作成する。
【００９２】
ここで、ＡＳ間に与えられたコストとは接続関係を有するＡＳ間の距離を指す。
【００９３】
また、最小全域木とは、グラフを構成する「辺の重みの総和」が最小となる全域木を指し、グラフとは、ノードの集合とエッジ（リンク）の集合で構成されるグラフを指す。
【００９４】
上述した最小全域木、全域木、グラフ、及びプリム法については、本発明の技術分野における当業者にとってよく知られており、方式そのものは本発明とは直接的には関係しないため、その詳細については省略する。
【００９５】
また、ＡＳ間の接続をＡＳリンクと呼び、ＡＳリンクをグラフとして表現したものをＡＳグラフと呼ぶ。
【００９６】
また、ＡＳ組合せ評価手段２２は、作成した最小全域木から、全サイト間が到達可能かどうか判定する。全サイト間が到達可能とは、すなわち作成した最小全域木が設計情報に含まれる全サイトを含むかどうかを意味する。
【００９７】
具体的には、ＡＳ組合せ評価手段２２は、設計情報記憶部３１に格納されている設計情報を参照して、作成した最小全域木が該設計情報に含まれる全サイトを含むかどうかを判定する。
【００９８】
また、ＡＳ組合せ評価手段２２は、全サイト間が到達可能であると判定したＡＳ候補の組合せに対しては、少なくとも該ＡＳ候補の組合せに関する情報を、到達可能組合せ記憶部３２に格納する。
【００９９】
ＡＳ候補の組合せに関する情報とは、具体的には、全サイト間が到達可能であると判定したＡＳ候補の組合せに対応する最小全域木を構成するＡＳリンクの情報を指す。
【０１００】
最適化処理手段２３は、ＡＳ組合せ評価手段２２が処理を終えると、ＡＳ候補の組合せが到達可能組合せ記憶部３２に一つ以上格納されている場合は、到達可能組合せ記憶部３２から、該ＡＳ候補の組合せに関する情報を取り出す。そして、最適化処理手段２３は、到達可能組合せ記憶部３２に格納されているすべてのＡＳ候補の組合せについて、目的関数を評価して、該ＡＳ候補の組合せ最適なＡＳの組合せを算出する。なお、目的関数とは、最適化問題において、最小若しくは最大にしたい値や関数値等のことをいう。
【０１０１】
具体的には、最適化処理手段２３は、各ＡＳ候補の組合せに対応する最小全域木を構成するＡＳリンクのコスト最大値を目的関数として評価し、該ＡＳリンクのコスト最大値が最小となる最適なＡＳの組合せを算出する。
【０１０２】
また、最適化処理手段２３は、最小全域木を構成するＡＳリンクの総数を目的関数として評価し、該ＡＳリンクの総数が最大となる最適なＡＳの組合せを算出する。
【０１０３】
また、最適化処理手段２３は、最小全域木を構成するＡＳリンクのコストの総和を目的関数として評価し、該ＡＳリンクのコストの総和が最小となる最適なＡＳの組合せを算出する。
【０１０４】
また、最適化処理手段２３は、算出した最適なＡＳの組合せを、新たに使用すべきＡＳの組合せとして、運用サーバ間入出力装置１３を介して運用サーバ７に送る。
【０１０５】
記憶装置３は、設計情報記憶部３１と、到達可能組合せ記憶部３２とを備える。
【０１０６】
設計情報記憶部３１には、サイトの集合と、各サイトが使用可能なＡＳと、異なるサイト間の各ＡＳのペア間の隣接関係の有無と、接続関係がある場合は該接続関係に付与されたコスト（ＡＳリンクのコスト）とを含む設計情報が格納される。
【０１０７】
到達可能組合せ記憶部３２は、ＡＳ組合せ評価手段２２によって得られた、全サイト間が到達可能となるＡＳの組合せと、最適化処理手段２３によって、前記の各組合せに対して評価された目的関数の値（評価値）を格納する。
【０１０８】
（第１の実施の形態の動作の説明）
次に、図面を参照して、本実施の形態によるネットワーク運用システム２００の動作について詳細に説明する。
【０１０９】
（運用サーバの動作の説明）
まず、運用サーバ７の動作について、図１５、図１６を参照して詳細に説明する。図１６は、本実施の形態による運用サーバの動作を示す流れ図である。
【０１１０】
サイト情報管理手段８１から、サービスに関連する範囲のサイトの集合において少なくとも一つのサイトの新設、もしくは既存サイトの離脱、もしくは既存サイトにおいて新たに利用可能になったＡＳの設定、もしくは現在利用可能なＡＳの離脱に関する通知があった場合、もしくは接続関係監視手段８３からＡＳ接続関係に変化ありの通知があった場合（ステップＳ１６０１”ＹＥＳ”）、運用処理手段８２は、変化後の、サイトの集合と、各サイトで使用可能なＡＳと、ＡＳ間の接続関係の有無と、ＡＳリンクのコストとを含む設計情報を、設計サーバ間入出力装置１０を介して設計サーバ１２に通知する（ステップＳ１６０２）。
【０１１１】
次いで、運用処理手段８２は、設計サーバ１２から設計結果を受取ると、ステップＳ１６０３”ＹＥＳ”）、該設計結果が設計可能であったか否かを確認する（ステップＳ１６０４）。なお、設計結果は、設計可能の時は各サイトで使用すべきＡＳの組合せを、設計不能の時はその旨の通知を受け取る。
【０１１２】
設計結果が設計不能であった場合（ステップＳ１６０４”ＮＯ”）、運用処理手段８２は、設計不能の旨を出力装置４に表示して（ステップＳ１６？？）、動作を終了する。
【０１１３】
設計結果が設計可能であった場合（ステップＳ１６０４”ＹＥＳ”）、運用処理手段８２は、該設計結果に含まれる新たなＡＳの組合せを、運用情報記憶部９２に格納するとともに、使用ＡＳの変更を接続監視手段８３に通知する（ステップＳ１６０５）。
【０１１４】
次いで、運用処理手段８２は、各サイトで新たに使用すべきＡＳに切り替えるための各種設定を、サイト間入出力装置１１を経由して各サイトに行う（ステップＳ１６０６）。
【０１１５】
各サイトの使用すべき新たなＡＳへの具体的な切替え方法として、運用処理手段８２は、各アプリケーションサーバ１０３０において、サイト１０００の外部へデータを転送するのに使用するデフォルトルータを、該サイト１０００で新たに使用すべきＡＳを終端するエッジルータ１０１０に設定変更する。
【０１１６】
（設計サーバの動作の説明）
次に、図１、図２を参照して、設計サーバ１２の動作について詳細に説明する。
【０１１７】
まず、設計情報処理手段２１が、運用サーバ間入出力装置１３を介して運用サーバから与えられた設計情報を入力し、設計情報処理手段２１は、該設計情報を記憶フォーマットに変換して設計情報記憶部３１に格納し、ＡＳ組合せ評価手段２２を起動する（ステップＳ２０１）。
【０１１８】
次いで、ＡＳ組合せ評価手段２２は、設計情報記憶部３１に格納されている設計情報を参照して、各サイトが１つ使用するＡＳ候補の組合せを１組作成すると共に、該ＡＳ候補の組合せに対応する最小全域木を、接続関係を有するＡＳ間に与えられたコストに基づいてプリム法により作成する（ステップＳ２０２）。最小全域木については目的関数の評価のところで説明する。
【０１１９】
次いで、ＡＳ組合せ評価手段２２は、全サイトが到達可能であるか調べるため、設計情報記憶部３１に格納されている設計情報を参照して、ステップＳ２０２で得られた最小全域木が設計情報に含まれる全サイトを含むかどうかを調べる（ステップＳ２０３）。最小全域木が設計情報に含まれる全サイトを含む場合は、ＡＳ組合せ評価手段２２は、最小全域木を構成するＡＳ候補の組合せを、全サイト間が到達可能なＡＳ候補の組合せと判定し（ステップＳ２０３”ＹＥＳ”）、該ＡＳ候補の組合せと該最小全域木を構成するＡＳリンクの情報を到達可能組合せ記憶部３２に格納して（ステップＳ２０４）、ステップＳ２０５に行く。
【０１２０】
該最小全域木が全サイトを含まない場合、ＡＳ組合せ評価手段２２は、最小全域木を構成するＡＳ候補の組合せを、全サイト間が到達可能なＡＳ候補の組合せではないと判定し（ステップＳ２０３”ＮＯ”）、ステップＳ２０５に進む。
【０１２１】
次いで、ＡＳ組合せ評価手段２２は、各サイトが１つ使用するＡＳ候補の組合せの全パターンを処理したか調べる（ステップＳ２０５）。
【０１２２】
各サイトが１つ使用するＡＳ候補の組合せの全パターンを処理している場合（ステップＳ２０５”ＹＥＳ”）、ＡＳ組合せ評価手段２２は、ステップＳ２０６に進む。
【０１２３】
各サイトが１つ使用するＡＳ候補の組合せの全パターンを処理していない場合（ステップＳ２０５”ＮＯ”）、ＡＳ組合せ評価手段２２は、ステップＳ２０２へ戻り、各サイトが１つ使用するＡＳ候補の組合せの全パターンを処理するまでステップＳ２０２〜ステップＳ２０５を繰り返す。
【０１２４】
各サイトが１つ使用するＡＳ候補の組合せの全パターンを処理した後（ステップＳ２０５”ＹＥＳ”）、最適化処理手段２３が、到達可能組合せ記憶部３２を参照して、全サイト間が到達可能なＡＳ候補の組合せが１以上あるかどうか調べる（ステップＳ２０６）。
【０１２５】
全サイト間が到達可能なＡＳ候補の組合せが１以上ある場合（ステップＳ２０６”ＹＥＳ”）、最適化処理手段２３は、目的関数を最適化するＡＳの組合せを算出する。最適化処理手段２３は、算出した該ＡＳの組合せを、新たに使用すべきＡＳの組合せとして、運用サーバ間入出力装置１３を介して運用サーバ７に転送し（ステップＳ２０７）、動作を終了する。
【０１２６】
到達可能なＡＳの組合せがない場合（ステップＳ２０６”ＮＯ”）、最適化処理手段２３は、設計不能の旨を運用サーバ間入出力装置１３を介して運用サーバ７に転送し（ステップＳ２０８）、動作を終了する。
【０１２７】
（最適なＡＳの組合せ算出の動作の説明）
以下、図２のステップＳ２０７において最適なＡＳの組合せを算出するための具体的な方法について、図３を参照して詳細に説明する。図３は、本実施の形態による最適なＡＳの組合せ算出の動作を示す流れ図である。なお、本実施の形態で考える設計の目的は、エンドツーエンドのデータ転送スループットの最悪値を最大化することである。
【０１２８】
まず、最適化処理手段２３は、ステップＳ２０４で格納されている、各ＡＳ候補の組合せに対応する最小全域木を構成するＡＳリンクのコスト最大値を目的関数として評価し、全てのＡＳ候補の組合せの中で、ＡＳリンクのコスト最大値が最小となるＡＳ候補の組合せを求める（ステップＳ３０１）。
【０１２９】
リンクのコストの最大値とは、すなわちＡＳ間のリンク距離が最大となるリンクの距離（最大リンク距離）を指す。
【０１３０】
これは、例えばある発着信サイト間でＨＴＴＰデータを転送する場合、各中継サイトはＨＴＴＰプロキシーとして動作し、ＡＳリンクの両端のサイト間ではＴＣＰを終端するという状況の元で、発信・着信サイト間でのエンドツーエンドのスループットＳの最小値を最大化することを意図している。
【０１３１】
ここで、最大リンク距離がスループットＳの最小値を与えことについて背景を説明する。
【０１３２】
まず、スループットＳは、エンドツーエンドの経路に含まれる各ＡＳリンクにおけるスループットの最小値が与えられる。
【０１３３】
各ＡＳリンクでのスループットは、その両端のサイト間でＴＣＰを終端しているので、ＡＳリンクを両側で終端するサイト間の距離（ＡＳリンクに与えたコスト）の影響をうけるＲＴＴに反比例する。
【０１３４】
よって、サイト間の距離が大きければ大きいほど、スループットＳの最小値は小さくなるため、各発着信サイト間のスループットＳの最小値は、そのＡＳグラフに含まれる最大リンクコスト（最大リンク距離）で決まる。
【０１３５】
与えられたＡＳグラフの連結性を保ちつつ、最大リンクコストを最小化するには、与えられたＡＳグラフから、連結性が保たれる範囲で、最大コストをもつＡＳリンクを順番に除いていくことになる。この手順で最終的に得られるのは、ここでは証明を示さないが、最小全域木に等しいと考えられる。
【０１３６】
上述した説明についての参考文献として、非特許文献４を挙げる。
【０１３７】
なお、最小全域木を抽出できれば、連結性の判断もできるので、ステップＳ２０２において、ステップＳ２０７で目的関数を評価するよりも早く最小全域木を抽出している。
【０１３８】
ステップＳ３０１の結果、最大リンク距離を最小化するＡＳ候補の組合せが１つである場合（ステップＳ３０２”ＹＥＳ”）、最適化処理手段２３は、該ＡＳ候補の組合せを、各サイトで使用すべき最適なＡＳの組合せと判断する（ステップＳ３０６）。
【０１３９】
ステップＳ３０１の結果、最大リンク距離を最小化するＡＳ候補の組合せが複数ある場合（ステップＳ３０２”ＮＯ”）、最適化処理手段２３は、最大リンク距離を最小化する複数のＡＳ候補の組合せについて、各ＡＳ候補の組合せに対応する最小探索木を構成するＡＳリンクの総数を目的関数とし、該ＡＳリンクの総数が最大となるＡＳ候補の組合せを求める（ステップＳ３０３）。
【０１４０】
ここで、ステップＳ３０３でＡＳリンクの総数が最大となるＡＳ候補の組合せを求めるのは、あるサイト間での転送経路がより多く取れ、障害時や輻輳時により適切な経路を選択できることを意図している。
【０１４１】
ステップＳ３０３の結果、ＡＳリンクの総数を最大にするＡＳ候補の組合せが１つである場合（ステップＳ３０４”ＹＥＳ”）、最適化処理手段２３は、該ＡＳ候補の組合せを、各サイトで使用すべき最適なＡＳの組合せと判断する（ステップＳ３０６）。
【０１４２】
ステップＳ３０３の結果、ＡＳリンクの総数を最大にするＡＳ候補の組合せが複数ある場合（ステップＳ３０４”ＮＯ”）、最適化処理手段２３は、ＡＳリンクの総数を最大にする複数のＡＳ候補の組合せについて、各ＡＳ候補の組合せに対応する最小探索木を構成するＡＳリンクの距離の総和を目的関数とし、該ＡＳリンクの距離の総和が最小となるＡＳ候補の組合せを求める（ステップＳ３０５）。最適化処理手段２３は、求めたＡＳ候補の組合せを、各サイトで使用すべき最適なＡＳの組合せとする（ステップＳ３０６）。
【０１４３】
以上のようにして、最適化処理手段２３は、第１の目的関数の最適解が複数ある場合は、第１の目的関数で最適解となる複数のＡＳ候補の組合せに対して第２の目的関数を評価し、第２の目的関数の最適解が複数ある場合は、第２の目的関数で最適解となる複数のＡＳ候補の組合せに対して第３の目的関数を評価し、第３の目的関数で最適解となるＡＳ候補の組合せを最適なＡＳの組合せとする。
【０１４４】
よって、本実施の形態においては、設計情報記憶部３１には、第１、第２、および第３の目的関数の算出法に関する情報が格納される。
【実施例１】
【０１４５】
次に、具体的な実施例を用いて本実施の形態の動作を説明する。【０１４６】
（構成の説明）
図４はＴＹＯ，ＨＫＧ，ＨＣＭ，ＪＫＴ，ＭＮＬの５つのサイトと、それぞれに与えられたＡＳ候補と、ＡＳ候補間にある接続関係と、サイト間の距離とを示した設計問題の例を示している。【０１４７】
図５は、上述した本実施の形態の動作を、図４に示す設計問題の例に適用したときの結果を示している。当該結果は、到達可能組合せ記憶部３２に格納されている。【０１４８】
ここで、図５に示す（ＴＹＯ，ＨＣＭ，ＪＫＴ，ＭＮＬ）は、各サイトで選択されたＡＳの組合せを示す。ただし、ＨＫＧサイトにはＡＳ候補が一つしかないので、組合せの要素からは省いている。【０１４９】
組合せの表現を単純にするため、図５では、各サイトにおいて選択されるＡＳについて次のように０，１で置き換えている。
ＴＹＯサイト：  ＡＳ２５１６＝０，  ＡＳ２９１４＝１
ＨＣＭサイト：  ＡＳ７６４３＝０，  ＡＳ１８４０３＝１
ＪＫＴサイト：  ＡＳ４７６１＝０，  ＡＳ７７１３＝１
ＭＮＫサイト：  ＡＳ４７７５＝０，  ＡＳ６６４８＝１【０１５０】
（動作の説明）
次に、図５に示すテーブルの中身と、最適化の過程について説明する。【０１５１】
ＡＳ組合せ評価手段２２によって全サイト間の到達性が確認されたＡＳ候補の組合せに対応する最小全域木において、先ず、最適化処理手段２３は、第１の目的関数であるＡＳリンクのコスト（都市間の距離）の最大値を評価する。【０１５２】
図５を参照すると、ＡＳリンクのコスト最大値（Ｍａｘ  ｌｉｎｋ  ｌｅｎｇｔｈ）を最小にする組合せは、（１，０，０，０）と（１，０，０，１）の２組が該当する。【０１５３】
そこで、最適化処理手段２３は、次に第２の目的関数であるＡＳリンクの総数を評価する。【０１５４】
（１，０，０，０）のＡＳリンク数（＃  ｏｆ  ｌｉｎｋｓ）は５個であるのに対し、（１，０，０，１）のＡＳリンク数は６個となるので、（１，０，０，１）がこの問題の解となる。【０１５５】
よって、最適化処理手段２３は、ＡＳの組合せが（１，０，０，１）、すなわち、（ＡＳ２９１４，  ＡＳ９３０４，  ＡＳ７６４３，  ＡＳ４７６１，  ＡＳ６６４８）が、各サイトが使用すべきＡＳの組合せと判断する。【０１５６】
（第１の実施の形態による効果）
次に本実施の形態の効果について説明する。【０１５７】
本実施の形態によれば、与えられた目的関数を明示的に最適化することにより、スループットの高いデータ転送ができる最適なＡＳの組合せを決定することができる。【０１５８】
これにより、サーバ間でよりスループットの高いデータ転送ができるネットワークの設計が可能となる。【０１５９】
その理由は、サイト間のデータ転送経路において、各サイトが有するＡＳのうち使用するＡＳ以外のＡＳはデータ転送経路に入らないことにより、該データ転送経路のホップ数が削減され、サイト間転送時のＲＴＴも削減され、またパケット損失機会も減るからである。【０１６０】
例えば、図１３では、サイト１から５に対して、（ＡＳａ，  ＡＳｂ，  ＡＳｃ，  ＡＳｄ，  ＡＳｅ）というＡＳの組合せが与えられ、例えばサイト２からはサイト４に対しては、ＡＳｂ→ＡＳａ→ＡＳｃ→ＡＳｄという経路になり、ＡＳｂとＡＳｄの間にこの組合せ以外のＡＳが多数に入る場合に比べてスループットが向上する。【０１６１】
また、本実施の形態によれば、あるサービスをおこなうサイトの集合へ新たなサイトが加わったり、その集合から離脱があったりした場合や、あるいはＡＳ間の接続関係に変化に応じて、スループットの向上を図ることができることである。【０１６２】
その理由は、サイトの集合やＡＳ間の接続関係に変化があった際、各サイトで使用すべきＡＳの組合せを設計し直して、再設計語のＡＳの組合せを、新たに使用すべきＡＳの組合せとして、各サイトの設定を変更するからである。【０１６３】
また、本実施の形態によれば、コスト効率よくスループット等の性能を向上させることができる。【０１６４】
その理由は、全てのサイトの間を繋ぐネットワークを構築するのに、コストの高い専用線、ＩＰ−ＶＰＮ、広域イーサネット等の仮想専用ネットワークを用いないからである。
（第２の実施の形態）
次に、本発明の第２の実施の形態によるネットワーク運用システム２００について、図面を参照して詳細に説明する。なお、本実施の形態によるネットワーク運用システム２００の全体構成は上述の第１の実施の形態と同様であるため、詳細は省略する。【０１６５】
第１の実施の形態では、設計サーバ２１は、与えられた制約条件の下で目的関数を最適化するためにいわゆる全数探索を行ったが、本実施の形態では、設計サーバ２１は、制約付きプリム法と呼ぶヒューリスティックな手法で、各サイトが使用すべきＡＳの組合せを求める。【０１６６】
ここで、プリム法とは、最小全域木を求めるひとつの方法である。アルゴリズムとしては、すでに得られている部分木に対して、あらたに加えるノードは、現在の部分木にあるノードからそれにつながるリンクのコストが最小になるように行う。これを加えるノードがなくなるまで再帰的に行う。【０１６７】
また、詳細については後述するが、本実施の形態においては、設計情報に含まれるサイトについて優先順位付けを行う。【０１６８】
サイトの優先順位は、サイトの次数（サイト次数）の大きさの順にきめる。すなわち、設計情報に含まれる全サイトを、サイト次数の大きい順に優先順位付けする。【０１６９】
ここで、サイト次数とは、各サイトにおける最大のＡＳの次数（ＡＳ次数）とする。また、ＡＳ次数とは、各ＡＳが接続関係を持つ他のＡＳの総数、つまり、あるＡＳにおいて、該ＡＳから伸びるＡＳリンクの総数をいう。【０１７０】
また、優先順位付けにおいてサイト次数が同数となるサイトがある場合は、サイトの次数が同数となったサイト同士について、各サイトにおいてサイトの次数を与えるＡＳ（すなわち、各サイト内でＡＳ次数が最大のＡＳ）同士について、それぞれのＡＳ番号を比較し、当該ＡＳ番号の小さい順にサイトを優先順位付けする。【０１７１】
各サイトにおいて、ＡＳの優先順位はまずＡＳのその時のＡＳ次数の大きい順に順位づけし、ＡＳ次数が等しいＡＳが複数ある場合は、該複数のＡＳの中でＡＳ番号の小さい順に順位付けする。【０１７２】
上述の方法により求めた優先順位の情報（優先順位情報）に基づいて、本実施の形態では、以下の制約を課した制約付きプリム法により、部分木を作成する。【０１７３】
第１の制約は、部分木の作成を開始するサイトは、サイトの優先順位が一番高いものにすること。また、プリム法に従って、次に加えるべきリンクコストの等しいＡＳリンクが複数ある場合は、該ＡＳリンクの先のサイトの優先順位が一番高いものを加えるべきサイトとして選ぶこと。【０１７４】
第２の制約は、プリム法に従って次に加えるサイトとして決定したサイトにおいて、到達可能なＡＳ候補が複数ある場合は、該複数のＡＳ候補の中で優先順位が一番高いＡＳを選ぶこと【０１７５】
第３の制約は、あるサイトでＡＳを１つ選択したら、該サイトにおける他のＡＳ候補と、該他のＡＳ候補に繋がるＡＳリンクを削除すること。そして、該サイトの出入りでは必ず選択したＡＳを経由すること。【０１７６】
なお、上述の第３の制約により、選択されなかったＡＳ及び該ＡＳに繋がるＡＳリンクが削除されたことで、各サイトにおけるＡＳで次数が減少するものも出てくることが考えられる。このため、第３の制約により選択されなかったＡＳ及び該ＡＳから伸びるリンクを削除するたびに、まだ部分木に追加していないサイトについて、図８に置ける優先順位付けの処理を行い、優先順位を再計算することとする。【０１７７】
図６を参照すると、本発明の第２の実施の形態による設計サーバ１２は、運用サーバ間入出力装置１３と、データ処理装置５と、記憶装置６とを含む。【０１７８】
運用サーバ間入出力装置１３は、図１に示す第１の実施の形態における入力装置１、出力装置４と同様であるため、その詳細については省略する。【０１７９】
データ処理装置５は、設計情報処理手段５１と、ＡＳ組合せ決定手段５２とを備える。【０１８０】
設計情報処理手段５１は、出力装置４に表示されて設計者が設計情報を入力する入力フォーマットを作成する。【０１８１】
また、設計情報処理手段５１は、設計者が入力フォーマットに沿って、入力装置１を通じて入力する設計情報を、ＡＳ組合せ決定手段５２が処理しやすい形式に変換して、設計情報記憶部６１に格納する処理を行う。【０１８２】
ここで、設計情報は、サイトと、各サイトに与えられたＡＳ候補と、異なるサイト間の各ＡＳのペア間の接続関係の有無と、接続関係がある場合は該接続関係に付与されたコストとを含む。【０１８３】
また、設計情報処理手段５１は、ＡＳ組合せ決定手段５２が処理しやすい形式に変換した設計情報を設計情報記憶部３１に格納した後、ＡＳ組合せ決定手段５２を起動する。【０１８４】
ＡＳ組合せ決定手段５２は、設計情報記憶部６１に格納されている設計情報を取り出して演算用記憶部６２へ格納する。【０１８５】
また、ＡＳ組合せ決定手段５２は、与えられたＡＳ候補の中から、各サイトが１つ使用するＡＳの組合せを制約付きプリム法により決定し、同時に到達性も判定する。制約付きプリム法については、動作の説明において詳細に説明する。【０１８６】
記憶装置６は、設計情報記憶部６１と、演算用記憶部６２とを備える。【０１８７】
設計情報記憶部６１には、サイトと、各サイトに与えられたＡＳ候補と、各ＡＳ候補間の接続関係の有無と、接続関係がある場合は該接続関係に付与されたコストとを含む設計情報が記憶される。【０１８８】
演算用記憶部６２は、ＡＳ組合せ決定手段５２による制約付きプリム法に基づく演算処理によって、未訪問サイトやＡＳ間リンク等の更新されるデータを含む、設計情報が蓄積される。【０１８９】
（第２の実施の形態の動作の説明）
次に、図６及び図７を参照して、本実施の形態の動作について詳細に説明する。図７は、本実施の形態の設計サーバ１２の動作を示す流れ図である。【０１９０】
まず、設計情報処理手段５１が、運用サーバ間入出力装置１３を介して運用サーバから与えられた設計情報を入力し、設計情報処理手段５１は、該設計情報を記憶フォーマットに変換して設計情報記憶部６１に格納し、ＡＳ組合せ決定手段５２を起動する（ステップＳ７０１）。【０１９１】
次いで、ＡＳ組合せ決定手段５２は、設計情報記憶部６１に格納されている設計情報を取り出して演算用記憶部６２に格納し（ステップＳ７０２）、各サイトが１つ使用するＡＳの組合せを制約付きプリム法により決定する（ステップＳ７０３）。ステップＳ７０３の具体的な動作は、後述する。【０１９２】
各サイトが１つ使用するＡＳ候補の組合せを決定した後（ステップＳ７０３）、ＡＳ組合せ決定手段５２は、全サイトが到達可能かを判定するため、演算用記憶部６２の部分木情報と、設計情報記憶部６１の設計情報を参照し、現在得られている部分木が、設計情報として最初に与えられた全サイトを含むか否かを調べる（ステップＳ８１１）。なお、部分木情報については、後述する。【０１９３】
現在得られている部分木が、設計情報として最初に与えられた全サイトを含む場合、ＡＳ組合せ決定手段５２は、該部分木に各サイトを加えた時に選択されたＡＳの組合せを、全サイト間が到達可能なＡＳの組合せと判断する（ステップＳ７０４”ＹＥＳ”）。ＡＳ組合せ決定手段５２は、該ＡＳの組合せを、新たに使用すべきＡＳの組合せとして、運用サーバ間入出力装置１３を介して運用サーバ７に転送し（ステップＳ７０５）、動作を終了する。【０１９４】
現在得られている部分木が、設計情報として最初に与えられた全サイトを含まない場合、ＡＳ組合せ決定手段５２は、該部分木に各サイトを加えた時に選択されたＡＳの組合せでは、全サイト間が到達可能ではないと判断し（ステップＳ７０４”ＮＯ”）、その旨を運用サーバ間入出力装置１３を介して運用サーバ７に転送し（ステップＳ７０６）、動作を終了する。【０１９５】
（部分木作成の動作の説明）
ここで、ステップＳ７０３の動作について、図８を参照して説明する。図８は、本実施の形態による部分木作成の動作を示す流れ図である。【０１９６】
図８を参照すると、まず、ＡＳ組合せ決定手段５２は、設計情報に含まれる全サイトを、サイト次数の大きい順に優先順位付けする（ステップＳ８０１）。【０１９７】
ステップＳ８０１の結果、サイト次数が同数となるサイトがある場合（ステップＳ８０２”ＹＥＳ”）、ＡＳ組合せ決定手段５２は、サイトの次数が同数となったサイト同士について、各サイトにおいてサイトの次数を与えるＡＳ、すなわち、各サイト内でＡＳ次数が最大のＡＳ同士について、それぞれのＡＳ番号を比較し、当該ＡＳ番号の小さい順にサイトを優先順位付けする（ステップＳ８０３）。【０１９８】
次いで、ＡＳ組合せ決定手段５２は、サイトの優先順位の情報を、演算用記憶部６２に格納する（ステップＳ８０４）。【０１９９】
次いで、ＡＳ組合せ決定手段５２は、演算用記憶部６２を参照し、優先順位が一番高いサイトを開始サイトとした選択し、さらに該サイトで優先順位が一番高いＡＳを選択し、部分木の作成を開始する（ステップＳ８０５）。【０２００】
次いで、ＡＳ組合せ決定手段５２は、選択されなかったＡＳ及び該ＡＳから伸びるＡＳリンクを削除し、削除したＡＳ及びＡＳリンクの情報に基づいて、演算用記憶部６２に格納されている設計情報を更新する（ステップＳ８０６）。【０２０１】
次いで、ＡＳ組合せ決定手段５２は、演算用記憶部６２の設計情報を参照して、まだ部分木に加えていない全サイトについて、ステップＳ８０１〜Ｓ８０４と同様の処理を行い、再度優先順位付けを行い、演算用記憶部６２に格納されている優先順位情報を更新する（ステップＳ８０７）。【０２０２】
次いで、ＡＳ組合せ決定手段５２は、演算用記憶部６２の設計情報を参照し、制約付きプリム法により、次に部分木に追加すべきサイトを決定し、次に演算用記憶部６２の優先順位情報を参照し、次に部分木に追加すべきサイトとして決定されたサイトにおける最高順位のＡＳを、該サイトで使用するＡＳと決定し、部分木へ追加する（ステップＳ８０８）。【０２０３】
すなわち、次に追加すべきサイトは、まだ部分木に追加されていないサイトであって、直前に部分木へ追加されたサイト（直前追加サイト）のＡＳから伸びるＡＳリンクに繋がるＡＳ候補を有するサイトのうち、リンクコストが最小となるサイトが選ばれる。【０２０４】
次いで、ＡＳ組合せ決定手段５２は、次に部分木に追加すべきサイトとして決定されたサイトで選ばれなかったＡＳと、該ＡＳに繋がるＡＳリンクを削除し、削除したＡＳ及びＡＳリンクの情報に基づいて、演算用記憶部６２に格納されている設計情報を更新する（ステップＳ８０９）。【０２０５】
次いで、ＡＳ組合せ決定手段５２は、演算用記憶部６２を参照して、次に追加可能なサイト（追加可能サイト）があるかどうか確認する（ステップＳ８１０）。【０２０６】
具体的には、ＡＳ組合せ決定手段５２は、直前追加サイトのＡＳから伸びるＡＳリンクに繋がるＡＳ候補を有するサイトを探し、直前追加サイトのＡＳから繋がるサイトがなかった場合は、直前追加サイトのひとつ前のサイトへ遡り、同様に当該ひとつ前のサイトのＡＳから伸びるＡＳリンクに繋がるＡＳ候補を有するサイトを探す。そして、上述の探索により見つかったサイトを、追加可能サイトと判断する。【０２０７】
追加可能サイトがあると判断した場合（ステップＳ８１０”ＹＥＳ”）、ＡＳ組合せ決定手段５２は、ステップＳ８０７の処理へ戻り、追加可能サイトがなくなるまで、ステップＳ８０７〜Ｓ８１０の処理を繰り返し、ステップＳ８１０で追加可能サイトがないと判断した場合、ＡＳ組合せ決定手段は部分木作成の動作を終了する（ステップＳ８１０”ＮＯ”）。
【実施例２】
【０２０８】
次に、具体的な実施例を用いて本実施の形態の動作を説明する。【０２０９】
（構成の説明）
図９は、図４で与えられた設計問題の例に対して、上述した本実施の形態の動作を適用したときの結果を示している。当該結果は、演算用記憶部６２に格納されている。【０２１０】
（動作の説明）
以下、本実施の形態による制約付きプリム法により図９の解を求めた手順を説明する。【０２１１】
まず、図８のステップＳ８０１〜Ｓ８０４において、全サイトに優先順位をつけると以下のようになる。なお、括弧内はサイト次数を与えるＡＳをしめす。【０２１２】
ＴＹＯ（ＡＳ２９１４）＞ＨＫＧ（ＡＳ９３０４）＞ＪＫＴ（ＡＳ４７６１）＞ＭＮＬ（ＡＳ４７７５）＞ＨＣＭ（ＡＳ７６４３）【０２１３】
まず、ステップＳ８０５ではＴＹＯサイトが部分木の開始サイトとして選択される。【０２１４】
なお、ＴＹＯサイトにおいてＡＳ２９１４が選択されるのは、ＡＳ２５１６のＡＳ次数が”３”であるのに対し、ＡＳ２９１４のＡＳ次数が”４”であるためである。【０２１５】
そして、ステップＳ８０６で選択されなかったＡＳ２５１６及びＡＳ２５１６から伸びるＡＳリンクは削除される。【０２１６】
次に、ステップＳ８０７で、ＴＹＯサイトを除いたサイトに再度優先順位をつけた後、ステップＳ８０８で次に部分木に追加すべきサイトを決定する。【０２１７】
ＴＹＯ（ＡＳ２９１４）から伸びるＡＳリンクでリンクコストが最小なのはＴＹＯ−ＨＫＧのため、ステップＳ８０８ではＨＫＧサイトを部分木に追加し、ステップＳ８０９で設計情報を更新する。なお、ＨＫＧサイトはＡＳが１つしか存在しないため、必然的にＡＳ９３０４が使用するＡＳとなる。【０２１８】
次に、ステップＳ８１０で追加可能サイトを確認すると、ＨＫＧ（ＡＳ９３０４）から伸びるＡＳリンクはＭＮＬ，ＪＫＴ，ＨＣＭの３サイトがあるため、ステップＳ８０７に戻る。【０２１９】
そして、再びステップＳ８０７で、ＴＹＯサイトとＨＫＧサイトを除いたサイトに優先順位をつけた後、ステップＳ８０８で次に部分木に追加すべきサイトを決定する。【０２２０】
再びステップＳ８０８では、ＴＹＯ−ＨＫＧの部分木に対して、くわえるべき候補として上記３つのサイトを考えると、ＴＹＯ−ＭＮＬ間のコストが最小なので、ＭＮＬサイトを追加し、順位の高い方のＡＳ６６４８を選択する。【０２２１】
同様にして、その後ＨＫＧからＨＣＭサイトを追加し到達可能なＡＳ７６４３を選択する。最後にＨＫＧからＪＫＴサイトを追加し、到達可能なＡＳ４７６１を選択する。【０２２２】
（第２の実施の形態による効果）
次に本実施の形態の効果について説明する。【０２２３】
本実施の形態によれば、次数の高いＡＳを選ぶことで、他のＡＳとの間で取りうる経路を多くする可能性を高めることができる。【０２２４】
また、本実施の形態によれば、サイト数やＡＳの候補数が増えていっても、第１の実施の形態よりも少ない計算量で各サイトが使用すべきＡＳの組合せを決定することができる。【０２２５】
その理由は、以下の通りである。【０２２６】
サイト数をＮ、各サイトで使用可能なＡＳの数の最大値をＡ、ＡＳの組合せにおけるＡＳリンクの総数の最大値をＬとすると、通常のプリム法による計算量（計算の複雑度）はＬ＊ｌｏｇＮとなる。対して、制約付きプリム法では、サイトを追加する毎に、残っているサイトの中でそのサイトで使用可能なＡＳのソートを行うので、当該処理の計算量はＯ（Ｎ＊Ａ＊ｌｏｇＡ）となり、よって、制約付きプリム法による計算量はＯ（Ｌ＊Ｎ＊ｌｏｇＮ＊Ａ＊ｌｏｇＡ）となる。【０２２７】
一方、第１の実施の形態では、ＡＳの組合せの総数はＡＮで、最小全域木をプリム法で抽出すると、該抽出の計算量はＯ（Ｌ＊ｌｏｇＮ）になり、よって、最小全域木をプリム法で抽出する計算量はＯ（ＡＮ＊  Ｌ＊ｌｏｇＮ）となる。【０２２８】
なお、上述した第１および第２の実施の形態において、各サイトに与えたＡＳ候補の間の接続関係については、次のようにして該接続関係の情報を得ることができる。【０２２９】
例えば、ＣＩＤＲ  ＲＥＰＯＲＴのサイト  （ｈｔｔｐ：／／ｗｗｗ．ｃｉｄｒ−ｒｅｐｏｒｔ．ｏｒｇ／ａｓ２．０／）からは、ＢＧＰを扱うルータから得たれた現時点の接続関係の情報が得られる。【０２３０】
また、ＣＡＩＤＡのＡＳ  ｒｅｌａｔｉｏｎｓｈｉｐのサイト（ｈｔｔｐ：／／ｗｗｗ．ｃａｉｄａ．ｏｒｇ／ｄａｔａ／ａｃｔｉｖｅ／ａｓ−ｒｅｌａｔｉｏｎｓｈｉｐｓ／）では、ピアリング、トランジットの推定の結果まで得られる。【０２３１】
さらに、Ｒｏｂｔｅｘのサイト（ｈｔｔｐ：／／ｗｗｗ．ｒｏｂｔｅｘ．ｃｏｍ／）からは、Ｉｎｔｅｒｎｅｔ  Ｒｏｕｔｉｎｇ  Ｒｅｇｉｓｔｏｒｙに登録された情報に基づいた、接続関係に関する情報が得られる。【０２３２】
（第３の実施の形態）
次に、本発明の第３の実施の形態によるネットワーク運用システム１００について、詳細に説明する。【０２３３】
本実施の形態では、第１及び第２の実施の形態において、データの発信もしくは着信をするサイト以外に、中継を専門におこなうサイトを含めた設計を行う。【０２３４】
具体的には、図２のステップＳ２０１でおよび図７のステップＳ７０１で与えられた設計情報に含まれる各サイトについて、発信もしくは着信のあるサイトと、中継専用サイトとの区別をつけたうえで、ＡＳの組み合わせを算出する。【０２３５】
そして、図２のステップＳ２０３，図７のステップＳ７０４における到達性のチェックでは、少なくとも発着もしくは着信のサイトとして与えられたサイトの間で到達性が確認できれば、設計できたものとする。すなわち、与えられたすべての中継サイトと他のサイト間で到達性を確保する必要はない。【０２３６】
（第３の実施の形態による効果）
次に本実施の形態の効果について説明する。【０２３７】
本実施の形態によれば、発着信サイト以外に中継サイトを与えることで、データの転送スループットを向上させることができる。【０２３８】
その理由は、例えば、図４の問題例で、ＨＫＧサイトだけは中継専用サイトとし、他の全てのサイトは発着信サイトとして与えられたものとすると、データ転送経路にＨＫＧサイトを含む場合は、最大リンク距離の最小値は図５に示したように３２１２である。【０２３９】
一方、データ転送経路にＨＫＧサイトを含まない場合は、ＴＹＯ−ＪＫＴ間の５７６８が最大リンク距離の最小値となる。【０２４０】
よって、逆に中継専用のＨＫＧサイトを入れることで、最大リンク距離の最小値が５７６８から３２１２に削減でき、データ転送スループットの向上につながる。【０２４１】
（第４の実施の形態）
次に、本発明の第４の実施の形態によるネットワーク運用システム２００について、図面を参照して詳細に説明する。【０２４２】
第１の実施の形態、及び第２の実施の形態により得られたＡＳグラフに基づく経路によって、発信サイトと着信サイトの間でデータを転送する場合、発信サイトにおいて、もしＩＰアドレスが着信サイトに設定されたパケットをそのままインターネット上に転送すると、発信サイトと着信サイトがそれぞれ使用するＡＳの間に接続関係がない場合は、ＢＧＰの経路制御に従ってパケットが転送され、必ずしも本発明が提供する設計方法で意図された経路上を転送されるとは限らない。【０２４３】
そこで、本実施の形態では、発信サイトと着信サイトの間でＨＴＴＰのデータを転送する場合は、各中継サイトはＴＣＰを終端し、ＨＴＴＰのデータを取り出すプロキシーとして動作させる。【０２４４】
更に、場合により複数のサイトのそれぞれから同一データに対する要求がある場合に、該要求があるごとに当該データを返送できるように、各中継サイトをプロキシキャッシュとして動作させる。【０２４５】
そして、オリジンサイトに対応するドメイン名が与えられたとき、各エッジサイトでは、設計で得られたＡＳグラフ上で設定可能な発着信サイト間の経路に基づいて転送できるように設定する。【０２４６】
また、各サイトにおいて、非特許文献５に記載のＳｑｕｉｄを用いる場合は、ＨＴＴＰ  ｇｅｔ  ｒｅｑｕｅｓｔで要求されるＵＲＬに含まれるドメインに対して、ＨＴＴＰ  ｇｅｔ  ｒｅｑｕｅｓｔの次の転送先をプロキシーの「親」として設定しておく。【０２４７】
そして、ある発着信サイト間において、経路が複数ある場合、各経路に含まれるＡＳリンクの距離の最大値が最小となる経路が優先して選ばれるようにする。【０２４８】
ここで、ＡＳリンクの距離は、該ＡＳリンクを両側で終端するサイト間の距離で与える。この理由は、設計時にエンドツーエンドのＴＣＰスループットを最大化しようとしたのと同じである。【０２４９】
例えば図９の設計例において、ＴＹＯサイトがオリジンサイトとし、エッジサイトであるＭＮＬサイトへの分配経路の決定方法について説明する。【０２５０】
ＴＹＯサイトとＭＮＬサイトの間には、ＴＹＯ−ＭＮＬの１ホップの経路（２９９０ｋｍ）と、ＴＹＯ−ＨＫＧ−ＭＮＬの２ホップの経路（２８５４ｋｍ＋１０１３ｋｍ）があるが、ＴＹＯ−ＨＫＧ−ＭＮＬの２ホップの経路の方が最大リンク距離が小さいため、ＴＹＯ−ＨＫＧ−ＭＮＬの２ホップの経路を、ＴＹＯ−ＭＮＬの１ホップの経路よりも優先して用いるようにする。【０２５１】
また、各サイトにおいて、非特許文献５にあるＳｑｕｉｄを用いる場合は、ＭＮＬサイトにおいてＨＫＧサイトとＴＹＯサイトを親に設定し、それぞれに付与する重みがＨＫＧ＞ＴＹＯとなるように設定しておく。【０２５２】
（第４の実施の形態による効果）
次に本実施の形態の効果について説明する。【０２５３】
本実施の形態によれば、第１の実施の形態、及び第２の実施の形態により得られたＡＳグラフに基づく経路によって発信サイトと着信サイトの間でデータを転送する場合、発信サイトにおいて、もしＩＰアドレスが着信サイトに設定されたパケットをそのままインターネット上に転送した場合に、発信サイトと着信サイトがそれぞれ使用するＡＳの間に接続関係がない場合でも、該ＡＳグラフに基づく経路に沿って転送される。【０２５４】
なお、上述した第１〜第４の実施の形態では、各サイトは、インターネットを構成するＡＳを、選択・決定すべきネットワークの運用単位としてきたが、他の技術に基づくネットワーク運用単位としては、非特許文献６に示す、ＭＥＦ（Ｍｅｔｒｏ  Ｅｔｈｅｒｎｅｔ  Ｆｏｒｕｍ）で議論されているイーサネット・ドメインも考えられる。【０２５５】
当該議論においては、異なるキャリア、もしくは異なる運用業者におけるイーサネット・ドメイン間の接続方式として、Ｅ−ＮＮＩの標準化も議論されている。【０２５６】
上述した説明についての参考文献として、非特許文献５、及び非特許文献６を挙げる。【０２５７】
次に、本発明の運用サーバ７及び設計サーバ１２のハードウェア構成例について、図１０を参照して説明する。図１０は、運用サーバ７及び設計サーバ１２のハードウェア構成例を示すブロック図である。【０２５８】
図１０を参照すると、運用サーバ７及び設計サーバ１２は、一般的なコンピュータ装置と同様のハードウェア構成であり、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）８０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリからなる、データの作業領域やデータの一時退避領域に用いられる主記憶部８０２、ネットワークを介してデータの送受信を行う通信部８０３、入力装置８０５や出力装置８０６及び記憶装置８０７と接続してデータの送受信を行う入出力インタフェース部８０４、上記各構成要素を相互に接続するシステムバス８０８を備えている。記憶装置８０７は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、磁気ディスク、半導体メモリ等の不揮発性メモリから構成されるハードディスク装置等で実現される。【０２５９】
本発明の運用サーバ７のデータ処理装置８及び設計サーバ１２のデータ処理装置８０９は、プログラムを組み込んだ、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等のハードウェア部品である回路部品を実装することにより、その動作をハードウェア的に実現することは勿論として、その機能を提供するプログラムを、記憶装置８０７に格納し、そのプログラムを主記憶部８０２にロードしてＣＰＵ８０１で実行することにより、ソフトウェア的に実現することも可能である。【０２６０】
この出願は、２００９年８月２６日に出願された日本出願特願２００９−１９５５０７を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【０２６１】
本発明によれば、ネットワーク運用単位であるＡＳの多数から構成されるインターネット上に地理的に分散配置された複数のサーバサイトもしくはデータセンタからの、コンテンツ配信サービスやアプリケーション配信サービスを提供する等の用途に適用できる。【０２６２】
また、本発明によれば、オリジンサイトからエッジサイト間へのコンテンツの分配のみならず、オリジンサーバのアプリケーションで処理した結果を、１つもしくは複数の中継サイトを経由してエンドユーザのＷｅｂクライアントに転送するアプリケーション配信にも使える。【０２６３】
以上好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも、上記実施の形態に限定されるものでなく、その技術的思想の範囲内において様々に変形して実施することができる。
【図１】
0005598475.tif 000002
【図２】
0005598475.tif 000003
【図３】
0005598475.tif 000004
【図４】
0005598475.tif 000005
【図５】
0005598475.tif 000006
【図６】
0005598475.tif 000007
【図７】
0005598475.tif 000008
【図８】
0005598475.tif 000009
【図９】
0005598475.tif 000010
【図１０】
0005598475.tif 000011
【図１１】
0005598475.tif 000012
【図１２】
0005598475.tif 000013
【図１３】
0005598475.tif 000014
【図１４】
0005598475.tif 000015
【図１５】
0005598475.tif 000016
【図１６】
0005598475.tif 000017
【図１７】
0005598475.tif 000018