JP2016225933A - 制御装置、中継装置の制御方法、プログラム及び通信システム - Google Patents

制御装置、中継装置の制御方法、プログラム及び通信システム Download PDF

Info

Publication number
JP2016225933A
JP2016225933A JP2015112906A JP2015112906A JP2016225933A JP 2016225933 A JP2016225933 A JP 2016225933A JP 2015112906 A JP2015112906 A JP 2015112906A JP 2015112906 A JP2015112906 A JP 2015112906A JP 2016225933 A JP2016225933 A JP 2016225933A
Authority
JP
Japan
Prior art keywords
packet
relay
control information
control
relay device
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.)
Pending
Application number
JP2015112906A
Other languages
English (en)
Inventor
望 嶋田
Nozomi Shimada
望 嶋田
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2015112906A priority Critical patent/JP2016225933A/ja
Publication of JP2016225933A publication Critical patent/JP2016225933A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】アンダーレイネットワークシステムを構成する中継装置群によるカプセル化されたパケットの転送に係る設定を低コストにて実現する制御装置を提供する。【解決手段】制御装置は、トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む複数の中継装置を制御する。制御装置は、経路計算部と、制御情報設定部と、を備える。経路計算部は、第1の終端装置が送信するカプセル化されたパケットを、第1の中継装置から第2の中継装置まで転送するためのパケット転送経路を計算する。制御情報設定部は、パケット転送経路を実現するための制御情報を生成し、パケット転送経路上の中継装置に設定する。その際、制御情報設定部は、カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む制御情報を生成する。【選択図】図1

Description

