WO2010150585A1 - ネットワークのトポロジを変更するノード、システム、及び方法 - Google Patents
ネットワークのトポロジを変更するノード、システム、及び方法 Download PDFInfo
- Publication number
- WO2010150585A1 WO2010150585A1 PCT/JP2010/056088 JP2010056088W WO2010150585A1 WO 2010150585 A1 WO2010150585 A1 WO 2010150585A1 JP 2010056088 W JP2010056088 W JP 2010056088W WO 2010150585 A1 WO2010150585 A1 WO 2010150585A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- topology
- load
- network
- link
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/125—Shortest path evaluation based on throughput or bandwidth
Abstract
リンク上に設定される経路でデータを伝送するネットワークに含まれ、設定されたトポロジに従って論理的なリンクで相互に接続された複数のノードが負荷取得手段とトポロジ変更手段を有する。負荷取得手段は、自ノードの負荷を取得する。トポロジ変更手段は、負荷取得手段により取得された負荷の変化に応じてトポロジを変更する。
Description
本発明は、ネットワークのトポロジを変更する技術に関する。
ネットワークノード同士の接続形態、すなわちトポロジには、リング型、バス型などの様々な型(パターン)があり、パターンごとにトポロジの特性が異なる。
ネットワーク内のノードを、どのようなトポロジで接続するかは、そのネットワークの特性やトポロジの特性を考慮して決定される。ネットワークの特性が変化した場合、それに合わせてトポロジも変更されることが望ましい。
利用者などがトポロジを手動で変更することもあるが、ネットワークノード自身が、動的に、より適したトポロジに変更することも可能である。
特許文献1を参照すると、ネットワークノード(スイッチ)は、所定の時刻にトポロジを変更したり、利用者の指定により、あるいはスイッチ間の通信量に基づいて動的にトポロジを変更したりしている。
特許文献2を参照すると、ネットワークノード(経路選択装置)は、帯域に基づいて最小コストの経路を選択する。この経路選択により、全体のトポロジが変更される。
また、非特許文献1を参照すると、ネットワークノードは、各ノード間におけるトラフィックの比率からなる配列を、通信パターン(communication pattern)として求める。ネットワークノードは、この通信パターンが変化すると、現在のオーバーレイネットワークを維持し続けるための占有コスト(occupy cost)と、オーバーレイネットワークを再構成するための再構成コスト(reconfiguration cost)とを考慮して、オーバーレイネットワークを動的に再構成している。
これらのネットワークノードがトポロジを変更する場合、通常、物理的な接続形態はそのままで、ノード間の論理的なリンクの接続形態を変更する。
例えば、上記のオーバーレイネットワークでは、IP(Internet Protocol)トンネル、UDP(User Datagram Protocol)トンネル、またはTCP(Transmission Control Protocol)トンネルなどのトンネルで形成された論理的なリンクが変更される。
また、MPLS(Multi-Protocol Label Switching)ネットワークでは、ラベルパスにより形成される論理的なリンクが変更される。
J. Fan, M. Ammar, "Dynamic Topology Configuration in Service Overlay Networks: A Study of Reconfiguration Policies," Proceedings of the IEEE Infocom'06, Barcelona, Spain, April 2006.
しかしながら、特許文献1、2や非特許文献1に記載されたノードの制御方法では、トポロジの変更後に、各ノードに過負荷が生じることがあった。
ネットワーク内の各ノードは、経路情報を交換することで、全体のトポロジの情報を取得する。そして、各ノードは、取得したトポロジの情報に基づいて、最適な経路を計算している。
例えば、リンクステート型のルーティングプロトコルを使用する場合、経路計算アルゴリズムとして、Dijkstra(ダイクストラ)アルゴリズムが用いられる。このDijkstraアルゴリズムの計算オーダー(計算量)は、O((M+N)logN)であることが知られている。ここで、Mはリンク数、Nはノード数である。
トポロジの変更により、リンク数(M)が変化すると、この計算量も変動することとなる。また、トポロジの変更により、交換する経路情報の量も変動する。この結果、経路計算や経路情報の交換によりノードにかかる負荷も変動する。
ところが、特許文献1、2や非特許文献1に記載のノードは、経路上の各ノードにかかる負荷を考慮せず、経路の通信量や帯域に応じてトポロジを変更する。このため、トポロジ変更後において、ノードに過大な負荷がかかることがあった。
ノードの負荷を軽減するには、オペレータが手動で通信設定を変更する必要があり、負荷の軽減が困難であった。
本発明の目的は、経路制御を行うノードの負荷を容易に低減する技術を提供することである。
上記目的を達成するために、本発明のノードは、設定されたトポロジに従って論理的なリンクで相互に接続された複数のノードを有し、前記リンク上に設定される経路でデータを伝送するネットワークに含まれているノードであって、自ノードにかかる負荷を取得する負荷取得手段と、前記負荷取得手段により取得された前記負荷の変化に応じて前記トポロジを変更するトポロジ変更手段と、を有する。
本発明の通信システムは、ネットワークに含まれるネットワークノードであって、自ノードの負荷を取得し、該負荷の変化に応じて前記ネットワークのトポロジの変更を要する複数のネットワークノードと、前記ネットワークのトポロジに基づいて、前記ネットワークノードごとに、該ネットワークノードの要求を許可するか否かを判断し、該判断の結果に基づいて該トポロジを変更する管理ノードと、を有する。
本発明の管理ノードは、ネットワークに含まれる複数のネットワークノードのそれぞれにかかる負荷を取得する負荷取得手段と、前記負荷取得手段により取得された前記負荷に応じて、前記トポロジを変更するトポロジ変更手段と、を有する。
本発明の第1の観点に係るトポロジの変更方法は、設定されたトポロジに従って論理的なリンクで相互に接続された複数のノードを有し、前記リンク上に設定される経路でデータを伝送するネットワークに含まれているノードが、自ノードにかかる負荷を取得し、前記負荷の変化に応じて前記トポロジを変更する、トポロジ変更方法である。
本発明の第2の観点に係るトポロジの変更方法は、ネットワークに含まれる複数のネットワークノードが、自ノードにかかる負荷を取得し、前記負荷の変化に応じて前記ネットワークのトポロジの変更を要求し、管理ノードが、前記ネットワークのトポロジを参照して、前記ネットワークノードごとに、該ネットワークノードの要求を許可するか否かを判断し、該判断の結果に基づいて該トポロジを変更する、トポロジ変更方法である。
本発明の第3の観点に係るトポロジの変更方法は、負荷取得手段が、ネットワークに含まれる複数のネットワークノードのそれぞれにかかる負荷を取得し、トポロジ変更手段が、前記負荷取得手段により取得された前記負荷に応じて、前記トポロジを変更する、トポロジの変更方法である。
(第1の実施形態)
本発明を実施するための第1の形態について図面を参照して詳細に説明する。
本発明を実施するための第1の形態について図面を参照して詳細に説明する。
図1は、本実施形態の通信システム1の一構成例を示す全体図である。図1を参照すると、通信システム1は、ノードN1、N2、N3、およびN4を有する。
これらのノードは、ベースネットワークD1に接続されており、ノード同士には、リンクL12、L13、L14、L23、L24、およびL34のリンクが形成されている。これらのリンクは、パケットのカプセル化によりエミュレートされる仮想的なリンクである。本実施形態では、各ノードは、IPトンネル技術を用いて動的にリンクを開設したり、削除したりする。
これらの論理的なリンクにより、ベースネットワークD1を下位として上位に位置するオーバーレイネットワークが構成される。
各ノードは、経路情報を交換することにより、このオーバーレイネットワークのトポロジを取得する。そして、ノードは、取得したトポロジに基づいて経路計算を行う。
そして、各ノードは、経路情報を交換することによる負荷、または経路計算をすることによる負荷が、上限値を超過した場合、リンクを1本削除するように、隣接ノードに指示する。また、各ノードは、経路情報を交換することによる負荷、または経路計算することによる負荷が、下限値を下回った場合、リンクを1本増加するように、他のノードに指示する。
このように、ノードの負荷に応じて、リンクが増減され、トポロジが変化することにより、各ノードの負荷が適切な範囲内に維持される。
各ノードの具体的な構成について説明する。図2は、ノードN1の一構成例を示すブロック図である。同図を参照すると、ノードN1は、負荷取得部10と、制御部11とを有する。ノードN2、N3、およびN4の構成も、ノードN1の構成と同様である。
負荷取得部10は、経路情報交換部101と、経路計算部102と、負荷監視部103とを有する。制御部11は、ルーティングテーブル111、データ転送部112、仮想インターフェース部113、およびトポロジ制御部114を有する。
経路情報交換部101は、仮想インターフェース部113を介して、リンク情報などの経路情報を格納したメッセージを隣接ノードへ送信するとともに、隣接ノードから、経路情報が格納されたメッセージを受信する。経路情報交換部101は、交換した経路情報から、オーバーレイネットワーク全体のトポロジを取得し、そのトポロジを示すトポロジ情報をストアする。
経路計算部102は、CPU(Central Processing Unit)などのリソースを使用して、経路情報交換部101にストアされたトポロジ情報に基づく経路計算を実行する。経路計算部102は、計算結果をルーティングテーブル111へ経路エントリとして登録する。
負荷監視部103は、経路情報交換部101の負荷と、経路計算部102の負荷とを監視する。具体的には、経路情報交換部101の負荷とは、隣接ノードと交換する単位時間当たりのメッセージ量またはメッセージ数である。経路計算部102の負荷とは、経路計算部が使用するCPUの負荷である。
ルーティングテーブル111には、経路計算部102により求められた経路が経路エントリとして記載される。データ転送部112は、ルーティングテーブル111に記載された経路で、仮想インターフェース部113を介して、データを転送する。仮想インターフェース部113には、ノードN1および通信相手のインターフェースに割り当てられる、実IPアドレス、仮想IPアドレスを記載したインターフェースリスト1131が保持される。
トポロジ制御部114は、経路情報交換部101の負荷の上限値および下限値と、経路計算部102の負荷の上限値および下限値とを記載した負荷閾値テーブル1141を有する。
トポロジ制御部114は、経路情報交換部101の負荷が上限値を超えた場合、または経路計算部102の負荷が上限値を超えた場合、いずれかの隣接ノードに対し、自ノードとの間のリンクを1本削除するように指示する。
また、トポロジ制御部114は、経路情報交換部101の負荷が下限値を下回った場合、または経路計算部102の負荷が下限値を下回った場合、いずれかの隣接ノードに対し、自ノードとの間のリンクを1本増加するように指示する。
詳細には、トポロジ制御部114は、インターフェースリスト1131において、増加あるいは削減するリンクに対応する仮想インターフェースのエントリを追加あるいは削除する。同時に、追加あるいは削除した仮想インターフェースを通知し、リンクの増加あるいは削減を指示する制御メッセージを送信する。制御メッセージを受信したノードは、制御メッセージの通知する仮想インターフェースを、自身のインターフェースリストに追加あるいは削除する。
図3は、ルーティングテーブル111に記載される内容をまとめた表の一例である。同図に示すように、ルーティングテーブル111には、「宛先IPアドレス」、「次ホップノードIPアドレス」、および「メトリック」などの項目からなるエントリが記載される。
「宛先IPアドレス」は、データの転送先のIPアドレスである。「次ホップIPアドレス」は、「宛先IPアドレス」に到達するまでに中継すべき次のノードのIPアドレスである。
「メトリック」は、経路計算において経路に加重される重みであり、使用されるルーティングプロトコルにより、メトリックの決定方法が異なる。例えば、RIP(Routing Information Protocol)であれば、ホップ数、IGRP(Interior Gateway Routing Protocol)であれば、帯域幅や通信遅延に基づいてメトリックが定められる。
図4は、インターフェースリスト1131に記載される内容の一例である。同図を参照すると、インターフェースリスト1131には、「インターフェース名」、「ローカル側ベースIPアドレス」、「リモート側ベースIPアドレス」、「ローカル側仮想IPアドレス」、および「リモート側仮想IPアドレス」が対応付けて記載される。
「インターフェース名」は、ノードN1のインターフェースを識別するための名称である。「ローカル側ベースIPアドレス」は、ノードN1のインターフェースのベースIPアドレスである。「リモート側ベースIPアドレス」は、ノードN1の通信相手のノード(N2、N4等)のベースIPアドレスである。「ローカル側仮想IPアドレス」は、ノードN1側のトンネルインターフェース(仮想インターフェース)のIPアドレスである。「リモート側仮想IPアドレス」は、通信相手(N2、N4等)側のトンネルインターフェースのIPアドレスである。
図5は、ノードN1が送受信するパケットのフォーマットを示す図である。同図に示すように、パケットには、ペイロードおよびヘッダが設けられる。
データ転送部112は、オーバーレイネットワーク内のノードを宛先とするパケットを受信した場合、ルーティングテーブル111を参照して、「宛先IPアドレス」に対応する「次ホップノードIPアドレス」を取得する。そして、データ転送部112は、インターフェースリスト1131を参照し、「次ホップノードIPアドレス」と一致する「リモート側仮想IPアドレス」を検索し、その「リモート側仮想IPアドレス」に対応する「ローカル側仮想IPアドレス」、「リモート側ベースIPアドレス」、および「インターフェース名」を取得する。
図5に示すように、データ転送部112は、取得した「ローカル側仮想IPアドレス」および「リモート側ベースIPアドレス」をそれぞれ、送信元仮想IPアドレス、宛先仮想IPアドレスとしてヘッダに付加する。更に、ノードN1は、ベースネットワークD1の宛先IPアドレスを付加し、取得した「リモート側ベースIPアドレス」を送信先IPアドレスとしてパケットのヘッダに付加することでカプセル化を行う。データ転送部112は、カプセル化したパケットを、「インターフェース名」の示すインターフェースから送出する。
一方、オーバーレイネットワーク内の他のノードから、パケットを受信した場合、データ転送部112は、パケットのヘッダから、ベースネットワークD1の送信元IPアドレス、宛先IPアドレスを取り外し、送信元仮想IPアドレス、宛先仮想IPアドレスを取得する。そして、データ転送部112は、ルーティングテーブル111に記載の経路で、そのパケットを転送する。
このように、送信元のノードでは、オーバーレイネットワークにおける仮想IPアドレスを、ベースネットワークD1におけるIPアドレスでカプセル化して送出し、送信先のノードでは、カプセル化を解除する。この手順を行うことにより、オーバーレイネットワーク内の各ノードは、ベースネットワークD1内のノードを経由するパケットを、オーバーレイネットワーク内のノード間で送受信されているように扱うことができる。
図6は、負荷閾値テーブル1141に記載の内容の一例を示す図である。同図に示すように、負荷閾値テーブル1141には、「交換メッセージ負荷」と、「経路計算負荷」とのそれぞれに上限値および下限値が記載される。
「交換メッセージ負荷」は、経路情報交換部101の負荷であり、具体的には、経路情報交換部101が単位時間当たりに送受信するメッセージの量または数である。例えば、単位として「Byte/sec」が使用される。
「経路計算負荷」は、経路計算部102の負荷であり、具体的には、経路計算部102が使用するCPUの使用率である。例えば、単位として「%」が使用される。
次に、ノードN1の動作について説明する。図7は、ノードN1の動作を示すフローチャートである。この動作は、ノードN1の電源が投入されたとき、または所定のアプリケーションが起動されたときに開始する。
図7を参照すると、ノードN1は、他のノードからリンクの開設または削除を指示する制御メッセージを受信したか否かを判断する(ステップS1)。
制御メッセージを受信したのであれば(ステップS1:YES)、ノードN1は、インターフェースリスト1131において、制御メッセージを生成したノードと自ノードとの間のリンクに対応するエントリを追加または削除する(ステップS2)。
制御メッセージを受信していない場合(ステップS1:NO)、またはステップS2の後、ノードN1は、経路情報に基づいてルーティングテーブル111を更新し、経路制御を行う(ステップS3)。ノードN1は、動作を開始したとき、または前回のトポロジ制御時から、トポロジを制御する周期(制御周期)が経過したか否かを判断する(ステップS4)。制御周期が経過したのであれば(ステップS4:YES)、ノードN1は、トポロジ制御処理を実行する(ステップS5)。
制御周期が経過していない場合(ステップS4:NO)、またはステップS5の後、ノードN1は、ステップS1に戻る。
図8は、トポロジ制御処理を示すフローチャートである。同図を参照すると、ノードN1は、交換メッセージ負荷、および経路計算負荷を取得する(ステップS50)。ノードN1は、これらの負荷のいずれかが、負荷閾値テーブル1141に記載された上限値を超えているか否かを判断する(ステップS55)。
いずれかの負荷が上限値を超えていれば(ステップS55:YES)、ノードN1は、オーバーレイネットワーク上の各ノードへの到達性を失わない範囲で、自ノードと隣接ノードとの間のリンクを一本削除することを決定する。ノードN1は、隣接ノードに対し、リンクを削除するように要求する制御メッセージを送信する。同時に、ノードN1は、削除対象のリンクに対応する仮想インターフェースを、インターフェースリスト1131から削除する(ステップS60)。
いずれの負荷も上限値以下であれば、ノードN1は、いずれかの負荷が下限値を下回っているか否かを判断する(ステップS65)。
いずれかの負荷が下限値を下回っていれば(ステップS65:YES)、ノードN1は、オーバーレイネットワーク内のノードと自ノードとの間のリンクを一本増加することを決定する。ノードN1は、増加するリンクに対応するノードに対し、リンクを追加するように要求する制御メッセージを送信する。同時に、ノードN1は、追加対象のリンクに対応する仮想インターフェースを、インターフェースリスト1131に追加する(ステップS70)。
いずれの負荷も下限値以上である場合(ステップS65:NO)、またはステップS60、S70の後、ノードN1は、トポロジ制御処理を終了する。
なお、本実施形態では、ノードは、IPトンネル技術を用いて、動的にリンクを開設、削除しているが、動的に開設、削除するリンクを形成できるのであれば、IPトンネル以外の技術を使用することも可能である。例えば、TCPトンネル、UDPトンネル、またはラベルパスにより、リンクが形成される構成であってもよい。
UDPレベル中継では、ノードは、受信したパケットに対応するUDPコネクションを終端し、転送する次区間のノード間で別のUDPコネクションを張りなおし、UDPコネクションレベルでの中継を行う。TCPレベル中継では、ノードは、受信したパケットに対応するTCPコネクションを終端し、転送する次区間のノード間で別のTCPコネクションを張りなおし、TCPコネクションレベルでの中継を行う。
また、本実施形態では、ノードは、交換メッセージ量と、経路計算を行うCPUの使用率とのうち、いずれか一方が上限値と下限値で規定される範囲外となったときにリンクを増減する構成としている。しかし、交換メッセージ量と使用率の両方が範囲外となったときにリンクを増減する構成とすることも可能である。
本実施形態では、ノードは、交換メッセージ量と、経路計算を行うCPUの使用率とを測定しているが、いずれか一方のみを測定して閾値と比較する構成であってもよい。自ノードの負荷を示すパラメータであれば、各ノードは、他のパラメータを測定し、閾値と比較することも可能である。
本実施形態では、開設あるいは削除するリンクを任意に選択しているが、リンク数の多いノードまたはリンク数の少ないノードとのリンクを優先して増加あるいは削減することもできる。
例えば、各ノードの処理能力が同等で、いずれかのノードに負荷が集中することを防ぎたい場合、ノードは、最もリンクの多いノードとのリンクから削減していく。
また、いずれかのノードの処理能力が高く、そのノードにリンクを集めたい場合、ノードは、最もリンクの少ないノードとのリンクから削減していく。この場合、一例として、トポロジは、処理能力の高いノードを中心としたスター型に近づく。
本実施形態では、増減するリンク数を1本のみとしているが、図9に示すように、ノードは、負荷に応じて、2本以上のリンク数を増減してもよい。例えば、経路計算負荷が91%~95%であれば、増加するリンク数を1本とし、経路計算負荷が96%~100%であれば、増加するリンク数を2本とする。
本実施形態の負荷取得部10が本発明の負荷取得手段に対応し、制御部11が本発明のトポロジ変更手段に対応する。
以上説明したように、本実施形態によれば、ノードは、自ノードにかかる負荷の変化に応じてトポロジを変更する。このため、トポロジの変更により負荷が増加しても、トポロジの再構成により、ノードの負荷を容易に低減できる。
ノードは、経路計算を行うCPUの使用率が上限値以下となるようにトポロジを変更するので、経路計算による負荷がノードに集中することを防ぐことができる。
ノードは、交換メッセージ量を上限値以下になるように、トポロジを変更するので、ノードに、メッセージ交換による負荷が、ノードに集中することを防ぐことができる。
ノードは、リンク数の開設あるいは削除によりトポロジを変更するので、変更後も変更前と同一の経路計算アルゴリズムを使用できる。
IPトンネル技術を使用してリンクを開設あるいは削除するので、ノードは動的にリンクを増減できる。
ノードは、負荷が下限値を下回った場合に、負荷が下限値以上となるようにトポロジを変更するので、隣接ノードの負荷を軽減することが可能である。
(第2の実施形態)
図10は、本発明の第2の実施形態のノードN1の一構成例を示すブロック図である。同図を参照すると、本実施形態のノードN1は、負荷監視部103の代わりに、消費電力監視部103aを有する点で、第1の実施形態のノードN1と異なる。
図10は、本発明の第2の実施形態のノードN1の一構成例を示すブロック図である。同図を参照すると、本実施形態のノードN1は、負荷監視部103の代わりに、消費電力監視部103aを有する点で、第1の実施形態のノードN1と異なる。
なお、本実施形態のノードについて、図2で説明した構成と同様な構成の詳細な説明を省略し、第1の実施形態と異なる点について詳しく説明する。
消費電力監視部103aは、ノードN1の消費電力を監視する。負荷閾値テーブル1141には、消費電力の上限値および下限値が予め記載される。トポロジ制御部114は、消費電力が上限値を超過すればリンクを増加し、下限値を下回ればリンクを削除する。
本実施形態によれば、ノードは、消費電力が大きくなりすぎないようにリンクを増減するので、各ノードにおいて消費電力が不足することを防止できる。
(第3の実施形態)
図11は、本発明の第3の実施形態の通信システム1bの一構成例を示す全体図である。同図を参照すると、通信システム1bは、トポロジ管理サーバN5を更に設け、トポロジ管理サーバN5が、リンクの増減を管理する点で、第1の実施形態の通信システム1と異なる。
図11は、本発明の第3の実施形態の通信システム1bの一構成例を示す全体図である。同図を参照すると、通信システム1bは、トポロジ管理サーバN5を更に設け、トポロジ管理サーバN5が、リンクの増減を管理する点で、第1の実施形態の通信システム1と異なる。
なお、本実施形態の通信システムについて、図1で説明した構成と同様な構成の詳細な説明を省略し、第1の実施形態と異なる点について詳しく説明する。
ノードN1~N5は、自ノードにかかる負荷が上限値以下で且つ下限値以上でなければ、1本リンクを増加または減少することを要求する制御メッセージをトポロジ管理サーバN5へ送信する。
トポロジ管理サーバN5は、ネットワーク全体のトポロジを取得し、各ノードからの制御メッセージを受け付ける。リンクの増減を要求する制御メッセージを受信したとき、トポロジ管理サーバN5は、現在のトポロジに基づいて、その制御メッセージの要求を許可すべきか否かを判断する。
例えば、要求されたリンクを削除することにより、いずれかのノードへの到達性が失われるのであれば、トポロジ管理サーバN5は、その削除の要求を許可しない。また、リンクの増減により、いずれかのノードに負荷が集中する場合にも、トポロジ管理サーバN5は、その要求を許可しない。
制御メッセージの要求を許可しないならば、トポロジ管理サーバN5は、要求にかかるリンクと異なるリンクを増減したり、あるいは要求を拒絶する制御メッセージを送信したりする。
制御メッセージの要求を許可するならば、トポロジ管理サーバN5は、そのリンクに対応するノードへ、リンクの増減を指示する制御メッセージを送信する。
図12は、通信システム1aの各ノードの動作の一例を示すシーケンス図である。ノードN1の負荷が上限値以上であったとき、ノードN1は、L12、L13、L14の中から、ランダムにL12を選択する。ノードN1は、選択したリンクの切断を要求する制御メッセージをトポロジ管理サーバN5へ送信する(ステップT1)。
トポロジ管理サーバN5は、その要求を許可し、リンクに対応するノードN1、N2へそれぞれL12の切断を指示する制御メッセージを送信する(ステップT2、T3)。
次いで、ノードN2、N3の負荷が上限値以上であったとき、ノードN2は、ランダムにL24を、ノードN3はL23を選択する。ノードN2、N3は、選択したリンクの切断を要求する制御メッセージをトポロジ管理サーバN5へ送信する(ステップT4、T5)。
トポロジ管理サーバN5は、L12が切断された状態のトポロジを参照し、L24およびL23の切断を許可すべきか否かを判断する。L12に加えてL24とL23の両方を切断すると、ノードN2への到達性が失われてしまう。そこで、トポロジ管理サーバN5は、L24の切断を許可せず、その代わりにL34を切断することを決定する。
トポロジ管理サーバN5は、ノードN2、N3へL23の切断を指示する制御メッセージを送信し(ステップT6、T7)、ノードN3、N4へL34の切断を指示する制御メッセージを送信する(ステップT8、T9)。
なお、本実施形態では、各ノードが、リンクの増減を要求する構成としているが、各ノードは、負荷が上限値と下限値で規定する範囲外となったか否かのみをトポロジ管理サーバN5に通知する構成としてもよい。この構成では、ノードからの通知に基づいて、トポロジ管理サーバN5が、どのリンクを増減するかを判断する。
また、本実施形態では、負荷が範囲外となったか否かを各ノードが判断する構成としているが、各ノードに代わってトポロジ管理サーバN5が判断を行う構成とすることもできる。
具体的には、各ノードは、監視した負荷を示す情報をトポロジ管理サーバN5へ送信する。トポロジ管理サーバN5には、図13に示すように、負荷取得部51、およびトポロジ管理部53を設ける。負荷取得部51は、各ノードの負荷を収集する。トポロジ管理部53は、いずれかのノードの負荷が範囲外であれば、トポロジを変更する。
本実施形態によれば、トポロジ管理サーバN5が、全体のトポロジを参照して、リンクを増減すべきか否かを判断するので、いずれかのノードへの到達性が失われたり、負荷が集中したりすることを防止できる。
(第4の実施形態)
図14は、本発明の第4の実施形態のノードN1の一構成例を示すブロック図である。同図を参照すると、本実施形態のノードN1は、負荷に応じて、トポロジパターンと、線路計算アルゴリズムとを変更する点で第1の実施形態のノードと異なる。
図14は、本発明の第4の実施形態のノードN1の一構成例を示すブロック図である。同図を参照すると、本実施形態のノードN1は、負荷に応じて、トポロジパターンと、線路計算アルゴリズムとを変更する点で第1の実施形態のノードと異なる。
なお、本実施形態のノードについて、図2で説明した構成と同様な構成の詳細な説明を省略し、第1の実施形態と異なる点について詳しく説明する。
具体的には、負荷取得部10が、トポロジパターン認識部104、および経路計算方法選択部105を更に有する。
トポロジパターン認識部104は、経路情報交換部101にストアされたトポロジ情報に基づいて、トポロジのパターンを認識する。
例えば、図15(a)の形態であれば、トポロジパターン認識部104は、フルメッシュ型に分類する。図15(b)、(c)、(d)、および(e)の形態であれば、トポロジパターン認識部104は、それぞれ、部分メッシュ型、スパニングツリー型、スター型、リング型に分類する。
また、トポロジパターン認識部104は、トポロジを分割し、それぞれを複数のパターンに分類してもよい。例えば、図16(a)に示すトポロジの場合、トポロジパターン認識部104は、そのトポロジを2分割し、各トポロジのパターンを、それぞれフルメッシュ型、リング型に分類している。図16(b)に示すトポロジの場合、トポロジパターン認識部104は、スパニングツリー型、部分メッシュ型に分類している。トポロジパターン認識部104が、トポロジを3つ以上に分割して、3つ以上のパターンを認識してもよいのは勿論である。
経路計算方法選択部105は、複数の経路計算アルゴリズムの中から、トポロジパターン認識部により認識されたパターンに対応するアルゴリズムを選択する。
図17に、トポロジのパターンごとに、最適な経路計算アルゴリズムを記載した表の一例を示す。同図に示すように、トポロジのパターンがフルメッシュトポロジや部分メッシュトポロジの場合、経路計算方法選択部105は、ダイクストラ(Dijkstra)アルゴリズムを選択する。
また、トポロジのパターンがスパニングツリートポロジの場合は、経路計算方法選択部105は、ラーニングベースの経路計算アルゴリズム(または、経路学習アルゴリズム)を選択する。
ラーニングベースの経路学習とは、受信したパケットのソースアドレス(例えばソースIPアドレス)を参照し、そのソースアドレスと受信インターフェースとの組を、宛先アドレス(例えば宛先IPアドレス)と送信インターフェースとの組としてルーティングテーブルに登録する方法である。ラーニングベースの経路学習を用いることにより、経路計算は不要となり、経路計算負荷をO(1)にすることが可能となる。
さらに、スタートポロジの場合は、スパニングツリートポロジの特殊な場合と捕らえることができる。スターの頂点ノードにおいては、スパニングツリートポロジの場合と同様にラーニングベースの経路学習を行うことによりルーティングテーブルを構成することが可能である。また、頂点ノード以外のノードは、自ノード以外の宛先アドレスをもつパケットも頂点ノードへ送信すればよいので、経路計算は不要となる。いずれの場合も、経路計算量はO(1)となる。
また、リングトポロジの場合は、宛先ノードへ到達するための経路は時計周りか反時計回りかのいずれかとなり、最小ホップ経路を計算する場合は、自ノードからの時計回りおよび反時計回りのホップ数をカウントすればよい。この場合の経路計算量はO(N)となる。
図16(a)、(b)に例示したように、トポロジを分割して、複数のパターンに分類できる場合、経路計算方法選択部105は、それぞれの部分ごとに、異なるアルゴリズムを適用してもよい。
経路計算部102は、経路計算方法選択部105で選択されたアルゴリズムで経路計算を行う。
トポロジ制御部114は、自ノードの負荷が上限値を超過する場合、複数のトポロジパターンの中から、自ノードと他のノードとの間のリンクが減少するようなパターンを選択する。また、トポロジ制御部114は、自ノードの負荷が下限値を下回る場合、複数のトポロジパターンの中から、自ノードと他のノードとの間のリンクが増加するようなパターンを選択する。
トポロジ制御部114は、現在のトポロジのパターンが選択したパターンに変更されるように、各ノードへ、リンクの増減を指示する制御メッセージを送信する。各ノードは、制御メッセージに応じてリンクを増減し、パターンが変更される。
図18は、本実施形態のトポロジ制御処理を示すフローチャートである。同図を参照すると、ノードN1は、交換メッセージ負荷および経路計算負荷を取得する(ステップS50)。ノードN1は、これらの負荷のいずれかが、負荷閾値テーブル1141に記載された上限値を超えているか否かを判断する(ステップS55)。
いずれかの負荷が上限値を超えていれば(ステップS55:YES)、ノードN1は、各ノードへの到達性を失わない範囲で、自ノードと隣接ノードとの間のリンクが削除されるようなトポロジパターンを選択する。ノードN1は、現在のトポロジのパターンが選択したパターンに変更されるように、各ノードへ、リンクの増減を指示する制御メッセージを送信する(ステップS56)。
ノードN1は、各経路計算アルゴリズムの経路計算量に基づいて、経路計算アルゴリズムを変更すべきか否かを判断する(ステップS57)。経路計算アルゴリズムを変更すべきならば(ステップS57:YES)、ノードN1は、経路計算に用いるアルゴリズムを、変更後のパターンに適したアルゴリズムに変更する(ステップS58)。
いずれかの負荷が下限値を下回っていれば(ステップS65:YES)、ノードN1は、自ノードと、他のノードとの間のリンクが増加するようなトポロジパターンを選択する。ノードN1は、現在のトポロジのパターンが選択したパターンに変更されるように、各ノードへ、リンクの増減を指示する制御メッセージを送信する(ステップS66)。
ノードN1は、経路計算アルゴリズムを変更すべきか否かを判断する(ステップS67)。経路計算アルゴリズムを変更すべきならば(ステップS67:YES)、ノードN1は、経路計算に用いるアルゴリズムを、変更後のパターンに適したアルゴリズムに変更する(ステップS68)。
いずれの負荷も下限値以上である場合(ステップS65:NO)、経路計算アルゴリズムを変更すべきでない場合(ステップS57:NO、ステップS67:NO)、ノードN1は、トポロジ制御処理を終了する。
以上説明したように、本実施形態によれば、トポロジのパターン自体を変更し、パターンに応じて、経路計算量が最小となるように経路計算アルゴリズムを変更する。このため、変更後のノードにおいて、経路計算量が減少し、ノードの負荷が更に低減する。
(第5の実施形態)
図19(a)は、本発明の第5の実施形態の通信システム1dの一構成例を示す全体図である。同図を参照すると、通信システム1dの構成は、各ノードを管理するトポロジ管理サーバN5dを更に設けた点で、第4の実施形態と異なる。
図19(a)は、本発明の第5の実施形態の通信システム1dの一構成例を示す全体図である。同図を参照すると、通信システム1dの構成は、各ノードを管理するトポロジ管理サーバN5dを更に設けた点で、第4の実施形態と異なる。
なお、本実施形態の通信システムついて、図14~図18で説明した構成と同様な構成の詳細な説明を省略し、第4の実施形態と異なる点について詳しく説明する。
各ノードは、負荷が上限値以下で且つ下限値以上でない場合、トポロジのパターンの変更を要求する制御メッセージをトポロジ管理サーバN5dへ送信する。
トポロジ管理サーバN5dは、制御メッセージの要求するパターンの要求を許可すべきか否かを判断する。
例えば、複数のノードから制御メッセージを受信し、それぞれの要求するパターンが異なっていた場合、それらのパターンのうち、各ノードの負荷が上限値以下となるようなパターンを選択する。
トポロジ管理サーバN5dは、各ノードへ、リンクの開設、削除を指示する制御メッセージを送信し、パターンを変更する。
例えば、図19(a)に示すように、フルメッシュ型で接続されたノードN1~N4のそれぞれから、トポロジの変更を要求する制御メッセージを受信した場合について考える。トポロジ管理サーバN5dは、ノードN1~N4がそれぞれ要求するパターンを比較し、各ノードの負荷が上限値以下となるパターンとしてリング型を選択する。
そして、トポロジ管理サーバN5dは、図19(b)に示すように、各ノードへ制御メッセージを送信し、パターンをリング型に変更する。図19(a)、(b)における点線は制御メッセージの送信経路である。
なお、本実施形態では、各ノードがアルゴリズムの選択を行う構成としているが、各ノードに代わってトポロジ管理サーバN5dがアルゴリズムの選択を行い、各ノードへ通知する構成とすることも可能である。
また、本実施形態では、各ノードがパターンを選択し、要求する構成としているが、各ノードは、パターンの変更が必要か否かのみを判断して通知し、トポロジ管理サーバN5dが通知に応じて、パターンを選択する構成とすることも可能である。
以上説明したように、本実施形態によれば、トポロジ管理サーバN5dが、各ノードが要求するパターンを検討して、最適のパターンを選択するので、各ノードに適切に負荷が分散され、最も効率のよいトポロジに変更される。
以上、実施形態を参照して本発明を説明したが、本発明は実施形態に限定されるものではない。クレームに定義された本発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2009年6月23日に出願された日本出願特願2009-148628を基礎として優先権の利益を主張するものであり、その開示の全てを引用によってここに取り込む。
Claims (19)
- 設定されたトポロジに従って論理的なリンクで相互に接続された複数のノードを有し、前記リンク上に設定される経路でデータを伝送するネットワークに含まれているノードであって、
自ノードにかかる負荷を取得する負荷取得手段と、
前記負荷取得手段により取得された前記負荷の変化に応じて前記トポロジを変更するトポロジ変更手段と、
を有するノード。 - 前記トポロジ変更手段は、前記負荷が所定の上限値より大きければ、該負荷が該上限値以下になるように前記トポロジを変更する、請求項1に記載のノード。
- 前記トポロジ変更手段は、前記負荷が所定の下限値より小さければ、該負荷が該下限値以上となるように前記トポロジを変更する、請求項1又は2に記載のノード。
- 前記負荷取得手段は、
前記トポロジに従って、経路計算する演算処理装置と、
前記演算処理装置の使用率を前記負荷として測定する負荷測定手段と、
を有する、請求項1乃至3のいずれか1項に記載のノード。 - 前記負荷取得手段は、
隣接ノードとの間で前記トポロジを取得するための経路情報を送受信する経路情報送受信手段と、
前記経路情報送受信手段により、単位時間当たりに送受信される前記経路情報の量を前記負荷として算出する負荷算出手段と、
を有する、請求項1乃至4のいずれか1項に記載のノード。 - 前記負荷算出手段は、前記経路情報送受信手段により、単位時間当たりに前記経路情報が送受信される回数を前記負荷として算出する、請求項5に記載のノード。
- 前記負荷取得手段は、自ノードの消費電力を前記負荷として取得する、請求項1乃至6のいずれか1項に記載のノード。
- 前記トポロジ変更手段は、前記リンクの数を増減することにより前記トポロジを変更する、請求項1乃至6のいずれか1項に記載のノード。
- 前記リンク指示手段は、前記ネットワークを構成するノードの中から、リンクの数が最も多いノードを選択し、選択した該ノードと自ノードとのリンクの数を増減する、請求項8に記載のノード。
- 前記リンク指示手段は、前記ネットワークを構成するノードの中から、リンクの数が最も少ないノードを選択し、選択した該ノードと自ノードとのリンクの数を増減する、請求項9に記載のノード。
- 前記トポロジ変更手段は、
前記負荷取得手段により取得された前記負荷に応じて、複数のトポロジのパターンの中から、いずれかのパターンを選択するパターン選択手段と、
前記パターン選択手段により選択された前記パターンのトポロジが形成されるように、前記ネットワークを構成するノードに対し、リンクの確立又は切断を指示するリンク指示手段を有し、
前記ノードは、
複数の経路計算方法のうち、前記パターン選択手段により選択されたパターンにおいて、経路計算量が最小となる経路計算方法を選択する経路計算方法選択手段と、
前記経路計算方法選択手段により選択された前記経路計算方法を使用して、前記変更後のトポロジに基づいて経路計算する経路計算手段と、
を更に有する、請求項1乃至10のいずれか1項に記載のノード。 - 前記リンクは、トンネリングにより形成されるリンクである、請求項1乃至11のいずれか1項に記載のノード。
- 前記リンクは、ラベルパスにより形成されるリンクである、請求項1乃至12のいずれか1項に記載のノード。
- 前記トポロジ変更手段により変更された前記トポロジに基づいて経路制御を行う経路制御手段を更に有する、請求項1乃至13のいずれか1項に記載のノード。
- ネットワークに含まれるネットワークノードであって、自ノードにかかる負荷を取得し、該負荷の変化に応じて前記ネットワークのトポロジの変更を要する複数のネットワークノードと、
前記ネットワークのトポロジに基づいて、前記ネットワークノードごとに、該ネットワークノードの要求を許可するか否かを判断し、該判断の結果に基づいて該トポロジを変更する管理ノードと、
を有する通信システム。 - ネットワークに含まれる複数のネットワークノードのそれぞれにかかる負荷を取得する負荷取得手段と、
前記負荷取得手段により取得された前記負荷に応じて、前記トポロジを変更するトポロジ変更手段と、
を有する管理ノード。 - 設定されたトポロジに従って論理的なリンクで相互に接続された複数のノードを有し、前記リンク上に設定される経路でデータを伝送するネットワークに含まれているノードが、
自ノードの負荷を取得し、
前記負荷の変化に応じて前記トポロジを変更する、トポロジ変更方法。 - ネットワークに含まれる複数のネットワークノードが、自ノードにかかる負荷を取得し、
前記負荷の変化に応じて前記ネットワークのトポロジの変更を要求し、
管理ノードが、前記ネットワークのトポロジを参照して、前記ネットワークノードごとに、該ネットワークノードの要求を許可するか否かを判断し、該判断の結果に基づいて該トポロジを変更する、トポロジ変更方法。 - 負荷取得手段が、ネットワークに含まれる複数のネットワークノードのそれぞれにかかる負荷を取得し、
トポロジ変更手段が、前記負荷取得手段により取得された前記負荷に応じて、前記トポロジを変更する、トポロジの変更方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009148628 | 2009-06-23 | ||
JP2009-148628 | 2009-06-23 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010150585A1 true WO2010150585A1 (ja) | 2010-12-29 |
Family
ID=43386366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2010/056088 WO2010150585A1 (ja) | 2009-06-23 | 2010-04-02 | ネットワークのトポロジを変更するノード、システム、及び方法 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2010150585A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110830312A (zh) * | 2019-12-10 | 2020-02-21 | 青岛联众智芯科技有限公司 | 一种用于泛在物联网端设备的拓扑识别方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0983546A (ja) * | 1995-09-13 | 1997-03-28 | Toshiba Corp | 経路選択方法および経路選択装置および通信網設計方法および通信網設計装置 |
JP2005252596A (ja) * | 2004-03-03 | 2005-09-15 | Nippon Telegr & Teleph Corp <Ntt> | 物理的信頼度を用いたp2pネットワーク構成方法及び接続状態管理装置 |
JP2007088799A (ja) * | 2005-09-22 | 2007-04-05 | Sony Corp | 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム |
JP2007324931A (ja) * | 2006-05-31 | 2007-12-13 | Adoin Kenkyusho:Kk | 通信装置、会議システムその制御方法及びプログラム |
-
2010
- 2010-04-02 WO PCT/JP2010/056088 patent/WO2010150585A1/ja active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0983546A (ja) * | 1995-09-13 | 1997-03-28 | Toshiba Corp | 経路選択方法および経路選択装置および通信網設計方法および通信網設計装置 |
JP2005252596A (ja) * | 2004-03-03 | 2005-09-15 | Nippon Telegr & Teleph Corp <Ntt> | 物理的信頼度を用いたp2pネットワーク構成方法及び接続状態管理装置 |
JP2007088799A (ja) * | 2005-09-22 | 2007-04-05 | Sony Corp | 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム |
JP2007324931A (ja) * | 2006-05-31 | 2007-12-13 | Adoin Kenkyusho:Kk | 通信装置、会議システムその制御方法及びプログラム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110830312A (zh) * | 2019-12-10 | 2020-02-21 | 青岛联众智芯科技有限公司 | 一种用于泛在物联网端设备的拓扑识别方法及装置 |
CN110830312B (zh) * | 2019-12-10 | 2023-10-24 | 青岛联众芯云科技有限公司 | 一种用于泛在物联网端设备的拓扑识别方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11876717B2 (en) | Flow-based load balancing | |
US7586894B2 (en) | Communication system capable of selecting optimum gateway for terminals | |
US9634928B2 (en) | Mesh network of simple nodes with centralized control | |
US7123620B1 (en) | Apparatus and method for scalable and dynamic traffic engineering in a data communication network | |
JP5757552B2 (ja) | コンピュータシステム、コントローラ、サービス提供サーバ、及び負荷分散方法 | |
WO2020052306A1 (zh) | 一种报文转发路径的确定方法、设备和系统 | |
ITTO20060149A1 (it) | Tecnica per l'instradamento ottimizzato di flussi di dati su una dorsale ip in una rete di computer. | |
JP6921322B2 (ja) | プログラマブルネットワーク技術に基づくマルチホストネットワークのルーティング転送方法 | |
Domżał et al. | A survey on methods to provide multipath transmission in wired packet networks | |
WO2017058908A1 (en) | Generating service-optimized paths based on enhanced eigrp telemetry | |
US9118592B2 (en) | Switch and/or router node advertising | |
US20050254473A1 (en) | Routing within a mobile communication network | |
JP6954295B2 (ja) | 通信システム、エッジノード、通信方法及びプログラム | |
JP2010200026A (ja) | 論理ネットワークのトラヒック制御方法とシステムおよびプログラム | |
JP2005057487A (ja) | 複数経路を選択する経路制御装置、経路選択方法およびそのプログラムと記録媒体 | |
Hakiri et al. | Work-in-progress: Towards real-time smart city communications using software defined wireless mesh networking | |
WO2010150585A1 (ja) | ネットワークのトポロジを変更するノード、システム、及び方法 | |
EP2552151B1 (en) | Method and system for centralized control of mobile station associations, routing and rate control in wireless networks | |
US11496388B2 (en) | Resource reservation and maintenance for preferred path routes in a network | |
Zaman et al. | Traffic priority based gateway selection in Integrated Internet-MANET | |
Cisco | Routing Basics | |
CN115208829A (zh) | 报文处理的方法及网络设备 | |
JP2004248085A (ja) | 経路決定方法および経路決定装置 | |
CN105308933A (zh) | 使用原始tcp封装通过tcp/ip来串行地进行传输 | |
Lee et al. | Autonomous network management using cooperative learning for network-wide load balancing in heterogeneous networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10791905 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 10791905 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |