JP5595342B2 - Multiple path search method and apparatus - Google Patents
Multiple path search method and apparatus Download PDFInfo
- Publication number
- JP5595342B2 JP5595342B2 JP2011140852A JP2011140852A JP5595342B2 JP 5595342 B2 JP5595342 B2 JP 5595342B2 JP 2011140852 A JP2011140852 A JP 2011140852A JP 2011140852 A JP2011140852 A JP 2011140852A JP 5595342 B2 JP5595342 B2 JP 5595342B2
- Authority
- JP
- Japan
- Prior art keywords
- route
- path
- route candidate
- candidate
- cost
- 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
Links
Images
Description
本発明は、複数経路探索方法及び装置に係り、特に、ルータ/ルーティングサーバ等で起点と終点の間に複数のパスを設定し、負荷分散/故障回避をする、または、Video On Demand (VOD)サービス等で、ストリームサーバから複数のエッジルータまでの帯域を確保したマルチパスを設定するための複数経路探索方法及び装置に関する。 The present invention relates to a multi-path search method and apparatus, and in particular, sets a plurality of paths between a start point and an end point in a router / routing server or the like to perform load distribution / failure avoidance, or Video On Demand (VOD). The present invention relates to a multipath search method and apparatus for setting a multipath that secures a band from a stream server to a plurality of edge routers in a service or the like.
既存の技術を図1を用いて説明する。既存の技術は、所望の1つの始点ノードと1つの終端ノードの間にk本の経路を経路コストが低いものから順に生成するk shortest pathアルゴリズムがある(例えば、非特許文献1参照)。ここでの経路コストとは、経路を構成するすべてのリンクコストの合計である。 The existing technology will be described with reference to FIG. An existing technique is a k shortest path algorithm that generates k paths in order from the lowest path cost between one desired start node and one end node (for example, see Non-Patent Document 1). The route cost here is the total of all link costs constituting the route.
ステップ1)ノードの選択を行う(アルゴリズムの最初では、始点ノード、その後は直前のステップ4で選択された経路候補の終端ノードとなる)。 Step 1) A node is selected (at the beginning of the algorithm, the starting point node, and then the end node of the route candidate selected in the immediately preceding step 4).
ステップ2)ステップ1で選択されたノードからのリンクを選択する。このとき、複数のリンクを選択してもよい。
Step 2) Select a link from the node selected in
ステップ3)ステップ2で選択された各リンクを直前のステップ4で選択された経路候補の後尾につなげることにより、新たな経路候補を作成し、その経路候補の終端ノードに対応する経路候補リストに加える。その際に、同一経路上に同じノードが複数あるループ経路は経路候補とならない。
Step 3) A new route candidate is created by connecting each link selected in
ステップ4)ネットワーク上のすべての経路候補の中で最も経路コストが小さいものを選択し、その経路候補を含む経路候補リストから削除する。 Step 4) Select the route candidate having the lowest route cost among all route candidates on the network, and delete it from the route candidate list including the route candidate.
ステップ5) 選択された経路候補の終端ノードが所望の終端ノードかどうかを判断し、もし所望の終端ノードではない場合はステップ1の処理を行う。もし所望の終端ノードの場合はステップ6に移行する。
Step 5) It is determined whether or not the terminal node of the selected route candidate is a desired terminal node. If it is not the desired terminal node, the process of
ステップ6)経路リストにその経路候補を追加する。 Step 6) The route candidate is added to the route list.
ステップ7)経路リストに経路がk本あるかどうか判断し、k本存在する場合はアルゴリズムの終了となる。k本未満の場合はステップ4の処理を行う。
Step 7) It is determined whether or not there are k routes in the route list. If k routes exist, the algorithm ends. If it is less than k,
既存のk shortest path アルゴリズムは、始点ノード数、終端ノード数共に1であり、もし複数の終端ノードまでのk 本の経路を求める場合は、終端ノード数回のk shortest pathアルゴリズム走行が必要となる。この場合、処理時間が大きくなる課題がある。
また、k shortest pathアルゴリズムは経路コストが小さい経路から順番にk 本の経路を算出するが、これらの経路がトラフィック分散の観点で最適ではない場合がある。つまり、複数の経路が同一のリンクを使う可能性が高く、そのリンクの利用帯域が大きくなり、結果的にボトルネックとなるリンクを作成してしまう課題がある。
The existing k shortest path algorithm has both the number of start nodes and the number of end nodes, and if k paths to multiple end nodes are to be found, the k shortest path algorithm must be run for the number of end nodes. . In this case, there is a problem that the processing time is increased.
The k shortest path algorithm calculates k routes in order from the route with the lowest route cost, but these routes may not be optimal from the viewpoint of traffic distribution. In other words, there is a high possibility that a plurality of routes use the same link, and the use bandwidth of the link becomes large, resulting in a problem of creating a link that becomes a bottleneck.
本発明は、上記の点に鑑みなされたもので、複数の経路探索処理時間を短縮でき、k shortest pathアルゴリズムの結果として多く見られる複数経路による始点ノードからの経由数が小さい少数の固定リンクの過剰利用を避けることが可能な複数経路探索方法及び装置を提供することを目的とする。 The present invention has been made in view of the above points, and can reduce a plurality of route search processing times, and a small number of fixed links with a small number of vias from a start node by a plurality of routes often seen as a result of a k shortest path algorithm. An object of the present invention is to provide a multi-path search method and apparatus capable of avoiding excessive use.
上記の課題を解決するため、本発明(請求項1)は、コストが付与されたリンクによって複数のノードが互いに接続されて形成されるネットワーク上で、所望の始点ノードから所望の終端ノード(複数可)に至るまでの経路を複数本探索する複数経路探索方法であって、
経路候補作成手段が、前記始点ノードから接続可能な全てのリンクを選択して経路候補を作成し、記憶手段の、各リンクの終端ノードあるいは終端点に対応する経路候補リスト内に格納する第1の経路候補作成ステップと、
経路候補リスト制御手段が、前記記憶手段内のすべての経路候補リストの中で、経路コストが最小となる1本の経路候補を検索し、該経路候補リストから削除し、該経路候補の終端ノードが所望の終端ノードの場合は、当該終端ノードに対応する経路リスト内に当該経路候補を格納する最小コスト経路削除ステップと、
前記経路候補リスト制御手段が、前記検索された経路候補の終端ノードから接続可能な全てのリンクを更に選択し、当該経路候補に選択された各リンクを加えた新たな経路候補を作成し、各リンクの終端ノードあるいは終端点に対応する経路候補リスト内に格納する第2の経路候補作成ステップと、
必要数判定手段が、所望のすべての終端ノードに対応する経路リストに必要数の経路候補が格納されるまで、前記第1の経路候補作成ステップから前記第2の経路候補作成ステップの処理を続ける繰り返しステップと、
を行う。
In order to solve the above-described problem, the present invention (Claim 1) is configured such that a plurality of nodes are connected to each other by a link to which a cost is given, and a desired end node (a plurality of end nodes) is formed from a desired start point node. A multi-route search method that searches for a plurality of routes up to
A route candidate creation unit creates a route candidate by selecting all links connectable from the start point node, and stores it in a route candidate list corresponding to the end node or end point of each link in the storage unit. Route candidate creation step,
The route candidate list control means searches for one route candidate having the lowest route cost among all the route candidate lists in the storage means, deletes it from the route candidate list , and terminates the route candidate end node. Is a desired end node, a minimum cost route deletion step of storing the route candidate in a route list corresponding to the end node ; and
The route candidate list control means further selects all links connectable from the end nodes of the searched route candidates, creates new route candidates by adding the selected links to the route candidates, A second route candidate creation step of storing in a route candidate list corresponding to the end node or the end point of the link;
The necessary number determination means continues the processing from the first route candidate creation step to the second route candidate creation step until the necessary number of route candidates are stored in the route list corresponding to all desired terminal nodes. Repeating steps,
The intends line.
また、本発明(請求項2)は、請求項2において、前記記憶手段に、各経路候補リストで、すでに最小経路として削除された経路候補数も含めた経路候補数上限を設定し、
前記第1の経路候補作成ステップ及び前記第2の経路候補作成ステップにおいて、
前記経路候補数上限を超えない範囲で、経路候補リスト内に経路候補を格納する経路候補格納判定ステップを含む。
Further, the present invention (Claim 2) sets, in
In the first route candidate creation step and the second route candidate creation step,
A route candidate storage determining step of storing route candidates in the route candidate list within a range not exceeding the upper limit of the number of route candidates.
また、本発明(請求項3)は、請求項2の前記経路候補格納判定ステップにおいて、
新経路候補を、当該経路候補リストの終端ノード/リンク終端点に対応する経路候補リストに格納するかどうかを決定する際に、当該経路候補リスト内で最小経路として削除された経路候補数が当該経路候補リストの経路候補数上限値に達している場合は、当該新経路候補を当該経路候補リストに格納しない。
Further, the present invention (Claim 3), in the route candidate storage determining step of
When determining whether to store the new route candidate in the route candidate list corresponding to the terminal node / link terminal point of the route candidate list, the number of route candidates deleted as the minimum route in the route candidate list When the upper limit value of the number of route candidates in the route candidate list is reached, the new route candidate is not stored in the route candidate list.
また、本発明(請求項4)は、請求項3の前記経路候補格納判定ステップにおいて、
新経路候補を、当該経路候補リストの終端ノード/リンク終端点に対応する経路候補リストに格納するかどうかを決定する際に、(1)当該経路候補リスト内で最小経路として削除された経路候補数が当該経路候補リストの経路候補数上限値に達しておらず、且(2)当該経路候補リストで最小経路として削除された経路候補数と経路候補リスト内の経路候補数の合計が経路候補数上限と等しい場合は、当該新経路候補の経路コストが当該経路候補リスト中で最大経路コストを持つ経路候補と比較し、その最大経路コストより新経路候補の経路コストが小さい場合は、最大経路コストを持つ経路候補を当該経路候補リストから削除し、新たに新経路候補を当該経路候補リストに格納する。
Further, the present invention (Claim 4) is the route candidate storage determining step according to
When determining whether to store a new route candidate in the route candidate list corresponding to the terminal node / link terminal point of the route candidate list, (1) the route candidate deleted as the minimum route in the route candidate list The number of route candidates in the route candidate list does not reach the upper limit value of the route candidate list, and (2) the sum of the number of route candidates deleted as the minimum route in the route candidate list and the number of route candidates in the route candidate list If the route cost of the new route candidate is smaller than the maximum route cost, the route cost of the new route candidate is compared with the route candidate having the maximum route cost in the route candidate list. A route candidate having a cost is deleted from the route candidate list, and a new route candidate is newly stored in the route candidate list.
また、本発明(請求項5)は、請求項1の前記最小コスト経路削除ステップにおいて、
経路候補の経路コストを、経路を構成するリンクのコストの総計とするのではなく、前記始点ノードからの経由するリンク数が大きい経路は経路コストが大きくなるようにリンクコストに比重をつける第1の経路コスト調整ステップを含む。
また、本発明(請求項6)は、請求項4の前記経路候補格納判定ステップにおいて、
経路候補の経路コストを、経路を構成するリンクのコストの総計とするのではなく、前記始点ノードからの経由するリンク数が大きい経路は経路コストが大きくなるようにリンクコストに比重をつける第2の経路コスト調整ステップを含む。
Further, the present invention (Claim 5), Oite before SL minimum cost path deletion steps of
The route cost of the route candidate is not the sum of the costs of the links constituting the route, but a route with a large number of links from the start node is given a higher weight on the link cost so as to increase the route cost . including path cost adjustment steps.
Further, the present invention (Claim 6) is the route candidate storage determining step according to
The route cost of the route candidate is not the sum of the costs of the links constituting the route, but the route cost is increased so that the route cost is increased so that the route cost of the route having a large number of links from the start node increases. Route cost adjustment step.
また、本発明(請求項7)は、請求項5の前記第1の経路コスト調整ステップにおいて、
すべての経路候補リストの中で最小経路コストを持つ経路候補をpath(s, u)とし、その終端ノードからのリンクをE(u, v)とし、その経路候補とリンクを繋げて新しくできた経路候補をpath(s,v)とした場合、該path(s,v)の経路コスト|path(s,v)|を、
|path(s, v)| = |path(s, u)|+|E(u, v)| + β|hop(path(s, v))|
と定義する(ここで|E(u, v)|はリンクコスト、|hop(path(s, v))|はpath(s, v)が経由するリンク数、βは正数)。
また、本発明(請求項8)は、請求項6の前記第2の経路コスト調整ステップにおいて、
すべての経路候補リストの中で最小経路コストを持つ経路候補をpath(s, u)とし、その終端ノードからのリンクをE(u, v)とし、その経路候補とリンクを繋げて新しくできた経路候補をpath(s,v)とした場合、該path(s,v)の経路コスト|path(s,v)|を、
|path(s, v)| = |path(s, u)|+|E(u, v)| + β|hop(path(s, v))|
と定義する(ここで|E(u, v)|はリンクコスト、|hop(path(s, v))|はpath(s, v)が経由するリンク数、βは正数)。
Further, the present invention (invention 7 ) is characterized in that in the first route cost adjustment step of
The path candidate with the minimum path cost in all the path candidate lists is set to path (s, u), the link from the end node is set to E (u, v), and the path candidate and the link are newly connected. If the path candidate is path (s, v), the path cost of the path (s, v) | path (s, v) |
| path (s, v) | = | path (s, u) | + | E (u, v) | + β | hop (path (s, v)) |
Where | E (u, v) | is the link cost, | hop (path (s, v)) | is the number of links through which path (s, v) passes, and β is a positive number.
The present invention (Claim 8) is characterized in that, in the second route cost adjustment step of Claim 6,
The path candidate with the minimum path cost in all the path candidate lists is set to path (s, u), the link from the end node is set to E (u, v), and the path candidate and the link are newly connected. If the path candidate is path (s, v), the path cost of the path (s, v) | path (s, v) |
| path (s, v) | = | path (s, u) | + | E (u, v) | + β | hop (path (s, v)) |
Where | E (u, v) | is the link cost, | hop (path (s, v)) | is the number of links through which path (s, v) passes, and β is a positive number.
本発明(請求項9)は、コストが付与されたリンクによって複数のノードが互いに接続されて形成されるネットワーク上で、所望の始点ノードから所望の終端ノード(複数可)に至るまでの経路を複数本探索する複数経路探索装置であって、
経路候補リストを格納する記憶手段と、
前記始点ノードから接続可能な全てのリンクを選択して経路候補を作成し、前記記憶手段の各リンクの終端ノードあるいは終端点に対応する経路候補リスト内に格納する第1の経路候補作成手段と、
前記記憶手段のすべての経路候補リストの中で、経路コストが最小となる1本の経路候補を検索し、該経路候補リストから削除し、該経路候補の終端ノードが所望の終端ノードの場合は、当該終端ノードに対応する経路リスト内に当該経路候補を格納する最小コスト経路削除手段と、
前記検索された経路候補の終端ノードから接続可能な全てのリンクを更に選択し、当該経路候補に選択された各リンクを加えた新たな経路候補を作成し、各リンクの終端ノードあるいは終端点に対応する経路候補リスト内に格納する第2の経路候補作成手段と、
必要数判定手段が、所望のすべての終端ノードに対応する経路リストに必要数の経路候補が格納されるまで前記第1の経路候補作成手段、前記最小コスト経路削除手段、前記第2の経路候補作成手段の各処理を繰り返す必要数判定手段と、
を有する。
The present invention (Claim 9 ) provides a route from a desired start point node to a desired end node (s) on a network formed by connecting a plurality of nodes to each other by links to which costs are given. A multi-path search device for searching a plurality of lines,
Storage means for storing a route candidate list;
First route candidate creation means for selecting all links connectable from the start point node to create route candidates and storing them in a route candidate list corresponding to the end node or end point of each link of the storage means; ,
If all the route candidate lists in the storage means search for one route candidate with the lowest route cost, delete it from the route candidate list, and if the end node of the route candidate is the desired end node A minimum cost route deleting means for storing the route candidate in the route list corresponding to the terminal node;
Further select all the links that can be connected from the end nodes of the searched route candidates, create new route candidates by adding the selected links to the route candidates, and set them as the end node or end point of each link. Second route candidate creation means for storing in a corresponding route candidate list;
The first route candidate creating unit, the minimum cost route deleting unit, and the second route candidate until the necessary number determining unit stores the necessary number of route candidates in the route list corresponding to all desired end nodes. A necessary number determining means for repeating each process of the creating means;
Have
本発明(請求項10)は、コンピュータを、請求項9に記載の複数経路探索装置の各手段として機能させるための複数経路探索プログラムである。
The present invention (Claim 10 ) is a multi-path search program for causing a computer to function as each means of the multi-path search apparatus according to claim 9 .
上記のように、本発明は、ネットワーク上の全ての経路候補リストの中で、経路コストが最小となる1本の経路候補を検索し、当該経路候補の終端ノードが所望の終端ノードの場合は、当該終端ノードに対応する経路リスト内に当該経路候補を格納し、所望の終端ノードに対応する経路リストに必要数の経路候補が格納されるまで上記の処理を繰り返すことにより、k shortest pathアルゴリズムを終端ノード数回実行する必要がなく、処理時間を短縮することが可能となる。 As described above, the present invention searches for one route candidate having the smallest route cost among all route candidate lists on the network, and if the terminal node of the route candidate is a desired terminal node, The k shortest path algorithm is stored by storing the route candidate in the route list corresponding to the terminal node and repeating the above processing until the required number of route candidates are stored in the route list corresponding to the desired terminal node. Does not need to be executed several times at the terminal node, and the processing time can be shortened.
以下図面と共に、本発明の実施の形態を説明する。 Embodiments of the present invention will be described below with reference to the drawings.
まず、本発明の概要を説明する。 First, the outline of the present invention will be described.
図2は、本発明で作成する始点ノードと終端ノードの複数経路探索方法のネットワークへの適用例を示す。同図では、複数経路探索装置としてPCE(パスコンピューテーションエレメント)を用いる例である。 FIG. 2 shows an application example of the multipath search method of the start node and end node created in the present invention to the network. In the figure, a PCE (path computation element) is used as a multi-path search device.
複数経路をPCE(パスコンピューテーションエレメント)1で作成する場合に、同図では、ノード2から7の間で、始点ノード2と終端ノード7の間に複数経路を作成することを想定しているが、終端ノード数は複数でもよい。この例では、PCE1で始点ノード2と終端ノード7の間に4本の経路を決定した後で、その経路を各ネットワーク上ノードのスイッチングテーブルに設定することを想定している。
In the case where a plurality of paths are created by a PCE (path computation element) 1, in the figure, it is assumed that a plurality of paths are created between the
図3は、10ノードを保持するネットワーク上で、PCE1内で保持する始点ノード11から3つの終端ノード12、15、18に対して複数経路を求める際のPCE内のデータメモリの構造を示す。なお、PCE内で保持するノード11−20、リンクL1−L14は実ネットワークに存在するノード、リンクではないが、実ネットワークの構成/情報をそのまま保持しており、各リンクL1−L14はその方向に応じて2つの異なるリンクコストを持つ。
FIG. 3 shows the structure of the data memory in the PCE when a plurality of paths are obtained from the
始点ノード以外の各ノードに対応して保持されている経路候補リスト121−201は、始点ノードから当該ノードまでの経路候補を経路コスト順に2分探索木でソーティングして保持している。経路候補は21に示されるように、始点ノードから経路候補の終端ノードまでのノード順列を保持する。また、各経路候補リスト中で最小の経路コストを持つ経路候補は、フィボナッチヒープ(文献「M.L. Fredman and R.E. Tarjan, "Fibonacci heaps and their uses in improved network optimization algorithms," Journal of the ACM (JACM), vol. 34, no. 3, pp. 596-615, 1987」参照)の各ノード22にリンクされ、このフィボナッチヒープでの最小ノードがすべての経路候補リスト内での最小経路コストを持つ経路候補となる。 The route candidate list 121-201 held corresponding to each node other than the start point node holds the route candidates from the start point node to the node sorted by a binary search tree in the order of route cost. As indicated by 21, the route candidate holds a node permutation from the start node to the end node of the route candidate. In addition, the route candidate with the smallest route cost in each route candidate list is Fibonacci heap ("ML Fredman and RE Tarjan," Fibonacci heaps and their uses in improved network optimization algorithms, "Journal of the ACM (JACM), vol. 34, no. 3, pp. 596-615, 1987)), and the smallest node in this Fibonacci heap is a route candidate having the smallest route cost in all route candidate lists. Become.
PCE1内で保持する3つのマルチパス終端ノード12,15,18は、それぞれ経路リスト122、152、182を保持し、その経路リストの中に、対応する経路候補リスト121、151,181から選択された、すべての経路候補リストの中で最小経路コストを持つ経路候補が順番に格納されていく。
The three
なお、図3では各ノードに対応させて経路候補リストを保持しているが、図4のように、経路候補リストをリンクの終端点毎に保持することも可能である。図4においては、図3におけるノード14においてリンク終端点毎に経路候補リストを保持する例を示している。ノード14には3つのリンク終端点が存在するので、各終端点に応じて142、143,144の3つの経路候補リストが対応している。
In FIG. 3, the route candidate list is held corresponding to each node. However, as shown in FIG. 4, the route candidate list can be held for each end point of the link. FIG. 4 shows an example in which a route candidate list is held for each link termination point in the
図5は、本発明の第1の実施の形態における装置構成を示す。 FIG. 5 shows an apparatus configuration according to the first embodiment of the present invention.
同図に示す複数経路探索装置は、ノード選択部10、リンク選択部20、経路候補作成部30、経路リスト制御部40から構成される。
The multi-route search apparatus shown in FIG. 1 includes a
以下に、上記の構成における動作を図6のフローに沿って説明する。 The operation in the above configuration will be described below along the flow of FIG.
ステップ201)ノード選択部10は、ノード情報が入力されると、ノードの選択を行う。このとき、最初は始点ノードが選択され、以降は、ステップ204で選択された経路候補の終端ノードとなる。
Step 201) When node information is input, the
ステップ202) リンク選択部20は、ステップ201で選択されたノードから出ているすべてのリンクを選択する。
Step 202) The
ステップ203) 経路候補作成部30は、ステップ202で選択された各リンクを直前のステップ204で選択した経路候補の後尾につなげた新しい経路候補を作成し、経路リスト制御部40に出力する。経路リスト制御部40は、始点ノードから上記で選択されたリンクの終端を持つノードまでの経路(ノード順列)を、終端ノード/最終リンク終端点に対応する経路リスト記憶部50の経路候補リストに追加する。この際、経路候補上に同じノードを2回通るような経路候補は対象から外す。なお、予め経路候補数上限が設定されている場合は、その上限数以下の経路候補数を維持する(当該処理については、図7にて詳述する)。
Step 203) The route
なお、新規経路候補の経路コストは、直前のステップ204で選択された経路候補の経路コストに追加されるリンクコストを追加した形になるが、経路が経由するリンク数が多い場合は経路コストが大きくなるように比重をつけることも可能であり、その一例として、新経路候補の経路コスト|path(s, v)|を
|path(s, v)| = |path(s, u)|+|E(u, v)| + β|hop(path(s, v))|
と定義することも可能である。ここで、βを正数とするとリンク数に応じて比重が設定されるが、βを0に設定すると従来手法の経路コストと同じとなる。当該処理を行うことで、始点ノードからの経由数が小さいリンクのコストが、経由数が大きいリンクのコストに比較して小さくなり、結果として経由数が小さいリンクが均等に複数の経路を探索する際に選択されることになる。このため、k shortest pathアルゴリズムの結果として多く見られる複数経路による固定リンクの過剰利用が避けられる。
Incidentally, the path cost of the new path candidates is made in the form of adding the link cost that is added to the path cost of the route candidate selected in
| path (s, v) | = | path (s, u) | + | E (u, v) | + β | hop (path (s, v)) |
It is also possible to define Here, when β is a positive number, the specific gravity is set according to the number of links, but when β is set to 0, the path cost of the conventional method is the same. By performing this processing, the cost of a link with a small number of vias from the start node is lower than the cost of a link with a large number of vias, and as a result, a link with a small number of vias searches for multiple routes equally. Will be selected. This avoids excessive use of fixed links by multiple paths that are often seen as a result of the k shortest path algorithm.
ステップ204)経路リスト制御部40は、図3のフィボナッチヒープ22を用いてすべての経路候補リストの中で最小の経路候補を選択し、その経路候補を取り出し、当該の経路候補リストから削除する。
Step 204) The route
ステップ205)ステップ204で選択した経路候補の終端ノードが所望の終端ノードであるかどうかを判断し、所望の終端ノードである場合は、ステップ206に移行し、そうでない場合はステップ201に移行する。 Step 205) It is determined whether or not the terminal node of the route candidate selected in Step 204 is a desired terminal node. If it is a desired terminal node, the process proceeds to Step 206. If not, the process proceeds to Step 201. .
ステップ206) 経路リスト制御部40は、当該経路候補を経路リスト記憶部50の当該終端ノードに対応する経路リストに格納する。
Step 206) The route
ステップ207) 経路リスト制御部40は、すべての所望の終端ノードに対応する経路リストに所望数の経路が格納されたかどうかを判断し、すべて格納された場合には処理を終了し、まだ格納されきれていない場合は、ステップ201に戻る。
Step 207) The route
[第2の実施の形態]
本実施の形態では、経路候補数の管理方法について説明する。
[Second Embodiment]
In the present embodiment, a method for managing the number of route candidates will be described.
図7は、本発明の第2の実施の形態における経路候補リストのデータ構造と新規経路候補受付判断を説明するための図である。 FIG. 7 is a diagram for explaining the data structure of the route candidate list and the new route candidate acceptance determination in the second embodiment of the present invention.
本実施の形態では、経路候補リスト記憶部50内に、経路候補条件管理メモリ41、最小経路として削除された経路候補数管理メモリ42、最小経路として削除された経路候補数を含めた経路候補数管理メモリ43を有する。
In the present embodiment, in the route candidate
経路候補数上限管理メモリ41は、すでに削除された経路候補数を含めた当該経路候補リスト中の経路候補数の上限を管理する。ここではその上限値をAとする。
The route candidate number upper
最小経路として削除された経路候補数管理メモリ42は、当該経路候補リストで最小経路として削除された経路数を管理する。ここではその値をBとする。 The route candidate number management memory 42 deleted as the minimum route manages the number of routes deleted as the minimum route in the route candidate list. Here, the value is B.
最小経路として削除された経路候補数を含めた経路候補数管理メモリ43は、すでに最小経路として削除された経路候補数を含めた当該経路候補リスト中の経路候補数を管理する。ここではその値をCとする。 The route candidate number management memory 43 including the number of route candidates deleted as the minimum route manages the number of route candidates in the route candidate list including the number of route candidates already deleted as the minimum route. Here, the value is C.
同図の経路候補リストに示す、経路候補リスト内で最小の経路コストを持つ経路候補44は、フィボナッチヒープ22のノードにリンクしている。経路候補45は経路候補リスト内で最大の経路コストを持つ経路候補である。
The route candidate 44 having the smallest route cost in the route candidate list shown in the route candidate list in FIG. 6 is linked to the node of the
上記の各管理メモリでそれぞれ保持される値、A,B,Cについて、経路リスト制御部40は、以下のような制御を行うものとする。
It is assumed that the route
(1)C<Aの場合は、経路候補数上限まで経路候補が当該経路候補リストに格納されていないので、当該経路候補リストにステップ203で生成された新経路候補を格納する。
(1) In the case of C <A, since the route candidates are not stored in the route candidate list up to the upper limit of the number of route candidates, the new route candidates generated in
(2)B=Aの場合は経路候補リストに経路候補を格納しない。 (2) When B = A, route candidates are not stored in the route candidate list.
(3)C=A∧B≠Aの場合は、当該新規経路候補46を経路候補45の経路コストと比較し、当該新規経路候補の経路コストが経路候補45の経路コストより小さいときのみ、経路候補45を経路候補リストから削除した後に、新規経路候補46を経路候補リストに格納する。 (3) When C = A∧B ≠ A, the new route candidate 46 is compared with the route cost of the route candidate 45, and only when the route cost of the new route candidate is smaller than the route cost of the route candidate 45, After the candidate 45 is deleted from the route candidate list, the new route candidate 46 is stored in the route candidate list.
上記のような制御を行うことにより、図6に示す処理において、扱う経路候補数を制限することが可能になり、さらなる処理時間の短縮が可能になる。また、各ノード、リンクの終端点に対応する経路候補リストの経路候補数上限の設定ができるので、より容量の大きいノード、リンクには高い上限値を設ける等の調整が可能となる。 By performing the control as described above, it is possible to limit the number of route candidates to be handled in the processing shown in FIG. 6, and further shorten the processing time. In addition, since the upper limit of the number of route candidates in the route candidate list corresponding to each node and link termination point can be set, adjustments such as setting a higher upper limit value for nodes and links with larger capacities are possible.
なお、上記の図5に示す複数経路探索装置の構成要素の動作をプログラムとして構築し、当該装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。 Note that it is possible to construct the operation of the constituent elements of the multi-path search device shown in FIG. 5 as a program and install it on a computer used as the device to execute it, or distribute it via a network. .
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。 The present invention is not limited to the above-described embodiments, and various modifications and applications are possible within the scope of the claims.
1 複数経路探索装置(PCE:パスコンピューテーションエレメント)
2 始点ノード
3〜6 ノード
7,12,15,18 マルチパス終端ノード
10 ノード選択部
11 始点ノード
13,14,16,17,19,20 ネットワークノード
20 リンク選択部
21 経路候補
22 フィボナッチヒープ
30 経路候補作成部
40 経路リスト制御部
41 経路候補数上限管理メモリ
42 最小経路として削除された経路候補数管理メモリ
43 最小経路として削除された経路候補数を含めた経路候補数管理メモリ
50 経路リスト記憶部
122,152,182 経路リスト
121,131,141,151,161,171,181,191,201 経路候補リスト
1 Multi-path search device (PCE: Path computing element)
2 Start
Claims (10)
経路候補作成手段が、前記始点ノードから接続可能な全てのリンクを選択して経路候補を作成し、記憶手段の、各リンクの終端ノードあるいは終端点に対応する経路候補リスト内に格納する第1の経路候補作成ステップと、
経路候補リスト制御手段が、前記記憶手段内のすべての経路候補リストの中で、経路コストが最小となる1本の経路候補を検索し、該経路候補リストから削除し、該経路候補の終端ノードが所望の終端ノードの場合は、当該終端ノードに対応する経路リスト内に当該経路候補を格納する最小コスト経路削除ステップと、
前記経路候補リスト制御手段が、前記検索された経路候補の終端ノードから接続可能な全てのリンクを更に選択し、当該経路候補に選択された各リンクを加えた新たな経路候補を作成し、各リンクの終端ノードあるいは終端点に対応する経路候補リスト内に格納する第2の経路候補作成ステップと、
必要数判定手段が、所望のすべての終端ノードに対応する経路リストに必要数の経路候補が格納されるまで、前記第1の経路候補作成ステップから前記第2の経路候補作成ステップの処理を続ける繰り返しステップと、
を行う
ことを特徴とする複数経路探索方法。 A multi-path search method for searching for a plurality of paths from a desired start node to a desired end node (s) on a network formed by connecting a plurality of nodes to each other by links to which costs are given. There,
A route candidate creation unit creates a route candidate by selecting all links connectable from the start point node, and stores it in a route candidate list corresponding to the end node or end point of each link in the storage unit. Route candidate creation step,
The route candidate list control means searches for one route candidate having the lowest route cost among all the route candidate lists in the storage means, deletes it from the route candidate list, and terminates the route candidate end node. Is a desired end node, a minimum cost route deletion step of storing the route candidate in a route list corresponding to the end node; and
The route candidate list control means further selects all links connectable from the end nodes of the searched route candidates, creates new route candidates by adding the selected links to the route candidates, A second route candidate creation step of storing in a route candidate list corresponding to the end node or the end point of the link;
The necessary number determination means continues the processing from the first route candidate creation step to the second route candidate creation step until the necessary number of route candidates are stored in the route list corresponding to all desired terminal nodes. Repeating steps,
A method for searching for a plurality of routes, characterized by:
前記第1の経路候補作成ステップ及び前記第2の経路候補作成ステップにおいて、
前記経路候補数上限を超えない範囲で、経路候補リスト内に経路候補を格納する経路候補格納判定ステップを含む
請求項1記載の複数経路探索方法。 In the storage means, in each route candidate list, set a route candidate number upper limit including the number of route candidates already deleted as the minimum route,
In the first route candidate creation step and the second route candidate creation step,
The multiple route search method according to claim 1, further comprising a route candidate storage determination step of storing route candidates in a route candidate list within a range not exceeding the upper limit of the number of route candidates.
新経路候補を、当該経路候補リストの終端ノード/リンク終端点に対応する経路候補リストに格納するかどうかを決定する際に、当該経路候補リスト内で最小経路として削除された経路候補数が当該経路候補リストの経路候補数上限値に達している場合は、当該新経路候補を当該経路候補リストに格納しない
請求項2記載の複数経路探索方法。 In the route candidate storage determining step,
When determining whether to store the new route candidate in the route candidate list corresponding to the terminal node / link terminal point of the route candidate list, the number of route candidates deleted as the minimum route in the route candidate list The multiple route search method according to claim 2, wherein the new route candidate is not stored in the route candidate list when the upper limit value of the number of route candidates in the route candidate list is reached.
新経路候補を、当該経路候補リストの終端ノード/リンク終端点に対応する経路候補リストに格納するかどうかを決定する際に、(1)当該経路候補リスト内で最小経路として削除された経路候補数が当該経路候補リストの経路候補数上限値に達しておらず、且(2)当該経路候補リストで最小経路として削除された経路候補数と経路候補リスト内の経路候補数の合計が経路候補数上限と等しい場合は、当該新経路候補の経路コストが当該経路候補リスト中で最大経路コストを持つ経路候補と比較し、その最大経路コストより新経路候補の経路コストが小さい場合は、最大経路コストを持つ経路候補を当該経路候補リストから削除し、新たに新経路候補を当該経路候補リストに格納する
請求項3記載の複数経路探索方法。 In the route candidate storage determining step,
When determining whether to store a new route candidate in the route candidate list corresponding to the terminal node / link terminal point of the route candidate list, (1) the route candidate deleted as the minimum route in the route candidate list The number of route candidates in the route candidate list does not reach the upper limit value of the route candidate list, and (2) the sum of the number of route candidates deleted as the minimum route in the route candidate list and the number of route candidates in the route candidate list If the route cost of the new route candidate is smaller than the maximum route cost, the route cost of the new route candidate is compared with the route candidate having the maximum route cost in the route candidate list. 4. The multiple route search method according to claim 3, wherein a route candidate having a cost is deleted from the route candidate list, and a new route candidate is newly stored in the route candidate list.
経路候補の経路コストを、経路を構成するリンクのコストの総計とするのではなく、前記始点ノードからの経由するリンク数が大きい経路は経路コストが大きくなるようにリンクコストに比重をつける第1の経路コスト調整ステップを含む
請求項1記載の複数経路探索方法。 Oite to the minimum cost path deletion steps,
The route cost of the route candidate is not the sum of the costs of the links constituting the route, but a route with a large number of links from the start node is given a higher weight on the link cost so as to increase the route cost . multiple route searching method according to claim 1 Symbol mounting including path cost adjustment steps.
経路候補の経路コストを、経路を構成するリンクのコストの総計とするのではなく、前記始点ノードからの経由するリンク数が大きい経路は経路コストが大きくなるようにリンクコストに比重をつける第2の経路コスト調整ステップを含むThe route cost of the route candidate is not the sum of the costs of the links constituting the route, but the route cost is increased so that the route cost is increased so that the route cost of the route having a large number of links from the start node increases. Includes route cost adjustment steps
請求項4記載の複数経路探索方法。The multi-path search method according to claim 4.
すべての経路候補リストの中で最小経路コストを持つ経路候補をpath(s, u)とし、その終端ノードからのリンクをE(u, v)とし、その経路候補とリンクを繋げて新しくできた経路候補をpath(s,v)とした場合、該path(s,v)の経路コスト|path(s,v)|を、
|path(s, v)| = |path(s, u)|+|E(u, v)| + β|hop(path(s, v))|
と定義する(ここで|E(u, v)|はリンクコスト、|hop(path(s, v))|はpath(s, v)が経由するリンク数、βは正数)
請求項5記載の複数経路探索方法。 In the first route cost adjustment step,
The path candidate with the minimum path cost in all the path candidate lists is set to path (s, u), the link from the end node is set to E (u, v), and the path candidate and the link are newly connected. If the path candidate is path (s, v), the path cost of the path (s, v) | path (s, v) |
| path (s, v) | = | path (s, u) | + | E (u, v) | + β | hop (path (s, v)) |
Where | E (u, v) | is the link cost, | hop (path (s, v)) | is the number of links that path (s, v) passes through, and β is a positive number
The multi-path search method according to claim 5.
すべての経路候補リストの中で最小経路コストを持つ経路候補をpath(s, u)とし、その終端ノードからのリンクをE(u, v)とし、その経路候補とリンクを繋げて新しくできた経路候補をpath(s,v)とした場合、該path(s,v)の経路コスト|path(s,v)|を、The path candidate with the minimum path cost in all the path candidate lists is set to path (s, u), the link from the end node is set to E (u, v), and the path candidate and the link are newly connected. If the path candidate is path (s, v), the path cost of the path (s, v) | path (s, v) |
|path(s, v)| = |path(s, u)|+|E(u, v)| + β|hop(path(s, v))|| path (s, v) | = | path (s, u) | + | E (u, v) | + β | hop (path (s, v)) |
と定義する(ここで|E(u, v)|はリンクコスト、|hop(path(s, v))|はpath(s, v)が経由するリンク数、βは正数)Where | E (u, v) | is the link cost, | hop (path (s, v)) | is the number of links that path (s, v) passes through, and β is a positive number
請求項6記載の複数経路探索方法。The multiple route search method according to claim 6.
経路候補リストを格納する記憶手段と、
前記始点ノードから接続可能な全てのリンクを選択して経路候補を作成し、前記記憶手段の各リンクの終端ノードあるいは終端点に対応する経路候補リスト内に格納する第1の経路候補作成手段と、
前記記憶手段のすべての経路候補リストの中で、経路コストが最小となる1本の経路候補を検索し、該経路候補リストから削除し、該経路候補の終端ノードが所望の終端ノードの場合は、当該終端ノードに対応する経路リスト内に当該経路候補を格納する最小コスト経路削除手段と、
前記検索された経路候補の終端ノードから接続可能な全てのリンクを更に選択し、当該経路候補に選択された各リンクを加えた新たな経路候補を作成し、各リンクの終端ノードあるいは終端点に対応する経路候補リスト内に格納する第2の経路候補作成手段と、
必要数判定手段が、所望のすべての終端ノードに対応する経路リストに必要数の経路候補が格納されるまで前記第1の経路候補作成手段、前記最小コスト経路削除手段、前記第2の経路候補作成手段の各処理を繰り返す必要数判定手段と、
を有する
ことを特徴とする複数経路探索装置。 A multi-path search device that searches for a plurality of paths from a desired start node to a desired end node (s) on a network formed by connecting a plurality of nodes to each other by links to which costs are given. There,
Storage means for storing a route candidate list;
First route candidate creation means for selecting all links connectable from the start point node to create route candidates and storing them in a route candidate list corresponding to the end node or end point of each link of the storage means; ,
If all the route candidate lists in the storage means search for one route candidate with the lowest route cost, delete it from the route candidate list, and if the end node of the route candidate is the desired end node A minimum cost route deleting means for storing the route candidate in the route list corresponding to the terminal node;
Further select all the links that can be connected from the end nodes of the searched route candidates, create new route candidates by adding the selected links to the route candidates, and set them as the end node or end point of each link. Second route candidate creation means for storing in a corresponding route candidate list;
The first route candidate creating unit, the minimum cost route deleting unit, and the second route candidate until the necessary number determining unit stores the necessary number of route candidates in the route list corresponding to all desired end nodes. A necessary number determining means for repeating each process of the creating means;
A multi-path search device characterized by comprising:
請求項9に記載の複数経路探索装置の各手段として機能させるための複数経路探索プログラム。 Computer
A multi-route search program for functioning as each unit of the multi-route search device according to claim 9 .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011140852A JP5595342B2 (en) | 2011-06-24 | 2011-06-24 | Multiple path search method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011140852A JP5595342B2 (en) | 2011-06-24 | 2011-06-24 | Multiple path search method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013009181A JP2013009181A (en) | 2013-01-10 |
JP5595342B2 true JP5595342B2 (en) | 2014-09-24 |
Family
ID=47676174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011140852A Expired - Fee Related JP5595342B2 (en) | 2011-06-24 | 2011-06-24 | Multiple path search method and apparatus |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5595342B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104104601A (en) * | 2013-04-01 | 2014-10-15 | 华为技术有限公司 | Data transmission method, device and system |
JP6547575B2 (en) * | 2015-10-15 | 2019-07-24 | 富士通株式会社 | Route search apparatus and route search method |
-
2011
- 2011-06-24 JP JP2011140852A patent/JP5595342B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013009181A (en) | 2013-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109194577B (en) | Traffic engineering method and device of segmented routing network based on partial deployment | |
CN101965715B (en) | Tie-Breaking in Shortest Path Determination | |
JP5551253B2 (en) | Method and apparatus for selecting from multiple equal cost paths | |
US9680665B2 (en) | Apparatus and method for dynamic hybrid routing in SDN networks to avoid congestion and balance loads under changing traffic load | |
US10404576B2 (en) | Constrained shortest path determination in a network | |
CN109412963B (en) | Service function chain deployment method based on stream splitting | |
CN103348639A (en) | Path selection method and control server | |
CN108965141A (en) | A kind of calculation method and device of Multi-path route tree | |
US10474644B2 (en) | Systems and methods for optimizing selection of a replication data node in a distributed file system | |
CN102210128A (en) | Path calculation order deciding method, program and calculating apparatus | |
JP5595342B2 (en) | Multiple path search method and apparatus | |
EP2448191B1 (en) | Method and apparatus for generating constraint route | |
CN106104503A (en) | Unified API is used to program the server for forwarding and framework for the fine granularity network optimization | |
CN111800352A (en) | Service function chain deployment method and storage medium based on load balancing | |
Izumi et al. | An adaptive multipath routing scheme based on SDN for disaster-resistant storage systems | |
CN112995032B (en) | Segment routing traffic engineering method and device based on limited widest path | |
CN114422453B (en) | Method, device and storage medium for online planning of time-sensitive stream | |
JP5271817B2 (en) | Route search method, apparatus and program | |
JP2013219436A (en) | Multicast route calculation method and apparatus | |
JP6637911B2 (en) | Network design apparatus, network design method, and network design processing program | |
Datta et al. | An efficient approach to find reliable topology of stochastic flow networks under cost constraint | |
CN108809834B (en) | Network topology dispersed short path set calculation method based on path expansion and elimination mechanism | |
JP6846373B2 (en) | Network design equipment, network design method and network design processing program | |
JP6854252B2 (en) | Network design equipment, network design method and network design processing program | |
Gilbert et al. | How fast can you update your MST?(Dynamic algorithms for cluster computing) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130626 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20131004 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140213 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140225 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140410 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140507 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140707 |
|
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: 20140729 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140805 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5595342 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |