JP5929682B2 - ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム - Google Patents

ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム Download PDF

Info

Publication number
JP5929682B2
JP5929682B2 JP2012224191A JP2012224191A JP5929682B2 JP 5929682 B2 JP5929682 B2 JP 5929682B2 JP 2012224191 A JP2012224191 A JP 2012224191A JP 2012224191 A JP2012224191 A JP 2012224191A JP 5929682 B2 JP5929682 B2 JP 5929682B2
Authority
JP
Japan
Prior art keywords
node
nodes
demand
demands
order
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012224191A
Other languages
English (en)
Other versions
JP2014078790A (ja
Inventor
田島 一幸
一幸 田島
裕 瀧田
裕 瀧田
知弘 橋口
知弘 橋口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012224191A priority Critical patent/JP5929682B2/ja
Priority to US14/028,801 priority patent/US9071384B2/en
Publication of JP2014078790A publication Critical patent/JP2014078790A/ja
Application granted granted Critical
Publication of JP5929682B2 publication Critical patent/JP5929682B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J14/00Optical multiplex systems
    • H04J14/08Time-division multiplex systems
    • H04J14/083Add and drop multiplexing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラムに関する。
電話局(局舎)間の大量の加入者回線の信号を収容するTDM(Time Division Multiplexing:時分割多重)技術がある。TDM技術により加入者回線の信号を収容する伝送路は、TDM伝送路と呼ばれる。また、TDM伝送路に収容される加入者回線の信号は、トラフィックデマンド又はデマンドと呼ばれる。デマンドは、始点ノードから終点ノードまでの信号伝送の経路を指定する。TDM伝送路として、例えば、SDH(Synchronous Digital Hierarchy)伝送路や、近年標準化されたOTN(Optical Transport Network)伝送路などが挙げられる。
ノードとしての電話局間に敷設した光ファイバを用いてデマンドを伝送するとき、同じ光ファイバによって伝送することができる複数の加入者回線の信号は、TDM伝送路に多重化されて伝送される。従来、隣接する電話局(ノード)間に光ファイバを敷設し、光ファイバの一端の電話局(ノード)から他端の電話局(ノード)までの間にTDM伝送路が設定されていた。このとき、1本の光ファイバに1つのTDM伝送路が通る形態が一般的であった。
図1は、ノード、光ファイバ、及び、TDM伝送路の例を示す図である。図1の例では、ノードA、ノードB、ノードC、ノードD、ノードEがあり、A−B間、B−C間、C−D間、D−E間に光ファイバが敷設されている。TDM伝送路は、A−B間(#1)、B−C間(#2)、C−D間(#3)、D−E間(#4)の4区間に設定されるとする。このとき、例えば、A−E間のデマンドのうち、A−B間はA−B間のTDM伝送路に、B−C間はB−C間のTDM伝送路に、C−D間はC−D間のTDM伝送路に、D−E間はD−E間のTDM伝送路に、それぞれ、収容される。この例では、A−E間のデマンドは、この1通りの収容方法で収容される。
近年、WDM(Wavelength Division Multiplexing:波長多重)技術が導入され、ノードにはOADM(Optical Add/Drop Multiplexer)と呼ばれる機器が置かれるようになっている。OADMは、光信号のまま波長単位で光信号の分岐挿入や経路切替を行う光分岐挿入装置である。WDM技術では、従来のように、隣接するノード間にTDM伝送路が設定されるだけでなく、途中のノードで光のままノードを通過することによって、隣接しないノード間にもTDM伝送路が設定され得る。
図2は、OADMの構成例を示す図である。図2のOADMは、一方の光ファイバから波長多重された光信号が入力されると、光信号を波長毎に分離し、光スイッチ(光SW)によって、そのまま通過するものと、分岐または挿入するものとに分ける。さらに、OADMは、光信号を波長毎に多重して、他方の光ファイバに出力する。また、他方の光ファイバから波長多重された光信号が入力されることもある。
図3は、TDM伝送路の例を示す図である。図3の例では、図1の例と同様に、ノードA、ノードB、ノードC、ノードD、ノードEがあり、A−B間、B−C間、C−D間、D−E間に光ファイバ(リンク)が敷設されている。ここで、図2のOADMが図1(図3)のノードB、ノードC、ノードDに置かれたとする。このとき、TDM伝送路は、図
1に示すような#1−#4の区間の他に、図3に示すA−C間(#5)、C−E間(#6)、B−D間(#7)、A−D間(#8)、B−E間(#9)、A−E間(#10)の6区間にも、設定され得る。これによって、A−E間のデマンドを収容する方法は、上記のような1通りの収容方法ではなくなる。
図4は、デマンドの収容方法の例を示す図である。図2のOADMが図1のノードB、ノードC、ノードDに置かれたとすると、A−E間のデマンドを収容する方法は、図4のように8通りになる。具体的には、#1、#2、#3、#4のTDM伝送路を用いるもの(図1の例と同一)、#5、#3、#4のTDM伝送路を用いるもの、#1、#2、#6のTDM伝送路を用いるもの、#5、#6のTDM伝送路を用いるものがある。さらに、#1、#7、#4のTDM伝送路を用いるもの、#8、#4のTDM伝送路を用いるもの、#1、#9のTDM伝送路を用いるもの、#10のTDM伝送路を用いるものがある。このように、WDM技術の導入によって、1つのデマンドを収容するために用いる複数のTDM伝送路の組み合わせが存在するようになる。それぞれのデマンドに対して、他のデマンドの収容などを考慮した上で、適切なTDM伝送路の組み合わせを選択することが求められる。
例えば、あるネットワーク上で、すべてのノードにOADMが置かれている場合に、デマンドがK本あり、デマンドj(j=1,・・・,K)が始点から終点までに通過するノードの数が、始点および終点を含めてnj個あるとする。このとき、デマンドjを収容する
TDM伝送路の組み合わせの数は、次のようになる。
Figure 0005929682
各デマンドは、他のデマンドとは独立に、収容するTDM伝送路の組み合わせを選択できるので、すべてのデマンドの取り得る組み合わせの数は、次のようになる。
Figure 0005929682
各デマンドについて選択されたTDM伝送路の組み合わせの中で、同じ区間のTDM伝送路を選択しているデマンド同士は、TDM伝送路の容量の範囲内で同じTDM伝送路に多重化され得る。従って、すべてのデマンドを収容するためのTDM伝送路の本数を最小にする組み合わせが存在する。この組み合わせを求める方法として、混合整数計画法がある。
TDM伝送路の容量メニューをmとし、例えば、m=1は容量8であり、m=2は容量32であるとする。容量は、例えば、回線速度、ビットレートに相当する。また、TDM伝送路の番号をhとし、xm(h)を容量メニューmのTDM伝送路hの本数とする。c
ostmは、容量メニューmのTDM伝送路のコストである。この表記を使用して、TD
M伝送路のコストの最小解を求めるための目的関数は、次のようになる。
Figure 0005929682
次に、デマンドについての制約条件を示す。
Figure 0005929682
ここで、TDM伝送路の組み合わせ候補tでデマンドlを収容できるときは、T(l,t)=1、収容できないときは、T(l,t)=0とする。TDM伝送路の組み合わせ候補は、例えば、図4の#1、#2、#3、#4のTDM伝送路を用いるものは、l=1というように、同一始終点のデマンド毎に番号を割り当てられる。d(t)は、TDM伝送路の組み合わせ候補tで収容するデマンドの本数である。numberOfDemands(l)は、デマンドlの本数である。従って、上記の制約条件は、各デマンドがいずれかのTDM伝送路の組み合わせによって必ず収容されるという制約を意味している。
次に、TDM伝送路毎の容量の制約条件を示す。
Figure 0005929682
Demand_Cap(t)は、デマンド収容パターンtについてのデマンド帯域である。デマンド帯域は、例えば、デマンド1本あたりのビットレートである。TDM伝送路hがTDM伝送路の組み合わせ候補tに含まれる場合、I(h,t)=1、含まれない場合、I(h,t)=0とする。このため、式の第1項は、TDM伝送路hが含まれるデマンド収容パターンtについて、デマンド帯域とデマンド収容パターンtに収容されるデマンドの本数とを乗算したもの、つまり、TDM伝送路hに収容するデマンドの合計帯域を示している。TDM_CAP(m)は容量メニューmのTDM伝送路の容量を示しており、上述の場合、TDM_CAP(1)=8、TDM_CAP(2)=32である。式の第2項は、容量メニューmのTDM伝送路hの合計容量である。即ち、上記の式は、TDM伝送路に収容するデマンドの合計帯域がTDM伝送路の合計容量を上回らないという条件を示している。
次に、リンクの波長数制限の制約条件を示す。リンクは、隣接ノード間の光ファイバに対応する。
Figure 0005929682
ここで、TDM伝送路hがリンクsを通るときをLink(s,h)=1、通らないときをLink(s,h)=0とする。式の左辺は、リンクsを通るTDM伝送路の合計本
数を示している。Wavelength(s)はリンクsで利用可能な波長数を示している。
以上の目的関数と3つの制約条件式を混合整数計画法によって解くことにより、各TDM伝送路の本数xm(h)が求められる。混合整数計画法の解法は一般に知られている(
例えば、非特許文献1)。TDM伝送路のコストの最小解(最適解)を求めることで、好適なネットワーク設計が可能となる。
特開2008−301225号公報
坂和正敏、「離散システムの最適化」、森北出版、pp.33−59、pp.61−83、2000年5月
デマンドを収容するTDM伝送路の組み合わせ候補の数が多いと、デマンド収容パターンtの値の取り得る範囲が非常に大きくなるため、混合整数計画問題の式そのものが非常に大きくなることがある。式が大きくなると、計算時間が膨大になり、また、非常に膨大な記憶領域を使用するので、パーソナルコンピュータ(PC)などの一般的な計算設備では解けないといった問題がある。また、混合整数計画法のような数理計画法を使用せずに取り得るすべてのTDM伝送路の組み合わせの探索を行う場合、TDM伝送路の組み合わせ候補の数が多くなると現実的な時間で解くことは困難である。従って、現実的な時間で解けるように、TDM伝送路の組み合わせ候補を最適解となる可能性が高いものに絞ることが求められる。
本件開示の技術は、簡易に適切な伝送路の組み合わせ候補を求めることを課題とする。
開示の技術は、上記課題を解決するために、以下の手段を採用する。
即ち、第1の態様は、
複数のノードがリンクによって接続されるネットワークにおける前記複数のノード間の接続関係を示すネットワークトポロジ情報と、始点ノード、終点ノード、経路、本数を含むデマンドを示すデマンド情報とを格納する記憶部と、
前記ネットワークトポロジ情報及び前記デマンド情報に基づいて、
各ノードにおいて終端されるデマンドの本数と各ノードを通過するデマンドの本数との合計値を算出し、
リンクによって接続される他のノードの数を示すノードの次数を算出し、
前記複数のノードを、前記ノードの次数が大きいノードが上位になるように、前記ノードの次数が同じ場合には前記合計値が大きいノードが上位になるように、さらに、終端されるデマンドがないノードが下位になるように、並べる順序リストを作成し、
各デマンドにおいて、始点ノード及び終点ノードを除く始点ノードと終点ノードとの間に通過するノードについて、前記順序リストに従って、ソートし、
各デマンドについて、前記ソートされたノードの上位のノードから、所定数のノードを取り出し、前記始点ノード、前記終点ノード、及び、前記所定数のノードを端点とする伝送路の組み合わせ候補を生成し、
前記伝送路の組み合わせ候補から、前記デマンドを収容する伝送路の組み合わせを決定
する制御部とを、
備えるネットワーク設計装置である。
開示の態様は、プログラムが情報処理装置によって実行されることによって実現されてもよい。即ち、開示の構成は、上記した態様における各手段が実行する処理を、情報処理装置に対して実行させるためのプログラム、或いは当該プログラムを記録したコンピュータ読み取り可能な記録媒体として特定することができる。また、開示の構成は、上記した各手段が実行する処理を情報処理装置が実行する方法をもって特定されてもよい。
開示の技術によれば、簡易に適切な伝送路の組み合わせ候補を求めることができる。
図1は、ノード、光ファイバ、及び、TDM伝送路の例を示す図である。 図2は、OADMの構成例を示す図である。 図3は、TDM伝送路の例を示す図である。 図4は、デマンドの収容方法の例を示す図である。 図5は、ネットワーク設計装置の構成例を示す図である。 図6は、本実施形態のネットワーク設計装置の全体の動作フローの例を示す図である。 図7は、ネットワーク設計装置によって経路設計される対象のネットワークトポロジの例を示す図である。 図8は、ノード情報の例を示す図である。 図9は、リンク情報の例を示す図である。 図10は、図7のようなネットワークトポロジにおけるデマンドの例を示す図である。 図11は、デマンド情報の例を示す図である。 図12は、ネットワーク設計装置におけるTDM伝送路の組み合わせ候補の作成の動作フローの例(1)を示す図である。 図13は、ネットワーク設計装置におけるTDM伝送路の組み合わせ候補の作成の動作フローの例(2)を示す図である。 図14は、ノード毎の、終端デマンド本数、通過デマンド本数、スコアの例を示す図である。 図15は、図7のネットワークトポロジにおけるノードの次数の例を示す図である。 図16は、ノード順序リスト生成部124が生成するノードの順序リストの例(1)を示す図である。 図17は、ノード順序リスト生成部124が生成するノードの順序リストの例(2)を示す図である。 図18は、途中ノードリストの例を示す図である。 図19は、ソート済の途中ノードリストの例を示す図である。 図20は、k値リストの例を示す図である。 図21は、N1−N6間のデマンドの4つのTDM伝送路の組み合わせ候補の例を示す図である。 図22は、生成されるTDM伝送路組み合わせ候補の例を示す図である。 図23は、変形例1のTDM伝送路の組み合わせ候補の生成の動作フローの例(1)を示す図である。 図24は、変形例1のTDM伝送路の組み合わせ候補の生成の動作フローの例(2)を示す図である。 図25は、変形例1のTDM伝送路の組み合わせ候補の生成の動作フローの例(3)を示す図である。 図26は、ノードの選択不可のフラグの例を示す図である。 図27は、変形例2のTDM伝送路の組み合わせ候補の生成の動作フローの例を示す図である。 図28は、変形例2のTDM伝送路の組み合わせ候補の生成の動作フローの例(1)を示す図である。 図29は、変形例2のTDM伝送路の組み合わせ候補の生成の動作フローの例(2)を示す図である。 図30は、上記の動作例におけるノードの順序リスト作成の際の並べ替えの動作フローの例を示す図である。 図31は、変形例3におけるノードの順序リスト作成の際の並べ替えの動作フローの例を示す図である。 図32は、変形例4におけるノードの順序リスト作成の際の並べ替えの動作フローの例(1)を示す図である。 図33は、変形例4におけるノードの順序リスト作成の際の並べ替えの動作フローの例(2)を示す図である。 図34は、変形例5におけるノードの順序リスト作成の際の並べ替えの動作フローの例(1)を示す図である。 図35は、変形例5におけるノードの順序リスト作成の際の並べ替えの動作フローの例(2)を示す図である。 図36は、変形例6におけるノードの順序リスト作成の際の並べ替えの動作フローの例(1)を示す図である。 図37は、変形例6におけるノードの順序リスト作成の際の並べ替えの動作フローの例(2)を示す図である。 図38は、変形例7におけるノードの順序リスト作成の際の並べ替えの動作フローの例(1)を示す図である。 図39は、変形例7におけるノードの順序リスト作成の際の並べ替えの動作フローの例(2)を示す図である。 図40は、変形例8のTDM伝送路の組み合わせ候補の生成の動作フローの例(1)を示す図である。 図41は、変形例8のTDM伝送路の組み合わせ候補の生成の動作フローの例(2)を示す図である。 図42は、変形例9のTDM伝送路の組み合わせ候補の生成の動作フローの例(1)を示す図である。 図43は、変形例9のTDM伝送路の組み合わせ候補の生成の動作フローの例(2)を示す図である。 図44は、変形例10のTDM伝送路の組み合わせ候補の生成の動作フローの例(1)を示す図である。 図45は、変形例10のTDM伝送路の組み合わせ候補の生成の動作フローの例(2)を示す図である。 図46は、変形例10のTDM伝送路の組み合わせ候補の生成の動作フローの例(3)を示す図である。 図47は、変形例11のTDM伝送路の組み合わせ候補の生成の動作フローの例(1)を示す図である。 図48は、変形例11のTDM伝送路の組み合わせ候補の生成の動作フローの例(2)を示す図である。 図49は、変形例11のTDM伝送路の組み合わせ候補の生成の動作フローの例(3)を示す図である。
以下、図面を参照して実施形態について説明する。実施形態の構成は例示であり、開示の構成は、開示の実施形態の具体的構成に限定されない。開示の構成の実施にあたって、実施形態に応じた具体的構成が適宜採用されてもよい。
〔実施形態〕
(構成例)
図5は、ネットワーク設計装置の構成例を示す図である。ネットワーク設計装置100は、ネットワークの経路設計を行う。
ネットワーク設計装置100は、制御部110、メモリ140、外部記憶装置150、入力装置160、出力装置170を含む。制御部110は、設計情報入力部112、TDM伝送路組み合わせ候補生成部114、TDM伝送路選択部116、結果出力部118を含む。TDM伝送路組み合わせ候補生成部114は、ノード次数スコア計算部122、ノード順序リスト生成部124、途中ノードリスト生成部126、TDM伝送路組み合わせ候補作成部128を含む。
制御部110は、ネットワーク設計装置100の全体を制御する。制御部110には、バスを介して、メモリ140、外部記憶装置150、入力装置160、出力装置170などが接続される。
設計情報入力部112は、トポロジ情報、デマンド情報などの設計情報の入力を受け付ける。
TDM伝送路組み合わせ候補生成部114は、TDM伝送路の組み合わせ候補の生成を行う。
ノード次数スコア計算部122は、トポロジ情報、デマンド情報などに基づいて、ノードの次数やスコアを計算する。
ノード順序リスト生成部124は、ノードの次数とスコアからノードをソートしてノードの順序リストを生成する。
途中ノードリスト生成部126は、デマンド毎に途中ノードリストを生成する。
TDM伝送路組み合わせ候補作成部128は、デマンド毎にデマンド経路の途中にあるノードを抽出し、ノードの順序リストに従ってソートしてTDM伝送路の組み合わせ候補を生成する。
TDM伝送路選択部116は、数理計画法などにより、TDM伝送路の組み合わせ候補から、デマンドを収容するTDM伝送路の組み合わせを決定する。
結果出力部118は、設計結果を出力する。
メモリ140は、ネットワーク設計装置100の主記憶装置として使用される。メモリ140には、制御部110で実行されるOS(Operating System)のプログラムやアプリケーショプログラムが格納される。メモリ140には、制御部110で実行されるプログラムが使用する各種データが格納される。メモリ140は、記憶部の一例である。
外部記憶装置150は、ネットワーク設計装置100の二次記憶装置として使用される。外部記憶装置150には、OSのプログラム、アプリケーションプログラム、各種デー
タ等が格納される。メモリ140に格納される各種データ、リスト、テーブル等は、外部記憶装置150に格納されてもよい。外部記憶装置150は、記憶部の一例である。
入力されたトポロジ情報や、デマンド情報、TDM伝送路組み合わせ候補生成部114で生成されるノードの順序リストなどのテーブルは、メモリ140、外部記憶装置150などに格納され得る。
入力装置160は、オペレータ等からのトポロジ情報等の入力を受け付ける。入力装置160は、キーボードやポインティングデバイスなどである。
出力装置170は、制御部110により生成されたデータ等を出力する。出力装置170は、ディスプレイ装置やプリンタなどである。
ネットワーク設計装置100は、パーソナルコンピュータ(PC、Personal Computer
)のような汎用のコンピュータまたはサーバマシンのような専用のコンピュータを使用して実現可能である。
コンピュータ、すなわち、情報処理装置は、プロセッサ、主記憶装置、及び、二次記憶装置や、通信インタフェース装置のような周辺装置とのインタフェース装置を含む。主記憶装置及び二次記憶装置は、コンピュータ読み取り可能な記録媒体である。
コンピュータは、プロセッサが記録媒体に記憶されたプログラムを主記憶装置の作業領域にロードして実行し、プログラムの実行を通じて周辺機器が制御されることによって、所定の目的に合致した機能を実現することができる。
プロセッサは、例えば、CPU(Central Processing Unit)やDSP(Digital Signal Processor)である。主記憶装置は、例えば、RAM(Random Access Memory)やRO
M(Read Only Memory)を含む。
二次記憶装置は、例えば、EPROM(Erasable Programmable ROM)、ハードディス
クドライブ(HDD、Hard Disk Drive)である。また、二次記憶装置は、リムーバブル
メディア、即ち可搬記録媒体を含むことができる。リムーバブルメディアは、例えば、USB(Universal Serial Bus)メモリ、あるいは、CD(Compact Disc)やDVD(Digital Versatile Disc)のようなディスク記録媒体である。
通信インタフェース装置は、例えば、LAN(Local Area Network)インタフェースボードや、無線通信のための無線通信回路である。
周辺装置は、上記の二次記憶装置や通信インタフェース装置の他、キーボードやポインティングデバイスのような入力装置や、ディスプレイ装置やプリンタのような出力装置を含む。また、入力装置は、カメラのような映像や画像の入力装置や、マイクロフォンのような音声の入力装置を含むことができる。また、出力装置は、スピーカのような音声の出力装置を含むことができる。
ネットワーク設計装置100を実現するコンピュータは、プロセッサが二次記憶装置に記憶されているプログラムを主記憶装置にロードして実行することによって、設計情報入力部112、TDM伝送路組み合わせ候補生成部114等としての機能を実現する。
一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。
プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくても、並列的または個別に実行される処理を含む。
ネットワーク設計装置100の各ユニットは、ハードウェアの構成要素、ソフトウェアの構成要素、又は、これらの組み合わせとして、それぞれ実現され得る。
ハードウェアの構成要素は、ハードウェア回路であり、例えば、FPGA(Field Programmable Gate Array)、特定用途向け集積回路(ASIC)、ゲートアレイ、論理ゲー
トの組み合わせ、アナログ回路等がある。
ソフトウェアの構成要素は、ソフトウェアとして所定の処理を実現する部品である。ソフトウェアの構成要素は、ソフトウェアを実現する言語、開発環境等を限定する概念ではない。
(動作例)
〈全体の動作〉
図6は、本実施形態のネットワーク設計装置の全体の動作フローの例を示す図である。
ステップS101では、ネットワーク設計装置100の制御部110の設計情報入力部112は、入力装置160を介して、オペレータ等からのトポロジ情報及びデマンド情報の入力を受け付け、トポロジ情報及びデマンド情報を取得する。設計情報入力部112は、外部記憶装置150等にあらかじめ格納されるトポロジ情報及びデマンド情報を、外部記憶装置150等から取得してもよい。
図7は、ネットワーク設計装置によって経路設計される対象のネットワークトポロジの例を示す図である。ネットワークトポロジ(トポロジ)は、ネットワーク上のノードの接続形態である。トポロジは、例えば、ノード及びノードとノードとを接続するリンクによって表現される。ノード及びリンクは、例えば、それぞれ、電話局(局舎)及びファイバに対応する。トポロジ情報(ネットワークトポロジ情報)は、ネットワークトポロジを表現する情報である。トポロジ情報は、例えば、ノード情報及びリンク情報を含む。
図7の例では、ノードN1は、ノードN2と接続する。ノードN2は、ノードN1及びノードN3と接続する。ノードN3は、ノードN2、ノードN4及びノードN7と接続する。ノードN4は、ノードN3及びノードN5と接続する。ノードN5は、ノードN4、ノードN6及びノードN8と接続する。ノードN6は、ノードN5と接続する。ノードN7は、ノードN3と接続する。ノードN8は、ノードN5と接続する。
図8は、ノード情報の例を示す図である。ノード情報は、例えば、ノード名の一覧である。ノード情報は、メモリ140に格納される。
図9は、リンク情報の例を示す図である。リンク情報は、ノード間を接続するリンクの始点ノード及び終点ノードを含む。リンク情報には、リンク毎の光ファイバの距離が含まれてもよい。リンク情報には、WDMで利用可能な波長数が含まれてもよい。ネットワーク全体で同じWDM機器が導入される場合、リンク毎の利用可能な波長数の代わりに、ネットワーク全体で共通の1つの波長数が適用されてもよい。リンク情報は、メモリ140に格納される。
図10は、図7のようなネットワークトポロジにおけるデマンドの例を示す図である。
図10の例では、ノードN1とノードN3と間、ノードN1とノードN6と間、ノードN1とノードN7と間、ノードN3とノードN4と間、ノードN4とノードN7と間、ノードN4とノードN8と間などに、それぞれ、デマンドが存在する。デマンド情報は、デマンドを表現する情報である。
図11は、デマンド情報の例を示す図である。デマンド情報は、例えば、始点ノード、終点ノード、帯域、本数、経路を含む。経路は、例えば、始点ノード、終点ノード、始点ノードから終点までに経由するノードによって、表される。デマンドの経路は、最短経路探索等で決定されてもよい。デマンド情報は、メモリ140に格納される。
デマンドの経路は、デマンドが経由するすべてのリンクによって表現されてもよい。例えば、ノードN1とノードN3との間のデマンドの経路は、N1−N2間のリンク及びN2−N3間のリンクとして表現されうる。
また、デマンドの経路は、デマンドが経由するすべてのノード(始点ノード及び終点ノードを含む)及びすべてのリンクによって表現されてもよい。例えば、ノードN1とノードN3との間のデマンドの経路は、ノードN1、N1−N2間のリンク、ノードN2、N2−N3間のリンク、ノードN3として表現されうる。
図6に戻って、ステップS102では、ネットワーク設計装置100のTDM伝送路組み合わせ候補生成部114は、デマンドを収容するTDM伝送路の組み合わせの候補を生成する。デマンドを収容するTDM伝送路の組み合わせ候補の生成については、後に詳述する。
ステップS103では、TDM伝送路選択部116は、TDM伝送路組み合わせ候補生成部114が生成したTDM伝送路組み合わせ候補から各デマンドを収容するTDM伝送路の組み合わせを選択する。各デマンドを収容するTDM伝送路の組み合わせの選択には、例えば、混合整数計画法などが使用されうる。
ステップS104では、TDM伝送路選択部116は、すべてのデマンドがいずれかのTDM伝送路の組み合わせに収容されたかを確認する。すべてのデマンドがいずれかのTDM伝送路の組み合わせに収容された場合(S104;YES)、結果出力部118は、すべてのデマンドについて、それぞれのデマンドが収容されるTDM伝送路の組み合わせを出力し(S105)、処理が終了する。
少なくとも1つのデマンドがいずれのTDM伝送路の組み合わせにも収容できなかった場合(S104;NO)、結果出力部118は、ネットワーク設計の失敗を出力し(S106)、処理が終了する。ネットワーク設計の失敗が出力された場合、オペレータは他の方法によりネットワーク設計を試みることになる。
〈TDM伝送路の組み合わせ候補の生成の動作〉
図12及び図13は、ネットワーク設計装置におけるTDM伝送路の組み合わせ候補の作成の動作フローの例を示す図である。図12の「A1」、「A2」は、それぞれ、図13の「A1」、「A2」と接続する。
ステップS201では、ノード次数スコア計算部122は、ノード毎に、終端されるデマンドの本数および通過するデマンドの本数をカウントする。ノード次数スコア計算部122は、メモリ140から、ノード情報に含まれるノード及びデマンド情報に含まれるデマンドを抽出する。ノード次数スコア計算部122は、ノード情報に含まれる各ノードについて、当該ノードで終端されるデマンドの本数、及び、当該ノードを通過するデマンド
の本数を数える。終端されるデマンドの本数は、図8のノード情報に含まれる各ノードについて、図11に含まれるデマンドの始点ノード又は終点ノードに当該ノードが含まれるデマンドの本数の和を求めればよい。例えば、ノードN1で終端されるデマンドの本数は、N1−N3間のデマンドが1本、N1−N6間のデマンドが1本、N1−N7間のデマンドが2本であるので、合計4本である。通過するデマンドの本数は、図8のノード情報に含まれる各ノードについて、図11に含まれるデマンドの経路に含まれるノードのうち、始点ノード及び終点ノードを除く途中の箇所に当該ノードが出現するデマンドの本数の和を求めればよい。例えば、N1−N6間のデマンドの場合、経路は、N1、N2、N3、N4、N5、N6であり、始点ノードであるノードN1及び終点ノードであるノードN6を除くと、通過するノードは、N2、N3、N4、N5である。即ち、例えば、N1−N6間のデマンドは、ノードN2を通過するデマンドである。ノードN2を通過するデマンドの本数は、N1−N3間のデマンドが1本、N1−N6間のデマンドが1本、N1−N7間のデマンドが2本であるので、合計4本である。
ステップS202では、ノード次数スコア計算部122は、ノード毎に、ノードのスコアを計算する。ノードのスコアは、当該ノードで終端されるデマンドの本数(終端デマンド本数)と当該ノードを通過するデマンドの本数(通過デマンド本数)との和である。
図14は、ノード毎の、終端デマンド本数、通過デマンド本数、スコアの例を示す図である。ノード毎の、終端デマンド本数、通過デマンド本数、スコアは、メモリ140に格納される。
ステップS203では、ノード次数スコア計算部122は、ノード毎に、ノードの次数を求める。ノードの次数は、当該ノードから出ているリンクの本数である。例えば、図7のネットワークトポロジでは、ノードN2から、N1−N2間のリンク、N2−N3間のリンクの2本のリンクが出ている。従って、ノードN2の次数は、2である。同様にして、ノードN3の次数は、3である。
図15は、図7のネットワークトポロジにおけるノードの次数の例を示す図である。図15では、例えば、ノードN1の次数は、1である。
ステップS204では、ノード順序リスト生成部124は、ノードの次数及びノードのスコアに基づいて、ノードの順序リストを生成する。ノード順序リスト生成部124は、ノードをノードの次数の高い順に並べる。図15のようにノードの次数が求められているとすると、ノードの順序は、ノードの次数が高いものから、N3、N5、N2、N4、N1、N6、N7、N8となる。ここで、ノードの次数が同じものについては、ノードのスコアが高いものを上位とする。ノードN3及びノードN5は、ノードの次数が3で同じであるが、ノードN3のスコアは7であり、ノードN5のスコアは5であるので、ノードN3が上位となる。同様に、ノードN2及びノードN4は、ノードの次数が2で同じであるが、ノードN2及びノードN4のスコアは、それぞれ、4、5であるので、ノードN4が上位となる。さらに、ノードN1、ノードN6、ノードN7及びノードN8は、ノードの次数が1で同じであるが、ノードN1、ノードN6、ノードN7及びノードN8のスコアは、それぞれ、4、2、3、4であるから、順序は、N1、N8、N7、N6になる。従って、ノードの順序は、N3、N5、N4、N2、N1、N8、N7、N6となる。
ステップS205では、さらに、ノード順序リスト生成部124は、ステップS204で生成したノードの順序リストにおいて、終端デマンド本数が0本であるノードを、順序の最後に移動する。図14の例では、ノードN2の終端デマンド本数が0本であるため、ノードN2をノードの順序リストの最後に移動する。従って、ノードの順序は、N3、N5、N4、N1、N8、N7、N6、N2となる。終端するデマンドの無いノードは、当
該ノードを端点とするTDM伝送路を作る可能性が低い。そのため、ステップS205の処理は、終端するデマンドの無いノードがTDM伝送路の端点になりにくくするための処理である。上述のように、図14の例では、ノードN2の終端デマンド本数は0本である。例えば、ノードN2を通るデマンドの中で最も短いデマンドは、N1−N3間のデマンドである。N1−N3間のデマンドは、N1−N2間のTDM伝送路とN2−N3間のTDM伝送路との2本に分けて伝送されるよりも、N1−N3間のTDM伝送路1本で伝送されたほうが、TDM伝送路の本数は少なくなる。TDM伝送路の本数が少ないほど最適解に近いと考えられるため、最適解になりにくいTDM伝送路の組み合わせをできるだけ除外するため、ノードN2が順序の最後に移動される。
図16は、ノード順序リスト生成部124が生成するノードの順序リストの例(1)を示す図である。図16の例では、順位が高いものから順に、ノードが並べられている。
図17は、ノード順序リスト生成部124が生成するノードの順序リストの例(2)を示す図である。図17の例では、ノード毎に、当該ノードの順位が示されている。図16の順序リストの代わりに、図17の順序リストが使用されてもよい。
ステップS206では、途中ノードリスト生成部126は、デマンド毎に途中ノードリストを生成する。途中ノードリスト生成部126は、デマンド情報から1つのデマンド(処理中のデマンドとする)を取り出し、当該デマンドの経路の途中のノードを取り出す。デマンドの経路の途中のノードは、当該デマンドに通過されるノードである。例えば、途中ノードリスト生成部126は、N1−N6間のデマンドに対して、当該デマンドの経路の途中のノードである、ノードN2、ノードN3、ノードN4、ノードN5を取り出す。途中ノードリスト生成部126は、取り出したノードを、途中ノードリストとして、メモリ140に格納する。途中ノードリストは、デマンド毎に生成される。
図18は、途中ノードリストの例を示す図である。図18の例は、N1−N6間のデマンドの途中ノードリストの例である。N1−N6間のデマンドの途中ノードは、ノードN2、ノードN3、ノードN4、ノードN5である。途中ノードリストは、メモリ140に格納される。
ステップS207では、途中ノードリスト生成部126は、処理中のデマンドについて、途中ノードリストのノードを、順序リストに従って、ソートする。途中ノードリスト生成部126は、N1−N6間のデマンドの途中ノードを、N3、N5、N4、N2の順にソートする。
図19は、ソート済の途中ノードリストの例を示す図である。図19の例は、N1−N6間のデマンドのソート済の途中ノードリストの例である。N1−N6間のデマンドの途中ノードは、N3、N5、N4、N2の順にソートされている。ソート済の途中ノードリストは、デマンド毎に生成される。ソート済の途中ノードリストは、メモリ140に格納される。
ステップS208では、TDM伝送路組み合わせ候補作成部128は、処理中のデマンドについて、k値リストから1つのkの値を取り出し、ソート済の途中ノードリストの上位からk個のノードを取り出す。TDM伝送路組み合わせ候補作成部128は、kの値が0であるときは、ソート済の途中ノードリストからノードを取り出さない。k値リストは、デマンド毎に取り得るkの値を示すリストである。例えば、N1−N6のデマンドについてkの値が2である場合、取り出されるノードは、図19の上位2つである、ノードN3及びノードN5である。
図20は、k値リストの例を示す図である。k値リストでは、デマンド毎に取り得るkの値が示される。例えば、N1−N6間のデマンドでは、取り得るkの値は、0,1,2,3である。デマンド毎のkの値は、あらかじめ決められている。k値リストは、メモリ140に格納される。
ステップS209では、TDM伝送路組み合わせ候補作成部128は、処理中のデマンドについて、始点ノード、終点ノード、及び、ステップS208で取り出したノードを端点として、TDM伝送路の組み合わせを生成する。TDM伝送路組み合わせ候補作成部128は、ステップS208でノードを取り出さなかった場合、始点ノード及び終点ノードを端点とするTDM伝送路をTDM伝送路の組み合わせとして生成する。
例えば、N1−N6間のデマンドでkの値が2である場合、取り出されているノードはノードN3及びノードN5である。このとき、TDM伝送路組み合わせ候補作成部128は、始点ノードであるノードN1、終点ノードであるノードN6、取り出されたノードN3及びノードN5を端点とするTDM伝送路の組み合わせを作成する。TDM伝送路組み合わせ候補作成部128は、始点ノードであるノードN1、終点ノードであるノードN6、取り出されたノードN3及びノードN5を、デマンドの経路の始点から終点までの順にソートする。ここでは、ソート後の順は、N1、N3、N5、N6である。TDM伝送路組み合わせ候補作成部128は、ソートしたノードの隣り合う2つのノード間にTDM伝送路を設定する。つまり、TDM伝送路組み合わせ候補作成部128は、N1−N3間のTDM伝送路、N3−N5間のTDM伝送路、N5−N6間のTDM伝送路を設定する。即ち、TDM伝送路組み合わせ候補作成部128は、{N1−N3、N3−N5、N5−N6}というTDM伝送路の組み合わせ候補を作成する。
ここで、TDM伝送路の組み合わせに含まれるTDM伝送路の一部または全部は、互いに重複しない。つまり、例えば、TDM伝送路組み合わせ候補作成部128が、N1−N5間のTDM伝送路、N5−N3間のTDM伝送路、N3−N6間のTDM伝送路の組み合わせを作成することはない。
例えば、N1−N6間のデマンドでkの値が3である場合、取り出されているノードはノードN3、ノードN4及びノードN5である。このとき、TDM伝送路組み合わせ候補作成部128は、始点ノードであるノードN1、終点ノードであるノードN6、取り出されたノードN3、ノードN4及びノードN5を端点とするTDM伝送路の組み合わせを作成する。TDM伝送路組み合わせ候補作成部128は、始点ノードであるノードN1、終点ノードであるノードN6、取り出されたノードN3、ノードN4及びノードN5を、デマンドの経路の始点から終点までの順にソートする。ここでは、ソート後の順は、N1、N3、N4、N5、N6である。TDM伝送路組み合わせ候補作成部128は、ソートしたノードの隣り合う2つのノード間にTDM伝送路を設定する。つまり、TDM伝送路組み合わせ候補作成部128は、N1−N3間のTDM伝送路、N3−N4間のTDM伝送路、N4−N5間のTDM伝送路、N5−N6間のTDM伝送路を設定する。即ち、TDM伝送路組み合わせ候補作成部128は、というTDM伝送路の組み合わせ候補を作成する。
N1−N6間のデマンドでkの値が1である場合、取り出されているノードはノードN3である。このとき、TDM伝送路組み合わせ候補作成部128は、始点ノードであるノードN1、終点ノードであるノードN6、取り出されたノードN3を端点とするTDM伝送路の組み合わせを作成する。TDM伝送路組み合わせ候補作成部128は、始点ノードであるノードN1、終点ノードであるノードN6、取り出されたノードN3を、デマンドの経路の始点から終点までの順にソートする。ここでは、ソート後の順は、N1、N3、N6である。TDM伝送路組み合わせ候補作成部128は、ソートしたノードの隣り合う
2つのノード間にTDM伝送路を設定する。つまり、TDM伝送路組み合わせ候補作成部128は、N1−N3間のTDM伝送路、N3−N6間のTDM伝送路を設定する。即ち、TDM伝送路組み合わせ候補作成部128は、{N1−N3、N3−N6}というTDM伝送路の組み合わせ候補を作成する。
N1−N6間のデマンドでkの値が0である場合、取り出されているノードはない。このとき、TDM伝送路組み合わせ候補作成部128は、始点ノードであるノードN1、終点ノードであるノードN6を端点とするTDM伝送路の組み合わせを作成する。TDM伝送路組み合わせ候補作成部128は、N1−N6間のTDM伝送路を設定する。即ち、TDM伝送路組み合わせ候補作成部128は、{N1−N6}というTDM伝送路の組み合わせ候補を作成する。
図21は、N1−N6間のデマンドの4つのTDM伝送路の組み合わせ候補の例を示す図である。図21の例では、N1−N6間に、{N1−N6}、{N1−N3、N3−N6}、{N1−N3、N3−N5、N5−N6}、{N1−N3、N3−N4、N4−N5、N5−N6}という4つのTDM伝送路の組み合わせ候補が設定されている。
始点ノード及び終点ノードが同一であり、かつ、kの値が同一である2つのデマンドについては、生成されるTDM伝送路の組み合わせ候補が同一であるので、これらのデマンドのTDM伝送路の組み合わせ候補は、まとめて作成されてもよい。
ステップS210では、TDM伝送路組み合わせ候補作成部128は、処理中のデマンドについて、k値リストからすべてのkの値を取り出して、TDM伝送路組み合わせ候補を作成したか否かを確認する。処理中のデマンドについてk値リストからすべてのkの値を取り出した場合(S210;YES)、処理がステップS211に進む。処理中のデマンドについてk値リストからすべてのkの値を取り出していない場合(S210;NO)、処理がステップS208に戻る。
ステップS211では、TDM伝送路組み合わせ候補作成部128は、すべてのデマンドを取り出して一連の処理を行ったかを確認する。まだ未処理のデマンドが残っている場合(S211;NO)、処理がステップS206に戻る。すべてのデマンドを取り出して一連の処理を行った場合(S211;YES)、処理が終了する。
ネットワーク設計装置100は、取得したトポロジ(図7)におけるデマンド(図11)について、TDM伝送路の組み合わせ候補を生成し、生成されたTDM伝送路の組み合わせ候補に基づいて、各デマンドを収容するTDM伝送路の組み合わせを選択する。
図22は、生成されるTDM伝送路組み合わせ候補の例を示す図である。図22のように、デマンド毎にTDM伝送路の組み合わせ候補が生成される。TDM伝送路の組み合わせ候補の数は、各デマンドのkの値の数と同じである。例えば、N1−N6間のデマンドでは、kの値の数はk=0,1,2,3の4つであるから、TDM伝送路の組み合わせ候補の数は4つである。
上記の動作例に基づくネットワーク設計装置100によれば、ノードの次数、ノードで終端されるデマンドの本数、ノードを通過するデマンドの本数を用いて最適解になる可能性が高いTDM伝送路の組み合わせに絞ってネットワーク設計を行うことができる。
(変形例1)
次に変形例1について説明する。変形例1は、上記の動作例との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
上記の動作例では、デマンド毎にデマンドの始点ノード及び終点ノードを除く経路上の途中のノードの中からあらかじめ指定された数のノードが取り出された。変形例1では、取り出す途中のノードの個数を順次増加させながら、経路上の途中のノードの数を超えるか選択不可のノードが含まれた時点で処理が終了する。
図23、図24、図25は、変形例1のTDM伝送路の組み合わせ候補の生成の動作フローの例を示す図である。図23の「B1」、「B2」は、それぞれ、図24の「B1」、「B2」と接続する。図24の「B3」、「B4」、「B5」、「B6」は、それぞれ、図25の「B3」、「B4」、「B5」、「B6」と接続する。
図23のステップS301からステップS304の動作は、上記の動作例の図12のステップS201からステップS204の動作と同様である。
ステップS305では、ノード順序リスト生成部124は、ステップS304で生成したノードの順序リストにおいて、終端デマンド本数が0本であるノードを、順序の最後に移動する。さらに、ノード順序リスト生成部124は、最後に移動したノードに選択不可のフラグを付与する。
図26は、ノードの選択不可のフラグの例を示す図である。図26の例では、ノードごとに「true」又は「false」が付与される。ここでは、「true」が選択可能を意味し、「false」が選択不可を意味する。
ステップS306からステップS307の動作は、上記の動作例のステップS206からステップS207の動作と同様である。
ステップS308では、TDM伝送路組み合わせ候補作成部128は、変数kを用意し、変数kに初期値0を代入する。
ステップS309では、TDM伝送路組み合わせ候補作成部128は、処理中のデマンドについて、ソート済の途中ノードリストの上位からk個のノードを取り出す。TDM伝送路組み合わせ候補作成部128は、kの値が0であるときは、ソート済の途中ノードリストからノードを取り出さない。k値リストは、デマンド毎に取り得るkの値を示すリストである。例えば、N1−N6のデマンドについてkの値が2である場合、取り出されるノードは、図19の上位2つである、ノードN3及びノードN5である。
ステップS310では、TDM伝送路組み合わせ候補作成部128は、ステップS309で取り出したノードの中に選択不可のフラグが付与されているノードが含まれているか否かを確認する。選択不可のフラグが付与されているノードが含まれている場合(S310;YES)、処理がステップS314に進む。選択不可のフラグが付与されているノードが含まれていない場合(S310;NO)、処理がステップS311に進む。
ステップS311では、TDM伝送路組み合わせ候補作成部128は、処理中のデマンドについて、始点ノード、終点ノード、及び、ステップS309で取り出したノードを端点として、TDM伝送路の組み合わせを生成する。TDM伝送路組み合わせ候補作成部128は、ステップS309でノードを取り出さなかった場合、始点ノード及び終点ノードを端点とするTDM伝送路をTDM伝送路の組み合わせとして生成する。
ステップS312では、TDM伝送路組み合わせ候補作成部128は、変数kにk+1を代入する。
ステップS313では、TDM伝送路組み合わせ候補作成部128は、処理中のデマンドについて、変数kが経路の途中のノード数を超えているか否かを確認する。処理中のデマンドについて、変数kが経路の途中のノード数を超えている場合(S313;YES)、処理がステップS314に進む。処理中のデマンドについて、変数kが経路の途中のノード数を超えていない場合(S313;NO)、処理がステップS309に戻る。
ステップS314では、TDM伝送路組み合わせ候補作成部128は、すべてのデマンドを取り出して一連の処理を行ったかを確認する。まだ未処理のデマンドが残っている場合(S314;NO)、処理がステップS306に戻る。すべてのデマンドを取り出して一連の処理を行った場合(S314;YES)、処理が終了する。
上記の変形例1に基づくネットワーク設計装置100によれば、選択するノードの個数を自動的に増加して選択できるようにすることで、あらかじめ取り出すノードの数を決めなくてもよい。
(変形例2)
次に変形例2について説明する。変形例2は、上記の動作例、変形例1との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
変形例2では、ノードの次数および終端するデマンドの本数と通過するデマンドの本数との合計がともに等しいノードが存在する場合の処理が、上記の動作例に追加される。
図27、図28、図29は、変形例2のTDM伝送路の組み合わせ候補の生成の動作フローの例を示す図である。図27の「C1」、「C2」は、それぞれ、図28の「C1」、「C2」と接続する。図28の「C3」、「C4」、「C5」は、それぞれ、図29の「C3」、「C4」、「C5」と接続する。
図27のステップS401からステップS407までの動作は、上記の動作例の図12のステップS201からステップS207までの動作と同様である。
ステップS408では、途中ノードリスト生成部126は、同位のノードをグループ化する。ここで、同位のノードとは、ノードの次数及びスコアが共に等しいノードである。グループ化する方法として、例えば、order[i][j]のような二次元配列を用意する。そし
て、order[0][m]には順に並べた1番目のノードと、そのノードと同位のものが入れられ
る。order[1][n]には順に並べた1番目のノードと同位のものを除いた2番目のノードと
、そのノードと同位のものが入れられる。例えば、あるデマンドの始点ノード及び終点ノードを除いた経路の途中のノードがN1、N2、N3、N4、N5、N6、N7とあり、次数とスコアで並べた順序もこの順として、N2とN3、N5とN6とN7が同位の場合、次のようにする。
order[0][0] = N1
order[1][0] = N2、order[1][1] = N3
order[2][0] = N4
order[3][0] = N5、order[3][1] = N6、order[3][2] = N7
このようにすると、ある数iについてorder[i][j]という配列の要素の数が1であれば、order[i][0]と同位のものはなく、2以上であればorder[i][j]の配列の要素を参照することで、order[i][0]と同位のノードのグループを得ることができる。
ステップS409では、TDM伝送路組み合わせ候補作成部128は、処理中のデマン
ドについて、k値リストから1つのkの値を取り出し、ソート済の途中ノードリストの上位からk個のノードを取り出す。TDM伝送路組み合わせ候補作成部128は、k番目のノードが、同位のノードを有するか否かを確認する。例えば、前述の例でk=2の場合、順序に従ってとればN1、N2が取り出される。ノードN2には、二次元配列変数order
を調べると同位のノードとしてノードN3があることがわかる。ノードをk(=2)個取り出した中にノードN2と同位のノード、すなわちorder[1][j]という配列に含まれるも
のは1つであるため、k番目のノードと同位のノードの数mは1となる。そこで、TDM
伝送路組み合わせ候補作成部128は、order[1][j]から1個のノードの取り出し方を順
に行い、それに、上位のk−m個のノード(ここではノードN1)を加えたものを、k個のノードとして取り出す。この場合は、[N2, N3]の中から1つとる取り出し方なので、[N2]と[N3]があり、k(=2)個取り出す取り出し方は[N1, N2]と[N1, N3]の2つの組み合わせになる。例えば、k=3の場合は、ノードN3と同位のノードとしてノードN2があるが、[N2, N3]の中から2つとる取り出し方は[N2, N3]である。よって、k=3の場合に取り出されるノードは[N1, N2, N3]となる。同様に、k=4の場合は[N1, N2, N3, N4]である。k=5の場合は、ノードN5と同位のノードとしてノードN6及びノードN7があるため、k=5で取り出されるノードは[N1, N2, N3, N4, N5]、[N1, N2, N3, N4, N6]、[N1, N2, N3, N4, N7]の3通りとなる。k=6の場合、ノードN6と同位のノードはk=6で選択した中にノードN5とノードN6の2つが含まれるため、[N5, N6, N7]の中から2つを選ぶ組み合わせになる。この場合m=2で、k−m個のノード、すなわち[N1, N2,
N3, N4]に、[N5, N6, N7]の中から2つを選ぶ組み合わせを加えたものが取り出されるノードになる。この場合は[N1, N2, N3, N4, N5, N6]、[N1, N2, N3, N4, N5, N7]、[N1, N2, N3, N4, N6, N7]の3通りである。
ステップS410では、TDM伝送路組み合わせ候補作成部128は、処理中のデマンドについて、始点ノード、終点ノード、及び、ステップS409で取り出したノードを端点として、TDM伝送路の組み合わせを生成する。TDM伝送路組み合わせ候補作成部128は、ステップS409でノードを取り出さなかった場合、始点ノード及び終点ノードを端点とするTDM伝送路をTDM伝送路の組み合わせとして生成する。ステップS409で、複数の組み合わせのノードが取り出されている場合、TDM伝送路組み合わせ候補作成部128は、取り出されたすべての組み合わせについて、TDM伝送路の組み合わせを生成する。
ステップS411では、TDM伝送路組み合わせ候補作成部128は、処理中のデマンドについて、k値リストからすべてのkの値を取り出して、TDM伝送路組み合わせ候補を作成したか否かを確認する。処理中のデマンドについてk値リストからすべてのkの値を取り出した場合(S411;YES)、処理がステップS412に進む。処理中のデマンドについてk値リストからすべてのkの値を取り出していない場合(S411;NO)、処理がステップS409に戻る。
ステップS412では、TDM伝送路組み合わせ候補作成部128は、すべてのデマンドを取り出して一連の処理を行ったかを確認する。まだ未処理のデマンドが残っている場合(S412;NO)、処理がステップS406に戻る。すべてのデマンドを取り出して一連の処理を行った場合(S412;YES)、処理が終了する。
変形例2に基づくネットワーク設計装置100によれば、ノードの次数、終端されるデマンドの本数、通過するデマンドの本数が同一のノードであった場合、これらを適切に組み合わせたTDM伝送路組み合わせ候補を生成することができる。
(変形例3)
次に変形例3について説明する。変形例3は、上記の動作例、変形例1、2との共通点
を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
変形例3では、上記の動作例のノードの次数とスコアとからノードの順序リストを作成する部分が異なる。変形例3では、ノードの次数とスコアがともに等しいノードが複数あった場合に、さらに終端されるデマンドの本数によって順序がつけられる。スコアは、終端されるデマンドの本数と通過するデマンドの本数の合計である。そのため、スコアが同じであれば、終端されるデマンドが多いほど通過するデマンドは少なくなる。この場合、終端されるデマンドが多いノードほど、当該ノードを端点とするTDM伝送路が多く必要になり、さらに通過するデマンドが少ないので、そのノードで終端されるデマンドとともにそのノードに端点のあるTDM伝送路に収容される確率が高くなる。このため終端されるデマンドが多いノードほど順序をより上位に置くことで、当該ノードを端点とするTDM伝送路を含むTDM伝送路の組み合わせが生成されるようにする。
図30は、上記の動作例におけるノードの順序リスト作成の際の並べ替えの動作フローの例を示す図である。図30の動作フローは、2つのノード(ノードNa及びノードNb)について条件を比較して、順序を入れ替えるか否かを判定する動作フローである。最初の段階で、ノードNaは、ノードNbより上位のノードである。また、deg[N]はノードNの次数、score[N]はノードNのスコアである。
ステップS1001では、ノード順序リスト生成部124は、deg[Na]とdeg[Nb]とを比較する。deg[Na]がdeg[Nb]より小さい場合(S1001;YES)、処理がステップS1004に進む。deg[Na]がdeg[Nb]以上である場合(S1001;NO)、処理がステップS1002に進む。
ステップS1002では、ノード順序リスト生成部124は、deg[Na]とdeg[Nb]とが等しいか否かを判定する。deg[Na]がdeg[Nb]と等しい場合(S1002;YES)、処理がステップS1003に進む。deg[Na]がdeg[Nb]と等しくない場合(S1002;NO)、すなわち、deg[Na]がdeg[Nb]より大きい場合、ノード順序リスト生成部124は、ノードNa及びノードNbの順序を入れ替えずに処理を終了する。
ステップS1003では、ノード順序リスト生成部124は、score[Na]とscore[Nb]とを比較する。score[Na]がscore[Nb]より小さい場合(S1003;YES)、処理がステップS1004に進む。score[Na]がscore[Nb]以上である場合(S1003;NO)、ノードNa及びノードNbの順序を入れ替えずに処理が終了する。
ステップS1004では、ノード順序リスト生成部124は、ノード順序リスト生成部124は、ノードNa及びノードNbの順序を入れ替えて処理を終了する。
図31は、変形例3におけるノードの順序リスト作成の際の並べ替えの動作フローの例を示す図である。図31の動作フローは、2つのノード(ノードNa及びノードNb)について条件を比較して、順序を入れ替えるか否かを判定する動作フローである。最初の段階で、ノードNaは、ノードNbより上位のノードである。また、deg[N]はノードNの次数、score[N]はノードNのスコア、Nterm[N]はノードNで終端されるデマンドの本数である。
ステップS2001では、ノード順序リスト生成部124は、deg[Na]とdeg[Nb]とを比較する。deg[Na]がdeg[Nb]より小さい場合(S2001;YES)、処理がステップS2006に進む。deg[Na]がdeg[Nb]以上である場合(S2001;NO)、処理がステップS2002に進む。
ステップS2002では、ノード順序リスト生成部124は、deg[Na]とdeg[Nb]とが等しいか否かを判定する。deg[Na]がdeg[Nb]と等しい場合(S2002;YES)、処理がステップS2003に進む。deg[Na]がdeg[Nb]と等しくない場合(S2002;NO)、すなわち、deg[Na]がdeg[Nb]より大きい場合、ノード順序リスト生成部124は、ノードNa及びノードNbの順序を入れ替えずに処理を終了する。
ステップS2003では、ノード順序リスト生成部124は、score[Na]とscore[Nb]とを比較する。score[Na]がscore[Nb]より小さい場合(S2003;YES)、処理がステップS2006に進む。score[Na]がscore[Nb]以上である場合(S2003;NO)、処理がステップS2004に進む。
ステップS2004では、ノード順序リスト生成部124は、score[Na]とscore[Nb]とが等しいか否かを判定する。score[Na]がscore[Nb]と等しい場合(S2004;YES)、処理がステップS2005に進む。score[Na]がscore[Nb]と等しくない場合(S2004;NO)、すなわち、score [Na]がscore[Nb]より大きい場合、ノード順序リスト生成
部124は、ノードNa及びノードNbの順序を入れ替えずに処理を終了する。
ステップS2005では、ノード順序リスト生成部124は、Nterm[Na]とNterm[Nb]とを比較する。Nterm[Na]がNterm[Nb]より小さい場合(S2005;YES)、処理がステップS2006に進む。Nterm[Na]がNterm[Nb]以上である場合(S2005;NO)、ノードNa及びノードNbの順序を入れ替えずに処理が終了する。
ステップS2006では、ノード順序リスト生成部124は、ノード順序リスト生成部124は、ノードNa及びノードNbの順序を入れ替えて処理を終了する。
変形例3に基づくネットワーク設計装置100によれば、ノードの次数及び終端されるデマンドの本数と通過するデマンドの本数との合計が同一のノードでも、終端されるデマンドの本数が多いものを優先することで、より適切な組み合わせ候補を選択できる。
(変形例4)
次に変形例4について説明する。変形例4は、上記の動作例、変形例1−3との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
変形例4では、上記の動作例のノードの次数とスコアとからノードの順序リストを作成する部分が異なる。変形例4では、ノードの次数とスコアとノードで終端されるデマンドの本数が同じ場合に、さらに通過するデマンドの始点ノード及び終点ノードの組み合わせの数によって順序が決定される。極端な場合として、通過するすべてのデマンドが同一の始点ノード及び終点ノードを有する場合、通過するデマンドの始点ノードと終点ノードとの間にTDM伝送路を設定して収容する場合が最適解になる可能性が高くなる。この場合はそのノードを端点とするTDM伝送路を生成しても意味がないため、順序を下げる。例えば、あるノードを通過するデマンドとして、N1−N5のデマンドが4本、N2−N6のデマンドが8本、N1−N6のデマンドが4本あった場合、始点ノード及び終点ノード対の数は、N1−N5、N2−N6、N1−N6の3つというように数えられる。通過するデマンドの本数が同じであれば、この始点ノード及び終点ノード対の数が多いほど始点ノード及び終点ノードがともに同じデマンドの本数の平均値は低くなり、デマンドの始点ノードと終点ノードと間にTDM伝送路を設定して収容する確率は低くなる。
図32及び図33は、変形例4におけるノードの順序リスト作成の際の並べ替えの動作
フローの例を示す図である。図32の「W1」、「W2」、「W3」は、それぞれ、図33の「W1」、「W2」、「W3」と接続する。図32及び図33の動作フローは、2つのノード(ノードNa及びノードNb)について条件を比較して、順序を入れ替えるか否かを判定する動作フローである。最初の段階で、ノードNaは、ノードNbより上位のノードである。また、deg[N]はノードNの次数、score[N]はノードNのスコア、Nterm[N]はノードNで終端されるデマンドの本数、Ntp[N]はノードNを通過するデマンドの始点ノード及び終点ノード対の数である。
図32のステップS3001からステップS3004の動作は、上記の変形例3の図31のステップS2001からステップS2004の動作と同様である。
ステップS3005では、ノード順序リスト生成部124は、Nterm[Na]とNterm[Nb]とを比較する。Nterm[Na]がNterm [Nb]より小さい場合(S3005;YES)、処理がス
テップS3008に進む。Nterm [Na]がNterm [Nb]以上である場合(S3005;NO)、ノードNa及びノードNbの順序を入れ替えずに処理が終了する。
ステップS3006では、ノード順序リスト生成部124は、Nterm[Na]とNterm[Nb]とが等しいか否かを判定する。Nterm[Na]がNterm[Nb]と等しい場合(S3006;YES)、処理がステップS3007に進む。Nterm[Na]がNterm[Nb]と等しくない場合(S2006;NO)、すなわち、Nterm[Na]がNterm[Nb]より大きい場合、ノード順序リスト生成部124は、ノードNa及びノードNbの順序を入れ替えずに処理を終了する。
ステップS3007では、ノード順序リスト生成部124は、Ntp[Na]とNtp[Nb]とを比較する。Ntp[Na]がNtp[Nb]より小さい場合(S3007;YES)、処理がステップS3008に進む。Ntp[Na]がNtp[Nb]以上である場合(S3007;NO)、ノードNa及びノードNbの順序を入れ替えずに処理が終了する。
ステップS3008では、ノード順序リスト生成部124は、ノード順序リスト生成部124は、ノードNa及びノードNbの順序を入れ替えて処理を終了する。
変形例4に基づくネットワーク設計装置100によれば、ノードの次数及び終端されるデマンドの本数と通過するデマンドの本数との合計が同一のノードでも、始点ノード及び終点ノード対が多いものを優先することで、より適切な組み合わせ候補を選択できる。
(変形例5)
次に変形例5について説明する。変形例5は、上記の動作例、変形例1−4との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
変形例5では、上記の動作例のノードの次数とスコアからノードの順序リストを作成する部分が異なる。変形例5では、ノードの次数とスコアとノードで終端されるデマンドの本数が同じ場合に、さらに通過するデマンドの中で始点ノード及び終点ノードが同一のデマンドの本数の最も大きいものの値によって順序が決定される。変形例5は変形例4と同様の考え方で、通過するデマンドの中に同一の始点ノード及び終点ノードを有するデマンドが多く入っているものほど順位を下位に設定する。
図34及び図35は、変形例5におけるノードの順序リスト作成の際の並べ替えの動作フローの例を示す図である。図34の「X1」、「X2」、「X3」は、それぞれ、図35の「X1」、「X2」、「X3」と接続する。図34及び図35の動作フローは、2つのノード(ノードNa及びノードNb)について条件を比較して、順序を入れ替えるか否
かを判定する動作フローである。最初の段階で、ノードNaは、ノードNbより上位のノードである。また、deg[N]はノードNの次数、score[N]はノードNのスコア、Nterm[N]はノードNで終端されるデマンドの本数、Nmaxst[N]はノードNを通過するデマンドについ
て、始点ノード及び終点ノードがともに同じデマンドの本数の最も多いものの値である。例えば、ノードNを通過するデマンドとしてN1−N5のデマンドが4本、N2−N6のデマンドが8本、N1−N6のデマンドが4本あった場合、始点ノード及び終点ノードが同じデマンドの本数が最も多いのはN2−N6のデマンドであるため、Nmaxst[N]=8とな
る。
図34及び図35のステップS4001からステップS4006の動作は、上記の変形例4の図32及び図33のステップS3001からステップS3006の動作と同様である。
ステップS4007では、ノード順序リスト生成部124は、Nmaxst[Na]とNmaxst[Nb]とを比較する。Nmaxst[Na]がNmaxst[Nb]より大きい場合(S4007;YES)、処理がステップS4008に進む。Nmaxst[Na]がNmaxst[Nb]以下である場合(S4007;NO)、ノードNa及びノードNbの順序を入れ替えずに処理が終了する。
ステップS4008では、ノード順序リスト生成部124は、ノード順序リスト生成部124は、ノードNa及びノードNbの順序を入れ替えて処理を終了する。
変形例5に基づくネットワーク設計装置100によれば、ノードの次数及びスコアが同一のノードでも、通過するデマンドの始点ノード及び終点ノードが一致するデマンドが少ないものを優先することで、より適切なTDM伝送路の組み合わせ候補を選択できる。
(変形例6)
次に変形例6について説明する。変形例6は、上記の動作例、変形例1−5との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
変形例6では、上記の動作例のノードの次数とスコアからノードの順序リストを作成する部分が異なる。変形例6では、ノードの次数とスコアとノードで終端されるデマンドの本数が同じ場合に、さらに通過するデマンドの中で始点ノード及び終点ノードが同一のデマンドの本数の平均値によって順序が決定される。変形例6は変形例4、5と同様の考え方で、通過するデマンドの中に同一の始点ノード及び終点ノードを有するデマンドが多く入っているものほど順位を下位に設定する。
図36及び図37は、変形例6におけるノードの順序リスト作成の際の並べ替えの動作フローの例を示す図である。図36の「Y1」、「Y2」、「Y3」は、それぞれ、図37の「Y1」、「Y2」、「Y3」と接続する。図36及び図37の動作フローは、2つのノード(ノードNa及びノードNb)について条件を比較して、順序を入れ替えるか否かを判定する動作フローである。最初の段階で、ノードNaは、ノードNbより上位のノードである。また、deg[N]はノードNの次数、score[N]はノードNのスコア、Nterm[N]はノードNで終端されるデマンドの本数、Nmeanst[N]はノードNを通過するデマンドについて、始点ノード及び終点ノードがともに同じデマンドの本数の平均値である。例えば、ノードNを通過するデマンドとしてN1−N5のデマンドが4本、N2−N6のデマンドが8本、N1−N6のデマンドが4本あった場合、始点ノード及び終点ノードが同じデマンドの本数の平均値が5.3であるため、Nmaxst[N]=5.3となる。
図36及び図37のステップS5001からステップS5006の動作は、上記の変形
例4の図32及び図33のステップS3001からステップS3006の動作と同様である。
ステップS5007では、ノード順序リスト生成部124は、Nmeanst[Na]とNmeanst[Nb]とを比較する。Nmeanst[Na]がNmeanst[Nb]より大きい場合(S5007;YES)、処理がステップS4008に進む。Nmeanst[Na]がNmeanst[Nb]以下である場合(S5007;NO)、ノードNa及びノードNbの順序を入れ替えずに処理が終了する。
ステップS5008では、ノード順序リスト生成部124は、ノード順序リスト生成部124は、ノードNa及びノードNbの順序を入れ替えて処理を終了する。
変形例6に基づくネットワーク設計装置100によれば、ノードの次数及びスコアが同一のノードでも、通過するデマンドの始点ノード及び終点ノードが一致するデマンドの数の平均値が小さいものを優先することで、適切なTDM伝送路の組み合わせ候補を選択できる。
(変形例7)
次に変形例7について説明する。変形例7は、上記の動作例、変形例1−6との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
変形例7では、上記の動作例のノードの次数とスコアからノードの順序リストを作成する部分が異なる。変形例7では、ノードの次数とスコアとノードで終端されるデマンドの本数が同じ場合に、さらに通過するデマンドの中で始点ノード及び終点ノードが同一のデマンドの本数の合計値と、通過するデマンドの合計値との比によって順序が決定される。変形例6は変形例4−6と同様の考え方で、通過するデマンドの中に同一の始点ノード及び終点ノードを有するデマンドが多く入っているものほど順位を下位に設定する。
図38及び図39は、変形例7におけるノードの順序リスト作成の際の並べ替えの動作フローの例を示す図である。図38の「Z1」、「Z2」、「Z3」は、それぞれ、図39の「Z1」、「Z2」、「Z3」と接続する。図38及び図39の動作フローは、2つのノード(ノードNa及びノードNb)について条件を比較して、順序を入れ替えるか否かを判定する動作フローである。最初の段階で、ノードNaは、ノードNbより上位のノードである。また、deg[N]はノードNの次数、score[N]はノードNのスコア、Nterm[N]はノードNで終端されるデマンドの本数である。Ntotst[N]はノードNを通過するデマンド
について、始点ノード及び終点ノードがともに同じデマンドの本数の合計値である。例えば、ノードNを通過するデマンドとして、N1−N4のデマンドが1本、N1−N5のデマンドが4本、N2−N6のデマンドが1本、N1−N6のデマンドが2本あった場合、始点ノード及び終点ノードが同じデマンドの本数の合計値が6であるため、Ntotst[N]=6
となる。また、Nthru[N]はノードNを通過するデマンドの本数の合計値で、前述の例の場合はNthru[N]=8となる。そして、Ntotst[N]とNthru[N]の比はNtotst[N]/Nthru[N]であり、前述の例の場合は6/8=0.75となる。
図38及び図39のステップS6001からステップS6006の動作は、上記の変形例4の図32及び図33のステップS3001からステップS3006の動作と同様である。
ステップS6007では、ノード順序リスト生成部124は、Ntotst[Na]/Nthru[Na]
とNtotst[Nb]/Nthru[Nb]とを比較する。Ntotst[Na]/Nthru[Na]がNtotst[Nb]/Nthru[Nb]より小さい場合(S6007;YES)、処理がステップS6008に進む。Ntotst[Na
]/Nthru[Na]がNtotst[Nb]/Nthru[Nb]以上である場合(S6007;NO)、ノードN
a及びノードNbの順序を入れ替えずに処理が終了する。
ステップS6008では、ノード順序リスト生成部124は、ノード順序リスト生成部124は、ノードNa及びノードNbの順序を入れ替えて処理を終了する。
変形例7に基づくネットワーク設計装置100によれば、ノードの次数及びスコアが同一のノードでも、所定の比が大きいものを優先することで、より適切なTDM伝送路の組み合わせ候補を選択できる。
(変形例8)
次に変形例8について説明する。変形例8は、上記の動作例、変形例1−7との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
上記の動作例では、最初にネットワークの全ノードについてノードの次数及びスコアを計算していた。変形例8では、デマンド毎に始点ノード及び終点ノードを除く経路の途中のノードについてノードの次数とスコアを計算する。デマンドがネットワーク内の一部のノードしか通らない場合、すべてのノードについて次数とスコアを計算することは計算リソースを無駄に使用することになる。このため、変形例8では、デマンドが通らないノードについて計算がされないようにする。また、デマンドがネットワーク全体に存在し、デマンドの本数が多い場合、上記の動作例のように、最初にすべてのノードについて次数とスコアを計算することは効率がよい。即ち、変形例8は、ネットワークの大きさに対して、デマンドの本数が少ない場合に有効である。
図40、図41は、変形例8のTDM伝送路の組み合わせ候補の生成の動作フローの例を示す図である。図40の「D1」、「D2」は、それぞれ、図41の「D1」、「D2」と接続する。
ステップS501では、途中ノードリスト生成部126は、デマンド毎に途中ノードリストを生成する。途中ノードリスト生成部126は、デマンド情報から1つのデマンド(処理中のデマンドとする)を取り出し、当該デマンドの経路の途中のノードを取り出す。デマンドの経路の途中のノードは、当該デマンドに通過されるノードである。例えば、途中ノードリスト生成部126は、N1−N6間のデマンドに対して、当該デマンドの経路の途中のノードである、ノードN2、ノードN3、ノードN4、ノードN5を取り出す。途中ノードリスト生成部126は、取り出したノードを、途中ノードリストとして、メモリ140に格納する。途中ノードリストは、デマンド毎に生成される。
ステップS502では、ノード次数スコア計算部122は、ステップS501で生成した途中ノードリストに含まれるノードに対して、ノード毎に、終端されるデマンドの本数および通過するデマンドの本数をカウントする。ノード次数スコア計算部122は、メモリ140から、途中ノードリストに含まれるノード及びデマンド情報に含まれるデマンドを抽出する。ノード次数スコア計算部122は、途中ノードリストに含まれる各ノードについて、当該ノードで終端されるデマンドの本数、及び、当該ノードを通過するデマンドの本数を数える。終端されるデマンドの本数は、途中ノードリストに含まれる各ノードについて、図11に含まれるデマンドの始点ノード又は終点ノードに当該ノードが含まれるデマンドの本数の和を求めればよい。
ステップS503からステップS506までの動作は、図12のステップS202からステップS205までの動作と同様である。
また、ステップS507からステップS510までの動作は、図13のステップS208からステップS211までの動作と同様である。ただし、ステップS510において、まだ未処理のデマンドが残っている場合(S510;NO)、処理がステップS501に戻る。
変形例8に基づくネットワーク設計装置100によれば、各デマンドの始点ノードと終点ノードとを除く経路上の途中ノードについて、ノードの次数及びスコアを求めることで、より適切でより少ないTDM伝送路の組み合わせ候補を選択することができる。
(変形例9)
次に変形例9について説明する。変形例9は、上記の動作例、変形例1−8との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
上記の動作例では、最初にネットワークの全ノードについてノードの次数及びスコアを計算していた。変形例9では、通過するデマンドが1本以上あるノードを選び、それらについて、ノードの次数とスコアを計算し、次数とスコアによるノードの順序リストを作成する。例えば、図10のノードN1、ノードN6、ノードN7、ノードN8のような次数が1のノードを通過するデマンドは存在しないため、これらのノードは経路の途中のノードになることはない。したがって、これらのノードについては、スコアなどが計算されなくてもよい。変形例9では、これらのノードについて、スコアが計算されないようにする。
図42、図43は、変形例9のTDM伝送路の組み合わせ候補の生成の動作フローの例を示す図である。図42の「E1」は、図43の「E1」と接続する。
ステップS601では、ノード次数スコア計算部122は、ノード情報に含まれるノードについて、デマンド情報を参照して、通過するデマンドが1本以上あるノードを抽出し、通過するデマンドが1本以上あるノードのリストを作成する。
ステップS602では、ノード次数スコア計算部122は、ステップS601で生成したリストに含まれるノードに対して、ノード毎に、終端されるデマンドの本数および通過するデマンドの本数をカウントする。ノード次数スコア計算部122は、メモリ140から、ステップS601で作成したリストに含まれるノード及びデマンド情報に含まれるデマンドを抽出する。ノード次数スコア計算部122は、ステップS601で作成したリストに含まれる各ノードについて、当該ノードで終端されるデマンドの本数、及び、当該ノードを通過するデマンドの本数を数える。終端されるデマンドの本数は、ステップS601で作成したリストに含まれる各ノードについて、図11に含まれるデマンドの始点ノード又は終点ノードに当該ノードが含まれるデマンドの本数の和を求めればよい。
ステップS603からステップS612までの動作は、図12及び図13のステップS202からステップS211までの動作と同様である。
変形例9に基づくネットワーク設計装置100によれば、通過するデマンドのあるノードについてノードの次数及びスコアを求めることで、より適切でより少ないTDM伝送路の組み合わせ候補を選択することができる。
(変形例10)
次に変形例10について説明する。変形例10は、上記の動作例、変形例1−9との共
通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
上記の動作例では、最初にネットワークの全ノードについてノードの次数及びスコアを計算していた。変形例10では、通過するデマンドが1本以上あり、かつ、終端されるデマンドが一本以上あるノードが選択され、選択されたノードについてノードの次数とスコアが計算され、次数とスコアによるノードの順序リストが作成される。変形例9では終端されるデマンドが0本のノードが順序リストの最後尾に移動されるのに対し、変形例10では、終端されるデマンドが0本のノードが順序リストに入れられない。この差異によって、変形例10では、終端されるデマンドが1本もないノードはTDM伝送路の端点として選択されないようになる。
図44、図45、図46は、変形例10のTDM伝送路の組み合わせ候補の生成の動作フローの例を示す図である。図44の「F1」は、図45の「F1」と接続する。図45の「F2」、「F3」、「F4」、「F5」は、それぞれ、図46の「F2」、「F3」、「F4」、「F5」と接続する。
ステップS701では、ノード次数スコア計算部122は、ノード情報に含まれるノードについて、デマンド情報を参照して、通過するデマンドが1本以上あり、かつ、終端されるデマンドが1本以上あるノードを抽出する。ノード次数スコア計算部122は、抽出したノードによる、ノードのリストを作成する。
ステップS702では、ノード次数スコア計算部122は、ステップS701で生成したリストに含まれるノードに対して、ノード毎に、終端されるデマンドの本数および通過するデマンドの本数をカウントする。ノード次数スコア計算部122は、メモリ140から、ステップS701で作成したリストに含まれるノード及びデマンド情報に含まれるデマンドを抽出する。ノード次数スコア計算部122は、ステップS701で作成したリストに含まれる各ノードについて、当該ノードで終端されるデマンドの本数、及び、当該ノードを通過するデマンドの本数を数える。終端されるデマンドの本数は、ステップS701で作成したリストに含まれる各ノードについて、図11に含まれるデマンドの始点ノード又は終点ノードに当該ノードが含まれるデマンドの本数の和を求めればよい。
ステップS703からステップS705までの動作は、図12のステップS202からステップS204までの動作と同様である。また、ステップS706の動作は、図12のステップS206の動作と同様である。
ステップS707では、途中ノードリスト作成部126は、ステップS705で作成したノード順序リストにないノードを、途中ノードリストから削除する。
ステップS708からステップS709までの動作は、図13のステップS207からステップS208までの動作と同様である。
ステップS710では、TDM伝送路組み合わせ候補作成部128は、ステップS709で取り出したkの値が途中ノードリストのノードの数より大きいか否かを確認する。kの値が途中ノードリストのノードの数より大きい場合(S710;YES)、処理がS713に進む。kの値が途中ノードリストのノードの数より以下である場合(S710;NO)、処理がS711に進む。
ステップS711からステップS713までの動作は、図13のステップS209からステップS211までの動作と同様である。
変形例10に基づくネットワーク設計装置100によれば、通過するデマンド及び終端されるデマンドを有するノードについてノードの次数及びスコアを求めることで、より適切でより少ないTDM伝送路の組み合わせ候補を選択することができる。
(変形例11)
次に変形例11について説明する。変形例11は、上記の動作例、変形例1−10との共通点を有する。従って、主として相違点について説明し、共通点については、説明を省略する。
変形例11では、変形例10の構成に追加して、スコアの値が所定値より小さいノードが除外される。スコアは、ノードで終端されるデマンドの本数とノードを通過するデマンドの本数との合計である。よって、ノードのスコアが小さい場合、当該ノードのトラフィック量は小さい。このようなノードを通過するデマンドは、あるTDM伝送路から別のTDM伝送路に乗り換えるよりも、そのノードを通過するTDM伝送路に収容されたほうがいい場合がある。このとき、そのノードに端点のあるTDM伝送路にはそのノードで終端されるデマンドだけを入れたほうがよい場合がある。変形例11は、このような場合に、そのノードにTDM伝送路の端点がくるようなTDM伝送路の組み合わせ候補を生成しないようにするものである。
図47、図48、図49は、変形例11のTDM伝送路の組み合わせ候補の生成の動作フローの例を示す図である。図47の「G1」は、図48の「G1」と接続する。図48の「G2」、「G3」、「G4」、「G5」は、それぞれ、図49の「G2」、「G3」、「G4」、「G5」と接続する。
ステップS801からステップS803までの動作は、図44のステップS701からステップS703までの動作と同様である。
ステップS804では、ノード次数スコア計算部122は、ステップS803で計算したノードのスコアが所定値未満であるノードを、ステップS801で作成したリストから削除する。ノード次数スコア計算部122は、ステップS801で作成したリストのノードについて、ノードのスコアと所定値とを比較し、スコアが所定値未満であるノードを、リストから削除する。
ステップS805からステップS814までの動作は、図44、図45及び図46のステップS704からステップS713までの動作と同様である。
変形例11に基づくネットワーク設計装置100によれば、通過するデマンド及び終端されるデマンドを有するノードについて、スコアが所定値以上のものに対して、ノードの次数及びスコアを求めることで、より適切でより少ないTDM伝送路の組み合わせ候補を選択することができる。
(本実施形態の作用、効果)
ネットワーク設計装置100は、所定の条件に基づいて、最適解となりうる可能性が高いTDM伝送路の組み合わせ候補を選択する。
ネットワーク設計装置100は、デマンドを収容するTDM伝送路の組み合わせ候補の数が全パターンを網羅すると非常に多くなる場合でも、できるだけ解になりうるTDM伝送路の組み合わせ候補に絞ることができる。ネットワーク設計装置100は、TDM伝送路の組み合わせ候補を絞ることで、混合整数計画問題の解空間を小さくすることができ、
結果として混合整数計画問題の計算時間の短縮を図れ、また、少ないメモリ量で混合整数計画問題を計算できる。
以上の各構成は、可能な限りこれらを組み合わせて実施され得る。
100 ネットワーク設計装置
110 制御部
112 設計情報入力部
114 TDM伝送路組み合わせ候補生成部
116 TDM伝送路選択部
118 結果出力部
122 ノード次数スコア計算部
124 ノード順序リスト生成部
126 途中ノードリスト生成部
128 TDM伝送路組み合わせ候補作成部
140 メモリ
150 外部記憶装置
160 入力装置
170 出力装置

Claims (10)

  1. 複数のノードがリンクによって接続されるネットワークにおける前記複数のノード間の接続関係を示すネットワークトポロジ情報と、始点ノード、終点ノード、経路、本数を含むデマンドを示すデマンド情報とを格納する記憶部と、
    前記ネットワークトポロジ情報及び前記デマンド情報に基づいて、
    各ノードにおいて終端されるデマンドの本数と各ノードを通過するデマンドの本数との合計値を算出し、
    リンクによって接続される他のノードの数を示すノードの次数を算出し、
    前記複数のノードを、前記ノードの次数が大きいノードが上位になるように、前記ノードの次数が同じ場合には前記合計値が大きいノードが上位になるように、さらに、終端されるデマンドがないノードが下位になるように、並べる順序リストを作成し、
    各デマンドにおいて、始点ノード及び終点ノードを除く始点ノードと終点ノードとの間に通過するノードについて、前記順序リストに従って、ソートし、
    各デマンドについて、前記ソートされたノードの上位のノードから、所定数のノードを取り出し、前記始点ノード、前記終点ノード、及び、前記所定数のノードを端点とする伝送路の組み合わせ候補を生成し、
    前記伝送路の組み合わせ候補から、前記デマンドを収容する伝送路の組み合わせを決定する制御部とを、
    備えるネットワーク設計装置。
  2. 前記複数のノードのうち少なくとも1つのノードに選択不可フラグが付加されて、前記記憶部に格納され、
    前記制御部は、各デマンドについて、前記ソートされたノードの上位のノードから、0から所定数までのノードを順次取り出し、それぞれについての、前記始点ノード、前記終点ノード、及び、前記取り出したノードを端点とする伝送路の組み合わせ候補を生成し、取り出したノードに選択不可フラグが付加されている場合には、当該デマンドについての伝送路の組み合わせ候補の生成を終了する
    請求項1に記載のネットワーク設計装置。
  3. 前記制御部は、前記ノードの次数及び前記合計値が同じノードが複数存在する場合に、当該ノードの中から任意のノードの組み合わせを取り出し、当該ノードの組み合わせを含むノードを端点とする伝送路の組み合わせ候補を生成する、
    請求項1に記載のネットワーク設計装置。
  4. 前記制御部は、前記ノードの次数及び前記合計値が同じノードが複数存在する場合に、終端されるデマンドの本数が多いノードを上位のノードとする
    請求項1に記載のネットワーク設計装置。
  5. 前記制御部は、前記ノードの次数、前記合計値、前記終端されるデマンドの本数が同じノードが複数存在する場合に、通過するデマンドの始点ノード及び終点ノードの対の数が多いノードを上位のノードとする
    請求項4に記載のネットワーク設計装置。
  6. 前記制御部は、前記ノードの次数、前記合計値、前記終端されるデマンドの本数が同じノードが複数存在する場合に、通過するデマンドの始点ノード及び終点ノードの対の中で同一の対の数が多いノードを下位のノードとする
    請求項4に記載のネットワーク設計装置。
  7. 前記制御部は、前記ノードの次数、前記合計値、前記終端されるデマンドの本数が同じ
    ノードが複数存在する場合に、通過するデマンドの始点ノード及び終点ノードの対の中で同一の対の数の平均値が大きいノードを下位のノードとする
    請求項4に記載のネットワーク設計装置。
  8. 前記制御部は、前記ノードの次数、前記合計値、前記終端されるデマンドの本数が同じノードが複数存在する場合に、通過するデマンドの数に対する、通過するデマンドのうち始点ノード及び終点ノードが共に同じデマンドの数の比が小さいノードを下位のノードとする
    請求項4に記載のネットワーク設計装置。
  9. 複数のノードがリンクによって接続されるネットワークにおける前記複数のノード間の接続関係を示すネットワークトポロジ情報と、始点ノード、終点ノード、経路、本数を含むデマンドを示すデマンド情報とに基づいて、
    各ノードにおいて終端されるデマンドの本数と各ノードを通過するデマンドの本数との合計値を算出し、
    リンクによって接続される他のノードの数を示すノードの次数を算出し、
    前記複数のノードを、前記ノードの次数が大きいノードが上位になるように、前記ノードの次数が同じ場合には前記合計値が大きいノードが上位になるように、さらに、終端されるデマンドがないノードが下位になるように、並べる順序リストを作成し、
    各デマンドにおいて、始点ノード及び終点ノードを除く始点ノードと終点ノードとの間に通過するノードについて、前記順序リストに従って、ソートし、
    各デマンドについて、前記ソートされたノードの上位のノードから、所定数のノードを取り出し、前記始点ノード、前記終点ノード、及び、前記所定数のノードを端点とする伝送路の組み合わせ候補を生成し、
    前記伝送路の組み合わせ候補から、前記デマンドを収容する伝送路の組み合わせを決定する
    ネットワーク設計方法。
  10. コンピュータに、
    複数のノードがリンクによって接続されるネットワークにおける前記複数のノード間の接続関係を示すネットワークトポロジ情報と、始点ノード、終点ノード、経路、本数を含むデマンドを示すデマンド情報とに基づいて、
    各ノードにおいて終端されるデマンドの本数と各ノードを通過するデマンドの本数との合計値を算出し、
    リンクによって接続される他のノードの数を示すノードの次数を算出し、
    前記複数のノードを、前記ノードの次数が大きいノードが上位になるように、前記ノードの次数が同じ場合には前記合計値が大きいノードが上位になるように、さらに、終端されるデマンドがないノードが下位になるように、並べる順序リストを作成し、
    各デマンドにおいて、始点ノード及び終点ノードを除く始点ノードと終点ノードとの間に通過するノードについて、前記順序リストに従って、ソートし、
    各デマンドについて、前記ソートされたノードの上位のノードから、所定数のノードを取り出し、前記始点ノード、前記終点ノード、及び、前記所定数のノードを端点とする伝送路の組み合わせ候補を生成し、
    前記伝送路の組み合わせ候補から、前記デマンドを収容する伝送路の組み合わせを決定する
    ことを実行させるネットワーク設計プログラム。
JP2012224191A 2012-10-09 2012-10-09 ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム Expired - Fee Related JP5929682B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012224191A JP5929682B2 (ja) 2012-10-09 2012-10-09 ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム
US14/028,801 US9071384B2 (en) 2012-10-09 2013-09-17 Network design apparatus, network design method, and storage medium storing network design program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012224191A JP5929682B2 (ja) 2012-10-09 2012-10-09 ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム

Publications (2)

Publication Number Publication Date
JP2014078790A JP2014078790A (ja) 2014-05-01
JP5929682B2 true JP5929682B2 (ja) 2016-06-08

Family

ID=50432750

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012224191A Expired - Fee Related JP5929682B2 (ja) 2012-10-09 2012-10-09 ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム

Country Status (2)

Country Link
US (1) US9071384B2 (ja)
JP (1) JP5929682B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5929682B2 (ja) * 2012-10-09 2016-06-08 富士通株式会社 ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム
US10200123B2 (en) 2016-06-20 2019-02-05 Cable Television Laboratories, Inc. System and methods for distribution of heterogeneous wavelength multiplexed signals over optical access network
US10397672B2 (en) * 2016-06-20 2019-08-27 Cable Television Laboratories, Inc. Systems and methods for intelligent edge to edge optical system and wavelength provisioning
CN110347689A (zh) * 2019-07-12 2019-10-18 全链通有限公司 数据存储方法、设备及计算机可读存储介质
CN111798053A (zh) * 2020-07-03 2020-10-20 富盛科技股份有限公司 一种光纤路径规划方法
CN117035897B (zh) * 2023-05-26 2024-04-12 浙江大学 一种即时配送平台骑手抢单方法

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6144727A (en) * 1997-08-29 2000-11-07 Anip, Inc. Method and system for global telecommunications network management and display of market-price information
JP3665460B2 (ja) * 1997-12-05 2005-06-29 富士通株式会社 分散自律協調型の応答時間チューニングによる経路選択システム、方法、及び記録媒体
US6633544B1 (en) * 1998-06-24 2003-10-14 At&T Corp. Efficient precomputation of quality-of-service routes
US6687229B1 (en) * 1998-11-06 2004-02-03 Lucent Technologies Inc Quality of service based path selection for connection-oriented networks
JP3575381B2 (ja) * 2000-03-24 2004-10-13 日本電気株式会社 リンクステートルーティング用通信装置及びリンクステートルーティング用通信方法
US7058296B2 (en) * 2001-03-12 2006-06-06 Lucent Technologies Inc. Design method for WDM optical networks including alternate routes for fault recovery
US20030099014A1 (en) * 2001-04-26 2003-05-29 Egner Will A. System and method for optimized design of an optical network
JP3711897B2 (ja) * 2001-06-27 2005-11-02 日本電気株式会社 通信網設計装置および通信網設計方法
US7362974B2 (en) * 2001-11-30 2008-04-22 Pirelli & C. S.P.A. Method for planning or provisioning data transport networks
JP3937896B2 (ja) * 2002-04-10 2007-06-27 日本電気株式会社 Wdm網設計装置及びそれに用いるwdm網設計方法並びにそのプログラム
JP2003318825A (ja) * 2002-04-19 2003-11-07 Fujitsu Ltd 光アッド・ドロップ多重機能を有する光通信システムにおける分散補償方法
US7606494B1 (en) * 2002-06-04 2009-10-20 Broadwing Corporation Optical transmission systems, devices, and methods
JP4396859B2 (ja) * 2004-01-09 2010-01-13 日本電気株式会社 負荷分散方法、ノード及び制御プログラム
US7609626B2 (en) * 2004-04-16 2009-10-27 Alcatel-Lucent Usa Inc. Nodes for managing congestion and traffic flow by considering the minimization of link utilization values
US20050237950A1 (en) * 2004-04-26 2005-10-27 Board Of Regents, The University Of Texas System System, method and apparatus for dynamic path protection in networks
JP4309316B2 (ja) * 2004-07-06 2009-08-05 株式会社東芝 ルーティング方法および伝送システム
JP4492606B2 (ja) * 2006-12-18 2010-06-30 沖電気工業株式会社 パス設定システム、パス設定方法、パス設定プログラム及びネットワーク構造構築システム
JP4621228B2 (ja) * 2007-05-31 2011-01-26 日本電信電話株式会社 マルチレイヤネットワークにおける経路探索方法及び装置及びプログラム
US7852750B2 (en) * 2007-09-04 2010-12-14 Grover Wayne D Self-fault isolation in transparent P-cycle networks
US8213793B2 (en) * 2007-09-28 2012-07-03 Verizon Patent And Licensing Inc. Wavelength assignment optimization
JP5251481B2 (ja) * 2008-12-17 2013-07-31 富士通株式会社 ネットワーク設計方法およびネットワーク設計装置
JP2011077618A (ja) * 2009-09-29 2011-04-14 Kddi Corp マルチキャスト木監視装置、マルチキャスト木監視方法およびコンピュータプログラム
JP5929682B2 (ja) * 2012-10-09 2016-06-08 富士通株式会社 ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム

Also Published As

Publication number Publication date
US9071384B2 (en) 2015-06-30
JP2014078790A (ja) 2014-05-01
US20140099112A1 (en) 2014-04-10

Similar Documents

Publication Publication Date Title
JP5929682B2 (ja) ネットワーク設計装置、ネットワーク設計方法、ネットワーク設計プログラム
CN104272620B (zh) 用于路由和频谱指配的方法
US7751345B2 (en) Optical network design method and storage medium for storing design program
RU2678167C2 (ru) Требования к сетевым ресурсам для трафика через многокаскадную коммутационную сеть
Leesutthipornchai et al. Solving multi-objective routing and wavelength assignment in WDM network using hybrid evolutionary computation approach
JP6419154B2 (ja) 光ネットワーク
JP4492606B2 (ja) パス設定システム、パス設定方法、パス設定プログラム及びネットワーク構造構築システム
US9609401B2 (en) Optical switch, optical transmission device, and optical switching method
CN111654351B (zh) 绿色再生能量有效网络
US20150071294A1 (en) Apparatus and method for designing a communication network preventing occurrence of multiple failures
Jara et al. A topology-based spectrum assignment solution for static elastic optical networks with ring topologies
JP2009010679A (ja) 光送信装置および光伝送システム
US20150071635A1 (en) Apparatus and method for effective design of a communication network enabling large-capacity transmission
Assis et al. Virtualization of elastic optical networks and regenerators with traffic grooming
JP5312553B2 (ja) 光分岐挿入多重化装置
US9160474B2 (en) Method and apparatus for designing network
CN107919904B (zh) 带保护业务路径管理方法、装置
JP5898112B2 (ja) ネットワーク設計装置およびネットワーク設計プログラム
JP6435732B2 (ja) ネットワーク設計装置、パス設計方法および伝送システム
Wang et al. Scalable traffic grooming in optical networks
Kurt et al. The optimization of the bandpass lengths in the multi-bandpass problem
JP6342823B2 (ja) ネットワーク管理装置及びネットワーク管理方法
Smutnicki et al. p-cycle based multicast protection—A new ILP formulation
Oleksii et al. Software modelling complex of network operating parameters with variable input data
Mrad et al. Adaptive-cost Shortest Path Based Heuristic for Space Division Multiplexing Networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150604

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160325

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160405

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160418

R150 Certificate of patent or registration of utility model

Ref document number: 5929682

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees