JP6084583B2 - Flow path change calculation device and flow path change calculation system - Google Patents
Flow path change calculation device and flow path change calculation system Download PDFInfo
- Publication number
- JP6084583B2 JP6084583B2 JP2014039383A JP2014039383A JP6084583B2 JP 6084583 B2 JP6084583 B2 JP 6084583B2 JP 2014039383 A JP2014039383 A JP 2014039383A JP 2014039383 A JP2014039383 A JP 2014039383A JP 6084583 B2 JP6084583 B2 JP 6084583B2
- Authority
- JP
- Japan
- Prior art keywords
- flow
- link
- information
- usage rate
- route
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
ネットワークの最大リンク使用率を低下させるために、フローの経路変更を計算するフロー経路変更計算装置およびフロー経路変更計算システムに関する。 To reduce the maximum link utilization of the network, about the flow path change computing devices and flow path changing calculation system for calculating a route change of the flow.
通信ネットワークにおいて、ルータやスイッチなどのノードからパケット転送する際の経路選択は、個々のノードに予め設定されたメトリックにしがたい、自律分散的に行われている。近年、OpenFlowなど、コントローラを用いてネットワークリソースの負荷状況を一元管理することが可能なSDN(Software Defined Network)技術が提案され、この技術を採用することにより、柔軟な経路制御の実現や設備運用、保守コスト削減が期待されている。そこで、SDN技術を用い、MPLS(Multi Protocol Label Switching)など始終点で定まる「パス」単位での経路最適化(負荷分散)を実現する経路制御技術が提案されている(非特許文献1参照)。 In a communication network, route selection when transferring a packet from a node such as a router or a switch is performed in an autonomous and distributed manner that is difficult to follow a metric set in advance for each node. In recent years, SDN (Software Defined Network) technology that can centrally manage the load status of network resources using a controller such as OpenFlow has been proposed. By adopting this technology, flexible routing control and facility operation can be realized. Maintenance cost reduction is expected. Therefore, a route control technology that realizes route optimization (load distribution) in units of “paths” determined by starting and ending points such as MPLS (Multi Protocol Label Switching) using SDN technology has been proposed (see Non-Patent Document 1). .
非特許文献1に記載の技術(経路最適化手法)では、ネットワークの一部への負荷集中(例えば、パケットロスやキュー遅延が頻繁に発生すること)を回避する手法として、フロー経路を変更しネットワーク内の最大リンク使用率を低下させる制御が行われる。なお、ここで、最大リンク使用率とは、ネットワーク内の各リンクのリンク使用率(リンクトラヒック量/リンクの最大帯域)が最も大きいリンクのリンク使用率のことをいう。
In the technique (route optimization method) described in
この最大リンク使用率を低下させるための、ネットワーク制御装置が実行する従来の経路最適化手法において、フローは、宛先アドレス(宛先IPアドレス)と送信元アドレス(送信元IPアドレス)とのペアで定義される。そして、対象となるネットワーク内の全てまたは一部のフローの経路(経路情報)とそのトラヒック量(フロートラヒック量)とを含むフロー情報や、リンクトラヒック量等のリンク情報を取得し、そのネットワークにおける最大リンク使用率を計算する。続いて、その最大リンク使用率となるリンクを通るフローから、下記のフロー選択条件(A),(B)を満たす最短経路に経路変更した場合に、最大リンク使用率が最小となるフローを選択する。 In the conventional route optimization method executed by the network control device to reduce the maximum link usage rate, a flow is defined by a pair of a destination address (destination IP address) and a source address (source IP address). Is done. Then, the flow information including all or a part of the flow (route information) and the traffic volume (flow traffic volume) in the target network and link information such as the link traffic volume are acquired, and Calculate maximum link utilization. Subsequently, when the route passing through the link having the maximum link usage rate is changed to the shortest route satisfying the following flow selection conditions (A) and (B), the flow having the minimum maximum link usage rate is selected. To do.
フロー選択条件(A):最大リンク使用率となるリンクを通らない。
フロー選択条件(B):経路変更することによりネットワーク全体の最大リンク使用率が低下する。
Flow selection condition (A): It does not pass through the link with the maximum link usage rate.
Flow selection condition (B): The maximum link usage rate of the entire network is reduced by changing the route.
なお、最大リンク使用率が最小となるフローが複数ある場合には、ランダムに選択し、フロー選択条件(A),(B)を満たすフローが存在しなくなった時点で、処理を終了する。 If there are a plurality of flows with the minimum maximum link usage rate, the flow is selected at random, and the process is terminated when there is no flow satisfying the flow selection conditions (A) and (B).
この従来の最大リンク使用率を低下させるためのフロー経路変更の制御手法について、図17を参照して詳細に説明する。 A flow path change control method for reducing the conventional maximum link usage rate will be described in detail with reference to FIG.
まず、ネットワーク制御装置は、フローの経路変更回数のパラメータ(以下、「フロー経路変更回数」とよぶ。)mを「0」に初期化(m=0)する(ステップS1)。 First, the network control device initializes a parameter (hereinafter referred to as “flow path change count”) m of a flow path change count to “0” (m = 0) (step S1).
次に、ネットワーク制御装置は、各ノード間の接続関係を示すトポロジ情報や、リンク情報、全てまたは一部のフローの経路(経路情報)とそのトラヒック量(フロートラヒック量)を含むフロー情報(全てまたは一部のフローのフロー情報)を取得する(ステップS2)。なお、リンク情報は、各リンクのコスト(距離)を示すリンクメトリック、各リンクの最大帯域、各リンクのリンクトラヒック量の情報を含む。なお、一部のフローのフロー情報とは、「リンク使用率が所定の閾値(割合)以上となるリンクを通るフロー」のみのフロー情報を意味し、一部のフローのフロー情報を用いることで、トラヒック量が少なく経路変更しても負荷分散の効果が少ないフローを予め経路変更の対象から排除し、処理時間を短縮することができる。また、ここで取得するフロー情報は、宛先アドレス(宛先IPアドレス)と送信元アドレス(送信元IPアドレス)とに基づいて定義されるフロー情報である。 Next, the network control device provides topology information indicating the connection relationship between the nodes, link information, flow information including all or part of a flow path (route information) and its traffic volume (flow traffic volume) (all Alternatively, the flow information of a part of the flow is acquired (step S2). The link information includes a link metric indicating the cost (distance) of each link, the maximum bandwidth of each link, and the link traffic amount of each link. The flow information of a part of the flow means the flow information of only “the flow through the link whose link usage rate is equal to or higher than a predetermined threshold (ratio)”, and the flow information of the part of the flow is used. In addition, a flow with a small traffic amount and a small load distribution effect even when the route is changed can be excluded from the route change target in advance, and the processing time can be shortened. The flow information acquired here is flow information defined based on a destination address (destination IP address) and a source address (source IP address).
続いて、ネットワーク制御装置は、取得したリンク情報(各リンクの最大帯域および各リンクのリンクトラヒック量)に基づき、ネットワーク内の各リンクのリンク使用率(リンクトラヒック量/リンクの最大帯域)を計算することにより、最大リンク使用率を計算する(ステップS3)。なお、この計算により、最大リンク使用率が計算されると共に、「最大リンク使用率となるリンク」が特定される。 Next, the network controller calculates the link usage rate (link traffic volume / maximum link bandwidth) of each link in the network based on the acquired link information (maximum bandwidth of each link and link traffic volume of each link). By doing so, the maximum link usage rate is calculated (step S3). By this calculation, the maximum link usage rate is calculated, and the “link having the maximum link usage rate” is specified.
そして、ネットワーク制御装置は、ステップS2において取得した全てまたは一部のフローのフロー情報の中で、最大リンク使用率となるリンクを通るフローに対し、前記したフロー選択条件(A)「最大リンク使用率となるリンクを通らない。」、フロー選択条件(B)「経路変更することによりネットワーク全体の最大リンク使用率が低下する。」の両方を満たすように経路変更したときの経路の最短経路と、その経路に変更した場合の最大リンク使用率を計算する(ステップS4)。 Then, the network control device sets the above flow selection condition (A) “maximum link usage” for the flow passing through the link having the maximum link usage rate in the flow information of all or some of the flows acquired in step S2. The shortest route of the route when the route is changed so as to satisfy both the flow selection condition (B) “the maximum link usage rate of the entire network is reduced by changing the route”. Then, the maximum link usage rate when the route is changed is calculated (step S4).
次に、ネットワーク制御装置は、ステップS4の結果、フロー選択条件(A),(B)の両方を満たすフローとその経路が存在するか否かを判定する(ステップS5)。ネットワーク制御装置は、フロー選択条件(A),(B)の両方を満たすフローとその経路が1つ以上存在する場合には(ステップS5→Yes)、次のステップS6に進む。一方、フロー選択条件(A),(B)の両方を満たすフローとその経路が存在しない場合には(ステップS5→No)、ステップS8に進む。 Next, as a result of Step S4, the network control device determines whether or not there is a flow that satisfies both the flow selection conditions (A) and (B) and its route (Step S5). The network control device proceeds to the next step S6 when there is at least one flow that satisfies both of the flow selection conditions (A) and (B) and one or more routes (step S5 → Yes). On the other hand, if there is no flow satisfying both the flow selection conditions (A) and (B) and its route (step S5 → No), the process proceeds to step S8.
ステップS6において、ネットワーク制御装置は、経路変更の対象となり得るフローが1つ以上存在することから、フロー経路変更回数mに「1」を追加する(m=m+1)。 In step S6, the network control apparatus adds “1” to the flow path change count m because there is one or more flows that can be the target of path change (m = m + 1).
続いて、ネットワーク制御装置は、ステップS4において計算した1つ以上のフローの中で、フローをその経路に変更した場合、つまり、計算したフローそれぞれを変更先経路に変更した場合における最大リンク使用率が最小値となるフローとその変更先経路を抽出する(ステップS7)。これにより、フロー経路変更回数m(m=1,2,…)において経路変更の対象となるフローとその変更先経路、その経路に変更した場合の最大リンク使用率(および最大リンク使用率となるリンク)が計算される。
なお、ネットワーク制御装置は、抽出したフローとその変更先経路の組み合わせが1つの場合は、その抽出したフローと変更先経路の組み合わせを、その時点のフロー経路変更回数m(m回目の経路変更時)における変更対象となるフローとその変更先経路として決定する。また、ネットワーク制御装置は、抽出したフローとその変更先経路の組み合わせが複数ある場合には、その時点のフロー経路変更回数m(m回目の経路変更時)における変更対象となるフローとその変更先経路との組み合わせをその複数の中からランダムに1つ決定する。
Subsequently, the network control apparatus, when the flow is changed to the route among the one or more flows calculated in step S4, that is, the maximum link usage rate when each calculated flow is changed to the change destination route. The flow having the minimum value and the change destination route are extracted (step S7). As a result, in the flow path change count m (m = 1, 2,...), The flow to be changed, its change destination route, and the maximum link usage rate (and the maximum link usage rate when changing to that route) are obtained. Link) is calculated.
When there is only one combination of the extracted flow and its change destination route, the network control apparatus determines the combination of the extracted flow and the change destination route as the flow route change count m at that time (when the m-th route change). ) To be changed and the change destination route. In addition, when there are a plurality of combinations of the extracted flow and its change destination route, the network control device can change the flow to be changed and the change destination in the flow route change count m (at the m-th route change) at that time. A combination with a route is randomly determined from the plurality.
次に、ネットワーク制御装置は、ステップS3に戻り、ステップS7で決定したフローが、最大リンク使用率が最小値となる変更先経路に変更されたものとして、最大リンク使用率を(再)計算する。
そして、ネットワーク制御装置は、前記したステップS4の処理を再度行い、フロー選択条件(A)、(B)の両方を満たすフローを計算し、経路変更の対象となるフローとその経路が存在するか否かの判定(ステップS5)を行う。
Next, the network control device returns to step S3, and (re) calculates the maximum link usage rate on the assumption that the flow determined in step S7 has been changed to the change destination route having the minimum maximum link usage rate. .
Then, the network control device performs the above-described processing in step S4 again, calculates a flow that satisfies both the flow selection conditions (A) and (B), and whether there is a flow to be changed and its route. It is determined whether or not (step S5).
ステップS5において、フロー選択条件(A),(B)の両方を満たすフローとその経路が存在しない場合には(ステップS5→No)、ネットワーク制御装置は、ステップS8に進む。
ステップS8において、ネットワーク制御装置は、フロー経路変更回数が各m(m=1,2,…)回での経路変更の対象となるフローとその変更先経路、フロー経路変更回数m(m=1,2,…)に相当する変更順番、最終的に経路変更を終えた経路での最大リンク使用率を出力する。
In step S5, when there is no flow satisfying both of the flow selection conditions (A) and (B) and its route (step S5 → No), the network control device proceeds to step S8.
In step S8, the network control apparatus determines the flow that is the target of the path change when the flow path change count is m (m = 1, 2,...), The change destination path, and the flow path change count m (m = 1). , 2,...), And the maximum link usage rate in the route that has finally been changed.
このように、従来の最大リンク使用率を低下させるためのフロー経路変更の制御手法においては、入力情報として、宛先アドレスと送信元アドレスとのペアで定義される全てまたは一部のフローの経路(経路情報)とそのトラヒック量(フロートラヒック量)とを含むフロー情報を取得した上で、フロー選択条件(A)、(B)の両方を満たす、つまり、最大リンク使用率となるリンクを通らず、経路変更することによりネットワーク全体の最大リンク使用率が低下するフローとその変更先経路を抽出することにより、最大リンク使用率を低下させていた。 As described above, in the conventional flow path change control method for reducing the maximum link usage rate, all or a part of the flow paths defined by the pair of the destination address and the transmission source address ( Route information) and the flow information including the traffic volume (flow traffic volume), and after satisfying both of the flow selection conditions (A) and (B), that is, not passing through the link with the maximum link usage rate The maximum link usage rate is reduced by extracting the flow that changes the maximum link usage rate of the entire network by changing the route and the change destination route.
しかしながら、SDN技術をIP網に適用する場合の経路制御にあたっては、各ノードが宛先アドレス(宛先IPアドレス)に基づいてパケット転送を行うため、従来のパス型、即ち、送信元アドレス(送信元IPアドレス)と宛先アドレス(宛先IPアドレス)とに基づく経路制御技術では、各ノードで作成する転送テーブルにおいて、1つの宛先アドレスに対し、複数の出力IF(InterFace:インタフェース)が抽出される場合があり、不整合が生じてしまうという問題があった。以下、具体的に説明する。 However, in the path control when the SDN technology is applied to the IP network, each node performs packet transfer based on the destination address (destination IP address). Therefore, the conventional path type, that is, the source address (source IP) In the routing control technology based on (address) and destination address (destination IP address), a plurality of output IFs (InterFace: interfaces) may be extracted for one destination address in the transfer table created at each node. There was a problem that inconsistency would occur. This will be specifically described below.
図18に示すように、従来の経路制御では、ノード「B」−「D」間のリンクが複数のフローにより混雑(リンク使用率が高い状態)している場合、例えば、送信元IPアドレス「p2」および宛先IPアドレス「p4」で定義されるフローの経路「B」→「D」を、経路「B」→「A」→「D」に変更することができる。この場合、ノード「A」の転送テーブル(フローテーブル)700(700a)には、送信元アドレス「p2」および宛先アドレス「p4」に対応付けて、出力IF「2」が設定され、不整合となることなく転送制御することができる。 As shown in FIG. 18, in the conventional route control, when the link between the nodes “B” and “D” is congested by a plurality of flows (in a state where the link usage rate is high), for example, the source IP address “ The route “B” → “D” of the flow defined by “p2” and the destination IP address “p4” can be changed to the route “B” → “A” → “D”. In this case, in the forwarding table (flow table) 700 (700a) of the node “A”, the output IF “2” is set in association with the transmission source address “p2” and the destination address “p4”. The transfer can be controlled without becoming.
これに対し、図19に示すように、宛先アドレス(宛先IPアドレス)に基づいてパケット転送する場合、図18を参照した説明と同様に、経路「B」→「D」を経由するフローの経路を、経路「B」→「A」→「D」に変更した場合、ノードAの転送テーブル(フローテーブル)700(700b)には、1つの宛先IPアドレス「p4」に対して、2つの出力IF「1」,「2」が設定されることになり、宛先アドレス(宛先IPアドレス)だけでは、経路を判断することができない、つまり、不整合が発生してしまう。 On the other hand, as shown in FIG. 19, when packet transfer is performed based on the destination address (destination IP address), the route of the flow via the route “B” → “D” is the same as the description with reference to FIG. Is changed from the route “B” to “A” to “D”, the node A forwarding table (flow table) 700 (700b) outputs two outputs for one destination IP address “p4”. IF “1” and “2” are set, and the route cannot be determined only by the destination address (destination IP address), that is, inconsistency occurs.
このような背景に鑑みて本発明がなされたのであり、本発明は、SDN技術をIP網に適用した場合において、フローの経路変更による負荷分散を可能とする、つまり、宛先アドレス定義フローに対して、フローの経路変更による負荷分散を可能とする、フロー経路変更計算装置およびフロー経路変更計算システムを提供することを課題とする。 The present invention has been made in view of such a background, and when the SDN technology is applied to an IP network, the present invention enables load distribution by changing the flow path, that is, for a destination address definition flow. Te, to enable load balancing rerouting of the flow, and to provide a flow path change computing devices and flow path changing computing system.
前記した課題を解決するため、請求項1に記載の発明は、複数のノードと前記複数のノード間を接続する複数のリンクとを備えるネットワーク内を流れるフローのうち、変更対象のフローに対する変更先経路を計算するフロー経路変更計算装置であって、前記フロー経路変更計算装置は、記憶部と、入力情報処理部と、最大リンク使用率計算部と、出力情報処理部と、を備え、前記入力情報処理部が、(1)前記ノード間の接続関係を示すトポロジ情報、(2)前記リンクを経由する際のコストを示すリンクメトリック、各リンクの最大帯域および各リンクのリンクトラヒック量を含むリンク情報、並びに、(3)宛先アドレスに基づき定義される前記フローの経路情報とそのフロートラヒック量を含むフロー情報、を取得して前記記憶部に記憶し、前記最大リンク使用率計算部が、前記各リンクの最大帯域および前記各リンクのリンクトラヒック量に基づき、前記ネットワーク内の各リンクのリンク使用率を計算して、最大リンク使用率および当該最大リンク使用率となるリンクを取得し、当該取得した最大リンク使用率となるリンクを通るフローの中で、(条件A)当該最大リンク使用率となるリンクを通らない、(条件B)経路変更により最大リンク使用率となるリンクを変更しない、(条件C)前記複数のノードそれぞれが備えるフローの転送テーブルにおいて、前記宛先アドレス毎に出力IF(InterFace)が一意に定まる、の全てを満たすフローの最短経路と、当該最短経路に変更した場合の最大リンク使用率とを計算し、当該最大リンク使用率が最小値となるフローを変更対象のフローとし、当該変更対象のフローとその変更先経路とを決定し、前記出力情報処理部が、前記決定された変更対象のフローとその変更先経路、および、前記計算した最大リンク使用率を出力することを特徴とするフロー経路変更計算装置とした。
In order to solve the above-described problem, the invention according to
このようにすることで、フロー経路変更計算装置は、宛先アドレスに基づき定義されたフローの経路情報とフロートラヒック量とを取得し、複数のノードそれぞれが備えるフローの転送テーブルにおいて、宛先アドレス毎に出力IFが一意に定まるように、つまり、各ノードにおいて転送テーブルの不整合が発生しないようにした上で、変更対象のフローとその変更先経路とを計算することができる。よって、宛先アドレス定義フローに対して、フローの経路変更による負荷分散を可能とする。 By doing so, the flow path change calculation device acquires the flow path information and the flow traffic amount defined based on the destination address, and for each destination address in the flow forwarding table provided in each of the plurality of nodes. The flow to be changed and its change destination route can be calculated so that the output IF is uniquely determined, that is, the transfer table is not inconsistent in each node. Therefore, it is possible to distribute the load by changing the route of the flow for the destination address definition flow.
請求項2に記載の発明は、前記最大リンク使用率となるリンクを通るフローの中で、前記(条件A)および前記(条件B)を満たす経路変更の対象となるフローが、経路変更されたものとした場合に、前記複数のノードそれぞれの前記転送テーブルにおいて、同じ前記宛先アドレスに対し、1を超える前記出力IF数が設定されるか否かを確認する整合性確認部をさらに備え、前記最大リンク使用率計算部が、前記複数のノードのうち、1を超える前記出力IF数が少なくとも1つ設定される場合には、前記出力IFが一意に定まらない場合があるとして、当該フローを前記経路変更の対象となるフローから除外し、前記複数のノードの全てにおいて、1以下の前記出力IF数が設定される場合に、前記(条件C)を満たすと判定することを特徴とする請求項1に記載のフロー経路変更計算装置とした。
According to the second aspect of the present invention, in the flow that passes through the link having the maximum link usage rate, the flow that is the target of the route change that satisfies the (condition A) and the (condition B) is changed. And a consistency check unit that checks whether or not the number of output IFs exceeding 1 is set for the same destination address in the forwarding table of each of the plurality of nodes. When at least one output IF number exceeding 1 is set among the plurality of nodes, the maximum link usage rate calculation unit determines that the output IF may not be uniquely determined, Excluding from the flow subject to path change and determining that the (condition C) is satisfied when the number of output IFs of 1 or less is set in all of the plurality of nodes. It was flow path change computing device of
このようにすることで、フロー経路変更計算装置は、同じ宛先アドレスに対し、1を超える、つまり、2以上の出力IFが転送テーブルに設定されるノードがある場合には、出力IFが一意に定まらない場合があるため、当該フローを経路変更の対象となるフローから除外することができる。よって、フロー経路変更計算装置は、(条件C)を満たした上で、変更対象のフローとその変更先経路とを計算することができる。 In this way, the flow path change calculating device uniquely outputs an output IF when there is a node that exceeds 1 for the same destination address, that is, when two or more output IFs are set in the transfer table. Since it may not be determined, the flow can be excluded from the flow whose path is changed. Therefore, the flow route change calculation device can calculate the flow to be changed and its change destination route after satisfying (Condition C).
請求項3に記載の発明は、前記最大リンク使用率となるリンクを通るフロー毎の宛先アドレスを取得し、当該フローの経路情報を参照し、前記取得した宛先アドレスへのフローが経由するか否かをノード毎に判定し、前記取得した宛先アドレスへのフローが経由するノードにおいて、前記取得した宛先アドレスのフローの転送先となるノードへ向かうリンクのみを残し、他のノードに向かうリンクを変更先経路となるリンクから除外するように、前記トポロジ情報を変更する整合性確認部をさらに備え、前記最大リンク使用率計算部が、当該変更したトポロジ情報を参照して、前記(条件A)および前記(条件B)を満たすフローの最短経路と、当該最短経路に変更した場合の最大リンク使用率を計算すること、を特徴とする請求項1に記載のフロー経路変更計算装置とした。
The invention according to
このようにすることで、フロー経路変更計算装置は、フロー毎に各ノードから出力すると不整合が発生することとなるIF(リンク)を変更先経路から予め除外することができる。よって、フロー経路変更計算装置は、各ノードにおいて、各フローの宛先アドレス毎に出力IFが一意に定まるようにした上で、(条件A)および(条件B)を満たす、変更対象のフローとその変更先経路とを計算することができる。 By doing in this way, the flow path change calculation apparatus can exclude in advance from the change destination path an IF (link) that will cause inconsistency if output from each node for each flow. Therefore, the flow path change calculation device, in each node, sets the output IF uniquely for each destination address of each flow, and then satisfies the (condition A) and (condition B) and the flow to be changed The change destination route can be calculated.
請求項4に記載の発明は、ネットワークを構成する複数のノードと接続されるコントローラと、前記コントローラに接続される請求項1に記載のフロー経路変更計算装置と、前記コントローラおよび前記フロー経路変更計算装置に接続されるフロートラヒック量計算装置とを備えるフロー経路変更計算システムであって、前記コントローラは、前記複数のノードのうちの前記ネットワークの境界に位置するエッジノードから、宛先アドレスに基づき定義されるフロー毎のフロートラヒック量と当該フローの経路情報とを取得して、前記フロートラヒック量計算装置に送信し、前記フロートラヒック量計算装置が、前記宛先アドレスに基づき定義される各フローの各エッジノードにおけるフロートラヒック量の情報と各フローの経路情報とを用いて、前記エッジノードそれぞれに入力されるフロー毎のフロートラヒック量を計算し、前記フロー経路変更計算装置に送信し、前記フロー経路変更計算装置が、前記エッジノードそれぞれに入力されるフロー毎のフロートラヒック量を用いて、変更対象のフローとその変更先経路とを計算することを特徴するフロー経路変更計算システムとした。
The invention according to
このようにすることで、フロー経路変更計算システムは、フロートラヒック量計算装置が、コントローラを介して、宛先アドレスに基づき定義された各フローの各エッジノードにおけるフロートラヒック量の情報と各フローの経路情報とを取得し、エッジノードそれぞれに入力されるフロー毎のフロートラヒック量を計算することができる。そして、フロー経路変更計算装置は、エッジノードそれぞれに入力されるフロー毎のフロートラヒック量を入力情報として取得し、変更対象のフローとその変更先経路とを計算することができる。よって、フロー経路変更計算システムは、SDN等の技術を基づき、ネットワーク情報を一元的に管理した上で、宛先アドレスに基づき定義されたフローにおいて、経路変更制御を行うことが可能となる。 In this way, the flow route change calculation system allows the flow traffic amount calculation device to send information on the flow traffic amount at each edge node of each flow defined based on the destination address and the route of each flow via the controller. Information can be obtained, and the amount of flow traffic for each flow input to each edge node can be calculated. Then, the flow path change calculation device can acquire the flow traffic amount for each flow input to each edge node as input information, and can calculate the flow to be changed and its change destination path. Therefore, the flow route change calculation system can perform route change control in the flow defined based on the destination address after centrally managing network information based on a technique such as SDN.
本発明によれば、SDN技術をIP網に適用した場合において、フローの経路変更による負荷分散を可能とする、つまり、宛先アドレス定義フローに対して、フローの経路変更による負荷分散を可能とする、フロー経路変更計算装置およびフロー経路変更計算システムを提供することができる。 According to the present invention, when the SDN technology is applied to an IP network, load distribution by changing the flow path is possible, that is, load distribution by changing the flow path is possible for the destination address definition flow. , it is possible to provide a flow path change computing devices and flow path changing computing system.
次に、発明を実施するための形態(以下、「実施形態」という)について、適宜図面を参照しながら詳細に説明する。 Next, modes for carrying out the invention (hereinafter referred to as “embodiments”) will be described in detail with reference to the drawings as appropriate.
≪第1の実施形態≫
本発明の第1の実施形態に係るフロー経路変更計算装置1(図2参照)について説明する。フロー経路変更計算装置1は、入力情報として、宛先アドレスに基づき定義されたフロー情報を含む入力情報を取得し、最大リンク使用率を低下させるフローとその変更先経路を決定する。本発明の第1の実施形態においては、宛先アドレスに基づき定義されたフロー情報は、NetFlow(登録商標)や他の従来技術を用いた何らかの手法により取得するものとする。
<< First Embodiment >>
The flow path change calculation device 1 (see FIG. 2) according to the first embodiment of the present invention will be described. The flow path change
<概要>
まず、本発明の第1の実施形態に係るフロー経路変更計算装置1が実行する処理の概要について、従来技術を適用した場合と比較して説明する。
<Overview>
First, an outline of processing executed by the flow path change
本実施形態に係るフロー経路変更計算装置1は、ネットワークにおける最大リンク使用率を低下させるため、経路変更の対象となるフローとその変更先経路、フローを経路変更する変更順番、および、経路変更を行った場合の最大リンク使用率を計算する装置である。
従来のフロー経路変更の制御手法を用いた、最大リンク使用率を低下させるためのネットワーク制御装置では、前記したように、入力情報として、宛先アドレスと送信元アドレスとにより定義されるフロー情報を用いて、経路変更の対象となるフローとその変更先経路とを決定していた。これに対し、本実施形態に係るフロー経路変更計算装置1は、入力情報として、宛先アドレスのみにより定義されるフロー情報を用いて、経路変更の対象となるフローとその変更先経路とを決定する。
In order to reduce the maximum link usage rate in the network, the flow route
In the network control apparatus for reducing the maximum link usage rate using the conventional flow path change control technique, as described above, the flow information defined by the destination address and the source address is used as the input information. Thus, the flow to be changed and the change destination route have been determined. On the other hand, the flow route
このため、本実施形態に係るフロー経路変更計算装置1は、ネットワーク内の各リンクのリンク使用率を計算して、最大リンク使用率および当該最大リンク使用率となるリンクを計算し、計算した最大リンク使用率となるリンクを通るフローの中で、前記したフロー選択条件(A),(B)に加え、以下に示すフロー選択条件(C)を満たすフローを選択した場合に最大リンク使用率が最小となるフローを選択する。
For this reason, the flow path change
フロー選択条件(C):各ノードにおいて転送テーブルの不整合が発生しない。
このフロー選択条件(C)は、すなわち、「各ノードの転送テーブルにおいて、宛先アドレス毎に出力IFが一意に定まる」ことを意味する。
Flow selection condition (C): Transfer table inconsistency does not occur in each node.
This flow selection condition (C) means that “the output IF is uniquely determined for each destination address in the forwarding table of each node”.
そして、フロー経路変更計算装置1は、変更対象の候補となるフローが、このフロー選択条件(C)を満たすために、次の[不整合回避方式1]、[不整合回避方式2]のいずれかの処理を実行する。
Then, the flow path change
[不整合回避方式1]は、非特許文献1に記載の従来技術と同様の手法で、経路変更の対象となるフローとその変更先経路とを計算した結果、不整合が発生すると判定されたフローについて、経路変更フローの対象から除外する方式である。
また、[不整合回避方式2]は、フロー毎に、各ノードから出力すると不整合が発生することになるIF(リンク)を変更先経路から予め除外して、変更先経路の計算する方式である。
なお、[不整合回避方式1]、[不整合回避方式2]の詳細は後記する。
[Inconsistency avoidance method 1] is a method similar to that of the prior art described in
[Inconsistency avoidance method 2] is a method for calculating the change destination route by excluding IF (link) that would cause inconsistency if output from each node for each flow from the change destination route in advance. is there.
Details of [Inconsistency avoidance method 1] and [Inconsistency avoidance method 2] will be described later.
このように、本実施形態に係るフロー経路変更計算装置1によれば、宛先アドレスにより定義されたフローの場合であっても、図1に示すように、各ノードの転送テーブル700において、宛先アドレスにより出力IFを判断した場合に、不整合となるフローをなくすことができる。つまり、経路変更後に不整合となるフローを回避することができるため、処理負荷を低減した上で、最大リンク使用率を低下させることが可能となる。
なお、図1においては、経路「B」→「D」を経由するフロー(β)の経路を、経路「B」→「C」→「D」に変更した場合を示し、ノード「C」のフローテーブル700cにおいて、宛先IPアドレス「p4」に対応する出力IFは「3」のみであり、不整合は発生しないことを示している。
As described above, according to the flow path change
FIG. 1 shows a case where the route of the flow (β) passing through the route “B” → “D” is changed from the route “B” → “C” → “D” to the node “C”. In the flow table 700c, the output IF corresponding to the destination IP address “p4” is only “3”, indicating that no inconsistency occurs.
<ネットワークシステムの構成>
次に、図2を参照して、本実施形態に係るフロー経路変更計算装置1を含むネットワークシステムの構成について説明する。
図2に示すように、ネットワークシステムは、複数のノード、および、各ノード間を接続することにより通信経路を提供するリンクにより構成される通信ネットワーク4(以下、単に「ネットワーク」という場合がある。)と、各ノードとの間で通信可能に接続されるフロー経路変更計算装置1とを含んで構成される。このフロー経路変更計算装置1は、各ノードやネットワーク管理装置(不図示)等から、従来技術に基づく所定の方法で、トポロジ情報や、リンク情報、フロー情報(宛先アドレスで定義されたフロー情報)等を取得する。そして、フロー経路変更計算装置1は、現時点のネットワーク(通信ネットワーク4)における最大リンク使用率を低下させるため、経路変更の対象となるフローとその変更先経路、フローを経路変更する変更順番、および、最大リンク使用率を計算する。
<Network system configuration>
Next, a configuration of a network system including the flow path change
As shown in FIG. 2, the network system may be referred to as a communication network 4 (hereinafter simply referred to as “network”) including a plurality of nodes and links that provide communication paths by connecting the nodes. ) And a flow path change
<フロー経路変更計算装置>
続いて、本実施形態に係るフロー経路変更計算装置1について説明する。フロー経路変更計算装置1は、入力情報として、宛先アドレスで定義された、全てまたは一部のフローのフロー情報(フローの経路情報とフロートラヒック量)を取得した上で、ネットワークの最大リンク使用率をより低下させるように、変更対象となるフローとその変更先経路を計算する。このとき、フロー経路変更計算装置1は、前記したフロー選択条件(A),(B)に加え、フロー選択条件(C)「各ノードにおいて転送テーブルの不整合が発生しない。(各ノードの転送テーブルにおいて、宛先アドレス毎に出力IFが一意に定まる)」を満たすフローを選択した場合に最大リンク使用率が最小となるフローを選択する。これにより、フロー経路変更計算装置1は、宛先アドレスのみで定義されたフローに対しても、フローの経路変更による負荷分散を可能とすることができる。
<Flow path change calculation device>
Next, the flow path change
図3は、本実施形態に係るフロー経路変更計算装置1の構成例を示す機能ブロック図である。
フロー経路変更計算装置1は、図3に示すように、入力部10と、制御部20と、メモリ部30と、記憶部40と、出力部50とを備えて構成される。
FIG. 3 is a functional block diagram illustrating a configuration example of the flow path change
As shown in FIG. 3, the flow path change
入力部10は、通信ネットワーク4(図2参照)内のノードや、ネットワーク管理装置(不図示)等から、トポロジ情報100、リンク情報200およびフロー情報300を取得し、制御部20(入力情報処理部21)に引き渡す。
ここで、トポロジ情報100は、各ノード間の接続関係を示す情報である。
リンク情報200は、各リンクのリンクメトリック、各リンクの最大帯域および各リンクのリンクトラヒック量を含む情報である。リンクメトリックは、各リンクのコスト(距離)を示す情報であり、最短経路を探索する際に参照される。リンクの最大帯域は、各リンクが収容可能な最大の帯域を示す情報である。リンクトラヒック量は、測定時点においてそのリンクを通るトラヒック量である。
フロー情報300には、宛先アドレスにより定義された、全部または一部のフローの経路情報とそのフローのトラヒック量(フロートラヒック量)を含む情報が格納される。
なお、この入力部10は、通信回線を介して情報の送受信を行う通信インタフェースと、図示を省略したキーボード等の入力手段から情報の入力を行う入力インタフェースとから構成される。
The
Here, the
The
The
The
制御部20は、フロー経路変更計算装置1全体の制御を司り、入力情報処理部21、最大リンク使用率計算部22および出力情報処理部23を含んで構成される。
The
入力情報処理部21は、入力部10を介して、トポロジ情報100、リンク情報200およびフロー情報300を取得し、記憶部40に記憶する。
The input
最大リンク使用率計算部22は、記憶部40に記憶されている、トポロジ情報100、リンク情報200およびフロー情報300に基づき、現時点のネットワーク(通信ネットワーク4)における最大リンク使用率を低下させるために、経路変更の対象となるフローとその変更先経路、フローを経路変更する変更順番、および、処理結果としての最大リンク使用率、を計算する。
The maximum link usage
この最大リンク使用率計算部22は、宛先アドレスにより定義されたフローのフロー情報300を取得した上で、ネットワークの最大リンク使用率をより低下させるように、変更対象となるフローとその変更先経路を計算する。このとき、フロー経路変更計算装置1は、従来のフロー選択条件である、フロー選択条件(A)「最大リンク使用率となるリンクを通らない。」、フロー選択条件(B)「経路変更することによりネットワーク全体の最大リンク使用率が低下する。」に加え、フロー選択条件(C)「各ノードにおいて転送テーブルの不整合が発生しない。(各ノードの転送テーブルにおいて、宛先アドレス毎に出力IFが一意に定まる)」を満たすフローと、その変更先経路とを計算する。
The maximum link usage
最大リンク使用率計算部22は、このフロー選択条件(C)を満たすか否かを判定するための機能として、整合性確認部221を備える。
The maximum link usage
この整合性確認部221は、経路変更の候補となるフローが、このフロー選択条件(C)を満たすために、[不整合回避方式1]、[不整合回避方式2]のいずれかの処理を実行する。なお、ネットワーク管理装置(不図示)等により、[不整合回避方式1]、[不整合回避方式2]のいずれかが、整合性確認部221に予め設定される。
The
[不整合回避方式1]は、非特許文献1に記載の従来技術と同様の手法で、経路変更の対象となるフローとその変更先経路とを計算した結果、不整合が発生すると判定されたフローについて、経路変更フローの対象から除外する方式である。
例えば、図4に示すように、ノード「B」−「D」間のリンクが複数のフローにより混雑(リンク使用率が高い状態)している場合、例えば、宛先IPアドレス「p4」で定義されるフロー(α)の経路「B」→「D」を、経路「B」→「A」→「D」に変更しようとすると、ノードAの転送テーブルには、すでに宛先IPアドレス「p4」に対して、ノード「C」へ向かう経路の出力IF「1」が設定されているため、新たにノード「D」へ向かう経路の出力IF「2」を宛先IPアドレス「p4」に対して設定すると不整合が生じる。よって、整合性確認部221は、このような不整合が発生するフロー(α)を経路変更の対象から除外する。そして、不整合が発生しないフローであるフロー(β)の経路を、経路「B」→「D」→「C」から経路「B」→「C」に変更する。
[Inconsistency avoidance method 1] is a method similar to that of the prior art described in
For example, as shown in FIG. 4, when the link between the nodes “B” and “D” is congested by a plurality of flows (in a state where the link usage rate is high), for example, the destination IP address “p4” is defined. When the route “B” → “D” of the flow (α) to be changed from the route “B” → “A” → “D” is changed to the destination IP address “p4” in the forwarding table of the node A On the other hand, since the output IF “1” of the route to the node “C” is set, when the output IF “2” of the route to the node “D” is newly set for the destination IP address “p4” Inconsistency occurs. Therefore, the
これにより、最大リンク使用率計算部22は、不整合が発生しないフロー、つまり、フロー選択条件(C)を満たし、かつ、フロー選択条件(A),(B)を満たすフローを、経路変更するフローとして決定することができる。
なお、[不整合回避方式1]の詳細な処理内容については、図7、図8を参照して後記する。
As a result, the maximum link usage
The detailed processing contents of [Inconsistency avoidance method 1] will be described later with reference to FIGS.
[不整合回避方式2]は、フロー毎に、各ノードから出力すると不整合が発生することになるIF(リンク)を変更先経路から予め除外して、変更先経路の計算する方式である。
例えば、図5に示すように、ノード「A」には、宛先IPアドレス「p4」のフローに対して、すでに、ノード「C」へ向かう経路である出力IF「1」が設定されている。よって、ノード「A」に、同じ宛先IPアドレス「p4」に対して、ノード「C」へ向かう以外の経路(例えば、ノード「D」へ向かう経路であるIF「2」)が設定されれば、必ず、不整合が発生することとなる。整合性確認部221は、宛先IPアドレス「p4」のフローに対して、ノード「A」については、すでに設定されているノード「C」へ向かうリンク(IF「1」)のみを計算対象とし、その他のノードへ向かうリンク(例えば、ノード「D」へ向かうリンク)を変更先経路から除外する。
[Inconsistency avoidance method 2] is a method of calculating the change destination route by excluding IF (link) that would cause inconsistency when output from each node for each flow from the change destination route in advance.
For example, as illustrated in FIG. 5, an output IF “1” that is a path toward the node “C” is already set in the node “A” for the flow of the destination IP address “p4”. Therefore, if a route other than going to the node “C” (for example, IF “2” that goes to the node “D”) is set for the same destination IP address “p4” in the node “A”. An inconsistency will inevitably occur.
これにより、整合性確認部221は、フロー毎に、各ノードから出力すると不整合が発生することになるIF(リンク)を予め除外するため、最大リンク使用率計算部22は、不整合が発生しないフロー、つまり、フロー選択条件(C)を満たし、かつ、フロー選択条件(A),(B)を満たすフローを、経路変更するフローとして決定することができる。
なお、[不整合回避方式2]の詳細な処理内容については、図9を参照して後記する。
As a result, the
The detailed processing content of [Inconsistency avoidance method 2] will be described later with reference to FIG.
図3に戻り、出力情報処理部23は、最大リンク使用率計算部22が計算した、経路変更の対象となるフローとその変更先経路、フローを経路変更する変更順番、および、処理結果としての最大リンク使用率の情報を、出力部50を介して出力する。
Returning to FIG. 3, the output
メモリ部30は、RAM(Random Access Memory)等の一次記憶手段からなり、制御部20によるデータ処理に必要な情報を一時的に記憶する。
The
記憶部40は、ハードディスクやフラッシュメモリ等の記憶手段からなり、トポロジ情報100や、リンク情報200、フロー情報300等が記憶される。なお、トポロジ情報100、リンク情報200およびフロー情報300については、前記して説明したため、ここでの説明は省略する。
The
出力部50は、制御部20の出力情報処理部23から取得した処理結果の情報である、フロー経路変更後のリンク情報400および経路変更後のフロー情報500を、モニタ等の出力手段(不図示)やネットワーク管理装置(不図示)等に出力する。ここで、フロー経路変更後のリンク情報400には、最終的な処理結果である最大リンク使用率(およびその最大リンク使用率となるリンク)の情報が含まれる。また、経路変更後のフロー情報500には、経路変更の対象となるフローとその変更先経路、および、フローを経路変更する変更順番の情報が含まれる。
なお、この出力部50は、通信回線を介して情報の送受信を行う通信インタフェースと、図示を省略したモニタ等の出力手段への情報の出力を行う出力インタフェースとから構成される。
The
The
また、このフロー経路変更計算装置1をプログラム実行処理により実現する場合、記憶部40には、フロー経路変更計算装置1の制御部20の機能を実現するためのプログラムが格納される。そして、制御部20は、記憶部40に記憶されたプログラムを、不図示のCPU(Central Processing Unit)が、メモリ部30であるRAM等に展開し実行することにより実現される。
When the flow path change
<処理の流れ>
次に、本実施形態に係るフロー経路変更計算装置1の最大リンク使用率計算部22等が実行する全体の処理の流れについて図6を参照して説明する(適宜図3参照)。
図6は、本実施形態に係るフロー経路変更計算装置1の全体の処理の流れを示すフローチャートである。
なお、フロー経路変更計算装置1の記憶部40(図3参照)には、入力部10を介して、通信ネットワーク4(図2参照)内のノードや、ネットワーク管理装置(不図示)等から、トポロジ情報100、リンク情報200、および、宛先アドレスで定義された、全てまたは一部のフローのフロー情報300が入力情報として入力され、入力情報処理部21の処理により、記憶部40内に記憶されているものとする。また、図17に示した従来技術による処理と同一の処理には同一の符号を付し、その説明を省略する。
<Process flow>
Next, an overall processing flow executed by the maximum link usage
FIG. 6 is a flowchart showing an overall processing flow of the flow path change
Note that the storage unit 40 (see FIG. 3) of the flow path change
ステップS20において、最大リンク使用率計算部22は、記憶部40に記憶されている、各ノード間の接続関係を示すトポロジ情報100、リンク情報200、および、全てまたは一部のフローの経路とそのフロートラヒック量とを含むフロー情報300(全てまたは一部のフローのフロー情報)を取得する。なお、ここで取得するフロー情報300は、宛先アドレス(宛先IPアドレス)に基づいて定義されるフローのフロー情報である。
In step S20, the maximum link usage
続いて、最大リンク使用率計算部22は、ステップS3において、最大リンク使用率(および「最大リンク使用率となるリンク」)を計算する。
そして、最大リンク使用率計算部22は、ステップS40において、ステップS20で取得した全てまたは一部のフローのフロー情報300の中で、最大リンク使用率となるリンクを通るフローに対し、前記したフロー選択条件(A)「最大リンク使用率となるリンクを通らない。」、フロー選択条件(B)「経路変更することによりネットワーク全体の最大リンク使用率が低下する。」、フロー選択条件(C)「各ノードにおいて転送テーブルの不整合が発生しない。(各ノードの転送テーブルにおいて、宛先アドレス毎に出力IFが一意に定まる)」の全てを満たすように経路変更したときの経路の最短経路と、その経路に変更した場合の最大リンク使用率を計算する。なお、このフロー選択条件(C)を満たすための処理を、整合性確認部221は、[不整合回避方式1]、[不整合回避方式2]のいずれかを実行することにより行う。なお、[不整合回避方式1]、[不整合回避方式2]それぞれの具体的な処理の流れについては、図7および図9を参照して後記する。
Subsequently, in step S3, the maximum link usage
Then, in step S40, the maximum link usage
次に、ステップS50において、最大リンク使用率計算部22は、ステップS40の結果、フロー選択条件(A),(B),(C)の全てを満たすフローとその経路が存在するか否かを判定する。そして、最大リンク使用率計算部22は、フロー選択条件(A),(B),(C)の全てを満たすフローとその経路が1つ以上存在する場合には(ステップS50→Yes)、次のステップS6に進む。一方、フロー選択条件(A),(B),(C)の全てを満たすフローとその経路が存在しない場合には(ステップS50→No)、ステップS8に進む。
Next, in step S50, the maximum link usage
次に、整合性確認部221が実行する、[不整合回避方式1]、[不整合回避方式2]の具体的な処理の流れについて説明する。
Next, a specific processing flow of [Inconsistency Avoidance Method 1] and [Inconsistency Avoidance Method 2] executed by the
[不整合回避方式1]では、図6のステップS40において、最大リンク使用率計算部22が、フロー選択条件(A),(B)に基づき計算した結果である、経路変更の対象となるフローとその変更先経路について、整合性確認部221が、不整合が発生するか否かを判定する。この判定結果に基づき、最大リンク使用率計算部22は、不整合が発生すると判定されたフローについて、経路変更フローの対象から除外し、経路変更の対象となるフローとその変更先経路を再計算する。この[不整合回避方式1]について、図7および図8を参照して説明する。
In [Inconsistency avoidance method 1], the flow subject to path change, which is the result calculated by the maximum link usage
図7は、本実施形態に係る整合性確認部221が実行する[不整合回避方式1]の処理の流れを示すフローチャートである。図8は、[不整合回避方式1]の処理の具体例を説明するための図である。
FIG. 7 is a flowchart showing the flow of the [Inconsistency Avoidance Method 1] process executed by the
まず、整合性確認部221は、記憶部40に記憶された、トポロジ情報100、フロー情報300(フローの経路情報)、および、図6のステップS40において、最大リンク使用率計算部22が、フロー選択条件(A),(B)に基づき計算した結果である、経路変更の対象となるフローの経路情報を取得する(ステップS410)。
First, the
ここでは、図8(a)に示すように、トポロジ情報100(ノードとリンクの接続関係)として、ノード「1」〜「6」が各リンク(リンク「1」〜「14」)で接続された構成のネットワーク(中継網)のトポロジが取得されたものとする。そして、宛先IPアドレス「10」宛ての3本のフロー(各ノード「1」,「2」,「3」から入力されるフロー)が、経路変更の対象となるフローを含む宛先IPアドレス「10」宛てのフローの経路情報として取得されたものとする。つまり、この3本のフローのうちのいずれか1つは、経路変更の対象となるフローであり、その変更先経路が図8(a)に示すフローの経路に含まれる。 Here, as shown in FIG. 8A, nodes “1” to “6” are connected by links (links “1” to “14”) as topology information 100 (connection relation between nodes and links). It is assumed that the topology of the network (relay network) having the above configuration has been acquired. The three flows destined for the destination IP address “10” (flows input from the nodes “1”, “2”, and “3”) include the destination IP address “10” including the flow whose path is to be changed. ”Is acquired as route information of the flow addressed to“. That is, any one of the three flows is a flow that is a target of route change, and the change destination route is included in the route of the flow illustrated in FIG.
この整合性確認部221が取得するトポロジ情報100は、図8(b)に示すように、接続(結合)行列I={in,l}として表される。ここで、ノードnがリンクlの出力点であればin,l=1、入力点であればin,l=−1、接続していなければin,l=0として表す。例えば、ノード「1」に着目すると、図8(b)の第1行目に示すように、リンク「1」,「3」が出力点「1」であり、リンク「8」,「10」の入力点「−1」である。
The
また、フローの経路情報は、図8(c)に示すように、経路行列R={rl、j}として表される。ここで、各入力エッジノードjからの経路がリンクlを通っていればrl、j=1、通っていなければrl、j=0を表している。例えば、入力エッジノードとしてノード「1」に着目すると、図8(c)の第1列目に示すように、リンク3,6においてリンクが通っていることを示す「1」となっている。 Further, the flow route information is represented as a route matrix R = { rl, j } as shown in FIG. Here, if the path from each input edge node j passes through the link l, r l, j = 1, and if not, r l, j = 0. For example, when attention is paid to the node “1” as the input edge node, as shown in the first column in FIG.
図7に戻り、整合性確認部221は、次に、ネットワーク(中継網)内のノードを1つ選択する。つまり、初期値としてk番目のノード(k=1,…,N)のうち1番目(k=1)のノードを選択する(ステップS411)。
Returning to FIG. 7, the
続いて、整合性確認部221は、該当フローのノードk=nでの出力IF(リンク)数Mnを、以下に示す(式1)に基づき計算する。そして、整合性確認部221は、出力IF数Mnの値が1以下であるか否かを判定する(ステップS412)。ここで、出力IF数Mnの値が1を超えていれば(ステップS412→No)、ステップS413に進む。一方、出力IF数Mnの値が1以下であれば(ステップS412→Yes)、次のステップS414に進む。
Subsequently, the
この(式1)において、Σjmax(in,lrl,j,0)は、ある入力エッジノードからのフローが、ノードnのあるリンクlを通っている否か(通っている場合「1」となる。)を、全ての入力エッジノードに関して総計することを意味する。そして、(式1)では、ノードnから同じリンクに出力されるフローが複数あっても「1」として、ノードnの各リンクlを総計した場合に、「1」以下であるかを判定する。ここで、ノードnの出力IF(リンク)数Mnが「0」であれば、ノードnにフローが通っていないことを示し、出力IF数Mnの値が「1」であれば、その宛先アドレスへ向けて1つのリンクに通っていることを示す。つまり、その宛先アドレスのフローは1つのリンクから出力されており、不整合は生じていないことを示す。そして、出力IF数Mnの値が「2」以上であれば、その宛先アドレスへ向けて2以上のリンクに通っていることを示す。つまり、不整合が発生していることを示す。 In this (Equation 1), Σ j max (i n, l r l, j , 0) indicates whether or not the flow from a certain input edge node passes through a certain link l of the node n (when it passes) "1") is to be summed over all input edge nodes. In (Expression 1), even if there are a plurality of flows output from the node n to the same link, it is determined as “1”, and when each link l of the node n is totaled, it is determined whether it is “1” or less. . Here, if the output M (link) number M n of the node n is “0”, it indicates that no flow passes through the node n. If the value of the output IF number M n is “1”, Indicates that one link is going to the destination address. That is, the flow of the destination address is output from one link, indicating that no inconsistency has occurred. If the value of the output IF number M n is “2” or more, it indicates that two or more links are directed toward the destination address. That is, it indicates that inconsistency has occurred.
図8(a)に示す例において、ノード「2」は、ノード「1」へ向かうリンク「8」と、ノード「5」へ向かうリンク「4」とが存在し、出力IF数M2=2となる(図8(d)参照)。よって、ノード「2」の転送テーブルにおいて、同じ宛先IPアドレス「10」へ向けての出力IFが2つ設定されることになり、不整合が発生する。一方、ノード「1」,「3」,「5」,「6」においては、出力IF数M1=M3=M5=M6=1となり、出力IFが1つであるため、不整合は発生しない(図8(d)参照)。 In the example shown in FIG. 8A, the node “2” has a link “8” going to the node “1” and a link “4” going to the node “5”, and the number of output IFs M 2 = 2 (See FIG. 8D). Therefore, in the forwarding table of the node “2”, two output IFs for the same destination IP address “10” are set, and inconsistency occurs. On the other hand, in the nodes “1”, “3”, “5”, and “6”, the number of output IFs M 1 = M 3 = M 5 = M 6 = 1 and there is one output IF. Does not occur (see FIG. 8D).
図7に戻り、ステップS412において、整合性確認部221は、出力IF数Mnの値が1を超えていれば(ステップS412→No)、ステップS413において、該当フロー(経路変更の対象となるフロー)に不整合が発生するとして、その判定結果を最大リンク使用率計算部22に出力し、処理を終了する。
Returning to FIG. 7, in step S412, if the value of the output IF number Mn exceeds 1 (step S412 → No), the
一方、整合性確認部221は、出力IF数Mnの値が1以下であれば(ステップS412→Yes)、ステップS414において、ネットワーク(中継網)内の全てのノードNを処理したか否かを判定する。そして、まだ処理していないノードがある場合には(ステップS414→No)、整合性確認部221は、kに1を加えて(k=k+1)(ステップS415)、ステップS412に戻り、処理を続ける。一方、整合性確認部221は、全てのノードNの処理を終えている場合には(ステップS414→Yes)、ステップS416において、該当フローに不整合は発生しないとして、その判定結果を最大リンク使用率計算部22に出力し、処理を終了する。
On the other hand, if the value of the output IF number Mn is 1 or less (step S412 → Yes), the
そして、最大リンク使用率計算部22は、不整合が発生すると判定されたフローについて、経路変更フローの対象から除外し、経路変更の対象となるフローとその変更先経路について再計算する。
Then, the maximum link usage
次に、[不整合回避方式2]について説明する。
[不整合回避方式2]では、図6のステップS40において、整合性確認部221が、フロー毎に、各ノードから出力すると不整合が発生することになるIF(リンク)を変更先経路から予め除外する。その上で、最大リンク使用率計算部22が、フロー選択条件(A),(B)を満たすフローとその変更先経路を計算する。この[不整合回避方式2]について、図9を参照して説明する。
Next, [Inconsistency avoidance method 2] will be described.
In [Inconsistency avoidance method 2], in step S40 of FIG. 6, the
図9は、本実施形態に係る整合性確認部221が実行する[不整合回避方式2]の処理の流れを示すフローチャートである。
FIG. 9 is a flowchart showing the flow of [Inconsistency avoidance method 2] executed by the
まず、整合性確認部221は、記憶部40に記憶されたトポロジ情報100と、フロー情報300(フローの経路情報)を取得する(ステップS420)。
First, the
続いて、整合性確認部221は、図6のステップS3において、最大リンク使用率計算部22が計算した最大リンク使用率となるリンクを通るフロー(経路変更の対象となるフロー)のうちの1つを抽出し、その宛先アドレス(宛先IPアドレス)を取得する(ステップS421)。
Subsequently, in step S3 of FIG. 6, the
次に、整合性確認部221は、フロー情報300(フローの経路情報)を参照することにより、該当フロー(経路変更の対象となるフロー)と同じ宛先アドレス(宛先IPアドレス)のフローが経由するか否かをノード毎に判定する(ステップS422)。
Next, by referring to the flow information 300 (flow path information), the
そして、整合性確認部221は、同じ宛先アドレスのフローが経由しない場合は(ステップS422→No)、ステップS424に進む。一方、同じ宛先アドレスのフローが経由する場合は(ステップS422→Yes)、そのノードにおいて、既に存在する該当フローと同じ宛先アドレスのフローの転送先となるノードへ向かうリンクのみを残し、他のノードへ向かうリンクを変更先経路となるリンクから除外するように、トポロジ情報を変更する(ステップS423)。
Then, when the flow of the same destination address does not pass (step S422 → No), the
次に、整合性確認部221は、ステップS424において、経路変更の対象となるフローの全てを処理したか否かを判定する。そして、整合性確認部221は、まだ処理していない、経路変更の対象となるフローがある場合には(ステップS424→No)、ステップS421に戻り処理を続ける。一方、整合性確認部221は、経路変更の対象となる全てのフローを処理した場合には(ステップS424→Yes)、処理を終える。
Next, in step S424, the
最大リンク使用率計算部22は、図6のステップS40において、整合性確認部221が、図9のステップS423で経路変更対象となるフロー毎に変更したトポロジ情報、つまり、フロー選択条件(C)「各ノードにおいて転送テーブルの不整合が発生しない。」を満たすトポロジ情報を用いて、フロー選択条件(A),(B)を満たす変更先経路を計算する。
The maximum link usage
このようにすることにより、本発明の第1の実施形態に係るフロー経路変更計算装置1は、入力情報として、宛先アドレスで定義された、全てまたは一部のフローのフロー情報(フローの経路情報とフロートラヒック量)を取得した上で、ネットワークの最大リンク使用率をより低下させるように、変更対象となるフローとその変更先経路を計算する。つまり、本実施形態に係るフロー経路変更計算装置1は、SDN技術をIP網に適用した場合においても、フローの経路変更による負荷分散を可能とする。
また、本発明の第1の実施形態に係るフロー経路変更計算装置1によれば、宛先アドレス数=送信元アドレス数=nとした場合、宛先アドレスで定義されたフローの数は、送信元アドレスおよび宛先アドレスで定義されたフロー数の1/n倍となるため、経路変更するフロー数が削減され、その結果、経路変更計算の処理時間を短縮することができる。
By doing in this way, the flow route
Further, according to the flow path change
≪第2の実施形態≫
次に、本発明の第2の実施形態に係る、フロー経路変更計算装置1Aおよびフロートラヒック量計算装置5を含むフロー経路変更計算システム1000(図12参照)について説明する。
<< Second Embodiment >>
Next, a flow path change calculation system 1000 (see FIG. 12) including the flow path change
第1の実施形態に係るフロー経路変更計算装置1では、従来技術に基づく入力情報として、宛先アドレス定義のフローの経路情報とフロートラヒック量が入力されることを前提として説明した。本発明の第2の実施形態においては、OpenFlowなど、コントローラを用いてネットワーク情報を一元的に収集することが可能なSDNの技術を適用し、フロー情報等を取得する場合について説明する。
The flow route
<第2の実施形態の課題>
コントローラを介して、各ノードからトポロジ情報100、リンク情報200およびフロー情報300を取得する場合、従来技術のように、送信元アドレスと宛先アドレスとにより定義されたフローに基づけば、問題なくフロー毎のトラヒック量(フロートラヒック量)が取得できる。しかしながら、宛先アドレスのみにより定義されたフローでは、以下に示すように、エッジノードに入力するフロートラヒック量をフロー毎に直接取得できないという課題が生じる。
<Problem of the second embodiment>
When acquiring the
この課題について具体的に説明する。図10に示すように、コントローラ6がネットワーク内の各ノードからネットワーク情報(ここでは、各フローのフロートラヒック量)を取得するものとする。コントローラ6は、フロー単位でトラヒック量(フロートラヒック量)を取得することが可能である。したがって、従来の一般的な定義である、送信元アドレスと宛先アドレスとに基づき定義されたフローに対しては、送信元アドレス・宛先アドレス単位のトラヒック量の取得により、各ノード間を通るフロートラヒック量を簡単に算出することが可能である。
This problem will be specifically described. As shown in FIG. 10, it is assumed that the
例えば、図10に示す例では、入力エッジノードAには、フロートラヒック量が「a」(Mbps)のIPアドレス「p1」→「p4」のフローが通っていることがわかる。また、入力エッジノードBには、フロートラヒック量が「a」(Mbps)のIPアドレス「p1」→「p4」のフロー、フロートラヒック量が「b」(Mbps)のIPアドレス「p2」→「p4」のフロー、フロートラヒック量が「c」(Mbps)のIPアドレス「p3」→「p4」のフロー、の計3本のフローが流れていることがわかる。これらの情報が各ノードからコントローラ6に送信される。
For example, in the example shown in FIG. 10, it can be seen that the input edge node A passes the flow of the IP address “p1” → “p4” having the flow traffic amount “a” (Mbps). The input edge node B has an IP address “p1” → “p4” with a flow traffic amount “a” (Mbps) and an IP address “p2” → “p2” with a flow traffic amount “b” (Mbps). It can be seen that there are a total of three flows, the flow of “p4” and the flow of the IP address “p3” → “p4” with the flow traffic amount “c” (Mbps). These pieces of information are transmitted from each node to the
これに対し、宛先アドレスのみにより定義されたフローに基づくと、宛先アドレスが同じトラヒックは、同一フローとみなすため、コントローラ6により取得可能なフロートラヒック量は、複数の送信元アドレスからのフローのトラヒック量の合計値となる。したがって、エッジノードに入力するフロー単位でのトラヒック量(フロートラヒック量)を直接取得することができない。
On the other hand, based on the flow defined only by the destination address, the traffic having the same destination address is regarded as the same flow. Therefore, the amount of flow traffic that can be acquired by the
例えば、図11に示す例では、入力エッジノードAには、フロートラヒック量が「a」(Mbps)の宛先IPアドレス「p4」の1本のフローが通っている。これに対し、入力エッジノードBでは、フロートラヒック量が「a+b+c」(Mbps)の合計値で示される宛先IPアドレス「p4」のフローが通っていることがわかるが、ノードBにおいて入力されるフローのフロートラヒック量「b+c」を直接取得できない。つまり、エッジノードから入力するフローのフロートラヒック量を直接取得することができない。
なお、図11に示す入力エッジノードBにおける宛先IPアドレス「p4」についてのフロートラヒック量「a+b+c」(Mbps)の合計値を示す情報が、後記する、「宛先アドレスに基づき定義される各フローの各エッジノードにおけるフロートラヒック量の情報」の一例を示すものである。
For example, in the example illustrated in FIG. 11, the input edge node A passes through one flow having the destination IP address “p4” having the flow traffic amount “a” (Mbps). In contrast, in the input edge node B, it can be seen that the flow of the destination IP address “p4” indicated by the total value of the flow traffic amount “a + b + c” (Mbps) passes, but the flow input in the node B The flow traffic amount “b + c” cannot be obtained directly. That is, it is not possible to directly acquire the flow traffic amount of the flow input from the edge node.
Note that information indicating the total value of the flow traffic amount “a + b + c” (Mbps) for the destination IP address “p4” in the input edge node B shown in FIG. 11 is described later, “each flow defined based on the destination address”. It shows an example of “information on the amount of flow traffic at each edge node”.
本発明の第2の実施形態では、上記した課題を解決するため、宛先アドレス定義のフローに対して、各エッジノードに入力するフローのフロートラヒック量を算出する機能を備えたフロートラヒック量計算装置5を備えるものとした。このフロートラヒック量計算装置5が計算した、各フローの入力エッジノード毎に入力されるフロートラヒック量の情報を用いて、第2の実施形態に係るフロー経路変更計算装置1Aが、経路変更後に不整合となるフローを回避し、最大リンク使用率を低下させる経路制御を行うことが可能となる。
In the second embodiment of the present invention, in order to solve the above-described problem, a flow traffic amount calculation device having a function of calculating a flow traffic amount of a flow input to each edge node for a flow of
<システム構成>
次に、本発明の第2の実施形態に係る、フロー経路変更計算装置1Aおよびフロートラヒック量計算装置5を含むフロー経路変更計算システム1000について説明する。
図12は、本実施形態に係るフロー経路変更計算システム1000の全体構成を示す図である。
図12に示すように、フロー経路変更計算システム1000は、ネットワーク(中継網)内の各ノードに接続されるコントローラ6と、コントローラ6およびフロー経路変更計算装置1Aに接続されるフロートラヒック量計算装置5と、コントローラ6およびフロートラヒック量計算装置5に接続されるフロー経路変更計算装置1Aと、を備えて構成される。
<System configuration>
Next, a flow path change
FIG. 12 is a diagram showing an overall configuration of a flow path change
As shown in FIG. 12, a flow path change
コントローラ6は、各ノードからネットワーク情報を取得したり、各ノードに対し制御情報を送信したりする装置である。このコントローラ6は、例えば、一般的なOpenflowコントローラ等により実現される。よって、詳細な説明は省略する。
なお、本実施形態におけるコントローラ6は、宛先アドレスに基づき定義されたフローの各エッジノードにおけるフロートラヒック量およびフローの経路情報を含むフロー情報300a(図13参照)、各リンクのリンクトラヒック量を含むリンク情報200、トポロジ情報100等を取得する。そして、コントローラ6は、フロー情報300aをフロートラヒック量計算装置5に送信し、その他のリンク情報200やトポロジ情報100をフロー経路変更計算装置1Aに送信する。なお、コントローラ6は、フローの経路情報については、フロートラヒック量計算装置5、フロー経路変更計算装置1Aそれぞれの処理において必要なため両方に送るようにしてもよい。
The
The
フロートラヒック量計算装置5は、コントローラ6からフロー情報300aを取得し、宛先アドレスに基づき定義される各フローの各エッジノードにおけるフロートラヒック量の情報および各フローの経路情報に基づき、宛先アドレスに基づき定義される各フローの入力エッジノード毎に入力されるフロートラヒック量を計算する。そして、フロートラヒック量計算装置5は、この算出した各フローの入力エッジノード毎に入力されるフロートラヒック量を、フロー経路変更計算装置1Aに出力する。なお、フロートラヒック量計算装置5の詳細な構成と処理内容については後記する。
The flow traffic
フロー経路変更計算装置1Aは、本発明の第1の実施形態に係るフロー経路変更計算装置1と同一の機能・構成を備えるものである。したがって、詳細な説明は省略する。このフロー経路変更計算装置1Aは、宛先アドレスに基づき定義される各フローの入力エッジノード毎に入力されるフロートラヒック量の情報をフロートラヒック量計算装置5から取得することを特徴とする。フロー経路変更計算装置1Aは、フロートラヒック量計算装置5から取得した、宛先アドレスに基づき定義される各フローの入力エッジノード毎に入力されるフロートラヒック量に基づき、経路変更の対象となるフローとその変更先経路とを計算する。
The flow path change
<フロートラヒック量計算装置>
次に、本発明の第2の実施形態に係るフロートラヒック量計算装置5について説明する。
図13は、本発明の第2の実施形態に係るフロートラヒック量計算装置5の構成例を示す機能ブロック図である。
フロートラヒック量計算装置5は、図13に示すように、入力部51と、制御部52と、メモリ部53と、記憶部54と、出力部55とを備えて構成される。
<Flow traffic volume calculation device>
Next, the flow traffic
FIG. 13 is a functional block diagram showing a configuration example of the flow traffic
As shown in FIG. 13, the flow traffic
入力部51は、コントローラ6から、フロー情報300aを取得し、制御部52に引き渡す。
ここで、フロー情報300aは、前記したように、宛先アドレスに基づき定義される各フローの各エッジノードにおけるフロートラヒック量の情報および各フローの経路情報である。
なお、この入力部51は、通信回線を介して情報の送受信を行う通信インタフェースと、図示を省略したキーボード等の入力手段から情報の入力を行う入力インタフェースとから構成される。
The
Here, as described above, the flow information 300a is flow traffic amount information and route information of each flow at each edge node of each flow defined based on the destination address.
The
制御部52は、フロートラヒック量計算装置5全体の制御を司り、入力情報処理部521、フロートラヒック量計算部522および出力情報処理部523を含んで構成される。
The control unit 52 controls the entire flow traffic
入力情報処理部521は、入力部51を介して、フロー情報300aを取得し、フロートラヒック量計算部522に引き渡す。
The input
フロートラヒック量計算部522は、フロー情報300aに含まれる、宛先アドレスに基づき定義される各フローの各エッジノードにおけるフロートラヒック量の情報および各フローの経路情報を用いて、以下の(式2)に示す連立方程式を解くことにより、各フローの入力エッジノード毎に入力されるフロートラヒック量を計算する。
The flow traffic
ここで、「f」はフローを表し、「j」は入力エッジノードを表し、「i」はフローが経由する入力エッジノードを表す。
「ftj」(j=1,…,n)は、変数(出力値)であり、フローfの入力エッジノードjから入力されるトラヒック量(フロートラヒック量)を表す。
fR=「frij」(i,j=1,…,n)は、定数(入力値)であり、フローfの経路を表す。ここで、フローfのエッジノードjから入力するトラヒックがエッジノードiを通る場合に「1」、通らない場合に「0」で表す(図15(b)参照)。
また、「fLi」(i=1,…,n)は、定数(入力値)であり、フローfの入力エッジノードiを通るトラヒック量(フロートラヒック量)を表す。
Here, “f” represents a flow, “j” represents an input edge node, and “i” represents an input edge node through which the flow passes.
"F t j" (j = 1, ..., n) is a variable (output value), representing the amount of traffic that is input from the input edge node j of flow f (Flow traffic volume).
f R = “ f r ij ” (i, j = 1,..., n) is a constant (input value) and represents the path of the flow f. Here, when the traffic input from the edge node j of the flow f passes through the edge node i, it is represented by “1”, and when it does not pass, it is represented by “0” (see FIG. 15B).
Further, “ f L i ” (i = 1,..., N) is a constant (input value) and represents the traffic amount (flow traffic amount) passing through the input edge node i of the flow f.
具体例として図14に示すネットワークを例に、図15を参照して説明する。図14に示すように、宛先アドレスとしてIPアドレス「10」が設定されている複数のフロー(以下、複数のフローとまとめて「フロー(10)」と称する。)の入力エッジノードは、ノード「1」「2」「3」「4」「5」「6」である(図15(a)参照)。ここでは、例えば、入力エッジノード「1」に関して、フロー(10)の入力エッジノード「1」を通るトラヒック量(フロートラヒック量)を「10L1」と表し、フロー(10)の入力エッジノード「1」から入力されるトラヒック量(フロートラヒック量)を「10t1」と表している。また、ノード「7」「8」から入力するフローはないものとする。よって、(式2)においては、入力するフローが存在しないエッジノード「7」「8」は除外して計算する。 A specific example will be described with reference to FIG. 15, taking the network shown in FIG. 14 as an example. As shown in FIG. 14, an input edge node of a plurality of flows (hereinafter, collectively referred to as “flow (10)”) having an IP address “10” as a destination address is a node “ 1 ”,“ 2 ”,“ 3 ”,“ 4 ”,“ 5 ”, and“ 6 ”(see FIG. 15A). Here, for example, with respect to the input edge node “1”, the traffic amount (flow traffic amount) passing through the input edge node “1” of the flow (10) is represented as “ 10 L 1 ”, and the input edge node of the flow (10) The traffic volume (flow traffic volume) input from “ 1 ” is represented as “ 10 t 1 ”. Also, it is assumed that there is no flow input from the nodes “7” and “8”. Therefore, in (Equation 2), calculation is performed by excluding edge nodes “7” and “8” in which there is no input flow.
ここで、(式2)における、変数(出力値)と定数(入力値)は、図15(b)に示すものとなる。
変数(出力値)は、フロー(10)の各入力エッジノードj(j=1,2,…,6)から入力されるトラヒック量「10tj」である。
定数(入力値)は、フロー(10)の各入力エッジノードi(i=1,2,…,6)におけるトラヒック量「10Li」である。また、フロー(10)の経路情報10R={10rij}は、図15(b)に示す経路行列を示すものとなる。例えば、入力エッジノード「2」(経路行列の2列目)は、入力エッジノードである「2」とそのフローが通る入力エッジノード「3」の値が「1」となっている。
Here, variables (output values) and constants (input values) in (Equation 2) are as shown in FIG.
The variable (output value) is a traffic amount “ 10 t j ” input from each input edge node j (j = 1, 2,..., 6) of the flow (10).
The constant (input value) is the traffic amount “ 10 Li ” at each input edge node i (i = 1, 2,..., 6) of the flow (10). Further, the route information 10 R = { 10 r ij } of the flow (10) indicates the route matrix shown in FIG. For example, in the input edge node “2” (second column of the path matrix), the value of the input edge node “2” and the input edge node “3” through which the flow passes is “1”.
以上の情報を用いて、(式2)を連立方程式として示したものが図15(c)である。フロートラヒック量計算部522は、この連立方程式を解くことにより、出力値である各フローの入力エッジノード毎に入力されるフロートラヒック量を求めることができる。なお、このフロートラヒック量計算部522の詳細な処理の流れについては後記する。
FIG. 15C shows (Equation 2) as simultaneous equations using the above information. The flow traffic
図13に戻り、出力情報処理部523は、フロートラヒック量計算部522が計算した、各フローの入力エッジノード毎に入力されるフロートラヒック量の情報を、出力部55を介して、フロー経路変更計算装置1A(図12参照)に出力する。
Returning to FIG. 13, the output
メモリ部53は、RAM等の一次記憶手段からなり、制御部52によるデータ処理に必要な情報を一時的に記憶する。
また、記憶部54は、ハードディスクやフラッシュメモリ等の記憶手段により構成される。
The
The
出力部55は、制御部52の出力情報処理部523から取得した処理結果の情報である、各フローの入力エッジノード毎に入力されるフロートラヒック量の情報を、フロー経路変更計算装置1Aに出力する。
なお、この出力部55は、通信回線を介して情報の送受信を行う通信インタフェースと、図示を省略したモニタ等の出力手段への情報の出力を行う出力インタフェースとから構成される。
The
The
また、このフロートラヒック量計算装置5をプログラム実行処理により実現する場合、記憶部54には、フロートラヒック量計算装置5の制御部52の機能を実現するためのプログラムが格納される。そして、制御部52は、記憶部54に記憶されたプログラムを、不図示のCPUが、メモリ部53であるRAM等に展開し実行することにより実現される。
Further, when the flow traffic
<処理の流れ>
次に、本発明の第2の実施形態に係るフロートラヒック量計算装置5のフロートラヒック量計算部522等が実行する処理の流れについて図16を参照して説明する(適宜図13参照)。
図16は、本発明の第2の実施形態に係るフロートラヒック量計算装置5の処理の流れを示すフローチャートである。
<Process flow>
Next, the flow of processing executed by the flow traffic
FIG. 16 is a flowchart showing a process flow of the flow traffic
まず、フロートラヒック量計算装置5のフロートラヒック量計算部522が、入力情報処理部521を介して、コントローラ6から、宛先アドレスに基づき定義される各フローの各エッジノードにおけるフロートラヒック量の情報および各フローの経路情報であるフロー情報300aを取得する(ステップS501)。
First, the flow traffic
続いて、フロートラヒック量計算部522は、取得したフロー情報300aのうち、宛先アドレスに基づき定義される1つのフローを選択する(ステップS502)。
Subsequently, the flow traffic
次に、フロートラヒック量計算部522は、選択したフローについての、各エッジノードにおけるフロートラヒック量の情報(「fLi」)およびフローの経路情報(fR=「frij」)を入力値として、前記した(式2)に基づき、入力エッジノード毎に入力されるフロートラヒック量(「ftj」)を計算する(ステップS503)。
Next, the flow traffic
そして、フロートラヒック量計算部522は、宛先アドレスに基づき定義される全てのフローについて処理したか否かを判定する(ステップS504)。ここで、まだ処理していないフローがある場合には(ステップS504→No)、フロートラヒック量計算部522は、ステップS502へ戻り処理を続ける。一方、全てのフローについての処理を終えた場合には(ステップS504→Yes)、次のステップS505に進む。
Then, the flow traffic
ステップS505において、フロートラヒック量計算装置5の出力情報処理部523は、フロートラヒック量計算部522の計算結果である、各フローの入力エッジノード毎に入力されるフロートラヒック量(「ftj」)を、出力部55を介して、フロー経路変更計算装置1Aに送信する。そして、フロートラヒック量計算装置5の処理を終える。
In step S505, the output
以上説明したように、本発明の第2の実施形態に係るフロー経路変更計算システム1000によれば、コントローラ6から取得した宛先アドレスに基づいて定義されるフローの情報から、フロートラヒック量計算装置5が、各フローの入力エッジノード毎に入力されるフロートラヒック量を求めることができる。そして、その情報を入力情報として、フロー経路変更計算装置1Aは、経路変更の対象となるフローとその変更先経路とを計算し、コントローラ6を介して、SDNに基づく集中制御(一元管理)による経路最適化処理を実行する。よって、経路変更後に不整合となるフローを回避し、最大リンク使用率を低下させる経路制御を行うことが可能となる。
As described above, according to the flow path change
また、フロートラヒック量計算装置5(フロートラヒック量計算部522)は、各フローの入力エッジノード毎に入力されるフロートラヒック量を計算する際に、(式2)に示すように、1次連立方程式を用いるため、単純な演算処理となり、高速かつ、低スペックの装置において、このフロートラヒック量計算装置5を実現することが可能となる。また、フロートラヒック量計算装置5は、(式2)を計算する際に、{連立方程式の式の数}={変数の数}={入力エッジノードの数}であるため、常に解を1つに定めることができる。
Further, when calculating the flow traffic amount input for each input edge node of each flow, the flow traffic amount calculation device 5 (flow traffic amount calculation unit 522), as shown in (Expression 2), the primary simultaneous system Since the equations are used, the calculation processing is simple, and the flow traffic
なお、本発明の第2の実施形態においては、フロートラヒック量計算装置5を単独の装置として説明したが、フロートラヒック量計算装置5が備えるフロートラヒック量計算部522の機能を、他の装置、例えば、フロー経路変更計算装置1Aや、ネットワーク管理装置(不図示)等に組み込んで構成するようにしてもよい。
In the second embodiment of the present invention, the flow traffic
1,1A フロー経路変更計算装置
4 通信ネットワーク
5 フロートラヒック量計算装置
6 コントローラ
10,51 入力部
20,52 制御部
21,521 入力情報処理部
22 最大リンク使用率計算部
23,523 出力情報処理部
30,53 メモリ部
40,54 記憶部
50,55 出力部
100 トポロジ情報
200 リンク情報
221 整合性確認部
300,300a フロー情報
400 フローの経路変更後のリンク情報
500 経路変更後のフロー情報
522 フロートラヒック量計算部
700 転送テーブル(フローテーブル)
1000 フロー経路変更計算システム
1, 1A Flow path change
1000 Flow path change calculation system
Claims (4)
前記フロー経路変更計算装置は、記憶部と、入力情報処理部と、最大リンク使用率計算部と、出力情報処理部と、を備え、
前記入力情報処理部は、(1)前記ノード間の接続関係を示すトポロジ情報、(2)前記リンクを経由する際のコストを示すリンクメトリック、各リンクの最大帯域および各リンクのリンクトラヒック量を含むリンク情報、並びに、(3)宛先アドレスに基づき定義される前記フローの経路情報とそのフロートラヒック量を含むフロー情報、を取得して前記記憶部に記憶し、
前記最大リンク使用率計算部は、
前記各リンクの最大帯域および前記各リンクのリンクトラヒック量に基づき、前記ネットワーク内の各リンクのリンク使用率を計算して、最大リンク使用率および当該最大リンク使用率となるリンクを取得し、
当該取得した最大リンク使用率となるリンクを通るフローの中で、
(条件A)当該最大リンク使用率となるリンクを通らない、
(条件B)経路変更により最大リンク使用率となるリンクを変更しない、
(条件C)前記複数のノードそれぞれが備えるフローの転送テーブルにおいて、前記宛先アドレス毎に出力IF(InterFace)が一意に定まる、
の全てを満たすフローの最短経路と、当該最短経路に変更した場合の最大リンク使用率とを計算し、当該最大リンク使用率が最小値となるフローを変更対象のフローとし、当該変更対象のフローとその変更先経路とを決定し、
前記出力情報処理部は、前記決定された変更対象のフローとその変更先経路、および、前記計算した最大リンク使用率を出力すること
を特徴とするフロー経路変更計算装置。 Among the flows that flow in a network that includes a plurality of nodes and a plurality of links that connect the plurality of nodes, a flow path change calculation device that calculates a change destination path for a change target flow,
The flow path change calculation device includes a storage unit, an input information processing unit, a maximum link usage rate calculation unit, and an output information processing unit,
The input information processing unit includes (1) topology information indicating a connection relationship between the nodes, (2) a link metric indicating a cost when passing through the link, a maximum bandwidth of each link, and a link traffic amount of each link. Link information including, and (3) the flow information including the flow path information and the flow traffic amount defined based on the destination address, and storing the acquired flow information in the storage unit,
The maximum link usage rate calculation unit is:
Based on the maximum bandwidth of each link and the amount of link traffic of each link, the link usage rate of each link in the network is calculated, and the link having the maximum link usage rate and the maximum link usage rate is obtained.
In the flow that passes through the link that will be the maximum link usage rate obtained,
(Condition A) Do not pass through the link with the maximum link usage rate.
(Condition B) Do not change the link with the maximum link usage rate due to the route change.
(Condition C) In the forwarding table of the flow provided in each of the plurality of nodes, an output IF (InterFace) is uniquely determined for each destination address.
Calculate the shortest path of the flow that satisfies all of the above and the maximum link usage rate when changing to the shortest path, and the flow that has the minimum value for the maximum link usage rate is the change target flow. And the change destination route,
The output information processing unit outputs the determined flow to be changed, its change destination route, and the calculated maximum link usage rate.
前記最大リンク使用率計算部は、
前記複数のノードのうち、1を超える前記出力IF数が少なくとも1つ設定される場合には、前記出力IFが一意に定まらない場合があるとして、当該フローを前記経路変更の対象となるフローから除外し、
前記複数のノードの全てにおいて、1以下の前記出力IF数が設定される場合に、前記(条件C)を満たすと判定すること
を特徴とする請求項1に記載のフロー経路変更計算装置。 Among the flows that pass through the link having the maximum link usage rate, when a flow that is subject to a path change that satisfies the above (Condition A) and (Condition B) is assumed to have been changed, the plurality of In the forwarding table of each node, further comprising a consistency confirmation unit for confirming whether or not the number of output IFs exceeding 1 is set for the same destination address,
The maximum link usage rate calculation unit is:
If at least one output IF number exceeding 1 is set among the plurality of nodes, the output IF may not be uniquely determined, and the flow is changed from the flow subject to the path change. Exclude
2. The flow path change calculation device according to claim 1, wherein when the number of output IFs equal to or less than 1 is set in all of the plurality of nodes, it is determined that the (condition C) is satisfied.
前記最大リンク使用率計算部は、
当該変更したトポロジ情報を参照して、前記(条件A)および前記(条件B)を満たすフローの最短経路と、当該最短経路に変更した場合の最大リンク使用率を計算すること、
を特徴とする請求項1に記載のフロー経路変更計算装置。 Obtain a destination address for each flow that passes through the link that becomes the maximum link usage rate, refer to the route information of the flow, determine whether a flow to the acquired destination address passes for each node, and In the node through which the flow to the acquired destination address passes, leave only the link to the node that is the transfer destination of the flow of the acquired destination address, and exclude the link to the other node from the link that is the change destination route Further comprising a consistency checking unit for changing the topology information,
The maximum link usage rate calculation unit is:
Referring to the changed topology information, calculating the shortest path of the flow that satisfies the above (Condition A) and (Condition B) and the maximum link usage rate when changing to the shortest path,
The flow path change calculation apparatus according to claim 1, wherein:
前記コントローラは、前記複数のノードのうちの前記ネットワークの境界に位置するエッジノードから、宛先アドレスに基づき定義されるフロー毎のフロートラヒック量と当該フローの経路情報とを取得して、前記フロートラヒック量計算装置に送信し、
前記フロートラヒック量計算装置は、
前記宛先アドレスに基づき定義される各フローの各エッジノードにおけるフロートラヒック量の情報と各フローの経路情報とを用いて、前記エッジノードそれぞれに入力されるフロー毎のフロートラヒック量を計算し、前記フロー経路変更計算装置に送信し、
前記フロー経路変更計算装置は、
前記エッジノードそれぞれに入力されるフロー毎のフロートラヒック量を用いて、変更対象のフローとその変更先経路とを計算すること
を特徴するフロー経路変更計算システム。 A controller connected to a plurality of nodes constituting a network, the flow path change calculation device according to claim 1 connected to the controller, and a flow traffic amount calculation connected to the controller and the flow path change calculation device A flow path change calculation system comprising a device,
The controller acquires a flow traffic amount for each flow defined based on a destination address and route information of the flow from an edge node located at a boundary of the network among the plurality of nodes, and the flow traffic is acquired. Send it to the quantity calculator,
The flow traffic amount calculation device includes:
Using the flow traffic information at each edge node of each flow defined based on the destination address and the path information of each flow, the flow traffic for each flow input to each of the edge nodes is calculated, Sent to the flow path change calculation device,
The flow path change calculation device includes:
A flow path change calculation system, wherein a flow to be changed and a change destination path thereof are calculated using a flow traffic amount for each flow input to each of the edge nodes.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014039383A JP6084583B2 (en) | 2014-02-28 | 2014-02-28 | Flow path change calculation device and flow path change calculation system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014039383A JP6084583B2 (en) | 2014-02-28 | 2014-02-28 | Flow path change calculation device and flow path change calculation system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015164245A JP2015164245A (en) | 2015-09-10 |
JP6084583B2 true JP6084583B2 (en) | 2017-02-22 |
Family
ID=54187023
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014039383A Expired - Fee Related JP6084583B2 (en) | 2014-02-28 | 2014-02-28 | Flow path change calculation device and flow path change calculation system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6084583B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006070762A1 (en) * | 2004-12-27 | 2006-07-06 | Shima Seiki Manufacturing Limited | Compound cam system |
WO2006104062A1 (en) * | 2005-03-28 | 2006-10-05 | Shima Seiki Manufacturing Limited | Method of knitting fabric |
WO2009031315A1 (en) * | 2007-09-05 | 2009-03-12 | Shima Seiki Mfg., Ltd. | Weft knitting machine |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017168881A (en) * | 2016-03-14 | 2017-09-21 | 日本電気株式会社 | Communication path control device, method and program |
JP7400565B2 (en) * | 2020-03-17 | 2023-12-19 | 日本電気株式会社 | Management devices, network systems, management methods, and programs |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4555769B2 (en) * | 2005-12-06 | 2010-10-06 | 日本電信電話株式会社 | Route setting method and route setting device |
EP2237496A1 (en) * | 2009-03-31 | 2010-10-06 | BRITISH TELECOMMUNICATIONS public limited company | Pre-congestion notification (PCN) as a base for admission control and flow termination |
JP6006684B2 (en) * | 2013-07-01 | 2016-10-12 | 日本電信電話株式会社 | Flow path change calculation device |
-
2014
- 2014-02-28 JP JP2014039383A patent/JP6084583B2/en not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006070762A1 (en) * | 2004-12-27 | 2006-07-06 | Shima Seiki Manufacturing Limited | Compound cam system |
WO2006104062A1 (en) * | 2005-03-28 | 2006-10-05 | Shima Seiki Manufacturing Limited | Method of knitting fabric |
WO2009031315A1 (en) * | 2007-09-05 | 2009-03-12 | Shima Seiki Mfg., Ltd. | Weft knitting machine |
Also Published As
Publication number | Publication date |
---|---|
JP2015164245A (en) | 2015-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8897141B2 (en) | Network system and routing method | |
CN1918861B (en) | Traffic flow determination in communications networks | |
JP6084583B2 (en) | Flow path change calculation device and flow path change calculation system | |
US20160352634A1 (en) | Network system, network control method and control apparatus | |
JP5044537B2 (en) | Transport control server, network system, and aggregated path determination method | |
US20150207736A1 (en) | Multi-Domain Source Routed Forwarding Based on Collaborating Network Controllers | |
WO2017219890A1 (en) | Method for generating routing control action in software defined network and related device | |
JP6007799B2 (en) | Centralized network control system | |
US10230581B2 (en) | Network management method and apparatus | |
WO2019061169A1 (en) | Route selection method and device based on hybrid resources, and server | |
JP6323547B2 (en) | COMMUNICATION SYSTEM, CONTROL DEVICE, COMMUNICATION CONTROL METHOD, AND PROGRAM | |
JP5723334B2 (en) | Network topology estimation method and topology estimation apparatus | |
US20160065449A1 (en) | Bandwidth-Weighted Equal Cost Multi-Path Routing | |
CN107135158A (en) | An Optimal Path Selection Method in Multipath Transmission | |
US10237202B2 (en) | Network control device, network control method, and recording medium for program | |
JP4714171B2 (en) | Route calculation apparatus, method, and program | |
WO2011118574A1 (en) | Communications system, control device, delay measuring method, and program | |
KR101586474B1 (en) | Apparatus and method for openflow routing | |
JP4951636B2 (en) | Network design apparatus, network design method, and program | |
CN106789642A (en) | A kind of dynamic load balancing method based on SDN | |
US20120014388A1 (en) | Path selection method, information processor, network system, and path selection program | |
JP6085260B2 (en) | Route control system, route control device, and route control method | |
KR101913745B1 (en) | Apparatus and method of configuring transmission route utilizing data plane application in software defined network | |
JP5212503B2 (en) | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM | |
KR20160139591A (en) | Method and apparatus for routing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160122 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161019 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20161025 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161212 |
|
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: 20170117 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170125 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6084583 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |