説明

サーバ群配置設計システムと方法およびプログラム

【課題】リンク故障時においてもサーバへのアクセスを確保した上で、さらにサーバ集合までの距離を抑えるようなサーバ配置を決定する。
【解決手段】トポロジ情報・設計パラメタ入力部101は、ネットワークのトポロジとサーバ数の上限Sと整数k,B,rを入力して記憶装置に格納し、サーバ配置箇所選択部102は、全てのノードに対して、辺独立な経路でk個以上のサーバに到達でき、かつ各ノードからr個の最近接サーバまでのホップ距離の総和がB以下となるように、S個以下のサーバを、各ノードからr個の最近接サーバまでのホップ距離の総和が最小となるよう、ネットワーク上のノード配置を特定し、サーバ配置箇所出力部103は、サーバ配置箇所選択部102が特定したノード配置情報を出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワーク上でコンテンツ配信サービスをするサーバ(コンピュータ)の配置技術に係り、特に、同一コンテンツを保持する複数のサーバを、各サーバの負荷を考慮して効率良く配置するのに好適な技術に関するものである。
【背景技術】
【0002】
WWW(World Wide Web)によるコンテンツ提供において、ユーザによるサーバへのアクセスの快適性の確保は重要である。そのための一つの技術として、同一コンテンツを保持する複数のミラーサーバをネットワーク上に配置し、ユーザからのアクセスを適切なサーバにルーティングすることにより、遅延時間の削減とサーバの負荷分散およびネットワークとサーバの故障への耐性の向上を図るものがある。
【0003】
この技術を採る場合、ネットワーク上でのサーバの配置場所が性能を左右するため、サーバ配置設計が重要となる。
【0004】
このようなサーバ配置に関して、これまで様々な観点から研究が行われている。それらは主にサーバまでの距離やサーバ負荷分散を考慮したモデル化が中心である。
【0005】
例えば、「pセンター問題」に基づく技術は、p個のサーバ(センター・コンピュータ)をネットワーク上に配置する際、各点(例えばクライアント・コンピュータ)から最も近いサーバまでの距離の最大値を最小にするというものである。これは、いずれのノード(クライアント・コンピュータ)からも、最も近いサーバまでの距離が短くなるように配置していることを意味する。
【0006】
類似の技術として、「pメディアン問題」や、「施設配置問題」に基づくものがある。これらはいずれも、サーバ集合までの距離を考慮したものであり、サーバアクセスの遅延の削減やネットワーク負荷軽減を目的としたものである。
【0007】
一方、サーバ群へのアクセスの「信頼性」を考慮したモデル化技術もある。このような信頼性の観点から、リンク故障などの異常時においても、いずれかのサーバまでの経路が確保され、全てのユーザがサービスを継続して受けられることが重要である。
【0008】
このような信頼性を評価する尺度として、ユーザ(クライアント・コンピュータ)とサーバ群との間の連結性を測るNA(Node−to−Area)連結度というものがある。高い信頼性を実現するためには、要求されるNA連結度を満たすようにサーバ配置を決定することになる。
【0009】
以上の技術については、非特許文献1に記載されている。
【先行技術文献】
【非特許文献】
【0010】
【非特許文献1】滝根,伊藤,西尾,“ネットワーク設計理論”,岩波書店,Jun.,2001.
【発明の概要】
【発明が解決しようとする課題】
【0011】
このように、クライアントからサーバまでの距離や信頼性それぞれについて要求を満足するサーバ配置を決定する技術は、これまでも広く研究されてきている。しかし、クライアントからサーバまでの距離と信頼性の両者を考慮したものはない。
【0012】
このような、連結度を保証して信頼性を向上させることと経路長(=サーバまでの距離)を抑えることの、両方の制約条件を満たすような解を出力するアルゴリズムは、単に、これらアルゴリズムを組み合わせるだけでは対処できず、本質的に新たなアルゴリズムを設計する必要がある。
【0013】
解決しようとする問題点は、従来の技術では、連結度を保証して信頼性を向上させることと経路長を抑えることの、両方の制約条件を満たすような解を、効率的に求めることができない点である。
【0014】
本発明の目的は、これら従来技術の課題を解決し、リンク故障時においてもサーバへのアクセスを確保した上で、さらにサーバ集合までの距離を抑えるようなサーバ配置を決定することを可能とすることである。
【課題を解決するための手段】
【0015】
上記目的を達成するため、本発明では、ヒューリスティックアルゴリズム(近似アルゴリズム)を設計し、信頼性の評価尺度としてNA辺連結度を用い、サーバ集合との間の距離として各点からサーバまでの距離の和を用いることにより、ネットワークのトポロジが与えられたときに、サーバへの接続性を確保しつつホップ距離が最小となるよう、サーバを最適配置する。例えば、(1)ネットワークのトポロジとサーバ数の上限Sと整数k,B,rが与えられたときに、全てのノードに対して、辺独立な経路でk個以上のサーバに到達でき、かつ各ノードからr個の最近接サーバまでのホップ距離の総和がB以下となるように、S個以下のサーバを、各ノードからr個の最近接サーバまでのホップ距離の総和が最小となるよう、ネットワーク上のノードに配置する。尚、(2)領域までの距離の和が大きくならないように、各不足成分から点を選んでいく。また、(3)このように各不足成分から点を選ぶ際、他の全ての点までの距離の和が大きくならないよう点を選択する。
【発明の効果】
【0016】
本発明によれば、ネットワークのトポロジを基に、サーバへの接続性を確保しつつホップ距離が最小となるよう、サーバを最適配置することができ,例えば、WWWによるコンテンツ提供における、ユーザによるサーバへのアクセスの快適性を確保することが可能となる。
【図面の簡単な説明】
【0017】
【図1】本発明に係るサーバ群配置設計処理システムの構成例を示すブロック図である。
【図2】図1におけるサーバ群配置設計処理システムの第1の処理動作例を示すフローチャートである。
【図3】図1におけるサーバ群配置設計処理システムの第2の処理動作例を示すフローチャートである。
【図4】図1におけるサーバ群配置設計処理システムの評価例を示す説明図である。
【発明を実施するための形態】
【0018】
以下、図を用いて本発明を実施するための最良の形態例を説明する。図1では、本発明に係るサーバ群配置設計処理システムの構成例を示しており、本例のサーバ群配置設計処理システムは、CPU(Central Processing Unit)や主メモリを具備したコンピュータ構成からなり、プログラムされたコンピュータ処理を実行する機能として、トポロジ情報・設計パラメタ入力部101とサーバ配置箇所選択部102およびサーバ配置箇所出力部103を具備し、これら各部のプログラムされたコンピュータ処理によって、コンテンツ配信サービスをするサーバのネットワーク上での配置を行うと共に、このようなサーバ配置を行う際、サーバへの複数の接続経路を確保すると共に、サーバへの距離が最小となるように、サーバ配置位置の決定を行う。
【0019】
トポロジ情報・設計パラメタ入力部101は、ネットワークのノード・リンクの構成と設計パラメータを入力するものであり、図示していないキーボードやマウス等の入力装置を用いた操作者の入力操作により、例えば、外部記憶媒体、あるいは、オンラインから入力されるトポロジ情報と設計パラメタを入力し、図示していない記憶装置に記憶する。
【0020】
本例では、トポロジ情報・設計パラメタ入力部101は、ネットワークのトポロジとサーバ数の上限Sと整数k,B,rを入力して記憶装置に格納する。
【0021】
サーバ配置箇所選択部102は、トポロジ情報・設計パラメタ入力部101が入力したデータを用いて最適なサーバ配置個所を算出するものであり、トポロジ情報・設計パラメタ入力部101が入力し記憶装置に記憶したトポロジ情報と設計パラメタを読み出して、本発明に係る処理(信頼性と効率性を考慮したサーバ群配置処理)を実行する。
【0022】
本例では、サーバ配置箇所選択部102は、ネットワークのトポロジとサーバ数の上限Sと整数k,B,rが与えられたときに、全てのノードに対して辺独立な経路でk個以上のサーバに到達でき、かつ各ノードからr個の近接サーバまでのホップ距離の総和がB以下となるように、S個以下のサーバを、ネットワーク上のノードに配置する処理を実行する。
【0023】
サーバ配置個所出力部103は、サーバ配置箇所選択部102が算出した、サーバを配置するノード群を出力するものであり、サーバ配置箇所選択部102の決定結果を、CRT(Cathode Lay Tube)やLCD(Liquid Crystal Display)等の表示装置に表示したり、プリンタで印字したり、記憶媒体に記録したり、オンライン上の他のコンピュータ装置等に送信したりする。
【0024】
以下、このような構成からなるサーバ群配置設計処理システムによる、本発明に係る、サーバ群配置設計処理動作について説明する。
【0025】
トポロジ情報・設計パラメタ入力部101により、処理対象のネットワークのトポロジと設計パラメタを入力する。トポロジデータの例としては、ノードiとノードj間にリンクが存在する場合には「1」を、しない場合には「0」をとる2値変数を要素に持つ行列が考えられる。
【0026】
また、設計パラメタは、サーバの連結度を表すパラメタk(例:k=3)と、平均ホップ長を考慮する範囲を決めるパラメタp(例:p=2)の二つがある。
【0027】
サーバ配置箇所選択部102は、トポロジ情報・設計パラメタ入力部101が入力したトポロジ情報と設計パラメタを用いて効果的なサーバ配置箇所を算出し、サーバ配置箇所出力部103は、サーバ配置箇所選択部102の算出結果(サーバ配置個所)を出力する。
【0028】
サーバ配置箇所選択部102が算出してサーバ配置箇所出力部103が出力するデータは、サーバを設置するノードの集合であり、データフォーマットとしては、例えばノードnにサーバを配置する場合に「1」を、しない場合に「0」をとる2値変数を要素にもつノード数の次元のベクトルが考えられる(例:(0,0,1,1,0,1,1,0))。
【0029】
本例のサーバ配置箇所選択部102では、以下に詳細を示すようにして、サーバの連結度を表すパラメタkに対して、極小k辺不足成分S,S,…,Sを求め、i=1,2,…,pの各ノードiに対して、minv∈Simaxw∈V{c(w)+d(v,w)}となる点vをvとし、そのような点vが複数ある場合、maxw∈V{c(w)+d(v,w)}の値をとるwの個数が最小となる点vを選び、全てのw∈Vに対して、「c(w)←c(w)+d(v,w)」とし、「A←{v}」とすることで、信頼性と効率性を考慮したサーバ群配置箇所を選択する。
【0030】
以下、上述のサーバ配置箇所選択部102による、本発明に係る信頼性と効率性を考慮したサーバ群配置設計法について、詳細を説明する。
【0031】
まず、本発明に係る信頼性と効率性を考慮したサーバ群配置設計を行う際に用いる「問題」の「定式化」について説明する。
【0032】
同一コンテンツを提供するサーバ群へのアクセスの信頼性として、一定の個数のリンク故障時においても、少なくともいずれか一つのサーバへの可到達性を保証できることと考える。従って、信頼性の尺度として、「NA(Node−to−Area)辺連結度」を用いる。ここでは、説明の簡単のためリンク故障のみを扱うことにする。
【0033】
まず、NA辺連結度の定義を述べる。点Vと辺Eからなる無向グラフG=(V,E)において、点部分集合W(W⊂V,W≠φ)…(φ:空集合)に対して、辺の部分集合{(v,w)∈E|v∈W,w∈V−W}を「E(W)」と表し、カットという。
【0034】
「A⊆W,B⊆V−W」であるとき、カットE(W)は集合Aと集合Bを分離するといい、カットE(W)に含まれる辺の本数をカットサイズという。集合Aと集合Bを分離する任意のカットのサイズがk以上であるとき、集合Aと集合Bはk辺連結と言う。
【0035】
k辺連結であるような最大のカットサイズkを、集合Aと集合Bの間の局所辺連結度と言い、λ(A,B)と表す。これは、どのような(λ(A,B)−1)本以下の同時リンク故障によっても、集合Aと集合B間での通信が継続できることを意味する。
【0036】
グラフG=(V,E)と、その点部分集合族X={V,V,…,V}の組(G,X)を「領域グラフ」と言う。各「V∈X」を領域と言う。このような領域グラフを用いることによって、複数種類のサービスの信頼性を同時に扱うことができるようになる。
【0037】
すなわち、領域グラフ(G,X)において、各点と領域間の局所辺連結度の最小値を、領域グラフのNA辺連結度と言い、λ(G,X)と表す。このNA辺連結度がkである領域グラフをkNA辺連結領域グラフという。
【0038】
以降は、説明を簡単にするために、領域グラフの領域は一つ「A」だけとするが、複数の領域の場合も同様にできる。
【0039】
「信頼性を確保する」ことに目的を限定したサーバ配置は、サーバ数がS、要求NA辺連結度がkの時、kNA辺連結になるように領域を決定する問題、すなわち、以下の「NA辺連結度保証領域決定問題」として定式化できる。
【0040】
「NA辺連結度保証領域決定問題」
INSTANCE:G=(V,E)、自然数k,S.
QUESTION:領域グラフ(G,A)(ただし|A|≦S)におけるNA辺連結度がkであるようなA⊆Vは存在するか?
【0041】
この問題は、O(1)で解けることが分かっている。
【0042】
しかし、サーバ配置設計では、このような「信頼性」に加えて「遅延時間の低減」が必要となる。
【0043】
「遅延時間の低減」を考慮した場合、pセンター問題のように、最も近いサーバまでの距離が短くなるようにするという評価基準もありうるが、本例では、以下のように、より現実的な設定を考慮する。
【0044】
同一コンテンツをサービスするサーバが複数ある場合、ユーザにアクセスさせるサーバは、サーバ間負荷分散アルゴリズムに依存する。アクセスするサーバが決定すると、OSPFなどルーティングプロトコルによって最短経路を用いてアクセスする。
【0045】
従って、本例では、近いものからr個のサーバまでの距離(最短経路長)の和が小さいこと(ある自然数B以下)が望ましいと考える。
【0046】
尚、近いものからr個のサーバまでの距離の最悪値が小さいという評価尺度も考えられる。上述の本例の評価尺度では、その最悪値が高々「B−r+1」まで大きくなりうるという意味で、本例の評価尺度の方が緩い。
【0047】
しかし、最悪値を厳しく抑えることで実行不可能となり、結果的にr個のサーバまでの距離をいずれも大きくせざるを得なくなるよりも、むしろサーバまでの距離にばらつきがあっても小さいものが含まれ、また利用されるネットワークリソースの総和が少ない方が望ましい。この観点から、距離の和を抑制する、上述の本例の評価尺度を用いることにする。
【0048】
そこで、本例では、サーバ配置問題を次のように定式化する。
【0049】
「NA辺連結度と距離を保証するサーバ配置問題」
INSTANCE:G=(V,E), 自然数k,B, サーバ数S.
QUESTION:領域グラフ(G,A)(ただし|A|≦S)におけるNA辺連結度がk,近いものからr個のサーバまでの距離の和がB以下(maxv∈VΣd(v,s)≦B)であるようなA⊆Vは存在するか?
【0050】
以下、このような問題を解決するために本例で用いる「サーバ配置アルゴリズム」について説明する。
【0051】
k−NA辺連結を満たすサーバ配置であれば、多項式時間で解ける。このサーバ配置問題に対するアルゴリズムを以下に述べる。
【0052】
まず、辺不足集合を定義する。グラフGにおけるh(<k)辺連結成分C⊂Vであって、Cのカットサイズがk未満であるものを、k辺不足成分という。k辺不足成分Cのうち、Cに含まれる任意の真部分集合(集合Aの要素がすべて集合Bの要素になっていて、BにはAの要素以外の要素があるとき、AはBの真部分集合という。)がk辺不足成分ではないようなものを、極小k辺不足成分という。
【0053】
このような定義を用いた下記のアルゴリズム(「Algorithm k−NALOC」)に対応する処理を実行することで、k−NA辺連結を満たすサーバ配置問題を解くことができる。
【0054】
「Algorithm k−NALOC」
1:for h=1,2,…,k do
2: h辺連結成分C(h)={C(h)},C(h),…,C(h)p(h)}を求める
3:end for
4:極小k辺不足成分の集合{C,C,…,C}を求める
5:{C,C,…,C}の各集合から、任意の点v∈Cを一つずつ選び、
S={v,v,…,v}とする
【0055】
つまり、極小k辺不足成分から1点ずつ選んで得られた点集合を領域とすることによって、kNA辺連結にすることができる。
【0056】
本例では、「NA辺連結度」を保証すると共に、「距離」も保証するサーバ配置問題に対して、次の「Algorithm MIN_MAX_Distance」と「Algorithm Average_Distance」の2つのヒューリスティックアルゴリズム(近似アルゴリズム)を用いる。
【0057】
「Algorithm MIN_MAX_Distance」
1:A←φ…(φ:空集合),全てのw∈vに対してc(w)←0
2:極小k辺不足成分S,S,…,Sを求める。
3: for i=1,2,…,p do
4: minv∈Simaxw∈V{c(w)+d(v,w)}となるvをvとする
そのような点が複数ある場合、maxw∈V{c(w)+d(v,w)}の値をとる
wの個数が最小となる点を選ぶ.
5: 全てのw∈Vに対してc(w)←c(w)+d(v,w)
6: A←{v
7: end for
8: If sum_{i=1}^{r}min_{p}d(p,x)<=B for any x then Output A
【0058】
これは、領域までの距離の和が大きくならないように、各不足成分から点を選んでいっていることになる。尚、8行目の記載は、「If Σi=1mind(v,w)≦B for any x then Output A」と同じ意味である。
【0059】
「Algorithm Average_Distance」
1:A←φ,全てのw∈vに対してc(w)←0
2:極小k辺不足成分S,S,…,Sを求める。
3:for i=1,2,…,p do
4: minv∈SiΣw∈V{c(w)+d(v,w)}となるvをvとする
そのような点が複数ある場合は、点番号の小さいものを選ぶ.
5: 全てのw∈vに対してc(w)←c(w)+d(v,w)
6: A←{v
7:end for
8: If sum_{i=1}^{r}min_{p}d(p,x)<=B for any x then Output A
【0060】
これは、各不足成分から点を選ぶ際、他の全ての点までの距離の和が大きくならないようにしていることになる。尚、8行目の記載は、「If Σi=1mind(v,w)≦B for any x then Output A」と同じ意味である。
【0061】
以下、図2と図3を用いて、上記2つのアルゴリズム(「Algorithm MIN_MAX_Distance」、「Algorithm Average_Distance」)に従ってのサーバ配置個所選択部102の処理動作例を説明する。
【0062】
図2の「Algorithm MIN_MAX_Distance」では、まず、ステップS201において、集合Aを空集合に、コストの総和c(w)を全て0に初期化する。尚、c(w)における「w」は、ある1つのノードを意味し、d(v,w)がノードvとノードwとの間の配信に要するコストであり、c(w)は、複数のサーバからノードwへの配信に要するコストの総和である。
【0063】
次に、ステップS202において、要求されるNA辺連結度kに対して極小k辺不足成分S,S,…,Sを生成する。
【0064】
ステップS203においては、全ての極小k辺不足成分に対して、ステップS204,S205の処理を反復して行う。すなわち、ステップS204においては、各極小k辺不足成分Si(i=1,2,…,p)に含まれるノードの中から、他の全てのノードに至るコストの最大値が最小となるノードvを1つ選択し、ステップS205においては、ステップS203での処理で選択したノードvを集合Aに追加すると共に、c(w)をアップデートする(c(w)←c(w)+d(v,w))。
【0065】
そして、ステップS206において、任意のノードxに対して、距離d(p,x)の短いものからr個のサーバまでの距離の総和がB以下である場合に、得られた集合Aを解として出力する。
【0066】
図3の「Algorithm Average_Distance」での処理は、図2にの「Algorithm MIN_MAX_Distance」における処理のステップS204での処理を、「各極小k辺不足成分Si(i=1,2,…,p)に含まれるノードの中から、他の全てのノードに至るコストの平均値が最小となるノードvを1つ選択する(ステップS204’)」処理に代えたものであり、その他の処理は同じである。
【0067】
次に、図4を用いて、本例のシステムの性能評価結果を説明する。ここでは、CAIDA (Cooperative Association for Internet Data Analysis)において公開されている実際のISPバックボーンNWのグラフ構造を利用して、サーバ配置を決定する。
【0068】
図4の表401の「配置サーバ数」においては、各NWで必要なサーバ数を挙げている。このサーバ数は辺連結度を「2」にするために最低限必要なサーバ数である。表401で示す内容から、比較的少数のサーバ設置で要件が満たされることが確認できる。
【0069】
以上、図1〜図4を用いて説明したように、本例では、ヒューリスティックアルゴリズム(近似アルゴリズム)を設計し、信頼性の評価尺度としてNA辺連結度を用い、サーバ集合との間の距離として各点からサーバまでの距離の和を用いることにより、ネットワークのトポロジが与えられたときに、サーバへの接続性を確保しつつホップ距離が最小となるよう、サーバを最適配置する。
【0070】
例えば、ネットワークのトポロジとサーバ数の上限Sと整数k,B,rが与えられたときに、全てのノードに対して、辺独立な経路でk個以上のサーバに到達でき、かつ各ノードからr個の最近接サーバまでのホップ距離の総和がB以下となるように、S個以下のサーバを、各ノードからr個の最近接サーバまでのホップ距離の総和が最小となるよう、ネットワーク上のノードに配置する。
【0071】
具体的には、図1に示す構成においt、ネットワークにおけるサーバ群の配置個所の選択を、プログラムされたコンピュータのグラフ理論を用いた処理によって行うものであり、トポロジ情報・設計パラメタ入力部101により、入力装置を介して入力されるネットワークのトポロジ情報(グラフG(V,E))とサーバ数の上限値S、および、NA辺連結度kと、アクセス元のノードに近接するサーバの個数rと、r個のサーバまでの距離の和の上限Bとを、記憶装置に格納し、サーバ配置箇所選択部102により、トポロジ情報・設計パラメタ入力部101が記憶装置に格納したデータ(S,k,B)を用いた下記のサーバ配置問題の解を求める処理を実行することによって、辺独立な経路でk個以上のサーバに到達でき、かつ、r個の近接サーバまでのホップ距離の総和がB以下となるノード集合Aを、S個以下のサーバを配置するノードとして選択し、サーバ配置箇所出力部103により、サーバ配置個所選択部102が選択したノード集合Aをサーバ配置箇所として出力装置に出力する。
【0072】
「NA辺連結度と距離を保証するサーバ配置問題」
INSTANCE:G=(V,E), 自然数k,B, サーバ数S.
QUESTION:領域グラフ(G,A)(ただし|A|≦S)におけるNA辺連結度がk,近いものからr個のサーバまでの距離の和がB以下であるようなA⊆Vは存在するか?
【0073】
また、サーバ配置個所選択部102は、下記のアルゴリズムに従った処理を実行することによって、領域までの距離の和が大きくならないように、各不足成分から点を選んでいく。
【0074】
「Algorithm MIN_MAX_Distance」
1:A←φ…(φ:空集合),全てのw∈vに対してc(w)←0
2:極小k辺不足成分S,S,…,Sを求める。
3: for i=1,2,…,p do
4: minv∈Simaxw∈V{c(w)+d(v,w)}となるvをvとする
そのような点が複数ある場合、maxw∈V{c(w)+d(v,w)}の値をとる
wの個数が最小となる点を選ぶ.
5: 全てのw∈Vに対してc(w)←c(w)+d(v,w)
6: A←{v
7: end for
8:If Σi=1mind(v,w)≦B for any x then Output A
【0075】
あるいは、サーバ配置個所選択部102は、下記のアルゴリズムに従った処理を実行することによって、各不足成分から点を選ぶ際、他の全ての点までの距離の和が大きくならないよう点を選択する。
【0076】
「Algorithm Average_Distance」
1:A←φ,全てのw∈vに対してc(w)←0
2:極小k辺不足成分S,S,…,Sを求める。
3:for i=1,2,…,p do
4: minv∈SiΣw∈V{c(w)+d(v,w)}となるvをvとする
そのような点が複数ある場合は、点番号の小さいものを選ぶ.
5: 全てのw∈vに対してc(w)←c(w)+d(v,w)
6: A←{v
7:end for
8:If Σi=1mind(v,w)≦B for any x then Output A
【0077】
このことにより、本例によれば、リンク故障時においてもサーバへのアクセスを確保した上で、さらにサーバ集合までの距離を抑えるようなサーバ配置を決定することが可能となり、従来技術の問題点(連結度を保証して信頼性を向上させることと経路長を抑えることの、両方の制約条件を満たすような解を、効率的に求めることができなかった)を解決できる。
【0078】
尚、本発明は、図1〜図4を用いて説明した例に限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能である。
【符号の説明】
【0079】
101:トポロジ情報・設計パラメタ入力部、102:サーバ配置箇所選択部、103:サーバ配置箇所出力部、401:表。

【特許請求の範囲】
【請求項1】
ネットワークにおけるサーバ群の配置個所の選択を、プログラムされたコンピュータのグラフ理論を用いた処理によって行うサーバ群配置設計システムであって、
プログラムされたコンピュータ処理を実行する手段として、
入力装置を介して入力されるネットワークのトポロジ情報(グラフG(V,E))とサーバ数の上限値S、および、NA辺連結度kと、アクセス元のノードに近接するサーバの個数rと、r個のサーバまでの距離の和の上限Bとを、記憶装置に格納する入力手段と、
該入力手段が記憶装置に格納したデータ(S,k,B)を用いた下記のサーバ配置問題の解を求める処理を実行することによって、辺独立な経路でk個以上のサーバに到達でき、かつ、r個の近接サーバまでのホップ距離の総和がB以下となるノード集合Aを、S個以下のサーバを配置するノードとして選択するサーバ配置個所選択手段と、
該サーバ配置個所選択手段が選択したノード集合Aをサーバ配置箇所として出力装置に出力する出力手段と
を有することを特徴とするサーバ群配置設計システム。

「NA辺連結度と距離を保証するサーバ配置問題」
INSTANCE:G=(V,E), 自然数k,B, サーバ数S.
QUESTION:領域グラフ(G,A)(ただし|A|≦S)におけるNA辺連結度がk,近いものからr個のサーバまでの距離の和がB以下であるようなA⊆Vは存在するか?
【請求項2】
請求項1に記載のサーバ群配置設計システムであって、
上記サーバ配置個所選択手段は、
下記のアルゴリズムに従った処理を実行することによって、
領域までの距離の和が大きくならないように、各不足成分から点を選んでいくことを特徴とするサーバ群配置設計システム。

「Algorithm MIN_MAX_Distance」
1:A←φ…(φ:空集合),全てのw∈vに対してc(w)←0
2:極小k辺不足成分S,S,…,Sを求める。
3: for i=1,2,…,p do
4: minv∈Simaxw∈V{c(w)+d(v,w)}となるvをvとする
そのような点が複数ある場合、maxw∈V{c(w)+d(v,w)}の値をとる
wの個数が最小となる点を選ぶ.
5: 全てのw∈Vに対してc(w)←c(w)+d(v,w)
6: A←{v
7: end for
8:If Σi=1mind(v,w)≦B for any x then Output A
【請求項3】
請求項1に記載のサーバ群配置設計システムであって、
上記サーバ配置個所選択手段は、
下記のアルゴリズムに従った処理を実行することによって、
各不足成分から点を選ぶ際、他の全ての点までの距離の和が大きくならないよう点を選択することを特徴とするサーバ群配置設計システム。

「Algorithm Average_Distance」
1:A←φ,全てのw∈vに対してc(w)←0
2:極小k辺不足成分S,S,…,Sを求める。
3:for i=1,2,…,p do
4: minv∈SiΣw∈V{c(w)+d(v,w)}となるvをvとする
そのような点が複数ある場合は、点番号の小さいものを選ぶ.
5: 全てのw∈vに対してc(w)←c(w)+d(v,w)
6: A←{v
7:end for
8:If Σi=1mind(v,w)≦B for any x then Output A
【請求項4】
ネットワークにおけるサーバ群の配置個所の選択を、プログラムされたコンピュータのグラフ理論を用いた処理によって行うシステムのサーバ群配置設計方法であって、
プログラムされたコンピュータの処理実行手順として、
請求項1から請求項3のいずれかに記載のサーバ群配置設計システムにおける各手段が実行する処理手順を含むことを特徴とするサーバ群配置設計方法。
【請求項5】
コンピュータを、請求項1から請求項3のいずれかに記載のサーバ群配置設計システムにおける各手段として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2010−199736(P2010−199736A)
【公開日】平成22年9月9日(2010.9.9)
【国際特許分類】
【出願番号】特願2009−39716(P2009−39716)
【出願日】平成21年2月23日(2009.2.23)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【出願人】(503092180)学校法人関西学院 (71)
【Fターム(参考)】