JP6426076B2 - ルーティングテーブル生成装置、ルーティングテーブル生成方法、及びプログラム - Google Patents

ルーティングテーブル生成装置、ルーティングテーブル生成方法、及びプログラム Download PDF

Info

Publication number
JP6426076B2
JP6426076B2 JP2015212464A JP2015212464A JP6426076B2 JP 6426076 B2 JP6426076 B2 JP 6426076B2 JP 2015212464 A JP2015212464 A JP 2015212464A JP 2015212464 A JP2015212464 A JP 2015212464A JP 6426076 B2 JP6426076 B2 JP 6426076B2
Authority
JP
Japan
Prior art keywords
traffic
destination
routing table
transfer
entry
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.)
Active
Application number
JP2015212464A
Other languages
English (en)
Other versions
JP2017085388A (ja
Inventor
高橋 洋介
洋介 高橋
晃人 鈴木
晃人 鈴木
雅之 辻野
雅之 辻野
石橋 圭介
圭介 石橋
塩本 公平
公平 塩本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2015212464A priority Critical patent/JP6426076B2/ja
Publication of JP2017085388A publication Critical patent/JP2017085388A/ja
Application granted granted Critical
Publication of JP6426076B2 publication Critical patent/JP6426076B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、ルーティングテーブル生成装置、ルーティングテーブル生成方法、及びプログラムに関する。
限られたネットワークリソースを用いてトラヒックを効率的に収容する技術として、到着トラヒックを予測し、予測結果に基づいてトラヒックの経路を制御するトラヒックエンジニアリング技術が研究されている。トラヒックエンジニアリングの例として、ネットワーク内の最大リンク利用率を最小化することを目的とした経路制御などが考えられる。最大リンク利用率とは、ネットワーク内において最も混雑している(最も利用率の高い)リンクの利用率をいう。また、リンクの利用率とは、リンクの帯域に対するトラヒック需要の割合をいう。
トラヒックエンジニアリングでは、トラヒック需要、ネットワークのトポロジ情報、及びリンク情報等から構成した数理最適化問題を用いて経路情報を算出する。トラヒックエンジニアリングのための代表的な数理最適化問題として、線形計画問題と整数計画問題とが知られている。なお、トラヒック需要とは、将来におけるトラヒック量の予測値をいう。
トラヒックエンジニアリングのための線形計画問題を数1(式(1.1)〜(1.6))に示す(特許文献2)。
Figure 0006426076
ここで、ネットワークは、有効グラフG(V、E)で表現される。Vはノードの集合、Eはリンクの集合を表す。また、ノードi∈Vからノードj∈Vまでのリンク容量はcij∈Eと表す。ノードpからノードqまでのトラヒック需要は、tpqと表す。
Figure 0006426076
は、トラヒック需要tpqについて、リンク(i,j)の通過割合を示し、ルーティング変数と呼ばれる。通過割合とは、トラヒック需要tpqに対して、リンク(i,j)に分配されたトラヒック量の割合をいう。例えば、2つのリンクを有する転送装置において、トラヒック需要tpqについての一方のリンクの通過割合が0.3であれば、他方のリンクの通過割合は0.7である。rは、最大リンク利用率を示しており、数1ではrを最小化するようなルーティング変数の値を求めている。
式(1.1)は、最大リンク利用率を最小化する目的関数を示しており、式(1.2)〜式(1.6)は制約条件である。式(1.2)及び式(1.3)は、フロー保存則を示している。式(1.4)は、リンク(i,j)を通過するトラヒックの総和がリンク容量×最大リンク利用率を超えないことを示している。式(1.5)及び(1.6)は、ルーティング変数
Figure 0006426076
と、最大リンク利用率rとの値域を示している。
この線形計画問題では、ネットワーク内の最大リンク利用率を最小化するような経路情報が解として求められる。経路情報は、各転送装置におけるトラヒックの複数の出力ポートへの送出割合として得られる。ここで得られた経路情報をネットワークに設定するためには、各転送装置においてトラヒックを任意の割合でマルチパス分割できる必要がある。
トラヒックをマルチパス分割するための技術として、IPルータにおけるECMP(Equal-Cost Multi-path)技術がある。ECMPは、コストが等しい出力ポートに対してトラヒックを等分割して送信する技術であり、任意の割合でマルチパス分割することはできない。
一方、OpenFlow1.3以降において、Group TableにおけるSelect機能を使うことで、任意の粒度でトラヒックをマルチパス分割することができる。しかし、Select機能は、OpenFlow1.3仕様の中で、必ず実装しなければならない必須機能とされていないため、OpenFlow1.3に準拠したスイッチであっても利用できないことがある。
次に、トラヒックエンジニアリングのための整数計画問題を数4(式(2.1)〜(2.6))に示す。
Figure 0006426076
数4は、数1において、式(1.5)を式(2.5)に置き換えたものである。
この整数計画問題では、数1の場合と同様に、ネットワーク内の最大リンク利用率を最小化するような経路情報が解として求められる。しかしながら、式(2.5)により、解が整数値であることが制約条件になっているため、得られる経路情報は、各転送装置におけるトラヒックの単一の出力ポートとなる。ここで得られた経路情報をネットワークに設定するにあたっては、各転送装置においてトラヒックを任意の割合でマルチパス分割できる必要がない。このため、整数計画問題で得られた経路は線形計画問題で得られた経路よりも幅広いネットワークに設定することが可能である。
特許第5747393号公報 特許第7542981号公報
計算時間の観点で線形計画問題と整数計画問題とを比較すると、線形計画問題は、解法としてシンプレックス法、内点法といった効率的なアルゴリズムが存在し、大規模な問題においても高速に解を導出することができる。一方、整数計画問題は、NP困難であることが知られており、解導出のための効率的なアルゴリズムが存在しない。このため、整数計画問題では、大規模な問題においては現実的な実行時間で解を導出することが困難となる。
次に、「得られる最適経路の性能」の観点で線形計画問題と整数計画問題を比較すると、線形計画問題は、解として整数を含めた実数全てを許容するのに対して、整数計画問題は、解として整数のみを許容する。このように、線形計画問題は、整数計画問題より広い解空間から解を導出できるため、得られる解の最適性、すなわち最適経路の性能は高い。数1及び数2の例のように、ネットワーク内の最大リンク利用率を目的関数とした場合には、線形計画問題(数1)で得られた最適経路の方が、ネットワーク内の最大リンク利用率をより低減させた経路が得られる。
このように、線形計画問題による最適経路計算は、「計算時間」及び「得られる経路の性能」の観点で優れているものの、得られた最適経路を設定できる転送装置が限られる、という課題が存在する。
したがって、線形計画問題による最適経路計算等、任意の方法によって求められた経路情報を転送装置に設定可能な技術が求められる。
本発明は、上記の点に鑑みてなされたものであって、任意の方法で得られた経路情報を設定可能な転送装置の範囲を拡張することを目的とする。
そこで上記課題を解決するため、ルーティングテーブル生成装置は、それぞれが異なる条件と、前記条件に合致したトラヒックの転送先を示す情報とを含む複数のエントリが構成するルーティングテーブルを利用して転送対象のトラヒックの転送先を決定する転送装置に関する発着ノード別のトラヒック量についての前記エントリ別の割合の集合を、前記転送装置による転送先ごとのグループに分類する分類部と、前記割合が分類されたグループに対応する転送先が、当該割合に係る前記エントリの条件に合致した場合の転送先となるように前記各エントリを生成する生成部とを有し、前記分類部は、前記グループごとに、当該グループに分類された割合の総和と、当該グループに対応する転送先に対して前記発着ノード別のトラヒックに関して入力された、転送先別のトラヒック量の割合の目標値との差分が最小となるように、前記エントリ別のトラヒック量の割合の集合を分類する。
任意の方法で得られた経路情報を設定可能な転送装置の範囲を拡張することができる。
本発明の実施の形態におけるネットワーク構成例を示す図である。 本発明の実施の形態におけるルーティングテーブル生成装置のハードウェア構成例を示す図である。 本発明の実施の形態におけるルーティングテーブル生成装置の機能構成例を示す図である。 ルーティングテーブル生成装置が実行する処理手順の一例を説明するためのフローチャートである。 或る転送装置の構成例を示す図である。 経路計算装置によって算出された経路情報の一例を示す図である。 或る転送装置に関するトラヒック情報の一例を示す図である。 ポート・リンク情報の構成例を示す図である。 出力ポート別最適トラヒック量割合の集合の一例を示す図である。 エントリ別観測トラヒック量割合の集合の分類結果の一例を示す図である。 ルーティングテーブルの生成結果の一例を示す図である。
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態におけるネットワーク構成例を示す図である。図1には、端末50a〜50d、転送装置40a〜40c、制御装置20、経路計算装置30、及びルーティングテーブル生成装置10が示されている。なお、端末50a〜50dを区別しない場合、端末50という。また、転送装置40a〜40cを区別しない場合、転送装置40という。
各端末50は、トラヒックを発生させる装置である。すなわち、各端末50は、トラヒックの発信元又は宛先に相当する。各端末50は、いずれかの転送装置40にネットワークを介して接続される。なお、トラヒックとは、ネットワーク上の通信の流れをいい、通信は、例えば、パケットの集合等によって構成される。
各転送装置40は、トラヒックを転送(中継)する装置である。転送装置40の一例として、SDN(Software Defined Network)/OpenFlowに対応したスイッチ(OpenFlowスイッチ)が挙げられる。各転送装置40は、いずれかの端末50又は他の転送装置40にリンクを介して接続される。各転送装置40は、ルーティングエントリの集合であるルーティングテーブルを有し、ルーティングテーブルに従って、転送対象のトラヒックの出力先の出力ポート(転送先)を決定する。ルーティングエントリは、トラヒックに対する条件であるマッチングルールと、マッチングルールに合致したトラヒックの出力ポート(転送先)を示す出力ポート情報とを含む。マッチングルールは、トラヒックの識別情報(IPヘッダ情報やTCPヘッダ情報やMPLS(Multi-Protocol Label Switching)ヘッダ情報等を含み、ルーティングエントリごとに異なる。マッチングルールには、少なくとも発着ノードを識別できる情報(発着アドレス情報、MPLSヘッダ情報等)が含まれている必要がある。本実施の形態が有効に機能するためには、発着ノードの識別情報以外の識別子がマッチングルールに追加されており、発着ノード別フローより細かい粒度でのトラヒック制御が可能となっていることが望ましい。例えば、特許文献1で示されるような、発着ノード別マクロフローは、本実施に好適である。
なお、本実施の形態において、「ノード」とは、いずれかの転送装置40をいい、端末50は含まれない。したがって、本実施の形態において着目されるトラヒックは、図1において、転送装置40間を接続するリンクL1〜L3におけるトラヒックをいう。
各転送装置40は、また、ルーティングエントリごとのパケット数又はバイト数(以下、「トラヒック量」という。)を計測し、計測結果を制御装置20に送信する。
制御装置20は、各転送装置40に対してルーティングテーブルを設定する装置である。制御装置20の一例として、SDN/OpenFlowに対応したコントローラ(OpenFlowコントローラ)が挙げられる。制御装置20は、また、定期的に転送装置40にアクセスし、各時刻におけるルーティングエントリのマッチングルールとエントリカウンタ値を取得できる。エントリカウンタ値は、当該ルーティングエントリにマッチして転送されたトラヒック量を示す。なお、制御装置20と各転送装置40との接続形態は、所定のものに限定されない。
経路計算装置30は、ネットワーク構成情報及びトラヒック情報を収集し、発着ノード別トラヒックごと、かつ、転送装置40ごとに、最適経路を示す経路情報を算出する。経路情報は、数1に基づいて算出される。経路計算装置30によって算出される経路情報xijpqは、発信側のノードp(転送装置40)から宛先のノードq(転送装置40)に送信される発着ノード別トラヒックについて、ノードiがj番目の出力リンク(i,j)にトラヒックを送信する割合を表す。以降、この経路情報xijpqを「出力リンク別最適トラヒック量割合」という。なお、上記したように、本実施の形態において「ノード」は、転送装置40のことをいう。したがって、発着ノード別トラヒックとは、転送装置40間別のトラヒックをいう。
ルーティングテーブル生成装置10は、経路計算装置30によって算出された経路情報と、制御装置20から取得したトラヒック情報とに基づいて、各転送装置40のルーティングテーブルを生成する。
図2は、本発明の実施の形態におけるルーティングテーブル生成装置のハードウェア構成例を示す図である。図2のルーティングテーブル生成装置10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、及びインタフェース装置105等を有する。
ルーティングテーブル生成装置10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムを記憶した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従ってルーティングテーブル生成装置10に係る機能を実行する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。
なお、制御装置20や経路計算装置30も、図2と同様のハードウェア構成を有していてもよい。また、ルーティングテーブル装置10、制御装置20、経路計算装置30は、1以上の共通のコンピュータを用いて実現されてもよい。
図3は、本発明の実施の形態におけるルーティングテーブル生成装置の機能構成例を示す図である。図3において、ルーティングテーブル生成装置10は、入力情報取得部11、分類部12、及び生成部13等を有する。これら各部は、ルーティングテーブル生成装置10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。
入力情報取得部11は、ルーティングテーブルの生成に必要な情報を制御装置20及び経路計算装置30から取得する。制御装置20からは、転送装置40のルーティングテーブルと、転送装置40において観測されたトラヒック情報が取得される。経路計算装置30からは、最適経路として算出された経路情報が取得される。
分類部12は、入力されたトラヒック情報及び経路情報に基づいて、転送装置40ごとに、当該転送装置40のルーティングテーブルを構成する各ルーティングエントリを、当該転送装置40の出力ポートごとのグループに分類する。分類の方法については後述される。
生成部13は、分類部12による分類結果に基づいて、各転送装置40のルーティングテーブルを生成(更新)する。より詳しくは、生成部13は、既存のルーティングテーブルにおける各ルーティングエントリのマッチングルールに対応する出力ポート情報を更新する。
以下、ルーティングテーブル生成装置10が実行する処理手順について説明する。図4は、ルーティングテーブル生成装置が実行する処理手順の一例を説明するためのフローチャートである。
ステップS101において、入力情報取得部11は、経路計算装置30から各転送装置40に関して算出された経路情報を取得し、制御装置20から各転送装置40のルーティングテーブル及びトラヒック情報を取得する。
本実施の形態では、便宜上、或る1つの転送装置40(以下、「転送装置X」という。)に着目して説明する。転送装置Xは、図5に示されるような構成を有することとする。
図5に示されるように、転送装置Xは、Port_a、Port_b、又はPort_cによって識別される3つの出力ポートを有する。各出力ポートには、リンク(Link_X、Link_Y、又はLink_Z)が接続されている。なお、図1において、各転送装置40が他の転送装置40と接続されるリンクは1つであるが、転送装置Xについては、便宜上、他の転送装置40と接続されるリンクが3つであるとする。
転送装置Xは、また、ルーティングテーブルT1を有する。ルーティングテーブルT1は、マッチングルールとして、Rule_1〜Rule_11を含む。例えば、Rule_1又はRule_5にマッチ(合致)したトラヒックは、Port_aから出力され、Rule_2又はRule_4にマッチしたトラヒックは、Port_bから出力され、Rule_3にマッチしたトラヒックは、Port_cから出力されるように各ルーティングエントリは設定されている。なお、ルーティングテーブルT1において、Rule_6〜Rule_11に対する出力ポートは、便宜上、省略されている。
このような転送装置Xについて、経路計算装置30は、数1に基づいて、図6に示されるような経路情報を算出したとする。
図6は、経路計算装置によって算出された経路情報の一例を示す図である。図6に示されるように、或る一つの転送装置40に関する経路情報は、発着ノード別のトラヒックについての各出力リンクへのトラヒック量の割合である「発着ノード別最適トラヒック量割合」の集合である。
一方、制御装置20からは、転送装置Xに関して、図5に示したルーティングテーブルT1と、図7に示されるような取得されるトラヒック情報が取得される。
図7に示されるように、転送装置Xに関して制御装置20〜取得されるトラヒック情報は、転送装置Xにおいて観測された、発着ノード別のトラヒック量についての、マッチングルール別の割合である、エントリ別観測トラヒック量割合の集合である。
続いて、入力情報取得部11は、取得された経路情報及びトラヒック情報を、ルーティングテーブルの生成処理に都合の良い形式に加工する(ステップS102)。
例えば、図6示される出力リンク別ト最適ラヒック量割合は、出力ポート別最適トラヒック量割合に変換される。当該変換は、転送装置Xにおいて保持されている「ポート・リンク情報」を利用して行われる。
図8は、ポート・リンク情報の構成例を示す図である。図8に示されるように、ポート・リンク情報は、出力ポートと出力リンクとの対応関係を示す。基本的に、出力ポートと出力リンクとは1対1に対応する。図8では、図5の転送装置Xにおけるポート・リンク情報が示されている。なお、ポート・リンク情報は、例えば、制御装置20を介して転送装置Xから取得される。
図6の各出力リンク別最適トラヒック量割合に対応する「出力リンク」が、図8のポート・リンク情報に基づいて、「出力ポート」に置換されることで、出力ポート別最適トラヒック量割合の集合が得られる。図9に、出力ポート別最適トラヒック量割合の集合の一例を示す。
また、入力情報取得部11は、制御装置20から取得されたトラヒック情報についても加工を行う。図7では、便宜上、加工結果である「エントリ別観測トラヒック量割合」が示されているが、厳密には、制御装置20から取得されるトラヒック情報は、「エントリ別観測トラヒック量」である。入力情報取得部11は、各エントリ別観測トラヒック量について、発着ノード単位での割合を求めることで、「エントリ別観測トラヒック量割合」を得る。
なお、転送装置40内のルーティングテーブルはルーティングエントリ毎のトラヒック量のカウンタ値を保存している。このカウンタ値を計測することで、「エントリ別観測トラヒック量」を得ることができる。
なお、これから生成されるルーティングテーブルT1は、将来において使用されるものである。したがって、「エントリ別観測トラヒック量」がそのまま用いられるのではなく、「エントリ別観測トラヒック量」が、将来において予測されるトラヒック需要の予測値に変換された結果に基づいて、「エントリ別観測トラヒック量割合」が算出されてもよい。例えば、線形予測、ARIMA等によって予測値が算出されてもよい。本実施の形態では、トラヒック需要が一定であるとの仮定に基づいて、「エントリ別観測トラヒック量」がそのまま予測値として利用される例について説明する。
続いて、分類部12は、発着ノードごとに、当該発着ノードに関するエントリ別観測トラヒック量割合の集合を、当該発着ノードに関して出力ポート別最適トラヒック量割合が割り当てられている出力ポート別のグループに分類する(ステップS103)。
特定の発着ノード別トラヒックに対する、出力ポート別最適トラヒック量割合をP(p1,p2,p3,...,pN)とし、エントリ別観測トラヒック量割合をF(f1,f2,f3,...,fM)とした場合、分類部12は、Fを任意に組み合わせて出力ポート別近似トラヒック量割合A(a1,a2,a3,...,aN)を生成する。すなわち、エントリ別観測トラヒック量割合の集合が、出力ポート別のグループに分類される。Aについて式(3.1)で表す。
Figure 0006426076
ここで、uijは、Fの組み合わせを表す0−1変数であり、aにfが含まれる場合に1、それ以外の場合に0を表す。fは、いずれか1つのaにのみ含まれる。この条件について式(3.2)、(3.3)で表す。
Figure 0006426076
この際、分類部12は、出力ポート別近似トラヒック量割合Aと出力ポート別最適トラヒック量割合Pとの誤差(差分)が最も小さくなるように、出力ポート別近似トラヒック量割合Aを生成する。出力ポート別近似トラヒック量割合Aと出力ポート別最適トラヒック量割合Pとの誤差を式(3.4)で表す。
Figure 0006426076
式(3.1)から(3.4)により、以下の数理計画問題を定式化できる。
Figure 0006426076
しかしながら、この数理計画問題は、目的関数が非線形関数であるため、効率的な解導出が困難である。そこで、誤差ベクトルZ(z,...,zN)を導入し、数8を、下記のような0−1整数計画問題へと変換する。
Figure 0006426076
数9では、式(3.4)の非線形関数が、式(3.6)、(3.7)、及び(3.8)で表現されている。
なお、数9における各パラメータの意味を改めて説明すると、以下の通りである。
は、i番目の出力ポートのグループに関する出力ポート別最適トラヒック量割合と出力ポート別近似トラヒック量割合との差分(誤差)である。
Mは、ルーティングテーブルT1のルーティングエントリの数である。
Nは、出力ポートの数である。
は、i番目の出力ポートに関して算出された出力ポート別最適トラヒック量割合である。
は、i番目の出力ポートに対応するグループに分類されたエントリ別観測トラヒック量割合の総和である。
分類部12は、数9の最適化問題を解くことで、誤差ベクトルZを最小化するような、マッピング変数uijを得る。その結果、エントリ別観測トラヒック量割合の集合は、誤差ベクトルZが最小となるように、出力ポート別のグループに分類される。
図10は、エントリ別観測トラヒック量割合の集合の分類結果の一例を示す図である。図10に示される「最適化問題」は、数9のことである。当該最適化問題が解かれることにより、uijの値が求まり、その結果、各マッチングルールは、出力ポート別のグループに分類される。図10では、マッチングルールとしてRule_1、Rule_2、又はRule_4を含む3つのルーティングエントリが、Port_aのグループに分類され、マッチングルールとしてRule_3又はRule_5を含む2つのルーティングエントリが、Port_bに分類された例が示されている。
なお、図10では、特定の発着ノード別トラヒック(Node1−Node2)に関するuijの算出結果が示されているが、転送装置Xにおいて観測された各発着ノード別トラヒックについて、uijが算出され、発着ノード別トラヒックごとに、マッチングルールが、出力ポート別のグループに分類される。
続いて、生成部13は、分類部12による分類結果に基づいて、転送装置XのルーティングテーブルT1を生成(更新)する(ステップS104)。
図11は、ルーティングテーブルの生成結果の一例を示す図である。図11では、エントリ別観測トラヒック量割合と出力ポート別最適トラヒック量割合とがルーティングテーブル生成装置10に入力され、ルーティングテーブル生成装置10からルーティングテーブルT1が出力されることが示されている。生成されたルーティングテーブルT1は、制御装置20によって転送装置Xに設定される。その結果、トラヒックを効果的に分散させ、ネットワークの使用効率を向上可能な経路制御が転送装置Xによって実行されることになる。
なお、上記の処理手順は、転送装置X以外の各転送装置40に関しても実行される。
上述したように、本実施の形態によれば、トラヒックスプリット機能を有さない転送装置40においても、数1の線形計画問題で得られた経路を設定できるようになる。したがって、発着ノード間に複数のパスが存在する環境において、マルチパスを有効活用することで最適経路に近付けることができる。また、線形計画問題の2つの利点(「計算時間が短い」、「得られる最適経路の性能が高い」)を得ることができる。その結果、大規模なネットワークに対して現実的な時間で高性能な最適経路を様々な転送装置に設定することができる。
なお、数9は、転送装置別、かつ、発着ノード別の問題である。各転送装置、発着ノード間で数9を並列に計算可能であるため、並列計算可能な計算機をルーティングテーブル生成装置10に用いることで、ネットワーク全体の最適経路解を高速に導出できる。
また、本実施の形態では、経路計算装置30によって数1に基づいて算出される経路情報がルーティングテーブルの生成に際しての目標値とされる例について説明したが、ルーティングテーブル生成装置10に入力される経路情報は、斯かる経路情報に限定されない。例えば、最大リンク率以外のパラメータの最適化が目的関数とされてもよい。また、図9に示した出力ポート別最適トラヒック量割合の目標値が、人の任意によって設定されてもよい。また、どのような経路を得たいかに応じて、最適経路以外の経路に関する経路情報が目標値として入力されてもよい。
また、上記では、ルーティングエントリにおいて転送先を示す情報として、出力ポート情報が含まれる例について説明したが、当該転送先を示す情報は、転送パス(転送経路)を示す情報(以下、「転送パス情報」という。)であってもよい。すなわち、各ルーティングエントリは、マッチングルールと転送パス情報とを含む。転送装置40は、転送対象のトラヒックに合致するマッチングルールを含むルーティングエントリに基づいて転送パスを判定し、転送パスに対応する出力ポートから当該トラヒックを出力する。転送パスと出力ポートとの対応情報は、転送装置40に記憶されている。また、転送パスと出力ポートとの関係は、必ずしも1対1ではない。この場合、上記における「出力ポート」は、「転送パス」に置き換えられればよい。例えば、経路計算装置30によって算出される経路情報は、転送パス別に、トラヒック量割合を示す情報となる。したがって、上記における「出力ポート別最適トラヒック量割合」は、「転送パス別最適トラヒック量割合」に置き換えられればよい。
上記より、本実施の形態において、出力ポート及び転送パスは、転送装置40による転送先の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
10 ルーティングテーブル生成装置
11 入力情報取得部
12 分類部
13 生成部
20 制御装置
30 経路計算装置
40a、40b、40c 転送装置
50a、50b、50c、50d 端末
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
B バス

Claims (5)

  1. それぞれが異なる条件と、前記条件に合致したトラヒックの転送先を示す情報とを含む複数のエントリが構成するルーティングテーブルを利用して転送対象のトラヒックの転送先を決定する転送装置に関する発着ノード別のトラヒック量についての前記エントリ別の割合の集合を、前記転送装置による転送先ごとのグループに分類する分類部と、
    前記割合が分類されたグループに対応する転送先が、当該割合に係る前記エントリの条件に合致した場合の転送先となるように前記各エントリを生成する生成部とを有し、
    前記分類部は、前記グループごとに、当該グループに分類された割合の総和と、当該グループに対応する転送先に対して前記発着ノード別のトラヒックに関して入力された、転送先別のトラヒック量の割合の目標値との差分が最小となるように、前記エントリ別のトラヒック量の割合の集合を分類する、
    ことを特徴とするルーティングテーブル生成装置。
  2. 前記分類部は、以下の最適化問題
    Figure 0006426076
    但し、zは、i番目の転送先のグループに関する前記目標値と前記総和との差分、
    Mは、前記ルーティングテーブルのエントリの数、
    Nは、転送先の数、
    は、i番目の転送先に関して算出された転送先別のトラヒック量の割合、
    は、i番目の転送先に対応するグループに分類された割合の総和、
    ijは、j番目のルーティングエントリがi番目の転送先に対応するグループに分類された場合に1、そうでない場合に0、
    を解くことで、前記エントリ別のトラヒック量の割合の集合を分類する特徴とする請求項1に記載のルーティングテーブル生成装置。
  3. それぞれが異なる条件と前記条件に合致したトラヒックの転送先を示す情報とを含む複数のエントリが構成するルーティングテーブルを利用して転送対象のトラヒックの転送先を決定する転送装置に関する発着ノード別のトラヒック量についての前記エントリ別の割合の集合を、前記転送装置による転送先ごとのグループに分類する分類手順と、
    前記割合が分類されたグループに対応する転送先が、当該割合に係る前記エントリの条件に合致した場合の転送先となるように前記各エントリを生成する生成手順とをコンピュータが実行し、
    前記分類手順は、前記グループごとに、当該グループに分類された割合の総和と、当該グループに対応する転送先に対して前記発着ノード別のトラヒックに関して入力された、転送先別のトラヒック量の割合の目標値との差分が最小となるように、前記エントリ別のトラヒック量の割合の集合を分類する、
    ことを特徴とするルーティングテーブル生成方法。
  4. 前記分類手順は、以下の最適化問題
    Figure 0006426076
    但し、zは、i番目の転送先のグループに関する前記目標値と前記総和との差分、
    Mは、前記ルーティングテーブルのエントリの数、
    Nは、転送先の数、
    は、i番目の転送先に関して算出された転送先別のトラヒック量の割合、
    は、i番目の転送先に対応するグループに分類された割合の総和、
    ijは、j番目のルーティングエントリがi番目の転送先に対応するグループに分類された場合に1、そうでない場合に0、
    を解くことで、前記エントリ別のトラヒック量の割合の集合を分類する特徴とする請求項3に記載のルーティングテーブル生成方法。
  5. 請求項3又は4に記載のルーティングテーブル生成方法をコンピュータに実行させるためのプログラム。
JP2015212464A 2015-10-29 2015-10-29 ルーティングテーブル生成装置、ルーティングテーブル生成方法、及びプログラム Active JP6426076B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015212464A JP6426076B2 (ja) 2015-10-29 2015-10-29 ルーティングテーブル生成装置、ルーティングテーブル生成方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015212464A JP6426076B2 (ja) 2015-10-29 2015-10-29 ルーティングテーブル生成装置、ルーティングテーブル生成方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2017085388A JP2017085388A (ja) 2017-05-18
JP6426076B2 true JP6426076B2 (ja) 2018-11-21

Family

ID=58713331

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015212464A Active JP6426076B2 (ja) 2015-10-29 2015-10-29 ルーティングテーブル生成装置、ルーティングテーブル生成方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP6426076B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6747370B2 (ja) 2017-04-24 2020-08-26 株式会社デンソー 燃料噴射弁
CN115022225B (zh) * 2022-05-31 2023-11-10 东风电驱动系统有限公司 报文转发方法、装置、设备及可读存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5167292B2 (ja) * 2010-02-12 2013-03-21 日本電信電話株式会社 リンク帯域変動量上限計算装置、リンク帯域変動量上限計算方法およびプログラム
JP5742981B1 (ja) * 2014-02-19 2015-07-01 日本電信電話株式会社 経路計算装置及び方法及びプログラム

Also Published As

Publication number Publication date
JP2017085388A (ja) 2017-05-18

Similar Documents

Publication Publication Date Title
Xu et al. Link-state routing with hop-by-hop forwarding can achieve optimal traffic engineering
US10642739B2 (en) Distributed coordination of caching and processing by networking devices
Michael et al. Halo: Hop-by-hop adaptive link-state optimal routing
Wu et al. Orchestrating bulk data transfers across geo-distributed datacenters
EP2675119B1 (en) Communication system, control device, communication node, and communication method
Akin et al. Comparison of routing algorithms with static and dynamic link cost in software defined networking (SDN)
CN102972009A (zh) 用于实施联合服务器选择和路径选择的系统与方法
JP6323547B2 (ja) 通信システム、制御装置、通信制御方法、および、プログラム
GB2399708A (en) Assisted determination of data flows in communication/data networks
Feng et al. Dynamic network service optimization in distributed cloud networks
Poularakis et al. Learning the optimal synchronization rates in distributed SDN control architectures
EP1561311A1 (en) Dynamic load distribution using local state information
EP3076611B1 (en) Communication system, communication method, network information combination apparatus, and network information combination program
CN A proactive flow admission and re-routing scheme for load balancing and mitigation of congestion propagation in SDN data plane
Li et al. Pasr: An efficient flow forwarding scheme based on segment routing in software-defined networking
JP6426076B2 (ja) ルーティングテーブル生成装置、ルーティングテーブル生成方法、及びプログラム
JP4714171B2 (ja) 経路計算装置、方法、およびプログラム
Lee et al. Enhancing infiniband with openflow-style sdn capability
CN114024907A (zh) 一种多口字环形结构下的流量调度方法和系统
Danielis et al. Dynamic flow migration for delay constrained traffic in software-defined networks
Morita et al. An improved routing algorithm using chaotic neurodynamics for packet routing problems
CN111245724A (zh) 基于虚拟交换机部署的sdn负载均衡路由方法
Khoshbakht et al. SDTE: Software defined traffic engineering for improving data center network utilization
Medagliani et al. Global optimization for hash-based splitting
JP5212503B2 (ja) 通信制御装置、通信制御方法、および、通信制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180927

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181024

R150 Certificate of patent or registration of utility model

Ref document number: 6426076

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150