JP2015050594A - Arrangement device and method of virtual network to physical network - Google Patents

Arrangement device and method of virtual network to physical network Download PDF

Info

Publication number
JP2015050594A
JP2015050594A JP2013180525A JP2013180525A JP2015050594A JP 2015050594 A JP2015050594 A JP 2015050594A JP 2013180525 A JP2013180525 A JP 2013180525A JP 2013180525 A JP2013180525 A JP 2013180525A JP 2015050594 A JP2015050594 A JP 2015050594A
Authority
JP
Japan
Prior art keywords
virtual
node
physical
virtual node
subgraph
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.)
Granted
Application number
JP2013180525A
Other languages
Japanese (ja)
Other versions
JP5636078B1 (en
Inventor
陽平 片山
Yohei Katayama
陽平 片山
勇貴 南
Yuki Minami
勇貴 南
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2013180525A priority Critical patent/JP5636078B1/en
Application granted granted Critical
Publication of JP5636078B1 publication Critical patent/JP5636078B1/en
Publication of JP2015050594A publication Critical patent/JP2015050594A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To minimize the cost of a virtual link, in the arrangement of a virtual network having a Cycle structure.SOLUTION: A virtual node list is read, a virtual network is made to low order and high order induction subgraphs, and then an induction subgraph H consisting of a plurality of virtual nodes, and an induction subgraph K including the induction subgraph are arranged and calculated by an existing method. When determining a set Y giving the minimum cost, out of the arrangement to the physical node of induction subgraph where the induction subgraph H is removed from the induction subgraph K, a set Z of arrangement to physical node of the induction subgraph H replaces the induction subgraph K to induction subgraph H.

Description

本発明は、仮想ネットワークの物理ネットワークへの配置装置及び方法に係り、特に、仮想ネットワークの性能条件が与えられ、当該要件を満たす物理資源の組が複数存在する場合に、物理資源の使用量、もしくは物理資源を使用する際の費用(コスト)が最小となる組を選択するための仮想ネットワークの物理ネットワークへの配置装置及び方法に関する。   The present invention relates to an apparatus and method for placing a virtual network on a physical network, and in particular, when the performance conditions of the virtual network are given and there are a plurality of sets of physical resources that satisfy the requirements, the usage amount of the physical resource, Alternatively, the present invention relates to an apparatus and method for placing a virtual network on a physical network for selecting a set that minimizes the cost (cost) when using physical resources.

従来、資源要求量を満たす物理ノードと物理リンクを選択して仮想ネットワークを生成する方法として、仮想ネットワークを誘導部分グラフに分けて配置計算を行うことで計算量を低減する方法である、漸次的簡約解法がある(例えば、非特許文献1参照)。   Conventionally, as a method of generating a virtual network by selecting physical nodes and physical links that satisfy resource requirements, the method is a method of reducing the amount of calculation by dividing the virtual network into guided subgraphs and performing placement calculation. There is a simplified solution (see Non-Patent Document 1, for example).

以下に、漸次的簡約解法について説明する。   Below, the gradual reduction method is described.

なお、以下では、物理ノードと物理リンクは複数種類の資源を持ち、例えば、物理ノードではプロセッサ、揮発メモリ、不揮発ストレージ、周辺機器などを有し、物理リンクではキュー、信号周波数、タイムスロットなどがあり得る。また、プロセッサなどは命令セットなどによっても資源の種類が細分化され得る。要求される種類の資源を持たない物理ノードもしくは物理リンクは当該資源の資源量が0であることと等価に扱われる。   In the following, physical nodes and physical links have multiple types of resources, for example, physical nodes have processors, volatile memory, nonvolatile storage, peripheral devices, etc., and physical links have queues, signal frequencies, time slots, etc. possible. In addition, the types of resources of processors and the like can be subdivided by instruction sets and the like. A physical node or physical link that does not have the required type of resource is treated as if the resource amount of the resource is zero.

また、仮想ネットワークが使用するリソース量(例えば、物理リンク数)、もしくは、その量に応じて必要なコストをなるべく少なくするように仮想ネットワークの物理ネットワークへの配置を決定したい(以降では、目的関数コストで統一するものとする)。   Also, the amount of resources used by the virtual network (for example, the number of physical links) or the arrangement of the virtual network on the physical network is determined so as to reduce the necessary cost according to the amount (hereinafter, the objective function) To be unified by cost).

当該解法では、例えば図1に示す仮想ネットワーク例aが与えられ、当該仮想ネットワーク例aを図1に示す物理ネットワーク例bに配置する場合において、コストが最小となる物理ノード(及び物理リンク)配置の組を計算するにあたり、仮想ネットワーク例aを、仮想ノードv6をRoot(根ノード、もしくは根)とするTree構造として捉え、図2(A)、(B)に示すように、Line構造とStar構造といった、Tree構造よりも最小コストを与える物理ノード配置の組を計算するコストが小さな誘導部分グラフに分解し、それぞれの誘導部分グラフについて最小コストを与える物理ノード配置を計算して、それら誘導部分グラフ毎に算出された最小コストを与える物理ノードの配置を統合することを繰り返すことで、Tree構造の最小コストを与える物理ノード配置の組をそのまま計算するよりも少ない計算量で、最小コストを与える物理ノード配置の組を算出する。なお、図2の各矢印の意味は、ある仮想ノード(例えば、図2(A)の仮想ノードv3)について、矢印の先が指し示す配置候補の物理ノード(例えば図2(A)の仮想ノードv3の配置候補の物理ノードp3)を、当該仮想ノードの配置先として選択した場合に、矢印の元は、当該仮想ノードの隣接仮想ノード(例えば、図2(A)の仮想ノードv2)の候補最小コスト(例では、最小ホップ数)の物理リンクを与える物理ノード配置の組を示す。   In this solution, for example, a virtual network example a shown in FIG. 1 is given, and when the virtual network example a is arranged in the physical network example b shown in FIG. In calculating the set of, the virtual network example a is regarded as a tree structure with the virtual node v6 as a root (root node or root), and as shown in FIGS. The structure of the physical node arrangement that gives the minimum cost than the Tree structure, such as the structure, is decomposed into guided subgraphs that cost less, and the physical node placement that gives the minimum cost is calculated for each of the derived subgraphs. The physical node that gives the minimum cost of the Tree structure by repeating the integration of the physical node placement that gives the lowest cost calculated for each graph A set of physical node arrangements that gives a minimum cost is calculated with a smaller amount of calculation than calculating a set of node arrangements as they are. The meaning of each arrow in FIG. 2 means that for a certain virtual node (for example, virtual node v3 in FIG. 2A), the placement candidate physical node indicated by the tip of the arrow (for example, virtual node v3 in FIG. 2A) Is selected as the placement destination of the virtual node, the source of the arrow is the smallest candidate of the virtual node adjacent to the virtual node (for example, virtual node v2 in FIG. 2A) A set of physical node arrangements that provides a physical link with a cost (in the example, the minimum number of hops) is shown.

図2(A),(B)の各誘導部分グラフについて最小コストを与える物理ノード配置の組を算出し、更にv5とv6における最小コストを与える物理ノード配置の組を算出することで、最小コストを与える根(v6)の物理ノードが算出され、これによって、最小コストを与える仮想ネットワークaの物理ノード配置の組が全て決定する。最小コストを与える根の物理ノードが最小コストの経路となる。|VP|を物理ノード数、|EL|を仮想リンク数とすると、この当該解法の計算量はO(|VP|2|EL|)となる。ただし、当該解法は、事前に全ての物理ノード間のコスト計算が必要であり、その計算量はO(|VP|3)となる。 2A and 2B, a set of physical node arrangements that gives the minimum cost is calculated for each guidance subgraph, and a set of physical node arrangements that gives the minimum cost in v5 and v6 is further calculated. The root (v6) physical node that gives is calculated, and all sets of physical node arrangements of the virtual network a giving the minimum cost are thereby determined. The root physical node that gives the minimum cost is the path with the minimum cost. If | V P | is the number of physical nodes and | E L | is the number of virtual links, the computational amount of this solution is O (| V P | 2 | E L |). However, this solution requires cost calculation between all physical nodes in advance, and the amount of calculation is O (| V P | 3 ).

以下に、仮想ネットワークは図1の仮想ネットワーク例aを例とし、物理ネットワークは図1の物理ネットワーク例bを例として、図2の仮想ノードv1、v2、v3、v4、v5に対する漸次的簡約解法について詳細に説明する。   In the following, the virtual network is exemplified by the virtual network example a in FIG. 1, and the physical network is exemplified by the physical network example b in FIG. 1, and the incremental reduction method for the virtual nodes v1, v2, v3, v4, and v5 in FIG. Will be described in detail.

なお、Tree構造はどの点を根としても必ずTree構造となることに留意されたい。   Note that the Tree structure is always the Tree structure at any point.

ここでは、事前準備として、図1の物理ノード間のコストの表のように、全ての物理ノード間の最小コストを与える経路をdijkstra法などにより予め計算しておくものとする。当該解法は以下の4つの手順からなる。   Here, as a preliminary preparation, as shown in the table of costs between physical nodes in FIG. 1, a route that gives the minimum cost between all physical nodes is calculated in advance by the dijkstra method or the like. The solution consists of the following four procedures.

(1)まず、仮想ネットワーク(例えば図1の仮想ネットワーク例a)から任意の仮想ノード(例えば図1のv6)を選択して根とする。   (1) First, an arbitrary virtual node (for example, v6 in FIG. 1) is selected as a root from a virtual network (for example, the virtual network example a in FIG. 1).

(2)最小コストを与える物理ノード配置の計算が未完了の仮想ノードの集合とそれらの仮想ノードの隣接仮想ノードの集合からなる誘導部分グラフにおいて、次数1の仮想ノードと次数2の仮想ノードのみの連結からなる構造(Line構造)の誘導部分グラフのそれぞれに対し、最小コストを与える物理ノード(および物理リンク)配置を計算する。   (2) In a derived subgraph composed of a set of virtual nodes for which the calculation of physical node allocation that gives the minimum cost has not been completed and a set of virtual nodes adjacent to those virtual nodes, only a virtual node of degree 1 and a virtual node of order 2 The physical node (and physical link) arrangement that gives the minimum cost is calculated for each of the induced subgraphs of the structure (Line structure) composed of the connections.

(3)最小コストを与える物理ノード配置の計算が未完了の仮想ノードの集合とそれらの仮想ノードの隣接仮想ノードの集合からなる誘導部分グラフにおいて、次数1の仮想ノード複数と次数3以上の仮想ノード一つの連結からなる構造(Star構造)の誘導部分グラフのそれぞれに対して、最小コストを与える物理ノード(および物理リンク)配置を計算する。   (3) In a derived subgraph composed of a set of virtual nodes for which the calculation of physical node placement that gives the minimum cost is incomplete and a set of virtual nodes adjacent to those virtual nodes, a plurality of virtual nodes of degree 1 and virtuals of degree 3 or higher The physical node (and physical link) arrangement that gives the minimum cost is calculated for each of the derived subgraphs of the structure (Star structure) composed of one node connected.

(4)上記の手順(2)と(3)を全ての仮想ノードの最小コストを与える物理ノード配置の組の計算が終了するまで繰り返す。   (4) The above steps (2) and (3) are repeated until the calculation of the physical node arrangement set that gives the minimum cost of all virtual nodes is completed.

手順(2)を補足すると、葉側の仮想ノードからの根側の仮想ノードに向かい、各仮想リンク配置について、最小のコストを与える物理ノード配置の組をホップ毎に選択(等コストのものが複数ある場合はいずれかを任意に選択)していく。前ホップの最小コストの計算結果c'を次ホップの最小コストcの計算結果に利用する。コストは物理リンクのホップ数や物理リンク容量に基づく重み値、物理ノードのプロセッシング速度に基づく重み値などを様々な係数値が考えられるが、本明細書では、説明を明瞭にするために物理リンクのホップ数だけを考慮する。   Supplementing the procedure (2), from the leaf-side virtual node to the root-side virtual node, for each virtual link arrangement, a set of physical node arrangements that gives the minimum cost is selected for each hop (equal cost ones are If there are multiple, select any one). The calculation result c ′ of the minimum cost of the previous hop is used as the calculation result of the minimum cost c of the next hop. For the cost, various coefficient values such as a weight value based on the number of hops and physical link capacity of the physical link and a weight value based on the processing speed of the physical node can be considered. In this specification, for the sake of clarity, the physical link Consider only the number of hops.

図3のLine構造部分グラフの計算例1,Line構造部分グラフの計算例2は、v1→v2の仮想リンク配置と、v2→v3の仮想リンク配置について、物理ノード(および物理リンク)配置の組に対するコストを計算した結果を例示したものであり、例えば仮想ノードv1とv2の組への物理ノード配置を、物理ノードp6とp4にそれぞれした時(図3のLine構造部分グラフの計算例1のハッチ部分)の物理ノード間(物理リンク)のコストは、図1の物理ノード間のコストの表の物理ノードp6とp4の間のコストより3が入力される。仮想ノードv2の配置を物理ノードp2に固定して、仮想ノードv1の物理ノード配置のうち最小コストのものを選択すると、p6となる。仮想ノードv2の配置を物理ノードp3に固定して、仮想ノードv1の物理ノード配置のうち最小コストのものを選択する場合のように、候補となる物理ノードの複数が最小コストとなるような場合には、いずれかを任意に選択し、例えば本明細では物理ノード名の下付き文字が小さいものを選択することとする。   Calculation example 1 of the line structure subgraph 1 and calculation example 2 of the line structure subgraph in FIG. 3 are combinations of physical node (and physical link) arrangements for the virtual link arrangement of v1 → v2 and the virtual link arrangement of v2 → v3. For example, when the physical node placement in the set of virtual nodes v1 and v2 is set to the physical nodes p6 and p4, respectively (in the calculation example 1 of the Line structure subgraph of FIG. 3). As the cost between physical nodes (physical links) in the hatch portion, 3 is input from the cost between physical nodes p6 and p4 in the table of costs between physical nodes in FIG. If the placement of the virtual node v2 is fixed to the physical node p2 and the one with the lowest cost is selected from the physical node placements of the virtual node v1, p6 is obtained. When the placement of the virtual node v2 is fixed to the physical node p3 and a plurality of candidate physical nodes have the lowest cost as in the case of selecting the lowest cost among the physical node placements of the virtual node v1 Is arbitrarily selected, for example, in this specification, the one with a small subscript of the physical node name is selected.

仮想ネットワークの物理ネットワークへの配置に関して、明示的に指定がされない限り、前ホップと次ホップの仮想ノード同士は、別の物理ノードに割り当てる。つまり、仮想ネットワークの物理ネットワークへの配置を計算するアルゴリズム、およびその実装装置に対して、ある複数の仮想ノードを同一物理筐体(例えば仮想マシンサーバ)の物理ノード(例えば仮想マシン)へ割り当てるための命令を与えない限り、複数の仮想ノードが同一物理筐体の物理ノードへ割り当てることは禁止し、コストの計算結果も、例えば図3Line構造部分グラフの計算例2のv2とv3をともにp3に配置する場合のコストの計算結果のように、NA(Not available)などを付与する。   Unless explicitly specified regarding the placement of the virtual network in the physical network, the virtual nodes of the previous hop and the next hop are assigned to different physical nodes. That is, in order to allocate a plurality of virtual nodes to physical nodes (for example, virtual machines) in the same physical enclosure (for example, virtual machine servers) for the algorithm for calculating the placement of the virtual network on the physical network and the mounting apparatus thereof. Unless the command is given, it is prohibited to assign a plurality of virtual nodes to physical nodes in the same physical enclosure, and the calculation result of the cost is, for example, that v2 and v3 in the calculation example 2 of the Line structure subgraph of FIG. NA (Not available) or the like is assigned as in the calculation result of the cost in the case of placement.

物理ノードと物理リンクの資源量と仮想ノードと仮想リンクの資源要求量とを比較して、資源要求量が資源量より大きくなるような組は割り当て候補から除外する。   The resource amount of the physical node and the physical link and the resource request amount of the virtual node and the virtual link are compared, and a group in which the resource request amount is larger than the resource amount is excluded from the allocation candidates.

手順(3)を補足すると、根側の仮想ノードで次数3以上のものに直結する葉側の仮想ノードで次数1のもの全ての仮想リンク配置について、最小コストを与える物理ノード配置の組を選択(等コストのものが複数ある場合はいずれかを任意に選択)する。   Supplementing step (3), select the set of physical node arrangements that gives the minimum cost for all virtual link arrangements of the virtual nodes on the root side that are directly connected to those of the order 3 or higher and the virtual nodes on the side of the order 1 (If there are multiple items of equal cost, select any one).

図3のStar構造部分グラフの計算例は、仮想ノードv5の物理ノード配置をある物理ノード(例えばp5)に固定した時に、v3→v5の仮想リンク配置とv4→v5の仮想リンク配置について、物理ノード(および物理リンク)の配置の組に対するコストを計算した結果を例示したものであり、例えば、v3への物理ノード配置を選んだ場合にv1とv2の最小コストを与える物理ノード配置が図3のLine構造誘導部分グラフの計算例1と2によって決定しているため、これらの計算結果がc'として利用されており、例えば、v3をp3、v4をp6に配置するとそれぞれコスト9となり、それらの合計で18のコストがかかることを示しており、例えばv5をp5に配置する場合にはv3とv4をp3とp6に配置すると最小コストであることを示している。   In the calculation example of the Star structure subgraph of FIG. 3, when the physical node arrangement of the virtual node v5 is fixed to a certain physical node (for example, p5), the physical link arrangement of v3 → v5 and the virtual link arrangement of v4 → v5 FIG. 3 exemplifies the result of calculating the cost for a node (and physical link) arrangement set. For example, when a physical node arrangement for v3 is selected, a physical node arrangement that gives the minimum cost of v1 and v2 is shown in FIG. Since the calculation results 1 and 2 of the line structure induction subgraph of FIG. 1 are determined, these calculation results are used as c ′. For example, if v3 is arranged at p3 and v4 is arranged at p6, the cost becomes 9, respectively. For example, when v5 is arranged at p5, it is the minimum cost when v3 and v4 are arranged at p3 and p6. It is shown the door.

図1の仮想ネットワーク例aについて、手順の(2)と(3)を繰り返して、根の仮想ノード(v6)の最小コストを与える物理ノードが決定すると、仮想ネットワーク例aの最小コストを与える物理ノード配置の組も計算過程を辿ることで決定できる。   When the physical node giving the minimum cost of the root virtual node (v6) is determined by repeating steps (2) and (3) for the virtual network example a in FIG. 1, the physical giving the minimum cost of the virtual network example a The node arrangement set can also be determined by following the calculation process.

隣り合った2つの仮想ノードの物理ノード配置の仕方は、|VP|×|VP|=|VP|2通りであり、漸次的簡約解法において仮想ネットワークを物理ネットワークへ配置するための計算は、隣り合った2つ仮想ノード同士の配置(|VP|2通り)を仮想リンク数|EL|回だけ繰り返すことから計算量がO(|VP|2|EL|)となり、加えて、Dijkstra法で全ての物理ノード間の最短経路とその距離・コストを予め計算しておくための計算量O(|VP|3)が必要であるため、漸次的簡約解法全体の計算量はO(|VP|2|EL|+|VP|3)となる。 There are two ways of arranging physical nodes of two adjacent virtual nodes: | V P | × | V P | = | V P | 2 and calculation for allocating virtual networks to physical networks in the gradual reduction method Is calculated by O (| V P | 2 | E L |) because the arrangement of two adjacent virtual nodes (| V P | 2 ways) is repeated by the number of virtual links | E L | In addition, the Dijkstra method requires the calculation amount O (| V P | 3 ) to calculate the shortest path between all physical nodes and their distance and cost in advance. The quantity is O (| V P | 2 | E L | + | V P | 3 ).

Khanh-Toan Tran, N. Agoulmine, Y. Iraqi, "Cost-effective complex service mapping in cloud infrastructures", Network Operations and Management Symposium (NOMS), 2012.Khanh-Toan Tran, N. Agoulmine, Y. Iraqi, "Cost-effective complex service mapping in cloud infrastructures", Network Operations and Management Symposium (NOMS), 2012.

しかしながら、従来における漸次的簡約解法は、Tree構造、Line構造、もしくStar構造といったCycle(閉路)構造を持たないトポロジの仮想ネットワークを物理ネットワークへ配置する計算には適用できるが、Cycle構造を持つトポロジの仮想ネットワークを物理ネットワークへ配置する計算に適用しようすると計算対象の仮想ノードが循環し、計算が終了しないため適用できないという問題がある。循環を検知して計算を終了することは可能であるが、最小コストの物理ノード配置となることが保証されない。   However, the conventional gradual reduction method can be applied to a calculation in which a virtual network having a topology that does not have a cycle structure such as a tree structure, a line structure, or a star structure is arranged in a physical network, but has a cycle structure. If the topology virtual network is applied to the calculation for allocating to the physical network, there is a problem that the virtual node to be calculated circulates and the calculation does not end, and therefore cannot be applied. Although it is possible to detect the circulation and finish the calculation, it is not guaranteed that the physical node arrangement with the minimum cost is obtained.

図4にCycle構造のある仮想ネットワークの例を4つ示す。一般的に商用ネットワークは冗長構成を採り、図4のようなCycle構造が現れるため、仮想ネットワークの物理ネットワークへの配置アルゴリズムにおいて、Cycle構造への対応は重要な課題である。   FIG. 4 shows four examples of virtual networks having a Cycle structure. In general, a commercial network has a redundant configuration, and a Cycle structure as shown in FIG. 4 appears. Therefore, in an arrangement algorithm of a virtual network to a physical network, correspondence to the Cycle structure is an important issue.

本発明は、上記の点に鑑みなされたもので、Cycle構造をもつような仮想ネットワークの物理ネットワークへの配置において、仮想リンクのコストを最小化できる仮想ネットワークの物理ネットワークへの配置装置及び方法を提供することを目的とする。   The present invention has been made in view of the above points, and provides an apparatus and method for arranging a virtual network on a physical network that can minimize the cost of a virtual link in the arrangement of a virtual network having a cycle structure on the physical network. The purpose is to provide.

