(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025021529
(43)【公開日】2025-02-14
(54)【発明の名称】網設計装置、網設計方法、及び、網設計プログラム
(51)【国際特許分類】
H04L 41/142 20220101AFI20250206BHJP
【FI】
H04L41/142
【審査請求】未請求
【請求項の数】4
【出願形態】OL
(21)【出願番号】P 2023125284
(22)【出願日】2023-08-01
(71)【出願人】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】100083806
【弁理士】
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100129230
【弁理士】
【氏名又は名称】工藤 理恵
(72)【発明者】
【氏名】井上 武
(72)【発明者】
【氏名】大木 英司
(72)【発明者】
【氏名】高 晴登
(57)【要約】
【課題】網構成の柔軟性を高め、より大きな網容量を得ることが可能な技術を提供する。
【解決手段】算出部12は、リンク数vを相異なる2つのリンク数v
1、v
2に分け、2つのリンク数v
1、v
2によって複数の中間スイッチを2つのグループに分け、複数の入出スイッチの入力ポート又は出力ポートに接続中のターミナル数nが第1のターミナル数n
1
snbと第2のターミナル数n
2
snbとの合計数以下の場合、第1のグループに係る各閉塞発生確率の合計確率が所定の閉塞率ε
1を超えず、第2のグループに係る各閉塞発生確率の合計確率が許容閉塞率εを超えないように、ターミナル数n、入出スイッチ数k、第1のグループの中間スイッチ数m
1、第2のグループの中間スイッチ数m
2、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数v
1、1つの入出スイッチと第2のグループの1つの中間スイッチとの間のリンク数v
2を算出する。
【選択図】
図4
【特許請求の範囲】
【請求項1】
複数の中間スイッチと1つの前記中間スイッチを介して接続される複数の入出スイッチとを用いて、所定の網容量を満たす網を設計する網設計装置において、
スイッチのポート数、前記ポート数の入力ポート及び前記ポート数の出力ポートを備える複数の入出スイッチ及び複数の中間スイッチの合計数、前記複数の入出スイッチに接続されるターミナルのターミナル利用率、前記複数の入出スイッチに接続される2つのターミナル間で通信できないことを許容する許容閉塞率を取得する取得部と、
前記ポート数と前記合計数と前記ターミナル利用率とを満たす網において、前記網が非閉塞となるときのターミナル数の最大値からターミナル数を1ずつ増加した場合の各閉塞発生確率の合計確率が前記許容閉塞率を超えず、ターミナル数と入出スイッチ数とを乗算した網容量が最大となるように、ターミナル数、入出スイッチ数、中間スイッチ数、1つの前記入出スイッチと1つの前記中間スイッチとの間のリンク数を算出する算出部と、を備え、
前記算出部は、
前記リンク数を相異なる2つのリンク数に分け、前記2つのリンク数によって前記複数の中間スイッチを2つのグループに分け、
前記複数の入出スイッチの入力ポート又は出力ポートに接続中のターミナル数が第1のターミナル数と第2のターミナル数との合計数以下の場合、第1のグループに係る前記各閉塞発生確率の合計確率が所定の閉塞率(前記許容閉塞率以上、1以下)を超えず、第2のグループに係る前記各閉塞発生確率の合計確率が前記許容閉塞率を超えないように、
ターミナル数、入出スイッチ数、第1のグループの中間スイッチ数、第2のグループの中間スイッチ数、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数、1つの入出スイッチと第2のグループの1つの中間スイッチとの間のリンク数を算出する網設計装置。
【請求項2】
前記算出部は、
前記複数の入出スイッチの入力ポート又は出力ポートに接続中のターミナル数が第1のターミナル数以下の場合、第1のグループに係る前記各閉塞発生確率の合計確率が前記許容閉塞率を超えないように、
ターミナル数、入出スイッチ数、第1のグループの中間スイッチ数、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数を算出する請求項1に記載の網設計装置。
【請求項3】
複数の中間スイッチと1つの前記中間スイッチを介して接続される複数の入出スイッチとを用いて、所定の網容量を満たす網を設計する網設計方法において、
網設計装置が、
スイッチのポート数、前記ポート数の入力ポート及び前記ポート数の出力ポートを備える複数の入出スイッチ及び複数の中間スイッチの合計数、前記複数の入出スイッチに接続されるターミナルのターミナル利用率、前記複数の入出スイッチに接続される2つのターミナル間で通信できないことを許容する許容閉塞率を取得する第1のステップと、
前記ポート数と前記合計数と前記ターミナル利用率とを満たす網において、前記網が非閉塞となるときのターミナル数の最大値からターミナル数を1ずつ増加した場合の各閉塞発生確率の合計確率が前記許容閉塞率を超えず、ターミナル数と入出スイッチ数とを乗算した網容量が最大となるように、ターミナル数、入出スイッチ数、中間スイッチ数、1つの前記入出スイッチと1つの前記中間スイッチとの間のリンク数を算出する第2のステップと、を行い、
前記第2のステップでは、
前記リンク数を相異なる2つのリンク数に分け、前記2つのリンク数によって前記複数の中間スイッチを2つのグループに分け、
前記複数の入出スイッチの入力ポート又は出力ポートに接続中のターミナル数が第1のターミナル数と第2のターミナル数との合計数以下の場合、第1のグループに係る前記各閉塞発生確率の合計確率が所定の閉塞率(前記許容閉塞率以上、1以下)を超えず、第2のグループに係る前記各閉塞発生確率の合計確率が前記許容閉塞率を超えないように、
ターミナル数、入出スイッチ数、第1のグループの中間スイッチ数、第2のグループの中間スイッチ数、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数、1つの入出スイッチと第2のグループの1つの中間スイッチとの間のリンク数を算出する網設計方法。
【請求項4】
請求項1に記載の網設計装置としてコンピュータを機能させる網設計プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、網設計装置、網設計方法、及び、網設計プログラムに関する。
【背景技術】
【0002】
パスの閉塞率を理論的に保証する網設計技術がある(非特許文献1)。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Haruto Taka、外2名、“Design of Twisted and Folded Clos Network with Guaranteeing Admissible Blocking Probability”、IEEE Networking Letters、pp.1-1、2003
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、非特許文献1において、出力スイッチと中間スイッチとの間のリンク数を完全に自由にすると、定式化されるILP(Integer Linear Programming)の変数が膨大になるため、現実的な時間内にILPの数式を解くことが困難であった。
【0005】
本開示は、上記事情に鑑みてなされたものであり、網構成の柔軟性を高め、より大きな網容量を得ることが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一態様の網設計装置は、複数の中間スイッチと1つの前記中間スイッチを介して接続される複数の入出スイッチとを用いて、所定の網容量を満たす網を設計する網設計装置において、スイッチのポート数、前記ポート数の入力ポート及び前記ポート数の出力ポートを備える複数の入出スイッチ及び複数の中間スイッチの合計数、前記複数の入出スイッチに接続されるターミナルのターミナル利用率、前記複数の入出スイッチに接続される2つのターミナル間で通信できないことを許容する許容閉塞率を取得する取得部と、前記ポート数と前記合計数と前記ターミナル利用率とを満たす網において、前記網が非閉塞となるときのターミナル数の最大値からターミナル数を1ずつ増加した場合の各閉塞発生確率の合計確率が前記許容閉塞率を超えず、ターミナル数と入出スイッチ数とを乗算した網容量が最大となるように、ターミナル数、入出スイッチ数、中間スイッチ数、1つの前記入出スイッチと1つの前記中間スイッチとの間のリンク数を算出する算出部と、を備え、前記算出部は、前記リンク数を相異なる2つのリンク数に分け、前記2つのリンク数によって前記複数の中間スイッチを2つのグループに分け、前記複数の入出スイッチの入力ポート又は出力ポートに接続中のターミナル数が第1のターミナル数と第2のターミナル数との合計数以下の場合、第1のグループに係る前記各閉塞発生確率の合計確率が所定の閉塞率(前記許容閉塞率以上、1以下)を超えず、第2のグループに係る前記各閉塞発生確率の合計確率が前記許容閉塞率を超えないように、ターミナル数、入出スイッチ数、第1のグループの中間スイッチ数、第2のグループの中間スイッチ数、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数、1つの入出スイッチと第2のグループの1つの中間スイッチとの間のリンク数を算出する。
【0007】
本開示の一態様の網設計方法は、複数の中間スイッチと1つの前記中間スイッチを介して接続される複数の入出スイッチとを用いて、所定の網容量を満たす網を設計する網設計方法において、網設計装置が、スイッチのポート数、前記ポート数の入力ポート及び前記ポート数の出力ポートを備える複数の入出スイッチ及び複数の中間スイッチの合計数、前記複数の入出スイッチに接続されるターミナルのターミナル利用率、前記複数の入出スイッチに接続される2つのターミナル間で通信できないことを許容する許容閉塞率を取得する第1のステップと、前記ポート数と前記合計数と前記ターミナル利用率とを満たす網において、前記網が非閉塞となるときのターミナル数の最大値からターミナル数を1ずつ増加した場合の各閉塞発生確率の合計確率が前記許容閉塞率を超えず、ターミナル数と入出スイッチ数とを乗算した網容量が最大となるように、ターミナル数、入出スイッチ数、中間スイッチ数、1つの前記入出スイッチと1つの前記中間スイッチとの間のリンク数を算出する第2のステップと、を行い、前記第2のステップでは、前記リンク数を相異なる2つのリンク数に分け、前記2つのリンク数によって前記複数の中間スイッチを2つのグループに分け、前記複数の入出スイッチの入力ポート又は出力ポートに接続中のターミナル数が第1のターミナル数と第2のターミナル数との合計数以下の場合、第1のグループに係る前記各閉塞発生確率の合計確率が所定の閉塞率(前記許容閉塞率以上、1以下)を超えず、第2のグループに係る前記各閉塞発生確率の合計確率が前記許容閉塞率を超えないように、ターミナル数、入出スイッチ数、第1のグループの中間スイッチ数、第2のグループの中間スイッチ数、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数、1つの入出スイッチと第2のグループの1つの中間スイッチとの間のリンク数を算出する。
【0008】
本開示の一態様の網設計プログラムは、上記網設計装置としてコンピュータを機能させる。
【発明の効果】
【0009】
本開示によれば、網構成の柔軟性を高め、より大きな網容量を得ることが可能な技術を提供できる。
【図面の簡単な説明】
【0010】
【
図4】
図4は、本実施形態に係るClos網の構築例を示す図である。
【
図5】
図5は、アルゴリズム1、2の例を示す図である。
【
図6】
図6は、網設計装置の機能ブロック構成例を示す図である。
【
図8】
図8は、許容閉塞率に対する網容量の数値実験結果を示す図である。
【
図9】
図9は、閉塞を説明するための参照図である。
【
図10】
図10は、網設計装置のハードウェア構成例を示す図である。
【発明を実施するための形態】
【0011】
以下、図面を参照して、本開示の実施形態を説明する。
【0012】
本開示は、データセンタや通信ビル等での網設計技術を開示する。
【0013】
【0014】
データセンタでは、データセンタ内に設置された複数のラック(スイッチやサーバ等の収容ラック)が網に収容され、指定されたラックペアを通信可能に接続することで、通信回線(パス)が設定される。
【0015】
通信ビルでは、複数の伝送装置が網に収容され、他ビルや他事業者等の伝送装置に接続される。現在の伝送装置は、IPやEthernet等のパケット交換技術が用いられているが、将来的には伝送容量や電力効率を改善するために光通信等の回線交換技術が用いられる。
【0016】
【0017】
回線交換では、接続を要求されたペア間に未使用のパスが存在しない場合には、パスを設定できない。この場合を閉塞(ブロック)と呼ぶ。第1スイッチS1の第2ポートP12と第3スイッチS3の第4ポートP34との間でパスを設定したい。しかし、先に設定された2つのパス(破線)により、空きのパスが存在しないため、所望のパスを設定できない。
【0018】
本開示は、許容閉塞率が与えられたときに、その許容閉塞率を満たしながら網容量(収容可能なスイッチや伝送装置の数)を最大にする網設計技術を説明する。特に、データセンタで多く用いられるClos構造のClos網を対象とする。
【0019】
【0020】
Clos網は、入力層と中間層と出力層との3層で構成される。但し、入力層と出力層を1つにまとめて入出層(Input-output stage)とし、中間層(Intermediate stage)で折り返すように構成される。
【0021】
非特許文献1には、そのようなTF-Clos(Twisted and Folded Clos Network)と呼ばれるClos構造のClos網について、閉塞率を理論的に保証する網設計技術が開示されている。
【0022】
入出層の入出スイッチには、ラックや伝送装置等のターミナル(Terminal)が接続される。ターミナルtは送信ターミナルであり、ターミナルrは受信ターミナルである。入出層の入出スイッチ数をk個とし、中間層の中間スイッチ数をm個とし、全てのスイッチに対して入出スイッチから順番にS1、…、Sk、Sk+1…Sk+mの各番号を与える。入出スイッチと中間スイッチは、入力と出力とのそれぞれでv本のリンクで接続される。各入出スイッチには、入力と出力とのそれぞれでn台のターミナルが接続される。
【0023】
ここで、次のような網設計問題を考える。
【0024】
入力と出力とのそれぞれにN個ずつのポートを備えたa台のN×Nスイッチを用いて、できる限り大きな網容量の網を設計せよ。なお、網全体のターミナル数nk(=n×k。入力と出力は別々)を網容量とする。但し、閉塞率は、指定された許容閉塞率ε以下でなければならない。また、各ターミナルのターミナル利用率pは、過去のサービス実績等から推定できるため、既知とする。
【0025】
この問題をILP(Integer Linear Programming;整数線形計画)として定式化すると、式(1a)~式(1i)となる。
【0026】
【0027】
N、a、p、εは、問題として与えられる。n、nsnb、k、m、vは、最適化問題の決定変数である。θは、解法のみに必要な媒介変数である。なお、nsnbは、非閉塞となるターミナル数である。snbとは、「strict-sense non-blocking」の略である。θは、閉塞と非閉塞とでターミナル数を区別するための閾値である。
【0028】
式(1a)は、網容量を最大化する目的関数である。式(1b)は、入出スイッチのポート数に関する制約条件である。式(1c)は、中間スイッチのポート数に関する制約条件である。式(1g)は、スイッチ数に関する制約条件である。
【0029】
式(1d)は、閉塞が起こりうる閉塞発生確率の合計確率が許容閉塞率ε以下であることを表す。式(1f)は、非閉塞(閉塞率がゼロ)であることを表す。式(1e)は、式(1d)と式(1f)の条件が混在しないことを表す。
【0030】
詳述すると、式(1f)は、入出スイッチごとにnsnb個以下のターミナルが使用され通信している状況を表す。これに対して式(1d)は、「nsnb+1(=θ+1)」個以上のターミナルが使用されている状況を表す。
【0031】
式(1f)は非閉塞となるターミナル数nsnbの最大値を決定するので、式(1d)に係る「nsnb+1」個以上のターミナルが接続する状況では閉塞が起こり得る。式(1d)の左辺は、そのような閉塞が起こりうる状況の閉塞発生確率を求めている。
【0032】
式(1d)では、左辺の和記号(Σ)により、「nsnb+1」個、「nsnb+2」個、…、n個のターミナルが使用されている場合には、それぞれの閉塞発生確率を足し合わせる。最終的に式(1d)は、閉塞が起こりうる閉塞発生確率の合計発生率が許容閉塞率εを超えない条件を示す。
【0033】
このように、非特許文献1では、閉塞が起こる場合の式(1d)と非閉塞となる場合の式(1f)に分け、式(1d)と(1f)を式(1e)で分離するので、閉塞率を理論的に保証できる。
【0034】
非特許文献1は、閉塞率を理論的に保証できる点で画期的である。しかし、ターミナル利用率pが大きい場合(1に近い場合)や許容閉塞率εが10-5のように小さい場合には、網容量の大きな網を設計できない。そこで、非特許文献1の方法を改良する。
【0035】
非特許文献1では、スイッチ間のリンク数vを一律としていた。一方、本実施形態では、スイッチごとに異なるリンク数を許容することで、網構成の柔軟性を高め、より大きな網容量を得ることを可能とする。但し、リンク数vを完全に自由にしてしまうと、定式化されるILPの変数が膨大になるため、現実的な時間内にILPの数式を解くことができない。
【0036】
そこで、本実施形態では、リンク数vを相異なる2通りのリンク数v1、v2のみとし、許容閉塞率εの制約条件もそれに応じた2段階とすることで、現実的に解ける定式化を得る。つまり、閉塞率を理論的に保証する網設計において、スイッチ間のリンク数を一律にv本とするのではなく、中間スイッチごとにv1又はv2という異なる値を取らせることで、網構成の柔軟性を高め、より大きな網容量を得る。
【0037】
図4は、本実施形態に係るClos網の構築例を示す図である。
【0038】
中間スイッチを、入出スイッチとのリンク数v1、v2によって2つのグループに分割する。つまり、各入出スイッチとのリンクがv1本ずつである中間スイッチをm1台とし、第1のグループ(First-step group)とする。また、各入出スイッチとのリンクがv2本ずつである中間スイッチをm2台とし、第2のグループ(Second-step group)とする。そして、その2つのグループを以下のように使い分ける。
【0039】
第1のステップでは、接続要求の入力側又は出力側のいずれかの入出スイッチに接続中のターミナル数nがターミナル数n1
snb個以下のとき、第1のグループに含まれるm1台の中間スイッチのいずれかを利用して接続を行う。ターミナル数n1
snbは、解の一部として得られる。第1のステップで接続できる確率は許容閉塞率ε以下となる。第1のステップで接続できない確率は所定の閉塞率ε1(ε≦ε1≦1)以下となる。
【0040】
第2のステップでは、接続要求の入力側又は出力側のいずれかの入出スイッチに接続中のターミナル数nがターミナル数n1
snb個を超えて「n1
snb+n2
snb」個以下のとき、第2のグループに含まれるm2台の中間スイッチのいずれかを更に利用して接続を行う。第2のステップでも接続できない確率は許容閉塞率ε以下となる。
【0041】
上記のいずれでもないとき、接続要求を棄却する。棄却する確率は許容閉塞率ε以下となる。
【0042】
本実施形態のILPは、式(2a)~式(2m)となる。
【0043】
【0044】
式(2a)の目的関数は、式(1a)と同じである。式(2b)~式(2d)、式(2i)の制約条件は、それぞれ式(1b)、式(1c)、式(g)と基本的に同じである。式(2j)~式(2m)は、n、k、n1
snb、n2
snb、m1、m2、v1、v2の定義域である。よって、以降では式(2e)~式(2h)を説明する。
【0045】
式(2e)と式(2f)の制約条件は、下添え字の「1」がないとすれば、それぞれ式(1d)と式(1f)と同じである。式(1d)では媒介変数θを使用していたが、θは閉塞と非閉塞とでターミナル数を区別するための閾値であるため、非閉塞となるターミナル数nsnbを用いても表現できる。つまり、第1のステップは、m1台の中間スイッチのみを使用した非特許文献1と基本的に同じである。
【0046】
次に、第1のステップで接続できなかった接続要求を、第2のステップでどの程度救えるかを考える。つまり、閉塞率を許容閉塞率εまで下げられるかを考える。ターミナル利用率pのうち、第1のステップで接続できずに第2のステップに回される割合はε1になるので、第2のステップから見たターミナル利用率pはε1pとなる。また、第1のステップでは、未使用ターミナル数が最大n個あったが、第2のステップでは、n1
snbが第1のステップで既に利用中のため、利用可能なターミナル数は「n-n1
snb」個となる。
【0047】
ゆえに、第2のステップでは、第1のステップで接続できなかった接続要求分についてを、第1のステップで用いた式(2e)と式(2f)について、pをε1pに読み替え、nを「n-n1
snb」に読み替えた式(2g)と式(2h)を用いる。
【0048】
式(2a)~式(2m)をコンピュータで計算するためのアルゴリズムを説明する。
【0049】
非特許文献1では全ての決定変数を整数としていたが、本実施形態では実数の決定変数であるε1が含まれる。そのため、非特許文献1と同様の方法では最適解(最適な網構成)を得られない。そこで、以下の方法で式(2)の最適解を計算する。
【0050】
アルゴリズム1では、整数の決定変数であるn、k、n1
snb、n2
snb、m1、m2、v1、v2について、取りうる値の組み合わせを全て検索する。具体的には、各組み合わせについて、ε1を含まない制約条件の式(2b)~式(2d)、式(2f)、式(2h)、式(2i)を満たすかどうかを調べる、それら全ての条件を満たす実行可能な取りうる値の組み合わせを選択する。
【0051】
アルゴリズム2では、アルゴリズム1で選択された取りうる値の組み合わせに対して、残された制約条件を満たすε1が存在するかどうかを調べる。なお、ε1の値は運用上不要なので、実行可能なε1の存在だけ確認すれば十分である。
【0052】
【0053】
アルゴリズム1(Algorithm 1)について説明する。
【0054】
3~4行目で、最適解を保存するための変数を初期化する。5行目で、整数の決定変数が取りうる値の各組み合わせに対してループする。このとき、nkの大きい順にループすることが望ましい。これにより、あるnkを一通り処理した時点で「optimal config」が見つかっていれば、その時点でループを打ち切ることができる。
【0055】
6行目で、整数の決定変数の実行可能性を調べる。7行目で、実行可能なε1の存在を確認する。詳しくは後述のアルゴリズム2で説明する。なお、ε1
minは、式(3)のように定義される。式(3)の意図もアルゴリズム2で説明する。
【0056】
【0057】
6~7行目でともに実行可能解と判定されれば8行目が呼ばれる。これまでに得られている解よりも最適であれば(つまり、網容量nkが大きければ)、新たな最適解として保存される。15行目で、最終的な最適解を返す。
【0058】
アルゴリズム2(Algorithm 2)について説明する。
【0059】
アルゴリズム2(ε1-existence judgmen algorithm;ε1-JA)では、ε1
lowerとε1
upperの範囲内に式(2g)を満たすε1を見つけられた場合には「true」を返し、そうでない場合には「false」を返す。
【0060】
最初に呼ばれるのはアルゴリズム1の7行目である。このとき、ε1が取りうる範囲としてε1
lowerとε1
upperが設定される。ε1
lowerは、式(2e)と式(2j)をともに満たす最小値として式(3)となる。ε1
upperは、「1」である。ε1
upper=1は、明らかに式(2e)と式(2j)をともに満たす。
【0061】
アルゴリズム2は、ε1が取りうる範囲を徐々に狭めながら再帰的に呼び出しを行う。4~5行目では、十分小さな範囲まで調べたが実行可能なε1を見つけられなかった場合に「false」を返す。7~8行目は、実行可能なε1を見つけ場合に「true」を返す。
【0062】
なお、7行目のf(ε1
lower)は、式(4)で定義される。式(4)は、式(2g)をf(ε1)≧0の形式に書き換えただけである。なお、式(4)の左辺では「lower」の表記を省略している。
【0063】
【0064】
11行目では、ε1の範囲を半分ずつに分割して「ε1-JA」を再帰的に呼び出し、いずれかが「true」であれば「true」を返すように「or」で接続している。ここで、10行目のif文は、無駄な探索を省くための条件である。if文内のf+は、式(5)のように定義される。
【0065】
【0066】
10行目のif文によって無駄な探索を省ける理由は、7行目でf(ε1)<0かつ10行目でf+(ε1+δ)<0の場合、f+(ε1+δ’)≧0を満たすδ’(0<δ’≦δ)が存在しないためである。つまり、ε1p<(ε1+δ)pなのでf+(ε1+δ)≧f(ε1+δ)となり、f+(ε1+δ)はδの非減少関数なので、f+(ε1+δ’)<0はf+(ε1+δ)のときに折り畳まれるからである。
【0067】
なお、f(ε1)は基本的に単調減少関数なので、アルゴリズム2の9~13行目の再帰探索を省いても同じ結果が得られると考えられる。単調減少だと、最小値ε1
minで負ならより大きな値でも負になるため、最小値のみ調べれば十分である。ゆえに、この再帰探索の有無は任意である。
【0068】
また、式(2)は、アルゴリズム1、2以外の解き方でもよい。アルゴリズム1、2は、式(2)の解き方の例である。
【0069】
図6は、本実施形態に係る網設計装置1の機能ブロック構成例を示す図である。
【0070】
網設計装置1は、複数の中間スイッチと1つの中間スイッチを介して接続される複数の入出スイッチとを用いて、所定の網容量を満たす網を設計する装置である。網設計装置1は、取得部11と、算出部12と、記憶部13と、を備える。
【0071】
取得部11は、網の最適化問題を算出するために与えられるN、a、p、εを取得する機能を備える。つまり、取得部11は、スイッチのポート数N、ポート数Nの入力ポート及びポート数Nの出力ポートを備える複数の入出スイッチ及び複数の中間スイッチの合計数a、複数の入出スイッチに接続されるターミナルのターミナル利用率p、複数の入出スイッチに接続される2つのターミナル間で通信できないことを許容する許容閉塞率εを取得する。
【0072】
算出部12は、最適化問題の決定変数を算出する機能を備える。
【0073】
つまり、算出部12は、非特許文献1と同様に、スイッチのポート数Nとスイッチの合計数aとターミナル利用率pとを満たす網において、網が非閉塞となるときのターミナル数nの最大値からターミナル数nを1ずつ増加した場合の各閉塞発生確率の合計確率が許容閉塞率εを超えず、ターミナル数nと入出スイッチ数kとを乗算した網容量nkが最大となるように、ターミナル数n、入出スイッチ数k、中間スイッチ数m、1つの入出スイッチと1つの中間スイッチとの間のリンク数vを算出する。
【0074】
本実施形態では、算出部12は、リンク数vを相異なる2つのリンク数v1、v2に分け、2つのリンク数v1、v2によって複数の中間スイッチを2つのグループに分ける。
【0075】
また、本実施形態では、算出部12は、複数の入出スイッチの入力ポート又は出力ポートに接続中のターミナル数nが第1のターミナル数n1
snb以下の場合、第1のグループに係る各閉塞発生確率の合計確率が許容閉塞率εを超えないように、ターミナル数n、入出スイッチ数k、第1のグループの中間スイッチ数m1、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数v1を算出する。
【0076】
また、本実施形態では、算出部12は、複数の入出スイッチの入力ポート又は出力ポートに接続中のターミナル数nが第1のターミナル数n1
snbと第2のターミナル数n2
snbとの合計数以下の場合、第1のグループに係る各閉塞発生確率の合計確率が所定の閉塞率ε1(ε≦ε1≦1)を超えず、第2のグループに係る各閉塞発生確率の合計確率が許容閉塞率εを超えないように、ターミナル数n、入出スイッチ数k、第1のグループの中間スイッチ数m1、第2のグループの中間スイッチ数m2、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数v1、1つの入出スイッチと第2のグループの1つの中間スイッチとの間のリンク数v2を算出する。
【0077】
記憶部13は、網設計装置1で処理するデータを記憶する機能を備える。
【0078】
図7は、網設計装置1で行う網設計処理フローを示す図である。
【0079】
ステップS101;
取得部11は、網の最適化問題を算出するために与えられたスイッチのポート数N、スイッチの合計数a、ターミナル利用率p、許容閉塞率εを取得する。
【0080】
ステップS102;
算出部12は、ステップS101で取得したパラメータと式(2a)~式(2m)を用いて、最適化問題の決定変数を算出する。
【0081】
(第1のステップ)
入力側又は出力側のいずれかの入出スイッチに接続中のターミナル数nがn1
snb個以下の場合には、第1のグループのm1個の中間スイッチのみを用い、「if m2=0」である右辺がεの式(2e)と式(2f)を用いて、決定変数を最適化する。
【0082】
この場合、ターミナル数n、入出スイッチ数k、第1のグループの中間スイッチ数m1、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数v1が算出される。
【0083】
(第2のステップ)
入力側又は出力側のいずれかの入出スイッチに接続中のターミナル数nがn1
snb個を超えて「n1
snb+n2
snb」個以下の場合には、第1のグループの中間スイッチ数m1と第2のグループの中間スイッチ数m2を用いて、第1のグループについては、「if m2>0」である右辺がε1の式(2e)と式(2f)を用いて決定変数を最適化し、第2のグループについては、式(2g)と式(2h)を用いて決定変数を最適化する。
【0084】
この場合、ターミナル数n、入出スイッチ数k、第1のグループの中間スイッチ数m1、第2のグループの中間スイッチ数m2、1つの入出スイッチと第1のグループの1つの中間スイッチとの間のリンク数v1、1つの入出スイッチと第2のグループの1つの中間スイッチとの間のリンク数v2が算出される。
【0085】
ステップS103;
算出部12は、ステップS102で最適化された決定変数を網設計データとして出力し、記憶部13に記憶させる。
【0086】
図8は、許容閉塞率εに対する網容量の数値実験結果を示す図である。
【0087】
数値実験を行い、本実施形態によって網容量がどの程度増加するかを示す。比較対象は非閉塞網(ε=0)及び非特許文献1の方法である。「One-step」が特許文献1の方法、「Two-step」が本実施形態の方法である。N=200とし、a=160とした。
【0088】
特許文献1の方法では、ターミナル利用率pが大きいとき(1に近いとき)や許容閉塞率εが10-5のように小さいと網容量が小さくなる。一方、本実施形態では、そのような条件下でも特許文献1の方法よりも網容量を大きくできた。
【0089】
【0090】
閉塞について補足する。
【0091】
まず、本実施形態で対象とする網の使い方を補足する。対象の網では、ターミナルと入力ポート又は出力ポートは、最初から最後まで繋がれた状態である。例えば、ターミナルt1
1がスイッチS1に繋がれているが、この配線は最初から最後まで変化しない。他のターミナルについても同じである。全てのターミナルt、rは、いずれかの入出スイッチに最初から最後まで繋がれている。
【0092】
網内で変化するのは、スイッチ内の接続構成とターミナル間信号の有無である。通信は送信ターミナルtと受信ターミナルrとの間で行われる。1つのターミナルが複数のターミナルと同時に通信することはできないが、時間帯ごとに異なるターミナルと通信しても構わない。各ターミナルが通信しようとしている時間の割合を「ターミナル使用率」という。
【0093】
例えば、2つのターミナルt1
1、r1
kが通信しようとしている状況を考える。空きリンク(信号が通ってないリンク)のみを用いて、2つのターミナルt1
1、r1
k間にパスを用意する。
【0094】
図9の例では、入出スイッチS
1と中間スイッチS
k+1との間に空きリンクがあり、中間スイッチS
k+1と入出スイッチS
kとの間にも空きリンクがあったとする。そこで、これらのリンクを繋ぐように中間スイッチS
k+1の内部構成を変更する。2つの入出スイッチS
1、S
kの内部構成も同様に、2つのターミナルt
1
1、r
1
kのそれぞれとリンクを繋ぐように変更する。その結果、ターミナルt
1
1からターミナルr
1
kまで空きリンクのみからなるパスができる。ターミナルt
1
1が信号を送信するとターミナルr
1
kに届くようになる。
【0095】
このように通信が始まると、パス上のリンクは利用中となり、空きリンクではなくなるので、他の通信は使用できない。その後、通信が終われば空きリンクに戻る。入出スイッチとターミナルとの間のリンクは特定のターミナルに括りつけられているが、入出スイッチと中間スイッチとの間のリンクは任意のターミナルによって使用される可能性がある。空いているスイッチ間のリンクが減少すると、通信しようとしても空きリンクからなるパスが存在しないため、通信できないことがある。これを「閉塞」という。式(1f)、式(2f)、式(2h)は、決して閉塞が起こらない条件を表している。通信先となるターミナルの選び方やその順序をどのように変えても、決して閉塞が起こらないことが数学的に証明されている。
【0096】
以上より、本実施形態によれば、スイッチ間のリンク数を一律にv本とするのではなく、中間スイッチごとにv1又はv2という異なる値を取らせるので、網構成の柔軟性を高め、より大きな網容量を得ることができる。
【0097】
本開示は、上記実施形態に限定されない。本開示は、本開示の要旨の範囲内で数々の変形が可能である。
【0098】
上記説明した本実施形態の網設計装置1は、例えば、
図10に示すように、CPU901と、メモリ902と、ストレージ903と、通信装置904と、入力装置905と、出力装置906と、を備えた汎用的なコンピュータシステムを用いて実現できる。
【0099】
メモリ902及びストレージ903は、記憶装置である。当該コンピュータシステムにおいて、CPU901がメモリ902上にロードされた所定のプログラムを実行することにより、網設計装置1の各機能が実現される。
【0100】
網設計装置1は、1つのコンピュータで実装されてもよい。網設計装置1は、複数のコンピュータで実装されてもよい。網設計装置1は、コンピュータに実装される仮想マシンであってもよい。
【0101】
網設計装置1用のプログラムは、HDD、SSD、USBメモリ、CD、DVD等のコンピュータ読取り可能な記録媒体に記憶できる。コンピュータ読取り可能な記録媒体は、例えば、非一時的な(non-transitory)記録媒体である。網設計装置1用のプログラムは、通信ネットワークを介して配信することもできる。
【符号の説明】
【0102】
1 網設計装置
11 取得部
12 算出部
13 記憶部
901 CPU
902 メモリ
903 ストレージ
904 通信装置
905 入力装置
906 出力装置