本発明は、制御装置、中継装置の制御方法、プログラム及び通信システムに関する。特に、中継装置を集中制御する制御装置、中継装置の制御方法、プログラム及び通信システムに関する。
近年、トンネリング技術を利用した種々のオーバレイネットワーク技術が用いられている。例えば、特許文献1には、仮想ネットワークにおける通信の経路の選択に関する技術が開示されている。さらに、RFC(Request for Comments)7348等でネットワークの仮想化を実現するVXLAN(Virtual Extensible LAN)が規定されている。VXLANでは、パケット(フレーム)にVXLANヘッダを付加することでパケットをカプセル化し、レイヤ3(L3)のネットワーク上に論理的なレイヤ2(L2)ネットワークを構築する。
また、近年、オープンフロー(OpenFlow)という技術が提案されている(非特許文献1、2参照)。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。非特許文献2に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合する内容が定められたマッチフィールド(Match Fields)と、フロー統計情報(Counters)と、処理内容を定義したインストラクション(Instructions)と、の組が定義される。
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチフィールドを持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報(カウンタ)を更新するとともに、受信パケットに対して、当該エントリのインストラクションフィールドに記述された処理内容(指定ポートからのパケット送信、フラッディング、廃棄等)を実施する。一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求、即ち、受信パケットの処理内容の決定の要求を送信する。オープンフロースイッチは、要求に対応するフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを処理規則として用いてパケット転送を行う。
特開2015−53610号公報
Nick McKeown、外7名、"OpenFlow: Enabling Innovation in Campus Networks"、[online]、[平成27年5月27日検索]、インターネット〈URL:http://www.openflow.org/documents/openflow-wp-latest.pdf〉 "OpenFlow Switch Specification" Version 1.4.0. (Wire Protocol 0x05) [平成27年5月27日検索]、インターネット〈URL:https://www.opennetworking.org/images/stories/downloads/sdn-resources/onf-specifications/openflow/openflow-spec-v1.4.0.pdf〉
なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。
オーバレイネットワークシステムを実現する手段の1つであるVXLANには、VXLANカプセル化されたIP(Internet Protocol)パケットを転送するために要する設定コストが高いという問題がある。具体的には、システムを構成する中継装置群のうち、L3レベルの中継装置に対してIPルーティング設定を行う必要があり、当該設定のために高いコストを要している(図11参照の中継装置11、12を参照)。即ち、既存のオーバレイネットワークシステムでは、システムを構成する中継装置群がVXLANカプセル化されたIPパケットを転送するには、事前にIPネットワーク、IPサブネットワーク群を構成する必要があり、設定作業に関する高いコストを要する。
本発明は、アンダーレイネットワークシステムを構成する中継装置群によるカプセル化されたパケットの転送に係る設定を低コストにて実現する、制御装置、中継装置の制御方法、プログラム及び通信システムを提供することを目的とする。
本発明の第1の視点によれば、トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む複数の中継装置を制御する制御装置であって、前記第1の終端装置が送信するカプセル化されたパケットを、前記第1の中継装置から前記第2の中継装置まで転送するためのパケット転送経路を計算する、経路計算部と、前記パケット転送経路を実現するための制御情報を生成し、前記パケット転送経路上の前記中継装置に設定する制御情報設定部と、を備え、前記制御情報設定部は、前記カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む前記制御情報を生成する、制御装置が提供される。
本発明の第2の視点によれば、トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む複数の中継装置を制御する方法であって、前記第1の終端装置が送信するカプセル化されたパケットを、前記第1の中継装置から前記第2の中継装置まで転送するためのパケット転送経路を計算するステップと、前記パケット転送経路を実現するための制御情報であって、前記カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む制御情報を生成するステップと、前記パケット転送経路上の前記中継装置に、前記制御情報を設定するステップと、を含む、中継装置の制御方法が提供される。
本発明の第3の視点によれば、トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む複数の中継装置を制御する制御装置に搭載されたコンピュータに実行させるプログラムであって、前記第1の終端装置が送信するカプセル化されたパケットを、前記第1の中継装置から前記第2の中継装置まで転送するためのパケット転送経路を計算する処理と、前記パケット転送経路を実現するための制御情報であって、前記カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む制御情報を生成する処理と、前記パケット転送経路上の前記中継装置に、前記制御情報を設定する処理と、を実行させるプログラムが提供される。
なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント(non-transient)なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
本発明の第4の視点によれば、トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む、複数の中継装置と、前記複数の中継装置を制御する制御装置と、を含み、前記制御装置は、前記第1の終端装置が送信するカプセル化されたパケットを、前記第1の中継装置から前記第2の中継装置まで転送するためのパケット転送経路を計算する、経路計算部と、前記パケット転送経路を実現するための制御情報を生成し、前記パケット転送経路上の前記中継装置に設定する制御情報設定部と、を備え、前記制御情報設定部は、前記カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む前記制御情報を生成する、通信システムが提供される。
本発明の各視点によれば、アンダーレイネットワークシステムを構成する中継装置群によるカプセル化されたパケットの転送に係る設定を低コストにて実現することに寄与する、制御装置、中継装置の制御方法、プログラム及び通信システムが、提供される。
一実施形態の概要を説明するための図である。 第1の実施形態に係る通信システムの概略構成の一例を示す図である。 VXLANトンネルの終端を説明するための図である。 第1の実施形態に係る中継装置の内部構成の一例を示す図である。 第1の実施形態に係る制御装置の内部構成の一例を示す図である。 トンネル終端ポイント情報テーブルの一例を示す図である。 第1の実施形態に係るトンネル終端装置の内部構成の一例を示す図である。 トンネル終端装置の送信先記憶部が記憶する情報の一例を示す図である。 パケット転送経路の計算結果の一例を示す図である。 制御装置の別の内部構成の一例を示す図である。 通信システムの概略構成の一例を示す図である。
初めに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。
一実施形態に係る制御装置100は、トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む複数の中継装置を制御する。さらに制御装置100は、経路計算部101と、制御情報設定部102と、を備える。経路計算部101は、第1の終端装置が送信するカプセル化されたパケットを、第1の中継装置から第2の中継装置まで転送するためのパケット転送経路を計算する。制御情報設定部102は、パケット転送経路を実現するための制御情報を生成し、パケット転送経路上の中継装置に設定する。その際、制御情報設定部102は、カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む制御情報を生成する。
制御装置100は、ネットワークシステムを構成する中継装置群に対して、カプセル化されたパケット(例えば、VXLANカプセル化されたIPパケット)を宛先に転送するための制御情報を設定する。制御情報は、少なくともカプセル化されたパケットの送信先アドレスをキーとし、その条件にマッチしたパケットをパケット転送経路の計算結果の通りに転送する制御を行うものである。その結果、制御装置100により、アンダーレイネットワークシステムを構成する中継装置群によるカプセル化されたパケットの転送に係る設定が自動的に行われ、当該設定に要するコストを低減できる。
以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。なお、各実施形態において同一構成要素には同一の符号を付し、その説明を省略する。
[第1の実施形態]
第1の実施形態について、図面を用いてより詳細に説明する。
図2は、第1の実施形態に係る通信システムの概略構成の一例を示す図である。図2を参照すると、通信システムには、中継装置10−1〜10−8と、制御装置20と、トンネル終端装置30−1〜30−4と、端末40−1〜40−4と、が含まれる。
なお、以降の説明において、中継装置10−1〜10−8を区別する特段の理由がない場合には、単に「中継装置10」と表記する。同様に、トンネル終端装置30−1〜30−4を区別する特段の理由がない場合には「トンネル終端装置30」と、端末40−1〜40−4を区別する特段の理由がない場合には「端末40」と、それぞれ表記する。
中継装置10は、外部コマンドにより、パケットの転送に関わる動作を制御可能な装置である。即ち、中継装置10は、制御装置20からの指示に従って、受信したパケットを宛先に転送する機能を有する。
制御装置20は、上記の中継装置10を制御する装置である。
トンネル終端装置30は、VXLANの仮想トンネルを終端する装置(トンネル終端ポイント)である。トンネル終端装置30は、例えば、図3に示すように、他のトンネル終端装置30との間に形成されるVXLANトンネルを終端する。即ち、トンネル終端装置30は、対になる装置とトンネル接続することで仮想ネットワーク(オーバレイネットワーク)を構築する。
端末40は、トンネル終端装置30に接続された情報処理装置である。
なお、図2において、端末40は、物理的に独立した装置として記載されているが、必ずしもその必要はなく、仮想的な装置であってもよい。また、トンネル終端装置30に関しても同様であり、物理的な装置でなくとも仮想的な装置であってもよい。さらに、端末40とトンネル終端装置30が一体化されていてもよい。また、図2に示す通信システムの構成は例示であって、中継装置10等のノード数を限定する趣旨ではない。
各中継装置10は、制御装置20と制御用の通信チャネル(制御チャネル;図2の破線)を介して接続されている。また、各中継装置10は、隣接する他の中継装置10とデータ転送用のチャネル(データチャネル;図2の実線)により接続されている。
制御装置20による集中制御ネットワークに属する中継装置10−1〜10−8のうち、当該ネットワークの端点に位置する中継装置10−1、10−4、10−7及び10−8のそれぞれは、トンネル終端装置30とデータ転送用のチャネルにより接続されている。また、トンネル終端装置30のそれぞれは、端末40とデータ転送用のチャネルにより接続されている。
[中継装置の構成]
図4は、中継装置10の内部構成の一例を示す図である。図4を参照すると、中継装置10は、制御装置通信部201と、中継装置通信部202と、パケット制御情報設定部203と、記憶部204と、パケット処理検索部205と、パケット処理部206と、を含む。
制御装置通信部201は、制御装置20との間の通信を制御する手段(インターフェイス)である。
中継装置通信部202は、他の中継装置10との間のデータ転送用の通信を制御する手段(インターフェイス)である。
パケット制御情報設定部203は、制御装置通信部201で受信したパケット制御コマンド(制御情報)を、記憶部204に記憶されたパケット制御情報テーブルに設定する手段である。
記憶部204は、上記パケット制御情報テーブルを記憶する手段である。
パケット処理検索部205は、中継装置通信部202で受信したパケットに対する処理を、記憶部204のパケット制御情報テーブルから検索する手段である。
パケット処理部206は、パケット処理検索部205が検索した(決定した)処理を実行する手段である。
中継装置10には、非特許文献1、2に記載されたオープンフロースイッチを用いることができる。その場合、記憶部204には、フローテーブルが格納され、パケット処理検索部205は、パケットを受信すると、当該受信パケットに適合するマッチフィールドを有するエントリをフローテーブルから検索する。さらに、パケット処理部206は、検索されたエントリを処理規則として用いて、パケット転送処理を行う。
なお、中継装置10は、LLDP(Link Layer Discovery Protocol)等のデータリンク層接続検出プロトコルに対応した装置である。さらに、中継装置10は、未知のパケットを受信した場合に、当該パケットの処理規則の設定を制御装置20に依頼する機能を有する。例えば、中継装置10は、中継装置通信部202にて、VXLANカプセル化された未知のパケットを受信した場合に、制御装置通信部201を介して、当該パケットの処理規則の設定を制御装置20に依頼する。
[制御装置の構成]
図5は、制御装置20の内部構成の一例を示す図である。図5を参照すると、制御装置20は、中継装置通信部301と、トポロジ管理部302と、トポロジ記憶部303と、トンネル終端ポイント情報管理部304と、トンネル終端ポイント情報記憶部305と、通信経路探索部306と、通信経路制御コマンド生成部307と、を含む。なお、通信経路探索部306は上述の経路計算部101に相当し、通信経路制御コマンド生成部307は上述の制御情報設定部102に相当する。
中継装置通信部301は、中継装置10との間の制御用通信を行う手段(インターフェイス)である。中継装置通信部301は、中継装置10との制御用セッションの確立、制御用コマンドの送信/受信を行う。なお、制御用コマンドとして、オープンフロープロトコルを用いても良いし、Telnet経由のCLI(Command Line Interface)や、SNMP(Simple Network Management Protocol)を用いて通信を行っても良い。
トポロジ管理部302は、中継装置通信部301を介して、中継装置制御ネットワーク間のトポロジ(複数の中継装置10がなすアンダーレイネットワークのトポロジ)を各中継装置10から取得し、管理する手段である。
トポロジ記憶部303は、トポロジテーブルを用いて上記トポロジを記憶する手段である。
トンネル終端ポイント情報管理部304は、中継装置通信部301を介して中継装置10からトンネル終端ポイント情報を取得し、管理する手段である。なお、トンネル終端ポイント情報とは、物理ネットワーク上でのトンネル終端装置30の位置とトンネル終端装置30のIPアドレスに関する情報である。
トンネル終端ポイント情報記憶部305は、トンネル終端ポイント情報テーブルを用いて上記トンネル終端ポイント情報を記憶する手段である。
図6は、トンネル終端ポイント情報テーブルの一例を示す図である。図6を参照すると、図2に示す通信システムに含まれる各トンネル終端装置30それぞれについて、各終端装置が位置する場所(接続されている中継装置10の名称)とIPアドレスが1組となってトンネル終端ポイント情報テーブルに登録されている。
なお、トポロジ管理部302によるトポロジの取得動作や、トンネル終端ポイント情報管理部304によるトンネル終端ポイント情報の取得動作の詳細は後述する。
通信経路探索部306は、トンネル終端装置30が送信するVXLANカプセル化されたパケットを、当該パケットを受信した中継装置10から宛先のトンネル終端装置30に接続された中継装置10まで転送するためのパケット転送経路を計算する手段である。具体的には、通信経路探索部306は、トポロジテーブルから得られる情報(ネットワークのトポロジ)と、トンネル終端ポイント情報テーブルから得られる情報(トンネル終端ポイント情報)と、に基づき、中継装置制御ネットワーク間の経路を探索する。
通信経路制御コマンド生成部307は、パケット転送経路を実現するための制御情報を生成し、当該パケット転送経路上の中継装置10に設定する手段である。具体的には、通信経路制御コマンド生成部307は、通信経路探索部306により探索された経路に基づき、中継装置10に設定する制御コマンドを生成し、当該制御コマンドを、中継装置通信部301を介して各中継装置10に送信する。その際、通信経路制御コマンド生成部307は、カプセル化されたパケットのヘッダに含まれる送信先IPアドレスによる識別条件と、当該識別条件に一致するVXLANカプセル化されたパケットを所定のポートから転送させる指示と、を含む制御情報(処理規則)を生成し、パケット転送経路の実現に必要な中継装置10に設定する。
制御装置20には、非特許文献1、2に記載されたオープンフローコントローラを用いることができる。この場合、通信経路探索部306は、ネットワークのトポロジとトンネル終端ポイント情報に基づいて、トンネル終端装置30により形成されるVXLANトンネルを実現するためのパケット転送経路を計算する。通信経路制御コマンド生成部307は、上記の計算されたパケット転送経路上の中継装置10に対して設定する処理規則を計算する。例えば、通信経路制御コマンド生成部307は、VXLANトンネルに収容するパケットを送信先IPパケットにより識別するマッチ条件と、当該マッチ条件に一致するパケットに対する処理(インストラクション;転送ポートの指定)と、を含む処理規則を計算し、各中継装置10に設定する。
[トンネル終端装置の構成]
図7は、トンネル終端装置30の内部構成の一例を示す図である。図7を参照すると、トンネル終端装置30は、パケット送受信部401と、カプセル化部402と、送信先記憶部403と、パケット転送部404と、を含む。
パケット送受信部401は、端末40とデータ転送用の通信を行う手段(インターフェイス)である。
カプセル化部402は、端末40から受信したパケットのカプセル化(VXLANカプセル化)と、中継装置10から受信したパケットのカプセル化解除(VXLANカプセル化解除)と、を行う手段である。
送信先記憶部403は、送信先の端末情報とトンネル終端装置の情報を記憶する手段である。
図8は、送信先記憶部403が記憶する情報の一例を示す図である。送信先記憶部403は、図8(a)に示すように、端末40をパケットの宛先とする場合に、対応するトンネル終端装置30との関係を規定する情報(送信先端末情報)を記憶する。例えば、図8(a)を参照すると、端末40−1に向けて送信するパケットは、トンネル終端装置30−1を宛先としてVXLANパケットを送信すれば良いことが分かる。
また、送信先記憶部403は、図8(b)に示すように、トンネル終端装置のアドレス(IPアドレス、MAC(Media Access Control)アドレス)とVXLANによる仮想ネットワークを識別するための識別子VNI(VXLAN Network Identifier)を対応付けた情報(トンネル終端装置情報)を記憶する。より具体的には、送信先記憶部403は、VXLANを識別するVNIと、宛先MACアドレスと、宛先トンネル終端装置(宛先トンネル終端ポイント)のIPアドレスと、の組からなるテーブル情報をトンネル終端装置情報として記憶する。図8(b)を参照することで、VNIが「1」であり、トンネル終端装置30−1との間に形成されるVXLANにパケットを収容するための情報(VXLANカプセル化のために必要な情報;宛先のアドレス)が得られる。
なお、トンネル終端装置情報の更新は、パケット転送部404からのVXLANカプセル化されたパケットの受信を契機に行われても良いし、ネットワーク管理者が事前に設定しておいても良い。
カプセル化部402は、送信先記憶部403に送信先端末情報が存在する場合、該当する情報によりVXLANカプセル化を行って(受信パケットにVXLANヘッダを付与して)、当該カプセル化されたパケットをパケット転送部404から送出する。あるいは、カプセル化部402は、パケット転送部404からVXLANカプセル化されたパケットを受信した場合には、当該受信パケットのVXLANカプセル化を解除し、パケット送受信部401から端末40に向けて送信する。
パケット転送部404は、中継装置10と通信し、端末40からのパケットを中継装置10に転送する手段である。あるいは、パケット転送部404は、中継装置10からパケットを受信し、受信パケットをカプセル化部402に引き渡す。
[システム動作の説明]
次に、中継装置制御ネットワークを跨がって存在する2つの端末40−1と端末40−3の間にてパケットを転送する動作について説明する。その際、図2に示すトンネル終端装置30のそれぞれには、一意のIPアドレスが付与されているものとする。
初めに、図2を参照しつつ、制御装置20が物理ネットワークのトポロジを認識する動作を説明する。
制御装置20のトポロジ管理部302は、各中継装置10間の物理ネットワークのトポロジを認識するため、各中継装置10間にて特定のメッセージを送受信させ、その結果をトポロジ情報として取得する。例えば、トポロジ管理部302は、LLDPによるメッセージを中継装置10間にて送受信させ、他の中継装置10が接続されているポート等に関する情報を中継装置10から取得する。
あるいは、トポロジ管理部302は、オープンフロープロトコルによるPacket−Out、Packet−Inに係るメッセージを用いて、トポロジ情報を取得してもよい。さらに、上記のようなメッセージ(LLDPメッセージ等)を使用せず、ネットワークの管理者が、事前に物理ネットワークのトポロジを制御装置20に設定しておくことでもよい。
次に、図2を参照しつつ、制御装置20が、トンネル終端装置30の物理ネットワーク上での位置とそのIPアドレス(即ち、トンネル終端ポイント情報)を取得する動作を説明する。
制御装置20のトンネル終端ポイント情報管理部304は、中継装置10に対して、各中継装置10同士が接続されていないリンクにより接続しているポート(外向きポート)でVXLANカプセル化されたパケットを受信した場合に、当該パケットの受信を制御装置20に通知するように中継装置10を制御することで、トンネル終端装置30の物理ネットワーク上での位置とそのIPアドレスに関する情報を取得する。
トンネル終端ポイント情報管理部304は、各中継装置10から取得した上記情報をトンネル終端ポイント情報記憶部305のトンネル終端ポイント情報テーブルに格納する。図2及び図6を参照すると、例えば、中継装置10−1の外向きポートにはトンネル終端装置30−1が接続され、そのトンネル終端装置30−1のIPアドレスが「10.0.0.1」であることが分かる。
なお、トンネル終端ポイント情報管理部304は、制御装置20と中継装置10間のプロトコルとしてオープンフロープロトコルのPacket−Inメッセージを用いてもよい。あるいは、当該メッセージを使用せず、ネットワークの管理者が、事前に該当する情報(トンネル終端ポイント情報)を制御装置20に設定しておいてもよい。
次に、図2を参照しつつ、制御装置20が、VXLANカプセル化されたパケットを、中継装置10間にて転送されるように制御する動作を説明する。制御装置20は、例えば、中継装置10から、VXLANカプセル化されたパケットに対する処理規則設定の依頼を受信した場合に、上記制御を行う。
制御装置20の通信経路探索部306は、既に取得済みである中継装置10間の物理ネットワークに関するトポロジ情報と、トンネル終端装置30の物理ネットワーク上の位置及びそのIPアドレスに関するトンネル終端ポイント情報と、に基づき、中継装置10間でVXLANカプセル化されたパケットを転送するための経路を計算する。
例えば、通信経路探索部306は、図9に示すようなパケット転送経路を計算する。具体的には、通信経路探索部306は、中継装置10から処理規則の設定を依頼された受信パケットのVXLANヘッダから得られる宛先IPアドレス(送信先IPアドレス)に一致するエントリをトンネル終端ポイント情報テーブルから検索する。例えば、宛先IPアドレスが「10.0.0.2」であれば、図6に示す2行目のエントリが検索される。図6に示すトンネル終端ポイント情報テーブルの2行目のエントリは、トンネル終端装置30−2は中継装置10−4に接続されていることを示すので、通信経路探索部306は、処理規則の依頼を受けた中継装置10から中継装置10−4までのパケット転送経路を計算すればよいことが分かる。例えば、図2において、通信経路探索部306が、中継装置10−1から処理規則の設定依頼を受信した場合には、中継装置10−1から中継装置10−4までのパケット転送経路を計算すれば良いことが分かる。
次に、通信経路探索部306は、トポロジ記憶部303に格納されたネットワークトポロジを参照すると、中継装置10−1から中継装置10−4に到達するには、中継装置10−3を経由すれば良いことが分かる。そのため、パケット転送経路は、中継装置10−1、10−3、10−4と計算される(図9参照)。
その後、制御装置20の通信経路制御コマンド生成部307は、上記計算されたパケット転送経路を実現するための(パケットを制御するための)制御情報を生成し、各中継装置10に設定する。上記の例でいえば、中継装置10−1、10−3、10−4に制御情報が設定される。より具体的には、制御装置20は、少なくともVXLANカプセル化されたIPパケットの送信先IPアドレス(トンネル終端装置30のIPアドレス)をキーとし(識別条件とし)、当該条件にマッチしたIPパケットを、計算されたパケット転送経路上の各中継装置に転送させる制御情報を、各中継装置10に設定する。
なお、制御情報の設定には、オープンフロープロトコルを使用してもよい。オープンフロープロトコルを使用する制御では、パケットヘッダと照合する「マッチ条件」(Match Fields)と、処理内容を定義した「インストラクション」(Instructions)と、の組で定義される(非特許文献2の「5.2 Flow Table」の項参照)情報が用いられる。より具体的には、「マッチ条件」として、少なくとも「送信先IPアドレス」に当該VXLANカプセル化されたIPパケットの送信先IPアドレスが指定され、「インストラクション」には図9に示す通信経路計算結果に基づいて決定された出力先ポートへの転送が設定される。
次に、図2を参照しつつ、端末40−1から送信されたパケットがVXLANカプセル化され、トンネル終端装置30−1から送信される動作について説明する。
トンネル終端装置30−1のパケット送受信部401が、端末40−1から送信されたパケットを受信すると、当該パケットはカプセル化部402に送られる。
カプセル化部402は、送信先記憶部403を参照し、上記受信パケットをカプセル化するために必要な情報(送信先端末情報、トンネル終端装置情報)を取得する。カプセル化部402は、送信先記憶部403に送信先端末の情報が存在する場合、該当する情報によりVXLANカプセル化を行って、当該カプセル化されたパケットをパケット転送部404から送出する。
次に、図2を参照しつつ、トンネル終端装置30−1から送信されたVXLANパケットが、宛先のトンネル終端装置(ここでは、トンネル終端装置30−3を宛先とする)に転送される動作を説明する。
トンネル終端装置30−1から送信されたVXLANパケットは、パケット転送経路(即ち、制御装置20が中継装置10−1、10−3、10−4、10−6及び10−7に設定された制御情報により実現される転送経路)上の中継装置10間を順次転送されていき、最終的にトンネル終端装置30−3に転送される。
次に、図2を参照し、トンネル終端装置30−3から端末40−3にパケットが転送される動作を説明する。
トンネル終端装置30−3のパケット転送部404は、VXLANカプセル化されたパケットを受信すると、当該受信パケットをカプセル化部402に引き渡す。カプセル化部402は、VXLANカプセル化を解除し、パケット送受信部401を介して、受信パケットを端末40−3に送信する。
このように、2つの端末40−1と端末40−3の間にて、パケット転送が実現される。
なお、中継装置10、制御装置20をなす各部は、中継装置10、制御装置20に搭載されたコンピュータに、そのハードウェアを用いて、上述の各部の動作(処理)を実行させるコンピュータプログラムにより実現することもできる。
以上のように、第1の実施形態に係る通信システムは、複数の中継装置からなる中継装置群と、当該中継装置群を制御する制御装置と、からなるオーバレイネットワークシステムを構成する。上記システムを構成する中継装置は、制御装置によりパケットの転送を制御する機構(機能)を有する。また、中継装置は、物理ネットワークのトポロジ情報とトンネル終端ポイントの情報を制御装置に送信する機構も有する。但し、これらの情報は、ネットワークの運用者が、制御装置に対して手動で登録する方法も考えられる。
制御装置は、中継装置又は運用者により制御装置に登録された物理ネットワークのトポロジ情報と、トンネル終端ポイントの情報から、それぞれのトンネル終端装置間でVXLANカプセル化されたIPパケットを転送するための通信経路(パケット転送経路)を計算する。制御装置は、システムを構成する中継装置群に対して、VXLANカプセル化されたIPパケットを宛先に転送するための制御情報を設定する。制御情報とは、少なくともVXLANカプセル化されたIPパケットの送信先IPアドレスをキーとし、その条件にマッチしたIPパケットを前述の通信経路の計算結果の通りに転送する制御を行うものである。中継装置はその制御情報に従ってVXLANカプセル化されたIPパケットを転送する。これにより、制御装置はIPサブネットワークを構成せずにVXLANカプセル化されたIPパケットを転送することを可能となる。
即ち、オーバレイネットワークシステムを構成する中継装置群によるVXLANカプセル化されたパケットの転送に係る設定が制御装置により自動的に行われるので、システムを構成する中継装置群に対するIPルーティングの設定及びIPネットワークの設計が不要となり、それらを設定するためのコストが低減する。
[変形例]
ここで、アンダーレイネットワークとして、既存の自律分散型のIPネットワークやL2ネットワークを使用すると障害発生時の解析作業が困難であるという問題がある。つまり、パケットの通信経路を把握するためには送受信を行う端末それぞれが使用しているアンダーレイネットワークのIPアドレス及びそのIPアドレスが使用するアンダーレイネットワーク上のMACアドレスを識別した上で、個々のルータの経路情報を追う必要がある。その上で、IPサブネットワーク間の通信を把握し、IPサブネットワーク内はアンダーレイネットワークで使用するMACアドレスについて、中継装置上での学習状況を逐一確認しながらパケットの通信経路を把握しなければならず、このような事実が障害発生時の解析作業を困難にしていた。
上記問題に対応するため、第1の実施形態に係る制御装置20の変形例として、制御装置20に転送経路可視化部308を備えるのが望ましい。具体的には、制御装置20aは、パケット転送経路を視認可能なデータを生成し、外部の表示装置等に出力する転送経路可視化部308をさらに備える(図10参照)。つまり、制御装置20aは、中継装置10間でVXLANカプセル化されたパケットを転送するための経路の計算結果(図9参照)を表示装置等に表示することで、通信経路の可視化が実現できる。さらに、転送経路可視化部308は、上述の中継装置10間の物理ネットワークに関するトポロジ情報を可視化してもよい。
上述の通り、制御装置20は、トンネル終端装置間でVXLANカプセル化されたIPパケットを転送するための通信経路の計算結果(図9参照)を保持している。この情報を表示することにより、IPルーティング情報とMACアドレス学習情報を逐一確認することなく、通信経路の可視化を可能とする。即ち、通信経路の可視化により、障害発生時の解析作業が容易になる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
[付記1]
上述の第1の視点に係る制御装置のとおりである。
[付記2]
前記パケット転送経路を視認可能なデータを生成し、出力する転送経路可視化部をさらに備える、付記1の制御装置。
[付記3]
前記経路計算部は、
前記複数の中継装置からなるアンダーレイネットワークにおける前記第1及び第2の終端装置の位置と、前記第1及び第2の終端装置のアドレスと、に関する情報を含むトンネル終端ポイント情報に基づき、前記パケット転送経路を計算する、付記1又は2の制御装置。
[付記4]
他の中継装置が接続されていないリンクにより接続しているポートにより前記カプセル化されたパケットを受信した場合に、前記カプセル化されたパケットの受信を前記制御装置に通知するように前記複数の中継装置それぞれを制御することで、前記トンネル終端ポイント情報を生成する、トンネル終端ポイント情報管理部をさらに備える、付記3の制御装置。
[付記5]
前記経路計算部は、
前記トンネル終端ポイント情報と、前記複数の中継装置がなすアンダーレイネットワークのトポロジに関する情報と、に基づき、前記パケット転送経路を計算する、付記3又は4の制御装置。
[付記6]
前記制御情報設定部は、
前記識別条件に一致する前記カプセル化されたパケットを所定のポートから転送させる指示を含む、前記制御情報を生成する、付記1乃至5のいずれか一に記載の制御装置。
[付記7]
前記第1及び第2の終端装置は、VXLAN(Virtual eXtensible Local Area Network)ヘッダを付加することで、パケットのカプセル化を行う、付記1乃至6のいずれか一に記載の制御装置。
[付記8]
上述の第2の視点に係る中継装置の制御方法のとおりである。
[付記9]
上述の第3の視点に係るプログラムのとおりである。
[付記10]
上述の第4の視点に係る通信システムのとおりである。
なお、付記8〜10の形態は、付記1の形態と同様に、付記2の形態〜付記7の形態に展開することが可能である。
なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素(各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
10、10−1〜10−8、11、12 中継装置
20、20a、100 制御装置
30、30−1〜30−4 トンネル終端装置
40、40−1〜40−4 端末
101 経路計算部
102 制御情報設定部
201 制御装置通信部
202、301 中継装置通信部
203 パケット制御情報設定部
204 記憶部
205 パケット処理検索部
206 パケット処理部
302 トポロジ管理部
303 トポロジ記憶部
304 トンネル終端ポイント情報管理部
305 トンネル終端ポイント情報記憶部
306 通信経路探索部
307 通信経路制御コマンド生成部
308 転送経路可視化部
401 パケット送受信部
402 カプセル化部
403 送信先記憶部
404 パケット転送部

Claims (10)

  1. トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む複数の中継装置を制御する制御装置であって、
    前記第1の終端装置が送信するカプセル化されたパケットを、前記第1の中継装置から前記第2の中継装置まで転送するためのパケット転送経路を計算する、経路計算部と、
    前記パケット転送経路を実現するための制御情報を生成し、前記パケット転送経路上の前記中継装置に設定する制御情報設定部と、
    を備え、
    前記制御情報設定部は、
    前記カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む前記制御情報を生成する、制御装置。
  2. 前記パケット転送経路を視認可能なデータを生成し、出力する転送経路可視化部をさらに備える、請求項1の制御装置。
  3. 前記経路計算部は、
    前記複数の中継装置からなるアンダーレイネットワークにおける前記第1及び第2の終端装置の位置と、前記第1及び第2の終端装置のアドレスと、に関する情報を含むトンネル終端ポイント情報に基づき、前記パケット転送経路を計算する、請求項1又は2の制御装置。
  4. 他の中継装置が接続されていないリンクにより接続しているポートにより前記カプセル化されたパケットを受信した場合に、前記カプセル化されたパケットの受信を前記制御装置に通知するように前記複数の中継装置それぞれを制御することで、前記トンネル終端ポイント情報を生成する、トンネル終端ポイント情報管理部をさらに備える、請求項3の制御装置。
  5. 前記経路計算部は、
    前記トンネル終端ポイント情報と、前記複数の中継装置がなすアンダーレイネットワークのトポロジに関する情報と、に基づき、前記パケット転送経路を計算する、請求項3又は4の制御装置。
  6. 前記制御情報設定部は、
    前記識別条件に一致する前記カプセル化されたパケットを所定のポートから転送させる指示を含む、前記制御情報を生成する、請求項1乃至5のいずれか一項に記載の制御装置。
  7. 前記第1及び第2の終端装置は、VXLAN(Virtual eXtensible Local Area Network)ヘッダを付加することで、パケットのカプセル化を行う、請求項1乃至6のいずれか一項に記載の制御装置。
  8. トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む複数の中継装置を制御する方法であって、
    前記第1の終端装置が送信するカプセル化されたパケットを、前記第1の中継装置から前記第2の中継装置まで転送するためのパケット転送経路を計算するステップと、
    前記パケット転送経路を実現するための制御情報であって、前記カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む制御情報を生成するステップと、
    前記パケット転送経路上の前記中継装置に、前記制御情報を設定するステップと、
    を含む、中継装置の制御方法。
  9. トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む複数の中継装置を制御する制御装置に搭載されたコンピュータに実行させるプログラムであって、
    前記第1の終端装置が送信するカプセル化されたパケットを、前記第1の中継装置から前記第2の中継装置まで転送するためのパケット転送経路を計算する処理と、
    前記パケット転送経路を実現するための制御情報であって、前記カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む制御情報を生成する処理と、
    前記パケット転送経路上の前記中継装置に、前記制御情報を設定する処理と、
    を実行させるプログラム。
  10. トンネル接続することで仮想ネットワークを構成する第1及び第2の終端装置とそれぞれ接続された第1及び第2の中継装置を含む、複数の中継装置と、
    前記複数の中継装置を制御する制御装置と、
    を含み、
    前記制御装置は、
    前記第1の終端装置が送信するカプセル化されたパケットを、前記第1の中継装置から前記第2の中継装置まで転送するためのパケット転送経路を計算する、経路計算部と、
    前記パケット転送経路を実現するための制御情報を生成し、前記パケット転送経路上の前記中継装置に設定する制御情報設定部と、
    を備え、
    前記制御情報設定部は、
    前記カプセル化されたパケットのヘッダに含まれる送信先アドレスを識別条件として含む前記制御情報を生成する、通信システム。
JP2015112906A 2015-06-03 2015-06-03 制御装置、中継装置の制御方法、プログラム及び通信システム Pending JP2016225933A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015112906A JP2016225933A (ja) 2015-06-03 2015-06-03 制御装置、中継装置の制御方法、プログラム及び通信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015112906A JP2016225933A (ja) 2015-06-03 2015-06-03 制御装置、中継装置の制御方法、プログラム及び通信システム

Publications (1)

Publication Number Publication Date
JP2016225933A true JP2016225933A (ja) 2016-12-28

Family

ID=57746057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015112906A Pending JP2016225933A (ja) 2015-06-03 2015-06-03 制御装置、中継装置の制御方法、プログラム及び通信システム

Country Status (1)

Country Link
JP (1) JP2016225933A (ja)

Similar Documents

Publication Publication Date Title
US20180324274A1 (en) Information system, control apparatus, method of providing virtual network, and program
JP5991424B2 (ja) パケット書換装置、制御装置、通信システム、パケット送信方法及びプログラム
EP2544417B1 (en) Communication system, path control apparatus, packet forwarding apparatus and path control method
JP5987920B2 (ja) 通信システム、制御装置及びネットワークトポロジの管理方法
US9215175B2 (en) Computer system including controller and plurality of switches and communication method in computer system
JP5994851B2 (ja) 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム
WO2011087085A1 (ja) 計算機、ネットワーク接続切替え方法およびプログラム
US10645006B2 (en) Information system, control apparatus, communication method, and program
JP5861772B2 (ja) ネットワークアプライアンス冗長化システム、制御装置、ネットワークアプライアンス冗長化方法及びプログラム
JP6070700B2 (ja) パケット転送システム、制御装置、パケット転送方法及びプログラム
US10523629B2 (en) Control apparatus, communication system, communication method, and program
US20150256455A1 (en) Communication system, path information exchange apparatus, communication node, forwarding method for path information and program
WO2014104277A1 (ja) 制御装置、通信システム、通信ノードの制御方法及びプログラム
WO2014112614A1 (ja) 制御情報管理装置、制御情報提示方法及びプログラム
WO2013062070A1 (ja) 制御装置、通信システム、仮想ネットワークの管理方法およびプログラム
US10742539B2 (en) Control apparatus, communication system, relay apparatus control method, and program
WO2014119602A1 (ja) 制御装置、スイッチ、通信システム、スイッチの制御方法及びプログラム
JP2017175522A (ja) ネットワークシステム、制御装置、方法およびプログラム
JP2016225933A (ja) 制御装置、中継装置の制御方法、プログラム及び通信システム
JPWO2014175335A1 (ja) 制御装置、計算機システム、通信制御方法及びプログラム
JP2015005926A (ja) 経路確認装置、経路確認システム、経路確認方法、及びプログラム
WO2014087993A1 (ja) 制御装置、通信システム、通信方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180507

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190423

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20191119