一態様によれば、仮想ネットワークの性能条件が与えられ、該要件を満たす物理ノードと物理リンクの組が複数存在する場合に、該物理ノードと該物理リンクのコストが最小となる組を選択する仮想ネットワークの物理ネットワークへの配置装置であって、
Cycle構造を有する仮想ネットワークの仮想ノードのリスト(仮想ノードリスト)を格納した仮想ノードリスト記憶手段と、
前記仮想ノードリストを読み出して、前記仮想ネットワークを低次、高次の誘導部分グラフに分割するグラフ分割手段と、
低次の誘導部分グラフから先に配置計算を行う簡約処理手段と、
を有し、
前記簡約処理手段は、
複数の仮想ノードからなる誘導部分グラフHと、該誘導部分グラフHを包含する誘導部分グラフKを既存の方法により配置計算し、該誘導部分グラフHの物理ノードへの配置の組Zが、該誘導部分グラフKから該誘導部分グラフHを除いた誘導部分グラフの物理ノードへの配置のうち、最小コストを与える組Yを決定する際に、該誘導部分グラフKを該誘導部分グラフHに置き換える手段を含む仮想ネットワークの物理ネットワークへの配置装置が提供される。
According to one aspect, when performance conditions of a virtual network are given and there are a plurality of pairs of physical nodes and physical links that satisfy the requirements, a pair that minimizes the cost of the physical nodes and the physical links is selected. An arrangement device for a virtual network on a physical network,
A virtual node list storage means for storing a list of virtual nodes (virtual node list) of a virtual network having a Cycle structure;
A graph dividing means for reading out the virtual node list and dividing the virtual network into low-order and high-order guided subgraphs;
A reduction processing means for calculating the arrangement first from the low-order induction subgraph,
Have
The reduction processing means includes:
An induction subgraph H composed of a plurality of virtual nodes and an induction subgraph K including the induction subgraph H are arranged and calculated by an existing method, and a set Z of arrangements of the induction subgraph H to physical nodes When determining the set Y that gives the minimum cost among the arrangements of the induced subgraphs excluding the induced subgraph H from the induced subgraph K to the physical nodes, the induced subgraph K is replaced with the induced subgraph H. An apparatus for placing a virtual network on a physical network including means is provided.

一態様によれば、仮想ネットワークの誘導部分グラフのうち、最小次数が2の仮想ノードからなるCycle構造のものについて、1仮想ノードの物理ノード配置を一つ選択して固定し、その仮想ノードから周回する方路の一方に向かって1周するように最小コストを与える物理ノード配置の組を計算することで、従来のアルゴリズムでは計算が終了しないCycle構造の誘導部分グラフのうち、最高次数が2の仮想ノードからなるものについて、最小コストを与える物理ノード配置を、計算量O(|VP|3|EL|)にて計算することが可能となる。また、仮想ネットワークの誘導部分グラフのうち、最小次数がD(3以上)の仮想ノードからなるCycle構造のものについても、最低次数の仮想ノードを簡約仮想ノードとして一つ選択し、該簡約仮想ノードの接続先仮想ノードから物理ノード配置の組を一つ選択し、該物理ノード配置の組から前記配置計算により最小コストを与える該簡約仮想ノードの物理ノード配置を一つ選択する処理を、全ての物理ノード配置の組に対して行い、各組に対するコストをD次元配列として記憶手段に格納することによって、最小コストを与える物理ノード配置を計算量O(|VP|D+1|EL|)にて計算することが可能となる。また、仮想ネットワークの誘導部分グラフのうち、フルメッシュ構造となるものについても、仮想ノードを一つ選択し、該仮想ノードを中心とするStar構造とみなして、最小コストを与える物理ノード配置の組を算出する処理を、全ての仮想ノードに対してそれぞれ行い、各仮想ノードを中心とするStar構造における物理ノード配置のコストの最小値を相互に比較して、コストの最小値が最も小さくなるような物理ノード配置の組を選ぶことによって、当該仮想ネットワークの誘導部分グラフの物理ノード配置の組のうち最小コストを与えるものを、計算量O(|VP|2|EL|)にて計算できる。仮想ネットワークを次数の低い仮想ノードからなる誘導部分グラフに分け、前記最小次数に応じた誘導部分グラフの最小コストを与える物理ノード配置の組を計算する方法を順次実施し、最小コストを与える物理ノード配置の組の算出が完了した仮想ノードを当該仮想ネットワークから取り除く操作を繰り返すことで、計算量が大きな高次の仮想ノードに対する最小コストを与える物理ノード配置の組の算出の計算量を小さくすることができる。 According to one aspect, for a virtual network inductive subgraph having a cycle structure composed of virtual nodes having a minimum degree of 2, a physical node arrangement of one virtual node is selected and fixed, and By calculating a set of physical node arrangements that give a minimum cost so as to make one round toward one of the circulating routes, the maximum degree is 2 among the induced subgraphs of the Cycle structure that cannot be calculated by the conventional algorithm. It is possible to calculate the physical node arrangement that gives the minimum cost for the one consisting of the virtual nodes with the calculation amount O (| V P | 3 | E L |). In addition, for a virtual network derived subgraph having a cycle structure composed of virtual nodes having a minimum degree of D (3 or more), one virtual node having the lowest order is selected as a reduced virtual node, and the reduced virtual node is selected. A process of selecting one physical node arrangement group from the connection destination virtual nodes and selecting one physical node arrangement of the reduced virtual node that gives the minimum cost by the arrangement calculation from the physical node arrangement group. A physical node arrangement that gives the minimum cost is calculated O (| V P | D + 1 | E L | by performing the physical node arrangement on the storage means as a D-dimensional array. ) Can be calculated. In addition, for a virtual network inductive subgraph that has a full mesh structure, a virtual node is selected, and it is regarded as a Star structure centered on the virtual node, and a set of physical node arrangements that gives the minimum cost. Is calculated for all virtual nodes, and the minimum cost of physical node placement in the Star structure centered on each virtual node is compared with each other so that the minimum cost is minimized. By selecting a set of physical node arrangements, the one that gives the minimum cost among the combinations of physical node arrangements in the guidance subgraph of the virtual network is calculated with the calculation amount O (| V P | 2 | E L |) it can. A physical node that divides a virtual network into guided subgraphs composed of virtual nodes of low order, and sequentially calculates a set of physical node arrangements that give the minimum cost of the guided subgraph according to the minimum order, and gives the minimum cost By repeating the operation of removing the virtual node for which the calculation of the arrangement group has been completed from the virtual network, the calculation amount of the calculation of the physical node arrangement group that gives the minimum cost for the higher-order virtual node having a large calculation amount can be reduced. Can do.

仮想ネットワークの例である。It is an example of a virtual network. 従来の漸次的簡約解法である。It is a conventional gradual reduction method. 従来の漸次的簡約解法によるLine構造とStar構造の誘導部分グラフの計算例である。It is a calculation example of the induced subgraphs of the Line structure and Star structure by the conventional gradual reduction method. Cycle構造のある仮想ネットワーク例である。It is an example of a virtual network having a Cycle structure. 本発明の一実施の形態における仮想ネットワーク配置装置の構成例である。It is a structural example of the virtual network arrangement | positioning apparatus in one embodiment of this invention. 本発明の一実施の形態における仮想ネットワーク配置装置の全体動作のフローチャートである。It is a flowchart of the whole operation | movement of the virtual network arrangement | positioning apparatus in one embodiment of this invention. 本発明の一実施の形態における次数1誘導部分グラフの簡約処理部の処理概要のフローチャートである。It is a flowchart of the process outline | summary of the reduction process part of the order 1 induction | guidance | derivation subgraph in one embodiment of this invention. 本発明の一実施の形態における次数1誘導部分グラフ簡約の例(その1)である。It is an example (the 1) of order 1 induction | guidance | derivation subgraph reduction in one embodiment of this invention. 本発明の一実施の形態における次数1誘導部分グラフの簡約の例(その2)である。It is the example (the 2) of the reduction of the degree 1 induction | guidance | derivation subgraph in one embodiment of this invention. 本発明の一実施の形態における次数1誘導部分グラフの簡約処理のTree-root判定処理のフローチャートである。It is a flowchart of the Tree-root determination process of the simplification process of the degree 1 induction | guidance | derivation subgraph in one embodiment of this invention. 本発明の一実施の形態における次数2誘導部分グラフの簡約処理のフローチャートである。It is a flowchart of the reduction process of a degree 2 induction | guidance | derivation subgraph in one embodiment of this invention. 本発明の一実施の形態における次数2誘導部分グラフの簡約(次数3以上の仮想ノードが一つ存在するかもしくは存在しないCycle構造の簡約)の例である。It is an example of the reduction of the degree 2 induction | subdivision subgraph (reduction of Cycle structure where one virtual node of order 3 or more exists or does not exist) in one embodiment of this invention. 本発明の一実施の形態における図11のステップ160の詳細フローチャートである。It is a detailed flowchart of step 160 of FIG. 11 in one embodiment of this invention. 本発明の一実施の形態における次数2誘導部分グラフの簡約(次数3以上の仮想ノードが2つ以上存在するCycle構造の簡約)の例である。It is an example of the reduction of the degree 2 induction | guidance | derivation subgraph (reduction of Cycle structure in which two or more virtual nodes of degree 3 or more exist) in one embodiment of this invention. 本発明の一実施の形態における図13のステップ1604の処理の例である。It is an example of the process of step 1604 of FIG. 13 in one embodiment of this invention. 本発明の一実施の形態における図11のステップ166の詳細フローチャートである。It is a detailed flowchart of step 166 of FIG. 11 in one embodiment of this invention. 本発明の一実施の形態における図6のステップ170の詳細処理(次数Dが3以上(高次)の非フルメッシュ構造の誘導部分グラフの簡約処理)である。FIG. 7 is a detailed process of step 170 in FIG. 6 according to an embodiment of the present invention (a reduction process of a guidance subgraph of a non-full mesh structure having an order D of 3 or higher (high order)). 本発明の一実施の形態における図6のステップ180の詳細処理(フルメッシュの簡約処理)である。FIG. 7 is a detailed process (full mesh reduction process) in step 180 of FIG. 6 in an embodiment of the present invention. FIG.

以下、図面と共に本発明の実施の形態を説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

本発明は、Cycle構造の誘導部分グラフの1仮想ノードの物理ノード配置を一つ選択して固定し、その仮想ノードから周回する方路の一方に向かって1周するように最小コストを与える物理ノード配置の組を計算することで、従来のアルゴリズムでは計算が終了しないCycle構造の誘導部分グラフの最小コストを与える物理ノード配置を計算できるようにするものである。   The present invention selects and fixes one physical node arrangement of one virtual node of a guidance subgraph of the Cycle structure, and gives a minimum cost so as to make one turn toward one of the routes that circulate from the virtual node. By calculating the node arrangement set, it is possible to calculate the physical node arrangement that gives the minimum cost of the derivation subgraph of the Cycle structure that is not completed by the conventional algorithm.

最初に、以下で用いる用語について説明する。   First, terms used below will be described.

・P2(3):物理ノード2を経由する場合の累積コストの値が3という意味である。   P2 (3): means that the value of the accumulated cost when passing through the physical node 2 is 3.

・コスト:リンクやノードが使う資源の量やそれを使うために掛かる費用、ホップ数(ホップ数で例示しているが、ホップ数以外であってもよい)等。   Cost: The amount of resources used by the link or node, the cost required to use it, the number of hops (illustrated as the number of hops, but may be other than the number of hops), etc.

・リソース:CPUやメモリや帯域などの演算や通信などに必要な資源。   -Resources: Resources required for computation and communication such as CPU, memory and bandwidth.

・リソースの使用量:資源を使用する量。   Resource usage: Amount of resource usage.

・誘導部分グラフ:グラフのノード(頂点)集合の部分集合を取り出して、両端点が取り出したノード集合に属する全てのリンク(辺)をリンク集合とするグラフ。   Guided subgraph: A graph in which a subset of a node (vertex) set of a graph is taken out, and all links (edges) belonging to the node set from which both end points are taken are link sets.

・次数:ノードに接続されたリンクの数。   Order: The number of links connected to the node.

・Cycle(Cycle構造):ノードに接続されたリンクを折り返すことなく辿ることで元のノードにたどり着くことができるような構造を持つグラフ。   Cycle (Cycle structure): A graph having a structure that allows the user to reach the original node by following the link connected to the node without turning back.

・Line(Line構造):ノードとリンクが直線的に接続されたグラフ。より厳密には、2つの次数1のノードと0つ以上の次数2のノードの連結によってなるグラフ。   -Line (Line structure): A graph in which nodes and links are connected linearly. More precisely, a graph formed by concatenating two nodes of degree 1 and zero or more nodes of degree 2.

・Star(Star構造):ある1つのノードに3つ以上のノードがリンクで直接接続されたStar構造グラフ。より厳密には、3つ以上の次数1のノードと1つ以上の次数3位上のノードの連結によってなるグラフ。   Star (Star structure): A Star structure graph in which three or more nodes are directly connected to a certain node by a link. More precisely, a graph formed by concatenating three or more degree 1 nodes and one or more third order nodes.

・Tree(Tree構造):Cycleを持たないような2つ以上のノードからなるグラフ。Tree構造はLine構造とStar構造を包含する。
・葉:Tree構造のグラフにおける葉(葉ノード)。
Tree (Tree structure): A graph consisting of two or more nodes that do not have a Cycle. Tree structure includes Line structure and Star structure.
Leaf: A leaf (leaf node) in a tree structure graph.

・根:Tree構造のグラフにおける根(根ノード)。   -Root: A root (root node) in a tree structure graph.

・フルメッシュ(フルメッシュ構造、もしくは、完全グラフ):グラフの任意の2頂点間に辺があるグラフ。   Full mesh (full mesh structure or complete graph): A graph with edges between any two vertices of the graph.

・多重辺:2頂点間に複数の辺があるときのそれらの辺。本発明では、多重辺の仮想リンクは、それぞれの仮想リンクのコストを重ねあわせて単一辺として扱う。   -Multiple sides: those sides where there are multiple sides between two vertices. In the present invention, the virtual links of multiple sides are handled as a single side by superimposing the costs of the respective virtual links.

まず、本発明の概要を説明する。   First, the outline of the present invention will be described.

本発明は、Cycle構造から高次の仮想ノード(図12のv1)を基準点として取り出し、その基準点から任意の方向で周回する方路(例えば、(v1,v2,v3,v1))の最小コストを計算する。最小コストの計算に際しては、基準点の候補物理ノード一つずつに対して、方路の向きへ非特許文献1のアルゴリズムを適用する。この操作により、基準点の各候補物理ノードを選択した際の最小コストを与える組(v1,v2,v3)={(p1,p3,p2),(p6,p4,p3)}が得られる。これをv1の計算結果v'として保存する。後述する図12に示すように、v1に他のCycle構造(v1,v2,v5,v1)が接続されている場合には、v1の計算結果v'を用いてv1に接続された残りのCycle構造を図12の方法で逐次計算し、最小コストを与える物理ノード配置の組を算出することができる。   The present invention takes a higher-order virtual node (v1 in FIG. 12) from the Cycle structure as a reference point, and a route (for example, (v1, v2, v3, v1)) that circulates in an arbitrary direction from the reference point. Calculate the minimum cost. In calculating the minimum cost, the algorithm of Non-Patent Document 1 is applied to the direction of the route for each candidate physical node of the reference point. By this operation, a set (v1, v2, v3) = {(p1, p3, p2), (p6, p4, p3)} that gives the minimum cost when selecting each candidate physical node of the reference point is obtained. This is stored as the calculation result v ′ of v1. As shown in FIG. 12 to be described later, when another cycle structure (v1, v2, v5, v1) is connected to v1, the remaining Cycle connected to v1 using the calculation result v ′ of v1. The structure is sequentially calculated by the method of FIG. 12, and a set of physical node arrangements that gives the minimum cost can be calculated.

上記の処理では、非特許文献1のアルゴリズムをO(|VP|)回繰り返すため、本発明の処理による計算量はO(|VP|3|EL|))である。 In the above processing, since the algorithm of Non-Patent Document 1 is repeated O (| V P |) times, the amount of calculation by the processing of the present invention is O (| V P | 3 | E L |)).

図5は、本発明の一実施の形態における仮想ネットワーク配置装置の構成例を示す。   FIG. 5 shows an example of the configuration of a virtual network placement apparatus according to an embodiment of the present invention.

同図示す仮想ネットワーク配置装置は、仮想ノードリスト作成部10、仮想ノードリスト記憶部20、仮想ノード次数判定部30、次数1仮想ノード簡約処理部40、次数2仮想ノード簡約処理部50、高次数仮想ノード簡約処理部60、フルメッシュ処理部70、メモリ80を有する。メモリ80には、1次元配列記憶領域、2次元配列記憶領域、D次元配列記憶領域、フルメッシュ物理ノード記憶領域があるものとする。   The virtual network arrangement apparatus shown in FIG. 1 includes a virtual node list creation unit 10, a virtual node list storage unit 20, a virtual node order determination unit 30, an order 1 virtual node reduction processing unit 40, an order 2 virtual node reduction processing unit 50, and a high order. A virtual node reduction processing unit 60, a full mesh processing unit 70, and a memory 80 are included. The memory 80 includes a one-dimensional array storage area, a two-dimensional array storage area, a D-dimensional array storage area, and a full mesh physical node storage area.

図6は、本発明の一実施の形態における仮想ネットワーク配置装置の全体動作のフローチャートである。   FIG. 6 is a flowchart of the overall operation of the virtual network placement apparatus according to the embodiment of the present invention.

以下の処理を行う前に、仮想ネットワークのグラフの作成を行っておく。具体的には、仮想リンクをその両端点となる2つの仮想ノードで表したリスト形式のデータ[{仮想リンクe1の端点仮想ノードv1、仮想リンクe2の端点仮想ノードv2},…]を何らかの記憶手段(例えば、仮想ノードリスト記憶部20、もしくは、メモリ80)に格納する。また、各処理部のステップに含まれる誘導部分グラフのデータや複製グラフのデータは、上記のデータ列と同じリスト形式であり、メモリ80に保管する。   Before performing the following processing, create a graph of the virtual network. Specifically, some form of data [{end virtual node v1 of virtual link e1, end point virtual node v2 of virtual link e2},...] Representing a virtual link with two virtual nodes at both ends of the virtual link is stored. The data is stored in a means (for example, the virtual node list storage unit 20 or the memory 80). Further, the data of the induced subgraph and the data of the duplicate graph included in the steps of each processing unit are in the same list format as the above data string and are stored in the memory 80.

ステップ110) まず、仮想ノードリスト作成部10は、入力された仮想ノードの情報に基づいて仮想ノードリストを生成し、仮想ノードリスト記憶部20に格納する。仮想ノードリストは、例えば、リスト形式のデータ[{仮想ノード名v1,仮想ノード次数3,仮想ノードスペック},{仮想ノード名v2,仮想ノード次数1},…]のような構成を有する。なお、各簡略処理部40,50,60から参照され、変数(v,v',v"など)は各簡略処理にて生成される。   Step 110) First, the virtual node list creation unit 10 generates a virtual node list based on the input virtual node information and stores it in the virtual node list storage unit 20. The virtual node list has, for example, a configuration of list format data [{virtual node name v1, virtual node degree 3, virtual node specification}, {virtual node name v2, virtual node order 1},...]. It should be noted that the variables (v, v ′, v ″, etc.) are generated by each simplified process by referring to each simplified processing unit 40, 50, 60.

ステップ120) 仮想ノード次数判定部30が、仮想ノードリスト記憶部20の仮想ノードリストを読み込み、当該仮想ノードリストの仮想ノード次数の最小値と仮想ノード次数最大値が同じであるか否かを判定する。同じである場合には、ステップ180に移行し、異なる場合は、ステップ130に移行する。   Step 120) The virtual node degree determination unit 30 reads the virtual node list in the virtual node list storage unit 20, and determines whether or not the minimum value of the virtual node order and the maximum value of the virtual node degree in the virtual node list are the same. To do. If they are the same, the process proceeds to step 180, and if they are different, the process proceeds to step 130.

ステップ130) 仮想ノード次数判定部30は、次に、仮想ノードリストの仮想ノード度次数の最小値が"1"、"2"、または、それ以外の高次数であるかを判定し、次数=1である場合はステップ140に移行し、次数=2である場合はステップ150に移行し、次数=高次数である場合にはステップ160に移行する。   Step 130) Next, the virtual node degree determination unit 30 determines whether the minimum value of the virtual node degree in the virtual node list is “1”, “2”, or any other high order, and the order = If it is 1, the process proceeds to step 140. If the order = 2, the process proceeds to step 150. If the order = the high order, the process proceeds to step 160.

ステップ140) 次数1仮想ノード簡約処理部40が図5に示す処理を行う。   Step 140) The degree-1 virtual node reduction processing unit 40 performs the processing shown in FIG.

ステップ150) 次数2仮想ノード簡約処理部50が、図11に示す処理を行う。   Step 150) The degree-2 virtual node reduction processing unit 50 performs the processing shown in FIG.

ステップ170) 高次数仮想ノード簡約処理部60が、図17に示す処理を行なう。   Step 170) The high-order virtual node reduction processing unit 60 performs the processing shown in FIG.

ステップ180) フルメッシュ処理部70が、図18に示す処理を行なう。   Step 180) The full mesh processing unit 70 performs the processing shown in FIG.

<次数1仮想ノード簡約処理部40>
次数1仮想ノード簡約処理部40は、Tree、Line、Starとなる誘導部分グラフを簡約する。
<Order 1 virtual node reduction processing unit 40>
The degree 1 virtual node reduction processing unit 40 reduces the induced subgraphs to be Tree, Line, and Star.

図7は、本発明の一実施の形態における次数1誘導部分グラフ簡約処理部の全体のフローチャートである。   FIG. 7 is an overall flowchart of the degree 1 induction subgraph reduction processing unit according to the embodiment of the present invention.

ステップ141) まず、次数1仮想ノード簡約処理部40は、図8に示す簡約対象の誘導部分グラフの根(以下、Tree-root、図中T)とする。   Step 141) First, the degree-1 virtual node reduction processing unit 40 sets the root of the reduction subgraph to be reduced shown in FIG. 8 (hereinafter, Tree-root, T in the figure).

1) 次数1の仮想ノードを取り除いて次数2以上となる部分(仮想ネットワークのCycle構造箇所)を取り出す。   1) Remove the virtual node of degree 1 and take out the part (cycle structure part of the virtual network) that becomes degree 2 or higher.

2) 取り出された仮想ノードにTree、Line、Starのいずれかの誘導部分グラフが接続されている場合、その仮想ノードはTree-rootとなる。   2) If a derived subgraph of Tree, Line, or Star is connected to the extracted virtual node, that virtual node becomes Tree-root.

ステップ142) 次数1仮想ノード簡約処理部140は、非特許文献1の技術によって簡約対象の誘導部分グラフのそれぞれにおいて、最小コストを与える物理ノード配置の組を計算する。詳細は後述する。   Step 142) The degree 1 virtual node reduction processing unit 140 calculates a set of physical node arrangements that give the minimum cost in each of the induced subgraphs to be reduced by the technique of Non-Patent Document 1. Details will be described later.

ステップ143) 簡約対象の誘導部分グラフをTree-rootによって置き換える。   Step 143) The induced subgraph to be reduced is replaced by Tree-root.

図9の例では、v5をTree-rootとし、Tree-root(v5)を根として最小コストを与える物理ノード配置の組を計算する。Tree-rootへの割り当ての候補の物理ノードに対する最小コスト(図7のv5の値)を一次元配列(v5')として記憶する。   In the example of FIG. 9, a set of physical node arrangements that gives a minimum cost with v5 as Tree-root and Tree-root (v5) as a root is calculated. The minimum cost (value of v5 in FIG. 7) for the physical node that is a candidate for assignment to the tree-root is stored as a one-dimensional array (v5 ′).

上記のステップ141の処理を詳細に説明する。   The process of step 141 will be described in detail.

図10は、本発明の一実施の形態における次数1誘導部分グラフの簡約におけるTree-root判定処理のフローチャートである。   FIG. 10 is a flowchart of the tree-root determination process in the reduction of the degree 1 induction subgraph according to the embodiment of the present invention.

ステップ1411) 次数1仮想ノード簡約処理部140は、グラフを複製(複製グラフ)し、何らかの記憶手段(例えばメモリ80)に格納する。   Step 1411) The degree 1 virtual node reduction processing unit 140 duplicates the graph (duplicated graph) and stores it in some storage means (for example, the memory 80).

ステップ1412) 仮想ノードリスト記憶部20の仮想ノードリストを読み込んで複製し、メモリ(図示せず)に格納する。   Step 1412) The virtual node list in the virtual node list storage unit 20 is read and duplicated and stored in a memory (not shown).

ステップ1413) 仮想ノードリストの複製(複製リスト)の仮想ノードの次数の最小値が0,1,または、2以上であるかを判断する。1である場合はステップ1414に移行し、0である場合はステップ1418に移行し、2以上である場合はステップ1419に移行する。   Step 1413) It is determined whether or not the minimum value of the degree of the virtual node in the replica of the virtual node list (replication list) is 0, 1, or 2 or more. If it is 1, the process proceeds to step 1414. If it is 0, the process proceeds to step 1418. If it is 2, the process proceeds to step 1419.

ステップ1414) 複製リストの仮想ノードの次数の最小値=1である場合は、複製リストから次数1の仮想ノードを一つ取り出してvとする。   Step 1414) When the minimum value of the degree of the virtual node in the replication list = 1, one virtual node of degree 1 is extracted from the replication list and set as v.

ステップ1415) vに隣接する仮想ノードを複製リストにてマークする。   Step 1415) Mark the virtual node adjacent to v in the replication list.

ステップ1416)複製グラフからvを削除する。   Step 1416) Delete v from the duplicate graph.

ステップ1517) 複製リストからvを削除し、ステップ1413の処理に戻る。   Step 1517) Delete v from the replication list and return to the processing of Step 1413.

ステップ1418) 複製リストの仮想ノードの次数の最小値=1である場合は、複製リストに含まれる仮想ノードをTree-rootと判定し、図6の処理に移行する。   Step 1418) When the minimum value of the degree of the virtual node in the replication list = 1, the virtual node included in the replication list is determined to be Tree-root, and the process proceeds to FIG.

ステップ1419) 複製リストの仮想ノードの次数の最小値≧2である場合は、複製リストに残った仮想ノードでマークされたものをTree-rootと判定し、図6の処理に移行する。   Step 1419) If the minimum value of the degree of the virtual node in the replication list is ≧ 2, the virtual node remaining in the replication list is determined to be Tree-root, and the process proceeds to FIG.

次に、次数2仮想ノード簡約処理部50及び図6のステップ150の次数2誘導部分グラフの簡約処理について説明する。   Next, the degree 2 virtual node reduction processing unit 50 and the degree 2 induction subgraph reduction process in step 150 of FIG. 6 will be described.

図11は、本発明の一実施の形態における次数2誘導部分グラフの簡約処理のフローチャートである。   FIG. 11 is a flowchart of the reduction process of the degree 2 induction subgraph according to the embodiment of the present invention.

ステップ151) 次数2仮想ノード簡約処理部50は、仮想ノードリスト記憶部20から仮想ノードリストを読み出し、複製してメモリ(図示せず)に格納する。   Step 151) The degree-2 virtual node reduction processing unit 50 reads the virtual node list from the virtual node list storage unit 20, duplicates it, and stores it in a memory (not shown).

ステップ152) 複製リストから次数2の仮想ノードを任意に一つ選択してvとする。   Step 152) One virtual node of degree 2 is arbitrarily selected from the replication list and set as v.

ステップ153) vに隣接する二つの仮想ノードのうち一方をv'もう一方をv"とする。   Step 153) One of the two virtual nodes adjacent to v is v ′ and the other is v ″.

ステップ154) 複製リストのv、v'、v"をマークする。   Step 154) Mark v, v ', v "in the replication list.

ステップ155) 上記のv'の次数について、v'の次数が2、または、v'の次数が3以上であるかを判定する。v'=2の場合はステップ156に移行し、v'≧3である場合はステップ161に移行する。   Step 155) For the order of v ′, it is determined whether the order of v ′ is 2 or the order of v ′ is 3 or more. When v ′ = 2, the process proceeds to step 156, and when v ′ ≧ 3, the process proceeds to step 161.

ステップ156) v'=2の場合は、v'の隣接可能ノードを新たにv'とする。   Step 156) When v ′ = 2, the adjacent node of v ′ is newly set as v ′.

ステップ157) 複製リストにおいてv'をマークする。   Step 157) Mark v ′ in the duplicate list.

ステップ158) v'とv"の次数が等しいか(v'=v")を判定する。v'=v"であればステップ159に移行し、v'≠v"であればステップ155に戻る。   Step 158) It is determined whether the orders of v ′ and v ″ are equal (v ′ = v ″). If v ′ = v ″, the process proceeds to step 159. If v ′ ≠ v ″, the process returns to step 155.

ステップ159) v'をuとする。   Step 159) Let v ′ be u.

ステップ160) 次数3以上の仮想ノードが一つ存在するか、もしくは、存在Cycle構造の簡約処理を行い、ステップ167に移行する。詳細については、図13で説明する。   Step 160) If there is one virtual node of degree 3 or higher, or reduction processing of the existing Cycle structure is performed, and the process proceeds to Step 167. Details will be described with reference to FIG.

ステップ161) ステップ155において、v'の次数が3以上の場合(v'≧3)は、v"の次数が2(v"=2)であるか3以上(v"≧3)であるかを判定し、v"=2の場合はステップ162に移行し、そうでない場合はステップ165に移行する。   Step 161) In step 155, if the order of v ′ is 3 or more (v ′ ≧ 3), is the order of v ″ 2 (v ″ = 2) or 3 or more (v ″ ≧ 3)? If v ″ = 2, the process proceeds to step 162; otherwise, the process proceeds to step 165.

ステップ162) v"=2の場合は、v"の隣接仮想ノードを新たにv"とする。   Step 162) When v ″ = 2, the adjacent virtual node of v ″ is newly set as v ″.

ステップ163) 複製リストにてv"をマークする。   Step 163) Mark v ″ in the replication list.

ステップ164) v'の次数とv"の次数が等しいか(v'=v")を判定し、v'=v"であれば、ステップ159に移行し、v'≠v"である場合はステップ161に戻る。   Step 164) It is determined whether the order of v ′ and the order of v ″ are equal (v ′ = v ″). If v ′ = v ″, the process proceeds to Step 159. If v ′ ≠ v ″, Return to step 161.

ステップ165) ステップ161において、v"の次数が3以上の場合は、v'とv"をそれぞれ、u1、u2とし、ステップ166に移行する。   Step 165) When the order of v ″ is 3 or more in Step 161, v ′ and v ″ are set to u1 and u2, respectively, and the process proceeds to Step 166.

ステップ166) 次数が3以上の仮想ノードが2つ以上存在するCycle構造の簡約処理を行い、ステップ167に移行する。   Step 166) Perform reduction processing of the Cycle structure in which there are two or more virtual nodes having an order of 3 or more, and proceed to Step 167.

ステップ167) メモリ上の仮想ノードのリストから次数2の計算済み仮想ノードを削除する。   Step 167) The calculated virtual node of degree 2 is deleted from the list of virtual nodes on the memory.

上記のステップ160の次数2部分の簡約を行うにあたり、次数3以上の仮想ノードが一つ存在するか、もしくは、存在しないCycle構造の簡約について図12に沿って説明する。   In performing the reduction of the order 2 part of the above step 160, the reduction of the cycle structure in which one virtual node of order 3 or higher exists or does not exist will be described with reference to FIG.

1) 次数3以上の仮想ノードが一つ存在するか、もしくは、存在しないCycle構造において、次数3以上の仮想ノードが一つ存在する場合は、その仮想ノードを起点仮想ノードとし、存在しなければ任意の仮想ノードを起点仮想ノードとする。図12の例ではv1を起点仮想ノードとする。   1) If there is one virtual node of degree 3 or higher, or there is one virtual node of degree 3 or higher in a non-existing Cycle structure, that virtual node must be the starting virtual node and must not exist An arbitrary virtual node is set as a starting virtual node. In the example of FIG. 12, v1 is the starting virtual node.

2) 起点仮想ノードへ割り当てる物理ノードを一つ選択する。図12の例では、p1またはp6を選択する。   2) Select one physical node to be assigned to the origin virtual node. In the example of FIG. 12, p1 or p6 is selected.

3) 起点仮想ノードから2つの方路のうち任意の方路を選び、起点仮想ノードを起点とする周回路について、非特許文献1のアルゴリズムにより最小コストを与える物理ノード配置の組を計算する。   3) An arbitrary route is selected from two routes from the starting virtual node, and a set of physical node arrangements that gives the minimum cost is calculated by the algorithm of Non-Patent Document 1 for the peripheral circuit starting from the starting virtual node.

4) 上記の2)、3)を起点仮想ノードの割り当て候補となる全ての物理ノードについて行う。   4) Perform 2) and 3) above for all physical nodes that are candidates for assignment of the starting virtual node.

5) 起点仮想ノードへの割り当て候補の物理ノードに対する最小コストを1次元配列として記憶する。   5) The minimum cost for a physical node that is a candidate for assignment to the origin virtual node is stored as a one-dimensional array.

図13は、本発明の一実施の形態における図11のステップ160の詳細フローチャートであり、次数2誘導部分グラフの簡約処理において、次数3以上の仮想ノードが一つ存在するか、もしくは、存在しないCycle構造の簡約処理を示す。   FIG. 13 is a detailed flowchart of step 160 in FIG. 11 according to the embodiment of the present invention. In the simplification process of the degree 2 induction subgraph, there is one or more virtual nodes of degree 3 or higher. The reduction processing of Cycle structure is shown.

ステップ1601) 次数2仮想ノード簡約処理部50は、複製リストにてマークされた仮想ノードからなる誘導部分グラフをHとする。   Step 1601) The degree-2 virtual node reduction processing unit 50 sets H as a guidance subgraph composed of virtual nodes marked in the replication list.

ステップ1602) ステップ159におけるuへの配置候補となる物理ノードから配置計算がなされていないものを一つ選択する。   Step 1602) From the physical nodes that are the placement candidates for u in Step 159, select one that has not been subjected to placement calculation.

ステップ1603) uから2つの方路のうち任意の方路を選ぶ。   Step 1603) An arbitrary route is selected from the two routes from u.

ステップ1604) uを起点とする誘導部分グラフHの周回路について、非特許文献1のアルゴリズムにより、最小コストを与える物理ノード配置の組を計算する。   Step 1604) For the peripheral circuit of the induction subgraph H starting from u, a set of physical node arrangements that gives the minimum cost is calculated by the algorithm of Non-Patent Document 1.

ステップ1605) uへの配置候補となる物理ノードが全て配置計算済みかを確認し、計算が済んでいない場合は、ステップ1602に戻り、計算済みの場合はステップ1606に移行する。   Step 1605) It is confirmed whether or not all the physical nodes that are the placement candidates for u have been calculated. If the calculation has not been completed, the process returns to Step 1602, and if it has been calculated, the process proceeds to Step 1606.

ステップ1606) uへの物理ノード配置の組に対する最小コストを2次元配列としてメモリ(図示せず)に記憶する。   Step 1606) The minimum cost for the set of physical node placements on u is stored in a memory (not shown) as a two-dimensional array.

上記の次数2誘導部分グラフの簡約処理における、次数3以上の仮想ノードが2つ以上存在するCycle構造の簡約について、図14にその例を示す。なお、同図中の"*"はコスト未決定を示している。   FIG. 14 shows an example of the reduction of the Cycle structure in which there are two or more virtual nodes of degree 3 or more in the reduction process of the degree 2 induction subgraph. In the figure, “*” indicates that the cost has not been determined.

1) 次数3以上の仮想ノードが2つ以上存在するCycle構造において、次数2の仮想ノードのLineの両端点となる次数3以上の仮想ノードを2つそれぞれ起点仮想ノード1と起点仮想ノード2とする。   1) In a Cycle structure in which there are two or more virtual nodes of degree 3 or more, two virtual nodes of degree 3 or more that are the two end points of the line of the virtual node of degree 2 are the starting virtual node 1 and the starting virtual node 2, respectively. To do.

2) 起点仮想ノード1への配置候補となる物理ノード全てに対して行う。   2) Perform for all physical nodes that are candidates for placement in the origin virtual node 1.

3) 2)を起点仮想ノード1への配置候補となる物理ノード全てに対して行う。   3) Perform 2) for all physical nodes that are candidates for placement in the origin virtual node 1.

4) 起点仮想ノード1と起点仮想ノード2への配置物理ノードの組に対する最小コストを2次元配列として、メモリ80の2次元配列記憶領域に記憶する。   4) The minimum cost for the set of physical nodes placed at the origin virtual node 1 and the origin virtual node 2 is stored in the two-dimensional array storage area of the memory 80 as a two-dimensional array.

次に、図13における、ステップ1604の次数2誘導部分グラフの簡約において、次数3以上の仮想ノードが2つ以上存在するCycle構造の簡約処理において、2次元配列領域に記憶された2次元配列を用いた配置計算は、図15に示すように、物理ノード配置の組に対するコストを計算するときにおいて、物理ノード間を直接結んだ時のコストの代わりに2次元配列記憶部55に記憶された2次元配列を用いる。   Next, in the simplification of the Cycle structure in which there are two or more virtual nodes of degree 3 or more in the simplification of the degree 2 induction subgraph of step 1604 in FIG. 13, the two-dimensional array stored in the two-dimensional array region is reduced. As shown in FIG. 15, the used layout calculation uses 2 stored in the two-dimensional array storage unit 55 instead of the cost when the physical nodes are directly connected when calculating the cost for the physical node layout set. Use a dimensional array.

図16は、本発明の一実施の形態における図11のステップ166の詳細フローチャートであり、次数2誘導部分グラフ簡約処理において、次数3以上の仮想ノードが2つ以上存在するCycle構造の簡約を行うものである。   FIG. 16 is a detailed flowchart of step 166 of FIG. 11 according to the embodiment of the present invention. In the reduction process of degree 2 induction subgraph, reduction of the Cycle structure in which two or more virtual nodes of degree 3 or more exist is performed. Is.

ステップ1661) 複製リストにてマークされた仮想ノードからなる誘導部分グラフをHとする。   Step 1661) Let H be a guidance subgraph consisting of virtual nodes marked in the replication list.

ステップ1662) u1への配置候補となる物理ノードから配置計算がなされていないものを一つ選択する。   Step 1662) From the physical nodes that are the placement candidates for u1, one that has not been subjected to placement calculation is selected.

ステップ1663) 誘導部分グラフHにおけるu1からu2に向かう方路について、非特許文献1のアルゴリズムにより、最小コストを与える物理ノード配置の組を計算する。   Step 1663) For the route from u1 to u2 in the guidance subgraph H, a set of physical node arrangements that gives the minimum cost is calculated by the algorithm of Non-Patent Document 1.

ステップ1664) u1への配置候補となる物理ノードの組に対する最小コストを2次元配列としてメモリ80の2次元配列記憶領域に記憶する。   Step 1664) The minimum cost for the set of physical nodes that are candidates for placement in u1 is stored in the two-dimensional array storage area of the memory 80 as a two-dimensional array.

次に、図6のステップ120において、仮想ノードリストの仮想ノード次数の最小値が仮想ノード次数の最大値と異なり、かつ、仮想ノードリストの仮想ノード次数の最小値が=3である場合に高時点仮想ノード簡約処理部60が実行するステップ170の処理について説明する。   Next, in step 120 of FIG. 6, the minimum value of the virtual node order in the virtual node list is different from the maximum value of the virtual node order and the minimum value of the virtual node order in the virtual node list is = 3. The process of step 170 executed by the point-in-time virtual node reduction processing unit 60 will be described.

図17は、本発明の一実施の形態における図6のステップ170の詳細処理(次数Dが3以上(高次)の非フルメッシュ構造の誘導部分グラフの簡約処理)を示す。   FIG. 17 shows detailed processing (reduction processing of a guidance subgraph of a non-full mesh structure having an order D of 3 or higher (high order)) in step 170 of FIG. 6 in one embodiment of the present invention.

ステップ120において、仮想ノードリストの仮想ノード次数の最小値と仮想ノードの次数の最大値が等しく、次数(D)が3以上の場合の誘導部分グラフの簡約処理は以下のように行う。   In step 120, when the minimum value of the virtual node order in the virtual node list is equal to the maximum value of the virtual node order and the degree (D) is 3 or more, the reduction process of the induced subgraph is performed as follows.

1) 最低次数Dの仮想ノード(図17の例では、例えば、v1)を簡約仮想ノードとして一つ選ぶ。   1) One virtual node of the lowest order D (for example, v1 in the example of FIG. 17) is selected as a reduced virtual node.

2) 簡約仮想ノードの接続先仮想ノード(v2,v3,v4)から物理ノード配置の組を一つ選び、そのときに最小コストを与える簡約仮想ノードの物理ノードを一つ選ぶ。   2) Select one physical node layout set from the virtual nodes (v2, v3, v4) to which the reduced virtual node is connected, and then select one reduced virtual node physical node that gives the minimum cost.

3) 2)を全ての物理ノード配置の組にて行い、それぞれの組に対するコストをメモリ80のD次元配列記憶領域に格納する。図17の例では、v2とv3とv4の物理ノード配置を決定するとv1の物理ノード配置のうち最小コストを与えるものが決定するので,そのときのコストを3次元配列として例えば、C[v2=p1; v3=p2; v4=p3]=3をD時点配列記憶部65に記憶する。   3) 2) is performed for all sets of physical node arrangements, and the cost for each set is stored in the D-dimensional array storage area of the memory 80. In the example of FIG. 17, when the physical node arrangement of v2, v3, and v4 is determined, the physical node arrangement of v1 that gives the minimum cost is determined, and the cost at that time is set as a three-dimensional array, for example, C [v2 = p1; v3 = p2; v4 = p3] = 3 is stored in the D time point array storage unit 65.

次に、図6のステップ120において、仮想ノードリストの仮想次数ノードの最小値と仮想ノード次数の最大値が等しい場合に実行されるフルメッシュ処理について説明する。   Next, the full mesh process executed when the minimum value of the virtual order node in the virtual node list is equal to the maximum value of the virtual node order in step 120 of FIG. 6 will be described.

図18は、本発明の一実施の形態における図6のステップ180の詳細処理であり、次数Dが3以上のフルメッシュ構造の誘導部分グラフの簡約処理(フルメッシュ処理)の例を示す。   FIG. 18 is a detailed process of step 180 of FIG. 6 according to the embodiment of the present invention, and shows an example of a reduction process (full mesh process) of a guidance subgraph having a full mesh structure of degree D of 3 or more.

当該ケースは、仮想ネットワークが降るメッシュ構造となる場合、もしくは仮想ネットワークの簡約を繰り返して現れた誘導部分グラフがフルメッシュ構造となる場合の簡約法である。   This case is a reduction method in the case where the virtual network has a falling mesh structure, or in the case where a guidance subgraph that appears by repeatedly reducing the virtual network has a full mesh structure.

フルメッシュ処理部70は、配置を行う仮想ネットワークの仮想ノードを一つ選び、その仮想ノードを中心とするStar構造とみなして、非特許文献1の配置アルゴリズムを適用して最小コストを与える物理ノード配置の組を算出する。同様に他の全ての仮想ノードを中心とするStar構造に対して、非特許文献1の配置アルゴリズムを適用して最小コストを与える物理ノード配置の組を算出し、各仮想ノードを中心とするStar構造に対する最小コストを与える物理ノード配置の組によって与えられる最小コストをそれぞれ比較して、それらの最小コストのうち最も小さい組が、当該仮想ネットワークの最小コストを与える物理ノード配置の組となる。   The full mesh processing unit 70 selects one virtual node of the virtual network to be placed, regards it as a Star structure centered on the virtual node, and applies the placement algorithm of Non-Patent Document 1 to give the minimum cost A set of placement is calculated. Similarly, for a Star structure centered on all other virtual nodes, the placement algorithm of Non-Patent Document 1 is applied to calculate a set of physical node placements that gives the minimum cost, and Stars centered on each virtual node The minimum costs given by the set of physical node arrangements that give the minimum cost to the structure are respectively compared, and the smallest set among the minimum costs becomes the set of physical node arrangements that gives the minimum cost of the virtual network.

なお、このようにして簡約を繰り返してフルメッシュ構造となる仮想ネットワークをStar構造とみなした場合のスパニング部分(図18の点線部分)のコストを計算せずともフルメッシュの最小コストを保証することができる。この場合の計算量はO(|VP|2|EL|)となる。つまり、仮想ノード数を| VL |として、各Star構造の計算量がO((| VL |−1)|VP|2)であり、それを|VL|回繰り返すため、
O(|VL|(|VL|−1)|VP|2)=O(2((|VL|(|VL|−1))/2)|VP|2)=O(2|EL||VP|2)=O(|EL||VP|2
となる。ただし、フルメッシュにおいて|VL|(|VL|−1))/2=|EL|となることを用いた。
In addition, the minimum cost of the full mesh is guaranteed without calculating the cost of the spanning portion (dotted line portion in FIG. 18) when the virtual network having the full mesh structure is regarded as the Star structure by repeating the simplification in this way. Can do. The amount of calculation in this case is O (| V P | 2 | E L |). In other words, assuming that the number of virtual nodes is | V L |, the computation amount of each Star structure is O ((| V L | −1) | V P | 2 ), and it is repeated | V L |
O (| V L | (| V L | −1) | V P | 2 ) = O (2 ((| V L | (| V L | −1)) / 2) | V P | 2 ) = O (2 | E L || V P | 2 ) = O (| E L || V P | 2 )
It becomes. However, it was used that | V L | (| V L | −1)) / 2 = | E L | in the full mesh.

図18において、フルメッシュ構造の最小コストを与える物理ノード配置の組を求める場合、以下の処理を行う。以下では、図18(A)に示す仮想ネットワーク、同図(B)に示す物理ノードを用いるものとする。   In FIG. 18, when obtaining a set of physical node arrangements that gives the minimum cost of the full mesh structure, the following processing is performed. In the following, the virtual network shown in FIG. 18A and the physical node shown in FIG. 18B are used.

1) 図18(A)の各仮想ノードを中心とするStar構造とみなして、非特許文献1の配置アルゴリズムを適用し、最小コストを与える物理ノード配置の組を計算する。   1) Considering the Star structure centered on each virtual node in FIG. 18A, the placement algorithm of Non-Patent Document 1 is applied to calculate a physical node placement set that gives the minimum cost.

2) 図18(B)の各Star構造で算出した最小コスト同士で最小なものを与える物理ノード配置の組(図18(B)の例では、Star構造3にてコストが12となる物理ノード配置の組)がフルメッシュ構造の最小コストを与える物理ノード配置の組となるのでそれを計算結果としてメモリ80のフルメッシュ記憶領域に格納する。   2) A set of physical node arrangements that gives the smallest among the minimum costs calculated in each Star structure of FIG. 18B (in the example of FIG. 18B, the physical node whose cost is 12 in the Star structure 3) The arrangement set) is a physical node arrangement set that gives the minimum cost of the full mesh structure, and is stored in the full mesh storage area of the memory 80 as a calculation result.

なお、図5に示す仮想ネットワーク配置装置の構成要素の動作をプログラムとして構築し、仮想ネットワーク配置装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。   Note that the operations of the components of the virtual network placement apparatus shown in FIG. 5 can be constructed as a program, installed in a computer used as the virtual network placement apparatus, executed, or distributed 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.

10 仮想ノードリスト作成部
20 仮想ノードリスト記憶部
30 仮想ノード次数判定部
40 次数1仮想ノード簡約処理部
50 次数2仮想ノード簡約処理部
60 高次数仮想ノード簡約処理部
70 フルメッシュ処理部
80 メモリ
DESCRIPTION OF SYMBOLS 10 Virtual node list preparation part 20 Virtual node list memory | storage part 30 Virtual node degree determination part 40 Order 1 virtual node reduction process part 50 Order 2 virtual node reduction process part 60 High order virtual node reduction process part 70 Full mesh process part 80 Memory

本発明は、仮想ネットワークの物理ネットワークへの配置装置及び方法に係り、特に、仮想ネットワークの性能条件が与えられ、当該性能条件を満たす物理資源の組が複数存在する場合に、物理資源の使用量、もしくは物理資源を使用する際の費用(コスト)が最小となる組を選択するための仮想ネットワークの物理ネットワークへの配置装置及び方法に関する。 The present invention relates to a deployment device and method for virtual networks physical network, in particular, given the performance conditions of the virtual network, if the set of physical resources to meet the performance requirements are more present, the amount of physical resource The present invention also relates to an apparatus and a method for placing a virtual network on a physical network for selecting a set that minimizes the cost (cost) of using physical resources.

一態様によれば、仮想ネットワークの性能条件が与えられ、該性能条件を満たす物理ノードと物理リンクの組が複数存在する場合に、該物理ノードと該物理リンクのコストが最小となる組を選択する仮想ネットワークの物理ネットワークへの配置装置であって、
Cycle構造を有する仮想ネットワークの仮想ノードのリスト(仮想ノードリスト)を格納した仮想ノードリスト記憶手段と、
前記仮想ノードリストを読み出して、前記仮想ネットワークを低次、高次の誘導部分グラフに分割するグラフ分割手段と、
低次の誘導部分グラフから先に配置計算を行う簡約処理手段と、
を有し、
前記簡約処理手段は、
複数の仮想ノードからなる誘導部分グラフHと、該誘導部分グラフHを包含する誘導部分グラフKを既存の方法により配置計算し、該誘導部分グラフHの物理ノードへの配置の組Zが、該誘導部分グラフKから該誘導部分グラフHを除いた誘導部分グラフの物理ノードへの配置のうち、最小コストを与える組Yを決定する際に、該誘導部分グラフKを該誘導部分グラフHに置き換える手段を含む仮想ネットワークの物理ネットワークへの配置装置が提供される。
According to one aspect, given performance requirements of the virtual network, if the set of physical nodes and physical links satisfying the performance requirements there are a plurality, selecting a set of the physical node and the cost of the physical link is a minimum An arrangement device for a virtual network to a physical network,
A virtual node list storage means for storing a list of virtual nodes (virtual node list) of a virtual network having a Cycle structure;
A graph dividing means for reading out the virtual node list and dividing the virtual network into low-order and high-order guided subgraphs;
A reduction processing means for calculating the arrangement first from the low-order induction subgraph,
Have
The reduction processing means includes:
An induction subgraph H composed of a plurality of virtual nodes and an induction subgraph K including the induction subgraph H are arranged and calculated by an existing method, and a set Z of arrangements of the induction subgraph H to physical nodes When determining the set Y that gives the minimum cost among the arrangements of the induced subgraphs excluding the induced subgraph H from the induced subgraph K to the physical nodes, the induced subgraph K is replaced with the induced subgraph H. An apparatus for placing a virtual network on a physical network including means is provided.

Claims (8)

仮想ネットワークの性能条件が与えられ、該要件を満たす物理ノード配置、および、物理リンク配置の組が複数存在する場合に、該物理ノード又は該物理リンクの少なくとも一方のコストが最小となる組を選択する仮想ネットワークの物理ネットワークへの配置装置であって、
Cycle構造を有する仮想ネットワークの仮想ノードのリスト(仮想ノードリスト)を格納した仮想ノードリスト記憶手段と、
前記仮想ノードリストを読み出して、前記仮想ネットワークを最小次数に応じて誘導部分グラフに分けるグラフ分割手段と、
次数の低い(小さい)誘導部分グラフから先に配置計算を行う簡約処理手段と、
を有し、
前記簡約処理手段は、
複数の仮想ノードからなる誘導部分グラフHと、該誘導部分グラフHを包含する誘導部分グラフKを既存の方法により配置計算し、該誘導部分グラフHの物理ノードへの配置の組Zが、該誘導部分グラフKから該誘導部分グラフHを除いた誘導部分グラフの物理ノードへの配置のうち、最小コストを与える組Yを決定する際に、該誘導部分グラフKを該誘導部分グラフHに置き換える手段を含む
ことを特徴とする仮想ネットワークの物理ネットワークへの配置装置。
Given the performance conditions of a virtual network and when there are multiple sets of physical node arrangements and physical link arrangements that meet the requirements, select the set that minimizes the cost of at least one of the physical nodes or physical links An arrangement device for a virtual network to a physical network,
A virtual node list storage means for storing a list of virtual nodes (virtual node list) of a virtual network having a Cycle structure;
A graph dividing unit that reads the virtual node list and divides the virtual network into guided subgraphs according to a minimum degree;
A simplification processing means for calculating the arrangement first from a low-order (small) guidance subgraph,
Have
The reduction processing means includes:
An induction subgraph H composed of a plurality of virtual nodes and an induction subgraph K including the induction subgraph H are arranged and calculated by an existing method, and a set Z of arrangements of the induction subgraph H to physical nodes When determining the set Y that gives the minimum cost among the arrangements of the induced subgraphs excluding the induced subgraph H from the induced subgraph K to the physical nodes, the induced subgraph K is replaced with the induced subgraph H. An apparatus for placing a virtual network on a physical network, characterized by comprising:
前記簡約処理手段は、
前記仮想ノードリストの仮想ノードの次数の最小値が仮想ノードの次数の最大値と異なり、かつ、該仮想ノードリストの次数の最小値が1である場合は、Tree構造を有する誘導部分グラフ、ノードとリンクが直線的に接続されたLine構造を有する誘導部分グラフ、1つのノードに3つ以上のノードがリンクで直接接続されたStar構造を有する誘導部分グラフの簡約処理を行う第1の簡約処理手段と、
前記仮想ノードリストの仮想ノードの次数の最小値が仮想ノードの次数の最大値と異なり、かつ、該仮想ノードリストの仮想ノード次数の最小値が2である場合は、次数3以上の誘導部分グラフが一つ存在するかもしくは存在しないCycle構造の簡約処理、及び、次数3以上の仮想ノードが2つ以上存在するCycle構造の簡約処理を行う第2の簡約処理手段と、
前記仮想ノードリストの仮想ノードの次数の最小値が仮想ノードの次数の最大値と異なり、かつ、該仮想ノードリストの仮想ノード次数の最小値が3である場合には、高次数の誘導部分グラフの簡約処理を行う第3の簡約処理手段と、
前記仮想ノードリストの仮想ノードの次数の最小値が仮想ノードの次数の最大値と等しい場合は、フルメッシュ構造の誘導部分グラフの簡約を行う第4の簡約処理を行う第4の簡約処理手段と、
を含む請求項1記載の仮想ネットワークの物理ネットワークへの配置装置。
The reduction processing means includes:
When the minimum value of the order of the virtual node in the virtual node list is different from the maximum value of the order of the virtual node, and the minimum value of the order of the virtual node list is 1, a guided subgraph having a Tree structure, a node 1st reduction processing to perform reduction processing of induction subgraphs having a Star structure in which three or more nodes are directly connected to one node by links. Means,
When the minimum value of the degree of the virtual node in the virtual node list is different from the maximum value of the order of the virtual node and the minimum value of the virtual node order in the virtual node list is 2, a derived subgraph having degree 3 or more A second reduction processing means for performing a reduction process of a Cycle structure in which one or more of them exist and a reduction process of a Cycle structure in which two or more virtual nodes of degree 3 or more exist;
When the minimum value of the virtual node order in the virtual node list is different from the maximum value of the virtual node order, and the minimum value of the virtual node order in the virtual node list is 3, a high-order guided subgraph A third reduction processing means for performing the reduction processing of
Fourth reduction processing means for performing a fourth reduction process for reducing a full-mesh structure derived subgraph when the minimum value of the virtual node degree in the virtual node list is equal to the maximum value of the virtual node order; ,
The apparatus for arranging a virtual network on a physical network according to claim 1.
前記第1の簡約処理手段は、
次数1の仮想ノードとその接続仮想リンクを全て取り除く操作を繰り返して残る次数2以上の仮想ノードであり、かつ、次数1の仮想ノードとその接続仮想リンクを全て取り除く操作を行う前にTreeが接続されていた仮想ノードを根とするTreeを選択し、前記配置計算により前記根の全ての候補となる物理ノードへの経路の最小コストを求め、該最小コストの物理ノードを一次元配列として記憶手段に格納する手段を含む
請求項2記載の仮想ネットワークの物理ネットワークへの配置装置。
The first reduction processing means includes:
Repeat the operation of removing all virtual nodes of order 1 and their connected virtual links, and the remaining virtual nodes of order 2 and above, and the tree is connected before performing the operation of removing all virtual nodes of order 1 and their connected virtual links A tree having a virtual node as a root is selected, a minimum cost of a path to all the candidate physical nodes of the root is obtained by the placement calculation, and the physical node having the minimum cost is stored as a one-dimensional array The apparatus for placing a virtual network on a physical network according to claim 2, further comprising means for storing in the physical network.
前記第2の簡約処理手段は、
次数3以上の仮想ノードが一つ存在するか、または、存在しないCycle構造において、
次数3以上の仮想ノードが一つ存在する場合は、該仮想ノードを起点仮想ノードとし、存在しなければ任意の仮想ノードを起点仮想ノードとし、該起点仮想ノードに割り当てる物理ノードを一つ選択する手段と、
前記起点仮想ノードから2つの方路のうち、任意の方路を選択し、該起点仮想ノードを起点とする周回路について、前記配置計算により最小コストとなる物理ノードの組を求める処理を、該起点仮想ノードの割り当て候補となる物理ノードに対して繰り返す手段と、
前記起点仮想ノードの割り当て候補の物理ノードに対する最小コストを一次元配列として記憶手段に格納する手段を含む
請求項2記載の仮想ネットワークの物理ネットワークへの配置装置。
The second reduction processing means includes:
In a Cycle structure where there is one or more virtual nodes of order 3 or higher,
If there is one virtual node of degree 3 or higher, that virtual node is set as the starting virtual node. If there is no virtual node, any virtual node is set as the starting virtual node, and one physical node assigned to the starting virtual node is selected. Means,
A process of selecting an arbitrary path from the two paths from the starting virtual node and obtaining a set of physical nodes having a minimum cost by the placement calculation for a peripheral circuit starting from the starting virtual node. Means for repeating for a physical node that is a candidate for allocation of a starting virtual node;
3. The apparatus for arranging a virtual network in a physical network according to claim 2, further comprising means for storing in a storage means a minimum cost for a physical node that is an allocation candidate of the starting virtual node as a one-dimensional array.
前記第2の簡約処理手段は、
次数3以上の仮想ノードが2つ以上存在するCycle構造において、
次数2の仮想ノードのLineの両端となる次数3以上の仮想ノード2つをそれぞれ起点仮想ノードAと起点仮想ノードBとする手段と、
前記起点仮想ノードAへの配置候補となる物理ノードを一つ選び、前記起点仮想ノードBに向かう方路について、前記配置計算により最小コストを計算する処理を該起点仮想ノードAへの配置候補となる物理ノード全てに対して行う手段と、
前記起点仮想ノードAと前記起点仮想ノードBへの物理ノード配置の組に対する最小コストを2次元配列として記憶手段に格納する手段を含む
請求項2記載の仮想ネットワークの物理ネットワークへの配置装置。
The second reduction processing means includes:
In the Cycle structure where there are two or more virtual nodes of degree 3 or more,
Means for setting two virtual nodes of degree 3 or more that are both ends of the line of the virtual node of degree 2 as the starting virtual node A and the starting virtual node B, respectively;
One physical node that is a placement candidate for the origin virtual node A is selected, and a process for calculating the minimum cost by the placement calculation for a route toward the origin virtual node B is determined as a placement candidate for the origin virtual node A. Means for all the physical nodes
3. The arrangement device for a virtual network in a physical network according to claim 2, further comprising means for storing in a storage means a minimum cost for a set of physical node arrangements on the origin virtual node A and the origin virtual node B as a two-dimensional array.
前記第3の簡約手段は、
最低次数の仮想ノードを簡約仮想ノードとして一つ選択し、該簡約仮想ノードの接続先仮想ノードから物理ノード配置の組を一つ選択し、該物理ノード配置の組から前記配置計算により最小コストを与える該簡約仮想ノードの物理ノード配置を一つ選択する処理を、全ての物理ノード配置の組に対して行い、各組に対するコストをD次元配列として記憶手段に格納する手段を含む
請求項2記載の仮想ネットワークの物理ネットワークへの配置装置。
The third reduction means includes:
One virtual node of the lowest order is selected as the reduced virtual node, one set of physical node arrangement is selected from the connection destination virtual nodes of the reduced virtual node, and the minimum cost is calculated from the set of physical node arrangement by the arrangement calculation. 3. The processing for selecting one physical node arrangement of the reduced virtual nodes to be given is performed for all sets of physical node arrangements, and the cost for each group is stored in a storage means as a D-dimensional array. A device that places a virtual network on a physical network.
前記第4の簡約手段は、
仮想ノードを一つ選択し、該仮想ノードを中心とするStar構造とみなして、前記配置計算により最小コストを与える物理ノードの組を算出する処理を全ての仮想ノードに対して行い、最小コストを|VL|個の一次元配列として記憶手段に格納する手段を含む
請求項2記載の仮想ネットワークの物理ネットワークへの配置装置。
The fourth reduction means includes:
Select one virtual node, regard it as a Star structure centered on the virtual node, perform a process of calculating a set of physical nodes that give the minimum cost by the placement calculation, and reduce the minimum cost. 3. The apparatus for placing a virtual network on a physical network according to claim 2, further comprising means for storing | V L | as a one-dimensional array in the storage means.
仮想ネットワークの性能条件が与えられ、該要件を満たす物理ノードの組が複数存在する場合に、該物理ノードのコストが最小となる組を選択する仮想ネットワークの物理ネットワークへの配置方法であって、
Cycle構造を有する仮想ネットワークの仮想ノードのリスト(仮想ノードリスト)を格納した仮想ノードリスト記憶手段と、
グラフ分割手段と、簡約処理手段と、を有する装置において、
前記グラフ分割手段が、前記仮想ノードリストを読み出して、前記仮想ネットワークを低次、高次の誘導部分グラフに分割するグラフ分割ステップと、
前記簡約処理手段が、複数の仮想ノードからなる誘導部分グラフHと、該誘導部分グラフHを包含する誘導部分グラフKを既存の方法により配置計算し、該誘導部分グラフHの物理ノードへの配置の組Zが、該誘導部分グラフKから該誘導部分グラフHを除いた誘導部分グラフの物理ノードへの配置のうち、最小コストを与える組Yを決定する際に、該誘導部分グラフKを該誘導部分グラフHに置き換える簡約処理ステップと、
を行うことを特徴とする仮想ネットワークの物理ネットワークへの配置方法。
When a performance condition of a virtual network is given and there are a plurality of sets of physical nodes that satisfy the requirement, a method of arranging a virtual network on a physical network that selects a set that minimizes the cost of the physical node,
A virtual node list storage means for storing a list of virtual nodes (virtual node list) of a virtual network having a Cycle structure;
In an apparatus having a graph dividing means and a reduction processing means,
The graph dividing means reads the virtual node list and divides the virtual network into low-order and high-order guided subgraphs; and
The reduction processing unit calculates and calculates a guidance subgraph H including a plurality of virtual nodes and a guidance subgraph K including the guidance subgraph H by an existing method, and places the guidance subgraph H on physical nodes. When determining the set Y that gives the minimum cost among the arrangements of the induced subgraphs obtained by subtracting the induced subgraph H from the induced subgraph K to the physical nodes of the induced subgraph K, the set Z A reduction processing step to replace with the guidance subgraph H;
A method for arranging a virtual network on a physical network, characterized by:
JP2013180525A 2013-08-30 2013-08-30 Apparatus and method for placing virtual network on physical network Active JP5636078B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013180525A JP5636078B1 (en) 2013-08-30 2013-08-30 Apparatus and method for placing virtual network on physical network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013180525A JP5636078B1 (en) 2013-08-30 2013-08-30 Apparatus and method for placing virtual network on physical network

Publications (2)

Publication Number Publication Date
JP5636078B1 JP5636078B1 (en) 2014-12-03
JP2015050594A true JP2015050594A (en) 2015-03-16

Family

ID=52139073

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013180525A Active JP5636078B1 (en) 2013-08-30 2013-08-30 Apparatus and method for placing virtual network on physical network

Country Status (1)

Country Link
JP (1) JP5636078B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10257076B2 (en) 2015-09-10 2019-04-09 Samsung Electronics Co., Ltd. Apparatus and method transmitting packets

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6475966B2 (en) * 2014-12-15 2019-02-27 Kddi株式会社 Network design apparatus and program

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007306135A (en) * 2006-05-09 2007-11-22 Ntt Docomo Inc Network buildup method
US20100027442A1 (en) * 2008-07-31 2010-02-04 International Business Machines Corporation Constructing scalable overlays for pub-sub with many topics: the greedy join-leave algorithm

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10257076B2 (en) 2015-09-10 2019-04-09 Samsung Electronics Co., Ltd. Apparatus and method transmitting packets

Also Published As

Publication number Publication date
JP5636078B1 (en) 2014-12-03

Similar Documents

Publication Publication Date Title
Xiang et al. Scalable maximum clique computation using mapreduce
JP6733486B2 (en) Vertex-centric service function chain formation in multi-domain networks
Zhang et al. Enhancing network robustness via shielding
US10404576B2 (en) Constrained shortest path determination in a network
US9722912B2 (en) Network stochastic cross-layer optimization for meeting traffic flow availability target at minimum cost
US20160274951A1 (en) Virtual middle box management system, virtual middle box management method, and virtual middle box management program
Censor-Hillel et al. Distributed construction of purely additive spanners
Kosowski et al. k-chordal graphs: From cops and robber to compact routing via treewidth
Fafianie et al. Speeding up dynamic programming with representative sets: An experimental evaluation of algorithms for steiner tree on tree decompositions
JP5636078B1 (en) Apparatus and method for placing virtual network on physical network
JP2016081494A (en) Method and apparatus for distributing graph data in distributed computing environment
US9391875B2 (en) Resource oriented dependency graph for network configuration
Fu et al. Cyclic-cubes: A new family of interconnection networks of even fixed-degrees
JP6044628B2 (en) Random number generation device, random number generation method, object placement device, and computer program
JP6389811B2 (en) Physical resource allocation device, physical resource allocation method, and program
Lezama et al. Routing and spectrum allocation in flexgrid optical networks using differential evolution optimization
Bampas et al. Robustness of the rotor–router mechanism
JP6874563B2 (en) Information processing system and information processing method
US11044169B2 (en) Mapping 2-dimensional meshes on 3-dimensional torus
Amiri et al. Waypoint routing in special networks
US11411855B1 (en) Computation of ranked path options in networks
JP6637911B2 (en) Network design apparatus, network design method, and network design processing program
Kamalesh et al. On the design of fault tolerant k-connected network topologies
JP5087062B2 (en) Route calculation device, route calculation method, and route calculation program
Roy et al. Effect of core ordering on application mapping onto mesh based network-on-chip design

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140922

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: 20141014

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141017

R150 Certificate of patent or registration of utility model

Ref document number: 5636078

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150